diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index d1f58412a4..0b0a5768ed 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -1,9 +1,9 @@ ## Contributing -If you'd like to contribute to PlatON-Go please fork, fix, test, commit and +If you'd like to contribute to Alaya-Go please fork, fix, test, commit and send a pull request. Commits which do not comply with the coding standards are ignored (use gofmt!). -See [Developers' Guide](https://platonnetwork.github.io/Docs/#/en-us/basics/[English]-Getting-Started) +See [Developers' Guide](https://devdocs.alaya.network/alaya-devdocs/en/) for more details on configuring your environment, testing, and dependency management. diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md index 3d51e7873e..cd04979ab3 100644 --- a/.github/ISSUE_TEMPLATE.md +++ b/.github/ISSUE_TEMPLATE.md @@ -4,7 +4,7 @@ please note that this is an issue tracker reserved for bug reports and feature r #### System information -PlatON version: `platon version` +Alaya version: `alaya version` OS & Version: Windows/Linux/OSX Commit hash : (if `develop`) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 093ba004a7..07216f1ffe 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -32,7 +32,7 @@ jobs: - name: Build - run: make platon + run: make alaya - name: Test run: go test -tags=test -covermode=count -coverprofile=coverage.out `go list ./...|grep -v life|grep -v swarm|grep -v tests|grep -v bn256|grep -v mobile` \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index ce979b9296..078b6487c6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,16 +1,46 @@ -# Build Geth in a stock Go builder container -FROM golang:1.11-alpine as builder +# Build Alaya in a stock Go builder container +FROM golang:1.15-alpine as builder -RUN apk add --no-cache make gcc musl-dev linux-headers bash cmake g++ +RUN apk add --no-cache make gcc musl-dev linux-headers g++ llvm bash cmake git gmp-dev openssl-dev -ADD . /PlatON-Go -RUN cd /PlatON-Go && make platon +RUN git clone https://github.com/dfinity/bn.git +RUN cd bn && make && make install -# Pull Geth into a second stage deploy alpine container +ADD . /Alaya-Go +RUN cd /Alaya-Go && make clean && make alaya + +# Pull Alaya into a second stage deploy alpine container FROM alpine:latest -RUN apk add --no-cache ca-certificates libstdc++ gcc -COPY --from=builder /PlatON-Go/build/bin/platon /usr/local/bin/ +RUN apk add --no-cache ca-certificates libstdc++ bash tzdata gmp-dev +COPY --from=builder /Alaya-Go/build/bin/alaya /usr/local/bin/ +COPY --from=builder /Alaya-Go/entrypoint.sh /usr/local/bin/ +COPY --from=builder /usr/local/lib/libbls384.so /usr/local/lib/ +COPY --from=builder /usr/local/lib/libmcl.so /usr/local/lib/ +RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime + +ENV ENABLE_DEBUG=false +ENV ENABLE_PPROF=false +ENV ENABLE_WS=false +ENV WSAPI= +ENV ENABLE_RPC=false +ENV RPCAPI= +ENV BOOTNODES= +ENV NEW_ACCOUNT=false +ENV INIT=false +ENV VERBOSITY=3 +ENV ENBALE_DISCOVER=false +ENV ENABLE_V5DISC=false +ENV ENABLE_CBFT_TRACING=false +ENV P2PPORT=16789 +ENV WSPORT=6080 +ENV RPCPORT=6789 +ENV PPROFPORT=6060 +ENV MAXPEERS=43 +ENV MAXCONSENSUSPEERS=100 +ENV ENABLE_LIGHT_SRV=false +ENV SYNCMODE=full -EXPOSE 8545 8546 30303 30303/udp -ENTRYPOINT ["platon"] +VOLUME /data/alaya +EXPOSE 6060 6080 6789 16789 16789/udp +ENTRYPOINT ["alaya"] \ No newline at end of file diff --git a/Makefile b/Makefile index 0d81788807..1b6aa61636 100644 --- a/Makefile +++ b/Makefile @@ -13,35 +13,35 @@ GO ?= latest GPATH = $(shell go env GOPATH) GORUN = env GO111MODULE=on GOPATH=$(GPATH) go run -platon: +alaya: build/build_deps.sh - $(GORUN) build/ci.go install ./cmd/platon + $(GORUN) build/ci.go install ./cmd/alaya @echo "Done building." - @echo "Run \"$(GOBIN)/platon\" to launch platon." + @echo "Run \"$(GOBIN)/alaya\" to launch alaya." fix-cbft-test: build/cbft_test.sh @echo "Done fix." -platon-with-mpc: +alaya-with-mpc: build/build_deps.sh - $(GORUN) build/ci.go install -mpc on ./cmd/platon - @echo "Done building platon with mpc." - @echo "Run \"$(GOBIN)/platon\" to launch platon." + $(GORUN) build/ci.go install -mpc on ./cmd/alaya + @echo "Done building alaya with mpc." + @echo "Run \"$(GOBIN)/alaya\" to launch alaya." -platon-with-vc: +alaya-with-vc: build/build_deps.sh build/build_snark.sh - $(GORUN) build/ci.go install -vc on ./cmd/platon - @echo "Done building platon with vc." - @echo "Run \"$(GOBIN)/platon\" to launch platon." + $(GORUN) build/ci.go install -vc on ./cmd/alaya + @echo "Done building alaya with vc." + @echo "Run \"$(GOBIN)/alaya\" to launch alaya." -platon-with-mv: +alaya-with-mv: build/build_deps.sh build/build_snark.sh - $(GORUN) build/ci.go install -mv on ./cmd/platon - @echo "Done building platon with vc." - @echo "Run \"$(GOBIN)/platon\" to launch platon." + $(GORUN) build/ci.go install -mv on ./cmd/alaya + @echo "Done building alaya with vc." + @echo "Run \"$(GOBIN)/alaya\" to launch alaya." all: build/build_deps.sh diff --git a/README.md b/README.md index d68af52481..0d5ce08ad1 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,21 @@ -## Go PlatON +## Go Alaya -Welcome to the PlatON-Go source code repository! This is an Ethereum-based、high-performance and high-security implementation of the PlatON protocol. -Most of peculiarities according the PlatON's [whitepaper](https://www.platon.network/static-new/pdf/zh/PlatON_A_High-Efficiency_Trustless_Computing_Network_Whitepaper_ZH.pdf) has been developed. +Alaya-Go is the implementation of Alaya network which is pioneering demonstration network of PlatON. -[![Build Status](https://travis-ci.com/PlatONnetwork/PlatON-Go.svg?branch=feature%2Fbump-version-to-0.7)](https://travis-ci.com/PlatONnetwork/PlatON-Go) +[![API Reference]( +https://camo.githubusercontent.com/915b7be44ada53c290eb157634330494ebe3e30a/68747470733a2f2f676f646f632e6f72672f6769746875622e636f6d2f676f6c616e672f6764646f3f7374617475732e737667 +)](https://pkg.go.dev/github.com/AlayaNetwork/Alaya-Go?tab=doc) +[![Go Report Card](https://goreportcard.com/badge/github.com/AlayaNetwork/Alaya-Go)](https://goreportcard.com/report/github.com/AlayaNetwork/Alaya-Go) +[![Build Status](https://github.com/AlayaNetwork/Alaya-Go/actions/workflows/test.yml/badge.svg))](https://github.com/AlayaNetwork/Alaya-Go/actions) +[![codecov](https://codecov.io/gh/AlayaNetwork/Alaya-Go/branch/feature-mainnet-launch/graph/badge.svg)](https://codecov.io/gh/AlayaNetwork/Alaya-Go) +[![version](https://img.shields.io/github/v/tag/AlayaNetwork/Alaya-Go)](https://github.com/AlayaNetwork/Alaya-Go/releases/latest) +[![GitHub All Releases](https://img.shields.io/github/downloads/AlayaNetwork/Alaya-Go/total.svg)](https://github.com/AlayaNetwork/Alaya-Go) ## Building the source -The requirements to build PlatON-Go are: +The requirements to build Alaya-Go are: - OS:Windows10/Ubuntu18.04 -- [Golang](https://golang.org/doc/install) :version 1.13+ +- [Golang](https://golang.org/doc/install) :version 1.14+ - [cmake](https://cmake.org/) :version 3.0+ - [g++&gcc](http://gcc.gnu.org/) :version 7.4.0+ > The 'cmake' and 'gcc&g++' are usually included in Ubuntu18.04 @@ -22,10 +28,10 @@ sudo apt install libgmp-dev libssl-dev Then, clone the repository ``` -git clone https://github.com/PlatONnetwork/PlatON-Go.git --recursive +git clone https://github.com/AlayaNetwork/Alaya-Go.git --recursive ``` -Switch to the PlatON-Go repository root directory. +Switch to the Alaya-Go repository root directory. Ubuntu: @@ -39,7 +45,7 @@ Windows: go run build\ci.go install ``` -The resulting binary will be placed in '$PlatON-Go/build/bin'(Ubuntu) or in '%GOPATH%\bin'(Windows) . +The resulting binary will be placed in '$Alaya-Go/build/bin'(Ubuntu) or in '%GOPATH%\bin'(Windows) . ## Getting Started @@ -47,25 +53,25 @@ The project comes with several executables found in the `build/bin` directory. | Command | Description | |:----------:|-------------| -| **`platon`** | Our main PlatON CLI client. It is the entry point into the PlatON network | -| `keytool` | a key related tool. | +| **`alaya`** | Our main Alaya CLI client. It is the entry point into the Alaya network | +| `alayakey` | a key related tool. | ### Generate the keys -Each node requires two pairs of public&private keys, the one is called node's keypair, it's generated based on the secp256k1 curve for marking the node identity and signning the block, and the other is called node's blskeypair, it's based on the BLS_12_381 curve and is used for consensus verifing. These two pairs of public-private key need to be generated by the keytool tool. +Each node requires two pairs of public&private keys, the one is called node's keypair, it's generated based on the secp256k1 curve for marking the node identity and signning the block, and the other is called node's blskeypair, it's based on the BLS_12_381 curve and is used for consensus verifing. These two pairs of public-private key need to be generated by the alayakey tool. -Switch to the directory where contains 'keytool.exe'(Windows) or 'keytool'(Ubuntu). +Switch to the directory where contains 'alayakey.exe'(Windows) or 'alayakey'(Ubuntu). Node's keypair(Ubuntu for example): ``` -keytool genkeypair +alayakey genkeypair PrivateKey: 1abd1200759d4693f4510fbcf7d5caad743b11b5886dc229da6c0747061fca36 PublicKey : 8917c748513c23db46d23f531cc083d2f6001b4cc2396eb8412d73a3e4450ffc5f5235757abf9873de469498d8cf45f5bb42c215da79d59940e17fcb22dfc127 ``` Node's blskeypair:: ``` -keytool genblskeypair +alayakey genblskeypair PrivateKey: 7747ec6876bbf8ca0934f05e45917b4213afc5814639355868bbf06d0b3e0f19 PublicKey : e5eb9915ed2b5fd52cf5ff760873a75a8562956e176968f3cbe5ea2b22e03a7b5efc07fdd5ad66d433b404cb880b560bed6295fa79f8fa649588be02231de2e70a782751dc28dbf516b7bb5d52053b5cdf985d8961a5baafa467e8dda55fe981 ``` @@ -85,7 +91,7 @@ echo "{your-blskey}" > ./data/blskey ### Generate a wallet ``` -platon --datadir ./data account new +alaya --datadir ./data account new Your new account is locked with a password. Please give a password. Do not forget this password. Passphrase: Repeat passphrase: @@ -94,7 +100,7 @@ Address: {apt1anp4tzmdggdrcf39qvshfq3glacjxcd5mayaa8} > Do remember the password -### Connect to the PlatON network +### Connect to the Alaya network | Options | description | | :------------ | :------------ | @@ -108,19 +114,19 @@ Address: {apt1anp4tzmdggdrcf39qvshfq3glacjxcd5mayaa8} | --nodekey | P2P node key file | | --cbft.blskey | BLS key file | -Run the following command to launch a PlatON node connecting to the PlatON's mainnet: +Run the following command to launch a Alaya node connecting to the Alaya's mainnet: ``` -$ ./platon --identity "platon" --datadir ./data --port {your-p2p-port} --rpcaddr 127.0.0.1 --rpcport {your-rpc-port} --rpcapi "db,platon,net,web3,admin,personal" --rpc --nodiscover --nodekey ./data/nodekey --cbft.blskey ./data/blskey +$ ./alaya --identity "alaya" --datadir ./data --port {your-p2p-port} --rpcaddr 127.0.0.1 --rpcport {your-rpc-port} --rpcapi "db,platon,net,web3,admin,personal" --rpc --nodiscover --nodekey ./data/nodekey --cbft.blskey ./data/blskey ``` OK, it seems that the chain is running correctly, we can check it as follow: ``` -platon attach http://127.0.0.1:6789 -Welcome to the PlatON JavaScript console! +alaya attach http://127.0.0.1:6789 +Welcome to the Alaya JavaScript console! -instance: PlatONnetwork/platon/v0.7.3-unstable/linux-amd64/go1.10.4 +instance: AlayaNetwork/alaya/v0.7.3-unstable/linux-amd64/go1.10.4 at block: 26 (Wed, 15 Dec 51802 20:22:44 CST) datadir: /home/jht/node1/data modules: admin:1.0 debug:1.0 net:1.0 personal:1.0 platon:1.0 rpc:1.0 web3:1.0 @@ -129,17 +135,17 @@ at block: 26 (Wed, 15 Dec 51802 20:22:44 CST) 29 ``` -For more information, please visit our [Docs](https://platonnetwork.github.io/Docs/#/en-us/basics/[English]-Getting-Started). +For more information, please visit our [Docs](https://devdocs.alaya.network/alaya-devdocs/en/). -## Contributing to PlatON-Go +## Contributing to Alaya-Go -All of codes for PlatON-Go are open source and contributing are very welcome! Before beginning, please take a look at our contributing [guidelines](https://github.com/PlatONnetwork/PlatON-Go/blob/master/.github/CONTRIBUTING.md). You can also open an issue by clicking [here](https://github.com/PlatONnetwork/PlatON-Go/issues/new). +All of codes for Alaya-Go are open source and contributing are very welcome! Before beginning, please take a look at our contributing [guidelines](https://github.com/AlayaNetwork/Alaya-Go/blob/master/.github/CONTRIBUTING.md). You can also open an issue by clicking [here](https://github.com/AlayaNetwork/Alaya-Go/issues/new). ## Support If you have any questions or suggestions please contact us at support@platon.network. ## License -The PlatON-Go library (i.e. all code outside of the cmd directory) is licensed under the GNU Lesser General Public License v3.0, also included in our repository in the COPYING.LESSER file. +The Alaya-Go library (i.e. all code outside of the cmd directory) is licensed under the GNU Lesser General Public License v3.0, also included in our repository in the COPYING.LESSER file. -The PlatON-Go binaries (i.e. all code inside of the cmd directory) is licensed under the GNU General Public License v3.0, also included in our repository in the COPYING file. +The Alaya-Go binaries (i.e. all code inside of the cmd directory) is licensed under the GNU General Public License v3.0, also included in our repository in the COPYING file. diff --git a/accounts/abi/abi.go b/accounts/abi/abi.go index 7db8f601d1..b80ff77bda 100644 --- a/accounts/abi/abi.go +++ b/accounts/abi/abi.go @@ -23,8 +23,8 @@ import ( "fmt" "io" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) // The ABI holds information about a contract's context and available diff --git a/accounts/abi/abi_test.go b/accounts/abi/abi_test.go index 5ef275684f..2fa82f1e6c 100644 --- a/accounts/abi/abi_test.go +++ b/accounts/abi/abi_test.go @@ -26,9 +26,9 @@ import ( "strings" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) const jsondata = ` diff --git a/accounts/abi/bind/auth.go b/accounts/abi/bind/auth.go index cb819effae..72d0570466 100644 --- a/accounts/abi/bind/auth.go +++ b/accounts/abi/bind/auth.go @@ -22,10 +22,10 @@ import ( "io" "io/ioutil" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) // NewTransactor is a utility method to easily create a transaction signer from diff --git a/accounts/abi/bind/backend.go b/accounts/abi/bind/backend.go index 7778b29401..46a9b84620 100644 --- a/accounts/abi/bind/backend.go +++ b/accounts/abi/bind/backend.go @@ -21,9 +21,9 @@ import ( "errors" "math/big" - platon "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + platon "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) var ( diff --git a/accounts/abi/bind/backends/simulated.go b/accounts/abi/bind/backends/simulated.go index 92ac180cb5..038643e2a6 100644 --- a/accounts/abi/bind/backends/simulated.go +++ b/accounts/abi/bind/backends/simulated.go @@ -24,25 +24,25 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/bloombits" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/eth/filters" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rpc" - _ "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/bloombits" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/eth/filters" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rpc" + _ "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) // This nil assignment ensures compile time that SimulatedBackend implements bind.ContractBackend. diff --git a/accounts/abi/bind/base.go b/accounts/abi/bind/base.go index a530dfbed3..9a510b8124 100644 --- a/accounts/abi/bind/base.go +++ b/accounts/abi/bind/base.go @@ -1,18 +1,18 @@ -// Copyright 2015 The go-platon Authors -// This file is part of the go-platon library. +// Copyright 2015 The go-alaya Authors +// This file is part of the go-alaya library. // -// The go-platon library is free software: you can redistribute it and/or modify +// The go-alaya 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 3 of the License, or // (at your option) any later version. // -// The go-platon library is distributed in the hope that it will be useful, +// The go-alaya 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 the go-platon library. If not, see . +// along with the go-alaya library. If not, see . package bind @@ -22,13 +22,13 @@ import ( "fmt" "math/big" - platon "github.com/PlatONnetwork/PlatON-Go" + platon "github.com/AlayaNetwork/Alaya-Go" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/event" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/event" ) // SignerFn is a signer function callback when a contract requires a method to @@ -44,9 +44,9 @@ type CallOpts struct { } // TransactOpts is the collection of authorization data required to create a -// valid platon transaction. +// valid alaya transaction. type TransactOpts struct { - From common.Address // platon account to send the transaction from + From common.Address // alaya account to send the transaction from Nonce *big.Int // Nonce to use for the transaction execution (nil = use pending state) Signer SignerFn // Method to use for signing the transaction (mandatory) @@ -74,11 +74,11 @@ type WatchOpts struct { } // BoundContract is the base wrapper object that reflects a contract on the -// platon network. It contains a collection of methods that are used by the +// alaya network. It contains a collection of methods that are used by the // higher level contract bindings to operate. type BoundContract struct { - address common.Address // Deployment address of the contract on the platon blockchain - abi abi.ABI // Reflect based ABI to access the correct platon methods + address common.Address // Deployment address of the contract on the alaya blockchain + abi abi.ABI // Reflect based ABI to access the correct alaya methods caller ContractCaller // Read interface to interact with the blockchain transactor ContractTransactor // Write interface to interact with the blockchain filterer ContractFilterer // Event filtering to interact with the blockchain @@ -96,7 +96,7 @@ func NewBoundContract(address common.Address, abi abi.ABI, caller ContractCaller } } -// DeployContract deploys a contract onto the platon blockchain and binds the +// DeployContract deploys a contract onto the alaya blockchain and binds the // deployment address with a Go wrapper. func DeployContract(opts *TransactOpts, abi abi.ABI, bytecode []byte, backend ContractBackend, params ...interface{}) (common.Address, *types.Transaction, *BoundContract, error) { // Otherwise try to deploy the contract diff --git a/accounts/abi/bind/base_test.go b/accounts/abi/bind/base_test.go index 8a50c1b577..73d771fb8f 100644 --- a/accounts/abi/bind/base_test.go +++ b/accounts/abi/bind/base_test.go @@ -5,10 +5,10 @@ import ( "math/big" "testing" - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/common" + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/common" ) type mockCaller struct { diff --git a/accounts/abi/bind/bind.go b/accounts/abi/bind/bind.go index a02295eaf5..20461e196c 100644 --- a/accounts/abi/bind/bind.go +++ b/accounts/abi/bind/bind.go @@ -30,8 +30,8 @@ import ( "text/template" "unicode" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi" + "github.com/AlayaNetwork/Alaya-Go/log" ) // Lang is a target programming language selector to generate bindings for. diff --git a/accounts/abi/bind/bind_test.go b/accounts/abi/bind/bind_test.go index a693a99579..3cde0344eb 100644 --- a/accounts/abi/bind/bind_test.go +++ b/accounts/abi/bind/bind_test.go @@ -34,7 +34,7 @@ var bindTests = []struct { `contract NilContract {}`, []string{`606060405260068060106000396000f3606060405200`}, []string{`[]`}, - `"github.com/PlatONnetwork/PlatON-Go/common"`, + `"github.com/AlayaNetwork/Alaya-Go/common"`, ` if b, err := NewEmpty(common.Address{}, nil); b == nil || err != nil { t.Fatalf("combined binding (%v) nil or error (%v) not nil", b, nil) @@ -57,7 +57,7 @@ var bindTests = []struct { `https://ethereum.org/token`, []string{`60606040526040516107fd3803806107fd83398101604052805160805160a05160c051929391820192909101600160a060020a0333166000908152600360209081526040822086905581548551838052601f6002600019610100600186161502019093169290920482018390047f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e56390810193919290918801908390106100e857805160ff19168380011785555b506101189291505b8082111561017157600081556001016100b4565b50506002805460ff19168317905550505050610658806101a56000396000f35b828001600101855582156100ac579182015b828111156100ac5782518260005055916020019190600101906100fa565b50508060016000509080519060200190828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061017557805160ff19168380011785555b506100c89291506100b4565b5090565b82800160010185558215610165579182015b8281111561016557825182600050559160200191906001019061018756606060405236156100775760e060020a600035046306fdde03811461007f57806323b872dd146100dc578063313ce5671461010e57806370a082311461011a57806395d89b4114610132578063a9059cbb1461018e578063cae9ca51146101bd578063dc3080f21461031c578063dd62ed3e14610341575b610365610002565b61036760008054602060026001831615610100026000190190921691909104601f810182900490910260809081016040526060828152929190828280156104eb5780601f106104c0576101008083540402835291602001916104eb565b6103d5600435602435604435600160a060020a038316600090815260036020526040812054829010156104f357610002565b6103e760025460ff1681565b6103d560043560036020526000908152604090205481565b610367600180546020600282841615610100026000190190921691909104601f810182900490910260809081016040526060828152929190828280156104eb5780601f106104c0576101008083540402835291602001916104eb565b610365600435602435600160a060020a033316600090815260036020526040902054819010156103f157610002565b60806020604435600481810135601f8101849004909302840160405260608381526103d5948235946024803595606494939101919081908382808284375094965050505050505060006000836004600050600033600160a060020a03168152602001908152602001600020600050600087600160a060020a031681526020019081526020016000206000508190555084905080600160a060020a0316638f4ffcb1338630876040518560e060020a0281526004018085600160a060020a0316815260200184815260200183600160a060020a03168152602001806020018281038252838181518152602001915080519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156102f25780820380516001836020036101000a031916815260200191505b50955050505050506000604051808303816000876161da5a03f11561000257505050509392505050565b6005602090815260043560009081526040808220909252602435815220546103d59081565b60046020818152903560009081526040808220909252602435815220546103d59081565b005b60405180806020018281038252838181518152602001915080519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156103c75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60408051918252519081900360200190f35b6060908152602090f35b600160a060020a03821660009081526040902054808201101561041357610002565b806003600050600033600160a060020a03168152602001908152602001600020600082828250540392505081905550806003600050600084600160a060020a0316815260200190815260200160002060008282825054019250508190555081600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b820191906000526020600020905b8154815290600101906020018083116104ce57829003601f168201915b505050505081565b600160a060020a03831681526040812054808301101561051257610002565b600160a060020a0380851680835260046020908152604080852033949094168086529382528085205492855260058252808520938552929052908220548301111561055c57610002565b816003600050600086600160a060020a03168152602001908152602001600020600082828250540392505081905550816003600050600085600160a060020a03168152602001908152602001600020600082828250540192505081905550816005600050600086600160a060020a03168152602001908152602001600020600050600033600160a060020a0316815260200190815260200160002060008282825054019250508190555082600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3939250505056`}, []string{`[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[],"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"spentAllowance","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"inputs":[{"name":"initialSupply","type":"uint256"},{"name":"tokenName","type":"string"},{"name":"decimalUnits","type":"uint8"},{"name":"tokenSymbol","type":"string"}],"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]`}, - `"github.com/PlatONnetwork/PlatON-Go/common"`, + `"github.com/AlayaNetwork/Alaya-Go/common"`, ` if b, err := NewToken(common.Address{}, nil); b == nil || err != nil { t.Fatalf("binding (%v) nil or error (%v) not nil", b, nil) @@ -73,7 +73,7 @@ var bindTests = []struct { `https://ethereum.org/crowdsale`, []string{`606060408190526007805460ff1916905560a0806105a883396101006040529051608051915160c05160e05160008054600160a060020a03199081169095178155670de0b6b3a7640000958602600155603c9093024201600355930260045560058054909216909217905561052f90819061007990396000f36060604052361561006c5760e060020a600035046301cb3b20811461008257806329dcb0cf1461014457806338af3eed1461014d5780636e66f6e91461015f5780637a3a0e84146101715780637b3e5e7b1461017a578063a035b1fe14610183578063dc0d3dff1461018c575b61020060075460009060ff161561032357610002565b61020060035460009042106103205760025460015490106103cb576002548154600160a060020a0316908290606082818181858883f150915460025460408051600160a060020a039390931683526020830191909152818101869052517fe842aea7a5f1b01049d752008c53c52890b1a6daf660cf39e8eec506112bbdf6945090819003909201919050a15b60405160008054600160a060020a039081169230909116319082818181858883f150506007805460ff1916600117905550505050565b6103a160035481565b6103ab600054600160a060020a031681565b6103ab600554600160a060020a031681565b6103a160015481565b6103a160025481565b6103a160045481565b6103be60043560068054829081101561000257506000526002027ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f8101547ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d409190910154600160a060020a03919091169082565b005b505050815481101561000257906000526020600020906002020160005060008201518160000160006101000a815481600160a060020a030219169083021790555060208201518160010160005055905050806002600082828250540192505081905550600560009054906101000a9004600160a060020a0316600160a060020a031663a9059cbb3360046000505484046040518360e060020a0281526004018083600160a060020a03168152602001828152602001925050506000604051808303816000876161da5a03f11561000257505060408051600160a060020a03331681526020810184905260018183015290517fe842aea7a5f1b01049d752008c53c52890b1a6daf660cf39e8eec506112bbdf692509081900360600190a15b50565b5060a0604052336060908152346080819052600680546001810180835592939282908280158290116102025760020281600202836000526020600020918201910161020291905b8082111561039d57805473ffffffffffffffffffffffffffffffffffffffff19168155600060019190910190815561036a565b5090565b6060908152602090f35b600160a060020a03166060908152602090f35b6060918252608052604090f35b5b60065481101561010e576006805482908110156100025760009182526002027ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0190600680549254600160a060020a0316928490811015610002576002027ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d40015460405190915082818181858883f19350505050507fe842aea7a5f1b01049d752008c53c52890b1a6daf660cf39e8eec506112bbdf660066000508281548110156100025760008290526002027ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f01548154600160a060020a039190911691908490811015610002576002027ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d40015460408051600160a060020a0394909416845260208401919091526000838201525191829003606001919050a16001016103cc56`}, []string{`[{"constant":false,"inputs":[],"name":"checkGoalReached","outputs":[],"type":"function"},{"constant":true,"inputs":[],"name":"deadline","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"beneficiary","outputs":[{"name":"","type":"address"}],"type":"function"},{"constant":true,"inputs":[],"name":"tokenReward","outputs":[{"name":"","type":"address"}],"type":"function"},{"constant":true,"inputs":[],"name":"fundingGoal","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"amountRaised","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"price","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"funders","outputs":[{"name":"addr","type":"address"},{"name":"amount","type":"uint256"}],"type":"function"},{"inputs":[{"name":"ifSuccessfulSendTo","type":"address"},{"name":"fundingGoalInEthers","type":"uint256"},{"name":"durationInMinutes","type":"uint256"},{"name":"etherCostOfEachToken","type":"uint256"},{"name":"addressOfTokenUsedAsReward","type":"address"}],"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"backer","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"isContribution","type":"bool"}],"name":"FundTransfer","type":"event"}]`}, - `"github.com/PlatONnetwork/PlatON-Go/common"`, + `"github.com/AlayaNetwork/Alaya-Go/common"`, ` if b, err := NewCrowdsale(common.Address{}, nil); b == nil || err != nil { t.Fatalf("binding (%v) nil or error (%v) not nil", b, nil) @@ -89,7 +89,7 @@ var bindTests = []struct { `https://ethereum.org/dao`, []string{`606060405260405160808061145f833960e06040529051905160a05160c05160008054600160a060020a03191633179055600184815560028490556003839055600780549182018082558280158290116100b8576003028160030283600052602060002091820191016100b891906101c8565b50506060919091015160029190910155600160a060020a0381166000146100a65760008054600160a060020a031916821790555b505050506111f18061026e6000396000f35b505060408051608081018252600080825260208281018290528351908101845281815292820192909252426060820152600780549194509250811015610002579081527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6889050815181546020848101517401000000000000000000000000000000000000000002600160a060020a03199290921690921760a060020a60ff021916178255604083015180516001848101805460008281528690209195600293821615610100026000190190911692909204601f9081018390048201949192919091019083901061023e57805160ff19168380011785555b50610072929150610226565b5050600060028201556001015b8082111561023a578054600160a860020a031916815560018181018054600080835592600290821615610100026000190190911604601f81901061020c57506101bb565b601f0160209004906000526020600020908101906101bb91905b8082111561023a5760008155600101610226565b5090565b828001600101855582156101af579182015b828111156101af57825182600050559160200191906001019061025056606060405236156100b95760e060020a6000350463013cf08b81146100bb578063237e9492146101285780633910682114610281578063400e3949146102995780635daf08ca146102a257806369bd34361461032f5780638160f0b5146103385780638da5cb5b146103415780639644fcbd14610353578063aa02a90f146103be578063b1050da5146103c7578063bcca1fd3146104b5578063d3c0715b146104dc578063eceb29451461058d578063f2fde38b1461067b575b005b61069c6004356004805482908110156100025790600052602060002090600a02016000506005810154815460018301546003840154600485015460068601546007870154600160a060020a03959095169750929560020194919360ff828116946101009093041692919089565b60408051602060248035600481810135601f81018590048502860185019096528585526107759581359591946044949293909201918190840183828082843750949650505050505050600060006004600050848154811015610002575090527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19e600a8402908101547f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b909101904210806101e65750600481015460ff165b8061026757508060000160009054906101000a9004600160a060020a03168160010160005054846040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f15090500193505050506040518091039020816007016000505414155b8061027757506001546005820154105b1561109257610002565b61077560043560066020526000908152604090205481565b61077560055481565b61078760043560078054829081101561000257506000526003026000805160206111d18339815191528101547fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68a820154600160a060020a0382169260a060020a90920460ff16917fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c689019084565b61077560025481565b61077560015481565b610830600054600160a060020a031681565b604080516020604435600481810135601f81018490048402850184019095528484526100b9948135946024803595939460649492939101918190840183828082843750949650505050505050600080548190600160a060020a03908116339091161461084d57610002565b61077560035481565b604080516020604435600481810135601f8101849004840285018401909552848452610775948135946024803595939460649492939101918190840183828082843750506040805160209735808a0135601f81018a90048a0283018a019093528282529698976084979196506024909101945090925082915084018382808284375094965050505050505033600160a060020a031660009081526006602052604081205481908114806104ab5750604081205460078054909190811015610002579082526003026000805160206111d1833981519152015460a060020a900460ff16155b15610ce557610002565b6100b960043560243560443560005433600160a060020a03908116911614610b1857610002565b604080516020604435600481810135601f810184900484028501840190955284845261077594813594602480359593946064949293910191819084018382808284375094965050505050505033600160a060020a031660009081526006602052604081205481908114806105835750604081205460078054909190811015610002579082526003026000805160206111d18339815191520181505460a060020a900460ff16155b15610f1d57610002565b604080516020606435600481810135601f81018490048402850184019095528484526107759481359460248035956044359560849492019190819084018382808284375094965050505050505060006000600460005086815481101561000257908252600a027f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b01815090508484846040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f150905001935050505060405180910390208160070160005054149150610cdc565b6100b960043560005433600160a060020a03908116911614610f0857610002565b604051808a600160a060020a031681526020018981526020018060200188815260200187815260200186815260200185815260200184815260200183815260200182810382528981815460018160011615610100020316600290048152602001915080546001816001161561010002031660029004801561075e5780601f106107335761010080835404028352916020019161075e565b820191906000526020600020905b81548152906001019060200180831161074157829003601f168201915b50509a505050505050505050505060405180910390f35b60408051918252519081900360200190f35b60408051600160a060020a038616815260208101859052606081018390526080918101828152845460026001821615610100026000190190911604928201839052909160a08301908590801561081e5780601f106107f35761010080835404028352916020019161081e565b820191906000526020600020905b81548152906001019060200180831161080157829003601f168201915b50509550505050505060405180910390f35b60408051600160a060020a03929092168252519081900360200190f35b600160a060020a03851660009081526006602052604081205414156108a957604060002060078054918290556001820180825582801582901161095c5760030281600302836000526020600020918201910161095c9190610a4f565b600160a060020a03851660009081526006602052604090205460078054919350908390811015610002575060005250600381026000805160206111d183398151915201805474ff0000000000000000000000000000000000000000191660a060020a85021781555b60408051600160a060020a03871681526020810186905281517f27b022af4a8347100c7a041ce5ccf8e14d644ff05de696315196faae8cd50c9b929181900390910190a15050505050565b505050915081506080604051908101604052808681526020018581526020018481526020014281526020015060076000508381548110156100025790600052602060002090600302016000508151815460208481015160a060020a02600160a060020a03199290921690921774ff00000000000000000000000000000000000000001916178255604083015180516001848101805460008281528690209195600293821615610100026000190190911692909204601f90810183900482019491929190910190839010610ad357805160ff19168380011785555b50610b03929150610abb565b5050600060028201556001015b80821115610acf57805474ffffffffffffffffffffffffffffffffffffffffff1916815560018181018054600080835592600290821615610100026000190190911604601f819010610aa15750610a42565b601f016020900490600052602060002090810190610a4291905b80821115610acf5760008155600101610abb565b5090565b82800160010185558215610a36579182015b82811115610a36578251826000505591602001919060010190610ae5565b50506060919091015160029190910155610911565b600183905560028290556003819055604080518481526020810184905280820183905290517fa439d3fa452be5e0e1e24a8145e715f4fd8b9c08c96a42fd82a855a85e5d57de9181900360600190a1505050565b50508585846040518084600160a060020a0316606060020a0281526014018381526020018280519060200190808383829060006004602084601f0104600f02600301f150905001935050505060405180910390208160070160005081905550600260005054603c024201816003016000508190555060008160040160006101000a81548160ff0219169083021790555060008160040160016101000a81548160ff02191690830217905550600081600501600050819055507f646fec02522b41e7125cfc859a64fd4f4cefd5dc3b6237ca0abe251ded1fa881828787876040518085815260200184600160a060020a03168152602001838152602001806020018281038252838181518152602001915080519060200190808383829060006004602084601f0104600f02600301f150905090810190601f168015610cc45780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1600182016005555b50949350505050565b6004805460018101808355909190828015829011610d1c57600a0281600a028360005260206000209182019101610d1c9190610db8565b505060048054929450918491508110156100025790600052602060002090600a02016000508054600160a060020a031916871781556001818101879055855160028381018054600082815260209081902096975091959481161561010002600019011691909104601f90810182900484019391890190839010610ed857805160ff19168380011785555b50610b6c929150610abb565b50506001015b80821115610acf578054600160a060020a03191681556000600182810182905560028381018054848255909281161561010002600019011604601f819010610e9c57505b5060006003830181905560048301805461ffff191690556005830181905560068301819055600783018190556008830180548282559082526020909120610db2916002028101905b80821115610acf57805474ffffffffffffffffffffffffffffffffffffffffff1916815560018181018054600080835592600290821615610100026000190190911604601f819010610eba57505b5050600101610e44565b601f016020900490600052602060002090810190610dfc9190610abb565b601f016020900490600052602060002090810190610e929190610abb565b82800160010185558215610da6579182015b82811115610da6578251826000505591602001919060010190610eea565b60008054600160a060020a0319168217905550565b600480548690811015610002576000918252600a027f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b01905033600160a060020a0316600090815260098201602052604090205490915060ff1660011415610f8457610002565b33600160a060020a031660009081526009820160205260409020805460ff1916600190811790915560058201805490910190558315610fcd576006810180546001019055610fda565b6006810180546000190190555b7fc34f869b7ff431b034b7b9aea9822dac189a685e0b015c7d1be3add3f89128e8858533866040518085815260200184815260200183600160a060020a03168152602001806020018281038252838181518152602001915080519060200190808383829060006004602084601f0104600f02600301f150905090810190601f16801561107a5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1509392505050565b6006810154600354901315611158578060000160009054906101000a9004600160a060020a0316600160a060020a03168160010160005054670de0b6b3a76400000284604051808280519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156111225780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876185025a03f15050505060048101805460ff191660011761ff00191661010017905561116d565b60048101805460ff191660011761ff00191690555b60068101546005820154600483015460408051888152602081019490945283810192909252610100900460ff166060830152517fd220b7272a8b6d0d7d6bcdace67b936a8f175e6d5c1b3ee438b72256b32ab3af9181900360800190a1509291505056a66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688`}, []string{`[{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"proposals","outputs":[{"name":"recipient","type":"address"},{"name":"amount","type":"uint256"},{"name":"description","type":"string"},{"name":"votingDeadline","type":"uint256"},{"name":"executed","type":"bool"},{"name":"proposalPassed","type":"bool"},{"name":"numberOfVotes","type":"uint256"},{"name":"currentResult","type":"int256"},{"name":"proposalHash","type":"bytes32"}],"type":"function"},{"constant":false,"inputs":[{"name":"proposalNumber","type":"uint256"},{"name":"transactionBytecode","type":"bytes"}],"name":"executeProposal","outputs":[{"name":"result","type":"int256"}],"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"memberId","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"numProposals","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"members","outputs":[{"name":"member","type":"address"},{"name":"canVote","type":"bool"},{"name":"name","type":"string"},{"name":"memberSince","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"debatingPeriodInMinutes","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"minimumQuorum","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"type":"function"},{"constant":false,"inputs":[{"name":"targetMember","type":"address"},{"name":"canVote","type":"bool"},{"name":"memberName","type":"string"}],"name":"changeMembership","outputs":[],"type":"function"},{"constant":true,"inputs":[],"name":"majorityMargin","outputs":[{"name":"","type":"int256"}],"type":"function"},{"constant":false,"inputs":[{"name":"beneficiary","type":"address"},{"name":"etherAmount","type":"uint256"},{"name":"JobDescription","type":"string"},{"name":"transactionBytecode","type":"bytes"}],"name":"newProposal","outputs":[{"name":"proposalID","type":"uint256"}],"type":"function"},{"constant":false,"inputs":[{"name":"minimumQuorumForProposals","type":"uint256"},{"name":"minutesForDebate","type":"uint256"},{"name":"marginOfVotesForMajority","type":"int256"}],"name":"changeVotingRules","outputs":[],"type":"function"},{"constant":false,"inputs":[{"name":"proposalNumber","type":"uint256"},{"name":"supportsProposal","type":"bool"},{"name":"justificationText","type":"string"}],"name":"vote","outputs":[{"name":"voteID","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[{"name":"proposalNumber","type":"uint256"},{"name":"beneficiary","type":"address"},{"name":"etherAmount","type":"uint256"},{"name":"transactionBytecode","type":"bytes"}],"name":"checkProposalCode","outputs":[{"name":"codeChecksOut","type":"bool"}],"type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"type":"function"},{"inputs":[{"name":"minimumQuorumForProposals","type":"uint256"},{"name":"minutesForDebate","type":"uint256"},{"name":"marginOfVotesForMajority","type":"int256"},{"name":"congressLeader","type":"address"}],"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proposalID","type":"uint256"},{"indexed":false,"name":"recipient","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"description","type":"string"}],"name":"ProposalAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proposalID","type":"uint256"},{"indexed":false,"name":"position","type":"bool"},{"indexed":false,"name":"voter","type":"address"},{"indexed":false,"name":"justification","type":"string"}],"name":"Voted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"proposalID","type":"uint256"},{"indexed":false,"name":"result","type":"int256"},{"indexed":false,"name":"quorum","type":"uint256"},{"indexed":false,"name":"active","type":"bool"}],"name":"ProposalTallied","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"member","type":"address"},{"indexed":false,"name":"isMember","type":"bool"}],"name":"MembershipChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"minimumQuorum","type":"uint256"},{"indexed":false,"name":"debatingPeriodInMinutes","type":"uint256"},{"indexed":false,"name":"majorityMargin","type":"int256"}],"name":"ChangeOfRules","type":"event"}]`}, - `"github.com/PlatONnetwork/PlatON-Go/common"`, + `"github.com/AlayaNetwork/Alaya-Go/common"`, ` if b, err := NewDAO(common.Address{}, nil); b == nil || err != nil { t.Fatalf("binding (%v) nil or error (%v) not nil", b, nil) @@ -116,7 +116,7 @@ var bindTests = []struct { ` "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" `, `if b, err := NewInputChecker(common.Address{}, nil); b == nil || err != nil { t.Fatalf("binding (%v) nil or error (%v) not nil", b, nil) @@ -154,7 +154,7 @@ var bindTests = []struct { ` "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" `, `if b, err := NewOutputChecker(common.Address{}, nil); b == nil || err != nil { t.Fatalf("binding (%v) nil or error (%v) not nil", b, nil) @@ -195,7 +195,7 @@ var bindTests = []struct { "math/big" "reflect" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" `, `if e, err := NewEventChecker(common.Address{}, nil); e == nil || err != nil { t.Fatalf("binding (%v) nil or error (%v) not nil", e, nil) @@ -275,10 +275,10 @@ var bindTests = []struct { ` "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` // Generate a new random account and a funded simulator @@ -330,10 +330,10 @@ var bindTests = []struct { ` "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` // Generate a new random account and a funded simulator @@ -376,10 +376,10 @@ var bindTests = []struct { ` "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` // Generate a new random account and a funded simulator @@ -433,11 +433,11 @@ var bindTests = []struct { "math/big" "reflect" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` // Generate a new random account and a funded simulator @@ -482,10 +482,10 @@ var bindTests = []struct { ` "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` // Generate a new random account and a funded simulator @@ -529,10 +529,10 @@ var bindTests = []struct { []string{`6060604052609f8060106000396000f3606060405260e060020a6000350463f97a60058114601a575b005b600060605260c0604052600d60809081527f4920646f6e27742065786973740000000000000000000000000000000000000060a052602060c0908152600d60e081905281906101009060a09080838184600060046012f15050815172ffffffffffffffffffffffffffffffffffffff1916909152505060405161012081900392509050f3`}, []string{`[{"constant":true,"inputs":[],"name":"String","outputs":[{"name":"","type":"string"}],"type":"function"}]`}, ` - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" `, ` // Create a simulator and wrap a non-deployed contract @@ -577,10 +577,10 @@ var bindTests = []struct { ` "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` // Generate a new random account and a funded simulator @@ -626,11 +626,11 @@ var bindTests = []struct { ` "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` // Generate a new random account and a funded simulator @@ -702,10 +702,10 @@ var bindTests = []struct { "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` // Generate a new random account and a funded simulator @@ -795,11 +795,11 @@ var bindTests = []struct { "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` // Generate a new random account and a funded simulator @@ -986,10 +986,10 @@ var bindTests = []struct { ` "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` // Generate a new random account and a funded simulator @@ -1121,10 +1121,10 @@ var bindTests = []struct { "math/big" "reflect" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` @@ -1263,10 +1263,10 @@ var bindTests = []struct { ` "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` // Generate a new random account and a funded simulator @@ -1329,10 +1329,10 @@ var bindTests = []struct { "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` // Initialize test accounts @@ -1417,10 +1417,10 @@ var bindTests = []struct { ` "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/core" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/core" `, ` // Initialize test accounts @@ -1480,10 +1480,10 @@ var bindTests = []struct { ` "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/core" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/core" `, ` key, _ := crypto.GenerateKey() @@ -1542,10 +1542,10 @@ var bindTests = []struct { ` "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` // Generate a new random account and a funded simulator @@ -1607,10 +1607,10 @@ var bindTests = []struct { "bytes" "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" `, ` key, _ := crypto.GenerateKey() @@ -1733,7 +1733,7 @@ var bindTests = []struct { t.Fatalf("failed to convert binding test to modules: %v\n%s", err, out) } pwd, _ := os.Getwd() - replacer := exec.Command(gocmd, "mod", "edit", "-replace", "github.com/PlatONnetwork/PlatON-Go="+filepath.Join(pwd, "..", "..", "..")) // Repo root + replacer := exec.Command(gocmd, "mod", "edit", "-replace", "github.com/AlayaNetwork/Alaya-Go="+filepath.Join(pwd, "..", "..", "..")) // Repo root replacer.Dir = pkg if out, err := replacer.CombinedOutput(); err != nil { t.Fatalf("failed to replace binding test dependency to current source tree: %v\n%s", err, out) diff --git a/accounts/abi/bind/template.go b/accounts/abi/bind/template.go index 8c2d0e01d6..17096c8d55 100644 --- a/accounts/abi/bind/template.go +++ b/accounts/abi/bind/template.go @@ -1,22 +1,22 @@ -// Copyright 2016 The go-platon Authors -// This file is part of the go-platon library. +// Copyright 2016 The go-alaya Authors +// This file is part of the go-alaya library. // -// The go-platon library is free software: you can redistribute it and/or modify +// The go-alaya 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 3 of the License, or // (at your option) any later version. // -// The go-platon library is distributed in the hope that it will be useful, +// The go-alaya 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 the go-platon library. If not, see . +// along with the go-alaya library. If not, see . package bind -import "github.com/PlatONnetwork/PlatON-Go/accounts/abi" +import "github.com/AlayaNetwork/Alaya-Go/accounts/abi" // tmplData is the data structure required to fill the binding template. type tmplData struct { @@ -91,12 +91,12 @@ import ( "math/big" "strings" - platon "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/event" + platon "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/event" ) // Reference imports to suppress errors if they are not otherwise used. diff --git a/accounts/abi/bind/util.go b/accounts/abi/bind/util.go index 85860b24f6..f7e4a99ea2 100644 --- a/accounts/abi/bind/util.go +++ b/accounts/abi/bind/util.go @@ -21,9 +21,9 @@ import ( "fmt" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" ) // WaitMined waits for tx to be mined on the blockchain. diff --git a/accounts/abi/event.go b/accounts/abi/event.go index f4c7b72c26..88397946fb 100644 --- a/accounts/abi/event.go +++ b/accounts/abi/event.go @@ -20,8 +20,8 @@ import ( "fmt" "strings" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) // Event is an event potentially triggered by the EVM's LOG mechanism. The Event diff --git a/accounts/abi/event_test.go b/accounts/abi/event_test.go index 53a10bf671..3538d4a30f 100644 --- a/accounts/abi/event_test.go +++ b/accounts/abi/event_test.go @@ -28,8 +28,8 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) var jsonEventTransfer = []byte(`{ diff --git a/accounts/abi/method.go b/accounts/abi/method.go index dd7d6faa80..da93caafe2 100644 --- a/accounts/abi/method.go +++ b/accounts/abi/method.go @@ -20,7 +20,7 @@ import ( "fmt" "strings" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) // FunctionType represents different types of functions a contract might have. diff --git a/accounts/abi/numbers.go b/accounts/abi/numbers.go index 23268528e9..bed7e679a3 100644 --- a/accounts/abi/numbers.go +++ b/accounts/abi/numbers.go @@ -20,8 +20,8 @@ import ( "math/big" "reflect" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" ) var ( diff --git a/accounts/abi/pack.go b/accounts/abi/pack.go index 46f15f94c5..29cd041c21 100644 --- a/accounts/abi/pack.go +++ b/accounts/abi/pack.go @@ -22,8 +22,8 @@ import ( "math/big" "reflect" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" ) // packBytesSlice packs the given bytes as [L, V] as the canonical representation diff --git a/accounts/abi/pack_test.go b/accounts/abi/pack_test.go index a03d62916a..bdabc76d2e 100644 --- a/accounts/abi/pack_test.go +++ b/accounts/abi/pack_test.go @@ -27,7 +27,7 @@ import ( "strings" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // TestPack tests the general pack/unpack tests in packing_test.go diff --git a/accounts/abi/packing_test.go b/accounts/abi/packing_test.go index 3b43ae997a..3ef507ec4d 100644 --- a/accounts/abi/packing_test.go +++ b/accounts/abi/packing_test.go @@ -19,7 +19,7 @@ package abi import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) type packUnpackTest struct { diff --git a/accounts/abi/topics.go b/accounts/abi/topics.go index da39139b19..6fa0e78ad6 100644 --- a/accounts/abi/topics.go +++ b/accounts/abi/topics.go @@ -23,8 +23,8 @@ import ( "math/big" "reflect" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) // MakeTopics converts a filter query argument list into a filter topic set. diff --git a/accounts/abi/type.go b/accounts/abi/type.go index 54cd36d387..145a452381 100644 --- a/accounts/abi/type.go +++ b/accounts/abi/type.go @@ -24,7 +24,7 @@ import ( "strconv" "strings" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // Type enumerator diff --git a/accounts/abi/type_test.go b/accounts/abi/type_test.go index 14b8d222a4..30973b1f34 100644 --- a/accounts/abi/type_test.go +++ b/accounts/abi/type_test.go @@ -23,7 +23,7 @@ import ( "github.com/davecgh/go-spew/spew" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // typeWithoutStringer is a alias for the Type type which simply doesn't implement diff --git a/accounts/abi/unpack.go b/accounts/abi/unpack.go index fe615463ed..a398a2df5d 100644 --- a/accounts/abi/unpack.go +++ b/accounts/abi/unpack.go @@ -22,7 +22,7 @@ import ( "math/big" "reflect" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) var ( diff --git a/accounts/abi/unpack_test.go b/accounts/abi/unpack_test.go index 6c3ce97115..e014163781 100644 --- a/accounts/abi/unpack_test.go +++ b/accounts/abi/unpack_test.go @@ -28,7 +28,7 @@ import ( "github.com/stretchr/testify/require" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // TestUnpack tests the general pack/unpack tests in packing_test.go diff --git a/accounts/accounts.go b/accounts/accounts.go index 9ddfaa835c..7db03d1d85 100644 --- a/accounts/accounts.go +++ b/accounts/accounts.go @@ -20,10 +20,10 @@ package accounts import ( "math/big" - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/event" + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/event" ) // Account represents an Ethereum account located at a specific location defined diff --git a/accounts/keystore/account_cache.go b/accounts/keystore/account_cache.go index 73bf4f0163..d4b2fa6a31 100644 --- a/accounts/keystore/account_cache.go +++ b/accounts/keystore/account_cache.go @@ -29,9 +29,9 @@ import ( mapset "github.com/deckarep/golang-set" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/log" ) // Minimum amount of time between cache reloads. This limit applies if the platform does diff --git a/accounts/keystore/account_cache_test.go b/accounts/keystore/account_cache_test.go index 13ab107940..b7a7b1b92e 100644 --- a/accounts/keystore/account_cache_test.go +++ b/accounts/keystore/account_cache_test.go @@ -30,8 +30,8 @@ import ( "github.com/cespare/cp" "github.com/davecgh/go-spew/spew" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" ) var ( diff --git a/accounts/keystore/file_cache.go b/accounts/keystore/file_cache.go index 0afd538a12..cb3ab060c7 100644 --- a/accounts/keystore/file_cache.go +++ b/accounts/keystore/file_cache.go @@ -25,7 +25,7 @@ import ( "time" mapset "github.com/deckarep/golang-set" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) // fileCache is a cache of files seen during scan of keystore. diff --git a/accounts/keystore/key.go b/accounts/keystore/key.go index 84405d9e53..0170d31332 100644 --- a/accounts/keystore/key.go +++ b/accounts/keystore/key.go @@ -30,9 +30,9 @@ import ( "github.com/pborman/uuid" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) const ( diff --git a/accounts/keystore/keystore.go b/accounts/keystore/keystore.go index 2be2f8e854..8b22ea9087 100644 --- a/accounts/keystore/keystore.go +++ b/accounts/keystore/keystore.go @@ -33,11 +33,11 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/event" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/event" ) var ( diff --git a/accounts/keystore/keystore_test.go b/accounts/keystore/keystore_test.go index 40dbd04550..fc9f4cc0db 100644 --- a/accounts/keystore/keystore_test.go +++ b/accounts/keystore/keystore_test.go @@ -26,9 +26,9 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/event" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/event" ) var testSigData = make([]byte, 32) diff --git a/accounts/keystore/passphrase.go b/accounts/keystore/passphrase.go index 2349df21c2..2f814bd1e4 100644 --- a/accounts/keystore/passphrase.go +++ b/accounts/keystore/passphrase.go @@ -42,9 +42,9 @@ import ( "golang.org/x/crypto/pbkdf2" "golang.org/x/crypto/scrypt" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) const ( diff --git a/accounts/keystore/passphrase_test.go b/accounts/keystore/passphrase_test.go index ededbf22c8..83172763ea 100644 --- a/accounts/keystore/passphrase_test.go +++ b/accounts/keystore/passphrase_test.go @@ -20,7 +20,7 @@ import ( "io/ioutil" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) const ( diff --git a/accounts/keystore/plain.go b/accounts/keystore/plain.go index 05d458b4c7..a2015d4e4a 100644 --- a/accounts/keystore/plain.go +++ b/accounts/keystore/plain.go @@ -22,7 +22,7 @@ import ( "os" "path/filepath" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) type keyStorePlain struct { diff --git a/accounts/keystore/plain_test.go b/accounts/keystore/plain_test.go index eebeaf4486..e37cd1caa6 100644 --- a/accounts/keystore/plain_test.go +++ b/accounts/keystore/plain_test.go @@ -27,12 +27,12 @@ import ( "strings" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) func tmpKeyStoreIface(t *testing.T, encrypted bool) (dir string, ks keyStore) { - d, err := ioutil.TempDir("", "platon-keystore-test") + d, err := ioutil.TempDir("", "alaya-keystore-test") if err != nil { t.Fatal(err) } diff --git a/accounts/keystore/presale.go b/accounts/keystore/presale.go index 90a2c33ef6..6b3f6f87af 100644 --- a/accounts/keystore/presale.go +++ b/accounts/keystore/presale.go @@ -24,9 +24,9 @@ import ( "encoding/json" "errors" "fmt" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" "github.com/pborman/uuid" "golang.org/x/crypto/pbkdf2" ) diff --git a/accounts/keystore/wallet.go b/accounts/keystore/wallet.go index 15ecab8a4b..62b710e9a9 100644 --- a/accounts/keystore/wallet.go +++ b/accounts/keystore/wallet.go @@ -19,9 +19,9 @@ package keystore import ( "math/big" - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/core/types" + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // keystoreWallet implements the accounts.Wallet interface for the original diff --git a/accounts/keystore/watch.go b/accounts/keystore/watch.go index f3a225c449..58c5e7761e 100644 --- a/accounts/keystore/watch.go +++ b/accounts/keystore/watch.go @@ -21,7 +21,7 @@ package keystore import ( "time" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" "github.com/rjeczalik/notify" ) diff --git a/accounts/manager.go b/accounts/manager.go index 91db54bb5b..7abaf7bbb8 100644 --- a/accounts/manager.go +++ b/accounts/manager.go @@ -21,7 +21,7 @@ import ( "sort" "sync" - "github.com/PlatONnetwork/PlatON-Go/event" + "github.com/AlayaNetwork/Alaya-Go/event" ) // Manager is an overarching account manager that can communicate with various diff --git a/accounts/usbwallet/hub.go b/accounts/usbwallet/hub.go index ab10f2d112..cfe4320a8d 100644 --- a/accounts/usbwallet/hub.go +++ b/accounts/usbwallet/hub.go @@ -22,9 +22,9 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" "github.com/karalabe/hid" ) diff --git a/accounts/usbwallet/ledger.go b/accounts/usbwallet/ledger.go index 0f2b0b49bf..7a54eea17c 100644 --- a/accounts/usbwallet/ledger.go +++ b/accounts/usbwallet/ledger.go @@ -28,12 +28,12 @@ import ( "io" "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // ledgerOpcode is an enumeration encoding the supported Ledger opcodes. diff --git a/accounts/usbwallet/trezor.go b/accounts/usbwallet/trezor.go index daa751f0fe..59cdbfa122 100644 --- a/accounts/usbwallet/trezor.go +++ b/accounts/usbwallet/trezor.go @@ -27,12 +27,12 @@ import ( "io" "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/accounts/usbwallet/internal/trezor" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/accounts/usbwallet/internal/trezor" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" "github.com/golang/protobuf/proto" ) diff --git a/accounts/usbwallet/wallet.go b/accounts/usbwallet/wallet.go index 555a23f830..3e70e60d1e 100644 --- a/accounts/usbwallet/wallet.go +++ b/accounts/usbwallet/wallet.go @@ -25,11 +25,11 @@ import ( "sync" "time" - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" "github.com/karalabe/hid" ) diff --git a/build/ci.go b/build/ci.go index d4339874b6..491897eaab 100644 --- a/build/ci.go +++ b/build/ci.go @@ -58,24 +58,24 @@ import ( "strings" "time" - "github.com/PlatONnetwork/PlatON-Go/internal/build" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/internal/build" + "github.com/AlayaNetwork/Alaya-Go/params" ) var ( - // Files that end up in the platon*.zip archive. + // Files that end up in the alaya*.zip archive. gethArchiveFiles = []string{ "COPYING", - executablePath("platon"), + executablePath("alaya"), } - // Files that end up in the platon-alltools*.zip archive. + // Files that end up in the alaya-alltools*.zip archive. allToolsArchiveFiles = []string{ "COPYING", executablePath("abigen"), executablePath("ctool"), executablePath("bootnode"), - executablePath("platon"), + executablePath("alaya"), executablePath("rlpdump"), executablePath("wnode"), } @@ -95,7 +95,7 @@ var ( Description: "Ethereum bootnode.", }, { - BinaryName: "platon", + BinaryName: "alaya", Description: "PlatON CLI client.", }, { @@ -141,7 +141,7 @@ func executablePath(name string) string { } func main() { - // go run build/ci.go install ./cmd/platon + // go run build/ci.go install ./cmd/alaya log.SetFlags(log.Lshortfile) if _, err := os.Stat(filepath.Join("build", "ci.go")); os.IsNotExist(err) { @@ -179,7 +179,7 @@ func main() { // Compiling func doInstall(cmdline []string) { - // ./cmd/platon + // ./cmd/alaya var ( arch = flag.String("arch", "", "Architecture to cross build for") cc = flag.String("cc", "", "C compiler to cross build with") @@ -218,7 +218,7 @@ func doInstall(cmdline []string) { index := 0 packages2 := []string{} for index < len(packages) { - if packages[index] == "github.com/PlatONnetwork/PlatON-Go/cmd/platon" || packages[index] == "./cmd/platon" { + if packages[index] == "github.com/AlayaNetwork/Alaya-Go/cmd/alaya" || packages[index] == "./cmd/alaya" { goplatoninstall := goTool("install", buildFlags(env)...) goplatoninstall.Args = append(goplatoninstall.Args, "-v") if *mpc == "on" { @@ -233,10 +233,10 @@ func doInstall(cmdline []string) { if *mv == "on" { goplatoninstall.Args = append(goplatoninstall.Args, "-tags=mpcon vcon") } - packages3 := []string{"./cmd/platon"} + packages3 := []string{"./cmd/alaya"} goplatoninstall.Args = append(goplatoninstall.Args, packages3...) build.MustRun(goplatoninstall) - if packages[index] == "./cmd/platon" { + if packages[index] == "./cmd/alaya" { return } index++ @@ -417,8 +417,8 @@ func doArchive(cmdline []string) { env = build.Env() basegeth = archiveBasename(*arch, params.ArchiveVersion(env.Commit)) - geth = "platon-" + basegeth + ext - alltools = "platon-alltools-" + basegeth + ext + geth = "alaya-" + basegeth + ext + alltools = "alaya-alltools-" + basegeth + ext ) maybeSkipArchive(env) if err := build.WriteArchive(geth, gethArchiveFiles); err != nil { @@ -545,7 +545,7 @@ func makeWorkdir(wdflag string) string { if wdflag != "" { err = os.MkdirAll(wdflag, 0744) } else { - wdflag, err = ioutil.TempDir("", "platon-build-") + wdflag, err = ioutil.TempDir("", "alaya-build-") } if err != nil { log.Fatal(err) @@ -561,7 +561,7 @@ func isUnstableBuild(env build.Environment) bool { } type debPackage struct { - Name string // the name of the Debian package to produce, e.g. "platon" + Name string // the name of the Debian package to produce, e.g. "alaya" Version string // the clean version of the debPackage, e.g. 1.8.12 or 0.3.0, without any metadata Executables []debExecutable // executables to be included in the package } @@ -720,7 +720,7 @@ func doWindowsInstaller(cmdline []string) { continue } allTools = append(allTools, filepath.Base(file)) - if filepath.Base(file) == "platon.exe" { + if filepath.Base(file) == "alaya.exe" { gethTool = file } else { devTools = append(devTools, file) @@ -728,13 +728,13 @@ func doWindowsInstaller(cmdline []string) { } // Render NSIS scripts: Installer NSIS contains two installer sections, - // first section contains the platon binary, second section holds the dev tools. + // first section contains the alaya binary, second section holds the dev tools. templateData := map[string]interface{}{ "License": "COPYING", "Geth": gethTool, "DevTools": devTools, } - build.Render("build/nsis.platon.nsi", filepath.Join(*workdir, "platon.nsi"), 0644, nil) + build.Render("build/nsis.alaya.nsi", filepath.Join(*workdir, "alaya.nsi"), 0644, nil) build.Render("build/nsis.install.nsh", filepath.Join(*workdir, "install.nsh"), 0644, templateData) build.Render("build/nsis.uninstall.nsh", filepath.Join(*workdir, "uninstall.nsh"), 0644, allTools) build.Render("build/nsis.pathupdate.nsh", filepath.Join(*workdir, "PathUpdate.nsh"), 0644, nil) @@ -749,14 +749,14 @@ func doWindowsInstaller(cmdline []string) { if env.Commit != "" { version[2] += "-" + env.Commit[:8] } - installer, _ := filepath.Abs("platon-" + archiveBasename(*arch, params.ArchiveVersion(env.Commit)) + ".exe") + installer, _ := filepath.Abs("alaya-" + archiveBasename(*arch, params.ArchiveVersion(env.Commit)) + ".exe") build.MustRunCommand("makensis.exe", "/DOUTPUTFILE="+installer, "/DMAJORVERSION="+version[0], "/DMINORVERSION="+version[1], "/DBUILDVERSION="+version[2], "/DARCH="+*arch, - filepath.Join(*workdir, "platon.nsi"), + filepath.Join(*workdir, "alaya.nsi"), ) // Sign and publish installer. @@ -787,11 +787,11 @@ func doAndroidArchive(cmdline []string) { // Build the Android archive and Maven resources build.MustRun(goTool("get", "golang.org/x/mobile/cmd/gomobile", "golang.org/x/mobile/cmd/gobind")) build.MustRun(gomobileTool("init", "--ndk", os.Getenv("ANDROID_NDK"))) - build.MustRun(gomobileTool("bind", "-ldflags", "-s -w", "--target", "android", "--javapkg", "org.ethereum", "-v", "github.com/PlatONnetwork/PlatON-Go/mobile")) + build.MustRun(gomobileTool("bind", "-ldflags", "-s -w", "--target", "android", "--javapkg", "org.ethereum", "-v", "github.com/AlayaNetwork/Alaya-Go/mobile")) if *local { // If we're building locally, copy bundle to build dir and skip Maven - os.Rename("platon.aar", filepath.Join(GOBIN, "platon.aar")) + os.Rename("alaya.aar", filepath.Join(GOBIN, "alaya.aar")) return } meta := newMavenMetadata(env) @@ -801,8 +801,8 @@ func doAndroidArchive(cmdline []string) { maybeSkipArchive(env) // Sign and upload the archive to Azure - archive := "platon-" + archiveBasename("android", params.ArchiveVersion(env.Commit)) + ".aar" - os.Rename("platon.aar", archive) + archive := "alaya-" + archiveBasename("android", params.ArchiveVersion(env.Commit)) + ".aar" + os.Rename("alaya.aar", archive) if err := archiveUpload(archive, *upload, *signer); err != nil { log.Fatal(err) @@ -892,7 +892,7 @@ func newMavenMetadata(env build.Environment) mavenMetadata { } return mavenMetadata{ Version: version, - Package: "platon-" + version, + Package: "alaya-" + version, Develop: isUnstableBuild(env), Contributors: contribs, } @@ -913,7 +913,7 @@ func doXCodeFramework(cmdline []string) { // Build the iOS XCode framework build.MustRun(goTool("get", "golang.org/x/mobile/cmd/gomobile", "golang.org/x/mobile/cmd/gobind")) build.MustRun(gomobileTool("init")) - bind := gomobileTool("bind", "-ldflags", "-s -w", "--target", "ios", "--tags", "ios", "-v", "github.com/PlatONnetwork/PlatON-Go/mobile") + bind := gomobileTool("bind", "-ldflags", "-s -w", "--target", "ios", "--tags", "ios", "-v", "github.com/AlayaNetwork/Alaya-Go/mobile") if *local { // If we're building locally, use the build folder and stop afterwards @@ -921,7 +921,7 @@ func doXCodeFramework(cmdline []string) { build.MustRun(bind) return } - archive := "platon-" + archiveBasename("ios", params.ArchiveVersion(env.Commit)) + archive := "alaya-" + archiveBasename("ios", params.ArchiveVersion(env.Commit)) if err := os.Mkdir(archive, os.ModePerm); err != nil { log.Fatal(err) } diff --git a/build/update-license.go b/build/update-license.go index 4896a35fab..f7d2574bbd 100644 --- a/build/update-license.go +++ b/build/update-license.go @@ -68,13 +68,13 @@ var ( licenseCommentRE = regexp.MustCompile(`^//\s*(Copyright|This file is part of).*?\n(?://.*?\n)*\n*`) // this text appears at the start of AUTHORS - authorsFileHeader = "# This is the official list of PlatON-Go authors for copyright purposes.\n\n" + authorsFileHeader = "# This is the official list of Alaya-Go authors for copyright purposes.\n\n" ) // this template generates the license comment. // its input is an info structure. var licenseT = template.Must(template.New("").Parse(` -// Copyright {{.Year}} The PlatON-Go Authors +// Copyright {{.Year}} The Alaya-Go Authors // This file is part of {{.Whole false}}. // // {{.Whole true}} is free software: you can redistribute it and/or modify @@ -113,12 +113,12 @@ func (i info) ShortLicense() string { func (i info) Whole(startOfSentence bool) string { if i.gpl() { - return "PlatON-Go" + return "Alaya-Go" } if startOfSentence { - return "The PlatON-Go library" + return "The Alaya-Go library" } - return "the PlatON-Go library" + return "the Alaya-Go library" } func (i info) gpl() bool { diff --git a/cases/.gitignore b/cases/.gitignore deleted file mode 100644 index 4128ab2271..0000000000 --- a/cases/.gitignore +++ /dev/null @@ -1,23 +0,0 @@ -./ContractsAutoTests - -# MATCH -**/*cache* -**/*debug* -**/*report* -**/*log* -**/*tool* -**/*venv* -**/.* - -# ASSIGN -deploy/tmp -deploy/node -deploy/bin - -# OTHER -**/*.py[cod] -**/*.so -**/*.egg -**/*.egg-info -**/*.code-workspace -**/*.bak \ No newline at end of file diff --git a/cases/ContractsAutoTests/.gitignore b/cases/ContractsAutoTests/.gitignore deleted file mode 100644 index d2f851043c..0000000000 --- a/cases/ContractsAutoTests/.gitignore +++ /dev/null @@ -1,15 +0,0 @@ -.idea/* -*.iml -target/ -$RECYCLE.BIN/ -velocity.log* -#*.vm -solc/* -*.zip -*plan.error.xml -src/test/resources/contracts/wasm/build/* -src/test/resources/contracts/network.platon.test.evm/build/* -scripts/platon-web3j -autotest_log - -*.abi.json diff --git a/cases/ContractsAutoTests/README.md b/cases/ContractsAutoTests/README.md deleted file mode 100644 index c218f35a98..0000000000 --- a/cases/ContractsAutoTests/README.md +++ /dev/null @@ -1,242 +0,0 @@ -# 使用手冊 - -​ 合约自动化测试代码是一个基于`client.java.sdk`并通过`maven`来管理的工程。因此使用时只需要配置`maven`,并通过`maven client compile` 就可以生成一个`java project`并导入`IDE`,然后就可以开始愉快的编写合约测试 - -## 1 合约编写 - -### 1.1 合约源码存放路径 - -`src/test/resources/contracts`,目前还未集成编译器,所以暂时无法把合约源码编译成二进制和`abi`文件,计划12.20前支持编译。 - -### 1.2 合约二进制和`abi`文件存放路径 - -`src/test/resources/contracts/build` - -### 1.3 包装类生成 - -* EVM:将二进制和`abi`文件放在`src/test/resources/contracts/evm/build`路径下,再执行`src/test/java/evm/beforetest`路径下的`GeneratorPreTest`类的`junit`方法(右键直接使用`junit`插件即可执行) -* WASM:将二进制和`abi`文件放在`src/test/resources/contracts/wasm/build`路径下,再执行`src/test/java/wasm/beforetest`路径下的`WASMGeneratorPreTest`类的`junit`方法(右键直接使用`junit`插件即可执行) - -## 2 合约测试脚本编写 - -### 2.1 示例脚本 - -```java -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.autotest.junit.rules.AssertCollector; -import network.platon.autotest.junit.rules.DriverService; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.web3j.crypto.Credentials; -import org.web3j.protocol.Web3j; -import org.web3j.protocol.core.methods.response.TransactionReceipt; -import org.web3j.protocol.http.HttpService; -import org.web3j.tx.RawTransactionManager; -import org.web3j.tx.gas.ContractGasProvider; -import java.math.BigInteger; - - -/** - * @title 代币转移 - * @description: - * @author: qcxiao - * @create: 2019/12/16 13:39 - **/ -public class TokenTransferTest { - @Rule - public AssertCollector collector = new AssertCollector(); - - @Rule - public DriverService driverService = new DriverService(); - // 底层链ID - private long chainId; - // 每次转移的代币数量 - private String transferAmount; - // 发行代币的总额 - private String ownerAmount; - // 发行代币的地址 - private final static String transferFrom = "0x03f0e0a226f081a5daecfda222cafc959ed7b800"; - // 接收代币的地址 - private final static String transferTo = "0x8d2b8b62d2ff5e7d17f91cf821cafee8e1fe4584"; - // 代币名称 - private String tokenName; - - @Before - public void before() { - chainId = Integer.valueOf(driverService.param.get("chainId")); - ownerAmount = driverService.param.get("ownerAmount"); - transferAmount = driverService.param.get("transferAmount"); - tokenName = driverService.param.get("tokenName"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "complexcontracts.TokenTransferTest-代币转移") - public void testTransfer() { - Web3j web3j = null; - Credentials credentials = null; - try { - web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); - credentials = Credentials.create(driverService.param.get("privateKey")); - collector.logStepPass("currentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("The node is unable to connect", e.toString()); - e.printStackTrace(); - } - - ContractGasProvider provider = new ContractGasProvider(new BigInteger("50000000000"), new BigInteger("3000000")); - RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - - try { - HumanStandardToken token = HumanStandardToken.deploy(web3j, transactionManager, provider, - new BigInteger(ownerAmount), tokenName, BigInteger.valueOf(18), "USDT").send(); - String contractAddress = token.getContractAddress(); - TransactionReceipt tx = token.getTransactionReceipt().get(); - collector.logStepPass("Token issued successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash() + - ", tokenName:" + token.name().send() + ", symbol:" + token.symbol().send()); - collector.assertEqual(tokenName, token.name().send(), "checkout tokenName"); - collector.logStepPass("5次循环调用..."); - for (int i = 1; i < 6; i++) { - TransactionReceipt transactionReceipt = HumanStandardToken.load(contractAddress, web3j, transactionManager, provider, chainId) - .transfer(transferTo, new BigInteger(transferAmount)).send(); - BigInteger toBalance = token.balanceOf(transferTo).send(); - BigInteger fromBalance = token.balanceOf(transferFrom).send(); - collector.logStepPass("Token transfer successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentTransferTime:" + i + ", currentBlockNumber:" + transactionReceipt.getBlockNumber()); - collector.logStepPass("transferToBalance:" + toBalance + ", transferFromBalance:" + fromBalance); - // 累计转移的数量 - BigInteger amount = new BigInteger(transferAmount).multiply(BigInteger.valueOf(i)); - // 判断代币接收地址的余额是否正确 - collector.assertEqual(amount, toBalance, "checkout every time transferTo balance."); - // 判断代币转出地址余额是否正确 - collector.assertEqual((new BigInteger(ownerAmount)).subtract(amount), fromBalance, "checkout every time transferFrom balance."); - } - } catch (Exception e) { - e.printStackTrace(); - } - } -} -``` - -### 2.2 类名称说明 - -类名称即测试套件名称,必须以`Test`单词结尾 - -### 2.3 数据驱动 - -#### 2.3.1 类成员变量声明 - -```java -@Rule -public AssertCollector collector = new AssertCollector(); -@Rule -public DriverService driverService = new DriverService(); -``` - -#### 2.3.2 指定对应的测试数据 - -```java -@DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "complexcontracts.TokenTransferTest-代币转移") -``` - -`type = DataSourceType.EXCEL`:表示数据通过`Excel`表管理 - -`file = "test.xls"`:表示文件名称 - -`sheetName = "Sheet1"`:指定`EXCEL`表的`Sheet` - -`author = "qcxiao"`:表示作者 - -`showName = "complexcontracts.TokenTransferTest-代币转移"`:日志中的名称显示 - -#### 2.3.3 测试数据文件 - -文件路径:`src/test/resources/` + 对应测试类(测试脚本)的名称,如`src/test/resources/complexcontracts.TokenTransferTest` - -文件名称:`src/test/resources/complexcontracts.TokenTransferTest`下的文件名称与`SheetName`需要和2.3.2中的文件名称一致 - -示例: - -| `caseName` | `caseDescription` | `caseRun` | `casePriority` | `ownerAmount` | `transferAmount` | `tokenName` | -| --------------- | ----------------- | --------- | -------------- | ---------------------------- | ---------------- | ----------- | -| `ERC20代币转移` | 普通转账 | Y | `P1` | 1000000000000000000000000000 | 1000 | `qcxiao` | - -不同的测试点,数据可以有多行,执行的时候框架会自动执行到每行数据。 - -#### 2.3.4 测试数据读取 - -`driverService.param.get("ownerAmount")` - -### 2.4 日志 - -#### 2.4.1 成功日志 - -```java -collector.logStepPass("currentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); -``` - -#### 2.4.2 失败日志 - -```java -collector.logStepFail("The node is unable to connect", e.toString()); -``` - -### 2.5 断言 - -```java -// 判断代币转出地址余额是否正确 -collector.assertEqual((new BigInteger(ownerAmount)).subtract(amount), fromBalance, "checkout every time transferFrom balance."); -``` - -## 3 执行测试 - -### 3.1 `Junit`插件方式 - -测试类中使用右键`junit`方式直接测试 - -### 3.2 `maven`方式 - -```java -mvn clean test -``` - -## 4 报告生成 - -#### 4.1 报告路径配置 - -`src/test/resources/test.properties`文件中的`logDir = C\:\\autotest_log\\`字段用以配置 - -#### 4.2 报告示例 - -![image-20191217094605262](https://github.com/qcblockchain/PlatON-Go/blob/feature/wasm/cases/ContractsAutoTests/src/main/resources/templates/images/image-20191217094605262.png) - -#### 4.3 编码说明 - -使用`mvn clean test`测试时,因为`windows`默认采用`GBK`编码,所以`src/main/resources/templates`里面的文件编码需要调整成`GBK`,否则报告会乱码 - - - -## 5 补充说明 - -目前测试用例版本将包含EVM和WASM两个版本,脚本数和用例数已经变得庞大,为了规范两种类别的自动化测试用例,接下来将区分测试代码和测试数据: - -### 5.1 测试方法改造 - -测试方法的注解需要带`sourcePrefix = "evm"`或者`sourcePrefix = "wasm"` - -完整信息:`@DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", author = "qcxiao", showName = "complexcontracts.TokenTransferTest-代币转移", sourcePrefix = "evm")` - -### 5.2 测试数据转移 - -测试数据均需要放到`evm`或者`wasm`文件夹下面 - -### 5.2 测试优先级 - -因为当前EVM测试需要半小时,如何全部执行时只执行WASM的用例,需要在Excel表中的casePriority字段标识成WASM,执行测试时通过命令:`mvn test -DcasePriority=WASM`,此时将只执行WASM的用例 - -### 5.3 测试代码结构图 - -![结构](https://github.com/qcblockchain/PlatON-Go/blob/feature/wasm/cases/ContractsAutoTests/src/main/resources/templates/images/%E7%BB%93%E6%9E%84.png) diff --git a/cases/ContractsAutoTests/pom.xml b/cases/ContractsAutoTests/pom.xml deleted file mode 100644 index 2a5e976307..0000000000 --- a/cases/ContractsAutoTests/pom.xml +++ /dev/null @@ -1,251 +0,0 @@ - - - 4.0.0 - - network.platon.autotest - ContractsAutoTests - 1.0-SNAPSHOT - ContractsAutoTests - 智能合约自动化测试代码 - - - - - - - - - com.alaya.client - alaya-core - 0.13.2.0 - - - - - - - - log4j - log4j - 1.2.16 - - - org.slf4j - slf4j-api - 1.7.7 - - - ch.qos.logback - logback-core - 1.1.7 - - - ch.qos.logback - logback-access - 1.1.7 - - - ch.qos.logback - logback-classic - 1.1.7 - - - org.projectlombok - lombok - 1.18.10 - - - network.platon.autotest - contract-compile - 1.0 - - - com.google.code.gson - gson - 2.8.6 - - - com.alibaba - fastjson - 1.2.46 - - - junit - junit - 4.11 - - - commons-httpclient - commons-httpclient - 3.1 - - - org.apache.httpcomponents - httpclient - 4.3.2 - - - org.apache.httpcomponents - httpclient - 4.3.2 - sources - - - org.hamcrest - hamcrest-core - 1.3 - compile - - - org.hamcrest - hamcrest-all - 1.3 - - - spring - spring-web - 1.0.2 - - - org.apache.ant - ant - 1.9.2 - - - org.apache.velocity - velocity - 1.7 - - - net.sourceforge.javacsv - javacsv - 2.0 - - - org.apache.poi - poi-ooxml - 3.8 - - - org.apache.directory.studio - org.dom4j.dom4j - 1.6.1 - - - org.apache.maven.surefire - surefire-junit47 - 2.16 - - - org.seleniumhq.selenium - selenium-java - 2.42.2 - - - org.seleniumhq.selenium - selenium-java - 2.42.2 - sources - - - - com.opera - operadriver - 0.16 - - - org.seleniumhq.selenium - selenium-remote-driver - - - - - commons-lang - commons-lang - 2.6 - - - org.apache.maven.surefire - surefire-api - 2.16 - compile - - - xml-apis - xml-apis - 1.4.01 - - - io.appium - java-client - 2.1.0 - - - com.github.detro - phantomjsdriver - 1.2.0 - - - org.databene - contiperf - 2.1.0 - test - - - - - - platon-public - https://sdk.platon.network/nexus/content/groups/public/ - - - releases - http://192.168.9.39:8081/repository/maven-releases/ - - - public - http://192.168.9.39:8081/repository/maven-public/ - - - - - - - - maven-deploy-plugin - - - deploy - deploy - - deploy - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 2.3.2 - - 1.8 - 1.8 - utf-8 - - - - org.apache.maven.plugins - maven-surefire-plugin - 2.16 - - once - - - - - - - diff --git a/cases/ContractsAutoTests/scripts/compile.bat b/cases/ContractsAutoTests/scripts/compile.bat deleted file mode 100644 index c2b618b505..0000000000 --- a/cases/ContractsAutoTests/scripts/compile.bat +++ /dev/null @@ -1,15 +0,0 @@ -@echo off -rem echo "Parse params....." -set VERSION=%1 -set CONTRACT=%2 -set TARGET=%3 -rem echo "Choose solc version: "%VERSION% -rem echo "Source solidity contract path: "%CONTRACT% -rem echo "Compiled abi/bytecode file target path: "%TARGET% -rem echo "Enter solc binary dir ....." -rem echo %cd% -cd ..\solc\solc-windows-%VERSION% -rem echo "Run solc.exe command to compile contract ...." -rem echo %cd% -solc.exe -o %TARGET% --bin --abi --overwrite %CONTRACT% -exit \ No newline at end of file diff --git a/cases/ContractsAutoTests/scripts/compile.sh b/cases/ContractsAutoTests/scripts/compile.sh deleted file mode 100644 index e1763a2d0d..0000000000 --- a/cases/ContractsAutoTests/scripts/compile.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash -VERSION=$1 -CONTRACT=$2 -TARGET=$3 -SOLC=solc-${VERSION} -# echo "hello" -# echo "Choose solc version: ${VERSION}" -echo "Source solidity contract path: ${CONTRACT}" -echo "Compiled abi/bytecode file target path: ${CONTRACT}" -# echo "Enter solc binary dir ....." -cd ../solc -chmod a+x solc-${VERSION} -#if [ ! -f "$SOLC" ]; then -# echo "${SOLC} does not exist, pull it from server......" -# wget https://github.com/ethereum/solidity/releases/download/v${VERSION}/solc-static-linux -# mv solc-static-linux solc-${VERSION} -# chmod a+x solc-${VERSION} -#fi -# echo "Run solc command to compile contract ...." -version_num=0 -array=(${VERSION//./ }) -sum=0 -len=${#array[@]} -for(( i=0;i<$len;i++)) -do - let sum+=$[10**($len-i)*${array[i]}] -done; -if [ "$sum" -ge "670" ]; then - ./solc-${VERSION} -o ${TARGET} --evm-version istanbul --bin --abi --overwrite ${CONTRACT} -else - ./solc-${VERSION} -o ${TARGET} --bin --abi --overwrite ${CONTRACT} -fi diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/exception/RemoteWebException.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/exception/RemoteWebException.java deleted file mode 100644 index 1a2df53325..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/exception/RemoteWebException.java +++ /dev/null @@ -1,21 +0,0 @@ -package network.platon.autotest.exception; - -public class RemoteWebException extends RuntimeException { - private static final long serialVersionUID = 3341764449059630537L; - - public RemoteWebException() { - super(); - } - - public RemoteWebException(String message, Throwable cause) { - super(message, cause); - } - - public RemoteWebException(String message) { - super(message); - } - - public RemoteWebException(Throwable cause) { - super(cause); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/exception/StepException.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/exception/StepException.java deleted file mode 100644 index be1c3fc231..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/exception/StepException.java +++ /dev/null @@ -1,37 +0,0 @@ -package network.platon.autotest.exception; - -/** - * @Title: StepException.java - * @Package network.platon.autotest.utils - * @Description: TODO(用一句话描述该文件做什么) - * @author qcxiao - * @date 2013-11-20 下午01:36:09 - */ -public class StepException extends RuntimeException { - - /** - * - */ - private static final long serialVersionUID = 3341764449059630537L; - - public StepException() { - super(); - // TODO Auto-generated constructor stub - } - - public StepException(String message, Throwable cause) { - super(message, cause); - // TODO Auto-generated constructor stub - } - - public StepException(String message) { - super(message); - // TODO Auto-generated constructor stub - } - - public StepException(Throwable cause) { - super(cause); - // TODO Auto-generated constructor stub - } - -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/annotations/DataSource.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/annotations/DataSource.java deleted file mode 100644 index 0e0c87fe85..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/annotations/DataSource.java +++ /dev/null @@ -1,29 +0,0 @@ -package network.platon.autotest.junit.annotations; - -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -import network.platon.autotest.junit.enums.DataSourceType; - -@Retention(RetentionPolicy.RUNTIME) -@Target({ ElementType.METHOD }) -public @interface DataSource { - public String file() default ""; - - public DataSourceType type() default DataSourceType.EXCEL; - - public String sheetName() default ""; - - public String showName() default ""; - - public String author() default ""; - - public String expert() default ""; - - public String sourcePrefix() default ""; - - public int executionSequence() default 1; - -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/CopyOfCommonConstant.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/CopyOfCommonConstant.java deleted file mode 100644 index 5d614c67cb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/CopyOfCommonConstant.java +++ /dev/null @@ -1,28 +0,0 @@ -package network.platon.autotest.junit.core; - -import java.util.HashMap; -import java.util.Map; -import java.util.Properties; - -import org.junit.runner.Description; -import org.junit.runners.model.Statement; - -import network.platon.autotest.utils.FileUtil; - -/** - * @Title: CommonConstant.java - * @Package network.platon.autotest.junit.core - * @Description: TODO(用一句话描述该文件做什么) - * @author qcxiao - */ -public class CopyOfCommonConstant { - public static String SOURCES_DIR = "src/test/resources/"; - public static String TEMPLATES_DIR = "src/main/resources/templates/"; - public static Properties PROPERTIES = FileUtil.getProperties(); - public static Description DESCRIPTION = null; - public static Statement STATEMENT = null; - public static Boolean SUITE_MERGED = true; - public static String PLAN_VM_CONTENT = "\n\n#foreach ($!moduleInfo in $!suiteInfo.moduleInfoList)\n\n#foreach ($caseInfo in $moduleInfo.caseInfoList)\n \n\n#end\n \n#end\n"; - public static String ENCODE = "utf-8"; - public static Map> PROPERTIES_MAP = new HashMap>(); -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/DriverModule.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/DriverModule.java deleted file mode 100644 index ae64667e4c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/DriverModule.java +++ /dev/null @@ -1,176 +0,0 @@ -package network.platon.autotest.junit.core; - -import java.io.File; -import java.util.Enumeration; -import java.util.Vector; -import network.platon.autotest.exception.StepException; -import network.platon.autotest.junit.enums.FileType; -import network.platon.autotest.junit.enums.RunResult; -import network.platon.autotest.junit.enums.StepType; -import network.platon.autotest.junit.modules.CaseInfo; -import network.platon.autotest.junit.modules.ModuleInfo; -import network.platon.autotest.junit.modules.SuiteInfo; -import network.platon.autotest.junit.rules.DriverService; - -/** - * 观察者模式,用于管理套件、模块、用例的开始与结束;后续如果有新增的类似对象也可以直接往里加 - * @author qcxiao - * - */ -public class DriverModule implements Observer { - private String sourcesDir = DriverService.PROPERTIES.getProperty("sourcesDir", "src/test/resources/"); - - private DriverModule() { - } - - /** - * 单例模式 - */ - private static DriverModule singleton; - - public static DriverModule getInstance() { - if (singleton == null) { - singleton = new DriverModule(); - } - return singleton; - } - - private Vector observersVector = new Vector(); - - public void attach(Observer observer) { - observersVector.addElement(observer); - } - - public void detach(Observer observer) { - observersVector.removeElement(observer); - } - - public void detachAll() { - observersVector.clear(); - } - - @SuppressWarnings("unchecked") - public Enumeration observers() { - return ((Vector) observersVector.clone()).elements(); - } - - @Override - public void suiteRunStart(SuiteInfo suiteInfo) { - Enumeration enumeration = observers(); - while (enumeration.hasMoreElements()) { - ((Observer) enumeration.nextElement()).suiteRunStart(suiteInfo); - } - - } - - @Override - public void moduleRunStart(ModuleInfo moduleInfo) { - Enumeration enumeration = observers(); - while (enumeration.hasMoreElements()) { - ((Observer) enumeration.nextElement()).moduleRunStart(moduleInfo); - } - - } - - @Override - public void caseRunStart(CaseInfo caseInfo) { - Enumeration enumeration = observers(); - while (enumeration.hasMoreElements()) { - ((Observer) enumeration.nextElement()).caseRunStart(caseInfo); - } - - } - - @Override - public void suiteRunStop(SuiteInfo suiteInfo) { - Enumeration enumeration = observers(); - while (enumeration.hasMoreElements()) { - ((Observer) enumeration.nextElement()).suiteRunStop(suiteInfo); - } - } - - @Override - public void moduleRunStop(ModuleInfo moduleInfo) { - Enumeration enumeration = observers(); - while (enumeration.hasMoreElements()) { - ((Observer) enumeration.nextElement()).moduleRunStop(moduleInfo); - } - } - - @Override - public void caseRunStop(CaseInfo caseInfo) { - Enumeration enumeration = observers(); - while (enumeration.hasMoreElements()) { - ((Observer) enumeration.nextElement()).caseRunStop(caseInfo); - } - - } - - /** - * 主要用于数据库等初始化:initialData - * - * @param caseInfo - */ - public void initialData(CaseInfo caseInfo) { - String fileName = caseInfo.getCaseParams().get("initialData"); - if (fileName == null) { - return; - } - String fileType = fileName.substring(fileName.lastIndexOf(".") + 1).toUpperCase(); - fileName = findFile(fileName); - if (fileName == null) { - LogModule.logStepFail(StepType.DATABASE, "initialData操作失败", RunResult.FAIL, caseInfo.getCaseParams().get("initialData") + "文件不存在!"); - throw new StepException("initialData操作失败!" + caseInfo.getCaseParams().get("initialData") + "文件不存在!"); - } - switch (FileType.valueOf(fileType)) { - case JAVA: - break; - } - - } - - /** - * 主要用于数据库等销毁:destroyData - * - * @param caseInfo - */ - public void destroyData(CaseInfo caseInfo) { - String fileName = caseInfo.getCaseParams().get("destroyData"); - if (fileName == null) { - return; - } - String fileType = fileName.substring(fileName.lastIndexOf(".") + 1).toUpperCase(); - fileName = findFile(fileName); - if (fileName == null) { - LogModule.logStepFail(StepType.DATABASE, "destroyData操作失败", RunResult.FAIL, caseInfo.getCaseParams().get("destroyData") + "文件不存在!"); - throw new StepException("destroyData操作失败!" + caseInfo.getCaseParams().get("destroyData") + "文件不存在!"); - } - switch (FileType.valueOf(fileType)) { - case JAVA: - break; - } - - } - - /** - * 根据文件名得到文件路径 - * @param fileName - * @return - */ - private String findFile(String fileName) { - // 根目录下 - String filePath = System.getProperty("user.dir") + "/" + sourcesDir + fileName; - File file = new File(filePath); - // 测试类的数据源目录下 - if (!file.exists()) { - //此处getSimpleName不要改成getName - filePath = System.getProperty("user.dir") + "/" + sourcesDir + DriverService.DESCRIPTION.getTestClass().getSimpleName() + "/" + fileName; - file = new File(filePath); - } - if (!file.exists()) { - filePath = null; - } - return filePath; - } - -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/LogModule.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/LogModule.java deleted file mode 100644 index 2f7f672d32..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/LogModule.java +++ /dev/null @@ -1,328 +0,0 @@ -package network.platon.autotest.junit.core; - -import java.io.UnsupportedEncodingException; -import java.net.URLEncoder; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -import network.platon.autotest.junit.enums.RunResult; -import network.platon.autotest.junit.enums.StepType; -import network.platon.autotest.junit.enums.TestSuiteType; -import network.platon.autotest.junit.modules.CaseInfo; -import network.platon.autotest.junit.modules.LogStepInfo; -import network.platon.autotest.junit.modules.ModuleInfo; -import network.platon.autotest.junit.modules.SuiteInfo; -import org.openqa.selenium.NoAlertPresentException; -import org.openqa.selenium.WebDriver; -import org.openqa.selenium.phantomjs.PhantomJSDriver; - -import network.platon.autotest.utils.DateUtil; -import network.platon.autotest.utils.ScreenShotUtil; - -/** - * 存放日志 - * @author qcxiao - * - */ -public class LogModule { - public static SuiteInfo SUITE_INFO = new SuiteInfo(); - public static ModuleInfo MODULE_INFO = new ModuleInfo(); - public static CaseInfo CASE_INFO = new CaseInfo(); - public static String SUITE_PATH = ""; - public static List logStepInfoList = new ArrayList(); - - public static List onLogStep(LogStepInfo logStepInfo) { - logStepInfo.setStepId(logStepInfoList.size() + 1); - logStepInfoList.add(logStepInfo); - return logStepInfoList; - } - - public static List logStepFail(StepType stepType, String stepDesc, RunResult stepResult, String failReason, TestSuiteType testSuiteType) { - switch (testSuiteType) { - case WEB_UI: - return logStepFail(stepType, stepDesc, stepResult, failReason, TestSuiteType.IOS); - default: - return logStepFail(stepType, stepDesc, stepResult, failReason); - } - } - /** - * 日志中输入期望值与实际值的assertEqual断言 - */ - public static List logStepFail(StepType stepType, String stepDesc, String actual, String expect, RunResult stepResult, String failReason, TestSuiteType testSuiteType) { - switch (testSuiteType) { - case WEB_UI: - return logStepFail(stepType, stepDesc, actual, expect, stepResult, failReason, TestSuiteType.IOS); - default: - return logStepFail(stepType, stepDesc, actual, expect, stepResult, failReason); - } - } - - - - /** - * 通用步骤失败日志 - */ - public static List logStepFail(StepType stepType, String stepDesc, RunResult stepResult, String failReason) { - LogStepInfo logStepInfo = new LogStepInfo(); - logStepInfo.setStepType(stepType); - logStepInfo.setStepDesc(stepDesc.replace("<","<").replace(">",">")); - logStepInfo.setStepResult(stepResult); - logStepInfo.setFailReason(failReason); - String url = ""; - logStepInfo.setUrl(url); - String stepTime = DateUtil.dateToStr(new Date(), "HH:mm:ss"); - logStepInfo.setStepTime(stepTime); - String failType = ""; - logStepInfo.setFailType(failType); - System.err.println(stepDesc + "\n" + failReason); - return onLogStep(logStepInfo); - } - - /** - * 通用步骤失败日志 - * 日志中输入期望值与实际值的assertEqual断言 - */ - public static List logStepFail(StepType stepType, String stepDesc, String actual, String expect, RunResult stepResult, String failReason) { - LogStepInfo logStepInfo = new LogStepInfo(); - logStepInfo.setStepType(stepType); - //logStepInfo.setStepDesc(stepDesc.replace("<","<").replace(">",">")); - logStepInfo.setStepDesc(stepDesc); - logStepInfo.setActual(actual.replace("<","<").replace(">",">")); - logStepInfo.setExpect(expect.replace("<","<").replace(">",">")); - logStepInfo.setStepResult(stepResult); - logStepInfo.setFailReason(failReason); - String url = ""; - logStepInfo.setUrl(url); - String stepTime = DateUtil.dateToStr(new Date(), "HH:mm:ss"); - logStepInfo.setStepTime(stepTime); - String failType = ""; - logStepInfo.setFailType(failType); - //System.err.println(stepDesc + "\n" + failReason); - return onLogStep(logStepInfo); - } - - public static List logStepFail(StepType stepType, String stepDesc, RunResult stepResult, String failReason, String hWnd) { - return logStepFail(stepType, stepDesc, stepResult, failReason, hWnd, ""); - } - - /** - * WINDOWS_UI步骤失败日志,暂时没对hWnd做处理,直接全屏截图 - */ - public static List logStepFail(StepType stepType, String stepDesc, RunResult stepResult, String failReason, String hWnd, String failType) { - LogStepInfo logStepInfo = new LogStepInfo(); - List logStepInfoList = logStepFail(stepType, stepDesc, stepResult, failReason); - logStepInfo = logStepInfoList.remove(logStepInfoList.size() - 1); - String url = ""; - logStepInfo.setUrl(url); - logStepInfo.setFailType(failType); - return onLogStep(logStepInfo); - } - - public static List logStepFail(StepType stepType, String stepDesc, RunResult stepResult, String failReason, WebDriver driver) { - return logStepFail(stepType, stepDesc, stepResult, failReason, driver, ""); - } - - public static List logStepFail(StepType stepType, String stepDesc, String actual, String expect, RunResult stepResult, String failReason, WebDriver driver) { - return logStepFail(stepType, stepDesc, actual, expect, stepResult, failReason, driver, ""); - } - - - /** - * WEB_UI步骤失败日志 - */ - public static List logStepFail(StepType stepType, String stepDesc, RunResult stepResult, String failReason, WebDriver driver, String failType) { - LogStepInfo logStepInfo = new LogStepInfo(); - List logStepInfoList = logStepFail(stepType, stepDesc, stepResult, failReason); - logStepInfo = logStepInfoList.remove(logStepInfoList.size() - 1); - String url = ""; - String picture = ""; - if (driver instanceof PhantomJSDriver) { - url = driver.getCurrentUrl(); - //picture = ScreenShotUtil.screenShotByDriver(driver, SUITE_PATH); - } else { -// try { -// if (isAlert(driver)) { -// url = driver.switchTo().alert().getText(); -// picture = ScreenShotUtil.screenShotByDesktop(SUITE_PATH); -// -// } else { -// url = driver.getCurrentUrl(); -// picture = ScreenShotUtil.screenShotByDriver(driver, SUITE_PATH); -// } -// } catch (Exception e) { -// if (picture.equals("")) { -// try { -// picture = ScreenShotUtil.screenShotByDesktop(SUITE_PATH); -// } catch (Exception ex) { -// ex.printStackTrace(); -// } -// -// } -// } - } - logStepInfo.setUrl(url); - logStepInfo.setPicture(picture); - if (!picture.equals("")) { - String[] pictureAddress = picture.split("screenshot"); - String pictureName = pictureAddress[pictureAddress.length - 1].substring(1); - logStepInfo.setPictureName(pictureName); - String pictureRelative = "../screenshot/" + pictureName; - logStepInfo.setPictureRelative(pictureRelative); - } - logStepInfo.setFailType(failType); - return onLogStep(logStepInfo); - } - - /** - * WEB_UI失败日志 - * 日志中输入期望值与实际值的assertEqual断言 - */ - public static List logStepFail(StepType stepType, String stepDesc, String actual, String expect, RunResult stepResult, String failReason, WebDriver driver, String failType) { - LogStepInfo logStepInfo = new LogStepInfo(); - List logStepInfoList = logStepFail(stepType, stepDesc, actual, expect, stepResult, failReason); - logStepInfo = logStepInfoList.remove(logStepInfoList.size() - 1); - String url = ""; - String picture = ""; - try { - if (isAlert(driver)) { - url = driver.switchTo().alert().getText(); - picture = ScreenShotUtil.screenShotByDesktop(SUITE_PATH); - - } else { - url = driver.getCurrentUrl(); - picture = ScreenShotUtil.screenShotByDriver(driver, SUITE_PATH); - } - } catch (Exception e) { - if (picture.equals("")) { - try { - picture = ScreenShotUtil.screenShotByDesktop(SUITE_PATH); - } catch (Exception ex) { - ex.printStackTrace(); - } - - } - } - logStepInfo.setUrl(url); - logStepInfo.setStepDesc(stepDesc); - logStepInfo.setPicture(picture); - if (!picture.equals("")) { - String[] pictureAddress = picture.split("screenshot"); - String pictureName = pictureAddress[pictureAddress.length - 1].substring(1); - logStepInfo.setPictureName(pictureName); - String pictureRelative = "../screenshot/" + pictureName; - logStepInfo.setPictureRelative(pictureRelative); - } - logStepInfo.setFailType(failType); - return onLogStep(logStepInfo); - } - - public static List logStepPass(StepType stepType, String stepDesc, RunResult stepResult, TestSuiteType testSuiteType) { - switch (testSuiteType) { - case WEB_UI: - return logStepPass(stepType, stepDesc, RunResult.PASS, TestSuiteType.WEB_UI); - default: - return logStepPass(stepType, stepDesc, RunResult.PASS); - } - - } - - /** - * 通用步骤成功日志 - */ - public static List logStepPass(StepType stepType, String stepDesc, RunResult stepResult) { - LogStepInfo logStepInfo = new LogStepInfo(); - logStepInfo.setStepType(stepType); - logStepInfo.setStepDesc(stepDesc.replace("<","<").replace(">",">")); - logStepInfo.setStepResult(stepResult); - String url = ""; - logStepInfo.setUrl(url); - String stepTime = DateUtil.dateToStr(new Date(), "HH:mm:ss"); - logStepInfo.setStepTime(stepTime); - try { - Thread.sleep(100); - } catch (InterruptedException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - System.out.println(stepDesc); - return onLogStep(logStepInfo); - } - /** - * 通用步骤成功日志 - * 日志中输入期望值与实际值 - */ - public static List logStepPass(StepType stepType, String stepDesc, String actual, String expect, RunResult stepResult) { - LogStepInfo logStepInfo = new LogStepInfo(); - logStepInfo.setStepType(stepType); - logStepInfo.setStepDesc(stepDesc); - logStepInfo.setActual(actual.replace("<","<").replace(">",">")); - logStepInfo.setExpect(expect.replace("<","<").replace(">",">")); - logStepInfo.setStepResult(stepResult); - String url = ""; - logStepInfo.setUrl(url); - String stepTime = DateUtil.dateToStr(new Date(), "HH:mm:ss"); - logStepInfo.setStepTime(stepTime); - try { - Thread.sleep(100); - } catch (InterruptedException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - System.out.println(stepDesc); - return onLogStep(logStepInfo); - } - - /** - * WINDOWS_UI步骤成功日志 - */ - public static List logStepPass(StepType stepType, String stepDesc, RunResult stepResult, String hWnd) { - LogStepInfo logStepInfo = new LogStepInfo(); - List logStepInfoList = logStepPass(stepType, stepDesc, stepResult); - logStepInfo = logStepInfoList.remove(logStepInfoList.size() - 1); - String url = ""; - logStepInfo.setUrl(url); - return onLogStep(logStepInfo); - } - - /** - * WEB_UI步骤成功日志 - */ - public static List logStepPass(StepType stepType, String stepDesc, RunResult stepResult, WebDriver driver) { - LogStepInfo logStepInfo = new LogStepInfo(); - List logStepInfoList = logStepPass(stepType, stepDesc, stepResult); - logStepInfo = logStepInfoList.remove(logStepInfoList.size() - 1); - String url = ""; - try { - if (isAlert(driver)) { - url = "alert"; - } else { - url = driver.getCurrentUrl(); - } - } catch (Exception e) { - } - logStepInfo.setUrl(url); - return onLogStep(logStepInfo); - } - - /** - * 判断弹出框是否存在 - */ - public static boolean isAlert(WebDriver driver) { - try { - driver.switchTo().alert(); - return true; - } catch (NoAlertPresentException e) { - return false; - } - } - - public static String encode(String str, String encoding) { - try { - return URLEncoder.encode(str, encoding); - } catch (UnsupportedEncodingException e) { - return str; - } - } - -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/Observer.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/Observer.java deleted file mode 100644 index f828c1b346..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/Observer.java +++ /dev/null @@ -1,20 +0,0 @@ -package network.platon.autotest.junit.core; - -import network.platon.autotest.junit.modules.CaseInfo; -import network.platon.autotest.junit.modules.ModuleInfo; -import network.platon.autotest.junit.modules.SuiteInfo; - - -/** - * 套件、模块、用例开始与结束的接口 - * @author qcxiao - * - */ -public interface Observer { - public void suiteRunStart(SuiteInfo suiteInfo); - public void moduleRunStart(ModuleInfo moduleInfo); - public void caseRunStart(CaseInfo caseInfo); - public void suiteRunStop(SuiteInfo suiteInfo); - public void moduleRunStop(ModuleInfo moduleInfo); - public void caseRunStop(CaseInfo caseInfo); -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/PlanObserver.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/PlanObserver.java deleted file mode 100644 index 9f0db57932..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/PlanObserver.java +++ /dev/null @@ -1,161 +0,0 @@ -package network.platon.autotest.junit.core; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.FileWriter; -import java.io.IOException; -import java.io.PrintWriter; -import java.io.StringWriter; -import java.util.ArrayList; -import java.util.List; -import java.util.Properties; - -import network.platon.autotest.junit.enums.RunResult; -import network.platon.autotest.junit.enums.RunStatus; -import network.platon.autotest.junit.modules.CaseInfo; -import network.platon.autotest.junit.modules.ModuleInfo; -import network.platon.autotest.junit.modules.SuiteInfo; -import network.platon.autotest.junit.rules.DriverService; -import org.apache.velocity.Template; -import org.apache.velocity.VelocityContext; -import org.apache.velocity.app.Velocity; - -/** - * @Title: PlanInitial.java - * @Package network.platon.autotest.junit.modules - * @Description: TODO(用一句话描述该文件做什么) - * @author qcxiao - * @date 2013-12-16 上午10:28:02 - */ -public class PlanObserver implements Observer { - private Properties properties = DriverService.PROPERTIES; - private String templatesDir = DriverService.PROPERTIES.getProperty("templatesDir", "src/main/resources/templates/"); - private String sourcesDir = DriverService.PROPERTIES.getProperty("sourcesDir", "src/test/resources/"); - - @Override - public void suiteRunStart(SuiteInfo suiteInfo) { - // TODO Auto-generated method stub - - } - - @Override - public void moduleRunStart(ModuleInfo moduleInfo) { - // TODO Auto-generated method stub - // 渲染plan.vm - String plan = properties.getProperty("plan", "create").trim(); - if (plan.equals("create") || plan.contains("{")) { - createPlan(LogModule.SUITE_INFO); - } - } - - @Override - public void caseRunStart(CaseInfo caseInfo) { - // TODO Auto-generated method stub - - } - - @Override - public void suiteRunStop(SuiteInfo suiteInfo) { - if (suiteInfo.getSuiteStatus() == RunStatus.COMPLETED) { - errorPlan(); - } - } - - @Override - public void moduleRunStop(ModuleInfo moduleInfo) { - // TODO Auto-generated method stub - - } - - @Override - public void caseRunStop(CaseInfo caseInfo) { - // TODO Auto-generated method stub - - } - - private void createPlan(SuiteInfo suiteInfo) { - Properties p = new Properties(); - p.setProperty(Velocity.INPUT_ENCODING, "UTF-8"); - p.setProperty(Velocity.OUTPUT_ENCODING, "UTF-8"); - Velocity.init(p); - // 取得velocity上下文 - VelocityContext context = new VelocityContext(); - // TODO 为后续加上项目名称和执行人做接口准备 - //String project = (String) (properties.get("project") == null ? "" : properties.get("project")); - //String runner = (String) (properties.get("runner") == null ? "" : properties.get("runner")); - context.put("suiteInfo", suiteInfo); - // context.put("moduleInfo", LogModule.moduleInfo); - context.put("encode", DriverService.ENCODE); - - File file = new File(templatesDir + "plan.vm"); - if (!file.exists()) { - try { - FileWriter writer = new FileWriter(templatesDir + "plan.vm", true); - writer.write(DriverService.PLAN_VM_CONTENT); - writer.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - Template template = Velocity.getTemplate(templatesDir + "plan.vm"); - StringWriter writer = new StringWriter(); - template.merge(context, writer); - PrintWriter filewriter; - try { - // filewriter = new PrintWriter(new FileOutputStream(LOG_DIR + - // "测试套件_" + suiteInfo.getSuiteName() + ".html"), true); - filewriter = new PrintWriter(new FileOutputStream(sourcesDir + "plan.xml"), true); - filewriter.println(writer.toString()); - filewriter.close(); - } catch (FileNotFoundException e) { - e.printStackTrace(); - } - } - - private void errorPlan() { - Properties p = new Properties(); - p.setProperty(Velocity.INPUT_ENCODING, "UTF-8"); - p.setProperty(Velocity.OUTPUT_ENCODING, "UTF-8"); - Velocity.init(p); - // 取得velocity上下文 - VelocityContext context = new VelocityContext(); - // TODO 为后续加上项目名称和执行人做接口准备 - //String project = (String) (properties.get("project") == null ? "" : properties.get("project")); - //String runner = (String) (properties.get("runner") == null ? "" : properties.get("runner")); - List errorModuleInfoList = new ArrayList(); - for (ModuleInfo moduleInfo : LogModule.SUITE_INFO.getModuleInfoList()) { - if (!moduleInfo.getModuleResult().equals(RunResult.PASS)) { - List errorCaseInfoList = new ArrayList(); - for (CaseInfo caseInfo : moduleInfo.getCaseInfoList()) { - if (!caseInfo.getCaseResult().equals(RunResult.PASS)) { - errorCaseInfoList.add(caseInfo); - } - } - moduleInfo.setCaseInfoList(errorCaseInfoList); - errorModuleInfoList.add(moduleInfo); - } - } - SuiteInfo suiteInfo = new SuiteInfo(); - suiteInfo.setSuiteName(LogModule.SUITE_INFO.getSuiteName()); - suiteInfo.setModuleInfoList(errorModuleInfoList); - - context.put("suiteInfo", suiteInfo); - - context.put("encode", DriverService.ENCODE); - Template template = Velocity.getTemplate(templatesDir + "plan.vm"); - StringWriter writer = new StringWriter(); - template.merge(context, writer); - PrintWriter filewriter; - try { - // filewriter = new PrintWriter(new FileOutputStream(LOG_DIR + - // "测试套件_" + suiteInfo.getSuiteName() + ".html"), true); - filewriter = new PrintWriter(new FileOutputStream(sourcesDir + "plan.error.xml"), true); - filewriter.println(writer.toString()); - filewriter.close(); - } catch (FileNotFoundException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/SuiteObserver.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/SuiteObserver.java deleted file mode 100644 index 9cd210b29f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/core/SuiteObserver.java +++ /dev/null @@ -1,767 +0,0 @@ -package network.platon.autotest.junit.core; - -import java.io.File; -import java.io.IOException; -import java.lang.reflect.Method; -import java.text.NumberFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; -import java.util.Properties; -import java.util.Set; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import lombok.extern.slf4j.Slf4j; -import network.platon.autotest.junit.modules.CaseInfo; -import network.platon.autotest.junit.modules.LogStepInfo; -import network.platon.autotest.junit.modules.ModuleInfo; -import network.platon.autotest.junit.modules.SuiteInfo; -import network.platon.autotest.junit.rules.DriverService; -import org.dom4j.DocumentException; -import org.junit.Ignore; -import org.junit.runner.Description; -import com.alibaba.fastjson.JSON; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.BrowserType; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.autotest.junit.enums.RunResult; -import network.platon.autotest.junit.enums.RunStatus; -import network.platon.autotest.junit.enums.StepType; -import network.platon.autotest.junit.enums.TestSuiteType; -import network.platon.autotest.utils.ClassUtil; -import network.platon.autotest.utils.DateUtil; -import network.platon.autotest.utils.ExcelUtil; -import network.platon.autotest.utils.FileUtil; -import network.platon.autotest.utils.XmlUtil; - -/** - * @Title: SuiteInitial.java - * @Package network.platon.autotest.junit.modules - * @Description: TODO(用一句话描述该文件做什么) - * @author qcxiao - * @date 2013-12-12 下午04:49:47 - */ -@Slf4j -public class SuiteObserver implements Observer { - /** - * test.properties里的配置信息 - */ - private Properties properties = DriverService.PROPERTIES; - /** - * 初始化日志路径,如果没有就默认为C:/autosky_log/ - */ - private String logDir = DriverService.PROPERTIES.getProperty("logDir", "C:/autosky_log/"); - /** - * 初始化配置文件路径,如果没有配置就默认为src/test/resources/ - */ - private String sourcesDir = DriverService.PROPERTIES.getProperty("sourcesDir", "src/test/resources/"); - /** - * 计划要执行的套件信息 - */ - private SuiteInfo planedSuiteInfo = new SuiteInfo(); - /** - * website.properties资源文件中的键值匹配对信息 - */ - public static Map> websiteMap = DriverService.PROPERTIES_MAP; - /** - * 存放日志步骤信息 - */ - public List logStepInfoList = new ArrayList(); - /** - * 收集异常 - */ - List errors = new ArrayList(); - - @Override - public void suiteRunStart(SuiteInfo suiteInfo) { - suiteInfo.setSuiteResult(RunResult.RUNNING); - suiteInfo.setSuiteStatus(RunStatus.RUNNING); - Boolean suiteMerged = DriverService.SUITE_MERGED; - suiteInfo.setReportMerged(suiteMerged); - if (suiteMerged) { - // mvn test -Dreport.merged=true - suiteInfo.setSuiteName(properties.getProperty("project")); - } else { - // 单个类执行或者 mvn test 或者 mvn test -Dreport.merged=false -// suiteInfo.setSuiteName(DriverService.DESCRIPTION.getTestClass().getSimpleName()); - suiteInfo.setSuiteName(DriverService.DESCRIPTION.getTestClass().getName()); - } - String runId = DriverService.PROPERTIES.getProperty("runId"); - if (runId == null || runId.trim().equals("") || "$runId".equals(runId)) { - runId = "buildId:0:buildTaskId:0:buildTestSuiteId:0"; - } - suiteInfo.setBuildId(Long.parseLong(runId.split(":")[1])); - suiteInfo.setBuildTaskId(Long.parseLong(runId.split(":")[3])); - suiteInfo.setBuildTestSuiteId(Long.parseLong(runId.split(":")[5])); - - String submitInfo = DriverService.PROPERTIES.getProperty("submitInfo"); - if (submitInfo == null || submitInfo.trim().equals("") || "$submitInfo".equals(submitInfo)) { - submitInfo = "submitter:0:submitdate:0:submitnote:0"; - } - suiteInfo.setSubmitter(submitInfo.split(":")[1]); - suiteInfo.setSubmitdate(submitInfo.split(":")[3]); - suiteInfo.setSubmitnote(submitInfo.split(":")[5]); - - // 后续加上负责人的信息 - suiteInfo.setSuiteStartTime(new Date()); - List moduleInfoList = new ArrayList(); - - suiteInfo.setModuleInfoList(moduleInfoList); - - // 后续加一个suite集合 - addSuiteModules(suiteInfo); - - // 后续走多个class的话,需要再这里更新 - // LogModule.suiteInfo = suiteInfo; - /* - * 获取webSite.properties里的公共信息形成键值对信息 - */ - websiteMap.clear(); - websiteMap = getWebsiteMap();// 各个网站信息集合 - /** - * 判断是否maven执行,决定编码方式,主要是兼容windows窗口控制台输出的gbk编码,后续做改进 - * 获取栈信息中是否含有maven的信息,如果是就给编码赋值为GBK - */ - StackTraceElement stack[] = Thread.currentThread().getStackTrace(); - for (StackTraceElement ste : stack) { - if (ste.getClassName().contains("maven")) { - DriverService.ENCODE = "GBK"; - break; - } - } - logDir = logDir + suiteInfo.getSuiteName() + "/"; - String buildNumber = System.getProperty("build.number"); - if (buildNumber != null) { - //如果是jenkins执行时,buildNumber会在以前的基础上自动加1然后发给框架 - logDir += buildNumber + "/"; - } else { - logDir += DateUtil.dateToStr(new Date(), "yyyy-MM-dd_HH-mm-ss") + "/"; - } - LogModule.SUITE_PATH = logDir; - File directory = new File(logDir); - if (!directory.exists()) { - directory.mkdirs(); - } - System.out.println("测试套件(" + suiteInfo.getSuiteName() + ")执行开始。"); - } - - /** - * 两种情况: 1、合并报告:suiteName就为Project属性值;执行过程中会去收集target\test- - * classes目录下的所有符合条件类与符合条件方法 2、不合并报告:suiteName就为本次运行的类名;将收集本次运行类里的符合条件方法 - * - * @param suiteInfo - * @return - */ - public List addSuiteModules(SuiteInfo suiteInfo) { - List moduleInfoList = new ArrayList(); - Set> classes = new HashSet>(); - if (suiteInfo.getReportMerged()) { - try { - /** - * 收集当前目录下的所有类 - */ - String filePath = this.getClass().getResource("/").getPath(); - //System.out.println("filePath: " + filePath); - if(System.getProperties().getProperty("os.name").contains("Windows")){ - filePath = this.getClass().getResource("/").getPath().replaceFirst("/", "").replace("/", "\\").replace("%20", " "); - } - System.out.println(filePath); - classes = ClassUtil.getClasses(filePath); - } catch (IOException e) { - e.printStackTrace(); - } - } else { - classes.add(DriverService.DESCRIPTION.getTestClass()); - } - for (Class cls : classes) { - // 不执行忽略的类 - if (cls.getAnnotation(Ignore.class) != null) { - continue; - } - List moduleNameList = getSuiteModuleNameList(cls); - for (ModuleInfo moduleInfo : moduleNameList) { - moduleInfo.setSuiteInfo(suiteInfo); -// moduleInfo.setModuleName(cls.getSimpleName() + "." + moduleInfo.getModuleName()); - moduleInfo.setModuleName(cls.getName() + "." + moduleInfo.getModuleName()); - moduleInfo.setModuleRun(true); - moduleInfo.setModuleStatus(RunStatus.WAITING); - moduleInfo.setModuleResult(RunResult.WAITING); - moduleInfoList.add(moduleInfo); - } - } - List planedModuleInfoList = mergePlanModuleInfo(moduleInfoList); - suiteInfo.setModuleInfoList(planedModuleInfoList); - return moduleInfoList; - } - - @Override - public void moduleRunStart(ModuleInfo moduleInfo) { - // 由于此处无法遍历suiteInfo中的module信息,只能根据方法名来做 -// moduleInfo.setModuleName(DriverService.DESCRIPTION.getTestClass().getSimpleName() + "." + DriverService.DESCRIPTION.getMethodName()); - moduleInfo.setModuleName(DriverService.DESCRIPTION.getTestClass().getName() + "." + DriverService.DESCRIPTION.getMethodName()); - moduleInfo.setModuleStatus(RunStatus.RUNNING); - moduleInfo.setModuleResult(RunResult.RUNNING); - moduleInfo.setModuleRun(true); - moduleInfo.setModuleStartTime(new Date()); - addModuleCases(moduleInfo);// addModuleCases(moduleInfo, // - updateSuiteInfo(LogModule.SUITE_INFO, moduleInfo); // base, des); - System.out.println("测试模块(" + moduleInfo.getModuleName() + ")执行开始。"); - } - - @Override - public void caseRunStart(CaseInfo caseInfo) { - LogModule.logStepInfoList.clear(); - caseInfo.setCaseResult(RunResult.RUNNING); - caseInfo.setCaseStatus(RunStatus.RUNNING); - caseInfo.setCaseStartTime(new Date()); - updateModuleInfo(LogModule.MODULE_INFO, caseInfo); - System.out.println("测试用例(" + caseInfo.getCaseName() + ")执行开始。"); - } - - @Override - public void suiteRunStop(SuiteInfo suiteInfo) { - suiteInfo.setSuiteResult(RunResult.PASS); - suiteInfo.setSuiteStatus(RunStatus.COMPLETED); - for (ModuleInfo moduleInfo : suiteInfo.getModuleInfoList()) { - if (moduleInfo.getModuleStatus() != RunStatus.COMPLETED) { - suiteInfo.setSuiteStatus(RunStatus.RUNNING); - suiteInfo.setSuiteResult(RunResult.RUNNING); -// log.info("-----------" + moduleInfo.getModuleName()); - break; - } - } - if (suiteInfo.getSuiteStatus() == RunStatus.COMPLETED) { - for (ModuleInfo moduleInfo : suiteInfo.getModuleInfoList()) { - if (moduleInfo.getModuleResult() != RunResult.PASS) {//缺陷修改(2015-01-14),原来是:moduleInfo.getModuleResult() != RunResult.FAIL - suiteInfo.setSuiteResult(RunResult.FAIL); - break; - } - } - - System.out.println("测试套件(" + suiteInfo.getSuiteName() + ")执行结束。"); - suiteInfo.setSuiteStopTime(new Date()); - NumberFormat numberFormat = NumberFormat.getInstance(); - numberFormat.setMaximumFractionDigits(2); - float percent = 100; - if (suiteInfo.getSuiteCaseNum() > 0) { - percent = Float.parseFloat(numberFormat.format((float) suiteInfo.getPassCaseNum() / (float) suiteInfo.getSuiteCaseNum() * 100)); - } - suiteInfo.setPassPercent(percent); - } - } - - @Override - public void moduleRunStop(ModuleInfo moduleInfo) { - moduleInfo.setModuleStatus(RunStatus.COMPLETED); - moduleInfo.setModuleResult(RunResult.PASS); - moduleInfo.setModuleStopTime(new Date()); - NumberFormat numberFormat = NumberFormat.getInstance(); - numberFormat.setMaximumFractionDigits(2); - float percent = 100; - if (moduleInfo.getModuleCaseNum() > 0) { - percent = Float.parseFloat(numberFormat.format((float) moduleInfo.getPassCaseNum() / (float) moduleInfo.getModuleCaseNum() * 100)); - } - moduleInfo.setPassPercent(percent); - for (CaseInfo caseinfo : moduleInfo.getCaseInfoList()) { - if (caseinfo.getCaseResult() == RunResult.FAIL) { - moduleInfo.setModuleResult(RunResult.FAIL); - break; - } - } - updateSuiteInfo(LogModule.SUITE_INFO, moduleInfo); - System.out.println("测试模块(" + moduleInfo.getModuleName() + ")执行结束。"); - } - - @Override - public void caseRunStop(CaseInfo caseInfo) { - // 判断logstep中有fail没 - caseInfo.setCaseResult(RunResult.PASS); - caseInfo.setCaseStopTime(new Date()); - caseInfo.setLogStepInfoList(LogModule.logStepInfoList); - for (LogStepInfo logStepInfo : LogModule.logStepInfoList) { - if (logStepInfo.getStepResult() == RunResult.FAIL) { - caseInfo.setCaseResult(RunResult.FAIL); - break; - } - } - String logLevel = properties.getProperty("logLevel", "error"); - // 当用例运行成功时,只保留检验日志,删除控件操作等其他日志 - if (logLevel.toLowerCase().trim().equals("error") && caseInfo.getCaseResult() == RunResult.PASS) { - - List neededLogStepInfoList = new ArrayList(); - int id = 0; - for (LogStepInfo logStepInfo : LogModule.logStepInfoList) { - // 只保留断言的日志 - if (logStepInfo.getStepType() == StepType.ASSERT) { - id++; - logStepInfo.setStepId(id); - neededLogStepInfoList.add(logStepInfo); - } - } - LogModule.logStepInfoList = neededLogStepInfoList; - } - caseInfo.setLogStepInfoList(LogModule.logStepInfoList); - caseInfo.setCaseStatus(RunStatus.COMPLETED); - System.out.println("测试用例(" + caseInfo.getCaseName() + ")执行结束。"); - caseInfo.setCaseRerunNum(caseInfo.getCaseRerunNum() - 1); - caseInfo.setCaseRunNum(caseInfo.getCaseRunNum() - 1); - if (caseInfo.getCaseResult().equals(RunResult.PASS) || caseInfo.getCaseRerunNum() < 0) { - updateModuleInfo(LogModule.MODULE_INFO, caseInfo); - } - } - - /** - * 获取webSite.properties里的公共信息 - * @return - */ - @SuppressWarnings("rawtypes") - private Map> getWebsiteMap() { - Map websiteInfoMap = new HashMap(); - Map> map = new HashMap>(); - Properties properties = new Properties(); - if (websiteMap.isEmpty()) { - try { - properties = FileUtil.getProperties("/website.properties"); - } catch (Exception e) { - return map; - } - Iterator iter = properties.entrySet().iterator(); - while (iter.hasNext()) { - Map.Entry entry = (Map.Entry) iter.next(); - String websiteKey = (String) entry.getKey(); - if (websiteKey != null && !websiteKey.trim().equals("") && websiteKey.contains(".")) { - String websiteName = websiteKey.split("\\.")[0].trim(); - if (websiteMap.get(websiteName) == null) { - websiteMap.put(websiteName, new HashMap()); - } - String websiteInfoKey = websiteKey.split("\\.")[1].trim(); - String websiteInfoValue = ((String) entry.getValue()).trim(); - websiteInfoMap = websiteMap.get(websiteName); - websiteInfoMap.put(websiteInfoKey, websiteInfoValue); - map.put(websiteName, websiteInfoMap); - } - } - websiteMap = map; - } - return map; - } - - @SuppressWarnings({ "unused", "rawtypes" }) - private Map> getPropertiesMap() { - Map websiteInfoMap = new HashMap(); - Map> map = new HashMap>(); - Properties properties = new Properties(); - if (websiteMap.isEmpty()) { - try { - properties = FileUtil.getProperties("/webSite.properties"); - } catch (Exception e) { - return map; - } - Iterator iter = properties.entrySet().iterator(); - while (iter.hasNext()) { - Map.Entry entry = (Map.Entry) iter.next(); - String websiteKey = (String) entry.getKey(); - if (websiteKey != null && !websiteKey.trim().equals("") && websiteKey.contains(".")) { - String[] aa = websiteKey.split("\\."); - String websiteName = websiteKey.split("\\.")[0].trim(); - if (websiteMap.get(websiteName) == null) { - websiteMap.put(websiteName, new HashMap()); - } - String websiteInfoKey = websiteKey.split("\\.")[1].trim(); - String websiteInfoValue = ((String) entry.getValue()).trim(); - websiteInfoMap = websiteMap.get(websiteName); - websiteInfoMap.put(websiteInfoKey, websiteInfoValue); - - map.put(websiteName, websiteInfoMap); - } - } - websiteMap = map; - } - return map; - } - - /** - * 合并计划与模块,找设置与模块信息的交集做为新的测试计划 - * 通过设定的测试计划(testPlan)生成 - * @param moduleInfoList - * @return - */ - private List mergePlanModuleInfo(List moduleInfoList) { - List planedModuleInfoList = new ArrayList(); - /** - * 获取test.properties中plan类型,如果没有就默认为create - */ - String testPlan = properties.getProperty("plan", "create"); - if (testPlan.trim().toLowerCase().equals("error")) { - System.out.println("提示:本次计划执行的是plan.error.xml中的用例."); - try{ - planedSuiteInfo = XmlUtil.parsePlanXml(sourcesDir + "plan.error.xml"); - }catch(DocumentException e){ - planedSuiteInfo = new SuiteInfo(); - } - if (planedSuiteInfo.getModuleInfoList() == null || planedSuiteInfo.getModuleInfoList().size() == 0) { - System.out.println("提示:plan.error.xml中无用例数据."); - planedSuiteInfo.setModuleInfoList(planedModuleInfoList); - return planedModuleInfoList; - } - } else if (testPlan.trim().toLowerCase().equals("all")) { - System.out.println("提示:本次计划执行的是plan.xml中的用例."); - try{ - planedSuiteInfo = XmlUtil.parsePlanXml(sourcesDir + "plan.xml"); - }catch(DocumentException e){ - planedSuiteInfo = new SuiteInfo(); - } - if (planedSuiteInfo.getModuleInfoList() == null || planedSuiteInfo.getModuleInfoList().size() == 0) { - System.out.println("提示:由于您未手动增加plan.xml,默认执行所有."); - planedSuiteInfo.setModuleInfoList(planedModuleInfoList); - return moduleInfoList; - } - } else if (testPlan.contains("{")) { - System.out.println("testPlan:" + testPlan); - SuiteInfo suite = (SuiteInfo) JSON.parseObject(testPlan, SuiteInfo.class); - /** - * 处理JSON中只传类名,且不传方法名的情况,如下: - * 单个类:mvn test -Dplan={\"suiteName\":\"AutoSky\",\"moduleInfoList\":[{\"moduleName\":\"TestJunit\"}]} -DsuiteMerged=true - * 多个类:mvn test -Dplan={\"suiteName\":\"AutoSky\",\"moduleInfoList\":[{\"moduleName\":\"TestJunit\"},{\"moduleName\":\"TestJunit2\"}]} -DsuiteMerged=true - */ - boolean flag = false; - List tempModuleList = new ArrayList(); - for(ModuleInfo module : moduleInfoList){ - for(ModuleInfo jModule : suite.getModuleInfoList()){ - if(module.getModuleName().split("\\.")[0].equals(jModule.getModuleName())){ - tempModuleList.add(module); - flag = true; - } - // 处理部分传了类名加方法名的情况,即"TestJunit.testExists",此情况直接写入临时集合 - if(module.getModuleName().equals(jModule.getModuleName())){ - tempModuleList.add(jModule); - } - } - } - if(flag){ - suite.getModuleInfoList().clear(); - suite.getModuleInfoList().addAll(tempModuleList); - } - - /*for(ModuleInfo module : moduleInfoList){ - System.out.println("module.getModuleName():" + module.getModuleName()); - } - for(ModuleInfo jModule : suite.getModuleInfoList()){ - System.out.println("jModule.getModuleName():" + jModule.getModuleName()); - }*/ - - - for (int i = 0; i < suite.getModuleInfoList().size(); i++) { - for(int j = 0; j < moduleInfoList.size(); j++){ - if (moduleInfoList.get(j).getModuleName().equals(suite.getModuleInfoList().get(i).getModuleName())) { - suite.getModuleInfoList().get(i).setModuleShowName(moduleInfoList.get(j).getModuleShowName()); - suite.getModuleInfoList().get(i).setModuleAuthor(moduleInfoList.get(j).getModuleAuthor()); - suite.getModuleInfoList().get(i).setModuleExpert(moduleInfoList.get(j).getModuleExpert()); - break; - } - } - } - planedSuiteInfo.setModuleInfoList(suite.getModuleInfoList()); - return suite.getModuleInfoList(); - } else { - planedSuiteInfo.setModuleInfoList(moduleInfoList); - return moduleInfoList; - } - // 没有plan.xml(plan.error.xml)或者模块为空 - /** - * 遍历plan.xml或plan.error.xml转换成的planedSuiteInfo里的模块名 - */ - for (ModuleInfo planedModuleInfo : planedSuiteInfo.getModuleInfoList()) { - if (planedModuleInfo.getModuleRun()) { - for (ModuleInfo moduleInfo : moduleInfoList) { - if (moduleInfo.getModuleName().equals(planedModuleInfo.getModuleName())) { - planedModuleInfoList.add(moduleInfo); - break; - } - } - } - } - return planedModuleInfoList; - } - - /** - * 将用例信息加入到模块中 - * - * @param moduleInfo - * @return - */ - public List addModuleCases(ModuleInfo moduleInfo) { - List> datas = getDatas(DriverService.DESCRIPTION); - List caseInfoList = new ArrayList(); - if (datas.size() == 0) { - Map data = new HashMap(); - data.put("caseName", "用例一"); - data.put("caseDescription", "用例一描述信息"); - datas.add(data); - } - for (Map data : datas) { - String website = properties.getProperty("website"); - if (website != null && !websiteMap.isEmpty()) { - Map websiteInfo = websiteMap.get(website); - if (websiteInfo != null && !websiteInfo.isEmpty()) - data.putAll(websiteInfo); - } - /** - * 多浏览器运行时,会把一个用例一分二或为三,形成不同的用例(即只有用例名(用例名为原始用例名_浏览器类型)与浏览器类型不一样) - */ - List> browserTypeCases = new ArrayList>(); - if (properties.getProperty("testSuiteType") != null && !properties.getProperty("testSuiteType").trim().equals("") && TestSuiteType.valueOf(properties.getProperty("testSuiteType")) != TestSuiteType.WEB_UI) { - data.remove("browserType"); - //System.out.println("test.properties中设置了非WEB_UI,因此移除了browserType属性。"); - browserTypeCases.add(data); - } else { - browserTypeCases = getBrowserTypeCases(data); - } - for (Map browserTypeCase : browserTypeCases) { - CaseInfo caseInfo = new CaseInfo(); - String caseName = data.get("caseName"); - if (caseName != null) { - Pattern pa = Pattern.compile("\\s*|\t|\r|\n"); - Matcher m = pa.matcher(caseName); - //去掉空格等特殊字符 - caseName = m.replaceAll(""); - } else { - caseName = "无用例名称"; - } - if(properties.getProperty("testSuiteType") == null || properties.getProperty("testSuiteType").trim().equals("") || TestSuiteType.valueOf(properties.getProperty("testSuiteType")) == TestSuiteType.WEB_UI){ - //caseName = caseName + "_" + browserTypeCase.get("browserType"); - caseInfo.setCaseBrowserType(BrowserType.valueOf(browserTypeCase.get("browserType"))); - } - caseInfo.setModuleInfo(moduleInfo); - caseInfo.setSuiteInfo(moduleInfo.getSuiteInfo()); - caseInfo.setCaseName(caseName); - caseInfo.setCaseAssert(data.get("caseAssert")==null?true:data.get("caseAssert").equals("Y")?true:false); - caseInfo.setCaseDesc(data.get("caseDescription")); - caseInfo.setCaseRun(data.get("caseRun") == null || "Y".equals(data.get("caseRun").toUpperCase().trim())); - caseInfo.setCasePriority(data.get("casePriority")); - String caseRerunNum = (properties.getProperty("caseRerunNum") == null || properties.getProperty("caseRerunNum").trim().equals("")) ? "0" : properties.getProperty("caseRerunNum"); - caseInfo.setCaseRerunNum(Integer.parseInt(caseRerunNum)); - String caseRunNum = (properties.getProperty("caseRunNum") == null || properties.getProperty("caseRunNum").trim().equals("")) ? "0" : properties.getProperty("caseRunNum"); - caseInfo.setCaseRunNum(Integer.parseInt(caseRunNum)); - caseInfo.setCaseResult(RunResult.WAITING); - caseInfo.setCaseStatus(RunStatus.WAITING); - caseInfo.setCaseParams(data); - caseInfo.setModuleInfo(moduleInfo); - caseInfoList.add(caseInfo); - } - } - - moduleInfo.setCaseInfoList(caseInfoList); - List planedCaseInfoList = mergePlanCaseInfo(moduleInfo); - moduleInfo.setCaseInfoList(planedCaseInfoList); - return caseInfoList; - } - - /** - * 合并计划与用例信息 - * - * @param moduleInfo - * @return - */ - private List mergePlanCaseInfo(ModuleInfo moduleInfo) { - List planedCaseInfoList = new ArrayList(); - ModuleInfo planedModuleInfo = null; - if (planedSuiteInfo.getModuleInfoList().size() == 0) - return moduleInfo.getCaseInfoList(); - for (ModuleInfo module : planedSuiteInfo.getModuleInfoList()) { - - if (moduleInfo.getModuleName().equals(module.getModuleName())) { - planedModuleInfo = module; - break; - } - } // 没有plan.xml(plan.error.xml)或者模块为空 - if (planedModuleInfo == null) { - return planedCaseInfoList; - } - if (planedModuleInfo.getCaseInfoList() == null || planedModuleInfo.getCaseInfoList().size() == 0) { - return moduleInfo.getCaseInfoList(); - } - for (CaseInfo planedCaseInfo : planedModuleInfo.getCaseInfoList()) { - if (planedCaseInfo.getCaseRun() == null || planedCaseInfo.getCaseRun()) { - for (CaseInfo caseInfo : moduleInfo.getCaseInfoList()) { - if (caseInfo.getCaseName().toUpperCase().equals(planedCaseInfo.getCaseName().toUpperCase())) { - planedCaseInfoList.add(caseInfo); - break; - } - } - } - } - return planedCaseInfoList; - } - - private List> getBrowserTypeCases(Map data) { - List> browserTypeCases = new ArrayList>(); - if (data.get("browserType") != null) { - String[] types = data.get("browserType").split(","); - for (String type : types) { - Map browserTypeCase = new HashMap(); - browserTypeCase.putAll(data); - if (type.trim().toUpperCase().equals("IE")) { - browserTypeCase.put("browserType", "IE"); - } else if (type.trim().toUpperCase().equals("FF") || type.toUpperCase().equals("FIREFOX")) { - browserTypeCase.put("browserType", "FIREFOX"); - } else if (type.trim().toUpperCase().equals("CHROME")) { - browserTypeCase.put("browserType", "CHROME"); - } else if (type.trim().equals("")) { - browserTypeCase.put("browserType", "IE"); - } else { - System.err.println("设置的浏览器类型为:" + type + ",格式有问题!请参照:单个浏览器如IE;多个浏览器用英文逗号分隔,如IE,FF,CHROME。"); - throw new RuntimeException("数据池中的browserType格式有问题,请改正!\n设置的浏览器类型为:" + type + ",格式有问题!请参照:单个浏览器如IE;多个浏览器用英文逗号分隔,如IE,FF,CHROME。"); - } - browserTypeCases.add(browserTypeCase); - } - } else { - data.put("browserType", "IE"); - browserTypeCases.add(data); - } - return browserTypeCases; - } - - /** - * 将moduleInfo中的字段状态更新到suiteInfo对象中,并为LogModule.SUITE_INFO重新赋值 - * - * @param suiteInfo - * @param currentModuleInfo - */ - public void updateSuiteInfo(SuiteInfo suiteInfo, ModuleInfo currentModuleInfo) { - List moduleInfoList = suiteInfo.getModuleInfoList(); - for (int i = 0; i < moduleInfoList.size(); i++) { - if (moduleInfoList.get(i).getModuleName().equals(currentModuleInfo.getModuleName())) { - if (currentModuleInfo.getModuleStatus() == RunStatus.COMPLETED) { - suiteInfo.setPassCaseNum(suiteInfo.getPassCaseNum() + currentModuleInfo.getPassCaseNum()); - suiteInfo.setFailCaseNum(suiteInfo.getFailCaseNum() + currentModuleInfo.getFailCaseNum()); - suiteInfo.setSuiteCaseNum(suiteInfo.getSuiteCaseNum() + currentModuleInfo.getModuleCaseNum()); - suiteInfo.setSuiteModuleNum(suiteInfo.getSuiteModuleNum() + 1); - } - currentModuleInfo.setModuleShowName(moduleInfoList.get(i).getModuleShowName()); - currentModuleInfo.setModuleAuthor(moduleInfoList.get(i).getModuleAuthor()); - currentModuleInfo.setModuleExpert(moduleInfoList.get(i).getModuleExpert()); - moduleInfoList.set(i, currentModuleInfo); - break; - } - } - suiteInfo.setModuleInfoList(moduleInfoList); - LogModule.SUITE_INFO = suiteInfo; - } - - /** - * 更新模块中的用例执行结果与用例数 - * - * @param moduleInfo - * @param currentCaseInfo - */ - public void updateModuleInfo(ModuleInfo moduleInfo, CaseInfo currentCaseInfo) { - List caseInfoList = moduleInfo.getCaseInfoList(); - for (int i = 0; i < caseInfoList.size(); i++) { - if (caseInfoList.get(i).getCaseName().equals(currentCaseInfo.getCaseName())) { - if (currentCaseInfo.getCaseResult() == RunResult.PASS) { - moduleInfo.setPassCaseNum(moduleInfo.getPassCaseNum() + 1); - moduleInfo.setModuleCaseNum(moduleInfo.getModuleCaseNum() + 1); - } else if (currentCaseInfo.getCaseResult() == RunResult.FAIL) { - moduleInfo.setFailCaseNum(moduleInfo.getFailCaseNum() + 1); - moduleInfo.setModuleCaseNum(moduleInfo.getModuleCaseNum() + 1); - } - caseInfoList.set(i, currentCaseInfo); - break; - } - } - moduleInfo.setCaseInfoList(caseInfoList); - LogModule.MODULE_INFO = moduleInfo; - } - - /** - * 获取Test Class里面有@Test的Method列表 - * - * @param Clazz - * @return - */ - private List getSuiteModuleNameList(Class Clazz) { - List moduleNameList = new ArrayList(); - Method[] methods = Clazz.getMethods(); - // Map map = new LinkedHashMap(); - for (Method method : methods) { - ModuleInfo moduleInfo = new ModuleInfo(); - String methodName = method.getName(); - DataSource dataSource = method.getAnnotation(DataSource.class); - if (method.isAnnotationPresent(org.junit.Test.class) && method.getAnnotation(Ignore.class) == null) { - moduleInfo.setModuleName(methodName); - if(null != dataSource){ -// moduleInfo.setModuleShowName(dataSource.showName()); - moduleInfo.setModuleShowName(Clazz.getName() + "." + dataSource.showName()); - moduleInfo.setModuleAuthor(dataSource.author()); - moduleInfo.setModuleExpert(dataSource.expert()); - } - moduleNameList.add(moduleInfo); - } - } - return moduleNameList; - } - - public List> getDatas(Description des) { - List> datas = new ArrayList>(); - if (des.getAnnotation(DataSource.class) == null) { - return datas; - } - DataSourceType type = ((DataSource) des.getAnnotation(DataSource.class)).type(); - if (type == null) { - return datas; - } - String fileName = ((DataSource) des.getAnnotation(DataSource.class)).file().toString().trim(); - //此处des.getTestClass().getSimpleName()不要改成des.getTestClass().getName() - String filePath = sourcesDir + des.getTestClass().getSimpleName() + "/" + fileName; - String sourcePrefix = ((DataSource)des.getAnnotation(DataSource.class)).sourcePrefix(); - if (!sourcePrefix.trim().equals("")) { - //此处des.getTestClass().getSimpleName()不要改成des.getTestClass().getName() - filePath = sourcesDir + "/" + sourcePrefix.trim() + "/" + des.getTestClass().getSimpleName() + "/" + fileName; - } - switch (type) { - case EXCEL: - String sheetName = ((DataSource) des.getAnnotation(DataSource.class)).sheetName().toString().trim(); - ExcelUtil excelUtil = new ExcelUtil(); - datas = excelUtil.excelDatas(filePath, sheetName); - break; - case XML: - datas = XmlUtil.xmlDatas(filePath); - break; - case CSV: - break; - default: - } - return datas; - } - - /** - * 获取Test Class里面有@Test的Method列表 - * @param Clazz - * @return - */ - @SuppressWarnings("unused") - private static Map getTestMethods(Class Clazz) { - Method[] methods = Clazz.getMethods(); - Map map = new LinkedHashMap(); - int i = 0; - for (Method method : methods) { - String methodName = method.getName(); - if (method.isAnnotationPresent(org.junit.BeforeClass.class) || method.isAnnotationPresent(org.junit.AfterClass.class)) { - //此处getSimpleName()不要改成getName() - map.put(method.getAnnotations()[0].annotationType().getSimpleName(), methodName); - } else if (method.isAnnotationPresent(org.junit.Test.class)) { - map.put(String.valueOf(i), methodName); - i++; - } - } - return map; - } - -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/AppsType.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/AppsType.java deleted file mode 100644 index dc315d2458..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/AppsType.java +++ /dev/null @@ -1,5 +0,0 @@ -package network.platon.autotest.junit.enums; - -public enum AppsType { - ANDROID, IOS, OTHER -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/BrowserProcessType.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/BrowserProcessType.java deleted file mode 100644 index d4a52b5646..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/BrowserProcessType.java +++ /dev/null @@ -1,12 +0,0 @@ -package network.platon.autotest.junit.enums; - -/** - * @Title: BrowserType.java - * @Package network.platon.autotest.junit.enums - * @Description: 浏览器类型 - * @author qcxiao - * @date 2013-9-6 下午02:31:09 - */ -public enum BrowserProcessType { - iexplore, chrome, firefox -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/BrowserType.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/BrowserType.java deleted file mode 100644 index 5bf43584f2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/BrowserType.java +++ /dev/null @@ -1,12 +0,0 @@ -package network.platon.autotest.junit.enums; - -/** - * @Title: BrowserType.java - * @Package network.platon.autotest.junit.enums - * @Description: 浏览器类型 - * @author qcxiao - * @date 2013-9-6 下午02:31:09 - */ -public enum BrowserType { - IE, CHROME, FIREFOX, GHOST, REMOTE -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/DataSourceType.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/DataSourceType.java deleted file mode 100644 index 01bbe2b92f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/DataSourceType.java +++ /dev/null @@ -1,5 +0,0 @@ -package network.platon.autotest.junit.enums; - -public enum DataSourceType { - EXCEL, XML, CSV, DB -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/FileType.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/FileType.java deleted file mode 100644 index f73d1e97b9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/FileType.java +++ /dev/null @@ -1,12 +0,0 @@ -package network.platon.autotest.junit.enums; - -/** - * @Title: FileType.java - * @Package network.platon.autotest.junit.enums - * @Description: TODO(用一句话描述该文件做什么) - * @author qcxiao - * @date 2013-12-17 下午01:54:45 - */ -public enum FileType { - SQL, JAVA -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/RunResult.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/RunResult.java deleted file mode 100644 index 8a62fb18e9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/RunResult.java +++ /dev/null @@ -1,5 +0,0 @@ -package network.platon.autotest.junit.enums; - -public enum RunResult { - FAIL, PASS, RUNNING, WAITING; -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/RunStatus.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/RunStatus.java deleted file mode 100644 index f501f21816..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/RunStatus.java +++ /dev/null @@ -1,5 +0,0 @@ -package network.platon.autotest.junit.enums; - -public enum RunStatus { - WAITING, RUNNING, COMPLETED -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/StepType.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/StepType.java deleted file mode 100644 index 2690abdf78..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/StepType.java +++ /dev/null @@ -1,5 +0,0 @@ -package network.platon.autotest.junit.enums; - -public enum StepType { - ASSERT, ACTION, DATABASE, CUSTOM -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/TestSuiteType.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/TestSuiteType.java deleted file mode 100644 index 97f7a870ba..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/enums/TestSuiteType.java +++ /dev/null @@ -1,5 +0,0 @@ -package network.platon.autotest.junit.enums; - -public enum TestSuiteType { - WEB_UI, WINDOWS_UI, ANDROID, IOS, OTHER -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/log/DatabaseLog.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/log/DatabaseLog.java deleted file mode 100644 index 44de992258..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/log/DatabaseLog.java +++ /dev/null @@ -1,295 +0,0 @@ -package network.platon.autotest.junit.log; - -import java.net.InetAddress; -import java.net.UnknownHostException; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import network.platon.autotest.junit.core.LogModule; -import network.platon.autotest.junit.core.Observer; -import network.platon.autotest.junit.enums.RunResult; -import network.platon.autotest.junit.enums.StepType; -import network.platon.autotest.junit.modules.CaseInfo; -import network.platon.autotest.junit.modules.LogStepInfo; -import network.platon.autotest.junit.modules.ModuleInfo; -import network.platon.autotest.junit.modules.SuiteInfo; -import network.platon.autotest.junit.rules.DriverService; -import org.apache.log4j.Logger; - -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import network.platon.autotest.utils.DateUtil; -import network.platon.autotest.utils.HttpUtil; - -@SuppressWarnings("unused") -public class DatabaseLog implements Observer { - - private static Logger logger = Logger.getLogger(DatabaseLog.class); - private String logTestSuiteId; - private String logTestModuleId; - private String logTestCaseId; - private long logPictureId = 0; - - // public void setLogTestSuiteId(long logTestSuiteId) { - // this.logTestSuiteId = logTestSuiteId; - // } - // - // public long getLogTestSuiteId() { - // return logTestSuiteId; - // } - - // 尝试通过flysky的dblog接口来做 - @Override - public void suiteRunStart(SuiteInfo suiteInfo) { - Map param = new HashMap(); - Map params = new HashMap(); - String machineIp = ""; - try { - InetAddress addr = InetAddress.getLocalHost(); - machineIp = addr.getHostAddress().toString();// 获得本机IP - } catch (UnknownHostException e1) { - e1.printStackTrace(); - } - param.put("buildId", String.valueOf(suiteInfo.getBuildId())); - param.put("buildTaskId", String.valueOf(suiteInfo.getBuildTaskId())); - param.put("buildTestSuiteId", String.valueOf(suiteInfo.getBuildTestSuiteId())); - param.put("submitter",suiteInfo.getSubmitter()); - param.put("submitdate",suiteInfo.getSubmitdate()); - param.put("submitnote",suiteInfo.getSubmitnote()); - // 这个要平台那边通过buildTestsuiteId找到testsuiteId,然后存进去,日志这里不做处理 - param.put("testSuiteId", "0"); - param.put("projectName", DriverService.PROPERTIES.getProperty("project")); - param.put("testSuiteName", suiteInfo.getSuiteName()); - param.put("machineIp", machineIp); - param.put("runner", DriverService.PROPERTIES.getProperty("runner")); - param.put("runStatus", String.valueOf(suiteInfo.getSuiteStatus())); - param.put("runResult", String.valueOf(suiteInfo.getSuiteResult())); - param.put("caseNum", "0"); - param.put("passNum", "0"); - param.put("failNum", "0"); - String dbLogUrl = DriverService.PROPERTIES.getProperty("dbLogUrl"); - try {//log_suite_start.do - params.put("cname", "admin"); - params.put("cpwd", "admin"); - //String json1 = HttpUtil.postRequest("http://localhost:8080/AutoTestPlats/demo/" + "userAction!doNotNeedSession_login.action", params, null, null); - String json = HttpUtil.postRequest(dbLogUrl + "LogTestSuite.action", param, null, null); - JSONObject result = JSON.parseObject(json); - if (!result.getBoolean("result")) { - throw new Exception(result.getString("msg")); - } else { - //logTestSuiteId = Long.parseLong(result.getString("msg")); - logTestSuiteId = result.getString("msg"); - LogModule.logStepPass(StepType.DATABASE, "测试套件(" + suiteInfo.getSuiteName() + ")开始运行时数据库日志存储成功", RunResult.PASS); - } - } catch (Exception e) { - LogModule.logStepFail(StepType.DATABASE, "测试套件(" + suiteInfo.getSuiteName() + ")开始运行时数据库日志存储失败", RunResult.FAIL, e.getMessage()); - // throw new RuntimeException(e.getMessage()); - } - } - - @Override - public void suiteRunStop(SuiteInfo suiteInfo) { - Map param = new HashMap(); - param.put("runStatus", String.valueOf(suiteInfo.getSuiteStatus())); - param.put("runResult", String.valueOf(suiteInfo.getSuiteResult())); - param.put("moduleNum", String.valueOf(suiteInfo.getSuiteModuleNum())); - param.put("caseNum", String.valueOf(suiteInfo.getSuiteCaseNum())); - param.put("passNum", String.valueOf(suiteInfo.getPassCaseNum())); - param.put("failNum", String.valueOf(suiteInfo.getFailCaseNum())); - param.put("percent", String.valueOf(suiteInfo.getPassPercent())); - param.put("sid", String.valueOf(logTestSuiteId)); - String dbLogUrl = DriverService.PROPERTIES.getProperty("dbLogUrl"); - try { - String json = HttpUtil.postRequest(dbLogUrl + "LogTestSuite.action", param, null, null); - JSONObject result = JSON.parseObject(json); - if (!result.getBoolean("result")) { - throw new Exception(result.getString("msg")); - } - LogModule.logStepPass(StepType.DATABASE, "测试套件(" + suiteInfo.getSuiteName() + ")结束运行时数据库日志存储成功", RunResult.PASS); - } catch (Exception e) { - LogModule.logStepFail(StepType.DATABASE, "测试套件(" + suiteInfo.getSuiteName() + ")结束运行时数据库日志存储失败", RunResult.FAIL, e.getMessage()); - // throw new RuntimeException(e.getMessage()); - } - - } - - @Override - public void moduleRunStart(ModuleInfo moduleInfo) { - Map param = new HashMap(); - //String machineIp = ""; - try { - InetAddress addr = InetAddress.getLocalHost(); - //machineIp = addr.getHostAddress().toString();// 获得本机IP - } catch (UnknownHostException e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } - //param.put("machineIp", machineIp); - param.put("sid", String.valueOf(logTestSuiteId)); - param.put("moduleName", moduleInfo.getModuleName()); - param.put("runStatus", String.valueOf(moduleInfo.getModuleStatus())); - param.put("runResult", String.valueOf(moduleInfo.getModuleResult())); - String dbLogUrl = DriverService.PROPERTIES.getProperty("dbLogUrl"); - try { - String json = HttpUtil.postRequest(dbLogUrl + "LogTestModule.action", param, null, null); - JSONObject result = JSON.parseObject(json); - if (!result.getBoolean("result")) { - throw new Exception(result.getString("msg")); - } else { - //logTestModuleId = Long.parseLong(result.getString("msg")); - logTestModuleId = result.getString("msg"); - } - LogModule.logStepPass(StepType.DATABASE, "测试模块(" + moduleInfo.getModuleName() + ")开始运行时数据库日志存储成功", RunResult.PASS); - } catch (Exception e) { - LogModule.logStepFail(StepType.DATABASE, "测试模块(" + moduleInfo.getModuleName() + ")开始运行时数据库日志存储失败", RunResult.FAIL, e.getMessage()); - // throw new RuntimeException(e.getMessage()); - } - } - - @Override - public void moduleRunStop(ModuleInfo moduleInfo) { - Map param = new HashMap(); - param.put("runStatus", String.valueOf(moduleInfo.getModuleStatus())); - param.put("runResult", String.valueOf(moduleInfo.getModuleResult())); - param.put("caseNum", String.valueOf(moduleInfo.getModuleCaseNum())); - param.put("passNum", String.valueOf(moduleInfo.getPassCaseNum())); - param.put("failNum", String.valueOf(moduleInfo.getFailCaseNum())); - param.put("mid", String.valueOf(logTestModuleId)); - String dbLogUrl = DriverService.PROPERTIES.getProperty("dbLogUrl"); - try { - String json = HttpUtil.postRequest(dbLogUrl + "LogTestModule.action", param, null, null); - JSONObject result = JSON.parseObject(json); - if (!result.getBoolean("result")) { - throw new Exception(result.getString("msg")); - } - LogModule.logStepPass(StepType.DATABASE, "测试模块(" + moduleInfo.getModuleName() + ")结束运行时数据库日志存储成功", RunResult.PASS); - } catch (Exception e) { - LogModule.logStepFail(StepType.DATABASE, "测试模块(" + moduleInfo.getModuleName() + ")结束运行时数据库日志存储失败", RunResult.FAIL, e.getMessage()); - // throw new RuntimeException(e.getMessage()); - } - - } - - @Override - public void caseRunStart(CaseInfo caseInfo) { - Map param = new HashMap(); - //param.put("logTestSuiteId", String.valueOf(logTestSuiteId)); - param.put("mid", String.valueOf(logTestModuleId)); - param.put("caseName", caseInfo.getCaseName()); - param.put("description", caseInfo.getCaseDesc()); - param.put("runStatus", String.valueOf(caseInfo.getCaseStatus())); - param.put("runResult", String.valueOf(caseInfo.getCaseResult())); - String dbLogUrl = DriverService.PROPERTIES.getProperty("dbLogUrl"); - try { - String json = HttpUtil.postRequest(dbLogUrl + "LogTestCase.action", param, null, null); - JSONObject result = JSON.parseObject(json); - if (!result.getBoolean("result")) { - throw new Exception(result.getString("msg")); - } else { - //logTestCaseId = Long.parseLong(result.getString("msg")); - logTestCaseId = result.getString("msg"); - } - LogModule.logStepPass(StepType.DATABASE, "测试用例(" + caseInfo.getCaseName() + ")开始运行时数据库日志存储成功", RunResult.PASS); - } catch (Exception e) { - LogModule.logStepFail(StepType.DATABASE, "测试用例(" + caseInfo.getCaseName() + ")开始运行时数据库日志存储失败", RunResult.FAIL, e.getMessage()); - // throw new RuntimeException(e.getMessage()); - } - - } - - @Override - public void caseRunStop(CaseInfo caseInfo) { - Map param = new HashMap(); - param.put("runStatus", String.valueOf(caseInfo.getCaseStatus())); - param.put("runResult", String.valueOf(caseInfo.getCaseResult())); - param.put("rerunNum", ""); - param.put("caseid", String.valueOf(logTestCaseId)); - String dbLogUrl = DriverService.PROPERTIES.getProperty("dbLogUrl"); - try { - String json = HttpUtil.postRequest(dbLogUrl + "LogTestCase.action", param, null, null); - JSONObject result = JSON.parseObject(json); - if (!result.getBoolean("result")) { - throw new Exception(result.getString("msg")); - } - LogModule.logStepPass(StepType.DATABASE, "测试用例(" + caseInfo.getCaseName() + ")结束运行时数据库日志存储成功", RunResult.PASS); - } catch (Exception e) { - LogModule.logStepFail(StepType.DATABASE, "测试用例(" + caseInfo.getCaseName() + ")结束运行时数据库日志存储失败", RunResult.FAIL, e.getMessage()); - // throw new RuntimeException(e.getMessage()); - } - List logStepInfoList = caseInfo.getLogStepInfoList(); - for (LogStepInfo logStepInfo : logStepInfoList) { - // 图片保存 - param.clear(); - String name = logStepInfo.getPicture(); - if (name != null && !name.trim().equals("")) { - param.put("name", logStepInfo.getPictureName()); - // param.put("content", FileUtil.); - - try { - //String json = HttpUtil.uploadFile(new File(name), dbLogUrl + "upload"); -// JSONObject result = JSON.parseObject(json); -// if (!result.getBoolean("result")) { -// throw new Exception(result.getString("msg")); -// } else { -// logPictureId = Long.parseLong(result.getString("msg")); -// } - } catch (Exception e) { - LogModule.logStepFail(StepType.DATABASE, "测试用例步骤截图(" + logStepInfo.getPicture() + ")日志截图存储失败", RunResult.FAIL, e.getMessage()); - // throw new RuntimeException(e.getMessage()); - } - } else { - logPictureId = 0; - } - // 步骤保存 - param.clear(); - //param.put("logTestSuiteId", String.valueOf(logTestSuiteId)); - //param.put("logTestModuleId", String.valueOf(logTestModuleId)); - param.put("caseid", String.valueOf(logTestCaseId)); - //param.put("stepId", String.valueOf(logStepInfo.getStepId())); - param.put("stepname", String.valueOf(logStepInfo.getStepDesc())); - param.put("comment", String.valueOf(logStepInfo.getUrl())); - param.put("type", String.valueOf(logStepInfo.getStepType())); - param.put("result", String.valueOf(logStepInfo.getStepResult())); -// param.put("logPictureId", String.valueOf(logPictureId)); - //param.put("logPictureId", String.valueOf(logStepInfo.getPictureName())); - param.put("reason", logStepInfo.getFailReason()); - - try { - String today = DateUtil.dateToStr(new Date(), "yyyy-MM-dd"); - Date stepTime1 = DateUtil.strToDate(today + " " + logStepInfo.getStepTime(), "yyyy-MM-dd HH:mm:ss"); - SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String stepTime = sf.format(stepTime1); - param.put("stepTime", stepTime); - - } catch (ParseException e1) { - e1.printStackTrace(); - } -// try { -// String today = DateUtil.dateToStr(new Date(), "yyyy-MM-dd"); -// Date stepTime = DateUtil.strToDate(today + " " + logStepInfo.getStepTime(), "yyyy-MM-dd HH:mm:ss"); -// param.put("stepTime", stepTime.toGMTString()); -// -// } catch (ParseException e1) { -// // TODO Auto-generated catch block -// e1.printStackTrace(); -// } - - try { - String json = HttpUtil.postRequest(dbLogUrl + "LogTestStep.action", param, null, null); - JSONObject result = JSON.parseObject(json); - if (!result.getBoolean("result")) { - throw new Exception(result.getString("msg")); - } - } catch (Exception e) { - LogModule.logStepFail(StepType.DATABASE, "测试用例步骤(" + logStepInfo.getStepDesc() + ")日志存储失败", RunResult.FAIL, e.getMessage()); - // throw new RuntimeException(e.getMessage()); - } - } - - } - -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/log/LocalFileLog.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/log/LocalFileLog.java deleted file mode 100644 index c99935b116..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/log/LocalFileLog.java +++ /dev/null @@ -1,189 +0,0 @@ -package network.platon.autotest.junit.log; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.PrintWriter; -import java.io.StringWriter; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Properties; -import java.util.stream.Collectors; - -import network.platon.autotest.junit.core.LogModule; -import network.platon.autotest.junit.core.Observer; -import network.platon.autotest.junit.enums.RunResult; -import network.platon.autotest.junit.modules.CaseInfo; -import network.platon.autotest.junit.modules.LogStepInfo; -import network.platon.autotest.junit.modules.ModuleInfo; -import network.platon.autotest.junit.modules.SuiteInfo; -import network.platon.autotest.junit.rules.DriverService; -import org.apache.velocity.Template; -import org.apache.velocity.VelocityContext; -import org.apache.velocity.app.Velocity; - -import network.platon.autotest.utils.FileUtil; -import network.platon.autotest.utils.ZipUtil; - -public class LocalFileLog implements Observer { - private String templatesDir = DriverService.PROPERTIES.getProperty("templatesDir", "src/main/resources/templates/"); - // 为在增加在数据推送项目中的错误报文打印到相应的用例日志路径下,修改为公共方法 - public static String moduleDir; - private String encode = DriverService.ENCODE; - private Properties properties = DriverService.PROPERTIES; - - public Map param = new HashMap(); - public List logStepInfoList = new ArrayList(); - - /* (non-Javadoc) - * @see network.platon.autotest.junit.core.Observer#suiteRunStart(network.platon.autotest.junit.modules.SuiteInfo) - * 主要作用是当maven执行时修改日志的编码 - */ - @Override - public void suiteRunStart(SuiteInfo suiteInfo) { - // 判断是否maven执行,决定编码方式,主要是兼容windows窗口控制台输出的gbk编码,后续做改进 - StackTraceElement stack[] = Thread.currentThread().getStackTrace(); - for (StackTraceElement ste : stack) { - if ((ste.getClassName().contains("maven")||ste.getClassName().contains("mvn"))&&(System.getProperties().getProperty("os.name").contains("Windows"))) { - encode = "GBK"; - break; - } - } - } - - @Override - public void suiteRunStop(SuiteInfo suiteInfo) { - for (ModuleInfo moduleInfo : suiteInfo.getModuleInfoList()) { - if (0 == moduleInfo.getModuleCaseNum()) { - suiteInfo.setSuiteModuleNum(suiteInfo.getSuiteModuleNum() - 1); - } - } - suiteInfo.getModuleInfoList().removeIf(item -> item.getModuleCaseNum() == 0); - Properties p = new Properties(); - p.setProperty(Velocity.INPUT_ENCODING, encode); - p.setProperty(Velocity.OUTPUT_ENCODING, encode); - Velocity.init(p); - // 取得velocity上下文 - VelocityContext context = new VelocityContext(); - String project = (String) (properties.get("project") == null ? "" : properties.get("project")); - String runner = (String) (properties.get("runner") == null ? "" : properties.get("runner")); - context.put("suiteInfo", suiteInfo); - context.put("project", project); - context.put("runner", runner); - context.put("encode", encode); - Template template = Velocity.getTemplate(templatesDir + "suiteResult.vm"); - StringWriter writer = new StringWriter(); - template.merge(context, writer); - PrintWriter filewriter; - try { - filewriter = new PrintWriter(new FileOutputStream(LogModule.SUITE_PATH + suiteInfo.getSuiteName() + ".html"), true); - filewriter.println(writer.toString()); - filewriter.close(); - } catch (FileNotFoundException e) { - e.printStackTrace(); - } - moduleDir = LogModule.SUITE_PATH + "Link/js/"; - File directory = new File(moduleDir); - if (!directory.exists()) { - directory.mkdirs(); - } - FileUtil.copyFolder(templatesDir + "js/", moduleDir); - // 压缩日志文件 - if (properties.getProperty("reportZip") != null && !properties.getProperty("reportZip").toLowerCase().trim().equals("false")) { - ZipUtil.zip(LogModule.SUITE_PATH, "report.zip"); - } - - } - - @Override - public void moduleRunStart(ModuleInfo moduleInfo) { - //List caseRunList = moduleInfo.getCaseInfoList().stream().map(CaseInfo::getCaseRun).collect(Collectors.toList()); -// List caseRunList = moduleInfo.getCaseInfoList().stream().map(CaseInfo::getCaseRun) -// .filter(item -> item.booleanValue() == true).collect(Collectors.toList()); -// System.out.println("caseRunList:" + caseRunList); -// System.out.println("caseRunList.size():" + caseRunList.size()); -// if (null != caseRunList && caseRunList.size() == 0) { -// return; -// } - // moduleInfo = LogModule.moduleInfo; - moduleDir = LogModule.SUITE_PATH + "Link/" + moduleInfo.getModuleName() + "/"; - File directory = new File(moduleDir); - if (!directory.exists()) { - directory.mkdirs(); - } - } - - @Override - public void moduleRunStop(ModuleInfo moduleInfo) { - // moduleInfo = LogModule.moduleInfo; - // 下面是本地日志,后续隔离开 - Properties p = new Properties(); - p.setProperty(Velocity.INPUT_ENCODING, encode); - p.setProperty(Velocity.OUTPUT_ENCODING, encode); - Velocity.init(p); - // 取得velocity上下文 - VelocityContext context = new VelocityContext(); - context.put("moduleInfo", moduleInfo); - context.put("encode", encode); - templatesDir = properties.getProperty("templatesDir", templatesDir); - Template template = Velocity.getTemplate(templatesDir + "moduleResult.vm"); - StringWriter writer = new StringWriter(); - template.merge(context, writer); - PrintWriter filewriter; - try { - filewriter = new PrintWriter(new FileOutputStream(LogModule.SUITE_PATH + "Link/" + moduleInfo.getModuleName() + ".html"), true); - filewriter.println(writer.toString()); - filewriter.close(); - } catch (FileNotFoundException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - - } - - @Override - public void caseRunStart(CaseInfo caseInfo) { - // TODO Auto-generated method stub - - } - - @Override - public void caseRunStop(CaseInfo caseInfo) { - // caseInfo = LogModule.caseInfo; - // 只有最后一次重跑时,才记录本地日志 - if (caseInfo.getCaseResult().equals(RunResult.FAIL) && caseInfo.getCaseRerunNum() >= 0) { - return; - } - Properties p = new Properties(); - - p.setProperty(Velocity.INPUT_ENCODING, encode); - p.setProperty(Velocity.OUTPUT_ENCODING, encode); - - Velocity.init(p); - - // 取得velocity上下文 - VelocityContext context = new VelocityContext(); - context.put("logStepInfoList", LogModule.logStepInfoList); - context.put("caseInfo", caseInfo); - context.put("encode", encode); - templatesDir = properties.getProperty("templatesDir", templatesDir); - Template template = Velocity.getTemplate(templatesDir + "caseResult.vm"); - - StringWriter writer = new StringWriter(); - template.merge(context, writer); - - PrintWriter filewriter; - try { - filewriter = new PrintWriter(new FileOutputStream(moduleDir + "测试用例_" + caseInfo.getCaseName() + ".html"), true); - filewriter.println(writer.toString()); - filewriter.close(); - } catch (FileNotFoundException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/modules/CaseInfo.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/modules/CaseInfo.java deleted file mode 100644 index 2c042412d9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/modules/CaseInfo.java +++ /dev/null @@ -1,198 +0,0 @@ -package network.platon.autotest.junit.modules; - -import java.util.Date; -import java.util.List; -import java.util.Map; - -import network.platon.autotest.junit.enums.BrowserType; -import network.platon.autotest.junit.enums.RunResult; -import network.platon.autotest.junit.enums.RunStatus; -import network.platon.autotest.utils.DateUtil; - -public class CaseInfo { - private SuiteInfo suiteInfo; - private ModuleInfo moduleInfo; - private String caseName; - private String caseDesc; - private Boolean caseRun; - private RunStatus caseStatus; - private RunResult caseResult; - private Map caseParams; - private String caseLevel; - private BrowserType caseBrowserType; - private Date caseStartTime; - private Date caseStopTime; - private String casePriority; - /** - * 错误用例重试次数 - */ - private int caseRerunNum; - private List LogStepInfoList; - /** - * 是否在测试流程执行过程中运行断言 - */ - private boolean caseAssert; - /** - * 用例运行次数 - */ - private Integer caseRunNum; - - public RunStatus getCaseStatus() { - return caseStatus; - } - - public void setCaseStatus(RunStatus caseStatus) { - this.caseStatus = caseStatus; - } - - public RunResult getCaseResult() { - return caseResult; - } - - public void setCaseResult(RunResult caseResult) { - this.caseResult = caseResult; - } - - public SuiteInfo getSuiteInfo() { - return suiteInfo; - } - - public void setSuiteInfo(SuiteInfo suiteInfo) { - this.suiteInfo = suiteInfo; - } - - public ModuleInfo getModuleInfo() { - return moduleInfo; - } - - public void setModuleInfo(ModuleInfo moduleInfo) { - this.moduleInfo = moduleInfo; - } - - public String getCaseName() { - return caseName; - } - - public void setCaseName(String caseName) { - this.caseName = caseName; - } - - public String getCaseDesc() { - return caseDesc; - } - - public void setCaseDesc(String caseDesc) { - this.caseDesc = caseDesc; - } - - public Boolean getCaseRun() { - return caseRun; - } - - public void setCaseRun(Boolean caseRun) { - this.caseRun = caseRun; - } - - public Map getCaseParams() { - return caseParams; - } - - public void setCaseParams(Map caseParams) { - this.caseParams = caseParams; - } - - public String getCaseLevel() { - return caseLevel; - } - - public void setCaseLevel(String caseLevel) { - this.caseLevel = caseLevel; - } - - public void setCaseStartTime(Date caseStartTime) { - this.caseStartTime = caseStartTime; - } - - public Date getCaseStartTime() { - return caseStartTime; - } - - public void setCaseStopTime(Date caseStopTime) { - this.caseStopTime = caseStopTime; - } - - public Date getCaseStopTime() { - return caseStopTime; - } - - public String getCaseRunTimeStr() { - return String.valueOf((caseStopTime.getTime() - caseStartTime.getTime()) / 1000); - } - - public String getCaseStartTimeStr() { - return DateUtil.dateToStr(caseStartTime, "HH:mm:ss"); - } - - public String getCaseStopTimeStr() { - return DateUtil.dateToStr(caseStopTime, "HH:mm:ss"); - } - - public void setCaseBrowserType(BrowserType caseBrowserType) { - this.caseBrowserType = caseBrowserType; - } - - public BrowserType getCaseBrowserType() { - return caseBrowserType; - } - - public void setCasePriority(String casePriority) { - this.casePriority = casePriority; - } - - public String getCasePriority() { - return casePriority; - } - - public void setCaseRerunNum(int caseRerunNum) { - this.caseRerunNum = caseRerunNum; - } - - public int getCaseRerunNum() { - return caseRerunNum; - } - - public void setLogStepInfoList(List logStepInfoList) { - LogStepInfoList = logStepInfoList; - } - - public List getLogStepInfoList() { - return LogStepInfoList; - } - - public boolean isCaseAssert() { - return caseAssert; - } - - public void setCaseAssert(boolean caseAssert) { - this.caseAssert = caseAssert; - } - - public Integer getCaseRunNum() { - return caseRunNum; - } - - public void setCaseRunNum(Integer caseRunNum) { - this.caseRunNum = caseRunNum; - } - - - // attr_accessor :case_desc - // attr_accessor :case_run - // attr_accessor :case_flow - // attr_accessor :case_params - // attr_accessor :case_dbparams - // attr_accessor :case_level #场景级别 - // attr_accessor :case_rerun_num #重跑次数 - // attr_accessor :case_browser_level #场景浏览器级别 - // attr_accessor :case_browser #用 -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/modules/LogStepInfo.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/modules/LogStepInfo.java deleted file mode 100644 index 16914d0430..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/modules/LogStepInfo.java +++ /dev/null @@ -1,152 +0,0 @@ -package network.platon.autotest.junit.modules; - -import network.platon.autotest.junit.enums.RunResult; -import network.platon.autotest.junit.enums.StepType; - -public class LogStepInfo { - private SuiteInfo suiteInfo; - private ModuleInfo moduleInfo; - private String caseName; - private int stepId; - private StepType stepType; - private String stepDesc; - private String actual = ""; - private String expect = ""; - private RunResult stepResult; - private String failReason; - private String picture; - private String pictureName; - private String pictureRelative; - private String stepTime; - private String url; - private String failType; - - public SuiteInfo getSuiteInfo() { - return suiteInfo; - } - - public void setSuiteInfo(SuiteInfo suiteInfo) { - this.suiteInfo = suiteInfo; - } - - public ModuleInfo getModuleInfo() { - return moduleInfo; - } - - public void setModuleInfo(ModuleInfo moduleInfo) { - this.moduleInfo = moduleInfo; - } - - public String getCaseName() { - return caseName; - } - - public void setCaseName(String caseName) { - this.caseName = caseName; - } - - public String getStepDesc() { - return stepDesc; - } - - public void setStepDesc(String stepDesc) { - this.stepDesc = stepDesc; - } - - public RunResult getStepResult() { - return stepResult; - } - - public void setStepResult(RunResult stepResult) { - this.stepResult = stepResult; - } - - public String getFailReason() { - return failReason; - } - - public void setFailReason(String failReason) { - this.failReason = failReason; - } - - public String getPicture() { - return picture; - } - - public void setPicture(String picture) { - this.picture = picture; - } - - public String getStepTime() { - return stepTime; - } - - public void setStepTime(String stepTime) { - this.stepTime = stepTime; - } - - public StepType getStepType() { - return stepType; - } - - public void setStepType(StepType stepType) { - this.stepType = stepType; - } - - public String getUrl() { - return url; - } - - public void setUrl(String url) { - this.url = url; - } - - public void setFailType(String failType) { - this.failType = failType; - } - - public String getFailType() { - return failType; - } - - public void setStepId(int stepId) { - this.stepId = stepId; - } - - public int getStepId() { - return stepId; - } - - public void setPictureRelative(String pictureRelative) { - this.pictureRelative = pictureRelative; - } - - public String getPictureRelative() { - return pictureRelative; - } - - public void setPictureName(String pictureName) { - this.pictureName = pictureName; - } - - public String getPictureName() { - return pictureName; - } - - public String getActual() { - return actual; - } - - public void setActual(String actual) { - this.actual = actual; - } - - public String getExpect() { - return expect; - } - - public void setExpect(String expect) { - this.expect = expect; - } - -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/modules/ModuleInfo.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/modules/ModuleInfo.java deleted file mode 100644 index 14af4300f5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/modules/ModuleInfo.java +++ /dev/null @@ -1,211 +0,0 @@ -package network.platon.autotest.junit.modules; - -import java.util.Date; -import java.util.List; - -import network.platon.autotest.junit.enums.RunResult; -import network.platon.autotest.junit.enums.RunStatus; -import network.platon.autotest.utils.DateUtil; - -public class ModuleInfo { - - private SuiteInfo suiteInfo; - private String moduleName; - /** - * 为了日志报告中模块名称为中文显示而定义的模块显示名称 - */ - private String moduleShowName; - private String moduleDesc; - /** - * 脚本负责人 - */ - private String moduleAuthor; - /** - * 业务负责人 - */ - private String moduleExpert; - private Boolean moduleRun; - private RunStatus moduleStatus; - private RunResult moduleResult; - private String moduleBrowser; - private List caseInfoList; - private int moduleCaseNum; - private int passCaseNum; - private int failCaseNum; - private float passPercent; - private Date moduleStartTime; - private Date moduleStopTime; - - public SuiteInfo getSuiteInfo() { - return suiteInfo; - } - - public void setSuiteInfo(SuiteInfo suiteInfo) { - this.suiteInfo = suiteInfo; - } - - public RunStatus getModuleStatus() { - return moduleStatus; - } - - public void setModuleStatus(RunStatus moduleStatus) { - this.moduleStatus = moduleStatus; - } - - public String getModuleName() { - return moduleName; - } - - public void setModuleName(String moduleName) { - this.moduleName = moduleName; - } - - public RunResult getModuleResult() { - return moduleResult; - } - - public void setModuleResult(RunResult moduleResult) { - this.moduleResult = moduleResult; - } - - public String getModuleBrowser() { - return moduleBrowser; - } - - public void setModuleBrowser(String moduleBrowser) { - this.moduleBrowser = moduleBrowser; - } - - public List getCaseInfoList() { - return caseInfoList; - } - - public void setCaseInfoList(List caseInfoList) { - this.caseInfoList = caseInfoList; - } - - public int getModuleCaseNum() { - return moduleCaseNum; - } - - public void setModuleCaseNum(int moduleCaseNum) { - this.moduleCaseNum = moduleCaseNum; - } - - public int getPassCaseNum() { - return passCaseNum; - } - - public void setPassCaseNum(int passCaseNum) { - this.passCaseNum = passCaseNum; - } - - public int getFailCaseNum() { - return failCaseNum; - } - - public void setFailCaseNum(int failCaseNum) { - this.failCaseNum = failCaseNum; - } - - public float getPassPercent() { - return passPercent; - } - - public void setPassPercent(float passPercent) { - this.passPercent = passPercent; - } - - public Date getModuleStopTime() { - return moduleStopTime; - } - - public void setModuleStopTime(Date moduleStopTime) { - this.moduleStopTime = moduleStopTime; - } - - public Date getModuleStartTime() { - return moduleStartTime; - } - - public void setModuleStartTime(Date moduleStartTime) { - this.moduleStartTime = moduleStartTime; - } - - public String getModuleAuthor() { - return moduleAuthor; - } - - public void setModuleAuthor(String moduleAuthor) { - this.moduleAuthor = moduleAuthor; - } - - public String getModuleBusinessAuthor() { - return moduleExpert; - } - - public void setModuleBusinessAuthor(String moduleExpert) { - this.moduleExpert = moduleExpert; - } - - public void setModuleDesc(String moduleDesc) { - this.moduleDesc = moduleDesc; - } - - public String getModuleDesc() { - return moduleDesc; - } - - public String getModuleRunTimeStr() { - long times = (moduleStopTime.getTime() - moduleStartTime.getTime()) / 1000; - long minutes = times / 60; - long second = times % 60; - String timeStr = String.valueOf(second) + "秒"; - long hour = minutes / 60; - long minute = minutes % 60; - if (hour > 0) { - timeStr = String.valueOf(hour) + "小时" + String.valueOf(minute) + "分" + timeStr; - } else if (minute > 0) { - timeStr = String.valueOf(minute) + "分" + timeStr; - } - return timeStr; - } - - public String getModuleStartTimeStr() { - return DateUtil.dateToStr(moduleStartTime, "HH:mm:ss"); - } - - public String getModuleStopTimeStr() { - return DateUtil.dateToStr(moduleStopTime, "HH:mm:ss"); - } - - public void setModuleRun(Boolean moduleRun) { - this.moduleRun = moduleRun; - } - - public Boolean getModuleRun() { - return moduleRun; - } - - public String getModuleShowName() { - return moduleShowName; - } - - public void setModuleShowName(String moduleShowName) { - this.moduleShowName = moduleShowName; - } - - public String getModuleExpert() { - return moduleExpert; - } - - public void setModuleExpert(String moduleExpert) { - this.moduleExpert = moduleExpert; - } - - @Override - public String toString() { - return "ModuleInfo [suiteInfo=" + suiteInfo + ", moduleName=" + moduleName + ", moduleShowName=" + moduleShowName + ", moduleDesc=" + moduleDesc + ", moduleAuthor=" + moduleAuthor + ", moduleExpert=" + moduleExpert + ", moduleRun=" + moduleRun + ", moduleStatus=" + moduleStatus + ", moduleResult=" + moduleResult + ", moduleBrowser=" + moduleBrowser + ", caseInfoList=" + caseInfoList + ", moduleCaseNum=" + moduleCaseNum + ", passCaseNum=" + passCaseNum + ", failCaseNum=" + failCaseNum + ", passPercent=" + passPercent + ", moduleStartTime=" + moduleStartTime + ", moduleStopTime=" + moduleStopTime + "]"; - } - -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/modules/SuiteInfo.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/modules/SuiteInfo.java deleted file mode 100644 index 8db32d1ce0..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/modules/SuiteInfo.java +++ /dev/null @@ -1,237 +0,0 @@ -package network.platon.autotest.junit.modules; - -import java.util.Date; -import java.util.List; - -import network.platon.autotest.junit.enums.RunResult; -import network.platon.autotest.junit.enums.RunStatus; -import network.platon.autotest.utils.DateUtil; - -/** - * @author qcxiao - * - */ -public class SuiteInfo { - private String projectName; - private String suiteName; - private RunStatus suiteStatus; - private RunResult suiteResult; - private String suiteBrowser; - private List moduleInfoList; - private String suiteAuthor; - private String suiteExpert; - private int suiteModuleNum; - private int suiteCaseNum; - private int passCaseNum; - private int failCaseNum; - private float passPercent; - private Date suiteStartTime; - private Date suiteStopTime; - private Boolean reportMerged; - private long buildId; - private long buildTaskId; - private long buildTestSuiteId; - private String submitter;//结合Californium平台使用的提交人 - private String submitdate;//结合Californium平台使用的提交时间 - private String submitnote;//结合Californium平台使用的提交信息 - - public String getSuiteName() { - return suiteName; - } - - public void setSuiteName(String suiteName) { - this.suiteName = suiteName; - } - - public RunStatus getSuiteStatus() { - return suiteStatus; - } - - public void setSuiteStatus(RunStatus suiteStatus) { - this.suiteStatus = suiteStatus; - } - - public RunResult getSuiteResult() { - return suiteResult; - } - - public void setSuiteResult(RunResult suiteResult) { - this.suiteResult = suiteResult; - } - - public String getSuiteBrowser() { - return suiteBrowser; - } - - public void setSuiteBrowser(String suiteBrowser) { - this.suiteBrowser = suiteBrowser; - } - - public List getModuleInfoList() { - return moduleInfoList; - } - - public void setModuleInfoList(List moduleInfoList) { - this.moduleInfoList = moduleInfoList; - } - - public String getSuiteAuthor() { - return suiteAuthor; - } - - public void setSuiteAuthor(String suiteAuthor) { - this.suiteAuthor = suiteAuthor; - } - - public String getSuiteExpert() { - return suiteExpert; - } - - public void setSuiteExpert(String suiteExpert) { - this.suiteExpert = suiteExpert; - } - - public int getSuiteCaseNum() { - return suiteCaseNum; - } - - public void setSuiteCaseNum(int suiteCaseNum) { - this.suiteCaseNum = suiteCaseNum; - } - - public int getPassCaseNum() { - return passCaseNum; - } - - public void setPassCaseNum(int passCaseNum) { - this.passCaseNum = passCaseNum; - } - - public int getFailCaseNum() { - return failCaseNum; - } - - public void setFailCaseNum(int failCaseNum) { - this.failCaseNum = failCaseNum; - } - - public float getPassPercent() { - return passPercent; - } - - public void setPassPercent(float passPercent) { - this.passPercent = passPercent; - } - - public Date getSuiteStartTime() { - return suiteStartTime; - } - - public void setSuiteStartTime(Date suiteStartTime) { - this.suiteStartTime = suiteStartTime; - } - - public Date getSuiteStopTime() { - return suiteStopTime; - } - - public void setSuiteStopTime(Date suiteStopTime) { - this.suiteStopTime = suiteStopTime; - } - - public String getSuiteRunTimeStr() { - long times = (suiteStopTime.getTime() - suiteStartTime.getTime()) / 1000; - long minutes = times / 60; - long second = times % 60; - String timeStr = String.valueOf(second) + "秒"; - long hour = minutes / 60; - long minute = minutes % 60; - if (hour > 0) { - timeStr = String.valueOf(hour) + "小时" + String.valueOf(minute) + "分" + timeStr; - } else if (minute > 0) { - timeStr = String.valueOf(minute) + "分" + timeStr; - } - return timeStr; - } - - public String getSuiteStartTimeStr() { - return DateUtil.dateToStr(suiteStartTime, "HH:mm:ss"); - } - - public String getSuiteStopTimeStr() { - return DateUtil.dateToStr(suiteStopTime, "HH:mm:ss"); - } - - public void setSuiteModuleNum(int suiteModuleNum) { - this.suiteModuleNum = suiteModuleNum; - } - - public int getSuiteModuleNum() { - return suiteModuleNum; - } - - public void setReportMerged(Boolean reportMerged) { - this.reportMerged = reportMerged; - } - - public Boolean getReportMerged() { - return reportMerged; - } - - public void setBuildId(long buildId) { - this.buildId = buildId; - } - - public long getBuildId() { - return buildId; - } - - public void setBuildTaskId(long buildTaskId) { - this.buildTaskId = buildTaskId; - } - - public long getBuildTaskId() { - return buildTaskId; - } - - public void setBuildTestSuiteId(long buildTestSuiteId) { - this.buildTestSuiteId = buildTestSuiteId; - } - - public long getBuildTestSuiteId() { - return buildTestSuiteId; - } - - public String getSubmitter() { - return submitter; - } - - public void setSubmitter(String submitter) { - this.submitter = submitter; - } - - public String getSubmitdate() { - return submitdate; - } - - public void setSubmitdate(String submitdate) { - this.submitdate = submitdate; - } - - public String getSubmitnote() { - return submitnote; - } - - public void setSubmitnote(String submitnote) { - this.submitnote = submitnote; - } - - public String getProjectName() { - return projectName; - } - - public void setProjectName(String projectName) { - this.projectName = projectName; - } - -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/rules/AssertCollector.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/rules/AssertCollector.java deleted file mode 100644 index 4fcf350230..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/rules/AssertCollector.java +++ /dev/null @@ -1,317 +0,0 @@ -package network.platon.autotest.junit.rules; - -import static org.hamcrest.Matchers.containsString; -import static org.hamcrest.Matchers.equalTo; -import static org.hamcrest.Matchers.hasItem; -import static org.hamcrest.Matchers.is; -import static org.hamcrest.Matchers.not; -import static org.hamcrest.collection.IsIn.isIn; -import static org.junit.Assert.assertThat; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; -import java.util.concurrent.Callable; -import org.hamcrest.Matcher; -import org.junit.rules.Verifier; -import org.junit.runners.model.MultipleFailureException; -import org.springframework.web.util.HtmlUtils; -import network.platon.autotest.junit.core.LogModule; -import network.platon.autotest.junit.enums.RunResult; -import network.platon.autotest.junit.enums.StepType; -import network.platon.autotest.junit.enums.TestSuiteType; - -public class AssertCollector extends Verifier { - private List errors = new ArrayList(); - private Boolean hasError = false; - // 设置断言失败时是否跳出执行 - private Boolean isBreak = false; - - @Override - protected void verify() throws Throwable { - MultipleFailureException.assertEmpty(errors); - } - - /** - * Adds a Throwable to the table. Execution continues, but the test will - * fail at the end. - */ - private void addError(Throwable error) { - errors.add(error); - } - - /** - * Adds a failure to the table if {@code matcher} does not match - * {@code value}. Execution continues, but the test will fail at the end if - * the match fails. - */ - // private void checkThat(final T value, final Matcher matcher) { - // checkThat("", value, matcher); - // } - - /** - * Adds a failure with the given {@code reason} to the table if - * {@code matcher} does not match {@code value}. Execution continues, but - * the test will fail at the end if the match fails. - */ - - private void checkThat(final String reason, final T value, final Matcher matcher) { - if (getIsSkip()) - return; - hasError = false; - checkSucceeds(new Callable() { - public Object call() throws Exception { - assertThat(reason, value, matcher); - return value; - } - }); - } - - /** - * Adds to the table the exception, if any, thrown from {@code callable}. - * Execution continues, but the test will fail at the end if - * {@code callable} threw an exception. - */ - private Object checkSucceeds(Callable callable) { - try { - return callable.call(); - } catch (Throwable e) { - hasError = true; - addError(e); - return null; - } - } - - /** - * 验证传入的boolean值是否为true - * - * @param actual - */ - public void assertTrue(boolean actual) { - assertTrue(actual, ""); - } - - - /** - * 验证传入的boolean值是否为true - * - * @param actual - * @param message - */ - public void assertTrue(boolean actual, String message) { - String methodInfo = "assertTrue(" + String.valueOf(actual) + "," + message + ")"; - checkThat(message, actual, is(true)); - assertLog(methodInfo, message); - } - - /** - * 验证传入的boolean值是否为 false - * - * @param actual - */ - public void assertFalse(boolean actual) { - assertFalse(actual, ""); - } - - - /** - * 验证传入的boolean值是否为 false - * - * @param actual - * @param message - */ - public void assertFalse(boolean actual, String message) { - String methodInfo = "assertFalse(" + String.valueOf(actual) + "," + message + ")"; - checkThat(message, actual, is(false)); - assertLog(methodInfo, message); - } - - public void assertEqual(T actual, T expect) { - assertEqual(actual, expect, ""); - } - - - /** - * 验证传入实际值和期望值相等 - * - * @param - * @param actual - * @param expect - * @param message - */ - public void assertEqual(T actual, T expect, String message) { - String methodInfo = "assertEqual(" + String.valueOf(actual) + "," + String.valueOf(expect) + "," + message + ")"; - checkThat(message, actual, equalTo(expect)); - assertLog(methodInfo, String.valueOf(actual), String.valueOf(expect), message); - } - - /** - * 验证传入的字符串是否符合传入的正则表达式 - * - * @param actual - * @param regxp - */ - public void assertMatch(String actual, String regxp) { - assertMatch(actual, regxp, ""); - } - - - /** - * 验证传入的字符串是否符合传入的正则表达式 - * - * @param actual - * @param regxp - * @param message - */ - public void assertMatch(String actual, String regxp, String message) { - checkThat(message, actual.matches(regxp), is(true)); - String methodInfo = "assertMatch(" + String.valueOf(actual) + "," + String.valueOf(regxp) + "," + message + ")"; - assertLog(methodInfo, message); - - } - - /** - * 校验实际值是否包含期望值 - * @param actual 实际值 - * @param expect 期望值 - */ - public void assertContains(String actual, String expect) { - assertContains(actual, expect, ""); - } - - - /** - * 验证传入的字符串是否包含字符串 - * @param actual - * @param expect - * @param message - */ - public void assertContains(String actual, String expect, String message) { - checkThat(message, actual, is(containsString(expect))); - String methodInfo = "assertContains(" + String.valueOf(actual) + "," + String.valueOf(expect) + "," + message + ")"; - assertLog(methodInfo, message); - } - - - /** - * 验证传入的集合是包含指定对象 - * - * @param actual - */ - public void assertContains(Collection actual, T expect, String message) { - checkThat(message, actual, hasItem(expect)); - String methodInfo = "assertContains(" + String.valueOf(actual) + "," + String.valueOf(expect) + "," + message + ")"; - assertLog(methodInfo, message); - } - - /** - * 校验实际值对象是否存在于期望值的对象集合中 - * @param actual 实际值 - * @param expect 期望值 - * @param message 该断言的描述信息(类似备注功能) - * @remark 存在时,校验通过;不存在时,会自动截图,并记录错误信息 - * @Example collector.assertIn("abc", Arrays.asList("abc", "3", "rdf4", "被包含关系");//验证实际值对象存在于期望值的对象集合中 - */ - - /** - * 验证传入的对象不在集合中 - * - * @param actual 实际值 - * @param expect 期望值 - * @param message 该断言的描述信息(类似备注功能) - * @return - * @remark 不存在时,校验通过;存在时,会自动截图,并记录错误信息 - * @Example collector.assertOut(3, Arrays.asList(3, 5, 66, 8), "未被包含关系");//验证实际值对象不存在于期望值的对象集合中 - */ -// public void assertOut(T actual, Collection expect, String message) { -// checkThat(message, actual, not(isIn(expect))); -// String methodInfo = "assertOut(" + String.valueOf(actual) + "," + String.valueOf(expect) + "," + message + ")"; -// assertLog(methodInfo, message); -// } - /** - * 日志中输入期望值与实际值的assertEqual断言 - * 且把描述信息置为空 - * @param methodInfo - * @param actual - * @param expect - * @param message - */ - private void assertLog(String methodInfo,String actual, String expect, String message) { - if (getIsSkip()) - return; - //WebDriver driver = browser == null ? Browser.currentDriver : browser.driver; - // String stepTime = DateUtil.dateToStr(new Date(), "yyyyMMdd-HHmmss"); - if (hasError) { - String errorMessage = errors.get(errors.size() - 1).getMessage(); - errorMessage = HtmlUtils.htmlEscape(errorMessage); - LogModule.logStepFail(StepType.ASSERT, message, actual, expect, RunResult.FAIL, errorMessage, TestSuiteType.WEB_UI); - if (isBreak) { - throw new RuntimeException(errorMessage); - } - - } else { - LogModule.logStepPass(StepType.ASSERT, message, actual, expect, RunResult.PASS); - } - } - - /* - * 断言统一日志 - */ - private void assertLog(String methodInfo, String message) { - if (getIsSkip()) - return; - //WebDriver driver = browser == null ? Browser.currentDriver : browser.driver; - // String stepTime = DateUtil.dateToStr(new Date(), "yyyyMMdd-HHmmss"); - if (hasError) { - String errorMessage = errors.get(errors.size() - 1).getMessage(); - errorMessage = HtmlUtils.htmlEscape(errorMessage); - LogModule.logStepFail(StepType.ASSERT, methodInfo, RunResult.FAIL, errorMessage, TestSuiteType.WEB_UI); - if (isBreak) { - throw new RuntimeException(errorMessage); - } - - } else { - LogModule.logStepPass(StepType.ASSERT, methodInfo, RunResult.PASS); - } - } - - /** - * 通过设置该值,可以实现断言比较失败时,是否终止当前用例 - * @param isBreak true|false 是否终止当前用例执行 - * @Example - *
如果这个断言验证失败的话,就会终止当前用例的执行
- *
collector.setIsBreak(true);
- *
collector.assertTrue(browser.div("class=>booking").table("class=>tableinfo2").cell("text=>810.0(儿童)").exists(2), "儿童价格");
- */ - public void setIsBreak(Boolean isBreak) { - this.isBreak = isBreak; - } - - public Boolean getIsBreak() { - return isBreak; - } - - /** - * 执行失败日志 - * @param stepDesc 步骤的描述 - * @param failReason 失败的原因 - * @Example collector.logStepFail("订单编号校验", "编号不规范"); - */ - public void logStepFail(String stepDesc, String failReason) { - LogModule.logStepFail(StepType.CUSTOM, stepDesc, RunResult.FAIL, failReason, TestSuiteType.WEB_UI); - } - - /** - * 校验实际值是否为假 - * @param stepDesc 步骤的描述 - * @Example collector.logStepPass("订单编号校验"); - */ - public void logStepPass(String stepDesc) { - LogModule.logStepPass(StepType.CUSTOM, stepDesc, RunResult.PASS); - } - - // 跳过断言 - public Boolean getIsSkip() { - Boolean isSkip = !Boolean.valueOf(DriverService.PROPERTIES.getProperty("caseAssert")); - return isSkip; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/rules/ConcurrentExcutor.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/rules/ConcurrentExcutor.java deleted file mode 100644 index f5cdaaaa0f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/rules/ConcurrentExcutor.java +++ /dev/null @@ -1,116 +0,0 @@ -package network.platon.autotest.junit.rules; - -import java.util.List; -import java.util.concurrent.Callable; -import java.util.concurrent.ExecutionException; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.concurrent.Future; - -/** - * 并发处理器 适用于如下场景(举例): 一个任务队列, - * 有150个任务需要并发处理,使用此对象,可以每次并发执行20次(可设置),则总共串行执行8次并发,可获取执行结果 - * - * @param - * 类型T限制为任务Callable使用的 - */ -public class ConcurrentExcutor { - /** 非空,所有任务数组 */ - private Callable[] tasks; - - /** 非空,每次并发需要处理的任务数 */ - private int numb; - - /** - * 可选,存放返回结果,这里有个限制 T必须为Callable返回的类型T - */ - private List result; - - /** - * 无参构造 - */ - public ConcurrentExcutor() { - super(); - } - - /** - * 不需要返回结果的任务用此创建对象 - * - * @param tasks - * @param numb - */ - public ConcurrentExcutor(Callable[] tasks, int numb) { - super(); - this.tasks = tasks; - this.numb = numb; - } - - /** - * 需要结果集用此方法创建对象 - * - * @param tasks - * @param numb - * @param result - */ - public ConcurrentExcutor(Callable[] tasks, int numb, List result) { - super(); - this.tasks = tasks; - this.numb = numb; - this.result = result; - } - - public void excute() { - // 参数校验 - if (tasks == null || numb < 1) { - return; - } - - // 待处理的任务数 - int num = tasks.length; - if (num == 0) { - return; - } - - // 第一层循环,每numb条数据作为一次并发 - for (int i = 0; i < (int) Math.floor(num / numb) + 1; i++) { - // 用于记录此次numb条任务的处理结果 - Future[] futureArray; - if (numb > num) { - futureArray = new Future[num]; - } else { - futureArray = new Future[numb]; - } - // 创建线程容器 - ExecutorService es = Executors.newCachedThreadPool(); - - // 第二层循环,针对这numb条数据进行处理 - for (int j = i * numb; j < (i + 1) * numb; j++) { - // 如果超出数组长度,退出循环 - if (j + 1 > num) { - break; - } - // 执行任务,并设置Future到数组中 - futureArray[j % numb] = es.submit(tasks[j]); - } - - // 将结果放入result中 - if (result != null) { - for (int j = 0; j < futureArray.length; j++) { - try { - if (futureArray[j] != null) { - Object o = futureArray[j].get(); - result.add((T) o); - } - } catch (InterruptedException e) { - System.out.println("处理Future时发生InterruptedException异常,目标Future为: " + futureArray[j].toString()); - e.printStackTrace(); - } catch (ExecutionException e) { - System.out.println("处理Future时发生ExecutionException异常,目标Future为: " + futureArray[j].toString()); - e.printStackTrace(); - } - } - } - es.shutdown(); - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/rules/DriverBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/rules/DriverBase.java deleted file mode 100644 index d31157dd73..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/rules/DriverBase.java +++ /dev/null @@ -1,11 +0,0 @@ -package network.platon.autotest.junit.rules; - -import org.junit.Rule; - -public class DriverBase { - @Rule - public static DriverService driverService = new DriverService(); - - @Rule - public static AssertCollector collector = new AssertCollector(); -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/rules/DriverService.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/rules/DriverService.java deleted file mode 100644 index b3844bdf0f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/junit/rules/DriverService.java +++ /dev/null @@ -1,231 +0,0 @@ -package network.platon.autotest.junit.rules; - -import java.util.*; - -import lombok.extern.slf4j.Slf4j; -import network.platon.autotest.junit.modules.CaseInfo; -import network.platon.autotest.junit.modules.ModuleInfo; -import network.platon.autotest.junit.modules.SuiteInfo; -import org.junit.rules.TestRule; -import org.junit.runner.Description; -import org.junit.runners.model.MultipleFailureException; -import org.junit.runners.model.Statement; -import network.platon.autotest.exception.StepException; -import network.platon.autotest.junit.core.DriverModule; -import network.platon.autotest.junit.core.LogModule; -import network.platon.autotest.junit.core.PlanObserver; -import network.platon.autotest.junit.core.SuiteObserver; -import network.platon.autotest.junit.enums.RunResult; -import network.platon.autotest.junit.enums.RunStatus; -import network.platon.autotest.junit.enums.StepType; -import network.platon.autotest.junit.log.DatabaseLog; -import network.platon.autotest.junit.log.LocalFileLog; -import network.platon.autotest.utils.FileUtil; - -/** - * 框架测试驱动 - * - * @author qcxiao - */ -@Slf4j -public class DriverService implements TestRule { - public static String PLAN_VM_CONTENT = "\n\n#foreach ($!moduleInfo in $!suiteInfo.moduleInfoList)\n\n#foreach ($caseInfo in $moduleInfo.caseInfoList)\n \n\n#end\n \n#end\n"; - /** - * 系统参数和test.properties文件中的值 - */ - public static Properties PROPERTIES = FileUtil.getProperties(); - public static String ENCODE = PROPERTIES.getProperty("encode") == null ? "utf-8" : PROPERTIES.getProperty("encode"); - /** - * 资源文件中的键值匹配对信息,即对应properties文件中的值 - */ - public static Map> PROPERTIES_MAP = new HashMap<>(); - public static Description DESCRIPTION = null; - public static Statement STATEMENT = null; - /** - * 是否合并所有类的测试报告 - * System.getProperty获取的是JVM运行时的参数,因此需要在maven执行时对其进行赋值 - */ - public static Boolean SUITE_MERGED = Boolean.valueOf(System.getProperty("suiteMerged") == null ? "false" : System.getProperty("suiteMerged").toLowerCase()); - - /** - * 获取用例在数据池中对应的参数信息 - * - * @Example driverService.param; - */ - public Map param = new HashMap<>(); - /** - * 配置文件参数 - * - * @Example
driverService.propertiesMap;
- *
driverService.propertiesMap;
- */ - public Map> propertiesMap = new HashMap<>(); - private List errors = new ArrayList<>(); - // 观察者模式 - private DriverModule driverModule = DriverModule.getInstance(); - - @Override - public Statement apply(final Statement base, final Description des) { - return new Statement() { - @Override - public void evaluate() throws Throwable { - DESCRIPTION = des; - STATEMENT = base; - /** - * 两种情况: 1、合并报告:suiteName就为Project属性值;判断是否初始进入本项目,如果是则执行, - * 执行过程中会去收集target\test-classes目录下的所有符合条件类与符合条件方法 - * 2、不合并报告:suiteName就为上次运行的类名 - * ;判断是否初始进入本项目,如果是则执行,如果当前执行类与上次执行类不一致时也执行; - */ -// if (LogModule.SUITE_INFO.getSuiteName() == null || !(SUITE_MERGED || des.getTestClass().getSimpleName().equals(LogModule.SUITE_INFO.getSuiteName()))) { - if (LogModule.SUITE_INFO.getSuiteName() == null || !(SUITE_MERGED || des.getTestClass().getName().equals(LogModule.SUITE_INFO.getSuiteName()))) { - // 后续可以传入suite集合的上一层 - Properties props = System.getProperties(); - if (System.getProperty("website") == null || System.getProperty("website").trim().equals("")) { - props.remove("website"); - } - if (System.getProperty("casePriority") == null || System.getProperty("casePriority").trim().equals("")) { - props.remove("casePriority"); - } - System.setProperties(props); - PROPERTIES.putAll(System.getProperties()); - driverModule.detachAll(); - driverModule.attach(new SuiteObserver()); - driverModule.attach(new PlanObserver()); - if (PROPERTIES.getProperty("logType") != null) { - if (PROPERTIES.getProperty("logType").toUpperCase().equals("ALL")) { - driverModule.attach(new DatabaseLog()); - driverModule.attach(new LocalFileLog()); - } else if (PROPERTIES.getProperty("logType").toUpperCase().equals("DATABASE")) { - driverModule.attach(new DatabaseLog()); - } else { - driverModule.attach(new LocalFileLog()); - } - } else { - driverModule.attach(new LocalFileLog()); - } - LogModule.SUITE_INFO = new SuiteInfo(); - driverModule.suiteRunStart(LogModule.SUITE_INFO); - } - for (ModuleInfo planedModuleInfo : LogModule.SUITE_INFO.getModuleInfoList()) { -// if (planedModuleInfo.getModuleName().equals(des.getTestClass().getSimpleName() + "." + des.getMethodName())) { - if (planedModuleInfo.getModuleName().equals(des.getTestClass().getName() + "." + des.getMethodName())) { - LogModule.MODULE_INFO = new ModuleInfo(); - driverModule.moduleRunStart(LogModule.MODULE_INFO); - List caseInfoList = LogModule.MODULE_INFO.getCaseInfoList(); - List caseInfoListUnrun = new ArrayList(); - // 清除module信息,以及新增新module信息 - for (int i = 0; i < caseInfoList.size(); i++) { - CaseInfo caseInfo = caseInfoList.get(i); - // 判断用例是否设置了要执行且用例中的用例级别是否为空或配置文件即PROPERTIES的用例级别是否或配置文件中的用例级别是否包含用例里的设置的用例级别 - //if (caseInfo.getCaseRun() && (caseInfo.getCasePriority() == null || PROPERTIES.getProperty("casePriority") == null || PROPERTIES.getProperty("casePriority").trim().equals("") || PROPERTIES.getProperty("casePriority").toLowerCase().contains(caseInfo.getCasePriority().toLowerCase()))) { - if (!caseInfo.getCaseRun()) { - System.out.println("测试用例(" + caseInfo.getCaseName() + ")被设置成不执行。"); - caseInfoListUnrun.add(caseInfo); - continue; - } - if ((null == PROPERTIES.getProperty("casePriority") - || "".equals(PROPERTIES.getProperty("casePriority").trim())) - || ((null != caseInfo.getCasePriority() && (null != PROPERTIES.getProperty("casePriority") - || "".equals(PROPERTIES.getProperty("casePriority").trim()))) - && Arrays.asList(PROPERTIES.getProperty("casePriority").toLowerCase().split(",")).contains(caseInfo.getCasePriority().toLowerCase()))) { - - LogModule.CASE_INFO = caseInfo; - driverModule.caseRunStart(LogModule.CASE_INFO); - param = caseInfo.getCaseParams(); - propertiesMap = DriverService.PROPERTIES_MAP; - assertConfig(param); - try { - driverModule.initialData(LogModule.CASE_INFO); - base.evaluate(); - } catch (StepException e) { - String error = "测试用例( " + param.get("caseName") + " )执行失败! \n"; - errors.add(new Throwable(error, e)); - } catch (RuntimeException e) { - String error = "测试用例( " + param.get("caseName") + " )执行失败! \n"; -// LogModule.logStepFail(StepType.CUSTOM, errorMessage(e) + "语句执行错误", RunResult.FAIL, "出错原因为" + e.getClass().getSimpleName() + ":" + e.getMessage() + "!"); - LogModule.logStepFail(StepType.CUSTOM, errorMessage(e) + "语句执行错误", RunResult.FAIL, "出错原因为" + e.getClass().getName() + ":" + e.getMessage() + "!"); - errors.add(new Throwable(error, e)); - } finally { - // 后期如有需求,才对数据销毁做处理 - driverModule.caseRunStop(LogModule.CASE_INFO); - // 重跑失败 - if (caseInfo.getCaseResult().equals(RunResult.FAIL) && caseInfo.getCaseRerunNum() >= 0) { - i--; - } - if (caseInfo.getCaseRunNum() > 0) { - i--; - } - } - } else { - System.out.println("测试用例(" + caseInfo.getCaseName() + ")被设置成不执行。"); - caseInfoListUnrun.add(caseInfo); - } - } - List caseInfoListRuned = LogModule.MODULE_INFO.getCaseInfoList(); - for (CaseInfo caseInfo : caseInfoListUnrun) { - caseInfoListRuned.remove(caseInfo); - } - LogModule.MODULE_INFO.setCaseInfoList(caseInfoListRuned); - driverModule.moduleRunStop(LogModule.MODULE_INFO); - /* - * 判断套件中的模块是否全部执行完成 - */ - Boolean suiteRunCompleted = true; - for (ModuleInfo moduleInfo : LogModule.SUITE_INFO.getModuleInfoList()) { - if (moduleInfo.getModuleStatus() != RunStatus.COMPLETED) { - suiteRunCompleted = false; -// log.info("-----------" + moduleInfo.getModuleName()); -// log.info("-----------" + moduleInfo.getModuleStatus()); - break; - } - } - if (suiteRunCompleted) { - driverModule.suiteRunStop(LogModule.SUITE_INFO); - MultipleFailureException.assertEmpty(errors); - break; - } - } - } - } - - }; - } - - private String errorMessage(RuntimeException e) { - String message = ""; - for (StackTraceElement ee : e.getStackTrace()) { - message = message + ee.toString() + "\n"; - if (ee.toString().contains("network.platon.")) { - break; - } - } - return message; - } - - /** - * 配置是否执行断言 - * - * @param param - */ - private void assertConfig(Map param) { - // test.properties与website.properties都没有配置caseAssert默认为true - //PROPERTIES表示test.properties中的内容,param表示website.properties中的内容 - //只要param中的caseAssert为N,此用例一定不执行 - if (param.get("caseAssert") != null && param.get("caseAssert").trim().equals("N")) { - PROPERTIES.put("caseAssert", "false"); - return; - } - //param中的caseAssert不为Y,PROPERTIES中的caseAssert为N或false,此用例也不执行 - else if (param.get("caseAssert") != null - && !param.get("caseAssert").trim().equals("Y") - && PROPERTIES.get("caseAssert") != null - && (PROPERTIES.get("caseAssert").toString().trim().equals("N") - || PROPERTIES.get("caseAssert").toString().trim().equals("false"))) { - PROPERTIES.put("caseAssert", "false"); - return; - } else { - PROPERTIES.put("caseAssert", "true"); - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/ClassUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/ClassUtil.java deleted file mode 100644 index 079dcb6882..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/ClassUtil.java +++ /dev/null @@ -1,358 +0,0 @@ -package network.platon.autotest.utils; - -/** - * @Title: Classutil.java - * @Package network.platon.autotest.utils - * @Description: TODO(用一句话描述该文件做什么) - * @author qcxiao - * @date 2013-9-18 下午02:20:50 - */ - -import java.io.ByteArrayOutputStream; -import java.io.File; -import java.io.FileFilter; -import java.io.FileInputStream; -import java.io.IOException; -import java.net.JarURLConnection; -import java.net.URL; -import java.net.URLDecoder; -import java.util.*; -import java.util.jar.JarEntry; -import java.util.jar.JarFile; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -public class ClassUtil { - private static final Log log = LogFactory.getLog(ClassUtil.class); - @SuppressWarnings("unused") - private static String classPath = ""; - - public static void main(String[] args) throws Exception { - getClasses("D:\\workspaces\\contracts_workspaces\\PlatON-Go\\cases\\ContractsAutoTests\\target\\test-classes\\"); - } - - public static Set> getClasses(String path) throws IOException { - classPath = new StringBuffer().append(path).toString(); - // 第一个class类的集合 - Set> classes = new LinkedHashSet>(); - findAndAddClassesInPath(path, classes); - return classes; - } - - public static void findAndAddClassesInPath(String Path, Set> classes) throws IOException { - // 获取此包的目录 建立一个File - File dir = new File(Path); - // 如果不存在或者 也不是目录就直接返回 - if (!dir.exists() || !dir.isDirectory()) { - return; - } - // 如果存在 就获取包下的所有文件 包括目录 - File[] dirfiles = dir.listFiles(new FileFilter() { - // 自定义过滤规则 如果可以循环(包含子目录) 或则是以.class结尾的文件(编译好的java类文件) - public boolean accept(File file) { - return (file.isDirectory()) || (file.getName().endsWith(".class")); - } - }); - // 循环所有文件 - for (File file : dirfiles) { - // 如果是目录 则继续扫描 - if (file.isDirectory()) { - findAndAddClassesInPath(file.getAbsolutePath(), classes); - } else { - // 如果是java类文件 去掉后面的.class 只留下类名 - // String className = file.getAbsolutePath().replace(classPath, - // "").replace("\\", ".").replace(".class", ""); - - FileInputStream classIs = new FileInputStream(file); - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - byte buf[] = new byte[4]; - // 读取文件流 - for (int i = 0; (i = classIs.read(buf)) != -1;) { - baos.write(buf, 0, i); - } - // 创建新的类对象 - byte[] data = baos.toByteArray(); - String className = classNameAnalyzer(data); - // String className = file.getName().substring(0, - // file.getName().length() - 6); - try { - // 添加到集合中去 - // classes.add(Class.forName(packageName + '.' + - // className)); - classes.add(Class.forName(className)); - } catch (ClassNotFoundException e) { - log.error("添加用户自定义视图类错误 找不到此类的.class文件"); - e.printStackTrace(); - } - } - } - } - - public static String classNameAnalyzer(byte[] data) { - // 常量索引 - HashMap constIndex = new HashMap(); - - // UTF-8 -8 string 索引 - HashMap stringIndex = new HashMap(); - - // 常量池解析 - short dataIndex = 10; - byte constType = data[dataIndex]; - for (short index = 1; index < getShort(new byte[] { data[8], data[9] }, false); index++) - switch (constType) { - case 1: // UTF-8 string 常量 - short d = getShort(new byte[] { data[dataIndex + 1], data[dataIndex + 2] }, false); - stringIndex.put(index, new String(data, dataIndex + 3, d)); - dataIndex += d + 3; - constType = data[dataIndex]; - break; - case 3 : // integer 常量 - dataIndex += 5; - constType = data[dataIndex]; - break; - case 4: // flat 常量 - dataIndex += 5; - constType = data[dataIndex]; - break; - case 5: // long 常量 - index++; - dataIndex += 9; - constType = data[dataIndex]; - break; - case 6: // double 常量 - index++; - dataIndex += 9; - constType = data[dataIndex]; - break; - case 7: // class or interface reference - constIndex.put(index, getShort(new byte[] { data[dataIndex + 1], data[dataIndex + 2] }, false)); - dataIndex += 3; - constType = data[dataIndex]; - break; - case 8: // string 常量 - constIndex.put(index, getShort(new byte[] { data[dataIndex + 1], data[dataIndex + 2] }, false)); - dataIndex += 3; - constType = data[dataIndex]; - break; - case 9: // field reference - dataIndex += 5; - constType = data[dataIndex]; - break; - case 10: // method reference - dataIndex += 5; - constType = data[dataIndex]; - break; - case 11: // interface method reference - dataIndex += 5; - constType = data[dataIndex]; - break; - case 12: // name and type reference - dataIndex += 5; - constType = data[dataIndex]; - break; - case 15: // MethodHandle - dataIndex += 4; - constType = data[dataIndex]; - break; - case 16: // MethodType - dataIndex += 4; - constType = data[dataIndex]; - break; - case 18: // InvokeDynamic - dataIndex += 5; - constType = data[dataIndex]; - break; - - default: - throw new RuntimeException("Invalid constant pool flag: " + constType); - } - - // 获取当前class的全限定名索引 - Short indexOfThisClass = getShort(new byte[] { data[dataIndex + 2], data[dataIndex + 3] }, false); - - if (!constIndex.containsKey(indexOfThisClass)) { - throw new RuntimeException("class文件解析错误,获取当前类全限定名index错误"); - } - - // 获取当前class的全限定名String索引 - short resultIndex = constIndex.get(indexOfThisClass); - if (!stringIndex.containsKey(resultIndex)) { - throw new RuntimeException("class文件解析错误,,获取当前类全限定名Stringindex错误"); - } - - return stringIndex.get(resultIndex).replace("/", "."); - } - - public static short getShort(byte[] buf, boolean asc) - - { - if (buf == null) { - throw new IllegalArgumentException("byte array is null!"); - } - if (buf.length > 2) { - throw new IllegalArgumentException("byte array size > 2 !"); - } - short r = 0; - if (asc) - for (int i = buf.length - 1; i >= 0; i--) { - r <<= 8; - r |= (buf[i] & 0x00ff); - } - else - for (int i = 0; i < buf.length; i++) { - r <<= 8; - r |= (buf[i] & 0x00ff); - } - return r; - - } - - /* - * 取得某一类所在包的所有类名 不含迭代 - */ - public static String[] getPackageAllClassName(String classLocation, String packageName) { - // 将packageName分解 - String[] packagePathSplit = packageName.split("[.]"); - String realClassLocation = classLocation; - int packageLength = packagePathSplit.length; - for (int i = 0; i < packageLength; i++) { - realClassLocation = realClassLocation + File.separator + packagePathSplit[i]; - } - File packeageDir = new File(realClassLocation); - if (packeageDir.isDirectory()) { - String[] allClassName = packeageDir.list(); - return allClassName; - } - return null; - } - - /** - * 从包package中获取所有的Class - * - * @param pack - * @return - */ - public static Set> getClasses(Package pack) { - - // 第一个class类的集合 - Set> classes = new LinkedHashSet>(); - // 是否循环迭代 - boolean recursive = true; - // 获取包的名字 并进行替换 - String packageName = pack.getName(); - String packageDirName = packageName.replace('.', '/'); - // 定义一个枚举的集合 并进行循环来处理这个目录下的things - Enumeration dirs; - try { - dirs = Thread.currentThread().getContextClassLoader().getResources(packageDirName); - // 循环迭代下去 - // while (dirs.hasMoreElements()) { - // 获取下一个元素 - URL url = dirs.nextElement();// 暂时只取第一个 - // 得到协议的名称 - String protocol = url.getProtocol(); - // 如果是以文件的形式保存在服务器上 - if ("file".equals(protocol)) { - // 获取包的物理路径 - String filePath = URLDecoder.decode(url.getFile(), "UTF-8"); - // 以文件的方式扫描整个包下的文件 并添加到集合中 - findAndAddClassesInPackageByFile(packageName, filePath, recursive, classes); - } else if ("jar".equals(protocol)) { - // 如果是jar包文件 - // 定义一个JarFile - JarFile jar; - try { - // 获取jar - jar = ((JarURLConnection) url.openConnection()).getJarFile(); - // 从此jar包 得到一个枚举类 - Enumeration entries = jar.entries(); - // 同样的进行循环迭代 - while (entries.hasMoreElements()) { - // 获取jar里的一个实体 可以是目录 和一些jar包里的其他文件 如META-INF等文件 - JarEntry entry = entries.nextElement(); - String name = entry.getName(); - // 如果是以/开头的 - if (name.charAt(0) == '/') { - // 获取后面的字符串 - name = name.substring(1); - } - // 如果前半部分和定义的包名相同 - if (name.startsWith(packageDirName)) { - int idx = name.lastIndexOf('/'); - // 如果以"/"结尾 是一个包 - if (idx != -1) { - // 获取包名 把"/"替换成"." - packageName = name.substring(0, idx).replace('/', '.'); - } - // 如果可以迭代下去 并且是一个包 - if ((idx != -1) || recursive) { - // 如果是一个.class文件 而且不是目录 - if (name.endsWith(".class") && !entry.isDirectory()) { - // 去掉后面的".class" 获取真正的类名 - String className = name.substring(packageName.length() + 1, name.length() - 6); - try { - // 添加到classes - classes.add(Class.forName(packageName + '.' + className)); - } catch (ClassNotFoundException e) { - log.error("添加用户自定义视图类错误 找不到此类的.class文件"); - e.printStackTrace(); - } - } - } - } - } - } catch (IOException e) { - log.error("在扫描用户定义视图时从jar包获取文件出错"); - e.printStackTrace(); - } - } - // } - } catch (IOException e) { - e.printStackTrace(); - } - - return classes; - } - - /** - * 以文件的形式来获取包下的所有Class - * - * @param packageName - * @param packagePath - * @param recursive - * @param classes - */ - public static void findAndAddClassesInPackageByFile(String packageName, String packagePath, final boolean recursive, Set> classes) { - // 获取此包的目录 建立一个File - File dir = new File(packagePath); - // 如果不存在或者 也不是目录就直接返回 - if (!dir.exists() || !dir.isDirectory()) { - log.warn("用户定义包名 " + packageName + " 下没有任何文件"); - return; - } - // 如果存在 就获取包下的所有文件 包括目录 - File[] dirfiles = dir.listFiles(new FileFilter() { - // 自定义过滤规则 如果可以循环(包含子目录) 或则是以.class结尾的文件(编译好的java类文件) - public boolean accept(File file) { - return (recursive && file.isDirectory()) || (file.getName().endsWith(".class")); - } - }); - // 循环所有文件 - for (File file : dirfiles) { - // 如果是目录 则继续扫描 - if (file.isDirectory()) { - findAndAddClassesInPackageByFile(packageName + "." + file.getName(), file.getAbsolutePath(), recursive, classes); - } else { - // 如果是java类文件 去掉后面的.class 只留下类名 - String className = file.getName().substring(0, file.getName().length() - 6); - try { - // 添加到集合中去 - classes.add(Class.forName(packageName + '.' + className)); - } catch (ClassNotFoundException e) { - log.error("添加用户自定义视图类错误 找不到此类的.class文件"); - e.printStackTrace(); - } - } - } - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/CommandUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/CommandUtil.java deleted file mode 100644 index 3ab9afad9c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/CommandUtil.java +++ /dev/null @@ -1,20 +0,0 @@ -package network.platon.autotest.utils; - -import java.io.IOException; - -public class CommandUtil { - public static void excuteCommand(String command){ - try { - Runtime.getRuntime().exec(command); - } catch (IOException e) { - e.printStackTrace(); - } - } - public static void excuteSwipCommand(){ - try { - Runtime.getRuntime().exec("adb -s 48621121 shell input swipe 300 200 10 200"); - } catch (IOException e) { - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/CommonUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/CommonUtil.java deleted file mode 100644 index 1d1450a348..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/CommonUtil.java +++ /dev/null @@ -1,128 +0,0 @@ -package network.platon.autotest.utils; - -import java.util.Calendar; -import java.util.Random; - -/** - * @Title: CommonUtil.java - * @Package network.platon.autotest.utils - * @Description: TODO(用一句话描述该文件做什么) - * @author qcxiao - * @date 2013-9-24 下午11:10:31 - */ -public class CommonUtil { - - /** - * 指定时间内等待条件为真 - * - * @param condition - * 条件 - * @param s - * 等待时间,秒为单位 - * @return 等待是否成功 - */ - private static Boolean waitUntil(Boolean condition, int s) { - Calendar now = Calendar.getInstance(); - Calendar end = (Calendar) now.clone(); - end.add(Calendar.SECOND, s); - while (!condition && now.before(end)) { - try { - Thread.sleep(500); - } catch (InterruptedException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - now = Calendar.getInstance(); - } - return condition; - } - - /** - * 指定时间内等待条件为真,默认60s - * - * @param condition - * 条件 - * @return 等待是否成功 - */ - @SuppressWarnings("unused") - private static Boolean waitUntil(Boolean condition) { - return waitUntil(condition, 60); - } - - public static void main(String args[]) { - System.out.println(Calendar.getInstance().toString()); - if (waitUntil(1 == 0, 5)) { - System.out.println("true"); - } else { - System.out.println("false"); - } - System.out.println(Calendar.getInstance().toString()); - } - - /** - * 生成指定长度的随机数,包含字母与数字 - * @param length - * @return 随机数与字符 - * @Example CommonUtil.getRandomCharacterAndNumber(8); - */ - public static String getRandomCharacterAndNumber(int length) { - String val = ""; - - Random random = new Random(); - for (int i = 0; i < length; i++) { - String charOrNum = random.nextInt(2) % 2 == 0 ? "char" : "num"; // 输出字母还是数字 - - if ("char".equalsIgnoreCase(charOrNum)) // 字符串 - { - int choice = random.nextInt(2) % 2 == 0 ? 65 : 97; // 取得大写字母还是小写字母 - val += (char) (choice + random.nextInt(26)); - } else if ("num".equalsIgnoreCase(charOrNum)) // 数字 - { - val += String.valueOf(random.nextInt(10)); - } - } - - return val; - } - - /** - * 生成指定长度的字母随机数 - * @param length - * @return 随机字符 - * @Example - * CommonUtil.getRandomCharacter(8); - */ - public static String getRandomCharacter(int length) { - String val = ""; - - Random random = new Random(); - for (int i = 0; i < length; i++) { - int choice = random.nextInt(2) % 2 == 0 ? 65 : 97; // 取得大写字母还是小写字母 - val += (char) (choice + random.nextInt(26)); - } - - return val; - } - - /** - * 生成指定长度的数字随机数 - * @param length - * @return 随机数 - * @Example - * CommonUtil.getRandomNumber(8); - */ - public static String getRandomNumber(int length) { - String val = ""; - Random random = new Random(); - for (int i = 0; i < length; i++) { - val += String.valueOf(random.nextInt(10)); - } - - return val; - } - public static Integer getRandomForMax(int value){ - Random random = new Random(); - int val = random.nextInt(value); - return val == 0 ? 1 : val; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/DataUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/DataUtil.java deleted file mode 100644 index f42206d75e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/DataUtil.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.autotest.utils; - -import java.text.NumberFormat; - -/** - * 数据处理工具类 - * - * @author qcxiao - * - */ -public class DataUtil { - /** - * 四舍五入,并保留多少位小数 - * @param v 参数为double类型 - * @param scale - * @return 返回值为String类型 - */ - public static String round(double value, Integer max) { - return roundObject(value,max); - } - public static String roundObject(double value, Integer max) { - NumberFormat nf = NumberFormat.getInstance(); - nf.setMaximumFractionDigits(max); - nf.setMinimumFractionDigits(max); - nf.setGroupingUsed(false); - return nf.format(value); - } - /** - * 四舍五入,并保留多少位小数 - * @param v 参数为String类型 - * @param scale - * @return 返回值为String类型 - */ - public static String round(String value, Integer max) { - return roundObject(Double.parseDouble(value),max); - } - /** - * 四舍五入,并保留多少位小数 - * @param v 参数为double类型 - * @param scale - * @return 返回值为Double类型 - */ - public static Double round(double value, int max) { - return Double.parseDouble(roundObject(value,max)); - } - /** - * 四舍五入,并保留多少位小数 - * @param v 参数为String类型 - * @param scale - * @return 返回值为Double类型 - */ - public static Double round(String value, int max) { - return Double.parseDouble(roundObject(Double.parseDouble(value),max)); - } - public static void main(String[] args) { - System.out.println(round(12.0036,Integer.valueOf(3))); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/DateUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/DateUtil.java deleted file mode 100644 index 1175817cd2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/DateUtil.java +++ /dev/null @@ -1,247 +0,0 @@ -package network.platon.autotest.utils; - -import java.text.DateFormat; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.GregorianCalendar; -import java.util.Locale; - -/** - * @author qcxiao - * @Description: 日期操作工具 - */ -public class DateUtil { - /** - * 日期转换成指定格式的字符串(默认格式为yyyy-MM-dd HH:mm:ss.SSS) - * @param date 日期 - * @param pattern 格式 - * @return 字符串格式的日期 - * @Example - * DateUtil.dateToStr(new GregorianCalendar().getTime(),"yyyy-MM-dd");//2013-11-15 - */ - public static String dateToStr(Date date, String pattern) { - return dateToStr(date, pattern, Locale.CHINA); - } - - /** - * 日期转换成指定格式的字符串(默认格式为yyyy-MM-dd HH:mm:ss.SSS) - * @param date Date date, 日期; - * @param pattern String pattern,格式; - * @param locale Locale locale,区域语言; - * @return 字符串格式的日期 - * dateToStr(new Date(), "ddMMM", Locale.ENGLISH);//29Nov - */ - public static String dateToStr(Date date, String pattern, Locale locale) { - if (pattern == null) { - pattern = "yyyy-MM-dd HH:mm:ss.SSS"; - } - DateFormat ymdhmsFormat = new SimpleDateFormat(pattern, locale); - - return ymdhmsFormat.format(date); - } - - /** - * 字符串转为Date对象(默认格式为yyyy-MM-dd HH:mm:ss.SSS) - * @param str 字符串 - * @param pattern 格式 - * @return - * @throws ParseException - * @Example - * DateUtil.strToDate("2013-11-15","yyyy-MM-dd");//Fri Nov 15 00:00:00 CST 2013 - */ - public static Date strToDate(String str, String pattern) throws ParseException { - return strToDate(str, pattern, Locale.CHINA); - } - - /** - * 指定格式的字符串转换成日期(默认格式为yyyy-MM-dd HH:mm:ss.SSS) - * @param str 字符串 - * @param pattern 格式 - * @param locale 区域语言 - * @return - * @throws ParseException - * @Example DateUtil.strToDate("15OCT2013", "ddMMMyyyy", Locale.ENGLISH);//Tue Oct 15 00:00:00 CST 2013 - */ - public static Date strToDate(String str, String pattern, Locale locale) throws ParseException { - if (pattern == null) { - pattern = "yyyy-MM-dd HH:mm:ss.SSS"; - } - DateFormat ymdhmsFormat = new SimpleDateFormat(pattern, locale); - return ymdhmsFormat.parse(str); - } - - /** - * 得到当天的日期 - * @return Date - * @Example - * DateUtil.getToday();//Fri Nov 15 16:41:05 CST 2013 - */ - public static Date getToday() { - Calendar ca = Calendar.getInstance(); - return ca.getTime(); - } - - /** - * 生成日期 - * @param year - * @param month - * @param date - * @return Date - */ - public static Date mkDate(int year, int month, int date) { - Calendar ca = Calendar.getInstance(); - ca.set(year, month - 1, date); - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); - sdf.format(ca.getTime()); - return ca.getTime(); - } - - /** - * get GMT Time - * - * @param calendar - * @return - */ - public Date getGmtDate(Long time) { - Calendar calendar = Calendar.getInstance(); - calendar.setTimeInMillis(time); - int offset = calendar.get(Calendar.ZONE_OFFSET) / 3600000 + calendar.get(Calendar.DST_OFFSET) / 3600000; - calendar.add(Calendar.HOUR, -offset); - Date date = calendar.getTime(); - return date; - } - - /** - * 得到指定间隔天数的日期 - * @param interval 间隔数 - * @param format 格式 - * @return String 字符串格式的日期 - * @Example - *
DateUtil.getSpecifyDate(2,"yyyy-MM-dd");//两天后的日期
- *
DateUtil.getSpecifyDate(-2,"yyyy-MM-dd");//两天前的日期
- */ - public static String getSpecifyDate(int interval, String format) { - return getSpecifyDate(interval, format, Locale.CHINA); - } - - /** - * 得到指定间隔天数的日期 - * @param interval 间隔数 - * @param format 格式 - * @param locale 区域语言 - * @return String 字符串格式的日期 - * @Example - *
getSpecifyDate(2, "ddMMM", Locale.ENGLISH);//两天后的日期:01Dec
- *
getSpecifyDate(-2, "ddMMM", Locale.ENGLISH);//两天前的日期:27Nov
- */ - public static String getSpecifyDate(int interval, String format, Locale locale) { - - Calendar cal = new GregorianCalendar(); - cal.add(Calendar.DATE, interval); - return dateToStr(cal.getTime(), format, locale); - } - - /** - * 得到指定间隔月数的日期 - * @param interval 间隔数 - * @param format 间隔数 - * @return String 字符串格式的日期 - * @Example - *
DateUtil.getSpecifyMonth(2,"yyyy-MM-dd");//两个月后的日期
- *
DateUtil.getSpecifyMonth(-2,"yyyy-MM-dd");//两个月前的日期
- */ - public static String getSpecifyMonth(int interval, String format) { - return getSpecifyMonth(interval, format, Locale.CHINA); - } - - /** - * 得到指定间隔月数的日期 - * @param interval 间隔数 - * @param format 间隔数 - * @return String 字符串格式的日期 - * @param locale 区域语言 - * @Example - *
getSpecifyMonth(2, "ddMMM", Locale.ENGLISH);//两个月后的日期:29Jan
- *
getSpecifyMonth(-2, "ddMMM", Locale.ENGLISH);//两个月前的日期:29Sep
- */ - public static String getSpecifyMonth(int interval, String format, Locale locale) { - Calendar cal = new GregorianCalendar(); - cal.add(Calendar.MONTH, interval); - return dateToStr(cal.getTime(), format, locale); - } - - /** - * 得到指定间隔年数的日期 - * @param interval 间隔数 - * @param format 格式 - * @return 字符串格式的日期 - * @Example - *
getSpecifyYear(2, "ddMMMyyyy");//两年后的日期
- *
getSpecifyYear(-2, "ddMMMyyyy");//两年前的日期
- */ - public static String getSpecifyYear(int interval, String format) { - return getSpecifyYear(interval, format, Locale.CHINA); - } - - /** - * 得到指定间隔年数的日期 - * @param interval 间隔数 - * @param format 格式 - * @param locale 区域语言 - * @return 字符串格式的日期 - * @Example - *
getSpecifyYear(2, "ddMMMyyyy", Locale.ENGLISH);//两年后的日期:29Nov2015
- *
getSpecifyYear(-2, "ddMMMyyyy", Locale.ENGLISH);//两年前的日期:29Nov2011
- */ - public static String getSpecifyYear(int interval, String format, Locale locale) { - Calendar cal = new GregorianCalendar(); - cal.add(Calendar.YEAR, interval); - return dateToStr(cal.getTime(), format, locale); - } - /** - * 得到指定日期间隔天数的日期 - * @param date 指定字符串格式的日期 - * @param interval 间隔数 - * @param format 格式 - * @return 字符串格式的日期 - * @Example - * getSpecifyDate("2014-09-09",3,"yyyy-MM-dd"); - */ - public static String getSpecifyDate(String date, int interval, String format) { - return getSpecifyDate(date, interval, format, Locale.CHINA); - } - public static String getSpecifyDate(String date, int interval, String format, Locale locale) { - - Date d = null; - try { - d = strToDate(date,"yyyy-MM-dd"); - } catch (ParseException e) { - e.printStackTrace(); - } - Calendar cal = new GregorianCalendar(); - cal.setTime(d); - cal.add(Calendar.DATE, interval); - return dateToStr(cal.getTime(), format, locale); - } - - public static void main(String[] args) { - try { - System.out.println(DateUtil.strToDate("15OCT2013", "ddMMMyyy", Locale.ENGLISH)); - System.out.println(DateUtil.getToday()); - System.out.println(dateToStr(new Date(), "ddMMM", Locale.ENGLISH)); - System.out.println(dateToStr(new Date(), "yyyy/dd/MM")); - System.out.println(getSpecifyDate(2, "ddMMM", Locale.ENGLISH)); - System.out.println(getSpecifyDate(-2, "ddMMM", Locale.ENGLISH)); - System.out.println(getSpecifyMonth(2, "ddMMM", Locale.ENGLISH)); - System.out.println(getSpecifyMonth(-2, "ddMMM", Locale.ENGLISH)); - System.out.println(getSpecifyYear(2, "ddMMMyyyy", Locale.ENGLISH)); - System.out.println(getSpecifyYear(-2, "ddMMMyyyy", Locale.ENGLISH)); - - } catch (ParseException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/ExcelUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/ExcelUtil.java deleted file mode 100644 index cc0904f2c4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/ExcelUtil.java +++ /dev/null @@ -1,517 +0,0 @@ -package network.platon.autotest.utils; - -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStream; -import java.nio.charset.Charset; -import java.util.ArrayList; -import java.util.Date; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import org.apache.poi.hssf.usermodel.HSSFCell; -import org.apache.poi.hssf.usermodel.HSSFDateUtil; -import org.apache.poi.hssf.usermodel.HSSFWorkbook; -import org.apache.poi.ss.usermodel.Cell; -import org.apache.poi.ss.usermodel.Row; -import org.apache.poi.ss.usermodel.Sheet; -import org.apache.poi.ss.usermodel.Workbook; -import org.apache.poi.xssf.usermodel.XSSFWorkbook; -import org.junit.Test; - -import com.csvreader.CsvReader; - -/** - * Excel的操作工具类 - * 包括对2003、2007的Excel表进行操作,还能够对CSV的表格进行操作 - * @author qcxiao - * - */ -public class ExcelUtil { - - /** 总行数 */ - - private int totalRows = 0; - - /** 总列数 */ - - private int totalCells = 0; - - /** 错误信息 */ - - private String errorInfo; - /** 表单序号 */ - - @SuppressWarnings("unused") - private int sheetIndex = 0; - - /** 构造方法 */ - - public ExcelUtil() { - - } - - /** - * 是否为excel2003格式 - * - * @param filePath - * @return - */ - private static boolean isExcel2003(String filePath) { - - return filePath.matches("^.+\\.(?i)(xls)$"); - - } - - /** - * 是否为excel2007格式 - * - * @param filePath - * @return - */ - private static boolean isExcel2007(String filePath) { - - return filePath.matches("^.+\\.(?i)(xlsx)$"); - - } - - /** - * 总行数 - * - * @return - */ - @SuppressWarnings("unused") - private int getTotalRows() { - - return totalRows; - - } - - /** - * 总列数 - * - * @return - */ - private int getTotalCells() { - - return totalCells; - - } - - /** - * 错误信息 - * - * @return - */ - @SuppressWarnings("unused") - private String getErrorInfo() { - return errorInfo; - - } - - /** - * - * @描述:验证excel文件 - * - * @参数:@param filePath 文件完整路径 - * - * @参数:@return - * - * @返回值:boolean - */ - - public boolean validateExcel(String filePath) { - /** 检查文件名是否为空或者是否是Excel格式的文件 */ - - if (filePath == null || !(isExcel2003(filePath) || isExcel2007(filePath))) { - - errorInfo = "文件名不是excel格式"; - - return false; - - } - - /** 检查文件是否存在 */ - - File file = new File(filePath); - if (file == null || !file.exists()) { - - errorInfo = "文件不存在"; - return false; - } - return true; - - } - - @Test - public void testss(){ - read("C:\\Users\\qcxiao\\Desktop\\applyeterm\\src\\test\\resources\\AutoeTermTest\\bookPnr.xls","自动预订PNR"); - } - /** - * - * @描述:根据文件名读取excel文件 - * - * @参数:@param filePath 文件完整路径 - * - * @参数:@return - * - * @返回值:List - */ - - public List> read(String filePath, String sheetName) { - - List> dataLst = new ArrayList>(); - - InputStream is = null; - - /** 验证文件是否合法 */ - - if (!validateExcel(filePath)) { - System.out.println(errorInfo); - return null; - - } - - /** 判断文件的类型,是2003还是2007 */ - - boolean isExcel2003 = true; - - if (isExcel2007(filePath)) { - - isExcel2003 = false; - - } - - /** 调用本类提供的根据流读取的方法 */ - try { - File file = new File(filePath); - - is = new FileInputStream(file); - - /** 根据版本选择创建Workbook的方式 */ - - Workbook wb = null; - - if (isExcel2003) { - wb = new HSSFWorkbook(is); - } else { - wb = new XSSFWorkbook(is); - } - dataLst = read(wb, sheetName); - - is.close(); - - } catch (IOException e) { - - e.printStackTrace(); - - } finally { - - if (is != null) { - - try { - - is.close(); - - } catch (IOException e) { - - is = null; - - e.printStackTrace(); - - } - - } - - } - - /** 返回最后读取的结果 */ - - return dataLst; - - } - - /** - * - * @描述:根据流读取Excel文件 - * - * @参数:@param inputStream - * - * @参数:@param isExcel2003 - * - * @参数:@return - * - * @返回值:List - */ - - public List> read(InputStream inputStream, boolean isExcel2003) { - - List> dataLst = null; - - try { - - /** 根据版本选择创建Workbook的方式 */ - - Workbook wb = null; - - if (isExcel2003) { - wb = new HSSFWorkbook(inputStream); - } else { - wb = new XSSFWorkbook(inputStream); - } - dataLst = read(wb); - - } catch (IOException e) { - - e.printStackTrace(); - - } - - return dataLst; - - } - - /** - * - * @描述:读取数据 - * - * @参数:@param Workbook - * - * @参数:@return - * - * @返回值:List> - */ - - private List> read(Workbook wb, int sheetIndex) { - List> dataLst = new ArrayList>(); - - /** 得到指定的sheet */ - - // int index =0; - // wb.getSheetIndex(sheetName); - - Sheet sheet = wb.getSheetAt(sheetIndex); - - /** 得到Excel的行数 */ - - this.totalRows = sheet.getPhysicalNumberOfRows(); - - /** 得到Excel的列数 */ - - if (this.totalRows >= 1 && sheet.getRow(0) != null) { - - this.totalCells = sheet.getRow(0).getPhysicalNumberOfCells(); - - } - - /** 循环Excel的行 */ - - for (int r = 0; r < this.totalRows; r++) { - - Row row = sheet.getRow(r); - - if (row == null) { - - continue; - - } - - List rowLst = new ArrayList(); - - /** 循环Excel的列 */ - - for (int c = 0; c < this.getTotalCells(); c++) { - - Cell cell = row.getCell(c); - // String key=row.getCell(0).getStringCellValue(); - String cellValue = ""; - - if (null != cell) { - - // cellValue=cell.getStringCellValue(); - // 以下是判断数据的类型 - switch (cell.getCellType()) { - case HSSFCell.CELL_TYPE_NUMERIC: // 数字 - // cellValue = cell.getNumericCellValue() + ""; - if (HSSFDateUtil.isCellDateFormatted(cell)) { - // 如果是Date类型则,取得该Cell的Date值 - Date date = cell.getDateCellValue(); - // 把Date转换成本地格式的字符串 - cellValue = DateUtil.dateToStr(date, "yyyy-MM-dd HH:mm:ss").toString(); - System.out.println(cellValue); - } - // 如果是纯数字 - else { - // 取得当前Cell的数值 - Integer num = new Integer((int) cell.getNumericCellValue()); - cellValue = String.valueOf(num); - } - - break; - - case HSSFCell.CELL_TYPE_STRING: // 字符串 - cellValue = cell.getStringCellValue().trim(); - break; - - case HSSFCell.CELL_TYPE_BOOLEAN: // Boolean - cellValue = cell.getBooleanCellValue() + ""; - break; - - case HSSFCell.CELL_TYPE_FORMULA: // 公式 - cellValue = cell.getCellFormula() + ""; - break; - - case HSSFCell.CELL_TYPE_BLANK: // 空值 - cellValue = ""; - break; - - case HSSFCell.CELL_TYPE_ERROR: // 故障 - cellValue = "非法字符"; - break; - - default: - cellValue = "未知类型"; - break; - } - } - - // System.out.print(cellValue+" "); - rowLst.add(cellValue); - - } - // System.out.println(); - /** 保存第r行的第c列 */ - - dataLst.add(rowLst); - - } - - return dataLst; - } - - private List> read(Workbook wb, String sheetName) { - - int sheetIndex = 0; - try { - sheetIndex = wb.getSheetIndex(sheetName); - } catch (Exception e) { - // 抛异常取第一个sheet - } - // 默认取第一个 - if (sheetIndex < 0) { - sheetIndex = 0; - } - return read(wb, sheetIndex); - } - - private List> read(Workbook wb) { - return read(wb, 0); - } - - /** - * 将excel解析后的集合封装成Map形式 - * - * @param list - * @return - */ - @SuppressWarnings("unused") - public static List> reflectMapList(List> list) { - ExcelUtil poi = new ExcelUtil(); - List> mlist = new ArrayList>(); - - Map map = new HashMap(); - if (list != null) { - - for (int i = 1; i < list.size(); i++) { - map = new HashMap(); - List cellList = list.get(i); - - for (int j = 0; j < cellList.size(); j++) { - map.put(list.get(0).get(j), cellList.get(j)); - } - mlist.add(map); - } - - } - - return mlist; - } - - public List> excelDatas(String filePath, String sheetName) { - List> lists = read(filePath, sheetName); - // 对集合进行重新组装 Map<字段,值> - List> datas = ExcelUtil.reflectMapList(lists); - return datas; - } - - /** - * 读取CSV的方法 - * @param file - * @return - */ - public static List importCsv(String file) { - List list = new ArrayList(); - CsvReader reader = null; - try { - // 初始化CsvReader并指定列分隔符和字符编码 - reader = new CsvReader(file, ',', Charset.forName("GBK")); - while (reader.readRecord()) { - // 读取每行数据以数组形式返回 - String[] str = reader.getValues(); - if (str != null && str.length > 0) { - // if (str[0] != null && !"".equals(str[0].trim())) { - // list.add(str); - // } - if (str[0] != null) { - list.add(str); - } - } - } - } catch (FileNotFoundException e) { - // log.error("Error reading csv file.", e); - } catch (IOException e) { - // log.error("", e); - } finally { - if (reader != null) - // 关闭CsvReader - reader.close(); - } - return list; - } - @SuppressWarnings({ "unchecked", "rawtypes" }) - public static void main(String[] args) throws Exception { - List listt = importCsv("C:\\Users\\qcxiao\\Documents\\Tencent Files\\280887262\\FileRecv\\GP_20141210_CSI_CAACSC.CSV"); - for(int i =0; i < listt.size(); i++){ - String [] strRows = listt.get(i); - for(int j = 0; j < strRows.length;j++){ - System.out.println(strRows[j]); - } - } - ExcelUtil poi = new ExcelUtil(); - // 获取解析后的集合 - List> lists = poi.read("C:\\Users\\qcxiao\\Desktop\\applyeterm\\src\\test\\resources\\AutoeTermTest\\bookPnr.xls", "自动预订PNR"); - System.out.println(lists.size()); - // 对集合进行重新组装 Map<字段,值> - List> list = ExcelUtil.reflectMapList(lists); - // 调用工具类,组成对象集合 - // List ts=Tool.reflectObj(TravelerInfo.class, list); - // //遍历 - // for (TravelerInfo t : ts) { - // System.out.println(t.getAirline_code()+" | "+ - // t.getFlight_num()+" | "+t.getSto()+" | "+t.getNationality()+"| ………………"); - // } - int i = 1; - for (Map map : list) { - System.out.println("行数" + i); - Iterator iter = map.entrySet().iterator(); - while (iter.hasNext()) { - Map.Entry entry = (Map.Entry) iter.next(); - System.out.println(entry.getValue()); - } - i++; - } - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/FileUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/FileUtil.java deleted file mode 100644 index 43b0651822..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/FileUtil.java +++ /dev/null @@ -1,676 +0,0 @@ -package network.platon.autotest.utils; - -import java.io.BufferedInputStream; -import java.io.BufferedReader; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.RandomAccessFile; -import java.io.Reader; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Properties; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import javax.imageio.stream.FileImageInputStream; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -public class FileUtil { - protected static final Log logger = LogFactory.getLog(FileUtil.class); - private static final String TEST_PROPERTIES = "/test.properties"; - - //获取项目的根路径 - public final static String classPath; - - static { - //获取的是classpath路径,适用于读取resources下资源 - classPath = Thread.currentThread().getContextClassLoader().getResource("").getPath(); - } - - /** - * 自定义追加路径 - */ - public static String getCompilePath(String u_path) { - return pathOptimization(classPath + u_path); - } - - public static String pathOptimization(String path) { - //windows下 - if ("\\".equals(File.separator)) { - path = path.replaceAll("/", "\\\\"); - if (path.substring(0, 1).equals("\\") || path.substring(0, 1).equals("/")) { - path = path.substring(1); - } - } - //linux下 - if ("/".equals(File.separator)) { - path = path.replaceAll("\\\\", "/"); - } - return path; - } - - - public static void main(String[] args) { - - System.out.println(getCompilePath("templates/caseResult.vm")); - String fileName = "C:/temp/newTemp.txt"; - String content = "new append!"; - - readFileByBytes(fileName); - readFileByChars(fileName); - readFileByLines(fileName); - readFileByRandomAccess(fileName); - - // 按方法A追加文件 - appendMethodA(fileName, content); - appendMethodA(fileName, "append end. \n"); - // 显示文件内容 - readFileByLines(fileName); - // 按方法B追加文件 - appendMethodB(fileName, content); - appendMethodB(fileName, "append end. \n"); - // 显示文件内容 - readFileByLines(fileName); - } - - - /** - * - * @param imagepath - * @return - */ - public static byte[] getImageByteArray(String imagepath) { - byte[] image = null; - // 直接通过文件获取 - try { - FileImageInputStream fiis = new FileImageInputStream(new File( - imagepath)); - image = new byte[(int) fiis.length()]; - fiis.read(image); - } catch (FileNotFoundException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - // 通过数据库中获取的byte[]字节数组来获得Image对象,这里用fiis模拟数据库中的byte[].如果只是从文件中获取,那么可以跳过这几行代码,最终的目的都是为了获得BufferedImage对象 - return image; - } - - /** - * - * 取得调用者所在类路径中的文件的绝对路径 如getFilePath("/xxx.txt")表示取得classes根目录下xxx.txt的绝对路径 - * 所有放在src/main/resources目录下的资源文件都会自动复制到classes目录下 - * - * @param filePath - * @return - */ - @SuppressWarnings("deprecation") - public static String getFilePath(String filePath) { - /* - try { - return new File(sun.reflect.Reflection.getCallerClass(2).getResource(filePath).toURI()).getAbsolutePath(); - } catch (URISyntaxException ex) { - throw new RuntimeException(ex); - } catch (NullPointerException ex) { - logger.warn("The file main/resources" + filePath + " is not exist!"); - } - */ - return null; - } - - /** - * 读取配置文件(test.properties)的内容 - * - * @return - */ - public static Properties getProperties() { - return getProperties(null); - } - - /** - * 读取指定配置文件的内容 - * - * @return - */ - public static Properties getProperties(String filePath) { - InputStream inputStream = null; - if (filePath == null || "".equals(filePath)) - inputStream = FileUtil.class.getResourceAsStream(TEST_PROPERTIES); - else - inputStream = FileUtil.class.getResourceAsStream(filePath); - Properties properties = new Properties(); - try { - properties.load(inputStream); - } catch (IOException e) { - logger.error(e.getMessage()); - } - return properties; - } - - public static List chooseFile(String downloadFileDir, - String chooseFiles) { - List fileList = new ArrayList(); - String[] downFileArry = chooseFiles.split(","); - if (!downloadFileDir.endsWith(File.separator)) { - downloadFileDir = downloadFileDir + File.separator; - } - File dirFile = new File(downloadFileDir); - // 如果fileDir对应的文件不存在,或者不是一个目录,则退出 - if (!dirFile.exists() || !dirFile.isDirectory()) { - logger.debug("要删除的文件夹【" + downloadFileDir + "】不存在,不需要删除操作!"); - return fileList; - } - // 删除文件夹下的所有文件(包括子目录) - File[] files = dirFile.listFiles(); - for (int i = 0; i < files.length; i++) { - boolean flag = false; - String fileName = files[i].getName(); - for (int j = 0; j < downFileArry.length; j++) { - String downloadFileName = downFileArry[j]; - if (fileName.equals(downloadFileName)) { - flag = true; - break; - } - } - if (!flag) { - fileList.add(fileName); - } - } - return fileList; - } - - /** - * 删除目录下的所有文件 - * - * @param fileDir - * @return - */ - public static boolean deleteDirectory(String fileDir) { - // 如果fileDir不以文件分隔符结尾,自动添加文件分隔符 - if (!fileDir.endsWith(File.separator)) { - fileDir = fileDir + File.separator; - } - File dirFile = new File(fileDir); - // 如果fileDir对应的文件不存在,或者不是一个目录,则退出 - if (!dirFile.exists() || !dirFile.isDirectory()) { - logger.debug("删除目录失败" + fileDir + "目录不存在!"); - return false; - } - boolean flag = true; - // 删除文件夹下的所有文件(包括子目录) - File[] files = dirFile.listFiles(); - for (int i = 0; i < files.length; i++) { - // 删除子文件 - if (files[i].isFile()) { - flag = deleteFile(files[i].getAbsolutePath()); - if (!flag) { - break; - } - } - // 删除子目录 - else { - flag = deleteDirectory(files[i].getAbsolutePath()); - if (!flag) { - break; - } - } - } - if (!flag) { - logger.debug("删除目录失败"); - return false; - } - // 删除当前目录 - if (dirFile.delete()) { - logger.debug("删除目录" + fileDir + "成功!"); - return true; - } else { - logger.debug("删除目录" + fileDir + "失败!"); - return false; - } - } - - /** - * 判断目录存在不存在?如果不存在,则创建之 - * - * @param directory - */ - public static void exist(String directory) { - try { - if (!new File(directory).isDirectory()) { - new File(directory).mkdir(); - } - } catch (SecurityException e) { - e.printStackTrace(); - } - } - - /** - * 删除文件 - * - * @param fileName - * @return - */ - private static boolean deleteFile(String fileName) { - File file = new File(fileName); - if (file.isFile() && file.exists()) { - file.delete(); - return true; - } else { - logger.debug("删除单个文件" + fileName + "失败!"); - return false; - } - } - - /** - * 写入文件 - * - * @param in - * @param filePath - */ - public static void writeFile(InputStream in, String filePath) { - try { - String path = filePath.substring(0, filePath.lastIndexOf("/")); - File file = new File(path); - if (!file.exists()) { - file.mkdirs(); - } - FileOutputStream fos = null; - BufferedInputStream bis = null; - int BUFFER_SIZE = 1024; - byte[] buf = new byte[BUFFER_SIZE]; - int size = 0; - bis = new BufferedInputStream(in); - fos = new FileOutputStream(filePath, false); - while ((size = bis.read(buf)) != -1) - fos.write(buf, 0, size); - fos.close(); - bis.close(); - } catch (Exception ex) { - ex.printStackTrace(); - } - } - - /** - * 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。 - */ - public static void readFileByBytes(String fileName) { - File file = new File(fileName); - InputStream in = null; - try { - System.out.println("以字节为单位读取文件内容,一次读一个字节:"); - // 一次读一个字节 - in = new FileInputStream(file); - int tempbyte; - while ((tempbyte = in.read()) != -1) { - System.out.write(tempbyte); - } - in.close(); - } catch (IOException e) { - e.printStackTrace(); - return; - } - try { - System.out.println("以字节为单位读取文件内容,一次读多个字节:"); - // 一次读多个字节 - byte[] tempbytes = new byte[100]; - int byteread = 0; - in = new FileInputStream(fileName); - showAvailableBytes(in); - // 读入多个字节到字节数组中,byteread为一次读入的字节数 - while ((byteread = in.read(tempbytes)) != -1) { - System.out.write(tempbytes, 0, byteread); - } - } catch (Exception e1) { - e1.printStackTrace(); - } finally { - if (in != null) { - try { - in.close(); - } catch (IOException e1) { - } - } - } - } - - /** - * 以字符为单位读取文件,常用于读文本,数字等类型的文件 - */ - public static void readFileByChars(String fileName) { - File file = new File(fileName); - Reader reader = null; - try { - System.out.println("以字符为单位读取文件内容,一次读一个字节:"); - // 一次读一个字符 - reader = new InputStreamReader(new FileInputStream(file)); - int tempchar; - while ((tempchar = reader.read()) != -1) { - // 对于windows下,\r\n这两个字符在一起时,表示一个换行。 - // 但如果这两个字符分开显示时,会换两次行。 - // 因此,屏蔽掉\r,或者屏蔽\n。否则,将会多出很多空行。 - if (((char) tempchar) != '\r') { - System.out.print((char) tempchar); - } - } - reader.close(); - } catch (Exception e) { - e.printStackTrace(); - } - try { - System.out.println("以字符为单位读取文件内容,一次读多个字节:"); - // 一次读多个字符 - char[] tempchars = new char[30]; - int charread = 0; - reader = new InputStreamReader(new FileInputStream(fileName)); - // 读入多个字符到字符数组中,charread为一次读取字符数 - while ((charread = reader.read(tempchars)) != -1) { - // 同样屏蔽掉\r不显示 - if ((charread == tempchars.length) - && (tempchars[tempchars.length - 1] != '\r')) { - System.out.print(tempchars); - } else { - for (int i = 0; i < charread; i++) { - if (tempchars[i] == '\r') { - continue; - } else { - System.out.print(tempchars[i]); - } - } - } - } - - } catch (Exception e1) { - e1.printStackTrace(); - } finally { - if (reader != null) { - try { - reader.close(); - } catch (IOException e1) { - } - } - } - } - - /** - * 以行为单位读取文件,常用于读面向行的格式化文件 - */ - public static List readFileByLines(String fileName) { - List fileLineList = new ArrayList(); - File file = new File(fileName); - BufferedReader reader = null; - try { - // System.out.println("以行为单位读取文件内容,一次读一整行:"); - reader = new BufferedReader(new FileReader(file)); - String tempString = null; - // 一次读入一行,直到读入null为文件结束 - while ((tempString = reader.readLine()) != null) { - // 显示行号 - fileLineList.add(tempString); - } - reader.close(); - } catch (IOException e) { - e.printStackTrace(); - } finally { - if (reader != null) { - try { - reader.close(); - } catch (IOException e1) { - } - } - - } - return fileLineList; - } - - /** - * 随机读取文件内容 - */ - public static void readFileByRandomAccess(String fileName) { - RandomAccessFile randomFile = null; - try { - System.out.println("随机读取一段文件内容:"); - // 打开一个随机访问文件流,按只读方式 - randomFile = new RandomAccessFile(fileName, "r"); - // 文件长度,字节数 - long fileLength = randomFile.length(); - // 读文件的起始位置 - int beginIndex = (fileLength > 4) ? 4 : 0; - // 将读文件的开始位置移到beginIndex位置。 - randomFile.seek(beginIndex); - byte[] bytes = new byte[10]; - int byteread = 0; - // 一次读10个字节,如果文件内容不足10个字节,则读剩下的字节。 - // 将一次读取的字节数赋给byteread - while ((byteread = randomFile.read(bytes)) != -1) { - System.out.write(bytes, 0, byteread); - } - } catch (IOException e) { - e.printStackTrace(); - } finally { - if (randomFile != null) { - try { - randomFile.close(); - } catch (IOException e1) { - } - } - } - } - - /** - * 显示输入流中还剩的字节数 - */ - private static void showAvailableBytes(InputStream in) { - try { - System.out.println("当前字节输入流中的字节数为:" + in.available()); - } catch (IOException e) { - e.printStackTrace(); - } - } - - /** - * A方法追加文件:使用RandomAccessFile - */ - public static void appendMethodA(String fileName, String content) { - try { - // 打开一个随机访问文件流,按读写方式 - RandomAccessFile randomFile = new RandomAccessFile(fileName, "rw"); - // 文件长度,字节数 - long fileLength = randomFile.length(); - // 将写文件指针移到文件尾。 - randomFile.seek(fileLength); - randomFile.writeBytes(content); - randomFile.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - /** - * 复制整个文件夹内容 - * - * @param oldPath String 原文件路径 如:c:/fqf - * @param newPath String 复制后路径 如:f:/fqf/ff - * @return boolean - */ - public static void copyFolder(String oldPath, String newPath) { - try { - (new File(newPath)).mkdirs(); // 如果文件夹不存在 则建立新文件夹 - File a = new File(oldPath); - String[] file = a.list(); - File temp = null; - for (int i = 0; i < file.length; i++) { - if (oldPath.endsWith(File.separator)) { - temp = new File(oldPath + file[i]); - } else { - temp = new File(oldPath + File.separator + file[i]); - } - - if (temp.isFile()) { - FileInputStream input = new FileInputStream(temp); - FileOutputStream output = new FileOutputStream(newPath - + "/" + (temp.getName()).toString()); - byte[] b = new byte[1024 * 5]; - int len; - while ((len = input.read(b)) != -1) { - output.write(b, 0, len); - } - output.flush(); - output.close(); - input.close(); - } - if (temp.isDirectory()) {// 如果是子文件夹 - copyFolder(oldPath + "/" + file[i], newPath + "/" + file[i]); - } - } - } catch (Exception e) { - System.out.println("复制整个文件夹内容操作出错"); - e.printStackTrace(); - - } - - } - - /** - * B方法追加文件:使用FileWriter - */ - public static void appendMethodB(String fileName, String content) { - try { - // 打开一个写文件器,构造函数中的第二个参数true表示以追加形式写文件 - FileWriter writer = new FileWriter(fileName, true); - writer.write(content); - writer.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - - - // 读取文件 - public static String readFile(String fileName) { - String returnStr = ""; - File file = new File(fileName); - Reader reader = null; - try { - // System.out.println("以字符为单位读取文件内容,一次读一个字节:"); - // 一次读一个字符 - reader = new InputStreamReader(new FileInputStream(file)); - int tempchar; - while ((tempchar = reader.read()) != -1) { - // 对于windows下,\r\n这两个字符在一起时,表示一个换行。 - // 但如果这两个字符分开显示时,会换两次行。 - // 因此,屏蔽掉\r,或者屏蔽\n。否则,将会多出很多空行。 - if (((char) tempchar) != '\r') { - returnStr += (char) tempchar; - // System.out.print((char) tempchar); - } - } - reader.close(); - } catch (Exception e) { - e.printStackTrace(); - } - char[] tempchars = new char[30]; - try { - // System.out.println("以字符为单位读取文件内容,一次读多个字节:"); - // 一次读多个字符 - int charread = 0; - reader = new InputStreamReader(new FileInputStream(fileName)); - // 读入多个字符到字符数组中,charread为一次读取字符数 - while ((charread = reader.read(tempchars)) != -1) { - // 同样屏蔽掉\r不显示 - if ((charread == tempchars.length) - && (tempchars[tempchars.length - 1] != '\r')) { - // System.out.print(tempchars); - } else { - for (int i = 0; i < charread; i++) { - if (tempchars[i] == '\r') { - continue; - } else { - // System.out.print(tempchars[i]); - } - } - } - } - - } catch (Exception e1) { - e1.printStackTrace(); - } finally { - if (reader != null) { - try { - reader.close(); - } catch (IOException e1) { - } - } - } - return returnStr; - } - - public static String initHttpRequest(String fileName, - Map params) { - String req = FileUtil.readFile(fileName); - // 替换请求相关字段 - Pattern p1 = Pattern.compile("\\$\\{\\#\\#.*?\\}"); - Matcher mat1 = p1.matcher(req); - List elements1 = new ArrayList(); - - while (mat1.find()) { - String element = mat1.group(); - elements1.add(element); - } - - for (String element : elements1) { - int i = element.indexOf("${##"); - int j = element.indexOf("}"); - String sub = element.substring(i + 4, j); - String param = ""; - if (!params.get(sub).equals("null")) { - param = params.get(sub); - } - req = req.substring(0, req.indexOf(element)) - + param - + req.substring(req.indexOf(element) + element.length(), - req.length()); - } - - // 以下处理注释,去掉/**/ - Pattern p2 = Pattern.compile("/\\*.*?\\*/"); - Matcher mat2 = p2.matcher(req); - List elements2 = new ArrayList(); - - while (mat2.find()) { - String element = mat2.group(); - elements2.add(element); - } - - for (String element : elements2) { - req = req.substring(0, req.indexOf(element)) - + req.substring(req.indexOf(element) + element.length(), - req.length()); - } - - return req; - - } - - // 替换指定字段的请求值 - public static String changeHttpRequestByColumn(String req, String column, - String value) { - String element = "${#" + column + "}"; - return req.substring(0, req.indexOf(element)) - + value - + req.substring(req.indexOf(element) + element.length(), - req.length()); - } - -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/HttpUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/HttpUtil.java deleted file mode 100644 index 1895c7876b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/HttpUtil.java +++ /dev/null @@ -1,261 +0,0 @@ -package network.platon.autotest.utils; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.InputStreamReader; -import java.net.URL; -import java.util.Map; -import java.util.Map.Entry; -import java.util.Set; - -import org.apache.commons.httpclient.Credentials; -import org.apache.commons.httpclient.HttpClient; -import org.apache.commons.httpclient.HttpMethod; -import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager; -import org.apache.commons.httpclient.NameValuePair; -import org.apache.commons.httpclient.UsernamePasswordCredentials; -import org.apache.commons.httpclient.auth.AuthScope; -import org.apache.commons.httpclient.methods.GetMethod; -import org.apache.commons.httpclient.methods.PostMethod; -import org.apache.commons.httpclient.methods.StringRequestEntity; -import org.apache.commons.httpclient.methods.multipart.FilePart; -import org.apache.commons.httpclient.methods.multipart.MultipartRequestEntity; -import org.apache.commons.httpclient.methods.multipart.Part; -import org.apache.commons.httpclient.params.HttpConnectionManagerParams; -import org.apache.commons.httpclient.params.HttpMethodParams; -import org.apache.http.HttpEntity; -import org.apache.http.HttpResponse; -import org.apache.http.HttpStatus; -import org.apache.http.client.methods.HttpPost; -import org.apache.http.entity.StringEntity; -import org.apache.http.impl.client.DefaultHttpClient; -import org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager; -import org.apache.http.util.EntityUtils; -import org.json.JSONObject; - -@SuppressWarnings("deprecation") -public class HttpUtil { - private static int HTTPCLIENT_CONNECT_TIMEOUT = 10000; - private static int HTTPCLIENT_RESPONSE_TIMEOUT = 30000; - static DefaultHttpClient httpClient = new DefaultHttpClient(new ThreadSafeClientConnManager()); - - public static JSONObject httpPost(String url, String path) throws Exception, FileNotFoundException { - HttpPost method = new HttpPost(url); - // String jsonParam = - // "{\"requestObject\": {\"departureCode\": \"PEK\", \"arrivalCode\": \"SHA\", \"departureDate\": \"2015-10-10\", \"timeRange\": 5, \"returnDate\": \"2015-10-20\",\"numOfPerson\": 1, \"travelPolicyVO\": {\"corpCode\": \"String类型\", \"agentId\": 0, \"corpId\": 0,\"updateTime\": \"\", \"discount\": 0, \"flightTime\": 0,\"serviceCodeId\": 0,\"serviceCodeName\": \"String类型\",\"lowestPrice\": 0,\"travelPolicyId\": 0,\"timePartHour\": 0,\"forwardOrderTime\": 0,\"exceAirport\": \"String类型\",\"hotelBigCity\": 0,\"hotelSmallCity\": 0,\"travelPolicyDesc\": \"String类型\",\"highestCabin\": \"String类型\",\"international\": \"String类型\",\"airBookRemarkEn\": \"String类型\",\"hotelBookRemarkCn\": \"String类型\",\"hotelBookRemarkEn\": \"String类型\",\"secondTierCity\": 0,\"thirdTierCity\": 0,\"corpfareHotelFirst\": \"String类型\",\"lowestPriceType\": \"0\",\"areaLowestType\": \"String类型\",\"corpfareAirline\": \"String类型\",\"corpfareAirlineFirst\": \"String类型\",\"cabinChoose\": \"String类型\",\"floatAmount\": 0,\"floatRate\": 0,\"latestReservedTime\": 0,\"canUpgrade\": \"String类型\",\"upgradeHours\": \"String类型\",\"upgradeMiles\": \"String类型\",\"upgradeCabin\": \"String类型\",\"tripConstraint\": \"String类型\",\"firstSelectionAirline\": \"String类型\",\"subSelectionAirline\": \"String类型\", \"firstSelectionAirlinePriceDiff\": 0,\"subSelectionAirlinePriceDiff\": 0,\"starRate\": \"String类型\",\"carrentPriceMax\": \"String类型\",\"carrentPriceMin\": \"String类型\",\"carrentRemarkChn\": \"String类型\",\"carrentRemarkEng\": \"String类型\",\"pricePercentage\": \"String类型\",\"isDiscountPreferred\": \"String类型\",\"fourthTierCity\": 0,\"fifthTierCity\": 0,\"smallCityCodes\": \"String类型\", \"discountDetail\": 0, \"name\": \"String类型\"}, \"expectTime\": \"09:00\"}}"; - StringEntity entity = new StringEntity(path, "utf-8"); - entity.setContentEncoding("UTF-8"); - entity.setContentType("application/json"); - method.setEntity(entity); - JSONObject response = null; - try { - HttpResponse res = httpClient.execute(method); - if (res.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { - HttpEntity entitys = res.getEntity(); - response = new JSONObject(new org.json.JSONTokener(new InputStreamReader(entitys.getContent(),"UTF-8"))); - String result = EntityUtils.toString(res.getEntity());// 返回json格式: - System.out.println(result); - // response = JSONObject.fromObject(result); - } - } catch (Exception e) { - throw new RuntimeException(e); - } - return response; - } - - public static String getResult(String url, String userName, String password) throws Exception { - HttpClient client = new HttpClient(new MultiThreadedHttpConnectionManager()); - HttpConnectionManagerParams managerParams = client.getHttpConnectionManager().getParams(); - - // 设置连接超时时间(单位毫秒) - managerParams.setConnectionTimeout(HTTPCLIENT_CONNECT_TIMEOUT); - - // 设置读数据超时时间(单位毫秒) - managerParams.setSoTimeout(HTTPCLIENT_RESPONSE_TIMEOUT); - - client.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET, "utf-8"); - - setAuth(userName, password, url, client); - HttpMethod method = new GetMethod(url); - byte[] resultBytes; - - try { - int statusCode = client.executeMethod(method); - if (!(statusCode == 200 || statusCode == 302)) - throw (new Exception(statusCode + " Error")); - resultBytes = method.getResponseBody(); - return new String(resultBytes); - } catch (Exception e) { - // logger.error("404 Error", e); - throw new Exception(e); - } finally { - method.releaseConnection(); - } - } - - public static String postRequest(String url, String userName, String password) throws Exception { - HttpClient client = new HttpClient(new MultiThreadedHttpConnectionManager()); - HttpConnectionManagerParams managerParams = client.getHttpConnectionManager().getParams(); - - // 设置连接超时时间(单位毫秒) - managerParams.setConnectionTimeout(HTTPCLIENT_CONNECT_TIMEOUT); - - // 设置读数据超时时间(单位毫秒) - managerParams.setSoTimeout(HTTPCLIENT_RESPONSE_TIMEOUT); - - client.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET, "utf-8"); - setAuth(userName, password, url, client); - - HttpMethod method = new PostMethod(url); - byte[] resultBytes; - - try { - int statusCode = client.executeMethod(method); - if (!(statusCode == 200 || statusCode == 302)) - throw (new Exception(statusCode + " Error")); - resultBytes = method.getResponseBody(); - return new String(resultBytes); - } catch (Exception e) { - // logger.error("404 Error", e); - throw new Exception(e); - } finally { - method.releaseConnection(); - } - } - - public static String postRequest(String url, Map params, String userName, String password) throws Exception { - HttpClient client = new HttpClient(new MultiThreadedHttpConnectionManager()); - HttpConnectionManagerParams managerParams = client.getHttpConnectionManager().getParams(); - - // 设置连接超时时间(单位毫秒) - managerParams.setConnectionTimeout(HTTPCLIENT_CONNECT_TIMEOUT); - - // 设置读数据超时时间(单位毫秒) - managerParams.setSoTimeout(HTTPCLIENT_RESPONSE_TIMEOUT); - - client.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET, "utf-8"); - - setAuth(userName, password, url, client); - - PostMethod method = new PostMethod(url); - - Set> esParams = params.entrySet(); - NameValuePair[] httpParams = new NameValuePair[esParams.size()]; - - int i = 0; - for (Entry esParam : esParams) { - httpParams[i] = new NameValuePair(esParam.getKey(), esParam.getValue()); - i++; - } - method.setRequestBody(httpParams); - byte[] resultBytes; - - try { - int statusCode = client.executeMethod(method); - if (!(statusCode == 200 || statusCode == 302)) - throw (new Exception(statusCode + " Error")); - resultBytes = method.getResponseBody(); - return new String(resultBytes); - } catch (Exception e) { - // logger.error("404 Error", e); - throw new Exception(e); - } finally { - method.releaseConnection(); - } - } - - public static String postXml(String url, String value, String userName, String password) throws Exception { - HttpClient client = new HttpClient(new MultiThreadedHttpConnectionManager()); - HttpConnectionManagerParams managerParams = client.getHttpConnectionManager().getParams(); - - // 设置连接超时时间(单位毫秒) - managerParams.setConnectionTimeout(HTTPCLIENT_CONNECT_TIMEOUT); - - // 设置读数据超时时间(单位毫秒) - managerParams.setSoTimeout(HTTPCLIENT_RESPONSE_TIMEOUT); - - client.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET, "utf-8"); - - setAuth(userName, password, url, client); - - PostMethod method = new PostMethod(url); - method.setRequestEntity(new StringRequestEntity(value, "text/xml", "UTF-8")); - byte[] resultBytes; - - try { - int statusCode = client.executeMethod(method); - if (!(statusCode == 200 || statusCode == 302)) - throw (new Exception(statusCode + " Error")); - resultBytes = method.getResponseBody(); - return new String(resultBytes); - } catch (Exception e) { - // logger.error("404 Error", e); - throw new Exception(e); - } finally { - method.releaseConnection(); - } - } - - private static void setAuth(String username, String password, String url, HttpClient httpClient) throws Exception { - if (username != null) { - httpClient.getParams().setAuthenticationPreemptive(true); - Credentials defaultcreds = new UsernamePasswordCredentials(username, password); - //Credentials defaultcreds = new UsernamePasswordCredentials("demo/userAction!doNotNeedSession_login.action?cname=admin&", "cpwd=admin"); - URL tUrl = new URL(url); - httpClient.getState().setCredentials(new AuthScope(tUrl.getHost(), tUrl.getPort()), defaultcreds); - } - } - - public static String uploadFile(File file, String url) throws Exception { - if (!file.exists()) { - return null; - } - PostMethod method = new PostMethod(url); - // try { - // FilePart:用来上传文件的类 - FilePart fp = new FilePart("fileData", file); - Part[] parts = { fp }; - - // 对于MIME类型的请求,httpclient建议全用MulitPartRequestEntity进行包装 - MultipartRequestEntity mre = new MultipartRequestEntity(parts, method.getParams()); - method.setRequestEntity(mre); - HttpClient client = new HttpClient(); - client.getHttpConnectionManager().getParams().setConnectionTimeout(50000);// 设置连接时间 - - byte[] resultBytes; - - try { - int statusCode = client.executeMethod(method); - if (!(statusCode == 200 || statusCode == 302)) - throw (new Exception(statusCode + " Error")); - resultBytes = method.getResponseBody(); - return new String(resultBytes); - } catch (Exception e) { - // logger.error("404 Error", e); - throw new Exception(e); - } finally { - method.releaseConnection(); - } - // int status = client.executeMethod(postMethod); - // if (status == HttpStatus.SC_OK) { - // System.out.println(postMethod.getResponseBodyAsString()); - // } else { - // System.out.println("fail"); - // } - // } catch (Exception e) { - // e.printStackTrace(); - // } finally { - // // 释放连接 - // postMethod.releaseConnection(); - // } - } - - /** - * @param args - * @throws Exception - */ - public static void main(String[] args) throws Exception { - //http://localhost:8080/AutoTestPlat/logtest/logTestPictureAction - uploadFile(new File("C:\\autosky_log\\TestJunit\\2014-04-22_16-16-33\\screenshot\\20140422-161703.png"), "http://localhost:8080/AutoTestPlat/logtest/upload"); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/ScreenShotUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/ScreenShotUtil.java deleted file mode 100644 index 36362482a6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/ScreenShotUtil.java +++ /dev/null @@ -1,118 +0,0 @@ -package network.platon.autotest.utils; - -import java.awt.Dimension; -import java.awt.Rectangle; -import java.awt.Robot; -import java.awt.Toolkit; -import java.awt.image.BufferedImage; -import java.io.File; -import java.util.Date; -import java.util.Properties; - -import javax.imageio.ImageIO; - -import org.apache.commons.io.FileUtils; -import org.openqa.selenium.OutputType; -import org.openqa.selenium.TakesScreenshot; -import org.openqa.selenium.WebDriver; - -public class ScreenShotUtil { - private static String BASE_DIR = "C:\\autosky_log\\"; - - public static String screenShotByDriver(WebDriver driver, String suitePath) { - String picPath = ""; - // - // Properties properties = FileUtil.getProperties(); - // BASE_DIR = properties.getProperty("logDir", BASE_DIR) == null ? - // BASE_DIR : properties.getProperty("logPath", BASE_DIR); - // if (!BASE_DIR.endsWith("/")) { - // BASE_DIR = BASE_DIR + "/"; - // } - // String screenShotPath = BASE_DIR; - // // Boolean reportMerged = - // // Boolean.valueOf(System.getProperty("report.merged") == null ? - // "false" - // // : System.getProperty("report.merged")); - // // screenShotPath = screenShotPath + suitePath + "/screenshot"; - // screenShotPath = suitePath + "screenshot"; - // // 这里定义了截图存放目录名 - // if (!(new File(screenShotPath).isDirectory())) { // 判断是否存在该目录 - // new File(screenShotPath).mkdir(); // 如果不存在则新建一个目录 - // } - String screenShotPath = createScreenShotPath(suitePath); - String time = DateUtil.dateToStr(new Date(), "yyyyMMdd-HHmmss"); - try { - File source_file = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE); // 关键代码,执行屏幕截图,默认会把截图保存到temp目录 - File file = new File(screenShotPath + File.separator + time + ".png"); - FileUtils.copyFile(source_file, file); // 这里将截图另存到我们需要保存的目录,例如screenshot\20120406-165210.png - picPath = file.getAbsolutePath(); - return picPath; - } catch (Exception e) { - return screenShotByDesktop(suitePath); - } - } - - // 如果通过webdriver截图失败的话,就采用桌面截图,后续添加上 - public static String screenShotByDesktop(String suitePath) { - String picPath = ""; - try { - Dimension d = Toolkit.getDefaultToolkit().getScreenSize(); - String time = DateUtil.dateToStr(new Date(), "yyyyMMdd-HHmmss"); - String screenShotPath = createScreenShotPath(suitePath); - BufferedImage screen = (new Robot()).createScreenCapture(new Rectangle(0, 0, (int) d.getWidth(), (int) d.getHeight())); - String name = screenShotPath + "/" + time + ".png"; - File file = new File(name); - ImageIO.write(screen, "png", file); - picPath = file.getAbsolutePath(); - } catch (Exception e) { - // TODO: handle exception - System.out.println("截图失败!!!\n" + e.getMessage()); - } - return picPath; - } - - private static String createScreenShotPath(String suitePath) { - Properties properties = FileUtil.getProperties(); - BASE_DIR = properties.getProperty("logDir", BASE_DIR) == null ? BASE_DIR : properties.getProperty("logPath", BASE_DIR); - if (!BASE_DIR.endsWith("/")) { - BASE_DIR = BASE_DIR + "/"; - } - String screenShotPath = BASE_DIR; - screenShotPath = suitePath + "Link/screenshot"; - // 这里定义了截图存放目录名 - if (!(new File(screenShotPath).isDirectory())) { // 判断是否存在该目录 - new File(screenShotPath).mkdir(); // 如果不存在则新建一个目录 - } - return screenShotPath; - } - // 截图前先滚动下拉框,解决懒加载 - // browser.execute_script(""" - // (function () { - // var y = 0; - // var step = 100; - // window.scroll(0, 0); - // - // function f() { - // if (y < document.body.scrollHeight) { - // y += step; - // window.scroll(0, y); - // setTimeout(f, 50); - // } else { - // window.scroll(0, 0); - // document.title += "scroll-done"; - // } - // } - // - // setTimeout(f, 1000); - // })(); - // """) - // - // for i in xrange(30): - // if "scroll-done" in browser.title: - // break - // time.sleep(1) - // - // browser.save_screenshot(save_fn) - // browser.close() - -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/SystemUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/SystemUtil.java deleted file mode 100644 index 99fecbab08..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/SystemUtil.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.autotest.utils; - -import java.io.IOException; -import java.net.InetAddress; -import java.net.Socket; -import java.net.UnknownHostException; -import java.util.HashMap; -import java.util.Map; - -import network.platon.autotest.junit.enums.BrowserProcessType; -import network.platon.autotest.junit.enums.BrowserType; - -/** - * SystemUtil 系统公用方法类 - * @Description: TODO(这里用一句话描述这个类的作用) - * @author phuang_ckg - * @date 2015年11月18日 下午6:53:11 - * - */ -public class SystemUtil { - public static Map browserProcessMap = new HashMap(); - - public static void killProcessOld(String processName) { - Runtime rt = Runtime.getRuntime(); - try { - rt.exec("cmd.exe /C start wmic process where name='" + processName + "' call terminate"); - } catch (IOException e) { - e.printStackTrace(); - } - } - - public static void killProcess(String processName) { - Runtime rt = Runtime.getRuntime(); - try { - rt.exec("cmd.exe /C taskkill /f /im " + processName); - // tskill iexplore - } catch (IOException e) { - e.printStackTrace(); - } - } - - public static void openProcess(String processName) { - Runtime rt = Runtime.getRuntime(); - try { - rt.exec("cmd.exe /k start " + processName); - } catch (IOException e) { - e.printStackTrace(); - } - } - - public static void killBrowserProcess() { - // killProcess() - } - - @SuppressWarnings({ "unused" }) - public static boolean isPortUsing(String host,int port) { - boolean flag = false; - InetAddress theAddress = null; - try { - theAddress = InetAddress.getByName(host); - } catch (UnknownHostException e1) { - e1.printStackTrace(); - } - try { - Socket socket = new Socket(theAddress,port); - flag = true; - } catch (Exception e) { - - } - return flag; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/XmlUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/XmlUtil.java deleted file mode 100644 index 089f72b505..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/XmlUtil.java +++ /dev/null @@ -1,168 +0,0 @@ -package network.platon.autotest.utils; - -import java.io.UnsupportedEncodingException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import network.platon.autotest.junit.modules.CaseInfo; -import network.platon.autotest.junit.modules.ModuleInfo; -import network.platon.autotest.junit.modules.SuiteInfo; -import org.dom4j.Document; -import org.dom4j.DocumentException; -import org.dom4j.DocumentHelper; -import org.dom4j.Element; -import org.dom4j.io.SAXReader; - -public class XmlUtil { - - public static String GetResAttributeXML(String Attribute, String resultList) - throws UnsupportedEncodingException, DocumentException { - System.out.println(resultList); - String res = ""; - try { - Document doc = DocumentHelper.parseText(resultList); - Element root = doc.getRootElement(); - res = getElementAttribute(root, Attribute); - } catch (DocumentException e) { - e.printStackTrace(); - } - return res; - } - - // 递归迭代获取xml的节点; - @SuppressWarnings("rawtypes") - public static String getElementAttribute(Element elem, String Attribute) { - String res = ""; - res = elem.attributeValue(Attribute); - System.out.println(elem.getName()); - if (res == null || res.equals("")) { - Iterator it = elem.elementIterator(); - while (it.hasNext()) { - Element e = (Element) it.next(); - System.out.println(e.getName()); - res = getElementAttribute(e, Attribute); - if (res != null && !res.equals("")) { - break; - } - } - } - return res; - } - - /** - * @param infoXML XML字符串信息 - * @param attribute 属性 - * @return 属性value值 - */ - public static List getAttributeValue(String infoXML,String attribute) { - Document document; - List listAttributeValue = new ArrayList(); - try { - document = DocumentHelper.parseText(infoXML); - Element root = document.getRootElement(); - listAttributeValue = getAttributeValue2(root,attribute); - - } catch (DocumentException e1) { - e1.printStackTrace(); - } - return listAttributeValue; - } - - @SuppressWarnings("rawtypes") - private static List getAttributeValue2(Element element, String attribute) { - List value = new ArrayList(); - value.add(element.attributeValue(attribute)); - System.out.println(element.getName()); - if(value.get(value.size()-1)==null||value==null||"null".equals(value.get(value.size()-1))){ - for(Iterator it = element.elementIterator();it.hasNext();){ - Element ele = (Element)it.next(); - System.out.println(ele.getName()); - value = getAttributeValue2(ele,attribute); - if(value.get(value.size()-1)!=null&&value!=null&&!"null".equals(value.get(value.size()-1))){ - continue; - } - } - } - - return value; - } - - @SuppressWarnings("rawtypes") - public static List> xmlDatas(String filePath) { - List> datas = new ArrayList>(); - // Map data = new HashMap(); - SAXReader reader = new SAXReader(); - Document doc; - try { - doc = reader.read(filePath); - Element root = doc.getRootElement(); - // System.out.println(root.getName()); - for (Iterator it = root.elementIterator(); it.hasNext();) { - Element element = (Element) it.next(); - // System.out.println(element.getName()); - Map data = new HashMap(); - for (Iterator itt = element.elementIterator(); itt.hasNext();) { - // System.out.println(element.attributeValue("age")); - Element el = (Element) itt.next(); - data.put(el.getName(), el.getText()); - } - datas.add(data); - } - } catch (DocumentException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - return datas; - } - - /** - * 获取src/test/resources下的plan.xml或者plan.error.xml中的数据信息并转换为测试套件SuiteInfo对象 - * @param filePath - * @return - * @throws DocumentException - */ - @SuppressWarnings("rawtypes") - public static SuiteInfo parsePlanXml(String filePath) throws DocumentException { - SuiteInfo suiteInfo = new SuiteInfo(); - //List> datas = new ArrayList>(); - SAXReader reader = new SAXReader(); - Document doc; - //File file = new File(filePath); - try { - doc = reader.read(filePath); - Element root = doc.getRootElement(); - suiteInfo.setSuiteName(root.attributeValue("name")); - List moduleInfoList = new ArrayList(); - for (Iterator it = root.elementIterator(); it.hasNext();) { - Element element = (Element) it.next(); - ModuleInfo moduleInfo = new ModuleInfo(); - moduleInfo.setModuleName(element.attributeValue("name")); - moduleInfo.setModuleRun(Boolean.valueOf(element.attributeValue("run"))); - - List caseInfoList = new ArrayList(); - for (Iterator itt = element.elementIterator(); itt.hasNext();) { - // System.out.println(element.attributeValue("age")); - Element el = (Element) itt.next(); - CaseInfo caseInfo = new CaseInfo(); - caseInfo.setCaseName(el.attributeValue("name")); - caseInfo.setCaseRun(Boolean.valueOf(el.attributeValue("run"))); - caseInfoList.add(caseInfo); - } - moduleInfo.setCaseInfoList(caseInfoList); - moduleInfoList.add(moduleInfo); - } - suiteInfo.setModuleInfoList(moduleInfoList); - } catch (DocumentException e) { - throw new DocumentException(e); - } - return suiteInfo; - } - - public static void main(String[] args) { - List> a = xmlDatas("D:/workspace/autosky/src/test/resources/plan.xml"); - System.out.println(a); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/ZipUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/ZipUtil.java deleted file mode 100644 index 5e4faf8db2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/autotest/utils/ZipUtil.java +++ /dev/null @@ -1,248 +0,0 @@ -package network.platon.autotest.utils; - -import java.io.BufferedInputStream; -import java.io.BufferedOutputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.util.Enumeration; - -import org.apache.tools.zip.ZipEntry; -import org.apache.tools.zip.ZipFile; -import org.apache.tools.zip.ZipOutputStream; - -public class ZipUtil { - - public static void main(String[] args) { - - // 把 E 盘正则表达式文件夹下的所有文件压缩到 E 盘 stu 目录下,压缩后的文件名保存为 正则表达式 .zip - - // zip ("E:// 正则表达式 ", "E://stu // 正则表达式 .zip "); - - // 把 E 盘 stu 目录下的正则表达式 .zip 压缩文件内的所有文件解压到 E 盘 stu 目录下面 - - unZip("d:\\Downloads\\data150337354.zip", "d:\\Downloads"); - - } - - /** - * - * 功能:把 sourceDir 目录下的所有文件进行 zip 格式的压缩,保存为指定 zip 文件 - * - * - * @param sourceDir - * - * - * - * @param zipFile - * - * 格式: E://stu //zipFile.zip 注意:加入 zipFile 我们传入的字符串值是 - * - * : "E://stu //" 或者 "E://stu " - * - * 如果 E 盘已经存在 stu 这个文件夹的话,那么就会出现 java.io.FileNotFoundException: - * E:/stu - * - * ( 拒绝访问。 ) 这个异常,所以要注意正确传参调用本函数哦 - * - * - */ - - public static void zip(String sourceDir, String zipFile) { - - OutputStream os; - - try { - - os = new FileOutputStream(zipFile); - - BufferedOutputStream bos = new BufferedOutputStream(os); - - ZipOutputStream zos = new ZipOutputStream(bos); - - File file = new File(sourceDir); - - String basePath = null; - - if (file.isDirectory()) { - - basePath = file.getPath(); - - } else { - - basePath = file.getParent(); - - } - - zipFile(file, basePath, zos); - - zos.closeEntry(); - - zos.close(); - - } catch (Exception e) { - - // TODO Auto-generated catch block - - e.printStackTrace(); - - } - - } - - /** - * - * @param source - * @param basePath - * @param zos - */ - private static void zipFile(File source, String basePath, - - ZipOutputStream zos) { - - File[] files = new File[0]; - - if (source.isDirectory()) { - - files = source.listFiles(); - - } else { - - files = new File[1]; - - files[0] = source; - - } - - String pathName; - - byte[] buf = new byte[1024]; - - int length = 0; - - try { - - for (File file : files) { - - if (file.isDirectory()) { - - pathName = file.getPath().substring(basePath.length() + 1) - - + "/"; - - zos.putNextEntry(new ZipEntry(pathName)); - - zipFile(file, basePath, zos); - - } else { - - pathName = file.getPath().substring(basePath.length() + 1); - - InputStream is = new FileInputStream(file); - - BufferedInputStream bis = new BufferedInputStream(is); - - zos.putNextEntry(new ZipEntry(pathName)); - - while ((length = bis.read(buf)) > 0) { - - zos.write(buf, 0, length); - - } - zos.setEncoding("gbk"); - is.close(); - - } - - } - - } catch (Exception e) { - - // TODO Auto-generated catch block - - e.printStackTrace(); - - } - - } - - /** - * - * 解压 zip 文件,注意不能解压 rar 文件哦,只能解压 zip 文件 解压 rar 文件 会出现 java.io.IOException: - * Negative - * - * - * @param zipfile - * - * zip 文件 - * - * @param destDir - * - * @throws IOException - */ - - @SuppressWarnings("rawtypes") - public static void unZip(String zipfile, String destDir) { - - destDir = destDir.endsWith("//") ? destDir : destDir + "//"; - - byte b[] = new byte[1024]; - - int length; - - ZipFile zipFile; - - try { - - zipFile = new ZipFile(new File(zipfile)); - - Enumeration enumeration = zipFile.getEntries(); - - ZipEntry zipEntry = null; - - while (enumeration.hasMoreElements()) { - - zipEntry = (ZipEntry) enumeration.nextElement(); - - File loadFile = new File(destDir + zipEntry.getName()); - - if (zipEntry.isDirectory()) { - - // 这段都可以不要,因为每次都貌似从最底层开始遍历的 - - loadFile.mkdirs(); - - } else { - - if (!loadFile.getParentFile().exists()) - - loadFile.getParentFile().mkdirs(); - - OutputStream outputStream = new FileOutputStream(loadFile); - - InputStream inputStream = zipFile.getInputStream(zipEntry); - - while ((length = inputStream.read(b)) > 0) - - outputStream.write(b, 0, length); - - } - - } - - System.out.println(" 文件解压成功 "); - - } catch (IOException e) { - - // TODO Auto-generated catch block - - e.printStackTrace(); - - } - - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/AddressBalance.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/AddressBalance.java deleted file mode 100644 index c3f5de0a57..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/AddressBalance.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AddressBalance extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060e58061001f6000396000f300608060405260043610603f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063761f36d2146044575b600080fd5b348015604f57600080fd5b506082600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506098565b6040518082815260200191505060405180910390f35b60008173ffffffffffffffffffffffffffffffffffffffff163190509190505600a165627a7a723058209052cf1d85626cb1c041b97913e05a42ac5595f0c417f82df782a23a13d817f50029"; - - public static final String FUNC_BALANCEOFPLATON = "balanceOfPlatON"; - - protected AddressBalance(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AddressBalance(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall balanceOfPlatON(String user) { - final Function function = new Function(FUNC_BALANCEOFPLATON, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(user)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AddressBalance.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AddressBalance.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AddressBalance load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AddressBalance(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AddressBalance load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AddressBalance(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/BaseDefault.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/BaseDefault.java deleted file mode 100644 index 52c19c4a41..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/BaseDefault.java +++ /dev/null @@ -1,51 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BaseDefault extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b50604051602080607b83398101806040528101908080519060200190929190505050806000819055505060358060466000396000f3006080604052600080fd00a165627a7a723058201af6de3fe1d29388fe564ca3744b8f96104bf88fbb9c6fb0acce68e208ec99970029"; - - protected BaseDefault(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BaseDefault(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _x) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(_x))); - return deployRemoteCall(BaseDefault.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _x) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(_x))); - return deployRemoteCall(BaseDefault.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static BaseDefault load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BaseDefault(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BaseDefault load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BaseDefault(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/BaseInternal.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/BaseInternal.java deleted file mode 100644 index 88e6388905..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/BaseInternal.java +++ /dev/null @@ -1,51 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BaseInternal extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b50604051602080607b83398101806040528101908080519060200190929190505050806000819055505060358060466000396000f3006080604052600080fd00a165627a7a72305820e7fc690d5ddc1a44c5065e19aa21d13427d6a753dc418a88f118c160f66eddd90029"; - - protected BaseInternal(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BaseInternal(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _x) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(_x))); - return deployRemoteCall(BaseInternal.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _x) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(_x))); - return deployRemoteCall(BaseInternal.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static BaseInternal load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BaseInternal(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BaseInternal load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BaseInternal(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/BasePublic.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/BasePublic.java deleted file mode 100644 index 01e2c1c4b2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/BasePublic.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BasePublic extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_ABSTRACTFUNCTION = "abstractFunction"; - - protected BasePublic(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BasePublic(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall abstractFunction() { - final Function function = new Function(FUNC_ABSTRACTFUNCTION, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasePublic.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasePublic.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BasePublic load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BasePublic(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BasePublic load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BasePublic(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Callee0425.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Callee0425.java deleted file mode 100644 index d4f21d582d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Callee0425.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Callee0425 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610184806100206000396000f300608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630c55699c1461005c578063371303c0146100875780635a3617561461009e575b600080fd5b34801561006857600080fd5b506100716100c9565b6040518082815260200191505060405180910390f35b34801561009357600080fd5b5061009c6100cf565b005b3480156100aa57600080fd5b506100b361014f565b6040518082815260200191505060405180910390f35b60005481565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b600080549050905600a165627a7a72305820a56c9dc8bb73f1bf533fcff3e0bdf1fa7bfc540e6318b4cf8df5e9213e4ac5c90029"; - - public static final String FUNC_X = "x"; - - public static final String FUNC_INC = "inc"; - - public static final String FUNC_GETCALLEEX = "getCalleeX"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected Callee0425(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Callee0425(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc() { - final Function function = new Function( - FUNC_INC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getCalleeX() { - final Function function = new Function(FUNC_GETCALLEEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Callee0425.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Callee0425.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Callee0425 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Callee0425(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Callee0425 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Callee0425(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String seder; - - public BigInteger x; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Caller0425.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Caller0425.java deleted file mode 100644 index c8c56d4140..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Caller0425.java +++ /dev/null @@ -1,101 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Caller0425 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506103dd806100206000396000f30060806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630c55699c146100725780637811c6c11461009d5780637b8ed018146100e0578063a7126c2d1461010b578063a94216191461014e575b600080fd5b34801561007e57600080fd5b50610087610191565b6040518082815260200191505060405180910390f35b3480156100a957600080fd5b506100de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610197565b005b3480156100ec57600080fd5b506100f5610248565b6040518082815260200191505060405180910390f35b34801561011757600080fd5b5061014c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610251565b005b34801561015a57600080fd5b5061018f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610300565b005b60005481565b8073ffffffffffffffffffffffffffffffffffffffff1660405180807f696e632829000000000000000000000000000000000000000000000000000000815250600501905060405180910390207c010000000000000000000000000000000000000000000000000000000090046040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004016000604051808303816000875af2925050505050565b60008054905090565b8073ffffffffffffffffffffffffffffffffffffffff1660405180807f696e632829000000000000000000000000000000000000000000000000000000815250600501905060405180910390207c010000000000000000000000000000000000000000000000000000000090046040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401600060405180830381865af4925050505050565b8073ffffffffffffffffffffffffffffffffffffffff1660405180807f696e632829000000000000000000000000000000000000000000000000000000815250600501905060405180910390207c010000000000000000000000000000000000000000000000000000000090046040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004016000604051808303816000875af19250505050505600a165627a7a72305820b357792fd17e1456b158b90e3e919b2f168778e5c88b4e4eadd6997cc906a7d10029"; - - public static final String FUNC_X = "x"; - - public static final String FUNC_INC_CALLCODE = "inc_callcode"; - - public static final String FUNC_GETCALLERX = "getCallerX"; - - public static final String FUNC_INC_DELEGATECALL = "inc_delegatecall"; - - public static final String FUNC_INC_CALL = "inc_call"; - - protected Caller0425(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Caller0425(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc_callcode(String _contractAddress) { - final Function function = new Function( - FUNC_INC_CALLCODE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(_contractAddress)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getCallerX() { - final Function function = new Function(FUNC_GETCALLERX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc_delegatecall(String _contractAddress) { - final Function function = new Function( - FUNC_INC_DELEGATECALL, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(_contractAddress)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall inc_call(String _contractAddress) { - final Function function = new Function( - FUNC_INC_CALL, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(_contractAddress)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Caller0425.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Caller0425.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Caller0425 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Caller0425(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Caller0425 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Caller0425(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ConstantViewPure.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ConstantViewPure.java deleted file mode 100644 index 27a522fe1d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ConstantViewPure.java +++ /dev/null @@ -1,99 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstantViewPure extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061029f806100206000396000f30060806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063262a9dff146100725780632671a08b1461009d5780635df79a41146100b4578063a1b1090e146100df578063ec36d67b1461010a575b600080fd5b34801561007e57600080fd5b50610087610135565b6040518082815260200191505060405180910390f35b3480156100a957600080fd5b506100b261013b565b005b3480156100c057600080fd5b506100c9610191565b6040518082815260200191505060405180910390f35b3480156100eb57600080fd5b506100f461019a565b6040518082815260200191505060405180910390f35b34801561011657600080fd5b5061011f6101b4565b6040518082815260200191505060405180910390f35b60015481565b6040805190810160405280600781526020017f66616e7869616e00000000000000000000000000000000000000000000000000815250600090805190602001906101869291906101ce565b506013600181905550565b60006001905090565b600060018060008282540192505081905550600154905090565b600060018060008282540192505081905550600154905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061020f57805160ff191683800117855561023d565b8280016001018555821561023d579182015b8281111561023c578251825591602001919060010190610221565b5b50905061024a919061024e565b5090565b61027091905b8082111561026c576000816000905550600101610254565b5090565b905600a165627a7a72305820569b10202bf8664ed785e43ff603215f7971d1b2622719ce3fe6ed431fd2e6d70029"; - - public static final String FUNC_AGE = "age"; - - public static final String FUNC_CONSTANTVIEWPURE = "constantViewPure"; - - public static final String FUNC_GETAGEBYPURE = "getAgeByPure"; - - public static final String FUNC_GETAGEBYVIEW = "getAgeByView"; - - public static final String FUNC_GETAGEBYCONSTANT = "getAgeByConstant"; - - protected ConstantViewPure(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstantViewPure(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall age() { - final Function function = new Function(FUNC_AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall constantViewPure() { - final Function function = new Function( - FUNC_CONSTANTVIEWPURE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getAgeByPure() { - final Function function = new Function(FUNC_GETAGEBYPURE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getAgeByView() { - final Function function = new Function(FUNC_GETAGEBYVIEW, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getAgeByConstant() { - final Function function = new Function(FUNC_GETAGEBYCONSTANT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ConstantViewPure.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ConstantViewPure.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ConstantViewPure load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstantViewPure(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstantViewPure load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstantViewPure(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ConstructorDefaultVisibility.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ConstructorDefaultVisibility.java deleted file mode 100644 index d67c3136e3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ConstructorDefaultVisibility.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorDefaultVisibility extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516020806100f6833981018060405281019080805190602001909291905050508081028060008190555050806001819055505060a2806100546000396000f300608060405260043610603f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806335f646c0146044575b600080fd5b348015604f57600080fd5b506056606c565b6040518082815260200191505060405180910390f35b60006001549050905600a165627a7a72305820a8c7fa71675bb3d45c5cadb9e4e336753c73172841c097cb761101c52980b77a0029"; - - public static final String FUNC_GETOUTI = "getOutI"; - - protected ConstructorDefaultVisibility(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorDefaultVisibility(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getOutI() { - final Function function = new Function(FUNC_GETOUTI, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _y) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_y))); - return deployRemoteCall(ConstructorDefaultVisibility.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _y) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_y))); - return deployRemoteCall(ConstructorDefaultVisibility.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static ConstructorDefaultVisibility load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorDefaultVisibility(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorDefaultVisibility load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorDefaultVisibility(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ConstructorInternalVisibility.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ConstructorInternalVisibility.java deleted file mode 100644 index 94321534bb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ConstructorInternalVisibility.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorInternalVisibility extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516020806100f58339810180604052810190808051906020019092919050505060078060008190555050806001819055505060a2806100536000396000f300608060405260043610603f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806335f646c0146044575b600080fd5b348015604f57600080fd5b506056606c565b6040518082815260200191505060405180910390f35b60006001549050905600a165627a7a7230582010cdc6ea834b38d98025e3fb857eceebddb56c036d6774fc7aafdebc8f0e7bf80029"; - - public static final String FUNC_GETOUTI = "getOutI"; - - protected ConstructorInternalVisibility(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorInternalVisibility(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getOutI() { - final Function function = new Function(FUNC_GETOUTI, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _y) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_y))); - return deployRemoteCall(ConstructorInternalVisibility.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _y) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_y))); - return deployRemoteCall(ConstructorInternalVisibility.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static ConstructorInternalVisibility load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalVisibility(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorInternalVisibility load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalVisibility(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ConstructorPublicVisibility.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ConstructorPublicVisibility.java deleted file mode 100644 index e9562397c8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ConstructorPublicVisibility.java +++ /dev/null @@ -1,121 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorPublicVisibility extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516020806102c38339810180604052810190808051906020019092919050505080600181905550506102798061004a6000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806321687d5c1461007d57806335f646c0146100a857806383f2ac99146100d357806388b5383c1461011e578063bfe9ef4f14610150578063cc80f6f31461017b575b600080fd5b34801561008957600080fd5b506100926101a6565b6040518082815260200191505060405180910390f35b3480156100b457600080fd5b506100bd6101b0565b6040518082815260200191505060405180910390f35b3480156100df57600080fd5b5061010860048036038101908080359060200190929190803590602001909291905050506101ba565b6040518082815260200191505060405180910390f35b34801561012a57600080fd5b506101336101c7565b604051808381526020018281526020019250505060405180910390f35b34801561015c57600080fd5b50610165610226565b6040518082815260200191505060405180910390f35b34801561018757600080fd5b50610190610245565b6040518082815260200191505060405180910390f35b6000600154905090565b6000600154905090565b6000818301905092915050565b600080600080600080600080600060019650600095506001945086156101ec57600193505b5b85156101fc57600192506101ed565b600091505b600282101561021b57600190508180600101925050610201565b505050505050509091565b6000607b60008190555060005460015401600181905550600154905090565b6000349050905600a165627a7a72305820fe1f775edfd77384474f362c03e99cdc85ee0c585d8ea20a4cdc3c617128ad5d0029"; - - public static final String FUNC_CONSTANTCHECK = "constantCheck"; - - public static final String FUNC_GETOUTI = "getOutI"; - - public static final String FUNC_NAMEDRETURN = "namedReturn"; - - public static final String FUNC_GRAMMARCHECK = "grammarCheck"; - - public static final String FUNC_ABSTRACTFUNCTION = "abstractFunction"; - - public static final String FUNC_SHOW = "show"; - - protected ConstructorPublicVisibility(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorPublicVisibility(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall constantCheck() { - final Function function = new Function(FUNC_CONSTANTCHECK, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getOutI() { - final Function function = new Function(FUNC_GETOUTI, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall namedReturn(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_NAMEDRETURN, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> grammarCheck() { - final Function function = new Function(FUNC_GRAMMARCHECK, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall abstractFunction() { - final Function function = new Function(FUNC_ABSTRACTFUNCTION, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall show() { - final Function function = new Function(FUNC_SHOW, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _y) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_y))); - return deployRemoteCall(ConstructorPublicVisibility.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _y) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_y))); - return deployRemoteCall(ConstructorPublicVisibility.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static ConstructorPublicVisibility load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorPublicVisibility(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorPublicVisibility load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorPublicVisibility(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ContractAndAddressFunction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ContractAndAddressFunction.java deleted file mode 100644 index ed47ea70a1..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ContractAndAddressFunction.java +++ /dev/null @@ -1,74 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple3; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ContractAndAddressFunction extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101eb806100206000396000f300608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680631a80e9cc14610043575b005b34801561004f57600080fd5b506100586100a8565b604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390f35b6000806000806000806101239250309150600a8373ffffffffffffffffffffffffffffffffffffffff16311080156100f85750600a8273ffffffffffffffffffffffffffffffffffffffff163110155b1561017d578273ffffffffffffffffffffffffffffffffffffffff166108fc600a9081150290604051600060405180830381858888f19350505050158015610144573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff166108fc600a9081150290604051600060405180830381858888f19350505050505b339050808273ffffffffffffffffffffffffffffffffffffffff16318473ffffffffffffffffffffffffffffffffffffffff16319550955095505050509091925600a165627a7a723058204358543ab57aa2f574be6c0d974baf91a495a6558775d3ba074a091ef4e9e7360029"; - - public static final String FUNC_ADDRESSCHECK = "addressCheck"; - - protected ContractAndAddressFunction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractAndAddressFunction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> addressCheck() { - final Function function = new Function(FUNC_ADDRESSCHECK, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (String) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAndAddressFunction.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAndAddressFunction.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ContractAndAddressFunction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractAndAddressFunction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractAndAddressFunction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractAndAddressFunction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/DeprecatedFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/DeprecatedFunctions.java deleted file mode 100644 index 6dd0ce38b5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/DeprecatedFunctions.java +++ /dev/null @@ -1,93 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DeprecatedFunctions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061024d806100206000396000f300608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806341c0e1b51461005c578063a3928d9914610073578063f492f3a8146100b1575b600080fd5b34801561006857600080fd5b506100716100f8565b005b34801561007f57600080fd5b5061008861012a565b604051808315151515815260200182600019166000191681526020019250505060405180910390f35b3480156100bd57600080fd5b506100de60048036038101908080351515906020019092919050505061020b565b604051808215151515815260200191505060405180910390f35b600073ca35b7d915458ef540ade6068dfe2f44e8fa733c90508073ffffffffffffffffffffffffffffffffffffffff16ff5b60008060008060008073ca35b7d915458ef540ade6068dfe2f44e8fa733c935073d25ed029c093e56bc8911a07c46545000cbf37c692508273ffffffffffffffffffffffffffffffffffffffff1684604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019150506000604051808303816000865af2915050915060405180807f77616e677a68616e6778696f6e67000000000000000000000000000000000000815250600e01905060405180910390209050818195509550505050509091565b600081151561021957600080fd5b8190509190505600a165627a7a723058209ce1c2a7d23c077c3a670d7606b0f60fd80582ff018f394d975bae29adadf3280029"; - - public static final String FUNC_KILL = "kill"; - - public static final String FUNC_FUNCTIONCHECK = "functionCheck"; - - public static final String FUNC_THROWCHECK = "throwCheck"; - - protected DeprecatedFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DeprecatedFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall kill() { - final Function function = new Function( - FUNC_KILL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall> functionCheck() { - final Function function = new Function(FUNC_FUNCTIONCHECK, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (Boolean) results.get(0).getValue(), - (byte[]) results.get(1).getValue()); - } - }); - } - - public RemoteCall throwCheck(Boolean param) { - final Function function = new Function(FUNC_THROWCHECK, - Arrays.asList(new Bool(param)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DeprecatedFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DeprecatedFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DeprecatedFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DeprecatedFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DeprecatedFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DeprecatedFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/DoWhileCheck.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/DoWhileCheck.java deleted file mode 100644 index 37207bef1e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/DoWhileCheck.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DoWhileCheck extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610101806100206000396000f300608060405260043610603f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063db60eb9e146044575b600080fd5b348015604f57600080fd5b5060566073565b604051808381526020018281526020019250505060405180910390f35b6000806000806000809250600091505b828060010193505081806001019250506014821115609f5760b7565b600a83111560ab576083565b601e83101560b7576083565b601583141560c457600c90505b600e905082819450945050505090915600a165627a7a723058201e424c84649f9e69730ffbc213d5ba9d0674a612e78d15dd11a60d329fb133290029"; - - public static final String FUNC_DOWHILECHECK = "doWhileCheck"; - - protected DoWhileCheck(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DoWhileCheck(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> doWhileCheck() { - final Function function = new Function(FUNC_DOWHILECHECK, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DoWhileCheck.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DoWhileCheck.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DoWhileCheck load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DoWhileCheck(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DoWhileCheck load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DoWhileCheck(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ERC20.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ERC20.java deleted file mode 100644 index 597bca6b52..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ERC20.java +++ /dev/null @@ -1,223 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ERC20 extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_APPROVE = "approve"; - - public static final String FUNC_TOTALSUPPLY = "totalSupply"; - - public static final String FUNC_TRANSFERFROM = "transferFrom"; - - public static final String FUNC_BALANCEOF = "balanceOf"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_ALLOWANCE = "allowance"; - - public static final Event TRANSFER_EVENT = new Event("Transfer", - Arrays.>asList(new TypeReference

(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - public static final Event APPROVAL_EVENT = new Event("Approval", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - protected ERC20(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ERC20(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall approve(String spender, BigInteger value) { - final Function function = new Function( - FUNC_APPROVE, - Arrays.asList(new Address(spender), - new Uint256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall totalSupply() { - final Function function = new Function(FUNC_TOTALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transferFrom(String from, String to, BigInteger value) { - final Function function = new Function( - FUNC_TRANSFERFROM, - Arrays.asList(new Address(from), - new Address(to), - new Uint256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall balanceOf(String who) { - final Function function = new Function(FUNC_BALANCEOF, - Arrays.asList(new Address(who)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transfer(String to, BigInteger value) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new Address(to), - new Uint256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall allowance(String owner, String spender) { - final Function function = new Function(FUNC_ALLOWANCE, - Arrays.asList(new Address(owner), - new Address(spender)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public List getApprovalEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(APPROVAL_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable approvalEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ApprovalEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(APPROVAL_EVENT, log); - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = log; - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable approvalEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(APPROVAL_EVENT)); - return approvalEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ERC20.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ERC20.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ERC20 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ERC20(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ERC20 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ERC20(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String _from; - - public String _to; - - public BigInteger _value; - } - - public static class ApprovalEventResponse { - public Log log; - - public String _owner; - - public String _spender; - - public BigInteger _value; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ERC200412Token.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ERC200412Token.java deleted file mode 100644 index 070d55742f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ERC200412Token.java +++ /dev/null @@ -1,337 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ERC200412Token extends Contract { - private static final String BINARY = "60806040526012600260006101000a81548160ff021916908360ff1602179055503480156200002d57600080fd5b50604051620013a9380380620013a9833981018060405281019080805190602001909291908051820192919060200180518201929190505050600260009054906101000a900460ff1660ff16600a0a8302600381905550600354600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160009080519060200190620000e292919062000105565b508060019080519060200190620000fb92919062000105565b50505050620001b4565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200014857805160ff191683800117855562000179565b8280016001018555821562000179579182015b82811115620001785782518255916020019190600101906200015b565b5b5090506200018891906200018c565b5090565b620001b191905b80821115620001ad57600081600090555060010162000193565b5090565b90565b6111e580620001c46000396000f3006080604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100bf578063095ea7b31461014f57806318160ddd146101b457806323b872dd146101df578063313ce5671461026457806342966c681461029557806370a08231146102da57806379cc67901461033157806395d89b4114610396578063a9059cbb14610426578063cae9ca511461048b578063dd62ed3e14610536575b600080fd5b3480156100cb57600080fd5b506100d46105ad565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101145780820151818401526020810190506100f9565b50505050905090810190601f1680156101415780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015b57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061064f565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b506101c96106dc565b6040518082815260200191505060405180910390f35b3480156101eb57600080fd5b5061024a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106e9565b604051808215151515815260200191505060405180910390f35b34801561027057600080fd5b50610279610817565b604051808260ff1660ff16815260200191505060405180910390f35b3480156102a157600080fd5b506102c06004803603810190808035906020019092919050505061082e565b604051808215151515815260200191505060405180910390f35b3480156102e657600080fd5b5061031b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610932565b6040518082815260200191505060405180910390f35b34801561033d57600080fd5b5061037c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061097b565b604051808215151515815260200191505060405180910390f35b3480156103a257600080fd5b506103ab610b95565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103eb5780820151818401526020810190506103d0565b50505050905090810190601f1680156104185780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561043257600080fd5b50610471600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c37565b604051808215151515815260200191505060405180910390f35b34801561049757600080fd5b5061051c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610c4c565b604051808215151515815260200191505060405180910390f35b34801561054257600080fd5b50610597600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610dcf565b6040518082815260200191505060405180910390f35b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106455780601f1061061a57610100808354040283529160200191610645565b820191906000526020600020905b81548152906001019060200180831161062857829003601f168201915b5050505050905090565b600081600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b6000600354905080905090565b6000600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561077657600080fd5b81600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555061080b848484610e56565b50600190509392505050565b6000600260009054906101000a900460ff16905090565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561087e57600080fd5b81600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a260019050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156109cb57600080fd5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610a5657600080fd5b81600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a26001905092915050565b606060018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c2d5780601f10610c0257610100808354040283529160200191610c2d565b820191906000526020600020905b815481529060010190602001808311610c1057829003601f168201915b5050505050905090565b6000610c44338484610e56565b905092915050565b600080849050610c5c858561064f565b15610dc6578073ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338630876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610d56578082015181840152602081019050610d3b565b50505050905090810190601f168015610d835780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015610da557600080fd5b505af1158015610db9573d6000803e3d6000fd5b5050505060019150610dc7565b5b509392505050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015610ec35750600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1515610ece57600080fd5b82600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515610f1c57600080fd5b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401111515610faa57600080fd5b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401905082600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555082600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a380600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054011491505093925050505600a165627a7a72305820440f9e731874696d577077f71ed233114ac732defd7d003622f0bdcc42b21b2f0029"; - - public static final String FUNC_NAME = "name"; - - public static final String FUNC_APPROVE = "approve"; - - public static final String FUNC_TOTALSUPPLY = "totalSupply"; - - public static final String FUNC_TRANSFERFROM = "transferFrom"; - - public static final String FUNC_DECIMALS = "decimals"; - - public static final String FUNC_BURN = "burn"; - - public static final String FUNC_BALANCEOF = "balanceOf"; - - public static final String FUNC_BURNFROM = "burnFrom"; - - public static final String FUNC_SYMBOL = "symbol"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_APPROVEANDCALL = "approveAndCall"; - - public static final String FUNC_ALLOWANCE = "allowance"; - - public static final Event TRANSFER_EVENT = new Event("Transfer", - Arrays.>asList(new TypeReference

(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - public static final Event BURN_EVENT = new Event("Burn", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference() {})); - ; - - public static final Event APPROVAL_EVENT = new Event("Approval", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - protected ERC200412Token(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ERC200412Token(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall approve(String _spender, BigInteger _value) { - final Function function = new Function( - FUNC_APPROVE, - Arrays.asList(new Address(_spender), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall totalSupply() { - final Function function = new Function(FUNC_TOTALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transferFrom(String _from, String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFERFROM, - Arrays.asList(new Address(_from), - new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall decimals() { - final Function function = new Function(FUNC_DECIMALS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall burn(BigInteger _value) { - final Function function = new Function( - FUNC_BURN, - Arrays.asList(new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall balanceOf(String _owner) { - final Function function = new Function(FUNC_BALANCEOF, - Arrays.asList(new Address(_owner)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall burnFrom(String _from, BigInteger _value) { - final Function function = new Function( - FUNC_BURNFROM, - Arrays.asList(new Address(_from), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall symbol() { - final Function function = new Function(FUNC_SYMBOL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall transfer(String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall approveAndCall(String _spender, BigInteger _value, byte[] _extraData) { - final Function function = new Function( - FUNC_APPROVEANDCALL, - Arrays.asList(new Address(_spender), - new Uint256(_value), - new com.alaya.abi.solidity.datatypes.DynamicBytes(_extraData)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall allowance(String _owner, String _spender) { - final Function function = new Function(FUNC_ALLOWANCE, - Arrays.asList(new Address(_owner), - new Address(_spender)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger initialSupply, String tokenName, String tokenSymbol) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(initialSupply), - new Utf8String(tokenName), - new Utf8String(tokenSymbol))); - return deployRemoteCall(ERC200412Token.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger initialSupply, String tokenName, String tokenSymbol) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(initialSupply), - new Utf8String(tokenName), - new Utf8String(tokenSymbol))); - return deployRemoteCall(ERC200412Token.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public List getBurnEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(BURN_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - BurnEventResponse typedResponse = new BurnEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable burnEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public BurnEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(BURN_EVENT, log); - BurnEventResponse typedResponse = new BurnEventResponse(); - typedResponse.log = log; - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable burnEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(BURN_EVENT)); - return burnEventObservable(filter); - } - - public List getApprovalEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(APPROVAL_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable approvalEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ApprovalEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(APPROVAL_EVENT, log); - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = log; - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable approvalEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(APPROVAL_EVENT)); - return approvalEventObservable(filter); - } - - public static ERC200412Token load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ERC200412Token(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ERC200412Token load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ERC200412Token(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String from; - - public String to; - - public BigInteger value; - } - - public static class BurnEventResponse { - public Log log; - - public String from; - - public BigInteger value; - } - - public static class ApprovalEventResponse { - public Log log; - - public String _owner; - - public String _spender; - - public BigInteger _value; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ERC20Interface.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ERC20Interface.java deleted file mode 100644 index ab04275d82..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/ERC20Interface.java +++ /dev/null @@ -1,252 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ERC20Interface extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_NAME = "name"; - - public static final String FUNC_APPROVE = "approve"; - - public static final String FUNC_TOTALSUPPLY = "totalSupply"; - - public static final String FUNC_TRANSFERFROM = "transferFrom"; - - public static final String FUNC_DECIMALS = "decimals"; - - public static final String FUNC_BALANCEOF = "balanceOf"; - - public static final String FUNC_SYMBOL = "symbol"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_ALLOWANCE = "allowance"; - - public static final Event TRANSFER_EVENT = new Event("Transfer", - Arrays.>asList(new TypeReference

(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - public static final Event APPROVAL_EVENT = new Event("Approval", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - protected ERC20Interface(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ERC20Interface(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall approve(String _spender, BigInteger _value) { - final Function function = new Function( - FUNC_APPROVE, - Arrays.asList(new Address(_spender), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall totalSupply() { - final Function function = new Function(FUNC_TOTALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transferFrom(String _from, String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFERFROM, - Arrays.asList(new Address(_from), - new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall decimals() { - final Function function = new Function(FUNC_DECIMALS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall balanceOf(String _owner) { - final Function function = new Function(FUNC_BALANCEOF, - Arrays.asList(new Address(_owner)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall symbol() { - final Function function = new Function(FUNC_SYMBOL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall transfer(String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall allowance(String _owner, String _spender) { - final Function function = new Function(FUNC_ALLOWANCE, - Arrays.asList(new Address(_owner), - new Address(_spender)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public List getApprovalEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(APPROVAL_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable approvalEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ApprovalEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(APPROVAL_EVENT, log); - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = log; - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable approvalEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(APPROVAL_EVENT)); - return approvalEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ERC20Interface.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ERC20Interface.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ERC20Interface load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ERC20Interface(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ERC20Interface load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ERC20Interface(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String _from; - - public String _to; - - public BigInteger _value; - } - - public static class ApprovalEventResponse { - public Log log; - - public String _owner; - - public String _spender; - - public BigInteger _value; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Eventer.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Eventer.java deleted file mode 100644 index 18c298f81d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Eventer.java +++ /dev/null @@ -1,163 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Eventer extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b5060f48061001e6000396000f300608060405260043610603f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063bf819c20146044575b600080fd5b348015604f57600080fd5b5060566058565b005b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f8f50d21be7587a4814a9d4c10b7c8d1eea6389adbd44cb59ddaba790fd2ecbbd60405160405180910390a35600a165627a7a7230582001ea7e23316e03c35a0d249701f710d4bec204ed97ff80b235e7e362fd87bf960029"; - - public static final String FUNC_GETEVENT = "getEvent"; - - public static final Event TESTINT8_EVENT = new Event("TestInt8", - Arrays.>asList(new TypeReference(true) {}, new TypeReference(true) {})); - ; - - public static final Event ANONEVENT_EVENT = new Event("AnonEvent", - Arrays.>asList(new TypeReference

() {}, new TypeReference
() {})); - ; - - protected Eventer(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Eventer(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getEvent() { - final Function function = new Function( - FUNC_GETEVENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public List getTestInt8Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TESTINT8_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TestInt8EventResponse typedResponse = new TestInt8EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.out1 = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.out2 = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable testInt8EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TestInt8EventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TESTINT8_EVENT, log); - TestInt8EventResponse typedResponse = new TestInt8EventResponse(); - typedResponse.log = log; - typedResponse.out1 = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.out2 = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable testInt8EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TESTINT8_EVENT)); - return testInt8EventObservable(filter); - } - - public List getAnonEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ANONEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - AnonEventEventResponse typedResponse = new AnonEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.param0 = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.param1 = (String) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable anonEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public AnonEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ANONEVENT_EVENT, log); - AnonEventEventResponse typedResponse = new AnonEventEventResponse(); - typedResponse.log = log; - typedResponse.param0 = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.param1 = (String) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable anonEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ANONEVENT_EVENT)); - return anonEventEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Eventer.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Eventer.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Eventer load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Eventer(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Eventer load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Eventer(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TestInt8EventResponse { - public Log log; - - public BigInteger out1; - - public BigInteger out2; - } - - public static class AnonEventEventResponse { - public Log log; - - public String param0; - - public String param1; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/HumanStandardToken.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/HumanStandardToken.java deleted file mode 100644 index 2906f10aa6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/HumanStandardToken.java +++ /dev/null @@ -1,282 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class HumanStandardToken extends Contract { - private static final String BINARY = "60806040526040805190810160405280600481526020017f48302e3100000000000000000000000000000000000000000000000000000000815250600690805190602001906200005192919062000144565b503480156200005f57600080fd5b50604051620011fb380380620011fb8339810180604052810190808051906020019092919080518201929190602001805190602001909291908051820192919050505083600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508360008190555082600390805190602001906200010592919062000144565b5081600460006101000a81548160ff021916908360ff16021790555080600590805190602001906200013992919062000144565b5050505050620001f3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200018757805160ff1916838001178555620001b8565b82800160010185558215620001b8579182015b82811115620001b75782518255916020019190600101906200019a565b5b509050620001c79190620001cb565b5090565b620001f091905b80821115620001ec576000816000905550600101620001d2565b5090565b90565b610ff880620002036000396000f3006080604052600436106100af576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100c1578063095ea7b31461015157806318160ddd146101b657806323b872dd146101e1578063313ce5671461026657806354fd4d501461029757806370a082311461032757806395d89b411461037e578063a9059cbb1461040e578063cae9ca5114610473578063dd62ed3e1461051e575b3480156100bb57600080fd5b50600080fd5b3480156100cd57600080fd5b506100d6610595565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101165780820151818401526020810190506100fb565b50505050905090810190601f1680156101435780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015d57600080fd5b5061019c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610633565b604051808215151515815260200191505060405180910390f35b3480156101c257600080fd5b506101cb610725565b6040518082815260200191505060405180910390f35b3480156101ed57600080fd5b5061024c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061072b565b604051808215151515815260200191505060405180910390f35b34801561027257600080fd5b5061027b6109a7565b604051808260ff1660ff16815260200191505060405180910390f35b3480156102a357600080fd5b506102ac6109ba565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102ec5780820151818401526020810190506102d1565b50505050905090810190601f1680156103195780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561033357600080fd5b50610368600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a58565b6040518082815260200191505060405180910390f35b34801561038a57600080fd5b50610393610aa1565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103d35780820151818401526020810190506103b8565b50505050905090810190601f1680156104005780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041a57600080fd5b50610459600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b3f565b604051808215151515815260200191505060405180910390f35b34801561047f57600080fd5b50610504600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610ca8565b604051808215151515815260200191505060405180910390f35b34801561052a57600080fd5b5061057f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f45565b6040518082815260200191505060405180910390f35b60038054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561062b5780601f106106005761010080835404028352916020019161062b565b820191906000526020600020905b81548152906001019060200180831161060e57829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156107f8575081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b80156108045750600082115b1561099b5781600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190506109a0565b600090505b9392505050565b600460009054906101000a900460ff1681565b60068054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a505780601f10610a2557610100808354040283529160200191610a50565b820191906000526020600020905b815481529060010190602001808311610a3357829003601f168201915b505050505081565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b375780601f10610b0c57610100808354040283529160200191610b37565b820191906000526020600020905b815481529060010190602001808311610b1a57829003601f168201915b505050505081565b600081600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015610b905750600082115b15610c9d5781600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050610ca2565b600090505b92915050565b600082600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff1660405180807f72656365697665417070726f76616c28616464726573732c75696e743235362c81526020017f616464726573732c627974657329000000000000000000000000000000000000815250602e01905060405180910390207c01000000000000000000000000000000000000000000000000000000009004338530866040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828051906020019080838360005b83811015610ee9578082015181840152602081019050610ece565b50505050905090810190601f168015610f165780820380516001836020036101000a031916815260200191505b509450505050506000604051808303816000875af1925050501515610f3a57600080fd5b600190509392505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050929150505600a165627a7a72305820128c736c8bfb15972aae7a460bf61c45b308ec42e9591caaf7ac175fb2a2a4b70029"; - - public static final String FUNC_NAME = "name"; - - public static final String FUNC_APPROVE = "approve"; - - public static final String FUNC_TOTALSUPPLY = "totalSupply"; - - public static final String FUNC_TRANSFERFROM = "transferFrom"; - - public static final String FUNC_DECIMALS = "decimals"; - - public static final String FUNC_VERSION = "version"; - - public static final String FUNC_BALANCEOF = "balanceOf"; - - public static final String FUNC_SYMBOL = "symbol"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_APPROVEANDCALL = "approveAndCall"; - - public static final String FUNC_ALLOWANCE = "allowance"; - - public static final Event TRANSFER_EVENT = new Event("Transfer", - Arrays.>asList(new TypeReference

(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - public static final Event APPROVAL_EVENT = new Event("Approval", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - protected HumanStandardToken(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected HumanStandardToken(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall approve(String _spender, BigInteger _value) { - final Function function = new Function( - FUNC_APPROVE, - Arrays.asList(new Address(_spender), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall totalSupply() { - final Function function = new Function(FUNC_TOTALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transferFrom(String _from, String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFERFROM, - Arrays.asList(new Address(_from), - new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall decimals() { - final Function function = new Function(FUNC_DECIMALS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall version() { - final Function function = new Function(FUNC_VERSION, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall balanceOf(String _owner) { - final Function function = new Function(FUNC_BALANCEOF, - Arrays.asList(new Address(_owner)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall symbol() { - final Function function = new Function(FUNC_SYMBOL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall transfer(String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall approveAndCall(String _spender, BigInteger _value, byte[] _extraData) { - final Function function = new Function( - FUNC_APPROVEANDCALL, - Arrays.asList(new Address(_spender), - new Uint256(_value), - new com.alaya.abi.solidity.datatypes.DynamicBytes(_extraData)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall allowance(String _owner, String _spender) { - final Function function = new Function(FUNC_ALLOWANCE, - Arrays.asList(new Address(_owner), - new Address(_spender)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _initialAmount, String _tokenName, BigInteger _decimalUnits, String _tokenSymbol) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_initialAmount), - new Utf8String(_tokenName), - new Uint8(_decimalUnits), - new Utf8String(_tokenSymbol))); - return deployRemoteCall(HumanStandardToken.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _initialAmount, String _tokenName, BigInteger _decimalUnits, String _tokenSymbol) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_initialAmount), - new Utf8String(_tokenName), - new Uint8(_decimalUnits), - new Utf8String(_tokenSymbol))); - return deployRemoteCall(HumanStandardToken.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public List getApprovalEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(APPROVAL_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable approvalEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ApprovalEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(APPROVAL_EVENT, log); - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = log; - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable approvalEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(APPROVAL_EVENT)); - return approvalEventObservable(filter); - } - - public static HumanStandardToken load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new HumanStandardToken(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static HumanStandardToken load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new HumanStandardToken(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String _from; - - public String _to; - - public BigInteger _value; - } - - public static class ApprovalEventResponse { - public Log log; - - public String _owner; - - public String _spender; - - public BigInteger _value; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/HumanStandardTokenFactory.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/HumanStandardTokenFactory.java deleted file mode 100644 index efe03d46e4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/HumanStandardTokenFactory.java +++ /dev/null @@ -1,116 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class HumanStandardTokenFactory extends Contract { - private static final String BINARY = "60806040523480156200001157600080fd5b5060006200009e6127106040805190810160405280600c81526020017f56657269667920546f6b656e000000000000000000000000000000000000000081525060036040805190810160405280600381526020017f5654580000000000000000000000000000000000000000000000000000000000815250620000d9640100000000026401000000009004565b9050620000ba81620003e6640100000000026401000000009004565b60029080519060200190620000d192919062000411565b5050620004d1565b60008085858585620000ea62000498565b80858152602001806020018460ff1660ff16815260200180602001838103835286818151815260200191508051906020019080838360005b838110156200013f57808201518184015260208101905062000122565b50505050905090810190601f1680156200016d5780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015620001a85780820151818401526020810190506200018b565b50505050905090810190601f168015620001d65780820380516001836020036101000a031916815260200191505b509650505050505050604051809103906000f080158015620001fc573d6000803e3d6000fd5b5090506000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33886040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156200039c57600080fd5b505af1158015620003b1573d6000803e3d6000fd5b505050506040513d6020811015620003c857600080fd5b81019080805190602001909291905050505080915050949350505050565b6060813b6040519150601f19601f602083010116820160405280825280600060208401853c50919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200045457805160ff191683800117855562000485565b8280016001018555821562000485579182015b828111156200048457825182559160200191906001019062000467565b5b509050620004949190620004a9565b5090565b6040516111fb80620020d483390190565b620004ce91905b80821115620004ca576000816000905550600101620004b0565b5090565b90565b611bf380620004e16000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806308216c0f1461007d5780635f8dead314610183578063acad94ae14610210578063d35b9d83146102a0578063ddea6df31461035c578063fc94dd18146103b7575b600080fd5b34801561008957600080fd5b5061014160048036038101908080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610412565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561018f57600080fd5b506101ce600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610713565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561021c57600080fd5b50610225610760565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561026557808201518184015260208101905061024a565b50505050905090810190601f1680156102925780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102ac57600080fd5b506102e1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506107fe565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610321578082015181840152602081019050610306565b50505050905090810190601f16801561034e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561036857600080fd5b5061039d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610829565b604051808215151515815260200191505060405180910390f35b3480156103c357600080fd5b506103f8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610849565b604051808215151515815260200191505060405180910390f35b600080858585856104216109bc565b80858152602001806020018460ff1660ff16815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610474578082015181840152602081019050610459565b50505050905090810190601f1680156104a15780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b838110156104da5780820151818401526020810190506104bf565b50505050905090810190601f1680156105075780820380516001836020036101000a031916815260200191505b509650505050505050604051809103906000f08015801561052c573d6000803e3d6000fd5b5090506000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505060018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33886040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156106cb57600080fd5b505af11580156106df573d6000803e3d6000fd5b505050506040513d60208110156106f557600080fd5b81019080805190602001909291905050505080915050949350505050565b60006020528160005260406000208181548110151561072e57fe5b906000526020600020016000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107f65780601f106107cb576101008083540402835291602001916107f6565b820191906000526020600020905b8154815290600101906020018083116107d957829003601f168201915b505050505081565b6060813b6040519150601f19601f602083010116820160405280825280600060208401853c50919050565b60016020528060005260406000206000915054906101000a900460ff1681565b600060606000610858846107fe565b91506002805460018160011615610100020316600290049050825114151561088357600092506109b5565b600090505b81518110156109b05760028181546001816001161561010002031660029004811015156108b157fe5b8154600116156108d05790600052602060002090602091828204019190065b9054901a7f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916828281518110151561092657fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161415156109a357600092506109b5565b8080600101915050610888565b600192505b5050919050565b6040516111fb806109cd83390190560060806040526040805190810160405280600481526020017f48302e3100000000000000000000000000000000000000000000000000000000815250600690805190602001906200005192919062000144565b503480156200005f57600080fd5b50604051620011fb380380620011fb8339810180604052810190808051906020019092919080518201929190602001805190602001909291908051820192919050505083600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508360008190555082600390805190602001906200010592919062000144565b5081600460006101000a81548160ff021916908360ff16021790555080600590805190602001906200013992919062000144565b5050505050620001f3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200018757805160ff1916838001178555620001b8565b82800160010185558215620001b8579182015b82811115620001b75782518255916020019190600101906200019a565b5b509050620001c79190620001cb565b5090565b620001f091905b80821115620001ec576000816000905550600101620001d2565b5090565b90565b610ff880620002036000396000f3006080604052600436106100af576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100c1578063095ea7b31461015157806318160ddd146101b657806323b872dd146101e1578063313ce5671461026657806354fd4d501461029757806370a082311461032757806395d89b411461037e578063a9059cbb1461040e578063cae9ca5114610473578063dd62ed3e1461051e575b3480156100bb57600080fd5b50600080fd5b3480156100cd57600080fd5b506100d6610595565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101165780820151818401526020810190506100fb565b50505050905090810190601f1680156101435780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015d57600080fd5b5061019c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610633565b604051808215151515815260200191505060405180910390f35b3480156101c257600080fd5b506101cb610725565b6040518082815260200191505060405180910390f35b3480156101ed57600080fd5b5061024c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061072b565b604051808215151515815260200191505060405180910390f35b34801561027257600080fd5b5061027b6109a7565b604051808260ff1660ff16815260200191505060405180910390f35b3480156102a357600080fd5b506102ac6109ba565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102ec5780820151818401526020810190506102d1565b50505050905090810190601f1680156103195780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561033357600080fd5b50610368600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a58565b6040518082815260200191505060405180910390f35b34801561038a57600080fd5b50610393610aa1565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103d35780820151818401526020810190506103b8565b50505050905090810190601f1680156104005780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041a57600080fd5b50610459600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b3f565b604051808215151515815260200191505060405180910390f35b34801561047f57600080fd5b50610504600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610ca8565b604051808215151515815260200191505060405180910390f35b34801561052a57600080fd5b5061057f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f45565b6040518082815260200191505060405180910390f35b60038054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561062b5780601f106106005761010080835404028352916020019161062b565b820191906000526020600020905b81548152906001019060200180831161060e57829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156107f8575081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b80156108045750600082115b1561099b5781600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190506109a0565b600090505b9392505050565b600460009054906101000a900460ff1681565b60068054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a505780601f10610a2557610100808354040283529160200191610a50565b820191906000526020600020905b815481529060010190602001808311610a3357829003601f168201915b505050505081565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b375780601f10610b0c57610100808354040283529160200191610b37565b820191906000526020600020905b815481529060010190602001808311610b1a57829003601f168201915b505050505081565b600081600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015610b905750600082115b15610c9d5781600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050610ca2565b600090505b92915050565b600082600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff1660405180807f72656365697665417070726f76616c28616464726573732c75696e743235362c81526020017f616464726573732c627974657329000000000000000000000000000000000000815250602e01905060405180910390207c01000000000000000000000000000000000000000000000000000000009004338530866040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828051906020019080838360005b83811015610ee9578082015181840152602081019050610ece565b50505050905090810190601f168015610f165780820380516001836020036101000a031916815260200191505b509450505050506000604051808303816000875af1925050501515610f3a57600080fd5b600190509392505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050929150505600a165627a7a72305820128c736c8bfb15972aae7a460bf61c45b308ec42e9591caaf7ac175fb2a2a4b70029a165627a7a72305820bb7247827a25637dc80569447ca6e3892b8905c53033d3e965858df7901e9875002960806040526040805190810160405280600481526020017f48302e3100000000000000000000000000000000000000000000000000000000815250600690805190602001906200005192919062000144565b503480156200005f57600080fd5b50604051620011fb380380620011fb8339810180604052810190808051906020019092919080518201929190602001805190602001909291908051820192919050505083600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508360008190555082600390805190602001906200010592919062000144565b5081600460006101000a81548160ff021916908360ff16021790555080600590805190602001906200013992919062000144565b5050505050620001f3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200018757805160ff1916838001178555620001b8565b82800160010185558215620001b8579182015b82811115620001b75782518255916020019190600101906200019a565b5b509050620001c79190620001cb565b5090565b620001f091905b80821115620001ec576000816000905550600101620001d2565b5090565b90565b610ff880620002036000396000f3006080604052600436106100af576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100c1578063095ea7b31461015157806318160ddd146101b657806323b872dd146101e1578063313ce5671461026657806354fd4d501461029757806370a082311461032757806395d89b411461037e578063a9059cbb1461040e578063cae9ca5114610473578063dd62ed3e1461051e575b3480156100bb57600080fd5b50600080fd5b3480156100cd57600080fd5b506100d6610595565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101165780820151818401526020810190506100fb565b50505050905090810190601f1680156101435780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015d57600080fd5b5061019c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610633565b604051808215151515815260200191505060405180910390f35b3480156101c257600080fd5b506101cb610725565b6040518082815260200191505060405180910390f35b3480156101ed57600080fd5b5061024c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061072b565b604051808215151515815260200191505060405180910390f35b34801561027257600080fd5b5061027b6109a7565b604051808260ff1660ff16815260200191505060405180910390f35b3480156102a357600080fd5b506102ac6109ba565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102ec5780820151818401526020810190506102d1565b50505050905090810190601f1680156103195780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561033357600080fd5b50610368600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a58565b6040518082815260200191505060405180910390f35b34801561038a57600080fd5b50610393610aa1565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103d35780820151818401526020810190506103b8565b50505050905090810190601f1680156104005780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041a57600080fd5b50610459600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b3f565b604051808215151515815260200191505060405180910390f35b34801561047f57600080fd5b50610504600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610ca8565b604051808215151515815260200191505060405180910390f35b34801561052a57600080fd5b5061057f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f45565b6040518082815260200191505060405180910390f35b60038054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561062b5780601f106106005761010080835404028352916020019161062b565b820191906000526020600020905b81548152906001019060200180831161060e57829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156107f8575081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b80156108045750600082115b1561099b5781600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190506109a0565b600090505b9392505050565b600460009054906101000a900460ff1681565b60068054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a505780601f10610a2557610100808354040283529160200191610a50565b820191906000526020600020905b815481529060010190602001808311610a3357829003601f168201915b505050505081565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b375780601f10610b0c57610100808354040283529160200191610b37565b820191906000526020600020905b815481529060010190602001808311610b1a57829003601f168201915b505050505081565b600081600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015610b905750600082115b15610c9d5781600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050610ca2565b600090505b92915050565b600082600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff1660405180807f72656365697665417070726f76616c28616464726573732c75696e743235362c81526020017f616464726573732c627974657329000000000000000000000000000000000000815250602e01905060405180910390207c01000000000000000000000000000000000000000000000000000000009004338530866040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828051906020019080838360005b83811015610ee9578082015181840152602081019050610ece565b50505050905090810190601f168015610f165780820380516001836020036101000a031916815260200191505b509450505050506000604051808303816000875af1925050501515610f3a57600080fd5b600190509392505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050929150505600a165627a7a72305820128c736c8bfb15972aae7a460bf61c45b308ec42e9591caaf7ac175fb2a2a4b70029"; - - public static final String FUNC_CREATEHUMANSTANDARDTOKEN = "createHumanStandardToken"; - - public static final String FUNC_CREATED = "created"; - - public static final String FUNC_HUMANSTANDARDBYTECODE = "humanStandardByteCode"; - - public static final String FUNC_CODEAT = "codeAt"; - - public static final String FUNC_ISHUMANTOKEN = "isHumanToken"; - - public static final String FUNC_VERIFYHUMANSTANDARDTOKEN = "verifyHumanStandardToken"; - - protected HumanStandardTokenFactory(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected HumanStandardTokenFactory(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall createHumanStandardToken(BigInteger _initialAmount, String _name, BigInteger _decimals, String _symbol) { - final Function function = new Function( - FUNC_CREATEHUMANSTANDARDTOKEN, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(_initialAmount), - new com.alaya.abi.solidity.datatypes.Utf8String(_name), - new com.alaya.abi.solidity.datatypes.generated.Uint8(_decimals), - new com.alaya.abi.solidity.datatypes.Utf8String(_symbol)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall created(String param0, BigInteger param1) { - final Function function = new Function(FUNC_CREATED, - Arrays.asList(new Address(param0), - new com.alaya.abi.solidity.datatypes.generated.Uint256(param1)), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall humanStandardByteCode() { - final Function function = new Function(FUNC_HUMANSTANDARDBYTECODE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall codeAt(String _addr) { - final Function function = new Function( - FUNC_CODEAT, - Arrays.asList(new Address(_addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall isHumanToken(String param0) { - final Function function = new Function(FUNC_ISHUMANTOKEN, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall verifyHumanStandardToken(String _tokenContract) { - final Function function = new Function( - FUNC_VERIFYHUMANSTANDARDTOKEN, - Arrays.asList(new Address(_tokenContract)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(HumanStandardTokenFactory.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(HumanStandardTokenFactory.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static HumanStandardTokenFactory load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new HumanStandardTokenFactory(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static HumanStandardTokenFactory load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new HumanStandardTokenFactory(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/NewSecPledgeApplyManager.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/NewSecPledgeApplyManager.java deleted file mode 100644 index ba24309f4e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/NewSecPledgeApplyManager.java +++ /dev/null @@ -1,98 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class NewSecPledgeApplyManager extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50611bf9806100206000396000f30060806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630766a725146100725780630bc5d1d61461015457806342d937671461023657806363e5f83214610318578063cc71764e146103fa575b600080fd5b34801561007e57600080fd5b506100d9600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506104dc565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101195780820151818401526020810190506100fe565b50505050905090810190601f1680156101465780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561016057600080fd5b506101bb600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506105ef565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101fb5780820151818401526020810190506101e0565b50505050905090810190601f1680156102285780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561024257600080fd5b5061029d600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610702565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102dd5780820151818401526020810190506102c2565b50505050905090810190601f16801561030a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561032457600080fd5b5061037f600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610812565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103bf5780820151818401526020810190506103a4565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561040657600080fd5b50610461600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061093e565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104a1578082015181840152602081019050610486565b50505050905090810190601f1680156104ce5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606000826040518082805190602001908083835b60208310151561051657805182526020820191506020810190506020830392506104f1565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390206015016002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105e35780601f106105b8576101008083540402835291602001916105e3565b820191906000526020600020905b8154815290600101906020018083116105c657829003601f168201915b50505050509050919050565b60606000826040518082805190602001908083835b6020831015156106295780518252602082019150602081019050602083039250610604565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020601a016002018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106f65780601f106106cb576101008083540402835291602001916106f6565b820191906000526020600020905b8154815290600101906020018083116106d957829003601f168201915b50505050509050919050565b60606000826040518082805190602001908083835b60208310151561073c5780518252602082019150602081019050602083039250610717565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390206001018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108065780601f106107db57610100808354040283529160200191610806565b820191906000526020600020905b8154815290600101906020018083116107e957829003601f168201915b50505050509050919050565b60606003826040518082805190602001908083835b60208310151561084c5780518252602082019150602081019050602083039250610827565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020600081548110151561088d57fe5b90600052602060002090600402016003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109325780601f1061090757610100808354040283529160200191610932565b820191906000526020600020905b81548152906001019060200180831161091557829003601f168201915b50505050509050919050565b6060610948611732565b610950611732565b6060600061095c61174c565b610964611807565b61096d88611442565b95506109ad6040805190810160405280600181526020017f2d00000000000000000000000000000000000000000000000000000000000000815250611442565b94506109c2858761147090919063ffffffff16565b6040519080825280602002602001820160405280156109f557816020015b60608152602001906001900390816109e05790505b509350600092505b8351831015610a4957610a21610a1c86886114e790919063ffffffff16565b611501565b8484815181101515610a2f57fe5b9060200190602002018190525082806001019350506109fd565b6001846000815181101515610a5a57fe5b906020019060200201519080600181540180825580915050906001820390600052602060002001600090919290919091509080519060200190610a9e929190611830565b5050836000815181101515610aaf57fe5b906020019060200201518260000181905250836001815181101515610ad057fe5b906020019060200201518260200181905250836002815181101515610af157fe5b906020019060200201518260400181905250836003815181101515610b1257fe5b906020019060200201518260600181905250836004815181101515610b3357fe5b906020019060200201518260800181905250836005815181101515610b5457fe5b906020019060200201518260a00181905250836006815181101515610b7557fe5b906020019060200201518260c00181905250836007815181101515610b9657fe5b906020019060200201518260e00181905250836008815181101515610bb757fe5b90602001906020020151826101000181905250836009815181101515610bd957fe5b9060200190602002015182610120018190525083600a815181101515610bfb57fe5b9060200190602002015182610140018190525083600b815181101515610c1d57fe5b9060200190602002015182610160018190525083600c815181101515610c3f57fe5b9060200190602002015182610180018190525083600d815181101515610c6157fe5b90602001906020020151826101a0018190525083600e815181101515610c8357fe5b90602001906020020151826101c0018190525083600f815181101515610ca557fe5b90602001906020020151826101e00181905250836010815181101515610cc757fe5b90602001906020020151826102000181905250836011815181101515610ce957fe5b90602001906020020151826102200181905250836012815181101515610d0b57fe5b90602001906020020151826102400181905250836013815181101515610d2d57fe5b90602001906020020151826102600181905250836014815181101515610d4f57fe5b90602001906020020151826102800181905250836008815181101515610d7157fe5b90602001906020020151816000018190525083600b815181101515610d9257fe5b90602001906020020151816020018190525083600c815181101515610db357fe5b90602001906020020151816040018190525083600d815181101515610dd457fe5b906020019060200201518160600181905250600281908060018154018082558091505090600182039060005260206000209060040201600090919290919091506000820151816000019080519060200190610e309291906118b0565b506020820151816001019080519060200190610e4d9291906118b0565b506040820151816002019080519060200190610e6a9291906118b0565b506060820151816003019080519060200190610e879291906118b0565b5050505060026003856000815181101515610e9e57fe5b906020019060200201516040518082805190602001908083835b602083101515610edd5780518252602082019150602081019050602083039250610eb8565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020908054610f1e929190611930565b50836000815181101515610f2e57fe5b90602001906020020151826102a0015160000181905250836001815181101515610f5457fe5b90602001906020020151826102a0015160200181905250836002815181101515610f7a57fe5b90602001906020020151826102a0015160400181905250836003815181101515610fa057fe5b90602001906020020151826102a0015160600181905250836004815181101515610fc657fe5b90602001906020020151826102a0015160800181905250836004815181101515610fec57fe5b90602001906020020151826102c001516000018190525083600581518110151561101257fe5b90602001906020020151826102c001516020018190525083600681518110151561103857fe5b90602001906020020151826102c001516040018190525081600083600001516040518082805190602001908083835b60208310151561108c5780518252602082019150602081019050602083039250611067565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060008201518160000190805190602001906110db9291906118b0565b5060208201518160010190805190602001906110f89291906118b0565b5060408201518160020190805190602001906111159291906118b0565b5060608201518160030190805190602001906111329291906118b0565b50608082015181600401908051906020019061114f9291906118b0565b5060a082015181600501908051906020019061116c9291906118b0565b5060c08201518160060190805190602001906111899291906118b0565b5060e08201518160070190805190602001906111a69291906118b0565b506101008201518160080190805190602001906111c49291906118b0565b506101208201518160090190805190602001906111e29291906118b0565b5061014082015181600a0190805190602001906112009291906118b0565b5061016082015181600b01908051906020019061121e9291906118b0565b5061018082015181600c01908051906020019061123c9291906118b0565b506101a082015181600d01908051906020019061125a9291906118b0565b506101c082015181600e0190805190602001906112789291906118b0565b506101e082015181600f0190805190602001906112969291906118b0565b506102008201518160100190805190602001906112b49291906118b0565b506102208201518160110190805190602001906112d29291906118b0565b506102408201518160120190805190602001906112f09291906118b0565b5061026082015181601301908051906020019061130e9291906118b0565b5061028082015181601401908051906020019061132c9291906118b0565b506102a08201518160150160008201518160000190805190602001906113539291906118b0565b5060208201518160010190805190602001906113709291906118b0565b50604082015181600201908051906020019061138d9291906118b0565b5060608201518160030190805190602001906113aa9291906118b0565b5060808201518160040190805190602001906113c79291906118b0565b5050506102c082015181601a0160008201518160000190805190602001906113f09291906118b0565b50602082015181600101908051906020019061140d9291906118b0565b50604082015181600201908051906020019061142a9291906118b0565b50505090505081600001519650505050505050919050565b61144a611732565b600060208301905060408051908101604052808451815260200182815250915050919050565b60008082600001516114948560000151866020015186600001518760200151611563565b0190505b8360000151846020015101811115156114e057818060010192505082600001516114d8856020015183038660000151038386600001518760200151611563565b019050611498565b5092915050565b6114ef611732565b6114fa838383611649565b5092915050565b606080600083600001516040519080825280601f01601f19166020018201604052801561153d5781602001602082028038833980820191505090505b50915060208201905061155981856020015186600001516116e7565b8192505050919050565b60008060008060008060008060008b97508c8b1115156116335760208b1115156115ed5760018b60200360080260020a03196001029550858a511694508a8d8d010393508588511692505b846000191683600019161415156115e55783881015156115d2578c8c019850611639565b87806001019850508588511692506115ae565b879850611639565b8a8a209150600096505b8a8d0387111515611632578a8820905080600019168260001916141561161f57879850611639565b60018801975086806001019750506115f7565b5b8c8c0198505b5050505050505050949350505050565b611651611732565b600061166f8560000151866020015186600001518760200151611563565b905084602001518360200181815250508460200151810383600001818152505084600001518560200151018114156116b15760008560000181815250506116dc565b8360000151836000015101856000018181510391508181525050836000015181018560200181815250505b829150509392505050565b60005b60208210151561170f57825184526020840193506020830192506020820391506116ea565b6001826020036101000a0390508019835116818551168181178652505050505050565b604080519081016040528060008152602001600081525090565b6103a0604051908101604052806060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016117f4611a28565b8152602001611801611a58565b81525090565b608060405190810160405280606081526020016060815260200160608152602001606081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061187157805160ff191683800117855561189f565b8280016001018555821561189f579182015b8281111561189e578251825591602001919060010190611883565b5b5090506118ac9190611a7a565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106118f157805160ff191683800117855561191f565b8280016001018555821561191f579182015b8281111561191e578251825591602001919060010190611903565b5b50905061192c9190611a7a565b5090565b828054828255906000526020600020906004028101928215611a175760005260206000209160040282015b82811115611a165782826000820181600001908054600181600116156101000203166002900461198c929190611a9f565b50600182018160010190805460018160011615610100020316600290046119b4929190611a9f565b50600282018160020190805460018160011615610100020316600290046119dc929190611a9f565b5060038201816003019080546001816001161561010002031660029004611a04929190611a9f565b5050509160040191906004019061195b565b5b509050611a249190611b26565b5090565b60a06040519081016040528060608152602001606081526020016060815260200160608152602001606081525090565b6060604051908101604052806060815260200160608152602001606081525090565b611a9c91905b80821115611a98576000816000905550600101611a80565b5090565b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ad85780548555611b15565b82800160010185558215611b1557600052602060002091601f016020900482015b82811115611b14578254825591600101919060010190611af9565b5b509050611b229190611a7a565b5090565b611b8291905b80821115611b7e5760008082016000611b459190611b85565b600182016000611b559190611b85565b600282016000611b659190611b85565b600382016000611b759190611b85565b50600401611b2c565b5090565b90565b50805460018160011615610100020316600290046000825580601f10611bab5750611bca565b601f016020900490600052602060002090810190611bc99190611a7a565b5b505600a165627a7a723058201d85a746bca4c3a427b60616884d670db79801e37964dfe30469a54d94c9fb4f0029"; - - public static final String FUNC_SELECT_TRADEUSER_BYID = "select_tradeUser_byId"; - - public static final String FUNC_SELECT_TRADEOPERATOR_BYTID = "select_tradeOperator_bytId"; - - public static final String FUNC_SELECT_SECPLEDGEAPPLY_BYID = "select_SecPledgeApply_byId"; - - public static final String FUNC_SELECT_PLEDGESECURITY_BYTID = "select_pledgeSecurity_bytId"; - - public static final String FUNC_CREATEPLEDGEAPPLYCOMMON = "createPledgeApplyCommon"; - - protected NewSecPledgeApplyManager(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected NewSecPledgeApplyManager(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall select_tradeUser_byId(String _id) { - final Function function = new Function(FUNC_SELECT_TRADEUSER_BYID, - Arrays.asList(new Utf8String(_id)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall select_tradeOperator_bytId(String _id) { - final Function function = new Function(FUNC_SELECT_TRADEOPERATOR_BYTID, - Arrays.asList(new Utf8String(_id)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall select_SecPledgeApply_byId(String _id) { - final Function function = new Function(FUNC_SELECT_SECPLEDGEAPPLY_BYID, - Arrays.asList(new Utf8String(_id)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall select_pledgeSecurity_bytId(String _id) { - final Function function = new Function(FUNC_SELECT_PLEDGESECURITY_BYTID, - Arrays.asList(new Utf8String(_id)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall createPledgeApplyCommon(String secPledgeApplyJson) { - final Function function = new Function( - FUNC_CREATEPLEDGEAPPLYCOMMON, - Arrays.asList(new Utf8String(secPledgeApplyJson)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(NewSecPledgeApplyManager.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(NewSecPledgeApplyManager.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static NewSecPledgeApplyManager load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new NewSecPledgeApplyManager(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static NewSecPledgeApplyManager load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new NewSecPledgeApplyManager(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/OrderDao.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/OrderDao.java deleted file mode 100644 index 9a687703b8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/OrderDao.java +++ /dev/null @@ -1,89 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class OrderDao extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50611659806100206000396000f300608060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630d95f613146100675780633b6cf550146100e457806342d9376714610174578063d83408fb14610256575b600080fd5b34801561007357600080fd5b506100ce600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506102e6565b6040518082815260200191505060405180910390f35b3480156100f057600080fd5b506100f9610e8c565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561013957808201518184015260208101905061011e565b50505050905090810190601f1680156101665780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561018057600080fd5b506101db600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f2a565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561021b578082015181840152602081019050610200565b50505050905090810190601f1680156102485780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561026257600080fd5b5061026b61103a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102ab578082015181840152602081019050610290565b50505050905090810190601f1680156102d85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60006102f06113c8565b6102f86113c8565b606060006103046113e2565b61030d876110d8565b945061034d6040805190810160405280600181526020017f2d000000000000000000000000000000000000000000000000000000000000008152506110d8565b9350610362848661110690919063ffffffff16565b60405190808252806020026020018201604052801561039557816020015b60608152602001906001900390816103805790505b509250600091505b82518210156103e9576103c16103bc858761117d90919063ffffffff16565b611197565b83838151811015156103cf57fe5b90602001906020020181905250818060010192505061039d565b60018360008151811015156103fa57fe5b90602001906020020151908060018154018082558091505090600182039060005260206000200160009091929091909150908051906020019061043e929190611508565b505082600081518110151561044f57fe5b90602001906020020151816000018190525082600181518110151561047057fe5b90602001906020020151816020018190525082600281518110151561049157fe5b9060200190602002015181604001819052508260038151811015156104b257fe5b9060200190602002015181606001819052508260048151811015156104d357fe5b906020019060200201518160a001819052508260058151811015156104f457fe5b906020019060200201518160c0018190525082600681518110151561051557fe5b906020019060200201518160e0018190525082600781518110151561053657fe5b9060200190602002015181610100018190525082600881518110151561055857fe5b9060200190602002015181610120018190525082600981518110151561057a57fe5b9060200190602002015181610140018190525082600a81518110151561059c57fe5b9060200190602002015181610160018190525082600b8151811015156105be57fe5b9060200190602002015181610180018190525082600c8151811015156105e057fe5b90602001906020020151816101a0018190525082600d81518110151561060257fe5b90602001906020020151816101c0018190525082600e81518110151561062457fe5b90602001906020020151816101e0018190525082600f81518110151561064657fe5b9060200190602002015181610200018190525082601081518110151561066857fe5b9060200190602002015181610220018190525082601181518110151561068a57fe5b906020019060200201518161024001819052508260128151811015156106ac57fe5b906020019060200201518161026001819052508260138151811015156106ce57fe5b906020019060200201518161028001819052508260148151811015156106f057fe5b90602001906020020151816102a0018190525082601581518110151561071257fe5b90602001906020020151816102c0018190525082601681518110151561073457fe5b90602001906020020151816102e0018190525082601781518110151561075657fe5b9060200190602002015181610300018190525082601881518110151561077857fe5b9060200190602002015181610320018190525082601981518110151561079a57fe5b9060200190602002015181610340018190525082601a8151811015156107bc57fe5b9060200190602002015181610360018190525082601b8151811015156107de57fe5b9060200190602002015181610380018190525082601c81518110151561080057fe5b90602001906020020151816103a0018190525082601d81518110151561082257fe5b90602001906020020151816103c0018190525082601e81518110151561084457fe5b90602001906020020151816103e0018190525082601f81518110151561086657fe5b9060200190602002015181610400018190525082602081518110151561088857fe5b906020019060200201518161042001819052508260218151811015156108aa57fe5b906020019060200201518161044001819052508260228151811015156108cc57fe5b906020019060200201518161046001819052508260238151811015156108ee57fe5b9060200190602002015181610480018190525082602481518110151561091057fe5b90602001906020020151816104a0018190525082602581518110151561093257fe5b90602001906020020151816104c0018190525082602681518110151561095457fe5b90602001906020020151816104e0018190525080600082600001516040518082805190602001908083835b6020831015156109a4578051825260208201915060208101905060208303925061097f565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060008201518160000190805190602001906109f3929190611588565b506020820151816001019080519060200190610a10929190611588565b506040820151816002019080519060200190610a2d929190611588565b506060820151816003019080519060200190610a4a929190611588565b506080820151816004019080519060200190610a67929190611588565b5060a0820151816005019080519060200190610a84929190611588565b5060c0820151816006019080519060200190610aa1929190611588565b5060e0820151816007019080519060200190610abe929190611588565b50610100820151816008019080519060200190610adc929190611588565b50610120820151816009019080519060200190610afa929190611588565b5061014082015181600a019080519060200190610b18929190611588565b5061016082015181600b019080519060200190610b36929190611588565b5061018082015181600c019080519060200190610b54929190611588565b506101a082015181600d019080519060200190610b72929190611588565b506101c082015181600e019080519060200190610b90929190611588565b506101e082015181600f019080519060200190610bae929190611588565b50610200820151816010019080519060200190610bcc929190611588565b50610220820151816011019080519060200190610bea929190611588565b50610240820151816012019080519060200190610c08929190611588565b50610260820151816013019080519060200190610c26929190611588565b50610280820151816014019080519060200190610c44929190611588565b506102a0820151816015019080519060200190610c62929190611588565b506102c0820151816016019080519060200190610c80929190611588565b506102e0820151816017019080519060200190610c9e929190611588565b50610300820151816018019080519060200190610cbc929190611588565b50610320820151816019019080519060200190610cda929190611588565b5061034082015181601a019080519060200190610cf8929190611588565b5061036082015181601b019080519060200190610d16929190611588565b5061038082015181601c019080519060200190610d34929190611588565b506103a082015181601d019080519060200190610d52929190611588565b506103c082015181601e019080519060200190610d70929190611588565b506103e082015181601f019080519060200190610d8e929190611588565b50610400820151816020019080519060200190610dac929190611588565b50610420820151816021019080519060200190610dca929190611588565b50610440820151816022019080519060200190610de8929190611588565b50610460820151816023019080519060200190610e06929190611588565b50610480820151816024019080519060200190610e24929190611588565b506104a0820151816025019080519060200190610e42929190611588565b506104c0820151816026019080519060200190610e60929190611588565b506104e0820151816027019080519060200190610e7e929190611588565b509050505050505050919050565b60038054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f225780601f10610ef757610100808354040283529160200191610f22565b820191906000526020600020905b815481529060010190602001808311610f0557829003601f168201915b505050505081565b60606000826040518082805190602001908083835b602083101515610f645780518252602082019150602081019050602083039250610f3f565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390206001018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561102e5780601f106110035761010080835404028352916020019161102e565b820191906000526020600020905b81548152906001019060200180831161101157829003601f168201915b50505050509050919050565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110d05780601f106110a5576101008083540402835291602001916110d0565b820191906000526020600020905b8154815290600101906020018083116110b357829003601f168201915b505050505081565b6110e06113c8565b600060208301905060408051908101604052808451815260200182815250915050919050565b600080826000015161112a85600001518660200151866000015187602001516111f9565b0190505b836000015184602001510181111515611176578180600101925050826000015161116e8560200151830386600001510383866000015187602001516111f9565b01905061112e565b5092915050565b6111856113c8565b6111908383836112df565b5092915050565b606080600083600001516040519080825280601f01601f1916602001820160405280156111d35781602001602082028038833980820191505090505b5091506020820190506111ef818560200151866000015161137d565b8192505050919050565b60008060008060008060008060008b97508c8b1115156112c95760208b1115156112835760018b60200360080260020a03196001029550858a511694508a8d8d010393508588511692505b8460001916836000191614151561127b578388101515611268578c8c0198506112cf565b8780600101985050858851169250611244565b8798506112cf565b8a8a209150600096505b8a8d03871115156112c8578a882090508060001916826000191614156112b5578798506112cf565b600188019750868060010197505061128d565b5b8c8c0198505b5050505050505050949350505050565b6112e76113c8565b600061130585600001518660200151866000015187602001516111f9565b90508460200151836020018181525050846020015181038360000181815250508460000151856020015101811415611347576000856000018181525050611372565b8360000151836000015101856000018181510391508181525050836000015181018560200181815250505b829150509392505050565b60005b6020821015156113a55782518452602084019350602083019250602082039150611380565b6001826020036101000a0390508019835116818551168181178652505050505050565b604080519081016040528060008152602001600081525090565b61050060405190810160405280606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061154957805160ff1916838001178555611577565b82800160010185558215611577579182015b8281111561157657825182559160200191906001019061155b565b5b5090506115849190611608565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115c957805160ff19168380011785556115f7565b828001600101855582156115f7579182015b828111156115f65782518255916020019190600101906115db565b5b5090506116049190611608565b5090565b61162a91905b8082111561162657600081600090555060010161160e565b5090565b905600a165627a7a72305820671091867a5bc523b430eb127cb5ecef12ed740867bb69eee40b9cdb615689be0029"; - - public static final String FUNC_INSERT_SECPLEDGEAPPLY = "insert_SecPledgeApply"; - - public static final String FUNC_PART2 = "part2"; - - public static final String FUNC_SELECT_SECPLEDGEAPPLY_BYID = "select_SecPledgeApply_byId"; - - public static final String FUNC_PART1 = "part1"; - - protected OrderDao(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected OrderDao(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall insert_SecPledgeApply(String param) { - final Function function = new Function( - FUNC_INSERT_SECPLEDGEAPPLY, - Arrays.asList(new Utf8String(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall part2() { - final Function function = new Function(FUNC_PART2, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall select_SecPledgeApply_byId(String _id) { - final Function function = new Function(FUNC_SELECT_SECPLEDGEAPPLY_BYID, - Arrays.asList(new Utf8String(_id)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall part1() { - final Function function = new Function(FUNC_PART1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(OrderDao.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(OrderDao.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static OrderDao load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new OrderDao(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static OrderDao load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new OrderDao(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Owned.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Owned.java deleted file mode 100644 index 627d8b7a30..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Owned.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Owned extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610243806100606000396000f30060806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806313af4035146100515780638da5cb5b14610094575b600080fd5b34801561005d57600080fd5b50610092600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506100eb565b005b3480156100a057600080fd5b506100a96101f2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156101af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a72305820abddccd21ef274824fe69af4ea623a7516e721ad0d3a8782ed9ff02bd7cc178e0029"; - - public static final String FUNC_SETOWNER = "setOwner"; - - public static final String FUNC_OWNER = "owner"; - - protected Owned(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Owned(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall setOwner(String newOwner) { - final Function function = new Function( - FUNC_SETOWNER, - Arrays.asList(new Address(newOwner)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall owner() { - final Function function = new Function(FUNC_OWNER, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Owned.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Owned.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Owned load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Owned(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Owned load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Owned(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Pausable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Pausable.java deleted file mode 100644 index 7140858ea6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Pausable.java +++ /dev/null @@ -1,184 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Pausable extends Contract { - private static final String BINARY = "608060405260008060146101000a81548160ff021916908315150217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506105248061006d6000396000f30060806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806313af4035146100725780633f4ba83a146100b55780635c975abb146100cc5780638456cb59146100fb5780638da5cb5b14610112575b600080fd5b34801561007e57600080fd5b506100b3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610169565b005b3480156100c157600080fd5b506100ca610270565b005b3480156100d857600080fd5b506100e1610397565b604051808215151515815260200191505060405180910390f35b34801561010757600080fd5b506101106103aa565b005b34801561011e57600080fd5b506101276104d3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561022d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610334576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b600060149054906101000a900460ff16151561034f57600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561046e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b600060149054906101000a900460ff1615151561048a57600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a72305820f46e99247a14fede6e9810a2c2040a1742d72c268d9aa803e028ee78508979490029"; - - public static final String FUNC_SETOWNER = "setOwner"; - - public static final String FUNC_UNPAUSE = "unpause"; - - public static final String FUNC_PAUSED = "paused"; - - public static final String FUNC_PAUSE = "pause"; - - public static final String FUNC_OWNER = "owner"; - - public static final Event PAUSE_EVENT = new Event("Pause", - Arrays.>asList()); - ; - - public static final Event UNPAUSE_EVENT = new Event("Unpause", - Arrays.>asList()); - ; - - protected Pausable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Pausable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall setOwner(String newOwner) { - final Function function = new Function( - FUNC_SETOWNER, - Arrays.asList(new Address(newOwner)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall unpause() { - final Function function = new Function( - FUNC_UNPAUSE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall paused() { - final Function function = new Function(FUNC_PAUSED, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall pause() { - final Function function = new Function( - FUNC_PAUSE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall owner() { - final Function function = new Function(FUNC_OWNER, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public List getPauseEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(PAUSE_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - PauseEventResponse typedResponse = new PauseEventResponse(); - typedResponse.log = eventValues.getLog(); - responses.add(typedResponse); - } - return responses; - } - - public Observable pauseEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public PauseEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(PAUSE_EVENT, log); - PauseEventResponse typedResponse = new PauseEventResponse(); - typedResponse.log = log; - return typedResponse; - } - }); - } - - public Observable pauseEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(PAUSE_EVENT)); - return pauseEventObservable(filter); - } - - public List getUnpauseEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(UNPAUSE_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - UnpauseEventResponse typedResponse = new UnpauseEventResponse(); - typedResponse.log = eventValues.getLog(); - responses.add(typedResponse); - } - return responses; - } - - public Observable unpauseEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public UnpauseEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(UNPAUSE_EVENT, log); - UnpauseEventResponse typedResponse = new UnpauseEventResponse(); - typedResponse.log = log; - return typedResponse; - } - }); - } - - public Observable unpauseEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(UNPAUSE_EVENT)); - return unpauseEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Pausable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Pausable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Pausable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Pausable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Pausable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Pausable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class PauseEventResponse { - public Log log; - } - - public static class UnpauseEventResponse { - public Log log; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Person.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Person.java deleted file mode 100644 index 443efaae36..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Person.java +++ /dev/null @@ -1,127 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Person extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060b4600181905550601460008190555033600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040805190810160405280600681526020017f71637869616f0000000000000000000000000000000000000000000000000000815250600390805190602001906100ad9291906100b3565b50610158565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100f457805160ff1916838001178555610122565b82800160010185558215610122579182015b82811115610121578251825591602001919060010190610106565b5b50905061012f9190610133565b5090565b61015591905b80821115610151576000816000905550600101610139565b5090565b90565b6104b1806101676000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100935780630ef267431461012357806326121ff01461014e578063262a9dff1461016557806341c0e1b514610190578063741a3944146101a75780638da5cb5b146101d4578063d5dcf1271461022b575b600080fd5b34801561009f57600080fd5b506100a8610258565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100e85780820151818401526020810190506100cd565b50505050905090810190601f1680156101155780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561012f57600080fd5b506101386102fa565b6040518082815260200191505060405180910390f35b34801561015a57600080fd5b50610163610304565b005b34801561017157600080fd5b5061017a610310565b6040518082815260200191505060405180910390f35b34801561019c57600080fd5b506101a5610319565b005b3480156101b357600080fd5b506101d2600480360381019080803590602001909291905050506103ac565b005b3480156101e057600080fd5b506101e96103b6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561023757600080fd5b50610256600480360381019080803590602001909291905050506103e0565b005b606060038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102f05780601f106102c5576101008083540402835291602001916102f0565b820191906000526020600020905b8154815290600101906020018083116102d357829003601f168201915b5050505050905090565b6000600154905090565b61030e60036103ea565b565b60008054905090565b3373ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156103aa57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b565b8060018190555050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b8060008190555050565b7f5100000000000000000000000000000000000000000000000000000000000000816000815460018160011615610100020316600290048110151561042b57fe5b81546001161561044a5790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f010000000000000000000000000000000000000000000000000000000000000084040217905550505600a165627a7a7230582098bbfdff3f97e67e12b880dad5412d89f52f2a6886e244396efae9f00929ea340029"; - - public static final String FUNC_NAME = "name"; - - public static final String FUNC_HEIGHT = "height"; - - public static final String FUNC_F = "f"; - - public static final String FUNC_AGE = "age"; - - public static final String FUNC_KILL = "kill"; - - public static final String FUNC_SETHEIGHT = "setHeight"; - - public static final String FUNC_OWNER = "owner"; - - public static final String FUNC_SETAGE = "setAge"; - - protected Person(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Person(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall height() { - final Function function = new Function(FUNC_HEIGHT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall f() { - final Function function = new Function( - FUNC_F, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall age() { - final Function function = new Function(FUNC_AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public void kill() { - throw new RuntimeException("cannot call constant function with void return type"); - } - - public RemoteCall setHeight(BigInteger height) { - final Function function = new Function( - FUNC_SETHEIGHT, - Arrays.asList(new Uint256(height)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall owner() { - final Function function = new Function(FUNC_OWNER, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setAge(BigInteger age) { - final Function function = new Function( - FUNC_SETAGE, - Arrays.asList(new Uint256(age)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Person.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Person.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Person load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Person(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Person load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Person(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/QuickSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/QuickSort.java deleted file mode 100644 index fb8558c59a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/QuickSort.java +++ /dev/null @@ -1,96 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class QuickSort extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610476806100206000396000f300608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680631703539c1461005c57806371e5ee5f146100d6578063cc80f6f314610117575b600080fd5b34801561006857600080fd5b506100d4600480360381019080803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035906020019092919080359060200190929190505050610183565b005b3480156100e257600080fd5b50610101600480360381019080803590602001909291905050506101aa565b6040518082815260200191505060405180910390f35b34801561012357600080fd5b5061012c6101cd565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561016f578082015181840152602081019050610154565b505050509050019250505060405180910390f35b61018e838383610225565b82600090805190602001906101a49291906103d8565b50505050565b6000818154811015156101b957fe5b906000526020600020016000915090505481565b6060600080548060200260200160405190810160405280929190818152602001828054801561021b57602002820191906000526020600020905b815481526020019060010190808311610207575b5050505050905090565b6000818310156102645761023a84848461026a565b905060008114151561025557610254848460018403610225565b5b610263846001830184610225565b5b50505050565b600080600080868681518110151561027e57fe5b9060200190602002015192508591508490505b80821415156103ae575b80821080156102c057508287828151811015156102b457fe5b90602001906020020151135b156102d05760018103905061029b565b808210156103135786818151811015156102e657fe5b9060200190602002015187838151811015156102fe57fe5b90602001906020020181815250506001820191505b5b8082108015610339575082878381518110151561032d57fe5b90602001906020020151125b1561034957600182019150610314565b8082101561038c57868281518110151561035f57fe5b90602001906020020151878281518110151561037757fe5b90602001906020020181815250506001810390505b82878381518110151561039b57fe5b9060200190602002018181525050610291565b8287838151811015156103bd57fe5b90602001906020020181815250508193505050509392505050565b828054828255906000526020600020908101928215610414579160200282015b828111156104135782518255916020019190600101906103f8565b5b5090506104219190610425565b5090565b61044791905b8082111561044357600081600090555060010161042b565b5090565b905600a165627a7a72305820441576b1cf4874aa9409b5eb4820c676afe9e0e5102182c119c2f4d76a90d46d0029"; - - public static final String FUNC_SORT = "sort"; - - public static final String FUNC_ARR = "arr"; - - public static final String FUNC_SHOW = "show"; - - protected QuickSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected QuickSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sort(List _arr, BigInteger low, BigInteger high) { - final Function function = new Function( - FUNC_SORT, - Arrays.asList(new DynamicArray( - Int256.class, - com.alaya.abi.solidity.Utils.typeMap(_arr, Int256.class)), - new com.alaya.abi.solidity.datatypes.generated.Uint256(low), - new com.alaya.abi.solidity.datatypes.generated.Uint256(high)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall arr(BigInteger param0) { - final Function function = new Function(FUNC_ARR, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall show() { - final Function function = new Function(FUNC_SHOW, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(QuickSort.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(QuickSort.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static QuickSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new QuickSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static QuickSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new QuickSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/SameNameConstructorDefaultVisibility.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/SameNameConstructorDefaultVisibility.java deleted file mode 100644 index ccf0b2e7fa..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/SameNameConstructorDefaultVisibility.java +++ /dev/null @@ -1,108 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SameNameConstructorDefaultVisibility extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506102a8806100206000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633b016c7e1461007d5780637f14d919146100be5780638d97752a146100ff578063ac84179514610140578063ba1ae46e14610181578063ba91daeb146101ae575b600080fd5b34801561008957600080fd5b506100a8600480360381019080803590602001909291905050506101ef565b6040518082815260200191505060405180910390f35b3480156100ca57600080fd5b506100e960048036038101908080359060200190929190505050610201565b6040518082815260200191505060405180910390f35b34801561010b57600080fd5b5061012a60048036038101908080359060200190929190505050610214565b6040518082815260200191505060405180910390f35b34801561014c57600080fd5b5061016b60048036038101908080359060200190929190505050610227565b6040518082815260200191505060405180910390f35b34801561018d57600080fd5b506101ac6004803603810190808035906020019092919050505061023a565b005b3480156101ba57600080fd5b506101d960048036038101908080359060200190929190505050610244565b6040518082815260200191505060405180910390f35b60006101fa82610256565b9050919050565b6000816000819055506000549050919050565b6000816000819055506000549050919050565b6000816000819055506000549050919050565b8060008190555050565b600061024f82610269565b9050919050565b6000816000819055506000549050919050565b60008160008190555060005490509190505600a165627a7a72305820ac04b63152c728bfe20de3d7db9a5217f73a5ab916320f5edc9f26689daf553e0029"; - - public static final String FUNC_PRIVATEVISIBILITYCHECK = "privateVisibilityCheck"; - - public static final String FUNC_DEFAULTVISIBILITY = "defaultVisibility"; - - public static final String FUNC_PUBLICVISIBILITY = "publicVisibility"; - - public static final String FUNC_EXTERNALVISIBILITY = "externalVisibility"; - - public static final String FUNC_SAMENAMECONSTRUCTORVISIBILITY = "SameNameConstructorVisibility"; - - public static final String FUNC_INTERNALVISIBILITYCHECK = "internalVisibilityCheck"; - - protected SameNameConstructorDefaultVisibility(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SameNameConstructorDefaultVisibility(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall privateVisibilityCheck(BigInteger param) { - final Function function = new Function(FUNC_PRIVATEVISIBILITYCHECK, - Arrays.asList(new Uint256(param)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall defaultVisibility(BigInteger param) { - final Function function = new Function(FUNC_DEFAULTVISIBILITY, - Arrays.asList(new Uint256(param)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall publicVisibility(BigInteger param) { - final Function function = new Function(FUNC_PUBLICVISIBILITY, - Arrays.asList(new Uint256(param)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall externalVisibility(BigInteger param) { - final Function function = new Function(FUNC_EXTERNALVISIBILITY, - Arrays.asList(new Uint256(param)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall SameNameConstructorVisibility(BigInteger param) { - final Function function = new Function( - FUNC_SAMENAMECONSTRUCTORVISIBILITY, - Arrays.asList(new Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall internalVisibilityCheck(BigInteger param) { - final Function function = new Function(FUNC_INTERNALVISIBILITYCHECK, - Arrays.asList(new Uint256(param)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SameNameConstructorDefaultVisibility.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SameNameConstructorDefaultVisibility.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static SameNameConstructorDefaultVisibility load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SameNameConstructorDefaultVisibility(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SameNameConstructorDefaultVisibility load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SameNameConstructorDefaultVisibility(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/SameNameConstructorInternalVisibility.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/SameNameConstructorInternalVisibility.java deleted file mode 100644 index 2baba026a5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/SameNameConstructorInternalVisibility.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple3; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SameNameConstructorInternalVisibility extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060d68061001f6000396000f300608060405260043610603f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063bb8220ea146044575b600080fd5b348015604f57600080fd5b506056607a565b60405180848152602001838152602001828152602001935050505060405180910390f35b6000806000806000806000600180905080945050600190508383828060ff169050965096509650505050509091925600a165627a7a7230582004a28fa9a576c470564a537a104866ca4ce192f80f0764f72c82f828adec79090029"; - - public static final String FUNC_DISCARDVARIABLE = "discardVariable"; - - protected SameNameConstructorInternalVisibility(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SameNameConstructorInternalVisibility(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> discardVariable() { - final Function function = new Function(FUNC_DISCARDVARIABLE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SameNameConstructorInternalVisibility.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SameNameConstructorInternalVisibility.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static SameNameConstructorInternalVisibility load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SameNameConstructorInternalVisibility(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SameNameConstructorInternalVisibility load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SameNameConstructorInternalVisibility(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/SameNameConstructorPublicVisibility.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/SameNameConstructorPublicVisibility.java deleted file mode 100644 index e7a51d535c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/SameNameConstructorPublicVisibility.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple6; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SameNameConstructorPublicVisibility extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060405160208061016783398101806040528101908080519060200190929190505050806000819055505061011d8061004a6000396000f300608060405260043610603f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680634c9b47a614604d575b348015604a57600080fd5b50005b348015605857600080fd5b50605f6098565b60405180878152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b60008060008060008060008060008060006301e133809450680dd2d5fcf3bc9c0000935060ff925060ff9150680dd2d5fcf3bc9c0000905060005485858585859a509a509a509a509a509a5050505050509091929394955600a165627a7a723058202b4a959a09674db3619868c043e25deae894ba277821181d7b80fcc5ba0742ce0029"; - - public static final String FUNC_DISCARDLITERALSANDSUFFIXES = "discardLiteralsAndSuffixes"; - - protected SameNameConstructorPublicVisibility(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SameNameConstructorPublicVisibility(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> discardLiteralsAndSuffixes() { - final Function function = new Function(FUNC_DISCARDLITERALSANDSUFFIXES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple6 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple6( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (BigInteger) results.get(3).getValue(), - (BigInteger) results.get(4).getValue(), - (BigInteger) results.get(5).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger param) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(param))); - return deployRemoteCall(SameNameConstructorPublicVisibility.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger param) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(param))); - return deployRemoteCall(SameNameConstructorPublicVisibility.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static SameNameConstructorPublicVisibility load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SameNameConstructorPublicVisibility(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SameNameConstructorPublicVisibility load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SameNameConstructorPublicVisibility(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/StandardToken.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/StandardToken.java deleted file mode 100644 index b620cd84e3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/StandardToken.java +++ /dev/null @@ -1,223 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class StandardToken extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061089e806100206000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063095ea7b31461007d57806318160ddd146100e257806323b872dd1461010d57806370a0823114610192578063a9059cbb146101e9578063dd62ed3e1461024e575b600080fd5b34801561008957600080fd5b506100c8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506102c5565b604051808215151515815260200191505060405180910390f35b3480156100ee57600080fd5b506100f76103b7565b6040518082815260200191505060405180910390f35b34801561011957600080fd5b50610178600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506103bd565b604051808215151515815260200191505060405180910390f35b34801561019e57600080fd5b506101d3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610639565b6040518082815260200191505060405180910390f35b3480156101f557600080fd5b50610234600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610682565b604051808215151515815260200191505060405180910390f35b34801561025a57600080fd5b506102af600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506107eb565b6040518082815260200191505060405180910390f35b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015801561048a575081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b80156104965750600082115b1561062d5781600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050610632565b600090505b9392505050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600081600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156106d35750600082115b156107e05781600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190506107e5565b600090505b92915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050929150505600a165627a7a72305820a5fc670a8d0272050c8f36b483e7b0c7e8f10afb007bff4df695dc4c1f846e430029"; - - public static final String FUNC_APPROVE = "approve"; - - public static final String FUNC_TOTALSUPPLY = "totalSupply"; - - public static final String FUNC_TRANSFERFROM = "transferFrom"; - - public static final String FUNC_BALANCEOF = "balanceOf"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_ALLOWANCE = "allowance"; - - public static final Event TRANSFER_EVENT = new Event("Transfer", - Arrays.>asList(new TypeReference

(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - public static final Event APPROVAL_EVENT = new Event("Approval", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - protected StandardToken(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected StandardToken(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall approve(String _spender, BigInteger _value) { - final Function function = new Function( - FUNC_APPROVE, - Arrays.asList(new Address(_spender), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall totalSupply() { - final Function function = new Function(FUNC_TOTALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transferFrom(String _from, String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFERFROM, - Arrays.asList(new Address(_from), - new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall balanceOf(String _owner) { - final Function function = new Function(FUNC_BALANCEOF, - Arrays.asList(new Address(_owner)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transfer(String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall allowance(String _owner, String _spender) { - final Function function = new Function(FUNC_ALLOWANCE, - Arrays.asList(new Address(_owner), - new Address(_spender)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public List getApprovalEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(APPROVAL_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable approvalEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ApprovalEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(APPROVAL_EVENT, log); - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = log; - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable approvalEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(APPROVAL_EVENT)); - return approvalEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StandardToken.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StandardToken.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static StandardToken load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new StandardToken(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static StandardToken load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new StandardToken(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String _from; - - public String _to; - - public BigInteger _value; - } - - public static class ApprovalEventResponse { - public Log log; - - public String _owner; - - public String _spender; - - public BigInteger _value; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/StorageLocation.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/StorageLocation.java deleted file mode 100644 index cefc0ab7dd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/StorageLocation.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class StorageLocation extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610524806100206000396000f30060806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063066cfad114610051578063fcbc6ad714610105575b600080fd5b34801561005d57600080fd5b5061008a6004803603810190808035906020019082018035906020019190919293919293905050506101e7565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100ca5780820151818401526020810190506100af565b50505050905090810190601f1680156100f75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561011157600080fd5b5061016c600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061029e565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101ac578082015181840152602081019050610191565b50505050905090810190601f1680156101d95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60608282600091906101fa9291906103d3565b5060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102915780601f1061026657610100808354040283529160200191610291565b820191906000526020600020905b81548152906001019060200180831161027457829003601f168201915b5050505050905092915050565b606081600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090805190602001906102f3929190610453565b50600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103c75780601f1061039c576101008083540402835291602001916103c7565b820191906000526020600020905b8154815290600101906020018083116103aa57829003601f168201915b50505050509050919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061041457803560ff1916838001178555610442565b82800160010185558215610442579182015b82811115610441578235825591602001919060010190610426565b5b50905061044f91906104d3565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061049457805160ff19168380011785556104c2565b828001600101855582156104c2579182015b828111156104c15782518255916020019190600101906104a6565b5b5090506104cf91906104d3565b5090565b6104f591905b808211156104f15760008160009055506001016104d9565b5090565b905600a165627a7a72305820e0325dceb320392e53e0a62b06e00e18c6d14a40307e80de991bf5bb40caa4c40029"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_STORAGELOCALTIONCHECK = "storageLocaltionCheck"; - - protected StorageLocation(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected StorageLocation(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall transfer(byte[] _data) { - final Function function = new Function(FUNC_TRANSFER, - Arrays.asList(new DynamicBytes(_data)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall storageLocaltionCheck(byte[] _data) { - final Function function = new Function(FUNC_STORAGELOCALTIONCHECK, - Arrays.asList(new DynamicBytes(_data)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StorageLocation.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StorageLocation.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static StorageLocation load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new StorageLocation(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static StorageLocation load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new StorageLocation(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Token.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Token.java deleted file mode 100644 index 624529d26d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/Token.java +++ /dev/null @@ -1,223 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Token extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_APPROVE = "approve"; - - public static final String FUNC_TOTALSUPPLY = "totalSupply"; - - public static final String FUNC_TRANSFERFROM = "transferFrom"; - - public static final String FUNC_BALANCEOF = "balanceOf"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_ALLOWANCE = "allowance"; - - public static final Event TRANSFER_EVENT = new Event("Transfer", - Arrays.>asList(new TypeReference

(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - public static final Event APPROVAL_EVENT = new Event("Approval", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - protected Token(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Token(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall approve(String _spender, BigInteger _value) { - final Function function = new Function( - FUNC_APPROVE, - Arrays.asList(new Address(_spender), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall totalSupply() { - final Function function = new Function(FUNC_TOTALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transferFrom(String _from, String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFERFROM, - Arrays.asList(new Address(_from), - new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall balanceOf(String _owner) { - final Function function = new Function(FUNC_BALANCEOF, - Arrays.asList(new Address(_owner)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transfer(String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall allowance(String _owner, String _spender) { - final Function function = new Function(FUNC_ALLOWANCE, - Arrays.asList(new Address(_owner), - new Address(_spender)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public List getApprovalEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(APPROVAL_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable approvalEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ApprovalEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(APPROVAL_EVENT, log); - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = log; - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable approvalEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(APPROVAL_EVENT)); - return approvalEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Token.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Token.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Token load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Token(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Token load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Token(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String _from; - - public String _to; - - public BigInteger _value; - } - - public static class ApprovalEventResponse { - public Log log; - - public String _owner; - - public String _spender; - - public BigInteger _value; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/TokenRecipient.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/TokenRecipient.java deleted file mode 100644 index f8321934d1..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/TokenRecipient.java +++ /dev/null @@ -1,65 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TokenRecipient extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_RECEIVEAPPROVAL = "receiveApproval"; - - protected TokenRecipient(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TokenRecipient(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall receiveApproval(String _from, BigInteger _value, String _token, byte[] _extraData) { - final Function function = new Function( - FUNC_RECEIVEAPPROVAL, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(_from), - new com.alaya.abi.solidity.datatypes.generated.Uint256(_value), - new com.alaya.abi.solidity.datatypes.Address(_token), - new com.alaya.abi.solidity.datatypes.DynamicBytes(_extraData)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TokenRecipient.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TokenRecipient.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TokenRecipient load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TokenRecipient(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TokenRecipient load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TokenRecipient(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/TypeCast.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/TypeCast.java deleted file mode 100644 index 43a7a39306..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/TypeCast.java +++ /dev/null @@ -1,74 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes4; -import com.alaya.abi.solidity.datatypes.generated.Uint16; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple3; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TypeCast extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101de806100206000396000f300608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806312e9b56d14610046575b600080fd5b34801561005257600080fd5b5061005b610103565b604051808461ffff1661ffff168152602001837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001935050505060405180910390f35b600080600080600080600060127e01000000000000000000000000000000000000000000000000000000000000029350837e01000000000000000000000000000000000000000000000000000000000000900492506104d27c01000000000000000000000000000000000000000000000000000000000291506112347c0100000000000000000000000000000000000000000000000000000000029050828282965096509650505050509091925600a165627a7a7230582005e4c0f51008c902039dde9182acbebf7e1b055a4ef9496f9f1d523e20f9d93b0029"; - - public static final String FUNC_TYPECAST = "typeCast"; - - protected TypeCast(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeCast(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> typeCast() { - final Function function = new Function(FUNC_TYPECAST, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (BigInteger) results.get(0).getValue(), - (byte[]) results.get(1).getValue(), - (byte[]) results.get(2).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeCast.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeCast.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TypeCast load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeCast(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeCast load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeCast(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/VIDToken.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/VIDToken.java deleted file mode 100644 index 915418248d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/VIDToken.java +++ /dev/null @@ -1,869 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class VIDToken extends Contract { - private static final String BINARY = "608060405260008060146101000a81548160ff021916908315150217905550601260ff16600a0a6007026009556000600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555034801561007a57600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550601260ff16600a0a6305f5e10002600181905550600154600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6305f5e1006040518082815260200191505060405180910390a3614835806102486000396000f3006080604052600436106101b7576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146101bc578063095ea7b31461024c5780631072cbea146102b157806313af4035146102fe57806318160ddd146103415780631927a8ea1461036c57806323b872dd146103bb57806327e235e314610440578063313ce5671461049757806336ef12d5146104c8578063378dc3dc146105235780633f4ba83a1461054e57806342966c68146105655780634e83977a146105aa5780635c658165146106015780635c975abb1461067857806366188463146106a757806370a082311461070c5780638456cb59146107635780638da5cb5b1461077a57806391b7f5ed146107d157806395d89b41146107fe578063a9059cbb1461088e578063ae7d00f3146108f3578063b02710231461091e578063b414d4b61461099f578063bb0bef19146109fa578063bf120ae514610abd578063c0ee0b8a14610b24578063d22e7b6914610bcf578063d73dd62314610c7c578063dd62ed3e14610ce1578063deaa59df14610d58578063fc399c7914610d9b578063fe8312c114610df6575b600080fd5b3480156101c857600080fd5b506101d1610ea3565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102115780820151818401526020810190506101f6565b50505050905090810190601f16801561023e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561025857600080fd5b50610297600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610edc565b604051808215151515815260200191505060405180910390f35b3480156102bd57600080fd5b506102fc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110e8565b005b34801561030a57600080fd5b5061033f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111fc565b005b34801561034d57600080fd5b50610356611303565b6040518082815260200191505060405180910390f35b34801561037857600080fd5b506103a16004803603810190808035906020019092919080359060200190929190505050611309565b604051808215151515815260200191505060405180910390f35b3480156103c757600080fd5b50610426600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506115ea565b604051808215151515815260200191505060405180910390f35b34801561044c57600080fd5b50610481600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d7b565b6040518082815260200191505060405180910390f35b3480156104a357600080fd5b506104ac611d93565b604051808260ff1660ff16815260200191505060405180910390f35b3480156104d457600080fd5b50610509600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d98565b604051808215151515815260200191505060405180910390f35b34801561052f57600080fd5b50610538611db8565b6040518082815260200191505060405180910390f35b34801561055a57600080fd5b50610563611dc0565b005b34801561057157600080fd5b5061059060048036038101908080359060200190929190505050611ee7565b604051808215151515815260200191505060405180910390f35b3480156105b657600080fd5b506105bf6121f7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561060d57600080fd5b50610662600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061221d565b6040518082815260200191505060405180910390f35b34801561068457600080fd5b5061068d612242565b604051808215151515815260200191505060405180910390f35b3480156106b357600080fd5b506106f2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612255565b604051808215151515815260200191505060405180910390f35b34801561071857600080fd5b5061074d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061246c565b6040518082815260200191505060405180910390f35b34801561076f57600080fd5b506107786124b5565b005b34801561078657600080fd5b5061078f6125de565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156107dd57600080fd5b506107fc60048036038101908080359060200190929190505050612603565b005b34801561080a57600080fd5b506108136126d1565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610853578082015181840152602081019050610838565b50505050905090810190601f1680156108805780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561089a57600080fd5b506108d9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061270a565b604051808215151515815260200191505060405180910390f35b3480156108ff57600080fd5b50610908612d3b565b6040518082815260200191505060405180910390f35b34801561092a57600080fd5b50610985600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050612d41565b604051808215151515815260200191505060405180910390f35b3480156109ab57600080fd5b506109e0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612fc5565b604051808215151515815260200191505060405180910390f35b348015610a0657600080fd5b50610aa3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803515159060200190929190803515159060200190929190505050612fe5565b604051808215151515815260200191505060405180910390f35b348015610ac957600080fd5b50610b0a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035151590602001909291905050506139c5565b604051808215151515815260200191505060405180910390f35b348015610b3057600080fd5b50610bb5600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050613b5b565b604051808215151515815260200191505060405180910390f35b348015610bdb57600080fd5b50610c62600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050613e48565b604051808215151515815260200191505060405180910390f35b348015610c8857600080fd5b50610cc7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050614025565b604051808215151515815260200191505060405180910390f35b348015610ced57600080fd5b50610d42600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061423c565b6040518082815260200191505060405180910390f35b348015610d6457600080fd5b50610d99600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506142c3565b005b348015610da757600080fd5b50610ddc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506143cb565b604051808215151515815260200191505060405180910390f35b348015610e0257600080fd5b50610e89600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506143eb565b604051808215151515815260200191505060405180910390f35b6040805190810160405280600a81526020017f562d494420546f6b656e0000000000000000000000000000000000000000000081525081565b60008060149054906101000a900460ff16151515610ef957600080fd5b6000821480610f8457506000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b1515610ff8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f41312d20526573657420616c6c6f77616e636520746f2030206669727374000081525060200191505060405180910390fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b6111f86000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16828473ffffffffffffffffffffffffffffffffffffffff166145c89092919063ffffffff16565b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156112c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60015481565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156113d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b600060088054905014156113e757600091506115e3565b6001600880549050038411151515611467576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4c312d20506c656173652073656c65637420612076616c69642073746172740081525060200191505060405180910390fd5b600083111561150057838311801561148757506001600880549050038311155b15156114fb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f4c322d20506c656173652073656c65637420612076616c69642073746f70000081525060200191505060405180910390fd5b61150c565b60016008805490500392505b8390505b82811115156115de578060088281548110151561152957fe5b9060005260206000200160405180838152602001806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156115c25780601f10611597576101008083540402835291602001916115c2565b820191906000526020600020905b8154815290600101906020018083116115a557829003601f168201915b5050935050505060405180910390a08080600101915050611510565b600191505b5092915050565b60008060149054906101000a900460ff1615151561160757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156116715750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b151561170b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260278152602001807f5446312d20506c6561736520636865636b2074686520726563697069656e742081526020017f616464726573730000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b81600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156117e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001807f5446322d205468652062616c616e6365206f662073656e64657220697320746f81526020017f6f206c6f7700000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515611902576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260278152602001807f5446332d2054686520616c6c6f77616e6365206f662073656e6465722069732081526020017f746f6f206c6f770000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515156119ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001807f5446342d205468652077616c6c6574206f662073656e6465722069732066726f81526020017f7a656e000000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515611ad2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001807f5446352d205468652077616c6c6574206f6620726563697069656e742069732081526020017f66726f7a656e000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b611b2482600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546146b690919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611bb982600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546146de90919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c8b82600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546146b690919063ffffffff16565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60026020528060005260406000206000915090505481565b601281565b60056020528060005260406000206000915054906101000a900460ff1681565b6305f5e10081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e84576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b600060149054906101000a900460ff161515611e9f57600080fd5b60008060146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611fad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561208a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001807f42312d205468652062616c616e6365206f66206275726e657220697320746f6f81526020017f206c6f770000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b6120dc82600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546146b690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612134826001546146b690919063ffffffff16565b6001819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a2600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050919050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6003602052816000526040600020602052806000526040600020600091509150505481565b600060149054906101000a900460ff1681565b60008060149054906101000a900460ff1615151561227257600080fd5b61230182600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546146b690919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612579576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b600060149054906101000a900460ff1615151561259557600080fd5b6001600060146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156126c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b8060098190555050565b6040805190810160405280600481526020017f564944540000000000000000000000000000000000000000000000000000000081525081565b60008060149054906101000a900460ff1615151561272757600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156127f1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602b8152602001807f54312d20526563697069656e742063616e206e6f74206265207468652073616d81526020017f652061732073656e64657200000000000000000000000000000000000000000081525060400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561285b5750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15156128f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001807f54322d20506c6561736520636865636b2074686520726563697069656e74206181526020017f646472657373000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156129d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001807f54332d205468652062616c616e6365206f662073656e64657220697320746f6f81526020017f206c6f770000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515612aba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001807f54342d205468652077616c6c6574206f662073656e6465722069732066726f7a81526020017f656e00000000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515612ba2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001807f54352d205468652077616c6c6574206f6620726563697069656e74206973206681526020017f726f7a656e00000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b612bf482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546146b690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612c8982600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546146de90919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60095481565b60006060806000806008805490501415612d5e5760009350612fbd565b60086007866040518082805190602001908083835b602083101515612d985780518252602082019150602081019050602083039250612d73565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060000154815481101515612ddb57fe5b906000526020600020018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612e795780601f10612e4e57610100808354040283529160200191612e79565b820191906000526020600020905b815481529060010190602001808311612e5c57829003601f168201915b5050505050925084915081518351141515612e975760009350612fbd565b600090505b8251811015612fb8578181815181101515612eb357fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168382815181101515612f2e57fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916141515612fab5760009350612fbd565b8080600101915050612e9c565b600193505b505050919050565b60046020528060005260406000206000915054906101000a900460ff1681565b6000806060600060149054906101000a900460ff1615151561300657600080fd5b60095487101515156130a6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001807f56312d20496e73756666696369656e74207061796d656e742070726f7669646581526020017f640000000000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515613167576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f56322d20556e7665726966696564207075626c6973686572206164647265737381525060200191505060405180910390fd5b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151561324f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001807f56332d205468652077616c6c6574206f66207075626c6973686572206973206681526020017f726f7a656e00000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b604086511415156132c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f56342d20496e76616c696420686173682070726f76696465640000000000000081525060200191505060405180910390fd5b600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158061336a5750600460008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561339557600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1697505b6000915085905084156135e257600060088054905011156134bd5760006007826040518082805190602001908083835b6020831015156133ea57805182526020820191506020810190506020830392506133c5565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020600001541415156134bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001807f56352d20546869732068617368207761732070726576696f75736c792076616c81526020017f696461746564000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b5b600160088290806001815401808255809150509060018203906000526020600020016000909192909190915090805190602001906134fc929190614706565b50036007826040518082805190602001908083835b6020831015156135365780518252602082019150602081019050602083039250613511565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020600001819055506007816040518082805190602001908083835b6020831015156135a85780518252602082019150602081019050602083039250613583565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390206000015491505b86600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151561377b576136f687600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546146b690919063ffffffff16565b600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506138a6565b6137cd87600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546146b690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061386287600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546146de90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8773ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef896040518082815260200191505060405180910390a383156139b6577f9c0869bc3817f1ac640137074dc06b0f25f80f238c719419b6cff93dfab4dd4182826040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561397a57808201518184015260208101905061395f565b50505050905090810190601f1680156139a75780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15b60019250505095945050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515613a8b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b81600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507ff022c1fbc00daf4d2e6cdc62e0338b967bd3be38ccc3d7f8e0168bd668c7bcfe8383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a16001905092915050565b6000613b65614786565b600085826000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050848260200181815250508382604001819052506018846000815181101515613bc357fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027f0100000000000000000000000000000000000000000000000000000000000000900463ffffffff169060020a026010856001815181101515613c4d57fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027f0100000000000000000000000000000000000000000000000000000000000000900463ffffffff169060020a026008866002815181101515613cd757fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027f0100000000000000000000000000000000000000000000000000000000000000900463ffffffff169060020a02866003815181101515613d5f57fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027f010000000000000000000000000000000000000000000000000000000000000090040101019050807c01000000000000000000000000000000000000000000000000000000000282606001907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815250506001925050509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515613f0e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b82600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550816040518082805190602001908083835b602083101515613f9b5780518252602082019150602081019050602083039250613f76565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390208473ffffffffffffffffffffffffffffffffffffffff167f292123b68099c6aa2b5d37989544acbb7000794b52d1f629067b3f3ee1ce79fa85604051808215151515815260200191505060405180910390a3600190509392505050565b60008060149054906101000a900460ff1615151561404257600080fd5b6140d182600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546146de90919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515614387576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b80600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60066020528060005260406000206000915054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156144b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f312d204f776e6572206f6e6c792066756e6374696f6e00000000000000000081525060200191505060405180910390fd5b82600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550816040518082805190602001908083835b60208310151561453e5780518252602082019150602081019050602083039250614519565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390208473ffffffffffffffffffffffffffffffffffffffff167f3d08b6e3d62b04396eca9fe996bd52ef13d33affdfb79e470ed9fdbe4910452385604051808215151515815260200191505060405180910390a3600190509392505050565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561466b57600080fd5b505af115801561467f573d6000803e3d6000fd5b505050506040513d602081101561469557600080fd5b810190808051906020019092919050505015156146b157600080fd5b505050565b600081830390508282111580156146cd5750828111155b15156146d557fe5b80905092915050565b600081830190508281101580156146f55750818110155b15156146fd57fe5b80905092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061474757805160ff1916838001178555614775565b82800160010185558215614775579182015b82811115614774578251825591602001919060010190614759565b5b50905061478291906147e4565b5090565b608060405190810160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600081526020016060815260200160007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681525090565b61480691905b808211156148025760008160009055506001016147ea565b5090565b905600a165627a7a72305820d773c43464594b62cf1a88b95822126201b5b125e55e9a4511ed955214ad6d140029"; - - public static final String FUNC_NAME = "name"; - - public static final String FUNC_APPROVE = "approve"; - - public static final String FUNC_TRANSFERTOKEN = "transferToken"; - - public static final String FUNC_SETOWNER = "setOwner"; - - public static final String FUNC_TOTALSUPPLY = "totalSupply"; - - public static final String FUNC_LISTFILES = "listFiles"; - - public static final String FUNC_TRANSFERFROM = "transferFrom"; - - public static final String FUNC_BALANCES = "balances"; - - public static final String FUNC_DECIMALS = "decimals"; - - public static final String FUNC_VERIFYPUBLISHER = "verifyPublisher"; - - public static final String FUNC_INITIALSUPPLY = "initialSupply"; - - public static final String FUNC_UNPAUSE = "unpause"; - - public static final String FUNC_BURN = "burn"; - - public static final String FUNC_VALIDATIONWALLET = "validationWallet"; - - public static final String FUNC_ALLOWED = "allowed"; - - public static final String FUNC_PAUSED = "paused"; - - public static final String FUNC_DECREASEAPPROVAL = "decreaseApproval"; - - public static final String FUNC_BALANCEOF = "balanceOf"; - - public static final String FUNC_PAUSE = "pause"; - - public static final String FUNC_OWNER = "owner"; - - public static final String FUNC_SETPRICE = "setPrice"; - - public static final String FUNC_SYMBOL = "symbol"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_VALIDATIONPRICE = "validationPrice"; - - public static final String FUNC_VERIFYFILE = "verifyFile"; - - public static final String FUNC_FROZENACCOUNT = "frozenAccount"; - - public static final String FUNC_VALIDATEFILE = "validateFile"; - - public static final String FUNC_FREEZE = "freeze"; - - public static final String FUNC_TOKENFALLBACK = "tokenFallback"; - - public static final String FUNC_VALIDATEPUBLISHER = "validatePublisher"; - - public static final String FUNC_INCREASEAPPROVAL = "increaseApproval"; - - public static final String FUNC_ALLOWANCE = "allowance"; - - public static final String FUNC_SETWALLET = "setWallet"; - - public static final String FUNC_VERIFYWALLET = "verifyWallet"; - - public static final String FUNC_VALIDATEWALLET = "validateWallet"; - - public static final Event BURN_EVENT = new Event("Burn", - Arrays.>asList(new TypeReference

(true) {}, new TypeReference() {})); - ; - - public static final Event FREEZE_EVENT = new Event("Freeze", - Arrays.>asList(new TypeReference
() {}, new TypeReference() {})); - ; - - public static final Event VALIDATEFILE_EVENT = new Event("ValidateFile", - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - ; - - public static final Event VALIDATEPUBLISHER_EVENT = new Event("ValidatePublisher", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference() {}, new TypeReference(true) {})); - ; - - public static final Event VALIDATEWALLET_EVENT = new Event("ValidateWallet", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference() {}, new TypeReference(true) {})); - ; - - public static final Event LOGEVENT_EVENT = new Event("LogEvent", - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - ; - - public static final Event TRANSFER_EVENT = new Event("Transfer", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - public static final Event APPROVAL_EVENT = new Event("Approval", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - public static final Event PAUSE_EVENT = new Event("Pause", - Arrays.>asList()); - ; - - public static final Event UNPAUSE_EVENT = new Event("Unpause", - Arrays.>asList()); - ; - - protected VIDToken(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected VIDToken(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall approve(String _spender, BigInteger _value) { - final Function function = new Function( - FUNC_APPROVE, - Arrays.asList(new Address(_spender), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall transferToken(String tokenAddress, BigInteger tokens) { - final Function function = new Function( - FUNC_TRANSFERTOKEN, - Arrays.asList(new Address(tokenAddress), - new Uint256(tokens)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setOwner(String newOwner) { - final Function function = new Function( - FUNC_SETOWNER, - Arrays.asList(new Address(newOwner)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall totalSupply() { - final Function function = new Function(FUNC_TOTALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall listFiles(BigInteger startAt, BigInteger stopAt) { - final Function function = new Function( - FUNC_LISTFILES, - Arrays.asList(new Uint256(startAt), - new Uint256(stopAt)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall transferFrom(String _from, String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFERFROM, - Arrays.asList(new Address(_from), - new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall balances(String param0) { - final Function function = new Function(FUNC_BALANCES, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall decimals() { - final Function function = new Function(FUNC_DECIMALS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall verifyPublisher(String param0) { - final Function function = new Function(FUNC_VERIFYPUBLISHER, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall initialSupply() { - final Function function = new Function(FUNC_INITIALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall unpause() { - final Function function = new Function( - FUNC_UNPAUSE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall burn(BigInteger _value) { - final Function function = new Function( - FUNC_BURN, - Arrays.asList(new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall validationWallet() { - final Function function = new Function(FUNC_VALIDATIONWALLET, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall allowed(String param0, String param1) { - final Function function = new Function(FUNC_ALLOWED, - Arrays.asList(new Address(param0), - new Address(param1)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall paused() { - final Function function = new Function(FUNC_PAUSED, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall decreaseApproval(String _spender, BigInteger _subtractedValue) { - final Function function = new Function( - FUNC_DECREASEAPPROVAL, - Arrays.asList(new Address(_spender), - new Uint256(_subtractedValue)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall balanceOf(String _owner) { - final Function function = new Function(FUNC_BALANCEOF, - Arrays.asList(new Address(_owner)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall pause() { - final Function function = new Function( - FUNC_PAUSE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall owner() { - final Function function = new Function(FUNC_OWNER, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setPrice(BigInteger newPrice) { - final Function function = new Function( - FUNC_SETPRICE, - Arrays.asList(new Uint256(newPrice)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall symbol() { - final Function function = new Function(FUNC_SYMBOL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall transfer(String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall validationPrice() { - final Function function = new Function(FUNC_VALIDATIONPRICE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall verifyFile(String fileHash) { - final Function function = new Function(FUNC_VERIFYFILE, - Arrays.asList(new Utf8String(fileHash)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall frozenAccount(String param0) { - final Function function = new Function(FUNC_FROZENACCOUNT, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall validateFile(String To, BigInteger Payment, byte[] Data, Boolean cStore, Boolean eLog) { - final Function function = new Function( - FUNC_VALIDATEFILE, - Arrays.asList(new Address(To), - new Uint256(Payment), - new com.alaya.abi.solidity.datatypes.DynamicBytes(Data), - new Bool(cStore), - new Bool(eLog)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall freeze(String _address, Boolean _state) { - final Function function = new Function( - FUNC_FREEZE, - Arrays.asList(new Address(_address), - new Bool(_state)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall tokenFallback(String _from, BigInteger _value, byte[] _data) { - final Function function = new Function(FUNC_TOKENFALLBACK, - Arrays.asList(new Address(_from), - new Uint256(_value), - new com.alaya.abi.solidity.datatypes.DynamicBytes(_data)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall validatePublisher(String Address, Boolean State, String Publisher) { - final Function function = new Function( - FUNC_VALIDATEPUBLISHER, - Arrays.asList(new Address(Address), - new Bool(State), - new Utf8String(Publisher)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall increaseApproval(String _spender, BigInteger _addedValue) { - final Function function = new Function( - FUNC_INCREASEAPPROVAL, - Arrays.asList(new Address(_spender), - new Uint256(_addedValue)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall allowance(String _owner, String _spender) { - final Function function = new Function(FUNC_ALLOWANCE, - Arrays.asList(new Address(_owner), - new Address(_spender)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setWallet(String newWallet) { - final Function function = new Function( - FUNC_SETWALLET, - Arrays.asList(new Address(newWallet)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall verifyWallet(String param0) { - final Function function = new Function(FUNC_VERIFYWALLET, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall validateWallet(String Address, Boolean State, String Wallet) { - final Function function = new Function( - FUNC_VALIDATEWALLET, - Arrays.asList(new Address(Address), - new Bool(State), - new Utf8String(Wallet)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(VIDToken.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(VIDToken.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public List getBurnEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(BURN_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - BurnEventResponse typedResponse = new BurnEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.burner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable burnEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public BurnEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(BURN_EVENT, log); - BurnEventResponse typedResponse = new BurnEventResponse(); - typedResponse.log = log; - typedResponse.burner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable burnEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(BURN_EVENT)); - return burnEventObservable(filter); - } - - public List getFreezeEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(FREEZE_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - FreezeEventResponse typedResponse = new FreezeEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.target = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.frozen = (Boolean) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable freezeEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public FreezeEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(FREEZE_EVENT, log); - FreezeEventResponse typedResponse = new FreezeEventResponse(); - typedResponse.log = log; - typedResponse.target = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.frozen = (Boolean) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable freezeEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(FREEZE_EVENT)); - return freezeEventObservable(filter); - } - - public List getValidateFileEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(VALIDATEFILE_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ValidateFileEventResponse typedResponse = new ValidateFileEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.index = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.data = (String) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable validateFileEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ValidateFileEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(VALIDATEFILE_EVENT, log); - ValidateFileEventResponse typedResponse = new ValidateFileEventResponse(); - typedResponse.log = log; - typedResponse.index = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.data = (String) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable validateFileEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(VALIDATEFILE_EVENT)); - return validateFileEventObservable(filter); - } - - public List getValidatePublisherEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(VALIDATEPUBLISHER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ValidatePublisherEventResponse typedResponse = new ValidatePublisherEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.publisherAddress = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.publisherName = (byte[]) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.state = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable validatePublisherEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ValidatePublisherEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(VALIDATEPUBLISHER_EVENT, log); - ValidatePublisherEventResponse typedResponse = new ValidatePublisherEventResponse(); - typedResponse.log = log; - typedResponse.publisherAddress = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.publisherName = (byte[]) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.state = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable validatePublisherEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(VALIDATEPUBLISHER_EVENT)); - return validatePublisherEventObservable(filter); - } - - public List getValidateWalletEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(VALIDATEWALLET_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ValidateWalletEventResponse typedResponse = new ValidateWalletEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.walletAddress = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.walletName = (byte[]) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.state = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable validateWalletEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ValidateWalletEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(VALIDATEWALLET_EVENT, log); - ValidateWalletEventResponse typedResponse = new ValidateWalletEventResponse(); - typedResponse.log = log; - typedResponse.walletAddress = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.walletName = (byte[]) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.state = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable validateWalletEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(VALIDATEWALLET_EVENT)); - return validateWalletEventObservable(filter); - } - - public List getLogEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(LOGEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - LogEventEventResponse typedResponse = new LogEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.index = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.data = (String) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable logEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public LogEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(LOGEVENT_EVENT, log); - LogEventEventResponse typedResponse = new LogEventEventResponse(); - typedResponse.log = log; - typedResponse.index = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.data = (String) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable logEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(LOGEVENT_EVENT)); - return logEventEventObservable(filter); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public List getApprovalEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(APPROVAL_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable approvalEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ApprovalEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(APPROVAL_EVENT, log); - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = log; - typedResponse._owner = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._spender = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable approvalEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(APPROVAL_EVENT)); - return approvalEventObservable(filter); - } - - public List getPauseEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(PAUSE_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - PauseEventResponse typedResponse = new PauseEventResponse(); - typedResponse.log = eventValues.getLog(); - responses.add(typedResponse); - } - return responses; - } - - public Observable pauseEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public PauseEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(PAUSE_EVENT, log); - PauseEventResponse typedResponse = new PauseEventResponse(); - typedResponse.log = log; - return typedResponse; - } - }); - } - - public Observable pauseEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(PAUSE_EVENT)); - return pauseEventObservable(filter); - } - - public List getUnpauseEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(UNPAUSE_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - UnpauseEventResponse typedResponse = new UnpauseEventResponse(); - typedResponse.log = eventValues.getLog(); - responses.add(typedResponse); - } - return responses; - } - - public Observable unpauseEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public UnpauseEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(UNPAUSE_EVENT, log); - UnpauseEventResponse typedResponse = new UnpauseEventResponse(); - typedResponse.log = log; - return typedResponse; - } - }); - } - - public Observable unpauseEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(UNPAUSE_EVENT)); - return unpauseEventObservable(filter); - } - - public static VIDToken load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new VIDToken(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static VIDToken load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new VIDToken(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class BurnEventResponse { - public Log log; - - public String burner; - - public BigInteger value; - } - - public static class FreezeEventResponse { - public Log log; - - public String target; - - public Boolean frozen; - } - - public static class ValidateFileEventResponse { - public Log log; - - public BigInteger index; - - public String data; - } - - public static class ValidatePublisherEventResponse { - public Log log; - - public String publisherAddress; - - public byte[] publisherName; - - public Boolean state; - } - - public static class ValidateWalletEventResponse { - public Log log; - - public String walletAddress; - - public byte[] walletName; - - public Boolean state; - } - - public static class LogEventEventResponse { - public Log log; - - public BigInteger index; - - public String data; - } - - public static class TransferEventResponse { - public Log log; - - public String _from; - - public String _to; - - public BigInteger _value; - } - - public static class ApprovalEventResponse { - public Log log; - - public String _owner; - - public String _spender; - - public BigInteger _value; - } - - public static class PauseEventResponse { - public Log log; - } - - public static class UnpauseEventResponse { - public Log log; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/VisibilityInterface.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/VisibilityInterface.java deleted file mode 100644 index 1d4670b7c6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_4_26/VisibilityInterface.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_4_26; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class VisibilityInterface extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_PUBLICVISIBILITY = "publicVisibility"; - - public static final String FUNC_EXTERNALVISIBILITY = "externalVisibility"; - - public static final String FUNC_DEFAULTVISIBILITY = "defaultVisibility"; - - protected VisibilityInterface(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected VisibilityInterface(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall publicVisibility() { - final Function function = new Function( - FUNC_PUBLICVISIBILITY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall externalVisibility() { - final Function function = new Function( - FUNC_EXTERNALVISIBILITY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall defaultVisibility() { - final Function function = new Function( - FUNC_DEFAULTVISIBILITY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(VisibilityInterface.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(VisibilityInterface.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static VisibilityInterface load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new VisibilityInterface(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static VisibilityInterface load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new VisibilityInterface(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ABIFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ABIFunctions.java deleted file mode 100644 index c93a25ae41..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ABIFunctions.java +++ /dev/null @@ -1,77 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ABIFunctions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061030f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063538fad8b14610046578063911a3363146100c9578063b19d51e41461014c575b600080fd5b61004e6101cf565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561008e578082015181840152602081019050610073565b50505050905090810190601f1680156100bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100d1610216565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101115780820151818401526020810190506100f6565b50505050905090810190601f16801561013e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610154610241565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610194578082015181840152602081019050610179565b50505050905090810190601f1680156101c15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b606060405160200180807f31000000000000000000000000000000000000000000000000000000000000008152506001019050604051602081830303815290604052905090565b60606001604051602001808260ff168152602001915050604051602081830303815290604052905090565b60606001604051602401808260ff1681526020019150506040516020818303038152906040527f60fe47b1000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090509056fea265627a7a7231582014279a6abf112cda27424518a4ccf98b39e1b7621177e31bf8131c784c341c8164736f6c63430005110032"; - - public static final String FUNC_GETENCODE = "getEncode"; - - public static final String FUNC_GETENCODEPACKED = "getEncodePacked"; - - public static final String FUNC_GETENCODEWITHSIGNATURE = "getEncodeWithSignature"; - - protected ABIFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ABIFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getEncode() { - final Function function = new Function(FUNC_GETENCODE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getEncodePacked() { - final Function function = new Function(FUNC_GETENCODEPACKED, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getEncodeWithSignature() { - final Function function = new Function(FUNC_GETENCODEWITHSIGNATURE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ABIFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ABIFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ABIFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ABIFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ABIFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ABIFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractAInterface.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractAInterface.java deleted file mode 100644 index 1e0877975b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractAInterface.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractAInterface extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_AINTERAGE = "aInterAge"; - - protected AbstractContractAInterface(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractAInterface(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aInterAge() { - final Function function = new Function(FUNC_AINTERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractAInterface.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractAInterface.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractAInterface load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractAInterface(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractAInterface load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractAInterface(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractASubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractASubclass.java deleted file mode 100644 index 5b2d4ec5fe..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractASubclass.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractASubclass extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_ASUBAGE = "aSubAge"; - - public static final String FUNC_ASUBNAME = "aSubName"; - - protected AbstractContractASubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractASubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aSubAge() { - final Function function = new Function(FUNC_ASUBAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall aSubName() { - final Function function = new Function(FUNC_ASUBNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractASubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractASubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractASubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractASubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractASubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractASubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractBSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractBSubclass.java deleted file mode 100644 index 3eed3b75d9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractBSubclass.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractBSubclass extends Contract { - private static final String BINARY = "6080604052604051806020016040528060008152506000908051906020019061002992919061003c565b5034801561003657600080fd5b506100e1565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061007d57805160ff19168380011785556100ab565b828001600101855582156100ab579182015b828111156100aa57825182559160200191906001019061008f565b5b5090506100b891906100bc565b5090565b6100de91905b808211156100da5760008160009055506001016100c2565b5090565b90565b6103df806100f06000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630fdd8d4514610046578063accab56b146100c9578063e652e56514610184575b600080fd5b61004e610207565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561008e578082015181840152602081019050610073565b50505050905090810190601f1680156100bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610182600480360360208110156100df57600080fd5b81019080803590602001906401000000008111156100fc57600080fd5b82018360208201111561010e57600080fd5b8035906020019184600183028401116401000000008311171561013057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610249565b005b61018c610263565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101cc5780820151818401526020810190506101b1565b50505050905090810190601f1680156101f95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6060806040518060400160405280600881526020017f625375624e616d6500000000000000000000000000000000000000000000000081525090508091505090565b806000908051906020019061025f929190610305565b5050565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102fb5780601f106102d0576101008083540402835291602001916102fb565b820191906000526020600020905b8154815290600101906020018083116102de57829003601f168201915b5050505050905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061034657805160ff1916838001178555610374565b82800160010185558215610374579182015b82811115610373578251825591602001919060010190610358565b5b5090506103819190610385565b5090565b6103a791905b808211156103a357600081600090555060010161038b565b5090565b9056fea265627a7a72315820e31953bc8670f0fe70d3c5b4a20906261dc5ffd14ed5f9c9595068b00162012864736f6c63430005110032"; - - public static final String FUNC_BSUBNAME = "bSubName"; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - protected AbstractContractBSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractBSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall bSubName() { - final Function function = new Function(FUNC_BSUBNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractBSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractBSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractBSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractBSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractBSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractBSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractCSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractCSubclass.java deleted file mode 100644 index f9a1467a78..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractCSubclass.java +++ /dev/null @@ -1,110 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractCSubclass extends Contract { - private static final String BINARY = "60806040526040518060200160405280600081525060009080519060200190610029929190610062565b50604051806020016040528060008152506001908051906020019061004f929190610062565b5034801561005c57600080fd5b50610107565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100a357805160ff19168380011785556100d1565b828001600101855582156100d1579182015b828111156100d05782518255916020019190600101906100b5565b5b5090506100de91906100e2565b5090565b61010491905b808211156101005760008160009055506001016100e8565b5090565b90565b6105c6806101166000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806331aa8a6e146100675780633af1a463146100ea5780634fc341131461016d5780639c72890b14610228578063accab56b14610246578063e652e56514610301575b600080fd5b61006f610384565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100af578082015181840152602081019050610094565b50505050905090810190601f1680156100dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100f26103c6565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610132578082015181840152602081019050610117565b50505050905090810190601f16801561015f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102266004803603602081101561018357600080fd5b81019080803590602001906401000000008111156101a057600080fd5b8201836020820111156101b257600080fd5b803590602001918460018302840111640100000000831117156101d457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610468565b005b610230610482565b6040518082815260200191505060405180910390f35b6102ff6004803603602081101561025c57600080fd5b810190808035906020019064010000000081111561027957600080fd5b82018360208201111561028b57600080fd5b803590602001918460018302840111640100000000831117156102ad57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610490565b005b6103096104aa565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561034957808201518184015260208101905061032e565b50505050905090810190601f1680156103765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6060806040518060400160405280600881526020017f635375624e616d6500000000000000000000000000000000000000000000000081525090508091505090565b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561045e5780601f106104335761010080835404028352916020019161045e565b820191906000526020600020905b81548152906001019060200180831161044157829003601f168201915b5050505050905090565b806000908051906020019061047e9291906104ec565b5050565b600080601490508091505090565b80600190805190602001906104a69291906104ec565b5050565b6060806040518060400160405280600a81526020017f706172656e744e616d650000000000000000000000000000000000000000000081525090508091505090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061052d57805160ff191683800117855561055b565b8280016001018555821561055b579182015b8281111561055a57825182559160200191906001019061053f565b5b509050610568919061056c565b5090565b61058e91905b8082111561058a576000816000905550600101610572565b5090565b9056fea265627a7a723158201bd491498b686624b1e9f549ae1e993209b8df52c6987e301bd63fe7b619ec9364736f6c63430005110032"; - - public static final String FUNC_ASUBAGE = "aSubAge"; - - public static final String FUNC_ASUBNAME = "aSubName"; - - public static final String FUNC_CSUBNAME = "cSubName"; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETASUBNAME = "setASubName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - protected AbstractContractCSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractCSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aSubAge() { - final Function function = new Function(FUNC_ASUBAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall aSubName() { - final Function function = new Function(FUNC_ASUBNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall cSubName() { - final Function function = new Function(FUNC_CSUBNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setASubName(String v) { - final Function function = new Function( - FUNC_SETASUBNAME, - Arrays.asList(new Utf8String(v)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractCSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractCSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractCSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractCSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractCSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractCSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractDSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractDSubclass.java deleted file mode 100644 index 5beae171aa..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractDSubclass.java +++ /dev/null @@ -1,90 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractDSubclass extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_DSUBCLASSNAME = "dSubClassName"; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - public static final String FUNC_SETPARENTNAMED = "setParentNameD"; - - protected AbstractContractDSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractDSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall dSubClassName() { - final Function function = new Function(FUNC_DSUBCLASSNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setParentNameD(String name) { - final Function function = new Function( - FUNC_SETPARENTNAMED, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractDSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractDSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractDSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractDSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractDSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractDSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractESubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractESubclass.java deleted file mode 100644 index f08d4c5066..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractESubclass.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractESubclass extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_AINTERAGE = "aInterAge"; - - public static final String FUNC_SETINTERAGE = "setInterAge"; - - protected AbstractContractESubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractESubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aInterAge() { - final Function function = new Function(FUNC_AINTERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setInterAge(BigInteger v) { - final Function function = new Function( - FUNC_SETINTERAGE, - Arrays.asList(new Int256(v)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractESubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractESubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractESubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractESubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractESubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractESubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractFSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractFSubclass.java deleted file mode 100644 index a9b1bfe46d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractFSubclass.java +++ /dev/null @@ -1,90 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractFSubclass extends Contract { - private static final String BINARY = "6080604052604051806020016040528060008152506000908051906020019061002992919061003c565b5034801561003657600080fd5b506100e1565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061007d57805160ff19168380011785556100ab565b828001600101855582156100ab579182015b828111156100aa57825182559160200191906001019061008f565b5b5090506100b891906100bc565b5090565b6100de91905b808211156100da5760008160009055506001016100c2565b5090565b90565b610481806100f06000396000f3fe608060405234801561001057600080fd5b506004361061004b5760003560e01c8062af095414610050578063accab56b1461010b578063e16ae640146101c6578063e652e56514610249575b600080fd5b6101096004803603602081101561006657600080fd5b810190808035906020019064010000000081111561008357600080fd5b82018360208201111561009557600080fd5b803590602001918460018302840111640100000000831117156100b757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506102cc565b005b6101c46004803603602081101561012157600080fd5b810190808035906020019064010000000081111561013e57600080fd5b82018360208201111561015057600080fd5b8035906020019184600183028401116401000000008311171561017257600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506102e6565b005b6101ce610300565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561020e5780820151818401526020810190506101f3565b50505050905090810190601f16801561023b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610251610305565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610291578082015181840152602081019050610276565b50505050905090810190601f1680156102be5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b80600090805190602001906102e29291906103a7565b5050565b80600090805190602001906102fc9291906103a7565b5050565b606090565b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561039d5780601f106103725761010080835404028352916020019161039d565b820191906000526020600020905b81548152906001019060200180831161038057829003601f168201915b5050505050905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106103e857805160ff1916838001178555610416565b82800160010185558215610416579182015b828111156104155782518255916020019190600101906103fa565b5b5090506104239190610427565b5090565b61044991905b8082111561044557600081600090555060010161042d565b5090565b9056fea265627a7a723158208b1e1e53f42715d267fb4348568a6bbe0fe8ebf0cdc0c77708e9573a9ce56ebe64736f6c63430005110032"; - - public static final String FUNC_DSUBCLASSNAME = "dSubClassName"; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - public static final String FUNC_SETPARENTNAMED = "setParentNameD"; - - protected AbstractContractFSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractFSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall dSubClassName() { - final Function function = new Function(FUNC_DSUBCLASSNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setParentNameD(String name) { - final Function function = new Function( - FUNC_SETPARENTNAMED, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractFSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractFSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractFSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractFSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractFSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractFSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractFather.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractFather.java deleted file mode 100644 index 547fe059e0..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractFather.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractFather extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_FATHERAGE = "fatherAge"; - - public static final String FUNC_FATHERNAME = "fatherName"; - - protected AbstractContractFather(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractFather(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall fatherAge() { - final Function function = new Function(FUNC_FATHERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall fatherName() { - final Function function = new Function(FUNC_FATHERNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractFather.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractFather.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractFather load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractFather(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractFather load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractFather(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractGSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractGSubclass.java deleted file mode 100644 index 90543f81a4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractGSubclass.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractGSubclass extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b5060f2806100236000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c8063262a9dff14604157806335f99d4814605d578063d1eef376146088575b600080fd5b604760a4565b6040518082815260200191505060405180910390f35b608660048036036020811015607157600080fd5b810190808035906020019092919050505060aa565b005b608e60b4565b6040518082815260200191505060405180910390f35b60005481565b8060008190555050565b6000805490509056fea265627a7a723158207043a80f8f556a8738ff7366767ccd9151fd590da68633b7b953f5ce65f42e4164736f6c63430005110032"; - - public static final String FUNC_AINTERAGE = "aInterAge"; - - public static final String FUNC_AGE = "age"; - - public static final String FUNC_SETINTERAGE = "setInterAge"; - - protected AbstractContractGSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractGSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aInterAge() { - final Function function = new Function(FUNC_AINTERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall age() { - final Function function = new Function(FUNC_AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setInterAge(BigInteger v) { - final Function function = new Function( - FUNC_SETINTERAGE, - Arrays.asList(new Int256(v)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractGSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractGSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractGSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractGSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractGSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractGSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractGrandpa.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractGrandpa.java deleted file mode 100644 index eea95f0c11..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractGrandpa.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractGrandpa extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_NAME = "name"; - - protected AbstractContractGrandpa(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractGrandpa(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractGrandpa.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractGrandpa.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractGrandpa load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractGrandpa(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractGrandpa load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractGrandpa(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractParentClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractParentClass.java deleted file mode 100644 index 3432913659..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractParentClass.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractParentClass extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - protected AbstractContractParentClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractParentClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractParentClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractParentClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractParentClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractParentClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractParentClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractParentClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractSon.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractSon.java deleted file mode 100644 index a5ab3f0479..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AbstractContractSon.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractSon extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_FATHERAGE = "fatherAge"; - - public static final String FUNC_FATHERNAME = "fatherName"; - - public static final String FUNC_SONNAME = "sonName"; - - protected AbstractContractSon(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractSon(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall fatherAge() { - final Function function = new Function(FUNC_FATHERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall fatherName() { - final Function function = new Function(FUNC_FATHERNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall sonName() { - final Function function = new Function(FUNC_SONNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractSon.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractSon.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractSon load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractSon(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractSon load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractSon(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AddressFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AddressFunctions.java deleted file mode 100644 index 7f73f2cb36..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AddressFunctions.java +++ /dev/null @@ -1,91 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AddressFunctions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061025b806100206000396000f3fe60806040526004361061003f5760003560e01c80631a695230146100445780633e58c58c14610088578063ecbde5e6146100e4578063f8b2cb4f1461010f575b600080fd5b6100866004803603602081101561005a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610174565b005b6100ca6004803603602081101561009e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506101be565b604051808215151515815260200191505060405180910390f35b3480156100f057600080fd5b506100f96101fd565b6040518082815260200191505060405180910390f35b34801561011b57600080fd5b5061015e6004803603602081101561013257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610205565b6040518082815260200191505060405180910390f35b8073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501580156101ba573d6000803e3d6000fd5b5050565b60008173ffffffffffffffffffffffffffffffffffffffff166108fc60019081150290604051600060405180830381858888f193505050509050919050565b600047905090565b60008173ffffffffffffffffffffffffffffffffffffffff1631905091905056fea265627a7a72315820597f8a52132cb54b969abef713bac6c56d984c3ad0e200d36b2f547ea2740ed864736f6c63430005110032"; - - public static final String FUNC_GETBALANCE = "getBalance"; - - public static final String FUNC_GETBALANCEOF = "getBalanceOf"; - - public static final String FUNC_SEND = "send"; - - public static final String FUNC_TRANSFER = "transfer"; - - protected AddressFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AddressFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBalance(String addr) { - final Function function = new Function(FUNC_GETBALANCE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBalanceOf() { - final Function function = new Function(FUNC_GETBALANCEOF, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall send(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_SEND, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall transfer(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AddressFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AddressFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AddressFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AddressFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AddressFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AddressFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AnimalExternal.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AnimalExternal.java deleted file mode 100644 index adf6fd5b1b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AnimalExternal.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AnimalExternal extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50601d60018190555060aa6002819055506040518060400160405280600981526020017f4c75636b7920646f6700000000000000000000000000000000000000000000008152506003908051906020019061006c9291906100be565b506040518060400160405280600a81526020017f323031312d30312d303100000000000000000000000000000000000000000000815250600090805190602001906100b89291906100be565b50610163565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100ff57805160ff191683800117855561012d565b8280016001018555821561012d579182015b8281111561012c578251825591602001919060010190610111565b5b50905061013a919061013e565b5090565b61016091905b8082111561015c576000816000905550600101610144565b5090565b90565b6101ec806101726000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063262a9dff14610046578063beb0067e14610064578063f377bd5b146100e7575b600080fd5b61004e610105565b6040518082815260200191505060405180910390f35b61006c61010f565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100ac578082015181840152602081019050610091565b50505050905090810190601f1680156100d95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100ef6101b1565b6040518082815260200191505060405180910390f35b6000600154905090565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156101a75780601f1061017c576101008083540402835291602001916101a7565b820191906000526020600020905b81548152906001019060200180831161018a57829003601f168201915b5050505050905090565b6001548156fea265627a7a72315820b7a0709574133104392484b47e89bb33de2451953d81091cf7dd8662fd702ad064736f6c63430005110032"; - - public static final String FUNC__AGE = "_age"; - - public static final String FUNC_AGE = "age"; - - public static final String FUNC_BIRTHDAY = "birthDay"; - - protected AnimalExternal(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AnimalExternal(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AnimalExternal.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AnimalExternal.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall _age() { - final Function function = new Function(FUNC__AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall age() { - final Function function = new Function(FUNC_AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall birthDay() { - final Function function = new Function(FUNC_BIRTHDAY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static AnimalExternal load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AnimalExternal(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AnimalExternal load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AnimalExternal(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AssemblyReturns.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AssemblyReturns.java deleted file mode 100644 index 731b2223c8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AssemblyReturns.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes2; -import com.alaya.abi.solidity.datatypes.generated.Bytes3; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple5; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AssemblyReturns extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101c5806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806326121ff014610030575b600080fd5b61003861011c565b60405180868152602001857dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001847cffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167cffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001831515151581526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019550505050505060405180910390f35b6000806000806000600294507fabcd00000000000000000000000000000000000000000000000000000000000093507f61626300000000000000000000000000000000000000000000000000000000009250600191507372ad2b713faa14c2c4cd2d7affe5d8f538968f5a9050909192939456fea265627a7a723158200d58f3f38a10333843bbe0ad1b2d0e5205565432e4309a5811f481b1c44a100264736f6c63430005110032"; - - public static final String FUNC_F = "f"; - - protected AssemblyReturns(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AssemblyReturns(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> f() { - final Function function = new Function(FUNC_F, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference

() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple5 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple5( - (BigInteger) results.get(0).getValue(), - (byte[]) results.get(1).getValue(), - (byte[]) results.get(2).getValue(), - (Boolean) results.get(3).getValue(), - (String) results.get(4).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssemblyReturns.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssemblyReturns.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AssemblyReturns load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AssemblyReturns(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AssemblyReturns load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AssemblyReturns(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AssertContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AssertContract.java deleted file mode 100644 index b963ff8021..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AssertContract.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AssertContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060f98061005f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806314fef936146037578063de292789146080575b600080fd5b606a60048036036040811015604b57600080fd5b810190808035906020019092919080359060200190929190505050609c565b6040518082815260200191505060405180910390f35b608660ba565b6040518082815260200191505060405180910390f35b600081831160a657fe5b818301600181905550600154905092915050565b600060015490509056fea265627a7a723158206db79aa23b1d2608d4630a7d379edbf7edb709ceb8dd7f86a7d5c8f9bd805c0264736f6c63430005110032"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final String FUNC_TOSENDERAMOUNT = "toSenderAmount"; - - protected AssertContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AssertContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssertContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssertContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getResult() { - final Function function = new Function(FUNC_GETRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall toSenderAmount(BigInteger frist, BigInteger second) { - final Function function = new Function( - FUNC_TOSENDERAMOUNT, - Arrays.asList(new Uint256(frist), - new Uint256(second)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static AssertContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AssertContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AssertContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AssertContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AssertHandle.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AssertHandle.java deleted file mode 100644 index ea4fca932c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AssertHandle.java +++ /dev/null @@ -1,112 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AssertHandle extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610172806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80638c671e0a14610067578063ad92212f14610071578063afcd320e1461007b578063cda0a5eb146100a9578063f25e0471146100fc578063f81cf6db14610106575b600080fd5b61006f610110565b005b610079610112565b005b6100a76004803603602081101561009157600080fd5b8101908080359060200190929190505050610114565b005b6100d8600480360360208110156100bf57600080fd5b81019080803560000b9060200190929190505050610121565b604051808260038111156100e857fe5b60ff16815260200191505060405180910390f35b610104610139565b005b61010e61013b565b005b565b565b600a811061011e57fe5b50565b60008160000b600381111561013257fe5b9050919050565b565b56fea265627a7a72315820ee933fa0d5fbfd445861ca52c7d31ed34eac2ba8f355d9528bcd57ef5c7efa3964736f6c63430005110032"; - - public static final String FUNC_BINARYMOVEMINUSEXCEPTION = "binaryMoveMinusException"; - - public static final String FUNC_DIVIDENDZEROEXCEPTION = "dividendZeroException"; - - public static final String FUNC_INTCHANGEEXCEPTION = "intChangeException"; - - public static final String FUNC_NOOUTOFBOUNDSEXCEPTION = "noOutOfBoundsException"; - - public static final String FUNC_OUTOFBOUNDSEXCEPTION = "outOfBoundsException"; - - public static final String FUNC_PARAMEXCEPTION = "paramException"; - - protected AssertHandle(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AssertHandle(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall binaryMoveMinusException() { - final Function function = new Function( - FUNC_BINARYMOVEMINUSEXCEPTION, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall dividendZeroException() { - final Function function = new Function( - FUNC_DIVIDENDZEROEXCEPTION, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall intChangeException(BigInteger param) { - final Function function = new Function( - FUNC_INTCHANGEEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Int8(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall noOutOfBoundsException() { - final Function function = new Function( - FUNC_NOOUTOFBOUNDSEXCEPTION, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall outOfBoundsException() { - final Function function = new Function( - FUNC_OUTOFBOUNDSEXCEPTION, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall paramException(BigInteger param) { - final Function function = new Function( - FUNC_PARAMEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssertHandle.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssertHandle.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AssertHandle load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AssertHandle(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AssertHandle load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AssertHandle(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AtomicSwap.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AtomicSwap.java deleted file mode 100644 index 8aa7bbd340..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/AtomicSwap.java +++ /dev/null @@ -1,341 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple8; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AtomicSwap extends Contract { - private static final String BINARY = "6080604052336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061137f806100536000396000f3fe6080604052600436106100555760003560e01c80632b68b9c61461005a578063446bffba1461007157806348e558da1461009f5780637249fbb614610101578063b31597ad1461013c578063eb84e7f214610181575b600080fd5b34801561006657600080fd5b5061006f610267565b005b61009d6004803603602081101561008757600080fd5b81019080803590602001909291905050506103d9565b005b6100ff600480360360808110156100b557600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291905050506105c3565b005b34801561010d57600080fd5b5061013a6004803603602081101561012457600080fd5b8101908080359060200190929190505050610921565b005b34801561014857600080fd5b5061017f6004803603604081101561015f57600080fd5b810190808035906020019092919080359060200190929190505050610c06565b005b34801561018d57600080fd5b506101ba600480360360208110156101a457600080fd5b8101908080359060200190929190505050611137565b604051808981526020018881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200185815260200184815260200183815260200182600381111561024c57fe5b60ff1681526020019850505050505050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610329576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000471461039f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f62616c616e6365206973206e6f74207a65726f0000000000000000000000000081525060200191505060405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b80600160038111156103e757fe5b6001600083815260200190815260200160002060070160009054906101000a900460ff16600381111561041657fe5b1461046c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c81526020018061131f602c913960400191505060405180910390fd5b8160016000828152602001908152602001600020600401544211156104f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f726566756e6454696d652068617320616c726561647920636f6d65000000000081525060200191505060405180910390fd5b6105223460016000868152602001908152602001600020600501546111cc90919063ffffffff16565b6001600085815260200190815260200160002060050181905550827fd760a88b05be4d78a2815eb20f72049b7c89e1dca4fc467139fe3f2224a37423336001600087815260200190815260200160002060050154604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a2505050565b8382600060038111156105d257fe5b6001600084815260200190815260200160002060070160009054906101000a900460ff16600381111561060157fe5b14610657576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260278152602001806112f86027913960400191505060405180910390fd5b4281116106af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806112d66022913960400191505060405180910390fd5b6106c2833461125290919063ffffffff16565b6001600088815260200190815260200160002060050181905550856001600088815260200190815260200160002060000181905550336001600088815260200190815260200160002060020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550846001600088815260200190815260200160002060030160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550836001600088815260200190815260200160002060040181905550826001600088815260200190815260200160002060060181905550600180600088815260200190815260200160002060070160006101000a81548160ff0219169083600381111561080957fe5b02179055506001600087815260200190815260200160002060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16867f5e919055312829285818d366d1cfe50a1ba27ce2c752b655cb2faa0179e1422733600160008b815260200190815260200160002060040154600160008c815260200190815260200160002060050154600160008d815260200190815260200160002060060154604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182815260200194505050505060405180910390a3505050505050565b806001600381111561092f57fe5b6001600083815260200190815260200160002060070160009054906101000a900460ff16600381111561095e57fe5b146109b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c81526020018061131f602c913960400191505060405180910390fd5b816001600082815260200190815260200160002060040154421015610a41576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f726566756e6454696d657374616d7020686173206e6f7420706173736564000081525060200191505060405180910390fd5b60036001600085815260200190815260200160002060070160006101000a81548160ff02191690836003811115610a7457fe5b0217905550827ffe509803c09416b28ff3d8f690c8b0c61462a892c46d5430c8fb20abe472daf060405160405180910390a26001600084815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc610b35600160008781526020019081526020016000206006015460016000888152602001908152602001600020600501546111cc90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015610b60573d6000803e3d6000fd5b506001600084815260200190815260200160002060008082016000905560018201600090556002820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556003820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556004820160009055600582016000905560068201600090556007820160006101000a81549060ff02191690555050505050565b8160016003811115610c1457fe5b6001600083815260200190815260200160002060070160009054906101000a900460ff166003811115610c4357fe5b14610c99576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c81526020018061131f602c913960400191505060405180910390fd5b828260016000838152602001908152602001600020600401544210610d09576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806112d66022913960400191505060405180910390fd5b8160028083604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b60208310610d605780518252602082019150602081019050602083039250610d3d565b6001836020036101000a038019825116818451168082178552505050505050905001915050602060405180830381855afa158015610da2573d6000803e3d6000fd5b5050506040513d6020811015610db757600080fd5b8101908080519060200190929190505050604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b60208310610e1a5780518252602082019150602081019050602083039250610df7565b6001836020036101000a038019825116818451168082178552505050505050905001915050602060405180830381855afa158015610e5c573d6000803e3d6000fd5b5050506040513d6020811015610e7157600080fd5b810190808051906020019092919050505014610ef5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f736563726574206973206e6f7420636f7272656374000000000000000000000081525060200191505060405180910390fd5b83600160008781526020019081526020016000206001018190555060026001600087815260200190815260200160002060070160006101000a81548160ff02191690836003811115610f4357fe5b0217905550847f489e9ee921192823d1aa1ef800c9ffc642993538b1e7e43a4d46a91965e894ab856040518082815260200191505060405180910390a26001600086815260200190815260200160002060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc60016000888152602001908152602001600020600501549081150290604051600060405180830381858888f19350505050158015611012573d6000803e3d6000fd5b50600060016000878152602001908152602001600020600601541115611090573373ffffffffffffffffffffffffffffffffffffffff166108fc60016000888152602001908152602001600020600601549081150290604051600060405180830381858888f1935050505015801561108e573d6000803e3d6000fd5b505b6001600086815260200190815260200160002060008082016000905560018201600090556002820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556003820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556004820160009055600582016000905560068201600090556007820160006101000a81549060ff021916905550505050505050565b60016020528060005260406000206000915090508060000154908060010154908060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060040154908060050154908060060154908060070160009054906101000a900460ff16905088565b6000818301905082811015611249576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f536166654d617468206164642077726f6e672076616c7565000000000000000081525060200191505060405180910390fd5b80905092915050565b6000828211156112ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f536166654d617468207375622077726f6e672076616c7565000000000000000081525060200191505060405180910390fd5b81830390509291505056fe726566756e6454696d657374616d702068617320616c7265616479207061737365647377617020666f722074686973206861736820697320616c726561647920696e697469617465647377617020666f722074686973206861736820697320656d707479206f7220616c7265616479207370656e74a265627a7a72315820e0afe582cb734e0b9e48f0d8efcf514f5ba356b3e40ea2f22f292d6da87af26e64736f6c63430005110032"; - - public static final String FUNC_ADD = "add"; - - public static final String FUNC_DESTRUCT = "destruct"; - - public static final String FUNC_INITIATE = "initiate"; - - public static final String FUNC_REDEEM = "redeem"; - - public static final String FUNC_REFUND = "refund"; - - public static final String FUNC_SWAPS = "swaps"; - - public static final Event ADDED_EVENT = new Event("Added", - Arrays.>asList(new TypeReference(true) {}, new TypeReference

() {}, new TypeReference() {})); - ; - - public static final Event INITIATED_EVENT = new Event("Initiated", - Arrays.>asList(new TypeReference(true) {}, new TypeReference
(true) {}, new TypeReference
() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - ; - - public static final Event REDEEMED_EVENT = new Event("Redeemed", - Arrays.>asList(new TypeReference(true) {}, new TypeReference() {})); - ; - - public static final Event REFUNDED_EVENT = new Event("Refunded", - Arrays.>asList(new TypeReference(true) {})); - ; - - protected AtomicSwap(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AtomicSwap(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getAddedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ADDED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - AddedEventResponse typedResponse = new AddedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._sender = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable addedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public AddedEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ADDED_EVENT, log); - AddedEventResponse typedResponse = new AddedEventResponse(); - typedResponse.log = log; - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._sender = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable addedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ADDED_EVENT)); - return addedEventObservable(filter); - } - - public List getInitiatedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(INITIATED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - InitiatedEventResponse typedResponse = new InitiatedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._participant = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._initiator = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._refundTimestamp = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(2).getValue(); - typedResponse._payoff = (BigInteger) eventValues.getNonIndexedValues().get(3).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable initiatedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public InitiatedEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(INITIATED_EVENT, log); - InitiatedEventResponse typedResponse = new InitiatedEventResponse(); - typedResponse.log = log; - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._participant = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._initiator = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._refundTimestamp = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(2).getValue(); - typedResponse._payoff = (BigInteger) eventValues.getNonIndexedValues().get(3).getValue(); - return typedResponse; - } - }); - } - - public Observable initiatedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(INITIATED_EVENT)); - return initiatedEventObservable(filter); - } - - public List getRedeemedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(REDEEMED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - RedeemedEventResponse typedResponse = new RedeemedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._secret = (byte[]) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable redeemedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public RedeemedEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(REDEEMED_EVENT, log); - RedeemedEventResponse typedResponse = new RedeemedEventResponse(); - typedResponse.log = log; - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._secret = (byte[]) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable redeemedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(REDEEMED_EVENT)); - return redeemedEventObservable(filter); - } - - public List getRefundedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(REFUNDED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - RefundedEventResponse typedResponse = new RefundedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable refundedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public RefundedEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(REFUNDED_EVENT, log); - RefundedEventResponse typedResponse = new RefundedEventResponse(); - typedResponse.log = log; - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable refundedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(REFUNDED_EVENT)); - return refundedEventObservable(filter); - } - - public RemoteCall add(byte[] _hashedSecret, BigInteger vonValue) { - final Function function = new Function( - FUNC_ADD, - Arrays.asList(new Bytes32(_hashedSecret)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall destruct() { - final Function function = new Function( - FUNC_DESTRUCT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initiate(byte[] _hashedSecret, String _participant, BigInteger _refundTimestamp, BigInteger _payoff, BigInteger vonValue) { - final Function function = new Function( - FUNC_INITIATE, - Arrays.asList(new Bytes32(_hashedSecret), - new Address(_participant), - new Uint256(_refundTimestamp), - new Uint256(_payoff)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall redeem(byte[] _hashedSecret, byte[] _secret) { - final Function function = new Function( - FUNC_REDEEM, - Arrays.asList(new Bytes32(_hashedSecret), - new Bytes32(_secret)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall refund(byte[] _hashedSecret) { - final Function function = new Function( - FUNC_REFUND, - Arrays.asList(new Bytes32(_hashedSecret)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall> swaps(byte[] param0) { - final Function function = new Function(FUNC_SWAPS, - Arrays.asList(new Bytes32(param0)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference
() {}, new TypeReference
() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple8 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple8( - (byte[]) results.get(0).getValue(), - (byte[]) results.get(1).getValue(), - (String) results.get(2).getValue(), - (String) results.get(3).getValue(), - (BigInteger) results.get(4).getValue(), - (BigInteger) results.get(5).getValue(), - (BigInteger) results.get(6).getValue(), - (BigInteger) results.get(7).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AtomicSwap.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AtomicSwap.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AtomicSwap load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AtomicSwap(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AtomicSwap load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AtomicSwap(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class AddedEventResponse { - public Log log; - - public byte[] _hashedSecret; - - public String _sender; - - public BigInteger _value; - } - - public static class InitiatedEventResponse { - public Log log; - - public byte[] _hashedSecret; - - public String _participant; - - public String _initiator; - - public BigInteger _refundTimestamp; - - public BigInteger _value; - - public BigInteger _payoff; - } - - public static class RedeemedEventResponse { - public Log log; - - public byte[] _hashedSecret; - - public byte[] _secret; - } - - public static class RefundedEventResponse { - public Log log; - - public byte[] _hashedSecret; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Ballot.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Ballot.java deleted file mode 100644 index f6d0cda5da..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Ballot.java +++ /dev/null @@ -1,95 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Ballot extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516108723803806108728339818101604052602081101561003357600080fd5b8101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055508060ff166002816100fd9190610104565b5050610157565b81548183558181111561012b5781836000526020600020918201910161012a9190610130565b5b505050565b61015491905b808211156101505760008082016000905550600101610136565b5090565b90565b61070c806101666000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80635c19a95c14610051578063609ff1bd146100955780639e7b8d61146100b9578063b3f98adc146100fd575b600080fd5b6100936004803603602081101561006757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061012e565b005b61009d610481565b604051808260ff1660ff16815260200191505060405180910390f35b6100fb600480360360208110156100cf57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506104f9565b005b61012c6004803603602081101561011357600080fd5b81019080803560ff1690602001909291905050506105f6565b005b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090508060010160009054906101000a900460ff161561018e575061047e565b5b600073ffffffffffffffffffffffffffffffffffffffff16600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141580156102bc57503373ffffffffffffffffffffffffffffffffffffffff16600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b1561032b57600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915061018f565b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610365575061047e565b60018160010160006101000a81548160ff021916908315150217905550818160010160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090508060010160009054906101000a900460ff161561046457816000015460028260010160019054906101000a900460ff1660ff168154811061044557fe5b906000526020600020016000016000828254019250508190555061047b565b816000015481600001600082825401925050819055505b50505b50565b6000806000905060008090505b6002805490508160ff1610156104f4578160028260ff16815481106104af57fe5b906000526020600020016000015411156104e75760028160ff16815481106104d357fe5b906000526020600020016000015491508092505b808060010191505061048e565b505090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415806105a15750600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900460ff165b156105ab576105f3565b60018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055505b50565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090508060010160009054906101000a900460ff168061065e57506002805490508260ff1610155b1561066957506106d4565b60018160010160006101000a81548160ff021916908315150217905550818160010160016101000a81548160ff021916908360ff160217905550806000015460028360ff16815481106106b857fe5b9060005260206000200160000160008282540192505081905550505b5056fea265627a7a723158202a08dd782583cd961a1b9795ba63937d74161802bbc329d7a400056c19e7625064736f6c63430005110032"; - - public static final String FUNC_DELEGATE = "delegate"; - - public static final String FUNC_GIVERIGHTTOVOTE = "giveRightToVote"; - - public static final String FUNC_VOTE = "vote"; - - public static final String FUNC_WINNINGPROPOSAL = "winningProposal"; - - protected Ballot(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Ballot(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _numProposals) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint8(_numProposals))); - return deployRemoteCall(Ballot.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _numProposals) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint8(_numProposals))); - return deployRemoteCall(Ballot.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall delegate(String to) { - final Function function = new Function( - FUNC_DELEGATE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(to)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall giveRightToVote(String toVoter) { - final Function function = new Function( - FUNC_GIVERIGHTTOVOTE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(toVoter)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall vote(BigInteger toProposal) { - final Function function = new Function( - FUNC_VOTE, - Arrays.asList(new Uint8(toProposal)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall winningProposal() { - final Function function = new Function(FUNC_WINNINGPROPOSAL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static Ballot load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Ballot(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Ballot load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Ballot(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BasicDataTypeConstantContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BasicDataTypeConstantContract.java deleted file mode 100644 index fa38cde4de..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BasicDataTypeConstantContract.java +++ /dev/null @@ -1,238 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.abi.solidity.datatypes.generated.Bytes2; -import com.alaya.abi.solidity.datatypes.generated.Uint128; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple3; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BasicDataTypeConstantContract extends Contract { - private static final String BINARY = "60806040526040518060400160405280600581526020017f68656c6c6f0000000000000000000000000000000000000000000000000000008152506000908051906020019061004f9291906100ae565b506040518060400160405280600581526020017f776f726c640000000000000000000000000000000000000000000000000000008152506001908051906020019061009b9291906100ae565b503480156100a857600080fd5b50610153565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100ef57805160ff191683800117855561011d565b8280016001018555821561011d579182015b8281111561011c578251825591602001919060010190610101565b5b50905061012a919061012e565b5090565b61015091905b8082111561014c576000816000905550600101610134565b5090565b90565b610b4b806101626000396000f3fe6080604052600436106100fe5760003560e01c80636273899811610095578063a574971011610064578063a574971014610586578063a650b683146105b1578063ccb3441514610641578063ea07cdfa146106b0578063f8b2cb4f146106db576100fe565b8063627389981461036557806369c76917146103905780637c66959d14610420578063833f17d514610523576100fe565b806338cc4831116100d157806338cc48311461023d57806343e33562146102945780634dbe1d0f14610301578063515899f01461033a576100fe565b8063166aa6e614610103578063209652551461016357806332c7a283146101c057806338023fb9146101f9575b600080fd5b34801561010f57600080fd5b5061013f6004803603602081101561012657600080fd5b81019080803560ff169060200190929190505050610740565b6040518082600381111561014f57fe5b60ff16815260200191505060405180910390f35b34801561016f57600080fd5b5061017861074a565b60405180846fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390f35b3480156101cc57600080fd5b506101d561077b565b604051808260038111156101e557fe5b60ff16815260200191505060405180910390f35b61023b6004803603602081101561020f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610793565b005b34801561024957600080fd5b506102526107dd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156102a057600080fd5b506102a96107fe565b60405180827dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b34801561030d57600080fd5b5061031661082b565b6040518082600381111561032657fe5b60ff16815260200191505060405180910390f35b34801561034657600080fd5b5061034f61083c565b6040518082815260200191505060405180910390f35b34801561037157600080fd5b5061037a610859565b6040518082815260200191505060405180910390f35b34801561039c57600080fd5b506103a5610867565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103e55780820151818401526020810190506103ca565b50505050905090810190601f1680156104125780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561042c57600080fd5b5061043561096b565b60405180847dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001935050505060405180910390f35b6105656004803603602081101561053957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109c3565b60405180838152602001821515151581526020019250505060405180910390f35b34801561059257600080fd5b5061059b610a05565b6040518082815260200191505060405180910390f35b3480156105bd57600080fd5b506105c6610a0d565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156106065780820151818401526020810190506105eb565b50505050905090810190601f1680156106335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561064d57600080fd5b50610656610aaf565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b3480156106bc57600080fd5b506106c5610adc565b6040518082815260200191505060405180910390f35b3480156106e757600080fd5b5061072a600480360360208110156106fe57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610af5565b6040518082815260200191505060405180910390f35b6000819050919050565b6000806000806003905060006404a817c80090506000660aa87bee5380009050828282955095509550505050909192565b60008060038081111561078a57fe5b90508091505090565b8073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501580156107d9573d6000803e3d6000fd5b5050565b6000807372ad2b713faa14c2c4cd2d7affe5d8f538968f5a90508091505090565b6000807f01f400000000000000000000000000000000000000000000000000000000000090508091505090565b60006108376001610740565b905090565b600080805460018160011615610100020316600290049050905090565b600080600690508091505090565b60608060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109005780601f106108d557610100808354040283529160200191610900565b820191906000526020600020905b8154815290600101906020018083116108e357829003601f168201915b505050505090507f61000000000000000000000000000000000000000000000000000000000000008160008151811061093557fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508091505090565b6000806000807f01f4000000000000000000000000000000000000000000000000000000000000905080816000600281106109a257fe5b1a60f81b826001600281106109b357fe5b1a60f81b93509350935050909192565b600080348373ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505091509150915091565b600047905090565b606060008054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610aa55780601f10610a7a57610100808354040283529160200191610aa5565b820191906000526020600020905b815481529060010190602001808311610a8857829003601f168201915b5050505050905090565b6000807fc80000000000000000000000000000000000000000000000000000000000000090508091505090565b60008060006003811115610aec57fe5b90508091505090565b60008173ffffffffffffffffffffffffffffffffffffffff1631905091905056fea265627a7a72315820f56fd66e59898198c7461bba211ce346d45997f79622b1742d0987995854272f64736f6c63430005110032"; - - public static final String FUNC_GETADDRESS = "getAddress"; - - public static final String FUNC_GETBALANCE = "getBalance"; - - public static final String FUNC_GETCURRENTBALANCE = "getCurrentBalance"; - - public static final String FUNC_GETHEXLITERAA = "getHexLiteraA"; - - public static final String FUNC_GETHEXLITERAB = "getHexLiteraB"; - - public static final String FUNC_GETHEXLITERAC = "getHexLiteraC"; - - public static final String FUNC_GETINT = "getInt"; - - public static final String FUNC_GETSEASONA = "getSeasonA"; - - public static final String FUNC_GETSEASONB = "getSeasonB"; - - public static final String FUNC_GETSEASONINDEX = "getSeasonIndex"; - - public static final String FUNC_GETSTRA = "getStrA"; - - public static final String FUNC_GETSTRALENGTH = "getStrALength"; - - public static final String FUNC_GETVALUE = "getValue"; - - public static final String FUNC_GOSEND = "goSend"; - - public static final String FUNC_GOTRANSFER = "goTransfer"; - - public static final String FUNC_PRINTSEASON = "printSeason"; - - public static final String FUNC_SETSTRA = "setStrA"; - - protected BasicDataTypeConstantContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BasicDataTypeConstantContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddress() { - final Function function = new Function( - FUNC_GETADDRESS, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getBalance(String addr) { - final Function function = new Function(FUNC_GETBALANCE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getCurrentBalance() { - final Function function = new Function(FUNC_GETCURRENTBALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getHexLiteraA() { - final Function function = new Function(FUNC_GETHEXLITERAA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getHexLiteraB() { - final Function function = new Function(FUNC_GETHEXLITERAB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall> getHexLiteraC() { - final Function function = new Function(FUNC_GETHEXLITERAC, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (byte[]) results.get(0).getValue(), - (byte[]) results.get(1).getValue(), - (byte[]) results.get(2).getValue()); - } - }); - } - - public RemoteCall getInt() { - final Function function = new Function( - FUNC_GETINT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getSeasonA() { - final Function function = new Function(FUNC_GETSEASONA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSeasonB() { - final Function function = new Function(FUNC_GETSEASONB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSeasonIndex() { - final Function function = new Function(FUNC_GETSEASONINDEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getStrA() { - final Function function = new Function(FUNC_GETSTRA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getStrALength() { - final Function function = new Function(FUNC_GETSTRALENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> getValue() { - final Function function = new Function(FUNC_GETVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue()); - } - }); - } - - public RemoteCall goSend(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_GOSEND, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall goTransfer(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_GOTRANSFER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall printSeason(BigInteger s) { - final Function function = new Function(FUNC_PRINTSEASON, - Arrays.asList(new Uint8(s)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setStrA() { - final Function function = new Function(FUNC_SETSTRA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeConstantContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeConstantContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BasicDataTypeConstantContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeConstantContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BasicDataTypeConstantContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeConstantContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BasicDataTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BasicDataTypeContract.java deleted file mode 100644 index 32ea06e4a6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BasicDataTypeContract.java +++ /dev/null @@ -1,89 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int8; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BasicDataTypeContract extends Contract { - private static final String BINARY = "60806040527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60005560018055600280556001600360006101000a81548160ff021916908360ff16021790555060ff600360016101000a81548160ff021916908360ff1602179055506001600360026101000a81548161ffff021916908361ffff16021790555061ffff600360046101000a81548161ffff021916908361ffff1602179055506001600360066101000a81548160ff021916908360000b60ff160217905550607f600360076101000a81548160ff021916908360000b60ff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600360086101000a81548160ff021916908360000b60ff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80600360096101000a81548160ff021916908360000b60ff16021790555060016003600a6101000a81548160ff02191690831515021790555060006003600b6101000a81548160ff0219169083151502179055507f61000000000000000000000000000000000000000000000000000000000000006003600c6101000a81548160ff021916908360f81c0217905550600160f81b6003600d6101000a81548160ff021916908360f81c02179055507f61620000000000000000000000000000000000000000000000000000000000006003600e6101000a81548161ffff021916908360f01c02179055507f6162630000000000000000000000000000000000000000000000000000000000600360106101000a81548162ffffff021916908360e81c02179055506040518060400160405280600181526020017f6100000000000000000000000000000000000000000000000000000000000000815250600490805190602001906102b392919061035e565b506040518060400160405280600281526020017f6162000000000000000000000000000000000000000000000000000000000000815250600590805190602001906102ff92919061035e565b506040518060400160405280600381526020017f61626300000000000000000000000000000000000000000000000000000000008152506006908051906020019061034b92919061035e565b5034801561035857600080fd5b50610403565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061039f57805160ff19168380011785556103cd565b828001600101855582156103cd579182015b828111156103cc5782518255916020019190600101906103b1565b5b5090506103da91906103de565b5090565b61040091905b808211156103fc5760008160009055506001016103e4565b5090565b90565b6101aa806104126000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806307da3eae146100515780633d9ceb371461006f5780635c5c8419146100ba578063d29f1598146100d8575b600080fd5b610059610123565b6040518082815260200191505060405180910390f35b61009e6004803603602081101561008557600080fd5b81019080803560000b9060200190929190505050610141565b604051808260000b60000b815260200191505060405180910390f35b6100c261014e565b6040518082815260200191505060405180910390f35b610107600480360360208110156100ee57600080fd5b81019080803560ff169060200190929190505050610168565b604051808260ff1660ff16815260200191505060405180910390f35b60006006805460018160011615610100020316600290049050905090565b6000600182019050919050565b60006003600e9054906101000a905050600260ff16905090565b600060018201905091905056fea265627a7a7231582073b5f81c8e7f1e28fb8f8bb743de225c960b41d6f02b8f759e56084245fcafc564736f6c63430005110032"; - - public static final String FUNC_ADDINTOVERFLOW = "addIntOverflow"; - - public static final String FUNC_ADDUINTOVERFLOW = "addUintOverflow"; - - public static final String FUNC_GETBYTES1LENGTH = "getBytes1Length"; - - public static final String FUNC_GETBYTESLENGTH = "getBytesLength"; - - protected BasicDataTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BasicDataTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall addIntOverflow(BigInteger a) { - final Function function = new Function(FUNC_ADDINTOVERFLOW, - Arrays.asList(new Int8(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall addUintOverflow(BigInteger a) { - final Function function = new Function(FUNC_ADDUINTOVERFLOW, - Arrays.asList(new Uint8(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBytes1Length() { - final Function function = new Function(FUNC_GETBYTES1LENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBytesLength() { - final Function function = new Function(FUNC_GETBYTESLENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BasicDataTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BasicDataTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BasicDataTypeDeleteContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BasicDataTypeDeleteContract.java deleted file mode 100644 index a2c2a49f35..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BasicDataTypeDeleteContract.java +++ /dev/null @@ -1,190 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Bytes3; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tuples.generated.Tuple6; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BasicDataTypeDeleteContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610b07806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c8063b2548ecc11610071578063b2548ecc1461017a578063c726046714610290578063d5e350e31461029a578063d8c9d5f5146102be578063e9cafac2146102c8578063f0ebce5a146102d2576100a9565b80630849cc99146100ae5780630860dca9146100cc57806309b1b3f2146100d65780630d35d126146101665780633edf92a814610170575b600080fd5b6100b66102fe565b6040518082815260200191505060405180910390f35b6100d461030b565b005b6100de61031f565b604051808360ff1660ff16815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561012a57808201518184015260208101905061010f565b50505050905090810190601f1680156101575780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61016e6103df565b005b610178610655565b005b61018261067e565b60405180871515151581526020018681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001847cffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167cffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015610250578082015181840152602081019050610235565b50505050905090810190601f16801561027d5780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390f35b610298610782565b005b6102a26107e8565b604051808260ff1660ff16815260200191505060405180910390f35b6102c6610814565b005b6102d061083f565b005b6102da61084f565b604051808260028111156102ea57fe5b60ff16815260200191505060405180910390f35b6000600580549050905090565b600660006101000a81549060ff0219169055565b60006060600760000160009054906101000a900460ff166007600101808054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103d05780601f106103a5576101008083540402835291602001916103d0565b820191906000526020600020905b8154815290600101906020018083116103b357829003601f168201915b50505050509050915091509091565b60016000806101000a81548160ff021916908315150217905550600260018190555033600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f3132330000000000000000000000000000000000000000000000000000000000600260146101000a81548162ffffff021916908360e81c02179055506040518060400160405280600581526020017f68656c6c6f000000000000000000000000000000000000000000000000000000815250600390805190602001906104ca929190610866565b5060056004819055506040518060400160405280600160ff1681526020016040518060400160405280600481526020017f456c6c6100000000000000000000000000000000000000000000000000000000815250815250600760008201518160000160006101000a81548160ff021916908360ff16021790555060208201518160010190805190602001906105609291906108e6565b509050506040518060600160405280600160ff168152602001600260ff168152602001600360ff16815250600590600361059b929190610966565b50600160096000600160ff16815260200190815260200160002060006101000a81548160ff021916908360ff160217905550600260096000600260ff16815260200190815260200160002060006101000a81548160ff021916908360ff160217905550600360096000600360ff16815260200190815260200160002060006101000a81548160ff021916908360ff1602179055506002600660006101000a81548160ff0219169083600281111561064e57fe5b0217905550565b60096000600260ff16815260200190815260200160002060006101000a81549060ff0219169055565b600080600080606060008060009054906101000a900460ff16600154600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600260149054906101000a900460e81b6003600454818054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107675780601f1061073c57610100808354040283529160200191610767565b820191906000526020600020905b81548152906001019060200180831161074a57829003601f168201915b50505050509150955095509550955095509550909192939495565b6000806101000a81549060ff0219169055600160009055600260006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600260146101000a81549062ffffff0219169055600360006107e09190610a0d565b600460009055565b600060096000600260ff16815260200190815260200160002060009054906101000a900460ff16905090565b6007600080820160006101000a81549060ff021916905560018201600061083b9190610a0d565b5050565b6005600061084d9190610a55565b565b6000600660009054906101000a900460ff16905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106108a757805160ff19168380011785556108d5565b828001600101855582156108d5579182015b828111156108d45782518255916020019190600101906108b9565b5b5090506108e29190610a7d565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061092757805160ff1916838001178555610955565b82800160010185558215610955579182015b82811115610954578251825591602001919060010190610939565b5b5090506109629190610a7d565b5090565b82805482825590600052602060002090601f016020900481019282156109fc5791602002820160005b838211156109cd57835183826101000a81548160ff021916908360ff160217905550926020019260010160208160000104928301926001030261098f565b80156109fa5782816101000a81549060ff02191690556001016020816000010492830192600103026109cd565b505b509050610a099190610aa2565b5090565b50805460018160011615610100020316600290046000825580601f10610a335750610a52565b601f016020900490600052602060002090810190610a519190610a7d565b5b50565b50805460008255601f016020900490600052602060002090810190610a7a9190610a7d565b50565b610a9f91905b80821115610a9b576000816000905550600101610a83565b5090565b90565b610acf91905b80821115610acb57600081816101000a81549060ff021916905550600101610aa8565b5090565b9056fea265627a7a72315820e71b3f1582f466aea981f1f0fb98b07abd48f81c16f3bf683064a921c586387c64736f6c63430005110032"; - - public static final String FUNC_DELETEARRAY = "deleteArray"; - - public static final String FUNC_DELETEBASICDATA = "deleteBasicData"; - - public static final String FUNC_DELETEENUM = "deleteEnum"; - - public static final String FUNC_DELETEMAPPING = "deleteMapping"; - - public static final String FUNC_DELETESTRUCT = "deleteStruct"; - - public static final String FUNC_GETARRAYLENGTH = "getArrayLength"; - - public static final String FUNC_GETBASICDATA = "getBasicData"; - - public static final String FUNC_GETENUM = "getEnum"; - - public static final String FUNC_GETMAPPING = "getMapping"; - - public static final String FUNC_GETSTRUCT = "getStruct"; - - public static final String FUNC_INITBASICDATA = "initBasicData"; - - protected BasicDataTypeDeleteContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BasicDataTypeDeleteContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall deleteArray() { - final Function function = new Function( - FUNC_DELETEARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteBasicData() { - final Function function = new Function( - FUNC_DELETEBASICDATA, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteEnum() { - final Function function = new Function( - FUNC_DELETEENUM, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteMapping() { - final Function function = new Function( - FUNC_DELETEMAPPING, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteStruct() { - final Function function = new Function( - FUNC_DELETESTRUCT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getArrayLength() { - final Function function = new Function(FUNC_GETARRAYLENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> getBasicData() { - final Function function = new Function(FUNC_GETBASICDATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference

() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple6 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple6( - (Boolean) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (String) results.get(2).getValue(), - (byte[]) results.get(3).getValue(), - (String) results.get(4).getValue(), - (BigInteger) results.get(5).getValue()); - } - }); - } - - public RemoteCall getEnum() { - final Function function = new Function(FUNC_GETENUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getMapping() { - final Function function = new Function(FUNC_GETMAPPING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> getStruct() { - final Function function = new Function(FUNC_GETSTRUCT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue()); - } - }); - } - - public RemoteCall initBasicData() { - final Function function = new Function( - FUNC_INITBASICDATA, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeDeleteContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeDeleteContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BasicDataTypeDeleteContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeDeleteContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BasicDataTypeDeleteContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeDeleteContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BlockTransactionPropertiesFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BlockTransactionPropertiesFunctions.java deleted file mode 100644 index 926e67a4ec..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BlockTransactionPropertiesFunctions.java +++ /dev/null @@ -1,184 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.Bytes4; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BlockTransactionPropertiesFunctions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061058a806100206000396000f3fe6080604052600436106100dd5760003560e01c8063a16963b31161007f578063d12d910211610059578063d12d910214610340578063df1f29ee146103a9578063e9413d3814610400578063edb4b8651461044f576100dd565b8063a16963b3146102bf578063ab70fd69146102ea578063bbe4fd5014610315576100dd565b80633bc5de30116100bb5780633bc5de301461018257806342cbb15c146102125780635e01eb5a1461023d578063796b89b914610294576100dd565b806312e05dd1146100e2578063209652551461010d5780632df8e9491461012b575b600080fd5b3480156100ee57600080fd5b506100f761047a565b6040518082815260200191505060405180910390f35b610115610482565b6040518082815260200191505060405180910390f35b34801561013757600080fd5b5061014061048a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561018e57600080fd5b50610197610492565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101d75780820151818401526020810190506101bc565b50505050905090810190601f1680156102045780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561021e57600080fd5b506102276104df565b6040518082815260200191505060405180910390f35b34801561024957600080fd5b506102526104e7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156102a057600080fd5b506102a96104ef565b6040518082815260200191505060405180910390f35b3480156102cb57600080fd5b506102d46104f7565b6040518082815260200191505060405180910390f35b3480156102f657600080fd5b506102ff6104ff565b6040518082815260200191505060405180910390f35b34801561032157600080fd5b5061032a610507565b6040518082815260200191505060405180910390f35b34801561034c57600080fd5b5061035561050f565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b3480156103b557600080fd5b506103be61053a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561040c57600080fd5b506104396004803603602081101561042357600080fd5b8101908080359060200190929190505050610542565b6040518082815260200191505060405180910390f35b34801561045b57600080fd5b5061046461054d565b6040518082815260200191505060405180910390f35b600044905090565b600034905090565b600041905090565b60606000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050905090565b600043905090565b600033905090565b600042905090565b600045905090565b60003a905090565b600042905090565b600080357fffffffff0000000000000000000000000000000000000000000000000000000016905090565b600032905090565b600081409050919050565b60005a90509056fea265627a7a72315820ffbf1ce8cec679641d0000f70ab35f9f9711d14757668f9d790c8b24add131da64736f6c63430005110032"; - - public static final String FUNC_GETBLOCKCOINBASE = "getBlockCoinbase"; - - public static final String FUNC_GETBLOCKDIFFICULTY = "getBlockDifficulty"; - - public static final String FUNC_GETBLOCKNUMBER = "getBlockNumber"; - - public static final String FUNC_GETBLOCKTIMESTAMP = "getBlockTimestamp"; - - public static final String FUNC_GETBLOCKHASH = "getBlockhash"; - - public static final String FUNC_GETDATA = "getData"; - - public static final String FUNC_GETGASLEFT = "getGasleft"; - - public static final String FUNC_GETGASLIMIT = "getGaslimit"; - - public static final String FUNC_GETGASPRICE = "getGasprice"; - - public static final String FUNC_GETNOW = "getNow"; - - public static final String FUNC_GETORIGIN = "getOrigin"; - - public static final String FUNC_GETSENDER = "getSender"; - - public static final String FUNC_GETSIG = "getSig"; - - public static final String FUNC_GETVALUE = "getValue"; - - protected BlockTransactionPropertiesFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BlockTransactionPropertiesFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBlockCoinbase() { - final Function function = new Function(FUNC_GETBLOCKCOINBASE, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getBlockDifficulty() { - final Function function = new Function(FUNC_GETBLOCKDIFFICULTY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBlockNumber() { - final Function function = new Function(FUNC_GETBLOCKNUMBER, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBlockTimestamp() { - final Function function = new Function(FUNC_GETBLOCKTIMESTAMP, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBlockhash(BigInteger blockNumber) { - final Function function = new Function(FUNC_GETBLOCKHASH, - Arrays.asList(new Uint256(blockNumber)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getData() { - final Function function = new Function(FUNC_GETDATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getGasleft() { - final Function function = new Function(FUNC_GETGASLEFT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getGaslimit() { - final Function function = new Function(FUNC_GETGASLIMIT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getGasprice() { - final Function function = new Function(FUNC_GETGASPRICE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getNow() { - final Function function = new Function(FUNC_GETNOW, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getOrigin() { - final Function function = new Function(FUNC_GETORIGIN, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getSender() { - final Function function = new Function(FUNC_GETSENDER, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getSig() { - final Function function = new Function(FUNC_GETSIG, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getValue(BigInteger vonValue) { - final Function function = new Function( - FUNC_GETVALUE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BlockTransactionPropertiesFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BlockTransactionPropertiesFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BlockTransactionPropertiesFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BlockTransactionPropertiesFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BlockTransactionPropertiesFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BlockTransactionPropertiesFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Blockhash.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Blockhash.java deleted file mode 100644 index 70de26be4a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Blockhash.java +++ /dev/null @@ -1,95 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Blockhash extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061017b806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80630f7536281461005c57806366b3eb341461007a578063696d67c3146100985780639e1f194e146100b6578063e1b99d74146100d4575b600080fd5b6100646100f2565b6040518082815260200191505060405180910390f35b610082610103565b6040518082815260200191505060405180910390f35b6100a0610115565b6040518082815260200191505060405180910390f35b6100be610127565b6040518082815260200191505060405180910390f35b6100dc610138565b6040518082815260200191505060405180910390f35b60008060ff43034090508091505090565b60008061010043034090508091505090565b60008061010143034090508091505090565b600080601e43034090508091505090565b60008043409050809150509056fea265627a7a72315820f710ced21c7d664553c0cfeaea14e3b70516e351db2949686b0814a63d1cbf6f64736f6c63430005110032"; - - public static final String FUNC_GETBLOCKHASHBEFORE0 = "getBlockhashbefore0"; - - public static final String FUNC_GETBLOCKHASHBEFORE255 = "getBlockhashbefore255"; - - public static final String FUNC_GETBLOCKHASHBEFORE256 = "getBlockhashbefore256"; - - public static final String FUNC_GETBLOCKHASHBEFORE257 = "getBlockhashbefore257"; - - public static final String FUNC_GETBLOCKHASHBEFORE30 = "getBlockhashbefore30"; - - protected Blockhash(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Blockhash(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBlockhashbefore0() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE0, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBlockhashbefore255() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE255, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBlockhashbefore256() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE256, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBlockhashbefore257() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE257, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBlockhashbefore30() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE30, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Blockhash.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Blockhash.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Blockhash load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Blockhash(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Blockhash load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Blockhash(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BubbleSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BubbleSort.java deleted file mode 100644 index f8712a05fc..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/BubbleSort.java +++ /dev/null @@ -1,86 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BubbleSort extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061034c806100206000396000f3fe6080604052600436106100295760003560e01c8063970f17bd1461002e578063f6dd00aa1461009a575b600080fd5b34801561003a57600080fd5b5061004361015c565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561008657808201518184015260208101905061006b565b505050509050019250505060405180910390f35b61015a600480360360408110156100b057600080fd5b81019080803590602001906401000000008111156100cd57600080fd5b8201836020820111156100df57600080fd5b8035906020019184602083028401116401000000008311171561010157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803590602001909291905050506101b4565b005b606060008054806020026020016040519081016040528092919081815260200182805480156101aa57602002820191906000526020600020905b815481526020019060010190808311610196575b5050505050905090565b60008090505b600182038110156102895760008090505b81600184030381101561027b578360018201815181106101e757fe5b60200260200101518482815181106101fb57fe5b6020026020010151131561026e57600084828151811061021757fe5b6020026020010151905084600183018151811061023057fe5b602002602001015185838151811061024457fe5b6020026020010181815250508085600184018151811061026057fe5b602002602001018181525050505b80806001019150506101cb565b5080806001019150506101ba565b5081600090805190602001906102a09291906102a5565b505050565b8280548282559060005260206000209081019282156102e1579160200282015b828111156102e05782518255916020019190600101906102c5565b5b5090506102ee91906102f2565b5090565b61031491905b808211156103105760008160009055506001016102f8565b5090565b9056fea265627a7a72315820e44853150fde6ee22564da9c3f5c093eb3767c68c4c439a58cbdc798d1c5a52964736f6c63430005110032"; - - public static final String FUNC_BUBBLEARRAYS = "BubbleArrays"; - - public static final String FUNC_GET_ARR = "get_arr"; - - protected BubbleSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BubbleSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall BubbleArrays(List arr, BigInteger n, BigInteger vonValue) { - final Function function = new Function( - FUNC_BUBBLEARRAYS, - Arrays.asList(new DynamicArray( - Int256.class, - com.alaya.abi.solidity.Utils.typeMap(arr, Int256.class)), - new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_arr() { - final Function function = new Function(FUNC_GET_ARR, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BubbleSort.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BubbleSort.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BubbleSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BubbleSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BubbleSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BubbleSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CallExternal.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CallExternal.java deleted file mode 100644 index 87d9cc53b2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CallExternal.java +++ /dev/null @@ -1,113 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CallExternal extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610221806100206000396000f3fe60806040526004361061001e5760003560e01c8063de29278914610023575b600080fd5b61002b610041565b6040518082815260200191505060405180910390f35b6000806040516100509061012d565b604051809103906000f08015801561006c573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff1663569c5f6d6040518163ffffffff1660e01b815260040160206040518083038186803b1580156100b557600080fd5b505afa1580156100c9573d6000803e3d6000fd5b505050506040513d60208110156100df57600080fd5b810190808051906020019092919050505091507f0a9f1213b326cb97c7a18f80791661027e1cf7a53125f3d6729d0ae093bd8ad2826040518082815260200191505060405180910390a15090565b60b38061013a8339019056fe6080604052348015600f57600080fd5b5060958061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063569c5f6d14602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b60008060019050600060029050808201925050509056fea265627a7a72315820f16e48d2c9b34cfec444d85b6d5c95b23f3145f7136f1847f8623af72cb7c7c664736f6c63430005110032a265627a7a72315820a1dde1e308d265f185a5e2101606d2add9a784b2dd17a33fa9b4dd053739393f64736f6c63430005110032"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final Event EXTERNALCVALUE_EVENT = new Event("ExternalCValue", - Arrays.>asList(new TypeReference() {})); - ; - - protected CallExternal(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallExternal(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getExternalCValueEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EXTERNALCVALUE_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ExternalCValueEventResponse typedResponse = new ExternalCValueEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable externalCValueEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ExternalCValueEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EXTERNALCVALUE_EVENT, log); - ExternalCValueEventResponse typedResponse = new ExternalCValueEventResponse(); - typedResponse.log = log; - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable externalCValueEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EXTERNALCVALUE_EVENT)); - return externalCValueEventObservable(filter); - } - - public RemoteCall getResult(BigInteger vonValue) { - final Function function = new Function( - FUNC_GETRESULT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallExternal.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallExternal.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CallExternal load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallExternal(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallExternal load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallExternal(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class ExternalCValueEventResponse { - public Log log; - - public BigInteger value; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CallerOne.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CallerOne.java deleted file mode 100644 index 621e59a832..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CallerOne.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CallerOne extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610625806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c146100465780637b8ed01814610064578063f88bef8c14610082575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b6040518082815260200191505060405180910390f35b61008a61009b565b005b60005481565b60008054905090565b60006040516100a9906101d2565b604051809103906000f0801580156100c5573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff1660405180807f696e63282900000000000000000000000000000000000000000000000000000081525060050190506040518091039020604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b602083106101675780518252602082019150602081019050602083039250610144565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101c7576040519150601f19603f3d011682016040523d82523d6000602084013e6101cc565b606091505b50505050565b610411806101e08339019056fe608060405234801561001057600080fd5b506103f1806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c14610046578063371303c0146100645780635a3617561461006e575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b005b610076610236565b6040518082815260200191505060405180910390f35b60005481565b60006040516100a09061023f565b604051809103906000f0801580156100bc573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff1660405180807f696e63282900000000000000000000000000000000000000000000000000000081525060050190506040518091039020604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b6020831061015e578051825260208201915060208101905060208303925061013b565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101be576040519150601f19603f3d011682016040523d82523d6000602084013e6101c3565b606091505b5050507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150565b60008054905090565b6101708061024d8339019056fe608060405234801561001057600080fd5b50610150806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c1461004657806317f936fb14610064578063371303c014610082575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b6040518082815260200191505060405180910390f35b61008a61009b565b005b60005481565b60008054905090565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a156fea265627a7a723158201503617f307b2c2c8fae2160e2fcd6eb6f371049fa42433fda25cfff9df4554664736f6c63430005110032a265627a7a72315820839d38928da5bc7c16ccc1f876fffa766e9cb869ccf5a1ee313982934bebd10c64736f6c63430005110032a265627a7a72315820a8c609e6072360e514fed87cc023b9a144a260bc65e1b8327c5b6e6ac7ecab5c64736f6c63430005110032"; - - public static final String FUNC_GETCALLERX = "getCallerX"; - - public static final String FUNC_INC_DELEGATECALL = "inc_delegatecall"; - - public static final String FUNC_X = "x"; - - protected CallerOne(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallerOne(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getCallerX() { - final Function function = new Function(FUNC_GETCALLERX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc_delegatecall() { - final Function function = new Function( - FUNC_INC_DELEGATECALL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerOne.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerOne.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CallerOne load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallerOne(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallerOne load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallerOne(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CallerThree.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CallerThree.java deleted file mode 100644 index 63d4a39745..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CallerThree.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CallerThree extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610150806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c1461004657806317f936fb14610064578063371303c014610082575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b6040518082815260200191505060405180910390f35b61008a61009b565b005b60005481565b60008054905090565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a156fea265627a7a723158201503617f307b2c2c8fae2160e2fcd6eb6f371049fa42433fda25cfff9df4554664736f6c63430005110032"; - - public static final String FUNC_GETCALLEETHREEX = "getCalleeThreeX"; - - public static final String FUNC_INC = "inc"; - - public static final String FUNC_X = "x"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected CallerThree(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallerThree(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall getCalleeThreeX() { - final Function function = new Function(FUNC_GETCALLEETHREEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc() { - final Function function = new Function( - FUNC_INC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerThree.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerThree.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CallerThree load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallerThree(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallerThree load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallerThree(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String seder; - - public BigInteger x; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CallerTwo.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CallerTwo.java deleted file mode 100644 index e3afaf58f8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CallerTwo.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CallerTwo extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506103f1806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c14610046578063371303c0146100645780635a3617561461006e575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b005b610076610236565b6040518082815260200191505060405180910390f35b60005481565b60006040516100a09061023f565b604051809103906000f0801580156100bc573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff1660405180807f696e63282900000000000000000000000000000000000000000000000000000081525060050190506040518091039020604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b6020831061015e578051825260208201915060208101905060208303925061013b565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101be576040519150601f19603f3d011682016040523d82523d6000602084013e6101c3565b606091505b5050507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150565b60008054905090565b6101708061024d8339019056fe608060405234801561001057600080fd5b50610150806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c1461004657806317f936fb14610064578063371303c014610082575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b6040518082815260200191505060405180910390f35b61008a61009b565b005b60005481565b60008054905090565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a156fea265627a7a723158201503617f307b2c2c8fae2160e2fcd6eb6f371049fa42433fda25cfff9df4554664736f6c63430005110032a265627a7a72315820839d38928da5bc7c16ccc1f876fffa766e9cb869ccf5a1ee313982934bebd10c64736f6c63430005110032"; - - public static final String FUNC_GETCALLEEX = "getCalleeX"; - - public static final String FUNC_INC = "inc"; - - public static final String FUNC_X = "x"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected CallerTwo(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallerTwo(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall getCalleeX() { - final Function function = new Function(FUNC_GETCALLEEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc() { - final Function function = new Function( - FUNC_INC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerTwo.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerTwo.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CallerTwo load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallerTwo(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallerTwo load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallerTwo(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String seder; - - public BigInteger x; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ChainFunction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ChainFunction.java deleted file mode 100644 index e658f8f304..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ChainFunction.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ChainFunction extends Contract { - private static final String BINARY = "6080604052336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550346001819055506000600260006101000a81548160ff02191690831515021790555061019c806100756000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80637eed92c01461003b5780639f9232f4146100ab575b600080fd5b6100696004803603602081101561005157600080fd5b81019080803515159060200190929190505050610125565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100e3600480360360408110156100c157600080fd5b8101908080351515906020019092919080359060200190929190505050610140565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600115158215151461013857600080fd5b339050919050565b6000600115158315151461015057fe5b600982101561015e57600080fd5b3390509291505056fea265627a7a723158203b510c6eefa5d8925b48c720eac4b221709e391e812b520c54a36f0f03e4c29164736f6c63430005110032"; - - public static final String FUNC_DECEASED = "deceased"; - - public static final String FUNC_DECEASEDWITHMODIFY = "deceasedWithModify"; - - protected ChainFunction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ChainFunction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - return deployRemoteCall(ChainFunction.class, web3j, credentials, contractGasProvider, BINARY, "", initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - return deployRemoteCall(ChainFunction.class, web3j, transactionManager, contractGasProvider, BINARY, "", initialVonValue, chainId); - } - - public RemoteCall deceased(Boolean isDeceased, BigInteger less9) { - final Function function = new Function(FUNC_DECEASED, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Bool(isDeceased), - new com.alaya.abi.solidity.datatypes.generated.Uint256(less9)), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall deceasedWithModify(Boolean _isDeceased) { - final Function function = new Function(FUNC_DECEASEDWITHMODIFY, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Bool(_isDeceased)), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static ChainFunction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ChainFunction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ChainFunction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ChainFunction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ConstructorInternalDeclaraction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ConstructorInternalDeclaraction.java deleted file mode 100644 index 3520bb425c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ConstructorInternalDeclaraction.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorInternalDeclaraction extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_COUNT = "count"; - - protected ConstructorInternalDeclaraction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorInternalDeclaraction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorInternalDeclaraction.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorInternalDeclaraction.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall count() { - final Function function = new Function(FUNC_COUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static ConstructorInternalDeclaraction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalDeclaraction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorInternalDeclaraction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalDeclaraction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ConstructorInternalDeclaractionSub.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ConstructorInternalDeclaractionSub.java deleted file mode 100644 index d68d5d8652..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ConstructorInternalDeclaractionSub.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorInternalDeclaractionSub extends Contract { - private static final String BINARY = "6080604052600a60005534801561001557600080fd5b506040516101bf3803806101bf8339818101604052602081101561003857600080fd5b81019080805190602001909291905050508080600081905550505061015d806100626000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806306661abd1461004657806382ab890a14610064578063a87d942c146100d9575b600080fd5b61004e6100f7565b6040518082815260200191505060405180910390f35b6100906004803603602081101561007a57600080fd5b81019080803590602001909291905050506100fd565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6100e161011f565b6040518082815260200191505060405180910390f35b60005481565b6000808260008082825401925050819055503360005481915091509150915091565b6000805490509056fea265627a7a72315820811b1e5bb1779cb5172b49dad49f1014b6975e5e8587623c45e9e55a3e9e07b164736f6c63430005110032"; - - public static final String FUNC_COUNT = "count"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_UPDATE = "update"; - - protected ConstructorInternalDeclaractionSub(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorInternalDeclaractionSub(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorInternalDeclaractionSub.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorInternalDeclaractionSub.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall count() { - final Function function = new Function(FUNC_COUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ConstructorInternalDeclaractionSub load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalDeclaractionSub(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorInternalDeclaractionSub load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalDeclaractionSub(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ConstructorPublicDeclaraction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ConstructorPublicDeclaraction.java deleted file mode 100644 index e9c78f44c3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ConstructorPublicDeclaraction.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorPublicDeclaraction extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b506040516101843803806101848339818101604052602081101561003757600080fd5b810190808051906020019092919050505080600081905550506101258061005f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806382ab890a146037578063a87d942c1460a9575b600080fd5b606060048036036020811015604b57600080fd5b810190808035906020019092919050505060c5565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b60af60e7565b6040518082815260200191505060405180910390f35b6000808260008082825401925050819055503360005481915091509150915091565b6000805490509056fea265627a7a723158209af8c46e5b7a32c5d6417a42d3fdf57177f756932fa6d458384be7673a52b28864736f6c63430005110032"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_UPDATE = "update"; - - protected ConstructorPublicDeclaraction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorPublicDeclaraction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorPublicDeclaraction.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorPublicDeclaraction.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ConstructorPublicDeclaraction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorPublicDeclaraction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorPublicDeclaraction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorPublicDeclaraction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ConstructorTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ConstructorTest.java deleted file mode 100644 index 7c73012aeb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ConstructorTest.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorTest extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b506040516101bc3803806101bc8339818101604052602081101561003757600080fd5b8101908080519060200190929190505050806000819055505061015d8061005f6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806306661abd1461004657806382ab890a14610064578063a87d942c146100d9575b600080fd5b61004e6100f7565b6040518082815260200191505060405180910390f35b6100906004803603602081101561007a57600080fd5b81019080803590602001909291905050506100fd565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6100e161011f565b6040518082815260200191505060405180910390f35b60005481565b6000808260008082825401925050819055503360005481915091509150915091565b6000805490509056fea265627a7a72315820f7fefcc6c2bacd76959f169b156e314bf6c5a5903707486be32ec6227ea3307b64736f6c63430005110032"; - - public static final String FUNC_COUNT = "count"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_UPDATE = "update"; - - protected ConstructorTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorTest.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorTest.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall count() { - final Function function = new Function(FUNC_COUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ConstructorTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ContractAdress.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ContractAdress.java deleted file mode 100644 index 5d7b8fcc76..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ContractAdress.java +++ /dev/null @@ -1,45 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ContractAdress extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b50604780601d6000396000f3fe6080604052348015600f57600080fd5b5000fea265627a7a723158201e2b8da001f5bfa8d514df4902c1fbcf2e91f58798e8a03d0c9fec5a0b9e4c9364736f6c63430005110032"; - - protected ContractAdress(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractAdress(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAdress.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAdress.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ContractAdress load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractAdress(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractAdress load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractAdress(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ContractAndAddress.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ContractAndAddress.java deleted file mode 100644 index e6e7a8f6e0..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ContractAndAddress.java +++ /dev/null @@ -1,98 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ContractAndAddress extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610542806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806302e9cd8b1461005c57806346df069e146100a6578063a52e2905146100f0578063a7010a661461013a578063c105b57c14610144575b600080fd5b61006461018e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100ae6101b8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100f86101e1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61014261020b565b005b61014c61040f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600060405161021990610439565b604051809103906000f080158015610235573d6000803e3d6000fd5b506000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060405161028190610445565b604051809103906000f08015801561029d573d6000803e3d6000fd5b50600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040516102ea90610445565b604051809103906000f080158015610306573d6000803e3d6000fd5b50600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60588061045283390190565b6064806104aa8339019056fe6080604052348015600f57600080fd5b50603b80601d6000396000f3fe608060405200fea265627a7a72315820365d0631b9957f63acafe1ae6efa4e43b8ede9b264900652a2b0f0a127764c0b64736f6c634300051100326080604052348015600f57600080fd5b50604780601d6000396000f3fe6080604052348015600f57600080fd5b5000fea265627a7a723158201e2b8da001f5bfa8d514df4902c1fbcf2e91f58798e8a03d0c9fec5a0b9e4c9364736f6c63430005110032a265627a7a72315820aa085e8507579522a580d0418725fe4d6af51793695d5b332314fd496e239b3064736f6c63430005110032"; - - public static final String FUNC_GETADDRESSTOPAYABLE = "getAddressToPayable"; - - public static final String FUNC_GETNONALCONTRACTADDRESS = "getNonalContractAddress"; - - public static final String FUNC_GETNONALPAYABLEADDRESS = "getNonalPayableAddress"; - - public static final String FUNC_GETPAYABLETOADDRESS = "getPayableToAddress"; - - public static final String FUNC_PAYABLEORNOT = "payableOrNot"; - - protected ContractAndAddress(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractAndAddress(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddressToPayable() { - final Function function = new Function(FUNC_GETADDRESSTOPAYABLE, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getNonalContractAddress() { - final Function function = new Function(FUNC_GETNONALCONTRACTADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getNonalPayableAddress() { - final Function function = new Function(FUNC_GETNONALPAYABLEADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getPayableToAddress() { - final Function function = new Function(FUNC_GETPAYABLETOADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall payableOrNot() { - final Function function = new Function( - FUNC_PAYABLEORNOT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAndAddress.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAndAddress.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ContractAndAddress load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractAndAddress(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractAndAddress load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractAndAddress(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ContractArray.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ContractArray.java deleted file mode 100644 index cf3e7de64f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ContractArray.java +++ /dev/null @@ -1,91 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ContractArray extends Contract { - private static final String BINARY = "608060405260036040519080825280602002602001820160405280156100345781602001602082028038833980820191505090505b506000908051906020019061004a92919061005d565b5034801561005757600080fd5b5061012a565b8280548282559060005260206000209081019282156100d6579160200282015b828111156100d55782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019061007d565b5b5090506100e391906100e7565b5090565b61012791905b8082111561012357600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055506001016100ed565b5090565b90565b610319806101396000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806326121ff014610046578063807b4c3314610050578063e276c799146100af575b600080fd5b61004e6100f9565b005b6100586101fd565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561009b578082015181840152602081019050610080565b505050509050019250505060405180910390f35b6100b761028b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101016102c2565b60003090806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505030600160006003811061017657fe5b0160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555030816000600381106101c357fe5b602002019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505050565b6060600080548060200260200160405190810160405280929190818152602001828054801561028157602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610237575b5050505050905090565b6000600160006003811061029b57fe5b0160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b604051806060016040528060039060208202803883398082019150509050509056fea265627a7a723158208f6ae8aaa8c586c1683553dc7507498296aa5bdee072564053c44aded7dd63af64736f6c63430005110032"; - - public static final String FUNC_F = "f"; - - public static final String FUNC_GETX = "getx"; - - public static final String FUNC_GETY = "gety"; - - protected ContractArray(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractArray(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f() { - final Function function = new Function( - FUNC_F, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getx() { - final Function function = new Function(FUNC_GETX, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall gety() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractArray.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractArray.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ContractArray load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractArray(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractArray load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractArray(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ContractPayable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ContractPayable.java deleted file mode 100644 index 3b61b17cfa..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ContractPayable.java +++ /dev/null @@ -1,45 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ContractPayable extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b50603b80601d6000396000f3fe608060405200fea265627a7a72315820365d0631b9957f63acafe1ae6efa4e43b8ede9b264900652a2b0f0a127764c0b64736f6c63430005110032"; - - protected ContractPayable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractPayable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractPayable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractPayable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ContractPayable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractPayable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractPayable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractPayable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Control.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Control.java deleted file mode 100644 index f1bccdf91d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Control.java +++ /dev/null @@ -1,250 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Control extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610c28806100206000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c806357609889116100b85780638e418fdb1161007c5780638e418fdb146104b2578063a64be0d5146104d0578063b4feac7c146104ee578063b87df0141461050c578063c0e641fc1461052a578063da193c1f1461054857610137565b80635760988914610352578063687615d71461037057806371ee52021461038e57806378aa6155146104115780637e6b0f571461042f57610137565b806344e24ce0116100ff57806344e24ce01461029c57806347808fc3146102ca5780634b8016b9146102f8578063508242dc1461031657806356230cca1461033457610137565b80631f9c9f3c1461013c578063275ec9761461015a57806335432d3114610178578063383d49e5146101fb5780633f9dbcf914610219575b600080fd5b610144610566565b6040518082815260200191505060405180910390f35b61016261056c565b6040518082815260200191505060405180910390f35b6101806105ca565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101c05780820151818401526020810190506101a5565b50505050905090810190601f1680156101ed5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610203610668565b6040518082815260200191505060405180910390f35b61022161066e565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610261578082015181840152602081019050610246565b50505050905090810190601f16801561028e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102c8600480360360208110156102b257600080fd5b810190808035906020019092919050505061070c565b005b6102f6600480360360208110156102e057600080fd5b8101908080359060200190929190505050610811565b005b6103006108a4565b6040518082815260200191505060405180910390f35b61031e6108aa565b6040518082815260200191505060405180910390f35b61033c6108b0565b6040518082815260200191505060405180910390f35b61035a610907565b6040518082815260200191505060405180910390f35b610378610911565b6040518082815260200191505060405180910390f35b610396610917565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103d65780820151818401526020810190506103bb565b50505050905090810190601f1680156104035780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104196109b9565b6040518082815260200191505060405180910390f35b6104376109c3565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561047757808201518184015260208101905061045c565b50505050905090810190601f1680156104a45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104ba610a65565b6040518082815260200191505060405180910390f35b6104d8610a9b565b6040518082815260200191505060405180910390f35b6104f6610af2565b6040518082815260200191505060405180910390f35b610514610b30565b6040518082815260200191505060405180910390f35b610532610b3a565b6040518082815260200191505060405180910390f35b610550610b44565b6040518082815260200191505060405180910390f35b60025481565b6000806005819055506000600190505b600a8110156105c05760006005828161059157fe5b0614156105a3576005549150506105c7565b80600560008282540192505081905550808060010191505061057c565b5060055490505b90565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106605780601f1061063557610100808354040283529160200191610660565b820191906000526020600020905b81548152906001019060200180831161064357829003601f168201915b505050505081565b60035481565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107045780601f106106d957610100808354040283529160200191610704565b820191906000526020600020905b8154815290600101906020018083116106e757829003601f168201915b505050505081565b6014811015610766576040518060400160405280601381526020017f796f7520617265206120796f756e67206d616e0000000000000000000000000081525060009080519060200190610760929190610b4e565b5061080e565b603c8110156107c0576040518060400160405280601481526020017f796f75206172652061206d6964646c65206d616e000000000000000000000000815250600090805190602001906107ba929190610b4e565b5061080d565b6040518060400160405280601181526020017f796f75206172652061206f6c64206d616e0000000000000000000000000000008152506000908051906020019061080b929190610b4e565b505b5b50565b60148113610854576040518060400160405280600c81526020017f6d6f7265207468616e203230000000000000000000000000000000000000000081525061088b565b6040518060400160405280600c81526020017f6c657373207468616e20323000000000000000000000000000000000000000008152505b600690805190602001906108a0929190610b4e565b5050565b60045481565b60015481565b60008060048190555060008090505b600a8110156108fe576000600282816108d457fe5b0614156108e0576108f1565b806004600082825401925050819055505b80806001019150506108bf565b50600454905090565b6000600454905090565b60055481565b606060068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109af5780601f10610984576101008083540402835291602001916109af565b820191906000526020600020905b81548152906001019060200180831161099257829003601f168201915b5050505050905090565b6000600554905090565b606060008054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a5b5780601f10610a3057610100808354040283529160200191610a5b565b820191906000526020600020905b815481529060010190602001808311610a3e57829003601f168201915b5050505050905090565b60008060018190555060008090505b80600160008282540192505081905550806001019050600a8110610a745760015491505090565b6000806003819055506000600190505b600a811015610ae957600060028281610ac057fe5b061415610acc57610ae9565b806003600082825401925050819055508080600101915050610aab565b50600354905090565b60008060028190555060008090505b600a811015610b2757806002600082825401925050819055508080600101915050610b01565b50600254905090565b6000600254905090565b6000600354905090565b6000600154905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610b8f57805160ff1916838001178555610bbd565b82800160010185558215610bbd579182015b82811115610bbc578251825591602001919060010190610ba1565b5b509050610bca9190610bce565b5090565b610bf091905b80821115610bec576000816000905550600101610bd4565b5090565b9056fea265627a7a723158208e998b3b55e7eae2d71351824b2ba31b8be4cb981524ba29c6c839b610dd51e264736f6c63430005110032"; - - public static final String FUNC_DOWHILECONTROL = "doWhileControl"; - - public static final String FUNC_DOWHILECONTROLRESULT = "doWhileControlResult"; - - public static final String FUNC_FORBREAKCONTROL = "forBreakControl"; - - public static final String FUNC_FORBREAKCONTROLRESULT = "forBreakControlResult"; - - public static final String FUNC_FORCONTINUECONTROL = "forContinueControl"; - - public static final String FUNC_FORCONTINUECONTROLRESULT = "forContinueControlResult"; - - public static final String FUNC_FORCONTROL = "forControl"; - - public static final String FUNC_FORCONTROLRESULT = "forControlResult"; - - public static final String FUNC_FORRETURNCONTROL = "forReturnControl"; - - public static final String FUNC_FORRETURNCONTROLRESULT = "forReturnControlResult"; - - public static final String FUNC_FORTHREECONTROLCONTROL = "forThreeControlControl"; - - public static final String FUNC_FORTHREECONTROLCONTROLRESULT = "forThreeControlControlResult"; - - public static final String FUNC_GETFORBREAKCONTROLRESULT = "getForBreakControlResult"; - - public static final String FUNC_GETFORCONTINUECONTROLRESULT = "getForContinueControlResult"; - - public static final String FUNC_GETFORCONTROLRESULT = "getForControlResult"; - - public static final String FUNC_GETFORRETURNCONTROLRESULT = "getForReturnControlResult"; - - public static final String FUNC_GETFORTHREECONTROLCONTROLRESULT = "getForThreeControlControlResult"; - - public static final String FUNC_GETIFCONTROLRESULT = "getIfControlResult"; - - public static final String FUNC_GETDOWHILERESULT = "getdoWhileResult"; - - public static final String FUNC_IFCONTROL = "ifControl"; - - public static final String FUNC_IFCONTROLRESULT = "ifControlResult"; - - protected Control(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Control(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall doWhileControl() { - final Function function = new Function( - FUNC_DOWHILECONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall doWhileControlResult() { - final Function function = new Function(FUNC_DOWHILECONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forBreakControl() { - final Function function = new Function( - FUNC_FORBREAKCONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forBreakControlResult() { - final Function function = new Function(FUNC_FORBREAKCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forContinueControl() { - final Function function = new Function( - FUNC_FORCONTINUECONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forContinueControlResult() { - final Function function = new Function(FUNC_FORCONTINUECONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forControl() { - final Function function = new Function( - FUNC_FORCONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forControlResult() { - final Function function = new Function(FUNC_FORCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forReturnControl() { - final Function function = new Function( - FUNC_FORRETURNCONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forReturnControlResult() { - final Function function = new Function(FUNC_FORRETURNCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forThreeControlControl(BigInteger age) { - final Function function = new Function( - FUNC_FORTHREECONTROLCONTROL, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Int256(age)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forThreeControlControlResult() { - final Function function = new Function(FUNC_FORTHREECONTROLCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getForBreakControlResult() { - final Function function = new Function(FUNC_GETFORBREAKCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getForContinueControlResult() { - final Function function = new Function(FUNC_GETFORCONTINUECONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getForControlResult() { - final Function function = new Function(FUNC_GETFORCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getForReturnControlResult() { - final Function function = new Function(FUNC_GETFORRETURNCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getForThreeControlControlResult() { - final Function function = new Function(FUNC_GETFORTHREECONTROLCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getIfControlResult() { - final Function function = new Function(FUNC_GETIFCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getdoWhileResult() { - final Function function = new Function(FUNC_GETDOWHILERESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall ifControl(BigInteger age) { - final Function function = new Function( - FUNC_IFCONTROL, - Arrays.asList(new Uint256(age)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall ifControlResult() { - final Function function = new Function(FUNC_IFCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Control.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Control.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Control load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Control(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Control load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Control(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CreateContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CreateContract.java deleted file mode 100644 index 5f7657e02a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CreateContract.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CreateContract extends Contract { - private static final String BINARY = "60806040526103e86040516100139061008b565b80828152602001915050604051809103906000f080158015610039573d6000803e3d6000fd5b506000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555034801561008557600080fd5b50610098565b6101048061028083390190565b6101d9806100a76000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f26ca91c14610030575b600080fd5b610038610055565b604051808381526020018281526020019250505060405180910390f35b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630c55699c6040518163ffffffff1660e01b815260040160206040518083038186803b1580156100bf57600080fd5b505afa1580156100d3573d6000803e3d6000fd5b505050506040513d60208110156100e957600080fd5b81019080805190602001909291905050506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663aa8c217c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561016157600080fd5b505afa158015610175573d6000803e3d6000fd5b505050506040513d602081101561018b57600080fd5b810190808051906020019092919050505091509150909156fea265627a7a72315820ab26f5422a6d7ec0f95da994255441a798b33f0cf6e6b3b74e85077de0be555464736f6c6343000511003260806040526040516101043803806101048339818101604052602081101561002657600080fd5b810190808051906020019092919050505080600081905550346001819055505060b0806100546000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80630c55699c146037578063aa8c217c146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596075565b6040518082815260200191505060405180910390f35b60005481565b6001548156fea265627a7a723158202206163c67423ec8f497273d5293928ce55f70265c4296a4f30bf7b736ad554f64736f6c63430005110032"; - - public static final String FUNC_GETTARGETCREATECONTRACTDATA = "getTargetCreateContractData"; - - protected CreateContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CreateContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> getTargetCreateContractData() { - final Function function = new Function(FUNC_GETTARGETCREATECONTRACTDATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreateContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreateContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CreateContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CreateContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CreateContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CreateContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CreationCode.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CreationCode.java deleted file mode 100644 index 745d854d65..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CreationCode.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CreationCode extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610312806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063ade003e81461003b578063f5f5ba72146100be575b600080fd5b610043610141565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100c6610168565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101065780820151818401526020810190506100eb565b50505050905090810190601f1680156101335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6040518060200161015190610193565b6020820181038252601f19601f8201166040525081565b60606040518060200161017a90610193565b6020820181038252601f19601f82011660405250905090565b61013d806101a18339019056fe608060405234801561001057600080fd5b5061011d806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80632096525514602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525090509056fea265627a7a72315820456728ef62d33e7e31780b2f5e20a2b90999e766bfd708e5e1fffd6b0a8d17cc64736f6c63430005110032a265627a7a723158207201727b2230b516e9319b3d9143ba8dae972f6be8486affef89c1b5657da3db64736f6c63430005110032"; - - public static final String FUNC_CREATIONCODEINFO = "creationCodeInfo"; - - public static final String FUNC_GETCONTRACTNAME = "getContractName"; - - protected CreationCode(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CreationCode(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall creationCodeInfo() { - final Function function = new Function(FUNC_CREATIONCODEINFO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getContractName() { - final Function function = new Function(FUNC_GETCONTRACTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreationCode.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreationCode.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CreationCode load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CreationCode(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CreationCode load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CreationCode(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CreationCodeType.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CreationCodeType.java deleted file mode 100644 index 4ede8effef..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/CreationCodeType.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CreationCodeType extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011d806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80632096525514602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525090509056fea265627a7a72315820456728ef62d33e7e31780b2f5e20a2b90999e766bfd708e5e1fffd6b0a8d17cc64736f6c63430005110032"; - - public static final String FUNC_GETVALUE = "getValue"; - - protected CreationCodeType(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CreationCodeType(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getValue() { - final Function function = new Function( - FUNC_GETVALUE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreationCodeType.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreationCodeType.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CreationCodeType load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CreationCodeType(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CreationCodeType load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CreationCodeType(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DataLocation.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DataLocation.java deleted file mode 100644 index 7612b93676..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DataLocation.java +++ /dev/null @@ -1,107 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DataLocation extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610774806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80630bcd3b3314610051578063246982c4146100d45780633ca8b1a714610182578063a1715deb14610274575b600080fd5b61005961035b565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561009957808201518184015260208101905061007e565b50505050905090810190601f1680156100c65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610100600480360360208110156100ea57600080fd5b81019080803590602001909291905050506103fd565b6040518080602001838152602001828103825284818151815260200191508051906020019080838360005b8381101561014657808201518184015260208101905061012b565b50505050905090810190601f1680156101735780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6101f96004803603602081101561019857600080fd5b81019080803590602001906401000000008111156101b557600080fd5b8201836020820111156101c757600080fd5b803590602001918460018302840111640100000000831117156101e957600080fd5b90919293919293905050506104d1565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561023957808201518184015260208101905061021e565b50505050905090810190601f1680156102665780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6103416004803603606081101561028a57600080fd5b8101908080359060200190929190803590602001906401000000008111156102b157600080fd5b8201836020820111156102c357600080fd5b803590602001918460018302840111640100000000831117156102e557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050919291929080359060200190929190505050610588565b604051808215151515815260200191505060405180910390f35b606060018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103f35780601f106103c8576101008083540402835291602001916103f3565b820191906000526020600020905b8154815290600101906020018083116103d657829003601f168201915b5050505050905090565b6060600080600084815260200190815260200160002060000160008085815260200190815260200160002060010154818054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b5050505050915091509150915091565b60608282600191906104e4929190610600565b5060018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561057b5780601f106105505761010080835404028352916020019161057b565b820191906000526020600020905b81548152906001019060200180831161055e57829003601f168201915b5050505050905092915050565b6000610592610680565b60405180604001604052808581526020018481525090506105b381866105bf565b60019150509392505050565b8160008083815260200190815260200160002060008201518160000190805190602001906105ee92919061069a565b50602082015181600101559050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061064157803560ff191683800117855561066f565b8280016001018555821561066f579182015b8281111561066e578235825591602001919060010190610653565b5b50905061067c919061071a565b5090565b604051806040016040528060608152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106106db57805160ff1916838001178555610709565b82800160010185558215610709579182015b828111156107085782518255916020019190600101906106ed565b5b509050610716919061071a565b5090565b61073c91905b80821115610738576000816000905550600101610720565b5090565b9056fea265627a7a723158208c8e0dc7eb9c3d5a6588ae835056ea2bbfc5578aacceae531d4a9992fd21ee7464736f6c63430005110032"; - - public static final String FUNC_GETBYTES = "getBytes"; - - public static final String FUNC_GETPERSON = "getPerson"; - - public static final String FUNC_SAVEPERSON = "savePerson"; - - public static final String FUNC_TESTBYTES = "testBytes"; - - protected DataLocation(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DataLocation(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBytes() { - final Function function = new Function(FUNC_GETBYTES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall> getPerson(BigInteger _id) { - final Function function = new Function(FUNC_GETPERSON, - Arrays.asList(new Uint256(_id)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (String) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall savePerson(BigInteger _id, String _name, BigInteger _age) { - final Function function = new Function( - FUNC_SAVEPERSON, - Arrays.asList(new Uint256(_id), - new Utf8String(_name), - new Uint256(_age)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testBytes(byte[] _data) { - final Function function = new Function( - FUNC_TESTBYTES, - Arrays.asList(new DynamicBytes(_data)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DataLocation.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DataLocation.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DataLocation load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DataLocation(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DataLocation load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DataLocation(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DecimalLiteralsChangeByte.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DecimalLiteralsChangeByte.java deleted file mode 100644 index 5da9aecefc..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DecimalLiteralsChangeByte.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes4; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DecimalLiteralsChangeByte extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610218806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806322e20d8f146100465780633db3fb0a146100c6578063c2b21da414610122575b600080fd5b6100726004803603602081101561005c57600080fd5b810190808035906020019092919050505061017e565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6100ce6101bb565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b61012a6101cd565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6000808290508060e01b6000806101000a81548163ffffffff021916908360e01c02179055506000809054906101000a900460e01b915050919050565b6000809054906101000a900460e01b81565b60008060009054906101000a900460e01b90509056fea265627a7a72315820a50b619ca4d56b67ed89cb5e6c5d00d15eb652233ffbc5998392a3e04cd2b4c664736f6c63430005110032"; - - public static final String FUNC_B4 = "b4"; - - public static final String FUNC_GETB4 = "getB4"; - - public static final String FUNC_TESTCHANGE = "testChange"; - - protected DecimalLiteralsChangeByte(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DecimalLiteralsChangeByte(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall b4() { - final Function function = new Function(FUNC_B4, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getB4() { - final Function function = new Function(FUNC_GETB4, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall testChange(BigInteger a) { - final Function function = new Function( - FUNC_TESTCHANGE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DecimalLiteralsChangeByte.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DecimalLiteralsChangeByte.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DecimalLiteralsChangeByte load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DecimalLiteralsChangeByte(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DecimalLiteralsChangeByte load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DecimalLiteralsChangeByte(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DelegatecallCallee.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DelegatecallCallee.java deleted file mode 100644 index 80f6cf9f67..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DelegatecallCallee.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DelegatecallCallee extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610150806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c14610046578063371303c0146100645780635a3617561461006e575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b005b610076610112565b6040518082815260200191505060405180910390f35b60005481565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000805490509056fea265627a7a723158205aff654848df9433e9c665b5e77f102911582aa121cf07ef2f03e26ea772ed2d64736f6c63430005110032"; - - public static final String FUNC_GETCALLEEX = "getCalleeX"; - - public static final String FUNC_INC = "inc"; - - public static final String FUNC_X = "x"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected DelegatecallCallee(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DelegatecallCallee(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall getCalleeX() { - final Function function = new Function(FUNC_GETCALLEEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc() { - final Function function = new Function( - FUNC_INC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCallee.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCallee.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DelegatecallCallee load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCallee(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DelegatecallCallee load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCallee(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String seder; - - public BigInteger x; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DelegatecallCallee_050.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DelegatecallCallee_050.java deleted file mode 100644 index 724d574652..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DelegatecallCallee_050.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DelegatecallCallee_050 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610150806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c14610046578063371303c0146100645780635a3617561461006e575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b005b610076610112565b6040518082815260200191505060405180910390f35b60005481565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000805490509056fea265627a7a7231582055f8c0f91c3bdbd35b8cc29a56f505b0af14dafe59943c5a28431fce6f5932b464736f6c63430005110032"; - - public static final String FUNC_GETCALLEEX = "getCalleeX"; - - public static final String FUNC_INC = "inc"; - - public static final String FUNC_X = "x"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected DelegatecallCallee_050(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DelegatecallCallee_050(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall getCalleeX() { - final Function function = new Function(FUNC_GETCALLEEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc() { - final Function function = new Function( - FUNC_INC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCallee_050.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCallee_050.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DelegatecallCallee_050 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCallee_050(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DelegatecallCallee_050 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCallee_050(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String seder; - - public BigInteger x; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DelegatecallCaller.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DelegatecallCaller.java deleted file mode 100644 index 80d288c718..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DelegatecallCaller.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DelegatecallCaller extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610214806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c146100465780637b8ed01814610064578063a7126c2d14610082575b600080fd5b61004e6100c6565b6040518082815260200191505060405180910390f35b61006c6100cc565b6040518082815260200191505060405180910390f35b6100c46004803603602081101561009857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506100d5565b005b60005481565b60008054905090565b8073ffffffffffffffffffffffffffffffffffffffff1660405180807f696e63282900000000000000000000000000000000000000000000000000000081525060050190506040518091039020604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b602083106101745780518252602082019150602081019050602083039250610151565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101d4576040519150601f19603f3d011682016040523d82523d6000602084013e6101d9565b606091505b5050505056fea265627a7a723158204017c14410e70d532c8ec71d535227590c8d3d299915881773fe85ee1fff568064736f6c63430005110032"; - - public static final String FUNC_GETCALLERX = "getCallerX"; - - public static final String FUNC_INC_DELEGATECALL = "inc_delegatecall"; - - public static final String FUNC_X = "x"; - - protected DelegatecallCaller(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DelegatecallCaller(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getCallerX() { - final Function function = new Function(FUNC_GETCALLERX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc_delegatecall(String _contractAddress) { - final Function function = new Function( - FUNC_INC_DELEGATECALL, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(_contractAddress)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCaller.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCaller.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DelegatecallCaller load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCaller(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DelegatecallCaller load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCaller(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DelegatecallCaller_050.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DelegatecallCaller_050.java deleted file mode 100644 index 6e87af41d6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DelegatecallCaller_050.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DelegatecallCaller_050 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610214806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c146100465780637b8ed01814610064578063a7126c2d14610082575b600080fd5b61004e6100c6565b6040518082815260200191505060405180910390f35b61006c6100cc565b6040518082815260200191505060405180910390f35b6100c46004803603602081101561009857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506100d5565b005b60005481565b60008054905090565b8073ffffffffffffffffffffffffffffffffffffffff1660405180807f696e63282900000000000000000000000000000000000000000000000000000081525060050190506040518091039020604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b602083106101745780518252602082019150602081019050602083039250610151565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101d4576040519150601f19603f3d011682016040523d82523d6000602084013e6101d9565b606091505b5050505056fea265627a7a72315820a9ffd0a36eb063bbecb87bc231c190d38301dce382cb7c3fbcfb6f7a8875da1a64736f6c63430005110032"; - - public static final String FUNC_GETCALLERX = "getCallerX"; - - public static final String FUNC_INC_DELEGATECALL = "inc_delegatecall"; - - public static final String FUNC_X = "x"; - - protected DelegatecallCaller_050(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DelegatecallCaller_050(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getCallerX() { - final Function function = new Function(FUNC_GETCALLERX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc_delegatecall(String _contractAddress) { - final Function function = new Function( - FUNC_INC_DELEGATECALL, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(_contractAddress)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCaller_050.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCaller_050.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DelegatecallCaller_050 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCaller_050(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DelegatecallCaller_050 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCaller_050(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DeleteDemo.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DeleteDemo.java deleted file mode 100644 index 1904fb500a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DeleteDemo.java +++ /dev/null @@ -1,244 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DeleteDemo extends Contract { - private static final String BINARY = "608060405260016000806101000a81548160ff0219169083151502179055506001805533600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040518060400160405280600381526020017f313233000000000000000000000000000000000000000000000000000000000081525060039080519060200190620000b092919062000138565b506040518060400160405280600381526020017f616263000000000000000000000000000000000000000000000000000000000081525060049080519060200190620000fe929190620001bf565b506001600560006101000a81548160ff021916908360028111156200011f57fe5b02179055503480156200013157600080fd5b506200026e565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200017b57805160ff1916838001178555620001ac565b82800160010185558215620001ac579182015b82811115620001ab5782518255916020019190600101906200018e565b5b509050620001bb919062000246565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200020257805160ff191683800117855562000233565b8280016001018555821562000233579182015b828111156200023257825182559160200191906001019062000215565b5b50905062000242919062000246565b5090565b6200026b91905b80821115620002675760008160009055506001016200024d565b5090565b90565b610e5d806200027e6000396000f3fe6080604052600436106101095760003560e01c8063767800de11610095578063c15bae8411610064578063c15bae8414610514578063cf08fed5146105a4578063d1bdda41146105dd578063e5aa3d5814610667578063f02997491461069257610109565b8063767800de1461037257806393e1ed83146103c9578063a1a984e514610459578063ab5170b21461048457610109565b806327c58232116100dc57806327c582321461026757806332d057c91461027e5780633ab0698c146102885780634df7e3d0146102b35780635d743b5d146102e257610109565b806305be2c121461010e57806313a5a8af146101a55780631acddabe146101de578063252bd4d314610210575b600080fd5b34801561011a57600080fd5b506101236106c1565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561016957808201518184015260208101905061014e565b50505050905090810190601f1680156101965780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b3480156101b157600080fd5b506101ba610774565b604051808260028111156101ca57fe5b60ff16815260200191505060405180910390f35b3480156101ea57600080fd5b506101f361078b565b604051808381526020018281526020019250505060405180910390f35b34801561021c57600080fd5b506102256107df565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561027357600080fd5b5061027c610809565b005b610286610875565b005b34801561029457600080fd5b5061029d6108ed565b6040518082815260200191505060405180910390f35b3480156102bf57600080fd5b506102c8610966565b604051808215151515815260200191505060405180910390f35b3480156102ee57600080fd5b506102f7610978565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561033757808201518184015260208101905061031c565b50505050905090810190601f1680156103645780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561037e57600080fd5b50610387610a1a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103d557600080fd5b506103de610a40565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561041e578082015181840152602081019050610403565b50505050905090810190601f16801561044b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561046557600080fd5b5061046e610ade565b6040518082815260200191505060405180910390f35b34801561049057600080fd5b50610499610ae8565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104d95780820151818401526020810190506104be565b50505050905090810190601f1680156105065780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561052057600080fd5b50610529610b8a565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561056957808201518184015260208101905061054e565b50505050905090810190601f1680156105965780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156105b057600080fd5b506105b9610c28565b604051808260028111156105c957fe5b60ff16815260200191505060405180910390f35b6105e5610c3b565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561062b578082015181840152602081019050610610565b50505050905090810190601f1680156106585780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b34801561067357600080fd5b5061067c610d57565b6040518082815260200191505060405180910390f35b34801561069e57600080fd5b506106a7610d5d565b604051808215151515815260200191505060405180910390f35b600060606006600001546006600101808054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107655780601f1061073a57610100808354040283529160200191610765565b820191906000526020600020905b81548152906001019060200180831161074857829003601f168201915b50505050509050915091509091565b6000600560009054906101000a900460ff16905090565b600080600860000160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600860010154915091509091565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000806101000a81549060ff0219169055600160009055600260006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600360006108539190610d73565b600460006108619190610dbb565b600560006101000a81549060ff0219169055565b604051806020016040528060c88152506008600082015181600101559050506107d0600860000160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506008600060018201600090555050565b6000606060076040519080825280602002602001820160405280156109215781602001602082028038833980820191505090505b50905060648160008151811061093357fe5b60200260200101818152505060c88160018151811061094e57fe5b60200260200101818152505060609050805191505090565b6000809054906101000a900460ff1681565b606060038054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a105780601f106109e557610100808354040283529160200191610a10565b820191906000526020600020905b8154815290600101906020018083116109f357829003601f168201915b5050505050905090565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60038054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ad65780601f10610aab57610100808354040283529160200191610ad6565b820191906000526020600020905b815481529060010190602001808311610ab957829003601f168201915b505050505081565b6000600154905090565b606060048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b805780601f10610b5557610100808354040283529160200191610b80565b820191906000526020600020905b815481529060010190602001808311610b6357829003601f168201915b5050505050905090565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c205780601f10610bf557610100808354040283529160200191610c20565b820191906000526020600020905b815481529060010190602001808311610c0357829003601f168201915b505050505081565b600560009054906101000a900460ff1681565b600060606040518060400160405280600a81526020016040518060400160405280600381526020017f6162630000000000000000000000000000000000000000000000000000000000815250815250506006600080820160009055600182016000610ca69190610dbb565b50506006600001546006600101808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d485780601f10610d1d57610100808354040283529160200191610d48565b820191906000526020600020905b815481529060010190602001808311610d2b57829003601f168201915b50505050509050915091509091565b60015481565b60008060009054906101000a900460ff16905090565b50805460018160011615610100020316600290046000825580601f10610d995750610db8565b601f016020900490600052602060002090810190610db79190610e03565b5b50565b50805460018160011615610100020316600290046000825580601f10610de15750610e00565b601f016020900490600052602060002090810190610dff9190610e03565b5b50565b610e2591905b80821115610e21576000816000905550600101610e09565b5090565b9056fea265627a7a723158204b9b8fa9305fe0c5a0c81be0ca35c904b54a2884a94581b91065420b6672f8ab64736f6c63430005110032"; - - public static final String FUNC_ADDR = "addr"; - - public static final String FUNC_B = "b"; - - public static final String FUNC_COLOR = "color"; - - public static final String FUNC_DELDYNAMICARRAY = "delDynamicArray"; - - public static final String FUNC_DELMAPPING = "delMapping"; - - public static final String FUNC_DELSTRUCT = "delStruct"; - - public static final String FUNC_DELETEATTR = "deleteAttr"; - - public static final String FUNC_GETADDRESS = "getaddress"; - - public static final String FUNC_GETBOOL = "getbool"; - - public static final String FUNC_GETBYTES = "getbytes"; - - public static final String FUNC_GETDELMAPPING = "getdelMapping"; - - public static final String FUNC_GETENUM = "getenum"; - - public static final String FUNC_GETSTR = "getstr"; - - public static final String FUNC_GETSTRUCT = "getstruct"; - - public static final String FUNC_GETUNIT = "getunit"; - - public static final String FUNC_I = "i"; - - public static final String FUNC_STR = "str"; - - public static final String FUNC_VARBYTE = "varByte"; - - protected DeleteDemo(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DeleteDemo(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall addr() { - final Function function = new Function(FUNC_ADDR, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall b() { - final Function function = new Function(FUNC_B, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall color() { - final Function function = new Function(FUNC_COLOR, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall delDynamicArray() { - final Function function = new Function(FUNC_DELDYNAMICARRAY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall delMapping(BigInteger vonValue) { - final Function function = new Function( - FUNC_DELMAPPING, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall delStruct(BigInteger vonValue) { - final Function function = new Function( - FUNC_DELSTRUCT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall deleteAttr() { - final Function function = new Function( - FUNC_DELETEATTR, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getaddress() { - final Function function = new Function(FUNC_GETADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getbool() { - final Function function = new Function(FUNC_GETBOOL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getbytes() { - final Function function = new Function(FUNC_GETBYTES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall> getdelMapping() { - final Function function = new Function(FUNC_GETDELMAPPING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall getenum() { - final Function function = new Function(FUNC_GETENUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getstr() { - final Function function = new Function(FUNC_GETSTR, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall> getstruct() { - final Function function = new Function(FUNC_GETSTRUCT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue()); - } - }); - } - - public RemoteCall getunit() { - final Function function = new Function(FUNC_GETUNIT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall i() { - final Function function = new Function(FUNC_I, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall str() { - final Function function = new Function(FUNC_STR, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall varByte() { - final Function function = new Function(FUNC_VARBYTE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DeleteDemo.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DeleteDemo.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DeleteDemo load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DeleteDemo(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DeleteDemo load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DeleteDemo(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Destructable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Destructable.java deleted file mode 100644 index 3015aa27a8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Destructable.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Destructable extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101e1806100606000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80632b68b9c614610030575b600080fd5b61003861003a565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146100fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b60004714610172576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f62616c616e6365206973206e6f74207a65726f0000000000000000000000000081525060200191505060405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16fffea265627a7a72315820c7b9956175fa7d77db29e4908a20107c0185fe2abc4645efa1f91088f30e23ae64736f6c63430005110032"; - - public static final String FUNC_DESTRUCT = "destruct"; - - protected Destructable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Destructable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Destructable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Destructable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall destruct() { - final Function function = new Function( - FUNC_DESTRUCT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static Destructable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Destructable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Destructable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Destructable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DisallowSyntax.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DisallowSyntax.java deleted file mode 100644 index 1f6ad1aa2f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DisallowSyntax.java +++ /dev/null @@ -1,115 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DisallowSyntax extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_GETMSGVALUE = "getMsgValue"; - - public static final String FUNC_GETVALUE = "getValue"; - - public static final String FUNC_METHOD = "method"; - - public static final String FUNC_MULVALUE2 = "mulvalue2"; - - public static final String FUNC_TESRETURN = "tesReturn"; - - public static final String FUNC_TESTBLOCK = "testBlock"; - - protected DisallowSyntax(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DisallowSyntax(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getMsgValue(BigInteger vonValue) { - final Function function = new Function( - FUNC_GETMSGVALUE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getValue(String _to, BigInteger _value) { - final Function function = new Function(FUNC_GETVALUE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(_to), - new Uint256(_value)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall method() { - final Function function = new Function( - FUNC_METHOD, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall mulvalue2(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_MULVALUE2, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall tesReturn(BigInteger _id, BigInteger vonValue) { - final Function function = new Function( - FUNC_TESRETURN, - Arrays.asList(new Uint256(_id)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall testBlock(String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TESTBLOCK, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowSyntax.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowSyntax.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DisallowSyntax load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DisallowSyntax(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DisallowSyntax load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DisallowSyntax(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DisallowTypeChange.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DisallowTypeChange.java deleted file mode 100644 index 3fc3c9a934..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DisallowTypeChange.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint32; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DisallowTypeChange extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610165806100206000396000f3fe6080604052600436106100345760003560e01c80630b7f166514610039578063420343a414610070578063a56dfe4a1461007a575b600080fd5b34801561004557600080fd5b5061004e6100b1565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b6100786100ca565b005b34801561008657600080fd5b5061008f61011b565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b60008060009054906101000a900463ffffffff16905090565b60007faaaa000000000000000000000000000000000000000000000000000000000000905060008190508060e01c6000806101000a81548163ffffffff021916908363ffffffff1602179055505050565b6000809054906101000a900463ffffffff168156fea265627a7a72315820e8091c954fc1e9e837a99bdf576c1c9a4aaa7d9ce48af4698c5b39fec85a07ab64736f6c63430005110032"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_TESTCHANGE = "testChange"; - - public static final String FUNC_Y = "y"; - - protected DisallowTypeChange(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DisallowTypeChange(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall testChange(BigInteger vonValue) { - final Function function = new Function( - FUNC_TESTCHANGE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall y() { - final Function function = new Function(FUNC_Y, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowTypeChange.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowTypeChange.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DisallowTypeChange load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DisallowTypeChange(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DisallowTypeChange load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DisallowTypeChange(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DisallowVariable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DisallowVariable.java deleted file mode 100644 index d733dd7413..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DisallowVariable.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DisallowVariable extends Contract { - private static final String BINARY = "60806040526001600255348015601457600080fd5b5060c1806100236000396000f3fe608060405260043610601c5760003560e01c80630f2da424146021575b600080fd5b604a60048036036020811015603557600080fd5b81019080803590602001909291905050506060565b6040518082815260200191505060405180910390f35b60008060006002600391509150600060016000868152602001908152602001600020905050505091905056fea265627a7a72315820bc895278a9d5ea9de0e84a168079fccd7f41071677da16f42b406be51e8b247b64736f6c63430005110032"; - - public static final String FUNC_TESEMPTY = "tesEmpty"; - - protected DisallowVariable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DisallowVariable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall tesEmpty(BigInteger _id, BigInteger vonValue) { - final Function function = new Function( - FUNC_TESEMPTY, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(_id)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowVariable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowVariable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DisallowVariable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DisallowVariable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DisallowVariable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DisallowVariable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DisallowYears.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DisallowYears.java deleted file mode 100644 index 6b1165a1b2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DisallowYears.java +++ /dev/null @@ -1,99 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DisallowYears extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101d3806100206000396000f3fe60806040526004361061004a5760003560e01c80630bb2b6961461004f57806320de797e1461007a57806325b29d84146100bc578063c6d8d657146100e7578063c6f8a3b714610112575b600080fd5b34801561005b57600080fd5b5061006461013d565b6040518082815260200191505060405180910390f35b6100a66004803603602081101561009057600080fd5b8101908080359060200190929190505050610147565b6040518082815260200191505060405180910390f35b3480156100c857600080fd5b506100d1610181565b6040518082815260200191505060405180910390f35b3480156100f357600080fd5b506100fc61018b565b6040518082815260200191505060405180910390f35b34801561011e57600080fd5b50610127610194565b6040518082815260200191505060405180910390f35b6000600254905090565b60006301e13380600081905550680dd2d5fcf3bc9c000060018190555060ff600281905550680dd2d5fcf3bc9c0000600381905550919050565b6000600154905090565b60008054905090565b600060035490509056fea265627a7a72315820c3bfe82d421958ffcb8b417323ec6e6dee5ddf90af061b8e6bb3fe88e892a5d164736f6c63430005110032"; - - public static final String FUNC_GETETHERVALUE = "getEtherValue"; - - public static final String FUNC_GETHEXCOMVALUE = "getHexComValue"; - - public static final String FUNC_GETHEXVALUE = "getHexValue"; - - public static final String FUNC_GETTIME1 = "getTime1"; - - public static final String FUNC_TESTYEAR = "testyear"; - - protected DisallowYears(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DisallowYears(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getEtherValue() { - final Function function = new Function(FUNC_GETETHERVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getHexComValue() { - final Function function = new Function(FUNC_GETHEXCOMVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getHexValue() { - final Function function = new Function(FUNC_GETHEXVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getTime1() { - final Function function = new Function(FUNC_GETTIME1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall testyear(BigInteger a, BigInteger vonValue) { - final Function function = new Function( - FUNC_TESTYEAR, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowYears.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowYears.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DisallowYears load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DisallowYears(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DisallowYears load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DisallowYears(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DoWhileError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DoWhileError.java deleted file mode 100644 index bb6dc96321..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/DoWhileError.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DoWhileError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060c48061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063a8a5cadc14602d575b600080fd5b6033604d565b604051808215151515815260200191505060405180910390f35b60008060566070565b90508060000160009054906101000a900460ff1691505090565b60005b600090508060000160009054906101000a900460ff166073579056fea265627a7a7231582037beb12de968d48a2f14818fc831de38e81be8da556b35ede63100c016c8c9eb64736f6c63430005110032"; - - public static final String FUNC_GETDOWHILECONTROLRES = "getDoWhileControlRes"; - - protected DoWhileError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DoWhileError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDoWhileControlRes() { - final Function function = new Function(FUNC_GETDOWHILECONTROLRES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DoWhileError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DoWhileError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DoWhileError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DoWhileError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DoWhileError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DoWhileError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ERC200513Token.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ERC200513Token.java deleted file mode 100644 index 4476b1d1e9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ERC200513Token.java +++ /dev/null @@ -1,331 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ERC200513Token extends Contract { - private static final String BINARY = "60806040526012600260006101000a81548160ff021916908360ff1602179055503480156200002d57600080fd5b50604051620016b8380380620016b8833981810160405260608110156200005357600080fd5b8101908080519060200190929190805160405193929190846401000000008211156200007e57600080fd5b838201915060208201858111156200009557600080fd5b8251866001820283011164010000000082111715620000b357600080fd5b8083526020830192505050908051906020019080838360005b83811015620000e9578082015181840152602081019050620000cc565b50505050905090810190601f168015620001175780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200013b57600080fd5b838201915060208201858111156200015257600080fd5b82518660018202830111640100000000821117156200017057600080fd5b8083526020830192505050908051906020019080838360005b83811015620001a657808201518184015260208101905062000189565b50505050905090810190601f168015620001d45780820380516001836020036101000a031916815260200191505b50604052505050600260009054906101000a900460ff1660ff16600a0a8302600381905550600354600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160009080519060200190620002579291906200027a565b508060019080519060200190620002709291906200027a565b5050505062000329565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002bd57805160ff1916838001178555620002ee565b82800160010185558215620002ee579182015b82811115620002ed578251825591602001919060010190620002d0565b5b509050620002fd919062000301565b5090565b6200032691905b808211156200032257600081600090555060010162000308565b5090565b90565b61137f80620003396000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806342966c68116100a25780639b96eece116100715780639b96eece146105c6578063a9059cbb1461061e578063c4e41b2214610684578063dd62ed3e146106a2578063f0141d841461071a5761010b565b806342966c681461043f57806370a082311461048557806379cc6790146104dd57806395d89b41146105435761010b565b806317d7de7c116100de57806317d7de7c146102f457806318160ddd1461037757806323b872dd14610395578063313ce5671461041b5761010b565b806306fdde0314610110578063095ea7b3146101935780630af4187d146101f95780631507040114610271575b600080fd5b61011861073e565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561015857808201518184015260208101905061013d565b50505050905090810190601f1680156101855780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101df600480360360408110156101a957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506107dc565b604051808215151515815260200191505060405180910390f35b61025b6004803603604081101561020f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610869565b6040518082815260200191505060405180910390f35b6102796108f0565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102b957808201518184015260208101905061029e565b50505050905090810190601f1680156102e65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102fc610992565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561033c578082015181840152602081019050610321565b50505050905090810190601f1680156103695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61037f610a34565b6040518082815260200191505060405180910390f35b610401600480360360608110156103ab57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a3a565b604051808215151515815260200191505060405180910390f35b610423610b66565b604051808260ff1660ff16815260200191505060405180910390f35b61046b6004803603602081101561045557600080fd5b8101908080359060200190929190505050610b79565b604051808215151515815260200191505060405180910390f35b6104c76004803603602081101561049b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c7b565b6040518082815260200191505060405180910390f35b610529600480360360408110156104f357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c93565b604051808215151515815260200191505060405180910390f35b61054b610ea9565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561058b578082015181840152602081019050610570565b50505050905090810190601f1680156105b85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610608600480360360208110156105dc57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f47565b6040518082815260200191505060405180910390f35b61066a6004803603604081101561063457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f90565b604051808215151515815260200191505060405180910390f35b61068c610fa5565b6040518082815260200191505060405180910390f35b610704600480360360408110156106b857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fb2565b6040518082815260200191505060405180910390f35b610722610fd7565b604051808260ff1660ff16815260200191505060405180910390f35b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107d45780601f106107a9576101008083540402835291602001916107d4565b820191906000526020600020905b8154815290600101906020018083116107b757829003601f168201915b505050505081565b600081600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b606060018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109885780601f1061095d57610100808354040283529160200191610988565b820191906000526020600020905b81548152906001019060200180831161096b57829003601f168201915b5050505050905090565b606060008054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a2a5780601f106109ff57610100808354040283529160200191610a2a565b820191906000526020600020905b815481529060010190602001808311610a0d57829003601f168201915b5050505050905090565b60035481565b6000600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115610ac557600080fd5b81600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550610b5a848484610fee565b50600190509392505050565b600260009054906101000a900460ff1681565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610bc757600080fd5b81600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a260019050919050565b60046020528060005260406000206000915090505481565b600081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610ce157600080fd5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115610d6a57600080fd5b81600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a26001905092915050565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f3f5780601f10610f1457610100808354040283529160200191610f3f565b820191906000526020600020905b815481529060010190602001808311610f2257829003601f168201915b505050505081565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000610f9d338484610fee565b905092915050565b6000600354905080905090565b6005602052816000526040600020602052806000526040600020600091509150505481565b6000600260009054906101000a900460ff16905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415806110585750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b61106157600080fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156110ad57600080fd5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054011161113957600080fd5b6000600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401905082600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555082600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a380600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540114915050939250505056fea265627a7a72315820bec13ad0530013d274cc54a5602c2b9c500fc4bb70b4e39f47ed90732f090a4364736f6c63430005110032"; - - public static final String FUNC_ALLOWANCE = "allowance"; - - public static final String FUNC_APPROVE = "approve"; - - public static final String FUNC_BALANCEOF = "balanceOf"; - - public static final String FUNC_BURN = "burn"; - - public static final String FUNC_BURNFROM = "burnFrom"; - - public static final String FUNC_DECIMALS = "decimals"; - - public static final String FUNC_GETALLOWANCE = "getAllowance"; - - public static final String FUNC_GETBALANCEOF = "getBalanceOf"; - - public static final String FUNC_GETDECIMALS = "getDecimals"; - - public static final String FUNC_GETNAME = "getName"; - - public static final String FUNC_GETSYMBOL = "getSymbol"; - - public static final String FUNC_GETTOTALSUPPLY = "getTotalSupply"; - - public static final String FUNC_NAME = "name"; - - public static final String FUNC_SYMBOL = "symbol"; - - public static final String FUNC_TOTALSUPPLY = "totalSupply"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_TRANSFERFROM = "transferFrom"; - - public static final Event BURN_EVENT = new Event("Burn", - Arrays.>asList(new TypeReference

(true) {}, new TypeReference() {})); - ; - - public static final Event TRANSFER_EVENT = new Event("Transfer", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - protected ERC200513Token(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ERC200513Token(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger initialSupply, String tokenName, String tokenSymbol) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(initialSupply), - new Utf8String(tokenName), - new Utf8String(tokenSymbol))); - return deployRemoteCall(ERC200513Token.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger initialSupply, String tokenName, String tokenSymbol) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(initialSupply), - new Utf8String(tokenName), - new Utf8String(tokenSymbol))); - return deployRemoteCall(ERC200513Token.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public List getBurnEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(BURN_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - BurnEventResponse typedResponse = new BurnEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable burnEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public BurnEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(BURN_EVENT, log); - BurnEventResponse typedResponse = new BurnEventResponse(); - typedResponse.log = log; - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable burnEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(BURN_EVENT)); - return burnEventObservable(filter); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public RemoteCall allowance(String param0, String param1) { - final Function function = new Function(FUNC_ALLOWANCE, - Arrays.asList(new Address(param0), - new Address(param1)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall approve(String _spender, BigInteger _value) { - final Function function = new Function( - FUNC_APPROVE, - Arrays.asList(new Address(_spender), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall balanceOf(String param0) { - final Function function = new Function(FUNC_BALANCEOF, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall burn(BigInteger _value) { - final Function function = new Function( - FUNC_BURN, - Arrays.asList(new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall burnFrom(String _from, BigInteger _value) { - final Function function = new Function( - FUNC_BURNFROM, - Arrays.asList(new Address(_from), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall decimals() { - final Function function = new Function(FUNC_DECIMALS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getAllowance(String _owner, String _spender) { - final Function function = new Function(FUNC_GETALLOWANCE, - Arrays.asList(new Address(_owner), - new Address(_spender)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBalanceOf(String _owner) { - final Function function = new Function(FUNC_GETBALANCEOF, - Arrays.asList(new Address(_owner)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDecimals() { - final Function function = new Function(FUNC_GETDECIMALS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getName() { - final Function function = new Function(FUNC_GETNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getSymbol() { - final Function function = new Function(FUNC_GETSYMBOL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getTotalSupply() { - final Function function = new Function(FUNC_GETTOTALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall symbol() { - final Function function = new Function(FUNC_SYMBOL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall totalSupply() { - final Function function = new Function(FUNC_TOTALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transfer(String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall transferFrom(String _from, String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFERFROM, - Arrays.asList(new Address(_from), - new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ERC200513Token load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ERC200513Token(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ERC200513Token load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ERC200513Token(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class BurnEventResponse { - public Log log; - - public String from; - - public BigInteger value; - } - - public static class TransferEventResponse { - public Log log; - - public String from; - - public String to; - - public BigInteger value; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/EmitTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/EmitTest.java deleted file mode 100644 index 1a2613fead..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/EmitTest.java +++ /dev/null @@ -1,118 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class EmitTest extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b5060cb8061001e6000396000f3fe608060405260043610601c5760003560e01c80634f9d719e146021575b600080fd5b60276029565b005b7fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e73334604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a156fea265627a7a723158208e257f18c446d5d427f7c1fd9a9f56c604c41106ea4a35fc714acca0ccd2165564736f6c63430005110032"; - - public static final String FUNC_TESTEVENT = "testEvent"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected EmitTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected EmitTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.bidder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.amount = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.bidder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.amount = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall testEvent(BigInteger vonValue) { - final Function function = new Function( - FUNC_TESTEVENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EmitTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EmitTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static EmitTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new EmitTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static EmitTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new EmitTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String bidder; - - public BigInteger amount; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ErrorParamConstructor.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ErrorParamConstructor.java deleted file mode 100644 index c75d38e0d6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ErrorParamConstructor.java +++ /dev/null @@ -1,102 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ErrorParamConstructor extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516102253803806102258339818101604052602081101561003357600080fd5b8101908080519060200190929190505050600a806000819055505080600181905550506101c0806100656000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80630dbe671f1461005c5780634df7e3d01461007a57806382ab890a14610098578063a1c519151461010d578063d46300fd1461012b575b600080fd5b610064610149565b6040518082815260200191505060405180910390f35b61008261014f565b6040518082815260200191505060405180910390f35b6100c4600480360360208110156100ae57600080fd5b8101908080359060200190929190505050610155565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b610115610178565b6040518082815260200191505060405180910390f35b610133610182565b6040518082815260200191505060405180910390f35b60005481565b60015481565b600080826001600082825401925050819055503360015481915091509150915091565b6000600154905090565b6000805490509056fea265627a7a72315820acedb5d25ba9a12c31dbd9491fc159f6873d61919ff3688ee30ea103367a675864736f6c63430005110032"; - - public static final String FUNC_A = "a"; - - public static final String FUNC_B = "b"; - - public static final String FUNC_GETA = "getA"; - - public static final String FUNC_GETB = "getB"; - - public static final String FUNC_UPDATE = "update"; - - protected ErrorParamConstructor(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ErrorParamConstructor(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _b) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_b))); - return deployRemoteCall(ErrorParamConstructor.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _b) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_b))); - return deployRemoteCall(ErrorParamConstructor.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall b() { - final Function function = new Function(FUNC_B, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getA() { - final Function function = new Function(FUNC_GETA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getB() { - final Function function = new Function(FUNC_GETB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ErrorParamConstructor load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ErrorParamConstructor(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ErrorParamConstructor load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ErrorParamConstructor(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ErrorParamConstructorBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ErrorParamConstructorBase.java deleted file mode 100644 index fcd48fb71f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ErrorParamConstructorBase.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ErrorParamConstructorBase extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516100de3803806100de8339818101604052602081101561003357600080fd5b8101908080519060200190929190505050806000819055505060848061005a6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80630dbe671f14602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000548156fea265627a7a72315820309c59d9f0271d6a524cd38619d82760adf17931c5f4565c6ccc6bd82a6487e664736f6c63430005110032"; - - public static final String FUNC_A = "a"; - - protected ErrorParamConstructorBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ErrorParamConstructorBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _a) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_a))); - return deployRemoteCall(ErrorParamConstructorBase.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _a) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_a))); - return deployRemoteCall(ErrorParamConstructorBase.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static ErrorParamConstructorBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ErrorParamConstructorBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ErrorParamConstructorBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ErrorParamConstructorBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/EventCallContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/EventCallContract.java deleted file mode 100644 index b2c7462810..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/EventCallContract.java +++ /dev/null @@ -1,323 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class EventCallContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610372806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806336aacafa1461005c5780637b0cb839146100665780639d6d4cde14610084578063b53c846b146100a2578063b7301a1f146100ac575b600080fd5b6100646100ca565b005b61006e61020d565b6040518082815260200191505060405180910390f35b61008c61027b565b6040518082815260200191505060405180910390f35b6100aa61029c565b005b6100b46102e3565b6040518082815260200191505060405180910390f35b7f9f252e5d94c6346e0073dfdaa81c6bba97bc07b05f8378efc62d77d157e1b0116000604051808215151515815260200191505060405180910390a17f9f252e5d94c6346e0073dfdaa81c6bba97bc07b05f8378efc62d77d157e1b0116001604051808215151515815260200191505060405180910390a17ffc3a67c9f0b5967ae4041ed898b05ec1fa49d2a3c22336247201d71be6f9712033604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1600c6040518082815260200191505060405180910390a03373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c600c6040518082815260200191505060405180910390a2565b60007ffc3a67c9f0b5967ae4041ed898b05ec1fa49d2a3c22336247201d71be6f9712033604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a160018101905090565b6000600181019050806040518082815260200191505060405180910390a090565b600c6040518082815260200191505060405180910390a0600d6040518082815260200191505060405180910390a0600e6040518082815260200191505060405180910390a0565b60003373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c600c6040518082815260200191505060405180910390a26001810190509056fea265627a7a72315820e9c89a5e7533fa382ce2b0181aa3e71b3e256cccbe3501d01db5d3d2825c00f864736f6c63430005110032"; - - public static final String FUNC_ANONYMOUSEVENT = "anonymousEvent"; - - public static final String FUNC_EMITEVENT = "emitEvent"; - - public static final String FUNC_INDEXEDEVENT = "indexedEvent"; - - public static final String FUNC_TESTBOOL = "testBool"; - - public static final String FUNC_TESTMULTIANONYMOUS = "testMultiAnonymous"; - - public static final Event ANONYMOUS_EVENT = new Event("Anonymous", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event ANONYMOUS2_EVENT = new Event("Anonymous2", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event BOOLEVENT_EVENT = new Event("BoolEvent", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event DEPOSIT_EVENT = new Event("Deposit", - Arrays.>asList(new TypeReference

(true) {}, new TypeReference() {})); - ; - - public static final Event INCREMENT_EVENT = new Event("Increment", - Arrays.>asList(new TypeReference
() {})); - ; - - protected EventCallContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected EventCallContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getAnonymousEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ANONYMOUS_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - AnonymousEventResponse typedResponse = new AnonymousEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable anonymousEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public AnonymousEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ANONYMOUS_EVENT, log); - AnonymousEventResponse typedResponse = new AnonymousEventResponse(); - typedResponse.log = log; - typedResponse._id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable anonymousEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ANONYMOUS_EVENT)); - return anonymousEventObservable(filter); - } - - public List getAnonymous2Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ANONYMOUS2_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - Anonymous2EventResponse typedResponse = new Anonymous2EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable anonymous2EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Anonymous2EventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ANONYMOUS2_EVENT, log); - Anonymous2EventResponse typedResponse = new Anonymous2EventResponse(); - typedResponse.log = log; - typedResponse._id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable anonymous2EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ANONYMOUS2_EVENT)); - return anonymous2EventObservable(filter); - } - - public List getBoolEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(BOOLEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - BoolEventEventResponse typedResponse = new BoolEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable boolEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public BoolEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(BOOLEVENT_EVENT, log); - BoolEventEventResponse typedResponse = new BoolEventEventResponse(); - typedResponse.log = log; - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable boolEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(BOOLEVENT_EVENT)); - return boolEventEventObservable(filter); - } - - public List getDepositEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(DEPOSIT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - DepositEventResponse typedResponse = new DepositEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable depositEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public DepositEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(DEPOSIT_EVENT, log); - DepositEventResponse typedResponse = new DepositEventResponse(); - typedResponse.log = log; - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable depositEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(DEPOSIT_EVENT)); - return depositEventObservable(filter); - } - - public List getIncrementEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(INCREMENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - IncrementEventResponse typedResponse = new IncrementEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.who = (String) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable incrementEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public IncrementEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(INCREMENT_EVENT, log); - IncrementEventResponse typedResponse = new IncrementEventResponse(); - typedResponse.log = log; - typedResponse.who = (String) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable incrementEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(INCREMENT_EVENT)); - return incrementEventObservable(filter); - } - - public RemoteCall anonymousEvent() { - final Function function = new Function( - FUNC_ANONYMOUSEVENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall emitEvent() { - final Function function = new Function( - FUNC_EMITEVENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall indexedEvent() { - final Function function = new Function( - FUNC_INDEXEDEVENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testBool() { - final Function function = new Function( - FUNC_TESTBOOL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testMultiAnonymous() { - final Function function = new Function( - FUNC_TESTMULTIANONYMOUS, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventCallContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventCallContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static EventCallContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new EventCallContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static EventCallContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new EventCallContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class AnonymousEventResponse { - public Log log; - - public BigInteger _id; - } - - public static class Anonymous2EventResponse { - public Log log; - - public BigInteger _id; - } - - public static class BoolEventEventResponse { - public Log log; - - public Boolean result; - } - - public static class DepositEventResponse { - public Log log; - - public String _from; - - public BigInteger _value; - } - - public static class IncrementEventResponse { - public Log log; - - public String who; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/EventIndexedContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/EventIndexedContract.java deleted file mode 100644 index 44d7e133cd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/EventIndexedContract.java +++ /dev/null @@ -1,444 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.abi.solidity.datatypes.generated.StaticArray2; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class EventIndexedContract extends Contract { - private static final String BINARY = "60806040526040518060a00160405280600060ff168152602001600160ff168152602001600260ff168152602001600360ff168152602001600460ff16815250600090600561004f929190610177565b506040518060c001604052806040518060400160405280600060ff168152602001600060ff1681525081526020016040518060400160405280600060ff168152602001600160ff1681525081526020016040518060400160405280600060ff168152602001600260ff1681525081526020016040518060400160405280600060ff168152602001600360ff1681525081526020016040518060400160405280600060ff168152602001600460ff1681525081526020016040518060400160405280600060ff168152602001600560ff1681525081525060019060066101359291906101c9565b506040518060800160405280605881526020016107766058913960029080519060200190610164929190610227565b5034801561017157600080fd5b5061034b565b8280548282559060005260206000209081019282156101b8579160200282015b828111156101b7578251829060ff16905591602001919060010190610197565b5b5090506101c591906102a7565b5090565b828054828255906000526020600020906002028101928215610216579160200282015b82811115610215578251829060026102059291906102cc565b50916020019190600201906101ec565b5b5090506102239190610311565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061026857805160ff1916838001178555610296565b82800160010185558215610296579182015b8281111561029557825182559160200191906001019061027a565b5b5090506102a391906102a7565b5090565b6102c991905b808211156102c55760008160009055506001016102ad565b5090565b90565b8260028101928215610300579160200282015b828111156102ff578251829060ff169055916020019190600101906102df565b5b50905061030d91906102a7565b5090565b61033a91905b80821115610336576000818161032d919061033d565b50600201610317565b5090565b90565b506000815560010160009055565b61041c8061035a6000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c8063bb0a5bd91161005b578063bb0a5bd9146100a0578063bbd847af146100aa578063db06ee8d146100b4578063fcf3fbb8146100e25761007d565b80633ac559931461008257806343ae41d81461008c578063b05dfcf814610096575b600080fd5b61008a6100ec565b005b610094610184565b005b61009e6101bf565b005b6100a861022e565b005b6100b2610243565b005b6100e0600480360360208110156100ca57600080fd5b81019080803590602001909291905050506102d1565b005b6100ea610301565b005b600260405180828054600181600116156101000203166002900480156101495780601f10610127576101008083540402835291820191610149565b820191906000526020600020905b815481529060010190602001808311610135575b505091505060405180910390207f617cf8a4400dd7963ed519ebe655a16e8da1282bb8fea36a21f634af912f54ab60405160405180910390a2565b6000600381111561019157fe5b7fde7a62815e0b38238b6211179d7d98017a99227a90823b0f44227e81dd3ad9c260405160405180910390a2565b60006040518082805480156101f357602002820191906000526020600020905b8154815260200190600101908083116101df575b505091505060405180910390207f38a323fa24260bbb8b86f61cd1d8c1900024088af6d08eda9e2d793da33c1b5860405160405180910390a2565b600460036002600160405160405180910390a4565b600160405180828054801561029657602002820191906000526020600020905b8160028015610287576020028201915b815481526020019060010190808311610273575b50509060020190808311610263575b505091505060405180910390207f406715adbc90cbc793dcd5707190ad1390229b2a75cf5b5ca228b518ae52de9a60405160405180910390a2565b807f834f28319998410e0230b46f29e58f7a86d825bc8505a917dae170f66d70bcdd60405160405180910390a250565b6002604051808280546001816001161561010002031660029004801561035e5780601f1061033c57610100808354040283529182019161035e565b820191906000526020600020905b81548152906001019060200180831161034a575b505091505060405180910390206000600381111561037857fe5b60006040518082805480156103ac57602002820191906000526020600020905b815481526020019060010190808311610398575b505091505060405180910390207f36b0026af468b8a488c2bd2a23a731b236d139a5211611fb763844bcb87f1abb60405160405180910390a456fea265627a7a72315820919e2a46741bc518ee9c8ddef8976b3a460c3863b0d04e63ff5c3f2f52e135da64736f6c6343000511003231323334353637383930303937383635343332313132333435363738393030393837363534333231313233343536373839303039373634333534363636363633323432343434343434343434343735383331353436383536"; - - public static final String FUNC_TESTANONYMOUSINDEXED = "testAnonymousIndexed"; - - public static final String FUNC_TESTCOMPLEX = "testComplex"; - - public static final String FUNC_TESTENUM = "testEnum"; - - public static final String FUNC_TESTMINUS = "testMinus"; - - public static final String FUNC_TESTONEDIMENSIONALARRAY = "testOneDimensionalArray"; - - public static final String FUNC_TESTSTR = "testStr"; - - public static final String FUNC_TESTTWODIMENSIONALARRAY = "testTwoDimensionalArray"; - - public static final Event ANONYMOUSINDEXEDNUM_EVENT = new Event("AnonymousIndexedNum", - Arrays.>asList(new TypeReference(true) {}, new TypeReference(true) {}, new TypeReference(true) {}, new TypeReference(true) {})); - ; - - public static final Event COMPLEXINDEXEDEVENT_EVENT = new Event("ComplexIndexedEvent", - Arrays.>asList(new TypeReference>(true) {}, new TypeReference(true) {}, new TypeReference(true) {})); - ; - - public static final Event ENUMEVENT_EVENT = new Event("EnumEvent", - Arrays.>asList(new TypeReference(true) {})); - ; - - public static final Event MINUSEVENT_EVENT = new Event("MinusEvent", - Arrays.>asList(new TypeReference(true) {})); - ; - - public static final Event ONEDIMENSIONALARRAYEVENT_EVENT = new Event("OneDimensionalArrayEvent", - Arrays.>asList(new TypeReference>(true) {})); - ; - - public static final Event STRINGEVENT_EVENT = new Event("StringEvent", - Arrays.>asList(new TypeReference(true) {})); - ; - - public static final Event TWODIMENSIONALARRAYEVENT_EVENT = new Event("TwoDimensionalArrayEvent", - Arrays.>asList(new TypeReference>>(true) {})); - ; - - protected EventIndexedContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected EventIndexedContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getAnonymousIndexedNumEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ANONYMOUSINDEXEDNUM_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - AnonymousIndexedNumEventResponse typedResponse = new AnonymousIndexedNumEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.u1 = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.u2 = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.u3 = (BigInteger) eventValues.getIndexedValues().get(2).getValue(); - typedResponse.u4 = (BigInteger) eventValues.getIndexedValues().get(3).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable anonymousIndexedNumEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public AnonymousIndexedNumEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ANONYMOUSINDEXEDNUM_EVENT, log); - AnonymousIndexedNumEventResponse typedResponse = new AnonymousIndexedNumEventResponse(); - typedResponse.log = log; - typedResponse.u1 = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.u2 = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.u3 = (BigInteger) eventValues.getIndexedValues().get(2).getValue(); - typedResponse.u4 = (BigInteger) eventValues.getIndexedValues().get(3).getValue(); - return typedResponse; - } - }); - } - - public Observable anonymousIndexedNumEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ANONYMOUSINDEXEDNUM_EVENT)); - return anonymousIndexedNumEventObservable(filter); - } - - public List getComplexIndexedEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(COMPLEXINDEXEDEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ComplexIndexedEventEventResponse typedResponse = new ComplexIndexedEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.choice = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.str = (byte[]) eventValues.getIndexedValues().get(2).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable complexIndexedEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ComplexIndexedEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(COMPLEXINDEXEDEVENT_EVENT, log); - ComplexIndexedEventEventResponse typedResponse = new ComplexIndexedEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.choice = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.str = (byte[]) eventValues.getIndexedValues().get(2).getValue(); - return typedResponse; - } - }); - } - - public Observable complexIndexedEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(COMPLEXINDEXEDEVENT_EVENT)); - return complexIndexedEventEventObservable(filter); - } - - public List getEnumEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ENUMEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EnumEventEventResponse typedResponse = new EnumEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.choices = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable enumEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EnumEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ENUMEVENT_EVENT, log); - EnumEventEventResponse typedResponse = new EnumEventEventResponse(); - typedResponse.log = log; - typedResponse.choices = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable enumEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ENUMEVENT_EVENT)); - return enumEventEventObservable(filter); - } - - public List getMinusEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(MINUSEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - MinusEventEventResponse typedResponse = new MinusEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.minus = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable minusEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public MinusEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(MINUSEVENT_EVENT, log); - MinusEventEventResponse typedResponse = new MinusEventEventResponse(); - typedResponse.log = log; - typedResponse.minus = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable minusEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(MINUSEVENT_EVENT)); - return minusEventEventObservable(filter); - } - - public List getOneDimensionalArrayEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ONEDIMENSIONALARRAYEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - OneDimensionalArrayEventEventResponse typedResponse = new OneDimensionalArrayEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable oneDimensionalArrayEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public OneDimensionalArrayEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ONEDIMENSIONALARRAYEVENT_EVENT, log); - OneDimensionalArrayEventEventResponse typedResponse = new OneDimensionalArrayEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable oneDimensionalArrayEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ONEDIMENSIONALARRAYEVENT_EVENT)); - return oneDimensionalArrayEventEventObservable(filter); - } - - public List getStringEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(STRINGEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - StringEventEventResponse typedResponse = new StringEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.str = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable stringEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public StringEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(STRINGEVENT_EVENT, log); - StringEventEventResponse typedResponse = new StringEventEventResponse(); - typedResponse.log = log; - typedResponse.str = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable stringEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(STRINGEVENT_EVENT)); - return stringEventEventObservable(filter); - } - - public List getTwoDimensionalArrayEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TWODIMENSIONALARRAYEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TwoDimensionalArrayEventEventResponse typedResponse = new TwoDimensionalArrayEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable twoDimensionalArrayEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TwoDimensionalArrayEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TWODIMENSIONALARRAYEVENT_EVENT, log); - TwoDimensionalArrayEventEventResponse typedResponse = new TwoDimensionalArrayEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable twoDimensionalArrayEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TWODIMENSIONALARRAYEVENT_EVENT)); - return twoDimensionalArrayEventEventObservable(filter); - } - - public RemoteCall testAnonymousIndexed() { - final Function function = new Function( - FUNC_TESTANONYMOUSINDEXED, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testComplex() { - final Function function = new Function( - FUNC_TESTCOMPLEX, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testEnum() { - final Function function = new Function( - FUNC_TESTENUM, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testMinus(BigInteger value) { - final Function function = new Function( - FUNC_TESTMINUS, - Arrays.asList(new Int256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testOneDimensionalArray() { - final Function function = new Function( - FUNC_TESTONEDIMENSIONALARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testStr() { - final Function function = new Function( - FUNC_TESTSTR, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testTwoDimensionalArray() { - final Function function = new Function( - FUNC_TESTTWODIMENSIONALARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventIndexedContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventIndexedContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static EventIndexedContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new EventIndexedContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static EventIndexedContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new EventIndexedContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class AnonymousIndexedNumEventResponse { - public Log log; - - public BigInteger u1; - - public BigInteger u2; - - public BigInteger u3; - - public BigInteger u4; - } - - public static class ComplexIndexedEventEventResponse { - public Log log; - - public byte[] array; - - public BigInteger choice; - - public byte[] str; - } - - public static class EnumEventEventResponse { - public Log log; - - public BigInteger choices; - } - - public static class MinusEventEventResponse { - public Log log; - - public BigInteger minus; - } - - public static class OneDimensionalArrayEventEventResponse { - public Log log; - - public byte[] array; - } - - public static class StringEventEventResponse { - public Log log; - - public byte[] str; - } - - public static class TwoDimensionalArrayEventEventResponse { - public Log log; - - public byte[] array; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/EventTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/EventTypeContract.java deleted file mode 100644 index 9cea071f17..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/EventTypeContract.java +++ /dev/null @@ -1,270 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.StaticArray2; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class EventTypeContract extends Contract { - private static final String BINARY = "60806040526040518060a00160405280600060ff168152602001600160ff168152602001600260ff168152602001600360ff168152602001600460ff16815250600090600561004f929190610177565b506040518060c001604052806040518060400160405280600060ff168152602001600060ff1681525081526020016040518060400160405280600060ff168152602001600160ff1681525081526020016040518060400160405280600060ff168152602001600260ff1681525081526020016040518060400160405280600060ff168152602001600360ff1681525081526020016040518060400160405280600060ff168152602001600460ff1681525081526020016040518060400160405280600060ff168152602001600560ff1681525081525060019060066101359291906101c9565b5060405180608001604052806058815260200161061b6058913960029080519060200190610164929190610227565b5034801561017157600080fd5b5061034b565b8280548282559060005260206000209081019282156101b8579160200282015b828111156101b7578251829060ff16905591602001919060010190610197565b5b5090506101c591906102a7565b5090565b828054828255906000526020600020906002028101928215610216579160200282015b82811115610215578251829060026102059291906102cc565b50916020019190600201906101ec565b5b5090506102239190610311565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061026857805160ff1916838001178555610296565b82800160010185558215610296579182015b8281111561029557825182559160200191906001019061027a565b5b5090506102a391906102a7565b5090565b6102c991905b808211156102c55760008160009055506001016102ad565b5090565b90565b8260028101928215610300579160200282015b828111156102ff578251829060ff169055916020019190600101906102df565b5b50905061030d91906102a7565b5090565b61033a91905b80821115610336576000818161032d919061033d565b50600201610317565b5090565b90565b506000815560010160009055565b6102c18061035a6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80633ac559931461005157806343ae41d81461005b578063b05dfcf814610065578063bbd847af1461006f575b600080fd5b610059610079565b005b610063610135565b005b61006d61017d565b005b6100776101f5565b005b7f617cf8a4400dd7963ed519ebe655a16e8da1282bb8fea36a21f634af912f54ab600260405180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156101255780601f106100fa57610100808354040283529160200191610125565b820191906000526020600020905b81548152906001019060200180831161010857829003601f168201915b50509250505060405180910390a1565b7fde7a62815e0b38238b6211179d7d98017a99227a90823b0f44227e81dd3ad9c260006040518082600381111561016857fe5b60ff16815260200191505060405180910390a1565b7f38a323fa24260bbb8b86f61cd1d8c1900024088af6d08eda9e2d793da33c1b586000604051808060200182810382528381815481526020019150805480156101e557602002820191906000526020600020905b8154815260200190600101908083116101d1575b50509250505060405180910390a1565b7f406715adbc90cbc793dcd5707190ad1390229b2a75cf5b5ca228b518ae52de9a60016040518080602001828103825283818154815260200191508054801561027c57602002820191906000526020600020905b816002801561026d576020028201915b815481526020019060010190808311610259575b50509060020190808311610249575b50509250505060405180910390a156fea265627a7a72315820aaf668494ad3b37b4c9742bee7e3c1c272da5700c05293bbe23ed173b44337d464736f6c6343000511003231323334353637383930303937383635343332313132333435363738393030393837363534333231313233343536373839303039373634333534363636363633323432343434343434343434343735383331353436383536"; - - public static final String FUNC_TESTENUM = "testEnum"; - - public static final String FUNC_TESTONEDIMENSIONALARRAY = "testOneDimensionalArray"; - - public static final String FUNC_TESTSTR = "testStr"; - - public static final String FUNC_TESTTWODIMENSIONALARRAY = "testTwoDimensionalArray"; - - public static final Event ENUMEVENT_EVENT = new Event("EnumEvent", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event ONEDIMENSIONALARRAYEVENT_EVENT = new Event("OneDimensionalArrayEvent", - Arrays.>asList(new TypeReference>() {})); - ; - - public static final Event STRINGEVENT_EVENT = new Event("StringEvent", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event TWODIMENSIONALARRAYEVENT_EVENT = new Event("TwoDimensionalArrayEvent", - Arrays.>asList(new TypeReference>>() {})); - ; - - protected EventTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected EventTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEnumEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ENUMEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EnumEventEventResponse typedResponse = new EnumEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.choices = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable enumEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EnumEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ENUMEVENT_EVENT, log); - EnumEventEventResponse typedResponse = new EnumEventEventResponse(); - typedResponse.log = log; - typedResponse.choices = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable enumEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ENUMEVENT_EVENT)); - return enumEventEventObservable(filter); - } - - public List getOneDimensionalArrayEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ONEDIMENSIONALARRAYEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - OneDimensionalArrayEventEventResponse typedResponse = new OneDimensionalArrayEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (List) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable oneDimensionalArrayEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public OneDimensionalArrayEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ONEDIMENSIONALARRAYEVENT_EVENT, log); - OneDimensionalArrayEventEventResponse typedResponse = new OneDimensionalArrayEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (List) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable oneDimensionalArrayEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ONEDIMENSIONALARRAYEVENT_EVENT)); - return oneDimensionalArrayEventEventObservable(filter); - } - - public List getStringEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(STRINGEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - StringEventEventResponse typedResponse = new StringEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.str = (String) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable stringEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public StringEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(STRINGEVENT_EVENT, log); - StringEventEventResponse typedResponse = new StringEventEventResponse(); - typedResponse.log = log; - typedResponse.str = (String) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable stringEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(STRINGEVENT_EVENT)); - return stringEventEventObservable(filter); - } - - public List getTwoDimensionalArrayEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TWODIMENSIONALARRAYEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TwoDimensionalArrayEventEventResponse typedResponse = new TwoDimensionalArrayEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (List>) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable twoDimensionalArrayEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TwoDimensionalArrayEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TWODIMENSIONALARRAYEVENT_EVENT, log); - TwoDimensionalArrayEventEventResponse typedResponse = new TwoDimensionalArrayEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (List>) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable twoDimensionalArrayEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TWODIMENSIONALARRAYEVENT_EVENT)); - return twoDimensionalArrayEventEventObservable(filter); - } - - public RemoteCall testEnum() { - final Function function = new Function( - FUNC_TESTENUM, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testOneDimensionalArray() { - final Function function = new Function( - FUNC_TESTONEDIMENSIONALARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testStr() { - final Function function = new Function( - FUNC_TESTSTR, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testTwoDimensionalArray() { - final Function function = new Function( - FUNC_TESTTWODIMENSIONALARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventTypeContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventTypeContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static EventTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new EventTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static EventTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new EventTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EnumEventEventResponse { - public Log log; - - public BigInteger choices; - } - - public static class OneDimensionalArrayEventEventResponse { - public Log log; - - public List array; - } - - public static class StringEventEventResponse { - public Log log; - - public String str; - } - - public static class TwoDimensionalArrayEventEventResponse { - public Log log; - - public List> array; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/External.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/External.java deleted file mode 100644 index dcc628e522..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/External.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class External extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b5060958061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063569c5f6d14602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b60008060019050600060029050808201925050509056fea265627a7a72315820f16e48d2c9b34cfec444d85b6d5c95b23f3145f7136f1847f8623af72cb7c7c664736f6c63430005110032"; - - public static final String FUNC_GETSUM = "getSum"; - - protected External(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected External(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getSum() { - final Function function = new Function(FUNC_GETSUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(External.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(External.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static External load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new External(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static External load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new External(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/FallBack.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/FallBack.java deleted file mode 100644 index 941964e6df..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/FallBack.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class FallBack extends Contract { - private static final String BINARY = "6080604052600160005534801561001557600080fd5b50610126806100256000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063d1f1548f14603c578063d46300fd146044575b6064600081905550005b60426060565b005b604a60e8565b6040518082815260200191505060405180910390f35b3073ffffffffffffffffffffffffffffffffffffffff1660405180807f66756e6374696f6e4e6f744578697374282900000000000000000000000000008152506012019050600060405180830381855af49150503d806000811460de576040519150601f19603f3d011682016040523d82523d6000602084013e60e3565b606091505b505050565b6000805490509056fea265627a7a7231582042bdcee5a72dc14721f44412d52fcbb5996ebf46baf1222b46eb22dd10674ca264736f6c63430005110032"; - - public static final String FUNC_CALLFUNCTIONNOTEXIST = "CallFunctionNotExist"; - - public static final String FUNC_GETA = "getA"; - - protected FallBack(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected FallBack(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall CallFunctionNotExist() { - final Function function = new Function( - FUNC_CALLFUNCTIONNOTEXIST, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getA() { - final Function function = new Function(FUNC_GETA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FallBack.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FallBack.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static FallBack load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new FallBack(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static FallBack load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new FallBack(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/FallbackDeclaraction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/FallbackDeclaraction.java deleted file mode 100644 index f45bb13920..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/FallbackDeclaraction.java +++ /dev/null @@ -1,187 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class FallbackDeclaraction extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610286806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80630dbe671f146100ba57806342a78883146100d857806366b0bae014610106578063d46300fd14610124575b606f6000819055507f17c1956f6e992470102c5fc953bf560fda31fabee8737cf8e77bdde00eb5698d60003660405180806020018281038252848482818152602001925080828437600081840152601f19601f820116905080830192505050935050505060405180910390a1005b6100c2610142565b6040518082815260200191505060405180910390f35b610104600480360360208110156100ee57600080fd5b8101908080359060200190929190505050610148565b005b61010e6101b7565b6040518082815260200191505060405180910390f35b61012c610248565b6040518082815260200191505060405180910390f35b60005481565b7fb776d49293459725ca7d6a5abc60e389d2f3d067d4f028ba9cd790f6965998466000368360405180806020018381526020018281038252858582818152602001925080828437600081840152601f19601f82011690508083019250505094505050505060405180910390a150565b60003073ffffffffffffffffffffffffffffffffffffffff1660405180807f66756e6374696f6e4e6f744578697374282900000000000000000000000000008152506012019050600060405180830381855af49150503d8060008114610239576040519150601f19603f3d011682016040523d82523d6000602084013e61023e565b606091505b5050506001905090565b6000805490509056fea265627a7a72315820e752691131e4ae7d5ed78ab913d8f78eeb2b6fb22d479a24d8aa541ec5d4806864736f6c63430005110032"; - - public static final String FUNC_A = "a"; - - public static final String FUNC_CALLNONEXISTFUNC = "callNonExistFunc"; - - public static final String FUNC_EXISTFUNC = "existFunc"; - - public static final String FUNC_GETA = "getA"; - - public static final Event EXISTFUNCCALLED_EVENT = new Event("ExistFuncCalled", - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - ; - - public static final Event FALLBACKCALLED_EVENT = new Event("FallbackCalled", - Arrays.>asList(new TypeReference() {})); - ; - - protected FallbackDeclaraction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected FallbackDeclaraction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getExistFuncCalledEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EXISTFUNCCALLED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ExistFuncCalledEventResponse typedResponse = new ExistFuncCalledEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.data = (byte[]) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.para = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable existFuncCalledEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ExistFuncCalledEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EXISTFUNCCALLED_EVENT, log); - ExistFuncCalledEventResponse typedResponse = new ExistFuncCalledEventResponse(); - typedResponse.log = log; - typedResponse.data = (byte[]) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.para = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable existFuncCalledEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EXISTFUNCCALLED_EVENT)); - return existFuncCalledEventObservable(filter); - } - - public List getFallbackCalledEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(FALLBACKCALLED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - FallbackCalledEventResponse typedResponse = new FallbackCalledEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.data = (byte[]) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable fallbackCalledEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public FallbackCalledEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(FALLBACKCALLED_EVENT, log); - FallbackCalledEventResponse typedResponse = new FallbackCalledEventResponse(); - typedResponse.log = log; - typedResponse.data = (byte[]) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable fallbackCalledEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(FALLBACKCALLED_EVENT)); - return fallbackCalledEventObservable(filter); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall callNonExistFunc() { - final Function function = new Function( - FUNC_CALLNONEXISTFUNC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall existFunc(BigInteger para) { - final Function function = new Function( - FUNC_EXISTFUNC, - Arrays.asList(new Uint256(para)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getA() { - final Function function = new Function(FUNC_GETA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FallbackDeclaraction.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FallbackDeclaraction.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static FallbackDeclaraction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new FallbackDeclaraction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static FallbackDeclaraction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new FallbackDeclaraction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class ExistFuncCalledEventResponse { - public Log log; - - public byte[] data; - - public BigInteger para; - } - - public static class FallbackCalledEventResponse { - public Log log; - - public byte[] data; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ForError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ForError.java deleted file mode 100644 index 46be341b9c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ForError.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ForError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610150806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063895e3ada1461003b578063ec56ae5d1461005d575b600080fd5b61004361007f565b604051808215151515815260200191505060405180910390f35b6100656100a4565b604051808215151515815260200191505060405180910390f35b60008061008a6100c9565b90508060000160009054906101000a900460ff1691505090565b6000806100af6100f5565b90508060000160009054906101000a900460ff1691505090565b60008090505b600115158160000160009054906101000a900460ff16151514156100f2576100cf565b90565b60005b600190508060000160009054906101000a900460ff1615610118576100f8565b9056fea265627a7a72315820aba5f0cf3ddc4a323fec3e15917f0b147bc88ed96a39262e2a173700ace5429164736f6c63430005110032"; - - public static final String FUNC_GETFORCONTROLRES = "getForControlRes"; - - public static final String FUNC_GETFORCONTROLRES1 = "getForControlRes1"; - - protected ForError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ForError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getForControlRes() { - final Function function = new Function(FUNC_GETFORCONTROLRES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getForControlRes1() { - final Function function = new Function(FUNC_GETFORCONTROLRES1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ForError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ForError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ForError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ForError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ForError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ForError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/FunctionDeclaraction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/FunctionDeclaraction.java deleted file mode 100644 index bf4b30d342..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/FunctionDeclaraction.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class FunctionDeclaraction extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061020c806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806312065fe014610046578063ab95edb114610064578063cb533b38146100d9575b600080fd5b61004e61014e565b6040518082815260200191505060405180910390f35b6100906004803603602081101561007a57600080fd5b8101908080359060200190929190505050610157565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b610105600480360360208110156100ef57600080fd5b8101908080359060200190929190505050610175565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b60008054905090565b60008061016383610193565b50503360005481915091509150915091565b600080610181836101b5565b50503360005481915091509150915091565b6000808260008082825401925050819055503360005481915091509150915091565b600080826000808282540192505081905550336000548191509150915091509156fea265627a7a72315820b8bfa0f61106f3d392fef947213099e6cb91e1bbc8b641f5db9df6e57919ba9d64736f6c63430005110032"; - - public static final String FUNC_GETBALANCE = "getBalance"; - - public static final String FUNC_UPDATE_EXTERNAL = "update_external"; - - public static final String FUNC_UPDATE_PUBLIC = "update_public"; - - protected FunctionDeclaraction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected FunctionDeclaraction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBalance() { - final Function function = new Function(FUNC_GETBALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update_external(BigInteger amount_ex) { - final Function function = new Function( - FUNC_UPDATE_EXTERNAL, - Arrays.asList(new Uint256(amount_ex)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall update_public(BigInteger amount_pu) { - final Function function = new Function( - FUNC_UPDATE_PUBLIC, - Arrays.asList(new Uint256(amount_pu)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FunctionDeclaraction.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FunctionDeclaraction.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static FunctionDeclaraction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new FunctionDeclaraction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static FunctionDeclaraction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new FunctionDeclaraction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/FunctionParam.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/FunctionParam.java deleted file mode 100644 index 38cf50c493..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/FunctionParam.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class FunctionParam extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060d08061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806326121ff014603757806392d0d153146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b6059607e565b6040518082815260200191505060405180910390f35b60006079607e6087565b905090565b60006007905090565b600060948263ffffffff16565b905091905056fea265627a7a72315820ee4194d3d522b4c96bc00861975b38bd5a340857526ff26f1f4a68bc68fe24bd64736f6c63430005110032"; - - public static final String FUNC_F = "f"; - - public static final String FUNC_T = "t"; - - protected FunctionParam(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected FunctionParam(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f() { - final Function function = new Function( - FUNC_F, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall t() { - final Function function = new Function(FUNC_T, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FunctionParam.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FunctionParam.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static FunctionParam load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new FunctionParam(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static FunctionParam load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new FunctionParam(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/GetLibraryAddress.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/GetLibraryAddress.java deleted file mode 100644 index 4ddbcc8e9d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/GetLibraryAddress.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class GetLibraryAddress extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610143806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80636e7c15041461003b578063750c193514610045575b600080fd5b61004361008f565b005b61004d6100e5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b73__$59c33ecc786c5b80bb7babe6789fdd9a96$__6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690509056fea265627a7a7231582077323d26b074f17cb871803ab72726c1784863fe8d8fac727c68339acf4e6c4864736f6c63430005110032\n" - + "\n" - + "// $59c33ecc786c5b80bb7babe6789fdd9a96$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/8-address_LibraryName/UserLibrary.sol:UserLibrary"; - - public static final String FUNC_GETUSERLIBADDRESS = "getUserLibAddress"; - - public static final String FUNC_SETUSERLIBADDRESS = "setUserLibAddress"; - - protected GetLibraryAddress(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected GetLibraryAddress(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getUserLibAddress() { - final Function function = new Function(FUNC_GETUSERLIBADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setUserLibAddress() { - final Function function = new Function( - FUNC_SETUSERLIBADDRESS, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(GetLibraryAddress.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(GetLibraryAddress.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static GetLibraryAddress load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new GetLibraryAddress(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static GetLibraryAddress load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new GetLibraryAddress(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Getter.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Getter.java deleted file mode 100644 index 1cb2bee5d9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Getter.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Getter extends Contract { - private static final String BINARY = "6080604052600a60005534801561001557600080fd5b50610148806100256000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806326121ff01461003b57806373d4a13a14610060575b600080fd5b61004361007e565b604051808381526020018281526020019250505060405180910390f35b61006861010d565b6040518082815260200191505060405180910390f35b6000806000543073ffffffffffffffffffffffffffffffffffffffff166373d4a13a6040518163ffffffff1660e01b815260040160206040518083038186803b1580156100ca57600080fd5b505afa1580156100de573d6000803e3d6000fd5b505050506040513d60208110156100f457600080fd5b8101908080519060200190929190505050915091509091565b6000548156fea265627a7a7231582075dae3dba88eab0292a9de7246f702381a72f719ee89d6d92ffdafcf4f59d6ac64736f6c63430005110032"; - - public static final String FUNC_DATA = "data"; - - public static final String FUNC_F = "f"; - - protected Getter(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Getter(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall data() { - final Function function = new Function(FUNC_DATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> f() { - final Function function = new Function(FUNC_F, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Getter.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Getter.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Getter load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Getter(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Getter load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Getter(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Guessing.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Guessing.java deleted file mode 100644 index 8766d1c01c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Guessing.java +++ /dev/null @@ -1,390 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Guessing extends Contract { - private static final String BINARY = "60806040526000600260006101000a81548160ff021916908315150217905550674563918244f400006003556001600a556000600d5534801561004157600080fd5b506040516112773803806112778339818101604052602081101561006457600080fd5b810190808051906020019092919050505033600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600081905550506111aa806100cd6000396000f3fe6080604052600436106101405760003560e01c806382d333a0116100b6578063b69ef8a81161006f578063b69ef8a814610618578063c2930f9114610643578063c29bde8c1461066e578063c7f40b6414610699578063ecbde5e6146106f0578063ff37be161461071b57610140565b806382d333a0146104335780638941f2f01461045e57806394696a92146104ad578063a46c363714610519578063ae44794114610544578063b03e0077146105a957610140565b806313eaca431161010857806313eaca43146102c35780631ef9c56f146102f2578063220bc55e1461035e57806327ebd9ab14610368578063629374ab146103935780636e5ab671146103ce57610140565b8063045f9c971461014c578063062d6a98146101c7578063083c6323146101f2578063094cc1ab1461021d5780630b8b850214610248575b61014a3433610746565b005b34801561015857600080fd5b506101856004803603602081101561016f57600080fd5b8101908080359060200190929190505050610909565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101d357600080fd5b506101dc610945565b6040518082815260200191505060405180910390f35b3480156101fe57600080fd5b5061020761094b565b6040518082815260200191505060405180910390f35b34801561022957600080fd5b50610232610951565b6040518082815260200191505060405180910390f35b34801561025457600080fd5b506102816004803603602081101561026b57600080fd5b8101908080359060200190929190505050610957565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156102cf57600080fd5b506102d861098a565b604051808215151515815260200191505060405180910390f35b3480156102fe57600080fd5b5061030761099d565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561034a57808201518184015260208101905061032f565b505050509050019250505060405180910390f35b610366610a2b565b005b34801561037457600080fd5b5061037d610a37565b6040518082815260200191505060405180910390f35b34801561039f57600080fd5b506103cc600480360360208110156103b657600080fd5b8101908080359060200190929190505050610a61565b005b3480156103da57600080fd5b5061041d600480360360208110156103f157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e23565b6040518082815260200191505060405180910390f35b34801561043f57600080fd5b50610448610e3b565b6040518082815260200191505060405180910390f35b34801561046a57600080fd5b506104976004803603602081101561048157600080fd5b8101908080359060200190929190505050610e41565b6040518082815260200191505060405180910390f35b3480156104b957600080fd5b506104c2610e6a565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156105055780820151818401526020810190506104ea565b505050509050019250505060405180910390f35b34801561052557600080fd5b5061052e610eff565b6040518082815260200191505060405180910390f35b34801561055057600080fd5b506105936004803603602081101561056757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f0c565b6040518082815260200191505060405180910390f35b3480156105b557600080fd5b50610602600480360360408110156105cc57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f24565b6040518082815260200191505060405180910390f35b34801561062457600080fd5b5061062d610f52565b6040518082815260200191505060405180910390f35b34801561064f57600080fd5b50610658610f58565b6040518082815260200191505060405180910390f35b34801561067a57600080fd5b50610683610f5e565b6040518082815260200191505060405180910390f35b3480156106a557600080fd5b506106ae610f64565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106fc57600080fd5b50610705610f8a565b6040518082815260200191505060405180910390f35b34801561072757600080fd5b50610730610f92565b6040518082815260200191505060405180910390f35b43600054106109055760035482101561075e57600080fd5b600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a5490806001815401808255809150509060018203906000526020600020016000909192909190915055508060076000600a54815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600a6000815480929190600101919050555081600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816004600082825401925050819055507fe842aea7a5f1b01049d752008c53c52890b1a6daf660cf39e8eec506112bbdf681836001604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200182151515158152602001935050505060405180910390a15b5050565b600b818154811061091657fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b60005481565b600d5481565b60076020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900460ff1681565b6060600b805480602002602001604051908101604052809291908181526020018280548015610a2157602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190600101908083116109d7575b5050505050905090565b610a353433610746565b565b600060011515600260009054906101000a900460ff16151514610a5957600080fd5b600d54905090565b600054431115610e2057600260009054906101000a900460ff16158015610ad557503373ffffffffffffffffffffffffffffffffffffffff16600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b8015610ae357506001600a54115b15610e1f57600081604051602001808281526020019150506040516020818303038152906040528051906020012060001c90506000600a548281610b2357fe5b0690506064600a541015610b4157610b3c81600a610f9c565b610b6b565b612710600a541015610b5d57610b58816064610f9c565b610b6a565b610b69816103e8610f9c565b5b5b600b8054905060045481610b7b57fe5b04600581905550600080600090505b600b80549050811015610df857600160096000600b8481548110610baa57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540160096000600b8481548110610c2257fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff16600b8281548110610cb057fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141580610d625750600073ffffffffffffffffffffffffffffffffffffffff16600b8281548110610d1e57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b15610deb57600b8181548110610d7457fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1691508173ffffffffffffffffffffffffffffffffffffffff166108fc6005549081150290604051600060405180830381858888f19350505050158015610de9573d6000803e3d6000fd5b505b8080600101915050610b8a565b506001600260006101000a81548160ff021916908315150217905550836001819055505050505b5b50565b60096020528060005260406000206000915090505481565b60055481565b6000610101430382118015610e5857506001430382105b610e6157600080fd5b81409050919050565b6060600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610ef557602002820191906000526020600020905b815481526020019060010190808311610ee1575b5050505050905090565b6000600b80549050905090565b60066020528060005260406000206000915090505481565b60086020528160005260406000208181548110610f3d57fe5b90600052602060002001600091509150505481565b60045481565b60035481565b60015481565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600047905090565b6000600154905090565b808281610fa557fe5b06600d819055506000600d54141561108b576000600190505b600a5481101561108557600082600d54830381610fd757fe5b06141561107857600b6007600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505b8080600101915050610fbe565b50611171565b6000600190505b600a5481101561116f5760008282816110a757fe5b06141580156110c35750600082600d548303816110c057fe5b06145b1561116257600b6007600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505b8080600101915050611092565b505b505056fea265627a7a72315820cd9a60010b2c272024533c309c6fbd84bd60905a4caa482590d62daddac2ca0164736f6c63430005110032"; - - public static final String FUNC_AVERAGEAMOUNT = "averageAmount"; - - public static final String FUNC_BALANCE = "balance"; - - public static final String FUNC_BASEUNIT = "baseUnit"; - - public static final String FUNC_BLOCK_HASH = "block_hash"; - - public static final String FUNC_CREATEADDRESS = "createAddress"; - - public static final String FUNC_DRAW = "draw"; - - public static final String FUNC_ENDBLOCK = "endBlock"; - - public static final String FUNC_GENERATEBLOCKHASH = "generateBlockHash"; - - public static final String FUNC_GETBALANCEOF = "getBalanceOf"; - - public static final String FUNC_GETENDBLOCKHASH = "getEndBlockHash"; - - public static final String FUNC_GETMYGUESSCODES = "getMyGuessCodes"; - - public static final String FUNC_GETPOSTFIX = "getPostfix"; - - public static final String FUNC_GETWINNERADDRESSES = "getWinnerAddresses"; - - public static final String FUNC_GETWINNERCOUNT = "getWinnerCount"; - - public static final String FUNC_GUESSINGCLOSED = "guessingClosed"; - - public static final String FUNC_GUESSINGWITHLAT = "guessingWithLat"; - - public static final String FUNC_GUSSINGERCODES = "gussingerCodes"; - - public static final String FUNC_GUSSINGERLAT = "gussingerLat"; - - public static final String FUNC_INDEXKEY = "indexKey"; - - public static final String FUNC_INDEXOFGUSSINGER = "indexOfgussinger"; - - public static final String FUNC_POSTFIX = "postfix"; - - public static final String FUNC_WINNERADDRESSES = "winnerAddresses"; - - public static final String FUNC_WINNERMAP = "winnerMap"; - - public static final Event CURRENTBALANCE_EVENT = new Event("CurrentBalance", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - public static final Event FUNDTRANSFER_EVENT = new Event("FundTransfer", - Arrays.>asList(new TypeReference
() {}, new TypeReference() {}, new TypeReference() {})); - ; - - protected Guessing(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Guessing(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _endBlock) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_endBlock))); - return deployRemoteCall(Guessing.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _endBlock) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_endBlock))); - return deployRemoteCall(Guessing.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public List getCurrentBalanceEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(CURRENTBALANCE_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - CurrentBalanceEventResponse typedResponse = new CurrentBalanceEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._msgSenderAddress = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._balance = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable currentBalanceEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public CurrentBalanceEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(CURRENTBALANCE_EVENT, log); - CurrentBalanceEventResponse typedResponse = new CurrentBalanceEventResponse(); - typedResponse.log = log; - typedResponse._msgSenderAddress = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._balance = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable currentBalanceEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(CURRENTBALANCE_EVENT)); - return currentBalanceEventObservable(filter); - } - - public List getFundTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(FUNDTRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - FundTransferEventResponse typedResponse = new FundTransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._backer = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._amount = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - typedResponse._isSuccess = (Boolean) eventValues.getNonIndexedValues().get(2).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable fundTransferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public FundTransferEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(FUNDTRANSFER_EVENT, log); - FundTransferEventResponse typedResponse = new FundTransferEventResponse(); - typedResponse.log = log; - typedResponse._backer = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._amount = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - typedResponse._isSuccess = (Boolean) eventValues.getNonIndexedValues().get(2).getValue(); - return typedResponse; - } - }); - } - - public Observable fundTransferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(FUNDTRANSFER_EVENT)); - return fundTransferEventObservable(filter); - } - - public RemoteCall averageAmount() { - final Function function = new Function(FUNC_AVERAGEAMOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall balance() { - final Function function = new Function(FUNC_BALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall baseUnit() { - final Function function = new Function(FUNC_BASEUNIT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall block_hash() { - final Function function = new Function(FUNC_BLOCK_HASH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall createAddress() { - final Function function = new Function(FUNC_CREATEADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall draw(byte[] _block_hash) { - final Function function = new Function( - FUNC_DRAW, - Arrays.asList(new Bytes32(_block_hash)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall endBlock() { - final Function function = new Function(FUNC_ENDBLOCK, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall generateBlockHash(BigInteger _blocknumber) { - final Function function = new Function(FUNC_GENERATEBLOCKHASH, - Arrays.asList(new Uint256(_blocknumber)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBalanceOf() { - final Function function = new Function(FUNC_GETBALANCEOF, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getEndBlockHash() { - final Function function = new Function(FUNC_GETENDBLOCKHASH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getMyGuessCodes() { - final Function function = new Function(FUNC_GETMYGUESSCODES, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall getPostfix() { - final Function function = new Function(FUNC_GETPOSTFIX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getWinnerAddresses() { - final Function function = new Function(FUNC_GETWINNERADDRESSES, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall getWinnerCount() { - final Function function = new Function(FUNC_GETWINNERCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall guessingClosed() { - final Function function = new Function(FUNC_GUESSINGCLOSED, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall guessingWithLat(BigInteger vonValue) { - final Function function = new Function( - FUNC_GUESSINGWITHLAT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall gussingerCodes(String param0, BigInteger param1) { - final Function function = new Function(FUNC_GUSSINGERCODES, - Arrays.asList(new Address(param0), - new Uint256(param1)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall gussingerLat(String param0) { - final Function function = new Function(FUNC_GUSSINGERLAT, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall indexKey() { - final Function function = new Function(FUNC_INDEXKEY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall indexOfgussinger(BigInteger param0) { - final Function function = new Function(FUNC_INDEXOFGUSSINGER, - Arrays.asList(new Uint256(param0)), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall postfix() { - final Function function = new Function(FUNC_POSTFIX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall winnerAddresses(BigInteger param0) { - final Function function = new Function(FUNC_WINNERADDRESSES, - Arrays.asList(new Uint256(param0)), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall winnerMap(String param0) { - final Function function = new Function(FUNC_WINNERMAP, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static Guessing load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Guessing(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Guessing load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Guessing(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class CurrentBalanceEventResponse { - public Log log; - - public String _msgSenderAddress; - - public BigInteger _balance; - } - - public static class FundTransferEventResponse { - public Log log; - - public String _backer; - - public BigInteger _amount; - - public Boolean _isSuccess; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/HexLiteralsChangeByte.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/HexLiteralsChangeByte.java deleted file mode 100644 index c7af89484a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/HexLiteralsChangeByte.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class HexLiteralsChangeByte extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061022f806100206000396000f3fe6080604052600436106100345760003560e01c80630b7f166514610039578063420343a4146100a8578063ee4950021461010a575b600080fd5b34801561004557600080fd5b5061004e610179565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6100b061018f565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b34801561011657600080fd5b5061011f6101e8565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b60008060009054906101000a900460f81b905090565b6000807f6162000000000000000000000000000000000000000000000000000000000000905060f160f81b6000806101000a81548160ff021916908360f81c02179055506000809054906101000a900460f81b91505090565b6000809054906101000a900460f81b8156fea265627a7a723158209764a2de70097315ecd3b947f08b64a94f63e56b573639ae9049969e75f2ef6864736f6c63430005110032"; - - public static final String FUNC_B1 = "b1"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_TESTCHANGE = "testChange"; - - protected HexLiteralsChangeByte(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected HexLiteralsChangeByte(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall b1() { - final Function function = new Function(FUNC_B1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall testChange(BigInteger vonValue) { - final Function function = new Function( - FUNC_TESTCHANGE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(HexLiteralsChangeByte.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(HexLiteralsChangeByte.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static HexLiteralsChangeByte load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new HexLiteralsChangeByte(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static HexLiteralsChangeByte load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new HexLiteralsChangeByte(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/IfError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/IfError.java deleted file mode 100644 index 2d0edd7c83..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/IfError.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class IfError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610147806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806349b9d30f1461003b578063c77beeb61461005d575b600080fd5b61004361007f565b604051808215151515815260200191505060405180910390f35b6100656100a6565b604051808215151515815260200191505060405180910390f35b60008061008c60016100cd565b90508060000160009054906101000a900460ff1691505090565b6000806100b360016100e8565b90508060000160009054906101000a900460ff1691505090565b600081156100de57600090506100e3565b600090505b919050565b600081156100f9576000905061010d565b81610107576000905061010c565b600090505b5b91905056fea265627a7a723158200a1b0d78503758b6a4bc6b6c0f71cff07ae6f87ecb9d7936273aad0ecc2ec8af64736f6c63430005110032"; - - public static final String FUNC_GETIFCONTROLRES = "getIfControlRes"; - - public static final String FUNC_GETIFCONTROLRES1 = "getIfControlRes1"; - - protected IfError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected IfError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getIfControlRes() { - final Function function = new Function(FUNC_GETIFCONTROLRES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getIfControlRes1() { - final Function function = new Function(FUNC_GETIFCONTROLRES1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(IfError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(IfError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static IfError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new IfError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static IfError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new IfError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InfoFeed.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InfoFeed.java deleted file mode 100644 index 4d8ab55b1a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InfoFeed.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InfoFeed extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b50600080fdfe"; - - public static final String FUNC_INFO = "info"; - - public static final String FUNC_NONCODE = "nonCode"; - - protected InfoFeed(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InfoFeed(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InfoFeed.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InfoFeed.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall info(BigInteger vonValue) { - final Function function = new Function( - FUNC_INFO, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall nonCode() { - final Function function = new Function( - FUNC_NONCODE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static InfoFeed load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InfoFeed(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InfoFeed load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InfoFeed(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractAMutipleClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractAMutipleClass.java deleted file mode 100644 index e2a621ce81..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractAMutipleClass.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractAMutipleClass extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060ba8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063430fe9c11460375780635fcceceb146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596078565b6040518082815260200191505060405180910390f35b60006001905090565b60006080606f565b90509056fea265627a7a723158200b21a8169f5375beece09084c4fa08aca2392b92507cce60908d8ca3505c74d064736f6c63430005110032"; - - public static final String FUNC_CALLGETDATEA = "callGetDateA"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractAMutipleClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractAMutipleClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callGetDateA() { - final Function function = new Function(FUNC_CALLGETDATEA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractAMutipleClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractAMutipleClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractAMutipleClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractAMutipleClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractAMutipleClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractAMutipleClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractAParentBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractAParentBase.java deleted file mode 100644 index 9c8763793b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractAParentBase.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractAParentBase extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610129806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80631416d3471460375780638da5cb5b14607f575b600080fd5b603d60c7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b608560cf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600033905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff168156fea265627a7a72315820a271b2c2a8ba283df7c1b2ec13370225966d5054b6546d700437d10b2c9cfc3164736f6c63430005110032"; - - public static final String FUNC_GETADDRESSA = "getAddressA"; - - public static final String FUNC_OWNER = "owner"; - - protected InheritContractAParentBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractAParentBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddressA() { - final Function function = new Function(FUNC_GETADDRESSA, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall owner() { - final Function function = new Function(FUNC_OWNER, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractAParentBase.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractAParentBase.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractAParentBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractAParentBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractAParentBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractAParentBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractASub.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractASub.java deleted file mode 100644 index c0144d9c21..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractASub.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractASub extends Contract { - private static final String BINARY = "60806040526000805560028060008190555050608780601f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063a46cf4b314602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000805490509056fea265627a7a72315820efd3a7e8d54307c570622870e9061402b7a18a0c3c582b8805655a3940ff278864736f6c63430005110032"; - - public static final String FUNC_GETDATAA = "getDataA"; - - protected InheritContractASub(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractASub(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDataA() { - final Function function = new Function(FUNC_GETDATAA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractASub.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractASub.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractASub load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractASub(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractASub load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractASub(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractBMutipleClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractBMutipleClass.java deleted file mode 100644 index 9f6c0a3953..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractBMutipleClass.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractBMutipleClass extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060ba8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063430fe9c114603757806354b39533146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596078565b6040518082815260200191505060405180910390f35b60006002905090565b60006080606f565b90509056fea265627a7a723158201f553a95808bfd27f0474e47bc8b069b6d2fd033cbd2210f13717f584134535264736f6c63430005110032"; - - public static final String FUNC_CALLGETDATEB = "callGetDateB"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractBMutipleClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractBMutipleClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callGetDateB() { - final Function function = new Function(FUNC_CALLGETDATEB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBMutipleClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBMutipleClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractBMutipleClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBMutipleClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractBMutipleClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBMutipleClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractBParentBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractBParentBase.java deleted file mode 100644 index 8741737c6c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractBParentBase.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractBParentBase extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060b28061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80636c3364ea14602d575b600080fd5b60336075565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60003390509056fea265627a7a72315820538512b5a0d8346a94549fd495631e2bbb1386c6cfc4c3aa33f31140748035c564736f6c63430005110032"; - - public static final String FUNC_GETADDRESSB = "getAddressB"; - - protected InheritContractBParentBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractBParentBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddressB() { - final Function function = new Function(FUNC_GETADDRESSB, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBParentBase.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBParentBase.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractBParentBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBParentBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractBParentBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBParentBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractBSub.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractBSub.java deleted file mode 100644 index 01fc816c08..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractBSub.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractBSub extends Contract { - private static final String BINARY = "608060405260008055348015601357600080fd5b506003806000819055505060006001905060005481016001819055505060888061003e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80635873f05614602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b600060015490509056fea265627a7a7231582010181a99047e78ac8917c214ce1155ecdf7c57996c5e2910941f7aa857f2103f64736f6c63430005110032"; - - public static final String FUNC_GETDATAB = "getDataB"; - - protected InheritContractBSub(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractBSub(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBSub.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBSub.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getDataB() { - final Function function = new Function(FUNC_GETDATAB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static InheritContractBSub load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBSub(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractBSub load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBSub(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractBase.java deleted file mode 100644 index 2c0e358534..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractBase.java +++ /dev/null @@ -1,51 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractBase extends Contract { - private static final String BINARY = "608060405260008055348015601357600080fd5b506040516097380380609783398181016040526020811015603357600080fd5b81019080805190602001909291905050508060008190555050603e8060596000396000f3fe6080604052600080fdfea265627a7a72315820f8e72c6584c2dd5aaa6604cb1c33f05f03c2d57e8258ca885b1946b8aab60e7564736f6c63430005110032"; - - protected InheritContractBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger x) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(x))); - return deployRemoteCall(InheritContractBase.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger x) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(x))); - return deployRemoteCall(InheritContractBase.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static InheritContractBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractOverload.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractOverload.java deleted file mode 100644 index 1d028f2560..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractOverload.java +++ /dev/null @@ -1,88 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractOverload extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101a9806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80635873f056146100515780639450268b1461006f578063a46cf4b3146100c5578063cad0899b146100e3575b600080fd5b61005961012f565b6040518082815260200191505060405180910390f35b6100af6004803603606081101561008557600080fd5b81019080803590602001909291908035906020019092919080359060200190929190505050610144565b6040518082815260200191505060405180910390f35b6100cd610154565b6040518082815260200191505060405180910390f35b610119600480360360408110156100f957600080fd5b810190808035906020019092919080359060200190929190505050610167565b6040518082815260200191505060405180910390f35b600061013f600160026003610144565b905090565b6000818385010190509392505050565b600061016260016002610167565b905090565b600081830190509291505056fea265627a7a72315820d8e36b4914d49676086f87ab217f1b944a6a68abf88d627e1e26033cee50befe64736f6c63430005110032"; - - public static final String FUNC_GETDATAA = "getDataA"; - - public static final String FUNC_GETDATAB = "getDataB"; - - public static final String FUNC_SUM = "sum"; - - protected InheritContractOverload(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractOverload(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDataA() { - final Function function = new Function(FUNC_GETDATAA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDataB() { - final Function function = new Function(FUNC_GETDATAB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall sum(BigInteger a, BigInteger b, BigInteger c) { - final Function function = new Function(FUNC_SUM, - Arrays.asList(new Uint256(a), - new Uint256(b), - new Uint256(c)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall sum(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUM, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverload.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverload.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractOverload load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverload(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractOverload load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverload(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractOverloadBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractOverloadBase.java deleted file mode 100644 index a8d41403c7..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractOverloadBase.java +++ /dev/null @@ -1,108 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractOverloadBase extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101b5806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80630b7f1665146100675780630c55699c146100855780635197c7aa146100a3578063a56dfe4a146100c1578063a5843f08146100df578063b7b0422d14610117575b600080fd5b61006f610145565b6040518082815260200191505060405180910390f35b61008d61014f565b6040518082815260200191505060405180910390f35b6100ab610155565b6040518082815260200191505060405180910390f35b6100c961015e565b6040518082815260200191505060405180910390f35b610115600480360360408110156100f557600080fd5b810190808035906020019092919080359060200190929190505050610164565b005b6101436004803603602081101561012d57600080fd5b8101908080359060200190929190505050610176565b005b6000600154905090565b60005481565b60008054905090565b60015481565b81600081905550806001819055505050565b806000819055505056fea265627a7a72315820474a2893bf87eb06ffdcf0ff19615cf3fc924c67b82eb768aeecad6f8f7a094564736f6c63430005110032"; - - public static final String FUNC_GETX = "getX"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_INIT = "init"; - - public static final String FUNC_X = "x"; - - public static final String FUNC_Y = "y"; - - protected InheritContractOverloadBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractOverloadBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getX() { - final Function function = new Function(FUNC_GETX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall init(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall init(BigInteger a) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall y() { - final Function function = new Function(FUNC_Y, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadBase.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadBase.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractOverloadBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractOverloadBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractOverloadBaseBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractOverloadBaseBase.java deleted file mode 100644 index b30aa90f82..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractOverloadBaseBase.java +++ /dev/null @@ -1,108 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractOverloadBaseBase extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101b8806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80630b7f1665146100675780630c55699c146100855780635197c7aa146100a3578063a56dfe4a146100c1578063a5843f08146100df578063b7b0422d14610117575b600080fd5b61006f610145565b6040518082815260200191505060405180910390f35b61008d61014f565b6040518082815260200191505060405180910390f35b6100ab610155565b6040518082815260200191505060405180910390f35b6100c961015e565b6040518082815260200191505060405180910390f35b610115600480360360408110156100f557600080fd5b810190808035906020019092919080359060200190929190505050610164565b005b6101436004803603602081101561012d57600080fd5b8101908080359060200190929190505050610176565b005b6000600154905090565b60005481565b60008054905090565b60015481565b80600081905550816001819055505050565b600181016000819055505056fea265627a7a72315820f7454b767cf03e328df00288fb0fed536dc143932dbb97809347dc65504f3fd664736f6c63430005110032"; - - public static final String FUNC_GETX = "getX"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_INIT = "init"; - - public static final String FUNC_X = "x"; - - public static final String FUNC_Y = "y"; - - protected InheritContractOverloadBaseBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractOverloadBaseBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getX() { - final Function function = new Function(FUNC_GETX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall init(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall init(BigInteger a) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall y() { - final Function function = new Function(FUNC_Y, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadBaseBase.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadBaseBase.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractOverloadBaseBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadBaseBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractOverloadBaseBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadBaseBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractOverloadChild.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractOverloadChild.java deleted file mode 100644 index 5b17215972..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractOverloadChild.java +++ /dev/null @@ -1,146 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractOverloadChild extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610310806100206000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c8063a56dfe4a11610066578063a56dfe4a14610163578063a5843f0814610181578063b7b0422d146101b9578063cedf673f146101e7578063fa98b8671461021f5761009e565b80630b7f1665146100a35780630c55699c146100c15780631c5e6b98146100df5780635197c7aa1461010d578063560512c61461012b575b600080fd5b6100ab61024d565b6040518082815260200191505060405180910390f35b6100c9610257565b6040518082815260200191505060405180910390f35b61010b600480360360208110156100f557600080fd5b810190808035906020019092919050505061025d565b005b610115610269565b6040518082815260200191505060405180910390f35b6101616004803603604081101561014157600080fd5b810190808035906020019092919080359060200190929190505050610272565b005b61016b610280565b6040518082815260200191505060405180910390f35b6101b76004803603604081101561019757600080fd5b810190808035906020019092919080359060200190929190505050610286565b005b6101e5600480360360208110156101cf57600080fd5b8101908080359060200190929190505050610298565b005b61021d600480360360408110156101fd57600080fd5b8101908080359060200190929190803590602001909291905050506102a2565b005b61024b6004803603602081101561023557600080fd5b81019080803590602001909291905050506102b0565b005b6000600154905090565b60005481565b610266816102bc565b50565b60008054905090565b61027c8282610286565b5050565b60015481565b81600081905550806001819055505050565b8060008190555050565b6102ac82826102c9565b5050565b6102b981610298565b50565b6001810160008190555050565b8060008190555081600181905550505056fea265627a7a723158201cc50c6da7de44757749752d753045ce3828d01981133c200aaa632c57f7b23764736f6c63430005110032"; - - public static final String FUNC_GETX = "getX"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_INIT = "init"; - - public static final String FUNC_INITBASE = "initBase"; - - public static final String FUNC_INITBASEBASE = "initBaseBase"; - - public static final String FUNC_X = "x"; - - public static final String FUNC_Y = "y"; - - protected InheritContractOverloadChild(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractOverloadChild(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getX() { - final Function function = new Function(FUNC_GETX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall init(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall init(BigInteger a) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initBase(BigInteger c, BigInteger d) { - final Function function = new Function( - FUNC_INITBASE, - Arrays.asList(new Uint256(c), - new Uint256(d)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initBase(BigInteger c) { - final Function function = new Function( - FUNC_INITBASE, - Arrays.asList(new Uint256(c)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initBaseBase(BigInteger c) { - final Function function = new Function( - FUNC_INITBASEBASE, - Arrays.asList(new Uint256(c)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initBaseBase(BigInteger c, BigInteger d) { - final Function function = new Function( - FUNC_INITBASEBASE, - Arrays.asList(new Uint256(c), - new Uint256(d)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall y() { - final Function function = new Function(FUNC_Y, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadChild.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadChild.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractOverloadChild load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadChild(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractOverloadChild load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadChild(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractParentMutipleTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractParentMutipleTest.java deleted file mode 100644 index 0f62a0c4a3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractParentMutipleTest.java +++ /dev/null @@ -1,83 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractParentMutipleTest extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101a6806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631416d347146100515780636c3364ea1461009b578063853255cc146100e55780638da5cb5b146100ef575b600080fd5b610059610139565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100a3610141565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100ed610149565b005b6100f761014b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600033905090565b600033905090565b565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168156fea265627a7a723158204675258b2367d4dfb3914144eb65d88102ad3727b9ddac5bdf7d3162a74188c164736f6c63430005110032"; - - public static final String FUNC_GETADDRESSA = "getAddressA"; - - public static final String FUNC_GETADDRESSB = "getAddressB"; - - public static final String FUNC_OWNER = "owner"; - - public static final String FUNC_SUM = "sum"; - - protected InheritContractParentMutipleTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractParentMutipleTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddressA() { - final Function function = new Function(FUNC_GETADDRESSA, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getAddressB() { - final Function function = new Function(FUNC_GETADDRESSB, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall owner() { - final Function function = new Function(FUNC_OWNER, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public void sum() { - throw new RuntimeException("cannot call constant function with void return type"); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentMutipleTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentMutipleTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractParentMutipleTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentMutipleTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractParentMutipleTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentMutipleTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractParentOneClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractParentOneClass.java deleted file mode 100644 index 104a4ee2e2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractParentOneClass.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractParentOneClass extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b5060878061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063430fe9c114602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000600190509056fea265627a7a72315820d3eb0dc27ccd6bd305ec4f817f12fd066fba3cd1d3d672914989dbcdd3d4560564736f6c63430005110032"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractParentOneClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractParentOneClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentOneClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentOneClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractParentOneClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentOneClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractParentOneClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentOneClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractParentThreeClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractParentThreeClass.java deleted file mode 100644 index 98ca2ac732..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractParentThreeClass.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractParentThreeClass extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060b68061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063430fe9c1146037578063887c5838146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596078565b6040518082815260200191505060405180910390f35b60006002905090565b6000600390509056fea265627a7a72315820f17b0680c396fe6db72b54efb17add095e90b10712c531feb6f44e12a900a6e064736f6c63430005110032"; - - public static final String FUNC_GETDATATHREE = "getDataThree"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractParentThreeClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractParentThreeClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDataThree() { - final Function function = new Function(FUNC_GETDATATHREE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentThreeClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentThreeClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractParentThreeClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentThreeClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractParentThreeClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentThreeClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractParentTwoClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractParentTwoClass.java deleted file mode 100644 index 75a4bf5faa..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractParentTwoClass.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractParentTwoClass extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b5060878061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063430fe9c114602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000600290509056fea265627a7a72315820aa3b3b93d69468c8bbc7aed8e1e5b2f2d226ed7ef48fd9568a6b691c50f78a2b64736f6c63430005110032"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractParentTwoClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractParentTwoClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentTwoClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentTwoClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractParentTwoClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentTwoClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractParentTwoClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentTwoClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractSubclass.java deleted file mode 100644 index b1f9a47b90..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritContractSubclass.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractSubclass extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060e58061001f6000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c8063430fe9c1146041578063825b71d914605d578063887c5838146079575b600080fd5b60476095565b6040518082815260200191505060405180910390f35b6063609e565b6040518082815260200191505060405180910390f35b607f60a7565b6040518082815260200191505060405180910390f35b60006002905090565b60006004905090565b6000600390509056fea265627a7a72315820bfe785f60aa9aa2607f4f53cd9adadc34cdb2ac32f5d768f5f0419e1184da0ef64736f6c63430005110032"; - - public static final String FUNC_GETDATATHREE = "getDataThree"; - - public static final String FUNC_GETDATE = "getDate"; - - public static final String FUNC_GETSUBDATA = "getSubData"; - - protected InheritContractSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDataThree() { - final Function function = new Function(FUNC_GETDATATHREE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSubData() { - final Function function = new Function(FUNC_GETSUBDATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritanceModifier.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritanceModifier.java deleted file mode 100644 index 4f2120e23d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InheritanceModifier.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceModifier extends Contract { - private static final String BINARY = "6080604052600a60005534801561001557600080fd5b5060d2806100246000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80632e2619a3146037578063d46300fd146062575b600080fd5b606060048036036020811015604b57600080fd5b8101908080359060200190929190505050607e565b005b60686094565b6040518082815260200191505060405180910390f35b80600054811060905760016000819055505b5050565b6000805490509056fea265627a7a7231582015c5a94c956780589268064a05e6dee72af4f0989b3ff3cf4b7ee5a622098a2464736f6c63430005110032"; - - public static final String FUNC_GETA = "getA"; - - public static final String FUNC_INHERITANCE = "inheritance"; - - protected InheritanceModifier(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceModifier(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getA() { - final Function function = new Function(FUNC_GETA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inheritance(BigInteger c) { - final Function function = new Function( - FUNC_INHERITANCE, - Arrays.asList(new Uint256(c)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceModifier.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceModifier.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceModifier load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceModifier(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceModifier load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceModifier(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InsertSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InsertSort.java deleted file mode 100644 index dea225348b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InsertSort.java +++ /dev/null @@ -1,86 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InsertSort extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610338806100206000396000f3fe6080604052600436106100295760003560e01c80631df339cf1461002e578063970f17bd146100f0575b600080fd5b6100ee6004803603604081101561004457600080fd5b810190808035906020019064010000000081111561006157600080fd5b82018360208201111561007357600080fd5b8035906020019184602083028401116401000000008311171561009557600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019092919050505061015c565b005b3480156100fc57600080fd5b50610105610239565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561014857808201518184015260208101905061012d565b505050509050019250505060405180910390f35b6000806000600192505b8383101561021b5760008086858151811061017d57fe5b602002602001015190508492505b600183101580156101b157508660018403815181106101a657fe5b602002602001015181125b156101f3578660018403815181106101c557fe5b60200260200101518784815181106101d957fe5b60200260200101818152505082806001900393505061018b565b8087848151811061020057fe5b60200260200101818152505050508280600101935050610166565b8460009080519060200190610231929190610291565b505050505050565b6060600080548060200260200160405190810160405280929190818152602001828054801561028757602002820191906000526020600020905b815481526020019060010190808311610273575b5050505050905090565b8280548282559060005260206000209081019282156102cd579160200282015b828111156102cc5782518255916020019190600101906102b1565b5b5090506102da91906102de565b5090565b61030091905b808211156102fc5760008160009055506001016102e4565b5090565b9056fea265627a7a72315820172e78e540daef47c65be58a77bcd2a1bb2dc838edb55d87cda7dbded646ae7964736f6c63430005110032"; - - public static final String FUNC_OUPUTARRAYS = "OuputArrays"; - - public static final String FUNC_GET_ARR = "get_arr"; - - protected InsertSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InsertSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall OuputArrays(List arr, BigInteger n, BigInteger vonValue) { - final Function function = new Function( - FUNC_OUPUTARRAYS, - Arrays.asList(new DynamicArray( - Int256.class, - com.alaya.abi.solidity.Utils.typeMap(arr, Int256.class)), - new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_arr() { - final Function function = new Function(FUNC_GET_ARR, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InsertSort.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InsertSort.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InsertSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InsertSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InsertSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InsertSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Instructions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Instructions.java deleted file mode 100644 index b87eb9f33f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Instructions.java +++ /dev/null @@ -1,104 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Instructions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610202806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063048a5fed1461005c578063165c4a161461007a5780633408e470146100c65780635a0db89e146100e4578063eb8ac92114610130575b600080fd5b61006461017c565b6040518082815260200191505060405180910390f35b6100b06004803603604081101561009057600080fd5b810190808035906020019092919080359060200190929190505050610189565b6040518082815260200191505060405180910390f35b6100ce610196565b6040518082815260200191505060405180910390f35b61011a600480360360408110156100fa57600080fd5b8101908080359060200190929190803590602001909291905050506101a3565b6040518082815260200191505060405180910390f35b6101666004803603604081101561014657600080fd5b8101908080359060200190929190803590602001909291905050506101b7565b6040518082815260200191505060405180910390f35b6000804790508091505090565b6000818302905092915050565b6000804690508091505090565b60006101af8383610189565b905092915050565b60006101c5600260036101a3565b90509291505056fea265627a7a72315820e33d51fd0d4149d025c242469a53911f796206b3df9297bfbf6ed1b0f08af4fa64736f6c63430005110032"; - - public static final String FUNC_GETCHAINID = "getChainId"; - - public static final String FUNC_GETSELFBALANCE = "getSelfBalance"; - - public static final String FUNC_MULTIPLY = "multiply"; - - public static final String FUNC_TEST = "test"; - - public static final String FUNC_TEST_MUL = "test_mul"; - - protected Instructions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Instructions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getChainId() { - final Function function = new Function(FUNC_GETCHAINID, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSelfBalance() { - final Function function = new Function(FUNC_GETSELFBALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall multiply(BigInteger x, BigInteger y) { - final Function function = new Function( - FUNC_MULTIPLY, - Arrays.asList(new Uint256(x), - new Uint256(y)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall test(BigInteger x, BigInteger y) { - final Function function = new Function( - FUNC_TEST, - Arrays.asList(new Uint256(x), - new Uint256(y)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall test_mul(BigInteger x, BigInteger y) { - final Function function = new Function( - FUNC_TEST_MUL, - Arrays.asList(new Uint256(x), - new Uint256(y)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Instructions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Instructions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Instructions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Instructions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Instructions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Instructions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/IntenalCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/IntenalCall.java deleted file mode 100644 index 35511c8c2e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/IntenalCall.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class IntenalCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060d08061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063569c5f6d146037578063de292789146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596086565b6040518082815260200191505060405180910390f35b600080600190506000600290508082019250505090565b600080600390506093606f565b81029150509056fea265627a7a723158209c839df3ffd91af7689b72c5cbfa4cea03d1f5f4621057e9b889b8289b59fe5f64736f6c63430005110032"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final String FUNC_GETSUM = "getSum"; - - protected IntenalCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected IntenalCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getResult() { - final Function function = new Function(FUNC_GETRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSum() { - final Function function = new Function(FUNC_GETSUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(IntenalCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(IntenalCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static IntenalCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new IntenalCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static IntenalCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new IntenalCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Inter.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Inter.java deleted file mode 100644 index 8efa0735fe..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Inter.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Inter extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610157806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063b8b1feb414610046578063ca77156f14610088578063e2179b8e146100ca575b600080fd5b6100726004803603602081101561005c57600080fd5b81019080803590602001909291905050506100e8565b6040518082815260200191505060405180910390f35b6100b46004803603602081101561009e57600080fd5b81019080803590602001909291905050506100f5565b6040518082815260200191505060405180910390f35b6100d2610102565b6040518082815260200191505060405180910390f35b6000600382019050919050565b6000600282019050919050565b600061011060016002610115565b905090565b600081830190509291505056fea265627a7a7231582042d60cabb9f8af8c998de2d21423a0ca28ef52d867a6afbb10e9e745bd73401c64736f6c63430005110032"; - - public static final String FUNC_FE = "fe"; - - public static final String FUNC_FPUB = "fpub"; - - public static final String FUNC_G = "g"; - - protected Inter(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Inter(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall fe(BigInteger a) { - final Function function = new Function(FUNC_FE, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall fpub(BigInteger a) { - final Function function = new Function(FUNC_FPUB, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall g() { - final Function function = new Function(FUNC_G, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Inter.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Inter.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Inter load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Inter(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Inter load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Inter(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractEnum.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractEnum.java deleted file mode 100644 index ef122f6060..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractEnum.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractEnum extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_GETDEFAULTCHOICE = "getDefaultChoice"; - - protected InterfaceContractEnum(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractEnum(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDefaultChoice() { - final Function function = new Function( - FUNC_GETDEFAULTCHOICE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractEnum.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractEnum.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractEnum load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractEnum(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractEnum load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractEnum(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractEnumTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractEnumTest.java deleted file mode 100644 index 95a08897cb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractEnumTest.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractEnumTest extends Contract { - private static final String BINARY = "60806040526001600060016101000a81548160ff0219169083600281111561002357fe5b021790555034801561003457600080fd5b5061011d806100446000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c806367cb61b6146041578063694ebe4f14606a578063843f7258146072575b600080fd5b6047608e565b60405180826002811115605657fe5b60ff16815260200191505060405180910390f35b607060a4565b005b607860c8565b6040518082815260200191505060405180910390f35b60008060009054906101000a900460ff16905090565b60026000806101000a81548160ff0219169083600281111560c157fe5b0217905550565b60008060019054906101000a900460ff16600281111560e357fe5b90509056fea265627a7a723158203864c08c42316112f604119875355f05af4c2241ea8408ba1f1c25b07cbbf8e964736f6c63430005110032"; - - public static final String FUNC_GETCHOICE = "getChoice"; - - public static final String FUNC_GETDEFAULTCHOICE = "getDefaultChoice"; - - public static final String FUNC_SETLARGE = "setLarge"; - - protected InterfaceContractEnumTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractEnumTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getChoice() { - final Function function = new Function(FUNC_GETCHOICE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDefaultChoice() { - final Function function = new Function( - FUNC_GETDEFAULTCHOICE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setLarge() { - final Function function = new Function( - FUNC_SETLARGE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractEnumTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractEnumTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractEnumTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractEnumTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractEnumTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractEnumTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractInheritMultipleTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractInheritMultipleTest.java deleted file mode 100644 index 8dcca2349a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractInheritMultipleTest.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractInheritMultipleTest extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610118806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806399ecedf6146037578063cad0899b146080575b600080fd5b606a60048036036040811015604b57600080fd5b81019080803590602001909291908035906020019092919050505060c9565b6040518082815260200191505060405180910390f35b60b360048036036040811015609457600080fd5b81019080803590602001909291908035906020019092919050505060d6565b6040518082815260200191505060405180910390f35b6000818303905092915050565b600081830190509291505056fea265627a7a723158202c3606342c820ff914e9efad7ee0f09d08bfb1f8b164883cc893be0e3e5fc74b64736f6c63430005110032"; - - public static final String FUNC_REDUCE = "reduce"; - - public static final String FUNC_SUM = "sum"; - - protected InterfaceContractInheritMultipleTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractInheritMultipleTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall reduce(BigInteger c, BigInteger d) { - final Function function = new Function(FUNC_REDUCE, - Arrays.asList(new Uint256(c), - new Uint256(d)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall sum(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUM, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritMultipleTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritMultipleTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractInheritMultipleTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritMultipleTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractInheritMultipleTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritMultipleTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractInheritOne.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractInheritOne.java deleted file mode 100644 index 0c3c9bbcbf..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractInheritOne.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractInheritOne extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_SUM = "sum"; - - protected InterfaceContractInheritOne(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractInheritOne(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sum(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUM, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritOne.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritOne.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractInheritOne load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritOne(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractInheritOne load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritOne(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractInheritTwo.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractInheritTwo.java deleted file mode 100644 index 5e6d014e58..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractInheritTwo.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractInheritTwo extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_REDUCE = "reduce"; - - protected InterfaceContractInheritTwo(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractInheritTwo(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall reduce(BigInteger c, BigInteger d) { - final Function function = new Function(FUNC_REDUCE, - Arrays.asList(new Uint256(c), - new Uint256(d)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritTwo.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritTwo.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractInheritTwo load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritTwo(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractInheritTwo load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritTwo(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractParent.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractParent.java deleted file mode 100644 index b73acfef45..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractParent.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractParent extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_SUMEXTERNAL = "sumExternal"; - - protected InterfaceContractParent(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractParent(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sumExternal(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUMEXTERNAL, - Arrays.asList(new Int256(a), - new Int256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractParent.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractParent.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractParent load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractParent(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractParent load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractParent(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractParentTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractParentTest.java deleted file mode 100644 index b1fb875396..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractParentTest.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractParentTest extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060b88061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063e288b0b514602d575b600080fd5b606060048036036040811015604157600080fd5b8101908080359060200190929190803590602001909291905050506076565b6040518082815260200191505060405180910390f35b600081830190509291505056fea265627a7a7231582097f93a6952ced46f3e857c6f884903008428d1f0c2ebc2ac37930113a732717064736f6c63430005110032"; - - public static final String FUNC_SUMEXTERNAL = "sumExternal"; - - protected InterfaceContractParentTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractParentTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sumExternal(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUMEXTERNAL, - Arrays.asList(new Int256(a), - new Int256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractParentTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractParentTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractParentTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractParentTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractParentTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractParentTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractStruct.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractStruct.java deleted file mode 100644 index de5f4e25ed..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractStruct.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractStruct extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_GETDEFAULTBOOKID = "getDefaultBookID"; - - protected InterfaceContractStruct(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractStruct(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDefaultBookID() { - final Function function = new Function( - FUNC_GETDEFAULTBOOKID, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractStruct.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractStruct.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractStruct load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractStruct(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractStruct load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractStruct(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractStructTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractStructTest.java deleted file mode 100644 index b49769765c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceContractStructTest.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractStructTest extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610264806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063079d318b14610046578063d629546c14610064578063e36afde31461006e575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c6100ae565b005b61007661017e565b6040518082815260200191505060405180910390f35b600080600080015414156100a357600090506100ab565b600080015490505b90565b6040518060600160405280600181526020016040518060400160405280600681526020017f506c61744f4e000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600f81526020017f506c61744f4e20446573637269626500000000000000000000000000000000008152508152506000808201518160000155602082015181600101908051906020019061015b92919061018a565b50604082015181600201908051906020019061017892919061018a565b50905050565b60008060000154905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106101cb57805160ff19168380011785556101f9565b828001600101855582156101f9579182015b828111156101f85782518255916020019190600101906101dd565b5b509050610206919061020a565b5090565b61022c91905b80821115610228576000816000905550600101610210565b5090565b9056fea265627a7a72315820622bd6b2b4b14a0336654b6e4ffd5873ded4f5abb3950b81f66b20ef1d0391a364736f6c63430005110032"; - - public static final String FUNC_GETBOOKID = "getBookID"; - - public static final String FUNC_GETDEFAULTBOOKID = "getDefaultBookID"; - - public static final String FUNC_SETBOOK = "setBook"; - - protected InterfaceContractStructTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractStructTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBookID() { - final Function function = new Function(FUNC_GETBOOKID, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDefaultBookID() { - final Function function = new Function( - FUNC_GETDEFAULTBOOKID, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setBook() { - final Function function = new Function( - FUNC_SETBOOK, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractStructTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractStructTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractStructTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractStructTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractStructTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractStructTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceDeclaraction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceDeclaraction.java deleted file mode 100644 index 2d33588332..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceDeclaraction.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceDeclaraction extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_TRANSFER = "transfer"; - - protected InterfaceDeclaraction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceDeclaraction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall transfer(String recipient, BigInteger amount) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(recipient), - new com.alaya.abi.solidity.datatypes.generated.Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceDeclaraction.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceDeclaraction.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceDeclaraction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceDeclaraction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceDeclaraction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceDeclaraction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceEnableStructAndenumImpl.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceEnableStructAndenumImpl.java deleted file mode 100644 index 2c54b3916f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/InterfaceEnableStructAndenumImpl.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceEnableStructAndenumImpl extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060d68061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80636ff6560314602d575b600080fd5b60336056565b60405180826001811115604257fe5b60ff16815260200191505060405180910390f35b6000605e6084565b6040518060200160405280600180811115607457fe5b8152509050806000015191505090565b604051806020016040528060006001811115609b57fe5b8152509056fea265627a7a723158204dfcc745443b11397fff29dbdc134d22bd1a96114dc82075eddc54610a68b4df64736f6c63430005110032"; - - public static final String FUNC_GETPRODUCTCONDITION = "getProductCondition"; - - protected InterfaceEnableStructAndenumImpl(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceEnableStructAndenumImpl(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getProductCondition() { - final Function function = new Function(FUNC_GETPRODUCTCONDITION, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceEnableStructAndenumImpl.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceEnableStructAndenumImpl.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceEnableStructAndenumImpl load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceEnableStructAndenumImpl(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceEnableStructAndenumImpl load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceEnableStructAndenumImpl(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LibraryStaticUsing.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LibraryStaticUsing.java deleted file mode 100644 index ed0d77e336..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LibraryStaticUsing.java +++ /dev/null @@ -1,115 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LibraryStaticUsing extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610182806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f207564e14610030575b600080fd5b61005c6004803603602081101561004657600080fd5b8101908080359060200190929190505050610076565b604051808215151515815260200191505060405180910390f35b600073__$f6f0e348271ef8c2df8fcbebb7389ae5a8$__63f360234c607b846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156100d057600080fd5b505af41580156100e4573d6000803e3d6000fd5b505050506040513d60208110156100fa57600080fd5b810190808051906020019092919050505090507f0b3bdb70bcb1393d4319be3261bd6ab95e2ea1665e718029d24cecca39e84ccc81604051808215151515815260200191505060405180910390a191905056fea265627a7a723158203e84794e2a2e0e46fa1614e78780eee2ed70c6a362e1ab90449c23085ae7e5f064736f6c63430005110032\n" - + "\n" - + "// $f6f0e348271ef8c2df8fcbebb7389ae5a8$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/9.library/LibraryStaticUsing.sol:BaseStaticLibrary"; - - public static final String FUNC_REGISTER = "register"; - - public static final Event RESULT_EVENT = new Event("Result", - Arrays.>asList(new TypeReference() {})); - ; - - protected LibraryStaticUsing(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LibraryStaticUsing(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getResultEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(RESULT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ResultEventResponse typedResponse = new ResultEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable resultEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ResultEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(RESULT_EVENT, log); - ResultEventResponse typedResponse = new ResultEventResponse(); - typedResponse.log = log; - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable resultEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(RESULT_EVENT)); - return resultEventObservable(filter); - } - - public RemoteCall register(BigInteger value) { - final Function function = new Function( - FUNC_REGISTER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryStaticUsing.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryStaticUsing.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LibraryStaticUsing load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LibraryStaticUsing(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LibraryStaticUsing load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LibraryStaticUsing(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class ResultEventResponse { - public Log log; - - public Boolean result; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LibraryUsingFor.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LibraryUsingFor.java deleted file mode 100644 index 74b6cddb67..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LibraryUsingFor.java +++ /dev/null @@ -1,115 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LibraryUsingFor extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610183806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f207564e14610030575b600080fd5b61005c6004803603602081101561004657600080fd5b8101908080359060200190929190505050610076565b604051808215151515815260200191505060405180910390f35b60008073__$584a9701ddfac9be65fb69ba733b904c16$__637ae1e0589091846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156100d157600080fd5b505af41580156100e5573d6000803e3d6000fd5b505050506040513d60208110156100fb57600080fd5b810190808051906020019092919050505090507f0b3bdb70bcb1393d4319be3261bd6ab95e2ea1665e718029d24cecca39e84ccc81604051808215151515815260200191505060405180910390a191905056fea265627a7a7231582067e98d94510ee5ddd2d74d9718d14845a6918511e12f9dcd5755b16e8c8891ad64736f6c63430005110032\n" - + "\n" - + "// $584a9701ddfac9be65fb69ba733b904c16$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/9.library/LibraryUsingFor.sol:BaseLibrary"; - - public static final String FUNC_REGISTER = "register"; - - public static final Event RESULT_EVENT = new Event("Result", - Arrays.>asList(new TypeReference() {})); - ; - - protected LibraryUsingFor(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LibraryUsingFor(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getResultEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(RESULT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ResultEventResponse typedResponse = new ResultEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable resultEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ResultEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(RESULT_EVENT, log); - ResultEventResponse typedResponse = new ResultEventResponse(); - typedResponse.log = log; - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable resultEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(RESULT_EVENT)); - return resultEventObservable(filter); - } - - public RemoteCall register(BigInteger value) { - final Function function = new Function( - FUNC_REGISTER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryUsingFor.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryUsingFor.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LibraryUsingFor load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LibraryUsingFor(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LibraryUsingFor load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LibraryUsingFor(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class ResultEventResponse { - public Log log; - - public Boolean result; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LibraryUsingForAll.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LibraryUsingForAll.java deleted file mode 100644 index fb0d6e0670..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LibraryUsingForAll.java +++ /dev/null @@ -1,65 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LibraryUsingForAll extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101b0806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063e81cf24c14610030575b600080fd5b6100666004803603604081101561004657600080fd5b810190808035906020019092919080359060200190929190505050610068565b005b60008073__$346361058759d100b4a40afc8b3118136c$__6324fef5c89091856040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156100c357600080fd5b505af41580156100d7573d6000803e3d6000fd5b505050506040513d60208110156100ed57600080fd5b810190808051906020019092919050505090507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811415610159576000829080600181540180825580915050906001820390600052602060002001600090919290919091505550610176565b816000828154811061016757fe5b90600052602060002001819055505b50505056fea265627a7a72315820817045c4d619abfd55810fcca99decc3208179d55e49cb51146626c82f1bcc5764736f6c63430005110032\n" - + "\n" - + "// $346361058759d100b4a40afc8b3118136c$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/9.library/LibraryUserForAll.sol:SearchLibrary"; - - public static final String FUNC_REPLACE = "replace"; - - protected LibraryUsingForAll(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LibraryUsingForAll(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall replace(BigInteger _old, BigInteger _new) { - final Function function = new Function( - FUNC_REPLACE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(_old), - new com.alaya.abi.solidity.datatypes.generated.Uint256(_new)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryUsingForAll.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryUsingForAll.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LibraryUsingForAll load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LibraryUsingForAll(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LibraryUsingForAll load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LibraryUsingForAll(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LoopCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LoopCall.java deleted file mode 100644 index ab289c50fa..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LoopCall.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LoopCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060bb8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80633fde082714602d575b600080fd5b605660048036036020811015604157600080fd5b81019080803590602001909291905050506058565b005b60008090505b8181101560825760008081548092919060010191905055508080600101915050605e565b505056fea265627a7a7231582003b8fb6a82ab1a4d7deb73c5b224f021e25bcf6a20d2852459aecce0a3c20fed64736f6c63430005110032"; - - public static final String FUNC_LOOPCALLTEST = "loopCallTest"; - - protected LoopCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LoopCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall loopCallTest(BigInteger n) { - final Function function = new Function( - FUNC_LOOPCALLTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LoopCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LoopCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LoopCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LoopCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LoopCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LoopCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LoopCallOfView.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LoopCallOfView.java deleted file mode 100644 index 55cdcbcd7d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/LoopCallOfView.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LoopCallOfView extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060cf8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80633fde082714602d575b600080fd5b605660048036036020811015604157600080fd5b8101908080359060200190929190505050606c565b6040518082815260200191505060405180910390f35b60008060008090505b83811015609057818060010192505080806001019150506075565b508091505091905056fea265627a7a72315820fe4c96861f8c74687b023ccfe332c915f4291ae21fb51c322f4682eec584c27164736f6c63430005110032"; - - public static final String FUNC_LOOPCALLTEST = "loopCallTest"; - - protected LoopCallOfView(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LoopCallOfView(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall loopCallTest(BigInteger n) { - final Function function = new Function(FUNC_LOOPCALLTEST, - Arrays.asList(new Uint256(n)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LoopCallOfView.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LoopCallOfView.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LoopCallOfView load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LoopCallOfView(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LoopCallOfView load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LoopCallOfView(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MappingArrayDataTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MappingArrayDataTypeContract.java deleted file mode 100644 index fbf2ff30fb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MappingArrayDataTypeContract.java +++ /dev/null @@ -1,90 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple4; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MappingArrayDataTypeContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061034e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80631175c0491461003b5780638e7f79f6146100a0575b600080fd5b61009e600480360360a081101561005157600080fd5b81019080803560ff169060200190929190803560ff169060200190929190803560ff169060200190929190803560ff169060200190929190803560ff169060200190929190505050610112565b005b6100cf600480360360208110156100b657600080fd5b81019080803560ff169060200190929190505050610137565b604051808560ff1660ff1681526020018460ff1660ff1681526020018360ff1660ff1681526020018260ff1660ff16815260200194505050505060405180910390f35b61011f600086868661021b565b505061012e600286848461021b565b50505050505050565b6000806000806000806002811061014a57fe5b0160008660ff1660ff16815260200190815260200160002060009054906101000a900460ff16600060016002811061017e57fe5b0160008760ff1660ff16815260200190815260200160002060009054906101000a900460ff1660026000600281106101b257fe5b0160008860ff1660ff16815260200190815260200160002060009054906101000a900460ff1660026001600281106101e657fe5b0160008960ff1660ff16815260200190815260200160002060009054906101000a900460ff1693509350935093509193509193565b60008060008660006002811061022d57fe5b0160008760ff1660ff16815260200190815260200160002060009054906101000a900460ff16905060008760016002811061026457fe5b0160008860ff1660ff16815260200190815260200160002060009054906101000a900460ff169050858860006002811061029a57fe5b0160008960ff1660ff16815260200190815260200160002060006101000a81548160ff021916908360ff16021790555084886001600281106102d857fe5b0160008960ff1660ff16815260200190815260200160002060006101000a81548160ff021916908360ff16021790555081819350935050509450949250505056fea265627a7a72315820997ebd435ffcea316ab2815cb062e219a001b84a8efab97a9fb746506d3ed4f864736f6c63430005110032"; - - public static final String FUNC_GETVALUEBYKEY = "getValueByKey"; - - public static final String FUNC_SET = "set"; - - protected MappingArrayDataTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MappingArrayDataTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> getValueByKey(BigInteger key) { - final Function function = new Function(FUNC_GETVALUEBYKEY, - Arrays.asList(new Uint8(key)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple4 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple4( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (BigInteger) results.get(3).getValue()); - } - }); - } - - public RemoteCall set(BigInteger key, BigInteger value_a1, BigInteger value_a2, BigInteger value_b1, BigInteger value_b2) { - final Function function = new Function( - FUNC_SET, - Arrays.asList(new Uint8(key), - new Uint8(value_a1), - new Uint8(value_a2), - new Uint8(value_b1), - new Uint8(value_b2)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MappingArrayDataTypeContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MappingArrayDataTypeContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static MappingArrayDataTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MappingArrayDataTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MappingArrayDataTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MappingArrayDataTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MappingDataTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MappingDataTypeContract.java deleted file mode 100644 index f1f31b2854..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MappingDataTypeContract.java +++ /dev/null @@ -1,183 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple3; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MappingDataTypeContract extends Contract { - private static final String BINARY = "608060405260405180606001604052806040518060400160405280600481526020017f4c7563790000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600481526020017f456c6c610000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600481526020017f4c696c7900000000000000000000000000000000000000000000000000000000815250815250600d906003620000d0929190620000e5565b50348015620000de57600080fd5b5062000278565b82805482825590600052602060002090810192821562000139579160200282015b8281111562000138578251829080519060200190620001279291906200014c565b509160200191906001019062000106565b5b509050620001489190620001d3565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200018f57805160ff1916838001178555620001c0565b82800160010185558215620001c0579182015b82811115620001bf578251825591602001919060010190620001a2565b5b509050620001cf919062000204565b5090565b6200020191905b80821115620001fd5760008181620001f391906200022c565b50600101620001da565b5090565b90565b6200022991905b80821115620002255760008160009055506001016200020b565b5090565b90565b50805460018160011615610100020316600290046000825580601f1062000254575062000275565b601f01602090049060005260206000209081019062000274919062000204565b5b50565b610c7c80620002886000396000f3fe608060405234801561001057600080fd5b50600436106100b35760003560e01c806387c9644b1161007157806387c9644b1461047c578063aad39512146104c2578063bbf722a21461058b578063bebf70f3146105f9578063f480ae4914610653578063fdf8b00814610722576100b3565b806252f6ee146100b8578063566ab1fd146101875780636257a397146101d75780636b8ff5741461029457806376fc59c31461033b57806382bc1149146103c3575b600080fd5b610171600480360360208110156100ce57600080fd5b81019080803590602001906401000000008111156100eb57600080fd5b8201836020820111156100fd57600080fd5b8035906020019184600183028401116401000000008311171561011f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050919291929050505061072c565b6040518082815260200191505060405180910390f35b6101b36004803603602081101561019d57600080fd5b810190808035906020019092919050505061075a565b604051808260028111156101c357fe5b60ff16815260200191505060405180910390f35b610219600480360360208110156101ed57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061077a565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561025957808201518184015260208101905061023e565b50505050905090810190601f1680156102865780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102c0600480360360208110156102aa57600080fd5b810190808035906020019092919050505061082a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103005780820151818401526020810190506102e5565b50505050905090810190601f16801561032d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6103696004803603602081101561035157600080fd5b810190808035151590602001909291905050506108df565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6103ef600480360360208110156103d957600080fd5b81019080803590602001909291905050506108ff565b604051808481526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b8381101561043f578082015181840152602081019050610424565b50505050905090810190601f16801561046c5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b6104a86004803603602081101561049257600080fd5b81019080803590602001909291905050506109ce565b604051808215151515815260200191505060405180910390f35b610510600480360360208110156104d857600080fd5b8101908080357effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690602001909291905050506109ee565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610550578082015181840152602081019050610535565b50505050905090810190601f16801561057d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6105b7600480360360208110156105a157600080fd5b8101908080359060200190929190505050610a9e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61062f6004803603604081101561060f57600080fd5b810190808035906020019092919080359060200190929190505050610ad1565b6040518082600281111561063f57fe5b60ff16815260200191505060405180910390f35b61070c6004803603602081101561066957600080fd5b810190808035906020019064010000000081111561068657600080fd5b82018360208201111561069857600080fd5b803590602001918460018302840111640100000000831117156106ba57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610b00565b6040518082815260200191505060405180910390f35b61072a610b2e565b005b6006818051602081018201805184825260208301602085012081835280955050505050506000915090505481565b600b6020528060005260406000206000915054906101000a900460ff1681565b60086020528060005260406000206000915090508054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108225780601f106107f757610100808354040283529160200191610822565b820191906000526020600020905b81548152906001019060200180831161080557829003601f168201915b505050505081565b6060600c60008381526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108d35780601f106108a8576101008083540402835291602001916108d3565b820191906000526020600020905b8154815290600101906020018083116108b657829003601f168201915b50505050509050919050565b60046020528060005260406000206000915054906101000a900460f81b81565b600a602052806000526040600020600091509050806000015490806001018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109b15780601f10610986576101008083540402835291602001916109b1565b820191906000526020600020905b81548152906001019060200180831161099457829003601f168201915b5050505050908060020160009054906101000a900460ff16905083565b60036020528060005260406000206000915054906101000a900460ff1681565b60056020528060005260406000206000915090508054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a965780601f10610a6b57610100808354040283529160200191610a96565b820191906000526020600020905b815481529060010190602001808311610a7957829003601f168201915b505050505081565b60026020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60096020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b6007818051602081018201805184825260208301602085012081835280955050505050506000915090505481565b60008090505b600d80549050811015610b9857600d8181548110610b4e57fe5b90600052602060002001600c60008381526020019081526020016000209080546001816001161561010002031660029004610b8a929190610b9b565b508080600101915050610b34565b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610bd45780548555610c11565b82800160010185558215610c1157600052602060002091601f016020900482015b82811115610c10578254825591600101919060010190610bf5565b5b509050610c1e9190610c22565b5090565b610c4491905b80821115610c40576000816000905550600101610c28565b5090565b9056fea265627a7a72315820ba8a16ff6e46b2d952d3ba1d17e574e78acd7154f5c22fe90f5639c3afb76bf664736f6c63430005110032"; - - public static final String FUNC_SIZEENUMMAP = "SizeEnumMap"; - - public static final String FUNC_ADDNAME = "addName"; - - public static final String FUNC_ADDRESSMAP = "addressMap"; - - public static final String FUNC_BOOLMAP = "boolMap"; - - public static final String FUNC_BYTEMAP = "byteMap"; - - public static final String FUNC_BYTESMAP = "bytesMap"; - - public static final String FUNC_GETNAME = "getName"; - - public static final String FUNC_INTMAP = "intMap"; - - public static final String FUNC_PEOPLEMAP = "peopleMap"; - - public static final String FUNC_SIZEMAP = "sizeMap"; - - public static final String FUNC_STRINGMAP = "stringMap"; - - public static final String FUNC_UINTMAP = "uintMap"; - - protected MappingDataTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MappingDataTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall SizeEnumMap(BigInteger param0) { - final Function function = new Function(FUNC_SIZEENUMMAP, - Arrays.asList(new Int256(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall addName() { - final Function function = new Function( - FUNC_ADDNAME, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall addressMap(BigInteger param0) { - final Function function = new Function(FUNC_ADDRESSMAP, - Arrays.asList(new Uint256(param0)), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall boolMap(BigInteger param0) { - final Function function = new Function(FUNC_BOOLMAP, - Arrays.asList(new Int256(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall byteMap(Boolean param0) { - final Function function = new Function(FUNC_BYTEMAP, - Arrays.asList(new Bool(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall bytesMap(String param0) { - final Function function = new Function(FUNC_BYTESMAP, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getName(BigInteger index) { - final Function function = new Function(FUNC_GETNAME, - Arrays.asList(new Uint256(index)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall intMap(String param0) { - final Function function = new Function(FUNC_INTMAP, - Arrays.asList(new Utf8String(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> peopleMap(BigInteger param0) { - final Function function = new Function(FUNC_PEOPLEMAP, - Arrays.asList(new Int256(param0)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue(), - (Boolean) results.get(2).getValue()); - } - }); - } - - public RemoteCall sizeMap(BigInteger param0, BigInteger param1) { - final Function function = new Function(FUNC_SIZEMAP, - Arrays.asList(new Int256(param0), - new Int256(param1)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall stringMap(byte[] param0) { - final Function function = new Function(FUNC_STRINGMAP, - Arrays.asList(new Bytes1(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall uintMap(byte[] param0) { - final Function function = new Function(FUNC_UINTMAP, - Arrays.asList(new DynamicBytes(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MappingDataTypeContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MappingDataTypeContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static MappingDataTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MappingDataTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MappingDataTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MappingDataTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MathAndCryptographicFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MathAndCryptographicFunctions.java deleted file mode 100644 index 0e86b995e9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MathAndCryptographicFunctions.java +++ /dev/null @@ -1,110 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MathAndCryptographicFunctions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610387806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806301c740441461006757806301f56b78146100855780635b4aa3ee14610114578063aa4e874414610132578063cc98f30e14610150578063f9b416911461016e575b600080fd5b61006f61018c565b6040518082815260200191505060405180910390f35b6100d26004803603608081101561009b57600080fd5b8101908080359060200190929190803560ff1690602001909291908035906020019092919080359060200190929190505050610206565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61011c61027e565b6040518082815260200191505060405180910390f35b61013a6102bb565b6040518082815260200191505060405180910390f35b6101586102d0565b6040518082815260200191505060405180910390f35b61017661033d565b6040518082815260200191505060405180910390f35b6000600260405180807f41424300000000000000000000000000000000000000000000000000000000008152506003019050602060405180830381855afa1580156101db573d6000803e3d6000fd5b5050506040513d60208110156101f057600080fd5b8101908080519060200190929190505050905090565b60008060018686868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610266573d6000803e3d6000fd5b50505060206040510351905080915050949350505050565b600060405180807f414243000000000000000000000000000000000000000000000000000000000081525060030190506040518091039020905090565b60006003806102c657fe5b6003600209905090565b6000600360405180807f41424300000000000000000000000000000000000000000000000000000000008152506003019050602060405180830381855afa15801561031f573d6000803e3d6000fd5b5050506040515160601b6bffffffffffffffffffffffff1916905090565b600060038061034857fe5b600360020890509056fea265627a7a72315820a6ee297d61430fa477882eabce077500ec6ca199c9b1b714978ba5c983472a6264736f6c63430005110032"; - - public static final String FUNC_CALLADDMOD = "callAddMod"; - - public static final String FUNC_CALLECRECOVER = "callEcrecover"; - - public static final String FUNC_CALLKECCAK256 = "callKeccak256"; - - public static final String FUNC_CALLMULMOD = "callMulMod"; - - public static final String FUNC_CALLRIPEMD160 = "callRipemd160"; - - public static final String FUNC_CALLSHA256 = "callSha256"; - - protected MathAndCryptographicFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MathAndCryptographicFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callAddMod() { - final Function function = new Function(FUNC_CALLADDMOD, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall callEcrecover(byte[] hash, BigInteger v, byte[] r, byte[] s) { - final Function function = new Function(FUNC_CALLECRECOVER, - Arrays.asList(new Bytes32(hash), - new com.alaya.abi.solidity.datatypes.generated.Uint8(v), - new Bytes32(r), - new Bytes32(s)), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall callKeccak256() { - final Function function = new Function(FUNC_CALLKECCAK256, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall callMulMod() { - final Function function = new Function(FUNC_CALLMULMOD, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall callRipemd160() { - final Function function = new Function(FUNC_CALLRIPEMD160, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall callSha256() { - final Function function = new Function(FUNC_CALLSHA256, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MathAndCryptographicFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MathAndCryptographicFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static MathAndCryptographicFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MathAndCryptographicFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MathAndCryptographicFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MathAndCryptographicFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Modifiers.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Modifiers.java deleted file mode 100644 index 7badc77785..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Modifiers.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Modifiers extends Contract { - private static final String BINARY = "6080604052600a600055348015601457600080fd5b5060c1806100236000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806366e41cb71460375780636b59084d146053575b600080fd5b603d605b565b6040518082815260200191505060405180910390f35b60596064565b005b60008054905090565b6000546000819050600080549050600c600081905550506000549050600b600081905550505056fea265627a7a72315820576bc351eea344908e41e531502a56d04f1917b0d89a793e1f80c83f1261278764736f6c63430005110032"; - - public static final String FUNC_TEST1 = "test1"; - - public static final String FUNC_TEST2 = "test2"; - - protected Modifiers(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Modifiers(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall test1() { - final Function function = new Function( - FUNC_TEST1, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall test2() { - final Function function = new Function(FUNC_TEST2, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Modifiers.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Modifiers.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Modifiers load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Modifiers(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Modifiers load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Modifiers(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MsgSenderBelongToPayable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MsgSenderBelongToPayable.java deleted file mode 100644 index 2f8880d645..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MsgSenderBelongToPayable.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MsgSenderBelongToPayable extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610111806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063485a584b1460375780639e45593914607f575b600080fd5b603d60c7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b608560cf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600033905090565b600080339050309150509056fea265627a7a7231582078d6bfd5fc0ba0a8eaf2293aefac67397ad2630ead44a9ba54f84c3ecc722fa764736f6c63430005110032"; - - public static final String FUNC_GETCONTRACTADDR = "getContractAddr"; - - public static final String FUNC_GETMSGSENDERADDR = "getMsgSenderAddr"; - - protected MsgSenderBelongToPayable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MsgSenderBelongToPayable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getContractAddr() { - final Function function = new Function(FUNC_GETCONTRACTADDR, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getMsgSenderAddr() { - final Function function = new Function(FUNC_GETMSGSENDERADDR, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MsgSenderBelongToPayable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MsgSenderBelongToPayable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static MsgSenderBelongToPayable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MsgSenderBelongToPayable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MsgSenderBelongToPayable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MsgSenderBelongToPayable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MulicPointBaseConstructorWay1.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MulicPointBaseConstructorWay1.java deleted file mode 100644 index 3a54e0f55a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MulicPointBaseConstructorWay1.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MulicPointBaseConstructorWay1 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50600a80600081905550506101228061002a6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80630dbe671f14603757806382ab890a146053575b600080fd5b603d60c5565b6040518082815260200191505060405180910390f35b607c60048036036020811015606757600080fd5b810190808035906020019092919050505060cb565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b60005481565b600080826000808282540192505081905550336000548191509150915091509156fea265627a7a72315820474fd0ce25b508b712f09b703524c39e8ac6d4370bb87c0ec6fb05f481f4dd5864736f6c63430005110032"; - - public static final String FUNC_A = "a"; - - public static final String FUNC_UPDATE = "update"; - - protected MulicPointBaseConstructorWay1(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MulicPointBaseConstructorWay1(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MulicPointBaseConstructorWay1.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MulicPointBaseConstructorWay1.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static MulicPointBaseConstructorWay1 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MulicPointBaseConstructorWay1(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MulicPointBaseConstructorWay1 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MulicPointBaseConstructorWay1(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MulicPointBaseConstructorWay2.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MulicPointBaseConstructorWay2.java deleted file mode 100644 index e31a4a5c3d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/MulicPointBaseConstructorWay2.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MulicPointBaseConstructorWay2 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516101bc3803806101bc8339818101604052602081101561003357600080fd5b810190808051906020019092919050505080810280600081905550505061015d8061005f6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630dbe671f1461004657806382ab890a14610064578063d46300fd146100d9575b600080fd5b61004e6100f7565b6040518082815260200191505060405180910390f35b6100906004803603602081101561007a57600080fd5b81019080803590602001909291905050506100fd565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6100e161011f565b6040518082815260200191505060405180910390f35b60005481565b6000808260008082825401925050819055503360005481915091509150915091565b6000805490509056fea265627a7a72315820f303c3f30e0d5d97b03a0272b1e157b916000f84ba0fec7b2878025e1f194fc564736f6c63430005110032"; - - public static final String FUNC_A = "a"; - - public static final String FUNC_GETA = "getA"; - - public static final String FUNC_UPDATE = "update"; - - protected MulicPointBaseConstructorWay2(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MulicPointBaseConstructorWay2(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _y) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_y))); - return deployRemoteCall(MulicPointBaseConstructorWay2.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _y) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_y))); - return deployRemoteCall(MulicPointBaseConstructorWay2.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getA() { - final Function function = new Function(FUNC_GETA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static MulicPointBaseConstructorWay2 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MulicPointBaseConstructorWay2(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MulicPointBaseConstructorWay2 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MulicPointBaseConstructorWay2(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/NamedCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/NamedCall.java deleted file mode 100644 index fb8b6e362b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/NamedCall.java +++ /dev/null @@ -1,91 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class NamedCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610104806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063d4b7eac3146037578063e9e3370e146087575b600080fd5b606a60048036036040811015604b57600080fd5b81019080803590602001909291908035906020019092919050505060aa565b604051808381526020018281526020019250505060405180910390f35b608d60ba565b604051808381526020018281526020019250505060405180910390f35b6000808284915091509250929050565b60008060c76001600260aa565b91509150909156fea265627a7a7231582054ec2e9e93ee5714f9f3af167aae795623bb75cdd9190230fce4e5496a4fb66764736f6c63430005110032"; - - public static final String FUNC_EXCHANGE = "exchange"; - - public static final String FUNC_NAMECALL = "namecall"; - - protected NamedCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected NamedCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> exchange(BigInteger key, BigInteger value) { - final Function function = new Function(FUNC_EXCHANGE, - Arrays.asList(new Uint256(key), - new Uint256(value)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> namecall() { - final Function function = new Function(FUNC_NAMECALL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(NamedCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(NamedCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static NamedCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new NamedCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static NamedCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new NamedCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/NewTargetCreateContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/NewTargetCreateContract.java deleted file mode 100644 index 7eb4ece88b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/NewTargetCreateContract.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class NewTargetCreateContract extends Contract { - private static final String BINARY = "60806040526040516101043803806101048339818101604052602081101561002657600080fd5b810190808051906020019092919050505080600081905550346001819055505060b0806100546000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80630c55699c146037578063aa8c217c146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596075565b6040518082815260200191505060405180910390f35b60005481565b6001548156fea265627a7a723158202206163c67423ec8f497273d5293928ce55f70265c4296a4f30bf7b736ad554f64736f6c63430005110032"; - - public static final String FUNC_AMOUNT = "amount"; - - public static final String FUNC_X = "x"; - - protected NewTargetCreateContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected NewTargetCreateContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, BigInteger _a) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_a))); - return deployRemoteCall(NewTargetCreateContract.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, BigInteger _a) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_a))); - return deployRemoteCall(NewTargetCreateContract.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall amount() { - final Function function = new Function(FUNC_AMOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static NewTargetCreateContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new NewTargetCreateContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static NewTargetCreateContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new NewTargetCreateContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/NoParenthesesConstructor.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/NoParenthesesConstructor.java deleted file mode 100644 index 2472e09ac7..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/NoParenthesesConstructor.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class NoParenthesesConstructor extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516100e13803806100e18339818101604052602081101561003357600080fd5b8101908080519060200190929190505050600180600081905550505060848061005d6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80630dbe671f14602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000548156fea265627a7a723158207548c59930fb3f925f3189b697207ac8f4b41af0143f6b40227a5c0200b39e7b64736f6c63430005110032"; - - public static final String FUNC_A = "a"; - - protected NoParenthesesConstructor(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected NoParenthesesConstructor(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _b) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_b))); - return deployRemoteCall(NoParenthesesConstructor.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _b) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_b))); - return deployRemoteCall(NoParenthesesConstructor.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static NoParenthesesConstructor load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new NoParenthesesConstructor(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static NoParenthesesConstructor load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new NoParenthesesConstructor(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Overload.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Overload.java deleted file mode 100644 index ab3d1e34cd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Overload.java +++ /dev/null @@ -1,100 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Overload extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806313d1aa2e1461005c57806315d55b28146100a8578063587dcf18146100c6578063b3de648b146100e4578063e2179b8e14610126575b600080fd5b6100926004803603604081101561007257600080fd5b810190808035906020019092919080359060200190929190505050610130565b6040518082815260200191505060405180910390f35b6100b0610140565b6040518082815260200191505060405180910390f35b6100ce610146565b6040518082815260200191505060405180910390f35b610110600480360360208110156100fa57600080fd5b810190808035906020019092919050505061014f565b6040518082815260200191505060405180910390f35b61012e61015c565b005b6000818301905080905092915050565b60005481565b60008054905090565b6000819050809050919050565b600061016a60026003610130565b9050610176600261014f565b9050806000819055505056fea265627a7a7231582039789ddfad98840dff89f66a958edc19fc2fdef1e9185c6f41a2597384e720f364736f6c63430005110032"; - - public static final String FUNC_F = "f"; - - public static final String FUNC_G = "g"; - - public static final String FUNC_GETRE = "getRe"; - - public static final String FUNC_RE = "re"; - - protected Overload(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Overload(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_F, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall f(BigInteger a) { - final Function function = new Function( - FUNC_F, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall g() { - final Function function = new Function( - FUNC_G, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getRe() { - final Function function = new Function(FUNC_GETRE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall re() { - final Function function = new Function(FUNC_RE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Overload.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Overload.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Overload load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Overload(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Overload load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Overload(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Payable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Payable.java deleted file mode 100644 index b9b33a6cab..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Payable.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Payable extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610177806100206000396000f3fe6080604052600436106100295760003560e01c80631a6952301461002e578063c84aae1714610072575b600080fd5b6100706004803603602081101561004457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506100d7565b005b34801561007e57600080fd5b506100c16004803603602081101561009557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610121565b6040518082815260200191505060405180910390f35b8073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561011d573d6000803e3d6000fd5b5050565b60008173ffffffffffffffffffffffffffffffffffffffff1631905091905056fea265627a7a7231582038856e4f9d21ca391a738b9bc160d6e54da17fb2485ef7f62a3b3d488c11e0b864736f6c63430005110032"; - - public static final String FUNC_GETBALANCES = "getBalances"; - - public static final String FUNC_TRANSFER = "transfer"; - - protected Payable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Payable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBalances(String addr) { - final Function function = new Function(FUNC_GETBALANCES, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transfer(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Payable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Payable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Payable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Payable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Payable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Payable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PersonPublic.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PersonPublic.java deleted file mode 100644 index 32caca2f2c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PersonPublic.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PersonPublic extends Contract { - private static final String BINARY = "6080604052601d60018190555060aa6002819055506040518060400160405280600981526020017f4c75636b7920646f6700000000000000000000000000000000000000000000008152506003908051906020019061005f9291906100b1565b506040518060400160405280600a81526020017f323031312d30312d303100000000000000000000000000000000000000000000815250600090805190602001906100ab9291906100b1565b50610156565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100f257805160ff1916838001178555610120565b82800160010185558215610120579182015b8281111561011f578251825591602001919060010190610104565b5b50905061012d9190610131565b5090565b61015391905b8082111561014f576000816000905550600101610137565b5090565b90565b610187806101656000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063262a9dff14610046578063beb0067e14610064578063f377bd5b146100e7575b600080fd5b61004e610105565b6040518082815260200191505060405180910390f35b61006c61010f565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100ac578082015181840152602081019050610091565b50505050905090810190601f1680156100d95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100ef61014c565b6040518082815260200191505060405180910390f35b6000600154905090565b60606040518060400160405280600a81526020017f323032302d31322d313500000000000000000000000000000000000000000000815250905090565b6001548156fea265627a7a72315820e6c8db8a323d164dccb50ba1af9c44d18b01ab3dfa77e6899a39803232f2e18a64736f6c63430005110032"; - - public static final String FUNC__AGE = "_age"; - - public static final String FUNC_AGE = "age"; - - public static final String FUNC_BIRTHDAY = "birthDay"; - - protected PersonPublic(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PersonPublic(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall _age() { - final Function function = new Function(FUNC__AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall age() { - final Function function = new Function(FUNC_AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall birthDay() { - final Function function = new Function(FUNC_BIRTHDAY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PersonPublic.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PersonPublic.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PersonPublic load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PersonPublic(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PersonPublic load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PersonPublic(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PlatONToken.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PlatONToken.java deleted file mode 100644 index 727d7a52ba..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PlatONToken.java +++ /dev/null @@ -1,108 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PlatONToken extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610189806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063249bb3731461006757806375efc40d14610085578063c2412676146100a3578063c951fdf6146100ad578063d87698ae146100cb578063eecb9ce9146100e9575b600080fd5b61006f610107565b6040518082815260200191505060405180910390f35b61008d610119565b6040518082815260200191505060405180910390f35b6100ab610128565b005b6100b5610132565b6040518082815260200191505060405180910390f35b6100d361013d565b6040518082815260200191505060405180910390f35b6100f1610143565b6040518082815260200191505060405180910390f35b6000670de0b6b3a76400008101905090565b600064e8d4a510008101905090565b6001600081905550565b600060018101905090565b60005481565b600066038d7ea4c68000810190509056fea265627a7a72315820f5ccdbb6db60ddf294c9fbff7a5a8bff43a0a57532213cf0dfe98e256a97082c64736f6c63430005110032"; - - public static final String FUNC_PFINNEY = "Pfinney"; - - public static final String FUNC_PLAT = "Plat"; - - public static final String FUNC_PSZABO = "Pszabo"; - - public static final String FUNC_PVON = "Pvon"; - - public static final String FUNC_TOKEN = "Token"; - - public static final String FUNC_PLATONTOKEN = "platontoken"; - - protected PlatONToken(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PlatONToken(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall Pfinney() { - final Function function = new Function(FUNC_PFINNEY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall Plat() { - final Function function = new Function(FUNC_PLAT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall Pszabo() { - final Function function = new Function(FUNC_PSZABO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall Pvon() { - final Function function = new Function(FUNC_PVON, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall Token() { - final Function function = new Function( - FUNC_TOKEN, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platontoken() { - final Function function = new Function(FUNC_PLATONTOKEN, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatONToken.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatONToken.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PlatONToken load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PlatONToken(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PlatONToken load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PlatONToken(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PlatonInner.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PlatonInner.java deleted file mode 100644 index 5eab57cc99..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PlatonInner.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PlatonInner extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610391806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063eb51cc911461003b578063f40ae8d9146100be575b600080fd5b610043610199565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610197600480360360408110156100d457600080fd5b81019080803590602001906401000000008111156100f157600080fd5b82018360208201111561010357600080fd5b8035906020019184600183028401116401000000008311171561012557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061023b565b005b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102315780601f1061020657610100808354040283529160200191610231565b820191906000526020600020905b81548152906001019060200180831161021457829003601f168201915b5050505050905090565b6000825190506000606060008084602088016000885af161025857fe5b3d9150816040519080825280601f01601f19166020018201604052801561028e5781602001600182028038833980820191505090505b5090503d6000602083013e80600090805190602001906102af9291906102b7565b505050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106102f857805160ff1916838001178555610326565b82800160010185558215610326579182015b8281111561032557825182559160200191906001019061030a565b5b5090506103339190610337565b5090565b61035991905b8082111561035557600081600090555060010161033d565b5090565b9056fea265627a7a72315820602889761d84f835e69d0027a094b5a0f6406c8ac08d7fdef3a823109d92c3c164736f6c63430005110032"; - - public static final String FUNC_ASSEMBLYCALLPPOS = "assemblyCallppos"; - - public static final String FUNC_GETRETURNVALUE = "getReturnValue"; - - protected PlatonInner(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PlatonInner(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall assemblyCallppos(byte[] data, String addr) { - final Function function = new Function( - FUNC_ASSEMBLYCALLPPOS, - Arrays.asList(new DynamicBytes(data), - new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getReturnValue() { - final Function function = new Function(FUNC_GETRETURNVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatonInner.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatonInner.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PlatonInner load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PlatonInner(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PlatonInner load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PlatonInner(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PlatonUnit.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PlatonUnit.java deleted file mode 100644 index 14097d273a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PlatonUnit.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PlatonUnit extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060e68061001f6000396000f3fe60806040526004361060265760003560e01c806312065fe0146038578063b69ef8a8146060575b6030600054346088565b600081905550005b348015604357600080fd5b50604a60a3565b6040518082815260200191505060405180910390f35b348015606b57600080fd5b50607260ab565b6040518082815260200191505060405180910390f35b600080828401905083811015609957fe5b8091505092915050565b600047905090565b6000548156fea265627a7a72315820099711d417e117a37979ef59733f47e06ce38ceffeb896284c33cca9d2cede9364736f6c63430005110032"; - - public static final String FUNC_BALANCE = "balance"; - - public static final String FUNC_GETBALANCE = "getBalance"; - - protected PlatonUnit(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PlatonUnit(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall balance() { - final Function function = new Function(FUNC_BALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBalance() { - final Function function = new Function(FUNC_GETBALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatonUnit.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatonUnit.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PlatonUnit load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PlatonUnit(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PlatonUnit load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PlatonUnit(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PramaAndReturns.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PramaAndReturns.java deleted file mode 100644 index 5a2254b803..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/PramaAndReturns.java +++ /dev/null @@ -1,153 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.StaticArray3; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PramaAndReturns extends Contract { - private static final String BINARY = "60806040526040518060400160405280600d81526020017f576861742773207570206d616e000000000000000000000000000000000000008152506000908051906020019061004f929190610062565b5034801561005c57600080fd5b50610107565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100a357805160ff19168380011785556100d1565b828001600101855582156100d1579182015b828111156100d05782518255916020019190600101906100b5565b5b5090506100de91906100e2565b5090565b61010491905b808211156101005760008160009055506001016100e8565b5090565b90565b610563806101166000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806386b714e21161005b57806386b714e2146102905780639e2eea06146102ae578063e93314ab146102fa578063f8adff321461031857610088565b80630965e1451461008d5780631aa72bf81461012e57806354d410c8146101b15780637f0ffe3114610258575b600080fd5b6100f0600480360360608110156100a357600080fd5b8101908080606001906003806020026040519081016040528092919082600360200280828437600081840152601f19601f820116905080830192505050505050919291929050505061035a565b6040518082600360200280838360005b8381101561011b578082015181840152602081019050610100565b5050505090500191505060405180910390f35b610136610382565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561017657808201518184015260208101905061015b565b50505050905090810190601f1680156101a35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101b9610424565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b838110156102005780820151818401526020810190506101e5565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610242578082015181840152602081019050610227565b5050505090500194505050505060405180910390f35b61028e6004803603604081101561026e57600080fd5b8101908080359060200190929190803590602001909291905050506104d9565b005b6102986104e4565b6040518082815260200191505060405180910390f35b6102e4600480360360408110156102c457600080fd5b8101908080359060200190929190803590602001909291905050506104ea565b6040518082815260200191505060405180910390f35b6103026104f5565b6040518082815260200191505060405180910390f35b6103446004803603602081101561032e57600080fd5b81019080803590602001909291905050506104ff565b6040518082815260200191505060405180910390f35b61036261050c565b60038260026003811061037157fe5b602002018181525050819050919050565b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561041a5780601f106103ef5761010080835404028352916020019161041a565b820191906000526020600020905b8154815290600101906020018083116103fd57829003601f168201915b5050505050905090565b606080606060036040519080825280602002602001820160405280156104595781602001602082028038833980820191505090505b50905060018160008151811061046b57fe5b60200260200101818152505060028160018151811061048657fe5b6020026020010181815250506003816002815181106104a157fe5b6020026020010181815250506060819050600a826000815181106104c157fe5b60200260200101818152505081819350935050509091565b816001819055505050565b60015481565b600082905092915050565b6000600154905090565b6000819050809050919050565b604051806060016040528060039060208202803883398082019150509050509056fea265627a7a723158203f0895d27003d71485ba7c77566bba71ce91a5e7dc39738cd015926ba5b325c164736f6c63430005110032"; - - public static final String FUNC_INPUTPARAM = "InputParam"; - - public static final String FUNC_IUPUTARRAY = "IuputArray"; - - public static final String FUNC_NOOUTPUT = "NoOutput"; - - public static final String FUNC_OMITPARAM = "OmitParam"; - - public static final String FUNC_OUPUTARRAYS = "OuputArrays"; - - public static final String FUNC_OUPUTSTRING = "OuputString"; - - public static final String FUNC_GETS = "getS"; - - public static final String FUNC_S = "s"; - - protected PramaAndReturns(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PramaAndReturns(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall InputParam(BigInteger a) { - final Function function = new Function(FUNC_INPUTPARAM, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall IuputArray(List y) { - final Function function = new Function(FUNC_IUPUTARRAY, - Arrays.asList(new StaticArray3( - Uint256.class, - com.alaya.abi.solidity.Utils.typeMap(y, Uint256.class))), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall NoOutput(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_NOOUTPUT, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall OmitParam(BigInteger y, BigInteger param1) { - final Function function = new Function(FUNC_OMITPARAM, - Arrays.asList(new Uint256(y), - new Uint256(param1)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall, List>> OuputArrays() { - final Function function = new Function(FUNC_OUPUTARRAYS, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {}, new TypeReference>() {})); - return new RemoteCall, List>>( - new Callable, List>>() { - @Override - public Tuple2, List> call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2, List>( - convertToNative((List) results.get(0).getValue()), - convertToNative((List) results.get(1).getValue())); - } - }); - } - - public RemoteCall OuputString() { - final Function function = new Function(FUNC_OUPUTSTRING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getS() { - final Function function = new Function(FUNC_GETS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall s() { - final Function function = new Function(FUNC_S, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PramaAndReturns.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PramaAndReturns.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PramaAndReturns load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PramaAndReturns(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PramaAndReturns load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PramaAndReturns(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Precompiled.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Precompiled.java deleted file mode 100644 index d16894b0e7..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Precompiled.java +++ /dev/null @@ -1,207 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.StaticArray2; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Precompiled extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610f0e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c8063af13657c1161008c578063c3e6b01811610066578063c3e6b018146104d4578063caa260321461052a578063dd0678f11461065e578063ec8b466a1461072d576100cf565b8063af13657c1461035f578063b2acd5091461037d578063be3105401461044c576100cf565b806301f56b78146100d457806341be3d52146101635780636f29e2d7146101a95780637e59b08a146101c7578063897bf0401461024a5780638af606d414610290575b600080fd5b610121600480360360808110156100ea57600080fd5b8101908080359060200190929190803560ff16906020019092919080359060200190929190803590602001909291905050506107ab565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61016b61081e565b6040518082600260200280838360005b8381101561019657808201518184015260208101905061017b565b5050505090500191505060405180910390f35b6101b1610868565b6040518082815260200191505060405180910390f35b6101cf610872565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561020f5780820151818401526020810190506101f4565b50505050905090810190601f16801561023c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610252610914565b6040518082600260200280838360005b8381101561027d578082015181840152602081019050610262565b5050505090500191505060405180910390f35b610349600480360360208110156102a657600080fd5b81019080803590602001906401000000008111156102c357600080fd5b8201836020820111156102d557600080fd5b803590602001918460018302840111640100000000831117156102f757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050919291929050505061095f565b6040518082815260200191505060405180910390f35b6103676109f9565b6040518082815260200191505060405180910390f35b6104366004803603602081101561039357600080fd5b81019080803590602001906401000000008111156103b057600080fd5b8201836020820111156103c257600080fd5b803590602001918460018302840111640100000000831117156103e457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610a03565b6040518082815260200191505060405180910390f35b6104966004803603608081101561046257600080fd5b8101908080359060200190929190803590602001909291908035906020019092919080359060200190929190505050610a59565b6040518082600260200280838360005b838110156104c15780820151818401526020810190506104a6565b5050505090500191505060405180910390f35b610514600480360360608110156104ea57600080fd5b81019080803590602001909291908035906020019092919080359060200190929190505050610b01565b6040518082815260200191505060405180910390f35b6105e36004803603602081101561054057600080fd5b810190808035906020019064010000000081111561055d57600080fd5b82018360208201111561056f57600080fd5b8035906020019184600183028401116401000000008311171561059157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610b5d565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610623578082015181840152602081019050610608565b50505050905090810190601f1680156106505780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6107176004803603602081101561067457600080fd5b810190808035906020019064010000000081111561069157600080fd5b8201836020820111156106a357600080fd5b803590602001918460018302840111640100000000831117156106c557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610bd0565b6040518082815260200191505060405180910390f35b61076d6004803603606081101561074357600080fd5b81019080803590602001909291908035906020019092919080359060200190929190505050610c77565b6040518082600260200280838360005b8381101561079857808201518184015260208101905061077d565b5050505090500191505060405180910390f35b600060018585858560405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa15801561080a573d6000803e3d6000fd5b505050602060405103519050949350505050565b610826610d07565b6002808060200260405190810160405280929190826002801561085e576020028201915b81548152602001906001019080831161084a575b5050505050905090565b6000600154905090565b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561090a5780601f106108df5761010080835404028352916020019161090a565b820191906000526020600020905b8154815290600101906020018083116108ed57829003601f168201915b5050505050905090565b61091c610d29565b6004600280602002604051908101604052809291908260028015610955576020028201915b815481526020019060010190808311610941575b5050505050905090565b60006003826040518082805190602001908083835b602083106109975780518252602082019150602081019050602083039250610974565b6001836020036101000a038019825116818451168082178552505050505050905001915050602060405180830381855afa1580156109d9573d6000803e3d6000fd5b5050506040515160601b6bffffffffffffffffffffffff19169050919050565b6000600654905090565b60008082519050600060c08281610a1657fe5b0614610a2157600080fd5b6040516020818360208701600060085af18060008114610a445782519450610a49565b600080fd5b5050508160068190555050919050565b610a61610d07565b610a69610d4b565b8581600060048110610a7757fe5b6020020181815250508481600160048110610a8e57fe5b6020020181815250508381600260048110610aa557fe5b6020020181815250508281600360048110610abc57fe5b602002018181525050604082608083600060065af18060008114610adf57610ae4565b600080fd5b5050816002906002610af7929190610d6d565b5050949350505050565b600060405160208152602080820152602060408201528460608201528360808201528260a082015260208160c083600060055af18060008114610b475782519350610b4c565b600080fd5b505050806001819055509392505050565b60608082516040519080825280601f01601f191660200182016040528015610b945781602001600182028038833980820191505090505b509050825180602083018260208701600060045af1610baf57fe5b508060009080519060200190610bc6929190610dad565b5080915050919050565b60006002826040518082805190602001908083835b60208310610c085780518252602082019150602081019050602083039250610be5565b6001836020036101000a038019825116818451168082178552505050505050905001915050602060405180830381855afa158015610c4a573d6000803e3d6000fd5b5050506040513d6020811015610c5f57600080fd5b81019080805190602001909291905050509050919050565b610c7f610d29565b610c87610e2d565b8481600060038110610c9557fe5b6020020181815250508381600160038110610cac57fe5b6020020181815250508281600260038110610cc357fe5b602002018181525050604082606083600060075af18060008114610ce657610ceb565b600080fd5b5050816004906002610cfe929190610e4f565b50509392505050565b6040518060400160405280600290602082028038833980820191505090505090565b6040518060400160405280600290602082028038833980820191505090505090565b6040518060800160405280600490602082028038833980820191505090505090565b8260028101928215610d9c579160200282015b82811115610d9b578251825591602001919060010190610d80565b5b509050610da99190610e8f565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610dee57805160ff1916838001178555610e1c565b82800160010185558215610e1c579182015b82811115610e1b578251825591602001919060010190610e00565b5b509050610e299190610e8f565b5090565b6040518060600160405280600390602082028038833980820191505090505090565b8260028101928215610e7e579160200282015b82811115610e7d578251825591602001919060010190610e62565b5b509050610e8b9190610eb4565b5090565b610eb191905b80821115610ead576000816000905550600101610e95565b5090565b90565b610ed691905b80821115610ed2576000816000905550600101610eba565b5090565b9056fea265627a7a72315820dfd4c4a278827e33d4b709a936ee28d7fb7a869351151aa8736dd7287b2c122b64736f6c63430005110032"; - - public static final String FUNC_CALLBIGMODEXP = "callBigModExp"; - - public static final String FUNC_CALLBN256ADD = "callBn256Add"; - - public static final String FUNC_CALLBN256PAIRING = "callBn256Pairing"; - - public static final String FUNC_CALLBN256SCALARMUL = "callBn256ScalarMul"; - - public static final String FUNC_CALLDATACOPY = "callDatacopy"; - - public static final String FUNC_CALLECRECOVER = "callEcrecover"; - - public static final String FUNC_CALLRIPEMD160 = "callRipemd160"; - - public static final String FUNC_CALLSHA256 = "callSha256"; - - public static final String FUNC_GETCALLBIGMODEXPVALUE = "getCallBigModExpValue"; - - public static final String FUNC_GETCALLBN256ADDVALUES = "getCallBn256AddValues"; - - public static final String FUNC_GETCALLBN256PAIRINGVALUE = "getCallBn256PairingValue"; - - public static final String FUNC_GETCALLBN256SCALARMULVALUES = "getCallBn256ScalarMulValues"; - - public static final String FUNC_GETCALLDATACOPYVALUE = "getCallDatacopyValue"; - - protected Precompiled(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Precompiled(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callBigModExp(byte[] base, byte[] exponent, byte[] modulus) { - final Function function = new Function( - FUNC_CALLBIGMODEXP, - Arrays.asList(new Bytes32(base), - new Bytes32(exponent), - new Bytes32(modulus)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callBn256Add(BigInteger ax, BigInteger ay, BigInteger bx, BigInteger by) { - final Function function = new Function( - FUNC_CALLBN256ADD, - Arrays.asList(new Uint256(ax), - new Uint256(ay), - new Uint256(bx), - new Uint256(by)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callBn256Pairing(byte[] input) { - final Function function = new Function( - FUNC_CALLBN256PAIRING, - Arrays.asList(new DynamicBytes(input)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callBn256ScalarMul(byte[] x, byte[] y, byte[] scalar) { - final Function function = new Function( - FUNC_CALLBN256SCALARMUL, - Arrays.asList(new Bytes32(x), - new Bytes32(y), - new Bytes32(scalar)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callDatacopy(byte[] data) { - final Function function = new Function( - FUNC_CALLDATACOPY, - Arrays.asList(new DynamicBytes(data)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callEcrecover(byte[] hash, BigInteger v, byte[] r, byte[] s) { - final Function function = new Function(FUNC_CALLECRECOVER, - Arrays.asList(new Bytes32(hash), - new com.alaya.abi.solidity.datatypes.generated.Uint8(v), - new Bytes32(r), - new Bytes32(s)), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall callRipemd160(byte[] data) { - final Function function = new Function(FUNC_CALLRIPEMD160, - Arrays.asList(new DynamicBytes(data)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall callSha256(byte[] data) { - final Function function = new Function(FUNC_CALLSHA256, - Arrays.asList(new DynamicBytes(data)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getCallBigModExpValue() { - final Function function = new Function(FUNC_GETCALLBIGMODEXPVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getCallBn256AddValues() { - final Function function = new Function(FUNC_GETCALLBN256ADDVALUES, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall getCallBn256PairingValue() { - final Function function = new Function(FUNC_GETCALLBN256PAIRINGVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getCallBn256ScalarMulValues() { - final Function function = new Function(FUNC_GETCALLBN256SCALARMULVALUES, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall getCallDatacopyValue() { - final Function function = new Function(FUNC_GETCALLDATACOPYVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Precompiled.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Precompiled.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Precompiled load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Precompiled(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Precompiled load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Precompiled(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RecursionCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RecursionCall.java deleted file mode 100644 index 8d25976365..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RecursionCall.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RecursionCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060fd8061001f6000396000f3fe60806040526004361060265760003560e01c8063191a62d414602b57806357e98139146053575b600080fd5b348015603657600080fd5b50603d6092565b6040518082815260200191505060405180910390f35b607c60048036036020811015606757600080fd5b8101908080359060200190929190505050609b565b6040518082815260200191505060405180910390f35b60008054905090565b600081600054101560be5760008081546001019190508190555060bc82609b565b505b600054905091905056fea265627a7a72315820da181fefc391b369a9e8081e4e791f80a90b0d29d9ed72d7d7981790f191473664736f6c63430005110032"; - - public static final String FUNC_GET_TOTAL = "get_total"; - - public static final String FUNC_RECURSIONCALLTEST = "recursionCallTest"; - - protected RecursionCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RecursionCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall get_total() { - final Function function = new Function(FUNC_GET_TOTAL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall recursionCallTest(BigInteger n, BigInteger vonValue) { - final Function function = new Function( - FUNC_RECURSIONCALLTEST, - Arrays.asList(new Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RecursionCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RecursionCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RecursionCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RecursionCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RecursionCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RecursionCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RecursiveStorageMemoryComplex.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RecursiveStorageMemoryComplex.java deleted file mode 100644 index 4bc8c4a0b9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RecursiveStorageMemoryComplex.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RecursiveStorageMemoryComplex extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060426000800181905550600260006001018161002d91906101af565b50614200600060010160008154811061004257fe5b906000526020600020906002020160000181905550614201600060010160018154811061006b57fe5b9060005260206000209060020201600001819055506003600060010160008154811061009357fe5b9060005260206000209060020201600101816100af91906101af565b5060008090505b60038110156101145780624200000160006001016000815481106100d657fe5b906000526020600020906002020160010182815481106100f257fe5b90600052602060002090600202016000018190555080806001019150506100b6565b506004600060010160018154811061012857fe5b90600052602060002090600202016001018161014491906101af565b5060008090505b60048110156101a957806242010001600060010160018154811061016b57fe5b9060005260206000209060020201600101828154811061018757fe5b906000526020600020906002020160000181905550808060010191505061014b565b5061023c565b8154818355818111156101dc576002028160020283600052602060002091820191016101db91906101e1565b5b505050565b61021591905b80821115610211576000808201600090556001820160006102089190610218565b506002016101e7565b5090565b90565b508054600082556002029060005260206000209081019061023991906101e1565b50565b61048f8061024b6000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063a9be8c391461003b578063c04062261461009a575b600080fd5b6100436100f9565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561008657808201518184015260208101905061006b565b505050509050019250505060405180910390f35b6100a2610151565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156100e55780820151818401526020810190506100ca565b505050509050019250505060405180910390f35b6060600280548060200260200160405190810160405280929190818152602001828054801561014757602002820191906000526020600020905b815481526020019060010190808311610133575b5050505050905090565b606061015b6102e4565b6000610166906102fe565b905060006101738261021f565b9050806040519080825280602002602001820160405280156101a45781602001602082028038833980820191505090505b50600290805190602001906101ba929190610373565b506101c682600061026f565b50600280548060200260200160405190810160405280929190818152602001828054801561021357602002820191906000526020600020905b8154815260200190600101908083116101ff575b50505050509250505090565b60006001905060008090505b826020015151811015610269576102588360200151828151811061024b57fe5b602002602001015161021f565b82019150808060010191505061022b565b50919050565b600082600001516002838060010194508154811061028957fe5b906000526020600020018190555060008090505b8360200151518110156102da576102cb846020015182815181106102bd57fe5b60200260200101518461026f565b9250808060010191505061029d565b5081905092915050565b604051806040016040528060008152602001606081525090565b6040518060400160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020016000905b828210156103685783829060005260206000209060020201610359906103c0565b81526020019060010190610338565b505050508152505090565b8280548282559060005260206000209081019282156103af579160200282015b828111156103ae578251825591602001919060010190610393565b5b5090506103bc9190610435565b5090565b6040518060400160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020016000905b8282101561042a578382906000526020600020906002020161041b906103c0565b815260200190600101906103fa565b505050508152505090565b61045791905b8082111561045357600081600090555060010161043b565b5090565b9056fea265627a7a7231582019e5f120e3cf0e15e5ab1c315d32a8cefac986329ee2e9d70a0555a1856bc78464736f6c63430005110032"; - - public static final String FUNC_GETRUNRESULT = "getRunResult"; - - public static final String FUNC_RUN = "run"; - - protected RecursiveStorageMemoryComplex(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RecursiveStorageMemoryComplex(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RecursiveStorageMemoryComplex.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RecursiveStorageMemoryComplex.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getRunResult() { - final Function function = new Function(FUNC_GETRUNRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall run() { - final Function function = new Function( - FUNC_RUN, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RecursiveStorageMemoryComplex load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RecursiveStorageMemoryComplex(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RecursiveStorageMemoryComplex load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RecursiveStorageMemoryComplex(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeArrayComplexContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeArrayComplexContract.java deleted file mode 100644 index 03421e6712..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeArrayComplexContract.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeArrayComplexContract extends Contract { - private static final String BINARY = "60806040526040518060400160405280600160ff168152602001600260ff168152506000906002610031929190610044565b5034801561003e57600080fd5b506100bb565b828054828255906000526020600020908101928215610085579160200282015b82811115610084578251829060ff16905591602001919060010190610064565b5b5090506100929190610096565b5090565b6100b891905b808211156100b457600081600090555060010161009c565b5090565b90565b610180806100ca6000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806310c037da14610030575b600080fd5b6100a76004803603602081101561004657600080fd5b810190808035906020019064010000000081111561006357600080fd5b82018360208201111561007557600080fd5b8035906020019184602083028401116401000000008311171561009757600080fd5b90919293919293905050506100bd565b6040518082815260200191505060405180910390f35b6000806000905060008090505b8484905082101561013f576000829050600a8111156100e9575061013f565b60008686838181106100f757fe5b9050602002013590506103e881106101165760018401935050506100ca565b80830192506101f483106101305782945050505050610145565b838060010194505050506100ca565b80925050505b9291505056fea265627a7a72315820a9ea49b7e7a0bff632886301d91453448fd4254864a659a5e2d3a12c30ff49de64736f6c63430005110032"; - - public static final String FUNC_SUMCOMPLEXARRAY = "sumComplexArray"; - - protected ReferenceDataTypeArrayComplexContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeArrayComplexContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sumComplexArray(List array) { - final Function function = new Function(FUNC_SUMCOMPLEXARRAY, - Arrays.asList(new com.alaya.abi.solidity.datatypes.DynamicArray( - Uint256.class, - com.alaya.abi.solidity.Utils.typeMap(array, Uint256.class))), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayComplexContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayComplexContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeArrayComplexContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayComplexContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeArrayComplexContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayComplexContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeArrayContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeArrayContract.java deleted file mode 100644 index 99f1805415..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeArrayContract.java +++ /dev/null @@ -1,123 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeArrayContract extends Contract { - private static final String BINARY = "60806040526040518060a00160405280600160ff168152602001600260ff168152602001600360ff168152602001600460ff168152602001600560ff16815250600090600561004f92919061030b565b506040518060c001604052806040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f320000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f330000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f340000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f350000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f360000000000000000000000000000000000000000000000000000000000000081525081525060059060066101cb929190610350565b5060056040519080825280602002602001820160405280156101fc5781602001602082028038833980820191505090505b50600690805190602001906102129291906103b0565b506040518060c001604052806040518060400160405280600060ff168152602001600060ff1681525081526020016040518060400160405280600060ff168152602001600160ff1681525081526020016040518060400160405280600060ff168152602001600260ff1681525081526020016040518060400160405280600160ff168152602001600060ff1681525081526020016040518060400160405280600160ff168152602001600160ff1681525081526020016040518060400160405280600160ff168152602001600260ff1681525081525060079060066102f89291906103fd565b5034801561030557600080fd5b50610610565b826005810192821561033f579160200282015b8281111561033e578251829060ff1690559160200191906001019061031e565b5b50905061034c9190610458565b5090565b82805482825590600052602060002090810192821561039f579160200282015b8281111561039e57825182908051906020019061038e92919061047d565b5091602001919060010190610370565b5b5090506103ac91906104fd565b5090565b8280548282559060005260206000209081019282156103ec579160200282015b828111156103eb5782518255916020019190600101906103d0565b5b5090506103f99190610458565b5090565b828054828255906000526020600020908101928215610447579160200282015b8281111561044657825182906002610436929190610529565b509160200191906001019061041d565b5b509050610454919061057b565b5090565b61047a91905b8082111561047657600081600090555060010161045e565b5090565b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106104be57805160ff19168380011785556104ec565b828001600101855582156104ec579182015b828111156104eb5782518255916020019190600101906104d0565b5b5090506104f99190610458565b5090565b61052691905b80821115610522576000818161051991906105a7565b50600101610503565b5090565b90565b82805482825590600052602060002090810192821561056a579160200282015b82811115610569578251829060ff16905591602001919060010190610549565b5b5090506105779190610458565b5090565b6105a491905b808211156105a0576000818161059791906105ef565b50600101610581565b5090565b90565b50805460018160011615610100020316600290046000825580601f106105cd57506105ec565b601f0160209004906000526020600020908101906105eb9190610458565b5b50565b508054600082559060005260206000209081019061060d9190610458565b50565b6103cc8061061f6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80630849cc99146100675780630dca60821461008557806354c73338146100bd57806357933804146100c7578063ab35ec6314610182578063c3d1f404146101c4575b600080fd5b61006f6101e9565b6040518082815260200191505060405180910390f35b6100bb6004803603604081101561009b57600080fd5b8101908080359060200190929190803590602001909291905050506101f6565b005b6100c561020d565b005b610180600480360360208110156100dd57600080fd5b81019080803590602001906401000000008111156100fa57600080fd5b82018360208201111561010c57600080fd5b8035906020019184600183028401116401000000008311171561012e57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610243565b005b6101ae6004803603602081101561019857600080fd5b8101908080359060200190929190505050610285565b6040518082815260200191505060405180910390f35b6101cc61029c565b604051808381526020018281526020019250505060405180910390f35b6000600580549050905090565b806000836005811061020457fe5b01819055505050565b6064600760018154811061021d57fe5b9060005260206000200160008154811061023357fe5b9060005260206000200181905550565b60058190806001815401808255809150509060018203906000526020600020016000909192909190915090805190602001906102809291906102f2565b505050565b600080826005811061029357fe5b01549050919050565b60008060076001815481106102ad57fe5b906000526020600020016000815481106102c357fe5b906000526020600020015460076000815481106102dc57fe5b9060005260206000200180549050915091509091565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061033357805160ff1916838001178555610361565b82800160010185558215610361579182015b82811115610360578251825591602001919060010190610345565b5b50905061036e9190610372565b5090565b61039491905b80821115610390576000816000905550600101610378565b5090565b9056fea265627a7a72315820215e720e376bf6747631fa729bf70099c0065631f965271c1a472cdabe874ebb64736f6c63430005110032"; - - public static final String FUNC_GETARRAY = "getArray"; - - public static final String FUNC_GETARRAYLENGTH = "getArrayLength"; - - public static final String FUNC_GETMULTIARRAY = "getMultiArray"; - - public static final String FUNC_SETARRAY = "setArray"; - - public static final String FUNC_SETARRAYPUSH = "setArrayPush"; - - public static final String FUNC_SETMULTIARRAY = "setMultiArray"; - - protected ReferenceDataTypeArrayContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeArrayContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getArray(BigInteger index) { - final Function function = new Function(FUNC_GETARRAY, - Arrays.asList(new Uint256(index)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getArrayLength() { - final Function function = new Function(FUNC_GETARRAYLENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> getMultiArray() { - final Function function = new Function(FUNC_GETMULTIARRAY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall setArray(BigInteger index, BigInteger value) { - final Function function = new Function( - FUNC_SETARRAY, - Arrays.asList(new Uint256(index), - new Uint256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setArrayPush(String x) { - final Function function = new Function( - FUNC_SETARRAYPUSH, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Utf8String(x)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setMultiArray() { - final Function function = new Function( - FUNC_SETMULTIARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeArrayContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeArrayContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeArrayOperatorContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeArrayOperatorContract.java deleted file mode 100644 index 7939cf6a6e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeArrayOperatorContract.java +++ /dev/null @@ -1,186 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tuples.generated.Tuple5; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeArrayOperatorContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506106e5806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806399a1c3691161005b57806399a1c369146101cf5780639a6e3cb71461023e578063b99033341461028c578063fd081ef8146102fb5761007d565b80631ff0db4014610082578063676cb904146100f157806386d1171014610160575b600080fd5b61008a61036a565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1660ff1681526020019250505060405180910390f35b6100f961039c565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1660ff1681526020019250505060405180910390f35b6101686103e8565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1660ff1681526020019250505060405180910390f35b6101d7610434565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1660ff1681526020019250505060405180910390f35b610246610466565b6040518086151515158152602001851515151581526020018415151515815260200183151515158152602001821515151581526020019550505050505060405180910390f35b610294610657565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1660ff1681526020019250505060405180910390f35b610303610689565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1660ff1681526020019250505060405180910390f35b6000806000608160f81b90506000608060f81b90506000818316905060008160f81c9050818195509550505050509091565b6000806000608160f81b905060006001827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901b905060008160f81c90508181945094505050509091565b6000806000608160f81b905060006001827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901c905060008160f81c90508181945094505050509091565b6000806000608160f81b90506000608060f81b90506000818318905060008160f81c9050818195509550505050509091565b6000806000806000807f6100000000000000000000000000000000000000000000000000000000000000905060007f620000000000000000000000000000000000000000000000000000000000000090506000606160f81b90506000827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916847effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161090506000837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161190506000837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916867effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161490506000847effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916867effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916141590506000857effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916887effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015905084848484849c509c509c509c509c5050505050505050509091929394565b6000806000608160f81b90506000608060f81b90506000818317905060008160f81c9050818195509550505050509091565b6000806000608160f81b905060008119905060008160f81c9050818194509450505050909156fea265627a7a723158202eafa06b32e555a2c3722e172a6dec480c685aeae4176078f5ea18479cce57d664736f6c63430005110032"; - - public static final String FUNC_ARRAYBITANDOPERATORS = "arrayBitAndOperators"; - - public static final String FUNC_ARRAYBITINVERSEOPERATORS = "arrayBitInverseOperators"; - - public static final String FUNC_ARRAYBITLEFTSHIFTPERATORS = "arrayBitLeftShiftperators"; - - public static final String FUNC_ARRAYBITOROPERATORS = "arrayBitOrOperators"; - - public static final String FUNC_ARRAYBITRIGHTSHIFTPERATORS = "arrayBitRightShiftperators"; - - public static final String FUNC_ARRAYBITXOROPERATORS = "arrayBitXOROperators"; - - public static final String FUNC_ARRAYCOMPARE = "arrayCompare"; - - protected ReferenceDataTypeArrayOperatorContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeArrayOperatorContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> arrayBitAndOperators() { - final Function function = new Function(FUNC_ARRAYBITANDOPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitInverseOperators() { - final Function function = new Function(FUNC_ARRAYBITINVERSEOPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitLeftShiftperators() { - final Function function = new Function(FUNC_ARRAYBITLEFTSHIFTPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitOrOperators() { - final Function function = new Function(FUNC_ARRAYBITOROPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitRightShiftperators() { - final Function function = new Function(FUNC_ARRAYBITRIGHTSHIFTPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitXOROperators() { - final Function function = new Function(FUNC_ARRAYBITXOROPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayCompare() { - final Function function = new Function(FUNC_ARRAYCOMPARE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple5 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple5( - (Boolean) results.get(0).getValue(), - (Boolean) results.get(1).getValue(), - (Boolean) results.get(2).getValue(), - (Boolean) results.get(3).getValue(), - (Boolean) results.get(4).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayOperatorContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayOperatorContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeArrayOperatorContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayOperatorContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeArrayOperatorContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayOperatorContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeStructContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeStructContract.java deleted file mode 100644 index dbc8a43ee8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeStructContract.java +++ /dev/null @@ -1,116 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple4; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeStructContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061033d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630b1a6855146100465780638e5f3b9c146100a9578063cdd9acc11461010c575b600080fd5b61004e61016f565b604051808581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018215151515815260200194505050505060405180910390f35b6100b16101ea565b604051808581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018215151515815260200194505050505060405180910390f35b610114610259565b604051808581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018215151515815260200194505050505060405180910390f35b60008060008061017d6102c8565b6101856102c8565b6040518060800160405280600281526020013373ffffffffffffffffffffffffffffffffffffffff1681526020016019815260200160011515815250905080915081600001518260200151836040015184606001519550955095509550505090919293565b6000806000806101f86102c8565b6040518060800160405280600281526020013373ffffffffffffffffffffffffffffffffffffffff16815260200160198152602001600115158152509050806000015181602001518260400151836060015194509450945094505090919293565b6000806000806102676102c8565b6040518060800160405280600281526020013373ffffffffffffffffffffffffffffffffffffffff16815260200160198152602001600115158152509050806000015181602001518260400151836060015194509450945094505090919293565b604051806080016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600015158152509056fea265627a7a723158205d9f9a6985d5e91ad2e43f1e96ba825fa17091b0fe4774ecd071476d5dd4728264736f6c63430005110032"; - - public static final String FUNC_INITDATASTRUCTA = "initDataStructA"; - - public static final String FUNC_INITDATASTRUCTB = "initDataStructB"; - - public static final String FUNC_INITDATASTRUCTC = "initDataStructC"; - - protected ReferenceDataTypeStructContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeStructContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> initDataStructA() { - final Function function = new Function(FUNC_INITDATASTRUCTA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference

() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple4 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple4( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (Boolean) results.get(3).getValue()); - } - }); - } - - public RemoteCall> initDataStructB() { - final Function function = new Function(FUNC_INITDATASTRUCTB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference
() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple4 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple4( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (Boolean) results.get(3).getValue()); - } - }); - } - - public RemoteCall> initDataStructC() { - final Function function = new Function(FUNC_INITDATASTRUCTC, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference
() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple4 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple4( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (Boolean) results.get(3).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeStructContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeStructContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeStructDeleteContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeStructDeleteContract.java deleted file mode 100644 index e8a5012828..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeStructDeleteContract.java +++ /dev/null @@ -1,97 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeStructDeleteContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506005600081905550600a600160020181905550600180600301600060018152602001908152602001600020819055506002600160030160006002815260200190815260200160002081905550600360016000016000018190555060018060000160010160006001815260200190815260200160002060006101000a81548160ff02191690831515021790555060018060000160010160006002815260200190815260200160002060006101000a81548160ff02191690831515021790555060016000808201600080820160009055505060028201600090555050600080905561019f806100ff6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806311977c5c1461005c5780631268893e1461007a5780635ff76c8a1461009857806379e44a38146100b6578063d587919c146100d4575b600080fd5b6100646100f6565b6040518082815260200191505060405180910390f35b6100826100ff565b6040518082815260200191505060405180910390f35b6100a061011e565b6040518082815260200191505060405180910390f35b6100be61012e565b6040518082815260200191505060405180910390f35b6100dc61013b565b604051808215151515815260200191505060405180910390f35b60008054905090565b6000600160030160006001815260200190815260200160002054905090565b6000600160000160000154905090565b6000600160020154905090565b6000600160000160010160006001815260200190815260200160002060009054906101000a900460ff1690509056fea265627a7a7231582044ac94d116839957ddaa550e55b0a21ac9be5f28ca64c98eb1f0f210370a57b364736f6c63430005110032"; - - public static final String FUNC_GETNESTEDMAPPING = "getNestedMapping"; - - public static final String FUNC_GETNESTEDVALUE = "getNestedValue"; - - public static final String FUNC_GETTODELETEINT = "getToDeleteInt"; - - public static final String FUNC_GETTOPMAPPING = "getTopMapping"; - - public static final String FUNC_GETTOPVALUE = "getTopValue"; - - protected ReferenceDataTypeStructDeleteContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeStructDeleteContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructDeleteContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructDeleteContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getNestedMapping() { - final Function function = new Function(FUNC_GETNESTEDMAPPING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getNestedValue() { - final Function function = new Function(FUNC_GETNESTEDVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getToDeleteInt() { - final Function function = new Function(FUNC_GETTODELETEINT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getTopMapping() { - final Function function = new Function(FUNC_GETTOPMAPPING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getTopValue() { - final Function function = new Function(FUNC_GETTOPVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static ReferenceDataTypeStructDeleteContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructDeleteContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeStructDeleteContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructDeleteContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeStructRecursiveContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeStructRecursiveContract.java deleted file mode 100644 index 8ab05fceae..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ReferenceDataTypeStructRecursiveContract.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple3; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeStructRecursiveContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060026000800181610022919061007e565b50600a6000800160008154811061003557fe5b906000526020600020016000018161004d919061007e565b5060146000800160018154811061006057fe5b9060005260206000200160000181610078919061007e565b506100fa565b8154818355818111156100a5578183600052602060002091820191016100a491906100aa565b5b505050565b6100d691905b808211156100d257600080820160006100c991906100d9565b506001016100b0565b5090565b90565b50805460008255906000526020600020908101906100f791906100aa565b50565b6101da806101096000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806397b93b1a14610030575b600080fd5b61003861005c565b60405180848152602001838152602001828152602001935050505060405180910390f35b60008060006100696100c4565b6000610074906100d7565b9050806000015151816000015160008151811061008d57fe5b6020026020010151600001515182600001516001815181106100ab57fe5b6020026020010151600001515193509350935050909192565b6040518060200160405280606081525090565b60405180602001604052908160008201805480602002602001604051908101604052809291908181526020016000905b82821015610133578382906000526020600020016101249061013e565b81526020019060010190610107565b505050508152505090565b60405180602001604052908160008201805480602002602001604051908101604052809291908181526020016000905b8282101561019a5783829060005260206000200161018b9061013e565b8152602001906001019061016e565b50505050815250509056fea265627a7a7231582044a3d329646ecd55cbd34243dfdcb469c24b8cc29b4457b1e2b614b48e4b652d64736f6c63430005110032"; - - public static final String FUNC_GETSTRUCTPERSONLENGTH = "getStructPersonLength"; - - protected ReferenceDataTypeStructRecursiveContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeStructRecursiveContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructRecursiveContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructRecursiveContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall> getStructPersonLength() { - final Function function = new Function(FUNC_GETSTRUCTPERSONLENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue()); - } - }); - } - - public static ReferenceDataTypeStructRecursiveContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructRecursiveContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeStructRecursiveContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructRecursiveContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RequireContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RequireContract.java deleted file mode 100644 index 840f4aaee2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RequireContract.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RequireContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060de8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806314fef936146037578063de29278914606c575b600080fd5b606a60048036036040811015604b57600080fd5b8101908080359060200190929190803590602001909291905050506088565b005b607260a0565b6040518082815260200191505060405180910390f35b808211609357600080fd5b8082036000819055505050565b6000805490509056fea265627a7a723158202cf56af6e534fb9e8ff590ec9ce007a2a0117bd30e7cdb327d4df2702fdaa87e64736f6c63430005110032"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final String FUNC_TOSENDERAMOUNT = "toSenderAmount"; - - protected RequireContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RequireContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getResult() { - final Function function = new Function(FUNC_GETRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall toSenderAmount(BigInteger frist, BigInteger second) { - final Function function = new Function( - FUNC_TOSENDERAMOUNT, - Arrays.asList(new Uint256(frist), - new Uint256(second)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RequireContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RequireContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RequireContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RequireContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RequireHandle.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RequireHandle.java deleted file mode 100644 index ed9e52633a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RequireHandle.java +++ /dev/null @@ -1,122 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RequireHandle extends Contract { - private static final String BINARY = "6080604052734b0897b0513fdc7c541b6d9d7e929c4e5364d2db600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555034801561006557600080fd5b50610585806100756000396000f3fe6080604052600436106100705760003560e01c80635995caa71161004e5780635995caa714610185578063afcd320e1461019c578063ce602ba3146101d7578063e08302331461021257610070565b80632e230b19146100e1578063414f180e1461011c578063431d70d714610157575b34801561007c57600080fd5b5060007314723a09acff6d2a60dcdf7aa4aff308fddc160c90508073ffffffffffffffffffffffffffffffffffffffff166108fc600a9081150290604051600060405180830381858888f193505050501580156100dd573d6000803e3d6000fd5b5050005b3480156100ed57600080fd5b5061011a6004803603602081101561010457600080fd5b810190808035906020019092919050505061024d565b005b34801561012857600080fd5b506101556004803603602081101561013f57600080fd5b81019080803590602001909291905050506102d3565b005b6101836004803603602081101561016d57600080fd5b8101908080359060200190929190505050610380565b005b34801561019157600080fd5b5061019a6103e4565b005b3480156101a857600080fd5b506101d5600480360360208110156101bf57600080fd5b810190808035906020019092919050505061044e565b005b3480156101e357600080fd5b50610210600480360360208110156101fa57600080fd5b810190808035906020019092919050505061045e565b005b34801561021e57600080fd5b5061024b6004803603602081101561023557600080fd5b81019080803590602001909291905050506104ca565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634d431097826040518263ffffffff1660e01b8152600401600060405180830381600088803b1580156102b757600080fd5b5087f11580156102cb573d6000803e3d6000fd5b505050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663370158ea600a83906040518363ffffffff1660e01b81526004016020604051808303818589803b15801561033f57600080fd5b5088f1158015610353573d6000803e3d6000fd5b5050505050506040513d602081101561036b57600080fd5b81019080805190602001909291905050505050565b60007314723a09acff6d2a60dcdf7aa4aff308fddc160c90508073ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156103df573d6000803e3d6000fd5b505050565b6040516103f09061052e565b604051809103906000f08015801561040c573d6000803e3d6000fd5b506000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600a811061045b57600080fd5b50565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156104c6573d6000803e3d6000fd5b5050565b60007314723a09acff6d2a60dcdf7aa4aff308fddc160c90508073ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015610529573d6000803e3d6000fd5b505050565b60168061053b8339019056fe6080604052348015600f57600080fd5b50600080fdfea265627a7a723158200653a181b8c25e13af08f7f6246e16bcacce92e3a8938c4d8b52ab4654fbb25d64736f6c63430005110032"; - - public static final String FUNC_FUNCTIONCALLEXCEPTION = "functionCallException"; - - public static final String FUNC_NEWCONTRACTEXCEPTION = "newContractException"; - - public static final String FUNC_NONPAYABLERECEIVEETHEXCEPTION = "nonPayableReceiveEthException"; - - public static final String FUNC_OUTFUNCTIONCALLEXCEPTION = "outFunctionCallException"; - - public static final String FUNC_PARAMEXCEPTION = "paramException"; - - public static final String FUNC_PUBLICGETTERRECEIVEETHEXCEPTION = "publicGetterReceiveEthException"; - - public static final String FUNC_TRANSFERCALLEXCEPTION = "transferCallException"; - - protected RequireHandle(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RequireHandle(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireHandle.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireHandle.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall functionCallException(BigInteger param) { - final Function function = new Function( - FUNC_FUNCTIONCALLEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall newContractException() { - final Function function = new Function( - FUNC_NEWCONTRACTEXCEPTION, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall nonPayableReceiveEthException(BigInteger count) { - final Function function = new Function( - FUNC_NONPAYABLERECEIVEETHEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(count)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall outFunctionCallException(BigInteger count) { - final Function function = new Function( - FUNC_OUTFUNCTIONCALLEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(count)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall paramException(BigInteger param) { - final Function function = new Function( - FUNC_PARAMEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall publicGetterReceiveEthException(BigInteger count) { - final Function function = new Function( - FUNC_PUBLICGETTERRECEIVEETHEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(count)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall transferCallException(BigInteger count, BigInteger vonValue) { - final Function function = new Function( - FUNC_TRANSFERCALLEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(count)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RequireHandle load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RequireHandle(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RequireHandle load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RequireHandle(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RequireMessageHandle.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RequireMessageHandle.java deleted file mode 100644 index 792e8282c5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RequireMessageHandle.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RequireMessageHandle extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610105806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063afcd320e14602d575b600080fd5b605660048036036020811015604157600080fd5b81019080803590602001909291905050506058565b005b600a811060cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807fe695b4e59e8be5a4a7e5b08fe6af94e8be83e5bc82e5b8b8000000000000000081525060200191505060405180910390fd5b5056fea265627a7a72315820c429daa2f248e44f53a50d30c32c8f9c8f8db175fa6989628f405851590711c164736f6c63430005110032"; - - public static final String FUNC_PARAMEXCEPTION = "paramException"; - - protected RequireMessageHandle(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RequireMessageHandle(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall paramException(BigInteger param) { - final Function function = new Function( - FUNC_PARAMEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireMessageHandle.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireMessageHandle.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RequireMessageHandle load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RequireMessageHandle(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RequireMessageHandle load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RequireMessageHandle(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RevertContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RevertContract.java deleted file mode 100644 index 20454c11d4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RevertContract.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RevertContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610170806100606000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806314fef9361461003b578063de29278914610087575b600080fd5b6100716004803603604081101561005157600080fd5b8101908080359060200190929190803590602001909291905050506100a5565b6040518082815260200191505060405180910390f35b61008f610131565b6040518082815260200191505060405180910390f35b60008183101561011d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f6669727374206c657373207468616e207365636f6e640000000000000000000081525060200191505060405180910390fd5b818303600181905550600154905092915050565b600060015490509056fea265627a7a72315820c40e6a99f98061d29f0937627c58f5833b09a180de1ba2f64db27f2fa156156164736f6c63430005110032"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final String FUNC_TOSENDERAMOUNT = "toSenderAmount"; - - protected RevertContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RevertContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RevertContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RevertContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getResult() { - final Function function = new Function(FUNC_GETRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall toSenderAmount(BigInteger first, BigInteger second) { - final Function function = new Function( - FUNC_TOSENDERAMOUNT, - Arrays.asList(new Uint256(first), - new Uint256(second)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RevertContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RevertContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RevertContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RevertContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RevertHandle.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RevertHandle.java deleted file mode 100644 index 14a2f54c17..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RevertHandle.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RevertHandle extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610157806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063852da1631461003b578063f76051e714610069575b600080fd5b6100676004803603602081101561005157600080fd5b8101908080359060200190929190505050610097565b005b6100956004803603602081101561007f57600080fd5b8101908080359060200190929190505050610111565b005b600a81111561010e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f636865636b20636174636820657863657074696f6e000000000000000000000081525060200191505060405180910390fd5b50565b600a81111561011f57600080fd5b5056fea265627a7a72315820970fb8a2f266041c6f0858da07f2cf849e00898517b4ea886b2a3a8a09c3e78f64736f6c63430005110032"; - - public static final String FUNC_REVERTCHECK = "revertCheck"; - - public static final String FUNC_REVERTREASONCHECK = "revertReasonCheck"; - - protected RevertHandle(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RevertHandle(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall revertCheck(BigInteger param) { - final Function function = new Function( - FUNC_REVERTCHECK, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall revertReasonCheck(BigInteger param) { - final Function function = new Function( - FUNC_REVERTREASONCHECK, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RevertHandle.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RevertHandle.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RevertHandle load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RevertHandle(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RevertHandle load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RevertHandle(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RuntimeCode.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RuntimeCode.java deleted file mode 100644 index 2b8d4ba0c0..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RuntimeCode.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RuntimeCode extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506102f2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063d489e0041461003b578063f5f5ba72146100be575b600080fd5b610043610141565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100c6610168565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101065780820151818401526020810190506100eb565b50505050905090810190601f1680156101335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6040518060200161015190610193565b6020820181038252601f19601f8201166040525081565b60606040518060200161017a90610193565b6020820181038252601f19601f82011660405250905090565b61011d806101a18339019056fe6080604052348015600f57600080fd5b506004361060285760003560e01c80632096525514602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525090509056fea265627a7a72315820cb82d60f6e5d7cb8e3e128b4b119ee682253ff04a489cfe9c3fdc7d152c19e5b64736f6c63430005110032a265627a7a72315820e139e7f34ada4b3c1e8d41eb2ec889b9ec1825ba753facef18ac9155d49efb0664736f6c63430005110032"; - - public static final String FUNC_GETCONTRACTNAME = "getContractName"; - - public static final String FUNC_RUNTIMECODEINFO = "runtimeCodeInfo"; - - protected RuntimeCode(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RuntimeCode(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getContractName() { - final Function function = new Function(FUNC_GETCONTRACTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall runtimeCodeInfo() { - final Function function = new Function(FUNC_RUNTIMECODEINFO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RuntimeCode.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RuntimeCode.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RuntimeCode load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RuntimeCode(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RuntimeCode load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RuntimeCode(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RuntimeCodeType.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RuntimeCodeType.java deleted file mode 100644 index 9f4465516d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/RuntimeCodeType.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RuntimeCodeType extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011d806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80632096525514602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525090509056fea265627a7a72315820cb82d60f6e5d7cb8e3e128b4b119ee682253ff04a489cfe9c3fdc7d152c19e5b64736f6c63430005110032"; - - public static final String FUNC_GETVALUE = "getValue"; - - protected RuntimeCodeType(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RuntimeCodeType(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getValue() { - final Function function = new Function( - FUNC_GETVALUE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RuntimeCodeType.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RuntimeCodeType.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RuntimeCodeType load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RuntimeCodeType(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RuntimeCodeType load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RuntimeCodeType(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SafeMathMock.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SafeMathMock.java deleted file mode 100644 index db77740c1e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SafeMathMock.java +++ /dev/null @@ -1,131 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SafeMathMock extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610708806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a391c15b1161005b578063a391c15b146101bd578063b67d77c514610209578063c8a4ac9c14610255578063f43f523a146102a157610088565b80632b7423ab1461008d5780636d5433e6146100d9578063771602f7146101255780637ae2b5c714610171575b600080fd5b6100c3600480360360408110156100a357600080fd5b8101908080359060200190929190803590602001909291905050506102ed565b6040518082815260200191505060405180910390f35b61010f600480360360408110156100ef57600080fd5b810190808035906020019092919080359060200190929190505050610301565b6040518082815260200191505060405180910390f35b61015b6004803603604081101561013b57600080fd5b810190808035906020019092919080359060200190929190505050610315565b6040518082815260200191505060405180910390f35b6101a76004803603604081101561018757600080fd5b810190808035906020019092919080359060200190929190505050610329565b6040518082815260200191505060405180910390f35b6101f3600480360360408110156101d357600080fd5b81019080803590602001909291908035906020019092919050505061033d565b6040518082815260200191505060405180910390f35b61023f6004803603604081101561021f57600080fd5b810190808035906020019092919080359060200190929190505050610351565b6040518082815260200191505060405180910390f35b61028b6004803603604081101561026b57600080fd5b810190808035906020019092919080359060200190929190505050610365565b6040518082815260200191505060405180910390f35b6102d7600480360360408110156102b757600080fd5b810190808035906020019092919080359060200190929190505050610379565b6040518082815260200191505060405180910390f35b60006102f9838361038d565b905092915050565b600061030d83836103cf565b905092915050565b600061032183836103e9565b905092915050565b60006103358383610471565b905092915050565b6000610349838361048a565b905092915050565b600061035d8383610519565b905092915050565b600061037183836105a2565b905092915050565b60006103858383610628565b905092915050565b6000600280838161039a57fe5b06600285816103a557fe5b0601816103ae57fe5b04600283816103b957fe5b04600285816103c457fe5b040101905092915050565b6000818310156103df57816103e1565b825b905092915050565b600080828401905083811015610467576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60008183106104805781610482565b825b905092915050565b6000808211610501576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b600082848161050c57fe5b0490508091505092915050565b600082821115610591576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b6000808314156105b55760009050610622565b60008284029050828482816105c657fe5b041461061d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806106b36021913960400191505060405180910390fd5b809150505b92915050565b6000808214156106a0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f536166654d6174683a206d6f64756c6f206279207a65726f000000000000000081525060200191505060405180910390fd5b8183816106a957fe5b0690509291505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a723158201dd541467403ba879d6eab6e22cedd690de98e1e8072013e30fe322c5e36c91764736f6c63430005110032"; - - public static final String FUNC_ADD = "add"; - - public static final String FUNC_AVERAGE = "average"; - - public static final String FUNC_DIV = "div"; - - public static final String FUNC_MAX = "max"; - - public static final String FUNC_MIN = "min"; - - public static final String FUNC_MOD = "mod"; - - public static final String FUNC_MUL = "mul"; - - public static final String FUNC_SUB = "sub"; - - protected SafeMathMock(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SafeMathMock(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall add(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_ADD, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall average(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_AVERAGE, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall div(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_DIV, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall max(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_MAX, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall min(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_MIN, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall mod(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_MOD, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall mul(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_MUL, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall sub(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUB, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SafeMathMock.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SafeMathMock.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static SafeMathMock load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SafeMathMock(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SafeMathMock load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SafeMathMock(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Selector.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Selector.java deleted file mode 100644 index 8951157ba1..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Selector.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes4; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Selector extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610103806100206000396000f3fe60806040526004361060265760003560e01c806326121ff014602b578063b8c9d365146091575b600080fd5b348015603657600080fd5b50603d6099565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b609760cc565b005b60008060003073ffffffffffffffffffffffffffffffffffffffff1663b8c9d365915091508181905060e01b9250505090565b56fea265627a7a72315820d693364dfc0675b0d0ff570109e26500c240cbfc95dfb2e63d93b2f846a8c0f864736f6c63430005110032"; - - public static final String FUNC_F = "f"; - - public static final String FUNC_H = "h"; - - protected Selector(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Selector(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f() { - final Function function = new Function(FUNC_F, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall h(BigInteger vonValue) { - final Function function = new Function( - FUNC_H, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Selector.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Selector.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Selector load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Selector(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Selector load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Selector(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SelfdestructFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SelfdestructFunctions.java deleted file mode 100644 index d8d2068f64..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SelfdestructFunctions.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SelfdestructFunctions extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b5033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101b4806100656000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80633ae2119b14610046578063a87d942c14610050578063d09de08a1461006e575b600080fd5b61004e610078565b005b61005861010b565b6040518082815260200191505060405180910390f35b610076610114565b005b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561010957600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b565b60008054905090565b6000600590503373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561017c5780600054016000819055505b5056fea265627a7a72315820654530a8136586463ee720ad7ec098c3050d6f77e9953e1f5f41621c934a436164736f6c63430005110032"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_INCREMENT = "increment"; - - public static final String FUNC_SELFKILL = "selfKill"; - - protected SelfdestructFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SelfdestructFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SelfdestructFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SelfdestructFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall increment() { - final Function function = new Function( - FUNC_INCREMENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall selfKill() { - final Function function = new Function( - FUNC_SELFKILL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static SelfdestructFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SelfdestructFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SelfdestructFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SelfdestructFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Sha3AndKeccake256.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Sha3AndKeccake256.java deleted file mode 100644 index 0730df3105..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Sha3AndKeccake256.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Sha3AndKeccake256 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610223806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063598a717b1461003b5780638f9e1a5d14610059575b600080fd5b610043610114565b6040518082815260200191505060405180910390f35b6101126004803603602081101561006f57600080fd5b810190808035906020019064010000000081111561008c57600080fd5b82018360208201111561009e57600080fd5b803590602001918460018302840111640100000000831117156100c057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050919291929050505061011d565b005b60008054905090565b80816040516020018083805190602001908083835b602083106101555780518252602082019150602081019050602083039250610132565b6001836020036101000a03801982511681845116808217855250505050505090500182805190602001908083835b602083106101a65780518252602082019150602081019050602083039250610183565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040528051906020012060001c6000819055505056fea265627a7a72315820e14ceca33a6df879ebf05ff96083d19c04445e7481fc6c99725e07c47102121664736f6c63430005110032"; - - public static final String FUNC_GETKECCAK256VALUE = "getKeccak256Value"; - - public static final String FUNC_KECCAK = "keccak"; - - protected Sha3AndKeccake256(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Sha3AndKeccake256(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getKeccak256Value() { - final Function function = new Function(FUNC_GETKECCAK256VALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall keccak(String sha256value) { - final Function function = new Function( - FUNC_KECCAK, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Utf8String(sha256value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Sha3AndKeccake256.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Sha3AndKeccake256.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Sha3AndKeccake256 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Sha3AndKeccake256(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Sha3AndKeccake256 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Sha3AndKeccake256(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ShortCircuitError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ShortCircuitError.java deleted file mode 100644 index 100e6b0438..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/ShortCircuitError.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ShortCircuitError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610148806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806304c09ce91461003b5780630c204dbc1461005d575b600080fd5b61004361007f565b604051808215151515815260200191505060405180910390f35b6100656100a4565b604051808215151515815260200191505060405180910390f35b60008061008a6100c9565b90508060000160009054906101000a900460ff1691505090565b6000806100af6100ee565b90508060000160009054906101000a900460ff1691505090565b6000600190508060000160009054906101000a900460ff16806100ea575060015b5090565b60008090508060000160009054906101000a900460ff16801561010f575060005b509056fea265627a7a72315820002b548cbd6137ffbd7863df7868efd42633c62b3ff6f2074aafafa89ff11f3264736f6c63430005110032"; - - public static final String FUNC_GETF = "getF"; - - public static final String FUNC_GETG = "getG"; - - protected ShortCircuitError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ShortCircuitError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getF() { - final Function function = new Function(FUNC_GETF, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getG() { - final Function function = new Function(FUNC_GETG, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShortCircuitError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShortCircuitError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ShortCircuitError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ShortCircuitError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ShortCircuitError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ShortCircuitError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SimpleStorage.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SimpleStorage.java deleted file mode 100644 index fda0dbeea5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SimpleStorage.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SimpleStorage extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060db8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806309bd5a6014603757806319ff1d21146053575b600080fd5b603d605b565b6040518082815260200191505060405180910390f35b60596067565b005b600060c8430340905090565b600060c8430340604051602001808281526020019150506040516020818303038152906040528051906020012060001c9050600081141560a357fe5b5056fea265627a7a723158207aab508bc33506bb7cbf979adc83977c1c5e8dfce2906de1149c160cc67adc6464736f6c63430005110032"; - - public static final String FUNC_HASH = "hash"; - - public static final String FUNC_HELLO = "hello"; - - protected SimpleStorage(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SimpleStorage(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall hash() { - final Function function = new Function(FUNC_HASH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall hello() { - final Function function = new Function( - FUNC_HELLO, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SimpleStorage.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SimpleStorage.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static SimpleStorage load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SimpleStorage(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SimpleStorage load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SimpleStorage(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SpaceComplexity.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SpaceComplexity.java deleted file mode 100644 index 168eb9e9ad..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SpaceComplexity.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SpaceComplexity extends Contract { - private static final String BINARY = "60806040526040518060400160405280600681526020017f71637869616f00000000000000000000000000000000000000000000000000008152506000908051906020019061004f929190610062565b5034801561005c57600080fd5b50610107565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100a357805160ff19168380011785556100d1565b828001600101855582156100d1579182015b828111156100d05782518255916020019190600101906100b5565b5b5090506100de91906100e2565b5090565b61010491905b808211156101005760008160009055506001016100e8565b5090565b90565b610959806101166000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806306fdde0314610046578063380bc4ad146100c957806365becf9b146100f7575b600080fd5b61004e610125565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561008e578082015181840152602081019050610073565b50505050905090810190601f1680156100bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100f5600480360360208110156100df57600080fd5b81019080803590602001909291905050506101c7565b005b6101236004803603602081101561010d57600080fd5b81019080803590602001909291905050506101ca565b005b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156101bd5780601f10610192576101008083540402835291602001916101bd565b820191906000526020600020905b8154815290600101906020018083116101a057829003601f168201915b5050505050905090565b50565b60008090505b81811015610212576000600283816101e457fe5b0614156101fa576101f56000610216565b610205565b610204600061059d565b5b80806001019150506101d0565b5050565b7f510000000000000000000000000000000000000000000000000000000000000081600081546001816001161561010002031660029004811061025557fe5b8154600116156102745790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f43000000000000000000000000000000000000000000000000000000000000008160018154600181600116156101000203166002900481106102eb57fe5b81546001161561030a5790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f580000000000000000000000000000000000000000000000000000000000000081600281546001816001161561010002031660029004811061038157fe5b8154600116156103a05790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f490000000000000000000000000000000000000000000000000000000000000081600381546001816001161561010002031660029004811061041757fe5b8154600116156104365790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f41000000000000000000000000000000000000000000000000000000000000008160048154600181600116156101000203166002900481106104ad57fe5b8154600116156104cc5790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f4f0000000000000000000000000000000000000000000000000000000000000081600581546001816001161561010002031660029004811061054357fe5b8154600116156105625790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f01000000000000000000000000000000000000000000000000000000000000008404021790555050565b7f71000000000000000000000000000000000000000000000000000000000000008160008154600181600116156101000203166002900481106105dc57fe5b8154600116156105fb5790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f630000000000000000000000000000000000000000000000000000000000000081600181546001816001161561010002031660029004811061067257fe5b8154600116156106915790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f780000000000000000000000000000000000000000000000000000000000000081600281546001816001161561010002031660029004811061070857fe5b8154600116156107275790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f690000000000000000000000000000000000000000000000000000000000000081600381546001816001161561010002031660029004811061079e57fe5b8154600116156107bd5790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f610000000000000000000000000000000000000000000000000000000000000081600481546001816001161561010002031660029004811061083457fe5b8154600116156108535790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f6f000000000000000000000000000000000000000000000000000000000000008160058154600181600116156101000203166002900481106108ca57fe5b8154600116156108e95790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055505056fea265627a7a723158208964743981ad11fc672078040c13c0a4898a70fe0f9700b17230801b88e9986a64736f6c63430005110032"; - - public static final String FUNC_NAME = "name"; - - public static final String FUNC_TESTBIGOBJECTOFSTORAGE = "testBigObjectOfStorage"; - - public static final String FUNC_TESTSTORAGE = "testStorage"; - - protected SpaceComplexity(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SpaceComplexity(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall testBigObjectOfStorage(BigInteger n) { - final Function function = new Function( - FUNC_TESTBIGOBJECTOFSTORAGE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testStorage(BigInteger n) { - final Function function = new Function( - FUNC_TESTSTORAGE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SpaceComplexity.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SpaceComplexity.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static SpaceComplexity load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SpaceComplexity(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SpaceComplexity load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SpaceComplexity(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/StringmappingSupport.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/StringmappingSupport.java deleted file mode 100644 index 1d47c5f0bf..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/StringmappingSupport.java +++ /dev/null @@ -1,92 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class StringmappingSupport extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610827806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80638f39654914610051578063d4d7306b14610112578063e4e50f7814610264578063e78855a814610343575b600080fd5b6100976004803603602081101561006757600080fd5b81019080803576ffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610477565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100d75780820151818401526020810190506100bc565b50505050905090810190601f1680156101045780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102626004803603604081101561012857600080fd5b810190808035906020019064010000000081111561014557600080fd5b82018360208201111561015757600080fd5b8035906020019184600183028401116401000000008311171561017957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803590602001906401000000008111156101dc57600080fd5b8201836020820111156101ee57600080fd5b8035906020019184600183028401116401000000008311171561021057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610560565b005b6103416004803603604081101561027a57600080fd5b81019080803576ffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803590602001906401000000008111156102bb57600080fd5b8201836020820111156102cd57600080fd5b803590602001918460018302840111640100000000831117156102ef57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506105e2565b005b6103fc6004803603602081101561035957600080fd5b810190808035906020019064010000000081111561037657600080fd5b82018360208201111561038857600080fd5b803590602001918460018302840111640100000000831117156103aa57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610642565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561043c578082015181840152602081019050610421565b50505050905090810190601f1680156104695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6060600160008376ffffffffffffffffffffffffffffffffffffffffffffff191676ffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105545780601f1061052957610100808354040283529160200191610554565b820191906000526020600020905b81548152906001019060200180831161053757829003601f168201915b50505050509050919050565b806000836040518082805190602001908083835b602083106105975780518252602082019150602081019050602083039250610574565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902090805190602001906105dd92919061074d565b505050565b80600160008476ffffffffffffffffffffffffffffffffffffffffffffff191676ffffffffffffffffffffffffffffffffffffffffffffff19168152602001908152602001600020908051906020019061063d92919061074d565b505050565b60606000826040518082805190602001908083835b6020831061067a5780518252602082019150602081019050602083039250610657565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107415780601f1061071657610100808354040283529160200191610741565b820191906000526020600020905b81548152906001019060200180831161072457829003601f168201915b50505050509050919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061078e57805160ff19168380011785556107bc565b828001600101855582156107bc579182015b828111156107bb5782518255916020019190600101906107a0565b5b5090506107c991906107cd565b5090565b6107ef91905b808211156107eb5760008160009055506001016107d3565b5090565b9056fea265627a7a723158202acb62dc6d5750f1e96d82532dcd8c03cf3e4f5533e9338c64faaf75ab715d1264736f6c63430005110032"; - - public static final String FUNC_GETBYTE32MAPVALUE = "getByte32mapValue"; - - public static final String FUNC_GETSTRINGMAPVALUE = "getStringmapValue"; - - public static final String FUNC_SETBYTE32MAPVALUE = "setByte32mapValue"; - - public static final String FUNC_SETSTRINGMAPVALUE = "setStringmapValue"; - - protected StringmappingSupport(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected StringmappingSupport(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getByte32mapValue(byte[] _key) { - final Function function = new Function(FUNC_GETBYTE32MAPVALUE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Bytes9(_key)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getStringmapValue(String _key) { - final Function function = new Function(FUNC_GETSTRINGMAPVALUE, - Arrays.asList(new Utf8String(_key)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setByte32mapValue(byte[] _key, String _value) { - final Function function = new Function( - FUNC_SETBYTE32MAPVALUE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Bytes9(_key), - new Utf8String(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setStringmapValue(String _key, String _value) { - final Function function = new Function( - FUNC_SETSTRINGMAPVALUE, - Arrays.asList(new Utf8String(_key), - new Utf8String(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StringmappingSupport.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StringmappingSupport.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static StringmappingSupport load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new StringmappingSupport(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static StringmappingSupport load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new StringmappingSupport(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/StructDataType.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/StructDataType.java deleted file mode 100644 index a227359854..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/StructDataType.java +++ /dev/null @@ -1,88 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple6; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class StructDataType extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50600260008001600060018152602001908152602001600020819055506004600160000160006003815260200190815260200160002081905550600560018001819055506006600360000181610066919061007f565b50600760046000018161007991906100ab565b506100f8565b8154818355818111156100a6578183600052602060002091820191016100a591906100d7565b5b505050565b8154818355818111156100d2578183600052602060002091820191016100d191906100db565b5b505050565b5090565b6100f591905b808211156100f1576001016100e1565b5090565b90565b610345806101076000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063c04062261461003b578063f3ffc4511461007c575b600080fd5b6100436100bd565b60405180878152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b610084610294565b60405180878152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b6000806000806000806100ce6102c3565b6040518060200160405290506100e26102d0565b6040518060200160405280600281525090506100fc6102e3565b6040518060200160405290506101106102f0565b6040518060200160405280600960405190808252806020026020018201604052801561015657816020015b610143610303565b81526020019060019003908161013b5790505b5081525090506101646102f0565b600460405180602001604052908160008201805480602002602001604051908101604052809291908181526020016000905b828210156101c55783829060005260206000200160405180600001604052905081526020019060010190610196565b5050505081525050905084600090505083600160008201518160010155905050826003905050600080016000600181526020019081526020016000205460058190555060018001546006819055508360000151600781905550600360000180549050600881905550816000015151600981905550806000015151600a819055506000800160006001815260200190815260200160002054600180015485600001516003600001805490508560000151518560000151519a509a509a509a509a509a505050505050909192939495565b600080600080600080600554600654600754600854600954600a54955095509550955095509550909192939495565b6040518060200160405290565b6040518060200160405280600081525090565b6040518060200160405290565b6040518060200160405280606081525090565b604051806020016040529056fea265627a7a7231582032b4d539c813557f11d5069de2d8cfa6a3203c9915109b6a0cbad757836bd99664736f6c63430005110032"; - - public static final String FUNC_GETRUNVALUE = "getRunValue"; - - public static final String FUNC_RUN = "run"; - - protected StructDataType(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected StructDataType(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StructDataType.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StructDataType.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall> getRunValue() { - final Function function = new Function(FUNC_GETRUNVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple6 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple6( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (BigInteger) results.get(3).getValue(), - (BigInteger) results.get(4).getValue(), - (BigInteger) results.get(5).getValue()); - } - }); - } - - public RemoteCall run() { - final Function function = new Function( - FUNC_RUN, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static StructDataType load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new StructDataType(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static StructDataType load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new StructDataType(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SuicideAndSelfdestruct.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SuicideAndSelfdestruct.java deleted file mode 100644 index cb2f2fb50a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SuicideAndSelfdestruct.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SuicideAndSelfdestruct extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b5033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101b4806100656000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806341c0e1b514610046578063a87d942c14610050578063d09de08a1461006e575b600080fd5b61004e610078565b005b61005861010b565b6040518082815260200191505060405180910390f35b610076610114565b005b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561010957600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b565b60008054905090565b6000600a90503373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561017c5780600054016000819055505b5056fea265627a7a72315820356dd02b35b8fc90144d8449508e9c811f97f843b9fe9f077aa8f1074545a9cc64736f6c63430005110032"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_INCREMENT = "increment"; - - public static final String FUNC_KILL = "kill"; - - protected SuicideAndSelfdestruct(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SuicideAndSelfdestruct(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SuicideAndSelfdestruct.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SuicideAndSelfdestruct.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall increment() { - final Function function = new Function( - FUNC_INCREMENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall kill() { - final Function function = new Function( - FUNC_KILL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static SuicideAndSelfdestruct load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SuicideAndSelfdestruct(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SuicideAndSelfdestruct load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SuicideAndSelfdestruct(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Sum.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Sum.java deleted file mode 100644 index b232259491..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Sum.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Sum extends Contract { - private static final String BINARY = "61016b610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c806387fbcc771461003a575b600080fd5b6100f06004803603602081101561005057600080fd5b810190808035906020019064010000000081111561006d57600080fd5b82018360208201111561007f57600080fd5b803590602001918460208302840111640100000000831117156100a157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050610106565b6040518082815260200191505060405180910390f35b600080600090505b825181101561013057602081026020840101518201915080600101905061010e565b5091905056fea265627a7a72315820e8c07487e5e35ca854ec08e1571382e1698003e291b8ac8e7d0337840f50e58d64736f6c63430005110032"; - - public static final String FUNC_SUMUSINGINLINEASSEMBLY = "sumUsingInlineAssembly"; - - protected Sum(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Sum(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sumUsingInlineAssembly(List _data) { - final Function function = new Function(FUNC_SUMUSINGINLINEASSEMBLY, - Arrays.asList(new com.alaya.abi.solidity.datatypes.DynamicArray( - Uint256.class, - com.alaya.abi.solidity.Utils.typeMap(_data, Uint256.class))), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Sum.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Sum.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Sum load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Sum(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Sum load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Sum(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SumAssembly.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SumAssembly.java deleted file mode 100644 index 89ea8b5200..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/SumAssembly.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SumAssembly extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50600060019080600181540180825580915050906001820390600052602060002001600090919290919091505550600060029080600181540180825580915050906001820390600052602060002001600090919290919091505550600060039080600181540180825580915050906001820390600052602060002001600090919290919091505550600060049080600181540180825580915050906001820390600052602060002001600090919290919091505550600060059080600181540180825580915050906001820390600052602060002001600090919290919091505550610153806101016000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063853255cc14610030575b600080fd5b61003861004e565b6040518082815260200191505060405180910390f35b600073__$0b57193f600960d8b32f465d99d292bef2$__6387fbcc7760006040518263ffffffff1660e01b8152600401808060200182810382528381815481526020019150805480156100c057602002820191906000526020600020905b8154815260200190600101908083116100ac575b50509250505060206040518083038186803b1580156100de57600080fd5b505af41580156100f2573d6000803e3d6000fd5b505050506040513d602081101561010857600080fd5b810190808051906020019092919050505090509056fea265627a7a72315820c53b8a5b9972a12b2d7eb12d5af89ca51b1d0585ddd3d5a9fc65d508598b713f64736f6c63430005110032\n" - + "\n" - + "// $0b57193f600960d8b32f465d99d292bef2$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/07Assembly/SumAssembly.sol:Sum"; - - public static final String FUNC_SUM = "sum"; - - protected SumAssembly(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SumAssembly(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SumAssembly.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SumAssembly.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall sum() { - final Function function = new Function(FUNC_SUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static SumAssembly load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SumAssembly(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SumAssembly load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SumAssembly(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Time.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Time.java deleted file mode 100644 index c1f7bff3ce..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Time.java +++ /dev/null @@ -1,108 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Time extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061018a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806328ed13a5146100675780633c35a0c1146100855780637fefad021461008f578063931f8bcd146100ad5780639bd1479a146100cb578063cea52e71146100e9575b600080fd5b61006f610107565b6040518082815260200191505060405180910390f35b61008d610114565b005b610097610121565b6040518082815260200191505060405180910390f35b6100b5610130565b6040518082815260200191505060405180910390f35b6100d361013a565b6040518082815260200191505060405180910390f35b6100f1610147565b6040518082815260200191505060405180910390f35b6000603c60005401905090565b6305f5e100600081905550565b600062093a8060005401905090565b6000424203905090565b6000600160005401905090565b6000610e106000540190509056fea265627a7a7231582078acf2bcf813675c0c904713ebffa4fe9203dc18b2242adc530aecf1dcbe0ee264736f6c63430005110032"; - - public static final String FUNC_THOURS = "tHours"; - - public static final String FUNC_TMINUTES = "tMinutes"; - - public static final String FUNC_TSECONDS = "tSeconds"; - - public static final String FUNC_TWEEKS = "tWeeks"; - - public static final String FUNC_TESTTIME = "testTime"; - - public static final String FUNC_TESTIMEDIFF = "testimeDiff"; - - protected Time(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Time(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall tHours() { - final Function function = new Function(FUNC_THOURS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall tMinutes() { - final Function function = new Function(FUNC_TMINUTES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall tSeconds() { - final Function function = new Function(FUNC_TSECONDS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall tWeeks() { - final Function function = new Function(FUNC_TWEEKS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall testTime() { - final Function function = new Function( - FUNC_TESTTIME, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testimeDiff() { - final Function function = new Function(FUNC_TESTIMEDIFF, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TimeComplexity extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610100806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80637003f6c2146041578063d25f264014606c578063e65284be146097575b600080fd5b606a60048036036020811015605557600080fd5b810190808035906020019092919050505060c2565b005b609560048036036020811015608057600080fd5b810190808035906020019092919050505060c5565b005b60c06004803603602081101560ab57600080fd5b810190808035906020019092919050505060c8565b005b50565b50565b5056fea265627a7a723158203dfdd750ffff915fe19f05f447971c1155d268bde84a89e98509dd87fdfac92d64736f6c63430005110032"; - - public static final String FUNC_LOGNTEST = "logNTest"; - - public static final String FUNC_NSQUARETEST = "nSquareTest"; - - public static final String FUNC_NTEST = "nTest"; - - protected TimeComplexity(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TimeComplexity(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall logNTest(BigInteger n) { - final Function function = new Function( - FUNC_LOGNTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall nSquareTest(BigInteger n) { - final Function function = new Function( - FUNC_NSQUARETEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall nTest(BigInteger n) { - final Function function = new Function( - FUNC_NTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TimeComplexity.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TimeComplexity.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TimeComplexity load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TimeComplexity(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TimeComplexity load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TimeComplexity(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/TypeConversionBytesToUintContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/TypeConversionBytesToUintContract.java deleted file mode 100644 index c5c4af2921..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/TypeConversionBytesToUintContract.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint16; -import com.alaya.abi.solidity.datatypes.generated.Uint64; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TypeConversionBytesToUintContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101ab806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80634e9189bc146100465780636ab281811461006c5780638acc06e01461009e575b600080fd5b61004e6100c2565b604051808261ffff1661ffff16815260200191505060405180910390f35b6100746100fe565b604051808267ffffffffffffffff1667ffffffffffffffff16815260200191505060405180910390f35b6100a6610140565b604051808260ff1660ff16815260200191505060405180910390f35b6000807f6162636400000000000000000000000000000000000000000000000000000000905060008160e01c9050600081905080935050505090565b6000807f6162636400000000000000000000000000000000000000000000000000000000905060008160e01c905060008163ffffffff16905080935050505090565b6000807f6100000000000000000000000000000000000000000000000000000000000000905060008160f81c905080925050509056fea265627a7a72315820eb3d6c103e6a0bf25d47458b1ab9c36a35579b3edbc0abc6fab8ae088456644c64736f6c63430005110032"; - - public static final String FUNC_BYTESTOBIGUINT = "bytesToBigUint"; - - public static final String FUNC_BYTESTOSAMEUINT = "bytesToSameUint"; - - public static final String FUNC_BYTESTOSMALLUINT = "bytesToSmallUint"; - - protected TypeConversionBytesToUintContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeConversionBytesToUintContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall bytesToBigUint() { - final Function function = new Function(FUNC_BYTESTOBIGUINT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall bytesToSameUint() { - final Function function = new Function(FUNC_BYTESTOSAMEUINT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall bytesToSmallUint() { - final Function function = new Function(FUNC_BYTESTOSMALLUINT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeConversionBytesToUintContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeConversionBytesToUintContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TypeConversionBytesToUintContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionBytesToUintContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeConversionBytesToUintContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionBytesToUintContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/TypeConversionContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/TypeConversionContract.java deleted file mode 100644 index 9327ca0b90..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/TypeConversionContract.java +++ /dev/null @@ -1,141 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.abi.solidity.datatypes.generated.Bytes2; -import com.alaya.abi.solidity.datatypes.generated.Bytes4; -import com.alaya.abi.solidity.datatypes.generated.Int16; -import com.alaya.abi.solidity.datatypes.generated.Int8; -import com.alaya.abi.solidity.datatypes.generated.Uint16; -import com.alaya.abi.solidity.datatypes.generated.Uint32; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TypeConversionContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610399806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806399a909621161005b57806399a909621461013b578063a1360967146101aa578063ad42221214610206578063dcefd42f1461022a5761007d565b8063744708f814610082578063853255cc146100f15780639311ca6914610115575b600080fd5b61008a61028c565b604051808363ffffffff1663ffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019250505060405180910390f35b6100f96102ae565b604051808260010b60010b815260200191505060405180910390f35b61011d6102c8565b604051808261ffff1661ffff16815260200191505060405180910390f35b6101436102df565b604051808361ffff1661ffff168152602001827dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019250505060405180910390f35b6101b26102ff565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b61020e610338565b604051808260000b60000b815260200191505060405180910390f35b61023261034c565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6000806000611234905060008161ffff169050808160e01b9350935050509091565b60008060029050600060649050808260000b019250505090565b600080600a905060008160ff169050809250505090565b6000806000631234567890506000819050808160f01b9350935050509091565b60008061123460f01b90506000817dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169050809250505090565b600080600190506000819050809250505090565b60008061123460f01b9050600081905080925050509056fea265627a7a72315820175a12bb7a365783254ffad33e479bdb14d801757c655fe00a296c1db42eaf7664736f6c63430005110032"; - - public static final String FUNC_CONVERSION = "conversion"; - - public static final String FUNC_DISPLAYCONVERSION = "displayConversion"; - - public static final String FUNC_DISPLAYCONVERSION1 = "displayConversion1"; - - public static final String FUNC_DISPLAYCONVERSION2 = "displayConversion2"; - - public static final String FUNC_DISPLAYCONVERSION3 = "displayConversion3"; - - public static final String FUNC_DISPLAYCONVERSION4 = "displayConversion4"; - - public static final String FUNC_SUM = "sum"; - - protected TypeConversionContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeConversionContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall conversion() { - final Function function = new Function(FUNC_CONVERSION, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall displayConversion() { - final Function function = new Function(FUNC_DISPLAYCONVERSION, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> displayConversion1() { - final Function function = new Function(FUNC_DISPLAYCONVERSION1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (byte[]) results.get(1).getValue()); - } - }); - } - - public RemoteCall> displayConversion2() { - final Function function = new Function(FUNC_DISPLAYCONVERSION2, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (byte[]) results.get(1).getValue()); - } - }); - } - - public RemoteCall displayConversion3() { - final Function function = new Function(FUNC_DISPLAYCONVERSION3, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall displayConversion4() { - final Function function = new Function(FUNC_DISPLAYCONVERSION4, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall sum() { - final Function function = new Function(FUNC_SUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeConversionContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeConversionContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TypeConversionContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeConversionContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/TypeName.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/TypeName.java deleted file mode 100644 index 46d41a5e59..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/TypeName.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TypeName extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101ec806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806306fdde031461003b578063f5f5ba72146100be575b600080fd5b610043610141565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100c661017a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101065780820151818401526020810190506100eb565b50505050905090810190601f1680156101335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6040518060400160405260088152806020017f547970654e616d6500000000000000000000000000000000000000000000000081525081565b60606040518060400160405260088152806020017f547970654e616d6500000000000000000000000000000000000000000000000081525090509056fea265627a7a72315820019d2415a3a5170497e0c3deb97b8fc844f08fbdeddf93e5b08fc68fe07683b164736f6c63430005110032"; - - public static final String FUNC_GETCONTRACTNAME = "getContractName"; - - public static final String FUNC_NAME = "name"; - - protected TypeName(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeName(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getContractName() { - final Function function = new Function( - FUNC_GETCONTRACTNAME, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeName.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeName.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TypeName load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeName(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeName load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeName(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/TypeNameFunction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/TypeNameFunction.java deleted file mode 100644 index f0a5aa069b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/TypeNameFunction.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TypeNameFunction extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011d806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806326121ff014602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405260108152806020017f547970654e616d6546756e6374696f6e0000000000000000000000000000000081525090509056fea265627a7a72315820082f5158ec1ee17be79b4371436b9a9c04bca1f505876b1966d7cf492ab184c164736f6c63430005110032"; - - public static final String FUNC_F = "f"; - - protected TypeNameFunction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeNameFunction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f() { - final Function function = new Function(FUNC_F, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeNameFunction.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeNameFunction.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TypeNameFunction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeNameFunction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeNameFunction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeNameFunction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/UserMapping.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/UserMapping.java deleted file mode 100644 index f9d56db2db..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/UserMapping.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class UserMapping extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101b7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806316fa21101461003b578063ff7ac36d14610073575b600080fd5b6100716004803603604081101561005157600080fd5b8101908080359060200190929190803590602001909291905050506100b5565b005b61009f6004803603602081101561008957600080fd5b8101908080359060200190929190505050610166565b6040518082815260200191505060405180910390f35b8160008083815260200190815260200160002081905550600073__$1fb7664ba683410381647f1e7f625106f9$__6312c487069091836040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b15801561012657600080fd5b505af415801561013a573d6000803e3d6000fd5b505050506040513d602081101561015057600080fd5b8101908080519060200190929190505050505050565b600080600083815260200190815260200160002054905091905056fea265627a7a72315820952424cbade8d2d4e49a4f7c09811d09026bff79b9d4e10caef2924a596057fe64736f6c63430005110032\n" - + "\n" - + "// $1fb7664ba683410381647f1e7f625106f9$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserLib.sol:UserLib"; - - public static final String FUNC_GETOUTUSER = "getOutUser"; - - public static final String FUNC_SETOUTUSER = "setOutUser"; - - protected UserMapping(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected UserMapping(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getOutUser(BigInteger _id) { - final Function function = new Function(FUNC_GETOUTUSER, - Arrays.asList(new Uint256(_id)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setOutUser(BigInteger _age, BigInteger _id) { - final Function function = new Function( - FUNC_SETOUTUSER, - Arrays.asList(new Uint256(_age), - new Uint256(_id)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(UserMapping.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(UserMapping.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static UserMapping load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new UserMapping(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static UserMapping load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new UserMapping(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Visibility.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Visibility.java deleted file mode 100644 index da05f00839..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/Visibility.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Visibility extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610104806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063b8b1feb4146037578063ca77156f146076575b600080fd5b606060048036036020811015604b57600080fd5b810190808035906020019092919050505060b5565b6040518082815260200191505060405180910390f35b609f60048036036020811015608a57600080fd5b810190808035906020019092919050505060c2565b6040518082815260200191505060405180910390f35b6000600382019050919050565b600060028201905091905056fea265627a7a723158201fdfb30dbf806b1e68d3c4ec30a09f312cb7f542217bca8afcaeb1af06c4ce5764736f6c63430005110032"; - - public static final String FUNC_FE = "fe"; - - public static final String FUNC_FPUB = "fpub"; - - protected Visibility(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Visibility(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall fe(BigInteger a) { - final Function function = new Function(FUNC_FE, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall fpub(BigInteger a) { - final Function function = new Function(FUNC_FPUB, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Visibility.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Visibility.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Visibility load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Visibility(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Visibility load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Visibility(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/VisibilityCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/VisibilityCall.java deleted file mode 100644 index acb867f52e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/VisibilityCall.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class VisibilityCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610301806100206000396000f3fe60806040526004361061001e5760003560e01c8063bef55ef314610023575b600080fd5b61002b610048565b604051808381526020018281526020019250505060405180910390f35b60008060006040516100599061019b565b604051809103906000f080158015610075573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff1663ca77156f60016040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156100ca57600080fd5b505afa1580156100de573d6000803e3d6000fd5b505050506040513d60208110156100f457600080fd5b810190808051906020019092919050505092508073ffffffffffffffffffffffffffffffffffffffff1663b8b1feb460016040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561015957600080fd5b505afa15801561016d573d6000803e3d6000fd5b505050506040513d602081101561018357600080fd5b81019080805190602001909291905050509150509091565b610124806101a98339019056fe608060405234801561001057600080fd5b50610104806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063b8b1feb4146037578063ca77156f146076575b600080fd5b606060048036036020811015604b57600080fd5b810190808035906020019092919050505060b5565b6040518082815260200191505060405180910390f35b609f60048036036020811015608a57600080fd5b810190808035906020019092919050505060c2565b6040518082815260200191505060405180910390f35b6000600382019050919050565b600060028201905091905056fea265627a7a723158201fdfb30dbf806b1e68d3c4ec30a09f312cb7f542217bca8afcaeb1af06c4ce5764736f6c63430005110032a265627a7a72315820956f64ca67743a196d5585c6535d3069771ffb07a9c249f6e53a62385925551c64736f6c63430005110032"; - - public static final String FUNC_READDATA = "readData"; - - protected VisibilityCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected VisibilityCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall readData(BigInteger vonValue) { - final Function function = new Function( - FUNC_READDATA, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(VisibilityCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(VisibilityCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static VisibilityCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new VisibilityCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static VisibilityCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new VisibilityCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/WhileError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/WhileError.java deleted file mode 100644 index d061df7558..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/WhileError.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class WhileError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060c98061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063ed6f916c14602d575b600080fd5b6033604d565b604051808215151515815260200191505060405180910390f35b60008060566070565b90508060000160009054906101000a900460ff1691505090565b60005b600090508060000160009054906101000a900460ff16156091576073565b9056fea265627a7a723158205131275a0b0f4f1e012175bb33944d64f844ec9e0c9a48b9c939196c08aacc3d64736f6c63430005110032"; - - public static final String FUNC_GETWHILECONTROLRES = "getWhileControlRes"; - - protected WhileError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected WhileError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getWhileControlRes() { - final Function function = new Function(FUNC_GETWHILECONTROLRES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WhileError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WhileError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static WhileError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new WhileError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static WhileError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new WhileError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/WithBackCallee.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/WithBackCallee.java deleted file mode 100644 index c4120af043..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/WithBackCallee.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class WithBackCallee extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506103eb806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063688755701461003b578063ae49cd9c1461007d575b600080fd5b6100676004803603602081101561005157600080fd5b8101908080359060200190929190505050610248565b6040518082815260200191505060405180910390f35b6101cd6004803603604081101561009357600080fd5b81019080803590602001906401000000008111156100b057600080fd5b8201836020820111156100c257600080fd5b803590602001918460018302840111640100000000831117156100e457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019064010000000081111561014757600080fd5b82018360208201111561015957600080fd5b8035906020019184600183028401116401000000008311171561017b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610259565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561020d5780820151818401526020810190506101f2565b50505050905090810190601f16801561023a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b600080828301905080915050919050565b6060610265838361026d565b905092915050565b6060808390506060839050606081518351016040519080825280601f01601f1916602001820160405280156102b15781602001600182028038833980820191505090505b5090506060819050600080905060008090505b8551811015610332578581815181106102d957fe5b602001015160f81c60f81b8383806001019450815181106102f657fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080806001019150506102c4565b5060008090505b84518110156103a75784818151811061034e57fe5b602001015160f81c60f81b83838060010194508151811061036b57fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050610339565b5082955050505050509291505056fea265627a7a72315820e5e8427b46f3821eaef1b29f7901cae35fd130ae6ea86272b151876e1eb72e5764736f6c63430005110032"; - - public static final String FUNC_GETDOUBLE = "getDouble"; - - public static final String FUNC_GETNAME = "getName"; - - protected WithBackCallee(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected WithBackCallee(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDouble(BigInteger a) { - final Function function = new Function( - FUNC_GETDOUBLE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getName(String option, String name) { - final Function function = new Function( - FUNC_GETNAME, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Utf8String(option), - new com.alaya.abi.solidity.datatypes.Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WithBackCallee.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WithBackCallee.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static WithBackCallee load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new WithBackCallee(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static WithBackCallee load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new WithBackCallee(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/WithBackCaller.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/WithBackCaller.java deleted file mode 100644 index 6dc78b25cb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_5_17/WithBackCaller.java +++ /dev/null @@ -1,116 +0,0 @@ -package network.platon.contracts.evm.v0_5_17; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class WithBackCaller extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610d72806100206000396000f3fe608060405234801561001057600080fd5b50600436106100615760003560e01c80621e257c146100665780630687590a146100aa57806308c2938b14610185578063400f6a601461020857806356ea18ab14610256578063de583cfa1461033b575b600080fd5b6100a86004803603602081101561007c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610359565b005b610183600480360360408110156100c057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156100fd57600080fd5b82018360208201111561010f57600080fd5b8035906020019184600183028401116401000000008311171561013157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506104ae565b005b61018d61078a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101cd5780820151818401526020810190506101b2565b50505050905090810190601f1680156101fa5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102546004803603604081101561021e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061082c565b005b6103396004803603606081101561026c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156102a957600080fd5b8201836020820111156102bb57600080fd5b803590602001918460018302840111640100000000831117156102dd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803590602001909291905050506109b0565b005b610343610c8f565b6040518082815260200191505060405180910390f35b8073ffffffffffffffffffffffffffffffffffffffff166055603c604051602401808360ff1681526020018260ff168152602001925050506040516020818303038152906040527f771602f7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b60208310610441578051825260208201915060208101905060208303925061041e565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146104a3576040519150601f19603f3d011682016040523d82523d6000602084013e6104a8565b606091505b50505050565b600060608373ffffffffffffffffffffffffffffffffffffffff1683604051602401808060200180602001838103835260058152602001807f68656c6c6f000000000000000000000000000000000000000000000000000000815250602001838103825284818151815260200191508051906020019080838360005b8381101561054557808201518184015260208101905061052a565b50505050905090810190601f1680156105725780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040527fae49cd9c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b602083106106285780518252602082019150602081019050602083039250610605565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461068a576040519150601f19603f3d011682016040523d82523d6000602084013e61068f565b606091505b50915091508161069e57600080fd5b8080602001905160208110156106b357600080fd5b81019080805160405193929190846401000000008211156106d357600080fd5b838201915060208201858111156106e957600080fd5b825186600182028301116401000000008211171561070657600080fd5b8083526020830192505050908051906020019080838360005b8381101561073a57808201518184015260208101905061071f565b50505050905090810190601f1680156107675780820380516001836020036101000a031916815260200191505b5060405250505060019080519060200190610783929190610c98565b5050505050565b606060018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108225780601f106107f757610100808354040283529160200191610822565b820191906000526020600020905b81548152906001019060200180831161080557829003601f168201915b5050505050905090565b600060608373ffffffffffffffffffffffffffffffffffffffff1683604051602401808281526020019150506040516020818303038152906040527f68875570000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b6020831061090857805182526020820191506020810190506020830392506108e5565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461096a576040519150601f19603f3d011682016040523d82523d6000602084013e61096f565b606091505b50915091508161097e57600080fd5b80806020019051602081101561099357600080fd5b810190808051906020019092919050505060008190555050505050565b600060608473ffffffffffffffffffffffffffffffffffffffff168385604051602401808060200180602001838103835260088152602001807f68656c6c6f676173000000000000000000000000000000000000000000000000815250602001838103825284818151815260200191508051906020019080838360005b83811015610a48578082015181840152602081019050610a2d565b50505050905090810190601f168015610a755780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040527fae49cd9c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b60208310610b2b5780518252602082019150602081019050602083039250610b08565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038160008787f1925050503d8060008114610b8e576040519150601f19603f3d011682016040523d82523d6000602084013e610b93565b606091505b509150915081610ba257600080fd5b808060200190516020811015610bb757600080fd5b8101908080516040519392919084640100000000821115610bd757600080fd5b83820191506020820185811115610bed57600080fd5b8251866001820283011164010000000082111715610c0a57600080fd5b8083526020830192505050908051906020019080838360005b83811015610c3e578082015181840152602081019050610c23565b50505050905090810190601f168015610c6b5780820380516001836020036101000a031916815260200191505b5060405250505060019080519060200190610c87929190610c98565b505050505050565b60008054905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610cd957805160ff1916838001178555610d07565b82800160010185558215610d07579182015b82811115610d06578251825591602001919060010190610ceb565b5b509050610d149190610d18565b5090565b610d3a91905b80821115610d36576000816000905550600101610d1e565b5090565b9056fea265627a7a723158204ecfaec5af137ad9deb6f7811b8e158f2faee417e0ef72821bd5bd506ca8daaf64736f6c63430005110032"; - - public static final String FUNC_CALLADDLTEST = "callAddlTest"; - - public static final String FUNC_CALLDOUBLELTEST = "callDoublelTest"; - - public static final String FUNC_CALLGETNAMETEST = "callgetNameTest"; - - public static final String FUNC_CALLGETNAMETESTWITHGAS = "callgetNameTestWithGas"; - - public static final String FUNC_GETSTRINGRESULT = "getStringResult"; - - public static final String FUNC_GETUINTRESULT = "getuintResult"; - - protected WithBackCaller(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected WithBackCaller(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callAddlTest(String other) { - final Function function = new Function( - FUNC_CALLADDLTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(other)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callDoublelTest(String other, BigInteger a) { - final Function function = new Function( - FUNC_CALLDOUBLELTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(other), - new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callgetNameTest(String other, String name) { - final Function function = new Function( - FUNC_CALLGETNAMETEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(other), - new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callgetNameTestWithGas(String other, String name, BigInteger gasValue) { - final Function function = new Function( - FUNC_CALLGETNAMETESTWITHGAS, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(other), - new Utf8String(name), - new Uint256(gasValue)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getStringResult() { - final Function function = new Function(FUNC_GETSTRINGRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getuintResult() { - final Function function = new Function(FUNC_GETUINTRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WithBackCaller.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WithBackCaller.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static WithBackCaller load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new WithBackCaller(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static WithBackCaller load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new WithBackCaller(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ABIFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ABIFunctions.java deleted file mode 100644 index ed80e319b7..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ABIFunctions.java +++ /dev/null @@ -1,77 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ABIFunctions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061030a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063538fad8b14610046578063911a3363146100c9578063b19d51e41461014c575b600080fd5b61004e6101cf565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561008e578082015181840152602081019050610073565b50505050905090810190601f1680156100bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100d1610216565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101115780820151818401526020810190506100f6565b50505050905090810190601f16801561013e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61015461023e565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610194578082015181840152602081019050610179565b50505050905090810190601f1680156101c15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b606060405160200180807f31000000000000000000000000000000000000000000000000000000000000008152506001019050604051602081830303815290604052905090565b6060600160405160200180828152602001915050604051602081830303815290604052905090565b60606001604051602401808281526020019150506040516020818303038152906040527f60fe47b1000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090509056fea264697066735822122049658cf6412324ebf2b7fe351fdcaf7caf6ea68c71a96edfb9ec4729e80760bd64736f6c634300060c0033"; - - public static final String FUNC_GETENCODE = "getEncode"; - - public static final String FUNC_GETENCODEPACKED = "getEncodePacked"; - - public static final String FUNC_GETENCODEWITHSIGNATURE = "getEncodeWithSignature"; - - protected ABIFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ABIFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getEncode() { - final Function function = new Function(FUNC_GETENCODE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getEncodePacked() { - final Function function = new Function(FUNC_GETENCODEPACKED, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getEncodeWithSignature() { - final Function function = new Function(FUNC_GETENCODEWITHSIGNATURE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ABIFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ABIFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ABIFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ABIFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ABIFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ABIFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractAInterface.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractAInterface.java deleted file mode 100644 index 834bb198f5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractAInterface.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractAInterface extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_AINTERAGE = "aInterAge"; - - protected AbstractContractAInterface(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractAInterface(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aInterAge() { - final Function function = new Function(FUNC_AINTERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractAInterface.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractAInterface.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractAInterface load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractAInterface(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractAInterface load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractAInterface(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractASubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractASubclass.java deleted file mode 100644 index 2a0d1e5bcd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractASubclass.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractASubclass extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_ASUBAGE = "aSubAge"; - - public static final String FUNC_ASUBNAME = "aSubName"; - - protected AbstractContractASubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractASubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aSubAge() { - final Function function = new Function(FUNC_ASUBAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall aSubName() { - final Function function = new Function(FUNC_ASUBNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractASubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractASubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractASubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractASubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractASubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractASubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractBSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractBSubclass.java deleted file mode 100644 index 15319923bc..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractBSubclass.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractBSubclass extends Contract { - private static final String BINARY = "6080604052604051806020016040528060008152506000908051906020019061002992919061003c565b5034801561003657600080fd5b506100d9565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061007d57805160ff19168380011785556100ab565b828001600101855582156100ab579182015b828111156100aa57825182559160200191906001019061008f565b5b5090506100b891906100bc565b5090565b5b808211156100d55760008160009055506001016100bd565b5090565b6103d8806100e86000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630fdd8d4514610046578063accab56b146100c9578063e652e56514610184575b600080fd5b61004e610207565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561008e578082015181840152602081019050610073565b50505050905090810190601f1680156100bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610182600480360360208110156100df57600080fd5b81019080803590602001906401000000008111156100fc57600080fd5b82018360208201111561010e57600080fd5b8035906020019184600183028401116401000000008311171561013057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610249565b005b61018c610263565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101cc5780820151818401526020810190506101b1565b50505050905090810190601f1680156101f95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6060806040518060400160405280600881526020017f625375624e616d6500000000000000000000000000000000000000000000000081525090508091505090565b806000908051906020019061025f929190610305565b5050565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102fb5780601f106102d0576101008083540402835291602001916102fb565b820191906000526020600020905b8154815290600101906020018083116102de57829003601f168201915b5050505050905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061034657805160ff1916838001178555610374565b82800160010185558215610374579182015b82811115610373578251825591602001919060010190610358565b5b5090506103819190610385565b5090565b5b8082111561039e576000816000905550600101610386565b509056fea264697066735822122094a67deed28c9715e7a3d49f9eb2515b3976ad0ef343761e9f0f7755d5f4702e64736f6c634300060c0033"; - - public static final String FUNC_BSUBNAME = "bSubName"; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - protected AbstractContractBSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractBSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall bSubName() { - final Function function = new Function(FUNC_BSUBNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractBSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractBSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractBSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractBSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractBSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractBSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractCSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractCSubclass.java deleted file mode 100644 index ebd994a685..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractCSubclass.java +++ /dev/null @@ -1,110 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractCSubclass extends Contract { - private static final String BINARY = "60806040526040518060200160405280600081525060009080519060200190610029929190610062565b50604051806020016040528060008152506001908051906020019061004f929190610062565b5034801561005c57600080fd5b506100ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100a357805160ff19168380011785556100d1565b828001600101855582156100d1579182015b828111156100d05782518255916020019190600101906100b5565b5b5090506100de91906100e2565b5090565b5b808211156100fb5760008160009055506001016100e3565b5090565b6105bf8061010e6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806331aa8a6e146100675780633af1a463146100ea5780634fc341131461016d5780639c72890b14610228578063accab56b14610246578063e652e56514610301575b600080fd5b61006f610384565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100af578082015181840152602081019050610094565b50505050905090810190601f1680156100dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100f26103c6565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610132578082015181840152602081019050610117565b50505050905090810190601f16801561015f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102266004803603602081101561018357600080fd5b81019080803590602001906401000000008111156101a057600080fd5b8201836020820111156101b257600080fd5b803590602001918460018302840111640100000000831117156101d457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610468565b005b610230610482565b6040518082815260200191505060405180910390f35b6102ff6004803603602081101561025c57600080fd5b810190808035906020019064010000000081111561027957600080fd5b82018360208201111561028b57600080fd5b803590602001918460018302840111640100000000831117156102ad57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610490565b005b6103096104aa565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561034957808201518184015260208101905061032e565b50505050905090810190601f1680156103765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6060806040518060400160405280600881526020017f635375624e616d6500000000000000000000000000000000000000000000000081525090508091505090565b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561045e5780601f106104335761010080835404028352916020019161045e565b820191906000526020600020905b81548152906001019060200180831161044157829003601f168201915b5050505050905090565b806000908051906020019061047e9291906104ec565b5050565b600080601490508091505090565b80600190805190602001906104a69291906104ec565b5050565b6060806040518060400160405280600a81526020017f706172656e744e616d650000000000000000000000000000000000000000000081525090508091505090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061052d57805160ff191683800117855561055b565b8280016001018555821561055b579182015b8281111561055a57825182559160200191906001019061053f565b5b509050610568919061056c565b5090565b5b8082111561058557600081600090555060010161056d565b509056fea264697066735822122028b4314382f867b6b98adc833263c879581272bab521cbdf64f921269da4f6de64736f6c634300060c0033"; - - public static final String FUNC_ASUBAGE = "aSubAge"; - - public static final String FUNC_ASUBNAME = "aSubName"; - - public static final String FUNC_CSUBNAME = "cSubName"; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETASUBNAME = "setASubName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - protected AbstractContractCSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractCSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aSubAge() { - final Function function = new Function(FUNC_ASUBAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall aSubName() { - final Function function = new Function(FUNC_ASUBNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall cSubName() { - final Function function = new Function(FUNC_CSUBNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setASubName(String v) { - final Function function = new Function( - FUNC_SETASUBNAME, - Arrays.asList(new Utf8String(v)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractCSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractCSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractCSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractCSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractCSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractCSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractDSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractDSubclass.java deleted file mode 100644 index 4c5dcde329..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractDSubclass.java +++ /dev/null @@ -1,90 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractDSubclass extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_DSUBCLASSNAME = "dSubClassName"; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - public static final String FUNC_SETPARENTNAMED = "setParentNameD"; - - protected AbstractContractDSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractDSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall dSubClassName() { - final Function function = new Function(FUNC_DSUBCLASSNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setParentNameD(String name) { - final Function function = new Function( - FUNC_SETPARENTNAMED, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractDSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractDSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractDSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractDSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractDSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractDSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractESubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractESubclass.java deleted file mode 100644 index 64e73be504..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractESubclass.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractESubclass extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_AINTERAGE = "aInterAge"; - - public static final String FUNC_SETINTERAGE = "setInterAge"; - - protected AbstractContractESubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractESubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aInterAge() { - final Function function = new Function(FUNC_AINTERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setInterAge(BigInteger v) { - final Function function = new Function( - FUNC_SETINTERAGE, - Arrays.asList(new Int256(v)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractESubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractESubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractESubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractESubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractESubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractESubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractFSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractFSubclass.java deleted file mode 100644 index d453476748..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractFSubclass.java +++ /dev/null @@ -1,90 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractFSubclass extends Contract { - private static final String BINARY = "6080604052604051806020016040528060008152506000908051906020019061002992919061003c565b5034801561003657600080fd5b506100d9565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061007d57805160ff19168380011785556100ab565b828001600101855582156100ab579182015b828111156100aa57825182559160200191906001019061008f565b5b5090506100b891906100bc565b5090565b5b808211156100d55760008160009055506001016100bd565b5090565b61047a806100e86000396000f3fe608060405234801561001057600080fd5b506004361061004b5760003560e01c8062af095414610050578063accab56b1461010b578063e16ae640146101c6578063e652e56514610249575b600080fd5b6101096004803603602081101561006657600080fd5b810190808035906020019064010000000081111561008357600080fd5b82018360208201111561009557600080fd5b803590602001918460018302840111640100000000831117156100b757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506102cc565b005b6101c46004803603602081101561012157600080fd5b810190808035906020019064010000000081111561013e57600080fd5b82018360208201111561015057600080fd5b8035906020019184600183028401116401000000008311171561017257600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506102e6565b005b6101ce610300565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561020e5780820151818401526020810190506101f3565b50505050905090810190601f16801561023b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610251610305565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610291578082015181840152602081019050610276565b50505050905090810190601f1680156102be5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b80600090805190602001906102e29291906103a7565b5050565b80600090805190602001906102fc9291906103a7565b5050565b606090565b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561039d5780601f106103725761010080835404028352916020019161039d565b820191906000526020600020905b81548152906001019060200180831161038057829003601f168201915b5050505050905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106103e857805160ff1916838001178555610416565b82800160010185558215610416579182015b828111156104155782518255916020019190600101906103fa565b5b5090506104239190610427565b5090565b5b80821115610440576000816000905550600101610428565b509056fea2646970667358221220900ff5ebdbb75b9f468878d3cc6a68810507902a3a25bd949258da754abbc81b64736f6c634300060c0033"; - - public static final String FUNC_DSUBCLASSNAME = "dSubClassName"; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - public static final String FUNC_SETPARENTNAMED = "setParentNameD"; - - protected AbstractContractFSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractFSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall dSubClassName() { - final Function function = new Function(FUNC_DSUBCLASSNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setParentNameD(String name) { - final Function function = new Function( - FUNC_SETPARENTNAMED, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractFSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractFSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractFSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractFSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractFSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractFSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractFather.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractFather.java deleted file mode 100644 index 5f74403ec4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractFather.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractFather extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_FATHERAGE = "fatherAge"; - - public static final String FUNC_FATHERNAME = "fatherName"; - - protected AbstractContractFather(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractFather(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall fatherAge() { - final Function function = new Function(FUNC_FATHERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall fatherName() { - final Function function = new Function(FUNC_FATHERNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractFather.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractFather.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractFather load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractFather(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractFather load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractFather(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractGSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractGSubclass.java deleted file mode 100644 index 2aa9f5bc49..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractGSubclass.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractGSubclass extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b5060f3806100236000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c8063262a9dff14604157806335f99d4814605d578063d1eef376146088575b600080fd5b604760a4565b6040518082815260200191505060405180910390f35b608660048036036020811015607157600080fd5b810190808035906020019092919050505060aa565b005b608e60b4565b6040518082815260200191505060405180910390f35b60005481565b8060008190555050565b6000805490509056fea264697066735822122093a81708c82586462312eba838735c1f9c0e3cbc770431bb71ff30b7513152e964736f6c634300060c0033"; - - public static final String FUNC_AINTERAGE = "aInterAge"; - - public static final String FUNC_AGE = "age"; - - public static final String FUNC_SETINTERAGE = "setInterAge"; - - protected AbstractContractGSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractGSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aInterAge() { - final Function function = new Function(FUNC_AINTERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall age() { - final Function function = new Function(FUNC_AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setInterAge(BigInteger v) { - final Function function = new Function( - FUNC_SETINTERAGE, - Arrays.asList(new Int256(v)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractGSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractGSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractGSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractGSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractGSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractGSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractGrandpa.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractGrandpa.java deleted file mode 100644 index b66988d8dd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractGrandpa.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractGrandpa extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_NAME = "name"; - - protected AbstractContractGrandpa(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractGrandpa(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractGrandpa.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractGrandpa.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractGrandpa load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractGrandpa(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractGrandpa load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractGrandpa(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractParentClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractParentClass.java deleted file mode 100644 index 2d1398ddee..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractParentClass.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractParentClass extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - protected AbstractContractParentClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractParentClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractParentClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractParentClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractParentClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractParentClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractParentClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractParentClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractSon.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractSon.java deleted file mode 100644 index fbd47a193d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AbstractContractSon.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractSon extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061022f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806305a83329146100465780637839360014610064578063ed55abd4146100e7575b600080fd5b61004e61016a565b6040518082815260200191505060405180910390f35b61006c610178565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100ac578082015181840152602081019050610091565b50505050905090810190601f1680156100d95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100ef6101b7565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561012f578082015181840152602081019050610114565b50505050905090810190601f16801561015c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b600080601490508091505090565b6060806040518060400160405280600a81526020017f6661746865724e616d650000000000000000000000000000000000000000000081525090505090565b6060806040518060400160405280600781526020017f736f6e4e616d65000000000000000000000000000000000000000000000000008152509050809150509056fea2646970667358221220a00ae45057fbf07aafbe550d8f32741db0ee079f2d3c7cdd916b7ca86811a67164736f6c634300060c0033"; - - public static final String FUNC_FATHERAGE = "fatherAge"; - - public static final String FUNC_FATHERNAME = "fatherName"; - - public static final String FUNC_SONNAME = "sonName"; - - protected AbstractContractSon(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractSon(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall fatherAge() { - final Function function = new Function(FUNC_FATHERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall fatherName() { - final Function function = new Function(FUNC_FATHERNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall sonName() { - final Function function = new Function(FUNC_SONNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractSon.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractSon.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractSon load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractSon(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractSon load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractSon(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AddressFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AddressFunctions.java deleted file mode 100644 index 0a03239e53..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AddressFunctions.java +++ /dev/null @@ -1,91 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AddressFunctions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061025a806100206000396000f3fe60806040526004361061003f5760003560e01c80631a695230146100445780633e58c58c14610088578063ecbde5e6146100e2578063f8b2cb4f1461010d575b600080fd5b6100866004803603602081101561005a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610172565b005b6100ca6004803603602081101561009e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506101bc565b60405180821515815260200191505060405180910390f35b3480156100ee57600080fd5b506100f76101fb565b6040518082815260200191505060405180910390f35b34801561011957600080fd5b5061015c6004803603602081101561013057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610203565b6040518082815260200191505060405180910390f35b8073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501580156101b8573d6000803e3d6000fd5b5050565b60008173ffffffffffffffffffffffffffffffffffffffff166108fc60019081150290604051600060405180830381858888f193505050509050919050565b600047905090565b60008173ffffffffffffffffffffffffffffffffffffffff1631905091905056fea264697066735822122088c83159280a4b5fc51f49eb91395a0e9a2d3a3222122abb7adf1033efb041d764736f6c634300060c0033"; - - public static final String FUNC_GETBALANCE = "getBalance"; - - public static final String FUNC_GETBALANCEOF = "getBalanceOf"; - - public static final String FUNC_SEND = "send"; - - public static final String FUNC_TRANSFER = "transfer"; - - protected AddressFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AddressFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBalance(String addr) { - final Function function = new Function(FUNC_GETBALANCE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBalanceOf() { - final Function function = new Function(FUNC_GETBALANCEOF, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall send(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_SEND, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall transfer(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AddressFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AddressFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AddressFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AddressFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AddressFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AddressFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AnimalExternal.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AnimalExternal.java deleted file mode 100644 index 2269a73ec7..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AnimalExternal.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AnimalExternal extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50601d60018190555060aa6002819055506040518060400160405280600981526020017f4c75636b7920646f6700000000000000000000000000000000000000000000008152506003908051906020019061006c9291906100be565b506040518060400160405280600a81526020017f323031312d30312d303100000000000000000000000000000000000000000000815250600090805190602001906100b89291906100be565b5061015b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100ff57805160ff191683800117855561012d565b8280016001018555821561012d579182015b8281111561012c578251825591602001919060010190610111565b5b50905061013a919061013e565b5090565b5b8082111561015757600081600090555060010161013f565b5090565b6101ed8061016a6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063262a9dff14610046578063beb0067e14610064578063f377bd5b146100e7575b600080fd5b61004e610105565b6040518082815260200191505060405180910390f35b61006c61010f565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100ac578082015181840152602081019050610091565b50505050905090810190601f1680156100d95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100ef6101b1565b6040518082815260200191505060405180910390f35b6000600154905090565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156101a75780601f1061017c576101008083540402835291602001916101a7565b820191906000526020600020905b81548152906001019060200180831161018a57829003601f168201915b5050505050905090565b6001548156fea264697066735822122063de34328fa5928d54dfdf95a1322ce85b6d2e8f9baa416bb09e80a1ff84ffce64736f6c634300060c0033"; - - public static final String FUNC__AGE = "_age"; - - public static final String FUNC_AGE = "age"; - - public static final String FUNC_BIRTHDAY = "birthDay"; - - protected AnimalExternal(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AnimalExternal(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AnimalExternal.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AnimalExternal.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall _age() { - final Function function = new Function(FUNC__AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall age() { - final Function function = new Function(FUNC_AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall birthDay() { - final Function function = new Function(FUNC_BIRTHDAY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static AnimalExternal load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AnimalExternal(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AnimalExternal load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AnimalExternal(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AssemblyReturns.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AssemblyReturns.java deleted file mode 100644 index 66d634950a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AssemblyReturns.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes2; -import com.alaya.abi.solidity.datatypes.generated.Bytes3; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple5; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AssemblyReturns extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061016d806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806326121ff014610030575b600080fd5b6100386100c3565b60405180868152602001857dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001847cffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200183151581526020018273ffffffffffffffffffffffffffffffffffffffff1681526020019550505050505060405180910390f35b6000806000806000600294507fabcd00000000000000000000000000000000000000000000000000000000000093507f61626300000000000000000000000000000000000000000000000000000000009250600191507372ad2b713faa14c2c4cd2d7affe5d8f538968f5a9050909192939456fea2646970667358221220f29134271505f1fd86028940268d3eba91f2f2b9dc3b217e265f802d02ca27b064736f6c634300060c0033"; - - public static final String FUNC_F = "f"; - - protected AssemblyReturns(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AssemblyReturns(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> f() { - final Function function = new Function(FUNC_F, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference

() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple5 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple5( - (BigInteger) results.get(0).getValue(), - (byte[]) results.get(1).getValue(), - (byte[]) results.get(2).getValue(), - (Boolean) results.get(3).getValue(), - (String) results.get(4).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssemblyReturns.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssemblyReturns.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AssemblyReturns load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AssemblyReturns(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AssemblyReturns load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AssemblyReturns(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AssertContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AssertContract.java deleted file mode 100644 index f521d73c6d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AssertContract.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AssertContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060fa8061005f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806314fef936146037578063de292789146080575b600080fd5b606a60048036036040811015604b57600080fd5b810190808035906020019092919080359060200190929190505050609c565b6040518082815260200191505060405180910390f35b608660ba565b6040518082815260200191505060405180910390f35b600081831160a657fe5b818301600181905550600154905092915050565b600060015490509056fea2646970667358221220b132c1b125087ee04f22872adf7221eb9c4e8d869593bd3028e85cc0e09b57c964736f6c634300060c0033"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final String FUNC_TOSENDERAMOUNT = "toSenderAmount"; - - protected AssertContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AssertContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssertContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssertContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getResult() { - final Function function = new Function(FUNC_GETRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall toSenderAmount(BigInteger frist, BigInteger second) { - final Function function = new Function( - FUNC_TOSENDERAMOUNT, - Arrays.asList(new Uint256(frist), - new Uint256(second)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static AssertContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AssertContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AssertContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AssertContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AssertHandle.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AssertHandle.java deleted file mode 100644 index 9695a5b64a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AssertHandle.java +++ /dev/null @@ -1,112 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AssertHandle extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610170806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80638c671e0a14610067578063ad92212f14610071578063afcd320e1461007b578063cda0a5eb146100a9578063f25e0471146100f9578063f81cf6db14610103575b600080fd5b61006f61010d565b005b61007961010f565b005b6100a76004803603602081101561009157600080fd5b8101908080359060200190929190505050610111565b005b6100d8600480360360208110156100bf57600080fd5b81019080803560000b906020019092919050505061011e565b604051808260038111156100e857fe5b815260200191505060405180910390f35b610101610136565b005b61010b610138565b005b565b565b600a811061011b57fe5b50565b60008160000b600381111561012f57fe5b9050919050565b565b56fea2646970667358221220b78a6c1a3ea91bde04ec447a23646e8cc9beeeb89755e0bde412441cdf0ea88164736f6c634300060c0033"; - - public static final String FUNC_BINARYMOVEMINUSEXCEPTION = "binaryMoveMinusException"; - - public static final String FUNC_DIVIDENDZEROEXCEPTION = "dividendZeroException"; - - public static final String FUNC_INTCHANGEEXCEPTION = "intChangeException"; - - public static final String FUNC_NOOUTOFBOUNDSEXCEPTION = "noOutOfBoundsException"; - - public static final String FUNC_OUTOFBOUNDSEXCEPTION = "outOfBoundsException"; - - public static final String FUNC_PARAMEXCEPTION = "paramException"; - - protected AssertHandle(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AssertHandle(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall binaryMoveMinusException() { - final Function function = new Function( - FUNC_BINARYMOVEMINUSEXCEPTION, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall dividendZeroException() { - final Function function = new Function( - FUNC_DIVIDENDZEROEXCEPTION, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall intChangeException(BigInteger param) { - final Function function = new Function( - FUNC_INTCHANGEEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Int8(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall noOutOfBoundsException() { - final Function function = new Function( - FUNC_NOOUTOFBOUNDSEXCEPTION, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall outOfBoundsException() { - final Function function = new Function( - FUNC_OUTOFBOUNDSEXCEPTION, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall paramException(BigInteger param) { - final Function function = new Function( - FUNC_PARAMEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssertHandle.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssertHandle.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AssertHandle load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AssertHandle(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AssertHandle load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AssertHandle(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AtomicSwap.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AtomicSwap.java deleted file mode 100644 index b63878228d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/AtomicSwap.java +++ /dev/null @@ -1,341 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple8; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AtomicSwap extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611320806100606000396000f3fe6080604052600436106100555760003560e01c80632b68b9c61461005a578063446bffba1461007157806348e558da1461009f5780637249fbb614610101578063b31597ad1461013c578063eb84e7f214610181575b600080fd5b34801561006657600080fd5b5061006f610238565b005b61009d6004803603602081101561008757600080fd5b81019080803590602001909291905050506103a8565b005b6100ff600480360360808110156100b557600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019092919050505061057c565b005b34801561010d57600080fd5b5061013a6004803603602081101561012457600080fd5b81019080803590602001909291905050506108c4565b005b34801561014857600080fd5b5061017f6004803603604081101561015f57600080fd5b810190808035906020019092919080359060200190929190505050610ba9565b005b34801561018d57600080fd5b506101ba600480360360208110156101a457600080fd5b81019080803590602001909291905050506110da565b604051808981526020018881526020018773ffffffffffffffffffffffffffffffffffffffff1681526020018673ffffffffffffffffffffffffffffffffffffffff16815260200185815260200184815260200183815260200182600381111561022057fe5b81526020019850505050505050505060405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146102f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000471461036f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f62616c616e6365206973206e6f74207a65726f0000000000000000000000000081525060200191505060405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b80600160038111156103b657fe5b6001600083815260200190815260200160002060070160009054906101000a900460ff1660038111156103e557fe5b1461043b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c8152602001806112bf602c913960400191505060405180910390fd5b8160016000828152602001908152602001600020600401544211156104c8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f726566756e6454696d652068617320616c726561647920636f6d65000000000081525060200191505060405180910390fd5b6104f134600160008681526020019081526020016000206005015461116f90919063ffffffff16565b6001600085815260200190815260200160002060050181905550827fd760a88b05be4d78a2815eb20f72049b7c89e1dca4fc467139fe3f2224a37423336001600087815260200190815260200160002060050154604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a2505050565b83826000600381111561058b57fe5b6001600084815260200190815260200160002060070160009054906101000a900460ff1660038111156105ba57fe5b14610610576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260278152602001806112986027913960400191505060405180910390fd5b428111610668576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806112766022913960400191505060405180910390fd5b61067b83346111f290919063ffffffff16565b6001600088815260200190815260200160002060050181905550856001600088815260200190815260200160002060000181905550336001600088815260200190815260200160002060020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550846001600088815260200190815260200160002060030160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550836001600088815260200190815260200160002060040181905550826001600088815260200190815260200160002060060181905550600180600088815260200190815260200160002060070160006101000a81548160ff021916908360038111156107c257fe5b02179055506001600087815260200190815260200160002060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16867f5e919055312829285818d366d1cfe50a1ba27ce2c752b655cb2faa0179e1422733600160008b815260200190815260200160002060040154600160008c815260200190815260200160002060050154600160008d815260200190815260200160002060060154604051808573ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182815260200194505050505060405180910390a3505050505050565b80600160038111156108d257fe5b6001600083815260200190815260200160002060070160009054906101000a900460ff16600381111561090157fe5b14610957576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c8152602001806112bf602c913960400191505060405180910390fd5b8160016000828152602001908152602001600020600401544210156109e4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f726566756e6454696d657374616d7020686173206e6f7420706173736564000081525060200191505060405180910390fd5b60036001600085815260200190815260200160002060070160006101000a81548160ff02191690836003811115610a1757fe5b0217905550827ffe509803c09416b28ff3d8f690c8b0c61462a892c46d5430c8fb20abe472daf060405160405180910390a26001600084815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc610ad86001600087815260200190815260200160002060060154600160008881526020019081526020016000206005015461116f90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015610b03573d6000803e3d6000fd5b506001600084815260200190815260200160002060008082016000905560018201600090556002820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556003820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556004820160009055600582016000905560068201600090556007820160006101000a81549060ff02191690555050505050565b8160016003811115610bb757fe5b6001600083815260200190815260200160002060070160009054906101000a900460ff166003811115610be657fe5b14610c3c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c8152602001806112bf602c913960400191505060405180910390fd5b828260016000838152602001908152602001600020600401544210610cac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806112766022913960400191505060405180910390fd5b8160028083604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b60208310610d035780518252602082019150602081019050602083039250610ce0565b6001836020036101000a038019825116818451168082178552505050505050905001915050602060405180830381855afa158015610d45573d6000803e3d6000fd5b5050506040513d6020811015610d5a57600080fd5b8101908080519060200190929190505050604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b60208310610dbd5780518252602082019150602081019050602083039250610d9a565b6001836020036101000a038019825116818451168082178552505050505050905001915050602060405180830381855afa158015610dff573d6000803e3d6000fd5b5050506040513d6020811015610e1457600080fd5b810190808051906020019092919050505014610e98576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f736563726574206973206e6f7420636f7272656374000000000000000000000081525060200191505060405180910390fd5b83600160008781526020019081526020016000206001018190555060026001600087815260200190815260200160002060070160006101000a81548160ff02191690836003811115610ee657fe5b0217905550847f489e9ee921192823d1aa1ef800c9ffc642993538b1e7e43a4d46a91965e894ab856040518082815260200191505060405180910390a26001600086815260200190815260200160002060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc60016000888152602001908152602001600020600501549081150290604051600060405180830381858888f19350505050158015610fb5573d6000803e3d6000fd5b50600060016000878152602001908152602001600020600601541115611033573373ffffffffffffffffffffffffffffffffffffffff166108fc60016000888152602001908152602001600020600601549081150290604051600060405180830381858888f19350505050158015611031573d6000803e3d6000fd5b505b6001600086815260200190815260200160002060008082016000905560018201600090556002820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556003820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556004820160009055600582016000905560068201600090556007820160006101000a81549060ff021916905550505050505050565b60016020528060005260406000206000915090508060000154908060010154908060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060040154908060050154908060060154908060070160009054906101000a900460ff16905088565b60008183019050828110156111ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f536166654d617468206164642077726f6e672076616c7565000000000000000081525060200191505060405180910390fd5b92915050565b60008282111561126a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f536166654d617468207375622077726f6e672076616c7565000000000000000081525060200191505060405180910390fd5b81830390509291505056fe726566756e6454696d657374616d702068617320616c7265616479207061737365647377617020666f722074686973206861736820697320616c726561647920696e697469617465647377617020666f722074686973206861736820697320656d707479206f7220616c7265616479207370656e74a26469706673582212205e9ffa92b0774ad1ce9ce8ce87abd11a76580787ee32a3a096651c87e0b62fcb64736f6c634300060c0033"; - - public static final String FUNC_ADD = "add"; - - public static final String FUNC_DESTRUCT = "destruct"; - - public static final String FUNC_INITIATE = "initiate"; - - public static final String FUNC_REDEEM = "redeem"; - - public static final String FUNC_REFUND = "refund"; - - public static final String FUNC_SWAPS = "swaps"; - - public static final Event ADDED_EVENT = new Event("Added", - Arrays.>asList(new TypeReference(true) {}, new TypeReference

() {}, new TypeReference() {})); - ; - - public static final Event INITIATED_EVENT = new Event("Initiated", - Arrays.>asList(new TypeReference(true) {}, new TypeReference
(true) {}, new TypeReference
() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - ; - - public static final Event REDEEMED_EVENT = new Event("Redeemed", - Arrays.>asList(new TypeReference(true) {}, new TypeReference() {})); - ; - - public static final Event REFUNDED_EVENT = new Event("Refunded", - Arrays.>asList(new TypeReference(true) {})); - ; - - protected AtomicSwap(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AtomicSwap(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getAddedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ADDED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - AddedEventResponse typedResponse = new AddedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._sender = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable addedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public AddedEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ADDED_EVENT, log); - AddedEventResponse typedResponse = new AddedEventResponse(); - typedResponse.log = log; - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._sender = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable addedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ADDED_EVENT)); - return addedEventObservable(filter); - } - - public List getInitiatedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(INITIATED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - InitiatedEventResponse typedResponse = new InitiatedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._participant = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._initiator = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._refundTimestamp = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(2).getValue(); - typedResponse._payoff = (BigInteger) eventValues.getNonIndexedValues().get(3).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable initiatedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public InitiatedEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(INITIATED_EVENT, log); - InitiatedEventResponse typedResponse = new InitiatedEventResponse(); - typedResponse.log = log; - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._participant = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._initiator = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._refundTimestamp = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(2).getValue(); - typedResponse._payoff = (BigInteger) eventValues.getNonIndexedValues().get(3).getValue(); - return typedResponse; - } - }); - } - - public Observable initiatedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(INITIATED_EVENT)); - return initiatedEventObservable(filter); - } - - public List getRedeemedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(REDEEMED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - RedeemedEventResponse typedResponse = new RedeemedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._secret = (byte[]) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable redeemedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public RedeemedEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(REDEEMED_EVENT, log); - RedeemedEventResponse typedResponse = new RedeemedEventResponse(); - typedResponse.log = log; - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._secret = (byte[]) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable redeemedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(REDEEMED_EVENT)); - return redeemedEventObservable(filter); - } - - public List getRefundedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(REFUNDED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - RefundedEventResponse typedResponse = new RefundedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable refundedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public RefundedEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(REFUNDED_EVENT, log); - RefundedEventResponse typedResponse = new RefundedEventResponse(); - typedResponse.log = log; - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable refundedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(REFUNDED_EVENT)); - return refundedEventObservable(filter); - } - - public RemoteCall add(byte[] _hashedSecret, BigInteger vonValue) { - final Function function = new Function( - FUNC_ADD, - Arrays.asList(new Bytes32(_hashedSecret)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall destruct() { - final Function function = new Function( - FUNC_DESTRUCT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initiate(byte[] _hashedSecret, String _participant, BigInteger _refundTimestamp, BigInteger _payoff, BigInteger vonValue) { - final Function function = new Function( - FUNC_INITIATE, - Arrays.asList(new Bytes32(_hashedSecret), - new Address(_participant), - new Uint256(_refundTimestamp), - new Uint256(_payoff)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall redeem(byte[] _hashedSecret, byte[] _secret) { - final Function function = new Function( - FUNC_REDEEM, - Arrays.asList(new Bytes32(_hashedSecret), - new Bytes32(_secret)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall refund(byte[] _hashedSecret) { - final Function function = new Function( - FUNC_REFUND, - Arrays.asList(new Bytes32(_hashedSecret)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall> swaps(byte[] param0) { - final Function function = new Function(FUNC_SWAPS, - Arrays.asList(new Bytes32(param0)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference
() {}, new TypeReference
() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple8 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple8( - (byte[]) results.get(0).getValue(), - (byte[]) results.get(1).getValue(), - (String) results.get(2).getValue(), - (String) results.get(3).getValue(), - (BigInteger) results.get(4).getValue(), - (BigInteger) results.get(5).getValue(), - (BigInteger) results.get(6).getValue(), - (BigInteger) results.get(7).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AtomicSwap.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AtomicSwap.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AtomicSwap load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AtomicSwap(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AtomicSwap load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AtomicSwap(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class AddedEventResponse { - public Log log; - - public byte[] _hashedSecret; - - public String _sender; - - public BigInteger _value; - } - - public static class InitiatedEventResponse { - public Log log; - - public byte[] _hashedSecret; - - public String _participant; - - public String _initiator; - - public BigInteger _refundTimestamp; - - public BigInteger _value; - - public BigInteger _payoff; - } - - public static class RedeemedEventResponse { - public Log log; - - public byte[] _hashedSecret; - - public byte[] _secret; - } - - public static class RefundedEventResponse { - public Log log; - - public byte[] _hashedSecret; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BasicDataTypeConstantContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BasicDataTypeConstantContract.java deleted file mode 100644 index 1f40b780cb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BasicDataTypeConstantContract.java +++ /dev/null @@ -1,238 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.abi.solidity.datatypes.generated.Bytes2; -import com.alaya.abi.solidity.datatypes.generated.Uint128; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple3; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BasicDataTypeConstantContract extends Contract { - private static final String BINARY = "60806040526040518060400160405280600581526020017f68656c6c6f0000000000000000000000000000000000000000000000000000008152506000908051906020019061004f9291906100ae565b506040518060400160405280600581526020017f776f726c640000000000000000000000000000000000000000000000000000008152506001908051906020019061009b9291906100ae565b503480156100a857600080fd5b5061014b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100ef57805160ff191683800117855561011d565b8280016001018555821561011d579182015b8281111561011c578251825591602001919060010190610101565b5b50905061012a919061012e565b5090565b5b8082111561014757600081600090555060010161012f565b5090565b610a718061015a6000396000f3fe6080604052600436106100fe5760003560e01c80636273899811610095578063a574971011610064578063a5749710146104cd578063a650b683146104f8578063ccb3441514610588578063ea07cdfa146105d5578063f8b2cb4f14610600576100fe565b8063627389981461031357806369c769171461033e5780637c66959d146103ce578063833f17d51461046c576100fe565b806338cc4831116100d157806338cc48311461022557806343e33562146102665780634dbe1d0f146102b2578063515899f0146102e8576100fe565b8063166aa6e614610103578063209652551461016057806332c7a283146101ab57806338023fb9146101e1575b600080fd5b34801561010f57600080fd5b5061013f6004803603602081101561012657600080fd5b81019080803560ff169060200190929190505050610665565b6040518082600381111561014f57fe5b815260200191505060405180910390f35b34801561016c57600080fd5b5061017561066f565b60405180846fffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390f35b3480156101b757600080fd5b506101c06106a0565b604051808260038111156101d057fe5b815260200191505060405180910390f35b610223600480360360208110156101f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506106b8565b005b34801561023157600080fd5b5061023a610702565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561027257600080fd5b5061027b610723565b60405180827dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b3480156102be57600080fd5b506102c7610750565b604051808260038111156102d757fe5b815260200191505060405180910390f35b3480156102f457600080fd5b506102fd610761565b6040518082815260200191505060405180910390f35b34801561031f57600080fd5b5061032861077e565b6040518082815260200191505060405180910390f35b34801561034a57600080fd5b5061035361078c565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610393578082015181840152602081019050610378565b50505050905090810190601f1680156103c05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103da57600080fd5b506103e3610890565b60405180847dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001935050505060405180910390f35b6104ae6004803603602081101561048257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506108e8565b6040518083815260200182151581526020019250505060405180910390f35b3480156104d957600080fd5b506104e261092a565b6040518082815260200191505060405180910390f35b34801561050457600080fd5b5061050d610932565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561054d578082015181840152602081019050610532565b50505050905090810190601f16801561057a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561059457600080fd5b5061059d6109d4565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b3480156105e157600080fd5b506105ea610a01565b6040518082815260200191505060405180910390f35b34801561060c57600080fd5b5061064f6004803603602081101561062357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1a565b6040518082815260200191505060405180910390f35b6000819050919050565b6000806000806003905060006404a817c80090506000660aa87bee5380009050828282955095509550505050909192565b6000806003808111156106af57fe5b90508091505090565b8073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501580156106fe573d6000803e3d6000fd5b5050565b6000807372ad2b713faa14c2c4cd2d7affe5d8f538968f5a90508091505090565b6000807f01f400000000000000000000000000000000000000000000000000000000000090508091505090565b600061075c6001610665565b905090565b600080805460018160011615610100020316600290049050905090565b600080600690508091505090565b60608060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108255780601f106107fa57610100808354040283529160200191610825565b820191906000526020600020905b81548152906001019060200180831161080857829003601f168201915b505050505090507f61000000000000000000000000000000000000000000000000000000000000008160008151811061085a57fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508091505090565b6000806000807f01f4000000000000000000000000000000000000000000000000000000000000905080816000600281106108c757fe5b1a60f81b826001600281106108d857fe5b1a60f81b93509350935050909192565b600080348373ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505091509150915091565b600047905090565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109ca5780601f1061099f576101008083540402835291602001916109ca565b820191906000526020600020905b8154815290600101906020018083116109ad57829003601f168201915b5050505050905090565b6000807fc80000000000000000000000000000000000000000000000000000000000000090508091505090565b60008060006003811115610a1157fe5b90508091505090565b60008173ffffffffffffffffffffffffffffffffffffffff1631905091905056fea264697066735822122012ac30a9eb40bd6fafb83df4746465e95869a120770d84ea131a0d92a6d5b86464736f6c634300060c0033"; - - public static final String FUNC_GETADDRESS = "getAddress"; - - public static final String FUNC_GETBALANCE = "getBalance"; - - public static final String FUNC_GETCURRENTBALANCE = "getCurrentBalance"; - - public static final String FUNC_GETHEXLITERAA = "getHexLiteraA"; - - public static final String FUNC_GETHEXLITERAB = "getHexLiteraB"; - - public static final String FUNC_GETHEXLITERAC = "getHexLiteraC"; - - public static final String FUNC_GETINT = "getInt"; - - public static final String FUNC_GETSEASONA = "getSeasonA"; - - public static final String FUNC_GETSEASONB = "getSeasonB"; - - public static final String FUNC_GETSEASONINDEX = "getSeasonIndex"; - - public static final String FUNC_GETSTRA = "getStrA"; - - public static final String FUNC_GETSTRALENGTH = "getStrALength"; - - public static final String FUNC_GETVALUE = "getValue"; - - public static final String FUNC_GOSEND = "goSend"; - - public static final String FUNC_GOTRANSFER = "goTransfer"; - - public static final String FUNC_PRINTSEASON = "printSeason"; - - public static final String FUNC_SETSTRA = "setStrA"; - - protected BasicDataTypeConstantContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BasicDataTypeConstantContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddress() { - final Function function = new Function( - FUNC_GETADDRESS, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getBalance(String addr) { - final Function function = new Function(FUNC_GETBALANCE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getCurrentBalance() { - final Function function = new Function(FUNC_GETCURRENTBALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getHexLiteraA() { - final Function function = new Function(FUNC_GETHEXLITERAA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getHexLiteraB() { - final Function function = new Function(FUNC_GETHEXLITERAB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall> getHexLiteraC() { - final Function function = new Function(FUNC_GETHEXLITERAC, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (byte[]) results.get(0).getValue(), - (byte[]) results.get(1).getValue(), - (byte[]) results.get(2).getValue()); - } - }); - } - - public RemoteCall getInt() { - final Function function = new Function( - FUNC_GETINT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getSeasonA() { - final Function function = new Function(FUNC_GETSEASONA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSeasonB() { - final Function function = new Function(FUNC_GETSEASONB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSeasonIndex() { - final Function function = new Function(FUNC_GETSEASONINDEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getStrA() { - final Function function = new Function(FUNC_GETSTRA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getStrALength() { - final Function function = new Function(FUNC_GETSTRALENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> getValue() { - final Function function = new Function(FUNC_GETVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue()); - } - }); - } - - public RemoteCall goSend(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_GOSEND, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall goTransfer(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_GOTRANSFER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall printSeason(BigInteger s) { - final Function function = new Function(FUNC_PRINTSEASON, - Arrays.asList(new Uint8(s)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setStrA() { - final Function function = new Function(FUNC_SETSTRA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeConstantContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeConstantContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BasicDataTypeConstantContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeConstantContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BasicDataTypeConstantContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeConstantContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BasicDataTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BasicDataTypeContract.java deleted file mode 100644 index 7784798460..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BasicDataTypeContract.java +++ /dev/null @@ -1,89 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int8; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BasicDataTypeContract extends Contract { - private static final String BINARY = "60806040527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60005560018055600280556001600360006101000a81548160ff021916908360ff16021790555060ff600360016101000a81548160ff021916908360ff1602179055506001600360026101000a81548161ffff021916908361ffff16021790555061ffff600360046101000a81548161ffff021916908361ffff1602179055506001600360066101000a81548160ff021916908360000b60ff160217905550607f600360076101000a81548160ff021916908360000b60ff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600360086101000a81548160ff021916908360000b60ff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80600360096101000a81548160ff021916908360000b60ff16021790555060016003600a6101000a81548160ff02191690831515021790555060006003600b6101000a81548160ff0219169083151502179055507f61000000000000000000000000000000000000000000000000000000000000006003600c6101000a81548160ff021916908360f81c0217905550600160f81b6003600d6101000a81548160ff021916908360f81c02179055507f61620000000000000000000000000000000000000000000000000000000000006003600e6101000a81548161ffff021916908360f01c02179055507f6162630000000000000000000000000000000000000000000000000000000000600360106101000a81548162ffffff021916908360e81c02179055506040518060400160405280600181526020017f6100000000000000000000000000000000000000000000000000000000000000815250600490805190602001906102b392919061035e565b506040518060400160405280600281526020017f6162000000000000000000000000000000000000000000000000000000000000815250600590805190602001906102ff92919061035e565b506040518060400160405280600381526020017f61626300000000000000000000000000000000000000000000000000000000008152506006908051906020019061034b92919061035e565b5034801561035857600080fd5b506103fb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061039f57805160ff19168380011785556103cd565b828001600101855582156103cd579182015b828111156103cc5782518255916020019190600101906103b1565b5b5090506103da91906103de565b5090565b5b808211156103f75760008160009055506001016103df565b5090565b6101a58061040a6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806307da3eae146100515780633d9ceb371461006f5780635c5c8419146100b7578063d29f1598146100d5575b600080fd5b61005961011d565b6040518082815260200191505060405180910390f35b61009e6004803603602081101561008557600080fd5b81019080803560000b906020019092919050505061013b565b604051808260000b815260200191505060405180910390f35b6100bf610148565b6040518082815260200191505060405180910390f35b610104600480360360208110156100eb57600080fd5b81019080803560ff169060200190929190505050610162565b604051808260ff16815260200191505060405180910390f35b60006006805460018160011615610100020316600290049050905090565b6000600182019050919050565b60006003600e9054906101000a905050600260ff16905090565b600060018201905091905056fea26469706673582212202192c9d6617d135ea71770f26eb29f9c35060fd522b89f6c865dd68eb39c971864736f6c634300060c0033"; - - public static final String FUNC_ADDINTOVERFLOW = "addIntOverflow"; - - public static final String FUNC_ADDUINTOVERFLOW = "addUintOverflow"; - - public static final String FUNC_GETBYTES1LENGTH = "getBytes1Length"; - - public static final String FUNC_GETBYTESLENGTH = "getBytesLength"; - - protected BasicDataTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BasicDataTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall addIntOverflow(BigInteger a) { - final Function function = new Function(FUNC_ADDINTOVERFLOW, - Arrays.asList(new Int8(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall addUintOverflow(BigInteger a) { - final Function function = new Function(FUNC_ADDUINTOVERFLOW, - Arrays.asList(new Uint8(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBytes1Length() { - final Function function = new Function(FUNC_GETBYTES1LENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBytesLength() { - final Function function = new Function(FUNC_GETBYTESLENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BasicDataTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BasicDataTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BasicDataTypeDeleteContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BasicDataTypeDeleteContract.java deleted file mode 100644 index 790a7fabbc..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BasicDataTypeDeleteContract.java +++ /dev/null @@ -1,190 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Bytes3; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tuples.generated.Tuple6; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BasicDataTypeDeleteContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610a37806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c8063b2548ecc11610071578063b2548ecc14610177578063c726046714610255578063d5e350e31461025f578063d8c9d5f514610280578063e9cafac21461028a578063f0ebce5a14610294576100a9565b80630849cc99146100ae5780630860dca9146100cc57806309b1b3f2146100d65780630d35d126146101635780633edf92a81461016d575b600080fd5b6100b66102bd565b6040518082815260200191505060405180910390f35b6100d46102ca565b005b6100de6102de565b604051808360ff16815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561012757808201518184015260208101905061010c565b50505050905090810190601f1680156101545780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61016b61039e565b005b610175610614565b005b61017f61063d565b6040518087151581526020018681526020018573ffffffffffffffffffffffffffffffffffffffff168152602001847cffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156102155780820151818401526020810190506101fa565b50505050905090810190601f1680156102425780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390f35b61025d610741565b005b6102676107a7565b604051808260ff16815260200191505060405180910390f35b6102886107d3565b005b6102926107fe565b005b61029c61080e565b604051808260028111156102ac57fe5b815260200191505060405180910390f35b6000600580549050905090565b600660006101000a81549060ff0219169055565b60006060600760000160009054906101000a900460ff166007600101808054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561038f5780601f106103645761010080835404028352916020019161038f565b820191906000526020600020905b81548152906001019060200180831161037257829003601f168201915b50505050509050915091509091565b60016000806101000a81548160ff021916908315150217905550600260018190555033600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f3132330000000000000000000000000000000000000000000000000000000000600260146101000a81548162ffffff021916908360e81c02179055506040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525060039080519060200190610489929190610825565b5060056004819055506040518060400160405280600160ff1681526020016040518060400160405280600481526020017f456c6c6100000000000000000000000000000000000000000000000000000000815250815250600760008201518160000160006101000a81548160ff021916908360ff160217905550602082015181600101908051906020019061051f929190610825565b509050506040518060600160405280600160ff168152602001600260ff168152602001600360ff16815250600590600361055a9291906108a5565b50600160096000600160ff16815260200190815260200160002060006101000a81548160ff021916908360ff160217905550600260096000600260ff16815260200190815260200160002060006101000a81548160ff021916908360ff160217905550600360096000600360ff16815260200190815260200160002060006101000a81548160ff021916908360ff1602179055506002600660006101000a81548160ff0219169083600281111561060d57fe5b0217905550565b60096000600260ff16815260200190815260200160002060006101000a81549060ff0219169055565b600080600080606060008060009054906101000a900460ff16600154600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600260149054906101000a900460e81b6003600454818054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107265780601f106106fb57610100808354040283529160200191610726565b820191906000526020600020905b81548152906001019060200180831161070957829003601f168201915b50505050509150955095509550955095509550909192939495565b6000806101000a81549060ff0219169055600160009055600260006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600260146101000a81549062ffffff02191690556003600061079f919061094c565b600460009055565b600060096000600260ff16815260200190815260200160002060009054906101000a900460ff16905090565b6007600080820160006101000a81549060ff02191690556001820160006107fa919061094c565b5050565b6005600061080c9190610994565b565b6000600660009054906101000a900460ff16905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061086657805160ff1916838001178555610894565b82800160010185558215610894579182015b82811115610893578251825591602001919060010190610878565b5b5090506108a191906109bc565b5090565b82805482825590600052602060002090601f0160209004810192821561093b5791602002820160005b8382111561090c57835183826101000a81548160ff021916908360ff16021790555092602001926001016020816000010492830192600103026108ce565b80156109395782816101000a81549060ff021916905560010160208160000104928301926001030261090c565b505b50905061094891906109d9565b5090565b50805460018160011615610100020316600290046000825580601f106109725750610991565b601f01602090049060005260206000209081019061099091906109bc565b5b50565b50805460008255601f0160209004906000526020600020908101906109b991906109bc565b50565b5b808211156109d55760008160009055506001016109bd565b5090565b5b808211156109fd57600081816101000a81549060ff0219169055506001016109da565b509056fea26469706673582212203a54a9ec2cf7a0b5f64712ac763776cca9a5b8824b109c3ed12a5377a98126f664736f6c634300060c0033"; - - public static final String FUNC_DELETEARRAY = "deleteArray"; - - public static final String FUNC_DELETEBASICDATA = "deleteBasicData"; - - public static final String FUNC_DELETEENUM = "deleteEnum"; - - public static final String FUNC_DELETEMAPPING = "deleteMapping"; - - public static final String FUNC_DELETESTRUCT = "deleteStruct"; - - public static final String FUNC_GETARRAYLENGTH = "getArrayLength"; - - public static final String FUNC_GETBASICDATA = "getBasicData"; - - public static final String FUNC_GETENUM = "getEnum"; - - public static final String FUNC_GETMAPPING = "getMapping"; - - public static final String FUNC_GETSTRUCT = "getStruct"; - - public static final String FUNC_INITBASICDATA = "initBasicData"; - - protected BasicDataTypeDeleteContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BasicDataTypeDeleteContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall deleteArray() { - final Function function = new Function( - FUNC_DELETEARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteBasicData() { - final Function function = new Function( - FUNC_DELETEBASICDATA, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteEnum() { - final Function function = new Function( - FUNC_DELETEENUM, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteMapping() { - final Function function = new Function( - FUNC_DELETEMAPPING, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteStruct() { - final Function function = new Function( - FUNC_DELETESTRUCT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getArrayLength() { - final Function function = new Function(FUNC_GETARRAYLENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> getBasicData() { - final Function function = new Function(FUNC_GETBASICDATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference

() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple6 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple6( - (Boolean) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (String) results.get(2).getValue(), - (byte[]) results.get(3).getValue(), - (String) results.get(4).getValue(), - (BigInteger) results.get(5).getValue()); - } - }); - } - - public RemoteCall getEnum() { - final Function function = new Function(FUNC_GETENUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getMapping() { - final Function function = new Function(FUNC_GETMAPPING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> getStruct() { - final Function function = new Function(FUNC_GETSTRUCT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue()); - } - }); - } - - public RemoteCall initBasicData() { - final Function function = new Function( - FUNC_INITBASICDATA, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeDeleteContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeDeleteContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BasicDataTypeDeleteContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeDeleteContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BasicDataTypeDeleteContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeDeleteContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BlockTransactionPropertiesFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BlockTransactionPropertiesFunctions.java deleted file mode 100644 index 98554c6b02..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BlockTransactionPropertiesFunctions.java +++ /dev/null @@ -1,184 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.Bytes4; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BlockTransactionPropertiesFunctions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061052a806100206000396000f3fe6080604052600436106100dd5760003560e01c8063a16963b31161007f578063d12d910211610059578063d12d910214610314578063df1f29ee1461035e578063e9413d381461039f578063edb4b865146103ee576100dd565b8063a16963b314610293578063ab70fd69146102be578063bbe4fd50146102e9576100dd565b80633bc5de30116100bb5780633bc5de301461016c57806342cbb15c146101fc5780635e01eb5a14610227578063796b89b914610268576100dd565b806312e05dd1146100e2578063209652551461010d5780632df8e9491461012b575b600080fd5b3480156100ee57600080fd5b506100f7610419565b6040518082815260200191505060405180910390f35b610115610421565b6040518082815260200191505060405180910390f35b34801561013757600080fd5b50610140610429565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017857600080fd5b50610181610431565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101c15780820151818401526020810190506101a6565b50505050905090810190601f1680156101ee5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561020857600080fd5b5061021161047e565b6040518082815260200191505060405180910390f35b34801561023357600080fd5b5061023c610486565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561027457600080fd5b5061027d61048e565b6040518082815260200191505060405180910390f35b34801561029f57600080fd5b506102a8610496565b6040518082815260200191505060405180910390f35b3480156102ca57600080fd5b506102d361049e565b6040518082815260200191505060405180910390f35b3480156102f557600080fd5b506102fe6104a6565b6040518082815260200191505060405180910390f35b34801561032057600080fd5b506103296104ae565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b34801561036a57600080fd5b506103736104d9565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103ab57600080fd5b506103d8600480360360208110156103c257600080fd5b81019080803590602001909291905050506104e1565b6040518082815260200191505060405180910390f35b3480156103fa57600080fd5b506104036104ec565b6040518082815260200191505060405180910390f35b600044905090565b600034905090565b600041905090565b60606000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050905090565b600043905090565b600033905090565b600042905090565b600045905090565b60003a905090565b600042905090565b600080357fffffffff0000000000000000000000000000000000000000000000000000000016905090565b600032905090565b600081409050919050565b60005a90509056fea26469706673582212205a609d38a4324262095dfbcebc4d451f3ed7255f3e4f18087a2776818683439464736f6c634300060c0033"; - - public static final String FUNC_GETBLOCKCOINBASE = "getBlockCoinbase"; - - public static final String FUNC_GETBLOCKDIFFICULTY = "getBlockDifficulty"; - - public static final String FUNC_GETBLOCKNUMBER = "getBlockNumber"; - - public static final String FUNC_GETBLOCKTIMESTAMP = "getBlockTimestamp"; - - public static final String FUNC_GETBLOCKHASH = "getBlockhash"; - - public static final String FUNC_GETDATA = "getData"; - - public static final String FUNC_GETGASLEFT = "getGasleft"; - - public static final String FUNC_GETGASLIMIT = "getGaslimit"; - - public static final String FUNC_GETGASPRICE = "getGasprice"; - - public static final String FUNC_GETNOW = "getNow"; - - public static final String FUNC_GETORIGIN = "getOrigin"; - - public static final String FUNC_GETSENDER = "getSender"; - - public static final String FUNC_GETSIG = "getSig"; - - public static final String FUNC_GETVALUE = "getValue"; - - protected BlockTransactionPropertiesFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BlockTransactionPropertiesFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBlockCoinbase() { - final Function function = new Function(FUNC_GETBLOCKCOINBASE, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getBlockDifficulty() { - final Function function = new Function(FUNC_GETBLOCKDIFFICULTY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBlockNumber() { - final Function function = new Function(FUNC_GETBLOCKNUMBER, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBlockTimestamp() { - final Function function = new Function(FUNC_GETBLOCKTIMESTAMP, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBlockhash(BigInteger blockNumber) { - final Function function = new Function(FUNC_GETBLOCKHASH, - Arrays.asList(new Uint256(blockNumber)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getData() { - final Function function = new Function(FUNC_GETDATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getGasleft() { - final Function function = new Function(FUNC_GETGASLEFT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getGaslimit() { - final Function function = new Function(FUNC_GETGASLIMIT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getGasprice() { - final Function function = new Function(FUNC_GETGASPRICE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getNow() { - final Function function = new Function(FUNC_GETNOW, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getOrigin() { - final Function function = new Function(FUNC_GETORIGIN, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getSender() { - final Function function = new Function(FUNC_GETSENDER, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getSig() { - final Function function = new Function(FUNC_GETSIG, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getValue(BigInteger vonValue) { - final Function function = new Function( - FUNC_GETVALUE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BlockTransactionPropertiesFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BlockTransactionPropertiesFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BlockTransactionPropertiesFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BlockTransactionPropertiesFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BlockTransactionPropertiesFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BlockTransactionPropertiesFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Blockhash.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Blockhash.java deleted file mode 100644 index fc9fa12928..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Blockhash.java +++ /dev/null @@ -1,95 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Blockhash extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061017c806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80630f7536281461005c57806366b3eb341461007a578063696d67c3146100985780639e1f194e146100b6578063e1b99d74146100d4575b600080fd5b6100646100f2565b6040518082815260200191505060405180910390f35b610082610103565b6040518082815260200191505060405180910390f35b6100a0610115565b6040518082815260200191505060405180910390f35b6100be610127565b6040518082815260200191505060405180910390f35b6100dc610138565b6040518082815260200191505060405180910390f35b60008060ff43034090508091505090565b60008061010043034090508091505090565b60008061010143034090508091505090565b600080601e43034090508091505090565b60008043409050809150509056fea2646970667358221220541cc19616209e6259ff556339d7df23f3fd72b0dfe9072b5d07fb832a9fed9e64736f6c634300060c0033"; - - public static final String FUNC_GETBLOCKHASHBEFORE0 = "getBlockhashbefore0"; - - public static final String FUNC_GETBLOCKHASHBEFORE255 = "getBlockhashbefore255"; - - public static final String FUNC_GETBLOCKHASHBEFORE256 = "getBlockhashbefore256"; - - public static final String FUNC_GETBLOCKHASHBEFORE257 = "getBlockhashbefore257"; - - public static final String FUNC_GETBLOCKHASHBEFORE30 = "getBlockhashbefore30"; - - protected Blockhash(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Blockhash(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBlockhashbefore0() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE0, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBlockhashbefore255() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE255, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBlockhashbefore256() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE256, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBlockhashbefore257() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE257, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBlockhashbefore30() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE30, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Blockhash.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Blockhash.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Blockhash load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Blockhash(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Blockhash load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Blockhash(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BubbleSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BubbleSort.java deleted file mode 100644 index 4ffbf374b2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/BubbleSort.java +++ /dev/null @@ -1,86 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BubbleSort extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061033f806100206000396000f3fe6080604052600436106100295760003560e01c8063970f17bd1461002e578063f6dd00aa1461009a575b600080fd5b34801561003a57600080fd5b5061004361015c565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561008657808201518184015260208101905061006b565b505050509050019250505060405180910390f35b61015a600480360360408110156100b057600080fd5b81019080803590602001906401000000008111156100cd57600080fd5b8201836020820111156100df57600080fd5b8035906020019184602083028401116401000000008311171561010157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803590602001909291905050506101b4565b005b606060008054806020026020016040519081016040528092919081815260200182805480156101aa57602002820191906000526020600020905b815481526020019060010190808311610196575b5050505050905090565b60005b600182038110156102835760005b816001840303811015610275578360018201815181106101e157fe5b60200260200101518482815181106101f557fe5b6020026020010151131561026857600084828151811061021157fe5b6020026020010151905084600183018151811061022a57fe5b602002602001015185838151811061023e57fe5b6020026020010181815250508085600184018151811061025a57fe5b602002602001018181525050505b80806001019150506101c5565b5080806001019150506101b7565b50816000908051906020019061029a92919061029f565b505050565b8280548282559060005260206000209081019282156102db579160200282015b828111156102da5782518255916020019190600101906102bf565b5b5090506102e891906102ec565b5090565b5b808211156103055760008160009055506001016102ed565b509056fea2646970667358221220a3d65d818c1a0df7fb11fdc00da3d3524caa43571b919ce39050ccdb214ea92564736f6c634300060c0033"; - - public static final String FUNC_BUBBLEARRAYS = "BubbleArrays"; - - public static final String FUNC_GET_ARR = "get_arr"; - - protected BubbleSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BubbleSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall BubbleArrays(List arr, BigInteger n, BigInteger vonValue) { - final Function function = new Function( - FUNC_BUBBLEARRAYS, - Arrays.asList(new DynamicArray( - Int256.class, - com.alaya.abi.solidity.Utils.typeMap(arr, Int256.class)), - new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_arr() { - final Function function = new Function(FUNC_GET_ARR, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BubbleSort.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BubbleSort.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BubbleSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BubbleSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BubbleSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BubbleSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CallExternal.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CallExternal.java deleted file mode 100644 index e102169a01..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CallExternal.java +++ /dev/null @@ -1,113 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CallExternal extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610223806100206000396000f3fe60806040526004361061001e5760003560e01c8063de29278914610023575b600080fd5b61002b610041565b6040518082815260200191505060405180910390f35b6000806040516100509061012d565b604051809103906000f08015801561006c573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff1663569c5f6d6040518163ffffffff1660e01b815260040160206040518083038186803b1580156100b557600080fd5b505afa1580156100c9573d6000803e3d6000fd5b505050506040513d60208110156100df57600080fd5b810190808051906020019092919050505091507f0a9f1213b326cb97c7a18f80791661027e1cf7a53125f3d6729d0ae093bd8ad2826040518082815260200191505060405180910390a15090565b60b48061013a8339019056fe6080604052348015600f57600080fd5b5060968061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063569c5f6d14602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b60008060019050600060029050808201925050509056fea2646970667358221220053d81a295a5ea209bd81d424aff75549e497e7fccaa54434d0e6c3873957cf164736f6c634300060c0033a264697066735822122013b7e4ea5044d4881dea698534b2f3594a7dd75fe4ef228ba74f6dde82c9cfb364736f6c634300060c0033"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final Event EXTERNALCVALUE_EVENT = new Event("ExternalCValue", - Arrays.>asList(new TypeReference() {})); - ; - - protected CallExternal(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallExternal(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getExternalCValueEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EXTERNALCVALUE_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ExternalCValueEventResponse typedResponse = new ExternalCValueEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable externalCValueEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ExternalCValueEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EXTERNALCVALUE_EVENT, log); - ExternalCValueEventResponse typedResponse = new ExternalCValueEventResponse(); - typedResponse.log = log; - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable externalCValueEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EXTERNALCVALUE_EVENT)); - return externalCValueEventObservable(filter); - } - - public RemoteCall getResult(BigInteger vonValue) { - final Function function = new Function( - FUNC_GETRESULT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallExternal.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallExternal.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CallExternal load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallExternal(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallExternal load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallExternal(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class ExternalCValueEventResponse { - public Log log; - - public BigInteger value; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CalledContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CalledContract.java deleted file mode 100644 index 2d22de2d3f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CalledContract.java +++ /dev/null @@ -1,51 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CalledContract extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b50607080601d6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806335b09a6e14602d575b600080fd5b60336035565b005b600080fdfea264697066735822122030a208cc7ebfe1976bdde8bce23c1cd6824546d25d55938f12c2e3b921bac9c164736f6c634300060c0033"; - - public static final String FUNC_SOMEFUNCTION = "someFunction"; - - protected CalledContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CalledContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public void someFunction() { - throw new RuntimeException("cannot call constant function with void return type"); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CalledContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CalledContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CalledContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CalledContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CalledContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CalledContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CallerOne.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CallerOne.java deleted file mode 100644 index a75bf8d66d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CallerOne.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CallerOne extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506105c7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c146100465780637b8ed01814610064578063f88bef8c14610082575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b6040518082815260200191505060405180910390f35b61008a61009b565b005b60005481565b60008054905090565b60006040516100a9906101bd565b604051809103906000f0801580156100c5573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff167f371303c051bff726100ad13871cababf50c20dd920fca137e519f98f089a74b4604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b60208310610152578051825260208201915060208101905060208303925061012f565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101b2576040519150601f19603f3d011682016040523d82523d6000602084013e6101b7565b606091505b50505050565b6103c7806101cb8339019056fe608060405234801561001057600080fd5b506103a7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c14610046578063371303c0146100645780635a3617561461006e575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b005b61007661020b565b6040518082815260200191505060405180910390f35b60005481565b60006040516100a090610214565b604051809103906000f0801580156100bc573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff167f371303c051bff726100ad13871cababf50c20dd920fca137e519f98f089a74b4604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b602083106101495780518252602082019150602081019050602083039250610126565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101a9576040519150601f19603f3d011682016040523d82523d6000602084013e6101ae565b606091505b5050507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150565b60008054905090565b610150806102228339019056fe608060405234801561001057600080fd5b50610130806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630c55699c14604157806317f936fb14605d578063371303c0146079575b600080fd5b60476081565b6040518082815260200191505060405180910390f35b60636087565b6040518082815260200191505060405180910390f35b607f6090565b005b60005481565b60008054905090565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a156fea2646970667358221220c74567adb5117236267d4d696b832a0c2dbeaebcd211876bf6faac6f45716a2264736f6c634300060c0033a26469706673582212203f98c4850b86905449b19ebceaca5f51c2fdfa024ee311120b78af23f576cef564736f6c634300060c0033a2646970667358221220271fa337585535fc7b0fe3f580e1e92ba124e048a89e4a3ffe8de9aa2d505a2664736f6c634300060c0033"; - - public static final String FUNC_GETCALLERX = "getCallerX"; - - public static final String FUNC_INC_DELEGATECALL = "inc_delegatecall"; - - public static final String FUNC_X = "x"; - - protected CallerOne(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallerOne(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getCallerX() { - final Function function = new Function(FUNC_GETCALLERX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc_delegatecall() { - final Function function = new Function( - FUNC_INC_DELEGATECALL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerOne.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerOne.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CallerOne load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallerOne(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallerOne load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallerOne(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CallerThree.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CallerThree.java deleted file mode 100644 index 4244509b51..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CallerThree.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CallerThree extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610130806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630c55699c14604157806317f936fb14605d578063371303c0146079575b600080fd5b60476081565b6040518082815260200191505060405180910390f35b60636087565b6040518082815260200191505060405180910390f35b607f6090565b005b60005481565b60008054905090565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a156fea2646970667358221220c74567adb5117236267d4d696b832a0c2dbeaebcd211876bf6faac6f45716a2264736f6c634300060c0033"; - - public static final String FUNC_GETCALLEETHREEX = "getCalleeThreeX"; - - public static final String FUNC_INC = "inc"; - - public static final String FUNC_X = "x"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected CallerThree(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallerThree(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall getCalleeThreeX() { - final Function function = new Function(FUNC_GETCALLEETHREEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc() { - final Function function = new Function( - FUNC_INC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerThree.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerThree.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CallerThree load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallerThree(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallerThree load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallerThree(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String seder; - - public BigInteger x; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CallerTwo.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CallerTwo.java deleted file mode 100644 index 0e0889e11b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CallerTwo.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CallerTwo extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506103a7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c14610046578063371303c0146100645780635a3617561461006e575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b005b61007661020b565b6040518082815260200191505060405180910390f35b60005481565b60006040516100a090610214565b604051809103906000f0801580156100bc573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff167f371303c051bff726100ad13871cababf50c20dd920fca137e519f98f089a74b4604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b602083106101495780518252602082019150602081019050602083039250610126565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101a9576040519150601f19603f3d011682016040523d82523d6000602084013e6101ae565b606091505b5050507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150565b60008054905090565b610150806102228339019056fe608060405234801561001057600080fd5b50610130806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630c55699c14604157806317f936fb14605d578063371303c0146079575b600080fd5b60476081565b6040518082815260200191505060405180910390f35b60636087565b6040518082815260200191505060405180910390f35b607f6090565b005b60005481565b60008054905090565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a156fea2646970667358221220c74567adb5117236267d4d696b832a0c2dbeaebcd211876bf6faac6f45716a2264736f6c634300060c0033a26469706673582212203f98c4850b86905449b19ebceaca5f51c2fdfa024ee311120b78af23f576cef564736f6c634300060c0033"; - - public static final String FUNC_GETCALLEEX = "getCalleeX"; - - public static final String FUNC_INC = "inc"; - - public static final String FUNC_X = "x"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected CallerTwo(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallerTwo(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall getCalleeX() { - final Function function = new Function(FUNC_GETCALLEEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc() { - final Function function = new Function( - FUNC_INC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerTwo.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerTwo.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CallerTwo load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallerTwo(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallerTwo load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallerTwo(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String seder; - - public BigInteger x; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ChainFunction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ChainFunction.java deleted file mode 100644 index bff4ba3035..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ChainFunction.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ChainFunction extends Contract { - private static final String BINARY = "6080604052336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550346001819055506000600260006101000a81548160ff021916908315150217905550610171806100756000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80637eed92c01461003b5780639f9232f414610095575b600080fd5b6100696004803603602081101561005157600080fd5b810190808035151590602001909291905050506100f9565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100cd600480360360408110156100ab57600080fd5b8101908080351515906020019092919080359060200190929190505050610114565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600115158215151461010c57600080fd5b339050919050565b6000600115158315151461012457fe5b600982101561013257600080fd5b3390509291505056fea26469706673582212204e195dffdce5c60f90baa516b7665c52942f4356b05ab09008a7199ae450b2cd64736f6c634300060c0033"; - - public static final String FUNC_DECEASED = "deceased"; - - public static final String FUNC_DECEASEDWITHMODIFY = "deceasedWithModify"; - - protected ChainFunction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ChainFunction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - return deployRemoteCall(ChainFunction.class, web3j, credentials, contractGasProvider, BINARY, "", initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - return deployRemoteCall(ChainFunction.class, web3j, transactionManager, contractGasProvider, BINARY, "", initialVonValue, chainId); - } - - public RemoteCall deceased(Boolean isDeceased, BigInteger less9) { - final Function function = new Function(FUNC_DECEASED, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Bool(isDeceased), - new com.alaya.abi.solidity.datatypes.generated.Uint256(less9)), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall deceasedWithModify(Boolean _isDeceased) { - final Function function = new Function(FUNC_DECEASEDWITHMODIFY, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Bool(_isDeceased)), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static ChainFunction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ChainFunction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ChainFunction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ChainFunction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ConstructorInternalDeclaraction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ConstructorInternalDeclaraction.java deleted file mode 100644 index 2d08fd46bc..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ConstructorInternalDeclaraction.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorInternalDeclaraction extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_COUNT = "count"; - - protected ConstructorInternalDeclaraction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorInternalDeclaraction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall count() { - final Function function = new Function(FUNC_COUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ConstructorInternalDeclaraction.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ConstructorInternalDeclaraction.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ConstructorInternalDeclaraction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalDeclaraction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorInternalDeclaraction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalDeclaraction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ConstructorInternalDeclaractionSub.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ConstructorInternalDeclaractionSub.java deleted file mode 100644 index 99e8265222..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ConstructorInternalDeclaractionSub.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorInternalDeclaractionSub extends Contract { - private static final String BINARY = "6080604052600a60005534801561001557600080fd5b506040516101a73803806101a78339818101604052602081101561003857600080fd5b810190808051906020019092919050505080806000819055505050610145806100626000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806306661abd1461004657806382ab890a14610064578063a87d942c146100c3575b600080fd5b61004e6100e1565b6040518082815260200191505060405180910390f35b6100906004803603602081101561007a57600080fd5b81019080803590602001909291905050506100e7565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6100cb610106565b6040518082815260200191505060405180910390f35b60005481565b6000808260008082825401925050819055503360005491509150915091565b6000805490509056fea26469706673582212208d90d5941ab34c797dd433ef58b8cae675ed5bf9b41764eb048d6ab1df310b0764736f6c634300060c0033"; - - public static final String FUNC_COUNT = "count"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_UPDATE = "update"; - - protected ConstructorInternalDeclaractionSub(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorInternalDeclaractionSub(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorInternalDeclaractionSub.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorInternalDeclaractionSub.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall count() { - final Function function = new Function(FUNC_COUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ConstructorInternalDeclaractionSub load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalDeclaractionSub(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorInternalDeclaractionSub load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalDeclaractionSub(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ConstructorPublicDeclaraction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ConstructorPublicDeclaraction.java deleted file mode 100644 index 87dd4d54ae..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ConstructorPublicDeclaraction.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorPublicDeclaraction extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b5060405161016c38038061016c8339818101604052602081101561003757600080fd5b8101908080519060200190929190505050806000819055505061010d8061005f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806382ab890a146037578063a87d942c146093575b600080fd5b606060048036036020811015604b57600080fd5b810190808035906020019092919050505060af565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b609960ce565b6040518082815260200191505060405180910390f35b6000808260008082825401925050819055503360005491509150915091565b6000805490509056fea26469706673582212209b611323ce297a2be8a0b1694e262222011e280562b069e8ec2c60eb1a7984a564736f6c634300060c0033"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_UPDATE = "update"; - - protected ConstructorPublicDeclaraction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorPublicDeclaraction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorPublicDeclaraction.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorPublicDeclaraction.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ConstructorPublicDeclaraction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorPublicDeclaraction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorPublicDeclaraction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorPublicDeclaraction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ConstructorTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ConstructorTest.java deleted file mode 100644 index 7e325cf1fd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ConstructorTest.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorTest extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b506040516101a43803806101a48339818101604052602081101561003757600080fd5b810190808051906020019092919050505080600081905550506101458061005f6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806306661abd1461004657806382ab890a14610064578063a87d942c146100c3575b600080fd5b61004e6100e1565b6040518082815260200191505060405180910390f35b6100906004803603602081101561007a57600080fd5b81019080803590602001909291905050506100e7565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6100cb610106565b6040518082815260200191505060405180910390f35b60005481565b6000808260008082825401925050819055503360005491509150915091565b6000805490509056fea2646970667358221220abe4d438d8a002856905914097832fa00d7faab3ca8d083596cd8491f14a5c3264736f6c634300060c0033"; - - public static final String FUNC_COUNT = "count"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_UPDATE = "update"; - - protected ConstructorTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorTest.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorTest.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall count() { - final Function function = new Function(FUNC_COUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ConstructorTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ContractAdress.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ContractAdress.java deleted file mode 100644 index ff105606ac..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ContractAdress.java +++ /dev/null @@ -1,45 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ContractAdress extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b50604880601d6000396000f3fe6080604052348015600f57600080fd5b5000fea26469706673582212205abe5efa04cd92b06b0cefcbcb22d883bcaeed6d8fa4a9b1e307efcb459e164864736f6c634300060c0033"; - - protected ContractAdress(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractAdress(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAdress.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAdress.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ContractAdress load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractAdress(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractAdress load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractAdress(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ContractAndAddress.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ContractAndAddress.java deleted file mode 100644 index e3d8d6284d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ContractAndAddress.java +++ /dev/null @@ -1,98 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ContractAndAddress extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506104fe806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806302e9cd8b1461005c57806346df069e14610090578063a52e2905146100c4578063a7010a66146100f8578063c105b57c14610102575b600080fd5b610064610136565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610098610160565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100cc610189565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101006101b3565b005b61010a6103b6565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006040516101c1906103e0565b604051809103906000f0801580156101dd573d6000803e3d6000fd5b506000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550604051610229906103ec565b604051809103906000f080158015610245573d6000803e3d6000fd5b50600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550604051610292906103ec565b604051809103906000f0801580156102ae573d6000803e3d6000fd5b50600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606b806103f983390190565b6065806104648339019056fe6080604052348015600f57600080fd5b50604e80601d6000396000f3fe608060405236600a57005b348015601557600080fd5b5000fea2646970667358221220ecf4ea50a27f37abff9364dab07effc2caddfa5529eee1923761fab5edeaca7264736f6c634300060c00336080604052348015600f57600080fd5b50604880601d6000396000f3fe6080604052348015600f57600080fd5b5000fea26469706673582212205abe5efa04cd92b06b0cefcbcb22d883bcaeed6d8fa4a9b1e307efcb459e164864736f6c634300060c0033a264697066735822122015a5218d406ffd3963090c9d33b253ac9e24f7f55b22cd990c87f6884976e1dc64736f6c634300060c0033"; - - public static final String FUNC_GETADDRESSTOPAYABLE = "getAddressToPayable"; - - public static final String FUNC_GETNONALCONTRACTADDRESS = "getNonalContractAddress"; - - public static final String FUNC_GETNONALPAYABLEADDRESS = "getNonalPayableAddress"; - - public static final String FUNC_GETPAYABLETOADDRESS = "getPayableToAddress"; - - public static final String FUNC_PAYABLEORNOT = "payableOrNot"; - - protected ContractAndAddress(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractAndAddress(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddressToPayable() { - final Function function = new Function(FUNC_GETADDRESSTOPAYABLE, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getNonalContractAddress() { - final Function function = new Function(FUNC_GETNONALCONTRACTADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getNonalPayableAddress() { - final Function function = new Function(FUNC_GETNONALPAYABLEADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getPayableToAddress() { - final Function function = new Function(FUNC_GETPAYABLETOADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall payableOrNot() { - final Function function = new Function( - FUNC_PAYABLEORNOT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAndAddress.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAndAddress.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ContractAndAddress load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractAndAddress(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractAndAddress load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractAndAddress(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ContractArray.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ContractArray.java deleted file mode 100644 index 2bd606d5a8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ContractArray.java +++ /dev/null @@ -1,91 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ContractArray extends Contract { - private static final String BINARY = "6080604052600367ffffffffffffffff8111801561001c57600080fd5b5060405190808252806020026020018201604052801561004b5781602001602082028036833780820191505090505b5060009080519060200190610061929190610074565b5034801561006e57600080fd5b50610139565b8280548282559060005260206000209081019282156100ed579160200282015b828111156100ec5782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190610094565b5b5090506100fa91906100fe565b5090565b5b8082111561013557600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055506001016100ff565b5090565b610301806101486000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806326121ff014610046578063807b4c3314610050578063e276c799146100af575b600080fd5b61004e6100e3565b005b6100586101e4565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561009b578082015181840152602081019050610080565b505050509050019250505060405180910390f35b6100b7610272565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100eb6102a9565b6000309080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555030600160006003811061015d57fe5b0160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555030816000600381106101aa57fe5b602002019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505050565b6060600080548060200260200160405190810160405280929190818152602001828054801561026857602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161021e575b5050505050905090565b6000600160006003811061028257fe5b0160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b604051806060016040528060039060208202803683378082019150509050509056fea2646970667358221220aa97b8c5169db60f2010b1053847cd0ff0f4861d1c8010ea1146b43657c85f6564736f6c634300060c0033"; - - public static final String FUNC_F = "f"; - - public static final String FUNC_GETX = "getx"; - - public static final String FUNC_GETY = "gety"; - - protected ContractArray(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractArray(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f() { - final Function function = new Function( - FUNC_F, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getx() { - final Function function = new Function(FUNC_GETX, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall gety() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractArray.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractArray.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ContractArray load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractArray(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractArray load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractArray(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ContractPayable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ContractPayable.java deleted file mode 100644 index 7f67d43c6b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ContractPayable.java +++ /dev/null @@ -1,45 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ContractPayable extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b50604e80601d6000396000f3fe608060405236600a57005b348015601557600080fd5b5000fea2646970667358221220ecf4ea50a27f37abff9364dab07effc2caddfa5529eee1923761fab5edeaca7264736f6c634300060c0033"; - - protected ContractPayable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractPayable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractPayable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractPayable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ContractPayable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractPayable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractPayable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractPayable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Control.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Control.java deleted file mode 100644 index bf3e05c905..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Control.java +++ /dev/null @@ -1,250 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Control extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610c18806100206000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c806357609889116100b85780638e418fdb1161007c5780638e418fdb146104b2578063a64be0d5146104d0578063b4feac7c146104ee578063b87df0141461050c578063c0e641fc1461052a578063da193c1f1461054857610137565b80635760988914610352578063687615d71461037057806371ee52021461038e57806378aa6155146104115780637e6b0f571461042f57610137565b806344e24ce0116100ff57806344e24ce01461029c57806347808fc3146102ca5780634b8016b9146102f8578063508242dc1461031657806356230cca1461033457610137565b80631f9c9f3c1461013c578063275ec9761461015a57806335432d3114610178578063383d49e5146101fb5780633f9dbcf914610219575b600080fd5b610144610566565b6040518082815260200191505060405180910390f35b61016261056c565b6040518082815260200191505060405180910390f35b6101806105ca565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101c05780820151818401526020810190506101a5565b50505050905090810190601f1680156101ed5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610203610668565b6040518082815260200191505060405180910390f35b61022161066e565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610261578082015181840152602081019050610246565b50505050905090810190601f16801561028e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102c8600480360360208110156102b257600080fd5b810190808035906020019092919050505061070c565b005b6102f6600480360360208110156102e057600080fd5b8101908080359060200190929190505050610811565b005b6103006108a4565b6040518082815260200191505060405180910390f35b61031e6108aa565b6040518082815260200191505060405180910390f35b61033c6108b0565b6040518082815260200191505060405180910390f35b61035a610904565b6040518082815260200191505060405180910390f35b61037861090e565b6040518082815260200191505060405180910390f35b610396610914565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103d65780820151818401526020810190506103bb565b50505050905090810190601f1680156104035780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104196109b6565b6040518082815260200191505060405180910390f35b6104376109c0565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561047757808201518184015260208101905061045c565b50505050905090810190601f1680156104a45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104ba610a62565b6040518082815260200191505060405180910390f35b6104d8610a95565b6040518082815260200191505060405180910390f35b6104f6610aec565b6040518082815260200191505060405180910390f35b610514610b27565b6040518082815260200191505060405180910390f35b610532610b31565b6040518082815260200191505060405180910390f35b610550610b3b565b6040518082815260200191505060405180910390f35b60025481565b6000806005819055506000600190505b600a8110156105c05760006005828161059157fe5b0614156105a3576005549150506105c7565b80600560008282540192505081905550808060010191505061057c565b5060055490505b90565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106605780601f1061063557610100808354040283529160200191610660565b820191906000526020600020905b81548152906001019060200180831161064357829003601f168201915b505050505081565b60035481565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107045780601f106106d957610100808354040283529160200191610704565b820191906000526020600020905b8154815290600101906020018083116106e757829003601f168201915b505050505081565b6014811015610766576040518060400160405280601381526020017f796f7520617265206120796f756e67206d616e0000000000000000000000000081525060009080519060200190610760929190610b45565b5061080e565b603c8110156107c0576040518060400160405280601481526020017f796f75206172652061206d6964646c65206d616e000000000000000000000000815250600090805190602001906107ba929190610b45565b5061080d565b6040518060400160405280601181526020017f796f75206172652061206f6c64206d616e0000000000000000000000000000008152506000908051906020019061080b929190610b45565b505b5b50565b60148113610854576040518060400160405280600c81526020017f6d6f7265207468616e203230000000000000000000000000000000000000000081525061088b565b6040518060400160405280600c81526020017f6c657373207468616e20323000000000000000000000000000000000000000008152505b600690805190602001906108a0929190610b45565b5050565b60045481565b60015481565b60008060048190555060005b600a8110156108fb576000600282816108d157fe5b0614156108dd576108ee565b806004600082825401925050819055505b80806001019150506108bc565b50600454905090565b6000600454905090565b60055481565b606060068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109ac5780601f10610981576101008083540402835291602001916109ac565b820191906000526020600020905b81548152906001019060200180831161098f57829003601f168201915b5050505050905090565b6000600554905090565b606060008054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a585780601f10610a2d57610100808354040283529160200191610a58565b820191906000526020600020905b815481529060010190602001808311610a3b57829003601f168201915b5050505050905090565b60008060018190555060005b80600160008282540192505081905550806001019050600a8110610a6e5760015491505090565b6000806003819055506000600190505b600a811015610ae357600060028281610aba57fe5b061415610ac657610ae3565b806003600082825401925050819055508080600101915050610aa5565b50600354905090565b60008060028190555060005b600a811015610b1e57806002600082825401925050819055508080600101915050610af8565b50600254905090565b6000600254905090565b6000600354905090565b6000600154905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610b8657805160ff1916838001178555610bb4565b82800160010185558215610bb4579182015b82811115610bb3578251825591602001919060010190610b98565b5b509050610bc19190610bc5565b5090565b5b80821115610bde576000816000905550600101610bc6565b509056fea2646970667358221220299757ceb9fbce03295c275ac2e0e33bcc7959b37a5a9c71e3088494adc2a20f64736f6c634300060c0033"; - - public static final String FUNC_DOWHILECONTROL = "doWhileControl"; - - public static final String FUNC_DOWHILECONTROLRESULT = "doWhileControlResult"; - - public static final String FUNC_FORBREAKCONTROL = "forBreakControl"; - - public static final String FUNC_FORBREAKCONTROLRESULT = "forBreakControlResult"; - - public static final String FUNC_FORCONTINUECONTROL = "forContinueControl"; - - public static final String FUNC_FORCONTINUECONTROLRESULT = "forContinueControlResult"; - - public static final String FUNC_FORCONTROL = "forControl"; - - public static final String FUNC_FORCONTROLRESULT = "forControlResult"; - - public static final String FUNC_FORRETURNCONTROL = "forReturnControl"; - - public static final String FUNC_FORRETURNCONTROLRESULT = "forReturnControlResult"; - - public static final String FUNC_FORTHREECONTROLCONTROL = "forThreeControlControl"; - - public static final String FUNC_FORTHREECONTROLCONTROLRESULT = "forThreeControlControlResult"; - - public static final String FUNC_GETFORBREAKCONTROLRESULT = "getForBreakControlResult"; - - public static final String FUNC_GETFORCONTINUECONTROLRESULT = "getForContinueControlResult"; - - public static final String FUNC_GETFORCONTROLRESULT = "getForControlResult"; - - public static final String FUNC_GETFORRETURNCONTROLRESULT = "getForReturnControlResult"; - - public static final String FUNC_GETFORTHREECONTROLCONTROLRESULT = "getForThreeControlControlResult"; - - public static final String FUNC_GETIFCONTROLRESULT = "getIfControlResult"; - - public static final String FUNC_GETDOWHILERESULT = "getdoWhileResult"; - - public static final String FUNC_IFCONTROL = "ifControl"; - - public static final String FUNC_IFCONTROLRESULT = "ifControlResult"; - - protected Control(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Control(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall doWhileControl() { - final Function function = new Function( - FUNC_DOWHILECONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall doWhileControlResult() { - final Function function = new Function(FUNC_DOWHILECONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forBreakControl() { - final Function function = new Function( - FUNC_FORBREAKCONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forBreakControlResult() { - final Function function = new Function(FUNC_FORBREAKCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forContinueControl() { - final Function function = new Function( - FUNC_FORCONTINUECONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forContinueControlResult() { - final Function function = new Function(FUNC_FORCONTINUECONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forControl() { - final Function function = new Function( - FUNC_FORCONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forControlResult() { - final Function function = new Function(FUNC_FORCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forReturnControl() { - final Function function = new Function( - FUNC_FORRETURNCONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forReturnControlResult() { - final Function function = new Function(FUNC_FORRETURNCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forThreeControlControl(BigInteger age) { - final Function function = new Function( - FUNC_FORTHREECONTROLCONTROL, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Int256(age)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forThreeControlControlResult() { - final Function function = new Function(FUNC_FORTHREECONTROLCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getForBreakControlResult() { - final Function function = new Function(FUNC_GETFORBREAKCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getForContinueControlResult() { - final Function function = new Function(FUNC_GETFORCONTINUECONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getForControlResult() { - final Function function = new Function(FUNC_GETFORCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getForReturnControlResult() { - final Function function = new Function(FUNC_GETFORRETURNCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getForThreeControlControlResult() { - final Function function = new Function(FUNC_GETFORTHREECONTROLCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getIfControlResult() { - final Function function = new Function(FUNC_GETIFCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getdoWhileResult() { - final Function function = new Function(FUNC_GETDOWHILERESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall ifControl(BigInteger age) { - final Function function = new Function( - FUNC_IFCONTROL, - Arrays.asList(new Uint256(age)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall ifControlResult() { - final Function function = new Function(FUNC_IFCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Control.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Control.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Control load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Control(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Control load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Control(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CreateContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CreateContract.java deleted file mode 100644 index 344f65fcaa..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CreateContract.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CreateContract extends Contract { - private static final String BINARY = "60806040526103e86040516100139061008b565b80828152602001915050604051809103906000f080158015610039573d6000803e3d6000fd5b506000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555034801561008557600080fd5b50610098565b6101058061027f83390190565b6101d8806100a76000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f26ca91c14610030575b600080fd5b610038610055565b604051808381526020018281526020019250505060405180910390f35b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630c55699c6040518163ffffffff1660e01b815260040160206040518083038186803b1580156100be57600080fd5b505afa1580156100d2573d6000803e3d6000fd5b505050506040513d60208110156100e857600080fd5b810190808051906020019092919050505060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663aa8c217c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561015f57600080fd5b505afa158015610173573d6000803e3d6000fd5b505050506040513d602081101561018957600080fd5b810190808051906020019092919050505091509150909156fea264697066735822122008d8f3a5a1d8bcd58e8dbaba75574fe8f6ef7d82c11b7af56ed54ffc4055fe0964736f6c634300060c003360806040526040516101053803806101058339818101604052602081101561002657600080fd5b810190808051906020019092919050505080600081905550346001819055505060b1806100546000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80630c55699c146037578063aa8c217c146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596075565b6040518082815260200191505060405180910390f35b60005481565b6001548156fea2646970667358221220b40a0b9c741a4a10973e3b657b600ce2dfd7ee7a464d2a346c62cb95dab8106864736f6c634300060c0033"; - - public static final String FUNC_GETTARGETCREATECONTRACTDATA = "getTargetCreateContractData"; - - protected CreateContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CreateContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> getTargetCreateContractData() { - final Function function = new Function(FUNC_GETTARGETCREATECONTRACTDATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreateContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreateContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CreateContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CreateContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CreateContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CreateContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CreationCode.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CreationCode.java deleted file mode 100644 index b952174b10..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CreationCode.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CreationCode extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610314806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063ade003e81461003b578063f5f5ba72146100be575b600080fd5b610043610141565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100c6610168565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101065780820151818401526020810190506100eb565b50505050905090810190601f1680156101335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6040518060200161015190610193565b6020820181038252601f19601f8201166040525081565b60606040518060200161017a90610193565b6020820181038252601f19601f82011660405250905090565b61013e806101a18339019056fe608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80632096525514602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525090509056fea2646970667358221220d77fc1a8569a1b78723a887937f56661a07ba9df3061ecb55eef2095db92f98d64736f6c634300060c0033a2646970667358221220df42f9a15c22e4653c7480875ebdbad06177317c4ea4d7f93f6b3d4000cc2d6464736f6c634300060c0033"; - - public static final String FUNC_CREATIONCODEINFO = "creationCodeInfo"; - - public static final String FUNC_GETCONTRACTNAME = "getContractName"; - - protected CreationCode(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CreationCode(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall creationCodeInfo() { - final Function function = new Function(FUNC_CREATIONCODEINFO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getContractName() { - final Function function = new Function(FUNC_GETCONTRACTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreationCode.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreationCode.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CreationCode load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CreationCode(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CreationCode load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CreationCode(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CreationCodeType.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CreationCodeType.java deleted file mode 100644 index 2f4d2bc46b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/CreationCodeType.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CreationCodeType extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80632096525514602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525090509056fea2646970667358221220d77fc1a8569a1b78723a887937f56661a07ba9df3061ecb55eef2095db92f98d64736f6c634300060c0033"; - - public static final String FUNC_GETVALUE = "getValue"; - - protected CreationCodeType(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CreationCodeType(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getValue() { - final Function function = new Function( - FUNC_GETVALUE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreationCodeType.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreationCodeType.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CreationCodeType load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CreationCodeType(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CreationCodeType load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CreationCodeType(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DataLocation.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DataLocation.java deleted file mode 100644 index afa785fa83..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DataLocation.java +++ /dev/null @@ -1,107 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DataLocation extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061076b806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80630bcd3b3314610051578063246982c4146100d45780633ca8b1a714610182578063a1715deb14610274575b600080fd5b610059610359565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561009957808201518184015260208101905061007e565b50505050905090810190601f1680156100c65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610100600480360360208110156100ea57600080fd5b81019080803590602001909291905050506103fb565b6040518080602001838152602001828103825284818151815260200191508051906020019080838360005b8381101561014657808201518184015260208101905061012b565b50505050905090810190601f1680156101735780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6101f96004803603602081101561019857600080fd5b81019080803590602001906401000000008111156101b557600080fd5b8201836020820111156101c757600080fd5b803590602001918460018302840111640100000000831117156101e957600080fd5b90919293919293905050506104cf565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561023957808201518184015260208101905061021e565b50505050905090810190601f1680156102665780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6103416004803603606081101561028a57600080fd5b8101908080359060200190929190803590602001906401000000008111156102b157600080fd5b8201836020820111156102c357600080fd5b803590602001918460018302840111640100000000831117156102e557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050919291929080359060200190929190505050610586565b60405180821515815260200191505060405180910390f35b606060018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103f15780601f106103c6576101008083540402835291602001916103f1565b820191906000526020600020905b8154815290600101906020018083116103d457829003601f168201915b5050505050905090565b6060600080600084815260200190815260200160002060000160008085815260200190815260200160002060010154818054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104bf5780601f10610494576101008083540402835291602001916104bf565b820191906000526020600020905b8154815290600101906020018083116104a257829003601f168201915b5050505050915091509150915091565b60608282600191906104e29291906105fe565b5060018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105795780601f1061054e57610100808354040283529160200191610579565b820191906000526020600020905b81548152906001019060200180831161055c57829003601f168201915b5050505050905092915050565b600061059061067e565b60405180604001604052808581526020018481525090506105b181866105bd565b60019150509392505050565b8160008083815260200190815260200160002060008201518160000190805190602001906105ec929190610698565b50602082015181600101559050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061063f57803560ff191683800117855561066d565b8280016001018555821561066d579182015b8281111561066c578235825591602001919060010190610651565b5b50905061067a9190610718565b5090565b604051806040016040528060608152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106106d957805160ff1916838001178555610707565b82800160010185558215610707579182015b828111156107065782518255916020019190600101906106eb565b5b5090506107149190610718565b5090565b5b80821115610731576000816000905550600101610719565b509056fea2646970667358221220a8d5c9c1b4250e0c6d9809b204e3d0bb301804fb60839f4d63a63564570305b364736f6c634300060c0033"; - - public static final String FUNC_GETBYTES = "getBytes"; - - public static final String FUNC_GETPERSON = "getPerson"; - - public static final String FUNC_SAVEPERSON = "savePerson"; - - public static final String FUNC_TESTBYTES = "testBytes"; - - protected DataLocation(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DataLocation(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBytes() { - final Function function = new Function(FUNC_GETBYTES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall> getPerson(BigInteger _id) { - final Function function = new Function(FUNC_GETPERSON, - Arrays.asList(new Uint256(_id)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (String) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall savePerson(BigInteger _id, String _name, BigInteger _age) { - final Function function = new Function( - FUNC_SAVEPERSON, - Arrays.asList(new Uint256(_id), - new Utf8String(_name), - new Uint256(_age)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testBytes(byte[] _data) { - final Function function = new Function( - FUNC_TESTBYTES, - Arrays.asList(new DynamicBytes(_data)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DataLocation.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DataLocation.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DataLocation load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DataLocation(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DataLocation load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DataLocation(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DecimalLiteralsChangeByte.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DecimalLiteralsChangeByte.java deleted file mode 100644 index a557b4a445..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DecimalLiteralsChangeByte.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes4; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DecimalLiteralsChangeByte extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101ba806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806322e20d8f146100465780633db3fb0a146100a7578063c2b21da4146100e4575b600080fd5b6100726004803603602081101561005c57600080fd5b8101908080359060200190929190505050610121565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6100af61015d565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6100ec61016e565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6000808290508060e01b6000806101000a81548163ffffffff021916908360e01c021790555060008054906101000a900460e01b915050919050565b60008054906101000a900460e01b81565b60008060009054906101000a900460e01b90509056fea26469706673582212208a0c4e34d5f5efd457b1ada666970859746b65ef97d7542201b78279daea31fb64736f6c634300060c0033"; - - public static final String FUNC_B4 = "b4"; - - public static final String FUNC_GETB4 = "getB4"; - - public static final String FUNC_TESTCHANGE = "testChange"; - - protected DecimalLiteralsChangeByte(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DecimalLiteralsChangeByte(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall b4() { - final Function function = new Function(FUNC_B4, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getB4() { - final Function function = new Function(FUNC_GETB4, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall testChange(BigInteger a) { - final Function function = new Function( - FUNC_TESTCHANGE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DecimalLiteralsChangeByte.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DecimalLiteralsChangeByte.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DecimalLiteralsChangeByte load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DecimalLiteralsChangeByte(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DecimalLiteralsChangeByte load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DecimalLiteralsChangeByte(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DelegatecallCallee.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DelegatecallCallee.java deleted file mode 100644 index a73fb2b098..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DelegatecallCallee.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DelegatecallCallee extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610130806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630c55699c146041578063371303c014605d5780635a361756146065575b600080fd5b60476081565b6040518082815260200191505060405180910390f35b60636087565b005b606b60f1565b6040518082815260200191505060405180910390f35b60005481565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000805490509056fea26469706673582212202dba4c0dd13ef70136a40e73f7eab132bc483d7340ca04b099310687723db7c464736f6c634300060c0033"; - - public static final String FUNC_GETCALLEEX = "getCalleeX"; - - public static final String FUNC_INC = "inc"; - - public static final String FUNC_X = "x"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected DelegatecallCallee(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DelegatecallCallee(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall getCalleeX() { - final Function function = new Function(FUNC_GETCALLEEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc() { - final Function function = new Function( - FUNC_INC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCallee.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCallee.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DelegatecallCallee load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCallee(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DelegatecallCallee load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCallee(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String seder; - - public BigInteger x; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DelegatecallCallee_050.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DelegatecallCallee_050.java deleted file mode 100644 index 29dbb73aef..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DelegatecallCallee_050.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DelegatecallCallee_050 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610130806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630c55699c146041578063371303c014605d5780635a361756146065575b600080fd5b60476081565b6040518082815260200191505060405180910390f35b60636087565b005b606b60f1565b6040518082815260200191505060405180910390f35b60005481565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000805490509056fea26469706673582212205b7b27e1786b9e164d3aee1b95d01a59de355656c5fef2618731fa38eac9c62564736f6c634300060c0033"; - - public static final String FUNC_GETCALLEEX = "getCalleeX"; - - public static final String FUNC_INC = "inc"; - - public static final String FUNC_X = "x"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected DelegatecallCallee_050(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DelegatecallCallee_050(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall getCalleeX() { - final Function function = new Function(FUNC_GETCALLEEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc() { - final Function function = new Function( - FUNC_INC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCallee_050.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCallee_050.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DelegatecallCallee_050 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCallee_050(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DelegatecallCallee_050 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCallee_050(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String seder; - - public BigInteger x; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DelegatecallCaller.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DelegatecallCaller.java deleted file mode 100644 index 9a3eb83e7d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DelegatecallCaller.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DelegatecallCaller extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610200806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c146100465780637b8ed01814610064578063a7126c2d14610082575b600080fd5b61004e6100c6565b6040518082815260200191505060405180910390f35b61006c6100cc565b6040518082815260200191505060405180910390f35b6100c46004803603602081101561009857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506100d5565b005b60005481565b60008054905090565b8073ffffffffffffffffffffffffffffffffffffffff167f371303c051bff726100ad13871cababf50c20dd920fca137e519f98f089a74b4604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b6020831061015f578051825260208201915060208101905060208303925061013c565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101bf576040519150601f19603f3d011682016040523d82523d6000602084013e6101c4565b606091505b5050505056fea26469706673582212208e0890c2d3714d410b2d06c01fa2d7b78f8b00d5151b845e2199e28ec3fb7da864736f6c634300060c0033"; - - public static final String FUNC_GETCALLERX = "getCallerX"; - - public static final String FUNC_INC_DELEGATECALL = "inc_delegatecall"; - - public static final String FUNC_X = "x"; - - protected DelegatecallCaller(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DelegatecallCaller(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getCallerX() { - final Function function = new Function(FUNC_GETCALLERX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc_delegatecall(String _contractAddress) { - final Function function = new Function( - FUNC_INC_DELEGATECALL, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(_contractAddress)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCaller.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCaller.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DelegatecallCaller load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCaller(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DelegatecallCaller load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCaller(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DelegatecallCaller_050.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DelegatecallCaller_050.java deleted file mode 100644 index 21266e9a25..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DelegatecallCaller_050.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DelegatecallCaller_050 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610200806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c146100465780637b8ed01814610064578063a7126c2d14610082575b600080fd5b61004e6100c6565b6040518082815260200191505060405180910390f35b61006c6100cc565b6040518082815260200191505060405180910390f35b6100c46004803603602081101561009857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506100d5565b005b60005481565b60008054905090565b8073ffffffffffffffffffffffffffffffffffffffff167f371303c051bff726100ad13871cababf50c20dd920fca137e519f98f089a74b4604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b6020831061015f578051825260208201915060208101905060208303925061013c565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101bf576040519150601f19603f3d011682016040523d82523d6000602084013e6101c4565b606091505b5050505056fea2646970667358221220bf29ad9e7cfda440dfae8a377c2a359a0808f1eb6d90fb5a4c71810f5aab6b4164736f6c634300060c0033"; - - public static final String FUNC_GETCALLERX = "getCallerX"; - - public static final String FUNC_INC_DELEGATECALL = "inc_delegatecall"; - - public static final String FUNC_X = "x"; - - protected DelegatecallCaller_050(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DelegatecallCaller_050(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getCallerX() { - final Function function = new Function(FUNC_GETCALLERX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc_delegatecall(String _contractAddress) { - final Function function = new Function( - FUNC_INC_DELEGATECALL, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(_contractAddress)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCaller_050.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCaller_050.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DelegatecallCaller_050 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCaller_050(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DelegatecallCaller_050 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCaller_050(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DeleteDemo.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DeleteDemo.java deleted file mode 100644 index b89995cd89..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DeleteDemo.java +++ /dev/null @@ -1,244 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DeleteDemo extends Contract { - private static final String BINARY = "608060405260016000806101000a81548160ff0219169083151502179055506001805533600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040518060400160405280600381526020017f313233000000000000000000000000000000000000000000000000000000000081525060039080519060200190620000b092919062000138565b506040518060400160405280600381526020017f616263000000000000000000000000000000000000000000000000000000000081525060049080519060200190620000fe929190620001bf565b506001600560006101000a81548160ff021916908360028111156200011f57fe5b02179055503480156200013157600080fd5b5062000265565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200017b57805160ff1916838001178555620001ac565b82800160010185558215620001ac579182015b82811115620001ab5782518255916020019190600101906200018e565b5b509050620001bb919062000246565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200020257805160ff191683800117855562000233565b8280016001018555821562000233579182015b828111156200023257825182559160200191906001019062000215565b5b50905062000242919062000246565b5090565b5b808211156200026157600081600090555060010162000247565b5090565b610e3680620002756000396000f3fe6080604052600436106101095760003560e01c8063767800de11610095578063c15bae8411610064578063c15bae84146104e3578063cf08fed514610573578063d1bdda41146105a9578063e5aa3d5814610633578063f02997491461065e57610109565b8063767800de1461035757806393e1ed8314610398578063a1a984e514610428578063ab5170b21461045357610109565b806327c58232116100dc57806327c582321461024e57806332d057c9146102655780633ab0698c1461026f5780634df7e3d01461029a5780635d743b5d146102c757610109565b806305be2c121461010e57806313a5a8af146101a55780631acddabe146101db578063252bd4d31461020d575b600080fd5b34801561011a57600080fd5b5061012361068b565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561016957808201518184015260208101905061014e565b50505050905090810190601f1680156101965780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b3480156101b157600080fd5b506101ba61073e565b604051808260028111156101ca57fe5b815260200191505060405180910390f35b3480156101e757600080fd5b506101f0610755565b604051808381526020018281526020019250505060405180910390f35b34801561021957600080fd5b506102226107a9565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025a57600080fd5b506102636107d3565b005b61026d61083f565b005b34801561027b57600080fd5b506102846108b7565b6040518082815260200191505060405180910390f35b3480156102a657600080fd5b506102af610947565b60405180821515815260200191505060405180910390f35b3480156102d357600080fd5b506102dc610958565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561031c578082015181840152602081019050610301565b50505050905090810190601f1680156103495780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561036357600080fd5b5061036c6109fa565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103a457600080fd5b506103ad610a20565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103ed5780820151818401526020810190506103d2565b50505050905090810190601f16801561041a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561043457600080fd5b5061043d610abe565b6040518082815260200191505060405180910390f35b34801561045f57600080fd5b50610468610ac8565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104a857808201518184015260208101905061048d565b50505050905090810190601f1680156104d55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104ef57600080fd5b506104f8610b6a565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561053857808201518184015260208101905061051d565b50505050905090810190601f1680156105655780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561057f57600080fd5b50610588610c08565b6040518082600281111561059857fe5b815260200191505060405180910390f35b6105b1610c1b565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b838110156105f75780820151818401526020810190506105dc565b50505050905090810190601f1680156106245780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b34801561063f57600080fd5b50610648610d37565b6040518082815260200191505060405180910390f35b34801561066a57600080fd5b50610673610d3d565b60405180821515815260200191505060405180910390f35b600060606006600001546006600101808054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561072f5780601f106107045761010080835404028352916020019161072f565b820191906000526020600020905b81548152906001019060200180831161071257829003601f168201915b50505050509050915091509091565b6000600560009054906101000a900460ff16905090565b600080600860000160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600860010154915091509091565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000806101000a81549060ff0219169055600160009055600260006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556003600061081d9190610d53565b6004600061082b9190610d9b565b600560006101000a81549060ff0219169055565b604051806020016040528060c88152506008600082015181600101559050506107d0600860000160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506008600060018201600090555050565b60006060600767ffffffffffffffff811180156108d357600080fd5b506040519080825280602002602001820160405280156109025781602001602082028036833780820191505090505b50905060648160008151811061091457fe5b60200260200101818152505060c88160018151811061092f57fe5b60200260200101818152505060609050805191505090565b60008054906101000a900460ff1681565b606060038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109f05780601f106109c5576101008083540402835291602001916109f0565b820191906000526020600020905b8154815290600101906020018083116109d357829003601f168201915b5050505050905090565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60038054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ab65780601f10610a8b57610100808354040283529160200191610ab6565b820191906000526020600020905b815481529060010190602001808311610a9957829003601f168201915b505050505081565b6000600154905090565b606060048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b605780601f10610b3557610100808354040283529160200191610b60565b820191906000526020600020905b815481529060010190602001808311610b4357829003601f168201915b5050505050905090565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c005780601f10610bd557610100808354040283529160200191610c00565b820191906000526020600020905b815481529060010190602001808311610be357829003601f168201915b505050505081565b600560009054906101000a900460ff1681565b600060606040518060400160405280600a81526020016040518060400160405280600381526020017f6162630000000000000000000000000000000000000000000000000000000000815250815250506006600080820160009055600182016000610c869190610d9b565b50506006600001546006600101808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d285780601f10610cfd57610100808354040283529160200191610d28565b820191906000526020600020905b815481529060010190602001808311610d0b57829003601f168201915b50505050509050915091509091565b60015481565b60008060009054906101000a900460ff16905090565b50805460018160011615610100020316600290046000825580601f10610d795750610d98565b601f016020900490600052602060002090810190610d979190610de3565b5b50565b50805460018160011615610100020316600290046000825580601f10610dc15750610de0565b601f016020900490600052602060002090810190610ddf9190610de3565b5b50565b5b80821115610dfc576000816000905550600101610de4565b509056fea26469706673582212200565ee5210a110fc3d121925a80b7329ee78f0d4b07d962f8ef0bf36a647343664736f6c634300060c0033"; - - public static final String FUNC_ADDR = "addr"; - - public static final String FUNC_B = "b"; - - public static final String FUNC_COLOR = "color"; - - public static final String FUNC_DELDYNAMICARRAY = "delDynamicArray"; - - public static final String FUNC_DELMAPPING = "delMapping"; - - public static final String FUNC_DELSTRUCT = "delStruct"; - - public static final String FUNC_DELETEATTR = "deleteAttr"; - - public static final String FUNC_GETADDRESS = "getaddress"; - - public static final String FUNC_GETBOOL = "getbool"; - - public static final String FUNC_GETBYTES = "getbytes"; - - public static final String FUNC_GETDELMAPPING = "getdelMapping"; - - public static final String FUNC_GETENUM = "getenum"; - - public static final String FUNC_GETSTR = "getstr"; - - public static final String FUNC_GETSTRUCT = "getstruct"; - - public static final String FUNC_GETUNIT = "getunit"; - - public static final String FUNC_I = "i"; - - public static final String FUNC_STR = "str"; - - public static final String FUNC_VARBYTE = "varByte"; - - protected DeleteDemo(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DeleteDemo(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall addr() { - final Function function = new Function(FUNC_ADDR, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall b() { - final Function function = new Function(FUNC_B, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall color() { - final Function function = new Function(FUNC_COLOR, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall delDynamicArray() { - final Function function = new Function(FUNC_DELDYNAMICARRAY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall delMapping(BigInteger vonValue) { - final Function function = new Function( - FUNC_DELMAPPING, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall delStruct(BigInteger vonValue) { - final Function function = new Function( - FUNC_DELSTRUCT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall deleteAttr() { - final Function function = new Function( - FUNC_DELETEATTR, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getaddress() { - final Function function = new Function(FUNC_GETADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getbool() { - final Function function = new Function(FUNC_GETBOOL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getbytes() { - final Function function = new Function(FUNC_GETBYTES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall> getdelMapping() { - final Function function = new Function(FUNC_GETDELMAPPING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall getenum() { - final Function function = new Function(FUNC_GETENUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getstr() { - final Function function = new Function(FUNC_GETSTR, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall> getstruct() { - final Function function = new Function(FUNC_GETSTRUCT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue()); - } - }); - } - - public RemoteCall getunit() { - final Function function = new Function(FUNC_GETUNIT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall i() { - final Function function = new Function(FUNC_I, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall str() { - final Function function = new Function(FUNC_STR, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall varByte() { - final Function function = new Function(FUNC_VARBYTE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DeleteDemo.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DeleteDemo.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DeleteDemo load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DeleteDemo(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DeleteDemo load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DeleteDemo(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Destructable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Destructable.java deleted file mode 100644 index 00b1b542cb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Destructable.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Destructable extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101e0806100606000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80632b68b9c614610030575b600080fd5b61003861003a565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146100fb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b60004714610171576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f62616c616e6365206973206e6f74207a65726f0000000000000000000000000081525060200191505060405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16fffea264697066735822122047a816e0f83426a476e4eab68d477cf3a6ed72e98c0127d1de3ab9c0c3e9c3fa64736f6c634300060c0033"; - - public static final String FUNC_DESTRUCT = "destruct"; - - protected Destructable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Destructable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Destructable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Destructable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall destruct() { - final Function function = new Function( - FUNC_DESTRUCT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static Destructable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Destructable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Destructable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Destructable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DisallowTypeChange.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DisallowTypeChange.java deleted file mode 100644 index ce9b90b66b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DisallowTypeChange.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint32; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DisallowTypeChange extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610159806100206000396000f3fe6080604052600436106100345760003560e01c80630b7f166514610039578063420343a41461006a578063a56dfe4a14610074575b600080fd5b34801561004557600080fd5b5061004e6100a5565b604051808263ffffffff16815260200191505060405180910390f35b6100726100be565b005b34801561008057600080fd5b5061008961010f565b604051808263ffffffff16815260200191505060405180910390f35b60008060009054906101000a900463ffffffff16905090565b60007faaaa000000000000000000000000000000000000000000000000000000000000905060008190508060e01c6000806101000a81548163ffffffff021916908363ffffffff1602179055505050565b60008054906101000a900463ffffffff168156fea2646970667358221220882886a6a326e95f2601201733db3aa0af53eff530af6f10cfbddb1244fdce5964736f6c634300060c0033"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_TESTCHANGE = "testChange"; - - public static final String FUNC_Y = "y"; - - protected DisallowTypeChange(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DisallowTypeChange(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall testChange(BigInteger vonValue) { - final Function function = new Function( - FUNC_TESTCHANGE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall y() { - final Function function = new Function(FUNC_Y, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowTypeChange.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowTypeChange.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DisallowTypeChange load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DisallowTypeChange(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DisallowTypeChange load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DisallowTypeChange(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DisallowVariable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DisallowVariable.java deleted file mode 100644 index d6ecd52266..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DisallowVariable.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DisallowVariable extends Contract { - private static final String BINARY = "60806040526001600255348015601457600080fd5b5060c2806100236000396000f3fe608060405260043610601c5760003560e01c80630f2da424146021575b600080fd5b604a60048036036020811015603557600080fd5b81019080803590602001909291905050506060565b6040518082815260200191505060405180910390f35b60008060006002600391509150600060016000868152602001908152602001600020905050505091905056fea264697066735822122012f3bd3c5e2384c20de121b0b0134cf983623861176b204fe2ea52a2f84685f264736f6c634300060c0033"; - - public static final String FUNC_TESEMPTY = "tesEmpty"; - - protected DisallowVariable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DisallowVariable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall tesEmpty(BigInteger _id, BigInteger vonValue) { - final Function function = new Function( - FUNC_TESEMPTY, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(_id)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowVariable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowVariable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DisallowVariable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DisallowVariable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DisallowVariable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DisallowVariable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DisallowYears.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DisallowYears.java deleted file mode 100644 index 6d750ea472..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DisallowYears.java +++ /dev/null @@ -1,99 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DisallowYears extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101d4806100206000396000f3fe60806040526004361061004a5760003560e01c80630bb2b6961461004f57806320de797e1461007a57806325b29d84146100bc578063c6d8d657146100e7578063c6f8a3b714610112575b600080fd5b34801561005b57600080fd5b5061006461013d565b6040518082815260200191505060405180910390f35b6100a66004803603602081101561009057600080fd5b8101908080359060200190929190505050610147565b6040518082815260200191505060405180910390f35b3480156100c857600080fd5b506100d1610181565b6040518082815260200191505060405180910390f35b3480156100f357600080fd5b506100fc61018b565b6040518082815260200191505060405180910390f35b34801561011e57600080fd5b50610127610194565b6040518082815260200191505060405180910390f35b6000600254905090565b60006301e13380600081905550680dd2d5fcf3bc9c000060018190555060ff600281905550680dd2d5fcf3bc9c0000600381905550919050565b6000600154905090565b60008054905090565b600060035490509056fea2646970667358221220b83882824ba68b1d271cda9683e86aa5dc0d4bbdc1758905cd2fb34f19eaf68c64736f6c634300060c0033"; - - public static final String FUNC_GETETHERVALUE = "getEtherValue"; - - public static final String FUNC_GETHEXCOMVALUE = "getHexComValue"; - - public static final String FUNC_GETHEXVALUE = "getHexValue"; - - public static final String FUNC_GETTIME1 = "getTime1"; - - public static final String FUNC_TESTYEAR = "testyear"; - - protected DisallowYears(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DisallowYears(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getEtherValue() { - final Function function = new Function(FUNC_GETETHERVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getHexComValue() { - final Function function = new Function(FUNC_GETHEXCOMVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getHexValue() { - final Function function = new Function(FUNC_GETHEXVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getTime1() { - final Function function = new Function(FUNC_GETTIME1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall testyear(BigInteger a, BigInteger vonValue) { - final Function function = new Function( - FUNC_TESTYEAR, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowYears.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowYears.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DisallowYears load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DisallowYears(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DisallowYears load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DisallowYears(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DoWhileError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DoWhileError.java deleted file mode 100644 index fc0c0ff966..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/DoWhileError.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DoWhileError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060c38061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063a8a5cadc14602d575b600080fd5b6033604b565b60405180821515815260200191505060405180910390f35b6000806054606e565b90508060000160009054906101000a900460ff1691505090565b60005b600090508060000160009054906101000a900460ff166071579056fea26469706673582212207a0bf6237795fd0987d2665cab98bd2b7cf3857e795f6ba01147ce88023d978c64736f6c634300060c0033"; - - public static final String FUNC_GETDOWHILECONTROLRES = "getDoWhileControlRes"; - - protected DoWhileError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DoWhileError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDoWhileControlRes() { - final Function function = new Function(FUNC_GETDOWHILECONTROLRES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DoWhileError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DoWhileError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DoWhileError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DoWhileError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DoWhileError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DoWhileError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ERC200513Token.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ERC200513Token.java deleted file mode 100644 index 6e3a2ef0bf..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ERC200513Token.java +++ /dev/null @@ -1,331 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ERC200513Token extends Contract { - private static final String BINARY = "60806040526012600260006101000a81548160ff021916908360ff1602179055503480156200002d57600080fd5b506040516200169d3803806200169d833981810160405260608110156200005357600080fd5b8101908080519060200190929190805160405193929190846401000000008211156200007e57600080fd5b838201915060208201858111156200009557600080fd5b8251866001820283011164010000000082111715620000b357600080fd5b8083526020830192505050908051906020019080838360005b83811015620000e9578082015181840152602081019050620000cc565b50505050905090810190601f168015620001175780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200013b57600080fd5b838201915060208201858111156200015257600080fd5b82518660018202830111640100000000821117156200017057600080fd5b8083526020830192505050908051906020019080838360005b83811015620001a657808201518184015260208101905062000189565b50505050905090810190601f168015620001d45780820380516001836020036101000a031916815260200191505b50604052505050600260009054906101000a900460ff1660ff16600a0a8302600381905550600354600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160009080519060200190620002579291906200027a565b508060019080519060200190620002709291906200027a565b5050505062000320565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002bd57805160ff1916838001178555620002ee565b82800160010185558215620002ee579182015b82811115620002ed578251825591602001919060010190620002d0565b5b509050620002fd919062000301565b5090565b5b808211156200031c57600081600090555060010162000302565b5090565b61136d80620003306000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806342966c68116100a25780639b96eece116100715780639b96eece146105bb578063a9059cbb14610613578063c4e41b2214610677578063dd62ed3e14610695578063f0141d841461070d5761010b565b806342966c681461043857806370a082311461047c57806379cc6790146104d457806395d89b41146105385761010b565b806317d7de7c116100de57806317d7de7c146102f257806318160ddd1461037557806323b872dd14610393578063313ce567146104175761010b565b806306fdde0314610110578063095ea7b3146101935780630af4187d146101f7578063150704011461026f575b600080fd5b61011861072e565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561015857808201518184015260208101905061013d565b50505050905090810190601f1680156101855780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101df600480360360408110156101a957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506107cc565b60405180821515815260200191505060405180910390f35b6102596004803603604081101561020d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610859565b6040518082815260200191505060405180910390f35b6102776108e0565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102b757808201518184015260208101905061029c565b50505050905090810190601f1680156102e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102fa610982565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561033a57808201518184015260208101905061031f565b50505050905090810190601f1680156103675780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61037d610a24565b6040518082815260200191505060405180910390f35b6103ff600480360360608110156103a957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a2a565b60405180821515815260200191505060405180910390f35b61041f610b56565b604051808260ff16815260200191505060405180910390f35b6104646004803603602081101561044e57600080fd5b8101908080359060200190929190505050610b69565b60405180821515815260200191505060405180910390f35b6104be6004803603602081101561049257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c6b565b6040518082815260200191505060405180910390f35b610520600480360360408110156104ea57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c83565b60405180821515815260200191505060405180910390f35b610540610e99565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610580578082015181840152602081019050610565565b50505050905090810190601f1680156105ad5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6105fd600480360360208110156105d157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f37565b6040518082815260200191505060405180910390f35b61065f6004803603604081101561062957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f80565b60405180821515815260200191505060405180910390f35b61067f610f95565b6040518082815260200191505060405180910390f35b6106f7600480360360408110156106ab57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f9f565b6040518082815260200191505060405180910390f35b610715610fc4565b604051808260ff16815260200191505060405180910390f35b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c45780601f10610799576101008083540402835291602001916107c4565b820191906000526020600020905b8154815290600101906020018083116107a757829003601f168201915b505050505081565b600081600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b606060018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109785780601f1061094d57610100808354040283529160200191610978565b820191906000526020600020905b81548152906001019060200180831161095b57829003601f168201915b5050505050905090565b606060008054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a1a5780601f106109ef57610100808354040283529160200191610a1a565b820191906000526020600020905b8154815290600101906020018083116109fd57829003601f168201915b5050505050905090565b60035481565b6000600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115610ab557600080fd5b81600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550610b4a848484610fdb565b50600190509392505050565b600260009054906101000a900460ff1681565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610bb757600080fd5b81600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a260019050919050565b60046020528060005260406000206000915090505481565b600081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610cd157600080fd5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115610d5a57600080fd5b81600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a26001905092915050565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f2f5780601f10610f0457610100808354040283529160200191610f2f565b820191906000526020600020905b815481529060010190602001808311610f1257829003601f168201915b505050505081565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000610f8d338484610fdb565b905092915050565b6000600354905090565b6005602052816000526040600020602052806000526040600020600091509150505481565b6000600260009054906101000a900460ff16905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415806110455750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b61104e57600080fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561109a57600080fd5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054011161112657600080fd5b6000600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401905082600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555082600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a380600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540114915050939250505056fea26469706673582212209b46864fc38dc2d0780de5684716b5044c338c6056a31c7471330882ca24b5fc64736f6c634300060c0033"; - - public static final String FUNC_ALLOWANCE = "allowance"; - - public static final String FUNC_APPROVE = "approve"; - - public static final String FUNC_BALANCEOF = "balanceOf"; - - public static final String FUNC_BURN = "burn"; - - public static final String FUNC_BURNFROM = "burnFrom"; - - public static final String FUNC_DECIMALS = "decimals"; - - public static final String FUNC_GETALLOWANCE = "getAllowance"; - - public static final String FUNC_GETBALANCEOF = "getBalanceOf"; - - public static final String FUNC_GETDECIMALS = "getDecimals"; - - public static final String FUNC_GETNAME = "getName"; - - public static final String FUNC_GETSYMBOL = "getSymbol"; - - public static final String FUNC_GETTOTALSUPPLY = "getTotalSupply"; - - public static final String FUNC_NAME = "name"; - - public static final String FUNC_SYMBOL = "symbol"; - - public static final String FUNC_TOTALSUPPLY = "totalSupply"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_TRANSFERFROM = "transferFrom"; - - public static final Event BURN_EVENT = new Event("Burn", - Arrays.>asList(new TypeReference

(true) {}, new TypeReference() {})); - ; - - public static final Event TRANSFER_EVENT = new Event("Transfer", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - protected ERC200513Token(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ERC200513Token(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger initialSupply, String tokenName, String tokenSymbol) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(initialSupply), - new Utf8String(tokenName), - new Utf8String(tokenSymbol))); - return deployRemoteCall(ERC200513Token.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger initialSupply, String tokenName, String tokenSymbol) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(initialSupply), - new Utf8String(tokenName), - new Utf8String(tokenSymbol))); - return deployRemoteCall(ERC200513Token.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public List getBurnEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(BURN_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - BurnEventResponse typedResponse = new BurnEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable burnEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public BurnEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(BURN_EVENT, log); - BurnEventResponse typedResponse = new BurnEventResponse(); - typedResponse.log = log; - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable burnEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(BURN_EVENT)); - return burnEventObservable(filter); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public RemoteCall allowance(String param0, String param1) { - final Function function = new Function(FUNC_ALLOWANCE, - Arrays.asList(new Address(param0), - new Address(param1)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall approve(String _spender, BigInteger _value) { - final Function function = new Function( - FUNC_APPROVE, - Arrays.asList(new Address(_spender), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall balanceOf(String param0) { - final Function function = new Function(FUNC_BALANCEOF, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall burn(BigInteger _value) { - final Function function = new Function( - FUNC_BURN, - Arrays.asList(new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall burnFrom(String _from, BigInteger _value) { - final Function function = new Function( - FUNC_BURNFROM, - Arrays.asList(new Address(_from), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall decimals() { - final Function function = new Function(FUNC_DECIMALS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getAllowance(String _owner, String _spender) { - final Function function = new Function(FUNC_GETALLOWANCE, - Arrays.asList(new Address(_owner), - new Address(_spender)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBalanceOf(String _owner) { - final Function function = new Function(FUNC_GETBALANCEOF, - Arrays.asList(new Address(_owner)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDecimals() { - final Function function = new Function(FUNC_GETDECIMALS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getName() { - final Function function = new Function(FUNC_GETNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getSymbol() { - final Function function = new Function(FUNC_GETSYMBOL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getTotalSupply() { - final Function function = new Function(FUNC_GETTOTALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall symbol() { - final Function function = new Function(FUNC_SYMBOL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall totalSupply() { - final Function function = new Function(FUNC_TOTALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transfer(String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall transferFrom(String _from, String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFERFROM, - Arrays.asList(new Address(_from), - new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ERC200513Token load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ERC200513Token(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ERC200513Token load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ERC200513Token(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class BurnEventResponse { - public Log log; - - public String from; - - public BigInteger value; - } - - public static class TransferEventResponse { - public Log log; - - public String from; - - public String to; - - public BigInteger value; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/EmitTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/EmitTest.java deleted file mode 100644 index 9ce2deaf8c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/EmitTest.java +++ /dev/null @@ -1,118 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class EmitTest extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b5060b68061001e6000396000f3fe608060405260043610601c5760003560e01c80634f9d719e146021575b600080fd5b60276029565b005b7fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e73334604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a156fea26469706673582212208deb0b9acd365446c557ad807a859edabcc960913ce4d92e000b04ea5fa2459764736f6c634300060c0033"; - - public static final String FUNC_TESTEVENT = "testEvent"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected EmitTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected EmitTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.bidder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.amount = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.bidder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.amount = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall testEvent(BigInteger vonValue) { - final Function function = new Function( - FUNC_TESTEVENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EmitTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EmitTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static EmitTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new EmitTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static EmitTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new EmitTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String bidder; - - public BigInteger amount; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ErrorParamConstructor.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ErrorParamConstructor.java deleted file mode 100644 index 74c1387a61..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ErrorParamConstructor.java +++ /dev/null @@ -1,102 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ErrorParamConstructor extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060405161020d38038061020d8339818101604052602081101561003357600080fd5b8101908080519060200190929190505050600a806000819055505080600181905550506101a8806100656000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80630dbe671f1461005c5780634df7e3d01461007a57806382ab890a14610098578063a1c51915146100f7578063d46300fd14610115575b600080fd5b610064610133565b6040518082815260200191505060405180910390f35b610082610139565b6040518082815260200191505060405180910390f35b6100c4600480360360208110156100ae57600080fd5b810190808035906020019092919050505061013f565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6100ff61015f565b6040518082815260200191505060405180910390f35b61011d610169565b6040518082815260200191505060405180910390f35b60005481565b60015481565b600080826001600082825401925050819055503360015491509150915091565b6000600154905090565b6000805490509056fea264697066735822122065af30e171b8cb03c0b37c94fd74012c0f758cc6c32678912aea7f8747dbc23a64736f6c634300060c0033"; - - public static final String FUNC_A = "a"; - - public static final String FUNC_B = "b"; - - public static final String FUNC_GETA = "getA"; - - public static final String FUNC_GETB = "getB"; - - public static final String FUNC_UPDATE = "update"; - - protected ErrorParamConstructor(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ErrorParamConstructor(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _b) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_b))); - return deployRemoteCall(ErrorParamConstructor.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _b) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_b))); - return deployRemoteCall(ErrorParamConstructor.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall b() { - final Function function = new Function(FUNC_B, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getA() { - final Function function = new Function(FUNC_GETA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getB() { - final Function function = new Function(FUNC_GETB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ErrorParamConstructor load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ErrorParamConstructor(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ErrorParamConstructor load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ErrorParamConstructor(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ErrorParamConstructorBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ErrorParamConstructorBase.java deleted file mode 100644 index 16a881ce83..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ErrorParamConstructorBase.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ErrorParamConstructorBase extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516100df3803806100df8339818101604052602081101561003357600080fd5b8101908080519060200190929190505050806000819055505060858061005a6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80630dbe671f14602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000548156fea2646970667358221220e49389043eeebab64508edd192f7e7549abdf03451962fbb3ea672fa0c9da2ae64736f6c634300060c0033"; - - public static final String FUNC_A = "a"; - - protected ErrorParamConstructorBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ErrorParamConstructorBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _a) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_a))); - return deployRemoteCall(ErrorParamConstructorBase.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _a) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_a))); - return deployRemoteCall(ErrorParamConstructorBase.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static ErrorParamConstructorBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ErrorParamConstructorBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ErrorParamConstructorBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ErrorParamConstructorBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/EventCallContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/EventCallContract.java deleted file mode 100644 index 1613a6628b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/EventCallContract.java +++ /dev/null @@ -1,323 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class EventCallContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610343806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806336aacafa1461005c5780637b0cb839146100665780639d6d4cde14610084578063b53c846b146100a2578063b7301a1f146100ac575b600080fd5b6100646100ca565b005b61006e6101f3565b6040518082815260200191505060405180910390f35b61008c61024b565b6040518082815260200191505060405180910390f35b6100aa61026c565b005b6100b46102b3565b6040518082815260200191505060405180910390f35b7f9f252e5d94c6346e0073dfdaa81c6bba97bc07b05f8378efc62d77d157e1b011600060405180821515815260200191505060405180910390a17f9f252e5d94c6346e0073dfdaa81c6bba97bc07b05f8378efc62d77d157e1b011600160405180821515815260200191505060405180910390a17ffc3a67c9f0b5967ae4041ed898b05ec1fa49d2a3c22336247201d71be6f9712033604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1600c6040518082815260200191505060405180910390a03373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c600c6040518082815260200191505060405180910390a2565b60007ffc3a67c9f0b5967ae4041ed898b05ec1fa49d2a3c22336247201d71be6f9712033604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a160018101905090565b6000600181019050806040518082815260200191505060405180910390a090565b600c6040518082815260200191505060405180910390a0600d6040518082815260200191505060405180910390a0600e6040518082815260200191505060405180910390a0565b60003373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c600c6040518082815260200191505060405180910390a26001810190509056fea2646970667358221220a043c1e10d0d4810892c4fbce4eb0875b02b717bc802c3ea283b0a35c487430f64736f6c634300060c0033"; - - public static final String FUNC_ANONYMOUSEVENT = "anonymousEvent"; - - public static final String FUNC_EMITEVENT = "emitEvent"; - - public static final String FUNC_INDEXEDEVENT = "indexedEvent"; - - public static final String FUNC_TESTBOOL = "testBool"; - - public static final String FUNC_TESTMULTIANONYMOUS = "testMultiAnonymous"; - - public static final Event ANONYMOUS_EVENT = new Event("Anonymous", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event ANONYMOUS2_EVENT = new Event("Anonymous2", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event BOOLEVENT_EVENT = new Event("BoolEvent", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event DEPOSIT_EVENT = new Event("Deposit", - Arrays.>asList(new TypeReference

(true) {}, new TypeReference() {})); - ; - - public static final Event INCREMENT_EVENT = new Event("Increment", - Arrays.>asList(new TypeReference
() {})); - ; - - protected EventCallContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected EventCallContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getAnonymousEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ANONYMOUS_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - AnonymousEventResponse typedResponse = new AnonymousEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable anonymousEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public AnonymousEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ANONYMOUS_EVENT, log); - AnonymousEventResponse typedResponse = new AnonymousEventResponse(); - typedResponse.log = log; - typedResponse._id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable anonymousEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ANONYMOUS_EVENT)); - return anonymousEventObservable(filter); - } - - public List getAnonymous2Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ANONYMOUS2_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - Anonymous2EventResponse typedResponse = new Anonymous2EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable anonymous2EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Anonymous2EventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ANONYMOUS2_EVENT, log); - Anonymous2EventResponse typedResponse = new Anonymous2EventResponse(); - typedResponse.log = log; - typedResponse._id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable anonymous2EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ANONYMOUS2_EVENT)); - return anonymous2EventObservable(filter); - } - - public List getBoolEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(BOOLEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - BoolEventEventResponse typedResponse = new BoolEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable boolEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public BoolEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(BOOLEVENT_EVENT, log); - BoolEventEventResponse typedResponse = new BoolEventEventResponse(); - typedResponse.log = log; - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable boolEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(BOOLEVENT_EVENT)); - return boolEventEventObservable(filter); - } - - public List getDepositEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(DEPOSIT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - DepositEventResponse typedResponse = new DepositEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable depositEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public DepositEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(DEPOSIT_EVENT, log); - DepositEventResponse typedResponse = new DepositEventResponse(); - typedResponse.log = log; - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable depositEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(DEPOSIT_EVENT)); - return depositEventObservable(filter); - } - - public List getIncrementEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(INCREMENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - IncrementEventResponse typedResponse = new IncrementEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.who = (String) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable incrementEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public IncrementEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(INCREMENT_EVENT, log); - IncrementEventResponse typedResponse = new IncrementEventResponse(); - typedResponse.log = log; - typedResponse.who = (String) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable incrementEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(INCREMENT_EVENT)); - return incrementEventObservable(filter); - } - - public RemoteCall anonymousEvent() { - final Function function = new Function( - FUNC_ANONYMOUSEVENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall emitEvent() { - final Function function = new Function( - FUNC_EMITEVENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall indexedEvent() { - final Function function = new Function( - FUNC_INDEXEDEVENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testBool() { - final Function function = new Function( - FUNC_TESTBOOL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testMultiAnonymous() { - final Function function = new Function( - FUNC_TESTMULTIANONYMOUS, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventCallContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventCallContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static EventCallContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new EventCallContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static EventCallContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new EventCallContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class AnonymousEventResponse { - public Log log; - - public BigInteger _id; - } - - public static class Anonymous2EventResponse { - public Log log; - - public BigInteger _id; - } - - public static class BoolEventEventResponse { - public Log log; - - public Boolean result; - } - - public static class DepositEventResponse { - public Log log; - - public String _from; - - public BigInteger _value; - } - - public static class IncrementEventResponse { - public Log log; - - public String who; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/EventIndexedContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/EventIndexedContract.java deleted file mode 100644 index 4f4ffdf2fa..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/EventIndexedContract.java +++ /dev/null @@ -1,444 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.abi.solidity.datatypes.generated.StaticArray2; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class EventIndexedContract extends Contract { - private static final String BINARY = "60806040526040518060a00160405280600060ff168152602001600160ff168152602001600260ff168152602001600360ff168152602001600460ff16815250600090600561004f929190610177565b506040518060c001604052806040518060400160405280600060ff168152602001600060ff1681525081526020016040518060400160405280600060ff168152602001600160ff1681525081526020016040518060400160405280600060ff168152602001600260ff1681525081526020016040518060400160405280600060ff168152602001600360ff1681525081526020016040518060400160405280600060ff168152602001600460ff1681525081526020016040518060400160405280600060ff168152602001600560ff1681525081525060019060066101359291906101c9565b506040518060800160405280605881526020016107676058913960029080519060200190610164929190610227565b5034801561017157600080fd5b5061033b565b8280548282559060005260206000209081019282156101b8579160200282015b828111156101b7578251829060ff16905591602001919060010190610197565b5b5090506101c591906102a7565b5090565b828054828255906000526020600020906002028101928215610216579160200282015b82811115610215578251829060026102059291906102c4565b50916020019190600201906101ec565b5b5090506102239190610309565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061026857805160ff1916838001178555610296565b82800160010185558215610296579182015b8281111561029557825182559160200191906001019061027a565b5b5090506102a391906102a7565b5090565b5b808211156102c05760008160009055506001016102a8565b5090565b82600281019282156102f8579160200282015b828111156102f7578251829060ff169055916020019190600101906102d7565b5b50905061030591906102a7565b5090565b5b808211156103295760008181610320919061032d565b5060020161030a565b5090565b506000815560010160009055565b61041d8061034a6000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c8063bb0a5bd91161005b578063bb0a5bd9146100a0578063bbd847af146100aa578063db06ee8d146100b4578063fcf3fbb8146100e25761007d565b80633ac559931461008257806343ae41d81461008c578063b05dfcf814610096575b600080fd5b61008a6100ec565b005b610094610184565b005b61009e6101bf565b005b6100a861022e565b005b6100b2610243565b005b6100e0600480360360208110156100ca57600080fd5b81019080803590602001909291905050506102d1565b005b6100ea610301565b005b600260405180828054600181600116156101000203166002900480156101495780601f10610127576101008083540402835291820191610149565b820191906000526020600020905b815481529060010190602001808311610135575b505091505060405180910390207f617cf8a4400dd7963ed519ebe655a16e8da1282bb8fea36a21f634af912f54ab60405160405180910390a2565b6000600381111561019157fe5b7fde7a62815e0b38238b6211179d7d98017a99227a90823b0f44227e81dd3ad9c260405160405180910390a2565b60006040518082805480156101f357602002820191906000526020600020905b8154815260200190600101908083116101df575b505091505060405180910390207f38a323fa24260bbb8b86f61cd1d8c1900024088af6d08eda9e2d793da33c1b5860405160405180910390a2565b600460036002600160405160405180910390a4565b600160405180828054801561029657602002820191906000526020600020905b8160028015610287576020028201915b815481526020019060010190808311610273575b50509060020190808311610263575b505091505060405180910390207f406715adbc90cbc793dcd5707190ad1390229b2a75cf5b5ca228b518ae52de9a60405160405180910390a2565b807f834f28319998410e0230b46f29e58f7a86d825bc8505a917dae170f66d70bcdd60405160405180910390a250565b6002604051808280546001816001161561010002031660029004801561035e5780601f1061033c57610100808354040283529182019161035e565b820191906000526020600020905b81548152906001019060200180831161034a575b505091505060405180910390206000600381111561037857fe5b60006040518082805480156103ac57602002820191906000526020600020905b815481526020019060010190808311610398575b505091505060405180910390207f36b0026af468b8a488c2bd2a23a731b236d139a5211611fb763844bcb87f1abb60405160405180910390a456fea264697066735822122052ff7b8f7d68fb11890bb351af3686434405e574182d9cc9f0ce015f9915b62864736f6c634300060c003331323334353637383930303937383635343332313132333435363738393030393837363534333231313233343536373839303039373634333534363636363633323432343434343434343434343735383331353436383536"; - - public static final String FUNC_TESTANONYMOUSINDEXED = "testAnonymousIndexed"; - - public static final String FUNC_TESTCOMPLEX = "testComplex"; - - public static final String FUNC_TESTENUM = "testEnum"; - - public static final String FUNC_TESTMINUS = "testMinus"; - - public static final String FUNC_TESTONEDIMENSIONALARRAY = "testOneDimensionalArray"; - - public static final String FUNC_TESTSTR = "testStr"; - - public static final String FUNC_TESTTWODIMENSIONALARRAY = "testTwoDimensionalArray"; - - public static final Event ANONYMOUSINDEXEDNUM_EVENT = new Event("AnonymousIndexedNum", - Arrays.>asList(new TypeReference(true) {}, new TypeReference(true) {}, new TypeReference(true) {}, new TypeReference(true) {})); - ; - - public static final Event COMPLEXINDEXEDEVENT_EVENT = new Event("ComplexIndexedEvent", - Arrays.>asList(new TypeReference>(true) {}, new TypeReference(true) {}, new TypeReference(true) {})); - ; - - public static final Event ENUMEVENT_EVENT = new Event("EnumEvent", - Arrays.>asList(new TypeReference(true) {})); - ; - - public static final Event MINUSEVENT_EVENT = new Event("MinusEvent", - Arrays.>asList(new TypeReference(true) {})); - ; - - public static final Event ONEDIMENSIONALARRAYEVENT_EVENT = new Event("OneDimensionalArrayEvent", - Arrays.>asList(new TypeReference>(true) {})); - ; - - public static final Event STRINGEVENT_EVENT = new Event("StringEvent", - Arrays.>asList(new TypeReference(true) {})); - ; - - public static final Event TWODIMENSIONALARRAYEVENT_EVENT = new Event("TwoDimensionalArrayEvent", - Arrays.>asList(new TypeReference>>(true) {})); - ; - - protected EventIndexedContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected EventIndexedContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getAnonymousIndexedNumEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ANONYMOUSINDEXEDNUM_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - AnonymousIndexedNumEventResponse typedResponse = new AnonymousIndexedNumEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.u1 = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.u2 = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.u3 = (BigInteger) eventValues.getIndexedValues().get(2).getValue(); - typedResponse.u4 = (BigInteger) eventValues.getIndexedValues().get(3).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable anonymousIndexedNumEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public AnonymousIndexedNumEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ANONYMOUSINDEXEDNUM_EVENT, log); - AnonymousIndexedNumEventResponse typedResponse = new AnonymousIndexedNumEventResponse(); - typedResponse.log = log; - typedResponse.u1 = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.u2 = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.u3 = (BigInteger) eventValues.getIndexedValues().get(2).getValue(); - typedResponse.u4 = (BigInteger) eventValues.getIndexedValues().get(3).getValue(); - return typedResponse; - } - }); - } - - public Observable anonymousIndexedNumEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ANONYMOUSINDEXEDNUM_EVENT)); - return anonymousIndexedNumEventObservable(filter); - } - - public List getComplexIndexedEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(COMPLEXINDEXEDEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ComplexIndexedEventEventResponse typedResponse = new ComplexIndexedEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.choice = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.str = (byte[]) eventValues.getIndexedValues().get(2).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable complexIndexedEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ComplexIndexedEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(COMPLEXINDEXEDEVENT_EVENT, log); - ComplexIndexedEventEventResponse typedResponse = new ComplexIndexedEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.choice = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.str = (byte[]) eventValues.getIndexedValues().get(2).getValue(); - return typedResponse; - } - }); - } - - public Observable complexIndexedEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(COMPLEXINDEXEDEVENT_EVENT)); - return complexIndexedEventEventObservable(filter); - } - - public List getEnumEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ENUMEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EnumEventEventResponse typedResponse = new EnumEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.choices = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable enumEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EnumEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ENUMEVENT_EVENT, log); - EnumEventEventResponse typedResponse = new EnumEventEventResponse(); - typedResponse.log = log; - typedResponse.choices = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable enumEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ENUMEVENT_EVENT)); - return enumEventEventObservable(filter); - } - - public List getMinusEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(MINUSEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - MinusEventEventResponse typedResponse = new MinusEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.minus = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable minusEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public MinusEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(MINUSEVENT_EVENT, log); - MinusEventEventResponse typedResponse = new MinusEventEventResponse(); - typedResponse.log = log; - typedResponse.minus = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable minusEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(MINUSEVENT_EVENT)); - return minusEventEventObservable(filter); - } - - public List getOneDimensionalArrayEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ONEDIMENSIONALARRAYEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - OneDimensionalArrayEventEventResponse typedResponse = new OneDimensionalArrayEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable oneDimensionalArrayEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public OneDimensionalArrayEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ONEDIMENSIONALARRAYEVENT_EVENT, log); - OneDimensionalArrayEventEventResponse typedResponse = new OneDimensionalArrayEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable oneDimensionalArrayEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ONEDIMENSIONALARRAYEVENT_EVENT)); - return oneDimensionalArrayEventEventObservable(filter); - } - - public List getStringEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(STRINGEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - StringEventEventResponse typedResponse = new StringEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.str = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable stringEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public StringEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(STRINGEVENT_EVENT, log); - StringEventEventResponse typedResponse = new StringEventEventResponse(); - typedResponse.log = log; - typedResponse.str = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable stringEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(STRINGEVENT_EVENT)); - return stringEventEventObservable(filter); - } - - public List getTwoDimensionalArrayEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TWODIMENSIONALARRAYEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TwoDimensionalArrayEventEventResponse typedResponse = new TwoDimensionalArrayEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable twoDimensionalArrayEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TwoDimensionalArrayEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TWODIMENSIONALARRAYEVENT_EVENT, log); - TwoDimensionalArrayEventEventResponse typedResponse = new TwoDimensionalArrayEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable twoDimensionalArrayEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TWODIMENSIONALARRAYEVENT_EVENT)); - return twoDimensionalArrayEventEventObservable(filter); - } - - public RemoteCall testAnonymousIndexed() { - final Function function = new Function( - FUNC_TESTANONYMOUSINDEXED, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testComplex() { - final Function function = new Function( - FUNC_TESTCOMPLEX, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testEnum() { - final Function function = new Function( - FUNC_TESTENUM, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testMinus(BigInteger value) { - final Function function = new Function( - FUNC_TESTMINUS, - Arrays.asList(new Int256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testOneDimensionalArray() { - final Function function = new Function( - FUNC_TESTONEDIMENSIONALARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testStr() { - final Function function = new Function( - FUNC_TESTSTR, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testTwoDimensionalArray() { - final Function function = new Function( - FUNC_TESTTWODIMENSIONALARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventIndexedContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventIndexedContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static EventIndexedContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new EventIndexedContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static EventIndexedContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new EventIndexedContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class AnonymousIndexedNumEventResponse { - public Log log; - - public BigInteger u1; - - public BigInteger u2; - - public BigInteger u3; - - public BigInteger u4; - } - - public static class ComplexIndexedEventEventResponse { - public Log log; - - public byte[] array; - - public BigInteger choice; - - public byte[] str; - } - - public static class EnumEventEventResponse { - public Log log; - - public BigInteger choices; - } - - public static class MinusEventEventResponse { - public Log log; - - public BigInteger minus; - } - - public static class OneDimensionalArrayEventEventResponse { - public Log log; - - public byte[] array; - } - - public static class StringEventEventResponse { - public Log log; - - public byte[] str; - } - - public static class TwoDimensionalArrayEventEventResponse { - public Log log; - - public byte[] array; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/EventTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/EventTypeContract.java deleted file mode 100644 index 86cf4796ed..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/EventTypeContract.java +++ /dev/null @@ -1,270 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.StaticArray2; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class EventTypeContract extends Contract { - private static final String BINARY = "60806040526040518060a00160405280600060ff168152602001600160ff168152602001600260ff168152602001600360ff168152602001600460ff16815250600090600561004f929190610177565b506040518060c001604052806040518060400160405280600060ff168152602001600060ff1681525081526020016040518060400160405280600060ff168152602001600160ff1681525081526020016040518060400160405280600060ff168152602001600260ff1681525081526020016040518060400160405280600060ff168152602001600360ff1681525081526020016040518060400160405280600060ff168152602001600460ff1681525081526020016040518060400160405280600060ff168152602001600560ff1681525081525060019060066101359291906101c9565b506040518060800160405280605881526020016106096058913960029080519060200190610164929190610227565b5034801561017157600080fd5b5061033b565b8280548282559060005260206000209081019282156101b8579160200282015b828111156101b7578251829060ff16905591602001919060010190610197565b5b5090506101c591906102a7565b5090565b828054828255906000526020600020906002028101928215610216579160200282015b82811115610215578251829060026102059291906102c4565b50916020019190600201906101ec565b5b5090506102239190610309565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061026857805160ff1916838001178555610296565b82800160010185558215610296579182015b8281111561029557825182559160200191906001019061027a565b5b5090506102a391906102a7565b5090565b5b808211156102c05760008160009055506001016102a8565b5090565b82600281019282156102f8579160200282015b828111156102f7578251829060ff169055916020019190600101906102d7565b5b50905061030591906102a7565b5090565b5b808211156103295760008181610320919061032d565b5060020161030a565b5090565b506000815560010160009055565b6102bf8061034a6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80633ac559931461005157806343ae41d81461005b578063b05dfcf814610065578063bbd847af1461006f575b600080fd5b610059610079565b005b610063610135565b005b61006d61017a565b005b6100776101f2565b005b7f617cf8a4400dd7963ed519ebe655a16e8da1282bb8fea36a21f634af912f54ab600260405180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156101255780601f106100fa57610100808354040283529160200191610125565b820191906000526020600020905b81548152906001019060200180831161010857829003601f168201915b50509250505060405180910390a1565b7fde7a62815e0b38238b6211179d7d98017a99227a90823b0f44227e81dd3ad9c260006040518082600381111561016857fe5b815260200191505060405180910390a1565b7f38a323fa24260bbb8b86f61cd1d8c1900024088af6d08eda9e2d793da33c1b586000604051808060200182810382528381815481526020019150805480156101e257602002820191906000526020600020905b8154815260200190600101908083116101ce575b50509250505060405180910390a1565b7f406715adbc90cbc793dcd5707190ad1390229b2a75cf5b5ca228b518ae52de9a60016040518080602001828103825283818154815260200191508054801561027957602002820191906000526020600020905b816002801561026a576020028201915b815481526020019060010190808311610256575b50509060020190808311610246575b50509250505060405180910390a156fea2646970667358221220f7f92920ed4993784da536d8a730e79da10d36c8689fc46819f94fe29eecb11964736f6c634300060c003331323334353637383930303937383635343332313132333435363738393030393837363534333231313233343536373839303039373634333534363636363633323432343434343434343434343735383331353436383536"; - - public static final String FUNC_TESTENUM = "testEnum"; - - public static final String FUNC_TESTONEDIMENSIONALARRAY = "testOneDimensionalArray"; - - public static final String FUNC_TESTSTR = "testStr"; - - public static final String FUNC_TESTTWODIMENSIONALARRAY = "testTwoDimensionalArray"; - - public static final Event ENUMEVENT_EVENT = new Event("EnumEvent", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event ONEDIMENSIONALARRAYEVENT_EVENT = new Event("OneDimensionalArrayEvent", - Arrays.>asList(new TypeReference>() {})); - ; - - public static final Event STRINGEVENT_EVENT = new Event("StringEvent", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event TWODIMENSIONALARRAYEVENT_EVENT = new Event("TwoDimensionalArrayEvent", - Arrays.>asList(new TypeReference>>() {})); - ; - - protected EventTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected EventTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEnumEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ENUMEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EnumEventEventResponse typedResponse = new EnumEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.choices = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable enumEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EnumEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ENUMEVENT_EVENT, log); - EnumEventEventResponse typedResponse = new EnumEventEventResponse(); - typedResponse.log = log; - typedResponse.choices = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable enumEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ENUMEVENT_EVENT)); - return enumEventEventObservable(filter); - } - - public List getOneDimensionalArrayEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ONEDIMENSIONALARRAYEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - OneDimensionalArrayEventEventResponse typedResponse = new OneDimensionalArrayEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (List) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable oneDimensionalArrayEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public OneDimensionalArrayEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ONEDIMENSIONALARRAYEVENT_EVENT, log); - OneDimensionalArrayEventEventResponse typedResponse = new OneDimensionalArrayEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (List) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable oneDimensionalArrayEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ONEDIMENSIONALARRAYEVENT_EVENT)); - return oneDimensionalArrayEventEventObservable(filter); - } - - public List getStringEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(STRINGEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - StringEventEventResponse typedResponse = new StringEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.str = (String) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable stringEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public StringEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(STRINGEVENT_EVENT, log); - StringEventEventResponse typedResponse = new StringEventEventResponse(); - typedResponse.log = log; - typedResponse.str = (String) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable stringEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(STRINGEVENT_EVENT)); - return stringEventEventObservable(filter); - } - - public List getTwoDimensionalArrayEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TWODIMENSIONALARRAYEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TwoDimensionalArrayEventEventResponse typedResponse = new TwoDimensionalArrayEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (List>) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable twoDimensionalArrayEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TwoDimensionalArrayEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TWODIMENSIONALARRAYEVENT_EVENT, log); - TwoDimensionalArrayEventEventResponse typedResponse = new TwoDimensionalArrayEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (List>) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable twoDimensionalArrayEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TWODIMENSIONALARRAYEVENT_EVENT)); - return twoDimensionalArrayEventEventObservable(filter); - } - - public RemoteCall testEnum() { - final Function function = new Function( - FUNC_TESTENUM, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testOneDimensionalArray() { - final Function function = new Function( - FUNC_TESTONEDIMENSIONALARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testStr() { - final Function function = new Function( - FUNC_TESTSTR, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testTwoDimensionalArray() { - final Function function = new Function( - FUNC_TESTTWODIMENSIONALARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventTypeContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventTypeContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static EventTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new EventTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static EventTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new EventTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EnumEventEventResponse { - public Log log; - - public BigInteger choices; - } - - public static class OneDimensionalArrayEventEventResponse { - public Log log; - - public List array; - } - - public static class StringEventEventResponse { - public Log log; - - public String str; - } - - public static class TwoDimensionalArrayEventEventResponse { - public Log log; - - public List> array; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/External.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/External.java deleted file mode 100644 index 6fc4e4f80c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/External.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class External extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b5060968061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063569c5f6d14602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b60008060019050600060029050808201925050509056fea2646970667358221220053d81a295a5ea209bd81d424aff75549e497e7fccaa54434d0e6c3873957cf164736f6c634300060c0033"; - - public static final String FUNC_GETSUM = "getSum"; - - protected External(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected External(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getSum() { - final Function function = new Function(FUNC_GETSUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(External.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(External.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static External load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new External(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static External load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new External(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/FallBack.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/FallBack.java deleted file mode 100644 index e1cf66c05a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/FallBack.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class FallBack extends Contract { - private static final String BINARY = "6080604052600160005534801561001557600080fd5b5061012b806100256000396000f3fe6080604052348015600f57600080fd5b506004361060355760003560e01c8063d1f1548f146040578063d46300fd146048576036565b5b6064600081905550005b60466064565b005b604e60ec565b6040518082815260200191505060405180910390f35b3073ffffffffffffffffffffffffffffffffffffffff1660405180807f66756e6374696f6e4e6f744578697374282900000000000000000000000000008152506012019050600060405180830381855af49150503d806000811460e2576040519150601f19603f3d011682016040523d82523d6000602084013e60e7565b606091505b505050565b6000805490509056fea26469706673582212207878552ba94eb74279f7c10d1ef6a2c5de2d1561e87ca3e9c22d44ec979f5b8564736f6c634300060c0033"; - - public static final String FUNC_CALLFUNCTIONNOTEXIST = "CallFunctionNotExist"; - - public static final String FUNC_GETA = "getA"; - - protected FallBack(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected FallBack(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall CallFunctionNotExist() { - final Function function = new Function( - FUNC_CALLFUNCTIONNOTEXIST, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getA() { - final Function function = new Function(FUNC_GETA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FallBack.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FallBack.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static FallBack load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new FallBack(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static FallBack load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new FallBack(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ForError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ForError.java deleted file mode 100644 index 4af917330c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ForError.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ForError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061014a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063895e3ada1461003b578063ec56ae5d1461005b575b600080fd5b61004361007b565b60405180821515815260200191505060405180910390f35b6100636100a0565b60405180821515815260200191505060405180910390f35b6000806100866100c5565b90508060000160009054906101000a900460ff1691505090565b6000806100ab6100ee565b90508060000160009054906101000a900460ff1691505090565b60005b600115158160000160009054906101000a900460ff16151514156100eb576100c8565b90565b60005b600190508060000160009054906101000a900460ff1615610111576100f1565b9056fea264697066735822122019f27abdefd02ae16145788e1941c9ee6126a5079a43e3bca3b3ef04235f682564736f6c634300060c0033"; - - public static final String FUNC_GETFORCONTROLRES = "getForControlRes"; - - public static final String FUNC_GETFORCONTROLRES1 = "getForControlRes1"; - - protected ForError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ForError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getForControlRes() { - final Function function = new Function(FUNC_GETFORCONTROLRES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getForControlRes1() { - final Function function = new Function(FUNC_GETFORCONTROLRES1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ForError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ForError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ForError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ForError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ForError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ForError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/FunctionDeclaraction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/FunctionDeclaraction.java deleted file mode 100644 index d7a034172c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/FunctionDeclaraction.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class FunctionDeclaraction extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101d5806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806312065fe014610046578063ab95edb114610064578063cb533b38146100c3575b600080fd5b61004e610122565b6040518082815260200191505060405180910390f35b6100906004803603602081101561007a57600080fd5b810190808035906020019092919050505061012b565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6100ef600480360360208110156100d957600080fd5b8101908080359060200190929190505050610146565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b60008054905090565b60008061013783610161565b50503360005491509150915091565b60008061015283610180565b50503360005491509150915091565b6000808260008082825401925050819055503360005491509150915091565b600080826000808282540192505081905550336000549150915091509156fea26469706673582212208b7fd28df413565e1997d8949ae4e1062b87311419c5ba29465267cfcbc5115564736f6c634300060c0033"; - - public static final String FUNC_GETBALANCE = "getBalance"; - - public static final String FUNC_UPDATE_EXTERNAL = "update_external"; - - public static final String FUNC_UPDATE_PUBLIC = "update_public"; - - protected FunctionDeclaraction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected FunctionDeclaraction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBalance() { - final Function function = new Function(FUNC_GETBALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update_external(BigInteger amount_ex) { - final Function function = new Function( - FUNC_UPDATE_EXTERNAL, - Arrays.asList(new Uint256(amount_ex)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall update_public(BigInteger amount_pu) { - final Function function = new Function( - FUNC_UPDATE_PUBLIC, - Arrays.asList(new Uint256(amount_pu)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FunctionDeclaraction.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FunctionDeclaraction.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static FunctionDeclaraction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new FunctionDeclaraction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static FunctionDeclaraction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new FunctionDeclaraction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/FunctionParam.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/FunctionParam.java deleted file mode 100644 index a1d2e8bff6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/FunctionParam.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class FunctionParam extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060d18061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806326121ff014603757806392d0d153146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b6059607e565b6040518082815260200191505060405180910390f35b60006079607e6087565b905090565b60006007905090565b600060948263ffffffff16565b905091905056fea2646970667358221220151129aac5a586dc804a6238031b2c2936ec63cdbe9ee279ae50662d2cc83c5764736f6c634300060c0033"; - - public static final String FUNC_F = "f"; - - public static final String FUNC_T = "t"; - - protected FunctionParam(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected FunctionParam(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f() { - final Function function = new Function( - FUNC_F, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall t() { - final Function function = new Function(FUNC_T, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FunctionParam.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FunctionParam.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static FunctionParam load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new FunctionParam(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static FunctionParam load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new FunctionParam(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/GetLibraryAddress.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/GetLibraryAddress.java deleted file mode 100644 index dace782651..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/GetLibraryAddress.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class GetLibraryAddress extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610126806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80636e7c1504146037578063750c193514603f575b600080fd5b603d6071565b005b604560c7565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b73__$e85707310368214d280ebf362fa781bf90$__6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690509056fea26469706673582212206b57b8a8ec70ae8eae87d4dc06b4421c4b4a77a8162fed34aea7a73fde0e689864736f6c634300060c0033\n" - + "\n" - + "// $e85707310368214d280ebf362fa781bf90$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/8-address_LibraryName/UserLibrary.sol:UserLibrary"; - - public static final String FUNC_GETUSERLIBADDRESS = "getUserLibAddress"; - - public static final String FUNC_SETUSERLIBADDRESS = "setUserLibAddress"; - - protected GetLibraryAddress(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected GetLibraryAddress(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getUserLibAddress() { - final Function function = new Function(FUNC_GETUSERLIBADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setUserLibAddress() { - final Function function = new Function( - FUNC_SETUSERLIBADDRESS, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(GetLibraryAddress.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(GetLibraryAddress.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static GetLibraryAddress load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new GetLibraryAddress(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static GetLibraryAddress load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new GetLibraryAddress(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Getter.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Getter.java deleted file mode 100644 index 55266b2750..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Getter.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Getter extends Contract { - private static final String BINARY = "6080604052600a60005534801561001557600080fd5b50610149806100256000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806326121ff01461003b57806373d4a13a14610060575b600080fd5b61004361007e565b604051808381526020018281526020019250505060405180910390f35b61006861010d565b6040518082815260200191505060405180910390f35b6000806000543073ffffffffffffffffffffffffffffffffffffffff166373d4a13a6040518163ffffffff1660e01b815260040160206040518083038186803b1580156100ca57600080fd5b505afa1580156100de573d6000803e3d6000fd5b505050506040513d60208110156100f457600080fd5b8101908080519060200190929190505050915091509091565b6000548156fea264697066735822122068f978d0d31ff7c7754f3faba363e86c4bc6e05a2cd5bdad30b9c3799c2ebc9164736f6c634300060c0033"; - - public static final String FUNC_DATA = "data"; - - public static final String FUNC_F = "f"; - - protected Getter(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Getter(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall data() { - final Function function = new Function(FUNC_DATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> f() { - final Function function = new Function(FUNC_F, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Getter.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Getter.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Getter load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Getter(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Getter load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Getter(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Guessing.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Guessing.java deleted file mode 100644 index ef413f25fd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Guessing.java +++ /dev/null @@ -1,390 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Guessing extends Contract { - private static final String BINARY = "60806040526000600260006101000a81548160ff021916908315150217905550674563918244f400006003556001600a556000600d5534801561004157600080fd5b5060405161122b38038061122b8339818101604052602081101561006457600080fd5b810190808051906020019092919050505033600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806000819055505061115e806100cd6000396000f3fe6080604052600436106101445760003560e01c806382d333a0116100b6578063b69ef8a81161006f578063b69ef8a814610602578063c2930f911461062d578063c29bde8c14610658578063c7f40b6414610683578063ecbde5e6146106c4578063ff37be16146106ef57610155565b806382d333a01461041d5780638941f2f01461044857806394696a9214610497578063a46c363714610503578063ae4479411461052e578063b03e00771461059357610155565b806313eaca431161010857806313eaca43146102af5780631ef9c56f146102dc578063220bc55e1461034857806327ebd9ab14610352578063629374ab1461037d5780636e5ab671146103b857610155565b8063045f9c9714610164578063062d6a98146101c9578063083c6323146101f4578063094cc1ab1461021f5780630b8b85021461024a57610155565b3661015557610153343361071a565b005b34801561016157600080fd5b50005b34801561017057600080fd5b5061019d6004803603602081101561018757600080fd5b81019080803590602001909291905050506108c2565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101d557600080fd5b506101de6108fe565b6040518082815260200191505060405180910390f35b34801561020057600080fd5b50610209610904565b6040518082815260200191505060405180910390f35b34801561022b57600080fd5b5061023461090a565b6040518082815260200191505060405180910390f35b34801561025657600080fd5b506102836004803603602081101561026d57600080fd5b8101908080359060200190929190505050610910565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156102bb57600080fd5b506102c4610943565b60405180821515815260200191505060405180910390f35b3480156102e857600080fd5b506102f1610956565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610334578082015181840152602081019050610319565b505050509050019250505060405180910390f35b6103506109e4565b005b34801561035e57600080fd5b506103676109f0565b6040518082815260200191505060405180910390f35b34801561038957600080fd5b506103b6600480360360208110156103a057600080fd5b8101908080359060200190929190505050610a1a565b005b3480156103c457600080fd5b50610407600480360360208110156103db57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ddc565b6040518082815260200191505060405180910390f35b34801561042957600080fd5b50610432610df4565b6040518082815260200191505060405180910390f35b34801561045457600080fd5b506104816004803603602081101561046b57600080fd5b8101908080359060200190929190505050610dfa565b6040518082815260200191505060405180910390f35b3480156104a357600080fd5b506104ac610e23565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156104ef5780820151818401526020810190506104d4565b505050509050019250505060405180910390f35b34801561050f57600080fd5b50610518610eb8565b6040518082815260200191505060405180910390f35b34801561053a57600080fd5b5061057d6004803603602081101561055157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ec5565b6040518082815260200191505060405180910390f35b34801561059f57600080fd5b506105ec600480360360408110156105b657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610edd565b6040518082815260200191505060405180910390f35b34801561060e57600080fd5b50610617610f0b565b6040518082815260200191505060405180910390f35b34801561063957600080fd5b50610642610f11565b6040518082815260200191505060405180910390f35b34801561066457600080fd5b5061066d610f17565b6040518082815260200191505060405180910390f35b34801561068f57600080fd5b50610698610f1d565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106d057600080fd5b506106d9610f43565b6040518082815260200191505060405180910390f35b3480156106fb57600080fd5b50610704610f4b565b6040518082815260200191505060405180910390f35b43600054106108be5760035482101561073257600080fd5b600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a5490806001815401808255809150506001900390600052602060002001600090919091909150558060076000600a54815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600a6000815480929190600101919050555081600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816004600082825401925050819055507fe842aea7a5f1b01049d752008c53c52890b1a6daf660cf39e8eec506112bbdf681836001604051808473ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018215158152602001935050505060405180910390a15b5050565b600b81815481106108cf57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b60005481565b600d5481565b60076020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900460ff1681565b6060600b8054806020026020016040519081016040528092919081815260200182805480156109da57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610990575b5050505050905090565b6109ee343361071a565b565b600060011515600260009054906101000a900460ff16151514610a1257600080fd5b600d54905090565b600054431115610dd957600260009054906101000a900460ff16158015610a8e57503373ffffffffffffffffffffffffffffffffffffffff16600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b8015610a9c57506001600a54115b15610dd857600081604051602001808281526020019150506040516020818303038152906040528051906020012060001c90506000600a548281610adc57fe5b0690506064600a541015610afa57610af581600a610f55565b610b24565b612710600a541015610b1657610b11816064610f55565b610b23565b610b22816103e8610f55565b5b5b600b8054905060045481610b3457fe5b04600581905550600080600090505b600b80549050811015610db157600160096000600b8481548110610b6357fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540160096000600b8481548110610bdb57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff16600b8281548110610c6957fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141580610d1b5750600073ffffffffffffffffffffffffffffffffffffffff16600b8281548110610cd757fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b15610da457600b8181548110610d2d57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1691508173ffffffffffffffffffffffffffffffffffffffff166108fc6005549081150290604051600060405180830381858888f19350505050158015610da2573d6000803e3d6000fd5b505b8080600101915050610b43565b506001600260006101000a81548160ff021916908315150217905550836001819055505050505b5b50565b60096020528060005260406000206000915090505481565b60055481565b6000610101430382118015610e1157506001430382105b610e1a57600080fd5b81409050919050565b6060600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610eae57602002820191906000526020600020905b815481526020019060010190808311610e9a575b5050505050905090565b6000600b80549050905090565b60066020528060005260406000206000915090505481565b60086020528160005260406000208181548110610ef657fe5b90600052602060002001600091509150505481565b60045481565b60035481565b60015481565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600047905090565b6000600154905090565b808281610f5e57fe5b06600d819055506000600d541415611041576000600190505b600a5481101561103b57600082600d54830381610f9057fe5b06141561102e57600b6007600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b8080600101915050610f77565b50611124565b6000600190505b600a5481101561112257600082828161105d57fe5b06141580156110795750600082600d5483038161107657fe5b06145b1561111557600b6007600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b8080600101915050611048565b505b505056fea2646970667358221220717d0b2ca355b994a649575bfa6380c51aba77ef9248ffc63133707b734cfec464736f6c634300060c0033"; - - public static final String FUNC_AVERAGEAMOUNT = "averageAmount"; - - public static final String FUNC_BALANCE = "balance"; - - public static final String FUNC_BASEUNIT = "baseUnit"; - - public static final String FUNC_BLOCK_HASH = "block_hash"; - - public static final String FUNC_CREATEADDRESS = "createAddress"; - - public static final String FUNC_DRAW = "draw"; - - public static final String FUNC_ENDBLOCK = "endBlock"; - - public static final String FUNC_GENERATEBLOCKHASH = "generateBlockHash"; - - public static final String FUNC_GETBALANCEOF = "getBalanceOf"; - - public static final String FUNC_GETENDBLOCKHASH = "getEndBlockHash"; - - public static final String FUNC_GETMYGUESSCODES = "getMyGuessCodes"; - - public static final String FUNC_GETPOSTFIX = "getPostfix"; - - public static final String FUNC_GETWINNERADDRESSES = "getWinnerAddresses"; - - public static final String FUNC_GETWINNERCOUNT = "getWinnerCount"; - - public static final String FUNC_GUESSINGCLOSED = "guessingClosed"; - - public static final String FUNC_GUESSINGWITHLAT = "guessingWithLat"; - - public static final String FUNC_GUSSINGERCODES = "gussingerCodes"; - - public static final String FUNC_GUSSINGERLAT = "gussingerLat"; - - public static final String FUNC_INDEXKEY = "indexKey"; - - public static final String FUNC_INDEXOFGUSSINGER = "indexOfgussinger"; - - public static final String FUNC_POSTFIX = "postfix"; - - public static final String FUNC_WINNERADDRESSES = "winnerAddresses"; - - public static final String FUNC_WINNERMAP = "winnerMap"; - - public static final Event CURRENTBALANCE_EVENT = new Event("CurrentBalance", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - public static final Event FUNDTRANSFER_EVENT = new Event("FundTransfer", - Arrays.>asList(new TypeReference
() {}, new TypeReference() {}, new TypeReference() {})); - ; - - protected Guessing(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Guessing(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _endBlock) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_endBlock))); - return deployRemoteCall(Guessing.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _endBlock) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_endBlock))); - return deployRemoteCall(Guessing.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public List getCurrentBalanceEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(CURRENTBALANCE_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - CurrentBalanceEventResponse typedResponse = new CurrentBalanceEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._msgSenderAddress = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._balance = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable currentBalanceEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public CurrentBalanceEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(CURRENTBALANCE_EVENT, log); - CurrentBalanceEventResponse typedResponse = new CurrentBalanceEventResponse(); - typedResponse.log = log; - typedResponse._msgSenderAddress = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._balance = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable currentBalanceEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(CURRENTBALANCE_EVENT)); - return currentBalanceEventObservable(filter); - } - - public List getFundTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(FUNDTRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - FundTransferEventResponse typedResponse = new FundTransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._backer = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._amount = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - typedResponse._isSuccess = (Boolean) eventValues.getNonIndexedValues().get(2).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable fundTransferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public FundTransferEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(FUNDTRANSFER_EVENT, log); - FundTransferEventResponse typedResponse = new FundTransferEventResponse(); - typedResponse.log = log; - typedResponse._backer = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._amount = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - typedResponse._isSuccess = (Boolean) eventValues.getNonIndexedValues().get(2).getValue(); - return typedResponse; - } - }); - } - - public Observable fundTransferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(FUNDTRANSFER_EVENT)); - return fundTransferEventObservable(filter); - } - - public RemoteCall averageAmount() { - final Function function = new Function(FUNC_AVERAGEAMOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall balance() { - final Function function = new Function(FUNC_BALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall baseUnit() { - final Function function = new Function(FUNC_BASEUNIT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall block_hash() { - final Function function = new Function(FUNC_BLOCK_HASH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall createAddress() { - final Function function = new Function(FUNC_CREATEADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall draw(byte[] _block_hash) { - final Function function = new Function( - FUNC_DRAW, - Arrays.asList(new Bytes32(_block_hash)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall endBlock() { - final Function function = new Function(FUNC_ENDBLOCK, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall generateBlockHash(BigInteger _blocknumber) { - final Function function = new Function(FUNC_GENERATEBLOCKHASH, - Arrays.asList(new Uint256(_blocknumber)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBalanceOf() { - final Function function = new Function(FUNC_GETBALANCEOF, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getEndBlockHash() { - final Function function = new Function(FUNC_GETENDBLOCKHASH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getMyGuessCodes() { - final Function function = new Function(FUNC_GETMYGUESSCODES, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall getPostfix() { - final Function function = new Function(FUNC_GETPOSTFIX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getWinnerAddresses() { - final Function function = new Function(FUNC_GETWINNERADDRESSES, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall getWinnerCount() { - final Function function = new Function(FUNC_GETWINNERCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall guessingClosed() { - final Function function = new Function(FUNC_GUESSINGCLOSED, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall guessingWithLat(BigInteger vonValue) { - final Function function = new Function( - FUNC_GUESSINGWITHLAT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall gussingerCodes(String param0, BigInteger param1) { - final Function function = new Function(FUNC_GUSSINGERCODES, - Arrays.asList(new Address(param0), - new Uint256(param1)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall gussingerLat(String param0) { - final Function function = new Function(FUNC_GUSSINGERLAT, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall indexKey() { - final Function function = new Function(FUNC_INDEXKEY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall indexOfgussinger(BigInteger param0) { - final Function function = new Function(FUNC_INDEXOFGUSSINGER, - Arrays.asList(new Uint256(param0)), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall postfix() { - final Function function = new Function(FUNC_POSTFIX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall winnerAddresses(BigInteger param0) { - final Function function = new Function(FUNC_WINNERADDRESSES, - Arrays.asList(new Uint256(param0)), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall winnerMap(String param0) { - final Function function = new Function(FUNC_WINNERMAP, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static Guessing load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Guessing(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Guessing load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Guessing(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class CurrentBalanceEventResponse { - public Log log; - - public String _msgSenderAddress; - - public BigInteger _balance; - } - - public static class FundTransferEventResponse { - public Log log; - - public String _backer; - - public BigInteger _amount; - - public Boolean _isSuccess; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/HexLiteralsChangeByte.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/HexLiteralsChangeByte.java deleted file mode 100644 index 8a934cff52..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/HexLiteralsChangeByte.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class HexLiteralsChangeByte extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101c8806100206000396000f3fe6080604052600436106100345760003560e01c80630b7f166514610039578063420343a414610086578063ee495002146100c6575b600080fd5b34801561004557600080fd5b5061004e610113565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b61008e610129565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b3480156100d257600080fd5b506100db610181565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b60008060009054906101000a900460f81b905090565b6000807f6162000000000000000000000000000000000000000000000000000000000000905060f160f81b6000806101000a81548160ff021916908360f81c021790555060008054906101000a900460f81b91505090565b60008054906101000a900460f81b8156fea264697066735822122093472c25bc65e7277bb0ef71b4529a7de1718f4ddd5f5dfbfe8d9581a6768bab64736f6c634300060c0033"; - - public static final String FUNC_B1 = "b1"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_TESTCHANGE = "testChange"; - - protected HexLiteralsChangeByte(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected HexLiteralsChangeByte(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall b1() { - final Function function = new Function(FUNC_B1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall testChange(BigInteger vonValue) { - final Function function = new Function( - FUNC_TESTCHANGE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(HexLiteralsChangeByte.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(HexLiteralsChangeByte.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static HexLiteralsChangeByte load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new HexLiteralsChangeByte(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static HexLiteralsChangeByte load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new HexLiteralsChangeByte(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/IfError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/IfError.java deleted file mode 100644 index 29e02dec2e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/IfError.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class IfError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610132806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806349b9d30f146037578063c77beeb6146055575b600080fd5b603d6073565b60405180821515815260200191505060405180910390f35b605b6098565b60405180821515815260200191505060405180910390f35b600080607e600160bd565b90508060000160009054906101000a900460ff1691505090565b60008060a3600160d6565b90508060000160009054906101000a900460ff1691505090565b6000811560cc576000905060d1565b600090505b919050565b6000811560e5576000905060f7565b8160f1576000905060f6565b600090505b5b91905056fea264697066735822122070dec00e18f0f45c5b0f1fa2f74a0ee58a028127307b5c7b6178c74d521769ff64736f6c634300060c0033"; - - public static final String FUNC_GETIFCONTROLRES = "getIfControlRes"; - - public static final String FUNC_GETIFCONTROLRES1 = "getIfControlRes1"; - - protected IfError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected IfError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getIfControlRes() { - final Function function = new Function(FUNC_GETIFCONTROLRES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getIfControlRes1() { - final Function function = new Function(FUNC_GETIFCONTROLRES1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(IfError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(IfError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static IfError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new IfError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static IfError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new IfError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractAMutipleClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractAMutipleClass.java deleted file mode 100644 index d97f3e996d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractAMutipleClass.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractAMutipleClass extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060c88061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063430fe9c11460375780635fcceceb146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b6059607c565b6040518082815260200191505060405180910390f35b600060776089565b905090565b60006084606f565b905090565b6000600290509056fea2646970667358221220f025fbbd6bfe1d076378c2a821d5a56f6ca4545ff2478f4296147a8a13ca4fdc64736f6c634300060c0033"; - - public static final String FUNC_CALLGETDATEA = "callGetDateA"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractAMutipleClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractAMutipleClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callGetDateA() { - final Function function = new Function(FUNC_CALLGETDATEA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractAMutipleClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractAMutipleClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractAMutipleClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractAMutipleClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractAMutipleClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractAMutipleClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractAParentBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractAParentBase.java deleted file mode 100644 index e6bd420754..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractAParentBase.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractAParentBase extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060fd8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80631416d3471460375780638da5cb5b146069575b600080fd5b603d609b565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b606f60a3565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600033905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff168156fea26469706673582212201dbe11df42d84a176054a0003093a9436dc6722d1e800a12acac5e3be6bbea7264736f6c634300060c0033"; - - public static final String FUNC_GETADDRESSA = "getAddressA"; - - public static final String FUNC_OWNER = "owner"; - - protected InheritContractAParentBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractAParentBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddressA() { - final Function function = new Function(FUNC_GETADDRESSA, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall owner() { - final Function function = new Function(FUNC_OWNER, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractAParentBase.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractAParentBase.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractAParentBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractAParentBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractAParentBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractAParentBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractASub.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractASub.java deleted file mode 100644 index 42edce487f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractASub.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractASub extends Contract { - private static final String BINARY = "608060405260008055348015601357600080fd5b506002806000819055505060888061002c6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063a46cf4b314602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000805490509056fea264697066735822122098f3468dd81dc3b328ffbf9b3354b2c91633f6a5c48053e121b204d65938b8ae64736f6c634300060c0033"; - - public static final String FUNC_GETDATAA = "getDataA"; - - protected InheritContractASub(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractASub(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDataA() { - final Function function = new Function(FUNC_GETDATAA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractASub.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractASub.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractASub load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractASub(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractASub load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractASub(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractBMutipleClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractBMutipleClass.java deleted file mode 100644 index 24b4ecb234..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractBMutipleClass.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractBMutipleClass extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060c88061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063430fe9c114603757806354b39533146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b6059607c565b6040518082815260200191505060405180910390f35b600060776089565b905090565b60006084606f565b905090565b6000600190509056fea264697066735822122003c2edc5e61971cdec1316397d70acc50c57a77ad374a3ca9faf2b628658ef1e64736f6c634300060c0033"; - - public static final String FUNC_CALLGETDATEB = "callGetDateB"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractBMutipleClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractBMutipleClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callGetDateB() { - final Function function = new Function(FUNC_CALLGETDATEB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBMutipleClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBMutipleClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractBMutipleClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBMutipleClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractBMutipleClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBMutipleClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractBParentBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractBParentBase.java deleted file mode 100644 index 7bd6d54939..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractBParentBase.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractBParentBase extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b50609d8061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80636c3364ea14602d575b600080fd5b6033605f565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60003390509056fea2646970667358221220fd2d92df976a9837bda8c7396597a8c265ece7ac98864f1bcecf93a23970ccff64736f6c634300060c0033"; - - public static final String FUNC_GETADDRESSB = "getAddressB"; - - protected InheritContractBParentBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractBParentBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddressB() { - final Function function = new Function(FUNC_GETADDRESSB, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBParentBase.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBParentBase.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractBParentBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBParentBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractBParentBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBParentBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractBSub.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractBSub.java deleted file mode 100644 index fd6e95fbb3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractBSub.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractBSub extends Contract { - private static final String BINARY = "608060405260008055348015601357600080fd5b506003806000819055505060006001905060005481016001819055505060898061003e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80635873f05614602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b600060015490509056fea2646970667358221220391be1cf8eccc242ebd0adca5a4a9cdd91243933b98f2d62a7f46bcab4bcad2164736f6c634300060c0033"; - - public static final String FUNC_GETDATAB = "getDataB"; - - protected InheritContractBSub(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractBSub(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBSub.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBSub.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getDataB() { - final Function function = new Function(FUNC_GETDATAB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static InheritContractBSub load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBSub(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractBSub load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBSub(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractBase.java deleted file mode 100644 index da61ee3770..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractBase.java +++ /dev/null @@ -1,51 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractBase extends Contract { - private static final String BINARY = "608060405260008055348015601357600080fd5b506040516098380380609883398181016040526020811015603357600080fd5b81019080805190602001909291905050508060008190555050603f8060596000396000f3fe6080604052600080fdfea2646970667358221220d610e1bbf67c3cf40869b9a86f7ccc166c194502baf92f2c37bfde3e9830463e64736f6c634300060c0033"; - - protected InheritContractBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger x) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(x))); - return deployRemoteCall(InheritContractBase.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger x) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(x))); - return deployRemoteCall(InheritContractBase.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static InheritContractBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractOverload.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractOverload.java deleted file mode 100644 index 2d9b6405e9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractOverload.java +++ /dev/null @@ -1,88 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractOverload extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101aa806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80635873f056146100515780639450268b1461006f578063a46cf4b3146100c5578063cad0899b146100e3575b600080fd5b61005961012f565b6040518082815260200191505060405180910390f35b6100af6004803603606081101561008557600080fd5b81019080803590602001909291908035906020019092919080359060200190929190505050610144565b6040518082815260200191505060405180910390f35b6100cd610154565b6040518082815260200191505060405180910390f35b610119600480360360408110156100f957600080fd5b810190808035906020019092919080359060200190929190505050610167565b6040518082815260200191505060405180910390f35b600061013f600160026003610144565b905090565b6000818385010190509392505050565b600061016260016002610167565b905090565b600081830190509291505056fea2646970667358221220066f2a56637aabc50c01bf89b3af746fb2cf6ef402beee275d2f1c985bcbfd4964736f6c634300060c0033"; - - public static final String FUNC_GETDATAA = "getDataA"; - - public static final String FUNC_GETDATAB = "getDataB"; - - public static final String FUNC_SUM = "sum"; - - protected InheritContractOverload(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractOverload(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDataA() { - final Function function = new Function(FUNC_GETDATAA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDataB() { - final Function function = new Function(FUNC_GETDATAB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall sum(BigInteger a, BigInteger b, BigInteger c) { - final Function function = new Function(FUNC_SUM, - Arrays.asList(new Uint256(a), - new Uint256(b), - new Uint256(c)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall sum(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUM, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverload.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverload.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractOverload load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverload(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractOverload load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverload(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractOverloadBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractOverloadBase.java deleted file mode 100644 index 6bf30a44fc..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractOverloadBase.java +++ /dev/null @@ -1,108 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractOverloadBase extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101b6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80630b7f1665146100675780630c55699c146100855780635197c7aa146100a3578063a56dfe4a146100c1578063a5843f08146100df578063b7b0422d14610117575b600080fd5b61006f610145565b6040518082815260200191505060405180910390f35b61008d61014f565b6040518082815260200191505060405180910390f35b6100ab610155565b6040518082815260200191505060405180910390f35b6100c961015e565b6040518082815260200191505060405180910390f35b610115600480360360408110156100f557600080fd5b810190808035906020019092919080359060200190929190505050610164565b005b6101436004803603602081101561012d57600080fd5b8101908080359060200190929190505050610176565b005b6000600154905090565b60005481565b60008054905090565b60015481565b81600081905550806001819055505050565b806000819055505056fea2646970667358221220f3c33b73b5696fba14032fb2cd113304af88750ef80e9d25bab884fbf601e92064736f6c634300060c0033"; - - public static final String FUNC_GETX = "getX"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_INIT = "init"; - - public static final String FUNC_X = "x"; - - public static final String FUNC_Y = "y"; - - protected InheritContractOverloadBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractOverloadBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getX() { - final Function function = new Function(FUNC_GETX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall init(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall init(BigInteger a) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall y() { - final Function function = new Function(FUNC_Y, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadBase.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadBase.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractOverloadBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractOverloadBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractOverloadBaseBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractOverloadBaseBase.java deleted file mode 100644 index 3154365329..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractOverloadBaseBase.java +++ /dev/null @@ -1,108 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractOverloadBaseBase extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101b9806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80630b7f1665146100675780630c55699c146100855780635197c7aa146100a3578063a56dfe4a146100c1578063a5843f08146100df578063b7b0422d14610117575b600080fd5b61006f610145565b6040518082815260200191505060405180910390f35b61008d61014f565b6040518082815260200191505060405180910390f35b6100ab610155565b6040518082815260200191505060405180910390f35b6100c961015e565b6040518082815260200191505060405180910390f35b610115600480360360408110156100f557600080fd5b810190808035906020019092919080359060200190929190505050610164565b005b6101436004803603602081101561012d57600080fd5b8101908080359060200190929190505050610176565b005b6000600154905090565b60005481565b60008054905090565b60015481565b80600081905550816001819055505050565b600181016000819055505056fea2646970667358221220b492544f27bc0fdb12aaf56e57c87d396d769f932b702623fe35a6e9e9842b4864736f6c634300060c0033"; - - public static final String FUNC_GETX = "getX"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_INIT = "init"; - - public static final String FUNC_X = "x"; - - public static final String FUNC_Y = "y"; - - protected InheritContractOverloadBaseBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractOverloadBaseBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getX() { - final Function function = new Function(FUNC_GETX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall init(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall init(BigInteger a) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall y() { - final Function function = new Function(FUNC_Y, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadBaseBase.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadBaseBase.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractOverloadBaseBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadBaseBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractOverloadBaseBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadBaseBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractOverloadChild.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractOverloadChild.java deleted file mode 100644 index 02e5ed1bf1..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractOverloadChild.java +++ /dev/null @@ -1,146 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractOverloadChild extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610311806100206000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c8063a56dfe4a11610066578063a56dfe4a14610163578063a5843f0814610181578063b7b0422d146101b9578063cedf673f146101e7578063fa98b8671461021f5761009e565b80630b7f1665146100a35780630c55699c146100c15780631c5e6b98146100df5780635197c7aa1461010d578063560512c61461012b575b600080fd5b6100ab61024d565b6040518082815260200191505060405180910390f35b6100c9610257565b6040518082815260200191505060405180910390f35b61010b600480360360208110156100f557600080fd5b810190808035906020019092919050505061025d565b005b610115610269565b6040518082815260200191505060405180910390f35b6101616004803603604081101561014157600080fd5b810190808035906020019092919080359060200190929190505050610272565b005b61016b610280565b6040518082815260200191505060405180910390f35b6101b76004803603604081101561019757600080fd5b810190808035906020019092919080359060200190929190505050610286565b005b6101e5600480360360208110156101cf57600080fd5b8101908080359060200190929190505050610298565b005b61021d600480360360408110156101fd57600080fd5b8101908080359060200190929190803590602001909291905050506102a2565b005b61024b6004803603602081101561023557600080fd5b81019080803590602001909291905050506102b0565b005b6000600154905090565b60005481565b610266816102bc565b50565b60008054905090565b61027c8282610286565b5050565b60015481565b81600081905550806001819055505050565b8060008190555050565b6102ac82826102c9565b5050565b6102b981610298565b50565b6001810160008190555050565b8060008190555081600181905550505056fea2646970667358221220d5f58de3903ce25df68b53315913a1caefabd3ae4fbbdc102d175b0c351fe6d364736f6c634300060c0033"; - - public static final String FUNC_GETX = "getX"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_INIT = "init"; - - public static final String FUNC_INITBASE = "initBase"; - - public static final String FUNC_INITBASEBASE = "initBaseBase"; - - public static final String FUNC_X = "x"; - - public static final String FUNC_Y = "y"; - - protected InheritContractOverloadChild(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractOverloadChild(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getX() { - final Function function = new Function(FUNC_GETX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall init(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall init(BigInteger a) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initBase(BigInteger c, BigInteger d) { - final Function function = new Function( - FUNC_INITBASE, - Arrays.asList(new Uint256(c), - new Uint256(d)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initBase(BigInteger c) { - final Function function = new Function( - FUNC_INITBASE, - Arrays.asList(new Uint256(c)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initBaseBase(BigInteger c) { - final Function function = new Function( - FUNC_INITBASEBASE, - Arrays.asList(new Uint256(c)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initBaseBase(BigInteger c, BigInteger d) { - final Function function = new Function( - FUNC_INITBASEBASE, - Arrays.asList(new Uint256(c), - new Uint256(d)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall y() { - final Function function = new Function(FUNC_Y, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadChild.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadChild.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractOverloadChild load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadChild(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractOverloadChild load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadChild(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractParentMutipleTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractParentMutipleTest.java deleted file mode 100644 index 7318371e61..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractParentMutipleTest.java +++ /dev/null @@ -1,83 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractParentMutipleTest extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610165806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631416d347146100515780636c3364ea14610085578063853255cc146100b95780638da5cb5b146100c3575b600080fd5b6100596100f7565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61008d6100ff565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100c1610107565b005b6100cb610109565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600033905090565b600033905090565b565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168156fea26469706673582212209540aa67377732e583ac351d3cf9a14da69bd69e3d171af589e69ed8e84d7e8464736f6c634300060c0033"; - - public static final String FUNC_GETADDRESSA = "getAddressA"; - - public static final String FUNC_GETADDRESSB = "getAddressB"; - - public static final String FUNC_OWNER = "owner"; - - public static final String FUNC_SUM = "sum"; - - protected InheritContractParentMutipleTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractParentMutipleTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddressA() { - final Function function = new Function(FUNC_GETADDRESSA, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getAddressB() { - final Function function = new Function(FUNC_GETADDRESSB, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall owner() { - final Function function = new Function(FUNC_OWNER, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public void sum() { - throw new RuntimeException("cannot call constant function with void return type"); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentMutipleTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentMutipleTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractParentMutipleTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentMutipleTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractParentMutipleTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentMutipleTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractParentOneClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractParentOneClass.java deleted file mode 100644 index 5daba40e20..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractParentOneClass.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractParentOneClass extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b5060888061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063430fe9c114602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000600190509056fea264697066735822122010ad26f0dd8d168a3b692525a5d6902366cf42a059554906f3e48bb9d2cf266c64736f6c634300060c0033"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractParentOneClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractParentOneClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentOneClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentOneClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractParentOneClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentOneClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractParentOneClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentOneClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractParentThreeClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractParentThreeClass.java deleted file mode 100644 index 71246bb167..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractParentThreeClass.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractParentThreeClass extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060b78061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063430fe9c1146037578063887c5838146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596078565b6040518082815260200191505060405180910390f35b60006002905090565b6000600390509056fea2646970667358221220b9dbcb256633051b6ac0b4283bec91f6de591d6444b5285fb3be4fb6350eec1564736f6c634300060c0033"; - - public static final String FUNC_GETDATATHREE = "getDataThree"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractParentThreeClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractParentThreeClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDataThree() { - final Function function = new Function(FUNC_GETDATATHREE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentThreeClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentThreeClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractParentThreeClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentThreeClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractParentThreeClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentThreeClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractParentTwoClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractParentTwoClass.java deleted file mode 100644 index 74ebfcf195..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractParentTwoClass.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractParentTwoClass extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b5060888061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063430fe9c114602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000600290509056fea26469706673582212203a80b844a4f28acf70f2bb0053a82d6cb744020598f0b4fa03b75d4e65b3819564736f6c634300060c0033"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractParentTwoClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractParentTwoClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentTwoClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentTwoClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractParentTwoClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentTwoClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractParentTwoClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentTwoClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractSubclass.java deleted file mode 100644 index 13c03df254..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritContractSubclass.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractSubclass extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060e68061001f6000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c8063430fe9c1146041578063825b71d914605d578063887c5838146079575b600080fd5b60476095565b6040518082815260200191505060405180910390f35b6063609e565b6040518082815260200191505060405180910390f35b607f60a7565b6040518082815260200191505060405180910390f35b60006002905090565b60006004905090565b6000600390509056fea264697066735822122098032aa4a6ad9408b6fc009b892072a28b0b497f288e842c0b20145fbd655a8a64736f6c634300060c0033"; - - public static final String FUNC_GETDATATHREE = "getDataThree"; - - public static final String FUNC_GETDATE = "getDate"; - - public static final String FUNC_GETSUBDATA = "getSubData"; - - protected InheritContractSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDataThree() { - final Function function = new Function(FUNC_GETDATATHREE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSubData() { - final Function function = new Function(FUNC_GETSUBDATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceA.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceA.java deleted file mode 100644 index 2811ab6b5a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceA.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceA extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063c298557814602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600c81526020017f496e6865726974616e636541000000000000000000000000000000000000000081525090509056fea26469706673582212203d7a72aefa733ba7e8136a1a04325a25af4702e2381a4b2f6c042bb1c35ac33564736f6c634300060c0033"; - - public static final String FUNC_FOO = "foo"; - - protected InheritanceA(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceA(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall foo() { - final Function function = new Function(FUNC_FOO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceA.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceA.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceA load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceA(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceA load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceA(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceB.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceB.java deleted file mode 100644 index 79d695460a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceB.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceB extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063c298557814602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600c81526020017f496e6865726974616e636542000000000000000000000000000000000000000081525090509056fea26469706673582212203d170e745e400d5f854e778d14fdc53c42484c306cf89b45cb255749a4e559ac64736f6c634300060c0033"; - - public static final String FUNC_FOO = "foo"; - - protected InheritanceB(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceB(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall foo() { - final Function function = new Function(FUNC_FOO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceB.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceB.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceB load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceB(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceB load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceB(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceC.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceC.java deleted file mode 100644 index 27a323661f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceC.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceC extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063c298557814602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600c81526020017f496e6865726974616e636543000000000000000000000000000000000000000081525090509056fea2646970667358221220700e25110766b02c3266f07fbb0386f208e6171aefe3c42a9f2a4fe10096584f64736f6c634300060c0033"; - - public static final String FUNC_FOO = "foo"; - - protected InheritanceC(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceC(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall foo() { - final Function function = new Function(FUNC_FOO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceC.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceC.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceC load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceC(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceC load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceC(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceD.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceD.java deleted file mode 100644 index f6b212797d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceD.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceD extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061012b806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063c298557814602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b606060b360b8565b905090565b60606040518060400160405280600c81526020017f496e6865726974616e636543000000000000000000000000000000000000000081525090509056fea2646970667358221220199ce8264c81569bd106673c25fbbe25155f69361ea0476088f164198ef7b34364736f6c634300060c0033"; - - public static final String FUNC_FOO = "foo"; - - protected InheritanceD(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceD(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall foo() { - final Function function = new Function(FUNC_FOO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceD.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceD.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceD load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceD(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceD load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceD(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceE.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceE.java deleted file mode 100644 index 2df373585c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceE.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceE extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061012b806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063c298557814602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b606060b360b8565b905090565b60606040518060400160405280600c81526020017f496e6865726974616e636542000000000000000000000000000000000000000081525090509056fea2646970667358221220a2de16241c508f0b2b5fe6a9849f038c6de7953a2446b4c9e4d16179a1f2ff0364736f6c634300060c0033"; - - public static final String FUNC_FOO = "foo"; - - protected InheritanceE(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceE(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall foo() { - final Function function = new Function(FUNC_FOO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceE.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceE.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceE load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceE(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceE load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceE(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceF.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceF.java deleted file mode 100644 index 5e24148760..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceF.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceF extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061012b806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063c298557814602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b606060b360b8565b905090565b60606040518060400160405280600c81526020017f496e6865726974616e636542000000000000000000000000000000000000000081525090509056fea2646970667358221220465e6514688e4f25cc502f6ace2ced7322032448505db9482d1cf736f5cadfeb64736f6c634300060c0033"; - - public static final String FUNC_FOO = "foo"; - - protected InheritanceF(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceF(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall foo() { - final Function function = new Function(FUNC_FOO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceF.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceF.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceF load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceF(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceF load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceF(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceModifier.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceModifier.java deleted file mode 100644 index 00169fb29a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InheritanceModifier.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceModifier extends Contract { - private static final String BINARY = "6080604052600a60005534801561001557600080fd5b5060d3806100246000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80632e2619a3146037578063d46300fd146062575b600080fd5b606060048036036020811015604b57600080fd5b8101908080359060200190929190505050607e565b005b60686094565b6040518082815260200191505060405180910390f35b80600054811060905760016000819055505b5050565b6000805490509056fea26469706673582212209eeb513dc31107c5d7d8dfe126337814ac74d0067e6e5d57da4f9b9cef6613ea64736f6c634300060c0033"; - - public static final String FUNC_GETA = "getA"; - - public static final String FUNC_INHERITANCE = "inheritance"; - - protected InheritanceModifier(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceModifier(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getA() { - final Function function = new Function(FUNC_GETA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inheritance(BigInteger c) { - final Function function = new Function( - FUNC_INHERITANCE, - Arrays.asList(new Uint256(c)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceModifier.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceModifier.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceModifier load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceModifier(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceModifier load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceModifier(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InsertSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InsertSort.java deleted file mode 100644 index b447cf864c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InsertSort.java +++ /dev/null @@ -1,86 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InsertSort extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610331806100206000396000f3fe6080604052600436106100295760003560e01c80631df339cf1461002e578063970f17bd146100f0575b600080fd5b6100ee6004803603604081101561004457600080fd5b810190808035906020019064010000000081111561006157600080fd5b82018360208201111561007357600080fd5b8035906020019184602083028401116401000000008311171561009557600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019092919050505061015c565b005b3480156100fc57600080fd5b50610105610239565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561014857808201518184015260208101905061012d565b505050509050019250505060405180910390f35b6000806000600192505b8383101561021b5760008086858151811061017d57fe5b602002602001015190508492505b600183101580156101b157508660018403815181106101a657fe5b602002602001015181125b156101f3578660018403815181106101c557fe5b60200260200101518784815181106101d957fe5b60200260200101818152505082806001900393505061018b565b8087848151811061020057fe5b60200260200101818152505050508280600101935050610166565b8460009080519060200190610231929190610291565b505050505050565b6060600080548060200260200160405190810160405280929190818152602001828054801561028757602002820191906000526020600020905b815481526020019060010190808311610273575b5050505050905090565b8280548282559060005260206000209081019282156102cd579160200282015b828111156102cc5782518255916020019190600101906102b1565b5b5090506102da91906102de565b5090565b5b808211156102f75760008160009055506001016102df565b509056fea2646970667358221220af0ff2992081b07e16d86485e05d9869c59d12c740ca040a73d6f4aaab1a07fb64736f6c634300060c0033"; - - public static final String FUNC_OUPUTARRAYS = "OuputArrays"; - - public static final String FUNC_GET_ARR = "get_arr"; - - protected InsertSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InsertSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall OuputArrays(List arr, BigInteger n, BigInteger vonValue) { - final Function function = new Function( - FUNC_OUPUTARRAYS, - Arrays.asList(new DynamicArray( - Int256.class, - com.alaya.abi.solidity.Utils.typeMap(arr, Int256.class)), - new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_arr() { - final Function function = new Function(FUNC_GET_ARR, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InsertSort.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InsertSort.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InsertSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InsertSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InsertSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InsertSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Instructions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Instructions.java deleted file mode 100644 index 9ccd860682..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Instructions.java +++ /dev/null @@ -1,104 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Instructions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610203806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063048a5fed1461005c578063165c4a161461007a5780633408e470146100c65780635a0db89e146100e4578063eb8ac92114610130575b600080fd5b61006461017c565b6040518082815260200191505060405180910390f35b6100b06004803603604081101561009057600080fd5b810190808035906020019092919080359060200190929190505050610189565b6040518082815260200191505060405180910390f35b6100ce610196565b6040518082815260200191505060405180910390f35b61011a600480360360408110156100fa57600080fd5b8101908080359060200190929190803590602001909291905050506101a3565b6040518082815260200191505060405180910390f35b6101666004803603604081101561014657600080fd5b8101908080359060200190929190803590602001909291905050506101b7565b6040518082815260200191505060405180910390f35b6000804790508091505090565b6000818302905092915050565b6000804690508091505090565b60006101af8383610189565b905092915050565b60006101c5600260036101a3565b90509291505056fea2646970667358221220fec7dd0754fcd3813c7f8e02ef653f4728dd727b6326880bffc70cfa0bff345c64736f6c634300060c0033"; - - public static final String FUNC_GETCHAINID = "getChainId"; - - public static final String FUNC_GETSELFBALANCE = "getSelfBalance"; - - public static final String FUNC_MULTIPLY = "multiply"; - - public static final String FUNC_TEST = "test"; - - public static final String FUNC_TEST_MUL = "test_mul"; - - protected Instructions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Instructions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getChainId() { - final Function function = new Function(FUNC_GETCHAINID, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSelfBalance() { - final Function function = new Function(FUNC_GETSELFBALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall multiply(BigInteger x, BigInteger y) { - final Function function = new Function( - FUNC_MULTIPLY, - Arrays.asList(new Uint256(x), - new Uint256(y)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall test(BigInteger x, BigInteger y) { - final Function function = new Function( - FUNC_TEST, - Arrays.asList(new Uint256(x), - new Uint256(y)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall test_mul(BigInteger x, BigInteger y) { - final Function function = new Function( - FUNC_TEST_MUL, - Arrays.asList(new Uint256(x), - new Uint256(y)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Instructions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Instructions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Instructions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Instructions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Instructions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Instructions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/IntenalCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/IntenalCall.java deleted file mode 100644 index 0428e59af0..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/IntenalCall.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class IntenalCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060d18061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063569c5f6d146037578063de292789146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596086565b6040518082815260200191505060405180910390f35b600080600190506000600290508082019250505090565b600080600390506093606f565b81029150509056fea264697066735822122014e2175660a4a8ae5030cc2efda5e9607590cc9679f3edb7277b5450910d2fad64736f6c634300060c0033"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final String FUNC_GETSUM = "getSum"; - - protected IntenalCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected IntenalCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getResult() { - final Function function = new Function(FUNC_GETRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSum() { - final Function function = new Function(FUNC_GETSUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(IntenalCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(IntenalCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static IntenalCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new IntenalCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static IntenalCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new IntenalCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Inter.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Inter.java deleted file mode 100644 index 1ae80d642c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Inter.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Inter extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610158806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063b8b1feb414610046578063ca77156f14610088578063e2179b8e146100ca575b600080fd5b6100726004803603602081101561005c57600080fd5b81019080803590602001909291905050506100e8565b6040518082815260200191505060405180910390f35b6100b46004803603602081101561009e57600080fd5b81019080803590602001909291905050506100f5565b6040518082815260200191505060405180910390f35b6100d2610102565b6040518082815260200191505060405180910390f35b6000600382019050919050565b6000600282019050919050565b600061011060016002610115565b905090565b600081830190509291505056fea2646970667358221220948d5e12e4131e671e8d71d0ee91d2344c91040fe98f28bd8d4a738edc4bad0b64736f6c634300060c0033"; - - public static final String FUNC_FE = "fe"; - - public static final String FUNC_FPUB = "fpub"; - - public static final String FUNC_G = "g"; - - protected Inter(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Inter(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall fe(BigInteger a) { - final Function function = new Function(FUNC_FE, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall fpub(BigInteger a) { - final Function function = new Function(FUNC_FPUB, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall g() { - final Function function = new Function(FUNC_G, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Inter.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Inter.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Inter load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Inter(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Inter load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Inter(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractEnum.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractEnum.java deleted file mode 100644 index 1638125010..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractEnum.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractEnum extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_GETDEFAULTCHOICE = "getDefaultChoice"; - - protected InterfaceContractEnum(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractEnum(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDefaultChoice() { - final Function function = new Function( - FUNC_GETDEFAULTCHOICE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractEnum.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractEnum.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractEnum load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractEnum(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractEnum load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractEnum(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractEnumTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractEnumTest.java deleted file mode 100644 index f2044fe32f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractEnumTest.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractEnumTest extends Contract { - private static final String BINARY = "60806040526001600060016101000a81548160ff0219169083600281111561002357fe5b021790555034801561003457600080fd5b5061011b806100446000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c806367cb61b6146041578063694ebe4f146067578063843f725814606f575b600080fd5b6047608b565b60405180826002811115605657fe5b815260200191505060405180910390f35b606d60a1565b005b607560c5565b6040518082815260200191505060405180910390f35b60008060009054906101000a900460ff16905090565b60026000806101000a81548160ff0219169083600281111560be57fe5b0217905550565b60008060019054906101000a900460ff16600281111560e057fe5b90509056fea264697066735822122024afd9e088c41da1b6822a0ad3bee60a0778bfe58975d24d288c927bb8e0b9eb64736f6c634300060c0033"; - - public static final String FUNC_GETCHOICE = "getChoice"; - - public static final String FUNC_GETDEFAULTCHOICE = "getDefaultChoice"; - - public static final String FUNC_SETLARGE = "setLarge"; - - protected InterfaceContractEnumTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractEnumTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getChoice() { - final Function function = new Function(FUNC_GETCHOICE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDefaultChoice() { - final Function function = new Function( - FUNC_GETDEFAULTCHOICE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setLarge() { - final Function function = new Function( - FUNC_SETLARGE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractEnumTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractEnumTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractEnumTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractEnumTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractEnumTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractEnumTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractInheritMultipleTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractInheritMultipleTest.java deleted file mode 100644 index 3d91b9d319..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractInheritMultipleTest.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractInheritMultipleTest extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610119806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806399ecedf6146037578063cad0899b146080575b600080fd5b606a60048036036040811015604b57600080fd5b81019080803590602001909291908035906020019092919050505060c9565b6040518082815260200191505060405180910390f35b60b360048036036040811015609457600080fd5b81019080803590602001909291908035906020019092919050505060d6565b6040518082815260200191505060405180910390f35b6000818303905092915050565b600081830190509291505056fea26469706673582212207bebec92b0eee00dfa56716115706cd94447a2cda3d47fb2fc9dc42053504f5e64736f6c634300060c0033"; - - public static final String FUNC_REDUCE = "reduce"; - - public static final String FUNC_SUM = "sum"; - - protected InterfaceContractInheritMultipleTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractInheritMultipleTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall reduce(BigInteger c, BigInteger d) { - final Function function = new Function(FUNC_REDUCE, - Arrays.asList(new Uint256(c), - new Uint256(d)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall sum(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUM, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritMultipleTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritMultipleTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractInheritMultipleTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritMultipleTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractInheritMultipleTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritMultipleTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractInheritOne.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractInheritOne.java deleted file mode 100644 index 8ae0b2f9a4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractInheritOne.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractInheritOne extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_SUM = "sum"; - - protected InterfaceContractInheritOne(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractInheritOne(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sum(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUM, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritOne.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritOne.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractInheritOne load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritOne(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractInheritOne load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritOne(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractInheritTwo.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractInheritTwo.java deleted file mode 100644 index 15e599faa0..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractInheritTwo.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractInheritTwo extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_REDUCE = "reduce"; - - protected InterfaceContractInheritTwo(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractInheritTwo(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall reduce(BigInteger c, BigInteger d) { - final Function function = new Function(FUNC_REDUCE, - Arrays.asList(new Uint256(c), - new Uint256(d)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritTwo.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritTwo.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractInheritTwo load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritTwo(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractInheritTwo load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritTwo(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractParent.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractParent.java deleted file mode 100644 index 958751f97f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractParent.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractParent extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_SUMEXTERNAL = "sumExternal"; - - protected InterfaceContractParent(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractParent(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sumExternal(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUMEXTERNAL, - Arrays.asList(new Int256(a), - new Int256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractParent.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractParent.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractParent load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractParent(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractParent load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractParent(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractParentTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractParentTest.java deleted file mode 100644 index 402b9acc4e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractParentTest.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractParentTest extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060b98061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063e288b0b514602d575b600080fd5b606060048036036040811015604157600080fd5b8101908080359060200190929190803590602001909291905050506076565b6040518082815260200191505060405180910390f35b600081830190509291505056fea264697066735822122027f5507951b7847b90fc27adb453c6b7982f937602b20c667bcec0cfae97ab4864736f6c634300060c0033"; - - public static final String FUNC_SUMEXTERNAL = "sumExternal"; - - protected InterfaceContractParentTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractParentTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sumExternal(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUMEXTERNAL, - Arrays.asList(new Int256(a), - new Int256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractParentTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractParentTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractParentTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractParentTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractParentTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractParentTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractStruct.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractStruct.java deleted file mode 100644 index fbdb637cd6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractStruct.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractStruct extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_GETDEFAULTBOOKID = "getDefaultBookID"; - - protected InterfaceContractStruct(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractStruct(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDefaultBookID() { - final Function function = new Function(FUNC_GETDEFAULTBOOKID, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractStruct.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractStruct.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractStruct load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractStruct(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractStruct load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractStruct(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractStructTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractStructTest.java deleted file mode 100644 index 757003b928..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceContractStructTest.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractStructTest extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061025d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063079d318b14610046578063d629546c14610064578063e36afde31461006e575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c6100ae565b005b61007661017e565b6040518082815260200191505060405180910390f35b600080600080015414156100a357600090506100ab565b600080015490505b90565b6040518060600160405280600181526020016040518060400160405280600681526020017f506c61744f4e000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600f81526020017f506c61744f4e20446573637269626500000000000000000000000000000000008152508152506000808201518160000155602082015181600101908051906020019061015b92919061018a565b50604082015181600201908051906020019061017892919061018a565b50905050565b60008060000154905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106101cb57805160ff19168380011785556101f9565b828001600101855582156101f9579182015b828111156101f85782518255916020019190600101906101dd565b5b509050610206919061020a565b5090565b5b8082111561022357600081600090555060010161020b565b509056fea264697066735822122015aea1067b47a3c9254602b79dceee704403c6a754cfa35d0f83cb9b232c317b64736f6c634300060c0033"; - - public static final String FUNC_GETBOOKID = "getBookID"; - - public static final String FUNC_GETDEFAULTBOOKID = "getDefaultBookID"; - - public static final String FUNC_SETBOOK = "setBook"; - - protected InterfaceContractStructTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractStructTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBookID() { - final Function function = new Function(FUNC_GETBOOKID, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDefaultBookID() { - final Function function = new Function(FUNC_GETDEFAULTBOOKID, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setBook() { - final Function function = new Function( - FUNC_SETBOOK, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractStructTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractStructTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractStructTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractStructTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractStructTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractStructTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceDeclaraction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceDeclaraction.java deleted file mode 100644 index 6a7d300fbb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceDeclaraction.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceDeclaraction extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_TRANSFER = "transfer"; - - protected InterfaceDeclaraction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceDeclaraction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall transfer(String recipient, BigInteger amount) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(recipient), - new com.alaya.abi.solidity.datatypes.generated.Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceDeclaraction.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceDeclaraction.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceDeclaraction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceDeclaraction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceDeclaraction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceDeclaraction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceEnableStructAndenumImpl.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceEnableStructAndenumImpl.java deleted file mode 100644 index 31c1856d81..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/InterfaceEnableStructAndenumImpl.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceEnableStructAndenumImpl extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060d48061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80636ff6560314602d575b600080fd5b60336053565b60405180826001811115604257fe5b815260200191505060405180910390f35b6000605b6081565b6040518060200160405280600180811115607157fe5b8152509050806000015191505090565b604051806020016040528060006001811115609857fe5b8152509056fea26469706673582212203433d1f512ce879ae513fda8217ef7a32fd32d5a83a325561c475214d825126a64736f6c634300060c0033"; - - public static final String FUNC_GETPRODUCTCONDITION = "getProductCondition"; - - protected InterfaceEnableStructAndenumImpl(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceEnableStructAndenumImpl(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getProductCondition() { - final Function function = new Function(FUNC_GETPRODUCTCONDITION, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceEnableStructAndenumImpl.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceEnableStructAndenumImpl.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceEnableStructAndenumImpl load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceEnableStructAndenumImpl(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceEnableStructAndenumImpl load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceEnableStructAndenumImpl(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LibraryStaticUsing.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LibraryStaticUsing.java deleted file mode 100644 index dbaaaa3b66..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LibraryStaticUsing.java +++ /dev/null @@ -1,115 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LibraryStaticUsing extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061017f806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f207564e14610030575b600080fd5b61005c6004803603602081101561004657600080fd5b8101908080359060200190929190505050610074565b60405180821515815260200191505060405180910390f35b600073__$e3d26c3ad0427d32f5f6f4f6cd7b81024d$__63f360234c607b846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156100ce57600080fd5b505af41580156100e2573d6000803e3d6000fd5b505050506040513d60208110156100f857600080fd5b810190808051906020019092919050505090507f0b3bdb70bcb1393d4319be3261bd6ab95e2ea1665e718029d24cecca39e84ccc8160405180821515815260200191505060405180910390a191905056fea26469706673582212205582066f736196a0a29b35e6a428e6c3dddda0b7be524c9bfd5cda8994c3a73c64736f6c634300060c0033\n" - + "\n" - + "// $e3d26c3ad0427d32f5f6f4f6cd7b81024d$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/9.library/LibraryStaticUsing.sol:BaseStaticLibrary"; - - public static final String FUNC_REGISTER = "register"; - - public static final Event RESULT_EVENT = new Event("Result", - Arrays.>asList(new TypeReference() {})); - ; - - protected LibraryStaticUsing(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LibraryStaticUsing(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getResultEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(RESULT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ResultEventResponse typedResponse = new ResultEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable resultEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ResultEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(RESULT_EVENT, log); - ResultEventResponse typedResponse = new ResultEventResponse(); - typedResponse.log = log; - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable resultEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(RESULT_EVENT)); - return resultEventObservable(filter); - } - - public RemoteCall register(BigInteger value) { - final Function function = new Function( - FUNC_REGISTER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryStaticUsing.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryStaticUsing.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LibraryStaticUsing load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LibraryStaticUsing(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LibraryStaticUsing load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LibraryStaticUsing(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class ResultEventResponse { - public Log log; - - public Boolean result; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LibraryUsingFor.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LibraryUsingFor.java deleted file mode 100644 index 97664a7fec..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LibraryUsingFor.java +++ /dev/null @@ -1,115 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LibraryUsingFor extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610180806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f207564e14610030575b600080fd5b61005c6004803603602081101561004657600080fd5b8101908080359060200190929190505050610074565b60405180821515815260200191505060405180910390f35b60008073__$60a7ddba7234577a3c49cf546d0fd55cab$__637ae1e0589091846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156100cf57600080fd5b505af41580156100e3573d6000803e3d6000fd5b505050506040513d60208110156100f957600080fd5b810190808051906020019092919050505090507f0b3bdb70bcb1393d4319be3261bd6ab95e2ea1665e718029d24cecca39e84ccc8160405180821515815260200191505060405180910390a191905056fea2646970667358221220408bddcadda9bc7f64bc78e341e92cdf08972c11df46f9f9459c8e5f6a3d67fe64736f6c634300060c0033\n" - + "\n" - + "// $60a7ddba7234577a3c49cf546d0fd55cab$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/9.library/LibraryUsingFor.sol:BaseLibrary"; - - public static final String FUNC_REGISTER = "register"; - - public static final Event RESULT_EVENT = new Event("Result", - Arrays.>asList(new TypeReference() {})); - ; - - protected LibraryUsingFor(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LibraryUsingFor(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getResultEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(RESULT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ResultEventResponse typedResponse = new ResultEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable resultEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ResultEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(RESULT_EVENT, log); - ResultEventResponse typedResponse = new ResultEventResponse(); - typedResponse.log = log; - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable resultEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(RESULT_EVENT)); - return resultEventObservable(filter); - } - - public RemoteCall register(BigInteger value) { - final Function function = new Function( - FUNC_REGISTER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryUsingFor.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryUsingFor.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LibraryUsingFor load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LibraryUsingFor(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LibraryUsingFor load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LibraryUsingFor(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class ResultEventResponse { - public Log log; - - public Boolean result; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LibraryUsingForAll.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LibraryUsingForAll.java deleted file mode 100644 index 748d2858b6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LibraryUsingForAll.java +++ /dev/null @@ -1,65 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LibraryUsingForAll extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101ae806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063e81cf24c14610030575b600080fd5b6100666004803603604081101561004657600080fd5b810190808035906020019092919080359060200190929190505050610068565b005b60008073__$cba891d3c43f3779a41a75319d353fbd12$__6324fef5c89091856040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156100c357600080fd5b505af41580156100d7573d6000803e3d6000fd5b505050506040513d60208110156100ed57600080fd5b810190808051906020019092919050505090507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811415610156576000829080600181540180825580915050600190039060005260206000200160009091909190915055610173565b816000828154811061016457fe5b90600052602060002001819055505b50505056fea264697066735822122066001720f2914ffbb4e7fb62dbb4ef803cc3abf224585924706aed44a815207764736f6c634300060c0033\n" - + "\n" - + "// $cba891d3c43f3779a41a75319d353fbd12$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/9.library/LibraryUserForAll.sol:SearchLibrary"; - - public static final String FUNC_REPLACE = "replace"; - - protected LibraryUsingForAll(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LibraryUsingForAll(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall replace(BigInteger _old, BigInteger _new) { - final Function function = new Function( - FUNC_REPLACE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(_old), - new com.alaya.abi.solidity.datatypes.generated.Uint256(_new)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryUsingForAll.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryUsingForAll.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LibraryUsingForAll load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LibraryUsingForAll(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LibraryUsingForAll load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LibraryUsingForAll(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LoopCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LoopCall.java deleted file mode 100644 index 37a40eabfa..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LoopCall.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LoopCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060b98061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80633fde082714602d575b600080fd5b605660048036036020811015604157600080fd5b81019080803590602001909291905050506058565b005b60005b81811015607f5760008081548092919060010191905055508080600101915050605b565b505056fea264697066735822122094477ad1ab5cdb308073da23aed9d9304ef7bb2ee5e9faa702782843a61f807764736f6c634300060c0033"; - - public static final String FUNC_LOOPCALLTEST = "loopCallTest"; - - protected LoopCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LoopCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall loopCallTest(BigInteger n) { - final Function function = new Function( - FUNC_LOOPCALLTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LoopCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LoopCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LoopCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LoopCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LoopCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LoopCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LoopCallOfView.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LoopCallOfView.java deleted file mode 100644 index 43e6c90c76..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/LoopCallOfView.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LoopCallOfView extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060cd8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80633fde082714602d575b600080fd5b605660048036036020811015604157600080fd5b8101908080359060200190929190505050606c565b6040518082815260200191505060405180910390f35b60008060005b83811015608d57818060010192505080806001019150506072565b508091505091905056fea26469706673582212200130375154086b90d68d8791284536870481be28d4d9fe05a3f4673a8967214764736f6c634300060c0033"; - - public static final String FUNC_LOOPCALLTEST = "loopCallTest"; - - protected LoopCallOfView(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LoopCallOfView(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall loopCallTest(BigInteger n) { - final Function function = new Function(FUNC_LOOPCALLTEST, - Arrays.asList(new Uint256(n)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LoopCallOfView.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LoopCallOfView.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LoopCallOfView load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LoopCallOfView(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LoopCallOfView load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LoopCallOfView(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MappingArrayDataTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MappingArrayDataTypeContract.java deleted file mode 100644 index b277b0109c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MappingArrayDataTypeContract.java +++ /dev/null @@ -1,90 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple4; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MappingArrayDataTypeContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610343806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80631175c0491461003b5780638e7f79f6146100a0575b600080fd5b61009e600480360360a081101561005157600080fd5b81019080803560ff169060200190929190803560ff169060200190929190803560ff169060200190929190803560ff169060200190929190803560ff169060200190929190505050610106565b005b6100cf600480360360208110156100b657600080fd5b81019080803560ff16906020019092919050505061012b565b604051808560ff1681526020018460ff1681526020018360ff1681526020018260ff16815260200194505050505060405180910390f35b610113600086868661020f565b5050610122600286848461020f565b50505050505050565b6000806000806000806002811061013e57fe5b0160008660ff1660ff16815260200190815260200160002060009054906101000a900460ff16600060016002811061017257fe5b0160008760ff1660ff16815260200190815260200160002060009054906101000a900460ff1660026000600281106101a657fe5b0160008860ff1660ff16815260200190815260200160002060009054906101000a900460ff1660026001600281106101da57fe5b0160008960ff1660ff16815260200190815260200160002060009054906101000a900460ff1693509350935093509193509193565b60008060008660006002811061022157fe5b0160008760ff1660ff16815260200190815260200160002060009054906101000a900460ff16905060008760016002811061025857fe5b0160008860ff1660ff16815260200190815260200160002060009054906101000a900460ff169050858860006002811061028e57fe5b0160008960ff1660ff16815260200190815260200160002060006101000a81548160ff021916908360ff16021790555084886001600281106102cc57fe5b0160008960ff1660ff16815260200190815260200160002060006101000a81548160ff021916908360ff16021790555081819350935050509450949250505056fea2646970667358221220505c1f5f749e80c95d4590678f2187aadaff728a6f85d26d18822ca76378720264736f6c634300060c0033"; - - public static final String FUNC_GETVALUEBYKEY = "getValueByKey"; - - public static final String FUNC_SET = "set"; - - protected MappingArrayDataTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MappingArrayDataTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> getValueByKey(BigInteger key) { - final Function function = new Function(FUNC_GETVALUEBYKEY, - Arrays.asList(new Uint8(key)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple4 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple4( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (BigInteger) results.get(3).getValue()); - } - }); - } - - public RemoteCall set(BigInteger key, BigInteger value_a1, BigInteger value_a2, BigInteger value_b1, BigInteger value_b2) { - final Function function = new Function( - FUNC_SET, - Arrays.asList(new Uint8(key), - new Uint8(value_a1), - new Uint8(value_a2), - new Uint8(value_b1), - new Uint8(value_b2)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MappingArrayDataTypeContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MappingArrayDataTypeContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static MappingArrayDataTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MappingArrayDataTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MappingArrayDataTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MappingArrayDataTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MappingDataTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MappingDataTypeContract.java deleted file mode 100644 index b1e882f5fe..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MappingDataTypeContract.java +++ /dev/null @@ -1,183 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple3; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MappingDataTypeContract extends Contract { - private static final String BINARY = "608060405260405180606001604052806040518060400160405280600481526020017f4c7563790000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600481526020017f456c6c610000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600481526020017f4c696c7900000000000000000000000000000000000000000000000000000000815250815250600d906003620000d0929190620000e5565b50348015620000de57600080fd5b5062000266565b82805482825590600052602060002090810192821562000139579160200282015b8281111562000138578251829080519060200190620001279291906200014c565b509160200191906001019062000106565b5b509050620001489190620001d3565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200018f57805160ff1916838001178555620001c0565b82800160010185558215620001c0579182015b82811115620001bf578251825591602001919060010190620001a2565b5b509050620001cf9190620001fb565b5090565b5b80821115620001f75760008181620001ed91906200021a565b50600101620001d4565b5090565b5b8082111562000216576000816000905550600101620001fc565b5090565b50805460018160011615610100020316600290046000825580601f1062000242575062000263565b601f016020900490600052602060002090810190620002629190620001fb565b5b50565b610c3080620002766000396000f3fe608060405234801561001057600080fd5b50600436106100b35760003560e01c806387c9644b1161007157806387c9644b14610455578063aad3951214610499578063bbf722a214610562578063bebf70f3146105ba578063f480ae4914610611578063fdf8b008146106e0576100b3565b806252f6ee146100b8578063566ab1fd146101875780636257a397146101d45780636b8ff5741461029157806376fc59c31461033857806382bc11491461039e575b600080fd5b610171600480360360208110156100ce57600080fd5b81019080803590602001906401000000008111156100eb57600080fd5b8201836020820111156100fd57600080fd5b8035906020019184600183028401116401000000008311171561011f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506106ea565b6040518082815260200191505060405180910390f35b6101b36004803603602081101561019d57600080fd5b8101908080359060200190929190505050610718565b604051808260028111156101c357fe5b815260200191505060405180910390f35b610216600480360360208110156101ea57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610738565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561025657808201518184015260208101905061023b565b50505050905090810190601f1680156102835780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102bd600480360360208110156102a757600080fd5b81019080803590602001909291905050506107e8565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102fd5780820151818401526020810190506102e2565b50505050905090810190601f16801561032a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6103666004803603602081101561034e57600080fd5b8101908080351515906020019092919050505061089d565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6103ca600480360360208110156103b457600080fd5b81019080803590602001909291905050506108bd565b60405180848152602001806020018315158152602001828103825284818151815260200191508051906020019080838360005b838110156104185780820151818401526020810190506103fd565b50505050905090810190601f1680156104455780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b6104816004803603602081101561046b57600080fd5b810190808035906020019092919050505061098c565b60405180821515815260200191505060405180910390f35b6104e7600480360360208110156104af57600080fd5b8101908080357effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690602001909291905050506109ac565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561052757808201518184015260208101905061050c565b50505050905090810190601f1680156105545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61058e6004803603602081101561057857600080fd5b8101908080359060200190929190505050610a5c565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6105f0600480360360408110156105d057600080fd5b810190808035906020019092919080359060200190929190505050610a8f565b6040518082600281111561060057fe5b815260200191505060405180910390f35b6106ca6004803603602081101561062757600080fd5b810190808035906020019064010000000081111561064457600080fd5b82018360208201111561065657600080fd5b8035906020019184600183028401116401000000008311171561067857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610abe565b6040518082815260200191505060405180910390f35b6106e8610aec565b005b6006818051602081018201805184825260208301602085012081835280955050505050506000915090505481565b600b6020528060005260406000206000915054906101000a900460ff1681565b60086020528060005260406000206000915090508054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107e05780601f106107b5576101008083540402835291602001916107e0565b820191906000526020600020905b8154815290600101906020018083116107c357829003601f168201915b505050505081565b6060600c60008381526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108915780601f1061086657610100808354040283529160200191610891565b820191906000526020600020905b81548152906001019060200180831161087457829003601f168201915b50505050509050919050565b60046020528060005260406000206000915054906101000a900460f81b81565b600a602052806000526040600020600091509050806000015490806001018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561096f5780601f106109445761010080835404028352916020019161096f565b820191906000526020600020905b81548152906001019060200180831161095257829003601f168201915b5050505050908060020160009054906101000a900460ff16905083565b60036020528060005260406000206000915054906101000a900460ff1681565b60056020528060005260406000206000915090508054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a545780601f10610a2957610100808354040283529160200191610a54565b820191906000526020600020905b815481529060010190602001808311610a3757829003601f168201915b505050505081565b60026020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60096020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b6007818051602081018201805184825260208301602085012081835280955050505050506000915090505481565b60005b600d80549050811015610b5357600d8181548110610b0957fe5b90600052602060002001600c60008381526020019081526020016000209080546001816001161561010002031660029004610b45929190610b56565b508080600101915050610aef565b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610b8f5780548555610bcc565b82800160010185558215610bcc57600052602060002091601f016020900482015b82811115610bcb578254825591600101919060010190610bb0565b5b509050610bd99190610bdd565b5090565b5b80821115610bf6576000816000905550600101610bde565b509056fea264697066735822122027c13c41c2679383c2610d8bfb9c6c37733734d5a3f61751e0cecb7fb98d1c1164736f6c634300060c0033"; - - public static final String FUNC_SIZEENUMMAP = "SizeEnumMap"; - - public static final String FUNC_ADDNAME = "addName"; - - public static final String FUNC_ADDRESSMAP = "addressMap"; - - public static final String FUNC_BOOLMAP = "boolMap"; - - public static final String FUNC_BYTEMAP = "byteMap"; - - public static final String FUNC_BYTESMAP = "bytesMap"; - - public static final String FUNC_GETNAME = "getName"; - - public static final String FUNC_INTMAP = "intMap"; - - public static final String FUNC_PEOPLEMAP = "peopleMap"; - - public static final String FUNC_SIZEMAP = "sizeMap"; - - public static final String FUNC_STRINGMAP = "stringMap"; - - public static final String FUNC_UINTMAP = "uintMap"; - - protected MappingDataTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MappingDataTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall SizeEnumMap(BigInteger param0) { - final Function function = new Function(FUNC_SIZEENUMMAP, - Arrays.asList(new Int256(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall addName() { - final Function function = new Function( - FUNC_ADDNAME, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall addressMap(BigInteger param0) { - final Function function = new Function(FUNC_ADDRESSMAP, - Arrays.asList(new Uint256(param0)), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall boolMap(BigInteger param0) { - final Function function = new Function(FUNC_BOOLMAP, - Arrays.asList(new Int256(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall byteMap(Boolean param0) { - final Function function = new Function(FUNC_BYTEMAP, - Arrays.asList(new Bool(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall bytesMap(String param0) { - final Function function = new Function(FUNC_BYTESMAP, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getName(BigInteger index) { - final Function function = new Function(FUNC_GETNAME, - Arrays.asList(new Uint256(index)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall intMap(String param0) { - final Function function = new Function(FUNC_INTMAP, - Arrays.asList(new Utf8String(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> peopleMap(BigInteger param0) { - final Function function = new Function(FUNC_PEOPLEMAP, - Arrays.asList(new Int256(param0)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue(), - (Boolean) results.get(2).getValue()); - } - }); - } - - public RemoteCall sizeMap(BigInteger param0, BigInteger param1) { - final Function function = new Function(FUNC_SIZEMAP, - Arrays.asList(new Int256(param0), - new Int256(param1)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall stringMap(byte[] param0) { - final Function function = new Function(FUNC_STRINGMAP, - Arrays.asList(new Bytes1(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall uintMap(byte[] param0) { - final Function function = new Function(FUNC_UINTMAP, - Arrays.asList(new DynamicBytes(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MappingDataTypeContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MappingDataTypeContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static MappingDataTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MappingDataTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MappingDataTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MappingDataTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MathAndCryptographicFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MathAndCryptographicFunctions.java deleted file mode 100644 index 85b861efdc..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MathAndCryptographicFunctions.java +++ /dev/null @@ -1,110 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MathAndCryptographicFunctions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061035a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806301c740441461006757806301f56b78146100855780635b4aa3ee146100fe578063aa4e87441461011c578063cc98f30e1461013a578063f9b4169114610158575b600080fd5b61006f610176565b6040518082815260200191505060405180910390f35b6100d26004803603608081101561009b57600080fd5b8101908080359060200190929190803560ff16906020019092919080359060200190929190803590602001909291905050506101f0565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610106610265565b6040518082815260200191505060405180910390f35b61012461028d565b6040518082815260200191505060405180910390f35b6101426102a2565b6040518082815260200191505060405180910390f35b61016061030f565b6040518082815260200191505060405180910390f35b6000600260405180807f41424300000000000000000000000000000000000000000000000000000000008152506003019050602060405180830381855afa1580156101c5573d6000803e3d6000fd5b5050506040513d60208110156101da57600080fd5b8101908080519060200190929190505050905090565b60008060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa15801561024d573d6000803e3d6000fd5b50505060206040510351905080915050949350505050565b60007fe1629b9dda060bb30c7908346f6af189c16773fa148d3366701fbaa35d54f3c8905090565b600060038061029857fe5b6003600209905090565b6000600360405180807f41424300000000000000000000000000000000000000000000000000000000008152506003019050602060405180830381855afa1580156102f1573d6000803e3d6000fd5b5050506040515160601b6bffffffffffffffffffffffff1916905090565b600060038061031a57fe5b600360020890509056fea2646970667358221220c023e2fbb744a73e63c5202cfb4730340b233eb905c3eb94af5f9132b574cae864736f6c634300060c0033"; - - public static final String FUNC_CALLADDMOD = "callAddMod"; - - public static final String FUNC_CALLECRECOVER = "callEcrecover"; - - public static final String FUNC_CALLKECCAK256 = "callKeccak256"; - - public static final String FUNC_CALLMULMOD = "callMulMod"; - - public static final String FUNC_CALLRIPEMD160 = "callRipemd160"; - - public static final String FUNC_CALLSHA256 = "callSha256"; - - protected MathAndCryptographicFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MathAndCryptographicFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callAddMod() { - final Function function = new Function(FUNC_CALLADDMOD, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall callEcrecover(byte[] hash, BigInteger v, byte[] r, byte[] s) { - final Function function = new Function(FUNC_CALLECRECOVER, - Arrays.asList(new Bytes32(hash), - new com.alaya.abi.solidity.datatypes.generated.Uint8(v), - new Bytes32(r), - new Bytes32(s)), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall callKeccak256() { - final Function function = new Function(FUNC_CALLKECCAK256, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall callMulMod() { - final Function function = new Function(FUNC_CALLMULMOD, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall callRipemd160() { - final Function function = new Function(FUNC_CALLRIPEMD160, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall callSha256() { - final Function function = new Function(FUNC_CALLSHA256, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MathAndCryptographicFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MathAndCryptographicFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static MathAndCryptographicFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MathAndCryptographicFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MathAndCryptographicFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MathAndCryptographicFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Modifiers.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Modifiers.java deleted file mode 100644 index 1f738085ad..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Modifiers.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Modifiers extends Contract { - private static final String BINARY = "6080604052600a600055348015601457600080fd5b5060c2806100236000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806366e41cb71460375780636b59084d146053575b600080fd5b603d605b565b6040518082815260200191505060405180910390f35b60596064565b005b60008054905090565b6000546000819050600080549050600c600081905550506000549050600b600081905550505056fea264697066735822122086b2f746be41c1c6bf2e1e6a4f788fddd2fb2319764dfe57990cc27fe8aed62564736f6c634300060c0033"; - - public static final String FUNC_TEST1 = "test1"; - - public static final String FUNC_TEST2 = "test2"; - - protected Modifiers(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Modifiers(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall test1() { - final Function function = new Function( - FUNC_TEST1, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall test2() { - final Function function = new Function(FUNC_TEST2, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Modifiers.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Modifiers.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Modifiers load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Modifiers(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Modifiers load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Modifiers(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MsgSenderBelongToPayable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MsgSenderBelongToPayable.java deleted file mode 100644 index 74db58d8a4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MsgSenderBelongToPayable.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MsgSenderBelongToPayable extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060e68061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063485a584b1460375780639e455939146069575b600080fd5b603d609b565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b606f60a3565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600033905090565b600080339050309150509056fea2646970667358221220af2f485297320242fe832df13fe6661f3860c4e250ff46536b71430219d52abf64736f6c634300060c0033"; - - public static final String FUNC_GETCONTRACTADDR = "getContractAddr"; - - public static final String FUNC_GETMSGSENDERADDR = "getMsgSenderAddr"; - - protected MsgSenderBelongToPayable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MsgSenderBelongToPayable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getContractAddr() { - final Function function = new Function(FUNC_GETCONTRACTADDR, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getMsgSenderAddr() { - final Function function = new Function(FUNC_GETMSGSENDERADDR, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MsgSenderBelongToPayable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MsgSenderBelongToPayable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static MsgSenderBelongToPayable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MsgSenderBelongToPayable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MsgSenderBelongToPayable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MsgSenderBelongToPayable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MulicPointBaseConstructorWay1.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MulicPointBaseConstructorWay1.java deleted file mode 100644 index a62c710d6e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MulicPointBaseConstructorWay1.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MulicPointBaseConstructorWay1 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50600a806000819055505061010a8061002a6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80630dbe671f14603757806382ab890a146053575b600080fd5b603d60af565b6040518082815260200191505060405180910390f35b607c60048036036020811015606757600080fd5b810190808035906020019092919050505060b5565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b60005481565b600080826000808282540192505081905550336000549150915091509156fea26469706673582212206ebb4283d4739c70cb8f3e73dbbdf711ad90d085dad2de07ea0ca06513049ae964736f6c634300060c0033"; - - public static final String FUNC_A = "a"; - - public static final String FUNC_UPDATE = "update"; - - protected MulicPointBaseConstructorWay1(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MulicPointBaseConstructorWay1(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MulicPointBaseConstructorWay1.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MulicPointBaseConstructorWay1.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static MulicPointBaseConstructorWay1 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MulicPointBaseConstructorWay1(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MulicPointBaseConstructorWay1 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MulicPointBaseConstructorWay1(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MulicPointBaseConstructorWay2.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MulicPointBaseConstructorWay2.java deleted file mode 100644 index 3d4da36257..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/MulicPointBaseConstructorWay2.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MulicPointBaseConstructorWay2 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516101a43803806101a48339818101604052602081101561003357600080fd5b81019080805190602001909291905050508081028060008190555050506101458061005f6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630dbe671f1461004657806382ab890a14610064578063d46300fd146100c3575b600080fd5b61004e6100e1565b6040518082815260200191505060405180910390f35b6100906004803603602081101561007a57600080fd5b81019080803590602001909291905050506100e7565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6100cb610106565b6040518082815260200191505060405180910390f35b60005481565b6000808260008082825401925050819055503360005491509150915091565b6000805490509056fea26469706673582212204b596ca12fd78a2b0105b3c3c23ac84e3a260d9294590719c5191d0ed164277264736f6c634300060c0033"; - - public static final String FUNC_A = "a"; - - public static final String FUNC_GETA = "getA"; - - public static final String FUNC_UPDATE = "update"; - - protected MulicPointBaseConstructorWay2(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MulicPointBaseConstructorWay2(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _y) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_y))); - return deployRemoteCall(MulicPointBaseConstructorWay2.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _y) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_y))); - return deployRemoteCall(MulicPointBaseConstructorWay2.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getA() { - final Function function = new Function(FUNC_GETA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static MulicPointBaseConstructorWay2 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MulicPointBaseConstructorWay2(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MulicPointBaseConstructorWay2 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MulicPointBaseConstructorWay2(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/NamedCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/NamedCall.java deleted file mode 100644 index 03ce526e93..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/NamedCall.java +++ /dev/null @@ -1,91 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class NamedCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610105806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063d4b7eac3146037578063e9e3370e146087575b600080fd5b606a60048036036040811015604b57600080fd5b81019080803590602001909291908035906020019092919050505060aa565b604051808381526020018281526020019250505060405180910390f35b608d60ba565b604051808381526020018281526020019250505060405180910390f35b6000808284915091509250929050565b60008060c76001600260aa565b91509150909156fea26469706673582212203dda9cea0623ff00d657e88b7a3f6d8248e20ae070372d1ababd93a0061c129664736f6c634300060c0033"; - - public static final String FUNC_EXCHANGE = "exchange"; - - public static final String FUNC_NAMECALL = "namecall"; - - protected NamedCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected NamedCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> exchange(BigInteger key, BigInteger value) { - final Function function = new Function(FUNC_EXCHANGE, - Arrays.asList(new Uint256(key), - new Uint256(value)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> namecall() { - final Function function = new Function(FUNC_NAMECALL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(NamedCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(NamedCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static NamedCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new NamedCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static NamedCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new NamedCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/NewTargetCreateContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/NewTargetCreateContract.java deleted file mode 100644 index 85beb41e42..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/NewTargetCreateContract.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class NewTargetCreateContract extends Contract { - private static final String BINARY = "60806040526040516101053803806101058339818101604052602081101561002657600080fd5b810190808051906020019092919050505080600081905550346001819055505060b1806100546000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80630c55699c146037578063aa8c217c146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596075565b6040518082815260200191505060405180910390f35b60005481565b6001548156fea2646970667358221220b40a0b9c741a4a10973e3b657b600ce2dfd7ee7a464d2a346c62cb95dab8106864736f6c634300060c0033"; - - public static final String FUNC_AMOUNT = "amount"; - - public static final String FUNC_X = "x"; - - protected NewTargetCreateContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected NewTargetCreateContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, BigInteger _a) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_a))); - return deployRemoteCall(NewTargetCreateContract.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, BigInteger _a) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_a))); - return deployRemoteCall(NewTargetCreateContract.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall amount() { - final Function function = new Function(FUNC_AMOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static NewTargetCreateContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new NewTargetCreateContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static NewTargetCreateContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new NewTargetCreateContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/NoParenthesesConstructor.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/NoParenthesesConstructor.java deleted file mode 100644 index 44f83af3fa..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/NoParenthesesConstructor.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class NoParenthesesConstructor extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516100e23803806100e28339818101604052602081101561003357600080fd5b8101908080519060200190929190505050600180600081905550505060858061005d6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80630dbe671f14602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000548156fea26469706673582212209ed5787f6858a007644d545fb20150281be2fcf64192fcd1f8d55288ba19346f64736f6c634300060c0033"; - - public static final String FUNC_A = "a"; - - protected NoParenthesesConstructor(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected NoParenthesesConstructor(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _b) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_b))); - return deployRemoteCall(NoParenthesesConstructor.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _b) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_b))); - return deployRemoteCall(NoParenthesesConstructor.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static NoParenthesesConstructor load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new NoParenthesesConstructor(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static NoParenthesesConstructor load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new NoParenthesesConstructor(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Overload.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Overload.java deleted file mode 100644 index 8e40559e12..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Overload.java +++ /dev/null @@ -1,100 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Overload extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101b2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806313d1aa2e1461005c57806315d55b28146100a8578063587dcf18146100c6578063b3de648b146100e4578063e2179b8e14610126575b600080fd5b6100926004803603604081101561007257600080fd5b810190808035906020019092919080359060200190929190505050610130565b6040518082815260200191505060405180910390f35b6100b061013d565b6040518082815260200191505060405180910390f35b6100ce610143565b6040518082815260200191505060405180910390f35b610110600480360360208110156100fa57600080fd5b810190808035906020019092919050505061014c565b6040518082815260200191505060405180910390f35b61012e610156565b005b6000818301905092915050565b60005481565b60008054905090565b6000819050919050565b600061016460026003610130565b9050610170600261014c565b9050806000819055505056fea2646970667358221220ec42d060b0e8b301d629cc85f09412cea6361da8c7eabc61510bed53bf4a245064736f6c634300060c0033"; - - public static final String FUNC_F = "f"; - - public static final String FUNC_G = "g"; - - public static final String FUNC_GETRE = "getRe"; - - public static final String FUNC_RE = "re"; - - protected Overload(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Overload(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_F, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall f(BigInteger a) { - final Function function = new Function( - FUNC_F, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall g() { - final Function function = new Function( - FUNC_G, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getRe() { - final Function function = new Function(FUNC_GETRE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall re() { - final Function function = new Function(FUNC_RE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Overload.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Overload.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Overload load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Overload(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Overload load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Overload(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Payable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Payable.java deleted file mode 100644 index 558af4d8e8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Payable.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Payable extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610178806100206000396000f3fe6080604052600436106100295760003560e01c80631a6952301461002e578063c84aae1714610072575b600080fd5b6100706004803603602081101561004457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506100d7565b005b34801561007e57600080fd5b506100c16004803603602081101561009557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610121565b6040518082815260200191505060405180910390f35b8073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561011d573d6000803e3d6000fd5b5050565b60008173ffffffffffffffffffffffffffffffffffffffff1631905091905056fea26469706673582212201e2df9796749e9bca2dffbd07019aff021920261e5ff95537a1e0a94f25d405164736f6c634300060c0033"; - - public static final String FUNC_GETBALANCES = "getBalances"; - - public static final String FUNC_TRANSFER = "transfer"; - - protected Payable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Payable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBalances(String addr) { - final Function function = new Function(FUNC_GETBALANCES, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transfer(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Payable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Payable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Payable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Payable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Payable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Payable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PersonPublic.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PersonPublic.java deleted file mode 100644 index b76d5493fc..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PersonPublic.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PersonPublic extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50601d60018190555060aa6002819055506040518060400160405280600981526020017f4c75636b7920646f6700000000000000000000000000000000000000000000008152506003908051906020019061006c9291906100be565b506040518060400160405280600a81526020017f323031312d30312d303100000000000000000000000000000000000000000000815250600090805190602001906100b89291906100be565b5061015b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100ff57805160ff191683800117855561012d565b8280016001018555821561012d579182015b8281111561012c578251825591602001919060010190610111565b5b50905061013a919061013e565b5090565b5b8082111561015757600081600090555060010161013f565b5090565b6101888061016a6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063262a9dff14610046578063beb0067e14610064578063f377bd5b146100e7575b600080fd5b61004e610105565b6040518082815260200191505060405180910390f35b61006c61010f565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100ac578082015181840152602081019050610091565b50505050905090810190601f1680156100d95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100ef61014c565b6040518082815260200191505060405180910390f35b6000600154905090565b60606040518060400160405280600a81526020017f323032302d31322d313500000000000000000000000000000000000000000000815250905090565b6001548156fea2646970667358221220cdf5461c2624391166f817bb172b956c521136873166cf907eb08c6a45a1d5f664736f6c634300060c0033"; - - public static final String FUNC__AGE = "_age"; - - public static final String FUNC_AGE = "age"; - - public static final String FUNC_BIRTHDAY = "birthDay"; - - protected PersonPublic(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PersonPublic(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall _age() { - final Function function = new Function(FUNC__AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall age() { - final Function function = new Function(FUNC_AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall birthDay() { - final Function function = new Function(FUNC_BIRTHDAY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PersonPublic.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PersonPublic.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PersonPublic load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PersonPublic(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PersonPublic load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PersonPublic(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PlatONToken.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PlatONToken.java deleted file mode 100644 index 48c66a0906..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PlatONToken.java +++ /dev/null @@ -1,108 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PlatONToken extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061018a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063249bb3731461006757806375efc40d14610085578063c2412676146100a3578063c951fdf6146100ad578063d87698ae146100cb578063eecb9ce9146100e9575b600080fd5b61006f610107565b6040518082815260200191505060405180910390f35b61008d610119565b6040518082815260200191505060405180910390f35b6100ab610128565b005b6100b5610132565b6040518082815260200191505060405180910390f35b6100d361013d565b6040518082815260200191505060405180910390f35b6100f1610143565b6040518082815260200191505060405180910390f35b6000670de0b6b3a76400008101905090565b600064e8d4a510008101905090565b6001600081905550565b600060018101905090565b60005481565b600066038d7ea4c68000810190509056fea264697066735822122055f05628e18440164ee3028a08cfffe72233ec1e1534e7bd45179aaecc32870e64736f6c634300060c0033"; - - public static final String FUNC_PFINNEY = "Pfinney"; - - public static final String FUNC_PLAT = "Plat"; - - public static final String FUNC_PSZABO = "Pszabo"; - - public static final String FUNC_PVON = "Pvon"; - - public static final String FUNC_TOKEN = "Token"; - - public static final String FUNC_PLATONTOKEN = "platontoken"; - - protected PlatONToken(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PlatONToken(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall Pfinney() { - final Function function = new Function(FUNC_PFINNEY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall Plat() { - final Function function = new Function(FUNC_PLAT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall Pszabo() { - final Function function = new Function(FUNC_PSZABO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall Pvon() { - final Function function = new Function(FUNC_PVON, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall Token() { - final Function function = new Function( - FUNC_TOKEN, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platontoken() { - final Function function = new Function(FUNC_PLATONTOKEN, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatONToken.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatONToken.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PlatONToken load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PlatONToken(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PlatONToken load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PlatONToken(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PlatonInner.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PlatonInner.java deleted file mode 100644 index e2d45b38ef..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PlatonInner.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PlatonInner extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506103a1806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063eb51cc911461003b578063f40ae8d9146100be575b600080fd5b610043610199565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610197600480360360408110156100d457600080fd5b81019080803590602001906401000000008111156100f157600080fd5b82018360208201111561010357600080fd5b8035906020019184600183028401116401000000008311171561012557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061023b565b005b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102315780601f1061020657610100808354040283529160200191610231565b820191906000526020600020905b81548152906001019060200180831161021457829003601f168201915b5050505050905090565b6000825190506000606060008084602088016000885af161025857fe5b3d91508167ffffffffffffffff8111801561027257600080fd5b506040519080825280601f01601f1916602001820160405280156102a55781602001600182028036833780820191505090505b5090503d6000602083013e80600090805190602001906102c69291906102ce565b505050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061030f57805160ff191683800117855561033d565b8280016001018555821561033d579182015b8281111561033c578251825591602001919060010190610321565b5b50905061034a919061034e565b5090565b5b8082111561036757600081600090555060010161034f565b509056fea26469706673582212202dbf5e56e3154bad4cdd2bd344620da1e38843198578b823eb7ef814ba9dbc4b64736f6c634300060c0033"; - - public static final String FUNC_ASSEMBLYCALLPPOS = "assemblyCallppos"; - - public static final String FUNC_GETRETURNVALUE = "getReturnValue"; - - protected PlatonInner(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PlatonInner(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall assemblyCallppos(byte[] data, String addr) { - final Function function = new Function( - FUNC_ASSEMBLYCALLPPOS, - Arrays.asList(new DynamicBytes(data), - new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getReturnValue() { - final Function function = new Function(FUNC_GETRETURNVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatonInner.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatonInner.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PlatonInner load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PlatonInner(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PlatonInner load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PlatonInner(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PlatonUnit.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PlatonUnit.java deleted file mode 100644 index ef441ecdc5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PlatonUnit.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PlatonUnit extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060fc8061001f6000396000f3fe60806040526004361060295760003560e01c806312065fe014604d578063b69ef8a814607557603f565b36603f57603760005434609d565b600081905550005b348015604a57600080fd5b50005b348015605857600080fd5b50605f60b8565b6040518082815260200191505060405180910390f35b348015608057600080fd5b50608760c0565b6040518082815260200191505060405180910390f35b60008082840190508381101560ae57fe5b8091505092915050565b600047905090565b6000548156fea26469706673582212203f34334c5311bd3f0d0f72765ce01522c727825d61a663bbe1723484a796c15264736f6c634300060c0033"; - - public static final String FUNC_BALANCE = "balance"; - - public static final String FUNC_GETBALANCE = "getBalance"; - - protected PlatonUnit(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PlatonUnit(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall balance() { - final Function function = new Function(FUNC_BALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBalance() { - final Function function = new Function(FUNC_GETBALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatonUnit.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatonUnit.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PlatonUnit load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PlatonUnit(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PlatonUnit load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PlatonUnit(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PramaAndReturns.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PramaAndReturns.java deleted file mode 100644 index 2aa6f8c747..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/PramaAndReturns.java +++ /dev/null @@ -1,153 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.StaticArray3; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PramaAndReturns extends Contract { - private static final String BINARY = "60806040526040518060400160405280600d81526020017f576861742773207570206d616e000000000000000000000000000000000000008152506000908051906020019061004f929190610062565b5034801561005c57600080fd5b506100ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100a357805160ff19168380011785556100d1565b828001600101855582156100d1579182015b828111156100d05782518255916020019190600101906100b5565b5b5090506100de91906100e2565b5090565b5b808211156100fb5760008160009055506001016100e3565b5090565b6105788061010e6000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806386b714e21161005b57806386b714e2146102905780639e2eea06146102ae578063e93314ab146102fa578063f8adff321461031857610088565b80630965e1451461008d5780631aa72bf81461012e57806354d410c8146101b15780637f0ffe3114610258575b600080fd5b6100f0600480360360608110156100a357600080fd5b8101908080606001906003806020026040519081016040528092919082600360200280828437600081840152601f19601f820116905080830192505050505050919291929050505061035a565b6040518082600360200280838360005b8381101561011b578082015181840152602081019050610100565b5050505090500191505060405180910390f35b610136610382565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561017657808201518184015260208101905061015b565b50505050905090810190601f1680156101a35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101b9610424565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b838110156102005780820151818401526020810190506101e5565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610242578082015181840152602081019050610227565b5050505090500194505050505060405180910390f35b61028e6004803603604081101561026e57600080fd5b8101908080359060200190929190803590602001909291905050506104f0565b005b6102986104fb565b6040518082815260200191505060405180910390f35b6102e4600480360360408110156102c457600080fd5b810190808035906020019092919080359060200190929190505050610501565b6040518082815260200191505060405180910390f35b61030261050c565b6040518082815260200191505060405180910390f35b6103446004803603602081101561032e57600080fd5b8101908080359060200190929190505050610516565b6040518082815260200191505060405180910390f35b610362610520565b60038260026003811061037157fe5b602002018181525050819050919050565b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561041a5780601f106103ef5761010080835404028352916020019161041a565b820191906000526020600020905b8154815290600101906020018083116103fd57829003601f168201915b5050505050905090565b6060806060600367ffffffffffffffff8111801561044157600080fd5b506040519080825280602002602001820160405280156104705781602001602082028036833780820191505090505b50905060018160008151811061048257fe5b60200260200101818152505060028160018151811061049d57fe5b6020026020010181815250506003816002815181106104b857fe5b6020026020010181815250506060819050600a826000815181106104d857fe5b60200260200101818152505081819350935050509091565b816001819055505050565b60015481565b600082905092915050565b6000600154905090565b6000819050919050565b604051806060016040528060039060208202803683378082019150509050509056fea2646970667358221220a5b150bc7902a2e0df3a8567e0b349f317a310c937f90ec872e3772909e9266364736f6c634300060c0033"; - - public static final String FUNC_INPUTPARAM = "InputParam"; - - public static final String FUNC_IUPUTARRAY = "IuputArray"; - - public static final String FUNC_NOOUTPUT = "NoOutput"; - - public static final String FUNC_OMITPARAM = "OmitParam"; - - public static final String FUNC_OUPUTARRAYS = "OuputArrays"; - - public static final String FUNC_OUPUTSTRING = "OuputString"; - - public static final String FUNC_GETS = "getS"; - - public static final String FUNC_S = "s"; - - protected PramaAndReturns(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PramaAndReturns(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall InputParam(BigInteger a) { - final Function function = new Function(FUNC_INPUTPARAM, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall IuputArray(List y) { - final Function function = new Function(FUNC_IUPUTARRAY, - Arrays.asList(new StaticArray3( - Uint256.class, - com.alaya.abi.solidity.Utils.typeMap(y, Uint256.class))), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall NoOutput(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_NOOUTPUT, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall OmitParam(BigInteger y, BigInteger param1) { - final Function function = new Function(FUNC_OMITPARAM, - Arrays.asList(new Uint256(y), - new Uint256(param1)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall, List>> OuputArrays() { - final Function function = new Function(FUNC_OUPUTARRAYS, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {}, new TypeReference>() {})); - return new RemoteCall, List>>( - new Callable, List>>() { - @Override - public Tuple2, List> call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2, List>( - convertToNative((List) results.get(0).getValue()), - convertToNative((List) results.get(1).getValue())); - } - }); - } - - public RemoteCall OuputString() { - final Function function = new Function(FUNC_OUPUTSTRING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getS() { - final Function function = new Function(FUNC_GETS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall s() { - final Function function = new Function(FUNC_S, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PramaAndReturns.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PramaAndReturns.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PramaAndReturns load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PramaAndReturns(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PramaAndReturns load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PramaAndReturns(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Precompiled.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Precompiled.java deleted file mode 100644 index f8d0cc9e74..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Precompiled.java +++ /dev/null @@ -1,207 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.StaticArray2; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Precompiled extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610efd806100206000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c8063af13657c1161008c578063c3e6b01811610066578063c3e6b018146104be578063caa2603214610514578063dd0678f114610648578063ec8b466a14610717576100cf565b8063af13657c14610349578063b2acd50914610367578063be31054014610436576100cf565b806301f56b78146100d457806341be3d521461014d5780636f29e2d7146101935780637e59b08a146101b1578063897bf040146102345780638af606d41461027a575b600080fd5b610121600480360360808110156100ea57600080fd5b8101908080359060200190929190803560ff1690602001909291908035906020019092919080359060200190929190505050610795565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610155610805565b6040518082600260200280838360005b83811015610180578082015181840152602081019050610165565b5050505090500191505060405180910390f35b61019b61084f565b6040518082815260200191505060405180910390f35b6101b9610859565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101f95780820151818401526020810190506101de565b50505050905090810190601f1680156102265780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61023c6108fb565b6040518082600260200280838360005b8381101561026757808201518184015260208101905061024c565b5050505090500191505060405180910390f35b6103336004803603602081101561029057600080fd5b81019080803590602001906401000000008111156102ad57600080fd5b8201836020820111156102bf57600080fd5b803590602001918460018302840111640100000000831117156102e157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610946565b6040518082815260200191505060405180910390f35b6103516109e0565b6040518082815260200191505060405180910390f35b6104206004803603602081101561037d57600080fd5b810190808035906020019064010000000081111561039a57600080fd5b8201836020820111156103ac57600080fd5b803590602001918460018302840111640100000000831117156103ce57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506109ea565b6040518082815260200191505060405180910390f35b6104806004803603608081101561044c57600080fd5b8101908080359060200190929190803590602001909291908035906020019092919080359060200190929190505050610a40565b6040518082600260200280838360005b838110156104ab578082015181840152602081019050610490565b5050505090500191505060405180910390f35b6104fe600480360360608110156104d457600080fd5b81019080803590602001909291908035906020019092919080359060200190929190505050610ae8565b6040518082815260200191505060405180910390f35b6105cd6004803603602081101561052a57600080fd5b810190808035906020019064010000000081111561054757600080fd5b82018360208201111561055957600080fd5b8035906020019184600183028401116401000000008311171561057b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610b44565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561060d5780820151818401526020810190506105f2565b50505050905090810190601f16801561063a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6107016004803603602081101561065e57600080fd5b810190808035906020019064010000000081111561067b57600080fd5b82018360208201111561068d57600080fd5b803590602001918460018302840111640100000000831117156106af57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610bce565b6040518082815260200191505060405180910390f35b6107576004803603606081101561072d57600080fd5b81019080803590602001909291908035906020019092919080359060200190929190505050610c75565b6040518082600260200280838360005b83811015610782578082015181840152602081019050610767565b5050505090500191505060405180910390f35b600060018585858560405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156107f1573d6000803e3d6000fd5b505050602060405103519050949350505050565b61080d610d05565b60028080602002604051908101604052809291908260028015610845576020028201915b815481526020019060010190808311610831575b5050505050905090565b6000600154905090565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108f15780601f106108c6576101008083540402835291602001916108f1565b820191906000526020600020905b8154815290600101906020018083116108d457829003601f168201915b5050505050905090565b610903610d27565b600460028060200260405190810160405280929190826002801561093c576020028201915b815481526020019060010190808311610928575b5050505050905090565b60006003826040518082805190602001908083835b6020831061097e578051825260208201915060208101905060208303925061095b565b6001836020036101000a038019825116818451168082178552505050505050905001915050602060405180830381855afa1580156109c0573d6000803e3d6000fd5b5050506040515160601b6bffffffffffffffffffffffff19169050919050565b6000600654905090565b60008082519050600060c082816109fd57fe5b0614610a0857600080fd5b6040516020818360208701600060085af18060008114610a2b5782519450610a30565b600080fd5b5050508160068190555050919050565b610a48610d05565b610a50610d49565b8581600060048110610a5e57fe5b6020020181815250508481600160048110610a7557fe5b6020020181815250508381600260048110610a8c57fe5b6020020181815250508281600360048110610aa357fe5b602002018181525050604082608083600060065af18060008114610ac657610acb565b600080fd5b5050816002906002610ade929190610d6b565b5050949350505050565b600060405160208152602080820152602060408201528460608201528360808201528260a082015260208160c083600060055af18060008114610b2e5782519350610b33565b600080fd5b505050806001819055509392505050565b606080825167ffffffffffffffff81118015610b5f57600080fd5b506040519080825280601f01601f191660200182016040528015610b925781602001600182028036833780820191505090505b509050825180602083018260208701600060045af1610bad57fe5b508060009080519060200190610bc4929190610dab565b5080915050919050565b60006002826040518082805190602001908083835b60208310610c065780518252602082019150602081019050602083039250610be3565b6001836020036101000a038019825116818451168082178552505050505050905001915050602060405180830381855afa158015610c48573d6000803e3d6000fd5b5050506040513d6020811015610c5d57600080fd5b81019080805190602001909291905050509050919050565b610c7d610d27565b610c85610e2b565b8481600060038110610c9357fe5b6020020181815250508381600160038110610caa57fe5b6020020181815250508281600260038110610cc157fe5b602002018181525050604082606083600060075af18060008114610ce457610ce9565b600080fd5b5050816004906002610cfc929190610e4d565b50509392505050565b6040518060400160405280600290602082028036833780820191505090505090565b6040518060400160405280600290602082028036833780820191505090505090565b6040518060800160405280600490602082028036833780820191505090505090565b8260028101928215610d9a579160200282015b82811115610d99578251825591602001919060010190610d7e565b5b509050610da79190610e8d565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610dec57805160ff1916838001178555610e1a565b82800160010185558215610e1a579182015b82811115610e19578251825591602001919060010190610dfe565b5b509050610e279190610e8d565b5090565b6040518060600160405280600390602082028036833780820191505090505090565b8260028101928215610e7c579160200282015b82811115610e7b578251825591602001919060010190610e60565b5b509050610e899190610eaa565b5090565b5b80821115610ea6576000816000905550600101610e8e565b5090565b5b80821115610ec3576000816000905550600101610eab565b509056fea264697066735822122018c5c0a63c4210c784d37c2334260f3b2d099cdda7f0ffa62fb0c2c0ecb13fdd64736f6c634300060c0033"; - - public static final String FUNC_CALLBIGMODEXP = "callBigModExp"; - - public static final String FUNC_CALLBN256ADD = "callBn256Add"; - - public static final String FUNC_CALLBN256PAIRING = "callBn256Pairing"; - - public static final String FUNC_CALLBN256SCALARMUL = "callBn256ScalarMul"; - - public static final String FUNC_CALLDATACOPY = "callDatacopy"; - - public static final String FUNC_CALLECRECOVER = "callEcrecover"; - - public static final String FUNC_CALLRIPEMD160 = "callRipemd160"; - - public static final String FUNC_CALLSHA256 = "callSha256"; - - public static final String FUNC_GETCALLBIGMODEXPVALUE = "getCallBigModExpValue"; - - public static final String FUNC_GETCALLBN256ADDVALUES = "getCallBn256AddValues"; - - public static final String FUNC_GETCALLBN256PAIRINGVALUE = "getCallBn256PairingValue"; - - public static final String FUNC_GETCALLBN256SCALARMULVALUES = "getCallBn256ScalarMulValues"; - - public static final String FUNC_GETCALLDATACOPYVALUE = "getCallDatacopyValue"; - - protected Precompiled(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Precompiled(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callBigModExp(byte[] base, byte[] exponent, byte[] modulus) { - final Function function = new Function( - FUNC_CALLBIGMODEXP, - Arrays.asList(new Bytes32(base), - new Bytes32(exponent), - new Bytes32(modulus)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callBn256Add(BigInteger ax, BigInteger ay, BigInteger bx, BigInteger by) { - final Function function = new Function( - FUNC_CALLBN256ADD, - Arrays.asList(new Uint256(ax), - new Uint256(ay), - new Uint256(bx), - new Uint256(by)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callBn256Pairing(byte[] input) { - final Function function = new Function( - FUNC_CALLBN256PAIRING, - Arrays.asList(new DynamicBytes(input)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callBn256ScalarMul(byte[] x, byte[] y, byte[] scalar) { - final Function function = new Function( - FUNC_CALLBN256SCALARMUL, - Arrays.asList(new Bytes32(x), - new Bytes32(y), - new Bytes32(scalar)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callDatacopy(byte[] data) { - final Function function = new Function( - FUNC_CALLDATACOPY, - Arrays.asList(new DynamicBytes(data)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callEcrecover(byte[] hash, BigInteger v, byte[] r, byte[] s) { - final Function function = new Function(FUNC_CALLECRECOVER, - Arrays.asList(new Bytes32(hash), - new com.alaya.abi.solidity.datatypes.generated.Uint8(v), - new Bytes32(r), - new Bytes32(s)), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall callRipemd160(byte[] data) { - final Function function = new Function(FUNC_CALLRIPEMD160, - Arrays.asList(new DynamicBytes(data)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall callSha256(byte[] data) { - final Function function = new Function(FUNC_CALLSHA256, - Arrays.asList(new DynamicBytes(data)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getCallBigModExpValue() { - final Function function = new Function(FUNC_GETCALLBIGMODEXPVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getCallBn256AddValues() { - final Function function = new Function(FUNC_GETCALLBN256ADDVALUES, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall getCallBn256PairingValue() { - final Function function = new Function(FUNC_GETCALLBN256PAIRINGVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getCallBn256ScalarMulValues() { - final Function function = new Function(FUNC_GETCALLBN256SCALARMULVALUES, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall getCallDatacopyValue() { - final Function function = new Function(FUNC_GETCALLDATACOPYVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Precompiled.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Precompiled.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Precompiled load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Precompiled(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Precompiled load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Precompiled(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RecursionCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RecursionCall.java deleted file mode 100644 index f030f093f8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RecursionCall.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RecursionCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060fe8061001f6000396000f3fe60806040526004361060265760003560e01c8063191a62d414602b57806357e98139146053575b600080fd5b348015603657600080fd5b50603d6092565b6040518082815260200191505060405180910390f35b607c60048036036020811015606757600080fd5b8101908080359060200190929190505050609b565b6040518082815260200191505060405180910390f35b60008054905090565b600081600054101560be5760008081546001019190508190555060bc82609b565b505b600054905091905056fea2646970667358221220ffbcba8e6195f094a5538fa8a19da4e1599cb971d7465fd44447235a7b642fe364736f6c634300060c0033"; - - public static final String FUNC_GET_TOTAL = "get_total"; - - public static final String FUNC_RECURSIONCALLTEST = "recursionCallTest"; - - protected RecursionCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RecursionCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall get_total() { - final Function function = new Function(FUNC_GET_TOTAL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall recursionCallTest(BigInteger n, BigInteger vonValue) { - final Function function = new Function( - FUNC_RECURSIONCALLTEST, - Arrays.asList(new Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RecursionCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RecursionCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RecursionCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RecursionCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RecursionCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RecursionCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RecursiveStorageMemoryComplex.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RecursiveStorageMemoryComplex.java deleted file mode 100644 index 35eea53078..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RecursiveStorageMemoryComplex.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RecursiveStorageMemoryComplex extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060426000800181905550614200600060010160008154811061002f57fe5b906000526020600020906002020160000181905550614201600060010160018154811061005857fe5b90600052602060002090600202016000018190555060005b60038110156100ce57806242000001600060010160008154811061009057fe5b906000526020600020906002020160010182815481106100ac57fe5b9060005260206000209060020201600001819055508080600101915050610070565b5060005b60048110156101305780624201000160006001016001815481106100f257fe5b9060005260206000209060020201600101828154811061010e57fe5b90600052602060002090600202016000018190555080806001019150506100d2565b50610424806101406000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063a9be8c391461003b578063c04062261461009a575b600080fd5b6100436100f9565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561008657808201518184015260208101905061006b565b505050509050019250505060405180910390f35b6100a2610151565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156100e55780820151818401526020810190506100ca565b505050509050019250505060405180910390f35b6060600280548060200260200160405190810160405280929190818152602001828054801561014757602002820191906000526020600020905b815481526020019060010190808311610133575b5050505050905090565b606061015b6102f5565b60006101669061030f565b9050600061017382610236565b90508067ffffffffffffffff8111801561018c57600080fd5b506040519080825280602002602001820160405280156101bb5781602001602082028036833780820191505090505b50600290805190602001906101d1929190610384565b506101dd826000610283565b50600280548060200260200160405190810160405280929190818152602001828054801561022a57602002820191906000526020600020905b815481526020019060010190808311610216575b50505050509250505090565b60006001905060005b82602001515181101561027d5761026c8360200151828151811061025f57fe5b6020026020010151610236565b82019150808060010191505061023f565b50919050565b600082600001516002838060010194508154811061029d57fe5b906000526020600020018190555060005b8360200151518110156102eb576102dc846020015182815181106102ce57fe5b602002602001015184610283565b925080806001019150506102ae565b5081905092915050565b604051806040016040528060008152602001606081525090565b6040518060400160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020016000905b82821015610379578382906000526020600020906002020161036a9061030f565b81526020019060010190610349565b505050508152505090565b8280548282559060005260206000209081019282156103c0579160200282015b828111156103bf5782518255916020019190600101906103a4565b5b5090506103cd91906103d1565b5090565b5b808211156103ea5760008160009055506001016103d2565b509056fea2646970667358221220dce9dea67644af6661c6357a887a15bf8d502ed1d81b73639af51b74b24580c764736f6c634300060c0033"; - - public static final String FUNC_GETRUNRESULT = "getRunResult"; - - public static final String FUNC_RUN = "run"; - - protected RecursiveStorageMemoryComplex(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RecursiveStorageMemoryComplex(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RecursiveStorageMemoryComplex.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RecursiveStorageMemoryComplex.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getRunResult() { - final Function function = new Function(FUNC_GETRUNRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall run() { - final Function function = new Function( - FUNC_RUN, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RecursiveStorageMemoryComplex load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RecursiveStorageMemoryComplex(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RecursiveStorageMemoryComplex load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RecursiveStorageMemoryComplex(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeArrayComplexContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeArrayComplexContract.java deleted file mode 100644 index ffa49e3d05..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeArrayComplexContract.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeArrayComplexContract extends Contract { - private static final String BINARY = "60806040526040518060400160405280600160ff168152602001600260ff168152506000906002610031929190610044565b5034801561003e57600080fd5b506100b3565b828054828255906000526020600020908101928215610085579160200282015b82811115610084578251829060ff16905591602001919060010190610064565b5b5090506100929190610096565b5090565b5b808211156100af576000816000905550600101610097565b5090565b61017e806100c26000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806310c037da14610030575b600080fd5b6100a76004803603602081101561004657600080fd5b810190808035906020019064010000000081111561006357600080fd5b82018360208201111561007557600080fd5b8035906020019184602083028401116401000000008311171561009757600080fd5b90919293919293905050506100bd565b6040518082815260200191505060405180910390f35b6000806000905060005b8484905082101561013c576000829050600a8111156100e6575061013c565b60008686838181106100f457fe5b9050602002013590506103e881106101135760018401935050506100c7565b80830192506101f4831061012d5782945050505050610142565b838060010194505050506100c7565b80925050505b9291505056fea2646970667358221220aa1b03cba1b81ac9da2dfddc2427c996c2d637bfb210c4baef7763626bd34fb864736f6c634300060c0033"; - - public static final String FUNC_SUMCOMPLEXARRAY = "sumComplexArray"; - - protected ReferenceDataTypeArrayComplexContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeArrayComplexContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sumComplexArray(List array) { - final Function function = new Function(FUNC_SUMCOMPLEXARRAY, - Arrays.asList(new com.alaya.abi.solidity.datatypes.DynamicArray( - Uint256.class, - com.alaya.abi.solidity.Utils.typeMap(array, Uint256.class))), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayComplexContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayComplexContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeArrayComplexContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayComplexContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeArrayComplexContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayComplexContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeArrayContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeArrayContract.java deleted file mode 100644 index 36997b49dd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeArrayContract.java +++ /dev/null @@ -1,123 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeArrayContract extends Contract { - private static final String BINARY = "60806040526040518060a00160405280600160ff168152602001600260ff168152602001600360ff168152602001600460ff168152602001600560ff16815250600090600561004f929190610322565b506040518060c001604052806040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f320000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f330000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f340000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f350000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f360000000000000000000000000000000000000000000000000000000000000081525081525060059060066101cb929190610367565b50600567ffffffffffffffff811180156101e457600080fd5b506040519080825280602002602001820160405280156102135781602001602082028036833780820191505090505b50600690805190602001906102299291906103c7565b506040518060c001604052806040518060400160405280600060ff168152602001600060ff1681525081526020016040518060400160405280600060ff168152602001600160ff1681525081526020016040518060400160405280600060ff168152602001600260ff1681525081526020016040518060400160405280600160ff168152602001600060ff1681525081526020016040518060400160405280600160ff168152602001600160ff1681525081526020016040518060400160405280600160ff168152602001600260ff16815250815250600790600661030f929190610414565b5034801561031c57600080fd5b5061060f565b8260058101928215610356579160200282015b82811115610355578251829060ff16905591602001919060010190610335565b5b509050610363919061046f565b5090565b8280548282559060005260206000209081019282156103b6579160200282015b828111156103b55782518290805190602001906103a592919061048c565b5091602001919060010190610387565b5b5090506103c3919061050c565b5090565b828054828255906000526020600020908101928215610403579160200282015b828111156104025782518255916020019190600101906103e7565b5b509050610410919061046f565b5090565b82805482825590600052602060002090810192821561045e579160200282015b8281111561045d5782518290600261044d929190610530565b5091602001919060010190610434565b5b50905061046b9190610582565b5090565b5b80821115610488576000816000905550600101610470565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106104cd57805160ff19168380011785556104fb565b828001600101855582156104fb579182015b828111156104fa5782518255916020019190600101906104df565b5b509050610508919061046f565b5090565b5b8082111561052c576000818161052391906105a6565b5060010161050d565b5090565b828054828255906000526020600020908101928215610571579160200282015b82811115610570578251829060ff16905591602001919060010190610550565b5b50905061057e919061046f565b5090565b5b808211156105a2576000818161059991906105ee565b50600101610583565b5090565b50805460018160011615610100020316600290046000825580601f106105cc57506105eb565b601f0160209004906000526020600020908101906105ea919061046f565b5b50565b508054600082559060005260206000209081019061060c919061046f565b50565b6103c28061061e6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80630849cc99146100675780630dca60821461008557806354c73338146100bd57806357933804146100c7578063ab35ec6314610182578063c3d1f404146101c4575b600080fd5b61006f6101e9565b6040518082815260200191505060405180910390f35b6100bb6004803603604081101561009b57600080fd5b8101908080359060200190929190803590602001909291905050506101f6565b005b6100c561020d565b005b610180600480360360208110156100dd57600080fd5b81019080803590602001906401000000008111156100fa57600080fd5b82018360208201111561010c57600080fd5b8035906020019184600183028401116401000000008311171561012e57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610243565b005b6101ae6004803603602081101561019857600080fd5b8101908080359060200190929190505050610282565b6040518082815260200191505060405180910390f35b6101cc610299565b604051808381526020018281526020019250505060405180910390f35b6000600580549050905090565b806000836005811061020457fe5b01819055505050565b6064600760018154811061021d57fe5b9060005260206000200160008154811061023357fe5b9060005260206000200181905550565b60058190806001815401808255809150506001900390600052602060002001600090919091909150908051906020019061027e9291906102ef565b5050565b600080826005811061029057fe5b01549050919050565b60008060076001815481106102aa57fe5b906000526020600020016000815481106102c057fe5b906000526020600020015460076000815481106102d957fe5b9060005260206000200180549050915091509091565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061033057805160ff191683800117855561035e565b8280016001018555821561035e579182015b8281111561035d578251825591602001919060010190610342565b5b50905061036b919061036f565b5090565b5b80821115610388576000816000905550600101610370565b509056fea26469706673582212208b37a4b72fb5b5d87fce09e7d992586cb62db015a2c504ca688a75a06322a39764736f6c634300060c0033"; - - public static final String FUNC_GETARRAY = "getArray"; - - public static final String FUNC_GETARRAYLENGTH = "getArrayLength"; - - public static final String FUNC_GETMULTIARRAY = "getMultiArray"; - - public static final String FUNC_SETARRAY = "setArray"; - - public static final String FUNC_SETARRAYPUSH = "setArrayPush"; - - public static final String FUNC_SETMULTIARRAY = "setMultiArray"; - - protected ReferenceDataTypeArrayContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeArrayContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getArray(BigInteger index) { - final Function function = new Function(FUNC_GETARRAY, - Arrays.asList(new Uint256(index)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getArrayLength() { - final Function function = new Function(FUNC_GETARRAYLENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> getMultiArray() { - final Function function = new Function(FUNC_GETMULTIARRAY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall setArray(BigInteger index, BigInteger value) { - final Function function = new Function( - FUNC_SETARRAY, - Arrays.asList(new Uint256(index), - new Uint256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setArrayPush(String x) { - final Function function = new Function( - FUNC_SETARRAYPUSH, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Utf8String(x)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setMultiArray() { - final Function function = new Function( - FUNC_SETMULTIARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeArrayContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeArrayContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeArrayOperatorContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeArrayOperatorContract.java deleted file mode 100644 index be349b5603..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeArrayOperatorContract.java +++ /dev/null @@ -1,186 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tuples.generated.Tuple5; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeArrayOperatorContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506105fe806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806399a1c3691161005b57806399a1c369146101605780639a6e3cb7146101aa578063b9903334146101ee578063fd081ef8146102385761007d565b80631ff0db4014610082578063676cb904146100cc57806386d1171014610116575b600080fd5b61008a610282565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1681526020019250505060405180910390f35b6100d46102b4565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1681526020019250505060405180910390f35b61011e610300565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1681526020019250505060405180910390f35b61016861034c565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1681526020019250505060405180910390f35b6101b261037e565b60405180861515815260200185151581526020018415158152602001831515815260200182151581526020019550505050505060405180910390f35b6101f661056f565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1681526020019250505060405180910390f35b6102406105a1565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1681526020019250505060405180910390f35b6000806000608160f81b90506000608060f81b90506000818316905060008160f81c9050818195509550505050509091565b6000806000608160f81b905060006001827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901b905060008160f81c90508181945094505050509091565b6000806000608160f81b905060006001827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901c905060008160f81c90508181945094505050509091565b6000806000608160f81b90506000608060f81b90506000818318905060008160f81c9050818195509550505050509091565b6000806000806000807f6100000000000000000000000000000000000000000000000000000000000000905060007f620000000000000000000000000000000000000000000000000000000000000090506000606160f81b90506000827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916847effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161090506000837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161190506000837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916867effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161490506000847effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916867effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916141590506000857effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916887effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015905084848484849c509c509c509c509c5050505050505050509091929394565b6000806000608160f81b90506000608060f81b90506000818317905060008160f81c9050818195509550505050509091565b6000806000608160f81b905060008119905060008160f81c9050818194509450505050909156fea2646970667358221220df10e748e13d6594e86daf5a165586b59fcb43a575eca4f8007753f21e96db2664736f6c634300060c0033"; - - public static final String FUNC_ARRAYBITANDOPERATORS = "arrayBitAndOperators"; - - public static final String FUNC_ARRAYBITINVERSEOPERATORS = "arrayBitInverseOperators"; - - public static final String FUNC_ARRAYBITLEFTSHIFTPERATORS = "arrayBitLeftShiftperators"; - - public static final String FUNC_ARRAYBITOROPERATORS = "arrayBitOrOperators"; - - public static final String FUNC_ARRAYBITRIGHTSHIFTPERATORS = "arrayBitRightShiftperators"; - - public static final String FUNC_ARRAYBITXOROPERATORS = "arrayBitXOROperators"; - - public static final String FUNC_ARRAYCOMPARE = "arrayCompare"; - - protected ReferenceDataTypeArrayOperatorContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeArrayOperatorContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> arrayBitAndOperators() { - final Function function = new Function(FUNC_ARRAYBITANDOPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitInverseOperators() { - final Function function = new Function(FUNC_ARRAYBITINVERSEOPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitLeftShiftperators() { - final Function function = new Function(FUNC_ARRAYBITLEFTSHIFTPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitOrOperators() { - final Function function = new Function(FUNC_ARRAYBITOROPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitRightShiftperators() { - final Function function = new Function(FUNC_ARRAYBITRIGHTSHIFTPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitXOROperators() { - final Function function = new Function(FUNC_ARRAYBITXOROPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayCompare() { - final Function function = new Function(FUNC_ARRAYCOMPARE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple5 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple5( - (Boolean) results.get(0).getValue(), - (Boolean) results.get(1).getValue(), - (Boolean) results.get(2).getValue(), - (Boolean) results.get(3).getValue(), - (Boolean) results.get(4).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayOperatorContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayOperatorContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeArrayOperatorContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayOperatorContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeArrayOperatorContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayOperatorContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeStructContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeStructContract.java deleted file mode 100644 index 983de52321..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeStructContract.java +++ /dev/null @@ -1,116 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple4; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeStructContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506102f6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630b1a6855146100465780638e5f3b9c14610091578063cdd9acc1146100dc575b600080fd5b61004e610127565b604051808581526020018473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001821515815260200194505050505060405180910390f35b6100996101a2565b604051808581526020018473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001821515815260200194505050505060405180910390f35b6100e4610211565b604051808581526020018473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001821515815260200194505050505060405180910390f35b600080600080610135610280565b61013d610280565b6040518060800160405280600281526020013373ffffffffffffffffffffffffffffffffffffffff1681526020016019815260200160011515815250905080915081600001518260200151836040015184606001519550955095509550505090919293565b6000806000806101b0610280565b6040518060800160405280600281526020013373ffffffffffffffffffffffffffffffffffffffff16815260200160198152602001600115158152509050806000015181602001518260400151836060015194509450945094505090919293565b60008060008061021f610280565b6040518060800160405280600281526020013373ffffffffffffffffffffffffffffffffffffffff16815260200160198152602001600115158152509050806000015181602001518260400151836060015194509450945094505090919293565b604051806080016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600015158152509056fea2646970667358221220ed2ef0609d89c3d9dadbefd9783593558d61ee5ac12f922a4b3333f16fec7b5464736f6c634300060c0033"; - - public static final String FUNC_INITDATASTRUCTA = "initDataStructA"; - - public static final String FUNC_INITDATASTRUCTB = "initDataStructB"; - - public static final String FUNC_INITDATASTRUCTC = "initDataStructC"; - - protected ReferenceDataTypeStructContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeStructContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> initDataStructA() { - final Function function = new Function(FUNC_INITDATASTRUCTA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference

() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple4 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple4( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (Boolean) results.get(3).getValue()); - } - }); - } - - public RemoteCall> initDataStructB() { - final Function function = new Function(FUNC_INITDATASTRUCTB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference
() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple4 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple4( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (Boolean) results.get(3).getValue()); - } - }); - } - - public RemoteCall> initDataStructC() { - final Function function = new Function(FUNC_INITDATASTRUCTC, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference
() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple4 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple4( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (Boolean) results.get(3).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeStructContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeStructContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeStructDeleteContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeStructDeleteContract.java deleted file mode 100644 index c01b4d1e72..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeStructDeleteContract.java +++ /dev/null @@ -1,97 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeStructDeleteContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506005600081905550600a600160020181905550600180600301600060018152602001908152602001600020819055506002600160030160006002815260200190815260200160002081905550600360016000016000018190555060018060000160010160006001815260200190815260200160002060006101000a81548160ff02191690831515021790555060018060000160010160006002815260200190815260200160002060006101000a81548160ff021916908315150217905550600160008082016000808201600090555050600282016000905550506000805561019e806100fe6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806311977c5c1461005c5780631268893e1461007a5780635ff76c8a1461009857806379e44a38146100b6578063d587919c146100d4575b600080fd5b6100646100f4565b6040518082815260200191505060405180910390f35b6100826100fd565b6040518082815260200191505060405180910390f35b6100a061011c565b6040518082815260200191505060405180910390f35b6100be61012c565b6040518082815260200191505060405180910390f35b6100dc610139565b60405180821515815260200191505060405180910390f35b60008054905090565b6000600160030160006001815260200190815260200160002054905090565b6000600160000160000154905090565b6000600160020154905090565b6000600160000160010160006001815260200190815260200160002060009054906101000a900460ff1690509056fea2646970667358221220d56bc4eea1d43e02e03a90b84c046b468d2957ba2ac4c66becb1c60fdf8eb13764736f6c634300060c0033"; - - public static final String FUNC_GETNESTEDMAPPING = "getNestedMapping"; - - public static final String FUNC_GETNESTEDVALUE = "getNestedValue"; - - public static final String FUNC_GETTODELETEINT = "getToDeleteInt"; - - public static final String FUNC_GETTOPMAPPING = "getTopMapping"; - - public static final String FUNC_GETTOPVALUE = "getTopValue"; - - protected ReferenceDataTypeStructDeleteContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeStructDeleteContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructDeleteContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructDeleteContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getNestedMapping() { - final Function function = new Function(FUNC_GETNESTEDMAPPING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getNestedValue() { - final Function function = new Function(FUNC_GETNESTEDVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getToDeleteInt() { - final Function function = new Function(FUNC_GETTODELETEINT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getTopMapping() { - final Function function = new Function(FUNC_GETTOPMAPPING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getTopValue() { - final Function function = new Function(FUNC_GETTOPVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static ReferenceDataTypeStructDeleteContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructDeleteContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeStructDeleteContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructDeleteContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeStructRecursiveContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeStructRecursiveContract.java deleted file mode 100644 index 517c5843cb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ReferenceDataTypeStructRecursiveContract.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple3; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeStructRecursiveContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610174806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806397b93b1a14610030575b600080fd5b61003861005c565b60405180848152602001838152602001828152602001935050505060405180910390f35b60008060006100696100c4565b6000610074906100d7565b9050806000015151816000015160008151811061008d57fe5b6020026020010151600001515182600001516001815181106100ab57fe5b6020026020010151600001515193509350935050909192565b6040518060200160405280606081525090565b60405180602001604052908160008201805480602002602001604051908101604052809291908181526020016000905b8282101561013357838290600052602060002001610124906100d7565b81526020019060010190610107565b50505050815250509056fea26469706673582212205eaa0b839d2dd28cc0b411e9d6b46b1fa467ac0dab725e1f21db57d6f68e791d64736f6c634300060c0033"; - - public static final String FUNC_GETSTRUCTPERSONLENGTH = "getStructPersonLength"; - - protected ReferenceDataTypeStructRecursiveContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeStructRecursiveContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> getStructPersonLength() { - final Function function = new Function(FUNC_GETSTRUCTPERSONLENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructRecursiveContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructRecursiveContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeStructRecursiveContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructRecursiveContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeStructRecursiveContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructRecursiveContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RequireContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RequireContract.java deleted file mode 100644 index b7259ce96f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RequireContract.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RequireContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060df8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806314fef936146037578063de29278914606c575b600080fd5b606a60048036036040811015604b57600080fd5b8101908080359060200190929190803590602001909291905050506088565b005b607260a0565b6040518082815260200191505060405180910390f35b808211609357600080fd5b8082036000819055505050565b6000805490509056fea2646970667358221220a4fd81673f034508c435354777e344bee23062c09caafdc2db04d70adef6ba8564736f6c634300060c0033"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final String FUNC_TOSENDERAMOUNT = "toSenderAmount"; - - protected RequireContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RequireContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getResult() { - final Function function = new Function(FUNC_GETRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall toSenderAmount(BigInteger frist, BigInteger second) { - final Function function = new Function( - FUNC_TOSENDERAMOUNT, - Arrays.asList(new Uint256(frist), - new Uint256(second)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RequireContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RequireContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RequireContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RequireContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RequireMessageHandle.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RequireMessageHandle.java deleted file mode 100644 index da56d0ca55..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RequireMessageHandle.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RequireMessageHandle extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610106806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063afcd320e14602d575b600080fd5b605660048036036020811015604157600080fd5b81019080803590602001909291905050506058565b005b600a811060cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807fe695b4e59e8be5a4a7e5b08fe6af94e8be83e5bc82e5b8b8000000000000000081525060200191505060405180910390fd5b5056fea2646970667358221220fddd265fec05f267a8df28322696e036e6665ceb3ea8911982e7f0a87f1e847d64736f6c634300060c0033"; - - public static final String FUNC_PARAMEXCEPTION = "paramException"; - - protected RequireMessageHandle(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RequireMessageHandle(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall paramException(BigInteger param) { - final Function function = new Function( - FUNC_PARAMEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireMessageHandle.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireMessageHandle.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RequireMessageHandle load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RequireMessageHandle(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RequireMessageHandle load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RequireMessageHandle(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RevertContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RevertContract.java deleted file mode 100644 index af3c6774c4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RevertContract.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RevertContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610171806100606000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806314fef9361461003b578063de29278914610087575b600080fd5b6100716004803603604081101561005157600080fd5b8101908080359060200190929190803590602001909291905050506100a5565b6040518082815260200191505060405180910390f35b61008f610131565b6040518082815260200191505060405180910390f35b60008183101561011d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f6669727374206c657373207468616e207365636f6e640000000000000000000081525060200191505060405180910390fd5b818303600181905550600154905092915050565b600060015490509056fea2646970667358221220de40a0a7051cf2151a095c3969f3684eed19bb621cb0844b0aee801a40fe15a964736f6c634300060c0033"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final String FUNC_TOSENDERAMOUNT = "toSenderAmount"; - - protected RevertContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RevertContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RevertContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RevertContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getResult() { - final Function function = new Function(FUNC_GETRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall toSenderAmount(BigInteger first, BigInteger second) { - final Function function = new Function( - FUNC_TOSENDERAMOUNT, - Arrays.asList(new Uint256(first), - new Uint256(second)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RevertContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RevertContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RevertContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RevertContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RevertHandle.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RevertHandle.java deleted file mode 100644 index 248e327155..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RevertHandle.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RevertHandle extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610158806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063852da1631461003b578063f76051e714610069575b600080fd5b6100676004803603602081101561005157600080fd5b8101908080359060200190929190505050610097565b005b6100956004803603602081101561007f57600080fd5b8101908080359060200190929190505050610111565b005b600a81111561010e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f636865636b20636174636820657863657074696f6e000000000000000000000081525060200191505060405180910390fd5b50565b600a81111561011f57600080fd5b5056fea264697066735822122027a33394a779ef6503efe9b22d785a37d639036b4cea097366ae1c116ea85e0264736f6c634300060c0033"; - - public static final String FUNC_REVERTCHECK = "revertCheck"; - - public static final String FUNC_REVERTREASONCHECK = "revertReasonCheck"; - - protected RevertHandle(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RevertHandle(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall revertCheck(BigInteger param) { - final Function function = new Function( - FUNC_REVERTCHECK, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall revertReasonCheck(BigInteger param) { - final Function function = new Function( - FUNC_REVERTREASONCHECK, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RevertHandle.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RevertHandle.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RevertHandle load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RevertHandle(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RevertHandle load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RevertHandle(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RuntimeCode.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RuntimeCode.java deleted file mode 100644 index fe76cf06f8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RuntimeCode.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RuntimeCode extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506102f4806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063d489e0041461003b578063f5f5ba72146100be575b600080fd5b610043610141565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100c6610168565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101065780820151818401526020810190506100eb565b50505050905090810190601f1680156101335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6040518060200161015190610193565b6020820181038252601f19601f8201166040525081565b60606040518060200161017a90610193565b6020820181038252601f19601f82011660405250905090565b61011e806101a18339019056fe6080604052348015600f57600080fd5b506004361060285760003560e01c80632096525514602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525090509056fea2646970667358221220b93f7073ea432de596dcffb2d46ce47a585df7d2562922812b227d77df52ff4864736f6c634300060c0033a2646970667358221220b432c429e9d9a0e6474c5223e8230aef5de531df5d351c1ac1e6b969cbde1b5264736f6c634300060c0033"; - - public static final String FUNC_GETCONTRACTNAME = "getContractName"; - - public static final String FUNC_RUNTIMECODEINFO = "runtimeCodeInfo"; - - protected RuntimeCode(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RuntimeCode(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getContractName() { - final Function function = new Function(FUNC_GETCONTRACTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall runtimeCodeInfo() { - final Function function = new Function(FUNC_RUNTIMECODEINFO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RuntimeCode.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RuntimeCode.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RuntimeCode load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RuntimeCode(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RuntimeCode load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RuntimeCode(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RuntimeCodeType.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RuntimeCodeType.java deleted file mode 100644 index 0885555fba..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/RuntimeCodeType.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RuntimeCodeType extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80632096525514602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525090509056fea2646970667358221220b93f7073ea432de596dcffb2d46ce47a585df7d2562922812b227d77df52ff4864736f6c634300060c0033"; - - public static final String FUNC_GETVALUE = "getValue"; - - protected RuntimeCodeType(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RuntimeCodeType(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getValue() { - final Function function = new Function( - FUNC_GETVALUE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RuntimeCodeType.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RuntimeCodeType.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RuntimeCodeType load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RuntimeCodeType(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RuntimeCodeType load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RuntimeCodeType(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SafeMathMock.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SafeMathMock.java deleted file mode 100644 index 11c6a9d425..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SafeMathMock.java +++ /dev/null @@ -1,131 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SafeMathMock extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610709806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a391c15b1161005b578063a391c15b146101bd578063b67d77c514610209578063c8a4ac9c14610255578063f43f523a146102a157610088565b80632b7423ab1461008d5780636d5433e6146100d9578063771602f7146101255780637ae2b5c714610171575b600080fd5b6100c3600480360360408110156100a357600080fd5b8101908080359060200190929190803590602001909291905050506102ed565b6040518082815260200191505060405180910390f35b61010f600480360360408110156100ef57600080fd5b810190808035906020019092919080359060200190929190505050610301565b6040518082815260200191505060405180910390f35b61015b6004803603604081101561013b57600080fd5b810190808035906020019092919080359060200190929190505050610315565b6040518082815260200191505060405180910390f35b6101a76004803603604081101561018757600080fd5b810190808035906020019092919080359060200190929190505050610329565b6040518082815260200191505060405180910390f35b6101f3600480360360408110156101d357600080fd5b81019080803590602001909291908035906020019092919050505061033d565b6040518082815260200191505060405180910390f35b61023f6004803603604081101561021f57600080fd5b810190808035906020019092919080359060200190929190505050610351565b6040518082815260200191505060405180910390f35b61028b6004803603604081101561026b57600080fd5b810190808035906020019092919080359060200190929190505050610365565b6040518082815260200191505060405180910390f35b6102d7600480360360408110156102b757600080fd5b810190808035906020019092919080359060200190929190505050610379565b6040518082815260200191505060405180910390f35b60006102f9838361038d565b905092915050565b600061030d83836103cf565b905092915050565b600061032183836103e9565b905092915050565b60006103358383610471565b905092915050565b6000610349838361048a565b905092915050565b600061035d8383610519565b905092915050565b600061037183836105a2565b905092915050565b60006103858383610628565b905092915050565b6000600280838161039a57fe5b06600285816103a557fe5b0601816103ae57fe5b04600283816103b957fe5b04600285816103c457fe5b040101905092915050565b6000818310156103df57816103e1565b825b905092915050565b600080828401905083811015610467576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60008183106104805781610482565b825b905092915050565b6000808211610501576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b600082848161050c57fe5b0490508091505092915050565b600082821115610591576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b6000808314156105b55760009050610622565b60008284029050828482816105c657fe5b041461061d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806106b36021913960400191505060405180910390fd5b809150505b92915050565b6000808214156106a0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f536166654d6174683a206d6f64756c6f206279207a65726f000000000000000081525060200191505060405180910390fd5b8183816106a957fe5b0690509291505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212201fbb4512ee49a06f5b674b7a7c939c4977904eae89d7a7895dc28a02f2155c9164736f6c634300060c0033"; - - public static final String FUNC_ADD = "add"; - - public static final String FUNC_AVERAGE = "average"; - - public static final String FUNC_DIV = "div"; - - public static final String FUNC_MAX = "max"; - - public static final String FUNC_MIN = "min"; - - public static final String FUNC_MOD = "mod"; - - public static final String FUNC_MUL = "mul"; - - public static final String FUNC_SUB = "sub"; - - protected SafeMathMock(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SafeMathMock(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall add(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_ADD, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall average(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_AVERAGE, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall div(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_DIV, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall max(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_MAX, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall min(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_MIN, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall mod(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_MOD, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall mul(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_MUL, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall sub(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUB, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SafeMathMock.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SafeMathMock.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static SafeMathMock load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SafeMathMock(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SafeMathMock load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SafeMathMock(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Selector.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Selector.java deleted file mode 100644 index 9d5d7964c5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Selector.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes4; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Selector extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060e58061001f6000396000f3fe60806040526004361060265760003560e01c806326121ff014602b578063b8c9d365146072575b600080fd5b348015603657600080fd5b50603d607a565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b607860ad565b005b60008060003073ffffffffffffffffffffffffffffffffffffffff1663b8c9d365915091508181905060e01b9250505090565b56fea26469706673582212205148b39141ea9cf1bdf880d9fc97d1b0d71b8fb43083a619840419c70585d69a64736f6c634300060c0033"; - - public static final String FUNC_F = "f"; - - public static final String FUNC_H = "h"; - - protected Selector(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Selector(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f() { - final Function function = new Function(FUNC_F, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall h(BigInteger vonValue) { - final Function function = new Function( - FUNC_H, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Selector.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Selector.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Selector load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Selector(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Selector load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Selector(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SelfdestructFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SelfdestructFunctions.java deleted file mode 100644 index 0577d5d1cb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SelfdestructFunctions.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SelfdestructFunctions extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b5033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101b5806100656000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80633ae2119b14610046578063a87d942c14610050578063d09de08a1461006e575b600080fd5b61004e610078565b005b61005861010b565b6040518082815260200191505060405180910390f35b610076610114565b005b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561010957600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b565b60008054905090565b6000600590503373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561017c5780600054016000819055505b5056fea264697066735822122042af68fce6aac29f2a4d798c58f98acdbd1491d05be933fbfe3404d957eb306064736f6c634300060c0033"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_INCREMENT = "increment"; - - public static final String FUNC_SELFKILL = "selfKill"; - - protected SelfdestructFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SelfdestructFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SelfdestructFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SelfdestructFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall increment() { - final Function function = new Function( - FUNC_INCREMENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall selfKill() { - final Function function = new Function( - FUNC_SELFKILL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static SelfdestructFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SelfdestructFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SelfdestructFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SelfdestructFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Sha3AndKeccake256.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Sha3AndKeccake256.java deleted file mode 100644 index 5f2d7bf7eb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Sha3AndKeccake256.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Sha3AndKeccake256 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610224806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063598a717b1461003b5780638f9e1a5d14610059575b600080fd5b610043610114565b6040518082815260200191505060405180910390f35b6101126004803603602081101561006f57600080fd5b810190808035906020019064010000000081111561008c57600080fd5b82018360208201111561009e57600080fd5b803590602001918460018302840111640100000000831117156100c057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050919291929050505061011d565b005b60008054905090565b80816040516020018083805190602001908083835b602083106101555780518252602082019150602081019050602083039250610132565b6001836020036101000a03801982511681845116808217855250505050505090500182805190602001908083835b602083106101a65780518252602082019150602081019050602083039250610183565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040528051906020012060001c6000819055505056fea2646970667358221220b9e097bccea5cbddb397cc0bdf757cd0fb998156747a98df112c71b6e30b90e864736f6c634300060c0033"; - - public static final String FUNC_GETKECCAK256VALUE = "getKeccak256Value"; - - public static final String FUNC_KECCAK = "keccak"; - - protected Sha3AndKeccake256(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Sha3AndKeccake256(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getKeccak256Value() { - final Function function = new Function(FUNC_GETKECCAK256VALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall keccak(String sha256value) { - final Function function = new Function( - FUNC_KECCAK, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Utf8String(sha256value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Sha3AndKeccake256.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Sha3AndKeccake256.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Sha3AndKeccake256 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Sha3AndKeccake256(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Sha3AndKeccake256 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Sha3AndKeccake256(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ShadowingInheritedStateVariablesSuper.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ShadowingInheritedStateVariablesSuper.java deleted file mode 100644 index 0624ae2b46..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ShadowingInheritedStateVariablesSuper.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ShadowingInheritedStateVariablesSuper extends Contract { - private static final String BINARY = "60806040526040518060600160405280602e81526020016103a8602e913960009080519060200190610032929190610045565b5034801561003f57600080fd5b506100e2565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061008657805160ff19168380011785556100b4565b828001600101855582156100b4579182015b828111156100b3578251825591602001919060010190610098565b5b5090506100c191906100c5565b5090565b5b808211156100de5760008160009055506001016100c6565b5090565b6102b7806100f16000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806306fdde031461003b57806317d7de7c146100be575b600080fd5b610043610141565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100c66101df565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101065780820151818401526020810190506100eb565b50505050905090810190601f1680156101335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156101d75780601f106101ac576101008083540402835291602001916101d7565b820191906000526020600020905b8154815290600101906020018083116101ba57829003601f168201915b505050505081565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102775780601f1061024c57610100808354040283529160200191610277565b820191906000526020600020905b81548152906001019060200180831161025a57829003601f168201915b505050505090509056fea2646970667358221220de8021c2ef747f08cc0bbca551819550af935d8cd8e861473a81dd249f2e251964736f6c634300060c0033436f6e747261637420536861646f77696e67496e6865726974656453746174655661726961626c65735375706572"; - - public static final String FUNC_GETNAME = "getName"; - - public static final String FUNC_NAME = "name"; - - protected ShadowingInheritedStateVariablesSuper(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ShadowingInheritedStateVariablesSuper(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getName() { - final Function function = new Function(FUNC_GETNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShadowingInheritedStateVariablesSuper.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShadowingInheritedStateVariablesSuper.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ShadowingInheritedStateVariablesSuper load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ShadowingInheritedStateVariablesSuper(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ShadowingInheritedStateVariablesSuper load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ShadowingInheritedStateVariablesSuper(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ShadowingInheritedStateVariablesSuperChild.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ShadowingInheritedStateVariablesSuperChild.java deleted file mode 100644 index 183a81baa8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ShadowingInheritedStateVariablesSuperChild.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ShadowingInheritedStateVariablesSuperChild extends Contract { - private static final String BINARY = "60806040526040518060600160405280602e815260200161040a602e913960009080519060200190610032929190610074565b5034801561003f57600080fd5b506040518060600160405280603381526020016103d7603391396000908051906020019061006e929190610074565b50610111565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100b557805160ff19168380011785556100e3565b828001600101855582156100e3579182015b828111156100e25782518255916020019190600101906100c7565b5b5090506100f091906100f4565b5090565b5b8082111561010d5760008160009055506001016100f5565b5090565b6102b7806101206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806306fdde031461003b57806317d7de7c146100be575b600080fd5b610043610141565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100c66101df565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101065780820151818401526020810190506100eb565b50505050905090810190601f1680156101335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156101d75780601f106101ac576101008083540402835291602001916101d7565b820191906000526020600020905b8154815290600101906020018083116101ba57829003601f168201915b505050505081565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102775780601f1061024c57610100808354040283529160200191610277565b820191906000526020600020905b81548152906001019060200180831161025a57829003601f168201915b505050505090509056fea2646970667358221220b257e0b8ce68afd1a112930f290cd55f2d13b665dac12104723daf03e7160b1e64736f6c634300060c0033436f6e747261637420536861646f77696e67496e6865726974656453746174655661726961626c657353757065724368696c64436f6e747261637420536861646f77696e67496e6865726974656453746174655661726961626c65735375706572"; - - public static final String FUNC_GETNAME = "getName"; - - public static final String FUNC_NAME = "name"; - - protected ShadowingInheritedStateVariablesSuperChild(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ShadowingInheritedStateVariablesSuperChild(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShadowingInheritedStateVariablesSuperChild.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShadowingInheritedStateVariablesSuperChild.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getName() { - final Function function = new Function(FUNC_GETNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static ShadowingInheritedStateVariablesSuperChild load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ShadowingInheritedStateVariablesSuperChild(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ShadowingInheritedStateVariablesSuperChild load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ShadowingInheritedStateVariablesSuperChild(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ShortCircuitError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ShortCircuitError.java deleted file mode 100644 index 953f55d9aa..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/ShortCircuitError.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ShortCircuitError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610134806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806304c09ce91460375780630c204dbc146055575b600080fd5b603d6073565b60405180821515815260200191505060405180910390f35b605b6096565b60405180821515815260200191505060405180910390f35b600080607c60b9565b90508060000160009054906101000a900460ff1691505090565b600080609f60dd565b90508060000160009054906101000a900460ff1691505090565b6000600190508060000160009054906101000a900460ff168060d9575060015b5090565b60008060000160009054906101000a900460ff16801560fa575060005b509056fea2646970667358221220a633e07a453ededf00d48bca657d8421bb35b0bc732ff4245eb9f7a41603c24d64736f6c634300060c0033"; - - public static final String FUNC_GETF = "getF"; - - public static final String FUNC_GETG = "getG"; - - protected ShortCircuitError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ShortCircuitError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getF() { - final Function function = new Function(FUNC_GETF, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getG() { - final Function function = new Function(FUNC_GETG, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShortCircuitError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShortCircuitError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ShortCircuitError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ShortCircuitError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ShortCircuitError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ShortCircuitError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SimpleStorage.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SimpleStorage.java deleted file mode 100644 index a2261ac6d9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SimpleStorage.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SimpleStorage extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060dc8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806309bd5a6014603757806319ff1d21146053575b600080fd5b603d605b565b6040518082815260200191505060405180910390f35b60596067565b005b600060c8430340905090565b600060c8430340604051602001808281526020019150506040516020818303038152906040528051906020012060001c9050600081141560a357fe5b5056fea26469706673582212200747153277596d276d2f66ffb472eda9077fa2c7e61a7432347fe10904b41de364736f6c634300060c0033"; - - public static final String FUNC_HASH = "hash"; - - public static final String FUNC_HELLO = "hello"; - - protected SimpleStorage(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SimpleStorage(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall hash() { - final Function function = new Function(FUNC_HASH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall hello() { - final Function function = new Function( - FUNC_HELLO, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SimpleStorage.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SimpleStorage.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static SimpleStorage load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SimpleStorage(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SimpleStorage load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SimpleStorage(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SpaceComplexity.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SpaceComplexity.java deleted file mode 100644 index d04535a45c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SpaceComplexity.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SpaceComplexity extends Contract { - private static final String BINARY = "60806040526040518060400160405280600681526020017f71637869616f00000000000000000000000000000000000000000000000000008152506000908051906020019061004f929190610062565b5034801561005c57600080fd5b506100ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100a357805160ff19168380011785556100d1565b828001600101855582156100d1579182015b828111156100d05782518255916020019190600101906100b5565b5b5090506100de91906100e2565b5090565b5b808211156100fb5760008160009055506001016100e3565b5090565b6109578061010e6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806306fdde0314610046578063380bc4ad146100c957806365becf9b146100f7575b600080fd5b61004e610125565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561008e578082015181840152602081019050610073565b50505050905090810190601f1680156100bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100f5600480360360208110156100df57600080fd5b81019080803590602001909291905050506101c7565b005b6101236004803603602081101561010d57600080fd5b81019080803590602001909291905050506101ca565b005b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156101bd5780601f10610192576101008083540402835291602001916101bd565b820191906000526020600020905b8154815290600101906020018083116101a057829003601f168201915b5050505050905090565b50565b60005b8181101561020f576000600283816101e157fe5b0614156101f7576101f26000610213565b610202565b610201600061059a565b5b80806001019150506101cd565b5050565b7f510000000000000000000000000000000000000000000000000000000000000081600081546001816001161561010002031660029004811061025257fe5b8154600116156102715790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f43000000000000000000000000000000000000000000000000000000000000008160018154600181600116156101000203166002900481106102e857fe5b8154600116156103075790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f580000000000000000000000000000000000000000000000000000000000000081600281546001816001161561010002031660029004811061037e57fe5b81546001161561039d5790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f490000000000000000000000000000000000000000000000000000000000000081600381546001816001161561010002031660029004811061041457fe5b8154600116156104335790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f41000000000000000000000000000000000000000000000000000000000000008160048154600181600116156101000203166002900481106104aa57fe5b8154600116156104c95790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f4f0000000000000000000000000000000000000000000000000000000000000081600581546001816001161561010002031660029004811061054057fe5b81546001161561055f5790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f01000000000000000000000000000000000000000000000000000000000000008404021790555050565b7f71000000000000000000000000000000000000000000000000000000000000008160008154600181600116156101000203166002900481106105d957fe5b8154600116156105f85790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f630000000000000000000000000000000000000000000000000000000000000081600181546001816001161561010002031660029004811061066f57fe5b81546001161561068e5790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f780000000000000000000000000000000000000000000000000000000000000081600281546001816001161561010002031660029004811061070557fe5b8154600116156107245790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f690000000000000000000000000000000000000000000000000000000000000081600381546001816001161561010002031660029004811061079b57fe5b8154600116156107ba5790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f610000000000000000000000000000000000000000000000000000000000000081600481546001816001161561010002031660029004811061083157fe5b8154600116156108505790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f6f000000000000000000000000000000000000000000000000000000000000008160058154600181600116156101000203166002900481106108c757fe5b8154600116156108e65790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055505056fea2646970667358221220c9428735ac20a324acfc0e5574c7ce7a5ce9f3ce6559d826a9481f7bb493de4b64736f6c634300060c0033"; - - public static final String FUNC_NAME = "name"; - - public static final String FUNC_TESTBIGOBJECTOFSTORAGE = "testBigObjectOfStorage"; - - public static final String FUNC_TESTSTORAGE = "testStorage"; - - protected SpaceComplexity(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SpaceComplexity(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall testBigObjectOfStorage(BigInteger n) { - final Function function = new Function( - FUNC_TESTBIGOBJECTOFSTORAGE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testStorage(BigInteger n) { - final Function function = new Function( - FUNC_TESTSTORAGE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SpaceComplexity.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SpaceComplexity.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static SpaceComplexity load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SpaceComplexity(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SpaceComplexity load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SpaceComplexity(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/StringmappingSupport.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/StringmappingSupport.java deleted file mode 100644 index 2d955d0805..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/StringmappingSupport.java +++ /dev/null @@ -1,92 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class StringmappingSupport extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610820806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80638f39654914610051578063d4d7306b14610112578063e4e50f7814610264578063e78855a814610343575b600080fd5b6100976004803603602081101561006757600080fd5b81019080803576ffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610477565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100d75780820151818401526020810190506100bc565b50505050905090810190601f1680156101045780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102626004803603604081101561012857600080fd5b810190808035906020019064010000000081111561014557600080fd5b82018360208201111561015757600080fd5b8035906020019184600183028401116401000000008311171561017957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803590602001906401000000008111156101dc57600080fd5b8201836020820111156101ee57600080fd5b8035906020019184600183028401116401000000008311171561021057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610560565b005b6103416004803603604081101561027a57600080fd5b81019080803576ffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803590602001906401000000008111156102bb57600080fd5b8201836020820111156102cd57600080fd5b803590602001918460018302840111640100000000831117156102ef57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506105e2565b005b6103fc6004803603602081101561035957600080fd5b810190808035906020019064010000000081111561037657600080fd5b82018360208201111561038857600080fd5b803590602001918460018302840111640100000000831117156103aa57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610642565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561043c578082015181840152602081019050610421565b50505050905090810190601f1680156104695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6060600160008376ffffffffffffffffffffffffffffffffffffffffffffff191676ffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105545780601f1061052957610100808354040283529160200191610554565b820191906000526020600020905b81548152906001019060200180831161053757829003601f168201915b50505050509050919050565b806000836040518082805190602001908083835b602083106105975780518252602082019150602081019050602083039250610574565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902090805190602001906105dd92919061074d565b505050565b80600160008476ffffffffffffffffffffffffffffffffffffffffffffff191676ffffffffffffffffffffffffffffffffffffffffffffff19168152602001908152602001600020908051906020019061063d92919061074d565b505050565b60606000826040518082805190602001908083835b6020831061067a5780518252602082019150602081019050602083039250610657565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107415780601f1061071657610100808354040283529160200191610741565b820191906000526020600020905b81548152906001019060200180831161072457829003601f168201915b50505050509050919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061078e57805160ff19168380011785556107bc565b828001600101855582156107bc579182015b828111156107bb5782518255916020019190600101906107a0565b5b5090506107c991906107cd565b5090565b5b808211156107e65760008160009055506001016107ce565b509056fea2646970667358221220e203f090c681750745c81d278824d4a14aa370bae5726662217946479ee8801b64736f6c634300060c0033"; - - public static final String FUNC_GETBYTE32MAPVALUE = "getByte32mapValue"; - - public static final String FUNC_GETSTRINGMAPVALUE = "getStringmapValue"; - - public static final String FUNC_SETBYTE32MAPVALUE = "setByte32mapValue"; - - public static final String FUNC_SETSTRINGMAPVALUE = "setStringmapValue"; - - protected StringmappingSupport(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected StringmappingSupport(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getByte32mapValue(byte[] _key) { - final Function function = new Function(FUNC_GETBYTE32MAPVALUE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Bytes9(_key)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getStringmapValue(String _key) { - final Function function = new Function(FUNC_GETSTRINGMAPVALUE, - Arrays.asList(new Utf8String(_key)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setByte32mapValue(byte[] _key, String _value) { - final Function function = new Function( - FUNC_SETBYTE32MAPVALUE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Bytes9(_key), - new Utf8String(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setStringmapValue(String _key, String _value) { - final Function function = new Function( - FUNC_SETSTRINGMAPVALUE, - Arrays.asList(new Utf8String(_key), - new Utf8String(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StringmappingSupport.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StringmappingSupport.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static StringmappingSupport load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new StringmappingSupport(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static StringmappingSupport load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new StringmappingSupport(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/StructDataType.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/StructDataType.java deleted file mode 100644 index 61b8ff453c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/StructDataType.java +++ /dev/null @@ -1,88 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple6; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class StructDataType extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060026000800160006001815260200190815260200160002081905550600460016000016000600381526020019081526020016000208190555060056001800181905550610350806100636000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063c04062261461003b578063f3ffc4511461007c575b600080fd5b6100436100bd565b60405180878152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b6100846102ab565b60405180878152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b6000806000806000806100ce6102da565b6040518060200160405290506100e26102e7565b6040518060200160405280600281525090506100fc6102fa565b604051806020016040529050610110610307565b6040518060200160405280600967ffffffffffffffff8111801561013357600080fd5b5060405190808252806020026020018201604052801561016d57816020015b61015a6102da565b8152602001906001900390816101525790505b50815250905061017b610307565b600460405180602001604052908160008201805480602002602001604051908101604052809291908181526020016000905b828210156101dc57838290600052602060002001604051806000016040529050815260200190600101906101ad565b5050505081525050905084600090505083600160008201518160010155905050826003905050600080016000600181526020019081526020016000205460058190555060018001546006819055508360000151600781905550600360000180549050600881905550816000015151600981905550806000015151600a819055506000800160006001815260200190815260200160002054600180015485600001516003600001805490508560000151518560000151519a509a509a509a509a509a505050505050909192939495565b600080600080600080600554600654600754600854600954600a54955095509550955095509550909192939495565b6040518060200160405290565b6040518060200160405280600081525090565b6040518060200160405290565b604051806020016040528060608152509056fea26469706673582212209a245bf8946ab076f3b159a2e323e67dd062e3590e0b02e061c848a26546dff664736f6c634300060c0033"; - - public static final String FUNC_GETRUNVALUE = "getRunValue"; - - public static final String FUNC_RUN = "run"; - - protected StructDataType(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected StructDataType(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StructDataType.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StructDataType.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall> getRunValue() { - final Function function = new Function(FUNC_GETRUNVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple6 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple6( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (BigInteger) results.get(3).getValue(), - (BigInteger) results.get(4).getValue(), - (BigInteger) results.get(5).getValue()); - } - }); - } - - public RemoteCall run() { - final Function function = new Function( - FUNC_RUN, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static StructDataType load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new StructDataType(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static StructDataType load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new StructDataType(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SuicideAndSelfdestruct.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SuicideAndSelfdestruct.java deleted file mode 100644 index a43cc0f8a9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SuicideAndSelfdestruct.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SuicideAndSelfdestruct extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b5033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101b5806100656000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806341c0e1b514610046578063a87d942c14610050578063d09de08a1461006e575b600080fd5b61004e610078565b005b61005861010b565b6040518082815260200191505060405180910390f35b610076610114565b005b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561010957600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b565b60008054905090565b6000600a90503373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561017c5780600054016000819055505b5056fea2646970667358221220dfae597df967991898dc4a933bb2da6b335d54a18bcc3196a28c8b752e50640c64736f6c634300060c0033"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_INCREMENT = "increment"; - - public static final String FUNC_KILL = "kill"; - - protected SuicideAndSelfdestruct(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SuicideAndSelfdestruct(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SuicideAndSelfdestruct.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SuicideAndSelfdestruct.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall increment() { - final Function function = new Function( - FUNC_INCREMENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall kill() { - final Function function = new Function( - FUNC_KILL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static SuicideAndSelfdestruct load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SuicideAndSelfdestruct(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SuicideAndSelfdestruct load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SuicideAndSelfdestruct(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Sum.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Sum.java deleted file mode 100644 index 886fd66968..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Sum.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Sum extends Contract { - private static final String BINARY = "61016c610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c806387fbcc771461003a575b600080fd5b6100f06004803603602081101561005057600080fd5b810190808035906020019064010000000081111561006d57600080fd5b82018360208201111561007f57600080fd5b803590602001918460208302840111640100000000831117156100a157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050610106565b6040518082815260200191505060405180910390f35b600080600090505b825181101561013057602081026020840101518201915080600101905061010e565b5091905056fea26469706673582212205348bed70e29de2214caae24a6872babdeea9203111542652c7a7b3417391faf64736f6c634300060c0033"; - - public static final String FUNC_SUMUSINGINLINEASSEMBLY = "sumUsingInlineAssembly"; - - protected Sum(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Sum(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sumUsingInlineAssembly(List _data) { - final Function function = new Function(FUNC_SUMUSINGINLINEASSEMBLY, - Arrays.asList(new com.alaya.abi.solidity.datatypes.DynamicArray( - Uint256.class, - com.alaya.abi.solidity.Utils.typeMap(_data, Uint256.class))), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Sum.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Sum.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Sum load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Sum(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Sum load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Sum(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SumAssembly.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SumAssembly.java deleted file mode 100644 index bd400d5dd6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/SumAssembly.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SumAssembly extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50600060019080600181540180825580915050600190039060005260206000200160009091909190915055600060029080600181540180825580915050600190039060005260206000200160009091909190915055600060039080600181540180825580915050600190039060005260206000200160009091909190915055600060049080600181540180825580915050600190039060005260206000200160009091909190915055600060059080600181540180825580915050600190039060005260206000200160009091909190915055610154806100f26000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063853255cc14610030575b600080fd5b61003861004e565b6040518082815260200191505060405180910390f35b600073__$bd55ce7c8d444a52551ddc65d373d70380$__6387fbcc7760006040518263ffffffff1660e01b8152600401808060200182810382528381815481526020019150805480156100c057602002820191906000526020600020905b8154815260200190600101908083116100ac575b50509250505060206040518083038186803b1580156100de57600080fd5b505af41580156100f2573d6000803e3d6000fd5b505050506040513d602081101561010857600080fd5b810190808051906020019092919050505090509056fea264697066735822122021c72b864b4a8a7d58046d81d2b4d64edf91072b01bd76a6e960cfc04969cb2b64736f6c634300060c0033\n" - + "\n" - + "// $bd55ce7c8d444a52551ddc65d373d70380$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/07Assembly/SumAssembly.sol:Sum"; - - public static final String FUNC_SUM = "sum"; - - protected SumAssembly(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SumAssembly(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SumAssembly.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SumAssembly.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall sum() { - final Function function = new Function(FUNC_SUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static SumAssembly load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SumAssembly(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SumAssembly load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SumAssembly(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Time.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Time.java deleted file mode 100644 index 75ccf5cb09..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Time.java +++ /dev/null @@ -1,108 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Time extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061018b806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806328ed13a5146100675780633c35a0c1146100855780637fefad021461008f578063931f8bcd146100ad5780639bd1479a146100cb578063cea52e71146100e9575b600080fd5b61006f610107565b6040518082815260200191505060405180910390f35b61008d610114565b005b610097610121565b6040518082815260200191505060405180910390f35b6100b5610130565b6040518082815260200191505060405180910390f35b6100d361013a565b6040518082815260200191505060405180910390f35b6100f1610147565b6040518082815260200191505060405180910390f35b6000603c60005401905090565b6305f5e100600081905550565b600062093a8060005401905090565b6000424203905090565b6000600160005401905090565b6000610e106000540190509056fea26469706673582212207f402ec61c219b11a1d97e808dfab4cbc3a1a27ec3d18c300028beba158c500864736f6c634300060c0033"; - - public static final String FUNC_THOURS = "tHours"; - - public static final String FUNC_TMINUTES = "tMinutes"; - - public static final String FUNC_TSECONDS = "tSeconds"; - - public static final String FUNC_TWEEKS = "tWeeks"; - - public static final String FUNC_TESTTIME = "testTime"; - - public static final String FUNC_TESTIMEDIFF = "testimeDiff"; - - protected Time(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Time(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall tHours() { - final Function function = new Function(FUNC_THOURS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall tMinutes() { - final Function function = new Function(FUNC_TMINUTES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall tSeconds() { - final Function function = new Function(FUNC_TSECONDS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall tWeeks() { - final Function function = new Function(FUNC_TWEEKS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall testTime() { - final Function function = new Function( - FUNC_TESTTIME, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testimeDiff() { - final Function function = new Function(FUNC_TESTIMEDIFF, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TimeComplexity extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610101806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80637003f6c2146041578063d25f264014606c578063e65284be146097575b600080fd5b606a60048036036020811015605557600080fd5b810190808035906020019092919050505060c2565b005b609560048036036020811015608057600080fd5b810190808035906020019092919050505060c5565b005b60c06004803603602081101560ab57600080fd5b810190808035906020019092919050505060c8565b005b50565b50565b5056fea264697066735822122023c6a4e20d372ce40810c7a63252cc562acb180311dbd7975a57205e444aff3d64736f6c634300060c0033"; - - public static final String FUNC_LOGNTEST = "logNTest"; - - public static final String FUNC_NSQUARETEST = "nSquareTest"; - - public static final String FUNC_NTEST = "nTest"; - - protected TimeComplexity(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TimeComplexity(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall logNTest(BigInteger n) { - final Function function = new Function( - FUNC_LOGNTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall nSquareTest(BigInteger n) { - final Function function = new Function( - FUNC_NSQUARETEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall nTest(BigInteger n) { - final Function function = new Function( - FUNC_NTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TimeComplexity.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TimeComplexity.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TimeComplexity load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TimeComplexity(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TimeComplexity load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TimeComplexity(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TryCatcher.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TryCatcher.java deleted file mode 100644 index 8a11765230..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TryCatcher.java +++ /dev/null @@ -1,154 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TryCatcher extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060405161001d9061007e565b604051809103906000f080158015610039573d6000803e3d6000fd5b506000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061008a565b608d8061024783390190565b6101ae806100996000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063614619541461003b578063d895540f14610045575b600080fd5b610043610079565b005b61004d610154565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335b09a6e6040518163ffffffff1660e01b815260040160006040518083038186803b1580156100df57600080fd5b505afa9250505080156100f0575060015b610125577f135475a7dd80871d9a7daccb556f4d9d3bd9593a0987c88f27057bc25cf91c3960405160405180910390a1610152565b7ffd76336752e93f2cc77cf13a41be8b6c156731030376354d634d28a9a87b916260405160405180910390a15b565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff168156fea26469706673582212200e727edc25eb4712f765de1a3608b52465f6043daf6932f315357b65b7f009fd64736f6c634300060c00336080604052348015600f57600080fd5b50607080601d6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806335b09a6e14602d575b600080fd5b60336035565b005b600080fdfea264697066735822122030a208cc7ebfe1976bdde8bce23c1cd6824546d25d55938f12c2e3b921bac9c164736f6c634300060c0033"; - - public static final String FUNC_EXECUTE = "execute"; - - public static final String FUNC_EXTERNALCONTRACT = "externalContract"; - - public static final Event CATCHEVENT_EVENT = new Event("CatchEvent", - Arrays.>asList()); - ; - - public static final Event SUCCESSEVENT_EVENT = new Event("SuccessEvent", - Arrays.>asList()); - ; - - protected TryCatcher(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TryCatcher(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TryCatcher.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TryCatcher.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public List getCatchEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(CATCHEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - CatchEventEventResponse typedResponse = new CatchEventEventResponse(); - typedResponse.log = eventValues.getLog(); - responses.add(typedResponse); - } - return responses; - } - - public Observable catchEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public CatchEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(CATCHEVENT_EVENT, log); - CatchEventEventResponse typedResponse = new CatchEventEventResponse(); - typedResponse.log = log; - return typedResponse; - } - }); - } - - public Observable catchEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(CATCHEVENT_EVENT)); - return catchEventEventObservable(filter); - } - - public List getSuccessEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(SUCCESSEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - SuccessEventEventResponse typedResponse = new SuccessEventEventResponse(); - typedResponse.log = eventValues.getLog(); - responses.add(typedResponse); - } - return responses; - } - - public Observable successEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public SuccessEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(SUCCESSEVENT_EVENT, log); - SuccessEventEventResponse typedResponse = new SuccessEventEventResponse(); - typedResponse.log = log; - return typedResponse; - } - }); - } - - public Observable successEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(SUCCESSEVENT_EVENT)); - return successEventEventObservable(filter); - } - - public RemoteCall execute() { - final Function function = new Function( - FUNC_EXECUTE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall externalContract() { - final Function function = new Function(FUNC_EXTERNALCONTRACT, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static TryCatcher load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TryCatcher(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TryCatcher load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TryCatcher(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class CatchEventEventResponse { - public Log log; - } - - public static class SuccessEventEventResponse { - public Log log; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TypeConversionBytesToUintContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TypeConversionBytesToUintContract.java deleted file mode 100644 index a0eec1b569..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TypeConversionBytesToUintContract.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint16; -import com.alaya.abi.solidity.datatypes.generated.Uint64; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TypeConversionBytesToUintContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061019b806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80634e9189bc146100465780636ab28181146100685780638acc06e014610090575b600080fd5b61004e6100b1565b604051808261ffff16815260200191505060405180910390f35b6100706100ed565b604051808267ffffffffffffffff16815260200191505060405180910390f35b61009861012f565b604051808260ff16815260200191505060405180910390f35b6000807f6162636400000000000000000000000000000000000000000000000000000000905060008160e01c9050600081905080935050505090565b6000807f6162636400000000000000000000000000000000000000000000000000000000905060008160e01c905060008163ffffffff16905080935050505090565b6000807f6100000000000000000000000000000000000000000000000000000000000000905060008160f81c905080925050509056fea2646970667358221220004ae8d604901551bcf08caa4976c85c16564291a60baf0926198b35bbacb72064736f6c634300060c0033"; - - public static final String FUNC_BYTESTOBIGUINT = "bytesToBigUint"; - - public static final String FUNC_BYTESTOSAMEUINT = "bytesToSameUint"; - - public static final String FUNC_BYTESTOSMALLUINT = "bytesToSmallUint"; - - protected TypeConversionBytesToUintContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeConversionBytesToUintContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall bytesToBigUint() { - final Function function = new Function(FUNC_BYTESTOBIGUINT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall bytesToSameUint() { - final Function function = new Function(FUNC_BYTESTOSAMEUINT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall bytesToSmallUint() { - final Function function = new Function(FUNC_BYTESTOSMALLUINT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeConversionBytesToUintContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeConversionBytesToUintContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TypeConversionBytesToUintContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionBytesToUintContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeConversionBytesToUintContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionBytesToUintContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TypeConversionContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TypeConversionContract.java deleted file mode 100644 index 955517a275..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TypeConversionContract.java +++ /dev/null @@ -1,141 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.abi.solidity.datatypes.generated.Bytes2; -import com.alaya.abi.solidity.datatypes.generated.Bytes4; -import com.alaya.abi.solidity.datatypes.generated.Int16; -import com.alaya.abi.solidity.datatypes.generated.Int8; -import com.alaya.abi.solidity.datatypes.generated.Uint16; -import com.alaya.abi.solidity.datatypes.generated.Uint32; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TypeConversionContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610305806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806399a909621161005b57806399a909621461010f578063a136096714610159578063ad42221214610196578063dcefd42f146101b75761007d565b8063744708f814610082578063853255cc146100cc5780639311ca69146100ed575b600080fd5b61008a6101f7565b604051808363ffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019250505060405180910390f35b6100d4610219565b604051808260010b815260200191505060405180910390f35b6100f5610233565b604051808261ffff16815260200191505060405180910390f35b61011761024a565b604051808361ffff168152602001827dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019250505060405180910390f35b61016161026a565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b61019e6102a3565b604051808260000b815260200191505060405180910390f35b6101bf6102b7565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6000806000611234905060008161ffff169050808160e01b9350935050509091565b60008060029050600060649050808260000b019250505090565b600080600a905060008160ff169050809250505090565b6000806000631234567890506000819050808160f01b9350935050509091565b60008061123460f01b90506000817dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169050809250505090565b600080600190506000819050809250505090565b60008061123460f01b9050600081905080925050509056fea2646970667358221220bc17b49b7f020711417e1e55e6795e755a7516b8328902cdc64c3ca336546aa964736f6c634300060c0033"; - - public static final String FUNC_CONVERSION = "conversion"; - - public static final String FUNC_DISPLAYCONVERSION = "displayConversion"; - - public static final String FUNC_DISPLAYCONVERSION1 = "displayConversion1"; - - public static final String FUNC_DISPLAYCONVERSION2 = "displayConversion2"; - - public static final String FUNC_DISPLAYCONVERSION3 = "displayConversion3"; - - public static final String FUNC_DISPLAYCONVERSION4 = "displayConversion4"; - - public static final String FUNC_SUM = "sum"; - - protected TypeConversionContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeConversionContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall conversion() { - final Function function = new Function(FUNC_CONVERSION, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall displayConversion() { - final Function function = new Function(FUNC_DISPLAYCONVERSION, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> displayConversion1() { - final Function function = new Function(FUNC_DISPLAYCONVERSION1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (byte[]) results.get(1).getValue()); - } - }); - } - - public RemoteCall> displayConversion2() { - final Function function = new Function(FUNC_DISPLAYCONVERSION2, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (byte[]) results.get(1).getValue()); - } - }); - } - - public RemoteCall displayConversion3() { - final Function function = new Function(FUNC_DISPLAYCONVERSION3, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall displayConversion4() { - final Function function = new Function(FUNC_DISPLAYCONVERSION4, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall sum() { - final Function function = new Function(FUNC_SUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeConversionContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeConversionContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TypeConversionContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeConversionContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TypeName.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TypeName.java deleted file mode 100644 index c33e0fb93c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TypeName.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TypeName extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101ed806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806306fdde031461003b578063f5f5ba72146100be575b600080fd5b610043610141565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100c661017a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101065780820151818401526020810190506100eb565b50505050905090810190601f1680156101335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6040518060400160405260088152806020017f547970654e616d6500000000000000000000000000000000000000000000000081525081565b60606040518060400160405260088152806020017f547970654e616d6500000000000000000000000000000000000000000000000081525090509056fea264697066735822122031a0e3b61072fb4d711bc70c14f85a80cc300a5497d5621f16734631c3f8010d64736f6c634300060c0033"; - - public static final String FUNC_GETCONTRACTNAME = "getContractName"; - - public static final String FUNC_NAME = "name"; - - protected TypeName(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeName(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getContractName() { - final Function function = new Function( - FUNC_GETCONTRACTNAME, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeName.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeName.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TypeName load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeName(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeName load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeName(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TypeNameFunction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TypeNameFunction.java deleted file mode 100644 index f91f283220..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/TypeNameFunction.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TypeNameFunction extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806326121ff014602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405260108152806020017f547970654e616d6546756e6374696f6e0000000000000000000000000000000081525090509056fea2646970667358221220eaee2a1daa33014a501f93f963106bb2fe0101a3f778403f0fea91d26346a2f664736f6c634300060c0033"; - - public static final String FUNC_F = "f"; - - protected TypeNameFunction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeNameFunction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f() { - final Function function = new Function(FUNC_F, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeNameFunction.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeNameFunction.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TypeNameFunction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeNameFunction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeNameFunction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeNameFunction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/UserMapping.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/UserMapping.java deleted file mode 100644 index d18614c169..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/UserMapping.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class UserMapping extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101b8806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806316fa21101461003b578063ff7ac36d14610073575b600080fd5b6100716004803603604081101561005157600080fd5b8101908080359060200190929190803590602001909291905050506100b5565b005b61009f6004803603602081101561008957600080fd5b8101908080359060200190929190505050610166565b6040518082815260200191505060405180910390f35b8160008083815260200190815260200160002081905550600073__$dc339364e382489c3fb242cf0ca8fbe722$__6312c487069091836040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b15801561012657600080fd5b505af415801561013a573d6000803e3d6000fd5b505050506040513d602081101561015057600080fd5b8101908080519060200190929190505050505050565b600080600083815260200190815260200160002054905091905056fea26469706673582212204fa59e00e24ed3379c7222f20e8d2cffcf8ec7a03ed1ae9f877c5b167580608d64736f6c634300060c0033\n" - + "\n" - + "// $dc339364e382489c3fb242cf0ca8fbe722$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserLib.sol:UserLib"; - - public static final String FUNC_GETOUTUSER = "getOutUser"; - - public static final String FUNC_SETOUTUSER = "setOutUser"; - - protected UserMapping(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected UserMapping(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getOutUser(BigInteger _id) { - final Function function = new Function(FUNC_GETOUTUSER, - Arrays.asList(new Uint256(_id)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setOutUser(BigInteger _age, BigInteger _id) { - final Function function = new Function( - FUNC_SETOUTUSER, - Arrays.asList(new Uint256(_age), - new Uint256(_id)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(UserMapping.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(UserMapping.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static UserMapping load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new UserMapping(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static UserMapping load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new UserMapping(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Visibility.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Visibility.java deleted file mode 100644 index 58f71374c0..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/Visibility.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Visibility extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610105806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063b8b1feb4146037578063ca77156f146076575b600080fd5b606060048036036020811015604b57600080fd5b810190808035906020019092919050505060b5565b6040518082815260200191505060405180910390f35b609f60048036036020811015608a57600080fd5b810190808035906020019092919050505060c2565b6040518082815260200191505060405180910390f35b6000600382019050919050565b600060028201905091905056fea2646970667358221220f93895036d670213efb4ed43441b7a66a3dc4b51ff1dd017d0b1f692d9a3473464736f6c634300060c0033"; - - public static final String FUNC_FE = "fe"; - - public static final String FUNC_FPUB = "fpub"; - - protected Visibility(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Visibility(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall fe(BigInteger a) { - final Function function = new Function(FUNC_FE, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall fpub(BigInteger a) { - final Function function = new Function(FUNC_FPUB, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Visibility.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Visibility.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Visibility load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Visibility(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Visibility load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Visibility(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/VisibilityCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/VisibilityCall.java deleted file mode 100644 index 24cc576f62..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/VisibilityCall.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class VisibilityCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610303806100206000396000f3fe60806040526004361061001e5760003560e01c8063bef55ef314610023575b600080fd5b61002b610048565b604051808381526020018281526020019250505060405180910390f35b60008060006040516100599061019b565b604051809103906000f080158015610075573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff1663ca77156f60016040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156100ca57600080fd5b505afa1580156100de573d6000803e3d6000fd5b505050506040513d60208110156100f457600080fd5b810190808051906020019092919050505092508073ffffffffffffffffffffffffffffffffffffffff1663b8b1feb460016040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561015957600080fd5b505afa15801561016d573d6000803e3d6000fd5b505050506040513d602081101561018357600080fd5b81019080805190602001909291905050509150509091565b610125806101a98339019056fe608060405234801561001057600080fd5b50610105806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063b8b1feb4146037578063ca77156f146076575b600080fd5b606060048036036020811015604b57600080fd5b810190808035906020019092919050505060b5565b6040518082815260200191505060405180910390f35b609f60048036036020811015608a57600080fd5b810190808035906020019092919050505060c2565b6040518082815260200191505060405180910390f35b6000600382019050919050565b600060028201905091905056fea2646970667358221220f93895036d670213efb4ed43441b7a66a3dc4b51ff1dd017d0b1f692d9a3473464736f6c634300060c0033a264697066735822122035b979c574c095bf9472136ee9bb02fc46affee44b25c7f85250f0b52631390064736f6c634300060c0033"; - - public static final String FUNC_READDATA = "readData"; - - protected VisibilityCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected VisibilityCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall readData(BigInteger vonValue) { - final Function function = new Function( - FUNC_READDATA, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(VisibilityCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(VisibilityCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static VisibilityCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new VisibilityCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static VisibilityCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new VisibilityCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/WhileError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/WhileError.java deleted file mode 100644 index 7b9762fa46..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/WhileError.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class WhileError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060c88061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063ed6f916c14602d575b600080fd5b6033604b565b60405180821515815260200191505060405180910390f35b6000806054606e565b90508060000160009054906101000a900460ff1691505090565b60005b600090508060000160009054906101000a900460ff1615608f576071565b9056fea26469706673582212209af1527496e0a31f1578b16f6f88b147aa1231bbe6ca6c6363703ef80c2f328a64736f6c634300060c0033"; - - public static final String FUNC_GETWHILECONTROLRES = "getWhileControlRes"; - - protected WhileError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected WhileError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getWhileControlRes() { - final Function function = new Function(FUNC_GETWHILECONTROLRES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WhileError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WhileError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static WhileError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new WhileError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static WhileError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new WhileError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/WithBackCallee.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/WithBackCallee.java deleted file mode 100644 index 582795949f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/WithBackCallee.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class WithBackCallee extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506103f9806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063688755701461003b578063ae49cd9c1461007d575b600080fd5b6100676004803603602081101561005157600080fd5b8101908080359060200190929190505050610248565b6040518082815260200191505060405180910390f35b6101cd6004803603604081101561009357600080fd5b81019080803590602001906401000000008111156100b057600080fd5b8201836020820111156100c257600080fd5b803590602001918460018302840111640100000000831117156100e457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019064010000000081111561014757600080fd5b82018360208201111561015957600080fd5b8035906020019184600183028401116401000000008311171561017b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610259565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561020d5780820151818401526020810190506101f2565b50505050905090810190601f16801561023a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b600080828301905080915050919050565b6060610265838361026d565b905092915050565b60608083905060608390506060815183510167ffffffffffffffff8111801561029557600080fd5b506040519080825280601f01601f1916602001820160405280156102c85781602001600182028036833780820191505090505b50905060608190506000805b8551811015610342578581815181106102e957fe5b602001015160f81c60f81b83838060010194508151811061030657fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080806001019150506102d4565b5060005b84518110156103b45784818151811061035b57fe5b602001015160f81c60f81b83838060010194508151811061037857fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050610346565b5082955050505050509291505056fea26469706673582212200e910977e720663d462838ef8190a503bd04bf5529da43fd0a0e87f0657a2fd664736f6c634300060c0033"; - - public static final String FUNC_GETDOUBLE = "getDouble"; - - public static final String FUNC_GETNAME = "getName"; - - protected WithBackCallee(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected WithBackCallee(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDouble(BigInteger a) { - final Function function = new Function( - FUNC_GETDOUBLE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getName(String option, String name) { - final Function function = new Function( - FUNC_GETNAME, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Utf8String(option), - new com.alaya.abi.solidity.datatypes.Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WithBackCallee.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WithBackCallee.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static WithBackCallee load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new WithBackCallee(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static WithBackCallee load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new WithBackCallee(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/WithBackCaller.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/WithBackCaller.java deleted file mode 100644 index 4cb8d3f5c8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_6_12/WithBackCaller.java +++ /dev/null @@ -1,116 +0,0 @@ -package network.platon.contracts.evm.v0_6_12; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class WithBackCaller extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610d65806100206000396000f3fe608060405234801561001057600080fd5b50600436106100615760003560e01c80621e257c146100665780630687590a146100aa57806308c2938b14610185578063400f6a601461020857806356ea18ab14610256578063de583cfa1461033b575b600080fd5b6100a86004803603602081101561007c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610359565b005b610183600480360360408110156100c057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156100fd57600080fd5b82018360208201111561010f57600080fd5b8035906020019184600183028401116401000000008311171561013157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506104a8565b005b61018d610784565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101cd5780820151818401526020810190506101b2565b50505050905090810190601f1680156101fa5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102546004803603604081101561021e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610826565b005b6103396004803603606081101561026c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156102a957600080fd5b8201836020820111156102bb57600080fd5b803590602001918460018302840111640100000000831117156102dd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803590602001909291905050506109aa565b005b610343610c89565b6040518082815260200191505060405180910390f35b8073ffffffffffffffffffffffffffffffffffffffff166055603c60405160240180838152602001828152602001925050506040516020818303038152906040527f771602f7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b6020831061043b5780518252602082019150602081019050602083039250610418565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461049d576040519150601f19603f3d011682016040523d82523d6000602084013e6104a2565b606091505b50505050565b600060608373ffffffffffffffffffffffffffffffffffffffff1683604051602401808060200180602001838103835260058152602001807f68656c6c6f000000000000000000000000000000000000000000000000000000815250602001838103825284818151815260200191508051906020019080838360005b8381101561053f578082015181840152602081019050610524565b50505050905090810190601f16801561056c5780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040527fae49cd9c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b6020831061062257805182526020820191506020810190506020830392506105ff565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610684576040519150601f19603f3d011682016040523d82523d6000602084013e610689565b606091505b50915091508161069857600080fd5b8080602001905160208110156106ad57600080fd5b81019080805160405193929190846401000000008211156106cd57600080fd5b838201915060208201858111156106e357600080fd5b825186600182028301116401000000008211171561070057600080fd5b8083526020830192505050908051906020019080838360005b83811015610734578082015181840152602081019050610719565b50505050905090810190601f1680156107615780820380516001836020036101000a031916815260200191505b506040525050506001908051906020019061077d929190610c92565b5050505050565b606060018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561081c5780601f106107f15761010080835404028352916020019161081c565b820191906000526020600020905b8154815290600101906020018083116107ff57829003601f168201915b5050505050905090565b600060608373ffffffffffffffffffffffffffffffffffffffff1683604051602401808281526020019150506040516020818303038152906040527f68875570000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b6020831061090257805182526020820191506020810190506020830392506108df565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610964576040519150601f19603f3d011682016040523d82523d6000602084013e610969565b606091505b50915091508161097857600080fd5b80806020019051602081101561098d57600080fd5b810190808051906020019092919050505060008190555050505050565b600060608473ffffffffffffffffffffffffffffffffffffffff168385604051602401808060200180602001838103835260088152602001807f68656c6c6f676173000000000000000000000000000000000000000000000000815250602001838103825284818151815260200191508051906020019080838360005b83811015610a42578082015181840152602081019050610a27565b50505050905090810190601f168015610a6f5780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040527fae49cd9c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b60208310610b255780518252602082019150602081019050602083039250610b02565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038160008787f1925050503d8060008114610b88576040519150601f19603f3d011682016040523d82523d6000602084013e610b8d565b606091505b509150915081610b9c57600080fd5b808060200190516020811015610bb157600080fd5b8101908080516040519392919084640100000000821115610bd157600080fd5b83820191506020820185811115610be757600080fd5b8251866001820283011164010000000082111715610c0457600080fd5b8083526020830192505050908051906020019080838360005b83811015610c38578082015181840152602081019050610c1d565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b5060405250505060019080519060200190610c81929190610c92565b505050505050565b60008054905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610cd357805160ff1916838001178555610d01565b82800160010185558215610d01579182015b82811115610d00578251825591602001919060010190610ce5565b5b509050610d0e9190610d12565b5090565b5b80821115610d2b576000816000905550600101610d13565b509056fea26469706673582212206f78967de387cca53f6de647050aaa8a285645dc11c3c90fe4f8122bcf6a638864736f6c634300060c0033"; - - public static final String FUNC_CALLADDLTEST = "callAddlTest"; - - public static final String FUNC_CALLDOUBLELTEST = "callDoublelTest"; - - public static final String FUNC_CALLGETNAMETEST = "callgetNameTest"; - - public static final String FUNC_CALLGETNAMETESTWITHGAS = "callgetNameTestWithGas"; - - public static final String FUNC_GETSTRINGRESULT = "getStringResult"; - - public static final String FUNC_GETUINTRESULT = "getuintResult"; - - protected WithBackCaller(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected WithBackCaller(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callAddlTest(String other) { - final Function function = new Function( - FUNC_CALLADDLTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(other)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callDoublelTest(String other, BigInteger a) { - final Function function = new Function( - FUNC_CALLDOUBLELTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(other), - new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callgetNameTest(String other, String name) { - final Function function = new Function( - FUNC_CALLGETNAMETEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(other), - new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callgetNameTestWithGas(String other, String name, BigInteger gasValue) { - final Function function = new Function( - FUNC_CALLGETNAMETESTWITHGAS, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(other), - new Utf8String(name), - new Uint256(gasValue)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getStringResult() { - final Function function = new Function(FUNC_GETSTRINGRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getuintResult() { - final Function function = new Function(FUNC_GETUINTRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WithBackCaller.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WithBackCaller.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static WithBackCaller load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new WithBackCaller(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static WithBackCaller load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new WithBackCaller(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ABIFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ABIFunctions.java deleted file mode 100644 index 259b4dc7ff..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ABIFunctions.java +++ /dev/null @@ -1,77 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ABIFunctions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061030a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063538fad8b14610046578063911a3363146100c9578063b19d51e41461014c575b600080fd5b61004e6101cf565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561008e578082015181840152602081019050610073565b50505050905090810190601f1680156100bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100d1610216565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101115780820151818401526020810190506100f6565b50505050905090810190601f16801561013e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61015461023e565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610194578082015181840152602081019050610179565b50505050905090810190601f1680156101c15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b606060405160200180807f31000000000000000000000000000000000000000000000000000000000000008152506001019050604051602081830303815290604052905090565b6060600160405160200180828152602001915050604051602081830303815290604052905090565b60606001604051602401808281526020019150506040516020818303038152906040527f60fe47b1000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090509056fea2646970667358221220b92947e8afe3727089a94a4fff9c6c819b0dd37a93666a5b751ca876db417c7b64736f6c63430007010033"; - - public static final String FUNC_GETENCODE = "getEncode"; - - public static final String FUNC_GETENCODEPACKED = "getEncodePacked"; - - public static final String FUNC_GETENCODEWITHSIGNATURE = "getEncodeWithSignature"; - - protected ABIFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ABIFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getEncode() { - final Function function = new Function(FUNC_GETENCODE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getEncodePacked() { - final Function function = new Function(FUNC_GETENCODEPACKED, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getEncodeWithSignature() { - final Function function = new Function(FUNC_GETENCODEWITHSIGNATURE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ABIFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ABIFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ABIFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ABIFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ABIFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ABIFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractAInterface.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractAInterface.java deleted file mode 100644 index 8ab8e5fb4a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractAInterface.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractAInterface extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_AINTERAGE = "aInterAge"; - - protected AbstractContractAInterface(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractAInterface(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aInterAge() { - final Function function = new Function(FUNC_AINTERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractAInterface.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractAInterface.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractAInterface load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractAInterface(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractAInterface load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractAInterface(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractASubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractASubclass.java deleted file mode 100644 index 1aa06b6f7e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractASubclass.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractASubclass extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_ASUBAGE = "aSubAge"; - - public static final String FUNC_ASUBNAME = "aSubName"; - - protected AbstractContractASubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractASubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aSubAge() { - final Function function = new Function(FUNC_ASUBAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall aSubName() { - final Function function = new Function(FUNC_ASUBNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractASubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractASubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractASubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractASubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractASubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractASubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractBSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractBSubclass.java deleted file mode 100644 index bcec15769c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractBSubclass.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractBSubclass extends Contract { - private static final String BINARY = "6080604052604051806020016040528060008152506000908051906020019061002992919061003c565b5034801561003657600080fd5b506100d9565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061007d57805160ff19168380011785556100ab565b828001600101855582156100ab579182015b828111156100aa57825182559160200191906001019061008f565b5b5090506100b891906100bc565b5090565b5b808211156100d55760008160009055506001016100bd565b5090565b6103d8806100e86000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630fdd8d4514610046578063accab56b146100c9578063e652e56514610184575b600080fd5b61004e610207565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561008e578082015181840152602081019050610073565b50505050905090810190601f1680156100bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610182600480360360208110156100df57600080fd5b81019080803590602001906401000000008111156100fc57600080fd5b82018360208201111561010e57600080fd5b8035906020019184600183028401116401000000008311171561013057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610249565b005b61018c610263565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101cc5780820151818401526020810190506101b1565b50505050905090810190601f1680156101f95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6060806040518060400160405280600881526020017f625375624e616d6500000000000000000000000000000000000000000000000081525090508091505090565b806000908051906020019061025f929190610305565b5050565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102fb5780601f106102d0576101008083540402835291602001916102fb565b820191906000526020600020905b8154815290600101906020018083116102de57829003601f168201915b5050505050905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061034657805160ff1916838001178555610374565b82800160010185558215610374579182015b82811115610373578251825591602001919060010190610358565b5b5090506103819190610385565b5090565b5b8082111561039e576000816000905550600101610386565b509056fea2646970667358221220b367cf3764c4ba949b66307ff602860286e1a72f077e4031ca064e585048ad0164736f6c63430007010033"; - - public static final String FUNC_BSUBNAME = "bSubName"; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - protected AbstractContractBSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractBSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall bSubName() { - final Function function = new Function(FUNC_BSUBNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractBSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractBSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractBSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractBSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractBSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractBSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractCSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractCSubclass.java deleted file mode 100644 index a534b58ca3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractCSubclass.java +++ /dev/null @@ -1,110 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractCSubclass extends Contract { - private static final String BINARY = "60806040526040518060200160405280600081525060009080519060200190610029929190610062565b50604051806020016040528060008152506001908051906020019061004f929190610062565b5034801561005c57600080fd5b506100ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100a357805160ff19168380011785556100d1565b828001600101855582156100d1579182015b828111156100d05782518255916020019190600101906100b5565b5b5090506100de91906100e2565b5090565b5b808211156100fb5760008160009055506001016100e3565b5090565b6105bf8061010e6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806331aa8a6e146100675780633af1a463146100ea5780634fc341131461016d5780639c72890b14610228578063accab56b14610246578063e652e56514610301575b600080fd5b61006f610384565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100af578082015181840152602081019050610094565b50505050905090810190601f1680156100dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100f26103c6565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610132578082015181840152602081019050610117565b50505050905090810190601f16801561015f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102266004803603602081101561018357600080fd5b81019080803590602001906401000000008111156101a057600080fd5b8201836020820111156101b257600080fd5b803590602001918460018302840111640100000000831117156101d457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610468565b005b610230610482565b6040518082815260200191505060405180910390f35b6102ff6004803603602081101561025c57600080fd5b810190808035906020019064010000000081111561027957600080fd5b82018360208201111561028b57600080fd5b803590602001918460018302840111640100000000831117156102ad57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610490565b005b6103096104aa565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561034957808201518184015260208101905061032e565b50505050905090810190601f1680156103765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6060806040518060400160405280600881526020017f635375624e616d6500000000000000000000000000000000000000000000000081525090508091505090565b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561045e5780601f106104335761010080835404028352916020019161045e565b820191906000526020600020905b81548152906001019060200180831161044157829003601f168201915b5050505050905090565b806000908051906020019061047e9291906104ec565b5050565b600080601490508091505090565b80600190805190602001906104a69291906104ec565b5050565b6060806040518060400160405280600a81526020017f706172656e744e616d650000000000000000000000000000000000000000000081525090508091505090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061052d57805160ff191683800117855561055b565b8280016001018555821561055b579182015b8281111561055a57825182559160200191906001019061053f565b5b509050610568919061056c565b5090565b5b8082111561058557600081600090555060010161056d565b509056fea2646970667358221220490fd9ddf2925708118897f10ab6ecf03aeec03612da582974c9e8bbbe2698ca64736f6c63430007010033"; - - public static final String FUNC_ASUBAGE = "aSubAge"; - - public static final String FUNC_ASUBNAME = "aSubName"; - - public static final String FUNC_CSUBNAME = "cSubName"; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETASUBNAME = "setASubName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - protected AbstractContractCSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractCSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aSubAge() { - final Function function = new Function(FUNC_ASUBAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall aSubName() { - final Function function = new Function(FUNC_ASUBNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall cSubName() { - final Function function = new Function(FUNC_CSUBNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setASubName(String v) { - final Function function = new Function( - FUNC_SETASUBNAME, - Arrays.asList(new Utf8String(v)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractCSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractCSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractCSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractCSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractCSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractCSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractDSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractDSubclass.java deleted file mode 100644 index c000ed4304..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractDSubclass.java +++ /dev/null @@ -1,90 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractDSubclass extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_DSUBCLASSNAME = "dSubClassName"; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - public static final String FUNC_SETPARENTNAMED = "setParentNameD"; - - protected AbstractContractDSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractDSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall dSubClassName() { - final Function function = new Function(FUNC_DSUBCLASSNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setParentNameD(String name) { - final Function function = new Function( - FUNC_SETPARENTNAMED, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractDSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractDSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractDSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractDSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractDSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractDSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractESubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractESubclass.java deleted file mode 100644 index f0f2666123..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractESubclass.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractESubclass extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_AINTERAGE = "aInterAge"; - - public static final String FUNC_SETINTERAGE = "setInterAge"; - - protected AbstractContractESubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractESubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aInterAge() { - final Function function = new Function(FUNC_AINTERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setInterAge(BigInteger v) { - final Function function = new Function( - FUNC_SETINTERAGE, - Arrays.asList(new Int256(v)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractESubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractESubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractESubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractESubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractESubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractESubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractFSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractFSubclass.java deleted file mode 100644 index 3005b781f5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractFSubclass.java +++ /dev/null @@ -1,90 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractFSubclass extends Contract { - private static final String BINARY = "6080604052604051806020016040528060008152506000908051906020019061002992919061003c565b5034801561003657600080fd5b506100d9565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061007d57805160ff19168380011785556100ab565b828001600101855582156100ab579182015b828111156100aa57825182559160200191906001019061008f565b5b5090506100b891906100bc565b5090565b5b808211156100d55760008160009055506001016100bd565b5090565b61047a806100e86000396000f3fe608060405234801561001057600080fd5b506004361061004b5760003560e01c8062af095414610050578063accab56b1461010b578063e16ae640146101c6578063e652e56514610249575b600080fd5b6101096004803603602081101561006657600080fd5b810190808035906020019064010000000081111561008357600080fd5b82018360208201111561009557600080fd5b803590602001918460018302840111640100000000831117156100b757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506102cc565b005b6101c46004803603602081101561012157600080fd5b810190808035906020019064010000000081111561013e57600080fd5b82018360208201111561015057600080fd5b8035906020019184600183028401116401000000008311171561017257600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506102e6565b005b6101ce610300565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561020e5780820151818401526020810190506101f3565b50505050905090810190601f16801561023b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610251610305565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610291578082015181840152602081019050610276565b50505050905090810190601f1680156102be5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b80600090805190602001906102e29291906103a7565b5050565b80600090805190602001906102fc9291906103a7565b5050565b606090565b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561039d5780601f106103725761010080835404028352916020019161039d565b820191906000526020600020905b81548152906001019060200180831161038057829003601f168201915b5050505050905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106103e857805160ff1916838001178555610416565b82800160010185558215610416579182015b828111156104155782518255916020019190600101906103fa565b5b5090506104239190610427565b5090565b5b80821115610440576000816000905550600101610428565b509056fea2646970667358221220f696ca9fbf9ad807df966cf6ee0c541b5b20df508bc84210cd2840e09d93045664736f6c63430007010033"; - - public static final String FUNC_DSUBCLASSNAME = "dSubClassName"; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - public static final String FUNC_SETPARENTNAMED = "setParentNameD"; - - protected AbstractContractFSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractFSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall dSubClassName() { - final Function function = new Function(FUNC_DSUBCLASSNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setParentNameD(String name) { - final Function function = new Function( - FUNC_SETPARENTNAMED, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractFSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractFSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractFSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractFSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractFSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractFSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractFather.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractFather.java deleted file mode 100644 index 679af2dfab..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractFather.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractFather extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_FATHERAGE = "fatherAge"; - - public static final String FUNC_FATHERNAME = "fatherName"; - - protected AbstractContractFather(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractFather(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall fatherAge() { - final Function function = new Function(FUNC_FATHERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall fatherName() { - final Function function = new Function(FUNC_FATHERNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractFather.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractFather.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractFather load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractFather(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractFather load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractFather(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractGSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractGSubclass.java deleted file mode 100644 index c078c7ec3c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractGSubclass.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractGSubclass extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b5060f3806100236000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c8063262a9dff14604157806335f99d4814605d578063d1eef376146088575b600080fd5b604760a4565b6040518082815260200191505060405180910390f35b608660048036036020811015607157600080fd5b810190808035906020019092919050505060aa565b005b608e60b4565b6040518082815260200191505060405180910390f35b60005481565b8060008190555050565b6000805490509056fea26469706673582212204c9bbd4927c2cdae4a4c1b631ee53b19495404fbba8c234351c8db4d19376f2d64736f6c63430007010033"; - - public static final String FUNC_AINTERAGE = "aInterAge"; - - public static final String FUNC_AGE = "age"; - - public static final String FUNC_SETINTERAGE = "setInterAge"; - - protected AbstractContractGSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractGSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall aInterAge() { - final Function function = new Function(FUNC_AINTERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall age() { - final Function function = new Function(FUNC_AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setInterAge(BigInteger v) { - final Function function = new Function( - FUNC_SETINTERAGE, - Arrays.asList(new Int256(v)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractGSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractGSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractGSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractGSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractGSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractGSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractGrandpa.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractGrandpa.java deleted file mode 100644 index 1399e34454..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractGrandpa.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractGrandpa extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_NAME = "name"; - - protected AbstractContractGrandpa(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractGrandpa(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractGrandpa.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractGrandpa.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractGrandpa load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractGrandpa(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractGrandpa load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractGrandpa(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractParentClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractParentClass.java deleted file mode 100644 index b932474be6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractParentClass.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractParentClass extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_PARENTNAME = "parentName"; - - public static final String FUNC_SETPARENTNAME = "setParentName"; - - protected AbstractContractParentClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractParentClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall parentName() { - final Function function = new Function(FUNC_PARENTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setParentName(String name) { - final Function function = new Function( - FUNC_SETPARENTNAME, - Arrays.asList(new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractParentClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractParentClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractParentClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractParentClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractParentClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractParentClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractSon.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractSon.java deleted file mode 100644 index 25859b74af..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AbstractContractSon.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AbstractContractSon extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061022f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806305a83329146100465780637839360014610064578063ed55abd4146100e7575b600080fd5b61004e61016a565b6040518082815260200191505060405180910390f35b61006c610178565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100ac578082015181840152602081019050610091565b50505050905090810190601f1680156100d95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100ef6101b7565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561012f578082015181840152602081019050610114565b50505050905090810190601f16801561015c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b600080601490508091505090565b6060806040518060400160405280600a81526020017f6661746865724e616d650000000000000000000000000000000000000000000081525090505090565b6060806040518060400160405280600781526020017f736f6e4e616d65000000000000000000000000000000000000000000000000008152509050809150509056fea26469706673582212201ee0abc2e37ec3c499547af163659ba72330bef9858e8387a1fc2c588136449f64736f6c63430007010033"; - - public static final String FUNC_FATHERAGE = "fatherAge"; - - public static final String FUNC_FATHERNAME = "fatherName"; - - public static final String FUNC_SONNAME = "sonName"; - - protected AbstractContractSon(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AbstractContractSon(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall fatherAge() { - final Function function = new Function(FUNC_FATHERAGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall fatherName() { - final Function function = new Function(FUNC_FATHERNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall sonName() { - final Function function = new Function(FUNC_SONNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractSon.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AbstractContractSon.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AbstractContractSon load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractSon(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AbstractContractSon load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AbstractContractSon(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AddressFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AddressFunctions.java deleted file mode 100644 index 2a7e81a378..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AddressFunctions.java +++ /dev/null @@ -1,91 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AddressFunctions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061025a806100206000396000f3fe60806040526004361061003f5760003560e01c80631a695230146100445780633e58c58c14610088578063ecbde5e6146100e2578063f8b2cb4f1461010d575b600080fd5b6100866004803603602081101561005a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610172565b005b6100ca6004803603602081101561009e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506101bc565b60405180821515815260200191505060405180910390f35b3480156100ee57600080fd5b506100f76101fb565b6040518082815260200191505060405180910390f35b34801561011957600080fd5b5061015c6004803603602081101561013057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610203565b6040518082815260200191505060405180910390f35b8073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501580156101b8573d6000803e3d6000fd5b5050565b60008173ffffffffffffffffffffffffffffffffffffffff166108fc60019081150290604051600060405180830381858888f193505050509050919050565b600047905090565b60008173ffffffffffffffffffffffffffffffffffffffff1631905091905056fea264697066735822122057d439d0a16eb88cc642ed83e88634b8ba8513a2360391d52fc8adc1e64e36e864736f6c63430007010033"; - - public static final String FUNC_GETBALANCE = "getBalance"; - - public static final String FUNC_GETBALANCEOF = "getBalanceOf"; - - public static final String FUNC_SEND = "send"; - - public static final String FUNC_TRANSFER = "transfer"; - - protected AddressFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AddressFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBalance(String addr) { - final Function function = new Function(FUNC_GETBALANCE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBalanceOf() { - final Function function = new Function(FUNC_GETBALANCEOF, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall send(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_SEND, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall transfer(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AddressFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AddressFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AddressFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AddressFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AddressFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AddressFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AnimalExternal.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AnimalExternal.java deleted file mode 100644 index 7c0c9bc1bc..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AnimalExternal.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AnimalExternal extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50601d60018190555060aa6002819055506040518060400160405280600981526020017f4c75636b7920646f6700000000000000000000000000000000000000000000008152506003908051906020019061006c9291906100be565b506040518060400160405280600a81526020017f323031312d30312d303100000000000000000000000000000000000000000000815250600090805190602001906100b89291906100be565b5061015b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100ff57805160ff191683800117855561012d565b8280016001018555821561012d579182015b8281111561012c578251825591602001919060010190610111565b5b50905061013a919061013e565b5090565b5b8082111561015757600081600090555060010161013f565b5090565b6101ed8061016a6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063262a9dff14610046578063beb0067e14610064578063f377bd5b146100e7575b600080fd5b61004e610105565b6040518082815260200191505060405180910390f35b61006c61010f565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100ac578082015181840152602081019050610091565b50505050905090810190601f1680156100d95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100ef6101b1565b6040518082815260200191505060405180910390f35b6000600154905090565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156101a75780601f1061017c576101008083540402835291602001916101a7565b820191906000526020600020905b81548152906001019060200180831161018a57829003601f168201915b5050505050905090565b6001548156fea26469706673582212209db9d24ea5496e9e7af59efead269191f302fa202eada74e661407d5cc295cab64736f6c63430007010033"; - - public static final String FUNC__AGE = "_age"; - - public static final String FUNC_AGE = "age"; - - public static final String FUNC_BIRTHDAY = "birthDay"; - - protected AnimalExternal(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AnimalExternal(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AnimalExternal.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AnimalExternal.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall _age() { - final Function function = new Function(FUNC__AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall age() { - final Function function = new Function(FUNC_AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall birthDay() { - final Function function = new Function(FUNC_BIRTHDAY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static AnimalExternal load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AnimalExternal(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AnimalExternal load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AnimalExternal(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AssemblyReturns.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AssemblyReturns.java deleted file mode 100644 index b111d93774..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AssemblyReturns.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes2; -import com.alaya.abi.solidity.datatypes.generated.Bytes3; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple5; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AssemblyReturns extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061016d806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806326121ff014610030575b600080fd5b6100386100c3565b60405180868152602001857dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001847cffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200183151581526020018273ffffffffffffffffffffffffffffffffffffffff1681526020019550505050505060405180910390f35b6000806000806000600294507fabcd00000000000000000000000000000000000000000000000000000000000093507f61626300000000000000000000000000000000000000000000000000000000009250600191507372ad2b713faa14c2c4cd2d7affe5d8f538968f5a9050909192939456fea264697066735822122029f20aee3ae4efe3136551ee902feb7a0b4f08aa33f0b9582fc15650c1eee53d64736f6c63430007010033"; - - public static final String FUNC_F = "f"; - - protected AssemblyReturns(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AssemblyReturns(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> f() { - final Function function = new Function(FUNC_F, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference

() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple5 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple5( - (BigInteger) results.get(0).getValue(), - (byte[]) results.get(1).getValue(), - (byte[]) results.get(2).getValue(), - (Boolean) results.get(3).getValue(), - (String) results.get(4).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssemblyReturns.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssemblyReturns.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AssemblyReturns load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AssemblyReturns(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AssemblyReturns load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AssemblyReturns(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AssertContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AssertContract.java deleted file mode 100644 index f0d179f351..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AssertContract.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AssertContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060fa8061005f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806314fef936146037578063de292789146080575b600080fd5b606a60048036036040811015604b57600080fd5b810190808035906020019092919080359060200190929190505050609c565b6040518082815260200191505060405180910390f35b608660ba565b6040518082815260200191505060405180910390f35b600081831160a657fe5b818301600181905550600154905092915050565b600060015490509056fea2646970667358221220c9a7ffdd68a686a3fd213f24ad86923eee8e670e0b3bad9891fa1df04f30a7e864736f6c63430007010033"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final String FUNC_TOSENDERAMOUNT = "toSenderAmount"; - - protected AssertContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AssertContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssertContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssertContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getResult() { - final Function function = new Function(FUNC_GETRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall toSenderAmount(BigInteger frist, BigInteger second) { - final Function function = new Function( - FUNC_TOSENDERAMOUNT, - Arrays.asList(new Uint256(frist), - new Uint256(second)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static AssertContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AssertContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AssertContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AssertContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AssertHandle.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AssertHandle.java deleted file mode 100644 index e913951e84..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AssertHandle.java +++ /dev/null @@ -1,112 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AssertHandle extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610170806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80638c671e0a14610067578063ad92212f14610071578063afcd320e1461007b578063cda0a5eb146100a9578063f25e0471146100f9578063f81cf6db14610103575b600080fd5b61006f61010d565b005b61007961010f565b005b6100a76004803603602081101561009157600080fd5b8101908080359060200190929190505050610111565b005b6100d8600480360360208110156100bf57600080fd5b81019080803560000b906020019092919050505061011e565b604051808260038111156100e857fe5b815260200191505060405180910390f35b610101610136565b005b61010b610138565b005b565b565b600a811061011b57fe5b50565b60008160000b600381111561012f57fe5b9050919050565b565b56fea2646970667358221220c746473cac76f0d0b757ab39b1063204882634572b882ddb1ffb47a2ed94791064736f6c63430007010033"; - - public static final String FUNC_BINARYMOVEMINUSEXCEPTION = "binaryMoveMinusException"; - - public static final String FUNC_DIVIDENDZEROEXCEPTION = "dividendZeroException"; - - public static final String FUNC_INTCHANGEEXCEPTION = "intChangeException"; - - public static final String FUNC_NOOUTOFBOUNDSEXCEPTION = "noOutOfBoundsException"; - - public static final String FUNC_OUTOFBOUNDSEXCEPTION = "outOfBoundsException"; - - public static final String FUNC_PARAMEXCEPTION = "paramException"; - - protected AssertHandle(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AssertHandle(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall binaryMoveMinusException() { - final Function function = new Function( - FUNC_BINARYMOVEMINUSEXCEPTION, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall dividendZeroException() { - final Function function = new Function( - FUNC_DIVIDENDZEROEXCEPTION, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall intChangeException(BigInteger param) { - final Function function = new Function( - FUNC_INTCHANGEEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Int8(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall noOutOfBoundsException() { - final Function function = new Function( - FUNC_NOOUTOFBOUNDSEXCEPTION, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall outOfBoundsException() { - final Function function = new Function( - FUNC_OUTOFBOUNDSEXCEPTION, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall paramException(BigInteger param) { - final Function function = new Function( - FUNC_PARAMEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssertHandle.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AssertHandle.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AssertHandle load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AssertHandle(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AssertHandle load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AssertHandle(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AtomicSwap.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AtomicSwap.java deleted file mode 100644 index 29d29fa5c8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/AtomicSwap.java +++ /dev/null @@ -1,341 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple8; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class AtomicSwap extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611320806100606000396000f3fe6080604052600436106100555760003560e01c80632b68b9c61461005a578063446bffba1461007157806348e558da1461009f5780637249fbb614610101578063b31597ad1461013c578063eb84e7f214610181575b600080fd5b34801561006657600080fd5b5061006f610238565b005b61009d6004803603602081101561008757600080fd5b81019080803590602001909291905050506103a8565b005b6100ff600480360360808110156100b557600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019092919050505061057c565b005b34801561010d57600080fd5b5061013a6004803603602081101561012457600080fd5b81019080803590602001909291905050506108c4565b005b34801561014857600080fd5b5061017f6004803603604081101561015f57600080fd5b810190808035906020019092919080359060200190929190505050610ba9565b005b34801561018d57600080fd5b506101ba600480360360208110156101a457600080fd5b81019080803590602001909291905050506110da565b604051808981526020018881526020018773ffffffffffffffffffffffffffffffffffffffff1681526020018673ffffffffffffffffffffffffffffffffffffffff16815260200185815260200184815260200183815260200182600381111561022057fe5b81526020019850505050505050505060405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146102f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000471461036f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f62616c616e6365206973206e6f74207a65726f0000000000000000000000000081525060200191505060405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b80600160038111156103b657fe5b6001600083815260200190815260200160002060070160009054906101000a900460ff1660038111156103e557fe5b1461043b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c8152602001806112bf602c913960400191505060405180910390fd5b8160016000828152602001908152602001600020600401544211156104c8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f726566756e6454696d652068617320616c726561647920636f6d65000000000081525060200191505060405180910390fd5b6104f134600160008681526020019081526020016000206005015461116f90919063ffffffff16565b6001600085815260200190815260200160002060050181905550827fd760a88b05be4d78a2815eb20f72049b7c89e1dca4fc467139fe3f2224a37423336001600087815260200190815260200160002060050154604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a2505050565b83826000600381111561058b57fe5b6001600084815260200190815260200160002060070160009054906101000a900460ff1660038111156105ba57fe5b14610610576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260278152602001806112986027913960400191505060405180910390fd5b428111610668576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806112766022913960400191505060405180910390fd5b61067b83346111f290919063ffffffff16565b6001600088815260200190815260200160002060050181905550856001600088815260200190815260200160002060000181905550336001600088815260200190815260200160002060020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550846001600088815260200190815260200160002060030160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550836001600088815260200190815260200160002060040181905550826001600088815260200190815260200160002060060181905550600180600088815260200190815260200160002060070160006101000a81548160ff021916908360038111156107c257fe5b02179055506001600087815260200190815260200160002060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16867f5e919055312829285818d366d1cfe50a1ba27ce2c752b655cb2faa0179e1422733600160008b815260200190815260200160002060040154600160008c815260200190815260200160002060050154600160008d815260200190815260200160002060060154604051808573ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182815260200194505050505060405180910390a3505050505050565b80600160038111156108d257fe5b6001600083815260200190815260200160002060070160009054906101000a900460ff16600381111561090157fe5b14610957576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c8152602001806112bf602c913960400191505060405180910390fd5b8160016000828152602001908152602001600020600401544210156109e4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f726566756e6454696d657374616d7020686173206e6f7420706173736564000081525060200191505060405180910390fd5b60036001600085815260200190815260200160002060070160006101000a81548160ff02191690836003811115610a1757fe5b0217905550827ffe509803c09416b28ff3d8f690c8b0c61462a892c46d5430c8fb20abe472daf060405160405180910390a26001600084815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc610ad86001600087815260200190815260200160002060060154600160008881526020019081526020016000206005015461116f90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015610b03573d6000803e3d6000fd5b506001600084815260200190815260200160002060008082016000905560018201600090556002820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556003820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556004820160009055600582016000905560068201600090556007820160006101000a81549060ff02191690555050505050565b8160016003811115610bb757fe5b6001600083815260200190815260200160002060070160009054906101000a900460ff166003811115610be657fe5b14610c3c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c8152602001806112bf602c913960400191505060405180910390fd5b828260016000838152602001908152602001600020600401544210610cac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806112766022913960400191505060405180910390fd5b8160028083604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b60208310610d035780518252602082019150602081019050602083039250610ce0565b6001836020036101000a038019825116818451168082178552505050505050905001915050602060405180830381855afa158015610d45573d6000803e3d6000fd5b5050506040513d6020811015610d5a57600080fd5b8101908080519060200190929190505050604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b60208310610dbd5780518252602082019150602081019050602083039250610d9a565b6001836020036101000a038019825116818451168082178552505050505050905001915050602060405180830381855afa158015610dff573d6000803e3d6000fd5b5050506040513d6020811015610e1457600080fd5b810190808051906020019092919050505014610e98576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f736563726574206973206e6f7420636f7272656374000000000000000000000081525060200191505060405180910390fd5b83600160008781526020019081526020016000206001018190555060026001600087815260200190815260200160002060070160006101000a81548160ff02191690836003811115610ee657fe5b0217905550847f489e9ee921192823d1aa1ef800c9ffc642993538b1e7e43a4d46a91965e894ab856040518082815260200191505060405180910390a26001600086815260200190815260200160002060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc60016000888152602001908152602001600020600501549081150290604051600060405180830381858888f19350505050158015610fb5573d6000803e3d6000fd5b50600060016000878152602001908152602001600020600601541115611033573373ffffffffffffffffffffffffffffffffffffffff166108fc60016000888152602001908152602001600020600601549081150290604051600060405180830381858888f19350505050158015611031573d6000803e3d6000fd5b505b6001600086815260200190815260200160002060008082016000905560018201600090556002820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556003820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556004820160009055600582016000905560068201600090556007820160006101000a81549060ff021916905550505050505050565b60016020528060005260406000206000915090508060000154908060010154908060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060040154908060050154908060060154908060070160009054906101000a900460ff16905088565b60008183019050828110156111ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f536166654d617468206164642077726f6e672076616c7565000000000000000081525060200191505060405180910390fd5b92915050565b60008282111561126a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f536166654d617468207375622077726f6e672076616c7565000000000000000081525060200191505060405180910390fd5b81830390509291505056fe726566756e6454696d657374616d702068617320616c7265616479207061737365647377617020666f722074686973206861736820697320616c726561647920696e697469617465647377617020666f722074686973206861736820697320656d707479206f7220616c7265616479207370656e74a26469706673582212208d07310a954ace034e4806f12434db19cf14223f2242b10634e15fc808f208a664736f6c63430007010033"; - - public static final String FUNC_ADD = "add"; - - public static final String FUNC_DESTRUCT = "destruct"; - - public static final String FUNC_INITIATE = "initiate"; - - public static final String FUNC_REDEEM = "redeem"; - - public static final String FUNC_REFUND = "refund"; - - public static final String FUNC_SWAPS = "swaps"; - - public static final Event ADDED_EVENT = new Event("Added", - Arrays.>asList(new TypeReference(true) {}, new TypeReference

() {}, new TypeReference() {})); - ; - - public static final Event INITIATED_EVENT = new Event("Initiated", - Arrays.>asList(new TypeReference(true) {}, new TypeReference
(true) {}, new TypeReference
() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - ; - - public static final Event REDEEMED_EVENT = new Event("Redeemed", - Arrays.>asList(new TypeReference(true) {}, new TypeReference() {})); - ; - - public static final Event REFUNDED_EVENT = new Event("Refunded", - Arrays.>asList(new TypeReference(true) {})); - ; - - protected AtomicSwap(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AtomicSwap(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getAddedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ADDED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - AddedEventResponse typedResponse = new AddedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._sender = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable addedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public AddedEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ADDED_EVENT, log); - AddedEventResponse typedResponse = new AddedEventResponse(); - typedResponse.log = log; - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._sender = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable addedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ADDED_EVENT)); - return addedEventObservable(filter); - } - - public List getInitiatedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(INITIATED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - InitiatedEventResponse typedResponse = new InitiatedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._participant = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._initiator = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._refundTimestamp = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(2).getValue(); - typedResponse._payoff = (BigInteger) eventValues.getNonIndexedValues().get(3).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable initiatedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public InitiatedEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(INITIATED_EVENT, log); - InitiatedEventResponse typedResponse = new InitiatedEventResponse(); - typedResponse.log = log; - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._participant = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse._initiator = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._refundTimestamp = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(2).getValue(); - typedResponse._payoff = (BigInteger) eventValues.getNonIndexedValues().get(3).getValue(); - return typedResponse; - } - }); - } - - public Observable initiatedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(INITIATED_EVENT)); - return initiatedEventObservable(filter); - } - - public List getRedeemedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(REDEEMED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - RedeemedEventResponse typedResponse = new RedeemedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._secret = (byte[]) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable redeemedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public RedeemedEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(REDEEMED_EVENT, log); - RedeemedEventResponse typedResponse = new RedeemedEventResponse(); - typedResponse.log = log; - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._secret = (byte[]) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable redeemedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(REDEEMED_EVENT)); - return redeemedEventObservable(filter); - } - - public List getRefundedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(REFUNDED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - RefundedEventResponse typedResponse = new RefundedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable refundedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public RefundedEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(REFUNDED_EVENT, log); - RefundedEventResponse typedResponse = new RefundedEventResponse(); - typedResponse.log = log; - typedResponse._hashedSecret = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable refundedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(REFUNDED_EVENT)); - return refundedEventObservable(filter); - } - - public RemoteCall add(byte[] _hashedSecret, BigInteger vonValue) { - final Function function = new Function( - FUNC_ADD, - Arrays.asList(new Bytes32(_hashedSecret)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall destruct() { - final Function function = new Function( - FUNC_DESTRUCT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initiate(byte[] _hashedSecret, String _participant, BigInteger _refundTimestamp, BigInteger _payoff, BigInteger vonValue) { - final Function function = new Function( - FUNC_INITIATE, - Arrays.asList(new Bytes32(_hashedSecret), - new Address(_participant), - new Uint256(_refundTimestamp), - new Uint256(_payoff)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall redeem(byte[] _hashedSecret, byte[] _secret) { - final Function function = new Function( - FUNC_REDEEM, - Arrays.asList(new Bytes32(_hashedSecret), - new Bytes32(_secret)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall refund(byte[] _hashedSecret) { - final Function function = new Function( - FUNC_REFUND, - Arrays.asList(new Bytes32(_hashedSecret)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall> swaps(byte[] param0) { - final Function function = new Function(FUNC_SWAPS, - Arrays.asList(new Bytes32(param0)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference
() {}, new TypeReference
() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple8 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple8( - (byte[]) results.get(0).getValue(), - (byte[]) results.get(1).getValue(), - (String) results.get(2).getValue(), - (String) results.get(3).getValue(), - (BigInteger) results.get(4).getValue(), - (BigInteger) results.get(5).getValue(), - (BigInteger) results.get(6).getValue(), - (BigInteger) results.get(7).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AtomicSwap.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(AtomicSwap.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static AtomicSwap load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AtomicSwap(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AtomicSwap load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AtomicSwap(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class AddedEventResponse { - public Log log; - - public byte[] _hashedSecret; - - public String _sender; - - public BigInteger _value; - } - - public static class InitiatedEventResponse { - public Log log; - - public byte[] _hashedSecret; - - public String _participant; - - public String _initiator; - - public BigInteger _refundTimestamp; - - public BigInteger _value; - - public BigInteger _payoff; - } - - public static class RedeemedEventResponse { - public Log log; - - public byte[] _hashedSecret; - - public byte[] _secret; - } - - public static class RefundedEventResponse { - public Log log; - - public byte[] _hashedSecret; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BasicDataTypeConstantContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BasicDataTypeConstantContract.java deleted file mode 100644 index 1f764ffdb8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BasicDataTypeConstantContract.java +++ /dev/null @@ -1,238 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.abi.solidity.datatypes.generated.Bytes2; -import com.alaya.abi.solidity.datatypes.generated.Uint128; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple3; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BasicDataTypeConstantContract extends Contract { - private static final String BINARY = "60806040526040518060400160405280600581526020017f68656c6c6f0000000000000000000000000000000000000000000000000000008152506000908051906020019061004f9291906100ae565b506040518060400160405280600581526020017f776f726c640000000000000000000000000000000000000000000000000000008152506001908051906020019061009b9291906100ae565b503480156100a857600080fd5b5061014b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100ef57805160ff191683800117855561011d565b8280016001018555821561011d579182015b8281111561011c578251825591602001919060010190610101565b5b50905061012a919061012e565b5090565b5b8082111561014757600081600090555060010161012f565b5090565b610a718061015a6000396000f3fe6080604052600436106100fe5760003560e01c80636273899811610095578063a574971011610064578063a5749710146104cd578063a650b683146104f8578063ccb3441514610588578063ea07cdfa146105d5578063f8b2cb4f14610600576100fe565b8063627389981461031357806369c769171461033e5780637c66959d146103ce578063833f17d51461046c576100fe565b806338cc4831116100d157806338cc48311461022557806343e33562146102665780634dbe1d0f146102b2578063515899f0146102e8576100fe565b8063166aa6e614610103578063209652551461016057806332c7a283146101ab57806338023fb9146101e1575b600080fd5b34801561010f57600080fd5b5061013f6004803603602081101561012657600080fd5b81019080803560ff169060200190929190505050610665565b6040518082600381111561014f57fe5b815260200191505060405180910390f35b34801561016c57600080fd5b5061017561066f565b60405180846fffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390f35b3480156101b757600080fd5b506101c06106a0565b604051808260038111156101d057fe5b815260200191505060405180910390f35b610223600480360360208110156101f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506106b8565b005b34801561023157600080fd5b5061023a610702565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561027257600080fd5b5061027b610723565b60405180827dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b3480156102be57600080fd5b506102c7610750565b604051808260038111156102d757fe5b815260200191505060405180910390f35b3480156102f457600080fd5b506102fd610761565b6040518082815260200191505060405180910390f35b34801561031f57600080fd5b5061032861077e565b6040518082815260200191505060405180910390f35b34801561034a57600080fd5b5061035361078c565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610393578082015181840152602081019050610378565b50505050905090810190601f1680156103c05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103da57600080fd5b506103e3610890565b60405180847dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001935050505060405180910390f35b6104ae6004803603602081101561048257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506108e8565b6040518083815260200182151581526020019250505060405180910390f35b3480156104d957600080fd5b506104e261092a565b6040518082815260200191505060405180910390f35b34801561050457600080fd5b5061050d610932565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561054d578082015181840152602081019050610532565b50505050905090810190601f16801561057a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561059457600080fd5b5061059d6109d4565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b3480156105e157600080fd5b506105ea610a01565b6040518082815260200191505060405180910390f35b34801561060c57600080fd5b5061064f6004803603602081101561062357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1a565b6040518082815260200191505060405180910390f35b6000819050919050565b6000806000806003905060006404a817c80090506000660aa87bee5380009050828282955095509550505050909192565b6000806003808111156106af57fe5b90508091505090565b8073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501580156106fe573d6000803e3d6000fd5b5050565b6000807372ad2b713faa14c2c4cd2d7affe5d8f538968f5a90508091505090565b6000807f01f400000000000000000000000000000000000000000000000000000000000090508091505090565b600061075c6001610665565b905090565b600080805460018160011615610100020316600290049050905090565b600080600690508091505090565b60608060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108255780601f106107fa57610100808354040283529160200191610825565b820191906000526020600020905b81548152906001019060200180831161080857829003601f168201915b505050505090507f61000000000000000000000000000000000000000000000000000000000000008160008151811061085a57fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508091505090565b6000806000807f01f4000000000000000000000000000000000000000000000000000000000000905080816000600281106108c757fe5b1a60f81b826001600281106108d857fe5b1a60f81b93509350935050909192565b600080348373ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505091509150915091565b600047905090565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109ca5780601f1061099f576101008083540402835291602001916109ca565b820191906000526020600020905b8154815290600101906020018083116109ad57829003601f168201915b5050505050905090565b6000807fc80000000000000000000000000000000000000000000000000000000000000090508091505090565b60008060006003811115610a1157fe5b90508091505090565b60008173ffffffffffffffffffffffffffffffffffffffff1631905091905056fea264697066735822122043b1d81fb0057f8cc099c4fabcb9d6b32f403768112b2018e491a39e96cd4b7164736f6c63430007010033"; - - public static final String FUNC_GETADDRESS = "getAddress"; - - public static final String FUNC_GETBALANCE = "getBalance"; - - public static final String FUNC_GETCURRENTBALANCE = "getCurrentBalance"; - - public static final String FUNC_GETHEXLITERAA = "getHexLiteraA"; - - public static final String FUNC_GETHEXLITERAB = "getHexLiteraB"; - - public static final String FUNC_GETHEXLITERAC = "getHexLiteraC"; - - public static final String FUNC_GETINT = "getInt"; - - public static final String FUNC_GETSEASONA = "getSeasonA"; - - public static final String FUNC_GETSEASONB = "getSeasonB"; - - public static final String FUNC_GETSEASONINDEX = "getSeasonIndex"; - - public static final String FUNC_GETSTRA = "getStrA"; - - public static final String FUNC_GETSTRALENGTH = "getStrALength"; - - public static final String FUNC_GETVALUE = "getValue"; - - public static final String FUNC_GOSEND = "goSend"; - - public static final String FUNC_GOTRANSFER = "goTransfer"; - - public static final String FUNC_PRINTSEASON = "printSeason"; - - public static final String FUNC_SETSTRA = "setStrA"; - - protected BasicDataTypeConstantContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BasicDataTypeConstantContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddress() { - final Function function = new Function( - FUNC_GETADDRESS, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getBalance(String addr) { - final Function function = new Function(FUNC_GETBALANCE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getCurrentBalance() { - final Function function = new Function(FUNC_GETCURRENTBALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getHexLiteraA() { - final Function function = new Function(FUNC_GETHEXLITERAA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getHexLiteraB() { - final Function function = new Function(FUNC_GETHEXLITERAB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall> getHexLiteraC() { - final Function function = new Function(FUNC_GETHEXLITERAC, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (byte[]) results.get(0).getValue(), - (byte[]) results.get(1).getValue(), - (byte[]) results.get(2).getValue()); - } - }); - } - - public RemoteCall getInt() { - final Function function = new Function( - FUNC_GETINT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getSeasonA() { - final Function function = new Function(FUNC_GETSEASONA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSeasonB() { - final Function function = new Function(FUNC_GETSEASONB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSeasonIndex() { - final Function function = new Function(FUNC_GETSEASONINDEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getStrA() { - final Function function = new Function(FUNC_GETSTRA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getStrALength() { - final Function function = new Function(FUNC_GETSTRALENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> getValue() { - final Function function = new Function(FUNC_GETVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue()); - } - }); - } - - public RemoteCall goSend(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_GOSEND, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall goTransfer(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_GOTRANSFER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall printSeason(BigInteger s) { - final Function function = new Function(FUNC_PRINTSEASON, - Arrays.asList(new Uint8(s)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setStrA() { - final Function function = new Function(FUNC_SETSTRA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeConstantContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeConstantContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BasicDataTypeConstantContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeConstantContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BasicDataTypeConstantContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeConstantContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BasicDataTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BasicDataTypeContract.java deleted file mode 100644 index de64d937e6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BasicDataTypeContract.java +++ /dev/null @@ -1,89 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int8; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BasicDataTypeContract extends Contract { - private static final String BINARY = "60806040527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60005560018055600280556001600360006101000a81548160ff021916908360ff16021790555060ff600360016101000a81548160ff021916908360ff1602179055506001600360026101000a81548161ffff021916908361ffff16021790555061ffff600360046101000a81548161ffff021916908361ffff1602179055506001600360066101000a81548160ff021916908360000b60ff160217905550607f600360076101000a81548160ff021916908360000b60ff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600360086101000a81548160ff021916908360000b60ff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80600360096101000a81548160ff021916908360000b60ff16021790555060016003600a6101000a81548160ff02191690831515021790555060006003600b6101000a81548160ff0219169083151502179055507f61000000000000000000000000000000000000000000000000000000000000006003600c6101000a81548160ff021916908360f81c0217905550600160f81b6003600d6101000a81548160ff021916908360f81c02179055507f61620000000000000000000000000000000000000000000000000000000000006003600e6101000a81548161ffff021916908360f01c02179055507f6162630000000000000000000000000000000000000000000000000000000000600360106101000a81548162ffffff021916908360e81c02179055506040518060400160405280600181526020017f6100000000000000000000000000000000000000000000000000000000000000815250600490805190602001906102b392919061035e565b506040518060400160405280600281526020017f6162000000000000000000000000000000000000000000000000000000000000815250600590805190602001906102ff92919061035e565b506040518060400160405280600381526020017f61626300000000000000000000000000000000000000000000000000000000008152506006908051906020019061034b92919061035e565b5034801561035857600080fd5b506103fb565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061039f57805160ff19168380011785556103cd565b828001600101855582156103cd579182015b828111156103cc5782518255916020019190600101906103b1565b5b5090506103da91906103de565b5090565b5b808211156103f75760008160009055506001016103df565b5090565b6101a58061040a6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806307da3eae146100515780633d9ceb371461006f5780635c5c8419146100b7578063d29f1598146100d5575b600080fd5b61005961011d565b6040518082815260200191505060405180910390f35b61009e6004803603602081101561008557600080fd5b81019080803560000b906020019092919050505061013b565b604051808260000b815260200191505060405180910390f35b6100bf610148565b6040518082815260200191505060405180910390f35b610104600480360360208110156100eb57600080fd5b81019080803560ff169060200190929190505050610162565b604051808260ff16815260200191505060405180910390f35b60006006805460018160011615610100020316600290049050905090565b6000600182019050919050565b60006003600e9054906101000a905050600260ff16905090565b600060018201905091905056fea264697066735822122090f86fc7834e49f56a73a160d49887f4b563dcf36c068c04c200e442e93dafd664736f6c63430007010033"; - - public static final String FUNC_ADDINTOVERFLOW = "addIntOverflow"; - - public static final String FUNC_ADDUINTOVERFLOW = "addUintOverflow"; - - public static final String FUNC_GETBYTES1LENGTH = "getBytes1Length"; - - public static final String FUNC_GETBYTESLENGTH = "getBytesLength"; - - protected BasicDataTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BasicDataTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall addIntOverflow(BigInteger a) { - final Function function = new Function(FUNC_ADDINTOVERFLOW, - Arrays.asList(new Int8(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall addUintOverflow(BigInteger a) { - final Function function = new Function(FUNC_ADDUINTOVERFLOW, - Arrays.asList(new Uint8(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBytes1Length() { - final Function function = new Function(FUNC_GETBYTES1LENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBytesLength() { - final Function function = new Function(FUNC_GETBYTESLENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BasicDataTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BasicDataTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BasicDataTypeDeleteContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BasicDataTypeDeleteContract.java deleted file mode 100644 index 5295d811e8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BasicDataTypeDeleteContract.java +++ /dev/null @@ -1,190 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Bytes3; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tuples.generated.Tuple6; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BasicDataTypeDeleteContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610a37806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c8063b2548ecc11610071578063b2548ecc14610177578063c726046714610255578063d5e350e31461025f578063d8c9d5f514610280578063e9cafac21461028a578063f0ebce5a14610294576100a9565b80630849cc99146100ae5780630860dca9146100cc57806309b1b3f2146100d65780630d35d126146101635780633edf92a81461016d575b600080fd5b6100b66102bd565b6040518082815260200191505060405180910390f35b6100d46102ca565b005b6100de6102de565b604051808360ff16815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561012757808201518184015260208101905061010c565b50505050905090810190601f1680156101545780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61016b61039e565b005b610175610614565b005b61017f61063d565b6040518087151581526020018681526020018573ffffffffffffffffffffffffffffffffffffffff168152602001847cffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156102155780820151818401526020810190506101fa565b50505050905090810190601f1680156102425780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390f35b61025d610741565b005b6102676107a7565b604051808260ff16815260200191505060405180910390f35b6102886107d3565b005b6102926107fe565b005b61029c61080e565b604051808260028111156102ac57fe5b815260200191505060405180910390f35b6000600580549050905090565b600660006101000a81549060ff0219169055565b60006060600760000160009054906101000a900460ff166007600101808054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561038f5780601f106103645761010080835404028352916020019161038f565b820191906000526020600020905b81548152906001019060200180831161037257829003601f168201915b50505050509050915091509091565b60016000806101000a81548160ff021916908315150217905550600260018190555033600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f3132330000000000000000000000000000000000000000000000000000000000600260146101000a81548162ffffff021916908360e81c02179055506040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525060039080519060200190610489929190610825565b5060056004819055506040518060400160405280600160ff1681526020016040518060400160405280600481526020017f456c6c6100000000000000000000000000000000000000000000000000000000815250815250600760008201518160000160006101000a81548160ff021916908360ff160217905550602082015181600101908051906020019061051f929190610825565b509050506040518060600160405280600160ff168152602001600260ff168152602001600360ff16815250600590600361055a9291906108a5565b50600160096000600160ff16815260200190815260200160002060006101000a81548160ff021916908360ff160217905550600260096000600260ff16815260200190815260200160002060006101000a81548160ff021916908360ff160217905550600360096000600360ff16815260200190815260200160002060006101000a81548160ff021916908360ff1602179055506002600660006101000a81548160ff0219169083600281111561060d57fe5b0217905550565b60096000600260ff16815260200190815260200160002060006101000a81549060ff0219169055565b600080600080606060008060009054906101000a900460ff16600154600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600260149054906101000a900460e81b6003600454818054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107265780601f106106fb57610100808354040283529160200191610726565b820191906000526020600020905b81548152906001019060200180831161070957829003601f168201915b50505050509150955095509550955095509550909192939495565b6000806101000a81549060ff0219169055600160009055600260006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600260146101000a81549062ffffff02191690556003600061079f919061094c565b600460009055565b600060096000600260ff16815260200190815260200160002060009054906101000a900460ff16905090565b6007600080820160006101000a81549060ff02191690556001820160006107fa919061094c565b5050565b6005600061080c9190610994565b565b6000600660009054906101000a900460ff16905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061086657805160ff1916838001178555610894565b82800160010185558215610894579182015b82811115610893578251825591602001919060010190610878565b5b5090506108a191906109bc565b5090565b82805482825590600052602060002090601f0160209004810192821561093b5791602002820160005b8382111561090c57835183826101000a81548160ff021916908360ff16021790555092602001926001016020816000010492830192600103026108ce565b80156109395782816101000a81549060ff021916905560010160208160000104928301926001030261090c565b505b50905061094891906109d9565b5090565b50805460018160011615610100020316600290046000825580601f106109725750610991565b601f01602090049060005260206000209081019061099091906109bc565b5b50565b50805460008255601f0160209004906000526020600020908101906109b991906109bc565b50565b5b808211156109d55760008160009055506001016109bd565b5090565b5b808211156109fd57600081816101000a81549060ff0219169055506001016109da565b509056fea264697066735822122010b0386ca1fd3e59d2e8e7624ef770e13d9a531b65b55ee630299dc1bff06bcc64736f6c63430007010033"; - - public static final String FUNC_DELETEARRAY = "deleteArray"; - - public static final String FUNC_DELETEBASICDATA = "deleteBasicData"; - - public static final String FUNC_DELETEENUM = "deleteEnum"; - - public static final String FUNC_DELETEMAPPING = "deleteMapping"; - - public static final String FUNC_DELETESTRUCT = "deleteStruct"; - - public static final String FUNC_GETARRAYLENGTH = "getArrayLength"; - - public static final String FUNC_GETBASICDATA = "getBasicData"; - - public static final String FUNC_GETENUM = "getEnum"; - - public static final String FUNC_GETMAPPING = "getMapping"; - - public static final String FUNC_GETSTRUCT = "getStruct"; - - public static final String FUNC_INITBASICDATA = "initBasicData"; - - protected BasicDataTypeDeleteContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BasicDataTypeDeleteContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall deleteArray() { - final Function function = new Function( - FUNC_DELETEARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteBasicData() { - final Function function = new Function( - FUNC_DELETEBASICDATA, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteEnum() { - final Function function = new Function( - FUNC_DELETEENUM, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteMapping() { - final Function function = new Function( - FUNC_DELETEMAPPING, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteStruct() { - final Function function = new Function( - FUNC_DELETESTRUCT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getArrayLength() { - final Function function = new Function(FUNC_GETARRAYLENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> getBasicData() { - final Function function = new Function(FUNC_GETBASICDATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference

() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple6 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple6( - (Boolean) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (String) results.get(2).getValue(), - (byte[]) results.get(3).getValue(), - (String) results.get(4).getValue(), - (BigInteger) results.get(5).getValue()); - } - }); - } - - public RemoteCall getEnum() { - final Function function = new Function(FUNC_GETENUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getMapping() { - final Function function = new Function(FUNC_GETMAPPING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> getStruct() { - final Function function = new Function(FUNC_GETSTRUCT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue()); - } - }); - } - - public RemoteCall initBasicData() { - final Function function = new Function( - FUNC_INITBASICDATA, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeDeleteContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BasicDataTypeDeleteContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BasicDataTypeDeleteContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeDeleteContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BasicDataTypeDeleteContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeDeleteContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BlockTransactionPropertiesFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BlockTransactionPropertiesFunctions.java deleted file mode 100644 index daba6b7df5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BlockTransactionPropertiesFunctions.java +++ /dev/null @@ -1,184 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.Bytes4; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BlockTransactionPropertiesFunctions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061052a806100206000396000f3fe6080604052600436106100dd5760003560e01c8063a16963b31161007f578063d12d910211610059578063d12d910214610314578063df1f29ee1461035e578063e9413d381461039f578063edb4b865146103ee576100dd565b8063a16963b314610293578063ab70fd69146102be578063bbe4fd50146102e9576100dd565b80633bc5de30116100bb5780633bc5de301461016c57806342cbb15c146101fc5780635e01eb5a14610227578063796b89b914610268576100dd565b806312e05dd1146100e2578063209652551461010d5780632df8e9491461012b575b600080fd5b3480156100ee57600080fd5b506100f7610419565b6040518082815260200191505060405180910390f35b610115610421565b6040518082815260200191505060405180910390f35b34801561013757600080fd5b50610140610429565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017857600080fd5b50610181610431565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101c15780820151818401526020810190506101a6565b50505050905090810190601f1680156101ee5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561020857600080fd5b5061021161047e565b6040518082815260200191505060405180910390f35b34801561023357600080fd5b5061023c610486565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561027457600080fd5b5061027d61048e565b6040518082815260200191505060405180910390f35b34801561029f57600080fd5b506102a8610496565b6040518082815260200191505060405180910390f35b3480156102ca57600080fd5b506102d361049e565b6040518082815260200191505060405180910390f35b3480156102f557600080fd5b506102fe6104a6565b6040518082815260200191505060405180910390f35b34801561032057600080fd5b506103296104ae565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b34801561036a57600080fd5b506103736104d9565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103ab57600080fd5b506103d8600480360360208110156103c257600080fd5b81019080803590602001909291905050506104e1565b6040518082815260200191505060405180910390f35b3480156103fa57600080fd5b506104036104ec565b6040518082815260200191505060405180910390f35b600044905090565b600034905090565b600041905090565b60606000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050905090565b600043905090565b600033905090565b600042905090565b600045905090565b60003a905090565b600042905090565b600080357fffffffff0000000000000000000000000000000000000000000000000000000016905090565b600032905090565b600081409050919050565b60005a90509056fea264697066735822122054fd3994a58f6a27230a5e8b4508ea2703d139b637d203cb59b58485b33dc8e864736f6c63430007010033"; - - public static final String FUNC_GETBLOCKCOINBASE = "getBlockCoinbase"; - - public static final String FUNC_GETBLOCKDIFFICULTY = "getBlockDifficulty"; - - public static final String FUNC_GETBLOCKNUMBER = "getBlockNumber"; - - public static final String FUNC_GETBLOCKTIMESTAMP = "getBlockTimestamp"; - - public static final String FUNC_GETBLOCKHASH = "getBlockhash"; - - public static final String FUNC_GETDATA = "getData"; - - public static final String FUNC_GETGASLEFT = "getGasleft"; - - public static final String FUNC_GETGASLIMIT = "getGaslimit"; - - public static final String FUNC_GETGASPRICE = "getGasprice"; - - public static final String FUNC_GETNOW = "getNow"; - - public static final String FUNC_GETORIGIN = "getOrigin"; - - public static final String FUNC_GETSENDER = "getSender"; - - public static final String FUNC_GETSIG = "getSig"; - - public static final String FUNC_GETVALUE = "getValue"; - - protected BlockTransactionPropertiesFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BlockTransactionPropertiesFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBlockCoinbase() { - final Function function = new Function(FUNC_GETBLOCKCOINBASE, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getBlockDifficulty() { - final Function function = new Function(FUNC_GETBLOCKDIFFICULTY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBlockNumber() { - final Function function = new Function(FUNC_GETBLOCKNUMBER, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBlockTimestamp() { - final Function function = new Function(FUNC_GETBLOCKTIMESTAMP, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBlockhash(BigInteger blockNumber) { - final Function function = new Function(FUNC_GETBLOCKHASH, - Arrays.asList(new Uint256(blockNumber)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getData() { - final Function function = new Function(FUNC_GETDATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getGasleft() { - final Function function = new Function(FUNC_GETGASLEFT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getGaslimit() { - final Function function = new Function(FUNC_GETGASLIMIT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getGasprice() { - final Function function = new Function(FUNC_GETGASPRICE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getNow() { - final Function function = new Function(FUNC_GETNOW, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getOrigin() { - final Function function = new Function(FUNC_GETORIGIN, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getSender() { - final Function function = new Function(FUNC_GETSENDER, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getSig() { - final Function function = new Function(FUNC_GETSIG, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getValue(BigInteger vonValue) { - final Function function = new Function( - FUNC_GETVALUE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BlockTransactionPropertiesFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BlockTransactionPropertiesFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BlockTransactionPropertiesFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BlockTransactionPropertiesFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BlockTransactionPropertiesFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BlockTransactionPropertiesFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Blockhash.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Blockhash.java deleted file mode 100644 index f26d61a388..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Blockhash.java +++ /dev/null @@ -1,95 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Blockhash extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061017c806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80630f7536281461005c57806366b3eb341461007a578063696d67c3146100985780639e1f194e146100b6578063e1b99d74146100d4575b600080fd5b6100646100f2565b6040518082815260200191505060405180910390f35b610082610103565b6040518082815260200191505060405180910390f35b6100a0610115565b6040518082815260200191505060405180910390f35b6100be610127565b6040518082815260200191505060405180910390f35b6100dc610138565b6040518082815260200191505060405180910390f35b60008060ff43034090508091505090565b60008061010043034090508091505090565b60008061010143034090508091505090565b600080601e43034090508091505090565b60008043409050809150509056fea2646970667358221220610fddbe2183f48318759d7710068125edba1d268795a1d1b83f7fd2c8e64f5864736f6c63430007010033"; - - public static final String FUNC_GETBLOCKHASHBEFORE0 = "getBlockhashbefore0"; - - public static final String FUNC_GETBLOCKHASHBEFORE255 = "getBlockhashbefore255"; - - public static final String FUNC_GETBLOCKHASHBEFORE256 = "getBlockhashbefore256"; - - public static final String FUNC_GETBLOCKHASHBEFORE257 = "getBlockhashbefore257"; - - public static final String FUNC_GETBLOCKHASHBEFORE30 = "getBlockhashbefore30"; - - protected Blockhash(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Blockhash(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBlockhashbefore0() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE0, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBlockhashbefore255() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE255, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBlockhashbefore256() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE256, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBlockhashbefore257() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE257, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBlockhashbefore30() { - final Function function = new Function(FUNC_GETBLOCKHASHBEFORE30, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Blockhash.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Blockhash.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Blockhash load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Blockhash(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Blockhash load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Blockhash(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BubbleSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BubbleSort.java deleted file mode 100644 index 790d23ecd2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/BubbleSort.java +++ /dev/null @@ -1,86 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class BubbleSort extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061033f806100206000396000f3fe6080604052600436106100295760003560e01c8063970f17bd1461002e578063f6dd00aa1461009a575b600080fd5b34801561003a57600080fd5b5061004361015c565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561008657808201518184015260208101905061006b565b505050509050019250505060405180910390f35b61015a600480360360408110156100b057600080fd5b81019080803590602001906401000000008111156100cd57600080fd5b8201836020820111156100df57600080fd5b8035906020019184602083028401116401000000008311171561010157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803590602001909291905050506101b4565b005b606060008054806020026020016040519081016040528092919081815260200182805480156101aa57602002820191906000526020600020905b815481526020019060010190808311610196575b5050505050905090565b60005b600182038110156102835760005b816001840303811015610275578360018201815181106101e157fe5b60200260200101518482815181106101f557fe5b6020026020010151131561026857600084828151811061021157fe5b6020026020010151905084600183018151811061022a57fe5b602002602001015185838151811061023e57fe5b6020026020010181815250508085600184018151811061025a57fe5b602002602001018181525050505b80806001019150506101c5565b5080806001019150506101b7565b50816000908051906020019061029a92919061029f565b505050565b8280548282559060005260206000209081019282156102db579160200282015b828111156102da5782518255916020019190600101906102bf565b5b5090506102e891906102ec565b5090565b5b808211156103055760008160009055506001016102ed565b509056fea2646970667358221220e020a843ceafb463f504fc2ca521f63bd2dcc59d73416391a1c230343619d4ef64736f6c63430007010033"; - - public static final String FUNC_BUBBLEARRAYS = "BubbleArrays"; - - public static final String FUNC_GET_ARR = "get_arr"; - - protected BubbleSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BubbleSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall BubbleArrays(List arr, BigInteger n, BigInteger vonValue) { - final Function function = new Function( - FUNC_BUBBLEARRAYS, - Arrays.asList(new DynamicArray( - Int256.class, - com.alaya.abi.solidity.Utils.typeMap(arr, Int256.class)), - new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_arr() { - final Function function = new Function(FUNC_GET_ARR, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BubbleSort.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(BubbleSort.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static BubbleSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BubbleSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BubbleSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BubbleSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CallExternal.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CallExternal.java deleted file mode 100644 index b6f693ca81..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CallExternal.java +++ /dev/null @@ -1,113 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CallExternal extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610223806100206000396000f3fe60806040526004361061001e5760003560e01c8063de29278914610023575b600080fd5b61002b610041565b6040518082815260200191505060405180910390f35b6000806040516100509061012d565b604051809103906000f08015801561006c573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff1663569c5f6d6040518163ffffffff1660e01b815260040160206040518083038186803b1580156100b557600080fd5b505afa1580156100c9573d6000803e3d6000fd5b505050506040513d60208110156100df57600080fd5b810190808051906020019092919050505091507f0a9f1213b326cb97c7a18f80791661027e1cf7a53125f3d6729d0ae093bd8ad2826040518082815260200191505060405180910390a15090565b60b48061013a8339019056fe6080604052348015600f57600080fd5b5060968061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063569c5f6d14602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b60008060019050600060029050808201925050509056fea2646970667358221220849feb7e1607a5cd0f6e16bed143d82e8f57badf48987a05567131c34fc8b2a064736f6c63430007010033a26469706673582212206861e6fa0e3c2f2bd4ee1c57c9dd13c52744bcb2ac782096a2a590d16e81b88c64736f6c63430007010033"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final Event EXTERNALCVALUE_EVENT = new Event("ExternalCValue", - Arrays.>asList(new TypeReference() {})); - ; - - protected CallExternal(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallExternal(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getExternalCValueEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EXTERNALCVALUE_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ExternalCValueEventResponse typedResponse = new ExternalCValueEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable externalCValueEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ExternalCValueEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EXTERNALCVALUE_EVENT, log); - ExternalCValueEventResponse typedResponse = new ExternalCValueEventResponse(); - typedResponse.log = log; - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable externalCValueEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EXTERNALCVALUE_EVENT)); - return externalCValueEventObservable(filter); - } - - public RemoteCall getResult(BigInteger vonValue) { - final Function function = new Function( - FUNC_GETRESULT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallExternal.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallExternal.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CallExternal load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallExternal(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallExternal load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallExternal(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class ExternalCValueEventResponse { - public Log log; - - public BigInteger value; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CalledContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CalledContract.java deleted file mode 100644 index be6b935334..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CalledContract.java +++ /dev/null @@ -1,51 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CalledContract extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b50607080601d6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806335b09a6e14602d575b600080fd5b60336035565b005b600080fdfea26469706673582212209bfb70d28f589a77e0ce3e7b18ee2655b1be9bae726c7e5c516b59c12903552764736f6c63430007010033"; - - public static final String FUNC_SOMEFUNCTION = "someFunction"; - - protected CalledContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CalledContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public void someFunction() { - throw new RuntimeException("cannot call constant function with void return type"); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CalledContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CalledContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CalledContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CalledContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CalledContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CalledContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CallerOne.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CallerOne.java deleted file mode 100644 index 5f30e51f9f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CallerOne.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CallerOne extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506105c7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c146100465780637b8ed01814610064578063f88bef8c14610082575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b6040518082815260200191505060405180910390f35b61008a61009b565b005b60005481565b60008054905090565b60006040516100a9906101bd565b604051809103906000f0801580156100c5573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff167f371303c051bff726100ad13871cababf50c20dd920fca137e519f98f089a74b4604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b60208310610152578051825260208201915060208101905060208303925061012f565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101b2576040519150601f19603f3d011682016040523d82523d6000602084013e6101b7565b606091505b50505050565b6103c7806101cb8339019056fe608060405234801561001057600080fd5b506103a7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c14610046578063371303c0146100645780635a3617561461006e575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b005b61007661020b565b6040518082815260200191505060405180910390f35b60005481565b60006040516100a090610214565b604051809103906000f0801580156100bc573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff167f371303c051bff726100ad13871cababf50c20dd920fca137e519f98f089a74b4604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b602083106101495780518252602082019150602081019050602083039250610126565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101a9576040519150601f19603f3d011682016040523d82523d6000602084013e6101ae565b606091505b5050507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150565b60008054905090565b610150806102228339019056fe608060405234801561001057600080fd5b50610130806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630c55699c14604157806317f936fb14605d578063371303c0146079575b600080fd5b60476081565b6040518082815260200191505060405180910390f35b60636087565b6040518082815260200191505060405180910390f35b607f6090565b005b60005481565b60008054905090565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a156fea2646970667358221220cad78347f3612ff78c53aa548f2a06dd0a405e38230359614191b0c7081bbd2364736f6c63430007010033a26469706673582212209d23f1a2cbf08731a2aeee1a8e86b1fb1df68ecbb44f19c803a453e5802afd1964736f6c63430007010033a2646970667358221220606f95bea2caa068b41b2b9ed5f29cf45311a153dfb5292d580861aa1f13716664736f6c63430007010033"; - - public static final String FUNC_GETCALLERX = "getCallerX"; - - public static final String FUNC_INC_DELEGATECALL = "inc_delegatecall"; - - public static final String FUNC_X = "x"; - - protected CallerOne(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallerOne(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getCallerX() { - final Function function = new Function(FUNC_GETCALLERX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc_delegatecall() { - final Function function = new Function( - FUNC_INC_DELEGATECALL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerOne.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerOne.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CallerOne load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallerOne(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallerOne load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallerOne(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CallerThree.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CallerThree.java deleted file mode 100644 index 2f095fec92..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CallerThree.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CallerThree extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610130806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630c55699c14604157806317f936fb14605d578063371303c0146079575b600080fd5b60476081565b6040518082815260200191505060405180910390f35b60636087565b6040518082815260200191505060405180910390f35b607f6090565b005b60005481565b60008054905090565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a156fea2646970667358221220cad78347f3612ff78c53aa548f2a06dd0a405e38230359614191b0c7081bbd2364736f6c63430007010033"; - - public static final String FUNC_GETCALLEETHREEX = "getCalleeThreeX"; - - public static final String FUNC_INC = "inc"; - - public static final String FUNC_X = "x"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected CallerThree(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallerThree(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall getCalleeThreeX() { - final Function function = new Function(FUNC_GETCALLEETHREEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc() { - final Function function = new Function( - FUNC_INC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerThree.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerThree.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CallerThree load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallerThree(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallerThree load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallerThree(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String seder; - - public BigInteger x; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CallerTwo.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CallerTwo.java deleted file mode 100644 index 414d2ed249..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CallerTwo.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CallerTwo extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506103a7806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c14610046578063371303c0146100645780635a3617561461006e575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c610092565b005b61007661020b565b6040518082815260200191505060405180910390f35b60005481565b60006040516100a090610214565b604051809103906000f0801580156100bc573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff167f371303c051bff726100ad13871cababf50c20dd920fca137e519f98f089a74b4604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b602083106101495780518252602082019150602081019050602083039250610126565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101a9576040519150601f19603f3d011682016040523d82523d6000602084013e6101ae565b606091505b5050507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150565b60008054905090565b610150806102228339019056fe608060405234801561001057600080fd5b50610130806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630c55699c14604157806317f936fb14605d578063371303c0146079575b600080fd5b60476081565b6040518082815260200191505060405180910390f35b60636087565b6040518082815260200191505060405180910390f35b607f6090565b005b60005481565b60008054905090565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a156fea2646970667358221220cad78347f3612ff78c53aa548f2a06dd0a405e38230359614191b0c7081bbd2364736f6c63430007010033a26469706673582212209d23f1a2cbf08731a2aeee1a8e86b1fb1df68ecbb44f19c803a453e5802afd1964736f6c63430007010033"; - - public static final String FUNC_GETCALLEEX = "getCalleeX"; - - public static final String FUNC_INC = "inc"; - - public static final String FUNC_X = "x"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected CallerTwo(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallerTwo(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall getCalleeX() { - final Function function = new Function(FUNC_GETCALLEEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc() { - final Function function = new Function( - FUNC_INC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerTwo.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CallerTwo.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CallerTwo load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallerTwo(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallerTwo load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallerTwo(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String seder; - - public BigInteger x; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ChainFunction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ChainFunction.java deleted file mode 100644 index 4a05acc26d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ChainFunction.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ChainFunction extends Contract { - private static final String BINARY = "6080604052336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550346001819055506000600260006101000a81548160ff021916908315150217905550610171806100756000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80637eed92c01461003b5780639f9232f414610095575b600080fd5b6100696004803603602081101561005157600080fd5b810190808035151590602001909291905050506100f9565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100cd600480360360408110156100ab57600080fd5b8101908080351515906020019092919080359060200190929190505050610114565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600115158215151461010c57600080fd5b339050919050565b6000600115158315151461012457fe5b600982101561013257600080fd5b3390509291505056fea2646970667358221220907653fefc300b2403ceece2db08b6282a60f84de0746d6b641194417b34249164736f6c63430007010033"; - - public static final String FUNC_DECEASED = "deceased"; - - public static final String FUNC_DECEASEDWITHMODIFY = "deceasedWithModify"; - - protected ChainFunction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ChainFunction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - return deployRemoteCall(ChainFunction.class, web3j, credentials, contractGasProvider, BINARY, "", initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - return deployRemoteCall(ChainFunction.class, web3j, transactionManager, contractGasProvider, BINARY, "", initialVonValue, chainId); - } - - public RemoteCall deceased(Boolean isDeceased, BigInteger less9) { - final Function function = new Function(FUNC_DECEASED, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Bool(isDeceased), - new com.alaya.abi.solidity.datatypes.generated.Uint256(less9)), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall deceasedWithModify(Boolean _isDeceased) { - final Function function = new Function(FUNC_DECEASEDWITHMODIFY, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Bool(_isDeceased)), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static ChainFunction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ChainFunction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ChainFunction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ChainFunction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ConstructorInternalDeclaraction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ConstructorInternalDeclaraction.java deleted file mode 100644 index 68f901b8c6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ConstructorInternalDeclaraction.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorInternalDeclaraction extends Contract { - private static final String BINARY = "6080604052600a60005534801561001557600080fd5b506040516100e43803806100e48339818101604052602081101561003857600080fd5b8101908080519060200190929190505050806000819055505060858061005f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806306661abd14602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000548156fea264697066735822122008b699b37ad9c00ce7e27f22d232a3e3f38ba50d972798e06c2a2a032cd8c76464736f6c63430007010033"; - - public static final String FUNC_COUNT = "count"; - - protected ConstructorInternalDeclaraction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorInternalDeclaraction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorInternalDeclaraction.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorInternalDeclaraction.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall count() { - final Function function = new Function(FUNC_COUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static ConstructorInternalDeclaraction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalDeclaraction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorInternalDeclaraction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalDeclaraction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ConstructorInternalDeclaractionSub.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ConstructorInternalDeclaractionSub.java deleted file mode 100644 index e2bce713f3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ConstructorInternalDeclaractionSub.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorInternalDeclaractionSub extends Contract { - private static final String BINARY = "6080604052600a60005534801561001557600080fd5b506040516101a73803806101a78339818101604052602081101561003857600080fd5b810190808051906020019092919050505080806000819055505050610145806100626000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806306661abd1461004657806382ab890a14610064578063a87d942c146100c3575b600080fd5b61004e6100e1565b6040518082815260200191505060405180910390f35b6100906004803603602081101561007a57600080fd5b81019080803590602001909291905050506100e7565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6100cb610106565b6040518082815260200191505060405180910390f35b60005481565b6000808260008082825401925050819055503360005491509150915091565b6000805490509056fea264697066735822122058c44994e40d27daee26833f27853dcf97839d56a058cf752fe0816f2672eafd64736f6c63430007010033"; - - public static final String FUNC_COUNT = "count"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_UPDATE = "update"; - - protected ConstructorInternalDeclaractionSub(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorInternalDeclaractionSub(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorInternalDeclaractionSub.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorInternalDeclaractionSub.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall count() { - final Function function = new Function(FUNC_COUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ConstructorInternalDeclaractionSub load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalDeclaractionSub(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorInternalDeclaractionSub load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorInternalDeclaractionSub(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ConstructorPublicDeclaraction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ConstructorPublicDeclaraction.java deleted file mode 100644 index c83491281b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ConstructorPublicDeclaraction.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorPublicDeclaraction extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b5060405161016c38038061016c8339818101604052602081101561003757600080fd5b8101908080519060200190929190505050806000819055505061010d8061005f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806382ab890a146037578063a87d942c146093575b600080fd5b606060048036036020811015604b57600080fd5b810190808035906020019092919050505060af565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b609960ce565b6040518082815260200191505060405180910390f35b6000808260008082825401925050819055503360005491509150915091565b6000805490509056fea2646970667358221220c7df467222d9b14dff3a51976186251f511e5625cbe976e5361a98888da9066e64736f6c63430007010033"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_UPDATE = "update"; - - protected ConstructorPublicDeclaraction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorPublicDeclaraction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorPublicDeclaraction.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorPublicDeclaraction.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ConstructorPublicDeclaraction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorPublicDeclaraction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorPublicDeclaraction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorPublicDeclaraction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ConstructorTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ConstructorTest.java deleted file mode 100644 index ca06b9628d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ConstructorTest.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ConstructorTest extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b506040516101a43803806101a48339818101604052602081101561003757600080fd5b810190808051906020019092919050505080600081905550506101458061005f6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806306661abd1461004657806382ab890a14610064578063a87d942c146100c3575b600080fd5b61004e6100e1565b6040518082815260200191505060405180910390f35b6100906004803603602081101561007a57600080fd5b81019080803590602001909291905050506100e7565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6100cb610106565b6040518082815260200191505060405180910390f35b60005481565b6000808260008082825401925050819055503360005491509150915091565b6000805490509056fea2646970667358221220d02d5f229c316f64c76febae9c4f43773699215ae0c869d1c01fce1ec3aa757364736f6c63430007010033"; - - public static final String FUNC_COUNT = "count"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_UPDATE = "update"; - - protected ConstructorTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ConstructorTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorTest.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _count) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_count))); - return deployRemoteCall(ConstructorTest.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall count() { - final Function function = new Function(FUNC_COUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ConstructorTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ConstructorTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ConstructorTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ConstructorTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ContractAdress.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ContractAdress.java deleted file mode 100644 index 4172871cf1..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ContractAdress.java +++ /dev/null @@ -1,45 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ContractAdress extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b50604880601d6000396000f3fe6080604052348015600f57600080fd5b5000fea2646970667358221220ffda2f1c06bf9075b9a2f41f788546080985da9627afc1a689a7d4cb5d436d3a64736f6c63430007010033"; - - protected ContractAdress(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractAdress(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAdress.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAdress.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ContractAdress load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractAdress(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractAdress load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractAdress(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ContractAndAddress.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ContractAndAddress.java deleted file mode 100644 index c236d6f0f3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ContractAndAddress.java +++ /dev/null @@ -1,98 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ContractAndAddress extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506104fe806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806302e9cd8b1461005c57806346df069e14610090578063a52e2905146100c4578063a7010a66146100f8578063c105b57c14610102575b600080fd5b610064610136565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610098610160565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100cc610189565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101006101b3565b005b61010a6103b6565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006040516101c1906103e0565b604051809103906000f0801580156101dd573d6000803e3d6000fd5b506000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550604051610229906103ec565b604051809103906000f080158015610245573d6000803e3d6000fd5b50600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550604051610292906103ec565b604051809103906000f0801580156102ae573d6000803e3d6000fd5b50600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606b806103f983390190565b6065806104648339019056fe6080604052348015600f57600080fd5b50604e80601d6000396000f3fe608060405236600a57005b348015601557600080fd5b5000fea26469706673582212202101511779e642022e671470f528eb7cf5638ce6489f60c62443288e41e15bb864736f6c634300070100336080604052348015600f57600080fd5b50604880601d6000396000f3fe6080604052348015600f57600080fd5b5000fea2646970667358221220ffda2f1c06bf9075b9a2f41f788546080985da9627afc1a689a7d4cb5d436d3a64736f6c63430007010033a264697066735822122005376edc9139184139f84aae478c0476a537ab6d3fd5029ebfb4d0101201f5e364736f6c63430007010033"; - - public static final String FUNC_GETADDRESSTOPAYABLE = "getAddressToPayable"; - - public static final String FUNC_GETNONALCONTRACTADDRESS = "getNonalContractAddress"; - - public static final String FUNC_GETNONALPAYABLEADDRESS = "getNonalPayableAddress"; - - public static final String FUNC_GETPAYABLETOADDRESS = "getPayableToAddress"; - - public static final String FUNC_PAYABLEORNOT = "payableOrNot"; - - protected ContractAndAddress(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractAndAddress(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddressToPayable() { - final Function function = new Function(FUNC_GETADDRESSTOPAYABLE, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getNonalContractAddress() { - final Function function = new Function(FUNC_GETNONALCONTRACTADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getNonalPayableAddress() { - final Function function = new Function(FUNC_GETNONALPAYABLEADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getPayableToAddress() { - final Function function = new Function(FUNC_GETPAYABLETOADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall payableOrNot() { - final Function function = new Function( - FUNC_PAYABLEORNOT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAndAddress.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractAndAddress.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ContractAndAddress load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractAndAddress(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractAndAddress load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractAndAddress(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ContractArray.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ContractArray.java deleted file mode 100644 index 40543996bd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ContractArray.java +++ /dev/null @@ -1,91 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ContractArray extends Contract { - private static final String BINARY = "6080604052600367ffffffffffffffff8111801561001c57600080fd5b5060405190808252806020026020018201604052801561004b5781602001602082028036833780820191505090505b5060009080519060200190610061929190610074565b5034801561006e57600080fd5b50610139565b8280548282559060005260206000209081019282156100ed579160200282015b828111156100ec5782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190610094565b5b5090506100fa91906100fe565b5090565b5b8082111561013557600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055506001016100ff565b5090565b610301806101486000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806326121ff014610046578063807b4c3314610050578063e276c799146100af575b600080fd5b61004e6100e3565b005b6100586101e4565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561009b578082015181840152602081019050610080565b505050509050019250505060405180910390f35b6100b7610272565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100eb6102a9565b6000309080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555030600160006003811061015d57fe5b0160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555030816000600381106101aa57fe5b602002019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505050565b6060600080548060200260200160405190810160405280929190818152602001828054801561026857602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161021e575b5050505050905090565b6000600160006003811061028257fe5b0160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b604051806060016040528060039060208202803683378082019150509050509056fea2646970667358221220e42b2d698164da0fc48792712937048c9e02d91596783428404e06a4d938980464736f6c63430007010033"; - - public static final String FUNC_F = "f"; - - public static final String FUNC_GETX = "getx"; - - public static final String FUNC_GETY = "gety"; - - protected ContractArray(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractArray(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f() { - final Function function = new Function( - FUNC_F, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getx() { - final Function function = new Function(FUNC_GETX, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall gety() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractArray.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractArray.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ContractArray load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractArray(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractArray load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractArray(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ContractPayable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ContractPayable.java deleted file mode 100644 index faff4c1d60..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ContractPayable.java +++ /dev/null @@ -1,45 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ContractPayable extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b50604e80601d6000396000f3fe608060405236600a57005b348015601557600080fd5b5000fea26469706673582212202101511779e642022e671470f528eb7cf5638ce6489f60c62443288e41e15bb864736f6c63430007010033"; - - protected ContractPayable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractPayable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractPayable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ContractPayable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ContractPayable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractPayable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractPayable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractPayable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Control.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Control.java deleted file mode 100644 index 5fdcb2141e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Control.java +++ /dev/null @@ -1,250 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Control extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610c18806100206000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c806357609889116100b85780638e418fdb1161007c5780638e418fdb146104b2578063a64be0d5146104d0578063b4feac7c146104ee578063b87df0141461050c578063c0e641fc1461052a578063da193c1f1461054857610137565b80635760988914610352578063687615d71461037057806371ee52021461038e57806378aa6155146104115780637e6b0f571461042f57610137565b806344e24ce0116100ff57806344e24ce01461029c57806347808fc3146102ca5780634b8016b9146102f8578063508242dc1461031657806356230cca1461033457610137565b80631f9c9f3c1461013c578063275ec9761461015a57806335432d3114610178578063383d49e5146101fb5780633f9dbcf914610219575b600080fd5b610144610566565b6040518082815260200191505060405180910390f35b61016261056c565b6040518082815260200191505060405180910390f35b6101806105ca565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101c05780820151818401526020810190506101a5565b50505050905090810190601f1680156101ed5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610203610668565b6040518082815260200191505060405180910390f35b61022161066e565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610261578082015181840152602081019050610246565b50505050905090810190601f16801561028e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102c8600480360360208110156102b257600080fd5b810190808035906020019092919050505061070c565b005b6102f6600480360360208110156102e057600080fd5b8101908080359060200190929190505050610811565b005b6103006108a4565b6040518082815260200191505060405180910390f35b61031e6108aa565b6040518082815260200191505060405180910390f35b61033c6108b0565b6040518082815260200191505060405180910390f35b61035a610904565b6040518082815260200191505060405180910390f35b61037861090e565b6040518082815260200191505060405180910390f35b610396610914565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103d65780820151818401526020810190506103bb565b50505050905090810190601f1680156104035780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104196109b6565b6040518082815260200191505060405180910390f35b6104376109c0565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561047757808201518184015260208101905061045c565b50505050905090810190601f1680156104a45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104ba610a62565b6040518082815260200191505060405180910390f35b6104d8610a95565b6040518082815260200191505060405180910390f35b6104f6610aec565b6040518082815260200191505060405180910390f35b610514610b27565b6040518082815260200191505060405180910390f35b610532610b31565b6040518082815260200191505060405180910390f35b610550610b3b565b6040518082815260200191505060405180910390f35b60025481565b6000806005819055506000600190505b600a8110156105c05760006005828161059157fe5b0614156105a3576005549150506105c7565b80600560008282540192505081905550808060010191505061057c565b5060055490505b90565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106605780601f1061063557610100808354040283529160200191610660565b820191906000526020600020905b81548152906001019060200180831161064357829003601f168201915b505050505081565b60035481565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107045780601f106106d957610100808354040283529160200191610704565b820191906000526020600020905b8154815290600101906020018083116106e757829003601f168201915b505050505081565b6014811015610766576040518060400160405280601381526020017f796f7520617265206120796f756e67206d616e0000000000000000000000000081525060009080519060200190610760929190610b45565b5061080e565b603c8110156107c0576040518060400160405280601481526020017f796f75206172652061206d6964646c65206d616e000000000000000000000000815250600090805190602001906107ba929190610b45565b5061080d565b6040518060400160405280601181526020017f796f75206172652061206f6c64206d616e0000000000000000000000000000008152506000908051906020019061080b929190610b45565b505b5b50565b60148113610854576040518060400160405280600c81526020017f6d6f7265207468616e203230000000000000000000000000000000000000000081525061088b565b6040518060400160405280600c81526020017f6c657373207468616e20323000000000000000000000000000000000000000008152505b600690805190602001906108a0929190610b45565b5050565b60045481565b60015481565b60008060048190555060005b600a8110156108fb576000600282816108d157fe5b0614156108dd576108ee565b806004600082825401925050819055505b80806001019150506108bc565b50600454905090565b6000600454905090565b60055481565b606060068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109ac5780601f10610981576101008083540402835291602001916109ac565b820191906000526020600020905b81548152906001019060200180831161098f57829003601f168201915b5050505050905090565b6000600554905090565b606060008054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a585780601f10610a2d57610100808354040283529160200191610a58565b820191906000526020600020905b815481529060010190602001808311610a3b57829003601f168201915b5050505050905090565b60008060018190555060005b80600160008282540192505081905550806001019050600a8110610a6e5760015491505090565b6000806003819055506000600190505b600a811015610ae357600060028281610aba57fe5b061415610ac657610ae3565b806003600082825401925050819055508080600101915050610aa5565b50600354905090565b60008060028190555060005b600a811015610b1e57806002600082825401925050819055508080600101915050610af8565b50600254905090565b6000600254905090565b6000600354905090565b6000600154905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610b8657805160ff1916838001178555610bb4565b82800160010185558215610bb4579182015b82811115610bb3578251825591602001919060010190610b98565b5b509050610bc19190610bc5565b5090565b5b80821115610bde576000816000905550600101610bc6565b509056fea2646970667358221220223435d63c2199af99d1fd2ab1cf1339bedb5c8c871b6ac5da1ef7eb501025c064736f6c63430007010033"; - - public static final String FUNC_DOWHILECONTROL = "doWhileControl"; - - public static final String FUNC_DOWHILECONTROLRESULT = "doWhileControlResult"; - - public static final String FUNC_FORBREAKCONTROL = "forBreakControl"; - - public static final String FUNC_FORBREAKCONTROLRESULT = "forBreakControlResult"; - - public static final String FUNC_FORCONTINUECONTROL = "forContinueControl"; - - public static final String FUNC_FORCONTINUECONTROLRESULT = "forContinueControlResult"; - - public static final String FUNC_FORCONTROL = "forControl"; - - public static final String FUNC_FORCONTROLRESULT = "forControlResult"; - - public static final String FUNC_FORRETURNCONTROL = "forReturnControl"; - - public static final String FUNC_FORRETURNCONTROLRESULT = "forReturnControlResult"; - - public static final String FUNC_FORTHREECONTROLCONTROL = "forThreeControlControl"; - - public static final String FUNC_FORTHREECONTROLCONTROLRESULT = "forThreeControlControlResult"; - - public static final String FUNC_GETFORBREAKCONTROLRESULT = "getForBreakControlResult"; - - public static final String FUNC_GETFORCONTINUECONTROLRESULT = "getForContinueControlResult"; - - public static final String FUNC_GETFORCONTROLRESULT = "getForControlResult"; - - public static final String FUNC_GETFORRETURNCONTROLRESULT = "getForReturnControlResult"; - - public static final String FUNC_GETFORTHREECONTROLCONTROLRESULT = "getForThreeControlControlResult"; - - public static final String FUNC_GETIFCONTROLRESULT = "getIfControlResult"; - - public static final String FUNC_GETDOWHILERESULT = "getdoWhileResult"; - - public static final String FUNC_IFCONTROL = "ifControl"; - - public static final String FUNC_IFCONTROLRESULT = "ifControlResult"; - - protected Control(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Control(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall doWhileControl() { - final Function function = new Function( - FUNC_DOWHILECONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall doWhileControlResult() { - final Function function = new Function(FUNC_DOWHILECONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forBreakControl() { - final Function function = new Function( - FUNC_FORBREAKCONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forBreakControlResult() { - final Function function = new Function(FUNC_FORBREAKCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forContinueControl() { - final Function function = new Function( - FUNC_FORCONTINUECONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forContinueControlResult() { - final Function function = new Function(FUNC_FORCONTINUECONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forControl() { - final Function function = new Function( - FUNC_FORCONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forControlResult() { - final Function function = new Function(FUNC_FORCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forReturnControl() { - final Function function = new Function( - FUNC_FORRETURNCONTROL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forReturnControlResult() { - final Function function = new Function(FUNC_FORRETURNCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall forThreeControlControl(BigInteger age) { - final Function function = new Function( - FUNC_FORTHREECONTROLCONTROL, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Int256(age)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forThreeControlControlResult() { - final Function function = new Function(FUNC_FORTHREECONTROLCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getForBreakControlResult() { - final Function function = new Function(FUNC_GETFORBREAKCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getForContinueControlResult() { - final Function function = new Function(FUNC_GETFORCONTINUECONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getForControlResult() { - final Function function = new Function(FUNC_GETFORCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getForReturnControlResult() { - final Function function = new Function(FUNC_GETFORRETURNCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getForThreeControlControlResult() { - final Function function = new Function(FUNC_GETFORTHREECONTROLCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getIfControlResult() { - final Function function = new Function(FUNC_GETIFCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getdoWhileResult() { - final Function function = new Function(FUNC_GETDOWHILERESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall ifControl(BigInteger age) { - final Function function = new Function( - FUNC_IFCONTROL, - Arrays.asList(new Uint256(age)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall ifControlResult() { - final Function function = new Function(FUNC_IFCONTROLRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Control.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Control.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Control load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Control(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Control load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Control(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CreateContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CreateContract.java deleted file mode 100644 index 75a0aeddc7..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CreateContract.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CreateContract extends Contract { - private static final String BINARY = "60806040526103e86040516100139061008b565b80828152602001915050604051809103906000f080158015610039573d6000803e3d6000fd5b506000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555034801561008557600080fd5b50610098565b6101058061027f83390190565b6101d8806100a76000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f26ca91c14610030575b600080fd5b610038610055565b604051808381526020018281526020019250505060405180910390f35b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630c55699c6040518163ffffffff1660e01b815260040160206040518083038186803b1580156100be57600080fd5b505afa1580156100d2573d6000803e3d6000fd5b505050506040513d60208110156100e857600080fd5b810190808051906020019092919050505060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663aa8c217c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561015f57600080fd5b505afa158015610173573d6000803e3d6000fd5b505050506040513d602081101561018957600080fd5b810190808051906020019092919050505091509150909156fea264697066735822122007af81d4ae93ed8f610b60b18a32b11ccbe8ba99e373d950b807cb46d9f627d564736f6c6343000701003360806040526040516101053803806101058339818101604052602081101561002657600080fd5b810190808051906020019092919050505080600081905550346001819055505060b1806100546000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80630c55699c146037578063aa8c217c146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596075565b6040518082815260200191505060405180910390f35b60005481565b6001548156fea264697066735822122065bde9461d0fa89d433499fcaced7f17b978e6ad8d972119d9c56d2f86d98e8964736f6c63430007010033"; - - public static final String FUNC_GETTARGETCREATECONTRACTDATA = "getTargetCreateContractData"; - - protected CreateContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CreateContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> getTargetCreateContractData() { - final Function function = new Function(FUNC_GETTARGETCREATECONTRACTDATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreateContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreateContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CreateContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CreateContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CreateContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CreateContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CreationCode.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CreationCode.java deleted file mode 100644 index 455d16db6b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CreationCode.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CreationCode extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610314806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063ade003e81461003b578063f5f5ba72146100be575b600080fd5b610043610141565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100c6610168565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101065780820151818401526020810190506100eb565b50505050905090810190601f1680156101335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6040518060200161015190610193565b6020820181038252601f19601f8201166040525081565b60606040518060200161017a90610193565b6020820181038252601f19601f82011660405250905090565b61013e806101a18339019056fe608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80632096525514602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525090509056fea2646970667358221220846d2d25a17e63808df82aac08490cf1c808bf05153d59600a435bd040bb8b1564736f6c63430007010033a26469706673582212205237accec072f89c86ce6a9ac90e49d250b6c257ffe5a2c371b248686caaf4fb64736f6c63430007010033"; - - public static final String FUNC_CREATIONCODEINFO = "creationCodeInfo"; - - public static final String FUNC_GETCONTRACTNAME = "getContractName"; - - protected CreationCode(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CreationCode(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall creationCodeInfo() { - final Function function = new Function(FUNC_CREATIONCODEINFO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getContractName() { - final Function function = new Function(FUNC_GETCONTRACTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreationCode.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreationCode.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CreationCode load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CreationCode(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CreationCode load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CreationCode(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CreationCodeType.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CreationCodeType.java deleted file mode 100644 index 170b042047..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/CreationCodeType.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class CreationCodeType extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80632096525514602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525090509056fea2646970667358221220846d2d25a17e63808df82aac08490cf1c808bf05153d59600a435bd040bb8b1564736f6c63430007010033"; - - public static final String FUNC_GETVALUE = "getValue"; - - protected CreationCodeType(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CreationCodeType(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getValue() { - final Function function = new Function( - FUNC_GETVALUE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreationCodeType.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(CreationCodeType.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static CreationCodeType load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CreationCodeType(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CreationCodeType load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CreationCodeType(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DataLocation.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DataLocation.java deleted file mode 100644 index 6304178546..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DataLocation.java +++ /dev/null @@ -1,107 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DataLocation extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061076b806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80630bcd3b3314610051578063246982c4146100d45780633ca8b1a714610182578063a1715deb14610274575b600080fd5b610059610359565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561009957808201518184015260208101905061007e565b50505050905090810190601f1680156100c65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610100600480360360208110156100ea57600080fd5b81019080803590602001909291905050506103fb565b6040518080602001838152602001828103825284818151815260200191508051906020019080838360005b8381101561014657808201518184015260208101905061012b565b50505050905090810190601f1680156101735780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6101f96004803603602081101561019857600080fd5b81019080803590602001906401000000008111156101b557600080fd5b8201836020820111156101c757600080fd5b803590602001918460018302840111640100000000831117156101e957600080fd5b90919293919293905050506104cf565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561023957808201518184015260208101905061021e565b50505050905090810190601f1680156102665780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6103416004803603606081101561028a57600080fd5b8101908080359060200190929190803590602001906401000000008111156102b157600080fd5b8201836020820111156102c357600080fd5b803590602001918460018302840111640100000000831117156102e557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050919291929080359060200190929190505050610586565b60405180821515815260200191505060405180910390f35b606060018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103f15780601f106103c6576101008083540402835291602001916103f1565b820191906000526020600020905b8154815290600101906020018083116103d457829003601f168201915b5050505050905090565b6060600080600084815260200190815260200160002060000160008085815260200190815260200160002060010154818054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104bf5780601f10610494576101008083540402835291602001916104bf565b820191906000526020600020905b8154815290600101906020018083116104a257829003601f168201915b5050505050915091509150915091565b60608282600191906104e29291906105fe565b5060018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105795780601f1061054e57610100808354040283529160200191610579565b820191906000526020600020905b81548152906001019060200180831161055c57829003601f168201915b5050505050905092915050565b600061059061067e565b60405180604001604052808581526020018481525090506105b181866105bd565b60019150509392505050565b8160008083815260200190815260200160002060008201518160000190805190602001906105ec929190610698565b50602082015181600101559050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061063f57803560ff191683800117855561066d565b8280016001018555821561066d579182015b8281111561066c578235825591602001919060010190610651565b5b50905061067a9190610718565b5090565b604051806040016040528060608152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106106d957805160ff1916838001178555610707565b82800160010185558215610707579182015b828111156107065782518255916020019190600101906106eb565b5b5090506107149190610718565b5090565b5b80821115610731576000816000905550600101610719565b509056fea26469706673582212207f6da14f75d6115e99526d3db8918dd933d95ef69b4db481b4025a762c8eccf164736f6c63430007010033"; - - public static final String FUNC_GETBYTES = "getBytes"; - - public static final String FUNC_GETPERSON = "getPerson"; - - public static final String FUNC_SAVEPERSON = "savePerson"; - - public static final String FUNC_TESTBYTES = "testBytes"; - - protected DataLocation(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DataLocation(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBytes() { - final Function function = new Function(FUNC_GETBYTES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall> getPerson(BigInteger _id) { - final Function function = new Function(FUNC_GETPERSON, - Arrays.asList(new Uint256(_id)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (String) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall savePerson(BigInteger _id, String _name, BigInteger _age) { - final Function function = new Function( - FUNC_SAVEPERSON, - Arrays.asList(new Uint256(_id), - new Utf8String(_name), - new Uint256(_age)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testBytes(byte[] _data) { - final Function function = new Function( - FUNC_TESTBYTES, - Arrays.asList(new DynamicBytes(_data)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DataLocation.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DataLocation.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DataLocation load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DataLocation(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DataLocation load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DataLocation(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DecimalLiteralsChangeByte.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DecimalLiteralsChangeByte.java deleted file mode 100644 index ed70d419a1..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DecimalLiteralsChangeByte.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes4; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DecimalLiteralsChangeByte extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101ba806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806322e20d8f146100465780633db3fb0a146100a7578063c2b21da4146100e4575b600080fd5b6100726004803603602081101561005c57600080fd5b8101908080359060200190929190505050610121565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6100af61015d565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6100ec61016e565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6000808290508060e01b6000806101000a81548163ffffffff021916908360e01c021790555060008054906101000a900460e01b915050919050565b60008054906101000a900460e01b81565b60008060009054906101000a900460e01b90509056fea26469706673582212202deea86462a350830bb3adb6707e8808c6fe324af9e255042b56737374536d7864736f6c63430007010033"; - - public static final String FUNC_B4 = "b4"; - - public static final String FUNC_GETB4 = "getB4"; - - public static final String FUNC_TESTCHANGE = "testChange"; - - protected DecimalLiteralsChangeByte(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DecimalLiteralsChangeByte(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall b4() { - final Function function = new Function(FUNC_B4, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getB4() { - final Function function = new Function(FUNC_GETB4, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall testChange(BigInteger a) { - final Function function = new Function( - FUNC_TESTCHANGE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DecimalLiteralsChangeByte.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DecimalLiteralsChangeByte.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DecimalLiteralsChangeByte load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DecimalLiteralsChangeByte(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DecimalLiteralsChangeByte load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DecimalLiteralsChangeByte(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DelegatecallCallee.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DelegatecallCallee.java deleted file mode 100644 index deba2bc1b6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DelegatecallCallee.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DelegatecallCallee extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610130806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630c55699c146041578063371303c014605d5780635a361756146065575b600080fd5b60476081565b6040518082815260200191505060405180910390f35b60636087565b005b606b60f1565b6040518082815260200191505060405180910390f35b60005481565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000805490509056fea2646970667358221220c021c91fa0fd6d32fe2fe3e1902aad384c174bc17af5267092fc420bfcb6c07764736f6c63430007010033"; - - public static final String FUNC_GETCALLEEX = "getCalleeX"; - - public static final String FUNC_INC = "inc"; - - public static final String FUNC_X = "x"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected DelegatecallCallee(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DelegatecallCallee(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall getCalleeX() { - final Function function = new Function(FUNC_GETCALLEEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc() { - final Function function = new Function( - FUNC_INC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCallee.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCallee.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DelegatecallCallee load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCallee(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DelegatecallCallee load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCallee(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String seder; - - public BigInteger x; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DelegatecallCallee_050.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DelegatecallCallee_050.java deleted file mode 100644 index b935b3eb00..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DelegatecallCallee_050.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DelegatecallCallee_050 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610130806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630c55699c146041578063371303c014605d5780635a361756146065575b600080fd5b60476081565b6040518082815260200191505060405180910390f35b60636087565b005b606b60f1565b6040518082815260200191505060405180910390f35b60005481565b60008081548092919060010191905055507fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e733600054604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1565b6000805490509056fea26469706673582212203a81d890bea7321a799f7783f8bce48abf77cb54dd9a273e9e95b19476b7645064736f6c63430007010033"; - - public static final String FUNC_GETCALLEEX = "getCalleeX"; - - public static final String FUNC_INC = "inc"; - - public static final String FUNC_X = "x"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected DelegatecallCallee_050(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DelegatecallCallee_050(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.seder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.x = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall getCalleeX() { - final Function function = new Function(FUNC_GETCALLEEX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc() { - final Function function = new Function( - FUNC_INC, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCallee_050.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCallee_050.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DelegatecallCallee_050 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCallee_050(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DelegatecallCallee_050 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCallee_050(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String seder; - - public BigInteger x; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DelegatecallCaller.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DelegatecallCaller.java deleted file mode 100644 index d257c51a56..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DelegatecallCaller.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DelegatecallCaller extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610200806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c146100465780637b8ed01814610064578063a7126c2d14610082575b600080fd5b61004e6100c6565b6040518082815260200191505060405180910390f35b61006c6100cc565b6040518082815260200191505060405180910390f35b6100c46004803603602081101561009857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506100d5565b005b60005481565b60008054905090565b8073ffffffffffffffffffffffffffffffffffffffff167f371303c051bff726100ad13871cababf50c20dd920fca137e519f98f089a74b4604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b6020831061015f578051825260208201915060208101905060208303925061013c565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101bf576040519150601f19603f3d011682016040523d82523d6000602084013e6101c4565b606091505b5050505056fea2646970667358221220c23c89131be4ce1e5875a73cba9f5eea473aee555a594217e5069faf9372009664736f6c63430007010033"; - - public static final String FUNC_GETCALLERX = "getCallerX"; - - public static final String FUNC_INC_DELEGATECALL = "inc_delegatecall"; - - public static final String FUNC_X = "x"; - - protected DelegatecallCaller(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DelegatecallCaller(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getCallerX() { - final Function function = new Function(FUNC_GETCALLERX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc_delegatecall(String _contractAddress) { - final Function function = new Function( - FUNC_INC_DELEGATECALL, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(_contractAddress)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCaller.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCaller.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DelegatecallCaller load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCaller(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DelegatecallCaller load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCaller(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DelegatecallCaller_050.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DelegatecallCaller_050.java deleted file mode 100644 index 3d9bd8ad3a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DelegatecallCaller_050.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DelegatecallCaller_050 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610200806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630c55699c146100465780637b8ed01814610064578063a7126c2d14610082575b600080fd5b61004e6100c6565b6040518082815260200191505060405180910390f35b61006c6100cc565b6040518082815260200191505060405180910390f35b6100c46004803603602081101561009857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506100d5565b005b60005481565b60008054905090565b8073ffffffffffffffffffffffffffffffffffffffff167f371303c051bff726100ad13871cababf50c20dd920fca137e519f98f089a74b4604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b6020831061015f578051825260208201915060208101905060208303925061013c565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146101bf576040519150601f19603f3d011682016040523d82523d6000602084013e6101c4565b606091505b5050505056fea2646970667358221220f25ad465fb9119bf9b01b835996db41d61f50a9f44d711da2bb82ad76131153064736f6c63430007010033"; - - public static final String FUNC_GETCALLERX = "getCallerX"; - - public static final String FUNC_INC_DELEGATECALL = "inc_delegatecall"; - - public static final String FUNC_X = "x"; - - protected DelegatecallCaller_050(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DelegatecallCaller_050(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getCallerX() { - final Function function = new Function(FUNC_GETCALLERX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inc_delegatecall(String _contractAddress) { - final Function function = new Function( - FUNC_INC_DELEGATECALL, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(_contractAddress)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCaller_050.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DelegatecallCaller_050.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DelegatecallCaller_050 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCaller_050(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DelegatecallCaller_050 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DelegatecallCaller_050(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DeleteDemo.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DeleteDemo.java deleted file mode 100644 index 95a817e736..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DeleteDemo.java +++ /dev/null @@ -1,244 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DeleteDemo extends Contract { - private static final String BINARY = "608060405260016000806101000a81548160ff0219169083151502179055506001805533600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040518060400160405280600381526020017f313233000000000000000000000000000000000000000000000000000000000081525060039080519060200190620000b092919062000138565b506040518060400160405280600381526020017f616263000000000000000000000000000000000000000000000000000000000081525060049080519060200190620000fe929190620001bf565b506001600560006101000a81548160ff021916908360028111156200011f57fe5b02179055503480156200013157600080fd5b5062000265565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200017b57805160ff1916838001178555620001ac565b82800160010185558215620001ac579182015b82811115620001ab5782518255916020019190600101906200018e565b5b509050620001bb919062000246565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200020257805160ff191683800117855562000233565b8280016001018555821562000233579182015b828111156200023257825182559160200191906001019062000215565b5b50905062000242919062000246565b5090565b5b808211156200026157600081600090555060010162000247565b5090565b610e1780620002756000396000f3fe6080604052600436106101095760003560e01c8063767800de11610095578063c15bae8411610064578063c15bae84146104e3578063cf08fed514610573578063d1bdda41146105a9578063e5aa3d5814610633578063f02997491461065e57610109565b8063767800de1461035757806393e1ed8314610398578063a1a984e514610428578063ab5170b21461045357610109565b806327c58232116100dc57806327c582321461024e57806332d057c9146102655780633ab0698c1461026f5780634df7e3d01461029a5780635d743b5d146102c757610109565b806305be2c121461010e57806313a5a8af146101a55780631acddabe146101db578063252bd4d31461020d575b600080fd5b34801561011a57600080fd5b5061012361068b565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561016957808201518184015260208101905061014e565b50505050905090810190601f1680156101965780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b3480156101b157600080fd5b506101ba61073e565b604051808260028111156101ca57fe5b815260200191505060405180910390f35b3480156101e757600080fd5b506101f0610755565b604051808381526020018281526020019250505060405180910390f35b34801561021957600080fd5b506102226107a9565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025a57600080fd5b506102636107d3565b005b61026d61083f565b005b34801561027b57600080fd5b50610284610898565b6040518082815260200191505060405180910390f35b3480156102a657600080fd5b506102af610928565b60405180821515815260200191505060405180910390f35b3480156102d357600080fd5b506102dc610939565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561031c578082015181840152602081019050610301565b50505050905090810190601f1680156103495780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561036357600080fd5b5061036c6109db565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103a457600080fd5b506103ad610a01565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103ed5780820151818401526020810190506103d2565b50505050905090810190601f16801561041a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561043457600080fd5b5061043d610a9f565b6040518082815260200191505060405180910390f35b34801561045f57600080fd5b50610468610aa9565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104a857808201518184015260208101905061048d565b50505050905090810190601f1680156104d55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104ef57600080fd5b506104f8610b4b565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561053857808201518184015260208101905061051d565b50505050905090810190601f1680156105655780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561057f57600080fd5b50610588610be9565b6040518082600281111561059857fe5b815260200191505060405180910390f35b6105b1610bfc565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b838110156105f75780820151818401526020810190506105dc565b50505050905090810190601f1680156106245780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b34801561063f57600080fd5b50610648610d18565b6040518082815260200191505060405180910390f35b34801561066a57600080fd5b50610673610d1e565b60405180821515815260200191505060405180910390f35b600060606006600001546006600101808054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561072f5780601f106107045761010080835404028352916020019161072f565b820191906000526020600020905b81548152906001019060200180831161071257829003601f168201915b50505050509050915091509091565b6000600560009054906101000a900460ff16905090565b600080600860000160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600860010154915091509091565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000806101000a81549060ff0219169055600160009055600260006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556003600061081d9190610d34565b6004600061082b9190610d7c565b600560006101000a81549060ff0219169055565b6107d0600860000160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506008600060018201600090555050565b60006060600767ffffffffffffffff811180156108b457600080fd5b506040519080825280602002602001820160405280156108e35781602001602082028036833780820191505090505b5090506064816000815181106108f557fe5b60200260200101818152505060c88160018151811061091057fe5b60200260200101818152505060609050805191505090565b60008054906101000a900460ff1681565b606060038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109d15780601f106109a6576101008083540402835291602001916109d1565b820191906000526020600020905b8154815290600101906020018083116109b457829003601f168201915b5050505050905090565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60038054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a975780601f10610a6c57610100808354040283529160200191610a97565b820191906000526020600020905b815481529060010190602001808311610a7a57829003601f168201915b505050505081565b6000600154905090565b606060048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b415780601f10610b1657610100808354040283529160200191610b41565b820191906000526020600020905b815481529060010190602001808311610b2457829003601f168201915b5050505050905090565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610be15780601f10610bb657610100808354040283529160200191610be1565b820191906000526020600020905b815481529060010190602001808311610bc457829003601f168201915b505050505081565b600560009054906101000a900460ff1681565b600060606040518060400160405280600a81526020016040518060400160405280600381526020017f6162630000000000000000000000000000000000000000000000000000000000815250815250506006600080820160009055600182016000610c679190610d7c565b50506006600001546006600101808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d095780601f10610cde57610100808354040283529160200191610d09565b820191906000526020600020905b815481529060010190602001808311610cec57829003601f168201915b50505050509050915091509091565b60015481565b60008060009054906101000a900460ff16905090565b50805460018160011615610100020316600290046000825580601f10610d5a5750610d79565b601f016020900490600052602060002090810190610d789190610dc4565b5b50565b50805460018160011615610100020316600290046000825580601f10610da25750610dc1565b601f016020900490600052602060002090810190610dc09190610dc4565b5b50565b5b80821115610ddd576000816000905550600101610dc5565b509056fea264697066735822122064763792d98cfb2d2582eb5ba1021706e49fc67f0ec70503f64003192a08bc8164736f6c63430007010033"; - - public static final String FUNC_ADDR = "addr"; - - public static final String FUNC_B = "b"; - - public static final String FUNC_COLOR = "color"; - - public static final String FUNC_DELDYNAMICARRAY = "delDynamicArray"; - - public static final String FUNC_DELMAPPING = "delMapping"; - - public static final String FUNC_DELSTRUCT = "delStruct"; - - public static final String FUNC_DELETEATTR = "deleteAttr"; - - public static final String FUNC_GETADDRESS = "getaddress"; - - public static final String FUNC_GETBOOL = "getbool"; - - public static final String FUNC_GETBYTES = "getbytes"; - - public static final String FUNC_GETDELMAPPING = "getdelMapping"; - - public static final String FUNC_GETENUM = "getenum"; - - public static final String FUNC_GETSTR = "getstr"; - - public static final String FUNC_GETSTRUCT = "getstruct"; - - public static final String FUNC_GETUNIT = "getunit"; - - public static final String FUNC_I = "i"; - - public static final String FUNC_STR = "str"; - - public static final String FUNC_VARBYTE = "varByte"; - - protected DeleteDemo(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DeleteDemo(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall addr() { - final Function function = new Function(FUNC_ADDR, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall b() { - final Function function = new Function(FUNC_B, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall color() { - final Function function = new Function(FUNC_COLOR, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall delDynamicArray() { - final Function function = new Function(FUNC_DELDYNAMICARRAY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall delMapping(BigInteger vonValue) { - final Function function = new Function( - FUNC_DELMAPPING, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall delStruct(BigInteger vonValue) { - final Function function = new Function( - FUNC_DELSTRUCT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall deleteAttr() { - final Function function = new Function( - FUNC_DELETEATTR, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getaddress() { - final Function function = new Function(FUNC_GETADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getbool() { - final Function function = new Function(FUNC_GETBOOL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getbytes() { - final Function function = new Function(FUNC_GETBYTES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall> getdelMapping() { - final Function function = new Function(FUNC_GETDELMAPPING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall getenum() { - final Function function = new Function(FUNC_GETENUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getstr() { - final Function function = new Function(FUNC_GETSTR, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall> getstruct() { - final Function function = new Function(FUNC_GETSTRUCT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue()); - } - }); - } - - public RemoteCall getunit() { - final Function function = new Function(FUNC_GETUNIT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall i() { - final Function function = new Function(FUNC_I, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall str() { - final Function function = new Function(FUNC_STR, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall varByte() { - final Function function = new Function(FUNC_VARBYTE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DeleteDemo.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DeleteDemo.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DeleteDemo load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DeleteDemo(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DeleteDemo load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DeleteDemo(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Destructable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Destructable.java deleted file mode 100644 index 0c5e78edba..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Destructable.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Destructable extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101e0806100606000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80632b68b9c614610030575b600080fd5b61003861003a565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146100fb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b60004714610171576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f62616c616e6365206973206e6f74207a65726f0000000000000000000000000081525060200191505060405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16fffea2646970667358221220b6e6a199a4e50dce34595dee282abe097f58cac0356c7e07d3812d78241f9c6a64736f6c63430007010033"; - - public static final String FUNC_DESTRUCT = "destruct"; - - protected Destructable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Destructable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Destructable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Destructable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall destruct() { - final Function function = new Function( - FUNC_DESTRUCT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static Destructable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Destructable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Destructable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Destructable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DisallowTypeChange.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DisallowTypeChange.java deleted file mode 100644 index dcfef6547b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DisallowTypeChange.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint32; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DisallowTypeChange extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610159806100206000396000f3fe6080604052600436106100345760003560e01c80630b7f166514610039578063420343a41461006a578063a56dfe4a14610074575b600080fd5b34801561004557600080fd5b5061004e6100a5565b604051808263ffffffff16815260200191505060405180910390f35b6100726100be565b005b34801561008057600080fd5b5061008961010f565b604051808263ffffffff16815260200191505060405180910390f35b60008060009054906101000a900463ffffffff16905090565b60007faaaa000000000000000000000000000000000000000000000000000000000000905060008190508060e01c6000806101000a81548163ffffffff021916908363ffffffff1602179055505050565b60008054906101000a900463ffffffff168156fea26469706673582212205374b15268b1eecbb3507776eae5e934ed239711b86618168e6d9341da430ff864736f6c63430007010033"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_TESTCHANGE = "testChange"; - - public static final String FUNC_Y = "y"; - - protected DisallowTypeChange(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DisallowTypeChange(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall testChange(BigInteger vonValue) { - final Function function = new Function( - FUNC_TESTCHANGE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall y() { - final Function function = new Function(FUNC_Y, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowTypeChange.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowTypeChange.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DisallowTypeChange load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DisallowTypeChange(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DisallowTypeChange load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DisallowTypeChange(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DisallowYears.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DisallowYears.java deleted file mode 100644 index 63251caf3b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DisallowYears.java +++ /dev/null @@ -1,99 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DisallowYears extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101d4806100206000396000f3fe60806040526004361061004a5760003560e01c80630bb2b6961461004f57806320de797e1461007a57806325b29d84146100bc578063c6d8d657146100e7578063c6f8a3b714610112575b600080fd5b34801561005b57600080fd5b5061006461013d565b6040518082815260200191505060405180910390f35b6100a66004803603602081101561009057600080fd5b8101908080359060200190929190505050610147565b6040518082815260200191505060405180910390f35b3480156100c857600080fd5b506100d1610181565b6040518082815260200191505060405180910390f35b3480156100f357600080fd5b506100fc61018b565b6040518082815260200191505060405180910390f35b34801561011e57600080fd5b50610127610194565b6040518082815260200191505060405180910390f35b6000600254905090565b60006301e13380600081905550680dd2d5fcf3bc9c000060018190555060ff600281905550680dd2d5fcf3bc9c0000600381905550919050565b6000600154905090565b60008054905090565b600060035490509056fea264697066735822122007f4c3550468901839d2ef816f9b9333be5e36ac5fb4075aca93847db7c5bbe864736f6c63430007010033"; - - public static final String FUNC_GETETHERVALUE = "getEtherValue"; - - public static final String FUNC_GETHEXCOMVALUE = "getHexComValue"; - - public static final String FUNC_GETHEXVALUE = "getHexValue"; - - public static final String FUNC_GETTIME1 = "getTime1"; - - public static final String FUNC_TESTYEAR = "testyear"; - - protected DisallowYears(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DisallowYears(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getEtherValue() { - final Function function = new Function(FUNC_GETETHERVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getHexComValue() { - final Function function = new Function(FUNC_GETHEXCOMVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getHexValue() { - final Function function = new Function(FUNC_GETHEXVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getTime1() { - final Function function = new Function(FUNC_GETTIME1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall testyear(BigInteger a, BigInteger vonValue) { - final Function function = new Function( - FUNC_TESTYEAR, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowYears.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DisallowYears.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DisallowYears load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DisallowYears(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DisallowYears load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DisallowYears(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DoWhileError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DoWhileError.java deleted file mode 100644 index 1fcf113556..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/DoWhileError.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class DoWhileError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060c38061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063a8a5cadc14602d575b600080fd5b6033604b565b60405180821515815260200191505060405180910390f35b6000806054606e565b90508060000160009054906101000a900460ff1691505090565b60005b600090508060000160009054906101000a900460ff166071579056fea26469706673582212201f6c7d3daf2093351454365434be1a44d9d202983f477497dfbe82f1ca8ef62a64736f6c63430007010033"; - - public static final String FUNC_GETDOWHILECONTROLRES = "getDoWhileControlRes"; - - protected DoWhileError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected DoWhileError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDoWhileControlRes() { - final Function function = new Function(FUNC_GETDOWHILECONTROLRES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DoWhileError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(DoWhileError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static DoWhileError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new DoWhileError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static DoWhileError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new DoWhileError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ERC200513Token.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ERC200513Token.java deleted file mode 100644 index 0741d5b151..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ERC200513Token.java +++ /dev/null @@ -1,331 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ERC200513Token extends Contract { - private static final String BINARY = "60806040526012600260006101000a81548160ff021916908360ff1602179055503480156200002d57600080fd5b506040516200169d3803806200169d833981810160405260608110156200005357600080fd5b8101908080519060200190929190805160405193929190846401000000008211156200007e57600080fd5b838201915060208201858111156200009557600080fd5b8251866001820283011164010000000082111715620000b357600080fd5b8083526020830192505050908051906020019080838360005b83811015620000e9578082015181840152602081019050620000cc565b50505050905090810190601f168015620001175780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200013b57600080fd5b838201915060208201858111156200015257600080fd5b82518660018202830111640100000000821117156200017057600080fd5b8083526020830192505050908051906020019080838360005b83811015620001a657808201518184015260208101905062000189565b50505050905090810190601f168015620001d45780820380516001836020036101000a031916815260200191505b50604052505050600260009054906101000a900460ff1660ff16600a0a8302600381905550600354600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160009080519060200190620002579291906200027a565b508060019080519060200190620002709291906200027a565b5050505062000320565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002bd57805160ff1916838001178555620002ee565b82800160010185558215620002ee579182015b82811115620002ed578251825591602001919060010190620002d0565b5b509050620002fd919062000301565b5090565b5b808211156200031c57600081600090555060010162000302565b5090565b61136d80620003306000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806342966c68116100a25780639b96eece116100715780639b96eece146105bb578063a9059cbb14610613578063c4e41b2214610677578063dd62ed3e14610695578063f0141d841461070d5761010b565b806342966c681461043857806370a082311461047c57806379cc6790146104d457806395d89b41146105385761010b565b806317d7de7c116100de57806317d7de7c146102f257806318160ddd1461037557806323b872dd14610393578063313ce567146104175761010b565b806306fdde0314610110578063095ea7b3146101935780630af4187d146101f7578063150704011461026f575b600080fd5b61011861072e565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561015857808201518184015260208101905061013d565b50505050905090810190601f1680156101855780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101df600480360360408110156101a957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506107cc565b60405180821515815260200191505060405180910390f35b6102596004803603604081101561020d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610859565b6040518082815260200191505060405180910390f35b6102776108e0565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102b757808201518184015260208101905061029c565b50505050905090810190601f1680156102e45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102fa610982565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561033a57808201518184015260208101905061031f565b50505050905090810190601f1680156103675780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61037d610a24565b6040518082815260200191505060405180910390f35b6103ff600480360360608110156103a957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a2a565b60405180821515815260200191505060405180910390f35b61041f610b56565b604051808260ff16815260200191505060405180910390f35b6104646004803603602081101561044e57600080fd5b8101908080359060200190929190505050610b69565b60405180821515815260200191505060405180910390f35b6104be6004803603602081101561049257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c6b565b6040518082815260200191505060405180910390f35b610520600480360360408110156104ea57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c83565b60405180821515815260200191505060405180910390f35b610540610e99565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610580578082015181840152602081019050610565565b50505050905090810190601f1680156105ad5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6105fd600480360360208110156105d157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f37565b6040518082815260200191505060405180910390f35b61065f6004803603604081101561062957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f80565b60405180821515815260200191505060405180910390f35b61067f610f95565b6040518082815260200191505060405180910390f35b6106f7600480360360408110156106ab57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f9f565b6040518082815260200191505060405180910390f35b610715610fc4565b604051808260ff16815260200191505060405180910390f35b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c45780601f10610799576101008083540402835291602001916107c4565b820191906000526020600020905b8154815290600101906020018083116107a757829003601f168201915b505050505081565b600081600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b606060018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109785780601f1061094d57610100808354040283529160200191610978565b820191906000526020600020905b81548152906001019060200180831161095b57829003601f168201915b5050505050905090565b606060008054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a1a5780601f106109ef57610100808354040283529160200191610a1a565b820191906000526020600020905b8154815290600101906020018083116109fd57829003601f168201915b5050505050905090565b60035481565b6000600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115610ab557600080fd5b81600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550610b4a848484610fdb565b50600190509392505050565b600260009054906101000a900460ff1681565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610bb757600080fd5b81600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a260019050919050565b60046020528060005260406000206000915090505481565b600081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610cd157600080fd5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115610d5a57600080fd5b81600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a26001905092915050565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f2f5780601f10610f0457610100808354040283529160200191610f2f565b820191906000526020600020905b815481529060010190602001808311610f1257829003601f168201915b505050505081565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000610f8d338484610fdb565b905092915050565b6000600354905090565b6005602052816000526040600020602052806000526040600020600091509150505481565b6000600260009054906101000a900460ff16905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415806110455750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b61104e57600080fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561109a57600080fd5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054011161112657600080fd5b6000600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401905082600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555082600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a380600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540114915050939250505056fea2646970667358221220e1008e7628d3d5ff29a67dddc7bf0b0d101fb5a6d5abbb8ad0b2ae94992542a064736f6c63430007010033"; - - public static final String FUNC_ALLOWANCE = "allowance"; - - public static final String FUNC_APPROVE = "approve"; - - public static final String FUNC_BALANCEOF = "balanceOf"; - - public static final String FUNC_BURN = "burn"; - - public static final String FUNC_BURNFROM = "burnFrom"; - - public static final String FUNC_DECIMALS = "decimals"; - - public static final String FUNC_GETALLOWANCE = "getAllowance"; - - public static final String FUNC_GETBALANCEOF = "getBalanceOf"; - - public static final String FUNC_GETDECIMALS = "getDecimals"; - - public static final String FUNC_GETNAME = "getName"; - - public static final String FUNC_GETSYMBOL = "getSymbol"; - - public static final String FUNC_GETTOTALSUPPLY = "getTotalSupply"; - - public static final String FUNC_NAME = "name"; - - public static final String FUNC_SYMBOL = "symbol"; - - public static final String FUNC_TOTALSUPPLY = "totalSupply"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_TRANSFERFROM = "transferFrom"; - - public static final Event BURN_EVENT = new Event("Burn", - Arrays.>asList(new TypeReference

(true) {}, new TypeReference() {})); - ; - - public static final Event TRANSFER_EVENT = new Event("Transfer", - Arrays.>asList(new TypeReference
(true) {}, new TypeReference
(true) {}, new TypeReference() {})); - ; - - protected ERC200513Token(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ERC200513Token(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger initialSupply, String tokenName, String tokenSymbol) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(initialSupply), - new Utf8String(tokenName), - new Utf8String(tokenSymbol))); - return deployRemoteCall(ERC200513Token.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger initialSupply, String tokenName, String tokenSymbol) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(initialSupply), - new Utf8String(tokenName), - new Utf8String(tokenSymbol))); - return deployRemoteCall(ERC200513Token.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public List getBurnEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(BURN_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - BurnEventResponse typedResponse = new BurnEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable burnEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public BurnEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(BURN_EVENT, log); - BurnEventResponse typedResponse = new BurnEventResponse(); - typedResponse.log = log; - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable burnEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(BURN_EVENT)); - return burnEventObservable(filter); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.to = (String) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public RemoteCall allowance(String param0, String param1) { - final Function function = new Function(FUNC_ALLOWANCE, - Arrays.asList(new Address(param0), - new Address(param1)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall approve(String _spender, BigInteger _value) { - final Function function = new Function( - FUNC_APPROVE, - Arrays.asList(new Address(_spender), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall balanceOf(String param0) { - final Function function = new Function(FUNC_BALANCEOF, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall burn(BigInteger _value) { - final Function function = new Function( - FUNC_BURN, - Arrays.asList(new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall burnFrom(String _from, BigInteger _value) { - final Function function = new Function( - FUNC_BURNFROM, - Arrays.asList(new Address(_from), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall decimals() { - final Function function = new Function(FUNC_DECIMALS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getAllowance(String _owner, String _spender) { - final Function function = new Function(FUNC_GETALLOWANCE, - Arrays.asList(new Address(_owner), - new Address(_spender)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBalanceOf(String _owner) { - final Function function = new Function(FUNC_GETBALANCEOF, - Arrays.asList(new Address(_owner)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDecimals() { - final Function function = new Function(FUNC_GETDECIMALS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getName() { - final Function function = new Function(FUNC_GETNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getSymbol() { - final Function function = new Function(FUNC_GETSYMBOL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getTotalSupply() { - final Function function = new Function(FUNC_GETTOTALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall symbol() { - final Function function = new Function(FUNC_SYMBOL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall totalSupply() { - final Function function = new Function(FUNC_TOTALSUPPLY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transfer(String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall transferFrom(String _from, String _to, BigInteger _value) { - final Function function = new Function( - FUNC_TRANSFERFROM, - Arrays.asList(new Address(_from), - new Address(_to), - new Uint256(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ERC200513Token load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ERC200513Token(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ERC200513Token load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ERC200513Token(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class BurnEventResponse { - public Log log; - - public String from; - - public BigInteger value; - } - - public static class TransferEventResponse { - public Log log; - - public String from; - - public String to; - - public BigInteger value; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/EmitTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/EmitTest.java deleted file mode 100644 index 94c8f70ea6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/EmitTest.java +++ /dev/null @@ -1,118 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class EmitTest extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b5060b68061001e6000396000f3fe608060405260043610601c5760003560e01c80634f9d719e146021575b600080fd5b60276029565b005b7fb0333e0e3a6b99318e4e2e0d7e5e5f93646f9cbf62da1587955a4092bf7df6e73334604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a156fea264697066735822122067a6fbfd55a141931c2bb13a0f876a7cdfcdf5a1940f812c61d4a5f9448ec2d664736f6c63430007010033"; - - public static final String FUNC_TESTEVENT = "testEvent"; - - public static final Event EVENTNAME_EVENT = new Event("EventName", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - protected EmitTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected EmitTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEventNameEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EVENTNAME_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.bidder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.amount = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable eventNameEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EventNameEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(EVENTNAME_EVENT, log); - EventNameEventResponse typedResponse = new EventNameEventResponse(); - typedResponse.log = log; - typedResponse.bidder = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse.amount = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable eventNameEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(EVENTNAME_EVENT)); - return eventNameEventObservable(filter); - } - - public RemoteCall testEvent(BigInteger vonValue) { - final Function function = new Function( - FUNC_TESTEVENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EmitTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EmitTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static EmitTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new EmitTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static EmitTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new EmitTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EventNameEventResponse { - public Log log; - - public String bidder; - - public BigInteger amount; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ErrorParamConstructor.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ErrorParamConstructor.java deleted file mode 100644 index 33dc40ffb4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ErrorParamConstructor.java +++ /dev/null @@ -1,102 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ErrorParamConstructor extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060405161020d38038061020d8339818101604052602081101561003357600080fd5b8101908080519060200190929190505050600a806000819055505080600181905550506101a8806100656000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80630dbe671f1461005c5780634df7e3d01461007a57806382ab890a14610098578063a1c51915146100f7578063d46300fd14610115575b600080fd5b610064610133565b6040518082815260200191505060405180910390f35b610082610139565b6040518082815260200191505060405180910390f35b6100c4600480360360208110156100ae57600080fd5b810190808035906020019092919050505061013f565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6100ff61015f565b6040518082815260200191505060405180910390f35b61011d610169565b6040518082815260200191505060405180910390f35b60005481565b60015481565b600080826001600082825401925050819055503360015491509150915091565b6000600154905090565b6000805490509056fea26469706673582212207bb149e5aa28da92a6d4d7d12abaed892ca6f88f9c119c878f1ffd7e32e9d79f64736f6c63430007010033"; - - public static final String FUNC_A = "a"; - - public static final String FUNC_B = "b"; - - public static final String FUNC_GETA = "getA"; - - public static final String FUNC_GETB = "getB"; - - public static final String FUNC_UPDATE = "update"; - - protected ErrorParamConstructor(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ErrorParamConstructor(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _b) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_b))); - return deployRemoteCall(ErrorParamConstructor.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _b) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_b))); - return deployRemoteCall(ErrorParamConstructor.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall b() { - final Function function = new Function(FUNC_B, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getA() { - final Function function = new Function(FUNC_GETA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getB() { - final Function function = new Function(FUNC_GETB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static ErrorParamConstructor load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ErrorParamConstructor(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ErrorParamConstructor load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ErrorParamConstructor(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ErrorParamConstructorBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ErrorParamConstructorBase.java deleted file mode 100644 index 6e6aa4632c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ErrorParamConstructorBase.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ErrorParamConstructorBase extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516100df3803806100df8339818101604052602081101561003357600080fd5b8101908080519060200190929190505050806000819055505060858061005a6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80630dbe671f14602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000548156fea2646970667358221220e02dcd0853fa3523691660d45bac777b206341cc986f74609bbab8a5e6c9c27e64736f6c63430007010033"; - - public static final String FUNC_A = "a"; - - protected ErrorParamConstructorBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ErrorParamConstructorBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _a) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_a))); - return deployRemoteCall(ErrorParamConstructorBase.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _a) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_a))); - return deployRemoteCall(ErrorParamConstructorBase.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static ErrorParamConstructorBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ErrorParamConstructorBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ErrorParamConstructorBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ErrorParamConstructorBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/EventCallContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/EventCallContract.java deleted file mode 100644 index 36c6c8de3f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/EventCallContract.java +++ /dev/null @@ -1,323 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class EventCallContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610343806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806336aacafa1461005c5780637b0cb839146100665780639d6d4cde14610084578063b53c846b146100a2578063b7301a1f146100ac575b600080fd5b6100646100ca565b005b61006e6101f3565b6040518082815260200191505060405180910390f35b61008c61024b565b6040518082815260200191505060405180910390f35b6100aa61026c565b005b6100b46102b3565b6040518082815260200191505060405180910390f35b7f9f252e5d94c6346e0073dfdaa81c6bba97bc07b05f8378efc62d77d157e1b011600060405180821515815260200191505060405180910390a17f9f252e5d94c6346e0073dfdaa81c6bba97bc07b05f8378efc62d77d157e1b011600160405180821515815260200191505060405180910390a17ffc3a67c9f0b5967ae4041ed898b05ec1fa49d2a3c22336247201d71be6f9712033604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1600c6040518082815260200191505060405180910390a03373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c600c6040518082815260200191505060405180910390a2565b60007ffc3a67c9f0b5967ae4041ed898b05ec1fa49d2a3c22336247201d71be6f9712033604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a160018101905090565b6000600181019050806040518082815260200191505060405180910390a090565b600c6040518082815260200191505060405180910390a0600d6040518082815260200191505060405180910390a0600e6040518082815260200191505060405180910390a0565b60003373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c600c6040518082815260200191505060405180910390a26001810190509056fea26469706673582212202e2002771f828852beb2a3a6e88885250cfc88c42d83bf0631039b6b07a6968d64736f6c63430007010033"; - - public static final String FUNC_ANONYMOUSEVENT = "anonymousEvent"; - - public static final String FUNC_EMITEVENT = "emitEvent"; - - public static final String FUNC_INDEXEDEVENT = "indexedEvent"; - - public static final String FUNC_TESTBOOL = "testBool"; - - public static final String FUNC_TESTMULTIANONYMOUS = "testMultiAnonymous"; - - public static final Event ANONYMOUS_EVENT = new Event("Anonymous", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event ANONYMOUS2_EVENT = new Event("Anonymous2", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event BOOLEVENT_EVENT = new Event("BoolEvent", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event DEPOSIT_EVENT = new Event("Deposit", - Arrays.>asList(new TypeReference

(true) {}, new TypeReference() {})); - ; - - public static final Event INCREMENT_EVENT = new Event("Increment", - Arrays.>asList(new TypeReference
() {})); - ; - - protected EventCallContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected EventCallContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getAnonymousEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ANONYMOUS_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - AnonymousEventResponse typedResponse = new AnonymousEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable anonymousEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public AnonymousEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ANONYMOUS_EVENT, log); - AnonymousEventResponse typedResponse = new AnonymousEventResponse(); - typedResponse.log = log; - typedResponse._id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable anonymousEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ANONYMOUS_EVENT)); - return anonymousEventObservable(filter); - } - - public List getAnonymous2Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ANONYMOUS2_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - Anonymous2EventResponse typedResponse = new Anonymous2EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable anonymous2EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Anonymous2EventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ANONYMOUS2_EVENT, log); - Anonymous2EventResponse typedResponse = new Anonymous2EventResponse(); - typedResponse.log = log; - typedResponse._id = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable anonymous2EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ANONYMOUS2_EVENT)); - return anonymous2EventObservable(filter); - } - - public List getBoolEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(BOOLEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - BoolEventEventResponse typedResponse = new BoolEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable boolEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public BoolEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(BOOLEVENT_EVENT, log); - BoolEventEventResponse typedResponse = new BoolEventEventResponse(); - typedResponse.log = log; - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable boolEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(BOOLEVENT_EVENT)); - return boolEventEventObservable(filter); - } - - public List getDepositEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(DEPOSIT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - DepositEventResponse typedResponse = new DepositEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable depositEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public DepositEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(DEPOSIT_EVENT, log); - DepositEventResponse typedResponse = new DepositEventResponse(); - typedResponse.log = log; - typedResponse._from = (String) eventValues.getIndexedValues().get(0).getValue(); - typedResponse._value = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable depositEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(DEPOSIT_EVENT)); - return depositEventObservable(filter); - } - - public List getIncrementEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(INCREMENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - IncrementEventResponse typedResponse = new IncrementEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.who = (String) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable incrementEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public IncrementEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(INCREMENT_EVENT, log); - IncrementEventResponse typedResponse = new IncrementEventResponse(); - typedResponse.log = log; - typedResponse.who = (String) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable incrementEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(INCREMENT_EVENT)); - return incrementEventObservable(filter); - } - - public RemoteCall anonymousEvent() { - final Function function = new Function( - FUNC_ANONYMOUSEVENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall emitEvent() { - final Function function = new Function( - FUNC_EMITEVENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall indexedEvent() { - final Function function = new Function( - FUNC_INDEXEDEVENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testBool() { - final Function function = new Function( - FUNC_TESTBOOL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testMultiAnonymous() { - final Function function = new Function( - FUNC_TESTMULTIANONYMOUS, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventCallContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventCallContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static EventCallContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new EventCallContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static EventCallContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new EventCallContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class AnonymousEventResponse { - public Log log; - - public BigInteger _id; - } - - public static class Anonymous2EventResponse { - public Log log; - - public BigInteger _id; - } - - public static class BoolEventEventResponse { - public Log log; - - public Boolean result; - } - - public static class DepositEventResponse { - public Log log; - - public String _from; - - public BigInteger _value; - } - - public static class IncrementEventResponse { - public Log log; - - public String who; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/EventIndexedContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/EventIndexedContract.java deleted file mode 100644 index 9a0b509602..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/EventIndexedContract.java +++ /dev/null @@ -1,444 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.abi.solidity.datatypes.generated.StaticArray2; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class EventIndexedContract extends Contract { - private static final String BINARY = "60806040526040518060a00160405280600060ff168152602001600160ff168152602001600260ff168152602001600360ff168152602001600460ff16815250600090600561004f929190610177565b506040518060c001604052806040518060400160405280600060ff168152602001600060ff1681525081526020016040518060400160405280600060ff168152602001600160ff1681525081526020016040518060400160405280600060ff168152602001600260ff1681525081526020016040518060400160405280600060ff168152602001600360ff1681525081526020016040518060400160405280600060ff168152602001600460ff1681525081526020016040518060400160405280600060ff168152602001600560ff1681525081525060019060066101359291906101c9565b506040518060800160405280605881526020016107676058913960029080519060200190610164929190610227565b5034801561017157600080fd5b5061033b565b8280548282559060005260206000209081019282156101b8579160200282015b828111156101b7578251829060ff16905591602001919060010190610197565b5b5090506101c591906102a7565b5090565b828054828255906000526020600020906002028101928215610216579160200282015b82811115610215578251829060026102059291906102c4565b50916020019190600201906101ec565b5b5090506102239190610309565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061026857805160ff1916838001178555610296565b82800160010185558215610296579182015b8281111561029557825182559160200191906001019061027a565b5b5090506102a391906102a7565b5090565b5b808211156102c05760008160009055506001016102a8565b5090565b82600281019282156102f8579160200282015b828111156102f7578251829060ff169055916020019190600101906102d7565b5b50905061030591906102a7565b5090565b5b808211156103295760008181610320919061032d565b5060020161030a565b5090565b506000815560010160009055565b61041d8061034a6000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c8063bb0a5bd91161005b578063bb0a5bd9146100a0578063bbd847af146100aa578063db06ee8d146100b4578063fcf3fbb8146100e25761007d565b80633ac559931461008257806343ae41d81461008c578063b05dfcf814610096575b600080fd5b61008a6100ec565b005b610094610184565b005b61009e6101bf565b005b6100a861022e565b005b6100b2610243565b005b6100e0600480360360208110156100ca57600080fd5b81019080803590602001909291905050506102d1565b005b6100ea610301565b005b600260405180828054600181600116156101000203166002900480156101495780601f10610127576101008083540402835291820191610149565b820191906000526020600020905b815481529060010190602001808311610135575b505091505060405180910390207f617cf8a4400dd7963ed519ebe655a16e8da1282bb8fea36a21f634af912f54ab60405160405180910390a2565b6000600381111561019157fe5b7fde7a62815e0b38238b6211179d7d98017a99227a90823b0f44227e81dd3ad9c260405160405180910390a2565b60006040518082805480156101f357602002820191906000526020600020905b8154815260200190600101908083116101df575b505091505060405180910390207f38a323fa24260bbb8b86f61cd1d8c1900024088af6d08eda9e2d793da33c1b5860405160405180910390a2565b600460036002600160405160405180910390a4565b600160405180828054801561029657602002820191906000526020600020905b8160028015610287576020028201915b815481526020019060010190808311610273575b50509060020190808311610263575b505091505060405180910390207f406715adbc90cbc793dcd5707190ad1390229b2a75cf5b5ca228b518ae52de9a60405160405180910390a2565b807f834f28319998410e0230b46f29e58f7a86d825bc8505a917dae170f66d70bcdd60405160405180910390a250565b6002604051808280546001816001161561010002031660029004801561035e5780601f1061033c57610100808354040283529182019161035e565b820191906000526020600020905b81548152906001019060200180831161034a575b505091505060405180910390206000600381111561037857fe5b60006040518082805480156103ac57602002820191906000526020600020905b815481526020019060010190808311610398575b505091505060405180910390207f36b0026af468b8a488c2bd2a23a731b236d139a5211611fb763844bcb87f1abb60405160405180910390a456fea264697066735822122024097060336c1d390b8c294b7f548a49dd0166c4e63bacc74f4d8a11788424c164736f6c6343000701003331323334353637383930303937383635343332313132333435363738393030393837363534333231313233343536373839303039373634333534363636363633323432343434343434343434343735383331353436383536"; - - public static final String FUNC_TESTANONYMOUSINDEXED = "testAnonymousIndexed"; - - public static final String FUNC_TESTCOMPLEX = "testComplex"; - - public static final String FUNC_TESTENUM = "testEnum"; - - public static final String FUNC_TESTMINUS = "testMinus"; - - public static final String FUNC_TESTONEDIMENSIONALARRAY = "testOneDimensionalArray"; - - public static final String FUNC_TESTSTR = "testStr"; - - public static final String FUNC_TESTTWODIMENSIONALARRAY = "testTwoDimensionalArray"; - - public static final Event ANONYMOUSINDEXEDNUM_EVENT = new Event("AnonymousIndexedNum", - Arrays.>asList(new TypeReference(true) {}, new TypeReference(true) {}, new TypeReference(true) {}, new TypeReference(true) {})); - ; - - public static final Event COMPLEXINDEXEDEVENT_EVENT = new Event("ComplexIndexedEvent", - Arrays.>asList(new TypeReference>(true) {}, new TypeReference(true) {}, new TypeReference(true) {})); - ; - - public static final Event ENUMEVENT_EVENT = new Event("EnumEvent", - Arrays.>asList(new TypeReference(true) {})); - ; - - public static final Event MINUSEVENT_EVENT = new Event("MinusEvent", - Arrays.>asList(new TypeReference(true) {})); - ; - - public static final Event ONEDIMENSIONALARRAYEVENT_EVENT = new Event("OneDimensionalArrayEvent", - Arrays.>asList(new TypeReference>(true) {})); - ; - - public static final Event STRINGEVENT_EVENT = new Event("StringEvent", - Arrays.>asList(new TypeReference(true) {})); - ; - - public static final Event TWODIMENSIONALARRAYEVENT_EVENT = new Event("TwoDimensionalArrayEvent", - Arrays.>asList(new TypeReference>>(true) {})); - ; - - protected EventIndexedContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected EventIndexedContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getAnonymousIndexedNumEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ANONYMOUSINDEXEDNUM_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - AnonymousIndexedNumEventResponse typedResponse = new AnonymousIndexedNumEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.u1 = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.u2 = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.u3 = (BigInteger) eventValues.getIndexedValues().get(2).getValue(); - typedResponse.u4 = (BigInteger) eventValues.getIndexedValues().get(3).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable anonymousIndexedNumEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public AnonymousIndexedNumEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ANONYMOUSINDEXEDNUM_EVENT, log); - AnonymousIndexedNumEventResponse typedResponse = new AnonymousIndexedNumEventResponse(); - typedResponse.log = log; - typedResponse.u1 = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.u2 = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.u3 = (BigInteger) eventValues.getIndexedValues().get(2).getValue(); - typedResponse.u4 = (BigInteger) eventValues.getIndexedValues().get(3).getValue(); - return typedResponse; - } - }); - } - - public Observable anonymousIndexedNumEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ANONYMOUSINDEXEDNUM_EVENT)); - return anonymousIndexedNumEventObservable(filter); - } - - public List getComplexIndexedEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(COMPLEXINDEXEDEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ComplexIndexedEventEventResponse typedResponse = new ComplexIndexedEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.choice = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.str = (byte[]) eventValues.getIndexedValues().get(2).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable complexIndexedEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ComplexIndexedEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(COMPLEXINDEXEDEVENT_EVENT, log); - ComplexIndexedEventEventResponse typedResponse = new ComplexIndexedEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - typedResponse.choice = (BigInteger) eventValues.getIndexedValues().get(1).getValue(); - typedResponse.str = (byte[]) eventValues.getIndexedValues().get(2).getValue(); - return typedResponse; - } - }); - } - - public Observable complexIndexedEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(COMPLEXINDEXEDEVENT_EVENT)); - return complexIndexedEventEventObservable(filter); - } - - public List getEnumEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ENUMEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EnumEventEventResponse typedResponse = new EnumEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.choices = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable enumEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EnumEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ENUMEVENT_EVENT, log); - EnumEventEventResponse typedResponse = new EnumEventEventResponse(); - typedResponse.log = log; - typedResponse.choices = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable enumEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ENUMEVENT_EVENT)); - return enumEventEventObservable(filter); - } - - public List getMinusEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(MINUSEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - MinusEventEventResponse typedResponse = new MinusEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.minus = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable minusEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public MinusEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(MINUSEVENT_EVENT, log); - MinusEventEventResponse typedResponse = new MinusEventEventResponse(); - typedResponse.log = log; - typedResponse.minus = (BigInteger) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable minusEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(MINUSEVENT_EVENT)); - return minusEventEventObservable(filter); - } - - public List getOneDimensionalArrayEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ONEDIMENSIONALARRAYEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - OneDimensionalArrayEventEventResponse typedResponse = new OneDimensionalArrayEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable oneDimensionalArrayEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public OneDimensionalArrayEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ONEDIMENSIONALARRAYEVENT_EVENT, log); - OneDimensionalArrayEventEventResponse typedResponse = new OneDimensionalArrayEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable oneDimensionalArrayEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ONEDIMENSIONALARRAYEVENT_EVENT)); - return oneDimensionalArrayEventEventObservable(filter); - } - - public List getStringEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(STRINGEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - StringEventEventResponse typedResponse = new StringEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.str = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable stringEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public StringEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(STRINGEVENT_EVENT, log); - StringEventEventResponse typedResponse = new StringEventEventResponse(); - typedResponse.log = log; - typedResponse.str = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable stringEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(STRINGEVENT_EVENT)); - return stringEventEventObservable(filter); - } - - public List getTwoDimensionalArrayEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TWODIMENSIONALARRAYEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TwoDimensionalArrayEventEventResponse typedResponse = new TwoDimensionalArrayEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable twoDimensionalArrayEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TwoDimensionalArrayEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TWODIMENSIONALARRAYEVENT_EVENT, log); - TwoDimensionalArrayEventEventResponse typedResponse = new TwoDimensionalArrayEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (byte[]) eventValues.getIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable twoDimensionalArrayEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TWODIMENSIONALARRAYEVENT_EVENT)); - return twoDimensionalArrayEventEventObservable(filter); - } - - public RemoteCall testAnonymousIndexed() { - final Function function = new Function( - FUNC_TESTANONYMOUSINDEXED, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testComplex() { - final Function function = new Function( - FUNC_TESTCOMPLEX, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testEnum() { - final Function function = new Function( - FUNC_TESTENUM, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testMinus(BigInteger value) { - final Function function = new Function( - FUNC_TESTMINUS, - Arrays.asList(new Int256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testOneDimensionalArray() { - final Function function = new Function( - FUNC_TESTONEDIMENSIONALARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testStr() { - final Function function = new Function( - FUNC_TESTSTR, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testTwoDimensionalArray() { - final Function function = new Function( - FUNC_TESTTWODIMENSIONALARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventIndexedContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventIndexedContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static EventIndexedContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new EventIndexedContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static EventIndexedContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new EventIndexedContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class AnonymousIndexedNumEventResponse { - public Log log; - - public BigInteger u1; - - public BigInteger u2; - - public BigInteger u3; - - public BigInteger u4; - } - - public static class ComplexIndexedEventEventResponse { - public Log log; - - public byte[] array; - - public BigInteger choice; - - public byte[] str; - } - - public static class EnumEventEventResponse { - public Log log; - - public BigInteger choices; - } - - public static class MinusEventEventResponse { - public Log log; - - public BigInteger minus; - } - - public static class OneDimensionalArrayEventEventResponse { - public Log log; - - public byte[] array; - } - - public static class StringEventEventResponse { - public Log log; - - public byte[] str; - } - - public static class TwoDimensionalArrayEventEventResponse { - public Log log; - - public byte[] array; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/EventTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/EventTypeContract.java deleted file mode 100644 index 9e7e5c33fe..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/EventTypeContract.java +++ /dev/null @@ -1,270 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.StaticArray2; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class EventTypeContract extends Contract { - private static final String BINARY = "60806040526040518060a00160405280600060ff168152602001600160ff168152602001600260ff168152602001600360ff168152602001600460ff16815250600090600561004f929190610177565b506040518060c001604052806040518060400160405280600060ff168152602001600060ff1681525081526020016040518060400160405280600060ff168152602001600160ff1681525081526020016040518060400160405280600060ff168152602001600260ff1681525081526020016040518060400160405280600060ff168152602001600360ff1681525081526020016040518060400160405280600060ff168152602001600460ff1681525081526020016040518060400160405280600060ff168152602001600560ff1681525081525060019060066101359291906101c9565b506040518060800160405280605881526020016106096058913960029080519060200190610164929190610227565b5034801561017157600080fd5b5061033b565b8280548282559060005260206000209081019282156101b8579160200282015b828111156101b7578251829060ff16905591602001919060010190610197565b5b5090506101c591906102a7565b5090565b828054828255906000526020600020906002028101928215610216579160200282015b82811115610215578251829060026102059291906102c4565b50916020019190600201906101ec565b5b5090506102239190610309565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061026857805160ff1916838001178555610296565b82800160010185558215610296579182015b8281111561029557825182559160200191906001019061027a565b5b5090506102a391906102a7565b5090565b5b808211156102c05760008160009055506001016102a8565b5090565b82600281019282156102f8579160200282015b828111156102f7578251829060ff169055916020019190600101906102d7565b5b50905061030591906102a7565b5090565b5b808211156103295760008181610320919061032d565b5060020161030a565b5090565b506000815560010160009055565b6102bf8061034a6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80633ac559931461005157806343ae41d81461005b578063b05dfcf814610065578063bbd847af1461006f575b600080fd5b610059610079565b005b610063610135565b005b61006d61017a565b005b6100776101f2565b005b7f617cf8a4400dd7963ed519ebe655a16e8da1282bb8fea36a21f634af912f54ab600260405180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156101255780601f106100fa57610100808354040283529160200191610125565b820191906000526020600020905b81548152906001019060200180831161010857829003601f168201915b50509250505060405180910390a1565b7fde7a62815e0b38238b6211179d7d98017a99227a90823b0f44227e81dd3ad9c260006040518082600381111561016857fe5b815260200191505060405180910390a1565b7f38a323fa24260bbb8b86f61cd1d8c1900024088af6d08eda9e2d793da33c1b586000604051808060200182810382528381815481526020019150805480156101e257602002820191906000526020600020905b8154815260200190600101908083116101ce575b50509250505060405180910390a1565b7f406715adbc90cbc793dcd5707190ad1390229b2a75cf5b5ca228b518ae52de9a60016040518080602001828103825283818154815260200191508054801561027957602002820191906000526020600020905b816002801561026a576020028201915b815481526020019060010190808311610256575b50509060020190808311610246575b50509250505060405180910390a156fea26469706673582212208e7812ee6016728f44f84f583d605a4f2703c4deed8342ce41a28085b0005c8364736f6c6343000701003331323334353637383930303937383635343332313132333435363738393030393837363534333231313233343536373839303039373634333534363636363633323432343434343434343434343735383331353436383536"; - - public static final String FUNC_TESTENUM = "testEnum"; - - public static final String FUNC_TESTONEDIMENSIONALARRAY = "testOneDimensionalArray"; - - public static final String FUNC_TESTSTR = "testStr"; - - public static final String FUNC_TESTTWODIMENSIONALARRAY = "testTwoDimensionalArray"; - - public static final Event ENUMEVENT_EVENT = new Event("EnumEvent", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event ONEDIMENSIONALARRAYEVENT_EVENT = new Event("OneDimensionalArrayEvent", - Arrays.>asList(new TypeReference>() {})); - ; - - public static final Event STRINGEVENT_EVENT = new Event("StringEvent", - Arrays.>asList(new TypeReference() {})); - ; - - public static final Event TWODIMENSIONALARRAYEVENT_EVENT = new Event("TwoDimensionalArrayEvent", - Arrays.>asList(new TypeReference>>() {})); - ; - - protected EventTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected EventTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getEnumEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ENUMEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - EnumEventEventResponse typedResponse = new EnumEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.choices = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable enumEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public EnumEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ENUMEVENT_EVENT, log); - EnumEventEventResponse typedResponse = new EnumEventEventResponse(); - typedResponse.log = log; - typedResponse.choices = (BigInteger) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable enumEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ENUMEVENT_EVENT)); - return enumEventEventObservable(filter); - } - - public List getOneDimensionalArrayEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ONEDIMENSIONALARRAYEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - OneDimensionalArrayEventEventResponse typedResponse = new OneDimensionalArrayEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (List) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable oneDimensionalArrayEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public OneDimensionalArrayEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(ONEDIMENSIONALARRAYEVENT_EVENT, log); - OneDimensionalArrayEventEventResponse typedResponse = new OneDimensionalArrayEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (List) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable oneDimensionalArrayEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(ONEDIMENSIONALARRAYEVENT_EVENT)); - return oneDimensionalArrayEventEventObservable(filter); - } - - public List getStringEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(STRINGEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - StringEventEventResponse typedResponse = new StringEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.str = (String) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable stringEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public StringEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(STRINGEVENT_EVENT, log); - StringEventEventResponse typedResponse = new StringEventEventResponse(); - typedResponse.log = log; - typedResponse.str = (String) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable stringEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(STRINGEVENT_EVENT)); - return stringEventEventObservable(filter); - } - - public List getTwoDimensionalArrayEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TWODIMENSIONALARRAYEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - TwoDimensionalArrayEventEventResponse typedResponse = new TwoDimensionalArrayEventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.array = (List>) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable twoDimensionalArrayEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TwoDimensionalArrayEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(TWODIMENSIONALARRAYEVENT_EVENT, log); - TwoDimensionalArrayEventEventResponse typedResponse = new TwoDimensionalArrayEventEventResponse(); - typedResponse.log = log; - typedResponse.array = (List>) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable twoDimensionalArrayEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(TWODIMENSIONALARRAYEVENT_EVENT)); - return twoDimensionalArrayEventEventObservable(filter); - } - - public RemoteCall testEnum() { - final Function function = new Function( - FUNC_TESTENUM, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testOneDimensionalArray() { - final Function function = new Function( - FUNC_TESTONEDIMENSIONALARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testStr() { - final Function function = new Function( - FUNC_TESTSTR, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testTwoDimensionalArray() { - final Function function = new Function( - FUNC_TESTTWODIMENSIONALARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventTypeContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(EventTypeContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static EventTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new EventTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static EventTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new EventTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class EnumEventEventResponse { - public Log log; - - public BigInteger choices; - } - - public static class OneDimensionalArrayEventEventResponse { - public Log log; - - public List array; - } - - public static class StringEventEventResponse { - public Log log; - - public String str; - } - - public static class TwoDimensionalArrayEventEventResponse { - public Log log; - - public List> array; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/External.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/External.java deleted file mode 100644 index e325436815..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/External.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class External extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b5060968061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063569c5f6d14602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b60008060019050600060029050808201925050509056fea2646970667358221220849feb7e1607a5cd0f6e16bed143d82e8f57badf48987a05567131c34fc8b2a064736f6c63430007010033"; - - public static final String FUNC_GETSUM = "getSum"; - - protected External(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected External(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getSum() { - final Function function = new Function(FUNC_GETSUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(External.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(External.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static External load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new External(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static External load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new External(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/FallBack.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/FallBack.java deleted file mode 100644 index 6f8296105e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/FallBack.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class FallBack extends Contract { - private static final String BINARY = "6080604052600160005534801561001557600080fd5b5061012b806100256000396000f3fe6080604052348015600f57600080fd5b506004361060355760003560e01c8063d1f1548f146040578063d46300fd146048576036565b5b6064600081905550005b60466064565b005b604e60ec565b6040518082815260200191505060405180910390f35b3073ffffffffffffffffffffffffffffffffffffffff1660405180807f66756e6374696f6e4e6f744578697374282900000000000000000000000000008152506012019050600060405180830381855af49150503d806000811460e2576040519150601f19603f3d011682016040523d82523d6000602084013e60e7565b606091505b505050565b6000805490509056fea2646970667358221220df5f5c723b5d1e2c6296acc40e8a3d35043c3ab3089bb85c519ac2f277d7426064736f6c63430007010033"; - - public static final String FUNC_CALLFUNCTIONNOTEXIST = "CallFunctionNotExist"; - - public static final String FUNC_GETA = "getA"; - - protected FallBack(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected FallBack(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall CallFunctionNotExist() { - final Function function = new Function( - FUNC_CALLFUNCTIONNOTEXIST, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getA() { - final Function function = new Function(FUNC_GETA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FallBack.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FallBack.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static FallBack load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new FallBack(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static FallBack load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new FallBack(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ForError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ForError.java deleted file mode 100644 index a9eb6cd3b0..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ForError.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ForError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061014a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063895e3ada1461003b578063ec56ae5d1461005b575b600080fd5b61004361007b565b60405180821515815260200191505060405180910390f35b6100636100a0565b60405180821515815260200191505060405180910390f35b6000806100866100c5565b90508060000160009054906101000a900460ff1691505090565b6000806100ab6100ee565b90508060000160009054906101000a900460ff1691505090565b60005b600115158160000160009054906101000a900460ff16151514156100eb576100c8565b90565b60005b600190508060000160009054906101000a900460ff1615610111576100f1565b9056fea26469706673582212200f48f7eb9d2f391d55d69a257bc617f308ac17acd1a647f88350012a7c149d7364736f6c63430007010033"; - - public static final String FUNC_GETFORCONTROLRES = "getForControlRes"; - - public static final String FUNC_GETFORCONTROLRES1 = "getForControlRes1"; - - protected ForError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ForError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getForControlRes() { - final Function function = new Function(FUNC_GETFORCONTROLRES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getForControlRes1() { - final Function function = new Function(FUNC_GETFORCONTROLRES1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ForError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ForError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ForError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ForError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ForError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ForError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/FunctionDeclaraction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/FunctionDeclaraction.java deleted file mode 100644 index bf32d70ec8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/FunctionDeclaraction.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class FunctionDeclaraction extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101d5806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806312065fe014610046578063ab95edb114610064578063cb533b38146100c3575b600080fd5b61004e610122565b6040518082815260200191505060405180910390f35b6100906004803603602081101561007a57600080fd5b810190808035906020019092919050505061012b565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6100ef600480360360208110156100d957600080fd5b8101908080359060200190929190505050610146565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b60008054905090565b60008061013783610161565b50503360005491509150915091565b60008061015283610180565b50503360005491509150915091565b6000808260008082825401925050819055503360005491509150915091565b600080826000808282540192505081905550336000549150915091509156fea2646970667358221220f4629731894c033591d5ec5dfccd6bcec7f2086f6205f314cc5a27011075cd7764736f6c63430007010033"; - - public static final String FUNC_GETBALANCE = "getBalance"; - - public static final String FUNC_UPDATE_EXTERNAL = "update_external"; - - public static final String FUNC_UPDATE_PUBLIC = "update_public"; - - protected FunctionDeclaraction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected FunctionDeclaraction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBalance() { - final Function function = new Function(FUNC_GETBALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update_external(BigInteger amount_ex) { - final Function function = new Function( - FUNC_UPDATE_EXTERNAL, - Arrays.asList(new Uint256(amount_ex)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall update_public(BigInteger amount_pu) { - final Function function = new Function( - FUNC_UPDATE_PUBLIC, - Arrays.asList(new Uint256(amount_pu)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FunctionDeclaraction.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FunctionDeclaraction.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static FunctionDeclaraction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new FunctionDeclaraction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static FunctionDeclaraction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new FunctionDeclaraction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/FunctionParam.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/FunctionParam.java deleted file mode 100644 index 08b0194563..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/FunctionParam.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class FunctionParam extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060d18061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806326121ff014603757806392d0d153146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b6059607e565b6040518082815260200191505060405180910390f35b60006079607e6087565b905090565b60006007905090565b600060948263ffffffff16565b905091905056fea26469706673582212202a803c4b5a480412c6b0d42f39b44fe53dabcdba3e808d756edd8d8d57abdf2564736f6c63430007010033"; - - public static final String FUNC_F = "f"; - - public static final String FUNC_T = "t"; - - protected FunctionParam(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected FunctionParam(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f() { - final Function function = new Function( - FUNC_F, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall t() { - final Function function = new Function(FUNC_T, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FunctionParam.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(FunctionParam.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static FunctionParam load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new FunctionParam(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static FunctionParam load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new FunctionParam(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/GetLibraryAddress.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/GetLibraryAddress.java deleted file mode 100644 index ad95462b0e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/GetLibraryAddress.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class GetLibraryAddress extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610126806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80636e7c1504146037578063750c193514603f575b600080fd5b603d6071565b005b604560c7565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b73__$d9e18834d71e1c5ab303d445c6c5d0be1e$__6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690509056fea2646970667358221220b48190594ad6079126f4ba6ff72e991320a3b53838d890c86bd412e2051fe45364736f6c63430007010033\n" - + "\n" - + "// $d9e18834d71e1c5ab303d445c6c5d0be1e$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/8-address_LibraryName/UserLibrary.sol:UserLibrary"; - - public static final String FUNC_GETUSERLIBADDRESS = "getUserLibAddress"; - - public static final String FUNC_SETUSERLIBADDRESS = "setUserLibAddress"; - - protected GetLibraryAddress(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected GetLibraryAddress(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getUserLibAddress() { - final Function function = new Function(FUNC_GETUSERLIBADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setUserLibAddress() { - final Function function = new Function( - FUNC_SETUSERLIBADDRESS, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(GetLibraryAddress.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(GetLibraryAddress.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static GetLibraryAddress load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new GetLibraryAddress(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static GetLibraryAddress load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new GetLibraryAddress(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Getter.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Getter.java deleted file mode 100644 index 7ecf322dee..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Getter.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Getter extends Contract { - private static final String BINARY = "6080604052600a60005534801561001557600080fd5b50610149806100256000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806326121ff01461003b57806373d4a13a14610060575b600080fd5b61004361007e565b604051808381526020018281526020019250505060405180910390f35b61006861010d565b6040518082815260200191505060405180910390f35b6000806000543073ffffffffffffffffffffffffffffffffffffffff166373d4a13a6040518163ffffffff1660e01b815260040160206040518083038186803b1580156100ca57600080fd5b505afa1580156100de573d6000803e3d6000fd5b505050506040513d60208110156100f457600080fd5b8101908080519060200190929190505050915091509091565b6000548156fea2646970667358221220130eaa544f0358226ceaa823fbc69c08f60b7c83de60c8cb3c4de46019f0b5c164736f6c63430007010033"; - - public static final String FUNC_DATA = "data"; - - public static final String FUNC_F = "f"; - - protected Getter(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Getter(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall data() { - final Function function = new Function(FUNC_DATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> f() { - final Function function = new Function(FUNC_F, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Getter.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Getter.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Getter load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Getter(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Getter load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Getter(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Guessing.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Guessing.java deleted file mode 100644 index ab40c53a9b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Guessing.java +++ /dev/null @@ -1,390 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Guessing extends Contract { - private static final String BINARY = "60806040526000600260006101000a81548160ff021916908315150217905550674563918244f400006003556001600a556000600d5534801561004157600080fd5b5060405161122b38038061122b8339818101604052602081101561006457600080fd5b810190808051906020019092919050505033600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806000819055505061115e806100cd6000396000f3fe6080604052600436106101445760003560e01c806382d333a0116100b6578063b69ef8a81161006f578063b69ef8a814610602578063c2930f911461062d578063c29bde8c14610658578063c7f40b6414610683578063ecbde5e6146106c4578063ff37be16146106ef57610155565b806382d333a01461041d5780638941f2f01461044857806394696a9214610497578063a46c363714610503578063ae4479411461052e578063b03e00771461059357610155565b806313eaca431161010857806313eaca43146102af5780631ef9c56f146102dc578063220bc55e1461034857806327ebd9ab14610352578063629374ab1461037d5780636e5ab671146103b857610155565b8063045f9c9714610164578063062d6a98146101c9578063083c6323146101f4578063094cc1ab1461021f5780630b8b85021461024a57610155565b3661015557610153343361071a565b005b34801561016157600080fd5b50005b34801561017057600080fd5b5061019d6004803603602081101561018757600080fd5b81019080803590602001909291905050506108c2565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101d557600080fd5b506101de6108fe565b6040518082815260200191505060405180910390f35b34801561020057600080fd5b50610209610904565b6040518082815260200191505060405180910390f35b34801561022b57600080fd5b5061023461090a565b6040518082815260200191505060405180910390f35b34801561025657600080fd5b506102836004803603602081101561026d57600080fd5b8101908080359060200190929190505050610910565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156102bb57600080fd5b506102c4610943565b60405180821515815260200191505060405180910390f35b3480156102e857600080fd5b506102f1610956565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610334578082015181840152602081019050610319565b505050509050019250505060405180910390f35b6103506109e4565b005b34801561035e57600080fd5b506103676109f0565b6040518082815260200191505060405180910390f35b34801561038957600080fd5b506103b6600480360360208110156103a057600080fd5b8101908080359060200190929190505050610a1a565b005b3480156103c457600080fd5b50610407600480360360208110156103db57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ddc565b6040518082815260200191505060405180910390f35b34801561042957600080fd5b50610432610df4565b6040518082815260200191505060405180910390f35b34801561045457600080fd5b506104816004803603602081101561046b57600080fd5b8101908080359060200190929190505050610dfa565b6040518082815260200191505060405180910390f35b3480156104a357600080fd5b506104ac610e23565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156104ef5780820151818401526020810190506104d4565b505050509050019250505060405180910390f35b34801561050f57600080fd5b50610518610eb8565b6040518082815260200191505060405180910390f35b34801561053a57600080fd5b5061057d6004803603602081101561055157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ec5565b6040518082815260200191505060405180910390f35b34801561059f57600080fd5b506105ec600480360360408110156105b657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610edd565b6040518082815260200191505060405180910390f35b34801561060e57600080fd5b50610617610f0b565b6040518082815260200191505060405180910390f35b34801561063957600080fd5b50610642610f11565b6040518082815260200191505060405180910390f35b34801561066457600080fd5b5061066d610f17565b6040518082815260200191505060405180910390f35b34801561068f57600080fd5b50610698610f1d565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106d057600080fd5b506106d9610f43565b6040518082815260200191505060405180910390f35b3480156106fb57600080fd5b50610704610f4b565b6040518082815260200191505060405180910390f35b43600054106108be5760035482101561073257600080fd5b600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a5490806001815401808255809150506001900390600052602060002001600090919091909150558060076000600a54815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600a6000815480929190600101919050555081600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816004600082825401925050819055507fe842aea7a5f1b01049d752008c53c52890b1a6daf660cf39e8eec506112bbdf681836001604051808473ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018215158152602001935050505060405180910390a15b5050565b600b81815481106108cf57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b60005481565b600d5481565b60076020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900460ff1681565b6060600b8054806020026020016040519081016040528092919081815260200182805480156109da57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610990575b5050505050905090565b6109ee343361071a565b565b600060011515600260009054906101000a900460ff16151514610a1257600080fd5b600d54905090565b600054431115610dd957600260009054906101000a900460ff16158015610a8e57503373ffffffffffffffffffffffffffffffffffffffff16600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b8015610a9c57506001600a54115b15610dd857600081604051602001808281526020019150506040516020818303038152906040528051906020012060001c90506000600a548281610adc57fe5b0690506064600a541015610afa57610af581600a610f55565b610b24565b612710600a541015610b1657610b11816064610f55565b610b23565b610b22816103e8610f55565b5b5b600b8054905060045481610b3457fe5b04600581905550600080600090505b600b80549050811015610db157600160096000600b8481548110610b6357fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540160096000600b8481548110610bdb57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff16600b8281548110610c6957fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141580610d1b5750600073ffffffffffffffffffffffffffffffffffffffff16600b8281548110610cd757fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b15610da457600b8181548110610d2d57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1691508173ffffffffffffffffffffffffffffffffffffffff166108fc6005549081150290604051600060405180830381858888f19350505050158015610da2573d6000803e3d6000fd5b505b8080600101915050610b43565b506001600260006101000a81548160ff021916908315150217905550836001819055505050505b5b50565b60096020528060005260406000206000915090505481565b60055481565b6000610101430382118015610e1157506001430382105b610e1a57600080fd5b81409050919050565b6060600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610eae57602002820191906000526020600020905b815481526020019060010190808311610e9a575b5050505050905090565b6000600b80549050905090565b60066020528060005260406000206000915090505481565b60086020528160005260406000208181548110610ef657fe5b90600052602060002001600091509150505481565b60045481565b60035481565b60015481565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600047905090565b6000600154905090565b808281610f5e57fe5b06600d819055506000600d541415611041576000600190505b600a5481101561103b57600082600d54830381610f9057fe5b06141561102e57600b6007600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b8080600101915050610f77565b50611124565b6000600190505b600a5481101561112257600082828161105d57fe5b06141580156110795750600082600d5483038161107657fe5b06145b1561111557600b6007600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b8080600101915050611048565b505b505056fea264697066735822122019788075e7b7a29c1813cbaa81c1e403b514ffac5068d38ac73d45e70e55e8fe64736f6c63430007010033"; - - public static final String FUNC_AVERAGEAMOUNT = "averageAmount"; - - public static final String FUNC_BALANCE = "balance"; - - public static final String FUNC_BASEUNIT = "baseUnit"; - - public static final String FUNC_BLOCK_HASH = "block_hash"; - - public static final String FUNC_CREATEADDRESS = "createAddress"; - - public static final String FUNC_DRAW = "draw"; - - public static final String FUNC_ENDBLOCK = "endBlock"; - - public static final String FUNC_GENERATEBLOCKHASH = "generateBlockHash"; - - public static final String FUNC_GETBALANCEOF = "getBalanceOf"; - - public static final String FUNC_GETENDBLOCKHASH = "getEndBlockHash"; - - public static final String FUNC_GETMYGUESSCODES = "getMyGuessCodes"; - - public static final String FUNC_GETPOSTFIX = "getPostfix"; - - public static final String FUNC_GETWINNERADDRESSES = "getWinnerAddresses"; - - public static final String FUNC_GETWINNERCOUNT = "getWinnerCount"; - - public static final String FUNC_GUESSINGCLOSED = "guessingClosed"; - - public static final String FUNC_GUESSINGWITHLAT = "guessingWithLat"; - - public static final String FUNC_GUSSINGERCODES = "gussingerCodes"; - - public static final String FUNC_GUSSINGERLAT = "gussingerLat"; - - public static final String FUNC_INDEXKEY = "indexKey"; - - public static final String FUNC_INDEXOFGUSSINGER = "indexOfgussinger"; - - public static final String FUNC_POSTFIX = "postfix"; - - public static final String FUNC_WINNERADDRESSES = "winnerAddresses"; - - public static final String FUNC_WINNERMAP = "winnerMap"; - - public static final Event CURRENTBALANCE_EVENT = new Event("CurrentBalance", - Arrays.>asList(new TypeReference

() {}, new TypeReference() {})); - ; - - public static final Event FUNDTRANSFER_EVENT = new Event("FundTransfer", - Arrays.>asList(new TypeReference
() {}, new TypeReference() {}, new TypeReference() {})); - ; - - protected Guessing(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Guessing(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _endBlock) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_endBlock))); - return deployRemoteCall(Guessing.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _endBlock) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_endBlock))); - return deployRemoteCall(Guessing.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public List getCurrentBalanceEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(CURRENTBALANCE_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - CurrentBalanceEventResponse typedResponse = new CurrentBalanceEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._msgSenderAddress = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._balance = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable currentBalanceEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public CurrentBalanceEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(CURRENTBALANCE_EVENT, log); - CurrentBalanceEventResponse typedResponse = new CurrentBalanceEventResponse(); - typedResponse.log = log; - typedResponse._msgSenderAddress = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._balance = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - return typedResponse; - } - }); - } - - public Observable currentBalanceEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(CURRENTBALANCE_EVENT)); - return currentBalanceEventObservable(filter); - } - - public List getFundTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(FUNDTRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - FundTransferEventResponse typedResponse = new FundTransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse._backer = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._amount = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - typedResponse._isSuccess = (Boolean) eventValues.getNonIndexedValues().get(2).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable fundTransferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public FundTransferEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(FUNDTRANSFER_EVENT, log); - FundTransferEventResponse typedResponse = new FundTransferEventResponse(); - typedResponse.log = log; - typedResponse._backer = (String) eventValues.getNonIndexedValues().get(0).getValue(); - typedResponse._amount = (BigInteger) eventValues.getNonIndexedValues().get(1).getValue(); - typedResponse._isSuccess = (Boolean) eventValues.getNonIndexedValues().get(2).getValue(); - return typedResponse; - } - }); - } - - public Observable fundTransferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(FUNDTRANSFER_EVENT)); - return fundTransferEventObservable(filter); - } - - public RemoteCall averageAmount() { - final Function function = new Function(FUNC_AVERAGEAMOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall balance() { - final Function function = new Function(FUNC_BALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall baseUnit() { - final Function function = new Function(FUNC_BASEUNIT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall block_hash() { - final Function function = new Function(FUNC_BLOCK_HASH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall createAddress() { - final Function function = new Function(FUNC_CREATEADDRESS, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall draw(byte[] _block_hash) { - final Function function = new Function( - FUNC_DRAW, - Arrays.asList(new Bytes32(_block_hash)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall endBlock() { - final Function function = new Function(FUNC_ENDBLOCK, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall generateBlockHash(BigInteger _blocknumber) { - final Function function = new Function(FUNC_GENERATEBLOCKHASH, - Arrays.asList(new Uint256(_blocknumber)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getBalanceOf() { - final Function function = new Function(FUNC_GETBALANCEOF, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getEndBlockHash() { - final Function function = new Function(FUNC_GETENDBLOCKHASH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getMyGuessCodes() { - final Function function = new Function(FUNC_GETMYGUESSCODES, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall getPostfix() { - final Function function = new Function(FUNC_GETPOSTFIX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getWinnerAddresses() { - final Function function = new Function(FUNC_GETWINNERADDRESSES, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall getWinnerCount() { - final Function function = new Function(FUNC_GETWINNERCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall guessingClosed() { - final Function function = new Function(FUNC_GUESSINGCLOSED, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall guessingWithLat(BigInteger vonValue) { - final Function function = new Function( - FUNC_GUESSINGWITHLAT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall gussingerCodes(String param0, BigInteger param1) { - final Function function = new Function(FUNC_GUSSINGERCODES, - Arrays.asList(new Address(param0), - new Uint256(param1)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall gussingerLat(String param0) { - final Function function = new Function(FUNC_GUSSINGERLAT, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall indexKey() { - final Function function = new Function(FUNC_INDEXKEY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall indexOfgussinger(BigInteger param0) { - final Function function = new Function(FUNC_INDEXOFGUSSINGER, - Arrays.asList(new Uint256(param0)), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall postfix() { - final Function function = new Function(FUNC_POSTFIX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall winnerAddresses(BigInteger param0) { - final Function function = new Function(FUNC_WINNERADDRESSES, - Arrays.asList(new Uint256(param0)), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall winnerMap(String param0) { - final Function function = new Function(FUNC_WINNERMAP, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static Guessing load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Guessing(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Guessing load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Guessing(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class CurrentBalanceEventResponse { - public Log log; - - public String _msgSenderAddress; - - public BigInteger _balance; - } - - public static class FundTransferEventResponse { - public Log log; - - public String _backer; - - public BigInteger _amount; - - public Boolean _isSuccess; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/HexLiteralsChangeByte.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/HexLiteralsChangeByte.java deleted file mode 100644 index 7ddab69bda..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/HexLiteralsChangeByte.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class HexLiteralsChangeByte extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101c8806100206000396000f3fe6080604052600436106100345760003560e01c80630b7f166514610039578063420343a414610086578063ee495002146100c6575b600080fd5b34801561004557600080fd5b5061004e610113565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b61008e610129565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b3480156100d257600080fd5b506100db610181565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b60008060009054906101000a900460f81b905090565b6000807f6162000000000000000000000000000000000000000000000000000000000000905060f160f81b6000806101000a81548160ff021916908360f81c021790555060008054906101000a900460f81b91505090565b60008054906101000a900460f81b8156fea2646970667358221220e732d437603895dfd7a82bfaaa9b4eea38e04b2265776912c8d400f08299589264736f6c63430007010033"; - - public static final String FUNC_B1 = "b1"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_TESTCHANGE = "testChange"; - - protected HexLiteralsChangeByte(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected HexLiteralsChangeByte(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall b1() { - final Function function = new Function(FUNC_B1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall testChange(BigInteger vonValue) { - final Function function = new Function( - FUNC_TESTCHANGE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(HexLiteralsChangeByte.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(HexLiteralsChangeByte.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static HexLiteralsChangeByte load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new HexLiteralsChangeByte(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static HexLiteralsChangeByte load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new HexLiteralsChangeByte(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/IfError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/IfError.java deleted file mode 100644 index 7296be35b7..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/IfError.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class IfError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610132806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806349b9d30f146037578063c77beeb6146055575b600080fd5b603d6073565b60405180821515815260200191505060405180910390f35b605b6098565b60405180821515815260200191505060405180910390f35b600080607e600160bd565b90508060000160009054906101000a900460ff1691505090565b60008060a3600160d6565b90508060000160009054906101000a900460ff1691505090565b6000811560cc576000905060d1565b600090505b919050565b6000811560e5576000905060f7565b8160f1576000905060f6565b600090505b5b91905056fea2646970667358221220205fe28f4931e078d195fddd901b10d8da1b464c3c692b7301dce36313b08f0064736f6c63430007010033"; - - public static final String FUNC_GETIFCONTROLRES = "getIfControlRes"; - - public static final String FUNC_GETIFCONTROLRES1 = "getIfControlRes1"; - - protected IfError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected IfError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getIfControlRes() { - final Function function = new Function(FUNC_GETIFCONTROLRES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getIfControlRes1() { - final Function function = new Function(FUNC_GETIFCONTROLRES1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(IfError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(IfError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static IfError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new IfError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static IfError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new IfError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractAMutipleClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractAMutipleClass.java deleted file mode 100644 index 533de4c6c2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractAMutipleClass.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractAMutipleClass extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060c88061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063430fe9c11460375780635fcceceb146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b6059607c565b6040518082815260200191505060405180910390f35b600060776089565b905090565b60006084606f565b905090565b6000600290509056fea26469706673582212203937eeeca88dd0bc26e8984dc14ba2ba1a324b5cf435b7559266697889195ef564736f6c63430007010033"; - - public static final String FUNC_CALLGETDATEA = "callGetDateA"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractAMutipleClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractAMutipleClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callGetDateA() { - final Function function = new Function(FUNC_CALLGETDATEA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractAMutipleClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractAMutipleClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractAMutipleClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractAMutipleClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractAMutipleClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractAMutipleClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractAParentBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractAParentBase.java deleted file mode 100644 index 164509728f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractAParentBase.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractAParentBase extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060fd8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80631416d3471460375780638da5cb5b146069575b600080fd5b603d609b565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b606f60a3565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600033905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff168156fea26469706673582212204a4b426b9012f799224b6a2fe9856b8e039a4999d7b6182f362323e9025332d764736f6c63430007010033"; - - public static final String FUNC_GETADDRESSA = "getAddressA"; - - public static final String FUNC_OWNER = "owner"; - - protected InheritContractAParentBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractAParentBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddressA() { - final Function function = new Function(FUNC_GETADDRESSA, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall owner() { - final Function function = new Function(FUNC_OWNER, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractAParentBase.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractAParentBase.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractAParentBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractAParentBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractAParentBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractAParentBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractASub.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractASub.java deleted file mode 100644 index dec1ed73e6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractASub.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractASub extends Contract { - private static final String BINARY = "608060405260008055348015601357600080fd5b506002806000819055505060888061002c6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063a46cf4b314602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000805490509056fea264697066735822122019e1e4999258ee77a214230301548618117daef016766338cd270f7de31263c664736f6c63430007010033"; - - public static final String FUNC_GETDATAA = "getDataA"; - - protected InheritContractASub(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractASub(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDataA() { - final Function function = new Function(FUNC_GETDATAA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractASub.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractASub.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractASub load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractASub(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractASub load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractASub(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractBMutipleClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractBMutipleClass.java deleted file mode 100644 index f179b4a3ae..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractBMutipleClass.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractBMutipleClass extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060c88061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063430fe9c114603757806354b39533146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b6059607c565b6040518082815260200191505060405180910390f35b600060776089565b905090565b60006084606f565b905090565b6000600190509056fea26469706673582212205df23a5e6b2d747c9443ed4fd8d27735a87302cd6b474e0d1f3ec470e9e626d764736f6c63430007010033"; - - public static final String FUNC_CALLGETDATEB = "callGetDateB"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractBMutipleClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractBMutipleClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callGetDateB() { - final Function function = new Function(FUNC_CALLGETDATEB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBMutipleClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBMutipleClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractBMutipleClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBMutipleClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractBMutipleClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBMutipleClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractBParentBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractBParentBase.java deleted file mode 100644 index 544dd51622..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractBParentBase.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractBParentBase extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b50609d8061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80636c3364ea14602d575b600080fd5b6033605f565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60003390509056fea26469706673582212209af347e5def5bdeb51d0f50cc8b7629f29d346c8a4124bedf00bdf81a199bb8164736f6c63430007010033"; - - public static final String FUNC_GETADDRESSB = "getAddressB"; - - protected InheritContractBParentBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractBParentBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddressB() { - final Function function = new Function(FUNC_GETADDRESSB, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBParentBase.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBParentBase.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractBParentBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBParentBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractBParentBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBParentBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractBSub.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractBSub.java deleted file mode 100644 index 3a84f6f4e8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractBSub.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractBSub extends Contract { - private static final String BINARY = "608060405260008055348015601357600080fd5b506003806000819055505060006001905060005481016001819055505060898061003e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80635873f05614602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b600060015490509056fea264697066735822122054df7d1bd9873cdc37eb392a3a82a3af161a9faf4786d949515435beeae27df764736f6c63430007010033"; - - public static final String FUNC_GETDATAB = "getDataB"; - - protected InheritContractBSub(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractBSub(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBSub.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractBSub.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getDataB() { - final Function function = new Function(FUNC_GETDATAB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static InheritContractBSub load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBSub(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractBSub load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBSub(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractBase.java deleted file mode 100644 index 0e5302a5fd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractBase.java +++ /dev/null @@ -1,51 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractBase extends Contract { - private static final String BINARY = "608060405260008055348015601357600080fd5b506040516098380380609883398181016040526020811015603357600080fd5b81019080805190602001909291905050508060008190555050603f8060596000396000f3fe6080604052600080fdfea264697066735822122047b5570ffd1245671eedee2ea4e069663b620550fd34b1f49b1439396b28566c64736f6c63430007010033"; - - protected InheritContractBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger x) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(x))); - return deployRemoteCall(InheritContractBase.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger x) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(x))); - return deployRemoteCall(InheritContractBase.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static InheritContractBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractOverload.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractOverload.java deleted file mode 100644 index bd57bcfe4e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractOverload.java +++ /dev/null @@ -1,88 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractOverload extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101aa806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80635873f056146100515780639450268b1461006f578063a46cf4b3146100c5578063cad0899b146100e3575b600080fd5b61005961012f565b6040518082815260200191505060405180910390f35b6100af6004803603606081101561008557600080fd5b81019080803590602001909291908035906020019092919080359060200190929190505050610144565b6040518082815260200191505060405180910390f35b6100cd610154565b6040518082815260200191505060405180910390f35b610119600480360360408110156100f957600080fd5b810190808035906020019092919080359060200190929190505050610167565b6040518082815260200191505060405180910390f35b600061013f600160026003610144565b905090565b6000818385010190509392505050565b600061016260016002610167565b905090565b600081830190509291505056fea2646970667358221220c323a35ca79886008f12216ff452b88f123cf03b20b4b0917086041e471652f664736f6c63430007010033"; - - public static final String FUNC_GETDATAA = "getDataA"; - - public static final String FUNC_GETDATAB = "getDataB"; - - public static final String FUNC_SUM = "sum"; - - protected InheritContractOverload(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractOverload(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDataA() { - final Function function = new Function(FUNC_GETDATAA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDataB() { - final Function function = new Function(FUNC_GETDATAB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall sum(BigInteger a, BigInteger b, BigInteger c) { - final Function function = new Function(FUNC_SUM, - Arrays.asList(new Uint256(a), - new Uint256(b), - new Uint256(c)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall sum(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUM, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverload.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverload.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractOverload load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverload(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractOverload load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverload(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractOverloadBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractOverloadBase.java deleted file mode 100644 index 4a6d4a8a5f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractOverloadBase.java +++ /dev/null @@ -1,108 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractOverloadBase extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101b6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80630b7f1665146100675780630c55699c146100855780635197c7aa146100a3578063a56dfe4a146100c1578063a5843f08146100df578063b7b0422d14610117575b600080fd5b61006f610145565b6040518082815260200191505060405180910390f35b61008d61014f565b6040518082815260200191505060405180910390f35b6100ab610155565b6040518082815260200191505060405180910390f35b6100c961015e565b6040518082815260200191505060405180910390f35b610115600480360360408110156100f557600080fd5b810190808035906020019092919080359060200190929190505050610164565b005b6101436004803603602081101561012d57600080fd5b8101908080359060200190929190505050610176565b005b6000600154905090565b60005481565b60008054905090565b60015481565b81600081905550806001819055505050565b806000819055505056fea2646970667358221220bbaec6132e360b08648261295e53dce95690974ac4fdae12d7d25f0cb6a09d6e64736f6c63430007010033"; - - public static final String FUNC_GETX = "getX"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_INIT = "init"; - - public static final String FUNC_X = "x"; - - public static final String FUNC_Y = "y"; - - protected InheritContractOverloadBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractOverloadBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getX() { - final Function function = new Function(FUNC_GETX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall init(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall init(BigInteger a) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall y() { - final Function function = new Function(FUNC_Y, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadBase.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadBase.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractOverloadBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractOverloadBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractOverloadBaseBase.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractOverloadBaseBase.java deleted file mode 100644 index 3e44bf3725..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractOverloadBaseBase.java +++ /dev/null @@ -1,108 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractOverloadBaseBase extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101b9806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80630b7f1665146100675780630c55699c146100855780635197c7aa146100a3578063a56dfe4a146100c1578063a5843f08146100df578063b7b0422d14610117575b600080fd5b61006f610145565b6040518082815260200191505060405180910390f35b61008d61014f565b6040518082815260200191505060405180910390f35b6100ab610155565b6040518082815260200191505060405180910390f35b6100c961015e565b6040518082815260200191505060405180910390f35b610115600480360360408110156100f557600080fd5b810190808035906020019092919080359060200190929190505050610164565b005b6101436004803603602081101561012d57600080fd5b8101908080359060200190929190505050610176565b005b6000600154905090565b60005481565b60008054905090565b60015481565b80600081905550816001819055505050565b600181016000819055505056fea26469706673582212203f43391596ee0a365b5cd783755482476130648a14218939fb70debb8096d0ea64736f6c63430007010033"; - - public static final String FUNC_GETX = "getX"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_INIT = "init"; - - public static final String FUNC_X = "x"; - - public static final String FUNC_Y = "y"; - - protected InheritContractOverloadBaseBase(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractOverloadBaseBase(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getX() { - final Function function = new Function(FUNC_GETX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall init(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall init(BigInteger a) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall y() { - final Function function = new Function(FUNC_Y, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadBaseBase.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadBaseBase.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractOverloadBaseBase load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadBaseBase(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractOverloadBaseBase load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadBaseBase(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractOverloadChild.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractOverloadChild.java deleted file mode 100644 index 54bd6749f7..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractOverloadChild.java +++ /dev/null @@ -1,146 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractOverloadChild extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610311806100206000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c8063a56dfe4a11610066578063a56dfe4a14610163578063a5843f0814610181578063b7b0422d146101b9578063cedf673f146101e7578063fa98b8671461021f5761009e565b80630b7f1665146100a35780630c55699c146100c15780631c5e6b98146100df5780635197c7aa1461010d578063560512c61461012b575b600080fd5b6100ab61024d565b6040518082815260200191505060405180910390f35b6100c9610257565b6040518082815260200191505060405180910390f35b61010b600480360360208110156100f557600080fd5b810190808035906020019092919050505061025d565b005b610115610269565b6040518082815260200191505060405180910390f35b6101616004803603604081101561014157600080fd5b810190808035906020019092919080359060200190929190505050610272565b005b61016b610280565b6040518082815260200191505060405180910390f35b6101b76004803603604081101561019757600080fd5b810190808035906020019092919080359060200190929190505050610286565b005b6101e5600480360360208110156101cf57600080fd5b8101908080359060200190929190505050610298565b005b61021d600480360360408110156101fd57600080fd5b8101908080359060200190929190803590602001909291905050506102a2565b005b61024b6004803603602081101561023557600080fd5b81019080803590602001909291905050506102b0565b005b6000600154905090565b60005481565b610266816102bc565b50565b60008054905090565b61027c8282610286565b5050565b60015481565b81600081905550806001819055505050565b8060008190555050565b6102ac82826102c9565b5050565b6102b981610298565b50565b6001810160008190555050565b8060008190555081600181905550505056fea26469706673582212200ececf0a0a08f68e1d0522512860dbab6cac37b1d7cdae77a961bf05b9e50ec464736f6c63430007010033"; - - public static final String FUNC_GETX = "getX"; - - public static final String FUNC_GETY = "getY"; - - public static final String FUNC_INIT = "init"; - - public static final String FUNC_INITBASE = "initBase"; - - public static final String FUNC_INITBASEBASE = "initBaseBase"; - - public static final String FUNC_X = "x"; - - public static final String FUNC_Y = "y"; - - protected InheritContractOverloadChild(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractOverloadChild(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getX() { - final Function function = new Function(FUNC_GETX, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getY() { - final Function function = new Function(FUNC_GETY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall init(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall init(BigInteger a) { - final Function function = new Function( - FUNC_INIT, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initBase(BigInteger c, BigInteger d) { - final Function function = new Function( - FUNC_INITBASE, - Arrays.asList(new Uint256(c), - new Uint256(d)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initBase(BigInteger c) { - final Function function = new Function( - FUNC_INITBASE, - Arrays.asList(new Uint256(c)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initBaseBase(BigInteger c) { - final Function function = new Function( - FUNC_INITBASEBASE, - Arrays.asList(new Uint256(c)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initBaseBase(BigInteger c, BigInteger d) { - final Function function = new Function( - FUNC_INITBASEBASE, - Arrays.asList(new Uint256(c), - new Uint256(d)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall y() { - final Function function = new Function(FUNC_Y, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadChild.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractOverloadChild.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractOverloadChild load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadChild(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractOverloadChild load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractOverloadChild(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractParentMutipleTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractParentMutipleTest.java deleted file mode 100644 index 6460955188..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractParentMutipleTest.java +++ /dev/null @@ -1,83 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractParentMutipleTest extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610165806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631416d347146100515780636c3364ea14610085578063853255cc146100b95780638da5cb5b146100c3575b600080fd5b6100596100f7565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61008d6100ff565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100c1610107565b005b6100cb610109565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600033905090565b600033905090565b565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168156fea26469706673582212203998131d6105b7bd0f66d78ebb744e370651fb4fa2f6fc730bda9189be5407b364736f6c63430007010033"; - - public static final String FUNC_GETADDRESSA = "getAddressA"; - - public static final String FUNC_GETADDRESSB = "getAddressB"; - - public static final String FUNC_OWNER = "owner"; - - public static final String FUNC_SUM = "sum"; - - protected InheritContractParentMutipleTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractParentMutipleTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddressA() { - final Function function = new Function(FUNC_GETADDRESSA, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getAddressB() { - final Function function = new Function(FUNC_GETADDRESSB, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall owner() { - final Function function = new Function(FUNC_OWNER, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public void sum() { - throw new RuntimeException("cannot call constant function with void return type"); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentMutipleTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentMutipleTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractParentMutipleTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentMutipleTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractParentMutipleTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentMutipleTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractParentOneClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractParentOneClass.java deleted file mode 100644 index a1fb552c3b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractParentOneClass.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractParentOneClass extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b5060888061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063430fe9c114602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000600190509056fea2646970667358221220312789117611c59bf0e97f3d53164320ce63a1baddfdef92ea0ed3097e15fe5864736f6c63430007010033"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractParentOneClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractParentOneClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentOneClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentOneClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractParentOneClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentOneClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractParentOneClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentOneClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractParentThreeClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractParentThreeClass.java deleted file mode 100644 index ed847d1005..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractParentThreeClass.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractParentThreeClass extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060b78061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063430fe9c1146037578063887c5838146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596078565b6040518082815260200191505060405180910390f35b60006002905090565b6000600390509056fea26469706673582212207248f9f6e3928f2cef59af40a1c30e97b0ec3becc0e9c24cf47c5e2be549455764736f6c63430007010033"; - - public static final String FUNC_GETDATATHREE = "getDataThree"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractParentThreeClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractParentThreeClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDataThree() { - final Function function = new Function(FUNC_GETDATATHREE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentThreeClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentThreeClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractParentThreeClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentThreeClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractParentThreeClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentThreeClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractParentTwoClass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractParentTwoClass.java deleted file mode 100644 index 3bded6bc79..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractParentTwoClass.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractParentTwoClass extends Contract { - private static final String BINARY = "6080604052348015600f57600080fd5b5060888061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063430fe9c114602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000600290509056fea264697066735822122027befc55ad92ecf18baa758b7020d78c9414dec10a432fbb3f1d627b2286312664736f6c63430007010033"; - - public static final String FUNC_GETDATE = "getDate"; - - protected InheritContractParentTwoClass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractParentTwoClass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentTwoClass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractParentTwoClass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractParentTwoClass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentTwoClass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractParentTwoClass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractParentTwoClass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractSubclass.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractSubclass.java deleted file mode 100644 index 5cc665ebac..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritContractSubclass.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritContractSubclass extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060e68061001f6000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c8063430fe9c1146041578063825b71d914605d578063887c5838146079575b600080fd5b60476095565b6040518082815260200191505060405180910390f35b6063609e565b6040518082815260200191505060405180910390f35b607f60a7565b6040518082815260200191505060405180910390f35b60006002905090565b60006004905090565b6000600390509056fea2646970667358221220246545d98a4f7de8e71709de2da40420bda80364e699b26c4629c54e7d6b885064736f6c63430007010033"; - - public static final String FUNC_GETDATATHREE = "getDataThree"; - - public static final String FUNC_GETDATE = "getDate"; - - public static final String FUNC_GETSUBDATA = "getSubData"; - - protected InheritContractSubclass(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritContractSubclass(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDataThree() { - final Function function = new Function(FUNC_GETDATATHREE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDate() { - final Function function = new Function(FUNC_GETDATE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSubData() { - final Function function = new Function(FUNC_GETSUBDATA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractSubclass.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritContractSubclass.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritContractSubclass load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritContractSubclass(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritContractSubclass load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritContractSubclass(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceA.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceA.java deleted file mode 100644 index 838965fbca..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceA.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceA extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063c298557814602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600c81526020017f496e6865726974616e636541000000000000000000000000000000000000000081525090509056fea2646970667358221220b86806c9971073b8c43699145b06f9fb2bc1cf7460e2f9007da36c02302071d864736f6c63430007010033"; - - public static final String FUNC_FOO = "foo"; - - protected InheritanceA(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceA(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall foo() { - final Function function = new Function(FUNC_FOO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceA.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceA.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceA load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceA(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceA load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceA(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceB.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceB.java deleted file mode 100644 index 105a70065a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceB.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceB extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063c298557814602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600c81526020017f496e6865726974616e636542000000000000000000000000000000000000000081525090509056fea264697066735822122028982d06312810696b45ae57454d38aad39fd528669b44d544c318d626c32b7b64736f6c63430007010033"; - - public static final String FUNC_FOO = "foo"; - - protected InheritanceB(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceB(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall foo() { - final Function function = new Function(FUNC_FOO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceB.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceB.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceB load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceB(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceB load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceB(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceC.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceC.java deleted file mode 100644 index cf1d044a31..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceC.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceC extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063c298557814602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600c81526020017f496e6865726974616e636543000000000000000000000000000000000000000081525090509056fea2646970667358221220bc16ddc37b5e29a76339520a82b9f8946a7c3ec329b6ce23bc7f68f179eefbf464736f6c63430007010033"; - - public static final String FUNC_FOO = "foo"; - - protected InheritanceC(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceC(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall foo() { - final Function function = new Function(FUNC_FOO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceC.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceC.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceC load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceC(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceC load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceC(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceD.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceD.java deleted file mode 100644 index 25f27d90bd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceD.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceD extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061012b806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063c298557814602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b606060b360b8565b905090565b60606040518060400160405280600c81526020017f496e6865726974616e636543000000000000000000000000000000000000000081525090509056fea26469706673582212201901e7fee4f0e595ac689381b39edef9d5277e77edbe750ee42d16ae798d0f5e64736f6c63430007010033"; - - public static final String FUNC_FOO = "foo"; - - protected InheritanceD(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceD(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall foo() { - final Function function = new Function(FUNC_FOO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceD.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceD.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceD load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceD(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceD load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceD(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceE.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceE.java deleted file mode 100644 index b0c7492800..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceE.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceE extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061012b806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063c298557814602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b606060b360b8565b905090565b60606040518060400160405280600c81526020017f496e6865726974616e636542000000000000000000000000000000000000000081525090509056fea26469706673582212206430b11ce53caeb3d545739b2beea35f2a0a0f158c1f5ce6bb3ef18a6da73a2464736f6c63430007010033"; - - public static final String FUNC_FOO = "foo"; - - protected InheritanceE(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceE(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall foo() { - final Function function = new Function(FUNC_FOO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceE.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceE.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceE load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceE(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceE load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceE(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceF.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceF.java deleted file mode 100644 index ec0e384c35..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceF.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceF extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061012b806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063c298557814602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b606060b360b8565b905090565b60606040518060400160405280600c81526020017f496e6865726974616e636542000000000000000000000000000000000000000081525090509056fea26469706673582212208578592e034bcfa111e1dfab3d0c0684b54e83048042870a79763565706dd20964736f6c63430007010033"; - - public static final String FUNC_FOO = "foo"; - - protected InheritanceF(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceF(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall foo() { - final Function function = new Function(FUNC_FOO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceF.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceF.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceF load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceF(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceF load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceF(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceModifier.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceModifier.java deleted file mode 100644 index 4da0382904..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InheritanceModifier.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InheritanceModifier extends Contract { - private static final String BINARY = "6080604052600a60005534801561001557600080fd5b5060d3806100246000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80632e2619a3146037578063d46300fd146062575b600080fd5b606060048036036020811015604b57600080fd5b8101908080359060200190929190505050607e565b005b60686094565b6040518082815260200191505060405180910390f35b80600054811060905760016000819055505b5050565b6000805490509056fea2646970667358221220cc4a305523e10fcc156cbbe30ae699714d170aa10a7bc6b0d586d393b4b7252a64736f6c63430007010033"; - - public static final String FUNC_GETA = "getA"; - - public static final String FUNC_INHERITANCE = "inheritance"; - - protected InheritanceModifier(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InheritanceModifier(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getA() { - final Function function = new Function(FUNC_GETA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall inheritance(BigInteger c) { - final Function function = new Function( - FUNC_INHERITANCE, - Arrays.asList(new Uint256(c)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceModifier.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InheritanceModifier.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InheritanceModifier load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InheritanceModifier(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InheritanceModifier load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InheritanceModifier(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InsertSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InsertSort.java deleted file mode 100644 index 76c6a74f49..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InsertSort.java +++ /dev/null @@ -1,86 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InsertSort extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610331806100206000396000f3fe6080604052600436106100295760003560e01c80631df339cf1461002e578063970f17bd146100f0575b600080fd5b6100ee6004803603604081101561004457600080fd5b810190808035906020019064010000000081111561006157600080fd5b82018360208201111561007357600080fd5b8035906020019184602083028401116401000000008311171561009557600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019092919050505061015c565b005b3480156100fc57600080fd5b50610105610239565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561014857808201518184015260208101905061012d565b505050509050019250505060405180910390f35b6000806000600192505b8383101561021b5760008086858151811061017d57fe5b602002602001015190508492505b600183101580156101b157508660018403815181106101a657fe5b602002602001015181125b156101f3578660018403815181106101c557fe5b60200260200101518784815181106101d957fe5b60200260200101818152505082806001900393505061018b565b8087848151811061020057fe5b60200260200101818152505050508280600101935050610166565b8460009080519060200190610231929190610291565b505050505050565b6060600080548060200260200160405190810160405280929190818152602001828054801561028757602002820191906000526020600020905b815481526020019060010190808311610273575b5050505050905090565b8280548282559060005260206000209081019282156102cd579160200282015b828111156102cc5782518255916020019190600101906102b1565b5b5090506102da91906102de565b5090565b5b808211156102f75760008160009055506001016102df565b509056fea2646970667358221220e9aef042e9b60b82697112c7124e65c9119f696635678a1ce858a9bd173d019f64736f6c63430007010033"; - - public static final String FUNC_OUPUTARRAYS = "OuputArrays"; - - public static final String FUNC_GET_ARR = "get_arr"; - - protected InsertSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InsertSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall OuputArrays(List arr, BigInteger n, BigInteger vonValue) { - final Function function = new Function( - FUNC_OUPUTARRAYS, - Arrays.asList(new DynamicArray( - Int256.class, - com.alaya.abi.solidity.Utils.typeMap(arr, Int256.class)), - new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_arr() { - final Function function = new Function(FUNC_GET_ARR, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InsertSort.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InsertSort.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InsertSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InsertSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InsertSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InsertSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Instructions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Instructions.java deleted file mode 100644 index ba99086ac2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Instructions.java +++ /dev/null @@ -1,104 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Instructions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610203806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063048a5fed1461005c578063165c4a161461007a5780633408e470146100c65780635a0db89e146100e4578063eb8ac92114610130575b600080fd5b61006461017c565b6040518082815260200191505060405180910390f35b6100b06004803603604081101561009057600080fd5b810190808035906020019092919080359060200190929190505050610189565b6040518082815260200191505060405180910390f35b6100ce610196565b6040518082815260200191505060405180910390f35b61011a600480360360408110156100fa57600080fd5b8101908080359060200190929190803590602001909291905050506101a3565b6040518082815260200191505060405180910390f35b6101666004803603604081101561014657600080fd5b8101908080359060200190929190803590602001909291905050506101b7565b6040518082815260200191505060405180910390f35b6000804790508091505090565b6000818302905092915050565b6000804690508091505090565b60006101af8383610189565b905092915050565b60006101c5600260036101a3565b90509291505056fea26469706673582212200e82cdb6422341b7a6d56cd755a1aafc920792491ddd8d3fb95565484c4c10e664736f6c63430007010033"; - - public static final String FUNC_GETCHAINID = "getChainId"; - - public static final String FUNC_GETSELFBALANCE = "getSelfBalance"; - - public static final String FUNC_MULTIPLY = "multiply"; - - public static final String FUNC_TEST = "test"; - - public static final String FUNC_TEST_MUL = "test_mul"; - - protected Instructions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Instructions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getChainId() { - final Function function = new Function(FUNC_GETCHAINID, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSelfBalance() { - final Function function = new Function(FUNC_GETSELFBALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall multiply(BigInteger x, BigInteger y) { - final Function function = new Function( - FUNC_MULTIPLY, - Arrays.asList(new Uint256(x), - new Uint256(y)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall test(BigInteger x, BigInteger y) { - final Function function = new Function( - FUNC_TEST, - Arrays.asList(new Uint256(x), - new Uint256(y)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall test_mul(BigInteger x, BigInteger y) { - final Function function = new Function( - FUNC_TEST_MUL, - Arrays.asList(new Uint256(x), - new Uint256(y)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Instructions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Instructions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Instructions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Instructions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Instructions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Instructions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/IntenalCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/IntenalCall.java deleted file mode 100644 index 6941b09fb7..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/IntenalCall.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class IntenalCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060d18061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063569c5f6d146037578063de292789146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596086565b6040518082815260200191505060405180910390f35b600080600190506000600290508082019250505090565b600080600390506093606f565b81029150509056fea26469706673582212201320d8876af7b072ec4f8e8ea82b83bf1c28b5eccdabe1887e8e8c21ed23297264736f6c63430007010033"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final String FUNC_GETSUM = "getSum"; - - protected IntenalCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected IntenalCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getResult() { - final Function function = new Function(FUNC_GETRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getSum() { - final Function function = new Function(FUNC_GETSUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(IntenalCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(IntenalCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static IntenalCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new IntenalCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static IntenalCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new IntenalCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Inter.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Inter.java deleted file mode 100644 index a54c0617bb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Inter.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Inter extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610158806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063b8b1feb414610046578063ca77156f14610088578063e2179b8e146100ca575b600080fd5b6100726004803603602081101561005c57600080fd5b81019080803590602001909291905050506100e8565b6040518082815260200191505060405180910390f35b6100b46004803603602081101561009e57600080fd5b81019080803590602001909291905050506100f5565b6040518082815260200191505060405180910390f35b6100d2610102565b6040518082815260200191505060405180910390f35b6000600382019050919050565b6000600282019050919050565b600061011060016002610115565b905090565b600081830190509291505056fea2646970667358221220c1fe732c9769215e2ce75bba273f0b7a13b612d421db46d76b7bf9979b5ea3b664736f6c63430007010033"; - - public static final String FUNC_FE = "fe"; - - public static final String FUNC_FPUB = "fpub"; - - public static final String FUNC_G = "g"; - - protected Inter(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Inter(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall fe(BigInteger a) { - final Function function = new Function(FUNC_FE, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall fpub(BigInteger a) { - final Function function = new Function(FUNC_FPUB, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall g() { - final Function function = new Function(FUNC_G, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Inter.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Inter.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Inter load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Inter(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Inter load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Inter(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractEnum.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractEnum.java deleted file mode 100644 index d0c9b57900..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractEnum.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractEnum extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_GETDEFAULTCHOICE = "getDefaultChoice"; - - protected InterfaceContractEnum(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractEnum(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDefaultChoice() { - final Function function = new Function(FUNC_GETDEFAULTCHOICE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractEnum.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractEnum.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractEnum load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractEnum(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractEnum load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractEnum(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractEnumTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractEnumTest.java deleted file mode 100644 index 8524552388..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractEnumTest.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractEnumTest extends Contract { - private static final String BINARY = "60806040526001600060016101000a81548160ff0219169083600281111561002357fe5b021790555034801561003457600080fd5b5061011b806100446000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c806367cb61b6146041578063694ebe4f146067578063843f725814606f575b600080fd5b6047608b565b60405180826002811115605657fe5b815260200191505060405180910390f35b606d60a1565b005b607560c5565b6040518082815260200191505060405180910390f35b60008060009054906101000a900460ff16905090565b60026000806101000a81548160ff0219169083600281111560be57fe5b0217905550565b60008060019054906101000a900460ff16600281111560e057fe5b90509056fea2646970667358221220f3aebbe856826b556108beeae922655aa8f8e2e01e41081e4ef4ea6fbe09ff0c64736f6c63430007010033"; - - public static final String FUNC_GETCHOICE = "getChoice"; - - public static final String FUNC_GETDEFAULTCHOICE = "getDefaultChoice"; - - public static final String FUNC_SETLARGE = "setLarge"; - - protected InterfaceContractEnumTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractEnumTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getChoice() { - final Function function = new Function(FUNC_GETCHOICE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDefaultChoice() { - final Function function = new Function(FUNC_GETDEFAULTCHOICE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setLarge() { - final Function function = new Function( - FUNC_SETLARGE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractEnumTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractEnumTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractEnumTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractEnumTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractEnumTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractEnumTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractInheritMultipleTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractInheritMultipleTest.java deleted file mode 100644 index e194b56e59..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractInheritMultipleTest.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractInheritMultipleTest extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610119806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806399ecedf6146037578063cad0899b146080575b600080fd5b606a60048036036040811015604b57600080fd5b81019080803590602001909291908035906020019092919050505060c9565b6040518082815260200191505060405180910390f35b60b360048036036040811015609457600080fd5b81019080803590602001909291908035906020019092919050505060d6565b6040518082815260200191505060405180910390f35b6000818303905092915050565b600081830190509291505056fea264697066735822122088013e332f42660677225c1186e8abdc7425ef064f99d815414eb2f1e0b8ce5664736f6c63430007010033"; - - public static final String FUNC_REDUCE = "reduce"; - - public static final String FUNC_SUM = "sum"; - - protected InterfaceContractInheritMultipleTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractInheritMultipleTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall reduce(BigInteger c, BigInteger d) { - final Function function = new Function(FUNC_REDUCE, - Arrays.asList(new Uint256(c), - new Uint256(d)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall sum(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUM, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritMultipleTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritMultipleTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractInheritMultipleTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritMultipleTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractInheritMultipleTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritMultipleTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractInheritOne.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractInheritOne.java deleted file mode 100644 index c504981adb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractInheritOne.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractInheritOne extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_SUM = "sum"; - - protected InterfaceContractInheritOne(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractInheritOne(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sum(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUM, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritOne.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritOne.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractInheritOne load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritOne(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractInheritOne load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritOne(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractInheritTwo.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractInheritTwo.java deleted file mode 100644 index 5d4e73d23c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractInheritTwo.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractInheritTwo extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_REDUCE = "reduce"; - - protected InterfaceContractInheritTwo(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractInheritTwo(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall reduce(BigInteger c, BigInteger d) { - final Function function = new Function(FUNC_REDUCE, - Arrays.asList(new Uint256(c), - new Uint256(d)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritTwo.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractInheritTwo.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractInheritTwo load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritTwo(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractInheritTwo load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractInheritTwo(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractParent.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractParent.java deleted file mode 100644 index 89df91e085..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractParent.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractParent extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_SUMEXTERNAL = "sumExternal"; - - protected InterfaceContractParent(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractParent(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sumExternal(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUMEXTERNAL, - Arrays.asList(new Int256(a), - new Int256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractParent.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractParent.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractParent load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractParent(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractParent load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractParent(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractParentTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractParentTest.java deleted file mode 100644 index 9e857e6be9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractParentTest.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractParentTest extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060b98061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063e288b0b514602d575b600080fd5b606060048036036040811015604157600080fd5b8101908080359060200190929190803590602001909291905050506076565b6040518082815260200191505060405180910390f35b600081830190509291505056fea26469706673582212200ea2e08dac6123879f77dd56f32e4aefccfd445bcfc9b6f6e996ccbb1630d24e64736f6c63430007010033"; - - public static final String FUNC_SUMEXTERNAL = "sumExternal"; - - protected InterfaceContractParentTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractParentTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sumExternal(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUMEXTERNAL, - Arrays.asList(new Int256(a), - new Int256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractParentTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractParentTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractParentTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractParentTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractParentTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractParentTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractStruct.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractStruct.java deleted file mode 100644 index b05c5e045f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractStruct.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractStruct extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_GETDEFAULTBOOKID = "getDefaultBookID"; - - protected InterfaceContractStruct(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractStruct(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDefaultBookID() { - final Function function = new Function(FUNC_GETDEFAULTBOOKID, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractStruct.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractStruct.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractStruct load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractStruct(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractStruct load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractStruct(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractStructTest.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractStructTest.java deleted file mode 100644 index 8dc8364ea3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceContractStructTest.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceContractStructTest extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061025d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063079d318b14610046578063d629546c14610064578063e36afde31461006e575b600080fd5b61004e61008c565b6040518082815260200191505060405180910390f35b61006c6100ae565b005b61007661017e565b6040518082815260200191505060405180910390f35b600080600080015414156100a357600090506100ab565b600080015490505b90565b6040518060600160405280600181526020016040518060400160405280600681526020017f506c61744f4e000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600f81526020017f506c61744f4e20446573637269626500000000000000000000000000000000008152508152506000808201518160000155602082015181600101908051906020019061015b92919061018a565b50604082015181600201908051906020019061017892919061018a565b50905050565b60008060000154905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106101cb57805160ff19168380011785556101f9565b828001600101855582156101f9579182015b828111156101f85782518255916020019190600101906101dd565b5b509050610206919061020a565b5090565b5b8082111561022357600081600090555060010161020b565b509056fea26469706673582212208416f91f066b99e56b40c1e84500063bf4f6c49121abae6b83dd2025f88ef08064736f6c63430007010033"; - - public static final String FUNC_GETBOOKID = "getBookID"; - - public static final String FUNC_GETDEFAULTBOOKID = "getDefaultBookID"; - - public static final String FUNC_SETBOOK = "setBook"; - - protected InterfaceContractStructTest(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceContractStructTest(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBookID() { - final Function function = new Function(FUNC_GETBOOKID, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getDefaultBookID() { - final Function function = new Function(FUNC_GETDEFAULTBOOKID, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setBook() { - final Function function = new Function( - FUNC_SETBOOK, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractStructTest.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceContractStructTest.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceContractStructTest load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractStructTest(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceContractStructTest load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceContractStructTest(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceDeclaraction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceDeclaraction.java deleted file mode 100644 index f8f05e9ca5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceDeclaraction.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceDeclaraction extends Contract { - private static final String BINARY = ""; - - public static final String FUNC_TRANSFER = "transfer"; - - protected InterfaceDeclaraction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceDeclaraction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall transfer(String recipient, BigInteger amount) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(recipient), - new com.alaya.abi.solidity.datatypes.generated.Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceDeclaraction.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceDeclaraction.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceDeclaraction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceDeclaraction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceDeclaraction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceDeclaraction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceEnableStructAndenumImpl.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceEnableStructAndenumImpl.java deleted file mode 100644 index cec117c73f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/InterfaceEnableStructAndenumImpl.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class InterfaceEnableStructAndenumImpl extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060d48061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80636ff6560314602d575b600080fd5b60336053565b60405180826001811115604257fe5b815260200191505060405180910390f35b6000605b6081565b6040518060200160405280600180811115607157fe5b8152509050806000015191505090565b604051806020016040528060006001811115609857fe5b8152509056fea2646970667358221220ca61b1202322b40988f11a4f16ea08cb3a07991d429c76eac33e52b153b2ded864736f6c63430007010033"; - - public static final String FUNC_GETPRODUCTCONDITION = "getProductCondition"; - - protected InterfaceEnableStructAndenumImpl(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InterfaceEnableStructAndenumImpl(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getProductCondition() { - final Function function = new Function(FUNC_GETPRODUCTCONDITION, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceEnableStructAndenumImpl.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(InterfaceEnableStructAndenumImpl.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static InterfaceEnableStructAndenumImpl load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InterfaceEnableStructAndenumImpl(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InterfaceEnableStructAndenumImpl load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InterfaceEnableStructAndenumImpl(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LibraryStaticUsing.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LibraryStaticUsing.java deleted file mode 100644 index 42b281d0fd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LibraryStaticUsing.java +++ /dev/null @@ -1,115 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LibraryStaticUsing extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061017f806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f207564e14610030575b600080fd5b61005c6004803603602081101561004657600080fd5b8101908080359060200190929190505050610074565b60405180821515815260200191505060405180910390f35b600073__$765824fcd404e4e69ec5c08525b129a343$__63f360234c607b846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156100ce57600080fd5b505af41580156100e2573d6000803e3d6000fd5b505050506040513d60208110156100f857600080fd5b810190808051906020019092919050505090507f0b3bdb70bcb1393d4319be3261bd6ab95e2ea1665e718029d24cecca39e84ccc8160405180821515815260200191505060405180910390a191905056fea2646970667358221220755c391d3b38d49c1bd2664669c9dc46464c966a74058707f7300f53f24cb8b264736f6c63430007010033\n" - + "\n" - + "// $765824fcd404e4e69ec5c08525b129a343$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/9.library/LibraryStaticUsing.sol:BaseStaticLibrary"; - - public static final String FUNC_REGISTER = "register"; - - public static final Event RESULT_EVENT = new Event("Result", - Arrays.>asList(new TypeReference() {})); - ; - - protected LibraryStaticUsing(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LibraryStaticUsing(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getResultEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(RESULT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ResultEventResponse typedResponse = new ResultEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable resultEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ResultEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(RESULT_EVENT, log); - ResultEventResponse typedResponse = new ResultEventResponse(); - typedResponse.log = log; - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable resultEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(RESULT_EVENT)); - return resultEventObservable(filter); - } - - public RemoteCall register(BigInteger value) { - final Function function = new Function( - FUNC_REGISTER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryStaticUsing.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryStaticUsing.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LibraryStaticUsing load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LibraryStaticUsing(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LibraryStaticUsing load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LibraryStaticUsing(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class ResultEventResponse { - public Log log; - - public Boolean result; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LibraryUsingFor.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LibraryUsingFor.java deleted file mode 100644 index 6c0a41f353..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LibraryUsingFor.java +++ /dev/null @@ -1,115 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LibraryUsingFor extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610180806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f207564e14610030575b600080fd5b61005c6004803603602081101561004657600080fd5b8101908080359060200190929190505050610074565b60405180821515815260200191505060405180910390f35b60008073__$8dc5b2d235d906a9a43f8f54865108ea6c$__637ae1e0589091846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156100cf57600080fd5b505af41580156100e3573d6000803e3d6000fd5b505050506040513d60208110156100f957600080fd5b810190808051906020019092919050505090507f0b3bdb70bcb1393d4319be3261bd6ab95e2ea1665e718029d24cecca39e84ccc8160405180821515815260200191505060405180910390a191905056fea264697066735822122037a27194684865b72a9b64651d816c8734ca0de04521c83586225ed72f852ce664736f6c63430007010033\n" - + "\n" - + "// $8dc5b2d235d906a9a43f8f54865108ea6c$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/9.library/LibraryUsingFor.sol:BaseLibrary"; - - public static final String FUNC_REGISTER = "register"; - - public static final Event RESULT_EVENT = new Event("Result", - Arrays.>asList(new TypeReference() {})); - ; - - protected LibraryUsingFor(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LibraryUsingFor(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getResultEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(RESULT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - ResultEventResponse typedResponse = new ResultEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - responses.add(typedResponse); - } - return responses; - } - - public Observable resultEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ResultEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(RESULT_EVENT, log); - ResultEventResponse typedResponse = new ResultEventResponse(); - typedResponse.log = log; - typedResponse.result = (Boolean) eventValues.getNonIndexedValues().get(0).getValue(); - return typedResponse; - } - }); - } - - public Observable resultEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(RESULT_EVENT)); - return resultEventObservable(filter); - } - - public RemoteCall register(BigInteger value) { - final Function function = new Function( - FUNC_REGISTER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryUsingFor.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryUsingFor.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LibraryUsingFor load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LibraryUsingFor(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LibraryUsingFor load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LibraryUsingFor(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class ResultEventResponse { - public Log log; - - public Boolean result; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LibraryUsingForAll.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LibraryUsingForAll.java deleted file mode 100644 index 553bb7169e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LibraryUsingForAll.java +++ /dev/null @@ -1,65 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LibraryUsingForAll extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101ae806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063e81cf24c14610030575b600080fd5b6100666004803603604081101561004657600080fd5b810190808035906020019092919080359060200190929190505050610068565b005b60008073__$8cb58328c2bc207af2d98cd9c31b792a46$__6324fef5c89091856040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156100c357600080fd5b505af41580156100d7573d6000803e3d6000fd5b505050506040513d60208110156100ed57600080fd5b810190808051906020019092919050505090507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811415610156576000829080600181540180825580915050600190039060005260206000200160009091909190915055610173565b816000828154811061016457fe5b90600052602060002001819055505b50505056fea26469706673582212202dd95455324b1df49fa4b17d7d5b2360e9cb0be066d8152f1bf752ccabe80e1a64736f6c63430007010033\n" - + "\n" - + "// $8cb58328c2bc207af2d98cd9c31b792a46$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/9.library/LibraryUserForAll.sol:SearchLibrary"; - - public static final String FUNC_REPLACE = "replace"; - - protected LibraryUsingForAll(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LibraryUsingForAll(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall replace(BigInteger _old, BigInteger _new) { - final Function function = new Function( - FUNC_REPLACE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(_old), - new com.alaya.abi.solidity.datatypes.generated.Uint256(_new)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryUsingForAll.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LibraryUsingForAll.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LibraryUsingForAll load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LibraryUsingForAll(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LibraryUsingForAll load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LibraryUsingForAll(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LoopCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LoopCall.java deleted file mode 100644 index 0270282a69..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LoopCall.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LoopCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060b98061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80633fde082714602d575b600080fd5b605660048036036020811015604157600080fd5b81019080803590602001909291905050506058565b005b60005b81811015607f5760008081548092919060010191905055508080600101915050605b565b505056fea2646970667358221220b6ed2acf4e9c2f5880d13171c9c1f22afcbe228ad633460cfc59cc850625232a64736f6c63430007010033"; - - public static final String FUNC_LOOPCALLTEST = "loopCallTest"; - - protected LoopCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LoopCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall loopCallTest(BigInteger n) { - final Function function = new Function( - FUNC_LOOPCALLTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LoopCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LoopCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LoopCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LoopCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LoopCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LoopCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LoopCallOfView.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LoopCallOfView.java deleted file mode 100644 index c15cc03b44..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/LoopCallOfView.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class LoopCallOfView extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060cd8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80633fde082714602d575b600080fd5b605660048036036020811015604157600080fd5b8101908080359060200190929190505050606c565b6040518082815260200191505060405180910390f35b60008060005b83811015608d57818060010192505080806001019150506072565b508091505091905056fea2646970667358221220e0a114a52703a54f85a4437cc2e28c40b30b344b01063c2ea2e36b00bb0c1f4964736f6c63430007010033"; - - public static final String FUNC_LOOPCALLTEST = "loopCallTest"; - - protected LoopCallOfView(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LoopCallOfView(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall loopCallTest(BigInteger n) { - final Function function = new Function(FUNC_LOOPCALLTEST, - Arrays.asList(new Uint256(n)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LoopCallOfView.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(LoopCallOfView.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static LoopCallOfView load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LoopCallOfView(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LoopCallOfView load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LoopCallOfView(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MappingArrayDataTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MappingArrayDataTypeContract.java deleted file mode 100644 index ebf5b36b72..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MappingArrayDataTypeContract.java +++ /dev/null @@ -1,90 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple4; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MappingArrayDataTypeContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610343806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80631175c0491461003b5780638e7f79f6146100a0575b600080fd5b61009e600480360360a081101561005157600080fd5b81019080803560ff169060200190929190803560ff169060200190929190803560ff169060200190929190803560ff169060200190929190803560ff169060200190929190505050610106565b005b6100cf600480360360208110156100b657600080fd5b81019080803560ff16906020019092919050505061012b565b604051808560ff1681526020018460ff1681526020018360ff1681526020018260ff16815260200194505050505060405180910390f35b610113600086868661020f565b5050610122600286848461020f565b50505050505050565b6000806000806000806002811061013e57fe5b0160008660ff1660ff16815260200190815260200160002060009054906101000a900460ff16600060016002811061017257fe5b0160008760ff1660ff16815260200190815260200160002060009054906101000a900460ff1660026000600281106101a657fe5b0160008860ff1660ff16815260200190815260200160002060009054906101000a900460ff1660026001600281106101da57fe5b0160008960ff1660ff16815260200190815260200160002060009054906101000a900460ff1693509350935093509193509193565b60008060008660006002811061022157fe5b0160008760ff1660ff16815260200190815260200160002060009054906101000a900460ff16905060008760016002811061025857fe5b0160008860ff1660ff16815260200190815260200160002060009054906101000a900460ff169050858860006002811061028e57fe5b0160008960ff1660ff16815260200190815260200160002060006101000a81548160ff021916908360ff16021790555084886001600281106102cc57fe5b0160008960ff1660ff16815260200190815260200160002060006101000a81548160ff021916908360ff16021790555081819350935050509450949250505056fea2646970667358221220cf6191152ea8b0afe7d8c2a3c09fa661254ffeb7f99eab0abf6f9ad1cf4daf3164736f6c63430007010033"; - - public static final String FUNC_GETVALUEBYKEY = "getValueByKey"; - - public static final String FUNC_SET = "set"; - - protected MappingArrayDataTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MappingArrayDataTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> getValueByKey(BigInteger key) { - final Function function = new Function(FUNC_GETVALUEBYKEY, - Arrays.asList(new Uint8(key)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple4 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple4( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (BigInteger) results.get(3).getValue()); - } - }); - } - - public RemoteCall set(BigInteger key, BigInteger value_a1, BigInteger value_a2, BigInteger value_b1, BigInteger value_b2) { - final Function function = new Function( - FUNC_SET, - Arrays.asList(new Uint8(key), - new Uint8(value_a1), - new Uint8(value_a2), - new Uint8(value_b1), - new Uint8(value_b2)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MappingArrayDataTypeContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MappingArrayDataTypeContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static MappingArrayDataTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MappingArrayDataTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MappingArrayDataTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MappingArrayDataTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MappingDataTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MappingDataTypeContract.java deleted file mode 100644 index 27486fb3ea..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MappingDataTypeContract.java +++ /dev/null @@ -1,183 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple3; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MappingDataTypeContract extends Contract { - private static final String BINARY = "608060405260405180606001604052806040518060400160405280600481526020017f4c7563790000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600481526020017f456c6c610000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600481526020017f4c696c7900000000000000000000000000000000000000000000000000000000815250815250600d906003620000d0929190620000e5565b50348015620000de57600080fd5b5062000266565b82805482825590600052602060002090810192821562000139579160200282015b8281111562000138578251829080519060200190620001279291906200014c565b509160200191906001019062000106565b5b509050620001489190620001d3565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200018f57805160ff1916838001178555620001c0565b82800160010185558215620001c0579182015b82811115620001bf578251825591602001919060010190620001a2565b5b509050620001cf9190620001fb565b5090565b5b80821115620001f75760008181620001ed91906200021a565b50600101620001d4565b5090565b5b8082111562000216576000816000905550600101620001fc565b5090565b50805460018160011615610100020316600290046000825580601f1062000242575062000263565b601f016020900490600052602060002090810190620002629190620001fb565b5b50565b610c3080620002766000396000f3fe608060405234801561001057600080fd5b50600436106100b35760003560e01c806387c9644b1161007157806387c9644b14610455578063aad3951214610499578063bbf722a214610562578063bebf70f3146105ba578063f480ae4914610611578063fdf8b008146106e0576100b3565b806252f6ee146100b8578063566ab1fd146101875780636257a397146101d45780636b8ff5741461029157806376fc59c31461033857806382bc11491461039e575b600080fd5b610171600480360360208110156100ce57600080fd5b81019080803590602001906401000000008111156100eb57600080fd5b8201836020820111156100fd57600080fd5b8035906020019184600183028401116401000000008311171561011f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506106ea565b6040518082815260200191505060405180910390f35b6101b36004803603602081101561019d57600080fd5b8101908080359060200190929190505050610718565b604051808260028111156101c357fe5b815260200191505060405180910390f35b610216600480360360208110156101ea57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610738565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561025657808201518184015260208101905061023b565b50505050905090810190601f1680156102835780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102bd600480360360208110156102a757600080fd5b81019080803590602001909291905050506107e8565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102fd5780820151818401526020810190506102e2565b50505050905090810190601f16801561032a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6103666004803603602081101561034e57600080fd5b8101908080351515906020019092919050505061089d565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6103ca600480360360208110156103b457600080fd5b81019080803590602001909291905050506108bd565b60405180848152602001806020018315158152602001828103825284818151815260200191508051906020019080838360005b838110156104185780820151818401526020810190506103fd565b50505050905090810190601f1680156104455780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b6104816004803603602081101561046b57600080fd5b810190808035906020019092919050505061098c565b60405180821515815260200191505060405180910390f35b6104e7600480360360208110156104af57600080fd5b8101908080357effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690602001909291905050506109ac565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561052757808201518184015260208101905061050c565b50505050905090810190601f1680156105545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61058e6004803603602081101561057857600080fd5b8101908080359060200190929190505050610a5c565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6105f0600480360360408110156105d057600080fd5b810190808035906020019092919080359060200190929190505050610a8f565b6040518082600281111561060057fe5b815260200191505060405180910390f35b6106ca6004803603602081101561062757600080fd5b810190808035906020019064010000000081111561064457600080fd5b82018360208201111561065657600080fd5b8035906020019184600183028401116401000000008311171561067857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610abe565b6040518082815260200191505060405180910390f35b6106e8610aec565b005b6006818051602081018201805184825260208301602085012081835280955050505050506000915090505481565b600b6020528060005260406000206000915054906101000a900460ff1681565b60086020528060005260406000206000915090508054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107e05780601f106107b5576101008083540402835291602001916107e0565b820191906000526020600020905b8154815290600101906020018083116107c357829003601f168201915b505050505081565b6060600c60008381526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108915780601f1061086657610100808354040283529160200191610891565b820191906000526020600020905b81548152906001019060200180831161087457829003601f168201915b50505050509050919050565b60046020528060005260406000206000915054906101000a900460f81b81565b600a602052806000526040600020600091509050806000015490806001018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561096f5780601f106109445761010080835404028352916020019161096f565b820191906000526020600020905b81548152906001019060200180831161095257829003601f168201915b5050505050908060020160009054906101000a900460ff16905083565b60036020528060005260406000206000915054906101000a900460ff1681565b60056020528060005260406000206000915090508054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a545780601f10610a2957610100808354040283529160200191610a54565b820191906000526020600020905b815481529060010190602001808311610a3757829003601f168201915b505050505081565b60026020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60096020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b6007818051602081018201805184825260208301602085012081835280955050505050506000915090505481565b60005b600d80549050811015610b5357600d8181548110610b0957fe5b90600052602060002001600c60008381526020019081526020016000209080546001816001161561010002031660029004610b45929190610b56565b508080600101915050610aef565b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610b8f5780548555610bcc565b82800160010185558215610bcc57600052602060002091601f016020900482015b82811115610bcb578254825591600101919060010190610bb0565b5b509050610bd99190610bdd565b5090565b5b80821115610bf6576000816000905550600101610bde565b509056fea264697066735822122043c218a761e79e7537bc5cf6d2d33a7776dd4bf11c8f4f62763d549bcb3aa4fa64736f6c63430007010033"; - - public static final String FUNC_SIZEENUMMAP = "SizeEnumMap"; - - public static final String FUNC_ADDNAME = "addName"; - - public static final String FUNC_ADDRESSMAP = "addressMap"; - - public static final String FUNC_BOOLMAP = "boolMap"; - - public static final String FUNC_BYTEMAP = "byteMap"; - - public static final String FUNC_BYTESMAP = "bytesMap"; - - public static final String FUNC_GETNAME = "getName"; - - public static final String FUNC_INTMAP = "intMap"; - - public static final String FUNC_PEOPLEMAP = "peopleMap"; - - public static final String FUNC_SIZEMAP = "sizeMap"; - - public static final String FUNC_STRINGMAP = "stringMap"; - - public static final String FUNC_UINTMAP = "uintMap"; - - protected MappingDataTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MappingDataTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall SizeEnumMap(BigInteger param0) { - final Function function = new Function(FUNC_SIZEENUMMAP, - Arrays.asList(new Int256(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall addName() { - final Function function = new Function( - FUNC_ADDNAME, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall addressMap(BigInteger param0) { - final Function function = new Function(FUNC_ADDRESSMAP, - Arrays.asList(new Uint256(param0)), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall boolMap(BigInteger param0) { - final Function function = new Function(FUNC_BOOLMAP, - Arrays.asList(new Int256(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall byteMap(Boolean param0) { - final Function function = new Function(FUNC_BYTEMAP, - Arrays.asList(new Bool(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall bytesMap(String param0) { - final Function function = new Function(FUNC_BYTESMAP, - Arrays.asList(new Address(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getName(BigInteger index) { - final Function function = new Function(FUNC_GETNAME, - Arrays.asList(new Uint256(index)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall intMap(String param0) { - final Function function = new Function(FUNC_INTMAP, - Arrays.asList(new Utf8String(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> peopleMap(BigInteger param0) { - final Function function = new Function(FUNC_PEOPLEMAP, - Arrays.asList(new Int256(param0)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue(), - (Boolean) results.get(2).getValue()); - } - }); - } - - public RemoteCall sizeMap(BigInteger param0, BigInteger param1) { - final Function function = new Function(FUNC_SIZEMAP, - Arrays.asList(new Int256(param0), - new Int256(param1)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall stringMap(byte[] param0) { - final Function function = new Function(FUNC_STRINGMAP, - Arrays.asList(new Bytes1(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall uintMap(byte[] param0) { - final Function function = new Function(FUNC_UINTMAP, - Arrays.asList(new DynamicBytes(param0)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MappingDataTypeContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MappingDataTypeContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static MappingDataTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MappingDataTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MappingDataTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MappingDataTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MathAndCryptographicFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MathAndCryptographicFunctions.java deleted file mode 100644 index 98cc7d41a9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MathAndCryptographicFunctions.java +++ /dev/null @@ -1,110 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MathAndCryptographicFunctions extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061035a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806301c740441461006757806301f56b78146100855780635b4aa3ee146100fe578063aa4e87441461011c578063cc98f30e1461013a578063f9b4169114610158575b600080fd5b61006f610176565b6040518082815260200191505060405180910390f35b6100d26004803603608081101561009b57600080fd5b8101908080359060200190929190803560ff16906020019092919080359060200190929190803590602001909291905050506101f0565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610106610265565b6040518082815260200191505060405180910390f35b61012461028d565b6040518082815260200191505060405180910390f35b6101426102a2565b6040518082815260200191505060405180910390f35b61016061030f565b6040518082815260200191505060405180910390f35b6000600260405180807f41424300000000000000000000000000000000000000000000000000000000008152506003019050602060405180830381855afa1580156101c5573d6000803e3d6000fd5b5050506040513d60208110156101da57600080fd5b8101908080519060200190929190505050905090565b60008060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa15801561024d573d6000803e3d6000fd5b50505060206040510351905080915050949350505050565b60007fe1629b9dda060bb30c7908346f6af189c16773fa148d3366701fbaa35d54f3c8905090565b600060038061029857fe5b6003600209905090565b6000600360405180807f41424300000000000000000000000000000000000000000000000000000000008152506003019050602060405180830381855afa1580156102f1573d6000803e3d6000fd5b5050506040515160601b6bffffffffffffffffffffffff1916905090565b600060038061031a57fe5b600360020890509056fea2646970667358221220dec0fd0b0c96b2f39870776d6a9e183d65792718b5221c52ab3d4de28c4b92b564736f6c63430007010033"; - - public static final String FUNC_CALLADDMOD = "callAddMod"; - - public static final String FUNC_CALLECRECOVER = "callEcrecover"; - - public static final String FUNC_CALLKECCAK256 = "callKeccak256"; - - public static final String FUNC_CALLMULMOD = "callMulMod"; - - public static final String FUNC_CALLRIPEMD160 = "callRipemd160"; - - public static final String FUNC_CALLSHA256 = "callSha256"; - - protected MathAndCryptographicFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MathAndCryptographicFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callAddMod() { - final Function function = new Function(FUNC_CALLADDMOD, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall callEcrecover(byte[] hash, BigInteger v, byte[] r, byte[] s) { - final Function function = new Function(FUNC_CALLECRECOVER, - Arrays.asList(new Bytes32(hash), - new com.alaya.abi.solidity.datatypes.generated.Uint8(v), - new Bytes32(r), - new Bytes32(s)), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall callKeccak256() { - final Function function = new Function(FUNC_CALLKECCAK256, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall callMulMod() { - final Function function = new Function(FUNC_CALLMULMOD, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall callRipemd160() { - final Function function = new Function(FUNC_CALLRIPEMD160, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall callSha256() { - final Function function = new Function(FUNC_CALLSHA256, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MathAndCryptographicFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MathAndCryptographicFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static MathAndCryptographicFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MathAndCryptographicFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MathAndCryptographicFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MathAndCryptographicFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Modifiers.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Modifiers.java deleted file mode 100644 index 39a3ff1f1e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Modifiers.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Modifiers extends Contract { - private static final String BINARY = "6080604052600a600055348015601457600080fd5b5060c2806100236000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806366e41cb71460375780636b59084d146053575b600080fd5b603d605b565b6040518082815260200191505060405180910390f35b60596064565b005b60008054905090565b6000546000819050600080549050600c600081905550506000549050600b600081905550505056fea26469706673582212206ab3a14347a6830539cf390d191c2165c023b9d53096779d12a1e6235d41165964736f6c63430007010033"; - - public static final String FUNC_TEST1 = "test1"; - - public static final String FUNC_TEST2 = "test2"; - - protected Modifiers(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Modifiers(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall test1() { - final Function function = new Function( - FUNC_TEST1, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall test2() { - final Function function = new Function(FUNC_TEST2, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Modifiers.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Modifiers.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Modifiers load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Modifiers(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Modifiers load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Modifiers(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MsgSenderBelongToPayable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MsgSenderBelongToPayable.java deleted file mode 100644 index 3d61fa9b53..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MsgSenderBelongToPayable.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MsgSenderBelongToPayable extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060e68061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063485a584b1460375780639e455939146069575b600080fd5b603d609b565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b606f60a3565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600033905090565b600080339050309150509056fea2646970667358221220659511a424e01cbbf9391507d31fb95ab5ee9fd709726458680a237417819e5164736f6c63430007010033"; - - public static final String FUNC_GETCONTRACTADDR = "getContractAddr"; - - public static final String FUNC_GETMSGSENDERADDR = "getMsgSenderAddr"; - - protected MsgSenderBelongToPayable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MsgSenderBelongToPayable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getContractAddr() { - final Function function = new Function(FUNC_GETCONTRACTADDR, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getMsgSenderAddr() { - final Function function = new Function(FUNC_GETMSGSENDERADDR, - Arrays.asList(), - Arrays.>asList(new TypeReference
() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MsgSenderBelongToPayable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MsgSenderBelongToPayable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static MsgSenderBelongToPayable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MsgSenderBelongToPayable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MsgSenderBelongToPayable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MsgSenderBelongToPayable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MulicPointBaseConstructorWay1.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MulicPointBaseConstructorWay1.java deleted file mode 100644 index 7bee54c401..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MulicPointBaseConstructorWay1.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MulicPointBaseConstructorWay1 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50600a806000819055505061010a8061002a6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80630dbe671f14603757806382ab890a146053575b600080fd5b603d60af565b6040518082815260200191505060405180910390f35b607c60048036036020811015606757600080fd5b810190808035906020019092919050505060b5565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b60005481565b600080826000808282540192505081905550336000549150915091509156fea264697066735822122049de84d168552a19ec1b3463747d93b05921332b63fe844ddbeee5ebbbf1f5a164736f6c63430007010033"; - - public static final String FUNC_A = "a"; - - public static final String FUNC_UPDATE = "update"; - - protected MulicPointBaseConstructorWay1(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MulicPointBaseConstructorWay1(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MulicPointBaseConstructorWay1.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(MulicPointBaseConstructorWay1.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static MulicPointBaseConstructorWay1 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MulicPointBaseConstructorWay1(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MulicPointBaseConstructorWay1 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MulicPointBaseConstructorWay1(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MulicPointBaseConstructorWay2.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MulicPointBaseConstructorWay2.java deleted file mode 100644 index c540ccf806..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/MulicPointBaseConstructorWay2.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class MulicPointBaseConstructorWay2 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516101a43803806101a48339818101604052602081101561003357600080fd5b81019080805190602001909291905050508081028060008190555050506101458061005f6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630dbe671f1461004657806382ab890a14610064578063d46300fd146100c3575b600080fd5b61004e6100e1565b6040518082815260200191505060405180910390f35b6100906004803603602081101561007a57600080fd5b81019080803590602001909291905050506100e7565b604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6100cb610106565b6040518082815260200191505060405180910390f35b60005481565b6000808260008082825401925050819055503360005491509150915091565b6000805490509056fea26469706673582212203be9d5c9a4fc3e48c136fe29cb6f0221a5af893d6a61f13cf1543a158accc88064736f6c63430007010033"; - - public static final String FUNC_A = "a"; - - public static final String FUNC_GETA = "getA"; - - public static final String FUNC_UPDATE = "update"; - - protected MulicPointBaseConstructorWay2(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MulicPointBaseConstructorWay2(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _y) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_y))); - return deployRemoteCall(MulicPointBaseConstructorWay2.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _y) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_y))); - return deployRemoteCall(MulicPointBaseConstructorWay2.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getA() { - final Function function = new Function(FUNC_GETA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall update(BigInteger amount) { - final Function function = new Function( - FUNC_UPDATE, - Arrays.asList(new Uint256(amount)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static MulicPointBaseConstructorWay2 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MulicPointBaseConstructorWay2(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MulicPointBaseConstructorWay2 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MulicPointBaseConstructorWay2(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/NamedCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/NamedCall.java deleted file mode 100644 index e7d4c06d24..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/NamedCall.java +++ /dev/null @@ -1,91 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class NamedCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610105806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063d4b7eac3146037578063e9e3370e146087575b600080fd5b606a60048036036040811015604b57600080fd5b81019080803590602001909291908035906020019092919050505060aa565b604051808381526020018281526020019250505060405180910390f35b608d60ba565b604051808381526020018281526020019250505060405180910390f35b6000808284915091509250929050565b60008060c76001600260aa565b91509150909156fea2646970667358221220223479230dc2a05ff69005706160c056da4b6d2e7de9f6fcc8c7a96923cb1df564736f6c63430007010033"; - - public static final String FUNC_EXCHANGE = "exchange"; - - public static final String FUNC_NAMECALL = "namecall"; - - protected NamedCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected NamedCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> exchange(BigInteger key, BigInteger value) { - final Function function = new Function(FUNC_EXCHANGE, - Arrays.asList(new Uint256(key), - new Uint256(value)), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> namecall() { - final Function function = new Function(FUNC_NAMECALL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(NamedCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(NamedCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static NamedCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new NamedCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static NamedCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new NamedCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/NewTargetCreateContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/NewTargetCreateContract.java deleted file mode 100644 index c47279f750..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/NewTargetCreateContract.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class NewTargetCreateContract extends Contract { - private static final String BINARY = "60806040526040516101053803806101058339818101604052602081101561002657600080fd5b810190808051906020019092919050505080600081905550346001819055505060b1806100546000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80630c55699c146037578063aa8c217c146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596075565b6040518082815260200191505060405180910390f35b60005481565b6001548156fea264697066735822122065bde9461d0fa89d433499fcaced7f17b978e6ad8d972119d9c56d2f86d98e8964736f6c63430007010033"; - - public static final String FUNC_AMOUNT = "amount"; - - public static final String FUNC_X = "x"; - - protected NewTargetCreateContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected NewTargetCreateContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, BigInteger _a) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_a))); - return deployRemoteCall(NewTargetCreateContract.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, BigInteger _a) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_a))); - return deployRemoteCall(NewTargetCreateContract.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall amount() { - final Function function = new Function(FUNC_AMOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall x() { - final Function function = new Function(FUNC_X, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static NewTargetCreateContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new NewTargetCreateContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static NewTargetCreateContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new NewTargetCreateContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/NoParenthesesConstructor.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/NoParenthesesConstructor.java deleted file mode 100644 index 7214b5b8d5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/NoParenthesesConstructor.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.FunctionEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class NoParenthesesConstructor extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506040516100e23803806100e28339818101604052602081101561003357600080fd5b8101908080519060200190929190505050600180600081905550505060858061005d6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80630dbe671f14602d575b600080fd5b60336049565b6040518082815260200191505060405180910390f35b6000548156fea26469706673582212206aadd2507d0331fdf44d220baec662822a9fcfa66f302d497fc885c3e4a709ed64736f6c63430007010033"; - - public static final String FUNC_A = "a"; - - protected NoParenthesesConstructor(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected NoParenthesesConstructor(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, BigInteger _b) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_b))); - return deployRemoteCall(NoParenthesesConstructor.class, web3j, credentials, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, BigInteger _b) { - String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.asList(new Uint256(_b))); - return deployRemoteCall(NoParenthesesConstructor.class, web3j, transactionManager, contractGasProvider, BINARY, encodedConstructor, chainId); - } - - public RemoteCall a() { - final Function function = new Function(FUNC_A, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static NoParenthesesConstructor load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new NoParenthesesConstructor(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static NoParenthesesConstructor load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new NoParenthesesConstructor(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Overload.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Overload.java deleted file mode 100644 index 7ff9248539..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Overload.java +++ /dev/null @@ -1,100 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Overload extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101b2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806313d1aa2e1461005c57806315d55b28146100a8578063587dcf18146100c6578063b3de648b146100e4578063e2179b8e14610126575b600080fd5b6100926004803603604081101561007257600080fd5b810190808035906020019092919080359060200190929190505050610130565b6040518082815260200191505060405180910390f35b6100b061013d565b6040518082815260200191505060405180910390f35b6100ce610143565b6040518082815260200191505060405180910390f35b610110600480360360208110156100fa57600080fd5b810190808035906020019092919050505061014c565b6040518082815260200191505060405180910390f35b61012e610156565b005b6000818301905092915050565b60005481565b60008054905090565b6000819050919050565b600061016460026003610130565b9050610170600261014c565b9050806000819055505056fea2646970667358221220c6d9933a0faca0e114eda3fb1a23a20aba84faefd53cc637552aaf32dbd3034864736f6c63430007010033"; - - public static final String FUNC_F = "f"; - - public static final String FUNC_G = "g"; - - public static final String FUNC_GETRE = "getRe"; - - public static final String FUNC_RE = "re"; - - protected Overload(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Overload(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_F, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall f(BigInteger a) { - final Function function = new Function( - FUNC_F, - Arrays.asList(new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall g() { - final Function function = new Function( - FUNC_G, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getRe() { - final Function function = new Function(FUNC_GETRE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall re() { - final Function function = new Function(FUNC_RE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Overload.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Overload.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Overload load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Overload(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Overload load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Overload(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Payable.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Payable.java deleted file mode 100644 index 57b406c793..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Payable.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Payable extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610178806100206000396000f3fe6080604052600436106100295760003560e01c80631a6952301461002e578063c84aae1714610072575b600080fd5b6100706004803603602081101561004457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506100d7565b005b34801561007e57600080fd5b506100c16004803603602081101561009557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610121565b6040518082815260200191505060405180910390f35b8073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561011d573d6000803e3d6000fd5b5050565b60008173ffffffffffffffffffffffffffffffffffffffff1631905091905056fea26469706673582212203184d163c85f10004fbbb118c4c0dd1179332dcf7b5ffc68327b5eb897578c9064736f6c63430007010033"; - - public static final String FUNC_GETBALANCES = "getBalances"; - - public static final String FUNC_TRANSFER = "transfer"; - - protected Payable(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Payable(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getBalances(String addr) { - final Function function = new Function(FUNC_GETBALANCES, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall transfer(String addr, BigInteger vonValue) { - final Function function = new Function( - FUNC_TRANSFER, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Payable.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Payable.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Payable load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Payable(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Payable load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Payable(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PersonPublic.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PersonPublic.java deleted file mode 100644 index 0706822114..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PersonPublic.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Int256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PersonPublic extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50601d60018190555060aa6002819055506040518060400160405280600981526020017f4c75636b7920646f6700000000000000000000000000000000000000000000008152506003908051906020019061006c9291906100be565b506040518060400160405280600a81526020017f323031312d30312d303100000000000000000000000000000000000000000000815250600090805190602001906100b89291906100be565b5061015b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100ff57805160ff191683800117855561012d565b8280016001018555821561012d579182015b8281111561012c578251825591602001919060010190610111565b5b50905061013a919061013e565b5090565b5b8082111561015757600081600090555060010161013f565b5090565b6101888061016a6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063262a9dff14610046578063beb0067e14610064578063f377bd5b146100e7575b600080fd5b61004e610105565b6040518082815260200191505060405180910390f35b61006c61010f565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100ac578082015181840152602081019050610091565b50505050905090810190601f1680156100d95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100ef61014c565b6040518082815260200191505060405180910390f35b6000600154905090565b60606040518060400160405280600a81526020017f323032302d31322d313500000000000000000000000000000000000000000000815250905090565b6001548156fea264697066735822122046f4cfc18c649ea2b65d2945c79247f14c2b6c2ba261b893e5f23982f489a68964736f6c63430007010033"; - - public static final String FUNC__AGE = "_age"; - - public static final String FUNC_AGE = "age"; - - public static final String FUNC_BIRTHDAY = "birthDay"; - - protected PersonPublic(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PersonPublic(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall _age() { - final Function function = new Function(FUNC__AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall age() { - final Function function = new Function(FUNC_AGE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall birthDay() { - final Function function = new Function(FUNC_BIRTHDAY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PersonPublic.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PersonPublic.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PersonPublic load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PersonPublic(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PersonPublic load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PersonPublic(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PlatONToken.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PlatONToken.java deleted file mode 100644 index 781e8ac34c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PlatONToken.java +++ /dev/null @@ -1,90 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PlatONToken extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061010a806100206000396000f3fe6080604052348015600f57600080fd5b506004361060465760003560e01c8063249bb37314604b578063c2412676146067578063c951fdf614606f578063d87698ae14608b575b600080fd5b605160a7565b6040518082815260200191505060405180910390f35b606d60b9565b005b607560c3565b6040518082815260200191505060405180910390f35b609160ce565b6040518082815260200191505060405180910390f35b6000670de0b6b3a76400008101905090565b6001600081905550565b600060018101905090565b6000548156fea26469706673582212201c65c83cd890ad5a58ce0fbac81c686190f6c1ef2b53863019a10d22761c16a664736f6c63430007010033"; - - public static final String FUNC_PLAT = "Plat"; - - public static final String FUNC_PVON = "Pvon"; - - public static final String FUNC_TOKEN = "Token"; - - public static final String FUNC_PLATONTOKEN = "platontoken"; - - protected PlatONToken(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PlatONToken(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall Plat() { - final Function function = new Function(FUNC_PLAT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall Pvon() { - final Function function = new Function(FUNC_PVON, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall Token() { - final Function function = new Function( - FUNC_TOKEN, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platontoken() { - final Function function = new Function(FUNC_PLATONTOKEN, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatONToken.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatONToken.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PlatONToken load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PlatONToken(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PlatONToken load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PlatONToken(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PlatonInner.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PlatonInner.java deleted file mode 100644 index a014b4ea72..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PlatonInner.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PlatonInner extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506103a1806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063eb51cc911461003b578063f40ae8d9146100be575b600080fd5b610043610199565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610197600480360360408110156100d457600080fd5b81019080803590602001906401000000008111156100f157600080fd5b82018360208201111561010357600080fd5b8035906020019184600183028401116401000000008311171561012557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061023b565b005b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102315780601f1061020657610100808354040283529160200191610231565b820191906000526020600020905b81548152906001019060200180831161021457829003601f168201915b5050505050905090565b6000825190506000606060008084602088016000885af161025857fe5b3d91508167ffffffffffffffff8111801561027257600080fd5b506040519080825280601f01601f1916602001820160405280156102a55781602001600182028036833780820191505090505b5090503d6000602083013e80600090805190602001906102c69291906102ce565b505050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061030f57805160ff191683800117855561033d565b8280016001018555821561033d579182015b8281111561033c578251825591602001919060010190610321565b5b50905061034a919061034e565b5090565b5b8082111561036757600081600090555060010161034f565b509056fea2646970667358221220283460bd7fba1dfcee18504bae45379c653ddb6c34a6ed19ad75fb9dec23c90664736f6c63430007010033"; - - public static final String FUNC_ASSEMBLYCALLPPOS = "assemblyCallppos"; - - public static final String FUNC_GETRETURNVALUE = "getReturnValue"; - - protected PlatonInner(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PlatonInner(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall assemblyCallppos(byte[] data, String addr) { - final Function function = new Function( - FUNC_ASSEMBLYCALLPPOS, - Arrays.asList(new DynamicBytes(data), - new com.alaya.abi.solidity.datatypes.Address(addr)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getReturnValue() { - final Function function = new Function(FUNC_GETRETURNVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatonInner.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatonInner.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PlatonInner load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PlatonInner(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PlatonInner load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PlatonInner(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PlatonUnit.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PlatonUnit.java deleted file mode 100644 index 3db91a5e3f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PlatonUnit.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PlatonUnit extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060fc8061001f6000396000f3fe60806040526004361060295760003560e01c806312065fe014604d578063b69ef8a814607557603f565b36603f57603760005434609d565b600081905550005b348015604a57600080fd5b50005b348015605857600080fd5b50605f60b8565b6040518082815260200191505060405180910390f35b348015608057600080fd5b50608760c0565b6040518082815260200191505060405180910390f35b60008082840190508381101560ae57fe5b8091505092915050565b600047905090565b6000548156fea26469706673582212206f8dbd1ce8598dda4410e3f7a3303aa2f339935e40e7082d7502e0e387da62d264736f6c63430007010033"; - - public static final String FUNC_BALANCE = "balance"; - - public static final String FUNC_GETBALANCE = "getBalance"; - - protected PlatonUnit(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PlatonUnit(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall balance() { - final Function function = new Function(FUNC_BALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getBalance() { - final Function function = new Function(FUNC_GETBALANCE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatonUnit.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PlatonUnit.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PlatonUnit load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PlatonUnit(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PlatonUnit load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PlatonUnit(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PramaAndReturns.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PramaAndReturns.java deleted file mode 100644 index 71d69a45c3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/PramaAndReturns.java +++ /dev/null @@ -1,153 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.StaticArray3; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class PramaAndReturns extends Contract { - private static final String BINARY = "60806040526040518060400160405280600d81526020017f576861742773207570206d616e000000000000000000000000000000000000008152506000908051906020019061004f929190610062565b5034801561005c57600080fd5b506100ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100a357805160ff19168380011785556100d1565b828001600101855582156100d1579182015b828111156100d05782518255916020019190600101906100b5565b5b5090506100de91906100e2565b5090565b5b808211156100fb5760008160009055506001016100e3565b5090565b6105788061010e6000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806386b714e21161005b57806386b714e2146102905780639e2eea06146102ae578063e93314ab146102fa578063f8adff321461031857610088565b80630965e1451461008d5780631aa72bf81461012e57806354d410c8146101b15780637f0ffe3114610258575b600080fd5b6100f0600480360360608110156100a357600080fd5b8101908080606001906003806020026040519081016040528092919082600360200280828437600081840152601f19601f820116905080830192505050505050919291929050505061035a565b6040518082600360200280838360005b8381101561011b578082015181840152602081019050610100565b5050505090500191505060405180910390f35b610136610382565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561017657808201518184015260208101905061015b565b50505050905090810190601f1680156101a35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101b9610424565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b838110156102005780820151818401526020810190506101e5565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610242578082015181840152602081019050610227565b5050505090500194505050505060405180910390f35b61028e6004803603604081101561026e57600080fd5b8101908080359060200190929190803590602001909291905050506104f0565b005b6102986104fb565b6040518082815260200191505060405180910390f35b6102e4600480360360408110156102c457600080fd5b810190808035906020019092919080359060200190929190505050610501565b6040518082815260200191505060405180910390f35b61030261050c565b6040518082815260200191505060405180910390f35b6103446004803603602081101561032e57600080fd5b8101908080359060200190929190505050610516565b6040518082815260200191505060405180910390f35b610362610520565b60038260026003811061037157fe5b602002018181525050819050919050565b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561041a5780601f106103ef5761010080835404028352916020019161041a565b820191906000526020600020905b8154815290600101906020018083116103fd57829003601f168201915b5050505050905090565b6060806060600367ffffffffffffffff8111801561044157600080fd5b506040519080825280602002602001820160405280156104705781602001602082028036833780820191505090505b50905060018160008151811061048257fe5b60200260200101818152505060028160018151811061049d57fe5b6020026020010181815250506003816002815181106104b857fe5b6020026020010181815250506060819050600a826000815181106104d857fe5b60200260200101818152505081819350935050509091565b816001819055505050565b60015481565b600082905092915050565b6000600154905090565b6000819050919050565b604051806060016040528060039060208202803683378082019150509050509056fea2646970667358221220ecc088b1e90ba499501aac66c6586642f911caebbef15d42fa29d8a7ff2ddca964736f6c63430007010033"; - - public static final String FUNC_INPUTPARAM = "InputParam"; - - public static final String FUNC_IUPUTARRAY = "IuputArray"; - - public static final String FUNC_NOOUTPUT = "NoOutput"; - - public static final String FUNC_OMITPARAM = "OmitParam"; - - public static final String FUNC_OUPUTARRAYS = "OuputArrays"; - - public static final String FUNC_OUPUTSTRING = "OuputString"; - - public static final String FUNC_GETS = "getS"; - - public static final String FUNC_S = "s"; - - protected PramaAndReturns(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PramaAndReturns(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall InputParam(BigInteger a) { - final Function function = new Function(FUNC_INPUTPARAM, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall IuputArray(List y) { - final Function function = new Function(FUNC_IUPUTARRAY, - Arrays.asList(new StaticArray3( - Uint256.class, - com.alaya.abi.solidity.Utils.typeMap(y, Uint256.class))), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall NoOutput(BigInteger a, BigInteger b) { - final Function function = new Function( - FUNC_NOOUTPUT, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall OmitParam(BigInteger y, BigInteger param1) { - final Function function = new Function(FUNC_OMITPARAM, - Arrays.asList(new Uint256(y), - new Uint256(param1)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall, List>> OuputArrays() { - final Function function = new Function(FUNC_OUPUTARRAYS, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {}, new TypeReference>() {})); - return new RemoteCall, List>>( - new Callable, List>>() { - @Override - public Tuple2, List> call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2, List>( - convertToNative((List) results.get(0).getValue()), - convertToNative((List) results.get(1).getValue())); - } - }); - } - - public RemoteCall OuputString() { - final Function function = new Function(FUNC_OUPUTSTRING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getS() { - final Function function = new Function(FUNC_GETS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall s() { - final Function function = new Function(FUNC_S, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PramaAndReturns.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(PramaAndReturns.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static PramaAndReturns load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PramaAndReturns(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PramaAndReturns load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PramaAndReturns(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Precompiled.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Precompiled.java deleted file mode 100644 index 998ab05425..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Precompiled.java +++ /dev/null @@ -1,207 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.abi.solidity.datatypes.generated.StaticArray2; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Precompiled extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610efd806100206000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c8063af13657c1161008c578063c3e6b01811610066578063c3e6b018146104be578063caa2603214610514578063dd0678f114610648578063ec8b466a14610717576100cf565b8063af13657c14610349578063b2acd50914610367578063be31054014610436576100cf565b806301f56b78146100d457806341be3d521461014d5780636f29e2d7146101935780637e59b08a146101b1578063897bf040146102345780638af606d41461027a575b600080fd5b610121600480360360808110156100ea57600080fd5b8101908080359060200190929190803560ff1690602001909291908035906020019092919080359060200190929190505050610795565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610155610805565b6040518082600260200280838360005b83811015610180578082015181840152602081019050610165565b5050505090500191505060405180910390f35b61019b61084f565b6040518082815260200191505060405180910390f35b6101b9610859565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101f95780820151818401526020810190506101de565b50505050905090810190601f1680156102265780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61023c6108fb565b6040518082600260200280838360005b8381101561026757808201518184015260208101905061024c565b5050505090500191505060405180910390f35b6103336004803603602081101561029057600080fd5b81019080803590602001906401000000008111156102ad57600080fd5b8201836020820111156102bf57600080fd5b803590602001918460018302840111640100000000831117156102e157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610946565b6040518082815260200191505060405180910390f35b6103516109e0565b6040518082815260200191505060405180910390f35b6104206004803603602081101561037d57600080fd5b810190808035906020019064010000000081111561039a57600080fd5b8201836020820111156103ac57600080fd5b803590602001918460018302840111640100000000831117156103ce57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506109ea565b6040518082815260200191505060405180910390f35b6104806004803603608081101561044c57600080fd5b8101908080359060200190929190803590602001909291908035906020019092919080359060200190929190505050610a40565b6040518082600260200280838360005b838110156104ab578082015181840152602081019050610490565b5050505090500191505060405180910390f35b6104fe600480360360608110156104d457600080fd5b81019080803590602001909291908035906020019092919080359060200190929190505050610ae8565b6040518082815260200191505060405180910390f35b6105cd6004803603602081101561052a57600080fd5b810190808035906020019064010000000081111561054757600080fd5b82018360208201111561055957600080fd5b8035906020019184600183028401116401000000008311171561057b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610b44565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561060d5780820151818401526020810190506105f2565b50505050905090810190601f16801561063a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6107016004803603602081101561065e57600080fd5b810190808035906020019064010000000081111561067b57600080fd5b82018360208201111561068d57600080fd5b803590602001918460018302840111640100000000831117156106af57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610bce565b6040518082815260200191505060405180910390f35b6107576004803603606081101561072d57600080fd5b81019080803590602001909291908035906020019092919080359060200190929190505050610c75565b6040518082600260200280838360005b83811015610782578082015181840152602081019050610767565b5050505090500191505060405180910390f35b600060018585858560405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156107f1573d6000803e3d6000fd5b505050602060405103519050949350505050565b61080d610d05565b60028080602002604051908101604052809291908260028015610845576020028201915b815481526020019060010190808311610831575b5050505050905090565b6000600154905090565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108f15780601f106108c6576101008083540402835291602001916108f1565b820191906000526020600020905b8154815290600101906020018083116108d457829003601f168201915b5050505050905090565b610903610d27565b600460028060200260405190810160405280929190826002801561093c576020028201915b815481526020019060010190808311610928575b5050505050905090565b60006003826040518082805190602001908083835b6020831061097e578051825260208201915060208101905060208303925061095b565b6001836020036101000a038019825116818451168082178552505050505050905001915050602060405180830381855afa1580156109c0573d6000803e3d6000fd5b5050506040515160601b6bffffffffffffffffffffffff19169050919050565b6000600654905090565b60008082519050600060c082816109fd57fe5b0614610a0857600080fd5b6040516020818360208701600060085af18060008114610a2b5782519450610a30565b600080fd5b5050508160068190555050919050565b610a48610d05565b610a50610d49565b8581600060048110610a5e57fe5b6020020181815250508481600160048110610a7557fe5b6020020181815250508381600260048110610a8c57fe5b6020020181815250508281600360048110610aa357fe5b602002018181525050604082608083600060065af18060008114610ac657610acb565b600080fd5b5050816002906002610ade929190610d6b565b5050949350505050565b600060405160208152602080820152602060408201528460608201528360808201528260a082015260208160c083600060055af18060008114610b2e5782519350610b33565b600080fd5b505050806001819055509392505050565b606080825167ffffffffffffffff81118015610b5f57600080fd5b506040519080825280601f01601f191660200182016040528015610b925781602001600182028036833780820191505090505b509050825180602083018260208701600060045af1610bad57fe5b508060009080519060200190610bc4929190610dab565b5080915050919050565b60006002826040518082805190602001908083835b60208310610c065780518252602082019150602081019050602083039250610be3565b6001836020036101000a038019825116818451168082178552505050505050905001915050602060405180830381855afa158015610c48573d6000803e3d6000fd5b5050506040513d6020811015610c5d57600080fd5b81019080805190602001909291905050509050919050565b610c7d610d27565b610c85610e2b565b8481600060038110610c9357fe5b6020020181815250508381600160038110610caa57fe5b6020020181815250508281600260038110610cc157fe5b602002018181525050604082606083600060075af18060008114610ce457610ce9565b600080fd5b5050816004906002610cfc929190610e4d565b50509392505050565b6040518060400160405280600290602082028036833780820191505090505090565b6040518060400160405280600290602082028036833780820191505090505090565b6040518060800160405280600490602082028036833780820191505090505090565b8260028101928215610d9a579160200282015b82811115610d99578251825591602001919060010190610d7e565b5b509050610da79190610e8d565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610dec57805160ff1916838001178555610e1a565b82800160010185558215610e1a579182015b82811115610e19578251825591602001919060010190610dfe565b5b509050610e279190610e8d565b5090565b6040518060600160405280600390602082028036833780820191505090505090565b8260028101928215610e7c579160200282015b82811115610e7b578251825591602001919060010190610e60565b5b509050610e899190610eaa565b5090565b5b80821115610ea6576000816000905550600101610e8e565b5090565b5b80821115610ec3576000816000905550600101610eab565b509056fea2646970667358221220ffbee8978a3d4b5782db57a60080a2265ac06561505c235f2e19ecd31cc4b93764736f6c63430007010033"; - - public static final String FUNC_CALLBIGMODEXP = "callBigModExp"; - - public static final String FUNC_CALLBN256ADD = "callBn256Add"; - - public static final String FUNC_CALLBN256PAIRING = "callBn256Pairing"; - - public static final String FUNC_CALLBN256SCALARMUL = "callBn256ScalarMul"; - - public static final String FUNC_CALLDATACOPY = "callDatacopy"; - - public static final String FUNC_CALLECRECOVER = "callEcrecover"; - - public static final String FUNC_CALLRIPEMD160 = "callRipemd160"; - - public static final String FUNC_CALLSHA256 = "callSha256"; - - public static final String FUNC_GETCALLBIGMODEXPVALUE = "getCallBigModExpValue"; - - public static final String FUNC_GETCALLBN256ADDVALUES = "getCallBn256AddValues"; - - public static final String FUNC_GETCALLBN256PAIRINGVALUE = "getCallBn256PairingValue"; - - public static final String FUNC_GETCALLBN256SCALARMULVALUES = "getCallBn256ScalarMulValues"; - - public static final String FUNC_GETCALLDATACOPYVALUE = "getCallDatacopyValue"; - - protected Precompiled(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Precompiled(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callBigModExp(byte[] base, byte[] exponent, byte[] modulus) { - final Function function = new Function( - FUNC_CALLBIGMODEXP, - Arrays.asList(new Bytes32(base), - new Bytes32(exponent), - new Bytes32(modulus)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callBn256Add(BigInteger ax, BigInteger ay, BigInteger bx, BigInteger by) { - final Function function = new Function( - FUNC_CALLBN256ADD, - Arrays.asList(new Uint256(ax), - new Uint256(ay), - new Uint256(bx), - new Uint256(by)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callBn256Pairing(byte[] input) { - final Function function = new Function( - FUNC_CALLBN256PAIRING, - Arrays.asList(new DynamicBytes(input)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callBn256ScalarMul(byte[] x, byte[] y, byte[] scalar) { - final Function function = new Function( - FUNC_CALLBN256SCALARMUL, - Arrays.asList(new Bytes32(x), - new Bytes32(y), - new Bytes32(scalar)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callDatacopy(byte[] data) { - final Function function = new Function( - FUNC_CALLDATACOPY, - Arrays.asList(new DynamicBytes(data)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callEcrecover(byte[] hash, BigInteger v, byte[] r, byte[] s) { - final Function function = new Function(FUNC_CALLECRECOVER, - Arrays.asList(new Bytes32(hash), - new com.alaya.abi.solidity.datatypes.generated.Uint8(v), - new Bytes32(r), - new Bytes32(s)), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall callRipemd160(byte[] data) { - final Function function = new Function(FUNC_CALLRIPEMD160, - Arrays.asList(new DynamicBytes(data)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall callSha256(byte[] data) { - final Function function = new Function(FUNC_CALLSHA256, - Arrays.asList(new DynamicBytes(data)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getCallBigModExpValue() { - final Function function = new Function(FUNC_GETCALLBIGMODEXPVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getCallBn256AddValues() { - final Function function = new Function(FUNC_GETCALLBN256ADDVALUES, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall getCallBn256PairingValue() { - final Function function = new Function(FUNC_GETCALLBN256PAIRINGVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall getCallBn256ScalarMulValues() { - final Function function = new Function(FUNC_GETCALLBN256SCALARMULVALUES, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall getCallDatacopyValue() { - final Function function = new Function(FUNC_GETCALLDATACOPYVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Precompiled.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Precompiled.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Precompiled load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Precompiled(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Precompiled load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Precompiled(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RecursionCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RecursionCall.java deleted file mode 100644 index 6ab38fac64..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RecursionCall.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RecursionCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060fe8061001f6000396000f3fe60806040526004361060265760003560e01c8063191a62d414602b57806357e98139146053575b600080fd5b348015603657600080fd5b50603d6092565b6040518082815260200191505060405180910390f35b607c60048036036020811015606757600080fd5b8101908080359060200190929190505050609b565b6040518082815260200191505060405180910390f35b60008054905090565b600081600054101560be5760008081546001019190508190555060bc82609b565b505b600054905091905056fea26469706673582212207611d868aaac2ce07e2bf51b440a07085b595e6e2ebc9efb39dd4c746f9421d464736f6c63430007010033"; - - public static final String FUNC_GET_TOTAL = "get_total"; - - public static final String FUNC_RECURSIONCALLTEST = "recursionCallTest"; - - protected RecursionCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RecursionCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall get_total() { - final Function function = new Function(FUNC_GET_TOTAL, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall recursionCallTest(BigInteger n, BigInteger vonValue) { - final Function function = new Function( - FUNC_RECURSIONCALLTEST, - Arrays.asList(new Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RecursionCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RecursionCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RecursionCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RecursionCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RecursionCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RecursionCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RecursiveStorageMemoryComplex.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RecursiveStorageMemoryComplex.java deleted file mode 100644 index afedf3457c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RecursiveStorageMemoryComplex.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicArray; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RecursiveStorageMemoryComplex extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060426000800181905550614200600060010160008154811061002f57fe5b906000526020600020906002020160000181905550614201600060010160018154811061005857fe5b90600052602060002090600202016000018190555060005b60038110156100ce57806242000001600060010160008154811061009057fe5b906000526020600020906002020160010182815481106100ac57fe5b9060005260206000209060020201600001819055508080600101915050610070565b5060005b60048110156101305780624201000160006001016001815481106100f257fe5b9060005260206000209060020201600101828154811061010e57fe5b90600052602060002090600202016000018190555080806001019150506100d2565b50610424806101406000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063a9be8c391461003b578063c04062261461009a575b600080fd5b6100436100f9565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561008657808201518184015260208101905061006b565b505050509050019250505060405180910390f35b6100a2610151565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156100e55780820151818401526020810190506100ca565b505050509050019250505060405180910390f35b6060600280548060200260200160405190810160405280929190818152602001828054801561014757602002820191906000526020600020905b815481526020019060010190808311610133575b5050505050905090565b606061015b6102f5565b60006101669061030f565b9050600061017382610236565b90508067ffffffffffffffff8111801561018c57600080fd5b506040519080825280602002602001820160405280156101bb5781602001602082028036833780820191505090505b50600290805190602001906101d1929190610384565b506101dd826000610283565b50600280548060200260200160405190810160405280929190818152602001828054801561022a57602002820191906000526020600020905b815481526020019060010190808311610216575b50505050509250505090565b60006001905060005b82602001515181101561027d5761026c8360200151828151811061025f57fe5b6020026020010151610236565b82019150808060010191505061023f565b50919050565b600082600001516002838060010194508154811061029d57fe5b906000526020600020018190555060005b8360200151518110156102eb576102dc846020015182815181106102ce57fe5b602002602001015184610283565b925080806001019150506102ae565b5081905092915050565b604051806040016040528060008152602001606081525090565b6040518060400160405290816000820154815260200160018201805480602002602001604051908101604052809291908181526020016000905b82821015610379578382906000526020600020906002020161036a9061030f565b81526020019060010190610349565b505050508152505090565b8280548282559060005260206000209081019282156103c0579160200282015b828111156103bf5782518255916020019190600101906103a4565b5b5090506103cd91906103d1565b5090565b5b808211156103ea5760008160009055506001016103d2565b509056fea26469706673582212201f701e4c33b15c0a46170e4f7030466af612eac4a680b058cc3bcdc652ce83cd64736f6c63430007010033"; - - public static final String FUNC_GETRUNRESULT = "getRunResult"; - - public static final String FUNC_RUN = "run"; - - protected RecursiveStorageMemoryComplex(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RecursiveStorageMemoryComplex(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RecursiveStorageMemoryComplex.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RecursiveStorageMemoryComplex.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getRunResult() { - final Function function = new Function(FUNC_GETRUNRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference>() {})); - return new RemoteCall( - new Callable() { - @Override - @SuppressWarnings("unchecked") - public List call() throws Exception { - List result = (List) executeCallSingleValueReturn(function, List.class); - return convertToNative(result); - } - }); - } - - public RemoteCall run() { - final Function function = new Function( - FUNC_RUN, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RecursiveStorageMemoryComplex load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RecursiveStorageMemoryComplex(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RecursiveStorageMemoryComplex load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RecursiveStorageMemoryComplex(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeArrayComplexContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeArrayComplexContract.java deleted file mode 100644 index fdbfa60a26..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeArrayComplexContract.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeArrayComplexContract extends Contract { - private static final String BINARY = "60806040526040518060400160405280600160ff168152602001600260ff168152506000906002610031929190610044565b5034801561003e57600080fd5b506100b3565b828054828255906000526020600020908101928215610085579160200282015b82811115610084578251829060ff16905591602001919060010190610064565b5b5090506100929190610096565b5090565b5b808211156100af576000816000905550600101610097565b5090565b61017e806100c26000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806310c037da14610030575b600080fd5b6100a76004803603602081101561004657600080fd5b810190808035906020019064010000000081111561006357600080fd5b82018360208201111561007557600080fd5b8035906020019184602083028401116401000000008311171561009757600080fd5b90919293919293905050506100bd565b6040518082815260200191505060405180910390f35b6000806000905060005b8484905082101561013c576000829050600a8111156100e6575061013c565b60008686838181106100f457fe5b9050602002013590506103e881106101135760018401935050506100c7565b80830192506101f4831061012d5782945050505050610142565b838060010194505050506100c7565b80925050505b9291505056fea26469706673582212208e1b91c6a8f286cc40f6ef2e371852f950431778f9c7d517fd226654a9410abf64736f6c63430007010033"; - - public static final String FUNC_SUMCOMPLEXARRAY = "sumComplexArray"; - - protected ReferenceDataTypeArrayComplexContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeArrayComplexContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sumComplexArray(List array) { - final Function function = new Function(FUNC_SUMCOMPLEXARRAY, - Arrays.asList(new com.alaya.abi.solidity.datatypes.DynamicArray( - Uint256.class, - com.alaya.abi.solidity.Utils.typeMap(array, Uint256.class))), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayComplexContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayComplexContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeArrayComplexContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayComplexContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeArrayComplexContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayComplexContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeArrayContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeArrayContract.java deleted file mode 100644 index ec7cc5c04b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeArrayContract.java +++ /dev/null @@ -1,123 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeArrayContract extends Contract { - private static final String BINARY = "60806040526040518060a00160405280600160ff168152602001600260ff168152602001600360ff168152602001600460ff168152602001600560ff16815250600090600561004f929190610322565b506040518060c001604052806040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f320000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f330000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f340000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f350000000000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600181526020017f360000000000000000000000000000000000000000000000000000000000000081525081525060059060066101cb929190610367565b50600567ffffffffffffffff811180156101e457600080fd5b506040519080825280602002602001820160405280156102135781602001602082028036833780820191505090505b50600690805190602001906102299291906103c7565b506040518060c001604052806040518060400160405280600060ff168152602001600060ff1681525081526020016040518060400160405280600060ff168152602001600160ff1681525081526020016040518060400160405280600060ff168152602001600260ff1681525081526020016040518060400160405280600160ff168152602001600060ff1681525081526020016040518060400160405280600160ff168152602001600160ff1681525081526020016040518060400160405280600160ff168152602001600260ff16815250815250600790600661030f929190610414565b5034801561031c57600080fd5b5061060f565b8260058101928215610356579160200282015b82811115610355578251829060ff16905591602001919060010190610335565b5b509050610363919061046f565b5090565b8280548282559060005260206000209081019282156103b6579160200282015b828111156103b55782518290805190602001906103a592919061048c565b5091602001919060010190610387565b5b5090506103c3919061050c565b5090565b828054828255906000526020600020908101928215610403579160200282015b828111156104025782518255916020019190600101906103e7565b5b509050610410919061046f565b5090565b82805482825590600052602060002090810192821561045e579160200282015b8281111561045d5782518290600261044d929190610530565b5091602001919060010190610434565b5b50905061046b9190610582565b5090565b5b80821115610488576000816000905550600101610470565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106104cd57805160ff19168380011785556104fb565b828001600101855582156104fb579182015b828111156104fa5782518255916020019190600101906104df565b5b509050610508919061046f565b5090565b5b8082111561052c576000818161052391906105a6565b5060010161050d565b5090565b828054828255906000526020600020908101928215610571579160200282015b82811115610570578251829060ff16905591602001919060010190610550565b5b50905061057e919061046f565b5090565b5b808211156105a2576000818161059991906105ee565b50600101610583565b5090565b50805460018160011615610100020316600290046000825580601f106105cc57506105eb565b601f0160209004906000526020600020908101906105ea919061046f565b5b50565b508054600082559060005260206000209081019061060c919061046f565b50565b6103c28061061e6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80630849cc99146100675780630dca60821461008557806354c73338146100bd57806357933804146100c7578063ab35ec6314610182578063c3d1f404146101c4575b600080fd5b61006f6101e9565b6040518082815260200191505060405180910390f35b6100bb6004803603604081101561009b57600080fd5b8101908080359060200190929190803590602001909291905050506101f6565b005b6100c561020d565b005b610180600480360360208110156100dd57600080fd5b81019080803590602001906401000000008111156100fa57600080fd5b82018360208201111561010c57600080fd5b8035906020019184600183028401116401000000008311171561012e57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610243565b005b6101ae6004803603602081101561019857600080fd5b8101908080359060200190929190505050610282565b6040518082815260200191505060405180910390f35b6101cc610299565b604051808381526020018281526020019250505060405180910390f35b6000600580549050905090565b806000836005811061020457fe5b01819055505050565b6064600760018154811061021d57fe5b9060005260206000200160008154811061023357fe5b9060005260206000200181905550565b60058190806001815401808255809150506001900390600052602060002001600090919091909150908051906020019061027e9291906102ef565b5050565b600080826005811061029057fe5b01549050919050565b60008060076001815481106102aa57fe5b906000526020600020016000815481106102c057fe5b906000526020600020015460076000815481106102d957fe5b9060005260206000200180549050915091509091565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061033057805160ff191683800117855561035e565b8280016001018555821561035e579182015b8281111561035d578251825591602001919060010190610342565b5b50905061036b919061036f565b5090565b5b80821115610388576000816000905550600101610370565b509056fea264697066735822122064c511e283c74f66dbb24ff744ec00ca404ba9c135e85e129c6bbc4b839a6e6164736f6c63430007010033"; - - public static final String FUNC_GETARRAY = "getArray"; - - public static final String FUNC_GETARRAYLENGTH = "getArrayLength"; - - public static final String FUNC_GETMULTIARRAY = "getMultiArray"; - - public static final String FUNC_SETARRAY = "setArray"; - - public static final String FUNC_SETARRAYPUSH = "setArrayPush"; - - public static final String FUNC_SETMULTIARRAY = "setMultiArray"; - - protected ReferenceDataTypeArrayContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeArrayContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getArray(BigInteger index) { - final Function function = new Function(FUNC_GETARRAY, - Arrays.asList(new Uint256(index)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getArrayLength() { - final Function function = new Function(FUNC_GETARRAYLENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> getMultiArray() { - final Function function = new Function(FUNC_GETMULTIARRAY, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall setArray(BigInteger index, BigInteger value) { - final Function function = new Function( - FUNC_SETARRAY, - Arrays.asList(new Uint256(index), - new Uint256(value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setArrayPush(String x) { - final Function function = new Function( - FUNC_SETARRAYPUSH, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Utf8String(x)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setMultiArray() { - final Function function = new Function( - FUNC_SETMULTIARRAY, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeArrayContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeArrayContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeArrayOperatorContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeArrayOperatorContract.java deleted file mode 100644 index 11a2b8d17c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeArrayOperatorContract.java +++ /dev/null @@ -1,186 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tuples.generated.Tuple5; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeArrayOperatorContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506105fe806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806399a1c3691161005b57806399a1c369146101605780639a6e3cb7146101aa578063b9903334146101ee578063fd081ef8146102385761007d565b80631ff0db4014610082578063676cb904146100cc57806386d1171014610116575b600080fd5b61008a610282565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1681526020019250505060405180910390f35b6100d46102b4565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1681526020019250505060405180910390f35b61011e610300565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1681526020019250505060405180910390f35b61016861034c565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1681526020019250505060405180910390f35b6101b261037e565b60405180861515815260200185151581526020018415158152602001831515815260200182151581526020019550505050505060405180910390f35b6101f661056f565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1681526020019250505060405180910390f35b6102406105a1565b60405180837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020018260ff1681526020019250505060405180910390f35b6000806000608160f81b90506000608060f81b90506000818316905060008160f81c9050818195509550505050509091565b6000806000608160f81b905060006001827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901b905060008160f81c90508181945094505050509091565b6000806000608160f81b905060006001827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901c905060008160f81c90508181945094505050509091565b6000806000608160f81b90506000608060f81b90506000818318905060008160f81c9050818195509550505050509091565b6000806000806000807f6100000000000000000000000000000000000000000000000000000000000000905060007f620000000000000000000000000000000000000000000000000000000000000090506000606160f81b90506000827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916847effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161090506000837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161190506000837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916867effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161490506000847effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916867effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916141590506000857effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916887effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015905084848484849c509c509c509c509c5050505050505050509091929394565b6000806000608160f81b90506000608060f81b90506000818317905060008160f81c9050818195509550505050509091565b6000806000608160f81b905060008119905060008160f81c9050818194509450505050909156fea264697066735822122089f5a84dc14c9c68503c52bc35e16ca86d1d5246a3d7a821bd71148dad0ccc8264736f6c63430007010033"; - - public static final String FUNC_ARRAYBITANDOPERATORS = "arrayBitAndOperators"; - - public static final String FUNC_ARRAYBITINVERSEOPERATORS = "arrayBitInverseOperators"; - - public static final String FUNC_ARRAYBITLEFTSHIFTPERATORS = "arrayBitLeftShiftperators"; - - public static final String FUNC_ARRAYBITOROPERATORS = "arrayBitOrOperators"; - - public static final String FUNC_ARRAYBITRIGHTSHIFTPERATORS = "arrayBitRightShiftperators"; - - public static final String FUNC_ARRAYBITXOROPERATORS = "arrayBitXOROperators"; - - public static final String FUNC_ARRAYCOMPARE = "arrayCompare"; - - protected ReferenceDataTypeArrayOperatorContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeArrayOperatorContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> arrayBitAndOperators() { - final Function function = new Function(FUNC_ARRAYBITANDOPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitInverseOperators() { - final Function function = new Function(FUNC_ARRAYBITINVERSEOPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitLeftShiftperators() { - final Function function = new Function(FUNC_ARRAYBITLEFTSHIFTPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitOrOperators() { - final Function function = new Function(FUNC_ARRAYBITOROPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitRightShiftperators() { - final Function function = new Function(FUNC_ARRAYBITRIGHTSHIFTPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayBitXOROperators() { - final Function function = new Function(FUNC_ARRAYBITXOROPERATORS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (byte[]) results.get(0).getValue(), - (BigInteger) results.get(1).getValue()); - } - }); - } - - public RemoteCall> arrayCompare() { - final Function function = new Function(FUNC_ARRAYCOMPARE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple5 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple5( - (Boolean) results.get(0).getValue(), - (Boolean) results.get(1).getValue(), - (Boolean) results.get(2).getValue(), - (Boolean) results.get(3).getValue(), - (Boolean) results.get(4).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayOperatorContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeArrayOperatorContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeArrayOperatorContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayOperatorContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeArrayOperatorContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayOperatorContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeStructContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeStructContract.java deleted file mode 100644 index 6a600458cb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeStructContract.java +++ /dev/null @@ -1,116 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple4; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeStructContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506102f6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630b1a6855146100465780638e5f3b9c14610091578063cdd9acc1146100dc575b600080fd5b61004e610127565b604051808581526020018473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001821515815260200194505050505060405180910390f35b6100996101a2565b604051808581526020018473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001821515815260200194505050505060405180910390f35b6100e4610211565b604051808581526020018473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001821515815260200194505050505060405180910390f35b600080600080610135610280565b61013d610280565b6040518060800160405280600281526020013373ffffffffffffffffffffffffffffffffffffffff1681526020016019815260200160011515815250905080915081600001518260200151836040015184606001519550955095509550505090919293565b6000806000806101b0610280565b6040518060800160405280600281526020013373ffffffffffffffffffffffffffffffffffffffff16815260200160198152602001600115158152509050806000015181602001518260400151836060015194509450945094505090919293565b60008060008061021f610280565b6040518060800160405280600281526020013373ffffffffffffffffffffffffffffffffffffffff16815260200160198152602001600115158152509050806000015181602001518260400151836060015194509450945094505090919293565b604051806080016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600015158152509056fea264697066735822122022432af556adfa14202612780726e74f595cafe9a55f0835f27fa09f6b1b408464736f6c63430007010033"; - - public static final String FUNC_INITDATASTRUCTA = "initDataStructA"; - - public static final String FUNC_INITDATASTRUCTB = "initDataStructB"; - - public static final String FUNC_INITDATASTRUCTC = "initDataStructC"; - - protected ReferenceDataTypeStructContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeStructContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> initDataStructA() { - final Function function = new Function(FUNC_INITDATASTRUCTA, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference

() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple4 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple4( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (Boolean) results.get(3).getValue()); - } - }); - } - - public RemoteCall> initDataStructB() { - final Function function = new Function(FUNC_INITDATASTRUCTB, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference
() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple4 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple4( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (Boolean) results.get(3).getValue()); - } - }); - } - - public RemoteCall> initDataStructC() { - final Function function = new Function(FUNC_INITDATASTRUCTC, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference
() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple4 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple4( - (BigInteger) results.get(0).getValue(), - (String) results.get(1).getValue(), - (BigInteger) results.get(2).getValue(), - (Boolean) results.get(3).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeStructContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeStructContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeStructDeleteContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeStructDeleteContract.java deleted file mode 100644 index a3d695df56..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeStructDeleteContract.java +++ /dev/null @@ -1,97 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeStructDeleteContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506005600081905550600a600160020181905550600180600301600060018152602001908152602001600020819055506002600160030160006002815260200190815260200160002081905550600360016000016000018190555060018060000160010160006001815260200190815260200160002060006101000a81548160ff02191690831515021790555060018060000160010160006002815260200190815260200160002060006101000a81548160ff021916908315150217905550600160008082016000808201600090555050600282016000905550506000805561019e806100fe6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806311977c5c1461005c5780631268893e1461007a5780635ff76c8a1461009857806379e44a38146100b6578063d587919c146100d4575b600080fd5b6100646100f4565b6040518082815260200191505060405180910390f35b6100826100fd565b6040518082815260200191505060405180910390f35b6100a061011c565b6040518082815260200191505060405180910390f35b6100be61012c565b6040518082815260200191505060405180910390f35b6100dc610139565b60405180821515815260200191505060405180910390f35b60008054905090565b6000600160030160006001815260200190815260200160002054905090565b6000600160000160000154905090565b6000600160020154905090565b6000600160000160010160006001815260200190815260200160002060009054906101000a900460ff1690509056fea26469706673582212201c976f47960fc90a00b71038bff527155beea276b6a8adbb48b05a56e0f9c73364736f6c63430007010033"; - - public static final String FUNC_GETNESTEDMAPPING = "getNestedMapping"; - - public static final String FUNC_GETNESTEDVALUE = "getNestedValue"; - - public static final String FUNC_GETTODELETEINT = "getToDeleteInt"; - - public static final String FUNC_GETTOPMAPPING = "getTopMapping"; - - public static final String FUNC_GETTOPVALUE = "getTopValue"; - - protected ReferenceDataTypeStructDeleteContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeStructDeleteContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructDeleteContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructDeleteContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getNestedMapping() { - final Function function = new Function(FUNC_GETNESTEDMAPPING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getNestedValue() { - final Function function = new Function(FUNC_GETNESTEDVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getToDeleteInt() { - final Function function = new Function(FUNC_GETTODELETEINT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getTopMapping() { - final Function function = new Function(FUNC_GETTOPMAPPING, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall getTopValue() { - final Function function = new Function(FUNC_GETTOPVALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static ReferenceDataTypeStructDeleteContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructDeleteContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeStructDeleteContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructDeleteContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeStructRecursiveContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeStructRecursiveContract.java deleted file mode 100644 index 1be70d88b7..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ReferenceDataTypeStructRecursiveContract.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple3; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ReferenceDataTypeStructRecursiveContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610174806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806397b93b1a14610030575b600080fd5b61003861005c565b60405180848152602001838152602001828152602001935050505060405180910390f35b60008060006100696100c4565b6000610074906100d7565b9050806000015151816000015160008151811061008d57fe5b6020026020010151600001515182600001516001815181106100ab57fe5b6020026020010151600001515193509350935050909192565b6040518060200160405280606081525090565b60405180602001604052908160008201805480602002602001604051908101604052809291908181526020016000905b8282101561013357838290600052602060002001610124906100d7565b81526020019060010190610107565b50505050815250509056fea26469706673582212208aba33ec7b06877636bc3af89d690f4748a93772a63ccda315980b2bfd468eb464736f6c63430007010033"; - - public static final String FUNC_GETSTRUCTPERSONLENGTH = "getStructPersonLength"; - - protected ReferenceDataTypeStructRecursiveContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeStructRecursiveContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall> getStructPersonLength() { - final Function function = new Function(FUNC_GETSTRUCTPERSONLENGTH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple3 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple3( - (BigInteger) results.get(0).getValue(), - (BigInteger) results.get(1).getValue(), - (BigInteger) results.get(2).getValue()); - } - }); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructRecursiveContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ReferenceDataTypeStructRecursiveContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ReferenceDataTypeStructRecursiveContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructRecursiveContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeStructRecursiveContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructRecursiveContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RequireContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RequireContract.java deleted file mode 100644 index 32b7859298..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RequireContract.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RequireContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060df8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806314fef936146037578063de29278914606c575b600080fd5b606a60048036036040811015604b57600080fd5b8101908080359060200190929190803590602001909291905050506088565b005b607260a0565b6040518082815260200191505060405180910390f35b808211609357600080fd5b8082036000819055505050565b6000805490509056fea2646970667358221220753079ebd816a05be05b12e9066319b1f9783e880c847e7b6c37f87d9bb81ec764736f6c63430007010033"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final String FUNC_TOSENDERAMOUNT = "toSenderAmount"; - - protected RequireContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RequireContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getResult() { - final Function function = new Function(FUNC_GETRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall toSenderAmount(BigInteger frist, BigInteger second) { - final Function function = new Function( - FUNC_TOSENDERAMOUNT, - Arrays.asList(new Uint256(frist), - new Uint256(second)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RequireContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RequireContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RequireContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RequireContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RequireMessageHandle.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RequireMessageHandle.java deleted file mode 100644 index cb7a1d55bd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RequireMessageHandle.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RequireMessageHandle extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610106806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063afcd320e14602d575b600080fd5b605660048036036020811015604157600080fd5b81019080803590602001909291905050506058565b005b600a811060cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807fe695b4e59e8be5a4a7e5b08fe6af94e8be83e5bc82e5b8b8000000000000000081525060200191505060405180910390fd5b5056fea26469706673582212209b8fba4408f1f01877897641f5c790c3cadfd5f4fca497c20783e6bd8d7c6cad64736f6c63430007010033"; - - public static final String FUNC_PARAMEXCEPTION = "paramException"; - - protected RequireMessageHandle(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RequireMessageHandle(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall paramException(BigInteger param) { - final Function function = new Function( - FUNC_PARAMEXCEPTION, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireMessageHandle.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RequireMessageHandle.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RequireMessageHandle load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RequireMessageHandle(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RequireMessageHandle load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RequireMessageHandle(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RevertContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RevertContract.java deleted file mode 100644 index 066c70cf0f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RevertContract.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RevertContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610171806100606000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806314fef9361461003b578063de29278914610087575b600080fd5b6100716004803603604081101561005157600080fd5b8101908080359060200190929190803590602001909291905050506100a5565b6040518082815260200191505060405180910390f35b61008f610131565b6040518082815260200191505060405180910390f35b60008183101561011d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f6669727374206c657373207468616e207365636f6e640000000000000000000081525060200191505060405180910390fd5b818303600181905550600154905092915050565b600060015490509056fea2646970667358221220ba771aebc074f16f3fb259177d1d3f115df8311c6720673957d300a9ae3c78c464736f6c63430007010033"; - - public static final String FUNC_GETRESULT = "getResult"; - - public static final String FUNC_TOSENDERAMOUNT = "toSenderAmount"; - - protected RevertContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RevertContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RevertContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RevertContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getResult() { - final Function function = new Function(FUNC_GETRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall toSenderAmount(BigInteger first, BigInteger second) { - final Function function = new Function( - FUNC_TOSENDERAMOUNT, - Arrays.asList(new Uint256(first), - new Uint256(second)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RevertContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RevertContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RevertContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RevertContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RevertHandle.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RevertHandle.java deleted file mode 100644 index d40033b555..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RevertHandle.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RevertHandle extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610158806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063852da1631461003b578063f76051e714610069575b600080fd5b6100676004803603602081101561005157600080fd5b8101908080359060200190929190505050610097565b005b6100956004803603602081101561007f57600080fd5b8101908080359060200190929190505050610111565b005b600a81111561010e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f636865636b20636174636820657863657074696f6e000000000000000000000081525060200191505060405180910390fd5b50565b600a81111561011f57600080fd5b5056fea264697066735822122026539630c35843694a5d0bbbdd61f5d8bbea3e9814810f02cc5ca99ea1a2370464736f6c63430007010033"; - - public static final String FUNC_REVERTCHECK = "revertCheck"; - - public static final String FUNC_REVERTREASONCHECK = "revertReasonCheck"; - - protected RevertHandle(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RevertHandle(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall revertCheck(BigInteger param) { - final Function function = new Function( - FUNC_REVERTCHECK, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall revertReasonCheck(BigInteger param) { - final Function function = new Function( - FUNC_REVERTREASONCHECK, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(param)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RevertHandle.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RevertHandle.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RevertHandle load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RevertHandle(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RevertHandle load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RevertHandle(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RuntimeCode.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RuntimeCode.java deleted file mode 100644 index 52b4de46a9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RuntimeCode.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.DynamicBytes; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RuntimeCode extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506102f4806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063d489e0041461003b578063f5f5ba72146100be575b600080fd5b610043610141565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100c6610168565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101065780820151818401526020810190506100eb565b50505050905090810190601f1680156101335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6040518060200161015190610193565b6020820181038252601f19601f8201166040525081565b60606040518060200161017a90610193565b6020820181038252601f19601f82011660405250905090565b61011e806101a18339019056fe6080604052348015600f57600080fd5b506004361060285760003560e01c80632096525514602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525090509056fea264697066735822122043088b1ee6fdd40919f4690deda97e1a1c18c441895a2392fbebe675ca53fdcc64736f6c63430007010033a2646970667358221220a165eee6e168a274940e1544d1415365246c851cab5ddb9d0effde67ef99302764736f6c63430007010033"; - - public static final String FUNC_GETCONTRACTNAME = "getContractName"; - - public static final String FUNC_RUNTIMECODEINFO = "runtimeCodeInfo"; - - protected RuntimeCode(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RuntimeCode(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getContractName() { - final Function function = new Function(FUNC_GETCONTRACTNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall runtimeCodeInfo() { - final Function function = new Function(FUNC_RUNTIMECODEINFO, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RuntimeCode.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RuntimeCode.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RuntimeCode load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RuntimeCode(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RuntimeCode load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RuntimeCode(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RuntimeCodeType.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RuntimeCodeType.java deleted file mode 100644 index 25887955d2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/RuntimeCodeType.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class RuntimeCodeType extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80632096525514602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405280600581526020017f68656c6c6f00000000000000000000000000000000000000000000000000000081525090509056fea264697066735822122043088b1ee6fdd40919f4690deda97e1a1c18c441895a2392fbebe675ca53fdcc64736f6c63430007010033"; - - public static final String FUNC_GETVALUE = "getValue"; - - protected RuntimeCodeType(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RuntimeCodeType(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getValue() { - final Function function = new Function( - FUNC_GETVALUE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RuntimeCodeType.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(RuntimeCodeType.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static RuntimeCodeType load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RuntimeCodeType(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RuntimeCodeType load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RuntimeCodeType(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SafeMathMock.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SafeMathMock.java deleted file mode 100644 index b32d84e69c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SafeMathMock.java +++ /dev/null @@ -1,131 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SafeMathMock extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610709806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a391c15b1161005b578063a391c15b146101bd578063b67d77c514610209578063c8a4ac9c14610255578063f43f523a146102a157610088565b80632b7423ab1461008d5780636d5433e6146100d9578063771602f7146101255780637ae2b5c714610171575b600080fd5b6100c3600480360360408110156100a357600080fd5b8101908080359060200190929190803590602001909291905050506102ed565b6040518082815260200191505060405180910390f35b61010f600480360360408110156100ef57600080fd5b810190808035906020019092919080359060200190929190505050610301565b6040518082815260200191505060405180910390f35b61015b6004803603604081101561013b57600080fd5b810190808035906020019092919080359060200190929190505050610315565b6040518082815260200191505060405180910390f35b6101a76004803603604081101561018757600080fd5b810190808035906020019092919080359060200190929190505050610329565b6040518082815260200191505060405180910390f35b6101f3600480360360408110156101d357600080fd5b81019080803590602001909291908035906020019092919050505061033d565b6040518082815260200191505060405180910390f35b61023f6004803603604081101561021f57600080fd5b810190808035906020019092919080359060200190929190505050610351565b6040518082815260200191505060405180910390f35b61028b6004803603604081101561026b57600080fd5b810190808035906020019092919080359060200190929190505050610365565b6040518082815260200191505060405180910390f35b6102d7600480360360408110156102b757600080fd5b810190808035906020019092919080359060200190929190505050610379565b6040518082815260200191505060405180910390f35b60006102f9838361038d565b905092915050565b600061030d83836103cf565b905092915050565b600061032183836103e9565b905092915050565b60006103358383610471565b905092915050565b6000610349838361048a565b905092915050565b600061035d8383610519565b905092915050565b600061037183836105a2565b905092915050565b60006103858383610628565b905092915050565b6000600280838161039a57fe5b06600285816103a557fe5b0601816103ae57fe5b04600283816103b957fe5b04600285816103c457fe5b040101905092915050565b6000818310156103df57816103e1565b825b905092915050565b600080828401905083811015610467576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60008183106104805781610482565b825b905092915050565b6000808211610501576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b600082848161050c57fe5b0490508091505092915050565b600082821115610591576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b6000808314156105b55760009050610622565b60008284029050828482816105c657fe5b041461061d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806106b36021913960400191505060405180910390fd5b809150505b92915050565b6000808214156106a0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f536166654d6174683a206d6f64756c6f206279207a65726f000000000000000081525060200191505060405180910390fd5b8183816106a957fe5b0690509291505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212206df89b4cf624195d8b6645e90df32716abaee046e8890c3453f5a3e1790bb1ea64736f6c63430007010033"; - - public static final String FUNC_ADD = "add"; - - public static final String FUNC_AVERAGE = "average"; - - public static final String FUNC_DIV = "div"; - - public static final String FUNC_MAX = "max"; - - public static final String FUNC_MIN = "min"; - - public static final String FUNC_MOD = "mod"; - - public static final String FUNC_MUL = "mul"; - - public static final String FUNC_SUB = "sub"; - - protected SafeMathMock(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SafeMathMock(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall add(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_ADD, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall average(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_AVERAGE, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall div(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_DIV, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall max(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_MAX, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall min(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_MIN, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall mod(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_MOD, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall mul(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_MUL, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall sub(BigInteger a, BigInteger b) { - final Function function = new Function(FUNC_SUB, - Arrays.asList(new Uint256(a), - new Uint256(b)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SafeMathMock.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SafeMathMock.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static SafeMathMock load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SafeMathMock(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SafeMathMock load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SafeMathMock(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Selector.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Selector.java deleted file mode 100644 index e8c5e2dbf8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Selector.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes4; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Selector extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060e58061001f6000396000f3fe60806040526004361060265760003560e01c806326121ff014602b578063b8c9d365146072575b600080fd5b348015603657600080fd5b50603d607a565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b607860ad565b005b60008060003073ffffffffffffffffffffffffffffffffffffffff1663b8c9d365915091508181905060e01b9250505090565b56fea26469706673582212206525fe0b8941ef2660100530ca8c50667556a972864649c9f49c6d1d26f6125064736f6c63430007010033"; - - public static final String FUNC_F = "f"; - - public static final String FUNC_H = "h"; - - protected Selector(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Selector(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f() { - final Function function = new Function(FUNC_F, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall h(BigInteger vonValue) { - final Function function = new Function( - FUNC_H, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Selector.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Selector.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Selector load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Selector(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Selector load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Selector(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SelfdestructFunctions.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SelfdestructFunctions.java deleted file mode 100644 index 69c8b8d1d4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SelfdestructFunctions.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SelfdestructFunctions extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b5033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101b5806100656000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80633ae2119b14610046578063a87d942c14610050578063d09de08a1461006e575b600080fd5b61004e610078565b005b61005861010b565b6040518082815260200191505060405180910390f35b610076610114565b005b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561010957600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b565b60008054905090565b6000600590503373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561017c5780600054016000819055505b5056fea26469706673582212205a265c574458abb312e303d6a9f99f8fa652c39da89157d8f921266b3da77f4a64736f6c63430007010033"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_INCREMENT = "increment"; - - public static final String FUNC_SELFKILL = "selfKill"; - - protected SelfdestructFunctions(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SelfdestructFunctions(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SelfdestructFunctions.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SelfdestructFunctions.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall increment() { - final Function function = new Function( - FUNC_INCREMENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall selfKill() { - final Function function = new Function( - FUNC_SELFKILL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static SelfdestructFunctions load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SelfdestructFunctions(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SelfdestructFunctions load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SelfdestructFunctions(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Sha3AndKeccake256.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Sha3AndKeccake256.java deleted file mode 100644 index 706cf9c150..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Sha3AndKeccake256.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Sha3AndKeccake256 extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610224806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063598a717b1461003b5780638f9e1a5d14610059575b600080fd5b610043610114565b6040518082815260200191505060405180910390f35b6101126004803603602081101561006f57600080fd5b810190808035906020019064010000000081111561008c57600080fd5b82018360208201111561009e57600080fd5b803590602001918460018302840111640100000000831117156100c057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050919291929050505061011d565b005b60008054905090565b80816040516020018083805190602001908083835b602083106101555780518252602082019150602081019050602083039250610132565b6001836020036101000a03801982511681845116808217855250505050505090500182805190602001908083835b602083106101a65780518252602082019150602081019050602083039250610183565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040528051906020012060001c6000819055505056fea264697066735822122064c324bcecdd89dbc255e308dad2669839f2eb907eecc59d122d06ca0a0d925b64736f6c63430007010033"; - - public static final String FUNC_GETKECCAK256VALUE = "getKeccak256Value"; - - public static final String FUNC_KECCAK = "keccak"; - - protected Sha3AndKeccake256(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Sha3AndKeccake256(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getKeccak256Value() { - final Function function = new Function(FUNC_GETKECCAK256VALUE, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall keccak(String sha256value) { - final Function function = new Function( - FUNC_KECCAK, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Utf8String(sha256value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Sha3AndKeccake256.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Sha3AndKeccake256.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Sha3AndKeccake256 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Sha3AndKeccake256(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Sha3AndKeccake256 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Sha3AndKeccake256(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ShadowingInheritedStateVariablesSuper.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ShadowingInheritedStateVariablesSuper.java deleted file mode 100644 index 9736dfbce4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ShadowingInheritedStateVariablesSuper.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ShadowingInheritedStateVariablesSuper extends Contract { - private static final String BINARY = "60806040526040518060600160405280602e81526020016103a8602e913960009080519060200190610032929190610045565b5034801561003f57600080fd5b506100e2565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061008657805160ff19168380011785556100b4565b828001600101855582156100b4579182015b828111156100b3578251825591602001919060010190610098565b5b5090506100c191906100c5565b5090565b5b808211156100de5760008160009055506001016100c6565b5090565b6102b7806100f16000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806306fdde031461003b57806317d7de7c146100be575b600080fd5b610043610141565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100c66101df565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101065780820151818401526020810190506100eb565b50505050905090810190601f1680156101335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156101d75780601f106101ac576101008083540402835291602001916101d7565b820191906000526020600020905b8154815290600101906020018083116101ba57829003601f168201915b505050505081565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102775780601f1061024c57610100808354040283529160200191610277565b820191906000526020600020905b81548152906001019060200180831161025a57829003601f168201915b505050505090509056fea26469706673582212202949bd49cd474b975fdb1cdda92d11efb408871e03a3e99f06c52a4d97ae4b6064736f6c63430007010033436f6e747261637420536861646f77696e67496e6865726974656453746174655661726961626c65735375706572"; - - public static final String FUNC_GETNAME = "getName"; - - public static final String FUNC_NAME = "name"; - - protected ShadowingInheritedStateVariablesSuper(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ShadowingInheritedStateVariablesSuper(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getName() { - final Function function = new Function(FUNC_GETNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShadowingInheritedStateVariablesSuper.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShadowingInheritedStateVariablesSuper.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ShadowingInheritedStateVariablesSuper load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ShadowingInheritedStateVariablesSuper(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ShadowingInheritedStateVariablesSuper load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ShadowingInheritedStateVariablesSuper(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ShadowingInheritedStateVariablesSuperChild.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ShadowingInheritedStateVariablesSuperChild.java deleted file mode 100644 index f386126a5b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ShadowingInheritedStateVariablesSuperChild.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ShadowingInheritedStateVariablesSuperChild extends Contract { - private static final String BINARY = "60806040526040518060600160405280602e815260200161040a602e913960009080519060200190610032929190610074565b5034801561003f57600080fd5b506040518060600160405280603381526020016103d7603391396000908051906020019061006e929190610074565b50610111565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100b557805160ff19168380011785556100e3565b828001600101855582156100e3579182015b828111156100e25782518255916020019190600101906100c7565b5b5090506100f091906100f4565b5090565b5b8082111561010d5760008160009055506001016100f5565b5090565b6102b7806101206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806306fdde031461003b57806317d7de7c146100be575b600080fd5b610043610141565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100c66101df565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101065780820151818401526020810190506100eb565b50505050905090810190601f1680156101335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156101d75780601f106101ac576101008083540402835291602001916101d7565b820191906000526020600020905b8154815290600101906020018083116101ba57829003601f168201915b505050505081565b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102775780601f1061024c57610100808354040283529160200191610277565b820191906000526020600020905b81548152906001019060200180831161025a57829003601f168201915b505050505090509056fea2646970667358221220e962a09604173fa832b3106266f417f64aa7b38f9e49ede9f327a2a0a59bd58164736f6c63430007010033436f6e747261637420536861646f77696e67496e6865726974656453746174655661726961626c657353757065724368696c64436f6e747261637420536861646f77696e67496e6865726974656453746174655661726961626c65735375706572"; - - public static final String FUNC_GETNAME = "getName"; - - public static final String FUNC_NAME = "name"; - - protected ShadowingInheritedStateVariablesSuperChild(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ShadowingInheritedStateVariablesSuperChild(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShadowingInheritedStateVariablesSuperChild.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShadowingInheritedStateVariablesSuperChild.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getName() { - final Function function = new Function(FUNC_GETNAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static ShadowingInheritedStateVariablesSuperChild load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ShadowingInheritedStateVariablesSuperChild(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ShadowingInheritedStateVariablesSuperChild load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ShadowingInheritedStateVariablesSuperChild(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ShortCircuitError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ShortCircuitError.java deleted file mode 100644 index f6166d6ab7..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/ShortCircuitError.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class ShortCircuitError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610134806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806304c09ce91460375780630c204dbc146055575b600080fd5b603d6073565b60405180821515815260200191505060405180910390f35b605b6096565b60405180821515815260200191505060405180910390f35b600080607c60b9565b90508060000160009054906101000a900460ff1691505090565b600080609f60dd565b90508060000160009054906101000a900460ff1691505090565b6000600190508060000160009054906101000a900460ff168060d9575060015b5090565b60008060000160009054906101000a900460ff16801560fa575060005b509056fea26469706673582212208a3cb688bb5d082e6cf940dec86986d51721d4f65b96db2a5655cbccf5add94a64736f6c63430007010033"; - - public static final String FUNC_GETF = "getF"; - - public static final String FUNC_GETG = "getG"; - - protected ShortCircuitError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ShortCircuitError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getF() { - final Function function = new Function(FUNC_GETF, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public RemoteCall getG() { - final Function function = new Function(FUNC_GETG, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShortCircuitError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(ShortCircuitError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static ShortCircuitError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ShortCircuitError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ShortCircuitError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ShortCircuitError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SimpleStorage.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SimpleStorage.java deleted file mode 100644 index a827b783aa..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SimpleStorage.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes32; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SimpleStorage extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060dc8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806309bd5a6014603757806319ff1d21146053575b600080fd5b603d605b565b6040518082815260200191505060405180910390f35b60596067565b005b600060c8430340905090565b600060c8430340604051602001808281526020019150506040516020818303038152906040528051906020012060001c9050600081141560a357fe5b5056fea26469706673582212209d20b98b7126d32a8b41f31fd8dab81cec6de9edc5ef17de3cd749a943c3259464736f6c63430007010033"; - - public static final String FUNC_HASH = "hash"; - - public static final String FUNC_HELLO = "hello"; - - protected SimpleStorage(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SimpleStorage(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall hash() { - final Function function = new Function(FUNC_HASH, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall hello() { - final Function function = new Function( - FUNC_HELLO, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SimpleStorage.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SimpleStorage.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static SimpleStorage load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SimpleStorage(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SimpleStorage load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SimpleStorage(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SpaceComplexity.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SpaceComplexity.java deleted file mode 100644 index 2626eb437d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SpaceComplexity.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SpaceComplexity extends Contract { - private static final String BINARY = "60806040526040518060400160405280600681526020017f71637869616f00000000000000000000000000000000000000000000000000008152506000908051906020019061004f929190610062565b5034801561005c57600080fd5b506100ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100a357805160ff19168380011785556100d1565b828001600101855582156100d1579182015b828111156100d05782518255916020019190600101906100b5565b5b5090506100de91906100e2565b5090565b5b808211156100fb5760008160009055506001016100e3565b5090565b6109578061010e6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806306fdde0314610046578063380bc4ad146100c957806365becf9b146100f7575b600080fd5b61004e610125565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561008e578082015181840152602081019050610073565b50505050905090810190601f1680156100bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100f5600480360360208110156100df57600080fd5b81019080803590602001909291905050506101c7565b005b6101236004803603602081101561010d57600080fd5b81019080803590602001909291905050506101ca565b005b606060008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156101bd5780601f10610192576101008083540402835291602001916101bd565b820191906000526020600020905b8154815290600101906020018083116101a057829003601f168201915b5050505050905090565b50565b60005b8181101561020f576000600283816101e157fe5b0614156101f7576101f26000610213565b610202565b610201600061059a565b5b80806001019150506101cd565b5050565b7f510000000000000000000000000000000000000000000000000000000000000081600081546001816001161561010002031660029004811061025257fe5b8154600116156102715790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f43000000000000000000000000000000000000000000000000000000000000008160018154600181600116156101000203166002900481106102e857fe5b8154600116156103075790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f580000000000000000000000000000000000000000000000000000000000000081600281546001816001161561010002031660029004811061037e57fe5b81546001161561039d5790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f490000000000000000000000000000000000000000000000000000000000000081600381546001816001161561010002031660029004811061041457fe5b8154600116156104335790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f41000000000000000000000000000000000000000000000000000000000000008160048154600181600116156101000203166002900481106104aa57fe5b8154600116156104c95790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f4f0000000000000000000000000000000000000000000000000000000000000081600581546001816001161561010002031660029004811061054057fe5b81546001161561055f5790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f01000000000000000000000000000000000000000000000000000000000000008404021790555050565b7f71000000000000000000000000000000000000000000000000000000000000008160008154600181600116156101000203166002900481106105d957fe5b8154600116156105f85790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f630000000000000000000000000000000000000000000000000000000000000081600181546001816001161561010002031660029004811061066f57fe5b81546001161561068e5790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f780000000000000000000000000000000000000000000000000000000000000081600281546001816001161561010002031660029004811061070557fe5b8154600116156107245790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f690000000000000000000000000000000000000000000000000000000000000081600381546001816001161561010002031660029004811061079b57fe5b8154600116156107ba5790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f610000000000000000000000000000000000000000000000000000000000000081600481546001816001161561010002031660029004811061083157fe5b8154600116156108505790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055507f6f000000000000000000000000000000000000000000000000000000000000008160058154600181600116156101000203166002900481106108c757fe5b8154600116156108e65790600052602060002090602091828204019190065b601f036101000a81548160ff021916907f0100000000000000000000000000000000000000000000000000000000000000840402179055505056fea264697066735822122088996743a61888b3709320cf454765ce5cf136c80b4866edd303308544c16b4564736f6c63430007010033"; - - public static final String FUNC_NAME = "name"; - - public static final String FUNC_TESTBIGOBJECTOFSTORAGE = "testBigObjectOfStorage"; - - public static final String FUNC_TESTSTORAGE = "testStorage"; - - protected SpaceComplexity(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SpaceComplexity(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall testBigObjectOfStorage(BigInteger n) { - final Function function = new Function( - FUNC_TESTBIGOBJECTOFSTORAGE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testStorage(BigInteger n) { - final Function function = new Function( - FUNC_TESTSTORAGE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SpaceComplexity.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SpaceComplexity.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static SpaceComplexity load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SpaceComplexity(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SpaceComplexity load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SpaceComplexity(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/StringmappingSupport.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/StringmappingSupport.java deleted file mode 100644 index 077e993252..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/StringmappingSupport.java +++ /dev/null @@ -1,92 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class StringmappingSupport extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610820806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80638f39654914610051578063d4d7306b14610112578063e4e50f7814610264578063e78855a814610343575b600080fd5b6100976004803603602081101561006757600080fd5b81019080803576ffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610477565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100d75780820151818401526020810190506100bc565b50505050905090810190601f1680156101045780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102626004803603604081101561012857600080fd5b810190808035906020019064010000000081111561014557600080fd5b82018360208201111561015757600080fd5b8035906020019184600183028401116401000000008311171561017957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803590602001906401000000008111156101dc57600080fd5b8201836020820111156101ee57600080fd5b8035906020019184600183028401116401000000008311171561021057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610560565b005b6103416004803603604081101561027a57600080fd5b81019080803576ffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803590602001906401000000008111156102bb57600080fd5b8201836020820111156102cd57600080fd5b803590602001918460018302840111640100000000831117156102ef57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506105e2565b005b6103fc6004803603602081101561035957600080fd5b810190808035906020019064010000000081111561037657600080fd5b82018360208201111561038857600080fd5b803590602001918460018302840111640100000000831117156103aa57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610642565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561043c578082015181840152602081019050610421565b50505050905090810190601f1680156104695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6060600160008376ffffffffffffffffffffffffffffffffffffffffffffff191676ffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105545780601f1061052957610100808354040283529160200191610554565b820191906000526020600020905b81548152906001019060200180831161053757829003601f168201915b50505050509050919050565b806000836040518082805190602001908083835b602083106105975780518252602082019150602081019050602083039250610574565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902090805190602001906105dd92919061074d565b505050565b80600160008476ffffffffffffffffffffffffffffffffffffffffffffff191676ffffffffffffffffffffffffffffffffffffffffffffff19168152602001908152602001600020908051906020019061063d92919061074d565b505050565b60606000826040518082805190602001908083835b6020831061067a5780518252602082019150602081019050602083039250610657565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107415780601f1061071657610100808354040283529160200191610741565b820191906000526020600020905b81548152906001019060200180831161072457829003601f168201915b50505050509050919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061078e57805160ff19168380011785556107bc565b828001600101855582156107bc579182015b828111156107bb5782518255916020019190600101906107a0565b5b5090506107c991906107cd565b5090565b5b808211156107e65760008160009055506001016107ce565b509056fea264697066735822122004368e0152ff2482c2a5dbf5e25aef66c656be5b1089876f49269559b997253064736f6c63430007010033"; - - public static final String FUNC_GETBYTE32MAPVALUE = "getByte32mapValue"; - - public static final String FUNC_GETSTRINGMAPVALUE = "getStringmapValue"; - - public static final String FUNC_SETBYTE32MAPVALUE = "setByte32mapValue"; - - public static final String FUNC_SETSTRINGMAPVALUE = "setStringmapValue"; - - protected StringmappingSupport(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected StringmappingSupport(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getByte32mapValue(byte[] _key) { - final Function function = new Function(FUNC_GETBYTE32MAPVALUE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Bytes9(_key)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getStringmapValue(String _key) { - final Function function = new Function(FUNC_GETSTRINGMAPVALUE, - Arrays.asList(new Utf8String(_key)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall setByte32mapValue(byte[] _key, String _value) { - final Function function = new Function( - FUNC_SETBYTE32MAPVALUE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Bytes9(_key), - new Utf8String(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setStringmapValue(String _key, String _value) { - final Function function = new Function( - FUNC_SETSTRINGMAPVALUE, - Arrays.asList(new Utf8String(_key), - new Utf8String(_value)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StringmappingSupport.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(StringmappingSupport.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static StringmappingSupport load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new StringmappingSupport(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static StringmappingSupport load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new StringmappingSupport(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SuicideAndSelfdestruct.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SuicideAndSelfdestruct.java deleted file mode 100644 index 9d87dd3db2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SuicideAndSelfdestruct.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SuicideAndSelfdestruct extends Contract { - private static final String BINARY = "60806040526000805534801561001457600080fd5b5033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101b5806100656000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806341c0e1b514610046578063a87d942c14610050578063d09de08a1461006e575b600080fd5b61004e610078565b005b61005861010b565b6040518082815260200191505060405180910390f35b610076610114565b005b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561010957600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b565b60008054905090565b6000600a90503373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561017c5780600054016000819055505b5056fea2646970667358221220add4a856904c91ad83f663fb7aaf0b72c74c60629cd9ec01dff117b35946d1ef64736f6c63430007010033"; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_INCREMENT = "increment"; - - public static final String FUNC_KILL = "kill"; - - protected SuicideAndSelfdestruct(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SuicideAndSelfdestruct(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SuicideAndSelfdestruct.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SuicideAndSelfdestruct.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall getCount() { - final Function function = new Function(FUNC_GETCOUNT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall increment() { - final Function function = new Function( - FUNC_INCREMENT, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall kill() { - final Function function = new Function( - FUNC_KILL, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static SuicideAndSelfdestruct load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SuicideAndSelfdestruct(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SuicideAndSelfdestruct load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SuicideAndSelfdestruct(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Sum.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Sum.java deleted file mode 100644 index 863a3bc1ca..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Sum.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Sum extends Contract { - private static final String BINARY = "61016c610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c806387fbcc771461003a575b600080fd5b6100f06004803603602081101561005057600080fd5b810190808035906020019064010000000081111561006d57600080fd5b82018360208201111561007f57600080fd5b803590602001918460208302840111640100000000831117156100a157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050610106565b6040518082815260200191505060405180910390f35b600080600090505b825181101561013057602081026020840101518201915080600101905061010e565b5091905056fea2646970667358221220c5b1ae3615d331a4514925a2dd84c2a674d827f22876456c622cecc373c06b4364736f6c63430007010033"; - - public static final String FUNC_SUMUSINGINLINEASSEMBLY = "sumUsingInlineAssembly"; - - protected Sum(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Sum(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sumUsingInlineAssembly(List _data) { - final Function function = new Function(FUNC_SUMUSINGINLINEASSEMBLY, - Arrays.asList(new com.alaya.abi.solidity.datatypes.DynamicArray( - Uint256.class, - com.alaya.abi.solidity.Utils.typeMap(_data, Uint256.class))), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Sum.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Sum.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Sum load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Sum(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Sum load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Sum(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SumAssembly.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SumAssembly.java deleted file mode 100644 index 7137e06839..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/SumAssembly.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class SumAssembly extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50600060019080600181540180825580915050600190039060005260206000200160009091909190915055600060029080600181540180825580915050600190039060005260206000200160009091909190915055600060039080600181540180825580915050600190039060005260206000200160009091909190915055600060049080600181540180825580915050600190039060005260206000200160009091909190915055600060059080600181540180825580915050600190039060005260206000200160009091909190915055610154806100f26000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063853255cc14610030575b600080fd5b61003861004e565b6040518082815260200191505060405180910390f35b600073__$1e48e6a55c474746132c632dcc39134521$__6387fbcc7760006040518263ffffffff1660e01b8152600401808060200182810382528381815481526020019150805480156100c057602002820191906000526020600020905b8154815260200190600101908083116100ac575b50509250505060206040518083038186803b1580156100de57600080fd5b505af41580156100f2573d6000803e3d6000fd5b505050506040513d602081101561010857600080fd5b810190808051906020019092919050505090509056fea26469706673582212200c091c5e2638a3c24321ef136f73f527c36659a2f899a04668cb6d8479a1932f64736f6c63430007010033\n" - + "\n" - + "// $1e48e6a55c474746132c632dcc39134521$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/07Assembly/SumAssembly.sol:Sum"; - - public static final String FUNC_SUM = "sum"; - - protected SumAssembly(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SumAssembly(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SumAssembly.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(SumAssembly.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public RemoteCall sum() { - final Function function = new Function(FUNC_SUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static SumAssembly load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SumAssembly(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SumAssembly load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SumAssembly(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Time.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Time.java deleted file mode 100644 index 95619949f2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Time.java +++ /dev/null @@ -1,108 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Time extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061018b806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806328ed13a5146100675780633c35a0c1146100855780637fefad021461008f578063931f8bcd146100ad5780639bd1479a146100cb578063cea52e71146100e9575b600080fd5b61006f610107565b6040518082815260200191505060405180910390f35b61008d610114565b005b610097610121565b6040518082815260200191505060405180910390f35b6100b5610130565b6040518082815260200191505060405180910390f35b6100d361013a565b6040518082815260200191505060405180910390f35b6100f1610147565b6040518082815260200191505060405180910390f35b6000603c60005401905090565b6305f5e100600081905550565b600062093a8060005401905090565b6000424203905090565b6000600160005401905090565b6000610e106000540190509056fea264697066735822122054631a4db972d76d10dbdc1435c822cc25b21e49bfcd5ca65fb48031b0fc621d64736f6c63430007010033"; - - public static final String FUNC_THOURS = "tHours"; - - public static final String FUNC_TMINUTES = "tMinutes"; - - public static final String FUNC_TSECONDS = "tSeconds"; - - public static final String FUNC_TWEEKS = "tWeeks"; - - public static final String FUNC_TESTTIME = "testTime"; - - public static final String FUNC_TESTIMEDIFF = "testimeDiff"; - - protected Time(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Time(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall tHours() { - final Function function = new Function(FUNC_THOURS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall tMinutes() { - final Function function = new Function(FUNC_TMINUTES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall tSeconds() { - final Function function = new Function(FUNC_TSECONDS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall tWeeks() { - final Function function = new Function(FUNC_TWEEKS, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall testTime() { - final Function function = new Function( - FUNC_TESTTIME, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall testimeDiff() { - final Function function = new Function(FUNC_TESTIMEDIFF, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TimeComplexity extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610101806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80637003f6c2146041578063d25f264014606c578063e65284be146097575b600080fd5b606a60048036036020811015605557600080fd5b810190808035906020019092919050505060c2565b005b609560048036036020811015608057600080fd5b810190808035906020019092919050505060c5565b005b60c06004803603602081101560ab57600080fd5b810190808035906020019092919050505060c8565b005b50565b50565b5056fea2646970667358221220a70a496294fe6b03c23d36e604446e0e95a7ee91e4c4492c8dd50aa77236af4664736f6c63430007010033"; - - public static final String FUNC_LOGNTEST = "logNTest"; - - public static final String FUNC_NSQUARETEST = "nSquareTest"; - - public static final String FUNC_NTEST = "nTest"; - - protected TimeComplexity(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TimeComplexity(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall logNTest(BigInteger n) { - final Function function = new Function( - FUNC_LOGNTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall nSquareTest(BigInteger n) { - final Function function = new Function( - FUNC_NSQUARETEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall nTest(BigInteger n) { - final Function function = new Function( - FUNC_NTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(n)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TimeComplexity.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TimeComplexity.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TimeComplexity load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TimeComplexity(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TimeComplexity load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TimeComplexity(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TryCatcher.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TryCatcher.java deleted file mode 100644 index dacd2e2586..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TryCatcher.java +++ /dev/null @@ -1,154 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.EventEncoder; -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Address; -import com.alaya.abi.solidity.datatypes.Event; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TryCatcher extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060405161001d9061007e565b604051809103906000f080158015610039573d6000803e3d6000fd5b506000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061008a565b608d8061024783390190565b6101ae806100996000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063614619541461003b578063d895540f14610045575b600080fd5b610043610079565b005b61004d610154565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166335b09a6e6040518163ffffffff1660e01b815260040160006040518083038186803b1580156100df57600080fd5b505afa9250505080156100f0575060015b610125577f135475a7dd80871d9a7daccb556f4d9d3bd9593a0987c88f27057bc25cf91c3960405160405180910390a1610152565b7ffd76336752e93f2cc77cf13a41be8b6c156731030376354d634d28a9a87b916260405160405180910390a15b565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff168156fea264697066735822122070f8a50558b8724fbf36a82ea72f22581b2b08541d228fc8471872aec693bb4164736f6c634300070100336080604052348015600f57600080fd5b50607080601d6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806335b09a6e14602d575b600080fd5b60336035565b005b600080fdfea26469706673582212209bfb70d28f589a77e0ce3e7b18ee2655b1be9bae726c7e5c516b59c12903552764736f6c63430007010033"; - - public static final String FUNC_EXECUTE = "execute"; - - public static final String FUNC_EXTERNALCONTRACT = "externalContract"; - - public static final Event CATCHEVENT_EVENT = new Event("CatchEvent", - Arrays.>asList()); - ; - - public static final Event SUCCESSEVENT_EVENT = new Event("SuccessEvent", - Arrays.>asList()); - ; - - protected TryCatcher(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TryCatcher(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TryCatcher.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TryCatcher.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public List getCatchEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(CATCHEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - CatchEventEventResponse typedResponse = new CatchEventEventResponse(); - typedResponse.log = eventValues.getLog(); - responses.add(typedResponse); - } - return responses; - } - - public Observable catchEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public CatchEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(CATCHEVENT_EVENT, log); - CatchEventEventResponse typedResponse = new CatchEventEventResponse(); - typedResponse.log = log; - return typedResponse; - } - }); - } - - public Observable catchEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(CATCHEVENT_EVENT)); - return catchEventEventObservable(filter); - } - - public List getSuccessEventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(SUCCESSEVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (EventValuesWithLog eventValues : valueList) { - SuccessEventEventResponse typedResponse = new SuccessEventEventResponse(); - typedResponse.log = eventValues.getLog(); - responses.add(typedResponse); - } - return responses; - } - - public Observable successEventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public SuccessEventEventResponse call(Log log) { - EventValuesWithLog eventValues = extractEventParametersWithLog(SUCCESSEVENT_EVENT, log); - SuccessEventEventResponse typedResponse = new SuccessEventEventResponse(); - typedResponse.log = log; - return typedResponse; - } - }); - } - - public Observable successEventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(EventEncoder.encode(SUCCESSEVENT_EVENT)); - return successEventEventObservable(filter); - } - - public RemoteCall execute() { - final Function function = new Function( - FUNC_EXECUTE, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall externalContract() { - final Function function = new Function(FUNC_EXTERNALCONTRACT, - Arrays.asList(), - Arrays.>asList(new TypeReference

() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static TryCatcher load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TryCatcher(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TryCatcher load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TryCatcher(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class CatchEventEventResponse { - public Log log; - } - - public static class SuccessEventEventResponse { - public Log log; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TypeConversionBytesToUintContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TypeConversionBytesToUintContract.java deleted file mode 100644 index 7e333bcca9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TypeConversionBytesToUintContract.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint16; -import com.alaya.abi.solidity.datatypes.generated.Uint64; -import com.alaya.abi.solidity.datatypes.generated.Uint8; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TypeConversionBytesToUintContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061019b806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80634e9189bc146100465780636ab28181146100685780638acc06e014610090575b600080fd5b61004e6100b1565b604051808261ffff16815260200191505060405180910390f35b6100706100ed565b604051808267ffffffffffffffff16815260200191505060405180910390f35b61009861012f565b604051808260ff16815260200191505060405180910390f35b6000807f6162636400000000000000000000000000000000000000000000000000000000905060008160e01c9050600081905080935050505090565b6000807f6162636400000000000000000000000000000000000000000000000000000000905060008160e01c905060008163ffffffff16905080935050505090565b6000807f6100000000000000000000000000000000000000000000000000000000000000905060008160f81c905080925050509056fea2646970667358221220397e3b09c09d9dc5a75dfa3db34e4f240829d5bfc2b0d5dc2948710b88db950f64736f6c63430007010033"; - - public static final String FUNC_BYTESTOBIGUINT = "bytesToBigUint"; - - public static final String FUNC_BYTESTOSAMEUINT = "bytesToSameUint"; - - public static final String FUNC_BYTESTOSMALLUINT = "bytesToSmallUint"; - - protected TypeConversionBytesToUintContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeConversionBytesToUintContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall bytesToBigUint() { - final Function function = new Function(FUNC_BYTESTOBIGUINT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall bytesToSameUint() { - final Function function = new Function(FUNC_BYTESTOSAMEUINT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall bytesToSmallUint() { - final Function function = new Function(FUNC_BYTESTOSMALLUINT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeConversionBytesToUintContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeConversionBytesToUintContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TypeConversionBytesToUintContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionBytesToUintContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeConversionBytesToUintContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionBytesToUintContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TypeConversionContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TypeConversionContract.java deleted file mode 100644 index 2b8ce5bd8b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TypeConversionContract.java +++ /dev/null @@ -1,141 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Bytes1; -import com.alaya.abi.solidity.datatypes.generated.Bytes2; -import com.alaya.abi.solidity.datatypes.generated.Bytes4; -import com.alaya.abi.solidity.datatypes.generated.Int16; -import com.alaya.abi.solidity.datatypes.generated.Int8; -import com.alaya.abi.solidity.datatypes.generated.Uint16; -import com.alaya.abi.solidity.datatypes.generated.Uint32; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Callable; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TypeConversionContract extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610305806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806399a909621161005b57806399a909621461010f578063a136096714610159578063ad42221214610196578063dcefd42f146101b75761007d565b8063744708f814610082578063853255cc146100cc5780639311ca69146100ed575b600080fd5b61008a6101f7565b604051808363ffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019250505060405180910390f35b6100d4610219565b604051808260010b815260200191505060405180910390f35b6100f5610233565b604051808261ffff16815260200191505060405180910390f35b61011761024a565b604051808361ffff168152602001827dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019250505060405180910390f35b61016161026a565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b61019e6102a3565b604051808260000b815260200191505060405180910390f35b6101bf6102b7565b60405180827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6000806000611234905060008161ffff169050808160e01b9350935050509091565b60008060029050600060649050808260000b019250505090565b600080600a905060008160ff169050809250505090565b6000806000631234567890506000819050808160f01b9350935050509091565b60008061123460f01b90506000817dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169050809250505090565b600080600190506000819050809250505090565b60008061123460f01b9050600081905080925050509056fea2646970667358221220fd50f9fdae5a0364dc69eec44a79fc55cabddfbad646a6b5555937d674d6d87464736f6c63430007010033"; - - public static final String FUNC_CONVERSION = "conversion"; - - public static final String FUNC_DISPLAYCONVERSION = "displayConversion"; - - public static final String FUNC_DISPLAYCONVERSION1 = "displayConversion1"; - - public static final String FUNC_DISPLAYCONVERSION2 = "displayConversion2"; - - public static final String FUNC_DISPLAYCONVERSION3 = "displayConversion3"; - - public static final String FUNC_DISPLAYCONVERSION4 = "displayConversion4"; - - public static final String FUNC_SUM = "sum"; - - protected TypeConversionContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeConversionContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall conversion() { - final Function function = new Function(FUNC_CONVERSION, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall displayConversion() { - final Function function = new Function(FUNC_DISPLAYCONVERSION, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall> displayConversion1() { - final Function function = new Function(FUNC_DISPLAYCONVERSION1, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (byte[]) results.get(1).getValue()); - } - }); - } - - public RemoteCall> displayConversion2() { - final Function function = new Function(FUNC_DISPLAYCONVERSION2, - Arrays.asList(), - Arrays.>asList(new TypeReference() {}, new TypeReference() {})); - return new RemoteCall>( - new Callable>() { - @Override - public Tuple2 call() throws Exception { - List results = executeCallMultipleValueReturn(function); - return new Tuple2( - (BigInteger) results.get(0).getValue(), - (byte[]) results.get(1).getValue()); - } - }); - } - - public RemoteCall displayConversion3() { - final Function function = new Function(FUNC_DISPLAYCONVERSION3, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall displayConversion4() { - final Function function = new Function(FUNC_DISPLAYCONVERSION4, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, byte[].class); - } - - public RemoteCall sum() { - final Function function = new Function(FUNC_SUM, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeConversionContract.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeConversionContract.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TypeConversionContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeConversionContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TypeName.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TypeName.java deleted file mode 100644 index a2c06bd7ab..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TypeName.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TypeName extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101ed806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806306fdde031461003b578063f5f5ba72146100be575b600080fd5b610043610141565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610083578082015181840152602081019050610068565b50505050905090810190601f1680156100b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100c661017a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101065780820151818401526020810190506100eb565b50505050905090810190601f1680156101335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6040518060400160405260088152806020017f547970654e616d6500000000000000000000000000000000000000000000000081525081565b60606040518060400160405260088152806020017f547970654e616d6500000000000000000000000000000000000000000000000081525090509056fea26469706673582212205bf7690a322b31b39d7bb2073ce6c2adf6edb3921e7fb4113ac65cb4535b83fb64736f6c63430007010033"; - - public static final String FUNC_GETCONTRACTNAME = "getContractName"; - - public static final String FUNC_NAME = "name"; - - protected TypeName(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeName(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getContractName() { - final Function function = new Function( - FUNC_GETCONTRACTNAME, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall name() { - final Function function = new Function(FUNC_NAME, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeName.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeName.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TypeName load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeName(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeName load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeName(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TypeNameFunction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TypeNameFunction.java deleted file mode 100644 index 23b68f7012..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/TypeNameFunction.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class TypeNameFunction extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5061011e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806326121ff014602d575b600080fd5b603360ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101560715780820151818401526020810190506058565b50505050905090810190601f168015609d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60606040518060400160405260108152806020017f547970654e616d6546756e6374696f6e0000000000000000000000000000000081525090509056fea26469706673582212200ee90e393ebd372a7a7dace9f27e8d49c9a6fc2cfd600f15324e5ca7414d84c864736f6c63430007010033"; - - public static final String FUNC_F = "f"; - - protected TypeNameFunction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeNameFunction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall f() { - final Function function = new Function(FUNC_F, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeNameFunction.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(TypeNameFunction.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static TypeNameFunction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeNameFunction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeNameFunction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeNameFunction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/UserMapping.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/UserMapping.java deleted file mode 100644 index 36347f2346..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/UserMapping.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class UserMapping extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506101b8806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806316fa21101461003b578063ff7ac36d14610073575b600080fd5b6100716004803603604081101561005157600080fd5b8101908080359060200190929190803590602001909291905050506100b5565b005b61009f6004803603602081101561008957600080fd5b8101908080359060200190929190505050610166565b6040518082815260200191505060405180910390f35b8160008083815260200190815260200160002081905550600073__$25b0e5bb661e2b8b71196729d57fac7fac$__6312c487069091836040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b15801561012657600080fd5b505af415801561013a573d6000803e3d6000fd5b505050506040513d602081101561015057600080fd5b8101908080519060200190929190505050505050565b600080600083815260200190815260200160002054905091905056fea26469706673582212208bc189c51a58bdac34a9b3307b5e301e638779ec3625b0f4b1afcf32f8b9ba1b64736f6c63430007010033\n" - + "\n" - + "// $25b0e5bb661e2b8b71196729d57fac7fac$ -> /home/platon/.jenkins/workspace/contracts_test_alaya/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserLib.sol:UserLib"; - - public static final String FUNC_GETOUTUSER = "getOutUser"; - - public static final String FUNC_SETOUTUSER = "setOutUser"; - - protected UserMapping(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected UserMapping(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getOutUser(BigInteger _id) { - final Function function = new Function(FUNC_GETOUTUSER, - Arrays.asList(new Uint256(_id)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall setOutUser(BigInteger _age, BigInteger _id) { - final Function function = new Function( - FUNC_SETOUTUSER, - Arrays.asList(new Uint256(_age), - new Uint256(_id)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(UserMapping.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(UserMapping.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static UserMapping load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new UserMapping(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static UserMapping load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new UserMapping(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Visibility.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Visibility.java deleted file mode 100644 index e753de1a8d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/Visibility.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class Visibility extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610105806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063b8b1feb4146037578063ca77156f146076575b600080fd5b606060048036036020811015604b57600080fd5b810190808035906020019092919050505060b5565b6040518082815260200191505060405180910390f35b609f60048036036020811015608a57600080fd5b810190808035906020019092919050505060c2565b6040518082815260200191505060405180910390f35b6000600382019050919050565b600060028201905091905056fea264697066735822122032cdfbe9fc6e87e686335266a312b4d9a31e5e50c7cd5d74bddb9fedc01a572064736f6c63430007010033"; - - public static final String FUNC_FE = "fe"; - - public static final String FUNC_FPUB = "fpub"; - - protected Visibility(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Visibility(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall fe(BigInteger a) { - final Function function = new Function(FUNC_FE, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public RemoteCall fpub(BigInteger a) { - final Function function = new Function(FUNC_FPUB, - Arrays.asList(new Uint256(a)), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Visibility.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(Visibility.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static Visibility load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Visibility(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Visibility load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Visibility(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/VisibilityCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/VisibilityCall.java deleted file mode 100644 index ab0fad30fc..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/VisibilityCall.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class VisibilityCall extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610303806100206000396000f3fe60806040526004361061001e5760003560e01c8063bef55ef314610023575b600080fd5b61002b610048565b604051808381526020018281526020019250505060405180910390f35b60008060006040516100599061019b565b604051809103906000f080158015610075573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff1663ca77156f60016040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156100ca57600080fd5b505afa1580156100de573d6000803e3d6000fd5b505050506040513d60208110156100f457600080fd5b810190808051906020019092919050505092508073ffffffffffffffffffffffffffffffffffffffff1663b8b1feb460016040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561015957600080fd5b505afa15801561016d573d6000803e3d6000fd5b505050506040513d602081101561018357600080fd5b81019080805190602001909291905050509150509091565b610125806101a98339019056fe608060405234801561001057600080fd5b50610105806100206000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063b8b1feb4146037578063ca77156f146076575b600080fd5b606060048036036020811015604b57600080fd5b810190808035906020019092919050505060b5565b6040518082815260200191505060405180910390f35b609f60048036036020811015608a57600080fd5b810190808035906020019092919050505060c2565b6040518082815260200191505060405180910390f35b6000600382019050919050565b600060028201905091905056fea264697066735822122032cdfbe9fc6e87e686335266a312b4d9a31e5e50c7cd5d74bddb9fedc01a572064736f6c63430007010033a2646970667358221220fe4998246dc4c63f2b8622b70b6fdc59c348d6b64572e1d241e1389e5e4f7daa64736f6c63430007010033"; - - public static final String FUNC_READDATA = "readData"; - - protected VisibilityCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected VisibilityCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall readData(BigInteger vonValue) { - final Function function = new Function( - FUNC_READDATA, - Arrays.asList(), - Collections.>emptyList()); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(VisibilityCall.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(VisibilityCall.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static VisibilityCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new VisibilityCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static VisibilityCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new VisibilityCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/WhileError.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/WhileError.java deleted file mode 100644 index 0c9e11031f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/WhileError.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Bool; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class WhileError extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b5060c88061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063ed6f916c14602d575b600080fd5b6033604b565b60405180821515815260200191505060405180910390f35b6000806054606e565b90508060000160009054906101000a900460ff1691505090565b60005b600090508060000160009054906101000a900460ff1615608f576071565b9056fea2646970667358221220e530068aff4b4b660feb6902abb516c668818c13e4c814266ec0a02a1044096c64736f6c63430007010033"; - - public static final String FUNC_GETWHILECONTROLRES = "getWhileControlRes"; - - protected WhileError(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected WhileError(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getWhileControlRes() { - final Function function = new Function(FUNC_GETWHILECONTROLRES, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WhileError.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WhileError.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static WhileError load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new WhileError(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static WhileError load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new WhileError(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/WithBackCallee.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/WithBackCallee.java deleted file mode 100644 index 76a4b98553..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/WithBackCallee.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class WithBackCallee extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b506103f9806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063688755701461003b578063ae49cd9c1461007d575b600080fd5b6100676004803603602081101561005157600080fd5b8101908080359060200190929190505050610248565b6040518082815260200191505060405180910390f35b6101cd6004803603604081101561009357600080fd5b81019080803590602001906401000000008111156100b057600080fd5b8201836020820111156100c257600080fd5b803590602001918460018302840111640100000000831117156100e457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019064010000000081111561014757600080fd5b82018360208201111561015957600080fd5b8035906020019184600183028401116401000000008311171561017b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610259565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561020d5780820151818401526020810190506101f2565b50505050905090810190601f16801561023a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b600080828301905080915050919050565b6060610265838361026d565b905092915050565b60608083905060608390506060815183510167ffffffffffffffff8111801561029557600080fd5b506040519080825280601f01601f1916602001820160405280156102c85781602001600182028036833780820191505090505b50905060608190506000805b8551811015610342578581815181106102e957fe5b602001015160f81c60f81b83838060010194508151811061030657fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080806001019150506102d4565b5060005b84518110156103b45784818151811061035b57fe5b602001015160f81c60f81b83838060010194508151811061037857fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050610346565b5082955050505050509291505056fea2646970667358221220ebf3b85d4c342ef66289a62cbc1c29983a8d9abc8170030d2b7ff2ecb51eb9ef64736f6c63430007010033"; - - public static final String FUNC_GETDOUBLE = "getDouble"; - - public static final String FUNC_GETNAME = "getName"; - - protected WithBackCallee(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected WithBackCallee(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getDouble(BigInteger a) { - final Function function = new Function( - FUNC_GETDOUBLE, - Arrays.asList(new com.alaya.abi.solidity.datatypes.generated.Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getName(String option, String name) { - final Function function = new Function( - FUNC_GETNAME, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Utf8String(option), - new com.alaya.abi.solidity.datatypes.Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WithBackCallee.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WithBackCallee.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static WithBackCallee load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new WithBackCallee(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static WithBackCallee load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new WithBackCallee(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/WithBackCaller.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/WithBackCaller.java deleted file mode 100644 index 674e82285c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/evm/v0_7_1/WithBackCaller.java +++ /dev/null @@ -1,116 +0,0 @@ -package network.platon.contracts.evm.v0_7_1; - -import com.alaya.abi.solidity.TypeReference; -import com.alaya.abi.solidity.datatypes.Function; -import com.alaya.abi.solidity.datatypes.Type; -import com.alaya.abi.solidity.datatypes.Utf8String; -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Contract; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Collections; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.SolidityFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with web3j version 0.13.2.1. - */ -public class WithBackCaller extends Contract { - private static final String BINARY = "608060405234801561001057600080fd5b50610d65806100206000396000f3fe608060405234801561001057600080fd5b50600436106100615760003560e01c80621e257c146100665780630687590a146100aa57806308c2938b14610185578063400f6a601461020857806356ea18ab14610256578063de583cfa1461033b575b600080fd5b6100a86004803603602081101561007c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610359565b005b610183600480360360408110156100c057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156100fd57600080fd5b82018360208201111561010f57600080fd5b8035906020019184600183028401116401000000008311171561013157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506104a8565b005b61018d610784565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101cd5780820151818401526020810190506101b2565b50505050905090810190601f1680156101fa5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102546004803603604081101561021e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610826565b005b6103396004803603606081101561026c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156102a957600080fd5b8201836020820111156102bb57600080fd5b803590602001918460018302840111640100000000831117156102dd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803590602001909291905050506109aa565b005b610343610c89565b6040518082815260200191505060405180910390f35b8073ffffffffffffffffffffffffffffffffffffffff166055603c60405160240180838152602001828152602001925050506040516020818303038152906040527f771602f7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b6020831061043b5780518252602082019150602081019050602083039250610418565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461049d576040519150601f19603f3d011682016040523d82523d6000602084013e6104a2565b606091505b50505050565b600060608373ffffffffffffffffffffffffffffffffffffffff1683604051602401808060200180602001838103835260058152602001807f68656c6c6f000000000000000000000000000000000000000000000000000000815250602001838103825284818151815260200191508051906020019080838360005b8381101561053f578082015181840152602081019050610524565b50505050905090810190601f16801561056c5780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040527fae49cd9c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b6020831061062257805182526020820191506020810190506020830392506105ff565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610684576040519150601f19603f3d011682016040523d82523d6000602084013e610689565b606091505b50915091508161069857600080fd5b8080602001905160208110156106ad57600080fd5b81019080805160405193929190846401000000008211156106cd57600080fd5b838201915060208201858111156106e357600080fd5b825186600182028301116401000000008211171561070057600080fd5b8083526020830192505050908051906020019080838360005b83811015610734578082015181840152602081019050610719565b50505050905090810190601f1680156107615780820380516001836020036101000a031916815260200191505b506040525050506001908051906020019061077d929190610c92565b5050505050565b606060018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561081c5780601f106107f15761010080835404028352916020019161081c565b820191906000526020600020905b8154815290600101906020018083116107ff57829003601f168201915b5050505050905090565b600060608373ffffffffffffffffffffffffffffffffffffffff1683604051602401808281526020019150506040516020818303038152906040527f68875570000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b6020831061090257805182526020820191506020810190506020830392506108df565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610964576040519150601f19603f3d011682016040523d82523d6000602084013e610969565b606091505b50915091508161097857600080fd5b80806020019051602081101561098d57600080fd5b810190808051906020019092919050505060008190555050505050565b600060608473ffffffffffffffffffffffffffffffffffffffff168385604051602401808060200180602001838103835260088152602001807f68656c6c6f676173000000000000000000000000000000000000000000000000815250602001838103825284818151815260200191508051906020019080838360005b83811015610a42578082015181840152602081019050610a27565b50505050905090810190601f168015610a6f5780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040527fae49cd9c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b60208310610b255780518252602082019150602081019050602083039250610b02565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038160008787f1925050503d8060008114610b88576040519150601f19603f3d011682016040523d82523d6000602084013e610b8d565b606091505b509150915081610b9c57600080fd5b808060200190516020811015610bb157600080fd5b8101908080516040519392919084640100000000821115610bd157600080fd5b83820191506020820185811115610be757600080fd5b8251866001820283011164010000000082111715610c0457600080fd5b8083526020830192505050908051906020019080838360005b83811015610c38578082015181840152602081019050610c1d565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b5060405250505060019080519060200190610c81929190610c92565b505050505050565b60008054905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610cd357805160ff1916838001178555610d01565b82800160010185558215610d01579182015b82811115610d00578251825591602001919060010190610ce5565b5b509050610d0e9190610d12565b5090565b5b80821115610d2b576000816000905550600101610d13565b509056fea2646970667358221220fe947f25319d96a51c3c2137fa0179861d192eee49daef3365ca5f5805a8d64d64736f6c63430007010033"; - - public static final String FUNC_CALLADDLTEST = "callAddlTest"; - - public static final String FUNC_CALLDOUBLELTEST = "callDoublelTest"; - - public static final String FUNC_CALLGETNAMETEST = "callgetNameTest"; - - public static final String FUNC_CALLGETNAMETESTWITHGAS = "callgetNameTestWithGas"; - - public static final String FUNC_GETSTRINGRESULT = "getStringResult"; - - public static final String FUNC_GETUINTRESULT = "getuintResult"; - - protected WithBackCaller(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected WithBackCaller(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callAddlTest(String other) { - final Function function = new Function( - FUNC_CALLADDLTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(other)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callDoublelTest(String other, BigInteger a) { - final Function function = new Function( - FUNC_CALLDOUBLELTEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(other), - new Uint256(a)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callgetNameTest(String other, String name) { - final Function function = new Function( - FUNC_CALLGETNAMETEST, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(other), - new Utf8String(name)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callgetNameTestWithGas(String other, String name, BigInteger gasValue) { - final Function function = new Function( - FUNC_CALLGETNAMETESTWITHGAS, - Arrays.asList(new com.alaya.abi.solidity.datatypes.Address(other), - new Utf8String(name), - new Uint256(gasValue)), - Collections.>emptyList()); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getStringResult() { - final Function function = new Function(FUNC_GETSTRINGRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, String.class); - } - - public RemoteCall getuintResult() { - final Function function = new Function(FUNC_GETUINTRESULT, - Arrays.asList(), - Arrays.>asList(new TypeReference() {})); - return executeRemoteCallSingleValueReturn(function, BigInteger.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WithBackCaller.class, web3j, credentials, contractGasProvider, BINARY, "", chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return deployRemoteCall(WithBackCaller.class, web3j, transactionManager, contractGasProvider, BINARY, "", chainId); - } - - public static WithBackCaller load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new WithBackCaller(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static WithBackCaller load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new WithBackCaller(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/AtomicSwap.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/AtomicSwap.java deleted file mode 100644 index 3785bd9e11..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/AtomicSwap.java +++ /dev/null @@ -1,351 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class AtomicSwap extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000017a1460027f7f0060017f0060017f017f60027f7f017f60037f7f7f017f60037f7f7f0060000060047f7f7f7f0060047f7f7f7f017f60027f7e017f60037f7e7e017f60017f017e60067f7f7f7e7e7e0060087f7f7f7e7e7e7e7e0060047f7f7e7e0060037e7e7f006000017f60017e017f60027e7e017f6000017e02d1031503656e760c706c61746f6e5f70616e6963000603656e760d706c61746f6e5f63616c6c6572000103656e760f706c61746f6e5f7472616e73666572000403656e7610706c61746f6e5f74696d657374616d70001303656e760e706c61746f6e5f62616c616e6365000303656e7611706c61746f6e5f63616c6c5f76616c7565000203656e760b706c61746f6e5f73686133000703656e760e706c61746f6e5f64657374726f79000203656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65001203656e760f706c61746f6e5f726c705f75313238000f03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001003656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f726576657274000603656e760c706c61746f6e5f6576656e740007037473060d0303000000040000020300090a010300090a0e030303040001010101050c0301000005000000080302070105080202010101010302040405010004020002000408010400020604050b0b0002000000020100000608010200020200000004030204010311030200000100060202070001000405017001050505030100020608017f0141f088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300150f5f5f66756e63735f6f6e5f65786974006a06696e766f6b65005c090a010041010b043032383c0aedb5017305001081010bd90601087f230041f0016b22082400200841980810172109200841e8006a41021018210b200841d8006a2009101941002109200841003602880120084200370380010240027f41002000280204220a200028020022006b220c450d001a20084180016a200c101a03402000200a470440200828028401220920002d00003a00002008200941016a36028401200041016a21000c010b0b20082802800121092008280284010b220020096b41204d04402008200036024c20082009360248200828028801210a20084100360288012008200a36025020084200370380010c010b200841003602d801200842003703d001200841d0016a4120101b200920082802840120096b20082802d001220a20082802d4012200200a6b10062008200036024c2008200a360248200820082802d8013602502009044020082009360284010b200a21090b200841406b4100360200200841386a4200370300200841306a420037030020084200370328200841286a2008280258220c200828025c101c20092000101c210d200b2008280228101d200b200841d8006a101e200b200841c8006a101e200b28020c200b41106a28020047044010000b200b280204210e200b280200210f200841106a101f210020084190016a200141106a2800003602002008419c016a200241086a290000370200200841a4016a200241106a280000360200200820063703c001200841c8016a2007370300200820043703b001200841b8016a20053703002008200141086a2900003703880120082001290000370380012008200229000037029401200820033703a801200841e8016a4100360200200841e0016a4200370300200841d8016a4200370300200842003703d001200841d0016a41001020220a20084180016a1021200a20084194016a22011021200a2003102220042005102320062007102341011020210a20082802d0012102200a41046a102420002002101d200041051025220020084180016a1026200020011026200020031027200420051028200620071028220028020c200041106a28020047044010000b200f200e200028020020002802041014200028020c220a04402000200a3602100b200d41046a1024200904402008200936024c0b200c04402008200c36025c0b200b28020c22000440200b20003602100b200841f0016a24000bec0101037f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b027f0240200220016b2202410b4f0440200241106a4170712204104b21032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b200320012002104c0b2103200220036a41003a000020000b1d002000104f200041146a41003602002000420037020c2000200110250ba40201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a2004101a0340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b200241003602082002420037030020024120101b2003200228021420036b200228020022042002280204220120046b10062000200136020420002004360200200020022802083602082003450d00200220033602140b200241206a24000b2001017f20002001104b2202360200200020023602042000200120026a3602080bdd0101047f024020002802042203200028020022026b22042001490440200028020820036b200120046b22024f04400340200341003a00002000200028020441016a22033602042002417f6a22020d000c030b000b20002001104a220104402001104b21050b200420056a220421030340200341003a0000200341016a21032002417f6a22020d000b200120056a210520042000280204200028020022046b22016b2102200141014e0440200220042001104c1a0b2000200536020820002003360204200020023602000f0b200420014d0d002000200120026a3602040b0b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002105420026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110510c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110500b0b1600200020012802002200200128020420006b102d1a0b19002000104f200041146a41003602002000420037020c20000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031051280200210120022003417f6a360200200710524180104f044020072000410c6a280200417c6a10530b200141384f047f2001105420016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110510c020b20000c010b0240200710520d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10550c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020104b2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1056220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10572102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021058200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a105922013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10572102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021058200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10550c010b20042001410175410120011b2003200510572102418020104b2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a105622013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200105721032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031058200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021058052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a105922013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210105721062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061058200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007105a200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000ba40102027f027e230041e0006b22022400200241286a200141106a2800002203360200200241206a200141086a290000220537030020012900002104200241086a2005370300200241106a200336020020022004370318200241386a2005370300200241406b2003360200200241d0006a2005370300200241d8006a200336020020022004370300200220043703302002200437034820002002102c1a200241e0006a24000b0a0020002001420010230b900101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003105420036a0520030b41016a21040b027f200041186a28020022030440200041086a280200200041146a280200200310510c010b20000b2203200328020020046a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000105a200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011053200441106a24000b9f0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374104b0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001104c1a0b20002002360214200020033602102000200536020c20000f0b200041001008200028020422016a10870141004100200120002802006a1009200010860120000ba80102027f027e230041e0006b22022400200241106a200141106a2800002203360200200241086a200141086a2900002204370300200220012900002205370300200241206a2004370300200241286a2003360200200241386a2004370300200241406b20033602002002200537031820022005370330200241d8006a2003360200200241d0006a2004370300200220053703482000200241c8006a4114102d1a200241e0006a24000b0a0020002001420010280b2c01017f200020022001100c200028020422036a10870120022001200320002802006a100d200010860120000bc50501127f23004190026b22042400200441206a41920810172105200441d8006a410110182106200441c8006a20051019200620042802482208200428024c102a101d2006200441c8006a101e200628020c200641106a28020047044010000b2006280204210b2006280200210c200441306a101f2105200441f0006a2000102b210d20044198016a220020033703002004418c016a2209200141106a28000036020020044184016a220a200141086a29000037020020042002370390012004200129000037027c200441c0016a4100360200200441b8016a220e4200370300200441b0016a220f4200370300200442003703a801200441a8016a4100102020042802702004280274101c2107200441d8016a221020092802002201360200200441d0016a2211200a2902002202370300200441186a2001360200200441106a20023703002004200429027c22033703c801200441e8016a22122002370300200441f0016a2213200136020020044180026a2214200237030020044188026a2215200136020020042003370308200420033703e001200420033703f8012007200441086a102c2004290390012000290300102341011020210120042802a8012107200141046a102420052007101d2005410310252205200d101e2015200928020022013602002014200a29020022023703002004200429027c22033703f80120112002370300201020013602002012200237030020132001360200200420033703c801200420033703e001200e2001360200200f2002370300200420033703a8012005200441a8016a4114102d200429039001200029030010282101200428027022050440200420053602740b200128020c200141106a28020047044010000b200c200b200128020020012802041014200128020c22050440200120053602100b200804402004200836024c0b200628020c22010440200620013602100b20044190026a24000b5301017f230041206b22022400200241186a4100360200200241106a4200370300200241086a420037030020024200370300200220002001101c210020022802002101200041046a1024200241206a240020010b3b01017f2000420037020020004100360208200128020420012802006b2202044020002002101a20012802002001280204200041046a10420b20000b6601037f410121030240034020024114460d01200120026a2104200241016a210220042d0000450d000b411521030b027f200041186a28020022020440200041086a280200200041146a280200200210510c010b20000b2202200228020020036a36020020000b2c01017f200020012002100a200028020422036a10870120012002200320002802006a100b200010860120000b800301087f23004190016b22022400200241086a41890810172103200241406b410110182104200241306a200310192004200228023022052002280234102a101d2004200241306a101e200428020c200441106a28020047044010000b2004280204210620042802002107200241186a101f2103200241d8006a2000102b2108200241e4006a2001102b210020024188016a410036020020024180016a4200370300200241f8006a420037030020024200370370200241f0006a410010202002280258200228025c101c2000280200200241e8006a280200101c41011020210120022802702109200141046a102420032009101d20034102102522032008101e20032000101e200228026422000440200220003602680b2002280258220004402002200036025c0b200328020c200341106a28020047044010000b20072006200328020020032802041014200328020c22000440200320003602100b20050440200220053602340b200428020c22030440200420033602100b20024190016a24000bca0201087f23004180016b22012400200141800810172102200141386a410110182103200141286a20021019200320012802282204200128022c102a101d2003200141286a101e200328020c200341106a28020047044010000b2003280204210520032802002106200141106a101f2102200141d0006a2000102b2100200141f8006a4100360200200141f0006a4200370300200141e8006a420037030020014200370360200141e0006a4100102020012802502001280254101c41011020210720012802602108200741046a102420022008101d20024101102522022000101e200128025022000440200120003602540b200228020c200241106a28020047044010000b20062005200228020020022802041014200228020c22000440200220003602100b200404402001200436022c0b200328020c22020440200320023602100b20014180016a24000b4501017f230041206b22012400200141086a1031200041306a200141186a280200360000200041286a200141106a29030037000020002001290308370020200141206a24000b210020004200370000200041106a4100360000200041086a4200370000200010010b810101027f230041306b22012400200041206a2102200141106a1031410021000240034020004114460d01200141106a20006a2d0000200020026a2d0000460440200041016a21000c010b0b10130b2001200141106a2002200141106a100410332001290300200141086a290300845045044010130b200210071a200141306a24000b4501027e034020020440200442088620034238888421042002417f6a210220013100002003420886842103200141016a21010c010520002003370300200020043703080b0b0ba60402057f027e230041a0016b22062400200041e8026a220820011035280270044010130b100320035a044010130b200641386a10362006290338220b20045a200641406b290300220c20055a2005200c511b45044010130b2008200110352207200b20047d370350200741d8006a200c20057d200b200454ad7d3703002008200110352001103720064188016a1031200820011035220741286a20064198016a280200360000200741206a20064190016a29030037000020072006290388013700182008200110352207413c6a200241106a280000360000200741346a200241086a2900003700002007200229000037002c200820011035200337034020082001103522022004370360200241e8006a20053703002008200110354101360270200641f8006a2001102b2102200641f0006a22092008200110352207413c6a280000360200200641e8006a220a200741346a2900003703002006200729002c370360200641c8006a1031200820011035290340210420082001103522072903502105200741d8006a29030021032008200110352201290360210b200141e8006a290300210c200641306a2009280200360200200641286a200a290300370300200641106a200641d0006a290300370300200641186a200641d8006a28020036020020062006290360370320200620062903483703082002200641206a200641086a200420052003200b200c1016200228020022010440200220013602040b200641a0016a24000b840101037f230041106b2202240020002002410c6a2001280200200141046a280200103d2204280200220345044041a001104b21032002200041046a360204200341106a2001102b1a200341206a418001103e103f1a200241086a41013a00002000200228020c20042003104020024100360200200210410b200241106a2400200341206a0b4102017f017e230041206b220124002001200141106a200141106a10051033200129030021022000200141086a29030037030820002002370300200141206a24000b920101047f2000200147044020012802042203200128020022026b22042000280208200028020022016b4d0440200041046a21052004200028020420016b22004b04402002200020026a22002001104d1a20002003200510420f0b2005200220032001104d3602000f0b2001044020004100360208200042003702000b200020002004104a101a20022003200041046a10420b0b970202047f037e230041d0006b22022400200041e8026a220420011035280270410147044010130b100320042001103529034056044010130b200241186a1036200241206a29030021062002290318200420011035220329035022077c220820075422052005ad2006200341d8006a29030022077c7c220620075420062007511b410146044010130b20042001103522032008370350200341d8006a2006370300200241406b2001102b2103200241286a103120042001103522012903502107200141d8006a2903002106200241106a200241386a280200360200200241086a200241306a2903003703002002200229032837030020032002200720061029200328020022010440200320013602040b200241d0006a24000b900201037f230041d0006b22032400200041e8026a220420011035280270410147044010130b10032004200110352903405a044010130b200420011035410c6a200210372004200110354102360270200341406b2001102b2205200341306a2002102b2202102e200228020022000440200220003602040b200528020022020440200520023602040b2004200110352102200320042001103522002903503703102003200041d8006a2903003703182002412c6a200341106a103a2004200110352202290360200241e8006a2903008450450440200341106a1031200320042001103522022903603703002003200241e8006a290300370308200341106a2003103a0b20042001103b200341d0006a24000ba00102037f027e230041106b22032400200341003602082003420037030020034120101b20032802002202417f6a2104200328020420026b2102200141086a290300210520012903002106034020020440200220046a20063c0000200542388620064208888421062002417f6a2102200542088821050c010b0b200020032802002202200328020420026b10021a20020440200320023602040b200341106a24000bb60701067f200141046a280200210520012802002106200041046a22072103200721020340200328020022010440200141046a20012001280210200141146a28020020062005104322041b21032002200120041b21020c010b0b024020022007460d00200620052002280210200241146a28020010430d00200220002802004604402000200210443602000b20002000280208417f6a36020820002802042104027f0240024020022802002205450440200221030c010b20022802042201450440200221030c020b20011045220328020022050d010b200328020422050d004100210541000c010b2005200328020836020841010b210702402003200328020822062802002201460440200620053602002003200446044041002101200521040c020b200628020421010c010b200620053602040b20032d000c210620022003470440200320022802082200360208200020022802082802002002474102746a20033602002002280200220020033602082003200036020020032002280204220036020420000440200020033602080b200320022d000c3a000c2003200420022004461b21040b200241106a21000240200641ff0171450d002004450d002007450440034020012d000c2102024020012001280208220328020047044002400240200241ff0171450440200141013a000c200341003a000c2003104620012004200420012802002202461b2104200228020421010b20012802002203044020032d000c450d010b20012802042202044020022d000c450d020b200141003a000c0240200420012802082201460440200421010c010b20012d000c0d040b200141013a000c0c060b20012802042202044020022d000c450d010b200341013a000c200141003a000c200110472001280208220128020421020b2001200128020822032d000c3a000c200341013a000c200241013a000c200310460c040b0240200241ff0171450440200141013a000c200341003a000c2003104720012004200420012802042202461b2104200228020021010b20012802002202044020022d000c450d010b024020012802042203044020032d000c450d010b200141003a000c20042001280208220147044020012d000c0d030b200141013a000c0c050b2002044020022d000c450d010b200341013a000c200141003a000c200110462001280208220128020021020b2001200128020822032d000c3a000c200341013a000c200241013a000c200310470c030b2001280208220220022802002001464102746a28020021010c000b000b200541013a000c0b200010480b0be00102047f037e230041206b22042400200041e8026a220220011035280270410147044010130b100320022001103529034054044010130b2002200110354103360270200441106a2001102b2203102f200328020022000440200320003602040b2002200110352100200220011035220341d8006a2903002106200041186a21002003290350200220011035220329036022077c220820075422052005ad2006200341e8006a29030022077c7c220620075420062007511b410146044010130b200420083703002004200637030820002004103a20022001103b200441206a24000b990101037f200041046a2106024020002802042200044002400340024002402002200320002802102204200041146a280200220510430440200028020022040d012001200036020020000f0b20042005200220031043450d03200041046a210520002802042204450d01200521000b20002106200421000c010b0b2001200036020020050f0b200120003602000c010b200120063602000b20060be10201027f02402001450d00200041003a0000200020016a2203417f6a41003a000020014103490d00200041003a0002200041003a00012003417d6a41003a00002003417e6a41003a000020014107490d00200041003a00032003417c6a41003a000020014109490d002000410020006b41037122026a220341003602002003200120026b417c7122026a2201417c6a410036020020024109490d002003410036020820034100360204200141786a4100360200200141746a410036020020024119490d002003410036021820034100360214200341003602102003410036020c200141706a41003602002001416c6a4100360200200141686a4100360200200141646a41003602002002200341047141187222026b2101200220036a2102034020014120490d0120024200370300200241186a4200370300200241106a4200370300200241086a4200370300200241206a2102200141606a21010c000b000b20000b52002000420037001820004200370208200042003702002000420037002c200041106a4200370200200041206a4200370000200041286a4100360000200041346a42003700002000413c6a410036000020000baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b20032001280200470440200110462001280208220128020821020b200141013a000c200241003a000c200210470c010b02402004450d0020042d000c0d002004410c6a21030c020b20032001280200460440200110472001280208220128020821020b200141013a000c200241003a000c200210460b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000b2c01017f200028020021012000410036020002402001450d00200041086a2d0000450d00200141106a10480b0b2800200120006b220141014e0440200228020020002001104c1a2002200228020020016a3602000b0b4a01037f0340024020022003460d004101210420002001460d0020002d0000220520022d00002206490d004100210420062005490d00200241016a2102200041016a21000c010b0b20040b3401017f02402000280204220104402001104521010c010b0340200028020822012802002000460d01200121000c000b000b20010b1401017f03402000220128020022000d000b20010b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b1c01017f200041106a1049200028020022010440200020013602040b0b2901017f200028020c22010440200041106a20013602000b200028020022010440200020013602040b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b0b002000410120001b105b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b1900200120006b22010440200220002001104e0b200120026a0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002104c1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b160020004100360208200042003702002000410010500b2f01017f200028020820014904402001105b20002802002000280204104c210220002001360208200020023602000b0b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a105622023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10572103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031058200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001104e0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274104b21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001104e0b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b9b0101047f230041106b220124002001200036020c2000047f41e008200041086a2202411076220041e0082802006a220336020041dc0841dc08280200220420026a41076a417871220236020002400240200341107420024d044041e008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104104c41086a0541000b2100200141106a240020000ba30702077f057e230041f0046b22002400108101100e2201105b2202100f200041e0016a200041286a20022001105d22014100105e02400240200041e0016a105f2207500d0041a208106020075104402001410110610c020b41a708106020075104402001410210610c020b41b00810602007510440200041f8006a22044200370300200041d4006a4200370200200041dc006a4100360200200042003703702000420037024c200041003602482000420037034020004200370360200041406b410c72210220011062410547044010000b200041e0016a20014101105e200041e0016a200041406b1063200041e0016a20014102105e200041e0016a20021064200041e0016a20014103105e2000200041e0016a105f2207370360200041e0016a20014104105e200041186a200041e0016a10652004200041206a290300220937030020002000290318220a370370200041e0016a10662104200041a0016a200041406b102b210120004198016a200241106a280000220336020020004190016a200241086a290000220837030020002002290000220b37038801200041b8016a22052008370300200041c0016a220620033602002000200b3703b001200041e0046a2001102b2102200041d8016a20062802002203360200200041d0016a20052903002208370300200041086a2008370300200041106a2003360200200020002903b00122083703c801200020083703002004200220002007200a20091034200228020022030440200220033602040b200128020022020440200120023602040b2004106720002802402201450d02200020013602440c020b41b908106020075104402001410310680c020b41bd0810602007510440200041d0006a4200370300200042003703482000420037034020011062410347044010000b200041013602c801200020013602e0012000200041c8016a3602e401200041e0016a200041406b1069200041e0016a200041cc006a22021069200041e0016a1066210420004188016a200041406b102b2101200041e0046a2002102b21022004200041c8016a2001102b2203200041b0016a2002102b22051039200528020022060440200520063602040b200328020022050440200320053602040b200228020022030440200220033602040b200128020022020440200120023602040b20041067200028024c22010440200020013602500b20002802402201450d02200020013602440c020b41c40810602007520d002001410410680c010b10000b106a200041f0046a24000b0c00200020012002411c106b0bcd0202067f017e230041106b220324002001280208220520024b0440200341086a200110850120012003280208200328020c107536020c20032001108501410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114106b1a200341106a24000f0b2003200110850141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b210520012004360214200120053602102003200641002005200410751084012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b220124002000106c024002402000106d450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000106e200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b3101017f23004180036b2202240020001062410147044010000b20021066220020011101002000106720024180036a24000b2501017f02402000280204450d0020002802002d000041c001490d002000106f21010b20010bb80101037f230041206b22022400024002402000280204044020002802002d000041c001490d010b20024100360208200242003703000c010b200241186a2000106e20022802182103200241106a2000106e200228021021042000107021002002410036020820024200370300200020046a20036b2200450d0020022000101a20004101480d002002200228020420032000104c20006a3602040b200120021071200228020022000440200220003602040b200241206a24000bcf0102037f027e230041406a220224002000106c200241386a2000106e200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10000b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a20022802382003104c1a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000b9e0102027f027e230041106b220224002001106c024002402001106d450d002001280204450d0020012802002d000041c001490d010b10000b200241086a2001106e200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000bfc0f01197f23004190036b220124002000420037000020004200370020200042aecfb0eaafca83d5f800370318200041106a4100360000200041086a4200370000200041286a4200370000200041306a410036000020014180026a101f20002903181027220328020c200341106a28020047044010000b200041206a21040240200328020022072003280204220810102209450d00200141003602f001200142003703e801200141e8016a2009101b2007200820012802e801220520012802ec01220620056b1011417f470440200141c8006a200541016a20062005417f736a105d20041064200921020b2005450d00200120053602ec010b200328020c22050440200320053602100b200245044020042000290300370300200441106a200041106a280200360200200441086a200041086a2903003703000b41002102200041406b418001103e103f2106200041c0016a220342a8ed959beacf9394937f370300200041d0016a103f210920014180026a101f20032903001027220328020c200341106a28020047044010000b0240200328020022072003280204220810102204450d00200141003602f001200142003703e801200141e8016a2004101b2007200820012802e801220520012802ec01220a20056b1011417f470440200141c8006a200541016a200a2005417f736a105d20091072200421020b2005450d00200120053602ec010b200328020c22050440200320053602100b20024504402009200610730b200041d4026a22094200370200200041ec026a220f4200370200200041e0026a2203428bbea2abfaa582faf200370300200020093602d002200041e8026a2205200f360200200141306a101f20032903001027220b28020c200b41106a28020047044010000b0240200b2802002202200b280204220410102210450440410021030c010b410021032001410036022820014200370320200141206a2010101b200220042001280220220c20012802242207200c6b1011417f47044002400240200141086a200c41016a2007200c417f736a105d2202280204450d0020022802002d000041c001490d00200141d8016a2002410110742103200141c8016a2002410010742111200041ec026a211220032802042102200141dc006a2107200141f0006a2113200141ac026a210820014198026a2104034020112802042002464100200328020822062011280208461b0d02200141b0016a20022006411c106b2102201341c000103e1a200141d8006a4100360200200141d0006a420037030020074200370200200741086a4200370200200741106a410036020020014200370348024020012802b401044020012802b0012d000041bf014b0d010b10000b2002106f410247044010000b2001410036028803200142003703800320014180026a20024100105e20014180026a20014180036a106320012802800321062001410036028003200128028803210d200128028403210a200142003702840320044200370300200441086a4200370300200441106a410036020020084200370200200841086a4200370200200841106a4100360200200142003703900220014200370388022001420037038002200141e8016a20024101105e200141e8016a20014180026a1072200128028402210e20012802800221142001420037038002200128028c02211520012802880221162001420037038802200128029402211720012802900221182001420037039002200141c8006a200441dc00104c1a2005200141e8016a2006200a103d221928020045044041a001104b22022006360210200241346a2017360200200241306a20183602002002412c6a2015360200200241286a2016360200200241246a200e360200200241206a2014360200200241186a200d360200200241146a200a3602002001201236028402200241386a200141c8006a41dc00104c1a200141013a008802200520012802e801201920021040200141003602800220014180026a10410b20032003280204220220032802086a410020021b220236020420032802002206044020032006360208200220061075210a2003027f2003280204220d4504404100210641000c010b4100210641002003280208220e200a490d001a200e200a200a417f461b2106200d0b2202ad2006ad42208684370204200341002003280200220a20066b22062006200a4b1b3602000c0105200341003602080c010b000b000b10000b201021030b200c450d002001200c3602240b200b28020c22020440200b20023602100b024020030d0020002802d0022103024020002802f002450d0020002802e80221022000200f3602e802200041003602f00220002802ec022104200041003602ec022004410036020820022802042204200220041b2104034020042202450d0120032009470440200241106a2207200341106a1037200241206a200341206a1073024020022802082204450440410021040c010b2002200428020022084604402004410036020020042802042208450d012008107621040c010b200441003602042008450d002008107621040b200520014180026a20071077210720052001280280022007200210402003104421030c010b0b0340200228020822030440200321020c010b0b20021078200921030b200041ec026a2107034020032009460d0141a001104b21022001200736028402200241106a2204200341106a10791a200141013a0088022005200141c8006a20041077210420052001280248200420021040200141003602800220014180026a10412003104421030c000b000b20014190036a240020000b9f0b02117f027e230041c0026b22022400200241f8016a101f2201200041e0026a2204290300107a101d200120042903001027220828020c200841106a28020047044010000b200828020421092008280200210a200241186a101f2106200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330027f200041f0026a2802004504402002410136023041010c010b200041ec026a2103200241306a410010202105200241e0006a210720002802e8022101037f2001200346047f2005410110201a200228023005200241d0006a200141106a1079210420054100102020022802502002280254101c2007107b410110201a200410482001104421010c010b0b0b2101200241306a41047210242006200241d0006a107c2207107d2006200728020420016a20072802006b101d200620002802f00210252103200041ec026a210520002802e80221010340200120054704402003410210252204200141106a101e2004200141206a107e2001104421010c010b0b0240200328020c200341106a280200460440200341046a2101200328020021040c010b200341046a2101100020032802002104200328020c2003280210460d0010000b200a2009200420012802001012200728020022010440200720013602040b200328020c22010440200320013602100b200828020c22010440200820013602100b200041e8026a107f200041d0026a107f200241306a101f2201200041c0016a2204290300107a101d200041d0016a2105200120042903001027220428020c200441106a28020047044010000b2004280204210720042802002108200241f8016a101f2101200241e8006a4100360200200241e0006a4200370300200241d8006a420037030020024200370350200241d0006a2005107b210320022802502106200341046a10242001200241d0006a107c2203107d2001200620032802046a20032802006b101d20012005107e0240200128020c200141106a280200460440200141046a2106200128020021090c010b200141046a2106100020012802002109200128020c2001280210460d0010000b20082007200920062802001012200328020022070440200320073602040b200128020c22030440200120033602100b200428020c22010440200420013602100b20051049200041406b1049200241306a101f22012000290318107a101d200120002903181027220428020c200441106a28020047044010000b2004280204210720042802002108200241f8016a101f2101200241e8006a4100360200200241e0006a22064200370300200241d8006a22094200370300200241a0026a220a200041306a2205280000220336020020024198026a220b200041286a220c290000221337030020002900202112200241086a2013370300200241106a2003360200200242003703502002201237039002200241b0026a220d2013370300200241b8026a220e2003360200200241206a220f2013370300200241286a2210200336020020022012370300200220123703a80220022012370318200241d0006a2002102c210320022802502111200341046a10242001200241e8016a107c2203107d2001201120032802046a20032802006b101d200a20052800002205360200200b200c290000221237030020022000290020221337039002200d2012370300200e2005360200200f201237030020102005360200200220133703a8022002201337031820062005360200200920123703002002201337035002402001200241d0006a4114102d220128020c200141106a280200460440200141046a2105200128020021060c010b200141046a2105100020012802002106200128020c2001280210460d0010000b20082007200620052802001012200328020022050440200320053602040b200128020c22030440200120033602100b200428020c22010440200420013602100b200241c0026a24000ba20101037f230041b0036b220224002002410036028803200242003703800320001062410247044010000b200220004101105e200220024180036a1063200210662204200241a0036a20024190036a20024180036a102b2200102b22032001110000200328020022010440200320013602040b200028020022010440200020013602040b200410672002280280032200044020022000360284030b200241b0036a24000b4301017f230041206b22022400200241086a20002802002000280204280200105e200241086a2001106320002802042200200028020041016a360200200241206a24000b880101037f41cc08410136020041d0082802002100034020000440034041d40841d4082802002201417f6a2202360200200141014845044041cc084100360200200020024102746a22004184016a280200200041046a28020011010041cc08410136020041d00828020021000c010b0b41d408412036020041d008200028020022003602000c010b0b0b750020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d00200010820120024f0d002003410471044010000c010b200042003702000b02402003411071450d00200010820120024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000106c200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110702204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b810101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000108501200128020c210003402000450d01200141002001280208220320032000107522046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bff0201037f200028020445044041000f0b2000106c41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3a002000280200044020004100360208200042003702000b200020012902003702002000200128020836020820014100360208200142003702000ba30202017f017e230041d0006b22022400200241386a20004100105e200241386a20011063200241386a20004101105e200241386a2001410c6a1063200241386a20004102105e200241386a200141186a1064200241386a20004103105e200241386a2001412c6a1064200241386a20004104105e2001200241386a105f370340200241386a20004105105e200241286a200241386a106520022903282103200141d8006a200241306a29030037030020012003370350200241386a20004106105e200241186a200241386a106520022903182103200141e8006a200241206a29030037030020012003370360200241386a20004107105e200241086a200241386a1065200120022903082203420188420020034201837d853e0270200241d0006a24000b24002000200110372000410c6a2001410c6a1037200041186a200141186a41dc00104c1a0be80101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110850120004100200428020c2201200428020822022001107522032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2801017f230041206b22022400200241086a200020014114106b1082012100200241206a240020000b1d01017f03402000220128020022000d00200128020422000d000b20010b7701027f0240200028020422030440200241046a28020021042002280200210203400240200220042003280210200341146a2802001043044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b1c00200004402000280200107820002802041078200041106a10480b0b350020002001102b1a200041106a200141106a102b1a2000411c6a2001411c6a102b1a200041286a200141286a41dc00104c1a20000b5101037f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001022210220012802002103200241046a1024200141206a240020030b920302067f027e23004190016b220224002000410010202001280200200141046a280200101c200128020c200141106a280200101c2103200241d8006a200141286a2800002200360200200241d0006a200141206a290000220937030020012900182108200241286a2000360200200241206a200937030020022008370348200241e8006a22042009370300200241f0006a2205200036020020024180016a2206200937030020024188016a220720003602002002200837031820022008370360200220083703782003200241186a102c2103200241406b2001413c6a2800002200360200200241386a200141346a2900002209370300200129002c2108200241106a2000360200200241086a2009370300200220083703302004200937030020052000360200200620093703002007200036020020022008370300200220083703602002200837037820032002102c200129034010222001290350200141d8006a29030010232001290360200141e8006a290300102322002001280270108001200041011020210120024190016a240020010b3000200041003602082000420037020020004101101a200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105020002802040520020b20002802006a20032001104c1a2000200028020420016a3602040bb206020d7f027e23004180026b220224002000410810252100200241b0016a4100360200200241a8016a4200370300200241a0016a4200370300200242003703980120024198016a2001280200200141046a280200101c200128020c200141106a280200101c210420024190016a200141286a2205280000220336020020024188016a200141206a220629000022103703002001290018210f200241306a2003360200200241286a20103703002002200f37038001200241d8016a22072010370300200241e0016a22082003360200200241f0016a22092010370300200241f8016a220a20033602002002200f3703202002200f3703d0012002200f3703e8012004200241206a102c2104200241f8006a2001413c6a220b2800002203360200200241f0006a200141346a220c2900002210370300200129002c210f200241186a2003360200200241106a20103703002002200f370368200720103703002008200336020020092010370300200a20033602002002200f3703082002200f3703d0012002200f3703e8012004200241086a102c200129034010222001290350200141d8006a220429030010232001290360200141e8006a220d2903001023220e20012802701080012000200228029801101d20002001101e20002001410c6a101e200241e0006a20052800002203360200200241d8006a2006290000220f3703002002200129001822103703502007200f37030020082003360200200241c0016a2205200f370300200241c8016a22062003360200200220103703d001200220103703b801200a20033602002009200f370300200220103703e8012000200241e8016a4114102d2103200241c8006a200b2800002200360200200241406b200c290000220f3703002002200129002c22103703382007200f370300200820003602002005200f37030020062000360200200220103703d001200220103703b801200a20003602002009200f370300200220103703e8012003200241e8016a4114102d200129034010272001290350200429030010282001290360200d29030010282001340270220f420186200f423f872210852010420186200f423f888420108510281a200e41046a102420024180026a24000b0900200028020410780b2701027e20002001ac22024201862002423f8722038520034201862002423f888420038510231a0b3501017f230041106b220041f0880436020c41d808200028020c41076a417871220036020041dc08200036020041e0083f003602000b2f01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000108301200010706a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2301017f20011070220220012802044b044010000b20002001200110830120021084010b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210086a108701200120002802006a22012002200110090c010b0b0b3601017f200028020820014904402001105b20002802002000280204104c210220002001360208200020023602000b200020013602040b0b5101004180080b4a526566756e6465640052656465656d656400416464656400496e6974696174656400696e697400646573747275637400696e697469617465006164640072656465656d00726566756e64"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SUB = "sub"; - - public static final String FUNC_REFUND = "refund"; - - public static final String FUNC_ADD = "add"; - - public static final String FUNC_DESTRUCT = "destruct"; - - public static final String FUNC_INITIATE = "initiate"; - - public static final String FUNC_REDEEM = "redeem"; - - public static final WasmEvent ADDED_EVENT = new WasmEvent("Added", Arrays.asList(), Arrays.asList(new WasmEventParameter(byte[].class) , new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent INITIATED_EVENT = new WasmEvent("Initiated", Arrays.asList(new WasmEventParameter(byte[].class, true)), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Uint64.class) , new WasmEventParameter(Uint128.class) , new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent REDEEMED_EVENT = new WasmEvent("Redeemed", Arrays.asList(), Arrays.asList(new WasmEventParameter(byte[].class) , new WasmEventParameter(byte[].class))); - ; - - public static final WasmEvent REFUNDED_EVENT = new WasmEvent("Refunded", Arrays.asList(), Arrays.asList(new WasmEventParameter(byte[].class))); - ; - - protected AtomicSwap(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AtomicSwap(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall sub(Uint128 a, Uint128 b) { - final WasmFunction function = new WasmFunction(FUNC_SUB, Arrays.asList(a,b), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall sub(Uint128 a, Uint128 b, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SUB, Arrays.asList(a,b), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall refund(byte[] _hashedSecret) { - final WasmFunction function = new WasmFunction(FUNC_REFUND, Arrays.asList(_hashedSecret, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall refund(byte[] _hashedSecret, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_REFUND, Arrays.asList(_hashedSecret, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall add(Uint128 a, Uint128 b) { - final WasmFunction function = new WasmFunction(FUNC_ADD, Arrays.asList(a,b), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add(Uint128 a, Uint128 b, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD, Arrays.asList(a,b), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public List getAddedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ADDED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - AddedEventResponse typedResponse = new AddedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (byte[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (WasmAddress) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint128) eventValues.getNonIndexedValues().get(2); - responses.add(typedResponse); - } - return responses; - } - - public Observable addedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public AddedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(ADDED_EVENT, log); - AddedEventResponse typedResponse = new AddedEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (byte[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (WasmAddress) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint128) eventValues.getNonIndexedValues().get(2); - return typedResponse; - } - }); - } - - public Observable addedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(ADDED_EVENT)); - return addedEventObservable(filter); - } - - public List getInitiatedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(INITIATED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - InitiatedEventResponse typedResponse = new InitiatedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (WasmAddress) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint64) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (Uint128) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (Uint128) eventValues.getNonIndexedValues().get(4); - responses.add(typedResponse); - } - return responses; - } - - public Observable initiatedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public InitiatedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(INITIATED_EVENT, log); - InitiatedEventResponse typedResponse = new InitiatedEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (WasmAddress) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint64) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (Uint128) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (Uint128) eventValues.getNonIndexedValues().get(4); - return typedResponse; - } - }); - } - - public Observable initiatedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(INITIATED_EVENT)); - return initiatedEventObservable(filter); - } - - public List getRedeemedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(REDEEMED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - RedeemedEventResponse typedResponse = new RedeemedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (byte[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (byte[]) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable redeemedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public RedeemedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(REDEEMED_EVENT, log); - RedeemedEventResponse typedResponse = new RedeemedEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (byte[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (byte[]) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable redeemedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(REDEEMED_EVENT)); - return redeemedEventObservable(filter); - } - - public List getRefundedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(REFUNDED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - RefundedEventResponse typedResponse = new RefundedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (byte[]) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable refundedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public RefundedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(REFUNDED_EVENT, log); - RefundedEventResponse typedResponse = new RefundedEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (byte[]) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable refundedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(REFUNDED_EVENT)); - return refundedEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(AtomicSwap.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(AtomicSwap.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(AtomicSwap.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(AtomicSwap.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall destruct() { - final WasmFunction function = new WasmFunction(FUNC_DESTRUCT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall destruct(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DESTRUCT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall initiate(byte[] _hashedSecret, WasmAddress _participant, Uint64 _refundTimestamp, Uint128 _payoff) { - final WasmFunction function = new WasmFunction(FUNC_INITIATE, Arrays.asList(_hashedSecret,_participant,_refundTimestamp,_payoff), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initiate(byte[] _hashedSecret, WasmAddress _participant, Uint64 _refundTimestamp, Uint128 _payoff, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_INITIATE, Arrays.asList(_hashedSecret,_participant,_refundTimestamp,_payoff), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall add(byte[] _hashedSecret) { - final WasmFunction function = new WasmFunction(FUNC_ADD, Arrays.asList(_hashedSecret, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add(byte[] _hashedSecret, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD, Arrays.asList(_hashedSecret, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall redeem(byte[] _hashedSecret, byte[] _secret) { - final WasmFunction function = new WasmFunction(FUNC_REDEEM, Arrays.asList(_hashedSecret,_secret), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall redeem(byte[] _hashedSecret, byte[] _secret, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_REDEEM, Arrays.asList(_hashedSecret,_secret), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static AtomicSwap load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AtomicSwap(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AtomicSwap load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AtomicSwap(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class AddedEventResponse { - public Log log; - - public byte[] arg1; - - public WasmAddress arg2; - - public Uint128 arg3; - } - - public static class InitiatedEventResponse { - public Log log; - - public String topic; - - public WasmAddress arg1; - - public WasmAddress arg2; - - public Uint64 arg3; - - public Uint128 arg4; - - public Uint128 arg5; - } - - public static class RedeemedEventResponse { - public Log log; - - public byte[] arg1; - - public byte[] arg2; - } - - public static class RefundedEventResponse { - public Log log; - - public byte[] arg1; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/AutoTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/AutoTypeContract.java deleted file mode 100644 index 15367c2d45..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/AutoTypeContract.java +++ /dev/null @@ -1,113 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class AutoTypeContract extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000015b1060017f017f60027f7f0060017f0060037f7f7f017f60037f7f7f0060000060027f7f017f60047f7f7f7f017f60047f7f7f7f0060027f7e0060037f7e7e0060037e7e7f006000017f60037f7e7e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000603656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0001034746050200000000000601040206070102000005000301060702010f0101010500020002000a02010d000903000304010201000301010101030102020001030702030404050000080405017001080805030100020608017f01419089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002a06696e766f6b65001e090d010041010b070e0f1011120e130ae257460400104f0b0300010b040041050b040041760b0400411e0b0400410a0b5701027f230041106b22012400200041186a2202200141800810141015200220014183081014101520022001418608101410152000411c6a280200210220002802182100200141106a2400200220006b410c6e41ff01710b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b101620000bb00101037f230041206b22032400024020002802042202200028020849044020022001290200370200200241086a200141086a2802003602002001101720002000280204410c6a3602040c010b200341086a2000200220002802006b410c6d220241016a10182002200041086a1019220228020822042001290200370200200441086a200141086a2802003602002001101720022002280208410c6a36020820002002101a2002101b0b200341206a24000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101d21032000200236020420002004410172360200200020033602080b200320012002104e200220036a41003a00000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0b4c01017f2000410036020c200041106a2003360200200104402001101c21040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000baa0101037f200028020421022000280200210303402002200346450440200128020441746a2204200241746a2202290200370200200441086a200241086a280200360200200210172001200128020441746a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0b09002000410c6c101d0b0b002000410120001b101f0bcc0402067f017e230041406a22032400104f10072200101f220110080240200341206a2001200010202202280208450440200241146a2802002100200228021021010c010b200341386a2002102120022003280238200328023c102236020c200341086a20021021410021002002027f410020032802082204450d001a4100200328020c2201200228020c2205490d001a200120052005417f461b210020040b2201360210200241146a2000360200200241003602080b200341086a200120004114102322001024024002402000280204450d00200010240240200028020022042c0000220141004e044020010d010c020b200141807f460d00200141ff0171220541b7014d0440200028020441014d04401000200028020021040b20042d00010d010c020b200541bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021040b200120046a2d0000450d010b2000280204450d0020042d000041c001490d010b10000b200341386a20001025200328023c220041094f044010000b200328023821010340200004402000417f6a210020013100002006420886842106200141016a21010c010b0b024002402006500d00418908102620065104402002410110270c020b418e08102620065104402002410210280c020b419b08102620065104402002410310280c020b41aa08102620065104402002410410280c020b41bc08102620065104402002410510290c020b41cd08102620065104402002410610270c020b41df0810262006520d002002410710290c010b10000b102a200341406b24000b9b0101047f230041106b220124002001200036020c2000047f418809200041086a220241107622004188092802006a2203360200418409418409280200220420026a41076a417871220236020002400240200341107420024d0440418809200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104104341086a0541000b2100200141106a240020000b0c00200020012002411c10230b2101017f2001102b220220012802044b044010000b2000200120011051200210520b2701017f230041206b22022400200241086a200020014114102310502100200241206a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105020024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105020024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001102b2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2f01017f230041306b220224002000102c200241086a102d2100200241086a20011102002000102e200241306a24000bd80102027f037e230041e0006b220224002000102c2002102d2103200220011100002100200241286a102f2101200241d8006a4100360200200241d0006a4200370300200241c8006a420037030020024200370340200241406b2000ac22044201862004423f87220585220620054201862004423f88842005852204103020022802402100200241406b41047210312001200010322001200620041033220128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b2003102e200241e0006a24000bbd0102027f017e230041e0006b220224002000102c2002102d2103200220011100002100200241286a102f2101200241d8006a4100360200200241d0006a4200370300200241c8006a420037030020024200370340200241406b2000ad22044200103020022802402100200241406b41047210312001200010322001200442001033220128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b2003102e200241e0006a24000b880101037f41f408410136020041f8082802002100034020000440034041fc0841fc082802002201417f6a2202360200200141014845044041f4084100360200200020024102746a22004184016a280200200041046a28020011020041f408410136020041f80828020021000c010b0b41fc08412036020041f808200028020022003602000c010b0b0bff0201037f200028020445044041000f0b2000102441012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0e0020001034410147044010000b0be908010d7f23004190016b22032400200042003702182000428debc585c3a7f9dbf7003703102000410036020820004200370200200041206a4100360200200341186a102f220820002903101035200828020c200841106a28020047044010000b200041186a21090240200828020022042008280204220510092206450d002006101d21020340200120026a41003a00002006200141016a2201470d000b2004200520022001100a417f460440410021010c010b024002402003200241016a200120026a2002417f736a10202201280204450d0020012802002d000041c001490d002001103421022000280220200028021822046b410c6d20024904402009200341406b2002200028021c20046b410c6d200041206a10192202101a2002101b0b200341e8006a2001410110362105200341d8006a200141001036210a20052802042101200341f8006a410172210c0340200a280204200146410020052802082202200a280208461b0d02200341406b20012002411c10232101200341306a1037210b024002402003280244044020032802402d000041c001490d010b200341f8006a10371a0c010b20034188016a200110252001102b2102024002400240024020032802880122010440200328028c01220420024f0d010b4100210120034180016a41003602002003420037037841002107410021040c010b20034180016a4100360200200342003703782001200420022002417f461b22076a21042007410a4b0d010b200320074101743a0078200c21020c010b200741106a417071220d101d21022003200736027c2003200d41017236027820032002360280010b03402001200446450440200220012d00003a0000200241016a2102200141016a21010c010b0b200241003a00000b024020032d0030410171450440200341003b01300c010b200328023841003a00002003410036023420032d0030410171450d00200341003602300b200341386a20034180016a28020036020020032003290378370330200341f8006a10172009200b101520052005280204220120052802086a410020011b22013602042005280200220204402005200236020820012002102221042005027f2005280204220b4504404100210241000c010b410021024100200528020822072004490d001a200720042004417f461b2102200b0b2201ad2002ad42208684370204200541002005280200220420026b2202200220044b1b3602000c0105200541003602080c010b000b000b10000b200621010b200828020c22020440200820023602100b024020010d002000411c6a210220002802042205200028020022046b410c6d22062000280220200028021822016b410c6d4d04402006200228020020016b410c6d220a4b044020042004200a410c6c6a2206200110381a20062005200210390c020b20092004200520011038103a0c010b200104402009103b20004100360220200042003702180b20002009200610182206101c22013602182000200136021c200020012006410c6c6a36022020042005200210390b20034190016a240020000bde08010b7f230041e0006b22022400200241186a102f2108200241c8006a22034100360200200241406b22044200370300200241386a2205420037030020024200370330200241306a20002903104200103020022802302101200241306a4104721031200820011032200820002903101035200828020c200841106a28020047044010000b2008280204210a2008280200210b2002102f210120034100360200200442003703002005420037030020024200370330027f20002802182000411c6a2802004604402002410136023041010c010b200241306a41001041200241d0006a4101722109200028021c210720002802182103037f2003200746047f200241306a41011041200228023005200241d0006a2003104241012105024002400240200228025420022d00502204410176200441017122061b220441014d0440200441016b0d032002280258200920061b2c0000417f4c0d010c030b200441374b0d010b200441016a21050c010b2004103d20046a41016a21050b027f200241306a20022802482204450d001a2002280238200420022802446a417f6a220441087641fcffff07716a280200200441ff07714102746a0b2204200428020020056a3602002003410c6a21030c010b0b0b2106200241306a41047210314101101d220341fe013a0000200128020c200141106a28020047044010000b200341016a21052001280204220441016a220720012802084b047f20012007103c20012802040520040b20012802006a2003410110431a2001200128020441016a3602042001200620036b20056a10320240200028021c20002802186b220304402003410c6d21032001280204210420012802102205200141146a280200220649044020052003ad2004ad422086843702002001200128021041086a3602100c020b027f41002005200128020c22076b410375220941016a2205200620076b2206410275220720072005491b41ffffffff01200641037541ffffffff00491b2207450d001a2007410374101d0b2105200520094103746a22062003ad2004ad4220868437020020062001280210200128020c22096b22036b2104200520074103746a2105200641086a2106200341014e044020042009200310431a0b20012005360214200120063602102001200436020c0c010b200141001001200128020422036a104441004100200320012802006a1002200110450b200241306a4101722109200028021c210720002802182103034020032007470440200241306a2003104220012002280238200920022d0030220441017122051b22062002280234200441017620051b22041003200128020422056a104420062004200520012802006a1004200110452003410c6a21030c010b0b0240200128020c2001280210460440200128020021030c010b100020012802002103200128020c2001280210460d0010000b200b200a20032001280204100b200128020c22030440200120033602100b200828020c22010440200820013602100b200041186a104620001046200241e0006a24000b2900200041003602082000420037020020004100103c200041146a41003602002000420037020c20000b890101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103d20036a0520030b41016a21040b200041186a28020022030440200041086a280200200041146a2802002003103e21000b2000200028020020046a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000103f200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011040200441106a24000b13002000280208200149044020002001103c0b0b2a01017f2000200220011005200028020422036a104420022001200320002802006a10062000104520000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001021200128020c210003402000450d01200141002001280208220320032000102222046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b0b0020002001420010331a0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001102120004100200428020c2201200428020822022001102222032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b190020004200370200200041086a41003602002000101720000bd00201077f200120006b2108410021010340200120026a2105200120084645044002402005200020016a2203460d00200341046a28020020032d00002204410176200441017122071b2104200341016a2106200341086a2802002109410a21032009200620071b210720052d0000410171220604402005280200417e71417f6a21030b200420034d0440027f20060440200541086a2802000c010b200541016a0b210320040440200320072004104d0b200320046a41003a000020052d00004101710440200541046a20043602000c020b200520044101743a00000c010b416f2106200341e6ffffff074d0440410b20034101742203200420042003491b220341106a4170712003410b491b21060b2006101d220320072004104e200541046a200436020020052006410172360200200541086a2003360200200320046a41003a00000b2001410c6a21010c010b0b20050b2d000340200020014645044020022802002000104220022002280200410c6a3602002000410c6a21000c010b0b0b0900200020013602040b0b0020002000280200103a0b2f01017f200028020820014904402001101f200028020020002802041043210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203103e280200210120022003417f6a360200200710474180104f044020072000410c6a280200417c6a10400b200141384f047f2001103d20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103e21000c010b0240200710470d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10480c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020101d2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1049220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a104a2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104b200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104c22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a104a2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104b200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10480c010b20042001410175410120011b20032005104a2102418020101d2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104922013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104a21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003104b200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002104b052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104c22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104a21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006104b200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007103f200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b4901017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a2802003602000f0b20002001280208200128020410160bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3601017f200028020820014904402001101f200028020020002802041043210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1044200120002802006a22012002200110020c010b0b0b0e00200028020004402000103b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104922023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a104a2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003104b200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001104d0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101d21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001104d0b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210431a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b10002002044020002001200210431a0b0b3501017f230041106b22004190890436020c418009200028020c41076a417871220036020041840920003602004188093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010512000102b6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b7701004180080b70763100763200763300696e6974006765745f616e746f5f696e74006765745f616e746f5f696e743332006765745f616e746f5f6d756c7469706c65006765745f616e746f5f75696e74385f74007365745f616e746f5f636172655f6f6e65006765745f616e746f5f6974657261746f72"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_ANTO_ITERATOR = "get_anto_iterator"; - - public static final String FUNC_GET_ANTO_INT = "get_anto_int"; - - public static final String FUNC_GET_ANTO_INT32 = "get_anto_int32"; - - public static final String FUNC_GET_ANTO_MULTIPLE = "get_anto_multiple"; - - public static final String FUNC_GET_ANTO_UINT8_T = "get_anto_uint8_t"; - - public static final String FUNC_SET_ANTO_CARE_ONE = "set_anto_care_one"; - - protected AutoTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected AutoTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall get_anto_iterator() { - final WasmFunction function = new WasmFunction(FUNC_GET_ANTO_ITERATOR, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(AutoTypeContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(AutoTypeContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(AutoTypeContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(AutoTypeContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall get_anto_int() { - final WasmFunction function = new WasmFunction(FUNC_GET_ANTO_INT, Arrays.asList(), Int32.class); - return executeRemoteCall(function, Int32.class); - } - - public RemoteCall get_anto_int32() { - final WasmFunction function = new WasmFunction(FUNC_GET_ANTO_INT32, Arrays.asList(), Int32.class); - return executeRemoteCall(function, Int32.class); - } - - public RemoteCall get_anto_multiple() { - final WasmFunction function = new WasmFunction(FUNC_GET_ANTO_MULTIPLE, Arrays.asList(), Int32.class); - return executeRemoteCall(function, Int32.class); - } - - public RemoteCall get_anto_uint8_t() { - final WasmFunction function = new WasmFunction(FUNC_GET_ANTO_UINT8_T, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall set_anto_care_one() { - final WasmFunction function = new WasmFunction(FUNC_SET_ANTO_CARE_ONE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_anto_care_one(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_ANTO_CARE_ONE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static AutoTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new AutoTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static AutoTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new AutoTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Ballet.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Ballet.java deleted file mode 100644 index 4360a4a9b8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Ballet.java +++ /dev/null @@ -1,109 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class Ballet extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f017f60017f0060027f7f017f60037f7f7f017f60037f7f7f0060000060047f7f7f7f017f60027f7e017f60047f7f7f7f0060017f017e60037e7e7f006000017f60017e017f60027e7e017f02be020e03656e760c706c61746f6e5f70616e6963000603656e760e706c61746f6e5f61646472657373000203656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000903656e760d706c61746f6e5f72657475726e0000037372060002030003000403040009020003040301000202070005020200010003060104050a0a0000000101080200080206070201000100010800000000000001020104010204020000010400000d01030308010003000203030401000407020405070002010102030405010506010103090002000405017001050505030100020608017f01418089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000e0f5f5f66756e63735f6f6e5f65786974003c06696e766f6b65002c090a010041010b040f12141b0ad29e0172040010780b6401017f230041206b22022400200241086a1010200041306a200241186a280200360000200041286a200241106a29030037000020002002290308370020200041f8006a200041206a1011210041b8082001ad37030020004201370300200241206a24000b210020004200370000200041106a4100360000200041086a4200370000200010010b8a0101037f230041106b2203240020002003410c6a2001101d2204280200220245044041d000101f22022001290000370010200241316a4200370000200241396a4200370000200241c1006a4100360000200241206a200141106a280000360000200241186a200141086a2900003700002000200328020c2004200210190b200341106a2400200241286a0b4801017f230041206b22022400200241086a10100240200241086a200041206a10130d00200041f8006a2200200110112d00080d0020002001101142013703000b200241206a24000b0b002000200110164101730ba70302067f017e230041206b22022400200241086a101041c008200041f8006a2204200241086a1011412810151a024041c8082d00000d00200241186a2105200241106a2107034020042001101121062005410036020020074200370300200242003703084113210303402003417f470440200241086a20036a41003a00002003417f6a21030c010b0b200641096a200241086a1013044020012004200110112203290009370000200141106a200341196a280000360000200141086a200341116a2900003700000c010b0b200241086a1010200241086a200110160d0041c80841013a000041c908200129000037000041d108200141086a29000037000041d908200141106a2800003600002004200110112d00082101200041a0016a22042002411c6a200041d0006a22061017220528020022034504404128101f21032002200041a4016a36020c200341106a20061018200241106a41013a00002004200228021c20052003101920024100360208200241086a101a0b41b808200341206a29030022083703002001410171450d0041b80841c00829030020087c3703000b200241206a24000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3901027f41012103034002402002411447047f200020026a2d0000200120026a2d0000460d0141000520030b0f0b200241016a21020c000b000baa0101047f200041046a21040240200028020422000440200241046a28020021052002280200210602400340024002402006200520002802102202200041146a280200220310230440200028020022020d012001200036020020000f0b20022003200620051023450d03200041046a210320002802042202450d01200321000b20002104200221000c010b0b2001200036020020030f0b200120003602000c010b200120043602000b20040b3c01017f2000420037020020004100360208200128020420012802006b2202044020002002410c6d102420012802002001280204200041046a10250b0b480020032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2000280204200310202000200028020841016a3602080b2c01017f200028020021012000410036020002402001450d00200041086a2d0000450d00200141106a10260b0b7a01017f230041206b22022400200241086a101041c008200041f8006a200241086a1011412810151a024041c8082d00000d00200041d4006a280200200041d0006a2802006b410c6d20014d0d0041c80841013a000041e0082001ad37030041b80841b80829030041c0082903007c3703000b200241206a24000b6f02027f037e200041d4006a280200200041d0006a2802006b410c6d210341b808290300210641002100037f2003200041ff01714d047f200141ff01710542002005200420065441002005501b22021b21052006200420021b21042000200120021b2101200041016a21000c010b0b0b890101027f200041046a2103024020002802042200044002400340024002402002200041106a2204101e0440200028020022040d012001200036020020000f0b20042002101e450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b3a01037f034020024114470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000b0b002000410120001b102d0bec0101037f200120002001463a000c03400240024020002001460d00200128020822022d000c0d002002200228020822032802002204460440024020032802042204450d0020042d000c0d002004410c6a21010c030b20012002280200470440200210212002280208220228020821030b200241013a000c200341003a000c200310220f0b02402004450d0020042d000c0d002004410c6a21010c020b20012002280200460440200210222002280208220228020821030b200241013a000c200341003a000c200310210b0f0b200241013a000c200320002003463a000c200141013a0000200321010c000b000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b4201017f0340024020022003460d004101210420002001460d0020002002102b0d004100210420022000102b0d002002410c6a21022000410c6a21000c010b0b20040b2301017f200020011029220236020020002002360204200020022001410c6c6a3602080b2d000340200020014645044020022802002000102a20022002280200410c6a3602002000410c6a21000c010b0b0b0e0020002802000440200010270b0b0b002000200028020010280b0900200020013602040b09002000410c6c101f0b9d0101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a2802003602000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101f21022000200136020420002004410172360200200020023602080b2002200320011077200120026a41003a00000bb20101067f02400240200128020420012d00002202410176200241017122031b2205200028020420002d00002202410176200241017122041b2206200520064922071b2202450d002000280208200041016a20041b21002001280208200141016a20031b210103402002450d0120002d0000220320012d00002204460440200141016a2101200041016a21002002417f6a21020c010b0b200320046b22020d010b417f200720062005491b21020b2002411f760bde0202057f017e23004190026b22012400107810082200102d22031009200141206a200141086a20032000102e22004100102f02400240200141206a10302205500d00418008103120055104402000410110320c020b418508103120055104402000410210330c020b419508103120055104402000410310330c020b419e08103120055104402000410410320c020b41a30810312005520d00200141003a00d0012000200141d0016a1034200141206a1035220320012d00d001101c2102200141d8016a1036210020014188026a410036020020014180026a4200370300200141f8016a4200370300200142003703f001200141f0016a2002ad22051037210220012802f0012104200241046a103820002004103920002005103a220028020c200041106a28020047044010000b20002802002000280204100d200028020c22020440200020023602100b2003103b0c010b10000b103c20014190026a24000b9b0101047f230041106b220124002001200036020c2000047f41fc08200041086a2202411076220041fc082802006a220336020041f80841f808280200220420026a41076a417871220236020002400240200341107420024d044041fc08200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101541086a0541000b2100200141106a240020000b0c00200020012002411c103d0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001107d20012003280208200328020c107b36020c20032001107d410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114103d1a200341106a24000f0b20032001107d41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004107b107c2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b220124002000103e024002402000103f450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001040200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b4001017f230041c0016b22022400200241003a00b8012000200241b8016a1034200241086a1035220020022d00b80120011100002000103b200241c0016a24000b940202037f027e230041b0026b22022400200241e0016a22034100360200200241d8016a22044200370300200242003703d00120001041410247044010000b200241206a20004101102f200241206a200241d0016a1042200241206a10352100200241f8016a20032802002203360200200241f0016a20042903002205370300200220022903d00122063703e80120024188026a200537030020024190026a20033602002002200637038002200241a8026a20024190026a2802002203360200200241a0026a20024188026a2903002205370300200241106a2005370300200241186a20033602002002200229038002220537039802200220053703082000200241086a20011100002000103b200241b0026a24000b3701017f230041206b2202240020001041410247044010000b200241086a20004101102f2001200241086a10433a0000200241206a24000bda15020f7f017e230041b0026b22012400200042003700002000420037002020004287edf583a4c0dace28370318200041106a4100360000200041086a4200370000200041286a4200370000200041306a4100360000200141306a103620002903181044220228020c200241106a28020047044010000b200041206a210302402002280200220720022802042208100a2206450d002001410036029002200142003703880220014188026a20061045200720082001280288022205200128028c02220920056b100b417f470440200141f0006a200541016a20092005417f736a102e20031042200621040b2005450d002001200536028c020b200228020c22050440200220053602100b200445044020032000290300370300200341106a200041106a280200360200200341086a200041086a2903003703000b2000420037023841002104200041d8006a4100360200200041d0006a22064200370200200041c8006a220242affaa1a8d79aee76370300200041406b4100360200200141306a103620022903001044220228020c200241106a28020047044010000b02402002280200220720022802042208100a2203450d002001410036029002200142003703880220014188026a20031045200720082001280288022205200128028c02220920056b100b417f470440200141f0006a200541016a20092005417f736a102e20061046200321040b2005450d002001200536028c020b200228020c22050440200220053602100b20044504402006200041386a10470b200041e4006a22094200370200200041fc006a220e4200370200200041f0006a220242d6b8dbb1d8cef088db0037030020002009360260200041f8006a2205200e360200200141b0016a103620022903001044220a28020c200a41106a28020047044010000b0240200a2802002204200a2802042203100a220f450440410021020c010b410021022001410036022820014200370320200141206a200f1045200420032001280220220b20012802242206200b6b100b417f47044002400240200141086a200b41016a2006200b417f736a102e2202280204450d0020022802002d000041c001490d00200141a0026a20021048200141c8016a20021049200141c8006a210d200141f9006a2102200141d1006a2104034020012802a40220012802cc0146044020012802a80220012802d001460d030b200141d8016a200141a0026a104a200141406b22034100360200200141386a2206420037030020044200370000200441086a4200370000200441106a410036000020014200370330200141d8016a104b410247044010000b200141a8016a22074100360200200141a0016a220842003703002001420037039801200141f0006a200141d8016a4100102f200141f0006a20014198016a104220062008290300370300200320072802003602002001200129039801370330200241106a4100360000200241086a420037000020024200370000200141f0016a200141d8016a4101102f20014188026a200141f0016a4100102f200120014188026a103037037020014188026a200141f0016a4101102f200120014188026a10434100473a007820014188026a200141f0016a4102102f20014188026a2002104220014188026a200141f0016a4103102f200120014188026a103037039001200d200141f0006a4128101521082005200141f0006a200141306a101d220c28020045044041d000101f22072001290330370310200741206a2003280200360200200741186a2006290300370300200741286a2008412810151a20052001280270200c200710190b200141a0026a104c0c000b000b10000b200f21020b200b450d002001200b3602240b200a28020c22040440200a20043602100b024020020d00200028026021020240200028028001450d00200028027821042000200e3602782000410036028001200028027c21032000410036027c2003410036020820042802042203200420031b2103034020032204450d012002200947044020042002290010370010200441206a200241206a280000360000200441186a200241186a290000370000200441286a200241286a412810151a024020042802082203450440410021030c010b2004200328020022064604402003410036020020032802042206450d012006104d21030c010b200341003602042006450d002006104d21030b2005200141306a200441106a104e2106200520012802302006200410192002104f21020c010b0b0340200428020822040d000b200921020b034020022009460d012005200141306a41d000101f220441106a200241106a41c0001015104e2103200520012802302003200410192002104f21020c000b000b2000418c016a22064200370200200041a4016a2209420037020020004198016a220242d6b8dbb1d8cef088db003703002000200636028801200041a0016a22052009360200200141d8016a103620022903001044220328020c200341106a28020047044010000b02402003280200220420032802042207100a220c450440410021020c010b41002102200141003602d001200142003703c801200141c8016a200c10452004200720012802c801220820012802cc01220d20086b100b417f47044002400240200141b0016a200841016a200d2008417f736a102e2202280204450d0020022802002d000041c001490d0020014198016a20021048200141a0026a20021049200041a4016a21070340200128029c0120012802a40246044020012802a00120012802a802460d030b20014188026a20014198016a104a200141003602f801200142003703f00120014188026a104b410247044010000b2001410036021020014200370308200141306a20014188026a4100102f200141306a200141086a1046200141f0016a1050200120012802083602f001200129020c211020014100360210200120103702f40120014200370308200141f0006a20014188026a4101102f200141306a200141f0006a4100102f2001200141306a103037038002200141086a10262005200141f0006a200141f0016a101722042802004504404128101f220220012802f001360210200241146a20012902f401370200200241206a20012903800237030020012007360234200141013a0038200141003602f001200142003702f4012005200128027020042002101920014100360230200141306a101a0b200141f0016a102620014198016a104c0c000b000b10000b200c21020b2008450d00200120083602cc010b200328020c22040440200320043602100b024020020d002000280288012102024020002802a801450d0020002802a0012104200020093602a001200041003602a80120002802a4012103200041003602a4012003410036020820042802042203200420031b2103034020032204450d0120022006470440200441106a2207200241106a1047200441206a2002290320370300024020042802082203450440410021030c010b2004200328020022084604402003410036020020032802042208450d012008104d21030c010b200341003602042008450d002008104d21030b2005200141306a200710512107200520012802302007200410192002104f21020c010b0b0340200428020822020440200221040c010b0b20041052200621020b200041a4016a2107034020022006460d014128101f210420012007360234200441106a2203200241106a1053200141013a00382005200141f0006a2003105121032005200128027020032004101920014100360230200141306a101a2002104f21020c000b000b200141b0026a240020000b29002000410036020820004200370200200041001054200041146a41003602002000420037020c20000b8b0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002105520026a0520020b41016a21030b027f200041186a28020022020440200041086a280200200041146a280200200210560c010b20000b2202200228020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001057200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011058200441106a24000b1300200028020820014904402000200110540b0b2a01017f2000420020011006200028020422026a107f42002001200220002802006a10072000107e20000bfd1702117f057e230041a0036b22012400200141d0026a1036220220004198016a220329030010591039200220032903001044220828020c200841106a28020047044010000b2008280204210a2008280200210b200141f8006a1036210520014198036a410036020020014190036a420037030020014188036a420037030020014200370380030240200041a8016a28020045044020014180036a105a1a0c010b200041a4016a210320014180036a4100105b210420002802a001210203402002200346044020044101105b1a05200141e8026a200241106a105320044100105b200141e8026a105c4100105b20012903f802105d4101105b4101105b1a200141e8026a10262002104f21020c010b0b0b200128028003210220014180036a410472220910382005200141e8026a105e2206105f2005200220062802046a20062802006b1039200520002802a80110602104200041a4016a210520002802a00121020340200220054704402004410210602203200241106a10612003410110602103200141003602980320014200370390032001420037038803200142003703800320014180036a2002290320105d1a200320012802800310392003200229032010441a200910382002104f21020c010b0b0240200428020c200441106a280200460440200441046a2102200428020021030c010b200441046a2102100020042802002103200428020c2004280210460d0010000b200b200a20032002280200100c200628020022020440200620023602040b200428020c22020440200420023602100b200828020c22020440200820023602100b200041a0016a106220004188016a1062200141f8006a10362202200041f0006a220329030010591039200220032903001044220c28020c200c41106a28020047044010000b200c280204210f200c2802002110200141e0006a1036210d20014198036a410036020020014190036a420037030020014188036a42003703002001420037038003024020004180016a28020045044020014180036a105a1a0c010b200041fc006a210b20014180036a4100105b21072000280278210203402002200b46044020074101105b1a05200141e0026a200241206a2903002212370300200141d8026a200241186a290300221337030020014198016a2203200241396a290000370300200141a0016a2204200241c1006a2800003602002001200229031022143703d0022001200229003137039001200229034821152002290328211620022d00302105200141f0026a22092013370300200141f8026a22082012370300200120143703e802200141b0016a22062003290300370300200141b8016a220a200428020036020020012001290390013703a80120074100105b2104200141d0016a20082802002203360200200141c8016a20092903002212370300200141d8006a2003360200200141d0006a2012370300200120012903e80222133703c001200141e0016a2012370300200141e8016a2003360200200141c0026a22092012370300200141c8026a2208200336020020012013370348200120133703d801200120133703b8022004200141c8006a10634100105b2016105d20054100471064210420014180026a200a2802002203360200200141f8016a20062903002212370300200141406b2003360200200141386a2012370300200120012903a80122133703f00120014190026a201237030020014198026a20033602002009201237030020082003360200200120133703302001201337038802200120133703b8022004200141306a10632015105d4101105b4101105b1a2002104f21020c010b0b0b200128028003210220014180036a41047222111038200d200141d0026a105e220e105f200d2002200e2802046a200e2802006b1039200d20002802800110602107200041fc006a210d2000280278210203402002200d4704402007410210602104200141b0026a200241206a2800002203360200200141a8026a200241186a29000022123703002001200229001022133703a002200141c0026a2012370300200141c8026a200336020020014198016a2012370300200141a0016a2003360200200120133703b802200120133703900120014190036a200336020020014188036a20123703002001201337038003200420014180036a41141065410410602104200141003602980320014200370390032001420037038803200142003703800320014180036a2002290328105d20022d003010642105200141d0016a200241c1006a22092800002203360200200141c8016a200241396a22082900002213370300200241316a22062900002112200141286a2003360200200141206a2013370300200120123703c001200141e0016a2013370300200141e8016a2003360200200141f0026a220a2013370300200141f8026a220b200336020020012012370318200120123703d801200120123703e8022005200141186a10632002290348105d1a200420012802800310392004200229032810442002310030103a2104200141b8016a20092800002203360200200141b0016a200829000022123703002001200629000022133703a801200141f8016a201237030020014180026a200336020020014190026a201237030020014198026a2003360200200120133703f0012001201337038802200b2003360200200a2012370300200120133703e8022004200141e8026a41141065200229034810441a201110382002104f21020c010b0b0240200728020c200741106a280200460440200741046a2102200728020021030c010b200741046a2102100020072802002103200728020c2007280210460d0010000b2010200f20032002280200100c200e28020022020440200e20023602040b200728020c22020440200720023602100b200c28020c22020440200c20023602100b200141e8026a10362202200041c8006a220329030010591039200041d0006a2105200220032903001044220328020c200341106a28020047044010000b2003280204210920032802002108200141d0026a1036210220014198036a410036020020014190036a420037030020014188036a4200370300200142003703800320014180036a2005105c1a200128028003210620014180036a4104721038200220014180036a105e2204105f2002200620042802046a20042802006b10392002200510610240200228020c200241106a280200460440200241046a2105200228020021060c010b200241046a2105100020022802002106200228020c2002280210460d0010000b2008200920062005280200100c200428020022050440200420053602040b200228020c22040440200220043602100b200328020c22020440200320023602100b200041d0006a1026200041386a1026200141e8026a10362202200029031810591039200220002903181044220328020c200341106a28020047044010000b2003280204210920032802002108200141d0026a1036210220014198036a410036020020014190036a2206420037030020014188036a220a4200370300200141b0026a200041306a22052800002204360200200141a8026a200041286a220b290000221337030020002900202112200141086a2013370300200141106a20043602002001420037038003200120123703a002200141c0026a2013370300200141c8026a200436020020014180016a201337030020014188016a200436020020012012370300200120123703b8022001201237037820014180036a2001106321042001280280032107200441046a10382002200141f8006a105e2204105f2002200720042802046a20042802006b1039200141e8016a20052800002205360200200141e0016a200b29000022123703002001200029002022133703d801200141f8016a201237030020014180026a200536020020014190026a201237030020014198026a2005360200200120133703f001200120133703880220062005360200200a201237030020012013370380030240200220014180036a41141065220228020c200241106a280200460440200241046a2105200228020021060c010b200241046a2105100020022802002106200228020c2002280210460d0010000b2008200920062005280200100c200428020022050440200420053602040b200228020c22040440200220043602100b200328020c22020440200320023602100b200141a0036a24000b880101037f41e808410136020041ec082802002100034020000440034041f00841f0082802002201417f6a2202360200200141014845044041e8084100360200200020024102746a22004184016a280200200041046a28020011020041e808410136020041ec0828020021000c010b0b41f008412036020041ec08200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000107920024f0d002003410471044010000c010b200042003702000b02402003411071450d002000107920024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000103e200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110712204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b2501017f02402000280204450d0020002802002d000041c001490d002000107621010b20010bcf0102037f027e230041406a220224002000103e200241386a20001040200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10000b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a2002280238200310151a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000b7d01037f230041106b220124002000103e024002402000103f450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001040200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b080020002001103a0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001101f21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110151a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0bd60501087f230041f0006b22022400024002402000280204450d0020002802002d000041c001490d002000104121032001280208200128020022046b410c6d20034904402001200241186a2003200128020420046b410c6d200141086a106d2203106e2003106f0b200241406b20001048200241306a20001049200141086a2107200241d8006a410172210803402002280244200228023446044020022802482002280238460d030b200241186a200241406b104a200241086a1070210602400240200228021c044020022802182d000041c001490d010b200241d8006a10701a0c010b200241d0006a200241186a1040200241186a1071210302400240024002402002280250220004402002280254220420034f0d010b41002100200241e0006a41003602002002420037035841002105410021040c010b200241e0006a4100360200200242003703582000200420032003417f461b22056a21042005410a4b0d010b200220054101743a0058200821030c010b200541106a4170712209101f21032002200536025c20022009410172360258200220033602600b03402000200446450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020022d0008410171450440200241003b01080c010b200228021041003a00002002410036020c20022d0008410171450d00200241003602080b200241106a2203200241e0006a28020036020020022002290358370308200241d8006a1072024020012802042200200128020849044020002002290308370200200041086a20032802003602002006107220012001280204410c6a3602040c010b200241d8006a2001200020012802006b410c6d220041016a107320002007106d2100200228026022042002290308370200200441086a20032802003602002006107220022002280260410c6a36026020012000106e2000106f0b200241406b104c0c000b000b10000b200241f0006a24000b8a0101037f2000200147044020012802042203200128020022016b410c6d22022000280208200028020022046b410c6d4d04402002200028020420046b410c6d22024b0440200120012002410c6c6a2202200410741a20022003200041046a10250f0b2000200120032004107410280f0b200010502000200020021073102420012003200041046a10250b0b0a0020002001410110750b0a0020002001410010750b160020002001280204200141086a280200411c103d1a0b210002402000280204044020002802002d000041bf014b0d010b10000b200010760bb50102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a2001410020042002107b107c20002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a101e044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b1c00200028020004402000102720004100360208200042003702000b0b7701027f0240200028020422030440200241046a28020021042002280200210203400240200220042003280210200341146a2802001023044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b1c00200004402000280200105220002802041052200041106a10260b0b1200200020011018200020012903103703100b2f01017f200028020820014904402001102d200028020020002802041015210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b5101037f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000105d210220012802002103200241046a1038200141206a240020030b3b01017f027f200041186a28020022010440200041086a280200200041146a280200200110560c010b20000b2201200128020041016a36020020000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031056280200210120022003417f6a360200200710664180104f044020072000410c6a280200417c6a10580b200141384f047f2001105520016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110560c020b20000c010b0240200710660d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10670c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020101f2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1068220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10692102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002106a200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a106b22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10692102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002106a200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10670c010b20042001410175410120011b2003200510692102418020101f2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a106822013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200106921032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003106a200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002106a052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a106b22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210106921062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006106a200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071057200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b900201097f230041106b22022400027f200128020020012802044604402000105a0c010b20004100105b2103200241017221052001280204210620012802002101200341186a2107200341146a2108200341086a2109037f2001200646047f20034101105b0520022001102a41012104024002400240200228020420022d000022004101762000410171220a1b220041014d0440200041016b0d0320022802082005200a1b2c0000417f4c0d010c030b200041374b0d010b200041016a21040c010b2000105520006a41016a21040b027f200320072802002200450d001a20092802002008280200200010560b2200200028020020046a3602002001410c6a21010c010b0b0b2101200241106a240020010b08002000200110370b3a01017f200041003602082000420037020020004101101f2201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105420002802040520020b20002802006a2003200110151a2000200028020420016a3602040b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374101f0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110151a0b20002002360214200020033602102000200536020c20000f0b200041001002200028020422016a107f41004100200120002802006a10032000107e20000b7e01057f230041106b220224002000200128020420012802006b410c6d10602103200241017221042001280204210520012802002101034020012005460440200241106a24000520022001102a20032002280208200420022d0000220041017122061b2002280204200041017620061b10651a2001410c6a21010c010b0b0b0900200028020410520b6601037f410121030240034020024114460d01200120026a2104200241016a210220042d0000450d000b411521030b027f200041186a28020022020440200041086a280200200041146a280200200210560c010b20000b2202200228020020036a36020020000b090020002001ad10370b2a01017f2000200120021004200028020422036a107f20012002200320002802006a10052000107e20000b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a106822023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10692103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003106a200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001106c0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101f21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001106c0b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210151a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b4c01017f2000410036020c200041106a2003360200200104402001102921040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000baa0101037f200028020421022000280200210303402002200346450440200128020441746a2204200241746a2202290200370200200441086a200241086a280200360200200210722001200128020441746a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0b190020004200370200200041086a41003602002000107220000bff0201037f200028020445044041000f0b2000103e41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0bd00201077f200120006b2108410021010340200120026a2105200120084645044002402005200020016a2203460d00200341046a28020020032d00002204410176200441017122071b2104200341016a2106200341086a2802002109410a21032009200620071b210720052d0000410171220604402005280200417e71417f6a21030b200420034d0440027f20060440200541086a2802000c010b200541016a0b210320040440200320072004106c0b200320046a41003a000020052d00004101710440200541046a20043602000c020b200520044101743a00000c010b416f2106200341e6ffffff074d0440410b20034101742203200420042003491b220341106a4170712003410b491b21060b2006101f2203200720041077200541046a200436020020052006410172360200200541086a2003360200200320046a41003a00000b2001410c6a21010c010b0b20050be50101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001107d20004100200428020c2201200428020822022001107b22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000107d200128020c210003402000450d01200141002001280208220320032000107b22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b10002002044020002001200210151a0b0b3501017f230041106b22004180890436020c41f408200028020c41076a417871220036020041f808200036020041fc083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000107a200010716a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2701017f230041206b22022400200241086a200020014114103d10792100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f20011071220220012802044b044010000b200020012001107a2002107c0b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a107f200120002802006a22012002200110030c010b0b0b3601017f200028020820014904402001102d200028020020002802041015210220002001360208200020023602000b200020013602040b0b3901004180080b32696e697400676976655269676874546f566f74650064656c656761746500766f74650077696e6e696e6750726f706f73616c"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_VOTE = "vote"; - - public static final String FUNC_GIVERIGHTTOVOTE = "giveRightToVote"; - - public static final String FUNC_DELEGATE = "delegate"; - - public static final String FUNC_WINNINGPROPOSAL = "winningProposal"; - - protected Ballet(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Ballet(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall vote(Uint8 toProposal) { - final WasmFunction function = new WasmFunction(FUNC_VOTE, Arrays.asList(toProposal), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall vote(Uint8 toProposal, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_VOTE, Arrays.asList(toProposal), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Uint8 _numProposals) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_numProposals)); - return deployRemoteCall(Ballet.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Uint8 _numProposals) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_numProposals)); - return deployRemoteCall(Ballet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint8 _numProposals) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_numProposals)); - return deployRemoteCall(Ballet.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint8 _numProposals) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_numProposals)); - return deployRemoteCall(Ballet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall giveRightToVote(WasmAddress toVoter) { - final WasmFunction function = new WasmFunction(FUNC_GIVERIGHTTOVOTE, Arrays.asList(toVoter), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall giveRightToVote(WasmAddress toVoter, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_GIVERIGHTTOVOTE, Arrays.asList(toVoter), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall delegate(WasmAddress to) { - final WasmFunction function = new WasmFunction(FUNC_DELEGATE, Arrays.asList(to), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall delegate(WasmAddress to, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DELEGATE, Arrays.asList(to), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall winningProposal(Uint8 _winningProposal) { - final WasmFunction function = new WasmFunction(FUNC_WINNINGPROPOSAL, Arrays.asList(_winningProposal), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public static Ballet load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Ballet(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Ballet load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Ballet(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Bank.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Bank.java deleted file mode 100644 index b9069eb8ee..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Bank.java +++ /dev/null @@ -1,560 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class Bank extends WasmContract { - private static String BINARY_0 = "0x0061736d010000000194011760027f7f0060017f0060017f017f60027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f0060047f7f7e7e0060057f7e7e7e7e0060057f7f7e7e7f0060047f7f7f7f017f60037f7e7e0060037f7e7e017f60027e7e017f60027f7e00600a7f7e7e7e7e7f7e7e7e7e0060097f7e7e7e7e7e7e7e7e0060037e7e7f006000017f60017e017f6000017e60017f017e02e5031603656e760c706c61746f6e5f70616e6963000603656e760d706c61746f6e5f63616c6c6572000103656e760e706c61746f6e5f61646472657373000103656e760f706c61746f6e5f7472616e73666572000503656e7610706c61746f6e5f74696d657374616d70001503656e760e706c61746f6e5f62616c616e6365000303656e7611706c61746f6e5f63616c6c5f76616c7565000203656e760b706c61746f6e5f73686133000703656e760d706c61746f6e5f726576657274000603656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238001203656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001303656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000b03656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e74000703656e760d706c61746f6e5f72657475726e0000039601940106100302000005000002030d0301030d0511090c0701000000010909000a0101030100010a010403010c0100080008000004040008080805070302010104020401000005020500020000050b010500040203000104020401060504010200160000020100020000000201000001020000060b02030300030303000000000000020e140f02000203050302050604020207000100090405017001141405030100020608017f0141f08c040b073a04066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300160f5f5f66756e63735f6f6e5f6578697400860106696e766f6b65006e0919010041010b132b34393b3e40454641484749434a4c333a4b420acb9e029401050010a1010b810602117f027e230041a0026b220a2400200a41206a41a60a1018210c200a4188016a1019210b200a41f8006a200c101a200a41e8006a2000101b200a41e0006a4100360200200a41d8006a4200370300200a41d0006a4200370300200a4200370348200a41c8006a200a280278220e200a28027c101c200a280268220f200a28026c101c2110200b200a280248101d200b200a41f8006a101e200b200a41e8006a101e200b28020c200b41106a28020047044010000b200b2802042111200b2802002112200a41306a101f2100200a41b0016a220c200541106a280000360200200a200541086a2900003703a801200a20052900003703a001200a41d0016a4100360200200a41c8016a22134200370300200a41c0016a22144200370300200a42003703b801200a41b8016a41001020200120021021200320041021210d200a41e8016a2215200c2802002205360200200a41e0016a2216200a2903a801221b370300200a41186a2005360200200a41106a201b370300200a200a2903a001221c3703d801200a41f8016a2217201b370300200a4180026a22182005360200200a4190026a2219201b370300200a4198026a221a2005360200200a201c370308200a201c3703f001200a201c37038802200d200a41086a1022200620071021200820091021410110202105200a2802b801210d200541046a10232000200d101d2000410510242001200210252003200410252100201a200c28020022053602002019200a2903a801221b370300200a200a2903a001221c370388022016201b370300201520053602002017201b37030020182005360200200a201c3703d801200a201c3703f001201320053602002014201b370300200a201c3703b8012000200a41b8016a41141026200620071025200820091025220528020c200541106a28020047044010000b20122011200528020020052802041014200528020c22000440200520003602100b201041046a1023200f0440200a200f36026c0b200e0440200a200e36027c0b200b28020c22050440200b20053602100b200a41a0026a24000b1f0020004200370200200041086a41003602002000200120011054105520000b1d0020001056200041146a41003602002000420037020c2000410210240b9e0201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a200410570340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b20024100360208200242003703002002412010582003200228021420036b20022802002204200228020420046b100720002002280200360200200020022902043702042003450d00200220033602140b200241206a24000b2c01017f41141050220220014114105921012000200241146a220236020820002002360204200020013602000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002105a20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001105b0c010b20000b2201200128020020036a36020020000b13002000280208200149044020002001105c0b0b1600200020012802002200200128020420006b10261a0b190020001056200041146a41003602002000420037020c20000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a22022802002203105b280200210120022003417f6a3602002007105d4180104f044020072000410c6a280200417c6a105e0b200141384f047f2001105a20016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a2802002001105b0c020b20000c010b02402007105d0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a105f0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010502105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1060220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10612102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021062200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a106322013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10612102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021062200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a105f0c010b20042001410175410120011b200320051061210241802010502106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a106022013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200106121032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031062200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021062052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a106322013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210106121062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061062200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071064200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b900101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003105a20036a0520030b41016a21040b027f200041186a28020022030440200041086a280200200041146a2802002003105b0c010b20000b2203200328020020046a36020020000b6601037f410121030240034020024114460d01200120026a2104200241016a210220042d0000450d000b411521030b027f200041186a28020022020440200041086a280200200041146a2802002002105b0c010b20000b2202200228020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001064200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001105e200441106a24000b9f0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410500b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110591a0b20002002360214200020033602102000200536020c20000f0b200041001009200028020422016a10a80141004100200120002802006a100a200010a70120000b2c01017f200020022001100d200028020422036a10a80120022001200320002802006a100e200010a70120000b2c01017f200020012002100b200028020422036a10a80120012002200320002802006a100c200010a70120000bb40301097f230041a0016b220924002009419a0a1018210b200941e8006a1019210a200941d8006a200b101a200941c8006a2000101b200941406b4100360200200941386a4200370300200941306a420037030020094200370328200941286a2009280258220b200928025c101c2009280248220d200928024c101c210e200a2009280228101d200a200941d8006a101e200a200941c8006a101e200a28020c200a41106a28020047044010000b200a280204210c200a280200210f200941106a101f210020094198016a410036020020094190016a420037030020094188016a4200370300200942003703800120094180016a410010202001200210212003200410212005200610212007200810214101102021102009280280012111201041046a102320002011101d200041041024200120021025200320041025200520061025200720081025220028020c200041106a28020047044010000b200f200c200028020020002802041014200028020c220c04402000200c3602100b200e41046a1023200d04402009200d36024c0b200b04402009200b36025c0b200a28020c22000440200a20003602100b200941a0016a24000b9c0301097f230041a0016b220524002005418b0a10182107200541e8006a10192106200541d8006a2007101a200541c8006a2000101b200541406b4100360200200541386a4200370300200541306a420037030020054200370328200541286a20052802582207200528025c101c20052802482209200528024c101c210a20062005280228101d2006200541d8006a101e2006200541c8006a101e200628020c200641106a28020047044010000b200628020421082006280200210b200541106a101f210020054198016a410036020020054190016a420037030020054188016a4200370300200542003703800120054180016a4100102020012002102120032004102141011020210c200528028001210d200c41046a10232000200d101d200041021024200120021025200320041025220028020c200041106a28020047044010000b200b2008200028020020002802041014200028020c22080440200020083602100b200a41046a1023200904402005200936024c0b200704402005200736025c0b200628020c22000440200620003602100b200541a0016a24000b900301097f230041a0016b22032400200341800a10182105200341e8006a10192104200341d8006a2005101a200341c8006a2000101b200341406b4100360200200341386a4200370300200341306a420037030020034200370328200341286a20032802582205200328025c101c20032802482207200328024c101c210820042003280228101d2004200341d8006a101e2004200341c8006a101e200428020c200441106a28020047044010000b2004280204210620042802002109200341106a101f210020034198016a410036020020034190016a420037030020034188016a4200370300200342003703800120034180016a4100102020012002102141011020210a200328028001210b200a41046a10232000200b101d200041011024200120021025220028020c200041106a28020047044010000b20092006200028020020002802041014200028020c22060440200020063602100b200841046a1023200704402003200736024c0b200504402003200536025c0b200428020c22000440200420003602100b200341a0016a24000be005020f7f047e230041a0026b22042400200441f8006a10192105200441e8006a2000101a200441d8006a2001101b200441d0006a4100360200200441c8006a4200370300200441406b420037030020044200370338200441386a20042802682207200428026c101c20042802582208200428025c101c210920052004280238101d2005200441e8006a101e2005200441d8006a101e200528020c200541106a28020047044010000b2005280204210a2005280200210b200441206a101f2101200441a0016a2200200241106a2800003602002004200241086a290000370398012004200229000037039001200341086a290300211520032903002116200441d0016a4100360200200441c8016a22034200370300200441c0016a220c4200370300200442003703b801200441b8016a410010202106200441e8016a220d20002802002202360200200441e0016a220e2004290398012213370300200441186a2002360200200441106a2013370300200420042903900122143703d801200441f8016a220f201337030020044180026a2210200236020020044190026a2211201337030020044198026a2212200236020020042014370308200420143703f00120042014370388022006200441086a102220162015102141011020210220042802b8012106200241046a102320012006101d2001410210242101201220002802002202360200201120042903980122133703002004200429039001221437038802200e2013370300200d2002360200200f201337030020102002360200200420143703d801200420143703f00120032002360200200c2013370300200420143703b8012001200441b8016a41141026201620151025220228020c200241106a28020047044010000b200b200a200228020020022802041014200228020c22030440200220033602100b200941046a1023200804402004200836025c0b200704402004200736026c0b200528020c22020440200520023602100b200441a0026a24000bd30201017f230041306b22012400200041d0006a418908102c200041f8006a419508102c200041b8046a4202370300200041b0046a428080a08cebe2ebf1b57f37030020004188046a420037030020004180046a428080a0a89c94b6e679370300200041d8036a4200370300200041d0036a4280c8afa025370300200041a8036a4200370300200041a0036a4280d0dbc3f402370300200041f8026a4200370300200041f0026a4200370300200041c0026a41193a0000200041a8026a41013a000020004190026a41193a0000200041f8016a41083a0000200041e0016a41143a0000200041c8016a41013a0000200041b0016a410f3a000020004198016a41123a0000200141186a419908102d20012d002c0440200041c0066a2001290318370000200041d0066a200141286a280200360000200041c8066a200141206a2903003700000b200141c408102d200141306a24000b0d00200020012001105410a2010bb014010e7f230041b0016b22022400200241186a41ef081018210e200241086a200110182209280208200941016a220c20022d0008220141017122031b21062009280204200141017620031b21084100210141012104024003402004410171410020012008491b0440200120066a2d00002203415f6a41ff017141de004921042005200341bf7f6a41ff0171411a4972210520072003419f7f6a41ff0171411a49722107200141016a21010c01050240200420052007714101737121052008450d002008210103402001450d01200120066a21042001417f6a220321012004417f6a2d00004131470d000b0c030b0b0b417f21030b024002402005410171450d00200341076a20084b0d00200341016a4102490d00200841da004b0d0041002101200241003602800120024200370378200241f8006a20082003417f7322076a10584101210502400240024003402001200928020420022d00082204410176200441017122041b20076a4f044002402005410171450d05200241e8006a106b220141016a210d410021040340200320044604402001280204220720022d006822034101762206200341017122051b2204200e28020420022d00182203410176200341017122031b470d05200e280208200e41016a20031b210320050d0220062104200d210503402004450440200621070c080b20052d000020032d0000470d06200341016a2103200541016a21052004417f6a21040c000b00052009280208200c20022d00084101711b20046a2c000022064120722006200641bf7f6a411a491b210b024002400240027f20022d00682208410171220f450440410a210720084101760c010b20012802002208417e71417f6a210720012802040b220520074604402001280208200d20084101711b210a416f2108200741e6ffffff074d0440410b20074101742206200741016a220820082006491b220641106a4170712006410b491b21080b200810502206200a2007106c20012008410172360200200120063602080c010b200f450d01200128020821060b2001200541016a3602040c010b2002200541017441026a3a0068200d21060b200520066a220541003a00012005200b3a0000200441016a21040c010b000b000b05200228027820016a2009280208200c20041b20036a20016a41016a2d00004180096a2d000022043a00002005200441ff0147712105200141016a21010c010b0b2004450d012001280208210503402004450d0220052d000020032d0000470d01200341016a2103200541016a21052004417f6a21040c000b000b20004200370000200041003a0014200041086a4200370000200041106a410036000020022802782201450d032002200136027c0c030b410021032002410036029001200242003703880120024188016a2007410174410172105803402003200128020420022d00682204410176200441017122041b22054f45044020022802880120036a2001280208200d20041b20036a2d000022044105763a0000200228028801200128020420022d0068220541017620054101711b6a20036a41016a2004411f713a0000200341016a21030c010b0b20022802880120056a41003a0000200228028c0121040240200228027c2203200228027822016b22054101480d002005200228029001220620046b4c0440034020012003460d02200420012d00003a00002002200228028c0141016a220436028c01200141016a21010c000b000b200241a8016a20024190016a36020041002107200241003602a401200420022802880122086b2109200420056a20086b2205200620086b2206410174220820082005491b41ffffffff07200641ffffffff03491b220604402006105021070b20022007360298012002200720096a22053602a0012002200620076a3602a4012002200536029c0120024198016a410472210703402001200346450440200520012d00003a0000200220022802a00141016a22053602a001200141016a21010c010b0b20022802880120042007106a0240200228028c01220320046b220141004c044020022802a00121040c010b200220022802a00120042001105920016a22043602a001200228028c0121030b20022802880121012002200228029c01360288012002200136029c012002200436028c01200220033602a0012002280290012103200220022802a40136029001200220033602a401200220013602980120024198016a1069200228028c0121040b2002420037028c0120022802880121032002410036028801200420036b21044101210103402004044020032d000041002001411d764101716b41b3c5d1d0027141002001411c764101716b41dde788ea037141002001411b764101716b41fab384f5017141002001411a764101716b41ed9cc2b20271410020014119764101716b41b2afa9db0371200141057441e0ffffff037173737373737321012004417f6a2104200341016a21030c010b0b20014101470d004100210a200241003602900120024200370388012002410036024820024200370340027f4100200228027c417a6a2204200228027822016b2203450d001a200241406b20031057034020012004464504402002280244220320012d00003a00002002200341016a360244200141016a21010c010b0b2002280240210a20022802440b200a6b210f20024190016a210c41002101410021064100210b02400340200b200f46044002402006410820016b7441ff0171452001410548712101200a04402002200a3602440b20010d0020022802880121010c030b05200a200b6a2d0000200641057441e01f71722106200141056a21010340200141084e04402006200141786a2201762104200228028c0122052002280290012207490440200520043a00002002200228028c0141016a36028c010c02052002200c3602a80141002103200241003602a401200520022802880122086b220541016a2209200720086b2207410174220820082009491b41ffffffff07200741ffffffff03491b220704402007105021030b2002200336029801200320056a220520043a00002002200320076a3602a4012002200536029c012002200541016a3602a00120024188016a20024198016a106820024198016a10690c020b000b0b200b41016a210b0c010b0b200228028c0120022802880122016b4114470d00200241a8016a4100360200200241a0016a42003703002002420037039801410021010340200141144645044020024198016a20016a41003a0000200141016a21010c010b0b200228028c0120022802880122036b2104410021010340024020012004460d00200141134b0d0020024198016a20016a200120036a2d00003a0000200141016a21010c010b0b2000200229039801370000200041013a0014200041106a200241a8016a280200360000200041086a200241a0016a290300370000200304402002200336028c010b20022802782201450d032002200136027c0c030b2001450d002002200136028c010b20022802782201450d002002200136027c0b20004200370000200041003a0014200041086a4200370000200041106a41003600000b200241b0016a24000bec0202027f047e230041b0016b22022400200241f8006a102f200241406b2002290378220620024180016a290300220742e40042001030200241306a20022903402204200241c8006a290300220520004190026a31000042001031200241206a2002290330200241386a290300420a420010302002200241286a2903003703a801200220022903203703a001200041c0066a200241a0016a1032200241106a20042005200041c0026a3100004200103120022002290310200241186a290300420a42001030200041f0026a22032002290300220420032903007c2205370300200041f8026a22032005200454ad200241086a29030020032903007c7c37030020024190016a200141086a290000220537030020024198016a200141106a280000220336020020012900002104200241d8006a2005370300200241e0006a2003360200200220043703880120022004370350200241e8006a200020062007200241d0006a1033200241b0016a24000b4102017f017e230041206b220124002001200141106a200141106a10061053200129030021022000200141086a29030037030820002002370300200141206a24000b3c01017f230041106b220524002005200120022003200410a901200529030021012000200541086a29030037030820002001370300200541106a24000b7501017e2000200120047e200220037e7c20034220882204200142208822027e7c200342ffffffff0f832203200142ffffffff0f8322017e2205422088200220037e7c22034220887c200120047e200342ffffffff0f837c22034220887c3703082000200542ffffffff0f832003422086843703000ba60102027f027e230041106b22022400200241003602082002420037030020024120105820022802042002280200417f736a2103200141086a29030021042001290300210503402003417f46450440200228020020036a20053c0000200442388620054208888421052003417f6a2103200442088821040c010b0b200020022802002203200228020420036b10031a200228020022030440200220033602040b200241106a24000b860a02057f0b7e230041d0026b22052400200541b8026a1035200541c8016a200141b0016a3100004200200220031031200541b8016a20052903c801200541d0016a29030042e40042001030200541a8016a20052903b801220c200541c0016a290300220e200141f8016a31000042001031200541e8016a2002200342054200103120054198016a20052903a801200541b0016a29030042e40042001030200541d8016a20052903e801200541f0016a29030042e40042001030200541f8016a20012002200c7d2003200e7d2002200c54ad7d104b20054188016a200c200529039801220a7d220b20052903d80122107d220f200e200541a0016a29030022137d200c200a54ad7d200541e0016a2903007d200b201054ad7d220d20014180046a29030020014188046a290300103120054190016a2903002110200529038801210b024020052903f801220c20054180026a290300220e8450450440200141e0056a2903002211200c20117c221454200141e8056a29030022122014201154ad200e20127c7c22115420112012511b0d010b10080b024002402004200141f8066a1036450d002004200541b8026a1036450d00200141d8046a2004103d2206290300200141b0046a29030054200641086a2903002211200141b8046a29030022125420112012511b0d0020014180056a22062004103d220741086a29030021122007290300211120062004103d2206200a20117c220a3703002006200a201154ad201220137c7c370308200f210a0c010b200541f8006a20012903800420014188046a290300200a200f7c220a200a200f54ad200d20137c7c220d103120054180016a29030021102005290378210b0b0240200141e0056a290300220f200141e8056a220629030022138450450440200541e8006a20012903800420014188046a290300200a200d1031200541d8006a2005290368200541f0006a290300200c200f7c220b200b200f54ad200e20137c7c22101030200541c8006a2005290358220d200541e0006a290300220a200c200e10312001200b3703e0052006201037030020014190066a2206200d2006290300220b7c221037030020014198066a22062010200b54ad200a20062903007c7c370300200541d0006a29030021102005290348210b0c010b2001200c3703e0052006200e3703000b200141d8046a2206200541b8026a103d220741086a290300210a2007290300210d2006200541b8026a103d2206200c200d7c220f3703002006200f200d54ad200a200e7c7c37030820014198066a290300210d20014190066a290300210a200141a8056a200541b8026a103d22064200200c200a200d845022071b220d200b7d220a20062903007c220f370300200641086a2206200f200a54ad20062903004200200e20071b20107d200d200b54ad7d7c7c3703001004210b200541b0026a2206200541c8026a280200360200200541a8026a2207200541c0026a29030037030020054190026a2208200441086a29000037030020054198026a2209200441106a280000360200200520052903b8023703a0022005200429000037038802200541386a20011043200541286a2007290300370300200541306a2006280200360200200541106a2008290300370300200541186a2009280200360200200520052903a0023703202005200529038802370308200541206a20022003200c200e200541086a200b200b423f872005290338200541406b29030010172000200e3703082000200c370300200541d0026a24000bbe0102027f037e230041e0006b22012400200141c8006a1035200141c8006a200041206a1036044010080b200141306a1037200141206a200141306a1038200141106a20012903202204200041f0026a220229030022037d200141286a290300200041f8026a220029030022057d2004200354ad7d20032005103120012001290310200141186a29030042e8074200103020022003200129030022047d37030020002005200141086a2903007d2003200454ad7d370300200141e0006a24000b210020004200370000200041106a4100360000200041086a4200370000200010010b3501027f034002402002411447047f200020026a2d0000200120026a2d0000460d0141010520030b0f0b200241016a21020c000b000b210020004200370000200041106a4100360000200041086a4200370000200010020b4302017f017e230041206b220224002002200241106a2001200241106a10051053200229030021032000200241086a29030037030820002003370300200241206a24000b8d0102027f027e230041d0006b22012400200141286a102f200041f8066a290000210320004188076a2800002102200141086a20004180076a2900002204370300200141106a2002360200200141406b2004370300200141c8006a20023602002001200337030020012003370338200141186a20002001290328200141306a2903002001103a200141d0006a24000b8c0902057f0b7e230041c0026b22052400200541d8016a2002200342e40042001031200541c8016a20052903d801200541e0016a29030042e40042001030200541a8026a1035200541b8016a20052903c801220a200541d0016a290300220b200141f8016a31000042001031200541a8016a20052903b801200541c0016a29030042e40042001030200541e8016a20012002200a7d2003200b7d2002200a54ad7d104b20054198016a200a20052903a801220c7d2211200b200541b0016a29030022127d200a200c54ad7d221320014180046a29030020014188046a2903001031200541a0016a2903002110200529039801210f20052903e801220d200141e0056a290300427f8558200541f0016a290300220e200141e8056a290300427f85221458200e2014511b45044010080b024002402004200141f8066a1036450d002004200541a8026a1036450d00200141d8046a2004103d2206290300200141b0046a290300200141b8046a29030084420052ad544100200641086a290300501b0d0020014180056a22062004103d220741086a290300210b2007290300210a20062004103d2206200a200c7c220c3703002006200c200a54ad200b20127c7c3703082011210a2013210b0c010b20054188016a20012903800420014188046a290300200a200b103120054190016a2903002110200529038801210f0b024020012903e005200141e8056a22062903008450450440200541f8006a20012903800420014188046a290300200a200b1031200541e8006a200529037820054180016a290300200d42017c220a200e200a200d54ad7c220b1030200541d8006a2005290368220f200541f0006a2903002210200d200e10312001200a3703e0052006200b37030020014190066a2206200f2006290300220a7c220b37030020014198066a2206200b200a54ad201020062903007c7c370300200541e0006a29030021102005290358210f0c010b2001200d3703e0052006200e3703000b200141d8046a2206200541a8026a103d220741086a290300210b2007290300210a2006200541a8026a103d2206200a200d7c220c3703002006200c200a54ad200b200e7c7c370308200541086a20014190066a29030020014198066a290300200d200e10312005290308210a200141a8056a200541a8026a103d2206200a200f7d220b20062903007c220c370300200641086a2206200c200b54ad2006290300200541106a29030020107d200a200f54ad7d7c7c3703001004210a200541a0026a2206200541b8026a28020036020020054198026a2207200541b0026a29030037030020054180026a2208200441086a29000037030020054188026a2209200441106a280000360200200520052903a80237039002200520042900003703f801200541c8006a20011043200541386a2007290300370300200541406b2006280200360200200541206a2008290300370300200541286a20092802003602002005200529039002370330200520052903f801370318200541306a20022003200d200e200541186a200a200a423f872005290348200541d0006a29030010172000200e3703082000200d370300200541c0026a24000bb80302037f067e230041b0016b22012400200141d8006a20004100103c200141e0006a29030021062001290358210520014198016a1035200141086a20004180046a29030020004188046a290300200520061031200041a8056a20014198016a103d22022002290300220420012903087c2207370300200241086a22022007200454ad2002290300200141106a2903007c7c37030020004180056a220220014198016a103d220341086a290300210820032903002104200220014198016a103d220242003703082002420037030020014190016a20004188076a280000220236020020014188016a20004180076a2900002209370300200041f8066a2900002107200141386a2009370300200141406b2002360200200120073703800120012007370330200141c8006a2000200420057c22052005200454ad200620087c7c2206200141306a1033200141f0006a200141a0016a2903002204370300200141f8006a200141a8016a2802002202360200200141206a2004370300200141286a20023602002001200129039801220437036820012004370318200141186a200520062001290348200141d0006a2903001028200141b0016a24000bbe0202017f027e230041a0016b2203240020034188016a1035027e2002044020034180016a20034198016a2802002202360200200341f8006a20034190016a2903002204370300200341106a2004370300200341186a20023602002003200329038801220437037020032004370308200341206a2001200341086a104720032903202104200341286a29030020014180056a20034188016a103d220141086a2903007c2004200129030022057c2204200554ad7c0c010b200341e8006a20034198016a2802002202360200200341e0006a20034190016a2903002204370300200341386a2004370300200341406b20023602002003200329038801220437035820032004370330200341c8006a2001200341306a104720032903482104200341d0006a2903000b21052000200437030020002005370308200341a0016a24000b7f01037f230041106b2203240020002003410c6a2001104d2204280200220245044041c0001050220241386a4200370300200241306a420037030020022001290000370010200241206a200141106a280000360000200241186a200141086a2900003700002000200328020c20042002104e0b200341106a2400200241306a0b4d02027f027e230041206b22012400200141086a1035200041d8046a200141086a103d22022903002203200241086a29030022048450450440200020032004103f0b20001040200141206a24000bcd0702067f067e230041d0026b22032400200341f8016a20001041200341b8026a1035200041d8046a2204200341b8026a103d220629030020015a200641086a290300220920025a20022009511b45044010080b200341e8016a200020012002104220034188016a20032903e8012209200341f0016a290300220b200041e0016a31000042001031200341c8016a2009200b200041c0026a31000042001031200341a8016a2009200b20004190026a31000042001031200341f8006a20032903880120034190016a29030042e40042001031200341d8016a2009200b428c7c427f1031200341b8016a20032903c801200341d0016a29030042e8074200103020034198016a20032903a801200341b0016a29030042e80742001030200341e8006a20092003290378220c7d220a20032903d8017c220d200d200a54ad200341e0016a290300200b20034180016a290300220e7d2009200c54ad7d7c7c220b200120021031200041e0056a22062006290300220920017d370300200041e8056a2207200729030020027d2009200154ad7d370300200041f0026a220520032903b801220920052903007c220a370300200041f8026a2205200a200954ad200341c0016a29030020052903007c7c3703002004200341b8026a103d220541086a290300210a200529030021092004200341b8026a103d2204200920017d3703002004200a20027d2009200154ad7d3703082003200341a0016a2903003703a80220032003290398013703a002200041c0066a200341a0026a1032200341d8006a2003290368200341f0006a29030020004190066a29030020004198066a22052903001031200341c8006a2003290358200341e0006a29030020004180046a29030020004188046a22082903001031200041a8056a200341b8026a103d2204200429030022092003290348220a7d370300200441086a22042004290300200341d0006a2903007d2009200a54ad7d370300200629030022092007290300220a8450450440200341386a2000290380042008290300200c200e1031200341286a2003290338200341406b2903002009200a10302000200329032822092000290390067c220c370390062005200c200954ad200341306a29030020052903007c7c3703000b1004210920034198026a2204200341c8026a28020036020020034190026a2206200341c0026a290300370300200320032903b80237038802200341186a20001043200341086a2006290300370300200341106a20042802003602002003200329038802370300200320012002200d200b20092009423f872003290318200341206a2903001027200341d0026a24000bde0202037f047e23004190016b22012400200141386a20004101103c200141f8006a1035200141286a20004100103c200120004180046a29030020004188046a29030020012903282206200141306a29030022051031200041a8056a200141f8006a103d22022002290300220420012903007c2207370300200241086a22022007200454ad2002290300200141086a2903007c7c37030020004180056a2202200141f8006a103d220341086a2903002107200329030021042002200141f8006a103d22024200370308200242003703002001200420067c2206200454ad200520077c7c220437036820012006370360200141f8006a200141e0006a1032200141d0006a20014180016a2903002205370300200141d8006a20014188016a2802002202360200200141186a2005370300200141206a200236020020012001290378220537034820012005370310200141106a20062004102920014190016a24000b930102027f027e230041d0006b22022400200241206a1035200241186a200241306a2802002203360200200241106a200241286a2903002204370300200220022903202205370308200241c8006a2003360200200241406b200437030020022005370338200141d8046a200241386a103d220129030021042000200141086a29030037030820002004370300200241d0006a24000bf60202027f037e230041d0006b22042400200441206a200141e0056a290300220642808090bbbad6adf00d7c2207200141e8056a2903002007200654ad7c42808090bbbad6adf00d42001030200441406b200242808090bbbad6adf00d7c220620032006200254ad7c2207200620071031200441306a2004290340220820067d200441c8006a29030020077d2008200654ad7d42808090bbbad6adf00d42001030200441106a20042903204200200141d0036a290300200141d8036a2903008442005222051b2207200141a0036a290300200141a8036a29030084420052ad7c22062005ad22087d2006200754ad200441286a290300420020051b7c2006200854ad7d200220031031200420042903102206200441386a2903002202423f86200429033042018884420020051b22037d200441186a2903002002420188420020051b7d2006200354ad7d42808090bbbad6adf00d420010302000200441086a29030037030820002004290300370300200441d0006a24000b9e0202017f037e230041d0006b22022400027e200141e0056a290300200141e8056a29030084500440200141d0036a2903002203200141a0036a2903007c2204200354ad200141d8036a290300200141a8036a2903007c7c0c010b200241406b200142808090bbbad6adf00d42001042200241306a20022903402204200241c8006a2903002203420542001031200241106a20042003200141b0016a31000042001031200241206a2002290330200241386a29030042e4004200103020022002290310200241186a29030042e40042001030200241086a2903002003200241286a2903007c2004200229032022057c2203200554ad7c7c200320022903007c2204200354ad7c0b21032000200437030020002003370308200241d0006a24000b980702077f087e230041b0026b2204240020044188016a20001041200441c8016a1035200041d8046a2207200441c8016a103d220529030020025a200541086a290300220b20035a2003200b511b45044010080b200441f8006a20004101103c200429037820044180016a2903008450450440200010400b200441d8006a200041c8016a3100004200200220031031200441c8006a2004290358200441e0006a29030042e40042001030200441e8006a20002004290348220b200441d0006a290300220e1042200441f0006a290300210f20042903682110200041e0056a22082008290300220c200b7d370300200041e8056a22092009290300200e7d200c200b54ad7d3703002007200441c8016a103d220541086a290300210d2005290300210c2007200441c8016a103d2205200c20027d3703002005200d20037d200c200254ad7d37030820072001103d2205290300210c200541086a290300211120072001103d2207200c2002200b7d220d7c221237030020072012200c54ad20112003200e7d2002200b54ad7d220b7c7c370308200441386a20004190066a220729030020004198066a2205290300200220031031200041a8056a220a200441c8016a103d220620062903002202200429033822037d370300200641086a22062006290300200441406b2903007d2002200354ad7d370300200441286a20072903002005290300200d200b1031200a2001103d22062006290300220220042903287c2203370300200641086a22062003200254ad2006290300200441306a2903007c7c370300200441186a20004180046a29030020004188046a2903002010200f1031200441086a2004290318200441206a290300200829030020092903001030200441a0016a2200200141086a290000370300200441a8016a2208200141106a280000360200200441b8016a2209200441d0016a290300370300200441c0016a2206200441d8016a28020036020020072004290308220220072903007c220337030020052003200254ad200441106a29030020052903007c7c3703002004200129000037039801200420042903c8013703b001200441e8016a2009290300370300200441f0016a200628020036020020044180026a200029030037030020044188026a2008280200360200200420042903b0013703e00120042004290398013703f8012004200b3703a8022004200d3703a00220044190026a4180081018200441e0016a200441f8016a200441a0026a102a200441b0026a24000b4201017e230041306b22012400200141186a1037200141086a200141186a1038200129030821022000200141106a29030037030820002002370300200141306a24000b1e002000200141e8056a2903003703082000200141e0056a2903003703000bae0102027f027e230041206b2203240020014198066a290300210520014190066a2903002106200341106a200141d8046a2002103d2204290300200441086a290300200620051031200141a8056a2002103d2102200320032903102205200229030022067d200341186a290300200241086a2903007d2005200654ad7d20014180046a29030020014188046a29030010302000200341086a29030037030820002003290300370300200341206a24000b23002000200141d8046a2002103d22022903003703002000200241086a2903003703080ba20202017f037e230041d0006b220224002000027e200141e0056a290300200141e8056a29030084500440200141a8036a290300200141d8036a2903007d200141a0036a2903002203200141d0036a290300220554ad7d2104200320057d0c010b200241406b200142808090bbbad6adf00d42001042200241306a20022903402204200241c8006a2903002203420542001031200241106a20042003200141e0016a31000042001031200241206a2002290330200241386a29030042e4004200103020022002290310200241186a29030042e400420010302003200241286a2903007d20042002290320220354ad7d200241086a2903007d200420037d22032002290300220554ad7d2104200320057d0b37030020002004370308200241d0006a24000bc70102017f037e230041d0006b22042400200441306a20022003420542001031200441106a200141b0016a3100004200200220031031200441206a2004290330200441386a29030042e4004200103020042004290310200441186a29030042e40042001030200441406b20012002200429032022057d2206200429030022077d2003200441286a2903007d2002200554ad7d200441086a2903007d2006200754ad7d104b200429034021022000200441c8006a29030037030820002002370300200441d0006a24000be50302027f097e230041e0006b22042400200441206a420042808090bbbad6adf00d200141a0036a290300200141a8036a290300845022051b220e4200200141e0056a290300220a200141e8056a290300220b1031200441d0006a20022003428080808080c4cfcbe60042ab9cc8bccff3cbc0011031200441406b200a200b200141d0036a2903002202200141d8036a29030022031031200441106a20042903202206420186220820042903507c22072007200854ad200441d8006a290300200441286a2903004201862006423f88847c7c200220031031200441306a20042903402202200441c8006a2903002203200220031031200441186a290300200429033022034200428080808080e2e7a5b37f20051b7c2202200354ad200441386a290300420042958ea4dee7f9a5e00020051b7c7c7c200220042903107c2209200254ad7c220c200942017c220d200954ad7c210820092107200c210603402008423f86200d42018884220320075a2008420188220220065a20022006511b45044020042009200c2003200210302004290300220620037c220d200654ad200441086a29030020027c7c210820032107200221060c010b0b20002007200a200e7c22027d37030020002006200b2002200a54ad7c7d2007200254ad7d370308200441e0006a24000bed0102017f037e230041d0006b22042400200141e0056a290300200258200141e8056a290300220520035820032005511b45044010080b200441406b2001200220031042200441306a20042903402203200441c8006a2903002202420542001031200441106a20032002200141e0016a31000042001031200441206a2004290330200441386a29030042e4004200103020042004290310200441186a29030042e4004200103020002003200429032022057d2206200429030022077d37030020002002200441286a2903007d2003200554ad7d200441086a2903007d2006200754ad7d370308200441d0006a24000b890101027f200041046a2103024020002802042200044002400340024002402002200041106a2204104f0440200028020022040d012001200036020020000f0b20042002104f450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b20032001280200470440200110512001280208220128020821020b200141013a000c200241003a000c200210520c010b02402004450d0020042d000c0d002004410c6a21030c020b20032001280200460440200110522001280208220128020821020b200141013a000c200241003a000c200210510b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000b3a01037f034020024114470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000b0b002000410120001b10660b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b4501027e034020020440200442088620034238888421042002417f6a210220013100002003420886842103200141016a21010c010520002003370300200020043703080b0b0b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204105021032000200236020420002004410172360200200020033602080b200320012002106c200220036a41003a00000b1600200041003602082000420037020020004100105c0b2001017f2000200110502202360200200020023602042000200120026a3602080bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110672106200241186a200041086a3602002002410036021441002101200604402006105021010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1068200241086a10690c010b200520014d0d002000200120046a3602040b200241206a24000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2f01017f2000280208200149044020011066200028020020002802041059210220002001360208200020023602000b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a106022023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10612103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031062200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110650b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274105021040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110650b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210591a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f41e80c200041086a2202411076220041e80c2802006a220336020041e40c41e40c280200220420026a41076a417871220236020002400240200341107420024d044041e80c200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104105941086a0541000b2100200141106a240020000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b6701017f20002802002000280204200141046a106a200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b270020022002280200200120006b22016b2202360200200141014e044020022000200110591a0b0b190020004200370200200041086a41003602002000106d20000b10002002044020002001200210591a0b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0bf70b02057f047e230041b0096b2200240010a101100f2201106622031010200041a0026a200041d8006a20032001106f220241001070200041a0026a107102400240200041a0026a1072450d0020002802a402450d0020002802a0022d000041c001490d010b10000b200041a0016a200041a0026a107320002802a401220141094f044010000b20002802a00121030340200104402001417f6a210120033100002005420886842105200341016a21030c010b0b024002402005500d0041b60a107420055104402002410110750c020b41bb0a1074200551044020004190026a2201410036020020004188026a220442003703002000420037038002200220004180026a1076200041a0026a1077210320004180016a20012802002201360200200041f8006a20042903002205370300200041186a2001360200200041106a20053703002000200029038002220637037020004190016a200537030020004198016a2001360200200041a8016a2005370300200041b0016a2001360200200020063703082000200637038801200020063703a0012003200041086a102e200310780c020b41bf0a107420055104402002410210750c020b41c30a107420055104402002410310750c020b41cd0a107420055104402002410410750c020b41d60a107420055104402002410510750c020b41db0a107420055104402002410610750c020b41e40a10742005510440200042003703a801200042003703a0012002200041a0016a1079200041a0026a1077220120002903a00120002903a801103f200110780c020b41e90a10742005510440200041c8016a22014200370300200041b0016a22044100360200200042003703c001200042003703a801200042003703a0012002107a410347044010000b200041a0026a200241011070200041a0026a200041a0016a107b200041a0026a200241021070200041386a200041a0026a107c2001200041406b29030022073703002000200029033822083703c001200041a0026a1077210320004180016a20042802002201360200200041f8006a20002903a8012205370300200041306a2001360200200041286a2005370300200020002903a001220637037020004190016a200537030020004198016a2001360200200041d8016a2005370300200041e0016a2001360200200020063703202000200637038801200020063703d0012003200041206a200820071044200041e8016a101f210120004198026a410036020020004190026a420037030020004188026a4200370300200042003703800220004180026a42014200102121022000280280022104200241046a102320012004101d2001420142001025220128020c200141106a28020047044010000b200128020020012802041015200128020c22020440200120023602100b200310780c020b41f20a1074200551044020024107107d0c020b41870b1074200551044020024108107d0c020b41930b1074200551044020024109107d0c020b419c0b107420055104402002107a410247044010000b200041a0026a200241011070200041a0026a107e2101200041c8006a200041a0026a107722032001410047103c2000200041d0006a2903003703a801200020002903483703a001200041a0016a107f200310780c020b41a80b107420055104402002410a1080010c020b41b20b107420055104402002410b1080010c020b41be0b107420055104402002410c107d0c020b41c80b107420055104402002410d107d0c020b41d10b107420055104402002410e1081010c020b41e90b107420055104402002410f1081010c020b41830c107420055104402002108201200041a0026a1077220241e0016a2d00002103200041a0016a101f22012003108301101d20012003108401200128020c200141106a28020047044010000b200128020020012802041015200128020c22030440200120033602100b200210780c020b418b0c10742005510440200241101085010c020b419a0c10742005510440200241111085010c020b41b00c10742005510440200241121081010c020b41c20c10742005520d00200241131081010c010b10000b108601200041b0096a24000b0d00200020012002411c1087010bd00202067f017e230041106b220324002001280208220520024b0440200341086a200110a60120012003280208200328020c109e0136020c2003200110a601410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b20002006280200200441141087011a200341106a24000f0b2003200110a60141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004109e0110a5012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001071200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd60101047f20011088012204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2a01017f23004190076b22022400200010820120021077220020011101002000107820024190076a24000b3401017f230041206b220224002000107a410247044010000b200241086a200041011070200241086a2001107b200241206a24000bf80e01047f230041206b220424002000420037000020004200370020200042aecfb0eaafca83d5f800370318200041106a22024100360000200041086a22034200370000200041286a4200370000200041306a4100360000200041186a200041206a220110890145044020012000290300370300200141106a2002280200360200200141086a20032903003703000b200441086a1035200141106a200441186a280200360000200141086a200441106a29030037000020012004290308370000200041386a106b2102200041c8006a220142f4b6fbddebefc6a0be7f3703002001200041d0006a106b2203108a0145044020032002108b010b200041e0006a106b2102200041f0006a220142adba859b98e9ace2203703002001200041f8006a106b2203108a0145044020032002108b010b200041003a00880120004190016a220142cdfcf8cf8ff195f2bd7f370300200120004198016a108c01450440200020002d0088013a0098010b200041003a00a001200041a8016a220142cdb5db92e197a9f62b3703002001200041b0016a108c01450440200020002d00a0013a00b0010b200041003a00b801200041c0016a220142ebe58dbf9aef9292693703002001200041c8016a108c01450440200020002d00b8013a00c8010b200041003a00d001200041d8016a2201429fa6e3f1dbcc84ce5c3703002001200041e0016a108c01450440200020002d00d0013a00e0010b200041003a00e801200041f0016a220142ffbdff84fdbf99da783703002001200041f8016a108c01450440200020002d00e8013a00f8010b200041003a00800220004188026a220142f98dbfc7909185bd7a370300200120004190026a108c01450440200020002d0080023a0090020b200041003a009802200041a0026a220142d9b2a6f5b2dcb7e8f0003703002001200041a8026a108c01450440200020002d0098023a00a8020b200041003a00b002200041b8026a220142ffc8e896ddf1bfab2f3703002001200041c0026a108c01450440200020002d00b0023a00c0020b200042003703d002200041d8026a22024200370300200041e0026a22014298c59ca4d3a599e40a3703002001200041f0026a108d01450440200020002903d0023703f002200041f8026a20022903003703000b200042003703800320004188036a2202420037030020004190036a220142d0becd9f80e7bf83877f3703002001200041a0036a108d0145044020002000290380033703a003200041a8036a20022903003703000b200042003703b003200041b8036a22024200370300200041c0036a220142c0dbb48fe2b8e4ee8c7f3703002001200041d0036a108d01450440200020002903b0033703d003200041d8036a20022903003703000b200042003703e003200041e8036a22024200370300200041f0036a220142f9aee386918bfcf62c370300200120004180046a108d01450440200020002903e0033703800420004188046a20022903003703000b200042003703900420004198046a22024200370300200041a0046a220142e997cf8b9fd19aeb133703002001200041b0046a108d0145044020002000290390043703b004200041b8046a20022903003703000b200041c4046a22014200370200200041dc046a22024200370200200041d0046a220342869aefc6e583ebdb5e370300200020013602c004200041d8046a2201200236020020032001108e014504402001200041c0046a108f010b200041ec046a2201420037020020004184056a22024200370200200041f8046a220342899cb3c6d0a8aad3d800370300200020013602e80420004180056a2201200236020020032001108e014504402001200041e8046a108f010b20004194056a22014200370200200041ac056a22024200370200200041a0056a2203428c88b7a6a994f2a4e9003703002000200136029005200041a8056a2201200236020020032001108e01450440200120004190056a108f010b200042003703c005200041c8056a22024200370300200041d0056a220142e8c3d4f59f85c9c0c5003703002001200041e0056a108d01450440200020002903c0053703e005200041e8056a20022903003703000b200042003703f005200041f8056a2202420037030020004180066a22014298e3a7fec4dadbfaee00370300200120004190066a108d01450440200020002903f0053703900620004198066a20022903003703000b200042003700a006200041b0066a4100360000200041a8066a4200370000200041c0066a22014200370000200041b8066a220242da999cdd86a3a7e958370300200041c8066a4200370000200041d0066a4100360000200220011089014504402001200041a0066a2202290300370300200141106a200241106a280200360200200141086a200241086a2903003703000b200042003700d806200041e8066a4100360000200041e0066a4200370000200041f8066a22014200370000200041f0066a220242f2c0dec7c1e2b382ae7f37030020004180076a420037000020004188076a4100360000200220011089014504402001200041d8066a2202290300370300200141106a200241106a280200360200200141086a200241086a2903003703000b200441206a240020000bd90200200041f0066a200041f8066a109001200041b8066a200041c0066a10900120004180066a20004190066a109101200041d0056a200041e0056a109101200041a0056a200041a8056a109201200041f8046a20004180056a109201200041d0046a200041d8046a109201200041a0046a200041b0046a109101200041f0036a20004180046a109101200041c0036a200041d0036a10910120004190036a200041a0036a109101200041e0026a200041f0026a109101200041b8026a200041c0026a109301200041a0026a200041a8026a10930120004188026a20004190026a109301200041f0016a200041f8016a109301200041d8016a200041e0016a109301200041c0016a200041c8016a109301200041a8016a200041b0016a10930120004190016a20004198016a109301200041f0006a200041f8006a109401200041c8006a200041d0006a109401200041186a200041206a1090010b5402017f017e230041306b220224002000107a410247044010000b200241186a200041011070200241086a200241186a107c200229030821032001200241106a29030037030820012003370300200241306a24000b2601017f02402000280204450d0020002802002d000041c001490d00200010950121010b20010bcf0102037f027e230041406a2202240020001071200241386a20001073200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10000b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a2002280238200310591a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000b9e0102027f027e230041106b22022400200110710240024020011072450d002001280204450d0020012802002d000041c001490d010b10000b200241086a20011073200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000b5001017f230041b0076b2202240020001082012002200241106a1077220020011100002002200241086a2903003703a807200220022903003703a007200241a0076a107f20001078200241b0076a24000b7d01037f230041106b22012400200010710240024020001072450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001073200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b6f01037f230041206b22022400200241086a101f22012000290300200041086a2203290300109601101d2001200029030020032903001025220028020c200041106a28020047044010000b200028020020002802041015200028020c22010440200020013602100b200241206a24000ba00202037f027e230041b0086b22022400200241d0076a22034100360200200241c8076a22044200370300200242003703c0072000200241c0076a1076200241306a10772100200241e8076a20032802002203360200200241e0076a20042903002205370300200220022903c00722063703d807200241f8076a200537030020024180086a2003360200200220063703f00720024198086a20024180086a280200220336020020024190086a200241f8076a2903002205370300200241106a2005370300200241186a2003360200200220022903f00722053703880820022005370308200241206a2000200241086a20011104002002200241286a2903003703a808200220022903203703a008200241a0086a107f20001078200241b0086a24000b7101017f230041c0076b22022400200242003703a807200242003703a0072000200241a0076a10792002200241106a1077220020022903a00720022903a80720011108002002200241086a2903003703b807200220022903003703b007200241b0076a107f20001078200241c0076a24000b0e002000107a410147044010000b0b5801027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ff018342001021210020012802002102200041046a1023200141206a240020020b0c0020002001ad420010251a0b930302037f047e230041e0086b22022400200241e8076a4200370300200241f0076a4100360200200242003703d807200242003703d007200242003703e007200241e0076a21032000107a410347044010000b200241406b200041011070200241306a200241406b107c2002200241386a2903003703d807200220022903303703d007200241406b200041021070200241406b2003107b200241406b1077210020024198086a200341106a280000220436020020024190086a200341086a29000022053703002002200329000022063703880820022903d807210720022903d0072108200241a8086a2005370300200241b0086a2004360200200220063703a008200241c8086a200241b0086a2802002203360200200241c0086a200241a8086a2903002205370300200241106a2005370300200241186a2003360200200220022903a00822053703b80820022005370308200241206a200020082007200241086a2001110a002002200241286a2903003703d808200220022903203703d008200241d0086a107f20001078200241e0086a24000b880101037f41d40c410136020041d80c2802002100034020000440034041dc0c41dc0c2802002201417f6a2202360200200141014845044041d40c4100360200200020024102746a22004184016a280200200041046a28020011010041d40c410136020041d80c28020021000c010b0b41dc0c412036020041d80c200028020022003602000c010b0b0b750020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d00200010a30120024f0d002003410471044010000c010b200042003702000b02402003411071450d00200010a30120024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000107141012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020bd20101057f230041406a22022400200241286a101f22032000290300109801200328020c200341106a28020047044010000b0240200328020022052003280204220610112204450440410021000c010b410021002002410036022020024200370318200241186a200410582005200620022802182205200228021c20056b1012417f47044020022002280218220041016a200228021c2000417f736a106f2001107b200421000b20022802182204450d002002200436021c0b200328020c22040440200320043602100b200241406b240020000bbf0401077f230041e0006b22022400200241306a101f22052000290300109801200528020c200541106a28020047044010000b0240200528020022032005280204220610112207450440410021000c010b410021002002410036022820024200370320200241206a200710582003200620022802202204200228022420046b1012417f47044002400240200241086a2002280220220041016a20022802242000417f736a106f2200280204044020002802002d000041c001490d010b200241c8006a106b1a0c010b200241d8006a20001073200010880121030240024002400240200228025822000440200228025c220620034f0d010b41002100200241d0006a41003602002002420037034841002104410021060c010b200241d0006a4100360200200242003703482000200620032003417f461b22046a21062004410a4b0d010b200220044101743a0048200241c8006a41017221030c010b200441106a4170712208105021032002200436024c20022008410172360248200220033602500b03402000200646450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290348370200200141086a200241d0006a280200360200200241c8006a106d200721000b20022802202203450d00200220033602240b200528020c22030440200520033602100b200241e0006a240020000b3501017f2000200147044020002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10a2010b0bd50101057f230041406a22022400200241286a101f22032000290300109801200328020c200341106a28020047044010000b0240200328020022052003280204220610112204450440410021000c010b410021002002410036022020024200370318200241186a200410582005200620022802182205200228021c20056b1012417f470440200120022002280218220041016a200228021c2000417f736a106f107e3a0000200421000b20022802182204450d002002200436021c0b200328020c22040440200320043602100b200241406b240020000bf40102057f017e230041d0006b22022400200241386a101f22032000290300109801200328020c200341106a28020047044010000b0240200328020022052003280204220610112204450440410021000c010b410021002002410036023020024200370328200241286a200410582005200620022802282205200228022c20056b1012417f4704402002200241106a2002280228220041016a200228022c2000417f736a106f107c200229030021072001200241086a29030037030820012007370300200421000b20022802282204450d002002200436022c0b200328020c22040440200320043602100b200241d0006a240020000bb306020a7f027e230041f0016b22022400200241386a101f22062000290300109801200628020c200641106a28020047044010000b0240200628020022032006280204220410112208450440410021000c010b410021002002410036023020024200370328200241286a200810582003200420022802282207200228022c20076b1012417f47044002400240200241106a2002280228220041016a200228022c2000417f736a106f2203280204450d0020032802002d000041c001490d00200241b0016a20034101109d012100200241a0016a20034100109d01210920002802042103200241f8006a210a200241e0006a2107034020092802042003464100200028020822042009280208461b0d0220024188016a20032004411c1087012103200a4200370300200741003602002002420037037020024200370358200242003703500240200228028c0104402002280288012d000041bf014b0d010b10000b2003109501410247044010000b200241e8016a22044100360200200241e0016a22054200370300200242003703d801200241c0016a200341001070200241c0016a200241d8016a107b20072004280200360200200220022903d80137035020022005290300370358200241c0016a2003410110702002200241c0016a107c200a200241086a290300220c37030020022002290300220d3703702001200241c0016a200241d0006a104d220428020045044041c0001050220341386a200c370300200341306a200d370300200341186a200229035837030020032002290350370310200341206a2007280200360200200120022802c00120042003104e0b20002000280204220320002802086a410020031b22033602042000280200220404402000200436020820032004109e0121052000027f200028020422034504404100210441000c010b4100210441002000280208220b2005490d001a200b20052005417f461b210420030b2203ad2004ad42208684370204200041002000280200220520046b2204200420054b1b3602000c0105200041003602080c010b000b000b10000b200821000b20022802282203450d002002200336022c0b200628020c22030440200620033602100b200241f0016a240020000b960302057f017e230041106b22052400024020002001460d00200141046a21062001280200210102402000280208450d00200028020021022000200041046a3602002000410036020820002802042103200041003602042003410036020820022802042203200220031b2103034020032202450d012001200647044020022001290010370010200241206a200141206a280000360000200241186a200141186a29000037000020012903302107200241386a200141386a290300370300200241306a2007370300024020022802082203450440410021030c010b2002200328020022044604402003410036020020032802042204450d012004109f0121030c010b200341003602042004450d002004109f0121030b2000200541086a200241106a10a00121042000200528020820042002104e2001109b0121010c010b0b0340200228020822020d000b200621010b034020012006460d0120002005410c6a41c0001050220241106a200141106a4130105910a00121032000200528020c20032002104e2001109b0121010c000b000b200541106a24000bdf04020e7f027e230041d0016b22022400200241d0006a101f22052000290300109701101d"; - - private static String BINARY_1 = "20052000290300109801200528020c200541106a28020047044010000b2005280204210620052802002107200241386a101f210320024198016a410036020020024190016a2208420037030020024188016a22094200370300200241f8006a200141106a22042800002200360200200241f0006a200141086a220a290000221137030020012900002110200241106a2011370300200241186a2000360200200242003703800120022010370368200241a8016a220b2011370300200241b0016a220c2000360200200241c0016a220d2011370300200241c8016a220e200036020020022010370308200220103703a001200220103703b80120024180016a200241086a10222100200228028001210f200041046a10232003200241e8006a1099012200109a012003200f20002802046a20002802006b101d200241306a20042800002204360200200241286a200a2900002210370300200220012900002211370320200b2010370300200c2004360200200d2010370300200e2004360200200220113703a001200220113703b801200820043602002009201037030020022011370380010240200320024180016a41141026220128020c200141106a280200460440200141046a2103200128020021040c010b200141046a2103100020012802002104200128020c2001280210460d0010000b20072006200420032802001013200028020022030440200020033602040b200128020c22000440200120003602100b200528020c22010440200520013602100b200241d0016a24000b9e0201077f230041406a22042400200441286a101f22032000290300109701101d20032000290300109801200328020c200341106a28020047044010000b2003280204210620032802002107200441106a101f21022001290300200141086a22052903001096012108200220041099012200109a012002200820002802046a20002802006b101d02402002200129030020052903001025220128020c200141106a280200460440200141046a2102200128020021050c010b200141046a2102100020012802002105200128020c2001280210460d0010000b20072006200520022802001013200028020022020440200020023602040b200128020c22000440200120003602100b200328020c22010440200320013602100b200441406b24000b8507020a7f067e23004180026b22022400200241386a101f22052000290300109701101d20052000290300109801200528020c200541106a28020047044010000b2005280204210a2005280200210b200241206a101f2108200241e8006a4100360200200241e0006a4200370300200241d8006a420037030020024200370350027f20012802084504402002410136025041010c010b200141046a2103200241d0006a41001020210620012802002100037f2000200346047f2006410110201a20022802500520024188016a200041286a290300220c37030020024180016a200041206a290300220d37030020022000290310220e3703702002200041186a290300220f370378200041386a290300211020002903302111200241a8016a200c370300200241a0016a2204200d3703002002200f370398012002200e370390012006410010202109200241c8016a20042802002204360200200241c0016a200229039801220c370300200241186a2004360200200241106a200c3703002002200229039001220d3703b801200241d8016a200c370300200241e0016a2004360200200241f0016a200c370300200241f8016a20043602002002200d3703082002200d3703d0012002200d3703e8012009200241086a1022201120101021410110201a2000109b0121000c010b0b0b2100200241d0006a41047210232008200241d0006a1099012207109a012008200728020420006a20072802006b101d2008200128020810242103200141046a21062001280200210003402000200646450440200341021024210920024180016a200041206a2800002204360200200241f8006a200041186a290000220c37030020022000290010220d370370200241c0016a200c370300200241c8016a2004360200200241d8016a200c370300200241e0016a20043602002002200d3703b8012002200d3703d001200241a0016a200436020020024198016a200c3703002002200d37039001200920024190016a411410262000290330200041386a29030010251a2000109b0121000c010b0b0240200328020c200341106a280200460440200341046a2100200328020021040c010b200341046a2100100020032802002104200328020c2003280210460d0010000b200b200a200420002802001013200728020022000440200720003602040b200328020c22000440200320003602100b200528020c22000440200520003602100b20024180026a24000b900201067f230041406a22042400200441286a101f22022000290300109701101d20022000290300109801200228020c200241106a28020047044010000b2002280204210620022802002107200441106a101f210020012d00001083012105200020041099012203109a012000200520032802046a20032802006b101d200020012d00001084010240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b20072006200520012802001013200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000bdb0301087f230041f0006b22042400200441286a101f22052000290300109701101d20052000290300109801200528020c200541106a28020047044010000b2005280204210720052802002108200441106a101f2100200441e8006a4100360200200441e0006a4200370300200441d8006a42003703002004420037035041012102024002400240200441406b2001109c01220628020420042d00402203410176200341017122091b220341014d0440200341016b0d032006280208200641016a20091b2c0000417f4c0d010c030b200341374b0d010b200341016a21020c010b2003105a20036a41016a21020b20042002360250200441d0006a41047210232000200441d0006a1099012203109a012000200328020420026a20032802006b101d0240200020042001109c012202280208200241016a20022d0000220141017122061b2002280204200141017620061b1026220028020c200041106a280200460440200041046a2102200028020021010c010b200041046a2102100020002802002101200028020c2000280210460d0010000b20082007200120022802001013200328020022020440200320023602040b200028020c22030440200020033602100b200528020c22000440200520003602100b200441f0006a24000b820101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a200010a601200128020c210003402000450d01200141002001280208220320032000109e0122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b5301037f230041206b22022400200241186a4100360200200241106a4200370300200241086a4200370300200242003703002002200020011021210320022802002104200341046a1023200241206a240020040b5301037f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200042001021210220012802002103200241046a1023200141206a240020030b0b0020002001420010251a0b30002000410036020820004200370200200041011057200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105c20002802040520020b20002802006a2003200110591a2000200028020420016a3602040b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204105520000be90101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110a60120004100200428020c2201200428020822022001109e0122032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2901017f230041206b22022400200241086a20002001411410870110a3012100200241206a240020000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a104f044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3501017f230041106b220041f08c0436020c41e00c200028020c41076a417871220036020041e40c200036020041e80c3f003602000bd40101027f410a210320002d0000410171220404402000280200417e71417f6a21030b200320024f0440027f2004044020002802080c010b200041016a0b21032002044020032001200210650b200220036a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2104200341e6ffffff074d0440410b200341017422032002200320024b1b220341106a4170712003410b491b21040b20041050220320012002106c200020023602042000200441017236020020002003360208200220036a41003a00000b3001017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010a40120001088016a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2401017f2001108801220220012802044b044010000b20002001200110a401200210a5010b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210096a10a801200120002802006a220120022001100a0c010b0b0b3601017f2000280208200149044020011066200028020020002802041059210220002001360208200020023602000b200020013602040bdd0402027f047e024002402002500440200450044020012003802101420021020c030b0c010b0240024020035004402004500d03200150044020022004802101420021020c050b20042004427f7c83500440200220047a882101420021020c050b200479a7200279a76b2205413f4f0d022002413f20056bad2207862001200541016a2205ad2208888421092002200888210a20012007862108420021070c010b0240027e200450044020032003427f7c8350044020034201510d07200242c00020037a22077d862001200788842101200220078821020c070b200379a7200279a76b41c1006a220541c00046044020010c020b2005413f4d0440200241c00020056bad22078620012005ad2208888421092002200888210a20012007862108420021070c040b200241800120056bad2207862001200541406aad22098884210820022009882109200120078621070c030b200479a7200279a76b220641c0004f0d03200641016a220541c000470d0120010b21082002210941c00021050c010b2002413f20066bad22088620012005ad220a888421092002200a88210a200120088621080b41002106034020050440200a4201862009423f888422022002427f8520047c20094201862008423f88842209427f85220220037c200254ad7c423f8722022004837d20092002200383220154ad7d210a200920017d210920084201862007423f888421082005417f6a21052006ad20074201868421072002a741017121060c010b0b20084201862007423f888421022006ad2007420186427e838421010c020b0b42002101420021020b20002001370300200020023703080b0bd30402004180080b725472616e73666572004379706865722042616e6b004342540061747831306a633074346e647161726a347136756a6c33673379636d756667633737657036616868617000617478317171717171717171717171717171717171717171717171717171717171717171383971776b63006c6178004180090bd303ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff6f6e5769746864726177006f6e5265696e766573746d656e74006f6e546f6b656e53656c6c006f6e546f6b656e507572636861736500696e6974006275790049444400446976734164646f6e007265696e7665737400657869740077697468647261770073656c6c007472616e7366657200746f74616c457468657265756d42616c616e636500746f74616c537570706c79006d79546f6b656e73006d794469766964656e64730062616c616e63654f66006469766964656e64734f660073656c6c50726963650062757950726963650063616c63756c617465546f6b656e7352656365697665640063616c63756c617465457468657265756d52656365697665640065786974466565007075726368617365546f6b656e73004469766964656e6473446973747269627574696f6e00657468657265756d546f546f6b656e735f00746f6b656e73546f457468657265756d5f"; - - public static String BINARY = BINARY_0 + BINARY_1; - - public static final String FUNC_DIVSADDON = "DivsAddon"; - - public static final String FUNC_REINVEST = "reinvest"; - - public static final String FUNC_BUY = "buy"; - - public static final String FUNC_IDD = "IDD"; - - public static final String FUNC_CALCULATEETHEREUMRECEIVED = "calculateEthereumReceived"; - - public static final String FUNC_EXITFEE = "exitFee"; - - public static final String FUNC_EXIT = "exit"; - - public static final String FUNC_WITHDRAW = "withdraw"; - - public static final String FUNC_SELL = "sell"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_TOTALETHEREUMBALANCE = "totalEthereumBalance"; - - public static final String FUNC_TOTALSUPPLY = "totalSupply"; - - public static final String FUNC_MYTOKENS = "myTokens"; - - public static final String FUNC_MYDIVIDENDS = "myDividends"; - - public static final String FUNC_BALANCEOF = "balanceOf"; - - public static final String FUNC_DIVIDENDSOF = "dividendsOf"; - - public static final String FUNC_SELLPRICE = "sellPrice"; - - public static final String FUNC_BUYPRICE = "buyPrice"; - - public static final String FUNC_CALCULATETOKENSRECEIVED = "calculateTokensReceived"; - - public static final WasmEvent ONTOKENPURCHASE_EVENT = new WasmEvent("onTokenPurchase", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint128.class) , new WasmEventParameter(Uint128.class) , new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Uint128.class) , new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent ONTOKENSELL_EVENT = new WasmEvent("onTokenSell", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint128.class) , new WasmEventParameter(Uint128.class) , new WasmEventParameter(Uint128.class) , new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent ONREINVESTMENT_EVENT = new WasmEvent("onReinvestment", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint128.class) , new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent ONWITHDRAW_EVENT = new WasmEvent("onWithdraw", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent TRANSFER_EVENT = new WasmEvent("Transfer", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent TESTDATA_EVENT = new WasmEvent("TestData", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint128.class) , new WasmEventParameter(Uint128.class) , new WasmEventParameter(Uint128.class))); - ; - - protected Bank(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Bank(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getOnTokenPurchaseEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ONTOKENPURCHASE_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - OnTokenPurchaseEventResponse typedResponse = new OnTokenPurchaseEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (WasmAddress) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (Uint128) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (Uint128) eventValues.getNonIndexedValues().get(4); - responses.add(typedResponse); - } - return responses; - } - - public Observable onTokenPurchaseEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public OnTokenPurchaseEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(ONTOKENPURCHASE_EVENT, log); - OnTokenPurchaseEventResponse typedResponse = new OnTokenPurchaseEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (WasmAddress) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (Uint128) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (Uint128) eventValues.getNonIndexedValues().get(4); - return typedResponse; - } - }); - } - - public Observable onTokenPurchaseEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(ONTOKENPURCHASE_EVENT)); - return onTokenPurchaseEventObservable(filter); - } - - public RemoteCall DivsAddon() { - final WasmFunction function = new WasmFunction(FUNC_DIVSADDON, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall DivsAddon(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DIVSADDON, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public List getOnTokenSellEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ONTOKENSELL_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - OnTokenSellEventResponse typedResponse = new OnTokenSellEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint128) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (Uint128) eventValues.getNonIndexedValues().get(3); - responses.add(typedResponse); - } - return responses; - } - - public Observable onTokenSellEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public OnTokenSellEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(ONTOKENSELL_EVENT, log); - OnTokenSellEventResponse typedResponse = new OnTokenSellEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint128) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (Uint128) eventValues.getNonIndexedValues().get(3); - return typedResponse; - } - }); - } - - public Observable onTokenSellEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(ONTOKENSELL_EVENT)); - return onTokenSellEventObservable(filter); - } - - public List getOnReinvestmentEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ONREINVESTMENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - OnReinvestmentEventResponse typedResponse = new OnReinvestmentEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable onReinvestmentEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public OnReinvestmentEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(ONREINVESTMENT_EVENT, log); - OnReinvestmentEventResponse typedResponse = new OnReinvestmentEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable onReinvestmentEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(ONREINVESTMENT_EVENT)); - return onReinvestmentEventObservable(filter); - } - - public List getOnWithdrawEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(ONWITHDRAW_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - OnWithdrawEventResponse typedResponse = new OnWithdrawEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable onWithdrawEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public OnWithdrawEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(ONWITHDRAW_EVENT, log); - OnWithdrawEventResponse typedResponse = new OnWithdrawEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable onWithdrawEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(ONWITHDRAW_EVENT)); - return onWithdrawEventObservable(filter); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public List getTestDataEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TESTDATA_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TestDataEventResponse typedResponse = new TestDataEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint128) eventValues.getNonIndexedValues().get(2); - responses.add(typedResponse); - } - return responses; - } - - public Observable testDataEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TestDataEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TESTDATA_EVENT, log); - TestDataEventResponse typedResponse = new TestDataEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint128) eventValues.getNonIndexedValues().get(2); - return typedResponse; - } - }); - } - - public Observable testDataEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TESTDATA_EVENT)); - return testDataEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Bank.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Bank.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Bank.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Bank.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall reinvest() { - final WasmFunction function = new WasmFunction(FUNC_REINVEST, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall reinvest(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_REINVEST, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall buy(WasmAddress _referredBy) { - final WasmFunction function = new WasmFunction(FUNC_BUY, Arrays.asList(_referredBy), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall buy(WasmAddress _referredBy, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_BUY, Arrays.asList(_referredBy), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall IDD() { - final WasmFunction function = new WasmFunction(FUNC_IDD, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall IDD(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_IDD, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall calculateEthereumReceived(Uint128 _tokensToSell) { - final WasmFunction function = new WasmFunction(FUNC_CALCULATEETHEREUMRECEIVED, Arrays.asList(_tokensToSell), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall exitFee() { - final WasmFunction function = new WasmFunction(FUNC_EXITFEE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall exit() { - final WasmFunction function = new WasmFunction(FUNC_EXIT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall exit(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_EXIT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall withdraw() { - final WasmFunction function = new WasmFunction(FUNC_WITHDRAW, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall withdraw(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_WITHDRAW, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall sell(Uint128 _amountOfTokens) { - final WasmFunction function = new WasmFunction(FUNC_SELL, Arrays.asList(_amountOfTokens), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall sell(Uint128 _amountOfTokens, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SELL, Arrays.asList(_amountOfTokens), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall transfer(WasmAddress _toAddress, Uint128 _amountOfTokens) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFER, Arrays.asList(_toAddress,_amountOfTokens), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall transfer(WasmAddress _toAddress, Uint128 _amountOfTokens, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFER, Arrays.asList(_toAddress,_amountOfTokens), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall totalEthereumBalance() { - final WasmFunction function = new WasmFunction(FUNC_TOTALETHEREUMBALANCE, Arrays.asList(), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall totalSupply() { - final WasmFunction function = new WasmFunction(FUNC_TOTALSUPPLY, Arrays.asList(), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall myTokens() { - final WasmFunction function = new WasmFunction(FUNC_MYTOKENS, Arrays.asList(), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall myDividends(Boolean _includeReferralBonus) { - final WasmFunction function = new WasmFunction(FUNC_MYDIVIDENDS, Arrays.asList(_includeReferralBonus), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall balanceOf(WasmAddress _customerAddress) { - final WasmFunction function = new WasmFunction(FUNC_BALANCEOF, Arrays.asList(_customerAddress), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall dividendsOf(WasmAddress _customerAddress) { - final WasmFunction function = new WasmFunction(FUNC_DIVIDENDSOF, Arrays.asList(_customerAddress), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall sellPrice() { - final WasmFunction function = new WasmFunction(FUNC_SELLPRICE, Arrays.asList(), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall buyPrice() { - final WasmFunction function = new WasmFunction(FUNC_BUYPRICE, Arrays.asList(), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall calculateTokensReceived(Uint128 _ethereumToSpend) { - final WasmFunction function = new WasmFunction(FUNC_CALCULATETOKENSRECEIVED, Arrays.asList(_ethereumToSpend), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public static Bank load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Bank(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Bank load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Bank(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class OnTokenPurchaseEventResponse { - public Log log; - - public String topic; - - public Uint128 arg1; - - public Uint128 arg2; - - public WasmAddress arg3; - - public Uint128 arg4; - - public Uint128 arg5; - } - - public static class OnTokenSellEventResponse { - public Log log; - - public String topic; - - public Uint128 arg1; - - public Uint128 arg2; - - public Uint128 arg3; - - public Uint128 arg4; - } - - public static class OnReinvestmentEventResponse { - public Log log; - - public String topic; - - public Uint128 arg1; - - public Uint128 arg2; - } - - public static class OnWithdrawEventResponse { - public Log log; - - public String topic; - - public Uint128 arg1; - } - - public static class TransferEventResponse { - public Log log; - - public String topic; - - public WasmAddress arg1; - - public Uint128 arg2; - } - - public static class TestDataEventResponse { - public Log log; - - public String topic; - - public Uint128 arg1; - - public Uint128 arg2; - - public Uint128 arg3; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/BasicDataIntegerTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/BasicDataIntegerTypeContract.java deleted file mode 100644 index 7e89c8d65d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/BasicDataIntegerTypeContract.java +++ /dev/null @@ -1,243 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int16; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.rlp.wasm.datatypes.Int8; -import com.alaya.rlp.wasm.datatypes.Uint16; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class BasicDataIntegerTypeContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001601160027f7f0060017f017f60027f7f017f60017f0060037f7e7e0060000060037f7f7f0060017f017e60047f7f7f7f0060027f7e0060037f7f7f017f60047f7f7f7f017f60017e017f60037e7e7f006000017f60037f7e7e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000603656e760e726c705f62797465735f73697a65000203656e7610706c61746f6e5f726c705f6279746573000603656e760d726c705f753132385f73697a65001003656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000203656e7610706c61746f6e5f6765745f7374617465000b03656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000035554050000000106040405010a06070703010301010101000001010101000c0901010001010101070c090201030003050b030100020202020202020200000401000f00000000000000000002000404010a05010108040405017001030305030100020608017f0141e089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003a06696e766f6b6500150908010041010b020e0f0ad575540400105c0b1000200041b8016a20012903003703000b1b00200041a8036a4200370300200041a0036a20012903003703000bbe0502087f047e230041206b2205240020004200370200200041086a4100360200200141a8036a290300210a200141a0036a290300210b4100210103402001410c46450440200020016a4100360200200141046a21010c010b0b0240027f20002d00002201410171450440200141017622034128200341284b1b41106a41f001712101410a0c010b200028020422034128200341284b1b41106a41707122012000280200417e712202460d012002417f6a0b210641002001417f6a20064d2001101122021b0d0020022000280208200041016a20002d0000220641017122041b2000280204200641017620041b41016a10122000200236020820002003360204200020014101723602000b200041016a2107200541186a21080340200541106a200b200a101320052005290310220c2008290300220d10142005290300200b7ca74180086a2d00002106024002400240027f20002d000022024101712204450440410a210320024101760c010b20002802002202417e71417f6a210320002802040b220120034604402000280208200720024101711b2109416f2104200341e6ffffff074d0440410b20034101742202200341016a220420042002491b220241106a4170712002410b491b21040b20041011220220092003101220002004410172360200200020023602080c010b2004450d01200028020821020b2000200141016a3602040c010b2000200141017441026a3a0000200721020b200120026a220141003a0001200120063a0000200b4209562101200a4200522103200a502102200c210b200d210a2001200320021b0d000b0240200028020420002d00002201410176200141017122011b2203450d0020032000280208200720011b22006a417f6a21010340200020014f0d0120002d00002103200020012d00003a0000200120033a00002001417f6a2101200041016a21000c000b000b200541206a24000b0b002000410120001b10160b100020020440200020012002105b1a0b0b3701017f230041106b220324002003200120021060200329030021012000200341086a29030037030820002001370300200341106a24000b7701017e20002001427f7e200242767e7c2001422088220242ffffffff0f7e7c200242f6ffffff0f7e200142ffffffff0f83220142f6ffffff0f7e22034220887c22024220887c200142ffffffff0f7e200242ffffffff0f837c22024220887c3703082000200342ffffffff0f832002422086843703000bae0e02077f017e230041b0046b22022400105c10072200101622011008200241206a200241086a20012000101722004100101802400240200241206a10192207500d00418b08101a20075104402000101b200241206a101c101d0c020b419008101a20075104402000101e410247044010000b200241206a200041011018200241206a101f2100200241206a101c220141f0006a20003a00002001101d0c020b419a08101a20075104402000101b200241206a101c220341f0006a2d0000210120024190046a10202200200110211022200020011023200028020c200041106a28020047044010000b20002802002000280204100c200028020c22010440200020013602100b2003101d0c020b41a408101a20075104402000101e410247044010000b200241206a200041011018200241206a10242100200241206a101c22014188016a20003b01002001101d0c020b41af08101a20075104402000101b200241206a101c22034188016a2f0100210120024190046a10202200200110251022200020011023200028020c200041106a28020047044010000b20002802002000280204100c200028020c22010440200020013602100b2003101d0c020b41ba08101a20075104402000101e410247044010000b200241206a200041011018200241206a10262100200241206a101c220141a0016a20003602002001101d0c020b41c508101a20075104402000101b200241206a101c220341a0016a280200210120024190046a10202200200110271022200020011023200028020c200041106a28020047044010000b20002802002000280204100c200028020c22010440200020013602100b2003101d0c020b41d008101a20075104402000410110280c020b41db08101a20075104402000101b200241206a101c220141b8016a290300210720024190046a1020220020071029102220002007102a200028020c200041106a28020047044010000b20002802002000280204100c200028020c22030440200020033602100b2001101d0c020b41e608101a20075104402000101e410247044010000b200241206a200041011018200241206a102b2100200241206a101c220120003a00102001101d0c020b41ef08101a20075104402000101b200241206a101c22032c0010210120024190046a102022002001102c102220002001102d200028020c200041106a28020047044010000b20002802002000280204100c200028020c22010440200020013602100b2003101d0c020b41f808101a20075104402000101e410247044010000b200241206a200041011018200241206a102e2100200241206a101c220141286a20003b01002001101d0c020b418209101a20075104402000101b200241206a101c220341286a2e0100210120024190046a102022002001102f102220002001102d200028020c200041106a28020047044010000b20002802002000280204100c200028020c22010440200020013602100b2003101d0c020b418c09101a20075104402000101e410247044010000b200241206a200041011018200241206a10302100200241206a101c220141406b20003602002001101d0c020b419609101a20075104402000101b200241206a101c220341406b280200210120024190046a1020220020011031102220002001102d200028020c200041106a28020047044010000b20002802002000280204100c200028020c22010440200020013602100b2003101d0c020b41a009101a20075104402000101e410247044010000b200241206a200041011018200241206a10322107200241206a101c220041d8006a20073703002000101d0c020b41aa09101a20075104402000101b200241206a101c220141d8006a290300210720024190046a10202200200710331022200020071034200028020c200041106a28020047044010000b20002802002000280204100c200028020c22030440200020033602100b2001101d0c020b41b409101a20075104402000410210280c020b41bd09101a2007520d002000101b200241d8036a200241206a101c22061010200241e8036a10202100200241a8046a4100360200200241a0046a420037030020024198046a420037030020024200370390044101210102400240024020024180046a200241d8036a1035220428020420022d0080042203410176200341017122051b220341014d0440200341016b0d032004280208200441016a20051b2c0000417f4c0d010c030b200341374b0d010b200341016a21010c010b2003103620036a41016a21010b200220013602900420024190046a4104721037200020011022200020024190046a200241d8036a10352201280208200141016a20022d009004220341017122041b22052001280204200341017620041b22011003200028020422036a103820052001200320002802006a100420001039200028020c200041106a28020047044010000b20002802002000280204100c200028020c22010440200020013602100b2006101d0c010b10000b103a200241b0046a24000b9b0101047f230041106b220124002001200036020c2000047f41dc09200041086a2202411076220041dc092802006a220336020041d80941d809280200220420026a41076a417871220236020002400240200341107420024d044041dc09200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104105b41086a0541000b2100200141106a240020000b0c00200020012002411c103b0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001105520012003280208200328020c105636020c200320011055410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114103b1a200341106a24000f0b20032001105541002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041056105f2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b220124002000103c024002402000103d450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000103e200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101e410147044010000b0b900902067f017e230041d0006b22022400200042eef3cef2f6b389b821370308200041003a0000200041086a200041106a103f450440200020002d00003a00100b200041003b0118200041206a220142efb2bf8ef7d3d8b6283703002001200041286a1040450440200020002f01183b01280b20004100360230200041386a22014290d5dfaef7f3a287303703002001200041406b1041450440200020002802303602400b20004200370348200041d0006a220142b9a8dbe1f793e4b83a3703002001200041d8006a1042450440200020002903483703580b200041003a0060200041e8006a220142cb95cde7afecf49eab7f3703002001200041f0006a1043450440200020002d00603a00700b200041003b017820004180016a220142eacab3c7afcce9cea37f370300200120004188016a1044450440200020002f01783b0188010b200041003602900120004198016a22014281949facaface3dd9c7f3703002001200041a0016a104545044020002000280290013602a0010b200042003703a801200041b0016a22014298fabcf3ae8ca2bf917f3703002001200041b8016a1046450440200020002903a8013703b8010b200041003a00c001200041c8016a220142b6bffcc4dc85fef2d4003703002001200041d0016a103f450440200020002d00c0013a00d0010b200041003b01d801200041e0016a2201429bd6ef9b9798c6c8693703002001200041e8016a1040450440200020002f01d8013b01e8010b200041003602f001200041f8016a2201428cdb84e4ca95dfffb97f370300200120004180026a1041450440200020002802f001360280020b200042003703880220004190026a220142b1f5d0839487e7c850370300200120004198026a10424504402000200029038802370398020b200041003a00a002200041a8026a220142f2fbfddb908cd0de4f3703002001200041b0026a1043450440200020002d00a0023a00b0020b200041003b01b802200041c0026a220142aecbe9ab9381fcda193703002001200041c8026a1044450440200020002f01b8023b01c8020b200041003602d002200041d8026a2201429399f4efc8f2b39b043703002001200041e0026a1045450440200020002802d0023602e0020b200042003703e802200041f0026a220142c494d0d3c1efdc9dd7003703002001200041f8026a1046450440200020002903e8023703f8020b200042003703800320004188036a420037030020004190036a220342fcdbd583fa83aea3da00370300200241386a102022012003290300102a200128020c200141106a28020047044010000b02402001280200220320012802042205100922064504400c010b2002410036023020024200370328200241286a200610472003200520022802282203200228022c220520036b100a417f4704402002200241106a200341016a20052003417f736a1017104820022903002107200041a8036a200241086a290300370300200020073703a003200621040b2003450d002002200336022c0b200128020c22030440200120033602100b200445044020002000290380033703a003200041a8036a20004188036a2903003703000b200241d0006a240020000bb80401087f230041d0006b22022400200241186a1020220320004190036a22012903001029102220032001290300102a200328020c200341106a28020047044010000b2003280204210720032802002108200210202101200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a20002903a003200041a8036a2205290300104920022802302106200241306a41047210372001200241306a104a2204104b2001200620042802046a20042802006b10220240200120002903a0032005290300104c220128020c200141106a280200460440200141046a2105200128020021060c010b200141046a2105100020012802002106200128020c2001280210460d0010000b2008200720062005280200100b200428020022070440200420073602040b200128020c22040440200120043602100b200328020c22010440200320013602100b200041f0026a200041f8026a104d200041d8026a200041e0026a104e200041c0026a200041c8026a104f200041a8026a200041b0026a105020004190026a20004198026a1051200041f8016a20004180026a1052200041e0016a200041e8016a1053200041c8016a200041d0016a1054200041b0016a200041b8016a104d20004198016a200041a0016a104e20004180016a20004188016a104f200041e8006a200041f0006a1050200041d0006a200041d8006a1051200041386a200041406b1052200041206a200041286a1053200041086a200041106a1054200241d0006a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001055200128020c210003402000450d01200141002001280208220320032000105622046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b7d01037f230041106b220124002000103c024002402000103d450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000103e200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b29002000410036020820004200370200200041001057200041146a41003602002000420037020c20000b5601017f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ff0183420010492001280200210020014104721037200141206a240020000b1300200028020820014904402000200110570b0b0c0020002001ad4200104c1a0b880101037f230041106b220124002000103c024002402000103d450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000103e200128020c220041034f044010000b200128020821030340200004402000417f6a210020032d00002002410874722102200341016a21030c010b0b200141106a2400200241ffff03710b5701017f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ffff0383420010492001280200210020014104721037200141206a240020000b830101037f230041106b220124002000103c024002402000103d450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000103e200128020c220041054f044010000b200128020821030340200004402000417f6a210020032d00002002410874722102200341016a21030c010b0b200141106a240020020b5201017f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad420010492001280200210020014104721037200141206a240020000b5102017f017e230041c0036b220224002000101e410247044010000b20022000410110182002101921032002101c2100200220033703b8032002200241b8036a20011100002000101d200241c0036a24000b5101027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000420010492001280200210220014104721037200141206a240020020b0b00200020014200104c1a0b3802017f017e230041106b2201240020012000104820012903002102200141106a2400420020024201837d200242018885a74118744118750b5f02017f017e230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42388622024238872002423f8710582001280200210020014104721037200141206a240020000b1201017e20002001ac22022002423f8710590b3802017f017e230041106b2201240020012000104820012903002102200141106a2400420020024201837d200242018885a74110744110750b5f02017f017e230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42308622024230872002423f8710582001280200210020014104721037200141206a240020000b3202017f017e230041106b2201240020012000104820012903002102200141106a2400420020024201837d200242018885a70b5902017f017e230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ac22022002423f8710582001280200210020014104721037200141206a240020000b4102017f027e230041106b22012400200120001048200141086a290300210320012903002102200141106a2400420020024201837d2003423f86200242018884850b5401027f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120002000423f8710582001280200210220014104721037200141206a240020020b0d00200020012001423f8710590ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101121022000200136020420002004410172360200200020023602080b2002200320011012200120026a41003a000020000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b3601017f200028020820014904402001101620002802002000280204105b210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1038200120002802006a22012002200110020c010b0b0b880101037f41c809410136020041cc092802002100034020000440034041d00941d0092802002201417f6a2202360200200141014845044041c8094100360200200020024102746a22004184016a280200200041046a28020011030041c809410136020041cc0928020021000c010b0b41d009412036020041cc09200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105d20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105d20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000103c200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001105a2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bc10101057f230041406a22022400200241286a102022032000290300102a200328020c200341106a28020047044010000b02402003280200220020032802042205100922064504400c010b2002410036022020024200370318200241186a200610472000200520022802182200200228021c220520006b100a417f47044020012002200041016a20052000417f736a1017102b3a0000200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040bc10101057f230041406a22022400200241286a102022032000290300102a200328020c200341106a28020047044010000b02402003280200220020032802042205100922064504400c010b2002410036022020024200370318200241186a200610472000200520022802182200200228021c220520006b100a417f47044020012002200041016a20052000417f736a1017102e3b0100200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040bc10101057f230041406a22022400200241286a102022032000290300102a200328020c200341106a28020047044010000b02402003280200220020032802042205100922064504400c010b2002410036022020024200370318200241186a200610472000200520022802182200200228021c220520006b100a417f47044020012002200041016a20052000417f736a10171030360200200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040bc10101057f230041406a22022400200241286a102022032000290300102a200328020c200341106a28020047044010000b02402003280200220020032802042205100922064504400c010b2002410036022020024200370318200241186a200610472000200520022802182200200228021c220520006b100a417f47044020012002200041016a20052000417f736a10171032370300200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040bc10101057f230041406a22022400200241286a102022032000290300102a200328020c200341106a28020047044010000b02402003280200220020032802042205100922064504400c010b2002410036022020024200370318200241186a200610472000200520022802182200200228021c220520006b100a417f47044020012002200041016a20052000417f736a1017101f3a0000200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040bc10101057f230041406a22022400200241286a102022032000290300102a200328020c200341106a28020047044010000b02402003280200220020032802042205100922064504400c010b2002410036022020024200370318200241186a200610472000200520022802182200200228021c220520006b100a417f47044020012002200041016a20052000417f736a101710243b0100200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040bc10101057f230041406a22022400200241286a102022032000290300102a200328020c200341106a28020047044010000b02402003280200220020032802042205100922064504400c010b2002410036022020024200370318200241186a200610472000200520022802182200200228021c220520006b100a417f47044020012002200041016a20052000417f736a10171026360200200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040bc10101057f230041406a22022400200241286a102022032000290300102a200328020c200341106a28020047044010000b02402003280200220020032802042205100922064504400c010b2002410036022020024200370318200241186a200610472000200520022802182200200228021c220520006b100a417f47044020012002200041016a20052000417f736a10171019370300200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001101121060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001105b1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b9e0102027f027e230041106b220224002001103c024002402001103d450d002001280204450d0020012802002d000041c001490d010b10000b200241086a2001103e200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000ba40101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103620036a0520030b41016a21040b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020046a3602000b3a01017f20004100360208200042003702002000410110112201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105720002802040520020b20002802006a20032001105b1a2000200028020420016a3602040b2a01017f2000200220011005200028020422036a103820022001200320002802006a10062000103920000b8a0201067f230041406a22042400200441286a1020220220002903001029102220022000290300102a200228020c200241106a28020047044010000b2002280204210620022802002107200441106a1020210020012903001029210520002004104a2203104b2000200520032802046a20032802006b102220002001290300102a0240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b2007200620052001280200100b200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000b8a0201067f230041406a22042400200441286a1020220220002903001029102220022000290300102a200228020c200241106a28020047044010000b2002280204210620022802002107200441106a1020210020012802001027210520002004104a2203104b2000200520032802046a20032802006b10222000200128020010230240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b2007200620052001280200100b200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000b8a0201067f230041406a22042400200441286a1020220220002903001029102220022000290300102a200228020c200241106a28020047044010000b2002280204210620022802002107200441106a1020210020012f01001025210520002004104a2203104b2000200520032802046a20032802006b1022200020012f010010230240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b2007200620052001280200100b200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000b8a0201067f230041406a22042400200441286a1020220220002903001029102220022000290300102a200228020c200241106a28020047044010000b2002280204210620022802002107200441106a1020210020012d00001021210520002004104a2203104b2000200520032802046a20032802006b1022200020012d000010230240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b2007200620052001280200100b200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000b8a0201067f230041406a22042400200441286a1020220220002903001029102220022000290300102a200228020c200241106a28020047044010000b2002280204210620022802002107200441106a1020210020012903001033210520002004104a2203104b2000200520032802046a20032802006b10222000200129030010340240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b2007200620052001280200100b200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000b8a0201067f230041406a22042400200441286a1020220220002903001029102220022000290300102a200228020c200241106a28020047044010000b2002280204210620022802002107200441106a1020210020012802001031210520002004104a2203104b2000200520032802046a20032802006b102220002001280200102d0240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b2007200620052001280200100b200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000b8a0201067f230041406a22042400200441286a1020220220002903001029102220022000290300102a200228020c200241106a28020047044010000b2002280204210620022802002107200441106a1020210020012f0100102f210520002004104a2203104b2000200520032802046a20032802006b1022200020012e0100102d0240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b2007200620052001280200100b200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000b8a0201067f230041406a22042400200441286a1020220220002903001029102220022000290300102a200228020c200241106a28020047044010000b2002280204210620022802002107200441106a1020210020012d0000102c210520002004104a2203104b2000200520032802046a20032802006b1022200020012c0000102d0240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b2007200620052001280200100b200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000b2101017f2001105a220220012802044b044010000b200020012001105e2002105f0b2701017f230041206b22022400200241086a200020014114103b105d2100200241206a240020000b2f01017f200028020820014904402001101620002802002000280204105b210220002001360208200020023602000b0b2301017e20002002423f87220320014201868520024201862001423f888420038510490b2401017e20002002423f87220320014201868520024201862001423f8884200385104c1a0bff0201037f200028020445044041000f0b2000103c41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3501017f230041106b220041e0890436020c41d409200028020c41076a417871220036020041d809200036020041dc093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000105e2000105a6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000bbe0202027f047e2000027e2002500440420021022001420a800c010b0240027e200141fd00200279a76b220341c000460d001a2003413f4d0440200241c00020036bad22058620012003ad2207888421062002200788210820012005862107420021050c020b200241800120036bad2205862001200341406aad22068884210720022006882106200120058621050c010b21072002210641c00021030b03402003044020084201862006423f888422022002427f8542007c20064201862007423f88842206427f852202420a7c200254ad7c423f8722024200837d20062002420a83220154ad7d2108200620017d210620074201862005423f888421072003417f6a21032004ad20054201868421052002a741017121040c010b0b20074201862005423f888421022004ad2005420186427e83840b370300200020023703080b0bcd0101004180080bc5013031323334353637383900696e6974007365745f75696e7438006765745f75696e7438007365745f75696e743136006765745f75696e743136007365745f75696e743332006765745f75696e743332007365745f75696e743634006765745f75696e743634007365745f696e7438006765745f696e7438007365745f696e743136006765745f696e743136007365745f696e743332006765745f696e743332007365745f696e743634006765745f696e743634007365745f75313238006765745f75313238"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SET_UINT16 = "set_uint16"; - - public static final String FUNC_SET_U128 = "set_u128"; - - public static final String FUNC_GET_U128 = "get_u128"; - - public static final String FUNC_SET_UINT8 = "set_uint8"; - - public static final String FUNC_GET_UINT8 = "get_uint8"; - - public static final String FUNC_GET_UINT16 = "get_uint16"; - - public static final String FUNC_SET_UINT32 = "set_uint32"; - - public static final String FUNC_GET_UINT32 = "get_uint32"; - - public static final String FUNC_SET_UINT64 = "set_uint64"; - - public static final String FUNC_GET_UINT64 = "get_uint64"; - - public static final String FUNC_SET_INT8 = "set_int8"; - - public static final String FUNC_GET_INT8 = "get_int8"; - - public static final String FUNC_SET_INT16 = "set_int16"; - - public static final String FUNC_GET_INT16 = "get_int16"; - - public static final String FUNC_SET_INT32 = "set_int32"; - - public static final String FUNC_GET_INT32 = "get_int32"; - - public static final String FUNC_SET_INT64 = "set_int64"; - - public static final String FUNC_GET_INT64 = "get_int64"; - - protected BasicDataIntegerTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BasicDataIntegerTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall set_uint16(Uint16 value) { - final WasmFunction function = new WasmFunction(FUNC_SET_UINT16, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_uint16(Uint16 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_UINT16, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall set_u128(Uint64 value) { - final WasmFunction function = new WasmFunction(FUNC_SET_U128, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_u128(Uint64 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_U128, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_u128() { - final WasmFunction function = new WasmFunction(FUNC_GET_U128, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BasicDataIntegerTypeContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BasicDataIntegerTypeContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BasicDataIntegerTypeContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BasicDataIntegerTypeContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall set_uint8(Uint8 value) { - final WasmFunction function = new WasmFunction(FUNC_SET_UINT8, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_uint8(Uint8 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_UINT8, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_uint8() { - final WasmFunction function = new WasmFunction(FUNC_GET_UINT8, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall get_uint16() { - final WasmFunction function = new WasmFunction(FUNC_GET_UINT16, Arrays.asList(), Uint16.class); - return executeRemoteCall(function, Uint16.class); - } - - public RemoteCall set_uint32(Uint32 value) { - final WasmFunction function = new WasmFunction(FUNC_SET_UINT32, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_uint32(Uint32 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_UINT32, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_uint32() { - final WasmFunction function = new WasmFunction(FUNC_GET_UINT32, Arrays.asList(), Uint32.class); - return executeRemoteCall(function, Uint32.class); - } - - public RemoteCall set_uint64(Uint64 value) { - final WasmFunction function = new WasmFunction(FUNC_SET_UINT64, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_uint64(Uint64 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_UINT64, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_uint64() { - final WasmFunction function = new WasmFunction(FUNC_GET_UINT64, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall set_int8(Int8 value) { - final WasmFunction function = new WasmFunction(FUNC_SET_INT8, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_int8(Int8 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_INT8, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_int8() { - final WasmFunction function = new WasmFunction(FUNC_GET_INT8, Arrays.asList(), Int8.class); - return executeRemoteCall(function, Int8.class); - } - - public RemoteCall set_int16(Int16 value) { - final WasmFunction function = new WasmFunction(FUNC_SET_INT16, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_int16(Int16 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_INT16, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_int16() { - final WasmFunction function = new WasmFunction(FUNC_GET_INT16, Arrays.asList(), Int16.class); - return executeRemoteCall(function, Int16.class); - } - - public RemoteCall set_int32(Int32 value) { - final WasmFunction function = new WasmFunction(FUNC_SET_INT32, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_int32(Int32 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_INT32, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_int32() { - final WasmFunction function = new WasmFunction(FUNC_GET_INT32, Arrays.asList(), Int32.class); - return executeRemoteCall(function, Int32.class); - } - - public RemoteCall set_int64(Int64 value) { - final WasmFunction function = new WasmFunction(FUNC_SET_INT64, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_int64(Int64 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_INT64, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_int64() { - final WasmFunction function = new WasmFunction(FUNC_GET_INT64, Arrays.asList(), Int64.class); - return executeRemoteCall(function, Int64.class); - } - - public static BasicDataIntegerTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BasicDataIntegerTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BasicDataIntegerTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BasicDataIntegerTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/BasicDataTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/BasicDataTypeContract.java deleted file mode 100644 index dd1ce6a939..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/BasicDataTypeContract.java +++ /dev/null @@ -1,238 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class BasicDataTypeContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001591060027f7f0060017f017f60017f0060037f7f7f0060000060027f7f017f60037f7e7e0060047f7f7f7f0060037f7f7f017f60027f7e0060047f7f7f7f017f60017e017f60017f017e60037e7e7f006000017f60027e7e017f02bd020e03656e760c706c61746f6e5f70616e6963000403656e760d706c61746f6e5f63616c6c6572000203656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000a03656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e000003525104020100000501020003010800000700020300010105000203040108030201000c0001000102020101000001000100000101000c0b09040a010005090b010002080100000606000606010304010107020004050170010c0c05030100020608017f0141c08a040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000e0f5f5f66756e63735f6f6e5f65786974004406696e766f6b6500270911010041010b0b0f10121415160f0f210f220adc7351040010590b0300010b070020002d00100b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210580b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b20031018220120042002101f200020023602042000200341017236020020002001360208200120026a41003a00000b0b0d002000200141c8006a10131a0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204101720000b2c01017f027f200041c8006a2d000022014101710440200041cc006a2802000c010b20014101760b41ff01710b6401037f230041206b22012400200141186a22024100360200200141106a2203420037030020014200370308200141086a100120004188016a200228020036000020004180016a2003290300370000200041f8006a2001290308370000200141206a24000bca0b01087f230041e0006b22022400200241086a4100360200200242003703000240034020044180086a2203410371044020044103460d02200441016a21040c010b0b200441fc076a21030340200341046a22032802002204417f73200441fffdfb776a7141808182847871450d000b0340200441ff0171450d01200341016a2d00002104200341016a21030c000b000b200241800820034180086b101741002103200241003602382002420037033041141018200141f8006a411410192105410021014100210403402001411446044002402003044020022004410520036b74411f713a0050200241306a200241d0006a101a0b410021032002410036024820024200370340200241406b200228020420022d0000220441017620044101711b410174410172101b2002410172210503402003200228020420022d00002204410176200441017122041b22014f0d01200228024020036a2002280208200520041b20036a2d000022044105763a00002002280240200228020420022d0000220141017620014101711b6a20036a41016a2004411f713a0000200341016a21030c000b000b05200120056a2d0000200441087441801e71722104200341086a210303402003410548450440200220042003417b6a220376411f713a0050200241306a200241d0006a101a0c010b0b200141016a21010c010b0b200228024020016a41003a0000200241d0006a200241406b20022802302002280234101c200228024022030440200220033602440b200241d0006a200228025420022802506b41066a101b2002280254200228025022016b21044101210303402004044020012d000041002003411d764101716b41b3c5d1d0027141002003411c764101716b41dde788ea037141002003411b764101716b41fab384f5017141002003411a764101716b41ed9cc2b20271410020034119764101716b41b2afa9db0371200341057441e0ffffff037173737373737321032004417f6a2104200141016a21010c010b0b410021042002410036022820024200370320200241206a4106101b200341017321014119210303402003417b46450440200228022020046a2001200376411f713a00002003417b6a2103200441016a21040c010b0b200228025022030440200220033602540b20024100360218200242003703100240200228023420022802306b2203450d00200241106a2003101d2002280234200228023022046b22034101480d0020022802142004200310191a2002200228021420036a3602140b200241d0006a200241106a20022802202002280224101c200228021022030440200220033602140b20004200370200200041086a41003602002000101e2002280208200520022d0000220341017122041b210102402002280204200341017620041b220341016a410a4d0440200020034101743a0000200041016a21040c010b200341116a4170712205101821042000200336020420002005410172360200200020043602080b200420012003101f200320046a41003a00002000413110200240200028020420002d00002205410176200541017122071b2204200420022802542203200228025022016b6a2206200420064b1b220641106a417071417f6a410a2006410a4b1b220620002802002209417e71417f6a410a20071b2208460d00027f2006410a4604402009200520071b2107200041016a21054100210820002802080c010b4100200620084d200641016a101822051b0d0120002d0000220741017104404101210820002802080c010b41012108200041016a0b2109200520092000280204200741fe017141017620074101711b41016a101f2008044020002005360208200020043602042000200641016a4101723602000c010b200020044101743a00000b2001210403402001200346450440200020042d00004184086a2c00001020200441016a21042003417f6a21030c010b0b20010440200220013602540b200228022022030440200220033602240b200228023022030440200220033602340b200241e0006a24000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101821032000200236020420002004410172360200200020033602080b200320012002101f200220036a41003a00000b0b002000410120001b10280bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10232105200241186a200041086a3602004100210320024100360214200504402005101821030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a1024200241086a10250b200241206a24000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110232106200241186a200041086a3602002002410036021441002101200604402006101821010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1024200241086a10250c010b200520014d0d002000200120046a3602040b200241206a24000bc60301057f230041206b22042400200128020421050240200320026b22064101480d002006200128020820056b4c0440034020022003460d02200520022d00003a00002001200128020441016a2205360204200241016a21020c000b000b2001200520066a200128020022066b10232108200441186a200141086a36020020044100360214200520066b2106200804402008101821070b200420073602082004200620076a22063602102004200720086a3602142004200636020c200441086a410472210703402002200346450440200620022d00003a00002004200428021041016a2206360210200241016a21020c010b0b200128020020052007102602402001280204220320056b220241004c0440200428021021020c010b2004200428021020052002101920026a2202360210200128020421030b20012002360204200128020021022001200428020c3602002001280208210520012004280214360208200420033602102004200236020c2004200536021420042002360208200441086a1025200128020421050b20002005360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000b2001017f2000200110182202360200200020023602042000200120026a3602080b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b10002002044020002001200210191a0b0bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b20031018220220062005101f20002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b040041030b040041020b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b6701017f20002802002000280204200141046a1026200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b270020022002280200200120006b22016b2202360200200141014e044020022000200110191a0b0bbf0802047f017e23004180026b22012400105910082200102822031009200141286a200120032000102922024100102a200141286a102b02400240200141286a102c450d00200128022c450d0020012802282d000041c001490d010b10000b200141e8016a200141286a102d20012802ec01220041094f044010000b20012802e80121030340200004402000417f6a210020033100002004420886842104200341016a21030c010b0b024002402004500d0041a508102e200451044020024101102f0c020b41aa08102e2004510440200141003a00e80120021030410247044010000b200141286a20024101102a200141286a200141e8016a1031200141286a1032220041286a20012d00e8013a0000200010330c020b41b308102e200451044020021034200141286a1032220241286a2d00002103200141e8016a10352200200310361037200020031038200028020c200041106a28020047044010000b20002802002000280204100d200028020c22030440200020033602100b200210330c020b41bc08102e200451044020021030410247044010000b200141286a20024101102a200141286a10392100200141286a1032220320003a0010200310330c020b41c508102e200451044020024102103a0c020b41ce08102e2004510440200141186a103b210020021030410247044010000b200141286a20024101102a200141286a2000103c200141286a1032220341c8006a200141e8016a200010131011200310330c020b41d908102e200451044020024103103d0c020b41e408102e200451044020024104103a0c020b41f608102e200451044020024105102f0c020b418209102e200451044020024106103d0c020b418e09102e200451044020024107102f0c020b41a309102e200451044020021030410247044010000b200141286a20024101102a200141286a103e2100200141286a1032220341a0016a2000360200200310330c020b41ac09102e200451044020021034200141286a1032220241a0016a2802002103200141e8016a103522002003103f1037200020031040200028020c200041106a28020047044010000b20002802002000280204100d200028020c22030440200020033602100b200210330c020b41b509102e200451044020021030410247044010000b200141286a20024101102a200141286a10412104200141286a1032220041b8016a2004370300200010330c020b41c309102e200451044020021034200141286a1032220341b8016a2903002104200141e8016a10352200200410421037200020041043200028020c200041106a28020047044010000b20002802002000280204100d200028020c22020440200020023602100b200310330c020b41d109102e200451044020024108102f0c020b41e309102e200451044020024109103a0c020b41f709102e20045104402002410a102f0c020b41860a102e2004520d002002410b103a0c010b10000b104420014180026a24000b9b0101047f230041106b220124002001200036020c2000047f41b40a200041086a2202411076220041b40a2802006a220336020041b00a41b00a280200220420026a41076a417871220236020002400240200341107420024d044041b40a200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101941086a0541000b2100200141106a240020000b0c00200020012002411c10450bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104720012003280208200328020c104836020c200320011047410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410451a200341106a24000f0b20032001104741002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041048105c2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000102b200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110462204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2b01017f230041c0016b22022400200010342002103221002002200111020020001033200241c0016a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001047200128020c210003402000450d01200141002001280208220320032000104822046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b0e002001200010394100473a00000baf0d02087f027e23004180016b22012400200042fc98dba9ab839be350370308200041003a0000200141e8006a1035220420002903081049200428020c200441106a28020047044010000b02402004280200220520042802042206100a2202450d002001410036023820014200370330200141306a2002101b2005200620012802302207200128023420076b100b417f4704402000200141d0006a2001280230220341016a20012802342003417f736a102910393a0010200221030b20012802302202450d00200120023602340b200428020c22020440200420023602100b2003450440200020002d00003a00100b41002103200041003a0018200041206a220242968c9991e6b6cdbc10370300200141e8006a1035220420022903001049200428020c200441106a28020047044010000b02402004280200220520042802042206100a2202450d002001410036023820014200370330200141306a2002101b2005200620012802302207200128023420076b100b417f470440200141d0006a2001280230220341016a20012802342003417f736a1029200041286a1031200221030b20012802302202450d00200120023602340b200428020c22020440200420023602100b2003450440200020002d00183a00280b200041306a103b2108200041406b220342afd4c6d0e0bbf58f997f370300200041c8006a103b2105200141e8006a1035220420032903001049200428020c200441106a28020047044010000b02402004280200220620042802042207100a2202450440410021030c010b410021032001410036023820014200370330200141306a2002101b2006200720012802302206200128023420066b100b417f470440200141d0006a2001280230220341016a20012802342003417f736a10292005103c200221030b20012802302202450d00200120023602340b200428020c22020440200420023602100b20034504402005200810110b2000420037005841002102200041e8006a4100360000200041e0006a4200370000200041f8006a22034200370000200041f0006a220542bd99e48abf9ec995f30037030020004180016a420037000020004188016a4100360000200141e8006a1035220420052903001049200428020c200441106a28020047044010000b02402004280200220620042802042207100a2205450d002001410036021020014200370308200141086a2005101b2006200720012802082208200128020c20086b100b417f470440200141d0006a2001280208220241016a200128020c2002417f736a10292206102b200141c8006a2006102d200128024c2102024002402006280204450d00200241144b0d0020062802002d000041c001490d010b10000b200141406b22064100360200200141386a220742003703002001420037033020012002411420024114491b22026b41c4006a2001280248200210191a200141286a20062802002202360200200141206a2007290300220937030020012001290330220a370318200341106a2002360000200341086a20093700002003200a370000200521020b20012802082205450d002001200536020c0b200428020c22050440200420053602100b20024504402003200041d8006a2204290300370300200341106a200441106a280200360200200341086a200441086a2903003703000b41002103200041003602900120004198016a220242f3f085b2eccfa2b350370300200141e8006a1035220420022903001049200428020c200441106a28020047044010000b02402004280200220520042802042206100a2202450d002001410036023820014200370330200141306a2002101b2005200620012802302207200128023420076b100b417f4704402000200141d0006a2001280230220341016a20012802342003417f736a1029103e3602a001200221030b20012802302202450d00200120023602340b200428020c22020440200420023602100b200345044020002000280290013602a0010b200042003703a801200041b0016a220342dbd6fe89ae8df2dadf00370300200141e8006a1035220420032903001049200428020c200441106a28020047044010000b02402004280200220520042802042206100a2202450440410021030c010b410021032001410036023820014200370330200141306a2002101b2005200620012802302207200128023420076b100b417f4704402000200141d0006a2001280230220341016a20012802342003417f736a102910413703b801200221030b20012802302202450d00200120023602340b200428020c22020440200420023602100b2003450440200020002903a8013703b8010b20014180016a240020000b870f02097f027e230041b0016b22022400200241306a10352203200041b0016a2201290300104a1037200320012903001049200328020c200341106a28020047044010000b200328020421052003280200210820024198016a1035210120002903b8011042210620012002104b2204104c2001200620042802046a20042802006b1037200120002903b80110430240200128020c200141106a280200460440200141046a2106200128020021070c010b200141046a2106100020012802002107200128020c2001280210460d0010000b2008200520072006280200100c200428020022050440200420053602040b200128020c22040440200120043602100b200328020c22010440200320013602100b200241306a1035220320004198016a2201290300104a1037200320012903001049200328020c200341106a28020047044010000b200328020421052003280200210820024198016a1035210120002802a001103f210620012002104b2204104c2001200620042802046a20042802006b1037200120002802a00110400240200128020c200141106a280200460440200141046a2106200128020021070c010b200141046a2106100020012802002107200128020c2001280210460d0010000b2008200520072006280200100c200428020022050440200420053602040b200128020c22040440200120043602100b200328020c22010440200320013602100b20024198016a10352204200041f0006a2201290300104a1037200420012903001049200428020c200441106a28020047044010000b200428020421072004280200210920021035210541002101200241c8006a4100360200200241406b4200370300200241386a4200370300200241286a20004188016a2800002203360200200241206a20004180016a290000220a370300200242003703302002200041f8006a2208290000220b370318200241d8006a200a370300200241e0006a2003360200200241f0006a200a370300200241f8006a20033602002002200b3703502002200b37036820024190016a200336020020024188016a200a3703002002200b37038001410121060240034020014114460d0120024180016a20016a2103200141016a210120032d0000450d000b411521060b20022006360230200241306a410472104d2005200241186a104b2203104c2005200328020420066a20032802006b1037200241e0006a200841106a2800002201360200200241d8006a200841086a290000220a37030020022008290000220b370350200241f0006a200a370300200241f8006a200136020020024188016a200a37030020024190016a20013602002002200b3703682002200b37038001200241406b2001360200200241386a200a3703002002200b37033002402005200241306a4114104e220128020c200141106a280200460440200141046a2105200128020021080c010b200141046a2105100020012802002108200128020c2001280210460d0010000b2009200720082005280200100c200328020022050440200320053602040b200128020c22030440200120033602100b200428020c22010440200420013602100b200241306a10352203200041406b2201290300104a1037200320012903001049200041c8006a2105200328020c200341106a28020047044010000b200328020421082003280200210620024198016a103521012005104f210720012002104b2204104c2001200720042802046a20042802006b1037200120024180016a2005101310500240200128020c200141106a280200460440200141046a2105200128020021070c010b200141046a2105100020012802002107200128020c2001280210460d0010000b2006200820072005280200100c200428020022050440200420053602040b200128020c22040440200120043602100b200328020c22010440200320013602100b200241306a10352203200041206a2201290300104a1037200320012903001049200328020c200341106a28020047044010000b200328020421052003280200210820024198016a1035210120002d00281036210620012002104b2204104c2001200620042802046a20042802006b1037200120002d002810380240200128020c200141106a280200460440200141046a2106200128020021070c010b200141046a2106100020012802002107200128020c2001280210460d0010000b2008200520072006280200100c200428020022050440200420053602040b200128020c22040440200120043602100b200328020c22010440200320013602100b200241306a103522032000290308104a1037200320002903081049200328020c200341106a28020047044010000b200328020421052003280200210820024198016a1035210120002d00101036210620012002104b2204104c2001200620042802046a20042802006b1037200120002d001010380240200128020c200141106a280200460440200141046a2106200128020021070c010b200141046a2106100020012802002107200128020c2001280210460d0010000b2008200520072006280200100c200428020022050440200420053602040b200128020c22040440200120043602100b200328020c22010440200320013602100b200241b0016a24000b0e0020001030410147044010000b0b29002000410036020820004200370200200041001051200041146a41003602002000420037020c20000b5601017f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ff018342001052200128020021002001410472104d200141206a240020000b1300200028020820014904402000200110510b0b0b0020002001ad420010530b7d01037f230041106b220124002000102b024002402000102c450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000102d200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b7901027f230041e0016b2202240020001034200241086a10322103200241086a20011101002100200241c8016a10352201200010361037200120001038200128020c200141106a28020047044010000b20012802002001280204100d200128020c22000440200120003602100b20031033200241e0016a24000b190020004200370200200041086a41003602002000101e20000bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a103b1a0c010b200241186a2000102d2000104621030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101821032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a101e200241206a24000b8d0101027f23004180026b2202240020001034200241086a10322103200241c8016a200241086a2001110000200241e8016a10352201200241c8016a104f10372001200241d8016a200241c8016a10131050200128020c200141106a28020047044010000b20012802002001280204100d200128020c22000440200120003602100b2003103320024180026a24000b3202017f017e230041106b2201240020012000105420012903002102200141106a2400420020024201837d200242018885a70b5902017f017e230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ac22022002423f871055200128020021002001410472104d200141206a240020000b1201017e20002001ac22022002423f8710560b4102017f027e230041106b22012400200120001054200141086a290300210320012903002102200141106a2400420020024201837d2003423f86200242018884850b5401027f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120002000423f871055200128020021022001410472104d200141206a240020020b0d00200020012001423f8710560b880101037f41a00a410136020041a40a2802002100034020000440034041a80a41a80a2802002201417f6a2202360200200141014845044041a00a4100360200200020024102746a22004184016a280200200041046a28020011020041a00a410136020041a40a28020021000c010b0b41a80a412036020041a40a200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105a20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105a20024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000102b41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2101017f20011046220220012802044b044010000b200020012001105b2002105c0b2701017f230041206b22022400200241086a2000200141141045105a2100200241206a240020000b0a0020002001420010530b5101027f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200042001052200128020021022001410472104d200141206a240020020b3000200041003602082000420037020020004101101d200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105120002802040520020b20002802006a2003200110191a2000200028020420016a3602040b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b2a01017f2000200120021004200028020422036a105e20012002200320002802006a10052000105d20000bb80101047f230041306b22012400200141286a4100360200200141206a4200370300200141186a42003703002001420037031041012103024002400240200120001013220028020420002d00002202410176200241017122041b220241014d0440200241016b0d032000280208200041016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002105720026a41016a21030b20012003360210200141106a410472104d200141306a240020030b2d01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b104e1a0b2f01017f2000280208200149044020011028200028020020002802041019210220002001360208200020023602000b0ba40101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003105720036a0520030b41016a21040b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020046a3602000b2801017f2000200220011006200028020422036a105e20022001200320002802006a10072000105d0b9e0102027f027e230041106b220224002001102b024002402001102c450d002001280204450d0020012802002d000041c001490d010b10000b200241086a2001102d200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000b2301017e20002002423f87220320014201868520024201862001423f888420038510520b2301017e20002002423f87220320014201868520024201862001423f888420038510530b1e01017f03402000044020004108762100200141016a21010c010b0b20010b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210191a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041c08a0436020c41ac0a200028020c41076a417871220036020041b00a200036020041b40a3f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000105b200010466a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a105e200120002802006a22012002200110030c010b0b0b3601017f2000280208200149044020011028200028020020002802041019210220002001360208200020023602000b200020013602040b0ba70201004180080b9f026174780071707a7279397838676632747664773073336a6e35346b686365366d7561376c00696e6974007365745f626f6f6c006765745f626f6f6c007365745f62797465006765745f62797465007365745f737472696e67006765745f737472696e67006765745f737472696e675f6c656e677468007365745f61646472657373006765745f61646472657373007365745f666c6f61745f747970655f6c6f63616c007365745f6c6f6e67006765745f6c6f6e67007365745f6c6f6e675f6c6f6e67006765745f6c6f6e675f6c6f6e67007365745f656e756d5f76616c6964697479007365745f656e756d5f61737369676e6d656e74007365745f656e756d5f73636f7065007365745f656e756d5f636c6173735f61737369676e6d656e74"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_LONG_LONG = "get_long_long"; - - public static final String FUNC_SET_BOOL = "set_bool"; - - public static final String FUNC_GET_BOOL = "get_bool"; - - public static final String FUNC_SET_BYTE = "set_byte"; - - public static final String FUNC_GET_BYTE = "get_byte"; - - public static final String FUNC_SET_STRING = "set_string"; - - public static final String FUNC_GET_STRING = "get_string"; - - public static final String FUNC_GET_STRING_LENGTH = "get_string_length"; - - public static final String FUNC_SET_FLOAT_TYPE_LOCAL = "set_float_type_local"; - - public static final String FUNC_SET_ADDRESS = "set_address"; - - public static final String FUNC_GET_ADDRESS = "get_address"; - - public static final String FUNC_SET_LONG = "set_long"; - - public static final String FUNC_GET_LONG = "get_long"; - - public static final String FUNC_SET_LONG_LONG = "set_long_long"; - - public static final String FUNC_SET_ENUM_VALIDITY = "set_enum_validity"; - - public static final String FUNC_SET_ENUM_ASSIGNMENT = "set_enum_assignment"; - - public static final String FUNC_SET_ENUM_SCOPE = "set_enum_scope"; - - public static final String FUNC_SET_ENUM_CLASS_ASSIGNMENT = "set_enum_class_assignment"; - - protected BasicDataTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BasicDataTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall get_long_long() { - final WasmFunction function = new WasmFunction(FUNC_GET_LONG_LONG, Arrays.asList(), Int64.class); - return executeRemoteCall(function, Int64.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BasicDataTypeContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BasicDataTypeContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BasicDataTypeContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BasicDataTypeContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall set_bool(Boolean value) { - final WasmFunction function = new WasmFunction(FUNC_SET_BOOL, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_bool(Boolean value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_BOOL, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_bool() { - final WasmFunction function = new WasmFunction(FUNC_GET_BOOL, Arrays.asList(), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall set_byte(Uint8 value) { - final WasmFunction function = new WasmFunction(FUNC_SET_BYTE, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_byte(Uint8 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_BYTE, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_byte() { - final WasmFunction function = new WasmFunction(FUNC_GET_BYTE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall set_string(String value) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_string(String value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall get_string_length() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING_LENGTH, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall set_float_type_local() { - final WasmFunction function = new WasmFunction(FUNC_SET_FLOAT_TYPE_LOCAL, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_float_type_local(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_FLOAT_TYPE_LOCAL, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall set_address() { - final WasmFunction function = new WasmFunction(FUNC_SET_ADDRESS, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_address(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_ADDRESS, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_address() { - final WasmFunction function = new WasmFunction(FUNC_GET_ADDRESS, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall set_long(Int32 value) { - final WasmFunction function = new WasmFunction(FUNC_SET_LONG, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_long(Int32 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_LONG, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_long() { - final WasmFunction function = new WasmFunction(FUNC_GET_LONG, Arrays.asList(), Int32.class); - return executeRemoteCall(function, Int32.class); - } - - public RemoteCall set_long_long(Int64 value) { - final WasmFunction function = new WasmFunction(FUNC_SET_LONG_LONG, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_long_long(Int64 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_LONG_LONG, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall set_enum_validity() { - final WasmFunction function = new WasmFunction(FUNC_SET_ENUM_VALIDITY, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_enum_validity(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_ENUM_VALIDITY, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall set_enum_assignment() { - final WasmFunction function = new WasmFunction(FUNC_SET_ENUM_ASSIGNMENT, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall set_enum_scope() { - final WasmFunction function = new WasmFunction(FUNC_SET_ENUM_SCOPE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_enum_scope(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_ENUM_SCOPE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall set_enum_class_assignment() { - final WasmFunction function = new WasmFunction(FUNC_SET_ENUM_CLASS_ASSIGNMENT, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public static BasicDataTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BasicDataTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BasicDataTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/BindFunctionContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/BindFunctionContract.java deleted file mode 100644 index b15dc1a1ef..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/BindFunctionContract.java +++ /dev/null @@ -1,93 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class BindFunctionContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60017f017f60027f7f0060017f0060037f7f7f017f60027f7f017f60000060037f7f7f0060047f7f7f7f017f60047f7f7f7f0060027f7e0060037e7e7f006000017f60027f7e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000603656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000603656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0001034e4d050003000200000400020000010300010300010305000301040702010e020002000902010c010500000907010203000204030601020001010001030102020301010001030702030606050000080405017001191905030100020608017f0141f089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003306696e766f6b650021091e010041010b180f140e12131516171916161a161b1c16161d161e1f1616200af3594d040010560b4001017f230041206b2200240020004201370204200041d008360200200020003602102000200041186a36020c20001010210120001011200041206a240020010b0700200120026a0b3d01017f230041106b22012400200141053602082001410136020c20002001410c6a200141086a20002802002802181103002100200141106a240020000b2f00200020002802102200460440200020002802002802101102000f0b20000440200020002802002802141102000b0b3f01017f230041206b22002400200041ac083602082000420137020c2000200041086a360218200041086a10102101200041086a1011200041206a240020010b3f01017f230041206b2200240020004188083602082000420237020c2000200041086a360218200041086a10102101200041086a1011200041206a240020010b0700200020016a0b040020000b0300010b1c01017f410c101822014188083602002001200029020437020420010b0b002000410120001b10220b14002001418808360200200120002902043702040b14002001280200200228020020002802041104000b2c01017f41101018220141ac08360200200120002902043702042001410c6a2000410c6a28020036020020010b2400200141ac08360200200120002902043702042001410c6a2000410c6a2802003602000b4501027f200041086a280200220441017520006a410c6a2103200028020421002003200128020020022802002004410171047f200328020020006a2802000520000b1103000b2c01017f41101018220141d008360200200120002902043702042001410c6a2000410c6a28020036020020010b2400200141d008360200200120002902043702042001410c6a2000410c6a2802003602000b4801027f2000410c6a280200200041086a28020022044101756a2103200028020421002003200128020020022802002004410171047f200328020020006a2802000520000b1103000bc60502067f017e23004180016b220124001056100722001022220210080240200141086a2002200010232203280208450440200341146a2802002100200328021021020c010b200141e0006a20031024200320012802602001280264102536020c200141206a20031024410021002003027f410020012802202204450d001a410020012802242202200328020c2205490d001a200220052005417f461b210020040b2202360210200341146a2000360200200341003602080b200141206a200220004114102622001027024002402000280204450d00200010270240200028020022042c0000220241004e044020020d010c020b200241807f460d00200241ff0171220541b7014d0440200028020441014d04401000200028020021040b20042d00010d010c020b200541bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021040b200220046a2d0000450d010b2000280204450d0020042d000041c001490d010b10000b200141e0006a200010282001280264220041094f044010000b200128026021020340200004402000417f6a210020023100002006420886842106200241016a21020c010b0b024002402006500d0041ec08102920065104402003102a200141206a102b102c0c020b41f108102920065104402003102a200141206a102b2102200141c8006a102d2100200141f8006a4100360200200141f0006a4200370300200141e8006a420037030020014200370360200141e0006a4206102e20012802602103200141e0006a410472102f200020031030200042061031220028020c200041106a28020047044010000b20002802002000280204100c200028020c22030440200020033602100b2002102c0c020b418309102920065104402003410310320c020b419b09102920065104402003410410320c020b41b70910292006520d002003410510320c010b10000b103320014180016a24000b9b0101047f230041106b220124002001200036020c2000047f41e409200041086a2202411076220041e4092802006a220336020041e00941e009280200220420026a41076a417871220236020002400240200341107420024d044041e409200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104104741086a0541000b2100200141106a240020000b0c00200020012002411c10260b2101017f20011034220220012802044b044010000b2000200120011058200210590b2701017f230041206b22022400200241086a200020014114102610572100200241206a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105720024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105720024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110342204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001035410147044010000b0b900a010f7f230041a0016b22032400200042003702182000428debc585c3a7f9dbf7003703102000410036020820004200370200200041206a4100360200200341206a102d220820002903101036200828020c200841106a28020047044010000b200041186a21062000411c6a2109024020082802002205200828020422041009220a450d00200a101821020340200120026a41003a0000200a200141016a2201470d000b2005200420022001100a417f460440410021010c010b02400240200341086a200241016a200120026a2002417f736a10232201280204450d0020012802002d000041c001490d002001103521022000280220200028021822056b410c6d20024904402006200341c8006a2002200028021c20056b410c6d200041206a103722021038200210390b200341f0006a20014101103a2104200341e0006a20014100103a210c200041206a210d2004280204210120034188016a410172210e0340200c280204200146410020042802082202200c280208461b0d02200341c8006a20012002411c10262101200341386a103b210b02400240200328024c044020032802482d000041c001490d010b20034188016a103b1a0c010b20034180016a20011028200110342102024002400240024020032802800122010440200328028401220520024f0d010b4100210120034190016a4100360200200342003703880141002107410021050c010b20034190016a410036020020034200370388012001200520022002417f461b22076a21052007410a4b0d010b200320074101743a008801200e21020c010b200741106a417071220f101821022003200736028c012003200f4101723602880120032002360290010b03402001200546450440200220012d00003a0000200241016a2102200141016a21010c010b0b200241003a00000b024020032d0038410171450440200341003b01380c010b200328024041003a00002003410036023c20032d0038410171450d00200341003602380b200341406b220220034190016a280200360200200320032903880137033820034188016a103c0240200028021c2201200028022049044020012003290338370200200141086a2002280200360200200b103c20092009280200410c6a3602000c010b20034188016a2006200120062802006b410c6d220141016a103d2001200d1037210120032802900122052003290338370200200541086a2002280200360200200b103c2003200328029001410c6a36029001200620011038200110390b20042004280204220120042802086a410020011b22013602042004280200220204402004200236020820012002102521052004027f2004280204220b4504404100210241000c010b410021024100200428020822072005490d001a200720052005417f461b2102200b0b2201ad2002ad42208684370204200441002004280200220520026b2202200220054b1b3602000c0105200441003602080c010b000b000b10000b200a21010b200828020c22020440200820023602100b024020010d0020002802042205200028020022026b410c6d22042000280220200028021822016b410c6d4d04402004200928020020016b410c6d220a4b044020022002200a410c6c6a22042001103e1a200420052009103f0c020b2006200220052001103e10400c010b200104402006104120004100360220200042003702180b200020062004103d2204104222013602182000200136021c200020012004410c6c6a360220200220052009103f0b200341a0016a240020000bdc08010b7f230041e0006b22022400200241186a102d2108200241c8006a22034100360200200241406b22044200370300200241386a2205420037030020024200370330200241306a2000290310102e20022802302101200241306a410472102f200820011030200820002903101036200828020c200841106a28020047044010000b2008280204210a2008280200210b2002102d210120034100360200200442003703002005420037030020024200370330027f20002802182000411c6a2802004604402002410136023041010c010b200241306a41001043200241d0006a4101722109200028021c210720002802182103037f2003200746047f200241306a41011043200228023005200241d0006a2003104441012105024002400240200228025420022d00502204410176200441017122061b220441014d0440200441016b0d032002280258200920061b2c0000417f4c0d010c030b200441374b0d010b200441016a21050c010b2004104520046a41016a21050b027f200241306a20022802482204450d001a2002280238200420022802446a417f6a220441087641fcffff07716a280200200441ff07714102746a0b2204200428020020056a3602002003410c6a21030c010b0b0b2106200241306a410472102f41011018220341fe013a0000200128020c200141106a28020047044010000b200341016a21052001280204220441016a220720012802084b047f20012007104620012802040520040b20012802006a2003410110471a2001200128020441016a3602042001200620036b20056a10300240200028021c20002802186b220304402003410c6d21032001280204210420012802102205200141146a280200220649044020052003ad2004ad422086843702002001200128021041086a3602100c020b027f41002005200128020c22076b410375220941016a2205200620076b2206410275220720072005491b41ffffffff01200641037541ffffffff00491b2207450d001a200741037410180b2105200520094103746a22062003ad2004ad4220868437020020062001280210200128020c22096b22036b2104200520074103746a2105200641086a2106200341014e044020042009200310471a0b20012005360214200120063602102001200436020c0c010b200141001001200128020422036a104841004100200320012802006a1002200110490b200241306a4101722109200028021c210720002802182103034020032007470440200241306a2003104420012002280238200920022d0030220441017122051b22062002280234200441017620051b22041003200128020422056a104820062004200520012802006a1004200110492003410c6a21030c010b0b0240200128020c2001280210460440200128020021030c010b100020012802002103200128020c2001280210460d0010000b200b200a20032001280204100b200128020c22030440200120033602100b200828020c22010440200820013602100b200041186a104a2000104a200241e0006a24000b29002000410036020820004200370200200041001046200041146a41003602002000420037020c20000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002104520026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002104b21000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000104c200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001104d200441106a24000b1300200028020820014904402000200110460b0b2a01017f2000420020011005200028020422026a104842002001200220002802006a10062000104920000bb90102027f017e230041e0006b220224002000102a2002102b2103200220011100002100200241286a102d2101200241d8006a4100360200200241d0006a4200370300200241c8006a420037030020024200370340200241406b2000ad2204102e20022802402100200241406b410472102f200120001030200120041031220128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b2003102c200241e0006a24000b880101037f41d009410136020041d4092802002100034020000440034041d80941d8092802002201417f6a2202360200200141014845044041d0094100360200200020024102746a22004184016a280200200041046a28020011020041d009410136020041d40928020021000c010b0b41d809412036020041d409200028020022003602000c010b0b0bff0201037f200028020445044041000f0b2000102741012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001024200128020c210003402000450d01200141002001280208220320032000102522046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b09002000200110311a0b4c01017f2000410036020c200041106a2003360200200104402001104221040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000baa0101037f200028020421022000280200210303402002200346450440200128020441746a2204200241746a2202290200370200200441086a200241086a2802003602002002103c2001200128020441746a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001102420004100200428020c2201200428020822022001102522032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b190020004200370200200041086a41003602002000103c20000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0bd00201077f200120006b2108410021010340200120026a2105200120084645044002402005200020016a2203460d00200341046a28020020032d00002204410176200441017122071b2104200341016a2106200341086a2802002109410a21032009200620071b210720052d0000410171220604402005280200417e71417f6a21030b200420034d0440027f20060440200541086a2802000c010b200541016a0b21032004044020032007200410540b200320046a41003a000020052d00004101710440200541046a20043602000c020b200520044101743a00000c010b416f2106200341e6ffffff074d0440410b20034101742203200420042003491b220341106a4170712003410b491b21060b200610182203200720041055200541046a200436020020052006410172360200200541086a2003360200200320046a41003a00000b2001410c6a21010c010b0b20050b2d000340200020014645044020022802002000104420022002280200410c6a3602002000410c6a21000c010b0b0b0900200020013602040b0b002000200028020010400b09002000410c6c10180bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203104b280200210120022003417f6a3602002007104e4180104f044020072000410c6a280200417c6a104d0b200141384f047f2001104520016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002104b21000c010b02402007104e0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a104f0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010182105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1050220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10512102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021052200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a105322013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10512102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021052200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a104f0c010b20042001410175410120011b200320051051210241802010182106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a105022013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200105121032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031052200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021052052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a105322013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210105121062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061052200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007104c200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b9d0101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a2802003602000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101821022000200136020420002004410172360200200020023602080b2002200320011055200120026a41003a00000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b2f01017f2000280208200149044020011022200028020020002802041047210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3601017f2000280208200149044020011022200028020020002802041047210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1048200120002802006a22012002200110020c010b0b0b0e0020002802000440200010410b0b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a105022023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10512103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031052200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110540b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101821040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110540b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210471a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b10002002044020002001200210471a0b0b3501017f230041106b220041f0890436020c41dc09200028020c41076a417871220036020041e009200036020041e4093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001058200010346a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0bc40103004188080b19060000000700000008000000090000000a0000000b0000000c0041ac080b19060000000d0000000e0000000f0000001000000011000000120041d0080b7f06000000130000001400000015000000160000001700000018000000696e6974006765745f62696e645f66756e6374696f6e006765745f62696e645f636c6173735f66756e6374696f6e006765745f62696e645f636c6173735f66756e6374696f6e5f6f6e65006765745f62696e645f7374617469635f66756e6374696f6e"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_BIND_CLASS_FUNCTION_ONE = "get_bind_class_function_one"; - - public static final String FUNC_GET_BIND_STATIC_FUNCTION = "get_bind_static_function"; - - public static final String FUNC_GET_BIND_CLASS_FUNCTION = "get_bind_class_function"; - - public static final String FUNC_GET_BIND_FUNCTION = "get_bind_function"; - - protected BindFunctionContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BindFunctionContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall get_bind_class_function_one() { - final WasmFunction function = new WasmFunction(FUNC_GET_BIND_CLASS_FUNCTION_ONE, Arrays.asList(), Uint32.class); - return executeRemoteCall(function, Uint32.class); - } - - public RemoteCall get_bind_static_function() { - final WasmFunction function = new WasmFunction(FUNC_GET_BIND_STATIC_FUNCTION, Arrays.asList(), Uint32.class); - return executeRemoteCall(function, Uint32.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BindFunctionContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BindFunctionContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BindFunctionContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BindFunctionContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall get_bind_class_function() { - final WasmFunction function = new WasmFunction(FUNC_GET_BIND_CLASS_FUNCTION, Arrays.asList(), Uint32.class); - return executeRemoteCall(function, Uint32.class); - } - - public RemoteCall get_bind_function() { - final WasmFunction function = new WasmFunction(FUNC_GET_BIND_FUNCTION, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public static BindFunctionContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BindFunctionContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BindFunctionContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BindFunctionContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/BubbleSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/BubbleSort.java deleted file mode 100644 index d212009af8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/BubbleSort.java +++ /dev/null @@ -1,85 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class BubbleSort extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f017f60017f0060037f7f7f017f60000060037f7f7f0060027f7f017f60047f7f7f7f017f60047f7f7f7f0060037f7e7e0060027f7e0060037e7e7f006000017f60027e7e017f60017f017e02fd010b03656e760c706c61746f6e5f70616e6963000403656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000033d3c0405060005010301040103050201000e020102010000010100000407010a0306090200000607000203000002090301000100030702030005040101080405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974002506696e766f6b6500130ae04f3c040010430bb80102057f027e2002417f6a21050340200520034a0440200520036b210620012802002102410021040340200420064e0440200341016a21030c030b20022903002208200241086a2207290300220955044020022009370300200241086a20084220864220873703000b200441016a2104200721020c000b000b0b2000280218044020004200370218200041206a41003602000b20002001290200370218200041206a200128020836020020014100360208200142003702000b3e01017f2000420037020020004100360208200128020420012802006b2202044020002002410375100e20012802002001280204200041046a100f0b20000b2301017f2000200110102202360200200020023602042000200220014103746a3602080b2800200120006b220141014e044020022802002000200110111a2002200228020020016a3602000b0b0900200041037410120bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b0b002000410120001b10140b970402057f017e23004180016b22002400104310052201101422021006200041306a200041186a200220011015220341001016200041306a101702400240200041306a1018450d002000280234450d0020002802302d000041c001490d010b10000b200041e8006a200041306a1019200028026c220141094f044010000b200028026821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008101a20055104402003101b200041306a101c101d0c020b418508101a200551044020004200370370200042003703682003101e410347044010000b200041306a200341011016200041306a200041e8006a101f200041306a200341021016200041086a200041306a1020200020002903082205420188420020054201837d853e0274200041306a101c2102200041306a200041d8006a200041e8006a100d22012000280274100c200128020022030440200120033602040b2002101d20002802682201450d022000200136026c0c020b418a08101a2005520d002003101b200041306a101c2103200041d8006a200041c8006a100d2102200041e8006a10212201200210221023200120021024200128020c200141106a28020047044010000b20012802002001280204100a200128020c22040440200120043602100b200228020022010440200220013602040b2003101d0c010b10000b102520004180016a24000b9b0101047f230041106b220124002001200036020c2000047f41a808200041086a2202411076220041a8082802006a220336020041a40841a408280200220420026a41076a417871220236020002400240200341107420024d044041a808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101141086a0541000b2100200141106a240020000b0c00200020012002411c10260bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102e20012003280208200328020c102f36020c20032001102e410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410261a200341106a24000f0b20032001102e41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102f10462001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001017200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110272204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101e410147044010000b0b800301087f230041306b2207240020004200370218200042b3aed899858e8cbc123703102000410036020820004200370200200041206a4100360200200741186a1021220320002903101028200328020c200341106a28020047044010000b200041186a21050240200328020022062003280204220810072204450d002004101221020340200120026a41003a00002004200141016a2201470d000b20062008200220011008417f460440410021010c010b2007200241016a200120026a2002417f736a10152005101f200421010b200328020c22020440200320023602100b024020010d002000411c6a210120002802042203200028020022046b41037522062000280220200028021822026b4103754d04402006200128020020026b41037522054b04402004200420054103746a2205200210291a200520032001100f0c020b200120042003200210293602000c010b2002044020004100360220200042003702180b200520052006102a100e200420032001100f0b200741306a240020000b9c03010a7f230041406a22022400200241086a10212103200241386a4100360200200241306a4200370300200241286a420037030020024200370320200241206a20002903104200102b20022802202101200241206a410472102c200320011023200320002903101028200328020c200341106a28020047044010000b2003280204210520032802002106200241206a10212101200041186a22071022210841011012220441fe013a0000200128020c200141106a28020047044010000b2001280204220941016a220a20012802084b047f2001200a102d20012802040520090b20012802006a2004410110111a2001200128020441016a3602042001200441016a200820046b6a10232001200710240240200128020c2001280210460440200128020021040c010b100020012802002104200128020c2001280210460d0010000b20062005200420012802041009200128020c22040440200120043602100b200328020c22010440200320013602100b2000280218220104402000411c6a20013602000b200028020022010440200020013602040b200241406b24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102e200128020c210003402000450d01200141002001280208220320032000102f22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf30302077f017e230041e0006b22042400024002402000280204450d0020002802002d000041c001490d002000101e21022001280208200128020022036b41037520024904402001200441106a2002200128020420036b410375200141086a103022021031200210320b200441386a2000410110332102200441286a2000410010332106200141086a210720022802042100034020062802042000464100200228020822032006280208461b0d022004200441106a20002003411c10261020200441086a290300423f862004290300220942018884420020094201837d8521090240200128020422002001280208490440200020093703002001200041086a3602040c010b200441c8006a2001200020012802006b410375220041016a102a20002007103021002004280250220320093703002004200341086a360250200120001031200010320b20022002280204220020022802086a410020001b22003602042002280200220304402002200336020820002003102f21052002027f200228020422004504404100210341000c010b410021034100200228020822082005490d001a200820052005417f461b210320000b2200ad2003ad42208684370204200241002002280200220520036b2203200320054b1b3602000c0105200241003602080c010b000b000b10000b200441e0006a24000b9e0102027f027e230041106b22022400200110170240024020011018450d002001280204450d0020012802002d000041c001490d010b10000b200241086a20011019200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000b2900200041003602082000420037020020004100102d200041146a41003602002000420037020c20000bba0102027f027e230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300027f200028020020002802044604402001410136020041010c010b2001410010342000280204210220002802002100037f2000200246047f2001410110342001280200052001200029030022034201862003423f8722048520044201862003423f8884200485102b200041086a21000c010b0b0b21002001410472102c200141206a240020000b13002000280208200149044020002001102d0b0bf60202067f027e0240200128020420012802006b220204402002410375210220002802042106200041106a2802002203200041146a280200220449044020032002ad2006ad422086843702002000200028021041086a3602100c020b027f41002003200028020c22056b410375220741016a2203200420056b2204410275220520052003491b41ffffffff01200441037541ffffffff00491b2205450d001a200541037410120b2103200320074103746a22042002ad2006ad4220868437020020042000280210200028020c22076b22026b2106200320054103746a2103200441086a2104200241014e044020062007200210111a0b20002003360214200020043602102000200636020c0c010b200041001001200028020422026a103541004100200220002802006a1002200010360b20012802042102200128020021010340200120024704402000200129030022084201862008423f8722098520094201862008423f88842009851037200141086a21010c010b0b0b880101037f419408410136020041980828020021000340200004400340419c08419c082802002201417f6a220236020020014101484504404194084100360200200020024102746a22004184016a280200200041046a280200110200419408410136020041980828020021000c010b0b419c084120360200419808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104420024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104420024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101741012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0a0020002001420010370b2501017f200120006b220141037521032001044020022000200110420b200220034103746a0b3101017f2001200028020820002802006b2200410275220220022001491b41ffffffff01200041037541ffffffff00491b0b890101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103b20036a0520030b41016a21040b200041186a28020022030440200041086a280200200041146a2802002003103821000b2000200028020020046a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001041200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103a200441106a24000b2f01017f2000280208200149044020011014200028020020002802041011210220002001360208200020023602000b0b2101017f20011027220220012802044b044010000b2000200120011045200210460b2701017f230041206b22022400200241086a200020014114102610442100200241206a240020000b4c01017f2000410036020c200041106a2003360200200104402001101021040b200020043602002000200420024103746a22023602082000200420014103746a36020c2000200236020420000b870101037f200120012802042000280204200028020022046b22036b2202360204200341004a044020022004200310111a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141786a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001102e20004100200428020c2201200428020822022001102f22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031038280200210120022003417f6a360200200710394180104f044020072000410c6a280200417c6a103a0b200141384f047f2001103b20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103821000c010b0240200710390d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103c0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010122105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103d220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104022013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103c0c010b20042001410175410120011b20032005103e210241802010122106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103d22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103e21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003103f200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002103f052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104022013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103e21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006103f200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071041200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b3601017f2000280208200149044020011014200028020020002802041011210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1035200120002802006a22012002200110020c010b0b0b2801017f2000200220011003200028020422036a103520022001200320002802006a1004200010360b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103d22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a103e2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003103f200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110420b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101221040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110420b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210111a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041b0880436020c41a008200028020c41076a417871220036020041a408200036020041a8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001045200010276a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b1a01004180080b13696e697400736f7274006765745f6172726179"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SORT = "sort"; - - public static final String FUNC_GET_ARRAY = "get_array"; - - protected BubbleSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected BubbleSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BubbleSort.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BubbleSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BubbleSort.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(BubbleSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall sort(Int64[] arr, Int32 n) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,n), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall sort(Int64[] arr, Int32 n, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,n), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_array() { - final WasmFunction function = new WasmFunction(FUNC_GET_ARRAY, Arrays.asList(), Int64[].class); - return executeRemoteCall(function, Int64[].class); - } - - public static BubbleSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new BubbleSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static BubbleSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new BubbleSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CallValueFunction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CallValueFunction.java deleted file mode 100644 index 5732d5957d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CallValueFunction.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class CallValueFunction extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001420c60017f017f60000060017f0060027f7f0060037f7f7f0060037e7e7f006000017f60027f7f017f60037f7f7f017f60047f7f7f7f017f60027e7e017f60017f017e02c9010903656e7611706c61746f6e5f63616c6c5f76616c7565000003656e760c706c61746f6e5f70616e6963000103656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760d726c705f753132385f73697a65000a03656e760f706c61746f6e5f726c705f75313238000503656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000603656e7610706c61746f6e5f6765745f696e707574000203656e760d706c61746f6e5f72657475726e000303121101010009030702000b02030301080100000405017001010105030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300090f5f5f66756e63735f6f6e5f65786974001506696e766f6b65000a0aa61d11040010170bb80802087f027e230041406a22022400101710062200100b220110070240200241086a20012000411c100c2203280208450440200341146a2802002100200328021021010c010b200241386a2003100d20032002280238200228023c100e36020c200241206a2003100d410021002003027f410020022802202204450d001a410020022802242206200328020c2205490d001a200620052005417f461b210020040b2201360210200341146a2000360200200341003602080b200241206a200120004114100c2200100f024002402000280204450d002000100f0240200028020022042c0000220141004e044020010d010c020b200141807f460d00200141ff0171220541b7014d0440200028020441014d04401001200028020021040b20042d00010d010c020b200541bf014b0d012000280204200141ff017141ca7e6a22014d04401001200028020021040b200120046a2d0000450d010b2000280204450d0020042d000041c001490d010b10010b200010102206200028020422044b04401001200028020421040b20002802002107024002400240200404404100210520072c00002200417f4a0d01027f200041ff0171220541bf014d04404100200041ff017141b801490d011a200541c97e6a0c010b4100200041ff017141f801490d001a200541897e6a0b41016a21050c010b4101210520070d00410021000c010b41002100200520066a20044b0d0020042006490d004100210120042005490d01200520076a2101200420056b20062006417f461b22004109490d0110010c010b410021010b0340200004402000417f6a210020013100002008420886842108200141016a21010c010b0b024002402008500d0041800810112008510440200310120c020b41850810112008520d0020031012230041206b22002400200010002101200041206a24002001210341002100200241003602284200210820024200370320200241206a41001013200241346a41003602002002420037022c4101210120034118744118752203417f4c04402003ad42ff01832109034020082009845045044020084238862009420888842109200041016a2100200842088821080c010b0b024020004138490d002000210103402001450d01200041016a2100200141087621010c000b000b200041016a21010b20022802282001490440200241206a200110130b200241206a42002003ad42ff018322081004200228022422006a1014420020082000200228022022066a10050340024020022802302201200228022c22044622050d00200141786a220028020022034504401001200028020021030b20002003417f6a220336020020030d0020022000360230200241206a2001417c6a2802002200200228022420006b220110026a10142000200228022022066a22002001200010030c010b0b200545044010010b2006200228022410082004450d01200220043602300c010b10010b1015200241406b24000b9b0101047f230041106b220124002001200036020c2000047f41b008200041086a2202411076220041b0082802006a220336020041ac0841ac08280200220420026a41076a417871220236020002400240200341107420024d044041b008200341016a360200200041016a21000c010b2000450d010b200040000d0010010b20042001410c6a4104101641086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000101820024f0d002003410471044010010c010b200042003702000b02402003411071450d002000101820024d0d0020034104710440100120000f0b200042003702000b20000b7201047f20011010220220012802044b044010010b2001101921032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114100c10182100200241206a240020000b4101017f200028020445044010010b0240200028020022012d0000418101470d00200028020441014d047f100120002802000520010b2c00014100480d0010010b0bff0201037f200028020445044041000f0b2000100f41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10010b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000100d41012103200128020c2100034020000440200141002001280208220220022000100e22046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10010b200141106a24000b2f01017f200028020820014904402001100b200028020020002802041016210220002001360208200020023602000b0b3601017f200028020820014904402001100b200028020020002802041016210220002001360208200020023602000b200020013602040b880101037f419c08410136020041a0082802002100034020000440034041a40841a4082802002201417f6a22023602002001410148450440419c084100360200200020024102746a22004184016a280200200041046a280200110200419c08410136020041a00828020021000c010b0b41a408412036020041a008200028020022003602000c010b0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3501017f230041106b220041c0880436020c41a808200028020c41076a417871220036020041ac08200036020041b0083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001019200010106a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b0b2101004180080b1a696e6974006765745f706c61746f6e5f63616c6c5f76616c7565"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_PLATON_CALL_VALUE = "get_platon_call_value"; - - protected CallValueFunction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallValueFunction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CallValueFunction.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CallValueFunction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CallValueFunction.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CallValueFunction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall get_platon_call_value() { - final WasmFunction function = new WasmFunction(FUNC_GET_PLATON_CALL_VALUE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public static CallValueFunction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallValueFunction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallValueFunction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallValueFunction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CallerFunction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CallerFunction.java deleted file mode 100644 index 6d96df94f4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CallerFunction.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class CallerFunction extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000013d0b60027f7f0060017f0060017f017f60000060037f7f7f0060027f7f017f60047f7f7f7f006000017f60037f7f7f017f60047f7f7f7f017f60017f017e02c7010903656e760c706c61746f6e5f70616e6963000303656e760d706c61746f6e5f63616c6c6572000103656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000403656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000703656e7610706c61746f6e5f6765745f696e707574000103656e760d706c61746f6e5f72657475726e000003201f030100000402080006040005000104030209000501020a01000500030302020405017001010105030100020608017f0141e088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300090f5f5f66756e63735f6f6e5f65786974002406696e766f6b6500180ac1371f040010250bd00c01097f230041a0016b220124002001410036023820014200370330200141306a4114100b20012802301001200141186a200141306a100c2001200141306a100c200141c8006a4100360200200142003703400240034020034180086a2202410371044020034103460d02200341016a21030c010b0b200341fc076a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b200141406b41800820024180086b100d4100210220014100360278200142003703704114100e20014114100f21054100210303402004411446044002402002044020012003410520026b74411f713a009001200141f0006a20014190016a10100b410021022001410036028801200142003703800120014180016a200128024420012d0040220341017620034101711b410174410172100b200141406b410172210503402002200128024420012d00402203410176200341017122031b22044f0d0120012802800120026a2001280248200520031b20026a2d000022034105763a0000200128028001200128024420012d0040220441017620044101711b6a20026a41016a2003411f713a0000200241016a21020c000b000b05200420056a2d0000200341087441801e71722103200241086a21020340200241054e0440200120032002417b6a220276411f713a009001200141f0006a20014190016a10100c010b0b200441016a21040c010b0b20012802800120046a41003a000020014190016a20014180016a2001280270200128027410112001280280012202044020012002360284010b20014190016a2001280294012001280290016b41066a100b20012802940120012802900122046b21034101210203402003044020042d000041002002411d764101716b41b3c5d1d0027141002002411c764101716b41dde788ea037141002002411b764101716b41fab384f5017141002002411a764101716b41ed9cc2b20271410020024119764101716b41b2afa9db0371200241057441e0ffffff037173737373737321022003417f6a2103200441016a21040c010b0b410021032001410036026820014200370360200141e0006a4106100b200241017321044119210203402002417b470440200128026020036a2004200276411f713a00002002417b6a2102200341016a21030c010b0b2001280290012202044020012002360294010b20014100360258200142003703500240200128027420012802706b2203450d0020012003100e2202360250200120023602542001200220036a3602582001280274200128027022046b22034101480d00200220042003100f1a2001200128025420036a3602540b20014190016a200141d0006a200128026020012802641011200128025022020440200120023602540b20004200370200200041086a41003602004100210203402002410c470440200020026a4100360200200241046a21020c010b0b2001280248200520012d0040220241017122031b210402402001280244200241017620031b220241016a410a4d0440200020024101743a0000200041016a21030c010b200241116a4170712205100e21032000200236020420002005410172360200200020033602080b2003200420021012200220036a41003a00002000413110130240200028020420002d00002205410176200541017122071b22032003200128029401220220012802900122046b6a2206200320064b1b220641106a417071417f6a410a2006410a4b1b220620002802002209417e71417f6a410a20071b2208460d00027f2006410a4604402009200520071b2107200041016a21054100210820002802080c010b4100200620084d200641016a100e22051b0d0120002d0000220741017104404101210820002802080c010b41012108200041016a0b2109200520092000280204200741fe017141017620074101711b41016a10122008044020002005360208200020033602042000200641016a4101723602000c010b200020034101743a00000b20042103034020022004470440200020032d00004184086a2c00001013200341016a21032002417f6a21020c010b0b2004044020012004360294010b200128026022020440200120023602640b200128027022020440200120023602740b200128023022020440200120023602340b200141a0016a24000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110142106200241186a200041086a3602002002410036021441002101200604402006100e21010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1015200241086a10160c010b200520014d0d002000200120046a3602040b200241206a24000b7d01037f20004200370000200041106a4100360000200041086a4200370000034020024114470440200020026a41003a0000200241016a21020c010b0b200128020021034100210203400240200241134d0440200220036a22042001280204470d010b0f0b200020026a20042d00003a0000200241016a21020c000b000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204100e21032000200236020420002004410172360200200020033602080b2003200120021012200220036a41003a00000b0b002000410120001b10190bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10142105200241186a200041086a3602004100210320024100360214200504402005100e21030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a1015200241086a10160b200241206a24000bc60301057f230041206b22042400200128020421050240200320026b22064101480d002006200128020820056b4c0440034020022003460d02200520022d00003a00002001200128020441016a2205360204200241016a21020c000b000b2001200520066a200128020022066b10142108200441186a200141086a36020020044100360214200520066b2106200804402008100e21070b200420073602082004200620076a22063602102004200720086a3602142004200636020c200441086a410472210703402002200346450440200620022d00003a00002004200428021041016a2206360210200241016a21020c010b0b200128020020052007101702402001280204220320056b220241004c0440200428021021020c010b2004200428021020052002100f20026a2202360210200128020421030b20012002360204200128020021022001200428020c3602002001280208210520012004280214360208200420033602102004200236020c2004200536021420042002360208200441086a1016200128020421050b20002005360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000b100020020440200020012002100f1a0b0bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b2003100e220220062005101220002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b6701017f20002802002000280204200141046a1017200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b270020022002280200200120006b22016b2202360200200141014e0440200220002001100f1a0b0bdd0802087f017e230041e0006b220124001025100622001019220210070240200141086a20022000411c101a2204280208450440200441146a2802002100200428021021020c010b200141d0006a2004101b200420012802502001280254101c36020c200141386a2004101b410021002004027f410020012802382203450d001a4100200128023c2206200428020c2205490d001a200620052005417f461b210020030b2202360210200441146a2000360200200441003602080b200141386a200220004114101a2200101d024002402000280204450d002000101d0240200028020022032c0000220241004e044020020d010c020b200241807f460d00200241ff0171220541b7014d0440200028020441014d04401000200028020021030b20032d00010d010c020b200541bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021030b200220036a2d0000450d010b2000280204450d0020032d000041c001490d010b10000b2000101e2206200028020422034b04401000200028020421030b20002802002107024002400240200304404100210520072c00002200417f4a0d01027f200041ff0171220541bf014d04404100200041ff017141b801490d011a200541c97e6a0c010b4100200041ff017141f801490d001a200541897e6a0b41016a21050c010b4101210520070d00410021000c010b41002100200520066a20034b0d0020032006490d004100210220032005490d01200520076a2102200320056b20062006417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002008420886842108200241016a21020c010b0b02400240024002402008500d0041a508101f2008510440200410200c040b41aa08101f2008520d0020041020200141286a100a2001410036024020014200370338200141386a41001021200141cc006a410036020020014200370244410121020240200141d0006a200141286a1022220428020420012d00502200410176200041017122031b220041014d0440200041016b0d040c010b20004138490d02200041016a210203402000450d04200241016a2102200041087621000c000b000b2004280208200441016a20031b2c0000417f4c0d010c020b10000c020b200041016a21020b20012802402002490440200141386a200210210b200141386a200141d0006a200141286a10222200280208200041016a20012d0050220241017122041b22032000280204200241017620041b22001004200128023c22026a1023200320002002200128023822066a10050340024020012802482202200128024422034622050d00200241786a220028020022044504401000200028020021040b20002004417f6a220436020020040d0020012000360248200141386a2002417c6a2802002200200128023c20006b220210026a10232000200128023822066a22002002200010030c010b0b200545044010000b2006200128023c10082003450d00200120033602480b1024200141e0006a24000b9b0101047f230041106b220124002001200036020c2000047f41d008200041086a2202411076220041d0082802006a220336020041cc0841cc08280200220420026a41076a417871220236020002400240200341107420024d044041d008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104100f41086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000102620024f0d002003410471044010000c010b200042003702000b02402003411071450d002000102620024d0d0020034104710440100020000f0b200042003702000b20000b7201047f2001101e220220012802044b044010000b2001102721032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114101a10262100200241206a240020000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101d41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000101b41012103200128020c2100034020000440200141002001280208220220022000101c22046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10000b200141106a24000b2f01017f200028020820014904402001101920002802002000280204100f210220002001360208200020023602000b0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204100d20000b3601017f200028020820014904402001101920002802002000280204100f210220002001360208200020023602000b200020013602040b880101037f41bc08410136020041c0082802002100034020000440034041c40841c4082802002201417f6a2202360200200141014845044041bc084100360200200020024102746a22004184016a280200200041046a28020011010041bc08410136020041c00828020021000c010b0b41c408412036020041c008200028020022003602000c010b0b0b3501017f230041106b220041e0880436020c41c808200028020c41076a417871220036020041cc08200036020041d0083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010272000101e6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b0b4201004180080b3b6174780071707a7279397838676632747664773073336a6e35346b686365366d7561376c00696e6974006765745f706c61746f6e5f63616c6c6572"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_PLATON_CALLER = "get_platon_caller"; - - protected CallerFunction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CallerFunction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CallerFunction.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CallerFunction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CallerFunction.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CallerFunction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall get_platon_caller() { - final WasmFunction function = new WasmFunction(FUNC_GET_PLATON_CALLER, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static CallerFunction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CallerFunction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CallerFunction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CallerFunction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CoinbaseFunction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CoinbaseFunction.java deleted file mode 100644 index 789f39f7a3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CoinbaseFunction.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class CoinbaseFunction extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000013d0b60027f7f0060017f0060017f017f60000060037f7f7f0060027f7f017f60047f7f7f7f006000017f60037f7f7f017f60047f7f7f7f017f60017f017e02c9010903656e760c706c61746f6e5f70616e6963000303656e760f706c61746f6e5f636f696e62617365000103656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000403656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000703656e7610706c61746f6e5f6765745f696e707574000103656e760d706c61746f6e5f72657475726e0000031f1e0301000402080006040005000104030209000501020a01000500030302020405017001010105030100020608017f0141e088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300090f5f5f66756e63735f6f6e5f65786974002306696e766f6b6500170aaf371e040010240bbc0d01097f23004190016b220124002001410036022820014200370320200141206a4114100b20012802201001200141186a4100360200200141106a420037030020014200370308034020024114470440200141086a20026a41003a0000200241016a21020c010b0b2001280224200128022022046b21034100210203400240200241134b0d0020022003460d00200141086a20026a200220046a2d00003a0000200241016a21020c010b0b41002103200141386a4100360200200142003703300240034020034180086a2202410371044020034103460d02200341016a21030c010b0b200341fc076a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b200141306a41800820024180086b100c4100210220014100360268200142003703604114100d200141086a4114100e2105410021044100210303402004411446044002402002044020012003410520026b74411f713a008001200141e0006a20014180016a100f0b410021022001410036027820014200370370200141f0006a200128023420012d0030220341017620034101711b410174410172100b200141306a410172210503402002200128023420012d00302203410176200341017122031b22044f0d01200128027020026a2001280238200520031b20026a2d000022034105763a00002001280270200128023420012d0030220441017620044101711b6a20026a41016a2003411f713a0000200241016a21020c000b000b05200420056a2d0000200341087441801e71722103200241086a21020340200241054e0440200120032002417b6a220276411f713a008001200141e0006a20014180016a100f0c010b0b200441016a21040c010b0b200128027020046a41003a000020014180016a200141f0006a200128026020012802641010200128027022020440200120023602740b20014180016a2001280284012001280280016b41066a100b20012802840120012802800122046b21034101210203402003044020042d000041002002411d764101716b41b3c5d1d0027141002002411c764101716b41dde788ea037141002002411b764101716b41fab384f5017141002002411a764101716b41ed9cc2b20271410020024119764101716b41b2afa9db0371200241057441e0ffffff037173737373737321022003417f6a2103200441016a21040c010b0b410021032001410036025820014200370350200141d0006a4106100b200241017321044119210203402002417b470440200128025020036a2004200276411f713a00002002417b6a2102200341016a21030c010b0b2001280280012202044020012002360284010b20014100360248200142003703400240200128026420012802606b2203450d0020012003100d2202360240200120023602442001200220036a3602482001280264200128026022046b22034101480d00200220042003100e1a2001200128024420036a3602440b20014180016a200141406b200128025020012802541010200128024022020440200120023602440b20004200370200200041086a41003602004100210203402002410c470440200020026a4100360200200241046a21020c010b0b2001280238200520012d0030220241017122031b210402402001280234200241017620031b220241016a410a4d0440200020024101743a0000200041016a21030c010b200241116a4170712205100d21032000200236020420002005410172360200200020033602080b2003200420021011200220036a41003a00002000413110120240200028020420002d00002205410176200541017122071b22032003200128028401220220012802800122046b6a2206200320064b1b220641106a417071417f6a410a2006410a4b1b220620002802002209417e71417f6a410a20071b2208460d00027f2006410a4604402009200520071b2107200041016a21054100210820002802080c010b4100200620084d200641016a100d22051b0d0120002d0000220741017104404101210820002802080c010b41012108200041016a0b2109200520092000280204200741fe017141017620074101711b41016a10112008044020002005360208200020033602042000200641016a4101723602000c010b200020034101743a00000b20042103034020022004470440200020032d00004184086a2c00001012200341016a21032002417f6a21020c010b0b2004044020012004360284010b200128025022020440200120023602540b200128026022020440200120023602640b200128022022020440200120023602240b20014190016a24000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110132106200241186a200041086a3602002002410036021441002101200604402006100d21010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1014200241086a10150c010b200520014d0d002000200120046a3602040b200241206a24000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204100d21032000200236020420002004410172360200200020033602080b2003200120021011200220036a41003a00000b0b002000410120001b10180bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10132105200241186a200041086a3602004100210320024100360214200504402005100d21030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a1014200241086a10150b200241206a24000bc60301057f230041206b22042400200128020421050240200320026b22064101480d002006200128020820056b4c0440034020022003460d02200520022d00003a00002001200128020441016a2205360204200241016a21020c000b000b2001200520066a200128020022066b10132108200441186a200141086a36020020044100360214200520066b2106200804402008100d21070b200420073602082004200620076a22063602102004200720086a3602142004200636020c200441086a410472210703402002200346450440200620022d00003a00002004200428021041016a2206360210200241016a21020c010b0b200128020020052007101602402001280204220320056b220241004c0440200428021021020c010b2004200428021020052002100e20026a2202360210200128020421030b20012002360204200128020021022001200428020c3602002001280208210520012004280214360208200420033602102004200236020c2004200536021420042002360208200441086a1015200128020421050b20002005360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000b100020020440200020012002100e1a0b0bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b2003100d220220062005101120002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b6701017f20002802002000280204200141046a1016200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b270020022002280200200120006b22016b2202360200200141014e0440200220002001100e1a0b0bdd0802087f017e230041e0006b220124001024100622001018220210070240200141086a20022000411c10192204280208450440200441146a2802002100200428021021020c010b200141d0006a2004101a200420012802502001280254101b36020c200141386a2004101a410021002004027f410020012802382203450d001a4100200128023c2206200428020c2205490d001a200620052005417f461b210020030b2202360210200441146a2000360200200441003602080b200141386a20022000411410192200101c024002402000280204450d002000101c0240200028020022032c0000220241004e044020020d010c020b200241807f460d00200241ff0171220541b7014d0440200028020441014d04401000200028020021030b20032d00010d010c020b200541bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021030b200220036a2d0000450d010b2000280204450d0020032d000041c001490d010b10000b2000101d2206200028020422034b04401000200028020421030b20002802002107024002400240200304404100210520072c00002200417f4a0d01027f200041ff0171220541bf014d04404100200041ff017141b801490d011a200541c97e6a0c010b4100200041ff017141f801490d001a200541897e6a0b41016a21050c010b4101210520070d00410021000c010b41002100200520066a20034b0d0020032006490d004100210220032005490d01200520076a2102200320056b20062006417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002008420886842108200241016a21020c010b0b02400240024002402008500d0041a508101e20085104402004101f0c040b41aa08101e2008520d002004101f200141286a100a2001410036024020014200370338200141386a41001020200141cc006a410036020020014200370244410121020240200141d0006a200141286a1021220428020420012d00502200410176200041017122031b220041014d0440200041016b0d040c010b20004138490d02200041016a210203402000450d04200241016a2102200041087621000c000b000b2004280208200441016a20031b2c0000417f4c0d010c020b10000c020b200041016a21020b20012802402002490440200141386a200210200b200141386a200141d0006a200141286a10212200280208200041016a20012d0050220241017122041b22032000280204200241017620041b22001004200128023c22026a1022200320002002200128023822066a10050340024020012802482202200128024422034622050d00200241786a220028020022044504401000200028020021040b20002004417f6a220436020020040d0020012000360248200141386a2002417c6a2802002200200128023c20006b220210026a10222000200128023822066a22002002200010030c010b0b200545044010000b2006200128023c10082003450d00200120033602480b1023200141e0006a24000b9b0101047f230041106b220124002001200036020c2000047f41d408200041086a2202411076220041d4082802006a220336020041d00841d008280200220420026a41076a417871220236020002400240200341107420024d044041d408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104100e41086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000102520024f0d002003410471044010000c010b200042003702000b02402003411071450d002000102520024d0d0020034104710440100020000f0b200042003702000b20000b7201047f2001101d220220012802044b044010000b2001102621032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114101910252100200241206a240020000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101c41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000101a41012103200128020c2100034020000440200141002001280208220220022000101b22046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10000b200141106a24000b2f01017f200028020820014904402001101820002802002000280204100e210220002001360208200020023602000b0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204100c20000b3601017f200028020820014904402001101820002802002000280204100e210220002001360208200020023602000b200020013602040b880101037f41c008410136020041c4082802002100034020000440034041c80841c8082802002201417f6a2202360200200141014845044041c0084100360200200020024102746a22004184016a280200200041046a28020011010041c008410136020041c40828020021000c010b0b41c808412036020041c408200028020022003602000c010b0b0b3501017f230041106b220041e0880436020c41cc08200028020c41076a417871220036020041d008200036020041d4083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010262000101d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b0b4401004180080b3d6174780071707a7279397838676632747664773073336a6e35346b686365366d7561376c00696e6974006765745f706c61746f6e5f636f696e62617365"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_PLATON_COINBASE = "get_platon_coinbase"; - - protected CoinbaseFunction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CoinbaseFunction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CoinbaseFunction.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CoinbaseFunction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CoinbaseFunction.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CoinbaseFunction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall get_platon_coinbase() { - final WasmFunction function = new WasmFunction(FUNC_GET_PLATON_COINBASE, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static CoinbaseFunction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CoinbaseFunction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CoinbaseFunction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CoinbaseFunction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ComputeDate.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ComputeDate.java deleted file mode 100644 index 15dbbfefbb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ComputeDate.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ComputeDate extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001490d60017f017f60027f7f0060000060017f0060037f7f7f0060027f7f017f60047f7f7f7f0060037e7e7f006000017f60037f7f7f017f60047f7f7f7f017f60027e7e017f60017f017e02b1010803656e760c706c61746f6e5f70616e6963000203656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760d726c705f753132385f73697a65000b03656e760f706c61746f6e5f726c705f75313238000703656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000803656e7610706c61746f6e5f6765745f696e707574000303656e760d706c61746f6e5f72657475726e0001031e1d020506000402000a0403010c00000105010102000105030009020000060405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300080f5f5f66756e63735f6f6e5f65786974001a06696e766f6b65000d0a82281d040010210b9f0101047f230041106b220224002002200041004104100a20022802082002410172220320022d00004101711b100b21042002200041054102100a2002280208200320022d00004101711b100b21002002200141004104100a2002280208200320022d00004101711b100b21052002200141054102100a2002280208200320022d00004101711b100b2103200241106a24002003200520046b410c6c20006b6a0b4d01017f20004200370200200041086a410036020020002001280208200141016a20012d0000220041017122041b20026a2001280204200041017620041b20026b2201200320012003491b100c0b930101037f034020002c0000220241776a2103200041016a2201210020024120460d002001210020034105490d000b41002103024002400240200241556a220041024b0d00200041016b0e020001020b2001417f6a21010c010b410121030b41002100034020012c000041506a220241094b450440200141016a21012000410a6c20026b21000c010b0b2000410020006b20031b0b6101027f027f02402002410b4f0440200241106a4170712204101f21032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b20032001200210200b20026a41003a00000bdc0602077f047e230041f0006b22002400102110052201100e22021006200041d8006a200020022001411c100f220341001010200041d8006a101102400240200028025c450d00200041d8006a10110240200028025822022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028025c41014d04401000200028025821020b20022d00010d010c020b200441bf014b0d01200028025c200141ff017141ca7e6a22014d04401000200028025821020b200120026a2d0000450d010b200028025c450d0020022d000041c001490d010b10000b200041206a200041d8006a10122000280224220141094f044010000b200028022021020340200104402001417f6a210120023100002007420886842107200241016a21020c010b0b024002402007500d0041800810132007510440200310144101460d020c010b41850810132007520d00200041206a101521012000412c6a1015210220031014410347044010000b4101210420004101360248200020033602582000200041c8006a36025c200041d8006a20011016200041d8006a20021016200041c8006a20011017200041386a2002101710092102410021012000410036026020004200370358200041d8006a41001018200041ec006a4100360200200042003702642002ac22074201862007423f87220885220942800154410020084201862007423f8884200885220a501b45044020092108200a2107034020072008845045044020074238862008420888842108200141016a2101200742088821070c010b0b024020014138490d002001210203402002450d01200141016a2101200241087621020c000b000b200141016a21040b20002802602004490440200041d8006a200410180b200041d8006a200a20091003200028025c22016a1019200a20092001200028025822056a10040340024020002802682202200028026422044622060d00200241786a220128020022034504401000200128020021030b20012003417f6a220336020020030d0020002001360268200041d8006a2002417c6a2802002201200028025c20016b220210016a10192001200028025822056a22012002200110020c010b0b200645044010000b2005200028025c10072004450d01200020043602680c010b10000b101a200041f0006a24000b9b0101047f230041106b220124002001200036020c2000047f41ac08200041086a2202411076220041ac082802006a220336020041a80841a808280200220420026a41076a417871220236020002400240200341107420024d044041ac08200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102041086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000102220024f0d002003410471044010000c010b200042003702000b02402003411071450d002000102220024d0d0020034104710440100020000f0b200042003702000b20000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001101c20012003280208200328020c101d36020c20032001101c410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114100f1a200341106a24000f0b20032001101c41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004101d10242001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001101b2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000101c200128020c210003402000450d01200141002001280208220320032000101d22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b190020004200370200200041086a41003602002000101e20000b970301067f230041306b220224002002200028020020002802042802001010024002402002280204044020022802002d000041c001490d010b200241186a10151a0c010b200241286a200210122002101b21030240024002400240200228022822040440200228022c220620034f0d010b41002104200241206a410036020020024200370318410021060c010b200241206a4100360200200242003703182004200620032003417f461b22056a21062005410a4b0d010b200220054101743a0018200241186a41017221030c010b200541106a4170712207101f21032002200536021c20022007410172360218200220033602200b03402004200646450440200320042d00003a0000200341016a2103200441016a21040c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290318370200200141086a200241206a280200360200200241186a101e20002802042204200428020041016a360200200241306a24000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204100c20000b2f01017f200028020820014904402001100e200028020020002802041020210220002001360208200020023602000b0b3601017f200028020820014904402001100e200028020020002802041020210220002001360208200020023602000b200020013602040b880101037f4198084101360200419c082802002100034020000440034041a00841a0082802002201417f6a220236020020014101484504404198084100360200200020024102746a22004184016a280200200041046a2802001103004198084101360200419c0828020021000c010b0b41a0084120360200419c08200028020022003602000c010b0b0bff0201037f200028020445044041000f0b2000101141012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2101017f2001101b220220012802044b044010000b2000200120011023200210240b2701017f230041206b22022400200241086a200020014114100f10222100200241206a240020000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b0b002000410120001b100e0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3501017f230041106b220041b0880436020c41a408200028020c41076a417871220036020041a808200036020041ac083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010232000101b6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b1e01004180080b17696e6974004d6f6e7468734265747765656e3244617465"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_MONTHSBETWEEN2DATE = "MonthsBetween2Date"; - - protected ComputeDate(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ComputeDate(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ComputeDate.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ComputeDate.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ComputeDate.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ComputeDate.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall MonthsBetween2Date(String date1, String date2) { - final WasmFunction function = new WasmFunction(FUNC_MONTHSBETWEEN2DATE, Arrays.asList(date1,date2), Int32.class); - return executeRemoteCall(function, Int32.class); - } - - public static ComputeDate load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ComputeDate(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ComputeDate load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ComputeDate(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCallPPOS.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCallPPOS.java deleted file mode 100644 index e8f373934a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCallPPOS.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractCallPPOS extends WasmContract { - private static String BINARY_0 = "0x0061736d010000000196011560027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60000060047f7f7f7f006000017f60017f017e60057f7f7f7e7e0060027f7e0060037e7e7f0060037f7f7f017f60047f7f7f7f017f60077f7f7f7f7f7f7f017f60087f7f7f7f7f7f7f7f017f60097f7f7f7f7f7f7f7f7f017f60047f7f7e7f017f60087f7f7e7f7e7f7f7f017f60027e7e017f60047f7f7e7e017e02c3020e03656e760c706c61746f6e5f6465627567000003656e760c706c61746f6e5f70616e6963000503656e761d706c61746f6e5f6765745f63616c6c5f6f75747075745f6c656e677468000703656e7616706c61746f6e5f6765745f63616c6c5f6f7574707574000203656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65001303656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000703656e7610706c61746f6e5f6765745f696e707574000203656e760b706c61746f6e5f63616c6c000e03656e760d706c61746f6e5f72657475726e00000342410514000004010c0000060001000203000011090403000201010a0401030305010d0308080102000401010200000205020000040000000101060f121003050101060405017001020205030100020608017f0141a08b040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000e0f5f5f66756e63735f6f6e5f65786974003c06696e766f6b65002c0907010041010b01460afc8501410400104b0b810a01077f230041b0016b2204240020042003370348200441386a20011010200441206a20001011200441d0006a41920810122106410021002004410036028801200442003703800141141013200441206a4114101421074100210103402005411446044002402000044020042001410520006b74411f713a00a00120044180016a200441a0016a10150b20044190016a20061016200441a0016a20044190016a20042802800120042802840110172004280290012200044020042000360294010b200441a0016a20042802a40120042802a0016b41066a1018200441a0016a10192100410021012004410036027820044200370370200441f0006a41061018200041017321054119210003402000417b460d01200428027020016a2005200076411f713a00002000417b6a2100200141016a21010c000b000b05200520076a2d0000200141087441801e71722101200041086a21000340200041054e0440200420012000417b6a220076411f713a00a00120044180016a200441a0016a10150c010b0b200541016a21050c010b0b20042802a00122000440200420003602a4010b200441003602682004420037036002402004280284012004280280016b2200450d00200441e0006a2000101a20042802840120042802800122016b22004101480d0020042802642001200010141a2004200428026420006a3602640b200441a0016a200441e0006a200428027020042802741017200428026022000440200420003602640b20044198016a4100360200200442003703900120044190016a101b2006280208200641016a20042d0050220041017122011b210502402006280204200041017620011b220041016a410a4d0440200420004101743a00900120044190016a41017221010c010b200041116a4170712207101321012004200036029401200420074101723602900120042001360298010b200120052000101c200020016a41003a000020044190016a4131101d024020042802940120042d0090012207410176200741017122061b2201200120042802a401220020042802a00122056b6a2208200120084b1b220841106a417071417f6a410a2008410a4b1b2208200428029001220a417e71417f6a410a20061b2209460d00027f2008410a460440200a200720061b210620044190016a4101722107200428029801210941000c010b4100200820094d200841016a101322071b0d0120042d00900122064101710440200428029801210941010c010b20044190016a410172210941010b210a20072009200428029401200641fe017141017620064101711b41016a101c200a0440200420073602980120042001360294012004200841016a410172360290010c010b200420014101743a0090010b2005210103402000200547044020044190016a20012d000041a0096a2c0000101d200141016a21012000417f6a21000c010b0b20050440200420053602a4010b200428027022000440200420003602740b2004280280012200044020042000360284010b200420042802980120044190016a41017220042d0090014101711b36021041c109200441106a101e200441df0941d90920042d00341b36020041e4092004101e42012103024020042d0034450d00200441206a200441386a2002200441c8006a101f450d00200441206a200441386a2002200441c8006a101f1a200441206a200441386a2002200441c8006a101f1a420021030b2004280238220004402004200036023c0b200441b0016a240020030bfc0301067f230041306b22022400027f41002001280204220520012d000022034101762206200341017122031b22074102490d001a41002001280208200141016a20031b22042d00004130470d001a20042d000141f800464101740b21042002410036021020024200370308200720046b41016a41017622070440200241286a200241106a3602002002200710132203360220200220033602182002200336021c2002200320076a360224200241086a200241186a1023200241186a102420012d00002203410176210620012802042105200341017121030b0240024002402005200620031b41017104402001280208200141016a20031b20046a2c000010252203417f460d01200220033a0018200241086a200241186a1015200441017221040b200141016a2106024003402004200128020420012d00002203410176200341017122031b4f0d012001280208200620031b20046a22052c000010252103200541016a2c00001025210502402003417f460d002005417f460d002002200520034104746a3a0018200441026a2104200241086a200241186a10150c010b0b20004100360208200042003702000c020b200020022802083602002000200229020c37020420024100360210200242003703080c020b20004100360208200042003702000b20022802082204450d002002200436020c0b200241306a24000ba10b010a7f23004190016b22032400200341086a419208101221092001280208200141016a220a20012d0000220241017122041b210b2001280204200241017620041b21084100210241012105024003402005410171410020022008491b04402002200b6a2d00002204415f6a41ff017141de004921052006200441bf7f6a41ff0171411a4972210620072004419f7f6a41ff0171411a49722107200241016a21020c01050240200520062007714101737121062008450d002008210203402002450d012002200b6a21052002417f6a220421022005417f6a2d00004131470d000b0c030b0b0b417f21040b024002402006410171450d00200441076a20084b0d00200441016a4102490d00200841da004b0d00410021022003410036027820034200370370200341f0006a20082004417f7322076a10184101210602400240024003402002200128020420012d00002205410176200541017122051b20076a4f044002402006410171450d0541002102200341e0006a102621060340200220044604400240200628020420032d006022024101762204200241017122071b2205200928020420032d00082202410176200241017122021b470d062009280208200941016a20021b210220070d00200641016a210503402004450d0820052d000020022d0000470d07200241016a2102200541016a21052004417f6a21040c000b000b0520062001280208200a20012d00004101711b20026a2c000022054120722005200541bf7f6a411a491b411874411875101d200241016a21020c010b0b20050d000c040b05200328027020026a2001280208200a20051b20046a20026a41016a2d000041a0086a2d000022053a00002006200541ff0147712106200241016a21020c010b0b2006280208210403402005450d0220042d000020022d0000470d01200241016a2102200441016a21042005417f6a21050c000b000b20004200370000200041003a0014200041086a4200370000200041106a410036000020032802702202450d03200320023602740c030b20034180016a20061016200341306a20034180016a200328027020032802741017200341306a10192102200328023022040440200320043602340b2003280280012204044020032004360284010b20024101470d0041002106200341003602880120034200370380012003410036023820034200370330027f41002003280274417a6a2205200328027022026b2204450d001a200341306a2004101a034020022005464504402003280234220420022d00003a00002003200441016a360234200241016a21020c010b0b2003280230210620032802340b20066b2107410021024100210441002105024003402005200746044002402004410820026b7441ff017145200241054871210220060440200320063602340b20020d0020032802800121020c030b05200520066a2d0000200441057441e01f71722104200241056a21020340200241084845044020032004200241786a2202763a008f0120034180016a2003418f016a10150c010b0b200541016a21050c010b0b20032802840120032802800122026b4114470d00200341406b4100360200200341386a4200370300200342003703304100210203402002411446450440200341306a20026a41003a0000200241016a21020c010b0b20032802840120032802800122046b2105410021020340024020022005460d00200241134b0d00200341306a20026a200220046a2d00003a0000200241016a21020c010b0b20002003290330370000200041013a0014200041106a200341406b280200360000200041086a200341386a2903003700002004044020032004360284010b20032802702202450d03200320023602740c030b2002450d0020032002360284010b20032802702202450d00200320023602740b20004200370000200041003a0014200041086a4200370000200041106a41003600000b20034190016a24000b1f0020004200370200200041086a41003602002000200120011029102a20000b0b002000410120001b102d0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10282105200241186a200041086a3602004100210320024100360214200504402005101321030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a1023200241086a10240b200241206a24000bba0101047f20004100360208200042003702002000200128020420012d0000220241017620024101711b4101744101721018200141016a210503402003200128020420012d00002202410176200241017122021b22044f0440200028020020046a41003a000005200028020020036a2001280208200520021b20036a2d000022024105763a00002000280200200128020420012d0000220441017620044101711b6a20036a41016a2002411f713a0000200341016a21030c010b0b0bc60301057f230041206b22042400200128020421050240200320026b22064101480d002006200128020820056b4c0440034020022003460d02200520022d00003a00002001200128020441016a2205360204200241016a21020c000b000b2001200520066a200128020022066b10282108200441186a200141086a36020020044100360214200520066b2106200804402008101321070b200420073602082004200620076a22063602102004200720086a3602142004200636020c200441086a410472210703402002200346450440200620022d00003a00002004200428021041016a2206360210200241016a21020c010b0b200128020020052007102b02402001280204220320056b220241004c0440200428021021020c010b2004200428021020052002101420026a2202360210200128020421030b20012002360204200128020021022001200428020c3602002001280208210520012004280214360208200420033602102004200236020c2004200536021420042002360208200441086a1024200128020421050b20002005360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110282106200241186a200041086a3602002002410036021441002101200604402006101321010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1023200241086a10240c010b200520014d0d002000200120046a3602040b200241206a24000ba50101027f2000280204200028020022016b210241012100037f2002047f20012d000041002000411d764101716b41b3c5d1d0027141002000411c764101716b41dde788ea037141002000411b764101716b41fab384f5017141002000411a764101716b41ed9cc2b20271410020004119764101716b41b2afa9db0371200041057441e0ffffff037173737373737321002002417f6a2102200141016a21010c010520000b0b0b2001017f2000200110132202360200200020023602042000200120026a3602080b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b10002002044020002001200210141a0b0bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b20031013220220062005101c20002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b9518030e7f027e037c230041c0086b220424002004200136020c2004200036029c082004419f086a210e0340410020066b21050240034020002d00002202450d0120024125470440200641ff074d0440200441106a20066a20023a00000b200641016a21062004200041016a220036029c082005417f6a21050c010b0b2004200041016a220036029c08410021020340024002400240024020002c0000220841556a220341054b0440200841606a220341034b0d0102400240200341016b0e03030301000b2004200041016a220036029c08200241087221020c060b2004200041016a220036029c08200241107221020c050b200341016b0e050002000003010b0240200841506a41ff017141094d04402004419c086a1045210a200428029c0821000c010b4100210a2008412a470d00200128020021032004200041016a220036029c082002410272200220034100481b210220032003411f7522086a200873210a200141046a21010b41002108024020002d0000412e470d002004200041016a220736029c08200241800872210220002d0001220341506a41ff017141094d04402004419c086a10452108200428029c0821000c010b200341ff0171412a470440200721000c010b200128020021032004200041026a220036029c0820034100200341004a1b2108200141046a21010b0240024020002c000041987f6a411f77220341094b0d000240024002400240200341016b0e09020004040403040403010b2004200041016a220736029c0820002d0001220341ec004704402002418002722102200721000c050b2004200041026a220036029c0820024180067221020c030b2004200041016a220736029c0820002d0001220341e8004704402002418001722102200721000c040b2004200041026a220036029c08200241c0017221020c020b2004200041016a220036029c0820024180047221020c010b2004200041016a220036029c0820024180027221020b20002d000021030b0240027f024002400240024002400240024020034118744118752209419e7f6a220741164b044020094125470440200941c600460d07200941d800470d020c080b200641ff074b0d02200441106a20066a41253a00000c020b200741016b0e15040600050000060000000000060200000300060000060b200641ff074b0d00200441106a20066a20033a00000b200641016a21060c060b200441106a2006200128020041004110200841082002412172104721062004200041016a220036029c08200141046a21010c0b0b20012802002203417f6a21050340200541016a22052d00000d000b200520036b2205200820052008491b20052002418008712209410a761b210702402002410271220b0440200621050c010b200441106a20066a210c4100210203400240200220066a2105200220076a220d200a4f0d00200541ff074d04402002200c6a41203a00000b200241016a21020c010b0b200d41016a21070b200141046a2101034002402005210220032d00002206450d00200904402008450d012008417f6a21080b200241016a2105200341016a2103200241ff074b0d01200441106a20026a20063a00000c010b0b200b450440200221060c050b200441106a20026a2103410021050340200220056a2106200520076a200a4f0d05200641ff074d0440200320056a41203a00000b200541016a21050c000b000b410121050240200241027122070440200621030c010b200441106a20066a21084100210203400240200220066a2103200241016a2205200a4f0d00200341ff074d0440200220086a41203a00000b200521020c010b0b200241026a21050b200341ff074d0440200441106a20036a20012802003a00000b200341016a22062007450d021a03402006210220022005200a4f0d031a200241016a2106200541016a2105200241ff074b0d00200441106a20026a41203a00000c000b000b200841062002418008711b220841037441b00a6a2107200141076a417871220c2b0300211241002103034002402008410a490d002003411f4b0d00200441a0086a20036a41303a0000200741786a21072008417f6a2108200341016a21030c010b0b027f4400000000000000002012a12012201244000000000000000063220b1b22129944000000000000e0416304402012aa0c010b4180808080780b2101027f20122001b7a120072b03002214a2221344000000000000f041632013440000000000000000667104402013ab0c010b41000b2109024020132009b8a1221344000000000000e03f644101734504402014200941016a2209b8654101730d01200141016a2101410021090c010b201344000000000000e03f620d0020094520094101717220096a21090b4100210702402012440000c0ffffffdf41640d00024020080440200320086a41606a210f034002402003412046044041202103200f21080c010b200441a0086a20036a20092009410a6e220741766c6a4130723a0000200341016a21032008417f6a2108200941094b210d20072109200d0d010b0b034002402003411f4b22070d002008450d00200441a0086a20036a41303a0000200341016a21032008417f6a21080c010b0b20070d01200441a0086a20036a412e3a0000200341016a21030c010b20122001b7a1221244000000000000e03f64410173450440200141016a21010c010b20012001201244000000000000e03f61716a21010b03402003411f4d0440200441a0086a20036a20012001410a6d220841766c6a41306a3a0000200341016a2103200141096a210720082101200741124b0d010b0b20024103712108034002402003411f4b0d0020084101470d002003200a4f0d00200441a0086a20036a41303a0000200341016a21030c010b0b20024101712108200241027121010240200a2002410c71410047200b726b20032003200a461b2203411f4b0d000240200b410173450440200441a0086a20036a412d3a00000c010b20024104710440200441a0086a20036a412b3a00000c010b2002410871450d01200441a0086a20036a41203a00000b200341016a21030b024020012008720440200621070c010b200441106a20066a2108410021020340200220066a2107200220036a200a4f0d01200741ff074d0440200220086a41203a00000b200241016a21020c000b000b200520076a2106034020034504402001450d0203402006200a4f0d03200741ff074d0440200441106a20076a41203a00000b200741016a2107200641016a21060c000b000b200741ff074d0440200441106a20076a2003200e6a2d00003a00000b200741016a2107200641016a21062003417f6a21030c000b000b200c41086a21012004200041016a220036029c08200721060c080b41102107024002400240200341ff0171220541d8004622030d00200541f800460d00200541ef00460440410821070c020b200541e200460440410221070c020b2002416f712102410a21070b2002412072200220031b2102200541e400460d01200541e900460d010b200241737121020b2002417e7120022002418008711b2102200541e900474100200541e400471b4504402002418004710440200441106a2006200141076a417871220529030022102010423f8722117c2011852010423f88a72007ad2008200a200210482106200541086a21010c030b2002418002710440200441106a2006200128020022052005411f7522036a2003732005411f7620072008200a200210470c020b200441106a2006027f200241c00071044020012c00000c010b2001280200220541107441107520052002418001711b0b2205411f75220320056a2003732005411f7620072008200a200210470c010b2002418004710440200441106a2006200141076a417871220529030041002007ad2008200a200210482106200541086a21010c020b2002418002710440200441106a20062001280200410020072008200a200210470c010b200441106a2006027f200241c00071044020012d00000c010b2001280200220541ffff037120052002418001711b0b410020072008200a200210470b2106200141046a21010b2004200041016a220036029c080c050b2004200041016a220036029c08200241047221020c020b2004200041016a220036029c08200241027221020c010b2004200041016a220036029c08200241017221020c000b000b0b200441106a200641ff07200641ff07491b6a41003a0000200441106a200441106a10291000200441c0086a24000b7e01017f230041206b22042400200441106a20021027200420032903001027200020012802002203200128020420036b20042802102201200428021420016b20042802002201200428020420016b100c2101200428020022000440200420003602040b200428021022000440200420003602140b200441206a24002001450bda07010b7f230041d0006b2208240020082004370338200841286a20021010200841106a200110110240024002400240027f02400240024020082d0024450d00200841106a200841286a2003200841386a101f450d002008410036020820084200370300200810021018200828020010032008280204210e20082802002101200841406b4180081012210520004200370200200041086a410036020002400240200528020420082d0040220941017620094101711b2202200e20016b4101746a2207410b4f0440200741106a4170712209101321062000200736020420002009410172360200200020063602080c010b200020074101743a0000200041016a21062007450d010b200620071021210620082d004021090b200620076a41003a0000200541016a210a2005280208210b2005280204200941fe01714101762009410171220d1b2105027f20002d0000220c410171220f450440410a2106200c41017622092002200220094b1b0c010b2000280200220c417e71417f6a210620002802042209200220092002491b0b2107200b200a200d1b210a200720096b20066a20054f04402000280208200041016a200f1b21064100210c200520074604402005210b0c060b200920076b220d4504402007210b0c060b20052007490d022006200a4f0d03200620096a200a4d0d03200620076a200a4d0440200a200520076b6a210a0c040b2006200a200710222005200a6a210a200520076b21052007210c41000c040b2000280208210d416f210b200641e6ffffff074d0440410b20064101742206200520096a20076b220b200b2006491b220641106a4170712006410b491b210b0b200b10132206200a2005101c200920076b22090440200520066a200d200041016a200c4101711b20076a2009101c0b200020063602082000200520096a22053602042000200b410172360200200520066a41003a00000c060b200041800810121a0c060b2006200a20051022200520066a200620076a200d10222007210b0c030b20070b210b2006200c6a220720056a2007200b6a200d10220b2006200c6a200a200510220b2005200b6b20096a2105024020002d00004101710440200020053602040c010b200020054101743a00000b200520066a41003a00000b200041016a210503402001200e4704402000280208200520002d00004101711b20026a20012d00004104764181086a2d00003a00002000280208200520002d00004101711b20026a41016a20012d0000410f714181086a2d00003a0000200141016a2101200241026a21020c010b0b20082802002201450d00200820013602040b2008280228220104402008200136022c0b200841d0006a24000bb90301027f02402001450d00200041303a0000200020016a2203417f6a41303a000020014103490d00200041303a0002200041303a00012003417d6a41303a00002003417e6a41303a000020014107490d00200041303a00032003417c6a41303a000020014109490d002000410020006b41037122026a220341b0e0c081033602002003200120026b417c7122026a2201417c6a41b0e0c0810336020020024109490d00200341b0e0c08103360208200341b0e0c08103360204200141786a41b0e0c08103360200200141746a41b0e0c0810336020020024119490d00200341b0e0c08103360218200341b0e0c08103360214200341b0e0c08103360210200341b0e0c0810336020c200141706a41b0e0c081033602002001416c6a41b0e0c08103360200200141686a41b0e0c08103360200200141646a41b0e0c081033602002002200341047141187222026b2101200220036a2102034020014120490d01200242b0e0c08183868c9830370300200241186a42b0e0c08183868c9830370300200241106a42b0e0c08183868c9830370300200241086a42b0e0c08183868c9830370300200241206a2102200141606a21010c000b000b20000b0f0020020440200020012002104a0b0b6701017f20002802002000280204200141046a102b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b4801017f415021010240200041506a41ff0171410a490d0041a97f21012000419f7f6a41ff01714106490d00200041496a417f200041bf7f6a41ff01714106491b0f0b200020016a0b190020004200370200200041086a41003602002000101b20000b6302017f017e20012103034020035045044020034208882103200241016a21020c010b0b20004100360208200042003702002000200210182000280204417f6a21020340200150450440200220013c00002002417f6a2102200142088821010c010b0b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101321032000200236020420002004410172360200200020033602080b200320012002101c200220036a41003a00000b270020022002280200200120006b22016b2202360200200141014e044020022000200110141a0b0be40602067f037e230041d0016b22002400104b100a2201102d2202100b200041206a200020022001411c102e22014100102f02400240200041206a10302206500d0041fd0910312006510440200110324101460d020c010b41820a10312006510440200041206a10332001200041206a1034200041f8006a200041206a10352101200041e8006a2000412c6a103521022000290340210620002903382107200041a0016a20011035200220072006100f210820004188016a1036210241002101200041c8016a410036020042002106200041c0016a4200370300200041b8016a4200370300200042003703b0014101210320084280015a044020082107034020062007845045044020064238862007420888842107200141016a2101200642088821060c010b0b200141384f047f2001103720016a0520010b41016a21030b200020033602b001200041b0016a41047210382002200310392002420020081008200228020422016a103a42002008200120022802006a10092002103b200228020c200241106a28020047044010010b20022802002002280204100d200228020c2201450d02200220013602100c020b41970a10312006520d00200041206a10332001200041206a1034200041d8006a200041206a10352101200041c8006a2000412c6a103521022000290340210620002903382107200041f8006a200041e8006a20011035200220072006102020004188016a10362101200041c8016a4100360200200041c0016a4200370300200041b8016a4200370300200042003703b00141012102024002400240200041a0016a200041f8006a1035220428020420002d00a0012203410176200341017122051b220341014d0440200341016b0d032004280208200441016a20051b2c0000417f4c0d010c030b200341374b0d010b200341016a21020c010b2003103720036a41016a21020b200020023602b001200041b0016a41047210382001200210392001200041b0016a200041f8006a10352202280208200241016a20002d00b001220341017122041b22052002280204200341017620041b22021006200128020422036a103a20052002200320012802006a10072001103b200128020c200141106a28020047044010010b20012802002001280204100d200128020c2202450d01200120023602100c010b10010b103c200041d0016a24000b9b0101047f230041106b220124002001200036020c2000047f41940b200041086a2202411076220041940b2802006a220336020041900b41900b280200220420026a41076a417871220236020002400240200341107420024d044041940b200341016a360200200041016a21000c010b2000450d010b200040000d0010010b20042001410c6a4104101441086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104c20024f0d002003410471044010010c010b200042003702000b02402003411071450d002000104c20024d0d0020034104710440100120000f0b200042003702000b20000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103f20012003280208200328020c104036020c20032001103f410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102e1a200341106a24000f0b20032001103f41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041040104e2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b220324002000103d024002402000280204450d002000103d0240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401001200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401001200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10010b200341086a2000103e200328020c220041094f044010010b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103f200128020c210003402000450d01200141002001280208220320032000104022046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b1d00200010261a2000410c6a10261a20004200370320200042003703180b5901017f230041106b2202240020001032410547044010010b2002410136020c2002200036020020022002410c6a36020420022001104120022001410c6a10412002200141186a10422002200141206a1042200241106a24000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102a20000b29002000410036020820004200370200200041001043200041146a41003602002000420037020c20000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b1300200028020820014904402000200110430b0b3601017f200028020820014904402001102d200028020020002802041014210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401001200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210046a103a200120002802006a22012002200110050c010b0b0b880101037f41800b410136020041840b2802002100034020000440034041880b41880b2802002201417f6a2202360200200141014845044041800b4100360200200020024102746a22004184016a280200200041046a28020011020041800b410136020041840b28020021000c010b0b41880b412036020041840b200028020022003602000c010b0b0b4101017f200028020445044010010b0240200028020022012d0000418101470d00200028020441014d047f100120002802000520010b2c00014100480d0010010b0bd50101047f200110442204200128020422024b04401001200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b2101017f20011044220220012802044b044010010b200020012001104d2002104e0b2701017f230041206b22022400200241086a200020014114102e104c2100200241206a240020000b970301067f230041306b22022400200220002802002000280204280200102f024002402002280204044020022802002d000041c001490d010b200241186a10261a0c010b200241286a2002103e2002104421030240024002400240200228022822040440200228022c220620034f0d010b41002104200241206a410036020020024200370318410021060c010b200241206a4100360200200242003703182004200620032003417f461b22056a21062005410a4b0d010b200220054101743a0018200241186a41017221030c010b200541106a4170712207101321032002200536021c20022007410172360218200220033602200b03402004200646450440200320042d00003a0000200341016a2103200441016a21040c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290318370200200141086a200241206a280200360200200241186a101b20002802042204200428020041016a360200200241306a24000b4601017f230041206b22022400200241086a20002802002000280204280200102f2001200241086a103037030020002802042200200028020041016a360200200241206a24000b2f01017f200028020820014904402001102d200028020020002802041014210220002001360208200020023602000b0bff0201037f200028020445044041000f0b2000103d41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10010b20020b4501037f20002802002101034020012d000041506a41ff017141094b4504402000200141016a220336020020012c00002002410a6c6a41506a2102200321010c010b0b20020b140020022003490440200120026a20003a00000b0ba70101067f230041206b220924000240200245410020072007416f7120021b220a418008711b0d00200a41207141e1007341f6016a210b410021070340200720096a2002200220046e220c20046c6b22084130200b200841187441808080d000481b6a3a0000200741016a21082007411e4b0d01200220044f210d20082107200c2102200d0d000b0b20002001200920082003200420052006200a10492102200941206a240020020bb60102057f017e230041206b2209240020072007416f71200242005222081b210a0240200845044041002108200a418008710d010b200a41207141e1007341f6016a210b410021070340200720096a4130200b20022002200480220d20047e7da7220841187441808080d000481b20086a3a0000200741016a21082007411e4b0d01200220045a210c20082107200d2102200c0d000b0b200020012009200820032004a720052006200a10492107200941206a240020070bec0401037f2008410271210b2003210902400340200b0d010240200920064f0d002009411f4b0d00200220096a41303a0000200941016a21090c010b0b200921030b2008410371410147210a2003210902400340200a0d010240200920074f0d002009411f4b0d00200220096a41303a0000200941016a21090c010b0b200921030b2008410171210a0240024002402008411071044002402008418008710d002003450d002003200647410020032007471b0d002003417e6a2003417f6a220920091b200920054110461b21030b0240200541104604400240200841207122090d002003411f4b0d00200220036a41f8003a0000200341016a21030c020b2009450d012003411f4b0d01200220036a41d8003a0000200341016a21030c010b20054102470d002003411f4b0d00200220036a41e2003a0000200341016a21030b2003411f4b0d01200220036a41303a0000200341016a21030c010b20030d00410021030c010b20072008410c714100472004726b200320032007461b2203411f4b0d010b20040440200220036a412d3a0000200341016a21030c010b20084104710440200220036a412b3a0000200341016a21030c010b2008410871450d00200220036a41203a0000200341016a21030b200121090240200a200b720d002003210a0340200a20074f0d014120200020094180081046200a41016a210a200941016a21090c000b000b2002417f6a210a037f2003047f2003200a6a2c00002000200941800810462003417f6a2103200941016a21090c01050240200b450d00410020016b21030340200320096a20074f0d014120200020094180081046200941016a21090c000b000b20090b0b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210141a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041a08b0436020c418c0b200028020c41076a417871220036020041900b200036020041940b3f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000104d200010446a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0bfe0203004181080b1430313233343536373839616263646566006174780041a0080b8c02ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff71707a7279397838676632747664773073336a6e35346b686365366d7561376c00616464726573735f696e666f2e66697273743a2573090a0066616c7365007472756500616464726573735f696e666f2e7365636f6e643a2573090a00696e69740063726f73735f63616c6c5f70706f735f73656e640063726f73735f63616c6c5f70706f735f71756572790041b60a0b4af03f000000000000244000000000000059400000000000408f40000000000088c34000000000006af8400000000080842e4100000000d01263410000000084d797410000000065cdcd41"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_CROSS_CALL_PPOS_SEND = "cross_call_ppos_send"; - - public static final String FUNC_CROSS_CALL_PPOS_QUERY = "cross_call_ppos_query"; - - protected ContractCallPPOS(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractCallPPOS(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallPPOS.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallPPOS.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallPPOS.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallPPOS.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall cross_call_ppos_send(String target_addr, String in, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_CROSS_CALL_PPOS_SEND, Arrays.asList(target_addr,in,value,gas), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall cross_call_ppos_send(String target_addr, String in, Uint64 value, Uint64 gas, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CROSS_CALL_PPOS_SEND, Arrays.asList(target_addr,in,value,gas), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall cross_call_ppos_query(String target_addr, String in, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_CROSS_CALL_PPOS_QUERY, Arrays.asList(target_addr,in,value,gas), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractCallPPOS load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractCallPPOS(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractCallPPOS load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractCallPPOS(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCallPrecompile.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCallPrecompile.java deleted file mode 100644 index 98d713ffb9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCallPrecompile.java +++ /dev/null @@ -1,121 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractCallPrecompile extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001671060027f7f0060037f7f7f0060017f017f60017f0060027f7f017f60000060077f7f7f7f7f7e7e0060057f7f7f7e7e006000017f60037f7f7f017f60017f017e60047f7f7f7f0060027f7e0060047f7f7f7f017f60077f7f7f7f7f7f7f017f60047f7f7e7f017f0286020b03656e760c706c61746f6e5f70616e6963000503656e761d706c61746f6e5f6765745f63616c6c5f6f75747075745f6c656e677468000803656e7616706c61746f6e5f6765745f63616c6c5f6f7574707574000303656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000103656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000103656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000803656e7610706c61746f6e5f6765745f696e707574000303656e760b706c61746f6e5f63616c6c000e03656e760d706c61746f6e5f72657475726e0000033e3d05060009010404000f01070007070606060702000302000102010109000c04010305020d010a0a0200030200000300000500040002000400010502020b0405017001070705030100020608017f0141d08d040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974003b06696e766f6b65002c090c010041010b06151718191b1c0aa2733d040010440b980201027f230041e0006b22072400200720063703582007410036025020074200370348200741c8006a4120100d200728024841004120100e1a2007280248220820023a001f2008200728024c2001100f200328020020032802042001100f200428020020042802042001100f200741386a200110102101200741106a200741286a41d20b101110120240024020072d0024450d00200741106a20012005200741d8006a1013450d00200741003602082007420037030020071001100d20072802001002200020072802002007280204101420072802002204450d01200720043602040c010b200041ab0810111a0b200128020022040440200120043602040b2007280248220104402007200136024c0b200741e0006a24000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110292106200241186a200041086a3602002002410036021441002101200604402006101d21010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a101e200241086a101f0c010b200520014d0d002000200120046a3602040b200241206a24000bfc0202027f017e02402002450d00200020013a0000200020026a2203417f6a20013a000020024103490d00200020013a0002200020013a00012003417d6a20013a00002003417e6a20013a000020024107490d00200020013a00032003417c6a20013a000020024109490d002000410020006b41037122046a2203200141ff017141818284086c22013602002003200220046b417c7122046a2202417c6a200136020020044109490d002003200136020820032001360204200241786a2001360200200241746a200136020020044119490d002003200136021820032001360214200320013602102003200136020c200241706a20013602002002416c6a2001360200200241686a2001360200200241646a20013602002001ad220542208620058421052004200341047141187222016b2102200120036a2101034020024120490d0120012005370300200141186a2005370300200141106a2005370300200141086a2005370300200141206a2101200241606a21020c000b000b20000bcd0101057f230041206b22042400200241086a2106034020002001464504400240200228020422032002280208470440200320002d00003a00002002200228020441016a3602040c010b2002200320022802006b220741016a10292105200420063602184100210320044100360214200504402005101d21030b200420033602082004200320056a3602142004200320076a220336020c200320002d00003a00002004200341016a3602102002200441086a101e200441086a101f0b200041016a21000c010b0b200441206a24000b5a01017f20004200370200200041003602080240200128020420012802006b2202450d002000200210272001280204200128020022026b22014101480d0020002802042002200110261a2000200028020420016a3602040b20000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b102220000bc412010d7f23004190016b22022400200241086a41bd081011210b2001280208200141016a220c20012d0000220341017122051b21072001280204200341017620051b21094100210341012104024003402004410171410020032009491b0440200320076a2d00002205415f6a41ff017141de004921042006200541bf7f6a41ff0171411a4972210620082005419f7f6a41ff0171411a49722108200341016a21030c01050240200420062008714101737121062009450d002009210303402003450d01200320076a21042003417f6a220521032004417f6a2d00004131470d000b0c030b0b0b417f21050b024002402006410171450d00200541076a20094b0d00200541016a4102490d00200941da004b0d00410021032002410036026020024200370358200241d8006a20092005417f7322086a100d4101210602400240024003402003200128020420012d00002204410176200441017122041b20086a4f044002402006410171450d05200241c8006a1023220341016a210a410021040340200420054604402003280204220820022d004822054101762207200541017122061b2204200b28020420022d00082205410176200541017122051b470d05200b280208200b41016a20051b210520060d0220072104200a210603402004450440200721080c080b20062d000020052d0000470d06200541016a2105200641016a21062004417f6a21040c000b00052001280208200c20012d00004101711b20046a2c000022074120722007200741bf7f6a411a491b210d024002400240027f20022d004822094101712207450440410a210820094101760c010b20032802002209417e71417f6a210820032802040b220620084604402003280208200a20094101711b210e416f2109200841e6ffffff074d0440410b20084101742207200841016a220920092007491b220741106a4170712007410b491b21090b2009101d2207200e2008102420032009410172360200200320073602080c010b2007450d01200328020821070b2003200641016a3602040c010b2002200641017441026a3a0048200a21070b200620076a220641003a00012006200d3a0000200441016a21040c010b000b000b05200228025820036a2001280208200c20041b20056a20036a41016a2d000041d0086a2d000022043a00002006200441ff0147712106200341016a21030c010b0b2004450d012003280208210603402004450d0220062d000020052d0000470d01200541016a2105200641016a21062004417f6a21040c000b000b20004200370000200041003a0014200041086a4200370000200041106a410036000020022802582203450d032002200336025c0c030b410021052002410036027020024200370368200241e8006a2008410174410172100d03402005200328020420022d00482204410176200441017122041b22064f450440200228026820056a2003280208200a20041b20056a2d000022044105763a00002002280268200328020420022d0048220641017620064101711b6a20056a41016a2004411f713a0000200541016a21050c010b0b200228026820066a41003a0000200228026c21040240200228025c2205200228025822036b22064101480d0020062002280270220720046b4c0440034020032005460d02200420032d00003a00002002200228026c41016a220436026c200341016a21030c000b000b20024188016a200241f0006a3602004100210820024100360284012004200228026822016b2109200420066a20016b2206200720016b2207410174220120012006491b41ffffffff07200741ffffffff03491b220704402007101d21080b200220083602782002200820096a2206360280012002200720086a360284012002200636027c200241f8006a410472210803402003200546450440200620032d00003a0000200220022802800141016a220636028001200341016a21030c010b0b20022802682004200810250240200228026c220520046b220341004c044020022802800121040c010b200220022802800120042003102620036a220436028001200228026c21050b200228026821032002200228027c3602682002200336027c2002200436026c2002200536028001200228027021052002200228028401360270200220053602840120022003360278200241f8006a101f200228026c21040b2002420037026c2002280268210520024100360268200420056b21044101210303402004044020052d000041002003411d764101716b41b3c5d1d0027141002003411c764101716b41dde788ea037141002003411b764101716b41fab384f5017141002003411a764101716b41ed9cc2b20271410020034119764101716b41b2afa9db0371200341057441e0ffffff037173737373737321032004417f6a2104200541016a21050c010b0b20034101470d00410021062002410036027020024200370368200241003602800120024200370378027f4100200228025c417a6a2204200228025822036b2205450d001a200241f8006a2005102703402003200446450440200228027c220520032d00003a00002002200541016a36027c200341016a21030c010b0b20022802782106200228027c0b20066b2108410021034100210541002104024003402004200846044002402005410820036b7441ff0171452003410548712103200604402002200636027c0b20030d00200228026821030c030b05200420066a2d0000200541057441e01f71722105200341056a21030340200341084845044020022005200341786a2203763a008f01200241e8006a2002418f016a10210c010b0b200441016a21040c010b0b200228026c200228026822036b4114470d0020024188016a410036020020024180016a4200370300200242003703784100210303402003411446450440200241f8006a20036a41003a0000200341016a21030c010b0b200228026c200228026822056b2104410021030340024020032004460d00200341134b0d00200241f8006a20036a200320056a2d00003a0000200341016a21030c010b0b20002002290378370000200041013a0014200041106a20024188016a280200360000200041086a20024180016a290300370000200504402002200536026c0b20022802582203450d032002200336025c0c030b2003450d002002200336026c0b20022802582203450d002002200336025c0b20004200370000200041003a0014200041086a4200370000200041106a41003600000b20024190016a24000b7e01017f230041206b22042400200441106a20021028200420032903001028200020012802002203200128020420036b20042802102201200428021420016b20042802002201200428020420016b10092101200428020022000440200420003602040b200428021022000440200420003602140b200441206a24002001450bd406010b7f230041106b220b2400200b41ab081011210320004200370200200041086a4100360200024002402003280204200b2d0000220641017620064101711b220a200220016b4101746a2205410b4f0440200541106a4170712206101d21042000200536020420002006410172360200200020043602080c010b200020054101743a0000200041016a21042005450d010b200441302005100e2104200b2d000021060b200420056a41003a0000200341016a2108200328020821092003280204200641fe01714101762006410171220c1b2103027f20002d00002207410171220d450440410a210420074101762206200a200a20064b1b0c010b20002802002207417e71417f6a210420002802042206200a2006200a491b0b210520092008200c1b2108024002400240027f02400240200520066b20046a20034f0440027f200d044020002802080c010b200041016a0b21044100210720032005460440200321090c050b200620056b220c450440200521090c050b20032005490d01200420084f0d02200420066a20084d0d02200420056a20084d04402008200320056b6a21080c030b200420082005102a200320086a2108200320056b21032005210741000c030b027f2007410171044020002802080c010b200041016a0b2109416f2107200441e6ffffff074d0440410b20044101742204200320066a20056b220720072004491b220441106a4170712004410b491b21070b2007101d2204200820031024200620056b22060440200320046a200520096a200610240b200020043602082000200320066a220336020420002007410172360200200320046a41003a00000c050b200420082003102a200320046a200420056a200c102a200521090c030b20050b2109200420076a220520036a200520096a200c102a0b200420076a20082003102a0b200320096b20066a2103024020002d00004101710440200020033602040c010b200020034101743a00000b200320046a41003a00000b200041016a2103034020012002464504402000280208200320002d00004101711b200a6a20012d000041047641ac086a2d00003a00002000280208200320002d00004101711b200a6a41016a20012d0000410f7141ac086a2d00003a0000200141016a2101200a41026a210a0c010b0b200b41106a24000baf0100230041d0006b2201240020012004370348200141386a20021016200141106a200141286a41a70b101110120240024020012d0024450d00200141106a200141386a2003200141c8006a1013450d00200141003602082001420037030020011001100d20012802001002200020012802002001280204101420012802002200450d01200120003602040c010b200041ab0810111a0b2001280238220004402001200036023c0b200141d0006a24000bfc0301067f230041306b22022400027f41002001280204220520012d000022034101762206200341017122031b22074102490d001a41002001280208200141016a20031b22042d00004130470d001a20042d000141f800464101740b21042002410036021020024200370308200720046b41016a41017622070440200241286a200241106a36020020022007101d2203360220200220033602182002200336021c2002200320076a360224200241086a200241186a101e200241186a101f20012d00002203410176210620012802042105200341017121030b0240024002402005200620031b41017104402001280208200141016a20031b20046a2c000010202203417f460d01200220033a0018200241086a200241186a1021200441017221040b200141016a2106024003402004200128020420012d00002203410176200341017122031b4f0d012001280208200620031b20046a22052c000010202103200541016a2c00001020210502402003417f460d002005417f460d002002200520034104746a3a0018200441026a2104200241086a200241186a10210c010b0b20004100360208200042003702000c020b200020022802083602002000200229020c37020420024100360210200242003703080c020b20004100360208200042003702000b20022802082204450d002002200436020c0b200241306a24000baf0100230041d0006b2201240020012004370348200141386a20021016200141106a200141286a41fc0a101110120240024020012d0024450d00200141106a200141386a2003200141c8006a1013450d00200141003602082001420037030020011001100d20012802001002200020012802002001280204101420012802002200450d01200120003602040c010b200041ab0810111a0b2001280238220004402001200036023c0b200141d0006a24000baf0100230041d0006b2201240020012004370348200141386a20021016200141106a200141286a41d10a101110120240024020012d0024450d00200141106a200141386a2003200141c8006a1013450d00200141003602082001420037030020011001100d20012802001002200020012802002001280204101420012802002200450d01200120003602040c010b200041ab0810111a0b2001280238220004402001200036023c0b200141d0006a24000bda0201017f230041e0006b22012400200120063703582001410036025020014200370348200141c8006a4120100d200128024841004120100e1a2001280248220741203a001f20014100360240200142003703382007200128024c200141386a100f2001280248200128024c200141386a100f2001280248200128024c200141386a100f20022802002002280204200141386a100f20032802002003280204200141386a100f20042802002004280204200141386a100f200141106a200141286a41a60a101110120240024020012d0024450d00200141106a200141386a2005200141d8006a1013450d00200141003602082001420037030020011001100d20012802001002200020012802002001280204101420012802002204450d01200120043602040c010b200041ab0810111a0b2001280238220404402001200436023c0b2001280248220404402001200436024c0b200141e0006a24000bfa0101017f230041d0006b2207240020072006370348200741003602402007420037033820012802002001280204200741386a100f20022802002002280204200741386a100f20032802002003280204200741386a100f20042802002004280204200741386a100f200741106a200741286a41fb09101110120240024020072d0024450d00200741106a200741386a2005200741c8006a1013450d00200741003602082007420037030020071001100d20072802001002200020072802002007280204101420072802002204450d01200720043602040c010b200041ab0810111a0b2007280238220404402007200436023c0b200741d0006a24000be70100230041d0006b2201240020012006370348200141003602402001420037033820022802002002280204200141386a100f20032802002003280204200141386a100f20042802002004280204200141386a100f200141106a200141286a41d009101110120240024020012d0024450d00200141106a200141386a2005200141c8006a1013450d00200141003602082001420037030020011001100d20012802001002200020012802002001280204101420012802002204450d01200120043602040c010b200041ab0810111a0b2001280238220404402001200436023c0b200141d0006a24000baf0100230041d0006b2201240020012004370348200141386a20021016200141106a200141286a418008101110120240024020012d0024450d00200141106a200141386a2003200141c8006a1013450d00200141003602082001420037030020011001100d20012802001002200020012802002001280204101420012802002200450d01200120003602040c010b200041ab0810111a0b2001280238220004402001200036023c0b200141d0006a24000b0b002000410120001b102d0b6701017f20002802002000280204200141046a1025200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b4801017f415021010240200041506a41ff0171410a490d0041a97f21012000419f7f6a41ff01714106490d00200041496a417f200041bf7f6a41ff01714106491b0f0b200020016a0bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10292105200241186a200041086a3602004100210320024100360214200504402005101d21030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a101e200241086a101f0b200241206a24000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101d21032000200236020420002004410172360200200020033602080b2003200120021024200220036a41003a00000b190020004200370200200041086a41003602002000102b20000b10002002044020002001200210261a0b0b270020022002280200200120006b22016b2202360200200141014e044020022000200110261a0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2001017f20002001101d2202360200200020023602042000200120026a3602080b6302017f017e20012103034020035045044020034208882103200241016a21020c010b0b200041003602082000420037020020002002100d2000280204417f6a21020340200150450440200220013c00002002417f6a2102200142088821010c010b0b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b0f002002044020002001200210430b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0be50a020a7f027e23004180026b22002400104410072201102d22021008200041406b200041086a20022001411c102e22014100102f02400240200041406b1030220a500d0041fd0b1031200a510440200110324101460d020c010b41820c1031200a510440200041e0006a4200370300200041d8006a4200370300200042003703702000420037036820004200370350200041003a004c200041003602482000420037034020011032410747044010000b200041013602d001200020013602e0012000200041d0016a3602e401200041e0016a200041406b1033200041206a200120002802d001102f200041206a103402400240200041206a1035450d002000280224450d0020002802202d000041c001490d010b10000b200041f0016a200041206a103620002802f401220141024f044010000b200041f0006a2104200041e8006a210520002802f00121020340200104402001417f6a210120022d00002103200241016a21020c010b0b200020033a004c200020002802d00141016a3602d001200041e0016a200041d0006a22021033200041e0016a200041dc006a22031033200041e0016a20051037200041e0016a20041037200041c0016a200041406b1010210120002d004c2107200041b0016a200210102102200041a0016a2003101021032000290370210a2000290368210b200041206a200041f0016a2001101022042007200041e0016a200210102205200041d0016a200310102206200b200a100c200628020022070440200620073602040b200528020022060440200520063602040b200428020022050440200420053602040b200041206a1038200328020022040440200320043602040b200228020022030440200220033602040b200128020022020440200120023602040b200028025c22010440200020013602600b200028025022010440200020013602540b20002802402201450d02200020013602440c020b41970c1031200a5104402001410110390c020b41ad0c1031200a5104402001410210390c020b41c60c1031200a5104402001410310390c020b41da0c1031200a51044020014104103a0c020b41ef0c1031200a510440200041e8006a4200370300200041e0006a4200370300200041d0006a42003703002000420037037820004200370370200042003703582000420037034820004200370340200041f8006a2102200041f0006a210320011032410747044010000b200041013602f001200020013602202000200041f0016a360224200041206a200041406b1033200041206a200041cc006a22041033200041206a200041d8006a22051033200041206a200041e4006a22061033200041206a20031037200041206a20021037200041b0016a200041406b10102101200041a0016a20041010210220004190016a20051010210320004180016a2006101021042000290378210a2000290370210b200041206a200041f0016a200110102205200041e0016a200210102206200041d0016a200310102207200041c0016a200410102208200b200a101a200828020022090440200820093602040b200728020022080440200720083602040b200628020022070440200620073602040b200528020022060440200520063602040b200041206a1038200428020022050440200420053602040b200328020022040440200320043602040b200228020022030440200220033602040b200128020022020440200120023602040b200028026422010440200020013602680b2000280258220104402000200136025c0b200028024c22010440200020013602500b20002802402201450d02200020013602440c020b41830d1031200a51044020014105103a0c020b419d0d1031200a520d002001410610390c010b10000b103b20004180026a24000b9b0101047f230041106b220124002001200036020c2000047f41cc0d200041086a2202411076220041cc0d2802006a220336020041c80d41c80d280200220420026a41076a417871220236020002400240200341107420024d044041cc0d200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102641086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104520024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104520024d0d0020034104710440100020000f0b200042003702000b20000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103c20012003280208200328020c103d36020c20032001103c410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102e1a200341106a24000f0b20032001103c41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103d10472001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b22012400200010340240024020001035450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001036200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103c200128020c210003402000450d01200141002001280208220320032000103d22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4301017f230041206b22022400200241086a20002802002000280204280200102f200241086a2001103e20002802042200200028020041016a360200200241206a24000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001034200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001103f2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b4601017f230041206b22022400200241086a20002802002000280204280200102f2001200241086a103037030020002802042200200028020041016a360200200241206a24000bbb0301067f230041406a220224002002410036022020024200370318200241186a410010402002412c6a41003602002002420037022441012103024002400240200241306a20001041220428020420022d00302201410176200141017122051b220141014d0440200141016b0d030c010b20014138490d01200141016a210303402001450d03200341016a2103200141087621010c000b000b2004280208200441016a20051b2c0000417f4a0d010b200141016a21030b20022802202003490440200241186a200310400b200241186a200241086a200010412201280208200141016a20012d0000220341017122001b22042001280204200341017620001b22011005200228021c22036a1042200420012003200228021822056a10060340024020022802282203200228022422044622060d00200341786a220128020022004504401000200128020021000b20012000417f6a220036020020000d0020022001360228200241186a2003417c6a2802002201200228021c20016b220310036a10422001200228021822056a22012003200110040c010b0b200645044010000b2005200228021c100a20040440200220043602280b200241406b24000ba20401067f230041e0006b22022400200210232106200242003703182002420037031020001032410447044010000b2002410136022c2002200036022020022002412c6a360224200241306a20004101102f024002402002280234044020022802302d000041c001490d010b200241d0006a10231a0c010b200241c8006a200241306a1036200241306a103f21030240024002400240200228024822000440200228024c220420034f0d010b41002100200241d8006a410036020020024200370350410021040c010b200241d8006a4100360200200242003703502000200420032003417f461b22056a21042005410a4b0d010b200220054101743a0050200241d0006a41017221030c010b200541106a4170712207101d21032002200536025420022007410172360250200220033602580b034020002004470440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b200241186a2100200241106a2103024020022d0000410171450440200241003b01000c010b200228020841003a00002002410036020420022d0000410171450d00200241003602000b200241086a200241d8006a28020036020020022002290350370300200241d0006a102b20022802242204200428020041016a360200200241206a20031037200241206a20001037200241306a200241c8006a200241d0006a20061041200229031020022903182001110700200241306a1038200241e0006a24000bce0302067f027e230041b0016b22022400200241286a4100360200200241186a42003703002002420037033820024200370330200242003703202002420037031020024200370308200241386a2103200241306a210420001032410647044010000b2002410136029001200220003602a001200220024190016a3602a401200241a0016a200241086a1033200241a0016a200241146a22051033200241a0016a200241206a22061033200241a0016a20041037200241a0016a20031037200241e0006a200241086a10102100200241d0006a200510102103200241406b2006101021042002290338210820022903302109200241a0016a200220024190016a20001010220720024180016a200310102205200241f0006a200410102206200920082001110600200628020022010440200620013602040b200528020022010440200520013602040b200728020022010440200720013602040b200241a0016a1038200428020022010440200420013602040b200328020022040440200320043602040b200028020022030440200020033602040b200228022022000440200220003602240b200228021422000440200220003602180b2002280208220004402002200036020c0b200241b0016a24000b880101037f41b80d410136020041bc0d2802002100034020000440034041c00d41c00d2802002201417f6a2202360200200141014845044041b80d4100360200200020024102746a22004184016a280200200041046a28020011030041b80d410136020041bc0d28020021000c010b0b41c00d412036020041bc0d200028020022003602000c010b0b0b2101017f2001103f220220012802044b044010000b2000200120011046200210470b2701017f230041206b22022400200241086a200020014114102e10452100200241206a240020000bcb0101037f230041206b22022400024002402000280204044020002802002d000041c001490d010b20024100360208200242003703000c010b200241186a2000103620022802182103200241106a20001036200228021021042000103f21002002410036020820024200370300200020046a20036b2200450d0020022000102720004101480d002002200228020420032000102620006a3602040b2001280200044020014100360208200142003702000b2001200228020036020020012002290204370204200241206a24000bff0201037f200028020445044041000f0b2000103441012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2f01017f200028020820014904402001102d200028020020002802041026210220002001360208200020023602000b0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102220000b3601017f200028020820014904402001102d200028020020002802041026210220002001360208200020023602000b200020013602040b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210261a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041d08d0436020c41c40d200028020c41076a417871220036020041c80d200036020041cc0d3f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010462000103f6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0bb20502004180080b406174783171717171717171717171717171717171717171717171717171717171717171676533797a6739000030313233343536373839616263646566006174780041d0080be404ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff617478317171717171717171717171717171717171717171717171717171717171717138787568376861006174783171717171717171717171717171717171717171717171717171717171717171786d32727432300061747831717171717171717171717171717171717171717171717171717171717171713934656b6179730061747831717171717171717171717171717171717171717171717171717171717171717967307a67657a00617478317171717171717171717171717171717171717171717171717171717171717172666b346363380061747831717171717171717171717171717171717171717171717171717171717171717a35717064393400617478317171717171717171717171717171717171717171717171717171717171717170366e356d743200696e69740063726f73735f63616c6c5f65637265636f7665720063726f73735f63616c6c5f736861323536686173680063726f73735f63616c6c5f726970656d64313630686173680063726f73735f63616c6c5f64617461436f70790063726f73735f63616c6c5f6269674d6f644578700063726f73735f63616c6c5f626e3235364164640063726f73735f63616c6c5f626e3235365363616c61724d756c0063726f73735f63616c6c5f626e32353650616972696e67"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_CROSS_CALL_ECRECOVER = "cross_call_ecrecover"; - - public static final String FUNC_CROSS_CALL_SHA256HASH = "cross_call_sha256hash"; - - public static final String FUNC_CROSS_CALL_RIPEMD160HASH = "cross_call_ripemd160hash"; - - public static final String FUNC_CROSS_CALL_DATACOPY = "cross_call_dataCopy"; - - public static final String FUNC_CROSS_CALL_BIGMODEXP = "cross_call_bigModExp"; - - public static final String FUNC_CROSS_CALL_BN256ADD = "cross_call_bn256Add"; - - public static final String FUNC_CROSS_CALL_BN256SCALARMUL = "cross_call_bn256ScalarMul"; - - public static final String FUNC_CROSS_CALL_BN256PAIRING = "cross_call_bn256Pairing"; - - protected ContractCallPrecompile(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractCallPrecompile(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallPrecompile.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallPrecompile.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallPrecompile.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallPrecompile.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall cross_call_ecrecover(byte[] msgh, Uint8 v, byte[] r, byte[] s, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_CROSS_CALL_ECRECOVER, Arrays.asList(msgh,v,r,s,value,gas), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall cross_call_sha256hash(String in, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_CROSS_CALL_SHA256HASH, Arrays.asList(in,value,gas), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall cross_call_ripemd160hash(String in, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_CROSS_CALL_RIPEMD160HASH, Arrays.asList(in,value,gas), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall cross_call_dataCopy(String in, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_CROSS_CALL_DATACOPY, Arrays.asList(in,value,gas), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall cross_call_bigModExp(byte[] base, byte[] exponent, byte[] modulus, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_CROSS_CALL_BIGMODEXP, Arrays.asList(base,exponent,modulus,value,gas), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall cross_call_bn256Add(byte[] ax, byte[] ay, byte[] bx, byte[] by, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_CROSS_CALL_BN256ADD, Arrays.asList(ax,ay,bx,by,value,gas), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall cross_call_bn256ScalarMul(byte[] x, byte[] y, byte[] scalar, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_CROSS_CALL_BN256SCALARMUL, Arrays.asList(x,y,scalar,value,gas), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall cross_call_bn256Pairing(String in, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_CROSS_CALL_BN256PAIRING, Arrays.asList(in,value,gas), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractCallPrecompile load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractCallPrecompile(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractCallPrecompile load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractCallPrecompile(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCallerByRet.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCallerByRet.java deleted file mode 100644 index 67558d6adf..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCallerByRet.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractCallerByRet extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001c7011c60017f017f60047f7f7f7f0060027f7f0060017f0060037f7f7f017f60037f7f7f0060027f7f017f60000060027e7e017f60047f7f7f7f017f60027f7e0060047f7e7e7f0060057f7f7f7f7f0060057f7e7e7e7e006000017f60047e7e7e7e017f60017f017e60037f7e7f017e60037f7f7e0060047f7e7e7e0060027f7c0060037e7e7f0060077f7f7f7f7f7f7f017f600a7f7f7f7f7f7f7f7f7f7f017f600b7f7f7f7f7f7f7f7f7f7f7f017f600a7f7f7f7f7e7f7e7f7f7f017f60017e017f60027e7f017f02e3020f03656e760c706c61746f6e5f6465627567000203656e760c706c61746f6e5f70616e6963000703656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000803656e760f706c61746f6e5f726c705f75313238001503656e760b706c61746f6e5f63616c6c001603656e761d706c61746f6e5f6765745f63616c6c5f6f75747075745f6c656e677468000e03656e7616706c61746f6e5f6765745f63616c6c5f6f7574707574000303656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000103656e760d706c61746f6e5f72657475726e000203636207120602000c000504030202000a020a02030a0903000003020602030005060302020000000204040200070405101003000300061a070206090101001719180400080b13090500050c0f0d0d1b0802080214030705000001000004110b0b0008000f0405017001060605030100020608017f0141f0a2040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000f0f5f5f66756e63735f6f6e5f65786974004406696e766f6b650039090b010041010b05484968696a0af4da0162040010620b8c1c020d7f017e230041d0016b22032400200341306a4180081011210f2001280208200141016a220e20012d0000220441017122051b21092001280204200441017620051b210a410021044101210602400340200641017141002004200a491b0440200420096a2d00002205415f6a41ff017141de004921062007200541bf7f6a41ff0171411a4972210720082005419f7f6a41ff0171411a49722108200441016a21040c0105024020062007200871410173712107200a450d00200a210403402004450d01200420096a21062004417f6a220521042006417f6a2d00004131470d000b0c030b0b0b417f21050b024002402007410171450d00200541076a200a4b0d00200541016a4102490d00200a41da004b0d00410021042003410036028801200342003703800120034180016a200a2005417f7322086a10124101210702400240024003402004200128020420012d00002206410176200641017122061b20086a4f044002402007410171450d05200341f0006a1013220841016a210d410021040340200420054604402008280204220720032d007022044101762209200441017122061b2205200f28020420032d00302204410176200441017122041b470d05200f280208200f41016a20041b210420060d0220092105200d210603402005450440200921070c080b20062d000020042d0000470d06200441016a2104200641016a21062005417f6a21050c000b00052001280208200e20012d00004101711b20046a2c00002209412072210a200941bf7f6a411a49210c027f20032d00702206410171220b45044020064101762106410a0c010b200828020421062008280200417e71417f6a0b2107200a2009200c1b2109027f024002402006200746044020082007410120072007101420032d0070410171450d010c020b200b0d010b2003200641017441026a3a0070200d0c010b2008200641016a36020420082802080b20066a220641003a0001200620093a0000200441016a21040c010b000b000b0520032802800120046a2001280208200e20061b20056a20046a41016a2d00004190086a2d000022063a00002007200641ff0147712107200441016a21040c010b0b2005450d012008280208210603402005450d0220062d000020042d0000470d01200441016a2104200641016a21062005417f6a21050c000b000b200341206a4200370300200341286a410036020020034200370318200341003a002c2003280280012204450d0320032004360284010c030b41002104200341003602c001200342003703b801200341b8016a2007410174410172101203402004200828020420032d00702205410176200541017122051b22064f45044020032802b80120046a2008280208200d20051b20046a2d000022054105763a000020032802b801200828020420032d0070220641017620064101711b6a20046a41016a2005411f713a0000200441016a21040c010b0b20032802b80120066a41003a000020032802bc0121050240200328028401220620032802800122046b22074101480d00200720032802c001220920056b4c0440034020042006460d02200520042d00003a0000200320032802bc0141016a22053602bc01200441016a21040c000b000b200341a8016a200341c0016a36020041002108200341003602a401200520032802b80122016b210a200520076a20016b2207200920016b2209410174220120012007491b41ffffffff07200941ffffffff03491b220904402009101521080b200320083602980120032008200a6a22073602a0012003200820096a3602a4012003200736029c0120034198016a410472210803402004200646450440200720042d00003a0000200320032802a00141016a22073602a001200441016a21040c010b0b20032802b801200520081016024020032802bc01220620056b220441004c044020032802a00121050c010b200320032802a00120052004101720046a22053602a00120032802bc0121060b20032802b80121042003200328029c013602b8012003200436029c01200320053602bc01200320063602a00120032802c0012105200320032802a4013602c001200320053602a401200320043602980120034198016a101820032802bc0121050b200342003702bc0120032802b8012106200341003602b801200520066b21054101210403402005044020062d000041002004411d764101716b41b3c5d1d0027141002004411c764101716b41dde788ea037141002004411b764101716b41fab384f5017141002004411a764101716b41ed9cc2b20271410020044119764101716b41b2afa9db0371200441057441e0ffffff037173737373737321042005417f6a2105200641016a21060c010b0b20044101470d004100210b200341003602c001200342003703b8012003410036022020034200370318027f4100200328028401417a6a220620032802800122046b2205450d001a200341186a2005101903402004200646450440200328021c220520042d00003a00002003200541016a36021c200441016a21040c010b0b2003280218210b200328021c0b200b6b210d200341c0016a210e41002104410021094100210c02400340200c200d46044002402009410820046b7441ff0171452004410548712104200b04402003200b36021c0b20040d0020032802b80121040c030b05200b200c6a2d0000200941057441e01f71722109200441056a21040340200441084e04402009200441786a220476210620032802bc01220720032802c0012208490440200720063a0000200320032802bc0141016a3602bc010c02052003200e3602a80141002105200341003602a401200720032802b80122016b220741016a220a200820016b220841017422012001200a491b41ffffffff07200841ffffffff03491b220804402008101521050b2003200536029801200520076a220720063a00002003200520086a3602a4012003200736029c012003200741016a3602a001200341b8016a20034198016a101a20034198016a10180c020b000b0b200c41016a210c0c010b0b20032802bc0120032802b80122046b4114470d00200341a8016a4100360200200341a0016a42003703002003420037039801410021040340200441144645044020034198016a20046a41003a0000200441016a21040c010b0b20032802bc0120032802b80122056b2106410021040340024020042006460d00200441134b0d0020034198016a20046a200420056a2d00003a0000200441016a21040c010b0b200341286a200341a8016a280200360200200341206a200341a0016a2903003703002003200329039801370318200341013a002c20050440200320053602bc010b2003280280012204044020032004360284010b200341f0006a4190091011220528020420032d00702204410176200441017122061b21042005280208200541016a20061b210542a5c688a1c89ca7f94b21100340200404402004417f6a21042005300000201042b383808080207e852110200541016a21050c010b0b200341b8016a101b220428020421050240200441106a2802002206200441146a280200220749044020062005ad4220864201843702002004200428021041086a3602100c010b027f41002006200428020c22086b410375220641016a2209200720086b2207410275220820082009491b41ffffffff01200741037541ffffffff00491b2208450d001a200841037410150b2107200720064103746a22062005ad42208642018437020020062004280210200428020c22016b22056b2109200720084103746a2107200641086a2106200541014e044020092001200510171a0b20042007360214200420063602102004200936020c0b200341b0016a4100360200200341a8016a4200370300200341a0016a4200370300200342003703980120034198016a2010101c2004200328029801101d20042010101e200341306a2004101f2003280230210620034190016a2004101f2003410036028801200342003703800102402003280290012003280294016a20066b2205450d0020034180016a2005101920054101480d00200320032802840120062005101720056a360284010b20034198016a4104721020200428020c22050440200420053602100b20034198016a42001021200341b8016a20021021200341186a200328028001220420032802840120046b2003280298012205200328029c0120056b20032802b801220520032802bc0120056b1006210520032802b80122060440200320063602bc010b200328029801220604402003200636029c010b2004044020032004360284010b2005450440200341003602c001200342003703b801200341b8016a1007101220032802b801100820034198016a20032802b801220420032802bc0120046b411c1022220410230240024020041024450d00200410250d0020042802040d010b41950910260b20034180016a2004102720032802840141024f044041950910260b20032802b80122040440200320043602bc010b2000420037031020034198016a1013419e09102841a30910282204411710292003200441a309102841a509102841a309102841aa09102841a309102841c60a102841a309102841cb0a102841a309102841d40a10282204280208200441016a20032d0098014101711b3602002003102a0c040b2000420137031020034198016a1013419e09102841a30910282204411a10292003200441a309102841a509102841a309102841aa09102841a309102841c60a102841a309102841cb0a102841a309102841940b10282204280208200441016a20032d0098014101711b360210200341106a102a0c030b2004450d00200320043602bc010b2003280280012204450d0020032004360284010b200341206a4200370300200341286a410036020020034200370318200341003a002c0b200341d0016a24000b1f0020004200370200200041086a4100360200200020012001102b102c20000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b20002001102d2106200241186a200041086a3602002002410036021441002101200604402006101521010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a101a200241086a10180c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000102e20000b920101027f027f20002d0000410171044020002802080c010b200041016a0b2106416f2105200141e6ffffff074d0440410b20014101742205200120026a220120012005491b220541106a4170712005410b491b21050b2005101521012004044020012006200410630b200320046b22030440200120046a200420066a200310630b20002001360208200020054101723602000b0b002000410120001b10380b270020022002280200200120006b22016b2202360200200141014e044020022000200110171a0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b2001017f2000200110152202360200200020023602042000200120026a3602080b6701017f20002802002000280204200141046a1016200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2900200041003602082000420037020020004100102f200041146a41003602002000420037020c20000bba0102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b024020024138490d002002210303402003450d01200241016a2102200341087621030c000b000b200241016a21020b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020026a3602000b13002000280208200149044020002001102f0b0b9a0101037f2000420020011004200028020422026a103042002001200220002802006a10050340024020002802102202200028020c460d00200241786a2802004504401001200028021021020b200241786a22032003280200417f6a220436020020040d002000200336021020002002417c6a2802002202200028020420026b220310026a1030200220002802006a22022003200210030c010b0b0b2200200128020c200141106a28020047044041a40c10260b200020012902003702000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b6302017f017e20012103034020035045044020034208882103200241016a21020c010b0b20004100360208200042003702002000200210122000280204417f6a21020340200150450440200220013c00002002417f6a2102200142088821010c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106420024f0d002003410471044010010c010b200042003702000b02402003411071450d002000106420024d0d0020034104710440100120000f0b200042003702000b20000b4101017f200028020445044010010b0240200028020022012d0000418101470d00200028020441014d047f100120002802000520010b2c00014100480d0010010b0b980101037f200028020445044041000f0b20001023200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100120002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100120002802000520020b20016a2d00004100470b0b1900200028020445044041000f0b200010312d000041bf014b0b0c0020002000102b100010010be30101047f027f200110322203200128020422024b047f419509102620012802040520020b04404100200110312c0000417f4a0d011a0b0240024020011033450d00200110312d000041b801490d00200110312d000041c97e6a21020c010b4100210220011025450d00200110312d000041f801490d00200110312d000041897e6a21020b200241016a0b21022000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0c00200020012001102b10360b950201047f230041306b22022400200241286a410036020020024200370320200241206a102e200241206a2002280220417e71417f6a410a20022d00204101711b1034200228022420022d0020220341017620034101711b2104200241206a41017221050340024020022001360200200241206a027f2002280228200520034101711b200441016a20021035220341004e0440200320044d0d0220030c010b20044101744101720b2204103420022d002021030c010b0b200241206a20031034200241186a2204200241286a28020036020020022002290320370310200241206a102e20002004280200200241106a41017220022d0010220441017122031b2002280214200441017620031b10361a200241306a24000b3b01017f23004190086b220124002001200036020c200141106a418008418f0b200010471a200141106a200141106a102b100020014190086a24000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101521032000200236020420002004410172360200200020033602080b2003200120021063200220036a41003a00000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2f01017f2000280208200149044020011038200028020020002802041017210220002001360208200020023602000b0b3601017f2000280208200149044020011038200028020020002802041017210220002001360208200020023602000b200020013602040b2e01017f02402000280200220104402000280204450d0120010f0b41cc0b41b4011037000b41970c41b5011037000bff0201037f200028020445044041000f0b2000102341012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10010b20020b1900200028020445044041000f0b200010312d000041c001490b880201037f0240027f20002d000022034101712202044020002802040c010b20034101760b22042001490440200120046b2204450d01027f2002044020002802002203417e71417f6a210220002802040c010b410a210220034101760b2201027f200220016b200449047f20002002200120046a20026b20012001101420002d00000520030b410171044020002802080c010b200041016a0b22036a41002004104e1a200120046a2101024020002d00004101710440200020013602040c010b200020014101743a00000b200120036a41003a00000f0b20020440200028020820016a41003a0000200020013602040f0b200020016a41016a41003a0000200020014101743a00000b0b2a01017f230041106b220324002003200236020c20002001418621200210472102200341106a240020020baf0201057f0240027f20002d00002205410171220604402000280204210420002802002205417e71417f6a0c010b20054101762104410a0b220320046b20024f04402002450d012004027f2006044020002802080c010b200041016a0b22036a200120021063200220046a2104024020002d00004101710440200020043602040c010b200020044101743a00000b200320046a41003a000020000f0b027f2005410171044020002802080c010b200041016a0b2107200220046a2105416f2106200341e6ffffff074d0440410b20034101742203200520052003491b220341106a4170712003410b491b21060b2006101521032004044020032007200410630b200320046a200120021063200020053602042000200641017236020020002003360208200320056a41003a00000b20000b3501017f230041106b220224002002200136020c2002418c0c360208200241d30b3602042002200036020020021061410010671a000b9b0101047f230041106b220124002001200036020c2000047f41ec22200041086a2202411076220041ec222802006a220336020041e82241e822280200220420026a41076a417871220236020002400240200341107420024d044041ec22200341016a360200200041016a21000c010b2000450d010b200040000d0010010b20042001410c6a4104101741086a0541000b2100200141106a240020000bb80502087f017e230041f0006b2200240010621009220210382201100a200041d8006a200041086a20012002103a22044100103b0240200041d8006a103c220850044041bb0c10260c010b41cb0c103d20085104402004103e200041d8006a103f10400c010b41cb0a103d2008510440200041406b101321062000420037035020041041410347044041d00c10260b200041d8006a20044101103b0240200041d8006a1033450440200041306a10131a0c010b200041206a200041d8006a1027200041d8006a1032210102400240024002402000280220220204402000280224220320014f0d010b41002102200041386a410036020020004200370330410021030c010b200041386a4100360200200042003703302002200320012001417f461b22056a21032005410a4b0d010b200020054101743a0030200041306a41017221010c010b200541106a4170712207101521012000200536023420002007410172360230200020013602380b034020022003470440200120022d00003a0000200141016a2101200241016a21020c010b0b200141003a00000b024020002d0040410171450440200041003b01400c010b200028024841003a00002000410036024420002d0040410171450d00200041003602400b200041c8006a200041386a28020036020020002000290330370340200041306a102e200041d8006a20044102103b2000200041d8006a103c370350200041d8006a103f2102200041206a20061042210120002903502108200041d8006a200041306a2001104220081010200210400c010b41800d103d20085104402004103e200041406b103f210120002903502108200041d8006a101b220220081043101d20022008101e200041306a2002101f20002802302000280234100e200228020c22030440200241106a20033602000b200110400c010b418b0d10260b1044200041f0006a24000b0c00200020012002411c10220bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104520012003280208200328020c104636020c200320011045410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410221a200341106a24000f0b20032001104541002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104610662001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b820102027f017e230041106b22012400200010230240024020001024450d00200010250d0020002802040d010b41950910260b200141086a20001027200128020c220041094f044041950910260b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b110020001041410147044041d00c10260b0bf00101067f230041d0006b22012400200042b388bc9ee59b8a9d1b37030820004200370300200141386a101b22042000290308101e200141306a2004101f02402001280230220520012802342206100b22024504400c010b2001410036022820014200370320200141206a200210122005200620012802202205200128022420056b100c417f4704402000200141086a2001280220220341016a20012802242003417f736a103a103c370310200221030b20012802202202450d00200120023602240b200428020c22020440200441106a20023602000b2003450440200020002903003703100b200141d0006a240020000b9c0201077f230041d0006b22022400200241386a101b220420002903081043101d20042000290308101e200241306a2004101f200241186a101b210120002903101043210641011015220341fe013a0000200128020c200141106a28020047044041a40c10260b2001280204220541016a220720012802084b047f20012007102f20012802040520050b20012802006a2003410110171a2001200128020441016a3602042001200341016a200620036b6a101d20012000290310101e2002280234210020022802302103200241106a2001101f20022802102105200241086a2001101f200320002005200228020c100d200128020c22000440200120003602100b200428020c22010440200441106a20013602000b200241d0006a24000b870101047f230041106b22012400024020001025450d002000280204450d0020002802002d000041c001490d00200141086a20001045200128020c210003402000450d01200141002001280208220320032000104622046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102c20000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000101c2001280200210220014104721020200141206a240020020b880101037f41cc22410136020041d0222802002100034020000440034041d42241d4222802002201417f6a2202360200200141014845044041cc224100360200200020024102746a22004184016a280200200041046a28020011030041cc22410136020041d02228020021000c010b0b41d422412036020041d022200028020022003602000c010b0b0b2101017f20011032220220012802044b044010010b2000200120011065200210660b2701017f230041206b22022400200241086a200020014114102210642100200241206a240020000bfa16030f7f027e037c230041306b220a2400200a200236020c4101410220001b210b200a410f6a21110340410020066b21070240034020022d00002204450d01200441254704402004411874411875200020062001200b110100200a200241016a220236020c2007417f6a2107200641016a21060c010b0b200a200241016a220236020c410021040340024002400240024020022c0000220941556a220541054b0440200941606a220541034b0d0102400240200541016b0e03030301000b200a200241016a220236020c200441087221040c060b200a200241016a220236020c200441107221040c050b200541016b0e050002000003010b0240200941506a41ff017141094d0440200a410c6a104a210d200a28020c21020c010b4100210d2009412a470d0020032802002105200a200241016a220236020c2004410272200420054100481b210420052005411f7522096a200973210d200341046a21030b41002109024020022d0000412e470d00200a200241016a220836020c200441800872210420022d0001220541506a41ff017141094d0440200a410c6a104a2109200a28020c21020c010b200541ff0171412a470440200821020c010b20032802002105200a200241026a220236020c20054100200541004a1b2109200341046a21030b0240024020022c000041987f6a411f77220541094b0d000240024002400240200541016b0e09020004040403040403010b200a200241016a220836020c20022d0001220541ec004704402004418002722104200821020c050b200a200241026a220236020c20044180067221040c030b200a200241016a220836020c20022d0001220541e8004704402004418001722104200821020c040b200a200241026a220236020c200441c0017221040c020b200a200241016a220236020c20044180047221040c010b200a200241016a220236020c20044180027221040b20022d000021050b0240024002400240024002400240024002402005411874411875220c419e7f6a220841164b0440200c4125470440200c41c600460d07200c41d800470d020c080b4125200020062001200b1101000c020b200841016b0e15040600050000060000000000060200000300060000060b200c200020062001200b1101000b200a200241016a220236020c200641016a21060c0c0b200b200020062001200328020041004110200941082004412172104b2106200a200241016a220236020c200341046a21030c0b0b20032802002205417f6a21070340200741016a22072d00000d000b200720056b2207200920072009491b2007200441800871220c410a761b210802402004410271220e0440200621040c010b410021070340200620076a2104200720086a220f200d4f4504404120200020042001200b110100200741016a21070c010b0b200f41016a21080b200341046a21030340024020052d00002206450d00200c04402009450d012009417f6a21090b2006411874411875200020042001200b110100200441016a2104200541016a21050c010b0b200e450440200421060c050b410021070340200420076a2106200720086a200d4f0d054120200020062001200b110100200741016a21070c000b000b410121070240200441027122090440200621050c010b410121040340200420066a417f6a21052004200d4f450440200441016a21044120200020052001200b1101000c010b0b200441016a21070b20032c0000200020052001200b110100200541016a21062009450d0203402007200d4f0d034120200020062001200b110100200641016a2106200741016a21070c000b000b200941062004418008711b220941037441a00d6a2108200341076a417871220e2b0300211541002105034002402009410a490d002005411f4b0d00200a41106a20056a41303a0000200841786a21082009417f6a2109200541016a21050c010b0b027f4400000000000000002015a1201520154400000000000000006322101b22159944000000000000e0416304402015aa0c010b4180808080780b2103027f20152003b7a120082b03002217a2221644000000000000f041632016440000000000000000667104402016ab0c010b41000b210c02402016200cb8a1221644000000000000e03f644101734504402017200c41016a220cb8654101730d01200341016a21034100210c0c010b201644000000000000e03f620d00200c45200c41017172200c6a210c0b4100210802402015440000c0ffffffdf41640d00024020090440200520096a41606a2112034002402005412046044041202105201221090c010b200a41106a20056a200c200c410a6e220841766c6a4130723a0000200541016a21052009417f6a2109200c41094b210f2008210c200f0d010b0b034002402005411f4b22080d002009450d00200a41106a20056a41303a0000200541016a21052009417f6a21090c010b0b20080d01200a41106a20056a412e3a0000200541016a21050c010b20152003b7a1221544000000000000e03f64410173450440200341016a21030c010b20032003201544000000000000e03f61716a21030b03402005411f4d0440200a41106a20056a20032003410a6d220941766c6a41306a3a0000200541016a2105200341096a210820092103200841124b0d010b0b20044103712109034002402005411f4b0d0020094101470d002005200d4f0d00200a41106a20056a41303a0000200541016a21050c010b0b20044101712108200441027121090240200d2004410c714100472010726b20052005200d461b2205411f4b0d0002402010410173450440200a41106a20056a412d3a00000c010b20044104710440200a41106a20056a412b3a00000c010b2004410871450d01200a41106a20056a41203a00000b200541016a21050b024020082009720440200621080c010b410021040340200420066a2108200420056a200d4f0d014120200020082001200b110100200441016a21040c000b000b200720086a2106034020050440200520116a2c0000200020082001200b110100200641016a21062005417f6a2105200841016a21080c010b0b2009450d0003402006200d4f0d014120200020082001200b110100200641016a2106200841016a21080c000b000b200e41086a2103200a200241016a220236020c200821060c080b41102108024002400240200541ff0171220741d8004622050d00200741f800460d00200741ef00460440410821080c020b200741e200460440410221080c020b2004416f712104410a21080b2004412072200420051b2104200741e400460d01200741e900460d010b200441737121040b2004417e7120042004418008711b2104200741e900474100200741e400471b4504402004418004710440200b200020062001200341076a417871220729030022132013423f8722147c2014852013423f88a72008ad2009200d2004104c2106200741086a21030c030b2004418002710440200b200020062001200328020022072007411f7522056a2005732007411f7620082009200d2004104b21060c020b200b200020062001027f200441c00071044020032c00000c010b2003280200220741107441107520072004418001711b0b2207411f75220520076a2005732007411f7620082009200d2004104b21060c010b2004418004710440200b200020062001200341076a417871220729030041002008ad2009200d2004104c2106200741086a21030c020b2004418002710440200b2000200620012003280200410020082009200d2004104b21060c010b200b200020062001027f200441c00071044020032d00000c010b2003280200220741ffff037120072004418001711b0b410020082009200d2004104b21060b200341046a21030b200a200241016a220236020c0c050b200a200241016a220236020c200441047221040c020b200a200241016a220236020c200441027221040c010b200a200241016a220236020c200441017221040c000b000b0b4100200020062001417f6a20062001491b2001200b110100200a41306a240020060b140020022003490440200120026a20003a00000b0b0300010b4501037f20002802002101034020012d000041506a41ff017141094b4504402000200141016a220336020020012c00002002410a6c6a41506a2102200321010c010b0b20020bad0101067f230041206b220b240020092009416f7120041b210c02402004450440200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a2004200420066e220e20066c6b220a4130200d200a41187441808080d000481b6a3a0000200941016a210a2009411e4b0d01200420064f210f200a2109200e2104200f0d000b0b2000200120022003200b200a2005200620072008200c104d2104200b41206a240020040bba0102057f017e230041206b220b240020092009416f712004420052220a1b210c0240200a4504404100210a200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a4130200d20042004200680220f20067e7da7220a41187441808080d000481b200a6a3a0000200941016a210a2009411e4b0d01200420065a210e200a2109200f2104200e0d000b0b2000200120022003200b200a20052006a720072008200c104d2109200b41206a240020090bf20401037f200a410271210d2005210b02400340200d0d010240200b20084f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410371410147210c2005210b02400340200c0d010240200b20094f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410171210c024002400240200a41107104400240200a418008710d002005450d002005200847410020052009471b0d002005417e6a2005417f6a220b200b1b200b20074110461b21050b0240200741104604400240200a412071220b0d002005411f4b0d00200420056a41f8003a0000200541016a21050c020b200b450d012005411f4b0d01200420056a41d8003a0000200541016a21050c010b20074102470d002005411f4b0d00200420056a41e2003a0000200541016a21050b2005411f4b0d01200420056a41303a0000200541016a21050c010b20050d00410021050c010b2009200a410c714100472006726b200520052009461b2205411f4b0d010b20060440200420056a412d3a0000200541016a21050c010b200a4104710440200420056a412b3a0000200541016a21050c010b200a410871450d00200420056a41203a0000200541016a21050b2002210b0240200c200d720d002005210c0340200c20094f0d0141202001200b20032000110100200c41016a210c200b41016a210b0c000b000b2004417f6a210c037f2005047f2005200c6a2c00002001200b200320001101002005417f6a2105200b41016a210b0c01050240200d450d00410020026b210503402005200b6a20094f0d0141202001200b20032000110100200b41016a210b0c000b000b200b0b0b0bfc0202027f017e02402002450d00200020013a0000200020026a2203417f6a20013a000020024103490d00200020013a0002200020013a00012003417d6a20013a00002003417e6a20013a000020024107490d00200020013a00032003417c6a20013a000020024109490d002000410020006b41037122046a2203200141ff017141818284086c22013602002003200220046b417c7122046a2202417c6a200136020020044109490d002003200136020820032001360204200241786a2001360200200241746a200136020020044119490d002003200136021820032001360214200320013602102003200136020c200241706a20013602002002416c6a2001360200200241686a2001360200200241646a20013602002001ad220542208620058421052004200341047141187222016b2102200120036a2101034020024120490d0120012005370300200141186a2005370300200141106a2005370300200141086a2005370300200141206a2101200241606a21020c000b000b20000b5901017f200020002802482201417f6a20017236024820002802002201410871044020002001412072360200417f0f0b200042003702042000200028022c220136021c200020013602142000200120002802306a36021041000b4402017f017e200142ffffffffffff3f832103027f2001423088a741ffff0171220241ffff01470440410420020d011a410241032000200384501b0f0b2000200384500b0bc50101037f230041206b2204240002402002423088a7220641ffff0171220541ffff01460d0020054504402003027f410020012002420042001070450d001a20042001200242808080808080c0bbc0001052200441106a2004290300200441086a290300200310512004290318210220042903102101200328020041887f6a0b3602000c010b200320054182807f6a360200200242ffffffffffff3f832006418080027141feff0072ad4230868421020b2000200137030020002002370308200441206a24000ba60a02047f107e230041e0006b220424002004200242ffffffffffff3f83370358200420013703502004200342ffffffffffff3f83220c370348200442003703402002200385428080808080808080807f8321090240027e02400240024002402002423088a741ffff01712206417f6a41fdff014d41002003423088a741ffff01712205417f6a41feff01491b0d00200150200242ffffffffffffffffff0083220a42808080808080c0ffff0054200a42808080808080c0ffff00511b450440200242808080808080208421090c060b4101200342ffffffffffffffffff0083220242808080808080c0ffff0054200242808080808080c0ffff00511b45044020034280808080808020842109420021010c060b2001200a42808080808080c0ffff008584500440200250450d0242808080808080e0ffff0021090c030b200242808080808080c0ffff00855004402001200a84210242002101200250044042808080808080e0ffff0021090c070b200942808080808080c0ffff008421090c060b2001200a842103420021012003500d052002500d05200a42ffffffffffff3f580440200441d0006a106f21070b200242ffffffffffff3f560d00200441406b106f20076a21072004290348210c200429034021080b2004200837034020042004290358220d42808080808080c00084220f3703582004200c42808080808080c0008422103703482004290350220342208822022008420f86428080feff0f8322017e2211200342ffffffff0f832203200842118842ffffffff0f83220a7e7c220e4220862212200120037e7c220b201254ad200d42ffffffff0f83220d20017e22142003200c420f8620084231888442ffffffff0f8322087e7c22122002200a7e7c2213200e201154ad422086200e422088847c220e2001200f422088220c7e2215201042118842ffffffff0f83220120037e7c220f200a200d7e7c2210200220087e7c22114220867c22167c2103200520066a20076a4181807f6a21050240200a200c7e22172008200d7e7c220a201754ad200a200120027e7c2202200a54ad7c2001200c7e7c2001200d7e22012008200c7e7c2208200154ad4220862008422088847c200220084220867c2208200254ad7c20082012201454ad2013201254ad7c7c2202200854ad7c20022011201054ad200f201554ad2010200f54ad7c7c4220862011422088847c2208200254ad7c2008200e201354ad2016200e54ad7c7c2202200854ad7c220842808080808080c0008350450440200541016a21050c010b200b423f88210120084201862002423f8884210820024201862003423f88842102200b420186210b200120034201868421030b200541ffff014e0440200942808080808080c0ffff008421090c020b200541004a0d02410120056b220641ff004b0d01200441106a200b20032006106c200441206a20022008200541ff006a2205106b200441306a200b20032005106b2004200220082006106c2004290330200441386a29030084420052ad200429032020042903108484210b200441286a290300200441186a29030084210320042903002102200441086a2903000c030b200942808080808080c0ffff008421090b420021010c020b200842ffffffffffff3f832005ad423086840b2009842109200b502003427f552003428080808080808080807f511b4504402009200242017c2201200254ad7c21090c010b200b2003428080808080808080807f858450450440200221010c010b2009200220024201837c2201200254ad7c21090b2000200937030820002001370300200441e0006a24000b9a2f021d7f047e230041e03c6b2206240020064189213602d002200641b6026a211d419e7d20066b211e200641df026a211f200641e0026a410872211c200641e0026a410972211820064190396a2120200641e0026a211a200641b7026a211602400240024003400240200441ffffffff0720126b4a0d00200420126a2112024002400240027f0240027f02400240024002400240024002400240024002400240024002400240024020062802d00222092d000022070440410021042009210503400240200741ff01712207450d0020074125460d00200441016a210420052d00012107200541016a21050c010b0b200620053602d0022004210503400240200520096a22072d00004125470d00200741016a2d00004125470d00200441016a2104200541026a21050c010b0b200620073602d002200441ffffffff0720126b220b4a0d162000044020002009200410540b20040d17417f210f200741016a22042c000041506a220541094d0440200741036a2004200741026a2d000041244622071b21042005417f20071b210f4101201720071b21170b4100210503400240200620043602d00220042c0000220a41606a2207411f4b0d00410120077422074189d10471450d00200441016a2104200520077221050c010b0b0240200a412a460440027f0240200441016a220a2c000041506a220741094b0d00200441026a2d00004124470d00200320074102746a410a360200200441036a210a41012117200441016a2c000041047420026a41807a6a2802000c010b20170d0620004504402006200a3602d00241002117410021100c030b20012001280200220441046a3602004100211720042802000b21102006200a3602d0022010417f4a0d01410020106b211020054180c0007221050c010b200641d0026a105522104100480d1720062802d002210a0b41002104417f2108027f200a2d0000412e470440200a210741000c010b200a2d0001412a460440027f0240200a2c000241506a220741094b0d00200a2d00034124470d00200320074102746a410a360200200a41046a2107200a2c000241047420026a41807a6a2802000c010b20170d06200a41026a210741002000450d001a20012001280200220a41046a360200200a2802000b2108200620073602d0022008417f73411f760c010b2006200a41016a3602d002200641d0026a1055210820062802d002210741010b210e03402004210a20072c000041bf7f6a220441394b0d03200741016a2107200a413a6c20046a41f01c6a2d00002204417f6a4108490d000b200620073602d0022004450d030240024002402004411b460440200f417f4c0d010c070b200f4100480d012003200f4102746a200436020020062002200f4104746a22042903003703c0022006200441086a2903003703c8020b410021042000450d190c010b2000450d1a200641c0026a2004200110560b200541ffff7b712211200520054180c000711b210c2007417f6a2c00002204415f7120042004410f714103461b2004200a1b221341ad7f6a220441254d0d01201341bf7f6a220441064b0d040240200441016b0e03050005060b200641003602fc01200620062903c0023e02f8012006200641f8016a3602c002417f2108200641f8016a0c100b20000d192017450d18200241106a2107200341046a210541012104034002402004410a47047f200528020022090d01200405410a0b41027421040340200441046a2205412c460440410121120c1d0b200320046a2107200521042007280200450d000b0c040b2007200920011056200741106a2107200541046a2105200441016a21040c000b000b200441016b0e25020202020b0202020202020202030207080303030208020202050c090a020204020f02020b0d0b200620073602d0020b41e02241163602000c140b4100210541d020210f0c0f0b2008417f4c4100200e1b0d1020062903c002212220062903c80221212006410036028c03027f2021427f5704402021428080808080808080807f8521214101211541e1200c010b200c4180107104404101211541e4200c010b41e72041e220200c41017122151b0b211b024020222021105041014c0440200041202010201541036a2204201110572000201b20151054200041fc20418021201341207141057622051b41f42041f82020051b202220212022202110581b410310542000412020102004200c4180c0007310572010200420042010481b21040c010b200641e0016a202220212006418c036a1051200641d0016a20062903e001222120062903e801222220212022105920062903d0012221200641d8016a290300222242004200107004402006200628028c03417f6a36028c030b2013412072221941e100460440201b41096a201b201341207122091b210e02402008411a4b0d00411b20086b450d00200841656a210442808080808080c081c000212342002124034020040440200641f0006a2024202342808080808080c081c0001052200441016a2104200641f8006a2903002123200629037021240c010b0b200e2d0000412d460440200641406b20212022428080808080808080807f8520242023105a200641306a202420232006290340200641c8006a2903001059200641386a290300428080808080808080807f852122200629033021210c010b200641e0006a20212022202420231059200641d0006a2006290360200641e8006a29030020242023105a200641d8006a2903002122200629035021210b2015410272210a201a200628028c0322052005411f7522046a200473ad201a105b2204460440200641303a00df02201f21040b2004417e6a220f2013410f6a3a00002004417f6a412d412b20054100481b3a0000200c410871210b200641e0026a21050340200641206a20212022105c2207105d200641106a202120222006290320200641286a290300105a20062006290310200641186a29030042808080808080c081c000105220052204200741c0206a2d00002009723a0000200641086a2903002122200629030021210240200441016a2205200641e0026a6b4101470d000240200b0d00200841004a0d0020212022420042001070450d010b2004412e3a0001200441026a21050b202120224200420010700d000b417f210441fdffffff07200a201a200f6b22096a220b6b2008480d01200041202010200b200841026a2005200641e0026a6b22072005201e6a2008481b200720081b22056a2204200c10572000200e200a10542000413020102004200c418080047310572000200641e0026a2007105420004130200520076b4100410010572000200f200910542000412020102004200c4180c0007310572010200420042010481b21040c010b20084100482104024020212022420042001070450440200628028c03210e0c010b200641c0016a2021202242808080808080c08dc00010522006200628028c0341646a220e36028c03200641c8016a290300212220062903c00121210b4106200820041b210d20064190036a2020200e4100481b221421050340200641b0016a20212022105e2204105f200641a0016a2021202220062903b001200641b8016a290300105a20064190016a20062903a001200641a8016a2903004280808080e59ab78ec000105220052004360200200541046a2105200629039001222120064198016a29030022224200420010700d000b2014210b0340200e41014e04402005417c6a2104200e411d200e411d481b2209ad21224100210703402004200b4f044020042007ad20043502002022867c22212021428094ebdc038022214280ec94a37c7e7c3e02002004417c6a21042021a721070c010b0b20070440200b417c6a220b20073602000b034020052204200b4b04402004417c6a2205280200450d010b0b200e20096b210e200421050c010b0b2006200e36028c03200d412d6a41096e41016a21110340200e417f4c044041002107418094ebdc0341094100200e6b200e4177481b220a762108417f200a74417f73210f200b2104034020042005490440200420042802002209200a7620076a360200200441046a21042009200f7120086c21070c010b0b2014200b200b41046a200b2802001b220b201941e600461b220420114102746a2007044020052007360200200541046a21050b2005200520046b41027520114a1b2105200a200e6a210e0c010b0b2006200e36028c03410021070240200b20054f0d002014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200d41002007201941e600461b6b201941e70046220a200d410047716b2204200520146b41027541096c41776a4804402004418080096a2204200441096d220841776c6a2104410a21090340200441074c04402009410a6c2109200441016a21040c010b0b200841027420146a220f4184807c6a22082802002204200420096e221120096c220e6b2104024041002005200f4188807c6a22194620041b0d00024020114101714504404280808080808080b8c0002121420021222008200b4d0d012009418094ebdc03470d012008417c6a2d0000410171450d010b4280808080808080b8c0002121420121220b4280808080808080ff3f42808080808080c0ff3f42808080808080e0ff3f200420094101762211461b42808080808080e0ff3f20052019461b20042011491b212302402015450d00201b2d0000412d470d002023428080808080808080807f8421234280808080808080b84021210b20064180016a202220214200202310592008200e36020020062903800120064188016a290300202220211070450d0020082009200e6a2207360200200f4180807c6a210403402007418094ebdc034f0440200441046a41003602002004200b490440200b417c6a220b41003602000b2004200428020041016a22073602002004417c6a21040c010b0b200441046a21082014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200841046a22042005200520044b1b21050b027f0340410020052209200b4d0d011a2009417c6a2205280200450d000b41010b210e0240200a450440200c41087121080c010b2007417f73417f200d4101200d1b220420074a2007417b4a7122051b20046a210d417f417e20051b20136a2113200c41087122080d00410921050240200e450d002009417c6a280200220a450d0041002105410a21040340200a2004700d01200541016a21052004410a6c21040c000b000b200920146b41027541096c41776a2104201341207241e60046044041002108200d200420056b22044100200441004a1b2204200d2004481b210d0c010b41002108200d200420076a20056b22044100200441004a1b2204200d2004481b210d0b417f2104200d41fdffffff0741feffffff072008200d72220f1b4a0d00200d200f4100476a41016a21110240201341207241e600472219450440200741ffffffff0720116b4a0d0220074100200741004a1b210a0c010b20072007411f7522056a200573ad201a105b417e6a21050340201a20056b220a417e6a41014c0440200541016a41303a00002005417f6a21050c010b0b200520133a0000200541016a412d412b20074100481b3a0000200a41ffffffff0720116b4a0d010b200a20116a2207201541ffffffff07734a0d00200041202010200720156a2211200c10572000201b201510542000413020102011200c41808004731057024020194504402014200b200b20144b1b220721050340200520144d044020053502002018105b210402402005200747044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b20042018470d00200641303a00e802201c21040b20002004201820046b1054200541046a21050c010b0b200f04402000418421410110540b03400240200520094f0d00200d4101480d0020053502002018105b210403402004200641e0026a4b04402004417f6a220441303a00000c010b0b20002004200d4109200d4109481b1054200d41776a210d200541046a21050c010b0b20004130200d41096a4109410010570c010b2009200b41046a200e1b210a200b2107034002402007200a4f0d00200d4100480d00201820073502002018105b2204460440200641303a00e802201c21040b02402007200b47044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b2000200441011054200441016a21042008454100200d4101481b0d002000418421410110540b20002004201820046b2209200d200d20094a1b1054200741046a2107200d20096b210d0c010b0b20004130200d41126a41124100105720002005201a20056b10540b2000412020102011200c4180c0007310572010201120112010481b21040b200441004e0d110c100b20062802c002220441da2020041b21090c010b4100210441e0222802002105037f200441d80046047f41d80005200441f00d6a2d0000200546047f200405200441016a21040c020b0b0b210741d00e210903402007450d01034020092d00002104200941016a2205210920040d000b2007417f6a2107200521090c000b000b4100210541ffffffff07200820084100481b210a0240024003400240200520096a21042005200a46220f0d002004410371450d0020042d0000450d02200541016a21050c010b0b41002107200f0d01200a20056b210720042d0000450d01200520096a2104034020074104490d0220042802002205417f73200541fffdfb776a71418081828478710d022007417c6a2107200441046a21040c000b000b200a20056b21070b03400240410021052007450440410021040c010b20042d0000450d002007417f6a2107200441016a21040c010b0b2009200420096b200a20041b22076a210441d020210f2008417f4a04402011210c200721080c0d0b2011210c2007210820042d0000450d0c0c0d0b200620062903c0023c00b6024100210541d020210f41012108201d2109201621042011210c0c0b0b20062903c0022221427f5704402006420020217d22213703c0024101210541d0200c080b200c4180107104404101210541d1200c080b41d22041d020200c41017122051b0c070b20062903c00221212016210903402021504504402009417f6a22092021a74107714130723a0000202142038821210c010b0b4100210541d020210f200c410871450d072008201620096b220441016a200820044a1b21080c070b20084108200841084b1b2108200c410872210c41f80021130b2013412071210420062903c00221212016210903402021504504402009417f6a22092021a7410f7141c0206a2d00002004723a0000202142048821210c010b0b4100210541d020210f200c410871450d0520062903c002500d05201341047541d0206a210f410221050c050b41002104200a41ff0171220541074b0d080240024002400240024002400240200541016b0e07010203040f0506000b20062802c00220123602000c0e0b20062802c00220123602000c0d0b20062802c0022012ac3703000c0c0b20062802c00220123b01000c0b0b20062802c00220123a00000c0a0b20062802c00220123602000c090b20062802c0022012ac3703000c080b20062802c0020b21094100210420092105024003400240024020042008470440200528020022070d01200421080b20084100480d092000412020102008200c105741002104034020042008460d0420092802002205450d0420054180014f0d02200620053a00f401200441016a220420084b0d042000200641f4016a41011054200941046a21090c000b000b20074180014f0d00200620073a00f401200441016a2104200541046a21050c010b0b000b2000412020102008200c4180c00073105720102008201020084a1b21040c060b4100210520062903c002212141d0200b210f20212016105b21090b200e410020084100481b0d02200c41ffff7b71200c200e1b210c20062903c0022121024020080d00202150450d0041002108201621090c010b2008202150201620096b6a2204200820044a1b21080b201621040b200420096b220a20082008200a481b220841ffffffff0720056b4a0d00200520086a2207201020102007481b2204200b4a0d002000412020042007200c10572000200f200510542000413020042007200c41808004731057200041302008200a4100105720002009200a10542000412020042007200c4180c0007310570c010b0b41e02241cb003602000b417f21120c010b410021120b200641e03c6a240020120bd30101057f024020002d00004120710d0020002802102203047f2003052000104f0d0120002802100b200028021422056b200249044020002001200220002802241104001a0f0b41002103024020002802504100480d0020012104034020022003460d01200341016a2103200220046a21062004417f6a220721042006417f6a2d0000410a470d000b20002001200220036b41016a220420002802241104002004490d01200220076a41016a2101200028021421052003417f6a21020b20052001200210171a2000200028021420026a3602140b0b5d01047f20002802002102034020022c000041506a220341094b450440417f21042000200241016a2202360200200141cc99b3e6004d047f417f20032001410a6c22016a200341ffffffff0720016b4a1b0520040b21010c010b0b20010ba00502017f017e230041106b220324000240200141776a220141114b0d00024002400240024002400240024002400240024002400240024002400240024002400240200141016b0e110102050304060708090a0b0c0d0e0f1011000b20022002280200220141046a360200200020012802003602000c110b20022002280200220141046a360200200020013402003703000c100b20022002280200220141046a360200200020013502003703000c0f0b20022002280200220141046a360200200020013402003703000c0e0b20022002280200220141046a360200200020013502003703000c0d0b2002200228020041076a417871220141086a360200200020012903003703000c0c0b20022002280200220141046a360200200020013201003703000c0b0b20022002280200220141046a360200200020013301003703000c0a0b20022002280200220141046a360200200020013000003703000c090b20022002280200220141046a360200200020013100003703000c080b2002200228020041076a417871220141086a360200200020012903003703000c070b20022002280200220141046a360200200020013502003703000c060b2002200228020041076a417871220141086a360200200020012903003703000c050b2002200228020041076a417871220141086a360200200020012903003703000c040b20022002280200220141046a360200200020013402003703000c030b20022002280200220141046a360200200020013502003703000c020b2002200228020041076a417871220141086a360200200320012b030010602000200341086a290300370308200020032903003703000c010b20022002280200410f6a417071220141106a3602002001290300210420002001290308370308200020043703000b200341106a24000b6a01017f23004180026b220524000240200220034c0d0020044180c004710d0020052001200220036b22024180022002418002491b104e21030340200241800249450440200020034180021054200241807e6a21020c010b0b20002003200210540b20054180026a24000b63002000420052200142ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b2002420052200342ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b720bef0902037f037e230041f0006b22052400200442ffffffffffffffffff00832108024002402001427f7c2209427f51200242ffffffffffffffffff0083220a2009200154ad7c427f7c220942ffffffffffffbfffff0056200942ffffffffffffbfffff00511b4504402003427f7c2209427f5220082009200354ad7c427f7c220942ffffffffffffbfffff0054200942ffffffffffffbfffff00511b0d010b200150200a42808080808080c0ffff0054200a42808080808080c0ffff00511b45044020024280808080808020842104200121030c020b200350200842808080808080c0ffff0054200842808080808080c0ffff00511b450440200442808080808080208421040c020b2001200a42808080808080c0ffff00858450044042808080808080e0ffff00200220012003852002200485428080808080808080807f85845022061b21044200200120061b21030c020b2003200842808080808080c0ffff008584500d012001200a8450044020032008844200520d0220012003832103200220048321040c020b200320088450450d0020012103200221040c010b20052003200120032001562008200a562008200a511b22061b37036020052004200220061b220842ffffffffffff3f8337036820052002200420061b220242ffffffffffff3f83220437035820052001200320061b22013703502002423088a741ffff017121072008423088a741ffff01712206450440200541e0006a106d21060b2007450440200541d0006a106d210720052903582104200529035021010b200520014203862203370350200520052903602209420386220a370360200520052903684203862009423d8884428080808080808004842209370368200520044203862001423d888442808080808080800484220437035820022008852101200620076b220704402005027e200741ff004d0440200541306a200320042007106c200541406b2003200441800120076b106b2005200541386a290300220437035820052903302005290340200541c8006a29030084420052ad840c010b420021042005420037035842010b22033703500b02402001427f5704402005200a20037d22013703602005200920047d200a200354ad7d2203370368200120038450044042002103420021040c030b200342ffffffffffffff03560d01200541206a2001200320012003106e41746a2207106b2005200541286a2903002203370368200520052903202201370360200620076b21060c010b20052003200a7c220137036020052001200354ad200420097c7c2204370368200442808080808080800883500440200421030c010b200520044201882203370368200520014201832004423f86200142018884842201370360200641016a21060b2008428080808080808080807f832104200641ffff014e0440200442808080808080c0ffff00842104420021030c010b410021070240200641004a0440200621070c010b200520012003410120066b106c200541106a20012003200641ff006a106b2005200541086a2903002203370368200520052903002005290310200541186a29030084420052ad8422013703600b200342038842ffffffffffff3f832004842007ad423086842003423d8620014203888422042001a7410771220641044bad7c2203200454ad7c2003420183420020064104461b220120037c2203200154ad7c21040b2000200337030020002004370308200541f0006a24000b4401017f230041106b2205240020052001200220032004428080808080808080807f851059200529030021012000200529030837030820002001370300200541106a24000b6602027f017e03402000428080808010544504402001417f6a220120002000420a80220442767e7ca74130723a0000200421000c010b0b2000a721020340200204402001417f6a220120022002410a6e220341766c6a4130723a0000200321020c010b0b20010b850101027f230041106b22032400027f41002001423088a741ffff0171220241ffff00490d001a41808080807841ffffffff0720014200531b20024181807f6a41204f0d001a20032000200142ffffffffffff3f8342808080808080c0008441ef800120026b106c4100200328020022026b200220014200531b0b2102200341106a240020020b810102027f017e230041106b220324002000027e200145044042000c010b200320012001411f7522026a2002732202ad4200200267220241d1006a106b200341086a29030042808080808080c00085419e800120026bad4230867c200141808080807871ad42208684210420032903000b37030020002004370308200341106a24000b6d01037f230041106b22022400024020014200530d002001423088a741ffff0171220441ffff00490d00417f210320044181807f6a411f4b0d0020022000200142ffffffffffff3f8342808080808080c0008441ef800120046b106c200228020021030b200241106a240020030b6902017f017e230041106b220224002000027e200145044042000c010b20022001ad420041f000200167411f7322016b106b200241086a29030042808080808080c00085200141ffff006aad4230867c210320022903000b37030020002003370308200241106a24000b830102027f027e230041106b220224002001bd22044280808080088321052000027e200442ffffffff078322045004404200210442000c010b2002200442002004a7672203413c6a106b200241086a29030042808080808080c000854181f80020036bad42308684210420022903000b37030020002004200584370308200241106a24000bce0201037f230041b0026b220124002001200036020c200120003602ac0220014180026a41004128104e1a200120012802ac023602a8024100200141a8026a200141e0006a20014180026a105341004e044041fc212802001a41b021280200210241f82128020041004c044041b0212002415f713602000b027f0240024041e02128020045044041e02141d00036020041cc21410036020041c021420037030041dc21280200210341dc21200141106a3602000c010b41c0212802000d010b417f41b021104f0d011a0b41b021200141a8026a200141e0006a20014180026a10530b2100200241207121022003047f41b0214100410041d4212802001104001a41e021410036020041dc21200336020041cc21410036020041c021410036020041c421280200210341c421410036020041000520000b1a41b02141b0212802002002723602000b200141b0026a24000b3501017f230041106b220041f0a20436020c41e422200028020c41076a417871220036020041e822200036020041ec223f003602000b10002002044020002001200210171a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001065200010326a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000bb50101027f20004504404100210041c822280200044041c822280200106721000b41c022280200044041c022280200106720007221000b41c422410136020041c422410036020020000f0b200028024c1a02402000280214200028021c460d0020004100410020002802241104001a20002802140d00417f0f0b20002802042201200028020822024704402000200120026bac410120002802281111001a0b2000410036021c200042003703102000420037020441000b040041000b2901017f200028021c2203200028021420036b1000200120021000200028021420026a200028021c6b0b0400427f0b5001017e0240200341c0007104402001200341406aad862102420021010c010b2003450d0020022003ad220486200141c00020036bad88842102200120048621010b20002001370300200020023703080b6001017e0240027e200341c0007104402002200341406aad8821014200210242000c010b2003450d01200241c00020036bad8620012003ad2204888421012002200488210242000b2104200120048421010b20002001370300200020023703080b5402037f027e230041106b22012400200120002903002204200041086a2202290300220520042005106e220341716a106b2002200141086a29030037030020002001290300370300200141106a2400411020036b0b1701017f2000200120015022021b792002410674ad7ca70b6102037f027e230041106b22012400200120002903002205200041086a220329030022042005200420045022021b792002410674ad7ca7220241716a106b200020012903003703002003200141086a290300370300200141106a2400411020026b0bdb0102017f027e4101210402402000420052200142ffffffffffffffffff0083220542808080808080c0ffff0056200542808080808080c0ffff00511b0d002002420052200342ffffffffffffffffff0083220642808080808080c0ffff0056200642808080808080c0ffff00511b0d00200020028420052006848450044041000f0b20012003834200590440417f21042000200254200120035320012003511b0d0120002002852001200385844200520f0b417f21042000200256200120035520012003511b0d00200020028520012003858442005221040b20040b0bc71815004180080b03617478004190080b8d05ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff696e666f006261642063617374006c696e6500200066696c65002f686f6d652f706c61746f6e2f2e6a656e6b696e732f776f726b73706163652f636f6e7472616374735f746573745f616c6179612f63617365732f436f6e7472616374734175746f54657374732f7372632f746573742f7265736f75726365732f636f6e7472616374732f7761736d2f636f6e74726163745f63726f73735f63616c6c2f436f6e747261637443616c6c657242795265742e6370700066756e630063616c6c466565640063726f73735f63616c6c65725f62797265742063616c6c2072656365697665725f627972657420696e666f206861732073756363657373656421002573090a0063726f73735f63616c6c65725f62797265742063616c6c2072656365697665725f627972657420696e666f20686173206661696c656421006d5f64617461002f7573722f6c6f63616c2f62696e2f2e2e2f706c61746f6e2e6364742f696e636c7564652f706c61746f6e2f766563746f725f7265662e68006f70657261746f725b5d005f69203c206d5f636f756e74006c697374537461636b206973206e6f7420656d70747900696e76616c6964206d6574686f640a00696e697400546865206e756d626572206f66206d6574686f6420706172616d657465727320646f6573206e6f74206d617463680a006765745f737461747573006e6f206d6574686f6420746f2063616c6c0a0041a60d0b8b10f03f000000000000244000000000000059400000000000408f40000000000088c34000000000006af8400000000080842e4100000000d01263410000000084d797410000000065cdcd41542122190d010203114b1c0c10040b1d121e27686e6f7071622005060f1314151a08160728241718090a0e1b1f252383827d262a2b3c3d3e3f43474a4d58595a5b5c5d5e5f60616364656667696a6b6c727374797a7b7c480000000000000000496c6c6567616c20627974652073657175656e636500446f6d61696e206572726f7200526573756c74206e6f7420726570726573656e7461626c65004e6f74206120747479005065726d697373696f6e2064656e696564004f7065726174696f6e206e6f74207065726d6974746564004e6f20737563682066696c65206f72206469726563746f7279004e6f20737563682070726f636573730046696c65206578697374730056616c756520746f6f206c6172676520666f7220646174612074797065004e6f207370616365206c656674206f6e20646576696365004f7574206f66206d656d6f7279005265736f75726365206275737900496e7465727275707465642073797374656d2063616c6c005265736f757263652074656d706f726172696c7920756e617661696c61626c6500496e76616c6964207365656b0043726f73732d646576696365206c696e6b00526561642d6f6e6c792066696c652073797374656d004469726563746f7279206e6f7420656d70747900436f6e6e656374696f6e2072657365742062792070656572004f7065726174696f6e2074696d6564206f757400436f6e6e656374696f6e207265667573656400486f737420697320646f776e00486f737420697320756e726561636861626c65004164647265737320696e207573650042726f6b656e207069706500492f4f206572726f72004e6f207375636820646576696365206f72206164647265737300426c6f636b20646576696365207265717569726564004e6f207375636820646576696365004e6f742061206469726563746f72790049732061206469726563746f727900546578742066696c652062757379004578656320666f726d6174206572726f7200496e76616c696420617267756d656e7400417267756d656e74206c69737420746f6f206c6f6e670053796d626f6c6963206c696e6b206c6f6f700046696c656e616d6520746f6f206c6f6e6700546f6f206d616e79206f70656e2066696c657320696e2073797374656d004e6f2066696c652064657363726970746f727320617661696c61626c65004261642066696c652064657363726970746f72004e6f206368696c642070726f636573730042616420616464726573730046696c6520746f6f206c6172676500546f6f206d616e79206c696e6b73004e6f206c6f636b7320617661696c61626c65005265736f7572636520646561646c6f636b20776f756c64206f63637572005374617465206e6f74207265636f76657261626c650050726576696f7573206f776e65722064696564004f7065726174696f6e2063616e63656c65640046756e6374696f6e206e6f7420696d706c656d656e746564004e6f206d657373616765206f6620646573697265642074797065004964656e7469666965722072656d6f76656400446576696365206e6f7420612073747265616d004e6f206461746120617661696c61626c65004465766963652074696d656f7574004f7574206f662073747265616d73207265736f7572636573004c696e6b20686173206265656e20736576657265640050726f746f636f6c206572726f7200426164206d6573736167650046696c652064657363726970746f7220696e20626164207374617465004e6f74206120736f636b65740044657374696e6174696f6e2061646472657373207265717569726564004d65737361676520746f6f206c617267650050726f746f636f6c2077726f6e67207479706520666f7220736f636b65740050726f746f636f6c206e6f7420617661696c61626c650050726f746f636f6c206e6f7420737570706f7274656400536f636b65742074797065206e6f7420737570706f72746564004e6f7420737570706f727465640050726f746f636f6c2066616d696c79206e6f7420737570706f7274656400416464726573732066616d696c79206e6f7420737570706f727465642062792070726f746f636f6c0041646472657373206e6f7420617661696c61626c65004e6574776f726b20697320646f776e004e6574776f726b20756e726561636861626c6500436f6e6e656374696f6e207265736574206279206e6574776f726b00436f6e6e656374696f6e2061626f72746564004e6f2062756666657220737061636520617661696c61626c6500536f636b657420697320636f6e6e656374656400536f636b6574206e6f7420636f6e6e65637465640043616e6e6f742073656e6420616674657220736f636b65742073687574646f776e004f7065726174696f6e20616c726561647920696e2070726f6772657373004f7065726174696f6e20696e2070726f6772657373005374616c652066696c652068616e646c650052656d6f746520492f4f206572726f720051756f7461206578636565646564004e6f206d656469756d20666f756e640057726f6e67206d656469756d2074797065004d756c7469686f7020617474656d70746564004e6f206572726f7220696e666f726d6174696f6e00000019000a00191919000000000500000000000009000000000b00000000000000001900110a191919030a0700011b090b18000009060b00000b0006190000001919190041c11d0b210e000000000000000019000a0d191919000d00000200090e00000009000e00000e0041fb1d0b010c0041871e0b1513000000001300000000090c00000000000c00000c0041b51e0b01100041c11e0b150f000000040f0000000009100000000000100000100041ef1e0b01120041fb1e0b1e11000000001100000000091200000000001200001200001a0000001a1a1a0041b21f0b0e1a0000001a1a1a000000000000090041e31f0b01140041ef1f0b1517000000001700000000091400000000001400001400419d200b01160041a9200b82011500000000150000000009160000000000160000160000303132333435363738394142434445462d2b2020203058307800286e756c6c29002d30582b30582030582d30782b307820307800696e6600494e46006e616e004e414e002e00256400417373657274696f6e206661696c65643a202573202825733a2025733a202564290a0041b0210b01050041bc210b01030041d4210b0a040000000500000060110041ec210b01020041fc210b08ffffffffffffffff0041c0220b02b010"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_CALLFEED = "callFeed"; - - public static final String FUNC_GET_STATUS = "get_status"; - - protected ContractCallerByRet(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractCallerByRet(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callFeed(String target_address, Uint64 gasValue) { - final WasmFunction function = new WasmFunction(FUNC_CALLFEED, Arrays.asList(target_address,gasValue), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callFeed(String target_address, Uint64 gasValue, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CALLFEED, Arrays.asList(target_address,gasValue), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_status() { - final WasmFunction function = new WasmFunction(FUNC_GET_STATUS, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallerByRet.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallerByRet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallerByRet.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallerByRet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static ContractCallerByRet load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractCallerByRet(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractCallerByRet load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractCallerByRet(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCallerNoRet.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCallerNoRet.java deleted file mode 100644 index a8e92e4fbb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCallerNoRet.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractCallerNoRet extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001c7011c60017f017f60047f7f7f7f0060027f7f0060017f0060037f7f7f017f60037f7f7f0060027f7f017f60000060027e7e017f60047f7f7f7f017f60027f7e0060047f7e7e7f0060057f7f7f7f7f0060057f7e7e7e7e0060047e7e7e7e017f60017f017e60037f7e7f017e60037f7f7e0060047f7e7e7e0060027f7c0060037e7e7f006000017f60077f7f7f7f7f7f7f017f600a7f7f7f7f7f7f7f7f7f7f017f600b7f7f7f7f7f7f7f7f7f7f7f017f600a7f7f7f7f7e7f7e7f7f7f017f60017e017f60027e7f017f02a2020d03656e760c706c61746f6e5f6465627567000203656e760c706c61746f6e5f70616e6963000703656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000803656e760f706c61746f6e5f726c705f75313238001403656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001503656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000103656e760b706c61746f6e5f63616c6c001603656e760d706c61746f6e5f72657475726e000203626107110602000c000504030202000a020a02030a06020300050603020203020404000704050f0f03000300000200061a0709030002060002090101001719180400080b12090500050c0e0d0d1b0802080213030705000001000004100b0b0008000e0405017001060605030100020608017f0141f0a2040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003c06696e766f6b65002e090b010041010b0545466566670acfd901610400105f0bfe1a020d7f017e230041d0016b22032400200341306a418008100f210f2001280208200141016a220e20012d0000220441017122061b21092001280204200441017620061b210a410021044101210502400340200541017141002004200a491b0440200420096a2d00002206415f6a41ff017141de004921052007200641bf7f6a41ff0171411a4972210720082006419f7f6a41ff0171411a49722108200441016a21040c0105024020052007200871410173712107200a450d00200a210403402004450d01200420096a21052004417f6a220621042005417f6a2d00004131470d000b0c030b0b0b417f21060b024002402007410171450d00200641076a200a4b0d00200641016a4102490d00200a41da004b0d00410021042003410036028801200342003703800120034180016a200a2006417f7322086a10104101210702400240024003402004200128020420012d00002205410176200541017122051b20086a4f044002402007410171450d05200341f0006a1011220841016a210d410021040340200420064604402008280204220720032d007022044101762209200441017122051b2206200f28020420032d00302204410176200441017122041b470d05200f280208200f41016a20041b210420050d0220092106200d210503402006450440200921070c080b20052d000020042d0000470d06200441016a2104200541016a21052006417f6a21060c000b00052001280208200e20012d00004101711b20046a2c00002209412072210a200941bf7f6a411a49210c027f20032d00702205410171220b45044020054101762105410a0c010b200828020421052008280200417e71417f6a0b2107200a2009200c1b2109027f024002402005200746044020082007410120072007101220032d0070410171450d010c020b200b0d010b2003200541017441026a3a0070200d0c010b2008200541016a36020420082802080b20056a220541003a0001200520093a0000200441016a21040c010b000b000b0520032802800120046a2001280208200e20051b20066a20046a41016a2d00004190086a2d000022053a00002007200541ff0147712107200441016a21040c010b0b2006450d012008280208210503402006450d0220052d000020042d0000470d01200441016a2104200541016a21052006417f6a21060c000b000b200341206a4200370300200341286a410036020020034200370318200341003a002c2003280280012204450d0320032004360284010c030b41002104200341003602c001200342003703b801200341b8016a2007410174410172101003402004200828020420032d00702206410176200641017122061b22054f45044020032802b80120046a2008280208200d20061b20046a2d000022064105763a000020032802b801200828020420032d0070220541017620054101711b6a20046a41016a2006411f713a0000200441016a21040c010b0b20032802b80120056a41003a000020032802bc0121050240200328028401220620032802800122046b22074101480d00200720032802c001220920056b4c0440034020042006460d02200520042d00003a0000200320032802bc0141016a22053602bc01200441016a21040c000b000b200341a8016a200341c0016a36020041002108200341003602a401200520032802b80122016b210a200520076a20016b2207200920016b2209410174220120012007491b41ffffffff07200941ffffffff03491b220904402009101321080b200320083602980120032008200a6a22073602a0012003200820096a3602a4012003200736029c0120034198016a410472210803402004200646450440200720042d00003a0000200320032802a00141016a22073602a001200441016a21040c010b0b20032802b801200520081014024020032802bc01220620056b220441004c044020032802a00121050c010b200320032802a00120052004101520046a22053602a00120032802bc0121060b20032802b80121042003200328029c013602b8012003200436029c01200320053602bc01200320063602a00120032802c0012106200320032802a4013602c001200320063602a401200320043602980120034198016a101620032802bc0121050b200342003702bc0120032802b8012106200341003602b801200520066b21054101210403402005044020062d000041002004411d764101716b41b3c5d1d0027141002004411c764101716b41dde788ea037141002004411b764101716b41fab384f5017141002004411a764101716b41ed9cc2b20271410020044119764101716b41b2afa9db0371200441057441e0ffffff037173737373737321042005417f6a2105200641016a21060c010b0b20044101470d004100210b200341003602c001200342003703b8012003410036022020034200370318027f4100200328028401417a6a220520032802800122046b2206450d001a200341186a2006101703402004200546450440200328021c220620042d00003a00002003200641016a36021c200441016a21040c010b0b2003280218210b200328021c0b200b6b210d200341c0016a210e41002104410021094100210c02400340200c200d46044002402009410820046b7441ff0171452004410548712104200b04402003200b36021c0b20040d0020032802b80121040c030b05200b200c6a2d0000200941057441e01f71722109200441056a21040340200441084e04402009200441786a220476210520032802bc01220720032802c0012208490440200720053a0000200320032802bc0141016a3602bc010c02052003200e3602a80141002106200341003602a401200720032802b80122016b220741016a220a200820016b220841017422012001200a491b41ffffffff07200841ffffffff03491b220804402008101321060b2003200636029801200620076a220720053a00002003200620086a3602a4012003200736029c012003200741016a3602a001200341b8016a20034198016a101820034198016a10160c020b000b0b200c41016a210c0c010b0b20032802bc0120032802b80122046b4114470d00200341a8016a4100360200200341a0016a42003703002003420037039801410021040340200441144645044020034198016a20046a41003a0000200441016a21040c010b0b20032802bc0120032802b80122066b2105410021040340024020042005460d00200441134b0d0020034198016a20046a200420066a2d00003a0000200441016a21040c010b0b200341286a200341a8016a280200360200200341206a200341a0016a2903003703002003200329039801370318200341013a002c20060440200320063602bc010b2003280280012204044020032004360284010b200341f0006a419009100f220628020420032d00702204410176200441017122051b21042006280208200641016a20051b210642a5c688a1c89ca7f94b21100340200404402004417f6a21042006300000201042b383808080207e852110200641016a21060c010b0b200341b8016a1019220428020421060240200441106a2802002205200441146a280200220749044020052006ad4220864201843702002004200428021041086a3602100c010b027f41002005200428020c22086b410375220541016a2209200720086b2207410275220820082009491b41ffffffff01200741037541ffffffff00491b2208450d001a200841037410130b2107200720054103746a22052006ad42208642018437020020052004280210200428020c22016b22066b2109200720084103746a2107200541086a2105200641014e044020092001200610151a0b20042007360214200420053602102004200936020c0b200341b0016a4100360200200341a8016a4200370300200341a0016a4200370300200342003703980120034198016a2010101a2004200328029801101b20042010101c200341306a2004101d2003280230210520034190016a2004101d2003410036028801200342003703800102402003280290012003280294016a20056b2206450d0020034180016a2006101720064101480d00200320032802840120052006101520066a360284010b20034198016a410472101e200428020c22060440200420063602100b20034198016a4200101f200341b8016a2002101f200341186a200328028001220420032802840120046b2003280298012206200328029c0120066b20032802b801220620032802bc0120066b100b210620032802b80122050440200320053602bc010b200328029801220504402003200536029c010b2004044020032004360284010b20064504402000420037031020034198016a10114195091020419a09102022044111102120032004419a091020419c091020419a09102041a1091020419a09102041bd0a1020419a09102041c20a1020419a09102041cb0a10202204280208200441016a20032d0098014101711b360200200310220c040b2000420137031020034198016a10114195091020419a09102022044114102120032004419a091020419c091020419a09102041a1091020419a09102041bd0a1020419a09102041c20a1020419a091020418b0b10202204280208200441016a20032d0098014101711b360210200341106a10220c030b2004450d00200320043602bc010b2003280280012204450d0020032004360284010b200341206a4200370300200341286a410036020020034200370318200341003a002c0b200341d0016a24000b1f0020004200370200200041086a41003602002000200120011023102420000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110252106200241186a200041086a3602002002410036021441002101200604402006101321010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1018200241086a10160c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000102620000b920101027f027f20002d0000410171044020002802080c010b200041016a0b2106416f2105200141e6ffffff074d0440410b20014101742205200120026a220120012005491b220541106a4170712005410b491b21050b2005101321012004044020012006200410600b200320046b22030440200120046a200420066a200310600b20002001360208200020054101723602000b0b002000410120001b102d0b270020022002280200200120006b22016b2202360200200141014e044020022000200110151a0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b2001017f2000200110132202360200200020023602042000200120026a3602080b6701017f20002802002000280204200141046a1014200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b29002000410036020820004200370200200041001027200041146a41003602002000420037020c20000bba0102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b024020024138490d002002210303402003450d01200241016a2102200341087621030c000b000b200241016a21020b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020026a3602000b1300200028020820014904402000200110270b0b9a0101037f2000420020011004200028020422026a102842002001200220002802006a10050340024020002802102202200028020c460d00200241786a2802004504401001200028021021020b200241786a22032003280200417f6a220436020020040d002000200336021020002002417c6a2802002202200028020420026b220310026a1028200220002802006a22022003200210030c010b0b0b2200200128020c200141106a28020047044041c30b10290b200020012902003702000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b6302017f017e20012103034020035045044020034208882103200241016a21020c010b0b20004100360208200042003702002000200210102000280204417f6a21020340200150450440200220013c00002002417f6a2102200142088821010c010b0b0b0c002000200120011023102c0b950201047f230041306b22022400200241286a410036020020024200370320200241206a1026200241206a2002280220417e71417f6a410a20022d00204101711b102a200228022420022d0020220341017620034101711b2104200241206a41017221050340024020022001360200200241206a027f2002280228200520034101711b200441016a2002102b220341004e0440200320044d0d0220030c010b20044101744101720b2204102a20022d002021030c010b0b200241206a2003102a200241186a2204200241286a28020036020020022002290320370310200241206a102620002004280200200241106a41017220022d0010220441017122031b2002280214200441017620031b102c1a200241306a24000b3b01017f23004190086b220124002001200036020c200141106a41800841860b200010441a200141106a200141106a1023100020014190086a24000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101321032000200236020420002004410172360200200020033602080b2003200120021060200220036a41003a00000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2f01017f200028020820014904402001102d200028020020002802041015210220002001360208200020023602000b0b3601017f200028020820014904402001102d200028020020002802041015210220002001360208200020023602000b200020013602040b0c00200020001023100010010b880201037f0240027f20002d000022034101712202044020002802040c010b20034101760b22042001490440200120046b2204450d01027f2002044020002802002203417e71417f6a210220002802040c010b410a210220034101760b2201027f200220016b200449047f20002002200120046a20026b20012001101220002d00000520030b410171044020002802080c010b200041016a0b22036a41002004104b1a200120046a2101024020002d00004101710440200020013602040c010b200020014101743a00000b200120036a41003a00000f0b20020440200028020820016a41003a0000200020013602040f0b200020016a41016a41003a0000200020014101743a00000b0b2a01017f230041106b220324002003200236020c20002001418621200210442102200341106a240020020baf0201057f0240027f20002d00002205410171220604402000280204210420002802002205417e71417f6a0c010b20054101762104410a0b220320046b20024f04402002450d012004027f2006044020002802080c010b200041016a0b22036a200120021060200220046a2104024020002d00004101710440200020043602040c010b200020044101743a00000b200320046a41003a000020000f0b027f2005410171044020002802080c010b200041016a0b2107200220046a2105416f2106200341e6ffffff074d0440410b20034101742203200520052003491b220341106a4170712003410b491b21060b2006101321032004044020032007200410600b200320046a200120021060200020053602042000200641017236020020002003360208200320056a41003a00000b20000b9b0101047f230041106b220124002001200036020c2000047f41ec22200041086a2202411076220041ec222802006a220336020041e82241e822280200220420026a41076a417871220236020002400240200341107420024d044041ec22200341016a360200200041016a21000c010b2000450d010b200040000d0010010b20042001410c6a4104101541086a0541000b2100200141106a240020000bb80502087f017e230041f0006b22002400105f10062202102d22011007200041d8006a200041086a20012002102f2204410010300240200041d8006a1031220850044041da0b10290c010b41ea0b1032200851044020041033200041d8006a103410350c010b41c20a10322008510440200041406b101121062000420037035020041036410347044041ef0b10290b200041d8006a2004410110300240200041d8006a1037450440200041306a10111a0c010b200041206a200041d8006a1038200041d8006a1039210102400240024002402000280220220204402000280224220320014f0d010b41002102200041386a410036020020004200370330410021030c010b200041386a4100360200200042003703302002200320012001417f461b22056a21032005410a4b0d010b200020054101743a0030200041306a41017221010c010b200541106a4170712207101321012000200536023420002007410172360230200020013602380b034020022003470440200120022d00003a0000200141016a2101200241016a21020c010b0b200141003a00000b024020002d0040410171450440200041003b01400c010b200028024841003a00002000410036024420002d0040410171450d00200041003602400b200041c8006a200041386a28020036020020002000290330370340200041306a1026200041d8006a2004410210302000200041d8006a1031370350200041d8006a10342102200041206a2006103a210120002903502108200041d8006a200041306a2001103a2008100e200210350c010b419f0c1032200851044020041033200041406b1034210120002903502108200041d8006a101922022008103b101b20022008101c200041306a2002101d20002802302000280234100c200228020c22030440200241106a20033602000b200110350c010b41aa0c10290b103c200041f0006a24000b0c00200020012002411c103d0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104020012003280208200328020c104136020c200320011040410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114103d1a200341106a24000f0b20032001104041002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104110632001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850202047f017e230041106b220224002000103e024002402000280204450d002000103e0240200028020022032c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d047f100120002802000520030b2d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d047f100120002802000520030b20016a2d0000450d010b2000103f0d0020002802040d010b41bd0c10290b200241086a20001038200228020c220041094f044041bd0c10290b200228020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200241106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b110020001036410147044041ef0b10290b0bf00101067f230041d0006b22012400200042b388bc9ee59b8a9d1b37030820004200370300200141386a101922042000290308101c200141306a2004101d02402001280230220520012802342206100822024504400c010b2001410036022820014200370320200141206a200210102005200620012802202205200128022420056b1009417f4704402000200141086a2001280220220341016a20012802242003417f736a102f1031370310200221030b20012802202202450d00200120023602240b200428020c22020440200441106a20023602000b2003450440200020002903003703100b200141d0006a240020000b9c0201077f230041d0006b22022400200241386a101922042000290308103b101b20042000290308101c200241306a2004101d200241186a101921012000290310103b210641011013220341fe013a0000200128020c200141106a28020047044041c30b10290b2001280204220541016a220720012802084b047f20012007102720012802040520050b20012802006a2003410110151a2001200128020441016a3602042001200341016a200620036b6a101b20012000290310101c2002280234210020022802302103200241106a2001101d20022802102105200241086a2001101d200320002005200228020c100a200128020c22000440200120003602100b200428020c22010440200441106a20013602000b200241d0006a24000b870101047f230041106b2201240002402000103f450d002000280204450d0020002802002d000041c001490d00200141086a20001040200128020c210003402000450d01200141002001280208220320032000104122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b1900200028020445044041000f0b200010422d000041c001490be30101047f027f200110392203200128020422024b047f41bd0c102920012802040520020b04404100200110422c0000417f4a0d011a0b0240024020011037450d00200110422d000041b801490d00200110422d000041c97e6a21020c010b410021022001103f450d00200110422d000041f801490d00200110422d000041897e6a21020b200241016a0b21022000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000bff0201037f200028020445044041000f0b2000103e41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10010b20020b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102420000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000101a200128020021022001410472101e200141206a240020020b880101037f41cc22410136020041d0222802002100034020000440034041d42241d4222802002201417f6a2202360200200141014845044041cc224100360200200020024102746a22004184016a280200200041046a28020011030041cc22410136020041d02228020021000c010b0b41d422412036020041d022200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106120024f0d002003410471044010010c010b200042003702000b02402003411071450d002000106120024d0d0020034104710440100120000f0b200042003702000b20000b4101017f200028020445044010010b0240200028020022012d0000418101470d00200028020441014d047f100120002802000520010b2c00014100480d0010010b0b1900200028020445044041000f0b200010422d000041bf014b0b2101017f20011039220220012802044b044010010b2000200120011062200210630b2701017f230041206b22022400200241086a200020014114103d10612100200241206a240020000b2e01017f02402000280200220104402000280204450d0120010f0b41c60c41b4011043000b41910d41b5011043000b3501017f230041106b220224002002200136020c200241860d360208200241cd0c360204200220003602002002105e410010641a000bfa16030f7f027e037c230041306b220a2400200a200236020c4101410220001b210b200a410f6a21110340410020066b21070240034020022d00002204450d01200441254704402004411874411875200020062001200b110100200a200241016a220236020c2007417f6a2107200641016a21060c010b0b200a200241016a220236020c410021040340024002400240024020022c0000220941556a220541054b0440200941606a220541034b0d0102400240200541016b0e03030301000b200a200241016a220236020c200441087221040c060b200a200241016a220236020c200441107221040c050b200541016b0e050002000003010b0240200941506a41ff017141094d0440200a410c6a1047210d200a28020c21020c010b4100210d2009412a470d0020032802002105200a200241016a220236020c2004410272200420054100481b210420052005411f7522096a200973210d200341046a21030b41002109024020022d0000412e470d00200a200241016a220836020c200441800872210420022d0001220541506a41ff017141094d0440200a410c6a10472109200a28020c21020c010b200541ff0171412a470440200821020c010b20032802002105200a200241026a220236020c20054100200541004a1b2109200341046a21030b0240024020022c000041987f6a411f77220541094b0d000240024002400240200541016b0e09020004040403040403010b200a200241016a220836020c20022d0001220541ec004704402004418002722104200821020c050b200a200241026a220236020c20044180067221040c030b200a200241016a220836020c20022d0001220541e8004704402004418001722104200821020c040b200a200241026a220236020c200441c0017221040c020b200a200241016a220236020c20044180047221040c010b200a200241016a220236020c20044180027221040b20022d000021050b0240024002400240024002400240024002402005411874411875220c419e7f6a220841164b0440200c4125470440200c41c600460d07200c41d800470d020c080b4125200020062001200b1101000c020b200841016b0e15040600050000060000000000060200000300060000060b200c200020062001200b1101000b200a200241016a220236020c200641016a21060c0c0b200b20002006200120032802004100411020094108200441217210482106200a200241016a220236020c200341046a21030c0b0b20032802002205417f6a21070340200741016a22072d00000d000b200720056b2207200920072009491b2007200441800871220c410a761b210802402004410271220e0440200621040c010b410021070340200620076a2104200720086a220f200d4f4504404120200020042001200b110100200741016a21070c010b0b200f41016a21080b200341046a21030340024020052d00002206450d00200c04402009450d012009417f6a21090b2006411874411875200020042001200b110100200441016a2104200541016a21050c010b0b200e450440200421060c050b410021070340200420076a2106200720086a200d4f0d054120200020062001200b110100200741016a21070c000b000b410121070240200441027122090440200621050c010b410121040340200420066a417f6a21052004200d4f450440200441016a21044120200020052001200b1101000c010b0b200441016a21070b20032c0000200020052001200b110100200541016a21062009450d0203402007200d4f0d034120200020062001200b110100200641016a2106200741016a21070c000b000b200941062004418008711b220941037441a00d6a2108200341076a417871220e2b0300211541002105034002402009410a490d002005411f4b0d00200a41106a20056a41303a0000200841786a21082009417f6a2109200541016a21050c010b0b027f4400000000000000002015a1201520154400000000000000006322101b22159944000000000000e0416304402015aa0c010b4180808080780b2103027f20152003b7a120082b03002217a2221644000000000000f041632016440000000000000000667104402016ab0c010b41000b210c02402016200cb8a1221644000000000000e03f644101734504402017200c41016a220cb8654101730d01200341016a21034100210c0c010b201644000000000000e03f620d00200c45200c41017172200c6a210c0b4100210802402015440000c0ffffffdf41640d00024020090440200520096a41606a2112034002402005412046044041202105201221090c010b200a41106a20056a200c200c410a6e220841766c6a4130723a0000200541016a21052009417f6a2109200c41094b210f2008210c200f0d010b0b034002402005411f4b22080d002009450d00200a41106a20056a41303a0000200541016a21052009417f6a21090c010b0b20080d01200a41106a20056a412e3a0000200541016a21050c010b20152003b7a1221544000000000000e03f64410173450440200341016a21030c010b20032003201544000000000000e03f61716a21030b03402005411f4d0440200a41106a20056a20032003410a6d220941766c6a41306a3a0000200541016a2105200341096a210820092103200841124b0d010b0b20044103712109034002402005411f4b0d0020094101470d002005200d4f0d00200a41106a20056a41303a0000200541016a21050c010b0b20044101712108200441027121090240200d2004410c714100472010726b20052005200d461b2205411f4b0d0002402010410173450440200a41106a20056a412d3a00000c010b20044104710440200a41106a20056a412b3a00000c010b2004410871450d01200a41106a20056a41203a00000b200541016a21050b024020082009720440200621080c010b410021040340200420066a2108200420056a200d4f0d014120200020082001200b110100200441016a21040c000b000b200720086a2106034020050440200520116a2c0000200020082001200b110100200641016a21062005417f6a2105200841016a21080c010b0b2009450d0003402006200d4f0d014120200020082001200b110100200641016a2106200841016a21080c000b000b200e41086a2103200a200241016a220236020c200821060c080b41102108024002400240200541ff0171220741d8004622050d00200741f800460d00200741ef00460440410821080c020b200741e200460440410221080c020b2004416f712104410a21080b2004412072200420051b2104200741e400460d01200741e900460d010b200441737121040b2004417e7120042004418008711b2104200741e900474100200741e400471b4504402004418004710440200b200020062001200341076a417871220729030022132013423f8722147c2014852013423f88a72008ad2009200d200410492106200741086a21030c030b2004418002710440200b200020062001200328020022072007411f7522056a2005732007411f7620082009200d2004104821060c020b200b200020062001027f200441c00071044020032c00000c010b2003280200220741107441107520072004418001711b0b2207411f75220520076a2005732007411f7620082009200d2004104821060c010b2004418004710440200b200020062001200341076a417871220729030041002008ad2009200d200410492106200741086a21030c020b2004418002710440200b2000200620012003280200410020082009200d2004104821060c010b200b200020062001027f200441c00071044020032d00000c010b2003280200220741ffff037120072004418001711b0b410020082009200d2004104821060b200341046a21030b200a200241016a220236020c0c050b200a200241016a220236020c200441047221040c020b200a200241016a220236020c200441027221040c010b200a200241016a220236020c200441017221040c000b000b0b4100200020062001417f6a20062001491b2001200b110100200a41306a240020060b140020022003490440200120026a20003a00000b0b0300010b4501037f20002802002101034020012d000041506a41ff017141094b4504402000200141016a220336020020012c00002002410a6c6a41506a2102200321010c010b0b20020bad0101067f230041206b220b240020092009416f7120041b210c02402004450440200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a2004200420066e220e20066c6b220a4130200d200a41187441808080d000481b6a3a0000200941016a210a2009411e4b0d01200420064f210f200a2109200e2104200f0d000b0b2000200120022003200b200a2005200620072008200c104a2104200b41206a240020040bba0102057f017e230041206b220b240020092009416f712004420052220a1b210c0240200a4504404100210a200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a4130200d20042004200680220f20067e7da7220a41187441808080d000481b200a6a3a0000200941016a210a2009411e4b0d01200420065a210e200a2109200f2104200e0d000b0b2000200120022003200b200a20052006a720072008200c104a2109200b41206a240020090bf20401037f200a410271210d2005210b02400340200d0d010240200b20084f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410371410147210c2005210b02400340200c0d010240200b20094f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410171210c024002400240200a41107104400240200a418008710d002005450d002005200847410020052009471b0d002005417e6a2005417f6a220b200b1b200b20074110461b21050b0240200741104604400240200a412071220b0d002005411f4b0d00200420056a41f8003a0000200541016a21050c020b200b450d012005411f4b0d01200420056a41d8003a0000200541016a21050c010b20074102470d002005411f4b0d00200420056a41e2003a0000200541016a21050b2005411f4b0d01200420056a41303a0000200541016a21050c010b20050d00410021050c010b2009200a410c714100472006726b200520052009461b2205411f4b0d010b20060440200420056a412d3a0000200541016a21050c010b200a4104710440200420056a412b3a0000200541016a21050c010b200a410871450d00200420056a41203a0000200541016a21050b2002210b0240200c200d720d002005210c0340200c20094f0d0141202001200b20032000110100200c41016a210c200b41016a210b0c000b000b2004417f6a210c037f2005047f2005200c6a2c00002001200b200320001101002005417f6a2105200b41016a210b0c01050240200d450d00410020026b210503402005200b6a20094f0d0141202001200b20032000110100200b41016a210b0c000b000b200b0b0b0bfc0202027f017e02402002450d00200020013a0000200020026a2203417f6a20013a000020024103490d00200020013a0002200020013a00012003417d6a20013a00002003417e6a20013a000020024107490d00200020013a00032003417c6a20013a000020024109490d002000410020006b41037122046a2203200141ff017141818284086c22013602002003200220046b417c7122046a2202417c6a200136020020044109490d002003200136020820032001360204200241786a2001360200200241746a200136020020044119490d002003200136021820032001360214200320013602102003200136020c200241706a20013602002002416c6a2001360200200241686a2001360200200241646a20013602002001ad220542208620058421052004200341047141187222016b2102200120036a2101034020024120490d0120012005370300200141186a2005370300200141106a2005370300200141086a2005370300200141206a2101200241606a21020c000b000b20000b5901017f200020002802482201417f6a20017236024820002802002201410871044020002001412072360200417f0f0b200042003702042000200028022c220136021c200020013602142000200120002802306a36021041000b4402017f017e200142ffffffffffff3f832103027f2001423088a741ffff0171220241ffff01470440410420020d011a410241032000200384501b0f0b2000200384500b0bc50101037f230041206b2204240002402002423088a7220641ffff0171220541ffff01460d0020054504402003027f41002001200242004200106d450d001a20042001200242808080808080c0bbc000104f200441106a2004290300200441086a2903002003104e2004290318210220042903102101200328020041887f6a0b3602000c010b200320054182807f6a360200200242ffffffffffff3f832006418080027141feff0072ad4230868421020b2000200137030020002002370308200441206a24000ba60a02047f107e230041e0006b220424002004200242ffffffffffff3f83370358200420013703502004200342ffffffffffff3f83220c370348200442003703402002200385428080808080808080807f8321090240027e02400240024002402002423088a741ffff01712206417f6a41fdff014d41002003423088a741ffff01712205417f6a41feff01491b0d00200150200242ffffffffffffffffff0083220a42808080808080c0ffff0054200a42808080808080c0ffff00511b450440200242808080808080208421090c060b4101200342ffffffffffffffffff0083220242808080808080c0ffff0054200242808080808080c0ffff00511b45044020034280808080808020842109420021010c060b2001200a42808080808080c0ffff008584500440200250450d0242808080808080e0ffff0021090c030b200242808080808080c0ffff00855004402001200a84210242002101200250044042808080808080e0ffff0021090c070b200942808080808080c0ffff008421090c060b2001200a842103420021012003500d052002500d05200a42ffffffffffff3f580440200441d0006a106c21070b200242ffffffffffff3f560d00200441406b106c20076a21072004290348210c200429034021080b2004200837034020042004290358220d42808080808080c00084220f3703582004200c42808080808080c0008422103703482004290350220342208822022008420f86428080feff0f8322017e2211200342ffffffff0f832203200842118842ffffffff0f83220a7e7c220e4220862212200120037e7c220b201254ad200d42ffffffff0f83220d20017e22142003200c420f8620084231888442ffffffff0f8322087e7c22122002200a7e7c2213200e201154ad422086200e422088847c220e2001200f422088220c7e2215201042118842ffffffff0f83220120037e7c220f200a200d7e7c2210200220087e7c22114220867c22167c2103200520066a20076a4181807f6a21050240200a200c7e22172008200d7e7c220a201754ad200a200120027e7c2202200a54ad7c2001200c7e7c2001200d7e22012008200c7e7c2208200154ad4220862008422088847c200220084220867c2208200254ad7c20082012201454ad2013201254ad7c7c2202200854ad7c20022011201054ad200f201554ad2010200f54ad7c7c4220862011422088847c2208200254ad7c2008200e201354ad2016200e54ad7c7c2202200854ad7c220842808080808080c0008350450440200541016a21050c010b200b423f88210120084201862002423f8884210820024201862003423f88842102200b420186210b200120034201868421030b200541ffff014e0440200942808080808080c0ffff008421090c020b200541004a0d02410120056b220641ff004b0d01200441106a200b200320061069200441206a20022008200541ff006a22051068200441306a200b200320051068200420022008200610692004290330200441386a29030084420052ad200429032020042903108484210b200441286a290300200441186a29030084210320042903002102200441086a2903000c030b200942808080808080c0ffff008421090b420021010c020b200842ffffffffffff3f832005ad423086840b2009842109200b502003427f552003428080808080808080807f511b4504402009200242017c2201200254ad7c21090c010b200b2003428080808080808080807f858450450440200221010c010b2009200220024201837c2201200254ad7c21090b2000200937030820002001370300200441e0006a24000b9a2f021d7f047e230041e03c6b2206240020064189213602d002200641b6026a211d419e7d20066b211e200641df026a211f200641e0026a410872211c200641e0026a410972211820064190396a2120200641e0026a211a200641b7026a211602400240024003400240200441ffffffff0720126b4a0d00200420126a2112024002400240027f0240027f02400240024002400240024002400240024002400240024002400240024020062802d00222092d000022070440410021042009210503400240200741ff01712207450d0020074125460d00200441016a210420052d00012107200541016a21050c010b0b200620053602d0022004210503400240200520096a22072d00004125470d00200741016a2d00004125470d00200441016a2104200541026a21050c010b0b200620073602d002200441ffffffff0720126b220b4a0d162000044020002009200410510b20040d17417f210f200741016a22042c000041506a220541094d0440200741036a2004200741026a2d000041244622071b21042005417f20071b210f4101201720071b21170b4100210503400240200620043602d00220042c0000220a41606a2207411f4b0d00410120077422074189d10471450d00200441016a2104200520077221050c010b0b0240200a412a460440027f0240200441016a220a2c000041506a220741094b0d00200441026a2d00004124470d00200320074102746a410a360200200441036a210a41012117200441016a2c000041047420026a41807a6a2802000c010b20170d0620004504402006200a3602d00241002117410021100c030b20012001280200220441046a3602004100211720042802000b21102006200a3602d0022010417f4a0d01410020106b211020054180c0007221050c010b200641d0026a105222104100480d1720062802d002210a0b41002104417f2108027f200a2d0000412e470440200a210741000c010b200a2d0001412a460440027f0240200a2c000241506a220741094b0d00200a2d00034124470d00200320074102746a410a360200200a41046a2107200a2c000241047420026a41807a6a2802000c010b20170d06200a41026a210741002000450d001a20012001280200220a41046a360200200a2802000b2108200620073602d0022008417f73411f760c010b2006200a41016a3602d002200641d0026a1052210820062802d002210741010b210e03402004210a20072c000041bf7f6a220441394b0d03200741016a2107200a413a6c20046a41f01c6a2d00002204417f6a4108490d000b200620073602d0022004450d030240024002402004411b460440200f417f4c0d010c070b200f4100480d012003200f4102746a200436020020062002200f4104746a22042903003703c0022006200441086a2903003703c8020b410021042000450d190c010b2000450d1a200641c0026a2004200110530b200541ffff7b712211200520054180c000711b210c2007417f6a2c00002204415f7120042004410f714103461b2004200a1b221341ad7f6a220441254d0d01201341bf7f6a220441064b0d040240200441016b0e03050005060b200641003602fc01200620062903c0023e02f8012006200641f8016a3602c002417f2108200641f8016a0c100b20000d192017450d18200241106a2107200341046a210541012104034002402004410a47047f200528020022090d01200405410a0b41027421040340200441046a2205412c460440410121120c1d0b200320046a2107200521042007280200450d000b0c040b2007200920011053200741106a2107200541046a2105200441016a21040c000b000b200441016b0e25020202020b0202020202020202030207080303030208020202050c090a020204020f02020b0d0b200620073602d0020b41e02241163602000c140b4100210541d020210f0c0f0b2008417f4c4100200e1b0d1020062903c002212220062903c80221212006410036028c03027f2021427f5704402021428080808080808080807f8521214101211541e1200c010b200c4180107104404101211541e4200c010b41e72041e220200c41017122151b0b211b024020222021104d41014c0440200041202010201541036a2204201110542000201b20151051200041fc20418021201341207141057622051b41f42041f82020051b202220212022202110551b410310512000412020102004200c4180c0007310542010200420042010481b21040c010b200641e0016a202220212006418c036a104e200641d0016a20062903e001222120062903e801222220212022105620062903d0012221200641d8016a290300222242004200106d04402006200628028c03417f6a36028c030b2013412072221941e100460440201b41096a201b201341207122091b210e02402008411a4b0d00411b20086b450d00200841656a210442808080808080c081c000212342002124034020040440200641f0006a2024202342808080808080c081c000104f200441016a2104200641f8006a2903002123200629037021240c010b0b200e2d0000412d460440200641406b20212022428080808080808080807f85202420231057200641306a202420232006290340200641c8006a2903001056200641386a290300428080808080808080807f852122200629033021210c010b200641e0006a20212022202420231056200641d0006a2006290360200641e8006a290300202420231057200641d8006a2903002122200629035021210b2015410272210a201a200628028c0322052005411f7522046a200473ad201a10582204460440200641303a00df02201f21040b2004417e6a220f2013410f6a3a00002004417f6a412d412b20054100481b3a0000200c410871210b200641e0026a21050340200641206a2021202210592207105a200641106a202120222006290320200641286a290300105720062006290310200641186a29030042808080808080c081c000104f20052204200741c0206a2d00002009723a0000200641086a2903002122200629030021210240200441016a2205200641e0026a6b4101470d000240200b0d00200841004a0d002021202242004200106d450d010b2004412e3a0001200441026a21050b2021202242004200106d0d000b417f210441fdffffff07200a201a200f6b22096a220b6b2008480d01200041202010200b200841026a2005200641e0026a6b22072005201e6a2008481b200720081b22056a2204200c10542000200e200a10512000413020102004200c418080047310542000200641e0026a2007105120004130200520076b4100410010542000200f200910512000412020102004200c4180c0007310542010200420042010481b21040c010b2008410048210402402021202242004200106d450440200628028c03210e0c010b200641c0016a2021202242808080808080c08dc000104f2006200628028c0341646a220e36028c03200641c8016a290300212220062903c00121210b4106200820041b210d20064190036a2020200e4100481b221421050340200641b0016a20212022105b2204105c200641a0016a2021202220062903b001200641b8016a290300105720064190016a20062903a001200641a8016a2903004280808080e59ab78ec000104f20052004360200200541046a2105200629039001222120064198016a290300222242004200106d0d000b2014210b0340200e41014e04402005417c6a2104200e411d200e411d481b2209ad21224100210703402004200b4f044020042007ad20043502002022867c22212021428094ebdc038022214280ec94a37c7e7c3e02002004417c6a21042021a721070c010b0b20070440200b417c6a220b20073602000b034020052204200b4b04402004417c6a2205280200450d010b0b200e20096b210e200421050c010b0b2006200e36028c03200d412d6a41096e41016a21110340200e417f4c044041002107418094ebdc0341094100200e6b200e4177481b220a762108417f200a74417f73210f200b2104034020042005490440200420042802002209200a7620076a360200200441046a21042009200f7120086c21070c010b0b2014200b200b41046a200b2802001b220b201941e600461b220420114102746a2007044020052007360200200541046a21050b2005200520046b41027520114a1b2105200a200e6a210e0c010b0b2006200e36028c03410021070240200b20054f0d002014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200d41002007201941e600461b6b201941e70046220a200d410047716b2204200520146b41027541096c41776a4804402004418080096a2204200441096d220841776c6a2104410a21090340200441074c04402009410a6c2109200441016a21040c010b0b200841027420146a220f4184807c6a22082802002204200420096e221120096c220e6b2104024041002005200f4188807c6a22194620041b0d00024020114101714504404280808080808080b8c0002121420021222008200b4d0d012009418094ebdc03470d012008417c6a2d0000410171450d010b4280808080808080b8c0002121420121220b4280808080808080ff3f42808080808080c0ff3f42808080808080e0ff3f200420094101762211461b42808080808080e0ff3f20052019461b20042011491b212302402015450d00201b2d0000412d470d002023428080808080808080807f8421234280808080808080b84021210b20064180016a202220214200202310562008200e36020020062903800120064188016a29030020222021106d450d0020082009200e6a2207360200200f4180807c6a210403402007418094ebdc034f0440200441046a41003602002004200b490440200b417c6a220b41003602000b2004200428020041016a22073602002004417c6a21040c010b0b200441046a21082014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200841046a22042005200520044b1b21050b027f0340410020052209200b4d0d011a2009417c6a2205280200450d000b41010b210e0240200a450440200c41087121080c010b2007417f73417f200d4101200d1b220420074a2007417b4a7122051b20046a210d417f417e20051b20136a2113200c41087122080d00410921050240200e450d002009417c6a280200220a450d0041002105410a21040340200a2004700d01200541016a21052004410a6c21040c000b000b200920146b41027541096c41776a2104201341207241e60046044041002108200d200420056b22044100200441004a1b2204200d2004481b210d0c010b41002108200d200420076a20056b22044100200441004a1b2204200d2004481b210d0b417f2104200d41fdffffff0741feffffff072008200d72220f1b4a0d00200d200f4100476a41016a21110240201341207241e600472219450440200741ffffffff0720116b4a0d0220074100200741004a1b210a0c010b20072007411f7522056a200573ad201a1058417e6a21050340201a20056b220a417e6a41014c0440200541016a41303a00002005417f6a21050c010b0b200520133a0000200541016a412d412b20074100481b3a0000200a41ffffffff0720116b4a0d010b200a20116a2207201541ffffffff07734a0d00200041202010200720156a2211200c10542000201b201510512000413020102011200c41808004731054024020194504402014200b200b20144b1b220721050340200520144d0440200535020020181058210402402005200747044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b20042018470d00200641303a00e802201c21040b20002004201820046b1051200541046a21050c010b0b200f04402000418421410110510b03400240200520094f0d00200d4101480d00200535020020181058210403402004200641e0026a4b04402004417f6a220441303a00000c010b0b20002004200d4109200d4109481b1051200d41776a210d200541046a21050c010b0b20004130200d41096a4109410010540c010b2009200b41046a200e1b210a200b2107034002402007200a4f0d00200d4100480d0020182007350200201810582204460440200641303a00e802201c21040b02402007200b47044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b2000200441011051200441016a21042008454100200d4101481b0d002000418421410110510b20002004201820046b2209200d200d20094a1b1051200741046a2107200d20096b210d0c010b0b20004130200d41126a41124100105420002005201a20056b10510b2000412020102011200c4180c0007310542010201120112010481b21040b200441004e0d110c100b20062802c002220441da2020041b21090c010b4100210441e0222802002105037f200441d80046047f41d80005200441f00d6a2d0000200546047f200405200441016a21040c020b0b0b210741d00e210903402007450d01034020092d00002104200941016a2205210920040d000b2007417f6a2107200521090c000b000b4100210541ffffffff07200820084100481b210a0240024003400240200520096a21042005200a46220f0d002004410371450d0020042d0000450d02200541016a21050c010b0b41002107200f0d01200a20056b210720042d0000450d01200520096a2104034020074104490d0220042802002205417f73200541fffdfb776a71418081828478710d022007417c6a2107200441046a21040c000b000b200a20056b21070b03400240410021052007450440410021040c010b20042d0000450d002007417f6a2107200441016a21040c010b0b2009200420096b200a20041b22076a210441d020210f2008417f4a04402011210c200721080c0d0b2011210c2007210820042d0000450d0c0c0d0b200620062903c0023c00b6024100210541d020210f41012108201d2109201621042011210c0c0b0b20062903c0022221427f5704402006420020217d22213703c0024101210541d0200c080b200c4180107104404101210541d1200c080b41d22041d020200c41017122051b0c070b20062903c00221212016210903402021504504402009417f6a22092021a74107714130723a0000202142038821210c010b0b4100210541d020210f200c410871450d072008201620096b220441016a200820044a1b21080c070b20084108200841084b1b2108200c410872210c41f80021130b2013412071210420062903c00221212016210903402021504504402009417f6a22092021a7410f7141c0206a2d00002004723a0000202142048821210c010b0b4100210541d020210f200c410871450d0520062903c002500d05201341047541d0206a210f410221050c050b41002104200a41ff0171220541074b0d080240024002400240024002400240200541016b0e07010203040f0506000b20062802c00220123602000c0e0b20062802c00220123602000c0d0b20062802c0022012ac3703000c0c0b20062802c00220123b01000c0b0b20062802c00220123a00000c0a0b20062802c00220123602000c090b20062802c0022012ac3703000c080b20062802c0020b21094100210420092105024003400240024020042008470440200528020022070d01200421080b20084100480d092000412020102008200c105441002104034020042008460d0420092802002205450d0420054180014f0d02200620053a00f401200441016a220420084b0d042000200641f4016a41011051200941046a21090c000b000b20074180014f0d00200620073a00f401200441016a2104200541046a21050c010b0b000b2000412020102008200c4180c00073105420102008201020084a1b21040c060b4100210520062903c002212141d0200b210f20212016105821090b200e410020084100481b0d02200c41ffff7b71200c200e1b210c20062903c0022121024020080d00202150450d0041002108201621090c010b2008202150201620096b6a2204200820044a1b21080b201621040b200420096b220a20082008200a481b220841ffffffff0720056b4a0d00200520086a2207201020102007481b2204200b4a0d002000412020042007200c10542000200f200510512000413020042007200c41808004731054200041302008200a4100105420002009200a10512000412020042007200c4180c0007310540c010b0b41e02241cb003602000b417f21120c010b410021120b200641e03c6a240020120bd30101057f024020002d00004120710d0020002802102203047f2003052000104c0d0120002802100b200028021422056b200249044020002001200220002802241104001a0f0b41002103024020002802504100480d0020012104034020022003460d01200341016a2103200220046a21062004417f6a220721042006417f6a2d0000410a470d000b20002001200220036b41016a220420002802241104002004490d01200220076a41016a2101200028021421052003417f6a21020b20052001200210151a2000200028021420026a3602140b0b5d01047f20002802002102034020022c000041506a220341094b450440417f21042000200241016a2202360200200141cc99b3e6004d047f417f20032001410a6c22016a200341ffffffff0720016b4a1b0520040b21010c010b0b20010ba00502017f017e230041106b220324000240200141776a220141114b0d00024002400240024002400240024002400240024002400240024002400240024002400240200141016b0e110102050304060708090a0b0c0d0e0f1011000b20022002280200220141046a360200200020012802003602000c110b20022002280200220141046a360200200020013402003703000c100b20022002280200220141046a360200200020013502003703000c0f0b20022002280200220141046a360200200020013402003703000c0e0b20022002280200220141046a360200200020013502003703000c0d0b2002200228020041076a417871220141086a360200200020012903003703000c0c0b20022002280200220141046a360200200020013201003703000c0b0b20022002280200220141046a360200200020013301003703000c0a0b20022002280200220141046a360200200020013000003703000c090b20022002280200220141046a360200200020013100003703000c080b2002200228020041076a417871220141086a360200200020012903003703000c070b20022002280200220141046a360200200020013502003703000c060b2002200228020041076a417871220141086a360200200020012903003703000c050b2002200228020041076a417871220141086a360200200020012903003703000c040b20022002280200220141046a360200200020013402003703000c030b20022002280200220141046a360200200020013502003703000c020b2002200228020041076a417871220141086a360200200320012b0300105d2000200341086a290300370308200020032903003703000c010b20022002280200410f6a417071220141106a3602002001290300210420002001290308370308200020043703000b200341106a24000b6a01017f23004180026b220524000240200220034c0d0020044180c004710d0020052001200220036b22024180022002418002491b104b21030340200241800249450440200020034180021051200241807e6a21020c010b0b20002003200210510b20054180026a24000b63002000420052200142ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b2002420052200342ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b720bef0902037f037e230041f0006b22052400200442ffffffffffffffffff00832108024002402001427f7c2209427f51200242ffffffffffffffffff0083220a2009200154ad7c427f7c220942ffffffffffffbfffff0056200942ffffffffffffbfffff00511b4504402003427f7c2209427f5220082009200354ad7c427f7c220942ffffffffffffbfffff0054200942ffffffffffffbfffff00511b0d010b200150200a42808080808080c0ffff0054200a42808080808080c0ffff00511b45044020024280808080808020842104200121030c020b200350200842808080808080c0ffff0054200842808080808080c0ffff00511b450440200442808080808080208421040c020b2001200a42808080808080c0ffff00858450044042808080808080e0ffff00200220012003852002200485428080808080808080807f85845022061b21044200200120061b21030c020b2003200842808080808080c0ffff008584500d012001200a8450044020032008844200520d0220012003832103200220048321040c020b200320088450450d0020012103200221040c010b20052003200120032001562008200a562008200a511b22061b37036020052004200220061b220842ffffffffffff3f8337036820052002200420061b220242ffffffffffff3f83220437035820052001200320061b22013703502002423088a741ffff017121072008423088a741ffff01712206450440200541e0006a106a21060b2007450440200541d0006a106a210720052903582104200529035021010b200520014203862203370350200520052903602209420386220a370360200520052903684203862009423d8884428080808080808004842209370368200520044203862001423d888442808080808080800484220437035820022008852101200620076b220704402005027e200741ff004d0440200541306a2003200420071069200541406b2003200441800120076b10682005200541386a290300220437035820052903302005290340200541c8006a29030084420052ad840c010b420021042005420037035842010b22033703500b02402001427f5704402005200a20037d22013703602005200920047d200a200354ad7d2203370368200120038450044042002103420021040c030b200342ffffffffffffff03560d01200541206a2001200320012003106b41746a220710682005200541286a2903002203370368200520052903202201370360200620076b21060c010b20052003200a7c220137036020052001200354ad200420097c7c2204370368200442808080808080800883500440200421030c010b200520044201882203370368200520014201832004423f86200142018884842201370360200641016a21060b2008428080808080808080807f832104200641ffff014e0440200442808080808080c0ffff00842104420021030c010b410021070240200641004a0440200621070c010b200520012003410120066b1069200541106a20012003200641ff006a10682005200541086a2903002203370368200520052903002005290310200541186a29030084420052ad8422013703600b200342038842ffffffffffff3f832004842007ad423086842003423d8620014203888422042001a7410771220641044bad7c2203200454ad7c2003420183420020064104461b220120037c2203200154ad7c21040b2000200337030020002004370308200541f0006a24000b4401017f230041106b2205240020052001200220032004428080808080808080807f851056200529030021012000200529030837030820002001370300200541106a24000b6602027f017e03402000428080808010544504402001417f6a220120002000420a80220442767e7ca74130723a0000200421000c010b0b2000a721020340200204402001417f6a220120022002410a6e220341766c6a4130723a0000200321020c010b0b20010b850101027f230041106b22032400027f41002001423088a741ffff0171220241ffff00490d001a41808080807841ffffffff0720014200531b20024181807f6a41204f0d001a20032000200142ffffffffffff3f8342808080808080c0008441ef800120026b10694100200328020022026b200220014200531b0b2102200341106a240020020b810102027f017e230041106b220324002000027e200145044042000c010b200320012001411f7522026a2002732202ad4200200267220241d1006a1068200341086a29030042808080808080c00085419e800120026bad4230867c200141808080807871ad42208684210420032903000b37030020002004370308200341106a24000b6d01037f230041106b22022400024020014200530d002001423088a741ffff0171220441ffff00490d00417f210320044181807f6a411f4b0d0020022000200142ffffffffffff3f8342808080808080c0008441ef800120046b1069200228020021030b200241106a240020030b6902017f017e230041106b220224002000027e200145044042000c010b20022001ad420041f000200167411f7322016b1068200241086a29030042808080808080c00085200141ffff006aad4230867c210320022903000b37030020002003370308200241106a24000b830102027f027e230041106b220224002001bd22044280808080088321052000027e200442ffffffff078322045004404200210442000c010b2002200442002004a7672203413c6a1068200241086a29030042808080808080c000854181f80020036bad42308684210420022903000b37030020002004200584370308200241106a24000bce0201037f230041b0026b220124002001200036020c200120003602ac0220014180026a41004128104b1a200120012802ac023602a8024100200141a8026a200141e0006a20014180026a105041004e044041fc212802001a41b021280200210241f82128020041004c044041b0212002415f713602000b027f0240024041e02128020045044041e02141d00036020041cc21410036020041c021420037030041dc21280200210341dc21200141106a3602000c010b41c0212802000d010b417f41b021104c0d011a0b41b021200141a8026a200141e0006a20014180026a10500b2100200241207121022003047f41b0214100410041d4212802001104001a41e021410036020041dc21200336020041cc21410036020041c021410036020041c421280200210341c421410036020041000520000b1a41b02141b0212802002002723602000b200141b0026a24000b3501017f230041106b220041f0a20436020c41e422200028020c41076a417871220036020041e822200036020041ec223f003602000b10002002044020002001200210151a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001062200010396a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000bb50101027f20004504404100210041c822280200044041c822280200106421000b41c022280200044041c022280200106420007221000b41c422410136020041c422410036020020000f0b200028024c1a02402000280214200028021c460d0020004100410020002802241104001a20002802140d00417f0f0b20002802042201200028020822024704402000200120026bac410120002802281110001a0b2000410036021c200042003703102000420037020441000b040041000b2901017f200028021c2203200028021420036b1000200120021000200028021420026a200028021c6b0b0400427f0b5001017e0240200341c0007104402001200341406aad862102420021010c010b2003450d0020022003ad220486200141c00020036bad88842102200120048621010b20002001370300200020023703080b6001017e0240027e200341c0007104402002200341406aad8821014200210242000c010b2003450d01200241c00020036bad8620012003ad2204888421012002200488210242000b2104200120048421010b20002001370300200020023703080b5402037f027e230041106b22012400200120002903002204200041086a2202290300220520042005106b220341716a10682002200141086a29030037030020002001290300370300200141106a2400411020036b0b1701017f2000200120015022021b792002410674ad7ca70b6102037f027e230041106b22012400200120002903002205200041086a220329030022042005200420045022021b792002410674ad7ca7220241716a1068200020012903003703002003200141086a290300370300200141106a2400411020026b0bdb0102017f027e4101210402402000420052200142ffffffffffffffffff0083220542808080808080c0ffff0056200542808080808080c0ffff00511b0d002002420052200342ffffffffffffffffff0083220642808080808080c0ffff0056200642808080808080c0ffff00511b0d00200020028420052006848450044041000f0b20012003834200590440417f21042000200254200120035320012003511b0d0120002002852001200385844200520f0b417f21042000200256200120035520012003511b0d00200020028520012003858442005221040b20040b0bc71815004180080b03617478004190080b8d05ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff696e666f006c696e6500200066696c65002f686f6d652f706c61746f6e2f2e6a656e6b696e732f776f726b73706163652f636f6e7472616374735f746573745f616c6179612f63617365732f436f6e7472616374734175746f54657374732f7372632f746573742f7265736f75726365732f636f6e7472616374732f7761736d2f636f6e74726163745f63726f73735f63616c6c2f436f6e747261637443616c6c65724e6f5265742e6370700066756e630063616c6c466565640063726f73735f63616c6c65725f6e6f7265742063616c6c2072656365697665725f6e6f72657420696e666f206861732073756363657373656421002573090a0063726f73735f63616c6c65725f6e6f7265742063616c6c2072656365697665725f6e6f72657420696e666f20686173206661696c656421006c697374537461636b206973206e6f7420656d70747900696e76616c6964206d6574686f640a00696e697400546865206e756d626572206f66206d6574686f6420706172616d657465727320646f6573206e6f74206d617463680a006765745f737461747573006e6f206d6574686f6420746f2063616c6c0a006261642063617374006d5f64617461002f7573722f6c6f63616c2f62696e2f2e2e2f706c61746f6e2e6364742f696e636c7564652f706c61746f6e2f766563746f725f7265662e68006f70657261746f725b5d005f69203c206d5f636f756e740041a60d0b8b10f03f000000000000244000000000000059400000000000408f40000000000088c34000000000006af8400000000080842e4100000000d01263410000000084d797410000000065cdcd41542122190d010203114b1c0c10040b1d121e27686e6f7071622005060f1314151a08160728241718090a0e1b1f252383827d262a2b3c3d3e3f43474a4d58595a5b5c5d5e5f60616364656667696a6b6c727374797a7b7c480000000000000000496c6c6567616c20627974652073657175656e636500446f6d61696e206572726f7200526573756c74206e6f7420726570726573656e7461626c65004e6f74206120747479005065726d697373696f6e2064656e696564004f7065726174696f6e206e6f74207065726d6974746564004e6f20737563682066696c65206f72206469726563746f7279004e6f20737563682070726f636573730046696c65206578697374730056616c756520746f6f206c6172676520666f7220646174612074797065004e6f207370616365206c656674206f6e20646576696365004f7574206f66206d656d6f7279005265736f75726365206275737900496e7465727275707465642073797374656d2063616c6c005265736f757263652074656d706f726172696c7920756e617661696c61626c6500496e76616c6964207365656b0043726f73732d646576696365206c696e6b00526561642d6f6e6c792066696c652073797374656d004469726563746f7279206e6f7420656d70747900436f6e6e656374696f6e2072657365742062792070656572004f7065726174696f6e2074696d6564206f757400436f6e6e656374696f6e207265667573656400486f737420697320646f776e00486f737420697320756e726561636861626c65004164647265737320696e207573650042726f6b656e207069706500492f4f206572726f72004e6f207375636820646576696365206f72206164647265737300426c6f636b20646576696365207265717569726564004e6f207375636820646576696365004e6f742061206469726563746f72790049732061206469726563746f727900546578742066696c652062757379004578656320666f726d6174206572726f7200496e76616c696420617267756d656e7400417267756d656e74206c69737420746f6f206c6f6e670053796d626f6c6963206c696e6b206c6f6f700046696c656e616d6520746f6f206c6f6e6700546f6f206d616e79206f70656e2066696c657320696e2073797374656d004e6f2066696c652064657363726970746f727320617661696c61626c65004261642066696c652064657363726970746f72004e6f206368696c642070726f636573730042616420616464726573730046696c6520746f6f206c6172676500546f6f206d616e79206c696e6b73004e6f206c6f636b7320617661696c61626c65005265736f7572636520646561646c6f636b20776f756c64206f63637572005374617465206e6f74207265636f76657261626c650050726576696f7573206f776e65722064696564004f7065726174696f6e2063616e63656c65640046756e6374696f6e206e6f7420696d706c656d656e746564004e6f206d657373616765206f6620646573697265642074797065004964656e7469666965722072656d6f76656400446576696365206e6f7420612073747265616d004e6f206461746120617661696c61626c65004465766963652074696d656f7574004f7574206f662073747265616d73207265736f7572636573004c696e6b20686173206265656e20736576657265640050726f746f636f6c206572726f7200426164206d6573736167650046696c652064657363726970746f7220696e20626164207374617465004e6f74206120736f636b65740044657374696e6174696f6e2061646472657373207265717569726564004d65737361676520746f6f206c617267650050726f746f636f6c2077726f6e67207479706520666f7220736f636b65740050726f746f636f6c206e6f7420617661696c61626c650050726f746f636f6c206e6f7420737570706f7274656400536f636b65742074797065206e6f7420737570706f72746564004e6f7420737570706f727465640050726f746f636f6c2066616d696c79206e6f7420737570706f7274656400416464726573732066616d696c79206e6f7420737570706f727465642062792070726f746f636f6c0041646472657373206e6f7420617661696c61626c65004e6574776f726b20697320646f776e004e6574776f726b20756e726561636861626c6500436f6e6e656374696f6e207265736574206279206e6574776f726b00436f6e6e656374696f6e2061626f72746564004e6f2062756666657220737061636520617661696c61626c6500536f636b657420697320636f6e6e656374656400536f636b6574206e6f7420636f6e6e65637465640043616e6e6f742073656e6420616674657220736f636b65742073687574646f776e004f7065726174696f6e20616c726561647920696e2070726f6772657373004f7065726174696f6e20696e2070726f6772657373005374616c652066696c652068616e646c650052656d6f746520492f4f206572726f720051756f7461206578636565646564004e6f206d656469756d20666f756e640057726f6e67206d656469756d2074797065004d756c7469686f7020617474656d70746564004e6f206572726f7220696e666f726d6174696f6e00000019000a00191919000000000500000000000009000000000b00000000000000001900110a191919030a0700011b090b18000009060b00000b0006190000001919190041c11d0b210e000000000000000019000a0d191919000d00000200090e00000009000e00000e0041fb1d0b010c0041871e0b1513000000001300000000090c00000000000c00000c0041b51e0b01100041c11e0b150f000000040f0000000009100000000000100000100041ef1e0b01120041fb1e0b1e11000000001100000000091200000000001200001200001a0000001a1a1a0041b21f0b0e1a0000001a1a1a000000000000090041e31f0b01140041ef1f0b1517000000001700000000091400000000001400001400419d200b01160041a9200b82011500000000150000000009160000000000160000160000303132333435363738394142434445462d2b2020203058307800286e756c6c29002d30582b30582030582d30782b307820307800696e6600494e46006e616e004e414e002e00256400417373657274696f6e206661696c65643a202573202825733a2025733a202564290a0041b0210b01050041bc210b01030041d4210b0a040000000500000060110041ec210b01020041fc210b08ffffffffffffffff0041c0220b02b010"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_CALLFEED = "callFeed"; - - public static final String FUNC_GET_STATUS = "get_status"; - - protected ContractCallerNoRet(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractCallerNoRet(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallerNoRet.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallerNoRet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallerNoRet.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCallerNoRet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall callFeed(String target_address, Uint64 gasValue) { - final WasmFunction function = new WasmFunction(FUNC_CALLFEED, Arrays.asList(target_address,gasValue), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callFeed(String target_address, Uint64 gasValue, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CALLFEED, Arrays.asList(target_address,gasValue), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_status() { - final WasmFunction function = new WasmFunction(FUNC_GET_STATUS, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static ContractCallerNoRet load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractCallerNoRet(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractCallerNoRet load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractCallerNoRet(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCrossCallOriginType.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCrossCallOriginType.java deleted file mode 100644 index 321f8bb8b8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCrossCallOriginType.java +++ /dev/null @@ -1,96 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractCrossCallOriginType extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001611060027f7f0060017f017f60017f0060027f7f017f60037f7f7f0060000060037f7f7f017f60047f7f7f7f017f60027f7e0060017f017e60047f7f7f7f0060057f7f7f7e7e0060037e7e7f006000017f60077f7f7f7f7f7f7f017f60027e7e017f02a4020d03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000703656e760b706c61746f6e5f63616c6c000e03656e760d706c61746f6e5f72657475726e0000034948050b0301030308030003030008030200060001010404020008040001060100000607020600000203020104050704090902010201010000000205020007000206000300010501010a0405017001010105030100020608017f0141e089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974004606696e766f6b6500380ac56f48040010510bd71a020c7f017e230041a0026b220524002005418008100f220728020420052d00002206410176200641017122081b21062007280208200741016a20081b210742a5c688a1c89ca7f94b21110340200604402006417f6a21062007300000201142b383808080207e852111200741016a21070c010b0b200541d8006a10102106200541306a200210111a2006410210122106200541286a4100360200200541206a4200370300200541186a420037030020054200370310200541106a20111013200541106a410010142202200541306a10152002200541c0016a2005413c6a22071016101720054190016a200541c8006a2202101610174101101421082006200528021010182006201110192006410310122106200541a8016a4100360200200541a0016a420037030020054198016a4200370300200542003703900120054190016a200541306a101520054190016a20054180016a200710161017200541f0006a2002101610172109200620052802900110182006410110122106200541d8016a4100360200200541d0016a4200370300200541c8016a4200370300200542003703c001200541c0016a200541e0016a200541306a101610172100200620052802c00110182006200541b0016a200541306a1016101a2106200041046a101b2006200541c0016a20071016101a200541e0016a20021016101a2106200941046a101b027f02400240200628020c200641106a280200460440200641046a2107200628020021020c010b200641046a2107100020062802002102200628020c2006280210470d010b20020c010b100020062802000b2109200541003602b801200542003703b0010240200920072802006a20026b2207450d00200541b0016a2007101c20074101480d00200520052802b40120022007101d20076a3602b4010b200841046a101b200628020c22070440200620073602100b200541e0016a418c08100f210f2001280208200141016a220d20012d0000220641017122071b21002001280204200641017620071b210a4100210641012102410021084100210902400340200241017141002006200a491b0440200020066a2d00002207415f6a41ff017141de004921022008200741bf7f6a41ff0171411a4972210820092007419f7f6a41ff0171411a49722109200641016a21060c0105024020022008200971410173712108200a450d00200a210603402006450d01200020066a21022006417f6a220721062002417f6a2d00004131470d000b0c030b0b0b417f21070b0240024002402008410171450d00200741076a200a4b0d00200741016a4102490d00200a41da004b0d00410021062005410036029801200542003703900120054190016a200a2007417f7322096a101e4101210802400240024003402006200128020420012d00002202410176200241017122021b20096a4f044002402008410171450d05200541106a101f220641016a210e410021020340200220074604402006280204220920052d001022074101762200200741017122081b2202200f28020420052d00e0012207410176200741017122071b470d05200f280208200f41016a20071b210720080d0220002102200e210803402002450440200021090c080b20082d000020072d0000470d06200741016a2107200841016a21082002417f6a21020c000b00052001280208200d20012d00004101711b20026a2c00002200412072210c200041bf7f6a411a49210b027f20052d0010220a4101712210450440200a4101762108410a0c010b200628020421082006280200220a417e71417f6a0b2109200c2000200b1b210c024002400240200820094604402006280208200e200a4101711b210b416f210a200941e6ffffff074d0440410b20094101742200200941016a220a200a2000491b220041106a4170712000410b491b210a0b200a10202200200b200910212006200a410172360200200620003602080c010b2010450d01200628020821000b2006200841016a3602040c010b2005200841017441026a3a0010200e21000b200020086a220841003a00012008200c3a0000200241016a21020c010b000b000b0520052802900120066a2001280208200d20021b20076a20066a41016a2d00004190086a2d000022023a00002008200241ff0147712108200641016a21060c010b0b2002450d012006280208210803402002450d0220082d000020072d0000470d01200741016a2107200841016a21082002417f6a21020c000b000b200541386a4200370300200541406b410036020020054200370330200541003a00442005280290012206450d0320052006360294010c030b41002107200541003602c801200542003703c001200541c0016a2009410174410172101e03402007200628020420052d00102202410176200241017122021b220849044020052802c00120076a2006280208200e20021b20076a2d000022024105763a000020052802c001200628020420052d0010220841017620084101711b6a20076a41016a2002411f713a0000200741016a21070c010b0b20052802c00120086a41003a000020052802c40121020240200528029401220720052802900122066b22084101480d00200820052802c801220020026b4c0440034020062007460d02200220062d00003a0000200520052802c40141016a22023602c401200641016a21060c000b000b200541406b200541c8016a360200410021092005410036023c200220052802c00122016b210a200220086a20016b2208200020016b2200410174220120012008491b41ffffffff07200041ffffffff03491b220004402000102021090b2005200936023020052009200a6a22083602382005200020096a36023c20052008360234200541306a4104722109034020062007470440200820062d00003a00002005200528023841016a2208360238200641016a21060c010b0b20052802c001200220091022024020052802c401220720026b220641004c0440200528023821020c010b2005200528023820022006101d20066a220236023820052802c40121070b20052802c0012106200520052802343602c00120052006360234200520023602c4012005200736023820052802c80121072005200528023c3602c8012005200736023c20052006360230200541306a102320052802c40121020b200542003702c40120052802c0012107200541003602c001200220076b21024101210603402002044020072d000041002006411d764101716b41b3c5d1d0027141002006411c764101716b41dde788ea037141002006411b764101716b41fab384f5017141002006411a764101716b41ed9cc2b20271410020064119764101716b41b2afa9db0371200641057441e0ffffff037173737373737321062002417f6a2102200741016a21070c010b0b20064101470d004100210b2005410036026020054200370358200541003602c801200542003703c001027f4100200528029401417a6a220220052802900122066b2207450d001a200541c0016a2007101c03402002200647044020052802c401220720062d00003a00002005200741016a3602c401200641016a21060c010b0b20052802c001210b20052802c4010b200b6b2110200541e0006a210d41002106410021004100210c02400340200c201046044002402000410820066b7441ff0171452006410548712106200b04402005200b3602c4010b20060d00200528025821060c030b05200b200c6a2d0000200041057441e01f71722100200641056a21060340200641084e04402000200641786a2206762102200528025c220820052802602209490440200820023a00002005200528025c41016a36025c0c02052005200d360240410021072005410036023c2008200528025822016b220841016a220a200920016b220941017422012001200a491b41ffffffff07200941ffffffff03491b220904402009102021070b20052007360230200720086a220820023a00002005200720096a36023c200520083602342005200841016a360238200541d8006a200541306a1024200541306a10230c020b000b0b200c41016a210c0c010b0b200528025c200528025822066b4114470d00200541d0016a4100360200200541c8016a4200370300200542003703c00141002106034020064114470440200541c0016a20066a41003a0000200641016a21060c010b0b200528025c200528025822076b2102410021060340024020022006460d00200641134b0d00200541c0016a20066a200620076a2d00003a0000200641016a21060c010b0b200541406b200541d0016a280200360200200541386a200541c8016a290300370300200520052903c001370330200541013a0044200704402005200736025c0b2005280290012206044020052006360294010b200541c0016a2003102520054190016a20041025200541306a20052802b001220620052802b40120066b20052802c001220720052802c40120076b200528029001220720052802940120076b100b1a2005280290012207044020052007360294010b20052802c0012207450d04200520073602c4010c040b2006450d002005200636025c0b2005280290012206450d0020052006360294010b200541386a4200370300200541406b410036020020054200370330200541003a00440b20052802b00121060b20060440200520063602b4010b200541a0026a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b102620000b29002000410036020820004200370200200041001027200041146a41003602002000420037020c20000b25002000200110161a2000410c6a2001410c6a10161a200041186a200141186a10161a20000bf30101057f20002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410200b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001101d1a0b20002002360214200020033602102000200536020c20000b880102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002102820026a0520020b41016a21020b200041186a28020022030440200041086a280200200041146a2802002003102921000b2000200028020020026a3602000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031029280200210120022003417f6a3602002007102a4180104f044020072000410c6a280200417c6a102b0b200141384f047f2001102820016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110290c020b20000c010b02402007102a0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a102c0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010202105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a102d220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a102e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002102f200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a103022013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a102e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002102f200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a102c0c010b20042001410175410120011b20032005102e210241802010202106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a102d22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200102e21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003102f200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002102f052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a103022013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210102e21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006102f200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071031200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b2701017f230041106b220224002000410010142002200110161017410110141a200241106a24000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102620000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102820026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110290c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110270b0b2801017f2000420020011005200028020422026a103242002001200220002802006a1006200010330b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a103220042001200220002802006a10042000103320000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001031200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001102b200441106a24000b2001017f2000200110202202360200200020023602042000200120026a3602080bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110342106200241186a200041086a3602002002410036021441002101200604402006102021010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1024200241086a10230c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000103520000b0b002000410120001b10360b100020020440200020012002101d1a0b0b270020022002280200200120006b22016b2202360200200141014e0440200220002001101d1a0b0b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b6701017f20002802002000280204200141046a1022200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b6302017f017e20012103034020035045044020034208882103200241016a21020c010b0b200041003602082000420037020020002002101e2000280204417f6a21020340200150450440200220013c00002002417f6a2102200142088821010c010b0b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204102021032000200236020420002004410172360200200020033602080b2003200120021021200220036a41003a00000b2f01017f200028020820014904402001103620002802002000280204101d210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a102d22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a102e2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003102f200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110370b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102021040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110370b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b3601017f200028020820014904402001103620002802002000280204101d210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1032200120002802006a22012002200110020c010b0b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b9b0101047f230041106b220124002001200036020c2000047f41d809200041086a2202411076220041d8092802006a220336020041d40941d409280200220420026a41076a417871220236020002400240200341107420024d044041d809200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101d41086a0541000b2100200141106a240020000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002101d1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0302057f017e230041c0016b22002400105110072201103622021008200041406b200041086a20022001411c103922014100103a02400240200041406b103b2205500d00419009103c20055104402001103d200041406b103e103f0c020b419509103c2005510440200041406b101f2102200041cc006a10402103200042003703782000420037037020011041410547044010000b200041013602a801200020013602202000200041a8016a36022420004180016a20014101103a20004180016a20021042200020002802a80141016a22043602a80120004180016a20012004103a20004180016a20031043200020002802a80141016a3602a801200041206a200041f0006a1044200041206a200041f8006a1044200041206a103e2201200041a8016a2002101620004180016a2003101120002903702000290378100e200042003703b801200041b8016a10452001103f0c020b41ac09103c2005520d002001103d2000200041406b103e220128020420012802006b41246dad3703800120004180016a10452001103f0c010b10000b1046200041c0016a24000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105220024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105220024d0d0020034104710440100020000f0b200042003702000b20000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104f20012003280208200328020c104e36020c20032001104f410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410391a200341106a24000f0b20032001104f41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104e10542001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b2203240020001047024002402000280204450d00200010470240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a20001048200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001041410147044010000b0bb90501097f230041a0016b2203240020004100360208200042003702002000410c6a41bc09100f2101200041043602180240027f20012d00004101710440200041146a2802000c010b200141016a0b410410092204450d002003410036022020034200370318200341186a2004101e027f20012d00004101710440200041146a2802000c010b200141016a0b200028021820032802182004100a1a02400240200320032802182201200328021c20016b411c10392204280204450d0020042802002d000041c001490d002004104121012000280208200028020022026b41246d20014904402000200341286a2001200028020420026b41246d200041086a10492201104a2001104b0b200341f8006a20044101104c2101200341e8006a20044100104c2108200041086a210920012802042104034020082802042004464100200128020822022008280208461b0d02200341d0006a20042002411c1039200341286a1040220410430240200028020422022000280208220549044020022004104d2000200028020441246a3602040c010b20034188016a2002200028020022066b41246d220241016a2207200520066b41246d2205410174220620062007491b41c7e3f138200541e3f1b81c491b20022009104921022003280290012004104d200320032802900141246a3602900120002002104a2002104b0b20012001280204220420012802086a410020041b22043602042001280200220204402001200236020820042002104e21052001027f200128020422064504404100210241000c010b410021024100200128020822072005490d001a200720052005417f461b210220060b2204ad2002ad42208684370204200141002001280200220520026b2202200220054b1b3602000c0105200141003602080c010b000b000b10000b20032802182201450d002003200136021c0b200341a0016a240020000b1501017f200028020022010440200020013602040b0b19002000101f1a2000410c6a101f1a200041186a101f1a20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000104f200128020c210003402000450d01200141002001280208220320032000104e22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a101f1a0c010b200241186a200010482000105021030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102021032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1035200241206a24000b5e01017f230041306b22022400200220004100103a200241186a20024100103a200241186a20011042200241186a20004101103a200241186a2001410c6a1042200241186a20004102103a200241186a200141186a1042200241306a24000b4601017f230041206b22022400200241086a20002802002000280204280200103a2001200241086a103b37030020002802042200200028020041016a360200200241206a24000b9e0101037f230041406a22012400200141086a10102102200141386a4100360200200141306a4200370300200141286a420037030020014200370320200141206a2000290300101320012802202103200141206a410472101b200220031018200220002903001019200228020c200241106a28020047044010000b20022802002002280204100c200228020c22000440200220003602100b200141406b24000b880101037f41c409410136020041c8092802002100034020000440034041cc0941cc092802002201417f6a2202360200200141014845044041c4094100360200200020024102746a22004184016a280200200041046a28020011020041c409410136020041c80928020021000c010b0b41cc09412036020041c809200028020022003602000c010b0b0b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110502204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b4f01017f2000410036020c200041106a200336020020010440200141246c102021040b2000200436020020002004200241246c6a220236020820002004200141246c6a36020c2000200236020420000b900101027f2000280204210220002802002103034020022003464504402001280204415c6a2002415c6a2202104d20012001280204415c6a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001415c6a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104f20004100200428020c2201200428020822022001104e22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b620020002001290200370200200041086a200141086a28020036020020011035200041146a200141146a2802003602002000200129020c37020c2001410c6a1035200041206a200141206a28020036020020002001290218370218200141186a10350b2701017f230041206b22022400200241086a200020014114103910522100200241206a240020000b2101017f20011050220220012802044b044010000b2000200120011053200210540bff0201037f200028020445044041000f0b2000104741012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3501017f230041106b220041e0890436020c41d009200028020c41076a417871220036020041d409200036020041d8093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001053200010506a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0bc80101004180080bc0016164645f6d6573736167650061747800ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff696e69740063726f73735f63616c6c5f6164645f6d657373616765006765745f766563746f725f73697a6500696e666f"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_CROSS_CALL_ADD_MESSAGE = "cross_call_add_message"; - - public static final String FUNC_GET_VECTOR_SIZE = "get_vector_size"; - - protected ContractCrossCallOriginType(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractCrossCallOriginType(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCrossCallOriginType.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCrossCallOriginType.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCrossCallOriginType.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCrossCallOriginType.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall cross_call_add_message(String target_address, My_message one_message, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_CROSS_CALL_ADD_MESSAGE, Arrays.asList(target_address,one_message,value,gas), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall cross_call_add_message(String target_address, My_message one_message, Uint64 value, Uint64 gas, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CROSS_CALL_ADD_MESSAGE, Arrays.asList(target_address,one_message,value,gas), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_vector_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTOR_SIZE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static ContractCrossCallOriginType load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractCrossCallOriginType(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractCrossCallOriginType load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractCrossCallOriginType(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Message { - public String head; - } - - public static class My_message { - public Message baseClass; - - public String body; - - public String end; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCrossCallStorageString.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCrossCallStorageString.java deleted file mode 100644 index 69b40c2911..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCrossCallStorageString.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractCrossCallStorageString extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001651160027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60000060027f7e0060037f7f7f017f60047f7f7f7f0060047f7f7f7f017f60017f017e60047f7f7e7e0060037e7e7f006000017f60077f7f7f7f7f7f7f017f60017e017f60027e7e017f02bb020e03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65001003656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000803656e760b706c61746f6e5f63616c6c000e03656e760d706c61746f6e5f72657475726e0000033938050b040104010706000006000002000103030200060300010700020402010507030a0a0201020100000f01050902000003000401050101080405017001010105030100020608017f0141d089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000e0f5f5f66756e63735f6f6e5f65786974003906696e766f6b65002c0a965738040010420bf119020d7f017e230041c0016b22042400200441f8006a4180081010220628020420042d00782205410176200541017122071b21052006280208200641016a20071b210642a5c688a1c89ca7f94b21110340200504402005417f6a21052006300000201142b383808080207e852111200641016a21060c010b0b200441386a10112105200441a0016a200110122106200528020421010240200541106a2802002207200541146a280200220849044020072001ad4220864202843702002005200528021041086a3602100c010b027f41002007200528020c22096b410375220a41016a2207200820096b2208410275220920092007491b41ffffffff01200841037541ffffffff00491b2209450d001a200941037410130b21072007200a4103746a22082001ad42208642028437020020082005280210200528020c220d6b22016b210a200720094103746a2107200841086a2108200141014e0440200a200d200110141a0b20052007360214200520083602102005200a36020c0b200441306a4100360200200441286a4200370300200441206a420037030020044200370318200441186a20111015200441186a200441b0016a2006101210162005200428021810172005201110182005200441b0016a200610121019027f02400240200528020c2005280210460440200528020021010c010b100020052802002101200528020c2005280210470d010b20010c010b100020052802000b210620044100360210200442003703080240200620052802046a20016b2206450d00200441086a2006101a20064101480d002004200428020c20012006101420066a36020c0b200441186a410472101b200528020c22060440200520063602100b200441d0006a418b081010210f2000280208200041016a220d20002d0000220541017122061b21092000280204200541017620061b210a4100210541012101410021074100210802400340200141017141002005200a491b0440200520096a2d00002206415f6a41ff017141de004921012007200641bf7f6a41ff0171411a4972210720082006419f7f6a41ff0171411a49722108200541016a21050c0105024020012007200871410173712107200a450d00200a210503402005450d01200520096a21012005417f6a220621052001417f6a2d00004131470d000b0c030b0b0b417f21060b0240024002402007410171450d00200641076a200a4b0d00200641016a4102490d00200a41da004b0d0041002105200441003602b801200442003703b001200441b0016a200a2006417f7322086a101c4101210702400240024003402005200028020420002d00002201410176200141017122011b20086a4f044002402007410171450d05200441a0016a101d220541016a210e410021010340200120064604402005280204220820042d00a00122064101762209200641017122071b2201200f28020420042d00502206410176200641017122061b470d05200f280208200f41016a20061b210620070d0220092101200e210703402001450440200921080c080b20072d000020062d0000470d06200641016a2106200741016a21072001417f6a21010c000b00052000280208200d20002d00004101711b20016a2c00002209412072210c200941bf7f6a411a49210b027f20042d00a001220a4101712210450440200a4101762107410a0c010b200528020421072005280200220a417e71417f6a0b2108200c2009200b1b210c024002400240200720084604402005280208200e200a4101711b210b416f210a200841e6ffffff074d0440410b20084101742209200841016a220a200a2009491b220941106a4170712009410b491b210a0b200a10132209200b2008101e2005200a410172360200200520093602080c010b2010450d01200528020821090b2005200741016a3602040c010b2004200741017441026a3a00a001200e21090b200720096a220741003a00012007200c3a0000200141016a21010c010b000b000b0520042802b00120056a2000280208200d20011b20066a20056a41016a2d00004190086a2d000022013a00002007200141ff0147712107200541016a21050c010b0b2001450d012005280208210703402001450d0220072d000020062d0000470d01200641016a2106200741016a21072001417f6a21010c000b000b200441206a4200370300200441286a410036020020044200370318200441003a002c20042802b0012205450d03200420053602b4010c030b410021062004410036024020044200370338200441386a2008410174410172101c03402006200528020420042d00a0012201410176200141017122011b2207490440200428023820066a2005280208200e20011b20066a2d000022014105763a00002004280238200528020420042d00a001220741017620074101711b6a20066a41016a2001411f713a0000200641016a21060c010b0b200428023820076a41003a0000200428023c2101024020042802b401220620042802b00122056b22074101480d0020072004280240220920016b4c0440034020052006460d02200120052d00003a00002004200428023c41016a220136023c200541016a21050c000b000b200441286a200441406b36020041002108200441003602242001200428023822006b210a200120076a20006b2207200920006b2209410174220020002007491b41ffffffff07200941ffffffff03491b220904402009101321080b2004200836021820042008200a6a22073602202004200820096a3602242004200736021c200441186a4104722108034020052006470440200720052d00003a00002004200428022041016a2207360220200541016a21050c010b0b200428023820012008101f0240200428023c220620016b220541004c0440200428022021010c010b2004200428022020012005101420056a2201360220200428023c21060b200428023821052004200428021c3602382004200536021c2004200136023c2004200636022020042802402106200420042802243602402004200636022420042005360218200441186a1020200428023c21010b2004420037023c2004280238210620044100360238200120066b21014101210503402001044020062d000041002005411d764101716b41b3c5d1d0027141002005411c764101716b41dde788ea037141002005411b764101716b41fab384f5017141002005411a764101716b41ed9cc2b20271410020054119764101716b41b2afa9db0371200541057441e0ffffff037173737373737321052001417f6a2101200641016a21060c010b0b20054101470d004100210b2004410036028001200442003703782004410036024020044200370338027f410020042802b401417a6a220120042802b00122056b2206450d001a200441386a2006101a034020012005470440200428023c220620052d00003a00002004200641016a36023c200541016a21050c010b0b2004280238210b200428023c0b200b6b211020044180016a210d41002105410021094100210c02400340200c201046044002402009410820056b7441ff0171452005410548712105200b04402004200b36023c0b20050d00200428027821050c030b05200b200c6a2d0000200941057441e01f71722109200541056a21050340200541084e04402009200541786a2205762101200428027c22072004280280012208490440200720013a00002004200428027c41016a36027c0c02052004200d36022841002106200441003602242007200428027822006b220741016a220a200820006b220841017422002000200a491b41ffffffff07200841ffffffff03491b220804402008101321060b20042006360218200620076a220720013a00002004200620086a3602242004200736021c2004200741016a360220200441f8006a200441186a1021200441186a10200c020b000b0b200c41016a210c0c010b0b200428027c200428027822056b4114470d00200441c8006a4100360200200441406b42003703002004420037033841002105034020054114470440200441386a20056a41003a0000200541016a21050c010b0b200428027c200428027822066b2101410021050340024020012005460d00200541134b0d00200441386a20056a200520066a2d00003a0000200541016a21050c010b0b200441286a200441c8006a280200360200200441206a200441406b29030037030020042004290338370318200441013a002c200604402004200636027c0b20042802b00122050440200420053602b4010b200441386a20021022200441b0016a20031022200441186a20042802082205200428020c20056b20042802382206200428023c20066b20042802b001220620042802b40120066b100c1a20042802b00122060440200420063602b4010b20042802382206450d042004200636023c0c040b2005450d002004200536027c0b20042802b0012205450d00200420053602b4010b200441206a4200370300200441286a410036020020044200370318200441003a002c0b200428020821050b200504402004200536020c0b200441c0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b102320000b29002000410036020820004200370200200041001024200041146a41003602002000420037020c20000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102320000b0b002000410120001b102b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b880102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002102520026a0520020b41016a21020b200041186a28020022030440200041086a280200200041146a2802002003102621000b2000200028020020026a3602000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102520026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001102621000b2000200028020020036a3602000b1300200028020820014904402000200110240b0b2801017f2000420020011005200028020422026a102742002001200220002802006a1006200010280b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a102720042001200220002802006a1004200010280b2001017f2000200110132202360200200020023602042000200120026a3602080b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110292106200241186a200041086a3602002002410036021441002101200604402006101321010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1021200241086a10200c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000102a20000b10002002044020002001200210141a0b0b270020022002280200200120006b22016b2202360200200141014e044020022000200110141a0b0b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b6701017f20002802002000280204200141046a101f200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b6302017f017e20012103034020035045044020034208882103200241016a21020c010b0b200041003602082000420037020020002002101c2000280204417f6a21020340200150450440200220013c00002002417f6a2102200142088821010c010b0b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101321032000200236020420002004410172360200200020033602080b200320012002101e200220036a41003a00000b2f01017f200028020820014904402001102b200028020020002802041014210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b3601017f200028020820014904402001102b200028020020002802041014210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1027200120002802006a22012002200110020c010b0b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b9b0101047f230041106b220124002001200036020c2000047f41c409200041086a2202411076220041c4092802006a220336020041c00941c009280200220420026a41076a417871220236020002400240200341107420024d044041c409200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101441086a0541000b2100200141106a240020000bdf0302057f017e230041a0016b22002400104210072201102b22021008200041e8006a200020022001102d22014100102e02400240200041e8006a102f2205500d004190091030200551044020011031200041e8006a103210330c020b41950910302005510440200041e8006a101d2102200041f4006a101d21032000420037038801200042003703800120004188016a210420011034410547044010000b20004101360250200020013602182000200041d0006a36021c200041186a20021035200041186a20031035200041186a20004180016a1036200041186a20041036200041186a1032210420004190016a20021012200041406b20031012200029038001200029038801100f200041d0006a10112201420010371017200142001018200128020c200141106a28020047044010000b20012802002001280204100d200128020c22020440200120023602100b200410330c020b41a50910302005520d0020011031200041e8006a1032210320004190016a20004180016a10122102200041186a101122012002103810172001200041d0006a200210121019200128020c200141106a28020047044010000b20012802002001280204100d200128020c22020440200120023602100b200310330c010b10000b1039200041a0016a24000b0c00200020012002411c103a0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103f20012003280208200328020c104036020c20032001103f410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114103a1a200341106a24000f0b20032001103f41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104010452001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b220324002000103b024002402000280204450d002000103b0240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a2000103c200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001034410147044010000b0bf30301077f230041406a220324002000101d1a200042e299efdb8683ebcf58370310200041186a101d2106200341286a1011220220002903101018200228020c200241106a28020047044010000b02402002280200220520022802042207100922044504400c010b2003410036022020034200370318200341186a2004101c2005200720032802182205200328021c20056b100a417f47044020032003280218220141016a200328021c2001417f736a102d2006103d200421010b20032802182204450d002003200436021c0b200228020c22040440200220043602100b024020010d00200028020420002d00002202410176200241017122041b2102410a21012000280208200041016a20041b210420062d0000410171220504402006280200417e71417f6a21010b200220014d0440027f20050440200041206a2802000c010b200641016a0b210120020440200120042002103e0b200120026a41003a000020062d000041017104402000411c6a20023602000c020b200620024101743a00000c010b416f2105200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21050b20051013220120042002101e20062005410172360200200041206a20013602002000411c6a2002360200200120026a41003a00000b200341406b240020000bba0201097f230041406a22032400200341286a10112202200029031010371017200220002903101018200228020c200241106a28020047044010000b2002280204210420022802002105200341106a10112101200041186a22061038210741011013220041fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009102420012802040520080b20012802006a2000410110141a2001200128020441016a3602042001200041016a200720006b6a1017200120032006101210190240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b2005200420002001280204100b200128020c22000440200120003602100b200228020c22010440200220013602100b200341406b24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103f200128020c210003402000450d01200141002001280208220320032000104022046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4301017f230041206b22022400200241086a20002802002000280204280200102e200241086a2001103d20002802042200200028020041016a360200200241206a24000b4601017f230041206b22022400200241086a20002802002000280204280200102e2001200241086a102f37030020002802042200200028020041016a360200200241206a24000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001015200128020021022001410472101b200141206a240020020b5901017f230041306b22012400200141286a4100360200200141206a4200370300200141186a420037030020014200370310200141106a200120001012101620012802102100200141106a410472101b200141306a240020000b880101037f41b009410136020041b4092802002100034020000440034041b80941b8092802002201417f6a2202360200200141014845044041b0094100360200200020024102746a22004184016a280200200041046a28020011020041b009410136020041b40928020021000c010b0b41b809412036020041b409200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104320024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104320024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110412204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a101d1a0c010b200241186a2000103c2000104121030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101321032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a102a200241206a24000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210141a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b2101017f20011041220220012802044b044010000b2000200120011044200210450b2701017f230041206b22022400200241086a200020014114103a10432100200241206a240020000bff0201037f200028020445044041000f0b2000103b41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3501017f230041106b220041d0890436020c41bc09200028020c41076a417871220036020041c009200036020041c4093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001044200010416a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0bb70101004180080baf017365745f737472696e67006174780000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff696e69740063616c6c5f7365745f737472696e67006765745f737472696e67"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_CALL_SET_STRING = "call_set_string"; - - public static final String FUNC_GET_STRING = "get_string"; - - protected ContractCrossCallStorageString(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractCrossCallStorageString(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCrossCallStorageString.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCrossCallStorageString.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCrossCallStorageString.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCrossCallStorageString.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall call_set_string(String target_address, String name, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_CALL_SET_STRING, Arrays.asList(target_address,name,value,gas), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall call_set_string(String target_address, String name, Uint64 value, Uint64 gas, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CALL_SET_STRING, Arrays.asList(target_address,name,value,gas), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractCrossCallStorageString load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractCrossCallStorageString(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractCrossCallStorageString load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractCrossCallStorageString(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCrossCallStorageVector.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCrossCallStorageVector.java deleted file mode 100644 index 4d4b10d5f1..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractCrossCallStorageVector.java +++ /dev/null @@ -1,96 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractCrossCallStorageVector extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001651160027f7f0060017f0060017f017f60027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f017f60027f7e0060047f7f7f7f0060017f017e60047f7f7e7e0060037e7e7f006000017f60077f7f7f7f7f7f7f017f60017e017f60027e7e017f02bb020e03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65001003656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000903656e760b706c61746f6e5f63616c6c000e03656e760d706c61746f6e5f72657475726e0000035554060b030203030800000800000501000202040401000804000302050300030001030000030102000507010504020605040a0a010201020200000001060701000700010500030305040001020f01000200060202090405017001010105030100020608017f0141d089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000e0f5f5f66756e63735f6f6e5f65786974004906696e766f6b65003b0af378540400105e0bf617020d7f017e230041d0016b22042400200441c0016a4180081010220628020420042d00c0012205410176200541017122071b21052006280208200641016a20071b210642a5c688a1c89ca7f94b21110340200504402005417f6a21052006300000201142b383808080207e852111200641016a21060c010b0b200441d8006a10112105200441306a2001101221062005410210132105200441286a4100360200200441206a4200370300200441186a420037030020044200370310200441106a20111014200441106a20061015200520042802101016200520111017200520061018027f02400240200528020c200541106a280200460440200541046a2106200528020021010c010b200541046a2106100020052802002101200528020c2005280210470d010b20010c010b100020052802000b210720044100360208200442003703000240200720062802006a20016b2206450d0020042006101920064101480d002004200428020420012006101a20066a3602040b200441106a410472101b200528020c22060440200520063602100b200441f0006a418c081010210f2000280208200041016a220d20002d0000220541017122061b21082000280204200541017620061b210a41002105410121014100210702400340200141017141002005200a491b0440200520086a2d00002206415f6a41ff017141de004921012007200641bf7f6a41ff0171411a4972210720092006419f7f6a41ff0171411a49722109200541016a21050c0105024020012007200971410173712107200a450d00200a210503402005450d01200520086a21012005417f6a220621052001417f6a2d00004131470d000b0c030b0b0b417f21060b0240024002402007410171450d00200641076a200a4b0d00200641016a4102490d00200a41da004b0d00410021052004410036026020044200370358200441d8006a200a2006417f7322096a101c4101210702400240024003402005200028020420002d00002201410176200141017122011b20096a4f044002402007410171450d05200441c0016a101d220541016a210e410021010340200120064604402005280204220920042d00c00122064101762208200641017122071b2201200f28020420042d00702206410176200641017122061b470d05200f280208200f41016a20061b210620070d0220082101200e210703402001450440200821090c080b20072d000020062d0000470d06200641016a2106200741016a21072001417f6a21010c000b00052000280208200d20002d00004101711b20016a2c000022084120722008200841bf7f6a411a491b210c024002400240027f20042d00c001220a4101712210450440410a2109200a4101760c010b2005280200220a417e71417f6a210920052802040b220720094604402005280208200e200a4101711b210b416f210a200941e6ffffff074d0440410b20094101742208200941016a220a200a2008491b220841106a4170712008410b491b210a0b200a101e2208200b2009101f2005200a410172360200200520083602080c010b2010450d01200528020821080b2005200741016a3602040c010b2004200741017441026a3a00c001200e21080b200720086a220741003a00012007200c3a0000200141016a21010c010b000b000b05200428025820056a2000280208200d20011b20066a20056a41016a2d00004190086a2d000022013a00002007200141ff0147712107200541016a21050c010b0b2001450d012005280208210703402001450d0220072d000020062d0000470d01200641016a2106200741016a21072001417f6a21010c000b000b200441386a4200370300200441406b410036020020044200370330200441003a004420042802582205450d032004200536025c0c030b410021062004410036021820044200370310200441106a2009410174410172101c03402006200528020420042d00c0012201410176200141017122011b2207490440200428021020066a2005280208200e20011b20066a2d000022014105763a00002004280210200528020420042d00c001220741017620074101711b6a20066a41016a2001411f713a0000200641016a21060c010b0b200428021020076a41003a0000200428021421010240200428025c2206200428025822056b22074101480d0020072004280218220820016b4c0440034020052006460d02200120052d00003a00002004200428021441016a2201360214200541016a21050c000b000b200441406b200441186a360200410021092004410036023c2001200428021022006b210a200120076a20006b2207200820006b2208410174220020002007491b41ffffffff07200841ffffffff03491b220804402008101e21090b2004200936023020042009200a6a22073602382004200820096a36023c20042007360234200441306a4104722109034020052006470440200720052d00003a00002004200428023841016a2207360238200541016a21050c010b0b200428021020012009102002402004280214220620016b220541004c0440200428023821010c010b2004200428023820012005101a20056a2201360238200428021421060b2004280210210520042004280234360210200420053602342004200136021420042006360238200428021821062004200428023c3602182004200636023c20042005360230200441306a1021200428021421010b200442003702142004280210210620044100360210200120066b21014101210503402001044020062d000041002005411d764101716b41b3c5d1d0027141002005411c764101716b41dde788ea037141002005411b764101716b41fab384f5017141002005411a764101716b41ed9cc2b20271410020054119764101716b41b2afa9db0371200541057441e0ffffff037173737373737321052001417f6a2101200641016a21060c010b0b20054101470d004100210b200441003602a00120044200370398012004410036021820044200370310027f4100200428025c417a6a2201200428025822056b2206450d001a200441106a200610190340200120054704402004280214220620052d00003a00002004200641016a360214200541016a21050c010b0b2004280210210b20042802140b200b6b2110200441a0016a210d41002105410021084100210c02400340200c201046044002402008410820056b7441ff0171452005410548712105200b04402004200b3602140b20050d0020042802980121050c030b05200b200c6a2d0000200841057441e01f71722108200541056a21050340200541084e04402008200541786a2205762101200428029c01220720042802a0012209490440200720013a00002004200428029c0141016a36029c010c02052004200d360240410021062004410036023c200720042802980122006b220741016a220a200920006b220941017422002000200a491b41ffffffff07200941ffffffff03491b220904402009101e21060b20042006360230200620076a220720013a00002004200620096a36023c200420073602342004200741016a36023820044198016a200441306a1022200441306a10210c020b000b0b200c41016a210c0c010b0b200428029c0120042802980122056b4114470d00200441206a4100360200200441186a42003703002004420037031041002105034020054114470440200441106a20056a41003a0000200541016a21050c010b0b200428029c0120042802980122066b2101410021050340024020012005460d00200541134b0d00200441106a20056a200520066a2d00003a0000200541016a21050c010b0b200441406b200441206a280200360200200441386a200441186a29030037030020042004290310370330200441013a0044200604402004200636029c010b2004280258220504402004200536025c0b200441106a20021023200441d8006a20031023200441306a20042802002205200428020420056b20042802102206200428021420066b20042802582206200428025c20066b100c1a2004280258220604402004200636025c0b20042802102206450d04200420063602140c040b2005450d002004200536029c010b20042802582205450d002004200536025c0b200441386a4200370300200441406b410036020020044200370330200441003a00440b200428020021050b20050440200420053602040b200441d0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b102420000b29002000410036020820004200370200200041001025200041146a41003602002000420037020c20000b25002000200110261a2000410c6a2001410c6a10261a200041186a200141186a10261a20000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374101e0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001101a1a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a102c41004100200120002802006a10022000102d20000b880102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002102720026a0520020b41016a21020b200041186a28020022030440200041086a280200200041146a2802002003102821000b2000200028020020026a3602000b4001017f230041206b2202240020004100102922002001102a2000200241106a2001410c6a1026102b2002200141186a1026102b410110291a200241206a24000b1300200028020820014904402000200110250b0b2801017f2000420020011005200028020422026a102c42002001200220002802006a10062000102d0b820201057f230041a0016b220224002000410310132100200241d8006a4100360200200241d0006a4200370300200241c8006a420037030020024200370340200241406b2001102a200241406b200241306a2001410c6a22031026102b200241206a200141186a22041026102b2105200020022802401016200041011013210020024198016a410036020020024190016a420037030020024188016a4200370300200242003703800120024180016a200241f0006a20011026102b2106200020022802800110162000200241e0006a20011026102e2101200641046a101b2001200241106a20031026102e200220041026102e1a200541046a101b200241a0016a24000b2001017f20002001101e2202360200200020023602042000200120026a3602080bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000102f200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011030200441106a24000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110312106200241186a200041086a3602002002410036021441002101200604402006101e21010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1022200241086a10210c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000103220000b0b002000410120001b103a0b100020020440200020012002101a1a0b0b270020022002280200200120006b22016b2202360200200141014e0440200220002001101a1a0b0b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b6701017f20002802002000280204200141046a1020200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b6302017f017e20012103034020035045044020034208882103200241016a21020c010b0b200041003602082000420037020020002002101c2000280204417f6a21020340200150450440200220013c00002002417f6a2102200142088821010c010b0b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101e21032000200236020420002004410172360200200020033602080b200320012002101f200220036a41003a00000b2f01017f200028020820014904402001103a20002802002000280204101a210220002001360208200020023602000b0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102420000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031028280200210120022003417f6a360200200710334180104f044020072000410c6a280200417c6a10300b200141384f047f2001102720016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110280c020b20000c010b0240200710330d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10340c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020101e2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1035220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10362102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021037200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a103822013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10362102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021037200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10340c010b20042001410175410120011b2003200510362102418020101e2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103522013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103621032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031037200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021037052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a103822013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103621062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061037200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007102f200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b2701017f230041106b22022400200041001029200220011026102b410110291a200241106a24000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102720026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110280c010b20000b2201200128020020036a36020020000b3601017f200028020820014904402001103a20002802002000280204101a210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a102c200120002802006a22012002200110020c010b0b0b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a102c20042001200220002802006a10042000102d20000b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103522023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10362103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031037200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110390b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101e21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110390b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002101a1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f41cc09200041086a2202411076220041cc092802006a220336020041c80941c809280200220420026a41076a417871220236020002400240200341107420024d044041cc09200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101a41086a0541000b2100200141106a240020000b9a0302057f017e230041c0016b22002400105e10072201103a22021008200041406b200020022001103c22014100103d02400240200041406b103e2205500d00419009103f200551044020011040200041406b104110420c020b419509103f2005510440200041406b101d2102200041cc006a10432103200042003703782000420037037020011044410547044010000b200041013602a80120002001360280012000200041a8016a36028401200041186a20014101103d200041186a20021045200020002802a80141016a22043602a801200041186a20012004103d200041186a20031046200020002802a80141016a3602a80120004180016a200041f0006a104720004180016a200041f8006a1047200041186a10412101200041a8016a2002102620004180016a2003101220002903702000290378100f200042003703b801200041b8016a1048200110420c020b41a609103f2005520d0020011040200041406b104121012000200041dc006a28020020002802586b41246dad370318200041186a1048200110420c010b10000b1049200041c0016a24000b0c00200020012002411c104a0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001105b20012003280208200328020c105336020c20032001105b410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114104a1a200341106a24000f0b20032001105b41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004105310612001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b220324002000104b024002402000280204450d002000104b0240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a2000104c200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001044410147044010000b0bfd06010c7f230041c0016b22042400200042003702182000428aa4bedd86c3aeee583703102000410036020820004200370200200041206a4100360200200441306a1011220620002903101017200628020c200641106a28020047044010000b200041186a21072000411c6a2108024020062802002202200628020422031009220a450d002004410036022820044200370320200441206a200a101c2002200320042802202205200428022420056b100a417f47044002400240200441086a2004280220220141016a20042802242001417f736a103c2202280204450d0020022802002d000041c001490d002002104421012000280220200028021822036b41246d20014904402007200441c8006a2001200028021c20036b41246d200041206a104d2201104e2001104f0b20044198016a200241011050210120044188016a2002410010502105200041206a210b20012802042102034020052802042002464100200128020822032005280208461b0d02200441f0006a20022003411c104a200441c8006a1043220210460240200028021c220320002802204904402003200210512008200828020041246a3602000c010b200441a8016a2007200320072802006b41246d220341016a10522003200b104d210320042802b00120021051200420042802b00141246a3602b00120072003104e2003104f0b20012001280204220220012802086a410020021b22023602042001280200220304402001200336020820022003105321092001027f200128020422024504404100210341000c010b4100210341002001280208220c2009490d001a200c20092009417f461b210320020b2202ad2003ad42208684370204200141002001280200220920036b2203200320094b1b3602000c0105200141003602080c010b000b000b10000b200a21010b20042802202202450d00200420023602240b200628020c22020440200620023602100b024020010d0020002802042203200028020022026b41246d22052000280220200028021822016b41246d4d04402005200828020020016b41246d22064b044020022002200641246c6a2205200110541a20052003200810550c020b2007200220032001105410560c010b200104402007105720004100360220200042003702180b20002007200510522205105822013602182000200136021c20002001200541246c6a36022020022003200810550b200441c0016a240020000bfc0301097f230041d0006b22032400200341186a10112204200029031010591016200420002903101017200428020c200441106a28020047044010000b2004280204210720042802002108200310112101200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330027f20002802182000411c6a2802004604402003410136023041010c010b200341306a410010292105200028021c210620002802182102037f2002200646047f2005410110291a200328023005200520021015200241246a21020c010b0b0b2106200341306a410472101b4101101e220241fe013a0000200128020c200141106a28020047044010000b2001280204220541016a220920012802084b047f20012009102520012802040520050b20012802006a20024101101a1a2001200128020441016a3602042001200241016a200620026b6a10162001200028021c20002802186b41246d10132106200028021c210520002802182102034020022005470440200620021018200241246a21020c010b0b0240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b2008200720022001280204100b200128020c22020440200120023602100b200428020c22020440200420023602100b200041186a105a2000105a200341d0006a24000b19002000101d1a2000410c6a101d1a200041186a101d1a20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000105b200128020c210003402000450d01200141002001280208220320032000105322046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a101d1a0c010b200241186a2000104c2000105c21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101e21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1032200241206a24000b5e01017f230041306b22022400200220004100103d200241186a20024100103d200241186a20011045200241186a20004101103d200241186a2001410c6a1045200241186a20004102103d200241186a200141186a1045200241306a24000b4601017f230041206b22022400200241086a20002802002000280204280200103d2001200241086a103e37030020002802042200200028020041016a360200200241206a24000b5f01027f230041206b22022400200241086a10112201200029030010591016200120002903001017200128020c200141106a28020047044010000b20012802002001280204100d200128020c22000440200120003602100b200241206a24000b880101037f41b809410136020041bc092802002100034020000440034041c00941c0092802002201417f6a2202360200200141014845044041b8094100360200200020024102746a22004184016a280200200041046a28020011010041b809410136020041bc0928020021000c010b0b41c009412036020041bc09200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105f20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105f20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001105c2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b4c01017f2000410036020c200041106a2003360200200104402001105821040b2000200436020020002004200241246c6a220236020820002004200141246c6a36020c2000200236020420000b900101027f2000280204210220002802002103034020022003464504402001280204415c6a2002415c6a2202105120012001280204415c6a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001415c6a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001105b20004100200428020c2201200428020822022001105322032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b620020002001290200370200200041086a200141086a28020036020020011032200041146a200141146a2802003602002000200129020c37020c2001410c6a1032200041206a200141206a28020036020020002001290218370218200141186a10320b2f01017f2001200028020820002802006b41246d2200410174220220022001491b41c7e3f138200041e3f1b81c491b0b2701017f230041206b22022400200241086a200020014114104a105f2100200241206a240020000b3e000340200020014645044020022000105d2002410c6a2000410c6a105d200241186a200041186a105d200241246a2102200041246a21000c010b0b20020b2e00034020002001464504402002280200200010121a2002200228020041246a360200200041246a21000c010b0b0b0900200020013602040b0b002000200028020010560b0900200041246c101e0b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001014200128020021022001410472101b200141206a240020020b0e0020002802000440200010570b0b2101017f2001105c220220012802044b044010000b2000200120011060200210610bff0201037f200028020445044041000f0b2000104b41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210390b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b2003101e220120042002101f200020023602042000200341017236020020002001360208200120026a41003a00000b0b3501017f230041106b220041d0890436020c41c409200028020c41076a417871220036020041c809200036020041cc093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010602000105c6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0bbd0101004180080bb5016164645f6d6573736167650061747800ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff696e69740063616c6c5f6164645f6d657373616765006765745f766563746f725f73697a65"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_CALL_ADD_MESSAGE = "call_add_message"; - - public static final String FUNC_GET_VECTOR_SIZE = "get_vector_size"; - - protected ContractCrossCallStorageVector(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractCrossCallStorageVector(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCrossCallStorageVector.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCrossCallStorageVector.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCrossCallStorageVector.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractCrossCallStorageVector.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall call_add_message(String target_address, My_message one_message, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_CALL_ADD_MESSAGE, Arrays.asList(target_address,one_message,value,gas), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall call_add_message(String target_address, My_message one_message, Uint64 value, Uint64 gas, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CALL_ADD_MESSAGE, Arrays.asList(target_address,one_message,value,gas), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_vector_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTOR_SIZE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static ContractCrossCallStorageVector load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractCrossCallStorageVector(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractCrossCallStorageVector load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractCrossCallStorageVector(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Message { - public String head; - } - - public static class My_message { - public Message baseClass; - - public String body; - - public String end; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallOriginType.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallOriginType.java deleted file mode 100644 index 38e5305e11..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallOriginType.java +++ /dev/null @@ -1,96 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractDelegateCallOriginType extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000015e1060027f7f0060017f017f60017f0060027f7f017f60037f7f7f0060000060037f7f7f017f60047f7f7f7f017f60027f7e0060017f017e60047f7f7f7f0060047f7f7f7e0060037e7e7f006000017f60057f7f7f7f7f017f60027e7e017f02ad020d03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000703656e7614706c61746f6e5f64656c65676174655f63616c6c000e03656e760d706c61746f6e5f72657475726e0000034746050b030103030803000303000803020006000101040402000400010601000006070206000002030201040507040909020102010100000205020007000206000300010501010a0405017001010105030100020608017f0141e089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974004406696e766f6b6500370aff6d460400104f0b871b020c7f017e230041a0026b220424002004418008100f220628020420042d00002205410176200541017122071b21052006280208200641016a20071b210642a5c688a1c89ca7f94b21100340200504402005417f6a21052006300000201042b383808080207e852110200641016a21060c010b0b200441d8006a10102105200441306a200210111a2005410210122105200441286a4100360200200441206a4200370300200441186a420037030020044200370310200441106a20101013200441106a410010142202200441306a10152002200441c0016a2004413c6a22061016101720044190016a200441c8006a2202101610174101101421072005200428021010182005201010192005410310122105200441a8016a4100360200200441a0016a420037030020044198016a4200370300200442003703900120044190016a200441306a101520044190016a20044180016a200610161017200441f0006a2002101610172108200520042802900110182005410110122105200441d8016a4100360200200441d0016a4200370300200441c8016a4200370300200442003703c001200441c0016a200441e0016a200441306a101610172100200520042802c00110182005200441b0016a200441306a1016101a2105200041046a101b2005200441c0016a20061016101a200441e0016a20021016101a2105200841046a101b027f02400240200528020c200541106a280200460440200541046a2106200528020021020c010b200541046a2106100020052802002102200528020c2005280210470d010b20020c010b100020052802000b2108200441003602b801200442003703b0010240200820062802006a20026b2206450d00200441b0016a2006101c20064101480d00200420042802b40120022006101d20066a3602b4010b200741046a101b200528020c22060440200520063602100b200441e0016a418c08100f210e2001280208200141016a220c20012d0000220541017122061b21002001280204200541017620061b210941002105410121024100210741002108024003402002410171410020052009491b0440200020056a2d00002206415f6a41ff017141de004921022007200641bf7f6a41ff0171411a4972210720082006419f7f6a41ff0171411a49722108200541016a21050c01050240200220072008714101737121072009450d002009210503402005450d01200020056a21022005417f6a220621052002417f6a2d00004131470d000b0c030b0b0b417f21060b0240024002402007410171450d00200641076a20094b0d00200641016a4102490d00200941da004b0d00410021052004410036029801200442003703900120044190016a20092006417f7322086a101e4101210702400240024003402005200128020420012d00002202410176200241017122021b20086a4f044002402007410171450d05200441106a101f220541016a210d410021020340200220064604402005280204220820042d001022064101762200200641017122071b2202200e28020420042d00e0012206410176200641017122061b470d05200e280208200e41016a20061b210620070d0220002102200d210703402002450440200021080c080b20072d000020062d0000470d06200641016a2106200741016a21072002417f6a21020c000b00052001280208200c20012d00004101711b20026a2c00002200412072210b200041bf7f6a411a49210a027f20042d00102209410171220f45044020094101762107410a0c010b2005280204210720052802002209417e71417f6a0b2108200b2000200a1b210b024002400240200720084604402005280208200d20094101711b210a416f2109200841e6ffffff074d0440410b20084101742200200841016a220920092000491b220041106a4170712000410b491b21090b200910202200200a2008102120052009410172360200200520003602080c010b200f450d01200528020821000b2005200741016a3602040c010b2004200741017441026a3a0010200d21000b200020076a220741003a00012007200b3a0000200241016a21020c010b000b000b0520042802900120056a2001280208200c20021b20066a20056a41016a2d00004190086a2d000022023a00002007200241ff0147712107200541016a21050c010b0b2002450d012005280208210703402002450d0220072d000020062d0000470d01200641016a2106200741016a21072002417f6a21020c000b000b200441386a4200370300200441406b410036020020044200370330200441003a00442004280290012205450d0320042005360294010c030b41002106200441003602c801200442003703c001200441c0016a2008410174410172101e03402006200528020420042d00102202410176200241017122021b220749044020042802c00120066a2005280208200d20021b20066a2d000022024105763a000020042802c001200528020420042d0010220741017620074101711b6a20066a41016a2002411f713a0000200641016a21060c010b0b20042802c00120076a41003a000020042802c40121020240200428029401220620042802900122056b22074101480d00200720042802c801220020026b4c0440034020052006460d02200220052d00003a0000200420042802c40141016a22023602c401200541016a21050c000b000b200441406b200441c8016a360200410021082004410036023c200220042802c00122016b2109200220076a20016b2207200020016b2200410174220120012007491b41ffffffff07200041ffffffff03491b220004402000102021080b200420083602302004200820096a22073602382004200020086a36023c20042007360234200441306a4104722108034020052006470440200720052d00003a00002004200428023841016a2207360238200541016a21050c010b0b20042802c001200220081022024020042802c401220620026b220541004c0440200428023821020c010b2004200428023820022005101d20056a220236023820042802c40121060b20042802c0012105200420042802343602c00120042005360234200420023602c4012004200636023820042802c80121062004200428023c3602c8012004200636023c20042005360230200441306a102320042802c40121020b200442003702c40120042802c0012106200441003602c001200220066b21024101210503402002044020062d000041002005411d764101716b41b3c5d1d0027141002005411c764101716b41dde788ea037141002005411b764101716b41fab384f5017141002005411a764101716b41ed9cc2b20271410020054119764101716b41b2afa9db0371200541057441e0ffffff037173737373737321052002417f6a2102200641016a21060c010b0b20054101470d004100210a2004410036026020044200370358200441003602c801200442003703c001027f4100200428029401417a6a220220042802900122056b2206450d001a200441c0016a2006101c03402002200547044020042802c401220620052d00003a00002004200641016a3602c401200541016a21050c010b0b20042802c001210a20042802c4010b200a6b210f200441e0006a210c41002105410021004100210b02400340200b200f46044002402000410820056b7441ff0171452005410548712105200a04402004200a3602c4010b20050d00200428025821050c030b05200a200b6a2d0000200041057441e01f71722100200541056a21050340200541084e04402000200541786a2205762102200428025c220720042802602208490440200720023a00002004200428025c41016a36025c0c02052004200c360240410021062004410036023c2007200428025822016b220741016a2209200820016b2208410174220120012009491b41ffffffff07200841ffffffff03491b220804402008102021060b20042006360230200620076a220720023a00002004200620086a36023c200420073602342004200741016a360238200441d8006a200441306a1024200441306a10230c020b000b0b200b41016a210b0c010b0b200428025c200428025822056b4114470d00200441d0016a4100360200200441c8016a4200370300200442003703c00141002105034020054114470440200441c0016a20056a41003a0000200541016a21050c010b0b200428025c200428025822066b2102410021050340024020022005460d00200541134b0d00200441c0016a20056a200520066a2d00003a0000200541016a21050c010b0b200441406b200441d0016a280200360200200441386a200441c8016a290300370300200420042903c001370330200441013a0044200604402004200636025c0b2004280290012205044020042005360294010b4100210520032110034020105045044020104208882110200541016a21050c010b0b200441003602c801200442003703c001200441c0016a2005101e20042802c401417f6a21050340200350450440200520033c00002005417f6a2105200342088821030c010b0b200441306a20042802b001220520042802b40120056b20042802c001220620042802c40120066b100b1a20042802c0012206450d04200420063602c4010c040b2005450d002004200536025c0b2004280290012205450d0020042005360294010b200441386a4200370300200441406b410036020020044200370330200441003a00440b20042802b00121050b20050440200420053602b4010b200441a0026a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b102520000b29002000410036020820004200370200200041001026200041146a41003602002000420037020c20000b25002000200110161a2000410c6a2001410c6a10161a200041186a200141186a10161a20000bf30101057f20002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410200b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001101d1a0b20002002360214200020033602102000200536020c20000b880102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002102720026a0520020b41016a21020b200041186a28020022030440200041086a280200200041146a2802002003102821000b2000200028020020026a3602000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031028280200210120022003417f6a360200200710294180104f044020072000410c6a280200417c6a102a0b200141384f047f2001102720016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110280c020b20000c010b0240200710290d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a102b0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010202105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a102c220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a102d2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002102e200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a102f22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a102d2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002102e200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a102b0c010b20042001410175410120011b20032005102d210241802010202106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a102c22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200102d21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003102e200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002102e052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a102f22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210102d21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006102e200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071030200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b2701017f230041106b220224002000410010142002200110161017410110141a200241106a24000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102520000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102720026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110280c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110260b0b2801017f2000420020011005200028020422026a103142002001200220002802006a1006200010320b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a103120042001200220002802006a10042000103220000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001030200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001102a200441106a24000b2001017f2000200110202202360200200020023602042000200120026a3602080bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110332106200241186a200041086a3602002002410036021441002101200604402006102021010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1024200241086a10230c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000103420000b0b002000410120001b10350b100020020440200020012002101d1a0b0b270020022002280200200120006b22016b2202360200200141014e0440200220002001101d1a0b0b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b6701017f20002802002000280204200141046a1022200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204102021032000200236020420002004410172360200200020033602080b2003200120021021200220036a41003a00000b2f01017f200028020820014904402001103520002802002000280204101d210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a102c22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a102d2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003102e200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110360b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102021040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110360b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b3601017f200028020820014904402001103520002802002000280204101d210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1031200120002802006a22012002200110020c010b0b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b9b0101047f230041106b220124002001200036020c2000047f41d809200041086a2202411076220041d8092802006a220336020041d40941d409280200220420026a41076a417871220236020002400240200341107420024d044041d809200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101d41086a0541000b2100200141106a240020000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002101d1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0bd00202047f017e230041b0016b22002400104f10072201103522021008200041386a200020022001411c103822014100103902400240200041386a103a2204500d00419009103b20045104402001103c200041386a103d103e0c020b419509103b2004510440200041386a101f2102200041c4006a103f21032000420037036820011040410447044010000b200041f0006a200141011039200041f0006a20021041200041f0006a200141021039200041f0006a20031042200041f0006a2001410310392000200041f0006a103a370368200041186a103d220120004198016a20021016200041f0006a200310112000290368100e200042003703a801200041a8016a10432001103e0c020b41af09103b2004520d002001103c2000200041386a103d220128020420012802006b41246dad370370200041f0006a10432001103e0c010b10000b1044200041b0016a24000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105020024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105020024d0d0020034104710440100020000f0b200042003702000b20000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104d20012003280208200328020c104c36020c20032001104d410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410381a200341106a24000f0b20032001104d41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104c10522001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b2203240020001045024002402000280204450d00200010450240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a20001046200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001040410147044010000b0bb90501097f230041a0016b2203240020004100360208200042003702002000410c6a41bf09100f2101200041043602180240027f20012d00004101710440200041146a2802000c010b200141016a0b410410092204450d002003410036022020034200370318200341186a2004101e027f20012d00004101710440200041146a2802000c010b200141016a0b200028021820032802182004100a1a02400240200320032802182201200328021c20016b411c10382204280204450d0020042802002d000041c001490d002004104021012000280208200028020022026b41246d20014904402000200341286a2001200028020420026b41246d200041086a104722011048200110490b200341f8006a20044101104a2101200341e8006a20044100104a2108200041086a210920012802042104034020082802042004464100200128020822022008280208461b0d02200341d0006a20042002411c1038200341286a103f220410420240200028020422022000280208220549044020022004104b2000200028020441246a3602040c010b20034188016a2002200028020022066b41246d220241016a2207200520066b41246d2205410174220620062007491b41c7e3f138200541e3f1b81c491b20022009104721022003280290012004104b200320032802900141246a36029001200020021048200210490b20012001280204220420012802086a410020041b22043602042001280200220204402001200236020820042002104c21052001027f200128020422064504404100210241000c010b410021024100200128020822072005490d001a200720052005417f461b210220060b2204ad2002ad42208684370204200141002001280200220520026b2202200220054b1b3602000c0105200141003602080c010b000b000b10000b20032802182201450d002003200136021c0b200341a0016a240020000b1501017f200028020022010440200020013602040b0b19002000101f1a2000410c6a101f1a200041186a101f1a20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000104d200128020c210003402000450d01200141002001280208220320032000104c22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a101f1a0c010b200241186a200010462000104e21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102021032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1034200241206a24000b5e01017f230041306b220224002002200041001039200241186a200241001039200241186a20011041200241186a200041011039200241186a2001410c6a1041200241186a200041021039200241186a200141186a1041200241306a24000b9e0101037f230041406a22012400200141086a10102102200141386a4100360200200141306a4200370300200141286a420037030020014200370320200141206a2000290300101320012802202103200141206a410472101b200220031018200220002903001019200228020c200241106a28020047044010000b20022802002002280204100c200228020c22000440200220003602100b200141406b24000b880101037f41c409410136020041c8092802002100034020000440034041cc0941cc092802002201417f6a2202360200200141014845044041c4094100360200200020024102746a22004184016a280200200041046a28020011020041c409410136020041c80928020021000c010b0b41cc09412036020041c809200028020022003602000c010b0b0b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001104e2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b4f01017f2000410036020c200041106a200336020020010440200141246c102021040b2000200436020020002004200241246c6a220236020820002004200141246c6a36020c2000200236020420000b900101027f2000280204210220002802002103034020022003464504402001280204415c6a2002415c6a2202104b20012001280204415c6a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001415c6a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104d20004100200428020c2201200428020822022001104c22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b620020002001290200370200200041086a200141086a28020036020020011034200041146a200141146a2802003602002000200129020c37020c2001410c6a1034200041206a200141206a28020036020020002001290218370218200141186a10340b2701017f230041206b22022400200241086a200020014114103810502100200241206a240020000b2101017f2001104e220220012802044b044010000b2000200120011051200210520bff0201037f200028020445044041000f0b2000104541012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3501017f230041106b220041e0890436020c41d009200028020c41076a417871220036020041d409200036020041d8093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010512000104e6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0bcb0101004180080bc3016164645f6d6573736167650061747800ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff696e69740064656c65676174655f63616c6c5f6164645f6d657373616765006765745f766563746f725f73697a6500696e666f"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_DELEGATE_CALL_ADD_MESSAGE = "delegate_call_add_message"; - - public static final String FUNC_GET_VECTOR_SIZE = "get_vector_size"; - - protected ContractDelegateCallOriginType(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractDelegateCallOriginType(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallOriginType.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallOriginType.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallOriginType.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallOriginType.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall delegate_call_add_message(String target_address, My_message one_message, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_DELEGATE_CALL_ADD_MESSAGE, Arrays.asList(target_address,one_message,gas), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall delegate_call_add_message(String target_address, My_message one_message, Uint64 gas, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DELEGATE_CALL_ADD_MESSAGE, Arrays.asList(target_address,one_message,gas), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_vector_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTOR_SIZE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static ContractDelegateCallOriginType load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractDelegateCallOriginType(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractDelegateCallOriginType load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractDelegateCallOriginType(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Message { - public String head; - } - - public static class My_message { - public Message baseClass; - - public String body; - - public String end; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallPPOS.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallPPOS.java deleted file mode 100644 index f1ec51e4d2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallPPOS.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractDelegateCallPPOS extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001671160027f7f0060017f017f60017f0060037f7f7f0060027f7f017f6000006000017f60017f017e60047f7f7f7f0060047f7f7f7e0060037e7e7f0060037f7f7f017f60047f7f7f7f017f60057f7f7f7f7f017f60037f7f7e017f60027e7e017f60037f7f7e017e02b9020d03656e760c706c61746f6e5f70616e6963000503656e761d706c61746f6e5f6765745f63616c6c5f6f75747075745f6c656e677468000603656e7616706c61746f6e5f6765745f63616c6c5f6f7574707574000203656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000603656e7610706c61746f6e5f6765745f696e707574000203656e7614706c61746f6e5f64656c65676174655f63616c6c000d03656e760d706c61746f6e5f72657475726e0000033433051000000e090004010403030002010001030b04030205010c03070701020004010102000002050200000400000103050101080405017001010105030100020608017f0141f089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003306696e766f6b6500230ab359330400103c0b5b01017f230041306b22032400200341206a2001100f200341086a20001010027e20032d001c04404200200341086a200341206a200210110d011a0b42010b2102200328022022000440200320003602240b200341306a240020020bfc0301067f230041306b22022400027f41002001280204220520012d000022034101762206200341017122031b22074102490d001a41002001280208200141016a20031b22042d00004130470d001a20042d000141f800464101740b21042002410036021020024200370308200720046b41016a41017622070440200241286a200241106a3602002002200710152203360220200220033602182002200336021c2002200320076a360224200241086a200241186a1019200241186a101a20012d00002203410176210620012802042105200341017121030b0240024002402005200620031b41017104402001280208200141016a20031b20046a2c0000101b2203417f460d01200220033a0018200241086a200241186a101c200441017221040b200141016a2106024003402004200128020420012d00002203410176200341017122031b4f0d012001280208200620031b20046a22052c0000101b2103200541016a2c0000101b210502402003417f460d002005417f460d002002200520034104746a3a0018200441026a2104200241086a200241186a101c0c010b0b20004100360208200042003702000c020b200020022802083602002000200229020c37020420024100360210200242003703080c020b20004100360208200042003702000b20022802082204450d002002200436020c0b200241306a24000b9812010d7f23004190016b22022400200241086a4192081014210b2001280208200141016a220c20012d0000220341017122041b21072001280204200341017620041b21094100210341012105024003402005410171410020032009491b0440200320076a2d00002204415f6a41ff017141de004921052006200441bf7f6a41ff0171411a4972210620082004419f7f6a41ff0171411a49722108200341016a21030c01050240200520062008714101737121062009450d002009210303402003450d01200320076a21052003417f6a220421032005417f6a2d00004131470d000b0c030b0b0b417f21040b024002402006410171450d00200441076a20094b0d00200441016a4102490d00200941da004b0d00410021032002410036026020024200370358200241d8006a20092004417f7322086a10134101210602400240024003402003200128020420012d00002205410176200541017122051b20086a4f044002402006410171450d05200241c8006a101d220341016a210a410021050340200420054604402003280204220820022d004822044101762207200441017122061b2205200b28020420022d00082204410176200441017122041b470d05200b280208200b41016a20041b210420060d0220072105200a210603402005450440200721080c080b20062d000020042d0000470d06200441016a2104200641016a21062005417f6a21050c000b00052001280208200c20012d00004101711b20056a2c000022074120722007200741bf7f6a411a491b210d024002400240027f20022d004822094101712207450440410a210820094101760c010b20032802002209417e71417f6a210820032802040b220620084604402003280208200a20094101711b210e416f2109200841e6ffffff074d0440410b20084101742207200841016a220920092007491b220741106a4170712007410b491b21090b200910152207200e2008101820032009410172360200200320073602080c010b2007450d01200328020821070b2003200641016a3602040c010b2002200641017441026a3a0048200a21070b200620076a220641003a00012006200d3a0000200541016a21050c010b000b000b05200228025820036a2001280208200c20051b20046a20036a41016a2d000041a0086a2d000022053a00002006200541ff0147712106200341016a21030c010b0b2005450d012003280208210603402005450d0220062d000020042d0000470d01200441016a2104200641016a21062005417f6a21050c000b000b20004200370000200041003a0014200041086a4200370000200041106a410036000020022802582203450d032002200336025c0c030b410021042002410036027020024200370368200241e8006a2008410174410172101303402004200328020420022d00482205410176200541017122051b22064f450440200228026820046a2003280208200a20051b20046a2d000022054105763a00002002280268200328020420022d0048220641017620064101711b6a20046a41016a2005411f713a0000200441016a21040c010b0b200228026820066a41003a0000200228026c21050240200228025c2204200228025822036b22064101480d0020062002280270220720056b4c0440034020032004460d02200520032d00003a00002002200228026c41016a220536026c200341016a21030c000b000b20024188016a200241f0006a3602004100210820024100360284012005200228026822016b2109200520066a20016b2206200720016b2207410174220120012006491b41ffffffff07200741ffffffff03491b220704402007101521080b200220083602782002200820096a2206360280012002200720086a360284012002200636027c200241f8006a410472210803402003200446450440200620032d00003a0000200220022802800141016a220636028001200341016a21030c010b0b200228026820052008101e0240200228026c220420056b220341004c044020022802800121050c010b200220022802800120052003101f20036a220536028001200228026c21040b200228026821032002200228027c3602682002200336027c2002200536026c2002200436028001200228027021042002200228028401360270200220043602840120022003360278200241f8006a101a200228026c21050b2002420037026c2002280268210420024100360268200520046b21054101210303402005044020042d000041002003411d764101716b41b3c5d1d0027141002003411c764101716b41dde788ea037141002003411b764101716b41fab384f5017141002003411a764101716b41ed9cc2b20271410020034119764101716b41b2afa9db0371200341057441e0ffffff037173737373737321032005417f6a2105200441016a21040c010b0b20034101470d00410021032002410036027020024200370368410021064100210841002107200228025c417a6a2205200228025822046b22010440200110152208210603402004200546450440200620042d00003a0000200641016a2106200441016a21040c010b0b200621070b4100210441002105024003402005200720086b4f04400240200341044c044041ff01410820036b76200471450d010b200228026821030c030b05200520086a2d0000200441057441e01f71722104200341056a21030340200341084845044020022004200341786a2203763a0078200241e8006a200241f8006a101c0c010b0b200541016a2105200621070c010b0b200228026c200228026822036b4114470d0020024188016a410036020020024180016a4200370300200242003703784100210303402003411446450440200241f8006a20036a41003a0000200341016a21030c010b0b200228026c200228026822046b2105410021030340024020032005460d00200341134b0d00200241f8006a20036a200320046a2d00003a0000200341016a21030c010b0b20002002290378370000200041013a0014200041106a20024188016a280200360000200041086a20024180016a290300370000200404402002200436026c0b20022802582203450d032002200336025c0c030b2003450d002002200336026c0b20022802582203450d002002200336025c0b20004200370000200041003a0014200041086a4200370000200041106a41003600000b20024190016a24000bab0102027f017e230041106b2204240020022105034020055045044020054208882105200341016a21030c010b0b20044100360208200442003703002004200310132004280204417f6a21030340200250450440200320023c00002003417f6a2103200242088821020c010b0b200020012802002203200128020420036b20042802002203200428020420036b100b2103200428020022010440200420013602040b200441106a24002003450bd107010b7f230041d0006b22072400200741306a2002100f200741186a200110100240024002400240027f02400240024020072d002c450d00200741186a200741306a20031011450d002007410036021020074200370308200741086a1001101320072802081002200728020c210d20072802082101200741406b4180081014210420004200370200200041086a410036020002400240200428020420072d0040220841017620084101711b2202200d20016b4101746a2206410b4f0440200641106a4170712208101521052000200636020420002008410172360200200020053602080c010b200020064101743a0000200041016a21052006450d010b200520061016210520072d004021080b200520066a41003a0000200441016a21092004280208210a2004280204200841fe01714101762008410171220c1b2104027f20002d0000220b410171220e450440410a2105200b41017622082002200220084b1b0c010b2000280200220b417e71417f6a210520002802042208200220082002491b0b2106200a2009200c1b2109200620086b20056a20044f04402000280208200041016a200e1b21054100210b200420064604402004210a0c060b200820066b220c4504402006210a0c060b20042006490d02200520094f0d03200520086a20094d0d03200520066a20094d04402009200420066b6a21090c040b2005200920061017200420096a2109200420066b21042006210b41000c040b2000280208210c416f210a200541e6ffffff074d0440410b20054101742205200420086a20066b220a200a2005491b220541106a4170712005410b491b210a0b200a10152205200920041018200820066b22080440200420056a200c200041016a200b4101711b20066a200810180b200020053602082000200420086a22043602042000200a410172360200200420056a41003a00000c060b200041800810141a0c060b2005200920041017200420056a200520066a200c10172006210a0c030b20060b210a2005200b6a220620046a2006200a6a200c10170b2005200b6a2009200410170b2004200a6b20086a2104024020002d00004101710440200020043602040c010b200020044101743a00000b200420056a41003a00000b200041016a210403402001200d4704402000280208200420002d00004101711b20026a20012d00004104764181086a2d00003a00002000280208200420002d00004101711b20026a41016a20012d0000410f714181086a2d00003a0000200141016a2101200241026a21020c010b0b20072802082201450d002007200136020c0b200728023022010440200720013602340b200741d0006a24000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110202106200241186a200041086a3602002002410036021441002101200604402006101521010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1019200241086a101a0c010b200520014d0d002000200120046a3602040b200241206a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b102120000b0b002000410120001b10240bb90301027f02402001450d00200041303a0000200020016a2203417f6a41303a000020014103490d00200041303a0002200041303a00012003417d6a41303a00002003417e6a41303a000020014107490d00200041303a00032003417c6a41303a000020014109490d002000410020006b41037122026a220341b0e0c081033602002003200120026b417c7122026a2201417c6a41b0e0c0810336020020024109490d00200341b0e0c08103360208200341b0e0c08103360204200141786a41b0e0c08103360200200141746a41b0e0c0810336020020024119490d00200341b0e0c08103360218200341b0e0c08103360214200341b0e0c08103360210200341b0e0c0810336020c200141706a41b0e0c081033602002001416c6a41b0e0c08103360200200141686a41b0e0c08103360200200141646a41b0e0c081033602002002200341047141187222026b2101200220036a2102034020014120490d01200242b0e0c08183868c9830370300200241186a42b0e0c08183868c9830370300200241106a42b0e0c08183868c9830370300200241086a42b0e0c08183868c9830370300200241206a2102200141606a21010c000b000b20000b0f0020020440200020012002103b0b0b100020020440200020012002101f1a0b0b6701017f20002802002000280204200141046a101e200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b4801017f415021010240200041506a41ff0171410a490d0041a97f21012000419f7f6a41ff01714106490d00200041496a417f200041bf7f6a41ff01714106491b0f0b200020016a0bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10202105200241186a200041086a3602004100210320024100360214200504402005101521030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a1019200241086a101a0b200241206a24000b190020004200370200200041086a41003602002000102220000b270020022002280200200120006b22016b2202360200200141014e0440200220002001101f1a0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101521032000200236020420002004410172360200200020033602080b2003200120021018200220036a41003a00000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0bd50602067f037e230041d0016b22002400103c1009220110242202100a200041286a200041086a20022001411c102522014100102602400240200041286a10272206500d0041a00910282006510440200110294101460d020c010b41a50910282006510440200041286a102a2001200041286a102b200041f8006a200041286a102c2101200041e8006a200041346a102c210220002903402106200041a0016a2001102c20022006100e210720004188016a102d210241002101200041c8016a410036020042002106200041c0016a4200370300200041b8016a4200370300200042003703b0014101210320074280015a044020072108034020062008845045044020064238862008420888842108200141016a2101200642088821060c010b0b200141384f047f2001102e20016a0520010b41016a21030b200020033602b001200041b0016a410472102f2002200310302002420020071007200228020422016a103142002007200120022802006a100820021032200228020c200241106a28020047044010000b20022802002002280204100c200228020c2201450d02200220013602100c020b41bd0910282006520d00200041286a102a2001200041286a102b200041d8006a200041286a102c2101200041c8006a200041346a102c210220002903402106200041f8006a200041e8006a2001102c20022006101220004188016a102d2101200041c8016a4100360200200041c0016a4200370300200041b8016a4200370300200042003703b00141012102024002400240200041a0016a200041f8006a102c220428020420002d00a0012203410176200341017122051b220341014d0440200341016b0d032004280208200441016a20051b2c0000417f4c0d010c030b200341374b0d010b200341016a21020c010b2003102e20036a41016a21020b200020023602b001200041b0016a410472102f2001200210302001200041b0016a200041f8006a102c2202280208200241016a20002d00b001220341017122041b22052002280204200341017620041b22021005200128020422036a103120052002200320012802006a100620011032200128020c200141106a28020047044010000b20012802002001280204100c200128020c2202450d01200120023602100c010b10000b1033200041d0016a24000b9b0101047f230041106b220124002001200036020c2000047f41ec09200041086a2202411076220041ec092802006a220336020041e80941e809280200220420026a41076a417871220236020002400240200341107420024d044041ec09200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101f41086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000103d20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000103d20024d0d0020034104710440100020000f0b200042003702000b20000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103620012003280208200328020c103736020c200320011036410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410251a200341106a24000f0b20032001103641002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041037103f2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b2203240020001034024002402000280204450d00200010340240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a20001035200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001036200128020c210003402000450d01200141002001280208220320032000103722046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b16002000101d1a2000410c6a101d1a200042003703180b6701017f230041306b2202240020001029410447044010000b20024101360214200220003602082002200241146a36020c200241086a20011038200241086a2001410c6a1038200241186a2000200228021410262001200241186a1027370318200241306a24000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102120000b29002000410036020820004200370200200041001039200041146a41003602002000420037020c20000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b1300200028020820014904402000200110390b0b3601017f200028020820014904402001102420002802002000280204101f210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210036a1031200120002802006a22012002200110040c010b0b0b880101037f41d809410136020041dc092802002100034020000440034041e00941e0092802002201417f6a2202360200200141014845044041d8094100360200200020024102746a22004184016a280200200041046a28020011020041d809410136020041dc0928020021000c010b0b41e009412036020041dc09200028020022003602000c010b0b0b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001103a2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b2101017f2001103a220220012802044b044010000b200020012001103e2002103f0b2701017f230041206b22022400200241086a2000200141141025103d2100200241206a240020000b970301067f230041306b220224002002200028020020002802042802001026024002402002280204044020022802002d000041c001490d010b200241186a101d1a0c010b200241286a200210352002103a21030240024002400240200228022822040440200228022c220620034f0d010b41002104200241206a410036020020024200370318410021060c010b200241206a4100360200200242003703182004200620032003417f461b22056a21062005410a4b0d010b200220054101743a0018200241186a41017221030c010b200541106a4170712207101521032002200536021c20022007410172360218200220033602200b03402004200646450440200320042d00003a0000200341016a2103200441016a21040c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290318370200200141086a200241206a280200360200200241186a102220002802042204200428020041016a360200200241306a24000b2f01017f200028020820014904402001102420002802002000280204101f210220002001360208200020023602000b0bff0201037f200028020445044041000f0b2000103441012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002101f1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041f0890436020c41e409200028020c41076a417871220036020041e809200036020041ec093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000103e2000103a6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0bd70102004181080b1430313233343536373839616263646566006174780041a0080bb501ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff696e69740064656c65676174655f63616c6c5f70706f735f73656e640064656c65676174655f63616c6c5f70706f735f7175657279"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_DELEGATE_CALL_PPOS_SEND = "delegate_call_ppos_send"; - - public static final String FUNC_DELEGATE_CALL_PPOS_QUERY = "delegate_call_ppos_query"; - - protected ContractDelegateCallPPOS(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractDelegateCallPPOS(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallPPOS.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallPPOS.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallPPOS.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallPPOS.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall delegate_call_ppos_send(String target_addr, String in, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_DELEGATE_CALL_PPOS_SEND, Arrays.asList(target_addr,in,gas), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall delegate_call_ppos_send(String target_addr, String in, Uint64 gas, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DELEGATE_CALL_PPOS_SEND, Arrays.asList(target_addr,in,gas), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall delegate_call_ppos_query(String target_addr, String in, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_DELEGATE_CALL_PPOS_QUERY, Arrays.asList(target_addr,in,gas), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractDelegateCallPPOS load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractDelegateCallPPOS(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractDelegateCallPPOS load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractDelegateCallPPOS(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallStorageString.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallStorageString.java deleted file mode 100644 index 5e2b236fd2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallStorageString.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractDelegateCallStorageString extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001621160027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60000060037f7f7f017f60047f7f7f7f0060027f7e0060047f7f7f7f017f60017f017e60037f7f7e0060037e7e7f006000017f60057f7f7f7f7f017f60017e017f60027e7e017f02c4020e03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65001003656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000703656e7614706c61746f6e5f64656c65676174655f63616c6c000e03656e760d706c61746f6e5f72657475726e0000033635050b040104010608000008000002000103030200020600030f0100020002040900010101060305030a0a02010005020004050101070405017001010105030100020608017f0141e089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000e0f5f5f66756e63735f6f6e5f65786974003b06696e766f6b6500340ace55350400103f0b9e1a020d7f017e230041c0016b22032400200341f8006a4180081010220528020420032d00782204410176200441017122061b21042005280208200541016a20061b210542a5c688a1c89ca7f94b21100340200404402004417f6a21042005300000201042b383808080207e852110200541016a21050c010b0b200341386a10112104200341a0016a200110122105200428020421010240200441106a2802002206200441146a280200220749044020062001ad4220864202843702002004200428021041086a3602100c010b027f41002006200428020c22086b410375220941016a2206200720086b2207410275220820082006491b41ffffffff01200741037541ffffffff00491b2208450d001a200841037410130b2106200620094103746a22072001ad42208642028437020020072004280210200428020c220c6b22016b2109200620084103746a2106200741086a2107200141014e04402009200c200110141a0b20042006360214200420073602102004200936020c0b200341306a4100360200200341286a4200370300200341206a420037030020034200370318200341186a20101015200341186a200341b0016a2005101210162004200328021810172004201010182004200341b0016a200510121019027f02400240200428020c2004280210460440200428020021010c010b100020042802002101200428020c2004280210470d010b20010c010b100020042802000b210520034100360210200342003703080240200520042802046a20016b2205450d00200341086a2005101a20054101480d002003200328020c20012005101420056a36020c0b200341186a410472101b200428020c22050440200420053602100b200341d0006a418b081010210e2000280208200041016a220c20002d0000220441017122051b21082000280204200441017620051b210941002104410121014100210641002107024003402001410171410020042009491b0440200420086a2d00002205415f6a41ff017141de004921012006200541bf7f6a41ff0171411a4972210620072005419f7f6a41ff0171411a49722107200441016a21040c01050240200120062007714101737121062009450d002009210403402004450d01200420086a21012004417f6a220521042001417f6a2d00004131470d000b0c030b0b0b417f21050b0240024002402006410171450d00200541076a20094b0d00200541016a4102490d00200941da004b0d0041002104200341003602b801200342003703b001200341b0016a20092005417f7322076a101c4101210602400240024003402004200028020420002d00002201410176200141017122011b20076a4f044002402006410171450d05200341a0016a101d220441016a210d410021010340200120054604402004280204220720032d00a00122054101762208200541017122061b2201200e28020420032d00502205410176200541017122051b470d05200e280208200e41016a20051b210520060d0220082101200d210603402001450440200821070c080b20062d000020052d0000470d06200541016a2105200641016a21062001417f6a21010c000b00052000280208200c20002d00004101711b20016a2c00002208412072210b200841bf7f6a411a49210a027f20032d00a0012209410171220f45044020094101762106410a0c010b2004280204210620042802002209417e71417f6a0b2107200b2008200a1b210b024002400240200620074604402004280208200d20094101711b210a416f2109200741e6ffffff074d0440410b20074101742208200741016a220920092008491b220841106a4170712008410b491b21090b200910132208200a2007101e20042009410172360200200420083602080c010b200f450d01200428020821080b2004200641016a3602040c010b2003200641017441026a3a00a001200d21080b200620086a220641003a00012006200b3a0000200141016a21010c010b000b000b0520032802b00120046a2000280208200c20011b20056a20046a41016a2d00004190086a2d000022013a00002006200141ff0147712106200441016a21040c010b0b2001450d012004280208210603402001450d0220062d000020052d0000470d01200541016a2105200641016a21062001417f6a21010c000b000b200341206a4200370300200341286a410036020020034200370318200341003a002c20032802b0012204450d03200320043602b4010c030b410021052003410036024020034200370338200341386a2007410174410172101c03402005200428020420032d00a0012201410176200141017122011b2206490440200328023820056a2004280208200d20011b20056a2d000022014105763a00002003280238200428020420032d00a001220641017620064101711b6a20056a41016a2001411f713a0000200541016a21050c010b0b200328023820066a41003a0000200328023c2101024020032802b401220520032802b00122046b22064101480d0020062003280240220820016b4c0440034020042005460d02200120042d00003a00002003200328023c41016a220136023c200441016a21040c000b000b200341286a200341406b36020041002107200341003602242001200328023822006b2109200120066a20006b2206200820006b2208410174220020002006491b41ffffffff07200841ffffffff03491b220804402008101321070b200320073602182003200720096a22063602202003200720086a3602242003200636021c200341186a4104722107034020042005470440200620042d00003a00002003200328022041016a2206360220200441016a21040c010b0b200328023820012007101f0240200328023c220520016b220441004c0440200328022021010c010b2003200328022020012004101420046a2201360220200328023c21050b200328023821042003200328021c3602382003200436021c2003200136023c2003200536022020032802402105200320032802243602402003200536022420032004360218200341186a1020200328023c21010b2003420037023c2003280238210520034100360238200120056b21014101210403402001044020052d000041002004411d764101716b41b3c5d1d0027141002004411c764101716b41dde788ea037141002004411b764101716b41fab384f5017141002004411a764101716b41ed9cc2b20271410020044119764101716b41b2afa9db0371200441057441e0ffffff037173737373737321042001417f6a2101200541016a21050c010b0b20044101470d004100210a2003410036028001200342003703782003410036024020034200370338027f410020032802b401417a6a220120032802b00122046b2205450d001a200341386a2005101a034020012004470440200328023c220520042d00003a00002003200541016a36023c200441016a21040c010b0b2003280238210a200328023c0b200a6b210f20034180016a210c41002104410021084100210b02400340200b200f46044002402008410820046b7441ff0171452004410548712104200a04402003200a36023c0b20040d00200328027821040c030b05200a200b6a2d0000200841057441e01f71722108200441056a21040340200441084e04402008200441786a2204762101200328027c22062003280280012207490440200620013a00002003200328027c41016a36027c0c02052003200c36022841002105200341003602242006200328027822006b220641016a2209200720006b2207410174220020002009491b41ffffffff07200741ffffffff03491b220704402007101321050b20032005360218200520066a220620013a00002003200520076a3602242003200636021c2003200641016a360220200341f8006a200341186a1021200341186a10200c020b000b0b200b41016a210b0c010b0b200328027c200328027822046b4114470d00200341c8006a4100360200200341406b42003703002003420037033841002104034020044114470440200341386a20046a41003a0000200441016a21040c010b0b200328027c200328027822056b2101410021040340024020012004460d00200441134b0d00200341386a20046a200420056a2d00003a0000200441016a21040c010b0b200341286a200341c8006a280200360200200341206a200341406b29030037030020032003290338370318200341013a002c200504402003200536027c0b20032802b00122040440200320043602b4010b4100210420022110034020105045044020104208882110200441016a21040c010b0b2003410036024020034200370338200341386a2004101c200328023c417f6a21040340200250450440200420023c00002004417f6a2104200242088821020c010b0b200341186a20032802082204200328020c20046b20032802382205200328023c20056b100c1a20032802382205450d042003200536023c0c040b2004450d002003200436027c0b20032802b0012204450d00200320043602b4010b200341206a4200370300200341286a410036020020034200370318200341003a002c0b200328020821040b200404402003200436020c0b200341c0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b103320000b29002000410036020820004200370200200041001028200041146a41003602002000420037020c20000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204103320000b0b002000410120001b10300bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b880102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002103120026a0520020b41016a21020b200041186a28020022030440200041086a280200200041146a2802002003103221000b2000200028020020026a3602000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103120026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001103221000b2000200028020020036a3602000b1300200028020820014904402000200110280b0b2801017f2000420020011005200028020422026a102a42002001200220002802006a10062000102b0b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a102a20042001200220002802006a10042000102b0b2001017f2000200110132202360200200020023602042000200120026a3602080b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b20002001102c2106200241186a200041086a3602002002410036021441002101200604402006101321010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1021200241086a10200c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000102920000b10002002044020002001200210141a0b0b270020022002280200200120006b22016b2202360200200141014e044020022000200110141a0b0b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b6701017f20002802002000280204200141046a101f200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b9a0601097f230041f0006b22022400200241086a101d1a200242e299efdb8683ebcf58370318200241206a101d2104200241d8006a1011220120022903181018200128020c200141106a28020047044010000b02402001280200220620012802042207100922054504400c010b2002410036023820024200370330200241306a2005101c2006200720022802302208200228023420086b100a417f470440200241406b2002280230220341016a20022802342003417f736a102320041024200521030b20022802302205450d00200220053602340b200128020c22050440200120053602100b024020030d002002280210200241086a41017220022d0008220141017122031b2105200228020c200141017620031b22012004280200417e71417f6a410a20042d000041017122061b22034d0440200241286a280200200441016a20061b21032001044020032005200110250b200120036a41003a000020042d00004101710440200241246a20013602000c020b200420014101743a00000c010b416f2106200341e6ffffff074d0440410b20034101742203200120012003491b220341106a4170712003410b491b21060b20061013220320052001101e20042006410172360200200241286a2003360200200241246a2001360200200120036a41003a00000b2000200410121a200241d8006a10112203200229031810261017200320022903181018200328020c200341106a28020047044010000b2003280204210620032802002107200241406b1011210120041027210841011013220541fe013a0000200128020c200141106a28020047044010000b2001280204220041016a220920012802084b047f20012009102820012802040520000b20012802006a2005410110141a2001200128020441016a3602042001200541016a200820056b6a10172001200241306a2004101210190240200128020c2001280210460440200128020021040c010b100020012802002104200128020c2001280210460d0010000b2007200620042001280204100b200128020c22040440200120043602100b200328020c22010440200320013602100b200241f0006a24000b0c00200020012002411c102d0bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a101d1a0c010b200241186a2000102e2000102f21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101321032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1029200241206a24000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210141a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001015200128020021022001410472101b200141206a240020020b5901017f230041306b22012400200141286a4100360200200141206a4200370300200141186a420037030020014200370310200141106a200120001012101620012802102100200141106a410472101b200141306a240020000b2f01017f2000280208200149044020011030200028020020002802041014210220002001360208200020023602000b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b3601017f2000280208200149044020011030200028020020002802041014210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a102a200120002802006a22012002200110020c010b0b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104020024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104020024d0d0020034104710440100020000f0b200042003702000b20000bd50101047f2001102f2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bff0201037f200028020445044041000f0b2000103c41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b9b0101047f230041106b220124002001200036020c2000047f41d009200041086a2202411076220041d0092802006a220336020041cc0941cc09280200220420026a41076a417871220236020002400240200341107420024d044041d009200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101441086a0541000b2100200141106a240020000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101321032000200236020420002004410172360200200020033602080b200320012002101e200220036a41003a00000baa0302047f017e23004180016b22002400103f10072201103022021008200041286a200041086a20022001102322014100103502400240200041286a10362204500d0041900910372004510440200110380c020b41950910372004510440200041286a101d2102200041346a101d21032000420037034020011039410447044010000b20004101360248200020013602702000200041c8006a360274200041f0006a2002103a200041f0006a2003103a200041d8006a2001200028024810352000200041d8006a1036370340200041f0006a20021012200041c8006a200310122000290340100f200041d8006a10112201420010261017200142001018200128020c200141106a28020047044010000b20012802002001280204100d200128020c2202450d02200120023602100c020b41ae0910372004520d0020011038200041f0006a1022200041286a10112201200041f0006a102710172001200041d8006a200041f0006a10121019200128020c200141106a28020047044010000b20012802002001280204100d200128020c2202450d01200120023602100c010b10000b103b20004180016a24000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103d20012003280208200328020c103e36020c20032001103d410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102d1a200341106a24000f0b20032001103d41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103e10422001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b220324002000103c024002402000280204450d002000103c0240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a2000102e200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001039410147044010000b0b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103d200128020c210003402000450d01200141002001280208220320032000103e22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4301017f230041206b22022400200241086a200028020020002802042802001035200241086a2001102420002802042200200028020041016a360200200241206a24000b880101037f41bc09410136020041c0092802002100034020000440034041c40941c4092802002201417f6a2202360200200141014845044041bc094100360200200020024102746a22004184016a280200200041046a28020011020041bc09410136020041c00928020021000c010b0b41c409412036020041c009200028020022003602000c010b0b0b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b2101017f2001102f220220012802044b044010000b2000200120011041200210420b2701017f230041206b22022400200241086a200020014114102d10402100200241206a240020000b3501017f230041106b220041e0890436020c41c809200028020c41076a417871220036020041cc09200036020041d0093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010412000102f6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0bc00101004180080bb8017365745f737472696e67006174780000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff696e69740064656c65676174655f63616c6c5f7365745f737472696e67006765745f737472696e67"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_DELEGATE_CALL_SET_STRING = "delegate_call_set_string"; - - public static final String FUNC_GET_STRING = "get_string"; - - protected ContractDelegateCallStorageString(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractDelegateCallStorageString(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallStorageString.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallStorageString.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallStorageString.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallStorageString.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall delegate_call_set_string(String target_address, String name, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_DELEGATE_CALL_SET_STRING, Arrays.asList(target_address,name,gas), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall delegate_call_set_string(String target_address, String name, Uint64 gas, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DELEGATE_CALL_SET_STRING, Arrays.asList(target_address,name,gas), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractDelegateCallStorageString load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractDelegateCallStorageString(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractDelegateCallStorageString load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractDelegateCallStorageString(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallStorageVector.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallStorageVector.java deleted file mode 100644 index 8f00fe8f28..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallStorageVector.java +++ /dev/null @@ -1,96 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractDelegateCallStorageVector extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001661260027f7f0060017f0060017f017f60027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f017f60047f7f7f7f0060027f7e0060017f017e60037f7f7e0060037e7e7f006000017f60057f7f7f7f7f017f60017e017f60027e7e017f6000017e02c4020e03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65001003656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e7614706c61746f6e5f64656c65676174655f63616c6c000e03656e760d706c61746f6e5f72657475726e0000035251060b030002020404050100000203030900000900011105020700010507020000030305040001020f030001000103000400010005020002000507010500000303020304000204060a0a01010601060202080405017001010105030100020608017f0141f089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000e0f5f5f66756e63735f6f6e5f65786974005906696e766f6b6500540ab277510400105b0bc818020e7f017e230041d0016b22032400200341206a4180081010210f2000280208200041016a220d20002d0000220441017122051b21082000280204200441017620051b210a410021044101210602400340200641017141002004200a491b0440200420086a2d00002205415f6a41ff017141de004921062007200541bf7f6a41ff0171411a4972210720092005419f7f6a41ff0171411a49722109200441016a21040c0105024020062007200971410173712107200a450d00200a210403402004450d01200420086a21062004417f6a220521042006417f6a2d00004131470d000b0c030b0b0b417f21050b024002402007410171450d00200541076a200a4b0d00200541016a4102490d00200a41da004b0d0041002104200341003602c001200342003703b801200341b8016a200a2005417f7322096a10114101210602400240024003402004200028020420002d00002207410176200741017122071b20096a4f044002402006410171450d05200341e0006a1012220441016a210e410021060340200520064604402004280204220920032d006022054101762208200541017122071b2206200f28020420032d00202205410176200541017122051b470d05200f280208200f41016a20051b210520070d0220082106200e210703402006450440200821090c080b20072d000020052d0000470d06200541016a2105200741016a21072006417f6a21060c000b00052000280208200d20002d00004101711b20066a2c000022084120722008200841bf7f6a411a491b210c024002400240027f20032d0060220a4101712210450440410a2109200a4101760c010b2004280200220a417e71417f6a210920042802040b220720094604402004280208200e200a4101711b210b416f210a200941e6ffffff074d0440410b20094101742208200941016a220a200a2008491b220841106a4170712008410b491b210a0b200a10132208200b200910142004200a410172360200200420083602080c010b2010450d01200428020821080b2004200741016a3602040c010b2003200741017441026a3a0060200e21080b200720086a220741003a00012007200c3a0000200641016a21060c010b000b000b0520032802b80120046a2000280208200d20071b20056a20046a41016a2d00004190086a2d000022073a00002006200741ff0147712106200441016a21040c010b0b2006450d012004280208210703402006450d0220072d000020052d0000470d01200541016a2105200741016a21072006417f6a21060c000b000b200341106a4200370300200341186a410036020020034200370308200341003a001c20032802b8012204450d03200320043602bc010c030b410021052003410036027820034200370370200341f0006a2009410174410172101103402005200428020420032d00602206410176200641017122061b2207490440200328027020056a2004280208200e20061b20056a2d000022064105763a00002003280270200428020420032d0060220741017620074101711b6a20056a41016a2006411f713a0000200541016a21050c010b0b200328027020076a41003a000020032802742105024020032802bc01220620032802b80122046b22074101480d0020072003280278220820056b4c0440034020042006460d02200520042d00003a00002003200328027441016a2205360274200441016a21040c000b000b200341a0016a200341f8006a360200410021092003410036029c012005200328027022006b210a200520076a20006b2207200820006b2208410174220020002007491b41ffffffff07200841ffffffff03491b220804402008101321090b200320093602900120032009200a6a2207360298012003200820096a36029c01200320073602940120034190016a4104722109034020042006470440200720042d00003a0000200320032802980141016a220736029801200441016a21040c010b0b200328027020052009101502402003280274220620056b220441004c044020032802980121050c010b200320032802980120052004101620046a220536029801200328027421060b2003280270210420032003280294013602702003200436029401200320053602742003200636029801200328027821052003200328029c013602782003200536029c01200320043602900120034190016a1017200328027421050b200342003702742003280270210620034100360270200520066b21054101210403402005044020062d000041002004411d764101716b41b3c5d1d0027141002004411c764101716b41dde788ea037141002004411b764101716b41fab384f5017141002004411a764101716b41ed9cc2b20271410020044119764101716b41b2afa9db0371200441057441e0ffffff037173737373737321042005417f6a2105200641016a21060c010b0b20044101470d004100210b20034100360278200342003703702003410036021020034200370308027f410020032802bc01417a6a220620032802b80122046b2205450d001a200341086a20051018034020042006470440200328020c220520042d00003a00002003200541016a36020c200441016a21040c010b0b2003280208210b200328020c0b200b6b2110200341f8006a210d41002104410021084100210c02400340200c201046044002402008410820046b7441ff0171452004410548712104200b04402003200b36020c0b20040d00200328027021040c030b05200b200c6a2d0000200841057441e01f71722108200441056a21040340200441084e04402008200441786a22047621062003280274220720032802782209490440200720063a00002003200328027441016a3602740c02052003200d3602a001410021052003410036029c012007200328027022006b220741016a220a200920006b220941017422002000200a491b41ffffffff07200941ffffffff03491b220904402009101321050b2003200536029001200520076a220720063a00002003200520096a36029c0120032007360294012003200741016a36029801200341f0006a20034190016a101920034190016a10170c020b000b0b200c41016a210c0c010b0b2003280274200328027022046b4114470d00200341a0016a410036020020034198016a420037030020034200370390014100210403402004411447044020034190016a20046a41003a0000200441016a21040c010b0b2003280274200328027022056b2106410021040340024020042006460d00200441134b0d0020034190016a20046a200420056a2d00003a0000200441016a21040c010b0b200341186a200341a0016a280200360200200341106a20034198016a2903003703002003200329039001370308200341013a001c20050440200320053602740b20032802b80122040440200320043602bc010b200341206a4190091010220528020420032d00202204410176200441017122061b21042005280208200541016a20061b210542a5c688a1c89ca7f94b21110340200404402004417f6a21042005300000201142b383808080207e852111200541016a21050c010b0b200341b8016a101a210420034190016a2001101b210520044102101c210420034188016a410036020020034180016a4200370300200341f8006a420037030020034200370370200341f0006a2011101d200341f0006a2005101e20042003280270101f200420111020200420051021027f02400240200428020c200441106a280200460440200441046a2105200428020021060c010b200441046a2105100020042802002106200428020c2004280210470d010b20060c010b100020042802000b210720034100360268200342003703600240200720052802006a20066b2205450d00200341e0006a2005101820054101480d002003200328026420062005101620056a3602640b200341f0006a4104721022200428020c22050440200420053602100b4100210420022111034020115045044020114208882111200441016a21040c010b0b2003410036029801200342003703900120034190016a20041011200328029401417f6a21040340200250450440200420023c00002004417f6a2104200242088821020c010b0b200341086a20032802602204200328026420046b200328029001220520032802940120056b100c1a2003280290012205044020032005360294010b2004450d03200320043602640c030b2004450d00200320043602740b20032802b8012204450d00200320043602bc010b200341106a4200370300200341186a410036020020034200370308200341003a001c0b200341d0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b105320000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b20002001103b2106200241186a200041086a3602002002410036021441002101200604402006101321010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1019200241086a10170c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000103f20000b0b002000410120001b104e0b10002002044020002001200210161a0b0b270020022002280200200120006b22016b2202360200200141014e044020022000200110161a0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b2001017f2000200110132202360200200020023602042000200120026a3602080b6701017f20002802002000280204200141046a1015200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b29002000410036020820004200370200200041001037200041146a41003602002000420037020c20000b250020002001104c1a2000410c6a2001410c6a104c1a200041186a200141186a104c1a20000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410130b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110161a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a103941004100200120002802006a10022000103a20000b880102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002104420026a0520020b41016a21020b200041186a28020022030440200041086a280200200041146a2802002003104121000b2000200028020020026a3602000b4001017f230041206b2202240020004100103622002001104b2000200241106a2001410c6a104c104d2002200141186a104c104d410110361a200241206a24000b1300200028020820014904402000200110370b0b2801017f2000420020011005200028020422026a103942002001200220002802006a10062000103a0b820201057f230041a0016b2202240020004103101c2100200241d8006a4100360200200241d0006a4200370300200241c8006a420037030020024200370340200241406b2001104b200241406b200241306a2001410c6a2203104c104d200241206a200141186a2204104c104d210520002002280240101f20004101101c210020024198016a410036020020024190016a420037030020024188016a4200370300200242003703800120024180016a200241f0006a2001104c104d21062000200228028001101f2000200241e0006a2001104c104f2101200641046a10222001200241106a2003104c104f20022004104c104f1a200541046a1022200241a0016a24000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000104a200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011043200441106a24000b8c0b010c7f230041e0016b22002400200041206a4100360200200042003703182000428aa4bedd86c3aeee583703102000410036020820004200370300200041b0016a101a2205428aa4bedd86c3aeee581020200528020c200541106a28020047044010000b200041186a21070240200528020022022005280204220310092208450d002000410036024820004200370340200041406b200810112002200320002802402204200028024420046b100a417f47044002400240200041286a2000280240220141016a20002802442001417f736a10242202280204450d0020022802002d000041c001490d002002102521012000280220200028021822036b41246d20014904402007200041d0006a2001200028021c20036b41246d200041206a102622011027200110280b20004188016a2002410110292101200041f8006a200241001029210420012802042102200041206a210b034020042802042002464100200128020822032004280208461b0d02200041c8016a20022003411c102a200041d0006a102b2202102c0240200028021c2203200028022049044020032002102d2000200028021c41246a36021c0c010b20004198016a2007200320002802186b41246d220341016a102e2003200b1026210320002802a0012002102d200020002802a00141246a3602a001200720031027200310280b20012001280204220220012802086a410020021b22023602042001280200220304402001200336020820022003102f21062001027f200128020422094504404100210341000c010b4100210341002001280208220a2006490d001a200a20062006417f461b210320090b2202ad2003ad42208684370204200141002001280200220620036b2203200320064b1b3602000c0105200141003602080c010b000b000b10000b200821010b20002802402202450d00200020023602440b200528020c22020440200520023602100b024020010d002000411c6a210520002802042203200028020022026b41246d22042000280220200028021822016b41246d4d04402004200028021c20016b41246d22064b044020022002200641246c6a2204200110301a20042003200510310c020b2007200220032001103010320c010b200104402007103320004100360220200042003703180b200020072004102e2204103422013602182000200136021c20002001200441246c6a36022020022003200510310b20002802182101200028021c2102200041c8016a101a220520002903101035101f200520002903101020200220016b41246d2106200528020c200541106a28020047044010000b2005280204210720052802002109200041b0016a101a2104200041e8006a4100360200200041e0006a4200370300200041d8006a420037030020004200370350027f2000280218200028021c4604402000410136025041010c010b200041d0006a410010362103200028021c210220002802182101037f2001200246047f2003410110361a20002802500520032001101e200141246a21010c010b0b0b210a200041d0006a410472102241011013220141fe013a0000200428020c200441106a28020047044010000b200141016a21032004280204220241016a220820042802084b047f20042008103720042802040520020b20042802006a2001410110161a2004200428020441016a3602042004200a20016b20036a101f2004200028021c20002802186b41246d101c2103200028021c210220002802182101034020012002470440200320011021200141246a21010c010b0b0240200428020c2004280210460440200428020021010c010b100020042802002101200428020c2004280210460d0010000b2009200720012004280204100b200428020c22010440200420013602100b200528020c22010440200520013602100b200041186a103820001038200041e0016a24002006ad0b0c00200020012002411c102a0b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103c200128020c210003402000450d01200141002001280208220320032000102f22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4c01017f2000410036020c200041106a2003360200200104402001103421040b2000200436020020002004200241246c6a220236020820002004200141246c6a36020c2000200236020420000b900101027f2000280204210220002802002103034020022003464504402001280204415c6a2002415c6a2202102d20012001280204415c6a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001415c6a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001103c20004100200428020c2201200428020822022001102f22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105c20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105c20024d0d0020034104710440100020000f0b200042003702000b20000b1900200010121a2000410c6a10121a200041186a10121a20000b5e01017f230041306b22022400200220004100103d200241186a20024100103d200241186a2001103e200241186a20004101103d200241186a2001410c6a103e200241186a20004102103d200241186a200141186a103e200241306a24000b620020002001290200370200200041086a200141086a2802003602002001103f200041146a200141146a2802003602002000200129020c37020c2001410c6a103f200041206a200141206a28020036020020002001290218370218200141186a103f0b2f01017f2001200028020820002802006b41246d2200410174220220022001491b41c7e3f138200041e3f1b81c491b0b2701017f230041206b22022400200241086a200020014114102a105c2100200241206a240020000b3e00034020002001464504402002200010402002410c6a2000410c6a1040200241186a200041186a1040200241246a2102200041246a21000c010b0b20020b2e000340200020014645044020022802002000101b1a2002200228020041246a360200200041246a21000c010b0b0b0900200020013602040b0b002000200028020010320b0900200041246c10130b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000101d2001280200210220014104721022200141206a240020020bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031041280200210120022003417f6a360200200710424180104f044020072000410c6a280200417c6a10430b200141384f047f2001104420016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110410c020b20000c010b0240200710420d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10450c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010132105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1046220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10472102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021048200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104922013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10472102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021048200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10450c010b20042001410175410120011b200320051047210241802010132106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104622013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104721032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031048200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021048052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104922013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104721062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061048200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007104a200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b2f01017f200028020820014904402001104e200028020020002802041016210220002001360208200020023602000b0b0e0020002802000440200010330b0b3601017f200028020820014904402001104e200028020020002802041016210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1039200120002802006a22012002200110020c010b0b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b2101017f20011052220220012802044b044010000b200020012001105d2002105e0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103c20012003280208200328020c102f36020c20032001103c410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102a1a200341106a24000f0b20032001103c41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102f105e2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10121a0c010b200241186a200010512000105221030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101321032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a103f200241206a24000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210500b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b200310132201200420021014200020023602042000200341017236020020002001360208200120026a41003a00000b0b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104622023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10472103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031048200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110500b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101321040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110500b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2701017f230041106b2202240020004100103620022001104c104d410110361a200241106a24000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204105320000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104420026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110410c010b20000b2201200128020020036a36020020000b9b0101047f230041106b220124002001200036020c2000047f41e009200041086a2202411076220041e0092802006a220336020041dc0941dc09280200220420026a41076a417871220236020002400240200341107420024d044041e009200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101641086a0541000b2100200141106a240020000b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a103920042001200220002802006a10042000103a20000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210161a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0bd50101047f200110522204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bff0201037f200028020445044041000f0b2000105a41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101321032000200236020420002004410172360200200020033602080b2003200120021014200220036a41003a00000ba10202047f017e230041a0016b22002400105b10072201104e22021008200041286a200041086a20022001102422014100103d02400240200041286a10552204500d00419c0910562004510440200110570c020b41a10910562004510440200041286a10122102200041346a102b21032000420037035820011025410447044010000b200041e0006a20014101103d200041e0006a2002103e200041e0006a20014102103d200041e0006a2003102c200041e0006a20014103103d2000200041e0006a105537035820004188016a2002104c200041e0006a2003101b2000290358100f200042003703980120004198016a10580c020b41bb0910562004520d002001105720001023370328200041286a10580c010b10000b1059200041a0016a24000b870202047f017e230041106b220324002000105a024002402000280204450d002000105a0240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a20001051200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001025410147044010000b0b5f01027f230041206b22022400200241086a101a220120002903001035101f200120002903001020200128020c200141106a28020047044010000b20012802002001280204100d200128020c22000440200120003602100b200241206a24000b880101037f41cc09410136020041d0092802002100034020000440034041d40941d4092802002201417f6a2202360200200141014845044041cc094100360200200020024102746a22004184016a280200200041046a28020011010041cc09410136020041d00928020021000c010b0b41d409412036020041d009200028020022003602000c010b0b0b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b3501017f230041106b220041f0890436020c41d809200028020c41076a417871220036020041dc09200036020041e0093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000105d200010526a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0bcb0102004180080b03617478004190080bba01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff6164645f6d65737361676500696e69740064656c65676174655f63616c6c5f6164645f6d657373616765006765745f766563746f725f73697a65"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_DELEGATE_CALL_ADD_MESSAGE = "delegate_call_add_message"; - - public static final String FUNC_GET_VECTOR_SIZE = "get_vector_size"; - - protected ContractDelegateCallStorageVector(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractDelegateCallStorageVector(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallStorageVector.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallStorageVector.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallStorageVector.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallStorageVector.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall delegate_call_add_message(String target_address, My_message one_message, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_DELEGATE_CALL_ADD_MESSAGE, Arrays.asList(target_address,one_message,gas), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall delegate_call_add_message(String target_address, My_message one_message, Uint64 gas, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DELEGATE_CALL_ADD_MESSAGE, Arrays.asList(target_address,one_message,gas), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_vector_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTOR_SIZE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static ContractDelegateCallStorageVector load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractDelegateCallStorageVector(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractDelegateCallStorageVector load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractDelegateCallStorageVector(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Message { - public String head; - } - - public static class My_message { - public Message baseClass; - - public String body; - - public String end; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallerByRet.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallerByRet.java deleted file mode 100644 index dbe2f916ae..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallerByRet.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractDelegateCallerByRet extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001c7011c60017f017f60047f7f7f7f0060027f7f0060017f0060037f7f7f017f60037f7f7f0060027f7f017f60000060027e7e017f60047f7f7f7f017f60027f7e0060047f7e7e7f0060057f7f7f7f7f0060057f7e7e7e7e006000017f60047e7e7e7e017f60017f017e60037f7e7f017e60037f7f7e0060047f7e7e7e0060027f7c0060037e7e7f0060077f7f7f7f7f7f7f017f600a7f7f7f7f7f7f7f7f7f7f017f600b7f7f7f7f7f7f7f7f7f7f7f017f600a7f7f7f7f7e7f7e7f7f7f017f60017e017f60027e7f017f02e3020f03656e760c706c61746f6e5f6465627567000203656e760c706c61746f6e5f70616e6963000703656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000803656e760f706c61746f6e5f726c705f75313238001503656e760b706c61746f6e5f63616c6c001603656e761d706c61746f6e5f6765745f63616c6c5f6f75747075745f6c656e677468000e03656e7616706c61746f6e5f6765745f63616c6c5f6f7574707574000303656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000103656e760d706c61746f6e5f72657475726e000203636207120602000c000504030202000a020a02030a0903000003020602030005060302020000000204040200070405101003000300061a070206090101001719180400080b13090500050c0f0d0d1b0802080214030705000001000004110b0b0008000f0405017001060605030100020608017f014180a3040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000f0f5f5f66756e63735f6f6e5f65786974004406696e766f6b650039090b010041010b05484968696a0af4da0162040010620b8c1c020d7f017e230041d0016b22032400200341306a4180081011210f2001280208200141016a220e20012d0000220441017122051b21092001280204200441017620051b210a410021044101210602400340200641017141002004200a491b0440200420096a2d00002205415f6a41ff017141de004921062007200541bf7f6a41ff0171411a4972210720082005419f7f6a41ff0171411a49722108200441016a21040c0105024020062007200871410173712107200a450d00200a210403402004450d01200420096a21062004417f6a220521042006417f6a2d00004131470d000b0c030b0b0b417f21050b024002402007410171450d00200541076a200a4b0d00200541016a4102490d00200a41da004b0d00410021042003410036028801200342003703800120034180016a200a2005417f7322086a10124101210702400240024003402004200128020420012d00002206410176200641017122061b20086a4f044002402007410171450d05200341f0006a1013220841016a210d410021040340200420054604402008280204220720032d007022044101762209200441017122061b2205200f28020420032d00302204410176200441017122041b470d05200f280208200f41016a20041b210420060d0220092105200d210603402005450440200921070c080b20062d000020042d0000470d06200441016a2104200641016a21062005417f6a21050c000b00052001280208200e20012d00004101711b20046a2c00002209412072210a200941bf7f6a411a49210c027f20032d00702206410171220b45044020064101762106410a0c010b200828020421062008280200417e71417f6a0b2107200a2009200c1b2109027f024002402006200746044020082007410120072007101420032d0070410171450d010c020b200b0d010b2003200641017441026a3a0070200d0c010b2008200641016a36020420082802080b20066a220641003a0001200620093a0000200441016a21040c010b000b000b0520032802800120046a2001280208200e20061b20056a20046a41016a2d00004190086a2d000022063a00002007200641ff0147712107200441016a21040c010b0b2005450d012008280208210603402005450d0220062d000020042d0000470d01200441016a2104200641016a21062005417f6a21050c000b000b200341206a4200370300200341286a410036020020034200370318200341003a002c2003280280012204450d0320032004360284010c030b41002104200341003602c001200342003703b801200341b8016a2007410174410172101203402004200828020420032d00702205410176200541017122051b22064f45044020032802b80120046a2008280208200d20051b20046a2d000022054105763a000020032802b801200828020420032d0070220641017620064101711b6a20046a41016a2005411f713a0000200441016a21040c010b0b20032802b80120066a41003a000020032802bc0121050240200328028401220620032802800122046b22074101480d00200720032802c001220920056b4c0440034020042006460d02200520042d00003a0000200320032802bc0141016a22053602bc01200441016a21040c000b000b200341a8016a200341c0016a36020041002108200341003602a401200520032802b80122016b210a200520076a20016b2207200920016b2209410174220120012007491b41ffffffff07200941ffffffff03491b220904402009101521080b200320083602980120032008200a6a22073602a0012003200820096a3602a4012003200736029c0120034198016a410472210803402004200646450440200720042d00003a0000200320032802a00141016a22073602a001200441016a21040c010b0b20032802b801200520081016024020032802bc01220620056b220441004c044020032802a00121050c010b200320032802a00120052004101720046a22053602a00120032802bc0121060b20032802b80121042003200328029c013602b8012003200436029c01200320053602bc01200320063602a00120032802c0012105200320032802a4013602c001200320053602a401200320043602980120034198016a101820032802bc0121050b200342003702bc0120032802b8012106200341003602b801200520066b21054101210403402005044020062d000041002004411d764101716b41b3c5d1d0027141002004411c764101716b41dde788ea037141002004411b764101716b41fab384f5017141002004411a764101716b41ed9cc2b20271410020044119764101716b41b2afa9db0371200441057441e0ffffff037173737373737321042005417f6a2105200641016a21060c010b0b20044101470d004100210b200341003602c001200342003703b8012003410036022020034200370318027f4100200328028401417a6a220620032802800122046b2205450d001a200341186a2005101903402004200646450440200328021c220520042d00003a00002003200541016a36021c200441016a21040c010b0b2003280218210b200328021c0b200b6b210d200341c0016a210e41002104410021094100210c02400340200c200d46044002402009410820046b7441ff0171452004410548712104200b04402003200b36021c0b20040d0020032802b80121040c030b05200b200c6a2d0000200941057441e01f71722109200441056a21040340200441084e04402009200441786a220476210620032802bc01220720032802c0012208490440200720063a0000200320032802bc0141016a3602bc010c02052003200e3602a80141002105200341003602a401200720032802b80122016b220741016a220a200820016b220841017422012001200a491b41ffffffff07200841ffffffff03491b220804402008101521050b2003200536029801200520076a220720063a00002003200520086a3602a4012003200736029c012003200741016a3602a001200341b8016a20034198016a101a20034198016a10180c020b000b0b200c41016a210c0c010b0b20032802bc0120032802b80122046b4114470d00200341a8016a4100360200200341a0016a42003703002003420037039801410021040340200441144645044020034198016a20046a41003a0000200441016a21040c010b0b20032802bc0120032802b80122056b2106410021040340024020042006460d00200441134b0d0020034198016a20046a200420056a2d00003a0000200441016a21040c010b0b200341286a200341a8016a280200360200200341206a200341a0016a2903003703002003200329039801370318200341013a002c20050440200320053602bc010b2003280280012204044020032004360284010b200341f0006a4190091011220528020420032d00702204410176200441017122061b21042005280208200541016a20061b210542a5c688a1c89ca7f94b21100340200404402004417f6a21042005300000201042b383808080207e852110200541016a21050c010b0b200341b8016a101b220428020421050240200441106a2802002206200441146a280200220749044020062005ad4220864201843702002004200428021041086a3602100c010b027f41002006200428020c22086b410375220641016a2209200720086b2207410275220820082009491b41ffffffff01200741037541ffffffff00491b2208450d001a200841037410150b2107200720064103746a22062005ad42208642018437020020062004280210200428020c22016b22056b2109200720084103746a2107200641086a2106200541014e044020092001200510171a0b20042007360214200420063602102004200936020c0b200341b0016a4100360200200341a8016a4200370300200341a0016a4200370300200342003703980120034198016a2010101c2004200328029801101d20042010101e200341306a2004101f2003280230210620034190016a2004101f2003410036028801200342003703800102402003280290012003280294016a20066b2205450d0020034180016a2005101920054101480d00200320032802840120062005101720056a360284010b20034198016a4104721020200428020c22050440200420053602100b20034198016a42001021200341b8016a20021021200341186a200328028001220420032802840120046b2003280298012205200328029c0120056b20032802b801220520032802bc0120056b1006210520032802b80122060440200320063602bc010b200328029801220604402003200636029c010b2004044020032004360284010b2005450440200341003602c001200342003703b801200341b8016a1007101220032802b801100820034198016a20032802b801220420032802bc0120046b411c1022220410230240024020041024450d00200410250d0020042802040d010b41950910260b20034180016a2004102720032802840141024f044041950910260b20032802b80122040440200320043602bc010b2000420037031020034198016a1013419e09102841a30910282204411910292003200441a309102841a509102841a309102841aa09102841a309102841ce0a102841a309102841d30a102841a309102841dc0a10282204280208200441016a20032d0098014101711b3602002003102a0c040b2000420137031020034198016a1013419e09102841a30910282204411d10292003200441a309102841a509102841a309102841aa09102841a309102841ce0a102841a309102841d30a102841a3091028419f0b10282204280208200441016a20032d0098014101711b360210200341106a102a0c030b2004450d00200320043602bc010b2003280280012204450d0020032004360284010b200341206a4200370300200341286a410036020020034200370318200341003a002c0b200341d0016a24000b1f0020004200370200200041086a4100360200200020012001102b102c20000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b20002001102d2106200241186a200041086a3602002002410036021441002101200604402006101521010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a101a200241086a10180c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000102e20000b920101027f027f20002d0000410171044020002802080c010b200041016a0b2106416f2105200141e6ffffff074d0440410b20014101742205200120026a220120012005491b220541106a4170712005410b491b21050b2005101521012004044020012006200410630b200320046b22030440200120046a200420066a200310630b20002001360208200020054101723602000b0b002000410120001b10380b270020022002280200200120006b22016b2202360200200141014e044020022000200110171a0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b2001017f2000200110152202360200200020023602042000200120026a3602080b6701017f20002802002000280204200141046a1016200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2900200041003602082000420037020020004100102f200041146a41003602002000420037020c20000bba0102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b024020024138490d002002210303402003450d01200241016a2102200341087621030c000b000b200241016a21020b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020026a3602000b13002000280208200149044020002001102f0b0b9a0101037f2000420020011004200028020422026a103042002001200220002802006a10050340024020002802102202200028020c460d00200241786a2802004504401001200028021021020b200241786a22032003280200417f6a220436020020040d002000200336021020002002417c6a2802002202200028020420026b220310026a1030200220002802006a22022003200210030c010b0b0b2200200128020c200141106a28020047044041b20c10260b200020012902003702000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b6302017f017e20012103034020035045044020034208882103200241016a21020c010b0b20004100360208200042003702002000200210122000280204417f6a21020340200150450440200220013c00002002417f6a2102200142088821010c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106420024f0d002003410471044010010c010b200042003702000b02402003411071450d002000106420024d0d0020034104710440100120000f0b200042003702000b20000b4101017f200028020445044010010b0240200028020022012d0000418101470d00200028020441014d047f100120002802000520010b2c00014100480d0010010b0b980101037f200028020445044041000f0b20001023200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100120002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100120002802000520020b20016a2d00004100470b0b1900200028020445044041000f0b200010312d000041bf014b0b0c0020002000102b100010010be30101047f027f200110322203200128020422024b047f419509102620012802040520020b04404100200110312c0000417f4a0d011a0b0240024020011033450d00200110312d000041b801490d00200110312d000041c97e6a21020c010b4100210220011025450d00200110312d000041f801490d00200110312d000041897e6a21020b200241016a0b21022000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0c00200020012001102b10360b950201047f230041306b22022400200241286a410036020020024200370320200241206a102e200241206a2002280220417e71417f6a410a20022d00204101711b1034200228022420022d0020220341017620034101711b2104200241206a41017221050340024020022001360200200241206a027f2002280228200520034101711b200441016a20021035220341004e0440200320044d0d0220030c010b20044101744101720b2204103420022d002021030c010b0b200241206a20031034200241186a2204200241286a28020036020020022002290320370310200241206a102e20002004280200200241106a41017220022d0010220441017122031b2002280214200441017620031b10361a200241306a24000b3b01017f23004190086b220124002001200036020c200141106a418008419a0b200010471a200141106a200141106a102b100020014190086a24000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101521032000200236020420002004410172360200200020033602080b2003200120021063200220036a41003a00000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2f01017f2000280208200149044020011038200028020020002802041017210220002001360208200020023602000b0b3601017f2000280208200149044020011038200028020020002802041017210220002001360208200020023602000b200020013602040b2e01017f02402000280200220104402000280204450d0120010f0b41da0b41b4011037000b41a50c41b5011037000bff0201037f200028020445044041000f0b2000102341012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10010b20020b1900200028020445044041000f0b200010312d000041c001490b880201037f0240027f20002d000022034101712202044020002802040c010b20034101760b22042001490440200120046b2204450d01027f2002044020002802002203417e71417f6a210220002802040c010b410a210220034101760b2201027f200220016b200449047f20002002200120046a20026b20012001101420002d00000520030b410171044020002802080c010b200041016a0b22036a41002004104e1a200120046a2101024020002d00004101710440200020013602040c010b200020014101743a00000b200120036a41003a00000f0b20020440200028020820016a41003a0000200020013602040f0b200020016a41016a41003a0000200020014101743a00000b0b2a01017f230041106b220324002003200236020c20002001419621200210472102200341106a240020020baf0201057f0240027f20002d00002205410171220604402000280204210420002802002205417e71417f6a0c010b20054101762104410a0b220320046b20024f04402002450d012004027f2006044020002802080c010b200041016a0b22036a200120021063200220046a2104024020002d00004101710440200020043602040c010b200020044101743a00000b200320046a41003a000020000f0b027f2005410171044020002802080c010b200041016a0b2107200220046a2105416f2106200341e6ffffff074d0440410b20034101742203200520052003491b220341106a4170712003410b491b21060b2006101521032004044020032007200410630b200320046a200120021063200020053602042000200641017236020020002003360208200320056a41003a00000b20000b3501017f230041106b220224002002200136020c2002419a0c360208200241e10b3602042002200036020020021061410010671a000b9b0101047f230041106b220124002001200036020c2000047f41fc22200041086a2202411076220041fc222802006a220336020041f82241f822280200220420026a41076a417871220236020002400240200341107420024d044041fc22200341016a360200200041016a21000c010b2000450d010b200040000d0010010b20042001410c6a4104101741086a0541000b2100200141106a240020000bb80502087f017e230041f0006b2200240010621009220210382201100a200041d8006a200041086a20012002103a22044100103b0240200041d8006a103c220850044041c90c10260c010b41d90c103d20085104402004103e200041d8006a103f10400c010b41d30a103d2008510440200041406b101321062000420037035020041041410347044041de0c10260b200041d8006a20044101103b0240200041d8006a1033450440200041306a10131a0c010b200041206a200041d8006a1027200041d8006a1032210102400240024002402000280220220204402000280224220320014f0d010b41002102200041386a410036020020004200370330410021030c010b200041386a4100360200200042003703302002200320012001417f461b22056a21032005410a4b0d010b200020054101743a0030200041306a41017221010c010b200541106a4170712207101521012000200536023420002007410172360230200020013602380b034020022003470440200120022d00003a0000200141016a2101200241016a21020c010b0b200141003a00000b024020002d0040410171450440200041003b01400c010b200028024841003a00002000410036024420002d0040410171450d00200041003602400b200041c8006a200041386a28020036020020002000290330370340200041306a102e200041d8006a20044102103b2000200041d8006a103c370350200041d8006a103f2102200041206a20061042210120002903502108200041d8006a200041306a2001104220081010200210400c010b418e0d103d20085104402004103e200041406b103f210120002903502108200041d8006a101b220220081043101d20022008101e200041306a2002101f20002802302000280234100e200228020c22030440200241106a20033602000b200110400c010b41990d10260b1044200041f0006a24000b0c00200020012002411c10220bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104520012003280208200328020c104636020c200320011045410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410221a200341106a24000f0b20032001104541002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104610662001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b820102027f017e230041106b22012400200010230240024020001024450d00200010250d0020002802040d010b41950910260b200141086a20001027200128020c220041094f044041950910260b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b110020001041410147044041de0c10260b0bf00101067f230041d0006b22012400200042b388bc9ee59b8a9d1b37030820004200370300200141386a101b22042000290308101e200141306a2004101f02402001280230220520012802342206100b22024504400c010b2001410036022820014200370320200141206a200210122005200620012802202205200128022420056b100c417f4704402000200141086a2001280220220341016a20012802242003417f736a103a103c370310200221030b20012802202202450d00200120023602240b200428020c22020440200441106a20023602000b2003450440200020002903003703100b200141d0006a240020000b9c0201077f230041d0006b22022400200241386a101b220420002903081043101d20042000290308101e200241306a2004101f200241186a101b210120002903101043210641011015220341fe013a0000200128020c200141106a28020047044041b20c10260b2001280204220541016a220720012802084b047f20012007102f20012802040520050b20012802006a2003410110171a2001200128020441016a3602042001200341016a200620036b6a101d20012000290310101e2002280234210020022802302103200241106a2001101f20022802102105200241086a2001101f200320002005200228020c100d200128020c22000440200120003602100b200428020c22010440200441106a20013602000b200241d0006a24000b870101047f230041106b22012400024020001025450d002000280204450d0020002802002d000041c001490d00200141086a20001045200128020c210003402000450d01200141002001280208220320032000104622046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102c20000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000101c2001280200210220014104721020200141206a240020020b880101037f41dc22410136020041e0222802002100034020000440034041e42241e4222802002201417f6a2202360200200141014845044041dc224100360200200020024102746a22004184016a280200200041046a28020011030041dc22410136020041e02228020021000c010b0b41e422412036020041e022200028020022003602000c010b0b0b2101017f20011032220220012802044b044010010b2000200120011065200210660b2701017f230041206b22022400200241086a200020014114102210642100200241206a240020000bfa16030f7f027e037c230041306b220a2400200a200236020c4101410220001b210b200a410f6a21110340410020066b21070240034020022d00002204450d01200441254704402004411874411875200020062001200b110100200a200241016a220236020c2007417f6a2107200641016a21060c010b0b200a200241016a220236020c410021040340024002400240024020022c0000220941556a220541054b0440200941606a220541034b0d0102400240200541016b0e03030301000b200a200241016a220236020c200441087221040c060b200a200241016a220236020c200441107221040c050b200541016b0e050002000003010b0240200941506a41ff017141094d0440200a410c6a104a210d200a28020c21020c010b4100210d2009412a470d0020032802002105200a200241016a220236020c2004410272200420054100481b210420052005411f7522096a200973210d200341046a21030b41002109024020022d0000412e470d00200a200241016a220836020c200441800872210420022d0001220541506a41ff017141094d0440200a410c6a104a2109200a28020c21020c010b200541ff0171412a470440200821020c010b20032802002105200a200241026a220236020c20054100200541004a1b2109200341046a21030b0240024020022c000041987f6a411f77220541094b0d000240024002400240200541016b0e09020004040403040403010b200a200241016a220836020c20022d0001220541ec004704402004418002722104200821020c050b200a200241026a220236020c20044180067221040c030b200a200241016a220836020c20022d0001220541e8004704402004418001722104200821020c040b200a200241026a220236020c200441c0017221040c020b200a200241016a220236020c20044180047221040c010b200a200241016a220236020c20044180027221040b20022d000021050b0240024002400240024002400240024002402005411874411875220c419e7f6a220841164b0440200c4125470440200c41c600460d07200c41d800470d020c080b4125200020062001200b1101000c020b200841016b0e15040600050000060000000000060200000300060000060b200c200020062001200b1101000b200a200241016a220236020c200641016a21060c0c0b200b200020062001200328020041004110200941082004412172104b2106200a200241016a220236020c200341046a21030c0b0b20032802002205417f6a21070340200741016a22072d00000d000b200720056b2207200920072009491b2007200441800871220c410a761b210802402004410271220e0440200621040c010b410021070340200620076a2104200720086a220f200d4f4504404120200020042001200b110100200741016a21070c010b0b200f41016a21080b200341046a21030340024020052d00002206450d00200c04402009450d012009417f6a21090b2006411874411875200020042001200b110100200441016a2104200541016a21050c010b0b200e450440200421060c050b410021070340200420076a2106200720086a200d4f0d054120200020062001200b110100200741016a21070c000b000b410121070240200441027122090440200621050c010b410121040340200420066a417f6a21052004200d4f450440200441016a21044120200020052001200b1101000c010b0b200441016a21070b20032c0000200020052001200b110100200541016a21062009450d0203402007200d4f0d034120200020062001200b110100200641016a2106200741016a21070c000b000b200941062004418008711b220941037441b00d6a2108200341076a417871220e2b0300211541002105034002402009410a490d002005411f4b0d00200a41106a20056a41303a0000200841786a21082009417f6a2109200541016a21050c010b0b027f4400000000000000002015a1201520154400000000000000006322101b22159944000000000000e0416304402015aa0c010b4180808080780b2103027f20152003b7a120082b03002217a2221644000000000000f041632016440000000000000000667104402016ab0c010b41000b210c02402016200cb8a1221644000000000000e03f644101734504402017200c41016a220cb8654101730d01200341016a21034100210c0c010b201644000000000000e03f620d00200c45200c41017172200c6a210c0b4100210802402015440000c0ffffffdf41640d00024020090440200520096a41606a2112034002402005412046044041202105201221090c010b200a41106a20056a200c200c410a6e220841766c6a4130723a0000200541016a21052009417f6a2109200c41094b210f2008210c200f0d010b0b034002402005411f4b22080d002009450d00200a41106a20056a41303a0000200541016a21052009417f6a21090c010b0b20080d01200a41106a20056a412e3a0000200541016a21050c010b20152003b7a1221544000000000000e03f64410173450440200341016a21030c010b20032003201544000000000000e03f61716a21030b03402005411f4d0440200a41106a20056a20032003410a6d220941766c6a41306a3a0000200541016a2105200341096a210820092103200841124b0d010b0b20044103712109034002402005411f4b0d0020094101470d002005200d4f0d00200a41106a20056a41303a0000200541016a21050c010b0b20044101712108200441027121090240200d2004410c714100472010726b20052005200d461b2205411f4b0d0002402010410173450440200a41106a20056a412d3a00000c010b20044104710440200a41106a20056a412b3a00000c010b2004410871450d01200a41106a20056a41203a00000b200541016a21050b024020082009720440200621080c010b410021040340200420066a2108200420056a200d4f0d014120200020082001200b110100200441016a21040c000b000b200720086a2106034020050440200520116a2c0000200020082001200b110100200641016a21062005417f6a2105200841016a21080c010b0b2009450d0003402006200d4f0d014120200020082001200b110100200641016a2106200841016a21080c000b000b200e41086a2103200a200241016a220236020c200821060c080b41102108024002400240200541ff0171220741d8004622050d00200741f800460d00200741ef00460440410821080c020b200741e200460440410221080c020b2004416f712104410a21080b2004412072200420051b2104200741e400460d01200741e900460d010b200441737121040b2004417e7120042004418008711b2104200741e900474100200741e400471b4504402004418004710440200b200020062001200341076a417871220729030022132013423f8722147c2014852013423f88a72008ad2009200d2004104c2106200741086a21030c030b2004418002710440200b200020062001200328020022072007411f7522056a2005732007411f7620082009200d2004104b21060c020b200b200020062001027f200441c00071044020032c00000c010b2003280200220741107441107520072004418001711b0b2207411f75220520076a2005732007411f7620082009200d2004104b21060c010b2004418004710440200b200020062001200341076a417871220729030041002008ad2009200d2004104c2106200741086a21030c020b2004418002710440200b2000200620012003280200410020082009200d2004104b21060c010b200b200020062001027f200441c00071044020032d00000c010b2003280200220741ffff037120072004418001711b0b410020082009200d2004104b21060b200341046a21030b200a200241016a220236020c0c050b200a200241016a220236020c200441047221040c020b200a200241016a220236020c200441027221040c010b200a200241016a220236020c200441017221040c000b000b0b4100200020062001417f6a20062001491b2001200b110100200a41306a240020060b140020022003490440200120026a20003a00000b0b0300010b4501037f20002802002101034020012d000041506a41ff017141094b4504402000200141016a220336020020012c00002002410a6c6a41506a2102200321010c010b0b20020bad0101067f230041206b220b240020092009416f7120041b210c02402004450440200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a2004200420066e220e20066c6b220a4130200d200a41187441808080d000481b6a3a0000200941016a210a2009411e4b0d01200420064f210f200a2109200e2104200f0d000b0b2000200120022003200b200a2005200620072008200c104d2104200b41206a240020040bba0102057f017e230041206b220b240020092009416f712004420052220a1b210c0240200a4504404100210a200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a4130200d20042004200680220f20067e7da7220a41187441808080d000481b200a6a3a0000200941016a210a2009411e4b0d01200420065a210e200a2109200f2104200e0d000b0b2000200120022003200b200a20052006a720072008200c104d2109200b41206a240020090bf20401037f200a410271210d2005210b02400340200d0d010240200b20084f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410371410147210c2005210b02400340200c0d010240200b20094f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410171210c024002400240200a41107104400240200a418008710d002005450d002005200847410020052009471b0d002005417e6a2005417f6a220b200b1b200b20074110461b21050b0240200741104604400240200a412071220b0d002005411f4b0d00200420056a41f8003a0000200541016a21050c020b200b450d012005411f4b0d01200420056a41d8003a0000200541016a21050c010b20074102470d002005411f4b0d00200420056a41e2003a0000200541016a21050b2005411f4b0d01200420056a41303a0000200541016a21050c010b20050d00410021050c010b2009200a410c714100472006726b200520052009461b2205411f4b0d010b20060440200420056a412d3a0000200541016a21050c010b200a4104710440200420056a412b3a0000200541016a21050c010b200a410871450d00200420056a41203a0000200541016a21050b2002210b0240200c200d720d002005210c0340200c20094f0d0141202001200b20032000110100200c41016a210c200b41016a210b0c000b000b2004417f6a210c037f2005047f2005200c6a2c00002001200b200320001101002005417f6a2105200b41016a210b0c01050240200d450d00410020026b210503402005200b6a20094f0d0141202001200b20032000110100200b41016a210b0c000b000b200b0b0b0bfc0202027f017e02402002450d00200020013a0000200020026a2203417f6a20013a000020024103490d00200020013a0002200020013a00012003417d6a20013a00002003417e6a20013a000020024107490d00200020013a00032003417c6a20013a000020024109490d002000410020006b41037122046a2203200141ff017141818284086c22013602002003200220046b417c7122046a2202417c6a200136020020044109490d002003200136020820032001360204200241786a2001360200200241746a200136020020044119490d002003200136021820032001360214200320013602102003200136020c200241706a20013602002002416c6a2001360200200241686a2001360200200241646a20013602002001ad220542208620058421052004200341047141187222016b2102200120036a2101034020024120490d0120012005370300200141186a2005370300200141106a2005370300200141086a2005370300200141206a2101200241606a21020c000b000b20000b5901017f200020002802482201417f6a20017236024820002802002201410871044020002001412072360200417f0f0b200042003702042000200028022c220136021c200020013602142000200120002802306a36021041000b4402017f017e200142ffffffffffff3f832103027f2001423088a741ffff0171220241ffff01470440410420020d011a410241032000200384501b0f0b2000200384500b0bc50101037f230041206b2204240002402002423088a7220641ffff0171220541ffff01460d0020054504402003027f410020012002420042001070450d001a20042001200242808080808080c0bbc0001052200441106a2004290300200441086a290300200310512004290318210220042903102101200328020041887f6a0b3602000c010b200320054182807f6a360200200242ffffffffffff3f832006418080027141feff0072ad4230868421020b2000200137030020002002370308200441206a24000ba60a02047f107e230041e0006b220424002004200242ffffffffffff3f83370358200420013703502004200342ffffffffffff3f83220c370348200442003703402002200385428080808080808080807f8321090240027e02400240024002402002423088a741ffff01712206417f6a41fdff014d41002003423088a741ffff01712205417f6a41feff01491b0d00200150200242ffffffffffffffffff0083220a42808080808080c0ffff0054200a42808080808080c0ffff00511b450440200242808080808080208421090c060b4101200342ffffffffffffffffff0083220242808080808080c0ffff0054200242808080808080c0ffff00511b45044020034280808080808020842109420021010c060b2001200a42808080808080c0ffff008584500440200250450d0242808080808080e0ffff0021090c030b200242808080808080c0ffff00855004402001200a84210242002101200250044042808080808080e0ffff0021090c070b200942808080808080c0ffff008421090c060b2001200a842103420021012003500d052002500d05200a42ffffffffffff3f580440200441d0006a106f21070b200242ffffffffffff3f560d00200441406b106f20076a21072004290348210c200429034021080b2004200837034020042004290358220d42808080808080c00084220f3703582004200c42808080808080c0008422103703482004290350220342208822022008420f86428080feff0f8322017e2211200342ffffffff0f832203200842118842ffffffff0f83220a7e7c220e4220862212200120037e7c220b201254ad200d42ffffffff0f83220d20017e22142003200c420f8620084231888442ffffffff0f8322087e7c22122002200a7e7c2213200e201154ad422086200e422088847c220e2001200f422088220c7e2215201042118842ffffffff0f83220120037e7c220f200a200d7e7c2210200220087e7c22114220867c22167c2103200520066a20076a4181807f6a21050240200a200c7e22172008200d7e7c220a201754ad200a200120027e7c2202200a54ad7c2001200c7e7c2001200d7e22012008200c7e7c2208200154ad4220862008422088847c200220084220867c2208200254ad7c20082012201454ad2013201254ad7c7c2202200854ad7c20022011201054ad200f201554ad2010200f54ad7c7c4220862011422088847c2208200254ad7c2008200e201354ad2016200e54ad7c7c2202200854ad7c220842808080808080c0008350450440200541016a21050c010b200b423f88210120084201862002423f8884210820024201862003423f88842102200b420186210b200120034201868421030b200541ffff014e0440200942808080808080c0ffff008421090c020b200541004a0d02410120056b220641ff004b0d01200441106a200b20032006106c200441206a20022008200541ff006a2205106b200441306a200b20032005106b2004200220082006106c2004290330200441386a29030084420052ad200429032020042903108484210b200441286a290300200441186a29030084210320042903002102200441086a2903000c030b200942808080808080c0ffff008421090b420021010c020b200842ffffffffffff3f832005ad423086840b2009842109200b502003427f552003428080808080808080807f511b4504402009200242017c2201200254ad7c21090c010b200b2003428080808080808080807f858450450440200221010c010b2009200220024201837c2201200254ad7c21090b2000200937030820002001370300200441e0006a24000b9a2f021d7f047e230041e03c6b2206240020064199213602d002200641b6026a211d419e7d20066b211e200641df026a211f200641e0026a410872211c200641e0026a410972211820064190396a2120200641e0026a211a200641b7026a211602400240024003400240200441ffffffff0720126b4a0d00200420126a2112024002400240027f0240027f02400240024002400240024002400240024002400240024002400240024020062802d00222092d000022070440410021042009210503400240200741ff01712207450d0020074125460d00200441016a210420052d00012107200541016a21050c010b0b200620053602d0022004210503400240200520096a22072d00004125470d00200741016a2d00004125470d00200441016a2104200541026a21050c010b0b200620073602d002200441ffffffff0720126b220b4a0d162000044020002009200410540b20040d17417f210f200741016a22042c000041506a220541094d0440200741036a2004200741026a2d000041244622071b21042005417f20071b210f4101201720071b21170b4100210503400240200620043602d00220042c0000220a41606a2207411f4b0d00410120077422074189d10471450d00200441016a2104200520077221050c010b0b0240200a412a460440027f0240200441016a220a2c000041506a220741094b0d00200441026a2d00004124470d00200320074102746a410a360200200441036a210a41012117200441016a2c000041047420026a41807a6a2802000c010b20170d0620004504402006200a3602d00241002117410021100c030b20012001280200220441046a3602004100211720042802000b21102006200a3602d0022010417f4a0d01410020106b211020054180c0007221050c010b200641d0026a105522104100480d1720062802d002210a0b41002104417f2108027f200a2d0000412e470440200a210741000c010b200a2d0001412a460440027f0240200a2c000241506a220741094b0d00200a2d00034124470d00200320074102746a410a360200200a41046a2107200a2c000241047420026a41807a6a2802000c010b20170d06200a41026a210741002000450d001a20012001280200220a41046a360200200a2802000b2108200620073602d0022008417f73411f760c010b2006200a41016a3602d002200641d0026a1055210820062802d002210741010b210e03402004210a20072c000041bf7f6a220441394b0d03200741016a2107200a413a6c20046a41801d6a2d00002204417f6a4108490d000b200620073602d0022004450d030240024002402004411b460440200f417f4c0d010c070b200f4100480d012003200f4102746a200436020020062002200f4104746a22042903003703c0022006200441086a2903003703c8020b410021042000450d190c010b2000450d1a200641c0026a2004200110560b200541ffff7b712211200520054180c000711b210c2007417f6a2c00002204415f7120042004410f714103461b2004200a1b221341ad7f6a220441254d0d01201341bf7f6a220441064b0d040240200441016b0e03050005060b200641003602fc01200620062903c0023e02f8012006200641f8016a3602c002417f2108200641f8016a0c100b20000d192017450d18200241106a2107200341046a210541012104034002402004410a47047f200528020022090d01200405410a0b41027421040340200441046a2205412c460440410121120c1d0b200320046a2107200521042007280200450d000b0c040b2007200920011056200741106a2107200541046a2105200441016a21040c000b000b200441016b0e25020202020b0202020202020202030207080303030208020202050c090a020204020f02020b0d0b200620073602d0020b41f02241163602000c140b4100210541e020210f0c0f0b2008417f4c4100200e1b0d1020062903c002212220062903c80221212006410036028c03027f2021427f5704402021428080808080808080807f8521214101211541f1200c010b200c4180107104404101211541f4200c010b41f72041f220200c41017122151b0b211b024020222021105041014c0440200041202010201541036a2204201110572000201b201510542000418c21419021201341207141057622051b41842141882120051b202220212022202110581b410310542000412020102004200c4180c0007310572010200420042010481b21040c010b200641e0016a202220212006418c036a1051200641d0016a20062903e001222120062903e801222220212022105920062903d0012221200641d8016a290300222242004200107004402006200628028c03417f6a36028c030b2013412072221941e100460440201b41096a201b201341207122091b210e02402008411a4b0d00411b20086b450d00200841656a210442808080808080c081c000212342002124034020040440200641f0006a2024202342808080808080c081c0001052200441016a2104200641f8006a2903002123200629037021240c010b0b200e2d0000412d460440200641406b20212022428080808080808080807f8520242023105a200641306a202420232006290340200641c8006a2903001059200641386a290300428080808080808080807f852122200629033021210c010b200641e0006a20212022202420231059200641d0006a2006290360200641e8006a29030020242023105a200641d8006a2903002122200629035021210b2015410272210a201a200628028c0322052005411f7522046a200473ad201a105b2204460440200641303a00df02201f21040b2004417e6a220f2013410f6a3a00002004417f6a412d412b20054100481b3a0000200c410871210b200641e0026a21050340200641206a20212022105c2207105d200641106a202120222006290320200641286a290300105a20062006290310200641186a29030042808080808080c081c000105220052204200741d0206a2d00002009723a0000200641086a2903002122200629030021210240200441016a2205200641e0026a6b4101470d000240200b0d00200841004a0d0020212022420042001070450d010b2004412e3a0001200441026a21050b202120224200420010700d000b417f210441fdffffff07200a201a200f6b22096a220b6b2008480d01200041202010200b200841026a2005200641e0026a6b22072005201e6a2008481b200720081b22056a2204200c10572000200e200a10542000413020102004200c418080047310572000200641e0026a2007105420004130200520076b4100410010572000200f200910542000412020102004200c4180c0007310572010200420042010481b21040c010b20084100482104024020212022420042001070450440200628028c03210e0c010b200641c0016a2021202242808080808080c08dc00010522006200628028c0341646a220e36028c03200641c8016a290300212220062903c00121210b4106200820041b210d20064190036a2020200e4100481b221421050340200641b0016a20212022105e2204105f200641a0016a2021202220062903b001200641b8016a290300105a20064190016a20062903a001200641a8016a2903004280808080e59ab78ec000105220052004360200200541046a2105200629039001222120064198016a29030022224200420010700d000b2014210b0340200e41014e04402005417c6a2104200e411d200e411d481b2209ad21224100210703402004200b4f044020042007ad20043502002022867c22212021428094ebdc038022214280ec94a37c7e7c3e02002004417c6a21042021a721070c010b0b20070440200b417c6a220b20073602000b034020052204200b4b04402004417c6a2205280200450d010b0b200e20096b210e200421050c010b0b2006200e36028c03200d412d6a41096e41016a21110340200e417f4c044041002107418094ebdc0341094100200e6b200e4177481b220a762108417f200a74417f73210f200b2104034020042005490440200420042802002209200a7620076a360200200441046a21042009200f7120086c21070c010b0b2014200b200b41046a200b2802001b220b201941e600461b220420114102746a2007044020052007360200200541046a21050b2005200520046b41027520114a1b2105200a200e6a210e0c010b0b2006200e36028c03410021070240200b20054f0d002014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200d41002007201941e600461b6b201941e70046220a200d410047716b2204200520146b41027541096c41776a4804402004418080096a2204200441096d220841776c6a2104410a21090340200441074c04402009410a6c2109200441016a21040c010b0b200841027420146a220f4184807c6a22082802002204200420096e221120096c220e6b2104024041002005200f4188807c6a22194620041b0d00024020114101714504404280808080808080b8c0002121420021222008200b4d0d012009418094ebdc03470d012008417c6a2d0000410171450d010b4280808080808080b8c0002121420121220b4280808080808080ff3f42808080808080c0ff3f42808080808080e0ff3f200420094101762211461b42808080808080e0ff3f20052019461b20042011491b212302402015450d00201b2d0000412d470d002023428080808080808080807f8421234280808080808080b84021210b20064180016a202220214200202310592008200e36020020062903800120064188016a290300202220211070450d0020082009200e6a2207360200200f4180807c6a210403402007418094ebdc034f0440200441046a41003602002004200b490440200b417c6a220b41003602000b2004200428020041016a22073602002004417c6a21040c010b0b200441046a21082014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200841046a22042005200520044b1b21050b027f0340410020052209200b4d0d011a2009417c6a2205280200450d000b41010b210e0240200a450440200c41087121080c010b2007417f73417f200d4101200d1b220420074a2007417b4a7122051b20046a210d417f417e20051b20136a2113200c41087122080d00410921050240200e450d002009417c6a280200220a450d0041002105410a21040340200a2004700d01200541016a21052004410a6c21040c000b000b200920146b41027541096c41776a2104201341207241e60046044041002108200d200420056b22044100200441004a1b2204200d2004481b210d0c010b41002108200d200420076a20056b22044100200441004a1b2204200d2004481b210d0b417f2104200d41fdffffff0741feffffff072008200d72220f1b4a0d00200d200f4100476a41016a21110240201341207241e600472219450440200741ffffffff0720116b4a0d0220074100200741004a1b210a0c010b20072007411f7522056a200573ad201a105b417e6a21050340201a20056b220a417e6a41014c0440200541016a41303a00002005417f6a21050c010b0b200520133a0000200541016a412d412b20074100481b3a0000200a41ffffffff0720116b4a0d010b200a20116a2207201541ffffffff07734a0d00200041202010200720156a2211200c10572000201b201510542000413020102011200c41808004731057024020194504402014200b200b20144b1b220721050340200520144d044020053502002018105b210402402005200747044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b20042018470d00200641303a00e802201c21040b20002004201820046b1054200541046a21050c010b0b200f04402000419421410110540b03400240200520094f0d00200d4101480d0020053502002018105b210403402004200641e0026a4b04402004417f6a220441303a00000c010b0b20002004200d4109200d4109481b1054200d41776a210d200541046a21050c010b0b20004130200d41096a4109410010570c010b2009200b41046a200e1b210a200b2107034002402007200a4f0d00200d4100480d00201820073502002018105b2204460440200641303a00e802201c21040b02402007200b47044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b2000200441011054200441016a21042008454100200d4101481b0d002000419421410110540b20002004201820046b2209200d200d20094a1b1054200741046a2107200d20096b210d0c010b0b20004130200d41126a41124100105720002005201a20056b10540b2000412020102011200c4180c0007310572010201120112010481b21040b200441004e0d110c100b20062802c002220441ea2020041b21090c010b4100210441f0222802002105037f200441d80046047f41d80005200441800e6a2d0000200546047f200405200441016a21040c020b0b0b210741e00e210903402007450d01034020092d00002104200941016a2205210920040d000b2007417f6a2107200521090c000b000b4100210541ffffffff07200820084100481b210a0240024003400240200520096a21042005200a46220f0d002004410371450d0020042d0000450d02200541016a21050c010b0b41002107200f0d01200a20056b210720042d0000450d01200520096a2104034020074104490d0220042802002205417f73200541fffdfb776a71418081828478710d022007417c6a2107200441046a21040c000b000b200a20056b21070b03400240410021052007450440410021040c010b20042d0000450d002007417f6a2107200441016a21040c010b0b2009200420096b200a20041b22076a210441e020210f2008417f4a04402011210c200721080c0d0b2011210c2007210820042d0000450d0c0c0d0b200620062903c0023c00b6024100210541e020210f41012108201d2109201621042011210c0c0b0b20062903c0022221427f5704402006420020217d22213703c0024101210541e0200c080b200c4180107104404101210541e1200c080b41e22041e020200c41017122051b0c070b20062903c00221212016210903402021504504402009417f6a22092021a74107714130723a0000202142038821210c010b0b4100210541e020210f200c410871450d072008201620096b220441016a200820044a1b21080c070b20084108200841084b1b2108200c410872210c41f80021130b2013412071210420062903c00221212016210903402021504504402009417f6a22092021a7410f7141d0206a2d00002004723a0000202142048821210c010b0b4100210541e020210f200c410871450d0520062903c002500d05201341047541e0206a210f410221050c050b41002104200a41ff0171220541074b0d080240024002400240024002400240200541016b0e07010203040f0506000b20062802c00220123602000c0e0b20062802c00220123602000c0d0b20062802c0022012ac3703000c0c0b20062802c00220123b01000c0b0b20062802c00220123a00000c0a0b20062802c00220123602000c090b20062802c0022012ac3703000c080b20062802c0020b21094100210420092105024003400240024020042008470440200528020022070d01200421080b20084100480d092000412020102008200c105741002104034020042008460d0420092802002205450d0420054180014f0d02200620053a00f401200441016a220420084b0d042000200641f4016a41011054200941046a21090c000b000b20074180014f0d00200620073a00f401200441016a2104200541046a21050c010b0b000b2000412020102008200c4180c00073105720102008201020084a1b21040c060b4100210520062903c002212141e0200b210f20212016105b21090b200e410020084100481b0d02200c41ffff7b71200c200e1b210c20062903c0022121024020080d00202150450d0041002108201621090c010b2008202150201620096b6a2204200820044a1b21080b201621040b200420096b220a20082008200a481b220841ffffffff0720056b4a0d00200520086a2207201020102007481b2204200b4a0d002000412020042007200c10572000200f200510542000413020042007200c41808004731057200041302008200a4100105720002009200a10542000412020042007200c4180c0007310570c010b0b41f02241cb003602000b417f21120c010b410021120b200641e03c6a240020120bd30101057f024020002d00004120710d0020002802102203047f2003052000104f0d0120002802100b200028021422056b200249044020002001200220002802241104001a0f0b41002103024020002802504100480d0020012104034020022003460d01200341016a2103200220046a21062004417f6a220721042006417f6a2d0000410a470d000b20002001200220036b41016a220420002802241104002004490d01200220076a41016a2101200028021421052003417f6a21020b20052001200210171a2000200028021420026a3602140b0b5d01047f20002802002102034020022c000041506a220341094b450440417f21042000200241016a2202360200200141cc99b3e6004d047f417f20032001410a6c22016a200341ffffffff0720016b4a1b0520040b21010c010b0b20010ba00502017f017e230041106b220324000240200141776a220141114b0d00024002400240024002400240024002400240024002400240024002400240024002400240200141016b0e110102050304060708090a0b0c0d0e0f1011000b20022002280200220141046a360200200020012802003602000c110b20022002280200220141046a360200200020013402003703000c100b20022002280200220141046a360200200020013502003703000c0f0b20022002280200220141046a360200200020013402003703000c0e0b20022002280200220141046a360200200020013502003703000c0d0b2002200228020041076a417871220141086a360200200020012903003703000c0c0b20022002280200220141046a360200200020013201003703000c0b0b20022002280200220141046a360200200020013301003703000c0a0b20022002280200220141046a360200200020013000003703000c090b20022002280200220141046a360200200020013100003703000c080b2002200228020041076a417871220141086a360200200020012903003703000c070b20022002280200220141046a360200200020013502003703000c060b2002200228020041076a417871220141086a360200200020012903003703000c050b2002200228020041076a417871220141086a360200200020012903003703000c040b20022002280200220141046a360200200020013402003703000c030b20022002280200220141046a360200200020013502003703000c020b2002200228020041076a417871220141086a360200200320012b030010602000200341086a290300370308200020032903003703000c010b20022002280200410f6a417071220141106a3602002001290300210420002001290308370308200020043703000b200341106a24000b6a01017f23004180026b220524000240200220034c0d0020044180c004710d0020052001200220036b22024180022002418002491b104e21030340200241800249450440200020034180021054200241807e6a21020c010b0b20002003200210540b20054180026a24000b63002000420052200142ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b2002420052200342ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b720bef0902037f037e230041f0006b22052400200442ffffffffffffffffff00832108024002402001427f7c2209427f51200242ffffffffffffffffff0083220a2009200154ad7c427f7c220942ffffffffffffbfffff0056200942ffffffffffffbfffff00511b4504402003427f7c2209427f5220082009200354ad7c427f7c220942ffffffffffffbfffff0054200942ffffffffffffbfffff00511b0d010b200150200a42808080808080c0ffff0054200a42808080808080c0ffff00511b45044020024280808080808020842104200121030c020b200350200842808080808080c0ffff0054200842808080808080c0ffff00511b450440200442808080808080208421040c020b2001200a42808080808080c0ffff00858450044042808080808080e0ffff00200220012003852002200485428080808080808080807f85845022061b21044200200120061b21030c020b2003200842808080808080c0ffff008584500d012001200a8450044020032008844200520d0220012003832103200220048321040c020b200320088450450d0020012103200221040c010b20052003200120032001562008200a562008200a511b22061b37036020052004200220061b220842ffffffffffff3f8337036820052002200420061b220242ffffffffffff3f83220437035820052001200320061b22013703502002423088a741ffff017121072008423088a741ffff01712206450440200541e0006a106d21060b2007450440200541d0006a106d210720052903582104200529035021010b200520014203862203370350200520052903602209420386220a370360200520052903684203862009423d8884428080808080808004842209370368200520044203862001423d888442808080808080800484220437035820022008852101200620076b220704402005027e200741ff004d0440200541306a200320042007106c200541406b2003200441800120076b106b2005200541386a290300220437035820052903302005290340200541c8006a29030084420052ad840c010b420021042005420037035842010b22033703500b02402001427f5704402005200a20037d22013703602005200920047d200a200354ad7d2203370368200120038450044042002103420021040c030b200342ffffffffffffff03560d01200541206a2001200320012003106e41746a2207106b2005200541286a2903002203370368200520052903202201370360200620076b21060c010b20052003200a7c220137036020052001200354ad200420097c7c2204370368200442808080808080800883500440200421030c010b200520044201882203370368200520014201832004423f86200142018884842201370360200641016a21060b2008428080808080808080807f832104200641ffff014e0440200442808080808080c0ffff00842104420021030c010b410021070240200641004a0440200621070c010b200520012003410120066b106c200541106a20012003200641ff006a106b2005200541086a2903002203370368200520052903002005290310200541186a29030084420052ad8422013703600b200342038842ffffffffffff3f832004842007ad423086842003423d8620014203888422042001a7410771220641044bad7c2203200454ad7c2003420183420020064104461b220120037c2203200154ad7c21040b2000200337030020002004370308200541f0006a24000b4401017f230041106b2205240020052001200220032004428080808080808080807f851059200529030021012000200529030837030820002001370300200541106a24000b6602027f017e03402000428080808010544504402001417f6a220120002000420a80220442767e7ca74130723a0000200421000c010b0b2000a721020340200204402001417f6a220120022002410a6e220341766c6a4130723a0000200321020c010b0b20010b850101027f230041106b22032400027f41002001423088a741ffff0171220241ffff00490d001a41808080807841ffffffff0720014200531b20024181807f6a41204f0d001a20032000200142ffffffffffff3f8342808080808080c0008441ef800120026b106c4100200328020022026b200220014200531b0b2102200341106a240020020b810102027f017e230041106b220324002000027e200145044042000c010b200320012001411f7522026a2002732202ad4200200267220241d1006a106b200341086a29030042808080808080c00085419e800120026bad4230867c200141808080807871ad42208684210420032903000b37030020002004370308200341106a24000b6d01037f230041106b22022400024020014200530d002001423088a741ffff0171220441ffff00490d00417f210320044181807f6a411f4b0d0020022000200142ffffffffffff3f8342808080808080c0008441ef800120046b106c200228020021030b200241106a240020030b6902017f017e230041106b220224002000027e200145044042000c010b20022001ad420041f000200167411f7322016b106b200241086a29030042808080808080c00085200141ffff006aad4230867c210320022903000b37030020002003370308200241106a24000b830102027f027e230041106b220224002001bd22044280808080088321052000027e200442ffffffff078322045004404200210442000c010b2002200442002004a7672203413c6a106b200241086a29030042808080808080c000854181f80020036bad42308684210420022903000b37030020002004200584370308200241106a24000bce0201037f230041b0026b220124002001200036020c200120003602ac0220014180026a41004128104e1a200120012802ac023602a8024100200141a8026a200141e0006a20014180026a105341004e0440418c222802001a41c021280200210241882228020041004c044041c0212002415f713602000b027f0240024041f02128020045044041f02141d00036020041dc21410036020041d021420037030041ec21280200210341ec21200141106a3602000c010b41d0212802000d010b417f41c021104f0d011a0b41c021200141a8026a200141e0006a20014180026a10530b2100200241207121022003047f41c0214100410041e4212802001104001a41f021410036020041ec21200336020041dc21410036020041d021410036020041d421280200210341d421410036020041000520000b1a41c02141c0212802002002723602000b200141b0026a24000b3501017f230041106b22004180a30436020c41f422200028020c41076a417871220036020041f822200036020041fc223f003602000b10002002044020002001200210171a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001065200010326a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000bb50101027f20004504404100210041d822280200044041d822280200106721000b41d022280200044041d022280200106720007221000b41d422410136020041d422410036020020000f0b200028024c1a02402000280214200028021c460d0020004100410020002802241104001a20002802140d00417f0f0b20002802042201200028020822024704402000200120026bac410120002802281111001a0b2000410036021c200042003703102000420037020441000b040041000b2901017f200028021c2203200028021420036b1000200120021000200028021420026a200028021c6b0b0400427f0b5001017e0240200341c0007104402001200341406aad862102420021010c010b2003450d0020022003ad220486200141c00020036bad88842102200120048621010b20002001370300200020023703080b6001017e0240027e200341c0007104402002200341406aad8821014200210242000c010b2003450d01200241c00020036bad8620012003ad2204888421012002200488210242000b2104200120048421010b20002001370300200020023703080b5402037f027e230041106b22012400200120002903002204200041086a2202290300220520042005106e220341716a106b2002200141086a29030037030020002001290300370300200141106a2400411020036b0b1701017f2000200120015022021b792002410674ad7ca70b6102037f027e230041106b22012400200120002903002205200041086a220329030022042005200420045022021b792002410674ad7ca7220241716a106b200020012903003703002003200141086a290300370300200141106a2400411020026b0bdb0102017f027e4101210402402000420052200142ffffffffffffffffff0083220542808080808080c0ffff0056200542808080808080c0ffff00511b0d002002420052200342ffffffffffffffffff0083220642808080808080c0ffff0056200642808080808080c0ffff00511b0d00200020028420052006848450044041000f0b20012003834200590440417f21042000200254200120035320012003511b0d0120002002852001200385844200520f0b417f21042000200256200120035520012003511b0d00200020028520012003858442005221040b20040b0bd51815004180080b03617478004190080b9b05ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff696e666f006261642063617374006c696e6500200066696c65002f686f6d652f706c61746f6e2f2e6a656e6b696e732f776f726b73706163652f636f6e7472616374735f746573745f616c6179612f63617365732f436f6e7472616374734175746f54657374732f7372632f746573742f7265736f75726365732f636f6e7472616374732f7761736d2f636f6e74726163745f63726f73735f63616c6c2f436f6e747261637444656c656761746543616c6c657242795265742e6370700066756e630063616c6c466565640064656c65676174655f63616c6c65725f62797265742063616c6c2072656365697665725f627972657420696e666f206861732073756363657373656421002573090a0064656c65676174655f63616c6c65725f62797265742063616c6c2072656365697665725f627972657420696e666f20686173206661696c656421006d5f64617461002f7573722f6c6f63616c2f62696e2f2e2e2f706c61746f6e2e6364742f696e636c7564652f706c61746f6e2f766563746f725f7265662e68006f70657261746f725b5d005f69203c206d5f636f756e74006c697374537461636b206973206e6f7420656d70747900696e76616c6964206d6574686f640a00696e697400546865206e756d626572206f66206d6574686f6420706172616d657465727320646f6573206e6f74206d617463680a006765745f737461747573006e6f206d6574686f6420746f2063616c6c0a0041b60d0b8b10f03f000000000000244000000000000059400000000000408f40000000000088c34000000000006af8400000000080842e4100000000d01263410000000084d797410000000065cdcd41542122190d010203114b1c0c10040b1d121e27686e6f7071622005060f1314151a08160728241718090a0e1b1f252383827d262a2b3c3d3e3f43474a4d58595a5b5c5d5e5f60616364656667696a6b6c727374797a7b7c480000000000000000496c6c6567616c20627974652073657175656e636500446f6d61696e206572726f7200526573756c74206e6f7420726570726573656e7461626c65004e6f74206120747479005065726d697373696f6e2064656e696564004f7065726174696f6e206e6f74207065726d6974746564004e6f20737563682066696c65206f72206469726563746f7279004e6f20737563682070726f636573730046696c65206578697374730056616c756520746f6f206c6172676520666f7220646174612074797065004e6f207370616365206c656674206f6e20646576696365004f7574206f66206d656d6f7279005265736f75726365206275737900496e7465727275707465642073797374656d2063616c6c005265736f757263652074656d706f726172696c7920756e617661696c61626c6500496e76616c6964207365656b0043726f73732d646576696365206c696e6b00526561642d6f6e6c792066696c652073797374656d004469726563746f7279206e6f7420656d70747900436f6e6e656374696f6e2072657365742062792070656572004f7065726174696f6e2074696d6564206f757400436f6e6e656374696f6e207265667573656400486f737420697320646f776e00486f737420697320756e726561636861626c65004164647265737320696e207573650042726f6b656e207069706500492f4f206572726f72004e6f207375636820646576696365206f72206164647265737300426c6f636b20646576696365207265717569726564004e6f207375636820646576696365004e6f742061206469726563746f72790049732061206469726563746f727900546578742066696c652062757379004578656320666f726d6174206572726f7200496e76616c696420617267756d656e7400417267756d656e74206c69737420746f6f206c6f6e670053796d626f6c6963206c696e6b206c6f6f700046696c656e616d6520746f6f206c6f6e6700546f6f206d616e79206f70656e2066696c657320696e2073797374656d004e6f2066696c652064657363726970746f727320617661696c61626c65004261642066696c652064657363726970746f72004e6f206368696c642070726f636573730042616420616464726573730046696c6520746f6f206c6172676500546f6f206d616e79206c696e6b73004e6f206c6f636b7320617661696c61626c65005265736f7572636520646561646c6f636b20776f756c64206f63637572005374617465206e6f74207265636f76657261626c650050726576696f7573206f776e65722064696564004f7065726174696f6e2063616e63656c65640046756e6374696f6e206e6f7420696d706c656d656e746564004e6f206d657373616765206f6620646573697265642074797065004964656e7469666965722072656d6f76656400446576696365206e6f7420612073747265616d004e6f206461746120617661696c61626c65004465766963652074696d656f7574004f7574206f662073747265616d73207265736f7572636573004c696e6b20686173206265656e20736576657265640050726f746f636f6c206572726f7200426164206d6573736167650046696c652064657363726970746f7220696e20626164207374617465004e6f74206120736f636b65740044657374696e6174696f6e2061646472657373207265717569726564004d65737361676520746f6f206c617267650050726f746f636f6c2077726f6e67207479706520666f7220736f636b65740050726f746f636f6c206e6f7420617661696c61626c650050726f746f636f6c206e6f7420737570706f7274656400536f636b65742074797065206e6f7420737570706f72746564004e6f7420737570706f727465640050726f746f636f6c2066616d696c79206e6f7420737570706f7274656400416464726573732066616d696c79206e6f7420737570706f727465642062792070726f746f636f6c0041646472657373206e6f7420617661696c61626c65004e6574776f726b20697320646f776e004e6574776f726b20756e726561636861626c6500436f6e6e656374696f6e207265736574206279206e6574776f726b00436f6e6e656374696f6e2061626f72746564004e6f2062756666657220737061636520617661696c61626c6500536f636b657420697320636f6e6e656374656400536f636b6574206e6f7420636f6e6e65637465640043616e6e6f742073656e6420616674657220736f636b65742073687574646f776e004f7065726174696f6e20616c726561647920696e2070726f6772657373004f7065726174696f6e20696e2070726f6772657373005374616c652066696c652068616e646c650052656d6f746520492f4f206572726f720051756f7461206578636565646564004e6f206d656469756d20666f756e640057726f6e67206d656469756d2074797065004d756c7469686f7020617474656d70746564004e6f206572726f7220696e666f726d6174696f6e00000019000a00191919000000000500000000000009000000000b00000000000000001900110a191919030a0700011b090b18000009060b00000b0006190000001919190041d11d0b210e000000000000000019000a0d191919000d00000200090e00000009000e00000e00418b1e0b010c0041971e0b1513000000001300000000090c00000000000c00000c0041c51e0b01100041d11e0b150f000000040f0000000009100000000000100000100041ff1e0b011200418b1f0b1e11000000001100000000091200000000001200001200001a0000001a1a1a0041c21f0b0e1a0000001a1a1a000000000000090041f31f0b01140041ff1f0b151700000000170000000009140000000000140000140041ad200b01160041b9200b82011500000000150000000009160000000000160000160000303132333435363738394142434445462d2b2020203058307800286e756c6c29002d30582b30582030582d30782b307820307800696e6600494e46006e616e004e414e002e00256400417373657274696f6e206661696c65643a202573202825733a2025733a202564290a0041c0210b01050041cc210b01030041e4210b0a040000000500000070110041fc210b010200418c220b08ffffffffffffffff0041d0220b02c010"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_CALLFEED = "callFeed"; - - public static final String FUNC_GET_STATUS = "get_status"; - - protected ContractDelegateCallerByRet(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractDelegateCallerByRet(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall callFeed(String target_address, Uint64 gasValue) { - final WasmFunction function = new WasmFunction(FUNC_CALLFEED, Arrays.asList(target_address,gasValue), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callFeed(String target_address, Uint64 gasValue, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CALLFEED, Arrays.asList(target_address,gasValue), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_status() { - final WasmFunction function = new WasmFunction(FUNC_GET_STATUS, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallerByRet.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallerByRet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallerByRet.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallerByRet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static ContractDelegateCallerByRet load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractDelegateCallerByRet(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractDelegateCallerByRet load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractDelegateCallerByRet(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallerNoRet.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallerNoRet.java deleted file mode 100644 index a797f82745..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDelegateCallerNoRet.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractDelegateCallerNoRet extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001c7011c60017f017f60047f7f7f7f0060027f7f0060017f0060037f7f7f017f60037f7f7f0060027f7f017f60000060027e7e017f60047f7f7f7f017f60027f7e0060047f7e7e7f0060057f7f7f7f7f0060057f7e7e7e7e0060047e7e7e7e017f60017f017e60037f7e7f017e60037f7f7e0060047f7e7e7e0060027f7c0060037e7e7f006000017f60077f7f7f7f7f7f7f017f600a7f7f7f7f7f7f7f7f7f7f017f600b7f7f7f7f7f7f7f7f7f7f7f017f600a7f7f7f7f7e7f7e7f7f7f017f60017e017f60027e7f017f02a2020d03656e760c706c61746f6e5f6465627567000203656e760c706c61746f6e5f70616e6963000703656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000803656e760f706c61746f6e5f726c705f75313238001403656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001503656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000103656e760b706c61746f6e5f63616c6c001603656e760d706c61746f6e5f72657475726e00020362610711060000040a020a02020302000c0503020a06020300050202030603020404000704050f0f03000300000200061a0709030002060002090101001719180400080b12090500050c0e0d0d1b0802080213030705000001000004100b0b0008000e0405017001060605030100020608017f014180a3040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003c06696e766f6b65002e090b010041010b0545466566670aa4d901610400105f0bd31a020d7f017e230041d0016b22032400200341c0016a418008100f220528020420032d00c0012204410176200441017122061b21042005280208200541016a20061b210542a5c688a1c89ca7f94b21100340200404402004417f6a21042005300000201042b383808080207e852110200541016a21050c010b0b200341c8006a1010220428020421050240200441106a2802002206200441146a280200220749044020062005ad4220864201843702002004200428021041086a3602100c010b027f41002006200428020c22086b410375220941016a2206200720086b2207410275220820082006491b41ffffffff01200741037541ffffffff00491b2208450d001a200841037410110b2106200620094103746a22072005ad42208642018437020020072004280210200428020c220a6b22056b2109200620084103746a2106200741086a2107200541014e04402009200a200510121a0b20042006360214200420073602102004200936020c0b200341406b4100360200200341386a4200370300200341306a420037030020034200370328200341286a20101013200420032802281014200420101015200341b0016a2004101620032802b001210620034188016a2004101620034100360220200342003703180240200328028801200328028c016a20066b2205450d00200341186a2005101720054101480d002003200328021c20062005101220056a36021c0b200341286a4104721018200428020c22050440200420053602100b200341e0006a418508100f210f2001280208200141016a220e20012d0000220441017122051b21092001280204200441017620051b210a4100210441012106410021074100210802400340200641017141002004200a491b0440200420096a2d00002205415f6a41ff017141de004921062007200541bf7f6a41ff0171411a4972210720082005419f7f6a41ff0171411a49722108200441016a21040c0105024020062007200871410173712107200a450d00200a210403402004450d01200420096a21062004417f6a220521042006417f6a2d00004131470d000b0c030b0b0b417f21050b0240024002402007410171450d00200541076a200a4b0d00200541016a4102490d00200a41da004b0d0041002104200341003602c801200342003703c001200341c0016a200a2005417f7322086a10194101210602400240024003402004200128020420012d00002207410176200741017122071b20086a4f044002402006410171450d05200341b0016a101a220841016a210d410021040340200420054604402008280204220720032d00b00122044101762209200441017122061b2205200f28020420032d00602204410176200441017122041b470d05200f280208200f41016a20041b210420060d0220092105200d210603402005450440200921070c080b20062d000020042d0000470d06200441016a2104200641016a21062005417f6a21050c000b00052001280208200e20012d00004101711b20046a2c00002209412072210a200941bf7f6a411a49210c027f20032d00b0012206410171220b45044020064101762106410a0c010b200828020421062008280200417e71417f6a0b2107200a2009200c1b2109027f024002402006200746044020082007410120072007101b20032d00b001410171450d010c020b200b0d010b2003200641017441026a3a00b001200d0c010b2008200641016a36020420082802080b20066a220641003a0001200620093a0000200441016a21040c010b000b000b0520032802c00120046a2001280208200e20071b20056a20046a41016a2d00004190086a2d000022073a00002006200741ff0147712106200441016a21040c010b0b2005450d012008280208210603402005450d0220062d000020042d0000470d01200441016a2104200641016a21062005417f6a21050c000b000b200341306a4200370300200341386a410036020020034200370328200341003a003c20032802c0012204450d03200320043602c4010c030b410021042003410036025020034200370348200341c8006a2007410174410172101903402004200828020420032d00b0012205410176200541017122051b22064f450440200328024820046a2008280208200d20051b20046a2d000022054105763a00002003280248200828020420032d00b001220641017620064101711b6a20046a41016a2005411f713a0000200441016a21040c010b0b200328024820066a41003a0000200328024c2105024020032802c401220620032802c00122046b22074101480d0020072003280250220920056b4c0440034020042006460d02200520042d00003a00002003200328024c41016a220536024c200441016a21040c000b000b200341386a200341d0006a36020041002108200341003602342005200328024822016b210a200520076a20016b2207200920016b2209410174220120012007491b41ffffffff07200941ffffffff03491b220904402009101121080b2003200836022820032008200a6a22073602302003200820096a3602342003200736022c200341286a410472210803402004200646450440200720042d00003a00002003200328023041016a2207360230200441016a21040c010b0b200328024820052008101c0240200328024c220620056b220441004c0440200328023021050c010b2003200328023020052004101220046a2205360230200328024c21060b200328024821042003200328022c3602482003200436022c2003200536024c2003200636023020032802502105200320032802343602502003200536023420032004360228200341286a101d200328024c21050b2003420037024c2003280248210620034100360248200520066b21054101210403402005044020062d000041002004411d764101716b41b3c5d1d0027141002004411c764101716b41dde788ea037141002004411b764101716b41fab384f5017141002004411a764101716b41ed9cc2b20271410020044119764101716b41b2afa9db0371200441057441e0ffffff037173737373737321042005417f6a2105200641016a21060c010b0b20044101470d004100210b200341003602900120034200370388012003410036025020034200370348027f410020032802c401417a6a220620032802c00122046b2205450d001a200341c8006a2005101703402004200646450440200328024c220520042d00003a00002003200541016a36024c200441016a21040c010b0b2003280248210b200328024c0b200b6b210d20034190016a210e41002104410021094100210c02400340200c200d46044002402009410820046b7441ff0171452004410548712104200b04402003200b36024c0b20040d0020032802880121040c030b05200b200c6a2d0000200941057441e01f71722109200441056a21040340200441084e04402009200441786a2204762106200328028c0122072003280290012208490440200720063a00002003200328028c0141016a36028c010c02052003200e3602384100210520034100360234200720032802880122016b220741016a220a200820016b220841017422012001200a491b41ffffffff07200841ffffffff03491b220804402008101121050b20032005360228200520076a220720063a00002003200520086a3602342003200736022c2003200741016a36023020034188016a200341286a101e200341286a101d0c020b000b0b200c41016a210c0c010b0b200328028c0120032802880122046b4114470d00200341d8006a4100360200200341d0006a4200370300200342003703484100210403402004411446450440200341c8006a20046a41003a0000200441016a21040c010b0b200328028c0120032802880122056b2106410021040340024020042006460d00200441134b0d00200341c8006a20046a200420056a2d00003a0000200441016a21040c010b0b200341386a200341d8006a280200360200200341306a200341d0006a29030037030020032003290348370328200341013a003c200504402003200536028c010b20032802c00122040440200320043602c4010b200341c8006a4200101f200341c0016a2002101f200341286a20032802182204200328021c20046b20032802482205200328024c20056b20032802c001220520032802c40120056b100b210520032802c00122060440200320063602c4010b2003280248220604402003200636024c0b200545044020004200370310200341c8006a101a419009102041950910202205411a102120032005419509102041970910204195091020419c091020419509102041c00a1020419509102041c50a1020419509102041ce0a10202205280208200541016a20032d00484101711b360200200310220c050b20004201370310200341c8006a101a419009102041950910202205411e102120032005419509102041970910204195091020419c091020419509102041c00a1020419509102041c50a1020419509102041910b10202205280208200541016a20032d00484101711b360210200341106a10220c040b2004450d002003200436028c010b20032802c0012204450d00200320043602c4010b200341306a4200370300200341386a410036020020034200370328200341003a003c0b200328021821040b200404402003200436021c0b200341d0016a24000b1f0020004200370200200041086a41003602002000200120011023102420000b29002000410036020820004200370200200041001025200041146a41003602002000420037020c20000b0b002000410120001b102d0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bba0102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b024020024138490d002002210303402003450d01200241016a2102200341087621030c000b000b200241016a21020b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020026a3602000b1300200028020820014904402000200110250b0b9a0101037f2000420020011004200028020422026a102642002001200220002802006a10050340024020002802102202200028020c460d00200241786a2802004504401001200028021021020b200241786a22032003280200417f6a220436020020040d002000200336021020002002417c6a2802002202200028020420026b220310026a1026200220002802006a22022003200210030c010b0b0b2200200128020c200141106a28020047044041cc0b10270b200020012902003702000b2001017f2000200110112202360200200020023602042000200120026a3602080b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110282106200241186a200041086a3602002002410036021441002101200604402006101121010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a101e200241086a101d0c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000102920000b920101027f027f20002d0000410171044020002802080c010b200041016a0b2106416f2105200141e6ffffff074d0440410b20014101742205200120026a220120012005491b220541106a4170712005410b491b21050b2005101121012004044020012006200410600b200320046b22030440200120046a200420066a200310600b20002001360208200020054101723602000b270020022002280200200120006b22016b2202360200200141014e044020022000200110121a0b0b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b6701017f20002802002000280204200141046a101c200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b6302017f017e20012103034020035045044020034208882103200241016a21020c010b0b20004100360208200042003702002000200210192000280204417f6a21020340200150450440200220013c00002002417f6a2102200142088821010c010b0b0b0c002000200120011023102c0b950201047f230041306b22022400200241286a410036020020024200370320200241206a1029200241206a2002280220417e71417f6a410a20022d00204101711b102a200228022420022d0020220341017620034101711b2104200241206a41017221050340024020022001360200200241206a027f2002280228200520034101711b200441016a2002102b220341004e0440200320044d0d0220030c010b20044101744101720b2204102a20022d002021030c010b0b200241206a2003102a200241186a2204200241286a28020036020020022002290320370310200241206a102920002004280200200241106a41017220022d0010220441017122031b2002280214200441017620031b102c1a200241306a24000b3b01017f23004190086b220124002001200036020c200141106a418008418c0b200010441a200141106a200141106a1023100020014190086a24000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101121032000200236020420002004410172360200200020033602080b2003200120021060200220036a41003a00000b2f01017f200028020820014904402001102d200028020020002802041012210220002001360208200020023602000b0b3601017f200028020820014904402001102d200028020020002802041012210220002001360208200020023602000b200020013602040b0c00200020001023100010010b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b880201037f0240027f20002d000022034101712202044020002802040c010b20034101760b22042001490440200120046b2204450d01027f2002044020002802002203417e71417f6a210220002802040c010b410a210220034101760b2201027f200220016b200449047f20002002200120046a20026b20012001101b20002d00000520030b410171044020002802080c010b200041016a0b22036a41002004104b1a200120046a2101024020002d00004101710440200020013602040c010b200020014101743a00000b200120036a41003a00000f0b20020440200028020820016a41003a0000200020013602040f0b200020016a41016a41003a0000200020014101743a00000b0b2a01017f230041106b220324002003200236020c20002001419621200210442102200341106a240020020baf0201057f0240027f20002d00002205410171220604402000280204210420002802002205417e71417f6a0c010b20054101762104410a0b220320046b20024f04402002450d012004027f2006044020002802080c010b200041016a0b22036a200120021060200220046a2104024020002d00004101710440200020043602040c010b200020044101743a00000b200320046a41003a000020000f0b027f2005410171044020002802080c010b200041016a0b2107200220046a2105416f2106200341e6ffffff074d0440410b20034101742203200520052003491b220341106a4170712003410b491b21060b2006101121032004044020032007200410600b200320046a200120021060200020053602042000200641017236020020002003360208200320056a41003a00000b20000b9b0101047f230041106b220124002001200036020c2000047f41fc22200041086a2202411076220041fc222802006a220336020041f82241f822280200220420026a41076a417871220236020002400240200341107420024d044041fc22200341016a360200200041016a21000c010b2000450d010b200040000d0010010b20042001410c6a4104101241086a0541000b2100200141106a240020000bb80502087f017e230041f0006b22002400105f10062202102d22011007200041d8006a200041086a20012002102f2204410010300240200041d8006a1031220850044041e30b10270c010b41f30b1032200851044020041033200041d8006a103410350c010b41c50a10322008510440200041406b101a21062000420037035020041036410347044041f80b10270b200041d8006a2004410110300240200041d8006a1037450440200041306a101a1a0c010b200041206a200041d8006a1038200041d8006a1039210102400240024002402000280220220204402000280224220320014f0d010b41002102200041386a410036020020004200370330410021030c010b200041386a4100360200200042003703302002200320012001417f461b22056a21032005410a4b0d010b200020054101743a0030200041306a41017221010c010b200541106a4170712207101121012000200536023420002007410172360230200020013602380b034020022003470440200120022d00003a0000200141016a2101200241016a21020c010b0b200141003a00000b024020002d0040410171450440200041003b01400c010b200028024841003a00002000410036024420002d0040410171450d00200041003602400b200041c8006a200041386a28020036020020002000290330370340200041306a1029200041d8006a2004410210302000200041d8006a1031370350200041d8006a10342102200041206a2006103a210120002903502108200041d8006a200041306a2001103a2008100e200210350c010b41a80c1032200851044020041033200041406b1034210120002903502108200041d8006a101022022008103b1014200220081015200041306a2002101620002802302000280234100c200228020c22030440200241106a20033602000b200110350c010b41b30c10270b103c200041f0006a24000b0c00200020012002411c103d0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104020012003280208200328020c104136020c200320011040410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114103d1a200341106a24000f0b20032001104041002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104110632001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850202047f017e230041106b220224002000103e024002402000280204450d002000103e0240200028020022032c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d047f100120002802000520030b2d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d047f100120002802000520030b20016a2d0000450d010b2000103f0d0020002802040d010b41c60c10270b200241086a20001038200228020c220041094f044041c60c10270b200228020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200241106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b110020001036410147044041f80b10270b0bf00101067f230041d0006b22012400200042b388bc9ee59b8a9d1b37030820004200370300200141386a1010220420002903081015200141306a2004101602402001280230220520012802342206100822024504400c010b2001410036022820014200370320200141206a200210192005200620012802202205200128022420056b1009417f4704402000200141086a2001280220220341016a20012802242003417f736a102f1031370310200221030b20012802202202450d00200120023602240b200428020c22020440200441106a20023602000b2003450440200020002903003703100b200141d0006a240020000b9c0201077f230041d0006b22022400200241386a101022042000290308103b1014200420002903081015200241306a20041016200241186a101021012000290310103b210641011011220341fe013a0000200128020c200141106a28020047044041cc0b10270b2001280204220541016a220720012802084b047f20012007102520012802040520050b20012802006a2003410110121a2001200128020441016a3602042001200341016a200620036b6a10142001200029031010152002280234210020022802302103200241106a2001101620022802102105200241086a20011016200320002005200228020c100a200128020c22000440200120003602100b200428020c22010440200441106a20013602000b200241d0006a24000b870101047f230041106b2201240002402000103f450d002000280204450d0020002802002d000041c001490d00200141086a20001040200128020c210003402000450d01200141002001280208220320032000104122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b1900200028020445044041000f0b200010422d000041c001490be30101047f027f200110392203200128020422024b047f41c60c102720012802040520020b04404100200110422c0000417f4a0d011a0b0240024020011037450d00200110422d000041b801490d00200110422d000041c97e6a21020c010b410021022001103f450d00200110422d000041f801490d00200110422d000041897e6a21020b200241016a0b21022000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000bff0201037f200028020445044041000f0b2000103e41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10010b20020b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102420000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200010132001280200210220014104721018200141206a240020020b880101037f41dc22410136020041e0222802002100034020000440034041e42241e4222802002201417f6a2202360200200141014845044041dc224100360200200020024102746a22004184016a280200200041046a28020011030041dc22410136020041e02228020021000c010b0b41e422412036020041e022200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106120024f0d002003410471044010010c010b200042003702000b02402003411071450d002000106120024d0d0020034104710440100120000f0b200042003702000b20000b4101017f200028020445044010010b0240200028020022012d0000418101470d00200028020441014d047f100120002802000520010b2c00014100480d0010010b0b1900200028020445044041000f0b200010422d000041bf014b0b2101017f20011039220220012802044b044010010b2000200120011062200210630b2701017f230041206b22022400200241086a200020014114103d10612100200241206a240020000b2e01017f02402000280200220104402000280204450d0120010f0b41cf0c41b4011043000b419a0d41b5011043000b3501017f230041106b220224002002200136020c2002418f0d360208200241d60c360204200220003602002002105e410010641a000bfa16030f7f027e037c230041306b220a2400200a200236020c4101410220001b210b200a410f6a21110340410020066b21070240034020022d00002204450d01200441254704402004411874411875200020062001200b110100200a200241016a220236020c2007417f6a2107200641016a21060c010b0b200a200241016a220236020c410021040340024002400240024020022c0000220941556a220541054b0440200941606a220541034b0d0102400240200541016b0e03030301000b200a200241016a220236020c200441087221040c060b200a200241016a220236020c200441107221040c050b200541016b0e050002000003010b0240200941506a41ff017141094d0440200a410c6a1047210d200a28020c21020c010b4100210d2009412a470d0020032802002105200a200241016a220236020c2004410272200420054100481b210420052005411f7522096a200973210d200341046a21030b41002109024020022d0000412e470d00200a200241016a220836020c200441800872210420022d0001220541506a41ff017141094d0440200a410c6a10472109200a28020c21020c010b200541ff0171412a470440200821020c010b20032802002105200a200241026a220236020c20054100200541004a1b2109200341046a21030b0240024020022c000041987f6a411f77220541094b0d000240024002400240200541016b0e09020004040403040403010b200a200241016a220836020c20022d0001220541ec004704402004418002722104200821020c050b200a200241026a220236020c20044180067221040c030b200a200241016a220836020c20022d0001220541e8004704402004418001722104200821020c040b200a200241026a220236020c200441c0017221040c020b200a200241016a220236020c20044180047221040c010b200a200241016a220236020c20044180027221040b20022d000021050b0240024002400240024002400240024002402005411874411875220c419e7f6a220841164b0440200c4125470440200c41c600460d07200c41d800470d020c080b4125200020062001200b1101000c020b200841016b0e15040600050000060000000000060200000300060000060b200c200020062001200b1101000b200a200241016a220236020c200641016a21060c0c0b200b20002006200120032802004100411020094108200441217210482106200a200241016a220236020c200341046a21030c0b0b20032802002205417f6a21070340200741016a22072d00000d000b200720056b2207200920072009491b2007200441800871220c410a761b210802402004410271220e0440200621040c010b410021070340200620076a2104200720086a220f200d4f4504404120200020042001200b110100200741016a21070c010b0b200f41016a21080b200341046a21030340024020052d00002206450d00200c04402009450d012009417f6a21090b2006411874411875200020042001200b110100200441016a2104200541016a21050c010b0b200e450440200421060c050b410021070340200420076a2106200720086a200d4f0d054120200020062001200b110100200741016a21070c000b000b410121070240200441027122090440200621050c010b410121040340200420066a417f6a21052004200d4f450440200441016a21044120200020052001200b1101000c010b0b200441016a21070b20032c0000200020052001200b110100200541016a21062009450d0203402007200d4f0d034120200020062001200b110100200641016a2106200741016a21070c000b000b200941062004418008711b220941037441b00d6a2108200341076a417871220e2b0300211541002105034002402009410a490d002005411f4b0d00200a41106a20056a41303a0000200841786a21082009417f6a2109200541016a21050c010b0b027f4400000000000000002015a1201520154400000000000000006322101b22159944000000000000e0416304402015aa0c010b4180808080780b2103027f20152003b7a120082b03002217a2221644000000000000f041632016440000000000000000667104402016ab0c010b41000b210c02402016200cb8a1221644000000000000e03f644101734504402017200c41016a220cb8654101730d01200341016a21034100210c0c010b201644000000000000e03f620d00200c45200c41017172200c6a210c0b4100210802402015440000c0ffffffdf41640d00024020090440200520096a41606a2112034002402005412046044041202105201221090c010b200a41106a20056a200c200c410a6e220841766c6a4130723a0000200541016a21052009417f6a2109200c41094b210f2008210c200f0d010b0b034002402005411f4b22080d002009450d00200a41106a20056a41303a0000200541016a21052009417f6a21090c010b0b20080d01200a41106a20056a412e3a0000200541016a21050c010b20152003b7a1221544000000000000e03f64410173450440200341016a21030c010b20032003201544000000000000e03f61716a21030b03402005411f4d0440200a41106a20056a20032003410a6d220941766c6a41306a3a0000200541016a2105200341096a210820092103200841124b0d010b0b20044103712109034002402005411f4b0d0020094101470d002005200d4f0d00200a41106a20056a41303a0000200541016a21050c010b0b20044101712108200441027121090240200d2004410c714100472010726b20052005200d461b2205411f4b0d0002402010410173450440200a41106a20056a412d3a00000c010b20044104710440200a41106a20056a412b3a00000c010b2004410871450d01200a41106a20056a41203a00000b200541016a21050b024020082009720440200621080c010b410021040340200420066a2108200420056a200d4f0d014120200020082001200b110100200441016a21040c000b000b200720086a2106034020050440200520116a2c0000200020082001200b110100200641016a21062005417f6a2105200841016a21080c010b0b2009450d0003402006200d4f0d014120200020082001200b110100200641016a2106200841016a21080c000b000b200e41086a2103200a200241016a220236020c200821060c080b41102108024002400240200541ff0171220741d8004622050d00200741f800460d00200741ef00460440410821080c020b200741e200460440410221080c020b2004416f712104410a21080b2004412072200420051b2104200741e400460d01200741e900460d010b200441737121040b2004417e7120042004418008711b2104200741e900474100200741e400471b4504402004418004710440200b200020062001200341076a417871220729030022132013423f8722147c2014852013423f88a72008ad2009200d200410492106200741086a21030c030b2004418002710440200b200020062001200328020022072007411f7522056a2005732007411f7620082009200d2004104821060c020b200b200020062001027f200441c00071044020032c00000c010b2003280200220741107441107520072004418001711b0b2207411f75220520076a2005732007411f7620082009200d2004104821060c010b2004418004710440200b200020062001200341076a417871220729030041002008ad2009200d200410492106200741086a21030c020b2004418002710440200b2000200620012003280200410020082009200d2004104821060c010b200b200020062001027f200441c00071044020032d00000c010b2003280200220741ffff037120072004418001711b0b410020082009200d2004104821060b200341046a21030b200a200241016a220236020c0c050b200a200241016a220236020c200441047221040c020b200a200241016a220236020c200441027221040c010b200a200241016a220236020c200441017221040c000b000b0b4100200020062001417f6a20062001491b2001200b110100200a41306a240020060b140020022003490440200120026a20003a00000b0b0300010b4501037f20002802002101034020012d000041506a41ff017141094b4504402000200141016a220336020020012c00002002410a6c6a41506a2102200321010c010b0b20020bad0101067f230041206b220b240020092009416f7120041b210c02402004450440200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a2004200420066e220e20066c6b220a4130200d200a41187441808080d000481b6a3a0000200941016a210a2009411e4b0d01200420064f210f200a2109200e2104200f0d000b0b2000200120022003200b200a2005200620072008200c104a2104200b41206a240020040bba0102057f017e230041206b220b240020092009416f712004420052220a1b210c0240200a4504404100210a200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a4130200d20042004200680220f20067e7da7220a41187441808080d000481b200a6a3a0000200941016a210a2009411e4b0d01200420065a210e200a2109200f2104200e0d000b0b2000200120022003200b200a20052006a720072008200c104a2109200b41206a240020090bf20401037f200a410271210d2005210b02400340200d0d010240200b20084f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410371410147210c2005210b02400340200c0d010240200b20094f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410171210c024002400240200a41107104400240200a418008710d002005450d002005200847410020052009471b0d002005417e6a2005417f6a220b200b1b200b20074110461b21050b0240200741104604400240200a412071220b0d002005411f4b0d00200420056a41f8003a0000200541016a21050c020b200b450d012005411f4b0d01200420056a41d8003a0000200541016a21050c010b20074102470d002005411f4b0d00200420056a41e2003a0000200541016a21050b2005411f4b0d01200420056a41303a0000200541016a21050c010b20050d00410021050c010b2009200a410c714100472006726b200520052009461b2205411f4b0d010b20060440200420056a412d3a0000200541016a21050c010b200a4104710440200420056a412b3a0000200541016a21050c010b200a410871450d00200420056a41203a0000200541016a21050b2002210b0240200c200d720d002005210c0340200c20094f0d0141202001200b20032000110100200c41016a210c200b41016a210b0c000b000b2004417f6a210c037f2005047f2005200c6a2c00002001200b200320001101002005417f6a2105200b41016a210b0c01050240200d450d00410020026b210503402005200b6a20094f0d0141202001200b20032000110100200b41016a210b0c000b000b200b0b0b0bfc0202027f017e02402002450d00200020013a0000200020026a2203417f6a20013a000020024103490d00200020013a0002200020013a00012003417d6a20013a00002003417e6a20013a000020024107490d00200020013a00032003417c6a20013a000020024109490d002000410020006b41037122046a2203200141ff017141818284086c22013602002003200220046b417c7122046a2202417c6a200136020020044109490d002003200136020820032001360204200241786a2001360200200241746a200136020020044119490d002003200136021820032001360214200320013602102003200136020c200241706a20013602002002416c6a2001360200200241686a2001360200200241646a20013602002001ad220542208620058421052004200341047141187222016b2102200120036a2101034020024120490d0120012005370300200141186a2005370300200141106a2005370300200141086a2005370300200141206a2101200241606a21020c000b000b20000b5901017f200020002802482201417f6a20017236024820002802002201410871044020002001412072360200417f0f0b200042003702042000200028022c220136021c200020013602142000200120002802306a36021041000b4402017f017e200142ffffffffffff3f832103027f2001423088a741ffff0171220241ffff01470440410420020d011a410241032000200384501b0f0b2000200384500b0bc50101037f230041206b2204240002402002423088a7220641ffff0171220541ffff01460d0020054504402003027f41002001200242004200106d450d001a20042001200242808080808080c0bbc000104f200441106a2004290300200441086a2903002003104e2004290318210220042903102101200328020041887f6a0b3602000c010b200320054182807f6a360200200242ffffffffffff3f832006418080027141feff0072ad4230868421020b2000200137030020002002370308200441206a24000ba60a02047f107e230041e0006b220424002004200242ffffffffffff3f83370358200420013703502004200342ffffffffffff3f83220c370348200442003703402002200385428080808080808080807f8321090240027e02400240024002402002423088a741ffff01712206417f6a41fdff014d41002003423088a741ffff01712205417f6a41feff01491b0d00200150200242ffffffffffffffffff0083220a42808080808080c0ffff0054200a42808080808080c0ffff00511b450440200242808080808080208421090c060b4101200342ffffffffffffffffff0083220242808080808080c0ffff0054200242808080808080c0ffff00511b45044020034280808080808020842109420021010c060b2001200a42808080808080c0ffff008584500440200250450d0242808080808080e0ffff0021090c030b200242808080808080c0ffff00855004402001200a84210242002101200250044042808080808080e0ffff0021090c070b200942808080808080c0ffff008421090c060b2001200a842103420021012003500d052002500d05200a42ffffffffffff3f580440200441d0006a106c21070b200242ffffffffffff3f560d00200441406b106c20076a21072004290348210c200429034021080b2004200837034020042004290358220d42808080808080c00084220f3703582004200c42808080808080c0008422103703482004290350220342208822022008420f86428080feff0f8322017e2211200342ffffffff0f832203200842118842ffffffff0f83220a7e7c220e4220862212200120037e7c220b201254ad200d42ffffffff0f83220d20017e22142003200c420f8620084231888442ffffffff0f8322087e7c22122002200a7e7c2213200e201154ad422086200e422088847c220e2001200f422088220c7e2215201042118842ffffffff0f83220120037e7c220f200a200d7e7c2210200220087e7c22114220867c22167c2103200520066a20076a4181807f6a21050240200a200c7e22172008200d7e7c220a201754ad200a200120027e7c2202200a54ad7c2001200c7e7c2001200d7e22012008200c7e7c2208200154ad4220862008422088847c200220084220867c2208200254ad7c20082012201454ad2013201254ad7c7c2202200854ad7c20022011201054ad200f201554ad2010200f54ad7c7c4220862011422088847c2208200254ad7c2008200e201354ad2016200e54ad7c7c2202200854ad7c220842808080808080c0008350450440200541016a21050c010b200b423f88210120084201862002423f8884210820024201862003423f88842102200b420186210b200120034201868421030b200541ffff014e0440200942808080808080c0ffff008421090c020b200541004a0d02410120056b220641ff004b0d01200441106a200b200320061069200441206a20022008200541ff006a22051068200441306a200b200320051068200420022008200610692004290330200441386a29030084420052ad200429032020042903108484210b200441286a290300200441186a29030084210320042903002102200441086a2903000c030b200942808080808080c0ffff008421090b420021010c020b200842ffffffffffff3f832005ad423086840b2009842109200b502003427f552003428080808080808080807f511b4504402009200242017c2201200254ad7c21090c010b200b2003428080808080808080807f858450450440200221010c010b2009200220024201837c2201200254ad7c21090b2000200937030820002001370300200441e0006a24000b9a2f021d7f047e230041e03c6b2206240020064199213602d002200641b6026a211d419e7d20066b211e200641df026a211f200641e0026a410872211c200641e0026a410972211820064190396a2120200641e0026a211a200641b7026a211602400240024003400240200441ffffffff0720126b4a0d00200420126a2112024002400240027f0240027f02400240024002400240024002400240024002400240024002400240024020062802d00222092d000022070440410021042009210503400240200741ff01712207450d0020074125460d00200441016a210420052d00012107200541016a21050c010b0b200620053602d0022004210503400240200520096a22072d00004125470d00200741016a2d00004125470d00200441016a2104200541026a21050c010b0b200620073602d002200441ffffffff0720126b220b4a0d162000044020002009200410510b20040d17417f210f200741016a22042c000041506a220541094d0440200741036a2004200741026a2d000041244622071b21042005417f20071b210f4101201720071b21170b4100210503400240200620043602d00220042c0000220a41606a2207411f4b0d00410120077422074189d10471450d00200441016a2104200520077221050c010b0b0240200a412a460440027f0240200441016a220a2c000041506a220741094b0d00200441026a2d00004124470d00200320074102746a410a360200200441036a210a41012117200441016a2c000041047420026a41807a6a2802000c010b20170d0620004504402006200a3602d00241002117410021100c030b20012001280200220441046a3602004100211720042802000b21102006200a3602d0022010417f4a0d01410020106b211020054180c0007221050c010b200641d0026a105222104100480d1720062802d002210a0b41002104417f2108027f200a2d0000412e470440200a210741000c010b200a2d0001412a460440027f0240200a2c000241506a220741094b0d00200a2d00034124470d00200320074102746a410a360200200a41046a2107200a2c000241047420026a41807a6a2802000c010b20170d06200a41026a210741002000450d001a20012001280200220a41046a360200200a2802000b2108200620073602d0022008417f73411f760c010b2006200a41016a3602d002200641d0026a1052210820062802d002210741010b210e03402004210a20072c000041bf7f6a220441394b0d03200741016a2107200a413a6c20046a41801d6a2d00002204417f6a4108490d000b200620073602d0022004450d030240024002402004411b460440200f417f4c0d010c070b200f4100480d012003200f4102746a200436020020062002200f4104746a22042903003703c0022006200441086a2903003703c8020b410021042000450d190c010b2000450d1a200641c0026a2004200110530b200541ffff7b712211200520054180c000711b210c2007417f6a2c00002204415f7120042004410f714103461b2004200a1b221341ad7f6a220441254d0d01201341bf7f6a220441064b0d040240200441016b0e03050005060b200641003602fc01200620062903c0023e02f8012006200641f8016a3602c002417f2108200641f8016a0c100b20000d192017450d18200241106a2107200341046a210541012104034002402004410a47047f200528020022090d01200405410a0b41027421040340200441046a2205412c460440410121120c1d0b200320046a2107200521042007280200450d000b0c040b2007200920011053200741106a2107200541046a2105200441016a21040c000b000b200441016b0e25020202020b0202020202020202030207080303030208020202050c090a020204020f02020b0d0b200620073602d0020b41f02241163602000c140b4100210541e020210f0c0f0b2008417f4c4100200e1b0d1020062903c002212220062903c80221212006410036028c03027f2021427f5704402021428080808080808080807f8521214101211541f1200c010b200c4180107104404101211541f4200c010b41f72041f220200c41017122151b0b211b024020222021104d41014c0440200041202010201541036a2204201110542000201b201510512000418c21419021201341207141057622051b41842141882120051b202220212022202110551b410310512000412020102004200c4180c0007310542010200420042010481b21040c010b200641e0016a202220212006418c036a104e200641d0016a20062903e001222120062903e801222220212022105620062903d0012221200641d8016a290300222242004200106d04402006200628028c03417f6a36028c030b2013412072221941e100460440201b41096a201b201341207122091b210e02402008411a4b0d00411b20086b450d00200841656a210442808080808080c081c000212342002124034020040440200641f0006a2024202342808080808080c081c000104f200441016a2104200641f8006a2903002123200629037021240c010b0b200e2d0000412d460440200641406b20212022428080808080808080807f85202420231057200641306a202420232006290340200641c8006a2903001056200641386a290300428080808080808080807f852122200629033021210c010b200641e0006a20212022202420231056200641d0006a2006290360200641e8006a290300202420231057200641d8006a2903002122200629035021210b2015410272210a201a200628028c0322052005411f7522046a200473ad201a10582204460440200641303a00df02201f21040b2004417e6a220f2013410f6a3a00002004417f6a412d412b20054100481b3a0000200c410871210b200641e0026a21050340200641206a2021202210592207105a200641106a202120222006290320200641286a290300105720062006290310200641186a29030042808080808080c081c000104f20052204200741d0206a2d00002009723a0000200641086a2903002122200629030021210240200441016a2205200641e0026a6b4101470d000240200b0d00200841004a0d002021202242004200106d450d010b2004412e3a0001200441026a21050b2021202242004200106d0d000b417f210441fdffffff07200a201a200f6b22096a220b6b2008480d01200041202010200b200841026a2005200641e0026a6b22072005201e6a2008481b200720081b22056a2204200c10542000200e200a10512000413020102004200c418080047310542000200641e0026a2007105120004130200520076b4100410010542000200f200910512000412020102004200c4180c0007310542010200420042010481b21040c010b2008410048210402402021202242004200106d450440200628028c03210e0c010b200641c0016a2021202242808080808080c08dc000104f2006200628028c0341646a220e36028c03200641c8016a290300212220062903c00121210b4106200820041b210d20064190036a2020200e4100481b221421050340200641b0016a20212022105b2204105c200641a0016a2021202220062903b001200641b8016a290300105720064190016a20062903a001200641a8016a2903004280808080e59ab78ec000104f20052004360200200541046a2105200629039001222120064198016a290300222242004200106d0d000b2014210b0340200e41014e04402005417c6a2104200e411d200e411d481b2209ad21224100210703402004200b4f044020042007ad20043502002022867c22212021428094ebdc038022214280ec94a37c7e7c3e02002004417c6a21042021a721070c010b0b20070440200b417c6a220b20073602000b034020052204200b4b04402004417c6a2205280200450d010b0b200e20096b210e200421050c010b0b2006200e36028c03200d412d6a41096e41016a21110340200e417f4c044041002107418094ebdc0341094100200e6b200e4177481b220a762108417f200a74417f73210f200b2104034020042005490440200420042802002209200a7620076a360200200441046a21042009200f7120086c21070c010b0b2014200b200b41046a200b2802001b220b201941e600461b220420114102746a2007044020052007360200200541046a21050b2005200520046b41027520114a1b2105200a200e6a210e0c010b0b2006200e36028c03410021070240200b20054f0d002014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200d41002007201941e600461b6b201941e70046220a200d410047716b2204200520146b41027541096c41776a4804402004418080096a2204200441096d220841776c6a2104410a21090340200441074c04402009410a6c2109200441016a21040c010b0b200841027420146a220f4184807c6a22082802002204200420096e221120096c220e6b2104024041002005200f4188807c6a22194620041b0d00024020114101714504404280808080808080b8c0002121420021222008200b4d0d012009418094ebdc03470d012008417c6a2d0000410171450d010b4280808080808080b8c0002121420121220b4280808080808080ff3f42808080808080c0ff3f42808080808080e0ff3f200420094101762211461b42808080808080e0ff3f20052019461b20042011491b212302402015450d00201b2d0000412d470d002023428080808080808080807f8421234280808080808080b84021210b20064180016a202220214200202310562008200e36020020062903800120064188016a29030020222021106d450d0020082009200e6a2207360200200f4180807c6a210403402007418094ebdc034f0440200441046a41003602002004200b490440200b417c6a220b41003602000b2004200428020041016a22073602002004417c6a21040c010b0b200441046a21082014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200841046a22042005200520044b1b21050b027f0340410020052209200b4d0d011a2009417c6a2205280200450d000b41010b210e0240200a450440200c41087121080c010b2007417f73417f200d4101200d1b220420074a2007417b4a7122051b20046a210d417f417e20051b20136a2113200c41087122080d00410921050240200e450d002009417c6a280200220a450d0041002105410a21040340200a2004700d01200541016a21052004410a6c21040c000b000b200920146b41027541096c41776a2104201341207241e60046044041002108200d200420056b22044100200441004a1b2204200d2004481b210d0c010b41002108200d200420076a20056b22044100200441004a1b2204200d2004481b210d0b417f2104200d41fdffffff0741feffffff072008200d72220f1b4a0d00200d200f4100476a41016a21110240201341207241e600472219450440200741ffffffff0720116b4a0d0220074100200741004a1b210a0c010b20072007411f7522056a200573ad201a1058417e6a21050340201a20056b220a417e6a41014c0440200541016a41303a00002005417f6a21050c010b0b200520133a0000200541016a412d412b20074100481b3a0000200a41ffffffff0720116b4a0d010b200a20116a2207201541ffffffff07734a0d00200041202010200720156a2211200c10542000201b201510512000413020102011200c41808004731054024020194504402014200b200b20144b1b220721050340200520144d0440200535020020181058210402402005200747044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b20042018470d00200641303a00e802201c21040b20002004201820046b1051200541046a21050c010b0b200f04402000419421410110510b03400240200520094f0d00200d4101480d00200535020020181058210403402004200641e0026a4b04402004417f6a220441303a00000c010b0b20002004200d4109200d4109481b1051200d41776a210d200541046a21050c010b0b20004130200d41096a4109410010540c010b2009200b41046a200e1b210a200b2107034002402007200a4f0d00200d4100480d0020182007350200201810582204460440200641303a00e802201c21040b02402007200b47044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b2000200441011051200441016a21042008454100200d4101481b0d002000419421410110510b20002004201820046b2209200d200d20094a1b1051200741046a2107200d20096b210d0c010b0b20004130200d41126a41124100105420002005201a20056b10510b2000412020102011200c4180c0007310542010201120112010481b21040b200441004e0d110c100b20062802c002220441ea2020041b21090c010b4100210441f0222802002105037f200441d80046047f41d80005200441800e6a2d0000200546047f200405200441016a21040c020b0b0b210741e00e210903402007450d01034020092d00002104200941016a2205210920040d000b2007417f6a2107200521090c000b000b4100210541ffffffff07200820084100481b210a0240024003400240200520096a21042005200a46220f0d002004410371450d0020042d0000450d02200541016a21050c010b0b41002107200f0d01200a20056b210720042d0000450d01200520096a2104034020074104490d0220042802002205417f73200541fffdfb776a71418081828478710d022007417c6a2107200441046a21040c000b000b200a20056b21070b03400240410021052007450440410021040c010b20042d0000450d002007417f6a2107200441016a21040c010b0b2009200420096b200a20041b22076a210441e020210f2008417f4a04402011210c200721080c0d0b2011210c2007210820042d0000450d0c0c0d0b200620062903c0023c00b6024100210541e020210f41012108201d2109201621042011210c0c0b0b20062903c0022221427f5704402006420020217d22213703c0024101210541e0200c080b200c4180107104404101210541e1200c080b41e22041e020200c41017122051b0c070b20062903c00221212016210903402021504504402009417f6a22092021a74107714130723a0000202142038821210c010b0b4100210541e020210f200c410871450d072008201620096b220441016a200820044a1b21080c070b20084108200841084b1b2108200c410872210c41f80021130b2013412071210420062903c00221212016210903402021504504402009417f6a22092021a7410f7141d0206a2d00002004723a0000202142048821210c010b0b4100210541e020210f200c410871450d0520062903c002500d05201341047541e0206a210f410221050c050b41002104200a41ff0171220541074b0d080240024002400240024002400240200541016b0e07010203040f0506000b20062802c00220123602000c0e0b20062802c00220123602000c0d0b20062802c0022012ac3703000c0c0b20062802c00220123b01000c0b0b20062802c00220123a00000c0a0b20062802c00220123602000c090b20062802c0022012ac3703000c080b20062802c0020b21094100210420092105024003400240024020042008470440200528020022070d01200421080b20084100480d092000412020102008200c105441002104034020042008460d0420092802002205450d0420054180014f0d02200620053a00f401200441016a220420084b0d042000200641f4016a41011051200941046a21090c000b000b20074180014f0d00200620073a00f401200441016a2104200541046a21050c010b0b000b2000412020102008200c4180c00073105420102008201020084a1b21040c060b4100210520062903c002212141e0200b210f20212016105821090b200e410020084100481b0d02200c41ffff7b71200c200e1b210c20062903c0022121024020080d00202150450d0041002108201621090c010b2008202150201620096b6a2204200820044a1b21080b201621040b200420096b220a20082008200a481b220841ffffffff0720056b4a0d00200520086a2207201020102007481b2204200b4a0d002000412020042007200c10542000200f200510512000413020042007200c41808004731054200041302008200a4100105420002009200a10512000412020042007200c4180c0007310540c010b0b41f02241cb003602000b417f21120c010b410021120b200641e03c6a240020120bd30101057f024020002d00004120710d0020002802102203047f2003052000104c0d0120002802100b200028021422056b200249044020002001200220002802241104001a0f0b41002103024020002802504100480d0020012104034020022003460d01200341016a2103200220046a21062004417f6a220721042006417f6a2d0000410a470d000b20002001200220036b41016a220420002802241104002004490d01200220076a41016a2101200028021421052003417f6a21020b20052001200210121a2000200028021420026a3602140b0b5d01047f20002802002102034020022c000041506a220341094b450440417f21042000200241016a2202360200200141cc99b3e6004d047f417f20032001410a6c22016a200341ffffffff0720016b4a1b0520040b21010c010b0b20010ba00502017f017e230041106b220324000240200141776a220141114b0d00024002400240024002400240024002400240024002400240024002400240024002400240200141016b0e110102050304060708090a0b0c0d0e0f1011000b20022002280200220141046a360200200020012802003602000c110b20022002280200220141046a360200200020013402003703000c100b20022002280200220141046a360200200020013502003703000c0f0b20022002280200220141046a360200200020013402003703000c0e0b20022002280200220141046a360200200020013502003703000c0d0b2002200228020041076a417871220141086a360200200020012903003703000c0c0b20022002280200220141046a360200200020013201003703000c0b0b20022002280200220141046a360200200020013301003703000c0a0b20022002280200220141046a360200200020013000003703000c090b20022002280200220141046a360200200020013100003703000c080b2002200228020041076a417871220141086a360200200020012903003703000c070b20022002280200220141046a360200200020013502003703000c060b2002200228020041076a417871220141086a360200200020012903003703000c050b2002200228020041076a417871220141086a360200200020012903003703000c040b20022002280200220141046a360200200020013402003703000c030b20022002280200220141046a360200200020013502003703000c020b2002200228020041076a417871220141086a360200200320012b0300105d2000200341086a290300370308200020032903003703000c010b20022002280200410f6a417071220141106a3602002001290300210420002001290308370308200020043703000b200341106a24000b6a01017f23004180026b220524000240200220034c0d0020044180c004710d0020052001200220036b22024180022002418002491b104b21030340200241800249450440200020034180021051200241807e6a21020c010b0b20002003200210510b20054180026a24000b63002000420052200142ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b2002420052200342ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b720bef0902037f037e230041f0006b22052400200442ffffffffffffffffff00832108024002402001427f7c2209427f51200242ffffffffffffffffff0083220a2009200154ad7c427f7c220942ffffffffffffbfffff0056200942ffffffffffffbfffff00511b4504402003427f7c2209427f5220082009200354ad7c427f7c220942ffffffffffffbfffff0054200942ffffffffffffbfffff00511b0d010b200150200a42808080808080c0ffff0054200a42808080808080c0ffff00511b45044020024280808080808020842104200121030c020b200350200842808080808080c0ffff0054200842808080808080c0ffff00511b450440200442808080808080208421040c020b2001200a42808080808080c0ffff00858450044042808080808080e0ffff00200220012003852002200485428080808080808080807f85845022061b21044200200120061b21030c020b2003200842808080808080c0ffff008584500d012001200a8450044020032008844200520d0220012003832103200220048321040c020b200320088450450d0020012103200221040c010b20052003200120032001562008200a562008200a511b22061b37036020052004200220061b220842ffffffffffff3f8337036820052002200420061b220242ffffffffffff3f83220437035820052001200320061b22013703502002423088a741ffff017121072008423088a741ffff01712206450440200541e0006a106a21060b2007450440200541d0006a106a210720052903582104200529035021010b200520014203862203370350200520052903602209420386220a370360200520052903684203862009423d8884428080808080808004842209370368200520044203862001423d888442808080808080800484220437035820022008852101200620076b220704402005027e200741ff004d0440200541306a2003200420071069200541406b2003200441800120076b10682005200541386a290300220437035820052903302005290340200541c8006a29030084420052ad840c010b420021042005420037035842010b22033703500b02402001427f5704402005200a20037d22013703602005200920047d200a200354ad7d2203370368200120038450044042002103420021040c030b200342ffffffffffffff03560d01200541206a2001200320012003106b41746a220710682005200541286a2903002203370368200520052903202201370360200620076b21060c010b20052003200a7c220137036020052001200354ad200420097c7c2204370368200442808080808080800883500440200421030c010b200520044201882203370368200520014201832004423f86200142018884842201370360200641016a21060b2008428080808080808080807f832104200641ffff014e0440200442808080808080c0ffff00842104420021030c010b410021070240200641004a0440200621070c010b200520012003410120066b1069200541106a20012003200641ff006a10682005200541086a2903002203370368200520052903002005290310200541186a29030084420052ad8422013703600b200342038842ffffffffffff3f832004842007ad423086842003423d8620014203888422042001a7410771220641044bad7c2203200454ad7c2003420183420020064104461b220120037c2203200154ad7c21040b2000200337030020002004370308200541f0006a24000b4401017f230041106b2205240020052001200220032004428080808080808080807f851056200529030021012000200529030837030820002001370300200541106a24000b6602027f017e03402000428080808010544504402001417f6a220120002000420a80220442767e7ca74130723a0000200421000c010b0b2000a721020340200204402001417f6a220120022002410a6e220341766c6a4130723a0000200321020c010b0b20010b850101027f230041106b22032400027f41002001423088a741ffff0171220241ffff00490d001a41808080807841ffffffff0720014200531b20024181807f6a41204f0d001a20032000200142ffffffffffff3f8342808080808080c0008441ef800120026b10694100200328020022026b200220014200531b0b2102200341106a240020020b810102027f017e230041106b220324002000027e200145044042000c010b200320012001411f7522026a2002732202ad4200200267220241d1006a1068200341086a29030042808080808080c00085419e800120026bad4230867c200141808080807871ad42208684210420032903000b37030020002004370308200341106a24000b6d01037f230041106b22022400024020014200530d002001423088a741ffff0171220441ffff00490d00417f210320044181807f6a411f4b0d0020022000200142ffffffffffff3f8342808080808080c0008441ef800120046b1069200228020021030b200241106a240020030b6902017f017e230041106b220224002000027e200145044042000c010b20022001ad420041f000200167411f7322016b1068200241086a29030042808080808080c00085200141ffff006aad4230867c210320022903000b37030020002003370308200241106a24000b830102027f027e230041106b220224002001bd22044280808080088321052000027e200442ffffffff078322045004404200210442000c010b2002200442002004a7672203413c6a1068200241086a29030042808080808080c000854181f80020036bad42308684210420022903000b37030020002004200584370308200241106a24000bce0201037f230041b0026b220124002001200036020c200120003602ac0220014180026a41004128104b1a200120012802ac023602a8024100200141a8026a200141e0006a20014180026a105041004e0440418c222802001a41c021280200210241882228020041004c044041c0212002415f713602000b027f0240024041f02128020045044041f02141d00036020041dc21410036020041d021420037030041ec21280200210341ec21200141106a3602000c010b41d0212802000d010b417f41c021104c0d011a0b41c021200141a8026a200141e0006a20014180026a10500b2100200241207121022003047f41c0214100410041e4212802001104001a41f021410036020041ec21200336020041dc21410036020041d021410036020041d421280200210341d421410036020041000520000b1a41c02141c0212802002002723602000b200141b0026a24000b3501017f230041106b22004180a30436020c41f422200028020c41076a417871220036020041f822200036020041fc223f003602000b10002002044020002001200210121a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001062200010396a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000bb50101027f20004504404100210041d822280200044041d822280200106421000b41d022280200044041d022280200106420007221000b41d422410136020041d422410036020020000f0b200028024c1a02402000280214200028021c460d0020004100410020002802241104001a20002802140d00417f0f0b20002802042201200028020822024704402000200120026bac410120002802281110001a0b2000410036021c200042003703102000420037020441000b040041000b2901017f200028021c2203200028021420036b1000200120021000200028021420026a200028021c6b0b0400427f0b5001017e0240200341c0007104402001200341406aad862102420021010c010b2003450d0020022003ad220486200141c00020036bad88842102200120048621010b20002001370300200020023703080b6001017e0240027e200341c0007104402002200341406aad8821014200210242000c010b2003450d01200241c00020036bad8620012003ad2204888421012002200488210242000b2104200120048421010b20002001370300200020023703080b5402037f027e230041106b22012400200120002903002204200041086a2202290300220520042005106b220341716a10682002200141086a29030037030020002001290300370300200141106a2400411020036b0b1701017f2000200120015022021b792002410674ad7ca70b6102037f027e230041106b22012400200120002903002205200041086a220329030022042005200420045022021b792002410674ad7ca7220241716a1068200020012903003703002003200141086a290300370300200141106a2400411020026b0bdb0102017f027e4101210402402000420052200142ffffffffffffffffff0083220542808080808080c0ffff0056200542808080808080c0ffff00511b0d002002420052200342ffffffffffffffffff0083220642808080808080c0ffff0056200642808080808080c0ffff00511b0d00200020028420052006848450044041000f0b20012003834200590440417f21042000200254200120035320012003511b0d0120002002852001200385844200520f0b417f21042000200256200120035520012003511b0d00200020028520012003858442005221040b20040b0bd71814004180080ba605696e666f006174780000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff6c696e6500200066696c65002f686f6d652f706c61746f6e2f2e6a656e6b696e732f776f726b73706163652f636f6e7472616374735f746573745f616c6179612f63617365732f436f6e7472616374734175746f54657374732f7372632f746573742f7265736f75726365732f636f6e7472616374732f7761736d2f636f6e74726163745f63726f73735f63616c6c2f436f6e747261637444656c656761746543616c6c65724e6f5265742e6370700066756e630063616c6c466565640064656c65676174655f63616c6c65725f6e6f7265742063616c6c2072656365697665725f6e6f72657420696e666f206861732073756363657373656421002573090a0064656c65676174655f63616c6c65725f6e6f7265742063616c6c2072656365697665725f6e6f72657420696e666f20686173206661696c656421006c697374537461636b206973206e6f7420656d70747900696e76616c6964206d6574686f640a00696e697400546865206e756d626572206f66206d6574686f6420706172616d657465727320646f6573206e6f74206d617463680a006765745f737461747573006e6f206d6574686f6420746f2063616c6c0a006261642063617374006d5f64617461002f7573722f6c6f63616c2f62696e2f2e2e2f706c61746f6e2e6364742f696e636c7564652f706c61746f6e2f766563746f725f7265662e68006f70657261746f725b5d005f69203c206d5f636f756e740041b60d0b8b10f03f000000000000244000000000000059400000000000408f40000000000088c34000000000006af8400000000080842e4100000000d01263410000000084d797410000000065cdcd41542122190d010203114b1c0c10040b1d121e27686e6f7071622005060f1314151a08160728241718090a0e1b1f252383827d262a2b3c3d3e3f43474a4d58595a5b5c5d5e5f60616364656667696a6b6c727374797a7b7c480000000000000000496c6c6567616c20627974652073657175656e636500446f6d61696e206572726f7200526573756c74206e6f7420726570726573656e7461626c65004e6f74206120747479005065726d697373696f6e2064656e696564004f7065726174696f6e206e6f74207065726d6974746564004e6f20737563682066696c65206f72206469726563746f7279004e6f20737563682070726f636573730046696c65206578697374730056616c756520746f6f206c6172676520666f7220646174612074797065004e6f207370616365206c656674206f6e20646576696365004f7574206f66206d656d6f7279005265736f75726365206275737900496e7465727275707465642073797374656d2063616c6c005265736f757263652074656d706f726172696c7920756e617661696c61626c6500496e76616c6964207365656b0043726f73732d646576696365206c696e6b00526561642d6f6e6c792066696c652073797374656d004469726563746f7279206e6f7420656d70747900436f6e6e656374696f6e2072657365742062792070656572004f7065726174696f6e2074696d6564206f757400436f6e6e656374696f6e207265667573656400486f737420697320646f776e00486f737420697320756e726561636861626c65004164647265737320696e207573650042726f6b656e207069706500492f4f206572726f72004e6f207375636820646576696365206f72206164647265737300426c6f636b20646576696365207265717569726564004e6f207375636820646576696365004e6f742061206469726563746f72790049732061206469726563746f727900546578742066696c652062757379004578656320666f726d6174206572726f7200496e76616c696420617267756d656e7400417267756d656e74206c69737420746f6f206c6f6e670053796d626f6c6963206c696e6b206c6f6f700046696c656e616d6520746f6f206c6f6e6700546f6f206d616e79206f70656e2066696c657320696e2073797374656d004e6f2066696c652064657363726970746f727320617661696c61626c65004261642066696c652064657363726970746f72004e6f206368696c642070726f636573730042616420616464726573730046696c6520746f6f206c6172676500546f6f206d616e79206c696e6b73004e6f206c6f636b7320617661696c61626c65005265736f7572636520646561646c6f636b20776f756c64206f63637572005374617465206e6f74207265636f76657261626c650050726576696f7573206f776e65722064696564004f7065726174696f6e2063616e63656c65640046756e6374696f6e206e6f7420696d706c656d656e746564004e6f206d657373616765206f6620646573697265642074797065004964656e7469666965722072656d6f76656400446576696365206e6f7420612073747265616d004e6f206461746120617661696c61626c65004465766963652074696d656f7574004f7574206f662073747265616d73207265736f7572636573004c696e6b20686173206265656e20736576657265640050726f746f636f6c206572726f7200426164206d6573736167650046696c652064657363726970746f7220696e20626164207374617465004e6f74206120736f636b65740044657374696e6174696f6e2061646472657373207265717569726564004d65737361676520746f6f206c617267650050726f746f636f6c2077726f6e67207479706520666f7220736f636b65740050726f746f636f6c206e6f7420617661696c61626c650050726f746f636f6c206e6f7420737570706f7274656400536f636b65742074797065206e6f7420737570706f72746564004e6f7420737570706f727465640050726f746f636f6c2066616d696c79206e6f7420737570706f7274656400416464726573732066616d696c79206e6f7420737570706f727465642062792070726f746f636f6c0041646472657373206e6f7420617661696c61626c65004e6574776f726b20697320646f776e004e6574776f726b20756e726561636861626c6500436f6e6e656374696f6e207265736574206279206e6574776f726b00436f6e6e656374696f6e2061626f72746564004e6f2062756666657220737061636520617661696c61626c6500536f636b657420697320636f6e6e656374656400536f636b6574206e6f7420636f6e6e65637465640043616e6e6f742073656e6420616674657220736f636b65742073687574646f776e004f7065726174696f6e20616c726561647920696e2070726f6772657373004f7065726174696f6e20696e2070726f6772657373005374616c652066696c652068616e646c650052656d6f746520492f4f206572726f720051756f7461206578636565646564004e6f206d656469756d20666f756e640057726f6e67206d656469756d2074797065004d756c7469686f7020617474656d70746564004e6f206572726f7220696e666f726d6174696f6e00000019000a00191919000000000500000000000009000000000b00000000000000001900110a191919030a0700011b090b18000009060b00000b0006190000001919190041d11d0b210e000000000000000019000a0d191919000d00000200090e00000009000e00000e00418b1e0b010c0041971e0b1513000000001300000000090c00000000000c00000c0041c51e0b01100041d11e0b150f000000040f0000000009100000000000100000100041ff1e0b011200418b1f0b1e11000000001100000000091200000000001200001200001a0000001a1a1a0041c21f0b0e1a0000001a1a1a000000000000090041f31f0b01140041ff1f0b151700000000170000000009140000000000140000140041ad200b01160041b9200b82011500000000150000000009160000000000160000160000303132333435363738394142434445462d2b2020203058307800286e756c6c29002d30582b30582030582d30782b307820307800696e6600494e46006e616e004e414e002e00256400417373657274696f6e206661696c65643a202573202825733a2025733a202564290a0041c0210b01050041cc210b01030041e4210b0a040000000500000070110041fc210b010200418c220b08ffffffffffffffff0041d0220b02c010"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_CALLFEED = "callFeed"; - - public static final String FUNC_GET_STATUS = "get_status"; - - protected ContractDelegateCallerNoRet(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractDelegateCallerNoRet(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallerNoRet.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallerNoRet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallerNoRet.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDelegateCallerNoRet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall callFeed(String target_address, Uint64 gasValue) { - final WasmFunction function = new WasmFunction(FUNC_CALLFEED, Arrays.asList(target_address,gasValue), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall callFeed(String target_address, Uint64 gasValue, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CALLFEED, Arrays.asList(target_address,gasValue), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_status() { - final WasmFunction function = new WasmFunction(FUNC_GET_STATUS, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static ContractDelegateCallerNoRet load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractDelegateCallerNoRet(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractDelegateCallerNoRet load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractDelegateCallerNoRet(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDistory.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDistory.java deleted file mode 100644 index d4e1173b9c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDistory.java +++ /dev/null @@ -1,95 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractDistory extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000015b1060017f017f60017f0060027f7f0060000060037f7f7f0060027f7f017f60047f7f7f7f006000017f60037f7f7f017f60047f7f7f7f017f60027f7e0060037f7e7e0060037e7e7f0060037f7e7e017f60027e7e017f60017f017e02d2020f03656e760c706c61746f6e5f70616e6963000303656e760d706c61746f6e5f6f726967696e000103656e760e706c61746f6e5f64657374726f79000003656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000703656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000603656e760d706c61746f6e5f72657475726e0002032c2b030702050300080401020f010001000b01020d00000200020309000a0002080001020502010403040000060405017001010105030100020608017f0141d088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000f0f5f5f66756e63735f6f6e5f65786974002706696e766f6b6500130aa0362b040010350b4201027f230041206b22002400200041186a4100360200200041106a420037030020004200370308200041086a1001200041086a10022101200041206a24002001450b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210340b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b2003102b2201200420021036200020023602042000200341017236020020002001360208200120026a41003a00000b0ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102b21022000200136020420002004410172360200200020023602080b2002200320011036200120026a41003a000020000bfc0502057f037e23004190016b2200240010351009220110142202100a200041d8006a200041086a200220011015220341001016200041d8006a101702400240200028025c450d00200041d8006a10170240200028025822022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028025c41014d04401000200028025821020b20022d00010d010c020b200441bf014b0d01200028025c200141ff017141ca7e6a22014d04401000200028025821020b200120026a2d0000450d010b200028025c450d0020022d000041c001490d010b10000b200041386a200041d8006a1018200028023c220141094f044010000b200028023821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008101920055104402003101a200041d8006a101b101c0c020b418508101920055104402003101a200041d8006a101b210210102103200041206a101d2101200041d0006a4100360200200041c8006a4200370300200041406b420037030020004200370338200041386a2003ac22054201862005423f87220685220720064201862005423f88842006852205101e20002802382103200041386a410472101f2001200310202001200720051021220128020c200141106a28020047044010000b20012802002001280204100e200128020c22030440200120033602100b2002101c0c020b41960810192005510440200041206a1022210120031023410247044010000b200041d8006a200341011016200041d8006a20011024200041d8006a101b2102200041f0006a200041386a2001101210112002101c0c020b41a10810192005520d002003101a200041d8006a101b210320004180016a200041f0006a10122102200041386a101d22012002102510202001200041206a200210121026200128020c200141106a28020047044010000b20012802002001280204100e200128020c22020440200120023602100b2003101c0c010b10000b102720004190016a24000b9b0101047f230041106b220124002001200036020c2000047f41c008200041086a2202411076220041c0082802006a220336020041bc0841bc08280200220420026a41076a417871220236020002400240200341107420024d044041c008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102d41086a0541000b2100200141106a240020000b0c00200020012002411c10280bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103020012003280208200328020c103136020c200320011030410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410281a200341106a24000f0b20032001103041002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103110392001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110292204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001023410147044010000b0bdc0101097f230041306b22052400200010222107200042afb59bdd9e8485b9f800370310200041186a10222106200541186a101d22022000290310102a200228020c200241106a28020047044010000b024002402002280200220820022802042209100b2204450d002004102b21030340200120036a41003a00002004200141016a2201470d000b2008200920032001100c417f460d002005200341016a200120036a2003417f736a1015200610240c010b410021040b200228020c22010440200220013602100b20044504402006200710110b200541306a240020000b810301097f230041d0006b22022400200241186a101d2103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a20002903104200101e20022802302101200241306a410472101f20032001102020032000290310102a200328020c200341106a28020047044010000b2003280204210420032802002105200241306a101d2101200041186a2206102521074101102b220041fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009102c20012802040520080b20012802006a20004101102d1a2001200128020441016a3602042001200041016a200720006b6a10202001200241086a2006101210260240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b2005200420002001280204100d200128020c22000440200120003602100b200328020c22010440200320013602100b200241d0006a24000b2900200041003602082000420037020020004100102c200041146a41003602002000420037020c20000ba40101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003102e20036a0520030b41016a21040b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020046a3602000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b13002000280208200149044020002001102c0b0b2a01017f2000200220011007200028020422036a103220022001200320002802006a10082000103320000b190020004200370200200041086a41003602002000102f20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001030200128020c210003402000450d01200141002001280208220320032000103122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10221a0c010b200241186a200010182000102921030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102b21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a102f200241206a24000bb80101047f230041306b22012400200141286a4100360200200141206a4200370300200141186a42003703002001420037031041012103024002400240200120001012220028020420002d00002202410176200241017122041b220241014d0440200241016b0d032000280208200041016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102e20026a41016a21030b20012003360210200141106a410472101f200141306a240020030b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011005200028020422026a103220042001200220002802006a1006200010330b880101037f41ac08410136020041b0082802002100034020000440034041b40841b4082802002201417f6a2202360200200141014845044041ac084100360200200020024102746a22004184016a280200200041046a28020011010041ac08410136020041b00828020021000c010b0b41b408412036020041b008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000103720024f0d002003410471044010000c010b200042003702000b02402003411071450d002000103720024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101741012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0b0020002001420010211a0b0b002000410120001b10140b2f01017f200028020820014904402001101420002802002000280204102d210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2101017f20011029220220012802044b044010000b2000200120011038200210390b2701017f230041206b22022400200241086a200020014114102810372100200241206a240020000b3601017f200028020820014904402001101420002802002000280204102d210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210036a1032200120002802006a22012002200110040c010b0b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002102d1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041d0880436020c41b808200028020c41076a417871220036020041bc08200036020041c0083f003602000b100020020440200020012002102d1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001038200010296a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b3201004180080b2b696e697400646973746f72795f636f6e7472616374007365745f737472696e67006765745f737472696e67"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_DISTORY_CONTRACT = "distory_contract"; - - public static final String FUNC_SET_STRING = "set_string"; - - public static final String FUNC_GET_STRING = "get_string"; - - protected ContractDistory(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractDistory(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDistory.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDistory.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDistory.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDistory.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall distory_contract() { - final WasmFunction function = new WasmFunction(FUNC_DISTORY_CONTRACT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall distory_contract(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DISTORY_CONTRACT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall set_string(String name) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_string(String name, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractDistory load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractDistory(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractDistory load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractDistory(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDistoryWithPermissionCheck.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDistoryWithPermissionCheck.java deleted file mode 100644 index 965e655b13..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractDistoryWithPermissionCheck.java +++ /dev/null @@ -1,95 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractDistoryWithPermissionCheck extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000015b1060027f7f0060017f017f60017f0060037f7f7f0060000060027f7f017f60047f7f7f7f0060037f7f7f017f60047f7f7f7f017f60027f7e0060037f7e7e0060037e7e7f006000017f60037f7e7e017f60027e7e017f60017f017e02d2020f03656e760c706c61746f6e5f70616e6963000403656e760d706c61746f6e5f6f726967696e000203656e760e706c61746f6e5f64657374726f79000103656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000603656e760d706c61746f6e5f72657475726e00000339380402020000010005030107000006020300050002030401070302000f020102010a02000d01010001000408010900010005000203040101060405017001010105030100020608017f0141f088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000f0f5f5f66756e63735f6f6e5f65786974003806696e766f6b6500240ab24f38040010430b3301017f230041306b22012400200141086a1011200141206a200141086a1012200041186a200141206a1013200141306a24000b210020004200370000200041106a4100360000200041086a4200370000200010010be20b01087f230041e0006b22022400200241086a4100360200200242003703000240034020044180086a2203410371044020044103460d02200441016a21040c010b0b200441fc076a21030340200341046a22032802002204417f73200441fffdfb776a7141808182847871450d000b0340200441ff0171450d01200341016a2d00002104200341016a21030c000b000b200241800820034180086b1017410021032002410036023820024200370330411410182001411410192105410021014100210403402001411446044002402003044020022004410520036b74411f713a0050200241306a200241d0006a101a0b410021032002410036024820024200370340200241406b200228020420022d0000220441017620044101711b410174410172101b2002410172210503402003200228020420022d00002204410176200441017122041b22014f0d01200228024020036a2002280208200520041b20036a2d000022044105763a00002002280240200228020420022d0000220141017620014101711b6a20036a41016a2004411f713a0000200341016a21030c000b000b05200120056a2d0000200441087441801e71722104200341086a210303402003410548450440200220042003417b6a220376411f713a0050200241306a200241d0006a101a0c010b0b200141016a21010c010b0b200228024020016a41003a0000200241d0006a200241406b20022802302002280234101c200228024022030440200220033602440b200241d0006a200228025420022802506b41066a101b2002280254200228025022016b21044101210303402004044020012d000041002003411d764101716b41b3c5d1d0027141002003411c764101716b41dde788ea037141002003411b764101716b41fab384f5017141002003411a764101716b41ed9cc2b20271410020034119764101716b41b2afa9db0371200341057441e0ffffff037173737373737321032004417f6a2104200141016a21010c010b0b410021042002410036022820024200370320200241206a4106101b200341017321014119210303402003417b46450440200228022020046a2001200376411f713a00002003417b6a2103200441016a21040c010b0b200228025022030440200220033602540b20024100360218200242003703100240200228023420022802306b2204450d002002200410182203360210200220033602142002200320046a3602182002280234200228023022016b22044101480d0020032001200410191a2002200228021420046a3602140b200241d0006a200241106a20022802202002280224101c200228021022030440200220033602140b20004200370200200041086a41003602002000101d2002280208200520022d0000220341017122041b210102402002280204200341017620041b220341016a410a4d0440200020034101743a0000200041016a21040c010b200341116a4170712205101821042000200336020420002005410172360200200020043602080b200420012003101e200320046a41003a000020004131101f20022802542203200228025022016b2000280204220920002d000022054101762204200541017122081b6a2106410a21072008044020002802002205417e71417f6a2107200921040b024020042006200420064b1b220641106a417071417f6a410a2006410a4b1b22062007460d00027f2006410a460440200041016a21082000280208210741000c010b4100200620074d200641016a101822081b0d0120002d0000220541017104402000280208210741010c010b200041016a210741010b210920082007027f2005410171044020002802040c010b200541fe01714101760b41016a101e2009044020002008360208200020043602042000200641016a4101723602000c010b200020044101743a00000b2001210403402001200346450440200020042d00004184086a2c0000101f200441016a21042003417f6a21030c010b0b20010440200220013602540b200228022022030440200220033602240b200228023022030440200220033602340b200241e0006a24000b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a2802003602002001101d0b800201057f230041306b22022400200241186a1011200241086a200241186a1012027f024002402000411c6a28020020002d001822014101762204200141017122051b2203200228020c20022d00082201410176200141017122011b470d002002280210200241086a41017220011b21012005450440200041196a210303402004450d0320032d000020012d0000470d02200141016a2101200341016a21032004417f6a21040c000b000b2003450d01200041206a280200210403402003450d0220042d000020012d0000470d01200141016a2101200441016a21042003417f6a21030c000b000b417f0c010b200241186a1002450b2101200241306a240020010b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210420b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b20031018220120042002101e200020023602042000200341017236020020002001360208200120026a41003a00000b0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204101720000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101821032000200236020420002004410172360200200020033602080b200320012002101e200220036a41003a00000b0b002000410120001b10250bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10202105200241186a200041086a3602004100210320024100360214200504402005101821030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a1021200241086a10220b200241206a24000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110202106200241186a200041086a3602002002410036021441002101200604402006101821010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1021200241086a10220c010b200520014d0d002000200120046a3602040b200241206a24000bc60301057f230041206b22042400200128020421050240200320026b22064101480d002006200128020820056b4c0440034020022003460d02200520022d00003a00002001200128020441016a2205360204200241016a21020c000b000b2001200520066a200128020022066b10202108200441186a200141086a36020020044100360214200520066b2106200804402008101821070b200420073602082004200620076a22063602102004200720086a3602142004200636020c200441086a410472210703402002200346450440200620022d00003a00002004200428021041016a2206360210200241016a21020c010b0b200128020020052007102302402001280204220320056b220241004c0440200428021021020c010b2004200428021020052002101920026a2202360210200128020421030b20012002360204200128020021022001200428020c3602002001280208210520012004280214360208200420033602102004200236020c2004200536021420042002360208200441086a1022200128020421050b20002005360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b10002002044020002001200210191a0b0bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b20031018220220062005101e20002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b6701017f20002802002000280204200141046a1023200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b270020022002280200200120006b22016b2202360200200141014e044020022000200110191a0b0b8e0602057f037e23004190016b2200240010431009220110252202100a200041d8006a200041086a200220011026220341001027200041d8006a102802400240200028025c450d00200041d8006a10280240200028025822022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028025c41014d04401000200028025821020b20022d00010d010c020b200441bf014b0d01200028025c200141ff017141ca7e6a22014d04401000200028025821020b200120026a2d0000450d010b200028025c450d0020022d000041c001490d010b10000b200041386a200041d8006a1029200028023c220141094f044010000b200028023821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d0041a508102a20055104402003102b200041d8006a102c2101200041d8006a10102001102d0c020b41aa08102a20055104402003102b200041d8006a102c2102200041d8006a10142103200041206a102e2101200041d0006a4100360200200041c8006a4200370300200041406b420037030020004200370338200041386a2003ac22054201862005423f87220685220720064201862005423f88842006852205102f20002802382103200041386a41047210302001200310312001200720051032220128020c200141106a28020047044010000b20012802002001280204100e200128020c22030440200120033602100b2002102d0c020b41bb08102a2005510440200041206a1033210120031034410247044010000b200041d8006a200341011027200041d8006a20011035200041d8006a102c2102200041f0006a200041386a2001101610152002102d0c020b41c608102a2005520d002003102b200041d8006a102c210320004180016a200041f0006a10162102200041386a102e22012002103610312001200041206a200210161037200128020c200141106a28020047044010000b20012802002001280204100e200128020c22020440200120023602100b2003102d0c010b10000b103820004190016a24000b9b0101047f230041106b220124002001200036020c2000047f41e808200041086a2202411076220041e8082802006a220336020041e40841e408280200220420026a41076a417871220236020002400240200341107420024d044041e808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101941086a0541000b2100200141106a240020000b0c00200020012002411c10390bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103e20012003280208200328020c103f36020c20032001103e410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410391a200341106a24000f0b20032001103e41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103f10462001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001103a2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001034410147044010000b0bf40101087f230041406a22012400200010332107200042afb59bdd9e8485b9f800370310200041186a10332106200141286a102e22022000290310103b200228020c200241106a28020047044010000b02402002280200220520022802042208100b22034504400c010b2001410036022020014200370318200141186a2003101b2005200820012802182205200128021c20056b100c417f47044020012001280218220441016a200128021c2004417f736a102620061035200321040b20012802182203450d002001200336021c0b200228020c22030440200220033602100b20044504402006200710150b200141406b240020000b810301097f230041d0006b22022400200241186a102e2103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a20002903104200102f20022802302101200241306a410472103020032001103120032000290310103b200328020c200341106a28020047044010000b2003280204210420032802002105200241306a102e2101200041186a22061036210741011018220041fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009103c20012802040520080b20012802006a2000410110191a2001200128020441016a3602042001200041016a200720006b6a10312001200241086a2006101610370240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b2005200420002001280204100d200128020c22000440200120003602100b200328020c22010440200320013602100b200241d0006a24000b2900200041003602082000420037020020004100103c200041146a41003602002000420037020c20000ba40101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103d20036a0520030b41016a21040b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020046a3602000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b13002000280208200149044020002001103c0b0b2a01017f2000200220011007200028020422036a104020022001200320002802006a10082000104120000b190020004200370200200041086a41003602002000101d20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103e200128020c210003402000450d01200141002001280208220320032000103f22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10331a0c010b200241186a200010292000103a21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101821032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1013200241206a24000bb80101047f230041306b22012400200141286a4100360200200141206a4200370300200141186a42003703002001420037031041012103024002400240200120001016220028020420002d00002202410176200241017122041b220241014d0440200241016b0d032000280208200041016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103d20026a41016a21030b20012003360210200141106a4104721030200141306a240020030b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011005200028020422026a104020042001200220002802006a1006200010410b880101037f41d408410136020041d8082802002100034020000440034041dc0841dc082802002201417f6a2202360200200141014845044041d4084100360200200020024102746a22004184016a280200200041046a28020011020041d408410136020041d80828020021000c010b0b41dc08412036020041d808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104420024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104420024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000102841012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0b0020002001420010321a0b2f01017f2000280208200149044020011025200028020020002802041019210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b2101017f2001103a220220012802044b044010000b2000200120011045200210460b2701017f230041206b22022400200241086a200020014114103910442100200241206a240020000b3601017f2000280208200149044020011025200028020020002802041019210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210036a1040200120002802006a22012002200110040c010b0b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210191a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041f0880436020c41e008200028020c41076a417871220036020041e408200036020041e8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010452000103a6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b5701004180080b506174780071707a7279397838676632747664773073336a6e35346b686365366d7561376c00696e697400646973746f72795f636f6e7472616374007365745f737472696e67006765745f737472696e67"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_DISTORY_CONTRACT = "distory_contract"; - - public static final String FUNC_SET_STRING = "set_string"; - - public static final String FUNC_GET_STRING = "get_string"; - - protected ContractDistoryWithPermissionCheck(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractDistoryWithPermissionCheck(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDistoryWithPermissionCheck.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDistoryWithPermissionCheck.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDistoryWithPermissionCheck.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractDistoryWithPermissionCheck.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall distory_contract() { - final WasmFunction function = new WasmFunction(FUNC_DISTORY_CONTRACT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall distory_contract(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DISTORY_CONTRACT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall set_string(String name) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_string(String name, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractDistoryWithPermissionCheck load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractDistoryWithPermissionCheck(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractDistoryWithPermissionCheck load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractDistoryWithPermissionCheck(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent.java deleted file mode 100644 index e86f6bf3c3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent.java +++ /dev/null @@ -1,250 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractEmitEvent extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60000060037f7f7f017f60047f7f7f7f0060047f7f7f7f017f60027f7e0060037e7e7f006000017f60027f7e017f60027e7e017f60017f017e02ce020f03656e760c706c61746f6e5f70616e6963000503656e760b706c61746f6e5f73686133000703656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e74000703656e760d706c61746f6e5f72657475726e0000034a4905020401000400000104000002040000000003090c00000003030201000100030601000006080206000301060506030201000e020102000101000105080109020004050301010702000405017001030305030100020608017f01419089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000f0f5f5f66756e63735f6f6e5f65786974004a06696e766f6b65003b0908010041010b0224260a905b49040010510bcd0201077f23004190016b22012400200141940810112102200141386a10122103200141286a20021013200320012802282204200128022c101410152003200141286a1016200328020c200341106a28020047044010000b2003280204210520032802002106200141106a10172102200141d0006a200010182100200141f8006a4100360200200141f0006a4200370300200141e8006a420037030020014200370360200141e0006a41001019200141e0006a20014180016a20001018101a200141e0006a4101101920012802602107200141e0006a410472101b20022007101520024101101c2202200141e0006a20001018101d200228020c200241106a28020047044010000b2006200520022802002002280204100d200228020c22000440200220003602100b200404402001200436022c0b200328020c22020440200320023602100b20014190016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b102820000b1d0020001029200041146a41003602002000420037020c20004101101c0bec0101057f230041106b220324000240200128020420012d00002202410176200241017122041b2202450440410021010c010b2001280208200141016a20041b21042002102a220520026a21062005210103402002450d01200120042d00003a00002002417f6a2102200141016a2101200441016a21040c000b000b0240200120056b220241204d04402000200636020820002001360204200020053602000c010b200341003602082003420037030020034120102b20052002200328020022012003280204220420016b10012000200436020420002001360200200020032802083602080b200341106a24000b990101027f230041206b22022400200241186a4100360200200241106a4200370300200241086a420037030020024200370300024020002001460440410121030c010b4101210302400240200120006b2201410146044020002c0000417f4c0d010c030b200141374b0d010b200141016a21030c010b2001102c20016a41016a21030b200220033602002002410472101b200241206a240020030b13002000280208200149044020002001102d0b0b1500200020012802002200200128020420006b102e0b190020001029200041146a41003602002000420037020c20000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102820000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203102f280200210120022003417f6a360200200710304180104f044020072000410c6a280200417c6a10310b200141384f047f2001102c20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002102f21000c010b0240200710300d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10320c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020102a2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1033220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10342102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021035200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a103622013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10342102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021035200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10320c010b20042001410175410120011b2003200510342102418020102a2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103322013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103421032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031035200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021035052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a103622013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103421062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061035200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071037200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102c20026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001102f21000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001037200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011031200441106a24000bf30101057f20002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374102a0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001103a1a0b20002002360214200020033602102000200536020c20000b2c01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b102e0bdc0201077f23004190016b22022400200241086a418a0810112103200241406b10122104200241306a200310132004200228023022052002280234101410152004200241306a1016200428020c200441106a28020047044010000b2004280204210620042802002107200241186a10172103200241d8006a200010182100200241e4006a20011018210120024188016a410036020020024180016a4200370300200241f8006a420037030020024200370370200241f0006a41001019200241f0006a2000101f200241f0006a2001101f200241f0006a4101101920022802702108200241f0006a410472101b20032008101520034102101c220320001020200320011020200328020c200341106a28020047044010000b2007200620032802002003280204100d200328020c22000440200320003602100b20050440200220053602340b200428020c22030440200420033602100b20024190016a24000b1e01017f230041106b220224002000200220011018101a200241106a24000b1e01017f230041106b220224002000200220011018101d200241106a24000bf60201067f23004190016b22032400200341800810112104200341386a10122105200341286a20041013200520032802282206200328022c101410152005200341286a1016200528020c200541106a28020047044010000b2005280204210720052802002108200341106a10172104200341d0006a200010182100200341dc006a2001101821012003200236026820034188016a410036020020034180016a4200370300200341f8006a420037030020034200370370200341f0006a41001019200341f0006a2000101f200341f0006a2001101f200341f0006a20033502681022200341f0006a4101101920032802702102200341f0006a410472101b20042002101520044103101c220420001020200420011020200420033502681023220428020c200441106a28020047044010000b2008200720042802002004280204100d200428020c22000440200420003602100b200604402003200636022c0b200528020c22040440200520043602100b20034190016a24000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002102c20026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002102f21000b2000200028020020036a3602000b2a01017f2000420020011006200028020422026a105742002001200220002802006a10072000105620000b2501017f230041106b22022400200041186a200110252002200110181010200241106a24000b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210380b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b2003102a2201200420021052200020023602042000200341017236020020002001360208200120026a41003a00000b0b2e01017f230041206b22022400200041186a20011025200241106a20011018200220011018101e200241206a24000b3001017f230041206b22032400200041186a20011025200341106a2001101820032001101820021021200341206a24000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204102a21032000200236020420002004410172360200200020033602080b2003200120021052200220036a41003a00000b1600200041003602082000420037020020004100102d0b0b002000410120001b10390bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102a21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001103a1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b2f01017f200028020820014904402001103920002802002000280204103a210220002001360208200020023602000b0b2801017f2000200120021004200028020422036a105720012002200320002802006a1005200010560b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103322023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10342103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031035200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110380b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102a21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110380b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103a1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f418009200041086a220241107622004180092802006a220336020041fc0841fc08280200220420026a41076a417871220236020002400240200341107420024d0440418009200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103a41086a0541000b2100200141106a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bf80402057f017e23004180016b22002400105110082201103922021009200041206a200041086a20022001103c22034100103d200041206a103e02400240200041206a103f450d002000280224450d0020002802202d000041c001490d010b10000b200041e8006a200041206a1040200028026c220141094f044010000b200028026821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00419d081041200551044020031042200041206a104310440c020b41a208104120055104402003410110450c020b41b208104120055104402003410210450c020b41c80810412005510440200041e8006a104621042000410036027420031047410347044010000b200041206a20034101103d200041206a20041048200041206a20034102103d200041206a103e02400240200041206a103f450d002000280224450d0020002802202d000041c001490d010b10000b200041d8006a200041206a1040200028025c220141054f044010000b41002103200028025821020340200104402001417f6a210120022d00002003410874722103200241016a21020c010b0b20002003360274200041206a10432101200041c8006a20041018210220002802742103200041206a200041d8006a2002101820031027200110440c020b41de0810412005520d0020031042200041206a10432103200041c8006a200041386a10182102200041e8006a101722012002104910152001200041d8006a20021018101d200128020c200141106a28020047044010000b20012802002001280204100e200128020c22020440200120023602100b200310440c010b10000b104a20004180016a24000b0c00200020012002411c104b0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104f20012003280208200328020c105036020c20032001104f410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114104b1a200341106a24000f0b20032001104f41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004105010552001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000103e200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001104c2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001047410147044010000b0be90101087f230041406a22012400200010462108200042afb59bdd9e8485b9f800370310200041186a10462106200141286a101722032000290310104d200328020c200341106a28020047044010000b02402003280200220220032802042205100a22074504400c010b2001410036022020014200370318200141186a2007102b2002200520012802182202200128021c220520026b100b417f4704402001200241016a20052002417f736a103c20061048200721040b2002450d002001200236021c0b200328020c22020440200320023602100b20044504402006200810250b200141406b240020000bff0201097f230041d0006b22022400200241186a10172103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a2000290310102220022802302101200241306a410472101b20032001101520032000290310104d200328020c200341106a28020047044010000b2003280204210420032802002105200241306a10172101200041186a2206104921074101102a220041fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009102d20012802040520080b20012802006a20004101103a1a2001200128020441016a3602042001200041016a200720006b6a10152001200241086a20061018101d0240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b2005200420002001280204100c200128020c22000440200120003602100b200328020c22010440200320013602100b200241d0006a24000b6701027f230041e0006b22022400200241306a1046210320001047410247044010000b200241086a20004101103d200241086a20031048200241086a10432100200241086a200241d0006a200241406b200310181018200111000020001044200241e0006a24000b190020004200370200200041086a41003602002000104e20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000104f200128020c210003402000450d01200141002001280208220320032000105022046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10461a0c010b200241186a200010402000104c21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102a21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a104e200241206a24000b5901017f230041306b22012400200141286a4100360200200141206a4200370300200141186a420037030020014200370310200141106a200120001018101a20012802102100200141106a410472101b200141306a240020000b880101037f41ec08410136020041f0082802002100034020000440034041f40841f4082802002201417f6a2202360200200141014845044041ec084100360200200020024102746a22004184016a280200200041046a28020011020041ec08410136020041f00828020021000c010b0b41f408412036020041f008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105320024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105320024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000103e41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b09002000200110231a0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2101017f2001104c220220012802044b044010000b2000200120011054200210550b2701017f230041206b22022400200241086a200020014114104b10532100200241206a240020000b3501017f230041106b22004190890436020c41f808200028020c41076a417871220036020041fc0820003602004180093f003602000b100020020440200020012002103a1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010542000104c6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a1057200120002802006a22012002200110030c010b0b0b3601017f200028020820014904402001103920002802002000280204103a210220002001360208200020023602000b200020013602040b0b6f01004180080b687472616e7366657233007472616e7366657232007472616e7366657200696e6974007a65726f5f656d69745f6576656e74007a65726f5f656d69745f6576656e745f6172677332007a65726f5f656d69745f6576656e745f6172677333006765745f737472696e67"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_STRING = "get_string"; - - public static final String FUNC_ZERO_EMIT_EVENT = "zero_emit_event"; - - public static final String FUNC_ZERO_EMIT_EVENT_ARGS2 = "zero_emit_event_args2"; - - public static final String FUNC_ZERO_EMIT_EVENT_ARGS3 = "zero_emit_event_args3"; - - public static final WasmEvent TRANSFER_EVENT = new WasmEvent("transfer", Arrays.asList(), Arrays.asList(new WasmEventParameter(String.class))); - ; - - public static final WasmEvent TRANSFER2_EVENT = new WasmEvent("transfer2", Arrays.asList(), Arrays.asList(new WasmEventParameter(String.class) , new WasmEventParameter(String.class))); - ; - - public static final WasmEvent TRANSFER3_EVENT = new WasmEvent("transfer3", Arrays.asList(), Arrays.asList(new WasmEventParameter(String.class) , new WasmEventParameter(String.class) , new WasmEventParameter(Uint32.class))); - ; - - protected ContractEmitEvent(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractEmitEvent(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public List getTransfer2Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER2_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (String) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer2EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer2EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER2_EVENT, log); - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (String) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable transfer2EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER2_EVENT)); - return transfer2EventObservable(filter); - } - - public List getTransfer3Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER3_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer3EventResponse typedResponse = new Transfer3EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (String) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint32) eventValues.getNonIndexedValues().get(2); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer3EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer3EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER3_EVENT, log); - Transfer3EventResponse typedResponse = new Transfer3EventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (String) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint32) eventValues.getNonIndexedValues().get(2); - return typedResponse; - } - }); - } - - public Observable transfer3EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER3_EVENT)); - return transfer3EventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall zero_emit_event(String name) { - final WasmFunction function = new WasmFunction(FUNC_ZERO_EMIT_EVENT, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall zero_emit_event(String name, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ZERO_EMIT_EVENT, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall zero_emit_event_args2(String name) { - final WasmFunction function = new WasmFunction(FUNC_ZERO_EMIT_EVENT_ARGS2, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall zero_emit_event_args2(String name, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ZERO_EMIT_EVENT_ARGS2, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall zero_emit_event_args3(String name, Uint32 value) { - final WasmFunction function = new WasmFunction(FUNC_ZERO_EMIT_EVENT_ARGS3, Arrays.asList(name,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall zero_emit_event_args3(String name, Uint32 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ZERO_EMIT_EVENT_ARGS3, Arrays.asList(name,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static ContractEmitEvent load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractEmitEvent(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractEmitEvent load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractEmitEvent(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String arg1; - } - - public static class Transfer2EventResponse { - public Log log; - - public String arg1; - - public String arg2; - } - - public static class Transfer3EventResponse { - public Log log; - - public String arg1; - - public String arg2; - - public Uint32 arg3; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent1.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent1.java deleted file mode 100644 index d9005bf06b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent1.java +++ /dev/null @@ -1,286 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractEmitEvent1 extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001691060027f7f0060017f017f60037f7f7f0060017f0060027f7f017f60037f7f7f017f60000060047f7f7f7f0060027f7e0060047f7f7f7f017f600a7f7f7f7f7f7f7f7f7f7f00600b7f7f7f7f7f7f7f7f7f7f7f0060037e7e7f006000017f60027e7e017f60017f017e02ce020f03656e760c706c61746f6e5f70616e6963000603656e760b706c61746f6e5f73686133000703656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000203656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000203656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e74000703656e760d706c61746f6e5f72657475726e0000034f4e0600040100050000010000030400020400000a00000200020b0203010001050002010000050903050008080201050605020301000f030103000101000001060901080001030004060201010703000405017001030305030100020608017f01419089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000f0f5f5f66756e63735f6f6e5f65786974004d06696e766f6b65003d0908010041010b0224260abd634e040010560b9c0301087f230041a0016b22022400200241940810112104200241e8006a10122103200241d8006a20041013200241c8006a20001013200241406b4100360200200241386a4200370300200241306a420037030020024200370328200241286a20022802582204200228025c101420022802482205200228024c101421062003200228022810152003200241d8006a10162003200241c8006a1016200328020c200341106a28020047044010000b2003280204210720032802002108200241106a1017210020024198016a410036020020024190016a420037030020024188016a4200370300200242003703800120024180016a4100101820024180016a2001101920024180016a41011018200228028001210920024180016a410472101a20002009101520004101101b22002001101c200028020c200041106a28020047044010000b2008200720002802002000280204100d200028020c22010440200020013602100b200641046a101a200504402002200536024c0b200404402002200436025c0b200328020c22000440200320003602100b200241a0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b102820000b1d0020001029200041146a41003602002000420037020c20004102101b0bec0101057f230041106b220324000240200128020420012d00002202410176200241017122041b2202450440410021010c010b2001280208200141016a20041b21042002102a220520026a21062005210103402002450d01200120042d00003a00002002417f6a2102200141016a2101200441016a21040c000b000b0240200120056b220241204d04402000200636020820002001360204200020053602000c010b200341003602082003420037030020034120102b20052002200328020022012003280204220420016b10012000200436020420002001360200200020032802083602080b200341106a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102c20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001102d0c010b20000b2201200128020020036a36020020000b13002000280208200149044020002001102e0b0b1500200020012802002200200128020420006b102f0b190020001029200041146a41003602002000420037020c20000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203102d280200210120022003417f6a360200200710304180104f044020072000410c6a280200417c6a10310b200141384f047f2001102c20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002102d21000c010b0240200710300d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10320c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020102a2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1033220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10342102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021035200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a103622013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10342102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021035200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10320c010b20042001410175410120011b2003200510342102418020102a2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103322013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103421032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031035200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021035052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a103622013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103421062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061035200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071037200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b090020002001ad10380bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001037200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011031200441106a24000bf30101057f20002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374102a0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001103c1a0b20002002360214200020033602102000200536020c20000b090020002001ad10390bdb0301077f230041c0016b220324002003418a0810112105200341e8006a10122104200341d8006a20051013200341c8006a20001013200341406b4100360200200341386a4200370300200341306a420037030020034200370328200341286a20032802582205200328025c101420032802482206200328024c101421072004200328022810152004200341d8006a10162004200341c8006a1016200428020c200441106a28020047044010000b2004280204210820042802002109200341106a10172100200320013602800120034180016a4104722002101e2101200341a8016a4100360200200341a0016a420037030020034198016a4200370300200342003703900120034190016a4100101820034190016a200328028001101920034190016a200341b0016a2001101e101f20034190016a41011018200328029001210220034190016a410472101a20002002101520004102101b2200200328028001101c200020034190016a2001101e1020200028020c200041106a28020047044010000b2009200820002802002000280204100d200028020c22010440200020013602100b200741046a101a200604402003200636024c0b200504402003200536025c0b200428020c22000440200420003602100b200341c0016a24000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102820000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102c20026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001102d21000b2000200028020020036a3602000b2c01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b102f0b9b0501077f23004180026b220a2400200a41086a4180081011210c200a41f0006a1012210b200a41e0006a200c1013200a41d0006a20001013200a41c8006a4100360200200a41406b4200370300200a41386a4200370300200a4200370330200a41306a200a280260220c200a2802641014200a280250220d200a2802541014210e200b200a2802301015200b200a41e0006a1016200b200a41d0006a1016200b28020c200b41106a28020047044010000b200b280204210f200b2802002110200a41186a10172100200a200136028801200a4188016a4104722002101e2101200a4198016a2003101e2102200a41a4016a2004101e2103200a41b0016a2005101e2104200a41bc016a2006101e2105200a20083602cc01200a20073602c801200a41d0016a2009101e2106200a41f8016a4100360200200a41f0016a4200370300200a41e8016a4200370300200a42003703e001200a41e0016a41001018200a41e0016a200a280288011019200a41e0016a20011022200a41e0016a20021022200a41e0016a20031022200a41e0016a20041022200a41e0016a20051022200a41e0016a200a2802c8011019200a41e0016a200a2802cc011019200a41e0016a20061022200a41e0016a41011018200a2802e0012107200a41e0016a410472101a20002007101520004109101b2200200a28028801101c2000200110232000200210232000200310232000200410232000200510232000200a2802c801101c2000200a2802cc01101c200020061023200028020c200041106a28020047044010000b2010200f20002802002000280204100d200028020c22010440200020013602100b200e41046a101a200d0440200a200d3602540b200c0440200a200c3602640b200b28020c22000440200b20003602100b200a4180026a24000b1e01017f230041106b22022400200020022001101e101f200241106a24000b1e01017f230041106b22022400200020022001101e1020200241106a24000b2701017f230041106b22032400200041186a2001102520032001101e20021010200341106a24000b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b210120020440200120042002103a0b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b2003102a2201200420021057200020023602042000200341017236020020002001360208200120026a41003a00000b0b3001017f230041206b22032400200041186a20011025200341106a2001101e200220032001101e101d200341206a24000b6501017f230041f0006b220b2400200041186a20031025200b41e0006a2001101e2002200b41d0006a2003101e200b41406b2004101e200b41306a2005101e200b41206a2006101e200b41106a2007101e20082009200b200a101e1021200b41f0006a24000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204102a21032000200236020420002004410172360200200020033602080b2003200120021057200220036a41003a00000b1600200041003602082000420037020020004100102e0b0b002000410120001b103b0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102a21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001103c1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2f01017f200028020820014904402001103b20002802002000280204103c210220002001360208200020023602000b0b2801017f2000200120021004200028020422036a105c20012002200320002802006a10052000105b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103322023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10342103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031035200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001103a0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102a21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001103a0b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002102c20026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002102d21000b2000200028020020036a3602000b2801017f2000420020011006200028020422026a105c42002001200220002802006a10072000105b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103c1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f418009200041086a220241107622004180092802006a220336020041fc0841fc08280200220420026a41076a417871220236020002400240200341107420024d0440418009200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103c41086a0541000b2100200141106a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bba06020c7f017e23004180036b22002400105610082201103b22021009200041406b200020022001103e22034100103f200041406b104002400240200041406b1041450d002000280244450d0020002802402d000041c001490d010b10000b200041186a200041406b1042200028021c220141094f044010000b200028021821020340200104402001417f6a21012002310000200c42088684210c200241016a21020c010b0b02400240200c500d00419d081043200c51044020031044200041406b104510460c020b41a2081043200c5104402003410110470c020b41b2081043200c5104402003410210470c020b41c8081043200c510440200041406b104821012000410036024c200041d0006a10482102200041dc006a10482104200041e8006a10482105200041f4006a1048210620004180016a104821072000420037028c0120004194016a1048210820004190016a21092000418c016a210a200041cc006a210b20031049410b47044010000b200041013602f002200020033602182000200041f0026a36021c200041186a2001104a200041186a200b104b200041186a2002104a200041186a2004104a200041186a2005104a200041186a2006104a200041186a2007104a200041186a200a104b200041186a2009104b200041186a2008104a200041186a1045210320004180026a2001101e2101200028024c2109200041f0016a2002101e2102200041e0016a2004101e2104200041d0016a2005101e2105200041c0016a2006101e2106200041b0016a2007101e2107200028029001210a200028028c01210b200041a0016a2008101e2108200041186a200041f0026a2001101e2009200041e0026a2002101e200041d0026a2004101e200041c0026a2005101e200041b0026a2006101e200041a0026a2007101e200b200a20004190026a2008101e1027200310460c020b41de081043200c520d0020031044200041406b10452103200041e0026a200041d8006a101e2102200041186a101722012002104c10152001200041f0026a2002101e1020200128020c200141106a28020047044010000b20012802002001280204100e200128020c22020440200120023602100b200310460c010b10000b104d20004180036a24000b0c00200020012002411c104e0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001105420012003280208200328020c105536020c200320011054410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114104e1a200341106a24000f0b20032001105441002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041055105a2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001040200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001104f2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001049410147044010000b0be90101087f230041406a22012400200010482108200042afb59bdd9e8485b9f800370310200041186a10482106200141286a1017220320002903101050200328020c200341106a28020047044010000b02402003280200220220032802042205100a22074504400c010b2001410036022020014200370318200141186a2007102b2002200520012802182202200128021c220520026b100b417f4704402001200241016a20052002417f736a103e20061051200721040b2002450d002001200236021c0b200328020c22020440200320023602100b20044504402006200810250b200141406b240020000bff0201097f230041d0006b22022400200241186a10172103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a2000290310103820022802302101200241306a410472101a200320011015200320002903101050200328020c200341106a28020047044010000b2003280204210420032802002105200241306a10172101200041186a2206104c21074101102a220041fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009102e20012802040520080b20012802006a20004101103c1a2001200128020441016a3602042001200041016a200720006b6a10152001200241086a2006101e10200240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b2005200420002001280204100c200128020c22000440200120003602100b200328020c22010440200320013602100b200241d0006a24000b920101037f230041e0006b22022400200241306a104821032002410036023c20001049410347044010000b200241086a20004101103f200241086a20031051200241086a20004102103f2002200241086a105236023c200241086a10452100200241406b2003101e2103200228023c2104200241086a200241d0006a2003101e2004200111020020001046200241e0006a24000b190020004200370200200041086a41003602002000105320000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001054200128020c210003402000450d01200141002001280208220320032000105522046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4301017f230041206b22022400200241086a20002802002000280204280200103f200241086a2001105120002802042200200028020041016a360200200241206a24000b4601017f230041206b22022400200241086a20002802002000280204280200103f2001200241086a105236020020002802042200200028020041016a360200200241206a24000b5901017f230041306b22012400200141286a4100360200200141206a4200370300200141186a420037030020014200370310200141106a20012000101e101f20012802102100200141106a410472101a200141306a240020000b880101037f41ec08410136020041f0082802002100034020000440034041f40841f4082802002201417f6a2202360200200141014845044041ec084100360200200020024102746a22004184016a280200200041046a28020011030041ec08410136020041f00828020021000c010b0b41f408412036020041f008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105820024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105820024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000104041012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b08002000200110390bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10481a0c010b200241186a200010422000104f21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102a21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1053200241206a24000b830101037f230041106b22012400200010400240024020001041450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001042200128020c220041054f044010000b200128020821030340200004402000417f6a210020032d00002002410874722102200341016a21030c010b0b200141106a240020020b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2101017f2001104f220220012802044b044010000b20002001200110592002105a0b2701017f230041206b22022400200241086a200020014114104e10582100200241206a240020000b3501017f230041106b22004190890436020c41f808200028020c41076a417871220036020041fc0820003602004180093f003602000b100020020440200020012002103c1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010592000104f6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a105c200120002802006a22012002200110030c010b0b0b3601017f200028020820014904402001103b20002802002000280204103c210220002001360208200020023602000b200020013602040b0b6f01004180080b687472616e7366657233007472616e7366657232007472616e7366657200696e6974006f6e655f656d69745f6576656e7431006f6e655f656d69745f6576656e74315f6172677332006f6e655f656d69745f6576656e74315f6172677339006765745f737472696e67"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_STRING = "get_string"; - - public static final String FUNC_ONE_EMIT_EVENT1 = "one_emit_event1"; - - public static final String FUNC_ONE_EMIT_EVENT1_ARGS2 = "one_emit_event1_args2"; - - public static final String FUNC_ONE_EMIT_EVENT1_ARGS9 = "one_emit_event1_args9"; - - public static final WasmEvent TRANSFER_EVENT = new WasmEvent("transfer", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(Uint32.class))); - ; - - public static final WasmEvent TRANSFER2_EVENT = new WasmEvent("transfer2", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(Uint32.class) , new WasmEventParameter(String.class))); - ; - - public static final WasmEvent TRANSFER3_EVENT = new WasmEvent("transfer3", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(Uint32.class) , new WasmEventParameter(String.class) , new WasmEventParameter(String.class) , new WasmEventParameter(String.class) , new WasmEventParameter(String.class) , new WasmEventParameter(String.class) , new WasmEventParameter(Uint32.class) , new WasmEventParameter(Uint32.class) , new WasmEventParameter(String.class))); - ; - - protected ContractEmitEvent1(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractEmitEvent1(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public List getTransfer2Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER2_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (String) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer2EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer2EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER2_EVENT, log); - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (String) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable transfer2EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER2_EVENT)); - return transfer2EventObservable(filter); - } - - public List getTransfer3Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER3_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer3EventResponse typedResponse = new Transfer3EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (String) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (String) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (String) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (String) eventValues.getNonIndexedValues().get(4); - typedResponse.arg6 = (String) eventValues.getNonIndexedValues().get(5); - typedResponse.arg7 = (Uint32) eventValues.getNonIndexedValues().get(6); - typedResponse.arg8 = (Uint32) eventValues.getNonIndexedValues().get(7); - typedResponse.arg9 = (String) eventValues.getNonIndexedValues().get(8); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer3EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer3EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER3_EVENT, log); - Transfer3EventResponse typedResponse = new Transfer3EventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (String) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (String) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (String) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (String) eventValues.getNonIndexedValues().get(4); - typedResponse.arg6 = (String) eventValues.getNonIndexedValues().get(5); - typedResponse.arg7 = (Uint32) eventValues.getNonIndexedValues().get(6); - typedResponse.arg8 = (Uint32) eventValues.getNonIndexedValues().get(7); - typedResponse.arg9 = (String) eventValues.getNonIndexedValues().get(8); - return typedResponse; - } - }); - } - - public Observable transfer3EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER3_EVENT)); - return transfer3EventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent1.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent1.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent1.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent1.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall one_emit_event1(String name, Uint32 value) { - final WasmFunction function = new WasmFunction(FUNC_ONE_EMIT_EVENT1, Arrays.asList(name,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall one_emit_event1(String name, Uint32 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ONE_EMIT_EVENT1, Arrays.asList(name,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall one_emit_event1_args2(String name, Uint32 value) { - final WasmFunction function = new WasmFunction(FUNC_ONE_EMIT_EVENT1_ARGS2, Arrays.asList(name,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall one_emit_event1_args2(String name, Uint32 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ONE_EMIT_EVENT1_ARGS2, Arrays.asList(name,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall one_emit_event1_args9(String topic, Uint32 value, String name1, String name2, String name3, String name4, String name5, Uint32 value2, Uint32 value3, String name6) { - final WasmFunction function = new WasmFunction(FUNC_ONE_EMIT_EVENT1_ARGS9, Arrays.asList(topic,value,name1,name2,name3,name4,name5,value2,value3,name6), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall one_emit_event1_args9(String topic, Uint32 value, String name1, String name2, String name3, String name4, String name5, Uint32 value2, Uint32 value3, String name6, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ONE_EMIT_EVENT1_ARGS9, Arrays.asList(topic,value,name1,name2,name3,name4,name5,value2,value3,name6), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static ContractEmitEvent1 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractEmitEvent1(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractEmitEvent1 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractEmitEvent1(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String topic; - - public Uint32 arg1; - } - - public static class Transfer2EventResponse { - public Log log; - - public String topic; - - public Uint32 arg1; - - public String arg2; - } - - public static class Transfer3EventResponse { - public Log log; - - public String topic; - - public Uint32 arg1; - - public String arg2; - - public String arg3; - - public String arg4; - - public String arg5; - - public String arg6; - - public Uint32 arg7; - - public Uint32 arg8; - - public String arg9; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent1ComplexParam.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent1ComplexParam.java deleted file mode 100644 index f9aad76fe5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent1ComplexParam.java +++ /dev/null @@ -1,146 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractEmitEvent1ComplexParam extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001591060027f7f0060017f017f60017f0060037f7f7f0060037f7f7f017f60027f7f017f60000060047f7f7f7f0060047f7f7f7f017f60027f7e0060037e7e7f006000017f60027f7e017f60017e017f60027e7e017f60017f017e02ba020e03656e760c706c61746f6e5f70616e6963000603656e760b706c61746f6e5f73686133000703656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e7400070349480603030205000400000105000900020c000207000501000000010403010000040802040000000301040604030201000f0101020100000608010005090d01000204060301010702000405017001010105030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000e0f5f5f66756e63735f6f6e5f65786974004406696e766f6b6500370ac664480400104f0bf20401077f230041b0016b22032400200341086a4100360200200342003703000240034020054180086a2204410371044020054108460d02200541016a21050c010b0b200541fc076a21040340200441046a22042802002205417f73200541fffdfb776a7141808182847871450d000b0340200541ff0171450d01200441016a2d00002105200441016a21040c000b000b200341800820044180086b1010200341e8006a1011200341fc006a410036020020034200370274200341e8006a410210122104200341d8006a20031013200341c8006a20001013200341406b4100360200200341386a4200370300200341306a420037030020034200370328200341286a20032802582200200328025c101420032802482206200328024c101421072004200328022810152004200341d8006a10162004200341c8006a10162003280274200341f8006a28020047044010000b2004280204210820042802002109200341106a10172104200320013602800120034180016a4104722201200210182105200341a8016a4100360200200341a0016a420037030020034198016a4200370300200342003703900120034190016a4100101920034190016a200335028001101a20034190016a2005101b20034190016a41011019200328029001210220034190016a410472101c200420021015200441021012200335028001101d22042005101e2001101f200428020c200441106a28020047044010000b2009200820042802002004280204100d200428020c22050440200420053602100b200741046a101c200604402003200636024c0b200004402003200036025c0b200328027422040440200320043602780b200341b0016a24000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204102321032000200236020420002004410172360200200020033602080b2003200120021050200220036a41003a00000b160020004100360208200042003702002000410010240b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410230b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110361a0b20002002360214200020033602102000200536020c20000f0b200041001002200028020422016a105541004100200120002802006a10032000105420000ba40201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a200410250340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b20024100360208200242003703002002412010262003200228021420036b200228020022042002280204220120046b10012000200136020420002004360200200020022802083602082003450d00200220033602140b200241206a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102720026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110280c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110240b0b1500200020012802002200200128020420006b10290b190020001011200041146a41003602002000420037020c20000b840101037f200041003602082000200036020420002000360200200141046a2102037f20022802002203200146047f2000054114102322024100360200200241086a200341086a10221a20022000360204200028020021042000200236020020022004360200200420023602042000200028020841016a360208200341046a21020c010b0b0bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031028280200210120022003417f6a3602002007102a4180104f044020072000410c6a280200417c6a102b0b200141384f047f2001102720016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002102821000c010b02402007102a0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a102c0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010232105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a102d220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a102e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002102f200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a103022013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a102e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002102f200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a102c0c010b20042001410175410120011b20032005102e210241802010232106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a102d22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200102e21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003102f200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002102f052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a103022013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210102e21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006102f200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071031200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002102720026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002102821000b2000200028020020036a3602000b8c0101027f230041106b2203240002402001280208450440200041186a28020022020440200041086a280200200041146a2802002002102821000b2000200028020041016a3602000c010b200041001019200141046a210203402002280200220220014604402000410110190520002003200241086a10221032200241046a21020c010b0b0b200341106a24000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001031200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001102b200441106a24000b2a01017f2000420020011006200028020422026a105542002001200220002802006a10072000105420000b4d01027f230041106b22032400200141046a210220002001280208101221000340200228020022022001460440200341106a24000520002003200241086a10221033200241046a21020c010b0b0b4d01037f02402000280208450d00200028020422012802002202200028020022032802043602042000410036020820032802042002360200034020002001460d01200128020421010c000b000b0b3601017f230041206b22042400200041186a20011021200441106a2001102220022004200310182201100f2001101f200441206a24000b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210340b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b200310232201200420021050200020023602042000200341017236020020002001360208200120026a41003a00000b0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204101020000b0b002000410120001b10350b2f01017f2000280208200149044020011035200028020020002802041036210220002001360208200020023602000b0b2001017f2000200110232202360200200020023602042000200120026a3602080bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102321060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110361a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f2000200120021004200028020422036a105520012002200320002802006a1005200010540b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a102d22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a102e2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003102f200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110340b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102321040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110340b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102720026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001102821000b2000200028020020036a3602000b2c01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10290b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210361a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f41b408200041086a2202411076220041b4082802006a220336020041b00841b008280200220420026a41076a417871220236020002400240200341107420024d044041b408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103641086a0541000b2100200141106a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bae0402067f017e230041c0016b22002400104f10082201103522021009200041206a200041086a200220011038220341001039200041206a103a02400240200041206a103b450d002000280224450d0020002802202d000041c001490d010b10000b200041f0006a200041206a103c2000280274220141094f044010000b200028027021020340200104402001417f6a210120023100002006420886842106200241016a21020c010b0b024002402006500d00418908103d20065104402003103e410147044010000b200041206a103f10400c020b418e08103d2006520d00200041f0006a1041210520004188016a410036020020004184016a20004180016a220136020020002001360280012000410036027c2003103e410447044010000b200041206a200341011039200041206a20051042200041206a200341021039200041206a103a02400240200041206a103b450d002000280224450d0020002802202d000041c001490d010b10000b200041b0016a200041206a103c20002802b401220141054f044010000b20002802b00121020340200104402001417f6a210120022d00002004410874722104200241016a21020c010b0b2000200436027c200041206a200341031039200041206a20004180016a22011043200041206a103f2102200041a0016a200510222103200028027c210520004190016a2001101821042002200041b0016a200310222005200410202004101f200210402001101f0c010b10000b1044200041c0016a24000b0c00200020012002411c10450bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104720012003280208200328020c104836020c200320011047410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410451a200341106a24000f0b20032001104741002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104810532001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000103a200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110462204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001047200128020c210003402000450d01200141002001280208220320032000104822046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b9206010a7f230041406a22042400200010412109200042afb59bdd9e8485b9f800370310200041186a10412105200441286a1017220120002903101049200128020c200141106a28020047044010000b02402001280200220220012802042207100a2208450d002004410036022020044200370318200441186a200810262002200720042802182203200428021c220220036b100b417f4704402004200341016a20022003417f736a103820051042200821060b2003450d002004200336021c0b200128020c22030440200120033602100b20064504402005200910210b41002107200041c8006a4100360200200041c4006a2201200041406b2206360200200041386a220242f4ffce959b97c9c1d500370300200041306a41003602002000412c6a2203200041286a22083602002000200836022820062006360200200441286a1017220520022903001049200528020c200541106a28020047044010000b0240200528020022022005280204220a100a2209450d002004410036022020044200370318200441186a200910262002200a20042802182202200428021c220a20026b100b417f4704402004200241016a200a2002417f736a103820061043200921070b2002450d002004200236021c0b200528020c22020440200520023602100b024020070d000340200128020021010240027f4101200328020022032008460d001a20012006470d0141000b210502402001200646044020050d044114102322074100360200200741086a200341086a10221a20072105410121020340200820032802042203460d0241141023220141086a200341086a10221a2001200536020020052001360204200241016a2102200121050c000b000b200128020022032006280200220828020436020420082802042003360200034020012006460d0420002000280248417f6a360248200128020421010c000b000b2000280240220120073602042007200136020020002005360240200520063602042000200028024820026a3602480c020b200141086a200341086a1021200141046a2101200341046a21030c000b000b200441406b240020000b9d0501087f230041e0006b22022400200241186a10172203200041386a2201290300104a1015200320012903001049200041406b2104200328020c200341106a28020047044010000b2003280204210720032802002108200210172101200241d8006a4100360200200241d0006a4200370300200241c8006a420037030020024200370340200241406b2004101b20022802402106200241406b410472101c2001200241406b104b2205104c2001200620052802046a20052802006b101520012004101e0240200128020c200141106a280200460440200141046a2104200128020021060c010b200141046a2104100020012802002106200128020c2001280210460d0010000b2008200720062004280200100c200528020022040440200520043602040b200128020c22050440200120053602100b200328020c22010440200320013602100b200041406b101f200041286a101f200241186a101722032000290310104a1015200320002903101049200041186a2104200328020c200341106a28020047044010000b2003280204210720032802002108200210172101200241d8006a4100360200200241d0006a4200370300200241c8006a420037030020024200370340200241406b200241306a20041022103220022802402106200241406b410472101c2001200241406b104b2205104c2001200620052802046a20052802006b10152001200241306a2004102210330240200128020c200141106a280200460440200141046a2104200128020021060c010b200141046a2104100020012802002106200128020c2001280210460d0010000b2008200720062004280200100c200528020022040440200520043602040b200128020c22050440200120053602100b200328020c22010440200320013602100b200241e0006a24000b190020004200370200200041086a41003602002000104d20000bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10411a0c010b200241186a2000103c2000104621030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102321032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a104d200241206a24000b860301077f230041d0006b22042400024002402000280204450d0020002802002d000041c001490d00200441406b20004101104e2103200441306a20004100104e210620032802042100200441106a2107034020062802042000464100200328020822022006280208461b0d02200441186a20002002411c1045200441086a104122021042411410232200410036020020002004290308370208200041106a20072802003602002002104d20002001360204200128020021022001200036020020002002360200200220003602042001200128020841016a36020820032003280204220020032802086a410020001b22003602042003280200220204402003200236020820002002104821052003027f200328020422004504404100210241000c010b410021024100200328020822082005490d001a200820052005417f461b210220000b2200ad2002ad42208684370204200341002003280200220520026b2202200220054b1b3602000c0105200341003602080c010b000b000b10000b200441d0006a24000b880101037f41a008410136020041a4082802002100034020000440034041a80841a8082802002201417f6a2202360200200141014845044041a0084100360200200020024102746a22004184016a280200200041046a28020011020041a008410136020041a40828020021000c010b0b41a808412036020041a408200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105120024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105120024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000103a41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2101017f20011046220220012802044b044010000b2000200120011052200210530b2701017f230041206b22022400200241086a200020014114104510512100200241206a240020000b090020002001101d1a0b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000101a200128020021022001410472101c200141206a240020020b30002000410036020820004200370200200041011025200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004102420002802040520020b20002802006a2003200110361a2000200028020420016a3602040b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104720004100200428020c2201200428020822022001104822032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b3501017f230041106b220041c0880436020c41ac08200028020c41076a417871220036020041b008200036020041b4083f003602000b10002002044020002001200210361a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001052200010466a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a1055200120002802006a22012002200110030c010b0b0b3601017f2000280208200149044020011035200028020020002802041036210220002001360208200020023602000b200020013602040b0b2401004180080b1d7472616e7366657200696e6974006f6e655f656d69745f6576656e7431"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ONE_EMIT_EVENT1 = "one_emit_event1"; - - public static final String FUNC_GET_STRING = "get_string"; - - public static final WasmEvent TRANSFER_EVENT = new WasmEvent("transfer", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(Uint32.class) , new WasmEventParameter(List.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {String.class}, - List.class, - List.class)))); - ; - - protected ContractEmitEvent1ComplexParam(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractEmitEvent1ComplexParam(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (List) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (List) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent1ComplexParam.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent1ComplexParam.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent1ComplexParam.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent1ComplexParam.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall one_emit_event1(String name, Uint32 value, List inList) { - final WasmFunction function = new WasmFunction(FUNC_ONE_EMIT_EVENT1, Arrays.asList(name,value,inList), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall one_emit_event1(String name, Uint32 value, List inList, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ONE_EMIT_EVENT1, Arrays.asList(name,value,inList), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractEmitEvent1ComplexParam load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractEmitEvent1ComplexParam(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractEmitEvent1ComplexParam load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractEmitEvent1ComplexParam(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String topic; - - public Uint32 arg1; - - public List arg2; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent2.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent2.java deleted file mode 100644 index fb069f22df..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent2.java +++ /dev/null @@ -1,214 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractEmitEvent2 extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001611060027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60037f7f7f017f60000060047f7f7f7f0060027f7e0060047f7f7f7f017f60067f7f7f7f7f7f0060077f7f7f7f7f7f7f0060037e7e7f006000017f60027e7e017f60017f017e02ce020f03656e760c706c61746f6e5f70616e6963000603656e760b706c61746f6e5f73686133000703656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e74000703656e760d706c61746f6e5f72657475726e0000034c4b06030401000500000100000204000a04000007000b03020100010500030100000509020500080008000301050605030201000f0201020101000100010609010800020004060301010702000405017001010105030100020608017f0141f088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000f0f5f5f66756e63735f6f6e5f65786974004b06696e766f6b65003b0ad75d4b040010530bca0301087f230041b0016b220324002003418a0810112105200341f8006a10122104200341e8006a20051013200341d8006a20001013200341c8006a20011013200341406b4100360200200341386a4200370300200341306a420037030020034200370328200341286a20032802682200200328026c101420032802582205200328025c101420032802482206200328024c101421072004200328022810152004200341e8006a10162004200341d8006a10162004200341c8006a1016200428020c200441106a28020047044010000b2004280204210820042802002109200341106a10172101200341a8016a4100360200200341a0016a420037030020034198016a4200370300200342003703900120034190016a4100101820034190016a2002101920034190016a41011018200328029001210a20034190016a410472101a2001200a101520014101101b22012002101c200128020c200141106a28020047044010000b2009200820012802002001280204100d200128020c22020440200120023602100b200741046a101a200604402003200636024c0b200504402003200536025c0b200004402003200036026c0b200428020c22010440200420013602100b200341b0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b102420000b1d0020001025200041146a41003602002000420037020c20004103101b0bec0101057f230041106b220324000240200128020420012d00002202410176200241017122041b2202450440410021010c010b2001280208200141016a20041b210420021026220520026a21062005210103402002450d01200120042d00003a00002002417f6a2102200141016a2101200441016a21040c000b000b0240200120056b220241204d04402000200636020820002001360204200020053602000c010b200341003602082003420037030020034120102720052002200328020022012003280204220420016b10012000200436020420002001360200200020032802083602080b200341106a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102820026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110290c010b20000b2201200128020020036a36020020000b13002000280208200149044020002001102a0b0b1500200020012802002200200128020420006b102b0b190020001025200041146a41003602002000420037020c20000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031029280200210120022003417f6a3602002007102c4180104f044020072000410c6a280200417c6a102d0b200141384f047f2001102820016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002102921000c010b02402007102c0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a102e0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010262105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a102f220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10302102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021031200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a103222013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10302102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021031200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a102e0c010b20042001410175410120011b200320051030210241802010262106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a102f22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103021032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031031200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021031052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a103222013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103021062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061031200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071033200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b090020002001ad10340bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001033200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001102d200441106a24000bf30101057f20002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410260b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001103a1a0b20002002360214200020033602102000200536020c20000b090020002001ad10360bb20401077f230041d0016b22062400200641800810112108200641f8006a10122107200641e8006a20081013200641d8006a20001013200641c8006a20011013200641406b4100360200200641386a4200370300200641306a420037030020064200370328200641286a20062802682200200628026c101420062802582208200628025c101420062802482209200628024c1014210a2007200628022810152007200641e8006a10162007200641d8006a10162007200641c8006a1016200728020c200741106a28020047044010000b2007280204210b2007280200210c200641106a101721012006200336029401200620023602900120064198016a2004101e2102200641a4016a2005101e2103200641c8016a4100360200200641c0016a4200370300200641b8016a4200370300200642003703b001200641b0016a41001018200641b0016a2006280290011019200641b0016a2006280294011019200641b0016a2002101f200641b0016a2003101f200641b0016a4101101820062802b0012104200641b0016a410472101a20012004101520014104101b2201200628029001101c2001200628029401101c200120021020200120031020200128020c200141106a28020047044010000b200c200b20012802002001280204100d200128020c22020440200120023602100b200a41046a101a200904402006200936024c0b200804402006200836025c0b200004402006200036026c0b200728020c22010440200720013602100b200641d0016a24000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102420000b1e01017f230041106b22022400200020022001101e1035200241106a24000b1e01017f230041106b22022400200020022001101e1037200241106a24000b3001017f230041206b22042400200041186a20011022200441106a2001101e20042002101e20031010200441206a24000b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210380b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b200310262201200420021054200020023602042000200341017236020020002001360208200120026a41003a00000b0b4401017f230041406a22072400200041186a20011022200741306a2001101e200741206a2002101e20032004200741106a2005101e20072006101e101d200741406b24000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204102621032000200236020420002004410172360200200020033602080b2003200120021054200220036a41003a00000b1600200041003602082000420037020020004100102a0b0b002000410120001b10390bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102621060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001103a1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2f01017f200028020820014904402001103920002802002000280204103a210220002001360208200020023602000b0b2801017f2000200120021004200028020422036a105920012002200320002802006a1005200010580b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a102f22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10302103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031031200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110380b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102621040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110380b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002102820026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002102921000b2000200028020020036a3602000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102820026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001102921000b2000200028020020036a3602000b2801017f2000420020011006200028020422026a105942002001200220002802006a1007200010580b2c01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b102b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103a1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f41e008200041086a2202411076220041e0082802006a220336020041dc0841dc08280200220420026a41076a417871220236020002400240200341107420024d044041e008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103a41086a0541000b2100200141106a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bc90602087f017e23004180026b22002400105310082201103922021009200041c8006a200041086a20022001103c22034100103d200041c8006a103e02400240200041c8006a103f450d00200028024c450d0020002802482d000041c001490d010b10000b200041206a200041c8006a10402000280224220141094f044010000b200028022021020340200104402001417f6a210120023100002008420886842108200241016a21020c010b0b024002402008500d004193081041200851044020031042200041c8006a104310440c020b41980810412008510440200041206a104521012000412c6a104521022000410036023820031046410447044010000b200041013602e001200020033602f0012000200041e0016a3602f401200041f0016a20011047200041f0016a20021047200041c8006a200320002802e001103d2000200041c8006a1048360238200041c8006a10432103200041d0016a2001101e2101200041c0016a2002101e210220002802382104200041c8006a200041f0016a2001101e200041e0016a2002101e20041021200310440c020b41a80810412008510440200041c8006a10452101200041d4006a1045210220004200370360200041e8006a10452104200041f4006a10452105200041e4006a2106200041e0006a210720031046410747044010000b200041013602f001200020033602202000200041f0016a360224200041206a20011047200041206a20021047200041206a20071049200041206a20061049200041206a20041047200041206a20051047200041206a10432103200041b0016a2001101e2101200041a0016a2002101e2102200028026421062000280260210720004190016a2004101e210420004180016a2005101e2105200041206a200041f0016a2001101e200041e0016a2002101e20072006200041d0016a2004101e200041c0016a2005101e1023200310440c020b41be0810412008520d0020031042200041c8006a10432103200041e0016a200041e0006a101e2102200041206a101722012002104a10152001200041f0016a2002101e1037200128020c200141106a28020047044010000b20012802002001280204100e200128020c22020440200120023602100b200310440c010b10000b104b20004180026a24000b0c00200020012002411c104c0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001105120012003280208200328020c105236020c200320011051410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114104c1a200341106a24000f0b20032001105141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004105210572001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000103e200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001104d2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001046410147044010000b0be90101087f230041406a22012400200010452108200042afb59bdd9e8485b9f800370310200041186a10452106200141286a101722032000290310104e200328020c200341106a28020047044010000b02402003280200220220032802042205100a22074504400c010b2001410036022020014200370318200141186a200710272002200520012802182202200128021c220520026b100b417f4704402001200241016a20052002417f736a103c2006104f200721040b2002450d002001200236021c0b200328020c22020440200320023602100b20044504402006200810220b200141406b240020000bff0201097f230041d0006b22022400200241186a10172103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a2000290310103420022802302101200241306a410472101a20032001101520032000290310104e200328020c200341106a28020047044010000b2003280204210420032802002105200241306a10172101200041186a2206104a210741011026220041fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009102a20012802040520080b20012802006a20004101103a1a2001200128020441016a3602042001200041016a200720006b6a10152001200241086a2006101e10370240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b2005200420002001280204100c200128020c22000440200120003602100b200328020c22010440200320013602100b200241d0006a24000b190020004200370200200041086a41003602002000105020000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001051200128020c210003402000450d01200141002001280208220320032000105222046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4301017f230041206b22022400200241086a20002802002000280204280200103d200241086a2001104f20002802042200200028020041016a360200200241206a24000b830101037f230041106b220124002000103e024002402000103f450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001040200128020c220041054f044010000b200128020821030340200004402000417f6a210020032d00002002410874722102200341016a21030c010b0b200141106a240020020b4601017f230041206b22022400200241086a20002802002000280204280200103d2001200241086a104836020020002802042200200028020041016a360200200241206a24000b5901017f230041306b22012400200141286a4100360200200141206a4200370300200141186a420037030020014200370310200141106a20012000101e103520012802102100200141106a410472101a200141306a240020000b880101037f41cc08410136020041d0082802002100034020000440034041d40841d4082802002201417f6a2202360200200141014845044041cc084100360200200020024102746a22004184016a280200200041046a28020011020041cc08410136020041d00828020021000c010b0b41d408412036020041d008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105520024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105520024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000103e41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b08002000200110360bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10451a0c010b200241186a200010402000104d21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102621032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1050200241206a24000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2101017f2001104d220220012802044b044010000b2000200120011056200210570b2701017f230041206b22022400200241086a200020014114104c10552100200241206a240020000b3501017f230041106b220041f0880436020c41d808200028020c41076a417871220036020041dc08200036020041e0083f003602000b100020020440200020012002103a1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010562000104d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a1059200120002802006a22012002200110030c010b0b0b3601017f200028020820014904402001103920002802002000280204103a210220002001360208200020023602000b200020013602040b0b4f01004180080b487472616e7366657232007472616e7366657200696e69740074776f5f656d69745f6576656e74320074776f5f656d69745f6576656e74325f6172677334006765745f737472696e67"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_TWO_EMIT_EVENT2 = "two_emit_event2"; - - public static final String FUNC_TWO_EMIT_EVENT2_ARGS4 = "two_emit_event2_args4"; - - public static final String FUNC_GET_STRING = "get_string"; - - public static final WasmEvent TRANSFER_EVENT = new WasmEvent("transfer", Arrays.asList(new WasmEventParameter(String.class, true) , new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(Uint32.class))); - ; - - public static final WasmEvent TRANSFER2_EVENT = new WasmEvent("transfer2", Arrays.asList(new WasmEventParameter(String.class, true) , new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(Uint32.class) , new WasmEventParameter(Uint32.class) , new WasmEventParameter(String.class) , new WasmEventParameter(String.class))); - ; - - protected ContractEmitEvent2(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractEmitEvent2(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public List getTransfer2Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER2_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint32) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (String) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (String) eventValues.getNonIndexedValues().get(3); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer2EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer2EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER2_EVENT, log); - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = log; - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint32) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (String) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (String) eventValues.getNonIndexedValues().get(3); - return typedResponse; - } - }); - } - - public Observable transfer2EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER2_EVENT)); - return transfer2EventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent2.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent2.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent2.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent2.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall two_emit_event2(String name, String nationality, Uint32 value) { - final WasmFunction function = new WasmFunction(FUNC_TWO_EMIT_EVENT2, Arrays.asList(name,nationality,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall two_emit_event2(String name, String nationality, Uint32 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TWO_EMIT_EVENT2, Arrays.asList(name,nationality,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall two_emit_event2_args4(String name, String nationality, Uint32 value1, Uint32 value2, String name1, String name2) { - final WasmFunction function = new WasmFunction(FUNC_TWO_EMIT_EVENT2_ARGS4, Arrays.asList(name,nationality,value1,value2,name1,name2), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall two_emit_event2_args4(String name, String nationality, Uint32 value1, Uint32 value2, String name1, String name2, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TWO_EMIT_EVENT2_ARGS4, Arrays.asList(name,nationality,value1,value2,name1,name2), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractEmitEvent2 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractEmitEvent2(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractEmitEvent2 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractEmitEvent2(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String topic1; - - public String topic2; - - public Uint32 arg1; - } - - public static class Transfer2EventResponse { - public Log log; - - public String topic1; - - public String topic2; - - public Uint32 arg1; - - public Uint32 arg2; - - public String arg3; - - public String arg4; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent3.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent3.java deleted file mode 100644 index e44ca7ca9d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEvent3.java +++ /dev/null @@ -1,222 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractEmitEvent3 extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000016b1160027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60037f7f7f017f60000060047f7f7f7f0060027f7e0060047f7f7f7f017f60057f7f7f7f7f0060077f7f7f7f7f7f7f0060087f7f7f7f7f7f7f7f0060037e7e7f006000017f60027e7e017f60017f017e02ce020f03656e760c706c61746f6e5f70616e6963000603656e760b706c61746f6e5f73686133000703656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e74000703656e760d706c61746f6e5f72657475726e0000034c4b06070401000500000100000204000b0400000a000c0302010001050003010000050902050008000800030105060503020100100201020101000100010609010800020004060301010702000405017001010105030100020608017f0141f088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000f0f5f5f66756e63735f6f6e5f65786974004b06696e766f6b65003b0a985f4b040010530bf80301087f230041c0016b220424002004418a081011210620044188016a10122105200441f8006a20061013200441e8006a20001013200441d8006a20011013200441c8006a20021013200441406b4100360200200441386a4200370300200441306a420037030020044200370328200441286a20042802782201200428027c101420042802682200200428026c101420042802582206200428025c101420042802482207200428024c101421082005200428022810152005200441f8006a10162005200441e8006a10162005200441d8006a10162005200441c8006a1016200528020c200541106a28020047044010000b200528020421092005280200210a200441106a10172102200441b8016a4100360200200441b0016a4200370300200441a8016a4200370300200442003703a001200441a0016a41001018200441a0016a20031019200441a0016a4101101820042802a001210b200441a0016a410472101a2002200b101520024101101b22022003101c200228020c200241106a28020047044010000b200a200920022802002002280204100d200228020c22030440200220033602100b200841046a101a200704402004200736024c0b200604402004200636025c0b200004402004200036026c0b200104402004200136027c0b200528020c22020440200520023602100b200441c0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b102420000b1d0020001025200041146a41003602002000420037020c20004104101b0bec0101057f230041106b220324000240200128020420012d00002202410176200241017122041b2202450440410021010c010b2001280208200141016a20041b210420021026220520026a21062005210103402002450d01200120042d00003a00002002417f6a2102200141016a2101200441016a21040c000b000b0240200120056b220241204d04402000200636020820002001360204200020053602000c010b200341003602082003420037030020034120102720052002200328020022012003280204220420016b10012000200436020420002001360200200020032802083602080b200341106a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102820026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110290c010b20000b2201200128020020036a36020020000b13002000280208200149044020002001102a0b0b1500200020012802002200200128020420006b102b0b190020001025200041146a41003602002000420037020c20000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031029280200210120022003417f6a3602002007102c4180104f044020072000410c6a280200417c6a102d0b200141384f047f2001102820016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002102921000c010b02402007102c0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a102e0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010262105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a102f220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10302102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021031200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a103222013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10302102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021031200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a102e0c010b20042001410175410120011b200320051030210241802010262106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a102f22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103021032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031031200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021031052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a103222013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103021062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061031200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071033200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b090020002001ad10340bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001033200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001102d200441106a24000bf30101057f20002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410260b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001103a1a0b20002002360214200020033602102000200536020c20000b090020002001ad10360be00401077f230041e0016b2207240020074180081011210920074188016a10122108200741f8006a20091013200741e8006a20001013200741d8006a20011013200741c8006a20021013200741406b4100360200200741386a4200370300200741306a420037030020074200370328200741286a20072802782201200728027c101420072802682200200728026c101420072802582209200728025c10142007280248220a200728024c1014210b2008200728022810152008200741f8006a10162008200741e8006a10162008200741d8006a10162008200741c8006a1016200828020c200841106a28020047044010000b2008280204210c2008280200210d200741106a10172102200720043602a401200720033602a001200741a8016a2005101e2103200741b4016a2006101e2104200741d8016a4100360200200741d0016a4200370300200741c8016a4200370300200742003703c001200741c0016a41001018200741c0016a20072802a0011019200741c0016a20072802a4011019200741c0016a2003101f200741c0016a2004101f200741c0016a4101101820072802c0012105200741c0016a410472101a20022005101520024104101b220220072802a001101c200220072802a401101c200220031020200220041020200228020c200241106a28020047044010000b200d200c20022802002002280204100d200228020c22030440200220033602100b200b41046a101a200a04402007200a36024c0b200904402007200936025c0b200004402007200036026c0b200104402007200136027c0b200828020c22020440200820023602100b200741e0016a24000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102420000b1e01017f230041106b22022400200020022001101e1035200241106a24000b1e01017f230041106b22022400200020022001101e1037200241106a24000b3901017f230041306b22052400200041186a20011022200541206a2001101e200541106a2002101e20052003101e20041010200541306a24000b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210380b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b200310262201200420021054200020023602042000200341017236020020002001360208200120026a41003a00000b0b4f01017f230041d0006b22082400200041186a20011022200841406b2001101e200841306a2002101e200841206a2003101e20042005200841106a2006101e20082007101e101d200841d0006a24000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204102621032000200236020420002004410172360200200020033602080b2003200120021054200220036a41003a00000b1600200041003602082000420037020020004100102a0b0b002000410120001b10390bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102621060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001103a1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2f01017f200028020820014904402001103920002802002000280204103a210220002001360208200020023602000b0b2801017f2000200120021004200028020422036a105920012002200320002802006a1005200010580b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a102f22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10302103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031031200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110380b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102621040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110380b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002102820026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002102921000b2000200028020020036a3602000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102820026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001102921000b2000200028020020036a3602000b2801017f2000420020011006200028020422026a105942002001200220002802006a1007200010580b2c01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b102b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103a1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f41e408200041086a2202411076220041e4082802006a220336020041e00841e008280200220420026a41076a417871220236020002400240200341107420024d044041e408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103a41086a0541000b2100200141106a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b9a0702097f017e230041b0026b22002400105310082201103922021009200041c8006a200041086a20022001103c22034100103d200041c8006a103e02400240200041c8006a103f450d00200028024c450d0020002802482d000041c001490d010b10000b200041206a200041c8006a10402000280224220141094f044010000b200028022021020340200104402001417f6a210120023100002009420886842109200241016a21020c010b0b024002402009500d004193081041200951044020031042200041c8006a104310440c020b41980810412009510440200041c8006a10452101200041d4006a10452102200041e0006a104521042000410036026c20031046410547044010000b2000410136029002200020033602a002200020004190026a3602a402200041a0026a20011047200041a0026a20021047200041a0026a20041047200041206a2003200028029002103d2000200041206a104836026c200041206a10432103200041f0016a2001101e2101200041e0016a2002101e2102200041d0016a2004101e2104200028026c2105200041206a200041a0026a2001101e20004190026a2002101e20004180026a2004101e20051021200310440c020b41aa0810412009510440200041c8006a10452101200041d4006a10452102200041e0006a104521042000420037026c200041f4006a1045210520004180016a10452106200041f0006a2107200041ec006a210820031046410847044010000b200041013602a002200020033602202000200041a0026a360224200041206a20011047200041206a20021047200041206a20041047200041206a20081049200041206a20071049200041206a20051047200041206a20061047200041206a10432103200041d0016a2001101e2101200041c0016a2002101e2102200041b0016a2004101e210420002802702107200028026c2108200041a0016a2005101e210520004190016a2006101e2106200041206a200041a0026a2001101e20004190026a2002101e20004180026a2004101e20082007200041f0016a2005101e200041e0016a2006101e1023200310440c020b41c20810412009520d0020031042200041c8006a1043210320004190026a200041e0006a101e2102200041206a101722012002104a10152001200041a0026a2002101e1037200128020c200141106a28020047044010000b20012802002001280204100e200128020c22020440200120023602100b200310440c010b10000b104b200041b0026a24000b0c00200020012002411c104c0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001105120012003280208200328020c105236020c200320011051410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114104c1a200341106a24000f0b20032001105141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004105210572001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000103e200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001104d2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001046410147044010000b0be90101087f230041406a22012400200010452108200042afb59bdd9e8485b9f800370310200041186a10452106200141286a101722032000290310104e200328020c200341106a28020047044010000b02402003280200220220032802042205100a22074504400c010b2001410036022020014200370318200141186a200710272002200520012802182202200128021c220520026b100b417f4704402001200241016a20052002417f736a103c2006104f200721040b2002450d002001200236021c0b200328020c22020440200320023602100b20044504402006200810220b200141406b240020000bff0201097f230041d0006b22022400200241186a10172103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a2000290310103420022802302101200241306a410472101a20032001101520032000290310104e200328020c200341106a28020047044010000b2003280204210420032802002105200241306a10172101200041186a2206104a210741011026220041fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009102a20012802040520080b20012802006a20004101103a1a2001200128020441016a3602042001200041016a200720006b6a10152001200241086a2006101e10370240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b2005200420002001280204100c200128020c22000440200120003602100b200328020c22010440200320013602100b200241d0006a24000b190020004200370200200041086a41003602002000105020000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001051200128020c210003402000450d01200141002001280208220320032000105222046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4301017f230041206b22022400200241086a20002802002000280204280200103d200241086a2001104f20002802042200200028020041016a360200200241206a24000b830101037f230041106b220124002000103e024002402000103f450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001040200128020c220041054f044010000b200128020821030340200004402000417f6a210020032d00002002410874722102200341016a21030c010b0b200141106a240020020b4601017f230041206b22022400200241086a20002802002000280204280200103d2001200241086a104836020020002802042200200028020041016a360200200241206a24000b5901017f230041306b22012400200141286a4100360200200141206a4200370300200141186a420037030020014200370310200141106a20012000101e103520012802102100200141106a410472101a200141306a240020000b880101037f41d008410136020041d4082802002100034020000440034041d80841d8082802002201417f6a2202360200200141014845044041d0084100360200200020024102746a22004184016a280200200041046a28020011020041d008410136020041d40828020021000c010b0b41d808412036020041d408200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105520024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105520024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000103e41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b08002000200110360bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10451a0c010b200241186a200010402000104d21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102621032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1050200241206a24000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2101017f2001104d220220012802044b044010000b2000200120011056200210570b2701017f230041206b22022400200241086a200020014114104c10552100200241206a240020000b3501017f230041106b220041f0880436020c41dc08200028020c41076a417871220036020041e008200036020041e4083f003602000b100020020440200020012002103a1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010562000104d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a1059200120002802006a22012002200110030c010b0b0b3601017f200028020820014904402001103920002802002000280204103a210220002001360208200020023602000b200020013602040b0b5301004180080b4c7472616e7366657232007472616e7366657200696e69740074687265655f656d69745f6576656e74330074687265655f656d69745f6576656e74335f6172677334006765745f737472696e67"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_THREE_EMIT_EVENT3 = "three_emit_event3"; - - public static final String FUNC_THREE_EMIT_EVENT3_ARGS4 = "three_emit_event3_args4"; - - public static final String FUNC_GET_STRING = "get_string"; - - public static final WasmEvent TRANSFER_EVENT = new WasmEvent("transfer", Arrays.asList(new WasmEventParameter(String.class, true) , new WasmEventParameter(String.class, true) , new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(Uint32.class))); - ; - - public static final WasmEvent TRANSFER2_EVENT = new WasmEvent("transfer2", Arrays.asList(new WasmEventParameter(String.class, true) , new WasmEventParameter(String.class, true) , new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(Uint32.class) , new WasmEventParameter(Uint32.class) , new WasmEventParameter(String.class) , new WasmEventParameter(String.class))); - ; - - protected ContractEmitEvent3(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractEmitEvent3(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.topic3 = (String) eventValues.getIndexedValues().get(2); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.topic3 = (String) eventValues.getIndexedValues().get(2); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public List getTransfer2Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER2_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.topic3 = (String) eventValues.getIndexedValues().get(2); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint32) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (String) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (String) eventValues.getNonIndexedValues().get(3); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer2EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer2EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER2_EVENT, log); - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = log; - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.topic3 = (String) eventValues.getIndexedValues().get(2); - typedResponse.arg1 = (Uint32) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint32) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (String) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (String) eventValues.getNonIndexedValues().get(3); - return typedResponse; - } - }); - } - - public Observable transfer2EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER2_EVENT)); - return transfer2EventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent3.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent3.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent3.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEvent3.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall three_emit_event3(String name, String nationality, String city, Uint32 value) { - final WasmFunction function = new WasmFunction(FUNC_THREE_EMIT_EVENT3, Arrays.asList(name,nationality,city,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall three_emit_event3(String name, String nationality, String city, Uint32 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_THREE_EMIT_EVENT3, Arrays.asList(name,nationality,city,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall three_emit_event3_args4(String name, String nationality, String city, Uint32 value1, Uint32 value2, String name1, String name2) { - final WasmFunction function = new WasmFunction(FUNC_THREE_EMIT_EVENT3_ARGS4, Arrays.asList(name,nationality,city,value1,value2,name1,name2), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall three_emit_event3_args4(String name, String nationality, String city, Uint32 value1, Uint32 value2, String name1, String name2, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_THREE_EMIT_EVENT3_ARGS4, Arrays.asList(name,nationality,city,value1,value2,name1,name2), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractEmitEvent3 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractEmitEvent3(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractEmitEvent3 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractEmitEvent3(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String topic1; - - public String topic2; - - public String topic3; - - public Uint32 arg1; - } - - public static class Transfer2EventResponse { - public Log log; - - public String topic1; - - public String topic2; - - public String topic3; - - public Uint32 arg1; - - public Uint32 arg2; - - public String arg3; - - public String arg4; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEventWithArray.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEventWithArray.java deleted file mode 100644 index 7132271b2e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractEmitEventWithArray.java +++ /dev/null @@ -1,447 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int8; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractEmitEventWithArray extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000016b1160027f7f0060017f017f60017f0060027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f0060087f7f7f7f7f7f7f7f0060097f7f7f7f7f7f7f7f7f0060047f7f7f7f017f60037f7e7e0060027f7e0060037e7e7f006000017f60027e7e017f60017f017e02ce020f03656e760c706c61746f6e5f70616e6963000603656e760b706c61746f6e5f73686133000703656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000a03656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e74000703656e760d706c61746f6e5f72657475726e0000037574060803030005020000010303030300000000000000000300000000000000020800000208050805010302090009090905040201050004010000050a02050000000b0b040100000605040201001002010201010000000000000000000000020201060a010c010002010101040604010103070002000405017001010105030100020608017f0141c089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000f0f5f5f66756e63735f6f6e5f65786974006f06696e766f6b6500550a94ae01740400107a0b8b0502077f017e230041f0016b22082400200841186a419e0810112109200841d0006a41011012210a200841406b2009101320084180016a4100360200200841f8006a220c4200370300200841f0006a420037030020084200370368200841e8006a20082802402008280244101421092008280268210b200941046a1015200a200b1016200a200841406b1017200a28020c200a41106a28020047044010000b200a280204210d200a280200210e200841286a10182109200841e8006a20001019210b200841f4006a2001101a210120082002290000370380012008200329000037038801200820042900003703900120084198016a2005101b2102200841a4016a2006101b2103200841b0016a2007101c2104200841d8016a4100360200200841d0016a4200370300200841c8016a4200370300200842003703c001200841c0016a4100101d200841c0016a200b101e200841c0016a2001280200200c280200101421002008200829038001220f3703102008200f3703e0012000200841106a101f200020084188016a22051020200020084190016a220610212000200210222000200310232000200841e0016a2004101c102420004101101d20082802c0012107200041046a10152009200710162009410810252200200b10262000200110172008200829038001220f3703c0012008200f3703082000200841086a102720002005102820002006102920002002102a20002003102b2000200841c0016a2004101c102c200841e8006a102d200028020c200041106a28020047044010000b200e200d20002802002000280204100d200028020c22090440200020093602100b200828024022000440200820003602440b200a28020c22000440200a20003602100b200841f0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b103f20000b1d0020001040200041146a41003602002000420037020c2000200110250be70101047f230041206b220324000240200341106a2001280208200141016a20012d0000220241017122041b220520052001280204200241017620041b6a103322012802042202200128020022046b41204d04402000200236020420002004360200200142003702002001280208210220014100360208200020023602080c010b200341003602082003420037030020034120103020012802002202200128020420026b200328020022022003280204220420026b100120002004360204200020023602002000200328020836020820012802002200450d00200120003602040b200341206a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104120026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110420c010b20000b2201200128020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000104c200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011046200441106a24000b1300200028020820014904402000200110430b0b1500200020012802002200200128020420006b10440b190020001040200041146a41003602002000420037020c20000b6d01027f20004200370200200041003602080240200128020420012802006b2202450d0020002002103622033602002000200220036a360208200020033602042001280204200128020022026b22014101480d00200320022001103e1a2000200028020420016a3602040b20000b5a01017f20004200370200200041003602080240200128020420012802006b2202450d0020002002102f2001280204200128020022026b22014101480d00200028020420022001103e1a2000200028020420016a3602040b20000b800101037f200041003602082000200036020420002000360200200141046a2102037f20022802002204200146047f200005410c1036210220042d0008210320022000360204200220033a0008200028020021032000200236020020022003360200200320023602042000200028020841016a360208200441046a21020c010b0b0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204103f20000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031042280200210120022003417f6a360200200710454180104f044020072000410c6a280200417c6a10460b200141384f047f2001104120016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002104221000c010b0240200710450d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10470c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010362105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1048220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10492102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104a200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104b22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10492102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104a200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10470c010b20042001410175410120011b200320051049210241802010362106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104822013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104921032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003104a200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002104a052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104b22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104921062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006104a200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007104c200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b4f01017f20012802002001280204460440200010380f0b20004100101d200128020421022001280200210103402001200246044020004101101d05200020012c0000104d200141016a21010c010b0b0b5f01037f410121030240034020024108460d01200120026a2104200241016a210220042d0000450d000b410921030b200041186a28020022020440200041086a280200200041146a2802002002104221000b2000200028020020036a3602000b3101017f20004100101d034020024108464504402000200120026a2c0000104d200241016a21020c010b0b20004101101d0b3101017f20004100101d034020024108464504402000200120026a2d00001053200241016a21020c010b0b20004101101d0b4801017f2001280208450440200010380f0b20004100101d200141046a2102034020022802002202200146044020004101101d05200020022d00081053200241046a21020c010b0b0b4801017f2001280208450440200010380f0b20004100101d200141046a2102034020022802002202200146044020004101101d05200020022c0008104d200241046a21020c010b0b0b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104120026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001104221000b2000200028020020036a3602000b9f0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410360b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001103e1a0b20002002360214200020033602102000200536020c20000f0b200041001002200028020422016a10820141004100200120002802006a1003200010810120000b4001017f2000200128020420012802006b102521022001280204210020012802002101034020002001470440200220012c0000104e200141016a21010c010b0b0b2901017f230041106b22022400200220012900003703082000200241086a41081044200241106a24000b3001017f2000410810252102410021000340200041084704402002200020016a2c0000104e200041016a21000c010b0b0b3001017f2000410810252102410021000340200041084704402002200020016a2d00001054200041016a21000c010b0b0b3801017f200141046a210220002001280208102521000340200120022802002202470440200020022d00081054200241046a21020c010b0b0b3801017f200141046a210220002001280208102521000340200120022802002202470440200020022c0008104e200241046a21020c010b0b0b2c01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10440b3701017f2000413c6a1031200041306a1031200028020c22010440200041106a20013602000b200028020022010440200020013602040b0be60702087f017e23004190026b22082400200841186a4194081011210920084180016a41021012210c200841f0006a20091013200841003602a00120084200370398012000280204220a2109034020002009470440200b41016a210b200928020421090c010b0b027f200b4504404100210a41000c010b20084198016a200b102f03402000200a470440200828029c012209200a2d00083a0000200a280204210a2008200941016a36029c010c010b0b200828029c01210a2008280298010b21090240200a20096b41204d04402008200a3602642008200936026020082802a001210b200841003602a0012008200b36026820084200370398010c010b200841003602e801200842003703e001200841e0016a412010302009200828029c0120096b20082802e001220b20082802e401220a200b6b10012008200a3602642008200b360260200820082802e801360268200904402008200936029c010b200b21090b200841d8006a4100360200200841d0006a4200370300200841c8006a420037030020084200370340200841406b2008280270200828027410142009200a1014210d200c20082802401016200c200841f0006a1017200c200841e0006a1017200c28020c200c41106a28020047044010000b200c280204210e200c280200210f200841286a1018210a20084198016a20011019210b200841a4016a2002101a2100200820032900003703b001200820042900003703b801200820052900003703c001200841c8016a22032006101b2101200841d4016a2007101c2102200841f8016a4100360200200841f0016a4200370300200841e8016a4200370300200842003703e001200841e0016a4100101d200841e0016a200b101e200841e0016a2000280200200841a8016a28020010142109200820082903b001221037031020082010370380022009200841106a101f2009200841b8016a220410202009200841c0016a22051021200920011022200920084180026a2002101c102420094101101d20082802e0012106200941046a1015200a20061016200a410710252209200b1026200920001017200820082903b00122103703e001200820103703082009200841086a102720092004102820092005102920092001102a2009200841e0016a2002101c102c2003103120082802a401220a04402008200a3602a8010b200828029801220a04402008200a36029c010b200928020c200941106a28020047044010000b200f200e20092802002009280204100d200928020c220a04402009200a3602100b200d41046a1015200828026022090440200820093602640b200828027022090440200820093602740b200c28020c22090440200c20093602100b20084190026a24000b2001017f2000200110362202360200200020023602042000200120026a3602080bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001103621060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001103e1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b4d01037f02402000280208450d00200028020422012802002202200028020022032802043602042000410036020820032802042002360200034020002001460d01200128020421010c000b000b0bfc0802077f017e23004190026b22082400200841106a418a081011210920084188016a41031012210a200841f8006a200910130240200841a0016a2000280200200028020410332200280204220d2000280200220c6b41204d04402000420037020020002802082109200041003602082008200d36026c2008200c360268200820093602700c010b200841003602e801200842003703e001200841e0016a4120103020002802002209200028020420096b20082802e001220c20082802e401220d200c6b10012008200d36026c2008200c360268200820082802e80136027020002802002209450d00200020093602040b41002109200841003602a801200842003703a0010240027f41002001280204220b200128020022006b2201450d001a200841a0016a2001102f03402000200b47044020082802a401220920002d00003a00002008200941016a3602a401200041016a21000c010b0b20082802a001210920082802a4010b220020096b41204d04402008200036025c2008200936025820082802a801210b200841003602a8012008200b360260200842003703a0010c010b200841003602e801200842003703e001200841e0016a41201030200920082802a40120096b20082802e001220b20082802e4012200200b6b10012008200036025c2008200b360258200820082802e80136026020090440200820093602a4010b200b21090b200841d0006a4100360200200841c8006a4200370300200841406b420037030020084200370338200841386a2008280278200828027c1014200c200d1014200920001014210d200a20082802381016200a200841f8006a1017200a200841e8006a1017200a200841d8006a1017200a28020c200a41106a28020047044010000b200a2802042101200a280200210e200841206a10182100200820022900003703a001200820032900003703a801200820042900003703b001200841b8016a22022005101b2109200841c4016a22032006101b210b200841d0016a2007101c210c200841f8016a4100360200200841f0016a4200370300200841e8016a4200370300200842003703e001200841e0016a4100101d200820082903a001220f3703082008200f37038002200841e0016a200841086a101f200841e0016a200841a8016a22041020200841e0016a200841b0016a22051021200841e0016a20091023200841e0016a200b1022200841e0016a20084180026a200c101c1024200841e0016a4101101d20082802e0012106200841e0016a41047210152000200610162000410610252100200820082903a001220f3703e0012008200f37030020002008102720002004102820002005102920002009102b2000200b102a2000200841e0016a200c101c102c2003103120021031200028020c200041106a28020047044010000b200e200120002802002000280204100d200028020c22090440200020093602100b200d41046a10152008280258220004402008200036025c0b2008280268220004402008200036026c0b2008280278220004402008200036027c0b200a28020c22000440200a20003602100b20084190026a24000b5501017f20004100360208200042003702000240200220016b2203450d0020002003102f034020012002460d01200028020420012d00003a00002000200028020441016a360204200141016a21010c000b000b20000bbf0a010a7f23004190026b2208240020084180081011210920084188016a41041012210b200841f8006a200910130240200841a0016a2000200041086a1035220028020422092000280200220a6b41204d0440200042003702002000280208210c200041003602082008200936026c2008200a3602682008200c3602700c010b200841003602e801200842003703e001200841e0016a4120103020002802002209200028020420096b20082802e001220920082802e401220a20096b10012008200a36026c20082009360268200820082802e80136027020002802002209450d00200020093602040b41081036220a41086a210c41002100200a21090340200041084704402009200020016a2d00003a0000200041016a2100200941016a21090c010b0b02402009200a6b41204d04402008200c3602602008200936025c2008200a3602580c010b200841003602a801200842003703a001200841a0016a41201030200a2009200a6b20082802a001220020082802a401220920006b10012008200936025c20082000360258200820082802a8013602602000210a0b0240200841a0016a2002200241086a103522002802042201200028020022026b41204d0440200042003702002000280208210c200041003602082008200136024c200820023602482008200c3602500c010b200841003602e801200842003703e001200841e0016a4120103020002802002201200028020420016b20082802e001220220082802e401220120026b10012008200136024c20082002360248200820082802e8013602502000280200220c450d002000200c3602040b200841406b4100360200200841386a4200370300200841306a420037030020084200370328200841286a2008280278220d200828027c10142008280268220e200828026c1014200a20091014200220011014210f200b20082802281016200b200841f8006a1017200b200841e8006a1017200b200841d8006a1017200b200841c8006a1017200b28020c200b41106a28020047044010000b200b2802042110200b2802002111200841106a1018210c200841a0016a200310192103200841ac016a2004101a2104200841b8016a2005101b2105200841c4016a2201200610371a200841d0016a2007101c2106200841f8016a4100360200200841f0016a4200370300200841e8016a4200370300200842003703e001200841e0016a4100101d200841e0016a2003101e200841e0016a2004280200200841b0016a28020010142209200510230240200841cc016a280200450440200910380c010b20094100101d200841c8016a2100034020002802002200200146044020094101101d05200920084180026a200041086a101c1024200041046a21000c010b0b0b200920084180026a2006101c102420094101101d20082802e0012100200941046a1015200c20001016200c4105102522002003102620002004101720002005102b200020082802cc0110252109200841c4016a2101200841c8016a210003402000280200220020014704402009200841e0016a200041086a101c102c200041046a21000c010b0b2009200841e0016a2006101c102c200841c4016a1031200841b8016a103120082802ac0122000440200820003602b0010b20082802a00122000440200820003602a4010b200928020c200941106a28020047044010000b2011201020092802002009280204100d200928020c22000440200920003602100b200f41046a1015200204402008200236024c0b200a04402008200a36025c0b200e04402008200e36026c0b200d04402008200d36027c0b200b28020c22000440200b20003602100b20084190026a24000b450020004100360208200042003702000240200220016b2202450d0020002002102f20024101480d00200028020420012002103e1a2000200028020420026a3602040b20000b0b002000410120001b10520b840101037f200041003602082000200036020420002000360200200141046a2102037f20022802002203200146047f2000054114103622024100360200200241086a200341086a101c1a20022000360204200028020021042000200236020020022004360200200420023602042000200028020841016a360208200341046a21020c010b0b0b3901017f027f200041186a28020022010440200041086a280200200041146a280200200110420c010b20000b2201200128020041016a3602000bd60101017f23004180016b22092400200041186a2008103a200941f0006a200110192101200941e0006a2002101a2102200920032900003703582009200429000037035020092005290000370348200941386a2006101b2106200941286a2007101b2107200941186a2008101c210820092009290358370310200920092903503703082009200929034837030020012002200941106a200941086a200920062007200810102007103120061031200228020022080440200220083602040b200128020022020440200120023602040b20094180016a24000b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210510b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b20031036220120042002107b200020023602042000200341017236020020002001360208200120026a41003a00000b0bd70101017f23004180016b22092400200041186a2008103a200941f0006a2001101b2101200941e0006a200210192102200941d0006a2003101a2103200920042900003703482009200529000037034020092006290000370338200941286a2007101b2107200941186a2008101c2108200920092903483703102009200929034037030820092009290338370300200120022003200941106a200941086a200920072008102e20071031200328020022080440200320083602040b200228020022030440200220033602040b2001103120094180016a24000bd60101017f23004180016b22092400200041186a2008103a200941f0006a200110192101200941e0006a2002101a2102200920032900003703582009200429000037035020092005290000370348200941386a2006101b2106200941286a2007101b2107200941186a2008101c210820092009290358370310200920092903503703082009200929034837030020012002200941106a200941086a200920062007200810322007103120061031200228020022080440200220083602040b200128020022020440200120023602040b20094180016a24000bd60101017f23004180016b22092400200041186a2008103a200920012900003703782009200229000037037020092003290000370368200941d8006a200410192104200941c8006a2005101a2105200941386a2006101b2106200941286a200710372107200941186a2008101c2108200920092903783703102009200929037037030820092009290368370300200941106a200941086a20092004200520062007200810342007103120061031200528020022080440200520083602040b200428020022050440200420053602040b20094180016a24000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204103621032000200236020420002004410172360200200020033602080b200320012002107b200220036a41003a00000b160020004100360208200042003702002000410010430b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2f01017f200028020820014904402001105220002802002000280204103e210220002001360208200020023602000b0b2a01017f2000200120021004200028020422036a10820120012002200320002802006a100520001081010b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104822023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10492103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003104a200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110510b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274103621040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110510b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2601027e20002001ac22024201862002423f8722038520034201862002423f888420038510500b2601027e20002001ac22024201862002423f8722038520034201862002423f8884200385104f0b2a01017f2000200220011006200028020422036a10820120022001200320002802006a100720001081010b890101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003104120036a0520030b41016a21040b200041186a28020022030440200041086a280200200041146a2802002003104221000b2000200028020020046a3602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103e1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f41bc09200041086a2202411076220041bc092802006a220336020041b80941b809280200220420026a41076a417871220236020002400240200341107420024d044041bc09200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103e41086a0541000b2100200141106a240020000b0b0020002001ad420010500b0b0020002001ad4200104f0bbb1c020d7f037e230041c0036b22002400107a10082201105222031009200041a8016a200041e8006a200320011056220241001057200041a8016a105802400240200041a8016a1059450d0020002802ac01450d0020002802a8012d000041c001490d010b10000b20004180016a200041a8016a105a200028028401220141094f044010000b20002802800121030340200104402001417f6a21012003310000200d42088684210d200341016a21030c010b0b02400240200d500d0041a808105b200d5104402002105c200041a8016a105d105e0c020b41ad08105b200d510440200041ec016a4100360200200041e8016a200041e4016a2201360200200041e0016a4100360200200041dc016a200041d8016a2203360200200041b8016a4200370300200042003703d001200042003703c801200042003703c001200042003703b001200042003703a801200020013602e401200020033602d801200041f0016a105f2104200041d0016a2105200041c8016a2108200041c0016a210620021060410947044010000b20004180016a20024101105720004180016a200041a8016a106120004180016a20024102105720004180016a200041b4016a2207106220004180016a20024103105720004180016a2006106320004180016a20024104105720004180016a2008106420004180016a20024105105720004180016a2005106520004180016a20024106105720004180016a2003106620004180016a20024107105720004180016a2001106720004180016a20024108105720004180016a2004106820004180016a105d210a200041d8026a200041a8016a10192102200041c8026a2007101a210520002903d001210d20002903c001210e20002903c801210f200041b8026a2003101b2108200041a8026a2001101b210620004198026a2004101c210920004180026a200210192101200041b0036a2005101a21032000200f3703a0032000200e3703a8032000200d3703980320004188036a2008101b2104200041f8026a2006101b2107200041e8026a2009101c2109200020002903a803370318200020002903a003370310200020002903980337030820004180016a20012003200041186a200041106a200041086a20042007200910392007103120041031200328020022040440200320043602040b200128020022030440200120033602040b2006103120081031200528020022010440200520013602040b200228020022010440200220013602040b200a105e200041a8016a102d0c020b41c708105b200d510440200041ec016a4100360200200041e8016a200041e4016a2201360200200041c8016a4100360200200041b8016a4200370300200042003702dc01200042003702d401200042003702cc01200042003703c001200042003703b001200020013602e4012000200041a8016a3602ac012000200041a8016a3602a801200041f0016a105f2105200041dc016a2103200041d4016a2104200041cc016a210820021060410947044010000b20004180016a20024101105720004180016a200041a8016a106720004180016a20024102105720004180016a200041b4016a2206106120004180016a20024103105720004180016a200041c0016a2207106220004180016a20024104105720004180016a2008106320004180016a20024105105720004180016a2004106420004180016a20024106105720004180016a2003106520004180016a20024107105720004180016a2001106620004180016a20024108105720004180016a2005106820004180016a105d210a200041d8026a200041a8016a101b2104200041c8026a200610192103200041b8026a2007101a210220002902dc01210d20002902cc01210e20002902d401210f200041a8026a2001101b210820004198026a2005101c210920004180026a2004101b2106200041b0036a20031019210120004188036a2002101a21052000200f3703a0032000200e3703a8032000200d37039803200041f8026a2008101b2107200041e8026a2009101c2109200020002903a803370330200020002903a003370328200020002903980337032020004180016a200620012005200041306a200041286a200041206a20072009103b20071031200528020022070440200520073602040b200128020022050440200120053602040b2006103120081031200228020022010440200220013602040b200328020022010440200320013602040b20041031200a105e200041e4016a103120002802c00122010440200020013602c4010b20002802b40122010440200020013602b8010b200041a8016a10310c020b41e008105b200d510440200041ec016a4100360200200041e8016a200041e4016a2201360200200041e0016a4100360200200041dc016a200041d8016a2203360200200041b8016a4200370300200042003703d001200042003703c801200042003703c001200042003703b001200042003703a801200020013602e401200020033602d801200041f0016a105f2104200041d0016a2105200041c8016a2108200041c0016a210620021060410947044010000b20004180016a20024101105720004180016a200041a8016a106120004180016a20024102105720004180016a200041b4016a2207106220004180016a20024103105720004180016a2006106320004180016a20024104105720004180016a2008106420004180016a20024105105720004180016a2005106520004180016a20024106105720004180016a2003106720004180016a20024107105720004180016a2001106620004180016a20024108105720004180016a2004106820004180016a105d210a200041d8026a200041a8016a10192102200041c8026a2007101a210520002903d001210d20002903c001210e20002903c801210f200041b8026a2003101b2108200041a8026a2001101b210620004198026a2004101c210920004180026a200210192101200041b0036a2005101a21032000200f3703a0032000200e3703a8032000200d3703980320004188036a2008101b2104200041f8026a2006101b2107200041e8026a2009101c2109200020002903a803370348200020002903a003370340200020002903980337033820004180016a20012003200041c8006a200041406b200041386a200420072009103c2007103120041031200328020022040440200320043602040b200128020022030440200120033602040b2006103120081031200528020022010440200520013602040b200228020022010440200220013602040b200a105e200041e4016a1031200041d8016a103120002802b40122010440200020013602b8010b20002802a8012201450d02200020013602ac010c020b41f708105b200d510440200041003602ec01200041003602e001200042003703d001200042003703c801200042003703c001200042003703b801200042003703b001200042003703a8012000200041e4016a22053602e801200020053602e4012000200041d8016a22083602dc01200020083602d801200041f0016a105f2106200041cc016a2107200041c0016a210a200041b8016a2101200041b0016a210320021060410947044010000b20004180016a20024101105720004180016a200041a8016a106320004180016a20024102105720004180016a2003106420004180016a20024103105720004180016a2001106520004180016a20024104105720004180016a200a106120004180016a20024105105720004180016a2007106220004180016a20024106105720004180016a2008106720004180026a20024107105702400240200028028402450d002000280280022d000041c001490d00200041b0036a20004180026a106920004188036a20004180026a106a20004180036a2104034020002802b403200028028c0346044020002802b803200028029003460d030b20004180016a200041b0036a106b20004180016a200041f8026a105f220310684114103622014100360200200120002903f802370208200141106a20042802003602002003106c20012005360204200120002802e401220336020020032001360204200020013602e401200020002802ec0141016a3602ec01200041b0036a106d0c000b000b10000b20004180016a20024108105720004180016a2006106820004180016a105d210c20002903b801210d20002903b001210e20002903a801210f200041d8026a200a10192101200041c8026a2007101a2103200041b8026a2008101b2107200041a8026a20051037210a20004198026a2006101c210b2000200f3703a8032000200e3703a0032000200d3703980320004180026a200110192102200041b0036a2003101a210420004188036a2007101b2106200041f8026a200a10372109200041e8026a200b101c210b200020002903a803370360200020002903a003370358200020002903980337035020004180016a200041e0006a200041d8006a200041d0006a2002200420062009200b103d2009103120061031200428020022060440200420063602040b200228020022040440200220043602040b200a103120071031200328020022020440200320023602040b200128020022030440200120033602040b200c105e200510312008103120002802cc0122010440200020013602d0010b20002802c0012201450d02200020013602c4010c020b419109105b200d510440200041b0036a105f210120021060410247044010000b200041a8016a200241011057200041a8016a20011068200041a8016a105d2103200041c0016a20004180016a20004180026a2001101c101c103a2003105e0c020b419c09105b200d520d002002105c200041a8016a105d2102200041b0036a200041c0016a101c210320004180016a101822012003106e1016200120004180026a2003101c102c200128020c200141106a28020047044010000b20012802002001280204100e200128020c22030440200120033602100b2002105e0c010b10000b106f200041c0036a24000b0c00200020012002411c10700bcc0202067f017e230041106b220324002001280208220520024b0440200341086a200110800120012003280208200328020c107e36020c20032001108001410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410701a200341106a24000f0b2003200110800141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004107e107f2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001058200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110712204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001060410147044010000b0be90101087f230041406a220124002000105f2108200042afb59bdd9e8485b9f800370310200041186a105f2106200141286a1018220320002903101072200328020c200341106a28020047044010000b02402003280200220220032802042205100a22074504400c010b2001410036022020014200370318200141186a200710302002200520012802182202200128021c220520026b100b417f4704402001200241016a20052002417f736a105620061068200721040b2002450d002001200236021c0b200328020c22020440200320023602100b200445044020062008103a0b200141406b240020000b810301097f230041d0006b22022400200241186a10182103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a20002903104200105020022802302101200241306a4104721015200320011016200320002903101072200328020c200341106a28020047044010000b2003280204210420032802002105200241306a10182101200041186a2206106e210741011036220041fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009104320012802040520080b20012802006a20004101103e1a2001200128020441016a3602042001200041016a200720006b6a10162001200241086a2006101c102c0240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b2005200420002001280204100c200128020c22000440200120003602100b200328020c22010440200320013602100b200241d0006a24000b190020004200370200200041086a41003602002000106c20000b2501017f02402000280204450d0020002802002d000041c001490d002000107321010b20010b9f0301077f230041d0006b22022400024002402000280204450d0020002802002d000041c001490d002000106021052001280208200128020022036b2005490440200241106a200141086a36020020012802042106200220051036220436020020022004200620036b6a22033602082002200420056a36020c20022003360204200120021074200210750b200241286a20001069200241186a2000106a200141086a21070340200228022c200228021c46044020022802302002280220460d030b2002200241286a106b20021076210502402001280204220320012802082204490440200320053a00002001200128020441016a3602040c010b2002200736024841002100200241003602442003200128020022066b220341016a2208200420066b2204410174220620062008491b41ffffffff07200441ffffffff03491b220404402004103621000b20022000360238200020036a220320053a00002002200020046a3602442002200336023c2002200341016a3602402001200241386a1074200241386a10750b200241286a106d0c000b000b10000b200241d0006a24000b940101027f230041206b22022400024002402000280204044020002802002d000041c001490d010b20024100360208200242003703000c010b200241186a2000105a20022802182103200241106a2000105a200220032002280210200010716a10351a0b2001280200044020014100360208200142003702000b2001200228020036020020012002290204370204200241206a24000b7a01027f230041106b2202240020001058200241086a2000105a200228020c2103024002402000280204450d00200341084b0d0020002802002d000041c001490d010b10000b2002420037030020022003410820034108491b22006b41086a20022802082000103e1a20012002290300370000200241106a24000b4f01027f230041206b2203240020001077410847044010000b034020024108460440200341206a240005200341086a200020021057200120026a200341086a10763a0000200241016a21020c010b0b0b4f01027f230041206b2203240020001077410847044010000b034020024108460440200341206a240005200341086a200020021057200120026a200341086a10783a0000200241016a21020c010b0b0bbc0101027f230041406a22022400024002402000280204450d0020002802002d000041c001490d00200241306a20001069200241206a2000106a03402002280234200228022446044020022802382002280228460d030b200241086a200241306a106b200241086a10782103410c103622002001360204200020033a0008200128020021032001200036020020002003360200200320003602042001200128020841016a360208200241306a106d0c000b000b10000b200241406b24000bbc0101027f230041406a22022400024002402000280204450d0020002802002d000041c001490d00200241306a20001069200241206a2000106a03402002280234200228022446044020022802382002280228460d030b200241086a200241306a106b200241086a10762103410c103622002001360204200020033a0008200128020021032001200036020020002003360200200320003602042001200128020841016a360208200241306a106d0c000b000b10000b200241406b24000bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a105f1a0c010b200241186a2000105a2000107121030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206103621032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a106c200241206a24000b0a0020002001410110790b0a0020002001410010790b160020002001280204200141086a280200411c10701a0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0bb50102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a2001410020042002107e107f20002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b5901017f230041306b22012400200141286a4100360200200141206a4200370300200141186a420037030020014200370310200141106a20012000101c102420012802102100200141106a4104721015200141306a240020000b880101037f41a809410136020041ac092802002100034020000440034041b00941b0092802002201417f6a2202360200200141014845044041a8094100360200200020024102746a22004184016a280200200041046a28020011020041a809410136020041ac0928020021000c010b0b41b009412036020041ac09200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000107c20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000107c20024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000105841012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0a00200020014200104f0b810101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000108001200128020c210003402000450d01200141002001280208220320032000107e22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b870101037f200120012802042000280204200028020022046b22036b2202360204200341004a0440200220042003103e1a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0ba50102027f027e230041106b22012400200010580240024020001059450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000105a200128020c220041114f044010000b20012802082102034020000440200442088620034238888421042000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a2400420020034201837d200342018885a74118744118750b210002402000280204044020002802002d000041bf014b0d010b10000b200010730b7d01037f230041106b22012400200010580240024020001059450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000105a200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030be60101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110800120004100200428020c2201200428020822022001107e22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b3501017f230041106b220041c0890436020c41b409200028020c41076a417871220036020041b809200036020041bc093f003602000b100020020440200020012002103e1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000107d200010716a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2701017f230041206b22022400200241086a2000200141141070107c2100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f20011071220220012802044b044010000b200020012001107d2002107f0b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a108201200120002802006a22012002200110030c010b0b0b3601017f200028020820014904402001105220002802002000280204103e210220002001360208200020023602000b200020013602040b0bae0101004180080ba6017472616e7366657233007472616e7366657232007472616e7366657231007472616e736665723000696e6974007a65726f746f7069635f6569677468617267735f6576656e74006f6e65746f7069635f736576656e617267735f6576656e740074776f746f7069635f736978617267735f6576656e74007468726565746f7069635f66697665617267735f6576656e74007365745f737472696e67006765745f737472696e67"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ZEROTOPIC_EIGTHARGS_EVENT = "zerotopic_eigthargs_event"; - - public static final String FUNC_ONETOPIC_SEVENARGS_EVENT = "onetopic_sevenargs_event"; - - public static final String FUNC_TWOTOPIC_SIXARGS_EVENT = "twotopic_sixargs_event"; - - public static final String FUNC_THREETOPIC_FIVEARGS_EVENT = "threetopic_fiveargs_event"; - - public static final String FUNC_SET_STRING = "set_string"; - - public static final String FUNC_GET_STRING = "get_string"; - - public static final WasmEvent TRANSFER0_EVENT = new WasmEvent("transfer0", Arrays.asList(), Arrays.asList(new WasmEventParameter(Int8[].class) , new WasmEventParameter(byte[].class) , new WasmEventParameter(byte[].class) , new WasmEventParameter(Int8[].class) , new WasmEventParameter(Uint8[].class) , new WasmEventParameter(List.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {Uint8.class}, - List.class, - List.class)) , new WasmEventParameter(List.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {Int8.class}, - List.class, - List.class)) , new WasmEventParameter(String.class))); - ; - - public static final WasmEvent TRANSFER1_EVENT = new WasmEvent("transfer1", Arrays.asList(new WasmEventParameter(List.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {Int8.class}, - List.class, - List.class), true)), Arrays.asList(new WasmEventParameter(Int8[].class) , new WasmEventParameter(byte[].class) , new WasmEventParameter(byte[].class) , new WasmEventParameter(Int8[].class) , new WasmEventParameter(Uint8[].class) , new WasmEventParameter(List.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {Uint8.class}, - List.class, - List.class)) , new WasmEventParameter(String.class))); - ; - - public static final WasmEvent TRANSFER2_EVENT = new WasmEvent("transfer2", Arrays.asList(new WasmEventParameter(Int8[].class, true) , new WasmEventParameter(byte[].class, true)), Arrays.asList(new WasmEventParameter(byte[].class) , new WasmEventParameter(Int8[].class) , new WasmEventParameter(Uint8[].class) , new WasmEventParameter(List.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {Int8.class}, - List.class, - List.class)) , new WasmEventParameter(List.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {Uint8.class}, - List.class, - List.class)) , new WasmEventParameter(String.class))); - ; - - public static final WasmEvent TRANSFER3_EVENT = new WasmEvent("transfer3", Arrays.asList(new WasmEventParameter(byte[].class, true) , new WasmEventParameter(Int8[].class, true) , new WasmEventParameter(Uint8[].class, true)), Arrays.asList(new WasmEventParameter(Int8[].class) , new WasmEventParameter(byte[].class) , new WasmEventParameter(List.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {Int8.class}, - List.class, - List.class)) , new WasmEventParameter(List.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {String.class}, - List.class, - List.class)) , new WasmEventParameter(String.class))); - ; - - protected ContractEmitEventWithArray(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractEmitEventWithArray(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getTransfer0Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER0_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer0EventResponse typedResponse = new Transfer0EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (Int8[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (byte[]) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (byte[]) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (Int8[]) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (Uint8[]) eventValues.getNonIndexedValues().get(4); - typedResponse.arg6 = (List) eventValues.getNonIndexedValues().get(5); - typedResponse.arg7 = (List) eventValues.getNonIndexedValues().get(6); - typedResponse.arg8 = (String) eventValues.getNonIndexedValues().get(7); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer0EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer0EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER0_EVENT, log); - Transfer0EventResponse typedResponse = new Transfer0EventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (Int8[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (byte[]) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (byte[]) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (Int8[]) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (Uint8[]) eventValues.getNonIndexedValues().get(4); - typedResponse.arg6 = (List) eventValues.getNonIndexedValues().get(5); - typedResponse.arg7 = (List) eventValues.getNonIndexedValues().get(6); - typedResponse.arg8 = (String) eventValues.getNonIndexedValues().get(7); - return typedResponse; - } - }); - } - - public Observable transfer0EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER0_EVENT)); - return transfer0EventObservable(filter); - } - - public List getTransfer1Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER1_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer1EventResponse typedResponse = new Transfer1EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Int8[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (byte[]) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (byte[]) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (Int8[]) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (Uint8[]) eventValues.getNonIndexedValues().get(4); - typedResponse.arg6 = (List) eventValues.getNonIndexedValues().get(5); - typedResponse.arg7 = (String) eventValues.getNonIndexedValues().get(6); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer1EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer1EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER1_EVENT, log); - Transfer1EventResponse typedResponse = new Transfer1EventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Int8[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (byte[]) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (byte[]) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (Int8[]) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (Uint8[]) eventValues.getNonIndexedValues().get(4); - typedResponse.arg6 = (List) eventValues.getNonIndexedValues().get(5); - typedResponse.arg7 = (String) eventValues.getNonIndexedValues().get(6); - return typedResponse; - } - }); - } - - public Observable transfer1EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER1_EVENT)); - return transfer1EventObservable(filter); - } - - public List getTransfer2Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER2_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.arg1 = (byte[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Int8[]) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint8[]) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (List) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (List) eventValues.getNonIndexedValues().get(4); - typedResponse.arg6 = (String) eventValues.getNonIndexedValues().get(5); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer2EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer2EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER2_EVENT, log); - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = log; - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.arg1 = (byte[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Int8[]) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint8[]) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (List) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (List) eventValues.getNonIndexedValues().get(4); - typedResponse.arg6 = (String) eventValues.getNonIndexedValues().get(5); - return typedResponse; - } - }); - } - - public Observable transfer2EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER2_EVENT)); - return transfer2EventObservable(filter); - } - - public List getTransfer3Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER3_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer3EventResponse typedResponse = new Transfer3EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.topic3 = (String) eventValues.getIndexedValues().get(2); - typedResponse.arg1 = (Int8[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (byte[]) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (List) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (List) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (String) eventValues.getNonIndexedValues().get(4); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer3EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer3EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER3_EVENT, log); - Transfer3EventResponse typedResponse = new Transfer3EventResponse(); - typedResponse.log = log; - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.topic3 = (String) eventValues.getIndexedValues().get(2); - typedResponse.arg1 = (Int8[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (byte[]) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (List) eventValues.getNonIndexedValues().get(2); - typedResponse.arg4 = (List) eventValues.getNonIndexedValues().get(3); - typedResponse.arg5 = (String) eventValues.getNonIndexedValues().get(4); - return typedResponse; - } - }); - } - - public Observable transfer3EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER3_EVENT)); - return transfer3EventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEventWithArray.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEventWithArray.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEventWithArray.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractEmitEventWithArray.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall zerotopic_eigthargs_event(Int8[] _argsOne, byte[] _argsTwo, byte[] _argsThree, Int8[] _argsFour, Uint8[] _argsFive, List _argsSix, List _argsSeven, String _argsEight) { - final WasmFunction function = new WasmFunction(FUNC_ZEROTOPIC_EIGTHARGS_EVENT, Arrays.asList(_argsOne,_argsTwo,_argsThree,_argsFour,_argsFive,_argsSix,_argsSeven,_argsEight), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall zerotopic_eigthargs_event(Int8[] _argsOne, byte[] _argsTwo, byte[] _argsThree, Int8[] _argsFour, Uint8[] _argsFive, List _argsSix, List _argsSeven, String _argsEight, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ZEROTOPIC_EIGTHARGS_EVENT, Arrays.asList(_argsOne,_argsTwo,_argsThree,_argsFour,_argsFive,_argsSix,_argsSeven,_argsEight), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall onetopic_sevenargs_event(List _topicOne, Int8[] _argsOne, byte[] _argsTwo, byte[] _argsThree, Int8[] _argsFour, Uint8[] _argsFive, List _argsSix, String _argsSeven) { - final WasmFunction function = new WasmFunction(FUNC_ONETOPIC_SEVENARGS_EVENT, Arrays.asList(_topicOne,_argsOne,_argsTwo,_argsThree,_argsFour,_argsFive,_argsSix,_argsSeven), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall onetopic_sevenargs_event(List _topicOne, Int8[] _argsOne, byte[] _argsTwo, byte[] _argsThree, Int8[] _argsFour, Uint8[] _argsFive, List _argsSix, String _argsSeven, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ONETOPIC_SEVENARGS_EVENT, Arrays.asList(_topicOne,_argsOne,_argsTwo,_argsThree,_argsFour,_argsFive,_argsSix,_argsSeven), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall twotopic_sixargs_event(Int8[] _topicOne, byte[] _topicTwo, byte[] _argsOne, Int8[] _argsTwo, Uint8[] _argsThree, List _argsFour, List _argsFive, String _argsSix) { - final WasmFunction function = new WasmFunction(FUNC_TWOTOPIC_SIXARGS_EVENT, Arrays.asList(_topicOne,_topicTwo,_argsOne,_argsTwo,_argsThree,_argsFour,_argsFive,_argsSix), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall twotopic_sixargs_event(Int8[] _topicOne, byte[] _topicTwo, byte[] _argsOne, Int8[] _argsTwo, Uint8[] _argsThree, List _argsFour, List _argsFive, String _argsSix, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TWOTOPIC_SIXARGS_EVENT, Arrays.asList(_topicOne,_topicTwo,_argsOne,_argsTwo,_argsThree,_argsFour,_argsFive,_argsSix), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall threetopic_fiveargs_event(byte[] _topicOne, Int8[] _topicTwo, Uint8[] _topicThree, Int8[] _argsOne, byte[] _argsTwo, List _argsThree, List _argsFour, String _argsFive) { - final WasmFunction function = new WasmFunction(FUNC_THREETOPIC_FIVEARGS_EVENT, Arrays.asList(_topicOne,_topicTwo,_topicThree,_argsOne,_argsTwo,_argsThree,_argsFour,_argsFive), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall threetopic_fiveargs_event(byte[] _topicOne, Int8[] _topicTwo, Uint8[] _topicThree, Int8[] _argsOne, byte[] _argsTwo, List _argsThree, List _argsFour, String _argsFive, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_THREETOPIC_FIVEARGS_EVENT, Arrays.asList(_topicOne,_topicTwo,_topicThree,_argsOne,_argsTwo,_argsThree,_argsFour,_argsFive), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall set_string(String _stringargs) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(_stringargs), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_string(String _stringargs, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(_stringargs), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractEmitEventWithArray load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractEmitEventWithArray(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractEmitEventWithArray load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractEmitEventWithArray(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Transfer0EventResponse { - public Log log; - - public Int8[] arg1; - - public byte[] arg2; - - public byte[] arg3; - - public Int8[] arg4; - - public Uint8[] arg5; - - public List arg6; - - public List arg7; - - public String arg8; - } - - public static class Transfer1EventResponse { - public Log log; - - public String topic; - - public Int8[] arg1; - - public byte[] arg2; - - public byte[] arg3; - - public Int8[] arg4; - - public Uint8[] arg5; - - public List arg6; - - public String arg7; - } - - public static class Transfer2EventResponse { - public Log log; - - public String topic1; - - public String topic2; - - public byte[] arg1; - - public Int8[] arg2; - - public Uint8[] arg3; - - public List arg4; - - public List arg5; - - public String arg6; - } - - public static class Transfer3EventResponse { - public Log log; - - public String topic1; - - public String topic2; - - public String topic3; - - public Int8[] arg1; - - public byte[] arg2; - - public List arg3; - - public List arg4; - - public String arg5; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractInterface.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractInterface.java deleted file mode 100644 index b8353ff033..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractInterface.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractInterface extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60017f017f60027f7f0060000060017f0060017f017e60037f7f7f0060047f7f7f7f0060027f7f017f60037f7f7f017f60047f7f7f7f017f60027f7e0060037e7e7f006000017f60017e017f60027e7e017f02fd010b03656e760c706c61746f6e5f70616e6963000203656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000703656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000603656e760d706c61746f6e5f72657475726e000103201f020401020008050404030003000d010a0002090300000108010107020000060405017001030305030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974001c06696e766f6b65000e0908010041010b020c0d0ade241f040010260b0a00200041186a2903000b0f00200041186a20012903003703000bb80202047f017e230041d0006b22012400102610052200100f22021006200141306a200120022000101022004100101102400240200141306a10122204500d004180081013200451044020001014200141306a1015220041186a4200370300200010160c020b4185081013200451044020001014200141306a1015220220022802002802001104002104200141186a1017220020041018101920002004101a200028020c200041106a28020047044010000b20002802002000280204100a200028020c22030440200020033602100b200210160c020b418e0810132004520d002000101b410247044010000b200141306a200041011011200141306a10122104200141306a10152100200120043703182000200141186a200028020041046a280200110100200010160c010b10000b101c200141d0006a24000b9b0101047f230041106b220124002001200036020c2000047f41bc08200041086a2202411076220041bc082802006a220336020041b80841b808280200220420026a41076a417871220236020002400240200341107420024d044041bc08200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102241086a0541000b2100200141106a240020000b0c00200020012002411c101d0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102420012003280208200328020c102536020c200320011024410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114101d1a200341106a24000f0b20032001102441002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102510292001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000bad0302057f017e2000101e024002402000280204450d002000101e0240200028020022012c0000220241004e044020020d010c020b200241807f460d00200241ff0171220341b7014d0440200028020441014d04401000200028020021010b20012d00010d010c020b200341bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021010b200120026a2d0000450d010b2000280204450d0020012d000041c001490d010b10000b2000101f2204200028020422014b04401000200028020421010b20002802002105024002400240200104404100210320052c00002200417f4a0d01027f200041ff0171220341bf014d04404100200041ff017141b801490d011a200341c97e6a0c010b4100200041ff017141f801490d001a200341897e6a0b41016a21030c010b4101210320050d00410021000c010b41002100200320046a20014b0d0020012004490d004100210220012003490d01200320056a2102200120036b20042004417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002006420886842106200241016a21020c010b0b20060b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101b410147044010000b0beb0101077f230041306b2205240020004200370308200041a008360200200041106a220142e2a1b2b2baf6bbc201370300200541186a101722022001290300101a200228020c200241106a28020047044010000b02400240200228020022062002280204220710072204450d00200410202103410021010340200120036a41003a00002004200141016a2201470d000b20062007200320011008417f460d0020002005200341016a200120036a2003417f736a101010123703180c010b410021040b200228020c22010440200220013602100b2004450440200020002903083703180b200541306a240020000bc10201097f230041306b22042400200041a008360200200441186a10172203200041106a22012903001018101920032001290300101a200328020c200341106a28020047044010000b200328020421052003280200210620041017210120002903181018210741011020220241fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009102120012802040520080b20012802006a2002410110221a2001200128020441016a3602042001200241016a200720026b6a101920012000290318101a0240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b20062005200220012802041009200128020c22020440200120023602100b200328020c22010440200320013602100b200441306a24000b29002000410036020820004200370200200041001021200041146a41003602002000420037020c20000b7002027f017e4101210120004280015a047f41002101034020002003845045044020034238862000420888842100200141016a2101200342088821030c010b0b024020014138490d002001210203402002450d01200141016a2101200241087621020c000b000b200141016a0520010b0b1300200028020820014904402000200110210b0b9a0101037f2000420020011003200028020422026a102342002001200220002802006a10040340024020002802102202200028020c460d00200241786a2802004504401000200028021021020b200241786a22032003280200417f6a220436020020040d002000200336021020002002417c6a2802002202200028020420026b220310016a1023200220002802006a22022003200210020c010b0b0b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001024200128020c210003402000450d01200141002001280208220320032000102522046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b880101037f41a808410136020041ac082802002100034020000440034041b00841b0082802002201417f6a2202360200200141014845044041a8084100360200200020024102746a22004184016a280200200041046a28020011030041a808410136020041ac0828020021000c010b0b41b008412036020041ac08200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000102720024f0d002003410471044010000c010b200042003702000b02402003411071450d002000102720024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101e41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0b002000410120001b100f0b2f01017f200028020820014904402001100f200028020020002802041022210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3601017f200028020820014904402001100f200028020020002802041022210220002001360208200020023602000b200020013602040b2101017f2001101f220220012802044b044010000b2000200120011028200210290b2701017f230041206b22022400200241086a200020014114101d10272100200241206a240020000b3501017f230041106b220041c0880436020c41b408200028020c41076a417871220036020041b808200036020041bc083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010282000101f6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b2802004180080b16696e697400676574436f756e7400736574436f756e740041a0080b050100000002"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETCOUNT = "getCount"; - - public static final String FUNC_SETCOUNT = "setCount"; - - protected ContractInterface(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractInterface(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractInterface.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractInterface.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractInterface.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractInterface.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall getCount() { - final WasmFunction function = new WasmFunction(FUNC_GETCOUNT, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall setCount(Uint64 count) { - final WasmFunction function = new WasmFunction(FUNC_SETCOUNT, Arrays.asList(count), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setCount(Uint64 count, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETCOUNT, Arrays.asList(count), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static ContractInterface load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractInterface(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractInterface load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractInterface(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_new.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_new.java deleted file mode 100644 index ac61d58e37..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_new.java +++ /dev/null @@ -1,158 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint16; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractMigrate_new extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60017f017f60027f7f0060017f0060000060027f7e0060037f7f7f017f60037f7f7f0060047f7f7f7f0060027f7f017f60047f7f7f7f017f60037e7e7f006000017f60017e017f60027e7e017f60017f017e02fd010b03656e760c706c61746f6e5f70616e6963000303656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000603656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000803656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e0001032e2d0301000201010501010000050305060200010e0000000002020001000309000108040c000104040300000702010405017001010105030100020608017f0141d088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974002706696e766f6b6500170acf342d040010320b13002000280208200149044020002001100f0b0b2900200041003602082000420037020020004100100f200041146a41003602002000420037020c20000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001013200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011012200441106a24000b2f01017f2000280208200149044020011015200028020020002802041016210220002001360208200020023602000b0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001101421060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110161a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b0b002000410120001b10150b9b0101047f230041106b220124002001200036020c2000047f41c808200041086a2202411076220041c8082802006a220336020041c40841c408280200220420026a41076a417871220236020002400240200341107420024d044041c808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101641086a0541000b2100200141106a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bef0402047f017e230041e0006b22012400103210052200101522021006200141186a2001200220001018220341001019200141186a101a02400240200141186a101b450d00200128021c450d0020012802182d000041c001490d010b10000b200141c8006a200141186a101c200128024c220041094f044010000b200128024821020340200004402000417f6a210020023100002004420886842104200241016a21020c010b0b024002402004500d00418008101d20045104402003101e410347044010000b200141186a200341011019200141186a101f2102200141186a200341021019200141186a10202103200141186a1021220020023a0010200041286a20033b0100200010220c020b418508101d20045104402003101e410247044010000b200141186a200341011019200141186a101f2100200141186a1021220220003a0010200210220c020b419108101d200451044020031023200141186a102122032d00102102200141c8006a100d220020021024100c200020021025200028020c200041106a28020047044010000b20002802002000280204100a200028020c22020440200020023602100b200310220c020b419d08101d20045104402003101e410247044010000b200141186a200341011019200141186a10202100200141186a1021220241286a20003b0100200210220c020b41a708101d2004520d0020031023200141186a1021220341286a2f01002102200141c8006a100d220020021026100c200020021025200028020c200041106a28020047044010000b20002802002000280204100a200028020c22020440200020023602100b200310220c010b10000b1027200141e0006a24000b0c00200020012002411c10280bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102a20012003280208200328020c102b36020c20032001102a410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410281a200341106a24000f0b20032001102a41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102b10352001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000101a200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110292204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102a200128020c210003402000450d01200141002001280208220320032000102b22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b7d01037f230041106b220124002000101a024002402000101b450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000101c200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b880101037f230041106b220124002000101a024002402000101b450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000101c200128020c220041034f044010000b200128020821030340200004402000417f6a210020032d00002002410874722102200341016a21030c010b0b200141106a2400200241ffff03710bbb0301067f230041406a22022400200042d080f59381e7ada454370308200041003a0000200241286a100d22032000290308102c200328020c200341106a28020047044010000b0240200328020022012003280204220510072206450d002002410036022020024200370318200241186a200610102001200520022802182201200228021c220520016b1008417f47044020002002200141016a20052001417f736a1018101f3a0010200621040b2001450d002002200136021c0b200328020c22010440200320013602100b2004450440200020002d00003a00100b41002104200041003b0118200041206a220142e2e7e49581c7ebc754370300200241286a100d22032001290300102c200328020c200341106a28020047044010000b0240200328020022012003280204220510072206450d002002410036022020024200370318200241186a200610102001200520022802182201200228021c220520016b1008417f47044020002002200141016a20052001417f736a101810203b0128200621040b2001450d002002200136021c0b200328020c22010440200320013602100b2004450440200020002f01183b01280b200241406b240020000b850401087f230041406a22052400200541286a100d2202200041206a2201290300102d100c20022001290300102c200228020c200241106a28020047044010000b2002280204210620022802002108200541106a100d210120002f01281026210420012005102e2203102f2001200420032802046a20032802006b100c200120002f012810250240200128020c200141106a280200460440200141046a2104200128020021070c010b200141046a2104100020012802002107200128020c2001280210460d0010000b20082006200720042802001009200328020022060440200320063602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200541286a100d22022000290308102d100c20022000290308102c200228020c200241106a28020047044010000b2002280204210620022802002108200541106a100d210120002d00101024210420012005102e2203102f2001200420032802046a20032802006b100c200120002d001010250240200128020c200141106a280200460440200141046a2104200128020021070c010b200141046a2104100020012802002107200128020c2001280210460d0010000b20082006200720042802001009200328020022060440200320063602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200541406b24000b0e002000101e410147044010000b0b5401017f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ff01831030200128020021002001410472100e200141206a240020000b090020002001ad10310b5501017f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ffff03831030200128020021002001410472100e200141206a240020000b880101037f41b408410136020041b8082802002100034020000440034041bc0841bc082802002201417f6a2202360200200141014845044041b4084100360200200020024102746a22004184016a280200200041046a28020011020041b408410136020041b80828020021000c010b0b41bc08412036020041b808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000103320024f0d002003410471044010000c010b200042003702000b02402003411071450d002000103320024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101a41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2101017f20011029220220012802044b044010000b2000200120011034200210350b2701017f230041206b22022400200241086a200020014114102810332100200241206a240020000b08002000200110310b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001030200128020021022001410472100e200141206a240020020b4801017f20004100360208200042003702002000410110142201360200200020013602042000200141016a360208200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004100f20002802040520020b20002802006a2003200110161a2000200028020420016a3602040b9e0102037f017e4101210220014280015a0440034020012005845045044020054238862001420888842101200341016a2103200542088821050c010b0b200341384f047f2003210203402002044020024108762102200441016a21040c010b0b200320046a0520030b41016a21020b200041186a28020022030440200041086a280200200041146a2802002003101121000b2000200028020020026a3602000b2801017f2000420020011003200028020422026a103742002001200220002802006a1004200010360b3501017f230041106b220041d0880436020c41c008200028020c41076a417871220036020041c408200036020041c8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001034200010296a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1037200120002802006a22012002200110020c010b0b0b3601017f2000280208200149044020011015200028020020002802041016210220002001360208200020023602000b200020013602040b0b3701004180080b30696e69740073657455696e74384e65770067657455696e74384e65770073657455696e7431360067657455696e743136"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SETUINT8NEW = "setUint8New"; - - public static final String FUNC_GETUINT8NEW = "getUint8New"; - - public static final String FUNC_SETUINT16 = "setUint16"; - - public static final String FUNC_GETUINT16 = "getUint16"; - - public static final WasmEvent TRANSFER_EVENT = new WasmEvent("transfer", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(String.class))); - ; - - protected ContractMigrate_new(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractMigrate_new(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Uint8 input, Uint16 input2) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(input,input2)); - return deployRemoteCall(ContractMigrate_new.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Uint8 input, Uint16 input2) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(input,input2)); - return deployRemoteCall(ContractMigrate_new.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint8 input, Uint16 input2) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(input,input2)); - return deployRemoteCall(ContractMigrate_new.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint8 input, Uint16 input2) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(input,input2)); - return deployRemoteCall(ContractMigrate_new.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall setUint8New(Uint8 input) { - final WasmFunction function = new WasmFunction(FUNC_SETUINT8NEW, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setUint8New(Uint8 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETUINT8NEW, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getUint8New() { - final WasmFunction function = new WasmFunction(FUNC_GETUINT8NEW, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall setUint16(Uint16 input) { - final WasmFunction function = new WasmFunction(FUNC_SETUINT16, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setUint16(Uint16 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETUINT16, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getUint16() { - final WasmFunction function = new WasmFunction(FUNC_GETUINT16, Arrays.asList(), Uint16.class); - return executeRemoteCall(function, Uint16.class); - } - - public static ContractMigrate_new load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractMigrate_new(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractMigrate_new load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractMigrate_new(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String topic; - - public String arg1; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_old.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_old.java deleted file mode 100644 index 4ce7540978..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_old.java +++ /dev/null @@ -1,151 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractMigrate_old extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001601060027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60037f7f7f017f60000060047f7f7f7f0060027f7e0060047f7f7f7f017f60017f017e60047f7f7e7e0060037e7e7f006000017f60077f7f7f7f7f7f7f017f60027e7e017f02e3021003656e760c706c61746f6e5f70616e6963000603656e760b706c61746f6e5f73686133000703656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e74000703656e760e706c61746f6e5f6d696772617465000e03656e760d706c61746f6e5f72657475726e0000035150060004020400050000010400000200000b0104030308000300050007040000050400020300010503010000050902050003010605030a0a000100010001020100060902010100040808080601010702000405017001030305030100020608017f01418089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300100f5f5f66756e63735f6f6e5f65786974005006696e766f6b6500420908010041010b021f1f0a8d74500400105a0bd50301077f230041c0016b22022400200241b70810122104200241e8006a1013200241fc006a410036020020024200370274200241e8006a410210142103200241d8006a20041015200241c8006a20001015200241406b4100360200200241386a4200370300200241306a420037030020024200370328200241286a20022802582200200228025c101620022802482204200228024c101621052003200228022810172003200241d8006a10182003200241c8006a10182002280274200241f8006a28020047044010000b2003280204210620032802002107200241106a1019210320024180016a2001101a2101200241a8016a4100360200200241a0016a420037030020024198016a4200370300200242003703900120024190016a4100101b20024190016a200241b0016a2001101a101c20024190016a4101101b200228029001210820024190016a410472101d200320081017200341011014220320024190016a2001101a101e200328020c200341106a28020047044010000b2007200620032802002003280204100d200328020c22010440200320013602100b200541046a101d200404402002200436024c0b200004402002200036025c0b200228027422030440200220033602780b200241c0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b102720000b160020004100360208200042003702002000410010340bf30101057f20002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410210b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001102f1a0b20002002360214200020033602102000200536020c20000b9e0201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a2004102e0340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b20024100360208200242003703002002412010282003200228021420036b20022802002204200228020420046b100120002002280200360200200020022902043702042003450d00200220033602140b200241206a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103520026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110360c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110340b0b1500200020012802002200200128020420006b10370b190020001013200041146a41003602002000420037020c20000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102720000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031036280200210120022003417f6a360200200710384180104f044020072000410c6a280200417c6a10390b200141384f047f2001103520016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103621000c010b0240200710380d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103a0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010212105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103b220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a103c2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103d200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a103e22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a103c2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103d200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103a0c010b20042001410175410120011b20032005103c210241802010212106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103b22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103c21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003103d200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002103d052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a103e22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103c21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006103d200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007103f200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103520026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001103621000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000103f200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011039200441106a24000b2c01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10370b0900200020013a00100ba608010d7f230041e0006b220424002001280204210f20012802002109200441286a41800810122105200441d8006a41003602002004420037035002400240200528020420042d0028220841017620084101711b220c200f20096b4101746a2207410b4f0440200741106a4170712208102121062004200736025420042008410172360250200420063602580c010b200420074101743a0050200441d0006a41017221062007450d010b200620071022210620042d002821080b200620076a41003a0000200541016a210a2005280208210b2005280204200841fe01714101762008410171220e1b2105027f20042d0050220d4101712210450440410a2106200d4101762208200c200c20084b1b0c010b2004280250220d417e71417f6a210620042802542208200c2008200c491b0b2107200b200a200e1b210a024002400240027f02400240200720086b20066a20054f04402004280258200441d0006a41017220101b21064100210d200520074604402005210b0c050b200820076b220e4504402007210b0c050b20052007490d012006200a4f0d02200620086a200a4d0d02200620076a200a4d0440200a200520076b6a210a0c030b2006200a200710232005200a6a210a200520076b21052007210d41000c030b2004280258210e416f210b200641e6ffffff074d0440410b20064101742206200520086a20076b220b200b2006491b220641106a4170712006410b491b210b0b200b10212206200a20051024200820076b22080440200520066a200e200441d0006a410172200d4101711b20076a200810240b2004200520086a220536025420042006360258200520066a41003a00002004200b4101723602500c050b2006200a20051023200520066a200620076a200e10232007210b0c030b20070b210b2006200d6a220720056a2007200b6a200e10230b2006200d6a200a200510230b2005200b6b20086a2105024020042d00504101710440200420053602540c010b200420054101743a00500b200520066a41003a00000b200441d0006a410172210503402009200f4704402004280258200520042d00504101711b200c6a20092d00004104764181086a2d00003a00002004280258200520042d00504101711b200c6a41016a20092d0000410f714181086a2d00003a0000200941016a2109200c41026a210c0c010b0b200441386a4100360200200441306a420037030020044200370328200441d0006a20021025200441406b20031025200441286a20012802002209200128020420096b20042802502209200428025420096b20042802402209200428024420096b100e1a200428024022090440200420093602440b200428025022090440200420093602540b200441186a200441286a1026200441086a200441286a1026200441186a200441086a1011200441d0006a200441286a10262000200441286a1026200441e0006a24000b0b002000410120001b10410bb90301027f02402001450d00200041303a0000200020016a2203417f6a41303a000020014103490d00200041303a0002200041303a00012003417d6a41303a00002003417e6a41303a000020014107490d00200041303a00032003417c6a41303a000020014109490d002000410020006b41037122026a220341b0e0c081033602002003200120026b417c7122026a2201417c6a41b0e0c0810336020020024109490d00200341b0e0c08103360208200341b0e0c08103360204200141786a41b0e0c08103360200200141746a41b0e0c0810336020020024119490d00200341b0e0c08103360218200341b0e0c08103360214200341b0e0c08103360210200341b0e0c0810336020c200141706a41b0e0c081033602002001416c6a41b0e0c08103360200200141686a41b0e0c08103360200200141646a41b0e0c081033602002002200341047141187222026b2101200220036a2102034020014120490d01200242b0e0c08183868c9830370300200241186a42b0e0c08183868c9830370300200241106a42b0e0c08183868c9830370300200241086a42b0e0c08183868c9830370300200241206a2102200141606a21010c000b000b20000b0f002002044020002001200210400b0b100020020440200020012002102f1a0b0b6302017f017e20012103034020035045044020034208882103200241016a21020c010b0b20004100360208200042003702002000200210282000280204417f6a21020340200150450440200220013c00002002417f6a2102200142088821010c010b0b0bb20a01087f230041d0006b220324002003419208101221062003410036022820034200370320200341406b2001200141146a1029210541002101034020042005280204200528020022076b4f044002402002044020032001410520026b74411f713a0030200341206a200341306a102a200528020021070b20070440200520073602040b410021022003410036023820034200370330200341306a200628020420032d0000220141017620014101711b4101744101721028200641016a210503402002200628020420032d00002201410176200141017122011b22044f0d01200328023020026a2006280208200520011b20026a2d000022014105763a00002003280230200628020420032d0000220441017620044101711b6a20026a41016a2001411f713a0000200241016a21020c000b000b05200420076a2d0000200141087441801e71722101200241086a210203402002410548450440200320012002417b6a220276411f713a0030200341206a200341306a102a0c010b0b200441016a21040c010b0b200328023020046a41003a0000200341406b200341306a20032802202003280224102b200328023022020440200320023602340b200341406b200328024420032802406b41066a10282003280244200328024022046b21014101210203402001044020042d000041002002411d764101716b41b3c5d1d0027141002002411c764101716b41dde788ea037141002002411b764101716b41fab384f5017141002002411a764101716b41ed9cc2b20271410020024119764101716b41b2afa9db0371200241057441e0ffffff037173737373737321022001417f6a2101200441016a21040c010b0b410021012003410036021820034200370310200341106a41061028200241017321044119210203402002417b46450440200328021020016a2004200276411f713a00002002417b6a2102200141016a21010c010b0b200328024022020440200320023602440b200341406b200341306a200341206a102c220220032802102003280214102b200228020022010440200220013602040b20004200370200200041086a41003602004100210203402002410c46450440200020026a4100360200200241046a21020c010b0b2006280208200520032d0000220241017122011b210402402006280204200241017620011b220241016a410a4d0440200020024101743a0000200041016a21010c010b200241116a4170712206102121012000200236020420002006410172360200200020013602080b2001200420021024200120026a41003a000020004131102d20032802442202200328024022046b2000280204220920002d000022064101762201200641017122081b6a2105410a21072008044020002802002206417e71417f6a2107200921010b024020012005200120054b1b220541106a417071417f6a410a2005410a4b1b22052007460d00027f2005410a460440200041016a21082000280208210741000c010b4100200520074d200541016a102122081b0d0120002d0000220641017104402000280208210741010c010b200041016a210741010b210920082007027f2006410171044020002802040c010b200641fe01714101760b41016a10242009044020002008360208200020013602042000200541016a4101723602000c010b200020014101743a00000b2004210103402002200446450440200020012d00004196086a2c0000102d200141016a21012002417f6a21020c010b0b20040440200320043602440b200328021022020440200320023602140b200328022022020440200320023602240b200341d0006a24000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204102121032000200236020420002004410172360200200020033602080b2003200120021024200220036a41003a00000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110302106200241186a200041086a3602002002410036021441002101200604402006102121010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1031200241086a10320c010b200520014d0d002000200120046a3602040b200241206a24000b450020004100360208200042003702000240200220016b2202450d0020002002102e20024101480d00200028020420012002102f1a2000200028020420026a3602040b20000bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10302105200241186a200041086a3602004100210320024100360214200504402005102121030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a1031200241086a10320b200241206a24000bc60301057f230041206b22042400200128020421050240200320026b22064101480d002006200128020820056b4c0440034020022003460d02200520022d00003a00002001200128020441016a2205360204200241016a21020c000b000b2001200520066a200128020022066b10302108200441186a200141086a36020020044100360214200520066b2106200804402008102121070b200420073602082004200620076a22063602102004200720086a3602142004200636020c200441086a410472210703402002200346450440200620022d00003a00002004200428021041016a2206360210200241016a21020c010b0b200128020020052007103302402001280204220320056b220241004c0440200428021021020c010b2004200428021020052002102f20026a2202360210200128020421030b20012002360204200128020021022001200428020c3602002001280208210520012004280214360208200420033602102004200236020c2004200536021420042002360208200441086a1032200128020421050b20002005360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000b5a01017f20004200370200200041003602080240200128020420012802006b2202450d0020002002102e2001280204200128020022026b22014101480d00200028020420022001102f1a2000200028020420016a3602040b20000bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b20031021220220062005102420002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b2001017f2000200110212202360200200020023602042000200120026a3602080bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b6701017f20002802002000280204200141046a1033200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b270020022002280200200120006b22016b2202360200200141014e0440200220002001102f1a0b0b2f01017f200028020820014904402001104120002802002000280204102f210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f2000200120021004200028020422036a105f20012002200320002802006a10052000105e0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103b22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a103c2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003103d200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110400b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102121040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110400b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002102f1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f41fc08200041086a2202411076220041fc082802006a220336020041f80841f808280200220420026a41076a417871220236020002400240200341107420024d044041fc08200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102f41086a0541000b2100200141106a240020000be70502057f017e230041c0016b22002400105a10082201104122021009200041386a200041086a20022001104322014100104402400240200041386a10452205500d0041c008104620055104402001410110470c020b41c508104620055104402000420037035020004200370348200041003602402000420037033820011048410447044010000b200041d0006a2102200041c8006a210320004101360258200020013602682000200041d8006a36026c200041a0016a2001410110440240024020002802a401044020002802a0012d000041c001490d010b2000410036028001200042003703780c010b200041206a200041a0016a10492000280220210120004190016a200041a0016a1049200041f8006a2001200028029001200041a0016a104a6a10291a0b200020002802783602382000200029027c37023c2000200028025841016a360258200041e8006a2003104b200041e8006a2002104b200041206a104c2103200041e8006a200041d8006a200041386a102c2202200029034820002903501020200041f8006a10192101200041b8016a4100360200200041b0016a4200370300200041a8016a4200370300200042003703a001200041a0016a20004190016a200041e8006a101a101c20002802a0012104200041a0016a410472101d2001200410172001200041a0016a200041e8006a101a101e200128020c200141106a28020047044010000b20012802002001280204100f200128020c22040440200120043602100b200228020022010440200220013602040b2003104d20002802382201450d022000200136023c0c020b41d608104620055104402001410210470c020b41df0810462005520d0020011048410147044010000b200041a0016a104c210320002d00b0012102200041386a101922012002104e101720012002104f200128020c200141106a28020047044010000b20012802002001280204100f200128020c22020440200120023602100b2003104d0c010b10000b1050200041c0016a24000b0c00200020012002411c10510bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001105520012003280208200328020c105636020c200320011055410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410511a200341106a24000f0b20032001105541002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041056105d2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b22012400200010520240024020001053450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001049200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b4d01027f230041206b2202240020001048410247044010000b200241086a200041011044200241086a10542100200241086a104c2103200241086a200020011100002003104d200241206a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001055200128020c210003402000450d01200141002001280208220320032000105622046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bd50101047f2001104a2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bff0201037f200028020445044041000f0b2000105241012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b4601017f230041206b22022400200241086a2000280200200028020428020010442001200241086a104537030020002802042200200028020041016a360200200241206a24000bf00101067f230041406a22012400200042e4e9dbd7f9a5b1f1e000370308200041003a0000200141286a1019220320002903081057200328020c200341106a28020047044010000b02402003280200220520032802042206100a2204450d002001410036022020014200370318200141186a200410282005200620012802182205200128021c20056b100b417f470440200020012001280218220241016a200128021c2002417f736a104310543a0010200421020b20012802182204450d002001200436021c0b200328020c22040440200320043602100b2002450440200020002d00003a00100b200141406b240020000bf60201097f230041406a22022400200241086a10192103200241386a4100360200200241306a4200370300200241286a420037030020024200370320200241206a2000290308105820022802202101200241206a410472101d200320011017200320002903081057200328020c200341106a28020047044010000b2003280204210520032802002106200241206a1019210120002d0010104e210741011021220441fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009103420012802040520080b20012802006a20044101102f1a2001200128020441016a3602042001200441016a200720046b6a1017200120002d0010104f0240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b2006200520002001280204100c200128020c22000440200120003602100b200328020c22010440200320013602100b200241406b24000b5401017f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ff01831058200128020021002001410472101d200141206a240020000b090020002001ad10590b880101037f41e808410136020041ec082802002100034020000440034041f00841f0082802002201417f6a2202360200200141014845044041e8084100360200200020024102746a22004184016a280200200041046a28020011020041e808410136020041ec0828020021000c010b0b41f008412036020041ec08200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105b20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105b20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001052200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0b7d01037f230041106b22012400200010520240024020001053450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001049200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b2101017f2001104a220220012802044b044010000b200020012001105c2002105d0b2701017f230041206b22022400200241086a2000200141141051105b2100200241206a240020000b08002000200110590b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002103520026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002103621000b2000200028020020036a3602000b2801017f2000420020011006200028020422026a105f42002001200220002802006a10072000105e0b3501017f230041106b22004180890436020c41f408200028020c41076a417871220036020041f808200036020041fc083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000105c2000104a6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a105f200120002802006a22012002200110030c010b0b0b3601017f200028020820014904402001104120002802002000280204102f210220002001360208200020023602000b200020013602040b0b6d01004181080b6630313233343536373839616263646566006174780071707a7279397838676632747664773073336a6e35346b686365366d7561376c007472616e7366657200696e6974006d6967726174655f636f6e74726163740073657455696e74380067657455696e7438"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_MIGRATE_CONTRACT = "migrate_contract"; - - public static final String FUNC_SETUINT8 = "setUint8"; - - public static final String FUNC_GETUINT8 = "getUint8"; - - public static final WasmEvent TRANSFER_EVENT = new WasmEvent("transfer", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(String.class))); - ; - - protected ContractMigrate_old(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractMigrate_old(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Uint8 input) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(input)); - return deployRemoteCall(ContractMigrate_old.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Uint8 input) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(input)); - return deployRemoteCall(ContractMigrate_old.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint8 input) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(input)); - return deployRemoteCall(ContractMigrate_old.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint8 input) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(input)); - return deployRemoteCall(ContractMigrate_old.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall migrate_contract(byte[] init_arg, Uint64 transfer_value, Uint64 gas_value) { - final WasmFunction function = new WasmFunction(FUNC_MIGRATE_CONTRACT, Arrays.asList(init_arg,transfer_value,gas_value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall migrate_contract(byte[] init_arg, Uint64 transfer_value, Uint64 gas_value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_MIGRATE_CONTRACT, Arrays.asList(init_arg,transfer_value,gas_value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall setUint8(Uint8 input) { - final WasmFunction function = new WasmFunction(FUNC_SETUINT8, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setUint8(Uint8 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETUINT8, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getUint8() { - final WasmFunction function = new WasmFunction(FUNC_GETUINT8, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public static ContractMigrate_old load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractMigrate_old(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractMigrate_old load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractMigrate_old(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String topic; - - public String arg1; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_types.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_types.java deleted file mode 100644 index ea1638df60..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_types.java +++ /dev/null @@ -1,193 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint16; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractMigrate_types extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001701260027f7f0060017f017f60017f0060027f7f017f60037f7f7f0060037f7f7f017f60047f7f7f7f0060000060027f7e0060047f7f7f7f017f60017f017e60077f7f7f7f7f7f7f0060057f7f7f7e7e0060037e7e7f006000017f60077f7f7f7f7f7f7f017f60017e017f60027e7e017f02e3021003656e760c706c61746f6e5f70616e6963000703656e760b706c61746f6e5f73686133000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65001103656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000603656e760c706c61746f6e5f6576656e74000603656e760e706c61746f6e5f6d696772617465000f03656e760d706c61746f6e5f72657475726e00000377760700030203000500000103030302000c0103040b0800030003090002030501060302020201050400050006030400000300020400010504010000050902050004010705040a0a0201020100010002000100010000000007090201080000000205040100010501001002010008080407010103060002000405017001010105030100020608017f0141c089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300100f5f5f66756e63735f6f6e5f65786974006606696e766f6b6500510a97a701760400107e0bc70301087f230041c0016b22022400200241b70810122104200241e8006a1013200241fc006a410036020020024200370274200241e8006a410210142103200241d8006a20041015200241c8006a20001015200241406b4100360200200241386a4200370300200241306a420037030020024200370328200241286a20022802582200200228025c101620022802482204200228024c101621052003200228022810172003200241d8006a10182003200241c8006a10182002280274200241f8006a28020047044010000b2003280204210620032802002107200241106a1019210320024180016a2001101a2101200241a8016a4100360200200241a0016a420037030020024198016a4200370300200242003703900120024190016a4100101b200241b0016a2001101a101c4101101b21082002280290012109200841046a101d200320091017200341011014220320024190016a2001101a101e200328020c200341106a28020047044010000b2007200620032802002003280204100d200328020c22010440200320013602100b200541046a101d200404402002200436024c0b200004402002200036025c0b200228027422030440200220033602780b200241c0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b103620000b160020004100360208200042003702002000410010430b9f0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410200b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110351a0b20002002360214200020033602102000200536020c20000f0b200041001002200028020422016a10850141004100200120002802006a1003200010840120000b9e0201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a2004103e0340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b20024100360208200242003703002002412010372003200228021420036b20022802002204200228020420046b100120002002280200360200200020022902043702042003450d00200220033602140b200241206a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104420026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110450c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110430b0b1500200020012802002200200128020420006b10460b190020001013200041146a41003602002000420037020c20000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204103620000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031045280200210120022003417f6a360200200710474180104f044020072000410c6a280200417c6a10480b200141384f047f2001104420016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110450c020b20000c010b0240200710470d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10490c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010202105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a104a220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a104b2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104c200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104d22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a104b2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104c200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10490c010b20042001410175410120011b20032005104b210241802010202106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104a22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104b21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003104c200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002104c052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104d22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104b21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006104c200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007104e200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104420026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110450c010b20000b2201200128020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000104e200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011048200441106a24000b2c01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10460ba807010c7f230041e0006b22052400200228020421102002280200210a200541286a41800810122106200541d8006a41003602002005420037035002400240200628020420052d0028220941017620094101711b220c2010200a6b4101746a2207410b4f0440200741106a4170712209102021082005200736025420052009410172360250200520083602580c010b200520074101743a0050200541d0006a41017221082007450d010b200820071021210820052d002821090b200720086a41003a0000200641016a210b2006280208210e2006280204200941fe01714101762009410171220d1b2106027f20052d00502209410171220f450440410a210820094101762209200c200c20094b1b0c010b2005280250417e71417f6a210820052802542209200c2009200c491b0b2107200e200b200d1b210b024002400240027f02400240200720096b20086a20064f04402005280258200541d0006a410172200f1b21084100210e200620074604402006210d0c050b200920076b220f4504402007210d0c050b20062007490d012008200b4f0d02200820096a200b4d0d02200720086a200b4d0440200b200620076b6a210b0c030b2008200b200710222006200b6a210b200620076b21062007210e41000c030b200541d0006a2008200620096a20076b20086b200920072006200b10230c050b2008200b20061022200620086a200720086a200f10222007210d0c030b20070b210d2008200e6a220720066a2007200d6a200f10220b2008200e6a200b200610220b2006200d6b20096a2106024020052d00504101710440200520063602540c010b200520064101743a00500b200620086a41003a00000b200541d0006a41017221060340200a2010464504402005280258200620052d00504101711b200c6a200a2d00004104764181086a2d00003a00002005280258200620052d00504101711b200c6a41016a200a2d0000410f714181086a2d00003a0000200a41016a210a200c41026a210c0c010b0b200541386a4100360200200541306a420037030020054200370328200541d0006a20031024200541406b20041024200541286a2002280200220a2002280204200a6b2005280250220a2005280254200a6b2005280240220a2005280244200a6b100e1a2005280240220a04402005200a3602440b2005280250220a04402005200a3602540b200541186a200541286a1025200541086a200541286a1025200541186a200541086a1011200541d0006a200541286a10252000200541286a1025200541e0006a24000b0b002000410120001b10500bb90301027f02402001450d00200041303a0000200020016a2203417f6a41303a000020014103490d00200041303a0002200041303a00012003417d6a41303a00002003417e6a41303a000020014107490d00200041303a00032003417c6a41303a000020014109490d002000410020006b41037122026a220341b0e0c081033602002003200120026b417c7122026a2201417c6a41b0e0c0810336020020024109490d00200341b0e0c08103360208200341b0e0c08103360204200141786a41b0e0c08103360200200141746a41b0e0c0810336020020024119490d00200341b0e0c08103360218200341b0e0c08103360214200341b0e0c08103360210200341b0e0c0810336020c200141706a41b0e0c081033602002001416c6a41b0e0c08103360200200141686a41b0e0c08103360200200141646a41b0e0c081033602002002200341047141187222026b2101200220036a2102034020014120490d01200242b0e0c08183868c9830370300200241186a42b0e0c08183868c9830370300200241106a42b0e0c08183868c9830370300200241086a42b0e0c08183868c9830370300200241206a2102200141606a21010c000b000b20000b0f0020020440200020012002104f0b0ba80101027f027f20002d0000410171044020002802080c010b200041016a0b2108416f2107200141e6ffffff074d0440410b20014101742207200120026a220120012007491b220141106a4170712001410b491b21070b20071020210120050440200120062005103c0b200320046b22030440200120056a200420086a2003103c0b200020013602082000200320056a220536020420002007410172360200200120056a41003a00000b6302017f017e20012103034020035045044020034208882103200241016a21020c010b0b20004100360208200042003702002000200210372000280204417f6a21020340200150450440200220013c00002002417f6a2102200142088821010c010b0b0b930a01087f230041d0006b220324002003419208101221062003410036022820034200370320200341406b2001200141146a1038210541002101034020042005280204200528020022076b4f044002402002044020032001410520026b74411f713a0030200341206a200341306a1039200528020021070b20070440200520073602040b410021022003410036023820034200370330200341306a200628020420032d0000220141017620014101711b4101744101721037200641016a210503402002200628020420032d00002201410176200141017122011b22044f0d01200328023020026a2006280208200520011b20026a2d000022014105763a00002003280230200628020420032d0000220441017620044101711b6a20026a41016a2001411f713a0000200241016a21020c000b000b05200420076a2d0000200141087441801e71722101200241086a210203402002410548450440200320012002417b6a220276411f713a0030200341206a200341306a10390c010b0b200441016a21040c010b0b200328023020046a41003a0000200341406b200341306a20032802202003280224103a200328023022020440200320023602340b200341406b200328024420032802406b41066a10372003280244200328024022046b21014101210203402001044020042d000041002002411d764101716b41b3c5d1d0027141002002411c764101716b41dde788ea037141002002411b764101716b41fab384f5017141002002411a764101716b41ed9cc2b20271410020024119764101716b41b2afa9db0371200241057441e0ffffff037173737373737321022001417f6a2101200441016a21040c010b0b410021012003410036021820034200370310200341106a41061037200241017321044119210203402002417b46450440200328021020016a2004200276411f713a00002002417b6a2102200141016a21010c010b0b200328024022020440200320023602440b200341406b200341306a200341206a103b220220032802102003280214103a200228020022010440200220013602040b20004200370200200041086a4100360200200010312006280208200520032d0000220241017122011b210402402006280204200241017620011b220241016a410a4d0440200020024101743a0000200041016a21010c010b200241116a4170712206102021012000200236020420002006410172360200200020013602080b200120042002103c200120026a41003a000020004131103d20032802442202200328024022046b2000280204220920002d000022064101762201200641017122081b6a2105410a21072008044020002802002206417e71417f6a2107200921010b024020012005200120054b1b220541106a417071417f6a410a2005410a4b1b22052007460d00027f2005410a460440200041016a21082000280208210741000c010b4100200520074d200541016a102022081b0d0120002d0000220641017104402000280208210741010c010b200041016a210741010b210920082007027f2006410171044020002802040c010b200641fe01714101760b41016a103c2009044020002008360208200020013602042000200541016a4101723602000c010b200020014101743a00000b2004210103402002200446450440200020012d00004196086a2c0000103d200141016a21012002417f6a21020c010b0b20040440200320043602440b200328021022020440200320023602140b200328022022020440200320023602240b200341d0006a24000bd50101047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d00002205410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b2201200420021022200120026a41003a000020002d000041017104402000200236020420000f0b200020024101743a000020000f0b20002001200220016b027f2003044020002802040c010b20054101760b220320032002200410230b20000b880101047f230041206b220324000240200041c4006a2802002202200041c8006a2204280200470440200220013b01002000200241026a3602440c010b200341086a200041406b2205200220002802406b410175220041016a10282000200410292200280208220220013b01002000200241026a36020820052000102a2000102b0b200341206a24000b2a002001200028020820002802006b220020002001491b41ffffffff07200041017541ffffffff03491b0b4c01017f2000410036020c200041106a2003360200200104402001103421040b200020043602002000200420024101746a22023602082000200420014101746a36020c2000200236020420000b870101037f200120012802042000280204200028020022046b22036b2202360204200341004a044020022004200310351a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417e6a22013602080c010b0b0b5201037f230041106b2203240020002003410c6a2001102d2204280200220245044041281020220241106a2001101a1a2002411c6a102e1a2000200328020c20042002102f0b200341106a24002002411c6a0b890101027f200041046a2103024020002802042200044002400340024002402002200041106a220410300440200028020022040d012001200036020020000f0b200420021030450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b190020004200370200200041086a41003602002000103120000baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b20032001280200470440200110322001280208220128020821020b200141013a000c200241003a000c200210330c010b02402004450d0020042d000c0d002004410c6a21030c020b20032001280200460440200110332001280208220128020821020b200141013a000c200241003a000c200210320b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000bb20101067f02400240200128020420012d00002202410176200241017122031b2205200028020420002d00002202410176200241017122041b2206200520064922071b2202450d002000280208200041016a20041b21002001280208200141016a20031b210103402002450d0120002d0000220320012d00002204460440200141016a2101200041016a21002002417f6a21020c010b0b200320046b22020d010b417f200720062005491b21020b2002411f760b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b0900200041017410200bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204102021032000200236020420002004410172360200200020033602080b200320012002103c200220036a41003a00000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b20002001103f2106200241186a200041086a3602002002410036021441002101200604402006102021010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1040200241086a10410c010b200520014d0d002000200120046a3602040b200241206a24000b450020004100360208200042003702000240200220016b2202450d0020002002103e20024101480d0020002802042001200210351a2000200028020420026a3602040b20000bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a103f2105200241186a200041086a3602004100210320024100360214200504402005102021030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a1040200241086a10410b200241206a24000bc60301057f230041206b22042400200128020421050240200320026b22064101480d002006200128020820056b4c0440034020022003460d02200520022d00003a00002001200128020441016a2205360204200241016a21020c000b000b2001200520066a200128020022066b103f2108200441186a200141086a36020020044100360214200520066b2106200804402008102021070b200420073602082004200620076a22063602102004200720086a3602142004200636020c200441086a410472210703402002200346450440200620022d00003a00002004200428021041016a2206360210200241016a21020c010b0b200128020020052007104202402001280204220320056b220241004c0440200428021021020c010b2004200428021020052002103520026a2202360210200128020421030b20012002360204200128020021022001200428020c3602002001280208210520012004280214360208200420033602102004200236020c2004200536021420042002360208200441086a1041200128020421050b20002005360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000b5a01017f20004200370200200041003602080240200128020420012802006b2202450d0020002002103e2001280204200128020022026b22014101480d0020002802042002200110351a2000200028020420016a3602040b20000b10002002044020002001200210351a0b0bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b20031020220220062005103c20002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b2001017f2000200110202202360200200020023602042000200120026a3602080b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b6701017f20002802002000280204200141046a1042200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b270020022002280200200120006b22016b2202360200200141014e044020022000200110351a0b0b2f01017f2000280208200149044020011050200028020020002802041035210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2a01017f2000200120021004200028020422036a10850120012002200320002802006a100520001084010b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104a22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a104b2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003104c200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001104f0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102021040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001104f0b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210351a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f41b409200041086a2202411076220041b4092802006a220336020041b00941b009280200220420026a41076a417871220236020002400240200341107420024d044041b409200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103541086a0541000b2100200141106a240020000bc80902057f017e23004180026b22002400107e10082201105022021009200041e8006a200020022001105222014100105302400240200041e8006a10542205500d0041c0081055200551044020011056200041e8006a105710580c020b41c508105520055104402000420037033020004200370328200041003602202000420037031820011059410447044010000b200041306a2102200041286a21032000410136023c2000200136025820002000413c6a36025c200041e8006a20014101105302400240200028026c044020002802682d000041c001490d010b20004100360248200042003703400c010b200041f0016a200041e8006a105a20002802f0012101200041e0016a200041e8006a105a200041406b200120002802e001200041e8006a105b6a10381a0b200020002802403602182000200029024437021c2000200028023c41016a36023c200041d8006a2003105c200041d8006a2002105c200041406b200041e8006a10572202200041f0016a200041186a103b220120002903282000290330101f200041406b105d200128020022030440200120033602040b2002105820002802182201450d022000200136021c0c020b41d60810552005510440200041c8006a410036020020004200370340200041406b102e210220011059410247044010000b200041e8006a200141011053200041e8006a200041406b105e200041e8006a1057220141186a200041186a2002101a10261a200110580c020b41e1081055200551044020011056200041406b200041e8006a1057220241186a101a1a200041186a10192201200041406b105f10172001200041406b1060200128020c200141106a28020047044010000b20012802002001280204100f200128020c22030440200120033602100b200210580c020b41ec081055200551044020011059410247044010000b200041e8006a200141011053200041e8006a10612101200041e8006a1057220220011027200210580c020b41f7081055200551044020011059410247044010000b200041e8006a200141011053200041e8006a10542105200041e8006a1057220341406b2802002005a74101746a2f01002102200041406b10192101200041306a4100360200200041286a4200370300200041206a420037030020004200370318200041186a2002106220002802182104200041186a410472101d200120041017200120021063200128020c200141106a28020047044010000b20012802002001280204100f200128020c22020440200120023602100b200310580c020b41880910552005510440200041186a102e2102200041246a102e210320011059410347044010000b20004101360240200020013602682000200041406b36026c200041e8006a20021064200041e8006a20031064200041e8006a10572101200041e0016a2002101a2102200041d8006a2003101a2103200041406b2002101a2102200041f0016a2003101a2103200141e8006a2002102c200310261a200110580c020b418f0910552005520d00200041e0016a102e210220011059410247044010000b200041e8006a200141011053200041e8006a20021065200041186a200041e8006a1057220141e8006a200041406b200041f0016a2002101a101a102c101a1a200041186a105d200110580c010b10000b106620004180026a24000b0c00200020012002411c10670bcf0202067f017e230041106b220324002001280208220520024b0440200341086a200110830120012003280208200328020c10810136020c20032001108301410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410671a200341106a24000f0b2003200110830141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041081011082012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b22012400200010680240024020001069450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000105a200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001059410147044010000b0b810f010b7f230041d0016b2201240020004200370300200041086a41003602002000102e21082000428aedabfdf7a698fe29370310200041186a2204102e1a200141a8016a101922022000290310106a200228020c200241106a28020047044010000b02402002280200220620022802042207100a2203450d002001410036025020014200370348200141c8006a200310372006200720012802482209200128024c20096b100b417f470440200141e0006a2001280248220541016a200128024c2005417f736a10522004105e200321050b20012802482203450d002001200336024c0b200228020c22030440200220033602100b20054504402004200810261a0b2000420037022841002102200041c8006a4100360200200041406b22034200370200200041386a2205429fe6c89bc186c5be1d370300200041306a4100360200200141e0006a101922072005290300106a200728020c200741106a28020047044010000b200041c4006a210602402007280200220520072802042204100a2209450d00200141003602a001200142003703980120014198016a20091037200520042001280298012208200128029c0120086b100b417f47044002400240200141c8006a200128029801220241016a200128029c012002417f736a10522202280204450d0020022802002d000041c001490d002002105921052000280248200028024022046b41017520054904402003200141a8016a2005200028024420046b410175200041c8006a10292205102a2005102b0b200141086a2002106b200141c0016a2002106c200041c8006a21080340200128020c20012802c401460440200128021020012802c801460d030b200141a8016a200141086a106d200141a8016a106121050240200028024422022000280248490440200220053b01002006200241026a3602000c010b200141306a2003200220032802006b410175220241016a102820022008102921022001280238220420053b01002001200441026a36023820032002102a2002102b0b200141086a106e0c000b000b10000b200921020b2001280298012205450d002001200536029c010b200728020c22050440200720053602100b024020020d00200028022c2204200028022822056b41017522072000280248200028024022026b4101754d04402007200628020020026b41017522034b04402005200520034101746a22032002106f1a20032004200610700c020b2006200520042002106f3602000c010b2002044020004100360248200042003702400b2000200320071028220310342202360240200020023602442000200220034101746a36024820052004200610700b200041d4006a22074200370200200041ec006a220a4200370200200041e0006a2202428cbcadf0bacdb0897537030020002007360250200041e8006a2205200a360200200141306a101922092002290300106a200928020c200941106a28020047044010000b02402009280200220320092802042204100a220b450440410021020c010b410021022001410036022820014200370320200141206a200b10372003200420012802202206200128022420066b100b417f47044002400240200141086a2001280220220241016a20012802242002417f736a10522202280204450d0020022802002d000041c001490d0020014188016a2002106b200141f8006a2002106c200141d4006a21060340200128028c01200128027c460440200128029001200128028001460d030b200141e0006a20014188016a106d200141c8006a102e21022006102e210402402001280264044020012802602d000041bf014b0d010b10000b200141e0006a1071410247044010000b200141c0016a102e2103200141a8016a200141e0006a41001053200141a8016a2003106520022003107220014198016a102e2103200141a8016a200141e0006a41011053200141a8016a200310652004200310722005200141a8016a2002102d22082802004504404128102022032001290348370210200341186a200141d0006a28020036020020021031200341246a200641086a2802003602002003411c6a200629020037020020041031200520012802a80120082003102f0b20014188016a106e0c000b000b10000b200b21020b20012802202203450d00200120033602240b200928020c22030440200920033602100b024020020d002000280250210202402000280270450d00200028026821032000200a36026820004100360270200028026c21042000410036026c2004410036020820032802042204200320041b2104034020042203450d0120022007470440200341106a200241106a102621062003411c6a2002411c6a10261a024020032802082204450440410021040c010b2003200428020022084604402004410036020020042802042208450d012008107321040c010b200441003602042008450d002008107321040b2005200141a8016a200610742106200520012802a80120062003102f2002107521020c010b0b0340200328020822030d000b200721020b034020022007460d0141281020220341106a2204200241106a10762005200141a8016a200410742104200520012802a80120042003102f2002107521020c000b000b200141d0016a240020000b850a010a7f23004190016b22022400200241406b10192206200041e0006a22012903001077101720062001290300106a200628020c200641106a28020047044010000b200628020421092006280200210a200241086a10192107200241f0006a4100360200200241e8006a4200370300200241e0006a4200370300200242003703580240200041f0006a280200450440200241d8006a10780c010b200041ec006a2103200241d8006a4100101b210420024184016a21052000280268210103402001200346044020044101101b1a05200241f8006a200141106a107620044100101b200241306a200241f8006a101a101c200241206a2005101a101c4101101b1a2001107521010c010b0b0b20022802582101200241d8006a410472101d2007200241306a10792208107a2007200120082802046a20082802006b10172007200028027010142104200041ec006a2105200028026821010340200120054704402004410210142203200241d8006a200141106a101a101e2003200241f8006a2001411c6a101a101e2001107521010c010b0b0240200428020c200441106a280200460440200441046a2101200428020021030c010b200441046a2101100020042802002103200428020c2004280210460d0010000b200a200920032001280200100c200828020022010440200820013602040b200428020c22010440200420013602100b200628020c22010440200620013602100b200241f8006a10192205200041386a22012903001077101720052001290300106a200528020c200541106a28020047044010000b2005280204210720052802002109200241406b10192108200241f0006a4100360200200241e8006a4200370300200241e0006a42003703002002420037035802402000280240200041c4006a280200460440200241d8006a10780c010b200241d8006a4100101b2103200028024421042000280240210103402001200446044020034101101b1a05200320012f01001062200141026a21010c010b0b0b20022802582101200241d8006a410472101d2008200241d8006a10792206107a2008200120062802046a20062802006b10172008200028024420002802406b410175101421032000280244210420002802402101034020012004470440200320012f01001063200141026a21010c010b0b0240200328020c200341106a280200460440200341046a2101200328020021040c010b200341046a2101100020032802002104200328020c2003280210460d0010000b2009200720042001280200100c200628020022010440200620013602040b200328020c22010440200320013602100b200528020c22010440200520013602100b200041406b28020022010440200020013602440b2000280228220104402000412c6a20013602000b200241d8006a1019220320002903101077101720032000290310106a200041186a2105200328020c200341106a28020047044010000b2003280204210620032802002108200241f8006a101921012005105f21072001200241406b10792204107a2001200720042802046a20042802006b10172001200510600240200128020c200141106a280200460440200141046a2105200128020021070c010b200141046a2105100020012802002107200128020c2001280210460d0010000b2008200620072005280200100c200428020022050440200420053602040b200128020c22040440200120043602100b200328020c22010440200320013602100b20024190016a24000b2501017f02402000280204450d0020002802002d000041c001490d002000107121010b20010bd50101047f2001105b2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bff0201037f200028020445044041000f0b2000106841012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b4601017f230041206b22022400200241086a2000280200200028020428020010532001200241086a105437030020002802042200200028020041016a360200200241206a24000baa0101047f230041e0006b22012400200141186a10192102200141d8006a4100360200200141d0006a4200370300200141c8006a420037030020014200370340200141406b200141306a2000101a101c210320012802402104200341046a101d2002200410172002200141086a2000101a101e200228020c200241106a28020047044010000b20022802002002280204100f200228020c22000440200220003602100b200141e0006a24000b2801017f230041206b22022400200241086a200041001053200241086a20011065200241206a24000b6001027f230041306b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020014100101b200141206a2000101a101c4101101b210020012802002102200041046a101d200141306a240020020b6d01027f230041406a220224002000410110142100200241386a4100360200200241306a4200370300200241286a420037030020024200370320200241206a200241106a2001101a101c2103200020022802201017200020022001101a101e200341046a101d200241406b24000b880101037f230041106b22012400200010680240024020001069450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000105a200128020c220041034f044010000b200128020821030340200004402000417f6a210020032d00002002410874722102200341016a21030c010b0b200141106a2400200241ffff03710b090020002001ad107b0b090020002001ad107c0b4301017f230041206b22022400200241086a200028020020002802042802001053200241086a2001106520002802042200200028020041016a360200200241206a24000ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a102e1a0c010b200241186a2000105a2000105b21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102021032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1072200241206a24000b880101037f41a009410136020041a4092802002100034020000440034041a80941a8092802002201417f6a2202360200200141014845044041a0094100360200200020024102746a22004184016a280200200041046a28020011020041a009410136020041a40928020021000c010b0b41a809412036020041a409200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000107f20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000107f20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001068200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0b080020002001107c0b0a00200020014101107d0b0a00200020014100107d0b160020002001280204200141086a280200411c10671a0bb70102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a200141002004200210810110820120002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b2501017f200120006b2201410175210320010440200220002001104f0b200220034101746a0b2800200120006b220141014e044020022802002000200110351a2002200228020020016a3602000b0b820101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000108301200128020c210003402000450d0120014100200128020822032003200010810122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a280200360200200110310b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a1030044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b160020002001101a1a2000410c6a2001410c6a101a1a0b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000107b200128020021022001410472101d200141206a240020020b3901017f027f200041186a28020022010440200041086a280200200041146a280200200110450c010b20000b2201200128020041016a3602000b3000200041003602082000420037020020004101103e200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004104320002802040520020b20002802006a2003200110351a2000200028020420016a3602040b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002104420026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002104521000b2000200028020020036a3602000b2a01017f2000420020011006200028020422026a10850142002001200220002802006a100720001084010be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110830120004100200428020c220120042802082202200110810122032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b3501017f230041106b220041c0890436020c41ac09200028020c41076a417871220036020041b009200036020041b4093f003602000b2f01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001080012000105b6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2701017f230041206b22022400200241086a2000200141141067107f2100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2301017f2001105b220220012802044b044010000b20002001200110800120021082010b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a108501200120002802006a22012002200110030c010b0b0b3601017f2000280208200149044020011050200028020020002802041035210220002001360208200020023602000b200020013602040b0ba30101004181080b9b0130313233343536373839616263646566006174780071707a7279397838676632747664773073336a6e35346b686365366d7561376c007472616e7366657200696e6974006d6967726174655f636f6e7472616374007365744d657373616765006765744d6573736167650070757368566563746f7200676574566563746f72456c656d656e74007365744d6170006765744d6170456c656d656e74"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_PUSHVECTOR = "pushVector"; - - public static final String FUNC_MIGRATE_CONTRACT = "migrate_contract"; - - public static final String FUNC_SETMESSAGE = "setMessage"; - - public static final String FUNC_GETMESSAGE = "getMessage"; - - public static final String FUNC_GETVECTORELEMENT = "getVectorElement"; - - public static final String FUNC_SETMAP = "setMap"; - - public static final String FUNC_GETMAPELEMENT = "getMapElement"; - - public static final WasmEvent TRANSFER_EVENT = new WasmEvent("transfer", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(String.class))); - ; - - protected ContractMigrate_types(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractMigrate_types(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall pushVector(Uint16 element) { - final WasmFunction function = new WasmFunction(FUNC_PUSHVECTOR, Arrays.asList(element), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall pushVector(Uint16 element, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PUSHVECTOR, Arrays.asList(element), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractMigrate_types.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractMigrate_types.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractMigrate_types.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractMigrate_types.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall migrate_contract(byte[] init_arg, Uint64 transfer_value, Uint64 gas_value) { - final WasmFunction function = new WasmFunction(FUNC_MIGRATE_CONTRACT, Arrays.asList(init_arg,transfer_value,gas_value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall migrate_contract(byte[] init_arg, Uint64 transfer_value, Uint64 gas_value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_MIGRATE_CONTRACT, Arrays.asList(init_arg,transfer_value,gas_value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall setMessage(Message msg) { - final WasmFunction function = new WasmFunction(FUNC_SETMESSAGE, Arrays.asList(msg), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setMessage(Message msg, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETMESSAGE, Arrays.asList(msg), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getMessage() { - final WasmFunction function = new WasmFunction(FUNC_GETMESSAGE, Arrays.asList(), Message.class); - return executeRemoteCall(function, Message.class); - } - - public RemoteCall getVectorElement(Uint64 index) { - final WasmFunction function = new WasmFunction(FUNC_GETVECTORELEMENT, Arrays.asList(index), Uint16.class); - return executeRemoteCall(function, Uint16.class); - } - - public RemoteCall setMap(String key, String value) { - final WasmFunction function = new WasmFunction(FUNC_SETMAP, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setMap(String key, String value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETMAP, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getMapElement(String key) { - final WasmFunction function = new WasmFunction(FUNC_GETMAPELEMENT, Arrays.asList(key), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractMigrate_types load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractMigrate_types(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractMigrate_types load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractMigrate_types(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String topic; - - public String arg1; - } - - public static class Message { - public String head; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_v1.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_v1.java deleted file mode 100644 index a508bcc685..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_v1.java +++ /dev/null @@ -1,150 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractMigrate_v1 extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000016a1160027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60037f7f7f017f60000060047f7f7f7f0060047f7f7f7f017f60027f7e0060017f017e60077f7f7f7f7f7f7f0060047f7f7e7e0060037e7e7f006000017f60077f7f7f7f7f7f7f017f60027e7e017f02e3021003656e760c706c61746f6e5f70616e6963000603656e760b706c61746f6e5f73686133000703656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65001003656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e74000703656e760e706c61746f6e5f6d696772617465000f03656e760d706c61746f6e5f72657475726e00000351500600040204000500000104000002000c0104030b09000003000500070402030000050400020300010503010000050802050003010605030a0a02010201000100020100060802090100040002060101070405017001010105030100020608017f01419089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300100f5f5f66756e63735f6f6e5f65786974005306696e766f6b6500440ac876500400105c0bd50301077f230041c0016b22022400200241b70810122104200241e8006a1013200241fc006a410036020020024200370274200241e8006a410210142103200241d8006a20041015200241c8006a20001015200241406b4100360200200241386a4200370300200241306a420037030020024200370328200241286a20022802582200200228025c101620022802482204200228024c101621052003200228022810172003200241d8006a10182003200241c8006a10182002280274200241f8006a28020047044010000b2003280204210620032802002107200241106a1019210320024180016a2001101a2101200241a8016a4100360200200241a0016a420037030020024198016a4200370300200242003703900120024190016a4100101b20024190016a200241b0016a2001101a101c20024190016a4101101b200228029001210820024190016a410472101d200320081017200341011014220320024190016a2001101a101e200328020c200341106a28020047044010000b2007200620032802002003280204100d200328020c22010440200320013602100b200541046a101d200404402002200436024c0b200004402002200036025c0b200228027422030440200220033602780b200241c0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b102720000b160020004100360208200042003702002000410010360bf30101057f20002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410200b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110311a0b20002002360214200020033602102000200536020c20000b9e0201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a200410300340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b20024100360208200242003703002002412010282003200228021420036b20022802002204200228020420046b100120002002280200360200200020022902043702042003450d00200220033602140b200241206a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103720026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110380c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110360b0b1500200020012802002200200128020420006b10390b190020001013200041146a41003602002000420037020c20000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102720000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031038280200210120022003417f6a3602002007103a4180104f044020072000410c6a280200417c6a103b0b200141384f047f2001103720016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103821000c010b02402007103a0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103c0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010202105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103d220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104022013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103c0c010b20042001410175410120011b20032005103e210241802010202106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103d22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103e21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003103f200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002103f052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104022013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103e21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006103f200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071041200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103720026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001103821000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001041200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103b200441106a24000b2c01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10390ba707010c7f230041e0006b220424002001280204210f20012802002109200441286a41800810122105200441d8006a41003602002004420037035002400240200528020420042d0028220841017620084101711b220b200f20096b4101746a2206410b4f0440200641106a4170712208102021072004200636025420042008410172360250200420073602580c010b200420064101743a0050200441d0006a41017221072006450d010b200720061021210720042d002821080b200620076a41003a0000200541016a210a2005280208210d2005280204200841fe01714101762008410171220c1b2105027f20042d00502208410171220e450440410a210720084101762208200b200b20084b1b0c010b2004280250417e71417f6a210720042802542208200b2008200b491b0b2106200d200a200c1b210a024002400240027f02400240200620086b20076a20054f04402004280258200441d0006a410172200e1b21074100210d200520064604402005210c0c050b200820066b220e4504402006210c0c050b20052006490d012007200a4f0d02200720086a200a4d0d02200620076a200a4d0440200a200520066b6a210a0c030b2007200a200610222005200a6a210a200520066b21052006210d41000c030b200441d0006a2007200520086a20066b20076b200820062005200a10230c050b2007200a20051022200520076a200620076a200e10222006210c0c030b20060b210c2007200d6a220620056a2006200c6a200e10220b2007200d6a200a200510220b2005200c6b20086a2105024020042d00504101710440200420053602540c010b200420054101743a00500b200520076a41003a00000b200441d0006a410172210503402009200f4704402004280258200520042d00504101711b200b6a20092d00004104764181086a2d00003a00002004280258200520042d00504101711b200b6a41016a20092d0000410f714181086a2d00003a0000200941016a2109200b41026a210b0c010b0b200441386a4100360200200441306a420037030020044200370328200441d0006a20021024200441406b20031024200441286a20012802002209200128020420096b20042802502209200428025420096b20042802402209200428024420096b100e1a200428024022090440200420093602440b200428025022090440200420093602540b200441186a200441286a1025200441086a200441286a1025200441186a200441086a1011200441d0006a200441286a10252000200441286a1025200441e0006a24000b0b002000410120001b10430bb90301027f02402001450d00200041303a0000200020016a2203417f6a41303a000020014103490d00200041303a0002200041303a00012003417d6a41303a00002003417e6a41303a000020014107490d00200041303a00032003417c6a41303a000020014109490d002000410020006b41037122026a220341b0e0c081033602002003200120026b417c7122026a2201417c6a41b0e0c0810336020020024109490d00200341b0e0c08103360208200341b0e0c08103360204200141786a41b0e0c08103360200200141746a41b0e0c0810336020020024119490d00200341b0e0c08103360218200341b0e0c08103360214200341b0e0c08103360210200341b0e0c0810336020c200141706a41b0e0c081033602002001416c6a41b0e0c08103360200200141686a41b0e0c08103360200200141646a41b0e0c081033602002002200341047141187222026b2101200220036a2102034020014120490d01200242b0e0c08183868c9830370300200241186a42b0e0c08183868c9830370300200241106a42b0e0c08183868c9830370300200241086a42b0e0c08183868c9830370300200241206a2102200141606a21010c000b000b20000b0f002002044020002001200210420b0ba80101027f027f20002d0000410171044020002802080c010b200041016a0b2108416f2107200141e6ffffff074d0440410b20014101742207200120026a220120012007491b220141106a4170712001410b491b21070b20071020210120050440200120062005102e0b200320046b22030440200120056a200420086a2003102e0b200020013602082000200320056a220536020420002007410172360200200120056a41003a00000b6302017f017e20012103034020035045044020034208882103200241016a21020c010b0b20004100360208200042003702002000200210282000280204417f6a21020340200150450440200220013c00002002417f6a2102200142088821010c010b0b0b930a01087f230041d0006b220324002003419208101221062003410036022820034200370320200341406b2001200141146a1029210541002101034020042005280204200528020022076b4f044002402002044020032001410520026b74411f713a0030200341206a200341306a102a200528020021070b20070440200520073602040b410021022003410036023820034200370330200341306a200628020420032d0000220141017620014101711b4101744101721028200641016a210503402002200628020420032d00002201410176200141017122011b22044f0d01200328023020026a2006280208200520011b20026a2d000022014105763a00002003280230200628020420032d0000220441017620044101711b6a20026a41016a2001411f713a0000200241016a21020c000b000b05200420076a2d0000200141087441801e71722101200241086a210203402002410548450440200320012002417b6a220276411f713a0030200341206a200341306a102a0c010b0b200441016a21040c010b0b200328023020046a41003a0000200341406b200341306a20032802202003280224102b200328023022020440200320023602340b200341406b200328024420032802406b41066a10282003280244200328024022046b21014101210203402001044020042d000041002002411d764101716b41b3c5d1d0027141002002411c764101716b41dde788ea037141002002411b764101716b41fab384f5017141002002411a764101716b41ed9cc2b20271410020024119764101716b41b2afa9db0371200241057441e0ffffff037173737373737321022001417f6a2101200441016a21040c010b0b410021012003410036021820034200370310200341106a41061028200241017321044119210203402002417b46450440200328021020016a2004200276411f713a00002002417b6a2102200141016a21010c010b0b200328024022020440200320023602440b200341406b200341306a200341206a102c220220032802102003280214102b200228020022010440200220013602040b20004200370200200041086a41003602002000102d2006280208200520032d0000220241017122011b210402402006280204200241017620011b220241016a410a4d0440200020024101743a0000200041016a21010c010b200241116a4170712206102021012000200236020420002006410172360200200020013602080b200120042002102e200120026a41003a000020004131102f20032802442202200328024022046b2000280204220920002d000022064101762201200641017122081b6a2105410a21072008044020002802002206417e71417f6a2107200921010b024020012005200120054b1b220541106a417071417f6a410a2005410a4b1b22052007460d00027f2005410a460440200041016a21082000280208210741000c010b4100200520074d200541016a102022081b0d0120002d0000220641017104402000280208210741010c010b200041016a210741010b210920082007027f2006410171044020002802040c010b200641fe01714101760b41016a102e2009044020002008360208200020013602042000200541016a4101723602000c010b200020014101743a00000b2004210103402002200446450440200020012d00004196086a2c0000102f200141016a21012002417f6a21020c010b0b20040440200320043602440b200328021022020440200320023602140b200328022022020440200320023602240b200341d0006a24000bcf0101047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d00002205410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b2201200420021022200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b20002001200220016b027f2003044020002802040c010b20054101760b220320032002200410230b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204102021032000200236020420002004410172360200200020033602080b200320012002102e200220036a41003a00000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110322106200241186a200041086a3602002002410036021441002101200604402006102021010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1033200241086a10340c010b200520014d0d002000200120046a3602040b200241206a24000b450020004100360208200042003702000240200220016b2202450d0020002002103020024101480d0020002802042001200210311a2000200028020420026a3602040b20000bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10322105200241186a200041086a3602004100210320024100360214200504402005102021030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a1033200241086a10340b200241206a24000bc60301057f230041206b22042400200128020421050240200320026b22064101480d002006200128020820056b4c0440034020022003460d02200520022d00003a00002001200128020441016a2205360204200241016a21020c000b000b2001200520066a200128020022066b10322108200441186a200141086a36020020044100360214200520066b2106200804402008102021070b200420073602082004200620076a22063602102004200720086a3602142004200636020c200441086a410472210703402002200346450440200620022d00003a00002004200428021041016a2206360210200241016a21020c010b0b200128020020052007103502402001280204220320056b220241004c0440200428021021020c010b2004200428021020052002103120026a2202360210200128020421030b20012002360204200128020021022001200428020c3602002001280208210520012004280214360208200420033602102004200236020c2004200536021420042002360208200441086a1034200128020421050b20002005360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000b5a01017f20004200370200200041003602080240200128020420012802006b2202450d002000200210302001280204200128020022026b22014101480d0020002802042002200110311a2000200028020420016a3602040b20000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b10002002044020002001200210311a0b0bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b20031020220220062005102e20002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b2001017f2000200110202202360200200020023602042000200120026a3602080bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b6701017f20002802002000280204200141046a1035200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b270020022002280200200120006b22016b2202360200200141014e044020022000200110311a0b0b2f01017f2000280208200149044020011043200028020020002802041031210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f2000200120021004200028020422036a105a20012002200320002802006a10052000105b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103d22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a103e2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003103f200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110420b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102021040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110420b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210311a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f418009200041086a220241107622004180092802006a220336020041fc0841fc08280200220420026a41076a417871220236020002400240200341107420024d0440418009200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103141086a0541000b2100200141106a240020000bce0402047f017e230041a0016b22002400105c10082201104322021009200041f8006a200041086a20022001104522014100104602400240200041f8006a10472204500d0041c0081048200451044020011049200041f8006a104a104b0c020b41c50810482004510440200042003703382000420037033020004100360228200042003703202001104c410447044010000b200041386a2102200041306a21032000410136024c200020013602402000200041cc006a360244200041f8006a20014101104602400240200028027c044020002802782d000041c001490d010b20004100360270200042003703680c010b200041d8006a200041f8006a104d20002802582101200041d0006a200041f8006a104d200041e8006a20012000280250200041f8006a104e6a10291a0b200020002802683602202000200029026c3702242000200028024c41016a36024c200041406b2003104f200041406b2002104f200041f8006a104a2102200041e8006a200041d8006a200041206a102c220120002903302000290338101f200041e8006a1050200128020022030440200120033602040b2002104b20002802202201450d02200020013602240c020b41d60810482004510440200041e8006a105121022001104c410247044010000b200041f8006a200141011046200041f8006a20021052200041f8006a104a210120004190016a200041206a2002101a10262001104b0c020b41e10810482004520d0020011049200041f8006a104a2101200041206a20004190016a101a10502001104b0c010b10000b1053200041a0016a24000b0c00200020012002411c10540bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001105820012003280208200328020c105936020c200320011058410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410541a200341106a24000f0b20032001105841002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041059105f2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b2203240020001055024002402000280204450d00200010550240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a2000104d200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000104c410147044010000b0bf40101087f230041406a22012400200010512107200042afb59bdd9e8485b9f800370310200041186a10512106200141286a1019220220002903101056200228020c200241106a28020047044010000b02402002280200220520022802042208100a22034504400c010b2001410036022020014200370318200141186a200310282005200820012802182205200128021c20056b100b417f47044020012001280218220441016a200128021c2004417f736a104520061052200321040b20012802182203450d002001200336021c0b200228020c22030440200220033602100b20044504402006200710260b200141406b240020000bc80302097f027e230041d0006b22032400200341186a10192104200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330410121022000290310220a4280015a04400340200a200b8450450440200b423886200a42088884210a200141016a2101200b420888210b0c010b0b200141384f047f2001103720016a0520010b41016a21020b20032002360230200341306a410472101d200420021017200420002903101056200428020c200441106a28020047044010000b2004280204210520042802002106200341306a10192101200041186a22001057210741011020220241fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009103620012802040520080b20012802006a2002410110311a2001200128020441016a3602042001200241016a200720026b6a10172001200341086a2000101a101e0240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b2006200520022001280204100c200128020c22020440200120023602100b200428020c22010440200420013602100b200341d0006a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001058200128020c210003402000450d01200141002001280208220320032000105922046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bd50101047f2001104e2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bff0201037f200028020445044041000f0b2000105541012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b4601017f230041206b22022400200241086a2000280200200028020428020010462001200241086a104737030020002802042200200028020041016a360200200241206a24000b6001027f230041306b22022400200241186a101922012000105710172001200241086a2000101a101e200128020c200141106a28020047044010000b20012802002001280204100f200128020c22000440200120003602100b200241306a24000b190020004200370200200041086a41003602002000102d20000bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10511a0c010b200241186a2000104d2000104e21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102021032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a102d200241206a24000b880101037f41ec08410136020041f0082802002100034020000440034041f40841f4082802002201417f6a2202360200200141014845044041ec084100360200200020024102746a22004184016a280200200041046a28020011020041ec08410136020041f00828020021000c010b0b41f408412036020041f008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105d20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105d20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b2801017f2000420020011006200028020422026a105a42002001200220002802006a10072000105b0b5901017f230041306b22012400200141286a4100360200200141206a4200370300200141186a420037030020014200370310200141106a20012000101a101c20012802102100200141106a410472101d200141306a240020000b2101017f2001104e220220012802044b044010000b200020012001105e2002105f0b2701017f230041206b22022400200241086a2000200141141054105d2100200241206a240020000b3601017f2000280208200149044020011043200028020020002802041031210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a105a200120002802006a22012002200110030c010b0b0b3501017f230041106b22004190890436020c41f808200028020c41076a417871220036020041fc0820003602004180093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000105e2000104e6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b7101004181080b6a30313233343536373839616263646566006174780071707a7279397838676632747664773073336a6e35346b686365366d7561376c007472616e7366657200696e6974006d6967726174655f636f6e7472616374007365745f737472696e67006765745f737472696e67"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_MIGRATE_CONTRACT = "migrate_contract"; - - public static final String FUNC_SET_STRING = "set_string"; - - public static final String FUNC_GET_STRING = "get_string"; - - public static final WasmEvent TRANSFER_EVENT = new WasmEvent("transfer", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(String.class))); - ; - - protected ContractMigrate_v1(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractMigrate_v1(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractMigrate_v1.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractMigrate_v1.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractMigrate_v1.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractMigrate_v1.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall migrate_contract(byte[] init_arg, Uint64 transfer_value, Uint64 gas_value) { - final WasmFunction function = new WasmFunction(FUNC_MIGRATE_CONTRACT, Arrays.asList(init_arg,transfer_value,gas_value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall migrate_contract(byte[] init_arg, Uint64 transfer_value, Uint64 gas_value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_MIGRATE_CONTRACT, Arrays.asList(init_arg,transfer_value,gas_value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall set_string(String one_name) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(one_name), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_string(String one_name, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(one_name), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractMigrate_v1 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractMigrate_v1(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractMigrate_v1 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractMigrate_v1(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String topic; - - public String arg1; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_v2.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_v2.java deleted file mode 100644 index cd3645bf3e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractMigrate_v2.java +++ /dev/null @@ -1,150 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractMigrate_v2 extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000016b1160027f7f0060017f0060017f017f60037f7f7f0060027f7f017f60037f7f7f017f60000060047f7f7f7f0060047f7f7f7f017f60027f7e0060017f017e60077f7f7f7f7f7f7f0060057f7f7f7e7e0060037e7e7f006000017f60077f7f7f7f7f7f7f017f60027e7e017f02f7021103656e760c706c61746f6e5f70616e6963000603656e760d706c61746f6e5f63616c6c6572000103656e760b706c61746f6e5f73686133000703656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65001003656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e74000703656e760e706c61746f6e5f6d696772617465000f03656e760d706c61746f6e5f72657475726e0000035655060004010400050000020400000100010100000c0204030b090005000007040103000304000103050000020503020000050801050003020605030a0a010201020002000102000608010101000402090001060202070405017001010105030100020608017f01419089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300110f5f5f66756e63735f6f6e5f65786974005706696e766f6b6500480ae57755040010620bd50301077f230041c0016b22022400200241b70810132104200241e8006a1014200241fc006a410036020020024200370274200241e8006a410210152103200241d8006a20041016200241c8006a20001016200241406b4100360200200241386a4200370300200241306a420037030020024200370328200241286a20022802582200200228025c101720022802482204200228024c101721052003200228022810182003200241d8006a10192003200241c8006a10192002280274200241f8006a28020047044010000b2003280204210620032802002107200241106a101a210320024180016a2001101b2101200241a8016a4100360200200241a0016a420037030020024198016a4200370300200242003703900120024190016a4100101c20024190016a200241b0016a2001101b101d20024190016a4101101c200228029001210820024190016a410472101e200320081018200341011015220320024190016a2001101b101f200328020c200341106a28020047044010000b2007200620032802002003280204100e200328020c22010440200320013602100b200541046a101e200404402002200436024c0b200004402002200036025c0b200228027422030440200220033602780b200241c0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b103320000b1600200041003602082000420037020020004100103a0bf30101057f20002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410250b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110381a0b20002002360214200020033602102000200536020c20000b9e0201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a200410390340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b200241003602082002420037030020024120102d2003200228021420036b20022802002204200228020420046b100220002002280200360200200020022902043702042003450d00200220033602140b200241206a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103b20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001103c0c010b20000b2201200128020020036a36020020000b13002000280208200149044020002001103a0b0b1500200020012802002200200128020420006b103d0b190020001014200041146a41003602002000420037020c20000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204103320000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203103c280200210120022003417f6a3602002007103e4180104f044020072000410c6a280200417c6a103f0b200141384f047f2001103b20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103c21000c010b02402007103e0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10400c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010252105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1041220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10422102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021043200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104422013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10422102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021043200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10400c010b20042001410175410120011b200320051042210241802010252106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104122013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104221032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031043200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021043052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104422013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104221062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061043200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071045200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103b20026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001103c21000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001045200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103f200441106a24000b2c01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b103d0b4601017f230041306b22012400200141086a1021200141206a200141086a1022200041406b200141206a1023200141086a1021200141206a200141086a1022200141306a24000b210020004200370000200041106a4100360000200041086a4200370000200010010b930a01087f230041d0006b220324002003419208101321062003410036022820034200370320200341406b2001200141146a102b210541002101034020042005280204200528020022076b4f044002402002044020032001410520026b74411f713a0030200341206a200341306a102c200528020021070b20070440200520073602040b410021022003410036023820034200370330200341306a200628020420032d0000220141017620014101711b410174410172102d200641016a210503402002200628020420032d00002201410176200141017122011b22044f0d01200328023020026a2006280208200520011b20026a2d000022014105763a00002003280230200628020420032d0000220441017620044101711b6a20026a41016a2001411f713a0000200241016a21020c000b000b05200420076a2d0000200141087441801e71722101200241086a210203402002410548450440200320012002417b6a220276411f713a0030200341206a200341306a102c0c010b0b200441016a21040c010b0b200328023020046a41003a0000200341406b200341306a20032802202003280224102e200328023022020440200320023602340b200341406b200328024420032802406b41066a102d2003280244200328024022046b21014101210203402001044020042d000041002002411d764101716b41b3c5d1d0027141002002411c764101716b41dde788ea037141002002411b764101716b41fab384f5017141002002411a764101716b41ed9cc2b20271410020024119764101716b41b2afa9db0371200241057441e0ffffff037173737373737321022001417f6a2101200441016a21040c010b0b410021012003410036021820034200370310200341106a4106102d200241017321044119210203402002417b46450440200328021020016a2004200276411f713a00002002417b6a2102200141016a21010c010b0b200328024022020440200320023602440b200341406b200341306a200341206a102f220220032802102003280214102e200228020022010440200220013602040b20004200370200200041086a4100360200200010302006280208200520032d0000220241017122011b210402402006280204200241017620011b220241016a410a4d0440200020024101743a0000200041016a21010c010b200241116a4170712206102521012000200236020420002006410172360200200020013602080b2001200420021031200120026a41003a000020004131103220032802442202200328024022046b2000280204220920002d000022064101762201200641017122081b6a2105410a21072008044020002802002206417e71417f6a2107200921010b024020012005200120054b1b220541106a417071417f6a410a2005410a4b1b22052007460d00027f2005410a460440200041016a21082000280208210741000c010b4100200520074d200541016a102522081b0d0120002d0000220641017104402000280208210741010c010b200041016a210741010b210920082007027f2006410171044020002802040c010b200641fe01714101760b41016a10312009044020002008360208200020013602042000200541016a4101723602000c010b200020014101743a00000b2004210103402002200446450440200020012d00004196086a2c00001032200141016a21012002417f6a21020c010b0b20040440200320043602440b200328021022020440200320023602140b200328022022020440200320023602240b200341d0006a24000b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a280200360200200110300bbc07010c7f230041e0006b22052400200541286a1021200541d0006a200541286a1022200228020421102002280200210a200541286a41800810132106200541d8006a41003602002005420037035002400240200628020420052d0028220941017620094101711b220c2010200a6b4101746a2207410b4f0440200741106a4170712209102521082005200736025420052009410172360250200520083602580c010b200520074101743a0050200541d0006a41017221082007450d010b200820071026210820052d002821090b200720086a41003a0000200641016a210b2006280208210e2006280204200941fe01714101762009410171220d1b2106027f20052d00502209410171220f450440410a210820094101762209200c200c20094b1b0c010b2005280250417e71417f6a210820052802542209200c2009200c491b0b2107200e200b200d1b210b024002400240027f02400240200720096b20086a20064f04402005280258200541d0006a410172200f1b21084100210e200620074604402006210d0c050b200920076b220f4504402007210d0c050b20062007490d012008200b4f0d02200820096a200b4d0d02200720086a200b4d0440200b200620076b6a210b0c030b2008200b200710272006200b6a210b200620076b21062007210e41000c030b200541d0006a2008200620096a20076b20086b200920072006200b10280c050b2008200b20061027200620086a200720086a200f10272007210d0c030b20070b210d2008200e6a220720066a2007200d6a200f10270b2008200e6a200b200610270b2006200d6b20096a2106024020052d00504101710440200520063602540c010b200520064101743a00500b200620086a41003a00000b200541d0006a41017221060340200a2010464504402005280258200620052d00504101711b200c6a200a2d00004104764181086a2d00003a00002005280258200620052d00504101711b200c6a41016a200a2d0000410f714181086a2d00003a0000200a41016a210a200c41026a210c0c010b0b200541386a4100360200200541306a420037030020054200370328200541d0006a20031029200541406b20041029200541286a2002280200220a2002280204200a6b2005280250220a2005280254200a6b2005280240220a2005280244200a6b100f1a2005280240220a04402005200a3602440b2005280250220a04402005200a3602540b200541186a200541286a1022200541086a200541286a1022200541186a200541086a1012200541d0006a200541286a10222000200541286a1022200541e0006a24000b0b002000410120001b10470bb90301027f02402001450d00200041303a0000200020016a2203417f6a41303a000020014103490d00200041303a0002200041303a00012003417d6a41303a00002003417e6a41303a000020014107490d00200041303a00032003417c6a41303a000020014109490d002000410020006b41037122026a220341b0e0c081033602002003200120026b417c7122026a2201417c6a41b0e0c0810336020020024109490d00200341b0e0c08103360208200341b0e0c08103360204200141786a41b0e0c08103360200200141746a41b0e0c0810336020020024119490d00200341b0e0c08103360218200341b0e0c08103360214200341b0e0c08103360210200341b0e0c0810336020c200141706a41b0e0c081033602002001416c6a41b0e0c08103360200200141686a41b0e0c08103360200200141646a41b0e0c081033602002002200341047141187222026b2101200220036a2102034020014120490d01200242b0e0c08183868c9830370300200241186a42b0e0c08183868c9830370300200241106a42b0e0c08183868c9830370300200241086a42b0e0c08183868c9830370300200241206a2102200141606a21010c000b000b20000b0f002002044020002001200210460b0ba80101027f027f20002d0000410171044020002802080c010b200041016a0b2108416f2107200141e6ffffff074d0440410b20014101742207200120026a220120012007491b220141106a4170712001410b491b21070b2007102521012005044020012006200510310b200320046b22030440200120056a200420086a200310310b200020013602082000200320056a220536020420002007410172360200200120056a41003a00000b6302017f017e20012103034020035045044020034208882103200241016a21020c010b0b200041003602082000420037020020002002102d2000280204417f6a21020340200150450440200220013c00002002417f6a2102200142088821010c010b0b0bcf0101047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d00002205410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b2201200420021027200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b20002001200220016b027f2003044020002802040c010b20054101760b220320032002200410280b0b450020004100360208200042003702000240200220016b2202450d0020002002103920024101480d0020002802042001200210381a2000200028020420026a3602040b20000bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10342105200241186a200041086a3602004100210320024100360214200504402005102521030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a1035200241086a10360b200241206a24000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110342106200241186a200041086a3602002002410036021441002101200604402006102521010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1035200241086a10360c010b200520014d0d002000200120046a3602040b200241206a24000bc60301057f230041206b22042400200128020421050240200320026b22064101480d002006200128020820056b4c0440034020022003460d02200520022d00003a00002001200128020441016a2205360204200241016a21020c000b000b2001200520066a200128020022066b10342108200441186a200141086a36020020044100360214200520066b2106200804402008102521070b200420073602082004200620076a22063602102004200720086a3602142004200636020c200441086a410472210703402002200346450440200620022d00003a00002004200428021041016a2206360210200241016a21020c010b0b200128020020052007103702402001280204220320056b220241004c0440200428021021020c010b2004200428021020052002103820026a2202360210200128020421030b20012002360204200128020021022001200428020c3602002001280208210520012004280214360208200420033602102004200236020c2004200536021420042002360208200441086a1036200128020421050b20002005360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000b5a01017f20004200370200200041003602080240200128020420012802006b2202450d002000200210392001280204200128020022026b22014101480d0020002802042002200110381a2000200028020420016a3602040b20000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b10002002044020002001200210381a0b0bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b20031025220220062005103120002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204102521032000200236020420002004410172360200200020033602080b2003200120021031200220036a41003a00000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b6701017f20002802002000280204200141046a1037200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b270020022002280200200120006b22016b2202360200200141014e044020022000200110381a0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2001017f2000200110252202360200200020023602042000200120026a3602080b2f01017f2000280208200149044020011047200028020020002802041038210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f2000200120021005200028020422036a106020012002200320002802006a1006200010610b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104122023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10422103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031043200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110460b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102521040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110460b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210381a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f418009200041086a220241107622004180092802006a220336020041fc0841fc08280200220420026a41076a417871220236020002400240200341107420024d0440418009200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103841086a0541000b2100200141106a240020000bcb0402047f017e230041c0016b2200240010621009220110472202100a200041f0006a200020022001104922014100104a02400240200041f0006a104b2204500d0041c008104c20045104402001104d200041f0006a104e220110202001104f0c020b41c508104c20045104402000420037033020004200370328200041003602202000420037031820011050410447044010000b200041306a2102200041286a210320004101360244200020013602382000200041c4006a36023c200041f0006a20014101104a024002402000280274044020002802702d000041c001490d010b20004100360268200042003703600c010b200041d0006a200041f0006a105120002802502101200041c8006a200041f0006a1051200041e0006a20012000280248200041f0006a10526a102b1a0b200020002802603602182000200029026437021c2000200028024441016a360244200041386a20031053200041386a20021053200041e0006a200041f0006a104e2202200041d0006a200041186a102f2201200029032820002903301024200041e0006a1054200128020022030440200120033602040b2002104f20002802182201450d022000200136021c0c020b41d608104c2004510440200041e0006a1055210220011050410247044010000b200041f0006a20014101104a200041f0006a20021056200041f0006a104e220141186a200041186a2002101b102a2001104f0c020b41e108104c2004520d002001104d200041186a200041f0006a104e220141186a101b10542001104f0c010b10000b1057200041c0016a24000b0c00200020012002411c10580bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001105c20012003280208200328020c105d36020c20032001105c410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410581a200341106a24000f0b20032001105c41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004105d10652001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b2203240020001059024002402000280204450d00200010590240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a20001051200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001050410147044010000b0b0f002000105a200041286a105a20000b0d00200041286a105b2000105b0b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000105c200128020c210003402000450d01200141002001280208220320032000105d22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bd50101047f200110522204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bff0201037f200028020445044041000f0b2000105941012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b4601017f230041206b22022400200241086a20002802002000280204280200104a2001200241086a104b37030020002802042200200028020041016a360200200241206a24000b6001027f230041306b22022400200241186a101a22012000105e10182001200241086a2000101b101f200128020c200141106a28020047044010000b200128020020012802041010200128020c22000440200120003602100b200241306a24000b190020004200370200200041086a41003602002000103020000ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10551a0c010b200241186a200010512000105221030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102521032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1023200241206a24000b880101037f41ec08410136020041f0082802002100034020000440034041f40841f4082802002201417f6a2202360200200141014845044041ec084100360200200020024102746a22004184016a280200200041046a28020011010041ec08410136020041f00828020021000c010b0b41f408412036020041f008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106320024f0d002003410471044010000c010b200042003702000b02402003411071450d002000106320024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bef0101077f230041406a22012400200010552106200042afb59bdd9e8485b9f800370310200041186a10552105200141286a101a22022000290310105f200228020c200241106a28020047044010000b02402002280200220420022802042207100b2200450d002001410036022020014200370318200141186a2000102d2004200720012802182204200128021c20046b100c417f47044020012001280218220341016a200128021c2003417f736a104920051056200021030b20012802182200450d002001200036021c0b200228020c22000440200220003602100b200345044020052006102a0b200141406b24000bc80302097f027e230041d0006b22032400200341186a101a2104200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330410121022000290310220a4280015a04400340200a200b8450450440200b423886200a42088884210a200141016a2101200b420888210b0c010b0b200141384f047f2001103b20016a0520010b41016a21020b20032002360230200341306a410472101e20042002101820042000290310105f200428020c200441106a28020047044010000b2004280204210520042802002106200341306a101a2101200041186a2200105e210741011025220241fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009103a20012802040520080b20012802006a2002410110381a2001200128020441016a3602042001200241016a200720026b6a10182001200341086a2000101b101f0240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b2006200520022001280204100d200128020c22020440200120023602100b200428020c22010440200420013602100b200341d0006a24000b2101017f20011052220220012802044b044010000b2000200120011064200210650b2701017f230041206b22022400200241086a200020014114105810632100200241206a240020000b5901017f230041306b22012400200141286a4100360200200141206a4200370300200141186a420037030020014200370310200141106a20012000101b101d20012802102100200141106a410472101e200141306a240020000b2801017f2000420020011007200028020422026a106042002001200220002802006a1008200010610b3601017f2000280208200149044020011047200028020020002802041038210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210036a1060200120002802006a22012002200110040c010b0b0b3501017f230041106b22004190890436020c41f808200028020c41076a417871220036020041fc0820003602004180093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001064200010526a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b7101004181080b6a30313233343536373839616263646566006174780071707a7279397838676632747664773073336a6e35346b686365366d7561376c007472616e7366657200696e6974006d6967726174655f636f6e7472616374007365745f737472696e67006765745f737472696e67"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_MIGRATE_CONTRACT = "migrate_contract"; - - public static final String FUNC_SET_STRING = "set_string"; - - public static final String FUNC_GET_STRING = "get_string"; - - public static final WasmEvent TRANSFER_EVENT = new WasmEvent("transfer", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(String.class))); - ; - - protected ContractMigrate_v2(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractMigrate_v2(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractMigrate_v2.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractMigrate_v2.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractMigrate_v2.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractMigrate_v2.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall migrate_contract(byte[] init_arg, Uint64 transfer_value, Uint64 gas_value) { - final WasmFunction function = new WasmFunction(FUNC_MIGRATE_CONTRACT, Arrays.asList(init_arg,transfer_value,gas_value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall migrate_contract(byte[] init_arg, Uint64 transfer_value, Uint64 gas_value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_MIGRATE_CONTRACT, Arrays.asList(init_arg,transfer_value,gas_value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall set_string(String one_name) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(one_name), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_string(String one_name, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(one_name), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractMigrate_v2 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractMigrate_v2(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractMigrate_v2 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractMigrate_v2(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String topic; - - public String arg1; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractOriginType.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractOriginType.java deleted file mode 100644 index 85ab07789f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractOriginType.java +++ /dev/null @@ -1,162 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractOriginType extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f017f60017f0060027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f0060047f7f7f7f017f60027f7e0060037e7e7f006000017f60027f7e017f60027e7e017f60017f017e02ce020f03656e760c706c61746f6e5f70616e6963000603656e760b706c61746f6e5f73686133000703656e7610706c61746f6e5f7365745f7374617465000703656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000803656e760c706c61746f6e5f6576656e74000703656e760d706c61746f6e5f72657475726e0000034b4a060403020300050000010303030902030c0403030800020000040401010000010500050000010501000508020504020006080402000e02010201010002010006010503000601010702000405017001010105030100020608017f0141f088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000f0f5f5f66756e63735f6f6e5f65786974004e06696e766f6b65003f0a93604a040010530be10301077f230041c0016b22032400200341a60810112105200341e8006a1012200341fc006a410036020020034200370274200341e8006a410210132104200341d8006a20051014200341c8006a20001014200341406b4100360200200341386a4200370300200341306a420037030020034200370328200341286a20032802582200200328025c101520032802482205200328024c101521062004200328022810162004200341d8006a10172004200341c8006a10172003280274200341f8006a28020047044010000b2004280204210720042802002108200341106a1018210420034180016a2001101921012003200236028c01200341a8016a4100360200200341a0016a420037030020034198016a4200370300200342003703900120034190016a4100101a200341b0016a20011019101b2202200335028c01101c20024101101a21022003280290012109200241046a101d20042009101620044102101320034190016a20011019101e200335028c01101f220428020c200441106a28020047044010000b2008200720042802002004280204100d200428020c22010440200420013602100b200641046a101d200504402003200536024c0b200004402003200036025c0b200328027422040440200320043602780b200341c0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b102920000b160020004100360208200042003702002000410010300b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374102b0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110351a0b20002002360214200020033602102000200536020c20000f0b200041001003200028020422016a105841004100200120002802006a10042000105720000bf00101057f230041106b220324000240027f200128020420012d00002202410176200241017122051b22024504404100210141000c010b2001280208200141016a20051b21052002102b220420026a210620042101034020020440200120052d00003a00002002417f6a2102200141016a2101200541016a21050c010b0b20010b220220046b41204d04402000200636020820002002360204200020043602000c010b200341003602082003420037030020034120103e2004200120046b200328020022022003280204220120026b10012000200136020420002002360200200020032802083602080b200341106a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102e20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001102f0c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110300b0b1600200020012802002200200128020420006b10311a0b190020001012200041146a41003602002000420037020c20000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102920000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a22022802002203102f280200210120022003417f6a360200200710364180104f044020072000410c6a280200417c6a10330b200141384f047f2001102e20016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a2802002001102f0c020b20000c010b0240200710360d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10370c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020102b2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1038220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10392102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103a200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a103b22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10392102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103a200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10370c010b20042001410175410120011b2003200510392102418020102b2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103822013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103921032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003103a200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002103a052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a103b22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103921062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006103a200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071032200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102e20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001102f0c010b20000b2201200128020020036a36020020000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002102e20026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002102f21000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001032200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011033200441106a24000b2c01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10310b2a01017f2000420020011007200028020422026a105842002001200220002802006a10082000105720000b850201037f230041406a22042400200441306a4193081011200441206a419f0810114101101002402001280204220320012802084704402003200210211a2001200128020441246a3602040c010b200441086a2001200320012802006b41246d220341016a10222003200141086a10232203280208200210211a2003200328020841246a360208200120031024200310250b200441086a1018220220011026200228020c200241106a28020047044010000b2002280204210320022802002105027f20012d000c4101710440200141146a2802000c010b2001410d6a0b2001280218200520031002200020011027200228020c22010440200220013602100b200441406b24000b25002000200110191a2000410c6a2001410c6a10191a200041186a200141186a10191a20000b2f01017f2001200028020820002802006b41246d2200410174220220022001491b41c7e3f138200041e3f1b81c491b0b4c01017f2000410036020c200041106a2003360200200104402001102a21040b2000200436020020002004200241246c6a220236020820002004200141246c6a36020c2000200236020420000b900101027f2000280204210220002802002103034020022003464504402001280204415c6a2002415c6a2202102c20012001280204415c6a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001415c6a22013602080c010b0b0bb20201077f23004180016b220224002000200128020420012802006b41246d101321042001280204200128020022016b2100200241206a4104722105200241e0006a4104722106034020000440200441031013210320024100360238200242003703302002420037032820024200370320200241206a2001102d200241206a200241106a2001410c6a22071019101b2002200141186a22081019101b1a200320022802201016200341011013210320024100360278200242003703702002420037036820024200370360200241e0006a200241d0006a20011019101b1a2003200228026010162003200241406b20011019101e21032006101d2003200241e0006a20071019101e200241d0006a20081019101e1a2005101d2000415c6a2100200141246a21010c010520024180016a24000b0b0b810101027f20004200370200200041003602080240200128020420012802006b2202450d002000200241246d2203102a220236020420002002200341246c6a360208200020023602002001280204210320012802002101034020012003460d012002200110211a2000200028020441246a2202360204200141246a21010c000b000b0b2d00230041206b22022400200241106a41800810112002418c08101141021010200020011027200241206a24000b6101027f027f02402002410b4f0440200241106a4170712204102b21032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b20032001200210350b20026a41003a00000b0900200041246c102b0b0b002000410120001b10340b620020002001290200370200200041086a200141086a2802003602002001103d200041146a200141146a2802003602002000200129020c37020c2001410c6a103d200041206a200141206a28020036020020002001290218370218200141186a103d0b2701017f230041106b2202240020004100101a200220011019101b4101101a1a200241106a24000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2f01017f2000280208200149044020011034200028020020002802041035210220002001360208200020023602000b0b2a01017f2000200120021005200028020422036a105820012002200320002802006a10062000105720000b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b9b0101047f230041106b220124002001200036020c2000047f41e008200041086a2202411076220041e0082802006a220336020041dc0841dc08280200220420026a41076a417871220236020002400240200341107420024d044041e008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103541086a0541000b2100200141106a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103822023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10392103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003103a200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001103c0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102b21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001103c0b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210351a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102b21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110351a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0be90502057f017e230041a0016b2200240010531009220110342202100a200041e8006a200041086a20022001411c1040220341001041200041e8006a104202400240200028026c450d00200041e8006a10420240200028026822022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028026c41014d04401000200028026821020b20022d00010d010c020b200441bf014b0d01200028026c200141ff017141ca7e6a22014d04401000200028026821020b200120026a2d0000450d010b200028026c450d0020022d000041c001490d010b10000b200041406b200041e8006a10432000280244220141094f044010000b200028024021020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d0041b2081044200551044020031045200041e8006a104610470c020b41930810442005510440200041406b1048210120031049410247044010000b200041e8006a200341011041200041e8006a2001104a20004190016a200041206a10462202200041e8006a20011021102020004190016a104b20004190016a1047200210470c020b4180081044200551044020004190016a104c210120031049410247044010000b200041e8006a200341011041200041e8006a2001104d200041406b200041e8006a10462202200041206a200110191028200041406b104b200041406b1047200210470c020b41b70810442005520d0020031045200041406b10462202280200210320022802042104200041206a1018210120004180016a4100360200200041f8006a4200370300200041f0006a420037030020004200370368200041e8006a200420036b41246dad2205101c20002802682103200041e8006a410472101d20012003101620012005101f220128020c200141106a28020047044010000b20012802002001280204100e200128020c22030440200120033602100b200210470c010b10000b104e200041a0016a24000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105420024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105420024d0d0020034104710440100020000f0b200042003702000b20000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001105220012003280208200328020c105136020c200320011052410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410401a200341106a24000f0b20032001105241002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004105110562001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001104f2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001049410147044010000b0b8c0501097f230041a0016b2204240020004100360208200042003702002000410c6a41c70810112101200041043602180240027f20012d00004101710440200041146a2802000c010b200141016a0b4104100b2203450d002004410036022020044200370318200441186a2003103e027f20012d00004101710440200041146a2802000c010b200141016a0b2000280218200428021822062003100c1a0240024020042006200428021c20066b411c10402203280204450d0020032802002d000041c001490d002003104921012000280208200028020022026b41246d20014904402000200441286a2001200028020420026b41246d200041086a102322011024200110250b200441f8006a2003410110502101200441e8006a2003410010502107200041086a210820012802042103034020072802042003464100200128020822022007280208461b0d02200441d0006a20032002411c1040200441286a10482203104a024020002802042202200028020849044020022003102c2000200028020441246a3602040c010b20044188016a2000200220002802006b41246d220241016a102220022008102321022004280290012003102c200420042802900141246a36029001200020021024200210250b20012001280204220320012802086a410020031b22033602042001280200220204402001200236020820032002105121052001027f200128020422034504404100210241000c010b410021024100200128020822092005490d001a200920052005417f461b210220030b2203ad2002ad42208684370204200141002001280200220520026b2202200220054b1b3602000c0105200141003602080c010b000b000b10000b2006450d002004200636021c0b200441a0016a240020000b1501017f200028020022010440200020013602040b0b19002000104c1a2000410c6a104c1a200041186a104c1a20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001052200128020c210003402000450d01200141002001280208220320032000105122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b5e01017f230041306b220224002002200041001041200241186a200241001041200241186a2001104d200241186a200041011041200241186a2001410c6a104d200241186a200041021041200241186a200141186a104d200241306a24000b970201067f230041e0006b22012400200141086a10182103200141386a4100360200200141306a4200370300200141286a420037030020014200370320027f200028020020002802044604402001410136022041010c010b200141206a4100101a21052000280204200028020022026b2104037f2004047f20054100101a22062002102d2006200141d0006a2002410c6a1019101b200141406b200241186a1019101b4101101a1a2004415c6a2104200241246a21020c010520054101101a1a20012802200b0b0b2102200141206a410472101d200320021016200320001026200328020c200341106a28020047044010000b20032802002003280204100e200328020c22020440200320023602100b200141e0006a24000b190020004200370200200041086a41003602002000103d20000bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a104c1a0c010b200241186a200010432000104f21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102b21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a103d200241206a24000b880101037f41cc08410136020041d0082802002100034020000440034041d40841d4082802002201417f6a2202360200200141014845044041cc084100360200200020024102746a22004184016a280200200041046a28020011020041cc08410136020041d00828020021000c010b0b41d408412036020041d008200028020022003602000c010b0b0bff0201037f200028020445044041000f0b2000104241012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001105220004100200428020c2201200428020822022001105122032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a200020014114104010542100200241206a240020000b2101017f2001104f220220012802044b044010000b2000200120011055200210560b3501017f230041106b220041f0880436020c41d808200028020c41076a417871220036020041dc08200036020041e0083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010552000104f6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210036a1058200120002802006a22012002200110040c010b0b0b3601017f2000280208200149044020011034200028020020002802041035210220002001360208200020023602000b200020013602040b0b5201004180080b4b6765745f6d657373616765006576656e7432006164645f6d657373616765006576656e74310068656c6c6f5f6576656e7400696e6974006765745f766563746f725f73697a6500696e666f"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ADD_MESSAGE = "add_message"; - - public static final String FUNC_GET_MESSAGE = "get_message"; - - public static final String FUNC_GET_VECTOR_SIZE = "get_vector_size"; - - public static final WasmEvent HELLO_EVENT_EVENT = new WasmEvent("hello_event", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(String.class) , new WasmEventParameter(Uint32.class))); - ; - - protected ContractOriginType(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractOriginType(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getHello_eventEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(HELLO_EVENT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Hello_eventEventResponse typedResponse = new Hello_eventEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint32) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable hello_eventEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Hello_eventEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(HELLO_EVENT_EVENT, log); - Hello_eventEventResponse typedResponse = new Hello_eventEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint32) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable hello_eventEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(HELLO_EVENT_EVENT)); - return hello_eventEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractOriginType.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractOriginType.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractOriginType.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractOriginType.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall add_message(My_message one_message) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MESSAGE, Arrays.asList(one_message), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_message(My_message one_message, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MESSAGE, Arrays.asList(one_message), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_message(String name) { - final WasmFunction function = new WasmFunction(FUNC_GET_MESSAGE, Arrays.asList(name), My_message[].class); - return executeRemoteCall(function, My_message[].class); - } - - public RemoteCall get_vector_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTOR_SIZE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static ContractOriginType load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractOriginType(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractOriginType load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractOriginType(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Hello_eventEventResponse { - public Log log; - - public String topic; - - public String arg1; - - public Uint32 arg2; - } - - public static class Message { - public String head; - } - - public static class My_message { - public Message baseClass; - - public String body; - - public String end; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractReceiverByRet.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractReceiverByRet.java deleted file mode 100644 index 2cbfafb77b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractReceiverByRet.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractReceiverByRet extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60017f017f60017f0060027f7f0060037f7f7f017f60027f7f017f60000060037f7f7f0060047f7f7f7f0060047f7f7f7f017f60027f7e0060037e7e7f006000017f60027f7e017f60027e7e017f60017f017e02fd010b03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000603656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e0002033e3d0501030704000101050003060100020e01000101000005080000090300040003000c0102040402030402020209000300020308010306050000070201020405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974002106696e766f6b6500130a99523d040010410b7901047f230041106b22022400200041186a2103410021000340200041ff0171410249044020032002410c6a2000100d2204280200220145044041101010220120003a000d2001410e6a41003a00002003200228020c20042001100e0b2001410e6a20003a0000200041016a21000c010b0b200241106a24000b8e0101027f200041046a21030240200028020422000440200241ff01712104024003400240024020002d000d220220044b0440200028020022020d012001200036020020000f0b200220044f0d03200041046a210320002802042202450d01200321000b20002103200221000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b20032001280200470440200110112001280208220128020821020b200141013a000c200241003a000c200210120c010b02402004450d0020042d000c0d002004410c6a21030c020b20032001280200460440200110122001280208220128020821020b200141013a000c200241003a000c200210110b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000b6501047f2000411c6a22032104200321020340200428020022000440200041046a200020002d000d20014922051b21042002200020051b21020c010b0b41002100024020022003460d0020022d000d20014b0d002002410e6a2d000021000b200041ff01710b0b002000410120001b10140b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040bda0202047f017e230041d0006b22002400104110052201101422021006200041286a200041086a200220011015220341001016200041286a101702400240200041286a1018450d00200028022c450d0020002802282d000041c001490d010b10000b200041206a200041286a10192000280224220141094f044010000b200028022021020340200104402001417f6a210120023100002004420886842104200241016a21020c010b0b024002402004500d00418008101a20045104402003101b200041286a101c101d0c020b418508101a20045104402003101b200041286a101c2101200041286a100c200041003a0020200041206a101e2001101d0c020b418a08101a2004520d002003101f410247044010000b200041286a200341011016200041286a10202101200041286a101c21022000200041286a2001100f3a0020200041206a101e2002101d0c010b10000b1021200041d0006a24000b9b0101047f230041106b220124002001200036020c2000047f41a808200041086a2202411076220041a8082802006a220336020041a40841a408280200220420026a41076a417871220236020002400240200341107420024d044041a808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103241086a0541000b2100200141106a240020000b0c00200020012002411c10220bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104520012003280208200328020c102836020c200320011045410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410221a200341106a24000f0b20032001104541002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102810442001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001017200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110232204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101f410147044010000b0bc007010c7f23004180016b2205240020004200370204200042d5b4cdc68984ddc90d3703102000411c6a220c42003702002000200041046a220b3602002000200c360218200541186a1024220820002903101025200828020c200841106a28020047044010000b200041186a210902400240200828020022032008280204220610072204450d002004101021010340200120026a41003a00002004200241016a2202470d000b20032006200120021008417f460d0002402005200141016a200120026a2001417f736a10152201280204450d0020012802002d000041c001490d00200541d8006a2001410110262102200541c8006a200141001026210620022802042101034020062802042001464100200228020822032006280208461b0d03200541306a20012003411c1022210102402005280234044020052802302d000041bf014b0d010b10000b20011027410247044010000b200541e8006a200141001016200541e8006a10202103200541e8006a200141011016200541e8006a102021012009200541e8006a2003100d220728020045044041101010220a20033a000d200a410e6a20013a0000200920052802682007200a100e0b20022002280204220120022802086a410020011b22013602042002280200220304402002200336020820012003102821072002027f2002280204220a4504404100210341000c010b410021034100200228020822012007490d001a200120072007417f461b2103200a0b2201ad2003ad42208684370204200241002002280200220720036b2203200320074b1b3602000c0105200241003602080c010b000b000b10000c010b410021040b200828020c22020440200820023602100b024020040d002000280200210202402000280220450d00200028021821042000200c36021820004100360220200028021c21012000410036021c2001410036020820042802042201200420011b2101034020012204450d012002200b470440200420022d000d3a000d2004410e6a2002410e6a2d00003a00002004410d6a2103024020042802082201450440410021010c010b2004200128020022064604402001410036020020012802042206450d012006102921010c010b200141003602042006450d002006102921010b2009200541e8006a2003102a21032009200528026820032004100e2002102b21020c010b0b0340200428020822040d000b200b21020b03402002200b460d0141101010220420022f000d3b000d2009200541e8006a2004410d6a102a21012009200528026820012004100e2002102b21020c000b000b20054180016a240020000bd004010a7f230041d0006b22032400200341186a10242104200341c8006a22014100360200200341406b22054200370300200341386a2207420037030020034200370330200341306a2000290310102c210620032802302102200641046a102d20042002102e200420002903101025200428020c200441106a28020047044010000b200428020421082004280200210920031024210220014100360200200542003703002007420037030020034200370330027f200041206a2802004504402003410136023041010c010b2000411c6a2107200341306a4100102f210620002802182101037f2001200746047f20064101102f1a20032802300520012f000d210520064100102f200541ff01711030200541087610304101102f1a2001102b21010c010b0b0b2107200341306a410472102d41011010220141fe013a0000200228020c200241106a28020047044010000b200141016a21062002280204220541016a220a20022802084b047f2002200a103120022802040520050b20022802006a2001410110321a2002200228020441016a3602042002200720016b20066a102e20022000280220103321062000411c6a210720002802182101034020012007470440200641021033220520012d000d103420052001410e6a2d000010342001102b21010c010b0b0240200228020c2002280210460440200228020021010c010b100020022802002101200228020c2002280210460d0010000b20092008200120022802041009200228020c22010440200220013602100b200428020c22010440200420013602100b200341d0006a24000b9d0101047f230041406a22012400200141086a10242102200141386a4100360200200141306a4200370300200141286a420037030020014200370320200141206a20002d00001030210320012802202104200341046a102d20022004102e200220002d00001034200228020c200241106a28020047044010000b20022802002002280204100a200228020c22000440200220003602100b200141406b24000b2501017f02402000280204450d0020002802002d000041c001490d002000102721010b20010b7d01037f230041106b22012400200010170240024020001018450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001019200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b880101037f419408410136020041980828020021000340200004400340419c08419c082802002201417f6a220236020020014101484504404194084100360200200020024102746a22004184016a280200200041046a280200110100419408410136020041980828020021000c010b0b419c084120360200419808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104220024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104220024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101741012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b29002000410036020820004200370200200041001031200041146a41003602002000420037020c20000b08002000200110370be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104520004100200428020c2201200428020822022001102822032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001045200128020c210003402000450d01200141002001280208220320032000102822046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b2701017f230041206b22022400200241086a200020014114102210422100200241206a240020000b1d01017f03402000220128020022000d00200128020422000d000b20010b6201017f024020002802042203044020022d0000210203400240200220032d000d49044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b8b0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002103820026a0520020b41016a21030b027f200041186a28020022020440200041086a280200200041146a280200200210390c010b20000b2202200228020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001035200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011036200441106a24000b1300200028020820014904402000200110310b0bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031039280200210120022003417f6a3602002007103a4180104f044020072000410c6a280200417c6a10360b200141384f047f2001103820016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110390c020b20000c010b02402007103a0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103b0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010102105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103c220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a103d2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103e200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a103f22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a103d2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103e200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103b0c010b20042001410175410120011b20032005103d210241802010102106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103c22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103d21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003103e200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002103e052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a103f22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103d21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006103e200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071035200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b090020002001ad102c0b2f01017f2000280208200149044020011014200028020020002802041032210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410100b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110321a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a104741004100200120002802006a10022000104620000b090020002001ad10370b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f2000420020011003200028020422026a104742002001200220002802006a1004200010460b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103c22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a103d2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003103e200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110400b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101021040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110400b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210321a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041b0880436020c41a008200028020c41076a417871220036020041a408200036020041a8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001043200010236a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f20011023220220012802044b044010000b2000200120011043200210440b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1047200120002802006a22012002200110020c010b0b0b3601017f2000280208200149044020011014200028020020002802041032210220002001360208200020023602000b200020013602040b0b1a01004180080b13696e697400696e666f006765745f76616c7565"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_VALUE = "get_value"; - - public static final String FUNC_INFO = "info"; - - protected ContractReceiverByRet(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractReceiverByRet(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall get_value(Uint8 key) { - final WasmFunction function = new WasmFunction(FUNC_GET_VALUE, Arrays.asList(key), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractReceiverByRet.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractReceiverByRet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractReceiverByRet.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractReceiverByRet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall info() { - final WasmFunction function = new WasmFunction(FUNC_INFO, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall info(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_INFO, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static ContractReceiverByRet load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractReceiverByRet(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractReceiverByRet load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractReceiverByRet(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractReceiverNoRet.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractReceiverNoRet.java deleted file mode 100644 index ce8444dbd0..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractReceiverNoRet.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractReceiverNoRet extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60017f017f60017f0060027f7f0060037f7f7f017f60027f7f017f60000060037f7f7f0060047f7f7f7f0060047f7f7f7f017f60027f7e0060037e7e7f006000017f60027f7e017f60027e7e017f60017f017e02fd010b03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000603656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e0002033e3d050101030704000101050003060100020e0200000000040102020105080000090304000300020c020209040304000300020308010306050000070201020405017001030305030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974002606696e766f6b6500140908010041010b020c0d0aff513d040010410b0300010b7901047f230041106b22022400200041186a2103410021000340200041ff0171410249044020032002410c6a2000100e2204280200220145044041101011220120003a000d2001410e6a41003a00002003200228020c20042001100f0b2001410e6a20003a0000200041016a21000c010b0b200241106a24000b8e0101027f200041046a21030240200028020422000440200241ff01712104024003400240024020002d000d220220044b0440200028020022020d012001200036020020000f0b200220044f0d03200041046a210320002802042202450d01200321000b20002103200221000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b20032001280200470440200110122001280208220128020821020b200141013a000c200241003a000c200210130c010b02402004450d0020042d000c0d002004410c6a21030c020b20032001280200460440200110132001280208220128020821020b200141013a000c200241003a000c200210120b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000b6501047f2000411c6a22032104200321020340200428020022000440200041046a200020002d000d20014922051b21042002200020051b21020c010b0b41002100024020022003460d0020022d000d20014b0d002002410e6a2d000021000b200041ff01710b0b002000410120001b10150b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040bb20302067f017e23004180016b22002400104110052201101522021006200041206a200041086a200220011016220341001017200041206a101802400240200041206a1019450d002000280224450d0020002802202d000041c001490d010b10000b200041e0006a200041206a101a2000280264220141094f044010000b200028026021020340200104402001417f6a210120023100002006420886842106200241016a21020c010b0b024002402006500d00418008101b200651044020034101101c0c020b418508101b200651044020034102101c0c020b418a08101b2006520d002003101d410247044010000b200041206a200341011017200041206a101e2101200041206a101f2103200041206a200110102102200041c8006a10202101200041f8006a4100360200200041f0006a4200370300200041e8006a420037030020004200370360200041e0006a20021021210420002802602105200441046a1022200120051023200120021024200128020c200141106a28020047044010000b20012802002001280204100a200128020c22020440200120023602100b200310250c010b10000b102620004180016a24000b9b0101047f230041106b220124002001200036020c2000047f41a808200041086a2202411076220041a8082802006a220336020041a40841a408280200220420026a41076a417871220236020002400240200341107420024d044041a808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103641086a0541000b2100200141106a240020000b0c00200020012002411c10270bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104520012003280208200328020c102c36020c200320011045410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410271a200341106a24000f0b20032001104541002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102c10442001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001018200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110282204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b3701017f230041306b220224002000101d410147044010000b200241086a101f2100200241086a200111010020001025200241306a24000b2501017f02402000280204450d0020002802002d000041c001490d002000102921010b20010b7d01037f230041106b22012400200010180240024020001019450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000101a200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030bc007010c7f23004180016b2205240020004200370204200042d5b4cdc68984ddc90d3703102000411c6a220c42003702002000200041046a220b3602002000200c360218200541186a102022082000290310102a200828020c200841106a28020047044010000b200041186a210902400240200828020022032008280204220610072204450d002004101121010340200120026a41003a00002004200241016a2202470d000b20032006200120021008417f460d0002402005200141016a200120026a2001417f736a10162201280204450d0020012802002d000041c001490d00200541d8006a20014101102b2102200541c8006a20014100102b210620022802042101034020062802042001464100200228020822032006280208461b0d03200541306a20012003411c1027210102402005280234044020052802302d000041bf014b0d010b10000b20011029410247044010000b200541e8006a200141001017200541e8006a101e2103200541e8006a200141011017200541e8006a101e21012009200541e8006a2003100e220728020045044041101011220a20033a000d200a410e6a20013a0000200920052802682007200a100f0b20022002280204220120022802086a410020011b22013602042002280200220304402002200336020820012003102c21072002027f2002280204220a4504404100210341000c010b410021034100200228020822012007490d001a200120072007417f461b2103200a0b2201ad2003ad42208684370204200241002002280200220720036b2203200320074b1b3602000c0105200241003602080c010b000b000b10000c010b410021040b200828020c22020440200820023602100b024020040d002000280200210202402000280220450d00200028021821042000200c36021820004100360220200028021c21012000410036021c2001410036020820042802042201200420011b2101034020012204450d012002200b470440200420022d000d3a000d2004410e6a2002410e6a2d00003a00002004410d6a2103024020042802082201450440410021010c010b2004200128020022064604402001410036020020012802042206450d012006102d21010c010b200141003602042006450d002006102d21010b2009200541e8006a2003102e21032009200528026820032004100f2002102f21020c010b0b0340200428020822040d000b200b21020b03402002200b460d0141101011220420022f000d3b000d2009200541e8006a2004410d6a102e21012009200528026820012004100f2002102f21020c000b000b20054180016a240020000b29002000410036020820004200370200200041001030200041146a41003602002000420037020c20000b090020002001ad10310bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001032200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011033200441106a24000b1300200028020820014904402000200110300b0b090020002001ad10340bd004010a7f230041d0006b22032400200341186a10202104200341c8006a22014100360200200341406b22054200370300200341386a2207420037030020034200370330200341306a20002903101031210620032802302102200641046a102220042002102320042000290310102a200428020c200441106a28020047044010000b200428020421082004280200210920031020210220014100360200200542003703002007420037030020034200370330027f200041206a2802004504402003410136023041010c010b2000411c6a2107200341306a41001035210620002802182101037f2001200746047f2006410110351a20032802300520012f000d2105200641001035200541ff0171102120054108761021410110351a2001102f21010c010b0b0b2107200341306a410472102241011011220141fe013a0000200228020c200241106a28020047044010000b200141016a21062002280204220541016a220a20022802084b047f2002200a103020022802040520050b20022802006a2001410110361a2002200228020441016a3602042002200720016b20066a102320022000280220103721062000411c6a210720002802182101034020012007470440200641021037220520012d000d102420052001410e6a2d000010242001102f21010c010b0b0240200228020c2002280210460440200228020021010c010b100020022802002101200228020c2002280210460d0010000b20092008200120022802041009200228020c22010440200220013602100b200428020c22010440200420013602100b200341d0006a24000b880101037f419408410136020041980828020021000340200004400340419c08419c082802002201417f6a220236020020014101484504404194084100360200200020024102746a22004184016a280200200041046a280200110100419408410136020041980828020021000c010b0b419c084120360200419808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104220024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104220024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101841012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001045200128020c210003402000450d01200141002001280208220320032000102c22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b08002000200110340be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104520004100200428020c2201200428020822022001102c22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a200020014114102710422100200241206a240020000b1d01017f03402000220128020022000d00200128020422000d000b20010b6201017f024020002802042203044020022d0000210203400240200220032d000d49044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b2f01017f2000280208200149044020011015200028020020002802041036210220002001360208200020023602000b0b8b0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002103820026a0520020b41016a21030b027f200041186a28020022020440200041086a280200200041146a280200200210390c010b20000b2202200228020020036a36020020000b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f2000420020011003200028020422026a104742002001200220002802006a1004200010460bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031039280200210120022003417f6a3602002007103a4180104f044020072000410c6a280200417c6a10330b200141384f047f2001103820016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110390c020b20000c010b02402007103a0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103b0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010112105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103c220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a103d2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103e200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a103f22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a103d2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103e200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103b0c010b20042001410175410120011b20032005103d210241802010112106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103c22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103d21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003103e200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002103e052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a103f22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103d21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006103e200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071032200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410110b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110361a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a104741004100200120002802006a10022000104620000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103c22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a103d2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003103e200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110400b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101121040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110400b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210361a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041b0880436020c41a008200028020c41076a417871220036020041a408200036020041a8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001043200010286a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f20011028220220012802044b044010000b2000200120011043200210440b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1047200120002802006a22012002200110020c010b0b0b3601017f2000280208200149044020011015200028020020002802041036210220002001360208200020023602000b200020013602040b0b1a01004180080b13696e697400696e666f006765745f76616c7565"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_VALUE = "get_value"; - - public static final String FUNC_INFO = "info"; - - protected ContractReceiverNoRet(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractReceiverNoRet(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall get_value(Uint8 key) { - final WasmFunction function = new WasmFunction(FUNC_GET_VALUE, Arrays.asList(key), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractReceiverNoRet.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractReceiverNoRet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractReceiverNoRet.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractReceiverNoRet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall info() { - final WasmFunction function = new WasmFunction(FUNC_INFO, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall info(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_INFO, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static ContractReceiverNoRet load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractReceiverNoRet(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractReceiverNoRet load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractReceiverNoRet(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractStorageString.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractStorageString.java deleted file mode 100644 index 308ad6a8c0..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractStorageString.java +++ /dev/null @@ -1,83 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractStorageString extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000014e0e60017f017f60027f7f0060017f0060000060037f7f7f0060027f7f017f60047f7f7f7f0060037f7f7f017f60047f7f7f7f017f60027f7e0060037e7e7f006000017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000303656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000c03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000603656e760d706c61746f6e5f72657475726e00010329280301050300070402010d0200020000010000010103080009000002010702010501020403040000060405017001010105030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002106696e766f6b6500100a9e3328040010300b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b210120020440200120042002102f0b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b200310252201200420021031200020023602042000200341017236020020002001360208200120026a41003a00000b0ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102521022000200136020420002004410172360200200020023602080b2002200320011031200120026a41003a000020000bab0402057f017e23004180016b22002400103010072201101122021008200041206a200041086a200220011012220341001013200041206a1014024002402000280224450d00200041206a10140240200028022022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028022441014d04401000200028022021020b20022d00010d010c020b200441bf014b0d012000280224200141ff017141ca7e6a22014d04401000200028022021020b200120026a2d0000450d010b2000280224450d0020022d000041c001490d010b10000b200041e8006a200041206a1015200028026c220141094f044010000b200028026821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d004180081016200551044020031017200041206a101810190c020b41850810162005510440200041d8006a101a21012003101b410247044010000b200041206a200341011013200041206a2001101c200041206a10182102200041386a200041e8006a2001100f100e200210190c020b41900810162005520d0020031017200041206a10182103200041c8006a200041386a100f2102200041e8006a101d22012002101e101f2001200041d8006a2002100f1020200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310190c010b10000b102120004180016a24000b9b0101047f230041106b220124002001200036020c2000047f41b008200041086a2202411076220041b0082802006a220336020041ac0841ac08280200220420026a41076a417871220236020002400240200341107420024d044041b008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102941086a0541000b2100200141106a240020000b0c00200020012002411c10220bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102b20012003280208200328020c102c36020c20032001102b410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410221a200341106a24000f0b20032001102b41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102c10342001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110232204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101b410147044010000b0bdb0101097f230041306b220524002000101a2107200042e299efdb8683ebcf58370310200041186a101a2106200541186a101d220220002903101024200228020c200241106a28020047044010000b02400240200228020022082002280204220910092204450d002004102521030340200120036a41003a00002004200141016a2201470d000b2008200920032001100a417f460d002005200341016a200120036a2003417f736a10122006101c0c010b410021040b200228020c22010440200220013602100b200445044020062007100e0b200541306a240020000bc80302097f027e230041d0006b22032400200341186a101d2104200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330410121022000290310220a4280015a04400340200a200b8450450440200b423886200a42088884210a200141016a2101200b420888210b0c010b0b200141384f047f2001102620016a0520010b41016a21020b20032002360230200341306a410472102720042002101f200420002903101024200428020c200441106a28020047044010000b2004280204210520042802002106200341306a101d2101200041186a2200101e210741011025220241fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009102820012802040520080b20012802006a2002410110291a2001200128020441016a3602042001200241016a200720026b6a101f2001200341086a2000100f10200240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b2006200520022001280204100b200128020c22020440200120023602100b200428020c22010440200420013602100b200341d0006a24000b190020004200370200200041086a41003602002000102a20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102b200128020c210003402000450d01200141002001280208220320032000102c22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a101a1a0c010b200241186a200010152000102321030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102521032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a102a200241206a24000b29002000410036020820004200370200200041001028200041146a41003602002000420037020c20000bb80101047f230041306b22012400200141286a4100360200200141206a4200370300200141186a4200370300200142003703104101210302400240024020012000100f220028020420002d00002202410176200241017122041b220241014d0440200241016b0d032000280208200041016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102620026a41016a21030b20012003360210200141106a4104721027200141306a240020030b1300200028020820014904402000200110280b0b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a102d20042001200220002802006a10042000102e0b880101037f419c08410136020041a0082802002100034020000440034041a40841a4082802002201417f6a22023602002001410148450440419c084100360200200020024102746a22004184016a280200200041046a280200110200419c08410136020041a00828020021000c010b0b41a408412036020041a008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000103220024f0d002003410471044010000c010b200042003702000b02402003411071450d002000103220024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101441012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2801017f2000420020011005200028020422026a102d42002001200220002802006a10062000102e0b0b002000410120001b10110b1e01017f03402000044020004108762100200141016a21010c010b0b20010b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b2f01017f2000280208200149044020011011200028020020002802041029210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2101017f20011023220220012802044b044010000b2000200120011033200210340b2701017f230041206b22022400200241086a200020014114102210322100200241206a240020000b3601017f2000280208200149044020011011200028020020002802041029210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a102d200120002802006a22012002200110020c010b0b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210291a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041c0880436020c41a808200028020c41076a417871220036020041ac08200036020041b0083f003602000b10002002044020002001200210291a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001033200010236a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b2101004180080b1a696e6974007365745f737472696e67006765745f737472696e67"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SET_STRING = "set_string"; - - public static final String FUNC_GET_STRING = "get_string"; - - protected ContractStorageString(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractStorageString(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractStorageString.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractStorageString.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractStorageString.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractStorageString.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall set_string(String name) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_string(String name, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static ContractStorageString load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractStorageString(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractStorageString load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractStorageString(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractStorageVector.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractStorageVector.java deleted file mode 100644 index 5974b3bdf9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ContractStorageVector.java +++ /dev/null @@ -1,103 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ContractStorageVector extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60027f7f0060017f017f60017f0060027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f017f60047f7f7f7f0060027f7e0060037e7e7f006000017f60017e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000034b4a0604030307000203000401030100020601050402000e02010201010002020100010c000906070105030500020100050000010200020000030003030305010005070205040006040101080405017001010105030100020608017f0141d088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003106696e766f6b65001c0abc5b4a040010520b930101047f230041206b22042400200141186a210302402001411c6a2802002205200141206a220628020047044020052002100f1a2001200128021c41246a36021c0c010b200441086a2003200520012802186b41246d220141016a101020012006101122012802082002100f1a2001200128020841246a360208200320011012200110130b2000200310141a200441206a24000b25002000200110181a2000410c6a2001410c6a10181a200041186a200141186a10181a20000b2f01017f2001200028020820002802006b41246d2200410174220220022001491b41c7e3f138200041e3f1b81c491b0b4c01017f2000410036020c200041106a2003360200200104402001101721040b2000200436020020002004200241246c6a220236020820002004200141246c6a36020c2000200236020420000b900101027f2000280204210220002802002103034020022003464504402001280204415c6a2002415c6a2202101a20012001280204415c6a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001415c6a22013602080c010b0b0b3e01017f2000420037020020004100360208200128020420012802006b220204402000200241246d101520012802002001280204200041046a10160b20000b2301017f20002001101722023602002000200236020420002002200141246c6a3602080b2e000340200020014645044020022802002000100f1a2002200228020041246a360200200041246a21000c010b0b0b0900200041246c10190ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101921022000200136020420002004410172360200200020023602080b2002200320011053200120026a41003a000020000b0b002000410120001b101d0b620020002001290200370200200041086a200141086a2802003602002001101b200041146a200141146a2802003602002000200129020c37020c2001410c6a101b200041206a200141206a28020036020020002001290218370218200141186a101b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0baf0502057f017e230041a0016b22002400105210072201101d22021008200041f8006a200020022001101e22034100101f200041f8006a102002400240200028027c450d00200041f8006a10200240200028027822022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028027c41014d04401000200028027821020b20022d00010d010c020b200441bf014b0d01200028027c200141ff017141ca7e6a22014d04401000200028027821020b200120026a2d0000450d010b200028027c450d0020022d000041c001490d010b10000b200041406b200041f8006a10212000280244220141094f044010000b200028024021020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d004180081022200551044020031023200041f8006a102410250c020b41850810222005510440200041186a1026210120031027410247044010000b200041f8006a20034101101f200041f8006a20011028200041f8006a10242102200041e8006a200041f8006a200041406b2001100f100e200041e8006a1029200041e8006a102a200210250c020b41910810222005510440200041e8006a102b210120031027410247044010000b200041f8006a20034101101f200041f8006a2001102c200041f8006a10242102200041186a200110181a200041406b20004190016a1014220110292001102a200210250c020b419d0810222005520d0020031023200041f8006a1024210220004194016a28020021032000280290012104200041406b102d2201200320046b41246dad2205102e102f200120051030200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210250c010b10000b1031200041a0016a24000b9b0101047f230041106b220124002001200036020c2000047f41c408200041086a2202411076220041c4082802006a220336020041c00841c008280200220420026a41076a417871220236020002400240200341107420024d044041c408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103b41086a0541000b2100200141106a240020000b0c00200020012002411c10320bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103d20012003280208200328020c103536020c20032001103d410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410321a200341106a24000f0b20032001103d41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103510562001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110332204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001027410147044010000b0bcd06010c7f230041b0016b22042400200042003702182000428aa4bedd86c3aeee583703102000410036020820004200370200200041206a4100360200200441206a102d220720002903101030200728020c200741106a28020047044010000b200041186a21052000411c6a21090240200728020022032007280204220810092206450d002006101921020340200120026a41003a00002006200141016a2201470d000b2003200820022001100a417f460440410021010c010b02400240200441086a200241016a200120026a2002417f736a101e2202280204450d0020022802002d000041c001490d002002102721012000280220200028021822036b41246d20014904402005200441386a2001200028021c20036b41246d200041206a101122011012200110130b20044188016a2002410110342101200441f8006a2002410010342108200041206a210b20012802042102034020082802042002464100200128020822032008280208461b0d02200441e0006a20022003411c1032200441386a1026220210280240200028021c2203200028022049044020032002101a2009200928020041246a3602000c010b20044198016a2005200320052802006b41246d220341016a10102003200b1011210320042802a0012002101a200420042802a00141246a3602a001200520031012200310130b20012001280204220220012802086a410020021b220236020420012802002203044020012003360208200220031035210a2001027f2001280204220c4504404100210341000c010b41002103410020012802082202200a490d001a2002200a200a417f461b2103200c0b2202ad2003ad42208684370204200141002001280200220a20036b22032003200a4b1b3602000c0105200141003602080c010b000b000b10000b200621010b200728020c22020440200720023602100b024020010d0020002802042206200028020022026b41246d22032000280220200028021822016b41246d4d04402003200928020020016b41246d22084b044020022002200841246c6a2203200110361a20032006200910160c020b2005200220062001103610370c010b200104402005103820004100360220200042003702180b2005200520031010101520022006200910160b200441b0016a240020000bbe02010a7f230041306b22042400200441186a102d22032000290310102e102f200320002903101030200328020c200341106a28020047044010000b20032802042105200328020021062004102d2101200041186a22071039210841011019220241fe013a0000200128020c200141106a28020047044010000b2001280204220941016a220a20012802084b047f2001200a103a20012802040520090b20012802006a20024101103b1a2001200128020441016a3602042001200241016a200820026b6a102f20012007103c0240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b2006200520022001280204100b200128020c22020440200120023602100b200328020c22010440200320013602100b200041186a102a2000102a200441306a24000b19002000102b1a2000410c6a102b1a200041186a102b1a20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103d200128020c210003402000450d01200141002001280208220320032000103522046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b5e01017f230041306b22022400200220004100101f200241186a20024100101f200241186a2001102c200241186a20004101101f200241186a2001410c6a102c200241186a20004102101f200241186a200141186a102c200241306a24000b5901027f230041206b22022400200241086a102d220120001039102f20012000103c200128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b200241206a24000b0e0020002802000440200010380b0b190020004200370200200041086a41003602002000101b20000bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a102b1a0c010b200241186a200010212000103321030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101921032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a101b200241206a24000b2900200041003602082000420037020020004100103a200041146a41003602002000420037020c20000b990102037f017e230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703004101210320004280015a0440034020002004845045044020044238862000420888842100200241016a2102200442088821040c010b0b200241384f047f2002103e20026a0520020b41016a21030b200120033602002001410472103f200141206a240020030b13002000280208200149044020002001103a0b0b2801017f2000420020011005200028020422026a104042002001200220002802006a1006200010410b880101037f41b008410136020041b4082802002100034020000440034041b80841b8082802002201417f6a2202360200200141014845044041b0084100360200200020024102746a22004184016a280200200041046a28020011020041b008410136020041b40828020021000c010b0b41b808412036020041b408200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105420024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105420024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000102041012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001103d20004100200428020c2201200428020822022001103522032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a200020014114103210542100200241206a240020000b3e00034020002001464504402002200010512002410c6a2000410c6a1051200241186a200041186a1051200241246a2102200041246a21000c010b0b20020b0900200020013602040b0b002000200028020010370bcb0101047f230041406a22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300027f200028020020002802044604402001410136020041010c010b20014100104421032000280204200028020022006b2102037f2002047f2003410010442204200010452004200141306a2000410c6a10181046200141206a200041186a10181046410110441a2002415c6a2102200041246a21000c01052003410110441a20012802000b0b0b21002001410472103f200141406b240020000b2f01017f200028020820014904402001101d20002802002000280204103b210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb20201077f23004180016b220224002000200128020420012802006b41246d104721042001280204200128020022016b2100200241206a4104722105200241e0006a4104722106034020000440200441031047210320024100360238200242003703302002420037032820024200370320200241206a20011045200241206a200241106a2001410c6a2207101810462002200141186a2208101810461a20032002280220102f200341011047210320024100360278200242003703702002420037036820024200370360200241e0006a200241d0006a2001101810461a20032002280260102f2003200241406b20011018104821032006103f2003200241e0006a200710181048200241d0006a2008101810481a2005103f2000415c6a2100200141246a21010c010520024180016a24000b0b0b2101017f20011033220220012802044b044010000b2000200120011055200210560b1e01017f03402000044020004108762100200141016a21010c010b0b20010bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001042200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011043200441106a24000b3601017f200028020820014904402001101d20002802002000280204103b210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1040200120002802006a22012002200110020c010b0b0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031049280200210120022003417f6a3602002007104a4180104f044020072000410c6a280200417c6a10430b200141384f047f2001103e20016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110490c020b20000c010b02402007104a0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a104b0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010192105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a104c220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a104d2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104e200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104f22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a104d2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104e200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a104b0c010b20042001410175410120011b20032005104d210241802010192106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104c22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104d21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003104e200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002104e052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104f22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104d21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006104e200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071042200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b2701017f230041106b220224002000410010442002200110181046410110441a200241106a24000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103e20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110490c010b20000b2201200128020020036a36020020000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410190b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001103b1a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a104041004100200120002802006a10022000104120000b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a104020042001200220002802006a10042000104120000b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104c22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a104d2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003104e200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110500b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101921040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110500b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103b1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210500b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b200310192201200420021053200020023602042000200341017236020020002001360208200120026a41003a00000b0b3501017f230041106b220041d0880436020c41bc08200028020c41076a417871220036020041c008200036020041c4083f003602000b100020020440200020012002103b1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001055200010336a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b3301004180080b2c696e6974006164645f6d657373616765006765745f6d657373616765006765745f766563746f725f73697a65"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ADD_MESSAGE = "add_message"; - - public static final String FUNC_GET_MESSAGE = "get_message"; - - public static final String FUNC_GET_VECTOR_SIZE = "get_vector_size"; - - protected ContractStorageVector(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ContractStorageVector(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractStorageVector.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractStorageVector.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractStorageVector.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ContractStorageVector.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall add_message(My_message one_message) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MESSAGE, Arrays.asList(one_message), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_message(My_message one_message, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MESSAGE, Arrays.asList(one_message), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_message(String name) { - final WasmFunction function = new WasmFunction(FUNC_GET_MESSAGE, Arrays.asList(name), My_message[].class); - return executeRemoteCall(function, My_message[].class); - } - - public RemoteCall get_vector_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTOR_SIZE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static ContractStorageVector load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ContractStorageVector(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ContractStorageVector load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ContractStorageVector(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Message { - public String head; - } - - public static class My_message { - public Message baseClass; - - public String body; - - public String end; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Contract_panic.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Contract_panic.java deleted file mode 100644 index 83e18ab739..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Contract_panic.java +++ /dev/null @@ -1,103 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class Contract_panic extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000014e0e60027f7f0060017f017f60017f0060000060037f7f7f0060027f7f017f60047f7f7f7f0060037f7f7f017f60047f7f7f7f017f60017f017e60027f7e0060037e7e7f006000017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000303656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000603656e760d706c61746f6e5f72657475726e0000032f2e0300000500030107040909020102010100000308020005000200050101010100000001020002070a0403040101060405017001030305030100020608017f0141f088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974001f06696e766f6b6500120908010041010b020f110aed352e040010360b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210350b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b200310292201200420021037200020023602042000200341017236020020002001360208200120026a41003a00000b0b0c002000200141186a10101a0ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102921022000200136020420002004410172360200200020023602080b2002200320011037200120026a41003a000020000b0c002000200141406b10101a0bec0202037f017e230041a0016b22002400103610072201101322021008200041406b200020022001101422014100101502400240200041406b10162203500d004180081017200351044020011018200041406b1019101a0c020b41850810172003510440200041186a101b2102200042003703282001101c410347044010000b200041406b200141011015200041406b2002101d200041406b2001410210152000200041406b1016370328200041406b10192101200041306a20021010210220002903281a200141186a20004190016a200210102202100e200141406b2002100e2001101a0c020b4194081017200351044020004190016a101b21022001101c410247044010000b200041406b200141011015200041406b2002101d200041406b1019220141186a200041186a20021010100e2001101a0c020b41a7081017200351044020014101101e0c020b41ba0810172003520d0020014102101e0c010b10000b101f200041a0016a24000b9b0101047f230041106b220124002001200036020c2000047f41e408200041086a2202411076220041e4082802006a220336020041e00841e008280200220420026a41076a417871220236020002400240200341107420024d044041e408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103341086a0541000b2100200141106a240020000b0c00200020012002411c10200bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102620012003280208200328020c102736020c200320011026410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410201a200341106a24000f0b20032001102641002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041027103a2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b2203240020001021024002402000280204450d00200010210240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a20001022200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101c410147044010000b0b6b01027f2000101b2101200042afb59bdd9e8485b9f800370310200041106a200041186a101b2202102345044020022001100e0b200041286a101b2102200041386a220142ecae96e4b694b9d9d0003703002001200041406b101b2201102345044020012002100e0b20000b1a00200041386a200041406b1024200041106a200041186a10240b190020004200370200200041086a41003602002000102520000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001026200128020c210003402000450d01200141002001280208220320032000102722046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a101b1a0c010b200241186a200010222000102821030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102921032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1025200241206a24000b8d0101027f23004190016b2202240020001018200241086a10192103200241d8006a200241086a2001110000200241f8006a102a2201200241d8006a102b102c2001200241e8006a200241d8006a1010102d200128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b2003101a20024190016a24000b880101037f41d008410136020041d4082802002100034020000440034041d80841d8082802002201417f6a2202360200200141014845044041d0084100360200200020024102746a22004184016a280200200041046a28020011020041d008410136020041d40828020021000c010b0b41d808412036020041d408200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000103820024f0d002003410471044010000c010b200042003702000b02402003411071450d002000103820024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110282204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bb50101067f230041306b22052400200541186a102a220220002903001034200228020c200241106a28020047044010000b02400240200228020022062002280204220710092204450d00200410292103410021000340200020036a41003a00002004200041016a2200470d000b2006200720032000100a417f460d002005200341016a200020036a2003417f736a10142001101d0c010b410021040b200228020c22000440200220003602100b200541306a240020040bc30302087f027e230041d0006b22042400200441186a102a2105200441c8006a4100360200200441406b4200370300200441386a420037030020044200370330410121032000290300220b4280015a04400340200a200b8450450440200a423886200b42088884210b200241016a2102200a420888210a0c010b0b200241384f047f2002102f20026a0520020b41016a21030b20042003360230200441306a410472103020052003102c200520002903001034200528020c200541106a28020047044010000b2005280204210620052802002107200441306a102a21022001102b210841011029220341fe013a0000200228020c200241106a28020047044010000b2002280204220041016a220920022802084b047f20022009102e20022802040520000b20022802006a2003410110331a2002200228020441016a3602042002200341016a20086a20036b102c2002200441086a20011010102d0240200228020c2002280210460440200228020021030c010b100020022802002103200228020c2002280210460d0010000b2007200620032002280204100b200228020c22030440200220033602100b200528020c22020440200520023602100b200441d0006a24000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2101017f20011028220220012802044b044010000b20002001200110392002103a0b2701017f230041206b22022400200241086a200020014114102010382100200241206a240020000bff0201037f200028020445044041000f0b2000102141012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0b002000410120001b10130b2900200041003602082000420037020020004100102e200041146a41003602002000420037020c20000bb80101047f230041306b22012400200141286a4100360200200141206a4200370300200141186a42003703002001420037031041012103024002400240200120001010220028020420002d00002202410176200241017122041b220241014d0440200241016b0d032000280208200041016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102f20026a41016a21030b20012003360210200141106a4104721030200141306a240020030b13002000280208200149044020002001102e0b0b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a103120042001200220002802006a1004200010320b2f01017f2000280208200149044020011013200028020020002802041033210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b3601017f2000280208200149044020011013200028020020002802041033210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1031200120002802006a22012002200110020c010b0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2801017f2000420020011005200028020422026a103142002001200220002802006a1006200010320b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210331a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041f0880436020c41dc08200028020c41076a417871220036020041e008200036020041e4083f003602000b10002002044020002001200210331a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001039200010286a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b5401004180080b4d696e69740070616e69635f636f6e7472616374007365745f737472696e675f73746f72616765006765745f737472696e675f73746f72616765006765745f737472696e675f73746f7261676531"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_PANIC_CONTRACT = "panic_contract"; - - public static final String FUNC_SET_STRING_STORAGE = "set_string_storage"; - - public static final String FUNC_GET_STRING_STORAGE = "get_string_storage"; - - public static final String FUNC_GET_STRING_STORAGE1 = "get_string_storage1"; - - protected Contract_panic(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Contract_panic(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Contract_panic.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Contract_panic.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Contract_panic.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Contract_panic.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall panic_contract(String name, Uint64 value) { - final WasmFunction function = new WasmFunction(FUNC_PANIC_CONTRACT, Arrays.asList(name,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall panic_contract(String name, Uint64 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PANIC_CONTRACT, Arrays.asList(name,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall set_string_storage(String name) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING_STORAGE, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_string_storage(String name, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_STRING_STORAGE, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string_storage() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING_STORAGE, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall get_string_storage1() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING_STORAGE1, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static Contract_panic load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Contract_panic(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Contract_panic load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Contract_panic(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Contract_termination.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Contract_termination.java deleted file mode 100644 index 131b7d1140..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Contract_termination.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class Contract_termination extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60017f017f60027f7f0060017f0060000060037f7f7f0060027f7f017f60047f7f7f7f0060027f7e0060037f7f7f017f60047f7f7f7f017f60017f017e60037e7e7f006000017f60027f7e017f60027e7e017f02bd020e03656e760c706c61746f6e5f70616e6963000303656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000603656e760d706c61746f6e5f726576657274000303656e760d706c61746f6e5f72657475726e0001032c2b030105030008040a0a020002000001000702010d00010309020107000108020105000001020403040000060405017001010105030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000e0f5f5f66756e63735f6f6e5f65786974002406696e766f6b6500110aef352b040010340b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210330b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b200310292201200420021035200020023602042000200341017236020020002001360208200120026a41003a00000b0ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102921022000200136020420002004410172360200200020023602080b2002200320011035200120026a41003a000020000b8e0402047f017e230041b0016b2200240010341007220110122202100820004188016a20002002200110132201410010140240024020004188016a10152204500d00418008101620045104402001101720004188016a101810190c020b41850810162004510440200041186a101a2102200042003703282001101b410347044010000b20004188016a20014101101420004188016a2002101c20004188016a200141021014200020004188016a101537032820004188016a10182103200041306a2002101021012000290328210420004188016a2102200041406b200110102101200442e300580440100c0b200241186a2001100f200041d0006a101d210120004180016a4100360200200041f8006a4200370300200041f0006a420037030020004200370368200041e8006a4200101e20002802682102200041e8006a410472101f200120021020200142001021220128020c200141106a28020047044010000b20012802002001280204100d200128020c22020440200120023602100b200310190c020b41950810162004520d002001101720004188016a10182103200041186a200041a0016a10102102200041e8006a101d22012002102210202001200041d0006a200210101023200128020c200141106a28020047044010000b20012802002001280204100d200128020c22020440200120023602100b200310190c010b10000b1024200041b0016a24000b9b0101047f230041106b220124002001200036020c2000047f41bc08200041086a2202411076220041bc082802006a220336020041b80841b808280200220420026a41076a417871220236020002400240200341107420024d044041bc08200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102b41086a0541000b2100200141106a240020000b0c00200020012002411c10250bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102d20012003280208200328020c102e36020c20032001102d410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410251a200341106a24000f0b20032001102d41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102e10382001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b2203240020001026024002402000280204450d00200010260240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a20001027200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101b410147044010000b0bdc0101097f230041306b220524002000101a2107200042afb59bdd9e8485b9f800370310200041186a101a2106200541186a101d220220002903101028200228020c200241106a28020047044010000b02400240200228020022082002280204220910092204450d002004102921030340200120036a41003a00002004200141016a2201470d000b2008200920032001100a417f460d002005200341016a200120036a2003417f736a10132006101c0c010b410021040b200228020c22010440200220013602100b200445044020062007100f0b200541306a240020000bff0201097f230041d0006b22022400200241186a101d2103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a2000290310101e20022802302101200241306a410472101f200320011020200320002903101028200328020c200341106a28020047044010000b2003280204210420032802002105200241306a101d2101200041186a22061022210741011029220041fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009102a20012802040520080b20012802006a20004101102b1a2001200128020441016a3602042001200041016a200720006b6a10202001200241086a2006101010230240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b2005200420002001280204100b200128020c22000440200120003602100b200328020c22010440200320013602100b200241d0006a24000b190020004200370200200041086a41003602002000102c20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102d200128020c210003402000450d01200141002001280208220320032000102e22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a101a1a0c010b200241186a200010272000102f21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102921032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a102c200241206a24000b2900200041003602082000420037020020004100102a200041146a41003602002000420037020c20000b9f0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002103020026a0520020b41016a21030b200041186a28020022020440200041086a2802002002200041146a2802006a417f6a220241087641fcffff07716a280200200241ff07714102746a21000b2000200028020020036a3602000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b13002000280208200149044020002001102a0b0b2a01017f2000420020011005200028020422026a103142002001200220002802006a10062000103220000bb80101047f230041306b22012400200141286a4100360200200141206a4200370300200141186a42003703002001420037031041012103024002400240200120001010220028020420002d00002202410176200241017122041b220241014d0440200241016b0d032000280208200041016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103020026a41016a21030b20012003360210200141106a410472101f200141306a240020030b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a103120042001200220002802006a1004200010320b880101037f41a808410136020041ac082802002100034020000440034041b00841b0082802002201417f6a2202360200200141014845044041a8084100360200200020024102746a22004184016a280200200041046a28020011020041a808410136020041ac0828020021000c010b0b41b008412036020041ac08200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000103620024f0d002003410471044010000c010b200042003702000b02402003411071450d002000103620024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001102f2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b09002000200110211a0b0b002000410120001b10120b2f01017f200028020820014904402001101220002802002000280204102b210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2101017f2001102f220220012802044b044010000b2000200120011037200210380b2701017f230041206b22022400200241086a200020014114102510362100200241206a240020000bff0201037f200028020445044041000f0b2000102641012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b1e01017f03402000044020004108762100200141016a21010c010b0b20010b3601017f200028020820014904402001101220002802002000280204102b210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1031200120002802006a22012002200110020c010b0b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002102b1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041c0880436020c41b408200028020c41076a417871220036020041b808200036020041bc083f003602000b100020020440200020012002102b1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010372000102f6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b2e01004180080b27696e6974007472616e736665725f617373657274006765745f737472696e675f73746f72616765"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_TRANSFER_ASSERT = "transfer_assert"; - - public static final String FUNC_GET_STRING_STORAGE = "get_string_storage"; - - protected Contract_termination(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Contract_termination(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Contract_termination.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Contract_termination.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Contract_termination.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Contract_termination.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall transfer_assert(String name, Uint64 value) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFER_ASSERT, Arrays.asList(name,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall transfer_assert(String name, Uint64 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFER_ASSERT, Arrays.asList(name,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string_storage() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING_STORAGE, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static Contract_termination load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Contract_termination(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Contract_termination load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Contract_termination(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Contract_timeout_termination.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Contract_timeout_termination.java deleted file mode 100644 index 4aef873d9a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Contract_timeout_termination.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class Contract_timeout_termination extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60017f017f60027f7f0060017f0060000060037f7f7f0060027f7f017f60047f7f7f7f0060037f7f7f017f60047f7f7f7f017f60017f017e60037f7f7e0060027f7e0060037e7e7f006000017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000303656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000603656e760d706c61746f6e5f72657475726e0001032b2a030a010503000704090902000200000100000101030802010b00000201070201050001020403040000060405017001010105030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002106696e766f6b6500110a8c342a040010320b22002002427f7c21020340200242017c220242e400560d000b200041186a2001100f0b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210310b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b200310262201200420021033200020023602042000200341017236020020002001360208200120026a41003a00000b0ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102621022000200136020420002004410172360200200020023602080b2002200320011033200120026a41003a000020000bec0202047f017e23004180016b22002400103210072201101222021008200041206a200041086a20022001101322014100101402400240200041206a10152204500d004180081016200451044020011017200041206a101810190c020b41850810162004510440200041e8006a101a2102200042003703782001101b410347044010000b200041206a200141011014200041206a2002101c200041206a2001410210142000200041206a1015370378200041206a10182101200041c8006a20021010210220002903782104200041206a200041d8006a200210102004100e200110190c020b41910810162004520d0020011017200041206a10182103200041c8006a200041386a10102102200041e8006a101d22012002101e101f2001200041d8006a200210101020200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310190c010b10000b102120004180016a24000b9b0101047f230041106b220124002001200036020c2000047f41b808200041086a2202411076220041b8082802006a220336020041b40841b408280200220420026a41076a417871220236020002400240200341107420024d044041b808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102a41086a0541000b2100200141106a240020000b0c00200020012002411c10220bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102c20012003280208200328020c102d36020c20032001102c410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410221a200341106a24000f0b20032001102c41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102d10362001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b2203240020001023024002402000280204450d00200010230240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a20001024200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101b410147044010000b0bdc0101097f230041306b220524002000101a2107200042afb59bdd9e8485b9f800370310200041186a101a2106200541186a101d220220002903101025200228020c200241106a28020047044010000b02400240200228020022082002280204220910092204450d002004102621030340200120036a41003a00002004200141016a2201470d000b2008200920032001100a417f460d002005200341016a200120036a2003417f736a10132006101c0c010b410021040b200228020c22010440200220013602100b200445044020062007100f0b200541306a240020000bc80302097f027e230041d0006b22032400200341186a101d2104200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330410121022000290310220a4280015a04400340200a200b8450450440200b423886200a42088884210a200141016a2101200b420888210b0c010b0b200141384f047f2001102720016a0520010b41016a21020b20032002360230200341306a410472102820042002101f200420002903101025200428020c200441106a28020047044010000b2004280204210520042802002106200341306a101d2101200041186a2200101e210741011026220241fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009102920012802040520080b20012802006a20024101102a1a2001200128020441016a3602042001200241016a200720026b6a101f2001200341086a2000101010200240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b2006200520022001280204100b200128020c22020440200120023602100b200428020c22010440200420013602100b200341d0006a24000b190020004200370200200041086a41003602002000102b20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102c200128020c210003402000450d01200141002001280208220320032000102d22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a101a1a0c010b200241186a200010242000102e21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102621032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a102b200241206a24000b29002000410036020820004200370200200041001029200041146a41003602002000420037020c20000bb80101047f230041306b22012400200141286a4100360200200141206a4200370300200141186a42003703002001420037031041012103024002400240200120001010220028020420002d00002202410176200241017122041b220241014d0440200241016b0d032000280208200041016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002102720026a41016a21030b20012003360210200141106a4104721028200141306a240020030b1300200028020820014904402000200110290b0b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a102f20042001200220002802006a1004200010300b880101037f41a408410136020041a8082802002100034020000440034041ac0841ac082802002201417f6a2202360200200141014845044041a4084100360200200020024102746a22004184016a280200200041046a28020011020041a408410136020041a80828020021000c010b0b41ac08412036020041a808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000103420024f0d002003410471044010000c010b200042003702000b02402003411071450d002000103420024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001102e2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b2801017f2000420020011005200028020422026a102f42002001200220002802006a1006200010300b0b002000410120001b10120b1e01017f03402000044020004108762100200141016a21010c010b0b20010b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b2f01017f200028020820014904402001101220002802002000280204102a210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2101017f2001102e220220012802044b044010000b2000200120011035200210360b2701017f230041206b22022400200241086a200020014114102210342100200241206a240020000bff0201037f200028020445044041000f0b2000102341012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3601017f200028020820014904402001101220002802002000280204102a210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a102f200120002802006a22012002200110020c010b0b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002102a1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041c0880436020c41b008200028020c41076a417871220036020041b408200036020041b8083f003602000b100020020440200020012002102a1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010352000102e6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b2a01004180080b23696e697400666f7266756e6374696f6e006765745f737472696e675f73746f72616765"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_FORFUNCTION = "forfunction"; - - public static final String FUNC_GET_STRING_STORAGE = "get_string_storage"; - - protected Contract_timeout_termination(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Contract_timeout_termination(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Contract_timeout_termination.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Contract_timeout_termination.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Contract_timeout_termination.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Contract_timeout_termination.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall forfunction(String name, Uint64 value) { - final WasmFunction function = new WasmFunction(FUNC_FORFUNCTION, Arrays.asList(name,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall forfunction(String name, Uint64 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_FORFUNCTION, Arrays.asList(name,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_string_storage() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING_STORAGE, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static Contract_timeout_termination load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Contract_timeout_termination(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Contract_timeout_termination load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Contract_timeout_termination(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CreateContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CreateContract.java deleted file mode 100644 index 68207a3024..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CreateContract.java +++ /dev/null @@ -1,154 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class CreateContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001aa011a60027f7f0060017f017f60037f7f7f017f60017f0060027f7f017f60000060037f7f7f0060027e7e017f60047f7e7e7f0060047f7f7f7f017f60077f7f7f7f7f7f7f017f60047f7f7f7f0060057f7f7f7f7f0060027f7e0060057f7e7e7e7e0060087f7f7f7f7f7f7f7f017f60047e7e7e7e017f60037f7e7f017e60037f7e7e0060047f7e7e7e0060027f7c0060037e7e7f006000017f60037f7e7e017f60027e7f017f60017f017e02e2031503656e760c706c61746f6e5f6465627567000003656e760c706c61746f6e5f70616e6963000503656e761b706c61746f6e5f636f6e74726163745f636f64655f6c656e677468000103656e7614706c61746f6e5f636f6e74726163745f636f6465000203656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000603656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000603656e760d726c705f753132385f73697a65000703656e760f706c61746f6e5f726c705f75313238001503656e760e706c61746f6e5f6d696772617465000a03656e7614706c61746f6e5f636c6f6e655f6d696772617465000f03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001603656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000b03656e760d706c61746f6e5f6465706c6f79000a03656e760c706c61746f6e5f636c6f6e65000f03656e760b706c61746f6e5f63616c6c000a03656e760d706c61746f6e5f72657475726e0000036a6905010400000404000201000004000003000000001200010102000002000000000c00010102020d0d02000002170300010100090300010101010005061903000000050100040201070813090601060c100e0e180700070014030501010b03000101021108080107011004050170010c0c05030100020608017f014190a0040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300150f5f5f66756e63735f6f6e5f65786974005606696e766f6b65004f0911010041010b0b1826282e323334367576770ab8ba01690400106e0b4d01037f230041106b220224000240200010022201450440410021000c010b2000200220011017220328020020011003210020032802002201450d00200320013602040b200241106a240020000b23002000410036020820004200370200200104402000200110432000200110460b20000bf80301087f230041c0016b220024000240200110022202450d0002402001200041186a200210172203280200200210034101480d00200041b0016a41001019200041a0016a4100101920004180c2cdeb0636006020004190016a200041e0006a101a210220004180016a200041e0006a418008101b101c200041f8006a4100360200200041f0006a4200370300200041e8006a420037030020004200370360200041e0006a20032802002003280204101d200028028001200028028401101d2108200041c8006a101e22012002101f2001200028026041046a1020200141021021220120031022200120004180016a1022200041406b20011023200041386a22044100360200200041306a2209420037030020004200370328200041286a2000280240200028024420002802b001220520002802b40120056b20002802a001220620002802a40120066b10112107200041106a2004280200360200200041086a20092903003703002000200029032837030020002007453a0014200128020c22040440200141106a20043602000b200841046a10242000280280012201044020002001360284010b200228020022010440200220013602040b20060440200020063602a4010b20050440200020053602b4010b20070d00419609200010250b20032802002201450d00200320013602040b200041c0016a24000b5d01027f2001210203402002044020024108762102200341016a21030c010b0b200041003602082000420037020020002003102f2000280204417f6a2102034020010440200220013a00002002417f6a2102200141087621010c010b0b0b3100200041003602082000420037020020004104104320002802042001410410391a2000200028020441046a36020420000b7c01037f20004200370200200041086a4100360200027f0240200110372202410b4f0440200241106a4170712204103821032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b20032001200210390b2103200220036a41003a000020000bdb0102037f017e230041d0006b22022400200241186a2001280208200141016a20012d0000220341017122041b2001280204200341017620041b103a2903002105200241386a101e410110212101200241306a4100360200200241286a4200370300200241206a420037030020024200370318200241186a2005103b20012002280218102020012005103c200241106a2001102320022802102103200241086a20011023200020032002280208200228020c6a103d1a200241186a4104721024200128020c22000440200141106a20003602000b200241d0006a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104520026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110400c010b20000b2201200128020020036a36020020000b2900200041003602082000420037020020004100103f200041146a41003602002000420037020c20000b6401037f200028020c200041106a28020047044041910810420b200028020422022001280204200128020022036b22016a220420002802084b047f20002004103f20002802040520020b20002802006a2003200110391a2000200028020420016a3602040b13002000280208200149044020002001103f0b0bf30101057f20002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410380b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110391a0b20002002360214200020033602102000200536020c20000b1600200020012802002200200128020420006b102d1a0b2200200128020c200141106a28020047044041910810420b200020012902003702000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0bb10302057f027e230041b0016b22022400200241306a101e2105200241a8016a4100360200200241a0016a420037030020024198016a4200370300200242003703900120024190016a420142001029200228029001210320024190016a410472102420052003102020052000102a200241286a2005102320024190016a101e21032001102b21042003200241186a102c2200101f2003200420002802046a20002802006b1020200241106a200141106a2800002204360200200241086a200141086a2900002207370300200220012900002208370300200241d0006a2007370300200241d8006a2004360200200241e8006a2007370300200241f0006a2004360200200220083703482002200837036020024188016a200436020020024180016a2007370300200220083703782003200241f8006a4114102d210120022802282103200228022c2104200241f8006a2001102320022802782106200241e0006a2001102320032004200620022802641010200028020022030440200020033602040b200128020c22000440200141106a20003602000b200528020c22010440200541106a20013602000b200241b0016a24000b240020004200370000200041106a4100360000200041086a4200370000419609200010270bb00101047f230041d0006b22022400200241386a101e22032000102a200241306a2003102302402002280230220420022802342205100e2200450d002002410036022820024200370320200241206a2000102f20042005200228022022002002280224220420006b100f417f470440200241086a200041016a20042000417f736a1030200110310b2000450d00200220003602240b200328020c22000440200341106a20003602000b200241d0006a24000ba10502057f027e230041d0016b22002400200041d0006a4100101920004198016a4100101920004180016a200041b0016a418008101b101c200041c0016a22034100360200200041b8016a22054200370300200042003703b0012001200041b0016a200028028001220420002802840120046b20002802502204200028025420046b2000280298012202200028029c0120026b10122101200041186a2003280200360200200041106a2005290300370300200020002903b00137030820002001453a001c2000280280012203044020002003360284010b200204402000200236029c010b20040440200020043602540b024020010d00200041d0006a101e2104200041c8016a4100360200200041c0016a4200370300200041b8016a4200370300200042003703b001200041b0016a42014200102920002802b0012102200041b0016a41047210242004200210202004419009102a200041c8006a20041023200041b0016a101e2101200041086a102b21032001200041386a102c2202101f2001200320022802046a20022802006b1020200041306a200041186a2802002203360200200041286a200041106a2903002207370300200020002903082208370320200041f0006a2007370300200041f8006a200336020020004188016a200737030020004190016a2003360200200020083703682000200837038001200041a8016a2003360200200041a0016a20073703002000200837039801200120004198016a4114102d210120002802482103200028024c210520004198016a20011023200028029801210620004180016a200110232003200520062000280284011010200228020022030440200220033602040b200128020c22020440200141106a20023602000b200428020c2202450d00200441106a20023602000b200041d0016a24000b890101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003104520036a0520030b41016a21040b200041186a28020022030440200041086a280200200041146a2802002003104021000b2000200028020020046a3602000b4301027f230041106b22022400200020022001101b2201280208200141016a20022d0000220041017122031b2001280204200041017620031b102d1a200241106a24000be10102027f027e23004180016b22012400200141c8006a4100360200200141406b4200370300200141386a4200370300200141206a200041086a2900002204370300200141286a200041106a280000220236020020002900002103200141086a2004370300200141106a20023602002001420037033020012003370318200141d8006a2004370300200141e0006a2002360200200141f0006a2004370300200141f8006a2002360200200120033703002001200337035020012003370368200141306a2001103e20012802302100200141306a410472102420014180016a240020000b30002000410036020820004200370200200041011043200028020441fe013a00002000200028020441016a36020420000b2a01017f2000200120021006200028020422036a107320012002200320002802006a10072000107220000bcc0101047f230041d0006b2201240020004200370000200041106a4100360000200041086a4200370000200141386a101e2203419009102a200141306a2003102302402001280230220420012802342205100e2202450d002001410036022820014200370320200141206a2002102f20042005200128022022022001280224220420026b100f417f470440200141086a200241016a20042002417f736a1030200010310b2002450d00200120023602240b200328020c22000440200341106a20003602000b200141d0006a24000bdd0101057f20002802042203200028020022026b220420014904402000280208220520036b200120046b22034f04402000200310460f0b2001200520026b2202410174220520052001491b41ffffffff07200241ffffffff03491b220204402002103821060b200420066a220521010340200141003a0000200141016a21012003417f6a22030d000b200220066a210220052000280204200028020022066b22046b2103200441014e044020032006200410391a0b2000200236020820002001360204200020033602000f0b200420014b04402000200120026a3602040b0b0c00200020012002411c10470bbf0102037f027e230041406a2202240020001048200241386a20001049200228023c21032000104a410020034115491b45044041af0810420b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a2002280238200310391a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000b090041a808200110250b240020004200370000200041106a4100360000200041086a420037000041a808200010270bf60301067f230041e0016b220224000240200110022203450d0002402001200241d0016a200310172204280200200310034101480d00200241c0016a41001019200241b0016a4100101920024180c2cdeb06360070200241a0016a200241f0006a101a210320024190016a200241f0006a418008101b101c20024188016a410036020020024180016a4200370300200241f8006a420037030020024200370370200241f0006a20042802002004280204101d200228029001200228029401101d2107200241d8006a101e22012003101f2001200228027041046a1020200141021021220120041022200120024190016a1022200241d0006a20011023200241c8006a4100360200200241406b420037030020024200370338200241386a2002280250200228025420022802c001220520022802c40120056b20022802b001220620022802b40120066b100a1a200241206a200010332002410036021c20024100360218200241206a2002411c6a200241186a200241086a418508101b200241386a1035200128020c22000440200141106a20003602000b200741046a10242002280290012201044020022001360294010b200328020022010440200320013602040b20060440200220063602b4010b2005450d00200220053602c4010b20042802002201450d00200420013602040b200241e0016a24000ba30502097f037e230041d0016b22052400200541206a2003280208200341016a20032d0000220641017122071b2003280204200641017620071b103a2903002110200541d8006a101e2103200541d0006a2206200441106a280000360200200541c8006a2207200441086a290000370300200520042900003703402003410210212103200541386a4100360200200541306a4200370300200541286a420037030020054200370320200541206a2010103b20054180016a220820062802002204360200200541f8006a22092007290300220e370300200541186a2004360200200541106a200e37030020052005290340220f37037020054190016a220a200e37030020054198016a220b2004360200200541c0016a220c200e370300200541c8016a220d20043602002005200f3703082005200f370388012005200f3703b801200541206a200541086a103e20032005280220102020032010103c200541b0016a20062802002204360200200541a8016a2007290300220e37030020052005290340220f3703a0012009200e37030020082004360200200a200e370300200b20043602002005200f3703702005200f37038801200d2004360200200c200e3703002005200f3703b801200541a0016a2003200541b8016a4114102d2204102320052802a001210320054188016a20041023200541b8016a2003200528028801200528028c016a103d2103200541206a4104721024200428020c22060440200441106a20063602000b200541206a20012802001019200541d8006a20022802001019200020032802002204200328020420046b20052802202204200528022420046b20052802582206200528025c20066b10131a200604402005200636025c0b20040440200520043602240b200328020022040440200320043602040b200541d0016a24000bef0101027f23004180016b22022400200241f0006a41001019200241e0006a41001019200241d0006a200241386a418008101b101c200241c8006a4100360200200241406b4200370300200242003703382001200241386a20022802502201200228025420016b20022802702201200228027420016b20022802602203200228026420036b100b1a200241206a200010332002410036021c20024100360218200241206a2002411c6a200241186a200241086a418508101b200241386a1035200228025022000440200220003602540b20030440200220033602640b20010440200220013602740b20024180016a24000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b0b002000410120001b10440bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b4b01017e2000420037030042a5c688a1c89ca7f94b2103037f2002047f2002417f6a21022001300000200342b383808080207e852103200141016a21010c01052000200337030020000b0b0b0a0020002001420010290b0b0020002001420010411a0b450020004100360208200042003702000240200220016b2202450d0020002002104320024101480d0020002802042001200210391a2000200028020420026a3602040b20000b5f01037f410121030240034020024114460d01200120026a2104200241016a210220042d0000450d000b411521030b200041186a28020022020440200041086a280200200041146a2802002002104021000b2000200028020020036a3602000b2f01017f2000280208200149044020011044200028020020002802041039210220002001360208200020023602000b0b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2a01017f2000200220011008200028020422036a107320022001200320002802006a10092000107220000b0c00200020001037100010010b2001017f2000200110382202360200200020023602042000200120026a3602080b9b0101047f230041106b220124002001200036020c2000047f418c20200041086a22024110762200418c202802006a2203360200418820418820280200220420026a41076a417871220236020002400240200341107420024d0440418c20200341016a360200200041016a21000c010b2000450d010b200040000d0010010b20042001410c6a4104103941086a0541000b2100200141106a240020000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b2d01017f200028020421020340200241003a00002000200028020441016a22023602042001417f6a22010d000b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106f20024f0d002003410471044010010c010b200042003702000b02402003411071450d002000106f20024d0d0020034104710440100120000f0b200042003702000b20000b4101017f200028020445044010010b0240200028020022012d0000418101470d00200028020441014d047f100120002802000520010b2c00014100480d0010010b0be30101047f027f2001104b2203200128020422024b047f41af08104220012802040520020b044041002001104c2c0000417f4a0d011a0b024002402001104a450d002001104c2d000041b801490d002001104c2d000041c97e6a21020c010b410021022001104d450d002001104c2d000041f801490d002001104c2d000041897e6a21020b200241016a0b21022000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b1900200028020445044041000f0b2000104c2d000041c001490bff0201037f200028020445044041000f0b2000104841012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10010b20020b2e01017f02402000280200220104402000280204450d0120010f0b41b80841b401104e000b41830941b501104e000b1900200028020445044041000f0b2000104c2d000041bf014b0b3501017f230041106b220224002002200136020c200241f808360208200241bf08360204200220003602002002106d410010741a000baf0602057f037e230041a0016b22002400106e100c220110442202100d20004180016a200020022001103022034100105020004180016a104802400240200028028401450d0020004180016a1048024020002802800122022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d044020002802840141014d047f10012000280280010520020b2d00010d010c020b200441bf014b0d01200028028401200141ff017141ca7e6a22014d0440100120002802800121020b200120026a2d0000450d010b20004180016a104d0d002000280284010d010b41af0810420b200041e8006a20004180016a1049200028026c220141094f044041af0810420b200028026821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b02402005500440419d0910420c010b41800810512005510440200310520c010b41ad0910512005510440200041306a22014100360200200041286a22024200370300200042003703202003200041206a1053200041c8006a20012802002201360200200041406b20022903002205370300200020002903202206370338200041e0006a2001360200200041d8006a200537030020002006370350200041d0006a10162102200041e8006a101e210120004198016a410036020020004190016a420037030020004188016a4200370300200042003703800120004180016a2002ac22054201862005423f87220685220720064201862005423f888420068522051029200028028001210220004180016a410472102420012002102020004180016a2001200720051041220110232000280280012000280284011014200128020c2202450d01200141106a20023602000c010b41c109105120055104402003410110540c010b41d109105120055104402003410210550c010b41e409105120055104402003410310540c010b41f309105120055104402003410410550c010b41850a105120055104402003410510540c010b41980a105120055104402003410610550c010b41ab0a105120055104402003410710540c010b41b30a105120055104402003410810540c010b41c10a10420b1056200041a0016a24000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001105820012003280208200328020c105936020c200320011058410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410471a200341106a24000f0b20032001105841002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004105910712001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b110020001057410147044041d40a10420b0b3701017f230041206b2202240020001057410247044041d40a10420b200241086a200041011050200241086a20011031200241206a24000b920102037f027e230041d0006b22022400200241186a22034100360200200241106a22044200370300200242003703082000200241086a1053200241306a20032802002200360200200241286a20042903002205370300200220022903082206370320200241c8006a2000360200200241406b2005370300200220063703382002200241386a2001110000200241d0006a24000bfd0102017f027e230041a0016b2202240020001052200241106a200241086a2001110000200241406b101e2200200241106a102b1020200241386a200241206a2802002201360200200241306a200241186a2903002203370300200220022903102204370328200241e0006a2003370300200241e8006a2001360200200241f8006a200337030020024180016a2001360200200220043703582002200437037020024198016a200136020020024190016a2003370300200220043703880120024188016a200020024188016a4114102d22011023200228028801200228028c011014200128020c22000440200141106a20003602000b200241a0016a24000b880101037f41ec1f410136020041f01f2802002100034020000440034041f41f41f41f2802002201417f6a2202360200200141014845044041ec1f4100360200200020024102746a22004184016a280200200041046a28020011030041ec1f410136020041f01f28020021000c010b0b41f41f412036020041f01f200028020022003602000c010b0b0b870101047f230041106b2201240002402000104d450d002000280204450d0020002802002d000041c001490d00200141086a20001058200128020c210003402000450d01200141002001280208220320032000105922046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b2101017f2001104b220220012802044b044010010b2000200120011070200210710b2701017f230041206b22022400200241086a2000200141141047106f2100200241206a240020000bfc0202027f017e02402002450d00200020013a0000200020026a2203417f6a20013a000020024103490d00200020013a0002200020013a00012003417d6a20013a00002003417e6a20013a000020024107490d00200020013a00032003417c6a20013a000020024109490d002000410020006b41037122046a2203200141ff017141818284086c22013602002003200220046b417c7122046a2202417c6a200136020020044109490d002003200136020820032001360204200241786a2001360200200241746a200136020020044119490d002003200136021820032001360214200320013602102003200136020c200241706a20013602002002416c6a2001360200200241686a2001360200200241646a20013602002001ad220542208620058421052004200341047141187222016b2102200120036a2101034020024120490d0120012005370300200141186a2005370300200141106a2005370300200141086a2005370300200141206a2101200241606a21020c000b000b20000b5901017f200020002802482201417f6a20017236024820002802002201410871044020002001412072360200417f0f0b200042003702042000200028022c220136021c200020013602142000200120002802306a36021041000b4402017f017e200142ffffffffffff3f832103027f2001423088a741ffff0171220241ffff01470440410420020d011a410241032000200384501b0f0b2000200384500b0bc50101037f230041206b2204240002402002423088a7220641ffff0171220541ffff01460d0020054504402003027f41002001200242004200107d450d001a20042001200242808080808080c0bbc000105e200441106a2004290300200441086a2903002003105d2004290318210220042903102101200328020041887f6a0b3602000c010b200320054182807f6a360200200242ffffffffffff3f832006418080027141feff0072ad4230868421020b2000200137030020002002370308200441206a24000ba60a02047f107e230041e0006b220424002004200242ffffffffffff3f83370358200420013703502004200342ffffffffffff3f83220c370348200442003703402002200385428080808080808080807f8321090240027e02400240024002402002423088a741ffff01712206417f6a41fdff014d41002003423088a741ffff01712205417f6a41feff01491b0d00200150200242ffffffffffffffffff0083220a42808080808080c0ffff0054200a42808080808080c0ffff00511b450440200242808080808080208421090c060b4101200342ffffffffffffffffff0083220242808080808080c0ffff0054200242808080808080c0ffff00511b45044020034280808080808020842109420021010c060b2001200a42808080808080c0ffff008584500440200250450d0242808080808080e0ffff0021090c030b200242808080808080c0ffff00855004402001200a84210242002101200250044042808080808080e0ffff0021090c070b200942808080808080c0ffff008421090c060b2001200a842103420021012003500d052002500d05200a42ffffffffffff3f580440200441d0006a107c21070b200242ffffffffffff3f560d00200441406b107c20076a21072004290348210c200429034021080b2004200837034020042004290358220d42808080808080c00084220f3703582004200c42808080808080c0008422103703482004290350220342208822022008420f86428080feff0f8322017e2211200342ffffffff0f832203200842118842ffffffff0f83220a7e7c220e4220862212200120037e7c220b201254ad200d42ffffffff0f83220d20017e22142003200c420f8620084231888442ffffffff0f8322087e7c22122002200a7e7c2213200e201154ad422086200e422088847c220e2001200f422088220c7e2215201042118842ffffffff0f83220120037e7c220f200a200d7e7c2210200220087e7c22114220867c22167c2103200520066a20076a4181807f6a21050240200a200c7e22172008200d7e7c220a201754ad200a200120027e7c2202200a54ad7c2001200c7e7c2001200d7e22012008200c7e7c2208200154ad4220862008422088847c200220084220867c2208200254ad7c20082012201454ad2013201254ad7c7c2202200854ad7c20022011201054ad200f201554ad2010200f54ad7c7c4220862011422088847c2208200254ad7c2008200e201354ad2016200e54ad7c7c2202200854ad7c220842808080808080c0008350450440200541016a21050c010b200b423f88210120084201862002423f8884210820024201862003423f88842102200b420186210b200120034201868421030b200541ffff014e0440200942808080808080c0ffff008421090c020b200541004a0d02410120056b220641ff004b0d01200441106a200b200320061079200441206a20022008200541ff006a22051078200441306a200b200320051078200420022008200610792004290330200441386a29030084420052ad200429032020042903108484210b200441286a290300200441186a29030084210320042903002102200441086a2903000c030b200942808080808080c0ffff008421090b420021010c020b200842ffffffffffff3f832005ad423086840b2009842109200b502003427f552003428080808080808080807f511b4504402009200242017c2201200254ad7c21090c010b200b2003428080808080808080807f858450450440200221010c010b2009200220024201837c2201200254ad7c21090b2000200937030820002001370300200441e0006a24000b9a2f021d7f047e230041e03c6b22062400200641a61e3602d002200641b6026a211d419e7d20066b211e200641df026a211f200641e0026a410872211c200641e0026a410972211820064190396a2120200641e0026a211a200641b7026a211602400240024003400240200441ffffffff0720126b4a0d00200420126a2112024002400240027f0240027f02400240024002400240024002400240024002400240024002400240024020062802d00222092d000022070440410021042009210503400240200741ff01712207450d0020074125460d00200441016a210420052d00012107200541016a21050c010b0b200620053602d0022004210503400240200520096a22072d00004125470d00200741016a2d00004125470d00200441016a2104200541026a21050c010b0b200620073602d002200441ffffffff0720126b220b4a0d162000044020002009200410600b20040d17417f210f200741016a22042c000041506a220541094d0440200741036a2004200741026a2d000041244622071b21042005417f20071b210f4101201720071b21170b4100210503400240200620043602d00220042c0000220a41606a2207411f4b0d00410120077422074189d10471450d00200441016a2104200520077221050c010b0b0240200a412a460440027f0240200441016a220a2c000041506a220741094b0d00200441026a2d00004124470d00200320074102746a410a360200200441036a210a41012117200441016a2c000041047420026a41807a6a2802000c010b20170d0620004504402006200a3602d00241002117410021100c030b20012001280200220441046a3602004100211720042802000b21102006200a3602d0022010417f4a0d01410020106b211020054180c0007221050c010b200641d0026a106122104100480d1720062802d002210a0b41002104417f2108027f200a2d0000412e470440200a210741000c010b200a2d0001412a460440027f0240200a2c000241506a220741094b0d00200a2d00034124470d00200320074102746a410a360200200a41046a2107200a2c000241047420026a41807a6a2802000c010b20170d06200a41026a210741002000450d001a20012001280200220a41046a360200200a2802000b2108200620073602d0022008417f73411f760c010b2006200a41016a3602d002200641d0026a1061210820062802d002210741010b210e03402004210a20072c000041bf7f6a220441394b0d03200741016a2107200a413a6c20046a41901a6a2d00002204417f6a4108490d000b200620073602d0022004450d030240024002402004411b460440200f417f4c0d010c070b200f4100480d012003200f4102746a200436020020062002200f4104746a22042903003703c0022006200441086a2903003703c8020b410021042000450d190c010b2000450d1a200641c0026a2004200110620b200541ffff7b712211200520054180c000711b210c2007417f6a2c00002204415f7120042004410f714103461b2004200a1b221341ad7f6a220441254d0d01201341bf7f6a220441064b0d040240200441016b0e03050005060b200641003602fc01200620062903c0023e02f8012006200641f8016a3602c002417f2108200641f8016a0c100b20000d192017450d18200241106a2107200341046a210541012104034002402004410a47047f200528020022090d01200405410a0b41027421040340200441046a2205412c460440410121120c1d0b200320046a2107200521042007280200450d000b0c040b2007200920011062200741106a2107200541046a2105200441016a21040c000b000b200441016b0e25020202020b0202020202020202030207080303030208020202050c090a020204020f02020b0d0b200620073602d0020b41802041163602000c140b4100210541f01d210f0c0f0b2008417f4c4100200e1b0d1020062903c002212220062903c80221212006410036028c03027f2021427f5704402021428080808080808080807f8521214101211541811e0c010b200c4180107104404101211541841e0c010b41871e41821e200c41017122151b0b211b024020222021105c41014c0440200041202010201541036a2204201110632000201b201510602000419c1e41a01e201341207141057622051b41941e41981e20051b202220212022202110641b410310602000412020102004200c4180c0007310632010200420042010481b21040c010b200641e0016a202220212006418c036a105d200641d0016a20062903e001222120062903e801222220212022106520062903d0012221200641d8016a290300222242004200107d04402006200628028c03417f6a36028c030b2013412072221941e100460440201b41096a201b201341207122091b210e02402008411a4b0d00411b20086b450d00200841656a210442808080808080c081c000212342002124034020040440200641f0006a2024202342808080808080c081c000105e200441016a2104200641f8006a2903002123200629037021240c010b0b200e2d0000412d460440200641406b20212022428080808080808080807f85202420231066200641306a202420232006290340200641c8006a2903001065200641386a290300428080808080808080807f852122200629033021210c010b200641e0006a20212022202420231065200641d0006a2006290360200641e8006a290300202420231066200641d8006a2903002122200629035021210b2015410272210a201a200628028c0322052005411f7522046a200473ad201a10672204460440200641303a00df02201f21040b2004417e6a220f2013410f6a3a00002004417f6a412d412b20054100481b3a0000200c410871210b200641e0026a21050340200641206a20212022106822071069200641106a202120222006290320200641286a290300106620062006290310200641186a29030042808080808080c081c000105e20052204200741e01d6a2d00002009723a0000200641086a2903002122200629030021210240200441016a2205200641e0026a6b4101470d000240200b0d00200841004a0d002021202242004200107d450d010b2004412e3a0001200441026a21050b2021202242004200107d0d000b417f210441fdffffff07200a201a200f6b22096a220b6b2008480d01200041202010200b200841026a2005200641e0026a6b22072005201e6a2008481b200720081b22056a2204200c10632000200e200a10602000413020102004200c418080047310632000200641e0026a2007106020004130200520076b4100410010632000200f200910602000412020102004200c4180c0007310632010200420042010481b21040c010b2008410048210402402021202242004200107d450440200628028c03210e0c010b200641c0016a2021202242808080808080c08dc000105e2006200628028c0341646a220e36028c03200641c8016a290300212220062903c00121210b4106200820041b210d20064190036a2020200e4100481b221421050340200641b0016a20212022106a2204106b200641a0016a2021202220062903b001200641b8016a290300106620064190016a20062903a001200641a8016a2903004280808080e59ab78ec000105e20052004360200200541046a2105200629039001222120064198016a290300222242004200107d0d000b2014210b0340200e41014e04402005417c6a2104200e411d200e411d481b2209ad21224100210703402004200b4f044020042007ad20043502002022867c22212021428094ebdc038022214280ec94a37c7e7c3e02002004417c6a21042021a721070c010b0b20070440200b417c6a220b20073602000b034020052204200b4b04402004417c6a2205280200450d010b0b200e20096b210e200421050c010b0b2006200e36028c03200d412d6a41096e41016a21110340200e417f4c044041002107418094ebdc0341094100200e6b200e4177481b220a762108417f200a74417f73210f200b2104034020042005490440200420042802002209200a7620076a360200200441046a21042009200f7120086c21070c010b0b2014200b200b41046a200b2802001b220b201941e600461b220420114102746a2007044020052007360200200541046a21050b2005200520046b41027520114a1b2105200a200e6a210e0c010b0b2006200e36028c03410021070240200b20054f0d002014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200d41002007201941e600461b6b201941e70046220a200d410047716b2204200520146b41027541096c41776a4804402004418080096a2204200441096d220841776c6a2104410a21090340200441074c04402009410a6c2109200441016a21040c010b0b200841027420146a220f4184807c6a22082802002204200420096e221120096c220e6b2104024041002005200f4188807c6a22194620041b0d00024020114101714504404280808080808080b8c0002121420021222008200b4d0d012009418094ebdc03470d012008417c6a2d0000410171450d010b4280808080808080b8c0002121420121220b4280808080808080ff3f42808080808080c0ff3f42808080808080e0ff3f200420094101762211461b42808080808080e0ff3f20052019461b20042011491b212302402015450d00201b2d0000412d470d002023428080808080808080807f8421234280808080808080b84021210b20064180016a202220214200202310652008200e36020020062903800120064188016a29030020222021107d450d0020082009200e6a2207360200200f4180807c6a210403402007418094ebdc034f0440200441046a41003602002004200b490440200b417c6a220b41003602000b2004200428020041016a22073602002004417c6a21040c010b0b200441046a21082014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200841046a22042005200520044b1b21050b027f0340410020052209200b4d0d011a2009417c6a2205280200450d000b41010b210e0240200a450440200c41087121080c010b2007417f73417f200d4101200d1b220420074a2007417b4a7122051b20046a210d417f417e20051b20136a2113200c41087122080d00410921050240200e450d002009417c6a280200220a450d0041002105410a21040340200a2004700d01200541016a21052004410a6c21040c000b000b200920146b41027541096c41776a2104201341207241e60046044041002108200d200420056b22044100200441004a1b2204200d2004481b210d0c010b41002108200d200420076a20056b22044100200441004a1b2204200d2004481b210d0b417f2104200d41fdffffff0741feffffff072008200d72220f1b4a0d00200d200f4100476a41016a21110240201341207241e600472219450440200741ffffffff0720116b4a0d0220074100200741004a1b210a0c010b20072007411f7522056a200573ad201a1067417e6a21050340201a20056b220a417e6a41014c0440200541016a41303a00002005417f6a21050c010b0b200520133a0000200541016a412d412b20074100481b3a0000200a41ffffffff0720116b4a0d010b200a20116a2207201541ffffffff07734a0d00200041202010200720156a2211200c10632000201b201510602000413020102011200c41808004731063024020194504402014200b200b20144b1b220721050340200520144d0440200535020020181067210402402005200747044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b20042018470d00200641303a00e802201c21040b20002004201820046b1060200541046a21050c010b0b200f0440200041a41e410110600b03400240200520094f0d00200d4101480d00200535020020181067210403402004200641e0026a4b04402004417f6a220441303a00000c010b0b20002004200d4109200d4109481b1060200d41776a210d200541046a21050c010b0b20004130200d41096a4109410010630c010b2009200b41046a200e1b210a200b2107034002402007200a4f0d00200d4100480d0020182007350200201810672204460440200641303a00e802201c21040b02402007200b47044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b2000200441011060200441016a21042008454100200d4101481b0d00200041a41e410110600b20002004201820046b2209200d200d20094a1b1060200741046a2107200d20096b210d0c010b0b20004130200d41126a41124100106320002005201a20056b10600b2000412020102011200c4180c0007310632010201120112010481b21040b200441004e0d110c100b20062802c002220441fa1d20041b21090c010b410021044180202802002105037f200441d80046047f41d80005200441900b6a2d0000200546047f200405200441016a21040c020b0b0b210741f00b210903402007450d01034020092d00002104200941016a2205210920040d000b2007417f6a2107200521090c000b000b4100210541ffffffff07200820084100481b210a0240024003400240200520096a21042005200a46220f0d002004410371450d0020042d0000450d02200541016a21050c010b0b41002107200f0d01200a20056b210720042d0000450d01200520096a2104034020074104490d0220042802002205417f73200541fffdfb776a71418081828478710d022007417c6a2107200441046a21040c000b000b200a20056b21070b03400240410021052007450440410021040c010b20042d0000450d002007417f6a2107200441016a21040c010b0b2009200420096b200a20041b22076a210441f01d210f2008417f4a04402011210c200721080c0d0b2011210c2007210820042d0000450d0c0c0d0b200620062903c0023c00b6024100210541f01d210f41012108201d2109201621042011210c0c0b0b20062903c0022221427f5704402006420020217d22213703c0024101210541f01d0c080b200c4180107104404101210541f11d0c080b41f21d41f01d200c41017122051b0c070b20062903c00221212016210903402021504504402009417f6a22092021a74107714130723a0000202142038821210c010b0b4100210541f01d210f200c410871450d072008201620096b220441016a200820044a1b21080c070b20084108200841084b1b2108200c410872210c41f80021130b2013412071210420062903c00221212016210903402021504504402009417f6a22092021a7410f7141e01d6a2d00002004723a0000202142048821210c010b0b4100210541f01d210f200c410871450d0520062903c002500d05201341047541f01d6a210f410221050c050b41002104200a41ff0171220541074b0d080240024002400240024002400240200541016b0e07010203040f0506000b20062802c00220123602000c0e0b20062802c00220123602000c0d0b20062802c0022012ac3703000c0c0b20062802c00220123b01000c0b0b20062802c00220123a00000c0a0b20062802c00220123602000c090b20062802c0022012ac3703000c080b20062802c0020b21094100210420092105024003400240024020042008470440200528020022070d01200421080b20084100480d092000412020102008200c106341002104034020042008460d0420092802002205450d0420054180014f0d02200620053a00f401200441016a220420084b0d042000200641f4016a41011060200941046a21090c000b000b20074180014f0d00200620073a00f401200441016a2104200541046a21050c010b0b000b2000412020102008200c4180c00073106320102008201020084a1b21040c060b4100210520062903c002212141f01d0b210f20212016106721090b200e410020084100481b0d02200c41ffff7b71200c200e1b210c20062903c0022121024020080d00202150450d0041002108201621090c010b2008202150201620096b6a2204200820044a1b21080b201621040b200420096b220a20082008200a481b220841ffffffff0720056b4a0d00200520086a2207201020102007481b2204200b4a0d002000412020042007200c10632000200f200510602000413020042007200c41808004731063200041302008200a4100106320002009200a10602000412020042007200c4180c0007310630c010b0b41802041cb003602000b417f21120c010b410021120b200641e03c6a240020120bd30101057f024020002d00004120710d0020002802102203047f2003052000105b0d0120002802100b200028021422056b200249044020002001200220002802241102001a0f0b41002103024020002802504100480d0020012104034020022003460d01200341016a2103200220046a21062004417f6a220721042006417f6a2d0000410a470d000b20002001200220036b41016a220420002802241102002004490d01200220076a41016a2101200028021421052003417f6a21020b20052001200210391a2000200028021420026a3602140b0b5d01047f20002802002102034020022c000041506a220341094b450440417f21042000200241016a2202360200200141cc99b3e6004d047f417f20032001410a6c22016a200341ffffffff0720016b4a1b0520040b21010c010b0b20010ba00502017f017e230041106b220324000240200141776a220141114b0d00024002400240024002400240024002400240024002400240024002400240024002400240200141016b0e110102050304060708090a0b0c0d0e0f1011000b20022002280200220141046a360200200020012802003602000c110b20022002280200220141046a360200200020013402003703000c100b20022002280200220141046a360200200020013502003703000c0f0b20022002280200220141046a360200200020013402003703000c0e0b20022002280200220141046a360200200020013502003703000c0d0b2002200228020041076a417871220141086a360200200020012903003703000c0c0b20022002280200220141046a360200200020013201003703000c0b0b20022002280200220141046a360200200020013301003703000c0a0b20022002280200220141046a360200200020013000003703000c090b20022002280200220141046a360200200020013100003703000c080b2002200228020041076a417871220141086a360200200020012903003703000c070b20022002280200220141046a360200200020013502003703000c060b2002200228020041076a417871220141086a360200200020012903003703000c050b2002200228020041076a417871220141086a360200200020012903003703000c040b20022002280200220141046a360200200020013402003703000c030b20022002280200220141046a360200200020013502003703000c020b2002200228020041076a417871220141086a360200200320012b0300106c2000200341086a290300370308200020032903003703000c010b20022002280200410f6a417071220141106a3602002001290300210420002001290308370308200020043703000b200341106a24000b6a01017f23004180026b220524000240200220034c0d0020044180c004710d0020052001200220036b22024180022002418002491b105a21030340200241800249450440200020034180021060200241807e6a21020c010b0b20002003200210600b20054180026a24000b63002000420052200142ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b2002420052200342ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b720bef0902037f037e230041f0006b22052400200442ffffffffffffffffff00832108024002402001427f7c2209427f51200242ffffffffffffffffff0083220a2009200154ad7c427f7c220942ffffffffffffbfffff0056200942ffffffffffffbfffff00511b4504402003427f7c2209427f5220082009200354ad7c427f7c220942ffffffffffffbfffff0054200942ffffffffffffbfffff00511b0d010b200150200a42808080808080c0ffff0054200a42808080808080c0ffff00511b45044020024280808080808020842104200121030c020b200350200842808080808080c0ffff0054200842808080808080c0ffff00511b450440200442808080808080208421040c020b2001200a42808080808080c0ffff00858450044042808080808080e0ffff00200220012003852002200485428080808080808080807f85845022061b21044200200120061b21030c020b2003200842808080808080c0ffff008584500d012001200a8450044020032008844200520d0220012003832103200220048321040c020b200320088450450d0020012103200221040c010b20052003200120032001562008200a562008200a511b22061b37036020052004200220061b220842ffffffffffff3f8337036820052002200420061b220242ffffffffffff3f83220437035820052001200320061b22013703502002423088a741ffff017121072008423088a741ffff01712206450440200541e0006a107a21060b2007450440200541d0006a107a210720052903582104200529035021010b200520014203862203370350200520052903602209420386220a370360200520052903684203862009423d8884428080808080808004842209370368200520044203862001423d888442808080808080800484220437035820022008852101200620076b220704402005027e200741ff004d0440200541306a2003200420071079200541406b2003200441800120076b10782005200541386a290300220437035820052903302005290340200541c8006a29030084420052ad840c010b420021042005420037035842010b22033703500b02402001427f5704402005200a20037d22013703602005200920047d200a200354ad7d2203370368200120038450044042002103420021040c030b200342ffffffffffffff03560d01200541206a2001200320012003107b41746a220710782005200541286a2903002203370368200520052903202201370360200620076b21060c010b20052003200a7c220137036020052001200354ad200420097c7c2204370368200442808080808080800883500440200421030c010b200520044201882203370368200520014201832004423f86200142018884842201370360200641016a21060b2008428080808080808080807f832104200641ffff014e0440200442808080808080c0ffff00842104420021030c010b410021070240200641004a0440200621070c010b200520012003410120066b1079200541106a20012003200641ff006a10782005200541086a2903002203370368200520052903002005290310200541186a29030084420052ad8422013703600b200342038842ffffffffffff3f832004842007ad423086842003423d8620014203888422042001a7410771220641044bad7c2203200454ad7c2003420183420020064104461b220120037c2203200154ad7c21040b2000200337030020002004370308200541f0006a24000b4401017f230041106b2205240020052001200220032004428080808080808080807f851065200529030021012000200529030837030820002001370300200541106a24000b6602027f017e03402000428080808010544504402001417f6a220120002000420a80220442767e7ca74130723a0000200421000c010b0b2000a721020340200204402001417f6a220120022002410a6e220341766c6a4130723a0000200321020c010b0b20010b850101027f230041106b22032400027f41002001423088a741ffff0171220241ffff00490d001a41808080807841ffffffff0720014200531b20024181807f6a41204f0d001a20032000200142ffffffffffff3f8342808080808080c0008441ef800120026b10794100200328020022026b200220014200531b0b2102200341106a240020020b810102027f017e230041106b220324002000027e200145044042000c010b200320012001411f7522026a2002732202ad4200200267220241d1006a1078200341086a29030042808080808080c00085419e800120026bad4230867c200141808080807871ad42208684210420032903000b37030020002004370308200341106a24000b6d01037f230041106b22022400024020014200530d002001423088a741ffff0171220441ffff00490d00417f210320044181807f6a411f4b0d0020022000200142ffffffffffff3f8342808080808080c0008441ef800120046b1079200228020021030b200241106a240020030b6902017f017e230041106b220224002000027e200145044042000c010b20022001ad420041f000200167411f7322016b1078200241086a29030042808080808080c00085200141ffff006aad4230867c210320022903000b37030020002003370308200241106a24000b830102027f027e230041106b220224002001bd22044280808080088321052000027e200442ffffffff078322045004404200210442000c010b2002200442002004a7672203413c6a1078200241086a29030042808080808080c000854181f80020036bad42308684210420022903000b37030020002004200584370308200241106a24000bce0201037f230041b0026b220124002001200036020c200120003602ac0220014180026a41004128105a1a200120012802ac023602a8024100200141a8026a200141e0006a20014180026a105f41004e0440419c1f2802001a41d01e280200210241981f28020041004c044041d01e2002415f713602000b027f0240024041801f28020045044041801f41d00036020041ec1e410036020041e01e420037030041fc1e280200210341fc1e200141106a3602000c010b41e01e2802000d010b417f41d01e105b0d011a0b41d01e200141a8026a200141e0006a20014180026a105f0b2100200241207121022003047f41d01e4100410041f41e2802001102001a41801f410036020041fc1e200336020041ec1e410036020041e01e410036020041e41e280200210341e41e410036020041000520000b1a41d01e41d01e2802002002723602000b200141b0026a24000b3501017f230041106b22004190a00436020c418420200028020c41076a41787122003602004188202000360200418c203f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010702000104b6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401001200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210046a1073200120002802006a22012002200110050c010b0b0b3601017f2000280208200149044020011044200028020020002802041039210220002001360208200020023602000b200020013602040bb50101027f20004504404100210041e81f280200044041e81f280200107421000b41e01f280200044041e01f280200107420007221000b41e41f410136020041e41f410036020020000f0b200028024c1a02402000280214200028021c460d0020004100410020002802241102001a20002802140d00417f0f0b20002802042201200028020822024704402000200120026bac410120002802281111001a0b2000410036021c200042003703102000420037020441000b040041000b2901017f200028021c2203200028021420036b1000200120021000200028021420026a200028021c6b0b0400427f0b5001017e0240200341c0007104402001200341406aad862102420021010c010b2003450d0020022003ad220486200141c00020036bad88842102200120048621010b20002001370300200020023703080b6001017e0240027e200341c0007104402002200341406aad8821014200210242000c010b2003450d01200241c00020036bad8620012003ad2204888421012002200488210242000b2104200120048421010b20002001370300200020023703080b5402037f027e230041106b22012400200120002903002204200041086a2202290300220520042005107b220341716a10782002200141086a29030037030020002001290300370300200141106a2400411020036b0b1701017f2000200120015022021b792002410674ad7ca70b6102037f027e230041106b22012400200120002903002205200041086a220329030022042005200420045022021b792002410674ad7ca7220241716a1078200020012903003703002003200141086a290300370300200141106a2400411020026b0bdb0102017f027e4101210402402000420052200142ffffffffffffffffff0083220542808080808080c0ffff0056200542808080808080c0ffff00511b0d002002420052200342ffffffffffffffffff0083220642808080808080c0ffff0056200642808080808080c0ffff00511b0d00200020028420052006848450044041000f0b20012003834200590440417f21042000200254200120035320012003511b0d0120002002852001200385844200520f0b417f21042000200256200120035520012003511b0d00200020028520012003858442005221040b20040b0be61514004180080b8303696e6974007365745f61646472657373006c697374537461636b206973206e6f7420656d7074790073696d706c65006261642063617374006d5f64617461002f7573722f6c6f63616c2f62696e2f2e2e2f706c61746f6e2e6364742f696e636c7564652f706c61746f6e2f766563746f725f7265662e68006f70657261746f725b5d005f69203c206d5f636f756e7400636c6f6e65006465706c6f7900696e76616c6964206d6574686f640a006765745f636f6e74726163745f6c656e677468006465706c6f795f636f6e7472616374006765745f6465706c6f795f6164647265737300636c6f6e655f636f6e7472616374006765745f636c6f6e655f61646472657373007365745f73696d706c655f61646472657373006765745f73696d706c655f61646472657373006d696772617465006d6967726174655f636c6f6e65006e6f206d6574686f6420746f2063616c6c0a00546865206e756d626572206f66206d6574686f6420706172616d657465727320646f6573206e6f74206d617463680a0041900b0bc10f542122190d010203114b1c0c10040b1d121e27686e6f7071622005060f1314151a08160728241718090a0e1b1f252383827d262a2b3c3d3e3f43474a4d58595a5b5c5d5e5f60616364656667696a6b6c727374797a7b7c480000000000000000496c6c6567616c20627974652073657175656e636500446f6d61696e206572726f7200526573756c74206e6f7420726570726573656e7461626c65004e6f74206120747479005065726d697373696f6e2064656e696564004f7065726174696f6e206e6f74207065726d6974746564004e6f20737563682066696c65206f72206469726563746f7279004e6f20737563682070726f636573730046696c65206578697374730056616c756520746f6f206c6172676520666f7220646174612074797065004e6f207370616365206c656674206f6e20646576696365004f7574206f66206d656d6f7279005265736f75726365206275737900496e7465727275707465642073797374656d2063616c6c005265736f757263652074656d706f726172696c7920756e617661696c61626c6500496e76616c6964207365656b0043726f73732d646576696365206c696e6b00526561642d6f6e6c792066696c652073797374656d004469726563746f7279206e6f7420656d70747900436f6e6e656374696f6e2072657365742062792070656572004f7065726174696f6e2074696d6564206f757400436f6e6e656374696f6e207265667573656400486f737420697320646f776e00486f737420697320756e726561636861626c65004164647265737320696e207573650042726f6b656e207069706500492f4f206572726f72004e6f207375636820646576696365206f72206164647265737300426c6f636b20646576696365207265717569726564004e6f207375636820646576696365004e6f742061206469726563746f72790049732061206469726563746f727900546578742066696c652062757379004578656320666f726d6174206572726f7200496e76616c696420617267756d656e7400417267756d656e74206c69737420746f6f206c6f6e670053796d626f6c6963206c696e6b206c6f6f700046696c656e616d6520746f6f206c6f6e6700546f6f206d616e79206f70656e2066696c657320696e2073797374656d004e6f2066696c652064657363726970746f727320617661696c61626c65004261642066696c652064657363726970746f72004e6f206368696c642070726f636573730042616420616464726573730046696c6520746f6f206c6172676500546f6f206d616e79206c696e6b73004e6f206c6f636b7320617661696c61626c65005265736f7572636520646561646c6f636b20776f756c64206f63637572005374617465206e6f74207265636f76657261626c650050726576696f7573206f776e65722064696564004f7065726174696f6e2063616e63656c65640046756e6374696f6e206e6f7420696d706c656d656e746564004e6f206d657373616765206f6620646573697265642074797065004964656e7469666965722072656d6f76656400446576696365206e6f7420612073747265616d004e6f206461746120617661696c61626c65004465766963652074696d656f7574004f7574206f662073747265616d73207265736f7572636573004c696e6b20686173206265656e20736576657265640050726f746f636f6c206572726f7200426164206d6573736167650046696c652064657363726970746f7220696e20626164207374617465004e6f74206120736f636b65740044657374696e6174696f6e2061646472657373207265717569726564004d65737361676520746f6f206c617267650050726f746f636f6c2077726f6e67207479706520666f7220736f636b65740050726f746f636f6c206e6f7420617661696c61626c650050726f746f636f6c206e6f7420737570706f7274656400536f636b65742074797065206e6f7420737570706f72746564004e6f7420737570706f727465640050726f746f636f6c2066616d696c79206e6f7420737570706f7274656400416464726573732066616d696c79206e6f7420737570706f727465642062792070726f746f636f6c0041646472657373206e6f7420617661696c61626c65004e6574776f726b20697320646f776e004e6574776f726b20756e726561636861626c6500436f6e6e656374696f6e207265736574206279206e6574776f726b00436f6e6e656374696f6e2061626f72746564004e6f2062756666657220737061636520617661696c61626c6500536f636b657420697320636f6e6e656374656400536f636b6574206e6f7420636f6e6e65637465640043616e6e6f742073656e6420616674657220736f636b65742073687574646f776e004f7065726174696f6e20616c726561647920696e2070726f6772657373004f7065726174696f6e20696e2070726f6772657373005374616c652066696c652068616e646c650052656d6f746520492f4f206572726f720051756f7461206578636565646564004e6f206d656469756d20666f756e640057726f6e67206d656469756d2074797065004d756c7469686f7020617474656d70746564004e6f206572726f7220696e666f726d6174696f6e00000019000a00191919000000000500000000000009000000000b00000000000000001900110a191919030a0700011b090b18000009060b00000b0006190000001919190041e11a0b210e000000000000000019000a0d191919000d00000200090e00000009000e00000e00419b1b0b010c0041a71b0b1513000000001300000000090c00000000000c00000c0041d51b0b01100041e11b0b150f000000040f00000000091000000000001000001000418f1c0b011200419b1c0b1e11000000001100000000091200000000001200001200001a0000001a1a1a0041d21c0b0e1a0000001a1a1a000000000000090041831d0b011400418f1d0b151700000000170000000009140000000000140000140041bd1d0b01160041c91d0b7f1500000000150000000009160000000000160000160000303132333435363738394142434445462d2b2020203058307800286e756c6c29002d30582b30582030582d30782b307820307800696e6600494e46006e616e004e414e002e00417373657274696f6e206661696c65643a202573202825733a2025733a202564290a0041d01e0b01050041dc1e0b01090041f41e0b0a0a0000000b000000001000418c1f0b010200419c1f0b08ffffffffffffffff0041e01f0b02500f"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_SIMPLE_ADDRESS = "get_simple_address"; - - public static final String FUNC_MIGRATE_CLONE = "migrate_clone"; - - public static final String FUNC_GET_CONTRACT_LENGTH = "get_contract_length"; - - public static final String FUNC_DEPLOY_CONTRACT = "deploy_contract"; - - public static final String FUNC_GET_DEPLOY_ADDRESS = "get_deploy_address"; - - public static final String FUNC_CLONE_CONTRACT = "clone_contract"; - - public static final String FUNC_GET_CLONE_ADDRESS = "get_clone_address"; - - public static final String FUNC_SET_SIMPLE_ADDRESS = "set_simple_address"; - - public static final String FUNC_MIGRATE = "migrate"; - - protected CreateContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CreateContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall get_simple_address() { - final WasmFunction function = new WasmFunction(FUNC_GET_SIMPLE_ADDRESS, Arrays.asList(), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public RemoteCall migrate_clone(WasmAddress contract_address) { - final WasmFunction function = new WasmFunction(FUNC_MIGRATE_CLONE, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall migrate_clone(WasmAddress contract_address, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_MIGRATE_CLONE, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CreateContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CreateContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CreateContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CreateContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall get_contract_length(WasmAddress contract_address) { - final WasmFunction function = new WasmFunction(FUNC_GET_CONTRACT_LENGTH, Arrays.asList(contract_address), Int32.class); - return executeRemoteCall(function, Int32.class); - } - - public RemoteCall deploy_contract(WasmAddress contract_address) { - final WasmFunction function = new WasmFunction(FUNC_DEPLOY_CONTRACT, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deploy_contract(WasmAddress contract_address, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DEPLOY_CONTRACT, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_deploy_address() { - final WasmFunction function = new WasmFunction(FUNC_GET_DEPLOY_ADDRESS, Arrays.asList(), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public RemoteCall clone_contract(WasmAddress contract_address) { - final WasmFunction function = new WasmFunction(FUNC_CLONE_CONTRACT, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall clone_contract(WasmAddress contract_address, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CLONE_CONTRACT, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_clone_address() { - final WasmFunction function = new WasmFunction(FUNC_GET_CLONE_ADDRESS, Arrays.asList(), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public RemoteCall set_simple_address(WasmAddress addr) { - final WasmFunction function = new WasmFunction(FUNC_SET_SIMPLE_ADDRESS, Arrays.asList(addr), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_simple_address(WasmAddress addr, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_SIMPLE_ADDRESS, Arrays.asList(addr), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall migrate(WasmAddress contract_address) { - final WasmFunction function = new WasmFunction(FUNC_MIGRATE, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall migrate(WasmAddress contract_address, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_MIGRATE, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static CreateContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CreateContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CreateContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CreateContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CrowdFunding.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CrowdFunding.java deleted file mode 100644 index 47cb3f8823..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CrowdFunding.java +++ /dev/null @@ -1,212 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class CrowdFunding extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001781560027f7f0060017f0060017f017f60027f7f017f60037f7f7f017f60000060037f7f7f0060047f7f7f7f0060047f7f7f7f017f60057f7e7e7e7e0060037f7e7e017f60017f017e60037f7f7e0060027f7e0060037f7e7e0060037e7e7f006000017f60027f7e017f60017e017f60027e7e017f6000017e02a7031303656e760c706c61746f6e5f70616e6963000503656e760d706c61746f6e5f63616c6c6572000103656e760f706c61746f6e5f7472616e73666572000403656e7610706c61746f6e5f74696d657374616d70001403656e7611706c61746f6e5f63616c6c5f76616c7565000203656e760b706c61746f6e5f73686133000703656e760d706c61746f6e5f726576657274000503656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000603656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000603656e760d726c705f753132385f73697a65001303656e760f706c61746f6e5f726c705f75313238000f03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001003656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e740007036160050c0300040000020303110103040d0e01010309040701010000020403000101010002040002000004080104000a0a06020504060b0b0200020100050801020002000303030000000200010204021201020000000006020502020307000100090405017001040405030100020608017f0141e088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300130f5f5f66756e63735f6f6e5f65786974004e06696e766f6b6500440909010041010b0324292a0abba001600400106a0bf70502127f027e230041a0026b22032400200341206a419a081015210520034188016a22041033200441146a41003602002004420037020c20044102101f2104200341f8006a20051016200341e8006a20001016200341e0006a4100360200200341d8006a4200370300200341d0006a420037030020034200370348200341c8006a20032802782207200328027c101720032802682208200328026c1017210a2004200328024810182004200341f8006a10192004200341e8006a1019200428020c200441106a28020047044010000b2004280204210b2004280200210c200341306a101a2100200341b0016a2205200141106a280000360200200341a8016a2209200141086a290000370300200320012900003703a001200341d0016a4100360200200341c8016a220d4200370300200341c0016a220e4200370300200342003703b801200341b8016a4100101b2106200341e8016a220f20052802002201360200200341e0016a221020092903002215370300200341186a2001360200200341106a2015370300200320032903a00122163703d801200341f8016a2211201537030020034180026a2212200136020020034190026a2213201537030020034198026a2214200136020020032016370308200320163703f00120032016370388022006200341086a101c2002101d4101101b210120032802b8012106200141046a101e20002006101820004102101f2100201420052802002201360200201320092903002215370300200320032903a00122163703880220102015370300200f20013602002011201537030020122001360200200320163703d801200320163703f001200d2001360200200e2015370300200320163703b8012000200341b8016a41141020220120021021200128020c200141106a28020047044010000b200c200b200128020020012802041012200128020c22000440200120003602100b200a41046a101e200804402003200836026c0b200704402003200736027c0b200428020c22010440200420013602100b200341a0026a24000bec0101037f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b027f0240200220016b2202410b4f0440200241106a4170712204102d21032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b200320012002102e0b2103200220036a41003a000020000ba40201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a200410340340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b200241003602082002420037030020024120102c2003200228021420036b200228020022042002280204220120046b10052000200136020420002004360200200020022802083602082003450d00200220033602140b200241206a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103520026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110360c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110370b0b1600200020012802002200200128020420006b10201a0b190020001033200041146a41003602002000420037020c20000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031036280200210120022003417f6a360200200710384180104f044020072000410c6a280200417c6a10390b200141384f047f2001103520016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110360c020b20000c010b0240200710380d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103a0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020102d2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103b220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a103c2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103d200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a103e22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a103c2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103d200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103a0c010b20042001410175410120011b20032005103c2102418020102d2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103b22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103c21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003103d200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002103d052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a103e22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103c21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006103d200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007103f200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b6601037f410121030240034020024114460d01200120026a2104200241016a210220042d0000450d000b411521030b027f200041186a28020022020440200041086a280200200041146a280200200210360c010b20000b2202200228020020036a36020020000b0a0020002001420010400bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000103f200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011039200441106a24000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374102d0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001102e1a0b20002002360214200020033602102000200536020c20000f0b200041001007200028020422016a107141004100200120002802006a10082000107020000b2a01017f2000200120021009200028020422036a107120012002200320002802006a100a2000107020000b0b0020002001420010411a0b840101017f230041206b22032400200341086a1023200041306a200341186a280200360000200041286a200341106a29030037000020002003290308370020200041c8006a200137030010032101200041c8016a4200370300200041c0016a42f403370300200041f8016a41003a000020004190016a200120027c370300200341206a24000b210020004200370000200041106a4100360000200041086a4200370000200010010be00302037f047e23004180016b22012400200141d8006a1023200041f8016a2d0000044010060b200141f0006a2103200141f0006a10042102034020020440200442088620054238888421042002417f6a210220033100002005420886842105200341016a21030c010b0b20004198026a200141d8006a102522022002290300220620057c2207370300200241086a22022007200654ad200229030020047c7c370300200141206a20052004200041c0016a290300200041c8016a2903001026200041f0006a22022002290300220620057c2207370300200041f8006a22022007200654ad200229030020047c7c370300200041c0026a2200200141f0006a200141d8006a1027210320012903202104200328020022024504404130102d22022001290358370010200241286a4200370300200241206a200141e8006a280200360000200241186a200141e0006a290300370000200020012802702003200210280b200241286a2202200229030020047c370300200141c8006a41910810152102200141406b200141e8006a2802002203360200200141386a200141e0006a2903002204370300200141106a2004370300200141186a2003360200200120012903582204370330200120043703082002200141086a2005101420014180016a24000b7f01037f230041106b2203240020002003410c6a200110272204280200220245044041c000102d220241386a4200370300200241306a420037030020022001290000370010200241206a200141106a280000360000200241186a200141086a2900003700002000200328020c2004200210280b200341106a2400200241306a0b3b01017f230041106b22052400200520012002200320041072200529030021012000200541086a29030037030820002001370300200541106a24000b890101027f200041046a2103024020002802042200044002400340024002402002200041106a2204102f0440200028020022040d012001200036020020000f0b20042002102f450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b480020032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2000280204200310302000200028020841016a3602080b9c0102027f017e230041406a22012400200041f0006a290300200041c8006a290300544100200041f8006a290300501b450440200041e0016a41013a0000200141306a41800810152102200141186a102320002903702103200141106a200141286a280200360200200141086a200141206a2903003703002001200129031837030020022001200310140b200041f8016a41013a0000200141406b24000b930302047f017e230041b0016b220124000240200041e0016a2d000045044020004198026a2202200041206a220310252903005045044020014198016a102320012002200310252204290300370380012001200441086a2903003703880120014198016a20014180016a102b200141f0006a41800810152104200141d8006a10232002200310252903002105200141286a200141e8006a280200360200200141206a200141e0006a290300370300200120012903583703182004200141186a200510140b20002d00e001450d010b20014198016a102341002102034020024114470440200020026a41206a2d000020014198016a20026a2d0000470d02200241016a21020c010b0b20014198016a10232001200041f8006a290300370388012001200041f0006a22022903003703800120014198016a20014180016a102b200141c8006a41800810152103200141306a102320022903002105200141106a200141406b280200360200200141086a200141386a2903003703002001200129033037030020032001200510140b200141b0016a24000ba00102037f027e230041106b22032400200341003602082003420037030020034120102c20032802002202417f6a2104200328020420026b2102200141086a290300210520012903002106034020020440200220046a20063c0000200542388620064208888421062002417f6a2102200542088821050c010b0b200020032802002202200328020420026b10021a20020440200320023602040b200341106a24000bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102d21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001102e1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b0b002000410120001b10430bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3a01037f034020024114470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000bec0101037f200120002001463a000c03400240024020002001460d00200128020822022d000c0d002002200228020822032802002204460440024020032802042204450d0020042d000c0d002004410c6a21010c030b20012002280200470440200210312002280208220228020821030b200241013a000c200341003a000c200310320f0b02402004450d0020042d000c0d002004410c6a21010c020b20012002280200460440200210322002280208220228020821030b200241013a000c200341003a000c200310310b0f0b200241013a000c200320002003463a000c200141013a0000200321010c000b000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b160020004100360208200042003702002000410010370b2001017f20002001102d2202360200200020023602042000200120026a3602080b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2f01017f200028020820014904402001104320002802002000280204102e210220002001360208200020023602000b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103b22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a103c2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003103d200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110420b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102d21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110420b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b900101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103520036a0520030b41016a21040b027f200041186a28020022030440200041086a280200200041146a280200200310360c010b20000b2203200328020020046a36020020000b2a01017f200020022001100b200028020422036a107120022001200320002802006a100c2000107020000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002102e1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f41d808200041086a2202411076220041d8082802006a220336020041d40841d408280200220420026a41076a417871220236020002400240200341107420024d044041d808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102e41086a0541000b2100200141106a240020000b840202037f017e23004190036b22002400106a100d220110432202100e200041206a200041086a20022001104522014100104602400240200041206a10472203500d0041a408104820035104402000420037038003200042003703f80220004180036a210220011049410347044010000b2000410136028c032000200136022020002000418c036a360224200041206a200041f8026a104a200041206a2002104a200041206a104b220120002903f80220002903800310222001104c0c020b41a9081048200351044020014101104d0c020b4180081048200351044020014102104d0c020b41b30810482003520d0020014103104d0c010b10000b104e20004190036a24000b0c00200020012002411c104f0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001106f20012003280208200328020c106d36020c20032001106f410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114104f1a200341106a24000f0b20032001106f41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004106d106e2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b22012400200010500240024020001051450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001052200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2501017f02402000280204450d0020002802002d000041c001490d002000105321010b20010b4601017f230041206b22022400200241086a2000280200200028020428020010462001200241086a104737030020002802042200200028020041016a360200200241206a24000bd315020b7f027e230041f0016b220124002000420037000020004200370020200042d0a1be898a89dca361370318200041106a4100360000200041086a4200370000200041286a4200370000200041306a4100360000200141106a101a220220002903181021200228020c200241106a28020047044010000b200041206a210302402002280200220920022802042207100f2206450d002001410036029001200142003703880120014188016a2006102c200920072001280288012204200128028c01220820046b1010417f470440200141c0016a200441016a20082004417f736a104520031054200621050b2004450d002001200436028c010b200228020c22040440200220043602100b200545044020032000290300370300200341106a200041106a280200360200200341086a200041086a2903003703000b20004200370338200041406b22024289bfaf95eac0a9acb07f3703002002200041c8006a1055450440200020002903383703480b20004200370350200041d8006a22044200370300200041e0006a220242bde3dfd8b5b0a1b14e3703002002200041f0006a105645044020002000290350370370200041f8006a20042903003703000b200042003703800120004188016a220242c1b7f79984c987a402370300200220004190016a10554504402000200029038001370390010b200042003703a001200041a8016a22044200370300200041b0016a220242e8f1c8c781a9a0ded6003703002002200041c0016a1056450440200020002903a0013703c001200041c8016a20042903003703000b200041003a00d001200041d8016a2202428bdb9fc7bae89fdf5f3703002002200041e0016a1057450440200020002d00d0013a00e0010b200041003a00e801200041f0016a2202429edddd9587eb86befc003703002002200041f8016a1057450440200020002d00e8013a00f8010b20004184026a220942003702002000419c026a220a420037020020004190026a2202429fe688e382d7cac17e370300200020093602800220004198026a2204200a360200200141f0006a101a220720022903001021200728020c200741106a28020047044010000b02402007280200220520072802042203100f220b450440410021020c010b410021022001410036026820014200370360200141e0006a200b102c20052003200128026022082001280264220620086b1010417f47044002400240200141c8006a200841016a20062008417f736a10452202280204450d0020022802002d000041c001490d00200141b0016a20021058200141a0016a20021059200141386a2103200141206a2102034020012802b40120012802a40146044020012802b80120012802a801460d030b20014188016a200141b0016a105a200342003703002002410036020020014200370330200142003703182001420037031020014188016a105b410247044010000b200141e8016a22054100360200200141e0016a22064200370300200142003703d801200141c0016a20014188016a41001046200141c0016a200141d8016a105420022005280200360200200120012903d80137031020012006290300370318200141c0016a20014188016a410110462001200141c0016a105c2003200141086a290300220c37030020012001290300220d3703302004200141c0016a200141106a1027220628020045044041c000102d220541386a200c370300200541306a200d370300200541186a200129031837030020052001290310370310200541206a2002280200360200200420012802c0012006200510280b200141b0016a105d0c000b000b10000b200b21020b2008450d00200120083602640b200728020c22050440200720053602100b024020020d002000280280022102024020002802a002450d0020002802980221052000200a36029802200041003602a002200028029c0221032000410036029c022003410036020820052802042203200520031b2103034020032205450d012002200947044020052002290010370010200541206a200241206a280000360000200541186a200241186a2900003700002002290330210c200541386a200241386a290300370300200541306a200c370300024020052802082203450440410021030c010b2005200328020022064604402003410036020020032802042206450d012006105e21030c010b200341003602042006450d002006105e21030b2004200141106a200541106a105f2106200420012802102006200510282002106021020c010b0b0340200528020822050d000b200921020b034020022009460d012004200141106a41c000102d220541106a200241106a4130102e105f2103200420012802102003200510282002106021020c000b000b200041ac026a22094200370200200041c4026a220a4200370200200041b8026a220242deb0cac6a5eec3d46d370300200020093602a802200041c0026a2205200a360200200141f0006a101a220720022903001021200728020c200741106a28020047044010000b02402007280200220420072802042203100f220b450440410021020c010b410021022001410036026820014200370360200141e0006a200b102c20042003200128026022082001280264220620086b1010417f47044002400240200141c8006a200841016a20062008417f736a10452202280204450d0020022802002d000041c001490d00200141b0016a20021058200141a0016a20021059200141206a2102200141186a2104034020012802b40120012802a40146044020012802b80120012802a801460d030b20014188016a200141b0016a105a2002410036020020044200370300200142003703102001420037032820014188016a105b410247044010000b200141e8016a22034100360200200141e0016a22064200370300200142003703d801200141c0016a20014188016a41001046200141c0016a200141d8016a10542004200629030037030020022003280200360200200120012903d801370310200141c0016a20014188016a410110462001200141c0016a1047220c3703282005200141c0016a200141106a102722062802004504404130102d22032001290310370310200341286a200c370300200341206a2002280200360200200341186a2004290300370300200520012802c0012006200310280b200141b0016a105d0c000b000b10000b200b21020b2008450d00200120083602640b200728020c22040440200720043602100b024020020d0020002802a8022102024020002802c802450d0020002802c00221042000200a3602c002200041003602c80220002802c4022103200041003602c4022003410036020820042802042203200420031b2103034020032204450d012002200947044020042002290010370010200441206a200241206a280000360000200441186a200241186a290000370000200441286a2002290328370300024020042802082203450440410021030c010b2004200328020022064604402003410036020020032802042206450d012006105e21030c010b200341003602042006450d002006105e21030b2005200141106a200441106a105f2106200520012802102006200410282002106021020c010b0b0340200428020822040d000b200921020b034020022009460d014130102d22042002290310370310200441286a200241286a290300370300200441206a200241206a290300370300200441186a200241186a2903003703002005200141106a200441106a105f2103200520012802102003200410282002106021020c000b000b200141f0016a240020000bf812020d7f067e230041b0026b2201240020014198016a101a2206200041b8026a220229030010611018200620022903001021200628020c200641106a28020047044010000b2006280204210a2006280200210b20014180016a101a210920014188026a410036020020014180026a4200370300200141f8016a4200370300200142003703f0010240200041c8026a280200450440200141f0016a10620c010b200041c4026a2108200141f0016a4100101b210720002802c002210203402002200846044020074101101b1a05200141c0016a200241206a290300220e370300200141b8016a200241186a290300220f3703002001200229031022103703b00120022903282111200141e0016a2203200e370300200141d8016a2205200f370300200120103703d00120074100101b2104200141e0006a20032802002203360200200141d8006a2005290300220e370300200141c8006a2003360200200141406b200e370300200120012903d001220f370350200141f0006a200e370300200141f8006a2003360200200141a0026a200e370300200141a8026a20033602002001200f3703382001200f3703682001200f370398022004200141386a101c2011101d4101101b1a2002106021020c010b0b0b20012802f0012102200141f0016a410472101e2009200141d0016a1063220710642009200220072802046a20072802006b1018200920002802c802101f2104200041c4026a210820002802c002210203402002200847044020044102101f2105200141a8026a200241206a2802002203360200200141a0026a200241186a290300220e37030020012002290310220f37039802200141d8006a200e370300200141e0006a2003360200200141f0006a200e370300200141f8006a20033602002001200f3703502001200f37036820014180026a2003360200200141f8016a200e3703002001200f3703f0012005200141f0016a41141020200229032810212002106021020c010b0b0240200428020c200441106a280200460440200441046a2102200428020021030c010b200441046a2102100020042802002103200428020c2004280210460d0010000b200b200a200320022802001011200728020022020440200720023602040b200428020c22020440200420023602100b200628020c22020440200620023602100b20014198016a101a220720004190026a220229030010611018200720022903001021200728020c200741106a28020047044010000b2007280204210a2007280200210b20014180016a101a2109200141c8016a4100360200200141c0016a4200370300200141b8016a4200370300200142003703b0010240200041a0026a280200450440200141b0016a10620c010b2000419c026a2104200141b0016a4100101b2108200028029802210203402002200446044020084101101b1a05200141e8016a200241286a290300220e370300200141e0016a200241206a290300220f3703002001200229031022103703d0012001200241186a29030022113703d801200241386a29030021122002290330211320014188026a200e37030020014180026a2203200f370300200120113703f801200120103703f00120084100101b2105200141e0006a20032802002203360200200141d8006a20012903f801220e370300200141306a2003360200200141286a200e370300200120012903f001220f370350200141f0006a200e370300200141f8006a2003360200200141a0026a200e370300200141a8026a20033602002001200f3703202001200f3703682001200f370398022005200141206a101c2013201210404101101b1a2002106021020c010b0b0b20012802b0012102200141b0016a410472101e2009200141d0016a1063220610642009200220062802046a20062802006b1018200920002802a002101f21042000419c026a2108200028029802210203402002200847044020044102101f2105200141a8026a200241206a2802002203360200200141a0026a200241186a290300220e37030020012002290310220f37039802200141d8006a200e370300200141e0006a2003360200200141f0006a200e370300200141f8006a20033602002001200f3703502001200f37036820014180026a2003360200200141f8016a200e3703002001200f3703f0012005200141f0016a411410202002290330200241386a29030010411a2002106021020c010b0b0240200428020c200441106a280200460440200441046a2102200428020021030c010b200441046a2102100020042802002103200428020c2004280210460d0010000b200b200a200320022802001011200628020022020440200620023602040b200428020c22020440200420023602100b200728020c22020440200720023602100b200041f0016a200041f8016a1065200041d8016a200041e0016a1065200041b0016a200041c0016a106620004188016a20004190016a1067200041e0006a200041f0006a1066200041406b200041c8006a1067200141d0016a101a2202200029031810611018200220002903181021200228020c200241106a28020047044010000b2002280204210820022802002107200141b0016a101a210320014188026a410036020020014180026a22064200370300200141f8016a22094200370300200141f8006a200041306a22042800002205360200200141f0006a200041286a220a290000220f3703002000290020210e200141106a200f370300200141186a2005360200200142003703f0012001200e370368200141a0026a200f370300200141a8026a2005360200200141a0016a220b200f370300200141a8016a220c20053602002001200e3703082001200e370398022001200e37039801200141f0016a200141086a101c210520012802f001210d200541046a101e200320014198026a1063220510642003200d20052802046a20052802006b101820014190016a2004280000220436020020014188016a200a290000220e37030020012000290020220f37038001200b200e370300200c2004360200200141d8006a200e370300200141e0006a20043602002001200f370398012001200f370350200620043602002009200e3703002001200f3703f00102402003200141f0016a41141020220328020c200341106a280200460440200341046a2104200328020021060c010b200341046a2104100020032802002106200328020c2003280210460d0010000b20072008200620042802001011200528020022040440200520043602040b200328020c22050440200320053602100b200228020c22030440200220033602100b200141b0026a24000b3101017f230041d0026b2202240020001049410147044010000b2002104b220020011101002000104c200241d0026a24000b880101037f41c408410136020041c8082802002100034020000440034041cc0841cc082802002201417f6a2202360200200141014845044041c4084100360200200020024102746a22004184016a280200200041046a28020011010041c408410136020041c80828020021000c010b0b41cc08412036020041c808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106b20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000106b20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001050200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110692204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000106f200128020c210003402000450d01200141002001280208220320032000106d22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bcf0102037f027e230041406a2202240020001050200241386a20001052200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10000b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a20022802382003102e1a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000bc10101057f230041406a22022400200241286a101a220320002903001021200328020c200341106a28020047044010000b02402003280200220020032802042205100f22064504400c010b2002410036022020024200370318200241186a2006102c2000200520022802182200200228021c220520006b1010417f47044020012002200041016a20052000417f736a10451047370300200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040be00102057f017e230041d0006b22022400200241386a101a220320002903001021200328020c200341106a28020047044010000b02402003280200220020032802042205100f22064504400c010b2002410036023020024200370328200241286a2006102c2000200520022802282200200228022c220520006b1010417f4704402002200241106a200041016a20052000417f736a1045105c200229030021072001200241086a29030037030820012007370300200621040b2000450d002002200036022c0b200328020c22000440200320003602100b200241d0006a240020040bc10201067f230041d0006b22022400200241306a101a220420002903001021200428020c200441106a28020047044010000b02402004280200220320042802042206100f2207450440410021000c010b410021002002410036022820024200370320200241206a2007102c20032006200228022022052002280224220320056b1010417f470440200241086a200541016a20032005417f736a1045220010500240024020001051450d002000280204450d0020002802002d000041c001490d010b10000b200241c8006a20001052200228024c220041024f044010000b41002106200228024821030340200004402000417f6a210020032d00002106200341016a21030c010b0b2001200641ff01714100473a0000200721000b2005450d00200220053602240b200428020c22030440200420033602100b200241d0006a240020000b0a0020002001410110680b0a0020002001410010680b160020002001280204200141086a280200411c104f1a0b210002402000280204044020002802002d000041bf014b0d010b10000b200010530b9e0102027f027e230041106b22022400200110500240024020011051450d002001280204450d0020012802002d000041c001490d010b10000b200241086a20011052200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000bb50102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a2001410020042002106d106e20002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a102f044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b5101037f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000101d210220012802002103200241046a101e200141206a240020030b3901017f027f200041186a28020022010440200041086a280200200041146a280200200110360c010b20000b2201200128020041016a3602000b30002000410036020820004200370200200041011034200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004103720002802040520020b20002802006a20032001102e1a2000200028020420016a3602040bce0201067f230041d0006b22022400200241186a101a2203200029030010611018200320002903001021200328020c200341106a28020047044010000b20032802042106200328020021072002101a2100200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a20012d0000ad420010401a20022802302105200241306a410472101e2000200241306a1063220410642000200520042802046a20042802006b1018200020012d0000ad420010411a0240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b20072006200520012802001011200428020022010440200420013602040b200028020c22040440200020043602100b200328020c22000440200320003602100b200241d0006a24000bd40201077f230041d0006b22022400200241186a101a2204200029030010611018200420002903001021200428020c200441106a28020047044010000b20042802042106200428020021072002101a2103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a2001290300200141086a22052903001040210020022802302108200041046a101e2003200241306a1063220010642003200820002802046a20002802006b101802402003200129030020052903001041220128020c200141106a280200460440200141046a2103200128020021050c010b200141046a2103100020012802002105200128020c2001280210460d0010000b20072006200520032802001011200028020022030440200020033602040b200128020c22000440200120003602100b200428020c22010440200420013602100b200241d0006a24000b8a0201067f230041406a22042400200441286a101a2202200029030010611018200220002903001021200228020c200241106a28020047044010000b2002280204210620022802002107200441106a101a2100200129030010612105200020041063220310642000200520032802046a20032802006b10182000200129030010210240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b20072006200520012802001011200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000be50101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001106f20004100200428020c2201200428020822022001106d22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000bff0201037f200028020445044041000f0b2000105041012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3501017f230041106b220041e0880436020c41d008200028020c41076a417871220036020041d408200036020041d8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000106c200010696a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2701017f230041206b22022400200241086a200020014114104f106b2100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f20011069220220012802044b044010000b200020012001106c2002106e0b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210076a1071200120002802006a22012002200110080c010b0b0b3601017f200028020820014904402001104320002802002000280204102e210220002001360208200020023602000b200020013602040bdd0402027f047e024002402002500440200450044020012003802101420021020c030b0c010b0240024020035004402004500d03200150044020022004802101420021020c050b20042004427f7c83500440200220047a882101420021020c050b200479a7200279a76b2205413f4f0d022002413f20056bad2207862001200541016a2205ad2208888421092002200888210a20012007862108420021070c010b0240027e200450044020032003427f7c8350044020034201510d07200242c00020037a22077d862001200788842101200220078821020c070b200379a7200279a76b41c1006a220541c00046044020010c020b2005413f4d0440200241c00020056bad22078620012005ad2208888421092002200888210a20012007862108420021070c040b200241800120056bad2207862001200541406aad22098884210820022009882109200120078621070c030b200479a7200279a76b220641c0004f0d03200641016a220541c000470d0120010b21082002210941c00021050c010b2002413f20066bad22088620012005ad220a888421092002200a88210a200120088621080b41002106034020050440200a4201862009423f888422022002427f8520047c20094201862008423f88842209427f85220220037c200254ad7c423f8722022004837d20092002200383220154ad7d210a200920017d210920084201862007423f888421082005417f6a21052006ad20074201868421072002a741017121060c010b0b20084201862007423f888421022006ad2007420186427e838421010c020b0b42002101420021020b20002001370300200020023703080b0b4801004180080b41636865636b476f616c52656163686564007472616e73666572007472616e736665723100696e69740063726f776446756e6400736166655769746864726177616c"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_CROWDFUND = "crowdFund"; - - public static final String FUNC_CHECKGOALREACHED = "checkGoalReached"; - - public static final String FUNC_SAFEWITHDRAWAL = "safeWithdrawal"; - - public static final WasmEvent TRANSFER1_EVENT = new WasmEvent("transfer1", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Uint64.class))); - ; - - public static final WasmEvent TRANSFER2_EVENT = new WasmEvent("transfer2", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Uint64.class) , new WasmEventParameter(Boolean.class))); - ; - - protected CrowdFunding(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CrowdFunding(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getTransfer1Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER1_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer1EventResponse typedResponse = new Transfer1EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint64) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer1EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer1EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER1_EVENT, log); - Transfer1EventResponse typedResponse = new Transfer1EventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint64) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable transfer1EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER1_EVENT)); - return transfer1EventObservable(filter); - } - - public List getTransfer2Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER2_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint64) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Boolean) eventValues.getNonIndexedValues().get(2); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer2EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer2EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER2_EVENT, log); - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint64) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Boolean) eventValues.getNonIndexedValues().get(2); - return typedResponse; - } - }); - } - - public Observable transfer2EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER2_EVENT)); - return transfer2EventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Uint64 _fundingGoalInlats, Uint64 _durationInMinutes) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_fundingGoalInlats,_durationInMinutes)); - return deployRemoteCall(CrowdFunding.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Uint64 _fundingGoalInlats, Uint64 _durationInMinutes) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_fundingGoalInlats,_durationInMinutes)); - return deployRemoteCall(CrowdFunding.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint64 _fundingGoalInlats, Uint64 _durationInMinutes) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_fundingGoalInlats,_durationInMinutes)); - return deployRemoteCall(CrowdFunding.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint64 _fundingGoalInlats, Uint64 _durationInMinutes) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_fundingGoalInlats,_durationInMinutes)); - return deployRemoteCall(CrowdFunding.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall crowdFund() { - final WasmFunction function = new WasmFunction(FUNC_CROWDFUND, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall crowdFund(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CROWDFUND, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall checkGoalReached() { - final WasmFunction function = new WasmFunction(FUNC_CHECKGOALREACHED, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall checkGoalReached(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CHECKGOALREACHED, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall safeWithdrawal() { - final WasmFunction function = new WasmFunction(FUNC_SAFEWITHDRAWAL, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall safeWithdrawal(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SAFEWITHDRAWAL, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static CrowdFunding load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CrowdFunding(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CrowdFunding load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CrowdFunding(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Transfer1EventResponse { - public Log log; - - public String topic; - - public WasmAddress arg1; - - public Uint64 arg2; - } - - public static class Transfer2EventResponse { - public Log log; - - public String topic; - - public WasmAddress arg1; - - public Uint64 arg2; - - public Boolean arg3; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CryptographicFunction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CryptographicFunction.java deleted file mode 100644 index f350591bb3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/CryptographicFunction.java +++ /dev/null @@ -1,85 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class CryptographicFunction extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000013d0b60027f7f0060037f7f7f0060017f017f60000060017f0060027f7f017f60037f7f7f017f60047f7f7f7f017f60047f7f7f7f006000017f60017f017e02f5010b03656e7610706c61746f6e5f65637265636f766572000703656e7610706c61746f6e5f726970656d64313630000103656e760d706c61746f6e5f736861323536000103656e760c706c61746f6e5f70616e6963000303656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000103656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000103656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000903656e7610706c61746f6e5f6765745f696e707574000403656e760d706c61746f6e5f72657475726e0000032221030101000102060302070104000a020005020400060003020005000003020208000405017001030305030100020608017f0141e088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974002106696e766f6b6500120908010041010b020d0f0aac3021040010270b370020004200370000200041106a4100360000200041086a4200370000200120022802002201200228020420016b41ff0171200010001a0b2c00200041003602082000420037020020004114100e20022802002201200228020420016b200028020010010bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001101021060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110111a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b2c00200041003602082000420037020020004120100e20022802002201200228020420016b200028020010020b0b002000410120001b10130bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bc20a020a7f027e230041d0026b22002400102710082201101322021009200041206a200020022001411c1014220341001015200041206a1016024002402000280224450d00200041206a10160240200028022022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028022441014d04401003200028022021020b20022d00010d010c020b200441bf014b0d012000280224200141ff017141ca7e6a22014d04401003200028022021020b200120026a2d0000450d010b2000280224450d0020022d000041c001490d010b10030b20004180016a200041206a1017200028028401220141094f044010030b20002802800121020340200104402001417f6a21012002310000200a42088684210a200241016a21020c010b0b02400240200a500d004180081018200a510440200310194101460d020c010b4185081018200a510440200041386a4200370300200041306a4200370300200041286a420037030020004200370320200041003602482000420037034020031019410347044010030b200041406b2102200041e8016a200341011015200041e8016a1016200041b8016a200041e8016a101720002802bc0121010240024020002802ec01450d00200141204b0d0020002802e8012d000041c001490d010b10030b20004198016a2204420037030020004190016a2205420037030020004188016a22074200370300200042003703800120002001412020014120491b22016b41a0016a20002802b801200110111a200041286a22012007290300370300200041306a22062005290300370300200041386a220820042903003703002000200029038001220a3703502000200a37032020004180016a20034102101520004180016a2002101a200041d8006a22092001290300370300200041e0006a22012006290300370300200041e8006a2206200829030037030020002000290320370350200041f0006a2002101b21032004200629030037030020052001290300370300200720092903003703002000200029035037038001200041a0016a20004180016a2003100c200041b8016a101c2105200041e0016a200041b0016a2802002202360200200041d8016a200041a8016a290300220a3703004100210120004180026a4100360200200041f8016a4200370300200041f0016a4200370300200020002903a001220b3703d001200042003703e80120004190026a200a37030020004198026a2002360200200041a8026a200a370300200041b0026a20023602002000200b370388022000200b3703a002200041c8026a2002360200200041c0026a200a3703002000200b3703b802410121040240034020014114460d01200041b8026a20016a2102200141016a210120022d0000450d000b411521040b200020043602e801200041e8016a410472101d20052004101e20004198026a200041b0016a280200220136020020004190026a200041a8016a290300220a370300200020002903a001220b37038802200041a8026a200a370300200041b0026a2001360200200041c0026a200a370300200041c8026a20013602002000200b3703a0022000200b3703b802200041f8016a2001360200200041f0016a200a3703002000200b3703e8012005200041e8016a4114101f220128020c200141106a28020047044010030b20012802002001280204100a200128020c22020440200120023602100b200328020022010440200320013602040b20002802402201450d02200020013602440c020b419b081018200a5104402003410110200c020b41b1081018200a520d002003410210200c010b10030b1021200041d0026a24000b9b0101047f230041106b220124002001200036020c2000047f41d808200041086a2202411076220041d8082802006a220336020041d40841d408280200220420026a41076a417871220236020002400240200341107420024d044041d808200341016a360200200041016a21000c010b2000450d010b200040000d0010030b20042001410c6a4104101141086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000102820024f0d002003410471044010030c010b200042003702000b02402003411071450d002000102820024d0d0020034104710440100320000f0b200042003702000b20000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102320012003280208200328020c102436020c200320011023410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410141a200341106a24000f0b20032001102341002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041024102a2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010030b0240200028020022012d0000418101470d00200028020441014d047f100320002802000520010b2c00014100480d0010030b0bd50101047f200110222204200128020422024b04401003200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001023200128020c210003402000450d01200141002001280208220320032000102422046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bcb0101037f230041206b22022400024002402000280204044020002802002d000041c001490d010b20024100360208200242003703000c010b200241186a2000101720022802182103200241106a20001017200228021021042000102221002002410036020820024200370300200020046a20036b2200450d0020022000102520004101480d002002200228020420032000101120006a3602040b2001280200044020014100360208200142003702000b2001200228020036020020012002290204370204200241206a24000b5a01017f20004200370200200041003602080240200128020420012802006b2202450d002000200210252001280204200128020022026b22014101480d0020002802042002200110111a2000200028020420016a3602040b20000b29002000410036020820004200370200200041001026200041146a41003602002000420037020c20000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b1300200028020820014904402000200110260b0b9c0101017f2000200120021006200028020422036a102b20012002200320002802006a10070340024020002802102201200028020c460d00200141786a2802004504401003200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210046a102b200120002802006a22012002200110050c010b0b20000b8e0301057f230041f0006b22022400200241003602102002420037030820001019410247044010030b200241d0006a200041011015200241d0006a200241086a101a200241286a2002200241186a200241086a101b22052001110100200241386a101c2101200241e8006a4100360200200241e0006a4200370300200241d8006a420037030020024200370350024020022802282204200228022c2206460440410121000c010b410121000240200620046b2203410146044020042c0000417f4a0d020c010b20034138490d00200620046b41016a210003402003450d02200041016a2100200341087621030c000b000b200341016a21000b20022000360250200241d0006a410472101d20012000101e200120022802282203200228022c20036b101f220328020c200341106a28020047044010030b20032802002003280204100a200328020c22000440200320003602100b2002280228220304402002200336022c0b200528020022030440200520033602040b2002280208220304402002200336020c0b200241f0006a24000b880101037f41c408410136020041c8082802002100034020000440034041cc0841cc082802002201417f6a2202360200200141014845044041c4084100360200200020024102746a22004184016a280200200041046a28020011040041c408410136020041c80828020021000c010b0b41cc08412036020041c808200028020022003602000c010b0b0bff0201037f200028020445044041000f0b2000101641012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100320002802040520010b4102490d0020002802002d00010d0010030b200241054f044010030b20002802002d000145044010030b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100320002802040520010b4102490d0020002802002d00010d0010030b200241054f044010030b20002802002d000145044010030b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10030b20020b2101017f20011022220220012802044b044010030b20002001200110292002102a0b2701017f230041206b22022400200241086a200020014114101410282100200241206a240020000b2001017f2000200110102202360200200020023602042000200120026a3602080b2f01017f2000280208200149044020011013200028020020002802041011210220002001360208200020023602000b0b3501017f230041106b220041e0880436020c41d008200028020c41076a417871220036020041d408200036020041d8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001029200010226a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b3601017f2000280208200149044020011013200028020020002802041011210220002001360208200020023602000b200020013602040b0b4a01004180080b43696e69740063616c6c5f706c61746f6e5f65637265636f7665720063616c6c5f706c61746f6e5f726970656d643136300063616c6c5f706c61746f6e5f736861323536"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_CALL_PLATON_ECRECOVER = "call_platon_ecrecover"; - - public static final String FUNC_CALL_PLATON_RIPEMD160 = "call_platon_ripemd160"; - - public static final String FUNC_CALL_PLATON_SHA256 = "call_platon_sha256"; - - protected CryptographicFunction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected CryptographicFunction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CryptographicFunction.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CryptographicFunction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CryptographicFunction.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(CryptographicFunction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall call_platon_ecrecover(byte[] hash, byte[] signature) { - final WasmFunction function = new WasmFunction(FUNC_CALL_PLATON_ECRECOVER, Arrays.asList(hash,signature), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public RemoteCall call_platon_ripemd160(byte[] data) { - final WasmFunction function = new WasmFunction(FUNC_CALL_PLATON_RIPEMD160, Arrays.asList(data, Void.class), byte[].class); - return executeRemoteCall(function, byte[].class); - } - - public RemoteCall call_platon_sha256(byte[] data) { - final WasmFunction function = new WasmFunction(FUNC_CALL_PLATON_SHA256, Arrays.asList(data, Void.class), byte[].class); - return executeRemoteCall(function, byte[].class); - } - - public static CryptographicFunction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new CryptographicFunction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static CryptographicFunction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new CryptographicFunction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Donate.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Donate.java deleted file mode 100644 index 54ec607791..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Donate.java +++ /dev/null @@ -1,359 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class Donate extends WasmContract { - private static String BINARY_0 = "0x0061736d010000000182011560027f7f0060017f017f60017f0060027f7f017f60037f7f7f017f60037f7f7f0060000060047f7f7f7f0060047f7f7f7f017f60037f7e7e017f60027e7e017f60047f7f7e7e00600c7f7f7e7e7e7e7e7e7e7e7e7e0060027f7e0060037f7e7e0060057f7e7e7e7e0060037e7e7f006000017f60017e017f6000017e60017f017e02a5031303656e760c706c61746f6e5f70616e6963000603656e760d706c61746f6e5f63616c6c6572000203656e7610706c61746f6e5f74696d657374616d70001303656e7611706c61746f6e5f63616c6c5f76616c7565000103656e760b706c61746f6e5f73686133000703656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65000a03656e760f706c61746f6e5f726c705f75313238001003656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001103656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e74000703656e760d706c61746f6e5f726576657274000603656e760d706c61746f6e5f72657475726e00000387018501060e0303000104040000010309020309050c010302000b030800020f0200030000020200000000000000000300030407010302020005010000020000010400000004010004080204030501060405020100140100000102000000000002010001000100060801010003030d04000000000201041201000000010a020305060101030700020004050170010e0e05030100020608017f0141c08a040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300130f5f5f66756e63735f6f6e5f65786974007606696e766f6b65005e0913010041010b0d2830333435363738393a3b3c3d0ac2b501850105001090010ba80301097f230041a0016b22032400200341950810152105200341e8006a410210162104200341d8006a2005101741141018220620004114101921052003200641146a22003602502003200036024c20032005360248200341406b4100360200200341386a4200370300200341306a420037030020034200370328200341286a20032802582206200328025c101a20052000101a210820042003280228101b2004200341d8006a101c2004200341c8006a101c200428020c200441106a28020047044010000b2004280204210720042802002109200341106a101d210020034198016a410036020020034190016a420037030020034188016a4200370300200342003703800120034180016a4100101e20012002101f4101101e210a200328028001210b200a41046a10202000200b101b200041011021200120021022220028020c200041106a28020047044010000b20092007200028020020002802041010200028020c22070440200020073602100b200841046a1020200504402003200536024c0b200604402003200636025c0b200428020c22000440200420003602100b200341a0016a24000bec0101037f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b027f0240200220016b2202410b4f0440200241106a4170712204101821032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b20032001200210190b2103200220036a41003a000020000b1d002000104c200041146a41003602002000420037020c2000200110210ba40201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a2004104d0340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b200241003602082002420037030020024120104e2003200228021420036b200228020022042002280204220120046b10042000200136020420002004360200200020022802083602082003450d00200220033602140b200241206a24000b0b002000410120001b105d0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104f20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110500c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110530b0b1600200020012802002200200128020420006b10541a0b19002000104c200041146a41003602002000420037020c20000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031050280200210120022003417f6a360200200710554180104f044020072000410c6a280200417c6a10520b200141384f047f2001104f20016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110500c020b20000c010b0240200710550d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10560c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010182105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1057220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10582102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021059200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a105a22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10582102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021059200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10560c010b20042001410175410120011b200320051058210241802010182106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a105722013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200105821032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031059200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021059052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a105a22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210105821062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061059200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071051200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b900101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003104f20036a0520030b41016a21040b027f200041186a28020022030440200041086a280200200041146a280200200310500c010b20000b2203200328020020046a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001051200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011052200441106a24000b9f0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410180b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110191a0b20002002360214200020033602102000200536020c20000f0b200041001005200028020422016a10970141004100200120002802006a1006200010960120000b2c01017f2000200220011009200028020422036a10970120022001200320002802006a100a200010960120000bce0301077f23004190016b22032400200341306a410110162104200341206a20001017200341e0006a4100360200200341d8006a22054200370300200341d0006a2208420037030020034200370348200341c8006a200328022022072003280224101a210020032802482106200041046a102020042006101b2004200341206a101c200428020c200441106a28020047044010000b2004280204210620042802002109200341086a101d21002005200141106a2800003602002008200141086a290000370300200341e4006a200241086a290000370200200341ec006a200241106a280000360200200320012900003703482003200229000037025c20034188016a410036020020034180016a4200370300200341f8006a420037030020034200370370200341f0006a4100101e2201200341c8006a104a2001200341dc006a2202104a20014101101e210120032802702105200141046a102020002005101b2000410210212201200341c8006a104b20012002104b200128020c200141106a28020047044010000b20092006200128020020012802041010200128020c22020440200120023602100b20070440200320073602240b200428020c22010440200420013602100b20034190016a24000bc40202027f027e230041206b220c24002001200c41086a1025102645044010110b2004200256200520035620032005511b45044010110b200620078450044010110b2008200656200920075620072009511b45044010110b200a200b8450044010110b200c41086a1027200041306a200c41186a280200360000200041286a200c41106a2903003700002000200c290308370020200141086a290000210e200141106a280000210d2001290000210f200041d8026a200b370300200041d0026a200a370300200041a8026a2009370300200041a0026a2008370300200041f8016a2007370300200041f0016a2006370300200041c8016a2005370300200041c0016a200437030020004198016a200337030020004190016a2002370300200041e8006a200d360000200041e0006a200e370000200041d8006a200f370000200c41206a24000b4401017f20004200370000200041106a4100360000200041086a42003700004113210103402001417f46450440200020016a41003a00002001417f6a21010c010b0b20000b0b002000200110444101730b210020004200370000200041106a4100360000200041086a4200370000200010010be10202047f027e230041d0006b22032400200341306a2104200341306a10032102034020020440200742088620064238888421072002417f6a210220043100002006420886842106200441016a21040c010b0b200020012006200710290240200041fc026a280200220220004180036a220428020047044020022001290000370000200241106a200141106a280000360000200241086a200141086a290000370000200020002802fc0241146a3602fc020c010b200341306a200041f8026a2205200220002802f8026b41146d220241016a102a20022004102b220228020822042001290000370000200441106a200141106a280000360000200441086a200141086a2900003700002002200228020841146a36020820052002102c2002102d0b200341186a1027200341106a200341286a280200360200200341086a200341206a290300370300200320032903183703002003200620071014200341d0006a24000ba40202017f027e230041206b2204240010022105024020004190016a29030020055620004198016a29030022062005423f8722055620052006511b45044010022105200041c0016a29030020055a200041c8016a29030022062005423f8722055a20052006511b0d010b10110b200041c0036a2d0000044010110b200041d0026a290300200041fc026a280200200041f8026a2802006b41146dad5a4101200041d8026a290300501b45044010110b200041a0036a200110312d000045044010110b2001200441086a1025102645044010110b0240200041f0016a290300200256200041f8016a290300220520035620032005511b450440200041a0026a29030020025a200041a8026a290300220520035a20032005511b0d010b10110b200441206a24000b3001017f2001200028020820002802006b41146d2200410174220220022001491b41cc99b3e600200041e6cc9933491b0b4c01017f2000410036020c200041106a2003360200200104402001104921040b2000200436020020002004200241146c6a220236020820002004200141146c6a36020c2000200236020420000b8d0101037f200120012802042000280204200028020022046b2203416c6d41146c6a2202360204200341004a044020022004200310191a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001416c6a22013602080c010b0b0b32002000102f2003200156200420025620022004511b45044010110b20004198016a200237030020004190016a20013703000b2d01017f230041206b22012400200141086a1027200141086a200041206a104445044010110b200141206a24000b15002000102f200041a0036a2001103141013a00000b7401037f230041106b2203240020002003410c6a2001104122042802002202450440412410182202200129000037000d200241216a41003a00002002411d6a200141106a280000360000200241156a200141086a2900003700002000200328020c2004200210420b200341106a2400200241216a0b4e02027f017e2000102f200041a0036a210241002100034020042001280204200128020022036b41146dad5404402002200020036a103141013a0000200041146a2100200442017c21040c010b0b0b15002000102f200041a0036a2001103141003a00000b1c002000102f200041c0036a2d0000044010110b200041013a00c0030b1d002000102f200041c0036a2d000045044010110b200041003a00c0030b8b0202057f027e230041f0006b220224002000102f2001200241c8006a1025102645044010110b200020012900002207370020200041306a200141106a22042800002203360000200041286a200141086a22002900002208370000200241206a22052008370300200241286a22062003360200200241086a22032000290000370300200241106a220020042800003602002002200737031820022001290000370300200241d8006a2000280200360200200241d0006a200329030037030020022002290300370348200241386a2005290300370300200241406b200628020036020020022002290318370330200241e0006a4180081015200241306a200241c8006a1023200241f0006a24000b2c0020002001290020370000200041106a200141306a280000360000200041086a200141286a2900003700000b3200200041106a200141e8006a280000360000200041086a200141e0006a2900003700002000200141d8006a2900003700000b1e00200020014198016a290300370308200020014190016a2903003703000b1e002000200141c8016a2903003703082000200141c0016a2903003703000b1e002000200141f8016a2903003703082000200141f0016a2903003703000b1e002000200141a8026a2903003703082000200141a0026a2903003703000b1e002000200141d8026a2903003703082000200141d0026a2903003703000b3e01017f2000420037020020004100360208200128020420012802006b220204402000200241146d104720012802002001280204200041046a10480b20000bac0201087f230041106b22032400200042003702042000200041046a2204360200200141a4036a2109200141a0036a28020021070340200720094704402007410d6a210520002802042108027f0240024020042000280200460440200421010c010b20042106024020082202044003402002220128020422020d000c020b000b03402006280208220128020020064621022001210620020d000b0b2001410d6a20051040450d010b20084504402003200436020c20040c020b2003200136020c200141046a0c010b20002003410c6a200510410b2201280200450440200328020c2106412410182202411a6a2005410d6a290000370000200241156a200541086a2900003700002002200529000037000d200020062001200210420b2007104321070c010b0b200341106a24000b3a01037f034020024114470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000b890101027f200041046a21030240200028020422000440024003400240024020022000410d6a220410400440200028020022040d012001200036020020000f0b200420021040450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b20032001280200470440200110452001280208220128020821020b200141013a000c200241003a000c200210460c010b02402004450d0020042d000c0d002004410c6a21030c020b20032001280200460440200110462001280208220128020821020b200141013a000c200241003a000c200210450b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b3901027f41012103034002402002411447047f200020026a2d0000200120026a2d0000460d0141000520030b0f0b200241016a21020c000b000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b2301017f20002001104922023602002000200236020420002002200141146c6a3602080b2e00200120006b220141014e044020022802002000200110191a20022002280200200141146e41146c6a3602000b0b0900200041146c10180ba40102027f027e230041e0006b22022400200241286a200141106a2800002203360200200241206a200141086a290000220537030020012900002104200241086a2005370300200241106a200336020020022004370318200241386a2005370300200241406b2003360200200241d0006a2005370300200241d8006a200336020020022004370300200220043703302002200437034820002002105b1a200241e0006a24000ba80102027f027e230041e0006b22022400200241106a200141106a2800002203360200200241086a200141086a2900002204370300200220012900002205370300200241206a2004370300200241286a2003360200200241386a2004370300200241406b20033602002002200537031820022005370330200241d8006a2003360200200241d0006a2004370300200220053703482000200241c8006a411410541a200241e0006a24000b160020004100360208200042003702002000410010530b2001017f2000200110182202360200200020023602042000200120026a3602080bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001101821060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110191a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2f01017f200028020820014904402001105d200028020020002802041019210220002001360208200020023602000b0b2c01017f2000200120021007200028020422036a10970120012002200320002802006a1008200010960120000b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a105722023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10582103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031059200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001105c0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101821040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001105c0b20020b6601037f410121030240034020024114460d01200120026a2104200241016a210220042d0000450d000b411521030b027f200041186a28020022020440200041086a280200200041146a280200200210500c010b20000b2202200228020020036a36020020000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210191a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f41b00a200041086a2202411076220041b00a2802006a220336020041ac0a41ac0a280200220420026a41076a417871220236020002400240200341107420024d044041b00a200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101941086a0541000b2100200141106a240020000ba10c02097f0c7e23004190056b22002400109001100b2201105d2203100c200041c0016a200041086a20032001105f220241001060200041c0016a106102400240200041c0016a1062450d0020002802c401450d0020002802c0012d000041c001490d010b10000b200041206a200041c0016a10632000280224220141094f044010000b200028022021030340200104402001417f6a210120033100002009420886842109200341016a21030c010b0b024002402009500d00419d081064200951044020004188016a22034200370300200041f8006a22044200370300200041e8006a22054200370300200041d8006a22064200370300200041c8006a22074200370300200041306a22084100360200200042003703800120004200370370200042003703602000420037035020004200370340200042003703282000420037032020004180016a210120021065410747044010000b2000410136029001200020023602a801200020004190016a3602ac01200041c0016a200241011060200041c0016a200041206a1066200020002802900141016a36029001200041a8016a200041406b1067200041a8016a200041d0006a1067200041a8016a200041e0006a1067200041a8016a200041f0006a1067200041a8016a20011067200041c0016a10682101200041a0016a2008280200220236020020004198016a2000290328220937030020002000290320220a370390012007290300210b2006290300210c2005290300210d2004290300210e2003290300210f200029034021102000290350211120002903602112200029037021132000290380012114200041b8016a2002360200200041b0016a20093703002000200a3703a8012001200041a8016a2010200b2011200c2012200d2013200e2014200f1024200110690c020b41a2081064200951044020024101106a0c020b41a90810642009510440200041386a22014200370300200042003703302000420037032820004200370320200041306a210320021065410347044010000b200041013602a801200020023602c0012000200041a8016a3602c401200041c0016a200041206a1067200041c0016a20031067200041c0016a106822032000290320200029032820002903302001290300102e200310690c020b41c0081064200951044020024102106a0c020b41cf0810642009510440200041003602b001200042003703a80120021065410247044010000b200041c0016a200241011060200041c0016a200041a8016a106b200041c0016a10682203200041206a200041a8016a103e22011032200128020022020440200120023602040b2003106920002802a8012201450d02200020013602ac010c020b41e2081064200951044020024103106a0c020b41f6081064200951044020024104106c0c020b41fc081064200951044020024105106c0c020b4184091064200951044020024106106a0c020b4196091064200951044020024107106d0c020b419f091064200951044020024108106d0c020b41aa091064200951044020024109106e0c020b41b909106420095104402002410a106e0c020b41c809106420095104402002410b106e0c020b41d809106420095104402002410c106e0c020b41e809106420095104402002410d106e0c020b41f809106420095104402002106f200041a8016a200041c0016a1068220241f8026a103e2103200041206a101d220120031070101b200120031071200128020c200141106a28020047044010000b200128020020012802041012200128020c22040440200120043602100b200328020022010440200320013602040b200210690c020b41820a106420095104402002106f200041a8016a200041c0016a10682203103f200041206a101d2201200041a8016a1072101b2001200041a8016a1073200128020c200141106a28020047044010000b200128020020012802041012200128020c22020440200120023602100b200310690c020b418f0a10642009520d002002106f200041c0016a1068220241c0036a2d00002103200041206a101d220120031074101b200120031075200128020c200141106a28020047044010000b200128020020012802041012200128020c22030440200120033602100b200210690c010b10000b107620004190056a24000b0c00200020012002411c10770bcf0202067f017e230041106b220324002001280208220520024b0440200341086a200110950120012003280208200328020c10930136020c20032001109501410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410771a200341106a24000f0b2003200110950141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041093011094012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001061200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110782204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2501017f02402000280204450d0020002802002d000041c001490d002000107921010b20010bcf0102037f027e230041406a2202240020001061200241386a20001063200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10000b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a2002280238200310191a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000b6302017f017e230041306b22022400200241186a200028020020002802042802001060200241086a200241186a107a200229030821032001200241106a2903003703082001200337030020002802042200200028020041016a360200200241306a24000bcf12010c7f230041c0016b220324002000420037000020004200370020200042aecfb0eaafca83d5f800370318200041106a22014100360000200041086a22064200370000200041286a4200370000200041306a4100360000200041186a200041206a2202107b45044020022000290300370300200241106a2001280200360200200241086a20062903003703000b20004200370038200041c8006a4100360000200041406b4200370000200041d8006a22024200370000200041d0006a220142e3d4aaedb6f5b5b975370300200041e0006a4200370000200041e8006a410036000020012002107b4504402002200041386a2201290300370300200241106a200141106a280200360200200241086a200141086a2903003703000b20004200370370200041f8006a2201420037030020004180016a220242bc8095dbf9eac3be0a370300200220004190016a107c450440200020002903703703900120004198016a20012903003703000b200042003703a001200041a8016a22014200370300200041b0016a2202428daddfa3b8c0f2fa4a3703002002200041c0016a107c450440200020002903a0013703c001200041c8016a20012903003703000b200042003703d001200041d8016a22014200370300200041e0016a220242bcfcb1bb9c929ca5723703002002200041f0016a107c450440200020002903d0013703f001200041f8016a20012903003703000b200042003703800220004188026a2201420037030020004190026a220242c6ec9efeddb7dbe59d7f3703002002200041a0026a107c45044020002000290380023703a002200041a8026a20012903003703000b200042003703b002200041b8026a22014200370300200041c0026a22024280f2c2a1fc9692b3fa003703002002200041d0026a107c450440200020002903b0023703d002200041d8026a20012903003703000b200042003702e0024100210620004180036a4100360200200041f8026a22054200370200200041f0026a22014282d682a8aa8ca08812370300200041e8026a4100360200200341a8016a101d22022001290300107d200228020c200241106a28020047044010000b02402002280200220720022802042209100d2204450d002003410036023020034200370328200341286a2004104e2007200920032802282201200328022c220820016b100e417f47044020034190016a200141016a20082001417f736a105f2005106b200421060b2001450d002003200136022c0b200228020c22010440200220013602100b024020060d00200041fc026a210220002802e402220420002802e00222066b41146d220720002802800320002802f80222016b41146d4d04402007200228020020016b41146d22054b044020062006200541146c6a22052001107e1a20052004200210480c020b2002200620042001107e3602000c010b200104402000410036028003200042003702f8020b200520052007102a104720062004200210480b2000418c036a22074200370200200041a4036a220b420037020020004198036a22024290c49be7c4cecdade1003703002000200736028803200041a0036a2206200b360200200341286a101d22082002290300107d200828020c200841106a28020047044010000b02402008280200220120082802042204100d220c450440410021020c010b410021022003410036022020034200370318200341186a200c104e200120042003280218220a200328021c2205200a6b100e417f470440024002402003200a41016a2005200a417f736a105f2202280204450d0020022802002d000041c001490d00200341e8006a2002107f200341d8006a2002108001200341d0006a2102200341c8006a21010340200328026c200328025c46044020032802702003280260460d030b20034190016a200341e8006a108101200241003602002001420037030020034200370340200341003a0054024020032802940104402003280290012d000041bf014b0d010b10000b20034190016a1079410247044010000b20034188016a2204410036020020034180016a2205420037030020034200370378200341a8016a20034190016a41001060200341a8016a200341f8006a1066200120052903003703002002200428020036020020032003290378370340200341a8016a20034190016a41011060200341a8016a200341f7006a108201200320032d007722053a00542006200341a8016a200341406b10412209280200450440412410182204200329034037000d200441216a20053a00002004411d6a2002280200360000200441156a2001290300370000200620032802a8012009200410420b200341e8006a1083010c000b000b10000b200c21020b200a450d002003200a36021c0b200828020c22010440200820013602100b024020020d002000280288032102024020002802a803450d0020002802a00321012000200b3602a003200041003602a80320002802a4032104200041003602a4032004410036020820012802042204200120041b2104034020042201450d01200220074704402001200229000d37000d2001411d6a2002411d6a280000360000200141156a200241156a290000370000200141216a200241216a2d00003a0000024020012802082204450440410021040c010b2001200428020022054604402004410036020020042802042205450d01200510840121040c010b200441003602042005450d00200510840121040b2006200341a8016a2001410d6a1085012105200620032802a8012005200110422002104321020c010b0b0340200128020822010d000b200721020b034020022007460d01412410182201200229000d37000d2001411a6a2002411a6a290000370000200141156a200241156a2900003700002006200341a8016a2001410d6a1085012104200620032802a8012004200110422002104321020c000b000b41002106200041003a00b003200041b8036a220142bbc8e8cdd5bd82ea73370300200341a8016a101d22022001290300107d200228020c200241106a28020047044010000b02402002280200220520022802042207100d2204450d002003410036023020034200370328200341286a2004104e2005200720032802282201200328022c220920016b100e417f47044020034190016a200141016a20092001417f736a105f200041c0036a108201200421060b2001450d002003200136022c0b200228020c22010440200220013602100b2006450440200020002d00b0033a00c0030b200341c0016a240020000bad0701087f230041406a22062400200641286a101d2202200041b8036a2201290300108601101b20022001290300107d200228020c200241106a28020047044010000b2002280204210420022802002108200641106a101d210120002d00c003107421072001200610870122031088012001200720032802046a20032802006b101b200120002d00c00310750240200128020c200141106a280200460440200141046a2107200128020021050c010b200141046a2107100020012802002105200128020c2001280210460d0010000b2008200420052007280200100f200328020022040440200320043602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200641286a101d220220004198036a2201290300108601101b20022001290300107d200041a0036a2104200228020c200241106a28020047044010000b2002280204210820022802002107200641106a101d21012004107221052001200610870122031088012001200520032802046a20032802006b101b2001200410730240200128020c200141106a280200460440200141046a2104200128020021050c010b200141046a2104100020012802002105200128020c2001280210460d0010000b2007200820052004280200100f200328020022040440200320043602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200641286a101d2202200041f0026a2201290300108601101b20022001290300107d200041f8026a2104200228020c200241106a28020047044010000b2002280204210820022802002107200641106a101d21012004107021052001200610870122031088012001200520032802046a20032802006b101b2001200410710240200128020c200141106a280200460440200141046a2104200128020021050c010b200141046a2104100020012802002105200128020c2001280210460d0010000b2007200820052004280200100f200328020022040440200320043602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200041f8026a28020022010440200041fc026a20013602000b20002802e00222010440200041e4026a20013602000b200041c0026a200041d0026a10890120004190026a200041a0026a108901200041e0016a200041f0016a108901200041b0016a200041c0016a10890120004180016a20004190016a108901200041d0006a200041d8006a108a01200041186a200041206a108a01200641406b24000bbb0102037f027e230041a0046b22022400200241e8036a22034100360200200241e0036a22044200370300200242003703d80320001065410247044010000b20022000410110602002200241d8036a106620021068210020024180046a20032802002203360200200241f8036a20042903002205370300200220022903d80322063703f00320024198046a200336020020024190046a20053703002002200637038804200020024188046a200111000020001069200241a0046a24000b9b0301057f230041f0006b22022400024002402000280204450d0020002802002d000041c001490d002000106521032001280208200128020022046b41146d20034904402001200241206a2003200128020420046b41146d200141086a102b2203102c2003102d0b200241c8006a2000107f200241386a2000108001200141086a2106200241186a21030340200228024c200228023c46044020022802502002280240460d030b200241206a200241c8006a10810120034100360200200241106a2204420037030020024200370308200241206a200241086a1066024020012802042200200128020849044020002002290308370000200041106a2003280200360000200041086a20042903003700002001200128020441146a3602040c010b200241d8006a2001200020012802006b41146d220041016a102a20002006102b2100200228026022052002290308370000200541106a2003280200360000200541086a20042903003700002002200228026041146a36026020012000102c2000102d0b200241c8006a1083010c000b000b10000b200241f0006a24000b2901017f230041d0036b220224002000106f200210682200200111020020001069200241d0036a24000b920202027f027e230041e0046b220224002000106f200241d0036a200210682203200111000020024180046a101d2200200241d0036a108b01101b200241f8036a200241e0036a2802002201360200200241f0036a200241d8036a2903002204370300200220022903d00322053703e803200241a0046a2004370300200241a8046a2001360200200241b8046a2004370300200241c0046a20013602002002200537039804200220053703b004200241d8046a2001360200200241d0046a2004370300200220053703c8042000200241c8046a41141054220128020c200141106a28020047044010000b200128020020012802041012200128020c22000440200120003602100b20031069200241e0046a24000b8c0102027f027e23004180046b220224002000106f2002200241106a106822032001110000200241086a290300210420022903002105200241e8036a101d220120052004108c01101b2001200520041022220128020c200141106a28020047044010000b200128020020012802041012200128020c22000440200120003602100b2003106920024180046a24000b0e0020001065410147044010000b0baf0202047f027e23004180016b22012400200141306a4100360200200141286a4200370300200141206a420037030020014200370318024020002802002000280204460440200141186a108d010c010b200141186a4100101e2103200028020421042000280200210003402000200446044020034101101e1a05200141c8006a200041106a2800002202360200200141406b200041086a290000220637030020002900002105200141086a2006370300200141106a200236020020012005370338200141d8006a2006370300200141e0006a2002360200200141f0006a2006370300200141f8006a200236020020012005370300200120053703502001200537036820032001105b1a200041146a21000c010b0b0b20012802182100200141186a410472102020014180016a240020000bdf0102037f027e230041e0006b220224002000200128020420012802006b41146d102121032001280204210420012802002101034020012004460440200241e0006a240005200241106a200141106a2800002200360200200241086a200141086a2900002205370300200220012900002206370300200241206a2005370300200241286a2000360200200241386a2005370300200241406b20003602002002200637031820022006370330200241d8006a2000360200200241d0006a2005370300200220063703482003200241c8006a411410541a200141146a21010c010b0b0b940302087f027e230041b0016b22012400200141306a4100360200200141286a4200370300200141206a42003703002001420037031802402000280208450440200141186a108d010c010b200041046a2104200141186a4100101e21032000280200210003402000200446044020034101101e1a05200141c8006a2000411d6a2800002202360200200141406b200041156a29000022093703002001200029000d220a370338200041216a2d00002105200141e0006a22062002360200200141d8006a220720093703002001200a37035020034100101e2108200141f8006a20062802002202360200200141f0006a20072903002209370300200141106a2002360200200141086a200937030020012001290350220a37036820014188016a200937030020014190016a2002360200200141a0016a2009370300200141a8016a20023602002001200a3703002001200a370380012001200a3703980120082001105b2005410047108e014101101e1a2000104321000c010b0b0b20012802182100200141186a4104721020200141b0016a240020000be60102047f027e230041e0006b220224002000200128020810212103200141046a210420012802002101034020012004460440200241e0006a2400052003410210212105200241106a2001411d6a2800002200360200200241086a200141156a29000022063703002002200129000d2207370300200241206a2006370300200241286a2000360200200241386a2006370300200241406b20003602002002200737031820022007370330200241d8006a2000360200200241d0006a2006370300200220073703482005200241c8006a41141054200141216a2d000010752001104321010c010b0b0b5901027f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200041ff0171410047108e01210020012802002102200041046a1020200141206a240020020b0c0020002001ad420010221a0b880101037f419c0a410136020041a00a2802002100034020000440034041a40a41a40a2802002201417f6a22023602002001410148450440419c0a4100360200200020024102746a22004184016a280200200041046a280200110200419c0a410136020041a00a28020021000c010b0b41a40a412036020041a00a200028020022003602000c010b0b0b750020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d00200010910120024f0d002003410471044010000c010b200042003702000b02402003411071450d00200010910120024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000106141012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b820101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000109501200128020c210003402000450d0120014100200128020822032003200010930122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b9e0102027f027e230041106b22022400200110610240024020011062450d002001280204450d0020012802002d000041c001490d010b10000b200241086a20011063200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000bbe0101057f230041406a22022400200241286a101d22032000290300107d200328020c200341106a28020047044010000b02402003280200220020032802042205100d22064504400c010b2002410036022020024200370318200241186a2006104e2000200520022802182200200228021c220520006b100e417f4704402002200041016a20052000417f736a105f20011066200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040be00102057f017e230041d0006b22022400200241386a101d22032000290300107d200328020c200341106a28020047044010000b02402003280200220020032802042205100d22064504400c010b2002410036023020024200370328200241286a2006104e2000200520022802282200200228022c220520006b100e417f4704402002200241106a200041016a20052000417f736a105f107a200229030021072001200241086a29030037030820012007370300200621040b2000450d002002200036022c0b200328020c22000440200320003602100b200241d0006a240020040b0b0020002001420010221a0b2501017f200120006b220141146d210320010440200220002001105c0b2002200341146c6a0b0b00200020014101108f010b0b00200020014100108f010b160020002001280204200141086a280200411c10771a0b850101037f230041106b22022400200010610240024020001062450d002000280204450d0020002802002d000041c001490d010b10000b200241086a20001063200228020c220041024f044010000b200228020821030340200004402000417f6a210020032d00002104200341016a21030c010b0b200120044100473a0000200241106a24000bb70102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a200141002004200210930110940120002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f02402000280204220304400340024020022003410d6a1040044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b5301037f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120004200101f210220012802002103200241046a1020200141206a240020030b3000200041003602082000420037020020004101104d200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105320002802040520020b20002802006a2003200110191a2000200028020420016a3602040b9d0201077f230041406a22042400200441286a101d22032000290300108601101b20032000290300107d200328020c200341106a28020047044010000b2003280204210620032802002107200441106a101d21022001290300200141086a2205290300108c0121082002200410870122001088012002200820002802046a20002802006b101b02402002200129030020052903001022220128020c200141106a280200460440200141046a2102200128020021050c010b200141046a2102100020012802002105200128020c2001280210460d0010000b2007200620052002280200100f200028020022020440200020023602040b200128020c22000440200120003602100b200328020c22010440200320013602100b200441406b24000b9d0302067f027e230041a0016b22022400200241406b101d22052000290300108601101b20052000290300107d200528020c200541106a28020047044010000b2005280204210620052802002107200241286a101d21032001108b0121042003200241186a10870122001088012003200420002802046a20002802006b101b200241106a200141106a2800002204360200200241086a200141086a2900002208370300200220012900002209370300200241e0006a2008370300200241e8006a2004360200200241f8006a200837030020024180016a2004360200200220093703582002200937037020024198016a200436020020024190016a200837030020022009370388010240200320024188016a41141054220128020c200141106a280200460440200141046a2103200128020021040c010b200141046a2103100020012802002104200128020c2001280210460d0010000b2007200620042003280200100f200028020022030440200020033602040b200128020c22000440200120003602100b200528020c22010440200520013602100b200241a0016a24000be00102027f027e23004180016b22012400200141c8006a4100360200200141406b4200370300200141386a4200370300200141206a200041086a2900002204370300200141286a200041106a280000220236020020002900002103200141086a2004370300200141106a20023602002001420037033020012003370318200141d8006a2004370300200141e0006a2002360200200141f0006a2004370300200141f8006a2002360200200120033703002001200337035020012003370368200141306a2001105b210020012802302102200041046a102020014180016a240020020b5301037f230041206b22022400200241186a4100360200200241106a4200370300200241086a420037030020024200370300200220002001101f210320022802002104200341046a1020200241206a240020040b3901017f027f200041186a28020022010440200041086a280200200041146a280200200110500c010b20000b2201200128020041016a3602000b0b0020002001ad4200101f0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110950120004100200428020c220120042802082202200110930122032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b3501017f230041106b220041c08a0436020c41a80a200028020c41076a417871220036020041ac0a200036020041b00a3f003602000b2f01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000109201200010786a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2801017f230041206b22022400200241086a20002001411410771091012100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2301017f20011078220220012802044b044010000b20002001200110920120021094010b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210056a109701200120002802006a22012002200110060c010b0b0b3601017f200028020820014904402001105d200028020020002802041019210220002001360208200020023602000b200020013602040b0ba00201004180080b98024f776e6572736869705472616e7366657272656400446f6e6174656400696e697400646f6e617465007365744f70656e696e67436c6f73696e6754696d657300616464546f57686974656c697374006164644d616e79546f57686974656c6973740072656d6f766546726f6d57686974656c69737400706175736500756e7061757365007472616e736665724f776e657273686970006765744f776e65720067657443686172697479006765744f70656e696e6754696d6500676574436c6f73696e6754696d65006765744d696e566f6e416d6f756e74006765744d6178566f6e416d6f756e74006765744d61784e756d446f6e6f727300676574446f6e6f72730067657457686974656c69737400676574506175736564"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETCHARITY = "getCharity"; - - public static final String FUNC_GETOWNER = "getOwner"; - - public static final String FUNC_PAUSE = "pause"; - - public static final String FUNC_UNPAUSE = "unpause"; - - public static final String FUNC_DONATE = "donate"; - - public static final String FUNC_SETOPENINGCLOSINGTIMES = "setOpeningClosingTimes"; - - public static final String FUNC_ADDTOWHITELIST = "addToWhitelist"; - - public static final String FUNC_ADDMANYTOWHITELIST = "addManyToWhitelist"; - - public static final String FUNC_REMOVEFROMWHITELIST = "removeFromWhitelist"; - - public static final String FUNC_TRANSFEROWNERSHIP = "transferOwnership"; - - public static final String FUNC_GETOPENINGTIME = "getOpeningTime"; - - public static final String FUNC_GETCLOSINGTIME = "getClosingTime"; - - public static final String FUNC_GETMINVONAMOUNT = "getMinVonAmount"; - - public static final String FUNC_GETMAXVONAMOUNT = "getMaxVonAmount"; - - public static final String FUNC_GETMAXNUMDONORS = "getMaxNumDonors"; - - public static final String FUNC_GETDONORS = "getDonors"; - - public static final String FUNC_GETWHITELIST = "getWhitelist"; - - public static final String FUNC_GETPAUSED = "getPaused"; - - public static final String FUNC_PREVALIDATEDONATE = "preValidateDonate"; - - public static final String FUNC_ONLYOWNER = "onlyOwner"; - - public static final WasmEvent DONATED_EVENT = new WasmEvent("Donated", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent OWNERSHIPTRANSFERRED_EVENT = new WasmEvent("OwnershipTransferred", Arrays.asList(), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(WasmAddress.class))); - ; - - protected Donate(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Donate(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getCharity() { - final WasmFunction function = new WasmFunction(FUNC_GETCHARITY, Arrays.asList(), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public RemoteCall getOwner() { - final WasmFunction function = new WasmFunction(FUNC_GETOWNER, Arrays.asList(), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public List getDonatedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(DONATED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - DonatedEventResponse typedResponse = new DonatedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable donatedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public DonatedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(DONATED_EVENT, log); - DonatedEventResponse typedResponse = new DonatedEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable donatedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(DONATED_EVENT)); - return donatedEventObservable(filter); - } - - public RemoteCall pause() { - final WasmFunction function = new WasmFunction(FUNC_PAUSE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall pause(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PAUSE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall unpause() { - final WasmFunction function = new WasmFunction(FUNC_UNPAUSE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall unpause(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_UNPAUSE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public List getOwnershipTransferredEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(OWNERSHIPTRANSFERRED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - OwnershipTransferredEventResponse typedResponse = new OwnershipTransferredEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (WasmAddress) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable ownershipTransferredEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public OwnershipTransferredEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(OWNERSHIPTRANSFERRED_EVENT, log); - OwnershipTransferredEventResponse typedResponse = new OwnershipTransferredEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (WasmAddress) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable ownershipTransferredEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(OWNERSHIPTRANSFERRED_EVENT)); - return ownershipTransferredEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, WasmAddress _charity, Uint128 _openingTime, Uint128 _closingTime, Uint128 _minVonAmount, Uint128 _maxVonAmount, Uint128 _maxNumDonors) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_charity,_openingTime,_closingTime,_minVonAmount,_maxVonAmount,_maxNumDonors)); - return deployRemoteCall(Donate.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, WasmAddress _charity, Uint128 _openingTime, Uint128 _closingTime, Uint128 _minVonAmount, Uint128 _maxVonAmount, Uint128 _maxNumDonors) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_charity,_openingTime,_closingTime,_minVonAmount,_maxVonAmount,_maxNumDonors)); - return deployRemoteCall(Donate.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, WasmAddress _charity, Uint128 _openingTime, Uint128 _closingTime, Uint128 _minVonAmount, Uint128 _maxVonAmount, Uint128 _maxNumDonors) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_charity,_openingTime,_closingTime,_minVonAmount,_maxVonAmount,_maxNumDonors)); - return deployRemoteCall(Donate.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, WasmAddress _charity, Uint128 _openingTime, Uint128 _closingTime, Uint128 _minVonAmount, Uint128 _maxVonAmount, Uint128 _maxNumDonors) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_charity,_openingTime,_closingTime,_minVonAmount,_maxVonAmount,_maxNumDonors)); - return deployRemoteCall(Donate.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall donate(WasmAddress _donor) { - final WasmFunction function = new WasmFunction(FUNC_DONATE, Arrays.asList(_donor), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall donate(WasmAddress _donor, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DONATE, Arrays.asList(_donor), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall setOpeningClosingTimes(Uint128 _openingTime, Uint128 _closingTime) { - final WasmFunction function = new WasmFunction(FUNC_SETOPENINGCLOSINGTIMES, Arrays.asList(_openingTime,_closingTime), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setOpeningClosingTimes(Uint128 _openingTime, Uint128 _closingTime, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETOPENINGCLOSINGTIMES, Arrays.asList(_openingTime,_closingTime), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall addToWhitelist(WasmAddress _donor) { - final WasmFunction function = new WasmFunction(FUNC_ADDTOWHITELIST, Arrays.asList(_donor), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall addToWhitelist(WasmAddress _donor, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADDTOWHITELIST, Arrays.asList(_donor), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall addManyToWhitelist(WasmAddress[] _donors) { - final WasmFunction function = new WasmFunction(FUNC_ADDMANYTOWHITELIST, Arrays.asList(_donors, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall addManyToWhitelist(WasmAddress[] _donors, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADDMANYTOWHITELIST, Arrays.asList(_donors, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall removeFromWhitelist(WasmAddress _donor) { - final WasmFunction function = new WasmFunction(FUNC_REMOVEFROMWHITELIST, Arrays.asList(_donor), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall removeFromWhitelist(WasmAddress _donor, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_REMOVEFROMWHITELIST, Arrays.asList(_donor), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall transferOwnership(WasmAddress newOwner) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFEROWNERSHIP, Arrays.asList(newOwner), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall transferOwnership(WasmAddress newOwner, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFEROWNERSHIP, Arrays.asList(newOwner), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getOpeningTime() { - final WasmFunction function = new WasmFunction(FUNC_GETOPENINGTIME, Arrays.asList(), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall getClosingTime() { - final WasmFunction function = new WasmFunction(FUNC_GETCLOSINGTIME, Arrays.asList(), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall getMinVonAmount() { - final WasmFunction function = new WasmFunction(FUNC_GETMINVONAMOUNT, Arrays.asList(), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall getMaxVonAmount() { - final WasmFunction function = new WasmFunction(FUNC_GETMAXVONAMOUNT, Arrays.asList(), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall getMaxNumDonors() { - final WasmFunction function = new WasmFunction(FUNC_GETMAXNUMDONORS, Arrays.asList(), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall getDonors() { - final WasmFunction function = new WasmFunction(FUNC_GETDONORS, Arrays.asList(), WasmAddress[].class); - return executeRemoteCall(function, WasmAddress[].class); - } - - public RemoteCall getWhitelist() { - final WasmFunction function = new WasmFunction(FUNC_GETWHITELIST, Arrays.asList(), Map.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {WasmAddress.class, Boolean.class}, - Map.class, - Map.class)); - return executeRemoteCall(function, Map.class); - } - - public RemoteCall getPaused() { - final WasmFunction function = new WasmFunction(FUNC_GETPAUSED, Arrays.asList(), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall preValidateDonate(WasmAddress _donor, Uint128 _vonAmount) { - final WasmFunction function = new WasmFunction(FUNC_PREVALIDATEDONATE, Arrays.asList(_donor,_vonAmount), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall preValidateDonate(WasmAddress _donor, Uint128 _vonAmount, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PREVALIDATEDONATE, Arrays.asList(_donor,_vonAmount), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall onlyOwner() { - final WasmFunction function = new WasmFunction(FUNC_ONLYOWNER, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall onlyOwner(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ONLYOWNER, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static Donate load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Donate(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Donate load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Donate(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class DonatedEventResponse { - public Log log; - - public String topic; - - public Uint128 arg1; - } - - public static class OwnershipTransferredEventResponse { - public Log log; - - public WasmAddress arg1; - - public WasmAddress arg2; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Fibonacci.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Fibonacci.java deleted file mode 100644 index eea8a5afdb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Fibonacci.java +++ /dev/null @@ -1,142 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class Fibonacci extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000015d1160027f7f0060017f017f60017f0060000060037f7f7f0060027f7f017f60037f7f7f017f60047f7f7f7f0060027f7e0060047f7f7f7f017f60017f017e60037f7e7e0060017e0060037e7e7f006000017f60027e7e017f60017e017e0282020c03656e760c706c61746f6e5f70616e6963000303656e760b706c61746f6e5f73686133000703656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000203656e760c706c61746f6e5f6576656e74000703656e760d706c61746f6e5f72657475726e0000033231030b050205010102000601050008080c10040000000601000609020600020401060309040a0a01000302010005030101070405017001010105030100020608017f0141d088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000c0f5f5f66756e63735f6f6e5f65786974003406696e766f6b65002d0a934431040010390bfa0601087f23004190016b220324002003418308100e2104200341286a100f2003413c6a410036020020034200370234200341286a4101101021080240200428020420032d00002206410176200641017122091b2206450d002004280208200441016a20091b2104200610112207210503402006450d01200520042d00003a00002006417f6a2106200541016a2105200441016a21040c000b000b200520076b41204b0440412010112104410021060340200420066a41003a0000200641016a22064120470d000b2007200520076b200420061001200420066a2105200421070b200341d8006a4100360200200341d0006a4200370300200341c8006a420037030020034200370340024020052007460440410121060c010b4101210602400240200520076b2204410146044020072c0000417f4c0d010c030b200441374b0d010b200441016a21060c010b2004101220046a41016a21060b20032006360240200341406b410472101320082006101420082007200520076b101521052003280234200328023847044010000b2005280204210820052802002109200341106a10162105200341406b2000101721062003200237035820032001370350200341f8006a4100360200200341f0006a4200370300200341e8006a420037030020034200370360200341e0006a410010184101210702400240024020034180016a20061017220028020420032d00800122044101762004410171220a1b220441014d0440200441016b0d032000280208200041016a200a1b2c0000417f4c0d010c030b200441374b0d010b200441016a21070c010b2004101220046a41016a21070b027f200341e0006a20032802782204450d001a2003280268200420032802746a417f6a220441087641fcffff07716a280200200441ff07714102746a0b2204200428020020076a360200200341e0006a20032903501019200341e0006a20032903581019200341e0006a4101101820032802602104200341e0006a4104721013200520041014200541031010200341e0006a200610172205280208200541016a20032d0060220641017122041b2005280204200641017620041b101522052003290350101a20052003290358101a200528020c200541106a28020047044010000b2009200820052802002005280204100a200528020c22060440200520063602100b200328023422050440200320053602380b20034190016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b101d20000b1600200041003602082000420037020020004100101e0bf30101057f20002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410110b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001102c1a0b20002002360214200020033602102000200536020c20000b0b002000410120001b102b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000101f200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011020200441106a24000b13002000280208200149044020002001101e0b0b2a01017f2000200120021004200028020422036a102820012002200320002802006a10052000102920000b19002000100f200041146a41003602002000420037020c20000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204101d20000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031021280200210120022003417f6a360200200710224180104f044020072000410c6a280200417c6a10200b200141384f047f2001101220016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002102121000c010b0240200710220d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10230c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010112105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1024220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10252102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021026200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a102722013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10252102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021026200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10230c010b20042001410175410120011b200320051025210241802010112106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a102422013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200102521032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031026200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021026052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a102722013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210102521062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061026200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007101f200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b880102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002101220026a0520020b41016a21020b200041186a28020022030440200041086a280200200041146a2802002003102121000b2000200028020020026a3602000b2801017f2000420020011006200028020422026a102842002001200220002802006a1007200010290b2902017f017e230041106b220124002000101c21022001418008100e20002002100d200141106a24000b2f00027e02402000420158044042002000a741016b0d021a0c010b2000427f7c101c2000427e7c101c7c0f0b42010b0b6101027f027f02402002410b4f0440200241106a4170712204101121032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b200320012002102c0b20026a41003a00000b2f01017f200028020820014904402001102b20002802002000280204102c210220002001360208200020023602000b0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a102422023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10252103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031026200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001102a0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101121040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001102a0b20020b3601017f200028020820014904402001102b20002802002000280204102c210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a1028200120002802006a22012002200110030c010b0b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002102c1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f41c408200041086a2202411076220041c4082802006a220336020041c00841c008280200220420026a41076a417871220236020002400240200341107420024d044041c408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102c41086a0541000b2100200141106a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb80202037f017e230041e0006b22002400103910082201102b22021009200041406b200041086a20022001411c102e22014100102f02400240200041406b10302203500d00418a0810312003510440200110324101460d020c010b418f0810312003510440200042003703402001200041406b10332000290340101b0c020b41a00810312003520d00200042003703202001200041206a10332000290320101c2103200041286a10162101200041d8006a4100360200200041d0006a4200370300200041c8006a420037030020004200370340200041406b2003101920002802402102200041406b410472101320012002101420012003101a200128020c200141106a28020047044010000b20012802002001280204100b200128020c2202450d01200120023602100c010b10000b1034200041e0006a24000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000103a20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000103a20024d0d0020034104710440100020000f0b200042003702000b20000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103720012003280208200328020c103836020c200320011037410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102e1a200341106a24000f0b20032001103741002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041038103c2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000bad0302057f017e20001035024002402000280204450d00200010350240200028020022012c0000220241004e044020020d010c020b200241807f460d00200241ff0171220341b7014d0440200028020441014d04401000200028020021010b20012d00010d010c020b200341bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021010b200120026a2d0000450d010b2000280204450d0020012d000041c001490d010b10000b200010362204200028020422014b04401000200028020421010b20002802002105024002400240200104404100210320052c00002200417f4a0d01027f200041ff0171220341bf014d04404100200041ff017141b801490d011a200341c97e6a0c010b4100200041ff017141f801490d001a200341897e6a0b41016a21030c010b4101210320050d00410021000c010b41002100200320046a20014b0d0020012004490d004100210220012003490d01200320056a2102200120036b20042004417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002006420886842106200241016a21020c010b0b20060b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001037200128020c210003402000450d01200141002001280208220320032000103822046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b3701017f230041206b2202240020001032410247044010000b200241086a20004101102f2001200241086a1030370300200241206a24000b880101037f41b008410136020041b4082802002100034020000440034041b80841b8082802002201417f6a2202360200200141014845044041b0084100360200200020024102746a22004184016a280200200041046a28020011020041b008410136020041b40828020021000c010b0b41b808412036020041b408200028020022003602000c010b0b0b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000103541012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2101017f20011036220220012802044b044010000b200020012001103b2002103c0b2701017f230041206b22022400200241086a200020014114102e103a2100200241206a240020000b3501017f230041106b220041d0880436020c41bc08200028020c41076a417871220036020041c008200036020041c4083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000103b200010366a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b3501004180080b2e6f6b006e6f7469667900696e6974006669626f6e616363695f6e6f74696679006669626f6e616363695f63616c6c"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_FIBONACCI_NOTIFY = "fibonacci_notify"; - - public static final String FUNC_FIBONACCI_CALL = "fibonacci_call"; - - public static final WasmEvent NOTIFY_EVENT = new WasmEvent("notify", Arrays.asList(), Arrays.asList(new WasmEventParameter(String.class) , new WasmEventParameter(Uint64.class) , new WasmEventParameter(Uint64.class))); - ; - - protected Fibonacci(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Fibonacci(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getNotifyEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(NOTIFY_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - NotifyEventResponse typedResponse = new NotifyEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint64) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint64) eventValues.getNonIndexedValues().get(2); - responses.add(typedResponse); - } - return responses; - } - - public Observable notifyEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public NotifyEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(NOTIFY_EVENT, log); - NotifyEventResponse typedResponse = new NotifyEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (String) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint64) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint64) eventValues.getNonIndexedValues().get(2); - return typedResponse; - } - }); - } - - public Observable notifyEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(NOTIFY_EVENT)); - return notifyEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Fibonacci.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Fibonacci.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Fibonacci.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Fibonacci.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall fibonacci_notify(Uint64 number) { - final WasmFunction function = new WasmFunction(FUNC_FIBONACCI_NOTIFY, Arrays.asList(number), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall fibonacci_notify(Uint64 number, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_FIBONACCI_NOTIFY, Arrays.asList(number), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall fibonacci_call(Uint64 number) { - final WasmFunction function = new WasmFunction(FUNC_FIBONACCI_CALL, Arrays.asList(number), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static Fibonacci load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Fibonacci(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Fibonacci load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Fibonacci(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class NotifyEventResponse { - public Log log; - - public String arg1; - - public Uint64 arg2; - - public Uint64 arg3; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ForeignBridge.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ForeignBridge.java deleted file mode 100644 index 577f9e492e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ForeignBridge.java +++ /dev/null @@ -1,388 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ForeignBridge extends WasmContract { - private static String BINARY_0 = "0x0061736d010000000190011760027f7f0060027f7f017f60017f0060017f017f60037f7f7f017f60037f7f7f0060047f7f7f7f0060000060037f7e7e0060047f7f7f7f017f60037f7e7e017f60087f7f7f7f7f7f7f7f0060057f7f7f7e7e0060057f7f7e7e7f0060027f7e0060067f7e7e7f7e7e0060057f7e7e7e7e0060037e7e7f006000017f60017e017f60027e7e017f6000017e60017f017e0290031203656e760c706c61746f6e5f70616e6963000703656e760d706c61746f6e5f63616c6c6572000203656e760b706c61746f6e5f73686133000603656e7613706c61746f6e5f626c6f636b5f6e756d626572001503656e760d706c61746f6e5f726576657274000703656e760d726c705f6c6973745f73697a65000303656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000103656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65001403656e760f706c61746f6e5f726c705f75313238001103656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001203656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000103656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000603656e760c706c61746f6e5f6576656e74000603656e760d706c61746f6e5f72657475726e000003ab01a90107010100040a00000a030802080010010106020101040f010003000006030000000200050001010d010800000201050101000c04060205030401000202030501050b020008080501050205040404020304000300000409020400030004010402010e04000902030003070516030009000200000000020301020000000002070303050103000304030100010001000413020300000000000201000000000204040703030106000200080405017001010105030100020608017f0141a08b040b073a04066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300120f5f5f66756e63735f6f6e5f6578697400900106696e766f6b65007b0ad2d102a901050010b2010b7101037f20004200370200200041086a410036020002402001104f2202410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204104921032000200236020420002004410172360200200020033602080b2003200120021050200220036a41003a000020000b1d0020001060200041146a41003602002000420037020c2000200110220b9e0201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a200410300340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b200241003602082002420037030020024120102a2003200228021420036b20022802002204200228020420046b100220002002280200360200200020022902043702042003450d00200220033602140b200241206a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002106120026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110620c010b20000b2201200128020020036a36020020000b900101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003106120036a0520030b41016a21040b027f200041186a28020022030440200041086a280200200041146a280200200310620c010b20000b2203200328020020046a36020020000b1300200028020820014904402000200110630b0b1600200020012802002200200128020420006b10271a0b2c01017f2000200220011009200028020422036a10b90120022001200320002802006a100a200010b80120000b190020001060200041146a41003602002000420037020c20000b6c01037f230041206b22032400200341186a4100360200200341106a4200370300200341086a42003703002003420037030020034100102120012002101741011021210420032802002105200441046a101d20002005101820004101102220012002101a1a200341206a24000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000106b200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011065200441106a24000bb80201077f23004180016b22032400200341a60a10132105200341e8006a410210142104200341d8006a20051015200341c8006a2000101f200341406b4100360200200341386a4200370300200341306a420037030020034200370328200341286a20032802582205200328025c101620032802482207200328024c101621082004200328022810182004200341d8006a10192004200341c8006a1019200428020c200441106a28020047044010000b2004280204210620042802002109200341106a101b220020012002101c200028020c200041106a28020047044010000b20092006200028020020002802041010200028020c22060440200020063602100b200841046a101d200704402003200736024c0b200504402003200536025c0b200428020c22000440200420003602100b20034180016a24000bbf0101037f230041206b220224000240200241106a2001200141146a105d22012802042203200128020022046b41204d04402000200336020420002004360200200142003702002001280208210320014100360208200020033602080c010b200241003602082002420037030020024120102a20012802002203200128020420036b20022802002203200228020420036b1002200020022802003602002000200229020437020420012802002200450d00200120003602040b200241206a24000b9e0301097f230041a0016b220524002005419d0a10132107200541e8006a410210142106200541d8006a20071015200541c8006a2000101f200541406b4100360200200541386a4200370300200541306a420037030020054200370328200541286a20052802582207200528025c101620052802482209200528024c1016210a2006200528022810182006200541d8006a10192006200541c8006a1019200628020c200641106a28020047044010000b200628020421082006280200210b200541106a101b210020054198016a410036020020054190016a420037030020054188016a4200370300200542003703800120054180016a4100102120012002101720032004101741011021210c200528028001210d200c41046a101d2000200d101820004102102220012002101a20032004101a220028020c200041106a28020047044010000b200b2008200028020020002802041010200028020c22080440200020083602100b200a41046a101d200904402005200936024c0b200704402005200736025c0b200628020c22000440200620003602100b200541a0016a24000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031062280200210120022003417f6a360200200710644180104f044020072000410c6a280200417c6a10650b200141384f047f2001106120016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110620c020b20000c010b0240200710640d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10660c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010492105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1067220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10682102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021069200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a106a22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10682102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021069200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10660c010b20042001410175410120011b200320051068210241802010492106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a106722013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200106821032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031069200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021069052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a106a22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210106821062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061069200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007106b200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b9f0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410490b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001104a1a0b20002002360214200020033602102000200536020c20000f0b200041001005200028020422016a10b90141004100200120002802006a1006200010b80120000bde07020a7f067e230041b0026b22042400200441d8006a410210142105200441c8006a20001015200441386a2001101f41002101200441306a4100360200200441286a4200370300200441206a420037030020044200370318200441186a20042802482206200428024c101620042802382207200428023c101621082005200428021810182005200441c8006a10192005200441386a1019200528020c200541106a28020047044010000b200528020421092005280200210a2004101b210020044188016a220b200241186a29000037030020044180016a220c200241106a2900003703002004200241086a29000037037820042002290000370370200341086a290300211220032903002113200441a8016a4100360200200441a0016a420037030020044198016a4200370300200442003703900120044190016a41001021210d200441c8016a200b290300220e370300200441c0016a200c290300220f370300200441b8016a200429037822103703002004200429037022113703b001200441d8016a2010370300200441e0016a200f370300200441e8016a200e370300200441f8016a201037030020044180026a200f37030020044188026a200e370300200420113703d001200420113703f001200441a8026a200e370300200441a0026a200f37030020044198026a20103703002004201137039002410121030240034020014120460d0120044190026a20016a2102200141016a210120022d0000450d000b412121030b027f20044190016a20042802a8012201450d001a200428029801200120042802a4016a417f6a220141087641fcffff07716a280200200141ff07714102746a0b2201200128020020036a360200200d2013201210174101102121012004280290012102200141046a101d2000200210182000410210222101200441c8016a20044188016a290300220e370300200441c0016a20044180016a290300220f370300200441b8016a200429037822103703002004200429037022113703b001200441d8016a2010370300200441e0016a200f370300200441e8016a200e370300200441f8016a201037030020044180026a200f37030020044188026a200e370300200420113703d001200420113703f001200441a8026a200e370300200441a0026a200f37030020044198026a20103703002004201137039002200120044190026a4120102720132012101a220128020c200141106a28020047044010000b200a2009200128020020012802041010200128020c22020440200120023602100b200841046a101d200704402004200736023c0b200604402004200636024c0b200528020c22010440200520013602100b200441b0026a24000be90402117f027e230041f0016b22012400200141206a41900a10132102200141d8006a410110142103200141c8006a20021015200320012802482205200128024c102510182003200141c8006a1019200328020c200341106a28020047044010000b2003280204210820032802002109200141306a101b210220014180016a2206200041106a280000360200200141f8006a2207200041086a29000037030020012000290000370370200141a0016a410036020020014198016a220a420037030020014190016a220b4200370300200142003703880120014188016a410010212104200141b8016a220c20062802002200360200200141b0016a220d20072903002212370300200141186a2000360200200141106a20123703002001200129037022133703a801200141c8016a220e2012370300200141d0016a220f2000360200200141e0016a22102012370300200141e8016a2211200036020020012013370308200120133703c001200120133703d8012004200141086a10264101102121002001280288012104200041046a101d20022004101820024101102221022011200628020022003602002010200729030022123703002001200129037022133703d801200d2012370300200c2000360200200e2012370300200f2000360200200120133703a801200120133703c001200a2000360200200b20123703002001201337038801200220014188016a41141027220028020c200041106a28020047044010000b20092008200028020020002802041010200028020c22020440200020023602100b200504402001200536024c0b200328020c22000440200320003602100b200141f0016a24000b5301017f230041206b22022400200241186a4100360200200241106a4200370300200241086a4200370300200242003703002002200020011016210020022802002101200041046a101d200241206a240020010b6601037f410121030240034020024114460d01200120026a2104200241016a210220042d0000450d000b411521030b027f200041186a28020022020440200041086a280200200041146a280200200210620c010b20000b2202200228020020036a36020020000b2c01017f2000200120021007200028020422036a10b90120012002200320002802006a1008200010b80120000be50b01097f230041f0006b22072400200120028450044010040b200328020420032802006b41146dad20015a200250220620061b45044010040b200041f8016a2002370300200041f0016a2001370300200041f8026a210a410021060240034020062003280204200328020022096b41146d4f04400240200041d8026a4200370300200041d0026a428094ebdc03370300200041a8026a2005370300200041a0026a2004370300200741186a41b4081013210d200741086a41d9081013220c280208200c41016a220e20072d0008220641017122081b2100200c280204200641017620081b210b4100210641012103410021094100210a0340200341017141002006200b491b0440200020066a2d00002208415f6a41ff017141de004921032009200841bf7f6a41ff0171411a49722109200a2008419f7f6a41ff0171411a4972210a200641016a21060c010520032009200a71410173712109200b450d02200b210603402006450d03200020066a21032006417f6a220821062003417f6a2d00004131470d000b0c050b000b000b05200a200820096a102941013a0000200841146a2108200641016a21060c010b0b417f21080b02402009410171450d00200841076a200b4b0d00200841016a4102490d00200b41da004b0d00410021062007410036025820074200370350200741d0006a200b2008417f73220a6a102a4101210902400240024003402006200c28020420072d00082203410176200341017122031b200a6a4f044002402009410171450d0541002106200741406b102b21090340200620084604400240200928020420072d0040220641017622082006410171220a1b2203200d28020420072d00182206410176200641017122061b470d06200d280208200d41016a20061b2106200a0d00200941016a210303402008450d0820032d000020062d0000470d07200641016a2106200341016a21032008417f6a21080c000b000b052009200c280208200e20072d00084101711b20066a2c000022034120722003200341bf7f6a411a491b411874411875102c200641016a21060c010b0b20030d000c040b05200728025020066a200c280208200e20031b20086a20066a41016a2d00004190096a2d000022033a00002009200341ff0147712109200641016a21060c010b0b2009280208210803402003450d0220082d000020062d0000470d01200641016a2106200841016a21082003417f6a21030c000b000b20072802502206450d02200720063602540c020b200741e0006a2009102d200741286a200741e0006a20072802502007280254102e200741286a102f21062007280228220804402007200836022c0b200728026022080440200720083602640b20064101470d004100210920074100360268200742003703602007410036023020074200370328027f41002007280254417a6a2203200728025022066b2208450d001a200741286a2008103003402003200646450440200728022c220820062d00003a00002007200841016a36022c200641016a21060c010b0b20072802282109200728022c0b20096b210a410021064100210841002103024003402003200a46044002402008410820066b7441ff0171452006410548712106200904402007200936022c0b20060d00200728026021060c030b05200320096a2d0000200841057441e01f71722108200641056a21060340200641084845044020072008200641786a2206763a006f200741e0006a200741ef006a10310c010b0b200341016a21030c010b0b2007280264200728026022066b4114470d00200741386a4100360200200741306a4200370300200742003703284100210603402006411446450440200741286a20066a41003a0000200641016a21060c010b0b2007280264200728026022086b2103410021060340024020032006460d00200641134b0d00200741286a20066a200620086a2d00003a0000200641016a21060c010b0b20080440200720083602640b20072802502206450d02200720063602540c020b2006450d00200720063602640b20072802502206450d00200720063602540b200741f0006a24000b7401037f230041106b2203240020002003410c6a2001106e22042802002202450440412410492202200129000037000d200241216a41003a00002002411d6a200141106a280000360000200241156a200141086a2900003700002000200328020c2004200210460b200341106a2400200241216a0bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110592106200241186a200041086a3602002002410036021441002101200604402006104921010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a106d200241086a105b0c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000105420000bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b20031049220220062005105020002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000bba0101047f20004100360208200042003702002000200128020420012d0000220241017620024101711b410174410172102a200141016a210503402003200128020420012d00002202410176200241017122021b22044f0440200028020020046a41003a000005200028020020036a2001280208200520021b20036a2d000022024105763a00002000280200200128020420012d0000220441017620044101711b6a20036a41016a2002411f713a0000200341016a21030c010b0b0bbd0201057f230041206b22042400200128020421060240200320026b22054101480d002005200128020820066b4c0440034020022003460d02200620022d00003a00002001200128020441016a2206360204200241016a21020c000b000b2001200520066a200128020022056b10592108200441186a200141086a36020020044100360214200620056b2105200804402008104921070b200420073602082004200520076a22053602102004200720086a3602142004200536020c03402002200346450440200520022d00003a00002004200428021041016a2205360210200241016a21020c010b0b2001200441086a2006105a200441086a105b200128020421060b20002006360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000ba50101027f2000280204200028020022016b210241012100037f2002047f20012d000041002000411d764101716b41b3c5d1d0027141002000411c764101716b41dde788ea037141002000411b764101716b41fab384f5017141002000411a764101716b41ed9cc2b20271410020004119764101716b41b2afa9db0371200041057441e0ffffff037173737373737321002002417f6a2102200141016a21010c010520000b0b0b2001017f2000200110492202360200200020023602042000200120026a3602080bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10592105200241186a200041086a3602004100210320024100360214200504402005104921030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a106d200241086a105b0b200241206a24000b870302047f037e230041f0006b2202240020001033200241e0006a200110342002410036025820024200370350200241d0006a2002280268200241e0006a41017220022d0060220341017122041b220520052002280264200341017620041b6a1035200241306a200241d0006a1036200041c8056a2203200241306a10372d0000044010040b2003200241306a103741013a0000200041f0056a220320011038220441086a2903002108200429030021062003200110382203200642017c2207370300200320082007200654ad7c22063703082007200041f0016a290300852006200041f8016a290300858450044020004198056a2001290000370000200041a8056a200141106a2203280000360000200041a0056a200141086a2204290000370000200241206a20042900002207370300200241286a2003280000220336020020012900002106200241086a2007370300200241106a20033602002002200637031820022006370300200210240b200228025022000440200220003602540b200241f0006a24000b3101017f230041206b22012400200141086a103e200041f8026a200141086a10292d000045044010040b200141206a24000be30501067f230041d0006b22022400200241b408101321062002410036022820024200370320200241406b2001200141146a105d210541002101034020042005280204200528020022076b4f044002402003044020022001410520036b74411f713a0030200241206a200241306a1031200528020021070b20070440200520073602040b200241306a2006102d200241406b200241306a20022802202002280224102e200228023022030440200220033602340b200241406b200228024420022802406b41066a102a200241406b102f2103410021012002410036021820024200370310200241106a4106102a200341017321044119210303402003417b460d01200228021020016a2004200376411f713a00002003417b6a2103200141016a21010c000b000b05200420076a2d0000200141087441801e71722101200341086a210303402003410548450440200220012003417b6a220376411f713a0030200241206a200241306a10310c010b0b200441016a21040c010b0b200228024022030440200220033602440b200241406b200241306a200241206a1041220320022802102002280214102e200328020022010440200320013602040b20004200370200200041086a4100360200200010542006280208200641016a20022d0000220341017122011b210402402006280204200341017620011b220341016a410a4d0440200020034101743a0000200041016a21010c010b200341116a4170712205104921012000200336020420002005410172360200200020013602080b2001200420031050200120036a41003a000020004131102c200020022802442203200228024022046b200028020420002d0000220141017620014101711b6a10552004210103402003200446450440200020012d000041b8086a2c0000102c200141016a21012003417f6a21030c010b0b20040440200220043602440b200228021022030440200220033602140b200228022022030440200220033602240b200241d0006a24000ba30301067f230041206b220424000240200220016b22074101480d0020072000280208200028020422056b4c04400240200720054c044020052106200221080c010b20052106200120056a2208210303402002200346450440200620032d00003a00002000200028020441016a2206360204200341016a21030c010b0b20054101480d020b20062102200620076b220721030340200320054f044020070440200620076b4100200710580b200820016b210041002103034020002003460d042003200120036a2d00003a0000200341016a21030c000b0005200220032d00003a00002000200028020441016a2202360204200341016a21030c010b000b000b2000200520076a200028020022036b10592105200441186a200041086a36020020044100360214410020036b2103200504402005104921060b200420063602082004200320066a22033602102004200520066a3602142004200336020c03402001200246450440200320012d00003a00002004200428021041016a2203360210200141016a21010c010b0b2000200441086a4100105a200441086a105b0b200441206a24000b7a01027f230041206b2202240020012802002203200128020420036b200241201002200041186a4200370000200041106a4200370000200041086a4200370000200042003700004100210103402001412046450440200020016a41003a0000200141016a21010c010b0b200020024120104a1a200241206a24000b840101037f230041106b2203240020002003410c6a2001105e22042802002202450440413010492202200129000037000d2002412d6a41003a0000200241256a200141186a2900003700002002411d6a200141106a290000370000200241156a200141086a2900003700002000200328020c2004200210460b200341106a24002002412d6a0b7f01037f230041106b2203240020002003410c6a200110702204280200220245044041c0001049220241386a4200370300200241306a420037030020022001290000370010200241206a200141106a280000360000200241186a200141086a2900003700002000200328020c2004200210460b200341106a2400200241306a0bdc0402047f037e230041a0026b220524002000103320004198056a200041b0016a103a044010040b20054190026a2001103420054180026a20022003103b200541f0016a2004103c200541e0016a4180081013220420054190026a103d200420054180026a103d2004200541f0016a103d200541003602d801200542003703d001200541d0016a2004280208200441016a20052d00e001220641017122071b220820082004280204200641017620071b6a1035200541b0016a200541d0016a103620054198016a103e20054188016a20054198016a1034200541f8006a200541b0016a103c200541e8006a4180081013220420054188016a103d2004200541f8006a103d2005410036026020054200370358200541d8006a2004280208200441016a20052d0068220641017122071b220820082004280204200641017620071b6a1035200541386a200541d8006a1036200041c0046a2204200541386a10372d0000044010040b2004200541386a103741013a0000200041e8046a2204200541b0016a103f220641086a290300210b200629030021092004200541b0016a103f2204200942017c220a3703002004200b200a200954ad7c2209370308200a200041f0016a290300852009200041f8016a2903008584500440200541306a200141106a2800002204360200200541286a200141086a290000220a37030020012900002109200541106a200a370300200541186a20043602002005200937032020052009370308200541086a20022003101e0b2005280258220004402005200036025c0b20052802d00122000440200520003602d4010b200541a0026a24000b3901027f41012103034002402002411447047f200020026a2d0000200120026a2d0000460d0141000520030b0f0b200241016a21020c000b000be80102057f027e230041206b220424002000102b220541281055200441186a21070340200441106a2001200210562004200429031022082007290300220910572005200429030020017ca74181086a2c0000102c2001420956210020024200522103200250210620082101200921022000200320061b0d000b0240200528020420052d00002200410176200041017122001b2203450d0020032005280208200541016a20001b22006a417f6a21030340200020034f0d0120002d00002106200020032d00003a0000200320063a00002003417f6a2103200041016a21000c000b000b200441206a24000bcd07010a7f230041206b22032400200341106a41800810132102200341086a41003602002003420037030002400240200228020420032d0010220441017620044101711b220641406b2205410b4f0440200641d0006a4170712204104921072003200536020420032004410172360200200320073602080c010b200320054101743a0000200341017221072005450d010b200720051051210720032d001021040b200520076a41003a0000200241016a21082002280208210a2002280204200441fe0171410176200441017122091b2102027f20032d00002204410171220b450440410a2107200441017622042006200620044b1b0c010b2003280200417e71417f6a210720032802042204200620042006491b0b2105200a200820091b2108024002400240027f02400240200520046b20076a20024f044020032802082003410172200b1b21074100210a20022005460440200221090c050b200420056b220b450440200521090c050b20022005490d01200720084f0d02200420076a20084d0d02200520076a20084d04402008200220056b6a21080c030b2007200820051052200220086a2108200220056b21022005210a41000c030b20032007200220046a20056b20076b2004410020052002200810530c050b2007200820021052200220076a200520076a200b1052200521090c030b20050b21092007200a6a220520026a200520096a200b10520b2007200a6a2008200210520b200220096b20046a2102024020032d00004101710440200320023602040c010b200320024101743a00000b200220076a41003a00000b2003410172210441002102034020024120464504402003280208200420032d00004101711b20066a200120026a22052d0000410476418c086a2d00003a00002003280208200420032d00004101711b20066a41016a20052d0000410f71418c086a2d00003a0000200241016a2102200641026a21060c010b0b419d08104f21060240027f20032d00002202410171220145044020024101762102410a0c010b200328020421022003280200417e71417f6a0b220520026b20064f04402006450d012003280208200420011b2204027f200245044041002102419d080c010b200420066a2004200210522006419d086a419d08200220046a419d084b1b419d082004419d084d1b0b20061052200220066a2106024020032d00004101710440200320063602040c010b200320064101743a00000b200420066a41003a00000c010b20032005200220066a20056b2002410041002006419d0810530b20002003290300370200200041086a200341086a28020036020020031054200341206a24000be20101067f200128020420012d00002202410176200241017122041b2102200141016a210520012802082106027f20002d00002201410171220704402000280200417e71417f6a210320002802040c010b410a210320014101760b21012006200520041b21040240200320016b20024f04402002450d01027f2007044020002802080c010b200041016a0b220320016a200420021050200120026a2101024020002d00004101710440200020013602040c010b200020014101743a00000b200120036a41003a00000f0b20002003200120026a20036b2001200141002002200410530b0b210020004200370000200041106a4100360000200041086a4200370000200010010b8f0101037f230041106b2203240020002003410c6a200110452204280200220245044041c0001049220241386a4200370300200241306a420037030020022001290000370010200241286a200141186a290000370000200241206a200141106a290000370000200241186a200141086a2900003700002000200328020c2004200210460b200341106a2400200241306a0be80602057f067e23004190036b2203240020001033200341a0026a103e20034190026a20011041210420034180026a200210412105200341d0026a103e200341a0026a200341d0026a103a2107200528020022060440200520063602040b200428020022050440200420053602040b200745044010040b200228020420022802006b41f40047044010040b200341e0016a20021036200341d0016a200341a0026a1034200341c0016a200341e0016a103c200341b0016a41800810132204200341d0016a103d2004200341c0016a103d200342003703a00120032d00b00121052004280204210720042802082106200341003602a801200341a0016a2006200441016a200541017122041b220620062007200541017620041b6a103520034180016a200341a0016a1036024020004198046a220520034180016a103f2204290300220842017c22094202544100200441086a290300220a2009200854ad7c220b501b450440200041f0036a20034180016a10372d0000450d0110040c010b200041a0036a200341e0016a1042200210430b200041f0036a20034180016a103741013a0000200341f0006a41800810132202200341c0016a103d200341d0026a2008200a103b2002200341d0026a103d2003410036026820032d00702104200228020421072002280208210620034200370360200341e0006a2006200241016a200441017122021b220620062007200441017620021b6a1035200341406b200341e0006a1036200041c8036a200341406b104220011043200520034180016a103f2202200b370308200220093703002009200041f0016a29030085200b200041f8016a2903008584500440200341286a103e200341206a200341f8016a2903002208370300200341186a200341f0016a290300220a370300200341106a200341e8016a290300220c370300200320032903e001220d370308200341c0026a200341306a290300370300200341c8026a200341386a280200360200200341d8026a200c370300200341e0026a200a370300200341e8026a2008370300200320032903283703b8022003200d3703d0022003200b370388032003200937038003200341f0026a41a0081013200341b8026a200341d0026a20034180036a10230b200328026022000440200320003602640b20032802a00122000440200320003602a4010b20034190036a24000b3b01017f2000420037020020004100360208200128020420012802006b2202044020002002103020012802002001280204200041046a10480b20000baf0101037f230041106b2203240020002003410c6a2001104522042802002202450440413c10492102200341086a41013a000020022001290000370010200241186a200141086a290000370000200241206a200141106a290000370000200241286a200141186a290000370000200241386a4100360200200241306a42003702002003200041046a3602042000200328020c20042002104620034100360200200310470b200341106a2400200241306a0b920101047f2000200147044020012802042203200128020022026b22042000280208200028020022016b4d0440200041046a21052004200028020420016b22004b04402002200020026a22002001105f1a20002003200510480f0b2005200220032001105f3602000f0b2001044020004100360208200042003702000b2000200020041059103020022003200041046a10480b0ba10101047f230041406a22052400200541306a4180081013210620052002103c20062005103d200520032004103b20062005103d2005410036022820054200370320200541206a2006280208200641016a20052d0030220241017122071b220820082006280204200241017620071b6a10352005200541206a10362000200141c8036a2005104210411a200528022022060440200520063602240b200541406b24000b890101027f200041046a2103024020002802042200044002400340024002402002200041106a2204104b0440200028020022040d012001200036020020000f0b20042002104b450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b480020032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b20002802042003104c2000200028020841016a3602080b3c01017f200028020021012000410036020002402001450d00200041086a2d0000450d00200141306a2802002200450d00200141346a20003602000b0b2800200120006b220141014e0440200228020020002001104a1a2002200228020020016a3602000b0b0b002000410120001b106c0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3a01037f034020024120470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000bec0101037f200120002001463a000c03400240024020002001460d00200128020822022d000c0d002002200228020822032802002204460440024020032802042204450d0020042d000c0d002004410c6a21010c030b200120022802004704402002104d2002280208220228020821030b200241013a000c200341003a000c2003104e0f0b02402004450d0020042d000c0d002004410c6a21010c020b200120022802004604402002104e2002280208220228020821030b200241013a000c200341003a000c2003104d0b0f0b200241013a000c200320002003463a000c200141013a0000200321010c000b000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b100020020440200020012002104a1a0b0bb90301027f02402001450d00200041303a0000200020016a2203417f6a41303a000020014103490d00200041303a0002200041303a00012003417d6a41303a00002003417e6a41303a000020014107490d00200041303a00032003417c6a41303a000020014109490d002000410020006b41037122026a220341b0e0c081033602002003200120026b417c7122026a2201417c6a41b0e0c0810336020020024109490d00200341b0e0c08103360208200341b0e0c08103360204200141786a41b0e0c08103360200200141746a41b0e0c0810336020020024119490d00200341b0e0c08103360218200341b0e0c08103360214200341b0e0c08103360210200341b0e0c0810336020c200141706a41b0e0c081033602002001416c6a41b0e0c08103360200200141686a41b0e0c08103360200200141646a41b0e0c081033602002002200341047141187222026b2101200220036a2102034020014120490d01200242b0e0c08183868c9830370300200241186a42b0e0c08183868c9830370300200241106a42b0e0c08183868c9830370300200241086a42b0e0c08183868c9830370300200241206a2102200141606a21010c000b000b20000b0f002002044020002001200210580b0bc30101027f027f20002d0000410171044020002802080c010b200041016a0b2109416f2108200141e6ffffff074d0440410b20014101742208200120026a220120012008491b220141106a4170712001410b491b21080b2008104921012004044020012009200410500b20060440200120046a2007200610500b200320056b220320046b22070440200120046a20066a200420096a20056a200710500b200020013602082000200320066a220436020420002008410172360200200120046a41003a00000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0bf80101057f0240027f20002d0000220241017104402000280204210320002802002202417e71417f6a0c010b20024101762103410a0b220420032001200320014b1b220141106a417071417f6a410a2001410a4b1b2201460d00027f2001410a460440200041016a210520002802080c010b4100200120044d200141016a104922051b0d0120002d0000220241017104404101210620002802080c010b41012106200041016a0b210420052004027f2002410171044020002802040c010b200241fe01714101760b41016a10502006044020002005360208200020033602042000200141016a4101723602000f0b200020034101743a00000b0b3801017f230041106b2203240020032001200210ba01200329030021012000200341086a29030037030820002001370300200341106a24000b7701017e20002001427f7e200242767e7c2001422088220242ffffffff0f7e7c200242f6ffffff0f7e200142ffffffff0f83220142f6ffffff0f7e22034220887c22024220887c200142ffffffff0f7e200242ffffffff0f837c22024220887c3703082000200342ffffffff0f832002422086843703000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002104a1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b8d0101017f20002802002002200141046a105c200028020420026b220341014e0440200128020820022003104a1a2001200128020820036a3602080b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b270020022002280200200120006b22016b2202360200200141014e0440200220002001104a1a0b0b450020004100360208200042003702000240200220016b2202450d0020002002103020024101480d00200028020420012002104a1a2000200028020420026a3602040b20000b890101027f200041046a21030240200028020422000440024003400240024020022000410d6a2204104b0440200028020022040d012001200036020020000f0b20042002104b450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b1900200120006b2201044020022000200110580b200120026a0b160020004100360208200042003702002000410010630b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2f01017f200028020820014904402001106c20002802002000280204104a210220002001360208200020023602000b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a106722023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10682103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031069200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110580b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274104921040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110580b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b9b0101047f230041106b220124002001200036020c2000047f41940b200041086a2202411076220041940b2802006a220336020041900b41900b280200220420026a41076a417871220236020002400240200341107420024d044041940b200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104104a41086a0541000b2100200141106a240020000b6701017f20002802002000280204200141046a105c200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b890101027f200041046a21030240200028020422000440024003400240024020022000410d6a2204106f0440200028020022040d012001200036020020000f0b20042002106f450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b3a01037f034020024114470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000b890101027f200041046a2103024020002802042200044002400340024002402002200041106a2204106f0440200028020022040d012001200036020020000f0b20042002106f450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b5b002000420037030820004200370300200042e3cdf5ecf0999a94c200370310200041106a200041206a107245044020002000290300370320200041286a200041086a2903003703000b20001003370320200041286a42003703000bf30102057f017e230041d0006b22022400200241386a101b220320002903001073200328020c200341106a28020047044010000b02402003280200220520032802042206100d2204450440410021000c010b410021002002410036023020024200370328200241286a2004102a2005200620022802282205200228022c20056b100e417f4704402002200241106a2002280228220041016a200228022c2000417f736a10741075200229030021072001200241086a29030037030820012007370300200421000b20022802282204450d002002200436022c0b200328020c22040440200320043602100b200241d0006a240020000b0b00200020014200101a1a0b0c00200020012002411c10760b9e0102027f027e230041106b22022400200110770240024020011078450d002001280204450d0020012802002d000041c001490d010b10000b200241086a20011079200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000b750020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d00200010b30120024f0d002003410471044010000c010b200042003702000b02402003411071450d00200010b30120024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001077200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001107a2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bff0201037f200028020445044041000f0b2000107741012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b9c1e020a7f067e230041900a6b2200240010b201100b2201106c2202100c200041d0036a200041b8016a20022001107422034100107c200041d0036a107702400240200041d0036a1078450d0020002802d403450d0020002802d0032d000041c001490d010b10000b200041c0026a200041d0036a107920002802c402220141094f044010000b20002802c00221020340200104402001417f6a21012002310000200a42088684210a200241016a21020c010b0b02400240200a500d0041ae0a107d200a510440200041e8026a4200370300200041d8026a4100360200200042003703e002200042003703c802200042003703c002200042003703d0022003107e410447044010000b200041e0026a2109200041013602d001200020033602e8012000200041d0016a3602ec01200041e8016a200041c0026a107f200041f0096a200320002802d001107c200041d0026a21070240024020002802f409450d0020002802f0092d000041c001490d00200041f0096a107e210120002802d80220002802d00222026b41146d20014904402007200041d0036a200120002802d40220026b41146d200041d8026a108001220110810120011082010b20004180026a200041f0096a108301200041a8036a200041f0096a108401200041d8026a2108200041b0026a2102200041a8026a2103034020002802840220002802ac0346044020002802880220002802b003460d030b200041d0036a20004180026a1085012002410036020020034200370300200042003703a002200041d0036a200041a0026a108601024020002802d402220120002802d8022204490440200120002903a002370000200141106a2002280200360000200141086a2003290300370000200020002802d40241146a3602d4020c010b200041d0096a200120002802d00222056b41146d220141016a2206200420056b41146d2204410174220520052006491b41cc99b3e600200441e6cc9933491b20012008108001210120002802d809220420002903a002370000200441106a2002280200360000200441086a2003290300370000200020002802d80941146a3602d8092007200110810120011082010b20004180026a1087010c000b000b10000b200020002802d00141016a3602d001200041e8016a2009107f200041d0036a108801210220002903c802210a20002903c002210b200041d0096a20071089012101200041e8026a290300210c20002903e002210d2002200b200a200041f0096a20011089012203200d200c1028200328020022040440200320043602040b200128020022030440200120033602040b2002108a0120002802d0022201450d02200020013602d4020c020b41b30a107d200a510440200041800a6a22014100360200200041f8096a22044200370300200042003703f0092003107e410247044010000b200041d0036a20034101107c200041d0036a200041f0096a108601200041d0036a1088012102200041e0016a20012802002201360200200041d8016a2004290300220a370300200041106a2001360200200041086a200a370300200020002903f009220b3703d001200041f0016a200a370300200041f8016a2001360200200041c8026a200a370300200041d0026a20013602002000200b3703002000200b3703e8012000200b3703c0022002200010322002108a010c020b41c30a107d200a510440200041e8026a22024200370300200041d0026a22044100360200200041f8026a420037030020004180036a420037030020004188036a4200370300200042003703e002200042003703c802200042003703c002200042003703f002200041f0026a21012003107e410447044010000b200041d0036a20034101107c200041d0036a200041c0026a108601200041d0036a20034102107c200041d0006a200041d0036a10752002200041d8006a290300370300200020002903503703e002200041d0036a20034103107c200041d0036a2001108b01200041d0036a1088012103200041d8016a220520002903c802370300200041e0016a2206200428020036020020004188026a2204200141086a29000037030020004190026a2207200141106a29000037030020004198026a2208200141186a290000370300200020002903c0023703d00120002001290000370380022002290300210a20002903e002210b200041a8026a22012004290300370300200041b0026a22022007290300370300200041b8026a2204200829030037030020002000290380023703a002200041f0016a2005290300220c370300200041f8016a20062802002205360200200041d8096a2206200c370300200041e0096a22072005360200200020002903d001220c3703e8012000200c3703d009200041880a6a22052004290300370300200041800a6a22042002290300370300200041f8096a22022001290300370300200020002903a0023703f009200041c8006a2007280200360200200041406b2006290300370300200020002903d009370338200041306a2005290300370300200041286a2004290300370300200041206a2002290300370300200020002903f0093703182003200041386a200b200a200041186a10392003108a010c020b41cb0a107d200a510440200041e8026a22014200370300200041d0026a22054100360200200041f8026a2206420037030020004180036a22074100360200200042003703e002200042003703c802200042003703c002200042003703f0022000410036028c03200042003702840320004184036a2104200041f0026a21022003107e410547044010000b200041013602d009200020033602f0092000200041d0096a3602f409200041f0096a200041c0026a108c01200041d0036a200320002802d009107c200041f8006a200041d0036a1075200120004180016a290300370300200020002903783703e002200020002802d00941016a3602d009200041f0096a2002108c01200041d0036a200320002802d009107c200041d0036a2004108d01200041d0036a108801210220004188026a220820002903c80237030020004190026a22092005280200360200200041b0036a22052006290300370300200041b8036a22062007280200360200200020002903c00237038002200020002903f0023703a8032001290300210b20002903e002210c20004198036a200410412103200041d8016a2008290300220a370300200041e0016a20092802002201360200200041f0016a2005290300370300200041f8016a2006280200360200200041a8026a2205200a370300200041b0026a220620013602002000200029038002220a3703d001200020002903a8033703e8012000200a3703a002200041c0036a200310412104200041d8096a2005290300220a370300200041e0096a20062802002201360200200041f8096a2205200a370300200041800a6a2001360200200241d8026a290300210d200241d0026a290300210e200041e8006a200a370300200041f0006a2001360200200020002903a002220a3703d0092000200a3703f0092000200a370360200041e0006a200c200b200e200d1020200428020022010440200420013602040b200041d0096a101b2101200041880a6a4100360200200041800a6a420037030020054200370300200042003703f009200041f0096a420142001017210420002802f0092105200441046a101d200120051018200142014200101a220128020c200141106a28020047044010000b200128020020012802041011200128020c22040440200120043602100b200328020022010440200320013602040b2002108a012000280284032201450d0220002001360288030c020b41db0a107d200a510440200041d0026a4200370300200042003703c802200042003703c0022003107e410347044010000b200041013602f009200020033602d0032000200041f0096a3602d403200041d0036a200041c0026a108e01200041d0036a200041cc026a2202108e01200041d0036a1088012103200041a0026a200041c0026a1041210120004180026a2002104121022003200041f0096a200110412204200041d0096a2002104122051040200528020022060440200520063602040b200428020022050440200420053602040b200228020022040440200220043602040b200128020022020440200120023602040b2003108a0120002802cc0222010440200020013602d0020b20002802c0022201450d02200020013602c4020c020b41eb0a107d200a510440200041e8026a22014200370300200041d8026a22024200370300200041d0026a22044200370300200042003703e002200042003703c802200042003703c0022003107e410347044010000b200041d0036a20034101107c200041d0036a200041c0026a108b01200041d0036a20034102107c200041a8016a200041d0036a10752001200041b0016a290300220e370300200020002903a801220f3703e002200041d0036a108801210120004198026a2002290300220a37030020004190026a2004290300220b37030020004188026a20002903c802220c370300200020002903c002220d37038002200041a8026a200c370300200041b0026a200b370300200041b8026a200a370300200041f8096a200c370300200041800a6a200b370300200041880a6a200a3703002000200d3703a0022000200d3703f009200041a0016a200a37030020004198016a200b37030020004190016a200c3703002000200d37038801200041d0096a200120004188016a200f200e1044200041d0096a108f0120002802d00922020440200020023602d4090b2001108a010c020b41f50a107d200a520d00200041e8096a22024200370300200041e0096a22044200370300200041d8096a22054200370300200042003703d0092003107e410247044010000b200041d0036a20034101107c200041d0036a200041d0096a108b01200041d0036a108801210120004198026a2002290300220d37030020004190026a2004290300220a37030020004188026a2005290300220b370300200020002903d009220c37038002200041a8026a200b370300200041b0026a200a370300200041b8026a200d370300200041f8096a200b370300200041800a6a200a370300200041880a6a2202200d3703002000200c3703a0022000200c3703f009200041d0026a200a370300200041c8026a200b370300200041d8026a20022903003703002000200c3703c002200041a8036a200141a0036a200041c0026a104210412202108f01200228020022030440200220033602040b2001108a010c010b10000b109001200041900a6a24000bcf0202067f017e230041106b220324002001280208220520024b0440200341086a200110b70120012003280208200328020c10b50136020c2003200110b701410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410761a200341106a24000f0b2003200110b70141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b210520012004360214200120053602102003200641002005200410b50110b6012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2601017f02402000280204450d0020002802002d000041c001490d00200010910121010b20010b6302017f017e230041306b22022400200241186a20002802002000280204280200107c200241086a200241186a1075200229030821032001200241106a2903003703082001200337030020002802042200200028020041016a360200200241306a24000b4d01017f2000410036020c200041106a200336020020010440200110920121040b2000200436020020002004200241146c6a220236020820002004200141146c6a36020c2000200236020420000b8d0101037f200120012802042000280204200028020022046b2203416c6d41146c6a2202360204200341004a0440200220042003104a1a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001416c6a22013602080c010b0b0b0b002000200141011093010b0b002000200141001093010b160020002001280204200141086a280200411c10761a0bcf0102037f027e230041406a2202240020001077200241386a20001079200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10000b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a20022802382003104a1a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000bb70102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a200141002004200210b50110b60120002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b9d1b020b7f027e23004180026b2202240020001071200041386a2203420037030020004200370330200041406b220142f4d9d3c2f1b6adacb77f3703002001200041d0006a107245044020002000290330370350200041d8006a20032903003703000b200041e8006a22034200370300200041e0006a4200370300200041f0006a220142d1fcb0a383decbeaa97f370300200120004180016a1072450440200020002903603703800120004188016a20032903003703000b2000420037009001200041a0016a410036000020004198016a4200370000200041b0016a22014200370000200041a8016a220342f2c0dec7c1e2b382ae7f370300200041b8016a4200370000200041c0016a410036000020032001109401450440200120004190016a2203290300370300200141106a200341106a280200360200200141086a200341086a2903003703000b200042003703d001200041d8016a22034200370300200041e0016a220142b385a9b994ddda95b67f3703002001200041f0016a1072450440200020002903d0013703f001200041f8016a20032903003703000b200042003703800220004188026a2203420037030020004190026a220142ca9192e9e8a492bdf8003703002001200041a0026a107245044020002000290380023703a002200041a8026a20032903003703000b200042003703b002200041b8026a22034200370300200041c0026a220142f2b4c592e393a5d00f3703002001200041d0026a1072450440200020002903b0023703d002200041d8026a20032903003703000b200041e4026a22074200370200200041fc026a220a4200370200200041f0026a220142e8cb80a8b3c9a8f2f600370300200020073602e002200041f8026a2204200a36020020024198016a101b220820012903001073200828020c200841106a28020047044010000b02402008280200220320082802042205100d220b450440410021010c010b410021012002410036024020024200370338200241386a200b102a2003200520022802382206200228023c20066b100e417f47044002400240200241c8006a2002280238220141016a200228023c2001417f736a10742201280204450d0020012802002d000041c001490d00200241c0016a2001108301200241b0016a2001108401200241306a2101200241286a2103034020022802c40120022802b40146044020022802c80120022802b801460d030b200241d0016a200241c0016a108501200141003602002003420037030020024200370320200241003a0034200241d0016a109501410247044010000b200241f8016a22054100360200200241f0016a22064200370300200242003703e801200241e0006a200241d0016a4100107c200241e0006a200241e8016a1086012003200629030037030020012005280200360200200220022903e801370320200241e0006a200241d0016a4101107c200241e0006a2002411f6a109601200220022d001f22063a00342004200241e0006a200241206a106e2209280200450440412410492205200229032037000d200541216a20063a00002005411d6a2001280200360000200541156a2003290300370000200420022802602009200510460b200241c0016a1087010c000b000b10000b200b21010b20022802382203450d002002200336023c0b200828020c22030440200820033602100b024020010d0020002802e00221010240200028028003450d0020002802f80221032000200a3602f802200041003602800320002802fc022105200041003602fc022005410036020820032802042205200320051b2105034020052203450d01200120074704402003200129000d37000d2003411d6a2001411d6a280000360000200341156a200141156a290000370000200341216a200141216a2d00003a0000024020032802082205450440410021050c010b2003200528020022064604402005410036020020052802042206450d01200610970121050c010b200541003602042006450d00200610970121050b2004200241e0006a2003410d6a109801210620042002280260200620031046200110990121010c010b0b0340200328020822030d000b200721010b034020012007460d01412410492203200129000d37000d2003411a6a2001411a6a290000370000200341156a200141156a2900003700002004200241e0006a2003410d6a109801210520042002280260200520031046200110990121010c000b000b2000418c036a22014200370200200041a4036a2203420037020020004198036a2204428dd883fcdee9eee7023703002000200136028803200041a0036a2201200336020020042001109a01450440200120004188036a109b010b200041b4036a22014200370200200041cc036a22034200370200200041c0036a220442b0a8d0cb96a0c1df43370300200020013602b003200041c8036a2201200336020020042001109a014504402001200041b0036a109b010b200041dc036a22014200370200200041f4036a22034200370200200041e8036a220442a0d6e7f58c97cd825b370300200020013602d803200041f0036a2201200336020020042001109c014504402001200041d8036a109d010b20004184046a220142003702002000419c046a2203420037020020004190046a220442c1c7f8cfb1afd6818f7f370300200020013602800420004198046a2201200336020020042001109e01450440200120004180046a109f010b200041ac046a22014200370200200041c4046a22034200370200200041b8046a2204429787ecc38ba5d0dd61370300200020013602a804200041c0046a2201200336020020042001109c014504402001200041a8046a109d010b200041d4046a22014200370200200041ec046a22034200370200200041e0046a22044282fce4dba480a7d605370300200020013602d004200041e8046a2201200336020020042001109e014504402001200041d0046a109f010b200042003700f80420004188056a410036000020004180056a420037000020004198056a2201420037000020004190056a220342ccf683bcc3c4ffaff500370300200041a0056a4200370000200041a8056a4100360000200320011094014504402001200041f8046a2203290300370300200141106a200341106a280200360200200141086a200341086a2903003703000b200041b4056a22014200370200200041cc056a22034200370200200041c0056a220442e0efe9b9c3e485e0bb7f370300200020013602b005200041c8056a2201200336020020042001109c014504402001200041b0056a109d010b200041dc056a22074200370200200041f4056a22084200370200200041e8056a220142f7b9b5b589c99789a17f370300200020073602d805200041f0056a22032008360200200241c8006a101b220920012903001073200928020c200941106a28020047044010000b02402009280200220420092802042205100d220a450440410021010c010b410021012002410036024020024200370338200241386a200a102a2004200520022802382206200228023c20066b100e417f47044002400240200241206a2002280238220141016a200228023c2001417f736a10742201280204450d0020012802002d000041c001490d00200241c0016a2001108301200241b0016a200110840120024188016a2105200241f0006a2101034020022802c40120022802b40146044020022802c80120022802b801460d030b20024198016a200241c0016a10850120054200370300200141003602002002420037038001200242003703682002420037036020024198016a109501410247044010000b200241f8016a22044100360200200241f0016a22064200370300200242003703e801200241d0016a20024198016a4100107c200241d0016a200241e8016a10860120012004280200360200200220022903e80137036020022006290300370368200241d0016a20024198016a4101107c200241086a200241d0016a10752005200241106a290300220c37030020022002290308220d370380012003200241d0016a200241e0006a1070220628020045044041c0001049220441386a200c370300200441306a200d370300200441186a200229036837030020042002290360370310200441206a2001280200360200200320022802d0012006200410460b200241c0016a1087010c000b000b10000b200a21010b20022802382204450d002002200436023c0b200928020c22040440200920043602100b024020010d0020002802d8052101024020002802f805450d0020002802f0052104200020083602f005200041003602f80520002802f4052105200041003602f4052005410036020820042802042205200420051b2105034020052204450d012001200747044020042001290010370010200441206a200141206a280000360000200441186a200141186a2900003700002001290330210c200441386a200141386a290300370300200441306a200c370300024020042802082205450440410021050c010b2004200528020022064604402005410036020020052802042206450d01200610970121050c010b200541003602042006450d00200610970121050b2003200241e0006a200441106a10a001210620032002280260200620041046200110990121010c010b0b0340200428020822040d000b200721010b034020012007460d012003200241e0006a41c0001049220441106a200141106a4130104a10a001210520032002280260200520041046200110990121010c000b000b20024180026a240020000b7c01027f20004200370200200041003602080240200128020420012802006b2202450d002000200241146d2203109201220236020020002002200341146c6a360208200020023602042001280204200128020022036b22014101480d00200220032001104a1a20002000280204200141146e41146c6a3602040b20000bed0f020d7f067e23004190026b22012400200141c8006a101b2205200041e8056a220229030010a1011018200520022903001073200528020c200541106a28020047044010000b200528020421062005280200210b200141306a101b2109200141f8006a4100360200200141f0006a4200370300200141e8006a4200370300200142003703600240200041f8056a280200450440200141e0006a10a2010c010b200041f4056a2103200141e0006a41001021210720002802f00521020340200220034604402007410110211a0520014198016a200241286a290300220e37030020014190016a200241206a290300220f370300200120022903102210370380012001200241186a290300221137038801200241386a290300211220022903302113200141b8016a200e370300200141b0016a2204200f370300200120113703a801200120103703a0012007410010212108200141d8016a20042802002204360200200141d0016a20012903a801220e370300200141286a2004360200200141206a200e370300200120012903a001220f3703c801200141e8016a200e370300200141f0016a200436020020014180026a200e37030020014188026a20043602002001200f3703182001200f3703e0012001200f3703f8012008200141186a1026201320121017410110211a200210990121020c010b0b0b20012802602102200141e0006a410472101d200920014180016a10a301220a10a40120092002200a2802046a200a2802006b1018200920002802f80510222103200041f4056a210720002802f0052102034020022007470440200341021022210820014188026a200241206a280200220436020020014180026a200241186a290300220e37030020012002290310220f3703f801200141d0016a200e370300200141d8016a2004360200200141e8016a200e370300200141f0016a20043602002001200f3703c8012001200f3703e001200141b0016a2004360200200141a8016a200e3703002001200f3703a0012008200141a0016a411410272002290330200241386a290300101a1a200210990121020c010b0b0240200328020c200341106a280200460440200341046a2102200328020021040c010b200341046a2102100020032802002104200328020c2003280210460d0010000b200b200620042002280200100f200a28020022020440200a20023602040b200328020c22020440200320023602100b200528020c22020440200520023602100b200041c0056a200041c8056a10a50120004190056a20004198056a10a601200041e0046a200041e8046a10a701200041b8046a200041c0046a10a50120004190046a20004198046a10a701200041e8036a200041f0036a10a501200041c0036a200041c8036a220210a801200210a901200041b0036a10a90120004198036a200041a0036a220210a801200210a90120004188036a10a90120014180016a101b2206200041f0026a220229030010a1011018200620022903001073200628020c200641106a28020047044010000b2006280204210c2006280200210d200141e0006a101b210b200141b8016a4100360200200141b0016a4200370300200141a8016a4200370300200142003703a001024020004180036a280200450440200141a0016a10a2010c010b200041fc026a210a200141a0016a41001021210920002802f802210203402002200a4604402009410110211a05200141406b2002411d6a2800002204360200200141386a200241156a290000220e3703002001200229000d220f370330200241216a2d00002108200141d8016a22032004360200200141d0016a2207200e3703002001200f3703c8012009410010212105200141f0016a20032802002204360200200141e8016a2007290300220e370300200141106a2004360200200141086a200e370300200120012903c801220f3703e00120014180026a200e37030020014188026a2004360200200141d0006a200e370300200141d8006a20043602002001200f3703002001200f3703f8012001200f370348200520011026200841004710aa01410110211a200210990121020c010b0b0b20012802a0012102200141a0016a410472101d200b200141c8006a10a301220510a401200b200220052802046a20052802006b1018200b20002802800310222103200041fc026a210720002802f80221020340200220074704402003410210222108200141d8016a2002411d6a2800002204360200200141d0016a200241156a290000220e3703002001200229000d220f3703c801200141e8016a200e370300200141f0016a200436020020014180026a200e3703002001418802"; - - private static String BINARY_1 = "6a20043602002001200f3703e0012001200f3703f801200141b0016a2004360200200141a8016a200e3703002001200f3703a0012008200141a0016a41141027200241216a2d000010ab01200210990121020c010b0b0240200328020c200341106a280200460440200341046a2102200328020021040c010b200341046a2102100020032802002104200328020c2003280210460d0010000b200d200c20042002280200100f200528020022020440200520023602040b200328020c22020440200320023602100b200628020c22020440200620023602100b200041c0026a200041d0026a10ac0120004190026a200041a0026a10ac01200041e0016a200041f0016a10ac01200041a8016a200041b0016a10a601200041f0006a20004180016a10ac01200041406b200041d0006a10ac01200041106a200041206a10ac0120014190026a24000bf80102047f047e230041d0006b2202240020001077200241c8006a20001079200228024c2103024002402000280204450d00200341204b0d0020002802002d000041c001490d010b10000b200241406b22004200370300200241386a22044200370300200241306a220542003703002002420037032820022003412020034120491b22036b41c8006a20022802482003104a1a200241206a20002903002206370300200241186a20042903002207370300200241106a20052903002208370300200220022903282209370308200141186a2006370000200141106a2007370000200141086a200837000020012009370000200241d0006a24000b4401017f230041206b22022400200241086a20002802002000280204280200107c200241086a200110860120002802042200200028020041016a360200200241206a24000b820101027f230041206b22022400024002402000280204044020002802002d000041c001490d010b20024100360208200242003703000c010b200241186a2000107920022802182103200241106a200010792002200320022802102000107a6a105d1a0b2001200210ad01200228020022000440200220003602040b200241206a24000b4401017f230041206b22022400200241086a20002802002000280204280200107c200241086a2001108d0120002802042200200028020041016a360200200241206a24000b6401027f230041206b22022400200241086a101b22012000280200200041046a28020010251018200120001019200128020c200141106a28020047044010000b200128020020012802041011200128020c22000440200120003602100b200241206a24000b880101037f41800b410136020041840b2802002100034020000440034041880b41880b2802002201417f6a2202360200200141014845044041800b4100360200200020024102746a22004184016a280200200041046a28020011020041800b410136020041840b28020021000c010b0b41880b412036020041840b200028020022003602000c010b0b0b820101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a200010b701200128020c210003402000450d0120014100200128020822032003200010b50122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b0900200041146c10490be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110b70120004100200428020c220120042802082202200110b50122032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000bd20101057f230041406a22022400200241286a101b220320002903001073200328020c200341106a28020047044010000b02402003280200220520032802042206100d2204450440410021000c010b410021002002410036022020024200370318200241186a2004102a2005200620022802182205200228021c20056b100e417f47044020022002280218220041016a200228021c2000417f736a10742001108601200421000b20022802182204450d002002200436021c0b200328020c22040440200320043602100b200241406b240020000b220002402000280204044020002802002d000041bf014b0d010b10000b20001091010b850101037f230041106b22022400200010770240024020001078450d002000280204450d0020002802002d000041c001490d010b10000b200241086a20001079200228020c220041024f044010000b200228020821030340200004402000417f6a210020032d00002104200341016a21030c010b0b200120044100473a0000200241106a24000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f02402000280204220304400340024020022003410d6a106f044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b9f06010b7f230041f0016b22022400200241286a101b220420002903001073200428020c200441106a28020047044010000b02402004280200220320042802042205100d2209450440410021000c010b410021002002410036022020024200370318200241186a2009102a2003200520022802182206200228021c20066b100e417f4704400240024020022002280218220041016a200228021c2000417f736a10742200280204450d0020002802002d000041c001490d0020024198016a200010830120024188016a2000108401200141046a210a200241d8006a2105200241d0006a2106200241c8006a21070340200228029c01200228028c0146044020022802a001200228029001460d030b200241f0006a20024198016a108501200542003703002006420037030020074200370300200242003703402002410036026820024200370360200241f0006a109501410247044010000b200241e8016a22004200370300200241e0016a22034200370300200241d8016a22084200370300200242003703d001200241b8016a200241f0006a4100107c200241b8016a200241d0016a108b01200720082903003703002006200329030037030020052000290300370300200220022903d001370340200241003602b001200242003703a801200241b8016a200241f0006a4101107c200241b8016a200241a8016a108d01200220022802a8012203360260200220022802ac012208360264200220022802b001220b36026802402001200241b8016a200241406b1045220c280200450440413c104922002002290340370210200041186a2007290300370200200041206a2006290300370200200041286a2005290300370200200041386a200b360200200041346a2008360200200041306a20033602002002200a3602d4012002410036026820024200370360200241013a00d801200120022802b801200c20001046200241003602d001200241d0016a10470c010b2003450d00200220033602640b20024198016a1087010c000b000b10000b200921000b20022802182203450d002002200336021c0b200428020c22030440200420033602100b200241f0016a240020000bc20301057f230041206b22042400024020002001460d00200141046a21062001280200210102402000280208450d00200028020021022000200041046a3602002000410036020820002802042103200041003602042003410036020820022802042203200220031b2103034020032202450d012001200647044020022001290010370010200241286a200141286a290000370000200241206a200141206a290000370000200241186a200141186a290000370000200241306a200141306a1043024020022802082203450440410021030c010b2002200328020022054604402003410036020020032802042205450d01200510970121030c010b200341003602042005450d00200510970121030b2000200441106a200241106a10b001210520002004280210200520021046200110990121010c010b0b0340200228020822010440200121020c010b0b200210af01200621010b200041046a2105034020012006460d01413c1049210220042005360214200241106a2203200141106a10ae01200441013a001820002004410c6a200310b00121032000200428020c20032002104620044100360210200441106a1047200110990121010c000b000b200441206a24000b980501087f230041e0016b22022400200241306a101b220520002903001073200528020c200541106a28020047044010000b02402005280200220320052802042206100d2209450440410021000c010b410021002002410036022820024200370320200241206a2009102a2003200620022802202204200228022420046b100e417f47044002400240200241086a2002280220220041016a20022802242000417f736a10742200280204450d0020002802002d000041c001490d0020024198016a200010830120024188016a2000108401200241e0006a2100200241d8006a2103200241d0006a21060340200228029c01200228028c0146044020022802a001200228029001460d030b200241f0006a20024198016a10850120004200370300200342003703002006420037030020024200370348200241003a0068200241f0006a109501410247044010000b200241d8016a22044200370300200241d0016a22074200370300200241c8016a22084200370300200242003703c001200241a8016a200241f0006a4100107c200241a8016a200241c0016a108b01200620082903003703002003200729030037030020002004290300370300200220022903c001370348200241a8016a200241f0006a4101107c200241a8016a200241a7016a109601200220022d00a70122073a00682001200241c0016a200241c8006a105e2208280200450440413010492204200229034837000d2004412d6a20073a0000200441256a20002903003700002004411d6a2003290300370000200441156a2006290300370000200120022802c0012008200410460b20024198016a1087010c000b000b10000b200921000b20022802202203450d00200220033602240b200528020c22030440200520033602100b200241e0016a240020000b920301057f230041106b22052400024020002001460d00200141046a21062001280200210102402000280208450d00200028020021022000200041046a3602002000410036020820002802042103200041003602042003410036020820022802042203200220031b2103034020032202450d01200120064704402002200129000d37000d200241256a200141256a2900003700002002411d6a2001411d6a290000370000200241156a200141156a2900003700002002412d6a2001412d6a2d00003a0000024020022802082203450440410021030c010b2002200328020022044604402003410036020020032802042204450d01200410970121030c010b200341003602042004450d00200410970121030b2000200541086a2002410d6a10b101210420002005280208200420021046200110990121010c010b0b0340200228020822020d000b200621010b034020012006460d0120002005410c6a413010492202410d6a2001410d6a4121104a10b10121032000200528020c200320021046200110990121010c000b000b200541106a24000bb50502087f027e230041f0016b22022400200241386a101b220420002903001073200428020c200441106a28020047044010000b02402004280200220320042802042205100d2208450440410021000c010b410021002002410036023020024200370328200241286a2008102a2003200520022802282206200228022c20066b100e417f47044002400240200241106a2002280228220041016a200228022c2000417f736a10742200280204450d0020002802002d000041c001490d00200241a8016a200010830120024198016a2000108401200241f8006a2106200241e8006a2103200241e0006a2105034020022802ac01200228029c0146044020022802b00120022802a001460d030b20024180016a200241a8016a10850120064200370300200342003703002005420037030020024200370370200242003703582002420037035020024180016a109501410247044010000b200241e8016a22004200370300200241e0016a22074200370300200241d8016a22094200370300200242003703d001200241b8016a20024180016a4100107c200241b8016a200241d0016a108b012005200729030037030020032000290300370300200220022903d00137035020022009290300370358200241b8016a20024180016a4101107c2002200241b8016a10752006200241086a290300220a37030020022002290300220b3703702001200241d0016a200241d0006a1045220728020045044041c0001049220041386a200a370300200041306a200b370300200041186a200229035837030020002002290350370310200041286a2003290300370300200041206a2005290300370300200120022802d0012007200010460b200241a8016a1087010c000b000b10000b200821000b20022802282203450d002002200336022c0b200428020c22030440200420033602100b200241f0016a240020000ba60302057f017e230041106b22052400024020002001460d00200141046a21062001280200210102402000280208450d00200028020021022000200041046a3602002000410036020820002802042103200041003602042003410036020820022802042203200220031b2103034020032202450d012001200647044020022001290010370010200241286a200141286a290000370000200241206a200141206a290000370000200241186a200141186a29000037000020012903302107200241386a200141386a290300370300200241306a2007370300024020022802082203450440410021030c010b2002200328020022044604402003410036020020032802042204450d01200410970121030c010b200341003602042004450d00200410970121030b2000200541086a200241106a10b001210420002005280208200420021046200110990121010c010b0b0340200228020822020d000b200621010b034020012006460d0120002005410c6a41c0001049220241106a200141106a4130104a10b00121032000200528020c200320021046200110990121010c000b000b200541106a24000b5c01017f0240200028020422030440034002402002200341106a106f044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b5301037f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200042001017210220012802002103200241046a101d200141206a240020030b3901017f027f200041186a28020022010440200041086a280200200041146a280200200110620c010b20000b2201200128020041016a3602000b30002000410036020820004200370200200041011030200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004106320002802040520020b20002802006a20032001104a1a2000200028020420016a3602040bc708020d7f047e23004190026b22022400200241186a101b2205200029030010a1011018200520002903001073200528020c200541106a28020047044010000b2005280204210a2005280200210b2002101b2108200241c8006a4100360200200241406b4200370300200241386a42003703002002420037033002402001280208450440200241306a10a2010c010b200141046a210c200241306a4100102121092001280200210303402003200c4604402009410110211a05200241e8006a200341256a290000220f370300200241e0006a2003411d6a2900002210370300200241d8006a200341156a29000022113703002002200329000d22123703502003412d6a2d0000210720024188016a2204200f37030020024180016a220d2010370300200241f8006a220e201137030020022012370370410021002009410010212106200241a8016a2004290300220f370300200241a0016a200d290300221037030020024198016a200e290300221137030020022002290370221237039001200241b8016a2011370300200241c0016a2010370300200241c8016a200f370300200241d8016a2011370300200241e0016a2010370300200241e8016a200f370300200220123703b001200220123703d00120024188026a200f37030020024180026a2010370300200241f8016a2011370300200220123703f001027f0340410120004120460d011a200241f0016a20006a2104200041016a210020042d0000450d000b41210b2104027f200641186a28020022000440200641086a280200200641146a280200200010620c010b20060b2200200028020020046a3602002006200741ff017141004710aa01410110211a200310990121030c010b0b0b20022802302100200241306a410472101d2008200241f0006a10a301220710a4012008200020072802046a20072802006b10182008200128020810222103200141046a210620012802002100034020002006464504402003410210222104200241a8016a200041256a290000220f370300200241a0016a2000411d6a290000221037030020024198016a200041156a29000022113703002002200029000d221237039001200241b8016a2011370300200241c0016a2010370300200241c8016a200f370300200241d8016a2011370300200241e0016a2010370300200241e8016a200f370300200220123703b001200220123703d00120024188026a200f37030020024180026a2010370300200241f8016a2011370300200220123703f0012004200241f0016a412010272000412d6a2d000010ab01200010990121000c010b0b0240200328020c200341106a280200460440200341046a2100200328020021040c010b200341046a2100100020032802002104200328020c2003280210460d0010000b200b200a20042000280200100f200728020022000440200720003602040b200328020c22000440200320003602100b200528020c22000440200520003602100b20024190026a24000bde04020e7f027e230041d0016b22022400200241d0006a101b2205200029030010a1011018200520002903001073200528020c200541106a28020047044010000b2005280204210620052802002107200241386a101b210320024198016a410036020020024190016a2208420037030020024188016a22094200370300200241f8006a200141106a22042800002200360200200241f0006a200141086a220a290000221137030020012900002110200241106a2011370300200241186a2000360200200242003703800120022010370368200241a8016a220b2011370300200241b0016a220c2000360200200241c0016a220d2011370300200241c8016a220e200036020020022010370308200220103703a001200220103703b80120024180016a200241086a10262100200228028001210f200041046a101d2003200241e8006a10a301220010a4012003200f20002802046a20002802006b1018200241306a20042800002204360200200241286a200a2900002210370300200220012900002211370320200b2010370300200c2004360200200d2010370300200e2004360200200220113703a001200220113703b801200820043602002009201037030020022011370380010240200320024180016a41141027220128020c200141106a280200460440200141046a2103200128020021040c010b200141046a2103100020012802002104200128020c2001280210460d0010000b2007200620042003280200100f200028020022030440200020033602040b200128020c22000440200120003602100b200528020c22010440200520013602100b200241d0016a24000bc308020b7f067e23004190026b22022400200241186a101b2205200029030010a1011018200520002903001073200528020c200541106a28020047044010000b2005280204210a2005280200210b2002101b2108200241c8006a4100360200200241406b4200370300200241386a42003703002002420037033002402001280208450440200241306a10a2010c010b200141046a210c200241306a4100102121092001280200210303402003200c4604402009410110211a05200241e8006a200341286a290300220d370300200241e0006a200341206a290300220e37030020022003290310220f3703502002200341186a2903002210370358200341386a29030021112003290330211220024188016a2204200d37030020024180016a2207200e370300200220103703782002200f370370410021002009410010212106200241a8016a2004290300220d370300200241a0016a2007290300220e37030020024198016a2002290378220f37030020022002290370221037039001200241b8016a200f370300200241c0016a200e370300200241c8016a200d370300200241d8016a200f370300200241e0016a200e370300200241e8016a200d370300200220103703b001200220103703d00120024188026a200d37030020024180026a200e370300200241f8016a200f370300200220103703f001027f0340410120004120460d011a200241f0016a20006a2104200041016a210020042d0000450d000b41210b2104027f200641186a28020022000440200641086a280200200641146a280200200010620c010b20060b2200200028020020046a3602002006201220111017410110211a200310990121030c010b0b0b20022802302100200241306a410472101d2008200241f0006a10a301220710a4012008200020072802046a20072802006b10182008200128020810222103200141046a210620012802002100034020002006464504402003410210222104200241a8016a200041286a290000220d370300200241a0016a200041206a290000220e37030020024198016a200041186a290000220f37030020022000290010221037039001200241b8016a200f370300200241c0016a200e370300200241c8016a200d370300200241d8016a200f370300200241e0016a200e370300200241e8016a200d370300200220103703b001200220103703d00120024188026a200d37030020024180026a200e370300200241f8016a200f370300200220103703f0012004200241f0016a412010272000290330200041386a290300101a1a200010990121000c010b0b0240200328020c200341106a280200460440200341046a2100200328020021040c010b200341046a2100100020032802002104200328020c2003280210460d0010000b200b200a20042000280200100f200728020022000440200720003602040b200328020c22000440200320003602100b200528020c22000440200520003602100b20024190026a24000bf207020a7f047e23004180026b22022400200241186a101b2205200029030010a1011018200520002903001073200528020c200541106a28020047044010000b2005280204210a2005280200210b2002101b2108200241c8006a4100360200200241406b4200370300200241386a42003703002002420037033002402001280208450440200241306a10a2010c010b200141046a2106200241306a410010212109200128020021070340200620074604402009410110211a0c020b200241d0006a200741106a10ae0141002100200941001021210320024198016a200241e8006a290300220c37030020024190016a200241e0006a290300220d37030020024188016a200241d8006a290300220e37030020022002290350220f37038001200241a8016a200e370300200241b0016a200d370300200241b8016a200c370300200241c8016a200e370300200241d0016a200d370300200241d8016a200c3703002002200f3703a0012002200f3703c001200241f8016a200c370300200241f0016a200d370300200241e8016a200e3703002002200f3703e001027f0340410120004120460d011a200241e0016a20006a2104200041016a210020042d0000450d000b41210b2104027f200341186a28020022000440200341086a280200200341146a280200200010620c010b20030b2200200028020020046a3602002003200228027020022802741016410110211a200228027022000440200220003602740b200710990121070c000b000b20022802302100200241306a410472101d2008200241e0016a10a301220610a4012008200020062802046a20062802006b10182008200128020810222103200141046a21072001280200210003402000200746450440200341021022210420024198016a200041286a290000220c37030020024190016a200041206a290000220d37030020024188016a200041186a290000220e37030020022000290010220f37038001200241a8016a200e370300200241b0016a200d370300200241b8016a200c370300200241c8016a200e370300200241d0016a200d370300200241d8016a200c3703002002200f3703a0012002200f3703c001200241e8006a200c370300200241e0006a200d370300200241d8006a200e3703002002200f3703502004200241d0006a41201027200041306a1019200010990121000c010b0b0240200328020c200341106a280200460440200341046a2100200328020021040c010b200341046a2100100020032802002104200328020c2003280210460d0010000b200b200a20042000280200100f200628020022000440200620003602040b200328020c22000440200320003602100b200528020c22000440200520003602100b20024180026a24000b0a00200028020410af010b0b0020002001ad420010170b0c0020002001ad4200101a1a0bd70201077f230041d0006b22022400200241186a101b2204200029030010a1011018200420002903001073200428020c200441106a28020047044010000b20042802042106200428020021072002101b2103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a2001290300200141086a22052903001017210020022802302108200041046a101d2003200241306a10a301220010a4012003200820002802046a20002802006b10180240200320012903002005290300101a220128020c200141106a280200460440200141046a2103200128020021050c010b200141046a2103100020012802002105200128020c2001280210460d0010000b2007200620052003280200100f200028020022030440200020033602040b200128020c22000440200120003602100b200428020c22010440200420013602100b200241d0006a24000b3a002000280200044020004100360208200042003702000b200020012902003702002000200128020836020820014100360208200142003702000b490020002001290200370200200041186a200141186a290200370200200041106a200141106a290200370200200041086a200141086a290200370200200041206a200141206a10411a0b3301017f02402000450d00200028020010af01200028020410af01200041306a2802002201450d00200041346a20013602000b0b5c01017f0240200028020422030440034002402002200341106a104b044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b5c01017f02402000280204220304400340024020022003410d6a104b044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3501017f230041106b220041a08b0436020c418c0b200028020c41076a417871220036020041900b200036020041940b3f003602000b2f01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010b4012000107a6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2801017f230041206b22022400200241086a200020014114107610b3012100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2301017f2001107a220220012802044b044010000b20002001200110b401200210b6010b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210056a10b901200120002802006a22012002200110060c010b0b0b3601017f200028020820014904402001106c20002802002000280204104a210220002001360208200020023602000b200020013602040bbe0202027f047e2000027e2002500440420021022001420a800c010b0240027e200141fd00200279a76b220341c000460d001a2003413f4d0440200241c00020036bad22058620012003ad2207888421062002200788210820012005862107420021050c020b200241800120036bad2205862001200341406aad22068884210720022006882106200120058621050c010b21072002210641c00021030b03402003044020084201862006423f888422022002427f8542007c20064201862007423f88842206427f852202420a7c200254ad7c423f8722024200837d20062002420a83220154ad7d2108200620017d210620074201862005423f888421072003417f6a21032004ad20054201868421052002a741017121040c010b0b20074201862005423f888421022004ad2005420186427e83840b370300200020023703080b0bfd0202004181080b820130313233343536373839003031323334353637383961626364656600307800436f6c6c65637465645369676e617475726573006174780071707a7279397838676632747664773073336a6e35346b686365366d7561376c00617478317171717171717171717171717171717171717171717171717171717171717171383971776b63004190090bec01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff546f6b656e41646472657373005769746864726177004465706f73697400696e697400736574546f6b656e41646472657373006465706f7369740072656365697665417070726f76616c007375626d69745369676e6174757265007369676e6174757265006d657373616765"; - - public static String BINARY = BINARY_0 + BINARY_1; - - public static final String FUNC_SETGASLIMITDEPOSITRELAY = "setGasLimitDepositRelay"; - - public static final String FUNC_SETGASLIMITWITHDRAWCONFIRM = "setGasLimitWithdrawConfirm"; - - public static final String FUNC_SETTOKENADDRESS = "setTokenAddress"; - - public static final String FUNC_DEPOSIT = "deposit"; - - public static final String FUNC_RECEIVEAPPROVAL = "receiveApproval"; - - public static final String FUNC_SUBMITSIGNATURE = "submitSignature"; - - public static final String FUNC_SIGNATURE = "signature"; - - public static final String FUNC_MESSAGE = "message"; - - public static final WasmEvent GASCONSUMPTIONLIMITSUPDATED_EVENT = new WasmEvent("GasConsumptionLimitsUpdated", Arrays.asList(new WasmEventParameter(Uint128.class, true)), Arrays.asList(new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent DEPOSIT_EVENT = new WasmEvent("Deposit", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent WITHDRAW_EVENT = new WasmEvent("Withdraw", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint128.class) , new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent COLLECTEDSIGNATURES_EVENT = new WasmEvent("CollectedSignatures", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(byte[].class) , new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent TOKENADDRESS_EVENT = new WasmEvent("TokenAddress", Arrays.asList(), Arrays.asList(new WasmEventParameter(WasmAddress.class))); - ; - - protected ForeignBridge(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ForeignBridge(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Uint128 _requiredSignatures, WasmAddress[] _authorities, Uint128 _estimatedGasCostOfWithdraw) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_requiredSignatures,_authorities,_estimatedGasCostOfWithdraw)); - return deployRemoteCall(ForeignBridge.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Uint128 _requiredSignatures, WasmAddress[] _authorities, Uint128 _estimatedGasCostOfWithdraw) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_requiredSignatures,_authorities,_estimatedGasCostOfWithdraw)); - return deployRemoteCall(ForeignBridge.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint128 _requiredSignatures, WasmAddress[] _authorities, Uint128 _estimatedGasCostOfWithdraw) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_requiredSignatures,_authorities,_estimatedGasCostOfWithdraw)); - return deployRemoteCall(ForeignBridge.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint128 _requiredSignatures, WasmAddress[] _authorities, Uint128 _estimatedGasCostOfWithdraw) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_requiredSignatures,_authorities,_estimatedGasCostOfWithdraw)); - return deployRemoteCall(ForeignBridge.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public List getGasConsumptionLimitsUpdatedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(GASCONSUMPTIONLIMITSUPDATED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - GasConsumptionLimitsUpdatedEventResponse typedResponse = new GasConsumptionLimitsUpdatedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable gasConsumptionLimitsUpdatedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public GasConsumptionLimitsUpdatedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(GASCONSUMPTIONLIMITSUPDATED_EVENT, log); - GasConsumptionLimitsUpdatedEventResponse typedResponse = new GasConsumptionLimitsUpdatedEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable gasConsumptionLimitsUpdatedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(GASCONSUMPTIONLIMITSUPDATED_EVENT)); - return gasConsumptionLimitsUpdatedEventObservable(filter); - } - - public RemoteCall setGasLimitDepositRelay(Uint128 gas) { - final WasmFunction function = new WasmFunction(FUNC_SETGASLIMITDEPOSITRELAY, Arrays.asList(gas), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setGasLimitDepositRelay(Uint128 gas, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETGASLIMITDEPOSITRELAY, Arrays.asList(gas), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall setGasLimitWithdrawConfirm(Uint128 gas) { - final WasmFunction function = new WasmFunction(FUNC_SETGASLIMITWITHDRAWCONFIRM, Arrays.asList(gas), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setGasLimitWithdrawConfirm(Uint128 gas, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETGASLIMITWITHDRAWCONFIRM, Arrays.asList(gas), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public List getDepositEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(DEPOSIT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - DepositEventResponse typedResponse = new DepositEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable depositEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public DepositEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(DEPOSIT_EVENT, log); - DepositEventResponse typedResponse = new DepositEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable depositEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(DEPOSIT_EVENT)); - return depositEventObservable(filter); - } - - public List getWithdrawEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(WITHDRAW_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - WithdrawEventResponse typedResponse = new WithdrawEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable withdrawEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public WithdrawEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(WITHDRAW_EVENT, log); - WithdrawEventResponse typedResponse = new WithdrawEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable withdrawEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(WITHDRAW_EVENT)); - return withdrawEventObservable(filter); - } - - public List getCollectedSignaturesEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(COLLECTEDSIGNATURES_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - CollectedSignaturesEventResponse typedResponse = new CollectedSignaturesEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (byte[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable collectedSignaturesEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public CollectedSignaturesEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(COLLECTEDSIGNATURES_EVENT, log); - CollectedSignaturesEventResponse typedResponse = new CollectedSignaturesEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (byte[]) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable collectedSignaturesEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(COLLECTEDSIGNATURES_EVENT)); - return collectedSignaturesEventObservable(filter); - } - - public List getTokenAddressEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TOKENADDRESS_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TokenAddressEventResponse typedResponse = new TokenAddressEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable tokenAddressEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TokenAddressEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TOKENADDRESS_EVENT, log); - TokenAddressEventResponse typedResponse = new TokenAddressEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable tokenAddressEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TOKENADDRESS_EVENT)); - return tokenAddressEventObservable(filter); - } - - public RemoteCall setTokenAddress(WasmAddress token) { - final WasmFunction function = new WasmFunction(FUNC_SETTOKENADDRESS, Arrays.asList(token), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setTokenAddress(WasmAddress token, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETTOKENADDRESS, Arrays.asList(token), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall deposit(WasmAddress recipient, Uint128 value, byte[] transactionHash) { - final WasmFunction function = new WasmFunction(FUNC_DEPOSIT, Arrays.asList(recipient,value,transactionHash), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deposit(WasmAddress recipient, Uint128 value, byte[] transactionHash, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DEPOSIT, Arrays.asList(recipient,value,transactionHash), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall receiveApproval(WasmAddress _from, Uint128 _value, WasmAddress _tokenContract, byte[] _msg) { - final WasmFunction function = new WasmFunction(FUNC_RECEIVEAPPROVAL, Arrays.asList(_from,_value,_tokenContract,_msg), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall receiveApproval(WasmAddress _from, Uint128 _value, WasmAddress _tokenContract, byte[] _msg, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_RECEIVEAPPROVAL, Arrays.asList(_from,_value,_tokenContract,_msg), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall submitSignature(byte[] signature, byte[] message) { - final WasmFunction function = new WasmFunction(FUNC_SUBMITSIGNATURE, Arrays.asList(signature,message), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall submitSignature(byte[] signature, byte[] message, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SUBMITSIGNATURE, Arrays.asList(signature,message), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall signature(byte[] hash, Uint128 index) { - final WasmFunction function = new WasmFunction(FUNC_SIGNATURE, Arrays.asList(hash,index), byte[].class); - return executeRemoteCall(function, byte[].class); - } - - public RemoteCall message(byte[] hash) { - final WasmFunction function = new WasmFunction(FUNC_MESSAGE, Arrays.asList(hash, Void.class), byte[].class); - return executeRemoteCall(function, byte[].class); - } - - public static ForeignBridge load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ForeignBridge(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ForeignBridge load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ForeignBridge(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class GasConsumptionLimitsUpdatedEventResponse { - public Log log; - - public String topic; - - public Uint128 arg1; - } - - public static class DepositEventResponse { - public Log log; - - public String topic; - - public Uint128 arg1; - } - - public static class WithdrawEventResponse { - public Log log; - - public String topic; - - public Uint128 arg1; - - public Uint128 arg2; - } - - public static class CollectedSignaturesEventResponse { - public Log log; - - public String topic; - - public byte[] arg1; - - public Uint128 arg2; - } - - public static class TokenAddressEventResponse { - public Log log; - - public WasmAddress arg1; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/FunctionTemplateContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/FunctionTemplateContract.java deleted file mode 100644 index b2fd139ed2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/FunctionTemplateContract.java +++ /dev/null @@ -1,85 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class FunctionTemplateContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60017f017f60017f0060027f7f0060037f7f7f017f60027f7f017f60000060037f7f7f0060047f7f7f7f017f60047f7f7f7f0060027f7e0060037e7e7f006000017f60027f7e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000603656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000603656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0002034a490500000100040000010000020300020305000302040701020e01000102050000000907020103000104030602010009010202020002030201010c0302020002030701030606050000080405017001131305030100020608017f0141b089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002a06696e766f6b65001d0918010041010b1212120e111314151618151519151a1b15151c0aba5649040010520b3801017f230041206b22002400200041ac083602082000200041086a360218200041086a100f2101200041086a1010200041206a240020010b3d01017f230041106b22012400200141053a000e200141013a000f20002001410f6a2001410e6a20002802002802181103002100200141106a240020000b2f00200020002802102200460440200020002802002802101101000f0b20000440200020002802002802141101000b0b3f01017f230041206b220024002000410136020c20004188083602082000200041086a360218200041086a100f2101200041086a1010200041206a240020010b0b00200020016a41ff01710b3f01017f230041206b220024002000410236020c20004188083602082000200041086a360218200041086a100f2101200041086a1010200041206a240020010b040020000b0300010b1c01017f4108101722014188083602002001200028020436020420010b0b002000410120001b101e0b14002001418808360200200120002802043602040b140020012d000020022d000020002802041104000b100041081017220041ac0836020020000b0a00200141ac083602000b110020022d000020012d00006a41ff01710b9e0402067f017e230041d0006b22022400105210072200101e220110080240200241086a20012000101f2203280208450440200341146a2802002100200328021021010c010b200241c8006a2003102020032002280248200228024c102136020c200241206a20031020410021002003027f410020022802202204450d001a410020022802242201200328020c2205490d001a200120052005417f461b210020040b2201360210200341146a2000360200200341003602080b200241206a200120004114102222001023024002402000280204450d00200010230240200028020022042c0000220141004e044020010d010c020b200141807f460d00200141ff0171220541b7014d0440200028020441014d04401000200028020021040b20042d00010d010c020b200541bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021040b200120046a2d0000450d010b2000280204450d0020042d000041c001490d010b10000b200241c8006a20001024200228024c220041094f044010000b200228024821010340200004402000417f6a210020013100002006420886842106200141016a21010c010b0b024002402006500d0041c8081025200651044020031026200241206a102710280c020b41cd08102520065104402003410310290c020b41e108102520065104402003410410290c020b41f50810252006520d002003410510290c010b10000b102a200241d0006a24000b9b0101047f230041106b220124002001200036020c2000047f41a409200041086a2202411076220041a4092802006a220336020041a00941a009280200220420026a41076a417871220236020002400240200341107420024d044041a409200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104104241086a0541000b2100200141106a240020000b0c00200020012002411c10220b2101017f2001102b220220012802044b044010000b2000200120011054200210550b2701017f230041206b22022400200241086a200020014114102210532100200241206a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105320024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105320024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001102b2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000102c410147044010000b0b900a010f7f230041a0016b22032400200042003702182000428debc585c3a7f9dbf7003703102000410036020820004200370200200041206a4100360200200341206a102d22082000290310102e200828020c200841106a28020047044010000b200041186a21062000411c6a2109024020082802002205200828020422041009220a450d00200a101721020340200120026a41003a0000200a200141016a2201470d000b2005200420022001100a417f460440410021010c010b02400240200341086a200241016a200120026a2002417f736a101f2201280204450d0020012802002d000041c001490d002001102c21022000280220200028021822056b410c6d20024904402006200341c8006a2002200028021c20056b410c6d200041206a102f22021030200210310b200341f0006a2001410110322104200341e0006a200141001032210c200041206a210d2004280204210120034188016a410172210e0340200c280204200146410020042802082202200c280208461b0d02200341c8006a20012002411c10222101200341386a1033210b02400240200328024c044020032802482d000041c001490d010b20034188016a10331a0c010b20034180016a200110242001102b2102024002400240024020032802800122010440200328028401220520024f0d010b4100210120034190016a4100360200200342003703880141002107410021050c010b20034190016a410036020020034200370388012001200520022002417f461b22076a21052007410a4b0d010b200320074101743a008801200e21020c010b200741106a417071220f101721022003200736028c012003200f4101723602880120032002360290010b03402001200546450440200220012d00003a0000200241016a2102200141016a21010c010b0b200241003a00000b024020032d0038410171450440200341003b01380c010b200328024041003a00002003410036023c20032d0038410171450d00200341003602380b200341406b220220034190016a280200360200200320032903880137033820034188016a10340240200028021c2201200028022049044020012003290338370200200141086a2002280200360200200b103420092009280200410c6a3602000c010b20034188016a2006200120062802006b410c6d220141016a10352001200d102f210120032802900122052003290338370200200541086a2002280200360200200b10342003200328029001410c6a36029001200620011030200110310b20042004280204220120042802086a410020011b22013602042004280200220204402004200236020820012002102121052004027f2004280204220b4504404100210241000c010b410021024100200428020822072005490d001a200720052005417f461b2102200b0b2201ad2002ad42208684370204200441002004280200220520026b2202200220054b1b3602000c0105200441003602080c010b000b000b10000b200a21010b200828020c22020440200820023602100b024020010d0020002802042205200028020022026b410c6d22042000280220200028021822016b410c6d4d04402004200928020020016b410c6d220a4b044020022002200a410c6c6a2204200110361a20042005200910370c020b2006200220052001103610380c010b200104402006103920004100360220200042003702180b20002006200410352204103a22013602182000200136021c200020012004410c6c6a36022020022005200910370b200341a0016a240020000bdc08010b7f230041e0006b22022400200241186a102d2108200241c8006a22034100360200200241406b22044200370300200241386a2205420037030020024200370330200241306a2000290310103b20022802302101200241306a410472103c20082001103d20082000290310102e200828020c200841106a28020047044010000b2008280204210a2008280200210b2002102d210120034100360200200442003703002005420037030020024200370330027f20002802182000411c6a2802004604402002410136023041010c010b200241306a4100103e200241d0006a4101722109200028021c210720002802182103037f2003200746047f200241306a4101103e200228023005200241d0006a2003103f41012105024002400240200228025420022d00502204410176200441017122061b220441014d0440200441016b0d032002280258200920061b2c0000417f4c0d010c030b200441374b0d010b200441016a21050c010b2004104020046a41016a21050b027f200241306a20022802482204450d001a2002280238200420022802446a417f6a220441087641fcffff07716a280200200441ff07714102746a0b2204200428020020056a3602002003410c6a21030c010b0b0b2106200241306a410472103c41011017220341fe013a0000200128020c200141106a28020047044010000b200341016a21052001280204220441016a220720012802084b047f20012007104120012802040520040b20012802006a2003410110421a2001200128020441016a3602042001200620036b20056a103d0240200028021c20002802186b220304402003410c6d21032001280204210420012802102205200141146a280200220649044020052003ad2004ad422086843702002001200128021041086a3602100c020b027f41002005200128020c22076b410375220941016a2205200620076b2206410275220720072005491b41ffffffff01200641037541ffffffff00491b2207450d001a200741037410170b2105200520094103746a22062003ad2004ad4220868437020020062001280210200128020c22096b22036b2104200520074103746a2105200641086a2106200341014e044020042009200310421a0b20012005360214200120063602102001200436020c0c010b200141001001200128020422036a104341004100200320012802006a1002200110440b200241306a4101722109200028021c210720002802182103034020032007470440200241306a2003103f20012002280238200920022d0030220441017122051b22062002280234200441017620051b22041003200128020422056a104320062004200520012802006a1004200110442003410c6a21030c010b0b0240200128020c2001280210460440200128020021030c010b100020012802002103200128020c2001280210460d0010000b200b200a20032001280204100b200128020c22030440200120033602100b200828020c22010440200820013602100b200041186a104520001045200241e0006a24000bb90102027f017e230041e0006b2202240020001026200210272103200220011100002100200241286a102d2101200241d8006a4100360200200241d0006a4200370300200241c8006a420037030020024200370340200241406b2000ad2204103b20022802402100200241406b410472103c20012000103d200120041046220128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b20031028200241e0006a24000b880101037f4190094101360200419409280200210003402000044003404198094198092802002201417f6a220236020020014101484504404190094100360200200020024102746a22004184016a280200200041046a280200110100419009410136020041940928020021000c010b0b4198094120360200419409200028020022003602000c010b0b0bff0201037f200028020445044041000f0b2000102341012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001020200128020c210003402000450d01200141002001280208220320032000102122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b29002000410036020820004200370200200041001041200041146a41003602002000420037020c20000b09002000200110461a0b4c01017f2000410036020c200041106a2003360200200104402001103a21040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000baa0101037f200028020421022000280200210303402002200346450440200128020441746a2204200241746a2202290200370200200441086a200241086a280200360200200210342001200128020441746a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001102020004100200428020c2201200428020822022001102122032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b190020004200370200200041086a41003602002000103420000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0bd00201077f200120006b2108410021010340200120026a2105200120084645044002402005200020016a2203460d00200341046a28020020032d00002204410176200441017122071b2104200341016a2106200341086a2802002109410a21032009200620071b210720052d0000410171220604402005280200417e71417f6a21030b200420034d0440027f20060440200541086a2802000c010b200541016a0b21032004044020032007200410500b200320046a41003a000020052d00004101710440200541046a20043602000c020b200520044101743a00000c010b416f2106200341e6ffffff074d0440410b20034101742203200420042003491b220341106a4170712003410b491b21060b200610172203200720041051200541046a200436020020052006410172360200200541086a2003360200200320046a41003a00000b2001410c6a21010c010b0b20050b2d000340200020014645044020022802002000103f20022002280200410c6a3602002000410c6a21000c010b0b0b0900200020013602040b0b002000200028020010380b09002000410c6c10170b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002104020026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002104721000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001048200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011049200441106a24000b1300200028020820014904402000200110410b0bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031047280200210120022003417f6a3602002007104a4180104f044020072000410c6a280200417c6a10490b200141384f047f2001104020016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002104721000c010b02402007104a0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a104b0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010172105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a104c220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a104d2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104e200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104f22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a104d2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104e200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a104b0c010b20042001410175410120011b20032005104d210241802010172106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104c22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104d21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003104e200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002104e052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104f22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104d21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006104e200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071048200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b9d0101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a2802003602000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101721022000200136020420002004410172360200200020023602080b2002200320011051200120026a41003a00000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b2f01017f200028020820014904402001101e200028020020002802041042210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3601017f200028020820014904402001101e200028020020002802041042210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1043200120002802006a22012002200110020c010b0b0b0e0020002802000440200010390b0b2a01017f2000420020011005200028020422026a104342002001200220002802006a10062000104420000b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104c22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a104d2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003104e200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110500b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101721040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110500b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210421a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b10002002044020002001200210421a0b0b3501017f230041106b220041b0890436020c419c09200028020c41076a417871220036020041a009200036020041a4093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010542000102b6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b880102004188080b19060000000700000008000000090000000a0000000b0000000c0041ac080b62060000000d0000000e0000000f000000100000001100000012000000696e6974006765745f6c616d6264615f66756e6374696f6e006765745f6e6f726d616c5f66756e6374696f6e006765745f636c6173735f7374617469635f66756e6374696f6e"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_LAMBDA_FUNCTION = "get_lambda_function"; - - public static final String FUNC_GET_NORMAL_FUNCTION = "get_normal_function"; - - public static final String FUNC_GET_CLASS_STATIC_FUNCTION = "get_class_static_function"; - - protected FunctionTemplateContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected FunctionTemplateContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(FunctionTemplateContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(FunctionTemplateContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(FunctionTemplateContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(FunctionTemplateContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall get_lambda_function() { - final WasmFunction function = new WasmFunction(FUNC_GET_LAMBDA_FUNCTION, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall get_normal_function() { - final WasmFunction function = new WasmFunction(FUNC_GET_NORMAL_FUNCTION, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall get_class_static_function() { - final WasmFunction function = new WasmFunction(FUNC_GET_CLASS_STATIC_FUNCTION, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public static FunctionTemplateContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new FunctionTemplateContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static FunctionTemplateContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new FunctionTemplateContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/GasPrice.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/GasPrice.java deleted file mode 100644 index 2a40d8de22..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/GasPrice.java +++ /dev/null @@ -1,663 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class GasPrice extends WasmContract { - private static String BINARY_0 = "0x0061736d010000000181011560027f7f0060017f0060017f017f60037f7f7f0060027f7f017f60037f7f7f017f6000006000017e60047f7f7f7f0060047f7f7f7f017f60027f7e0060037f7e7e0060077f7f7f7f7f7f7f017f6000017f60087f7f7f7f7f7f7f7f017f60017f017e60017e0060027e7f0060037e7e7f0060057f7f7f7f7f017f60027e7e017f02f2072c03656e760c706c61746f6e5f6465627567000003656e760c706c61746f6e5f70616e6963000603656e760d706c61746f6e5f63616c6c6572000103656e760e706c61746f6e5f61646472657373000103656e760f706c61746f6e5f7472616e73666572000503656e7610706c61746f6e5f6761735f7072696365000203656e7610706c61746f6e5f74696d657374616d70000703656e7611706c61746f6e5f626c6f636b5f68617368001103656e760f706c61746f6e5f636f696e62617365000103656e760e706c61746f6e5f62616c616e6365000403656e7611706c61746f6e5f63616c6c5f76616c7565000203656e760b706c61746f6e5f73686133000803656e7610706c61746f6e5f65637265636f766572000903656e7610706c61746f6e5f726970656d64313630000303656e760d706c61746f6e5f736861323536000303656e760e706c61746f6e5f64657374726f79000203656e761b706c61746f6e5f636f6e74726163745f636f64655f6c656e677468000203656e7614706c61746f6e5f636f6e74726163745f636f6465000503656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65001403656e760f706c61746f6e5f726c705f75313238001203656e760a706c61746f6e5f676173000703656e7613706c61746f6e5f626c6f636b5f6e756d626572000703656e7610706c61746f6e5f6761735f6c696d6974000703656e7613706c61746f6e5f63616c6c65725f6e6f6e6365000703656e7610706c61746f6e5f7365745f7374617465000803656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000903656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000103656e761d706c61746f6e5f6765745f63616c6c5f6f75747075745f6c656e677468000d03656e7616706c61746f6e5f6765745f63616c6c5f6f7574707574000103656e760d706c61746f6e5f72657475726e000003656e760d706c61746f6e5f726576657274000603656e760b706c61746f6e5f63616c6c000c03656e7614706c61746f6e5f64656c65676174655f63616c6c001303656e760e706c61746f6e5f6d696772617465000c03656e7614706c61746f6e5f636c6f6e655f6d696772617465000e03656e760c706c61746f6e5f6576656e74000803656e760d706c61746f6e5f6465706c6f79000c03656e760c706c61746f6e5f636c6f6e65000e037d7c060a0401040005000002000a010a010101100101010101000101010001000300000201010101010001010003000103000004040000030000000b0b00000000000000000003000302050000010205000000020005090105030609030f0f0002010200000000000204000000020200060202000100010006020208040004050170012c2c05030100020608017f0141d093040b073b04066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273002c0f5f5f66756e63735f6f6e5f65786974009a0106696e766f6b650084010931010041010b2b3a3b3e3f40414243424445464748494a4b4e4f515253545556575a5b5c6061636465666768696a6b6c6d6e0ad48b017c050010a2010bb90301077f230041a0016b22022400200241ee0d102e2104200241e8006a102f200241fc006a410036020020024200370274200241e8006a410210302103200241d8006a20041031200241c8006a20001031200241406b4100360200200241386a4200370300200241306a420037030020024200370328200241286a20022802582200200228025c103220022802482204200228024c103221062003200228022810332003200241d8006a10342003200241c8006a10342002280274200241f8006a28020047044010010b2003280204210520032802002107200241106a1035210320024198016a410036020020024190016a420037030020024188016a4200370300200242003703800120024180016a4100103620024180016a2001103720024180016a41011036200228028001210820024180016a4104721038200320081033200341011030220320011039200328020c200341106a28020047044010010b20072005200328020020032802041029200328020c22050440200320053602100b200641046a1038200404402002200436024c0b200004402002200036025c0b200228027422030440200220033602780b200241a0016a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b107020000b160020004100360208200042003702002000410010750bf30101057f20002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410780b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110791a0b20002002360214200020033602102000200536020c20000ba40201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a200410710340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b200241003602082002420037030020024120106f2003200228021420036b200228020022042002280204220120046b100b2000200136020420002004360200200020022802083602082003450d00200220033602140b200241206a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002107320026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110740c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110750b0b3501027f200020012802002202200128020420026b22011014200028020422036a107620022001200320002802006a1015200010770b19002000102f200041146a41003602002000420037020c20000bcd0c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031074280200210120022003417f6a3602002007107d4180104f044020072000410c6a280200417c6a107b0b200141384f047f2001107320016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002107421000c010b02402007107d0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a107e0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010782105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a107f220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a1080012102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002108101200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a10820122013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a1080012102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002108101200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a107e0c010b20042001410175410120011b20032005108001210241802010782106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a107f22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a28020010800121032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003108101200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002108101052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a10820122013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a410276200228021010800121062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006108101200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007107a200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b880102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002107320026a0520020b41016a21020b200041186a28020022030440200041086a280200200041146a2802002003107421000b2000200028020020026a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000107a200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001107b200441106a24000b2801017f2000420020011016200028020422026a107642002001200220002802006a1017200010770b0300010b3b00230041206b220024002000420037031820004200370310200041dd0d36020020001018370308200041106a10051a2000103c200041206a24000b3102017f027e230041106b22012400200029030821021018210320012000280200102e200220037d102d200141106a24000b5201017f230041306b22012400200141286a4200370300200141206a42003703002001420037031820014200370310200141cb0d360200200110183703082000200141106a10072001103c200141306a24000b2800230041106b22002400200041b70d3602002000101837030810191a2000103c200041106a24000b2800230041106b22002400200041a60d36020020001018370308101a1a2000103c200041106a24000b2800230041106b220024002000419b0d3602002000101837030810181a2000103c200041106a24000b2800230041106b220024002000418a0d3602002000101837030810061a2000103c200041106a24000b4400230041306b22002400200041206a41003602002000420037031820004200370310200041eb0c36020020001018370308200041106a10082000103c200041306a24000b3d00230041206b220024002000420037031820004200370310200041fb0c360200200010183703082001200041106a10091a2000103c200041206a24000b4400230041306b22002400200041206a41003602002000420037031820004200370310200041dd0c36020020001018370308200041106a10022000103c200041306a24000b4500230041306b22002400200041206a41003602002000420037031820004200370310200041cb0c36020020001018370308200041106a100a1a2000103c200041306a24000b4400230041306b22002400200041206a41003602002000420037031820004200370310200041bc0c36020020001018370308200041106a10032000103c200041306a24000b6101017f230041306b22002400200041286a4200370300200041206a42003703002000420037031820004200370310200041b00c3602002000101837030820012802002202200128020420026b200041106a4120100b2000103c200041306a24000b2800230041106b220024002000419c0c36020020001018370308101b1a2000103c200041106a24000b3c00230041206b22002400200041e4003a001f2000418c0c3602082000101837031020012000411f6a410110041a200041086a103c200041206a24000b4701017f230041106b22002400200041fb0b3602002000101837030820012802002203200128020420036b20022802002201200228020420016b101c2000103c200041106a24000b3901017f230041106b22002400200041e30b3602002000101837030820012802002202200128020420026b101d1a2000103c200041106a24000b4301037f230041106b220224002001104d2103200241d20b3602002002101837030820002802002204200028020420046b20032001101e1a2002103c200241106a24000b9b0101047f230041106b220124002001200036020c2000047f41cc13200041086a2202411076220041cc132802006a220336020041c81341c813280200220420026a41076a417871220236020002400240200341107420024d044041cc13200341016a360200200041016a21000c010b2000450d010b200040000d0010010b20042001410c6a4104107941086a0541000b2100200141106a240020000b2800230041106b22002400200041ba0b36020020001018370308101f1a2000103c200041106a24000b350023004180016b22002400200041106a1050200041a90b36020020001018370308200041106a10202000103c20004180016a24000bc70201027f200041003a0000200041e4006a2202417f6a41003a0000200041003a0002200041003a00012002417d6a41003a00002002417e6a41003a0000200041003a00032002417c6a41003a00002000410020006b41037122016a22024100360200200241e40020016b417c7122016a2200417c6a4100360200024020014109490d002002410036020820024100360204200041786a4100360200200041746a410036020020014119490d002002410036021820024100360214200241003602102002410036020c200041706a41003602002000416c6a4100360200200041686a4100360200200041646a41003602002001200241047141187222016b2100200120026a2101034020004120490d0120014200370300200141186a4200370300200141106a4200370300200141086a4200370300200141206a2101200041606a21000c000b000b0b2800230041106b220024002000418b0b3602002000101837030810211a2000103c200041106a24000b350023004180016b22002400200041106a1050200041f40a36020020001018370308200041106a10222000103c20004180016a24000b3301017f230041106b220024002001104d2102200041e60a360200200010183703082002200110232000103c200041106a24000b2700230041106b22002400200041d80a3602002000101837030810242000103c200041106a24000b2700230041106b22002400200041cb0a3602002000101837030810012000103c200041106a24000b3301017f230041106b220024002001104d2102200041be0a360200200010183703082002200110002000103c200041106a24000b940101017f230041406a22002400200041306a20021058200041206a1059200041106a1059200041b20a36020020001018370308200120002802302202200028023420026b20002802202201200028022420016b20002802102203200028021420036b10251a2000103c20030440200020033602140b20010440200020013602240b20020440200020023602340b200041406b24000bde0202047f017e230041406a22032400200128020420012d00002202410176200241017122041b21022001280208200141016a20041b210142a5c688a1c89ca7f94b21060340200204402002417f6a21022001300000200642b383808080207e852106200141016a21010c010b0b200341286a1035410110302102200341206a4100360200200341186a4200370300200341106a420037030020034200370308200341086a20061037200220032802081033200220061039027f02400240200228020c200241106a280200460440200241046a2104200228020021010c010b200241046a2104100120022802002101200228020c2002280210470d010b20010c010b100120022802000b21052000410036020820004200370200200520042802006a220420016b2205044020002005107120012004200041046a10720b200341086a4104721038200228020c22010440200220013602100b200341406b24000b1600200041003602082000420037020020004100106f0b7000230041306b22002400200041206a20021058200041106a10592000419d0a36020020001018370308200120002802202202200028022420026b20002802102201200028021420016b10261a2000103c20010440200020013602140b20020440200020023602240b200041306a24000b2a00230041106b220024002000418e0a360200200010183703082001100f1a2000103c200041106a24000b840401077f230041b0016b22002400200041920836024020001018370348200110102102200041406b103c02402002450d00200041a0016a2002105d2103200041ae083602402000101837034820012003280200200210112102200041406b103c024020024101480d0020004190016a105920004180016a105920004180c2cdeb06360040200041f0006a200041406b105e2101200041e0006a200041406b418008102e1058200041d8006a4100360200200041d0006a4200370300200041c8006a420037030020004200370340200041406b20032802002003280204103220002802602207200028026410322108200041286a103522022001105f2002200028024041046a10332002410210302202200310342002200041e0006a1034200228020c200241106a28020047044010010b2002280204210520022802002104200041206a4100360200200041186a420037030020004200370310200041ff0936020020001018370308200041106a20042005200028029001220420002802940120046b200028028001220620002802840120066b10271a2000103c200228020c22050440200220053602100b200841046a103820070440200020073602640b200128020022020440200120023602040b2006044020002006360284010b2004450d0020002004360294010b20032802002202450d00200320023602040b200041b0016a24000b230020004100360208200042003702002001044020002001107120002001107c0b20000b260020004100360208200042003702002000410410712001200141046a200041046a107220000b6101037f200028020c200041106a28020047044010010b200028020422022001280204200128020022036b22016a220420002802084b047f20002004107520002802040520020b20002802006a2003200110791a2000200028020420016a3602040bc20101027f230041e0006b22002400200041d0006a1059200041406b1059200041306a200041186a418008102e1058200041286a4100360200200041206a420037030020004200370318200041ea09360208200010183703102001200041186a20002802302201200028023420016b20002802502202200028025420026b20002802402203200028024420036b10281a200041086a103c20010440200020013602340b20030440200020033602440b20020440200020023602540b200041e0006a24000b4701017f230041106b22002400200041dd093602002000101837030820012802002203200128020420036b20022802002201200228020420016b10292000103c200041106a24000b5c01017f230041306b22022400200241206a41003602002002420037031820024200370310200241cc0936020020021018370308200020012802002200200128020420006b41ff0171200241106a100c1a2002103c200241306a24000b5501017f230041306b22002400200041206a41003602002000420037031820004200370310200041bb093602002000101837030820012802002202200128020420026b200041106a100d2000103c200041306a24000b5f01017f230041306b22002400200041286a4200370300200041206a42003703002000420037031820004200370310200041ad093602002000101837030820012802002202200128020420026b200041106a100e2000103c200041306a24000b2c00230041106b220024002000419f09360200200010183703082001200210161a2000103c200041106a24000b3501017f230041106b22002400410a104d21032000418f093602002000101837030820012002200310172000103c200041106a24000b3901017f230041106b2200240020004180093602002000101837030820012802002202200128020420026b10141a2000103c200041106a24000b4001027f230041106b22002400410a104d2102200041ef083602002000101837030820012802002203200128020420036b200210152000103c200041106a24000b2a00230041106b22002400200041e10836020020001018370308200110121a2000103c200041106a24000b4001027f230041106b22002400410a104d2102200041d1083602002000101837030820012802002203200128020420036b200210132000103c200041106a24000b2a00230041106b22002400200041920836020020001018370308200110101a2000103c200041106a24000b3b0023004180016b22002400200041106a1050200041ae08360200200010183703082001200041106a41e40010111a2000103c20004180016a24000b840401077f230041b0016b22002400200041920836024020001018370348200110102102200041406b103c02402002450d00200041a0016a2002105d2103200041ae083602402000101837034820012003280200200210112102200041406b103c024020024101480d0020004190016a105920004180016a105920004180c2cdeb06360040200041f0006a200041406b105e2101200041e0006a200041406b418008102e1058200041d8006a4100360200200041d0006a4200370300200041c8006a420037030020004200370340200041406b20032802002003280204103220002802602207200028026410322108200041286a103522022001105f2002200028024041046a10332002410210302202200310342002200041e0006a1034200228020c200241106a28020047044010010b2002280204210520022802002104200041206a4100360200200041186a420037030020004200370310200041c30836020020001018370308200041106a20042005200028029001220420002802940120046b200028028001220620002802840120066b102a1a2000103c200228020c22050440200220053602100b200841046a103820070440200020073602640b200128020022020440200120023602040b2006044020002006360284010b2004450d0020002004360294010b20032802002202450d00200320023602040b200041b0016a24000bc20101027f230041e0006b22002400200041d0006a1059200041406b1059200041306a200041186a418008102e1058200041286a4100360200200041206a4200370300200042003703182000418508360208200010183703102001200041186a20002802302201200028023420016b20002802502202200028025420026b20002802402203200028024420036b102b1a200041086a103c20010440200020013602340b20030440200020033602440b20020440200020023602540b200041e0006a24000bdd0101057f20002802042203200028020022026b220420014904402000280208220520036b200120046b22034f044020002003107c0f0b2001200520026b2202410174220520052001491b41ffffffff07200241ffffffff03491b220204402002107821060b200420066a220521010340200141003a0000200141016a21012003417f6a22030d000b200220066a210220052000280204200028020022066b22046b2103200441014e044020032006200410791a0b2000200236020820002001360204200020033602000f0b200420014b04402000200120026a3602040b0b6101027f027f02402002410b4f0440200241106a4170712204107821032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b20032001200210790b20026a41003a00000b2001017f2000200110782202360200200020023602042000200120026a3602080b2800200120006b220141014e044020022802002000200110791a2002200228020020016a3602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2f01017f200028020820014904402001104d200028020020002802041079210220002001360208200020023602000b0b3601017f200028020820014904402001104d200028020020002802041079210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401001200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210126a1076200120002802006a22012002200110130c010b0b0b0b002000410120001b104d0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2d01017f200028020421020340200241003a00002000200028020441016a22023602042001417f6a22010d000b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba30202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a107f22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a1080012103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003108101200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2601017f200120006b22014102752103200104402002200020011083010b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274107821040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1c00200120006b22010440200220016b2202200020011083010b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210791a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0bb60d02067f027e230041a0016b2201240010a201101f2200104d22021020200141206a200120022000411c1085012200410010860102400240200141206a1087012206500d004180081088012006510440200041011089010c020b41f60d1088012006510440200041021089010c020b41850e10880120065104402000108a01410247044010010b200141206a20004101108601200141206a108b0102400240200141206a108c01450d002001280224450d0020012802202d000041c001490d010b10010b20014180016a200141206a108d01200128028401220041114f044010010b420021062001280280012102034020000440200742088620064238888421072000417f6a210020023100002006420886842106200241016a21020c010b0b420020064201837d2007423f8620064201888485103d0c020b41950e1088012006510440200041031089010c020b41a70e1088012006510440200041041089010c020b41b60e1088012006510440200041051089010c020b41c00e1088012006510440200041061089010c020b41d00e1088012006510440200041071089010c020b41df0e108801200651044020004108108e010c020b41ed0e1088012006510440200041091089010c020b41fa0e10880120065104402000410a1089010c020b41870f10880120065104402000410b1089010c020b41970f10880120065104402000410c1089010c020b41a50f10880120065104402000410d108f010c020b41b00f10880120065104402000410e1089010c020b41c20f10880120065104402000410f108e010c020b41d10f1088012006510440200041101090010c020b41e00f108801200651044020004111108f010c020b41f50f1088012006510440200142003703880120014200370380012000108a01410347044010010b200141206a20004101108601200141206a20014180016a109101200141206a200041021086012001200141206a109201220236028c01200141206a20014180016a10930122002002104c200028020022020440200020023602040b2001280280012200450d0220012000360284010c020b4184101088012006510440200041121089010c020b4199101088012006510440200041131089010c020b41a8101088012006510440200041141089010c020b41c2101088012006510440200041151089010c020b41d6101088012006510440200041161094010c020b41e3101088012006510440200041171089010c020b41f0101088012006510440200041181089010c020b41fc101088012006510440200041191094010c020b41881110880120065104402000411a1095010c020b41931110880120065104402000411b1095010c020b41a61110880120065104402000411c1096010c020b41b41110880120065104402000411d1096010c020b41c21110880120065104402000411e1096010c020b41d51110880120065104402000411f1090010c020b41e1111088012006510440200141386a4200370300200141306a4200370300200141286a42003703002001420037032020014100360248200142003703402000108a01410347044010010b200141e0006a20004101108601200141e0006a109701412047044010010b200141406b21034100210203402002412047044020014180016a200141e0006a2002108601200141206a20026a20014180016a1098013a0000200241016a21020c010b0b20014180016a2000410210860120014180016a2003109101200141e8006a2202200141286a290300370300200141f0006a2204200141306a290300370300200141f8006a2205200141386a29030037030020012001290320370360200141d0006a2003109301210020014198016a200529030037030020014190016a200429030037030020014188016a2002290300370300200120012903603703800120014180016a20001062200028020022020440200020023602040b20012802402200450d02200120003602440c020b41f111108801200651044020004120108f010c020b418112108801200651044020004121108f010c020b418e121088012006510440200041221099010c020b41a0121088012006510440200041231099010c020b41ae12108801200651044020004124108f010c020b41c112108801200651044020004125108f010c020b41d0121088012006510440200041261094010c020b41e212108801200651044020004127108f010c020b41f012108801200651044020004128108e010c020b418913108801200651044020004129108e010c020b419c1310880120065104402000412a1096010c020b41a9131088012006520d002000412b1096010c010b10010b109a01200141a0016a24000b750020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d00200010a30120024f0d002003410471044010010c010b200042003702000b02402003411071450d00200010a30120024d0d0020034104710440100120000f0b200042003702000b20000bd00202067f017e230041106b220324002001280208220520024b0440200341086a200110a70120012003280208200328020c10a60136020c2003200110a701410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b20002006280200200441141085011a200341106a24000f0b2003200110a70141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b210520012004360214200120053602102003200641002005200410a60110a5012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b880102027f017e230041106b220124002000108b01024002402000108c01450d002000280204450d0020002802002d000041c001490d010b10010b200141086a2000108d01200128020c220041094f044010010b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2b01017f230041106b220224002000108a01410147044010010b200241086a2001110100200241106a24000b2601017f02402000280204450d0020002802002d000041c001490d002000109b0121010b20010b4101017f200028020445044010010b0240200028020022012d0000418101470d00200028020441014d047f100120002802000520010b2c00014100480d0010010b0b990101037f200028020445044041000f0b2000108b01200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100120002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100120002802000520020b20016a2d00004100470b0bd60101047f2001109c012204200128020422024b04401001200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bee0102017f027e230041d0006b22022400200241186a4100360200200241106a4200370300200242003703082000108a01410247044010010b200241206a20004101108601200241206a109701411447044010010b41002100034020004114470440200241386a200241206a2000108601200241086a20006a200241386a1098013a0000200041016a21000c010b0b200241306a200241186a2802002200360200200241286a200241106a2903002203370300200220022903082204370320200241c8006a2000360200200241406b2003370300200220043703382002200241386a2001110000200241d0006a24000b800101017f230041306b2202240020024100360210200242003703082000108a01410247044010010b200241186a20004101108601200241186a200241086a1091012002200241186a200241086a10930122002001110000200028020022010440200020013602040b2002280208220004402002200036020c0b200241306a24000bd30101027f230041406a22022400200241186a420037030020024200370310200242003703082000108a01410347044010010b20024101360220200220003602302002200241206a360234200241306a200241086a109d01200241306a200241146a2203109d012002200241306a200241086a1093012200200241206a200310930122032001110300200328020022010440200320013602040b200028020022030440200020033602040b200228021422000440200220003602180b2002280208220004402002200036020c0b200241406b24000bc10101037f230041206b22022400024002402000280204044020002802002d000041c001490d010b20024100360208200242003703000c010b200241186a2000108d0120022802182104200241106a2000108d01200228021021032000109c0121002002410036020820024200370300200020036a220020046b2203450d0020022003107120042000200241047210720b2001280200044020014100360208200142003702000b2001200228020036020020012002290204370204200241206a24000b860101037f230041106b220124002000108b01024002402000108c01450d002000280204450d0020002802002d000041c001490d010b10010b200141086a2000108d01200128020c220041054f044010010b200128020821030340200004402000417f6a210020032d00002002410874722102200341016a21030c010b0b200141106a240020020b3b01017f2000420037020020004100360208200128020420012802006b2202044020002002107120012802002001280204200041046a10720b20000b3f01017f230041206b220224002000108a01410247044010010b200241086a20004101108601200241086a200241086a1092012001110000200241206a24000b940501067f230041f0006b22022400200241206a4100360200200241186a420037030020024200370310200241246a2206109e012000108a01410347044010010b200241306a20004101108601200241306a200241106a109f01200241306a20004102108601024002402002280234044020022802302d000041c001490d010b200241d8006a109e010c010b200241c8006a200241306a108d01200241306a109c0121030240024002400240200228024822000440200228024c220420034f0d010b41002100200241e0006a410036020020024200370358410021040c010b200241e0006a4100360200200242003703582000200420032003417f461b22056a21042005410a4b0d010b200220054101743a0058200241d8006a41017221030c010b200541106a4170712207107821032002200536025c20022007410172360258200220033602600b034020002004470440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020022d0024410171450440200241003b01240c010b200228022c41003a00002002410036022820022d0024410171450d00200241003602240b20062002290358370200200641086a2203200241e0006a2200280200360200200241d8006a10a0012000200241186a290300370300200241e8006a200241206a280200360200200241d0006a220041003602002002200229031037035820024200370348024020022d002441017145044020002003280200360200200220062902003703480c010b200241c8006a200228022c200228022810700b200241406b200241e8006a280200360200200241386a200241e0006a29030037030020022002290358370330200241086a200241306a200241c8006a2001110300200241f0006a24000baf0102037f027e230041d0006b22022400200241186a22034100360200200241106a22044200370300200242003703082000108a01410247044010010b200241206a20004101108601200241206a200241086a109f01200241c8006a20032802002200360200200241406b20042903002205370300200220022903082206370338200241306a2000360200200241286a2005370300200220063703202002200241206a2001110000200241d0006a24000b220002402000280204044020002802002d000041bf014b0d010b10010b2000109b010b800101037f230041106b220124002000108b01024002402000108c01450d002000280204450d0020002802002d000041c001490d010b10010b200141086a2000108d01200128020c220041024f044010010b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b7201017f230041206b2202240020024200370308200242003703002000108a01410347044010010b2002410136021c2002200036021020022002411c6a360214200241106a200210a101200241106a200241086a10a101200241106a200229030020022903082001110b00200241206a24000b880101037f41b813410136020041bc132802002100034020000440034041c01341c0132802002201417f6a2202360200200141014845044041b8134100360200200020024102746a22004184016a280200200041046a28020011010041b813410136020041bc1328020021000c010b0b41c013412036020041bc13200028020022003602000c010b0b0b820101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a200010a701200128020c210003402000450d0120014100200128020822032003200010a60122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b800301037f200028020445044041000f0b2000108b0141012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10010b20020b4501017f230041206b22022400200241086a20002802002000280204280200108601200241086a200110910120002802042200200028020041016a360200200241206a24000b180020004200370200200041086a4100360200200010a0010bd10102037f027e230041406a220224002000108b01200241386a2000108d01200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10010b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a2002280238200310791a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b4801017f230041206b22022400200241086a200028020020002802042802001086012001200241086a10870137030020002802042200200028020041016a360200200241206a24000b3501017f230041106b220041d0930436020c41c413200028020c41076a417871220036020041c813200036020041cc133f003602000b3001017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010a4012000109c016a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2901017f230041206b22022400200241086a20002001411410850110a3012100200241206a240020000b2401017f2001109c01220220012802044b044010010b20002001200110a401200210a5010b0bbc0b01004180080bb40b696e697400706c61746f6e5f636c6f6e6500706c61746f6e5f636f6e74726163745f636f64655f6c656e67746800706c61746f6e5f636f6e74726163745f636f646500706c61746f6e5f6465706c6f7900706c61746f6e5f726c705f6c69737400726c705f6c6973745f73697a6500706c61746f6e5f726c705f627974657300726c705f62797465735f73697a6500706c61746f6e5f726c705f7531323800726c705f753132385f73697a6500706c61746f6e5f73686132353600706c61746f6e5f726970656d6431363000706c61746f6e5f65637265636f76657200706c61746f6e5f6576656e7400706c61746f6e5f636c6f6e655f6d69677261746500706c61746f6e5f6d69677261746500706c61746f6e5f64657374726f7900706c61746f6e5f64656c65676174655f63616c6c00706c61746f6e5f63616c6c00706c61746f6e5f646562756700706c61746f6e5f70616e696300706c61746f6e5f72657665727400706c61746f6e5f72657475726e00706c61746f6e5f6765745f63616c6c5f6f757470757400706c61746f6e5f6765745f63616c6c5f6f75747075745f6c656e67746800706c61746f6e5f6765745f696e70757400706c61746f6e5f6765745f696e7075745f6c656e67746800706c61746f6e5f6765745f737461746500706c61746f6e5f6765745f73746174655f6c656e67746800706c61746f6e5f7365745f737461746500706c61746f6e5f7472616e7366657200706c61746f6e5f63616c6c65725f6e6f6e636500706c61746f6e5f7368613300706c61746f6e5f6164647265737300706c61746f6e5f63616c6c5f76616c756500706c61746f6e5f63616c6c657200706c61746f6e5f636f696e6261736500706c61746f6e5f62616c616e636500706c61746f6e5f74696d657374616d7000706c61746f6e5f67617300706c61746f6e5f6761735f6c696d697400706c61746f6e5f626c6f636b5f6e756d62657200706c61746f6e5f626c6f636b5f6861736800706c61746f6e5f6761735f7072696365004761735573656400706c61746f6e476173507269636500706c61746f6e426c6f636b4861736800706c61746f6e426c6f636b4e756d62657200706c61746f6e4761734c696d697400706c61746f6e47617300706c61746f6e54696d657374616d7000706c61746f6e436f696e6261736500706c61746f6e42616c616e636500706c61746f6e4f726967696e00706c61746f6e43616c6c657200706c61746f6e43616c6c56616c756500706c61746f6e4164647265737300706c61746f6e5368613300706c61746f6e43616c6c65724e6f6e636500706c61746f6e5472616e7366657200706c61746f6e536574537461746500706c61746f6e47657453746174654c656e67746800706c61746f6e476574537461746500706c61746f6e476574496e7075744c656e67746800706c61746f6e476574496e70757400706c61746f6e47657443616c6c4f75747075744c656e67746800706c61746f6e47657443616c6c4f757470757400706c61746f6e52657475726e00706c61746f6e52657665727400706c61746f6e50616e696300706c61746f6e446562756700706c61746f6e43616c6c00706c61746f6e44656c656761746543616c6c00706c61746f6e446573746f727900706c61746f6e4d69677261746500706c61746f6e4d696772617465436c6f6e6500706c61746f6e4576656e7400706c61746f6e45637265636f76657200706c61746f6e526970656d6431363000706c61746f6e53686132353600706c61746f6e526c705531323853697a6500706c61746f6e526c705531323800706c61746f6e526c70427974657353697a6500706c61746f6e526c70427974657300706c61746f6e526c704c69737453697a6500706c61746f6e526c704c69737400706c61746f6e436f6e7472616374436f64654c656e67746800706c61746f6e436f6e7472616374436f646500706c61746f6e4465706c6f7900706c61746f6e436c6f6e65"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_PLATONSHA3 = "platonSha3"; - - public static final String FUNC_PLATONMIGRATE = "platonMigrate"; - - public static final String FUNC_PLATONPANIC = "platonPanic"; - - public static final String FUNC_PLATONGETSTATELENGTH = "platonGetStateLength"; - - public static final String FUNC_PLATONECRECOVER = "platonEcrecover"; - - public static final String FUNC_PLATONRIPEMD160 = "platonRipemd160"; - - public static final String FUNC_PLATONRLPU128SIZE = "platonRlpU128Size"; - - public static final String FUNC_PLATONRLPBYTESSIZE = "platonRlpBytesSize"; - - public static final String FUNC_PLATONRLPU128 = "platonRlpU128"; - - public static final String FUNC_PLATONGASPRICE = "platonGasPrice"; - - public static final String FUNC_PLATONBLOCKHASH = "platonBlockHash"; - - public static final String FUNC_PLATONBLOCKNUMBER = "platonBlockNumber"; - - public static final String FUNC_PLATONGASLIMIT = "platonGasLimit"; - - public static final String FUNC_PLATONGAS = "platonGas"; - - public static final String FUNC_PLATONTIMESTAMP = "platonTimestamp"; - - public static final String FUNC_PLATONCOINBASE = "platonCoinbase"; - - public static final String FUNC_PLATONSHA256 = "platonSha256"; - - public static final String FUNC_PLATONBALANCE = "platonBalance"; - - public static final String FUNC_PLATONORIGIN = "platonOrigin"; - - public static final String FUNC_PLATONCALLER = "platonCaller"; - - public static final String FUNC_PLATONCALLVALUE = "platonCallValue"; - - public static final String FUNC_PLATONADDRESS = "platonAddress"; - - public static final String FUNC_PLATONCALLERNONCE = "platonCallerNonce"; - - public static final String FUNC_PLATONTRANSFER = "platonTransfer"; - - public static final String FUNC_PLATONSETSTATE = "platonSetState"; - - public static final String FUNC_PLATONGETSTATE = "platonGetState"; - - public static final String FUNC_PLATONGETINPUTLENGTH = "platonGetInputLength"; - - public static final String FUNC_PLATONGETINPUT = "platonGetInput"; - - public static final String FUNC_PLATONGETCALLOUTPUTLENGTH = "platonGetCallOutputLength"; - - public static final String FUNC_PLATONGETCALLOUTPUT = "platonGetCallOutput"; - - public static final String FUNC_PLATONRETURN = "platonReturn"; - - public static final String FUNC_PLATONREVERT = "platonRevert"; - - public static final String FUNC_PLATONDEBUG = "platonDebug"; - - public static final String FUNC_PLATONCALL = "platonCall"; - - public static final String FUNC_PLATONDELEGATECALL = "platonDelegateCall"; - - public static final String FUNC_PLATONDESTORY = "platonDestory"; - - public static final String FUNC_PLATONMIGRATECLONE = "platonMigrateClone"; - - public static final String FUNC_PLATONEVENT = "platonEvent"; - - public static final String FUNC_PLATONRLPBYTES = "platonRlpBytes"; - - public static final String FUNC_PLATONRLPLISTSIZE = "platonRlpListSize"; - - public static final String FUNC_PLATONRLPLIST = "platonRlpList"; - - public static final String FUNC_PLATONCONTRACTCODELENGTH = "platonContractCodeLength"; - - public static final String FUNC_PLATONCONTRACTCODE = "platonContractCode"; - - public static final String FUNC_PLATONDEPLOY = "platonDeploy"; - - public static final String FUNC_PLATONCLONE = "platonClone"; - - public static final WasmEvent GASUSED_EVENT = new WasmEvent("GasUsed", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(Uint64.class))); - ; - - protected GasPrice(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected GasPrice(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall platonSha3(byte[] src) { - final WasmFunction function = new WasmFunction(FUNC_PLATONSHA3, Arrays.asList(src, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonSha3(byte[] src, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONSHA3, Arrays.asList(src, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonMigrate(WasmAddress contract_address) { - final WasmFunction function = new WasmFunction(FUNC_PLATONMIGRATE, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonMigrate(WasmAddress contract_address, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONMIGRATE, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonPanic() { - final WasmFunction function = new WasmFunction(FUNC_PLATONPANIC, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonPanic(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONPANIC, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonGetStateLength(byte[] key) { - final WasmFunction function = new WasmFunction(FUNC_PLATONGETSTATELENGTH, Arrays.asList(key, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonGetStateLength(byte[] key, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONGETSTATELENGTH, Arrays.asList(key, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public List getGasUsedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(GASUSED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - GasUsedEventResponse typedResponse = new GasUsedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable gasUsedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public GasUsedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(GASUSED_EVENT, log); - GasUsedEventResponse typedResponse = new GasUsedEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable gasUsedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(GASUSED_EVENT)); - return gasUsedEventObservable(filter); - } - - public RemoteCall platonEcrecover(Uint8[] hash, byte[] sig) { - final WasmFunction function = new WasmFunction(FUNC_PLATONECRECOVER, Arrays.asList(hash,sig), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonEcrecover(Uint8[] hash, byte[] sig, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONECRECOVER, Arrays.asList(hash,sig), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonRipemd160(byte[] src) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRIPEMD160, Arrays.asList(src, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonRipemd160(byte[] src, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRIPEMD160, Arrays.asList(src, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonRlpU128Size(Uint64 heigh, Uint64 low) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRLPU128SIZE, Arrays.asList(heigh,low), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonRlpU128Size(Uint64 heigh, Uint64 low, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRLPU128SIZE, Arrays.asList(heigh,low), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonRlpBytesSize(byte[] data) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRLPBYTESSIZE, Arrays.asList(data, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonRlpBytesSize(byte[] data, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRLPBYTESSIZE, Arrays.asList(data, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonRlpU128(Uint64 heigh, Uint64 low) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRLPU128, Arrays.asList(heigh,low), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonRlpU128(Uint64 heigh, Uint64 low, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRLPU128, Arrays.asList(heigh,low), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(GasPrice.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(GasPrice.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(GasPrice.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(GasPrice.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall platonGasPrice() { - final WasmFunction function = new WasmFunction(FUNC_PLATONGASPRICE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonGasPrice(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONGASPRICE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonBlockHash(Int64 num) { - final WasmFunction function = new WasmFunction(FUNC_PLATONBLOCKHASH, Arrays.asList(num), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonBlockHash(Int64 num, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONBLOCKHASH, Arrays.asList(num), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonBlockNumber() { - final WasmFunction function = new WasmFunction(FUNC_PLATONBLOCKNUMBER, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonBlockNumber(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONBLOCKNUMBER, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonGasLimit() { - final WasmFunction function = new WasmFunction(FUNC_PLATONGASLIMIT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonGasLimit(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONGASLIMIT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonGas() { - final WasmFunction function = new WasmFunction(FUNC_PLATONGAS, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonGas(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONGAS, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonTimestamp() { - final WasmFunction function = new WasmFunction(FUNC_PLATONTIMESTAMP, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonTimestamp(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONTIMESTAMP, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonCoinbase() { - final WasmFunction function = new WasmFunction(FUNC_PLATONCOINBASE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonCoinbase(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONCOINBASE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonSha256(byte[] src) { - final WasmFunction function = new WasmFunction(FUNC_PLATONSHA256, Arrays.asList(src, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonSha256(byte[] src, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONSHA256, Arrays.asList(src, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonBalance(Uint8[] addr) { - final WasmFunction function = new WasmFunction(FUNC_PLATONBALANCE, Arrays.asList(addr, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonBalance(Uint8[] addr, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONBALANCE, Arrays.asList(addr, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonOrigin() { - final WasmFunction function = new WasmFunction(FUNC_PLATONORIGIN, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonOrigin(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONORIGIN, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonCaller() { - final WasmFunction function = new WasmFunction(FUNC_PLATONCALLER, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonCaller(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONCALLER, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonCallValue() { - final WasmFunction function = new WasmFunction(FUNC_PLATONCALLVALUE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonCallValue(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONCALLVALUE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonAddress() { - final WasmFunction function = new WasmFunction(FUNC_PLATONADDRESS, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonAddress(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONADDRESS, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonCallerNonce() { - final WasmFunction function = new WasmFunction(FUNC_PLATONCALLERNONCE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonCallerNonce(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONCALLERNONCE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonTransfer(Uint8[] to) { - final WasmFunction function = new WasmFunction(FUNC_PLATONTRANSFER, Arrays.asList(to, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonTransfer(Uint8[] to, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONTRANSFER, Arrays.asList(to, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonSetState(byte[] key, byte[] value) { - final WasmFunction function = new WasmFunction(FUNC_PLATONSETSTATE, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonSetState(byte[] key, byte[] value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONSETSTATE, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonGetState(byte[] key, Uint32 length) { - final WasmFunction function = new WasmFunction(FUNC_PLATONGETSTATE, Arrays.asList(key,length), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonGetState(byte[] key, Uint32 length, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONGETSTATE, Arrays.asList(key,length), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonGetInputLength() { - final WasmFunction function = new WasmFunction(FUNC_PLATONGETINPUTLENGTH, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonGetInputLength(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONGETINPUTLENGTH, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonGetInput() { - final WasmFunction function = new WasmFunction(FUNC_PLATONGETINPUT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonGetInput(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONGETINPUT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonGetCallOutputLength() { - final WasmFunction function = new WasmFunction(FUNC_PLATONGETCALLOUTPUTLENGTH, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonGetCallOutputLength(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONGETCALLOUTPUTLENGTH, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonGetCallOutput() { - final WasmFunction function = new WasmFunction(FUNC_PLATONGETCALLOUTPUT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonGetCallOutput(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONGETCALLOUTPUT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonReturn(Uint32 length) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRETURN, Arrays.asList(length), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonReturn(Uint32 length, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRETURN, Arrays.asList(length), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonRevert() { - final WasmFunction function = new WasmFunction(FUNC_PLATONREVERT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonRevert(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONREVERT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonDebug(Uint32 length) { - final WasmFunction function = new WasmFunction(FUNC_PLATONDEBUG, Arrays.asList(length), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonDebug(Uint32 length, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONDEBUG, Arrays.asList(length), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonCall(WasmAddress contract_address, String method) { - final WasmFunction function = new WasmFunction(FUNC_PLATONCALL, Arrays.asList(contract_address,method), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonCall(WasmAddress contract_address, String method, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONCALL, Arrays.asList(contract_address,method), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonDelegateCall(WasmAddress contract_address, String method) { - final WasmFunction function = new WasmFunction(FUNC_PLATONDELEGATECALL, Arrays.asList(contract_address,method), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonDelegateCall(WasmAddress contract_address, String method, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONDELEGATECALL, Arrays.asList(contract_address,method), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonDestory(WasmAddress to) { - final WasmFunction function = new WasmFunction(FUNC_PLATONDESTORY, Arrays.asList(to), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonDestory(WasmAddress to, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONDESTORY, Arrays.asList(to), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonMigrateClone(WasmAddress contract_address) { - final WasmFunction function = new WasmFunction(FUNC_PLATONMIGRATECLONE, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonMigrateClone(WasmAddress contract_address, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONMIGRATECLONE, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonEvent(byte[] topic, byte[] args) { - final WasmFunction function = new WasmFunction(FUNC_PLATONEVENT, Arrays.asList(topic,args), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonEvent(byte[] topic, byte[] args, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONEVENT, Arrays.asList(topic,args), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonRlpBytes(byte[] data) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRLPBYTES, Arrays.asList(data, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonRlpBytes(byte[] data, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRLPBYTES, Arrays.asList(data, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonRlpListSize(Uint32 len) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRLPLISTSIZE, Arrays.asList(len), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonRlpListSize(Uint32 len, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRLPLISTSIZE, Arrays.asList(len), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonRlpList(byte[] data) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRLPLIST, Arrays.asList(data, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonRlpList(byte[] data, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONRLPLIST, Arrays.asList(data, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonContractCodeLength(Uint8[] addr) { - final WasmFunction function = new WasmFunction(FUNC_PLATONCONTRACTCODELENGTH, Arrays.asList(addr, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonContractCodeLength(Uint8[] addr, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONCONTRACTCODELENGTH, Arrays.asList(addr, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonContractCode(Uint8[] addr) { - final WasmFunction function = new WasmFunction(FUNC_PLATONCONTRACTCODE, Arrays.asList(addr, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonContractCode(Uint8[] addr, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONCONTRACTCODE, Arrays.asList(addr, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonDeploy(WasmAddress contract_address) { - final WasmFunction function = new WasmFunction(FUNC_PLATONDEPLOY, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonDeploy(WasmAddress contract_address, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONDEPLOY, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall platonClone(WasmAddress contract_address) { - final WasmFunction function = new WasmFunction(FUNC_PLATONCLONE, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall platonClone(WasmAddress contract_address, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PLATONCLONE, Arrays.asList(contract_address), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static GasPrice load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new GasPrice(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static GasPrice load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new GasPrice(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class GasUsedEventResponse { - public Log log; - - public String topic; - - public Uint64 arg1; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/GuessingWasm.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/GuessingWasm.java deleted file mode 100644 index e4e9b4df0a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/GuessingWasm.java +++ /dev/null @@ -1,244 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class GuessingWasm extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000017f1660027f7f0060017f0060017f017f60027f7f017f60037f7f7f017f60000060037f7f7f0060047f7f7f7f0060017f017e60047f7f7f7f017f60027f7e0060047f7e7e7e0060037f7e7e017f60027e7e017f60047f7f7e7e0060037f7e7e0060037e7e7f006000017f60037f7f7e017f60027f7e017f60017e017f6000017e02be031403656e760c706c61746f6e5f70616e6963000503656e760d706c61746f6e5f63616c6c6572000103656e760f706c61746f6e5f7472616e73666572000403656e7611706c61746f6e5f63616c6c5f76616c7565000203656e760b706c61746f6e5f73686133000703656e7613706c61746f6e5f626c6f636b5f6e756d626572001503656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000603656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000603656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238001003656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001103656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e74000703656e760d706c61746f6e5f726576657274000503656e760d706c61746f6e5f72657475726e0000037574050e03070a010101030407010f0b03000008000006080302000101020412030900010103000400000203030c01040c000002040200000409010400060205040608080202010000010d0002000001050901020002030a03000000020001020402040414020000011300020605020203070001000b0405017001050505030100020608017f0141b089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300140f5f5f66756e63735f6f6e5f65786974006206696e766f6b650051090a010041010b041a1f25290a9bc901740400107f0b3401017f230041206b2204240020042003370318200420023703102004419108101620002001200441106a1017200441206a24000bec0101037f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b027f0240200220016b2202410b4f0440200241106a4170712204102b21032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b20032001200210300b2103200220036a41003a000020000b8106020e7f047e230041a0026b22042400200441f8006a10362004418c016a41003602002004420037028401200441f8006a410210372105200441e8006a20001038200441d8006a20011038200441d0006a4100360200200441c8006a4200370300200441406b420037030020044200370338200441386a20042802682207200428026c103920042802582208200428025c1039210920052004280238103a2005200441e8006a103b2005200441d8006a103b20042802840120044188016a28020047044010000b2005280204210a2005280200210b200441206a103c2101200441a0016a2200200241106a2800003602002004200241086a290000370398012004200229000037039001200341086a290300211420032903002115200441d0016a4100360200200441c8016a22024200370300200441c0016a22034200370300200442003703b801200441b8016a4100103d2106200441e8016a220c20002802002205360200200441e0016a220d2004290398012212370300200441186a2005360200200441106a2012370300200420042903900122133703d801200441f8016a220e201237030020044180026a220f200536020020044190026a2210201237030020044198026a2211200536020020042013370308200420133703f00120042013370388022006200441086a103e20152014103f4101103d210520042802b8012106200541046a104020012006103a2001410210372101201120002802002205360200201020042903980122123703002004200429039001221337038802200d2012370300200c2005360200200e2012370300200f2005360200200420133703d801200420133703f0012002200536020020032012370300200420133703b8012001200441b8016a41141041201520141042220528020c200541106a28020047044010000b200b200a200528020020052802041011200528020c22020440200520023602100b200941046a1040200804402004200836025c0b200704402004200736026c0b2004280284012205044020042005360288010b200441a0026a24000b860101017f230041206b22022400200241086a1019200041a8036a200241186a280200360000200041a0036a200241106a29030037000020004198036a2002290308370000200041d8006a4200370300200041d0006a428080d0a7a4b0e4b1c500370300200041c8026a420037030020002001370310200041286a41003a0000200241206a24000b210020004200370000200041106a4100360000200041086a4200370000200010010bdf0302067f047e23004180016b22012400200141306a101b200141206a101b20012903202209200041d0006a2903005a200141286a2903002208200041d8006a29030022075a20072008511b45044010120b100521072000290310200754044010120b200141e8006a101920004180026a200041c8026a2202101c220341106a200141f8006a2204280200360000200341086a200141f0006a2205290300370000200320012903683700002002200229030042017c370300200141e8006a1019200041d8016a2203200141fc006a200141e8006a101d2206280200220245044041c000102b220241386a4200370300200241306a420037030020022001290368370010200241206a2004280200360000200241186a20052903003700002003200128027c20062002101e0b200241306a22032003290300220720097c220a370300200241386a2202200a200754ad200229030020087c7c37030020004180016a22022002290300220720097c220a37030020004188016a2202200a200754ad200229030020087c7c370300200141d8006a41800810162102200141406b1019200141186a200141d0006a280200360200200141106a200141c8006a290300370300200120012903403703082002200141086a20092008101520014180016a24000b6002037f027e230041106b2201240020012102200110032103034020030440200542088620044238888421052003417f6a210320023100002004420886842104200241016a21020c010b0b2000200437030020002005370308200141106a24000b6b01037f230041106b2203240020002003410c6a20012903001031220428020022024504404130102b220241186a420037000020022001290300370310200241206a4200370000200241286a41003600002000200328020c20042002101e0b200341106a2400200241186a0b890101027f200041046a2103024020002802042200044002400340024002402002200041106a2204102a0440200028020022040d012001200036020020000f0b20042002102a450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b480020032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b20002802042003102c2000200028020841016a3602080be00302077f037e230041306b22022400200241186a10190240200041286a2d00000d00200241186a1019034020014114470440200020016a4198036a2d0000200241186a20016a2d0000470d02200141016a21010c010b0b200041c8026a2903002208500d002000429f8d06200882420a42e40042e80720084290ce00541b200842e400541b1020200241086a20004180016a29030020004188016a290300200041ec026a2802002203200041e8026a28020022016b41146dad1021200041b8016a2206200241106a290300370300200041b0016a2002290308370300200041a8026a210403402009200320016b41146dad5a0440200041013a00280c020b200420012009a741146c22056a10222903002108200420002802e80220056a1022200842017c3703002006290300210820002903b001210a20002802e80221072002410036022020024200370318200241186a4120102320022802182201417f6a2103200228021c20016b2101034020010440200120036a200a3c00002008423886200a42088884210a2001417f6a2101200842088821080c010b0b200520076a20022802182201200228021c20016b10021a200104402002200136021c0b200942017c210920002802e802210120002802ec0221030c000b000b200241306a24000bc50102037f017e230041106b2203240002402001200282220650044020004180026a2104200041e8026a210542002101034020032001370308200120002903c8025a0d02200120028250044020052004200341086a101c10240b200142017c21010c000b000b20004180026a2104200041e8026a210542002101034020032001370308200120002903c8025a0d0102402001200282500d00200120067d2002824200520d0020052004200341086a101c10240b200142017c21010c000b000b200341106a24000b3a01017f230041106b220424002004200120022003108701200429030021012000200441086a29030037030820002001370300200441106a24000b7401037f230041106b2203240020002003410c6a2001101d220428020022024504404130102b22022001290000370010200241286a4200370300200241206a200141106a280000360000200241186a200141086a2900003700002000200328020c20042002101e0b200341106a2400200241286a0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102b21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110301a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0bc80101037f230041206b22032400024020002802042202200028020847044020022001290000370000200241106a200141106a280000360000200241086a200141086a2900003700002000200028020441146a3602040c010b200341086a2000200220002802006b41146d220241016a10322002200041086a1033220228020822042001290000370000200441106a200141106a280000360000200441086a200141086a2900003700002002200228020841146a360208200020021034200210350b200341206a24000b1900200041ec026a280200200041e8026a2802006b41146dad0b4601017f2000410036020820004200370200200141ec026a280200200141e8026a2802006b220204402000200241146d102720012802e80220012802ec02200041046a10280b0b2301017f20002001102f22023602002000200236020420002002200141146c6a3602080b2e00200120006b220141014e044020022802002000200110301a20022002280200200141146e41146c6a3602000b0b0b00200041c8026a2903000b3a01037f034020024114470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000b0b002000410120001b10500bec0101037f200120002001463a000c03400240024020002001460d00200128020822022d000c0d002002200228020822032802002204460440024020032802042204450d0020042d000c0d002004410c6a21010c030b200120022802004704402002102d2002280208220228020821030b200241013a000c200341003a000c2003102e0f0b02402004450d0020042d000c0d002004410c6a21010c020b200120022802004604402002102e2002280208220228020821030b200241013a000c200341003a000c2003102d0b0f0b200241013a000c200320002003463a000c200141013a0000200321010c000b000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b0900200041146c102b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b880102027f017e200041046a210302402000280204220004400240034002400240200029031022052002560440200028020022040d012001200036020020000f0b200520025a0d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b3001017f2001200028020820002802006b41146d2200410174220220022001491b41cc99b3e600200041e6cc9933491b0b4c01017f2000410036020c200041106a2003360200200104402001102f21040b2000200436020020002004200241146c6a220236020820002004200141146c6a36020c2000200236020420000b8d0101037f200120012802042000280204200028020022046b2203416c6d41146c6a2202360204200341004a044020022004200310301a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001416c6a22013602080c010b0b0b160020004100360208200042003702002000410010430b9f0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374102b0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110301a0b20002002360214200020033602102000200536020c20000f0b200041001006200028020422016a10860141004100200120002802006a1007200010850120000ba40201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a200410440340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b20024100360208200242003703002002412010232003200228021420036b200228020022042002280204220120046b10042000200136020420002004360200200020022802083602082003450d00200220033602140b200241206a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104520026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110460c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110430b0b1600200020012802002200200128020420006b10411a0b190020001036200041146a41003602002000420037020c20000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031046280200210120022003417f6a360200200710474180104f044020072000410c6a280200417c6a10480b200141384f047f2001104520016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110460c020b20000c010b0240200710470d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10490c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020102b2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a104a220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a104b2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104c200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104d22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a104b2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104c200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10490c010b20042001410175410120011b20032005104b2102418020102b2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104a22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104b21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003104c200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002104c052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104d22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104b21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006104c200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007104e200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b6601037f410121030240034020024114460d01200120026a2104200241016a210220042d0000450d000b411521030b027f200041186a28020022020440200041086a280200200041146a280200200210460c010b20000b2202200228020020036a36020020000b900101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003104520036a0520030b41016a21040b027f200041186a28020022030440200041086a280200200041146a280200200310460c010b20000b2203200328020020046a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000104e200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011048200441106a24000b2c01017f2000200120021008200028020422036a10860120012002200320002802006a1009200010850120000b2c01017f200020022001100a200028020422036a10860120022001200320002802006a100b200010850120000b2f01017f2000280208200149044020011050200028020020002802041030210220002001360208200020023602000b0b2001017f20002001102b2202360200200020023602042000200120026a3602080b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104a22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a104b2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003104c200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001104f0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102b21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001104f0b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210301a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f41a009200041086a2202411076220041a0092802006a2203360200419c09419c09280200220420026a41076a417871220236020002400240200341107420024d044041a009200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103041086a0541000b2100200141106a240020000b940602047f027e230041a0046b22002400107f100c220110502202100d200041306a200020022001105222014100105302400240200041306a10542204500d00419b081055200451044020011056410247044010000b200041306a200141011053200041306a10542104200041306a1057220120041018200110580c020b41a008105520045104402001410110590c020b41b008105520045104402001410210590c020b41b508105520045104402000420037032020004200370318200041206a210220011056410347044010000b200041013602800420002001360230200020004180046a360234200041306a200041186a105a200041306a2002105a200041306a10572201200029031820002903201020200110580c020b41c008105520045104402001105b200041306a105722024188016a290300210420024180016a2903002105200041186a103c220120052004105c103a2001200520041042220128020c200141106a28020047044010000b200128020020012802041013200128020c22030440200120033602100b200210580c020b41cb081055200451044020014103105d0c020b41da08105520045104402001105b20004180046a200041306a105722021026200041186a103c220120004180046a105e103a200120004180046a105f200128020c200141106a28020047044010000b200128020020012802041013200128020c22030440200120033602100b2000280280042201044020002001360284040b200210580c020b41ed0810552004510440200041f8036a22024100360200200041f0036a22034200370300200042003703e80320011056410247044010000b200041306a200141011053200041306a200041e8036a1060200041306a1057210120004190046a2002280200220236020020004188046a20032903002204370300200020002903e803220537038004200041286a2002360200200041206a2004370300200020053703182000200141a8026a200041186a10222903003703980420004198046a1061200110580c020b41fd0810552004520d0020014104105d0c010b10000b1062200041a0046a24000b0c00200020012002411c10630bcf0202067f017e230041106b220324002001280208220520024b0440200341086a200110840120012003280208200328020c10820136020c20032001108401410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410631a200341106a24000f0b2003200110840141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041082011083012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b22012400200010640240024020001065450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001066200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2501017f02402000280204450d0020002802002d000041c001490d002000106721010b20010bae26020b7f027e230041f0016b2201240020004287dda28cd4b59dfaf00037030820004200370300200041086a200041106a1068450440200020002903003703100b200041003a0018200041206a2203429edddd9587eb86befc00370300200141106a103c220420032903001069200428020c200441106a28020047044010000b02402004280200220320042802042205100e2208450d00200141003602a801200142003703a001200141a0016a200810232003200520012802a001220620012802a401220720066b100f417f470440200141d8016a200641016a20072006417f736a1052220210640240024020021065450d002002280204450d0020022802002d000041c001490d010b10000b200141f0006a200210662001280274220241024f044010000b41002105200128027021030340200204402002417f6a210220032d00002105200341016a21030c010b0b2000200541ff01714100473a0028200821020b2006450d00200120063602a4010b200428020c22030440200420033602100b2002450440200020002d00183a00280b20004200370330200041386a22034200370300200041406b2202428c909aba99ecbced3a3703002002200041d0006a106a45044020002000290330370350200041d8006a20032903003703000b20004200370360200041e8006a22034200370300200041f0006a2202429fe688e382d7cac17e370300200220004180016a106a450440200020002903603703800120004188016a20032903003703000b200042003703900120004198016a22034200370300200041a0016a220242daf6f2e48aeeb9ffc7003703002002200041b0016a106a45044020002000290390013703b001200041b8016a20032903003703000b200041c4016a22084200370200200041dc016a220a4200370200200041d0016a22024280fba0f194b9f08dd800370300200020083602c001200041d8016a2203200a360200200141f0006a103c220720022903001069200728020c200741106a28020047044010000b02402007280200220520072802042204100e220b450440410021020c010b410021022001410036026820014200370360200141e0006a200b102320052004200128026022092001280264220620096b100f417f47044002400240200141c8006a200941016a20062009417f736a10522202280204450d0020022802002d000041c001490d00200141c8016a2002106b200141b8016a2002106c200141386a2104200141206a2102034020012802cc0120012802bc0146044020012802d00120012802c001460d030b200141a0016a200141c8016a106d2004420037030020024100360200200142003703302001420037031820014200370310200141a0016a106e410247044010000b20014198016a2205410036020020014190016a220642003703002001420037038801200141d8016a200141a0016a41001053200141d8016a20014188016a106020022005280200360200200120012903880137031020012006290300370318200141d8016a200141a0016a410110532001200141d8016a106f2004200141086a290300220c37030020012001290300220d3703302003200141d8016a200141106a101d220628020045044041c000102b220541386a200c370300200541306a200d370300200541186a200129031837030020052001290310370310200541206a2002280200360200200320012802d80120062005101e0b200141c8016a10700c000b000b10000b200b21020b2009450d00200120093602640b200728020c22050440200720053602100b024020020d0020002802c0012102024020002802e001450d0020002802d80121052000200a3602d801200041003602e00120002802dc012104200041003602dc012004410036020820052802042204200520041b2104034020042205450d012002200847044020052002290010370010200541206a200241206a280000360000200541186a200241186a2900003700002002290330210c200541386a200241386a290300370300200541306a200c370300024020052802082204450440410021040c010b2005200428020022064604402004410036020020042802042206450d012006107121040c010b200441003602042006450d002006107121040b2003200141106a200541106a107221062003200128021020062005101e2002107321020c010b0b0340200528020822050d000b200821020b034020022008460d012003200141106a41c000102b220541106a200241106a41301030107221042003200128021020042005101e2002107321020c000b000b200041ec016a2208420037020020004184026a220a4200370200200041f8016a220242d6d5a2e0fc88bdd7917f370300200020083602e80120004180026a2205200a360200200141a0016a103c220720022903001069200728020c200741106a28020047044010000b02402007280200220320072802042204100e220b450440410021020c010b410021022001410036026820014200370360200141e0006a200b102320032004200128026022092001280264220620096b100f417f47044002400240200141f0006a200941016a20062009417f736a10522202280204450d0020022802002d000041c001490d00200141c8016a2002106b200141b8016a2002106c20014198016a210220014190016a2103034020012802cc0120012802bc0146044020012802d00120012802c001460d030b200141d8016a200141c8016a106d20024100360200200342003703002001420037038801200141d8016a106e410247044010000b200141106a200141d8016a41001053200141106a1054210c200141d8006a22044100360200200141d0006a2206420037030020014200370348200141106a200141d8016a41011053200141106a200141c8006a1060200320062903003703002002200428020036020020012001290348370388012005200141106a200c103122062802004504404130102b2204200c370310200441186a200129038801370300200441206a2003290300370300200441286a20022802003602002005200128021020062004101e0b200141c8016a10700c000b000b10000b200b21020b2009450d00200120093602640b200728020c22030440200720033602100b024020020d0020002802e80121020240200028028802450d0020002802800221032000200a360280022000410036028802200028028402210420004100360284022004410036020820032802042204200320041b2104034020042203450d012002200847044020032002290310370310200341186a2002290018370000200341206a200241206a290000370000200341286a200241286a280000360000200341106a2106024020032802082204450440410021040c010b2003200428020022074604402004410036020020042802042207450d012007107121040c010b200441003602042007450d002007107121040b2005200141106a2006107421062005200128021020062003101e2002107321020c010b0b0340200328020822030d000b200821020b034020022008460d014130102b22032002290310370310200341286a200241286a290300370300200341206a200241206a290300370300200341186a200241186a2903003703002005200141106a200341106a107421042005200128021020042003101e2002107321020c000b000b20004194026a22084200370200200041ac026a220a4200370200200041a0026a220242bac898efcbc0e1ab1c3703002000200836029002200041a8026a2205200a360200200141f0006a103c220720022903001069200728020c200741106a28020047044010000b02402007280200220320072802042204100e220b450440410021020c010b410021022001410036026820014200370360200141e0006a200b102320032004200128026022092001280264220620096b100f417f47044002400240200141c8006a200941016a20062009417f736a10522202280204450d0020022802002d000041c001490d00200141c8016a2002106b200141b8016a2002106c200141206a2102200141186a2103034020012802cc0120012802bc0146044020012802d00120012802c001460d030b200141a0016a200141c8016a106d20024100360200200342003703002001420037031020014200370328200141a0016a106e410247044010000b20014198016a2204410036020020014190016a220642003703002001420037038801200141d8016a200141a0016a41001053200141d8016a20014188016a106020032006290300370300200220042802003602002001200129038801370310200141d8016a200141a0016a410110532001200141d8016a1054220c3703282005200141d8016a200141106a101d22062802004504404130102b22042001290310370310200441286a200c370300200441206a2002280200360200200441186a2003290300370300200520012802d80120062004101e0b200141c8016a10700c000b000b10000b200b21020b2009450d00200120093602640b200728020c22030440200720033602100b024020020d002000280290022102024020002802b002450d0020002802a80221032000200a3602a802200041003602b00220002802ac022104200041003602ac022004410036020820032802042204200320041b2104034020042203450d012002200847044020032002290010370010200341206a200241206a280000360000200341186a200241186a290000370000200341286a2002290328370300024020032802082204450440410021040c010b2003200428020022064604402004410036020020042802042206450d012006107121040c010b200441003602042006450d002006107121040b2005200141106a200341106a107221062005200128021020062003101e2002107321020c010b0b0340200328020822030d000b200821020b034020022008460d014130102b22032002290310370310200341286a200241286a290300370300200341206a200241206a290300370300200341186a200241186a2903003703002005200141106a200341106a107221042005200128021020042003101e2002107321020c000b000b200042003703b802200041c0026a220242a4da9ac38097c3ace2003703002002200041c8026a1068450440200020002903b8023703c8020b200042003702d00241002102200041f0026a4100360200200041e8026a22044200370200200041e0026a220342affaa1a8d79aee76370300200041d8026a4100360200200141d8016a103c220720032903001069200728020c200741106a28020047044010000b200041ec026a210802402007280200220320072802042205100e220b450d00200141003602c001200142003703b801200141b8016a200b10232003200520012802b801220a20012802bc012206200a6b100f417f47044002400240200141a0016a200a41016a2006200a417f736a10522202280204450d0020022802002d000041c001490d0020021056210320002802f00220002802e80222056b41146d20034904402004200141106a200320002802ec0220056b41146d200041f0026a103322031034200310350b20014188016a2002106b200141c8016a2002106c200041f0026a2109200141d8006a2103200141d0006a21050340200128028c0120012802cc0146044020012802900120012802d001460d030b200141106a20014188016a106d200341003602002005420037030020014200370348200141106a200141c8006a1060024020002802ec02220220002802f00249044020022001290348370000200241106a2003280200360000200241086a20052903003700002008200828020041146a3602000c010b200141f0006a2004200220042802006b41146d220241016a10322002200910332102200128027822062001290348370000200641106a2003280200360000200641086a20052903003700002001200128027841146a360278200420021034200210350b20014188016a10700c000b000b10000b200b21020b200a450d002001200a3602bc010b200728020c22030440200720033602100b024020020d0020002802d402220520002802d00222036b41146d220620002802f00220002802e80222026b41146d4d04402006200828020020026b41146d22044b044020032003200441146c6a2204200210751a20042005200810280c020b200820032005200210753602000c010b20020440200041003602f002200042003702e8020b2004200420061032102720032005200810280b200042003700f8024100210520004188036a410036000020004180036a420037000020004198036a2204420037000020004190036a220342a09699d3a8feb6f5f900370300200041a0036a4200370000200041a8036a4100360000200141106a103c220220032903001069200228020c200241106a28020047044010000b02402002280200220820022802042207100e2206450d00200141003602a801200142003703a001200141a0016a200610232008200720012802a001220320012802a401220920036b100f417f470440200141d8016a200341016a20092003417f736a105220041060200621050b2003450d00200120033602a4010b200228020c22030440200220033602100b20054504402004200041f8026a2202290300370300200441106a200241106a280200360200200441086a200241086a2903003703000b200141f0016a240020000bb61e020e7f067e230041c0026b22012400200141e0016a103c220220004190036a22032903001076103a200220032903001069200228020c200241106a28020047044010000b2002280204210820022802002106200141c0016a103c210320014198026a410036020020014190026a2207420037030020014188026a2209420037030020014188016a200041a8036a2204280000220536020020014180016a200041a0036a220a290000221037030020004198036a220b290000210f200141d0006a2010370300200141d8006a200536020020014200370380022001200f370378200141b0026a2010370300200141b8026a2005360200200141b0016a220c2010370300200141b8016a220d20053602002001200f3703482001200f3703a8022001200f3703a80120014180026a200141c8006a103e2105200128028002210e200541046a10402003200141a8026a1077220510782003200e20052802046a20052802006b103a200d20042800002204360200200c200a290000220f3703002001200b29000022103703a80120014198016a200f370300200141a0016a2004360200200141e8006a200f370300200141f0006a2004360200200120103703900120012010370360200720043602002009200f37030020012010370380020240200320014180026a41141041220328020c200341106a280200460440200341046a2104200328020021070c010b200341046a2104100020032802002107200328020c2003280210460d0010000b20062008200720042802001010200528020022040440200520043602040b200328020c22050440200320053602100b200228020c22030440200220033602100b20014180026a103c2203200041e0026a22022903001076103a200320022903001069200041e8026a2104200328020c200341106a28020047044010000b2003280204210820032802002106200141e0016a103c21022004105e21072002200141c0016a1077220510782002200720052802046a20052802006b103a20022004105f0240200228020c200241106a280200460440200241046a2104200228020021070c010b200241046a2104100020022802002107200228020c2002280210460d0010000b20062008200720042802001010200528020022040440200520043602040b200228020c22050440200220053602100b200328020c22020440200320023602100b200041e8026a28020022020440200041ec026a20023602000b20002802d00222020440200041d4026a20023602000b200041c0026a200041c8026a1079200141a8016a103c2207200041a0026a22022903001076103a200720022903001069200728020c200741106a28020047044010000b2007280204210a2007280200210b20014190016a103c210920014198026a410036020020014190026a420037030020014188026a420037030020014200370380020240200041b0026a28020045044020014180026a107a0c010b200041ac026a210820014180026a4100103d210620002802a802210203402002200846044020064101103d1a05200141d0016a200241206a290300220f370300200141c8016a200241186a29030022103703002001200229031022113703c00120022903282112200141f0016a2203200f370300200141e8016a22052010370300200120113703e00120064100103d2104200141f0006a20032802002203360200200141e8006a2005290300220f370300200141406b2003360200200141386a200f370300200120012903e001221037036020014180016a200f37030020014188016a2003360200200141b0026a200f370300200141b8026a20033602002001201037033020012010370378200120103703a8022004200141306a103e2012107b4101103d1a2002107321020c010b0b0b200128028002210220014180026a41047210402009200141e0016a1077220610782009200220062802046a20062802006b103a200920002802b00210372104200041ac026a210820002802a80221020340200220084704402004410210372105200141b8026a200241206a2802002203360200200141b0026a200241186a290300220f3703002001200229031022103703a802200141e8006a200f370300200141f0006a200336020020014180016a200f37030020014188016a2003360200200120103703602001201037037820014190026a200336020020014188026a200f3703002001201037038002200520014180026a41141041200229032810692002107321020c010b0b0240200428020c200441106a280200460440200441046a2102200428020021030c010b200441046a2102100020042802002103200428020c2004280210460d0010000b200b200a200320022802001010200628020022020440200620023602040b200428020c22020440200420023602100b200728020c22020440200720023602100b200141e0016a103c2209200041f8016a22022903001076103a200920022903001069200928020c200941106a28020047044010000b2009280204210b2009280200210c200141c0016a103c210a20014198026a410036020020014190026a420037030020014188026a42003703002001420037038002024020004188026a28020045044020014180026a107a0c010b20004184026a210620014180026a4100103d2107200028028002210203402002200646044020074101103d1a0520014198016a200241206a290300220f370300200141a0016a200241286a28020022033602002001200229031822103703900120022903102111200141f0006a22052003360200200141e8006a2204200f3703002001201037036020074100103d2011107b210820014188016a2005280200220336020020014180016a2004290300220f370300200141286a2003360200200141206a200f370300200120012903602210370378200141b0026a200f370300200141b8026a2003360200200141b0016a200f370300200141b8016a200336020020012010370318200120103703a802200120103703a8012008200141186a103e4101103d1a2002107321020c010b0b0b200128028002210220014180026a4104721040200a200141a8016a107722061078200a200220062802046a20062802006b103a200a2000280288021037210420004184026a21082000280280022102034020022008470440200441021037220520022903101069200141f0006a200241286a2802002203360200200141e8006a200241206a290300220f37030020012002290318221037036020014180016a200f37030020014188016a2003360200200141b0026a200f370300200141b8026a200336020020012010370378200120103703a80220014190026a200336020020014188026a200f3703002001201037038002200520014180026a411410411a2002107321020c010b0b0240200428020c200441106a280200460440200441046a2102200428020021030c010b200441046a2102100020042802002103200428020c2004280210460d0010000b200c200b200320022802001010200628020022020440200620023602040b200428020c22020440200420023602100b200928020c22020440200920023602100b200141a8016a103c2206200041d0016a22022903001076103a200620022903001069200628020c200641106a28020047044010000b2006280204210a2006280200210b20014190016a103c2109200141d8016a4100360200200141d0016a4200370300200141c8016a4200370300200142003703c0010240200041e0016a280200450440200141c0016a107a0c010b200041dc016a2104200141c0016a4100103d210820002802d801210203402002200446044020084101103d1a05200141f8016a200241286a290300220f370300200141f0016a200241206a29030022103703002001200229031022113703e0012001200241186a29030022123703e801200241386a29030021132002290330211420014198026a200f37030020014190026a220320103703002001201237038802200120113703800220084100103d2105200141f0006a20032802002203360200200141e8006a200129038802220f370300200141106a2003360200200141086a200f3703002001200129038002221037036020014180016a200f37030020014188016a2003360200200141b0026a200f370300200141b8026a20033602002001201037030020012010370378200120103703a80220052001103e20142013103f4101103d1a2002107321020c010b0b0b20012802c0012102200141c0016a41047210402009200141e0016a1077220710782009200220072802046a20072802006b103a200920002802e00110372104200041dc016a210820002802d80121020340200220084704402004410210372105200141b8026a200241206a2802002203360200200141b0026a200241186a290300220f3703002001200229031022103703a802200141e8006a200f370300200141f0006a200336020020014180016a200f37030020014188016a2003360200200120103703602001201037037820014190026a200336020020014188026a200f3703002001201037038002200520014180026a411410412002290330200241386a29030010421a2002107321020c010b0b0240200428020c200441106a280200460440200441046a2102200428020021030c010b200441046a2102100020042802002103200428020c2004280210460d0010000b200b200a200320022802001010200728020022020440200720023602040b200428020c22020440200420023602100b200628020c22020440200620023602100b200041a0016a200041b0016a107c200041f0006a20004180016a107c200041406b200041d0006a107c200141e0016a103c2202200041206a22032903001076103a200220032903001069200228020c200241106a28020047044010000b2002280204210420022802002108200141c0016a103c210320014198026a410036020020014190026a420037030020014188026a4200370300200142003703800220014180026a20003100284200103f21052001280280022106200541046a1040200320014180026a1077220510782003200620052802046a20052802006b103a02402003200031002842001042220328020c200341106a280200460440200341046a2106200328020021070c010b200341046a2106100020032802002107200328020c2003280210460d0010000b20082004200720062802001010200528020022040440200520043602040b200328020c22050440200320053602100b200228020c22030440200220033602100b200041086a200041106a1079200141c0026a24000b2b01017f230041b0036b220224002000105b2002105721002002200111010020001058200241b0036a24000b4601017f230041206b22022400200241086a2000280200200028020428020010532001200241086a105437030020002802042200200028020041016a360200200241206a24000b0e0020001056410147044010000b0b5301037f230041206b22022400200241186a4100360200200241106a4200370300200241086a420037030020024200370300200220002001103f210320022802002104200341046a1040200241206a240020040b3901017f230041c0036b220224002000105b2002105721002002200220011108003703b803200241b8036a106120001058200241c0036a24000bae0202047f027e23004180016b22012400200141306a4100360200200141286a4200370300200141206a420037030020014200370318024020002802002000280204460440200141186a107a0c010b200141186a4100103d2103200028020421042000280200210003402000200446044020034101103d1a05200141c8006a200041106a2800002202360200200141406b200041086a290000220637030020002900002105200141086a2006370300200141106a200236020020012005370338200141d8006a2006370300200141e0006a2002360200200141f0006a2006370300200141f8006a200236020020012005370300200120053703502001200537036820032001103e1a200041146a21000c010b0b0b20012802182100200141186a410472104020014180016a240020000bdf0102037f027e230041e0006b220224002000200128020420012802006b41146d103721032001280204210420012802002101034020012004460440200241e0006a240005200241106a200141106a2800002200360200200241086a200141086a2900002205370300200220012900002206370300200241206a2005370300200241286a2000360200200241386a2005370300200241406b20003602002002200637031820022006370330200241d8006a2000360200200241d0006a2005370300200220063703482003200241c8006a411410411a200141146a21010c010b0b0bcf0102037f027e230041406a2202240020001064200241386a20001066200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10000b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a2002280238200310301a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000b5f01027f230041206b22022400200241086a103c220120002903001076103a200120002903001069200128020c200141106a28020047044010000b200128020020012802041013200128020c22000440200120003602100b200241206a24000b880101037f418c094101360200419009280200210003402000044003404194094194092802002201417f6a22023602002001410148450440418c094100360200200020024102746a22004184016a280200200041046a280200110100418c09410136020041900928020021000c010b0b4194094120360200419009200028020022003602000c010b0b0b750020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d00200010800120024f0d002003410471044010000c010b200042003702000b02402003411071450d00200010800120024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001064200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001107d2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b820101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000108401200128020c210003402000450d0120014100200128020822032003200010820122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bc10101057f230041406a22022400200241286a103c220320002903001069200328020c200341106a28020047044010000b02402003280200220020032802042205100e22064504400c010b2002410036022020024200370318200241186a200610232000200520022802182200200228021c220520006b100f417f47044020012002200041016a20052000417f736a10521054370300200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040b0b0020002001420010421a0be00102057f017e230041d0006b22022400200241386a103c220320002903001069200328020c200341106a28020047044010000b02402003280200220020032802042205100e22064504400c010b2002410036023020024200370328200241286a200610232000200520022802282200200228022c220520006b100f417f4704402002200241106a200041016a20052000417f736a1052106f200229030021072001200241086a29030037030820012007370300200621040b2000450d002002200036022c0b200328020c22000440200320003602100b200241d0006a240020040b0a00200020014101107e0b0a00200020014100107e0b160020002001280204200141086a280200411c10631a0b210002402000280204044020002802002d000041bf014b0d010b10000b200010670b9e0102027f027e230041106b22022400200110640240024020011065450d002001280204450d0020012802002d000041c001490d010b10000b200241086a20011066200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000bb70102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a200141002004200210820110830120002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a102a044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b6402017f017e024020002802042203044020022903002104034002402004200329031054044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b2501017f200120006b220141146d210320010440200220002001104f0b2002200341146c6a0b5101037f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000107b210220012802002103200241046a1040200141206a240020030b30002000410036020820004200370200200041011044200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004104320002802040520020b20002802006a2003200110301a2000200028020420016a3602040b8a0201067f230041406a22042400200441286a103c220220002903001076103a200220002903001069200228020c200241106a28020047044010000b2002280204210620022802002107200441106a103c2100200129030010762105200020041077220310782000200520032802046a20032802006b103a2000200129030010690240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b20072006200520012802001010200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000b3901017f027f200041186a28020022010440200041086a280200200041146a280200200110460c010b20000b2201200128020041016a3602000b0a00200020014200103f0b990201077f230041406a22042400200441286a103c220320002903001076103a200320002903001069200328020c200341106a28020047044010000b2003280204210620032802002107200441106a103c21022001290300200141086a2205290300105c2108200220041077220010782002200820002802046a20002802006b103a02402002200129030020052903001042220128020c200141106a280200460440200141046a2102200128020021050c010b200141046a2102100020012802002105200128020c2001280210460d0010000b20072006200520022802001010200028020022020440200020023602040b200128020c22000440200120003602100b200328020c22010440200320013602100b200441406b24000bff0201037f200028020445044041000f0b2000106441012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110840120004100200428020c220120042802082202200110820122032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b3501017f230041106b220041b0890436020c419809200028020c41076a4178712200360200419c09200036020041a0093f003602000b2f01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001081012000107d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2801017f230041206b22022400200241086a20002001411410631080012100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2301017f2001107d220220012802044b044010000b20002001200110810120021083010b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210066a108601200120002802006a22012002200110070c010b0b0b3601017f2000280208200149044020011050200028020020002802041030210220002001360208200020023602000b200020013602040b8a0302027f047e0240200250044020012003802101420021020c010b2003504504400240027e20032003427f7c8350044020034201510d04200242c00020037a22067d862001200688842101200220068821020c040b2001200379a7200279a76b41c1006a220441c000460d001a2004413f4d0440200241c00020046bad22068620012004ad2208888421072002200888210920012006862108420021060c020b200241800120046bad2206862001200441406aad22078884210820022007882107200120068621060c010b21082002210741c00021040b03402004044020094201862007423f888422022002427f8542007c20074201862008423f88842207427f85220220037c200254ad7c423f8722024200837d20072002200383220154ad7d2109200720017d210720084201862006423f888421082004417f6a21042005ad20064201868421062002a741017121050c010b0b20084201862006423f888421022005ad2006420186427e838421010c010b42002101420021020b20002001370300200020023703080b0b900101004180080b88016775657373696e672073756363657373007472616e736665723100696e6974006775657373696e67576974684c617400647261770067657477696e6e6572730067657442616c616e63650067657457696e6e6572436f756e740067657457696e6e6572416464726573736573006765744d794775657373436f64657300676574496e6465784b6579"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETWINNERADDRESSES = "getWinnerAddresses"; - - public static final String FUNC_GETBALANCE = "getBalance"; - - public static final String FUNC_GUESSINGWITHLAT = "guessingWithLat"; - - public static final String FUNC_DRAW = "draw"; - - public static final String FUNC_GETWINNERS = "getwinners"; - - public static final String FUNC_GETWINNERCOUNT = "getWinnerCount"; - - public static final String FUNC_GETMYGUESSCODES = "getMyGuessCodes"; - - public static final String FUNC_GETINDEXKEY = "getIndexKey"; - - public static final WasmEvent TRANSFER1_EVENT = new WasmEvent("transfer1", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent TRANSFER2_EVENT = new WasmEvent("transfer2", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Uint128.class))); - ; - - protected GuessingWasm(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected GuessingWasm(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getWinnerAddresses() { - final WasmFunction function = new WasmFunction(FUNC_GETWINNERADDRESSES, Arrays.asList(), WasmAddress[].class); - return executeRemoteCall(function, WasmAddress[].class); - } - - public RemoteCall getBalance() { - final WasmFunction function = new WasmFunction(FUNC_GETBALANCE, Arrays.asList(), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public List getTransfer1Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER1_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer1EventResponse typedResponse = new Transfer1EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer1EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer1EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER1_EVENT, log); - Transfer1EventResponse typedResponse = new Transfer1EventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable transfer1EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER1_EVENT)); - return transfer1EventObservable(filter); - } - - public List getTransfer2Events(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER2_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable transfer2EventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public Transfer2EventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER2_EVENT, log); - Transfer2EventResponse typedResponse = new Transfer2EventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable transfer2EventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER2_EVENT)); - return transfer2EventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Uint64 _endBlock) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_endBlock)); - return deployRemoteCall(GuessingWasm.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Uint64 _endBlock) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_endBlock)); - return deployRemoteCall(GuessingWasm.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint64 _endBlock) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_endBlock)); - return deployRemoteCall(GuessingWasm.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint64 _endBlock) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_endBlock)); - return deployRemoteCall(GuessingWasm.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall guessingWithLat() { - final WasmFunction function = new WasmFunction(FUNC_GUESSINGWITHLAT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall guessingWithLat(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_GUESSINGWITHLAT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall draw() { - final WasmFunction function = new WasmFunction(FUNC_DRAW, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall draw(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DRAW, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getwinners(Uint64 drawIndex, Uint64 times) { - final WasmFunction function = new WasmFunction(FUNC_GETWINNERS, Arrays.asList(drawIndex,times), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall getwinners(Uint64 drawIndex, Uint64 times, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_GETWINNERS, Arrays.asList(drawIndex,times), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getWinnerCount() { - final WasmFunction function = new WasmFunction(FUNC_GETWINNERCOUNT, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall getMyGuessCodes(WasmAddress address) { - final WasmFunction function = new WasmFunction(FUNC_GETMYGUESSCODES, Arrays.asList(address), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall getIndexKey() { - final WasmFunction function = new WasmFunction(FUNC_GETINDEXKEY, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static GuessingWasm load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new GuessingWasm(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static GuessingWasm load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new GuessingWasm(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Transfer1EventResponse { - public Log log; - - public String topic; - - public WasmAddress arg1; - - public Uint128 arg2; - } - - public static class Transfer2EventResponse { - public Log log; - - public String topic; - - public WasmAddress arg1; - - public Uint128 arg2; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/HeapSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/HeapSort.java deleted file mode 100644 index b542c67a38..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/HeapSort.java +++ /dev/null @@ -1,85 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class HeapSort extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f017f60017f0060037f7f7f017f60037f7f7f0060000060027f7f017f60047f7f7f7f017f60047f7f7f7f0060037f7e7e0060027f7e0060037e7e7f006000017f60027e7e017f60017f017e02fd010b03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000033e3d050404060004010301050103040201000e020102010000010100000507010a0306090200000607000203000002090301000100030702030004050101080405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974002606696e766f6b6500140ae4503d040010440bbf0102027f017e2002417e6a41026d210303402003417f4c0440200241037441786a2103034020024102484504402001280200220429030021052004200320046a220429030037030020042005370300200128020041002002417f6a2202100d200341786a21030c010b0b2000280218044020004200370218200041206a41003602000b20002001290200370218200041206a2001280208360200200141003602082001420037020005200128020020032002100d2003417f6a21030c010b0b0b7b02027f027e034002402001410174410172220320024e0d00200341016a2204200248044020042003200020044103746a290300200020034103746a290300551b21030b200020034103746a22042903002205200020014103746a22012903002206570d002004200637030020012005370300200321010c010b0b0b3e01017f2000420037020020004100360208200128020420012802006b2202044020002002410375100f20012802002001280204200041046a10100b20000b2301017f2000200110112202360200200020023602042000200220014103746a3602080b2800200120006b220141014e044020022802002000200110121a2002200228020020016a3602000b0b0900200041037410130bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b0b002000410120001b10150b970402057f017e23004180016b22002400104410052201101522021006200041306a200041186a200220011016220341001017200041306a101802400240200041306a1019450d002000280234450d0020002802302d000041c001490d010b10000b200041e8006a200041306a101a200028026c220141094f044010000b200028026821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008101b20055104402003101c200041306a101d101e0c020b418508101b200551044020004200370370200042003703682003101f410347044010000b200041306a200341011017200041306a200041e8006a1020200041306a200341021017200041086a200041306a1021200020002903082205420188420020054201837d853e0274200041306a101d2102200041306a200041d8006a200041e8006a100e22012000280274100c200128020022030440200120033602040b2002101e20002802682201450d022000200136026c0c020b418a08101b2005520d002003101c200041306a101d2103200041d8006a200041c8006a100e2102200041e8006a10222201200210231024200120021025200128020c200141106a28020047044010000b20012802002001280204100a200128020c22040440200120043602100b200228020022010440200220013602040b2003101e0c010b10000b102620004180016a24000b9b0101047f230041106b220124002001200036020c2000047f41a808200041086a2202411076220041a8082802006a220336020041a40841a408280200220420026a41076a417871220236020002400240200341107420024d044041a808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101241086a0541000b2100200141106a240020000b0c00200020012002411c10270bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102f20012003280208200328020c103036020c20032001102f410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410271a200341106a24000f0b20032001102f41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103010472001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001018200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110282204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101f410147044010000b0b810301087f230041306b22072400200042003702182000429ff6cac1ba87de9b867f3703102000410036020820004200370200200041206a4100360200200741186a1022220320002903101029200328020c200341106a28020047044010000b200041186a21050240200328020022062003280204220810072204450d002004101321020340200120026a41003a00002004200141016a2201470d000b20062008200220011008417f460440410021010c010b2007200241016a200120026a2002417f736a101620051020200421010b200328020c22020440200320023602100b024020010d002000411c6a210120002802042203200028020022046b41037522062000280220200028021822026b4103754d04402006200128020020026b41037522054b04402004200420054103746a22052002102a1a20052003200110100c020b2001200420032002102a3602000c010b2002044020004100360220200042003702180b200520052006102b100f20042003200110100b200741306a240020000b9c03010a7f230041406a22022400200241086a10222103200241386a4100360200200241306a4200370300200241286a420037030020024200370320200241206a20002903104200102c20022802202101200241206a410472102d200320011024200320002903101029200328020c200341106a28020047044010000b2003280204210520032802002106200241206a10222101200041186a22071023210841011013220441fe013a0000200128020c200141106a28020047044010000b2001280204220941016a220a20012802084b047f2001200a102e20012802040520090b20012802006a2004410110121a2001200128020441016a3602042001200441016a200820046b6a10242001200710250240200128020c2001280210460440200128020021040c010b100020012802002104200128020c2001280210460d0010000b20062005200420012802041009200128020c22040440200120043602100b200328020c22010440200320013602100b2000280218220104402000411c6a20013602000b200028020022010440200020013602040b200241406b24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102f200128020c210003402000450d01200141002001280208220320032000103022046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf30302077f017e230041e0006b22042400024002402000280204450d0020002802002d000041c001490d002000101f21022001280208200128020022036b41037520024904402001200441106a2002200128020420036b410375200141086a103122021032200210330b200441386a2000410110342102200441286a2000410010342106200141086a210720022802042100034020062802042000464100200228020822032006280208461b0d022004200441106a20002003411c10271021200441086a290300423f862004290300220942018884420020094201837d8521090240200128020422002001280208490440200020093703002001200041086a3602040c010b200441c8006a2001200020012802006b410375220041016a102b20002007103121002004280250220320093703002004200341086a360250200120001032200010330b20022002280204220020022802086a410020001b22003602042002280200220304402002200336020820002003103021052002027f200228020422004504404100210341000c010b410021034100200228020822082005490d001a200820052005417f461b210320000b2200ad2003ad42208684370204200241002002280200220520036b2203200320054b1b3602000c0105200241003602080c010b000b000b10000b200441e0006a24000b9e0102027f027e230041106b22022400200110180240024020011019450d002001280204450d0020012802002d000041c001490d010b10000b200241086a2001101a200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000b2900200041003602082000420037020020004100102e200041146a41003602002000420037020c20000bba0102027f027e230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300027f200028020020002802044604402001410136020041010c010b2001410010352000280204210220002802002100037f2000200246047f2001410110352001280200052001200029030022034201862003423f8722048520044201862003423f8884200485102c200041086a21000c010b0b0b21002001410472102d200141206a240020000b13002000280208200149044020002001102e0b0bf60202067f027e0240200128020420012802006b220204402002410375210220002802042106200041106a2802002203200041146a280200220449044020032002ad2006ad422086843702002000200028021041086a3602100c020b027f41002003200028020c22056b410375220741016a2203200420056b2204410275220520052003491b41ffffffff01200441037541ffffffff00491b2205450d001a200541037410130b2103200320074103746a22042002ad2006ad4220868437020020042000280210200028020c22076b22026b2106200320054103746a2103200441086a2104200241014e044020062007200210121a0b20002003360214200020043602102000200636020c0c010b200041001001200028020422026a103641004100200220002802006a1002200010370b20012802042102200128020021010340200120024704402000200129030022084201862008423f8722098520094201862008423f88842009851038200141086a21010c010b0b0b880101037f419408410136020041980828020021000340200004400340419c08419c082802002201417f6a220236020020014101484504404194084100360200200020024102746a22004184016a280200200041046a280200110200419408410136020041980828020021000c010b0b419c084120360200419808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104520024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104520024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101841012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0a0020002001420010380b2501017f200120006b220141037521032001044020022000200110430b200220034103746a0b3101017f2001200028020820002802006b2200410275220220022001491b41ffffffff01200041037541ffffffff00491b0b890101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103c20036a0520030b41016a21040b200041186a28020022030440200041086a280200200041146a2802002003103921000b2000200028020020046a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001042200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103b200441106a24000b2f01017f2000280208200149044020011015200028020020002802041012210220002001360208200020023602000b0b2101017f20011028220220012802044b044010000b2000200120011046200210470b2701017f230041206b22022400200241086a200020014114102710452100200241206a240020000b4c01017f2000410036020c200041106a2003360200200104402001101121040b200020043602002000200420024103746a22023602082000200420014103746a36020c2000200236020420000b870101037f200120012802042000280204200028020022046b22036b2202360204200341004a044020022004200310121a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141786a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001102f20004100200428020c2201200428020822022001103022032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031039280200210120022003417f6a3602002007103a4180104f044020072000410c6a280200417c6a103b0b200141384f047f2001103c20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103921000c010b02402007103a0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103d0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010132105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103e220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a103f2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021040200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104122013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a103f2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021040200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103d0c010b20042001410175410120011b20032005103f210241802010132106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103e22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103f21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031040200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021040052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104122013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103f21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061040200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071042200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b3601017f2000280208200149044020011015200028020020002802041012210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1036200120002802006a22012002200110020c010b0b0b2801017f2000200220011003200028020422036a103620022001200320002802006a1004200010370b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103e22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a103f2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031040200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110430b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101321040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110430b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210121a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041b0880436020c41a008200028020c41076a417871220036020041a408200036020041a8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001046200010286a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b1a01004180080b13696e697400736f7274006765745f6172726179"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SORT = "sort"; - - public static final String FUNC_GET_ARRAY = "get_array"; - - protected HeapSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected HeapSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(HeapSort.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(HeapSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(HeapSort.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(HeapSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall sort(Int64[] arr, Int32 n) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,n), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall sort(Int64[] arr, Int32 n, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,n), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_array() { - final WasmFunction function = new WasmFunction(FUNC_GET_ARRAY, Arrays.asList(), Int64[].class); - return executeRemoteCall(function, Int64[].class); - } - - public static HeapSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new HeapSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static HeapSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new HeapSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/HomeBridge.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/HomeBridge.java deleted file mode 100644 index 62eb471873..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/HomeBridge.java +++ /dev/null @@ -1,228 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class HomeBridge extends WasmContract { - private static String BINARY_0 = "0x0061736d010000000187011760027f7f0060017f017f60017f0060027f7f017f60037f7f7f017f60037f7f7f0060000060047f7f7f7f0060047f7f7f7f017f60037f7e7e0060037f7e7e017f60057f7f7f7f7f0060027f7e0060067f7e7e7f7e7e0060057f7e7e7e7e0060027e7f0060027e7e0060037e7e7f006000017f60017e017f60027e7e017f6000017e60017f017e02d9031503656e760c706c61746f6e5f70616e6963000603656e760d706c61746f6e5f63616c6c6572000203656e760f706c61746f6e5f7472616e73666572000403656e7610706c61746f6e5f6761735f7072696365000103656e7611706c61746f6e5f626c6f636b5f68617368000f03656e7611706c61746f6e5f63616c6c5f76616c7565000103656e760b706c61746f6e5f73686133000703656e7613706c61746f6e5f626c6f636b5f6e756d626572001503656e760d706c61746f6e5f726576657274000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65001403656e760f706c61746f6e5f726c705f75313238001103656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001203656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e740007037271061003030004020000010905090d000b03030303020502030e000004010005040700010302020104030504020301040004030a0a00000100040802040102030c040008020100010605160100000102000001020601080002000000020001040113020100000800020506010103070002000405017001010105030100020608017f0141f088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300150f5f5f66756e63735f6f6e5f65786974006806696e766f6b65005c0adaa201710400107e0b910201067f230041e0006b22022400200241086a41890810172103200241286a410110182104200241186a20031019200241d8006a4100360200200241d0006a4200370300200241c8006a420037030020024200370340200241406b20022802182206200228021c101a210320022802402105200341046a101b20042005101c2004200241186a101d200428020c200441106a28020047044010000b2004280204210520042802002107200241406b101e220320002001101f200328020c200341106a28020047044010000b20072005200328020020032802041014200328020c22050440200320053602100b200604402002200636021c0b200428020c22030440200420033602100b200241e0006a24000bec0101037f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b027f0240200220016b2202410b4f0440200241106a4170712204103721032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b20032001200210300b2103200220036a41003a000020000b1d0020001040200041146a41003602002000420037020c2000200110410ba40201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a2004102f0340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b20024100360208200242003703002002412010362003200228021420036b200228020022042002280204220120046b10062000200136020420002004360200200020022802083602082003450d00200220033602140b200241206a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104220026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110430c010b20000b2201200128020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001049200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001104a200441106a24000b1300200028020820014904402000200110440b0b1600200020012802002200200128020420006b10451a0b190020001040200041146a41003602002000420037020c20000b6c01037f230041206b22032400200341186a4100360200200341106a4200370300200341086a42003703002003420037030020034100104620012002104741011046210420032802002105200441046a101b20002005101c2000410110412001200210481a200341206a24000bd30301067f230041f0006b22032400200341d8006a410210182104200341c8006a200010190240200341186a2001200141146a103f22012802042205200128020022006b41204d04402001420037020020012802082106200141003602082003200536023c20032000360238200320063602400c010b200341003602082003420037030020034120103620012802002200200128020420006b200328020022002003280204220520006b10062003200536023c200320003602382003200328020836024020012802002206450d00200120063602040b200341306a4100360200200341286a4200370300200341206a420037030020034200370318200341186a20032802482206200328024c101a20002005101a210520042003280218101c2004200341c8006a101d2004200341386a101d200428020c200441106a28020047044010000b20042802042107200428020021082003101e22012002290300200241086a290300101f200128020c200141106a28020047044010000b20082007200128020020012802041014200128020c22020440200120023602100b200541046a101b200004402003200036023c0b200604402003200636024c0b200428020c22010440200420013602100b200341f0006a24000b3201017f230041206b220324002003200237031820032001370310200341800810172000200341106a1020200341206a24000b6501017f200120028450044010080b200328020420032802006b41146dad20015a200250220620061b45044010080b20004188016a200237030020004180016a2001370300200041d8016a20031023200041b8016a2005370300200041b0016a20043703000b9e0101047f2000200147044020012802042203200128020022026b41146d22042000280208200028020022016b41146d4d0440200041046a21052004200028020420016b41146d22004b044020022002200041146c6a22002001103c1a20002003200510330f0b2005200220032001103c3602000f0b2001044020004100360208200042003702000b200020002004103d103220022003200041046a10330b0ba90602057f047e230041f0026b22052400200428020420042802006b41f40047044010080b200541a0026a20041025210620054190026a20011025210720054180026a200210262102200541f0016a200310262103200541e0016a200041d8016a10272109200541c8016a2006102522012802002208200128020420086b200541d0026a41201006200541b0026a200541d0026a10281a200128020022080440200120083602040b200928020022010440200920013602040b200328020022010440200320013602040b200228020022010440200220013602040b200728020022010440200720013602040b200628020022010440200620013602040b200541b8016a200410252106200541c8016a1029200628020022010440200620013602040b200541a8016a200410252106200541c8006a200541d0026a200541d0026a1005102a200541d0006a290300210d2005290348210b200628020022010440200620013602040b20054198016a2004102521011007427f7c200541d0026a1004200541b0026a200541d0026a10282106200128020022070440200120073602040b20054188016a200410252104200541386a102b200541406b290300210a2005290338210c200428020022010440200420013602040b200541d0026a1029410021040240034020044114460d01200541c8016a20046a2d0000200541d0026a20046a2d0000460440200441016a21040c010b0b200541286a102b2005290328200c85200541306a290300200a8584500d0010080b20004180026a22042006102c2d0000044010080b20042006102c21042005200041b0016a290300200041b8016a290300200c200a102d200441013a00002005200b2005290300220a7d220c3703702005200d200541086a290300220d7d200b200a54ad7d220b370378200541c8016a200541f0006a102e2005200d3703782005200a370370200541d0026a200541f0006a102e200541e0006a200541d0016a290300220a370300200541e8006a200541d8016a2802002204360200200541186a200a370300200541206a2004360200200520052903c801220a3703582005200a370310200541106a200c200b1021200541f0026a24000b5a01017f20004200370200200041003602080240200128020420012802006b2202450d0020002002102f2001280204200128020022026b22014101480d0020002802042002200110301a2000200028020420016a3602040b20000b7001027f20004200370200200041003602080240200128020420012802006b2202450d0020002002410575103122033602002000200220036a360208200020033602042001280204200128020022026b22014101480d0020032002200110301a2000200028020420016a3602040b20000b3e01017f2000420037020020004100360208200128020420012802006b220204402000200241146d103220012802002001280204200041046a10330b20000b5301017f20004200370000200041186a4200370000200041106a4200370000200041086a420037000003402002412046450440200020026a41003a0000200241016a21020c010b0b20002001412010301a20000b210020004200370000200041106a4100360000200041086a4200370000200010010b4501027e034020020440200442088620034238888421042002417f6a210220013100002003420886842103200141016a21010c010520002003370300200020043703080b0b0b4102017f017e230041206b220124002001200141106a200141106a1003102a200129030021022000200141086a29030037030820002002370300200141206a24000b840101037f230041106b2203240020002003410c6a2001103422042802002202450440413010372202200129000037000d2002412d6a41003a0000200241256a200141186a2900003700002002411d6a200141106a290000370000200241156a200141086a2900003700002000200328020c2004200210350b200341106a24002002412d6a0b7501017e2000200120047e200220037e7c20034220882204200142208822027e7c200342ffffffff0f832203200142ffffffff0f8322017e2205422088200220037e7c22034220887c200120047e200342ffffffff0f837c22034220887c3703082000200542ffffffff0f832003422086843703000ba00102037f027e230041106b22032400200341003602082003420037030020034120103620032802002202417f6a2104200328020420026b2102200141086a290300210520012903002106034020020440200220046a20063c0000200542388620064208888421062002417f6a2102200542088821050c010b0b200020032802002202200328020420026b10021a20020440200320023602040b200341106a24000b2001017f2000200110372202360200200020023602042000200120026a3602080bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b0900200041057410370b2301017f20002001103b22023602002000200236020420002002200141146c6a3602080b2e00200120006b220141014e044020022802002000200110301a20022002280200200141146e41146c6a3602000b0b890101027f200041046a21030240200028020422000440024003400240024020022000410d6a220410380440200028020022040d012001200036020020000f0b200420021038450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b20032001280200470440200110392001280208220128020821020b200141013a000c200241003a000c2002103a0c010b02402004450d0020042d000c0d002004410c6a21030c020b200320012802004604402001103a2001280208220128020821020b200141013a000c200241003a000c200210390b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001103721060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110301a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b0b002000410120001b10510b3a01037f034020024120470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b0900200041146c10370b2501017f200120006b220141146d210320010440200220002001103e0b2002200341146c6a0b3001017f2001200028020820002802006b41146d2200410174220220022001491b41cc99b3e600200041e6cc9933491b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210301a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b450020004100360208200042003702000240200220016b2202450d0020002002102f20024101480d0020002802042001200210301a2000200028020420026a3602040b20000b160020004100360208200042003702002000410010440b9f0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410370b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110301a0b20002002360214200020033602102000200536020c20000f0b200041001009200028020422016a10850141004100200120002802006a100a200010840120000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2f01017f2000280208200149044020011051200028020020002802041030210220002001360208200020023602000b0b2c01017f200020012002100b200028020422036a10850120012002200320002802006a100c200010840120000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031043280200210120022003417f6a3602002007104b4180104f044020072000410c6a280200417c6a104a0b200141384f047f2001104220016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110430c020b20000c010b02402007104b0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a104c0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010372105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a104d220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a104e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104f200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a105022013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a104e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104f200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a104c0c010b20042001410175410120011b20032005104e210241802010372106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104d22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104e21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003104f200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002104f052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a105022013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104e21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006104f200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071049200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b900101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003104220036a0520030b41016a21040b027f200041186a28020022030440200041086a280200200041146a280200200310430c010b20000b2203200328020020046a36020020000b2c01017f200020022001100d200028020422036a10850120022001200320002802006a100e200010840120000b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104d22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a104e2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003104f200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001103e0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274103721040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001103e0b20020b9b0101047f230041106b220124002001200036020c2000047f41e008200041086a2202411076220041e0082802006a220336020041dc0841dc08280200220420026a41076a417871220236020002400240200341107420024d044041e008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103041086a0541000b2100200141106a240020000b5b002000420037030820004200370300200042e3cdf5ecf0999a94c200370310200041106a200041206a105345044020002000290300370320200041286a200041086a2903003703000b20001007370320200041286a42003703000be00102057f017e230041d0006b22022400200241386a101e220320002903001054200328020c200341106a28020047044010000b02402003280200220020032802042205101122064504400c010b2002410036023020024200370328200241286a200610362000200520022802282200200228022c220520006b1012417f4704402002200241106a200041016a20052000417f736a10551056200229030021072001200241086a29030037030820012007370300200621040b2000450d002002200036022c0b200328020c22000440200320003602100b200241d0006a240020040b0b0020002001420010481a0b0c00200020012002411c10570b9e0102027f027e230041106b22022400200110580240024020011059450d002001280204450d0020012802002d000041c001490d010b10000b200241086a2001105a200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000107f20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000107f20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001058200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001105b2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bff0201037f200028020445044041000f0b2000105841012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020bd908020b7f047e230041f0036b22002400107e100f2201105122031010200041306a200041186a20032001105522024100105d200041306a105802400240200041306a1059450d002000280234450d0020002802302d000041c001490d010b10000b200041c0026a200041306a105a20002802c402220141094f044010000b20002802c00221030340200104402001417f6a21012003310000200b42088684210b200341016a21030c010b0b02400240200b500d0041a508105e200b510440200041e8026a22044200370300200041d8026a4100360200200042003703e002200042003703c802200042003703c002200042003703d002200041e0026a21012002105f410447044010000b200041013602d003200020023602e0032000200041d0036a3602e403200041e0036a200041c0026a1060200041306a200220002802d003105d200041306a200041d0026a22021061200020002802d00341016a3602d003200041e0036a20011060200041306a1062210320002903c802210b20002903c002210c200041d0036a2002102721012004290300210d20002903e002210e2003200c200b200041e0036a200110272202200e200d1022200228020022040440200220043602040b200128020022020440200120023602040b2003106320002802d0022201450d02200020013602d4020c020b41aa08105e200b510440200041e8026a4200370300200041e0026a4200370300200041d0026a4200370300200042003703d802200042003703c802200042003703c0022002105f410547044010000b200041013602e003200020023602302000200041e0036a360234200041306a200041c0026a1064200041306a200041cc026a22031065200041306a200041d8026a22021065200041306a200041e4026a22041064200041306a10622109200041a0036a200041c0026a1025210120004190036a20031026210320004180036a200210262102200041f0026a2004102521042009200041e0036a200110252205200041d0036a200310262206200041c0036a200210262207200041b0036a20041025220810242008280200220a04402008200a3602040b200728020022080440200720083602040b200628020022070440200620073602040b200528020022060440200520063602040b200428020022050440200420053602040b200228020022040440200220043602040b200328020022020440200320023602040b200128020022030440200120033602040b2009106320002802e40222010440200020013602e8020b20002802d80222010440200020013602dc020b20002802cc0222010440200020013602d0020b20002802c0022201450d02200020013602c4020c020b41b308105e200b520d002002105f410247044010000b200041306a20024101105d200041086a200041306a1056200041106a290300210b2000290308210c200041306a10662101200041306a2202200c370320200241286a200b370300200c200b1016200110670c010b10000b1068200041f0036a24000bcf0202067f017e230041106b220324002001280208220520024b0440200341086a200110830120012003280208200328020c10810136020c20032001108301410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410571a200341106a24000f0b2003200110830141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041081011082012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2501017f02402000280204450d0020002802002d000041c001490d002000106921010b20010b6302017f017e230041306b22022400200241186a20002802002000280204280200105d200241086a200241186a1056200229030821032001200241106a2903003703082001200337030020002802042200200028020041016a360200200241306a24000bba0402077f017e23004190016b22022400024002402000280204450d0020002802002d000041c001490d002000105f21032001280208200128020022046b41146d20034904402001200241206a2003200128020420046b41146d200141086a106a2203106b2003106c0b200241c8006a2000106d200241386a2000106e200141086a21062002418c016a2107200241186a21030340200228024c200228023c46044020022802502002280240460d030b200241206a200241c8006a106f20034100360200200241106a2204420037030020024200370308200241206a1058200241f0006a200241206a105a20022802742100024002402002280224450d00200041144b0d0020022802202d000041c001490d010b10000b20024188016a2205410036020020024180016a220842003703002002420037037820072000411420004114491b22006b2002280270200010301a200420082903003703002003200528020036020020022002290378220937035820022009370308024020012802042200200128020849044020002002290308370000200041106a2003280200360000200041086a20042903003700002001200128020441146a3602040c010b200241f8006a2001200020012802006b41146d220041016a103d20002006106a210020022802800122052002290308370000200541106a2003280200360000200541086a2004290300370000200220022802800141146a3602800120012000106b2000106c0b200241c8006a10700c000b000b10000b20024190016a24000bf80c010d7f230041e0016b2201240020001052200041306a10661a200041e8006a2203420037030020004200370360200041f0006a220242b385a9b994ddda95b67f370300200220004180016a1053450440200020002903603703800120004188016a20032903003703000b200042003703900120004198016a22034200370300200041a0016a220242ca9192e9e8a492bdf8003703002002200041b0016a105345044020002000290390013703b001200041b8016a20032903003703000b200042003702c001200041e0016a4100360200200041d8016a22054200370200200041d0016a220342e8cb80a8b3c9a8f2f600370300200041c8016a4100360200200141406b101e220220032903001054200228020c200241106a28020047044010000b0240200228020022092002280204220a10112206450d00200141003602a801200142003703a001200141a0016a200610362009200a20012802a001220320012802a401220720036b1012417f470440200141b8016a200341016a20072003417f736a105520051061200621040b2003450d00200120033602a4010b200228020c22030440200220033602100b20044504402005200041c0016a10230b200041ec016a2207420037020020004184026a220c4200370200200041f8016a220242f6f7f3c2e090bea44c370300200020073602e80120004180026a2206200c360200200141286a101e220820022903001054200828020c200841106a28020047044010000b024020082802002203200828020422041011220d450440410021020c010b410021022001410036022020014200370318200141186a200d1036200320042001280218220b200128021c2205200b6b1012417f470440024002402001200b41016a2005200b417f736a10552202280204450d0020022802002d000041c001490d0020014190016a2002106d20014180016a2002106e200141d8006a2105200141d0006a2109200141c8006a210a0340200128029401200128028401460440200128029801200128028801460d030b200141e8006a20014190016a106f2005420037030020094200370300200a420037030020014200370340200141003a00600240200128026c044020012802682d000041bf014b0d010b10000b200141e8006a1069410247044010000b200141d0016a22024200370300200141c8016a22034200370300200141c0016a22044200370300200142003703b801200141a0016a200141e8006a4100105d200141a0016a200141b8016a1071200a20042903003703002009200329030037030020052002290300370300200120012903b801370340200141a0016a200141e8006a4101105d200141a0016a1058200141a0016a105921020240024020012802a401450d002002450d0020012802a0012d000041c001490d010b10000b200141d8016a200141a0016a105a20012802dc01220241024f044010000b4100210420012802d80121030340200204402002417f6a210220032d00002104200341016a21030c010b0b2001200441ff017141004722033a00602006200141b8016a200141406b10342204280200450440413010372202200129034037000d2002412d6a20033a0000200241256a20052903003700002002411d6a2009290300370000200241156a200a290300370000200620012802b8012004200210350b20014190016a10700c000b000b10000b200d21020b200b450d002001200b36021c0b200828020c22030440200820033602100b024020020d0020002802e80121020240200028028802450d0020002802800221032000200c360280022000410036028802200028028402210420004100360284022004410036020820032802042204200320041b2104034020042203450d01200220074704402003200229000d37000d200341256a200241256a2900003700002003411d6a2002411d6a290000370000200341156a200241156a2900003700002003412d6a2002412d6a2d00003a0000024020032802082204450440410021040c010b2003200428020022054604402004410036020020042802042205450d012005107221040c010b200441003602042005450d002005107221040b2006200141406b2003410d6a10732105200620012802402005200310352002107421020c010b0b0340200328020822030d000b200721020b034020022007460d012006200141406b413010372203410d6a2002410d6a4121103010732104200620012802402004200310352002107421020c000b000b200141e0016a240020000b8910020e7f047e23004190026b22012400200141186a101e2207200041f8016a22022903001075101c200720022903001054200728020c200741106a28020047044010000b2007280204210d2007280200210e2001101e210b200141c8006a4100360200200141406b4200370300200141386a420037030020014200370330024020004188026a280200450440200141306a10760c010b20004184026a210c200141306a41001046210a200028028002210303402003200c460440200a410110461a05200141e8006a200341256a290000220f370300200141e0006a2003411d6a2900002210370300200141d8006a200341156a29000022113703002001200329000d22123703502003412d6a2d0000210520014188016a2204200f37030020014180016a22082010370300200141f8006a220920113703002001201237037041002102200a410010462106200141a8016a2004290300220f370300200141a0016a2008290300221037030020014198016a2009290300221137030020012001290370221237039001200141b8016a2011370300200141c0016a2010370300200141c8016a200f370300200141d8016a2011370300200141e0016a2010370300200141e8016a200f370300200120123703b001200120123703d00120014188026a200f37030020014180026a2010370300200141f8016a2011370300200120123703f001027f0340410120024120460d011a200141f0016a20026a2104200241016a210220042d0000450d000b41210b2104027f200641186a28020022020440200641086a280200200641146a280200200210430c010b20060b2202200228020020046a36020020062005ad42ff018342001047410110461a2003107421030c010b0b0b20012802302102200141306a410472101b200b200141f0006a107722051078200b200220052802046a20052802006b101c200b2000280288021041210320004184026a210620002802800221020340200220064704402003410210412104200141a8016a200241256a290000220f370300200141a0016a2002411d6a290000221037030020014198016a200241156a29000022113703002001200229000d221237039001200141b8016a2011370300200141c0016a2010370300200141c8016a200f370300200141d8016a2011370300200141e0016a2010370300200141e8016a200f370300200120123703b001200120123703d00120014188026a200f37030020014180026a2010370300200141f8016a2011370300200120123703f0012004200141f0016a412010452002412d6a310000420010481a2002107421020c010b0b0240200328020c200341106a280200460440200341046a2102200328020021040c010b200341046a2102100020032802002104200328020c2003280210460d0010000b200e200d200420022802001013200528020022020440200520023602040b200328020c22020440200320023602100b200728020c22020440200720023602100b200141d0016a101e2208200041d0016a22022903001075101c200820022903001054200828020c200841106a28020047044010000b2008280204210c2008280200210a200141b0016a101e210920014188026a410036020020014180026a4200370300200141f8016a4200370300200142003703f001024020002802d801200041dc016a280200460440200141f0016a10760c010b200141f0016a41001046210720002802dc01210620002802d801210320012802f80121050340200320064604402007410110461a05200141406b200341106a2800002202360200200141386a200341086a290000220f370300200120032900002210370330200141d8006a200f370300200141e0006a2002360200200141f8006a200f37030020014180016a20023602002001201037035020012010370370200141a0016a200236020020014198016a200f370300200120103703900141002102027f0340410120024114460d011a20014190016a20026a2104200241016a210220042d0000450d000b41150b2104027f200141f0016a2001280288022202450d001a200520022001280284026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2202200228020020046a360200200341146a21030c010b0b0b20012802f0012102200141f0016a410472101b200920014190016a1077220510782009200220052802046a20052802006b101c200920002802dc0120002802d8016b41146d1041210320002802dc01210620002802d8012102034020022006470440200141406b200241106a2800002204360200200141386a200241086a290000220f370300200120022900002210370330200141d8006a200f370300200141e0006a2004360200200141f8006a200f37030020014180016a2004360200200120103703502001201037037020014180026a2004360200200141f8016a200f370300200120103703f0012003200141f0016a411410451a200241146a21020c010b0b0240200328020c200341106a280200460440200341046a2102200328020021040c010b200341046a2102100020032802002104200328020c2003280210460d0010000b200a200c200420022802001013200528020022020440200520023602040b200328020c22020440200320023602100b200828020c22020440200820023602100b200041d8016a28020022020440200020023602dc010b20002802c00122020440200041c4016a20023602000b200041a0016a200041b0016a1079200041f0006a20004180016a1079200041306a1067200041106a200041206a107920014190026a24000bc60101027f230041406a22022400200241086a20002802002000280204280200105d02400240200228020c044020022802082d000041c001490d010b20024100360228200242003703200c010b200241386a200241086a105a20022802382103200241306a200241086a105a200241206a20032002280230200241086a105b6a103f1a0b2001280200044020014100360208200142003702000b200120022802203602002001200229022437020420002802042201200128020041016a360200200241406b24000b940401097f23004190016b22022400200241086a20002802002000280204280200105d02400240200228020c450d0020022802082d000041c001490d00200241086a105f21032001280208200128020022056b41057520034904402001200241206a2003200128020420056b410575200141086a107a2203107b2003107c0b200141086a2109200241e8006a200241086a106d200241d8006a200241086a106e200241386a2105200241306a21060340200228026c200228025c46044020022802702002280260460d030b200241406b200241e8006a106f2005420037030020064200370300200241286a2208420037030020024200370320200241406b200241206a10710240200128020422032001280208220449044020032002290320370000200341186a2005290300370000200341106a2006290300370000200341086a20082903003700002001200128020441206a3602040c010b200241f8006a2003200128020022076b410575220341016a220a200420076b220441047522072007200a491b41ffffff3f200441057541ffffff1f491b20032009107a210420022802800122032002290320370000200341086a2008290300370000200341106a2006290300370000200341186a20052903003700002002200341206a3602800120012004107b2004107c0b200241e8006a10700c000b000b10000b20002802042201200128020041016a36020020024190016a24000b4c0020004200370308200042003703002000429283e3a29cc496eaba7f370310200041106a200041206a105345044020002000290300370320200041286a200041086a2903003703000b20000b0e00200041106a200041206a10790b880101037f41cc08410136020041d0082802002100034020000440034041d40841d4082802002201417f6a2202360200200141014845044041cc084100360200200020024102746a22004184016a280200200041046a28020011020041cc08410136020041d00828020021000c010b0b41d408412036020041d008200028020022003602000c010b0b0b820101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000108301200128020c210003402000450d0120014100200128020822032003200010810122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4c01017f2000410036020c200041106a2003360200200104402001103b21040b2000200436020020002004200241146c6a220236020820002004200141146c6a36020c2000200236020420000b8d0101037f200120012802042000280204200028020022046b2203416c6d41146c6a2202360204200341004a044020022004200310301a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001416c6a22013602080c010b0b0b0a00200020014101107d0b0a00200020014100107d0b160020002001280204200141086a280200411c10571a0bb70102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a200141002004200210810110820120002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000bf80102047f047e230041d0006b2202240020001058200241c8006a2000105a200228024c2103024002402000280204450d00200341204b0d0020002802002d000041c001490d010b10000b200241406b22004200370300200241386a22044200370300200241306a220542003703002002420037032820022003412020034120491b22036b41c8006a2002280248200310301a200241206a20002903002206370300200241186a20042903002207370300200241106a20052903002208370300200220022903282209370308200141186a2006370000200141106a2007370000200141086a200837000020012009370000200241d0006a24000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f02402000280204220304400340024020022003410d6a1038044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b5301037f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200042001047210220012802002103200241046a101b200141206a240020030b3901017f027f200041186a28020022010440200041086a280200200041146a280200200110430c010b20000b2201200128020041016a3602000b3000200041003602082000420037020020004101102f200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004104420002802040520020b20002802006a2003200110301a2000200028020420016a3602040bd40201077f230041d0006b22022400200241186a101e220420002903001075101c200420002903001054200428020c200441106a28020047044010000b20042802042106200428020021072002101e2103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a2001290300200141086a22052903001047210020022802302108200041046a101b2003200241306a1077220010782003200820002802046a20002802006b101c02402003200129030020052903001048220128020c200141106a280200460440200141046a2103200128020021050c010b200141046a2103100020012802002105200128020c2001280210460d0010000b20072006200520032802001013200028020022030440200020033602040b200128020c22000440200120003602100b200428020c22010440200420013602100b200241d0006a24000b4c01017f2000410036020c200041106a2003360200200104402001103121040b200020043602002000200420024105746a22023602082000200420014105746a36020c2000200236020420000b870101037f200120012802042000280204200028020022046b22036b2202360204200341004a044020022004200310301a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141606a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110830120004100200428020c220120042802082202200110810122032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b3501017f230041106b220041f0880436020c41d808200028020c41076a417871220036020041dc08200036020041e0083f003602000b2f01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001080012000105b6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2701017f230041206b22022400200241086a2000200141141057107f2100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2301017f2001105b220220012802044b044010000b20002001200110800120021082010b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210096a108501200120002802006a220120022001100a0c010b0b0b3601017f2000280208200149044020011051200028020020002802041030210220002001360208200020023602000b200020013602040b0b5201004180080b4b576974686472617700476173436f6e73756d7074696f6e4c696d6974735570646174656400696e6974007769746864726177007365744761734c696d6974576974686472617752656c6179"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_WITHDRAW = "withdraw"; - - public static final String FUNC_SETGASLIMITWITHDRAWRELAY = "setGasLimitWithdrawRelay"; - - public static final WasmEvent GASCONSUMPTIONLIMITSUPDATED_EVENT = new WasmEvent("GasConsumptionLimitsUpdated", Arrays.asList(), Arrays.asList(new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent DEPOSIT_EVENT = new WasmEvent("Deposit", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent WITHDRAW_EVENT = new WasmEvent("Withdraw", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint128.class))); - ; - - protected HomeBridge(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected HomeBridge(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall withdraw(byte[] vs, byte[][] rs, byte[][] ss, byte[] message) { - final WasmFunction function = new WasmFunction(FUNC_WITHDRAW, Arrays.asList(vs,rs,ss,message), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall withdraw(byte[] vs, byte[][] rs, byte[][] ss, byte[] message, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_WITHDRAW, Arrays.asList(vs,rs,ss,message), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public List getGasConsumptionLimitsUpdatedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(GASCONSUMPTIONLIMITSUPDATED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - GasConsumptionLimitsUpdatedEventResponse typedResponse = new GasConsumptionLimitsUpdatedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable gasConsumptionLimitsUpdatedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public GasConsumptionLimitsUpdatedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(GASCONSUMPTIONLIMITSUPDATED_EVENT, log); - GasConsumptionLimitsUpdatedEventResponse typedResponse = new GasConsumptionLimitsUpdatedEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable gasConsumptionLimitsUpdatedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(GASCONSUMPTIONLIMITSUPDATED_EVENT)); - return gasConsumptionLimitsUpdatedEventObservable(filter); - } - - public RemoteCall setGasLimitWithdrawRelay(Uint128 gas) { - final WasmFunction function = new WasmFunction(FUNC_SETGASLIMITWITHDRAWRELAY, Arrays.asList(gas), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setGasLimitWithdrawRelay(Uint128 gas, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETGASLIMITWITHDRAWRELAY, Arrays.asList(gas), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public List getDepositEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(DEPOSIT_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - DepositEventResponse typedResponse = new DepositEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable depositEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public DepositEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(DEPOSIT_EVENT, log); - DepositEventResponse typedResponse = new DepositEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable depositEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(DEPOSIT_EVENT)); - return depositEventObservable(filter); - } - - public List getWithdrawEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(WITHDRAW_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - WithdrawEventResponse typedResponse = new WithdrawEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable withdrawEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public WithdrawEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(WITHDRAW_EVENT, log); - WithdrawEventResponse typedResponse = new WithdrawEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable withdrawEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(WITHDRAW_EVENT)); - return withdrawEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Uint128 requiredSignaturesParam, WasmAddress[] authoritiesParam, Uint128 estimatedGasCostOfWithdrawParam) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(requiredSignaturesParam,authoritiesParam,estimatedGasCostOfWithdrawParam)); - return deployRemoteCall(HomeBridge.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Uint128 requiredSignaturesParam, WasmAddress[] authoritiesParam, Uint128 estimatedGasCostOfWithdrawParam) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(requiredSignaturesParam,authoritiesParam,estimatedGasCostOfWithdrawParam)); - return deployRemoteCall(HomeBridge.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint128 requiredSignaturesParam, WasmAddress[] authoritiesParam, Uint128 estimatedGasCostOfWithdrawParam) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(requiredSignaturesParam,authoritiesParam,estimatedGasCostOfWithdrawParam)); - return deployRemoteCall(HomeBridge.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint128 requiredSignaturesParam, WasmAddress[] authoritiesParam, Uint128 estimatedGasCostOfWithdrawParam) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(requiredSignaturesParam,authoritiesParam,estimatedGasCostOfWithdrawParam)); - return deployRemoteCall(HomeBridge.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static HomeBridge load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new HomeBridge(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static HomeBridge load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new HomeBridge(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class GasConsumptionLimitsUpdatedEventResponse { - public Log log; - - public Uint128 arg1; - } - - public static class DepositEventResponse { - public Log log; - - public String topic; - - public Uint128 arg1; - } - - public static class WithdrawEventResponse { - public Log log; - - public String topic; - - public Uint128 arg1; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitOverload.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitOverload.java deleted file mode 100644 index 321081b7bd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitOverload.java +++ /dev/null @@ -1,92 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InitOverload extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60027f7f0060017f017f60017f0060037f7f7f017f60037f7f7f0060027f7f017f60000060047f7f7f7f017f60047f7f7f7f0060027f7e0060037e7e7f006000017f60017e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e00000342410600050002050700020101060103040201000e020102010100010c00090002000607010305030400020000030502000100020300000100030702030404060101080405017001010105030100020608017f0141d088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002d06696e766f6b6500180aa958410400104a0b2401017f230041106b2202240020022001100f1a200041186a20021010200241106a24000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101721022000200136020420002004410172360200200020023602080b2002200320011049200120026a41003a000020000bb00101037f230041206b22032400024020002802042202200028020849044020022001290200370200200241086a200141086a2802003602002001101120002000280204410c6a3602040c010b200341086a2000200220002802006b410c6d220241016a10122002200041086a1013220228020822042001290200370200200441086a200141086a2802003602002001101120022002280208410c6a360208200020021014200210150b200341206a24000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0b4c01017f2000410036020c200041106a2003360200200104402001101621040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000baa0101037f200028020421022000280200210303402002200346450440200128020441746a2204200241746a2202290200370200200441086a200241086a280200360200200210112001200128020441746a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0b09002000410c6c10170b0b002000410120001b10190b950602057f017e230041a0016b22002400104a10072201101922031008200041206a200041086a20032001101a22024100101b200041206a101c02400240200041206a101d450d002000280224450d0020002802202d000041c001490d010b10000b20004180016a200041206a101e200028028401220141094f044010000b20002802800121030340200104402001417f6a210120033100002005420886842105200341016a21030c010b0b024002402005500d00418008101f200551044020021020200041206a102110220c020b418508101f2005510440200041d8006a1023210120021024410247044010000b200041206a20024101101b200041206a20011025200041206a10212103200041206a20004180016a2001100f100e200310220c020b419008101f200551044020021020200041206a102121032000413c6a28020021022000280238210420004180016a10262201200220046b410c6dad220510271028200120051029200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310220c020b41a008101f2005520d0020021024410247044010000b200041206a20024101101b200041206a101c02400240200041206a101d450d002000280224450d0020002802202d000041c001490d010b10000b20004180016a200041206a101e200028028401220141024f044010000b4100210220002802800121030340200104402001417f6a210120032d00002102200341016a21030c010b0b200041206a10212103200041c8006a200041206a280218200241ff0171410c6c6a100f1a200041d8006a1026210120004198016a410036020020004190016a420037030020004188016a4200370300200042003703800120004180016a200041f0006a200041c8006a100f102a200028028001210220004180016a410472102b200120021028200120004180016a200041c8006a100f102c200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310220c010b10000b102d200041a0016a24000b9b0101047f230041106b220124002001200036020c2000047f41c008200041086a2202411076220041c0082802006a220336020041bc0841bc08280200220420026a41076a417871220236020002400240200341107420024d044041c008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103841086a0541000b2100200141106a240020000b0c00200020012002411c102e0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103b20012003280208200328020c103136020c20032001103b410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102e1a200341106a24000f0b20032001103b41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041031104d2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000101c200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001102f2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001024410147044010000b0b9006010a7f23004190016b2204240020004200370218200042aebed3dfedeebab3583703102000410036020820004200370200200041206a4100360200200441186a1026220620002903101029200628020c200641106a28020047044010000b200041186a21080240200628020022032006280204220510092207450d002007101721020340200120026a41003a00002007200141016a2201470d000b2003200520022001100a417f460440410021010c010b024002402004200241016a200120026a2002417f736a101a2202280204450d0020022802002d000041c001490d002002102421012000280220200028021822036b410c6d20014904402008200441f8006a2001200028021c20036b410c6d200041206a101322011014200110150b200441e8006a2002410110302101200441d8006a200241001030210520012802042102034020052802042002464100200128020822032005280208461b0d02200441406b20022003411c102e2102200441306a10232103200441f8006a20024100101b200441f8006a200310252008200441306a101020012001280204220220012802086a410020021b22023602042001280200220304402001200336020820022003103121092001027f2001280204220a4504404100210341000c010b410021034100200128020822022009490d001a200220092009417f461b2103200a0b2202ad2003ad42208684370204200141002001280200220920036b2203200320094b1b3602000c0105200141003602080c010b000b000b10000b200721010b200628020c22020440200620023602100b024020010d002000411c6a210220002802042203200028020022076b410c6d22052000280220200028021822016b410c6d4d04402005200228020020016b410c6d22064b0440200720072006410c6c6a2205200110321a20052003200210330c020b2008200720032001103210340c010b200104402008103520004100360220200042003702180b20002008200510122205101622013602182000200136021c200020012005410c6c6a36022020072003200210330b20044190016a240020000bf804010a7f230041f0006b22012400200141186a10262204200029031010271028200420002903101029200428020c200441106a28020047044010000b200428020421092004280200210a200110262103200141e8006a4100360200200141e0006a4200370300200141d8006a420037030020014200370350027f20002802182000411c6a2802004604402001410136025041010c010b200141d0006a41001036200028021c210520002802182102037f2002200546047f200141d0006a41011036200128025005200141d0006a41001036200141d0006a200141406b2002100f102a200141d0006a410110362002410c6a21020c010b0b0b2106200141d0006a410472102b41011017220241fe013a0000200328020c200341106a28020047044010000b200241016a21072003280204220541016a220820032802084b047f20032008103720032802040520050b20032802006a2002410110381a2003200328020441016a3602042003200620026b20076a10282003200028021c20002802186b410c6d10392107200141d0006a4104722108200028021c210620002802182102034020022006470440200741011039210520014100360268200142003703602001420037035820014200370350200141d0006a200141406b2002100f102a2005200128025010282005200141306a2002100f102c2008102b2002410c6a21020c010b0b0240200328020c2003280210460440200328020021020c010b100020032802002102200328020c2003280210460d0010000b200a200920022003280204100b200328020c22020440200320023602100b200428020c22020440200420023602100b200041186a103a2000103a200141f0006a24000b190020004200370200200041086a41003602002000101120000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103b200128020c210003402000450d01200141002001280208220320032000103122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10231a0c010b200241186a2000101e2000102f21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101721032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1011200241206a24000b29002000410036020820004200370200200041001037200041146a41003602002000420037020c20000b990102037f017e230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703004101210320004280015a0440034020002004845045044020044238862000420888842100200241016a2102200442088821040c010b0b200241384f047f2002103c20026a0520020b41016a21030b200120033602002001410472102b200141206a240020030b1300200028020820014904402000200110370b0b2801017f2000420020011005200028020422026a103d42002001200220002802006a10062000103e0b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103c20026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001103f21000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001040200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011041200441106a24000b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a103d20042001200220002802006a10042000103e0b880101037f41ac08410136020041b0082802002100034020000440034041b40841b4082802002201417f6a2202360200200141014845044041ac084100360200200020024102746a22004184016a280200200041046a28020011020041ac08410136020041b00828020021000c010b0b41b408412036020041b008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104b20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104b20024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101c41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001103b20004100200428020c2201200428020822022001103122032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a200020014114102e104b2100200241206a240020000bd00201077f200120006b2108410021010340200120026a2105200120084645044002402005200020016a2203460d00200341046a28020020032d00002204410176200441017122071b2104200341016a2106200341086a2802002109410a21032009200620071b210720052d0000410171220604402005280200417e71417f6a21030b200420034d0440027f20060440200541086a2802000c010b200541016a0b21032004044020032007200410480b200320046a41003a000020052d00004101710440200541046a20043602000c020b200520044101743a00000c010b416f2106200341e6ffffff074d0440410b20034101742203200420042003491b220341106a4170712003410b491b21060b200610172203200720041049200541046a200436020020052006410172360200200541086a2003360200200320046a41003a00000b2001410c6a21010c010b0b20050b2e000340200020014645044020022802002000100f1a20022002280200410c6a3602002000410c6a21000c010b0b0b0900200020013602040b0b002000200028020010340bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203103f280200210120022003417f6a360200200710424180104f044020072000410c6a280200417c6a10410b200141384f047f2001103c20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103f21000c010b0240200710420d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10430c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010172105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1044220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10452102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021046200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104722013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10452102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021046200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10430c010b20042001410175410120011b200320051045210241802010172106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104422013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104521032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031046200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021046052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104722013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104521062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061046200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071040200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b2f01017f2000280208200149044020011019200028020020002802041038210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410170b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110381a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a103d41004100200120002802006a10022000103e20000b0e0020002802000440200010350b0b2101017f2001102f220220012802044b044010000b200020012001104c2002104d0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b3601017f2000280208200149044020011019200028020020002802041038210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a103d200120002802006a22012002200110020c010b0b0b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104422023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10452103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031046200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110480b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101721040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110480b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210381a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b10002002044020002001200210381a0b0b3501017f230041106b220041d0880436020c41b808200028020c41076a417871220036020041bc08200036020041c0083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000104c2000102f6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b3101004180080b2a696e6974006164645f766563746f72006765745f766563746f725f73697a65006765745f766563746f72"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ADD_VECTOR = "add_vector"; - - public static final String FUNC_GET_VECTOR_SIZE = "get_vector_size"; - - public static final String FUNC_GET_VECTOR = "get_vector"; - - protected InitOverload(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InitOverload(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InitOverload.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InitOverload.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InitOverload.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InitOverload.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall add_vector(String one_name) { - final WasmFunction function = new WasmFunction(FUNC_ADD_VECTOR, Arrays.asList(one_name), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_vector(String one_name, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_VECTOR, Arrays.asList(one_name), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_vector_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTOR_SIZE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall get_vector(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTOR, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public static InitOverload load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InitOverload(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InitOverload load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InitOverload(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitOverloadWithString.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitOverloadWithString.java deleted file mode 100644 index f712af9c66..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitOverloadWithString.java +++ /dev/null @@ -1,113 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int8; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InitOverloadWithString extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001661160027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60000060037f7f7f017f60047f7f7f7f0060047f7f7f7f017f60087f7f7f7f7f7f7f7f0060027f7e0060037f7e7e0060037e7e7f006000017f60037f7e7e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e000003373605000004030201030904060004050106030200100002010202010b02000e01000100020508010a0001000006010004000203050101070405017001030305030100020608017f0141f088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003006696e766f6b65001a0908010041010b020e180acc45360400103f0b0b00200041186a2001100f0bd80101047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d00002205410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b210120020440200120042002103e0b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b20002001200220016b027f2003044020002802040c010b20054101760b2203410020032002200410150b0ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101321022000200136020420002004410172360200200020023602080b2002200320011014200120026a41003a000020000bef0201047f20004200370200200041086a410036020020001012200141206a280200200141196a20012d0018220341017122051b21060240200228020420022d0000220441017620044101711b22042001411c6a280200200341017620051b22016a2203410a4d0440200020014101743a0000200041016a21030c010b200341106a4170712205101321032000200136020420002005410172360200200020033602080b2003200620011014200120036a41003a00002002280208200241016a20022d00004101711b21030240027f20002d0000220241017122050440200028020421022000280200417e71417f6a0c010b20024101762102410a0b220120026b20044f04402004450d012000280208200041016a20051b220120026a200320041014200220046a2102024020002d00004101710440200020023602040c010b200020024101743a00000b200120026a41003a00000f0b20002001200220046a20016b2002200241002004200310150b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b0b002000410120001b101b0b10002002044020002001200210381a0b0bc30101027f027f20002d0000410171044020002802080c010b200041016a0b2109416f2108200141e6ffffff074d0440410b20014101742208200120026a220120012008491b220141106a4170712001410b491b21080b2008101321012004044020012009200410140b20060440200120046a2007200610140b200320056b220320046b22070440200120046a20066a200420096a20056a200710140b200020013602082000200320066a220436020420002008410172360200200120046a41003a00000b810201087f4101210302402001280208200141016a20012d0000220741017122051b2000280208200041016a20002d0000220841017122061b2000280204200841017620061b22022001280204200741017620051b220420022004491b101722092004200249411f7420091b4100480d0041ff01210320002802042008410176220220061b22042001280204200741017620051b470d002001280208200141016a20051b21012006450440200041016a210003402002450440410021030c030b20002d000020012d0000470d02200141016a2101200041016a21002002417f6a21020c000b000b417f410020002802082001200410171b21030b20034118744118750b4601037f02402002450d0003402002450d0120002d0000220420012d00002205460440200141016a2101200041016a21002002417f6a21020c010b0b200420056b21030b20030b7b01017f027f20002d0018220141017104402000411c6a2802002101200041206a2802000c010b20014101762101200041196a0b210002402001450d00200020016a417f6a21010340200020014f0d0120002d00002102200020012d00003a0000200120023a00002001417f6a2101200041016a21000c000b000b0b9503010b7f027f20002d0018220241017104402000411c6a2802002102200041206a2802000c010b20024101762102200041196a0b2105027f4100200128020420012d00002200410176200041017122001b2204450d001a200220056a21060240024020022004480d00410120046b21092001280208200141016a20001b220a2d0000220741818284086c210b200521030340200620036b22012004480d01200120096a2208450d01410021000240024003400240200020036a21012000200846220c0d002001410371450d0020012d00002007460d02200041016a21000c010b0b41002102200c0d010b200820006b2102200020036a22012d00002007460d00200020036a2101034020024104490d012001280200200b732200417f73200041fffdfb776a71418081828478710d012002417c6a2102200141046a21010c000b000b03402002450d02200720012d00004704402002417f6a2102200141016a21010c010b0b2001200a20041017450d02200141016a21030c000b000b200621010b417f200120056b20012006461b0b4118744118750b850702057f017e23004190016b22002400103f10072201101b22021008200041e8006a200041086a20022001101c22034100101d200041e8006a101e02400240200028026c450d00200041e8006a101e0240200028026822022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028026c41014d04401000200028026821020b20022d00010d010c020b200441bf014b0d01200028026c200141ff017141ca7e6a22014d04401000200028026821020b200120026a2d0000450d010b200028026c450d0020022d000041c001490d010b10000b200041386a200041e8006a101f200028023c220141094f044010000b200028023821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008102020055104402003410110210c020b4185081020200551044020031022200041e8006a10232101200041386a20004180016a10101024200110250c020b4190081020200551044020031022200041e8006a1023210320004184016a280200210420002d0080012101200041206a10262102200041d0006a4100360200200041c8006a4200370300200041406b420037030020004200370338200041386a2004200141017620014101711b41ff0171ad22054200102720002802382101200041386a4104721028200220011029200220054200102a220128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310250c020b419e0810202005510440200041d8006a102b21012003200041d8006a102c200041e8006a10232102200041386a200041e8006a200041206a200110101011200041386a1024200210250c020b41ac0810202005510440200041386a102b2101200041c4006a102b21022003102d410347044010000b20004101360220200020033602682000200041206a36026c200041e8006a2001102e200041e8006a2002102e200041e8006a102321032000200041206a20011010200041d8006a2002101010163a0067200041e7006a102f200310250c020b41bb08102020055104402003410210210c020b41ca0810202005520d00200041206a102b21012003200041206a102c200041e8006a102321022000200041e8006a200041386a2001101010193a0058200041d8006a102f200210250c010b10000b103020004190016a24000b9b0101047f230041106b220124002001200036020c2000047f41ec08200041086a2202411076220041ec082802006a220336020041e80841e808280200220420026a41076a417871220236020002400240200341107420024d044041ec08200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103841086a0541000b2100200141106a240020000b0c00200020012002411c10310bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103a20012003280208200328020c103b36020c20032001103a410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410311a200341106a24000f0b20032001103a41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103b10422001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110322204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b4801027f230041d0006b22022400200241306a102b21032000200241306a102c200241086a10232100200241086a200241406b20031010200111000020001025200241d0006a24000b0e002000102d410147044010000b0bdc0101097f230041306b220524002000102b210720004295cf95d0e0dbf488997f370310200041186a102b2106200541186a1026220220002903101033200228020c200241106a28020047044010000b02400240200228020022082002280204220910092204450d002004101321030340200120036a41003a00002004200141016a2201470d000b2008200920032001100a417f460d002005200341016a200120036a2003417f736a101c200610340c010b410021040b200228020c22010440200220013602100b200445044020062007100f0b200541306a240020000b6001027f230041306b22022400200241186a102622012000103510292001200241086a200010101036200128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b200241306a24000b810301097f230041d0006b22022400200241186a10262103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a20002903104200102720022802302101200241306a4104721028200320011029200320002903101033200328020c200341106a28020047044010000b2003280204210420032802002105200241306a10262101200041186a22061035210741011013220041fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009103720012802040520080b20012802006a2000410110381a2001200128020441016a3602042001200041016a200720006b6a10292001200241086a2006101010360240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b2005200420002001280204100b200128020c22000440200120003602100b200328020c22010440200320013602100b200241d0006a24000b29002000410036020820004200370200200041001037200041146a41003602002000420037020c20000ba40101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103920036a0520030b41016a21040b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020046a3602000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b1300200028020820014904402000200110370b0b2a01017f2000200220011005200028020422036a103c20022001200320002802006a10062000103d20000b190020004200370200200041086a41003602002000101220000b3401017f230041206b220224002000102d410247044010000b200241086a20004101101d200241086a20011034200241206a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103a200128020c210003402000450d01200141002001280208220320032000103b22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4301017f230041206b22022400200241086a20002802002000280204280200101d200241086a2001103420002802042200200028020041016a360200200241206a24000bd60102037f027e230041406a22012400200141086a10262102200141386a4100360200200141306a4200370300200141286a420037030020014200370320200141206a200030000022044201862004423f8722058520054201862004423f8884200585102720012802202103200141206a41047210282002200310292002200030000022044201862004423f8722058520054201862004423f8884200585102a220028020c200041106a28020047044010000b20002802002000280204100c200028020c22020440200020023602100b200141406b24000b880101037f41d808410136020041dc082802002100034020000440034041e00841e0082802002201417f6a2202360200200141014845044041d8084100360200200020024102746a22004184016a280200200041046a28020011020041d808410136020041dc0828020021000c010b0b41e008412036020041dc08200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104020024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104020024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101e41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0b00200020014200102a1a0bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a102b1a0c010b200241186a2000101f2000103221030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101321032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1012200241206a24000bb80101047f230041306b22012400200141286a4100360200200141206a4200370300200141186a42003703002001420037031041012103024002400240200120001010220028020420002d00002202410176200241017122041b220241014d0440200241016b0d032000280208200041016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103920026a41016a21030b20012003360210200141106a4104721028200141306a240020030b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a103c20042001200220002802006a10042000103d0b2f01017f200028020820014904402001101b200028020020002802041038210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b2101017f20011032220220012802044b044010000b2000200120011041200210420b2701017f230041206b22022400200241086a200020014114103110402100200241206a240020000b3601017f200028020820014904402001101b200028020020002802041038210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a103c200120002802006a22012002200110020c010b0b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210381a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041f0880436020c41e408200028020c41076a417871220036020041e808200036020041ec083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001041200010326a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b5c01004180080b55696e6974006765745f737472696e6700737472696e675f6c656e67746800737472696e675f73706c69636500737472696e675f636f6d7061726500737472696e675f7265766572736500737472696e675f66696e64"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_STRING = "get_string"; - - public static final String FUNC_STRING_LENGTH = "string_length"; - - public static final String FUNC_STRING_SPLICE = "string_splice"; - - public static final String FUNC_STRING_COMPARE = "string_compare"; - - public static final String FUNC_STRING_REVERSE = "string_reverse"; - - public static final String FUNC_STRING_FIND = "string_find"; - - protected InitOverloadWithString(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InitOverloadWithString(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, String initStr) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(initStr)); - return deployRemoteCall(InitOverloadWithString.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, String initStr) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(initStr)); - return deployRemoteCall(InitOverloadWithString.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, String initStr) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(initStr)); - return deployRemoteCall(InitOverloadWithString.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, String initStr) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(initStr)); - return deployRemoteCall(InitOverloadWithString.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall get_string() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall string_length() { - final WasmFunction function = new WasmFunction(FUNC_STRING_LENGTH, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall string_splice(String spliceStr) { - final WasmFunction function = new WasmFunction(FUNC_STRING_SPLICE, Arrays.asList(spliceStr), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall string_compare(String strone, String strtwo) { - final WasmFunction function = new WasmFunction(FUNC_STRING_COMPARE, Arrays.asList(strone,strtwo), Int8.class); - return executeRemoteCall(function, Int8.class); - } - - public RemoteCall string_reverse(String reverseStr) { - final WasmFunction function = new WasmFunction(FUNC_STRING_REVERSE, Arrays.asList(reverseStr), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall string_reverse(String reverseStr, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_STRING_REVERSE, Arrays.asList(reverseStr), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall string_find(String findStr) { - final WasmFunction function = new WasmFunction(FUNC_STRING_FIND, Arrays.asList(findStr), Int8.class); - return executeRemoteCall(function, Int8.class); - } - - public static InitOverloadWithString load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InitOverloadWithString(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InitOverloadWithString load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InitOverloadWithString(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithArrayParams.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithArrayParams.java deleted file mode 100644 index 33bcf7aca3..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithArrayParams.java +++ /dev/null @@ -1,98 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InitWithArrayParams extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f017f60017f0060027f7f017f60000060037f7f7f0060037f7f7f017f60047f7f7f7f017f60047f7f7f7f0060027f7e0060037e7e7f006000017f60027f7e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000403656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000033e3d0400000303030501050401060502000e000201010100000209020c010100040701010100090000010600020600000201000100060702060401010803000405017001030305030100020608017f0141e088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002b06696e766f6b6500160908010041010b020e0e0afb523d040010440b0c0020004180016a2001100f0bba0201067f0340200541f80046450440024020002001460d00200120056a220341046a28020020032d00002204410176200441017122071b2104410a2102200341086a280200200341016a20071b2107200020056a22032d0000410171220604402003280200417e71417f6a21020b200420024d0440027f20060440200341086a2802000c010b200341016a0b21022004044020022007200410130b200220046a41003a000020032d00004101710440200341046a20043602000c020b200320044101743a00000c010b416f2106200241e6ffffff074d0440410b20024101742202200420042002491b220241106a4170712002410b491b21060b200610142202200720041015200341046a200436020020032006410172360200200341086a2002360200200220046a41003a00000b2005410c6a21050c010b0b0b2301017f0340200020026a200120026a10121a2002410c6a220241f800470d000b20000b830201067f2001280208200141016a20012d0000220241017122031b21052001280204200241017620031b2104200041f8016a210720004180016a21030340024020032007460440410021060c010b0240200328020420032d000022004101762201200041017122001b2004470d002000450440200341016a2100200521020340200145044041010f0b20002d000020022d0000470d02200241016a2102200041016a21002001417f6a21010c000b000b410121062004450d0120032802082100200421012005210203402001450d0220002d000020022d0000470d01200241016a2102200041016a21002001417f6a21010c000b000b2003410c6a21030c010b0b20060ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101421022000200136020420002004410172360200200020023602080b2002200320011015200120026a41003a000020000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210351a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b0b002000410120001b10170b10002002044020002001200210351a0b0be90602057f017e230041c0036b2200240010441007220110172202100820004190016a200020022001101822034100101920004190016a101a02400240200028029401450d0020004190016a101a024020002802900122022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d044020002802940141014d0440100020002802900121020b20022d00010d010c020b200441bf014b0d01200028029401200141ff017141ca7e6a22014d0440100020002802900121020b200120026a2d0000450d010b200028029401450d0020022d000041c001490d010b10000b200041186a20004190016a101b200028021c220141094f044010000b200028021821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008101c200551044020034101101d0c020b418508101c200551044020034102101d0c020b418f08101c20055104402003101e20004190016a101f2103200041186a20004190026a10102102200041a8036a10202201200210211022200120021023200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310240c020b419908101c20055104402003101e20004190016a101f2102200041a8036a10202101200041306a4100360200200041286a4200370300200041206a420037030020004200370318200041186a420a102520002802182103200041186a41047210262001200310222001420a1027220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210240c020b41a808101c2005520d0020004188036a1028210120031029410247044010000b20004190016a20034101101920004190016a2001102a20004190016a101f210220004190016a20004198036a2001101210112103200041a8036a10202101200041306a4100360200200041286a4200370300200041206a420037030020004200370318200041186a2003ad2205102520002802182103200041186a4104721026200120031022200120051027220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210240c010b10000b102b200041c0036a24000b9b0101047f230041106b220124002001200036020c2000047f41d808200041086a2202411076220041d8082802006a220336020041d40841d408280200220420026a41076a417871220236020002400240200341107420024d044041d808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103541086a0541000b2100200141106a240020000b0c00200020012002411c102c0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104920012003280208200328020c104836020c200320011049410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102c1a200341106a24000f0b20032001104941002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104810472001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001102d2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b6a01027f230041f0036b2202240020024180026a102e1a20024180026a102f210320001029410247044010000b200241086a200041011019200241086a20031030200241086a101f2100200241086a200241f8026a20031010200111000020001024200241f0036a24000b0e0020001029410147044010000b0be30101097f230041306b220424002000102e2203102f2107200342f5b0cf8a84eee2a7a77f37037820034180016a102f2106200441186a1020220220032903781031200228020c200241106a28020047044010000b0240200228020022082002280204220910092205450d002005101421000340200020016a41003a00002005200141016a2201470d000b2008200920002001100a417f460440410021010c010b2004200041016a200020016a2000417f736a101820061030200521010b200228020c22000440200220003602100b200145044020062007100f0b200441306a240020030b29002000410036020820004200370200200041001032200041146a41003602002000420037020c20000bab0201067f230041306b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200141001033200141206a41017221050340200341f80046450440200141206a200020036a10121a41012104024002400240200128022420012d00202202410176200241017122061b220241014d0440200241016b0d032001280228200520061b2c0000417f4c0d010c030b200241374b0d010b200241016a21040c010b2002103420026a41016a21040b027f200120012802182202450d001a2001280208200220012802146a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2202200228020020046a3602002003410c6a21030c010b0b2001410110332001280200210320014104721026200141306a240020030b1300200028020820014904402000200110320b0bf10201077f230041106b22062400200028020421040240200041106a2802002202200041146a280200220349044020022004ad422086420a843702002000200028021041086a3602100c010b027f41002002200028020c22056b410375220741016a2202200320056b2203410275220520052002491b41ffffffff01200341037541ffffffff00491b2205450d001a200541037410140b2102200220074103746a22032004ad422086420a8437020020032000280210200028020c22086b22046b2107200220054103746a2102200341086a2103200441014e044020072008200410351a0b20002002360214200020033602102000200736020c0b20064101722107410021040340200441f800460440200641106a2400052006200120046a10121a20002006280208200720062d0000220241017122031b22052006280204200241017620031b22021003200028020422036a103620052002200320002802006a1004200010372004410c6a21040c010b0b0bf60201097f230041406a22022400200241086a10202103200241386a4100360200200241306a4200370300200241286a420037030020024200370320200241206a2000290378102520022802202101200241206a4104721026200320011022200320002903781031200328020c200341106a28020047044010000b2003280204210420032802002105200241206a1020210120004180016a22061021210741011014220041fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009103220012802040520080b20012802006a2000410110351a2001200128020441016a3602042001200041016a200720006b6a10222001200610230240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b2005200420002001280204100b200128020c22000440200120003602100b200328020c22010440200320013602100b200241406b24000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002103420026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002103821000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001039200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103a200441106a24000b2a01017f2000420020011005200028020422026a103642002001200220002802006a10062000103720000b190020004200370200200041086a41003602002000103b20000b2501017f02402000280204450d0020002802002d000041c001490d002000103c21010b20010ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10281a0c010b200241186a2000101b2000102d21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101421032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a103d200241206a24000b880101037f41c408410136020041c8082802002100034020000440034041cc0841cc082802002201417f6a2202360200200141014845044041c4084100360200200020024102746a22004184016a280200200041046a28020011020041c408410136020041c80828020021000c010b0b41cc08412036020041c808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104520024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104520024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101a41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020bc90201037f200041003a0000200041f8006a2202417f6a41003a0000200041003a0002200041003a00012002417d6a41003a00002002417e6a41003a0000200041003a00032002417c6a41003a00002000410020006b41037122016a22024100360200200241f80020016b417c7122016a2203417c6a4100360200024020014109490d002002410036020820024100360204200341786a4100360200200341746a410036020020014119490d002002410036021820024100360214200241003602102002410036020c200341706a41003602002003416c6a4100360200200341686a4100360200200341646a41003602002001200241047141187222016b2103200120026a2101034020034120490d0120014200370300200141186a4200370300200141106a4200370300200141086a4200370300200141206a2101200341606a21030c000b000b20000b2c01037f200041f8006a21022000210103402001102821032001410c6a21012003410c6a2002470d000b20000b7a01037f230041306b2202240002402000280204044020002802002d000041bf014b0d010b10000b2000103c410a47044010000b03402003410a460440200241306a240005200241206a10282104200241086a200020031019200241086a2004102a20012004103d2001410c6a2101200341016a21030c010b0b0b09002000200110271a0b2f01017f2000280208200149044020011017200028020020002802041035210220002001360208200020023602000b0bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031038280200210120022003417f6a3602002007103e4180104f044020072000410c6a280200417c6a103a0b200141384f047f2001103420016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103821000c010b02402007103e0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103f0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010142105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1040220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10412102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021042200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104322013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10412102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021042200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103f0c010b20042001410175410120011b200320051041210241802010142106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104022013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104121032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031042200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021042052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104322013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104121062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061042200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071039200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b1e01017f03402000044020004108762100200141016a21010c010b0b20010bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3601017f2000280208200149044020011017200028020020002802041035210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1036200120002802006a22012002200110020c010b0b0b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001049200128020c210003402000450d01200141002001280208220320032000104822046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a2802003602002001103b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104022023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10412103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031042200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110130b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101421040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110130b20020b3501017f230041106b220041e0880436020c41d008200028020c41076a417871220036020041d408200036020041d8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010462000102d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114102c10452100200241206a240020000b2101017f2001102d220220012802044b044010000b2000200120011046200210470b0b4801004180080b41696e6974007365745f6172726179006765745f6172726179006765745f61727261795f73697a65006765745f61727261795f636f6e7461696e5f656c656d656e74"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SET_ARRAY = "set_array"; - - public static final String FUNC_GET_ARRAY_CONTAIN_ELEMENT = "get_array_contain_element"; - - public static final String FUNC_GET_ARRAY = "get_array"; - - public static final String FUNC_GET_ARRAY_SIZE = "get_array_size"; - - protected InitWithArrayParams(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InitWithArrayParams(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall set_array(String[] inArray) { - final WasmFunction function = new WasmFunction(FUNC_SET_ARRAY, Arrays.asList(inArray, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_array(String[] inArray, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_ARRAY, Arrays.asList(inArray, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_array_contain_element(String value) { - final WasmFunction function = new WasmFunction(FUNC_GET_ARRAY_CONTAIN_ELEMENT, Arrays.asList(value), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, String[] inArray) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inArray, Void.class)); - return deployRemoteCall(InitWithArrayParams.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, String[] inArray) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inArray, Void.class)); - return deployRemoteCall(InitWithArrayParams.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, String[] inArray) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inArray, Void.class)); - return deployRemoteCall(InitWithArrayParams.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, String[] inArray) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inArray, Void.class)); - return deployRemoteCall(InitWithArrayParams.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall get_array() { - final WasmFunction function = new WasmFunction(FUNC_GET_ARRAY, Arrays.asList(), String[].class); - return executeRemoteCall(function, String[].class); - } - - public RemoteCall get_array_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_ARRAY_SIZE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public static InitWithArrayParams load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InitWithArrayParams(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InitWithArrayParams load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InitWithArrayParams(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithListParams.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithListParams.java deleted file mode 100644 index a14d3d012e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithListParams.java +++ /dev/null @@ -1,221 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InitWithListParams extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001611160027f7f0060017f0060017f017f60027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f0060047f7f7f7f017f60027f7e0060057f7f7f7f7f0060037e7e7f006000017f60027f7e017f60017e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e0000035f5e0600000300030000000300010100030a010101050007020404060205040100100001020202000001020001020000000009010d060802000900000003000e020000030000000101000200000205000000010102000508010504050602020704050170010c0c05030100020608017f0141f089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974004006696e766f6b6500260911010041010b0b0e0e131517181a1d1e1f210a85725e040010670b0b00200041186a2001100f0b810301077f20002001470440200041046a2102200141046a21050340024020022802002102200120052802002205460d0020002002460d00024020022005460d002005410c6a28020020052d00082204410176200441017122071b2104410a2103200541106a280200200541096a20071b2107200241086a22062d0000410171220804402006280200417e71417f6a21030b200420034d0440027f20080440200241106a2802000c010b200641016a0b21032004044020032007200410240b200320046a41003a000020062d000041017104402002410c6a20043602000c020b200620044101743a00000c010b416f2106200341e6ffffff074d0440410b20034101742203200420042003491b220341106a4170712003410b491b21060b2006102322032007200410252002410c6a200436020020022006410172360208200241106a2003360200200320046a41003a00000b200241046a2102200541046a21050c010b0b20002002460440200020002005200110220f0b20002002200010201a0b0b4501017f200041003602082000200036020420002000360200200141046a2102037f20022802002202200146047f2000052000200241086a1014200241046a21020c010b0b0bc80201057f024020002001460d00200041046a2102200141046a21030340200228020021020240027f4101200328020022032001460d001a20002002470d0141000b210402402000200246044020040d044114102322054100360200200541086a200341086a10101a20052104410121060340200120032802042203460d0241141023220241086a200341086a10101a2002200436020020042002360204200641016a2106200221040c000b000b200228020022032000280200220128020436020420012802042003360200034020002002460d0420002000280208417f6a360208200241086a210320022802042102200310190c000b000b2000280200220220053602042005200236020020002004360200200420003602042000200028020820066a3602080c020b200241086a200341086a100f200241046a2102200341046a21030c000b000b0b840101037f200041003602082000200036020420002000360200200141046a2102037f20022802002203200146047f2000054114102322024100360200200241086a200341086a10101a20022000360204200028020021042000200236020020022004360200200420023602042000200028020841016a360208200341046a21020c010b0b0b0b00200041186a200110140b4901017f4114102322024100360200200241086a200110161a20022000360204200028020021012000200236020020022001360200200120023602042000200028020841016a3602080b0f002000200128021841086a10161a0ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102321022000200136020420002004410172360200200020023602080b2002200320011025200120026a41003a000020000b120020002001411c6a28020041086a10161a0b0900200041186a10190b4d01037f02402000280208450d00200028020422012802002202200028020022032802043602042000410036020820032802042002360200034020002001460d01200128020421010c000b000b0ba80101037f230041106b2202240020024100360208200041186a21042000411c6a280200210320022002360204200220023602000340024020032004470440200341086a2001101b0440200321000340200420002802042200460d03200041086a2001101b0d000b20022002200420032000101c200028020421030c030b200328020421030c020b20021019200241106a24000f0b20022002200420032004101c200021030c000b000bc70101057f0240200028020420002d000022024101762203200241017122061b2202200128020420012d00002204410176200441017122041b470d002001280208200141016a20041b210102402006450440200041016a210203402003450d0220022d000020012d0000470d03200141016a2101200241016a21022003417f6a21030c000b000b2002450d002000280208210303402002450d0120032d000020012d0000470d02200141016a2101200341016a21032002417f6a21020c000b000b410121050b20050b930101027f200320044704402004280200210520002002470440410121062003210403402004200546450440200641016a2106200428020421040c010b0b2002200228020820066b3602082000200028020820066a3602080b200328020022042005280204360204200528020420043602002003200128020022043602002004200336020420012005360200200520013602040b0b3401027f2000280218220128020022022001280204360204200041206a22002000280200417f6a360200200128020420023602000b3701027f2000411c6a280200220128020022022001280204360204200041206a22002000280200417f6a360200200128020420023602000b5e01037f200041186a21022000411c6a2802002101034020012002470440200141086a21032001210003402000280204220020024704402003200041086a101b0d010b0b200128020422012000460d01200220012000102021010c010b0b0b4f01027f024020012002460d00200128020022032002280200220428020436020420042802042003360200034020012002460d0120002000280208417f6a360208200128020421010c000b000b20020b1400200041186a220020002001280204200110220b960101047f200220034704404114102322064100360200200641086a200241086a10161a2006210441012107034020032002280204220247044041141023220541086a200241086a10161a2005200436020020042005360204200741016a2107200521040c010b0b2001280200220520063602042006200536020020012004360200200420013602042000200028020820076a3602080b0b0b002000410120001b10270b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210661a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b10002002044020002001200210661a0b0ba90802057f017e230041a0016b22002400106710072201102722021008200041186a2000200220011028220341001029200041186a102a02400240200028021c450d00200041186a102a0240200028021822022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028021c41014d04401000200028021821020b20022d00010d010c020b200441bf014b0d01200028021c200141ff017141ca7e6a22014d04401000200028021821020b200120026a2d0000450d010b200028021c450d0020022d000041c001490d010b10000b20004180016a200041186a102b200028028401220141094f044010000b20002802800121020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008102c200551044020034101102d0c020b418508102c200551044020034102102d0c020b418e08102c20055104402003102e200041e8006a200041186a102f220341186a1010210220004180016a10302201200210311032200120021033200128020c200141106a28020047044010000b20012802002001280204100c200128020c22040440200120043602100b20021019200310340c020b419708102c2005510440200041003602702000200041e8006a36026c2000200041e8006a36026820031035410247044010000b200041186a200341011029200041186a200041e8006a1036200041186a102f220141406b20004180016a200041e8006a1012220210112002103720011034200041e8006a10370c020b41a508102c20055104402003102e200041e8006a200041186a102f220341406b1012210220004180016a10302201200210381032200120021039200128020c200141106a28020047044010000b20012802002001280204100c200128020c22040440200120043602100b20021037200310340c020b41b308102c200551044020034103103a0c020b41c408102c200551044020034104103b0c020b41da08102c200551044020034105103b0c020b41f108102c200551044020034106103c0c020b41fc08102c200551044020034107103a0c020b419009102c200551044020034108103c0c020b419e09102c200551044020034109103c0c020b41ad09102c20055104402003102e200041186a102f220241206a3100002105200041e8006a1030210120004198016a410036020020004190016a420037030020004188016a4200370300200042003703800120004180016a2005103d200028028001210320004180016a410472103e20012003103220012005103f220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210340c020b41b709102c20055104402003410a103c0c020b41c309102c2005520d002003410b102d0c010b10000b1040200041a0016a24000b9b0101047f230041106b220124002001200036020c2000047f41e409200041086a2202411076220041e4092802006a220336020041e00941e009280200220420026a41076a417871220236020002400240200341107420024d044041e409200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104106641086a0541000b2100200141106a240020000b0c00200020012002411c10410bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104d20012003280208200328020c104e36020c20032001104d410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410411a200341106a24000f0b20032001104d41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104e106a2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110422204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b7e01027f230041f0006b22022400200241003602582002200241d0006a3602542002200241d0006a36025020001035410247044010000b20022000410110292002200241d0006a10432002102f21032002200241e0006a200241d0006a1010220020011100002000101920031034200241d0006a1019200241f0006a24000b0e0020001035410147044010000b0b960401097f230041406a22012400200042ddc2c2b1ecef9ba95037031020004100360208200041206a41003602002000411c6a200041186a2202360200200020023602182000200036020420002000360200200141286a1030220320002903101044200328020c200341106a28020047044010000b0240200328020022082003280204220610092207450d002001410036022020014200370318200141186a200710452008200620012802182204200128021c220920046b100a417f4704402001200441016a20092004417f736a102820021043200721050b2004450d002001200436021c0b200328020c22040440200320043602100b200545044020022000100f0b41002104200041c8006a4100360200200041c4006a200041406b2205360200200041386a220242d5a891c5a8d19b834c370300200041306a41003602002000412c6a200041286a22073602002000200736022820052005360200200141286a1030220320022903001044200328020c200341106a28020047044010000b0240200328020022062003280204220910092208450d002001410036022020014200370318200141186a200810452006200920012802182202200128021c220620026b100a417f4704402001200241016a20062002417f736a102820051036200821040b2002450d002001200236021c0b200328020c22020440200320023602100b20044504402005200710110b200141406b240020000b29002000410036020820004200370200200041001046200041146a41003602002000420037020c20000b4f01017f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001047200128020021002001410472103e200141206a240020000b1300200028020820014904402000200110460b0b4d01027f230041106b22032400200141046a210220002001280208104821000340200228020022022001460440200341106a24000520002003200241086a10161049200241046a21020c010b0b0ba00401087f230041406a22062400200641286a10302202200041386a2201290300104a1032200220012903001044200041406b2103200228020c200241106a28020047044010000b2002280204210720022802002108200641106a1030210120031038210520012006104b2204104c2001200520042802046a20042802006b10322001200310390240200128020c200141106a280200460440200141046a2103200128020021050c010b200141046a2103100020012802002105200128020c2001280210460d0010000b2008200720052003280200100b200428020022030440200420033602040b200128020c22040440200120043602100b200228020c22010440200220013602100b200041406b1037200041286a1037200641286a103022022000290310104a1032200220002903101044200041186a2103200228020c200241106a28020047044010000b2002280204210720022802002108200641106a1030210120031031210520012006104b2204104c2001200520042802046a20042802006b10322001200310330240200128020c200141106a280200460440200141046a2103200128020021050c010b200141046a2103100020012802002105200128020c2001280210460d0010000b2008200720052003280200100b200428020022030440200420033602040b200128020c22040440200120043602100b200228020c22010440200220013602100b200041186a101920001019200641406b24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000104d200128020c210003402000450d01200141002001280208220320032000104e22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bdf0201067f230041d0006b22022400024002402000280204450d0020002802002d000041c001490d00200241406b2000104f200241306a2000105003402002280244200228023446044020022802482002280238460d030b200241186a200241406b1051200241003602102002200241086a36020c2002200241086a360208200241186a200241086a10434114102322004100360200200041106a41003602002000410c6a200041086a220336020020002003360208200228021022070440200228020c22062802002204200228020822052802043602042005280204200436020020062000280208220436020020042006360204200020073602102000200536020820052003360204200241003602100b20002001360204200128020021032001200036020020002003360200200320003602042001200128020841016a360208200241086a1019200241406b10520c000b000b10000b200241d0006a24000b5801037f02402000280208450d00200028020422012802002202200028020022032802043602042000410036020820032802042002360200034020002001460d01200141086a210220012802042101200210190c000b000b0b910101027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030002402000280208450440200110530c010b200141001054200041046a21020340200228020022022000460440200141011054052001200241086a1047200241046a21020c010b0b0b200128020021022001410472103e200141206a240020020b3801017f200141046a2102200020012802081048210003402001200228020022024704402000200241086a1033200241046a21020c010b0b0b5501027f230041f0006b22022400200241d0006a1055210320001035410247044010000b20022000410110292002200310562002102f21002002200241e0006a20031016200111000020001034200241f0006a24000bdb0101027f230041b0016b220224002000102e200241086a102f2103200241d8006a200241086a2001110000200241e8006a10302101200241a8016a4100360200200241a0016a420037030020024198016a4200370300200242003703900120024190016a20024180016a200241d8006a10161057200228029001210020024190016a410472103e200120001032200120024190016a200241d8006a10161049200128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b20031034200241b0016a24000b2b01017f230041d0006b220224002000102e2002102f21002002200111010020001034200241d0006a24000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002105820026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002105921000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000105a200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001105b200441106a24000b2a01017f2000420020011005200028020422026a105c42002001200220002802006a10062000105d20000b880101037f41d009410136020041d4092802002100034020000440034041d80941d8092802002201417f6a2202360200200141014845044041d0094100360200200020024102746a22004184016a280200200041046a28020011010041d009410136020041d40928020021000c010b0b41d809412036020041d409200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106820024f0d002003410471044010000c010b200042003702000b02402003411071450d002000106820024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000102a41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020be70101037f230041d0006b22022400024002402000280204450d0020002802002d000041c001490d00200241406b2000104f200241306a20001050200241106a210403402002280244200228023446044020022802482002280238460d030b200241186a200241406b1051200241186a200241086a105522031056411410232200410036020020002002290308370208200041106a20042802003602002003105e20002001360204200128020021032001200036020020002003360200200320003602042001200128020841016a360208200241406b10520c000b000b10000b200241d0006a24000b090020002001103f1a0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102321060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110661a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b2f01017f2000280208200149044020011027200028020020002802041066210220002001360208200020023602000b0b6001027f230041106b2203240002402001280208450440200010530c010b200041001054200141046a210203402002280200220220014604402000410110540520002003200241086a10161057200241046a21020c010b0b0b200341106a24000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410230b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110661a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a105c41004100200120002802006a10022000105d20000b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a105c20042001200220002802006a10042000105d0b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000103d200128020021022001410472103e200141206a240020020b3a01017f20004100360208200042003702002000410110232201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004104620002802040520020b20002802006a2003200110661a2000200028020420016a3602040b2101017f20011042220220012802044b044010000b20002001200110692002106a0b2701017f230041206b22022400200241086a200020014114104110682100200241206a240020000b0a0020002001410110650b0a0020002001410010650b160020002001280204200141086a280200411c10411a0bb50102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a2001410020042002104e106a20002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b3901017f027f200041186a28020022010440200041086a280200200041146a280200200110590c010b20000b2201200128020041016a3602000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031059280200210120022003417f6a3602002007105f4180104f044020072000410c6a280200417c6a105b0b200141384f047f2001105820016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002105921000c010b02402007105f0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10600c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010232105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1061220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10622102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021063200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a106422013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10622102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021063200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10600c010b20042001410175410120011b200320051062210241802010232106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a106122013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200106221032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031063200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021063052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a106422013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210106221062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061063200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007105a200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b190020004200370200200041086a41003602002000105e20000bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10551a0c010b200241186a2000102b2000104221030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102321032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a105e200241206a24000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002105820026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001105921000b2000200028020020036a3602000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b3601017f2000280208200149044020011027200028020020002802041066210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a105c200120002802006a22012002200110020c010b0b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a106122023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10622103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031063200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110240b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102321040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110240b20020be50101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104d20004100200428020c2201200428020822022001104e22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3501017f230041106b220041f0890436020c41dc09200028020c41076a417871220036020041e009200036020041e4093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001069200010426a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0bd50101004180080bcd01696e6974007365745f6c697374006765745f6c697374007365745f6c6973745f6c697374006765745f6c6973745f6c697374006164645f6c6973745f656c656d656e74006765745f6c6973745f6c6173745f656c656d656e74006765745f6c6973745f66697273745f656c656d656e74006c6973745f636c656172006c6973745f72656d6f76655f656c656d656e74006c6973745f706f705f6261636b006c6973745f706f705f66726f6e74006c6973745f73697a65006c6973745f756e69717565006c6973745f6d65726765"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ADD_LIST_ELEMENT = "add_list_element"; - - public static final String FUNC_GET_LIST_LAST_ELEMENT = "get_list_last_element"; - - public static final String FUNC_SET_LIST = "set_list"; - - public static final String FUNC_GET_LIST = "get_list"; - - public static final String FUNC_SET_LIST_LIST = "set_list_list"; - - public static final String FUNC_GET_LIST_LIST = "get_list_list"; - - public static final String FUNC_GET_LIST_FIRST_ELEMENT = "get_list_first_element"; - - public static final String FUNC_LIST_CLEAR = "list_clear"; - - public static final String FUNC_LIST_REMOVE_ELEMENT = "list_remove_element"; - - public static final String FUNC_LIST_POP_BACK = "list_pop_back"; - - public static final String FUNC_LIST_POP_FRONT = "list_pop_front"; - - public static final String FUNC_LIST_SIZE = "list_size"; - - public static final String FUNC_LIST_UNIQUE = "list_unique"; - - public static final String FUNC_LIST_MERGE = "list_merge"; - - protected InitWithListParams(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InitWithListParams(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall add_list_element(String value) { - final WasmFunction function = new WasmFunction(FUNC_ADD_LIST_ELEMENT, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_list_element(String value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_LIST_ELEMENT, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_list_last_element() { - final WasmFunction function = new WasmFunction(FUNC_GET_LIST_LAST_ELEMENT, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, List inList) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inList)); - return deployRemoteCall(InitWithListParams.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, List inList) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inList)); - return deployRemoteCall(InitWithListParams.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, List inList) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inList)); - return deployRemoteCall(InitWithListParams.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, List inList) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inList)); - return deployRemoteCall(InitWithListParams.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall set_list(List inList) { - final WasmFunction function = new WasmFunction(FUNC_SET_LIST, Arrays.asList(inList), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_list(List inList, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_LIST, Arrays.asList(inList), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_list() { - final WasmFunction function = new WasmFunction(FUNC_GET_LIST, Arrays.asList(), List.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {String.class}, - List.class, - List.class)); - return executeRemoteCall(function, List.class); - } - - public RemoteCall set_list_list(List> inlistlist) { - final WasmFunction function = new WasmFunction(FUNC_SET_LIST_LIST, Arrays.asList(inlistlist), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_list_list(List> inlistlist, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_LIST_LIST, Arrays.asList(inlistlist), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_list_list() { - final WasmFunction function = new WasmFunction(FUNC_GET_LIST_LIST, Arrays.asList(), List.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] { - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {String.class}, - List.class, - List.class)}, - List.class, - List.class)); - return executeRemoteCall(function, List.class); - } - - public RemoteCall get_list_first_element() { - final WasmFunction function = new WasmFunction(FUNC_GET_LIST_FIRST_ELEMENT, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall list_clear() { - final WasmFunction function = new WasmFunction(FUNC_LIST_CLEAR, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall list_clear(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_LIST_CLEAR, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall list_remove_element(String element) { - final WasmFunction function = new WasmFunction(FUNC_LIST_REMOVE_ELEMENT, Arrays.asList(element), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall list_remove_element(String element, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_LIST_REMOVE_ELEMENT, Arrays.asList(element), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall list_pop_back() { - final WasmFunction function = new WasmFunction(FUNC_LIST_POP_BACK, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall list_pop_back(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_LIST_POP_BACK, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall list_pop_front() { - final WasmFunction function = new WasmFunction(FUNC_LIST_POP_FRONT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall list_pop_front(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_LIST_POP_FRONT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall list_size() { - final WasmFunction function = new WasmFunction(FUNC_LIST_SIZE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall list_unique() { - final WasmFunction function = new WasmFunction(FUNC_LIST_UNIQUE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall list_unique(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_LIST_UNIQUE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall list_merge(List inList) { - final WasmFunction function = new WasmFunction(FUNC_LIST_MERGE, Arrays.asList(inList), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall list_merge(List inList, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_LIST_MERGE, Arrays.asList(inList), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static InitWithListParams load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InitWithListParams(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InitWithListParams load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InitWithListParams(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithMap.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithMap.java deleted file mode 100644 index ef88ca9e0d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithMap.java +++ /dev/null @@ -1,83 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InitWithMap extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000014e0e60027f7f0060017f017f60017f0060027f7f017f60037f7f7f017f60037f7f7f0060000060047f7f7f7f0060047f7f7f7f017f60027f7e0060037e7e7f006000017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65000c03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e0000034342060503030304010703010202020601040502000d000100010103020000020608010001000904030104010000010400000002030403010004080204050605010107000405017001030305030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002b06696e766f6b65001a0908010041010b020e0e0a935c42040010490b1000200041186a2001100f200210101a0b5201037f230041106b2203240020002003410c6a200110122204280200220245044041281016220241106a200110111a2002411c6a10131a2000200328020c2004200210140b200341106a24002002411c6a0b920201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210480b200120026a41003a000020002d000041017104402000200236020420000f0b200020024101743a000020000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b20031016220120042002104a200020023602042000200341017236020020002001360208200120026a41003a00000b20000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101621022000200136020420002004410172360200200020023602080b200220032001104a200120026a41003a000020000b890101027f200041046a2103024020002802042200044002400340024002402002200041106a220410150440200028020022040d012001200036020020000f0b200420021015450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b190020004200370200200041086a41003602002000101720000baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b20032001280200470440200110182001280208220128020821020b200141013a000c200241003a000c200210190c010b02402004450d0020042d000c0d002004410c6a21030c020b20032001280200460440200110192001280208220128020821020b200141013a000c200241003a000c200210180b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000bb20101067f02400240200128020420012d00002202410176200241017122031b2205200028020420002d00002202410176200241017122041b2206200520064922071b2202450d002000280208200041016a20041b21002001280208200141016a20031b210103402002450d0120002d0000220320012d00002204460440200141016a2101200041016a21002002417f6a21020c010b0b200320046b22020d010b417f200720062005491b21020b2002411f760b0b002000410120001b101b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040be90402057f017e230041c0016b22002400104910072201101b22021008200041206a200041086a20022001101c22034100101d200041206a101e024002402000280224450d00200041206a101e0240200028022022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028022441014d04401000200028022021020b20022d00010d010c020b200441bf014b0d012000280224200141ff017141ca7e6a22014d04401000200028022021020b200120026a2d0000450d010b2000280224450d0020022d000041c001490d010b10000b200041a0016a200041206a101f20002802a401220141094f044010000b20002802a00121020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008102020055104402003410110210c020b418508102020055104402003410210210c020b418d0810202005520d00200041c8006a1013210120031022410247044010000b200041206a20034101101d200041206a20011023200041206a10242102200041e8006a200041386a200041d8006a20011011100f10111a200041f8006a10252101200041b8016a4100360200200041b0016a4200370300200041a8016a4200370300200042003703a001200041a0016a20004190016a200041e8006a10111026210320002802a0012104200341046a10272001200410282001200041a0016a200041e8006a10111029200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b2002102a0c010b10000b102b200041c0016a24000b9b0101047f230041106b220124002001200036020c2000047f41ac08200041086a2202411076220041ac082802006a220336020041a80841a808280200220420026a41076a417871220236020002400240200341107420024d044041ac08200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104104041086a0541000b2100200141106a240020000b0c00200020012002411c102c0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104e20012003280208200328020c103336020c20032001104e410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102c1a200341106a24000f0b20032001104e41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041033104d2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001102d2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b7d01037f230041e0006b22022400200241286a10132103200241346a1013210420001022410347044010000b20024101360250200220003602002002200241d0006a36020420022003102e20022004102e2002102421002002200241d0006a20031011200241406b2004101120011105002000102a200241e0006a24000b2501017f02402000280204450d0020002802002d000041c001490d002000102f21010b20010ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10131a0c010b200241186a2000101f2000102d21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101621032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1030200241206a24000ba708010d7f230041c0016b220324002000420037020420004297a9bef8bdd0fea8413703102000411c6a220c42003702002000200041046a220a3602002000200c360218200341206a1025220720002903101031200728020c200741106a28020047044010000b200041186a210802400240200728020022042007280204220510092206450d002006101621010340200120026a41003a00002006200241016a2202470d000b2004200520012002100a417f460d000240200341086a200141016a200120026a2001417f736a101c2201280204450d0020012802002d000041c001490d00200341f8006a2001410110322102200341e8006a200141001032210d20022802042101200341c4006a210b0340200d280204200146410020022802082204200d280208461b0d03200341d0006a20012004411c102c2101200341386a10132104200b1013210902402003280254044020032802502d000041bf014b0d010b10000b2001102f410247044010000b200341b0016a1013210520034198016a20014100101d20034198016a2005102320042005103020034188016a1013210520034198016a20014101101d20034198016a20051023200920051030200820034198016a2004101222052802004504404128101622012003290338370210200141186a200341406b28020036020020041017200141246a200b41086a2802003602002001411c6a200b2902003702002009101720082003280298012005200110140b20022002280204220120022802086a410020011b22013602042002280200220404402002200436020820012004103321052002027f200228020422094504404100210441000c010b410021044100200228020822012005490d001a200120052005417f461b210420090b2201ad2004ad42208684370204200241002002280200220520046b2204200420054b1b3602000c0105200241003602080c010b000b000b10000c010b410021060b200728020c22020440200720023602100b024020060d002000280200210202402000280220450d00200028021821062000200c36021820004100360220200028021c21012000410036021c2001410036020820062802042201200620011b2101034020012206450d012002200a470440200641106a200241106a101021042006411c6a2002411c6a10101a024020062802082201450440410021010c010b2006200128020022054604402001410036020020012802042205450d012005103421010c010b200141003602042005450d002005103421010b200820034198016a20041035210420082003280298012004200610142002103621020c010b0b0340200628020822060d000b200a21020b03402002200a460d0141281016220641106a2201200241106a1037200820034198016a20011035210120082003280298012001200610142002103621020c000b000b200341c0016a240020000b29002000410036020820004200370200200041001038200041146a41003602002000420037020c20000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103920026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001103a0c010b20000b2201200128020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000103b200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103c200441106a24000b1300200028020820014904402000200110380b0b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a103d20042001200220002802006a10042000103e0bca05020a7f027e23004190016b22022400200241206a10252105200241d0006a4100360200200241c8006a4200370300200241406b420037030020024200370338410121042000290310220b4280015a04400340200b200c8450450440200c423886200b42088884210b200141016a2101200c420888210c0c010b0b200141384f047f2001103920016a0520010b41016a21040b20022004360238200241386a4104721027200520041028200520002903101031200528020c200541106a28020047044010000b2005280204210820052802002109200241086a10252103200241d0006a4100360200200241c8006a4200370300200241406b420037030020024200370338027f200041206a2802004504402002410136023841010c010b2000411c6a2104200241386a4100103f2106200241e4006a210720002802182101037f2001200446047f20064101103f1a200228023805200241d8006a200141106a103720064100103f20024180016a200241d8006a10111026200241f0006a2007101110264101103f1a2001103621010c010b0b0b2106200241386a410472102741011016220141fe013a0000200328020c200341106a28020047044010000b200141016a21072003280204220441016a220a20032802084b047f2003200a103820032802040520040b20032802006a2001410110401a2003200328020441016a3602042003200620016b20076a102820032000280220104121072000411c6a2106200028021821010340200120064704402007410210412204200241386a200141106a101110292004200241d8006a2001411c6a101110292001103621010c010b0b0240200328020c2003280210460440200328020021010c010b100020032802002101200328020c2003280210460d0010000b2009200820012003280204100b200328020c22010440200320013602100b200528020c22010440200520013602100b20024190016a24000b880101037f4198084101360200419c082802002100034020000440034041a00841a0082802002201417f6a220236020020014101484504404198084100360200200020024102746a22004184016a280200200041046a2802001102004198084101360200419c0828020021000c010b0b41a0084120360200419c08200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104b20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104b20024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101e41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b4301017f230041206b22022400200241086a20002802002000280204280200101d200241086a2001102320002802042200200028020041016a360200200241206a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000104e200128020c210003402000450d01200141002001280208220320032000103322046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a280200360200200110170b2801017f2000420020011005200028020422026a103d42002001200220002802006a10062000103e0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104e20004100200428020c2201200428020822022001103322032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a200020014114102c104b2100200241206a240020000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a1015044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b16002000200110111a2000410c6a2001410c6a10111a0b2f01017f200028020820014904402001101b200028020020002802041040210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b3601017f200028020820014904402001101b200028020020002802041040210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a103d200120002802006a22012002200110020c010b0b0bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a22022802002203103a280200210120022003417f6a360200200710424180104f044020072000410c6a280200417c6a103c0b200141384f047f2001103920016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a2802002001103a0c020b20000c010b0240200710420d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10430c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010162105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1044220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10452102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021046200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104722013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10452102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021046200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10430c010b20042001410175410120011b200320051045210241802010162106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104422013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104521032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031046200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021046052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104722013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104521062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061046200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007103b200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410160b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110401a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a103d41004100200120002802006a10022000103e20000b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104422023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10452103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031046200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110480b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101621040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110480b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210401a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041b0880436020c41a408200028020c41076a417871220036020041a808200036020041ac083f003602000b10002002044020002001200210401a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000104c2000102d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f2001102d220220012802044b044010000b200020012001104c2002104d0b0b1b01004180080b14696e6974007365745f6d6170006765745f6d6170"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SET_MAP = "set_map"; - - public static final String FUNC_GET_MAP = "get_map"; - - protected InitWithMap(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InitWithMap(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, String key, String value) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(key,value)); - return deployRemoteCall(InitWithMap.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, String key, String value) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(key,value)); - return deployRemoteCall(InitWithMap.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, String key, String value) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(key,value)); - return deployRemoteCall(InitWithMap.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, String key, String value) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(key,value)); - return deployRemoteCall(InitWithMap.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall set_map(String key, String value) { - final WasmFunction function = new WasmFunction(FUNC_SET_MAP, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_map(String key, String value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_MAP, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_map(String key) { - final WasmFunction function = new WasmFunction(FUNC_GET_MAP, Arrays.asList(key), String.class); - return executeRemoteCall(function, String.class); - } - - public static InitWithMap load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InitWithMap(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InitWithMap load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InitWithMap(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithMapParams.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithMapParams.java deleted file mode 100644 index 63f2546b42..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithMapParams.java +++ /dev/null @@ -1,194 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import java.util.Map; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InitWithMapParams extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001591060027f7f0060017f017f60017f0060027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f0060047f7f7f7f017f60027f7e0060037e7e7f006000017f60027f7e017f60017e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e000003757406000003000300030403040003010102020403030400030501070102000104020002020105040004000601050402000f0002010101000002010001000001000000030200090c0608010009000003030d0100020100000001000002010304010500000002010005080205040405060401010307000405017001040405030100020608017f0141b089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974005306696e766f6b6500360909010041010b030e0e220ae09c01740400107a0b0b00200041186a2001100f0be00201067f230041206b22042400024020002001460d00200141046a21062001280200210102402000280208450d00200028020021032000200041046a3602002000410036020820002802042102200041003602042002410036020820032802042202200320021b2102034020022203450d0120012006470440200341106a200141106a102321072003411c6a2001411c6a10231a024020032802082202450440410021020c010b2003200228020022054604402002410036020020022802042205450d012005103021020c010b200241003602042005450d002005103021020b2000200441106a200710312107200020042802102007200310262001101a21010c010b0b0340200328020822030d000b200621010b034020012006460d01200441106a2000200141106a103420002004410c6a2004280210220341106a103121022000200428020c2002200310262001101a21010c000b000b200441206a24000bd60101067f230041106b22022400200042003702042000200041046a2203360200200141046a21062001280200210103402001200646450440200141106a21050240027f027f0240024020032000280200460440200321040c010b2003102a220441106a20051019450d010b20032802004504402002200336020c2003210420030c030b2002200436020c200441046a0c010b20002002410c6a200510240b22042802000d01200228020c0b21072002200020051034200020072004200228020010260b2001101a21010c010b0b200241106a240020000bdf0201067f230041206b22042400024020002001460d00200141046a21062001280200210102402000280208450d00200028020021032000200041046a3602002000410036020820002802042102200041003602042002410036020820032802042202200320021b2102034020022203450d0120012006470440200341106a200141106a102321072003411c6a2001411c6a100f024020032802082202450440410021020c010b2003200228020022054604402002410036020020022802042205450d012005103021020c010b200241003602042005450d002005103021020b2000200441106a200710312107200020042802102007200310262001101a21010c010b0b0340200328020822030d000b200621010b034020012006460d01200441106a2000200141106a103220002004410c6a2004280210220341106a103121022000200428020c2002200310262001101a21010c000b000b200441206a24000bd60101067f230041106b22022400200042003702042000200041046a2203360200200141046a21062001280200210103402001200646450440200141106a21050240027f027f0240024020032000280200460440200321040c010b2003102a220441106a20051019450d010b20032802004504402002200336020c2003210420030c030b2002200436020c200441046a0c010b20002002410c6a200510240b22042802000d01200228020c0b21072002200020051032200020072004200228020010260b2001101a21010c010b0b200241106a240020000bbd05010b7f230041206b22052400024020002001460d00200141046a210a2001280200210402402000280208450d00200028020021012000200041046a3602002000410036020820002802042102200041003602042002410036020820012802042202200120021b2101034020012203450d0102402004200a470440200341106a220c200441106a10231a20032004460d012003411c6a2107200341206a21012004411c6a2108200441206a21020340200128020021010240027f4101200228020022022008460d001a20012007470d0141000b210602402001200746044020060d054114102722094100360200200941086a200241086a10161a4101210b200921060340200820022802042202460d0241141027220141086a200241086a10161a2001200636020020062001360204200b41016a210b200121060c000b000b20012802002202200328021c220828020436020420082802042002360200034020012007460d0520032003280224417f6a360224200128020421010c000b000b200328021c2201200936020420092001360200200620073602042003200636021c200341246a22012001280200200b6a3602000c030b200141086a200241086a10231a200141046a2101200241046a21020c000b000b0340200328020822010440200121030c010b0b2003102f200a21040c020b024020032802082201450440410021010c010b2003200128020022024604402001410036020020012802042202450d012002103021010c010b200141003602042002450d002002103021010b2000200541106a200c10312102200020052802102002200310262004101a21040c000b000b03402004200a460d01200541106a2000200441106a102b20002005410c6a2005280210220141106a103121022000200528020c20022001102620054100360210200541106a102c2004101a21040c000b000b200541206a24000be10101067f230041106b22022400200042003702042000200041046a2203360200200141046a21062001280200210103402001200646450440200141106a21050240027f027f0240024020032000280200460440200321040c010b2003102a220441106a20051019450d010b20032802004504402002200336020c2003210420030c030b2002200436020c200441046a0c010b20002002410c6a200510240b22042802000d01200228020c0b2107200220002005102b20002007200420022802001026200241003602002002102c0b2001101a21010c010b0b200241106a240020000b3601017f230041206b22032400200341086a200110161a200341146a200210161a2003200041186a200341086a1017200341206a24000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102120000b8d0101037f230041106b22042400200020012004410c6a2002102422052802002203047f4100054128102722032002290200370210200341186a200241086a28020036020020021028200341246a200241146a2802003602002003411c6a200229020c3702002002410c6a10282001200428020c20052003102641010b3a000420002003360200200441106a24000b870701067f2000411c6a22062104200621030340200428020022020440200241046a2002200241106a2001101922051b21042003200220051b21030c010b0b024020032006460d002001200341106a10190d002003200028021846044020002003101a3602180b200041206a22022002280200417f6a3602002000411c6a2802002105027f0240024020032802002201450440200321040c010b20032802042202450440200321040c020b2002101b220428020022010d010b200428020422010d004100210141000c010b2001200428020836020841010b210702402004200428020822002802002202460440200020013602002004200546044041002102200121050c020b200028020421020c010b200020013602040b20042d000c210020032004470440200420032802082206360208200620032802082802002003474102746a20043602002003280200220620043602082004200636020020042003280204220636020420060440200620043602080b200420032d000c3a000c2004200520032005461b21050b200041ff0171450d002005450d002007450440034020022d000c2103024020022002280208220428020047044002400240200341ff0171450440200241013a000c200441003a000c2004101c20022005200520022802002203461b2105200328020421020b20022802002204044020042d000c450d010b20022802042203044020032d000c450d020b200241003a000c0240200520022802082202460440200521020c010b20022d000c0d040b200241013a000c0f0b20022802042203044020032d000c450d010b200441013a000c200241003a000c2002101d2002280208220228020421030b2002200228020822042d000c3a000c200441013a000c200341013a000c2004101c0f0b0240200341ff0171450440200241013a000c200441003a000c2004101d20022005200520022802042203461b2105200328020021020b20022802002203044020032d000c450d010b024020022802042204044020042d000c450d010b200241003a000c20052002280208220247044020022d000c0d030b200241013a000c0f0b2003044020032d000c450d010b200441013a000c200241003a000c2002101c2002280208220228020021030b2002200228020822042d000c3a000c200441013a000c200341013a000c2004101d0f0b2002280208220320032802002002464102746a28020021020c000b000b200141013a000c0b0bb20101067f02400240200128020420012d00002202410176200241017122031b2205200028020420002d00002202410176200241017122041b2206200520064922071b2202450d002000280208200041016a20041b21002001280208200141016a20031b210103402002450d0120002d0000220320012d00002204460440200141016a2101200041016a21002002417f6a21020c010b0b200320046b22020d010b417f200720062005491b21020b2002411f760b3401017f02402000280204220104402001101b21010c010b0340200028020822012802002000460d01200121000c000b000b20010b1401017f03402000220128020022000d000b20010b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b3600200141186a22012002101f0440200020012002102010161a0f0b20004200370200200041086a41003602002000418008410010210b3e01017f200041046a2100037f2000280200220045044041000f0b2001200041106a220210190d00200220011019047f200041046a21000c010541010b0b0b5201037f230041106b2203240020002003410c6a200110242204280200220245044041281027220241106a200110161a2002411c6a10251a2000200328020c2004200210260b200341106a24002002411c6a0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204102721032000200236020420002004410172360200200020033602080b200320012002107b200220036a41003a00000b4901027f200041186a2100200141046a2102200128020021010340200120024704402000200141106a2203101f4504402000200310202001411c6a10231a0b2001101a21010c010b0b0b920201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210770b200120026a41003a000020002d000041017104402000200236020420000f0b200020024101743a000020000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b20031027220120042002107b200020023602042000200341017236020020002001360208200120026a41003a00000b20000b890101027f200041046a2103024020002802042200044002400340024002402002200041106a220410190440200028020022040d012001200036020020000f0b200420021019450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b190020004200370200200041086a41003602002000102820000b480020032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2000280204200310292000200028020841016a3602080b0b002000410120001b10370b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0bec0101037f200120002001463a000c03400240024020002001460d00200128020822022d000c0d002002200228020822032802002204460440024020032802042204450d0020042d000c0d002004410c6a21010c030b200120022802004704402002101c2002280208220228020821030b200241013a000c200341003a000c2003101d0f0b02402004450d0020042d000c0d002004410c6a21010c020b200120022802004604402002101d2002280208220228020821030b200241013a000c200341003a000c2003101c0b0f0b200241013a000c200320002003463a000c200141013a0000200321010c000b000b3e01027f024020002802002201044003402001220228020422010d000c020b000b03402000280208220228020020004621012002210020010d000b0b20020b2c01017f20004128102722033602002000200141046a360204200341106a2002102d200041086a41013a00000b2c01017f200028020021012000410036020002402001450d00200041086a2d0000450d002001411c6a102e0b0b9a0101047f2000200110161a200041146a4100360200200041106a2000410c6a22023602002000200236020c2001410c6a2105200141106a210103402001280200220320054704404114102722014100360200200141086a200341086a10161a20012002360204200028020c21042000200136020c20012004360200200420013602042000200028021441016a360214200341046a21010c010b0b0b4d01037f02402000280208450d00200028020422012802002202200028020022032802043602042000410036020820032802042002360200034020002001460d01200128020421010c000b000b0b1c00200004402000280200102f2000280204102f2000411c6a102e0b0b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a1019044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b2c01017f20004128102722033602002000200141046a360204200341106a20021033200041086a41013a00000b16002000200110161a2000410c6a2001410c6a10101a0b2c01017f20004128102722033602002000200141046a360204200341106a20021035200041086a41013a00000b16002000200110161a2000410c6a2001410c6a10161a0b900c02057f017e23004190026b22002400107a10072201103722021008200041e0006a200041086a200220011038220341001039200041e0006a103a024002402000280264450d00200041e0006a103a0240200028026022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028026441014d04401000200028026021020b20022d00010d010c020b200441bf014b0d012000280264200141ff017141ca7e6a22014d04401000200028026021020b200120026a2d0000450d010b2000280264450d0020022d000041c001490d010b10000b200041f0016a200041e0006a103b20002802f401220141094f044010000b20002802f00121020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418108103c200551044020034101103d0c020b418608103c200551044020034102103d0c020b418e08103c20055104402003103e200041d8016a200041e0006a103f220341186a10102102200041f0016a10402201200210411042200120021043200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310440c020b419608103c2005510440200042003702dc012000200041d8016a4104723602d80120031045410247044010000b200041e0006a200341011039200041e0006a200041d8016a1046200041e0006a103f220141406b200041f0016a200041d8016a10121011200110440c020b41a208103c20055104402003103e200041d8016a200041e0006a103f220341406b10122102200041f0016a10402201200210471042200120021048200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310440c020b41ae08103c2005510440200042003702dc012000200041d8016a4104723602d80120031045410247044010000b200041e0006a200341011039200041e0006a200041d8016a1049200041e0006a103f220141e8006a200041f0016a200041d8016a1014220210132002280204102f2001104420002802dc01102f0c020b41bb08103c20055104402003103e200041d8016a200041e0006a103f220341e8006a10142102200041f0016a104022012002104a104220012002104b200128020c200141106a28020047044010000b20012802002001280204100c200128020c22040440200120043602100b2002280204102f200310440c020b41c808103c2005510440200041f0016a10252101200041fc016a1025210220031045410347044010000b200041013602d801200020033602602000200041d8016a360264200041e0006a2001104c200041e0006a2002104c200041e0006a103f2203200041d8016a20011016200041d0006a200210161015200310440c020b41d808103c2005510440200041d8016a102521012003200041d8016a104d200041e0006a103f2202200041f0016a200110161018200210440c020b41eb08103c2005510440200041206a102521012003200041206a104d200041406b200041e0006a103f2202200041306a20011016101e200041d8016a1040210120004188026a410036020020004180026a4200370300200041f8016a4200370300200042003703f001200041f0016a200041d0006a200041406b1016104e210320002802f0012104200341046a104f2001200410422001200041f0016a200041406b10161050200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210440c020b41fe08103c20055104402003103e200041e0006a103f220241206a3100002105200041d8016a1040210120004188026a410036020020004180026a4200370300200041f8016a4200370300200042003703f001200041f0016a2005105120002802f0012103200041f0016a410472104f200120031042200120051052220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210440c020b418b09103c2005520d0020034103103d0c010b10000b105320004190026a24000b9b0101047f230041106b220124002001200036020c2000047f41a809200041086a2202411076220041a8092802006a220336020041a40941a409280200220420026a41076a417871220236020002400240200341107420024d044041a809200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104107941086a0541000b2100200141106a240020000b0c00200020012002411c10540bcc0202067f017e230041106b220324002001280208220520024b0440200341086a200110800120012003280208200328020c107e36020c20032001108001410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410541a200341106a24000f0b2003200110800141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004107e107f2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110552204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b7601017f230041a0016b220224002002420037028401200220024180016a4104723602800120001045410247044010000b200241086a200041011039200241086a20024180016a1056200241086a103f2100200241086a20024190016a20024180016a1010200111000020001044200241a0016a24000b0e0020001045410147044010000b0b870601077f230041406a2203240020004200370204200042e0fcadd0e0bbb38c997f3703102000411c6a220242003702002000200041046a36020020002002360218200341286a1040220220002903101057200228020c200241106a28020047044010000b200041186a210602402002280200220120022802042205100922074504400c010b2003410036022020034200370318200341186a200710582001200520032802182201200328021c220520016b100a417f4704402003200141016a20052001417f736a103820061056200721040b2001450d002003200136021c0b200228020c22010440200220013602100b200445044020062000100f0b2000412c6a22024200370200200041c4006a22014200370200200041386a220442a5ef98f1bacdf6987537030020002002360228200041406b22062001360200200341286a1040220220042903001057200228020c200241106a28020047044010000b0240200228020022012002280204220510092207450440410021040c010b410021042003410036022020034200370318200341186a200710582001200520032802182201200328021c220520016b100a417f4704402003200141016a20052001417f736a103820061046200721040b2001450d002003200136021c0b200228020c22010440200220013602100b20044504402006200041286a10110b200041d4006a22024200370200200041ec006a22014200370200200041e0006a2204429dd9acf28effbae15037030020002002360250200041e8006a22062001360200200341286a1040220220042903001057200228020c200241106a28020047044010000b0240200228020022012002280204220510092207450440410021040c010b410021042003410036022020034200370318200341186a200710582001200520032802182201200328021c220520016b100a417f4704402003200141016a20052001417f736a103820061049200721040b2001450d002003200136021c0b200228020c22010440200220013602100b20044504402006200041d0006a10130b200341406b240020000b29002000410036020820004200370200200041001059200041146a41003602002000420037020c20000b5001017f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000105a1a200128020021002001410472104f200141206a240020000b1300200028020820014904402000200110590b0b6401037f230041206b2202240020002001280208105b2103200141046a210420012802002101034020012004460440200241206a24000520034102105b2200200241106a200141106a10161050200020022001411c6a101610502001101a21010c010b0b0b950601087f230041406a22062400200641286a10402202200041e0006a2201290300105c1042200220012903001057200041e8006a2103200228020c200241106a28020047044010000b2002280204210720022802002108200641106a104021012003104a210520012006105d2204105e2001200520042802046a20042802006b104220012003104b0240200128020c200141106a280200460440200141046a2103200128020021050c010b200141046a2103100020012802002105200128020c2001280210460d0010000b2008200720052003280200100b200428020022030440200420033602040b200128020c22040440200120043602100b200228020c22010440200220013602100b200041e8006a105f200041d0006a105f200641286a10402202200041386a2201290300105c1042200220012903001057200041406b2103200228020c200241106a28020047044010000b2002280204210720022802002108200641106a1040210120031047210520012006105d2204105e2001200520042802046a20042802006b10422001200310480240200128020c200141106a280200460440200141046a2103200128020021050c010b200141046a2103100020012802002105200128020c2001280210460d0010000b2008200720052003280200100b200428020022030440200420033602040b200128020c22040440200120043602100b200228020c22010440200220013602100b200641286a104022022000290310105c1042200220002903101057200041186a2103200228020c200241106a28020047044010000b2002280204210720022802002108200641106a1040210120031041210520012006105d2204105e2001200520042802046a20042802006b10422001200310430240200128020c200141106a280200460440200141046a2103200128020021050c010b200141046a2103100020012802002105200128020c2001280210460d0010000b2008200720052003280200100b200428020022030440200420033602040b200128020c22040440200120043602100b200228020c22010440200220013602100b200641406b24000b2501017f02402000280204450d0020002802002d000041c001490d002000106021010b20010bee0301087f23004190016b22022400024002402000280204450d0020002802002d000041c001490d00200241c8006a20001061200241386a20001062200241d8006a4104722106200241186a2104200241106a21070340200228024c200228023c46044020022802502002280240460d030b200241206a200241c8006a1063200241086a102521002002420037031820022004360214200241206a1064410247044010000b20024180016a10252103200241e8006a200241206a41001039200241e8006a200310652000200310662002420037025c20022006360258200241e8006a200241206a41011039200241e8006a200241d8006a1056200220022802583602142002200228025c220536021820022002280260220336021c02402003450440200220043602140c010b200520043602082002420037025c200220063602580b2001200241e8006a2000102422052802004504404128102722032002290308370210200341186a2007280200360200200010282003411c6a2002280214360200200341206a220020022802182208360200200341246a200228021c2209360200024020094504402003200036021c0c010b2008200036020820024200370318200220043602140b200120022802682005200310260b200241c8006a10670c000b000b10000b20024190016a24000bc80101047f230041d0006b22012400200141206a4100360200200141186a4200370300200141106a42003703002001420037030802402000280208450440200141086a10681a0c010b200041046a2103200141086a410010692102200141346a2104200028020021000340200020034604402002410110691a05200141286a200041106a1033200241001069200141406b200141286a1016104e2004105a410110691a2000101a21000c010b0b0b20012802082100200141086a410472104f200141d0006a240020000b5d01037f230041106b2202240020002001280208105b2103200141046a210420012802002101034020012004460440200241106a24000520034102105b22002002200141106a1016105020002001411c6a10432001101a21010c010b0b0b970501077f230041d0016b22022400024002402000280204450d0020002802002d000041c001490d00200241406b20001061200241306a20001062200141046a21062002410c6a2104200241086a210703402002280244200228023446044020022802482002280238460d030b200241186a200241406b106320021025210520024100360214200220043602102002200436020c200241186a1064410247044010000b200241f8006a1025210020024198016a200241186a4100103920024198016a20001065200520001066200241003602702002200241e8006a36026c2002200241e8006a360268200241d0006a200241186a41011039024002402002280254450d0020022802502d000041c001490d00200241c0016a200241d0006a1061200241b0016a200241d0006a1062034020022802c40120022802b40146044020022802c80120022802b801460d030b20024198016a200241c0016a106320024198016a20024188016a10252203106541141027220041003602002000200229038801370208200041106a20024190016a280200360200200310282000200228026822033602002000200241e8006a36020420032000360204200220003602682002200228027041016a360270200241c0016a10670c000b000b10000b2004102e20042004200241e8006a106a200241e8006a102e2001200241d0006a2005102422082802004504404128102722002002290300370210200041186a20072802003602002002200636029c0120051028200041246a4100360200200041206a2000411c6a220336020020032003360200200320032004106a200241013a00a00120012002280250200820001026200241003602980120024198016a102c0b2004102e200241406b10670c000b000b10000b200241d0016a24000ba10201077f230041e0006b22012400200141206a4100360200200141186a4200370300200141106a42003703002001420037030802402000280208450440200141086a10681a0c010b200041046a2106200141086a410010692103200141346a2104200141386a2107200028020021020340200220064604402003410110691a05200141286a200241106a102d200341001069200141406b200141286a1016104e2100027f200128023c450440200010680c010b200041001069210520072100037f20002802002200200446047f200541011069052005200141d0006a200041086a1016104e1a200041046a21000c010b0b0b410110691a2004102e2002101a21020c010b0b0b20012802082100200141086a410472104f200141e0006a240020000b970101057f230041206b2203240020002001280208105b2105200141046a2106200128020021020340200220064645044020054102105b22042003200241106a101610502002411c6a2100200241206a210120042002280224105b21040340200020012802002201464504402004200341106a200141086a10161050200141046a21010c010b0b2002101a21020c010b0b200341206a24000b4301017f230041206b22022400200241086a200028020020002802042802001039200241086a2001106520002802042200200028020041016a360200200241206a24000b3401017f230041206b2202240020001045410247044010000b200241086a200041011039200241086a20011065200241206a24000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002106b20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001106c0c010b20000b2201200128020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000106d200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001106e200441106a24000b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a106f20042001200220002802006a1004200010700b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002106b20026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002106c21000b2000200028020020036a3602000b2a01017f2000420020011005200028020422026a106f42002001200220002802006a10062000107020000b880101037f419409410136020041980928020021000340200004400340419c09419c092802002201417f6a220236020020014101484504404194094100360200200020024102746a22004184016a280200200041046a280200110200419409410136020041980928020021000c010b0b419c094120360200419809200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000107c20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000107c20024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000103a41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b830201047f23004190016b22022400024002402000280204450d0020002802002d000041c001490d00200241c8006a20001061200241386a20001062200241146a21030340200228024c200228023c46044020022802502002280240460d030b200241206a200241c8006a1063200241086a10252104200310252105200241206a1064410247044010000b20024180016a10252100200241e8006a200241206a41001039200241e8006a20001065200420001066200241d8006a10252100200241e8006a200241206a41011039200241e8006a20001065200520001066200241e8006a2001200241086a1017200241c8006a10670c000b000b10000b20024190016a24000b09002000200110521a0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102721060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110791a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b2f01017f2000280208200149044020011037200028020020002802041079210220002001360208200020023602000b0b910101037f230041406a22022400027f2001280208450440200010680c010b2000410010692100200141046a2103200241146a210420012802002101037f2001200346047f20004101106905200241086a200141106a1035200041001069200241306a200241086a1016104e200241206a20041016104e410110691a2001101a21010c010b0b0b2101200241406b240020010b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410270b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110791a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a106f41004100200120002802006a10022000107020000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001051200128020021022001410472104f200141206a240020020b3a01017f20004100360208200042003702002000410110272201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105920002802040520020b20002802006a2003200110791a2000200028020420016a3602040b09002000280204102f0b810101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000108001200128020c210003402000450d01200141002001280208220320032000107e22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b0a0020002001410110780b0a0020002001410010780b160020002001280204200141086a280200411c10541a0b210002402000280204044020002802002d000041bf014b0d010b10000b200010600ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10251a0c010b200241186a2000103b2000105521030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102721032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1066200241206a24000b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a280200360200200110280bb50102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a2001410020042002107e107f20002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b3b01017f027f200041186a28020022010440200041086a280200200041146a2802002001106c0c010b20000b2201200128020041016a36020020000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a22022802002203106c280200210120022003417f6a360200200710714180104f044020072000410c6a280200417c6a106e0b200141384f047f2001106b20016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a2802002001106c0c020b20000c010b0240200710710d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10720c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010272105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1073220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10742102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021075200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a107622013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10742102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021075200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10720c010b20042001410175410120011b200320051074210241802010272106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a107322013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200107421032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031075200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021075052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a107622013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210107421062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061075200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007106d200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b6601047f20022802082205044020022802042204280200220620022802002203280204360204200328020420063602002000200028020820056a360208200420012802002200360200200020043602042002410036020820012003360200200320013602040b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b3601017f2000280208200149044020011037200028020020002802041079210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a106f200120002802006a22012002200110020c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a107322023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10742103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031075200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110770b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102721040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110770b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210791a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0be60101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110800120004100200428020c2201200428020822022001107e22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3501017f230041106b220041b0890436020c41a009200028020c41076a417871220036020041a409200036020041a8093f003602000b10002002044020002001200210791a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000107d200010556a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2701017f230041206b22022400200241086a2000200141141054107c2100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f20011055220220012802044b044010000b200020012001107d2002107f0b0b980101004181080b9001696e6974006164645f6d6170006765745f6d6170006164645f6d61705f6d6170006765745f6d61705f6d6170006164645f6d61705f6c697374006765745f6d61705f6c697374006164645f6d61705f656c656d656e740064656c6574655f6d61705f656c656d656e740066696e645f656c656d656e745f62796b6579006765745f6d61705f73697a65006164644d6170"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_FIND_ELEMENT_BYKEY = "find_element_bykey"; - - public static final String FUNC_ADD_MAP_ELEMENT = "add_map_element"; - - public static final String FUNC_ADD_MAP = "add_map"; - - public static final String FUNC_GET_MAP = "get_map"; - - public static final String FUNC_ADD_MAP_MAP = "add_map_map"; - - public static final String FUNC_GET_MAP_MAP = "get_map_map"; - - public static final String FUNC_ADD_MAP_LIST = "add_map_list"; - - public static final String FUNC_GET_MAP_LIST = "get_map_list"; - - public static final String FUNC_DELETE_MAP_ELEMENT = "delete_map_element"; - - public static final String FUNC_GET_MAP_SIZE = "get_map_size"; - - public static final String FUNC_ADDMAP = "addMap"; - - protected InitWithMapParams(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InitWithMapParams(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall find_element_bykey(String key) { - final WasmFunction function = new WasmFunction(FUNC_FIND_ELEMENT_BYKEY, Arrays.asList(key), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall add_map_element(String key, String value) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MAP_ELEMENT, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_map_element(String key, String value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MAP_ELEMENT, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Map inMap) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inMap)); - return deployRemoteCall(InitWithMapParams.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Map inMap) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inMap)); - return deployRemoteCall(InitWithMapParams.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Map inMap) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inMap)); - return deployRemoteCall(InitWithMapParams.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Map inMap) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inMap)); - return deployRemoteCall(InitWithMapParams.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall add_map(Map inMap) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MAP, Arrays.asList(inMap), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_map(Map inMap, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MAP, Arrays.asList(inMap), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_map() { - final WasmFunction function = new WasmFunction(FUNC_GET_MAP, Arrays.asList(), Map.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {String.class, String.class}, - Map.class, - Map.class)); - return executeRemoteCall(function, Map.class); - } - - public RemoteCall add_map_map(Map> inMapmap) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MAP_MAP, Arrays.asList(inMapmap), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_map_map(Map> inMapmap, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MAP_MAP, Arrays.asList(inMapmap), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_map_map() { - final WasmFunction function = new WasmFunction(FUNC_GET_MAP_MAP, Arrays.asList(), Map.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {String.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {String.class, String.class}, - Map.class, - Map.class)}, - Map.class, - Map.class)); - return executeRemoteCall(function, Map.class); - } - - public RemoteCall add_map_list(Map> inMaplist) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MAP_LIST, Arrays.asList(inMaplist), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_map_list(Map> inMaplist, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MAP_LIST, Arrays.asList(inMaplist), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_map_list() { - final WasmFunction function = new WasmFunction(FUNC_GET_MAP_LIST, Arrays.asList(), Map.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {String.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {String.class}, - List.class, - List.class)}, - Map.class, - Map.class)); - return executeRemoteCall(function, Map.class); - } - - public RemoteCall delete_map_element(String key) { - final WasmFunction function = new WasmFunction(FUNC_DELETE_MAP_ELEMENT, Arrays.asList(key), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall delete_map_element(String key, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DELETE_MAP_ELEMENT, Arrays.asList(key), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_map_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_MAP_SIZE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall addMap(Map inMap) { - final WasmFunction function = new WasmFunction(FUNC_ADDMAP, Arrays.asList(inMap), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall addMap(Map inMap, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADDMAP, Arrays.asList(inMap), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static InitWithMapParams load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InitWithMapParams(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InitWithMapParams load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InitWithMapParams(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithObjectParams.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithObjectParams.java deleted file mode 100644 index 7a76ac7bb6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithObjectParams.java +++ /dev/null @@ -1,95 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InitWithObjectParams extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000014e0e60027f7f0060017f017f60017f0060027f7f017f60037f7f7f017f60037f7f7f0060000060047f7f7f7f017f60047f7f7f7f0060027f7e0060037e7e7f006000017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65000c03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000034a490600030005010303010307000200020601040502000d0100010202020101000607010001090403040002010200010004000003000303030400020000010004070204050006050101080405017001010105030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002c06696e766f6b65001c0ad05a49040010510b800101027f230041206b2203240002402000280204220220002802084704402002200110131a2000200028020441246a3602040c010b200341086a2000200220002802006b41246d220241016a10162002200041086a10172202280208200110131a2002200228020841246a360208200020021018200210190b200341206a24000b3e01017f2000420037020020004100360208200128020420012802006b220204402000200241246d101020012802002001280204200041046a10110b20000b2301017f20002001101222023602002000200236020420002002200141246c6a3602080b2e00034020002001464504402002280200200010131a2002200228020041246a360200200041246a21000c010b0b0b0900200041246c10150b25002000200110141a2000410c6a2001410c6a10141a200041186a200141186a10141a20000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101521022000200136020420002004410172360200200020023602080b2002200320011052200120026a41003a000020000b0b002000410120001b101d0b2f01017f2001200028020820002802006b41246d2200410174220220022001491b41c7e3f138200041e3f1b81c491b0b4c01017f2000410036020c200041106a2003360200200104402001101221040b2000200436020020002004200241246c6a220236020820002004200141246c6a36020c2000200236020420000b900101027f2000280204210220002802002103034020022003464504402001280204415c6a2002415c6a2202101a20012001280204415c6a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001415c6a22013602080c010b0b0b620020002001290200370200200041086a200141086a2802003602002001101b200041146a200141146a2802003602002000200129020c37020c2001410c6a101b200041206a200141206a28020036020020002001290218370218200141186a101b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0bc00402057f017e230041a0016b22002400105110072201101d22021008200041e8006a200020022001101e22034100101f200041e8006a102002400240200028026c450d00200041e8006a10200240200028026822022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028026c41014d04401000200028026821020b20022d00010d010c020b200441bf014b0d01200028026c200141ff017141ca7e6a22014d04401000200028026821020b200120026a2d0000450d010b200028026c450d0020022d000041c001490d010b10000b200041406b200041e8006a10212000280244220141094f044010000b200028024021020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d0041800810222005510440200041186a102321012003200041186a1024200041e8006a1025210220004180016a200041406b20011013100e200210260c020b41850810222005510440200041186a102321012003200041186a1024200041e8006a1025210220004180016a2203200041406b20011013100e20004190016a2003100f1a20004190016a102720004190016a1028200210260c020b41910810222005520d0020004190016a102921012003102a410247044010000b200041e8006a20034101101f200041e8006a2001102b200041e8006a10252102200041186a200110141a200041406b20004180016a100f2201102720011028200210260c010b10000b102c200041a0016a24000b9b0101047f230041106b220124002001200036020c2000047f41b408200041086a2202411076220041b4082802006a220336020041b00841b008280200220420026a41076a417871220236020002400240200341107420024d044041b408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103c41086a0541000b2100200141106a240020000b0c00200020012002411c102d0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103e20012003280208200328020c103336020c20032001103e410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102d1a200341106a24000f0b20032001103e41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103310552001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001102e2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b1900200010291a2000410c6a10291a200041186a10291a20000b3401017f230041206b220224002000102a410247044010000b200241086a20004101101f200241086a2001102f200241206a24000bcd06010c7f230041b0016b2204240020004200370218200042b8e09485bbf68abc133703102000410036020820004200370200200041206a4100360200200441206a1030220720002903101031200728020c200741106a28020047044010000b200041186a21052000411c6a21090240200728020022032007280204220810092206450d002006101521020340200120026a41003a00002006200141016a2201470d000b2003200820022001100a417f460440410021010c010b02400240200441086a200241016a200120026a2002417f736a101e2202280204450d0020022802002d000041c001490d002002102a21012000280220200028021822036b41246d20014904402005200441386a2001200028021c20036b41246d200041206a101722011018200110190b20044188016a2002410110322101200441f8006a2002410010322108200041206a210b20012802042102034020082802042002464100200128020822032008280208461b0d02200441e0006a20022003411c102d200441386a10232202102f0240200028021c2203200028022049044020032002101a2009200928020041246a3602000c010b20044198016a2005200320052802006b41246d220341016a10162003200b1017210320042802a0012002101a200420042802a00141246a3602a001200520031018200310190b20012001280204220220012802086a410020021b220236020420012802002203044020012003360208200220031033210a2001027f2001280204220c4504404100210341000c010b41002103410020012802082202200a490d001a2002200a200a417f461b2103200c0b2202ad2003ad42208684370204200141002001280200220a20036b22032003200a4b1b3602000c0105200141003602080c010b000b000b10000b200621010b200728020c22020440200720023602100b024020010d0020002802042206200028020022026b41246d22032000280220200028021822016b41246d4d04402003200928020020016b41246d22084b044020022002200841246c6a2203200110341a20032006200910110c020b2005200220062001103410350c010b200104402005103620004100360220200042003702180b2005200520031016101020022006200910110b200441b0016a240020000bc903020a7f027e230041406a22032400200341086a10302104200341386a4100360200200341306a4200370300200341286a420037030020034200370320410121022000290310220b4280015a04400340200b200c8450450440200c423886200b42088884210b200141016a2101200c420888210c0c010b0b200141384f047f2001103720016a0520010b41016a21020b20032002360220200341206a4104721038200420021039200420002903101031200428020c200441106a28020047044010000b2004280204210520042802002106200341206a10302101200041186a2207103a210841011015220241fe013a0000200128020c200141106a28020047044010000b2001280204220941016a220a20012802084b047f2001200a103b20012802040520090b20012802006a20024101103c1a2001200128020441016a3602042001200241016a200820026b6a103920012007103d0240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b2006200520022001280204100b200128020c22020440200120023602100b200428020c22010440200420013602100b200041186a102820001028200341406b24000b5901027f230041206b22022400200241086a103022012000103a103920012000103d200128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b200241206a24000b0e0020002802000440200010360b0b190020004200370200200041086a41003602002000101b20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103e200128020c210003402000450d01200141002001280208220320032000103322046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10291a0c010b200241186a200010212000102e21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101521032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a101b200241206a24000b880101037f41a008410136020041a4082802002100034020000440034041a80841a8082802002201417f6a2202360200200141014845044041a0084100360200200020024102746a22004184016a280200200041046a28020011020041a008410136020041a40828020021000c010b0b41a808412036020041a408200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105320024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105320024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000102041012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b5e01017f230041306b22022400200220004100101f200241186a20024100101f200241186a2001102b200241186a20004101101f200241186a2001410c6a102b200241186a20004102101f200241186a200141186a102b200241306a24000b2900200041003602082000420037020020004100103b200041146a41003602002000420037020c20000b2801017f2000420020011005200028020422026a104542002001200220002802006a1006200010460be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001103e20004100200428020c2201200428020822022001103322032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a200020014114102d10532100200241206a240020000b3e00034020002001464504402002200010502002410c6a2000410c6a1050200241186a200041186a1050200241246a2102200041246a21000c010b0b20020b0900200020013602040b0b002000200028020010350b1e01017f03402000044020004108762100200141016a21010c010b0b20010bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001047200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011048200441106a24000b13002000280208200149044020002001103b0b0bcb0101047f230041406a22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300027f200028020020002802044604402001410136020041010c010b20014100103f21032000280204200028020022006b2102037f2002047f20034100103f2204200010402004200141306a2000410c6a10141041200141206a200041186a101410414101103f1a2002415c6a2102200041246a21000c010520034101103f1a20012802000b0b0b210020014104721038200141406b240020000b2f01017f200028020820014904402001101d20002802002000280204103c210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb20201077f23004180016b220224002000200128020420012802006b41246d104221042001280204200128020022016b2100200241206a4104722105200241e0006a4104722106034020000440200441031042210320024100360238200242003703302002420037032820024200370320200241206a20011040200241206a200241106a2001410c6a2207101410412002200141186a2208101410411a200320022802201039200341011042210320024100360278200242003703702002420037036820024200370360200241e0006a200241d0006a2001101410411a2003200228026010392003200241406b2001101410432103200610382003200241e0006a200710141043200241d0006a2008101410431a200510382000415c6a2100200141246a21010c010520024180016a24000b0b0b2101017f2001102e220220012802044b044010000b2000200120011054200210550bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031044280200210120022003417f6a360200200710494180104f044020072000410c6a280200417c6a10480b200141384f047f2001103720016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110440c020b20000c010b0240200710490d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a104a0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010152105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a104b220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a104c2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104d200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104e22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a104c2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104d200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a104a0c010b20042001410175410120011b20032005104c210241802010152106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104b22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104c21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003104d200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002104d052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104e22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104c21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006104d200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071047200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b2701017f230041106b2202240020004100103f20022001101410414101103f1a200241106a24000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103720026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110440c010b20000b2201200128020020036a36020020000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410150b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001103c1a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a104541004100200120002802006a10022000104620000b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a104520042001200220002802006a10042000104620000b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b3601017f200028020820014904402001101d20002802002000280204103c210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1045200120002802006a22012002200110020c010b0b0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104b22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a104c2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003104d200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001104f0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101521040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001104f0b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103c1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b210120020440200120042002104f0b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b200310152201200420021052200020023602042000200341017236020020002001360208200120026a41003a00000b0b3501017f230041106b220041c0880436020c41ac08200028020c41076a417871220036020041b008200036020041b4083f003602000b100020020440200020012002103c1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010542000102e6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b2301004180080b1c696e6974006164645f6d657373616765006765745f6d657373616765"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ADD_MESSAGE = "add_message"; - - public static final String FUNC_GET_MESSAGE = "get_message"; - - protected InitWithObjectParams(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InitWithObjectParams(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, My_message one_message) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(one_message)); - return deployRemoteCall(InitWithObjectParams.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, My_message one_message) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(one_message)); - return deployRemoteCall(InitWithObjectParams.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, My_message one_message) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(one_message)); - return deployRemoteCall(InitWithObjectParams.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, My_message one_message) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(one_message)); - return deployRemoteCall(InitWithObjectParams.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall add_message(My_message one_message) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MESSAGE, Arrays.asList(one_message), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_message(My_message one_message, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MESSAGE, Arrays.asList(one_message), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_message(String name) { - final WasmFunction function = new WasmFunction(FUNC_GET_MESSAGE, Arrays.asList(name), My_message[].class); - return executeRemoteCall(function, My_message[].class); - } - - public static InitWithObjectParams load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InitWithObjectParams(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InitWithObjectParams load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InitWithObjectParams(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Message { - public String head; - } - - public static class My_message { - public Message baseClass; - - public String body; - - public String end; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithParams.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithParams.java deleted file mode 100644 index 9f289be5a9..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithParams.java +++ /dev/null @@ -1,87 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InitWithParams extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000014e0e60027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60037f7f7f017f60000060047f7f7f7f017f60047f7f7f7f0060027f7e0060037e7e7f006000017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000c03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e00000345440600040003040700020400030101020601050302000d010100010200020206070100040109050500020102000100050000000400020500000100050702050303060101080405017001010105030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002b06696e766f6b65001c0a8458440400104d0b2401017f230041106b2202240020022001100f1a200041186a20021010200241106a24000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101a21022000200136020420002004410172360200200020023602080b200220032001104c200120026a41003a000020000bb00101037f230041206b22032400024020002802042202200028020849044020022001290200370200200241086a200141086a2802003602002001101b20002000280204410c6a3602040c010b200341086a2000200220002802006b410c6d220241016a10122002200041086a1013220228020822042001290200370200200441086a200141086a2802003602002001101b20022002280208410c6a360208200020021014200210150b200341206a24000b930101047f230041206b22042400200141186a210302402001411c6a2802002205200141206a220628020047044020052002100f1a2001200128021c410c6a36021c0c010b200441086a2003200520012802186b410c6d220141016a101220012006101322012802082002100f1a20012001280208410c6a360208200320011014200110150b2000200310161a200441206a24000b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0b4c01017f2000410036020c200041106a2003360200200104402001101921040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000baa0101037f200028020421022000280200210303402002200346450440200128020441746a2204200241746a2202290200370200200441086a200241086a2802003602002002101b2001200128020441746a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0b3e01017f2000420037020020004100360208200128020420012802006b2202044020002002410c6d101720012802002001280204200041046a10180b20000b2301017f200020011019220236020020002002360204200020022001410c6c6a3602080b2e000340200020014645044020022802002000100f1a20022002280200410c6a3602002000410c6a21000c010b0b0b09002000410c6c101a0b0b002000410120001b101d0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0bc00402057f017e230041f0006b22002400104d10072201101d22021008200041386a200020022001101e22034100101f200041386a102002400240200028023c450d00200041386a10200240200028023822022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028023c41014d04401000200028023821020b20022d00010d010c020b200441bf014b0d01200028023c200141ff017141ca7e6a22014d04401000200028023821020b200120026a2d0000450d010b200028023c450d0020022d000041c001490d010b10000b200041e0006a200041386a10212000280264220141094f044010000b200028026021020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d0041800810222005510440200041286a1023210120031024410247044010000b200041386a20034101101f200041386a20011025200041386a10262102200041386a200041e0006a2001100f100e200210270c020b41850810222005510440200041186a1023210120031024410247044010000b200041386a20034101101f200041386a200041186a1028200041386a10262102200041286a2001100f1a200041e0006a200041386a200041286a1011200041e0006a1029200041e0006a102a200210270c020b41900810222005520d0020031024410147044010000b200041386a10262101200041e0006a200041d0006a1016220210292002102a200110270c010b10000b102b200041f0006a24000b9b0101047f230041106b220124002001200036020c2000047f41b008200041086a2202411076220041b0082802006a220336020041ac0841ac08280200220420026a41076a417871220236020002400240200341107420024d044041b008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103b41086a0541000b2100200141106a240020000b0c00200020012002411c102c0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102e20012003280208200328020c102f36020c20032001102e410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102c1a200341106a24000f0b20032001102e41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102f10502001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001102d2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b190020004200370200200041086a41003602002000101b20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102e200128020c210003402000450d01200141002001280208220320032000102f22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10231a0c010b200241186a200010212000102d21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101a21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a101b200241206a24000beb05010a7f23004180016b2204240020004200370218200042aebed3dfedeebab3583703102000410036020820004200370200200041206a4100360200200441206a1030220620002903101031200628020c200641106a28020047044010000b200041186a21080240200628020022032006280204220510092207450d002007101a21020340200120026a41003a00002007200141016a2201470d000b2003200520022001100a417f460440410021010c010b02400240200441086a200241016a200120026a2002417f736a101e2202280204450d0020022802002d000041c001490d002002102421012000280220200028021822036b410c6d20014904402008200441c8006a2001200028021c20036b410c6d200041206a101322011014200110150b200441f0006a2002410110322101200441e0006a200241001032210520012802042102034020052802042002464100200128020822032005280208461b0d02200441c8006a20022003411c102c2102200441386a10231a2002200441386a10282008200441386a101020012001280204220220012802086a410020021b22023602042001280200220304402001200336020820022003102f21092001027f2001280204220a4504404100210341000c010b410021034100200128020822022009490d001a200220092009417f461b2103200a0b2202ad2003ad42208684370204200141002001280200220920036b2203200320094b1b3602000c0105200141003602080c010b000b000b10000b200721010b200628020c22020440200620023602100b024020010d002000411c6a210220002802042203200028020022076b410c6d22052000280220200028021822016b410c6d4d04402005200228020020016b410c6d22064b0440200720072006410c6c6a2205200110331a20052003200210180c020b2008200720032001103310340c010b200104402008103520004100360220200042003702180b2008200820051012101720072003200210180b20044180016a240020000bc903020a7f027e230041406a22032400200341086a10302104200341386a4100360200200341306a4200370300200341286a420037030020034200370320410121022000290310220b4280015a04400340200b200c8450450440200c423886200b42088884210b200141016a2101200c420888210c0c010b0b200141384f047f2001103620016a0520010b41016a21020b20032002360220200341206a4104721037200420021038200420002903101031200428020c200441106a28020047044010000b2004280204210520042802002106200341206a10302101200041186a2207103921084101101a220241fe013a0000200128020c200141106a28020047044010000b2001280204220941016a220a20012802084b047f2001200a103a20012802040520090b20012802006a20024101103b1a2001200128020441016a3602042001200241016a200820026b6a103820012007103c0240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b2006200520022001280204100b200128020c22020440200120023602100b200428020c22010440200420013602100b200041186a102a2000102a200341406b24000b2801017f230041206b22022400200241086a20004100101f200241086a20011025200241206a24000b5901027f230041206b22022400200241086a1030220120001039103820012000103c200128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b200241206a24000b0e0020002802000440200010350b0b880101037f419c08410136020041a0082802002100034020000440034041a40841a4082802002201417f6a22023602002001410148450440419c084100360200200020024102746a22004184016a280200200041046a280200110200419c08410136020041a00828020021000c010b0b41a408412036020041a008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104e20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104e20024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000102041012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2101017f2001102d220220012802044b044010000b200020012001104f200210500b2701017f230041206b22022400200241086a200020014114102c104e2100200241206a240020000b2900200041003602082000420037020020004100103a200041146a41003602002000420037020c20000b2801017f2000420020011005200028020422026a104042002001200220002802006a1006200010410be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001102e20004100200428020c2201200428020822022001102f22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000bd00201077f200120006b2108410021010340200120026a2105200120084645044002402005200020016a2203460d00200341046a28020020032d00002204410176200441017122071b2104200341016a2106200341086a2802002109410a21032009200620071b210720052d0000410171220604402005280200417e71417f6a21030b200420034d0440027f20060440200541086a2802000c010b200541016a0b210320040440200320072004104b0b200320046a41003a000020052d00004101710440200541046a20043602000c020b200520044101743a00000c010b416f2106200341e6ffffff074d0440410b20034101742203200420042003491b220341106a4170712003410b491b21060b2006101a220320072004104c200541046a200436020020052006410172360200200541086a2003360200200320046a41003a00000b2001410c6a21010c010b0b20050b0900200020013602040b0b002000200028020010340b1e01017f03402000044020004108762100200141016a21010c010b0b20010bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001043200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011044200441106a24000b13002000280208200149044020002001103a0b0bad0101027f230041306b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300027f200028020020002802044604402001410136020041010c010b20014100103d2000280204210220002802002100037f2000200246047f20014101103d20012802000520014100103d2001200141206a2000100f103e20014101103d2000410c6a21000c010b0b0b210020014104721037200141306a240020000b2f01017f200028020820014904402001101d20002802002000280204103b210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000be90101087f230041406a220224002000200128020420012802006b410c6d103f2100200241206a4104722106200241017221072001280204210820012802002101034020012008460440200241406b24000520004101103f210520024100360238200242003703302002420037032820024200370320200241206a200241106a2001100f103e20052002280220103820022001100f1a20002002280208200720022d0000220341017122041b22092002280204200341017620041b22031003200028020422046a104020092003200420002802006a100420051041200610372001410c6a21010c010b0b0bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031042280200210120022003417f6a360200200710454180104f044020072000410c6a280200417c6a10440b200141384f047f2001103620016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002104221000c010b0240200710450d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10460c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020101a2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1047220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10482102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021049200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104a22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10482102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021049200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10460c010b20042001410175410120011b2003200510482102418020101a2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104722013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104821032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031049200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021049052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104a22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104821062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061049200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071043200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103620026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001104221000b2000200028020020036a3602000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374101a0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001103b1a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a104041004100200120002802006a10022000104120000b3601017f200028020820014904402001101d20002802002000280204103b210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1040200120002802006a22012002200110020c010b0b0b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104722023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10482103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031049200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001104b0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101a21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001104b0b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103b1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b100020020440200020012002103b1a0b0b3501017f230041106b220041c0880436020c41a808200028020c41076a417871220036020041ac08200036020041b0083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000104f2000102d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b2101004180080b1a696e6974006164645f706572736f6e006765745f706572736f6e"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ADD_PERSON = "add_person"; - - public static final String FUNC_GET_PERSON = "get_person"; - - protected InitWithParams(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InitWithParams(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, String init_name) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(init_name)); - return deployRemoteCall(InitWithParams.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, String init_name) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(init_name)); - return deployRemoteCall(InitWithParams.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, String init_name) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(init_name)); - return deployRemoteCall(InitWithParams.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, String init_name) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(init_name)); - return deployRemoteCall(InitWithParams.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall add_person(Person one_person) { - final WasmFunction function = new WasmFunction(FUNC_ADD_PERSON, Arrays.asList(one_person), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_person(Person one_person, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_PERSON, Arrays.asList(one_person), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_person() { - final WasmFunction function = new WasmFunction(FUNC_GET_PERSON, Arrays.asList(), Person[].class); - return executeRemoteCall(function, Person[].class); - } - - public static InitWithParams load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InitWithParams(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InitWithParams load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InitWithParams(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Person { - public String name; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithSetParams.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithSetParams.java deleted file mode 100644 index 5143ae6314..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithSetParams.java +++ /dev/null @@ -1,88 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.Set; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InitWithSetParams extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000014e0e60027f7f0060017f017f60017f0060037f7f7f017f60037f7f7f0060000060027f7f017f60047f7f7f7f0060047f7f7f7f017f60027f7e0060037e7e7f006000017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000603656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000c03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e0000033f3e05000006060304070100020201040401030501030402000d00010101010000020508010000060900000102030002000003010003080203030102050101070405017001030305030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002d06696e766f6b65001e0908010041010b020e0e0ab25a3e040010470b0b00200041186a2001100f0bdc0401087f230041206b22062400024020002001460d00200141046a21092001280200210102402000280208450d00200028020021042000200041046a3602002000410036020820002802042102200041003602042002410036020820042802042202200420021b2102034020022204450d0120012009470440200441106a2105024020012004460d00200128021420012d00102202410176200241017122081b2102410a21032001280218200141116a20081b210820052d0000410171220704402005280200417e71417f6a21030b200220034d0440027f20070440200441186a2802000c010b200541016a0b210320020440200320082002101a0b200220036a41003a000020052d00004101710440200441146a20023602000c020b200520024101743a00000c010b416f2107200341e6ffffff074d0440410b20034101742203200220022003491b220341106a4170712003410b491b21070b20071019220320082002101b200441146a200236020020042007410172360210200441186a2003360200200220036a41003a00000b024020042802082202450440410021020c010b2004200228020022034604402002410036020020022802042203450d012003101c21020c010b200241003602042003450d002003101c21020b2000200641106a2005101d2105200020062802102005200410142001101521010c010b0b0340200428020822040d000b200921010b034020012009460d01200641106a2000200141106a101320002006410c6a2006280210220441106a101d21022000200628020c2002200410142001101521010c000b000b200641206a24000b8c0201087f230041106b22022400200042003702042000200041046a2204360200200141046a210920012802002105034020052009470440200541106a2106200028020421080240027f027f0240024020042000280200460440200421010c010b20042107024020082203044003402003220128020422030d000c020b000b03402007280208220128020020074621032001210720030d000b0b200141106a20061011450d010b20084504402002200436020c200422010c030b2002200136020c200141046a0c010b20002002410c6a200610120b22012802000d01200228020c0b21032002200020061013200020032001200228020010140b2005101521050c010b0b200241106a240020000bb20101067f02400240200128020420012d00002202410176200241017122031b2205200028020420002d00002202410176200241017122041b2206200520064922071b2202450d002000280208200041016a20041b21002001280208200141016a20031b210103402002450d0120002d0000220320012d00002204460440200141016a2101200041016a21002002417f6a21020c010b0b200320046b22020d010b417f200720062005491b21020b2002411f760b890101027f200041046a2103024020002802042200044002400340024002402002200041106a220410110440200028020022040d012001200036020020000f0b200420021011450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b2c01017f2000411c101922033602002000200141046a360204200341106a20021016200041086a41013a00000baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b20032001280200470440200110172001280208220128020821020b200141013a000c200241003a000c200210180c010b02402004450d0020042d000c0d002004410c6a21030c020b20032001280200460440200110182001280208220128020821020b200141013a000c200241003a000c200210170b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b9d0101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a2802003602000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101921022000200136020420002004410172360200200020023602080b200220032001101b200120026a41003a00000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b0b002000410120001b101f0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210381a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b10002002044020002001200210381a0b0b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a1011044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030be20302057f017e230041f0006b22002400104710072201101f22021008200041206a200041086a200220011020220341001021200041206a1022024002402000280224450d00200041206a10220240200028022022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028022441014d04401000200028022021020b20022d00010d010c020b200441bf014b0d012000280224200141ff017141ca7e6a22014d04401000200028022021020b200120026a2d0000450d010b2000280224450d0020022d000041c001490d010b10000b200041d8006a200041206a1023200028025c220141094f044010000b200028025821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008102420055104402003410110250c020b418508102420055104402003410210250c020b418d0810242005520d0020031026410147044010000b200041206a10272103200041c8006a200041386a10102102200041d8006a1028220120021029102a20012002102b200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b2003102c0c010b10000b102d200041f0006a24000b9b0101047f230041106b220124002001200036020c2000047f41ac08200041086a2202411076220041ac082802006a220336020041a80841a808280200220420026a41076a417871220236020002400240200341107420024d044041ac08200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103841086a0541000b2100200141106a240020000b0c00200020012002411c102e0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103120012003280208200328020c103236020c200320011031410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102e1a200341106a24000f0b20032001103141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041032104a2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001102f2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b7001017f230041d0006b22022400200242003702342002200241306a41047236023020001026410247044010000b200241086a200041011021200241086a200241306a1030200241086a10272100200241086a200241406b200241306a101020011100002000102c200241d0006a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001031200128020c210003402000450d01200141002001280208220320032000103222046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bfc0101087f230041306b2205240020004200370204200042aaada1d1e0bbb19d997f3703102000411c6a220142003702002000200041046a36020020002001360218200541186a1028220220002903101033200228020c200241106a28020047044010000b200041186a210602400240200228020022072002280204220810092204450d00200410192103410021010340200120036a41003a00002004200141016a2201470d000b2007200820032001100a417f460d002005200341016a200120036a2003417f736a1020200610300c010b410021040b200228020c22010440200220013602100b200445044020062000100f0b200541306a240020000b29002000410036020820004200370200200041001034200041146a41003602002000420037020c20000bcd0201067f230041306b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300027f20002802084504402001410136020041010c010b200141001035200041046a2104200141206a410172210520002802002100037f2000200446047f200141011035200128020005200141206a200041106a101641012103024002400240200128022420012d00202202410176200241017122061b220241014d0440200241016b0d032001280228200520061b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103620026a41016a21030b027f200120012802182202450d001a2001280208200220012802146a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2202200228020020036a3602002000101521000c010b0b0b210020014104721037200141306a240020000b1300200028020820014904402000200110340b0ba80301077f230041106b22072400024020012802082202044020002802042105200041106a2802002203200041146a280200220449044020032002ad2005ad422086843702002000200028021041086a3602100c020b027f41002003200028020c22066b410375220841016a2203200420066b2204410275220620062003491b41ffffffff01200441037541ffffffff00491b2206450d001a200641037410190b2103200320084103746a22042002ad2005ad4220868437020020042000280210200028020c22086b22026b2105200320064103746a2103200441086a2104200241014e044020052008200210381a0b20002003360214200020043602102000200536020c0c010b200041001001200028020422026a103941004100200220002802006a10022000103a0b200141046a21042007410172210620012802002101034020012004460440200741106a2400052007200141106a101620002007280208200620072d0000220241017122051b22032007280204200241017620051b22021003200028020422056a103920032002200520002802006a10042000103a2001101521010c010b0b0bbe0302097f027e230041406a22032400200341086a10282104200341386a4100360200200341306a4200370300200341286a420037030020034200370320410121022000290310220a4280015a04400340200a200b8450450440200b423886200a42088884210a200141016a2101200b420888210b0c010b0b200141384f047f2001103620016a0520010b41016a21020b20032002360220200341206a410472103720042002102a200420002903101033200428020c200441106a28020047044010000b2004280204210520042802002106200341206a10282101200041186a22001029210741011019220241fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009103420012802040520080b20012802006a2002410110381a2001200128020441016a3602042001200241016a200720026b6a102a20012000102b0240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b2006200520022001280204100b200128020c22020440200120023602100b200428020c22010440200420013602100b200341406b24000b880101037f4198084101360200419c082802002100034020000440034041a00841a0082802002201417f6a220236020020014101484504404198084100360200200020024102746a22004184016a280200200041046a2802001102004198084101360200419c0828020021000c010b0b41a0084120360200419c08200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104820024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104820024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000102241012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020bd70501097f230041e0006b22022400024002402000280204450d0020002802002d000041c001490d00200241386a2000410110442104200241286a200041001044210820042802042100200241c8006a4101722109034020082802042000464100200428020822032008280208461b0d02200241106a20002003411c102e2100200210452107024002402002280214044020022802102d000041c001490d010b200241c8006a10451a0c010b200241d8006a200010232000102f21030240024002400240200228025822000440200228025c220520034f0d010b41002100200241d0006a41003602002002420037034841002106410021050c010b200241d0006a4100360200200242003703482000200520032003417f461b22066a21052006410a4b0d010b200220064101743a0048200921030c010b200641106a417071220a101921032002200636024c2002200a410172360248200220033602500b034020002005470440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020022d0000410171450440200241003b01000c010b200228020841003a00002002410036020420022d0000410171450d00200241003602000b200241086a2200200241d0006a28020036020020022002290348370300200241c8006a10462001200241c8006a200710122203280200450440411c101922052002290300370210200541186a200028020036020020071046200120022802482003200510140b20042004280204220020042802086a410020001b22003602042004280200220304402004200336020820002003103221052004027f200428020422074504404100210341000c010b410021034100200428020822062005490d001a200620052005417f461b210320070b2200ad2003ad42208684370204200441002004280200220520036b2203200320054b1b3602000c0105200441003602080c010b000b000b10000b200241e0006a24000b2101017f2001102f220220012802044b044010000b20002001200110492002104a0b2701017f230041206b22022400200241086a200020014114102e10482100200241206a240020000b2801017f2000420020011005200028020422026a103942002001200220002802006a10062000103a0b2f01017f200028020820014904402001101f200028020020002802041038210220002001360208200020023602000b0bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203103d280200210120022003417f6a3602002007103e4180104f044020072000410c6a280200417c6a103c0b200141384f047f2001103620016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103d21000c010b02402007103e0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103f0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010192105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1040220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10412102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021042200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104322013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10412102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021042200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103f0c010b20042001410175410120011b200320051041210241802010192106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104022013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104121032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031042200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021042052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104322013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104121062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061042200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007103b200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b1e01017f03402000044020004108762100200141016a21010c010b0b20010bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000103b200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103c200441106a24000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3601017f200028020820014904402001101f200028020020002802041038210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1039200120002802006a22012002200110020c010b0b0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104022023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10412103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031042200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001101a0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101921040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001101a0b20020be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001103120004100200428020c2201200428020822022001103222032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b190020004200370200200041086a41003602002000104620000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b3501017f230041106b220041b0880436020c41a408200028020c41076a417871220036020041a808200036020041ac083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010492000102f6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b1b01004180080b14696e6974006164645f736574006765745f736574"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ADD_SET = "add_set"; - - public static final String FUNC_GET_SET = "get_set"; - - protected InitWithSetParams(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InitWithSetParams(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Set inSet) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inSet)); - return deployRemoteCall(InitWithSetParams.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Set inSet) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inSet)); - return deployRemoteCall(InitWithSetParams.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Set inSet) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inSet)); - return deployRemoteCall(InitWithSetParams.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Set inSet) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(inSet)); - return deployRemoteCall(InitWithSetParams.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall add_set(Set inSet) { - final WasmFunction function = new WasmFunction(FUNC_ADD_SET, Arrays.asList(inSet), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_set(Set inSet, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_SET, Arrays.asList(inSet), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_set() { - final WasmFunction function = new WasmFunction(FUNC_GET_SET, Arrays.asList(), Set.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {String.class}, - Set.class, - Set.class)); - return executeRemoteCall(function, Set.class); - } - - public static InitWithSetParams load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InitWithSetParams(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InitWithSetParams load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InitWithSetParams(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithStruct.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithStruct.java deleted file mode 100644 index 96704e40bc..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithStruct.java +++ /dev/null @@ -1,92 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InitWithStruct extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60027f7f0060017f017f60017f0060027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f017f60047f7f7f7f0060027f7e0060017f017e60037e7e7f006000017f60017e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000034544060403000003070002020101060105040a0a020102010100010d0009020100030203060705030504000200090005030200010002010500000100050702050404060101080405017001010105030100020608017f0141d088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002f06696e766f6b6500190a885a440400104d0b3401017f230041206b22032400200341086a2001100f1a20032002290300370318200041186a200341086a1010200341206a24000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101821022000200136020420002004410172360200200020023602080b200220032001104c200120026a41003a000020000b7e01027f230041206b2203240002402000280204220220002802084904402002200110112000200028020441186a3602040c010b200341086a2000200220002802006b41186d220241016a10122002200041086a10132202280208200110112002200228020841186a360208200020021014200210150b200341206a24000b2a0020002001290200370200200041086a200141086a28020036020020011016200020012903103703100b3001017f2001200028020820002802006b41186d2200410174220220022001491b41aad5aad500200041d5aad52a491b0b4c01017f2000410036020c200041106a2003360200200104402001101721040b2000200436020020002004200241186c6a220236020820002004200141186c6a36020c2000200236020420000b900101027f200028020421022000280200210303402002200346450440200128020441686a200241686a220210112001200128020441686a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141686a22013602080c010b0b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b0900200041186c10180b0b002000410120001b101a0bd20502057f017e230041a0016b22002400104d10072201101a22021008200041206a200041086a20022001101b22014100101c02400240200041206a101d2205500d00418008101e20055104402001101f200041206a102010210c020b418508101e200551044020004180016a10222102200042003703900120011023410347044010000b200041206a20014101101c200041206a20021024200041206a20014102101c2000200041206a101d37039001200041206a10202101200041d8006a2002100f21022000200029039001370370200041206a2002200041f0006a100e200110210c020b419008101e20055104402001101f200041206a102021022000413c6a28020021032000280238210420004180016a10252201200320046b41186dad220510261027200120051028200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210210c020b41a008101e2005520d0020011023410247044010000b200041206a20014101101c200041206a102902400240200041206a102a450d002000280224450d0020002802202d000041c001490d010b10000b20004180016a200041206a102b200028028401220141024f044010000b20002802800121020340200104402001417f6a210120022d00002103200241016a21020c010b0b200041206a10202102200041c8006a200041206a280218200341ff017141186c6a100f1a200041d8006a1025210120004198016a410036020020004190016a420037030020004188016a4200370300200042003703800120004180016a200041f0006a200041c8006a100f102c21032000280280012104200341046a102d200120041027200120004180016a200041c8006a100f102e220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210210c010b10000b102f200041a0016a24000b9b0101047f230041106b220124002001200036020c2000047f41c008200041086a2202411076220041c0082802006a220336020041bc0841bc08280200220420026a41076a417871220236020002400240200341107420024d044041c008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103a41086a0541000b2100200141106a240020000b0c00200020012002411c10300bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103d20012003280208200328020c103236020c20032001103d410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410301a200341106a24000f0b20032001103d41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103210502001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b2201240020001029024002402000102a450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000102b200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001023410147044010000b0bad06010a7f230041a0016b2204240020004200370218200042aebed3dfedeebab3583703102000410036020820004200370200200041206a4100360200200441206a1025220620002903101028200628020c200641106a28020047044010000b200041186a21080240200628020022032006280204220510092207450d002007101821020340200120026a41003a00002007200141016a2201470d000b2003200520022001100a417f460440410021010c010b02400240200441086a200241016a200120026a2002417f736a101b2202280204450d0020022802002d000041c001490d002002102321012000280220200028021822036b41186d2001490440200820044188016a2001200028021c20036b41186d200041206a101322011014200110150b200441f8006a2002410110312101200441e8006a200241001031210520012802042102034020052802042002464100200128020822032005280208461b0d02200441d0006a20022003411c10302102200441386a1022210320044188016a20024100101c20044188016a2003102420044188016a20024101101c200420044188016a101d3703482008200441386a101020012001280204220220012802086a410020021b22023602042001280200220304402001200336020820022003103221092001027f2001280204220a4504404100210341000c010b410021034100200128020822022009490d001a200220092009417f461b2103200a0b2202ad2003ad42208684370204200141002001280200220920036b2203200320094b1b3602000c0105200141003602080c010b000b000b10000b200721010b200628020c22020440200620023602100b024020010d002000411c6a210220002802042203200028020022076b41186d22052000280220200028021822016b41186d4d04402005200228020020016b41186d22064b044020072007200641186c6a2205200110331a20052003200210340c020b2008200720032001103310350c010b200104402008103620004100360220200042003702180b20002008200510122205101722013602182000200136021c20002001200541186c6a36022020072003200210340b200441a0016a240020000b9505010a7f230041f0006b22012400200141186a10252205200029031010261027200520002903101028200528020c200541106a28020047044010000b200528020421092005280200210a200110252103200141e8006a4100360200200141e0006a4200370300200141d8006a420037030020014200370350027f20002802182000411c6a2802004604402001410136025041010c010b200141d0006a41001037200028021c200028021822026b2104037f2004047f200141d0006a41001037200141d0006a200141406b2002100f102c220620022903101038200641011037200441686a2104200241186a21020c0105200141d0006a4101103720012802500b0b0b2106200141d0006a410472102d41011018220241fe013a0000200328020c200341106a28020047044010000b200241016a21072003280204220441016a220820032802084b047f20032008103920032802040520040b20032802006a20024101103a1a2003200328020441016a3602042003200620026b20076a10272003200028021c20002802186b41186d103b2107200028021c200028021822026b2104200141d0006a410472210803402004044020074102103b210620014100360268200142003703602001420037035820014200370350200141d0006a200141406b2002100f102c200229031010382006200128025010272006200141306a2002100f102e200229031010282008102d200441686a2104200241186a21020c010b0b0240200328020c2003280210460440200328020021020c010b100020032802002102200328020c2003280210460d0010000b200a200920022003280204100b200328020c22020440200320023602100b200528020c22020440200520023602100b200041186a103c2000103c200141f0006a24000b190020004200370200200041086a41003602002000101620000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103d200128020c210003402000450d01200141002001280208220320032000103222046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10221a0c010b200241186a2000102b2000103e21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101821032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1016200241206a24000b29002000410036020820004200370200200041001039200041146a41003602002000420037020c20000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001038200128020021022001410472102d200141206a240020020b1300200028020820014904402000200110390b0b2801017f2000420020011005200028020422026a103f42002001200220002802006a1006200010400b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001029200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001103e2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104120026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110420c010b20000b2201200128020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001043200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011044200441106a24000b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a103f20042001200220002802006a10042000104020000b880101037f41ac08410136020041b0082802002100034020000440034041b40841b4082802002201417f6a2202360200200141014845044041ac084100360200200020024102746a22004184016a280200200041046a28020011020041ac08410136020041b00828020021000c010b0b41b408412036020041b008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104e20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104e20024d0d0020034104710440100020000f0b200042003702000b20000be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001103d20004100200428020c2201200428020822022001103222032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a2000200141141030104e2100200241206a240020000be40201087f200120006b2109200021070340200220066a21012006200946450440024020012007460d00200020066a220341046a28020020032d00002204410176200441017122081b2104200341016a2105200341086a280200210a410a2103200a200520081b210820012d0000410171220504402001280200417e71417f6a21030b200420034d0440027f20050440200141086a2802000c010b200141016a0b210320040440200320082004104b0b200320046a41003a000020012d00004101710440200141046a20043602000c020b200120044101743a00000c010b416f2105200341e6ffffff074d0440410b20034101742203200420042003491b220341106a4170712003410b491b21050b20051018220320082004104c200141046a200436020020012005410172360200200141086a2003360200200320046a41003a00000b200141106a2007290310370300200641186a2106200741186a21070c010b0b20010b4601017f200120006b2101034020010440200228020022032000100f1a200320002903103703102002200228020041186a360200200141686a2101200041186a21000c010b0b0b0900200020013602040b0b002000200028020010350bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031042280200210120022003417f6a360200200710454180104f044020072000410c6a280200417c6a10440b200141384f047f2001104120016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002104221000c010b0240200710450d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10460c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010182105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1047220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10482102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021049200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104a22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10482102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021049200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10460c010b20042001410175410120011b200320051048210241802010182106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104722013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104821032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031049200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021049052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104a22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104821062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061049200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071043200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b880102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002104120026a0520020b41016a21020b200041186a28020022030440200041086a280200200041146a2802002003104221000b2000200028020020026a3602000b2f01017f200028020820014904402001101a20002802002000280204103a210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410180b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001103a1a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a103f41004100200120002802006a10022000104020000b0e0020002802000440200010360b0b2101017f2001103e220220012802044b044010000b200020012001104f200210500bff0201037f200028020445044041000f0b2000102941012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3601017f200028020820014904402001101a20002802002000280204103a210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a103f200120002802006a22012002200110020c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104722023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10482103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031049200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001104b0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101821040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001104b0b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103a1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b100020020440200020012002103a1a0b0b3501017f230041106b220041d0880436020c41b808200028020c41076a417871220036020041bc08200036020041c0083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000104f2000103e6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b3101004180080b2a696e6974006164645f766563746f72006765745f766563746f725f73697a65006765745f766563746f72"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ADD_VECTOR = "add_vector"; - - public static final String FUNC_GET_VECTOR_SIZE = "get_vector_size"; - - public static final String FUNC_GET_VECTOR = "get_vector"; - - protected InitWithStruct(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InitWithStruct(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InitWithStruct.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InitWithStruct.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InitWithStruct.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InitWithStruct.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall add_vector(String one_name, Uint64 one_age) { - final WasmFunction function = new WasmFunction(FUNC_ADD_VECTOR, Arrays.asList(one_name,one_age), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_vector(String one_name, Uint64 one_age, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_VECTOR, Arrays.asList(one_name,one_age), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_vector_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTOR_SIZE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall get_vector(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTOR, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public static InitWithStruct load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InitWithStruct(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InitWithStruct load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InitWithStruct(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithVector.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithVector.java deleted file mode 100644 index 20e435166b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InitWithVector.java +++ /dev/null @@ -1,174 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint16; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InitWithVector extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001591060027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60037f7f7f017f60000060047f7f7f7f017f60027f7e0060047f7f7f7f0060017f017e60037e7e7f006000017f60027f7e017f60017e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000903656e760d706c61746f6e5f72657475726e00000367660600000004070002000404070002030002000300000000030503020001010105060105030a0a010201000102020200010001010802000d020006070004010800000000020503000e0101000002000004020800010500000300020100050702050306030101090405017001030305030100020608017f0141808a040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974004606696e766f6b65002d0908010041010b0221230a8f7f660400106e0b2a01017f230041106b2202240020022001330100370308200041186a200241086a100f200241106a24000b820101037f230041206b2203240002402000280204220220002802084904402000200241086a360204200220012903003703000c010b200341086a2000200220002802006b410375220241016a10112002200041086a10122202280208220420012903003703002002200441086a360208200020021013200210140b200341206a24000b8c0101047f230041206b2203240002402000411c6a2802002202200041206a22042802004704402000200241086a36021c200220012903003703000c010b200341086a200041186a2205200220002802186b410375220041016a10112000200410122200280208220220012903003703002000200241086a360208200520001013200010140b200341206a24000b3101017f2001200028020820002802006b2200410275220220022001491b41ffffffff01200041037541ffffffff00491b0b4c01017f2000410036020c200041106a2003360200200104402001102b21040b200020043602002000200420024103746a22023602082000200420014103746a36020c2000200236020420000b870101037f200120012802042000280204200028020022046b22036b2202360204200341004a0440200220042003102c1a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141786a22013602080c010b0b0b8c0101047f230041206b220224000240200041c4006a2802002203200041c8006a22042802004704402003200110161a20002000280244410c6a3602440c010b200241086a200041406b2205200320002802406b410c6d220041016a10172000200410182200280208200110161a20002000280208410c6a3602082005200010192000101a0b200241206a24000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102a21022000200136020420002004410172360200200020023602080b200220032001106f200120026a41003a000020000b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0b4c01017f2000410036020c200041106a2003360200200104402001102921040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000b6701017f20002802002000280204200141046a101f200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0b980602067f017e230041306b22082400200041c4006a2802002205200041406b220428020022032002410c6c6a200520036b410c6d22062002491b21020240200041c8006a220728020020054b0440200220054604402005200110161a20002000280244410c6a3602440c020b2002200520026b41746a410c6d2206410c6c6a2103200521040340200320054f04400240200541746a21042006410c6c210303402003450d012004200220036a41746a101c200441746a2104200341746a21030c000b000b0520042003290200370200200441086a200341086a2802003602002003101d20002000280244410c6a22043602442003410c6a21030c010b0b2002200220014d047f2001410c6a2001200028024420014b1b0520010b101e0c010b024020082004200641016a1017200220036b410c6d2007101822032802082205200328020c2206470d0020032802042204200328020022074b0440200420076b410c6d41016a417e6d2207410c6c210603402004200546450440200420066a2004101c2004410c6a21040c010b0b200320042007410c6c22066a22053602082003200328020420066a3602040c010b200841186a200620076b2204410c6d410174410120041b22042004410276200341106a28020010182105200328020821072003280204210403402004200746450440200528020822062004290200370200200641086a200441086a2802003602002004101d20052005280208410c6a3602082004410c6a21040c010b0b2003290200210920032005290200370200200520093702002003290208210920032005290208370208200520093702082005101a200328020821050b2005200110161a20032003280208410c6a36020820002802402002200341046a101f2000280244210503402002200546450440200328020822042002290200370200200441086a200241086a2802003602002002101d20032003280208410c6a3602082002410c6a21020c010b0b200028024021022000200328020436024020032002360204200029024421092000200329020837024420032009370208200320023602002003101a0b200841306a24000b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a2802003602002001101d0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b3401017f2000200147044020002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10240b0b4a01017f03402000200146450440200228020041746a2203200141746a2201290200370200200341086a200141086a2802003602002001101d2002200228020041746a3602000c010b0b0b0900200020013602040b0b00200041406b200110220b9d0101037f2000200147044020012802042204200128020022036b410c6d22022000280208200028020022016b410c6d4d04402002200028020420016b410c6d22024b0440200320032002410c6c6a2202200110251a20022004200041046a10260f0b2000200320042001102510200f0b200104402000102720004100360208200042003702000b2000200020021017102820032004200041046a10260b0be00101027f0240200128020420012802006b410c6d417f6a220141044d044041930821020240024002400240200141016b0e0400010203050b41910821020c040b418f0821020c030b418d0821020c020b418b0821020c010b41800821020b200041e8006a210320022101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002200417f73200041fffdfb776a7141808182847871450d000b0340200041ff0171450d01200141016a2d00002100200141016a21010c000b000b20032002200120026b10240bd40101027f410a210320002d0000410171220404402000280200417e71417f6a21030b200320024f0440027f2004044020002802080c010b200041016a0b210320020440200320012002106d0b200220036a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2104200341e6ffffff074d0440410b200341017422032002200320024b1b220341106a4170712003410b491b21040b2004102a220320012002106f200020023602042000200441017236020020002003360208200220036a41003a00000b26000340200020014645044020022000101e2002410c6a21022000410c6a21000c010b0b20020b2e00034020002001464504402002280200200010161a20022002280200410c6a3602002000410c6a21000c010b0b0b0b002000200028020010200b2301017f200020011029220236020020002002360204200020022001410c6c6a3602080b09002000410c6c102a0b0b002000410120001b102e0b09002000410374102a0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb40802057f017e230041d0016b22002400106e10072201102e22021008200041d8006a200041086a20022001102f22014100103002400240200041d8006a10312205500d004195081032200551044020011033410247044010000b200041d8006a200141011030200041d8006a103402400240200041d8006a1035450d00200028025c450d0020002802582d000041c001490d010b10000b200041386a200041d8006a1036200028023c220141034f044010000b200028023821020340200104402001417f6a210120022d00002003410874722103200241016a21020c010b0b200041d8006a10372101200020033b01382001200041386a100e200110380c020b419a081032200551044020011033410247044010000b200041d8006a200141011030200041d8006a10312105200041d8006a10372101200020053703382001200041386a1010200110380c020b41a50810322005510440200110392000200041d8006a10372201411c6a28020020012802186b410375ad370338200041386a103a200110380c020b41b50810322005510440200041003a00202001200041206a103b2000200041d8006a1037220128021820002d00204103746a290300370338200041386a103a200110380c020b41c00810322005510440200041206a103c210220011033410247044010000b200041d8006a200141011030200041d8006a2002103d200041d8006a10372201200041386a200210161015200110380c020b41d90810322005510440200041386a103c2102200041003a004420011033410347044010000b200041d8006a200141011030200041d8006a2002103d200041d8006a2001410210302000200041d8006a103e3a0044200041d8006a10372201200041206a2002101620002d0044101b200110380c020b41ef081032200551044020011039200041d8006a10372201220241406b200241c4006a28020041746a1020200110380c020b4187091032200551044020011039200041d8006a1037220241406b2802002103200241c4006a2802002104200041206a103f2101200041d0006a4100360200200041c8006a4200370300200041406b420037030020004200370338200041386a200420036b410c6d41ff0171ad2205104020002802382103200041386a4104721041200120031042200120051043220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210380c020b419a0910322005510440200041003a00202001200041206a103b200041386a200041d8006a1037220141406b28020020002d0020410c6c6a10161a200041386a1044200110380c020b41b909103220055104402001410110450c020b41c309103220055104402001410210450c020b41ce0910322005520d0020011039200041386a200041d8006a1037220141e8006a10161044200110380c010b10000b1046200041d0016a24000b9b0101047f230041106b220124002001200036020c2000047f41f809200041086a2202411076220041f8092802006a220336020041f40941f409280200220420026a41076a417871220236020002400240200341107420024d044041f809200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102c41086a0541000b2100200141106a240020000b0c00200020012002411c10470bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104820012003280208200328020c104936020c200320011048410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410471a200341106a24000f0b20032001104841002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104910722001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b22012400200010340240024020001035450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001036200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001048200128020c210003402000450d01200141002001280208220320032000104922046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001034200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001104a2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bbc0801097f23004180016b2201240020004200370218200042dfd0b1bfe098ecc9033703102000410036020820004200370200200041206a4100360200200141d0006a103f22022000290310104b200228020c200241106a28020047044010000b200041186a21030240200228020022062002280204220810092207450d002001410036022020014200370318200141186a2007104c2006200820012802182204200128021c220920046b100a417f470440024002402001200441016a20092004417f736a102f2205280204450d0020052802002d000041c001490d002005103321062000280220200028021822086b41037520064904402003200141e8006a2006200028021c20086b410375200041206a101222061013200610140b200141406b2005104d200141306a2005104e03402001280244200128023446044020012802482001280238460d030b200141e8006a200141406b104f2001200141e8006a10313703282003200141286a100f200141406b10500c000b000b10000b200721050b2004450d002001200436021c0b200228020c22040440200220043602100b024020050d002000411c6a210220002802042207200028020022056b41037522062000280220200028021822046b4103754d04402006200228020020046b41037522034b04402005200520034103746a2203200410511a20032007200210520c020b200220052007200410513602000c010b2004044020004100360220200042003702180b20002003200610112204102b22033602182000200336021c2000200320044103746a36022020052007200210520b2000420037022841002104200041c8006a4100360200200041406b22074200370200200041386a220242ffa1fff3f5b4f7e1ff00370300200041306a4100360200200141e8006a103f22032002290300104b200328020c200341106a28020047044010000b0240200328020022062003280204220810092205450d00200141003602082001420037030020012005104c20062008200128020022022001280204220920026b100a417f470440200141d0006a200241016a20092002417f736a102f20071053200521040b2002450d00200120023602040b200328020c22020440200320023602100b20044504402007200041286a10220b200041d0006a103c2109200041e0006a220242b1e2e7d0e0bbf394997f370300200041e8006a103c2107200141e8006a103f22032002290300104b200328020c200341106a28020047044010000b0240200328020022062003280204220810092205450440410021040c010b41002104200141003602082001420037030020012005104c20062008200128020022022001280204220620026b100a417f470440200141d0006a200241016a20062002417f736a102f2007103d200521040b2002450d00200120023602040b200328020c22020440200320023602100b200445044020072009101e0b20014180016a240020000bcd0901087f230041e0006b22032400200341406b103f2202200041e0006a22012903001054104220022001290300104b200041e8006a2105200228020c200241106a28020047044010000b2002280204210620022802002108200341286a103f21012005105521072001200341106a1056220410572001200720042802046a20042802006b1042200120032005101610580240200128020c200141106a280200460440200141046a2105200128020021070c010b200141046a2105100020012802002107200128020c2001280210460d0010000b2008200620072005280200100b200428020022050440200420053602040b200128020c22040440200120043602100b200228020c22010440200220013602100b200341286a103f2205200041386a22012903001054104220052001290300104b200528020c200541106a28020047044010000b2005280204210820052802002107200341106a103f2104200341d8006a4100360200200341d0006a4200370300200341c8006a42003703002003420037034002402000280240200041c4006a280200460440200341406b10590c010b200341406b4100105a2000280244210220002802402101034020012002460440200341406b4101105a05200341406b200320011016105b2001410c6a21010c010b0b0b20032802402101200341406b4104721041200420031056220610572004200120062802046a20062802006b10422004200028024420002802406b410c6d105c210220002802442104200028024021010340200120044704402002200341406b2001101610582001410c6a21010c010b0b0240200228020c200241106a280200460440200241046a2101200228020021040c010b200241046a2101100020022802002104200228020c2002280210460d0010000b2007200820042001280200100b200628020022010440200620013602040b200228020c22010440200220013602100b200528020c22010440200520013602100b200041406b105d200041286a105d200341286a103f220520002903101054104220052000290310104b200528020c200541106a28020047044010000b2005280204210820052802002107200341106a103f2104200341d8006a4100360200200341d0006a4200370300200341c8006a420037030020034200370340024020002802182000411c6a280200460440200341406b10590c010b200341406b4100105a200028021c210220002802182101034020012002460440200341406b4101105a05200341406b2001290300105e200141086a21010c010b0b0b20032802402101200341406b41047210412004200341406b1056220610572004200120062802046a20062802006b10422004200028021c20002802186b410375105c2102200028021c21042000280218210103402001200447044020022001290300104b200141086a21010c010b0b0240200228020c200241106a280200460440200241046a2101200228020021040c010b200241046a2101100020022802002104200228020c2002280210460d0010000b2007200820042001280200100b200628020022010440200620013602040b200228020c22010440200220013602100b200528020c22010440200520013602100b2000280218220104402000200136021c0b200028020022010440200020013602040b200341e0006a24000b0e0020001033410147044010000b0b5f01027f230041206b22022400200241086a103f220120002903001054104220012000290300104b200128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b200241206a24000b3701017f230041206b2202240020001033410247044010000b200241086a2000410110302001200241086a103e3a0000200241206a24000b190020004200370200200041086a41003602002000101d20000ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a103c1a0c010b200241186a200010362000104a21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102a21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a101c200241206a24000b7d01037f230041106b22012400200010340240024020001035450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001036200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b2900200041003602082000420037020020004100105f200041146a41003602002000420037020c20000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002106020026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002106121000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001062200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011063200441106a24000b13002000280208200149044020002001105f0b0b2a01017f2000420020011005200028020422026a106542002001200220002802006a10062000106620000b6001027f230041306b22022400200241186a103f22012000105510422001200241086a200010161058200128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b200241306a24000bbd0101027f230041a0016b220224002002410036028801200242003703800120001033410247044010000b200241086a200041011030200241086a20024180016a1053200241086a10372103200241003602980120024200370390012002280284012002280280016b2200044020024190016a2000410c6d102820022802800120022802840120024190016a41047210260b200241086a20024190016a200111000020024190016a105d2003103820024180016a105d200241a0016a24000b880101037f41e409410136020041e8092802002100034020000440034041ec0941ec092802002201417f6a2202360200200141014845044041e4094100360200200020024102746a22004184016a280200200041046a28020011020041e409410136020041e80928020021000c010b0b41ec09412036020041e809200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000107020024f0d002003410471044010000c010b200042003702000b02402003411071450d002000107020024d0d0020034104710440100020000f0b200042003702000b20000b2101017f2001104a220220012802044b044010000b2000200120011071200210720b2701017f230041206b22022400200241086a200020014114104710702100200241206a240020000bff0201037f200028020445044041000f0b2000103441012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b09002000200110431a0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102a21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001102c1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b0a0020002001410110640b0a0020002001410010640b160020002001280204200141086a280200411c10471a0bb50102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a20014100200420021049107220002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b2501017f200120006b2201410375210320010440200220002001106d0b200220034103746a0b2800200120006b220141014e0440200228020020002001102c1a2002200228020020016a3602000b0be90201047f230041e0006b22022400024002402000280204450d0020002802002d000041c001490d002000103321032001280208200128020022046b410c6d20034904402001200241106a2003200128020420046b410c6d200141086a1018220310192003101a0b200241386a2000104d200241286a2000104e200141086a21050340200228023c200228022c46044020022802402002280230460d030b200241106a200241386a104f200241106a2002103c2203103d024020012802042200200128020849044020002002290300370200200041086a200241086a2802003602002003101d20012001280204410c6a3602040c010b200241c8006a2001200020012802006b410c6d220041016a10172000200510182100200228025022042002290300370200200441086a200241086a2802003602002003101d20022002280250410c6a3602502001200010192000101a0b200241386a10500c000b000b10000b200241e0006a24000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000105e2001280200210220014104721041200141206a240020020b5901017f230041306b22012400200141286a4100360200200141206a4200370300200141186a420037030020014200370310200141106a200120001016105b20012802102100200141106a4104721041200141306a240020000b3a01017f200041003602082000420037020020004101102a2201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105f20002802040520020b20002802006a20032001102c1a2000200028020420016a3602040b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a106520042001200220002802006a1004200010660b3901017f027f200041186a28020022010440200041086a280200200041146a280200200110610c010b20000b2201200128020041016a3602000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031061280200210120022003417f6a360200200710674180104f044020072000410c6a280200417c6a10630b200141384f047f2001106020016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002106121000c010b0240200710670d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10680c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020102a2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1069220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a106a2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002106b200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a106c22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a106a2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002106b200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10680c010b20042001410175410120011b20032005106a2102418020102a2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a106922013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200106a21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003106b200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002106b052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a106c22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210106a21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006106b200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071062200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002106020026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001106121000b2000200028020020036a3602000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374102a0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001102c1a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a106541004100200120002802006a10022000106620000b0e0020002802000440200010270b0b08002000200110400b2f01017f200028020820014904402001102e20002802002000280204102c210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0be50101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104820004100200428020c2201200428020822022001104922032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b3601017f200028020820014904402001102e20002802002000280204102c210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1065200120002802006a22012002200110020c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a106922023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a106a2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003106b200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001106d0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102a21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001106d0b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002102c1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041808a0436020c41f009200028020c41076a417871220036020041f409200036020041f8093f003602000b100020020440200020012002102c1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010712000104a6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0beb0101004180080be301626967207468616e20350035003400330032003100696e6974006164645f766563746f72006765745f766563746f725f73697a65006765745f766563746f7200766563746f725f707573685f6261636b5f656c656d656e7400766563746f725f696e736572745f656c656d656e7400766563746f725f706f705f6261636b5f656c656d656e74006765745f737472766563746f725f73697a65006765745f766563746f725f656c656d656e745f62795f706f736974696f6e00766563746f72466f7200766563746f7243617365006765745f766563746f72436173655f726573756c74"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_VECTORFOR = "vectorFor"; - - public static final String FUNC_ADD_VECTOR = "add_vector"; - - public static final String FUNC_GET_VECTOR_SIZE = "get_vector_size"; - - public static final String FUNC_GET_VECTOR = "get_vector"; - - public static final String FUNC_VECTOR_PUSH_BACK_ELEMENT = "vector_push_back_element"; - - public static final String FUNC_VECTOR_INSERT_ELEMENT = "vector_insert_element"; - - public static final String FUNC_VECTOR_POP_BACK_ELEMENT = "vector_pop_back_element"; - - public static final String FUNC_GET_STRVECTOR_SIZE = "get_strvector_size"; - - public static final String FUNC_GET_VECTOR_ELEMENT_BY_POSITION = "get_vector_element_by_position"; - - public static final String FUNC_VECTORCASE = "vectorCase"; - - public static final String FUNC_GET_VECTORCASE_RESULT = "get_vectorCase_result"; - - protected InitWithVector(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InitWithVector(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall vectorFor(String[] inVector) { - final WasmFunction function = new WasmFunction(FUNC_VECTORFOR, Arrays.asList(inVector, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall vectorFor(String[] inVector, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_VECTORFOR, Arrays.asList(inVector, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Uint16 age) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(age)); - return deployRemoteCall(InitWithVector.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Uint16 age) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(age)); - return deployRemoteCall(InitWithVector.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint16 age) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(age)); - return deployRemoteCall(InitWithVector.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint16 age) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(age)); - return deployRemoteCall(InitWithVector.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall add_vector(Uint64 one_age) { - final WasmFunction function = new WasmFunction(FUNC_ADD_VECTOR, Arrays.asList(one_age), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_vector(Uint64 one_age, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_VECTOR, Arrays.asList(one_age), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_vector_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTOR_SIZE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall get_vector(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTOR, Arrays.asList(index), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall vector_push_back_element(String value) { - final WasmFunction function = new WasmFunction(FUNC_VECTOR_PUSH_BACK_ELEMENT, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall vector_push_back_element(String value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_VECTOR_PUSH_BACK_ELEMENT, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall vector_insert_element(String value, Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_VECTOR_INSERT_ELEMENT, Arrays.asList(value,index), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall vector_insert_element(String value, Uint8 index, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_VECTOR_INSERT_ELEMENT, Arrays.asList(value,index), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall vector_pop_back_element() { - final WasmFunction function = new WasmFunction(FUNC_VECTOR_POP_BACK_ELEMENT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall vector_pop_back_element(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_VECTOR_POP_BACK_ELEMENT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_strvector_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_STRVECTOR_SIZE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall get_vector_element_by_position(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTOR_ELEMENT_BY_POSITION, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall vectorCase(String[] inVector) { - final WasmFunction function = new WasmFunction(FUNC_VECTORCASE, Arrays.asList(inVector, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall vectorCase(String[] inVector, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_VECTORCASE, Arrays.asList(inVector, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_vectorCase_result() { - final WasmFunction function = new WasmFunction(FUNC_GET_VECTORCASE_RESULT, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static InitWithVector load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InitWithVector(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InitWithVector load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InitWithVector(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InnerFunction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InnerFunction.java deleted file mode 100644 index 3d33ef6aa0..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InnerFunction.java +++ /dev/null @@ -1,92 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InnerFunction extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000014c0e60017f017f60017f0060027f7f0060000060017f017e60037f7f7f0060037f7e7e0060027f7f017f6000017e60037e7e7f006000017f60037f7f7f017f60047f7f7f7f017f60027e7e017f02bc020e03656e760c706c61746f6e5f70616e6963000303656e7610706c61746f6e5f6761735f7072696365000003656e7610706c61746f6e5f74696d657374616d70000803656e7613706c61746f6e5f626c6f636b5f6e756d626572000803656e7610706c61746f6e5f6761735f6c696d6974000803656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000703656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000903656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000a03656e7610706c61746f6e5f6765745f696e707574000103656e760d706c61746f6e5f72657475726e000203222103010005060604040403000c020701000401000700010202010203020b030000060405017001040405030100020608017f0141e088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000e0f5f5f66756e63735f6f6e5f65786974002806696e766f6b6500170909010041010b031415160ab22e210400102b0be90502097f047e230041306b22052400200541206a2102200541206a10012101034020010440200b420886200a42388884210b2001417f6a21012002310000200a42088684210a200241016a21020c010b0b20004200370200200041086a41003602004100210103402001410c470440200020016a4100360200200141046a21010c010b0b0240027f20002d00002201410171450440200141017622024128200241284b1b41106a41f001712101410a0c010b200028020422024128200241284b1b41106a41707122012000280200417e712203460d012003417f6a0b210641002001417f6a20064d2001101022031b0d0020032000280208200041016a20002d0000220641017122041b2000280204200641017620041b41016a10112000200336020820002002360204200020014101723602000b200041016a2107200541186a21080340200541106a200a200b101220052005290310220c2008290300220d10132005290300200a7ca74180086a2d00002106024002400240027f20002d000022034101712204450440410a210220034101760c010b20002802002203417e71417f6a210220002802040b220120024604402000280208200720034101711b2109416f2104200241e6ffffff074d0440410b20024101742203200241016a220420042003491b220341106a4170712003410b491b21040b20041010220320092002101120002004410172360200200020033602080c010b2004450d01200028020821030b2000200141016a3602040c010b2000200141017441026a3a0000200721030b200120036a220141003a0001200120063a0000200a4209562101200b4200522102200b502103200c210a200d210b2001200220031b0d000b0240200028020420002d00002201410176200141017122011b2202450d0020022000280208200720011b22006a417f6a21010340200020014f0d0120002d00002102200020012d00003a0000200120023a00002001417f6a2101200041016a21000c000b000b200541306a24000b0b002000410120001b10180b100020020440200020012002102a1a0b0b3701017f230041106b22032400200320012002102e200329030021012000200341086a29030037030820002001370300200341106a24000b7701017e20002001427f7e200242767e7c2001422088220242ffffffff0f7e7c200242f6ffffff0f7e200142ffffffff0f83220142f6ffffff0f7e22034220887c22024220887c200142ffffffff0f7e200242ffffffff0f837c22024220887c3703082000200342ffffffff0f832002422086843703000b040010030b040010040b040010020ba60802087f017e23004180016b22032400102b100b220010182201100c0240200341086a20012000411c10192202280208450440200241146a2802002100200228021021010c010b200341386a2002101a20022003280238200328023c101b36020c200341e0006a2002101a410021002002027f410020032802602204450d001a410020032802642206200228020c2205490d001a200620052005417f461b210020040b2201360210200241146a2000360200200241003602080b200341e0006a20012000411410192200101c024002402000280204450d002000101c0240200028020022042c0000220141004e044020010d010c020b200141807f460d00200141ff0171220541b7014d0440200028020441014d04401000200028020021040b20042d00010d010c020b200541bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021040b200120046a2d0000450d010b2000280204450d0020042d000041c001490d010b10000b2000101d2206200028020422044b04401000200028020421040b20002802002107024002400240200404404100210520072c00002200417f4a0d01027f200041ff0171220541bf014d04404100200041ff017141b801490d011a200541c97e6a0c010b4100200041ff017141f801490d001a200541897e6a0b41016a21050c010b4101210520070d00410021000c010b41002100200520066a20044b0d0020042006490d004100210120042005490d01200520076a2101200420056b20062006417f461b22004109490d0110000c010b410021010b0340200004402000417f6a210020013100002008420886842108200141016a21010c010b0b024002402008500d00418b08101e20085104402002101f0c020b419008101e20085104402002101f200341286a100f200341386a10202100200341f8006a4100360200200341f0006a4200370300200341e8006a42003703002003420037036041012101024002400240200341d0006a200341286a1021220428020420032d00502202410176200241017122051b220241014d0440200241016b0d032004280208200441016a20051b2c0000417f4c0d010c030b200241374b0d010b200241016a21010c010b2002102220026a41016a21010b20032001360260200341e0006a41047210232000200110242000200341e0006a200341286a10212201280208200141016a20032d0060220241017122041b22052001280204200241017620041b22011007200028020422026a102520052001200220002802006a100820001026200028020c200041106a28020047044010000b20002802002000280204100d200028020c2201450d02200020013602100c020b419a08101e20085104402002410110270c020b41a708101e20085104402002410210270c020b41b108101e2008520d002002410310270c010b10000b102820034180016a24000b9b0101047f230041106b220124002001200036020c2000047f41d008200041086a2202411076220041d0082802006a220336020041cc0841cc08280200220420026a41076a417871220236020002400240200341107420024d044041d008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102a41086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000102c20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000102c20024d0d0020034104710440100020000f0b200042003702000b20000b7201047f2001101d220220012802044b044010000b2001102d21032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a2000200141141019102c2100200241206a240020000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101c41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000101a41012103200128020c2100034020000440200141002001280208220220022000101b22046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10000b200141106a24000b29002000410036020820004200370200200041001029200041146a41003602002000420037020c20000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101021022000200136020420002004410172360200200020023602080b2002200320011011200120026a41003a000020000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b1300200028020820014904402000200110290b0b3601017f200028020820014904402001101820002802002000280204102a210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210056a1025200120002802006a22012002200110060c010b0b0b920202027f037e230041406a220324002000101f41012100200320011104002104200341086a1020210241002101200341386a4100360200200341306a4200370300200341286a42003703002003420037032020044280015a044020042105034020052006845045044020064238862005420888842105200141016a2101200642088821060c010b0b200141384f047f2001102220016a0520010b41016a21000b20032000360220200341206a41047210232002200010242002420020041009200228020422016a102542002004200120022802006a100a20021026200228020c200241106a28020047044010000b20022802002002280204100d200228020c22010440200220013602100b200341406b24000b880101037f41bc08410136020041c0082802002100034020000440034041c40841c4082802002201417f6a2202360200200141014845044041bc084100360200200020024102746a22004184016a280200200041046a28020011010041bc08410136020041c00828020021000c010b0b41c408412036020041c008200028020022003602000c010b0b0b2f01017f200028020820014904402001101820002802002000280204102a210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3501017f230041106b220041e0880436020c41c808200028020c41076a417871220036020041cc08200036020041d0083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000102d2000101d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0bbe0202027f047e2000027e2002500440420021022001420a800c010b0240027e200141fd00200279a76b220341c000460d001a2003413f4d0440200241c00020036bad22058620012003ad2207888421062002200788210820012005862107420021050c020b200241800120036bad2205862001200341406aad22068884210720022006882106200120058621050c010b21072002210641c00021030b03402003044020084201862006423f888422022002427f8542007c20064201862007423f88842206427f852202420a7c200254ad7c423f8722024200837d20062002420a83220154ad7d2108200620017d210620074201862005423f888421072003417f6a21032004ad20054201868421052002a741017121040c010b0b20074201862005423f888421022004ad2005420186427e83840b370300200020023703080b0b4101004180080b3a3031323334353637383900696e6974006761735f707269636500626c6f636b5f6e756d626572006761735f6c696d69740074696d657374616d70"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GAS_PRICE = "gas_price"; - - public static final String FUNC_BLOCK_NUMBER = "block_number"; - - public static final String FUNC_GAS_LIMIT = "gas_limit"; - - public static final String FUNC_TIMESTAMP = "timestamp"; - - protected InnerFunction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InnerFunction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InnerFunction.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InnerFunction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InnerFunction.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InnerFunction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall gas_price() { - final WasmFunction function = new WasmFunction(FUNC_GAS_PRICE, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall block_number() { - final WasmFunction function = new WasmFunction(FUNC_BLOCK_NUMBER, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall gas_limit() { - final WasmFunction function = new WasmFunction(FUNC_GAS_LIMIT, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall timestamp() { - final WasmFunction function = new WasmFunction(FUNC_TIMESTAMP, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static InnerFunction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InnerFunction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InnerFunction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InnerFunction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InnerFunction_1.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InnerFunction_1.java deleted file mode 100644 index 2a7bf1b5e0..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InnerFunction_1.java +++ /dev/null @@ -1,100 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InnerFunction_1 extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001671260027f7f0060017f0060017f017f60037f7f7f0060027f7f017f60000060017f017e60037f7e7e0060037f7f7f017f6000017e60047f7f7f7f0060077f7f7f7f7f7f7f0060027f7e0060027e7f0060037e7e7f006000017f60047f7f7f7f017f60027e7e017f02cb020f03656e760c706c61746f6e5f70616e6963000503656e7611706c61746f6e5f626c6f636b5f68617368000d03656e760f706c61746f6e5f636f696e62617365000103656e760e706c61746f6e5f62616c616e6365000403656e760a706c61746f6e5f676173000903656e7613706c61746f6e5f63616c6c65725f6e6f6e6365000903656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65001103656e760f706c61746f6e5f726c705f75313238000e03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000f03656e7610706c61746f6e5f6765745f696e707574000103656e760d706c61746f6e5f72657475726e0000033a390506060c08040204030b0201010000000200030100030707030405021003060601000201020100080002040501020001000400030502020a070405017001030305030100020608017f0141808a040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000f0f5f5f66756e63735f6f6e5f65786974003a06696e766f6b6500290908010041010b0210110aac6039040010430b040010040b040010050bb608010a7f230041d0006b220224002001200241206a1001200241186a4200370300200241106a4200370300200241086a420037030020024200370300034020064120470440200220066a41003a0000200641016a21060c010b0b2002200241206a412010131a200241206a419b0910142103200241c8006a41003602002002420037034002400240200328020420022d0020220441017620044101711b220641406b2205410b4f0440200641d0006a4170712204101521072002200536024420022004410172360240200220073602480c010b200220054101743a0040200241406b41017221072005450d010b200720051016210720022d002021040b200520076a41003a0000200341016a21082003280208210a2003280204200441fe0171410176200441017122091b2103027f20022d00402204410171220b450440410a2107200441017622042006200620044b1b0c010b2002280240417e71417f6a210720022802442204200620042006491b0b2105200a200820091b2108024002400240027f02400240200520046b20076a20034f04402002280248200241406b410172200b1b21074100210a20032005460440200321090c050b200420056b220b450440200521090c050b20032005490d01200720084f0d02200420076a20084d0d02200520076a20084d04402008200320056b6a21080c030b2007200820051017200320086a2108200320056b21032005210a41000c030b200241406b2007200320046a20056b20076b200420052003200810180c050b2007200820031017200320076a200520076a200b1017200521090c030b20050b21092007200a6a220520036a200520096a200b10170b2007200a6a2008200310170b200320096b20046a2103024020022d00404101710440200220033602440c010b200220034101743a00400b200320076a41003a00000b200241406b4101722104410021030340200341204704402002280248200420022d00404101711b20066a200220036a22052d0000410476419c096a2d00003a00002002280248200420022d00404101711b20066a41016a20052d0000410f71419c096a2d00003a0000200341016a2103200641026a21060c010b0b41ad09101921060240027f20022d00402203410171220745044020034101762103410a0c010b200228024421032002280240417e71417f6a0b220520036b20064f04402006450d012002280248200420071b2204027f20034504404100210341ad090c010b200420066a200420031017200641ad096a41ad09200320046a41ad094b1b41ad09200441ad094d1b0b20061017200320066a2106024020022d00404101710440200220063602440c010b200220064101743a00400b200420066a41003a00000c010b200241406b2005200320066a20056b20034100200641ad0910180b20002002290340370200200041086a200241c8006a280200360200200241406b101a200241d0006a24000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b1f0020004200370200200041086a41003602002000200120011019102720000b0b002000410120001b102a0bb90301027f02402001450d00200041303a0000200020016a2203417f6a41303a000020014103490d00200041303a0002200041303a00012003417d6a41303a00002003417e6a41303a000020014107490d00200041303a00032003417c6a41303a000020014109490d002000410020006b41037122026a220341b0e0c081033602002003200120026b417c7122026a2201417c6a41b0e0c0810336020020024109490d00200341b0e0c08103360208200341b0e0c08103360204200141786a41b0e0c08103360200200141746a41b0e0c0810336020020024119490d00200341b0e0c08103360218200341b0e0c08103360214200341b0e0c08103360210200341b0e0c0810336020c200141706a41b0e0c081033602002001416c6a41b0e0c08103360200200141686a41b0e0c08103360200200141646a41b0e0c081033602002002200341047141187222026b2101200220036a2102034020014120490d01200242b0e0c08183868c9830370300200241186a42b0e0c08183868c9830370300200241106a42b0e0c08183868c9830370300200241086a42b0e0c08183868c9830370300200241206a2102200141606a21010c000b000b20000b0f002002044020002001200210420b0ba80101027f027f20002d0000410171044020002802080c010b200041016a0b2108416f2107200141e6ffffff074d0440410b20014101742207200120026a220120012007491b220141106a4170712001410b491b21070b2007101521012005044020012006200510240b200320046b22030440200120056a200420086a200310240b200020013602082000200320056a220536020420002007410172360200200120056a41003a00000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b4c01017f230041206b2201240020011002200041106a4100360000200041086a420037000020004200370000200141003a001f20002001411f6a101c20002001411410131a200141206a24000b2601017f03402002411446450440200020026a20012d00003a0000200241016a21020c010b0b0ba815020c7f047e230041c0016b22022400200241386a4180081014210a2001280208200141016a220c20012d0000220341017122041b21082001280204200341017620041b21094100210341012105024003402005410171410020032009491b0440200320086a2d00002204415f6a41ff017141de004921052006200441bf7f6a41ff0171411a4972210620072004419f7f6a41ff0171411a49722107200341016a21030c01050240200520062007714101737121062009450d002009210303402003450d01200320086a21052003417f6a220421032005417f6a2d00004131470d000b0c030b0b0b417f21040b0240024002402006410171450d00200441076a20094b0d00200441016a4102490d00200941da004b0d0041002103200241003602b801200242003703b001200241b0016a20092004417f7322076a101e4101210602400240024003402003200128020420012d00002205410176200541017122051b20076a4f044002402006410171450d0541002103200241a0016a101f21060340200320044604402006280204220720022d00a00122034101762208200341017122051b2204200a28020420022d00382203410176200341017122031b470d05200a280208200a41016a20031b210320050d02200641016a21052008210403402004450440200821070c080b20052d000020032d0000470d06200341016a2103200541016a21052004417f6a21040c000b000520062001280208200c20012d00004101711b20036a2c000022054120722005200541bf7f6a411a491b4118744118751020200341016a21030c010b000b000b0520022802b00120036a2001280208200c20051b20046a20036a41016a2d00004190086a2d000022053a00002006200541ff0147712106200341016a21030c010b0b2004450d012006280208210503402004450d0220052d000020032d0000470d01200341016a2103200541016a21052004417f6a21040c000b000b200241286a4200370300200241306a410036020020024200370320200241003a003420022802b0012203450d03200220033602b4010c030b410021032002410036026820024200370360200241e0006a2007410174410172101e200641016a210703402003200628020420022d00a0012204410176200441017122041b2205490440200228026020036a2006280208200720041b20036a2d000022044105763a00002002280260200628020420022d00a001220541017620054101711b6a20036a41016a2004411f713a0000200341016a21030c010b0b200228026020056a41003a000020022802642105024020022802b401220420022802b00122036b22064101480d0020062002280268220820056b4c0440034020032004460d02200520032d00003a00002002200228026441016a2205360264200341016a21030c000b000b200241306a200241e8006a360200410021072002410036022c2005200228026022016b2109200520066a20016b2206200820016b2208410174220120012006491b41ffffffff07200841ffffffff03491b220804402008101521070b200220073602202002200720096a22063602282002200720086a36022c20022006360224200241206a4104722107034020032004470440200620032d00003a00002002200228022841016a2206360228200341016a21030c010b0b200228026020052007102102402002280264220420056b220341004c0440200228022821050c010b2002200228022820052003101320036a2205360228200228026421040b2002280260210320022002280224360260200220033602242002200536026420022004360228200228026821042002200228022c3602682002200436022c20022003360220200241206a1022200228026421050b200242003702642002280260210420024100360260200520046b21054101210303402005044020042d000041002003411d764101716b41b3c5d1d0027141002003411c764101716b41dde788ea037141002003411b764101716b41fab384f5017141002003411a764101716b41ed9cc2b20271410020034119764101716b41b2afa9db0371200341057441e0ffffff037173737373737321032005417f6a2105200441016a21040c010b0b20034101470d00410021032002410036028001200242003703784100210520022802b401417a6a220620022802b00122046b2207044020071015220d210b034020042006470440200b20042d00003a0000200b41016a210b200441016a21040c010b0b200b21050b20024180016a210c410021084100210a02400340200a2005200d6b4f04400240200341044c044041ff01410820036b76200871450d010b200228027821030c030b05200a200d6a2d0000200841057441e01f71722108200341056a21030340200341084e04402008200341786a2203762105200228027c22062002280280012207490440200620053a00002002200228027c41016a36027c0c02052002200c360230410021042002410036022c2006200228027822016b220641016a2209200720016b2207410174220120012009491b41ffffffff07200741ffffffff03491b220704402007101521040b20022004360220200420066a220620053a00002002200420076a36022c200220063602242002200641016a360228200241f8006a200241206a1023200241206a10220c020b000b0b200a41016a210a200b21050c010b0b200228027c200228027822036b4114470d0041002103200241f0006a4100360200200241e8006a420037030020024200370360200241003a0020200241e0006a200241206a101c200228027c200228027822046b21050340024020032005460d00200341134b0d00200241e0006a20036a200320046a2d00003a0000200341016a21030c010b0b200241306a200241f0006a280200360200200241286a200241e8006a29030037030020022002290360370320200241013a0034200404402002200436027c0b20022802b00122030440200220033602b4010b200241e0006a2104200241206a200241e0006a10032103034020030440200f420886200e42388884210f2003417f6a21032004310000200e42088684210e200441016a21040c010b0b0240027f2000101f22062d00002203410171450440200341017622044128200441284b1b41106a41f001712103410a0c010b200628020422044128200441284b1b41106a41707122032006280200417e712205460d012005417f6a0b210741002003417f6a20074d2003101522051b0d0020052006280208200641016a20062d0000220741017122081b2006280204200741017620081b41016a10242006200536020820062004360204200620034101723602000b200241186a21070340200241106a200e200f102520022002290310221020072903002211102620062002290300200e7ca74190096a2c00001020200e4209562103200f4200522104200f5021052010210e2011210f2003200420051b0d000b200628020420062d00002203410176200341017122031b2204450d0420042006280208200641016a20031b22036a417f6a21040340200320044f0d0520032d00002105200320042d00003a0000200420053a00002004417f6a2104200341016a21030c000b000b2003450d002002200336027c0b20022802b0012203450d00200220033602b4010b200241286a4200370300200241306a410036020020024200370320200241003a00340b2000419b0910141a0b200241c0016a24000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110282106200241186a200041086a3602002002410036021441002101200604402006101521010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1023200241086a10220c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000101a20000bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b20031015220220062005102420002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b270020022002280200200120006b22016b2202360200200141014e044020022000200110131a0b0b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b6701017f20002802002000280204200141046a1021200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b10002002044020002001200210131a0b0b3701017f230041106b220324002003200120021047200329030021012000200341086a29030037030820002001370300200341106a24000b7701017e20002001427f7e200242767e7c2001422088220242ffffffff0f7e7c200242f6ffffff0f7e200142ffffffff0f83220142f6ffffff0f7e22034220887c22024220887c200142ffffffff0f7e200242ffffffff0f837c22024220887c3703082000200342ffffffff0f832002422086843703000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101521032000200236020420002004410172360200200020033602080b2003200120021024200220036a41003a00000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0be60802077f027e230041d0016b220024001043100c2201102a2202100d200041e8006a200020022001411c102b22014100102c02400240200041e8006a102d2207500d0041b009102e20075104402001102f0c020b41b509102e20075104402001410110300c020b41b909102e20075104402001410210300c020b41bf09102e200751044020011031410247044010000b200041e8006a20014101102c200041e8006a200041e8006a102d1012200041e8006a10320c020b41ca09102e20075104402001102f200041206a101b200041386a10332104200041e0006a200041306a2802002202360200200041d8006a200041286a29030022073703004100210120004180016a4100360200200041f8006a4200370300200041f0006a42003703002000200029032022083703502000420037036820004190016a200737030020004198016a2002360200200041a8016a2007370300200041b0016a20023602002000200837038801200020083703a001200041c8016a2002360200200041c0016a2007370300200020083703b801410121030240034020014114460d01200041b8016a20016a2102200141016a210120022d0000450d000b411521030b20002003360268200041e8006a410472103420042003103520004198016a200041306a280200220136020020004190016a200041286a290300220737030020002000290320220837038801200041a8016a2007370300200041b0016a2001360200200041c0016a2007370300200041c8016a2001360200200020083703a001200020083703b801200041f8006a2001360200200041f0006a2007370300200020083703682004200041e8006a41141036220128020c200141106a28020047044010000b20012802002001280204100e200128020c2202450d02200120023602100c020b41d309102e2007520d00200041b8016a101f210420011031410247044010000b200041e8006a20014101102c02400240200028026c044020002802682d000041c001490d010b200041386a101f1a0c010b200041a0016a200041e8006a1037200041e8006a10382102024002400240024020002802a0012201044020002802a401220320024f0d010b41002101200041406b410036020020004200370338410021030c010b200041406b4100360200200042003703382001200320022002417f461b22056a21032005410a4b0d010b200020054101743a0038200041386a41017221020c010b200541106a4170712206101521022000200536023c20002006410172360238200020023602400b034020012003470440200220012d00003a0000200241016a2102200141016a21010c010b0b200241003a00000b024020002d00b801410171450440200041003b01b8010c010b20002802c00141003a0000200041003602bc0120002d00b801410171450d00200041003602b8010b200041c0016a200041406b280200360200200020002903383703b801200041386a101a200041e8006a200041386a20041039101d200041e8006a10320c010b10000b103a200041d0016a24000b9b0101047f230041106b220124002001200036020c2000047f41f409200041086a2202411076220041f4092802006a220336020041f00941f009280200220420026a41076a417871220236020002400240200341107420024d044041f409200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101341086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104420024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104420024d0d0020034104710440100020000f0b200042003702000b20000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103f20012003280208200328020c104036020c20032001103f410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102b1a200341106a24000f0b20032001103f41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104010462001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b220324002000103b024002402000280204450d002000103b0240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a20001037200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001031410147044010000b0b920202027f037e230041406a220324002000102f41012100200320011106002104200341086a1033210241002101200341386a4100360200200341306a4200370300200341286a42003703002003420037032020044280015a044020042105034020052006845045044020064238862005420888842105200141016a2101200642088821060c010b0b200141384f047f2001103c20016a0520010b41016a21000b20032000360220200341206a4104721034200220001035200242002004100a200228020422016a103d42002004200120022802006a100b2002103e200228020c200241106a28020047044010000b20022802002002280204100e200228020c22010440200220013602100b200341406b24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103f200128020c210003402000450d01200141002001280208220320032000104022046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bae0201067f230041e0006b22022400200241186a10332104200241d8006a4100360200200241d0006a4200370300200241c8006a42003703002002420037034041012101024002400240200241306a20001039220528020420022d00302203410176200341017122061b220341014d0440200341016b0d032005280208200541016a20061b2c0000417f4c0d010c030b200341374b0d010b200341016a21010c010b2003103c20036a41016a21010b20022001360240200241406b41047210342004200110352004200241086a200010392201280208200141016a20012d0000220041017122031b2001280204200041017620031b1036220128020c200141106a28020047044010000b20012802002001280204100e200128020c22000440200120003602100b200241e0006a24000b29002000410036020820004200370200200041001041200041146a41003602002000420037020c20000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b1300200028020820014904402000200110410b0b2a01017f2000200120021008200028020422036a103d20012002200320002802006a10092000103e20000bd50101047f200110382204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bff0201037f200028020445044041000f0b2000103b41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102720000b880101037f41e009410136020041e4092802002100034020000440034041e80941e8092802002201417f6a2202360200200141014845044041e0094100360200200020024102746a22004184016a280200200041046a28020011010041e009410136020041e40928020021000c010b0b41e809412036020041e409200028020022003602000c010b0b0b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b3601017f200028020820014904402001102a200028020020002802041013210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210066a103d200120002802006a22012002200110070c010b0b0b2101017f20011038220220012802044b044010000b2000200120011045200210460b2701017f230041206b22022400200241086a200020014114102b10442100200241206a240020000b2f01017f200028020820014904402001102a200028020020002802041013210220002001360208200020023602000b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210131a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041808a0436020c41ec09200028020c41076a417871220036020041f009200036020041f4093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001045200010386a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000bbe0202027f047e2000027e2002500440420021022001420a800c010b0240027e200141fd00200279a76b220341c000460d001a2003413f4d0440200241c00020036bad22058620012003ad2207888421062002200788210820012005862107420021050c020b200241800120036bad2205862001200341406aad22068884210720022006882106200120058621050c010b21072002210641c00021030b03402003044020084201862006423f888422022002427f8542007c20064201862007423f88842206427f852202420a7c200254ad7c423f8722024200837d20062002420a83220154ad7d2108200620017d210620074201862005423f888421072003417f6a21032004ad20054201868421052002a741017121040c010b0b20074201862005423f888421022004ad2005420186427e83840b370300200020023703080b0bdd0102004180080b03617478004190080bcc01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff3031323334353637383900003031323334353637383961626364656600307800696e697400676173006e6f6e636500626c6f636b5f6861736800636f696e626173650062616c616e63654f66"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_NONCE = "nonce"; - - public static final String FUNC_GAS = "gas"; - - public static final String FUNC_BLOCK_HASH = "block_hash"; - - public static final String FUNC_COINBASE = "coinbase"; - - public static final String FUNC_BALANCEOF = "balanceOf"; - - protected InnerFunction_1(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InnerFunction_1(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InnerFunction_1.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InnerFunction_1.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InnerFunction_1.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InnerFunction_1.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall nonce() { - final WasmFunction function = new WasmFunction(FUNC_NONCE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall gas() { - final WasmFunction function = new WasmFunction(FUNC_GAS, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall block_hash(Uint64 bn) { - final WasmFunction function = new WasmFunction(FUNC_BLOCK_HASH, Arrays.asList(bn), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall coinbase() { - final WasmFunction function = new WasmFunction(FUNC_COINBASE, Arrays.asList(), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public RemoteCall balanceOf(String addr) { - final WasmFunction function = new WasmFunction(FUNC_BALANCEOF, Arrays.asList(addr), String.class); - return executeRemoteCall(function, String.class); - } - - public static InnerFunction_1 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InnerFunction_1(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InnerFunction_1 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InnerFunction_1(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InnerFunction_2.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InnerFunction_2.java deleted file mode 100644 index 3b86877871..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InnerFunction_2.java +++ /dev/null @@ -1,149 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InnerFunction_2 extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001520e60027f7f0060017f017f60017f0060037f7f7f0060000060027f7f017f60037f7e7e0060037f7f7f017f60047f7f7f7f0060017f017e60077f7f7f7f7f7f7f0060027f7e006000017f60047f7f7f7f017f02b0020e03656e760c706c61746f6e5f70616e6963000403656e760d706c61746f6e5f6f726967696e000203656e760f706c61746f6e5f7472616e73666572000703656e7611706c61746f6e5f63616c6c5f76616c7565000103656e760b706c61746f6e5f73686133000803656e760e706c61746f6e5f64657374726f79000103656e760d706c61746f6e5f726576657274000403656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000303656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e760d706c61746f6e5f72657475726e0000033e3d040b000002010103060600000302070505030a010202020000030300050301050200070001040d030909020001000002010004000501030401010800060405017001030305030100020608017f0141b08a040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000e0f5f5f66756e63735f6f6e5f65786974004006696e766f6b6500330908010041010b0226250aff653d040010450bb30102017f017e230041306b2202240002402001500d00200241086a2000101020022d001c450d002002410036022820024200370320200241206a4120101120022802242002280220417f736a210003402000417f470440200228022020006a20013c0000200342388620014208888421012000417f6a2100200342088821030c010b0b200241086a20022802202200200228022420006b10021a20022802202200450d00200220003602240b200241306a24000b2101017f230041106b22022400200020012002418008101d1027200241106a24000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b20002001102a2106200241186a200041086a3602002002410036021441002101200604402006101421010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1029200241086a101b0c010b200520014d0d002000200120046a3602040b200241206a24000bd50302067f047e230041306b22042400200441206a2102200441206a10032101034020010440200842088620074238888421082001417f6a210120023100002007420886842107200241016a21020c010b0b0240027f2000101322032d00002201410171450440200141017622024128200241284b1b41106a41f001712101410a0c010b200328020422024128200241284b1b41106a41707122012003280200417e712200460d012000417f6a0b210541002001417f6a20054d2001101422001b0d0020002003280208200341016a20032d0000220541017122061b2003280204200541017620061b41016a10152003200036020820032002360204200320014101723602000b200441186a21050340200441106a2007200810162004200429031022092005290300220a10172003200429030020077ca741cb096a2c000010182007420956210120084200522102200850210020092107200a21082001200220001b0d000b0240200328020420032d00002201410176200141017122011b2202450d0020022003280208200341016a20011b22016a417f6a21020340200120024f0d0120012d00002100200120022d00003a0000200220003a00002002417f6a2102200141016a21010c000b000b200441306a24000b190020004200370200200041086a41003602002000102220000b0b002000410120001b10320b100020020440200020012002101c1a0b0b3701017f230041106b22032400200320012002104a200329030021012000200341086a29030037030820002001370300200341106a24000b7701017e20002001427f7e200242767e7c2001422088220242ffffffff0f7e7c200242f6ffffff0f7e200142ffffffff0f83220142f6ffffff0f7e22034220887c22024220887c200142ffffffff0f7e200242ffffffff0f837c22024220887c3703082000200342ffffffff0f832002422086843703000bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b20031014220220062005101520002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000baa0a01097f230041e0006b220224002002410036022820024200370320027f200128020420012d00002203410176200341017122041b220341014804404100210341000c010b2001280208200141016a20041b2101200241406b200241286a3602002002410036023c200220031014220436023820022004360230200220043602342002200320046a36023c034020030440200420012d00003a00002002200228023841016a22043602382003417f6a2103200141016a21010c010b0b200241206a200241306a4100101a200241306a101b2002280220210320022802240b21012003200120036b200241306a41201004200241186a4200370300200241106a4200370300200241086a42003703002002420037030041002103034020034120470440200220036a41003a0000200341016a21030c010b0b2002200241306a4120101c1a200241306a41b609101d2101200241d8006a41003602002002420037035002400240200128020420022d0030220441017620044101711b220341406b2205410b4f0440200341d0006a4170712204101421062002200536025420022004410172360250200220063602580c010b200220054101743a0050200241d0006a41017221062005450d010b20062005101e210620022d003021040b200520066a41003a0000200141016a2107200128020821092001280204200441fe0171410176200441017122081b2101027f20022d00502204410171220a450440410a2106200441017622042003200320044b1b0c010b2002280250417e71417f6a210620022802542204200320042003491b0b21052009200720081b2107024002400240027f02400240200520046b20066a20014f04402002280258200241d0006a410172200a1b21064100210920012005460440200121080c050b200420056b220a450440200521080c050b20012005490d01200620074f0d02200420066a20074d0d02200520066a20074d04402007200120056b6a21070c030b200620072005101f200120076a2107200120056b21012005210941000c030b200241d0006a2006200120046a20056b20066b200420052001200710200c050b200620072001101f200120066a200520066a200a101f200521080c030b20050b2108200620096a220520016a200520086a200a101f0b200620096a20072001101f0b200120086b20046a2101024020022d00504101710440200220013602540c010b200220014101743a00500b200120066a41003a00000b200241d0006a4101722104410021010340200141204704402002280258200420022d00504101711b20036a200120026a22052d000041047641b7096a2d00003a00002002280258200420022d00504101711b20036a41016a20052d0000410f7141b7096a2d00003a0000200141016a2101200341026a21030c010b0b41c809102121030240027f20022d00502201410171220645044020014101762101410a0c010b200228025421012002280250417e71417f6a0b220520016b20034f04402003450d012002280258200420061b2204027f20014504404100210141c8090c010b200320046a20042001101f200341c8096a41c809200120046a41c8094b1b41c809200441c8094d1b0b2003101f200120036a2103024020022d00504101710440200220033602540c010b200220034101743a00500b200320046a41003a00000c010b200241d0006a2005200120036a20056b20014100200341c80910200b20002002290350370200200041086a200241d8006a280200360200200241d0006a1022200228022022030440200220033602240b200241e0006a24000b8d0101017f20002802002002200141046a102b200028020420026b220341014e0440200128020820022003101c1a2001200128020820036a3602080b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b1f0020004200370200200041086a41003602002000200120011021102820000bb90301027f02402001450d00200041303a0000200020016a2203417f6a41303a000020014103490d00200041303a0002200041303a00012003417d6a41303a00002003417e6a41303a000020014107490d00200041303a00032003417c6a41303a000020014109490d002000410020006b41037122026a220341b0e0c081033602002003200120026b417c7122026a2201417c6a41b0e0c0810336020020024109490d00200341b0e0c08103360208200341b0e0c08103360204200141786a41b0e0c08103360200200141746a41b0e0c0810336020020024119490d00200341b0e0c08103360218200341b0e0c08103360214200341b0e0c08103360210200341b0e0c0810336020c200141706a41b0e0c081033602002001416c6a41b0e0c08103360200200141686a41b0e0c08103360200200141646a41b0e0c081033602002002200341047141187222026b2101200220036a2102034020014120490d01200242b0e0c08183868c9830370300200241186a42b0e0c08183868c9830370300200241106a42b0e0c08183868c9830370300200241086a42b0e0c08183868c9830370300200241206a2102200141606a21010c000b000b20000b0f002002044020002001200210440b0ba80101027f027f20002d0000410171044020002802080c010b200041016a0b2108416f2107200141e6ffffff074d0440410b20014101742207200120026a220120012007491b220141106a4170712001410b491b21070b2007101421012005044020012006200510150b200320046b22030440200120056a200420086a200310150b200020013602082000200320056a220536020420002007410172360200200120056a41003a00000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0bc00201067f230041e0006b22022400200241186a102c2104200241d8006a4100360200200241d0006a4200370300200241c8006a42003703002002420037034041012103024002400240200241306a2000102d220528020420022d00302201410176200141017122061b220141014d0440200141016b0d030c010b20014138490d01200141016a210303402001450d03200341016a2103200141087621010c000b000b2005280208200541016a20061b2c0000417f4a0d010b200141016a21030b20022003360240200241406b410472102e20042003102f2004200241086a2000102d2201280208200141016a20012d0000220341017122001b2001280204200341017620001b1030220128020c200141106a28020047044010000b20012802002001280204100d200128020c22030440200120033602100b200241e0006a24000b2d01017f230041206b22012400200141086a2000101020012d001c0440200141086a10051a0b200141206a24000b210020004200370000200041106a4100360000200041086a4200370000200010010b7e01037f230041406a2201240020004200370000200041106a22024100360000200041086a22034200370000200141306a418008101d2104200141086a200141206a418408101d2004102720012d001c0440200020012903083700002002200141186a2802003600002003200141106a2903003700000b200141406b24000bd110010b7f23004180016b220424002001280208200141016a220c20012d0000220341017122061b21092001280204200341017620061b210a410021034101210502400340200541017141002003200a491b0440200320096a2d00002206415f6a41ff017141de004921052007200641bf7f6a41ff0171411a4972210720082006419f7f6a41ff0171411a49722108200341016a21030c0105024020052007200871410173712107200a450d00200a210303402003450d01200320096a21052003417f6a220621032005417f6a2d00004131470d000b0c030b0b0b417f21060b024002402007410171450d00200641076a200a4b0d00200641016a4102490d00200a41da004b0d00410021032004410036025020044200370348200441c8006a200a2006417f7322086a10114101210702400240024003402003200128020420012d00002205410176200541017122051b20086a4f044002402007410171450d0541002103200441386a101321070340200320064604402007280204220820042d003822034101762209200341017122051b2206200228020420022d00002203410176200341017122031b470d052002280208200241016a20031b210320050d02200741016a21052009210603402006450440200921080c080b20052d000020032d0000470d06200341016a2103200541016a21052006417f6a21060c000b000520072001280208200c20012d00004101711b20036a2c000022054120722005200541bf7f6a411a491b4118744118751018200341016a21030c010b000b000b05200428024820036a2001280208200c20051b20066a20036a41016a2d000041b0086a2d000022053a00002007200541ff0147712107200341016a21030c010b0b2006450d012007280208210503402006450d0220052d000020032d0000470d01200341016a2103200541016a21052006417f6a21060c000b000b20004200370000200041003a0014200041086a4200370000200041106a410036000020042802482203450d032004200336024c0c030b410021032004410036026020044200370358200441d8006a20084101744101721011200741016a210803402003200728020420042d00382206410176200641017122061b22054f450440200428025820036a2007280208200820061b20036a2d000022064105763a00002004280258200728020420042d0038220541017620054101711b6a20036a41016a2006411f713a0000200341016a21030c010b0b200428025820056a41003a0000200428025c21050240200428024c2206200428024822036b22074101480d0020072004280260220920056b4c0440034020032006460d02200520032d00003a00002004200428025c41016a220536025c200341016a21030c000b000b200441f8006a200441e0006a36020041002108200441003602742005200428025822016b210a200520076a20016b2207200920016b2209410174220120012007491b41ffffffff07200941ffffffff03491b220904402009101421080b2004200836026820042008200a6a22073602702004200820096a3602742004200736026c03402003200646450440200720032d00003a00002004200428027041016a2207360270200341016a21030c010b0b200441d8006a200441e8006a2005101a200441e8006a101b200428025c21050b2004420037025c2004280258210620044100360258200520066b21054101210303402005044020062d000041002003411d764101716b41b3c5d1d0027141002003411c764101716b41dde788ea037141002003411b764101716b41fab384f5017141002003411a764101716b41ed9cc2b20271410020034119764101716b41b2afa9db0371200341057441e0ffffff037173737373737321032005417f6a2105200641016a21060c010b0b20034101470d0041002103200441003602602004420037035841002105200428024c417a6a2207200428024822066b2208044020081014220d210b03402006200746450440200b20062d00003a0000200b41016a210b200641016a21060c010b0b200b21050b200441e0006a210c41002109410021020240034020022005200d6b4f04400240200341044c044041ff01410820036b76200971450d010b200428025821030c030b052002200d6a2d0000200941057441e01f71722109200341056a21030340200341084e04402009200341786a2203762105200428025c220720042802602208490440200720053a00002004200428025c41016a36025c0c02052004200c36027841002106200441003602742007200428025822016b220741016a220a200820016b220841017422012001200a491b41ffffffff07200841ffffffff03491b220804402008101421060b20042006360268200620076a220720053a00002004200620086a3602742004200736026c2004200741016a360270200441d8006a200441e8006a1029200441e8006a101b0c020b000b0b200241016a2102200b21050c010b0b200428025c200428025822036b4114470d00200441f8006a4100360200200441f0006a4200370300200442003703684100210303402003411446450440200441e8006a20036a41003a0000200341016a21030c010b0b200428025c200428025822066b21054100210303400240200341134b0d0020032005460d00200441e8006a20036a200320066a2d00003a0000200341016a21030c010b0b20002004290368370000200041013a0014200041106a200441f8006a280200360000200041086a200441f0006a290300370000200604402004200636025c0b20042802482203450d032004200336024c0c030b2003450d002004200336025c0b20042802482203450d002004200336024c0b20004200370000200041003a0014200041086a4200370000200041106a41003600000b20044180016a24000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101421032000200236020420002004410172360200200020033602080b2003200120021015200220036a41003a00000b6701017f20002802002000280204200141046a102b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b270020022002280200200120006b22016b2202360200200141014e0440200220002001101c1a0b0b29002000410036020820004200370200200041001031200041146a41003602002000420037020c20000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102820000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b1300200028020820014904402000200110310b0b9c0101017f2000200120021009200028020422036a104920012002200320002802006a100a0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210076a1049200120002802006a22012002200110080c010b0b20000b2f01017f200028020820014904402001103220002802002000280204101c210220002001360208200020023602000b0b9b0101047f230041106b220124002001200036020c2000047f41ac0a200041086a2202411076220041ac0a2802006a220336020041a80a41a80a280200220420026a41076a417871220236020002400240200341107420024d044041ac0a200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101c41086a0541000b2100200141106a240020000bf90402037f027e230041e0006b220024001045100b220110322202100c200041c8006a200020022001411c103422014100103502400240200041c8006a10362203500d0041d60910372003510440200110380c020b41db09103720035104402001410110390c020b41e00910372003510440200041186a10132102200042003703282001103a410347044010000b200041c8006a200141011035200041c8006a2002103b200041c8006a2001410210352000200041c8006a1036370328200041c8006a2002102d2000290328100f0c020b41e9091037200351044020011038200041c8006a1012200041c8006a10230c020b41ef0910372003510440200041386a101321022001200041386a103c200041c8006a200041186a2002102d1019200041c8006a10230c020b41f4091037200351044020011038230041106b22012400200141b009101d1023200141106a24000c020b41fc0910372003510440200110380c010b41820a103720035104402001103a410247044010000b200041c8006a200141011035200041c8006a103d02400240200041c8006a103e450d00200028024c450d0020002802482d000041c001490d010b10000b200041186a200041c8006a103f200028021c220141114f044010000b4200210320002802182102034020010440200442088620034238888421042001417f6a210120023100002003420886842103200241016a21020c010b0b420020034201837d2004423f86200342018884854201520d0210060c020b41890a10372003510440200041186a101321022001200041186a103c200041c8006a2002102d10240c020b41910a10372003520d002001410210390c010b10000b1040200041e0006a24000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104620024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104620024d0d0020034104710440100020000f0b200042003702000b20000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104120012003280208200328020c104236020c200320011041410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410341a200341106a24000f0b20032001104141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104210482001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b220124002000103d024002402000103e450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000103f200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000103a410147044010000b0bf90302037f027e230041c0016b220224002000103841012100200241106a200241086a2001110000200241286a102c2104200241d0006a200241206a2802002203360200200241c8006a200241186a290300220537030041002101200241f0006a4100360200200241e8006a4200370300200241e0006a42003703002002200229031022063703402002420037035820024180016a200537030020024188016a200336020020024198016a2005370300200241a0016a2003360200200220063703782002200637039001200241b8016a2003360200200241b0016a2005370300200220063703a8010240034020014114460d01200241a8016a20016a2103200141016a210120032d0000450d000b411521000b20022000360258200241d8006a410472102e20042000102f20024188016a200241206a280200220136020020024180016a200241186a290300220537030020022002290310220637037820024198016a2005370300200241a0016a2001360200200241b0016a2005370300200241b8016a20013602002002200637039001200220063703a801200241e8006a2001360200200241e0006a2005370300200220063703582004200241d8006a41141030220128020c200141106a28020047044010000b20012802002001280204100d200128020c22030440200120033602100b200241c0016a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001041200128020c210003402000450d01200141002001280208220320032000104222046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10131a0c010b200241186a2000103f2000104321030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101421032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1022200241206a24000b3401017f230041206b220224002000103a410247044010000b200241086a200041011035200241086a2001103b200241206a24000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000103d200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110432204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b880101037f41980a4101360200419c0a2802002100034020000440034041a00a41a00a2802002201417f6a2202360200200141014845044041980a4100360200200020024102746a22004184016a280200200041046a28020011020041980a4101360200419c0a28020021000c010b0b41a00a4120360200419c0a200028020022003602000c010b0b0b2101017f20011043220220012802044b044010000b2000200120011047200210480b2701017f230041206b22022400200241086a200020014114103410462100200241206a240020000bff0201037f200028020445044041000f0b2000103d41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002101c1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041b08a0436020c41a40a200028020c41076a417871220036020041a80a200036020041ac0a3f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001047200010436a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b3601017f200028020820014904402001103220002802002000280204101c210220002001360208200020023602000b200020013602040bbe0202027f047e2000027e2002500440420021022001420a800c010b0240027e200141fd00200279a76b220341c000460d001a2003413f4d0440200241c00020036bad22058620012003ad2207888421062002200788210820012005862107420021050c020b200241800120036bad2205862001200341406aad22068884210720022006882106200120058621050c010b21072002210641c00021030b03402003044020084201862006423f888422022002427f8542007c20064201862007423f88842206427f852202420a7c200254ad7c423f8722024200837d20062002420a83220154ad7d2108200620017d210620074201862005423f888421072003417f6a21032004ad20054201868421052002a741017121040c010b0b20074201862005423f888421022004ad2005420186427e83840b370300200020023703080b0b9f0201004180080b97026174780061747831667965737a75667877786b3632703436646a6e636a38367264353533736b70706839323677730000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff68656c6c6f000030313233343536373839616263646566003078003031323334353637383900696e69740061646472007472616e736665720076616c75650073686133007272657475726e0070616e6963007265766572740064657374726f79006f726967696e"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_DESTROY = "destroy"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_VALUE = "value"; - - public static final String FUNC_SHA3 = "sha3"; - - public static final String FUNC_RRETURN = "rreturn"; - - public static final String FUNC_PANIC = "panic"; - - public static final String FUNC_REVERT = "revert"; - - public static final String FUNC_ORIGIN = "origin"; - - public static final String FUNC_ADDR = "addr"; - - protected InnerFunction_2(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InnerFunction_2(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall destroy(String addr) { - final WasmFunction function = new WasmFunction(FUNC_DESTROY, Arrays.asList(addr), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall destroy(String addr, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DESTROY, Arrays.asList(addr), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InnerFunction_2.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InnerFunction_2.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InnerFunction_2.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InnerFunction_2.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall transfer(String addr, Uint64 amount) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFER, Arrays.asList(addr,amount), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall transfer(String addr, Uint64 amount, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFER, Arrays.asList(addr,amount), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall value() { - final WasmFunction function = new WasmFunction(FUNC_VALUE, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall sha3(String str) { - final WasmFunction function = new WasmFunction(FUNC_SHA3, Arrays.asList(str), String.class); - return executeRemoteCall(function, String.class); - } - - public void rreturn() { - throw new RuntimeException("cannot call constant function with void return type"); - } - - public RemoteCall panic() { - final WasmFunction function = new WasmFunction(FUNC_PANIC, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall panic(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PANIC, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall revert(Int64 flag) { - final WasmFunction function = new WasmFunction(FUNC_REVERT, Arrays.asList(flag), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall revert(Int64 flag, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_REVERT, Arrays.asList(flag), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall origin() { - final WasmFunction function = new WasmFunction(FUNC_ORIGIN, Arrays.asList(), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public RemoteCall addr() { - final WasmFunction function = new WasmFunction(FUNC_ADDR, Arrays.asList(), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public static InnerFunction_2 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InnerFunction_2(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InnerFunction_2 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InnerFunction_2(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InsertSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InsertSort.java deleted file mode 100644 index c518900815..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/InsertSort.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class InsertSort extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000015a1060027f7f0060017f017f60017f0060037f7f7f017f60000060037f7f7f0060027f7f017f60047f7f7f7f017f60047f7f7f7f0060037f7e7e0060017f017e60037f7f7e0060027f7e0060037e7e7f006000017f60027e7e017f02fd010b03656e760c706c61746f6e5f70616e6963000403656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000033d3c040b060005010301040103050201000a02010201000a010100000407010c0306090200000607000203000002090301000100030702030005040101080405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974002506696e766f6b6500130acf4f3c040010430bda0102077f017e230041106b220724002002a72109200128020022082106410121040340024020042009480440200820044103746a340200210a2006210320042105034020054101480440410021050c030b20032903002202200a570d022005417f6a2105200341086a2002370300200341786a21030c000b000b20072001100d21032000280218044020004200370218200041206a41003602000b200020032802003602182000411c6a2003290204370200200741106a24000f0b200820054103746a200a370300200641086a2106200441016a21040c000b000b3e01017f2000420037020020004100360208200128020420012802006b2202044020002002410375100e20012802002001280204200041046a100f0b20000b2301017f2000200110102202360200200020023602042000200220014103746a3602080b2800200120006b220141014e044020022802002000200110111a2002200228020020016a3602000b0b0900200041037410120bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b0b002000410120001b10140b850402057f017e230041f0006b22002400104310052201101422021006200041206a200041086a200220011015220341001016200041206a101702400240200041206a1018450d002000280224450d0020002802202d000041c001490d010b10000b200041d8006a200041206a1019200028025c220141094f044010000b200028025821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008101a20055104402003101b200041206a101c101d0c020b418508101a20055104402000420037036820004100360260200042003703582003101e410347044010000b200041206a200341011016200041206a200041d8006a101f200041206a2003410210162000200041206a1020370368200041206a101c2102200041206a200041c8006a200041d8006a100d22012000290368100c200128020022030440200120033602040b2002101d20002802582201450d022000200136025c0c020b418a08101a2005520d002003101b200041206a101c2103200041c8006a200041386a100d2102200041d8006a10212201200210221023200120021024200128020c200141106a28020047044010000b20012802002001280204100a200128020c22040440200120043602100b200228020022010440200220013602040b2003101d0c010b10000b1025200041f0006a24000b9b0101047f230041106b220124002001200036020c2000047f41a808200041086a2202411076220041a8082802006a220336020041a40841a408280200220420026a41076a417871220236020002400240200341107420024d044041a808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101141086a0541000b2100200141106a240020000b0c00200020012002411c10260bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102e20012003280208200328020c102f36020c20032001102e410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410261a200341106a24000f0b20032001102e41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102f10462001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001017200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110272204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101e410147044010000b0b810301087f230041306b22072400200042003702182000428debc585c3a7f9dbf7003703102000410036020820004200370200200041206a4100360200200741186a1021220320002903101028200328020c200341106a28020047044010000b200041186a21050240200328020022062003280204220810072204450d002004101221020340200120026a41003a00002004200141016a2201470d000b20062008200220011008417f460440410021010c010b2007200241016a200120026a2002417f736a10152005101f200421010b200328020c22020440200320023602100b024020010d002000411c6a210120002802042203200028020022046b41037522062000280220200028021822026b4103754d04402006200128020020026b41037522054b04402004200420054103746a2205200210291a200520032001100f0c020b200120042003200210293602000c010b2002044020004100360220200042003702180b200520052006102a100e200420032001100f0b200741306a240020000b9c03010a7f230041406a22022400200241086a10212103200241386a4100360200200241306a4200370300200241286a420037030020024200370320200241206a20002903104200102b20022802202101200241206a410472102c200320011023200320002903101028200328020c200341106a28020047044010000b2003280204210520032802002106200241206a10212101200041186a22071022210841011012220441fe013a0000200128020c200141106a28020047044010000b2001280204220941016a220a20012802084b047f2001200a102d20012802040520090b20012802006a2004410110111a2001200128020441016a3602042001200441016a200820046b6a10232001200710240240200128020c2001280210460440200128020021040c010b100020012802002104200128020c2001280210460d0010000b20062005200420012802041009200128020c22040440200120043602100b200328020c22010440200320013602100b2000280218220104402000411c6a20013602000b200028020022010440200020013602040b200241406b24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102e200128020c210003402000450d01200141002001280208220320032000102f22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bcb0302077f017e230041d0006b22042400024002402000280204450d0020002802002d000041c001490d002000101e21022001280208200128020022036b4103752002490440200120042002200128020420036b410375200141086a103022021031200210320b200441286a2000410110332102200441186a2000410010332106200141086a210720022802042100034020062802042000464100200228020822032006280208461b0d02200420002003411c1026102021090240200128020422002001280208490440200020093703002001200041086a3602040c010b200441386a2001200020012802006b410375220041016a102a20002007103021002004280240220320093703002004200341086a360240200120001031200010320b20022002280204220020022802086a410020001b22003602042002280200220304402002200336020820002003102f21052002027f200228020422004504404100210341000c010b410021034100200228020822082005490d001a200820052005417f461b210320000b2200ad2003ad42208684370204200241002002280200220520036b2203200320054b1b3602000c0105200241003602080c010b000b000b10000b200441d0006a24000ba40102027f027e230041106b22012400200010170240024020001018450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001019200128020c220041114f044010000b20012802082102034020000440200442088620034238888421042000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a2400420020034201837d2004423f86200342018884850b2900200041003602082000420037020020004100102d200041146a41003602002000420037020c20000bba0102027f027e230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300027f200028020020002802044604402001410136020041010c010b2001410010342000280204210220002802002100037f2000200246047f2001410110342001280200052001200029030022034201862003423f8722048520044201862003423f8884200485102b200041086a21000c010b0b0b21002001410472102c200141206a240020000b13002000280208200149044020002001102d0b0bf60202067f027e0240200128020420012802006b220204402002410375210220002802042106200041106a2802002203200041146a280200220449044020032002ad2006ad422086843702002000200028021041086a3602100c020b027f41002003200028020c22056b410375220741016a2203200420056b2204410275220520052003491b41ffffffff01200441037541ffffffff00491b2205450d001a200541037410120b2103200320074103746a22042002ad2006ad4220868437020020042000280210200028020c22076b22026b2106200320054103746a2103200441086a2104200241014e044020062007200210111a0b20002003360214200020043602102000200636020c0c010b200041001001200028020422026a103541004100200220002802006a1002200010360b20012802042102200128020021010340200120024704402000200129030022084201862008423f8722098520094201862008423f88842009851037200141086a21010c010b0b0b880101037f419408410136020041980828020021000340200004400340419c08419c082802002201417f6a220236020020014101484504404194084100360200200020024102746a22004184016a280200200041046a280200110200419408410136020041980828020021000c010b0b419c084120360200419808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104420024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104420024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101741012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0a0020002001420010370b2501017f200120006b220141037521032001044020022000200110420b200220034103746a0b3101017f2001200028020820002802006b2200410275220220022001491b41ffffffff01200041037541ffffffff00491b0b890101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103b20036a0520030b41016a21040b200041186a28020022030440200041086a280200200041146a2802002003103821000b2000200028020020046a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001041200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103a200441106a24000b2f01017f2000280208200149044020011014200028020020002802041011210220002001360208200020023602000b0b2101017f20011027220220012802044b044010000b2000200120011045200210460b2701017f230041206b22022400200241086a200020014114102610442100200241206a240020000b4c01017f2000410036020c200041106a2003360200200104402001101021040b200020043602002000200420024103746a22023602082000200420014103746a36020c2000200236020420000b870101037f200120012802042000280204200028020022046b22036b2202360204200341004a044020022004200310111a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141786a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001102e20004100200428020c2201200428020822022001102f22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031038280200210120022003417f6a360200200710394180104f044020072000410c6a280200417c6a103a0b200141384f047f2001103b20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103821000c010b0240200710390d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103c0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010122105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103d220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104022013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103c0c010b20042001410175410120011b20032005103e210241802010122106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103d22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103e21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003103f200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002103f052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104022013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103e21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006103f200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071041200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b3601017f2000280208200149044020011014200028020020002802041011210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1035200120002802006a22012002200110020c010b0b0b2801017f2000200220011003200028020422036a103520022001200320002802006a1004200010360b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103d22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a103e2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003103f200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110420b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101221040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110420b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210111a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041b0880436020c41a008200028020c41076a417871220036020041a408200036020041a8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001045200010276a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b1a01004180080b13696e697400736f7274006765745f6172726179"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SORT = "sort"; - - public static final String FUNC_GET_ARRAY = "get_array"; - - protected InsertSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected InsertSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InsertSort.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InsertSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InsertSort.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(InsertSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall sort(Int64[] arr, Int64 length) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,length), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall sort(Int64[] arr, Int64 length, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,length), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_array() { - final WasmFunction function = new WasmFunction(FUNC_GET_ARRAY, Arrays.asList(), Int64[].class); - return executeRemoteCall(function, Int64[].class); - } - - public static InsertSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new InsertSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static InsertSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new InsertSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract.java deleted file mode 100644 index ff7e6a8e12..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract.java +++ /dev/null @@ -1,180 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int8; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class IntegerDataTypeContract extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000016a1260027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60000060037f7e7e0060047f7f7f7f0060037f7f7f017f60047f7f7f7f017f60017f017e60077f7f7f7f7f7f7f0060027f7e0060037e7e7f006000017f60037f7e7e017f60017e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65001103656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e0000035756050000000400040001000007010000000108020300000606000002010004030b01030304050108030a0a020102000001000101000001010005090201000c00001002010008060f0100000400010103050101070200060405017001080805030100020608017f0141e08a040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974004506696e766f6b650031090d010041010b070e10121c2225290ab99801560400105c0b0c00200041c8006a2001100f0bcf0101047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d00002205410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b220120042002102b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b20002001200220016b027f2003044020002802040c010b20054101760b2203200320022004102c0b0b0d002000200141c8006a10111a0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102e20000b9b0a01097f230041e0006b22022400200241086a41a008101321082001280208200141016a220920012d0000220041017122031b210a2001280204200041017620031b21074100210041012104024003402004410171410020002007491b04402000200a6a2d00002203415f6a41ff017141de004921042005200341bf7f6a41ff0171411a4972210520062003419f7f6a41ff0171411a49722106200041016a21000c01050240200420052006714101737121052007450d002007210003402000450d012000200a6a21042000417f6a220321002004417f6a2d00004131470d000b0c030b0b0b417f21030b02402005410171450d00200341076a20074b0d00200341016a4102490d00200741da004b0d00410021002002410036024820024200370340200241406b20072003417f7322066a10144101210502400240024003402000200128020420012d00002204410176200441017122041b20066a4f044002402005410171450d0541002100200241306a101521050340200020034604400240200528020420022d003022004101762203200041017122061b2204200828020420022d00082200410176200041017122001b470d062008280208200841016a20001b210020060d00200541016a210403402003450d0820042d000020002d0000470d07200041016a2100200441016a21042003417f6a21030c000b000b0520052001280208200920012d00004101711b20006a2c000022044120722004200441bf7f6a411a491b4118744118751016200041016a21000c010b0b20040d000c040b05200228024020006a2001280208200920041b20036a20006a41016a2d000041d0086a2d000022043a00002005200441ff0147712105200041016a21000c010b0b2005280208210303402004450d0220032d000020002d0000470d01200041016a2100200341016a21032004417f6a21040c000b000b20022802402200450d02200220003602440c020b200241d0006a20051017200241186a200241d0006a200228024020022802441018200241186a101921002002280218220304402002200336021c0b200228025022030440200220033602540b20004101470d004100210520024100360258200242003703502002410036022020024200370318027f41002002280244417a6a2204200228024022006b2203450d001a200241186a2003101a03402000200446450440200228021c220320002d00003a00002002200341016a36021c200041016a21000c010b0b20022802182105200228021c0b20056b2106410021004100210341002104024003402004200646044002402003410820006b7441ff0171452000410548712100200504402002200536021c0b20000d00200228025021000c030b05200420056a2d0000200341057441e01f71722103200041056a21000340200041084845044020022003200041786a2200763a005f200241d0006a200241df006a101b0c010b0b200441016a21040c010b0b2002280254200228025022006b4114470d00200241286a4100360200200241206a4200370300200242003703184100210003402000411446450440200241186a20006a41003a0000200041016a21000c010b0b2002280254200228025022036b2104410021000340024020002004460d00200041134b0d00200241186a20006a200020036a2d00003a0000200041016a21000c010b0b20030440200220033602540b20022802402200450d02200220003602440c020b2000450d00200220003602540b20022802402200450d00200220003602440b200241e0006a24000b1f0020004200370200200041086a4100360200200020012001102d102e20000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110302106200241186a200041086a3602002002410036021441002101200604402006101d21010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1026200241086a10270c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000101f20000bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b2003101d220220062005102020002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000bba0101047f20004100360208200042003702002000200128020420012d0000220241017620024101711b4101744101721014200141016a210503402003200128020420012d00002202410176200241017122021b22044f0440200028020020046a41003a000005200028020020036a2001280208200520021b20036a2d000022024105763a00002000280200200128020420012d0000220441017620044101711b6a20036a41016a2002411f713a0000200341016a21030c010b0b0bc60301057f230041206b22042400200128020421050240200320026b22064101480d002006200128020820056b4c0440034020022003460d02200520022d00003a00002001200128020441016a2205360204200241016a21020c000b000b2001200520066a200128020022066b10302108200441186a200141086a36020020044100360214200520066b2106200804402008101d21070b200420073602082004200620076a22063602102004200720086a3602142004200636020c200441086a410472210703402002200346450440200620022d00003a00002004200428021041016a2206360210200241016a21020c010b0b200128020020052007102f02402001280204220320056b220241004c0440200428021021020c010b2004200428021020052002101e20026a2202360210200128020421030b20012002360204200128020021022001200428020c3602002001280208210520012004280214360208200420033602102004200236020c2004200536021420042002360208200441086a1027200128020421050b20002005360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000ba50101027f2000280204200028020022016b210241012100037f2002047f20012d000041002000411d764101716b41b3c5d1d0027141002000411c764101716b41dde788ea037141002000411b764101716b41fab384f5017141002000411a764101716b41ed9cc2b20271410020004119764101716b41b2afa9db0371200041057441e0ffffff037173737373737321002002417f6a2102200141016a21010c010520000b0b0b2001017f20002001101d2202360200200020023602042000200120026a3602080bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10302105200241186a200041086a3602004100210320024100360214200504402005101d21030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a1026200241086a10270b200241206a24000b990601057f230041e0006b22022400200241a0081013210520024100360238200242003703304114101d200141f8006a4114101e21064100210103402004411446044002402003044020022001410520036b74411f713a0050200241306a200241d0006a101b0b200241406b20051017200241d0006a200241406b200228023020022802341018200228024022030440200220033602440b200241d0006a200228025420022802506b41066a1014200241d0006a10192103410021012002410036022820024200370320200241206a41061014200341017321044119210303402003417b460d01200228022020016a2004200376411f713a00002003417b6a2103200141016a21010c000b000b05200420066a2d0000200141087441801e71722101200341086a210303402003410548450440200220012003417b6a220376411f713a0050200241306a200241d0006a101b0c010b0b200441016a21040c010b0b200228025022030440200220033602540b20024100360218200242003703100240200228023420022802306b2203450d00200241106a2003101a2002280234200228023022016b22034101480d00200228021420012003101e1a2002200228021420036a3602140b200241d0006a200241106a200228022020022802241018200228021022030440200220033602140b20004200370200200041086a41003602002000101f2005280208200541016a20022d0000220341017122011b210402402005280204200341017620011b220341016a410a4d0440200020034101743a0000200041016a21010c010b200341116a4170712206101d21012000200336020420002006410172360200200020013602080b2001200420031020200120036a41003a0000200041311016200020022802542203200228025022046b200028020420002d0000220141017620014101711b6a10212004210103402003200446450440200020012d000041a4086a2c00001016200141016a21012003417f6a21030c010b0b20040440200220043602540b200228022022030440200220033602240b200228023022030440200220033602340b200241e0006a24000b0b002000410120001b10320bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b100020020440200020012002101e1a0b0bf80101057f0240027f20002d0000220241017104402000280204210320002802002202417e71417f6a0c010b20024101762103410a0b220420032001200320014b1b220141106a417071417f6a410a2001410a4b1b2201460d00027f2001410a460440200041016a210520002802080c010b4100200120044d200141016a101d22051b0d0120002d0000220241017104404101210620002802080c010b41012106200041016a0b210420052004027f2002410171044020002802040c010b200241fe01714101760b41016a10202006044020002005360208200020033602042000200141016a4101723602000f0b200020034101743a00000b0bfe0102047f047e230041206b22022400200141b8016a2903002106200141b0016a290300210720001015220341281021200241186a21050340200241106a2007200610232002200229031022082005290300220910242003200229030020077ca74195086a2c000010162007420956210120064200522100200650210420082107200921062001200020041b0d000b0240200328020420032d00002201410176200141017122011b2200450d0020002003280208200341016a20011b22016a417f6a21000340200120004f0d0120012d00002104200120002d00003a0000200020043a00002000417f6a2100200141016a21010c000b000b200241206a24000b3701017f230041106b220324002003200120021062200329030021012000200341086a29030037030820002001370300200341106a24000b7701017e20002001427f7e200242767e7c2001422088220242ffffffff0f7e7c200242f6ffffff0f7e200142ffffffff0f83220142f6ffffff0f7e22034220887c22024220887c200142ffffffff0f7e200242ffffffff0f837c22024220887c3703082000200342ffffffff0f832002422086843703000b8d0501067f230041306b22022400027f41002001280204220520012d000022034101762206200341017122031b22074102490d001a41002001280208200141016a20031b22042d00004130470d001a20042d000141f800464101740b21042002410036022820024200370320200720046b41016a41017622070440200241106a200241286a36020020022007101d220336020820022003360200200220033602042002200320076a36020c200241206a200210262002102720012d00002203410176210620012802042105200341017121030b024002402005200620031b41017104402001280208200141016a20031b20046a2c000010282203417f460d01200220033a0000200241206a2002101b200441017221040b200141016a210603402004200128020420012d00002203410176200341017122031b4904402001280208200620031b20046a22052c000010282103200541016a2c0000102821052003417f460d022005417f460d022002200520034104746a3a0000200441026a2104200241206a2002101b0c010b0b200241003602282002280224210120022802202103200242003703200c010b41002103200228022022040440200220043602240b410021010b200241086a4200370300200241106a4200370300200241186a42003703002002420037030041002104034020044120460440200120036b2101410021040340024020012004460d002004411f4b0d00200220046a200320046a2d00003a0000200441016a21040c010b0b200041e8016a200229030037000020004180026a200241186a290300370000200041f8016a200241106a290300370000200041f0016a200241086a290300370000200241306a240005200220046a41003a0000200441016a21040c010b0b0b6701017f20002802002000280204200141046a102f200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b4801017f415021010240200041506a41ff0171410a490d0041a97f21012000419f7f6a41ff01714106490d00200041496a417f200041bf7f6a41ff01714106491b0f0b200020016a0bd107010a7f230041206b22032400200341106a41800810132102200341086a41003602002003420037030002400240200228020420032d0010220441017620044101711b220741406b2205410b4f0440200741d0006a4170712204101d21062003200536020420032004410172360200200320063602080c010b200320054101743a0000200341017221062005450d010b20062005102a210620032d001021040b200520066a41003a0000200241016a21082002280208210a2002280204200441fe0171410176200441017122091b2102027f20032d00002204410171220b450440410a2106200441017622042007200720044b1b0c010b2003280200417e71417f6a210620032802042204200720042007491b0b2105200a200820091b2108024002400240027f02400240200520046b20066a20024f044020032802082003410172200b1b21064100210a20022005460440200221090c050b200420056b220b450440200521090c050b20022005490d01200620084f0d02200420066a20084d0d02200520066a20084d04402008200220056b6a21080c030b200620082005102b200220086a2108200220056b21022005210a41000c030b20032006200220046a20056b20066b2004200520022008102c0c050b200620082002102b200220066a200520066a200b102b200521090c030b20050b21092006200a6a220520026a200520096a200b102b0b2006200a6a20082002102b0b200220096b20046a2102024020032d00004101710440200320023602040c010b200320024101743a00000b200220066a41003a00000b200141e8016a21062003410172210441002102034020024120464504402003280208200420032d00004101711b20076a200220066a22052d00004104764181086a2d00003a00002003280208200420032d00004101711b20076a41016a20052d0000410f714181086a2d00003a0000200241016a2102200741026a21070c010b0b419208102d21070240027f20032d00002202410171220645044020024101762102410a0c010b200328020421022003280200417e71417f6a0b220520026b20074f04402007450d012003280208200420061b2204027f2002450440410021024192080c010b200420076a20042002102b20074192086a419208200220046a4192084b1b41920820044192084d1b0b2007102b200220076a2107024020032d00004101710440200320073602040c010b200320074101743a00000b200420076a41003a00000c010b20032005200220076a20056b200241002007419208102c0b20002003290300370200200041086a200341086a2802003602002003101f200341206a24000bb90301027f02402001450d00200041303a0000200020016a2203417f6a41303a000020014103490d00200041303a0002200041303a00012003417d6a41303a00002003417e6a41303a000020014107490d00200041303a00032003417c6a41303a000020014109490d002000410020006b41037122026a220341b0e0c081033602002003200120026b417c7122026a2201417c6a41b0e0c0810336020020024109490d00200341b0e0c08103360208200341b0e0c08103360204200141786a41b0e0c08103360200200141746a41b0e0c0810336020020024119490d00200341b0e0c08103360218200341b0e0c08103360214200341b0e0c08103360210200341b0e0c0810336020c200141706a41b0e0c081033602002001416c6a41b0e0c08103360200200141686a41b0e0c08103360200200141646a41b0e0c081033602002002200341047141187222026b2101200220036a2102034020014120490d01200242b0e0c08183868c9830370300200241186a42b0e0c08183868c9830370300200241106a42b0e0c08183868c9830370300200241086a42b0e0c08183868c9830370300200241206a2102200141606a21010c000b000b20000b0f0020020440200020012002105b0b0ba80101027f027f20002d0000410171044020002802080c010b200041016a0b2108416f2107200141e6ffffff074d0440410b20014101742207200120026a220120012007491b220141106a4170712001410b491b21070b2007101d21012005044020012006200510200b200320046b22030440200120056a200420086a200310200b200020013602082000200320056a220536020420002007410172360200200120056a41003a00000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101d21032000200236020420002004410172360200200020033602080b2003200120021020200220036a41003a00000b270020022002280200200120006b22016b2202360200200141014e0440200220002001101e1a0b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b9a0502047f017e230041c0026b22012400105c10072200103222021008200141306a200120022000103322004100103402400240200141306a10352204500d0041d0091036200451044020001037200141306a103810390c020b41d5091036200451044020004101103a0c020b41df091036200451044020004102103b0c020b41e90910362004510440200141003a00182000103c410247044010000b200141306a200041011034200141306a200141186a103d200141306a1038220041286a20012d00183a0000200010390c020b41f1091036200451044020001037200141306a1038220341286a2d00002102200141186a103e22002002103f1040200020021041200028020c200041106a28020047044010000b20002802002000280204100c200028020c22020440200020023602100b200310390c020b41f909103620045104402000103c410247044010000b200141306a200041011034200141306a10422100200141306a1038220220003a0010200210390c020b41810a1036200451044020001037200141306a103822032c00102102200141186a103e2200200210431040200020021044200028020c200041106a28020047044010000b20002802002000280204100c200028020c22020440200020023602100b200310390c020b41890a1036200451044020004103103a0c020b41940a1036200451044020004104103b0c020b419f0a103620045104402000103c410247044010000b200141306a200041011034200141306a10352104200141306a1038220041b8016a4200370300200041b0016a2004370300200010390c020b41a70a1036200451044020004105103b0c020b41af0a1036200451044020004106103a0c020b41b70a10362004520d0020004107103b0c010b10000b1045200141c0026a24000b9b0101047f230041106b220124002001200036020c2000047f41d40a200041086a2202411076220041d40a2802006a220336020041d00a41d00a280200220420026a41076a417871220236020002400240200341107420024d044041d40a200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101e41086a0541000b2100200141106a240020000b0c00200020012002411c10460bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001105620012003280208200328020c105736020c200320011056410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410461a200341106a24000f0b20032001105641002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041057105f2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b22012400200010470240024020001048450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001049200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000103c410147044010000b0bd61002087f047e230041a0016b22012400200042badda0b2f6c5fa8e03370308200041003a0000200141f8006a103e22032000290308104a200328020c200341106a28020047044010000b0240200328020022062003280204220510092202450d002001410036024820014200370340200141406b200210142006200520012802402207200128024420076b100a417f4704402000200141d8006a2001280240220441016a20012802442004417f736a103310423a0010200221040b20012802402202450d00200120023602440b200328020c22020440200320023602100b2004450440200020002d00003a00100b41002104200041003a0018200041206a220242f4a2efb3f6e5b8ad03370300200141f8006a103e22032002290300104a200328020c200341106a28020047044010000b0240200328020022062003280204220510092202450d002001410036024820014200370340200141406b200210142006200520012802402207200128024420076b100a417f470440200141d8006a2001280240220441016a20012802442004417f736a1033200041286a103d200221040b20012802402202450d00200120023602440b200328020c22020440200320023602100b2004450440200020002d00183a00280b200041306a10152108200041406b220442a7cea8ad82a0ff995b370300200041c8006a10152106200141f8006a103e22032004290300104a200328020c200341106a28020047044010000b0240200328020022052003280204220710092202450440410021040c010b410021042001410036024820014200370340200141406b200210142005200720012802402205200128024420056b100a417f470440200141d8006a2001280240220441016a20012802442004417f736a10332006104b200221040b20012802402202450d00200120023602440b200328020c22020440200320023602100b200445044020062008100f0b2000420037005841002102200041e8006a4100360000200041e0006a4200370000200041f8006a22044200370000200041f0006a220642ec9687b9d0b2e0d7a87f37030020004180016a420037000020004188016a4100360000200141f8006a103e22032006290300104a200328020c200341106a28020047044010000b0240200328020022052003280204220710092206450d002001410036023820014200370330200141306a200610142005200720012802302208200128023420086b100a417f470440200141d8006a2001280230220241016a20012802342002417f736a10332205104720014198016a20051049200128029c012102024002402005280204450d00200241144b0d0020052802002d000041c001490d010b10000b200141d0006a22054100360200200141c8006a220742003703002001420037034020012002411420024114491b22026b41d4006a2001280298012002101e1a200141286a20052802002202360200200141206a2007290300220937030020012001290340220a370318200441106a2002360000200441086a20093700002004200a370000200621020b20012802302206450d00200120063602340b200328020c22060440200320063602100b20024504402004200041d8006a2203290300370300200441106a200341106a280200360200200441086a200341086a2903003703000b200042003703900120004198016a4200370300200041a0016a220442f7b392def9859ceae100370300200141f8006a103e22032004290300104a200328020c200341106a28020047044010000b0240200328020022062003280204220510092202450440410021040c010b410021042001410036024820014200370340200141406b200210142006200520012802402207200128024420076b100a417f470440200141086a200141d8006a2001280240220441016a20012802442004417f736a1033104c20012903082109200041b8016a200141106a290300370300200020093703b001200221040b20012802402202450d00200120023602440b200328020c22020440200320023602100b200445044020002000290390013703b001200041b8016a20004198016a2903003703000b200042003700c001200041d8016a4200370000200041d0016a4200370000200041c8016a4200370000200041e8016a22044200370000200041e0016a220242c0e0a09af8e5a8c936370300200041f0016a4200370000200041f8016a420037000020004180026a4200370000200141406b103e22032002290300104a200328020c200341106a28020047044010000b0240200328020022052003280204220710092206450440410021020c010b410021022001410036023820014200370330200141306a200610142005200720012802302208200128023420086b100a417f470440200141186a2001280230220241016a20012802342002417f736a10332205104720014198016a20051049200128029c012102024002402005280204450d00200241204b0d0020052802002d000041c001490d010b10000b20014190016a2205420037030020014188016a2207420037030020014180016a220842003703002001420037037820012002412020024120491b22026b4198016a2001280298012002101e1a200141f0006a20052903002209370300200141e8006a2007290300220a370300200141e0006a2008290300220b37030020012001290378220c370358200441186a2009370000200441106a200a370000200441086a200b3700002004200c370000200621020b20012802302206450d00200120063602340b200328020c22060440200320063602100b20024504402004200041c0016a2203290300370300200441186a200341186a290300370300200441106a200341106a290300370300200441086a200341086a2903003703000b200141a0016a240020000bd11302097f047e230041d0016b22022400200241186a103e2204200041e0016a2201290300104d104020042001290300104a200428020c200441106a28020047044010000b20042802042108200428020021092002103e210741002101200241e8006a4100360200200241e0006a4200370300200241d8006a4200370300200241c8006a20004180026a290000220a370300200241406b200041f8016a290000220b370300200241386a200041f0016a290000220c370300200242003703502002200041e8016a2205290000220d370330200241f8006a200c37030020024180016a200b37030020024188016a200a37030020024198016a200c370300200241a0016a200b370300200241a8016a200a3703002002200d3703702002200d37039001200241c8016a200a370300200241c0016a200b370300200241b8016a200c3703002002200d3703b001410121060240034020014120460d01200241b0016a20016a2103200141016a210120032d0000450d000b412121060b20022006360250200241d0006a410472104e2007200241d0006a104f220310502007200328020420066a20032802006b1040200241c8006a200541186a290000220a370300200241406b200541106a290000220b370300200241386a200541086a290000220c37030020022005290000220d370330200241f8006a200c37030020024180016a200b37030020024188016a200a37030020024198016a200c370300200241a0016a200b370300200241a8016a200a3703002002200d3703702002200d37039001200241c8016a200a370300200241c0016a200b370300200241b8016a200c3703002002200d3703b00102402007200241b0016a41201051220128020c200141106a280200460440200141046a2105200128020021070c010b200141046a2105100020012802002107200128020c2001280210460d0010000b2009200820072005280200100b200328020022050440200320053602040b200128020c22030440200120033602100b200428020c22010440200420013602100b20024190016a103e2201200041a0016a2203290300104d104020012003290300104a200128020c200141106a28020047044010000b2001280204210520012802002107200241f0006a103e2103200241c8016a4100360200200241c0016a4200370300200241b8016a4200370300200242003703b001200241b0016a20002903b001200041b8016a2206290300105220022802b0012108200241b0016a410472104e2003200241b0016a104f220410502003200820042802046a20042802006b10400240200320002903b00120062903001053220328020c200341106a280200460440200341046a2106200328020021080c010b200341046a2106100020032802002108200328020c2003280210460d0010000b2007200520082006280200100b200428020022050440200420053602040b200328020c22040440200320043602100b200128020c22030440200120033602100b20024190016a103e2204200041f0006a2201290300104d104020042001290300104a200428020c200441106a28020047044010000b2004280204210820042802002109200241f0006a103e210541002101200241c8016a4100360200200241c0016a4200370300200241b8016a4200370300200241106a20004188016a2800002203360200200241086a20004180016a290000220a370300200242003703b0012002200041f8006a2207290000220b370300200241206a200a370300200241286a2003360200200241d8006a200a370300200241e0006a20033602002002200b3703182002200b370350200241406b2003360200200241386a200a3703002002200b370330410121060240034020014114460d01200241306a20016a2103200141016a210120032d0000450d000b411521060b200220063602b001200241b0016a410472104e20052002104f220310502005200328020420066a20032802006b1040200241286a200741106a2800002201360200200241206a200741086a290000220a37030020022007290000220b370318200241d8006a200a370300200241e0006a2001360200200241386a200a370300200241406b20013602002002200b3703502002200b370330200241c0016a2001360200200241b8016a200a3703002002200b3703b00102402005200241b0016a41141051220128020c200141106a280200460440200141046a2105200128020021070c010b200141046a2105100020012802002107200128020c2001280210460d0010000b2009200820072005280200100b200328020022050440200320053602040b200128020c22030440200120033602100b200428020c22010440200420013602100b200241b0016a103e2203200041406b2201290300104d104020032001290300104a200041c8006a2105200328020c200341106a28020047044010000b200328020421072003280200210620024190016a103e21012005105421082001200241f0006a104f220410502001200820042802046a20042802006b10402001200241306a2005101110550240200128020c200141106a280200460440200141046a2105200128020021080c010b200141046a2105100020012802002108200128020c2001280210460d0010000b2006200720082005280200100b200428020022050440200420053602040b200128020c22040440200120043602100b200328020c22010440200320013602100b200241b0016a103e2203200041206a2201290300104d104020032001290300104a200328020c200341106a28020047044010000b200328020421052003280200210720024190016a103e210120002d0028103f21062001200241f0006a104f220410502001200620042802046a20042802006b1040200120002d002810410240200128020c200141106a280200460440200141046a2106200128020021080c010b200141046a2106100020012802002108200128020c2001280210460d0010000b2007200520082006280200100b200428020022050440200420053602040b200128020c22040440200120043602100b200328020c22010440200320013602100b200241b0016a103e22032000290308104d104020032000290308104a200328020c200341106a28020047044010000b200328020421052003280200210720024190016a103e210120002d0010104321062001200241f0006a104f220410502001200620042802046a20042802006b1040200120002c001010440240200128020c200141106a280200460440200141046a2106200128020021080c010b200141046a2106100020012802002108200128020c2001280210460d0010000b2007200520082006280200100b200428020022050440200420053602040b200128020c22040440200120043602100b200328020c22010440200320013602100b200241d0016a24000b5501027f230041b0026b2202240020024190026a101521032000103c410247044010000b200220004101103420022003104b2002103821002002200241a0026a20031011200111000020001039200241b0026a24000b870101027f230041d0026b220224002000103720021038210320024198026a20022001110000200241b8026a103e220120024198026a105410402001200241a8026a20024198026a10111055200128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b20031039200241d0026a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001056200128020c210003402000450d01200141002001280208220320032000105722046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b850101037f230041106b22022400200010470240024020001048450d002000280204450d0020002802002d000041c001490d010b10000b200241086a20001049200228020c220041024f044010000b200228020821030340200004402000417f6a210020032d00002104200341016a21030c010b0b200120044100473a0000200241106a24000b29002000410036020820004200370200200041001058200041146a41003602002000420037020c20000b5601017f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ff018342001052200128020021002001410472104e200141206a240020000b1300200028020820014904402000200110580b0b0c0020002001ad420010531a0b3802017f017e230041106b2201240020012000104c20012903002102200141106a2400420020024201837d200242018885a74118744118750b7302017f027e230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42388622024238874201862002423f8722038520034201862002423f88842003851052200128020021002001410472104e200141206a240020000b2701027e20002001ac22024201862002423f8722038520034201862002423f888420038510531a0b880101037f41c00a410136020041c40a2802002100034020000440034041c80a41c80a2802002201417f6a2202360200200141014845044041c00a4100360200200020024102746a22004184016a280200200041046a28020011020041c00a410136020041c40a28020021000c010b0b41c80a412036020041c40a200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105d20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105d20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001047200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001105a2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b0b0020002001420010531a0bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10151a0c010b200241186a200010492000105a21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101d21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a101f200241206a24000b9e0102027f027e230041106b22022400200110470240024020011048450d002001280204450d0020012802002d000041c001490d010b10000b200241086a20011049200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000b5101027f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200042001052200128020021022001410472104e200141206a240020020b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b3000200041003602082000420037020020004101101a200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105820002802040520020b20002802006a20032001101e1a2000200028020420016a3602040b2a01017f2000200120021003200028020422036a106120012002200320002802006a10042000106020000ba40101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003105920036a0520030b41016a21040b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020046a3602000b2a01017f2000200220011005200028020422036a106120022001200320002802006a10062000106020000bb80101047f230041306b22012400200141286a4100360200200141206a4200370300200141186a42003703002001420037031041012103024002400240200120001011220028020420002d00002202410176200241017122041b220241014d0440200241016b0d032000280208200041016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002105920026a41016a21030b20012003360210200141106a410472104e200141306a240020030b2d01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10511a0b2101017f2001105a220220012802044b044010000b200020012001105e2002105f0b2701017f230041206b22022400200241086a2000200141141046105d2100200241206a240020000b2f01017f200028020820014904402001103220002802002000280204101e210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010bff0201037f200028020445044041000f0b2000104741012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002101e1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041e08a0436020c41cc0a200028020c41076a417871220036020041d00a200036020041d40a3f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000105e2000105a6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1061200120002802006a22012002200110020c010b0b0b3601017f200028020820014904402001103220002802002000280204101e210220002001360208200020023602000b200020013602040bbe0202027f047e2000027e2002500440420021022001420a800c010b0240027e200141fd00200279a76b220341c000460d001a2003413f4d0440200241c00020036bad22058620012003ad2207888421062002200788210820012005862107420021050c020b200241800120036bad2205862001200341406aad22068884210720022006882106200120058621050c010b21072002210641c00021030b03402003044020084201862006423f888422022002427f8542007c20064201862007423f88842206427f852202420a7c200254ad7c423f8722024200837d20062002420a83220154ad7d2108200620017d210620074201862005423f888421072003417f6a21032004ad20054201868421052002a741017121040c010b0b20074201862005423f888421022004ad2005420186427e83840b370300200020023703080b0bbf0202004181080b43303132333435363738396162636465660030780030313233343536373839006174780071707a7279397838676632747664773073336a6e35346b686365366d7561376c0041d0080bee01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff696e697400736574537472696e6700676574537472696e6700736574426f6f6c00676574426f6f6c00736574436861720067657443686172007365744164647265737300676574416464726573730073657455323536006765745532353600736574483235360067657448323536"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SETSTRING = "setString"; - - public static final String FUNC_GETSTRING = "getString"; - - public static final String FUNC_SETBOOL = "setBool"; - - public static final String FUNC_GETBOOL = "getBool"; - - public static final String FUNC_SETCHAR = "setChar"; - - public static final String FUNC_GETCHAR = "getChar"; - - public static final String FUNC_SETADDRESS = "setAddress"; - - public static final String FUNC_GETADDRESS = "getAddress"; - - public static final String FUNC_SETU256 = "setU256"; - - public static final String FUNC_GETU256 = "getU256"; - - public static final String FUNC_SETH256 = "setH256"; - - public static final String FUNC_GETH256 = "getH256"; - - protected IntegerDataTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected IntegerDataTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall setString(String input) { - final WasmFunction function = new WasmFunction(FUNC_SETSTRING, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setString(String input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETSTRING, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getString() { - final WasmFunction function = new WasmFunction(FUNC_GETSTRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall setBool(Boolean input) { - final WasmFunction function = new WasmFunction(FUNC_SETBOOL, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setBool(Boolean input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETBOOL, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getBool() { - final WasmFunction function = new WasmFunction(FUNC_GETBOOL, Arrays.asList(), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall setChar(Int8 input) { - final WasmFunction function = new WasmFunction(FUNC_SETCHAR, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setChar(Int8 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETCHAR, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getChar() { - final WasmFunction function = new WasmFunction(FUNC_GETCHAR, Arrays.asList(), Int8.class); - return executeRemoteCall(function, Int8.class); - } - - public RemoteCall setAddress(String input) { - final WasmFunction function = new WasmFunction(FUNC_SETADDRESS, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setAddress(String input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETADDRESS, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getAddress() { - final WasmFunction function = new WasmFunction(FUNC_GETADDRESS, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall setU256(Uint64 input) { - final WasmFunction function = new WasmFunction(FUNC_SETU256, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setU256(Uint64 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETU256, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getU256() { - final WasmFunction function = new WasmFunction(FUNC_GETU256, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall setH256(String input) { - final WasmFunction function = new WasmFunction(FUNC_SETH256, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setH256(String input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETH256, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getH256() { - final WasmFunction function = new WasmFunction(FUNC_GETH256, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static IntegerDataTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new IntegerDataTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static IntegerDataTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new IntegerDataTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract_1.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract_1.java deleted file mode 100644 index 4943cac8fd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract_1.java +++ /dev/null @@ -1,125 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Int16; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class IntegerDataTypeContract_1 extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001601160017f017f60027f7f0060017f0060000060037f7f7f0060037f7e7e0060027f7f017f60037f7f7e0060027f7e0060017f017e60047f7f7f7f0060037e7e7f006000017f60037f7f7f017f60047f7f7f7f017f60027f7e017f60027e7e017f02dd010a03656e760c706c61746f6e5f70616e6963000303656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000603656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65001003656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e760d706c61746f6e5f72657475726e00010329280307080004050503000e04090902000802010f0002000101010301000106000601020d0300000a050405017001030305030100020608017f0141e088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000a0f5f5f66756e63735f6f6e5f65786974002306696e766f6b6500110908010041010b020b0b0ac638280400102d0b080020002002100c0bb30502097f037e230041206b2207240020004200370200200041086a410036020003402002410c470440200020026a4100360200200241046a21020c010b0b0240027f20002d00002202410171450440200241017622044128200441284b1b41106a41f001712102410a0c010b200028020422044128200441284b1b41106a41707122022000280200417e712203460d012003417f6a0b210641002002417f6a20064d2002100d22031b0d00027f20002d0000220641017104402000280208210520002802040c010b200041016a210520064101760b210620032005200641016a100e2000200336020820002004360204200020024101723602000b200041016a2108200741186a210a0340200741106a2001200b100f20072007290310220c200a290300220d1010200729030020017ca74180086a2d00002106024002400240027f20002d000022034101712205450440410a210420034101760c010b20002802002203417e71417f6a210420002802040b220220044604402008210920034101710440200028020821090b416f2105200441e6ffffff074d0440410b20044101742203200441016a220520052003491b220341106a4170712003410b491b21050b2005100d220320092004100e20002005410172360200200020033602080c010b2005450d01200028020821030b2000200241016a3602040c010b2000200241017441026a3a0000200821030b200220036a220241003a0001200220063a000020014209562102200b4200522104200b502103200c2101200d210b2002200420031b0d000b0240200028020420002d00002202410176200241017122021b2204450d0020042000280208200820021b22006a417f6a21020340200020024f0d0120002d00002104200020022d00003a0000200220043a00002002417f6a2102200041016a21000c000b000b200741206a24000b0b002000410120001b10120b100020020440200020012002102c1a0b0b3701017f230041106b220324002003200120021031200329030021012000200341086a29030037030820002001370300200341106a24000b7701017e20002001427f7e200242767e7c2001422088220242ffffffff0f7e7c200242f6ffffff0f7e200142ffffffff0f83220142f6ffffff0f7e22034220887c22024220887c200142ffffffff0f7e200242ffffffff0f837c22024220887c3703082000200342ffffffff0f832002422086843703000bb80902047f017e230041e0006b22002400102d10072201101222021008200041406b200041086a20022001411c101322014100101402400240200041406b10152204500d00418b0810162004510440200110170c020b4190081016200451044020011017200041286a10182101200041d8006a4100360200200041d0006a4200370300200041c8006a420037030020004200370340200041406b4206101920002802402102200041406b410472101a20012002101b20014206101c220128020c200141106a28020047044010000b200128020020012802041009200128020c2202450d02200120023602100c020b4195081016200451044020011017200041286a10182101200041d8006a4100360200200041d0006a4200370300200041c8006a420037030020004200370340200041406b429003101920002802402102200041406b410472101a20012002101b2001429003101c220128020c200141106a28020047044010000b200128020020012802041009200128020c2202450d02200120023602100c020b419b08101620045104402001101d410247044010000b200041406b200141011014200041406b101e02400240200041406b101f450d002000280244450d0020002802402d000041c001490d010b10000b200041286a200041406b1020200028022c220141024f044010000b20002802282102420021040340200104402001417f6a210120022d0000410174ad42fe01832104200241016a21020c010b0b200041286a10182101200041d8006a4100360200200041d0006a4200370300200041c8006a420037030020004200370340200041406b2004101920002802402102200041406b410472101a20012002101b20012004101c220128020c200141106a28020047044010000b200128020020012802041009200128020c2202450d02200120023602100c020b41a208101620045104402001101d410247044010000b200041406b200141011014200041406b101e02400240200041406b101f450d002000280244450d0020002802402d000041c001490d010b10000b200041286a200041406b1020200028022c220141054f044010000b200028022821020340200104402001417f6a210120022d00002003410874722103200241016a21020c010b0b200041286a10182101200041d8006a4100360200200041d0006a4200370300200041c8006a420037030020004200370340200041406b2003410174ad2204101920002802402102200041406b410472101a20012002101b20012004101c220128020c200141106a28020047044010000b200128020020012802041009200128020c2202450d02200120023602100c020b41aa0810162004510440200042003703202001200041206a102120002903202104200041286a10182101200041d8006a4100360200200041d0006a4200370300200041c8006a420037030020004200370340200041406b20044201862204101920002802402102200041406b410472101a20012002101b20012004101c220128020c200141106a28020047044010000b200128020020012802041009200128020c2202450d02200120023602100c020b41b208101620045104402001410110220c020b41b80810162004520d002001410210220c010b10000b1023200041e0006a24000b9b0101047f230041106b220124002001200036020c2000047f41d408200041086a2202411076220041d4082802006a220336020041d00841d008280200220420026a41076a417871220236020002400240200341107420024d044041d408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102c41086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000102e20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000102e20024d0d0020034104710440100020000f0b200042003702000b20000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102620012003280208200328020c102736020c200320011026410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410131a200341106a24000f0b20032001102641002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102710302001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b220124002000101e024002402000101f450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001020200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101d410147044010000b0b29002000410036020820004200370200200041001024200041146a41003602002000420037020c20000b9f0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002102520026a0520020b41016a21030b200041186a28020022020440200041086a2802002002200041146a2802006a417f6a220241087641fcffff07716a280200200241ff07714102746a21000b2000200028020020036a3602000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b1300200028020820014904402000200110240b0b2a01017f2000420020011005200028020422026a102a42002001200220002802006a10062000102b20000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001026200128020c210003402000450d01200141002001280208220320032000102722046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000101e200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110282204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3701017f230041206b220224002000101d410247044010000b200241086a2000410110142001200241086a1015370300200241206a24000bfa0201047f230041f0006b22022400200242003703102000200241106a102141012100200241186a200241086a20022903102001110700200241286a10182101200241e8006a4100360200200241e0006a4200370300200241d8006a420037030020024200370350024002400240200241406b200241186a1029220428020420022d00402203410176200341017122051b220341014d0440200341016b0d032004280208200441016a20051b2c0000417f4c0d010c030b200341374b0d010b200341016a21000c010b2003102520036a41016a21000b20022000360250200241d0006a410472101a20012000101b2001200241d0006a200241186a10292200280208200041016a20022d0050220341017122041b22052000280204200341017620041b22001003200128020422036a102a20052000200320012802006a10042001102b200128020c200141106a28020047044010000b200128020020012802041009200128020c22000440200120003602100b200241f0006a24000b880101037f41c008410136020041c4082802002100034020000440034041c80841c8082802002201417f6a2202360200200141014845044041c0084100360200200020024102746a22004184016a280200200041046a28020011020041c008410136020041c40828020021000c010b0b41c808412036020041c408200028020022003602000c010b0b0b2f01017f200028020820014904402001101220002802002000280204102c210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b2101017f20011028220220012802044b044010000b200020012001102f200210300b2701017f230041206b22022400200241086a2000200141141013102e2100200241206a240020000bff0201037f200028020445044041000f0b2000101e41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204100d21022000200136020420002004410172360200200020023602080b200220032001100e200120026a41003a000020000b3601017f200028020820014904402001101220002802002000280204102c210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a102a200120002802006a22012002200110020c010b0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3501017f230041106b220041e0880436020c41cc08200028020c41076a417871220036020041d008200036020041d4083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000102f200010286a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000bbe0202027f047e2000027e2002500440420021022001420a800c010b0240027e200141fd00200279a76b220341c000460d001a2003413f4d0440200241c00020036bad22058620012003ad2207888421062002200788210820012005862107420021050c020b200241800120036bad2205862001200341406aad22068884210720022006882106200120058621050c010b21072002210641c00021030b03402003044020084201862006423f888422022002427f8542007c20064201862007423f88842206427f852202420a7c200254ad7c423f8722024200837d20062002420a83220154ad7d2108200620017d210620074201862005423f888421072003417f6a21032004ad20054201868421052002a741017121040c010b0b20074201862005423f888421022004ad2005420186427e83840b370300200020023703080b0b4401004180080b3d3031323334353637383900696e697400696e743800696e7436340075696e7438740075696e743332740075696e74363474007531323874007532353674"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_U128T = "u128t"; - - public static final String FUNC_INT8 = "int8"; - - public static final String FUNC_INT32 = "int32"; - - public static final String FUNC_INT64 = "int64"; - - public static final String FUNC_UINT8T = "uint8t"; - - public static final String FUNC_UINT32T = "uint32t"; - - public static final String FUNC_UINT64T = "uint64t"; - - public static final String FUNC_U256T = "u256t"; - - protected IntegerDataTypeContract_1(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected IntegerDataTypeContract_1(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall u128t(Uint64 input) { - final WasmFunction function = new WasmFunction(FUNC_U128T, Arrays.asList(input), String.class); - return executeRemoteCall(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_1.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_1.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_1.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_1.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall int8() { - final WasmFunction function = new WasmFunction(FUNC_INT8, Arrays.asList(), Int16.class); - return executeRemoteCall(function, Int16.class); - } - - public RemoteCall int32() { - final WasmFunction function = new WasmFunction(FUNC_INT32, Arrays.asList(), Int32.class); - return executeRemoteCall(function, Int32.class); - } - - public RemoteCall int64() { - final WasmFunction function = new WasmFunction(FUNC_INT64, Arrays.asList(), Int64.class); - return executeRemoteCall(function, Int64.class); - } - - public RemoteCall uint8t(Uint8 input) { - final WasmFunction function = new WasmFunction(FUNC_UINT8T, Arrays.asList(input), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall uint32t(Uint32 input) { - final WasmFunction function = new WasmFunction(FUNC_UINT32T, Arrays.asList(input), Uint32.class); - return executeRemoteCall(function, Uint32.class); - } - - public RemoteCall uint64t(Uint64 input) { - final WasmFunction function = new WasmFunction(FUNC_UINT64T, Arrays.asList(input), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall u256t(Uint64 input) { - final WasmFunction function = new WasmFunction(FUNC_U256T, Arrays.asList(input), String.class); - return executeRemoteCall(function, String.class); - } - - public static IntegerDataTypeContract_1 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new IntegerDataTypeContract_1(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static IntegerDataTypeContract_1 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new IntegerDataTypeContract_1(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract_2.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract_2.java deleted file mode 100644 index f89b7d98ee..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract_2.java +++ /dev/null @@ -1,184 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.rlp.wasm.datatypes.Int8; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class IntegerDataTypeContract_2 extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001591060017f017f60027f7f0060017f0060000060037f7e7e0060017f017e60037f7f7f0060047f7f7f7f0060027f7e0060027f7f017f60037f7f7f017f60047f7f7f7f017f60017e017f60037e7e7f006000017f60027e7e017f02fd010b03656e760c706c61746f6e5f70616e6963000303656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000603656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000903656e7610706c61746f6e5f6765745f7374617465000b03656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e00010336350303000a0605050200020000000001010000050c0800000100000c08030b020001010001010901010402040404000a0003000007010405017001010105030100020608017f01419089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974002706696e766f6b65000c0a914d350400103b0bfa0802047f017e230041c0016b22012400103b10052200100d22021006200141186a200120022000100e22004100100f02400240200141186a10102204500d004180081011200451044020001012200141186a101310140c020b4185081011200451044020001015410247044010000b200141186a20004101100f200141186a10162100200141186a1013220220003a0010200210140c020b418d081011200451044020001012200141186a101322032c00102102200141a8016a1017220020021018101920002002101a200028020c200041106a28020047044010000b20002802002000280204100a200028020c22020440200020023602100b200310140c020b4195081011200451044020001015410247044010000b200141186a20004101100f200141186a101b2100200141186a1013220241286a2000360200200210140c020b419e081011200451044020001012200141186a1013220341286a2802002102200141a8016a101722002002101c101920002002101a200028020c200041106a28020047044010000b20002802002000280204100a200028020c22020440200020023602100b200310140c020b41a7081011200451044020001015410247044010000b200141186a20004101100f200141186a101d2104200141186a1013220041406b2004370300200010140c020b41b0081011200451044020001012200141186a1013220241406b2903002104200141a8016a101722002004101e101920002004101f200028020c200041106a28020047044010000b20002802002000280204100a200028020c22030440200020033602100b200210140c020b41b9081011200451044020001015410247044010000b200141186a20004101100f200141186a10202100200141186a1013220241d8006a20003a0000200210140c020b41c2081011200451044020001012200141186a1013220341d8006a2d00002102200141a8016a10172200200210211019200020021022200028020c200041106a28020047044010000b20002802002000280204100a200028020c22020440200020023602100b200310140c020b41cb081011200451044020001015410247044010000b200141186a20004101100f200141186a10232100200141186a1013220241f0006a2000360200200210140c020b41d5081011200451044020001012200141186a1013220341f0006a2802002102200141a8016a10172200200210241019200020021022200028020c200041106a28020047044010000b20002802002000280204100a200028020c22020440200020023602100b200310140c020b41df081011200451044020001015410247044010000b200141186a20004101100f200141186a10102104200141186a101322004188016a2004370300200010140c020b41e90810112004520d0020001012200141186a101322024188016a2903002104200141a8016a10172200200410251019200020041026200028020c200041106a28020047044010000b20002802002000280204100a200028020c22030440200020033602100b200210140c010b10000b1027200141c0016a24000b9b0101047f230041106b220124002001200036020c2000047f418809200041086a220241107622004188092802006a2203360200418409418409280200220420026a41076a417871220236020002400240200341107420024d0440418809200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103941086a0541000b2100200141106a240020000b0c00200020012002411c10280bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102f20012003280208200328020c103036020c20032001102f410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410281a200341106a24000f0b20032001102f41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041030103e2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b2201240020001029024002402000102a450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000102b200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001015410147044010000b0bad0a01077f230041406a2201240020004289d0beac9ad8f9ee41370308200041003a0000200141286a1017220320002903081026200328020c200341106a28020047044010000b0240200328020022052003280204220710072206450d002001410036022020014200370318200141186a2006102c2005200720012802182202200128021c220520026b1008417f47044020002001200241016a20052002417f736a100e10163a0010200621040b2002450d002001200236021c0b200328020c22020440200320023602100b2004450440200020002d00003a00100b4100210420004100360218200041206a220242b8cdbeac9ab8f9ee41370300200141286a1017220320022903001026200328020c200341106a28020047044010000b0240200328020022052003280204220710072206450d002001410036022020014200370318200141186a2006102c2005200720012802182202200128021c220520026b1008417f47044020002001200241016a20052002417f736a100e101b360228200621040b2002450d002001200236021c0b200328020c22020440200320023602100b2004450440200020002802183602280b20004200370330200041386a220442bfbcbeac9a98f8ee41370300200141286a1017220320042903001026200328020c200341106a28020047044010000b0240200328020022052003280204220710072206450440410021020c010b410021022001410036022020014200370318200141186a2006102c2005200720012802182204200128021c220520046b1008417f47044020002001200441016a20052004417f736a100e101d370340200621020b2004450d002001200436021c0b200328020c22040440200320043602100b2002450440200020002903303703400b41002104200041003a0048200041d0006a220242e4e9dbd7f9a5b1f1e000370300200141286a1017220320022903001026200328020c200341106a28020047044010000b0240200328020022052003280204220710072206450d002001410036022020014200370318200141186a2006102c2005200720012802182202200128021c220520026b1008417f47044020002001200241016a20052002417f736a100e10203a0058200621040b2002450d002001200236021c0b200328020c22020440200320023602100b2004450440200020002d00483a00580b4100210420004100360260200041e8006a220242df9cedb3ebfeb2e4e700370300200141286a1017220320022903001026200328020c200341106a28020047044010000b0240200328020022052003280204220710072206450d002001410036022020014200370318200141186a2006102c2005200720012802182202200128021c220520026b1008417f47044020002001200241016a20052002417f736a100e1023360270200621040b2002450d002001200236021c0b200328020c22020440200320023602100b2004450440200020002802603602700b2000420037037820004180016a220442bc85edb3eb9eb1e4e700370300200141286a1017220320042903001026200328020c200341106a28020047044010000b0240200328020022052003280204220710072206450440410021020c010b410021022001410036022020014200370318200141186a2006102c2005200720012802182204200128021c220520046b1008417f47044020002001200441016a20052004417f736a100e101037038801200621020b2004450d002001200436021c0b200328020c22040440200320043602100b200245044020002000290378370388010b200141406b240020000bf60b01087f230041406a22062400200641286a1017220220004180016a220129030010251019200220012903001026200228020c200241106a28020047044010000b2002280204210520022802002108200641106a101721012000290388011025210420012006102d2203102e2001200420032802046a20032802006b1019200120002903880110260240200128020c200141106a280200460440200141046a2104200128020021070c010b200141046a2104100020012802002107200128020c2001280210460d0010000b20082005200720042802001009200328020022050440200320053602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200641286a10172202200041e8006a220129030010251019200220012903001026200228020c200241106a28020047044010000b2002280204210520022802002108200641106a1017210120002802701024210420012006102d2203102e2001200420032802046a20032802006b10192001200028027010220240200128020c200141106a280200460440200141046a2104200128020021070c010b200141046a2104100020012802002107200128020c2001280210460d0010000b20082005200720042802001009200328020022050440200320053602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200641286a10172202200041d0006a220129030010251019200220012903001026200228020c200241106a28020047044010000b2002280204210520022802002108200641106a1017210120002d00581021210420012006102d2203102e2001200420032802046a20032802006b1019200120002d005810220240200128020c200141106a280200460440200141046a2104200128020021070c010b200141046a2104100020012802002107200128020c2001280210460d0010000b20082005200720042802001009200328020022050440200320053602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200641286a10172202200041386a220129030010251019200220012903001026200228020c200241106a28020047044010000b2002280204210520022802002108200641106a101721012000290340101e210420012006102d2203102e2001200420032802046a20032802006b101920012000290340101f0240200128020c200141106a280200460440200141046a2104200128020021070c010b200141046a2104100020012802002107200128020c2001280210460d0010000b20082005200720042802001009200328020022050440200320053602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200641286a10172202200041206a220129030010251019200220012903001026200228020c200241106a28020047044010000b2002280204210520022802002108200641106a101721012000280228101c210420012006102d2203102e2001200420032802046a20032802006b101920012000280228101a0240200128020c200141106a280200460440200141046a2104200128020021070c010b200141046a2104100020012802002107200128020c2001280210460d0010000b20082005200720042802001009200328020022050440200320053602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200641286a10172202200029030810251019200220002903081026200228020c200241106a28020047044010000b2002280204210520022802002108200641106a1017210120002d00101018210420012006102d2203102e2001200420032802046a20032802006b1019200120002c0010101a0240200128020c200141106a280200460440200141046a2104200128020021070c010b200141046a2104100020012802002107200128020c2001280210460d0010000b20082005200720042802001009200328020022050440200320053602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200641406b24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102f200128020c210003402000450d01200141002001280208220320032000103022046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b3802017f017e230041106b2201240020012000103120012903002102200141106a2400420020024201837d200242018885a74118744118750b29002000410036020820004200370200200041001032200041146a41003602002000420037020c20000b5f02017f017e230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42388622024238872002423f8710332001280200210020014104721034200141206a240020000b1300200028020820014904402000200110320b0b1201017e20002001ac22022002423f8710350b3202017f017e230041106b2201240020012000103120012903002102200141106a2400420020024201837d200242018885a70b5902017f017e230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ac22022002423f8710332001280200210020014104721034200141206a240020000b4102017f027e230041106b22012400200120001031200141086a290300210320012903002102200141106a2400420020024201837d2003423f86200242018884850b5401027f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120002000423f8710332001280200210220014104721034200141206a240020020b0d00200020012001423f8710350b7d01037f230041106b2201240020001029024002402000102a450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000102b200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b5601017f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ff0183420010362001280200210020014104721034200141206a240020000b0b0020002001ad420010370b830101037f230041106b2201240020001029024002402000102a450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000102b200128020c220041054f044010000b200128020821030340200004402000417f6a210020032d00002002410874722102200341016a21030c010b0b200141106a240020020b5201017f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad420010362001280200210020014104721034200141206a240020000b5101027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000420010362001280200210220014104721034200141206a240020020b0a0020002001420010370b880101037f41f408410136020041f8082802002100034020000440034041fc0841fc082802002201417f6a2202360200200141014845044041f4084100360200200020024102746a22004184016a280200200041046a28020011020041f408410136020041f80828020021000c010b0b41fc08412036020041f808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000103c20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000103c20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001029200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110382204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001103a21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110391a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b3a01017f200041003602082000420037020020004101103a2201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004103220002802040520020b20002802006a2003200110391a2000200028020420016a3602040b2101017f20011038220220012802044b044010000b200020012001103d2002103e0b2701017f230041206b22022400200241086a2000200141141028103c2100200241206a240020000b9e0102027f027e230041106b2202240020011029024002402001102a450d002001280204450d0020012802002d000041c001490d010b10000b200241086a2001102b200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000b2f01017f200028020820014904402001100d200028020020002802041039210220002001360208200020023602000b0b2301017e20002002423f87220320014201868520024201862001423f888420038510360b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b2301017e20002002423f87220320014201868520024201862001423f888420038510370bbb0101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b024020034138490d002003210403402004450d01200341016a2103200441087621040c000b000b200341016a21040b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020046a3602000b9a0101037f2000200220011003200028020422036a103f20022001200320002802006a10040340024020002802102203200028020c460d00200341786a2802004504401000200028021021030b200341786a22042004280200417f6a220536020020050d002000200436021020002003417c6a2802002203200028020420036b220410016a103f200320002802006a22032004200310020c010b0b0bff0201037f200028020445044041000f0b2000102941012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b0b002000410120001b100d0b3501017f230041106b22004190890436020c418009200028020c41076a417871220036020041840920003602004188093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000103d200010386a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b3601017f200028020820014904402001100d200028020020002802041039210220002001360208200020023602000b200020013602040b0b7901004180080b72696e697400736574496e743800676574496e743800736574496e74333200676574496e74333200736574496e74363400676574496e7436340073657455696e74380067657455696e74380073657455696e7433320067657455696e7433320073657455696e7436340067657455696e743634"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SETINT8 = "setInt8"; - - public static final String FUNC_GETINT8 = "getInt8"; - - public static final String FUNC_SETINT32 = "setInt32"; - - public static final String FUNC_GETINT32 = "getInt32"; - - public static final String FUNC_SETINT64 = "setInt64"; - - public static final String FUNC_GETINT64 = "getInt64"; - - public static final String FUNC_SETUINT8 = "setUint8"; - - public static final String FUNC_GETUINT8 = "getUint8"; - - public static final String FUNC_SETUINT32 = "setUint32"; - - public static final String FUNC_GETUINT32 = "getUint32"; - - public static final String FUNC_SETUINT64 = "setUint64"; - - public static final String FUNC_GETUINT64 = "getUint64"; - - protected IntegerDataTypeContract_2(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected IntegerDataTypeContract_2(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_2.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_2.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_2.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_2.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall setInt8(Int8 input) { - final WasmFunction function = new WasmFunction(FUNC_SETINT8, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setInt8(Int8 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETINT8, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getInt8() { - final WasmFunction function = new WasmFunction(FUNC_GETINT8, Arrays.asList(), Int8.class); - return executeRemoteCall(function, Int8.class); - } - - public RemoteCall setInt32(Int32 input) { - final WasmFunction function = new WasmFunction(FUNC_SETINT32, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setInt32(Int32 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETINT32, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getInt32() { - final WasmFunction function = new WasmFunction(FUNC_GETINT32, Arrays.asList(), Int32.class); - return executeRemoteCall(function, Int32.class); - } - - public RemoteCall setInt64(Int64 input) { - final WasmFunction function = new WasmFunction(FUNC_SETINT64, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setInt64(Int64 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETINT64, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getInt64() { - final WasmFunction function = new WasmFunction(FUNC_GETINT64, Arrays.asList(), Int64.class); - return executeRemoteCall(function, Int64.class); - } - - public RemoteCall setUint8(Uint8 input) { - final WasmFunction function = new WasmFunction(FUNC_SETUINT8, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setUint8(Uint8 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETUINT8, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getUint8() { - final WasmFunction function = new WasmFunction(FUNC_GETUINT8, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall setUint32(Uint32 input) { - final WasmFunction function = new WasmFunction(FUNC_SETUINT32, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setUint32(Uint32 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETUINT32, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getUint32() { - final WasmFunction function = new WasmFunction(FUNC_GETUINT32, Arrays.asList(), Uint32.class); - return executeRemoteCall(function, Uint32.class); - } - - public RemoteCall setUint64(Uint64 input) { - final WasmFunction function = new WasmFunction(FUNC_SETUINT64, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setUint64(Uint64 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETUINT64, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getUint64() { - final WasmFunction function = new WasmFunction(FUNC_GETUINT64, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static IntegerDataTypeContract_2 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new IntegerDataTypeContract_2(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static IntegerDataTypeContract_2 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new IntegerDataTypeContract_2(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract_3.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract_3.java deleted file mode 100644 index 8b501a5b45..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract_3.java +++ /dev/null @@ -1,122 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class IntegerDataTypeContract_3 extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001591060017f017f60027f7f0060017f0060000060037f7f7f0060027f7f017f60047f7f7f7f0060037f7e7e0060037f7f7f017f60047f7f7f7f017f60027f7e0060037e7e7f006000017f60017e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000303656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000603656e760d706c61746f6e5f72657475726e0001033635030105030008040200010f020002000001000001010100010000010309000a010d00010201050001000201020707080403040000060405017001010105030100020608017f0141e088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002806696e766f6b6500100af045350400103d0b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b210120020440200120042002103c0b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b20031033220120042002103e200020023602042000200341017236020020002001360208200120026a41003a00000b0ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204103321022000200136020420002004410172360200200020023602080b200220032001103e200120026a41003a000020000b8c0602047f017e230041b0016b22012400103d10072200101122021008200141406b200141086a200220001012220341001013200141406b101402400240200141406b1015450d002001280244450d0020012802402d000041c001490d010b10000b20014198016a200141406b1016200128029c01220041094f044010000b20012802980121020340200004402000417f6a210020023100002004420886842104200241016a21020c010b0b024002402004500d004180081017200451044020031018200141406b1019101a0c020b41850810172004510440200141306a101b21002003101c410247044010000b200141406b200341011013200141406b2000101d200141406b1019220241c8006a20014198016a2000100f100e2002101a0c020b418f081017200451044020031018200141206a200141406b1019220341c8006a100f210220014198016a101e22002002101f10202000200141306a2002100f1021200028020c200041106a28020047044010000b20002802002000280204100c200028020c22020440200020023602100b2003101a0c020b41990810172004510440200141003a0098012003101c410247044010000b200141406b200341011013200141406b20014198016a1022200141406b1019220041286a20012d0098013a00002000101a0c020b41a1081017200451044020031018200141406b1019220341286a2d0000210220014198016a101e2200200210231020200020021024200028020c200041106a28020047044010000b20002802002000280204100c200028020c22020440200020023602100b2003101a0c020b41a908101720045104402003101c410247044010000b200141406b200341011013200141406b10252100200141406b1019220220003a00102002101a0c020b41b10810172004520d0020031018200141406b101922032c0010210220014198016a101e2200200210261020200020021027200028020c200041106a28020047044010000b20002802002000280204100c200028020c22020440200020023602100b2003101a0c010b10000b1028200141b0016a24000b9b0101047f230041106b220124002001200036020c2000047f41d008200041086a2202411076220041d0082802006a220336020041cc0841cc08280200220420026a41076a417871220236020002400240200341107420024d044041d008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103b41086a0541000b2100200141106a240020000b0c00200020012002411c10290bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103120012003280208200328020c103236020c200320011031410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410291a200341106a24000f0b20032001103141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103210412001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001014200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001102a2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101c410147044010000b0b9e0501097f230041406a22012400200042badda0b2f6c5fa8e03370308200041003a0000200141286a101e22032000290308102b200328020c200341106a28020047044010000b0240200328020022072003280204220610092205450d002001410036022020014200370318200141186a2005102c2007200620012802182202200128021c220820026b100a417f47044020002001200241016a20082002417f736a101210253a0010200521040b2002450d002001200236021c0b200328020c22020440200320023602100b2004450440200020002d00003a00100b41002104200041003a0018200041206a220242f4a2efb3f6e5b8ad03370300200141286a101e22032002290300102b200328020c200341106a28020047044010000b0240200328020022072003280204220610092205450d002001410036022020014200370318200141186a2005102c2007200620012802182202200128021c220820026b100a417f4704402001200241016a20082002417f736a1012200041286a1022200521040b2002450d002001200236021c0b200328020c22020440200320023602100b2004450440200020002d00183a00280b200041306a101b2109200041406b220442a7cea8ad82a0ff995b370300200041c8006a101b2107200141286a101e22032004290300102b200328020c200341106a28020047044010000b0240200328020022062003280204220810092205450440410021020c010b410021022001410036022020014200370318200141186a2005102c2006200820012802182204200128021c220620046b100a417f4704402001200441016a20062004417f736a10122007101d200521020b2004450d002001200436021c0b200328020c22040440200320043602100b200245044020072009100e0b200141406b240020000b910601087f230041d0006b22052400200541386a101e2202200041406b2201290300102d102020022001290300102b200041c8006a2104200228020c200241106a28020047044010000b2002280204210820022802002106200541206a101e21012004101f21072001200541106a102e2203102f2001200720032802046a20032802006b1020200120052004100f10210240200128020c200141106a280200460440200141046a2104200128020021070c010b200141046a2104100020012802002107200128020c2001280210460d0010000b2006200820072004280200100b200328020022040440200320043602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200541386a101e2202200041206a2201290300102d102020022001290300102b200228020c200241106a28020047044010000b2002280204210420022802002108200541206a101e210120002d0028102321062001200541106a102e2203102f2001200620032802046a20032802006b1020200120002d002810240240200128020c200141106a280200460440200141046a2106200128020021070c010b200141046a2106100020012802002107200128020c2001280210460d0010000b2008200420072006280200100b200328020022040440200320043602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200541386a101e22022000290308102d102020022000290308102b200228020c200241106a28020047044010000b2002280204210420022802002108200541206a101e210120002d0010102621062001200541106a102e2203102f2001200620032802046a20032802006b1020200120002c001010270240200128020c200141106a280200460440200141046a2106200128020021070c010b200141046a2106100020012802002107200128020c2001280210460d0010000b2008200420072006280200100b200328020022040440200320043602040b200128020c22030440200120033602100b200228020c22010440200220013602100b200541d0006a24000b190020004200370200200041086a41003602002000103020000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001031200128020c210003402000450d01200141002001280208220320032000103222046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a101b1a0c010b200241186a200010162000102a21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206103321032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1030200241206a24000b29002000410036020820004200370200200041001034200041146a41003602002000420037020c20000bb80101047f230041306b22012400200141286a4100360200200141206a4200370300200141186a4200370300200142003703104101210302400240024020012000100f220028020420002d00002202410176200241017122041b220241014d0440200241016b0d032000280208200041016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103520026a41016a21030b20012003360210200141106a4104721036200141306a240020030b1300200028020820014904402000200110340b0b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a103720042001200220002802006a1004200010380b850101037f230041106b22022400200010140240024020001015450d002000280204450d0020002802002d000041c001490d010b10000b200241086a20001016200228020c220041024f044010000b200228020821030340200004402000417f6a210020032d00002104200341016a21030c010b0b200120044100473a0000200241106a24000b5601017f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ff0183420010392001280200210020014104721036200141206a240020000b0b0020002001ad4200103a0ba50102027f027e230041106b22012400200010140240024020001015450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001016200128020c220041114f044010000b20012802082102034020000440200442088620034238888421042000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a2400420020034201837d200342018885a74118744118750b7302017f027e230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42388622024238874201862002423f8722038520034201862002423f888420038510392001280200210020014104721036200141206a240020000b2601027e20002001ac22024201862002423f8722038520034201862002423f8884200385103a0b880101037f41bc08410136020041c0082802002100034020000440034041c40841c4082802002201417f6a2202360200200141014845044041bc084100360200200020024102746a22004184016a280200200041046a28020011020041bc08410136020041c00828020021000c010b0b41c408412036020041c008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000103f20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000103f20024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101441012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0a00200020014200103a0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001103321060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001103b1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b5101027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000420010392001280200210220014104721036200141206a240020020b3a01017f20004100360208200042003702002000410110332201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004103420002802040520020b20002802006a20032001103b1a2000200028020420016a3602040b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2101017f2001102a220220012802044b044010000b2000200120011040200210410b2701017f230041206b22022400200241086a2000200141141029103f2100200241206a240020000b0b002000410120001b10110b2f01017f200028020820014904402001101120002802002000280204103b210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b3601017f200028020820014904402001101120002802002000280204103b210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1037200120002802006a22012002200110020c010b0b0ba40101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103520036a0520030b41016a21040b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020046a3602000b2801017f2000200220011005200028020422036a103720022001200320002802006a1006200010380bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103b1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041e0880436020c41c808200028020c41076a417871220036020041cc08200036020041d0083f003602000b100020020440200020012002103b1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010402000102a6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b3f01004180080b38696e697400736574537472696e6700676574537472696e6700736574426f6f6c00676574426f6f6c00736574436861720067657443686172"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SETSTRING = "setString"; - - public static final String FUNC_GETSTRING = "getString"; - - public static final String FUNC_SETBOOL = "setBool"; - - public static final String FUNC_GETBOOL = "getBool"; - - public static final String FUNC_SETCHAR = "setChar"; - - public static final String FUNC_GETCHAR = "getChar"; - - protected IntegerDataTypeContract_3(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected IntegerDataTypeContract_3(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_3.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_3.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_3.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_3.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall setString(String input) { - final WasmFunction function = new WasmFunction(FUNC_SETSTRING, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setString(String input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETSTRING, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getString() { - final WasmFunction function = new WasmFunction(FUNC_GETSTRING, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall setBool(Boolean input) { - final WasmFunction function = new WasmFunction(FUNC_SETBOOL, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setBool(Boolean input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETBOOL, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getBool() { - final WasmFunction function = new WasmFunction(FUNC_GETBOOL, Arrays.asList(), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall setChar(Int8 input) { - final WasmFunction function = new WasmFunction(FUNC_SETCHAR, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setChar(Int8 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETCHAR, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getChar() { - final WasmFunction function = new WasmFunction(FUNC_GETCHAR, Arrays.asList(), Int8.class); - return executeRemoteCall(function, Int8.class); - } - - public static IntegerDataTypeContract_3 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new IntegerDataTypeContract_3(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static IntegerDataTypeContract_3 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new IntegerDataTypeContract_3(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract_4.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract_4.java deleted file mode 100644 index ebdd4477d6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/IntegerDataTypeContract_4.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class IntegerDataTypeContract_4 extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001a2011a60027f7f0060017f017f60017f0060037f7f7f0060037f7f7f017f60027f7f017f60000060027e7e017f60037f7e7e0060047f7f7f7f0060047f7e7e7f0060047f7f7f7f017f60057f7e7e7e7e0060047e7e7e7e017f60017f017e60037f7e7f017e60057f7f7f7f7f0060077f7f7f7f7f7f7f0060027f7e0060047f7e7e7e0060027f7c0060037e7e7f006000017f60037f7e7e017f60017e017f60027e7f017f02bc020e03656e760c706c61746f6e5f6465627567000003656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000703656e760f706c61746f6e5f726c705f75313238001503656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001603656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000b03656e7610706c61746f6e5f7365745f7374617465000903656e760d706c61746f6e5f72657475726e00000371700602020503000001040000090001000203000000010808000002010004031101030305060104030e020e000000010102060b020101000201010501010200040000051218010008170001000301070a130b030103100d0c0c190700070014020601010902000101040f0a0a080107010d04050170010b0b05030100020608017f014190a1040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000e0f5f5f66756e63735f6f6e5f65786974003e06696e766f6b6500310910010041010b0a0f1013142125297475760aa4e501700400106d0b0300010b6501027f230041406a22012400200141306a41a00810112102200141086a200141206a41d00910112002101220012d001c044020002001290308370020200041306a200141186a280200360000200041286a200141106a2903003700000b200141406b24000b1f0020004200370200200041086a4100360200200020012001102d102e20000b890b01097f23004180016b220424002001280208200141016a220a20012d0000220341017122051b210b2001280204200341017620051b21094100210341012106024003402006410171410020032009491b04402003200b6a2d00002205415f6a41ff017141de004921062007200541bf7f6a41ff0171411a4972210720082005419f7f6a41ff0171411a49722108200341016a21030c01050240200620072008714101737121072009450d002009210303402003450d012003200b6a21062003417f6a220521032006417f6a2d00004131470d000b0c030b0b0b417f21050b024002402007410171450d00200541076a20094b0d00200541016a4102490d00200941da004b0d00410021032004410036026820044200370360200441e0006a20092005417f7322086a101a4101210702400240024003402003200128020420012d00002206410176200641017122061b20086a4f044002402007410171450d0541002103200441d0006a102221070340200320054604400240200728020420042d005022034101762205200341017122081b2206200228020420022d00002203410176200341017122031b470d062002280208200241016a20031b210320080d00200741016a210603402005450d0820062d000020032d0000470d07200341016a2103200641016a21062005417f6a21050c000b000b0520072001280208200a20012d00004101711b20036a2c000022064120722006200641bf7f6a411a491b411874411875101f200341016a21030c010b0b20060d000c040b05200428026020036a2001280208200a20061b20056a20036a41016a2d000041d0086a2d000022063a00002007200641ff0147712107200341016a21030c010b0b2007280208210503402006450d0220052d000020032d0000470d01200341016a2103200541016a21052006417f6a21060c000b000b20004200370000200041003a0014200041086a4200370000200041106a410036000020042802602203450d03200420033602640c030b200441f0006a20071018200441206a200441f0006a200428026020042802641019200441206a101b2103200428022022050440200420053602240b200428027022050440200420053602740b20034101470d004100210720044100360278200442003703702004410036022820044200370320027f41002004280264417a6a2206200428026022036b2205450d001a200441206a2005101c034020032006464504402004280224220520032d00003a00002004200541016a360224200341016a21030c010b0b2004280220210720042802240b20076b2108410021034100210541002106024003402006200846044002402005410820036b7441ff017145200341054871210320070440200420073602240b20030d00200428027021030c030b05200620076a2d0000200541057441e01f71722105200341056a21030340200341084845044020042005200341786a2203763a007f200441f0006a200441ff006a10170c010b0b200641016a21060c010b0b2004280274200428027022036b4114470d00200441306a4100360200200441286a4200370300200442003703204100210303402003411446450440200441206a20036a41003a0000200341016a21030c010b0b2004280274200428027022056b21064100210303400240200341134b0d0020032006460d00200441206a20036a200320056a2d00003a0000200341016a21030c010b0b20002004290320370000200041013a0014200041106a200441306a280200360000200041086a200441286a29030037000020050440200420053602740b20042802602203450d03200420033602640c030b2003450d00200420033602740b20042802602203450d00200420033602640b20004200370000200041003a0014200041086a4200370000200041106a41003600000b20044180016a24000b5901017f230041306b22022400200241086a2001200241206a41a0081011101220022d001c044020002002290308370020200041306a200241186a280200360000200041286a200241106a2903003700000b200241306a24000b980601057f230041e0006b22022400200241a00810112105200241003602382002420037033041141015200141206a4114101621064100210103402004411446044002402003044020022001410520036b74411f713a0050200241306a200241d0006a10170b200241406b20051018200241d0006a200241406b200228023020022802341019200228024022030440200220033602440b200241d0006a200228025420022802506b41066a101a200241d0006a101b2103410021012002410036022820024200370320200241206a4106101a200341017321044119210303402003417b460d01200228022020016a2004200376411f713a00002003417b6a2103200141016a21010c000b000b05200420066a2d0000200141087441801e71722101200341086a210303402003410548450440200220012003417b6a220376411f713a0050200241306a200241d0006a10170c010b0b200441016a21040c010b0b200228025022030440200220033602540b20024100360218200242003703100240200228023420022802306b2203450d00200241106a2003101c2002280234200228023022016b22034101480d0020022802142001200310161a2002200228021420036a3602140b200241d0006a200241106a200228022020022802241019200228021022030440200220033602140b20004200370200200041086a41003602002000101d2005280208200541016a20022d0000220341017122011b210402402005280204200341017620011b220341016a410a4d0440200020034101743a0000200041016a21010c010b200341116a4170712206101521012000200336020420002006410172360200200020013602080b200120042003101e200120036a41003a000020004131101f200020022802542203200228025022046b200028020420002d0000220141017620014101711b6a10202004210103402003200446450440200020012d000041a4086a2c0000101f200141016a21012003417f6a21030c010b0b20040440200220043602540b200228022022030440200220033602240b200228023022030440200220033602340b200241e0006a24000b0b002000410120001b10320bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10302105200241186a200041086a3602004100210320024100360214200504402005101521030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a1026200241086a10270b200241206a24000bba0101047f20004100360208200042003702002000200128020420012d0000220241017620024101711b410174410172101a200141016a210503402003200128020420012d00002202410176200241017122021b22044f0440200028020020046a41003a000005200028020020036a2001280208200520021b20036a2d000022024105763a00002000280200200128020420012d0000220441017620044101711b6a20036a41016a2002411f713a0000200341016a21030c010b0b0bc60301057f230041206b22042400200128020421050240200320026b22064101480d002006200128020820056b4c0440034020022003460d02200520022d00003a00002001200128020441016a2205360204200241016a21020c000b000b2001200520066a200128020022066b10302108200441186a200141086a36020020044100360214200520066b2106200804402008101521070b200420073602082004200620076a22063602102004200720086a3602142004200636020c200441086a410472210703402002200346450440200620022d00003a00002004200428021041016a2206360210200241016a21020c010b0b200128020020052007102f02402001280204220320056b220241004c0440200428021021020c010b2004200428021020052002101620026a2202360210200128020421030b20012002360204200128020021022001200428020c3602002001280208210520012004280214360208200420033602102004200236020c2004200536021420042002360208200441086a1027200128020421050b20002005360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110302106200241186a200041086a3602002002410036021441002101200604402006101521010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1026200241086a10270c010b200520014d0d002000200120046a3602040b200241206a24000ba50101027f2000280204200028020022016b210241012100037f2002047f20012d000041002000411d764101716b41b3c5d1d0027141002000411c764101716b41dde788ea037141002000411b764101716b41fab384f5017141002000411a764101716b41ed9cc2b20271410020004119764101716b41b2afa9db0371200041057441e0ffffff037173737373737321002002417f6a2102200141016a21010c010520000b0b0b2001017f2000200110152202360200200020023602042000200120026a3602080b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b10002002044020002001200210161a0b0bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b20031015220220062005101e20002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000bf80101057f0240027f20002d0000220241017104402000280204210320002802002202417e71417f6a0c010b20024101762103410a0b220420032001200320014b1b220141106a417071417f6a410a2001410a4b1b2201460d00027f2001410a460440200041016a210520002802080c010b4100200120044d200141016a101522051b0d0120002d0000220241017104404101210620002802080c010b41012106200041016a0b210420052004027f2002410171044020002802040c010b200241fe01714101760b41016a101e2006044020002005360208200020033602042000200141016a4101723602000f0b200020034101743a00000b0bfe0102047f047e230041206b22022400200141e8006a2903002106200141e0006a290300210720001022220341281020200241186a21050340200241106a2007200610232002200229031022082005290300220910242003200229030020077ca74195086a2c0000101f2007420956210120064200522100200650210420082107200921062001200020041b0d000b0240200328020420032d00002201410176200141017122011b2200450d0020002003280208200341016a20011b22016a417f6a21000340200120004f0d0120012d00002104200120002d00003a0000200020043a00002000417f6a2100200141016a21010c000b000b200241206a24000b190020004200370200200041086a41003602002000101d20000b3701017f230041106b220324002003200120021079200329030021012000200341086a29030037030820002001370300200341106a24000b7701017e20002001427f7e200242767e7c2001422088220242ffffffff0f7e7c200242f6ffffff0f7e200142ffffffff0f83220142f6ffffff0f7e22034220887c22024220887c200142ffffffff0f7e200242ffffffff0f837c22024220887c3703082000200342ffffffff0f832002422086843703000b8d0501067f230041306b22022400027f41002001280204220520012d000022034101762206200341017122031b22074102490d001a41002001280208200141016a20031b22042d00004130470d001a20042d000141f800464101740b21042002410036022820024200370320200720046b41016a41017622070440200241106a200241286a360200200220071015220336020820022003360200200220033602042002200320076a36020c200241206a200210262002102720012d00002203410176210620012802042105200341017121030b024002402005200620031b41017104402001280208200141016a20031b20046a2c000010282203417f460d01200220033a0000200241206a20021017200441017221040b200141016a210603402004200128020420012d00002203410176200341017122031b4904402001280208200620031b20046a22052c000010282103200541016a2c0000102821052003417f460d022005417f460d022002200520034104746a3a0000200441026a2104200241206a200210170c010b0b200241003602282002280224210120022802202103200242003703200c010b41002103200228022022040440200220043602240b410021010b200241086a4200370300200241106a4200370300200241186a42003703002002420037030041002104034020044120460440200120036b2101410021040340024020012004460d002004411f4b0d00200220046a200320046a2d00003a0000200441016a21040c010b0b20004198016a2002290300370000200041b0016a200241186a290300370000200041a8016a200241106a290300370000200041a0016a200241086a290300370000200241306a240005200220046a41003a0000200441016a21040c010b0b0b6701017f20002802002000280204200141046a102f200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b4801017f415021010240200041506a41ff0171410a490d0041a97f21012000419f7f6a41ff01714106490d00200041496a417f200041bf7f6a41ff01714106491b0f0b200020016a0bd307010a7f230041206b22032400200341106a41800810112102200341086a41003602002003420037030002400240200228020420032d0010220441017620044101711b220741406b2205410b4f0440200741d0006a4170712204101521062003200536020420032004410172360200200320063602080c010b200320054101743a0000200341017221062005450d010b200641302005102a210620032d001021040b200520066a41003a0000200241016a21082002280208210a2002280204200441fe0171410176200441017122091b2102027f20032d00002204410171220b450440410a2106200441017622042007200720044b1b0c010b2003280200417e71417f6a210620032802042204200720042007491b0b2105200a200820091b2108024002400240027f02400240200520046b20066a20024f044020032802082003410172200b1b21064100210a20022005460440200221090c050b200420056b220b450440200521090c050b20022005490d01200620084f0d02200420066a20084d0d02200520066a20084d04402008200220056b6a21080c030b200620082005102b200220086a2108200220056b21022005210a41000c030b20032006200220046a20056b20066b2004200520022008102c0c050b200620082002102b200220066a200520066a200b102b200521090c030b20050b21092006200a6a220520026a200520096a200b102b0b2006200a6a20082002102b0b200220096b20046a2102024020032d00004101710440200320023602040c010b200320024101743a00000b200220066a41003a00000b20014198016a21062003410172210441002102034020024120464504402003280208200420032d00004101711b20076a200220066a22052d00004104764181086a2d00003a00002003280208200420032d00004101711b20076a41016a20052d0000410f714181086a2d00003a0000200241016a2102200741026a21070c010b0b419208102d21070240027f20032d00002202410171220645044020024101762102410a0c010b200328020421022003280200417e71417f6a0b220520026b20074f04402007450d012003280208200420061b2204027f2002450440410021024192080c010b200420076a20042002102b20074192086a419208200220046a4192084b1b41920820044192084d1b0b2007102b200220076a2107024020032d00004101710440200320073602040c010b200320074101743a00000b200420076a41003a00000c010b20032005200220076a20056b200241002007419208102c0b20002003290300370200200041086a200341086a2802003602002003101d200341206a24000bfc0202027f017e02402002450d00200020013a0000200020026a2203417f6a20013a000020024103490d00200020013a0002200020013a00012003417d6a20013a00002003417e6a20013a000020024107490d00200020013a00032003417c6a20013a000020024109490d002000410020006b41037122046a2203200141ff017141818284086c22013602002003200220046b417c7122046a2202417c6a200136020020044109490d002003200136020820032001360204200241786a2001360200200241746a200136020020044119490d002003200136021820032001360214200320013602102003200136020c200241706a20013602002002416c6a2001360200200241686a2001360200200241646a20013602002001ad220542208620058421052004200341047141187222016b2102200120036a2101034020024120490d0120012005370300200141186a2005370300200141106a2005370300200141086a2005370300200141206a2101200241606a21020c000b000b20000b0f002002044020002001200210590b0ba80101027f027f20002d0000410171044020002802080c010b200041016a0b2108416f2107200141e6ffffff074d0440410b20014101742207200120026a220120012007491b220141106a4170712001410b491b21070b20071015210120050440200120062005101e0b200320046b22030440200120056a200420086a2003101e0b200020013602082000200320056a220536020420002007410172360200200120056a41003a00000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101521032000200236020420002004410172360200200020033602080b200320012002101e200220036a41003a00000b270020022002280200200120006b22016b2202360200200141014e044020022000200110161a0b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0bae0202037f017e230041e0016b22012400106d10082200103222021009200141206a200141086a2002200010332200410010340240200141206a1035220350044041fb0910360c010b418b0a103720035104402000410110380c010b41900a103720035104402000410210380c010b419c0a103720035104402000410310390c010b41a70a1037200351044020004104103a0c010b41b20a103720035104402000103b410247044041ba0a10360b200141206a200041011034200141206a10352103200141206a103c220041e8006a4200370300200041e0006a20033703002000103d0c010b41ea0a1037200351044020004105103a0c010b41f20a103720035104402000410610390c010b41fa0a1037200351044020004107103a0c010b41820b10360b103e200141e0016a24000b9b0101047f230041106b220124002001200036020c2000047f418c21200041086a22024110762200418c212802006a2203360200418821418821280200220420026a41076a417871220236020002400240200341107420024d0440418c21200341016a360200200041016a21000c010b2000450d010b200040000d0010010b20042001410c6a4104101641086a0541000b2100200141106a240020000b0c00200020012002411c103f0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104e20012003280208200328020c104f36020c20032001104e410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114103f1a200341106a24000f0b20032001104e41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104f10702001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b820102027f017e230041106b22012400200010400240024020001041450d00200010420d0020002802040d010b41ac0b10360b200141086a20001043200128020c220041094f044041ac0b10360b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b0c0020002000102d100010010b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2901017f230041c0016b22022400200010442002103c220020011102002000103d200241c0016a24000bb60301067f230041f0016b22022400200241c8016a102221062000103b410247044041ba0a10360b2002200041011034024020021045450440200241e0016a10221a0c010b200241d8016a20021043200210462103024002400240024020022802d8012200044020022802dc01220420034f0d010b41002100200241e8016a4100360200200242003703e001410021040c010b200241e8016a4100360200200242003703e0012000200420032003417f461b22056a21042005410a4b0d010b200220054101743a00e001200241e0016a41017221030c010b200541106a417071220710152103200220053602e401200220074101723602e001200220033602e8010b034020002004470440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020022d00c801410171450440200241003b01c8010c010b20022802d00141003a0000200241003602cc0120022d00c801410171450d00200241003602c8010b200241d0016a200241e8016a280200360200200220022903e0013703c801200241e0016a101d2002103c2203200241e0016a2006104720011100002003103d200241f0016a24000bd30201057f230041a0026b2202240020001044200241c8016a2002103c22052001110000200241d8016a1048210320024198026a410036020020024190026a420037030020024188026a4200370300200242003703800241012101024002400240200241f0016a200241c8016a1047220428020420022d00f0012200410176200041017122061b220041014d0440200041016b0d032004280208200441016a20061b2c0000417f4c0d010c030b200041374b0d010b200041016a21010c010b2000104920006a41016a21010b200220013602800220024180026a410472104a20032001104b200241f0016a200320024180026a200241c8016a10472201280208200141016a20022d008002220041017122041b2001280204200041017620041b104c2201104d20022802f00120022802f401100d200128020c22030440200141106a20033602000b2005103d200241a0026a24000b870101047f230041106b22012400024020001042450d002000280204450d0020002802002d000041c001490d00200141086a2000104e200128020c210003402000450d01200141002001280208220320032000104f22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bb40b02087f047e23004190016b220124002000420037000020004200370020200042ec9687b9d0b2e0d7a87f370318200041106a4100360000200041086a4200370000200041286a4200370000200041306a4100360000200141e8006a1048220320002903181050200141286a2003104d200041206a2104024020012802282206200128022c2207100a2205450d002001410036022020014200370318200141186a2005101a2006200720012802182208200128021c20086b100b417f470440200141c8006a2001280218220241016a200128021c2002417f736a10332206104020014188016a20061043200128028c01210220061045410020024115491b45044041ac0b10360b200141406b22064100360200200141386a220742003703002001420037033020012002411420024114491b22026b41c4006a200128028801200210161a200141106a20062802002202360200200141086a2007290300220937030020012001290330220a370300200441106a2002360000200441086a20093700002004200a370000200521020b20012802182205450d002001200536021c0b200328020c22050440200341106a20053602000b200245044020042000290300370300200441106a200041106a280200360200200441086a200041086a2903003703000b20004200370340200041c8006a4200370300200041d0006a220342f7b392def9859ceae100370300200141e8006a1048220220032903001050200141186a2002104d024020012802182204200128021c2206100a2205450440410021030c010b410021032001410036023820014200370330200141306a2005101a2004200620012802302207200128023420076b100b417f470440200141c8006a2001280230220341016a20012802342003417f736a1033220310400240024020031041450d00200310420d0020032802040d010b41ac0b10360b2001200310432001280204220341114f044041ac0b10360b42002109200128020021044200210a034020030440200a420886200942388884210a2003417f6a210320043100002009420886842109200441016a21040c010b0b20002009370360200041e8006a200a370300200521030b20012802302204450d00200120043602340b200228020c22040440200241106a20043602000b200345044020002000290340370360200041e8006a200041c8006a2903003703000b2000420037007020004188016a420037000020004180016a4200370000200041f8006a420037000020004198016a2203420037000020004190016a220242c0e0a09af8e5a8c936370300200041a0016a4200370000200041a8016a4200370000200041b0016a4200370000200141306a1048220420022903001050200141286a2004104d024020012802282206200128022c2207100a2205450440410021020c010b410021022001410036022020014200370318200141186a2005101a2006200720012802182208200128021c20086b100b417f47044020012001280218220241016a200128021c2002417f736a10332206104020014188016a20061043200128028c01210220061045410020024121491b45044041ac0b10360b20014180016a22064200370300200141f8006a22074200370300200141f0006a220842003703002001420037036820012002412020024120491b22026b4188016a200128028801200210161a200141e0006a20062903002209370300200141d8006a2007290300220a370300200141d0006a2008290300220b37030020012001290368220c370348200341186a2009370000200341106a200a370000200341086a200b3700002003200c370000200521020b20012802182205450d002001200536021c0b200428020c22050440200441106a20053602000b20024504402003200041f0006a2204290300370300200341186a200441186a290300370300200341106a200441106a290300370300200341086a200441086a2903003703000b20014190016a240020000bda0c02077f047e230041e0016b22012400200141206a1048220520004190016a22022903001051104b200520022903001050200141d8016a2005104d200141086a1048210641002102200141f0006a4100360200200141e8006a4200370300200141e0006a4200370300200141d0006a200041b0016a2900002208370300200141c8006a200041a8016a2900002209370300200141406b200041a0016a290000220a37030020014200370358200120004198016a2204290000220b37033820014180016a200a37030020014188016a200937030020014190016a2008370300200141a0016a200a370300200141a8016a2009370300200141b0016a20083703002001200b3703782001200b37039801200141d0016a2008370300200141c8016a2009370300200141c0016a200a3703002001200b3703b801410121070240034020024120460d01200141b8016a20026a2103200241016a210220032d0000450d000b412121070b20012007360258200141d8006a410472104a2006200141d8006a1052220210532006200228020420076a20022802006b104b200141d0006a200441186a2900002208370300200141c8006a200441106a2900002209370300200141406b200441086a290000220a37030020012004290000220b37033820014180016a200a37030020014188016a200937030020014190016a2008370300200141a0016a200a370300200141a8016a2009370300200141b0016a20083703002001200b3703782001200b37039801200141d0016a2008370300200141c8016a2009370300200141c0016a200a3703002001200b3703b8012006200141b8016a4120104c210320012802d801210420012802dc012106200141b8016a2003104d20012802b801210720014198016a2003104d200420062007200128029c01100c200228020022040440200220043602040b200328020c22020440200341106a20023602000b200528020c22020440200541106a20023602000b20014198016a10482202200041d0006a22032903001051104b200220032903001050200141386a2002104d200141f8006a10482104200141d0016a4100360200200141c8016a4200370300200141c0016a4200370300200142003703b801200141b8016a200041e0006a2205290300200041e8006a2206290300105420012802b8012107200141b8016a410472104a2004200141b8016a1052220310532004200720032802046a20032802006b104b20042005290300200629030010552104200128023c210520012802382106200141d8006a2004104d20012802582107200141206a2004104d2006200520072001280224100c200328020022050440200320053602040b200428020c22030440200441106a20033602000b200228020c22030440200241106a20033602000b20014198016a1048220420002903181051104b200420002903181050200141d8016a2004104d200141f8006a1048210541002102200141d0016a4100360200200141c8016a4200370300200141c0016a4200370300200141186a200041306a2800002203360200200141106a200041286a2900002208370300200142003703b801200120002900202209370308200141286a2008370300200141306a2003360200200141e0006a2008370300200141e8006a20033602002001200937032020012009370358200141c8006a2003360200200141406b200837030020012009370338200041206a2106410121070240034020024114460d01200141386a20026a2103200241016a210220032d0000450d000b411521070b200120073602b801200141b8016a410472104a2005200141086a1052220210532005200228020420076a20022802006b104b200141306a200641106a2800002203360200200141286a200641086a2900002208370300200120062900002209370320200141e0006a2008370300200141e8006a2003360200200141406b2008370300200141c8006a20033602002001200937035820012009370338200141c8016a2003360200200141c0016a2008370300200120093703b8012005200141b8016a4114104c210320012802d801210520012802dc012106200141b8016a2003104d20012802b8012107200141386a2003104d200520062007200128023c100c200228020022050440200220053602040b200328020c22020440200341106a20023602000b200428020c22020440200441106a20023602000b200141e0016a24000b880101037f41ec20410136020041f0202802002100034020000440034041f42041f4202802002201417f6a2202360200200141014845044041ec204100360200200020024102746a22004184016a280200200041046a28020011020041ec20410136020041f02028020021000c010b0b41f420412036020041f020200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106e20024f0d002003410471044010010c010b200042003702000b02402003411071450d002000106e20024d0d0020034104710440100120000f0b200042003702000b20000b4101017f200028020445044010010b0240200028020022012d0000418101470d00200028020441014d047f100120002802000520010b2c00014100480d0010010b0b980101037f200028020445044041000f0b20001040200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100120002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100120002802000520020b20016a2d00004100470b0b1900200028020445044041000f0b200010572d000041bf014b0be30101047f027f200110462203200128020422024b047f41ac0b103620012802040520020b04404100200110572c0000417f4a0d011a0b0240024020011045450d00200110572d000041b801490d00200110572d000041c97e6a21020c010b4100210220011042450d00200110572d000041f801490d00200110572d000041897e6a21020b200241016a0b21022000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b11002000103b410147044041ba0a10360b0b1900200028020445044041000f0b200010572d000041c001490bff0201037f200028020445044041000f0b2000104041012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10010b20020b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102e20000b29002000410036020820004200370200200041001056200041146a41003602002000420037020c20000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b1300200028020820014904402000200110560b0b2a01017f2000200120021004200028020422036a107220012002200320002802006a10052000107120000b2200200128020c200141106a28020047044041950b10360b200020012902003702000b2101017f20011046220220012802044b044010010b200020012001106f200210700b2701017f230041206b22022400200241086a200020014114103f106e2100200241206a240020000b0b0020002001420010551a0b5101027f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200042001054200128020021022001410472104a200141206a240020020b3000200041003602082000420037020020004101101c200028020441fe013a00002000200028020441016a36020420000b6401037f200028020c200041106a28020047044041950b10360b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105620002802040520020b20002802006a2003200110161a2000200028020420016a3602040ba40101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003104920036a0520030b41016a21040b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020046a3602000b2a01017f2000200220011006200028020422036a107220022001200320002802006a10072000107120000b2f01017f2000280208200149044020011032200028020020002802041016210220002001360208200020023602000b0b2e01017f02402000280200220104402000280204450d0120010f0b41b50b41b4011058000b41800c41b5011058000b3501017f230041106b220224002002200136020c200241f50b360208200241bc0b360204200220003602002002106c410010731a000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210161a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b5901017f200020002802482201417f6a20017236024820002802002201410871044020002001412072360200417f0f0b200042003702042000200028022c220136021c200020013602142000200120002802306a36021041000b4402017f017e200142ffffffffffff3f832103027f2001423088a741ffff0171220241ffff01470440410420020d011a410241032000200384501b0f0b2000200384500b0bc50101037f230041206b2204240002402002423088a7220641ffff0171220541ffff01460d0020054504402003027f41002001200242004200107d450d001a20042001200242808080808080c0bbc000105d200441106a2004290300200441086a2903002003105c2004290318210220042903102101200328020041887f6a0b3602000c010b200320054182807f6a360200200242ffffffffffff3f832006418080027141feff0072ad4230868421020b2000200137030020002002370308200441206a24000ba60a02047f107e230041e0006b220424002004200242ffffffffffff3f83370358200420013703502004200342ffffffffffff3f83220c370348200442003703402002200385428080808080808080807f8321090240027e02400240024002402002423088a741ffff01712206417f6a41fdff014d41002003423088a741ffff01712205417f6a41feff01491b0d00200150200242ffffffffffffffffff0083220a42808080808080c0ffff0054200a42808080808080c0ffff00511b450440200242808080808080208421090c060b4101200342ffffffffffffffffff0083220242808080808080c0ffff0054200242808080808080c0ffff00511b45044020034280808080808020842109420021010c060b2001200a42808080808080c0ffff008584500440200250450d0242808080808080e0ffff0021090c030b200242808080808080c0ffff00855004402001200a84210242002101200250044042808080808080e0ffff0021090c070b200942808080808080c0ffff008421090c060b2001200a842103420021012003500d052002500d05200a42ffffffffffff3f580440200441d0006a107c21070b200242ffffffffffff3f560d00200441406b107c20076a21072004290348210c200429034021080b2004200837034020042004290358220d42808080808080c00084220f3703582004200c42808080808080c0008422103703482004290350220342208822022008420f86428080feff0f8322017e2211200342ffffffff0f832203200842118842ffffffff0f83220a7e7c220e4220862212200120037e7c220b201254ad200d42ffffffff0f83220d20017e22142003200c420f8620084231888442ffffffff0f8322087e7c22122002200a7e7c2213200e201154ad422086200e422088847c220e2001200f422088220c7e2215201042118842ffffffff0f83220120037e7c220f200a200d7e7c2210200220087e7c22114220867c22167c2103200520066a20076a4181807f6a21050240200a200c7e22172008200d7e7c220a201754ad200a200120027e7c2202200a54ad7c2001200c7e7c2001200d7e22012008200c7e7c2208200154ad4220862008422088847c200220084220867c2208200254ad7c20082012201454ad2013201254ad7c7c2202200854ad7c20022011201054ad200f201554ad2010200f54ad7c7c4220862011422088847c2208200254ad7c2008200e201354ad2016200e54ad7c7c2202200854ad7c220842808080808080c0008350450440200541016a21050c010b200b423f88210120084201862002423f8884210820024201862003423f88842102200b420186210b200120034201868421030b200541ffff014e0440200942808080808080c0ffff008421090c020b200541004a0d02410120056b220641ff004b0d01200441106a200b200320061078200441206a20022008200541ff006a22051077200441306a200b200320051077200420022008200610782004290330200441386a29030084420052ad200429032020042903108484210b200441286a290300200441186a29030084210320042903002102200441086a2903000c030b200942808080808080c0ffff008421090b420021010c020b200842ffffffffffff3f832005ad423086840b2009842109200b502003427f552003428080808080808080807f511b4504402009200242017c2201200254ad7c21090c010b200b2003428080808080808080807f858450450440200221010c010b2009200220024201837c2201200254ad7c21090b2000200937030820002001370300200441e0006a24000b9a2f021d7f047e230041e03c6b22062400200641a61f3602d002200641b6026a211d419e7d20066b211e200641df026a211f200641e0026a410872211c200641e0026a410972211820064190396a2120200641e0026a211a200641b7026a211602400240024003400240200441ffffffff0720126b4a0d00200420126a2112024002400240027f0240027f02400240024002400240024002400240024002400240024002400240024020062802d00222092d000022070440410021042009210503400240200741ff01712207450d0020074125460d00200441016a210420052d00012107200541016a21050c010b0b200620053602d0022004210503400240200520096a22072d00004125470d00200741016a2d00004125470d00200441016a2104200541026a21050c010b0b200620073602d002200441ffffffff0720126b220b4a0d1620000440200020092004105f0b20040d17417f210f200741016a22042c000041506a220541094d0440200741036a2004200741026a2d000041244622071b21042005417f20071b210f4101201720071b21170b4100210503400240200620043602d00220042c0000220a41606a2207411f4b0d00410120077422074189d10471450d00200441016a2104200520077221050c010b0b0240200a412a460440027f0240200441016a220a2c000041506a220741094b0d00200441026a2d00004124470d00200320074102746a410a360200200441036a210a41012117200441016a2c000041047420026a41807a6a2802000c010b20170d0620004504402006200a3602d00241002117410021100c030b20012001280200220441046a3602004100211720042802000b21102006200a3602d0022010417f4a0d01410020106b211020054180c0007221050c010b200641d0026a106022104100480d1720062802d002210a0b41002104417f2108027f200a2d0000412e470440200a210741000c010b200a2d0001412a460440027f0240200a2c000241506a220741094b0d00200a2d00034124470d00200320074102746a410a360200200a41046a2107200a2c000241047420026a41807a6a2802000c010b20170d06200a41026a210741002000450d001a20012001280200220a41046a360200200a2802000b2108200620073602d0022008417f73411f760c010b2006200a41016a3602d002200641d0026a1060210820062802d002210741010b210e03402004210a20072c000041bf7f6a220441394b0d03200741016a2107200a413a6c20046a41901b6a2d00002204417f6a4108490d000b200620073602d0022004450d030240024002402004411b460440200f417f4c0d010c070b200f4100480d012003200f4102746a200436020020062002200f4104746a22042903003703c0022006200441086a2903003703c8020b410021042000450d190c010b2000450d1a200641c0026a2004200110610b200541ffff7b712211200520054180c000711b210c2007417f6a2c00002204415f7120042004410f714103461b2004200a1b221341ad7f6a220441254d0d01201341bf7f6a220441064b0d040240200441016b0e03050005060b200641003602fc01200620062903c0023e02f8012006200641f8016a3602c002417f2108200641f8016a0c100b20000d192017450d18200241106a2107200341046a210541012104034002402004410a47047f200528020022090d01200405410a0b41027421040340200441046a2205412c460440410121120c1d0b200320046a2107200521042007280200450d000b0c040b2007200920011061200741106a2107200541046a2105200441016a21040c000b000b200441016b0e25020202020b0202020202020202030207080303030208020202050c090a020204020f02020b0d0b200620073602d0020b41802141163602000c140b4100210541f01e210f0c0f0b2008417f4c4100200e1b0d1020062903c002212220062903c80221212006410036028c03027f2021427f5704402021428080808080808080807f8521214101211541811f0c010b200c4180107104404101211541841f0c010b41871f41821f200c41017122151b0b211b024020222021105b41014c0440200041202010201541036a2204201110622000201b2015105f2000419c1f41a01f201341207141057622051b41941f41981f20051b202220212022202110631b4103105f2000412020102004200c4180c0007310622010200420042010481b21040c010b200641e0016a202220212006418c036a105c200641d0016a20062903e001222120062903e801222220212022106420062903d0012221200641d8016a290300222242004200107d04402006200628028c03417f6a36028c030b2013412072221941e100460440201b41096a201b201341207122091b210e02402008411a4b0d00411b20086b450d00200841656a210442808080808080c081c000212342002124034020040440200641f0006a2024202342808080808080c081c000105d200441016a2104200641f8006a2903002123200629037021240c010b0b200e2d0000412d460440200641406b20212022428080808080808080807f85202420231065200641306a202420232006290340200641c8006a2903001064200641386a290300428080808080808080807f852122200629033021210c010b200641e0006a20212022202420231064200641d0006a2006290360200641e8006a290300202420231065200641d8006a2903002122200629035021210b2015410272210a201a200628028c0322052005411f7522046a200473ad201a10662204460440200641303a00df02201f21040b2004417e6a220f2013410f6a3a00002004417f6a412d412b20054100481b3a0000200c410871210b200641e0026a21050340200641206a20212022106722071068200641106a202120222006290320200641286a290300106520062006290310200641186a29030042808080808080c081c000105d20052204200741e01e6a2d00002009723a0000200641086a2903002122200629030021210240200441016a2205200641e0026a6b4101470d000240200b0d00200841004a0d002021202242004200107d450d010b2004412e3a0001200441026a21050b2021202242004200107d0d000b417f210441fdffffff07200a201a200f6b22096a220b6b2008480d01200041202010200b200841026a2005200641e0026a6b22072005201e6a2008481b200720081b22056a2204200c10622000200e200a105f2000413020102004200c418080047310622000200641e0026a2007105f20004130200520076b4100410010622000200f2009105f2000412020102004200c4180c0007310622010200420042010481b21040c010b2008410048210402402021202242004200107d450440200628028c03210e0c010b200641c0016a2021202242808080808080c08dc000105d2006200628028c0341646a220e36028c03200641c8016a290300212220062903c00121210b4106200820041b210d20064190036a2020200e4100481b221421050340200641b0016a2021202210692204106a200641a0016a2021202220062903b001200641b8016a290300106520064190016a20062903a001200641a8016a2903004280808080e59ab78ec000105d20052004360200200541046a2105200629039001222120064198016a290300222242004200107d0d000b2014210b0340200e41014e04402005417c6a2104200e411d200e411d481b2209ad21224100210703402004200b4f044020042007ad20043502002022867c22212021428094ebdc038022214280ec94a37c7e7c3e02002004417c6a21042021a721070c010b0b20070440200b417c6a220b20073602000b034020052204200b4b04402004417c6a2205280200450d010b0b200e20096b210e200421050c010b0b2006200e36028c03200d412d6a41096e41016a21110340200e417f4c044041002107418094ebdc0341094100200e6b200e4177481b220a762108417f200a74417f73210f200b2104034020042005490440200420042802002209200a7620076a360200200441046a21042009200f7120086c21070c010b0b2014200b200b41046a200b2802001b220b201941e600461b220420114102746a2007044020052007360200200541046a21050b2005200520046b41027520114a1b2105200a200e6a210e0c010b0b2006200e36028c03410021070240200b20054f0d002014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200d41002007201941e600461b6b201941e70046220a200d410047716b2204200520146b41027541096c41776a4804402004418080096a2204200441096d220841776c6a2104410a21090340200441074c04402009410a6c2109200441016a21040c010b0b200841027420146a220f4184807c6a22082802002204200420096e221120096c220e6b2104024041002005200f4188807c6a22194620041b0d00024020114101714504404280808080808080b8c0002121420021222008200b4d0d012009418094ebdc03470d012008417c6a2d0000410171450d010b4280808080808080b8c0002121420121220b4280808080808080ff3f42808080808080c0ff3f42808080808080e0ff3f200420094101762211461b42808080808080e0ff3f20052019461b20042011491b212302402015450d00201b2d0000412d470d002023428080808080808080807f8421234280808080808080b84021210b20064180016a202220214200202310642008200e36020020062903800120064188016a29030020222021107d450d0020082009200e6a2207360200200f4180807c6a210403402007418094ebdc034f0440200441046a41003602002004200b490440200b417c6a220b41003602000b2004200428020041016a22073602002004417c6a21040c010b0b200441046a21082014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200841046a22042005200520044b1b21050b027f0340410020052209200b4d0d011a2009417c6a2205280200450d000b41010b210e0240200a450440200c41087121080c010b2007417f73417f200d4101200d1b220420074a2007417b4a7122051b20046a210d417f417e20051b20136a2113200c41087122080d00410921050240200e450d002009417c6a280200220a450d0041002105410a21040340200a2004700d01200541016a21052004410a6c21040c000b000b200920146b41027541096c41776a2104201341207241e60046044041002108200d200420056b22044100200441004a1b2204200d2004481b210d0c010b41002108200d200420076a20056b22044100200441004a1b2204200d2004481b210d0b417f2104200d41fdffffff0741feffffff072008200d72220f1b4a0d00200d200f4100476a41016a21110240201341207241e600472219450440200741ffffffff0720116b4a0d0220074100200741004a1b210a0c010b20072007411f7522056a200573ad201a1066417e6a21050340201a20056b220a417e6a41014c0440200541016a41303a00002005417f6a21050c010b0b200520133a0000200541016a412d412b20074100481b3a0000200a41ffffffff0720116b4a0d010b200a20116a2207201541ffffffff07734a0d00200041202010200720156a2211200c10622000201b2015105f2000413020102011200c41808004731062024020194504402014200b200b20144b1b220721050340200520144d0440200535020020181066210402402005200747044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b20042018470d00200641303a00e802201c21040b20002004201820046b105f200541046a21050c010b0b200f0440200041a41f4101105f0b03400240200520094f0d00200d4101480d00200535020020181066210403402004200641e0026a4b04402004417f6a220441303a00000c010b0b20002004200d4109200d4109481b105f200d41776a210d200541046a21050c010b0b20004130200d41096a4109410010620c010b2009200b41046a200e1b210a200b2107034002402007200a4f0d00200d4100480d0020182007350200201810662204460440200641303a00e802201c21040b02402007200b47044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b200020044101105f200441016a21042008454100200d4101481b0d00200041a41f4101105f0b20002004201820046b2209200d200d20094a1b105f200741046a2107200d20096b210d0c010b0b20004130200d41126a41124100106220002005201a20056b105f0b2000412020102011200c4180c0007310622010201120112010481b21040b200441004e0d110c100b20062802c002220441fa1e20041b21090c010b410021044180212802002105037f200441d80046047f41d80005200441900c6a2d0000200546047f200405200441016a21040c020b0b0b210741f00c210903402007450d01034020092d00002104200941016a2205210920040d000b2007417f6a2107200521090c000b000b4100210541ffffffff07200820084100481b210a0240024003400240200520096a21042005200a46220f0d002004410371450d0020042d0000450d02200541016a21050c010b0b41002107200f0d01200a20056b210720042d0000450d01200520096a2104034020074104490d0220042802002205417f73200541fffdfb776a71418081828478710d022007417c6a2107200441046a21040c000b000b200a20056b21070b03400240410021052007450440410021040c010b20042d0000450d002007417f6a2107200441016a21040c010b0b2009200420096b200a20041b22076a210441f01e210f2008417f4a04402011210c200721080c0d0b2011210c2007210820042d0000450d0c0c0d0b200620062903c0023c00b6024100210541f01e210f41012108201d2109201621042011210c0c0b0b20062903c0022221427f5704402006420020217d22213703c0024101210541f01e0c080b200c4180107104404101210541f11e0c080b41f21e41f01e200c41017122051b0c070b20062903c00221212016210903402021504504402009417f6a22092021a74107714130723a0000202142038821210c010b0b4100210541f01e210f200c410871450d072008201620096b220441016a200820044a1b21080c070b20084108200841084b1b2108200c410872210c41f80021130b2013412071210420062903c00221212016210903402021504504402009417f6a22092021a7410f7141e01e6a2d00002004723a0000202142048821210c010b0b4100210541f01e210f200c410871450d0520062903c002500d05201341047541f01e6a210f410221050c050b41002104200a41ff0171220541074b0d080240024002400240024002400240200541016b0e07010203040f0506000b20062802c00220123602000c0e0b20062802c00220123602000c0d0b20062802c0022012ac3703000c0c0b20062802c00220123b01000c0b0b20062802c00220123a00000c0a0b20062802c00220123602000c090b20062802c0022012ac3703000c080b20062802c0020b21094100210420092105024003400240024020042008470440200528020022070d01200421080b20084100480d092000412020102008200c106241002104034020042008460d0420092802002205450d0420054180014f0d02200620053a00f401200441016a220420084b0d042000200641f4016a4101105f200941046a21090c000b000b20074180014f0d00200620073a00f401200441016a2104200541046a21050c010b0b000b2000412020102008200c4180c00073106220102008201020084a1b21040c060b4100210520062903c002212141f01e0b210f20212016106621090b200e410020084100481b0d02200c41ffff7b71200c200e1b210c20062903c0022121024020080d00202150450d0041002108201621090c010b2008202150201620096b6a2204200820044a1b21080b201621040b200420096b220a20082008200a481b220841ffffffff0720056b4a0d00200520086a2207201020102007481b2204200b4a0d002000412020042007200c10622000200f2005105f2000413020042007200c41808004731062200041302008200a4100106220002009200a105f2000412020042007200c4180c0007310620c010b0b41802141cb003602000b417f21120c010b410021120b200641e03c6a240020120bd30101057f024020002d00004120710d0020002802102203047f2003052000105a0d0120002802100b200028021422056b200249044020002001200220002802241104001a0f0b41002103024020002802504100480d0020012104034020022003460d01200341016a2103200220046a21062004417f6a220721042006417f6a2d0000410a470d000b20002001200220036b41016a220420002802241104002004490d01200220076a41016a2101200028021421052003417f6a21020b20052001200210161a2000200028021420026a3602140b0b5d01047f20002802002102034020022c000041506a220341094b450440417f21042000200241016a2202360200200141cc99b3e6004d047f417f20032001410a6c22016a200341ffffffff0720016b4a1b0520040b21010c010b0b20010ba00502017f017e230041106b220324000240200141776a220141114b0d00024002400240024002400240024002400240024002400240024002400240024002400240200141016b0e110102050304060708090a0b0c0d0e0f1011000b20022002280200220141046a360200200020012802003602000c110b20022002280200220141046a360200200020013402003703000c100b20022002280200220141046a360200200020013502003703000c0f0b20022002280200220141046a360200200020013402003703000c0e0b20022002280200220141046a360200200020013502003703000c0d0b2002200228020041076a417871220141086a360200200020012903003703000c0c0b20022002280200220141046a360200200020013201003703000c0b0b20022002280200220141046a360200200020013301003703000c0a0b20022002280200220141046a360200200020013000003703000c090b20022002280200220141046a360200200020013100003703000c080b2002200228020041076a417871220141086a360200200020012903003703000c070b20022002280200220141046a360200200020013502003703000c060b2002200228020041076a417871220141086a360200200020012903003703000c050b2002200228020041076a417871220141086a360200200020012903003703000c040b20022002280200220141046a360200200020013402003703000c030b20022002280200220141046a360200200020013502003703000c020b2002200228020041076a417871220141086a360200200320012b0300106b2000200341086a290300370308200020032903003703000c010b20022002280200410f6a417071220141106a3602002001290300210420002001290308370308200020043703000b200341106a24000b6a01017f23004180026b220524000240200220034c0d0020044180c004710d0020052001200220036b22024180022002418002491b102a2103034020024180024945044020002003418002105f200241807e6a21020c010b0b200020032002105f0b20054180026a24000b63002000420052200142ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b2002420052200342ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b720bef0902037f037e230041f0006b22052400200442ffffffffffffffffff00832108024002402001427f7c2209427f51200242ffffffffffffffffff0083220a2009200154ad7c427f7c220942ffffffffffffbfffff0056200942ffffffffffffbfffff00511b4504402003427f7c2209427f5220082009200354ad7c427f7c220942ffffffffffffbfffff0054200942ffffffffffffbfffff00511b0d010b200150200a42808080808080c0ffff0054200a42808080808080c0ffff00511b45044020024280808080808020842104200121030c020b200350200842808080808080c0ffff0054200842808080808080c0ffff00511b450440200442808080808080208421040c020b2001200a42808080808080c0ffff00858450044042808080808080e0ffff00200220012003852002200485428080808080808080807f85845022061b21044200200120061b21030c020b2003200842808080808080c0ffff008584500d012001200a8450044020032008844200520d0220012003832103200220048321040c020b200320088450450d0020012103200221040c010b20052003200120032001562008200a562008200a511b22061b37036020052004200220061b220842ffffffffffff3f8337036820052002200420061b220242ffffffffffff3f83220437035820052001200320061b22013703502002423088a741ffff017121072008423088a741ffff01712206450440200541e0006a107a21060b2007450440200541d0006a107a210720052903582104200529035021010b200520014203862203370350200520052903602209420386220a370360200520052903684203862009423d8884428080808080808004842209370368200520044203862001423d888442808080808080800484220437035820022008852101200620076b220704402005027e200741ff004d0440200541306a2003200420071078200541406b2003200441800120076b10772005200541386a290300220437035820052903302005290340200541c8006a29030084420052ad840c010b420021042005420037035842010b22033703500b02402001427f5704402005200a20037d22013703602005200920047d200a200354ad7d2203370368200120038450044042002103420021040c030b200342ffffffffffffff03560d01200541206a2001200320012003107b41746a220710772005200541286a2903002203370368200520052903202201370360200620076b21060c010b20052003200a7c220137036020052001200354ad200420097c7c2204370368200442808080808080800883500440200421030c010b200520044201882203370368200520014201832004423f86200142018884842201370360200641016a21060b2008428080808080808080807f832104200641ffff014e0440200442808080808080c0ffff00842104420021030c010b410021070240200641004a0440200621070c010b200520012003410120066b1078200541106a20012003200641ff006a10772005200541086a2903002203370368200520052903002005290310200541186a29030084420052ad8422013703600b200342038842ffffffffffff3f832004842007ad423086842003423d8620014203888422042001a7410771220641044bad7c2203200454ad7c2003420183420020064104461b220120037c2203200154ad7c21040b2000200337030020002004370308200541f0006a24000b4401017f230041106b2205240020052001200220032004428080808080808080807f851064200529030021012000200529030837030820002001370300200541106a24000b6602027f017e03402000428080808010544504402001417f6a220120002000420a80220442767e7ca74130723a0000200421000c010b0b2000a721020340200204402001417f6a220120022002410a6e220341766c6a4130723a0000200321020c010b0b20010b850101027f230041106b22032400027f41002001423088a741ffff0171220241ffff00490d001a41808080807841ffffffff0720014200531b20024181807f6a41204f0d001a20032000200142ffffffffffff3f8342808080808080c0008441ef800120026b10784100200328020022026b200220014200531b0b2102200341106a240020020b810102027f017e230041106b220324002000027e200145044042000c010b200320012001411f7522026a2002732202ad4200200267220241d1006a1077200341086a29030042808080808080c00085419e800120026bad4230867c200141808080807871ad42208684210420032903000b37030020002004370308200341106a24000b6d01037f230041106b22022400024020014200530d002001423088a741ffff0171220441ffff00490d00417f210320044181807f6a411f4b0d0020022000200142ffffffffffff3f8342808080808080c0008441ef800120046b1078200228020021030b200241106a240020030b6902017f017e230041106b220224002000027e200145044042000c010b20022001ad420041f000200167411f7322016b1077200241086a29030042808080808080c00085200141ffff006aad4230867c210320022903000b37030020002003370308200241106a24000b830102027f027e230041106b220224002001bd22044280808080088321052000027e200442ffffffff078322045004404200210442000c010b2002200442002004a7672203413c6a1077200241086a29030042808080808080c000854181f80020036bad42308684210420022903000b37030020002004200584370308200241106a24000bce0201037f230041b0026b220124002001200036020c200120003602ac0220014180026a41004128102a1a200120012802ac023602a8024100200141a8026a200141e0006a20014180026a105e41004e0440419c202802001a41d01f280200210241982028020041004c044041d01f2002415f713602000b027f0240024041802028020045044041802041d00036020041ec1f410036020041e01f420037030041fc1f280200210341fc1f200141106a3602000c010b41e01f2802000d010b417f41d01f105a0d011a0b41d01f200141a8026a200141e0006a20014180026a105e0b2100200241207121022003047f41d01f4100410041f41f2802001104001a418020410036020041fc1f200336020041ec1f410036020041e01f410036020041e41f280200210341e41f410036020041000520000b1a41d01f41d01f2802002002723602000b200141b0026a24000b3501017f230041106b22004190a10436020c418421200028020c41076a41787122003602004188212000360200418c213f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000106f200010466a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401001200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a1072200120002802006a22012002200110030c010b0b0b3601017f2000280208200149044020011032200028020020002802041016210220002001360208200020023602000b200020013602040bb50101027f20004504404100210041e820280200044041e820280200107321000b41e020280200044041e020280200107320007221000b41e420410136020041e420410036020020000f0b200028024c1a02402000280214200028021c460d0020004100410020002802241104001a20002802140d00417f0f0b20002802042201200028020822024704402000200120026bac41012000280228110f001a0b2000410036021c200042003703102000420037020441000b040041000b2901017f200028021c2203200028021420036b1000200120021000200028021420026a200028021c6b0b0400427f0b5001017e0240200341c0007104402001200341406aad862102420021010c010b2003450d0020022003ad220486200141c00020036bad88842102200120048621010b20002001370300200020023703080b6001017e0240027e200341c0007104402002200341406aad8821014200210242000c010b2003450d01200241c00020036bad8620012003ad2204888421012002200488210242000b2104200120048421010b20002001370300200020023703080bbe0202027f047e2000027e2002500440420021022001420a800c010b0240027e200141fd00200279a76b220341c000460d001a2003413f4d0440200241c00020036bad22058620012003ad2207888421062002200788210820012005862107420021050c020b200241800120036bad2205862001200341406aad22068884210720022006882106200120058621050c010b21072002210641c00021030b03402003044020084201862006423f888422022002427f8542007c20064201862007423f88842206427f852202420a7c200254ad7c423f8722024200837d20062002420a83220154ad7d2108200620017d210620074201862005423f888421072003417f6a21032004ad20054201868421052002a741017121040c010b0b20074201862005423f888421022004ad2005420186427e83840b370300200020023703080b5402037f027e230041106b22012400200120002903002204200041086a2202290300220520042005107b220341716a10772002200141086a29030037030020002001290300370300200141106a2400411020036b0b1701017f2000200120015022021b792002410674ad7ca70b6102037f027e230041106b22012400200120002903002205200041086a220329030022042005200420045022021b792002410674ad7ca7220241716a1077200020012903003703002003200141086a290300370300200141106a2400411020026b0bdb0102017f027e4101210402402000420052200142ffffffffffffffffff0083220542808080808080c0ffff0056200542808080808080c0ffff00511b0d002002420052200342ffffffffffffffffff0083220642808080808080c0ffff0056200642808080808080c0ffff00511b0d00200020028420052006848450044041000f0b20012003834200590440417f21042000200254200120035320012003511b0d0120002002852001200385844200520f0b417f21042000200256200120035520012003511b0d00200020028520012003858442005221040b20040b0be51614004181080b43303132333435363738396162636465660030780030313233343536373839006174780071707a7279397838676632747664773073336a6e35346b686365366d7561376c0041d0080b8113ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff6174783177326b6a6b75666c3467327639337864393461306c65776337357566647236366c783670767100696e76616c6964206d6574686f640a00696e697400696e69744164647265737300736574416464726573730067657441646472657373007365745532353600546865206e756d626572206f66206d6574686f6420706172616d657465727320646f6573206e6f74206d617463680a006765745532353600736574483235360067657448323536006e6f206d6574686f6420746f2063616c6c0a006c697374537461636b206973206e6f7420656d707479006261642063617374006d5f64617461002f7573722f6c6f63616c2f62696e2f2e2e2f706c61746f6e2e6364742f696e636c7564652f706c61746f6e2f766563746f725f7265662e68006f70657261746f725b5d005f69203c206d5f636f756e7400000000542122190d010203114b1c0c10040b1d121e27686e6f7071622005060f1314151a08160728241718090a0e1b1f252383827d262a2b3c3d3e3f43474a4d58595a5b5c5d5e5f60616364656667696a6b6c727374797a7b7c480000000000000000496c6c6567616c20627974652073657175656e636500446f6d61696e206572726f7200526573756c74206e6f7420726570726573656e7461626c65004e6f74206120747479005065726d697373696f6e2064656e696564004f7065726174696f6e206e6f74207065726d6974746564004e6f20737563682066696c65206f72206469726563746f7279004e6f20737563682070726f636573730046696c65206578697374730056616c756520746f6f206c6172676520666f7220646174612074797065004e6f207370616365206c656674206f6e20646576696365004f7574206f66206d656d6f7279005265736f75726365206275737900496e7465727275707465642073797374656d2063616c6c005265736f757263652074656d706f726172696c7920756e617661696c61626c6500496e76616c6964207365656b0043726f73732d646576696365206c696e6b00526561642d6f6e6c792066696c652073797374656d004469726563746f7279206e6f7420656d70747900436f6e6e656374696f6e2072657365742062792070656572004f7065726174696f6e2074696d6564206f757400436f6e6e656374696f6e207265667573656400486f737420697320646f776e00486f737420697320756e726561636861626c65004164647265737320696e207573650042726f6b656e207069706500492f4f206572726f72004e6f207375636820646576696365206f72206164647265737300426c6f636b20646576696365207265717569726564004e6f207375636820646576696365004e6f742061206469726563746f72790049732061206469726563746f727900546578742066696c652062757379004578656320666f726d6174206572726f7200496e76616c696420617267756d656e7400417267756d656e74206c69737420746f6f206c6f6e670053796d626f6c6963206c696e6b206c6f6f700046696c656e616d6520746f6f206c6f6e6700546f6f206d616e79206f70656e2066696c657320696e2073797374656d004e6f2066696c652064657363726970746f727320617661696c61626c65004261642066696c652064657363726970746f72004e6f206368696c642070726f636573730042616420616464726573730046696c6520746f6f206c6172676500546f6f206d616e79206c696e6b73004e6f206c6f636b7320617661696c61626c65005265736f7572636520646561646c6f636b20776f756c64206f63637572005374617465206e6f74207265636f76657261626c650050726576696f7573206f776e65722064696564004f7065726174696f6e2063616e63656c65640046756e6374696f6e206e6f7420696d706c656d656e746564004e6f206d657373616765206f6620646573697265642074797065004964656e7469666965722072656d6f76656400446576696365206e6f7420612073747265616d004e6f206461746120617661696c61626c65004465766963652074696d656f7574004f7574206f662073747265616d73207265736f7572636573004c696e6b20686173206265656e20736576657265640050726f746f636f6c206572726f7200426164206d6573736167650046696c652064657363726970746f7220696e20626164207374617465004e6f74206120736f636b65740044657374696e6174696f6e2061646472657373207265717569726564004d65737361676520746f6f206c617267650050726f746f636f6c2077726f6e67207479706520666f7220736f636b65740050726f746f636f6c206e6f7420617661696c61626c650050726f746f636f6c206e6f7420737570706f7274656400536f636b65742074797065206e6f7420737570706f72746564004e6f7420737570706f727465640050726f746f636f6c2066616d696c79206e6f7420737570706f7274656400416464726573732066616d696c79206e6f7420737570706f727465642062792070726f746f636f6c0041646472657373206e6f7420617661696c61626c65004e6574776f726b20697320646f776e004e6574776f726b20756e726561636861626c6500436f6e6e656374696f6e207265736574206279206e6574776f726b00436f6e6e656374696f6e2061626f72746564004e6f2062756666657220737061636520617661696c61626c6500536f636b657420697320636f6e6e656374656400536f636b6574206e6f7420636f6e6e65637465640043616e6e6f742073656e6420616674657220736f636b65742073687574646f776e004f7065726174696f6e20616c726561647920696e2070726f6772657373004f7065726174696f6e20696e2070726f6772657373005374616c652066696c652068616e646c650052656d6f746520492f4f206572726f720051756f7461206578636565646564004e6f206d656469756d20666f756e640057726f6e67206d656469756d2074797065004d756c7469686f7020617474656d70746564004e6f206572726f7220696e666f726d6174696f6e00000019000a00191919000000000500000000000009000000000b00000000000000001900110a191919030a0700011b090b18000009060b00000b0006190000001919190041e11b0b210e000000000000000019000a0d191919000d00000200090e00000009000e00000e00419b1c0b010c0041a71c0b1513000000001300000000090c00000000000c00000c0041d51c0b01100041e11c0b150f000000040f00000000091000000000001000001000418f1d0b011200419b1d0b1e11000000001100000000091200000000001200001200001a0000001a1a1a0041d21d0b0e1a0000001a1a1a000000000000090041831e0b011400418f1e0b151700000000170000"; - - private static String BINARY_1 = "000009140000000000140000140041bd1e0b01160041c91e0b7f1500000000150000000009160000000000160000160000303132333435363738394142434445462d2b2020203058307800286e756c6c29002d30582b30582030582d30782b307820307800696e6600494e46006e616e004e414e002e00417373657274696f6e206661696c65643a202573202825733a2025733a202564290a0041d01f0b01050041dc1f0b01080041f41f0b0a090000000a000000801000418c200b010200419c200b08ffffffffffffffff0041e0200b02d00f"; - - public static String BINARY = BINARY_0 + BINARY_1; - - public static final String FUNC_GETH256 = "getH256"; - - public static final String FUNC_INITADDRESS = "initAddress"; - - public static final String FUNC_SETADDRESS = "setAddress"; - - public static final String FUNC_GETADDRESS = "getAddress"; - - public static final String FUNC_SETU256 = "setU256"; - - public static final String FUNC_GETU256 = "getU256"; - - public static final String FUNC_SETH256 = "setH256"; - - protected IntegerDataTypeContract_4(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected IntegerDataTypeContract_4(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_4.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_4.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_4.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(IntegerDataTypeContract_4.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall getH256() { - final WasmFunction function = new WasmFunction(FUNC_GETH256, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall initAddress() { - final WasmFunction function = new WasmFunction(FUNC_INITADDRESS, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall initAddress(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_INITADDRESS, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall setAddress(String input) { - final WasmFunction function = new WasmFunction(FUNC_SETADDRESS, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setAddress(String input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETADDRESS, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getAddress() { - final WasmFunction function = new WasmFunction(FUNC_GETADDRESS, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall setU256(Uint64 input) { - final WasmFunction function = new WasmFunction(FUNC_SETU256, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setU256(Uint64 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETU256, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getU256() { - final WasmFunction function = new WasmFunction(FUNC_GETU256, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall setH256(String input) { - final WasmFunction function = new WasmFunction(FUNC_SETH256, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setH256(String input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETH256, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static IntegerDataTypeContract_4 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new IntegerDataTypeContract_4(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static IntegerDataTypeContract_4 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new IntegerDataTypeContract_4(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/LATToken.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/LATToken.java deleted file mode 100644 index a30dd6a673..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/LATToken.java +++ /dev/null @@ -1,270 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class LATToken extends WasmContract { - private static String BINARY_0 = "0x0061736d010000000183011660027f7f0060017f017f60017f0060027f7f017f60037f7f7f017f60037f7f7f0060000060047f7f7f7f0060047f7f7f7f017f60037f7f7e017f60027f7e017f60047f7f7f7e017f60017f017e60027f7f017e60037f7f7f017e60037f7f7e0060027f7e0060057f7e7f7f7f0060037e7e7f006000017f60017e017f60027e7e017f02f5021103656e760c706c61746f6e5f6465627567000003656e760c706c61746f6e5f70616e6963000603656e760d706c61746f6e5f63616c6c6572000203656e760b706c61746f6e5f73686133000703656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65001503656e760f706c61746f6e5f726c705f75313238001203656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001303656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760c706c61746f6e5f6576656e74000703656e760d706c61746f6e5f72657475726e0000037a790603070d0309020b03090e11000003000f04070105020300000004000001030a02100001040401040401000004080204000a0a0501030002020604050c0c01010001010200010202000002000201000001030608020102010003001401000000000000010201040100010300010005060501010307000200060405017001090905030100020608017f0141a08a040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300110f5f5f66756e63735f6f6e5f65786974006306696e766f6b65004a090f010041010b081e201416181a1b89010adbb9017905001080010b1f0020004200370200200041086a41003602002000200120011024102520000be50502067f017e230041a0016b22042400200441e8006a1026200441fc006a410036020020044200370274200441e8006a410310272107200441003602880120044200370380010240027f4100200028020420002d00002205410176200541017122081b2205450d001a2000280208200041016a20081b210620044180016a20051028034020050440200428028401220020062d00003a00002004200041016a360284012005417f6a2105200641016a21060c010b0b20042802800121062004280284010b220520066b41204d04402004200536025c20042006360258200428028801210020044100360288012004200036026020044200370380010c010b2004410036022020044200370318200441186a41201029200620042802840120066b20042802182200200428021c220520006b10032004200536025c20042000360258200420042802203602602006044020042006360284010b200021060b200441c8006a2001102a200441386a2002102a200441306a4100360200200441286a4200370300200441206a420037030020044200370318200441186a20062005102b20042802482200200428024c102b20042802382201200428023c102b210220072004280218102c2007200441d8006a102d2007200441c8006a102d2007200441386a102d2004280274200428027847044010010b20072802042108200728020021072004102e21052003290300210a20044198016a410036020020044190016a420037030020044188016a4200370300200442003703800120044180016a4100102f200a10304101102f21032004280280012109200341046a103120052009102c2005410110272205200a1032200528020c200541106a28020047044010010b2007200820052802002005280204100f200528020c22070440200520073602100b200241046a1031200104402004200136023c0b200004402004200036024c0b200604402004200636025c0b200428027422050440200420053602780b200441a0016a24000b0e00200041386a200110152903000b7401037f230041106b2203240020002003410c6a20011022220428020022024504404130103422022001290000370010200241286a4200370300200241206a200141106a280000360000200241186a200141086a2900003700002000200328020c2004200210230b200341106a2400200241286a0bbc0202037f027e23004190016b22032400200341306a1017200041386a2204200341306a101521054100210002402002500d0020052903002002540d002004200341306a10152200200029030020027d3703002004200110152200200029030020027c370300200341106a200141106a2800002200360200200341086a200141086a2900002206370300200341206a2204200341386a290300370300200341286a2205200341406b28020036020020032001290000220737030020032003290330370318200341e8006a2006370300200341f0006a200036020020032007370360200341d0006a2004290300370300200341d8006a2005280200360200200320023703880120032003290318370348200341f8006a4189081012200341c8006a200341e0006a20034188016a1013410121000b20034190016a240020000b210020004200370000200041106a4100360000200041086a4200370000200010020bcd0202047f027e23004190016b22042400200441306a10170240200041386a2206200110152903002003540d00200041e0006a20011019200441306a101521002003500d0020002903002003540d002006200210152200200029030020037c3703002006200110152100200441206a2205200141086a290000370300200441286a2206200141106a280000360200200441106a200241106a2800002207360200200441086a200241086a29000022083703002000200029030020037d37030020042001290000370318200420022900002209370300200441e8006a2008370300200441f0006a200736020020042009370360200441d0006a2005290300370300200441d8006a2006280200360200200420033703880120042004290318370348200441f8006a4189081012200441c8006a200441e0006a20044188016a1013410121050b20044190016a240020050b800101047f230041106b2203240020002003410c6a20011022220428020022024504404130103422022001290000370010200241286a22054200370200200241246a2005360200200241206a200141106a280000360000200241186a200141086a2900003700002000200328020c2004200210230b200341106a2400200241246a0bff0102037f027e23004190016b22032400200341306a1017200041e0006a200341306a1019200110152002370300200341106a200141106a2800002200360200200341086a200141086a2900002206370300200341206a2204200341386a290300370300200341286a2205200341406b28020036020020032001290000220737030020032003290330370318200341e8006a2006370300200341f0006a200036020020032007370360200341d0006a2004290300370300200341d8006a2005280200360200200320023703880120032003290318370348200341f8006a4180081012200341c8006a200341e0006a20034188016a101320034190016a240041010b1300200041e0006a20011019200210152903000b5501017f230041206b22052400200541086a1017200041386a200541086a10152001370300200041186a200137030020004188016a2002101d200041a8016a20033a0000200041c8016a2004101d200541206a24000b8d0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210440b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b20031034220120042002108101200020023602042000200341017236020020002001360208200120026a41003a00000b0b0d00200020014188016a101f1a0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102520000b0d002000200141c8016a101f1a0bfd0102037f027e23004190016b22032400200341306a1017200041e0006a200341306a1019200110152002370300200341106a200141106a2800002200360200200341086a200141086a2900002206370300200341206a2204200341386a290300370300200341286a2205200341406b28020036020020032001290000220737030020032003290330370318200341e8006a2006370300200341f0006a200036020020032007370360200341d0006a2004290300370300200341d8006a2005280200360200200320023703880120032003290318370348200341f8006a4180081012200341c8006a200341e0006a20034188016a101320034190016a24000b890101027f200041046a2103024020002802042200044002400340024002402002200041106a220410460440200028020022040d012001200036020020000f0b200420021046450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b480020032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2000280204200310472000200028020841016a3602080b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b5b01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204103421032000200236020420002004410172360200200020033602080b200320012002108101200220036a41003a00000b160020004100360208200042003702002000410010330b9f0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410340b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110351a0b20002002360214200020033602102000200536020c20000f0b200041001004200028020422016a10880141004100200120002802006a1005200010870120000b2001017f2000200110342202360200200020023602042000200120026a3602080bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001103421060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110351a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0bc50101037f230041206b220224000240200241106a2001200141146a103622012802042203200128020022046b41204d04402000200336020420002004360200200142003702002001280208210320014100360208200020033602080c010b200241003602082002420037030020024120102920012802002203200128020420036b200228020022032002280204220420036b100320002004360204200020033602002000200228020836020820012802002200450d00200120003602040b200241206a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103720026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110380c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110330b0b1600200020012802002200200128020420006b10391a0b190020001026200041146a41003602002000420037020c20000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031038280200210120022003417f6a3602002007103a4180104f044020072000410c6a280200417c6a103b0b200141384f047f2001103720016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110380c020b20000c010b02402007103a0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103c0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010342105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103d220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104022013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103c0c010b20042001410175410120011b20032005103e210241802010342106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103d22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103e21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003103f200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002103f052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104022013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103e21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006103f200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071041200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b08002000200110420bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001041200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103b200441106a24000b09002000200110431a0b2f01017f2000280208200149044020011045200028020020002802041035210220002001360208200020023602000b0b0b002000410120001b10450bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b450020004100360208200042003702000240200220016b2202450d0020002002102820024101480d0020002802042001200210351a2000200028020420026a3602040b20000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2c01017f2000200120021006200028020422036a10880120012002200320002802006a1007200010870120000b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103d22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a103e2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003103f200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110440b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274103421040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110440b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8b0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002103720026a0520020b41016a21030b027f200041186a28020022020440200041086a280200200041146a280200200210380c010b20000b2202200228020020036a36020020000b2c01017f2000420020011008200028020422026a10880142002001200220002802006a1009200010870120000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210351a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f419c0a200041086a22024110762200419c0a2802006a220336020041980a41980a280200220420026a41076a417871220236020002400240200341107420024d0440419c0a200341016a360200200041016a21000c010b2000450d010b200040000d0010010b20042001410c6a4104103541086a0541000b2100200141106a240020000b3a01037f034020024114470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000bec0101037f200120002001463a000c03400240024020002001460d00200128020822022d000c0d002002200228020822032802002204460440024020032802042204450d0020042d000c0d002004410c6a21010c030b20012002280200470440200210482002280208220228020821030b200241013a000c200341003a000c200310490f0b02402004450d0020042d000c0d002004410c6a21010c020b20012002280200460440200210492002280208220228020821030b200241013a000c200341003a000c200310480b0f0b200241013a000c200320002003463a000c200141013a0000200321010c000b000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040bfe17020b7f027e230041a0056b22002400108001100a220110452202100b200041d8026a200041b0016a20022001104b22014100104c02400240200041d8026a104d220b500d00419208104e200b510440200042003703a802200041b0026a104f2102200041003a00bc02200041c0026a104f210320011050410547044010010b2000410136028805200020013602f004200020004188056a3602f404200041d8026a20014101104c2000200041d8026a104d3703a802200020002802880541016a36028805200041f0046a20021051200041d8026a2001200028028805104c2000200041d8026a10523a00bc02200020002802880541016a36028805200041f0046a20031051200041d8026a1053220120002903a802200041f0046a2002101f20002d00bc0220004188056a2003101f101c200110540c020b419708104e200b51044020004180056a22024100360200200041f8046a22034200370300200042003703f00420011050410247044010010b200041d8026a20014101104c200041d8026a200041f0046a1055200041d8026a10562101200041d8016a20022802002202360200200041d0016a2003290300220b370300200020002903f004220c3703c801200041e8016a200b370300200041f0016a20023602002000200c3703e00120012802002802002103200041b0026a200b370300200041b8026a2002360200200041106a200b370300200041186a20023602002000200c3703a8022000200c37030820002001200041086a2003110d003703880520004188056a1057200110580c020b41a108104e200b5104402001410410590c020b41aa08104e200b510440200041b8026a22024100360200200041b0026a22034200370300200041c4026a22064200370200200041cc026a22044100360200200042003703a802200042003702bc02200042003703d002200041bc026a210520011050410447044010010b2000410136028805200020013602f004200020004188056a3602f404200041f0046a200041a8026a105a200041f0046a2005105a200041d8026a2001200028028805104c2000200041d8026a104d220b3703d002200041d8026a1056210120004198026a22052003290300370300200041a0026a2203200228020036020020004188026a2202200428020036020020004180026a22042006290200370300200020002903a80237039002200020002902bc023703f801200041e8016a22062004290300370300200041f0016a22042002280200360200200020002903f8013703e001200041d0016a22022005290300370300200041d8016a2205200328020036020020002000290390023703c801200128020041086a2802002103200041f8046a2207200229030037030020004180056a22022005280200360200200020002903c8013703f00420004198056a2205200428020036020020004190056a22042006290300370300200020002903e00137038805200041406b2007290300370300200041c8006a2002280200360200200020002903f004370338200041306a2005280200360200200041286a2004290300370300200020002903880537032020002001200041386a200041206a200b2003110b003a00d804200041d8046a105b200110580c020b41b708104e200b5104402001410c10590c020b41bf08104e200b510440200041b8026a22034100360200200041b0026a22064200370300200041c4026a4200370200200041cc026a4100360200200042003703a802200042003702bc02200041bc026a210220011050410347044010010b200041013602f004200020013602d8022000200041f0046a3602dc02200041d8026a200041a8026a105a200041d8026a2002105a200041d8026a1056210120004198026a22042006290300370300200041a0026a2206200328020036020020004188026a2203200241106a28000036020020004180026a2205200241086a290000370300200020002903a80237039002200020022900003703f801200041e8016a22022005290300370300200041f0016a22052003280200360200200020002903f8013703e001200041d0016a22032004290300370300200041d8016a2204200628020036020020002000290390023703c801200128020041106a2802002106200041f8046a2207200329030037030020004180056a22032004280200360200200020002903c8013703f00420004198056a2204200528020036020020004190056a22052002290300370300200020002903e00137038805200041f0006a2007290300370300200041f8006a2003280200360200200020002903f004370368200041e0006a2004280200360200200041d8006a2005290300370300200020002903880537035020002001200041e8006a200041d0006a2006110e003703d804200041d8046a1057200110580c020b41c908104e200b51044020014101105c0c020b41d108104e200b5104402001105d200041d8026a1053220341a8016a2d00002102200041a8026a102e22012002105e102c20012002105f200128020c200141106a28020047044010010b200128020020012802041010200128020c22020440200120023602100b200310540c020b41dd08104e200b51044020014102105c0c020b41e708104e200b5104402001105d2000200041d8026a1053220141186a2903003703a802200041a8026a1057200110540c020b41f608104e200b510440200041b8026a4100360200200041b0026a4200370300200042003703a802200041003602d002200042003703c802200042003703c00220011050410447044010010b200041d8026a20014101104c200041d8026a200041a8026a1055200041d8026a20014102104c2000200041d8026a104d220c3703c002200041d8026a20014103104c0240024020002802dc02044020002802d8022d000041c001490d010b200041003602f804200042003703f0040c010b20004188056a200041d8026a10602000280288052101200041d8046a200041d8026a1060200041f0046a200120002802d804200041d8026a10616a10361a0b20002802c8020440200041003602d002200042003703c8020b200020002802f00422013602c802200020002802f40422033602cc02200020002802f8043602d002200041d8026a10532102200041d0016a2206200041b0026a290300370300200041d8016a2204200041b8026a280200360200200020002903a8023703c801200041003602900520004200370388050240200320016b2203450d0020004188056a2003102820002802cc0220016b22034101480d002000200028028c0520012003103520036a36028c050b200041e8016a2006290300220b370300200041f0016a20042802002203360200200041f8046a200b37030020004180056a200336020020004188016a200b37030020004190016a2003360200200020002903c801220b3703e0012000200b370380012000200b3703f004200220004180016a200c1021200041013a00d804200041d8046a105b200028028805220304402000200336028c050b200210542001450d02200020013602cc020c020b418509104e200b520d002001105d200041d8026a10532103200041d8046a1017200041f0046a102e2102200041d8016a200041e8046a22062802002201360200200041d0016a200041e0046a2204290300220b370300200041c0026a4100360200200041b8026a22054200370300200041b0026a22074200370300200020002903d804220c3703c801200042003703a802200041e8016a200b370300200041f0016a200136020020004190056a2208200b37030020004198056a220920013602002000200c3703e0012000200c37038805200041a8016a2001360200200041a0016a200b3703002000200c37039801200041a8026a20004198016a1062210120002802a802210a200141046a10312002200a102c20092006280200220136020020082004290300220b370300200020002903d804220c3703880520004180026a200b37030020004188026a200136020020004198026a200b370300200041a0026a20013602002000200c3703f8012000200c37039002200520013602002007200b3703002000200c3703a8022002200041a8026a41141039220128020c200141106a28020047044010010b200128020020012802041010200128020c22020440200120023602100b200310540c010b10010b1063200041a0056a24000b0c00200020012002411c10640bcf0202067f017e230041106b220324002001280208220520024b0440200341086a200110860120012003280208200328020c10840136020c20032001108601410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410641a200341106a24000f0b2003200110860141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041084011085012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b22012400200010650240024020001066450d002000280204450d0020002802002d000041c001490d010b10010b200141086a20001060200128020c220041094f044010010b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b190020004200370200200041086a41003602002000106720000b2501017f02402000280204450d0020002802002d000041c001490d002000106821010b20010b4301017f230041206b22022400200241086a20002802002000280204280200104c200241086a2001106920002802042200200028020041016a360200200241206a24000b7d01037f230041106b22012400200010650240024020001066450d002000280204450d0020002802002d000041c001490d010b10010b200141086a20001060200128020c220041024f044010010b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030ba60301067f230041406a22042400200010561a200041d009360200200041f0006a104f210320004180016a220242f4b6fbddebefc6a0be7f370300200220004188016a104f2201106a45044020012003101d0b41002103200041003a009801200041a0016a220142cdfcf8cf8ff195f2bd7f370300200441286a102e220220012903001032200228020c200241106a28020047044010010b02402002280200220120022802042205100c2206450d002004410036022020044200370318200441186a200610292001200520042802182201200428021c220520016b100d417f47044020002004200141016a20052001417f736a104b10523a00a801200621030b2001450d002004200136021c0b200228020c22010440200220013602100b2003450440200020002d0098013a00a8010b200041b0016a104f2103200041c0016a220242adba859b98e9ace2203703002002200041c8016a104f2201106a45044020012003101d0b200041d8016a104f2103200041e8016a220242dbf6c8bd93f7b6a44d3703002002200041f0016a104f2201106a45044020012003101d0b200441406b240020000bc80201087f230041406a22042400200041d009360200200041e8016a200041f0016a106b200041c0016a200041c8016a106b200441286a102e2202200041a0016a2201290300106c102c200220012903001032200228020c200241106a28020047044010010b2002280204210620022802002108200441106a102e210120002d00a801105e210520012004106d2203106e2001200520032802046a20032802006b102c200120002d00a801105f0240200128020c200141106a280200460440200141046a2105200128020021070c010b200141046a2105100120012802002107200128020c2001280210460d0010010b2008200620072005280200100e200328020022060440200320063602040b200128020c22030440200120033602100b200228020c22010440200220013602100b20004180016a20004188016a106b20001058200441406b24000bcf0102037f027e230041406a2202240020001065200241386a20001060200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10010b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a2002280238200310351a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000b870d01107f230041e0016b2201240020004200370308200041b409360200200041106a22054284c7dbda97fffcce34370300200141c8006a102e220220052903001032200228020c200241106a28020047044010010b02402002280200220620022802042207100c2203450d002001410036027020014200370368200141e8006a200310292006200720012802682205200128026c220820056b100d417f4704402000200141b0016a200541016a20082005417f736a104b104d370318200321040b2005450d002001200536026c0b200228020c22050440200220053602100b2004450440200020002903083703180b2000419809360200200041246a220242003702002000413c6a22054200370200200041306a220442debbf3d6b6bead8a5b37030020002002360220200041386a22062005360200200141c8006a102e220220042903001032200228020c200241106a28020047044010010b02402002280200220720022802042208100c2203450440410021040c010b410021042001410036027020014200370368200141e8006a200310292007200820012802682205200128026c220b20056b100d417f470440200141b0016a200541016a200b2005417f736a104b2006106f200321040b2005450d002001200536026c0b200228020c22050440200220053602100b20044504402006200041206a10700b200041cc006a22084200370200200041e4006a220c4200370200200041d8006a220242c3adc39cc39cd0fca97f37030020002008360248200041e0006a2205200c360200200141306a102e220920022903001032200928020c200941106a28020047044010010b02402009280200220420092802042203100c220d450440410021020c010b410021022001410036022820014200370320200141206a200d1029200420032001280220220a20012802242206200a6b100d417f47044002400240200141086a200a41016a2006200a417f736a104b2202280204450d0020022802002d000041c001490d0020014190016a2002107120014180016a20021072200141a0016a410472210b200141e0006a2106200141d8006a2102200141d0006a21040340200128029401200128028401460440200128029801200128028801460d030b200141e8006a20014190016a1073200241003602002004420037030020014200370348200142003703602001200636025c200141e8006a1074410247044010010b200141d8016a22034100360200200141d0016a22074200370300200142003703c801200141b0016a200141e8006a4100104c200141b0016a200141c8016a10552004200729030037030020022003280200360200200120012903c801370348200142003702a4012001200b3602a001200141b0016a200141e8006a4101104c200141b0016a200141a0016a106f200120012802a00136025c200120012802a4012207360260200120012802a8012203360264024020034504402001200636025c0c010b20072006360208200142003702a4012001200b3602a0010b2005200141b0016a200141c8006a102222072802004504404130103422032001290348370210200341286a220e2001280260220f3602002003412c6a20012802642210360200200341186a2004290300370200200341206a2002290300370200024020104504402003200e3602240c010b200f200e360208200142003703602001200636025c0b200520012802b0012007200310230b20014190016a10750c000b000b10010b200d21020b200a450d002001200a3602240b200928020c22040440200920043602100b024020020d002000280248210202402000280268450d00200028026021042000200c3602602000410036026820002802642103200041003602642003410036020820042802042203200420031b2103034020032204450d012002200847044020042002290010370010200441206a200241206a280000360000200441186a200241186a290000370000200441246a200241246a1070024020042802082203450440410021030c010b2004200328020022064604402003410036020020032802042206450d012006107621030c010b200341003602042006450d002006107621030b2005200141c8006a200441106a10772106200520012802482006200410232002107821020c010b0b0340200428020822040d000b200821020b034020022008460d0141301034220441106a2203200241106a10792005200141c8006a200310772103200520012802482003200410232002107821020c000b000b200141e0016a240020000b5f01027f230041206b22022400200241086a102e22012000290300106c102c200120002903001032200128020c200141106a28020047044010010b200128020020012802041010200128020c22000440200120003602100b200241206a24000be40a020b7f027e230041d0016b220224002000419809360200200241b8016a102e2206200041d8006a2201290300106c102c200620012903001032200628020c200641106a28020047044010010b2006280204210a2006280200210b200241186a102e2109200241c8006a4100360200200241406b4200370300200241386a4200370300200242003703300240200041e8006a280200450440200241306a107a1a0c010b200041e4006a2104200241306a4100102f2108200241e4006a21072000280260210103402001200446044020084101102f1a05200241d0006a200141106a107920084100102f210520024180016a200241e0006a2802002203360200200241f8006a200241d8006a290300220c370300200241106a2003360200200241086a200c37030020022002290350220d37037020024190016a200c37030020024198016a2003360200200241a8016a200c370300200241b0016a20033602002002200d3703002002200d370388012002200d3703a0012005200210622007107b4101102f1a2001107821010c010b0b0b20022802302101200241306a41047210312009200241a0016a106d2207106e2009200120072802046a20072802006b102c2009200028026810272104200041e4006a2108200028026021010340200120084704402004410210272105200241406b200141206a2800002203360200200241386a200141186a290000220c37030020022001290010220d370330200241f8006a200c37030020024180016a200336020020024190016a200c37030020024198016a20033602002002200d3703702002200d37038801200241e0006a2003360200200241d8006a200c3703002002200d3703502005200241d0006a41141039200141246a107c2001107821010c010b0b0240200428020c200441106a280200460440200441046a2101200428020021030c010b200441046a2101100120042802002103200428020c2004280210460d0010010b200b200a20032001280200100e200728020022010440200720013602040b200428020c22010440200420013602100b200628020c22010440200620013602100b200241306a102e2203200041306a2201290300106c102c200320012903001032200041386a2104200328020c200341106a28020047044010010b2003280204210820032802002107200241b8016a102e2101200241e8006a4100360200200241e0006a4200370300200241d8006a420037030020024200370350200241d0006a2004107b1a20022802502106200241d0006a41047210312001200241d0006a106d2205106e2001200620052802046a20052802006b102c20012004107c0240200128020c200141106a280200460440200141046a2104200128020021060c010b200141046a2104100120012802002106200128020c2001280210460d0010010b2007200820062004280200100e200528020022040440200520043602040b200128020c22050440200120053602100b200328020c22010440200320013602100b200041b409360200200241d0006a102e2203200041106a2201290300106c102c200320012903001032200328020c200341106a28020047044010010b2003280204210420032802002108200241306a102e21012000290318106c21072001200241b8016a106d2205106e2001200720052802046a20052802006b102c2001200029031810320240200128020c200141106a280200460440200141046a2107200128020021060c010b200141046a2107100120012802002106200128020c2001280210460d0010010b2008200420062007280200100e200528020022040440200520043602040b200128020c22050440200120053602100b200328020c22010440200320013602100b200241d0016a24000bd50202047f037e230041f0016b2202240020024198016a2203410036020020024190016a220442003703002002420037038801200242003703a00120001050410347044010010b200241186a20004101104c200241186a20024188016a1055200241186a20004102104c2002200241186a104d22073703a001200241186a10562105200241b8016a20032802002200360200200241b0016a20042903002206370300200220022903880122083703a801200241c8016a2006370300200241d0016a2000360200200220083703c001200241186a220028020020016a2802002101200241e8016a200241d0016a2802002203360200200241e0016a200241c8016a2903002206370300200241086a2006370300200241106a2003360200200220022903c00122063703d80120022006370300200220002002200720011109003a00ef01200241ef016a105b20051058200241f0016a24000b4301017f230041206b22022400200241086a20002802002000280204280200104c200241086a2001105520002802042200200028020041016a360200200241206a24000b9d0101047f230041406a22012400200141086a102e2102200141386a4100360200200141306a4200370300200141286a420037030020014200370320200141206a20003100001042210320012802202104200341046a103120022004102c200220003100001043220028020c200041106a28020047044010010b200028020020002802041010200028020c22020440200020023602100b200141406b24000b8d0101027f230041c0026b220224002000105d200241086a1053210320024188026a200241086a2001110000200241a8026a102e220120024188026a107d102c200120024198026a20024188026a101f107e200128020c200141106a28020047044010010b200128020020012802041010200128020c22000440200120003602100b20031054200241c0026a24000b0e0020001050410147044010010b0b5601027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ff01831042210020012802002102200041046a1031200141206a240020020b0a0020002001ad10431a0bd50101047f200110612204200128020422024b04401001200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bff0201037f200028020445044041000f0b2000106541012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10010b20020b6601037f410121030240034020024114460d01200120026a2104200241016a210220042d0000450d000b411521030b027f200041186a28020022020440200041086a280200200041146a280200200210380c010b20000b2202200228020020036a36020020000b880101037f41880a4101360200418c0a2802002100034020000440034041900a41900a2802002201417f6a2202360200200141014845044041880a4100360200200020024102746a22004184016a280200200041046a28020011020041880a4101360200418c0a28020021000c010b0b41900a4120360200418c0a200028020022003602000c010b0b0b750020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d00200010820120024f0d002003410471044010010c010b200042003702000b02402003411071450d00200010820120024d0d0020034104710440100120000f0b200042003702000b20000b4101017f200028020445044010010b0240200028020022012d0000418101470d00200028020441014d047f100120002802000520010b2c00014100480d0010010b0b980101037f200028020445044041000f0b20001065200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100120002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100120002802000520020b20016a2d00004100470b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b820101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000108601200128020c210003402000450d0120014100200128020822032003200010840122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a104f1a0c010b200241186a200010602000106121030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206103421032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1067200241206a24000bbe0101057f230041406a22022400200241286a102e220320002903001032200328020c200341106a28020047044010010b02402003280200220020032802042205100c22064504400c010b2002410036022020024200370318200241186a200610292000200520022802182200200228021c220520006b100d417f4704402002200041016a20052000417f736a104b20011069200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040b8d0201067f230041d0006b22042400200441386a102e22022000290300106c102c200220002903001032200228020c200241106a28020047044010010b2002280204210620022802002107200441206a102e21002001107d21052000200441106a106d2203106e2000200520032802046a20032802006b102c200020042001101f107e0240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100120002802002105200028020c2000280210460d0010010b2007200620052001280200100e200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441d0006a24000b5101037f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001030210220012802002103200241046a1031200141206a240020030b30002000410036020820004200370200200041011028200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010010b200028020422022001280204200128020022036b22016a220420002802084b047f20002004103320002802040520020b20002802006a2003200110351a2000200028020420016a3602040b890302047f017e23004190016b22022400024002402000280204450d0020002802002d000041c001490d00200241d0006a20001071200241406b20001072200241186a2100200241106a210403402002280254200228024446044020022802582002280248460d030b200241286a200241d0006a107320004100360200200442003703002002420037030820024200370320200241286a1074410247044010010b20024188016a2203410036020020024180016a2205420037030020024200370378200241e0006a200241286a4100104c200241e0006a200241f8006a1055200420052903003703002000200328020036020020022002290378370308200241e0006a200241286a4101104c2002200241e0006a104d22063703202001200241e0006a200241086a102222052802004504404130103422032002290308370310200341286a2006370300200341206a2000280200360200200341186a2004290300370300200120022802602005200310230b200241d0006a10750c000b000b10010b20024190016a24000baa0301057f230041106b22052400024020002001460d00200141046a21062001280200210102402000280208450d00200028020021022000200041046a3602002000410036020820002802042103200041003602042003410036020820022802042203200220031b2103034020032202450d012001200647044020022001290010370010200241206a200141206a280000360000200241186a200141186a290000370000200241286a2001290328370300024020022802082203450440410021030c010b2002200328020022044604402003410036020020032802042204450d012004107621030c010b200341003602042004450d002004107621030b2000200541086a200241106a10772104200020052802082004200210232001107821010c010b0b0340200228020822020d000b200621010b034020012006460d014130103422022001290310370310200241286a200141286a290300370300200241206a200141206a290300370300200241186a200141186a29030037030020002005410c6a200241106a107721032000200528020c2003200210232001107821010c000b000b200541106a24000b0a00200020014101107f0b0a00200020014100107f0b160020002001280204200141086a280200411c10641a0b210002402000280204044020002802002d000041bf014b0d010b10010b200010680bb70102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a200141002004200210840110850120002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a1046044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000be80201087f230041106b2204240020002001290200370200200041106a200141106a280200360200200041086a200141086a290200370200200041186a2202420037020020002002360214200141186a2109200041146a210720012802142106034020062009470440200641106a210320022802002108027f0240024020022007280200460440200221010c010b20022105024020082200044003402000220128020422000d000c020b000b03402005280208220128020020054621002001210520000d000b0b200141106a20031046450d010b20084504402004200236020c20020c020b2004200136020c200141046a0c010b20072004410c6a200310220b2201280200450440200428020c210541301034220041286a200341186a290300370300200041206a200341106a290300370300200041186a200341086a29030037030020002003290300370310200720052001200010230b2006107821060c010b0b200441106a24000b3b01017f027f200041186a28020022010440200041086a280200200041146a280200200110380c010b20000b2201200128020041016a36020020000bcc0202057f047e23004190016b22022400027f20012802084504402000107a0c010b20004100102f2103200141046a210420012802002101037f2001200446047f20034101102f05200241286a200141206a2903002207370300200241206a200141186a29030022083703002002200129031022093703182001290328210a200241406b22002007370300200241386a220520083703002002200937033020034100102f2106200241d8006a20002802002200360200200241d0006a20052903002207370300200241106a2000360200200241086a2007370300200220022903302208370348200241e8006a2007370300200241f0006a200036020020024180016a200737030020024188016a2000360200200220083703002002200837036020022008370378200620021062200a10304101102f1a2001107821010c010b0b0b210120024190016a240020010be30102047f027e230041e0006b220224002000200128020810272103200141046a210420012802002101034020012004460440200241e0006a2400052003410210272105200241106a200141206a2800002200360200200241086a200141186a2900002206370300200220012900102207370300200241206a2006370300200241286a2000360200200241386a2006370300200241406b20003602002002200737031820022007370330200241d8006a2000360200200241d0006a2006370300200220073703482005200241c8006a41141039200129032810322001107821010c010b0b0bb80101047f230041306b22012400200141286a4100360200200141206a4200370300200141186a4200370300200142003703104101210302400240024020012000101f220028020420002d00002202410176200241017122041b220241014d0440200241016b0d032000280208200041016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103720026a41016a21030b20012003360210200141106a4104721031200141306a240020030b2d01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10391a0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110860120004100200428020c220120042802082202200110840122032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b3501017f230041106b220041a08a0436020c41940a200028020c41076a417871220036020041980a2000360200419c0a3f003602000b10002002044020002001200210351a0b0b2f01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000108301200010616a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2801017f230041206b22022400200241086a20002001411410641082012100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2301017f20011061220220012802044b044010010b20002001200110830120021085010b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401001200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210046a108801200120002802006a22012002200110050c010b0b0b3601017f2000280208200149044020011045200028020020002802041035210220002001360208200020023602000b200020013602040b0e0041e40941e4091024100010010b0b810204004180080b8e01417070726f76616c005472616e7366657200696e69740062616c616e63654f66007472616e73666572007472616e7366657246726f6d00617070726f766500616c6c6f77616e6365006765744e616d6500676574446563696d616c730067657453796d626f6c00676574546f74616c537570706c7900617070726f7665416e6443616c6c0067657453656e646572004198090b1103000000040000000500000006000000070041b4090b1108000000080000000800000008000000080041d0090b3703000000040000000500000006000000070000005b6572726f723a5d2070757265207669727475616c206d6574686f642063616c6c6564"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_APPROVEANDCALL = "approveAndCall"; - - public static final String FUNC_GETSENDER = "getSender"; - - public static final String FUNC_BALANCEOF = "balanceOf"; - - public static final String FUNC_TRANSFER = "transfer"; - - public static final String FUNC_TRANSFERFROM = "transferFrom"; - - public static final String FUNC_APPROVE = "approve"; - - public static final String FUNC_ALLOWANCE = "allowance"; - - public static final String FUNC_GETNAME = "getName"; - - public static final String FUNC_GETDECIMALS = "getDecimals"; - - public static final String FUNC_GETSYMBOL = "getSymbol"; - - public static final String FUNC_GETTOTALSUPPLY = "getTotalSupply"; - - public static final WasmEvent TRANSFER_EVENT = new WasmEvent("Transfer", Arrays.asList(new WasmEventParameter(WasmAddress.class, true) , new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint64.class))); - ; - - public static final WasmEvent APPROVAL_EVENT = new WasmEvent("Approval", Arrays.asList(new WasmEventParameter(WasmAddress.class, true) , new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint64.class))); - ; - - protected LATToken(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LATToken(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall approveAndCall(WasmAddress _spender, Uint64 _value, byte[] _extraData) { - final WasmFunction function = new WasmFunction(FUNC_APPROVEANDCALL, Arrays.asList(_spender,_value,_extraData), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall approveAndCall(WasmAddress _spender, Uint64 _value, byte[] _extraData, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_APPROVEANDCALL, Arrays.asList(_spender,_value,_extraData), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public List getTransferEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFER_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFER_EVENT, log); - TransferEventResponse typedResponse = new TransferEventResponse(); - typedResponse.log = log; - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable transferEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFER_EVENT)); - return transferEventObservable(filter); - } - - public RemoteCall getSender() { - final WasmFunction function = new WasmFunction(FUNC_GETSENDER, Arrays.asList(), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public List getApprovalEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(APPROVAL_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable approvalEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ApprovalEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(APPROVAL_EVENT, log); - ApprovalEventResponse typedResponse = new ApprovalEventResponse(); - typedResponse.log = log; - typedResponse.topic1 = (String) eventValues.getIndexedValues().get(0); - typedResponse.topic2 = (String) eventValues.getIndexedValues().get(1); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable approvalEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(APPROVAL_EVENT)); - return approvalEventObservable(filter); - } - - public RemoteCall balanceOf(WasmAddress _owner) { - final WasmFunction function = new WasmFunction(FUNC_BALANCEOF, Arrays.asList(_owner), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall transfer(WasmAddress _to, Uint64 _value) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFER, Arrays.asList(_to,_value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall transfer(WasmAddress _to, Uint64 _value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFER, Arrays.asList(_to,_value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall transferFrom(WasmAddress _from, WasmAddress _to, Uint64 _value) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFERFROM, Arrays.asList(_from,_to,_value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall transferFrom(WasmAddress _from, WasmAddress _to, Uint64 _value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFERFROM, Arrays.asList(_from,_to,_value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall approve(WasmAddress _spender, Uint64 _value) { - final WasmFunction function = new WasmFunction(FUNC_APPROVE, Arrays.asList(_spender,_value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall approve(WasmAddress _spender, Uint64 _value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_APPROVE, Arrays.asList(_spender,_value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall allowance(WasmAddress _owner, WasmAddress _spender) { - final WasmFunction function = new WasmFunction(FUNC_ALLOWANCE, Arrays.asList(_owner,_spender), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Uint64 _initialAmount, String _tokenName, Uint8 _decimalUnits, String _tokenSymbol) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_initialAmount,_tokenName,_decimalUnits,_tokenSymbol)); - return deployRemoteCall(LATToken.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Uint64 _initialAmount, String _tokenName, Uint8 _decimalUnits, String _tokenSymbol) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_initialAmount,_tokenName,_decimalUnits,_tokenSymbol)); - return deployRemoteCall(LATToken.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint64 _initialAmount, String _tokenName, Uint8 _decimalUnits, String _tokenSymbol) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_initialAmount,_tokenName,_decimalUnits,_tokenSymbol)); - return deployRemoteCall(LATToken.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint64 _initialAmount, String _tokenName, Uint8 _decimalUnits, String _tokenSymbol) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_initialAmount,_tokenName,_decimalUnits,_tokenSymbol)); - return deployRemoteCall(LATToken.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall getName() { - final WasmFunction function = new WasmFunction(FUNC_GETNAME, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall getDecimals() { - final WasmFunction function = new WasmFunction(FUNC_GETDECIMALS, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall getSymbol() { - final WasmFunction function = new WasmFunction(FUNC_GETSYMBOL, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall getTotalSupply() { - final WasmFunction function = new WasmFunction(FUNC_GETTOTALSUPPLY, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static LATToken load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LATToken(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LATToken load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LATToken(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEventResponse { - public Log log; - - public String topic1; - - public String topic2; - - public Uint64 arg1; - } - - public static class ApprovalEventResponse { - public Log log; - - public String topic1; - - public String topic2; - - public Uint64 arg1; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/LoopCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/LoopCall.java deleted file mode 100644 index 785465a12c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/LoopCall.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class LoopCall extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60017f017f60000060017f0060027f7f0060037f7f7f0060047f7f7f7f0060027f7e0060027f7f017f60037f7f7f017f60047f7f7f7f017f60017f017e60037e7e7f006000017f60017e017f60027e7e017f02fd010b03656e760c706c61746f6e5f70616e6963000103656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000703656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000503656e760d706c61746f6e5f72657475726e0003031f1e0106010008040a0a02000200000d030601090200000308030703010000050405017001010105030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974001b06696e766f6b65000d0aaa241e040010250b2501017e0340200120025204402000200220002903107c370310200242017c21020c010b0b0b960202047f017e230041d0006b22012400102510052200100e22021006200141386a200141086a20022000100f22004100101002400240200141386a10112204500d004180081012200451044020001013200141386a101410150c020b4185081012200451044020001016410247044010000b200141386a200041011010200141386a10112104200141386a10142100200141386a2004100c200010150c020b41920810122004520d0020001013200141206a1014210220012903302104200141386a1017220020041018101920002004101a200028020c200041106a28020047044010000b20002802002000280204100a200028020c22030440200020033602100b200210150c010b10000b101b200141d0006a24000b9b0101047f230041106b220124002001200036020c2000047f41b008200041086a2202411076220041b0082802006a220336020041ac0841ac08280200220420026a41076a417871220236020002400240200341107420024d044041b008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102141086a0541000b2100200141106a240020000b0c00200020012002411c101c0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102220012003280208200328020c102336020c200320011022410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114101c1a200341106a24000f0b20032001102241002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102310282001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000bad0302057f017e2000101d024002402000280204450d002000101d0240200028020022012c0000220241004e044020020d010c020b200241807f460d00200241ff0171220341b7014d0440200028020441014d04401000200028020021010b20012d00010d010c020b200341bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021010b200120026a2d0000450d010b2000280204450d0020012d000041c001490d010b10000b2000101e2204200028020422014b04401000200028020421010b20002802002105024002400240200104404100210320052c00002200417f4a0d01027f200041ff0171220341bf014d04404100200041ff017141b801490d011a200341c97e6a0c010b4100200041ff017141f801490d001a200341897e6a0b41016a21030c010b4101210320050d00410021000c010b41002100200320046a20014b0d0020012004490d004100210220012003490d01200320056a2102200120036b20042004417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002006420886842106200241016a21020c010b0b20060b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001016410147044010000b0bdb0101077f230041306b22052400200042e9feb2fee9efcf848c7f37030820004200370300200541186a101722022000290308101a200228020c200241106a28020047044010000b02400240200228020022062002280204220710072204450d002004101f21030340200120036a41003a00002004200141016a2201470d000b20062007200320011008417f460d0020002005200341016a200120036a2003417f736a100f10113703100c010b410021040b200228020c22010440200220013602100b2004450440200020002903003703100b200541306a240020000bb40201097f230041306b22032400200341186a1017220220002903081018101920022000290308101a200228020c200241106a28020047044010000b20022802042105200228020021062003101721012000290310101821074101101f220441fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009102020012802040520080b20012802006a2004410110211a2001200128020441016a3602042001200441016a200720046b6a101920012000290310101a0240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b20062005200020012802041009200128020c22000440200120003602100b200228020c22010440200220013602100b200341306a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001022200128020c210003402000450d01200141002001280208220320032000102322046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b29002000410036020820004200370200200041001020200041146a41003602002000420037020c20000b7002027f017e4101210120004280015a047f41002101034020002003845045044020034238862000420888842100200141016a2101200342088821030c010b0b024020014138490d002001210203402002450d01200141016a2101200241087621020c000b000b200141016a0520010b0b1300200028020820014904402000200110200b0b9a0101037f2000420020011003200028020422026a102442002001200220002802006a10040340024020002802102202200028020c460d00200241786a2802004504401000200028021021020b200241786a22032003280200417f6a220436020020040d002000200336021020002002417c6a2802002202200028020420026b220310016a1024200220002802006a22022003200210020c010b0b0b880101037f419c08410136020041a0082802002100034020000440034041a40841a4082802002201417f6a22023602002001410148450440419c084100360200200020024102746a22004184016a280200200041046a280200110200419c08410136020041a00828020021000c010b0b41a408412036020041a008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000102620024f0d002003410471044010000c010b200042003702000b02402003411071450d002000102620024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101d41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0b002000410120001b100e0b2f01017f200028020820014904402001100e200028020020002802041021210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2101017f2001101e220220012802044b044010000b2000200120011027200210280b2701017f230041206b22022400200241086a200020014114101c10262100200241206a240020000b3601017f200028020820014904402001100e200028020020002802041021210220002001360208200020023602000b200020013602040b3501017f230041106b220041c0880436020c41a808200028020c41076a417871220036020041ac08200036020041b0083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010272000101e6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b2001004180080b19696e6974006c6f6f7043616c6c54657374006765745f73756d"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_LOOPCALLTEST = "loopCallTest"; - - public static final String FUNC_GET_SUM = "get_sum"; - - protected LoopCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected LoopCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(LoopCall.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(LoopCall.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(LoopCall.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(LoopCall.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall loopCallTest(Uint64 n) { - final WasmFunction function = new WasmFunction(FUNC_LOOPCALLTEST, Arrays.asList(n), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall loopCallTest(Uint64 n, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_LOOPCALLTEST, Arrays.asList(n), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_sum() { - final WasmFunction function = new WasmFunction(FUNC_GET_SUM, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static LoopCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new LoopCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static LoopCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new LoopCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryCallocInt.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryCallocInt.java deleted file mode 100644 index 38a55f4066..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryCallocInt.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class MemoryCallocInt extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001420c60000060027f7f0060017f017f60017f0060027f7f017f60037f7f7f0060037e7e7f006000017f60037f7f7f017f60047f7f7f7f017f60027e7e017f60017f017e02b1010803656e760c706c61746f6e5f70616e6963000003656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000a03656e760f706c61746f6e5f726c705f75313238000603656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000703656e7610706c61746f6e5f6765745f696e707574000303656e760d706c61746f6e5f72657475726e0001031514000004000209010403020b0301010008010002020405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300080f5f5f66756e63735f6f6e5f65786974001606696e766f6b65000b0ab81f14040010190b310041054104100a410a360200410a4114100a413236020041144128100a41c801360200413241c801100a41c4133602000b1800200020016c2200100c220104402001200010180b20010b9e0702087f017e230041406a22012400101910052200100c220210060240200141086a20022000411c100d2204280208450440200441146a2802002100200428021021020c010b200141386a2004100e20042001280238200128023c100f36020c200141206a2004100e410021002004027f410020012802202203450d001a410020012802242206200428020c2205490d001a200620052005417f461b210020030b2202360210200441146a2000360200200441003602080b200141206a200220004114100d22001010024002402000280204450d00200010100240200028020022032c0000220241004e044020020d010c020b200241807f460d00200241ff0171220541b7014d0440200028020441014d04401000200028020021030b20032d00010d010c020b200541bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021030b200220036a2d0000450d010b2000280204450d0020032d000041c001490d010b10000b200010112206200028020422034b04401000200028020421030b20002802002107024002400240200304404100210520072c00002200417f4a0d01027f200041ff0171220541bf014d04404100200041ff017141b801490d011a200541c97e6a0c010b4100200041ff017141f801490d001a200541897e6a0b41016a21050c010b4101210520070d00410021000c010b41002100200520066a20034b0d0020032006490d004100210220032005490d01200520076a2102200320056b20062006417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002008420886842108200241016a21020c010b0b024002402008500d0041800810122008510440200410130c020b41850810122008520d002004101310092001410036022820014200370320200141206a41001014200141346a41003602002001420037022c200128022841024d0440200141206a410310140b200141206a42004288271003200128022422006a101542004288272000200128022022066a10040340024020012802302202200128022c22034622050d00200241786a220028020022044504401000200028020021040b20002004417f6a220436020020040d0020012000360230200141206a2002417c6a2802002200200128022420006b220210016a10152000200128022022066a22002002200010020c010b0b200545044010000b2006200128022410072003450d01200120033602300c010b10000b1016200141406b24000b9b0101047f230041106b220124002001200036020c2000047f41a408200041086a2202411076220041a4082802006a220336020041a00841a008280200220420026a41076a417871220236020002400240200341107420024d044041a408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101741086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000101a20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000101a20024d0d0020034104710440100020000f0b200042003702000b20000b7201047f20011011220220012802044b044010000b2001101b21032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114100d101a2100200241206a240020000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101041012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000100e41012103200128020c2100034020000440200141002001280208220220022000100f22046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10000b200141106a24000b2f01017f200028020820014904402001100c200028020020002802041017210220002001360208200020023602000b0b3601017f200028020820014904402001100c200028020020002802041017210220002001360208200020023602000b200020013602040b880101037f4190084101360200419408280200210003402000044003404198084198082802002201417f6a220236020020014101484504404190084100360200200020024102746a22004184016a280200200041046a280200110300419008410136020041940828020021000c010b0b4198084120360200419408200028020022003602000c010b0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bdf0201027f02402001450d00200041003a0000200020016a2203417f6a41003a000020014103490d00200041003a0002200041003a00012003417d6a41003a00002003417e6a41003a000020014107490d00200041003a00032003417c6a41003a000020014109490d002000410020006b41037122026a220341003602002003200120026b417c7122026a2201417c6a410036020020024109490d002003410036020820034100360204200141786a4100360200200141746a410036020020024119490d002003410036021820034100360214200341003602102003410036020c200141706a41003602002001416c6a4100360200200141686a4100360200200141646a41003602002002200341047141187222026b2101200220036a2102034020014120490d0120024200370300200241186a4200370300200241106a4200370300200241086a4200370300200241206a2102200141606a21010c000b000b0b3501017f230041106b220041b0880436020c419c08200028020c41076a417871220036020041a008200036020041a4083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000101b200010116a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b0b1501004180080b0e696e69740067657463616c6c6f63"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETCALLOC = "getcalloc"; - - protected MemoryCallocInt(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MemoryCallocInt(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryCallocInt.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryCallocInt.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryCallocInt.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryCallocInt.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall getcalloc() { - final WasmFunction function = new WasmFunction(FUNC_GETCALLOC, Arrays.asList(), Int32.class); - return executeRemoteCall(function, Int32.class); - } - - public static MemoryCallocInt load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MemoryCallocInt(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MemoryCallocInt load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MemoryCallocInt(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryFunctionInt.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryFunctionInt.java deleted file mode 100644 index 365a8d3466..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryFunctionInt.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class MemoryFunctionInt extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001420c60000060017f017f60017f0060027f7f006000017f60037f7f7f0060037e7e7f0060027f7f017f60037f7f7f017f60047f7f7f7f017f60027e7e017f60017f017e02b1010803656e760c706c61746f6e5f70616e6963000003656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000a03656e760f706c61746f6e5f726c705f75313238000603656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000403656e7610706c61746f6e5f6765745f696e707574000203656e760d706c61746f6e5f72657475726e0003031312000401080009030702010b020303000001010405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300080f5f5f66756e63735f6f6e5f65786974001606696e766f6b65000c0ad71d12040010170b3401027f230041106b220024002000417f36020c4104100a22012000410c6a4104100b1a20012802002101200041106a240020010b9b0101047f230041106b220124002001200036020c2000047f41a808200041086a2202411076220041a8082802006a220336020041a40841a408280200220420026a41076a417871220236020002400240200341107420024d044041a808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104100b41086a0541000b2100200141106a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb40802087f047e230041406a22022400101710052200100a220110060240200241086a20012000411c100d2203280208450440200341146a2802002100200328021021010c010b200241386a2003100e20032002280238200228023c100f36020c200241206a2003100e410021002003027f410020022802202204450d001a410020022802242206200328020c2205490d001a200620052005417f461b210020040b2201360210200341146a2000360200200341003602080b200241206a200120004114100d22001010024002402000280204450d00200010100240200028020022042c0000220141004e044020010d010c020b200141807f460d00200141ff0171220541b7014d0440200028020441014d04401000200028020021040b20042d00010d010c020b200541bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021040b200120046a2d0000450d010b2000280204450d0020042d000041c001490d010b10000b200010112206200028020422044b04401000200028020421040b20002802002107024002400240200404404100210520072c00002200417f4a0d01027f200041ff0171220541bf014d04404100200041ff017141b801490d011a200541c97e6a0c010b4100200041ff017141f801490d001a200541897e6a0b41016a21050c010b4101210520070d00410021000c010b41002100200520066a20044b0d0020042006490d004100210120042005490d01200520076a2101200420056b20062006417f461b22004109490d0110000c010b410021010b0340200004402000417f6a210020013100002008420886842108200141016a21010c010b0b024002402008500d0041800810122008510440200310130c020b41850810122008520d002003101310092103410021002002410036022820024200370320200241206a41001014200241346a41003602002002420037022c410121012003ac22084201862008423f87220985220a42800154410020094201862008423f8884200985220b501b450440200a2109200b2108034020082009845045044020084238862009420888842109200041016a2100200842088821080c010b0b024020004138490d002000210103402001450d01200041016a2100200141087621010c000b000b200041016a21010b20022802282001490440200241206a200110140b200241206a200b200a1003200228022422006a1015200b200a2000200228022022066a10040340024020022802302201200228022c22044622050d00200141786a220028020022034504401000200028020021030b20002003417f6a220336020020030d0020022000360230200241206a2001417c6a2802002200200228022420006b220110016a10152000200228022022066a22002001200010020c010b0b200545044010000b2006200228022410072004450d01200220043602300c010b10000b1016200241406b24000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000101820024f0d002003410471044010000c010b200042003702000b02402003411071450d002000101820024d0d0020034104710440100020000f0b200042003702000b20000b7201047f20011011220220012802044b044010000b2001101921032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114100d10182100200241206a240020000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101041012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000100e41012103200128020c2100034020000440200141002001280208220220022000100f22046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10000b200141106a24000b2f01017f200028020820014904402001100a20002802002000280204100b210220002001360208200020023602000b0b3601017f200028020820014904402001100a20002802002000280204100b210220002001360208200020023602000b200020013602040b880101037f419408410136020041980828020021000340200004400340419c08419c082802002201417f6a220236020020014101484504404194084100360200200020024102746a22004184016a280200200041046a280200110200419408410136020041980828020021000c010b0b419c084120360200419808200028020022003602000c010b0b0b3501017f230041106b220041b0880436020c41a008200028020c41076a417871220036020041a408200036020041a8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001019200010116a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b0b1801004180080b11696e6974006765746d616c6c6f63696e74"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETMALLOCINT = "getmallocint"; - - protected MemoryFunctionInt(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MemoryFunctionInt(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunctionInt.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunctionInt.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunctionInt.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunctionInt.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall getmallocint() { - final WasmFunction function = new WasmFunction(FUNC_GETMALLOCINT, Arrays.asList(), Int32.class); - return executeRemoteCall(function, Int32.class); - } - - public static MemoryFunctionInt load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MemoryFunctionInt(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MemoryFunctionInt load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MemoryFunctionInt(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryFunction_1.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryFunction_1.java deleted file mode 100644 index 8eb81c1f30..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryFunction_1.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class MemoryFunction_1 extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001360a60000060017f0060017f017f60027f7f017f60027f7f0060037f7f7f006000017f60037f7f7f017f60047f7f7f7f017f60017f017e02b3010803656e760c706c61746f6e5f70616e6963000003656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000503656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000603656e7610706c61746f6e5f6765745f696e707574000103656e760d706c61746f6e5f72657475726e0004031716000103020305000804030102090104030400070002020405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300080f5f5f66756e63735f6f6e5f65786974001906696e766f6b65000e0a8d25160400101b0b950201087f230041106b22042400024002402004418008100a220128020420042d0000220241017620024101711b41016a100b200128020420042d0000220241017620024101711b41016a100c22062001280208200141016a20042d00004101711b220373410371044020062101200321020c010b20062105034020034103710440200520032d000022013a00002001450d03200541016a2105200341016a21030c010b0b0340200520076a2101200320076a22022802002208417f73200841fffdfb776a71418081828478710d0120012008360200200741046a21070c000b000b0340200120022d000022033a00002003450d01200141016a2101200241016a21020c000b000b20002006100a1a200441106a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b100d20000b9b0101047f230041106b220124002001200036020c2000047f41ac08200041086a2202411076220041ac082802006a220336020041a80841a808280200220420026a41076a417871220236020002400240200341107420024d044041ac08200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101a41086a0541000b2100200141106a240020000be10201027f02402001450d00200041003a0000200020016a2203417f6a41003a000020014103490d00200041003a0002200041003a00012003417d6a41003a00002003417e6a41003a000020014107490d00200041003a00032003417c6a41003a000020014109490d002000410020006b41037122026a220341003602002003200120026b417c7122026a2201417c6a410036020020024109490d002003410036020820034100360204200141786a4100360200200141746a410036020020024119490d002003410036021820034100360214200341003602102003410036020c200141706a41003602002001416c6a4100360200200141686a4100360200200141646a41003602002002200341047141187222026b2101200220036a2102034020014120490d0120024200370300200241186a4200370300200241106a4200370300200241086a4200370300200241206a2102200141606a21010c000b000b20000b6601027f027f02402002410b4f0440200241106a4170712204410120041b100b21032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b200320012002101a0b20026a41003a00000bdd0802087f017e230041e0006b22012400101b10052200100b220210060240200141086a20022000411c100f2204280208450440200441146a2802002100200428021021020c010b200141d0006a20041010200420012802502001280254101136020c200141386a20041010410021002004027f410020012802382203450d001a4100200128023c2206200428020c2205490d001a200620052005417f461b210020030b2202360210200441146a2000360200200441003602080b200141386a200220004114100f22001012024002402000280204450d00200010120240200028020022032c0000220241004e044020020d010c020b200241807f460d00200241ff0171220541b7014d0440200028020441014d04401000200028020021030b20032d00010d010c020b200541bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021030b200220036a2d0000450d010b2000280204450d0020032d000041c001490d010b10000b200010132206200028020422034b04401000200028020421030b20002802002107024002400240200304404100210520072c00002200417f4a0d01027f200041ff0171220541bf014d04404100200041ff017141b801490d011a200541c97e6a0c010b4100200041ff017141f801490d001a200541897e6a0b41016a21050c010b4101210520070d00410021000c010b41002100200520066a20034b0d0020032006490d004100210220032005490d01200520076a2102200320056b20062006417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002008420886842108200241016a21020c010b0b02400240024002402008500d0041890810142008510440200410150c040b418e0810142008520d0020041015200141286a10092001410036024020014200370338200141386a41001016200141cc006a410036020020014200370244410121020240200141d0006a200141286a1017220428020420012d00502200410176200041017122031b220041014d0440200041016b0d040c010b20004138490d02200041016a210203402000450d04200241016a2102200041087621000c000b000b2004280208200441016a20031b2c0000417f4c0d010c020b10000c020b200041016a21020b20012802402002490440200141386a200210160b200141386a200141d0006a200141286a10172200280208200041016a20012d0050220241017122041b22032000280204200241017620041b22001003200128023c22026a1018200320002002200128023822066a10040340024020012802482202200128024422034622050d00200241786a220028020022044504401000200028020021040b20002004417f6a220436020020040d0020012000360248200141386a2002417c6a2802002200200128023c20006b220210016a10182000200128023822066a22002002200010020c010b0b200545044010000b2006200128023c10072003450d00200120033602480b1019200141e0006a24000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000101c20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000101c20024d0d0020034104710440100020000f0b200042003702000b20000b7201047f20011013220220012802044b044010000b2001101d21032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114100f101c2100200241206a240020000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101241012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000101041012103200128020c2100034020000440200141002001280208220220022000101122046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10000b200141106a24000b2f01017f200028020820014904402001100b20002802002000280204101a210220002001360208200020023602000b0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204100d20000b3601017f200028020820014904402001100b20002802002000280204101a210220002001360208200020023602000b200020013602040b880101037f4198084101360200419c082802002100034020000440034041a00841a0082802002201417f6a220236020020014101484504404198084100360200200020024102746a22004184016a280200200041046a2802001101004198084101360200419c0828020021000c010b0b41a0084120360200419c08200028020022003602000c010b0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3501017f230041106b220041b0880436020c41a408200028020c41076a417871220036020041a808200036020041ac083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000101d200010136a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b0b1e01004180080b175761736d5465737400696e6974006765746d616c6c6f63"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETMALLOC = "getmalloc"; - - protected MemoryFunction_1(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MemoryFunction_1(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunction_1.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunction_1.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunction_1.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunction_1.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall getmalloc() { - final WasmFunction function = new WasmFunction(FUNC_GETMALLOC, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static MemoryFunction_1 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MemoryFunction_1(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MemoryFunction_1 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MemoryFunction_1(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryFunction_2.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryFunction_2.java deleted file mode 100644 index 1bef6e24b1..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryFunction_2.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class MemoryFunction_2 extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001360a60000060017f0060017f017f60027f7f017f60027f7f0060037f7f7f006000017f60037f7f7f017f60047f7f7f7f017f60017f017e02b3010803656e760c706c61746f6e5f70616e6963000003656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000503656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000603656e7610706c61746f6e5f6765745f696e707574000103656e760d706c61746f6e5f72657475726e0004031716000103020703050008040301020901040304000002020405017001010105030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300080f5f5f66756e63735f6f6e5f65786974001a06696e766f6b65000f0a8b26160400101b0b930301097f230041106b220424002004418008100a220228020420042d0000220341017620034101711b41016a100b210520042d000022014101712103200141017621012002280204210602402005450d002006200120031b220741016a22092007490d002004410036020c2004410c6a200541786a4104100c1a027f2005200428020c20094f0d001a2009100b2005200428020c100c0b210820042d00002203410176210120034101712103200228020421060b0240024020082006200120031b41016a100d22072002280208200241016a20042d00004101711b220173410371044020072102200121030c010b20072105034020014103710440200520012d000022023a00002002450d03200541016a2105200141016a21010c010b0b410021060340200520066a2102200120066a22032802002208417f73200841fffdfb776a71418081828478710d0120022008360200200641046a21060c000b000b0340200220032d000022013a00002001450d01200241016a2102200341016a21030c000b000b20002007100a1a200441106a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b100e20000b9b0101047f230041106b220124002001200036020c2000047f41b008200041086a2202411076220041b0082802006a220336020041ac0841ac08280200220420026a41076a417871220236020002400240200341107420024d044041b008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104100c41086a0541000b2100200141106a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000be10201027f02402001450d00200041003a0000200020016a2203417f6a41003a000020014103490d00200041003a0002200041003a00012003417d6a41003a00002003417e6a41003a000020014107490d00200041003a00032003417c6a41003a000020014109490d002000410020006b41037122026a220341003602002003200120026b417c7122026a2201417c6a410036020020024109490d002003410036020820034100360204200141786a4100360200200141746a410036020020024119490d002003410036021820034100360214200341003602102003410036020c200141706a41003602002001416c6a4100360200200141686a4100360200200141646a41003602002002200341047141187222026b2101200220036a2102034020014120490d0120024200370300200241186a4200370300200241106a4200370300200241086a4200370300200241206a2102200141606a21010c000b000b20000b6601027f027f02402002410b4f0440200241106a4170712204410120041b100b21032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b200320012002100c0b20026a41003a00000bdd0802087f017e230041e0006b22012400101b10052200100b220210060240200141086a20022000411c10102204280208450440200441146a2802002100200428021021020c010b200141d0006a20041011200420012802502001280254101236020c200141386a20041011410021002004027f410020012802382203450d001a4100200128023c2206200428020c2205490d001a200620052005417f461b210020030b2202360210200441146a2000360200200441003602080b200141386a200220004114101022001013024002402000280204450d00200010130240200028020022032c0000220241004e044020020d010c020b200241807f460d00200241ff0171220541b7014d0440200028020441014d04401000200028020021030b20032d00010d010c020b200541bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021030b200220036a2d0000450d010b2000280204450d0020032d000041c001490d010b10000b200010142206200028020422034b04401000200028020421030b20002802002107024002400240200304404100210520072c00002200417f4a0d01027f200041ff0171220541bf014d04404100200041ff017141b801490d011a200541c97e6a0c010b4100200041ff017141f801490d001a200541897e6a0b41016a21050c010b4101210520070d00410021000c010b41002100200520066a20034b0d0020032006490d004100210220032005490d01200520076a2102200320056b20062006417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002008420886842108200241016a21020c010b0b02400240024002402008500d00418a0810152008510440200410160c040b418f0810152008520d0020041016200141286a10092001410036024020014200370338200141386a41001017200141cc006a410036020020014200370244410121020240200141d0006a200141286a1018220428020420012d00502200410176200041017122031b220041014d0440200041016b0d040c010b20004138490d02200041016a210203402000450d04200241016a2102200041087621000c000b000b2004280208200441016a20031b2c0000417f4c0d010c020b10000c020b200041016a21020b20012802402002490440200141386a200210170b200141386a200141d0006a200141286a10182200280208200041016a20012d0050220241017122041b22032000280204200241017620041b22001003200128023c22026a1019200320002002200128023822066a10040340024020012802482202200128024422034622050d00200241786a220028020022044504401000200028020021040b20002004417f6a220436020020040d0020012000360248200141386a2002417c6a2802002200200128023c20006b220210016a10192000200128023822066a22002002200010020c010b0b200545044010000b2006200128023c10072003450d00200120033602480b101a200141e0006a24000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000101c20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000101c20024d0d0020034104710440100020000f0b200042003702000b20000b7201047f20011014220220012802044b044010000b2001101d21032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a2000200141141010101c2100200241206a240020000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101341012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000101141012103200128020c2100034020000440200141002001280208220220022000101222046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10000b200141106a24000b2f01017f200028020820014904402001100b20002802002000280204100c210220002001360208200020023602000b0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204100e20000b3601017f200028020820014904402001100b20002802002000280204100c210220002001360208200020023602000b200020013602040b880101037f419c08410136020041a0082802002100034020000440034041a40841a4082802002201417f6a22023602002001410148450440419c084100360200200020024102746a22004184016a280200200041046a280200110100419c08410136020041a00828020021000c010b0b41a408412036020041a008200028020022003602000c010b0b0b3501017f230041106b220041c0880436020c41a808200028020c41076a417871220036020041ac08200036020041b0083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000101d200010146a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b0b2001004180080b195761736d546573743200696e6974006765747265616c6c6f63"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETREALLOC = "getrealloc"; - - protected MemoryFunction_2(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MemoryFunction_2(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunction_2.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunction_2.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunction_2.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunction_2.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall getrealloc() { - final WasmFunction function = new WasmFunction(FUNC_GETREALLOC, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static MemoryFunction_2 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MemoryFunction_2(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MemoryFunction_2 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MemoryFunction_2(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryFunction_3.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryFunction_3.java deleted file mode 100644 index e7e289bdd5..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryFunction_3.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class MemoryFunction_3 extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001360a60000060017f0060017f017f60027f7f017f60027f7f0060037f7f7f006000017f60037f7f7f017f60047f7f7f7f017f60017f017e02b3010803656e760c706c61746f6e5f70616e6963000003656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000503656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000603656e7610706c61746f6e5f6765745f696e707574000103656e760d706c61746f6e5f72657475726e0004031716000103020307050008040301020901040304000002020405017001010105030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300080f5f5f66756e63735f6f6e5f65786974001a06696e766f6b65000f0a8a24160400101b0b920101047f230041106b220224002002418008100a220428020420022d0000220141017620014101711b41016a220120016c2203100b2201044020012003100c1a0b20002001200428020420022d0000220341017620034101711b41016a100c2004280208200441016a20022d0000220141017122031b2004280204200141017620031b41016a100d100a1a200241106a24000b910101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b100e20000b9b0101047f230041106b220124002001200036020c2000047f41b008200041086a2202411076220041b0082802006a220336020041ac0841ac08280200220420026a41076a417871220236020002400240200341107420024d044041b008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104100d41086a0541000b2100200141106a240020000be10201027f02402001450d00200041003a0000200020016a2203417f6a41003a000020014103490d00200041003a0002200041003a00012003417d6a41003a00002003417e6a41003a000020014107490d00200041003a00032003417c6a41003a000020014109490d002000410020006b41037122026a220341003602002003200120026b417c7122026a2201417c6a410036020020024109490d002003410036020820034100360204200141786a4100360200200141746a410036020020024119490d002003410036021820034100360214200341003602102003410036020c200141706a41003602002001416c6a4100360200200141686a4100360200200141646a41003602002002200341047141187222026b2101200220036a2102034020014120490d0120024200370300200241186a4200370300200241106a4200370300200241086a4200370300200241206a2102200141606a21010c000b000b20000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b6601027f027f02402002410b4f0440200241106a4170712204410120041b100b21032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b200320012002100d0b20026a41003a00000bdd0802087f017e230041e0006b22012400101b10052200100b220210060240200141086a20022000411c10102204280208450440200441146a2802002100200428021021020c010b200141d0006a20041011200420012802502001280254101236020c200141386a20041011410021002004027f410020012802382203450d001a4100200128023c2206200428020c2205490d001a200620052005417f461b210020030b2202360210200441146a2000360200200441003602080b200141386a200220004114101022001013024002402000280204450d00200010130240200028020022032c0000220241004e044020020d010c020b200241807f460d00200241ff0171220541b7014d0440200028020441014d04401000200028020021030b20032d00010d010c020b200541bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021030b200220036a2d0000450d010b2000280204450d0020032d000041c001490d010b10000b200010142206200028020422034b04401000200028020421030b20002802002107024002400240200304404100210520072c00002200417f4a0d01027f200041ff0171220541bf014d04404100200041ff017141b801490d011a200541c97e6a0c010b4100200041ff017141f801490d001a200541897e6a0b41016a21050c010b4101210520070d00410021000c010b41002100200520066a20034b0d0020032006490d004100210220032005490d01200520076a2102200320056b20062006417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002008420886842108200241016a21020c010b0b02400240024002402008500d00418a0810152008510440200410160c040b418f0810152008520d0020041016200141286a10092001410036024020014200370338200141386a41001017200141cc006a410036020020014200370244410121020240200141d0006a200141286a1018220428020420012d00502200410176200041017122031b220041014d0440200041016b0d040c010b20004138490d02200041016a210203402000450d04200241016a2102200041087621000c000b000b2004280208200441016a20031b2c0000417f4c0d010c020b10000c020b200041016a21020b20012802402002490440200141386a200210170b200141386a200141d0006a200141286a10182200280208200041016a20012d0050220241017122041b22032000280204200241017620041b22001003200128023c22026a1019200320002002200128023822066a10040340024020012802482202200128024422034622050d00200241786a220028020022044504401000200028020021040b20002004417f6a220436020020040d0020012000360248200141386a2002417c6a2802002200200128023c20006b220210016a10192000200128023822066a22002002200010020c010b0b200545044010000b2006200128023c10072003450d00200120033602480b101a200141e0006a24000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000101c20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000101c20024d0d0020034104710440100020000f0b200042003702000b20000b7201047f20011014220220012802044b044010000b2001101d21032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a2000200141141010101c2100200241206a240020000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101341012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000101141012103200128020c2100034020000440200141002001280208220220022000101222046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10000b200141106a24000b2f01017f200028020820014904402001100b20002802002000280204100d210220002001360208200020023602000b0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204100e20000b3601017f200028020820014904402001100b20002802002000280204100d210220002001360208200020023602000b200020013602040b880101037f419c08410136020041a0082802002100034020000440034041a40841a4082802002201417f6a22023602002001410148450440419c084100360200200020024102746a22004184016a280200200041046a280200110100419c08410136020041a00828020021000c010b0b41a408412036020041a008200028020022003602000c010b0b0b3501017f230041106b220041c0880436020c41a808200028020c41076a417871220036020041ac08200036020041b0083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000101d200010146a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b0b1f01004180080b185761736d546573743300696e69740067657463616c6c6f63"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETCALLOC = "getcalloc"; - - protected MemoryFunction_3(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MemoryFunction_3(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunction_3.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunction_3.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunction_3.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryFunction_3.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall getcalloc() { - final WasmFunction function = new WasmFunction(FUNC_GETCALLOC, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static MemoryFunction_3 load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MemoryFunction_3(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MemoryFunction_3 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MemoryFunction_3(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryReallocInt.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryReallocInt.java deleted file mode 100644 index adda3103de..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MemoryReallocInt.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class MemoryReallocInt extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001420c60000060017f017f60017f0060027f7f0060037f7f7f0060037e7e7f006000017f60027f7f017f60037f7f7f017f60047f7f7f7f017f60027e7e017f60017f017e02b1010803656e760c706c61746f6e5f70616e6963000003656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760d726c705f753132385f73697a65000a03656e760f706c61746f6e5f726c705f75313238000503656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000603656e7610706c61746f6e5f6765745f696e707574000203656e760d706c61746f6e5f72657475726e0003031312000001080009030702010b020303000001010405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300080f5f5f66756e63735f6f6e5f65786974001606696e766f6b65000c0aed1c12040010170b6001027f230041106b220024004104100a2201410a3602004108100a41e4003602002000410036020c2000410c6a200141786a4104100b1a200028020c41274d047f4128100a2001200028020c100b0520010b41e400360200200041106a24000b9b0101047f230041106b220124002001200036020c2000047f41a408200041086a2202411076220041a4082802006a220336020041a00841a008280200220420026a41076a417871220236020002400240200341107420024d044041a408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104100b41086a0541000b2100200141106a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b9e0702087f017e230041406a22012400101710052200100a220210060240200141086a20022000411c100d2204280208450440200441146a2802002100200428021021020c010b200141386a2004100e20042001280238200128023c100f36020c200141206a2004100e410021002004027f410020012802202203450d001a410020012802242206200428020c2205490d001a200620052005417f461b210020030b2202360210200441146a2000360200200441003602080b200141206a200220004114100d22001010024002402000280204450d00200010100240200028020022032c0000220241004e044020020d010c020b200241807f460d00200241ff0171220541b7014d0440200028020441014d04401000200028020021030b20032d00010d010c020b200541bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021030b200220036a2d0000450d010b2000280204450d0020032d000041c001490d010b10000b200010112206200028020422034b04401000200028020421030b20002802002107024002400240200304404100210520072c00002200417f4a0d01027f200041ff0171220541bf014d04404100200041ff017141b801490d011a200541c97e6a0c010b4100200041ff017141f801490d001a200541897e6a0b41016a21050c010b4101210520070d00410021000c010b41002100200520066a20034b0d0020032006490d004100210220032005490d01200520076a2102200320056b20062006417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002008420886842108200241016a21020c010b0b024002402008500d0041800810122008510440200410130c020b41850810122008520d002004101310092001410036022820014200370320200141206a41001014200141346a41003602002001420037022c200128022841014d0440200141206a410210140b200141206a420042c8011003200128022422006a1015420042c8012000200128022022066a10040340024020012802302202200128022c22034622050d00200241786a220028020022044504401000200028020021040b20002004417f6a220436020020040d0020012000360230200141206a2002417c6a2802002200200128022420006b220210016a10152000200128022022066a22002002200010020c010b0b200545044010000b2006200128022410072003450d01200120033602300c010b10000b1016200141406b24000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000101820024f0d002003410471044010000c010b200042003702000b02402003411071450d002000101820024d0d0020034104710440100020000f0b200042003702000b20000b7201047f20011011220220012802044b044010000b2001101921032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114100d10182100200241206a240020000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101041012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000100e41012103200128020c2100034020000440200141002001280208220220022000100f22046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10000b200141106a24000b2f01017f200028020820014904402001100a20002802002000280204100b210220002001360208200020023602000b0b3601017f200028020820014904402001100a20002802002000280204100b210220002001360208200020023602000b200020013602040b880101037f4190084101360200419408280200210003402000044003404198084198082802002201417f6a220236020020014101484504404190084100360200200020024102746a22004184016a280200200041046a280200110200419008410136020041940828020021000c010b0b4198084120360200419408200028020022003602000c010b0b0b3501017f230041106b220041b0880436020c419c08200028020c41076a417871220036020041a008200036020041a4083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001019200010116a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b0b1601004180080b0f696e6974006765747265616c6c6f63"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETREALLOC = "getrealloc"; - - protected MemoryReallocInt(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MemoryReallocInt(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryReallocInt.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryReallocInt.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryReallocInt.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MemoryReallocInt.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall getrealloc() { - final WasmFunction function = new WasmFunction(FUNC_GETREALLOC, Arrays.asList(), Int32.class); - return executeRemoteCall(function, Int32.class); - } - - public static MemoryReallocInt load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MemoryReallocInt(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MemoryReallocInt load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MemoryReallocInt(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MergeSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MergeSort.java deleted file mode 100644 index be08b20633..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MergeSort.java +++ /dev/null @@ -1,85 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class MergeSort extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f017f60017f0060037f7f7f017f60000060037f7f7f0060027f7f017f60047f7f7f7f017f60047f7f7f7f0060037f7e7e0060027f7e0060037e7e7f006000017f60027e7e017f60017f017e02fd010b03656e760c706c61746f6e5f70616e6963000403656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000033f3e040803060005010301040103050201000e020102010000010100000407010a030609020000060700020300000002090301000100030702030005040101080405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974002606696e766f6b6500140af6523e040010450b4a00200120022003100d21012000280218044020004200370218200041206a41003602000b20002001290200370218200041206a200128020836020020014100360208200142003702000b800302097f027e0240200120024e0d0020002001200120026a41026d220b100d200b41016a22062002100d2103417f200220016b41016a2204410274200441ffffffff03712004471b1013210820032802002109200821042001210303402003200b4c4100200620024c1b04402008200a4102746a200920064103746a290300220c200920034103746a290300220d200d200c5522071b3e0200200620076a21062003200d200c576a2103200441046a2104200a41016a210a0c0105200920034103746a2105410021070340200320076a200b4a0440200920064103746a2105410021030340200320066a20024a04402007200a6a20036a2104200920014103746a210303402004450d07200320083402003703002004417f6a2104200341086a2103200841046a21080c000b0005200420052903003e0200200441046a2104200341016a2103200541086a21050c010b000b0005200420052903003e0200200741016a2107200541086a2105200441046a21040c010b000b000b000b000b20000b3e01017f2000420037020020004100360208200128020420012802006b2202044020002002410375100f20012802002001280204200041046a10100b20000b2301017f2000200110112202360200200020023602042000200220014103746a3602080b2800200120006b220141014e044020022802002000200110121a2002200228020020016a3602000b0b0900200041037410130bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b0b002000410120001b10150bb90402057f017e230041f0006b22002400104510052201101522021006200041206a2000200220011016220341001017200041206a101802400240200041206a1019450d002000280224450d0020002802202d000041c001490d010b10000b200041d8006a200041206a101a200028025c220141094f044010000b200028025821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008101b20055104402003101c200041206a101d101e0c020b418508101b2005510440200041003602682000420037036020004200370358200041e8006a2101200041e4006a21022003101f410447044010000b2000410136021c2000200336024820002000411c6a36024c200041206a200341011017200041206a200041d8006a10202000200028021c41016a36021c200041c8006a20021021200041c8006a20011021200041206a101d2102200041206a200041c8006a200041d8006a100e220120002802642000280268100c200128020022030440200120033602040b2002101e20002802582201450d022000200136025c0c020b418a08101b2005520d002003101c200041206a101d2103200041c8006a200041386a100e2102200041d8006a10222201200210231024200120021025200128020c200141106a28020047044010000b20012802002001280204100a200128020c22040440200120043602100b200228020022010440200220013602040b2003101e0c010b10000b1026200041f0006a24000b9b0101047f230041106b220124002001200036020c2000047f41a808200041086a2202411076220041a8082802006a220336020041a40841a408280200220420026a41076a417871220236020002400240200341107420024d044041a808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101241086a0541000b2100200141106a240020000b0c00200020012002411c10270bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102f20012003280208200328020c103036020c20032001102f410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410271a200341106a24000f0b20032001102f41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103010482001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001018200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110282204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101f410147044010000b0b800301087f230041306b2207240020004200370218200042a3e186fee9ae96ea083703102000410036020820004200370200200041206a4100360200200741186a1022220320002903101029200328020c200341106a28020047044010000b200041186a21050240200328020022062003280204220810072204450d002004101321020340200120026a41003a00002004200141016a2201470d000b20062008200220011008417f460440410021010c010b2007200241016a200120026a2002417f736a101620051020200421010b200328020c22020440200320023602100b024020010d002000411c6a210120002802042203200028020022046b41037522062000280220200028021822026b4103754d04402006200128020020026b41037522054b04402004200420054103746a22052002102a1a20052003200110100c020b2001200420032002102a3602000c010b2002044020004100360220200042003702180b200520052006102b100f20042003200110100b200741306a240020000b9c03010a7f230041406a22022400200241086a10222103200241386a4100360200200241306a4200370300200241286a420037030020024200370320200241206a20002903104200102c20022802202101200241206a410472102d200320011024200320002903101029200328020c200341106a28020047044010000b2003280204210520032802002106200241206a10222101200041186a22071023210841011013220441fe013a0000200128020c200141106a28020047044010000b2001280204220941016a220a20012802084b047f2001200a102e20012802040520090b20012802006a2004410110121a2001200128020441016a3602042001200441016a200820046b6a10242001200710250240200128020c2001280210460440200128020021040c010b100020012802002104200128020c2001280210460d0010000b20062005200420012802041009200128020c22040440200120043602100b200328020c22010440200320013602100b2000280218220104402000411c6a20013602000b200028020022010440200020013602040b200241406b24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102f200128020c210003402000450d01200141002001280208220320032000103022046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf30302077f017e230041e0006b22042400024002402000280204450d0020002802002d000041c001490d002000101f21022001280208200128020022036b41037520024904402001200441106a2002200128020420036b410375200141086a103122021032200210330b200441386a2000410110342102200441286a2000410010342106200141086a210720022802042100034020062802042000464100200228020822032006280208461b0d022004200441106a20002003411c10271035200441086a290300423f862004290300220942018884420020094201837d8521090240200128020422002001280208490440200020093703002001200041086a3602040c010b200441c8006a2001200020012802006b410375220041016a102b20002007103121002004280250220320093703002004200341086a360250200120001032200010330b20022002280204220020022802086a410020001b22003602042002280200220304402002200336020820002003103021052002027f200228020422004504404100210341000c010b410021034100200228020822082005490d001a200820052005417f461b210320000b2200ad2003ad42208684370204200241002002280200220520036b2203200320054b1b3602000c0105200241003602080c010b000b000b10000b200441e0006a24000b6002017f017e230041306b22022400200241186a200028020020002802042802001017200241086a200241186a1035200120022903082203420188420020034201837d853e020020002802042200200028020041016a360200200241306a24000b2900200041003602082000420037020020004100102e200041146a41003602002000420037020c20000bba0102027f027e230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300027f200028020020002802044604402001410136020041010c010b2001410010362000280204210220002802002100037f2000200246047f2001410110362001280200052001200029030022034201862003423f8722048520044201862003423f8884200485102c200041086a21000c010b0b0b21002001410472102d200141206a240020000b13002000280208200149044020002001102e0b0bf60202067f027e0240200128020420012802006b220204402002410375210220002802042106200041106a2802002203200041146a280200220449044020032002ad2006ad422086843702002000200028021041086a3602100c020b027f41002003200028020c22056b410375220741016a2203200420056b2204410275220520052003491b41ffffffff01200441037541ffffffff00491b2205450d001a200541037410130b2103200320074103746a22042002ad2006ad4220868437020020042000280210200028020c22076b22026b2106200320054103746a2103200441086a2104200241014e044020062007200210121a0b20002003360214200020043602102000200636020c0c010b200041001001200028020422026a103741004100200220002802006a1002200010380b20012802042102200128020021010340200120024704402000200129030022084201862008423f8722098520094201862008423f88842009851039200141086a21010c010b0b0b880101037f419408410136020041980828020021000340200004400340419c08419c082802002201417f6a220236020020014101484504404194084100360200200020024102746a22004184016a280200200041046a280200110200419408410136020041980828020021000c010b0b419c084120360200419808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104620024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104620024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101841012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0a0020002001420010390b2501017f200120006b220141037521032001044020022000200110440b200220034103746a0b3101017f2001200028020820002802006b2200410275220220022001491b41ffffffff01200041037541ffffffff00491b0b890101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103d20036a0520030b41016a21040b200041186a28020022030440200041086a280200200041146a2802002003103a21000b2000200028020020046a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001043200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103c200441106a24000b2f01017f2000280208200149044020011015200028020020002802041012210220002001360208200020023602000b0b2101017f20011028220220012802044b044010000b2000200120011047200210480b2701017f230041206b22022400200241086a200020014114102710462100200241206a240020000b4c01017f2000410036020c200041106a2003360200200104402001101121040b200020043602002000200420024103746a22023602082000200420014103746a36020c2000200236020420000b870101037f200120012802042000280204200028020022046b22036b2202360204200341004a044020022004200310121a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141786a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001102f20004100200428020c2201200428020822022001103022032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b9e0102027f027e230041106b22022400200110180240024020011019450d002001280204450d0020012802002d000041c001490d010b10000b200241086a2001101a200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203103a280200210120022003417f6a3602002007103b4180104f044020072000410c6a280200417c6a103c0b200141384f047f2001103d20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103a21000c010b02402007103b0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103e0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010132105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103f220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10402102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021041200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104222013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10402102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021041200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103e0c010b20042001410175410120011b200320051040210241802010132106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103f22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104021032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031041200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021041052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104222013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104021062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061041200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071043200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b3601017f2000280208200149044020011015200028020020002802041012210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1037200120002802006a22012002200110020c010b0b0b2801017f2000200220011003200028020422036a103720022001200320002802006a1004200010380b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103f22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10402103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031041200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110440b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101321040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110440b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210121a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041b0880436020c41a008200028020c41076a417871220036020041a408200036020041a8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001047200010286a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b1a01004180080b13696e697400736f7274006765745f6172726179"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SORT = "sort"; - - public static final String FUNC_GET_ARRAY = "get_array"; - - protected MergeSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MergeSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MergeSort.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MergeSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MergeSort.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MergeSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall sort(Int64[] arr, Int32 start, Int32 end) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,start,end), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall sort(Int64[] arr, Int32 start, Int32 end, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,start,end), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_array() { - final WasmFunction function = new WasmFunction(FUNC_GET_ARRAY, Arrays.asList(), Int64[].class); - return executeRemoteCall(function, Int64[].class); - } - - public static MergeSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MergeSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MergeSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MergeSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MultiIndexContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MultiIndexContract.java deleted file mode 100644 index 4ff51e5577..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MultiIndexContract.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class MultiIndexContract extends WasmContract { - private static String BINARY_0 = "0x0061736d010000000184011660027f7f0060017f017f60027f7f017f60017f0060037f7f7f0060037f7f7f017f60000060027f7e017f60047f7f7f7f017f60047f7f7f7f0060027e7f0060017f017e60037f7f7e0060047f7f7e7f0060057f7e7e7f7e0060037e7e7f0060047e7e7f7e0060057e7e7f7e7f006000017f60037f7f7e017f60017e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000203656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65001503656e760f706c61746f6e5f726c705f75313238000f03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001203656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000203656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000903656e760d706c61746f6e5f72657475726e00000376750609010102020100030100070203000014010007020211000e0a0200020400020000050b0c0104010100001300100d0200070103030a00020200040108000305080202040202000507070000010105010100050803050203010000010003000103010303060b0103000003000006030604010109020405017001080805030100020608017f0141d089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974007a06696e766f6b650071090e010041010b0736376e6f708101700a9fb601750400107c0be80c02077f027e230041b0016b220424004138100f220542003702042005418808360200200541106a22081010210620052000360228200520022d00003a001c2006200110112101200520032d00003a001d2005200041206a2203290300220b3703302003200b42017c3703002004200536021420042008360210200441f0006a200110122103200442a2869ec3e3b694e3ea003703980120044292c7f3cbbeecafaf4437039001200441a0016a2202200310121a2004027f20044190016a1013044020002000290320427f7c37032020044190016a200010142004200428029001360200200429029401210b20044200370294012004200b37020420044190016a410472101541000c010b2005290330210b200441186a200110122101200442a2869ec3e3b694e3ea003703980120044292c7f3cbbeecafaf44370390012002200110122103200441d0006a1016210120044188016a410036020020044180016a4200370300200441f8006a420037030020044200370370200441f0006a41001017200441f0006a20042903900110182004290398011018200441306a20031012101922034101101720042802702102200341046a101a20012002101b200120044190016a101c200128020c200141106a28020047044010000b200128020421062001280200210a200441f0006a10162103200b101d21072003200441306a101e2202101f2003200720022802046a20022802006b101b02402003200b1020220328020c200341106a280200460440200341046a2107200328020021090c010b200341046a2107100020032802002109200328020c2003280210460d0010000b200a200620092007280200100b200228020022060440200220063602040b200328020c22020440200320023602100b200128020c22030440200120033602100b20052d001c210520042004280210290320220c370318200442003703a801200420053a00a001200442f487a7c280d7c29be2003703980120044292c7f3cbbeecafaf443703900120044180016a410036020020044200370378024020044190016a200441f0006a10214504402004200c370330200441d0006a200441306a10222101200428027804402004410036028001200442003703780b200420012802003602782004200129020437027c2004420037038801200442003703704292c7f3cbbeecafaf4442f487a7c280d7c29be20020054200200441f0006a10230c010b2004290370220b5004402004290388014200520d01200428027c20042802786b410375411d4d0440200441f8006a200441186a10244292c7f3cbbeecafaf4442f487a7c280d7c29be20020054200200441f0006a10230c020b200442003703502004200c370330200441d8006a200441306a10221a200442003703684292c7f3cbbeecafaf4442f487a7c280d7c29be20020054201200441d0006a10232004420137038801200442013703704292c7f3cbbeecafaf4442f487a7c280d7c29be20020054200200441f0006a102320042802582205450d01200441dc006a20053602000c010b200441d0006a4292c7f3cbbeecafaf4442f487a7c280d7c29be2002005200b10250240200441dc006a28020020042802586b410375411d4d0440200441d8006a200441186a10244292c7f3cbbeecafaf4442f487a7c280d7c29be2002005200b200441d0006a10230c010b2004200b3703302004200c370328200441386a200441286a10221a200442003703484292c7f3cbbeecafaf4442f487a7c280d7c29be2002005200b42017c220c200441306a10232004200c3703684292c7f3cbbeecafaf4442f487a7c280d7c29be2002005200b200441d0006a10232004200c3703704292c7f3cbbeecafaf4442f487a7c280d7c29be20020054200200441f0006a102320042802382205450d002004413c6a20053602000b20042802582205450d002004200536025c0b2004280278220504402004200536027c0b2004280210290320200810262000200428021041206a1027200441106a1028200420042802102201360270200420042802142205360274200504402005200528020441016a3602040b20044198016a20053602002004200136029401200420003602900120044190016a4104722103200504402005200528020441016a3602040b200441086a20053602002004200136020420042000360200200442003702940120031015200441f0006a101541010b3a000c200441106a101520044104721015200441b0016a24000b0b002000410120001b10590b190020004200370200200041086a41003602002000106d20000b920201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210500b200120026a41003a000020002d000041017104402000200236020420000f0b200020024101743a000020000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b2003100f220120042002107d200020023602042000200341017236020020002001360208200120026a41003a00000b20000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204100f21022000200136020420002004410172360200200020023602080b200220032001107d200120026a41003a000020000b5801037f230041206b22022400200241086a101622012000101c200128020c200141106a28020047044010000b2001280200200128020410092100200128020c22030440200120033602100b200241206a240020004100470bb30101037f230041106b220324004138100f220242003702042002418808360200200241106a220410101a200220013602282002200141206a2903003703302003200236020c2003200436020820032002360204200320043602000240200204402000200436020420002001360200200041086a20023602002002200228020441026a3602040c010b2000200436020420002001360200200041086a20023602000b20031015200341086a1015200341106a24000b5401017f024020002802042200450d00200020002802042201417f6a36020420010d002000200028020028020811030020002802082201450440200020002802002802101103000f0b20002001417f6a3602080b0b29002000410036020820004200370200200041001043200041146a41003602002000420037020c20000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203105b280200210120022003417f6a3602002007105d4180104f044020072000410c6a280200417c6a10580b200141384f047f2001105a20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002105b21000c010b02402007105d0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a105e0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020100f2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a105f220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10602102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021061200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a106222013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10602102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021061200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a105e0c010b20042001410175410120011b2003200510602102418020100f2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a105f22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200106021032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031061200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021061052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a106222013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210106021062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061061200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071057200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b08002000200110550ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002105a20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001105b0c010b20000b2201200128020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001057200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011058200441106a24000b1300200028020820014904402000200110430b0b8f0101037f230041406a220224002000410310442100200241386a4100360200200241306a4200370300200241286a420037030020024200370320200241206a2001290300101820012903081018200241106a200141106a220310121019210420002002280220101b2000200129030010202001290308102020022003101210451a200441046a101a200241406b24000b5101037f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001018210220012802002103200241046a101a200141206a240020030b3a01017f200041003602082000420037020020004101100f2201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004104320002802040520020b20002802006a2003200110541a2000200028020420016a3602040b08002000200110560bd505020c7f017e230041b0016b22022400200241306a1016220520001046200528020c200541106a28020047044010000b024020052802002203200528020422041009220a450440410021000c010b410021002002410036022820024200370320200241206a200a102e20032004200228022022062002280224220820066b100a417f470440200241e0006a200241086a200641016a20082006417f736a102f220b410010472001200241e0006a1030370300200241c8006a200b4101104702400240200228024c450d0020022802482d000041c001490d00200141086a2109200241c8006a10482100200141106a220c280200200128020822036b41037520004904402009200241e0006a20002001410c6a28020020036b410375200c10492200104a2000104b0b20024188016a200241c8006a4101104c2100200241f8006a200241c8006a4100104c210820002802042103034020082802042003464100200028020822042008280208461b0d02200241e0006a20032004411c104d1030210e0240200128020c220320012802104904402003200e3703002001200341086a36020c0c010b20024198016a2009200320092802006b410375220341016a104e2003200c1049210320022802a0012204200e3703002002200441086a3602a00120092003104a2003104b0b20002000280204220320002802086a410020031b22033602042000280200220404402000200436020820032004104f21072000027f200028020422034504404100210441000c010b4100210441002000280208220d2007490d001a200d20072007417f461b210420030b2203ad2004ad42208684370204200041002000280200220720046b2204200420074b1b3602000c0105200041003602080c010b000b000b10000b200241e0006a200b410210472001200241e0006a1030370318200a21000b2006450d00200220063602240b200528020c22030440200520033602100b200241b0016a240020000b3100200041003602082000420037020020004101105320002802042001410810541a2000200028020441086a36020420000bf704010a7f23004180016b22052400200520033703182005200137030820052000370300200520023a0010200541c8006a10162107200541f8006a22064100360200200541f0006a22084200370300200541e8006a220a420037030020054200370360200541e0006a41001017200541e0006a2000101820011018200241ff017110512003101822024101101720052802602109200241046a101a20072009101b200720051046200728020c200741106a28020047044010000b2007280204210b2007280200210c200541306a101621022006410036020020084200370300200a420037030020054200370360200541e0006a41001017200541e0006a20042903001018200441086a220d1052200429031810182209410110172005280260210e200941046a101a2002200541206a101e2209101f2002200e20092802046a20092802006b101b20024103104421022006410036020020084200370300200a420037030020054200370360200541e0006a20042903001018200d105220042903181018210a20022005280260101b2002200429030010202004410c6a220228020020042802086b410375104421082002280200210620042802082102034020022006464504402008200229030010201a200241086a21020c010b0b2008200429031810202102200a41046a101a0240200228020c200241106a280200460440200241046a2106200228020021080c010b200241046a2106100020022802002108200228020c2002280210460d0010000b200c200b20082006280200100b200928020022060440200920063602040b200228020c22060440200220063602100b200728020c22020440200720023602100b20054180016a24000b820101037f230041206b2203240002402000280204220220002802084704402000200241086a360204200220012903003703000c010b200341086a2000200220002802006b410375220241016a104e2002200041086a10492202280208220420012903003703002002200441086a36020820002002104a2002104b0b200341206a24000b4801017f230041206b2205240020004200370308200041106a410036020020052004370318200520033a001020052002370308200520013703002005200010211a200541206a24000bbd04010a7f23004190016b220224002002200037030820024292c7f3cbbeecafaf44370300200241386a1016210520024188016a2206410036020020024180016a22074200370300200241f8006a2208420037030020024200370370200241f0006a41001017200241f0006a4292c7f3cbbeecafaf4410552000101822044101101720022802702103200441046a101a20052003101b20052002103d200528020c200541106a28020047044010000b200528020421092005280200210a200241206a1016210320064100360200200742003703002008420037030020024200370370200241f0006a41001017200241f0006a200241e0006a20011012101920012d000c105120012d000d10512204410110172002280270210b200441046a101a2003200241106a101e2204101f2003200b20042802046a20042802006b101b200341031044210320064100360200200742003703002008420037030020024200370370200241f0006a200241e0006a20011012101920012d000c105120012d000d1051210620032002280270101b2003200241d0006a20011012104520012d000c106320012d000d10632101200641046a101a0240200128020c200141106a280200460440200141046a2103200128020021060c010b200141046a2103100020012802002106200128020c2001280210460d0010000b200a200920062003280200100b200428020022030440200420033602040b200128020c22040440200120043602100b200528020c22010440200520013602100b20024190016a24000bca0302057f027e02400240200028020422020440200041046a21032001290300210703400240200720022903102208540440200228020022040d010c040b200820075a0d04200241046a210320022802042204450d04200321020b20022103200421020c000b000b200041046a21020b200221030b0240200328020022050d004120100f22054200370218200520023602082005420037020020032005360200200520012903003703102005210420002802002802002202044020002002360200200328020021040b2004200420002802042206463a000c03400240024020042006460d00200428020822032d000c0d002003200328020822022802002201460440024020022802042201450d0020012d000c0d002001410c6a21040c030b20042003280200470440200310402003280208220328020821020b200341013a000c200241003a000c200210410c010b02402001450d0020012d000c0d002001410c6a21040c020b20042003280200460440200310412003280208220328020821020b200341013a000c200241003a000c200210400b2000200028020841016a3602080c020b200341013a000c200220022006463a000c200441013a0000200221040c000b000b200541186a0b6302027f017e230041106b2202240020022001280200220336020820022001280204220136020c200104402001200128020441016a3602040b20002902002104200020033602002000200136020420022004370308200241086a1015200241106a24000b5d01017f230041206b22022400200241106a20002001102a20022000102b4100210020022802102002280200460440200228021429032020022802042903205121000b20024104721015200241106a4104721015200241206a240020000be10202047f017e230041e0006b22032400200020011014200342a2869ec3e3b694e3ea0037030820034292c7f3cbbeecafaf44370300200341106a2204200210121a200310130440200342a2869ec3e3b694e3ea0037030820034292c7f3cbbeecafaf443703002004200210121a200341c8006a101622022003101c200228020c200241106a28020047044010000b0240200228020022052002280204220610092204450d002003410036024020034200370338200341386a2004102e2005200620032802382204200328023c220520046b100a417f470440200341206a200441016a20052004417f736a102f103021070b2004450d002003200436023c0b200228020c22040440200220043602100b20032001200710312003200328020036024820032003280204220236024c200204402002200228020441016a3602040b200041046a200341c8006a1028200341c8006a1015200310150b200341e0006a24000b8d0302037f027e230041d0006b2202240020024200370320200141206a290300210503400240200520065204402002200637033020024292c7f3cbbeecafaf44370328200241386a1016200241286a103d2002280244200228024847044010000b2002280238200228023c10092103200228024422040440200220043602480b2003450d01200621050b20004200370204200020013602002002420037031820022005370320200241186a1015200041046a2104024020012005103e200141046a47044020022001200241206a10272203280200360210200220032802042203360214200304402003200328020441016a3602040b2004200241106a1028200241106a10150c010b4138100f220342003702042003418808360200200341106a220010101a20032005370330200320013602282002200336023c200220003602382002200336020c20022000360208200304402003200328020441016a3602040b2004200241086a1028200241086a1015200241386a10150b200241d0006a24000f0b200642017c21060c000b000bf90302047f017e230041f0006b22022400200241086a20001014200242a2869ec3e3b694e3ea0037033820024292c7f3cbbeecafaf44370330200220012d00003a0040200241d8006a10162203200241306a102d200328020c200341106a28020047044010000b2003280200200328020410092104200328020c22050440200320053602100b20040440200242a2869ec3e3b694e3ea0037032020024292c7f3cbbeecafaf44370318200220012d00003a0028200241d8006a10162203200241186a102d200328020c200341106a28020047044010000b0240200328020022042003280204220510092201450d002002410036025020024200370348200241c8006a2001102e2004200520022802482201200228024c220420016b100a417f470440200241306a200141016a20042001417f736a102f103021060b2001450d002002200136024c0b200328020c22010440200320013602100b200241d8006a200020061031200220022802583602302002200228025c2203360234200304402003200328020441016a3602040b200241086a410472200241306a1028200241306a1015200241d8006a10150b200241d8006a200010144100210320022802082002280258460440200228020c290320200228025c2903205121030b200241d8006a4104721015200241086a4104721015200241f0006a240020030b820101027f230041206b220224002000410310442100200241186a4100360200200241106a4200370300200241086a4200370300200242003703002002200129030010182001290308101820012d00101051210320002002280200101b2000200129030010202001290308102020012d001010631a200341046a101a200241206a24000bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001100f21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110541a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b0c00200020012002411c104d0b850102027f017e230041106b22012400200010640240024020001065450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001066200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b990101037f230041106b220324002000420037020020032002370308024020012002103e200141046a47044020002001200341086a102710280c010b4138100f220442003702042004418808360200200441106a220510101a200420013602282002200510422004200237033020032004360204200320053602002001200341086a102720031028200020031028200310150b200341106a24000bd30202047f017e230041406a22012400200142f487a7c280d7c29be20037032820014292c7f3cbbeecafaf4437032020014200370338200120002d00003a0030200141106a410036020020014200370308200141206a2001102121022001280208220304402001200336020c0b02402002450d00200141206a4292c7f3cbbeecafaf4442f487a7c280d7c29be20020002d0000420010252001412c6a280200200128022822026b410375210420012903382105034020055045044020014292c7f3cbbeecafaf4442f487a7c280d7c29be20020002d000020051025200120012903003703202001280228044020014100360230200142003703280b2001200128020822023602282001200128020c220336022c20012001280210360230200120012903182205370338200320026b41037520046a21040c010b0b2002450d002001200236022c0b200141406b2400200441ff01710b2c01017f230041106b22032400200320012002102a20002003103410121a20034104721015200341106a24000b4102027f017e20002802002201200028020422022903202203103e200141046a4604402003200210422001200041046a220028020041206a1027200010280b20020b7601027f230041406a22012400200142f487a7c280d7c29be20037032820014292c7f3cbbeecafaf4437032020014200370338200120002d00003a0030200141106a410036020020014200370308200141206a2001102121002001280208220204402001200236020c0b200141406b240020004100470ba703010a7f230041406a22022400200241086a2000102b4138100f220542003702042005418808360200200541106a220810102104200520003602282004200241086a1034220310112104200541246a200341146a2802003602002005200329020c37021c20042001101121032005200228020c22092903203703302002200536021c20022008360218200241306a200241086a1034220a10122106200241206a2003101221030240200628020420022d0030220441017622012004410171220b1b2204200328020420022d00202207410176200741017122071b470d002003280208200341016a20071b21030240200b450440200641016a210403402001450d0220042d000020032d0000470d03200341016a2103200441016a21042001417f6a21010c000b000b2004450d002006280208210103402004450d0120012d000020032d0000470d02200341016a2103200141016a21012004417f6a21040c000b000b200a2d000c2005411c6a2d0000470d002009290320200810262000200228021841206a1027200241186a10280b200241186a1015200241086a4104721015200241406b24000ba11502077f047e230041a0026b22022400200241186a20002001102a200241106a200241206a280200220136020020022002290318370308200104402001200128020441016a3602040b20024180026a200241086a103410122101200242a2869ec3e3b694e3ea0037035820024292c7f3cbbeecafaf44370350200241e0006a200110121a200241286a10162201200241d0006a101c200128020c200141106a28020047044010000b2001280204210320012802002104200241003a00e00120042003200241e0016a4100100b200128020c22030440200120033602100b200228020c290320210c2002200241086a10342d000c22013a002720024292c7f3cbbeecafaf443703d801200242f487a7c280d7c29be2003703d001200242003703c801200220013a00c001200242f487a7c280d7c29be2003703b80120024292c7f3cbbeecafaf443703b001200241a0016a410036020020024200370398010240200241b0016a20024190016a1021450d00024020022903900122094200520d0020022903a8014200520d00200228029c0122012002280298012001200c10382201460d012001290300200c520d0120024198016a2001103920022d0027210120022903d001210920022903d801210a200228029c01200228029801460440200a200920014200103a0c020b200a20092001420020024190016a10230c010b200220024190016a36028c012002200241276a360288012002200241d0016a360284012002200241d8016a36028001200241003a007f200241306a2104200241d8006a21050340200a2009560d01200241d0006a20024180016a2009200a7c420188220b200241ff006a103b0240024020022d007f450d00200228026441786a290300200c540440200241286a20024180016a200229035042017c200241ff006a103b2002290328210a2002280238220104402002200136023c0b20022d007f0d020c010b200229035021092002280260290300200c56044020024100360290022002420037038802200b2009200b51ad7d21090340200220022903d8013703e001200220022903d0013703e801200220093703f801200220022d00273a00f0010240027f200241e0016a20024180026a10210440200241013a007f41000c010b20094200520d01200241003a007f4200210941010b210120022009370328200420024180026a103c1a200228028802220304402002200336028c020b200229032821092002280238220304402002200336023c0b20010d030c040b2009427f7c21090c000b000b200241286a2005103c210102402002280234220320022802302003200c10382203460d002003290300200c520d00200420031039200228023420022802304604402002290340210b2002290328210a20022903d80120022903d00120022d00272009103a200a200b84210c2009500440200c500d02200a200b51044020024180026a20022903d80120022903d00120022d0027200a102520022903d80120022903d00120022d0027200a103a20022903d80120022903d00120022d0027420020024180026a10232002280288022203450d032002418c026a20033602000c030b20024180026a20022903d80120022903d00120022d0027200b10252002200a3703800220022903d80120022903d00120022d0027200b103a20022903d80120022903d00120022d0027420020024180026a1023200241e0016a20022903d80120022903d00120022d002720022903980222091025200242003703e00120022903d80120022903d00120022d00272009200241e0016a102320022802e80122030440200241ec016a20033602000b2002280288022203450d022002418c026a20033602000c020b200c500440200242003703a801200242003703900120022903d80120022903d00120022d0027420020024190016a10230c020b20024180026a20022903d80120022903d00120022d0027200a10252002200b3703980220022903d80120022903d00120022d0027200a20024180026a1023200241e0016a20022903d80120022903d00120022d0027200b10252002200a3703e00120022903d80120022903d00120022d0027200b200241e0016a102320022802e80122030440200241ec016a20033602000b2002280288022203450d012002418c026a20033602000c010b20022903d80120022903d00120022d00272009200110230b20012802082201450d00200220013602340b20022802602201450d02200220013602640c020b20022802602201450d00200220013602640c000b000b200228029801220104402002200136029c010b2002200228020c29032037033020024292c7f3cbbeecafaf44370328200241d0006a10162201200241286a103d200128020c200141106a28020047044010000b2001280204210320012802002104200241003a0080022004200320024180026a4100100b200128020c22030440200120033602100b2000200228020c290320103e2204200041046a470440024020042802042201450440200421010340200128020822032802002001460d02200321010c000b000b2001103f21030b20042000280200460440200020033602000b20002000280208417f6a36020820002802042100027f0240024020042802002205450440200421030c010b20042802042201450440200421030c020b2001103f220328020022050d010b200328020422050d004100210541000c010b2005200328020836020841010b210802402003200328020822072802002201460440200720053602002000200346044041002101200521000c020b200728020421010c010b200720053602040b20032d000c210720032004470440200320042802082206360208200620042802082802002004474102746a20033602002004280200220620033602082003200636020020032004280204220636020420060440200620033602080b200320042d000c3a000c2003200020002004461b21000b0240200741ff0171450d002000450d002008450440034020012d000c2103024020012001280208220528020047044002400240200341ff0171450440200141013a000c200541003a000c2005104020012000200020012802002203461b2100200328020421010b20012802002205044020052d000c450d010b20012802042203044020032d000c450d020b200141003a000c0240200020012802082201460440200021010c010b20012d000c0d040b200141013a000c0c060b20012802042203044020032d000c450d010b200541013a000c200141003a000c200110412001280208220128020421030b2001200128020822002d000c3a000c200041013a000c200341013a000c200010400c040b0240200341ff0171450440200141013a000c200541003a000c2005104120012000200020012802042203461b2100200328020021010b20012802002203044020032d000c450d010b024020012802042205044020052d000c450d010b200141003a000c20002001280208220147044020012d000c0d030b200141013a000c0c050b2003044020032d000c450d010b200541013a000c200141003a000c200110402001280208220128020021030b2001200128020822002d000c3a000c200041013a000c200341013a000c200010410c030b2001280208220320032802002001464102746a28020021010c000b000b200541013a000c0b200441186a10150b200241086a4104721015200241186a4104721015200241a0026a24000b4a01027f200120006b4103752101034020010440200120014101762203417f736a2003200020034103746a220329030020025422041b2101200341086a200020041b21000c010b0b20000b3201037f2000280204200141086a22036b220241037521042002044020012003200210500b2000200120044103746a3602040b830101037f230041406a2204240020042003370318200420023a00102004200137030820042000370300200441286a1016220220041046200228020c200241106a28020047044010000b2002280204210520022802002106200441003a002720062005200441276a4100100b200228020c22050440200220053602100b200441406b24000bc00102017f017e230041406a22042400200441306a4100360200200442003703280340200420023703182004200128020029030037030020042001280204290300370308200420012802082d00003a0010024002402004200441206a10210440200341013a00000c010b200242017c2205200128020c290300580d01200341003a0000200242017c21020b20002002370300200041086a200441206a103c1a2004280228220104402004200136022c0b200441406b24000f0b200521020c000b000b7a01027f2000410c6a4200370200200041003602082000200129030037030002402001410c6a28020020012802086b2202450d00200041086a20024103751053200128020c200128020822036b22024101480d00200028020c2003200210541a2000200028020c20026a36020c0b2000200129031837031820000b7401027f230041206b220224002000410210442100200241186a4100360200200241106a4200370300200241086a42003703002002420037030020022001290300101820012903081018210320002002280200101b200020012903001020200129030810201a200341046a101a200241206a24000b5801047f200041046a22032104200321020340200428020022000440200041046a2000200029031020015422051b21042002200020051b21020c010b0b02402002200347044020022903102001580d010b200321020b20020b1401017f03402000220128020022000d000b20010b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b940201057f230041f0006b220224002002200037031020024292c7f3cbbeecafaf44370308200241406b10162204200241086a103d200428020c200441106a28020047044010000b0240200428020022052004280204220610092203450d002002410036023820024200370330200241306a2003102e20052006200228023022032002280234220520036b100a417f470440200241d8006a200241186a200341016a20052003417f736a102f220541001047200241d8006a2001106b200241d8006a2005410110472001200241d8006a106c3a000c200241d8006a2005410210472001200241d8006a106c3a000d0b2003450d00200220033602340b200428020c22030440200420033602100b200241f0006a24000b2f01017f2000280208200149044020011059200028020020002802041054210220002001360208200020023602000b0b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374100f0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110541a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a106941004100200120002802006a10022000106a20000b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a106920042001200220002802006a10042000106a20000b900101027f230041206b220224002000410410442100200241186a4100360200200241106a4200370300200241086a4200370300200242003703002002200129030010182001290308101820012d0010105120012903181018210320002002280200101b2000200129030010202001290308102020012d00101063200129031810201a200341046a101a200241206a24000bca0202067f017e230041106b220324002001280208220520024b0440200341086a2001106720012003280208200328020c104f36020c200320011067410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114104d1a200341106a24000f0b20032001106741002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104f1080012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001067200128020c210003402000450d01200141002001280208220320032000104f22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4c01017f2000410036020c200041106a2003360200200104402001105c21040b200020043602002000200420024103746a22023602082000200420014103746a36020c2000200236020420000b870101037f200120012802042000280204200028020022046b22036b2202360204200341004a044020022004200310541a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141786a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001106720004100200428020c2201200428020822022001104f22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000107e20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000107e20024d0d0020034104710440100020000f0b200042003702000b20000b3101017f2001200028020820002802006b2200410275220220022001491b41ffffffff01200041037541ffffffff00491b0b2701017f230041206b22022400200241086a200020014114104d107e2100200241206a240020000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210541a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b090020002001ad10550b850101017f20012802002001280204460440027f200041186a28020022010440200041086a280200200041146a2802002001105b0c010b20000b2201200128020041016a36020020000f0b2000410010172001280204210220012802002101037f2001200246047f2000410110172000052000200129030010181a200141086a21010c010b0b0b2301017f20002001105c2202360200200020023602042000200220014103746a3602080bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b8b0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002105a20026a0520020b41016a21030b027f200041186a28020022020440200041086a280200200041146a2802002002105b0c010b20000b2202200228020020036a36020020000b2a01017f2000420020011005200028020422026a106942002001200220002802006a10062000106a20000b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b9b0101047f230041106b220124002001200036020c2000047f41c809200041086a2202411076220041c8092802006a220336020041c40941c409280200220420026a41076a417871220236020002400240200341107420024d044041c809200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104105441086a0541000b2100200141106a240020000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b09002000410374100f0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a105f22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10602103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031061200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110500b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274100f21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110500b20020b090020002001ad10560b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001064200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110682204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b2201017f20011068220220012802044b044010000b200020012001107f20021080010bff0201037f200028020445044041000f0b2000106441012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3601017f2000280208200149044020011059200028020020002802041054210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1069200120002802006a22012002200110020c010b0b0bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10101a0c010b200241186a200010662000106821030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206100f21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a106d200241206a24000b7d01037f230041106b22012400200010640240024020001065450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001066200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b0c00200041880836020020000b0a0020004188083602000b0300010b800802067f017e230041c0016b22002400107c1007220110592202100820004198016a200041086a20022001102f2201410010470240024020004198016a10302206500d00419c081072200651044020011048410147044010000b20004198016a107310740c020b41a10810722006510440200041f8006a10102102200041003b01840120004185016a210320004184016a210420011048410447044010000b20004101360268200020013602502000200041e8006a36025420004198016a20014101104720004198016a2002106b2000200028026841016a360268200041d0006a20041075200041d0006a2003107520004198016a10732101200041d0006a20021012210220002d0085012103200020002d0084013a0068200020033a004020004198016a2002200041e8006a200041406b100e200110740c020b41b30810722006510440200041d0006a101021022001200041d0006a107620004198016a10732101200020004198016a200041f8006a2002101210293a0068200041e8006a1077200110740c020b41c70810722006510440200041003a00682001200041e8006a107820004198016a10732101200020002d00683a0078200020004198016a200041f8006a102c3a0050200041d0006a1077200110740c020b41d90810722006510440200041003a00402001200041406b107820004198016a10732103200020002d00403a0068200041e8006a10322101200041d0006a1016210220004190016a410036020020004188016a420037030020004180016a420037030020004200370378200041f8006a20011051210420002802782105200441046a101a20022005101b200220011063220128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310740c020b41ec0810722006510440200041206a101021022001200041206a107620004198016a10732103200041406b20004198016a200041306a200210121033200041d0006a1016210120004190016a410036020020004188016a420037030020004180016a420037030020004200370378200041f8006a200041e8006a200041406b10121019210220002802782104200241046a101a20012004101b2001200041f8006a200041406b10121045220128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310740c020b41fe0810722006510440200041003a00682001200041e8006a107820004198016a10732101200020002d00683a00782000200041f8006a10353a0050200041d0006a1077200110740c020b419109107220065104402001410110790c020b41a20910722006520d002001410210790c010b10000b107a200041c0016a24000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010bff0101067f230041406a220124002000420037020420004200370310200041003b000c200041186a22034292c7f3cbbeecafaf443703002000200041046a360200200141286a101620032903001020220328020c200341106a28020047044010000b0240200328020022022003280204220510092206450d002001410036022020014200370318200141186a2006102e2002200520012802182202200128021c220520026b100a417f47044020002001200241016a20052002417f736a102f1030370320200621040b2002450d002001200236021c0b200328020c22020440200320023602100b2004450440200020002903103703200b200141406b240020000b960201087f230041406a22042400200441286a10162201200041186a2202290300101d101b200120022903001020220228020c200241106a28020047044010000b2002280204210620022802002108200441106a101621012000290320101d210520012004101e2203101f2001200520032802046a20032802006b101b0240200120002903201020220128020c200141106a280200460440200141046a2105200128020021070c010b200141046a2105100020012802002107200128020c2001280210460d0010000b2008200620072005280200100b200328020022060440200320063602040b200128020c22030440200120033602100b200228020c22010440200220013602100b2000280204107b200441406b24000b4601017f230041206b22022400200241086a2000280200200028020428020010472001200241086a106c3a000020002802042200200028020041016a360200200241206a24000b3401017f230041206b2202240020001048410247044010000b200241086a200041011047200241086a2001106b200241206a24000b9d0101047f230041406a22012400200141086a10162102200141386a4100360200200141306a4200370300200141286a420037030020014200370320200141206a20003100001055210320012802202104200341046a101a20022004101b200220003100001056220028020c200041106a28020047044010000b20002802002000280204100c200028020c22020440200020023602100b200141406b24000b3701017f230041206b2202240020001048410247044010000b200241086a2000410110472001200241086a106c3a0000200241206a24000b4801027f230041d0006b22022400200241306a101021032000200241306a1076200241086a10732100200241086a200241406b20031012200111000020001074200241d0006a24000b880101037f41b409410136020041b8092802002100034020000440034041bc0941bc092802002201417f6a2202360200200141014845044041b4094100360200200020024102746a22004184016a280200200041046a28020011030041b409410136020041b80928020021000c010b0b41bc09412036020041b809200028020022003602000c010b0b0b1c00200004402000280200107b2000280204107b200041186a10150b0b3501017f230041106b220041d0890436020c41c009200028020c41076a417871220036020041c409200036020041c8093f003602000b10002002044020002001200210541a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000107f200010686a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b040041000b0bb10101004188080ba9010300000004000000050000000600000007000000696e697400616464496e69744d756c7469496e646578006765744d756c7469496e64657843626567696e006765744d756c7469496e64657843656e64006765744d756c7469496e646578436f756e74006765744d756c7469496e64657846696e64006765744d756c7469496e646578496e646578004d756c7469496e6465784d6f64696679004d756c7469496e6465784572617365"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_MULTIINDEXMODIFY = "MultiIndexModify"; - - public static final String FUNC_GETMULTIINDEXINDEX = "getMultiIndexIndex"; - - public static final String FUNC_MULTIINDEXERASE = "MultiIndexErase"; - - public static final String FUNC_GETMULTIINDEXCEND = "getMultiIndexCend"; - - public static final String FUNC_ADDINITMULTIINDEX = "addInitMultiIndex"; - - public static final String FUNC_GETMULTIINDEXCBEGIN = "getMultiIndexCbegin"; - - public static final String FUNC_GETMULTIINDEXCOUNT = "getMultiIndexCount"; - - public static final String FUNC_GETMULTIINDEXFIND = "getMultiIndexFind"; - - protected MultiIndexContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MultiIndexContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall MultiIndexModify(String my_name) { - final WasmFunction function = new WasmFunction(FUNC_MULTIINDEXMODIFY, Arrays.asList(my_name), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall MultiIndexModify(String my_name, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_MULTIINDEXMODIFY, Arrays.asList(my_name), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getMultiIndexIndex(Uint8 my_age) { - final WasmFunction function = new WasmFunction(FUNC_GETMULTIINDEXINDEX, Arrays.asList(my_age), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall MultiIndexErase(String my_name) { - final WasmFunction function = new WasmFunction(FUNC_MULTIINDEXERASE, Arrays.asList(my_name), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall MultiIndexErase(String my_name, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_MULTIINDEXERASE, Arrays.asList(my_name), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getMultiIndexCend(Uint8 my_sex) { - final WasmFunction function = new WasmFunction(FUNC_GETMULTIINDEXCEND, Arrays.asList(my_sex), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MultiIndexContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MultiIndexContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MultiIndexContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(MultiIndexContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall addInitMultiIndex(String my_name, Uint8 my_age, Uint8 my_sex) { - final WasmFunction function = new WasmFunction(FUNC_ADDINITMULTIINDEX, Arrays.asList(my_name,my_age,my_sex), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall addInitMultiIndex(String my_name, Uint8 my_age, Uint8 my_sex, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADDINITMULTIINDEX, Arrays.asList(my_name,my_age,my_sex), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getMultiIndexCbegin(String my_name) { - final WasmFunction function = new WasmFunction(FUNC_GETMULTIINDEXCBEGIN, Arrays.asList(my_name), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall getMultiIndexCount(Uint8 my_age) { - final WasmFunction function = new WasmFunction(FUNC_GETMULTIINDEXCOUNT, Arrays.asList(my_age), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall getMultiIndexFind(String my_name) { - final WasmFunction function = new WasmFunction(FUNC_GETMULTIINDEXFIND, Arrays.asList(my_name), String.class); - return executeRemoteCall(function, String.class); - } - - public static MultiIndexContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MultiIndexContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MultiIndexContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MultiIndexContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MultiSigWallet.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MultiSigWallet.java deleted file mode 100644 index 105e834772..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/MultiSigWallet.java +++ /dev/null @@ -1,369 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import java.util.Set; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class MultiSigWallet extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000015f1160027f7f0060017f017f60027f7f017f60017f0060037f7f7f0060037f7f7f017f60000060027f7e0060047f7f7f7f0060047f7f7f7f017f60017f017e60037f7e7f0060037e7e7f006000017f60027f7e017f60017e017f60027e7e017f02e2021003656e760c706c61746f6e5f70616e6963000603656e760b706c61746f6e5f73686133000803656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000203656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65001003656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000203656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000803656e760c706c61746f6e5f6576656e74000803656e760d706c61746f6e5f726576657274000603656e760d706c61746f6e5f72657475726e0000037473060002010005000001020203020507040702070007000b01040201000002010303070001050801000403000001050001000005090305000e07040105020605040a0a0100000000030102030000020001000609030100010402010500010200000f0100030000040105030604010102080003000405017001030305030100020608017f01419089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300100f5f5f66756e63735f6f6e5f65786974006106696e766f6b65004d0908010041010b022b2c0afba301730400107a0bd40502127f027e230041a0026b22022400200241206a418d081012210420024188016a10132103200241f8006a20041014200241e8006a20001014200241e0006a4100360200200241d8006a4200370300200241d0006a420037030020024200370348200241c8006a20022802782206200228027c101520022802682207200228026c101521092003200228024810162003200241f8006a10172003200241e8006a1017200328020c200341106a28020047044010000b2003280204210a2003280200210b200241306a10182100200241b0016a2204200141106a280000360200200241a8016a2208200141086a290000370300200220012900003703a001200241d0016a4100360200200241c8016a220c4200370300200241c0016a220d4200370300200242003703b801200241b8016a410010192105200241e8016a220e20042802002201360200200241e0016a220f20082903002214370300200241186a2001360200200241106a2014370300200220022903a00122153703d801200241f8016a2210201437030020024180026a2211200136020020024190026a2212201437030020024198026a2213200136020020022015370308200220153703f00120022015370388022005200241086a101a41011019210120022802b8012105200141046a101b20002005101620004101101c2100201320042802002201360200201220082903002214370300200220022903a001221537038802200f2014370300200e20013602002010201437030020112001360200200220153703d801200220153703f001200c2001360200200d2014370300200220153703b8012000200241b8016a4114101d220128020c200141106a28020047044010000b200b200a20012802002001280204100d200128020c22000440200120003602100b200941046a101b200704402002200736026c0b200604402002200636027c0b200328020c22010440200320013602100b200241a0026a24000b1f0020004200370200200041086a41003602002000200120011027103820000b1d0020001039200041146a41003602002000420037020c20004102101c0ba40201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a2004103a0340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b200241003602082002420037030020024120103b2003200228021420036b200228020022042002280204220120046b10012000200136020420002004360200200020022802083602082003450d00200220033602140b200241206a24000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103c20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001103d0c010b20000b2201200128020020036a36020020000b13002000280208200149044020002001103e0b0b1600200020012802002200200128020420006b101d1a0b190020001039200041146a41003602002000420037020c20000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a22022802002203103d280200210120022003417f6a3602002007103f4180104f044020072000410c6a280200417c6a10400b200141384f047f2001103c20016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a2802002001103d0c020b20000c010b02402007103f0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10410c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010362105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1042220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10432102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021044200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104522013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10432102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021044200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10410c010b20042001410175410120011b200320051043210241802010362106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104222013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104321032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031044200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021044052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104522013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104321062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061044200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071046200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b6601037f410121030240034020024114460d01200120026a2104200241016a210220042d0000450d000b411521030b027f200041186a28020022020440200041086a280200200041146a2802002002103d0c010b20000b2202200228020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001046200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011040200441106a24000b9f0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410360b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001104b1a0b20002002360214200020033602102000200536020c20000f0b200041001002200028020422016a10820141004100200120002802006a1003200010810120000b2c01017f2000200120021004200028020422036a10820120012002200320002802006a1005200010810120000b2e01017f230041206b2202240020022001370318200241086a41800810122000200241186a101f200241206a24000b8b0302077f017e23004190016b22032400200341d8006a10132104200341c8006a20001014200341386a20011014200341306a4100360200200341286a4200370300200341206a420037030020034200370318200341186a20032802482200200328024c101520032802382205200328023c101521062004200328021810162004200341c8006a10172004200341386a1017200428020c200441106a28020047044010000b20042802042107200428020021082003101821012002290300210a20034188016a410036020020034180016a4200370300200341f8006a420037030020034200370370200341f0006a410010192202200a1022200241011019210220032802702109200241046a101b20012009101620014101101c2201200a1024200128020c200141106a28020047044010000b2008200720012802002001280204100d200128020c22020440200120023602100b200641046a101b200504402003200536023c0b200004402003200036024c0b200428020c22010440200420013602100b20034190016a24000b2e01017f230041206b2202240020022001370318200241086a419d0810122000200241186a101f200241206a24000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204103820000b09002000200110471a0b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103c20026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001103d21000b2000200028020020036a3602000b08002000200110480b2d01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b101d1a0b9e0202067f027e230041e0006b2203240020004190026a419808419808102710282002280208450440100e0b02402001504504402002350208220920015a0d010b100e200235020821090b2000420a370310200041406b2001370300200041d8006a2009370300200041f8006a2105200241046a2106200341d0006a418d081012210420022802002102034020022006460440200341186a2004102120011020200341e0006a24000520052002410d6a102941013a0000200341406b200410212107200341386a2002411d6a2800002208360200200341306a200241156a290000220a370300200229000d2109200341086a200a370300200341106a200836020020032009370328200320093703002007200310112002102a21020c010b0b0b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0bd40101027f410a210320002d0000410171220404402000280200417e71417f6a21030b200320024f0440027f2004044020002802080c010b200041016a0b21032002044020032001200210490b200220036a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2104200341e6ffffff074d0440410b200341017422032002200320024b1b220341106a4170712003410b491b21040b20041036220320012002107b200020023602042000200441017236020020002003360208200220036a41003a00000b7401037f230041106b2203240020002003410c6a2001103422042802002202450440412410362202200129000037000d200241216a41003a00002002411d6a200141106a280000360000200241156a200141086a2900003700002000200328020c2004200210350b200341106a2400200241216a0b3401017f02402000280204220104402001102e21010c010b0340200028020822012802002000460d01200121000c000b000b20010bbe0102037f027e230041d0006b22022400200041d8006a29030020002903105a0440100e0b200041f8006a2203200110292d00000440100e0b2000200029035842017c37035820032001102941013a0000200241306a200241406b418d08101210212103200241286a200141106a2800002204360200200241206a200141086a290000220637030020012900002105200241086a2006370300200241106a20043602002002200537031820022005370300200320021011200241d0006a24000bec0701087f230041206b22082400200041d8006a290300200041406b290300580440100e0b200041f8006a2206200110292d0000450440100e0b20002000290358427f7c370358200041fc006a22072104200721030340200428020022020440200241046a20022002410d6a2001102d22051b21042003200220051b21030c010b0b024020032007460d0020012003410d6a102d0d002003200628020046044020062003102a3602000b20004180016a22022002280200417f6a360200200041fc006a2802002105027f0240024020032802002201450440200321040c010b20032802042202450440200321040c020b2002102e220428020022010d010b200428020422010d004100210141000c010b2001200428020836020841010b210902402004200428020822072802002202460440200720013602002004200546044041002102200121050c020b200728020421020c010b200720013602040b20042d000c210720032004470440200420032802082206360208200620032802082802002003474102746a20043602002003280200220620043602082004200636020020042003280204220636020420060440200620043602080b200420032d000c3a000c2004200520032005461b21050b200741ff0171450d002005450d002009450440034020022d000c2103024020022002280208220428020047044002400240200341ff0171450440200241013a000c200441003a000c2004102f20022005200520022802002203461b2105200328020421020b20022802002204044020042d000c450d010b20022802042203044020032d000c450d020b200241003a000c0240200520022802082202460440200521020c010b20022d000c0d040b200241013a000c0c060b20022802042203044020032d000c450d010b200441013a000c200241003a000c200210302002280208220228020421030b2002200228020822042d000c3a000c200441013a000c200341013a000c2004102f0c040b0240200341ff0171450440200241013a000c200441003a000c2004103020022005200520022802042203461b2105200328020021020b20022802002203044020032d000c450d010b024020022802042204044020042d000c450d010b200241003a000c20052002280208220247044020022d000c0d030b200241013a000c0c050b2003044020032d000c450d010b200441013a000c200241003a000c2002102f2002280208220228020021030b2002200228020822042d000c3a000c200441013a000c200341013a000c200410300c030b2002280208220320032802002002464102746a28020021020c000b000b200141013a000c0b2008200841106a418008101210212000290358101e200841206a24000b3a01037f034020024114470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000b1401017f03402000220128020022000d000b20010b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b4a01017f230041206b220224000240200150450440200041d8006a29030020015a0d010b100e0b200041406b20013703002002200241106a418008101210212001101e200241206a24000bfb0101077f230041106b22042400200042003702042000200041046a2202360200200141fc006a2107200141f8006a28020021010340200120074704402001410d6a21050240027f027f0240024020022000280200460440200221030c010b200210332203410d6a2005102d450d010b20022802004504402004200236020c2002210320020c030b2004200336020c200341046a0c010b20002004410c6a200510340b22032802000d01200428020c0b2108412410362206200529000037000d2006411a6a2005410d6a290000370000200641156a200541086a290000370000200020082003200610350b2001102a21010c010b0b200441106a24000b3e01027f024020002802002201044003402001220228020422010d000c020b000b03402000280208220228020020004621012002210020010d000b0b20020b890101027f200041046a21030240200028020422000440024003400240024020022000410d6a2204102d0440200028020022040d012001200036020020000f0b20042002102d450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b480020032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2000280204200310372000200028020841016a3602080b0b002000410120001b104a0bec0101037f200120002001463a000c03400240024020002001460d00200128020822022d000c0d002002200228020822032802002204460440024020032802042204450d0020042d000c0d002004410c6a21010c030b200120022802004704402002102f2002280208220228020821030b200241013a000c200341003a000c200310300f0b02402004450d0020042d000c0d002004410c6a21010c020b20012002280200460440200210302002280208220228020821030b200241013a000c200341003a000c2003102f0b0f0b200241013a000c200320002003463a000c200141013a0000200321010c000b000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204103621032000200236020420002004410172360200200020033602080b200320012002107b200220036a41003a00000b1600200041003602082000420037020020004100103e0b2001017f2000200110362202360200200020023602042000200120026a3602080bdd0101047f024020002802042203200028020022026b22042001490440200028020820036b200120046b22024f04400340200341003a00002000200028020441016a22033602042002417f6a22020d000c030b000b20002001104c220104402001103621050b200420056a220421030340200341003a0000200341016a21032002417f6a22020d000b200120056a210520042000280204200028020022046b22016b2102200141014e0440200220042001104b1a0b2000200536020820002003360204200020023602000f0b200420014d0d002000200120026a3602040b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2f01017f200028020820014904402001104a20002802002000280204104b210220002001360208200020023602000b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104222023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10432103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031044200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110490b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274103621040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110490b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8b0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002103c20026a0520020b41016a21030b027f200041186a28020022020440200041086a280200200041146a2802002002103d0c010b20000b2202200228020020036a36020020000b2a01017f2000420020011006200028020422026a10820142002001200220002802006a100720001081010b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002104b1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f418009200041086a220241107622004180092802006a220336020041fc0841fc08280200220420026a41076a417871220236020002400240200341107420024d0440418009200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104104b41086a0541000b2100200141106a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0bd30802077f017e230041d0036b22002400107a10082201104a22021009200041b0016a200020022001104e22014100104f02400240200041b0016a10502207500d0041ae0810512007510440200041246a22024200370200200042003703182000200236022020011052410347044010000b200041b0016a20014101104f2000200041b0016a1050370318200041c8006a20014102104f02400240200028024c450d0020002802482d000041c001490d00200041a0016a200041c8006a105320004190016a200041c8006a1054200041206a2102200041406b2103034020002802a40120002802940146044020002802a801200028029801460d030b200041b0016a200041a0016a105520034100360200200041386a2205420037030020004200370330200041b0016a200041306a10562002200041c4006a200041306a10342204280200450440412410362201200029033037000d2001411d6a2003280200360000200141156a2005290300370000200220002802442004200110350b200041a0016a10570c000b000b10000b200041b0016a105822012000290318200041c8006a200041306a200041206a1059105910262001105a0c020b41b30810512007510440200041d8006a4100360200200041d0006a420037030020004200370348200042003703880120004200370380012000420037037820004200370370200042003703682000420037036020004188016a210520004180016a2104200041f4006a2102200041e8006a2103200041e0006a210620011052410747044010000b20004101360230200020013602182000200041306a36021c200041b0016a20014101104f200041b0016a200041c8006a10562000200028023041016a360230200041186a2006105b200041186a2003105c200041186a2002105c200041186a2004105b200041186a2005105b200041b0016a10582105200041a0016a2003105d210120004190016a2002105d2102200041186a2001105d2103200041306a2002105d2104200541286a2206200629030042017c3703001000200428020022060440200420063602040b200328020022040440200320043602040b200228020022030440200220033602040b200128020022020440200120023602040b2005105a200028027422010440200020013602780b20002802682201450d022000200136026c0c020b41bb081051200751044020014101105e0c020b41c4081051200751044020014102105e0c020b41d0081051200751044020011052410247044010000b200041b0016a20014101104f200041b0016a10502107200041b0016a10582201200710312001105a0c020b41e00810512007520d0020011052410147044010000b200041186a200041b0016a105822021032200041c8006a10182201200041186a105f10162001200041186a1060200128020c200141106a28020047044010000b20012802002001280204100f200128020c22030440200120033602100b2002105a0c010b10000b1061200041d0036a24000b0c00200020012002411c10620bcc0202067f017e230041106b220324002001280208220520024b0440200341086a200110800120012003280208200328020c107e36020c20032001108001410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410621a200341106a24000f0b2003200110800141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004107e107f2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b22012400200010630240024020001064450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001065200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2501017f02402000280204450d0020002802002d000041c001490d002000106621010b20010b0a0020002001410110670b0a0020002001410010670b160020002001280204200141086a280200411c10621a0bcf0102037f027e230041406a2202240020001063200241386a20001065200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10000b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a20022802382003104b1a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000bb50102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a2001410020042002107e107f20002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b810f010c7f230041d0016b22012400200042e6f3f385bfb59a901f37030820004200370300200041086a200041106a1068450440200020002903003703100b20004200370318200041206a220242c2b783b3938bb78fde003703002002200041286a1068450440200020002903183703280b20004200370330200041386a2202429ebfd5b2bae3f690e5003703002002200041406b1068450440200020002903303703400b20004200370348200041d0006a220242dbdfb1ae9dad8b8d9c7f3703002002200041d8006a1068450440200020002903483703580b200041e4006a22074200370200200041fc006a220b4200370200200041f0006a220242b29a8eb5a3ebd9bbd90037030020002007360260200041f8006a2206200b36020020014188016a1018220820022903001024200828020c200841106a28020047044010000b02402008280200220320082802042204100a220c450440410021020c010b410021022001410036022820014200370320200141206a200c103b20032004200128022022092001280224220520096b100b417f47044002400240200141086a200941016a20052009417f736a104e2202280204450d0020022802002d000041c001490d00200141d8006a20021053200141c8006a20021054200141406b2105200141386a210a0340200128025c200128024c46044020012802602001280250460d030b200141a0016a200141d8006a105520054100360200200a420037030020014200370330200141003a0044024020012802a401044020012802a0012d000041bf014b0d010b10000b200141a0016a1066410247044010000b200141f8006a22024100360200200141f0006a2203420037030020014200370368200141b8016a200141a0016a4100104f200141b8016a200141e8006a1056200a20032903003703002005200228020036020020012001290368370330200141b8016a200141a0016a4101104f200141b8016a1063200141b8016a106421020240024020012802bc01450d002002450d0020012802b8012d000041c001490d010b10000b20014180016a200141b8016a1065200128028401220241024f044010000b4100210420012802800121030340200204402002417f6a210220032d00002104200341016a21030c010b0b2001200441ff017141004722033a00442006200141b8016a200141306a10342204280200450440412410362202200129033037000d200241216a20033a00002002411d6a2005280200360000200241156a200a290300370000200620012802b8012004200210350b200141d8006a10570c000b000b10000b200c21020b2009450d00200120093602240b200828020c22030440200820033602100b024020020d00200028026021020240200028028001450d00200028027821032000200b3602782000410036028001200028027c21042000410036027c2004410036020820032802042204200320041b2104034020042203450d01200220074704402003200229000d37000d2003411d6a2002411d6a280000360000200341156a200241156a290000370000200341216a200241216a2d00003a0000024020032802082204450440410021040c010b2003200428020022054604402004410036020020042802042205450d012005106921040c010b200441003602042005450d002005106921040b2006200141b8016a2003410d6a106a2105200620012802b8012005200310352002102a21020c010b0b0340200328020822030d000b200721020b034020022007460d01412410362203200229000d37000d2003411a6a2002411a6a290000370000200341156a200241156a2900003700002006200141b8016a2003410d6a106a2104200620012802b8012004200310352002102a21020c000b000b2000420037038801200041c8016a4200370200200041c0016a4200370200200041b8016a4200370200200041b0016a4200370300200041a8016a2203428db4cbc493e5b0da33370300200041a0016a420037020020004198016a420037020020004190016a4200370200200141a0016a1018220220032903001024200228020c200241106a28020047044010000b0240200228020022052002280204220a100a2206450440410021040c010b410021042001410036021020014200370308200141086a2006103b2005200a20012802082203200128020c220720036b100b417f47044020014188016a200341016a20072003417f736a104e210420014100360268200120043602302001200141e8006a360234200141b8016a20044100104f2000200141b8016a10503703b0012001200128026841016a360268200141306a200041b8016a105c200141306a200041c4016a105c200621040b2003450d002001200336020c0b200228020c22030440200220033602100b200445044020002000290388013703b001200041b8016a20004190016a106b200041c4016a2000419c016a106b0b200041d0016a106c2103200041e0016a220242aafbfb9c8ca3aea8773703002002200041e8016a106c2204106d45044020042003106e0b200041f8016a106c210320004188026a220242f6bfcb8afdcdceb913370300200220004190026a106c2204106d45044020042003106e0b200141d0016a240020000bf80101077f230041106b22042400200042003702042000200041046a2202360200200141046a2107200128020021010340200120074704402001410d6a21050240027f027f0240024020022000280200460440200221030c010b200210332203410d6a2005102d450d010b20022802004504402004200236020c2002210320020c030b2004200336020c200341046a0c010b20002004410c6a200510340b22032802000d01200428020c0b2108412410362206200529000037000d2006411d6a200541106a280000360000200641156a200541086a290000370000200020082003200610350b2001102a21010c010b0b200441106a240020000bf605010a7f230041d0006b2204240020004188026a20004190026a106f200041e0016a200041e8016a106f200441386a10182203200041a8016a220129030010701016200320012903001024200328020c200341106a28020047044010000b2003280204210520032802002108200410182101200441306a4100360200200441286a4200370300200441206a420037030020044200370318200441186a410010192202200041b0016a220729030010222002200041b8016a2206280200200041bc016a2802001015200041c4016a2209280200200041c8016a28020010154101101921022004280218210a200241046a101b2001200441186a1071220210722001200a20022802046a20022802006b101620014103101c2201200729030010242001200610172001200910170240200128020c200141106a280200460440200141046a2107200128020021060c010b200141046a2107100020012802002106200128020c2001280210460d0010000b2008200520062007280200100c200228020022050440200220053602040b200128020c22020440200120023602100b200328020c22010440200320013602100b200041b0016a107320004188016a1073200441186a10182203200041f0006a220129030010701016200320012903001024200041f8006a2105200328020c200341106a28020047044010000b2003280204210820032802002107200441386a101821012005105f2106200120041071220210722001200620022802046a20022802006b10162001200510600240200128020c200141106a280200460440200141046a2105200128020021060c010b200141046a2105100020012802002106200128020c2001280210460d0010000b2007200820062005280200100c200228020022050440200220053602040b200128020c22020440200120023602100b200328020c22010440200320013602100b200041d0006a200041d8006a1074200041386a200041406b1074200041206a200041286a1074200041086a200041106a1074200441d0006a24000b4601017f230041206b22022400200241086a20002802002000280204280200104f2001200241086a105037030020002802042200200028020041016a360200200241206a24000b4301017f230041206b22022400200241086a20002802002000280204280200104f200241086a2001107520002802042200200028020041016a360200200241206a24000b3b01017f2000420037020020004100360208200128020420012802006b2202044020002002103a20012802002001280204200041046a10760b20000b970202047f027e230041a0036b22022400200241d0026a22034100360200200241c8026a22044200370300200242003703c00220001052410247044010000b200241206a20004101104f200241206a200241c0026a1056200241206a10582105200241e8026a20032802002200360200200241e0026a20042903002206370300200220022903c00222073703d802200241f8026a200637030020024180036a2000360200200220073703f00220024198036a20024180036a280200220036020020024190036a200241f8026a2903002206370300200241106a2006370300200241186a2000360200200220022903f00222063703880320022006370308200241206a200241086a20011100002005105a200241a0036a24000b910302077f037e230041b0016b22012400200141306a4100360200200141286a4200370300200141206a420037030020014200370318027f20002802084504402001410136021841010c010b200041046a2104200141186a41001019210320002802002100037f2000200446047f2003410110191a200128021805200141c8006a2000411d6a2800002202360200200141406b200041156a29000022083703002001200029000d2209370338200041216a310000210a200141e0006a22052002360200200141d8006a22062008370300200120093703502003410010192107200141f8006a20052802002202360200200141f0006a20062903002208370300200141106a2002360200200141086a200837030020012001290350220937036820014188016a200837030020014190016a2002360200200141a0016a2008370300200141a8016a2002360200200120093703002001200937038001200120093703980120072001101a200a1047410110191a2000102a21000c010b0b0b2100200141186a410472101b200141b0016a240020000be60102047f027e230041e0006b2202240020002001280208101c2103200141046a210420012802002101034020012004460440200241e0006a24000520034102101c2105200241106a2001411d6a2800002200360200200241086a200141156a29000022063703002002200129000d2207370300200241206a2006370300200241286a2000360200200241386a2006370300200241406b20003602002002200737031820022007370330200241d8006a2000360200200241d0006a2006370300200220073703482005200241c8006a4114101d200141216a31000010482001102a21010c010b0b0b880101037f41ec08410136020041f0082802002100034020000440034041f40841f4082802002201417f6a2202360200200141014845044041ec084100360200200020024102746a22004184016a280200200041046a28020011030041ec08410136020041f00828020021000c010b0b41f408412036020041f008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000107c20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000107c20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001063200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110772204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b810101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000108001200128020c210003402000450d01200141002001280208220320032000107e22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020be60101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110800120004100200428020c2201200428020822022001107e22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000bc10101057f230041406a22022400200241286a1018220320002903001024200328020c200341106a28020047044010000b02402003280200220020032802042205100a22064504400c010b2002410036022020024200370318200241186a2006103b2000200520022802182200200228021c220520006b100b417f47044020012002200041016a20052000417f736a104e1050370300200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f02402000280204220304400340024020022003410d6a102d044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b920101047f2000200147044020012802042203200128020022026b22042000280208200028020022016b4d0440200041046a21052004200028020420016b22004b04402002200020026a2200200110781a20002003200510760f0b200520022003200110783602000f0b2001044020004100360208200042003702000b200020002004104c103a20022003200041046a10760b0b190020004200370200200041086a41003602002000107920000bba0401077f230041e0006b22022400200241306a1018220520002903001024200528020c200541106a28020047044010000b02402005280200220320052802042206100a2207450440410021070c010b2002410036022820024200370320200241206a2007103b024020032006200228022022002002280224220420006b100b417f460440410021070c010b02400240200241086a200041016a20042000417f736a104e2200280204044020002802002d000041c001490d010b200241c8006a106c1a0c010b200241d8006a200010652000107721030240024002400240200228025822000440200228025c220620034f0d010b41002100200241d0006a41003602002002420037034841002104410021060c010b200241d0006a4100360200200242003703482000200620032003417f461b22046a21062004410a4b0d010b200220044101743a0048200241c8006a41017221030c010b200441106a4170712208103621032002200436024c20022008410172360248200220033602500b03402000200646450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290348370200200141086a200241d0006a280200360200200241c8006a1079200228022021000b2000450d00200220003602240b200528020c22000440200520003602100b200241e0006a240020070b3401017f2000200147044020002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10280b0bd30201067f230041f0006b22022400200241286a10182203200029030010701016200320002903001024200328020c200341106a28020047044010000b2003280204210620032802002107200241106a10182100200241e8006a4100360200200241e0006a4200370300200241d8006a420037030020024200370350200241d0006a200241406b20011021102320022802502105200241d0006a410472101b2000200241d0006a1071220410722000200520042802046a20042802006b1016200020022001102110250240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b2007200620052001280200100c200428020022010440200420013602040b200028020c22040440200020043602100b200328020c22000440200320003602100b200241f0006a24000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001022200128020021022001410472101b200141206a240020020b3000200041003602082000420037020020004101103a200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004103e20002802040520020b20002802006a20032001104b1a2000200028020420016a3602040b2c01017f200028021422010440200041186a20013602000b2000280208220104402000410c6a20013602000b0b8a0201067f230041406a22042400200441286a10182202200029030010701016200220002903001024200228020c200241106a28020047044010000b2002280204210620022802002107200441106a10182100200129030010702105200020041071220310722000200520032802046a20032802006b10162000200129030010240240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b2007200620052001280200100c200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000bcb0101037f230041206b22022400024002402000280204044020002802002d000041c001490d010b20024100360208200242003703000c010b200241186a2000106520022802182103200241106a20001065200228021021042000107721002002410036020820024200370300200020046a20036b2200450d0020022000103a20004101480d002002200228020420032000104b20006a3602040b2001280200044020014100360208200142003702000b2001200228020036020020012002290204370204200241206a24000b2800200120006b220141014e0440200228020020002001104b1a2002200228020020016a3602000b0bff0201037f200028020445044041000f0b2000106341012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b1900200120006b2201044020022000200110490b200120026a0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b3501017f230041106b22004190890436020c41f808200028020c41076a417871220036020041fc0820003602004180093f003602000b100020020440200020012002104b1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000107d200010776a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2701017f230041206b22022400200241086a2000200141141062107c2100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f20011077220220012802044b044010000b200020012001107d2002107f0b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a108201200120002802006a22012002200110030c010b0b0b3601017f200028020820014904402001104a20002802002000280204104b210220002001360208200020023602000b200020013602040b0b7101004180080b6a4f776e657252656d6f766564004f776e657241646465640030783031005468726573686f6c644368616e67656400696e69740065786563757465006164644f776e65720072656d6f76654f776e6572006368616e67655468726573686f6c640067657449734f776e6572"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_EXECUTE = "execute"; - - public static final String FUNC_ADDOWNER = "addOwner"; - - public static final String FUNC_REMOVEOWNER = "removeOwner"; - - public static final String FUNC_CHANGETHRESHOLD = "changeThreshold"; - - public static final String FUNC_GETISOWNER = "getIsOwner"; - - public static final WasmEvent OWNERADDED_EVENT = new WasmEvent("OwnerAdded", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(WasmAddress.class))); - ; - - public static final WasmEvent OWNERREMOVED_EVENT = new WasmEvent("OwnerRemoved", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(Uint64.class))); - ; - - public static final WasmEvent THRESHOLDCHANGED_EVENT = new WasmEvent("ThresholdChanged", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(Uint64.class))); - ; - - public static final WasmEvent EXECUTED_EVENT = new WasmEvent("Executed", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Uint64.class) , new WasmEventParameter(String.class))); - ; - - public static final WasmEvent RECEIVED_EVENT = new WasmEvent("Received", Arrays.asList(new WasmEventParameter(String.class, true)), Arrays.asList(new WasmEventParameter(Uint64.class) , new WasmEventParameter(WasmAddress.class))); - ; - - protected MultiSigWallet(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected MultiSigWallet(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getOwnerAddedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(OWNERADDED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - OwnerAddedEventResponse typedResponse = new OwnerAddedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable ownerAddedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public OwnerAddedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(OWNERADDED_EVENT, log); - OwnerAddedEventResponse typedResponse = new OwnerAddedEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable ownerAddedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(OWNERADDED_EVENT)); - return ownerAddedEventObservable(filter); - } - - public List getOwnerRemovedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(OWNERREMOVED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - OwnerRemovedEventResponse typedResponse = new OwnerRemovedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable ownerRemovedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public OwnerRemovedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(OWNERREMOVED_EVENT, log); - OwnerRemovedEventResponse typedResponse = new OwnerRemovedEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable ownerRemovedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(OWNERREMOVED_EVENT)); - return ownerRemovedEventObservable(filter); - } - - public List getThresholdChangedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(THRESHOLDCHANGED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - ThresholdChangedEventResponse typedResponse = new ThresholdChangedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable thresholdChangedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ThresholdChangedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(THRESHOLDCHANGED_EVENT, log); - ThresholdChangedEventResponse typedResponse = new ThresholdChangedEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable thresholdChangedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(THRESHOLDCHANGED_EVENT)); - return thresholdChangedEventObservable(filter); - } - - public List getExecutedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(EXECUTED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - ExecutedEventResponse typedResponse = new ExecutedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint64) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (String) eventValues.getNonIndexedValues().get(2); - responses.add(typedResponse); - } - return responses; - } - - public Observable executedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ExecutedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(EXECUTED_EVENT, log); - ExecutedEventResponse typedResponse = new ExecutedEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint64) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (String) eventValues.getNonIndexedValues().get(2); - return typedResponse; - } - }); - } - - public Observable executedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(EXECUTED_EVENT)); - return executedEventObservable(filter); - } - - public List getReceivedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(RECEIVED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - ReceivedEventResponse typedResponse = new ReceivedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (WasmAddress) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable receivedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ReceivedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(RECEIVED_EVENT, log); - ReceivedEventResponse typedResponse = new ReceivedEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (WasmAddress) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable receivedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(RECEIVED_EVENT)); - return receivedEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Uint64 _threshold, Set _owners) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_threshold,_owners)); - return deployRemoteCall(MultiSigWallet.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Uint64 _threshold, Set _owners) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_threshold,_owners)); - return deployRemoteCall(MultiSigWallet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint64 _threshold, Set _owners) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_threshold,_owners)); - return deployRemoteCall(MultiSigWallet.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint64 _threshold, Set _owners) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_threshold,_owners)); - return deployRemoteCall(MultiSigWallet.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall execute(WasmAddress _to, Uint64 _value, byte[] _data, byte[] _signatures, Uint64 value, Uint64 gas) { - final WasmFunction function = new WasmFunction(FUNC_EXECUTE, Arrays.asList(_to,_value,_data,_signatures,value,gas), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall execute(WasmAddress _to, Uint64 _value, byte[] _data, byte[] _signatures, Uint64 value, Uint64 gas, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_EXECUTE, Arrays.asList(_to,_value,_data,_signatures,value,gas), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall addOwner(WasmAddress _owner) { - final WasmFunction function = new WasmFunction(FUNC_ADDOWNER, Arrays.asList(_owner), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall addOwner(WasmAddress _owner, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADDOWNER, Arrays.asList(_owner), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall removeOwner(WasmAddress _owner) { - final WasmFunction function = new WasmFunction(FUNC_REMOVEOWNER, Arrays.asList(_owner), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall removeOwner(WasmAddress _owner, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_REMOVEOWNER, Arrays.asList(_owner), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall changeThreshold(Uint64 _newThreshold) { - final WasmFunction function = new WasmFunction(FUNC_CHANGETHRESHOLD, Arrays.asList(_newThreshold), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall changeThreshold(Uint64 _newThreshold, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CHANGETHRESHOLD, Arrays.asList(_newThreshold), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getIsOwner() { - final WasmFunction function = new WasmFunction(FUNC_GETISOWNER, Arrays.asList(), Map.class, - new com.alaya.rlp.wasm.ParameterizedTypeImpl( - new java.lang.reflect.Type[] {WasmAddress.class, Boolean.class}, - Map.class, - Map.class)); - return executeRemoteCall(function, Map.class); - } - - public static MultiSigWallet load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new MultiSigWallet(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static MultiSigWallet load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new MultiSigWallet(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class OwnerAddedEventResponse { - public Log log; - - public String topic; - - public WasmAddress arg1; - } - - public static class OwnerRemovedEventResponse { - public Log log; - - public String topic; - - public Uint64 arg1; - } - - public static class ThresholdChangedEventResponse { - public Log log; - - public String topic; - - public Uint64 arg1; - } - - public static class ExecutedEventResponse { - public Log log; - - public String topic; - - public WasmAddress arg1; - - public Uint64 arg2; - - public String arg3; - } - - public static class ReceivedEventResponse { - public Log log; - - public String topic; - - public Uint64 arg1; - - public WasmAddress arg2; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/NullPtrAndForContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/NullPtrAndForContract.java deleted file mode 100644 index 1d9a9a10d4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/NullPtrAndForContract.java +++ /dev/null @@ -1,99 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class NullPtrAndForContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001641160027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60037f7f7f017f60000060047f7f7f7f017f60047f7f7f7f0060027f7e0060087f7f7f7f7f7f7f7f0060037e7e7f006000017f60027f7e017f60017e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000036564060101000000010503000201010303010105040803040202060105030200100201020000010902000d0607010109000000000100000204010501020700020405030002010e020404010004000200010500000002010005070205030301060a01010408000405017001050505030100020608017f0141c089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003606696e766f6b650025090a010041010b040e0f10120af97f640400106a0b040041010b040041000b0900200041c50810110b1d0020004200370200200041086a4100360200200020012001101810210b9d03010a7f230041306b22022400200010132105200241086a200141186a2200200241186a41a80841ac0810141015200241086a2000200241186a41ae0841b20810141015200241186a41b4081011200241246a220341ba081011200241086a2000200241186a1015200241186a41bc081011200341c1081011200241086a2000200241186a10152001411c6a2106200241086a4101722104200241186a410172210720012802182101200241106a210803402001200646450440200241186a200141106a10162008410036020020024200370308200241086a10172002280220200720022d0018220041017122031b21090240200228021c200041017620031b220041c3081018220a6a2203410a4d0440200220004101743a0008200421030c010b200341106a417071220b101921032002200036020c2002200b410172360208200220033602100b200320092000101a200020036a41003a0000200241086a41c308200a101b20052002280210200420022d0008220041017122031b200228020c200041017620031b101b2001101c21010c010b0b200241306a24000b190020004200370200200041086a41003602002000101720000b13002000200110112000410c6a2002101120000bd90101037f02400240200128020422040440200141046a2105034002402002200441106a2203101f0440200428020022030d010c040b20032002101f450d04200441046a210520042802042203450d04200521040b20042105200321040c000b000b200141046a21040b200421050b200020052802002203047f4100054128101922032002290200370210200341186a200241086a28020036020020021017200341246a200241146a2802003602002003411c6a200229020c3702002002410c6a10172001200420052003102041010b3a0004200020033602000b16002000200110221a2000410c6a2001410c6a10221a0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b0b002000410120001b10260b100020020440200020012002101e1a0b0bb20101037f027f20002d00002203410171220504402000280200417e71417f6a210420002802040c010b410a210420034101760b21030240200420036b20024f04402002450d01027f2005044020002802080c010b200041016a0b220420036a20012002101a200220036a2102024020002d00004101710440200020023602040c010b200020024101743a00000b200220046a41003a00000f0b20002004200220036a20046b20032003410020022001106b0b0b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b4b01037f230041306b2200240020004180084128101e210141002100037f2000412846047f200141306a2400200205200020016a2103200041046a2100200328020020026a21020c010b0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb20101067f02400240200128020420012d00002202410176200241017122031b2205200028020420002d00002202410176200241017122041b2206200520064922071b2202450d002000280208200041016a20041b21002001280208200141016a20031b210103402002450d0120002d0000220320012d00002204460440200141016a2101200041016a21002002417f6a21020c010b0b200320046b22020d010b417f200720062005491b21020b2002411f760baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b20032001280200470440200110232001280208220128020821020b200141013a000c200241003a000c200210240c010b02402004450d0020042d000c0d002004410c6a21030c020b20032001280200460440200110242001280208220128020821020b200141013a000c200241003a000c200210230b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101921032000200236020420002004410172360200200020033602080b200320012002101a200220036a41003a00000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102120000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040bda0402057f017e230041a0036b22002400106a10072201102622021008200041206a200041086a200220011027220341001028200041206a1029024002402000280224450d00200041206a10290240200028022022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028022441014d04401000200028022021020b20022d00010d010c020b200441bf014b0d012000280224200141ff017141ca7e6a22014d04401000200028022021020b200120026a2d0000450d010b2000280224450d0020022d000041c001490d010b10000b20004180036a200041206a102a200028028403220141094f044010000b20002802800321020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d0041d008102b20055104402003102c200041206a102d102e0c020b41d508102b200551044020034101102f0c020b41e108102b200551044020034102102f0c020b41f108102b20055104402003410310300c020b418609102b20055104402003410410300c020b419609102b2005520d002003102c200041206a102d2202101d2103200041e8026a1031210120004198036a410036020020004190036a420037030020004188036a4200370300200042003703800320004180036a2003ad22051032200028028003210320004180036a4104721033200120031034200120051035220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b2002102e0c010b10000b1036200041a0036a24000b9b0101047f230041106b220124002001200036020c2000047f41bc09200041086a2202411076220041bc092802006a220336020041b80941b809280200220420026a41076a417871220236020002400240200341107420024d044041bc09200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101e41086a0541000b2100200141106a240020000b0c00200020012002411c10370bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001107020012003280208200328020c106e36020c200320011070410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410371a200341106a24000f0b20032001107041002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004106e106f2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110382204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001039410147044010000b0b930f010b7f230041d0016b2201240020004200370204200042dcb0b2b4f6849e82553703102000411c6a220a42003702002000200041046a22073602002000200a360218200141306a103122082000290310103a200828020c200841106a28020047044010000b200041186a2103024020082802002204200828020422051009220b450d002001410036022820014200370320200141206a200b103b20042005200128022022092001280224220620096b100a417f47044002400240200141086a200941016a20062009417f736a10272202280204450d0020022802002d000041c001490d00200141f0006a2002103c200141c8006a2002103d200141e4006a210603402001280274200128024c46044020012802782001280250460d030b20014180016a200141f0006a103e200141d8006a1013210420061013210520014180016a103f410247044010000b200141c0016a10132102200141a8016a20014180016a41001028200141a8016a2002104020042002104120014198016a10132102200141a8016a20014180016a41011028200141a8016a20021040200520021041200141a8016a2003200141d8006a1015200141f0006a10420c000b000b10000b200b21020b2009450d00200120093602240b200828020c22040440200820043602100b024020020d002000280200210202402000280220450d00200028021821042000200a36021820004100360220200028021c21052000410036021c2005410036020820042802042205200420051b2105034020052204450d0120022007470440200441106a200241106a104321062004411c6a2002411c6a10431a024020042802082205450440410021050c010b2004200528020022084604402005410036020020052802042208450d012008104421050c010b200541003602042008450d002008104421050b2003200141a8016a200610452106200320012802a8012006200410202002101c21020c010b0b0340200428020822040d000b200721020b034020022007460d0141281019220441106a2205200241106a10162003200141a8016a200510452105200320012802a8012005200410202002101c21020c000b000b41002102200041286a10461047200041a0016a2203428aa4bedd86c3aeee58370300200041a8016a104720014180016a103122072003290300103a200728020c200741106a28020047044010000b0240200728020022032007280204220410092208450d002001410036021020014200370308200141086a2008103b2003200420012802082206200128020c220520066b100a417f470440200141d8006a200641016a20052006417f736a10272205103f410a47044010000b200041a8016a210303402002410a470440200141306a10132104200141a8016a200520021028200141a8016a200410402003200410412003410c6a2103200241016a21020c010b0b200821020b2006450d002001200636020c0b200728020c22030440200720033602100b024020020d00412821020340200241a001460d01200020026a22034180016a200310431a2002410c6a21020c000b000b200042003702a00241002102200041c0026a4100360200200041b8026a22044200370200200041b0026a2203428debc585c3a7f9dbf700370300200041a8026a410036020020014180016a103122062003290300103a200628020c200641106a28020047044010000b200041bc026a2105024020062802002203200628020422071009220a450d002001410036027820014200370370200141f0006a200a103b20032007200128027022092001280274220820096b100a417f47044002400240200141d8006a200941016a20082009417f736a10272202280204450d0020022802002d000041c001490d0020021039210320002802c00220002802b80222076b410c6d20034904402004200141a8016a200320002802bc0220076b410c6d200041c0026a1048220310492003104a0b200141086a2002103c200141c0016a2002103d200041c0026a21080340200128020c20012802c401460440200128021020012802c801460d030b200141a8016a200141086a103e200141a8016a20014198016a101322031040024020002802bc02220220002802c0024904402002200129039801370200200241086a200141a0016a2802003602002003101720052005280200410c6a3602000c010b200141306a2004200220042802006b410c6d220241016a104b200220081048210220012802382207200129039801370200200741086a200141a0016a2802003602002003101720012001280238410c6a3602382004200210492002104a0b200141086a10420c000b000b10000b200a21020b2009450d00200120093602740b200628020c22030440200620033602100b024020020d0020002802a402220720002802a00222036b410c6d220620002802c00220002802b80222026b410c6d4d04402006200528020020026b410c6d22084b0440200320032008410c6c6a22042002104c1a200420072005104d0c020b2004200320072002104c104e0c010b200204402004104f200041003602c002200042003702b8020b200020042006104b2204105022023602b802200020023602bc02200020022004410c6c6a3602c002200320072005104d0b200141d0016a240020000b850b010a7f23004190016b22022400200241d8006a10312206200041b0026a22012903001051103420062001290300103a200628020c200641106a28020047044010000b2006280204210820062802002109200241206a10312107200241d0006a4100360200200241c8006a4200370300200241406b420037030020024200370338024020002802b802200041bc026a280200460440200241386a10520c010b200241386a41001053210320002802bc02210420002802b80221010340200120044604402003410110531a052003200241086a2001102210541a2001410c6a21010c010b0b0b20022802382101200241386a41047210332007200241086a1055220510562007200120052802046a20052802006b1034200720002802bc0220002802b8026b410c6d1057210320002802bc02210420002802b80221010340200120044704402003200241386a2001102210582001410c6a21010c010b0b0240200328020c200341106a280200460440200341046a2101200328020021040c010b200341046a2101100020032802002104200328020c2003280210460d0010000b2009200820042001280200100b200528020022010440200520013602040b200328020c22010440200320013602100b200628020c22010440200620013602100b200041b8026a1059200041a0026a1059200241d8006a10312204200041a0016a22012903001051103420042001290300103a200428020c200441106a28020047044010000b2004280204210720042802002108200241206a10312105200241d0006a4100360200200241c8006a4200370300200241406b420037030020024200370338200241386a41001053210341a80121010340200141a0024704402003200241086a200020016a102210541a2001410c6a21010c010b0b200341011053210120022802382103200141046a10332005200241086a1055220610562005200320062802046a20062802006b10342005410a1057210341a80121010340200141a0024704402003200241386a200020016a102210582001410c6a21010c010b0b0240200328020c200341106a280200460440200341046a2101200328020021050c010b200341046a2101100020032802002105200328020c2003280210460d0010000b2008200720052001280200100b200628020022010440200620013602040b200328020c22010440200320013602100b200428020c22010440200420013602100b200241206a1031220520002903101051103420052000290310103a200528020c200541106a28020047044010000b200528020421092005280200210a200241086a10312108200241d0006a4100360200200241c8006a4200370300200241406b4200370300200242003703380240200041206a280200450440200241386a10520c010b2000411c6a2103200241386a410010532104200241e4006a2106200028021821010340200120034604402004410110531a05200241d8006a200141106a101620044100105320024180016a200241d8006a10221054200241f0006a200610221054410110531a2001101c21010c010b0b0b20022802382101200241386a4104721033200820024180016a1055220710562008200120072802046a20072802006b103420082000280220105721042000411c6a2106200028021821010340200120064704402004410210572203200241386a200141106a102210582003200241d8006a2001411c6a102210582001101c21010c010b0b0240200428020c200441106a280200460440200441046a2101200428020021030c010b200441046a2101100020042802002103200428020c2004280210460d0010000b200a200920032001280200100b200728020022010440200720013602040b200428020c22010440200420013602100b200528020c22010440200520013602100b20024190016a24000bbe0102027f017e23004180036b220224002000102c2002102d2103200220011101002100200241c8026a10312101200241f8026a4100360200200241f0026a4200370300200241e8026a4200370300200242003703e002200241e0026a2000ad2204103220022802e0022100200241e0026a4104721033200120001034200120041035220128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b2003102e20024180036a24000bd30101037f230041a0036b220224002000102c2002102d2104200241c8026a20022001110000200241d8026a1031210120024198036a410036020020024190036a420037030020024188036a4200370300200242003703800320024180036a200241f0026a200241c8026a1022105421032002280280032100200341046a1033200120001034200120024180036a200241c8026a10221058200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b2004102e200241a0036a24000b2900200041003602082000420037020020004100105a200041146a41003602002000420037020c20000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002105b20026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002105c21000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000105d200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001105e200441106a24000b13002000280208200149044020002001105a0b0b2a01017f2000420020011005200028020422026a105f42002001200220002802006a10062000106020000b880101037f41a809410136020041ac092802002100034020000440034041b00941b0092802002201417f6a2202360200200141014845044041a8094100360200200020024102746a22004184016a280200200041046a28020011020041a809410136020041ac0928020021000c010b0b41b009412036020041ac09200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106c20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000106c20024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000102941012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2501017f02402000280204450d0020002802002d000041c001490d002000106921010b20010b09002000200110351a0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001101921060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001101e1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b0a0020002001410110680b0a0020002001410010680b160020002001280204200141086a280200411c10371a0b210002402000280204044020002802002d000041bf014b0d010b10000b200010690ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10131a0c010b200241186a2000102a2000103821030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101921032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1041200241206a24000b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a280200360200200110170bb50102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a2001410020042002106e106f20002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000bde0101047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d00002205410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210670b200120026a41003a000020002d000041017104402000200236020420000f0b200020024101743a000020000f0b20002001200220016b027f2003044020002802040c010b20054101760b22034100200320022004106b0b20000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a101f044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030bc90201037f200041003a0000200041f8006a2202417f6a41003a0000200041003a0002200041003a00012002417d6a41003a00002002417e6a41003a0000200041003a00032002417c6a41003a00002000410020006b41037122016a22024100360200200241f80020016b417c7122016a2203417c6a4100360200024020014109490d002002410036020820024100360204200341786a4100360200200341746a410036020020014119490d002002410036021820024100360214200241003602102002410036020c200341706a41003602002003416c6a4100360200200341686a4100360200200341646a41003602002001200241047141187222016b2103200120026a2101034020034120490d0120014200370300200141186a4200370300200141106a4200370300200141086a4200370300200141206a2101200341606a21030c000b000b20000b2601027f200041f8006a210103402000101321022000410c6a21002002410c6a2001470d000b0b4c01017f2000410036020c200041106a2003360200200104402001105021040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000baa0101037f200028020421022000280200210303402002200346450440200128020441746a2204200241746a2202290200370200200441086a200241086a280200360200200210172001200128020441746a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0b2700034020002001464504402002200010431a2002410c6a21022000410c6a21000c010b0b20020b2e00034020002001464504402002280200200010221a20022002280200410c6a3602002000410c6a21000c010b0b0b0900200020013602040b0b0020002000280200104e0b09002000410c6c10190b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200010322001280200210220014104721033200141206a240020020b3901017f027f200041186a28020022010440200041086a280200200041146a2802002001105c0c010b20000b2201200128020041016a3602000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a22022802002203105c280200210120022003417f6a360200200710614180104f044020072000410c6a280200417c6a105e0b200141384f047f2001105b20016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a2802002001105c0c020b20000c010b0240200710610d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10620c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010192105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1063220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10642102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021065200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a106622013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10642102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021065200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10620c010b20042001410175410120011b200320051064210241802010192106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a106322013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200106421032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031065200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021065052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a106622013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210106421062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061065200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007105d200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002105b20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001105c0c010b20000b2201200128020020036a36020020000b3a01017f20004100360208200042003702002000410110192201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105a20002802040520020b20002802006a20032001101e1a2000200028020420016a3602040b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410190b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001101e1a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a105f41004100200120002802006a10022000106020000b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a105f20042001200220002802006a1004200010600b0e00200028020004402000104f0b0b2f01017f200028020820014904402001102620002802002000280204101e210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b3601017f200028020820014904402001102620002802002000280204101e210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a105f200120002802006a22012002200110020c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a106322023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10642103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031065200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110670b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101921040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110670b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002101e1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0be50101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001107020004100200428020c2201200428020822022001106e22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001070200128020c210003402000450d01200141002001280208220320032000106e22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b3501017f230041106b220041c0890436020c41b409200028020c41076a417871220036020041b809200036020041bc093f003602000bc30101027f027f20002d0000410171044020002802080c010b200041016a0b2109416f2108200141e6ffffff074d0440410b20014101742208200120026a220120012008491b220141106a4170712001410b491b21080b20081019210120040440200120092004101a0b20060440200120046a20072006101a0b200320056b220320046b22070440200120046a20066a200420096a20056a2007101a0b200020013602082000200320066a220436020420002008410172360200200120046a41003a00000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000106d200010386a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2701017f230041206b22022400200241086a2000200141141037106c2100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f20011038220220012802044b044010000b200020012001106d2002106f0b0bab0101004184080ba3010100000002000000030000000400000005000000060000000700000008000000090000006f6e6500310074776f0032007468726565003300666f75720034002c006973206e756c6c70747200696e6974006765745f6e756c6c707472006765745f6e756c6c7074725f6f6e65007365745f6e756c6c7074725f6f7665726c6f6164006765745f666f72656163685f6d6170006765745f666f72656163685f6172726179"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_NULLPTR = "get_nullptr"; - - public static final String FUNC_GET_NULLPTR_ONE = "get_nullptr_one"; - - public static final String FUNC_SET_NULLPTR_OVERLOAD = "set_nullptr_overload"; - - public static final String FUNC_GET_FOREACH_MAP = "get_foreach_map"; - - public static final String FUNC_GET_FOREACH_ARRAY = "get_foreach_array"; - - protected NullPtrAndForContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected NullPtrAndForContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(NullPtrAndForContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(NullPtrAndForContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(NullPtrAndForContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(NullPtrAndForContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall get_nullptr() { - final WasmFunction function = new WasmFunction(FUNC_GET_NULLPTR, Arrays.asList(), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall get_nullptr_one() { - final WasmFunction function = new WasmFunction(FUNC_GET_NULLPTR_ONE, Arrays.asList(), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall set_nullptr_overload() { - final WasmFunction function = new WasmFunction(FUNC_SET_NULLPTR_OVERLOAD, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall get_foreach_map() { - final WasmFunction function = new WasmFunction(FUNC_GET_FOREACH_MAP, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall get_foreach_array() { - final WasmFunction function = new WasmFunction(FUNC_GET_FOREACH_ARRAY, Arrays.asList(), Uint32.class); - return executeRemoteCall(function, Uint32.class); - } - - public static NullPtrAndForContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new NullPtrAndForContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static NullPtrAndForContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new NullPtrAndForContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OOMException.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OOMException.java deleted file mode 100644 index c6dc822057..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OOMException.java +++ /dev/null @@ -1,76 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class OOMException extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001550c60017f0060000060017f017f60027f7f0060027f7f017f60047f7f7f7f006000017f60047f7f7f7f017f60087f7f7f7f7f7f7f7f017f60097f7f7f7f7f7f7f7f7f017f60087f7f7e7f7e7f7f7f017f60017f017e025c0403656e760c706c61746f6e5f70616e6963000103656e760c706c61746f6e5f6465627567000303656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000603656e7610706c61746f6e5f6765745f696e707574000003181701000000020107030400020b030104010205080a0902020405017001040405030100020608017f01419089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300040f5f5f66756e63735f6f6e5f65786974001106696e766f6b6500090909010041010b031505060abf3b17040010130b0300010b5801027f230041206b2201240041002100034020004180304604402001200228020036020020011007200141206a240005418080c00010082202200036020020012000360210200141106a1007200041016a21000c010b0b0b8c19030f7f027e037c230041c0086b220424002004200036020c4180082105200441800836029c082004419f086a210e0340410020036b21060240034020052d00002201450d0120014125470440200341ff074d0440200441106a20036a20013a00000b200341016a21032004200541016a220536029c082006417f6a21060c010b0b2004200541016a220536029c08410021010340024002400240024020052c0000220841556a220241054b0440200841606a220241034b0d0102400240200241016b0e03030301000b2004200541016a220536029c08200141087221010c060b2004200541016a220536029c08200141107221010c050b200241016b0e050002000003010b0240200841506a41ff017141094d04402004419c086a1014210a200428029c0821050c010b4100210a2008412a470d00200028020021022004200541016a220536029c082001410272200120024100481b210120022002411f7522086a200873210a200041046a21000b41002108024020052d0000412e470d002004200541016a220736029c08200141800872210120052d0001220241506a41ff017141094d04402004419c086a10142108200428029c0821050c010b200241ff0171412a470440200721050c010b200028020021022004200541026a220536029c0820024100200241004a1b2108200041046a21000b0240024020052c000041987f6a411f77220241094b0d000240024002400240200241016b0e09020004040403040403010b2004200541016a220736029c0820052d0001220241ec004704402001418002722101200721050c050b2004200541026a220536029c0820014180067221010c030b2004200541016a220736029c0820052d0001220241e8004704402001418001722101200721050c040b2004200541026a220536029c08200141c0017221010c020b2004200541016a220536029c0820014180047221010c010b2004200541016a220536029c0820014180027221010b20052d000021020b0240027f024002400240024002400240024020024118744118752209419e7f6a220741164b044020094125470440200941c600460d07200941d800470d020c080b200341ff074b0d02200441106a20036a41253a00000c020b200741016b0e15040600050000060000000000060200000300060000060b200341ff074b0d00200441106a20036a20023a00000b200341016a21030c060b200441106a2003200028020041004110200841082001412172101621032004200541016a220536029c08200041046a21000c0b0b20002802002202417f6a21060340200641016a22062d00000d000b200620026b2206200820062008491b20062001418008712209410a761b210702402001410271220b0440200321060c010b200441106a20036a210c4100210103400240200120036a2106200120076a220d200a4f0d00200641ff074d04402001200c6a41203a00000b200141016a21010c010b0b200d41016a21070b200041046a2100034002402006210120022d00002203450d00200904402008450d012008417f6a21080b200141016a2106200241016a2102200141ff074b0d01200441106a20016a20033a00000c010b0b200b450440200121030c050b200441106a20016a2102410021060340200120066a2103200620076a200a4f0d05200341ff074d0440200220066a41203a00000b200641016a21060c000b000b410121060240200141027122070440200321020c010b200441106a20036a21084100210103400240200120036a2102200141016a2206200a4f0d00200241ff074d0440200120086a41203a00000b200621010c010b0b200141026a21060b200241ff074d0440200441106a20026a20002802003a00000b200241016a22032007450d021a0340200322012006200a4f0d031a200141016a2103200641016a2106200141ff074b0d00200441106a20016a41203a00000c000b000b200841062001418008711b220841037441a0086a2107200041076a417871220c2b0300211241002102034002402008410a490d002002411f4b0d00200441a0086a20026a41303a0000200741786a21072008417f6a2108200241016a21020c010b0b027f4400000000000000002012a12012201244000000000000000063220b1b22129944000000000000e0416304402012aa0c010b4180808080780b2100027f20122000b7a120072b03002214a2221344000000000000f041632013440000000000000000667104402013ab0c010b41000b2109024020132009b8a1221344000000000000e03f644101734504402014200941016a2209b8654101730d01200041016a2100410021090c010b201344000000000000e03f620d0020094520094101717220096a21090b4100210702402012440000c0ffffffdf41640d00024020080440200220086a41606a210f034002402002412046044041202102200f21080c010b200441a0086a20026a20092009410a6e220741766c6a4130723a0000200241016a21022008417f6a2108200941094b210d20072109200d0d010b0b034002402002411f4b22070d002008450d00200441a0086a20026a41303a0000200241016a21022008417f6a21080c010b0b20070d01200441a0086a20026a412e3a0000200241016a21020c010b20122000b7a1221244000000000000e03f64410173450440200041016a21000c010b20002000201244000000000000e03f61716a21000b03402002411f4d0440200441a0086a20026a20002000410a6d220841766c6a41306a3a0000200241016a2102200041096a210720082100200741124b0d010b0b20014103712108034002402002411f4b0d0020084101470d002002200a4f0d00200441a0086a20026a41303a0000200241016a21020c010b0b20014101712108200141027121000240200a2001410c71410047200b726b20022002200a461b2202411f4b0d000240200b410173450440200441a0086a20026a412d3a00000c010b20014104710440200441a0086a20026a412b3a00000c010b2001410871450d01200441a0086a20026a41203a00000b200241016a21020b024020002008720440200321070c010b200441106a20036a2108410021010340200120036a2107200120026a200a4f0d01200741ff074d0440200120086a41203a00000b200141016a21010c000b000b200620076a2103034020024504402000450d0203402003200a4f0d03200741ff074d0440200441106a20076a41203a00000b200741016a2107200341016a21030c000b000b200741ff074d0440200441106a20076a2002200e6a2d00003a00000b200741016a2107200341016a21032002417f6a21020c000b000b200c41086a21002004200541016a220536029c08200721030c080b41102107024002400240200241ff0171220641d8004622020d00200641f800460d00200641ef00460440410821070c020b200641e200460440410221070c020b2001416f712101410a21070b2001412072200120021b2101200641e400460d01200641e900460d010b200141737121010b2001417e7120012001418008711b2101200641e900474100200641e400471b4504402001418004710440200441106a2003200041076a417871220629030022102010423f8722117c2011852010423f88a72007ad2008200a200110172103200641086a21000c030b2001418002710440200441106a2003200028020022062006411f7522026a2002732006411f7620072008200a200110160c020b200441106a2003027f200141c00071044020002c00000c010b2000280200220641107441107520062001418001711b0b2206411f75220220066a2002732006411f7620072008200a200110160c010b2001418004710440200441106a2003200041076a417871220629030041002007ad2008200a200110172103200641086a21000c020b2001418002710440200441106a20032000280200410020072008200a200110160c010b200441106a2003027f200141c00071044020002d00000c010b2000280200220641ffff037120062001418001711b0b410020072008200a200110160b2103200041046a21000b2004200541016a220536029c080c050b2004200541016a220536029c08200141047221010c020b2004200541016a220536029c08200141027221010c010b2004200541016a220536029c08200141017221010c000b000b0b200441106a200341ff07200341ff07491b6a41003a0000200441106a2103024003402003410371044020032d0000450d02200341016a21030c010b0b2003417c6a21030340200341046a22032802002205417f73200541fffdfb776a7141808182847871450d000b0340200541ff0171450d01200341016a2d00002105200341016a21030c000b000b200441106a2003200441106a6b1001200441c0086a24000b990101047f230041106b220124002001200036020c2000047f418409200041086a220241107622004184092802006a2203360200418009418009280200220420026a41076a417871220236020002400240200341107420024d0440418409200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a101241086a0541000b2100200141106a240020000ba50502087f017e230041406a220524001013100222001008220110030240200541206a20012000411c100a2204280208450440200441146a2802002100200428021021010c010b200541386a2004100b20042005280238200528023c100c36020c200541086a2004100b410021002004027f410020052802082202450d001a4100200528020c2206200428020c2203490d001a200620032003417f461b210020020b2201360210200441146a2000360200200441003602080b200541086a200120004114100a2200100d024002402000280204450d002000100d0240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220341b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200341bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b2000100e2206200028020422024b04401000200028020421020b20002802002107024002400240200204404100210320072c00002200417f4a0d01027f200041ff0171220341bf014d04404100200041ff017141b801490d011a200341c97e6a0c010b4100200041ff017141f801490d001a200341897e6a0b41016a21030c010b4101210320070d00410021000c010b41002100200320066a20024b0d0020022006490d004100210120022003490d01200320076a2101200220036b20062006417f461b22004109490d0110000c010b410021010b0340200004402000417f6a210020013100002008420886842108200141016a21010c010b0b024002402008500d00418908100f20085104402004410210100c020b418e08100f2008520d002004410310100c010b10000b1011200541406b24000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000101920024f0d002003410471044010000c010b200042003702000b02402003411071450d002000101920024d0d0020034104710440100020000f0b200042003702000b20000b7201047f2001100e220220012802044b044010000b2001101a21032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114100a10192100200241206a240020000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000100d41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b920101047f230041106b22022400024002402000280204450d0020002802002d000041c001490d00200241086a2000100b41012104200228020c2100034020000440200241002002280208220320032000100c22056a20034520002005497222031b3602084100200020056b20031b21002004417f6a21040c010b0b2004450d010b10000b20022001110000200241106a24000b880101037f41f008410136020041f4082802002100034020000440034041f80841f8082802002201417f6a2202360200200141014845044041f0084100360200200020024102746a22004184016a280200200041046a28020011000041f008410136020041f40828020021000c010b0b41f808412036020041f408200028020022003602000c010b0b0bf50801077f03400240200020036a2104200120036a210220034104460d002002410371450d00200420022d00003a0000200341016a21030c010b0b410420036b21050240200441037122064504400340200541104f0440200020036a2202200120036a2204290200370200200241086a200441086a290200370200200341106a2103200541706a21050c010b0b027f2005410871450440200120036a2102200020036a0c010b200020036a2204200120036a2203290200370200200341086a2102200441086a0b21032005410471044020032002280200360200200341046a2103200241046a21020b20054102710440200320022f00003b0000200341026a2103200241026a21020b2005410171450d01200320022d00003a000020000f0b024020054120490d002006417f6a220641024b0d00024002400240024002400240200641016b0e020102000b2004200120036a220228020022063a0000200441016a200241016a2f00003b0000200041036a2108410120036b2105034020054111490d03200320086a2202200120036a220441046a2802002207410874200641187672360200200241046a200441086a2802002206410874200741187672360200200241086a2004410c6a28020022074108742006411876723602002002410c6a200441106a2802002206410874200741187672360200200341106a2103200541706a21050c000b000b2004200120036a220228020022063a0000200441016a200241016a2d00003a0000200041026a2108410220036b2105034020054112490d03200320086a2202200120036a220441046a2802002207411074200641107672360200200241046a200441086a2802002206411074200741107672360200200241086a2004410c6a28020022074110742006411076723602002002410c6a200441106a2802002206411074200741107672360200200341106a2103200541706a21050c000b000b2004200120036a28020022063a0000200041016a21082003417f7341046a2105034020054113490d03200320086a2202200120036a220441046a2802002207411874200641087672360200200241046a200441086a2802002206411874200741087672360200200241086a2004410c6a28020022074118742006410876723602002002410c6a200441106a2802002206411874200741087672360200200341106a2103200541706a21050c000b000b200120036a41036a2102200020036a41036a21040c020b200120036a41026a2102200020036a41026a21040c010b200120036a41016a2102200020036a41016a21040b20054110710440200420022d00003a00002004200228000136000120042002290005370005200420022f000d3b000d200420022d000f3a000f200441106a2104200241106a21020b2005410871044020042002290000370000200441086a2104200241086a21020b2005410471044020042002280000360000200441046a2104200241046a21020b20054102710440200420022f00003b0000200441026a2104200241026a21020b2005410171450d00200420022d00003a00000b20000b3501017f230041106b22004190890436020c41fc08200028020c41076a417871220036020041800920003602004184093f003602000b4501037f20002802002101034020012d000041506a41ff017141094b4504402000200141016a220336020020012c00002002410a6c6a41506a2102200321010c010b0b20020b140020022003490440200120026a20003a00000b0ba70101067f230041206b220924000240200245410020072007416f7120021b220a418008711b0d00200a41207141e1007341f6016a210b410021070340200720096a2002200220046e220c20046c6b22084130200b200841187441808080d000481b6a3a0000200741016a21082007411e4b0d01200220044f210d20082107200c2102200d0d000b0b20002001200920082003200420052006200a10182102200941206a240020020bb60102057f017e230041206b2209240020072007416f71200242005222081b210a0240200845044041002108200a418008710d010b200a41207141e1007341f6016a210b410021070340200720096a4130200b20022002200480220d20047e7da7220841187441808080d000481b20086a3a0000200741016a21082007411e4b0d01200220045a210c20082107200d2102200c0d000b0b200020012009200820032004a720052006200a10182107200941206a240020070bec0401037f2008410271210b2003210902400340200b0d010240200920064f0d002009411f4b0d00200220096a41303a0000200941016a21090c010b0b200921030b2008410371410147210a2003210902400340200a0d010240200920074f0d002009411f4b0d00200220096a41303a0000200941016a21090c010b0b200921030b2008410171210a0240024002402008411071044002402008418008710d002003450d002003200647410020032007471b0d002003417e6a2003417f6a220920091b200920054110461b21030b0240200541104604400240200841207122090d002003411f4b0d00200220036a41f8003a0000200341016a21030c020b2009450d012003411f4b0d01200220036a41d8003a0000200341016a21030c010b20054102470d002003411f4b0d00200220036a41e2003a0000200341016a21030b2003411f4b0d01200220036a41303a0000200341016a21030c010b20030d00410021030c010b20072008410c714100472004726b200320032007461b2203411f4b0d010b20040440200220036a412d3a0000200341016a21030c010b20084104710440200220036a412b3a0000200341016a21030c010b2008410871450d00200220036a41203a0000200341016a21030b200121090240200a200b720d002003210a0340200a20074f0d014120200020094180081015200a41016a210a200941016a21090c000b000b2002417f6a210a037f2003047f2003200a6a2c00002000200941800810152003417f6a2103200941016a21090c01050240200b450d00410020016b21030340200320096a20074f0d014120200020094180081015200941016a21090c000b000b20090b0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000101a2000100e6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b0b7102004180080b1a69203d202564090a00696e6974006d656d6f72795f6c696d69740041a6080b4af03f000000000000244000000000000059400000000000408f40000000000088c34000000000006af8400000000080842e4100000000d01263410000000084d797410000000065cdcd41"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_MEMORY_LIMIT = "memory_limit"; - - protected OOMException(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected OOMException(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OOMException.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OOMException.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OOMException.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OOMException.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall memory_limit() { - final WasmFunction function = new WasmFunction(FUNC_MEMORY_LIMIT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall memory_limit(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_MEMORY_LIMIT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static OOMException load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new OOMException(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static OOMException load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new OOMException(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OneInherit.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OneInherit.java deleted file mode 100644 index fe3e95c5e2..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OneInherit.java +++ /dev/null @@ -1,110 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class OneInherit extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f0060017f017f60027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f017f60047f7f7f7f0060027f7e0060037e7e7f006000017f60027f7e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000034c4b0600030307000104030402000102060205040102000e01020101020200020901000c00060702090503050400010300030005030301010000020500000001020005070105040006040202080405017001030305030100020608017f0141f088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003006696e766f6b65001b0908010041010b0214160af25f4b040010530b8a0101047f230041206b2202240002402000411c6a2802002203200041206a220428020047044020032001100f1a2000200028021c41246a36021c0c010b200241086a200041186a2205200320002802186b41246d220041016a101020002004101122002802082001100f1a2000200028020841246a360208200520001012200010130b200241206a24000b25002000200110151a2000410c6a2001410c6a10151a200041186a200141186a10151a20000b2f01017f2001200028020820002802006b41246d2200410174220220022001491b41c7e3f138200041e3f1b81c491b0b4c01017f2000410036020c200041106a2003360200200104402001101721040b2000200436020020002004200241246c6a220236020820002004200141246c6a36020c2000200236020420000b900101027f2000280204210220002802002103034020022003464504402001280204415c6a2002415c6a2202101820012001280204415c6a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001415c6a22013602080c010b0b0b120020002001280218200241246c6a10151a0ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101a21022000200136020420002004410172360200200020023602080b2002200320011054200120026a41003a000020000b150020002001280218200241246c6a410c6a10151a0b0900200041246c101a0b620020002001290200370200200041086a200141086a28020036020020011019200041146a200141146a2802003602002000200129020c37020c2001410c6a1019200041206a200141206a28020036020020002001290218370218200141186a10190b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b0b002000410120001b101c0ba40402057f017e23004190016b22002400105310072201101c22031008200041e8006a200020032001101d22024100101e200041e8006a101f02400240200041e8006a1020450d00200028026c450d0020002802682d000041c001490d010b10000b200041406b200041e8006a10212000280244220141094f044010000b200028024021030340200104402001417f6a210120033100002005420886842105200341016a21030c010b0b024002402005500d004180081022200551044020021023200041e8006a102410250c020b41850810222005510440200041186a1026200041186a1027210120021028410247044010000b200041e8006a20024101101e200041e8006a20011029200041e8006a10242103200041e8006a200041406b2001100f100e200310250c020b4194081022200551044020021023200041e8006a1024210320004184016a28020021022000280280012104200041186a102a2101200041d8006a4100360200200041d0006a4200370300200041c8006a420037030020004200370340200041406b200220046b41246d41ff0171ad2205102b20002802402102200041406b410472102c20012002102d20012005102e220128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310250c020b41a8081022200551044020024101102f0c020b41bc0810222005520d0020024102102f0c010b10000b103020004190016a24000b9b0101047f230041106b220124002001200036020c2000047f41e408200041086a2202411076220041e4082802006a220336020041e00841e008280200220420026a41076a417871220236020002400240200341107420024d044041e408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103e41086a0541000b2100200141106a240020000b0c00200020012002411c10310bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104320012003280208200328020c103536020c200320011043410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410311a200341106a24000f0b20032001104341002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103510572001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000101f200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110322204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001028410147044010000b0be906010c7f230041b0016b2204240020004200370218200042c5cb94caeffff0b2a67f3703102000410036020820004200370200200041206a4100360200200441206a102a220720002903101033200728020c200741106a28020047044010000b200041186a21052000411c6a21090240200728020022022007280204220810092206450d002006101a21030340200120036a41003a00002006200141016a2201470d000b2002200820032001100a417f460440410021010c010b02400240200441086a200341016a200120036a2003417f736a101d2203280204450d0020032802002d000041c001490d002003102821012000280220200028021822026b41246d20014904402005200441386a2001200028021c20026b41246d200041206a101122011012200110130b20044188016a2003410110342101200441f8006a2003410010342108200041206a210b20012802042103034020082802042003464100200128020822022008280208461b0d02200441e0006a20032002411c1031200441386a1027220310290240200028021c220220002802204904402002200310182009200928020041246a3602000c010b20044198016a2005200220052802006b41246d220241016a10102002200b1011210220042802a00120031018200420042802a00141246a3602a001200520021012200210130b20012001280204220320012802086a410020031b220336020420012802002202044020012002360208200320021035210a2001027f2001280204220c4504404100210241000c010b41002102410020012802082203200a490d001a2003200a200a417f461b2102200c0b2203ad2002ad42208684370204200141002001280200220a20026b22022002200a4b1b3602000c0105200141003602080c010b000b000b10000b200621010b200728020c22030440200720033602100b024020010d0020002802042206200028020022036b41246d22022000280220200028021822016b41246d4d04402002200928020020016b41246d22084b044020032003200841246c6a2202200110361a20022006200910370c020b2005200320062001103610380c010b200104402005103920004100360220200042003702180b20002005200210102202101722013602182000200136021c20002001200241246c6a36022020032006200910370b200441b0016a240020000be206010d7f230041b0016b22012400200141186a102a2106200141a8016a22024100360200200141a0016a2205420037030020014198016a22044200370300200142003703900120014190016a2000290310102b200128029001210720014190016a410472102c20062007102d200620002903101033200628020c200641106a28020047044010000b200628020421092006280200210a2001102a21032002410036020020054200370300200442003703002001420037039001027f20002802182000411c6a280200460440200141013602900141010c010b20014190016a4100103a2107200028021c200028021822026b2105037f2005047f20074100103a22042002103b2004200141d0006a2002410c6a1015103c20014180016a200241186a1015103c4101103a1a2005415c6a2105200241246a21020c010520074101103a1a2001280290010b0b0b210420014190016a410472102c4101101a220241fe013a0000200328020c200341106a28020047044010000b200241016a21072003280204220541016a220820032802084b047f20032008103d20032802040520050b20032802006a20024101103e1a2003200328020441016a3602042003200420026b20076a102d2003200028021c20002802186b41246d103f210b200028021c200028021822026b2105200141d0006a410472210c20014190016a410472210d034020050440200b4103103f210420014100360268200142003703602001420037035820014200370350200141d0006a2002103b200141d0006a200141406b2002410c6a22071015103c200141306a200241186a22081015103c1a20042001280250102d20044101103f2104200141003602a801200142003703a0012001420037039801200142003703900120014190016a20014180016a20021015103c1a2004200128029001102d2004200141f0006a2002101510402104200d102c200420014190016a20071015104020014180016a2008101510401a200c102c2005415c6a2105200241246a21020c010b0b0240200328020c2003280210460440200328020021020c010b100020032802002102200328020c2003280210460d0010000b200a200920022003280204100b200328020c22020440200320023602100b200628020c22020440200620023602100b200041186a104120001041200141b0016a24000bc50201027f200041003a0000200041246a2202417f6a41003a0000200041003a0002200041003a00012002417d6a41003a00002002417e6a41003a0000200041003a00032002417c6a41003a00002000410020006b41037122016a220241003602002002412420016b417c7122016a2200417c6a4100360200024020014109490d002002410036020820024100360204200041786a4100360200200041746a410036020020014119490d002002410036021820024100360214200241003602102002410036020c200041706a41003602002000416c6a4100360200200041686a4100360200200041646a41003602002001200241047141187222016b2100200120026a2101034020004120490d0120014200370300200141186a4200370300200141106a4200370300200141086a4200370300200141206a2101200041606a21000c000b000b0b1600200010422000410c6a1042200041186a104220000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001043200128020c210003402000450d01200141002001280208220320032000103522046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b5e01017f230041306b22022400200220004100101e200241186a20024100101e200241186a20011044200241186a20004101101e200241186a2001410c6a1044200241186a20004102101e200241186a200141186a1044200241306a24000b2900200041003602082000420037020020004100103d200041146a41003602002000420037020c20000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002104520026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002104621000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001047200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011048200441106a24000b13002000280208200149044020002001103d0b0b2a01017f2000420020011005200028020422026a104942002001200220002802006a10062000104a20000bcb0201037f23004180016b2202240020001028410247044010000b200220004101101e2002101f0240024020021020450d002002280204450d0020022802002d000041c001490d010b10000b200241e0006a200210212002280264220041024f044010000b200228026021030340200004402000417f6a210020032d00002104200341016a21030c010b0b200210242103200241286a2002200441ff01712001110400200241386a102a2100200241f8006a4100360200200241f0006a4200370300200241e8006a420037030020024200370360200241e0006a200241d0006a200241286a1015103c210420022802602101200441046a102c20002001102d2000200241e0006a200241286a10151040220028020c200041106a28020047044010000b20002802002000280204100c200028020c22040440200020043602100b2003102520024180016a24000b880101037f41d008410136020041d4082802002100034020000440034041d80841d8082802002201417f6a2202360200200141014845044041d0084100360200200020024102746a22004184016a280200200041046a28020011010041d008410136020041d40828020021000c010b0b41d808412036020041d408200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105520024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105520024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101f41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b090020002001102e1a0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104320004100200428020c2201200428020822022001103522032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a200020014114103110552100200241206a240020000b3e00034020002001464504402002200010522002410c6a2000410c6a1052200241186a200041186a1052200241246a2102200041246a21000c010b0b20020b2e000340200020014645044020022802002000100f1a2002200228020041246a360200200041246a21000c010b0b0b0900200020013602040b0b002000200028020010380bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031046280200210120022003417f6a3602002007104b4180104f044020072000410c6a280200417c6a10480b200141384f047f2001104520016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110460c020b20000c010b02402007104b0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a104c0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020101a2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a104d220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a104e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104f200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a105022013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a104e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104f200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a104c0c010b20042001410175410120011b20032005104e2102418020101a2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104d22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104e21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003104f200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002104f052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a105022013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104e21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006104f200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071047200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b2701017f230041106b2202240020004100103a200220011015103c4101103a1a200241106a24000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104520026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110460c010b20000b2201200128020020036a36020020000b2f01017f200028020820014904402001101c20002802002000280204103e210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374101a0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001103e1a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a104941004100200120002802006a10022000104a20000b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a104920042001200220002802006a10042000104a20000b0e0020002802000440200010390b0b170020004200370200200041086a4100360200200010190b2101017f20011032220220012802044b044010000b2000200120011056200210570bf30201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10420c010b200241186a200010212000103221030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101a21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1019200241206a24000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b3601017f200028020820014904402001101c20002802002000280204103e210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1049200120002802006a22012002200110020c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104d22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a104e2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003104f200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110510b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101a21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110510b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103e1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210510b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b2003101a2201200420021054200020023602042000200341017236020020002001360208200120026a41003a00000b0b3501017f230041106b220041f0880436020c41dc08200028020c41076a417871220036020041e008200036020041e4083f003602000b100020020440200020012002103e1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001056200010326a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b5601004180080b4f696e6974006164645f6d795f6d657373616765006765745f6d795f6d6573736167655f73697a65006765745f6d795f6d6573736167655f68656164006765745f6d795f6d6573736167655f626f6479"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ADD_MY_MESSAGE = "add_my_message"; - - public static final String FUNC_GET_MY_MESSAGE_SIZE = "get_my_message_size"; - - public static final String FUNC_GET_MY_MESSAGE_HEAD = "get_my_message_head"; - - public static final String FUNC_GET_MY_MESSAGE_BODY = "get_my_message_body"; - - protected OneInherit(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected OneInherit(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OneInherit.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OneInherit.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OneInherit.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OneInherit.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall add_my_message(My_message one_message) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MY_MESSAGE, Arrays.asList(one_message), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_my_message(My_message one_message, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MY_MESSAGE, Arrays.asList(one_message), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_my_message_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_MY_MESSAGE_SIZE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall get_my_message_head(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_MY_MESSAGE_HEAD, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall get_my_message_body(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_MY_MESSAGE_BODY, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public static OneInherit load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new OneInherit(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static OneInherit load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new OneInherit(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Message { - public String head; - } - - public static class My_message { - public Message baseClass; - - public String body; - - public String end; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OneInheritWithMultiDataType.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OneInheritWithMultiDataType.java deleted file mode 100644 index 1077aa563b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OneInheritWithMultiDataType.java +++ /dev/null @@ -1,130 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class OneInheritWithMultiDataType extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001591060027f7f0060017f0060017f017f60027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f017f60047f7f7f7f0060027f7e0060027f7e017f60017f017e60037e7e7f006000017f60017e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e00000352510600030307000104030402000102060205040b0b01020101020200020a01000a000003030e09060701020005030504000103000300050309030101000002050000020001020005070105040006040202080405017001030305030100020608017f01419089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003306696e766f6b65001b0908010041010b0214160a866651040010590b8a0101047f230041206b2202240002402000411c6a2802002203200041206a220428020047044020032001100f1a2000200028021c41306a36021c0c010b200241086a200041186a2205200320002802186b41306d220041016a101020002004101122002802082001100f1a2000200028020841306a360208200520001012200010130b200241206a24000b3f002000200110151a200041146a200141146a2802003602002000200129020c37020c200041186a200141186a10151a200041246a200141246a10151a20000b2f01017f2001200028020820002802006b41306d2200410174220220022001491b41d5aad52a200041aad5aa15491b0b4c01017f2000410036020c200041106a2003360200200104402001101721040b2000200436020020002004200241306c6a220236020820002004200141306c6a36020c2000200236020420000b900101027f200028020421022000280200210303402002200346450440200128020441506a200241506a220210182001200128020441506a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141506a22013602080c010b0b0b120020002001280218200241306c6a10151a0ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101a21022000200136020420002004410172360200200020023602080b200220032001105a200120026a41003a000020000b150020002001280218200241306c6a41186a10151a0b0900200041306c101a0b7c0020002001290200370200200041086a200141086a28020036020020011019200041146a200141146a2802003602002000200129020c37020c20002001290218370218200041206a200141206a280200360200200141186a10192000412c6a2001412c6a28020036020020002001290224370224200141246a10190b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b0b002000410120001b101c0b850602067f017e230041b0016b22002400105910072201101c22021008200041f8006a200041086a20022001101d22014100101e02400240200041f8006a101f2206500d004180081020200651044020011021200041f8006a102210230c020b41850810202006510440200041c8006a1024200041c8006a1025210220011026410247044010000b200041f8006a20014101101e200041f8006a20021027200041206a10222101200041206a200041f8006a2002100f100e200110230c020b4194081020200651044020011021200041f8006a1022210220004194016a28020021032000280290012104200041206a10282101200041e0006a4100360200200041d8006a4200370300200041d0006a420037030020004200370348200041c8006a200320046b41306d41ff0171ad22061029210320002802482104200341046a102a20012004102b20012006102c220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210230c020b41a8081020200651044020014101102d0c020b41bc0810202006510440200041003a00a8012001200041a8016a102e200041f8006a1022210320002802900120002d00a80141306c6a28020c2101200041206a10282102200041e0006a4100360200200041d8006a4200370300200041d0006a420037030020004200370348200041c8006a2001102f210420002802482105200441046a102a20022005102b200220011030220128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310230c020b41cf0810202006510440200041003a00202001200041206a102e200041f8006a1022210220002802900120002d002041306c6a2903102106200041c8006a1028220120061031102b200120061032200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210230c020b41e40810202006520d0020014102102d0c010b10000b1033200041b0016a24000b9b0101047f230041106b220124002001200036020c2000047f418c09200041086a22024110762200418c092802006a2203360200418809418809280200220420026a41076a417871220236020002400240200341107420024d0440418c09200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104104241086a0541000b2100200141106a240020000b0c00200020012002411c10340bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104820012003280208200328020c103936020c200320011048410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410341a200341106a24000f0b20032001104841002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041039105d2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b22012400200010350240024020001036450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001037200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001026410147044010000b0be606010c7f230041b0016b2204240020004200370218200042c5cb94caeffff0b2a67f3703102000410036020820004200370200200041206a4100360200200441186a1028220720002903101032200728020c200741106a28020047044010000b200041186a21052000411c6a21090240200728020022022007280204220810092206450d002006101a21030340200120036a41003a00002006200141016a2201470d000b2002200820032001100a417f460440410021010c010b024002402004200341016a200120036a2003417f736a101d2203280204450d0020032802002d000041c001490d002003102621012000280220200028021822026b41306d20014904402005200441306a2001200028021c20026b41306d200041206a101122011012200110130b20044188016a2003410110382101200441f8006a2003410010382108200041206a210b20012802042103034020082802042003464100200128020822022008280208461b0d02200441e0006a20032002411c1034200441306a1025220310270240200028021c220220002802204904402002200310182009200928020041306a3602000c010b20044198016a2005200220052802006b41306d220241016a10102002200b1011210220042802a00120031018200420042802a00141306a3602a001200520021012200210130b20012001280204220320012802086a410020031b220336020420012802002202044020012002360208200320021039210a2001027f2001280204220c4504404100210241000c010b41002102410020012802082203200a490d001a2003200a200a417f461b2102200c0b2203ad2002ad42208684370204200141002001280200220a20026b22022002200a4b1b3602000c0105200141003602080c010b000b000b10000b200621010b200728020c22030440200720033602100b024020010d0020002802042206200028020022036b41306d22022000280220200028021822016b41306d4d04402002200928020020016b41306d22084b044020032003200841306c6a22022001103a1a200220062009103b0c020b2005200320062001103a103c0c010b200104402005103d20004100360220200042003702180b20002005200210102202101722013602182000200136021c20002001200241306c6a360220200320062009103b0b200441b0016a240020000bbd06010d7f230041b0016b22012400200141186a1028220620002903101031102b200620002903101032200628020c200641106a28020047044010000b200628020421092006280200210a200110282103200141a8016a4100360200200141a0016a420037030020014198016a42003703002001420037039001027f20002802182000411c6a280200460440200141013602900141010c010b20014190016a4100103e2107200028021c200028021822026b2105037f2005047f20074100103e22042002103f2004200141d0006a200241186a1015104020014180016a200241246a101510404101103e1a200541506a2105200241306a21020c010520074101103e1a2001280290010b0b0b210420014190016a410472102a4101101a220241fe013a0000200328020c200341106a28020047044010000b200241016a21072003280204220541016a220820032802084b047f20032008104120032802040520050b20032802006a2002410110421a2003200328020441016a3602042003200420026b20076a102b2003200028021c20002802186b41306d1043210b200028021c200028021822026b2105200141d0006a410472210c20014190016a410472210d034020050440200b41031043210420014100360268200142003703602001420037035820014200370350200141d0006a2002103f200141d0006a200141406b200241186a220710151040200141306a200241246a2208101510401a20042001280250102b2004410310432104200141003602a801200142003703a0012001420037039801200142003703900120014190016a20014180016a200210151040200228020c102f200229031010442004200128029001102b2004200141f0006a200210151045200228020c1030220420022903101032200d102a200420014190016a20071015104520014180016a2008101510451a200c102a200541506a2105200241306a21020c010b0b0240200328020c2003280210460440200328020021020c010b100020032802002102200328020c2003280210460d0010000b200a200920022003280204100b200328020c22020440200320023602100b200628020c22020440200620023602100b200041186a104620001046200141b0016a24000bc50201027f200041003a0000200041306a2202417f6a41003a0000200041003a0002200041003a00012002417d6a41003a00002002417e6a41003a0000200041003a00032002417c6a41003a00002000410020006b41037122016a220241003602002002413020016b417c7122016a2200417c6a4100360200024020014109490d002002410036020820024100360204200041786a4100360200200041746a410036020020014119490d002002410036021820024100360214200241003602102002410036020c200041706a41003602002000416c6a4100360200200041686a4100360200200041646a41003602002001200241047141187222016b2100200120026a2101034020004120490d0120014200370300200141186a4200370300200141106a4200370300200141086a4200370300200141206a2101200041606a21000c000b000b0b160020001047200041186a1047200041246a104720000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001048200128020c210003402000450d01200141002001280208220320032000103922046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b890201047f230041406a22022400200241086a20004100101e200241206a200241086a4100101e200241206a20011049200241206a200241086a4101101e200241206a103502400240200241206a1036450d002002280224450d0020022802202d000041c001490d010b10000b200241386a200241206a1037200228023c220341054f044010000b200228023821050340200304402003417f6a210320052d00002004410874722104200541016a21050c010b0b2001200436020c200241206a200241086a4102101e2001200241206a101f370310200241206a20004101101e200241206a200141186a1049200241206a20004102101e200241206a200141246a1049200241406b24000b29002000410036020820004200370200200041001041200041146a41003602002000420037020c20000b8b0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002104a20026a0520020b41016a21030b027f200041186a28020022020440200041086a280200200041146a2802002002104b0c010b20000b2202200228020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000104c200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001104d200441106a24000b1300200028020820014904402000200110410b0b2a01017f2000420020011005200028020422026a104f42002001200220002802006a10062000105020000be50101037f23004190016b22022400200241003a00302000200241306a102e200241086a10222104200241386a200241086a20022d00302001110400200241c8006a1028210120024188016a410036020020024180016a4200370300200241f8006a420037030020024200370370200241f0006a200241e0006a200241386a10151040210320022802702100200341046a102a20012000102b2001200241f0006a200241386a10151045220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b2004102320024190016a24000b960101037f230041206b2202240020001026410247044010000b200220004101101e200210350240024020021036450d002002280204450d0020022802002d000041c001490d010b10000b200241186a20021037200228021c220041024f044010000b200228021821030340200004402000417f6a210020032d00002104200341016a21030c010b0b200120043a0000200241206a24000b090020002001ad10290b090020002001ad102c0b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001044200128020021022001410472102a200141206a240020020b090020002001102c1a0b880101037f41f808410136020041fc08280200210003402000044003404180094180092802002201417f6a2202360200200141014845044041f8084100360200200020024102746a22004184016a280200200041046a28020011010041f808410136020041fc0828020021000c010b0b418009412036020041fc08200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105b20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105b20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001035200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001104e2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104820004100200428020c2201200428020822022001103922032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a2000200141141034105b2100200241206a240020000b7901047f200120006b2106410021012000210303402001200646450440200120026a2204200020016a22051058200441146a200341146a2802003602002004410c6a200329020c370200200441186a200541186a1058200441246a200541246a1058200141306a2101200341306a21030c010b0b200120026a0b2e000340200020014645044020022802002000100f1a2002200228020041306a360200200041306a21000c010b0b0b0900200020013602040b0b0020002000280200103c0bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a22022802002203104b280200210120022003417f6a360200200710514180104f044020072000410c6a280200417c6a104d0b200141384f047f2001104a20016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a2802002001104b0c020b20000c010b0240200710510d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10520c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020101a2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1053220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10542102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021055200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a105622013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10542102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021055200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10520c010b20042001410175410120011b2003200510542102418020101a2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a105322013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200105421032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031055200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021055052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a105622013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210105421062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061055200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007104c200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b3901017f230041106b2202240020004100103e2002200110151040200128020c102f22002001290310104420004101103e1a200241106a24000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104a20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001104b0c010b20000b2201200128020020036a36020020000b2f01017f200028020820014904402001101c200028020020002802041042210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374101a0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110421a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a104f41004100200120002802006a10022000105020000b09002000200110291a0b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a104f20042001200220002802006a10042000105020000b0e00200028020004402000103d0b0b170020004200370200200041086a4100360200200010190b2101017f2001104e220220012802044b044010000b200020012001105c2002105d0bf30201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10470c010b200241186a200010372000104e21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101a21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1019200241206a24000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0bff0201037f200028020445044041000f0b2000103541012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3601017f200028020820014904402001101c200028020020002802041042210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a104f200120002802006a22012002200110020c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a105322023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10542103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031055200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110570b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101a21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110570b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210421a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210570b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b2003101a220120042002105a200020023602042000200341017236020020002001360208200120026a41003a00000b0b3501017f230041106b22004190890436020c418409200028020c41076a41787122003602004188092000360200418c093f003602000b10002002044020002001200210421a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000105c2000104e6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b7e01004180080b77696e6974006164645f6d795f6d657373616765006765745f6d795f6d6573736167655f73697a65006765745f6d795f6d6573736167655f68656164006765745f6d795f6d6573736167655f616765006765745f6d795f6d6573736167655f6d6f6e6579006765745f6d795f6d6573736167655f626f6479"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ADD_MY_MESSAGE = "add_my_message"; - - public static final String FUNC_GET_MY_MESSAGE_SIZE = "get_my_message_size"; - - public static final String FUNC_GET_MY_MESSAGE_HEAD = "get_my_message_head"; - - public static final String FUNC_GET_MY_MESSAGE_AGE = "get_my_message_age"; - - public static final String FUNC_GET_MY_MESSAGE_MONEY = "get_my_message_money"; - - public static final String FUNC_GET_MY_MESSAGE_BODY = "get_my_message_body"; - - protected OneInheritWithMultiDataType(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected OneInheritWithMultiDataType(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OneInheritWithMultiDataType.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OneInheritWithMultiDataType.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OneInheritWithMultiDataType.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OneInheritWithMultiDataType.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall add_my_message(My_message one_message) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MY_MESSAGE, Arrays.asList(one_message), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_my_message(My_message one_message, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_MY_MESSAGE, Arrays.asList(one_message), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_my_message_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_MY_MESSAGE_SIZE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall get_my_message_head(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_MY_MESSAGE_HEAD, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall get_my_message_age(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_MY_MESSAGE_AGE, Arrays.asList(index), Uint32.class); - return executeRemoteCall(function, Uint32.class); - } - - public RemoteCall get_my_message_money(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_MY_MESSAGE_MONEY, Arrays.asList(index), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall get_my_message_body(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_MY_MESSAGE_BODY, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public static OneInheritWithMultiDataType load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new OneInheritWithMultiDataType(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static OneInheritWithMultiDataType load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new OneInheritWithMultiDataType(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Message { - public String head; - - public Uint32 age; - - public Uint64 money; - } - - public static class My_message { - public Message baseClass; - - public String body; - - public String end; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OriginFunction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OriginFunction.java deleted file mode 100644 index 6867e66698..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OriginFunction.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class OriginFunction extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000013d0b60027f7f0060017f0060017f017f60000060037f7f7f0060027f7f017f60047f7f7f7f006000017f60037f7f7f017f60047f7f7f7f017f60017f017e02c7010903656e760c706c61746f6e5f70616e6963000303656e760d706c61746f6e5f6f726967696e000103656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000403656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000703656e7610706c61746f6e5f6765745f696e707574000103656e760d706c61746f6e5f72657475726e0000031f1e0301000402080006040005000104030209000501020a01000500030302020405017001010105030100020608017f0141e088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300090f5f5f66756e63735f6f6e5f65786974002306696e766f6b6500170aaf371e040010240bbc0d01097f23004190016b220124002001410036022820014200370320200141206a4114100b20012802201001200141186a4100360200200141106a420037030020014200370308034020024114470440200141086a20026a41003a0000200241016a21020c010b0b2001280224200128022022046b21034100210203400240200241134b0d0020022003460d00200141086a20026a200220046a2d00003a0000200241016a21020c010b0b41002103200141386a4100360200200142003703300240034020034180086a2202410371044020034103460d02200341016a21030c010b0b200341fc076a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b200141306a41800820024180086b100c4100210220014100360268200142003703604114100d200141086a4114100e2105410021044100210303402004411446044002402002044020012003410520026b74411f713a008001200141e0006a20014180016a100f0b410021022001410036027820014200370370200141f0006a200128023420012d0030220341017620034101711b410174410172100b200141306a410172210503402002200128023420012d00302203410176200341017122031b22044f0d01200128027020026a2001280238200520031b20026a2d000022034105763a00002001280270200128023420012d0030220441017620044101711b6a20026a41016a2003411f713a0000200241016a21020c000b000b05200420056a2d0000200341087441801e71722103200241086a21020340200241054e0440200120032002417b6a220276411f713a008001200141e0006a20014180016a100f0c010b0b200441016a21040c010b0b200128027020046a41003a000020014180016a200141f0006a200128026020012802641010200128027022020440200120023602740b20014180016a2001280284012001280280016b41066a100b20012802840120012802800122046b21034101210203402003044020042d000041002002411d764101716b41b3c5d1d0027141002002411c764101716b41dde788ea037141002002411b764101716b41fab384f5017141002002411a764101716b41ed9cc2b20271410020024119764101716b41b2afa9db0371200241057441e0ffffff037173737373737321022003417f6a2103200441016a21040c010b0b410021032001410036025820014200370350200141d0006a4106100b200241017321044119210203402002417b470440200128025020036a2004200276411f713a00002002417b6a2102200341016a21030c010b0b2001280280012202044020012002360284010b20014100360248200142003703400240200128026420012802606b2203450d0020012003100d2202360240200120023602442001200220036a3602482001280264200128026022046b22034101480d00200220042003100e1a2001200128024420036a3602440b20014180016a200141406b200128025020012802541010200128024022020440200120023602440b20004200370200200041086a41003602004100210203402002410c470440200020026a4100360200200241046a21020c010b0b2001280238200520012d0030220241017122031b210402402001280234200241017620031b220241016a410a4d0440200020024101743a0000200041016a21030c010b200241116a4170712205100d21032000200236020420002005410172360200200020033602080b2003200420021011200220036a41003a00002000413110120240200028020420002d00002205410176200541017122071b22032003200128028401220220012802800122046b6a2206200320064b1b220641106a417071417f6a410a2006410a4b1b220620002802002209417e71417f6a410a20071b2208460d00027f2006410a4604402009200520071b2107200041016a21054100210820002802080c010b4100200620084d200641016a100d22051b0d0120002d0000220741017104404101210820002802080c010b41012108200041016a0b2109200520092000280204200741fe017141017620074101711b41016a10112008044020002005360208200020033602042000200641016a4101723602000c010b200020034101743a00000b20042103034020022004470440200020032d00004184086a2c00001012200341016a21032002417f6a21020c010b0b2004044020012004360284010b200128025022020440200120023602540b200128026022020440200120023602640b200128022022020440200120023602240b20014190016a24000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b2000200110132106200241186a200041086a3602002002410036021441002101200604402006100d21010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1014200241086a10150c010b200520014d0d002000200120046a3602040b200241206a24000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204100d21032000200236020420002004410172360200200020033602080b2003200120021011200220036a41003a00000b0b002000410120001b10180bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a10132105200241186a200041086a3602004100210320024100360214200504402005100d21030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a1014200241086a10150b200241206a24000bc60301057f230041206b22042400200128020421050240200320026b22064101480d002006200128020820056b4c0440034020022003460d02200520022d00003a00002001200128020441016a2205360204200241016a21020c000b000b2001200520066a200128020022066b10132108200441186a200141086a36020020044100360214200520066b2106200804402008100d21070b200420073602082004200620076a22063602102004200720086a3602142004200636020c200441086a410472210703402002200346450440200620022d00003a00002004200428021041016a2206360210200241016a21020c010b0b200128020020052007101602402001280204220320056b220241004c0440200428021021020c010b2004200428021020052002100e20026a2202360210200128020421030b20012002360204200128020021022001200428020c3602002001280208210520012004280214360208200420033602102004200236020c2004200536021420042002360208200441086a1015200128020421050b20002005360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000b100020020440200020012002100e1a0b0bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b2003100d220220062005101120002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b6701017f20002802002000280204200141046a1016200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b270020022002280200200120006b22016b2202360200200141014e0440200220002001100e1a0b0bdd0802087f017e230041e0006b220124001024100622001018220210070240200141086a20022000411c10192204280208450440200441146a2802002100200428021021020c010b200141d0006a2004101a200420012802502001280254101b36020c200141386a2004101a410021002004027f410020012802382203450d001a4100200128023c2206200428020c2205490d001a200620052005417f461b210020030b2202360210200441146a2000360200200441003602080b200141386a20022000411410192200101c024002402000280204450d002000101c0240200028020022032c0000220241004e044020020d010c020b200241807f460d00200241ff0171220541b7014d0440200028020441014d04401000200028020021030b20032d00010d010c020b200541bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021030b200220036a2d0000450d010b2000280204450d0020032d000041c001490d010b10000b2000101d2206200028020422034b04401000200028020421030b20002802002107024002400240200304404100210520072c00002200417f4a0d01027f200041ff0171220541bf014d04404100200041ff017141b801490d011a200541c97e6a0c010b4100200041ff017141f801490d001a200541897e6a0b41016a21050c010b4101210520070d00410021000c010b41002100200520066a20034b0d0020032006490d004100210220032005490d01200520076a2102200320056b20062006417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002008420886842108200241016a21020c010b0b02400240024002402008500d0041a508101e20085104402004101f0c040b41aa08101e2008520d002004101f200141286a100a2001410036024020014200370338200141386a41001020200141cc006a410036020020014200370244410121020240200141d0006a200141286a1021220428020420012d00502200410176200041017122031b220041014d0440200041016b0d040c010b20004138490d02200041016a210203402000450d04200241016a2102200041087621000c000b000b2004280208200441016a20031b2c0000417f4c0d010c020b10000c020b200041016a21020b20012802402002490440200141386a200210200b200141386a200141d0006a200141286a10212200280208200041016a20012d0050220241017122041b22032000280204200241017620041b22001004200128023c22026a1022200320002002200128023822066a10050340024020012802482202200128024422034622050d00200241786a220028020022044504401000200028020021040b20002004417f6a220436020020040d0020012000360248200141386a2002417c6a2802002200200128023c20006b220210026a10222000200128023822066a22002002200010030c010b0b200545044010000b2006200128023c10082003450d00200120033602480b1023200141e0006a24000b9b0101047f230041106b220124002001200036020c2000047f41d008200041086a2202411076220041d0082802006a220336020041cc0841cc08280200220420026a41076a417871220236020002400240200341107420024d044041d008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104100e41086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000102520024f0d002003410471044010000c010b200042003702000b02402003411071450d002000102520024d0d0020034104710440100020000f0b200042003702000b20000b7201047f2001101d220220012802044b044010000b2001102621032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114101910252100200241206a240020000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101c41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000101a41012103200128020c2100034020000440200141002001280208220220022000101b22046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10000b200141106a24000b2f01017f200028020820014904402001101820002802002000280204100e210220002001360208200020023602000b0b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204100c20000b3601017f200028020820014904402001101820002802002000280204100e210220002001360208200020023602000b200020013602040b880101037f41bc08410136020041c0082802002100034020000440034041c40841c4082802002201417f6a2202360200200141014845044041bc084100360200200020024102746a22004184016a280200200041046a28020011010041bc08410136020041c00828020021000c010b0b41c408412036020041c008200028020022003602000c010b0b0b3501017f230041106b220041e0880436020c41c808200028020c41076a417871220036020041cc08200036020041d0083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010262000101d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b0b4201004180080b3b6174780071707a7279397838676632747664773073336a6e35346b686365366d7561376c00696e6974006765745f706c61746f6e5f6f726967696e"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_PLATON_ORIGIN = "get_platon_origin"; - - protected OriginFunction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected OriginFunction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OriginFunction.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OriginFunction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OriginFunction.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OriginFunction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall get_platon_origin() { - final WasmFunction function = new WasmFunction(FUNC_GET_PLATON_ORIGIN, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static OriginFunction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new OriginFunction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static OriginFunction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new OriginFunction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OverrideContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OverrideContract.java deleted file mode 100644 index a7d0e67a70..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/OverrideContract.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class OverrideContract extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000014f0e60017f017f60000060027f7f0060017f0060037f7f7f0060017f017e60047f7f7f7f0060037e7e7f006000017f60027f7f017f60037f7f7f017f60047f7f7f7f017f60027f7e017f60027e7e017f02b1010803656e760c706c61746f6e5f70616e6963000103656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000703656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000803656e7610706c61746f6e5f6765745f696e707574000303656e760d706c61746f6e5f72657475726e0002031716010c01000b04050500020201030002090a00010000060405017001020205030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300080f5f5f66756e63735f6f6e5f65786974001306696e766f6b65000a0907010041010b01190ab71f160400101a0b2d002001427f7c2201420156044041000f0b2001a741016b0440200020002802002802001100000f0b4190ce000b9b0402077f027e230041406a22002400101a10052201100b22021006200041286a200020022001411c100c22014100100d02400240200041286a100e2207500d00418008100f2007510440200110104101460d020c010b418508100f2007520d0020011010410247044010000b41012102200041286a20014101100d200041286a100e2107200042818080801037021c2000419808360218200041186a20071009210341002101200041003602304200210720004200370328200041286a410010112000413c6a41003602002000420037023420034180014f04402003ad2108034020072008845045044020074238862008420888842108200141016a2101200742088821070c010b0b024020014138490d002001210203402002450d01200141016a2101200241087621020c000b000b200141016a21020b20002802302002490440200041286a200210110b200041286a42002003ad22071003200028022c22016a1012420020072001200028022822046a10040340024020002802382202200028023422054622060d00200241786a220128020022034504401000200128020021030b20012003417f6a220336020020030d0020002001360238200041286a2002417c6a2802002201200028022c20016b220210016a10122001200028022822046a22012002200110020c010b0b200645044010000b2004200028022c10072005450d01200020053602380c010b10000b1013200041406b24000b9b0101047f230041106b220124002001200036020c2000047f41b008200041086a2202411076220041b0082802006a220336020041ac0841ac08280200220420026a41076a417871220236020002400240200341107420024d044041b008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101841086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000101b20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000101b20024d0d0020034104710440100020000f0b200042003702000b20000bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001101620012003280208200328020c101736020c200320011016410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114100c1a200341106a24000f0b20032001101641002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041017101d2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000bad0302057f017e20001014024002402000280204450d00200010140240200028020022012c0000220241004e044020020d010c020b200241807f460d00200241ff0171220341b7014d0440200028020441014d04401000200028020021010b20012d00010d010c020b200341bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021010b200120026a2d0000450d010b2000280204450d0020012d000041c001490d010b10000b200010152204200028020422014b04401000200028020421010b20002802002105024002400240200104404100210320052c00002200417f4a0d01027f200041ff0171220341bf014d04404100200041ff017141b801490d011a200341c97e6a0c010b4100200041ff017141f801490d001a200341897e6a0b41016a21030c010b4101210320050d00410021000c010b41002100200320046a20014b0d0020012004490d004100210220012003490d01200320056a2102200120036b20042004417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002006420886842106200241016a21020c010b0b20060b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001016200128020c210003402000450d01200141002001280208220320032000101722046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b2f01017f200028020820014904402001100b200028020020002802041018210220002001360208200020023602000b0b3601017f200028020820014904402001100b200028020020002802041018210220002001360208200020023602000b200020013602040b880101037f419c08410136020041a0082802002100034020000440034041a40841a4082802002201417f6a22023602002001410148450440419c084100360200200020024102746a22004184016a280200200041046a280200110300419c08410136020041a00828020021000c010b0b41a408412036020041a008200028020022003602000c010b0b0b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101441012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2101017f20011015220220012802044b044010000b200020012001101c2002101d0b2701017f230041206b22022400200241086a200020014114100c101b2100200241206a240020000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b050041e4000b3501017f230041106b220041c0880436020c41a808200028020c41076a417871220036020041ac08200036020041b0083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000101c200010156a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b1a02004180080b0c696e69740067657441726561004198080b0101"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETAREA = "getArea"; - - protected OverrideContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected OverrideContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OverrideContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OverrideContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OverrideContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(OverrideContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall getArea(Uint64 input) { - final WasmFunction function = new WasmFunction(FUNC_GETAREA, Arrays.asList(input), Uint32.class); - return executeRemoteCall(function, Uint32.class); - } - - public static OverrideContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new OverrideContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static OverrideContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new OverrideContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/PagingQuery.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/PagingQuery.java deleted file mode 100644 index 6c8a594cd0..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/PagingQuery.java +++ /dev/null @@ -1,91 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class PagingQuery extends WasmContract { - private static String BINARY_0 = "0x0061736d010000000190011460027f7f0060047f7f7f7f0060017f017f60017f0060037f7f7f017f60027f7f017f60037f7f7f0060000060047f7f7f7f017f60017f017e60087f7f7f7f7f7f7f7f0060047f7f7e7e0060027f7e0060037e7e7f006000017f600a7f7f7f7f7f7f7f7f7f7f017f600b7f7f7f7f7f7f7f7f7f7f7f017f600a7f7f7f7f7e7f7e7f7f7f017f60017e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000703656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000603656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000603656e760d726c705f753132385f73697a65001303656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000103656e760d706c61746f6e5f72657475726e0000035352070005050800030b05050300040002050002020604060207040609090302030202000212000c0000030007080300040504060003000004000303000202040000020004080304060101020f1110070a0202010405017001030305030100020608017f0141d089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003706696e766f6b6500240908010041010b0254550af48801520400105a0b8a0101047f230041206b2202240002402000411c6a2802002203200041206a220428020047044020032001100f1a2000200028021c410c6a36021c0c010b200241086a200041186a2205200320002802186b410c6d220041016a101020002004101122002802082001100f1a20002000280208410c6a360208200520001012200010130b200241206a24000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102220000b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0b4c01017f2000410036020c200041106a2003360200200104402001102321040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000baa0101037f200028020421022000280200210303402002200346450440200128020441746a2204200241746a2202290200370200200441086a200241086a280200360200200210172001200128020441746a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0be607020d7f027e230041406a220424002001411c6a28020020012802186b410c6d220aac2212200380211102402002500440200041800810151a0c010b2011a7200320117e2012526a2207ac2002540440200041800810151a0c010b200441206a418108101541830810164185081016418f081016210b200441386a410036020020044200370330200441306a1017200441306a2004280230417e71417f6a410a20042d00304101711b1018200428023420042d0030220641017620064101711b2105200a417f6a210c2002427f7c20037e2111200220037ea7417f6a2108200441306a41017221090340024020042007360200200441306a027f2004280238200920064101711b200541016a20041019220641004e0440200620054d0d0220060c010b20054101744101720b2205101820042d003021060c010b0b200441306a20061018200441186a220d200441386a280200360200200420042903303703102008200c2008200a481b210c2003a72002a7417f6a6c410c6c2109200441306a1017200b200441106a101a200b41920810164183081016419408101641990810162108200441106a410172210e200441306a410172210f2011a72107024003402007200c4a04400240027f20042d00202205410171044020082008280204417f6a2205360204200828020820056a0c010b20042005410176417f6a22054101743a0020200520086a41016a0b41003a00002008419d081016220528020420042d0020220641017620064101711b41016a101b200528020420042d0020220641017620064101711b41016a101c22012005280208200841016a20042d00204101711b220773410371044020012105200721060c010b2001210a034020074103710440200a20072d000022053a00002005450d05200a41016a210a200741016a21070c010b0b4100210903402009200a6a2105200720096a2206280200220b417f73200b41fffdfb776a71418081828478710d012005200b360200200941046a21090c000b000b05200441306a4180081015200128021820096a101d200d410036020020044200370310200441106a10172004280238200f20042d0030220541017122061b210a02402004280234200541017620061b2205419208101e220b6a2206410a4d0440200420054101743a0010200e21060c010b200641106a4170712210101f21062004200536021420042010410172360210200420063602180b2006200a20051020200520066a41003a00002008200441106a419208200b1021101a2009410c6a2109200741016a21070c010b0b0340200520062d000022073a00002007450d01200541016a2105200641016a21060c000b000b2000200110151a0b200441406b24000b1f0020004200370200200041086a4100360200200020012001101e102220000b0c00200020012001101e10210b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0be50201047f0240027f20002d000022024101712203044020002802040c010b20024101760b22042001490440200120046b2204450d01027f2003044020002802002202417e71417f6a210320002802040c010b410a210320024101760b2101200320016b2004490440027f2002410171044020002802080c010b200041016a0b2105416f2102200341e6ffffff074d0440410b20034101742202200120046a220320032002491b220241106a4170712002410b491b21020b2002101f21032001044020032005200110200b200020033602082000200241017222023602000b027f2002410171044020002802080c010b200041016a0b220220016a2004101c1a200120046a2101024020002d00004101710440200020013602040c010b200020014101743a00000b200120026a41003a00000f0b20030440200028020820016a41003a0000200020013602040f0b200020016a41016a41003a0000200020014101743a00000b0b851703107f027e037c230041306b220a2400200a200236020841b0092105200a41b00936020c4101410220001b210b200a410f6a21110340410020076b21060240034020052d00002203450d01200341254704402003411874411875200020072001200b110100200a200541016a220536020c2006417f6a2106200741016a21070c010b0b200a200541016a220536020c410021030340024002400240024020052c0000220941556a220441054b0440200941606a220441034b0d0102400240200441016b0e03030301000b200a200541016a220536020c200341087221030c060b200a200541016a220536020c200341107221030c050b200441016b0e050002000003010b0240200941506a41ff017141094d0440200a410c6a1056210d200a28020c21050c010b4100210d2009412a470d0020022802002104200a200541016a220536020c2003410272200320044100481b210320042004411f7522096a200973210d200241046a21020b41002109024020052d0000412e470d00200a200541016a220836020c200341800872210320052d0001220441506a41ff017141094d0440200a410c6a10562109200a28020c21050c010b200441ff0171412a470440200821050c010b20022802002104200a200541026a220536020c20044100200441004a1b2109200241046a21020b0240024020052c000041987f6a411f77220441094b0d000240024002400240200441016b0e09020004040403040403010b200a200541016a220836020c20052d0001220441ec004704402003418002722103200821050c050b200a200541026a220536020c20034180067221030c030b200a200541016a220836020c20052d0001220441e8004704402003418001722103200821050c040b200a200541026a220536020c200341c0017221030c020b200a200541016a220536020c20034180047221030c010b200a200541016a220536020c20034180027221030b20052d000021040b0240024002400240024002400240024002402004411874411875220c419e7f6a220841164b0440200c4125470440200c41c600460d07200c41d800470d020c080b4125200020072001200b1101000c020b200841016b0e15040600050000060000000000060200000300060000060b200c200020072001200b1101000b200a200541016a220536020c200741016a21070c0c0b200b20002007200120022802004100411020094108200341217210572107200a200541016a220536020c200241046a21020c0b0b20022802002204417f6a21060340200641016a22062d00000d000b200620046b2206200920062009491b2006200341800871220c410a761b210802402003410271220e0440200721030c010b410021060340200620076a2103200620086a220f200d4904404120200020032001200b110100200641016a21060c010b0b200f41016a21080b200241046a21020340024020042d00002207450d00200c04402009450d012009417f6a21090b2007411874411875200020032001200b110100200341016a2103200441016a21040c010b0b200e450440200321070c050b410021060340200320066a2107200620086a200d4f0d054120200020072001200b110100200641016a21060c000b000b410121060240200341027122090440200721040c010b410121030340200320076a417f6a21042003200d490440200341016a21034120200020042001200b1101000c010b0b200341016a21060b20022c0000200020042001200b110100200441016a21072009450d0203402006200d4f0d034120200020072001200b110100200741016a2107200641016a21060c000b000b200941062003418008711b220941037441e0086a2108200241076a417871220e2b0300211541002104034002402009410a490d002004411f4b0d00200a41106a20046a41303a0000200841786a21082009417f6a2109200441016a21040c010b0b027f4400000000000000002015a1201520154400000000000000006322101b22159944000000000000e0416304402015aa0c010b4180808080780b2102027f20152002b7a120082b03002217a2221644000000000000f041632016440000000000000000667104402016ab0c010b41000b210c02402016200cb8a1221644000000000000e03f644101734504402017200c41016a220cb8654101730d01200241016a21024100210c0c010b201644000000000000e03f620d00200c45200c41017172200c6a210c0b4100210802402015440000c0ffffffdf41640d00024020090440200420096a41606a2112034002402004412046044041202104201221090c010b200a41106a20046a200c200c410a6e220841766c6a4130723a0000200441016a21042009417f6a2109200c41094b210f2008210c200f0d010b0b034002402004411f4b22080d002009450d00200a41106a20046a41303a0000200441016a21042009417f6a21090c010b0b20080d01200a41106a20046a412e3a0000200441016a21040c010b20152002b7a1221544000000000000e03f64410173450440200241016a21020c010b20022002201544000000000000e03f61716a21020b03402004411f4d0440200a41106a20046a20022002410a6d220941766c6a41306a3a0000200441016a2104200241096a210820092102200841124b0d010b0b20034103712109034002402004411f4b0d0020094101470d002004200d4f0d00200a41106a20046a41303a0000200441016a21040c010b0b20034101712108200341027121090240200d2003410c714100472010726b20042004200d461b2204411f4b0d0002402010410173450440200a41106a20046a412d3a00000c010b20034104710440200a41106a20046a412b3a00000c010b2003410871450d01200a41106a20046a41203a00000b200441016a21040b024020082009720440200721080c010b410021030340200320076a2108200320046a200d4f0d014120200020082001200b110100200341016a21030c000b000b200620086a2107034020040440200420116a2c0000200020082001200b110100200741016a21072004417f6a2104200841016a21080c010b0b2009450d0003402007200d4f0d014120200020082001200b110100200741016a2107200841016a21080c000b000b200e41086a2102200a200541016a220536020c200821070c080b41102108024002400240200441ff0171220641d8004622040d00200641f800460d00200641ef00460440410821080c020b200641e200460440410221080c020b2003416f712103410a21080b2003412072200320041b2103200641e400460d01200641e900460d010b200341737121030b2003417e7120032003418008711b2103200641e900474100200641e400471b4504402003418004710440200b200020072001200241076a417871220629030022132013423f8722147c2014852013423f88a72008ad2009200d200310582107200641086a21020c030b2003418002710440200b200020072001200228020022062006411f7522046a2004732006411f7620082009200d2003105721070c020b200b200020072001027f200341c00071044020022c00000c010b2002280200220641107441107520062003418001711b0b2206411f75220420066a2004732006411f7620082009200d2003105721070c010b2003418004710440200b200020072001200241076a417871220629030041002008ad2009200d200310582107200641086a21020c020b2003418002710440200b2000200720012002280200410020082009200d2003105721070c010b200b200020072001027f200341c00071044020022d00000c010b2002280200220641ffff037120062003418001711b0b410020082009200d2003105721070b200241046a21020b200a200541016a220536020c0c050b200a200541016a220536020c200341047221030c020b200a200541016a220536020c200341027221030c010b200a200541016a220536020c200341017221030c000b000b0b4100200020072001417f6a20072001491b2001200b110100200a41306a240020070b2d01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10211a0b9b0101047f230041106b220124002001200036020c2000047f41c809200041086a2202411076220041c8092802006a220336020041c40941c409280200220420026a41076a417871220236020002400240200341107420024d044041c809200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104104341086a0541000b2100200141106a240020000be10201027f02402001450d00200041003a0000200020016a2203417f6a41003a000020014103490d00200041003a0002200041003a00012003417d6a41003a00002003417e6a41003a000020014107490d00200041003a00032003417c6a41003a000020014109490d002000410020006b41037122026a220341003602002003200120026b417c7122026a2201417c6a410036020020024109490d002003410036020820034100360204200141786a4100360200200141746a410036020020024119490d002003410036021820034100360214200341003602102003410036020c200141706a41003602002001416c6a4100360200200141686a4100360200200141646a41003602002002200341047141187222026b2101200220036a2102034020014120490d0120024200370300200241186a4200370300200241106a4200370300200241086a4200370300200241206a2102200141606a21010c000b000b20000bd80101047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d00002205410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210530b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b20002001200220016b027f2003044020002802040c010b20054101760b22034100200320022004105b0b0b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b0b002000410120001b101b0b10002002044020002001200210431a0b0bb60101037f027f20002d00002203410171220504402000280200417e71417f6a210420002802040c010b410a210420034101760b21030240200420036b20024f04402002450d01027f2005044020002802080c010b200041016a0b220420036a200120021020200220036a2102024020002d00004101710440200020023602040c010b200020024101743a00000b200220046a41003a000020000f0b20002004200220036a20046b20032003410020022001105b0b20000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101f21032000200236020420002004410172360200200020033602080b2003200120021020200220036a41003a00000b09002000410c6c101f0be30402057f017e230041b0016b22002400105a10072201101b22021008200041206a200041086a20022001102522014100102602400240200041206a10272205500d0041a0081028200551044020011029200041206a102a102b0c020b41a50810282005510440200041e8006a102c21022001102d410247044010000b200041206a200141011026200041206a2002102e200041206a102a2101200041206a20004190016a2002100f100e2001102b0c020b41b7081028200551044020011029200041206a102a21022000413c6a28020021032000280238210420004190016a102f2201200320046b410c6dad220510301031200120051032200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b2002102b0c020b41c50810282005520d002000420037035020004200370348200041d0006a21022001102d410347044010000b200041013602900120002001360220200020004190016a360224200041206a200041c8006a1033200041206a20021033200041206a102a2102200041d8006a200041206a200029034820002903501014200041e8006a102f2101200041a8016a4100360200200041a0016a420037030020004198016a4200370300200042003703900120004190016a20004180016a200041d8006a100f1034200028029001210320004190016a4104721035200120031031200120004190016a200041d8006a100f1036200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b2002102b0c010b10000b1037200041b0016a24000b0c00200020012002411c10380bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104720012003280208200328020c103c36020c200320011047410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410381a200341106a24000f0b20032001104741002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103c105e2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b2203240020001039024002402000280204450d00200010390240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a2000103a200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000102d410147044010000b0b9707010c7f23004190016b2204240020004200370218200042c8c4fcbdf2c6ca8de8003703102000410036020820004200370200200041206a4100360200200441186a102f220820002903101032200828020c200841106a28020047044010000b200041186a21052000411c6a210a0240200828020022032008280204220910092206450d002006101f21020340200120026a41003a00002006200141016a2201470d000b2003200920022001100a417f460440410021010c010b024002402004200241016a200120026a2002417f736a10252202280204450d0020022802002d000041c001490d002002102d21012000280220200028021822036b410c6d20014904402005200441406b2001200028021c20036b410c6d200041206a101122011012200110130b200441e8006a20024101103b2101200441d8006a20024100103b2109200041206a210b20012802042102034020092802042002464100200128020822032009280208461b0d02200441406b20022003411c1038200441306a102c2203102e0240200028021c2202200028022049044020022004290330370200200241086a200441386a28020036020020031017200a200a280200410c6a3602000c010b200441f8006a2005200220052802006b410c6d220241016a10102002200b1011210220042802800122072004290330370200200741086a200441386a280200360200200310172004200428028001410c6a36028001200520021012200210130b20012001280204220220012802086a410020021b22023602042001280200220304402001200336020820022003103c21072001027f2001280204220c4504404100210341000c010b410021034100200128020822022007490d001a200220072007417f461b2103200c0b2202ad2003ad42208684370204200141002001280200220720036b2203200320074b1b3602000c0105200141003602080c010b000b000b10000b200621010b200828020c22020440200820023602100b024020010d0020002802042206200028020022026b410c6d22032000280220200028021822016b410c6d4d04402003200a28020020016b410c6d22094b0440200220022009410c6c6a22032001103d1a20032006200a103e0c020b2005200220062001103d103f0c010b200104402005104020004100360220200042003702180b20002005200310102203102322013602182000200136021c200020012003410c6c6a36022020022006200a103e0b20044190016a240020000ba506010b7f230041e0006b22032400200341186a102f2208200029031010301031200820002903101032200828020c200841106a28020047044010000b2008280204210a2008280200210b2003102f2101200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330027f20002802182000411c6a2802004604402003410136023041010c010b200341306a41001041200028021c210420002802182102037f2002200446047f200341306a41011041200328023005200341306a200341d0006a2002100f10342002410c6a21020c010b0b0b2106200341306a41047210354101101f220241fe013a0000200128020c200141106a28020047044010000b200241016a21052001280204220441016a220720012802084b047f20012007104220012802040520040b20012802006a2002410110431a2001200128020441016a3602042001200620026b20056a10310240200028021c20002802186b220204402002410c6d21022001280204210420012802102205200141146a280200220649044020052002ad2004ad422086843702002001200128021041086a3602100c020b027f41002005200128020c22076b410375220941016a2205200620076b2206410275220720072005491b41ffffffff01200641037541ffffffff00491b2207450d001a2007410374101f0b2105200520094103746a22062002ad2004ad4220868437020020062001280210200128020c22096b22026b2104200520074103746a2105200641086a2106200241014e044020042009200210431a0b20012005360214200120063602102001200436020c0c010b200141001001200128020422026a104441004100200220012802006a1002200110450b200028021c2104200028021821020340200220044704402001200341306a2002100f10362002410c6a21020c010b0b0240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b200b200a20022001280204100b200128020c22020440200120023602100b200828020c22020440200820023602100b200041186a104620001046200341e0006a24000b190020004200370200200041086a41003602002000101720000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001047200128020c210003402000450d01200141002001280208220320032000103c22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a102c1a0c010b200241186a2000103a2000104821030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101f21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1017200241206a24000b29002000410036020820004200370200200041001042200041146a41003602002000420037020c20000b990102037f017e230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703004101210320004280015a0440034020002004845045044020044238862000420888842100200241016a2102200442088821040c010b0b200241384f047f2002104920026a0520020b41016a21030b2001200336020020014104721035200141206a240020030b1300200028020820014904402000200110420b0b2801017f2000420020011005200028020422026a104442002001200220002802006a1006200010450b4601017f230041206b22022400200241086a2000280200200028020428020010262001200241086a102737030020002802042200200028020041016a360200200241206a24000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104920026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001104a21000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000104b200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001104c200441106a24000b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a104420042001200220002802006a1004200010450b880101037f41b409410136020041b8092802002100034020000440034041bc0941bc092802002201417f6a2202360200200141014845044041b4094100360200200020024102746a22004184016a280200200041046a28020011030041b409410136020041b80928020021000c010b0b41bc09412036020041b809200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105c20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105c20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110482204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104720004100200428020c2201200428020822022001103c22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a2000200141141038105c2100200241206a240020000b26000340200020014645044020022000101d2002410c6a21022000410c6a21000c010b0b20020b2e000340200020014645044020022802002000100f1a20022002280200410c6a3602002000410c6a21000c010b0b0b0900200020013602040b0b0020002000280200103f0bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203104a280200210120022003417f6a3602002007104d4180104f044020072000410c6a280200417c6a104c0b200141384f047f2001104920016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002104a21000c010b02402007104d0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a104e0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020101f2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a104f220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10502102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021051200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a105222013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10502102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021051200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a104e0c010b20042001410175410120011b2003200510502102418020101f2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104f22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200105021032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031051200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021051052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a105222013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210105021062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061051200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007104b200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b2f01017f200028020820014904402001101b200028020020002802041043210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3601017f200028020820014904402001101b200028020020002802041043210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1044200120002802006a22012002200110020c010b0b0b0e0020002802000440200010400b0b2101017f20011048220220012802044b044010000b200020012001105d2002105e0bff0201037f200028020445044041000f0b2000103941012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104f22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10502103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031051200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110530b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101f21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110530b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210431a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b140020022003490440200120026a20003a00000b0b0300010b4501037f20002802002101034020012d000041506a41ff017141094b4504402000200141016a220336020020012c00002002410a6c6a41506a2102200321010c010b0b20020bad0101067f230041206b220b240020092009416f7120041b210c02402004450440200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a2004200420066e220e20066c6b220a4130200d200a41187441808080d000481b6a3a0000200941016a210a2009411e4b0d01200420064f210f200a2109200e2104200f0d000b0b2000200120022003200b200a2005200620072008200c10592104200b41206a240020040bba0102057f017e230041206b220b240020092009416f712004420052220a1b210c0240200a4504404100210a200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a4130200d20042004200680220f20067e7da7220a41187441808080d000481b200a6a3a0000200941016a210a2009411e4b0d01200420065a210e200a2109200f2104200e0d000b0b2000200120022003200b200a20052006a720072008200c10592109200b41206a240020090bf20401037f200a410271210d2005210b02400340200d0d010240200b20084f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410371410147210c2005210b02400340200c0d010240200b20094f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410171210c024002400240200a41107104400240200a418008710d002005450d002005200847410020052009471b0d002005417e6a2005417f6a220b200b1b200b20074110461b21050b0240200741104604400240200a412071220b0d002005411f4b0d00200420056a41f8003a0000200541016a21050c020b200b450d012005411f4b0d01200420056a41d8003a0000200541016a21050c010b20074102470d002005411f4b0d00200420056a41e2003a0000200541016a21050b2005411f4b0d01200420056a41303a0000200541016a21050c010b20050d00410021050c010b2009200a410c714100472006726b200520052009461b2205411f4b0d010b20060440200420056a412d3a0000200541016a21050c010b200a4104710440200420056a412b3a0000200541016a21050c010b200a410871450d00200420056a41203a0000200541016a21050b2002210b0240200c200d720d002005210c0340200c20094f0d0141202001200b20032000110100200c41016a210c200b41016a210b0c000b000b2004417f6a210c037f2005047f2005200c6a2c00002001200b200320001101002005417f6a2105200b41016a210b0c01050240200d450d00410020026b210503402005200b6a20094f0d0141202001200b20032000110100200b41016a210b0c000b000b200b0b0b0b3501017f230041106b220041d0890436020c41c009200028020c41076a417871220036020041c409200036020041c8093f003602000bc30101027f027f20002d0000410171044020002802080c010b200041016a0b2109416f2108200141e6ffffff074d0440410b20014101742208200120026a220120012008491b220141106a4170712001410b491b21080b2008101f21012004044020012009200410200b20060440200120046a2007200610200b200320056b220320046b22070440200120046a20066a200420096a20056a200710200b200020013602082000200320066a220436020420002008410172360200200120046a41003a00000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000105d200010486a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0bab0102004181080b527b00220050616765546f74616c00223a002c004461746100223a5b005d7d00696e697400696e73657274566563746f7256616c756500676574566563746f7253697a6500676574506167696e6751756572790041e6080b4cf03f000000000000244000000000000059400000000000408f40000000000088c34000000000006af8400000000080842e4100000000d01263410000000084d797410000000065cdcd412564"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_INSERTVECTORVALUE = "insertVectorValue"; - - public static final String FUNC_GETVECTORSIZE = "getVectorSize"; - - public static final String FUNC_GETPAGINGQUERY = "getPagingQuery"; - - protected PagingQuery(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected PagingQuery(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(PagingQuery.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(PagingQuery.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(PagingQuery.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(PagingQuery.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall insertVectorValue(String my_value) { - final WasmFunction function = new WasmFunction(FUNC_INSERTVECTORVALUE, Arrays.asList(my_value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall insertVectorValue(String my_value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_INSERTVECTORVALUE, Arrays.asList(my_value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getVectorSize() { - final WasmFunction function = new WasmFunction(FUNC_GETVECTORSIZE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall getPagingQuery(Uint64 CurrentPage, Uint64 PageMaxSize) { - final WasmFunction function = new WasmFunction(FUNC_GETPAGINGQUERY, Arrays.asList(CurrentPage,PageMaxSize), String.class); - return executeRemoteCall(function, String.class); - } - - public static PagingQuery load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new PagingQuery(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static PagingQuery load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new PagingQuery(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/QuickSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/QuickSort.java deleted file mode 100644 index 850663af66..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/QuickSort.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class QuickSort extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000015b1060027f7f0060017f017f60017f0060037f7f7f017f60000060037f7f7f0060027f7f017f60047f7f7f7f017f60047f7f7f7f0060037f7e7e0060017f017e60047f7f7e7e0060027f7e0060037e7e7f006000017f60027e7e017f02fd010b03656e760c706c61746f6e5f70616e6963000403656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000033f3e040b03060005010301040103050201000a020102010000010100000407010c03060902000006070002030a000002090301000100030702030005040101080405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974002606696e766f6b6500140ab1513e040010450b4c0020012002a72003a7100d21012000280218044020004200370218200041206a41003602000b20002001290200370218200041206a200128020836020020014100360208200142003702000be40102057f027e0340200120024e4504402000280200220520014103746a34020021082002210420012103034020032004480440200520044103746a210602400340200320044e0d01200629030022092008590440200641786a21062004417f6a21040c010b0b200520034103746a2009370300200341016a21030b200520034103746a21070340200320044e0d02200820072903002209550440200741086a2107200341016a21030c010b0b200620093703002004417f6a21040c010b0b200520034103746a2008370300200020012003417f6a100d1a200341016a21010c010b0b20000b3e01017f2000420037020020004100360208200128020420012802006b2202044020002002410375100f20012802002001280204200041046a10100b20000b2301017f2000200110112202360200200020023602042000200220014103746a3602080b2800200120006b220141014e044020022802002000200110121a2002200228020020016a3602000b0b0900200041037410130bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b0b002000410120001b10150bc90402057f017e23004180016b22002400104510052201101522021006200041c8006a200041086a200220011016220341001017200041c8006a101802400240200041c8006a1019450d00200028024c450d0020002802482d000041c001490d010b10000b200041206a200041c8006a101a2000280224220141094f044010000b200028022021020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008101b20055104402003101c200041c8006a101d101e0c020b418508101b200551044020004200370338200042003703302000410036022820004200370320200041386a2101200041306a21022003101f410447044010000b20004101360244200020033602702000200041c4006a360274200041c8006a200341011017200041c8006a200041206a10202000200028024441016a360244200041f0006a20021021200041f0006a20011021200041c8006a101d2102200041c8006a200041f0006a200041206a100e220120002903302000290338100c200128020022030440200120033602040b2002101e20002802202201450d02200020013602240c020b418a08101b2005520d002003101c200041c8006a101d2103200041f0006a200041e0006a100e2102200041206a10222201200210231024200120021025200128020c200141106a28020047044010000b20012802002001280204100a200128020c22040440200120043602100b200228020022010440200220013602040b2003101e0c010b10000b102620004180016a24000b9b0101047f230041106b220124002001200036020c2000047f41a808200041086a2202411076220041a8082802006a220336020041a40841a408280200220420026a41076a417871220236020002400240200341107420024d044041a808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101241086a0541000b2100200141106a240020000b0c00200020012002411c10270bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102f20012003280208200328020c103036020c20032001102f410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410271a200341106a24000f0b20032001102f41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103010482001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001018200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110282204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101f410147044010000b0b810301087f230041306b22072400200042003702182000428debc585c3a7f9dbf7003703102000410036020820004200370200200041206a4100360200200741186a1022220320002903101029200328020c200341106a28020047044010000b200041186a21050240200328020022062003280204220810072204450d002004101321020340200120026a41003a00002004200141016a2201470d000b20062008200220011008417f460440410021010c010b2007200241016a200120026a2002417f736a101620051020200421010b200328020c22020440200320023602100b024020010d002000411c6a210120002802042203200028020022046b41037522062000280220200028021822026b4103754d04402006200128020020026b41037522054b04402004200420054103746a22052002102a1a20052003200110100c020b2001200420032002102a3602000c010b2002044020004100360220200042003702180b200520052006102b100f20042003200110100b200741306a240020000b9c03010a7f230041406a22022400200241086a10222103200241386a4100360200200241306a4200370300200241286a420037030020024200370320200241206a20002903104200102c20022802202101200241206a410472102d200320011024200320002903101029200328020c200341106a28020047044010000b2003280204210520032802002106200241206a10222101200041186a22071023210841011013220441fe013a0000200128020c200141106a28020047044010000b2001280204220941016a220a20012802084b047f2001200a102e20012802040520090b20012802006a2004410110121a2001200128020441016a3602042001200441016a200820046b6a10242001200710250240200128020c2001280210460440200128020021040c010b100020012802002104200128020c2001280210460d0010000b20062005200420012802041009200128020c22040440200120043602100b200328020c22010440200320013602100b2000280218220104402000411c6a20013602000b200028020022010440200020013602040b200241406b24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102f200128020c210003402000450d01200141002001280208220320032000103022046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bcb0302077f017e230041d0006b22042400024002402000280204450d0020002802002d000041c001490d002000101f21022001280208200128020022036b4103752002490440200120042002200128020420036b410375200141086a103122021032200210330b200441286a2000410110342102200441186a2000410010342106200141086a210720022802042100034020062802042000464100200228020822032006280208461b0d02200420002003411c1027103521090240200128020422002001280208490440200020093703002001200041086a3602040c010b200441386a2001200020012802006b410375220041016a102b20002007103121002004280240220320093703002004200341086a360240200120001032200010330b20022002280204220020022802086a410020001b22003602042002280200220304402002200336020820002003103021052002027f200228020422004504404100210341000c010b410021034100200228020822082005490d001a200820052005417f461b210320000b2200ad2003ad42208684370204200241002002280200220520036b2203200320054b1b3602000c0105200241003602080c010b000b000b10000b200441d0006a24000b4601017f230041206b22022400200241086a2000280200200028020428020010172001200241086a103537030020002802042200200028020041016a360200200241206a24000b2900200041003602082000420037020020004100102e200041146a41003602002000420037020c20000bba0102027f027e230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300027f200028020020002802044604402001410136020041010c010b2001410010362000280204210220002802002100037f2000200246047f2001410110362001280200052001200029030022034201862003423f8722048520044201862003423f8884200485102c200041086a21000c010b0b0b21002001410472102d200141206a240020000b13002000280208200149044020002001102e0b0bf60202067f027e0240200128020420012802006b220204402002410375210220002802042106200041106a2802002203200041146a280200220449044020032002ad2006ad422086843702002000200028021041086a3602100c020b027f41002003200028020c22056b410375220741016a2203200420056b2204410275220520052003491b41ffffffff01200441037541ffffffff00491b2205450d001a200541037410130b2103200320074103746a22042002ad2006ad4220868437020020042000280210200028020c22076b22026b2106200320054103746a2103200441086a2104200241014e044020062007200210121a0b20002003360214200020043602102000200636020c0c010b200041001001200028020422026a103741004100200220002802006a1002200010380b20012802042102200128020021010340200120024704402000200129030022084201862008423f8722098520094201862008423f88842009851039200141086a21010c010b0b0b880101037f419408410136020041980828020021000340200004400340419c08419c082802002201417f6a220236020020014101484504404194084100360200200020024102746a22004184016a280200200041046a280200110200419408410136020041980828020021000c010b0b419c084120360200419808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104620024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104620024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101841012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0a0020002001420010390b2501017f200120006b220141037521032001044020022000200110440b200220034103746a0b3101017f2001200028020820002802006b2200410275220220022001491b41ffffffff01200041037541ffffffff00491b0b890101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103d20036a0520030b41016a21040b200041186a28020022030440200041086a280200200041146a2802002003103a21000b2000200028020020046a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001043200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103c200441106a24000b2f01017f2000280208200149044020011015200028020020002802041012210220002001360208200020023602000b0b2101017f20011028220220012802044b044010000b2000200120011047200210480b2701017f230041206b22022400200241086a200020014114102710462100200241206a240020000b4c01017f2000410036020c200041106a2003360200200104402001101121040b200020043602002000200420024103746a22023602082000200420014103746a36020c2000200236020420000b870101037f200120012802042000280204200028020022046b22036b2202360204200341004a044020022004200310121a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141786a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001102f20004100200428020c2201200428020822022001103022032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000ba40102027f027e230041106b22012400200010180240024020001019450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000101a200128020c220041114f044010000b20012802082102034020000440200442088620034238888421042000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a2400420020034201837d2004423f86200342018884850bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203103a280200210120022003417f6a3602002007103b4180104f044020072000410c6a280200417c6a103c0b200141384f047f2001103d20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103a21000c010b02402007103b0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103e0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010132105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103f220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10402102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021041200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104222013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10402102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021041200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103e0c010b20042001410175410120011b200320051040210241802010132106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103f22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104021032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031041200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021041052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104222013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104021062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061041200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071043200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b3601017f2000280208200149044020011015200028020020002802041012210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1037200120002802006a22012002200110020c010b0b0b2801017f2000200220011003200028020422036a103720022001200320002802006a1004200010380b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103f22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10402103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031041200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110440b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101321040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110440b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210121a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041b0880436020c41a008200028020c41076a417871220036020041a408200036020041a8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001047200010286a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b1a01004180080b13696e697400736f7274006765745f6172726179"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SORT = "sort"; - - public static final String FUNC_GET_ARRAY = "get_array"; - - protected QuickSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected QuickSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(QuickSort.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(QuickSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(QuickSort.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(QuickSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall sort(Int64[] arr, Int64 start, Int64 last) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,start,last), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall sort(Int64[] arr, Int64 start, Int64 last, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,start,last), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_array() { - final WasmFunction function = new WasmFunction(FUNC_GET_ARRAY, Arrays.asList(), Int64[].class); - return executeRemoteCall(function, Int64[].class); - } - - public static QuickSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new QuickSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static QuickSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new QuickSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/RadixSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/RadixSort.java deleted file mode 100644 index 3b7058e102..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/RadixSort.java +++ /dev/null @@ -1,85 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class RadixSort extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f017f60017f0060037f7f7f017f60000060037f7f7f0060027f7f017f60047f7f7f7f017f60047f7f7f7f0060037f7e7e0060027f7e0060037e7e7f006000017f60027e7e017f60017f017e02fd010b03656e760c706c61746f6e5f70616e6963000403656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000033d3c0405010600050103040103050201000e020102010000010100000407010a0306090200000607000203000002090301000100030702030005040101080405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974002506696e766f6b6500130aaa533c040010430b8105020d7f027e23004180016b22072400200128020021054101210b410a21030340200420024e450440200520044103746a2903002110034020102003ac53450440200b41016a210b2003410a6c21030c010b0b200441016a21040c010b0b200741f8006a2108200721030340200341086a4100360200200341046a2003360200200320033602002003410c6a22032008470d000b4101210c4101210d0340200c200b4a04400340200841746a210402402008417c6a2205280200450d00200841786a28020022032802002206200428020022092802043602042005410036020020092802042006360200034020032004460d01200328020421030c000b000b2004210820042007470d000b2000280218044020004200370218200041206a41003602000b20002001290200370218200041206a2001280208360200200141003602082001420037020020074180016a24000f0b200dad211141002106410021050340200520024e04404100210a410021060340200a410a46450440200128020020064103746a21052007200a410c6c6a220341046a210e200341086a210f2003280208417f6a210303402003417f46450440200e280200220428020022092004280204360204200f20033602002005200434020837030020042802042009360200200541086a21052003417f6a2103200641016a21060c010b0b200a41016a210a0c010b0b200c41016a210c200d410a6c210d0c0205200128020020066a2903002110410c100d22032007201020117f420a81a7410c6c6a2204360204200320103e020820042802002209200336020420042003360200200320093602002004200428020841016a360208200641086a2106200541016a21050c010b000b000b000b0b002000410120001b10140b3e01017f2000420037020020004100360208200128020420012802006b2202044020002002410375100f20012802002001280204200041046a10100b20000b2301017f2000200110112202360200200020023602042000200220014103746a3602080b2800200120006b220141014e044020022802002000200110121a2002200228020020016a3602000b0b09002000410374100d0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b970402057f017e23004180016b22002400104310052201101422021006200041306a200041186a200220011015220341001016200041306a101702400240200041306a1018450d002000280234450d0020002802302d000041c001490d010b10000b200041e8006a200041306a1019200028026c220141094f044010000b200028026821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008101a20055104402003101b200041306a101c101d0c020b418508101a200551044020004200370370200042003703682003101e410347044010000b200041306a200341011016200041306a200041e8006a101f200041306a200341021016200041086a200041306a1020200020002903082205420188420020054201837d853e0274200041306a101c2102200041306a200041d8006a200041e8006a100e22012000280274100c200128020022030440200120033602040b2002101d20002802682201450d022000200136026c0c020b418a08101a2005520d002003101b200041306a101c2103200041d8006a200041c8006a100e2102200041e8006a10212201200210221023200120021024200128020c200141106a28020047044010000b20012802002001280204100a200128020c22040440200120043602100b200228020022010440200220013602040b2003101d0c010b10000b102520004180016a24000b9b0101047f230041106b220124002001200036020c2000047f41a808200041086a2202411076220041a8082802006a220336020041a40841a408280200220420026a41076a417871220236020002400240200341107420024d044041a808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101241086a0541000b2100200141106a240020000b0c00200020012002411c10260bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102e20012003280208200328020c102f36020c20032001102e410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410261a200341106a24000f0b20032001102e41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102f10462001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001017200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110272204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101e410147044010000b0b810301087f230041306b2207240020004200370218200042ade395a9a7829ddae0003703102000410036020820004200370200200041206a4100360200200741186a1021220320002903101028200328020c200341106a28020047044010000b200041186a21050240200328020022062003280204220810072204450d002004100d21020340200120026a41003a00002004200141016a2201470d000b20062008200220011008417f460440410021010c010b2007200241016a200120026a2002417f736a10152005101f200421010b200328020c22020440200320023602100b024020010d002000411c6a210120002802042203200028020022046b41037522062000280220200028021822026b4103754d04402006200128020020026b41037522054b04402004200420054103746a2205200210291a20052003200110100c020b200120042003200210293602000c010b2002044020004100360220200042003702180b200520052006102a100f20042003200110100b200741306a240020000b9c03010a7f230041406a22022400200241086a10212103200241386a4100360200200241306a4200370300200241286a420037030020024200370320200241206a20002903104200102b20022802202101200241206a410472102c200320011023200320002903101028200328020c200341106a28020047044010000b2003280204210520032802002106200241206a10212101200041186a2207102221084101100d220441fe013a0000200128020c200141106a28020047044010000b2001280204220941016a220a20012802084b047f2001200a102d20012802040520090b20012802006a2004410110121a2001200128020441016a3602042001200441016a200820046b6a10232001200710240240200128020c2001280210460440200128020021040c010b100020012802002104200128020c2001280210460d0010000b20062005200420012802041009200128020c22040440200120043602100b200328020c22010440200320013602100b2000280218220104402000411c6a20013602000b200028020022010440200020013602040b200241406b24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102e200128020c210003402000450d01200141002001280208220320032000102f22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf30302077f017e230041e0006b22042400024002402000280204450d0020002802002d000041c001490d002000101e21022001280208200128020022036b41037520024904402001200441106a2002200128020420036b410375200141086a103022021031200210320b200441386a2000410110332102200441286a2000410010332106200141086a210720022802042100034020062802042000464100200228020822032006280208461b0d022004200441106a20002003411c10261020200441086a290300423f862004290300220942018884420020094201837d8521090240200128020422002001280208490440200020093703002001200041086a3602040c010b200441c8006a2001200020012802006b410375220041016a102a20002007103021002004280250220320093703002004200341086a360250200120001031200010320b20022002280204220020022802086a410020001b22003602042002280200220304402002200336020820002003102f21052002027f200228020422004504404100210341000c010b410021034100200228020822082005490d001a200820052005417f461b210320000b2200ad2003ad42208684370204200241002002280200220520036b2203200320054b1b3602000c0105200241003602080c010b000b000b10000b200441e0006a24000b9e0102027f027e230041106b22022400200110170240024020011018450d002001280204450d0020012802002d000041c001490d010b10000b200241086a20011019200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000b2900200041003602082000420037020020004100102d200041146a41003602002000420037020c20000bba0102027f027e230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300027f200028020020002802044604402001410136020041010c010b2001410010342000280204210220002802002100037f2000200246047f2001410110342001280200052001200029030022034201862003423f8722048520044201862003423f8884200485102b200041086a21000c010b0b0b21002001410472102c200141206a240020000b13002000280208200149044020002001102d0b0bf60202067f027e0240200128020420012802006b220204402002410375210220002802042106200041106a2802002203200041146a280200220449044020032002ad2006ad422086843702002000200028021041086a3602100c020b027f41002003200028020c22056b410375220741016a2203200420056b2204410275220520052003491b41ffffffff01200441037541ffffffff00491b2205450d001a2005410374100d0b2103200320074103746a22042002ad2006ad4220868437020020042000280210200028020c22076b22026b2106200320054103746a2103200441086a2104200241014e044020062007200210121a0b20002003360214200020043602102000200636020c0c010b200041001001200028020422026a103541004100200220002802006a1002200010360b20012802042102200128020021010340200120024704402000200129030022084201862008423f8722098520094201862008423f88842009851037200141086a21010c010b0b0b880101037f419408410136020041980828020021000340200004400340419c08419c082802002201417f6a220236020020014101484504404194084100360200200020024102746a22004184016a280200200041046a280200110200419408410136020041980828020021000c010b0b419c084120360200419808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104420024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104420024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101741012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0a0020002001420010370b2501017f200120006b220141037521032001044020022000200110420b200220034103746a0b3101017f2001200028020820002802006b2200410275220220022001491b41ffffffff01200041037541ffffffff00491b0b890101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103b20036a0520030b41016a21040b200041186a28020022030440200041086a280200200041146a2802002003103821000b2000200028020020046a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001041200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103a200441106a24000b2f01017f2000280208200149044020011014200028020020002802041012210220002001360208200020023602000b0b2101017f20011027220220012802044b044010000b2000200120011045200210460b2701017f230041206b22022400200241086a200020014114102610442100200241206a240020000b4c01017f2000410036020c200041106a2003360200200104402001101121040b200020043602002000200420024103746a22023602082000200420014103746a36020c2000200236020420000b870101037f200120012802042000280204200028020022046b22036b2202360204200341004a044020022004200310121a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141786a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001102e20004100200428020c2201200428020822022001102f22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031038280200210120022003417f6a360200200710394180104f044020072000410c6a280200417c6a103a0b200141384f047f2001103b20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103821000c010b0240200710390d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103c0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020100d2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103d220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104022013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103c0c010b20042001410175410120011b20032005103e2102418020100d2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103d22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103e21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003103f200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002103f052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104022013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103e21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006103f200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071041200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b3601017f2000280208200149044020011014200028020020002802041012210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1035200120002802006a22012002200110020c010b0b0b2801017f2000200220011003200028020422036a103520022001200320002802006a1004200010360b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103d22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a103e2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003103f200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110420b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274100d21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110420b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210121a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041b0880436020c41a008200028020c41076a417871220036020041a408200036020041a8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001045200010276a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b1a01004180080b13696e697400736f7274006765745f6172726179"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SORT = "sort"; - - public static final String FUNC_GET_ARRAY = "get_array"; - - protected RadixSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RadixSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(RadixSort.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(RadixSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(RadixSort.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(RadixSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall sort(Int64[] arr, Int32 n) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,n), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall sort(Int64[] arr, Int32 n, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,n), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_array() { - final WasmFunction function = new WasmFunction(FUNC_GET_ARRAY, Arrays.asList(), Int64[].class); - return executeRemoteCall(function, Int64[].class); - } - - public static RadixSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RadixSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RadixSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RadixSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/RecursionCall.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/RecursionCall.java deleted file mode 100644 index 4619098318..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/RecursionCall.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class RecursionCall extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60017f017f60000060017f0060027f7f0060037f7f7f0060047f7f7f7f0060027f7f017f60037f7f7f017f60047f7f7f7f017f60017f017e60027f7e0060037e7e7f006000017f60017e017f60027e7e017f02fd010b03656e760c706c61746f6e5f70616e6963000103656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000503656e760d706c61746f6e5f72657475726e0003031e1d0101000704090902000200000d030a01080200000307030603010000050405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974001a06696e766f6b65000c0a97241d040010240ba90202047f027e230041d0006b22012400102410052200100d22021006200141386a200141086a20022000100e22004100100f02400240200141386a10102204500d004180081011200451044020001012200141386a101310140c020b4185081011200451044020001015410247044010000b200141386a20004101100f200141386a10102105200141386a1013220029031021040340200420055404402000200442017c22043703100c010b0b200010140c020b418a0810112004520d0020001012200141206a101322022903102104200141386a10162200200410171018200020041019200028020c200041106a28020047044010000b20002802002000280204100a200028020c22030440200020033602100b200210140c010b10000b101a200141d0006a24000b9b0101047f230041106b220124002001200036020c2000047f41a808200041086a2202411076220041a8082802006a220336020041a40841a408280200220420026a41076a417871220236020002400240200341107420024d044041a808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102041086a0541000b2100200141106a240020000b0c00200020012002411c101b0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102120012003280208200328020c102236020c200320011021410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114101b1a200341106a24000f0b20032001102141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102210272001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000bad0302057f017e2000101c024002402000280204450d002000101c0240200028020022012c0000220241004e044020020d010c020b200241807f460d00200241ff0171220341b7014d0440200028020441014d04401000200028020021010b20012d00010d010c020b200341bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021010b200120026a2d0000450d010b2000280204450d0020012d000041c001490d010b10000b2000101d2204200028020422014b04401000200028020421010b20002802002105024002400240200104404100210320052c00002200417f4a0d01027f200041ff0171220341bf014d04404100200041ff017141b801490d011a200341c97e6a0c010b4100200041ff017141f801490d001a200341897e6a0b41016a21030c010b4101210320050d00410021000c010b41002100200320046a20014b0d0020012004490d004100210220012003490d01200320056a2102200120036b20042004417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002006420886842106200241016a21020c010b0b20060b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001015410147044010000b0bdb0101077f230041306b22052400200042e9feb2fee9efcf848c7f37030820004200370300200541186a1016220220002903081019200228020c200241106a28020047044010000b02400240200228020022062002280204220710072204450d002004101e21030340200120036a41003a00002004200141016a2201470d000b20062007200320011008417f460d0020002005200341016a200120036a2003417f736a100e10103703100c010b410021040b200228020c22010440200220013602100b2004450440200020002903003703100b200541306a240020000bb40201097f230041306b22032400200341186a10162202200029030810171018200220002903081019200228020c200241106a28020047044010000b20022802042105200228020021062003101621012000290310101721074101101e220441fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009101f20012802040520080b20012802006a2004410110201a2001200128020441016a3602042001200441016a200720046b6a10182001200029031010190240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b20062005200020012802041009200128020c22000440200120003602100b200228020c22010440200220013602100b200341306a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001021200128020c210003402000450d01200141002001280208220320032000102222046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b2900200041003602082000420037020020004100101f200041146a41003602002000420037020c20000b7002027f017e4101210120004280015a047f41002101034020002003845045044020034238862000420888842100200141016a2101200342088821030c010b0b024020014138490d002001210203402002450d01200141016a2101200241087621020c000b000b200141016a0520010b0b13002000280208200149044020002001101f0b0b9a0101037f2000420020011003200028020422026a102342002001200220002802006a10040340024020002802102202200028020c460d00200241786a2802004504401000200028021021020b200241786a22032003280200417f6a220436020020040d002000200336021020002002417c6a2802002202200028020420026b220310016a1023200220002802006a22022003200210020c010b0b0b880101037f419408410136020041980828020021000340200004400340419c08419c082802002201417f6a220236020020014101484504404194084100360200200020024102746a22004184016a280200200041046a280200110200419408410136020041980828020021000c010b0b419c084120360200419808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000102520024f0d002003410471044010000c010b200042003702000b02402003411071450d002000102520024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101c41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0b002000410120001b100d0b2f01017f200028020820014904402001100d200028020020002802041020210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2101017f2001101d220220012802044b044010000b2000200120011026200210270b2701017f230041206b22022400200241086a200020014114101b10252100200241206a240020000b3601017f200028020820014904402001100d200028020020002802041020210220002001360208200020023602000b200020013602040b3501017f230041106b220041b0880436020c41a008200028020c41076a417871220036020041a408200036020041a8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010262000101d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b1801004180080b11696e69740063616c6c006765745f73756d"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_CALL = "call"; - - public static final String FUNC_GET_SUM = "get_sum"; - - protected RecursionCall(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected RecursionCall(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(RecursionCall.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(RecursionCall.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(RecursionCall.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(RecursionCall.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall call(Uint64 n) { - final WasmFunction function = new WasmFunction(FUNC_CALL, Arrays.asList(n), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall call(Uint64 n, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CALL, Arrays.asList(n), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_sum() { - final WasmFunction function = new WasmFunction(FUNC_GET_SUM, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static RecursionCall load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new RecursionCall(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static RecursionCall load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new RecursionCall(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeArrayContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeArrayContract.java deleted file mode 100644 index 4a948dd929..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeArrayContract.java +++ /dev/null @@ -1,111 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ReferenceDataTypeArrayContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60027f7f0060017f017f60017f0060037f7f7f0060037f7f7f017f60000060027f7f017f60027f7e0060047f7f7f7f017f60047f7f7f7f0060037e7e7f006000017f60017e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000603656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000903656e760d706c61746f6e5f72657475726e0000034d4c0502020006020303000401050104030201000e000001010002000002020205080101010207000101000304060001040000040c010000000100070701010004080204020503010109060002000405017001040405030100020608017f01418089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002b06696e766f6b6500180909010041010b030e0f120aa7674c040010500b0300010b850101037f230041106b2201240020014181848c20360200200141053a0004200141057221030340200220036a41003a0000200241016a22024105470d000b20004190026a200129030037000020004198026a200141086a2f01003b000020004180016a41800810102000418c016a418208101020004198016a4184081010200141106a24000b7e01027f20012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b10360ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101721022000200136020420002004410172360200200020023602080b2002200320011051200120026a41003a000020000bf70101057f230041106b2202240020024181848c2036000b200041b8026a22042802002101200041c0026a2802002103200241053a000f200241106a21050240200320016b41054f0440200041bc026a220328020020016b220041044d04402002410b6a20006a21042000044020012002410b6a200010130b20042005200310140c020b20012002410b6a410510132003200141056a3602000c010b20010440200041003602c002200042003702b80241002103410021010b2004200320016b220141017422034105200341054b1b41ffffffff07200141ffffffff03491b10152002410b6a2005200041bc026a10140b200241106a24000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210161a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b2800200120006b220141014e044020022802002000200110161a2002200228020020016a3602000b0b2001017f2000200110172202360200200020023602042000200120026a3602080bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b0b002000410120001b10190bc90402057f017e230041c0036b22002400105010072201101922021008200041f8006a200020022001101a22034100101b200041f8006a101c02400240200041f8006a101d450d00200028027c450d0020002802782d000041c001490d010b10000b200041d8006a200041f8006a101e200028025c220141094f044010000b200028025821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418608101f20055104402003410110200c020b418b08101f20055104402003410210200c020b419808101f2005510440200041003602182003200041186a1021200041206a200041f8006a102222032000280218410c6c6a4180016a10112102200041306a10232101200041f0006a4100360200200041e8006a4200370300200041e0006a420037030020004200370358200041d8006a200041c8006a20021011102420002802582104200041d8006a41047210252001200410262001200041d8006a200210111027200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310280c020b41ac08101f200551044020031029200041f8006a102221012000410a3a0058200041d8006a102a200110280c020b41bd08101f20055104402003410310200c020b41cb08101f2005520d00200041003602582003200041d8006a10212000200041f8006a1022220141b8026a28020020002802586a2d00003a0030200041306a102a200110280c010b10000b102b200041c0036a24000b9b0101047f230041106b220124002001200036020c2000047f41f408200041086a2202411076220041f4082802006a220336020041f00841f008280200220420026a41076a417871220236020002400240200341107420024d044041f408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101641086a0541000b2100200141106a240020000b0c00200020012002411c102c0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001105620012003280208200328020c105536020c200320011056410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102c1a200341106a24000f0b20032001105641002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004105510542001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000101c200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001102d2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b3101017f230041d0026b2202240020001029200241086a10222100200241086a200111020020001028200241d0026a24000b9c0101037f230041206b220224002000102e410247044010000b200220004101101b2002101c024002402002101d450d002002280204450d0020022802002d000041c001490d010b10000b200241186a2002101e200228021c220041054f044010000b200228021821040340200004402000417f6a210020042d00002003410874722103200441016a21040c010b0b20012003360200200241206a24000b880d010d7f23004180016b220124002000102f22041030200442beef86b0c8a9efb1af7f37037820044180016a1030200141406b1023220920042903781031200928020c200941106a28020047044010000b024020092802002203200928020422051009220a450d0020014100360208200142003703002001200a103220032005200128020022002001280204220820006b100a417f470440200141286a200041016a20082000417f736a101a22061033410a47044010000b200141d8006a410172210c200141e0006a210b4100210503402005410a46450440200141106a10342108200141e8006a20062005101b02400240200128026c044020012802682d000041c001490d010b200141d8006a10341a0c010b200141206a200141e8006a101e200141e8006a102d210202400240024002402001280220220004402001280224220320024f0d010b41002100200b41003602002001420037035841002107410021030c010b200b4100360200200142003703582000200320022002417f461b22076a21032007410a4b0d010b200120074101743a0058200c21020c010b200741106a417071220d101721022001200736025c2001200d410172360258200120023602600b03402000200346450440200220002d00003a0000200241016a2102200041016a21000c010b0b200241003a00000b2008200141d8006a103520042005410c6c6a4180016a20081035200541016a21050c010b0b200a2102200128020021000b2000450d00200120003602040b200928020c22000440200920003602100b024020020d00410021020340200241f800460d01200220046a22004180016a200041086a280200200041016a20002d0000220341017122051b200041046a280200200341017620051b10362002410c6a21020c000b000b200442003703f8014100210020044180026a41003b010020044188026a220242bdef86b0c8a9efb1af7f370300200141406b1023220620022903001031200628020c200641106a28020047044010000b0240200628020022022006280204220310092209450d002001410036026020014200370358200141d8006a200910322002200320012802582207200128025c220520076b100a417f470440200141286a200741016a20052007417f736a101a22081033410a47044010000b4100210503402005410a470440200141e8006a20082005101b200141e8006a101c200141e8006a101d210002400240200128026c450d002000450d0020012802682d000041c001490d010b10000b200141106a200141e8006a101e2001280214220041024f044010000b41002103200128021021020340200004402000417f6a210020022d00002103200241016a21020c010b0b200420056a4190026a20033a0000200541016a21050c010b0b200921000b2007450d002001200736025c0b200628020c22020440200620023602100b200045044020044190026a200441f8016a220029030037030020044198026a200041086a2f01003b01000b200442003702a00241002103200441c0026a4100360200200441b8026a22084200370200200441b0026a220242bcef86b0c8a9efb1af7f370300200441a8026a4100360200200141e8006a1023220020022903001031200028020c200041106a28020047044010000b0240200028020022062000280204220710092205450d002001410036026020014200370358200141d8006a200510322006200720012802582202200128025c220920026b100a417f47044002400240200141406b200241016a20092002417f736a101a2203280204044020032802002d000041c001490d010b20014100360230200142003703280c010b200141106a2003101e2001280210210620012003101e200128020021072003102d21032001410036023020014200370328200320076a220320066b2207450d00200141286a2007101520062003200141286a41047210140b20082802000440200441003602c002200442003702b8020b200420012802283602b8022004200129022c3702bc02200521030b2002450d002001200236025c0b200028020c22020440200020023602100b024020030d00200441bc026a210020042802a402220620042802a00222036b220520042802c00220042802b80222026b4d04402005200028020020026b22084b04402003200320086a2205200210371a20052006200010140c020b200020032006200210373602000c010b20020440200441003602c002200442003702b8020b2008200820051038101520032006200010140b20014180016a240020040b29002000410036020820004200370200200041001039200041146a41003602002000420037020c20000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103a20026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001103b21000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000103c200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103d200441106a24000b1300200028020820014904402000200110390b0b2d01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b103e1a0beb0901087f230041e0006b22032400200341186a10232201200041b0026a2202290300103f1026200120022903001031200128020c200141106a28020047044010000b2001280204210720012802002108200310232102200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330024020002802b8022204200041bc026a2802002206460440410121050c010b4101210502400240200620046b2206410146044020042c0000417f4c0d010c030b200641374b0d010b200641016a21050c010b2006103a20066a41016a21050b20032005360230200341306a41047210252002200341306a1040220410412002200428020420056a20042802006b10260240200220002802b802220520002802bc0220056b103e220228020c200241106a280200460440200241046a2105200228020021060c010b200241046a2105100020022802002106200228020c2002280210460d0010000b2008200720062005280200100b200428020022050440200420053602040b200228020c22040440200220043602100b200128020c22020440200120023602100b200041b8026a28020022010440200020013602bc020b20002802a00222010440200041a4026a20013602000b200341186a1023220420004188026a2201290300103f1026200420012903001031200428020c200441106a28020047044010000b2004280204210720042802002108200310232102200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330200341306a41001042419002210103402001419a02470440200341306a200020016a2d00001043200141016a21010c010b0b200341306a4101104220032802302101200341306a41047210252002200341306a1040220510412002200120052802046a20052802006b1026200210442102419002210103402001419a024704402002200020016a2d00001045200141016a21010c010b0b0240200228020c200241106a280200460440200241046a2101200228020021060c010b200241046a2101100020022802002106200228020c2002280210460d0010000b2008200720062001280200100b200528020022010440200520013602040b200228020c22010440200220013602100b200428020c22010440200420013602100b200341186a102322042000290378103f1026200420002903781031200428020c200441106a28020047044010000b2004280204210720042802002108200310232102200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330200341306a4100104241800121010340200141f801470440200341306a200341d0006a200020016a101110242001410c6a21010c010b0b200341306a4101104220032802302101200341306a41047210252002200341d0006a1040220510412002200120052802046a20052802006b102620021044210241800121010340200141f8014704402002200341306a200020016a101110272001410c6a21010c010b0b0240200228020c200241106a280200460440200241046a2101200228020021060c010b200241046a2101100020022802002106200228020c2002280210460d0010000b2008200720062001280200100b200528020022010440200520013602040b200228020c22010440200220013602100b200428020c22010440200420013602100b200341e0006a24000b0e002000102e410147044010000b0b9e0101037f230041406a22012400200141086a10232102200141386a4100360200200141306a4200370300200141286a420037030020014200370320200141206a20002d0000104320012802202103200141206a4104721025200220031026200220002d00001045200228020c200241106a28020047044010000b20022802002002280204100c200228020c22000440200220003602100b200141406b24000b880101037f41e008410136020041e4082802002100034020000440034041e80841e8082802002201417f6a2202360200200141014845044041e0084100360200200020024102746a22004184016a280200200041046a28020011020041e008410136020041e40828020021000c010b0b41e808412036020041e408200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105220024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105220024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101c41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2501017f02402000280204450d0020002802002d000041c001490d002000104821010b20010bc90201037f200041003a0000200041f8006a2202417f6a41003a0000200041003a0002200041003a00012002417d6a41003a00002002417e6a41003a0000200041003a00032002417c6a41003a00002000410020006b41037122016a22024100360200200241f80020016b417c7122016a2203417c6a4100360200024020014109490d002002410036020820024100360204200341786a4100360200200341746a410036020020014119490d002002410036021820024100360214200241003602102002410036020c200341706a41003602002003416c6a4100360200200341686a4100360200200341646a41003602002001200241047141187222016b2103200120026a2101034020034120490d0120014200370300200141186a4200370300200141106a4200370300200141086a4200370300200141206a2101200341606a21030c000b000b20000b2601027f200041f8006a210103402000103421022000410c6a21002002410c6a2001470d000b0b08002000200110470bdd0101047f024020002802042203200028020022026b22042001490440200028020820036b200120046b22024f04400340200341003a00002000200028020441016a22033602042002417f6a22020d000c030b000b200020011038220104402001101721050b200420056a220421030340200341003a0000200341016a21032002417f6a22020d000b200120056a210520042000280204200028020022046b22016b2102200141014e044020022004200110161a0b2000200536020820002003360204200020023602000f0b200420014d0d002000200120026a3602040b0b210002402000280204044020002802002d000041bf014b0d010b10000b200010480b190020004200370200200041086a41003602002000104f20000b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a2802003602002001104f0bd40101027f410a210320002d0000410171220404402000280200417e71417f6a21030b200320024f0440027f2004044020002802080c010b200041016a0b21032002044020032001200210130b200220036a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2104200341e6ffffff074d0440410b200341017422032002200320024b1b220341106a4170712003410b491b21040b200410172203200120021051200020023602042000200441017236020020002003360208200220036a41003a00000b1900200120006b2201044020022000200110130b200120026a0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b2f01017f2000280208200149044020011019200028020020002802041016210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2a01017f2000200120021003200028020422036a105820012002200320002802006a10042000105720000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200010462001280200210220014104721025200141206a240020020b30002000410036020820004200370200200041011015200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004103920002802040520020b20002802006a2003200110161a2000200028020420016a3602040bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203103b280200210120022003417f6a360200200710494180104f044020072000410c6a280200417c6a103d0b200141384f047f2001103a20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103b21000c010b0240200710490d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a104a0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010172105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a104b220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a104c2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104d200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104e22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a104c2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104d200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a104a0c010b20042001410175410120011b20032005104c210241802010172106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104b22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104c21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003104d200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002104d052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104e22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104c21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006104d200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007103c200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b090020002001ad10460bf10101067f20002802042104200041106a2802002201200041146a280200220249044020012004ad422086420a843702002000200028021041086a36021020000f0b027f41002001200028020c22036b410375220541016a2201200220036b2202410275220320032001491b41ffffffff01200241037541ffffffff00491b2203450d001a200341037410170b2101200120054103746a22022004ad422086420a8437020020022000280210200028020c22066b22046b2105200120034103746a2101200241086a2102200441014e044020052006200410161a0b20002001360214200020023602102000200536020c20000b090020002001ad10470b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002103a20026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002103b21000b2000200028020020036a3602000b2801017f2000420020011005200028020422026a105842002001200220002802006a1006200010570b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001056200128020c210003402000450d01200141002001280208220320032000105522046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104b22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a104c2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003104d200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110130b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101721040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110130b20020b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b3501017f230041106b22004180890436020c41ec08200028020c41076a417871220036020041f008200036020041f4083f003602000b10002002044020002001200210161a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010532000102d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114102c10522100200241206a240020000b2101017f2001102d220220012802044b044010000b2000200120011053200210540b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1058200120002802006a22012002200110020c010b0b0b3601017f2000280208200149044020011019200028020020002802041016210220002001360208200020023602000b200020013602040b0b6401004180080b5d610062006300696e697400736574496e69744172726179006765744172726179537472696e67496e64657800676574417272617955696e7453697a6500736574427974657341727261790067657442797465734172726179496e646578"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SETINITARRAY = "setInitArray"; - - public static final String FUNC_GETARRAYSTRINGINDEX = "getArrayStringIndex"; - - public static final String FUNC_GETARRAYUINTSIZE = "getArrayUintSize"; - - public static final String FUNC_SETBYTESARRAY = "setBytesArray"; - - public static final String FUNC_GETBYTESARRAYINDEX = "getBytesArrayIndex"; - - protected ReferenceDataTypeArrayContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeArrayContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeArrayContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeArrayContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeArrayContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeArrayContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall setInitArray() { - final WasmFunction function = new WasmFunction(FUNC_SETINITARRAY, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setInitArray(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETINITARRAY, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getArrayStringIndex(Uint32 index) { - final WasmFunction function = new WasmFunction(FUNC_GETARRAYSTRINGINDEX, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall getArrayUintSize() { - final WasmFunction function = new WasmFunction(FUNC_GETARRAYUINTSIZE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall setBytesArray() { - final WasmFunction function = new WasmFunction(FUNC_SETBYTESARRAY, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setBytesArray(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETBYTESARRAY, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getBytesArrayIndex(Uint32 index) { - final WasmFunction function = new WasmFunction(FUNC_GETBYTESARRAYINDEX, Arrays.asList(index), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public static ReferenceDataTypeArrayContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeArrayContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeArrayFuncContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeArrayFuncContract.java deleted file mode 100644 index 0ae03d6413..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeArrayFuncContract.java +++ /dev/null @@ -1,110 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ReferenceDataTypeArrayFuncContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f017f60017f0060037f7f7f0060000060037f7f7f017f60027f7f017f60047f7f7f7f017f60047f7f7f7f0060027f7e0060037e7e7f006000017f60027f7e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000403656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000603656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e000003414004020200060000040105030201000e000201010902000c02010201000407010102090101000001050000000005000200020100050702050304030301010806000405017001030305030100020608017f01418089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002906696e766f6b6500140908010041010b020e0f0aeb5240040010450b0300010b390020004180016a41800810102000418c016a418208101020004198016a4184081010200041a4016a4186081010200041b0016a41880810100b7e01027f20012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b10470ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102f21022000200136020420002004410172360200200020023602080b2002200320011046200120026a41003a000020000b2f01017f20004180016a2102410021000340200041f80046450440200020026a200110132000410c6a21000c010b0b0b3401017f2000200147044020002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10470b0bf20502047f017e230041e0026b22002400104510072201101522031008200041d8006a200041086a200320011016220241001017200041d8006a101802400240200041d8006a1019450d00200028025c450d0020002802582d000041c001490d010b10000b200041386a200041d8006a101a200028023c220141094f044010000b200028023821030340200104402001417f6a210120033100002004420886842104200341016a21030c010b0b024002402004500d00418a08101b200451044020024101101c0c020b418f08101b200451044020024102101c0c020b41a008101b20045104402002101d200041d8006a101e2103200041206a101f2101200041d0006a4100360200200041c8006a4200370300200041406b420037030020004200370338200041386a4200102020002802382102200041386a4104721021200120021022200142001023220128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310240c020b41b008101b200451044020021025410247044010000b200041d8006a200241011017200041d8006a101802400240200041d8006a1019450d00200028025c450d0020002802582d000041c001490d010b10000b200041386a200041d8006a101a200028023c220141054f044010000b41002102200028023821030340200104402001417f6a210120032d00002002410874722102200341016a21030c010b0b200041d8006a101e210120002002360220200041386a2000200041206a280200410c6c6a41d8016a10111a200041386a1026200110240c020b41c308101b20045104402002101d200041d8006a101e2101200041386a200041d8016a10111026200110240c020b41d608101b2004520d00200041d0026a1027210120021025410247044010000b200041d8006a200241011017200041d8006a20011028200041d8006a101e2103200041d8006a200041386a200041206a2001101110111012200310240c010b10000b1029200041e0026a24000b9b0101047f230041106b220124002001200036020c2000047f41f808200041086a2202411076220041f8082802006a220336020041f40841f408280200220420026a41076a417871220236020002400240200341107420024d044041f808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103941086a0541000b2100200141106a240020000b0c00200020012002411c102a0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104c20012003280208200328020c104b36020c20032001104c410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102a1a200341106a24000f0b20032001104c41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104b104a2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001018200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001102b2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b3101017f23004180026b220224002000101d200241086a101e2100200241086a20011102002000102420024180026a24000b0e0020001025410147044010000b0bf50201077f230041e0006b220224002000102c2203102d2003428aa4bedd86c3aeee5837037820034180016a102d200241206a101f22042003290378102e200428020c200441106a28020047044010000b0240200428020022062004280204220510092207450d002007102f21000340200020016a41003a00002007200141016a2201470d000b2006200520002001100a417f460440410021010c010b0240200241086a200041016a200020016a2000417f736a10162205280204044020052802002d000041bf014b0d010b10000b20051030410a47044010000b20034180016a21004100210103402001410a46450440200241d0006a10272106200241386a200520011017200241386a200610282000200610312000410c6a2100200141016a21010c010b0b200721010b200428020c22000440200420003602100b024020010d00410021010340200141f800460d01200120036a22004180016a200010132001410c6a21010c000b000b200241e0006a240020030b29002000410036020820004200370200200041001032200041146a41003602002000420037020c20000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002103320026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002103421000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001035200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011036200441106a24000b1300200028020820014904402000200110320b0b2a01017f2000420020011005200028020422026a103c42002001200220002802006a10062000103d20000bef05010b7f230041e0006b22032400200341186a101f2106200341c8006a22024100360200200341406b22044200370300200341386a2205420037030020034200370330200341306a2000290378102020032802302101200341306a410472102120062001102220062000290378102e200628020c200641106a28020047044010000b200628020421092006280200210a2003101f210120024100360200200442003703002005420037030020034200370330200341306a4100103741800121020340200241f801470440200341306a200341d0006a200020026a101110382002410c6a21020c010b0b200341306a4101103720032802302105200341306a41047210214101102f220241fe013a0000200128020c200141106a28020047044010000b200241016a21072001280204220441016a220820012802084b047f20012008103220012802040520040b20012802006a2002410110391a2001200128020441016a3602042001200520026b20076a102220012802042102024020012802102204200141146a280200220549044020042002ad422086420a843702002001200128021041086a3602100c010b027f41002004200128020c22076b410375220841016a2204200520076b2205410275220720072004491b41ffffffff01200541037541ffffffff00491b2207450d001a2007410374102f0b2104200420084103746a22052002ad422086420a8437020020052001280210200128020c220b6b22026b2108200420074103746a2104200541086a2105200241014e04402008200b200210391a0b20012004360214200120053602102001200836020c0b41800121020340200241f8014704402001200341306a200020026a1011103a2002410c6a21020c010b0b0240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b200a200920022001280204100b200128020c22020440200120023602100b200628020c22020440200620023602100b200341e0006a24000b2501017f02402000280204450d0020002802002d000041c001490d002000103021010b20010bab0101037f230041e0006b22012400200141186a101f2102200141d8006a4100360200200141d0006a4200370300200141c8006a420037030020014200370340200141406b200141306a20001011103820012802402103200141406b41047210212002200310222002200141086a20001011103a200228020c200241106a28020047044010000b20022802002002280204100c200228020c22000440200220003602100b200141e0006a24000b190020004200370200200041086a41003602002000103b20000ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10271a0c010b200241186a2000101a2000102b21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102f21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1031200241206a24000b880101037f41e408410136020041e8082802002100034020000440034041ec0841ec082802002201417f6a2202360200200141014845044041e4084100360200200020024102746a22004184016a280200200041046a28020011020041e408410136020041e80828020021000c010b0b41ec08412036020041e808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104820024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104820024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101841012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020bc90201037f200041003a0000200041f8006a2202417f6a41003a0000200041003a0002200041003a00012002417d6a41003a00002002417e6a41003a0000200041003a00032002417c6a41003a00002000410020006b41037122016a22024100360200200241f80020016b417c7122016a2203417c6a4100360200024020014109490d002002410036020820024100360204200341786a4100360200200341746a410036020020014119490d002002410036021820024100360214200241003602102002410036020c200341706a41003602002003416c6a4100360200200341686a4100360200200341646a41003602002001200241047141187222016b2103200120026a2101034020034120490d0120014200370300200141186a4200370300200141106a4200370300200141086a4200370300200141206a2101200341606a21030c000b000b20000b2601027f200041f8006a210103402000102721022000410c6a21002002410c6a2001470d000b0b09002000200110231a0b0b002000410120001b10150b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000104c200128020c210003402000450d01200141002001280208220320032000104b22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a2802003602002001103b0b2f01017f2000280208200149044020011015200028020020002802041039210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031034280200210120022003417f6a3602002007103e4180104f044020072000410c6a280200417c6a10360b200141384f047f2001103320016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103421000c010b02402007103e0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103f0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020102f2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1040220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10412102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021042200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104322013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10412102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021042200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103f0c010b20042001410175410120011b2003200510412102418020102f2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104022013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104121032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031042200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021042052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104322013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104121062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061042200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071035200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103320026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001103421000b2000200028020020036a3602000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a103c20042001200220002802006a10042000103d0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b3601017f2000280208200149044020011015200028020020002802041039210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a103c200120002802006a22012002200110020c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104022023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10412103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031042200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110440b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102f21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110440b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210391a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b22004180890436020c41f008200028020c41076a417871220036020041f408200036020041f8083f003602000b10002002044020002001200210391a0b0bd40101027f410a210320002d0000410171220404402000280200417e71417f6a21030b200320024f0440027f2004044020002802080c010b200041016a0b21032002044020032001200210440b200220036a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2104200341e6ffffff074d0440410b200341017422032002200320024b1b220341106a4170712003410b491b21040b2004102f2203200120021046200020023602042000200441017236020020002003360208200220036a41003a00000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010492000102b6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114102a10482100200241206a240020000b2101017f2001102b220220012802044b044010000b20002001200110492002104a0b0b6901004180080b6261006200630064006500696e697400736574496e69744172726179446174650067657441727261794973456d70747900676574417272617956616c7565496e646578006765744172726179466972737456616c756500736574417272617946696c6c"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETARRAYFIRSTVALUE = "getArrayFirstValue"; - - public static final String FUNC_SETINITARRAYDATE = "setInitArrayDate"; - - public static final String FUNC_GETARRAYISEMPTY = "getArrayIsEmpty"; - - public static final String FUNC_GETARRAYVALUEINDEX = "getArrayValueIndex"; - - public static final String FUNC_SETARRAYFILL = "setArrayFill"; - - protected ReferenceDataTypeArrayFuncContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeArrayFuncContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getArrayFirstValue() { - final WasmFunction function = new WasmFunction(FUNC_GETARRAYFIRSTVALUE, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeArrayFuncContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeArrayFuncContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeArrayFuncContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeArrayFuncContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall setInitArrayDate() { - final WasmFunction function = new WasmFunction(FUNC_SETINITARRAYDATE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setInitArrayDate(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETINITARRAYDATE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getArrayIsEmpty() { - final WasmFunction function = new WasmFunction(FUNC_GETARRAYISEMPTY, Arrays.asList(), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall getArrayValueIndex(Uint32 index) { - final WasmFunction function = new WasmFunction(FUNC_GETARRAYVALUEINDEX, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall setArrayFill(String str) { - final WasmFunction function = new WasmFunction(FUNC_SETARRAYFILL, Arrays.asList(str), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setArrayFill(String str, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETARRAYFILL, Arrays.asList(str), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static ReferenceDataTypeArrayFuncContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayFuncContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeArrayFuncContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeArrayFuncContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeComplexContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeComplexContract.java deleted file mode 100644 index a743884a2f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeComplexContract.java +++ /dev/null @@ -1,173 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ReferenceDataTypeComplexContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f017f60027f7f017f60017f0060037f7f7f017f60037f7f7f0060000060047f7f7f7f017f60027f7e017f60047f7f7f7f0060017f017e60037e7e7f006000017f60017e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000203656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000203656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000903656e760d706c61746f6e5f72657475726e0000035e5d06000200000200060104050a0a0301030101000100010d000800030002020201000202060703010001000000070003040002020405000301020001000200030301010100000808080000010400030100040703040504000605010109000405017001010105030100020608017f0141a089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003006696e766f6b6500140adf735d040010640b2201017f230041106b22022400200041b8026a20022001100f1010200241106a24000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204104f21022000200136020420002004410172360200200020023602080b2002200320011065200120026a41003a000020000b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210610b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b2003104f2201200420021065200020023602042000200341017236020020002001360208200120026a41003a00000b0b2701017f23004180016b22022400200041d0026a200241086a20011012101320024180016a24000b2301017f0340200020026a200120026a100f1a2002410c6a220241f800470d000b20000b2501017f0340200241f800470440200020026a200120026a10102002410c6a21020c010b0b0bbb0c02067f017e230041b0066b22002400106410072201101522021008200041a8016a200041086a20022001101622014100101702400240200041a8016a10182206500d00418008101920065104402001101a200041a8016a101b101c0c020b41850810192006510440200042003703a005200041a8056a101d2102200041003b01b405200041b5056a21032001101e410547044010000b200041a8016a2001410110172000200041a8016a10183703a005200041a8016a200141021017200041a8016a2002101f200041a8016a2001410310172000200041a8016a10203a00b405200041a8016a200141041017200041a8016a20031021200041a8016a101b210120002903a0052106200041306a2002100f2102200141c8026a200637030020002d00b405210320002d00b505210420012002100e200141c8036a20043a0000200141c4026a20033a00002001101c0c020b419608101920065104402001101e410247044010000b200041a8016a200141011017200041a8016a10182106200041a8016a101b220141c8026a20063703002001101c0c020b41a508101920065104402001101a200041a8016a101b220241c8026a2903002106200041a0056a10222201200610231024200120061025220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b2002101c0c020b41b40810192006510440200041003a00a0052001101e410247044010000b200041a8016a200141011017200041a8016a200041a0056a1021200041a8016a101b220141c8036a20002d00a0053a00002001101c0c020b41bc08101920065104402001101a200041a8016a101b220341c8036a2d00002102200041306a10222101200041b8056a4100360200200041b0056a4200370300200041a8056a4200370300200042003703a005200041a0056a2002102620002802a0052104200041a0056a4104721027200120041024200120021028200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b2003101c0c020b41c40810192006510440200041306a101d21022001101e410247044010000b200041a8016a200141011017200041a8016a2002101f200041a8016a101b2201200041a0056a2002100f100e2001101c0c020b41cd08101920065104402001101a200041206a200041a8016a101b220341b8026a100f2101200041306a10222102200041b8056a4100360200200041b0056a4200370300200041a8056a4200370300200042003703a005200041a0056a20004198066a2001100f1029210420002802a0052105200441046a10272002200510242002200041a0056a2001100f102a220128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b2003101c0c020b41d608101920065104402001101e410247044010000b200041a8016a200141011017200041a8016a10202101200041a8016a101b220241c4026a20013a00002002101c0c020b41de08101920065104402001101a200041a8016a101b220341c4026a2d00002102200041306a10222101200041b8056a4100360200200041b0056a4200370300200041a8056a4200370300200042003703a005200041a0056a2002102620002802a0052104200041a0056a4104721027200120041024200120021028200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b2003101c0c020b41e60810192006510440200041306a41f800102b1a200041306a102c21022001101e410247044010000b200041a8016a200141011017200041a8016a2002102d200041a8016a101b2201200041a0056a2002101210112001101c0c020b41f70810192006520d002001101a200041a0056a200041a8016a101b220341d0026a1012210120004198066a10222102200041c8006a4100360200200041406b4200370300200041386a420037030020004200370330200041306a2001102e210420002802302105200441046a102720022005102420022001102f220128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b2003101c0c010b10000b1030200041b0066a24000b9b0101047f230041106b220124002001200036020c2000047f419c09200041086a22024110762200419c092802006a2203360200419809419809280200220420026a41076a417871220236020002400240200341107420024d0440419c09200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104106241086a0541000b2100200141106a240020000b0c00200020012002411c10310bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001106920012003280208200328020c103f36020c200320011069410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410311a200341106a24000f0b20032001106941002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103f10682001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b22012400200010320240024020001033450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001034200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101e410147044010000b0b8509010d7f230041b0026b22042400200010351a20004198016a419801102b10352108200041b0026a220142beef86b0c8a9efb1af7f370300200041b8026a10352106200441c8006a102220012903001025220128020c200141106a28020047044010000b0240200128020022072001280204220910092205450d002004410036023820044200370330200441306a2005103620072009200428023022022004280234220b20026b100a417f470440200441e0016a200241016a200b2002417f736a101620061037200521030b2002450d00200420023602340b200128020c22020440200120023602100b20034504402006200810380b200042003702d00341002101200041f0036a4100360200200041e8036a22064200370200200041e0036a220242bdef86b0c8a9efb1af7f370300200041d8036a4100360200200441306a102220022903001025220928020c200941106a28020047044010000b200041ec036a2108024020092802002202200928020422031009220c450d002004410036022820044200370320200441206a200c1036200220032004280220220a20042802242205200a6b100a417f47044002400240200441086a200a41016a2005200a417f736a10162202280204450d0020022802002d000041c001490d002002101e210120002802f00320002802e80322036b4198016d20014904402006200441c8006a200120002802ec0320036b4198016d200041f0036a10392201103a2001103b0b20044188026a20024101103c2101200441f8016a20024100103c2105200041f0036a210d20012802042102034020052802042002464100200128020822032005280208461b0d02200441e0016a20022003411c1031200441c8006a103522021037024020002802ec03220320002802f00349044020032002103d200820082802004198016a3602000c010b20044198026a2006200320062802006b4198016d220341016a103e2003200d1039210320042802a0022002103d200420042802a0024198016a3602a00220062003103a2003103b0b20012001280204220220012802086a410020021b22023602042001280200220304402001200336020820022003103f2107027f2001280204220b4504404100210241000c010b410021024100200128020822032007490d001a200b2102200320072007417f461b0b210320012002ad2003ad42208684370204200141002001280200220720036b2203200320074b1b3602000c0105200141003602080c010b000b000b10000b200c21010b200a450d002004200a3602240b200928020c22020440200920023602100b024020010d0020002802d403220320002802d00322026b4198016d220520002802f00320002802e80322016b4198016d4d04402005200828020020016b4198016d22074b04402002200220074198016c6a2205200110401a20052003200810410c020b2006200220032001104010420c010b2001044020061043200041003602f003200042003702e8030b200020062005103e2205104422013602e803200020013602ec032000200120054198016c6a3602f00320022003200810410b200441b0026a240020000ba00601097f230041d0006b22032400200341186a10222201200041e0036a220229030010231024200120022903001025220428020c200441106a28020047044010000b2004280204210620042802002109200310222108200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330027f20002802e803200041ec036a2802004604402003410136023041010c010b200341306a41001045210220002802ec03210520002802e8032101037f2001200546047f2002410110451a20032802300520022001104620014198016a21010c010b0b0b2101200341306a41047210272008200341306a1047220710482008200728020420016a20072802006b1024200820002802ec0320002802e8036b4198016d1049210220002802ec03210520002802e803210103402001200547044020022001104a20014198016a21010c010b0b0240200228020c200241106a280200460440200241046a2101200228020021050c010b200241046a2101100020022802002105200228020c2002280210460d0010000b2009200620052001280200100b200728020022010440200720013602040b200228020c22010440200220013602100b200428020c22010440200420013602100b200041e8036a104b200041d0036a104b200341186a10222201200041b0026a220229030010231024200041b8026a2104200120022903001025220228020c200241106a28020047044010000b2002280204210720022802002108200310222101200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330200341306a2004104620032802302106200341306a41047210272001200341306a1047220510482001200620052802046a20052802006b102420012004104a0240200128020c200141106a280200460440200141046a2104200128020021060c010b200141046a2104100020012802002106200128020c2001280210460d0010000b2008200720062004280200100b200528020022040440200520043602040b200128020c22050440200120053602100b200228020c22010440200220013602100b200341d0006a24000b190020004200370200200041086a41003602002000104c20000b2501017f02402000280204450d0020002802002d000041c001490d002000104d21010b20010ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a101d1a0c010b200241186a200010342000104e21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206104f21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1050200241206a24000b7d01037f230041106b22012400200010320240024020001033450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001034200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b0e002001200010204100473a00000b29002000410036020820004200370200200041001051200041146a41003602002000420037020c20000b5101037f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001052210220012802002103200241046a1027200141206a240020030b1300200028020820014904402000200110510b0b08002000200110530b0a0020002001ad10541a0bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001055200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011056200441106a24000b0a0020002001ad10531a0ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002105720026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110580c010b20000b2201200128020020036a36020020000b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a105920042001200220002802006a10042000105a20000be10201027f02402001450d00200041003a0000200020016a2203417f6a41003a000020014103490d00200041003a0002200041003a00012003417d6a41003a00002003417e6a41003a000020014107490d00200041003a00032003417c6a41003a000020014109490d002000410020006b41037122026a220341003602002003200120026b417c7122026a2201417c6a410036020020024109490d002003410036020820034100360204200141786a4100360200200141746a410036020020024119490d002003410036021820034100360214200341003602102003410036020c200141706a41003602002001416c6a4100360200200141686a4100360200200141646a41003602002002200341047141187222026b2101200220036a2102034020014120490d0120024200370300200241186a4200370300200241106a4200370300200241086a4200370300200241206a2102200141606a21010c000b000b20000b2c01037f200041f8006a21022000210103402001101d21032001410c6a21012003410c6a2002470d000b20000b7a01037f230041306b2202240002402000280204044020002802002d000041bf014b0d010b10000b2000104d410a47044010000b03402003410a460440200241306a240005200241206a101d2104200241086a200020031017200241086a2004101f2001200410502001410c6a2101200341016a21030c010b0b0b4a01027f230041106b2203240020004100104521000340200241f8004645044020002003200120026a100f10291a2002410c6a21020c010b0b2000410110452102200341106a240020020b4601027f230041106b220224002000410a1049210341002100037f200041f80046047f200241106a240020030520032002200020016a100f102a1a2000410c6a21000c010b0b0b880101037f4188094101360200418c09280200210003402000044003404190094190092802002201417f6a220236020020014101484504404188094100360200200020024102746a22004184016a280200200041046a2802001103004188094101360200418c0928020021000c010b0b4190094120360200418c09200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106620024f0d002003410471044010000c010b200042003702000b02402003411071450d002000106620024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001032200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001104e2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b11002000101d1a200041186a102c1a20000bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001104f21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110621a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b8d0101017f230041306b220224002002200041001017200241186a200241001017200241186a2001101f200241186a2002410110172001200241186a10203a000c200241186a2000410110172001200241186a1018370310200241186a200041021017200241186a200141186a102d200241186a200041031017200241186a20014190016a1021200241306a24000b3400200020011010200020012d000c3a000c20002001290310370310200041186a200141186a1013200020012d0090013a0090010b4e01017f2000410036020c200041106a2003360200200104402001104421040b200020043602002000200420024198016c6a22023602082000200420014198016c6a36020c2000200236020420000b930101027f200028020421022000280200210303402002200346450440200128020441e87e6a200241e87e6a2202103d2001200128020441e87e6a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2c01027f20002802082101200028020421020340200120024704402000200141e87e6a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001106920004100200428020c2201200428020822022001103f22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b7e01037f20002001290200370200200041086a200141086a2802003602002001104c200020012d000c3a000c20002001290310370310411821020340200020026a2204200120026a2203290200370200200441086a200341086a2802003602002003104c2002410c6a2202419001470d000b200020012d0090013a0090010b3001017f2001200028020820002802006b4198016d2200410174220220022001491b41ebd0bc0d200041b5a8de06491b0b2701017f230041206b22022400200241086a200020014114103110662100200241206a240020000b28000340200020014645044020022000103820024198016a210220004198016a21000c010b0b20020b6a01017f03402000200146450440200228020022032000100f1a20032000410c6a2d00003a000c2003200041106a290300370310200341186a200041186a10121a200320004190016a2d00003a009001200220022802004198016a36020020004198016a21000c010b0b0b0900200020013602040b0b002000200028020010420b0a0020004198016c104f0bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031058280200210120022003417f6a3602002007105b4180104f044020072000410c6a280200417c6a10560b200141384f047f2001105720016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110580c020b20000c010b02402007105b0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a105c0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020104f2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a105d220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a105e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002105f200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a106022013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a105e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002105f200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a105c0c010b20042001410175410120011b20032005105e2102418020104f2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a105d22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200105e21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003105f200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002105f052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a106022013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210105e21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006105f200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071055200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b2f00200041001045220020011063200020012903101052200141186a102e220020012d00900110262000410110451a0b3a01017f200041003602082000420037020020004101104f2201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105120002802040520020b20002802006a2003200110621a2000200028020420016a3602040b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374104f0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110621a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a105941004100200120002802006a10022000105a20000bf90101047f230041e0006b220224002000410410492100200241186a4100360200200241106a4200370300200241086a420037030020024200370300200220011063200220012903101052200141186a2203102e220420012d00900110262000200228020010242000410210492100200241d8006a4100360200200241d0006a4200370300200241c8006a420037030020024200370340200241406b200241306a2001100f1029220520012d000c10262000200228024010242000200241206a2001100f102a220020012d000c1028200541046a10272000200129031010252003102f20012d0090011028200441046a1027200241e0006a24000b0e0020002802000440200010430b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001069200128020c210003402000450d01200141002001280208220320032000103f22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bff0201037f200028020445044041000f0b2000103241012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0b002000410120001b10150b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a2802003602002001104c0b2f01017f2000280208200149044020011015200028020020002802041062210220002001360208200020023602000b0b08002000200110540b2a01017f2000420020011005200028020422026a105942002001200220002802006a10062000105a20000b8b0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002105720026a0520020b41016a21030b027f200041186a28020022020440200041086a280200200041146a280200200210580c010b20000b2202200228020020036a36020020000b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b3601017f2000280208200149044020011015200028020020002802041062210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1059200120002802006a22012002200110020c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a105d22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a105e2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003105f200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110610b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274104f21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110610b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210621a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3201017f230041106b2202240020004100104520022001100f1029220020012d000c10262000410110451a200241106a24000b3501017f230041106b220041a0890436020c419409200028020c41076a41787122003602004198092000360200419c093f003602000b10002002044020002001200210621a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010672000104e6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f2001104e220220012802044b044010000b2000200120011067200210680b0b8f0101004180080b8701696e6974007365745f73747564656e745f696e666f007365745f73747564656e745f6964006765745f73747564656e745f6964007365745f736578006765745f736578007365745f6e616d65006765745f6e616d65007365745f616765006765745f616765007365745f61727261795f636f75727365006765745f61727261795f636f75727365"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SET_STUDENT_ID = "set_student_id"; - - public static final String FUNC_GET_STUDENT_ID = "get_student_id"; - - public static final String FUNC_SET_SEX = "set_sex"; - - public static final String FUNC_GET_SEX = "get_sex"; - - public static final String FUNC_SET_NAME = "set_name"; - - public static final String FUNC_GET_NAME = "get_name"; - - public static final String FUNC_SET_AGE = "set_age"; - - public static final String FUNC_GET_AGE = "get_age"; - - public static final String FUNC_SET_ARRAY_COURSE = "set_array_course"; - - public static final String FUNC_GET_ARRAY_COURSE = "get_array_course"; - - public static final String FUNC_SET_STUDENT_INFO = "set_student_info"; - - protected ReferenceDataTypeComplexContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeComplexContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeComplexContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeComplexContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeComplexContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeComplexContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall set_student_id(Uint64 sId) { - final WasmFunction function = new WasmFunction(FUNC_SET_STUDENT_ID, Arrays.asList(sId), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_student_id(Uint64 sId, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_STUDENT_ID, Arrays.asList(sId), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_student_id() { - final WasmFunction function = new WasmFunction(FUNC_GET_STUDENT_ID, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall set_sex(Boolean sex) { - final WasmFunction function = new WasmFunction(FUNC_SET_SEX, Arrays.asList(sex), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_sex(Boolean sex, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_SEX, Arrays.asList(sex), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_sex() { - final WasmFunction function = new WasmFunction(FUNC_GET_SEX, Arrays.asList(), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall set_name(String name) { - final WasmFunction function = new WasmFunction(FUNC_SET_NAME, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_name(String name, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_NAME, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_name() { - final WasmFunction function = new WasmFunction(FUNC_GET_NAME, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall set_age(Uint8 age) { - final WasmFunction function = new WasmFunction(FUNC_SET_AGE, Arrays.asList(age), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_age(Uint8 age, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_AGE, Arrays.asList(age), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_age() { - final WasmFunction function = new WasmFunction(FUNC_GET_AGE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall set_array_course(String[] arrayCourse) { - final WasmFunction function = new WasmFunction(FUNC_SET_ARRAY_COURSE, Arrays.asList(arrayCourse, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_array_course(String[] arrayCourse, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_ARRAY_COURSE, Arrays.asList(arrayCourse, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_array_course() { - final WasmFunction function = new WasmFunction(FUNC_GET_ARRAY_COURSE, Arrays.asList(), String[].class); - return executeRemoteCall(function, String[].class); - } - - public RemoteCall set_student_info(Uint64 sId, String name, Uint8 age, Boolean sex) { - final WasmFunction function = new WasmFunction(FUNC_SET_STUDENT_INFO, Arrays.asList(sId,name,age,sex), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_student_info(Uint64 sId, String name, Uint8 age, Boolean sex, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_STUDENT_INFO, Arrays.asList(sId,name,age,sex), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static ReferenceDataTypeComplexContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeComplexContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeComplexContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeComplexContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeContract.java deleted file mode 100644 index f15f55abe8..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeContract.java +++ /dev/null @@ -1,151 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ReferenceDataTypeContract extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000016a1260027f7f0060017f017f60037f7f7f0060017f0060027f7f017f60037f7f7f017f60000060047f7f7f7f0060037f7e7e0060047f7f7f7f017f60017f017e60077f7f7f7f7f7f7f0060027f7e0060037e7e7f006000017f60037f7e7e017f60017e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000203656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000203656e760d726c705f753132385f73697a65001103656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e0000037978060204000100050007010000050407020401050302000101040208080102000301040204020b0101020003030204060105020a0a03010300000001000609030100010c0000000100030401050100000010000101000003040405030400020f0800010100010000010005090305020206010104070003000804050170010a0a05030100020608017f0141f08a040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974004906696e766f6b65003b090f010041010b090e1c232426292a2f340abbca01780400107c0b930c010a7f230041a0016b22042400200441186a41a008100f210a2002280208200241016a220b20022d0000220341017122051b210c2002280204200341017620051b21094100210341012106024003402006410171410020032009491b04402003200c6a2d00002205415f6a41ff017141de004921062007200541bf7f6a41ff0171411a4972210720082005419f7f6a41ff0171411a49722108200341016a21030c01050240200620072008714101737121072009450d002009210303402003450d012003200c6a21062003417f6a220521032006417f6a2d00004131470d000b0c030b0b0b417f21050b0240024002402007410171450d00200541076a20094b0d00200541016a4102490d00200941da004b0d00410021032004410036029801200442003703900120044190016a20092005417f7322086a101041012106024003402003200228020420022d00002207410176200741017122071b20086a4f044002402006410171450d034100210320044180016a1011210702400340200320054604400240200728020420042d00800122054101762203200541017122061b2208200a28020420042d00182205410176200541017122051b470d09200a280208200a41016a20051b210520060d00200741016a210603402003450d0420062d000020052d0000470d0a200541016a2105200641016a21062003417f6a21030c000b000b0520072002280208200b20022d00004101711b20036a2c000022064120722006200641bf7f6a411a491b4118744118751012200341016a21030c010b0b20072802082005200810130d060b200420071014200441406b20042004280290012004280294011015200441406b10162103200428024022050440200420053602440b200428020022050440200420053602040b20034101470d034100210720044100360260200442003703582004410036024820044200370340027f4100200428029401417a6a220620042802900122036b2205450d001a200441406b200510170340200320064704402004280244220520032d00003a00002004200541016a360244200341016a21030c010b0b2004280240210720042802440b20076b210841002103410021054100210603402006200846044002402005410820036b7441ff017145200341054871210320070440200420073602440b20030d00200428025821030c030b05200620076a2d0000200541057441e01f71722105200341056a21030340200341084e044020042005200341786a2203763a0000200441d8006a200410180c010b0b200641016a21060c010b0b200428025c200428025822036b4114470d00200441d0006a4100360200200441c8006a42003703002004420037034041002103034020034114470440200441406b20036a41003a0000200341016a21030c010b0b200428025c200428025822056b2106410021030340024020032006460d00200341134b0d00200441406b20036a200320056a2d00003a0000200341016a21030c010b0b200441106a200441d0006a280200360200200441086a200441c8006a29030037030020042004290340370300200504402004200536025c0b2004280290012203044020042003360294010b20004188016a220320032d000041016a3a0000200441d0006a2205200441106a280200360200200441c8006a2206200441086a29030037030020042004290300370340200041186a220720044190016a20011019220828020022034504404130101e220341106a2001101a1a2003412c6a4100360000200341246a42003700002003411c6a4200370000200720042802900120082003101b0b2003411c6a20042903403700002003412c6a2005280200360000200341246a20062903003700000c060b0520042802900120036a2002280208200b20071b20056a20036a41016a2d000041d0086a2d000022073a00002006200741ff0147712106200341016a21030c010b0b2003450d002004200336025c0b2004280290012203450d0020042003360294010b200441086a4200370300200441106a4100360200200442003703000c010b200441086a4200370300200441106a4100360200200442003703002004280290012203450d0020042003360294010b200441a0016a24000b1f0020004200370200200041086a41003602002000200120011033103520000bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b20002001103a2106200241186a200041086a3602002002410036021441002101200604402006101e21010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a102b200241086a102c0c010b200520014d0d002000200120046a3602040b200241206a24000b190020004200370200200041086a41003602002000102020000bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b2003101e220220062005102120002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b4601037f02402002450d0003402002450d0120002d0000220420012d00002205460440200141016a2101200041016a21002002417f6a21020c010b0b200420056b21030b20030bba0101047f20004100360208200042003702002000200128020420012d0000220241017620024101711b4101744101721010200141016a210503402003200128020420012d00002202410176200241017122021b22044f0440200028020020046a41003a000005200028020020036a2001280208200520021b20036a2d000022024105763a00002000280200200128020420012d0000220441017620044101711b6a20036a41016a2002411f713a0000200341016a21030c010b0b0bc60301057f230041206b22042400200128020421050240200320026b22064101480d002006200128020820056b4c0440034020022003460d02200520022d00003a00002001200128020441016a2205360204200241016a21020c000b000b2001200520066a200128020022066b103a2108200441186a200141086a36020020044100360214200520066b2106200804402008101e21070b200420073602082004200620076a22063602102004200720086a3602142004200636020c200441086a410472210703402002200346450440200620022d00003a00002004200428021041016a2206360210200241016a21020c010b0b200128020020052007103902402001280204220320056b220241004c0440200428021021020c010b2004200428021020052002101f20026a2202360210200128020421030b20012002360204200128020021022001200428020c3602002001280208210520012004280214360208200420033602102004200236020c2004200536021420042002360208200441086a102c200128020421050b20002005360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000ba50101027f2000280204200028020022016b210241012100037f2002047f20012d000041002000411d764101716b41b3c5d1d0027141002000411c764101716b41dde788ea037141002000411b764101716b41fab384f5017141002000411a764101716b41ed9cc2b20271410020004119764101716b41b2afa9db0371200041057441e0ffffff037173737373737321002002417f6a2102200141016a21010c010520000b0b0b2001017f20002001101e2202360200200020023602042000200120026a3602080bb70101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a103a2105200241186a200041086a3602004100210320024100360214200504402005101e21030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a102b200241086a102c0b200241206a24000b890101027f200041046a2103024020002802042200044002400340024002402002200041106a2204101d0440200028020022040d012001200036020020000f0b20042002101d450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204103520000b480020032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2000280204200310362000200028020841016a3602080ba70701057f230041e0006b220324002001411c6a22072105200721040340200528020022010440200141046a2001200141106a2002101d22061b21052004200120061b21040c010b0b0240024020042007460d002002200441106a101d0d00200341a008100f21024100210120034100360238200342003703304114101e2004411c6a4114101f2106410021054100210403402005411446044002402001044020032004410520016b74411f713a0050200341306a200341d0006a10180b200341406b20021014200341d0006a200341406b200328023020032802341015200328024022010440200320013602440b200341d0006a200328025420032802506b41066a1010200341d0006a10162101410021042003410036022820034200370320200341206a41061010200141017321054119210103402001417b460d01200328022020046a2005200176411f713a00002001417b6a2101200441016a21040c000b000b05200520066a2d0000200441087441801e71722104200141086a210103402001410548450440200320042001417b6a220176411f713a0050200341306a200341d0006a10180c010b0b200541016a21050c010b0b200328025022010440200320013602540b20034100360218200342003703100240200328023420032802306b2201450d00200341106a200110172003280234200328023022046b22014101480d00200328021420042001101f1a2003200328021420016a3602140b200341d0006a200341106a200328022020032802241015200328021022010440200320013602140b200341c8006a410036020020034200370340200341406b10202002280208200241016a20032d0000220141017122041b210502402002280204200141017620041b220141016a410a4d0440200320014101743a0040200341406b41017221040c010b200141116a4170712206101e21042003200136024420032006410172360240200320043602480b2004200520011021200120046a41003a0000200341406b41311012200341406b20032802542201200328025022056b200328024420032d0040220441017620044101711b6a10222005210403402001200546450440200341406b20042d000041a4086a2c00001012200441016a21042001417f6a21010c010b0b20050440200320053602540b200328022022010440200320013602240b200328023022010440200320013602340b20002003280248200341406b41017220032d00404101711b100f1a0c010b2000418008100f1a0b200341e0006a24000b6801047f2000280208200041016a20002d0000220241017122031b2001280208200141016a20012d0000220441017122051b2001280204200441017620051b22012000280204200241017620031b220020012000491b101322022000200149411f7420021b411f760b0b002000410120001b103c0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b100020020440200020012002101f1a0b0bf80101057f0240027f20002d0000220241017104402000280204210320002802002202417e71417f6a0c010b20024101762103410a0b220420032001200320014b1b220141106a417071417f6a410a2001410a4b1b2201460d00027f2001410a460440200041016a210520002802080c010b4100200120044d200141016a101e22051b0d0120002d0000220241017104404101210620002802080c010b41012106200041016a0b210420052004027f2002410171044020002802040c010b200241fe01714101760b41016a10212006044020002005360208200020033602042000200141016a4101723602000f0b200020034101743a00000b0b0b0020004188016a2d00000b0a00200041206a2d00000b5e01037f230041106b2203240020002003410c6a20011019220428020022024504404130101e220241106a2001101a1a200241286a4200370300200241206a42003703002000200328020c20042002101b0b200341106a2400200241206a0bfe0102027f047e230041206b22032400200141406b2002102522022903002105200241086a2903002106200010112204412810220340200341106a200520061027200320032903102207200341186a290300220810282004200329030020057ca74195086a2c000010122005420956210020064200522102200650210120072105200821062000200220011b0d000b0240200428020420042d00002200410176200041017122001b2202450d0020022004280208200441016a20001b22006a417f6a21020340200020024f0d0120002d00002101200020022d00003a0000200220013a00002002417f6a2102200041016a21000c000b000b200341206a24000b3801017f230041106b22032400200320012002108401200329030021012000200341086a29030037030820002001370300200341106a24000b7701017e20002001427f7e200242767e7c2001422088220242ffffffff0f7e7c200242f6ffffff0f7e200142ffffffff0f83220142f6ffffff0f7e22034220887c22024220887c200142ffffffff0f7e200242ffffffff0f837c22024220887c3703082000200342ffffffff0f832002422086843703000b0b00200041c8006a2d00000b900501067f230041306b22032400027f41002002280204220620022d000022054101762207200541017122051b22084102490d001a41002002280208200241016a20051b22042d00004130470d001a20042d000141f800464101740b21042003410036022820034200370320200820046b41016a41017622080440200341106a200341286a36020020032008101e220536020820032005360200200320053602042003200520086a36020c200341206a2003102b2003102c20022d00002205410176210720022802042106200541017121050b024002402006200720051b41017104402002280208200241016a20051b20046a2c0000102d2205417f460d01200320053a0000200341206a20031018200441017221040b200241016a210703402004200228020420022d00002205410176200541017122051b4904402002280208200720051b20046a22062c0000102d2105200641016a2c0000102d21062005417f460d022006417f460d022003200620054104746a3a0000200441026a2104200341206a200310180c010b0b200341003602282003280224210220032802202105200342003703200c010b41002105200328022022040440200320043602240b410021020b200341086a4200370300200341106a4200370300200341186a42003703002003420037030041002104034020044120460440200220056b2102410021040340024020022004460d002004411f4b0d00200320046a200420056a2d00003a0000200441016a21040c010b0b200041e8006a2001102e220441186a200341186a290300370000200441106a200341106a290300370000200441086a200341086a29030037000020042003290300370000200341306a240005200320046a41003a0000200441016a21040c010b0b0b6701017f20002802002000280204200141046a1039200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b4801017f415021010240200041506a41ff0171410a490d0041a97f21012000419f7f6a41ff01714106490d00200041496a417f200041bf7f6a41ff01714106491b0f0b200020016a0b7201037f230041106b2203240020002003410c6a2001101922042802002202450440413c101e220241106a2001101a1a200241346a42003700002002412c6a4200370000200241246a42003700002002411c6a42003700002000200328020c20042002101b0b200341106a24002002411c6a0bd70701097f230041206b22032400200141e8006a2002102e210b200341106a418008100f2101200341086a41003602002003420037030002400240200128020420032d0010220541017620054101711b220241406b2204410b4f0440200241d0006a4170712205101e21062003200436020420032005410172360200200320063602080c010b200320044101743a0000200341017221062004450d010b200620041030210620032d001021050b200420066a41003a0000200141016a2107200128020821092001280204200541fe0171410176200541017122081b2101027f20032d00002205410171220a450440410a2106200541017622052002200220054b1b0c010b2003280200417e71417f6a210620032802042205200220052002491b0b21042009200720081b2107024002400240027f02400240200420056b20066a20014f044020032802082003410172200a1b21064100210920012004460440200121080c050b200520046b220a450440200421080c050b20012004490d01200620074f0d02200520066a20074d0d02200420066a20074d04402007200120046b6a21070c030b2006200720041031200120076a2107200120046b21012004210941000c030b20032006200120056a20046b20066b200520042001200710320c050b2006200720011031200120066a200420066a200a1031200421080c030b20040b2108200620096a220420016a200420086a200a10310b200620096a2007200110310b200120086b20056a2101024020032d00004101710440200320013602040c010b200320014101743a00000b200120066a41003a00000b2003410172210541002101034020014120464504402003280208200520032d00004101711b20026a2001200b6a22042d00004104764181086a2d00003a00002003280208200520032d00004101711b20026a41016a20042d0000410f714181086a2d00003a0000200141016a2101200241026a21020c010b0b41920810332102027f20032d00002201410171220b450440410a210420014101760c010b2003280200417e71417f6a210420032802040b21010240200420016b20024f04402002450d0120032802082005200b1b2205027f2001450440410021014192080c010b200220056a20052001103120024192086a419208200120056a4192084b1b41920820054192084d1b0b20021031200120026a2102024020032d00004101710440200320023602040c010b200320024101743a00000b200220056a41003a00000c010b20032004200120026a20046b20014100200241920810320b20002003290300370200200041086a200341086a28020036020020031020200341206a24000bb90301027f02402001450d00200041303a0000200020016a2203417f6a41303a000020014103490d00200041303a0002200041303a00012003417d6a41303a00002003417e6a41303a000020014107490d00200041303a00032003417c6a41303a000020014109490d002000410020006b41037122026a220341b0e0c081033602002003200120026b417c7122026a2201417c6a41b0e0c0810336020020024109490d00200341b0e0c08103360208200341b0e0c08103360204200141786a41b0e0c08103360200200141746a41b0e0c0810336020020024119490d00200341b0e0c08103360218200341b0e0c08103360214200341b0e0c08103360210200341b0e0c0810336020c200141706a41b0e0c081033602002001416c6a41b0e0c08103360200200141686a41b0e0c08103360200200141646a41b0e0c081033602002002200341047141187222026b2101200220036a2102034020014120490d01200242b0e0c08183868c9830370300200241186a42b0e0c08183868c9830370300200241106a42b0e0c08183868c9830370300200241086a42b0e0c08183868c9830370300200241206a2102200141606a21010c000b000b20000b0f0020020440200020012002107a0b0ba80101027f027f20002d0000410171044020002802080c010b200041016a0b2108416f2107200141e6ffffff074d0440410b20014101742207200120026a220120012007491b220141106a4170712001410b491b21070b2007101e21012005044020012006200510210b200320046b22030440200120056a200420086a200310210b200020013602082000200320056a220536020420002007410172360200200120056a41003a00000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b0b00200041f0006a2d00000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101e21032000200236020420002004410172360200200020033602080b2003200120021021200220036a41003a00000bec0101037f200120002001463a000c03400240024020002001460d00200128020822022d000c0d002002200228020822032802002204460440024020032802042204450d0020042d000c0d002004410c6a21010c030b20012002280200470440200210372002280208220228020821030b200241013a000c200341003a000c200310380f0b02402004450d0020042d000c0d002004410c6a21010c020b20012002280200460440200210382002280208220228020821030b200241013a000c200341003a000c200310370b0f0b200241013a000c200320002003463a000c200141013a0000200321010c000b000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b270020022002280200200120006b22016b2202360200200141014e0440200220002001101f1a0b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0baf0302047f017e230041d0016b22012400107c10072200103c22021008200141186a200120022000103d22004100103e02400240200141186a103f2204500d0041d0091040200451044020001041200141186a104222004188016a41003a0000200010430c020b41d509104020045104402000410110440c020b41e309104020045104402000410210450c020b41f209104020045104402000410310460c020b41f909104020045104402000410410460c020b41870a10402004510440200141a8016a10112102200142003703b80120001047410347044010000b200141186a20004101103e200141186a20021048200141186a20004102103e2001200141186a103f3703b801200141186a104222002103200141c0016a2002101a210220012903b8012104200341406b200210252202420037030820022004370300200010430c020b41920a104020045104402000410510450c020b41a10a104020045104402000410610460c020b41af0a104020045104402000410710440c020b41ba0a104020045104402000410810450c020b41c90a10402004520d002000410910460c010b10000b1049200141d0016a24000b9b0101047f230041106b220124002001200036020c2000047f41ec0a200041086a2202411076220041ec0a2802006a220336020041e80a41e80a280200220420026a41076a417871220236020002400240200341107420024d044041ec0a200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101f41086a0541000b2100200141106a240020000b0c00200020012002411c104a0bcd0202067f017e230041106b220324002001280208220520024b0440200341086a200110810120012003280208200328020c107f36020c20032001108101410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114104a1a200341106a24000f0b2003200110810141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004107f1080012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b220124002000104b024002402000104c450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000104d200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001047410147044010000b0ba41e02137f047e230041c0026b2201240020004200370204200042eac5a8f2c5f08089063703102000411c6a220b42003702002000200041046a220e3602002000200b360218200141c8016a104e22092000290310104f200928020c200941106a28020047044010000b200041186a2105024020092802002204200928020422031009220f450d002001410036022020014200370318200141186a200f10102004200320012802182206200128021c20066b100a417f47044002400240200141b0016a2001280218220241016a200128021c2002417f736a103d2202280204450d0020022802002d000041c001490d00200141a0016a2002105020014190016a200210512001418c016a2110200141cc006a220341106a2106200341086a2107034020012802a40120012802940146044020012802a801200128029801460d030b200141f8016a200141a0016a1052200141406b10112104200641003602002007420037020020034200370200200141f8016a1053410247044010000b200141e8016a1011210220014198026a200141f8016a4100103e20014198026a20021048200420021054200141106a22084100360200200141086a220a42003703002001420037030020014198026a200141f8016a4101103e20014198026a104b200141b8026a20014198026a104d20012802bc02210202400240200128029c02450d00200241144b0d002001280298022d000041c001490d010b10000b20014188016a220c410036020020014180016a221142003703002001420037037820102002411420024114491b22026b20012802b8022002101f1a200141386a200c2802002202360200200141306a2011290300221437030020082002360200200a201437030020012001290378221537032820012015370300200620023600002007201437000020032015370000200520014198026a2004101922082802004504404130101e22022001290340370210200241186a200141c8006a280200360200200410202002412c6a2006280200360200200241246a20072902003702002002411c6a2003290200370200200520012802980220082002101b0b200141a0016a10550c000b000b10000b200f21020b20012802182204450d002001200436021c0b200928020c22040440200920043602100b024020020d002000280200210202402000280220450d00200028021821042000200b36021820004100360220200028021c21032000410036021c2003410036020820042802042203200420031b2103034020032204450d012002200e470440200441106a200241106a105621062004412c6a2002412c6a280000360000200441246a200241246a2900003700002004411c6a200229001c370000024020042802082203450440410021030c010b2004200328020022074604402003410036020020032802042207450d012007105721030c010b200341003602042007450d002007105721030b2005200141406b2006105821062005200128024020062004101b2002105921020c010b0b0340200428020822040d000b200e21020b03402002200e460d014130101e220441106a2203200241106a105a2005200141406b2003105821032005200128024020032004101b2002105921020c000b000b2000412c6a22074200370200200041c4006a220a4200370200200041386a22024299ecd9cdfc8bc4e36137030020002007360228200041406b2204200a360200200141c8016a104e22082002290300104f200828020c200841106a28020047044010000b024020082802002205200828020422031009220c450440410021020c010b41002102200141003602f001200142003703e801200141e8016a200c10102005200320012802e801220620012802ec0120066b100a417f47044002400240200141b0016a20012802e801220241016a20012802ec012002417f736a103d2202280204450d0020022802002d000041c001490d00200141286a20021050200120021051200141d8006a21060340200128022c200128020446044020012802302001280208460d030b200141f8016a200141286a1052200141406b101121032006420037030020014200370350200141f8016a1053410247044010000b200141f8006a1011210220014198026a200141f8016a4100103e20014198026a2002104820032002105420014198026a200141f8016a4101103e20014198026a104b20014198026a104c210202400240200128029c02450d002002450d002001280298022d000041c001490d010b10000b200141a0016a20014198026a104d20012802a401220241114f044010000b4200211420012802a001210542002115034020020440201542088620144238888421152002417f6a210220053100002014420886842114200541016a21050c010b0b2006201537030020012014370350200420014198026a2003101922052802004504404130101e220241186a20012802483602002002200129034037021020031020200241286a2006290300370300200241206a2001290350370300200420012802980220052002101b0b200141286a10550c000b000b10000b200c21020b20012802e8012205450d00200120053602ec010b200828020c22050440200820053602100b024020020d002000280228210202402000280248450d00200028024021052000200a3602402000410036024820002802442103200041003602442003410036020820052802042203200520031b2103034020032205450d0120022007470440200541106a200241106a1056210620022903202114200541286a200241286a290300370300200541206a2014370300024020052802082203450440410021030c010b2005200328020022084604402003410036020020032802042208450d012008105721030c010b200341003602042008450d002008105721030b2004200141406b2006105821062004200128024020062005101b2002105921020c010b0b0340200528020822050d000b200721020b034020022007460d014130101e220541106a2203200241106a105b2004200141406b2003105821032004200128024020032005101b2002105921020c000b000b200041d4006a220b4200370200200041ec006a22124200370200200041e0006a22024282fda7eb84ecfcdf4a3703002000200b360250200041e8006a22052012360200200141286a104e220d2002290300104f200d28020c200d41106a28020047044010000b0240200d2802002204200d280204220310092213450440410021020c010b410021022001410036022020014200370318200141186a201310102004200320012802182206200128021c20066b100a417f4704400240024020012001280218220241016a200128021c2002417f736a103d2202280204450d0020022802002d000041c001490d00200141a0016a2002105020014190016a20021051200141b8026a210f200141cc006a220341186a2106200341106a2107200341086a2108034020012802a40120012802940146044020012802a801200128029801460d030b200141f8006a200141a0016a1052200141406b1011210420064200370200200742003702002008420037020020034200370200200141f8006a1053410247044010000b200141e8016a1011210220014198026a200141f8006a4100103e20014198026a20021048200420021054200141e0016a220a4200370300200141d8016a220c4200370300200141d0016a22114200370300200142003703c801200141b0016a200141f8006a4101103e200141b0016a104b200141b8026a200141b0016a104d20012802bc0221020240024020012802b401450d00200241204b0d0020012802b0012d000041c001490d010b10000b200141b0026a220e4200370300200141a8026a22104200370300200141a0026a220942003703002001420037039802200f2002412020024120491b22026b20012802b8022002101f1a201120092903002215370300200c20102903002216370300200a200e2903002217370300200120012903980222143703f801200120143703c80120062017370000200720163700002008201537000020032014370000200520014198026a20041019220a280200450440413c101e22022001290340370210200241186a200141c8006a28020036020020041020200241346a20062902003702002002412c6a2007290200370200200241246a20082902003702002002411c6a20032902003702002005200128029802200a2002101b0b200141a0016a10550c000b000b10000b201321020b20012802182204450d002001200436021c0b200d28020c22040440200d20043602100b024020020d002000280250210202402000280270450d00200028026821042000201236026820004100360270200028026c21032000410036026c2003410036020820042802042203200420031b2103034020032204450d012002200b470440200441106a200241106a10562106200441346a200241346a2900003700002004412c6a2002412c6a290000370000200441246a200241246a2900003700002004411c6a200229001c370000024020042802082203450440410021030c010b2004200328020022074604402003410036020020032802042207450d012007105721030c010b200341003602042007450d002007105721030b2005200141406b2006105821062005200128024020062004101b2002105921020c010b0b0340200428020822040d000b200b21020b03402002200b460d01413c101e220441106a2203200241106a105c2005200141406b2003105821032005200128024020032004101b2002105921020c000b000b41002102200041003a007820004180016a220542cec1cdc9eeefe3de0d370300200141406b104e22032005290300104f200328020c200341106a28020047044010000b0240200328020022052003280204220410092206450d002001410036028002200142003703f801200141f8016a200610102005200420012802f801220720012802fc0120076b100a417f47044020014198026a20012802f801220241016a20012802fc012002417f736a103d2202104b024002402002104c450d002002280204450d0020022802002d000041c001490d010b10000b200141c8016a2002104d20012802cc01220241024f044010000b4100210420012802c80121050340200204402002417f6a210220052d00002104200541016a21050c010b0b200020043a008801200621020b20012802f8012205450d00200120053602fc010b200328020c22050440200320053602100b2002450440200020002d00783a0088010b200141c0026a240020000be814020c7f047e23004190026b22012400200141d0006a104e220420004180016a2202290300105d105e20042002290300104f200428020c200441106a28020047044010000b2004280204210520042802002106200141e0016a104e210220002d008801105f21072002200141c0016a1060220310612002200720032802046a20032802006b105e200220002d00880110620240200228020c200241106a280200460440200241046a2107200228020021090c010b200241046a2107100020022802002109200228020c2002280210460d0010000b2006200520092007280200100b200328020022050440200320053602040b200228020c22030440200220033602100b200428020c22020440200420023602100b200141186a104e2208200041e0006a2202290300105d105e20082002290300104f200828020c200841106a28020047044010000b2008280204210b2008280200210c2001104e210a200141c8006a4100360200200141406b4200370300200141386a4200370300200142003703300240200041f0006a280200450440200141306a10630c010b200041ec006a2107200141306a410010642109200141dc006a2106200028026821050340200520074604402009410110641a05200141d0006a200541106a105c4100210220094100106420014180026a200141d0006a101a1065210320014198016a200641186a290000220d37030020014190016a200641106a290000220e37030020014188016a200641086a290000220f37030020012006290000221037038001200141a8016a200f370300200141b0016a200e370300200141b8016a200d370300200141c8016a200f370300200141d0016a200e370300200141d8016a200d370300200120103703a001200120103703c001200141f8016a200d370300200141f0016a200e370300200141e8016a200f370300200120103703e001027f0340410120024120460d011a200141e0016a20026a2104200241016a210220042d0000450d000b41210b2104027f200341186a28020022020440200341086a280200200341146a280200200210660c010b20030b2202200228020020046a3602002003410110641a2005105921050c010b0b0b20012802302102200141306a4104721067200a200141306a106022061061200a200220062802046a20062802006b105e200a200028027010682103200041ec006a2105200028026821020340200220054704402003410210682204200141e0016a200241106a101a106920014198016a200241346a290000220d37030020014190016a2002412c6a290000220e37030020014188016a200241246a290000220f3703002001200229001c221037038001200141a8016a200f370300200141b0016a200e370300200141b8016a200d370300200141c8016a200f370300200141d0016a200e370300200141d8016a200d370300200120103703a001200120103703c001200141e8006a200d370300200141e0006a200e370300200141d8006a200f370300200120103703502004200141d0006a4120106a2002105921020c010b0b0240200328020c200341106a280200460440200341046a2102200328020021040c010b200341046a2102100020032802002104200328020c2003280210460d0010000b200c200b20042002280200100b200628020022020440200620023602040b200328020c22020440200320023602100b200828020c22020440200820023602100b200141c0016a104e2206200041386a2202290300105d105e20062002290300104f200628020c200641106a28020047044010000b200628020421082006280200210a200141a0016a104e2109200141f8016a4100360200200141f0016a4200370300200141e8016a4200370300200142003703e0010240200041c8006a280200450440200141e0016a10630c010b200041c4006a2104200141e0016a41001064210320002802402102200141e8006a21050340200220044604402003410110641a05200141d0006a200241106a105b20034100106420014180016a200141d0006a101a106520012903602005290300106b410110641a2002105921020c010b0b0b20012802e0012102200141e0016a41047210672009200141e0016a1060220710612009200220072802046a20072802006b105e2009200028024810682103200041c4006a2105200028024021020340200220054704402003410210682204200141d0006a200241106a101a106920042002290320200241286a290300106c2002105921020c010b0b0240200328020c200341106a280200460440200341046a2102200328020021040c010b200341046a2102100020032802002104200328020c2003280210460d0010000b200a200820042002280200100b200728020022020440200720023602040b200328020c22020440200320023602100b200628020c22020440200620023602100b200141c0016a104e22082000290310105d105e20082000290310104f200828020c200841106a28020047044010000b2008280204210b2008280200210c200141a0016a104e210a200141f8016a4100360200200141f0016a4200370300200141e8016a4200370300200142003703e0010240200041206a280200450440200141e0016a10630c010b2000411c6a2107200141e0016a410010642109200141dc006a2106200028021821050340200520074604402009410110641a05200141d0006a200541106a105a4100210220094100106420014180026a200141d0006a101a10652103200141106a200641106a2800002204360200200141086a200641086a290000220d37030020012006290000220e370300200141206a200d370300200141286a2004360200200141386a200d370300200141406b20043602002001200e3703182001200e37033020014190016a200436020020014188016a200d3703002001200e37038001027f0340410120024114460d011a20014180016a20026a2104200241016a210220042d0000450d000b41150b2104027f200341186a28020022020440200341086a280200200341146a280200200210660c010b20030b2202200228020020046a3602002003410110641a2005105921050c010b0b0b20012802e0012102200141e0016a4104721067200a20014180016a106022071061200a200220072802046a20072802006b105e200a2000280220106821052000411c6a2106200028021821020340200220064704402005410210682203200141e0016a200241106a101a1069200141106a2002412c6a2800002204360200200141086a200241246a290000220d3703002001200229001c220e370300200141206a200d370300200141286a2004360200200141386a200d370300200141406b20043602002001200e3703182001200e370330200141e0006a2004360200200141d8006a200d3703002001200e3703502003200141d0006a4114106a2002105921020c010b0b0240200528020c200541106a280200460440200541046a2102200528020021040c010b200541046a2102100020052802002104200528020c2005280210460d0010000b200c200b20042002280200100b200728020022020440200720023602040b200528020c22020440200520023602100b200828020c22020440200820023602100b20014190026a24000b8d0101037f230041d0016b2202240020024198016a10112103200241a4016a1011210420001047410347044010000b200241013602c001200220003602082002200241c0016a36020c200241086a2003106d200241086a2004106d200241086a10422100200241086a200241c0016a2003101a200241b0016a2004101a200111020020001043200241d0016a24000b890201037f23004190026b2202240020024198016a1011210320001047410247044010000b200241086a20004101103e200241086a20031048200241086a10422104200241b8016a200241086a200241a8016a2003101a2001110200200241c8016a104e210120024188026a410036020020024180026a4200370300200241f8016a4200370300200242003703f001200241f0016a200241e0016a200241b8016a101a1065210320022802f0012100200341046a106720012000105e2001200241f0016a200241b8016a101a1069200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b2004104320024190026a24000b7901027f230041b0016b2202240020001041200241086a10422103200241086a2001110100210020024198016a104e22012000105f105e200120001062200128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b20031043200241b0016a24000b2501017f02402000280204450d0020002802002d000041c001490d002000106e21010b20010ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10111a0c010b200241186a2000104d2000106f21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101e21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1054200241206a24000b880101037f41d80a410136020041dc0a2802002100034020000440034041e00a41e00a2802002201417f6a2202360200200141014845044041d80a4100360200200020024102746a22004184016a280200200041046a28020011030041d80a410136020041dc0a28020021000c010b0b41e00a412036020041dc0a200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000107d20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000107d20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000104b200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001106f2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b29002000410036020820004200370200200041001070200041146a41003602002000420037020c20000b0a00200020014200106c0b0a00200020014101107b0b0a00200020014100107b0b160020002001280204200141086a280200411c104a1a0b210002402000280204044020002802002d000041bf014b0d010b10000b2000106e0b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a280200360200200110200bb60102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a2001410020042002107f10800120002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000bd50101047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d00002205410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b2201200420021031200120026a41003a000020002d000041017104402000200236020420000f0b200020024101743a000020000f0b20002001200220016b027f2003044020002802040c010b20054101760b220320032002200410320b20000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a101d044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b330020002001101a1a2000411c6a2001411c6a280200360200200041146a200141146a2902003702002000200129020c37020c0b2901017e20002001101a1a20012903102102200041186a200141186a290300370300200020023703100b430020002001101a1a200041246a200141246a2902003702002000411c6a2001411c6a290200370200200041146a200141146a2902003702002000200129020c37020c0b5301037f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120004200106b210220012802002103200241046a1067200141206a240020030b1300200028020820014904402000200110700b0b5801027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ff01834200106b210020012802002102200041046a1067200141206a240020020b30002000410036020820004200370200200041011017200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004107020002802040520020b20002802006a20032001101f1a2000200028020420016a3602040b0b0020002001ad4200106c0b3901017f027f200041186a28020022010440200041086a280200200041146a280200200110660c010b20000b2201200128020041016a3602000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031066280200210120022003417f6a360200200710744180104f044020072000410c6a280200417c6a10730b200141384f047f2001107120016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110660c020b20000c010b0240200710740d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10750c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020101e2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1076220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10772102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021078200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a107922013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10772102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021078200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10750c010b20042001410175410120011b2003200510772102418020101e2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a107622013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200107721032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031078200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021078052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a107922013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210107721062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061078200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071072200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002107120026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110660c010b20000b2201200128020020036a36020020000b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001072200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011073200441106a24000b9f0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374101e0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001101f1a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a10830141004100200120002802006a1002200010820120000b2c01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b106a0b2a01017f2000200120021003200028020422036a10830120012002200320002802006a100420001082010b900101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003107120036a0520030b41016a21040b027f200041186a28020022030440200041086a280200200041146a280200200310660c010b20000b2203200328020020046a36020020000b2a01017f2000200220011005200028020422036a10830120022001200320002802006a100620001082010b4301017f230041206b22022400200241086a20002802002000280204280200103e200241086a2001104820002802042200200028020041016a360200200241206a24000b810101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000108101200128020c210003402000450d01200141002001280208220320032000107f22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bff0201037f200028020445044041000f0b2000104b41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2f01017f200028020820014904402001103c20002802002000280204101f210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a107622023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10772103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031078200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001107a0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101e21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001107a0b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002101f1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0be60101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110810120004100200428020c2201200428020822022001107f22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b3501017f230041106b220041f08a0436020c41e40a200028020c41076a417871220036020041e80a200036020041ec0a3f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000107e2000106f6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2701017f230041206b22022400200241086a200020014114104a107d2100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2201017f2001106f220220012802044b044010000b200020012001107e20021080010b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a108301200120002802006a22012002200110020c010b0b0b3601017f200028020820014904402001103c20002802002000280204101f210220002001360208200020023602000b200020013602040bbe0202027f047e2000027e2002500440420021022001420a800c010b0240027e200141fd00200279a76b220341c000460d001a2003413f4d0440200241c00020036bad22058620012003ad2207888421062002200788210820012005862107420021050c020b200241800120036bad2205862001200341406aad22068884210720022006882106200120058621050c010b21072002210641c00021030b03402003044020084201862006423f888422022002427f8542007c20064201862007423f88842206427f852202420a7c200254ad7c423f8722024200837d20062002420a83220154ad7d2108200620017d210620074201862005423f888421072003417f6a21032004ad20054201868421052002a741017121040c010b0b20074201862005423f888421022004ad2005420186427e83840b370300200020023703080b0bd70202004181080b43303132333435363738396162636465660030780030313233343536373839006174780071707a7279397838676632747664773073336a6e35346b686365366d7561376c0041d0080b8602ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff696e697400736574416464726573734d6170006765744164647246726f6d4d6170006765744e756d0073697a654f66416464724d617000736574553235364d6170006765745532353646726f6d4d61700073697a654f66553235364d617000736574483235364d6170006765744832353646726f6d4d61700073697a654f66483235364d6170"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETADDRFROMMAP = "getAddrFromMap"; - - public static final String FUNC_SETADDRESSMAP = "setAddressMap"; - - public static final String FUNC_GETNUM = "getNum"; - - public static final String FUNC_SIZEOFADDRMAP = "sizeOfAddrMap"; - - public static final String FUNC_SETU256MAP = "setU256Map"; - - public static final String FUNC_GETU256FROMMAP = "getU256FromMap"; - - public static final String FUNC_SIZEOFU256MAP = "sizeOfU256Map"; - - public static final String FUNC_SETH256MAP = "setH256Map"; - - public static final String FUNC_GETH256FROMMAP = "getH256FromMap"; - - public static final String FUNC_SIZEOFH256MAP = "sizeOfH256Map"; - - protected ReferenceDataTypeContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall getAddrFromMap(String key) { - final WasmFunction function = new WasmFunction(FUNC_GETADDRFROMMAP, Arrays.asList(key), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall setAddressMap(String key, String addr) { - final WasmFunction function = new WasmFunction(FUNC_SETADDRESSMAP, Arrays.asList(key,addr), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setAddressMap(String key, String addr, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETADDRESSMAP, Arrays.asList(key,addr), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getNum() { - final WasmFunction function = new WasmFunction(FUNC_GETNUM, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall sizeOfAddrMap() { - final WasmFunction function = new WasmFunction(FUNC_SIZEOFADDRMAP, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall setU256Map(String key, Uint64 value) { - final WasmFunction function = new WasmFunction(FUNC_SETU256MAP, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setU256Map(String key, Uint64 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETU256MAP, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getU256FromMap(String key) { - final WasmFunction function = new WasmFunction(FUNC_GETU256FROMMAP, Arrays.asList(key), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall sizeOfU256Map() { - final WasmFunction function = new WasmFunction(FUNC_SIZEOFU256MAP, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall setH256Map(String key, String value) { - final WasmFunction function = new WasmFunction(FUNC_SETH256MAP, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setH256Map(String key, String value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETH256MAP, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getH256FromMap(String key) { - final WasmFunction function = new WasmFunction(FUNC_GETH256FROMMAP, Arrays.asList(key), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall sizeOfH256Map() { - final WasmFunction function = new WasmFunction(FUNC_SIZEOFH256MAP, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public static ReferenceDataTypeContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeLinkedlistContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeLinkedlistContract.java deleted file mode 100644 index aec77b5f19..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeLinkedlistContract.java +++ /dev/null @@ -1,103 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ReferenceDataTypeLinkedlistContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001601160027f7f0060017f0060017f017f60037f7f7f0060027f7f017f60037f7f7f017f60000060047f7f7f7f017f60047f7f7f7f0060027f7e0060037f7e7e0060037e7e7f006000017f60037f7e7e017f60017e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e000003646306010002000004070001010103000304040700010201020002000602050301020010000200020100020001000002020001060702020201090000000001010503050e02000a0d00010404040100000000010502020005070105030503060302020408000405017001030305030100020608017f0141f088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003e06696e766f6b6500270908010041010b020e170af37b63040010690b0300010bc00101037f230041306b2202240020004188026a220320032d000041016a3a0000200241086a10102104200220032d00003a0014200420011011024020004184016a280200220320004188016a22012802004704402003200241086a1012200020002802840141106a360284010c010b200241186a20004180016a220420032000280280016b410475220041016a10132000200110142200280208200241086a10122000200028020841106a360208200420001015200010160b200241306a24000b190020004200370200200041086a41003602002000102220000b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210660b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b20031023220120042002106a200020023602042000200341017236020020002001360208200120026a41003a00000b0b130020002001101c1a200020012d000c3a000c0b3001017f2001200028020820002802006b2200410375220220022001491b41ffffffff00200041047541ffffff3f491b0b4c01017f2000410036020c200041106a2003360200200104402001102521040b200020043602002000200420024104746a22023602082000200420014104746a36020c2000200236020420000b900101027f200028020421022000280200210303402002200346450440200128020441706a200241706a220210262001200128020441706a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141706a22013602080c010b0b0b2c01017f20004180016a2101410021000340200041f800470440200020016a10182000410c6a21000c010b0b0b0b002000200028020010240b9a0201077f230041306b22042400200141b0026a2109200141a8026a210703402006200120022d0000410c6c6a22054184016a28020020054180016a28020022056b4104754f0440200041003602082000420037020020012802ac0220012802a8026b2206044020002006410c6d101a20012802a80220012802ac02200041046a101b0b200441306a240005200441086a200520086a101c2105024020012802ac02220320012802b00247044020032005101c1a200120012802ac02410c6a3602ac020c010b200441186a2007200320072802006b410c6d220341016a101d20032009101e210320042802202005101c1a20042004280220410c6a36022020072003101f200310200b200841106a2108200641016a21060c010b0b0b2301017f200020011021220236020020002002360204200020022001410c6c6a3602080b2e000340200020014645044020022802002000101c1a20022002280200410c6a3602002000410c6a21000c010b0b0ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102321022000200136020420002004410172360200200020023602080b200220032001106a200120026a41003a000020000b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0b4c01017f2000410036020c200041106a2003360200200104402001102121040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000baa0101037f200028020421022000280200210303402002200346450440200128020441746a2204200241746a2202290200370200200441086a200241086a280200360200200210222001200128020441746a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0b09002000410c6c10230b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b0b002000410120001b10280b0900200020013602040b0900200041047410230b2a0020002001290200370200200041086a200141086a28020036020020011022200020012d000c3a000c0be20502057f017e23004190036b22002400106910072201102822021008200041d8006a200020022001102922034100102a200041d8006a102b02400240200041d8006a102c450d00200028025c450d0020002802582d000041c001490d010b10000b200041386a200041d8006a102d200028023c220141094f044010000b200028023821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008102e200551044020034101102f0c020b418508102e2005510440200041206a1010210120031030410247044010000b200041d8006a20034101102a200041d8006a20011031200041d8006a10322202200041386a2001101c100f200210330c020b419708102e2005510440200041003b001e2000411f6a210120031030410347044010000b20004101360238200020033602582000200041386a36025c200041d8006a2000411e6a1034200041d8006a20011034200041d8006a1032220320002d001e410c6c6a4180016a28020020002d001f4104746a2d000c2102200041206a10352101200041d0006a4100360200200041c8006a4200370300200041406b420037030020004200370338200041386a2002103620002802382104200041386a4104721037200120041038200120021039200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310330c020b41ab08102e200551044020034102102f0c020b41bc08102e2005520d0020031030410247044010000b200041d8006a20034101102a200041d8006a103a2101200041d8006a10322102200020013a001e200041206a20022000411e6a1019200041386a10352201200041206a103b10382001200041206a103c200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200041206a103d200210330c010b10000b103e20004190036a24000b9b0101047f230041106b220124002001200036020c2000047f41e008200041086a2202411076220041e0082802006a220336020041dc0841dc08280200220420026a41076a417871220236020002400240200341107420024d044041e008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104106741086a0541000b2100200141106a240020000b0c00200020012002411c103f0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001106f20012003280208200328020c106d36020c20032001106f410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114103f1a200341106a24000f0b20032001106f41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004106d106e2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000102b200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110402204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b3901017f230041c0026b2202240020001030410147044010000b200241086a10322100200241086a200111010020001033200241c0026a24000b2501017f02402000280204450d0020002802002d000041c001490d002000104121010b20010bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10101a0c010b200241186a2000102d2000104021030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102321032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1022200241206a24000bae10020a7f027e230041d0016b2201240020001042220410432004428ddd81f9d0bba3a73c37037820044180016a1043200141306a1035220520042903781044200528020c200541106a28020047044010000b0240200528020022002005280204220310092209450d002001410036022820014200370320200141206a2009104520002003200128022022082001280224220620086b100a417f4704400240200141086a200841016a20062008417f736a10292207280204044020072802002d000041bf014b0d010b10000b20071041410a47044010000b200141d0006a21004100210303402003410a4704402001410036025020014200370348200141e8006a20072003102a02400240200128026c450d0020012802682d000041c001490d00200141e8006a103021022001280250200128024822066b4104752002490440200141c8006a200141b8016a2002200128024c20066b4104752000101422021015200210160b200141a8016a200141e8006a104620014180016a200141e8006a1047034020012802ac0120012802840146044020012802b001200128028801460d030b20014190016a200141a8016a1048200141d8006a10102102200141b8016a20014190016a4100102a200141b8016a20021031200141b8016a20014190016a4101102a2001200141b8016a103a3a00640240200128024c220220012802504904402002200141d8006a10262001200128024c41106a36024c0c010b200141b8016a200141c8006a200220012802486b410475220241016a1013200220001014210220012802c001200141d8006a1026200120012802c00141106a3602c001200141c8006a20021015200210160b200141a8016a10490c000b000b10000b20042003410c6c6a22024180016a2206104a2006200128024836020020024184016a200129024c3702002001410036025020014200370348200341016a2103200141c8006a103d0c010b0b200921020b2008450d00200120083602240b200528020c22000440200520003602100b024020020d00410021000340200041f800460d010240200020046a220241046a2802002205200228020022066b410475220720024188016a220928020020024180016a220328020022086b4104754d0440200720024184016a220228020020086b41047522094b04402006200620094104746a22032008104b1a200320052002104c0c020b2003200620052008104b10240c010b2003104a200320032007101322081025220736020020024184016a220220073602002009200720084104746a360200200620052002104c0b2000410c6a21000c000b000b41002102200441003a00f80120044180026a220042db92e2f3d284bb854e370300200141b8016a1035220320002903001044200328020c200341106a28020047044010000b0240200328020022002003280204220510092207450d002001410036027020014200370368200141e8006a200710452000200520012802682206200128026c220820066b100a417f47044020014190016a200641016a20082006417f736a10292202102b024002402002102c450d002002280204450d0020022802002d000041c001490d010b10000b200141306a2002102d2001280234220241114f044010000b20012802302100034020020440200c420886200b42388884210c2002417f6a21022000310000200b42088684210b200041016a21000c010b0b20044200200b4201837d200b420188853c008802200721020b2006450d002001200636026c0b200328020c22000440200320003602100b2002450440200420042d00f8013a0088020b200442003702900241002102200441b0026a4100360200200441a8026a22034200370200200441a0026a2200428debc585c3a7f9dbf70037030020044198026a410036020020014190016a1035220520002903001044200528020c200541106a28020047044010000b200441ac026a2106024020052802002200200528020422071009220a450d002001410036028801200142003703800120014180016a200a1045200020072001280280012209200128028401220820096b100a417f47044002400240200141e8006a200941016a20082009417f736a10292202280204450d0020022802002d000041c001490d0020021030210020042802b00220042802a80222076b410c6d20004904402003200141b8016a200020042802ac0220076b410c6d200441b0026a101e2200101f200010200b200141086a20021046200141d8006a20021047200441b0026a21080340200128020c200128025c46044020012802102001280260460d030b200141b8016a200141086a1048200141b8016a200141a8016a101022001031024020042802ac02220220042802b002490440200220012903a801370200200241086a200141b0016a2802003602002000102220062006280200410c6a3602000c010b200141306a2003200220032802006b410c6d220241016a101d20022008101e21022001280238220720012903a801370200200741086a200141b0016a2802003602002000102220012001280238410c6a36023820032002101f200210200b200141086a10490c000b000b10000b200a21020b2009450d0020012009360284010b200528020c22000440200520003602100b024020020d00200428029402220720042802900222006b410c6d220520042802b00220042802a80222026b410c6d4d04402005200628020020026b410c6d22084b0440200020002008410c6c6a22032002104d1a200320072006101b0c020b2003200020072002104d10240c010b2002044020031018200441003602b002200442003702a8020b200320032005101d101a200020072006101b0b200141d0016a240020040bc30a020d7f027e23004180016b22022400200241e0006a10352203200041a0026a2201290300104e1038200320012903001044200041a8026a2104200328020c200341106a28020047044010000b2003280204210a20032802002107200241286a103521012004103b21082001200241106a104f220510502001200820052802046a20052802006b103820012004103c0240200128020c200141106a280200460440200141046a2104200128020021080c010b200141046a2104100020012802002108200128020c2001280210460d0010000b2007200a20082004280200100b200528020022040440200520043602040b200128020c22050440200120053602100b200328020c22010440200320013602100b200041a8026a103d20004190026a103d200241286a1035220120004180026a2203290300104e1038200120032903001044200128020c200141106a28020047044010000b200128020421042001280200210a200241106a10352103200241f8006a4100360200200241f0006a4200370300200241e8006a420037030020024200370360200241e0006a200030008802220e420186200e423f87220f85200f420186200e423f8884200f85105120022802602107200241e0006a41047210372003200241e0006a104f220510502003200720052802046a20052802006b103802402003200030008802220e420186200e423f87220f85200f420186200e423f8884200f851052220328020c200341106a280200460440200341046a2107200328020021080c010b200341046a2107100020032802002108200328020c2003280210460d0010000b200a200420082007280200100b200528020022040440200520043602040b200328020c22050440200320053602100b200128020c22030440200120033602100b200241286a103522092000290378104e1038200920002903781044200928020c200941106a28020047044010000b2009280204210c2009280200210d200241106a10352106200241f8006a4100360200200241f0006a4200370300200241e8006a420037030020024200370360200241e0006a41001053200041f8016a210820004180016a22072104034002402004200847044020042802002004280204460440200241e0006a10540c020b200241e0006a410010532004280204200428020022016b2103034020030440200241e0006a41001053200241e0006a200241d0006a2001101c1055220520012d000c1036200541011053200341706a2103200141106a21010c0105200241e0006a410110530c030b000b000b200241e0006a4101105320022802602101200241e0006a410472220a103720062002104f220b105020062001200b2802046a200b2802006b10382006410a105621060340200720084704402006200728020420072802006b410475105621042007280204200728020022016b2103034020030440200441021056210520024100360278200242003703702002420037036820024200370360200241e0006a200241d0006a2001101c105520012d000c10362005200228026010382005200241406b2001101c105720012d000c1039200a1037200341706a2103200141106a21010c010b0b2007410c6a21070c010b0b0240200628020c200641106a280200460440200641046a2101200628020021030c010b200641046a2101100020062802002103200628020c2006280210460d0010000b200d200c20032001280200100b200b28020022010440200b20013602040b200628020c22010440200620013602100b200928020c22010440200920013602100b20004180016a10582000105820024180016a24000f0b2004410c6a21040c000b000b4601017f230041206b22022400200241086a20002802002000280204280200102a2001200241086a103a3a000020002802042200200028020041016a360200200241206a24000b29002000410036020820004200370200200041001059200041146a41003602002000420037020c20000b0b0020002001ad420010510bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000105a200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001105b200441106a24000b1300200028020820014904402000200110590b0b0c0020002001ad420010521a0b7d01037f230041106b220124002000102b024002402000102c450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000102d200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b9d0101027f230041306b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300024020002802002000280204460440200110540c010b2001410010532000280204210220002802002100034020002002460440200141011053052001200141206a2000101c10551a2000410c6a21000c010b0b0b2001280200210020014104721037200141306a240020000b5601027f230041106b220224002000200128020420012802006b410c6d105621032001280204210020012802002101034020002001460440200241106a240005200320022001101c10571a2001410c6a21010c010b0b0b0e0020002802000440200010180b0b880101037f41cc08410136020041d0082802002100034020000440034041d40841d4082802002201417f6a2202360200200141014845044041cc084100360200200020024102746a22004184016a280200200041046a28020011010041cc08410136020041d00828020021000c010b0b41d408412036020041d008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106b20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000106b20024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000102b41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000106f200128020c210003402000450d01200141002001280208220320032000106d22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bc90201037f200041003a0000200041f8006a2202417f6a41003a0000200041003a0002200041003a00012002417d6a41003a00002002417e6a41003a0000200041003a00032002417c6a41003a00002000410020006b41037122016a22024100360200200241f80020016b417c7122016a2203417c6a4100360200024020014109490d002002410036020820024100360204200341786a4100360200200341746a410036020020014119490d002002410036021820024100360214200241003602102002410036020c200341706a41003602002003416c6a4100360200200341686a4100360200200341646a41003602002001200241047141187222016b2103200120026a2101034020034120490d0120014200370300200141186a4200370300200141106a4200370300200141086a4200370300200141206a2101200341606a21030c000b000b20000b2c01017f200041f8006a2101034020004200370200200041086a41003602002000410c6a22002001470d000b0b0b0020002001420010521a0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102321060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110671a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b0a0020002001410110680b0a0020002001410010680b160020002001280204200141086a280200411c103f1a0bb50102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a2001410020042002106d106e20002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b1c00200028020004402000101820004100360208200042003702000b0b3600034020002001464504402002200010112002410c6a2000410c6a2d00003a0000200041106a2100200241106a21020c010b0b20020b2d00034020002001464504402002280200200010122002200228020041106a360200200041106a21000c010b0b0b2600034020002001464504402002200010112002410c6a21022000410c6a21000c010b0b20020b5101027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000420010512001280200210220014104721037200141206a240020020b3a01017f20004100360208200042003702002000410110232201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105920002802040520020b20002802006a2003200110671a2000200028020420016a3602040b890101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003106020036a0520030b41016a21040b200041186a28020022030440200041086a280200200041146a2802002003105e21000b2000200028020020046a3602000b2a01017f2000200220011005200028020422036a105c20022001200320002802006a10062000105d20000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203105e280200210120022003417f6a3602002007105f4180104f044020072000410c6a280200417c6a105b0b200141384f047f2001106020016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002105e21000c010b02402007105f0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10610c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010232105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1062220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10632102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021064200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a106522013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10632102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021064200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10610c010b20042001410175410120011b200320051063210241802010232106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a106222013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200106321032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031064200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021064052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a106522013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210106321062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061064200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007105a200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b3901017f027f200041186a28020022010440200041086a280200200041146a2802002001105e0c010b20000b2201200128020041016a3602000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002106020026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001105e0c010b20000b2201200128020020036a36020020000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410230b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110671a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a105c41004100200120002802006a10022000105d20000b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a105c20042001200220002802006a10042000105d20000b1f01017f41ec0021010340200020016a103d200141746a22014174470d000b0b2f01017f2000280208200149044020011028200028020020002802041067210220002001360208200020023602000b0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b3601017f2000280208200149044020011028200028020020002802041067210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a105c200120002802006a22012002200110020c010b0b0b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a106222023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10632103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031064200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110660b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102321040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110660b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210671a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000be50101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001106f20004100200428020c2201200428020822022001106d22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b3501017f230041106b220041f0880436020c41d808200028020c41076a417871220036020041dc08200036020041e0083f003602000b10002002044020002001200210671a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000106c200010406a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2701017f230041206b22022400200241086a200020014114103f106b2100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f20011040220220012802044b044010000b200020012001106c2002106e0b0b5201004180080b4b696e697400696e736572744e6f6465456c656d656e74006765744e6f6465456c656d656e74496e64657800636c6561724e6f6465456c656d656e740066696e644e6f6465456c656d656e74"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_INSERTNODEELEMENT = "insertNodeElement"; - - public static final String FUNC_GETNODEELEMENTINDEX = "getNodeElementIndex"; - - public static final String FUNC_CLEARNODEELEMENT = "clearNodeElement"; - - public static final String FUNC_FINDNODEELEMENT = "findNodeElement"; - - protected ReferenceDataTypeLinkedlistContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeLinkedlistContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeLinkedlistContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeLinkedlistContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeLinkedlistContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeLinkedlistContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall insertNodeElement(String nodeData) { - final WasmFunction function = new WasmFunction(FUNC_INSERTNODEELEMENT, Arrays.asList(nodeData), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall insertNodeElement(String nodeData, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_INSERTNODEELEMENT, Arrays.asList(nodeData), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getNodeElementIndex(Uint8 arrayIndex, Uint8 vectorIndex) { - final WasmFunction function = new WasmFunction(FUNC_GETNODEELEMENTINDEX, Arrays.asList(arrayIndex,vectorIndex), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall clearNodeElement() { - final WasmFunction function = new WasmFunction(FUNC_CLEARNODEELEMENT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall clearNodeElement(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CLEARNODEELEMENT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall findNodeElement(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_FINDNODEELEMENT, Arrays.asList(index), String[].class); - return executeRemoteCall(function, String[].class); - } - - public static ReferenceDataTypeLinkedlistContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeLinkedlistContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeLinkedlistContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeLinkedlistContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeMapFuncContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeMapFuncContract.java deleted file mode 100644 index 05d151b687..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeMapFuncContract.java +++ /dev/null @@ -1,127 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ReferenceDataTypeMapFuncContract extends WasmContract { - private static String BINARY_0 = "0x0061736d010000000184011360027f7f0060047f7f7f7f0060017f017f60017f0060027f7f017f60037f7f7f017f60037f7f7f0060000060047f7f7f7f017f60027f7e017f60027f7e0060037e7e7f006000017f600a7f7f7f7f7f7f7f7f7f7f017f600b7f7f7f7f7f7f7f7f7f7f7f017f600a7f7f7f7f7e7f7e7f7f7f017f60017e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000703656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000603656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000603656e760d726c705f753132385f73697a65001103656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000303656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000103656e760d706c61746f6e5f72657475726e000003656407030003000505020100000202030306040603020007020506030200120000020303020403000002020009090708020a00000000020304020500040500100304040200040000000002020505020005080305000306060101020d0f0e00070602020401000405017001050505030100020608017f0141d089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003906696e766f6b650022090a010041010b0463640e1f0aaca001640400106a0b0300010bcb0201077f230041306b22022400200041186a2105200241206a4101722107200241286a21060340200441ff0171220820014d04402006410036020020024200370320200241206a1010200241206a2002280220417e71417f6a410a20022d00204101711b1011200228022420022d0020220341017620034101711b21000340024020022008360200200241206a027f2002280228200720034101711b200041016a20021012220341004e0440200320004d0d0220030c010b20004101744101720b2200101120022d002021030c010b0b200241206a20031011200241186a200628020036020020022002290320370310200241206a10102005200241206a200410132203280200220045044041201020220020043a0010200041146a10141a200520022802202003200010150b200041146a200241106a1016200441016a21040c010b0b200241306a24000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0be40201047f0240027f20002d000022024101712203044020002802040c010b20024101760b22042001490440200120046b2204450d01027f2003044020002802002202417e71417f6a210320002802040c010b410a210320024101760b2101200320016b2004490440027f2002410171044020002802080c010b200041016a0b2105416f2102200341e6ffffff074d0440410b20034101742202200120046a220320032002491b220241106a4170712002410b491b21020b20021020210320010440200320052001106b0b200020033602082000200241017222023602000b027f2002410171044020002802080c010b200041016a0b220220016a20041069200120046a2101024020002d00004101710440200020013602040c010b200020014101743a00000b200120026a41003a00000f0b20030440200028020820016a41003a0000200020013602040f0b200020016a41016a41003a0000200020014101743a00000b0b851703107f027e037c230041306b220a2400200a200236020841b0092105200a41b00936020c4101410220001b210b200a410f6a21110340410020076b21060240034020052d00002203450d01200341254704402003411874411875200020072001200b110100200a200541016a220536020c2006417f6a2106200741016a21070c010b0b200a200541016a220536020c410021030340024002400240024020052c0000220941556a220441054b0440200941606a220441034b0d0102400240200441016b0e03030301000b200a200541016a220536020c200341087221030c060b200a200541016a220536020c200341107221030c050b200441016b0e050002000003010b0240200941506a41ff017141094d0440200a410c6a1065210d200a28020c21050c010b4100210d2009412a470d0020022802002104200a200541016a220536020c2003410272200320044100481b210320042004411f7522096a200973210d200241046a21020b41002109024020052d0000412e470d00200a200541016a220836020c200341800872210320052d0001220441506a41ff017141094d0440200a410c6a10652109200a28020c21050c010b200441ff0171412a470440200821050c010b20022802002104200a200541026a220536020c20044100200441004a1b2109200241046a21020b0240024020052c000041987f6a411f77220441094b0d000240024002400240200441016b0e09020004040403040403010b200a200541016a220836020c20052d0001220441ec004704402003418002722103200821050c050b200a200541026a220536020c20034180067221030c030b200a200541016a220836020c20052d0001220441e8004704402003418001722103200821050c040b200a200541026a220536020c200341c0017221030c020b200a200541016a220536020c20034180047221030c010b200a200541016a220536020c20034180027221030b20052d000021040b0240024002400240024002400240024002402004411874411875220c419e7f6a220841164b0440200c4125470440200c41c600460d07200c41d800470d020c080b4125200020072001200b1101000c020b200841016b0e15040600050000060000000000060200000300060000060b200c200020072001200b1101000b200a200541016a220536020c200741016a21070c0c0b200b20002007200120022802004100411020094108200341217210662107200a200541016a220536020c200241046a21020c0b0b20022802002204417f6a21060340200641016a22062d00000d000b200620046b2206200920062009491b2006200341800871220c410a761b210802402003410271220e0440200721030c010b410021060340200620076a2103200620086a220f200d4904404120200020032001200b110100200641016a21060c010b0b200f41016a21080b200241046a21020340024020042d00002207450d00200c04402009450d012009417f6a21090b2007411874411875200020032001200b110100200341016a2103200441016a21040c010b0b200e450440200321070c050b410021060340200320066a2107200620086a200d4f0d054120200020072001200b110100200641016a21060c000b000b410121060240200341027122090440200721040c010b410121030340200320076a417f6a21042003200d490440200341016a21034120200020042001200b1101000c010b0b200341016a21060b20022c0000200020042001200b110100200441016a21072009450d0203402006200d4f0d034120200020072001200b110100200741016a2107200641016a21060c000b000b200941062003418008711b220941037441e0086a2108200241076a417871220e2b0300211541002104034002402009410a490d002004411f4b0d00200a41106a20046a41303a0000200841786a21082009417f6a2109200441016a21040c010b0b027f4400000000000000002015a1201520154400000000000000006322101b22159944000000000000e0416304402015aa0c010b4180808080780b2102027f20152002b7a120082b03002217a2221644000000000000f041632016440000000000000000667104402016ab0c010b41000b210c02402016200cb8a1221644000000000000e03f644101734504402017200c41016a220cb8654101730d01200241016a21024100210c0c010b201644000000000000e03f620d00200c45200c41017172200c6a210c0b4100210802402015440000c0ffffffdf41640d00024020090440200420096a41606a2112034002402004412046044041202104201221090c010b200a41106a20046a200c200c410a6e220841766c6a4130723a0000200441016a21042009417f6a2109200c41094b210f2008210c200f0d010b0b034002402004411f4b22080d002009450d00200a41106a20046a41303a0000200441016a21042009417f6a21090c010b0b20080d01200a41106a20046a412e3a0000200441016a21040c010b20152002b7a1221544000000000000e03f64410173450440200241016a21020c010b20022002201544000000000000e03f61716a21020b03402004411f4d0440200a41106a20046a20022002410a6d220941766c6a41306a3a0000200441016a2104200241096a210820092102200841124b0d010b0b20034103712109034002402004411f4b0d0020094101470d002004200d4f0d00200a41106a20046a41303a0000200441016a21040c010b0b20034101712108200341027121090240200d2003410c714100472010726b20042004200d461b2204411f4b0d0002402010410173450440200a41106a20046a412d3a00000c010b20034104710440200a41106a20046a412b3a00000c010b2003410871450d01200a41106a20046a41203a00000b200441016a21040b024020082009720440200721080c010b410021030340200320076a2108200320046a200d4f0d014120200020082001200b110100200341016a21030c000b000b200620086a2107034020040440200420116a2c0000200020082001200b110100200741016a21072004417f6a2104200841016a21080c010b0b2009450d0003402007200d4f0d014120200020082001200b110100200741016a2107200841016a21080c000b000b200e41086a2102200a200541016a220536020c200821070c080b41102108024002400240200441ff0171220641d8004622040d00200641f800460d00200641ef00460440410821080c020b200641e200460440410221080c020b2003416f712103410a21080b2003412072200320041b2103200641e400460d01200641e900460d010b200341737121030b2003417e7120032003418008711b2103200641e900474100200641e400471b4504402003418004710440200b200020072001200241076a417871220629030022132013423f8722147c2014852013423f88a72008ad2009200d200310672107200641086a21020c030b2003418002710440200b200020072001200228020022062006411f7522046a2004732006411f7620082009200d2003106621070c020b200b200020072001027f200341c00071044020022c00000c010b2002280200220641107441107520062003418001711b0b2206411f75220420066a2004732006411f7620082009200d2003106621070c010b2003418004710440200b200020072001200241076a417871220629030041002008ad2009200d200310672107200641086a21020c020b2003418002710440200b2000200720012002280200410020082009200d2003106621070c010b200b200020072001027f200341c00071044020022d00000c010b2002280200220641ffff037120062003418001711b0b410020082009200d2003106621070b200241046a21020b200a200541016a220536020c0c050b200a200541016a220536020c200341047221030c020b200a200541016a220536020c200341027221030c010b200a200541016a220536020c200341017221030c000b000b0b4100200020072001417f6a20072001491b2001200b110100200a41306a240020070b8e0101027f200041046a21030240200028020422000440200241ff01712104024003400240024020002d0010220220044b0440200028020022020d012001200036020020000f0b200220044f0d03200041046a210320002802042202450d01200321000b20002103200221000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b190020004200370200200041086a41003602002000101020000b480020032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2000280204200310212000200028020841016a3602080b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a280200360200200110100b8e0701067f20012d0000220721052000411c6a22062103200621020340200328020022010440200141046a200120012d001020054922041b21032002200120041b21020c010b0b024020022006460d00200720022d0010490d00200220002802184604402000200210183602180b200041206a22012001280200417f6a3602002000411c6a2802002104027f0240024020022802002205450440200221030c010b20022802042201450440200221030c020b20011019220328020022050d010b200328020422050d004100210541000c010b2005200328020836020841010b210702402003200328020822002802002201460440200020053602002003200446044041002101200521040c020b200028020421010c010b200020053602040b20032d000c210020022003470440200320022802082206360208200620022802082802002002474102746a20033602002002280200220620033602082003200636020020032002280204220636020420060440200620033602080b200320022d000c3a000c2003200420022004461b21040b200041ff0171450d002004450d002007450440034020012d000c2102024020012001280208220328020047044002400240200241ff0171450440200141013a000c200341003a000c2003101a20012004200420012802002202461b2104200228020421010b20012802002203044020032d000c450d010b20012802042202044020022d000c450d020b200141003a000c0240200420012802082201460440200421010c010b20012d000c0d040b200141013a000c0f0b20012802042202044020022d000c450d010b200341013a000c200141003a000c2001101b2001280208220128020421020b2001200128020822032d000c3a000c200341013a000c200241013a000c2003101a0f0b0240200241ff0171450440200141013a000c200341003a000c2003101b20012004200420012802042202461b2104200228020021010b20012802002202044020022d000c450d010b024020012802042203044020032d000c450d010b200141003a000c20042001280208220147044020012d000c0d030b200141013a000c0f0b2002044020022d000c450d010b200341013a000c200141003a000c2001101a2001280208220128020021020b2001200128020822032d000c3a000c200341013a000c200241013a000c2003101b0f0b2001280208220220022802002001464102746a28020021010c000b000b200541013a000c0b0b3401017f02402000280204220104402001101921010c010b0340200028020822012802002000460d01200121000c000b000b20010b1401017f03402000220128020022000d000b20010b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b3c01017f230041206b22032400200320012d00003a0010200341106a4104722002101d1a200341086a200041186a200341106a101e200341206a24000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102021022000200136020420002004410172360200200020023602080b200220032001106b200120026a41003a000020000b7c01037f230041106b22042400200020012004410c6a20022d0000101322052802002203047f41000541201020220320022d00003a0010200341146a20022902043702002003411c6a2002410c6a280200360200200241046a10102001200428020c20052003101541010b3a000420002003360200200441106a24000b150020002000411c6a2200360218200042003702000b0b002000410120001b10230bec0101037f200120002001463a000c03400240024020002001460d00200128020822022d000c0d002002200228020822032802002204460440024020032802042204450d0020042d000c0d002004410c6a21010c030b200120022802004704402002101a2002280208220228020821030b200241013a000c200341003a000c2003101b0f0b02402004450d0020042d000c0d002004410c6a21010c020b200120022802004604402002101b2002280208220228020821030b200241013a000c200341003a000c2003101a0b0f0b200241013a000c200320002003463a000c200141013a0000200321010c000b000bcc0602067f017e230041b0016b22002400106a10072201102322031008200041286a200041086a200320011024220241001025200041286a102602400240200041286a1027450d00200028022c450d0020002802282d000041c001490d010b10000b20004190016a200041286a1028200028029401220141094f044010000b20002802900121030340200104402001417f6a210120033100002006420886842106200341016a21030c010b0b024002402006500d004180081029200651044020024103102a0c020b41850810292006510440200041003a009001200220004190016a102b200041286a102c220120002d009001100f2001102d0c020b419208102920065104402002102e200041286a102c220241206a2d00002103200041f8006a102f2101200041a8016a4100360200200041a0016a420037030020004198016a4200370300200042003703900120004190016a2003103021042000280290012105200441046a1031200120051032200120031033200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b2002102d0c020b419f0810292006510440200041003a00782002200041f8006a102b200041286a102c2101200020002d00783a009001200120004190016a10172001102d0c020b41b00810292006510440200041003a00900120004190016a4104721014210120021034410347044010000b200041286a2002410110252000200041286a10353a009001200041286a200241021025200041286a20011036200041286a102c210320002d0090012102200041f8006a2001101d2101200020023a00272003200041276a2001101c2003102d0c020b41be081029200651044020024104102a0c020b41cb0810292006520d002002102e200041286a102c220341206a2802002102200041f8006a102f2101200041a8016a4100360200200041a0016a420037030020004198016a4200370300200042003703900120004190016a200245ad2206103721022000280290012104200241046a1031200120041032200120061038220128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b2003102d0c010b10000b1039200041b0016a24000b9b0101047f230041106b220124002001200036020c2000047f41c809200041086a2202411076220041c8092802006a220336020041c40941c409280200220420026a41076a417871220236020002400240200341107420024d044041c809200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104105841086a0541000b2100200141106a240020000b0c00200020012002411c103a0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001107020012003280208200328020c106e36020c200320011070410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114103a1a200341106a24000f0b20032001107041002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004106e106f2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001026200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001103b2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2b01017f230041d0006b220224002000102e2002102c2100200220011103002000102d200241d0006a24000b3701017f230041206b2202240020001034410247044010000b200241086a2000410110252001200241086a10353a0000200241206a24000b830e010c7f230041d0016b2201240020004200370204200042ae97d2ffebaf938c463703102000411c6a220b42003702002000200041046a22083602002000200b360218200141c8006a102f22062000290310103c200628020c200641106a28020047044010000b200041186a2104024020062802002203200628020422051009220a450d00200141003602800120014200370378200141f8006a200a103d2003200520012802782207200128027c220920076b100a417f47044002400240200141306a200741016a20092007417f736a10242202280204450d0020022802002d000041c001490d0020014198016a2002103e20014188016a2002103f200141086a41047221050340200128029c01200128028c0146044020012802a001200128029001460d030b200141e0006a20014198016a1040200141003a0008200510142103200141e0006a1041410247044010000b200141a8016a200141e0006a410010252001200141a8016a10353a0008200141c0016a10142102200141a8016a200141e0006a41011025200141a8016a20021036200320021016200141a8016a2004200141086a101e20014198016a10420c000b000b10000b200a21020b2007450d002001200736027c0b200628020c22030440200620033602100b024020020d002000280200210202402000280220450d00200028021821032000200b36021820004100360220200028021c21052000410036021c2005410036020820032802042205200320051b2105034020052203450d0120022008470440200320022d00103a0010200341146a200241146a10431a200341106a2106024020032802082205450440410021050c010b2003200528020022074604402005410036020020052802042207450d012007104421050c010b200541003602042007450d002007104421050b2004200141a8016a200610452106200420012802a8012006200310152002101821020c010b0b0340200328020822030d000b200821020b034020022008460d0141201020220341106a2205200241106a10462004200141a8016a200510452105200420012802a8012005200310152002101821020c000b000b2000412c6a220a4200370200200041c4006a22064200370200200041386a220242ad97d2ffebaf938c463703002000200a360228200041406b22082006360200200141306a102f22092002290300103c200928020c200941106a28020047044010000b024020092802002204200928020422031009220c4504404100210c0c010b2001410036022820014200370320200141206a200c103d024020042003200128022022022001280224220520026b100a417f4604404100210c0c010b0240200141086a200241016a20052002417f736a10242204280204450d0020042802002d000041c001490d0020014188016a2004103e200141f8006a2004103f200141d4006a210b03400240200128028c01200128027c470d00200128029001200128028001470d00200128022021020c030b200141e0006a20014188016a1040200141c8006a10142105200b10142107200141e0006a1041410247044010000b200141c0016a10142102200141a8016a200141e0006a41001025200141a8016a2002103620052002101620014198016a10142102200141a8016a200141e0006a41011025200141a8016a200210362007200210160240200628020022024504402006220221040c010b20062104034002402005200241106a220310470440200228020022030d01200221040c030b200320051047450d02200241046a210420022802042203450d02200421020b20022104200321020c000b000b20042802004504404128102022032001290348370210200341186a200141d0006a28020036020020051010200341246a200b41086a2802003602002003411c6a200b29020037020020071010200820022004200310150b20014188016a10420c000b000b10000b2002450d00200120023602240b200928020c22020440200920023602100b0240200c0d002000280228210202402000280248450d0020002802402104200020063602402000410036024820002802442103200041003602442003410036020820042802042203200420031b2103034020032204450d012002200a470440200441106a200241106a104321052004411c6a2002411c6a10431a024020042802082203450440410021030c010b2004200328020022064604402003410036020020032802042206450d012006104421030c010b200341003602042006450d002006104421030b2008200141a8016a200510482105200820012802a8012005200410152002101821020c010b0b0340200428020822040d000b200a21020b03402002200a460d0141281020220441106a2203200241106a10492008200141a8016a200310482103200820012802a8012003200410152002101821020c000b000b200141d0016a240020000b8d08010a7f23004190016b22022400200241306a102f2204200041386a2201290300104a103220042001290300103c200428020c200441106a28020047044010000b200428020421092004280200210a200241086a102f2107200241f8006a4100360200200241f0006a4200370300200241e8006a4200370300200242003703600240200041c8006a280200450440200241e0006a104b0c010b200041c4006a2105200241e0006a4100104c2103200241d4006a21082000280240210103402001200546044020034101104c1a05200241c8006a200141106a104920034100104c20024180016a200241c8006a101d104d200241206a2008101d104d4101104c1a2001101821010c010b0b0b20022802602101200241e0006a4104721031200720024180016a104e2206104f2007200120062802046a20062802006b10322007200028024810502103200041c4006a2108200028024021010340200120084704402003410210502205200241e0006a200141106a101d10512005200241c8006a2001411c6a101d10512001101821010c010b0b0240200328020c200341106a280200460440200341046a2101200328020021050c010b200341046a2101100020032802002105200328020c2003280210460d0010000b200a200920052001280200100b200628020022010440200620013602040b200328020c22010440200320013602100b200428020c22010440200420013602100b200241c8006a102f22042000290310104a103220042000290310103c200428020c200441106a28020047044010000b200428020421092004280200210a200241306a102f2107200241f8006a4100360200200241f0006a4200370300200241e8006a4200370300200242003703600240200041206a280200450440200241e0006a104b0c010b2000411c6a2105200241e0006a4100104c2103200241086a41047221082000280218210103402001200546044020034101104c1a05200241086a200141106a104620034100104c20022d0008103020024180016a2008101d104d4101104c1a2001101821010c010b0b0b20022802602101200241e0006a41047210312007200241086a104e2206104f2007200120062802046a20062802006b103220072000280220105021032000411c6a210820002802182101034020012008470440200341021050220520012d001010332005200241e0006a200141146a101d10512001101821010c010b0b0240200328020c200341106a280200460440200341046a2101200328020021050c010b200341046a2101100020032802002105200328020c2003280210460d0010000b200a200920052001280200100b200628020022010440200620013602040b200328020c22010440200320013602100b200428020c22010440200420013602100b20024190016a24000b0e0020001034410147044010000b0b29002000410036020820004200370200200041001052200041146a41003602002000420037020c20000b090020002001ad10370bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001053200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011054200441106a24000b1300200028020820014904402000200110520b0b0a0020002001ad10381a0b2501017f02402000280204450d0020002802002d000041c001490d002000105521010b20010b7d01037f230041106b22012400200010260240024020001027450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001028200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10141a0c010b200241186a200010282000103b21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102021032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1016200241206a24000b8b0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002105620026a0520020b41016a21030b027f200041186a28020022020440200041086a280200200041146a280200200210570c010b20000b2202200228020020036a36020020000b2a01017f2000420020011005200028020422026a105f42002001200220002802006a10062000106020000b880101037f41b409410136020041b8092802002100034020000440034041bc0941bc092802002201417f6a2202360200200141014845044041b4094100360200200020024102746a22004184016a280200200041046a28020011030041b409410136020041b80928020021000c010b0b41bc09412036020041b809200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106c20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000106c20024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000102641012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b09002000200110381a0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102021060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110581a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b0a0020002001410110620b0a0020002001410010620b160020002001280204200141086a280200411c103a1a0b210002402000280204044020002802002d000041bf014b0d010b10000b200010550bb50102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a2001410020042002106e106f20002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b920201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210610b200120026a41003a000020002d000041017104402000200236020420000f0b200020024101743a000020000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b20031020220120042002106b200020023602042000200341017236020020002001360208200120026a41003a00000b20000b1d01017f03402000220128020022000d00200128020422000d000b20010b6201017f024020002802042203044020022d0000210203400240200220032d001049044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b1900200020012d00003a0000200041046a200141046a101d1a0bb20101067f02400240200128020420012d00002202410176200241017122031b2205200028020420002d00002202410176200241017122041b2206200520064922071b2202450d002000280208200041016a20041b21002001280208200141016a20031b210103402002450d0120002d0000220320012d00002204460440200141016a2101200041016a21002002417f6a21020c010b0b200320046b22020d010b417f200720062005491b21020b2002411f760b5c01017f0240200028020422030440034002402002200341106a1047044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b160020002001101d1a2000410c6a2001410c6a101d1a0b5101037f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001037210220012802002103200241046a1031200141206a240020030b3901017f027f200041186a28020022010440200041086a280200200041146a280200200110570c010b20000b2201200128020041016a3602000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031057280200210120022003417f6a360200200710594180104f044020072000410c6a280200417c6a10540b200141384f047f2001105620016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110570c020b20000c010b0240200710590d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a105a0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010202105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a105b220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a105c2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002105d200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a105e22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a105c2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002105d200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a105a0c010b20042001410175410120011b20032005105c210241802010202106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a105b22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200105c21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003105d200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002105d052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a105e22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210105c21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006105d200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071053200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002105620026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110570c010b20000b2201200128020020036a36020020000b3a01017f20004100360208200042003702002000410110202201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105220002802040520020b20002802006a2003200110581a2000200028020420016a3602040b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410200b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110581a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a105f41004100200120002802006a10022000106020000b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a105f20042001200220002802006a1004200010600b2f01017f2000280208200149044020011023200028020020002802041058210220002001360208200020023602000b0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001070200128020c210003402000450d01200141002001280208220320032000106e22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a105b22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a105c2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003105d200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110610b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102021040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110610b20020b3601017f2000280208200149044020011023200028020020002802041058210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a105f200120002802006a22012002200110020c010b0b0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210581a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0be50101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001107020004100200428020c2201200428020822022001106e22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b140020022003490440200120026a20003a00000b0b0300010b4501037f20002802002101034020012d000041506a41ff017141094b4504402000200141016a220336020020012c00002002410a6c6a41506a2102200321010c010b0b20020bad0101067f230041206b220b240020092009416f7120041b210c02402004450440200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a2004200420066e220e20066c6b220a4130200d200a41187441808080d000481b6a3a0000200941016a210a2009411e4b0d01200420064f210f200a2109200e2104200f0d000b0b2000200120022003200b200a2005200620072008200c10682104200b41206a240020040bba0102057f017e230041206b220b240020092009416f712004420052220a1b210c0240200a4504404100210a200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a4130200d20042004200680220f20067e7da7220a41187441808080d000481b200a6a3a0000200941016a210a2009411e4b0d01200420065a210e200a2109200f2104200e0d000b0b2000200120022003200b200a20052006a720072008200c10682109200b41206a240020090bf20401037f200a410271210d2005210b02400340200d0d010240200b20084f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410371410147210c2005210b02400340200c0d010240200b20094f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410171210c024002400240200a41107104400240200a418008710d002005450d002005200847410020052009471b0d002005417e6a2005417f6a220b200b1b200b20074110461b21050b0240200741104604400240200a412071220b0d002005411f4b0d00200420056a41f8003a0000200541016a21050c020b200b450d012005411f4b0d01200420056a41d8003a0000200541016a21050c010b20074102470d002005411f4b0d00200420056a41e2003a0000200541016a21050b2005411f4b0d01200420056a41303a0000200541016a21050c010b20050d00410021050c010b2009200a410c714100472006726b200520052009461b2205411f4b0d010b20060440200420056a412d3a0000200541016a21050c010b200a4104710440200420056a412b3a0000200541016a21050c010b200a410871450d00200420056a41203a0000200541016a21050b2002210b0240200c200d720d002005210c0340200c20094f0d0141202001200b20032000110100200c41016a210c200b41016a210b0c000b000b2004417f6a210c037f2005047f2005200c6a2c00002001200b200320001101002005417f6a2105200b41016a210b0c01050240200d450d00410020026b210503402005200b6a20094f0d0141202001200b20032000110100200b41016a210b0c000b000b200b0b0b0bdf0201027f02402001450d00200041003a0000200020016a2203417f6a41003a000020014103490d00200041003a0002200041003a00012003417d6a41003a00002003417e6a41003a000020014107490d00200041003a00032003417c6a41003a000020014109490d002000410020006b41037122026a220341003602002003200120026b417c7122026a2201417c6a410036020020024109490d002003410036020820034100360204200141786a4100360200200141746a410036020020024119490d002003410036021820034100360214200341003602102003410036020c200141706a41003602002001416c6a4100360200200141686a4100360200200141646a41003602002002200341047141187222026b2101200220036a2102034020014120490d0120024200370300200241186a4200370300200241106a4200370300200241086a4200370300200241206a2102200141606a21010c000b000b0b3501017f230041106b220041d0890436020c41c009200028020c41076a417871220036020041c409200036020041c8093f003602000b10002002044020002001200210581a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000106d2000103b6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2701017f230041206b22022400200241086a200020014114103a106c2100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f2001103b220220012802044b044010000b200020012001106d2002106f0b0bb10102004180080b58696e6974006164644d6170427955696e74006765744d6170427953697a650064656c6574654d61704279496e64657800696e736572744d617055696e7400636c6561724d617055696e74006765744d61704973456d7074790041e6080b4cf03f000000000000244000000000000059400000000000408f40000000000088c34000000000006af8400000000080842e4100000000d01263410000000084d797410000000065cdcd412564"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETMAPBYSIZE = "getMapBySize"; - - public static final String FUNC_INSERTMAPUINT = "insertMapUint"; - - public static final String FUNC_ADDMAPBYUINT = "addMapByUint"; - - public static final String FUNC_DELETEMAPBYINDEX = "deleteMapByIndex"; - - public static final String FUNC_CLEARMAPUINT = "clearMapUint"; - - public static final String FUNC_GETMAPISEMPTY = "getMapIsEmpty"; - - protected ReferenceDataTypeMapFuncContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeMapFuncContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getMapBySize() { - final WasmFunction function = new WasmFunction(FUNC_GETMAPBYSIZE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall insertMapUint(Uint8 key, String value) { - final WasmFunction function = new WasmFunction(FUNC_INSERTMAPUINT, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall insertMapUint(Uint8 key, String value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_INSERTMAPUINT, Arrays.asList(key,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeMapFuncContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeMapFuncContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeMapFuncContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeMapFuncContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall addMapByUint(Uint8 n) { - final WasmFunction function = new WasmFunction(FUNC_ADDMAPBYUINT, Arrays.asList(n), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall addMapByUint(Uint8 n, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADDMAPBYUINT, Arrays.asList(n), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall deleteMapByIndex(Uint8 key) { - final WasmFunction function = new WasmFunction(FUNC_DELETEMAPBYINDEX, Arrays.asList(key), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteMapByIndex(Uint8 key, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DELETEMAPBYINDEX, Arrays.asList(key), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall clearMapUint() { - final WasmFunction function = new WasmFunction(FUNC_CLEARMAPUINT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall clearMapUint(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CLEARMAPUINT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getMapIsEmpty() { - final WasmFunction function = new WasmFunction(FUNC_GETMAPISEMPTY, Arrays.asList(), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public static ReferenceDataTypeMapFuncContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeMapFuncContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeMapFuncContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeMapFuncContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeMapTestContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeMapTestContract.java deleted file mode 100644 index 60d24fea0e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeMapTestContract.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ReferenceDataTypeMapTestContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001591060027f7f0060017f017f60017f0060027f7f017f60037f7f7f017f60037f7f7f0060000060017f017e60047f7f7f7f0060047f7f7f7f017f60027f7e0060027f7e017f60037e7e7f006000017f60017e017f60027e7e017f02bd020e03656e760c706c61746f6e5f70616e6963000603656e760d706c61746f6e5f63616c6c6572000203656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000037473060202040108000105040204030307030300070501000202030306010405070700010001020000020100030609020100020103000300010a0000000001000201040100000404000e0002030403020100030403030a00000b0b00010001000001000409020400050405060505010103080002000405017001050505030100020608017f0141b089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000e0f5f5f66756e63735f6f6e5f65786974003906696e766f6b650028090a010041010b040f101c200ac1a70173040010770b0300010bab0301057f230041206b22012400200041406b2203200141086a410010112204280200220245044041201022220241003a0010200241146a10121a200320012802082004200210130b200241146a418008101420004190016a2203200141086a410110112204280200220245044041201022220241013a0010200241146a10121a200320012802082004200210130b200241146a4186081014200141106a2203410036020020014200370308200141086a418c08418c0810151016200041b8016a22042001411c6a200141086a1017220528020022024504404128102222022001290308370210200241186a2003280200360200200141086a10182002411c6a10121a2004200128021c2005200210130b2002411c6a418e081014200141186a220241003602002003420037030020014200370308200141086a1001200041b0026a22032001411c6a200141086a1019220428020022004504404130102222002001290308370010200041206a2002280200360000200041186a200141106a290300370000200041246a10121a2003200128021c2004200010130b200041246a4194081014200141206a24000b8e0101027f200041046a21030240200028020422000440200241ff01712104024003400240024020002d0010220220044b0440200028020022020d012001200036020020000f0b200220044f0d03200041046a210320002802042202450d01200321000b20002103200221000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b190020004200370200200041086a41003602002000101820000b480020032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2000280204200310232000200028020841016a3602080b0c00200020012001101510790b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204102221032000200236020420002004410172360200200020033602080b2003200120021078200220036a41003a00000b890101027f200041046a2103024020002802042200044002400340024002402002200041106a220410260440200028020022040d012001200036020020000f0b200420021026450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b890101027f200041046a2103024020002802042200044002400340024002402002200041106a220410270440200028020022040d012001200036020020000f0b200420021027450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b5201037f230041106b2203240020002003410c6a200110172204280200220245044041281022220241106a2001101d1a2002411c6a10121a2000200328020c2004200210130b200341106a24002002411c6a0b3601027f2000200147044020002001280208200141016a20012d0000220241017122031b2001280204200241017620031b10790b20000b0a00200041206a3502000b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204101620000b5501037f230041106b2203240020002003410c6a20012d000010112204280200220245044041301022220220012d00003a0010200241186a10121a2000200328020c2004200210130b200341106a2400200241186a0b130020002001101b1a200020012903103703100b0b0020004190026a3502000b2d01017f230041106b22032400200320023a000f200020014188026a2003410f6a101e101d1a200341106a24000b0b002000410120001b10290bec0101037f200120002001463a000c03400240024020002001460d00200128020822022d000c0d002002200228020822032802002204460440024020032802042204450d0020042d000c0d002004410c6a21010c030b20012002280200470440200210242002280208220228020821030b200241013a000c200341003a000c200310250f0b02402004450d0020042d000c0d002004410c6a21010c020b20012002280200460440200210252002280208220228020821030b200241013a000c200341003a000c200310240b0f0b200241013a000c200320002003463a000c200141013a0000200321010c000b000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040bb20101067f02400240200128020420012d00002202410176200241017122031b2205200028020420002d00002202410176200241017122041b2206200520064922071b2202450d002000280208200041016a20041b21002001280208200141016a20031b210103402002450d0120002d0000220320012d00002204460440200141016a2101200041016a21002002417f6a21020c010b0b200320046b22020d010b417f200720062005491b21020b2002411f760b3a01037f034020024114470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000bea0402057f017e230041a0036b22002400107710082201102922021009200041e0006a200020022001102a22014100102b02400240200041e0006a102c2205500d00419a08102d200551044020014101102e0c020b419f08102d200551044020014102102e0c020b41ad08102d2005510440200041286a10122102200041346a101221032001102f410347044010000b20004101360248200020013602602000200041c8006a360264200041e0006a20021030200041e0006a20031030200041e0006a103122012104200041c8006a2002101d2102200041186a2003101d2103200441186a2002101a2003101b1a200110320c020b41ba08102d20055104402001410310330c020b41cb08102d2005510440200041186a101221022001102f410247044010000b200041e0006a20014101102b200041e0006a20021034200041286a200041e0006a1031220141186a200041c8006a2002101d101a101d1a200041286a1035200110320c020b41df08102d2005510440200041003a0028200041306a220210121a2001102f410347044010000b200041e0006a20014101102b2000200041e0006a10363a0028200041e0006a20014102102b200041e0006a20021037200041e0006a1031210120002d00282103200041c8006a200210382102200020033a001820014188026a200041186a101e2002101f200110320c020b41ee08102d20055104402001410410330c020b418109102d2005520d002001102f410247044010000b200041e0006a20014101102b200041e0006a10362101200041286a200041e0006a1031220220011021200041286a1035200210320c010b10000b1039200041a0036a24000b9b0101047f230041106b220124002001200036020c2000047f41a409200041086a2202411076220041a4092802006a220336020041a00941a009280200220420026a41076a417871220236020002400240200341107420024d044041a409200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104105241086a0541000b2100200141106a240020000b0c00200020012002411c103a0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001107e20012003280208200328020c107c36020c20032001107e410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114103a1a200341106a24000f0b20032001107e41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004107c107d2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b220124002000103b024002402000103c450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000103d200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2b01017f230041c0026b220224002000103e2002103121002002200111020020001032200241c0026a24000b2501017f02402000280204450d0020002802002d000041c001490d002000103f21010b20010b4301017f230041206b22022400200241086a20002802002000280204280200102b200241086a2001103420002802042200200028020041016a360200200241206a24000bdf1a02117f017e23004180026b2201240020004200370204200042dcb0b2b4f6849e82553703102000411c6a220242003702002000200041046a36020020002002360218200041106a200041186a220210404504402002200010410b2000412c6a22024200370200200041c4006a22054200370200200041386a220342d5b6cba28cffa5b0857f37030020002002360228200041406b220220053602002003200210424504402002200041286a10430b200041d4006a22024200370200200041ec006a22054200370200200041e0006a220342c4baabc7e494cfc2f40037030020002002360250200041e8006a220220053602002003200210424504402002200041d0006a10430b200041fc006a2208420037020020004194016a220a420037020020004188016a220242d9badffb91bfe8c1273703002000200836027820004190016a2205200a360200200141f8006a1044220620022903001045200628020c200641106a28020047044010000b02402006280200220320062802042204100a220b450440410021020c010b41002102200141003602a801200142003703a001200141a0016a200b10462003200420012802a001220920012802a401220720096b100b417f47044002400240200141406b200941016a20072009417f736a102a2202280204450d0020022802002d000041c001490d00200141e0016a20021047200141c8016a20021048200141186a410472220441086a210c034020012802e40120012802cc0146044020012802e80120012802d001460d030b200141b0016a200141e0016a1049200141003a0018200410122103200141b0016a104a410247044010000b200141d8006a200141b0016a4100102b2001200141d8006a10364100473a0018200110122102200141d8006a200141b0016a4101102b200141d8006a2002103420032002104b2005200141d8006a20012d00181011220728020045044041201022220220012d00183a0010200241146a20042902003702002002411c6a200c28020036020020031018200520012802582007200210130b200141e0016a104c0c000b000b10000b200b21020b2009450d00200120093602a4010b200628020c22030440200620033602100b024020020d00200028027821020240200028029801450d0020002802900121032000200a360290012000410036029801200028029401210420004100360294012004410036020820032802042204200320041b2104034020042203450d0120022008470440200320022d00103a0010200341146a200241146a101b1a200341106a2107024020032802082204450440410021040c010b2003200428020022064604402004410036020020042802042206450d012006104d21040c010b200441003602042006450d002006104d21040b2005200141d8006a2007104e2107200520012802582007200310132002104f21020c010b0b0340200328020822030d000b200821020b034020022008460d0141201022220341106a2204200241106a10502005200141d8006a2004104e2104200520012802582004200310132002104f21020c000b000b200041a4016a22024200370200200041bc016a22054200370200200041b0016a220342ceddbba0c6d0ddf568370300200020023602a001200041b8016a220220053602002003200210404504402002200041a0016a10410b200041cc016a22024200370200200041e4016a22054200370200200041d8016a22034287979b91f5efafee64370300200020023602c801200041e0016a220220053602002003200210404504402002200041c8016a10410b200041f4016a220842003702002000418c026a220c420037020020004180026a220242d6b8dbb1d8cef088db00370300200020083602f00120004188026a2205200c360200200141186a1044220720022903001045200728020c200741106a28020047044010000b02402007280200220320072802042204100a2209450440410021020c010b41002102200141003602a801200142003703a001200141a0016a200910462003200420012802a001220620012802a401220a20066b100b417f470440024002402001200641016a200a2006417f736a102a2202280204450d0020022802002d000041c001490d00200141e0016a20021047200141c8016a20021048200141e0006a2102034020012802e40120012802cc0146044020012802e80120012802d001460d030b200141406b200141e0016a1049200141003a0058200210122103200141406b104a410247044010000b200141b0016a200141406b4100102b2001200141b0016a10363a0058200141b0016a10122104200141f8006a200141406b4101102b200141f8006a200141b0016a103720032004104b200120012903c0013703702005200141b0016a20012d00581011220428020045044041301022220320012d00583a0010200341186a2002290200370200200341206a200241086a28020036020020021018200341286a2001290370370300200520012802b0012004200310130b200141e0016a104c0c000b000b10000b200921020b2006450d00200120063602a4010b200728020c22030440200720033602100b024020020d0020002802f00121020240200028029002450d0020002802880221032000200c360288022000410036029002200028028c0221042000410036028c022004410036020820032802042204200320041b2104034020042203450d0120022008470440200320022d00103a0010200341186a200241186a101f200341106a2107024020032802082204450440410021040c010b2003200428020022064604402004410036020020042802042206450d012006104d21040c010b200441003602042006450d002006104d21040b2005200141d8006a2007104e2107200520012802582007200310132002104f21020c010b0b0340200328020822030d000b200821020b034020022008460d0141301022220341106a2204200241106a10512005200141d8006a2004104e2104200520012802582004200310132002104f21020c000b000b2000419c026a220b4200370200200041b4026a220f4200370200200041a8026a220242effad7879f9fe2829d7f3703002000200b36029802200041b0026a2205200f360200200141406b1044220d20022903001045200d28020c200d41106a28020047044010000b0240200d2802002203200d2802042204100a2210450440410021020c010b410021022001410036023820014200370330200141306a20101046200320042001280230220e20012802342208200e6b100b417f47044002400240200141186a200e41016a2008200e417f736a102a2202280204450d0020022802002d000041c001490d00200141a0016a2002104720014190016a20021048200141146a2111200141ec006a210a200141e8006a2103200141e0006a2104034020012802a40120012802940146044020012802a801200128029801460d030b200141f8006a200141a0016a1049200341003602002004420037030020014200370358200a10122108200141f8006a104a410247044010000b200141d8016a22074100360200200141d0016a22064200370300200142003703c801200141b0016a200141f8006a4100102b200141b0016a103b200141f8016a200141b0016a103d20012802fc0121020240024020012802b401450d00200241144b0d0020012802b0012d000041c001490d010b10000b200141106a220c4100360200200141086a220942003703002001420037030020112002411420024114491b22026b20012802f801200210521a200141f0016a200c2802002202360200200141e8016a20092903002212370300200720023602002006201237030020042012370300200320023602002001200129030022123703e001200120123703c80120012012370358200110122102200141b0016a200141f8006a4101102b200141b0016a2002103420082002104b2005200141b0016a200141d8006a101922072802004504404130102222022001290358370210200241246a200a290200370200200241206a2003280200360200200241186a20042903003702002002412c6a200a41086a28020036020020081018200520012802b0012007200210130b200141a0016a104c0c000b000b10000b201021020b200e450d002001200e3602340b200d28020c22030440200d20033602100b024020020d002000280298022102024020002802b802450d0020002802b00221032000200f3602b002200041003602b80220002802b4022104200041003602b4022004410036020820032802042204200320041b2104034020042203450d012002200b47044020032002290010370010200341206a200241206a280000360000200341186a200241186a290000370000200341246a200241246a101b1a024020032802082204450440410021040c010b2003200428020022084604402004410036020020042802042208450d012008104d21040c010b200441003602042008450d002008104d21040b2005200141d8006a200341106a10532108200520012802582008200310132002104f21020c010b0b0340200328020822030d000b200b21020b03402002200b460d0141301022220341106a2204200241106a10542005200141d8006a200410532104200520012802582004200310132002104f21020c000b000b20014180026a240020000bbc10020c7f027e230041d0016b22012400200141b8016a10442208200041a8026a220229030010551056200820022903001045200828020c200841106a28020047044010000b2008280204210b2008280200210c200141e0006a1044210a20014190016a410036020020014188016a420037030020014180016a4200370300200142003703780240200041b8026a280200450440200141f8006a10570c010b200041b4026a2107200141f8006a410010582106200141ac016a210920002802b00221030340200320074604402006410110581a0520014198016a200341106a1054410021022006410010582105200141106a200141a8016a2802002204360200200141086a200141a0016a290300220d3703002001200129039801220e370300200141206a200d370300200141286a2004360200200141386a200d370300200141406b20043602002001200e3703182001200e370330200141d8006a2004360200200141d0006a200d3703002001200e370348027f0340410120024114460d011a200141c8006a20026a2104200241016a210220042d0000450d000b41150b2104027f200541186a28020022020440200541086a280200200541146a280200200210590c010b20050b2202200228020020046a3602002005200141c8006a2009101d105a410110581a2003104f21030c010b0b0b20012802782102200141f8006a410472105b200a200141f8006a105c2206105d200a200220062802046a20062802006b1056200a20002802b802105e2103200041b4026a210720002802b002210203402002200747044020034102105e2105200141106a200241206a2800002204360200200141086a200241186a290000220d37030020012002290010220e370300200141206a200d370300200141286a2004360200200141386a200d370300200141406b20043602002001200e3703182001200e370330200141a8016a2004360200200141a0016a200d3703002001200e37039801200520014198016a4114105f20014198016a200241246a101d10601a2002104f21020c010b0b0240200328020c200341106a280200460440200341046a2102200328020021040c010b200341046a2102100020032802002104200328020c2003280210460d0010000b200c200b20042002280200100c200628020022020440200620023602040b200328020c22020440200320023602100b200828020c22020440200820023602100b200141b8016a1044220920004180026a220229030010551056200920022903001045200928020c200941106a28020047044010000b2009280204210a2009280200210b200141e0006a1044210620014190016a410036020020014188016a420037030020014180016a420037030020014200370378024020004190026a280200450440200141f8006a10570c010b2000418c026a2105200141f8006a410010582103200141a0016a210720002802880221020340200220054604402003410110581a0520014198016a200241106a105120034100105820012d009801106141001058200141c8006a2007101d105a220420012903b0011062200441011058410110581a2002104f21020c010b0b0b20012802782102200141f8006a410472105b2006200141306a105c2208105d2006200220082802046a20082802006b10562006200028029002105e21032000418c026a210720014198016a4104722106200028028802210203402002200747044020034102105e220420022d0010106320044102105e2104200141003602b001200142003703a801200142003703a001200142003703980120014198016a200141f8006a200241186a2205101d105a20022903281062200420012802980110562004200141c8006a2005101d1060200229032810452006105b2002104f21020c010b0b0240200328020c200341106a280200460440200341046a2102200328020021040c010b200341046a2102100020032802002104200328020c2003280210460d0010000b200b200a20042002280200100c200828020022020440200820023602040b200328020c22020440200320023602100b200928020c22020440200920023602100b200041d8016a200041e0016a1064200041b0016a200041b8016a1064200141f8006a1044220720004188016a220229030010551056200720022903001045200728020c200741106a28020047044010000b2007280204210920072802002108200141b8016a10442106200141b0016a4100360200200141a8016a4200370300200141a0016a42003703002001420037039801024020004198016a28020045044020014198016a10570c010b20004194016a210420014198016a410010582105200141e0006a410472210320002802900121020340200220044604402005410110581a05200141e0006a200241106a105020054100105820013100601065200141c8006a2003101d105a410110581a2002104f21020c010b0b0b200128029801210220014198016a410472105b2006200141e0006a105c2203105d2006200220032802046a20032802006b10562006200028029801105e210420004194016a2105200028029001210203402002200547044020044102105e2002310010106620014198016a200241146a101d10601a2002104f21020c010b0b0240200428020c200441106a280200460440200441046a2102200428020021050c010b200441046a2102100020042802002105200428020c2004280210460d0010000b2008200920052002280200100c200328020022020440200320023602040b200428020c22020440200420023602100b200728020c22020440200720023602100b200041e0006a200041e8006a1067200041386a200041406b1067200041106a200041186a1064200141d0016a24000b7b02027f017e230041e0026b220224002000103e200241086a10312103200241086a20011107002104200241c8026a10442201200410551056200120041045200128020c200141106a28020047044010000b20012802002001280204100d200128020c22000440200120003602100b20031032200241e0026a24000ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10121a0c010b200241186a2000103d2000106821030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102221032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a104b200241206a24000baa0101047f230041e0006b22012400200141186a10442102200141d8006a4100360200200141d0006a4200370300200141c8006a420037030020014200370340200141406b200141306a2000101d105a210320012802402104200341046a105b2002200410562002200141086a2000101d1060220028020c200041106a28020047044010000b20002802002000280204100d200028020c22020440200020023602100b200141e0006a24000b7d01037f230041106b220124002000103b024002402000103c450d002000280204450d0020002802002d000041c001490d010b10000b200141086a2000103d200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b3f01017f230041206b22022400200241086a20004100102b200241086a20011034200241086a20004101102b2001200241086a102c370310200241206a24000b150020002001101d1a2000200129031037031020000b880101037f4190094101360200419409280200210003402000044003404198094198092802002201417f6a220236020020014101484504404190094100360200200020024102746a22004184016a280200200041046a280200110200419009410136020041940928020021000c010b0b4198094120360200419409200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000107a20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000107a20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000103b200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110682204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b0e002000102f410147044010000b0b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000107e200128020c210003402000450d01200141002001280208220320032000107c22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b960401087f230041d0016b22022400200241306a1044220420002903001045200428020c200441106a28020047044010000b02402004280200220320042802042207100a2208450440410021000c010b410021002002410036022820024200370320200241206a2008104620032007200228022022052002280224220620056b100b417f47044002400240200241086a200541016a20062005417f736a102a2200280204450d0020002802002d000041c001490d0020024188016a20001047200241f8006a20001048200241d4006a21060340200228028c01200228027c460440200228029001200228028001460d030b200241e0006a20024188016a1049200241c8006a10122100200610122107200241e0006a104a410247044010000b200241c0016a10122103200241a8016a200241e0006a4100102b200241a8016a2003103420002003104b20024198016a10122103200241a8016a200241e0006a4101102b200241a8016a2003103420072003104b2001200241a8016a2000101722092802004504404128102222032002290348370210200341186a200241d0006a28020036020020001018200341246a200641086a2802003602002003411c6a200629020037020020071018200120022802a8012009200310130b20024188016a104c0c000b000b10000b200821000b2005450d00200220053602240b200428020c22030440200420033602100b200241d0016a240020000bdc0201067f230041106b22042400024020002001460d00200141046a21062001280200210102402000280208450d00200028020021032000200041046a3602002000410036020820002802042102200041003602042002410036020820032802042202200320021b2102034020022203450d0120012006470440200341106a200141106a101b21072003411c6a2001411c6a101b1a024020032802082202450440410021020c010b2003200228020022054604402002410036020020022802042205450d012005104d21020c010b200241003602042005450d002005104d21020b2000200441086a200710752107200020042802082007200310132001104f21010c010b0b0340200328020822030d000b200621010b034020012006460d0141281022220341106a2202200141106a107320002004410c6a2002107521022000200428020c2002200310132001104f21010c000b000b200441106a24000bf30301087f230041b0016b22022400200241286a1044220320002903001045200328020c200341106a28020047044010000b02402003280200220420032802042206100a2208450440410021000c010b410021002002410036022020024200370318200241186a200810462004200620022802182205200228021c220720056b100b417f470440024002402002200541016a20072005417f736a102a2200280204450d0020002802002d000041c001490d00200241f8006a20001047200241e8006a20001048200241406b410472220641086a21090340200228027c200228026c4604402002280280012002280270460d030b200241d0006a200241f8006a1049200241003a0040200610122104200241d0006a104a410247044010000b20024198016a200241d0006a4100102b200220024198016a10363a004020024188016a1012210020024198016a200241d0006a4101102b20024198016a2000103420042000104b200120024198016a20022d00401011220728020045044041201022220020022d00403a0010200041146a20062902003702002000411c6a20092802003602002004101820012002280298012007200010130b200241f8006a104c0c000b000b10000b200821000b2005450d002002200536021c0b200328020c22040440200320043602100b200241b0016a240020000bdf0201067f230041106b22042400024020002001460d00200141046a21062001280200210102402000280208450d00200028020021032000200041046a3602002000410036020820002802042102200041003602042002410036020820032802042202200320021b2102034020022203450d0120012006470440200320012d00103a0010200341146a200141146a101b1a200341106a2107024020032802082202450440410021020c010b2003200228020022054604402002410036020020022802042205450d012005104d21020c010b200241003602042005450d002005104d21020b2000200441086a2007104e2107200020042802082007200310132001104f21010c010b0b0340200328020822030d000b200621010b034020012006460d0141201022220341106a2202200141106a105020002004410c6a2002104e21022000200428020c2002200310132001104f21010c000b000b200441106a24000b29002000410036020820004200370200200041001069200041146a41003602002000420037020c20000b09002000200110661a0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102221060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110521a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b0a0020002001410110760b0a0020002001410010760b160020002001280204200141086a280200411c103a1a0b210002402000280204044020002802002d000041bf014b0d010b10000b2000103f0b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a280200360200200110180bb50102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a2001410020042002107c107d20002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b1d01017f03402000220128020022000d00200128020422000d000b20010b6201017f024020002802042203044020022d0000210203400240200220032d001049044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b1900200020012d00003a0000200041046a200141046a101d1a0b1900200020012d00003a0000200041086a200141086a10381a0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b5c01017f0240200028020422030440034002402002200341106a1027044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b390020002001290200370200200041106a200141106a280200360200200041086a200141086a290200370200200041146a200141146a101d1a0b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001062200128020021022001410472105b200141206a240020020b1300200028020820014904402000200110690b0b3901017f027f200041186a28020022010440200041086a280200200041146a280200200110590c010b20000b2201200128020041016a3602000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031059280200210120022003417f6a3602002007106d4180104f044020072000410c6a280200417c6a106c0b200141384f047f2001106a20016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110590c020b20000c010b02402007106d0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a106e0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010222105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a106f220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10702102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021071200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a107222013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10702102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021071200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a106e0c010b20042001410175410120011b200320051070210241802010222106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a106f22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200107021032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031071200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021071052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a107222013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210107021062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061071200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007106b200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002106a20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110590c010b20000b2201200128020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000106b200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001106c200441106a24000b3a01017f20004100360208200042003702002000410110222201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004106920002802040520020b20002802006a2003200110521a2000200028020420016a3602040b9e0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410220b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110521a0b20002002360214200020033602102000200536020c20000f0b200041001002200028020422016a10800141004100200120002802006a10032000107f20000b2b01017f2000200120021004200028020422036a10800120012002200320002802006a10052000107f20000b2c01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b105f0b090020002001ad10650b09002000200110651a0b0a0020002001ad10661a0b8c0401087f23004190016b22022400200241206a10442204200029030010551056200420002903001045200428020c200441106a28020047044010000b2004280204210820042802002109200241086a10442107200241d0006a4100360200200241c8006a4200370300200241406b42003703002002420037033802402001280208450440200241386a10570c010b200141046a2103200241386a410010582105200241e4006a2106200128020021000340200020034604402005410110581a05200241d8006a200041106a107320054100105820024180016a200241d8006a101d105a200241f0006a2006101d105a410110581a2000104f21000c010b0b0b20022802382100200241386a410472105b200720024180016a105c2206105d2007200020062802046a20062802006b105620072001280208105e2103200141046a2105200128020021000340200020054645044020034102105e200241386a200041106a101d1060200241d8006a2000411c6a101d10601a2000104f21000c010b0b0240200328020c200341106a280200460440200341046a2100200328020021050c010b200341046a2100100020032802002105200328020c2003280210460d0010000b2009200820052000280200100c200628020022000440200620003602040b200328020c22000440200320003602100b200428020c22000440200420003602100b20024190016a24000b8b0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002106a20026a0520020b41016a21030b027f200041186a28020022020440200041086a280200200041146a280200200210590c010b20000b2202200228020020036a36020020000b2b01017f2000420020011006200028020422026a10800142002001200220002802006a10072000107f20000bfe0301097f230041f0006b22022400200241186a10442204200029030010551056200420002903001045200428020c200441106a28020047044010000b200428020421092004280200210a200210442107200241c8006a4100360200200241406b4200370300200241386a42003703002002420037033002402001280208450440200241306a10570c010b200141046a2105200241306a410010582103200241d0006a4104722108200128020021000340200020054604402003410110581a05200241d0006a200041106a105020034100105820022d00501061200241e0006a2008101d105a410110581a2000104f21000c010b0b0b20022802302100200241306a410472105b2007200241d0006a105c2206105d2007200020062802046a20062802006b105620072001280208105e2103200141046a2108200128020021000340200020084645044020034102105e220520002d001010632005200241306a200041146a101d10601a2000104f21000c010b0b0240200328020c200341106a280200460440200341046a2100200328020021050c010b200341046a2100100020032802002105200328020c2003280210460d0010000b200a200920052000280200100c200628020022000440200620003602040b200328020c22000440200320003602100b200428020c22000440200420003602100b200241f0006a24000bff0201037f200028020445044041000f0b2000103b41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2f01017f2000280208200149044020011029200028020020002802041052210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a106f22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10702103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031071200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110740b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102221040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110740b20020b160020002001101d1a2000410c6a2001410c6a101d1a0b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210521a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b5c01017f0240200028020422030440034002402002200341106a1026044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030be50101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001107e20004100200428020c2201200428020822022001107c22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b3501017f230041106b220041b0890436020c419c09200028020c41076a417871220036020041a009200036020041a4093f003602000b10002002044020002001200210521a0b0bd40101027f410a210320002d0000410171220404402000280200417e71417f6a21030b200320024f0440027f2004044020002802080c010b200041016a0b21032002044020032001200210740b200220036a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2104200341e6ffffff074d0440410b200341017422032002200320024b1b220341106a4170712003410b491b21040b200410222203200120021078200020023602042000200441017236020020002003360208200220036a41003a00000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000107b200010686a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2701017f230041206b22022400200241086a200020014114103a107a2100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f20011068220220012802044b044010000b200020012001107b2002107d0b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a108001200120002802006a22012002200110030c010b0b0b3601017f2000280208200149044020011029200028020020002802041052210220002001360208200020023602000b200020013602040b0b970101004180080b8f017465737431007465737432003100746573743300746573743400696e6974007365744d61704b657954797065006164644d6170537472696e67006765744d6170537472696e6753697a65006765744d617056616c75654279537472696e67006164644d61704279506572736f6e006765744d61704279506572736f6e53697a65006765744d61704279506572736f6e"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETMAPBYPERSONSIZE = "getMapByPersonSize"; - - public static final String FUNC_SETMAPKEYTYPE = "setMapKeyType"; - - public static final String FUNC_ADDMAPSTRING = "addMapString"; - - public static final String FUNC_GETMAPSTRINGSIZE = "getMapStringSize"; - - public static final String FUNC_GETMAPVALUEBYSTRING = "getMapValueByString"; - - public static final String FUNC_ADDMAPBYPERSON = "addMapByPerson"; - - public static final String FUNC_GETMAPBYPERSON = "getMapByPerson"; - - protected ReferenceDataTypeMapTestContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeMapTestContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getMapByPersonSize() { - final WasmFunction function = new WasmFunction(FUNC_GETMAPBYPERSONSIZE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeMapTestContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeMapTestContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeMapTestContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeMapTestContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall setMapKeyType() { - final WasmFunction function = new WasmFunction(FUNC_SETMAPKEYTYPE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setMapKeyType(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETMAPKEYTYPE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall addMapString(String one_key, String one_value) { - final WasmFunction function = new WasmFunction(FUNC_ADDMAPSTRING, Arrays.asList(one_key,one_value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall addMapString(String one_key, String one_value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADDMAPSTRING, Arrays.asList(one_key,one_value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getMapStringSize() { - final WasmFunction function = new WasmFunction(FUNC_GETMAPSTRINGSIZE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall getMapValueByString(String key) { - final WasmFunction function = new WasmFunction(FUNC_GETMAPVALUEBYSTRING, Arrays.asList(key), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall addMapByPerson(Uint8 key, Person person) { - final WasmFunction function = new WasmFunction(FUNC_ADDMAPBYPERSON, Arrays.asList(key,person), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall addMapByPerson(Uint8 key, Person person, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADDMAPBYPERSON, Arrays.asList(key,person), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getMapByPerson(Uint8 key) { - final WasmFunction function = new WasmFunction(FUNC_GETMAPBYPERSON, Arrays.asList(key), String.class); - return executeRemoteCall(function, String.class); - } - - public static ReferenceDataTypeMapTestContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeMapTestContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeMapTestContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeMapTestContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Person { - public String name; - - public Uint64 age; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeSetContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeSetContract.java deleted file mode 100644 index ddcbac42e6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeSetContract.java +++ /dev/null @@ -1,147 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ReferenceDataTypeSetContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001591060017f017f60027f7f0060017f0060037f7f7f017f60000060037f7f7f0060047f7f7f7f0060027f7f017f60047f7f7f7f017f60027f7e0060037e7e7f006000017f60027f7e017f60017e017f60027e7e017f60017f017e02fd010b03656e760c706c61746f6e5f70616e6963000403656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000703656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000603656e760d706c61746f6e5f72657475726e00010348470402020000030605010200000701000202020000040003050200010f01010200000d010902010201090c04080000000307030101030102010100030001030802030501040000060405017001070705030100020608017f01418089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974003506696e766f6b65001f090c010041010b060c0d1314181c0ab45d470400104e0b0300010be00101057f230041106b22022400200241850c3b000620024181848c20360002200041186a21030240200041206a280200450440200241026a21000c010b2003100e210103400240200241026a20046a21002001450d0020044106460d00200120002d00003a000d2001100f21002003200241086a2001410d6a10102205280200450440200320022802082005200110110b200441016a2104200021010c010b0b2001450d000340200128020822010d000b0b200241086a210103402000200146450440200241086a200320001012200041016a21000c010b0b200241106a24000b3d01027f200028020021012000200041046a3602002000410036020820002802042102200041003602042002410036020820012802042200200120001b0b4c01027f2000280208220145044041000f0b02402000200128020022024604402001410036020020012802042200450d012000101e0f0b200141003602042002450d002002101e21010b20010b8d0101027f200041046a2103024020002802042200044020022d000021040240034002400240200420002d000d2202490440200028020022020d012001200036020020000f0b200220044f0d03200041046a210320002802042202450d01200321000b20002103200221000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b200320012802004704402001101a2001280208220128020821020b200141013a000c200241003a000c2002101b0c010b02402004450d0020042d000c0d002004410c6a21030c020b200320012802004604402001101b2001280208220128020821020b200141013a000c200241003a000c2002101a0b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000b5501037f230041106b22032400200020012003410c6a2002101022052802002204047f4100054110101d220420022d00003a000d2001200328020c20052004101141010b3a000420002004360200200341106a24000b2201017f230041106b22022400200241086a200041186a20011012200241106a24000b2501017f2000411c6a2101200028021821000340200020014704402000101521000c010b0b0b3401017f02402000280204220104402001101921010c010b0340200028020822012802002000460d01200121000c000b000b20010b2601017f027f4100200041186a4103101722012000411c6a460d001a20012d000d0b41ff01710b6401057f200141ff01712105200041046a22032104200321020340200428020022000440200041046a200020002d000d20054922061b21042002200020061b21020c010b0b02402002200347044020022d000d200141ff01714d0d010b200321020b20020bd30601067f0240200041186a220320012d0000101722022000411c6a460d00200220032802004604402003200210153602000b200041206a22012001280200417f6a3602002000411c6a2802002103027f0240024020022802002204450440200221010c010b20022802042200450440200221010c020b20001019220128020022040d010b200128020422040d004100210441000c010b2004200128020836020841010b210702402001200128020822062802002200460440200620043602002001200346044041002100200421030c020b200628020421000c010b200620043602040b20012d000c210620012002470440200120022802082205360208200520022802082802002002474102746a20013602002002280200220520013602082001200536020020012002280204220536020420050440200520013602080b200120022d000c3a000c2001200320022003461b21030b200641ff0171450d002003450d002007450440034020002d000c2101024020002000280208220228020047044002400240200141ff0171450440200041013a000c200241003a000c2002101a20002003200320002802002201461b2103200128020421000b20002802002202044020022d000c450d010b20002802042201044020012d000c450d020b200041003a000c0240200320002802082200460440200321000c010b20002d000c0d040b200041013a000c0f0b20002802042201044020012d000c450d010b200241013a000c200041003a000c2000101b2000280208220028020421010b2000200028020822022d000c3a000c200241013a000c200141013a000c2002101a0f0b0240200141ff0171450440200041013a000c200241003a000c2002101b20002003200320002802042201461b2103200128020021000b20002802002201044020012d000c450d010b024020002802042202044020022d000c450d010b200041003a000c20032000280208220047044020002d000c0d030b200041013a000c0f0b2001044020012d000c450d010b200241013a000c200041003a000c2000101a2000280208220028020021010b2000200028020822022d000c3a000c200241013a000c200141013a000c2002101b0f0b2000280208220120012802002000464102746a28020021000c000b000b200441013a000c0b0b1401017f03402000220128020022000d000b20010b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b150020002000411c6a2200360218200042003702000b0b002000410120001b10200b1d01017f03402000220128020022000d00200128020422000d000b20010b860602057f017e23004180016b22002400104e10052201102022031006200041d8006a200041086a200320011021220241001022200041d8006a102302400240200041d8006a1024450d00200028025c450d0020002802582d000041c001490d010b10000b200041386a200041d8006a1025200028023c220141094f044010000b200028023821030340200104402001417f6a210120033100002005420886842105200341016a21030c010b0b024002402005500d00418008102620055104402002410110270c020b418508102620055104402002410210270c020b418e08102620055104402002410310280c020b4199081026200551044020021029200041d8006a102a2103200041f8006a3502002105200041386a102b22012005102c102d20012005102e200128020c200141106a28020047044010000b20012802002001280204100a200128020c22020440200120023602100b2003102f0c020b41a608102620055104402002410410270c020b41b3081026200551044020021029200041d8006a102a2102200041d8006a10162103200041206a102b2101200041d0006a4100360200200041c8006a4200370300200041406b420037030020004200370338200041386a2003103020002802382104200041386a410472103120012004102d200120031032200128020c200141106a28020047044010000b20012802002001280204100a200128020c22030440200120033602100b2002102f0c020b41bc08102620055104402002410510280c020b41c6081026200551044020021029200041d8006a102a2103200041f8006a2802002102200041206a102b2101200041d0006a4100360200200041c8006a4200370300200041406b420037030020004200370338200041386a200245ad2205103320002802382102200041386a410472103120012002102d200120051034220128020c200141106a28020047044010000b20012802002001280204100a200128020c22020440200120023602100b2003102f0c020b41d40810262005520d002002410610270c010b10000b103520004180016a24000b9b0101047f230041106b220124002001200036020c2000047f41f408200041086a2202411076220041f4082802006a220336020041f00841f008280200220420026a41076a417871220236020002400240200341107420024d044041f408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103f41086a0541000b2100200141106a240020000b0c00200020012002411c10360bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104d20012003280208200328020c103b36020c20032001104d410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410361a200341106a24000f0b20032001104d41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103b10512001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001023200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110372204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2f01017f230041306b2202240020001029200241086a102a2100200241086a20011102002000102f200241306a24000b4b01027f230041306b2202240020001038410247044010000b20022000410110222002103921002002102a2103200220003a002f20022002412f6a20011101002003102f200241306a24000b0e0020001038410147044010000b0be605010b7f230041f0006b2205240020004200370204200042c2c285f3c4ee90c6e4003703102000411c6a220142003702002000200041046a220a36020020002001360218200541186a102b22082000290310102e200828020c200841106a28020047044010000b200041186a210602400240200828020022032008280204220910072204450d002004101d2102410021010340200120026a41003a00002004200141016a2201470d000b20032009200220011008417f460d0002402005200241016a200120026a2002417f736a10212202280204450d0020022802002d000041c001490d00200541e0006a20024101103a2101200541d0006a20024100103a210920012802042102034020092802042002464100200128020822032009280208461b0d032005200541386a20022003411c1036103922023a00372006200541ec006a200541376a101022032802004504404110101d220720023a000d2006200528026c2003200710110b20012001280204220220012802086a410020021b22023602042001280200220304402001200336020820022003103b21072001027f200128020422024504404100210341000c010b4100210341002001280208220b2007490d001a200b20072007417f461b210320020b2202ad2003ad42208684370204200141002001280200220720036b2203200320074b1b3602000c0105200141003602080c010b000b000b10000c010b410021040b200828020c22010440200820013602100b024020040d002000280200210102402000280220450d002006100e210403402004450d012001200a470440200420012d000d3a000d2004100f21022006200541386a2004410d6a103c210320062005280238200320041011200110152101200221040c010b0b0340200428020822040d000b200a21010b03402001200a460d014110101d220420012d000d3a000d2006200541386a2004410d6a103c2102200620052802382002200410112001101521010c000b000b200541f0006a240020000b2900200041003602082000420037020020004100103d200041146a41003602002000420037020c20000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200010332001280200210220014104721031200141206a240020020b13002000280208200149044020002001103d0b0b09002000200110341a0bfd05010b7f230041d0006b22032400200341186a102b22082000290310102c102d20082000290310102e200828020c200841106a28020047044010000b2008280204210a2008280200210b2003102b2101200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330027f200041206a2802004504402003410136023041010c010b200341306a4100103e2000411c6a210420002802182102037f2002200446047f200341306a4101103e200328023005200341306a20022d000d10302002101521020c010b0b0b2106200341306a41047210314101101d220241fe013a0000200128020c200141106a28020047044010000b200241016a21052001280204220441016a220720012802084b047f20012007103d20012802040520040b20012802006a20024101103f1a2001200128020441016a3602042001200620026b20056a102d02402000280220220204402001280204210420012802102205200141146a280200220649044020052002ad2004ad422086843702002001200128021041086a3602100c020b027f41002005200128020c22076b410375220941016a2205200620076b2206410275220720072005491b41ffffffff01200641037541ffffffff00491b2207450d001a2007410374101d0b2105200520094103746a22062002ad2004ad4220868437020020062001280210200128020c22096b22026b2104200520074103746a2105200641086a2106200241014e0440200420092002103f1a0b20012005360214200120063602102001200436020c0c010b200141001001200128020422026a104041004100200220012802006a1002200110410b2000411c6a210420002802182102034020022004470440200120022d000d10322002101521020c010b0b0240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b200b200a200220012802041009200128020c22020440200120023602100b200828020c22020440200820023602100b200341d0006a24000b090020002001ad10330bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001042200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011043200441106a24000b0a0020002001ad10341a0b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002104420026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002104521000b2000200028020020036a3602000b2a01017f2000420020011003200028020422026a104042002001200220002802006a10042000104120000b880101037f41e008410136020041e4082802002100034020000440034041e80841e8082802002201417f6a2202360200200141014845044041e0084100360200200020024102746a22004184016a280200200041046a28020011020041e008410136020041e40828020021000c010b0b41e808412036020041e408200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104f20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104f20024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000102341012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000104d200128020c210003402000450d01200141002001280208220320032000103b22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b7d01037f230041106b22012400200010230240024020001024450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001025200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104d20004100200428020c2201200428020822022001103b22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a2000200141141036104f2100200241206a240020000b6201017f024020002802042203044020022d0000210203400240200220032d000d49044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b2f01017f200028020820014904402001102020002802002000280204103f210220002001360208200020023602000b0bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031045280200210120022003417f6a360200200710464180104f044020072000410c6a280200417c6a10430b200141384f047f2001104420016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002104521000c010b0240200710460d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10470c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020101d2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1048220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10492102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104a200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104b22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10492102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104a200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10470c010b20042001410175410120011b2003200510492102418020101d2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104822013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104921032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003104a200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002104a052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104b22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104921062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006104a200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071042200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3601017f200028020820014904402001102020002802002000280204103f210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1040200120002802006a22012002200110020c010b0b0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104822023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10492103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003104a200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001104c0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101d21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001104c0b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103f1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b2101017f20011037220220012802044b044010000b2000200120011050200210510b3501017f230041106b22004180890436020c41ec08200028020c41076a417871220036020041f008200036020041f4083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001050200010376a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b6401004180080b5d696e697400696e69745f73657400696e736572745f736574006765745f7365745f73697a65006974657261746f725f7365740066696e645f7365740065726173655f736574006765745f7365745f656d70747900636c6561725f736574"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ITERATOR_SET = "iterator_set"; - - public static final String FUNC_INIT_SET = "init_set"; - - public static final String FUNC_INSERT_SET = "insert_set"; - - public static final String FUNC_FIND_SET = "find_set"; - - public static final String FUNC_ERASE_SET = "erase_set"; - - public static final String FUNC_GET_SET_EMPTY = "get_set_empty"; - - public static final String FUNC_CLEAR_SET = "clear_set"; - - public static final String FUNC_GET_SET_SIZE = "get_set_size"; - - protected ReferenceDataTypeSetContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeSetContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall iterator_set() { - final WasmFunction function = new WasmFunction(FUNC_ITERATOR_SET, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall iterator_set(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ITERATOR_SET, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeSetContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeSetContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeSetContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeSetContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall init_set() { - final WasmFunction function = new WasmFunction(FUNC_INIT_SET, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall init_set(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_INIT_SET, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall insert_set(Uint8 value) { - final WasmFunction function = new WasmFunction(FUNC_INSERT_SET, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall insert_set(Uint8 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_INSERT_SET, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall find_set() { - final WasmFunction function = new WasmFunction(FUNC_FIND_SET, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall erase_set(Uint8 value) { - final WasmFunction function = new WasmFunction(FUNC_ERASE_SET, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall erase_set(Uint8 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ERASE_SET, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_set_empty() { - final WasmFunction function = new WasmFunction(FUNC_GET_SET_EMPTY, Arrays.asList(), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall clear_set() { - final WasmFunction function = new WasmFunction(FUNC_CLEAR_SET, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall clear_set(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_CLEAR_SET, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_set_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_SET_SIZE, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static ReferenceDataTypeSetContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeSetContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeSetContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeSetContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeStructContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeStructContract.java deleted file mode 100644 index 198cbd46b6..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeStructContract.java +++ /dev/null @@ -1,96 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ReferenceDataTypeStructContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60027f7f0060017f017f60017f0060037f7f7f017f60037f7f7f0060027f7f017f60000060047f7f7f7f017f60047f7f7f7f0060027f7e0060017f017e60037e7e7f006000017f60017e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e000003424106020403000203050002060103040a0a000101000102020101000506070200000501010900000d01000005090203000002010300000100030702030406040101080405017001030305030100020608017f0141e088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002806696e766f6b6500170908010041010b020e120acb5741040010490b0300010b2601017f230041206b22032400200041206a200341086a2001200210101011200341206a24000b15002000200110141a2000200229030037031020000b1200200020011015200020012903103703100bbb0101047f230041206b22032400200041d0006a21040240034020014180086a2202410371044020014106460d02200141016a21010c010b0b200141fc076a21020340200241046a22022802002201417f73200141fffdfb776a7141808182847871450d000b0340200141ff0171450d01200241016a2d00002101200241016a21020c000b000b200441800820024180086b10132102200041f0006a22014214370300200041206a200341086a2002200110101011200341206a24000bda0101027f410a210320002d0000410171220404402000280200417e71417f6a21030b200320024f0440027f2004044020002802080c010b200041016a0b21032002044020032001200210480b200220036a41003a000020002d000041017104402000200236020420000f0b200020024101743a000020000f0b416f2104200341e6ffffff074d0440410b200341017422032002200320024b1b220341106a4170712003410b491b21040b2004102f220320012002104a200020023602042000200441017236020020002003360208200220036a41003a000020000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102f21022000200136020420002004410172360200200020023602080b200220032001104a200120026a41003a000020000b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a280200360200200110160b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0bf60202047f017e230041d0016b22002400104910072201101822021008200041206a200041086a20022001101922014100101a02400240200041206a101b2204500d00418708101c200451044020014101101d0c020b418c08101c2004510440200041b8016a101e2102200042003703c8012001101f410347044010000b200041206a20014101101a200041206a20021020200041206a20014102101a2000200041206a101b3703c801200041206a10212101200041a8016a200210142102200020002903c801370398012001200220004198016a100f200110220c020b419d08101c200451044020014102101d0c020b41ae08101c2004520d002001102320004198016a200041206a1021220241206a10142101200041b8016a102422032001102510262003200041a8016a200110141027220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210220c010b10000b1028200041d0016a24000b9b0101047f230041106b220124002001200036020c2000047f41d008200041086a2202411076220041d0082802006a220336020041cc0841cc08280200220420026a41076a417871220236020002400240200341107420024d044041d008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103a41086a0541000b2100200141106a240020000b0c00200020012002411c10290bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102c20012003280208200328020c102d36020c20032001102c410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410291a200341106a24000f0b20032001102c41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102d104d2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b220324002000102a024002402000280204450d002000102a0240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a2000102b200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b3101017f23004180016b2202240020001023200241086a10212100200241086a20011102002000102220024180016a24000b190020004200370200200041086a41003602002000101620000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102c200128020c210003402000450d01200141002001280208220320032000102d22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a101e1a0c010b200241186a2000102b2000102e21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102f21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1015200241206a24000bf50501087f230041e0006b220224002000101e210820004296ccebcaf2998af307370318200041206a2207101e1a200241306a1024220320002903181030200328020c200341106a28020047044010000b02402003280200220120032802042205100922064504400c010b2002410036022820024200370320200241206a2006103120012005200228022022012002280224220520016b100a417f470440200241c8006a200241086a200141016a20052001417f736a101922044100101a200241c8006a20071020200241c8006a20044101101a200041306a200241c8006a101b370300200621040b2001450d00200220013602240b200328020c22010440200320013602100b2004450440200720081032200041306a20002903103703000b200041386a101e2108200041c8006a220142f4b6fbddebefc6a0be7f370300200041d0006a101e2107200241c8006a1024220320012903001030200328020c200341106a28020047044010000b0240200328020022012003280204220510092206450440410021040c010b410021042002410036021020024200370308200241086a200610312001200520022802082201200228020c220520016b100a417f470440200241306a200141016a20052001417f736a101920071020200621040b2001450d002002200136020c0b200328020c22010440200320013602100b20044504402007200810320b20004200370360200041e8006a220142c2ecbedd86e3b3ee58370300200241c8006a1024220320012903001030200328020c200341106a28020047044010000b0240200328020022072003280204220110092206450440410021040c010b410021042002410036021020024200370308200241086a200610312007200120022802082201200228020c220520016b100a417f4704402000200241306a200141016a20052001417f736a1019101b370370200621040b2001450d002002200136020c0b200328020c22010440200320013602100b2004450440200020002903603703700b200241e0006a240020000bb009010d7f23004180016b22032400200341e0006a10242202200041e8006a220129030010331026200220012903001030200228020c200241106a28020047044010000b2002280204210520022802002106200341286a102421012000290370103321092001200341106a1034220410352001200920042802046a20042802006b10262001200029037010300240200128020c200141106a280200460440200141046a2109200128020021070c010b200141046a2109100020012802002107200128020c2001280210460d0010000b2006200520072009280200100b200428020022050440200420053602040b200128020c22040440200120043602100b200228020c22010440200220013602100b200341e0006a10242201200041c8006a220229030010331026200120022903001030200041d0006a2105200128020c200141106a28020047044010000b2001280204210620012802002109200341286a102421022005102521072002200341106a1034220410352002200720042802046a20042802006b102602402002200341d0006a200510141027220228020c200241106a280200460440200241046a2105200228020021070c010b200241046a2105100020022802002107200228020c2002280210460d0010000b2009200620072005280200100b200428020022050440200420053602040b200228020c22040440200220043602100b200128020c22020440200120023602100b200341286a10242202200029031810331026200220002903181030200228020c200241106a28020047044010000b2002280204210920022802002107200341106a1024210141002106200341f8006a4100360200200341f0006a4200370300200341e8006a420037030020034200370360200341e0006a41001036200341e0006a200341d0006a200041206a2205101410372204200041306a29030010382004410110362003280260210a200441046a1039200120031034220410352001200a20042802046a20042802006b10262001280204210a0240200141106a2802002208200141146a280200220b4904402008200aad4220864202843702002001200128021041086a3602100c010b2008200128020c220c6b410375220841016a220d200b200c6b220b410275220c200c200d491b41ffffffff01200b41037541ffffffff00491b220b0440200b410374102f21060b200620084103746a2208200aad42208642028437020020082001280210200128020c220d6b220a6b210c2006200b4103746a2106200841086a2108200a41014e0440200c200d200a103a1a0b20012006360214200120083602102001200c36020c0b200341f8006a4100360200200341f0006a4200370300200341e8006a420037030020034200370360200341e0006a200341d0006a2005101410372206200029033010382001200328026010262001200341406b200510141027220520002903301030200641046a10390240200528020c2001280210460440200528020021060c010b100020052802002106200528020c2001280210460d0010000b2007200920062001280204100b200428020022060440200420063602040b200528020c22040440200120043602100b200228020c22010440200220013602100b20034180016a24000b0e002000101f410147044010000b0b2900200041003602082000420037020020004100103b200041146a41003602002000420037020c20000b5801027f230041306b22012400200141286a4100360200200141206a4200370300200141186a420037030020014200370310200141106a2001200010141037210020012802102102200041046a1039200141306a240020020b13002000280208200149044020002001103b0b0b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a103c20042001200220002802006a10042000103d20000b880101037f41bc08410136020041c0082802002100034020000440034041c40841c4082802002201417f6a2202360200200141014845044041bc084100360200200020024102746a22004184016a280200200041046a28020011020041bc08410136020041c00828020021000c010b0b41c408412036020041c008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104b20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104b20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001102e2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b2101017f2001102e220220012802044b044010000b200020012001104c2002104d0b2701017f230041206b22022400200241086a2000200141141029104b2100200241206a240020000bff0201037f200028020445044041000f0b2000102a41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0b002000410120001b10180b2801017f2000420020011005200028020422026a103c42002001200220002802006a10062000103d0bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102f21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001103a1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b3501017f2000200147044020002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10131a0b0b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200010382001280200210220014104721039200141206a240020020b3a01017f200041003602082000420037020020004101102f2201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004103b20002802040520020b20002802006a20032001103a1a2000200028020420016a3602040bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203103f280200210120022003417f6a360200200710424180104f044020072000410c6a280200417c6a10410b200141384f047f2001103e20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103f21000c010b0240200710420d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10430c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020102f2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1044220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10452102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021046200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104722013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10452102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021046200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10430c010b20042001410175410120011b2003200510452102418020102f2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104422013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104521032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031046200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021046052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104722013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104521062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061046200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071040200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103e20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001103f0c010b20000b2201200128020020036a36020020000b880102027f017e4101210220014280015a044041002102034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002103e20026a0520020b41016a21020b200041186a28020022030440200041086a280200200041146a2802002003103f21000b2000200028020020026a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001040200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011041200441106a24000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2f01017f200028020820014904402001101820002802002000280204103a210220002001360208200020023602000b0b3601017f200028020820014904402001101820002802002000280204103a210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a103c200120002802006a22012002200110020c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104422023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10452103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031046200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110480b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102f21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110480b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103a1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041e0880436020c41c808200028020c41076a417871220036020041cc08200036020041d0083f003602000b100020020440200020012002103a1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000104c2000102e6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b4201004180080b3be5bca0e4b88900696e697400736574537472756374506572736f6e4100736574537472756374506572736f6e4200676574506572736f6e4e616d65"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SETSTRUCTPERSONB = "setStructPersonB"; - - public static final String FUNC_SETSTRUCTPERSONA = "setStructPersonA"; - - public static final String FUNC_GETPERSONNAME = "getPersonName"; - - protected ReferenceDataTypeStructContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeStructContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall setStructPersonB() { - final WasmFunction function = new WasmFunction(FUNC_SETSTRUCTPERSONB, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setStructPersonB(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETSTRUCTPERSONB, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeStructContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeStructContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeStructContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeStructContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall setStructPersonA(String my_name, Uint64 my_age) { - final WasmFunction function = new WasmFunction(FUNC_SETSTRUCTPERSONA, Arrays.asList(my_name,my_age), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setStructPersonA(String my_name, Uint64 my_age, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETSTRUCTPERSONA, Arrays.asList(my_name,my_age), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getPersonName() { - final WasmFunction function = new WasmFunction(FUNC_GETPERSONNAME, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static ReferenceDataTypeStructContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeStructContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeStructMultipleContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeStructMultipleContract.java deleted file mode 100644 index a141fdeafb..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeStructMultipleContract.java +++ /dev/null @@ -1,104 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ReferenceDataTypeStructMultipleContract extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000014f0e60017f017f60027f7f0060017f0060027f7f017f60037f7f7f017f60000060037f7f7f0060047f7f7f7f0060047f7f7f7f017f60027f7e017f60017f017e60037e7e7f006000017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000603656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000603656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e0001034847050303050004060a0a02000200000102010200010508000009000001040302070300040001090201030303010104030300000004010101020001040802040602020506000007010405017001010105030100020608017f0141f088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002106696e766f6b6500100aea63470400104e0b920201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b210120020440200120042002104b0b200120026a41003a000020002d000041017104402000200236020420000f0b200020024101743a000020000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b20031026220120042002104f200020023602042000200341017236020020002001360208200120026a41003a00000b20000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102621022000200136020420002004410172360200200020023602080b200220032001104f200120026a41003a000020000bfc0402057f017e23004190036b22002400104e10072201101122021008200041d8006a200041086a20022001101222014100101302400240200041d8006a10142205500d004180081015200551044020011016200041d8006a101710180c020b41850810152005510440200041206a10192102200042003703302001101a410347044010000b200041d8006a200141011013200041d8006a2002101b200041d8006a2001410210132000200041d8006a1014370330200041d8006a10172101200041c8006a2002100f2102200020002903303703f80120004180026a2002100e1a200110180c020b4193081015200551044020011016200041d8006a10172101200041206a20004180026a100f101c200110180c020b41a00810152005510440200041206a101921022000412c6a101921032001101a410347044010000b20004101360248200020013602582000200041c8006a36025c200041d8006a2002101d200041d8006a2003101d200041d8006a10172101200041c8006a2002100f2102200041386a2003100f2103200041d8006a220441b4016a2002100e1a200441c0016a2003100e1a200110180c020b41b30810152005520d002001101a410247044010000b200041d8006a200141011013200041d8006a101e02400240200041d8006a101f450d00200028025c450d0020002802582d000041c001490d010b10000b200041206a200041d8006a10202000280224220141054f044010000b200028022021020340200104402001417f6a210120022d00002003410874722103200241016a21020c010b0b200041d8006a10172101200041206a2003410c6c20006a418c026a100f101c200110180c010b10000b102120004190036a24000b9b0101047f230041106b220124002001200036020c2000047f41e008200041086a2202411076220041e0082802006a220336020041dc0841dc08280200220420026a41076a417871220236020002400240200341107420024d044041e008200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103a41086a0541000b2100200141106a240020000b0c00200020012002411c10220bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001105320012003280208200328020c102d36020c200320011053410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410221a200341106a24000f0b20032001105341002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102d10522001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b220124002000101e024002402000101f450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001020200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101a410147044010000b0be40a010e7f230041d0016b22042400200010231a20004282a8c5b8cfb2f1993537039801200041a0016a1023210c200441186a10242000290398011025220928020c200941106a28020047044010000b02400240200928020022022009280204220510092207450d002007102621030340200120036a41003a00002007200141016a2201470d000b2002200520032001100a417f460d0041002102200441a8016a2004200341016a200120036a2003417f736a1012220541001013200c200441a8016a1014370300200441a8016a200541011013200441a8016a200041a8016a101b200441e0006a200541021013200441e0006a1027410a47044010000b200041b4016a210103402002410a470440200441c8006a10192103200441a8016a200441e0006a20021013200441a8016a2003101b2001200310282001410c6a2101200241016a21020c010b0b200441306a20054103101302402004280234450d0020042802302d000041c001490d00200041b0026a2108200041ac026a210e20044188016a200441306a410110292106200441f8006a200441306a41001029210d200441d4006a210b200628020421010340200d280204200146410020062802082202200d280208461b0d03200441e0006a20012002411c10222101200441c8006a10192105200b1019210a20011027410247044010000b200441c0016a10192102200441a8016a200141001013200441a8016a2002101b20052002102820044198016a10192102200441a8016a200141011013200441a8016a2002101b200a200210280240200828020022014504402008220121020c010b20082102034002402005200141106a2203102a0440200128020022030d01200121020c030b20032005102a450d02200141046a210220012802042203450d02200221010b20012102200321010c000b000b20022802004504404128102622032004290348370210200341186a200441d0006a2802003602002005102b200341246a200b41086a2802003602002003411c6a200b290200370200200a102b200e200120022003102c0b20062006280204220120062802086a410020011b22013602042006280200220204402006200236020820012002102d21032006027f200628020422054504404100210241000c010b4100210241002006280208220a2003490d001a200a20032003417f461b210220050b2201ad2002ad42208684370204200641002006280200220320026b2202200220034b1b3602000c0105200641003602080c010b000b000b10000c010b410021070b200928020c22010440200920013602100b024020070d00200c2000290300370300200041a8016a200041086a100e1a41887f2101034020010440200020016a220241ac026a2002418c016a100e1a2001410c6a21010c010b0b20004190016a2106200041ac026a2102200028028c0121010240200041b4026a280200450d0020002802ac0221032000200041b0026a22053602ac02200041003602b40220052802002107200541003602002007410036020820032802042205200320051b2105034020052203450d0120012006470440200341106a200141106a100e21072003411c6a2001411c6a100e1a024020032802082205450440410021050c010b2003200528020022084604402005410036020020052802042208450d012008102e21050c010b200541003602042008450d002008102e21050b2002200441a8016a2007102f2107200220042802a80120072003102c2001103021010c010b0b0340200328020822030d000b200621010b034020012006460d0141281026220341106a2205200141106a10312002200441a8016a2005102f2105200220042802a80120052003102c2001103021010c000b000b200441d0016a240020000bdb05010c7f23004190016b22022400200241186a10242101200241e8006a22044100360200200241e0006a22064200370300200241d8006a2207420037030020024200370350200241d0006a2000290398011032210320022802502105200341046a103320012005103420012000290398011025220528020c200541106a28020047044010000b200528020421082005280200210920021024210320044100360200200642003703002007420037030020024200370350200241d0006a4100103520002903a001103220024180016a200041a8016a2204100f1036200041b4016a220710372201200041ac026a220a103820014101103521012002280250210b200141046a103341011026220141fe013a0000200328020c200341106a28020047044010000b2003280204220641016a220c20032802084b047f2003200c103920032802040520060b20032802006a20014101103a1a2003200328020441016a3602042003200141016a200b20016b6a103420034104103b2101200241e8006a4100360200200241e0006a4200370300200241d8006a420037030020024200370350200241d0006a20002903a0011032200241406b2004100f1036200710372207200a1038200120022802501034200120002903a0011025200241306a2004100f103c410a103b210441b40121010340200141ac02470440200420024180016a200020016a100f103c1a2001410c6a21010c010b0b2004200041b4026a280200103b2106200041b0026a210420002802ac02210103402001200447044020064102103b20024180016a200141106a100f103c200241f0006a2001411c6a100f103c1a2001103021010c010b0b200741046a10330240200328020c2003280210460440200328020021010c010b100020032802002101200328020c2003280210460d0010000b2009200820012003280204100b200328020c22010440200320013602100b200528020c22010440200520013602100b20024190016a24000b190020004200370200200041086a41003602002000102b20000b2501017f02402000280204450d0020002802002d000041c001490d002000103d21010b20010ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10191a0c010b200241186a200010202000103e21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102621032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1028200241206a24000baa0101047f230041e0006b22012400200141186a10242102200141d8006a4100360200200141d0006a4200370300200141c8006a420037030020014200370340200141406b200141306a2000100f1036210320012802402104200341046a10332002200410342002200141086a2000100f103c220028020c200041106a28020047044010000b20002802002000280204100c200028020c22020440200020023602100b200141e0006a24000b4301017f230041206b22022400200241086a200028020020002802042802001013200241086a2001101b20002802042200200028020041016a360200200241206a24000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000101e200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001103e2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b880101037f41cc08410136020041d0082802002100034020000440034041d40841d4082802002201417f6a2202360200200141014845044041cc084100360200200020024102746a22004184016a280200200041046a28020011020041cc08410136020041d00828020021000c010b0b41d408412036020041d008200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105020024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105020024d0d0020034104710440100020000f0b200042003702000b20000b4c01037f200041086a10191a200041146a21012000418c016a210203402001101921032001410c6a21012003410c6a2002470d000b20004190016a220142003702002000200136028c0120000b29002000410036020820004200370200200041001039200041146a41003602002000420037020c20000b2a01017f2000420020011005200028020422026a104342002001200220002802006a10062000104420000b0b002000410120001b10110b210002402000280204044020002802002d000041bf014b0d010b10000b2000103d0b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a2802003602002001102b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001105320004100200428020c2201200428020822022001102d22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000bb20101067f02400240200128020420012d00002202410176200241017122031b2205200028020420002d00002202410176200241017122041b2206200520064922071b2202450d002000280208200041016a20041b21002001280208200141016a20031b210103402002450d0120002d0000220320012d00002204460440200141016a2101200041016a21002002417f6a21020c010b0b200320046b22020d010b417f200720062005491b21020b2002411f760b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b200320012802004704402001104c2001280208220128020821020b200141013a000c200241003a000c2002104d0c010b02402004450d0020042d000c0d002004410c6a21030c020b200320012802004604402001104d2001280208220128020821020b200141013a000c200241003a000c2002104c0b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000b2701017f230041206b22022400200241086a200020014114102210502100200241206a240020000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a102a044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b160020002001100f1a2000410c6a2001410c6a100f1a0b8b0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002103f20026a0520020b41016a21030b027f200041186a28020022020440200041086a280200200041146a280200200210400c010b20000b2202200228020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001041200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011042200441106a24000b1300200028020820014904402000200110390b0bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031040280200210120022003417f6a360200200710454180104f044020072000410c6a280200417c6a10420b200141384f047f2001103f20016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110400c020b20000c010b0240200710450d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10460c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010262105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1047220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10482102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021049200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104a22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10482102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021049200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10460c010b20042001410175410120011b200320051048210241802010262106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104722013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104821032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031049200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021049052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104a22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104821062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061049200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071041200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103f20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110400c010b20000b2201200128020020036a36020020000b4a01027f230041106b2203240020004100103521000340200241f8004645044020002003200120026a100f10361a2002410c6a21020c010b0b2000410110352102200341106a240020020bba0101047f230041406a2202240002402001280208450440200041186a28020022030440200041086a280200200041146a2802002003104021000b2000200028020041016a3602000c010b2000410010352103200141046a2104200241146a2105200128020021000340200020044604402003410110351a05200241086a200041106a1031200341001035200241306a200241086a100f1036200241206a2005100f1036410110351a2000103021000c010b0b0b200241406b24000b2f01017f200028020820014904402001101120002802002000280204103a210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410260b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001103a1a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a104341004100200120002802006a10022000104420000b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a104320042001200220002802006a10042000104420000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001053200128020c210003402000450d01200141002001280208220320032000102d22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bff0201037f200028020445044041000f0b2000101e41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b3601017f200028020820014904402001101120002802002000280204103a210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1043200120002802006a22012002200110020c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104722023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10482103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031049200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001104b0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102621040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001104b0b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103a1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b3501017f230041106b220041f0880436020c41d808200028020c41076a417871220036020041dc08200036020041e0083f003602000b100020020440200020012002103a1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010512000103e6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f2001103e220220012802044b044010000b2000200120011051200210520b0b5101004180080b4a696e69740073657447726f757056616c75650067657447726f75704e616d650073657447726f7570417272617956616c75650067657447726f75704172726179496e64657856616c7565"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SETGROUPVALUE = "setGroupValue"; - - public static final String FUNC_GETGROUPNAME = "getGroupName"; - - public static final String FUNC_SETGROUPARRAYVALUE = "setGroupArrayValue"; - - public static final String FUNC_GETGROUPARRAYINDEXVALUE = "getGroupArrayIndexValue"; - - protected ReferenceDataTypeStructMultipleContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeStructMultipleContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeStructMultipleContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeStructMultipleContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeStructMultipleContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeStructMultipleContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall setGroupValue(String myGroupName, Uint64 myGroupId) { - final WasmFunction function = new WasmFunction(FUNC_SETGROUPVALUE, Arrays.asList(myGroupName,myGroupId), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setGroupValue(String myGroupName, Uint64 myGroupId, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETGROUPVALUE, Arrays.asList(myGroupName,myGroupId), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getGroupName() { - final WasmFunction function = new WasmFunction(FUNC_GETGROUPNAME, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall setGroupArrayValue(String oneValue, String twoValue) { - final WasmFunction function = new WasmFunction(FUNC_SETGROUPARRAYVALUE, Arrays.asList(oneValue,twoValue), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setGroupArrayValue(String oneValue, String twoValue, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETGROUPARRAYVALUE, Arrays.asList(oneValue,twoValue), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getGroupArrayIndexValue(Uint32 index) { - final WasmFunction function = new WasmFunction(FUNC_GETGROUPARRAYINDEXVALUE, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public static ReferenceDataTypeStructMultipleContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructMultipleContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeStructMultipleContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeStructMultipleContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeTupleContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeTupleContract.java deleted file mode 100644 index 427e9522f4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeTupleContract.java +++ /dev/null @@ -1,136 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ReferenceDataTypeTupleContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60027f7f0060017f017f60017f0060037f7f7f0060027f7f017f60037f7f7f017f60000060027f7e0060047f7f7f7f017f60047f7f7f7f0060017f017e60037e7e7f006000017f60017e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000903656e760d706c61746f6e5f72657475726e00000367660602020401040003000202000300030100000401030102010200060105030a0a0000020101000200000202010001010006080201000404020700080002050404050200010000070000070d0100000004010701050002010005080205030501060303010109000405017001050505030100020608017f0141d089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003d06696e766f6b650027090a010041010b040e0f181a0abc7d660400106c0b0300010bb40201047f230041f0006b22012400200141406b418b0810102104200141086a41900810101a200141146a41920810101a200141206a41940810101a2001412410112202360230200120023602342001200241246a360238034020034124464504402002200141086a20036a10121a20012001280234410c6a22023602342003410c6a21030c010b0b200141d0006a200410122104200141e8006a410036020020014200370360200141023a005c200141e0006a2103200220012802306b2202044020032002410c6d101320012802302001280234200141e4006a10140b200041286a20041015200041346a20012d005c3a0000200041386a22021016200220012802603602002000413c6a2001290264370200200141003602682001420037036020031017200141306a1017200141f0006a24000b1f0020004200370200200041086a41003602002000200120011020102120000b0b002000410120001b10280b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102120000b2301017f200020011024220236020020002002360204200020022001410c6c6a3602080b2e00034020002001464504402002280200200010121a20022002280200410c6a3602002000410c6a21000c010b0b0b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a280200360200200110230b1c00200028020004402000102520004100360208200042003702000b0b0e0020002802000440200010250b0b0c002000200141286a10121a0b3e01017f230041106b220324002003200110122101200320022d00003a000c200041e0006a20011015200041ec006a20032d000c3a0000200341106a24000b0d002000200141e0006a10121a0bfe0101037f230041b0026b22042400200441a0026a41800810102105200441a8016a101c2203418508101d2003410c6a418708101d200341186a418908101d200041d8036a22032001101e200041e8036a2002290300370300200441086a200510122101200441186a2003101f1a200441306a2102410021030340200220036a200441a8016a20036a10121a2003410c6a220341f800470d000b20004198026a20011015200041a8026a200441186a1015200041b8026a200441286a290300370300200041c0026a2102200441306a2100410021030340200341f80046450440200220036a200020036a10152003410c6a21030c010b0b200441b0026a24000b2c01037f200041f8006a21022000210103402001102221032001410c6a21012003410c6a2002470d000b20000b0c002000200120011020106e0b3401017f2000200147044020002001280208200141016a20012d0000220041017122021b2001280204200041017620021b106e0b0b15002000200110121a2000200129031037031020000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204101121032000200236020420002004410172360200200020033602080b200320012002106d200220036a41003a00000b190020004200370200200041086a41003602002000102320000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b09002000410c6c10110b0b002000200028020010260b0900200020013602040bc60502057f017e230041d0046b22002400106c10072201102822021008200041c8006a200041086a20022001102922014100102a02400240200041c8006a102b2205500d00419608102c200551044020014101102d0c020b419b08102c200551044020014102102d0c020b41af08102c200551044020014103102e0c020b41c308102c20055104402001102f200041c8006a1030220341346a2d00002102200041b8046a10312101200041386a4100360200200041306a4200370300200041286a420037030020004200370320200041206a2002103220002802202104200041206a4104721033200120041034200120021035200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310360c020b41d708102c2005510440200041206a103720011038410347044010000b200041c8006a20014101102a200041c8006a200041206a1039200041c8006a20014102102a2000200041c8006a103a3a002c200041c8006a10302101200041b8046a200041206a10122102200020002d002c3a004020012002200041406b1019200110360c020b41eb08102c200551044020014104102e0c020b41ff08102c2005510440200041206a102221022000420037033020011038410347044010000b200041c8006a20014101102a200041c8006a20021039200041c8006a20014102102a2000200041c8006a102b370330200041c8006a10302101200041b8046a2002101221022000200029033037034020012002200041406b101b200110360c020b419509102c2005520d002001102f200041b8046a200041c8006a1030220341a8026a101f2102200041206a103122012002103b103420012002103c200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310360c010b10000b103d200041d0046a24000b9b0101047f230041106b220124002001200036020c2000047f41c009200041086a2202411076220041c0092802006a220336020041bc0941bc09280200220420026a41076a417871220236020002400240200341107420024d044041c009200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104106a41086a0541000b2100200141106a240020000b0c00200020012002411c103e0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001107220012003280208200328020c104c36020c200320011072410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114103e1a200341106a24000f0b20032001107241002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104c10712001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b220124002000103f0240024020001040450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001041200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2b01017f230041f0036b220224002000102f2002103021002002200111020020001036200241f0036a24000bd90101037f230041d0046b220224002000102f200241086a10302104200241f8036a200241086a200111000020024188046a10312101200241c8046a4100360200200241c0046a4200370300200241b8046a4200370300200242003703b004200241b0046a200241a0046a200241f8036a10121042210320022802b0042100200341046a10332001200010342001200241b0046a200241f8036a10121043220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b20041036200241d0046a24000b0e0020001038410147044010000b0bc50f010d7f230041c0016b2201240020001044200042a688a28cb281eb80ef00370320200041286a220b1044200141f8006a1031220520002903201045200528020c200541106a28020047044010000b024020052802002203200528020422041009220c4504400c010b2001410036021020014200370308200141086a200c10462003200420012802082209200128020c220620096b100a417f470440200141a8016a200141d0006a200941016a20062009417f736a102922024100102a200141a8016a200b1039200141a8016a20024101102a200041346a200141a8016a103a3a000020014190016a20024102102a02400240200128029401450d002001280290012d000041c001490d00200041386a210820014190016a10382102200041406b220d280200200028023822036b410c6d20024904402008200141a8016a20022000413c6a28020020036b410c6d200d104722021048200210490b200141e8006a20014190016a4101104a2102200141286a20014190016a4100104a210620022802042103034020062802042003464100200228020822042006280208461b0d02200141a8016a20032004411c103e200141186a1022220410390240200028023c2203200028024049044020032001290318370200200341086a200141206a280200360200200410232000200028023c410c6a36023c0c010b200141386a2008200320082802006b410c6d220341016a104b2003200d10472103200128024022072001290318370200200741086a200141206a2802003602002004102320012001280240410c6a360240200820031048200310490b20022002280204220320022802086a410020031b22033602042002280200220404402002200436020820032004104c2107027f2002280204220a4504404100210341000c010b410021034100200228020822042007490d001a200a2103200420072007417f461b0b210420022003ad2004ad42208684370204200241002002280200220720046b2204200420074b1b3602000c0105200241003602080c010b000b000b10000b200c21020b2009450d002001200936020c0b200528020c22030440200520033602100b024020020d00200b2000101e200041346a20002d000c3a0000200041146a2802002204200028021022036b410c6d2206200041406b280200200041386a220228020022056b410c6d4d044020062000413c6a220728020020056b410c6d22084b0440200320032008410c6c6a22022005104d1a20022004200710140c020b2002200320042005104d10260c010b20021016200220022006104b1013200320042000413c6a10140b200041c8006a220a1037200041d8006a220342a588a28cb281eb80ef00370300200041e0006a2205103720014190016a1031220220032903001045200228020c200241106a28020047044010000b0240200228020022072002280204220810092206450440410021040c010b410021042001410036025820014200370350200141d0006a2006104620072008200128025022032001280254220920036b100a417f470440200141a8016a200141f8006a200341016a20092003417f736a102922044100102a200141a8016a20051039200141a8016a20044101102a200041ec006a200141a8016a103a3a0000200621040b2003450d00200120033602540b200228020c22030440200220033602100b20044504402005200a101e200041ec006a200041d4006a2d00003a00000b200041f0006a220a104e20004190026a220242a488a28cb281eb80ef0037030020004198026a2208104e200141f8006a1031220620022903001045200628020c200641106a28020047044010000b0240200628020022032006280204220410092207450440410021020c010b410021022001410036027020014200370368200141e8006a200710462003200420012802682205200128026c220920056b100a417f470440200141a8016a200141d0006a200541016a20092005417f736a102922024100102a200141a8016a20081039200141a8016a20024101102a200141a8016a200041a8026a104f20014190016a20024102102a024020012802940104402001280290012d000041bf014b0d010b10000b20014190016a1050410a47044010000b200041c0026a21034100210203402002410a46450440200141386a10222104200141a8016a20014190016a2002102a200141a8016a200410392003200410152003410c6a2103200241016a21020c010b0b200721020b2005450d002001200536026c0b200628020c22030440200620033602100b024020020d002008200a101e200041a8026a20004180016a1051419801210203402002419002460d01200020026a220341a8016a2003101e2002410c6a21020c000b000b200041b8036a220a10221a200041d0036a220342cac2cdc0b389a48ef500370300200041d8036a220510221a200141a8016a1031220220032903001045200228020c200241106a28020047044010000b0240200228020022072002280204220810092206450440410021040c010b41002104200141003602800120014200370378200141f8006a200610462007200820012802782203200128027c220920036b100a417f47044020014190016a200341016a20092003417f736a10292005104f200621040b2003450d002001200336027c0b200228020c22030440200220033602100b20044504402005200a10510b200141c0016a240020000b29002000410036020820004200370200200041001052200041146a41003602002000420037020c20000b090020002001ad10530bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001054200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011055200441106a24000b1300200028020820014904402000200110520b0b090020002001ad10560bb00d010a7f230041e0006b22032400200341306a10312202200041d0036a220129030010571034200220012903001045200041d8036a2105200228020c200241106a28020047044010000b2002280204210620022802002108200341186a103121012005103b2107200120031058220410592001200720042802046a20042802006b103420012005103c0240200128020c200141106a280200460440200141046a2105200128020021070c010b200141046a2105100020012802002107200128020c2001280210460d0010000b2008200620072005280200100b200428020022050440200420053602040b200128020c22040440200120043602100b200228020c22010440200220013602100b200341186a1031220420004190026a220129030010571034200420012903001045200428020c200441106a28020047044010000b2004280204210820042802002107200310312106200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330200341306a4100105a200341306a200341d0006a20004198026a2209101210422202200041a8026a220a105b20024100105a41c00221010340200141b8034704402002200341d0006a200020016a101210421a2001410c6a21010c010b0b20024101105a20024101105a20032802302101200241046a10332006200341d0006a1058220510592006200120052802046a20052802006b103420064103105c200341306a2009101210432201200a103c2001410a105c210241c00221010340200141b8034704402002200341306a200020016a101210431a2001410c6a21010c010b0b0240200228020c200241106a280200460440200241046a2101200228020021060c010b200241046a2101100020022802002106200228020c2002280210460d0010000b2007200820062001280200100b200528020022010440200520013602040b200228020c22010440200220013602100b200428020c22010440200420013602100b200341186a10312202200041d8006a220129030010571034200220012903001045200228020c200241106a28020047044010000b2002280204210520022802002106200310312101200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330200341306a4100105a200341306a200341d0006a200041e0006a2208101210422204200041ec006a22072d0000103220044101105a20032802302109200441046a10332001200341d0006a1058220410592001200920042802046a20042802006b103420014102105c200341306a200810121043220120072d000010350240200128020c200141106a280200460440200141046a2108200128020021070c010b200141046a2108100020012802002107200128020c2001280210460d0010000b2006200520072008280200100b200428020022050440200420053602040b200128020c22040440200120043602100b200228020c22010440200220013602100b200341186a10312205200029032010571034200520002903201045200528020c200541106a28020047044010000b2005280204210720052802002109200310312108200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330200341306a4100105a200341306a200341d0006a200041286a220a101210422202200041346a2d000010320240200041386a2802002000413c6a280200460440027f200341306a20032802482201450d001a2003280238200120032802446a417f6a220141087641fcffff07716a280200200141ff07714102746a0b2201200128020041016a3602000c010b20024100105a200028023c21042000280238210103402001200446044020024101105a052002200341d0006a2001101210421a2001410c6a21010c010b0b0b20024101105a20032802302101200241046a10332008200341d0006a1058220610592008200120062802046a20062802006b103420084103105c200341306a200a10121043220120002d003410352001200028023c200041386a22042802006b410c6d105c210220042802002101200028023c21040340200120044704402002200341306a2001101210431a2001410c6a21010c010b0b0240200228020c200241106a280200460440200241046a2101200228020021040c010b200241046a2101100020022802002104200228020c2002280210460d0010000b2009200720042001280200100b200628020022010440200620013602040b200228020c22010440200220013602100b200528020c22010440200520013602100b200041386a1017200041106a1017200341e0006a24000b0e00200010221a200041003a000c0b2501017f02402000280204450d0020002802002d000041c001490d002000105021010b20010ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10221a0c010b200241186a200010412000105d21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101121032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1015200241206a24000b7d01037f230041106b220124002000103f0240024020001040450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001041200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b4f01017f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000105b2001280200210020014104721033200141206a240020000b7b01027f230041406a2202240020004102105c2100200241386a4100360200200241306a4200370300200241286a420037030020024200370320200241206a200241106a20011012104222032001290310105e2000200228022010342000200220011012104320012903101045200341046a1033200241406b24000b880101037f41ac09410136020041b0092802002100034020000440034041b40941b4092802002201417f6a2202360200200141014845044041ac094100360200200020024102746a22004184016a280200200041046a28020011020041ac09410136020041b00928020021000c010b0b41b409412036020041b009200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106f20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000106f20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000103f200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f2001105d2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002105f20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110600c010b20000b2201200128020020036a36020020000b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a106120042001200220002802006a10042000106220000b1f00200010221a200041186a410036020020004200370210200041003a000c0b08002000200110560bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001101121060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001106a1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b4c01017f2000410036020c200041106a2003360200200104402001102421040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000baa0101037f200028020421022000280200210303402002200346450440200128020441746a2204200241746a2202290200370200200441086a200241086a280200360200200210232001200128020441746a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001107220004100200428020c2201200428020822022001104c22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0b2701017f230041206b22022400200241086a200020014114103e106f2100200241206a240020000b26000340200020014645044020022000101e2002410c6a21022000410c6a21000c010b0b20020b1900200010221a200041106a10221a200041286a106b101c1a0b3f01017f230041206b22022400200241086a20004100102a200241086a20011039200241086a20004101102a2001200241086a102b370310200241206a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001072200128020c210003402000450d01200141002001280208220320032000104c22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b120020002001101e200020012903103703100b2f01017f200028020820014904402001102820002802002000280204106a210220002001360208200020023602000b0b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002105f20026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002106021000b2000200028020020036a3602000b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f2000420020011005200028020422026a106142002001200220002802006a1006200010620b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000105e2001280200210220014104721033200141206a240020020b3a01017f20004100360208200042003702002000410110112201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105220002802040520020b20002802006a20032001106a1a2000200028020420016a3602040bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031060280200210120022003417f6a360200200710634180104f044020072000410c6a280200417c6a10550b200141384f047f2001105f20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002106021000c010b0240200710630d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10640c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010112105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1065220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10662102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021067200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a106822013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10662102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021067200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10640c010b20042001410175410120011b200320051066210241802010112106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a106522013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200106621032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031067200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021067052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a106822013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210106621062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061067200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071054200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b3301017f230041106b2202240020004100105a2000200220011012104222002001290310105e20004101105a200241106a24000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410110b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001106a1a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a106141004100200120002802006a10022000106220000bff0201037f200028020445044041000f0b2000103f41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b08002000200110530b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b3601017f200028020820014904402001102820002802002000280204106a210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1061200120002802006a22012002200110020c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a106522023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10662103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031067200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110690b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101121040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110690b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002106a1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bc90201037f200041003a0000200041f8006a2202417f6a41003a0000200041003a0002200041003a00012002417d6a41003a00002002417e6a41003a0000200041003a00032002417c6a41003a00002000410020006b41037122016a22024100360200200241f80020016b417c7122016a2203417c6a4100360200024020014109490d002002410036020820024100360204200341786a4100360200200341746a410036020020014119490d002002410036021820024100360214200241003602102002410036020c200341706a41003602002003416c6a4100360200200341686a4100360200200341646a41003602002001200241047141187222016b2103200120026a2101034020034120490d0120014200370300200141186a4200370300200141106a4200370300200141086a4200370300200141206a2101200341606a21030c000b000b20000b3501017f230041106b220041d0890436020c41b809200028020c41076a417871220036020041bc09200036020041c0093f003602000b100020020440200020012002106a1a0b0bd40101027f410a210320002d0000410171220404402000280200417e71417f6a21030b200320024f0440027f2004044020002802080c010b200041016a0b21032002044020032001200210690b200220036a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2104200341e6ffffff074d0440410b200341017422032002200320024b1b220341106a4170712003410b491b21040b20041011220320012002106d200020023602042000200441017236020020002003360208200220036a41003a00000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010702000105d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f2001105d220220012802044b044010000b2000200120011070200210710b0bb00101004180080ba8014c696c69006100620063004c75637900310032003300696e697400736574496e69745475706c654d6f64654f6e65006765745475706c6556616c7565496e64657831006765745475706c6556616c7565496e6465783200736574496e69745475706c654d6f646554776f006765745475706c6556616c7565496e6465783300736574496e69745475706c654d6f64655468726565006765745475706c6556616c7565496e64657834"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SETINITTUPLEMODEONE = "setInitTupleModeOne"; - - public static final String FUNC_GETTUPLEVALUEINDEX4 = "getTupleValueIndex4"; - - public static final String FUNC_GETTUPLEVALUEINDEX1 = "getTupleValueIndex1"; - - public static final String FUNC_GETTUPLEVALUEINDEX2 = "getTupleValueIndex2"; - - public static final String FUNC_SETINITTUPLEMODETWO = "setInitTupleModeTwo"; - - public static final String FUNC_GETTUPLEVALUEINDEX3 = "getTupleValueIndex3"; - - public static final String FUNC_SETINITTUPLEMODETHREE = "setInitTupleModeThree"; - - protected ReferenceDataTypeTupleContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeTupleContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeTupleContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeTupleContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeTupleContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeTupleContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall setInitTupleModeOne() { - final WasmFunction function = new WasmFunction(FUNC_SETINITTUPLEMODEONE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setInitTupleModeOne(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETINITTUPLEMODEONE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getTupleValueIndex4() { - final WasmFunction function = new WasmFunction(FUNC_GETTUPLEVALUEINDEX4, Arrays.asList(), Person.class); - return executeRemoteCall(function, Person.class); - } - - public RemoteCall getTupleValueIndex1() { - final WasmFunction function = new WasmFunction(FUNC_GETTUPLEVALUEINDEX1, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall getTupleValueIndex2() { - final WasmFunction function = new WasmFunction(FUNC_GETTUPLEVALUEINDEX2, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall setInitTupleModeTwo(String a, Uint8 b) { - final WasmFunction function = new WasmFunction(FUNC_SETINITTUPLEMODETWO, Arrays.asList(a,b), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setInitTupleModeTwo(String a, Uint8 b, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETINITTUPLEMODETWO, Arrays.asList(a,b), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getTupleValueIndex3() { - final WasmFunction function = new WasmFunction(FUNC_GETTUPLEVALUEINDEX3, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall setInitTupleModeThree(String name, Uint64 age) { - final WasmFunction function = new WasmFunction(FUNC_SETINITTUPLEMODETHREE, Arrays.asList(name,age), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setInitTupleModeThree(String name, Uint64 age, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETINITTUPLEMODETHREE, Arrays.asList(name,age), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static ReferenceDataTypeTupleContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeTupleContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeTupleContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeTupleContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Person { - public String name; - - public Uint64 age; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeVectorContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeVectorContract.java deleted file mode 100644 index e049c28732..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeVectorContract.java +++ /dev/null @@ -1,107 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ReferenceDataTypeVectorContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60027f7f0060017f017f60017f0060037f7f7f017f60037f7f7f0060027f7f017f60000060047f7f7f7f017f60047f7f7f7f0060027f7e0060037e7e7f006000017f60017e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000503656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000503656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e00000343420600050507000200000201010601030402000e0201020101000001000200000c090607010305030400020000030502000103000000020100030702030404060101080405017001010105030100020608017f0141f088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002e06696e766f6b6500190a8859420400104b0b8a0101047f230041206b2202240002402000411c6a2802002203200041206a220428020047044020032001100f1a2000200028021c410c6a36021c0c010b200241086a200041186a2205200320002802186b410c6d220041016a101020002004101122002802082001100f1a20002000280208410c6a360208200520001012200010130b200241206a24000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101821022000200136020420002004410172360200200020023602080b200220032001104a200120026a41003a000020000b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0b4c01017f2000410036020c200041106a2003360200200104402001101721040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000baa0101037f200028020421022000280200210303402002200346450440200128020441746a2204200241746a2202290200370200200441086a200241086a280200360200200210162001200128020441746a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0b2401017f230041106b2202240020022001100f1a200041186a20021015200241106a24000bb00101037f230041206b22032400024020002802042202200028020849044020022001290200370200200241086a200141086a2802003602002001101620002000280204410c6a3602040c010b200341086a2000200220002802006b410c6d220241016a10102002200041086a1011220228020822042001290200370200200441086a200141086a2802003602002001101620022002280208410c6a360208200020021012200210130b200341206a24000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b09002000410c6c10180b0b002000410120001b101a0be20602057f017e230041a0016b22002400104b10072201101a22021008200041f8006a200041086a20022001101b22034100101c200041f8006a101d02400240200028027c450d00200041f8006a101d0240200028027822022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028027c41014d04401000200028027821020b20022d00010d010c020b200441bf014b0d01200028027c200141ff017141ca7e6a22014d04401000200028027821020b200120026a2d0000450d010b200028027c450d0020022d000041c001490d010b10000b200041d8006a200041f8006a101e200028025c220141094f044010000b200028025821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008101f200551044020031020200041f8006a102110220c020b418508101f2005510440200041306a1023210120031024410247044010000b200041f8006a20034101101c200041f8006a200041306a1025200041f8006a10212102200041d8006a2001100f1a200041f8006a200041d8006a100e200210220c020b419808101f2005510440200041306a1023210120031024410247044010000b200041f8006a20034101101c200041f8006a20011026200041f8006a10212102200041f8006a200041d8006a2001100f1014200210220c020b41ab08101f200551044020031020200041f8006a10212103200041206a200028029001100f2102200041306a10272101200041f0006a4100360200200041e8006a4200370300200041e0006a420037030020004200370358200041d8006a200041c8006a2002100f102820002802582104200041d8006a410472102920012004102a2001200041d8006a2002100f102b200128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310220c020b41c008101f2005520d0020031020200041f8006a1021210220004194016a28020021032000280290012104200041d8006a10272201200320046b410c6dad2205102c102a20012005102d200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210220c010b10000b102e200041a0016a24000b9b0101047f230041106b220124002001200036020c2000047f41ec08200041086a2202411076220041ec082802006a220336020041e80841e808280200220420026a41076a417871220236020002400240200341107420024d044041ec08200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103941086a0541000b2100200141106a240020000b0c00200020012002411c102f0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103c20012003280208200328020c103236020c20032001103c410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102f1a200341106a24000f0b20032001103c41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041032104e2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110302204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001024410147044010000b0b8706010a7f23004180016b22052400200042003702182000428debc585c3a7f9dbf7003703102000410036020820004200370200200041206a4100360200200541206a102722062000290310102d200628020c200641106a28020047044010000b200041186a21080240200628020022032006280204220410092207450d002007101821020340200120026a41003a00002007200141016a2201470d000b2003200420022001100a417f460440410021010c010b02400240200541086a200241016a200120026a2002417f736a101b2202280204450d0020022802002d000041c001490d002002102421012000280220200028021822036b410c6d20014904402008200541c8006a2001200028021c20036b410c6d200041206a101122011012200110130b200541f0006a2002410110312101200541e0006a200241001031210420012802042102034020042802042002464100200128020822032004280208461b0d02200541c8006a20022003411c102f2102200541386a10231a2002200541386a10252008200541386a101520012001280204220220012802086a410020021b22023602042001280200220304402001200336020820022003103221092001027f2001280204220a4504404100210341000c010b410021034100200128020822022009490d001a200220092009417f461b2103200a0b2202ad2003ad42208684370204200141002001280200220920036b2203200320094b1b3602000c0105200141003602080c010b000b000b10000b200721010b200628020c22020440200620023602100b024020010d002000411c6a210220002802042203200028020022076b410c6d22042000280220200028021822016b410c6d4d04402004200228020020016b410c6d22064b0440200720072006410c6c6a2204200110331a20042003200210340c020b2008200720032001103310350c010b200104402008103620004100360220200042003702180b20002008200410102204101722013602182000200136021c200020012004410c6c6a36022020072003200210340b20054180016a240020000bf804010a7f230041f0006b22012400200141186a102722042000290310102c102a20042000290310102d200428020c200441106a28020047044010000b200428020421092004280200210a200110272103200141e8006a4100360200200141e0006a4200370300200141d8006a420037030020014200370350027f20002802182000411c6a2802004604402001410136025041010c010b200141d0006a41001037200028021c210520002802182102037f2002200546047f200141d0006a41011037200128025005200141d0006a41001037200141d0006a200141406b2002100f1028200141d0006a410110372002410c6a21020c010b0b0b2106200141d0006a410472102941011018220241fe013a0000200328020c200341106a28020047044010000b200241016a21072003280204220541016a220820032802084b047f20032008103820032802040520050b20032802006a2002410110391a2003200328020441016a3602042003200620026b20076a102a2003200028021c20002802186b410c6d103a2107200141d0006a4104722108200028021c21062000280218210203402002200647044020074101103a210520014100360268200142003703602001420037035820014200370350200141d0006a200141406b2002100f102820052001280250102a2005200141306a2002100f102b200810292002410c6a21020c010b0b0240200328020c2003280210460440200328020021020c010b100020032802002102200328020c2003280210460d0010000b200a200920022003280204100b200328020c22020440200320023602100b200428020c22020440200420023602100b200041186a103b2000103b200141f0006a24000b190020004200370200200041086a41003602002000101620000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103c200128020c210003402000450d01200141002001280208220320032000103222046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b2801017f230041206b22022400200241086a20004100101c200241086a20011026200241206a24000bf40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10231a0c010b200241186a2000101e2000103021030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101821032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1016200241206a24000b29002000410036020820004200370200200041001038200041146a41003602002000420037020c20000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103d20026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001103e21000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000103f200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011040200441106a24000b1300200028020820014904402000200110380b0b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a104120042001200220002802006a1004200010420b990102037f017e230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703004101210320004280015a0440034020002004845045044020044238862000420888842100200241016a2102200442088821040c010b0b200241384f047f2002103d20026a0520020b41016a21030b2001200336020020014104721029200141206a240020030b2801017f2000420020011005200028020422026a104142002001200220002802006a1006200010420b880101037f41d808410136020041dc082802002100034020000440034041e00841e0082802002201417f6a2202360200200141014845044041d8084100360200200020024102746a22004184016a280200200041046a28020011020041d808410136020041dc0828020021000c010b0b41e008412036020041dc08200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104c20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104c20024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101d41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001103c20004100200428020c2201200428020822022001103222032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a200020014114102f104c2100200241206a240020000bd00201077f200120006b2108410021010340200120026a2105200120084645044002402005200020016a2203460d00200341046a28020020032d00002204410176200441017122071b2104200341016a2106200341086a2802002109410a21032009200620071b210720052d0000410171220604402005280200417e71417f6a21030b200420034d0440027f20060440200541086a2802000c010b200541016a0b21032004044020032007200410490b200320046a41003a000020052d00004101710440200541046a20043602000c020b200520044101743a00000c010b416f2106200341e6ffffff074d0440410b20034101742203200420042003491b220341106a4170712003410b491b21060b20061018220320072004104a200541046a200436020020052006410172360200200541086a2003360200200320046a41003a00000b2001410c6a21010c010b0b20050b2e000340200020014645044020022802002000100f1a20022002280200410c6a3602002000410c6a21000c010b0b0b0900200020013602040b0b002000200028020010350bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203103e280200210120022003417f6a360200200710434180104f044020072000410c6a280200417c6a10400b200141384f047f2001103d20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103e21000c010b0240200710430d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10440c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010182105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1045220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10462102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021047200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104822013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10462102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021047200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10440c010b20042001410175410120011b200320051046210241802010182106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104522013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104621032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031047200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021047052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104822013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104621062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061047200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007103f200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b2f01017f200028020820014904402001101a200028020020002802041039210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410180b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110391a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a104141004100200120002802006a10022000104220000b0e0020002802000440200010360b0b2101017f20011030220220012802044b044010000b200020012001104d2002104e0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b3601017f200028020820014904402001101a200028020020002802041039210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1041200120002802006a22012002200110020c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104522023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10462103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031047200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110490b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101821040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110490b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210391a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b10002002044020002001200210391a0b0b3501017f230041106b220041f0880436020c41e408200028020c41076a417871220036020041e808200036020041ec083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000104d200010306a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b5c01004180080b55696e697400736574436c6f74686573436f6c6f724f6e6500736574436c6f74686573436f6c6f7254776f00676574436c6f74686573436f6c6f72496e64657800676574436c6f74686573436f6c6f724c656e677468"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SETCLOTHESCOLORONE = "setClothesColorOne"; - - public static final String FUNC_SETCLOTHESCOLORTWO = "setClothesColorTwo"; - - public static final String FUNC_GETCLOTHESCOLORINDEX = "getClothesColorIndex"; - - public static final String FUNC_GETCLOTHESCOLORLENGTH = "getClothesColorLength"; - - protected ReferenceDataTypeVectorContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeVectorContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeVectorContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeVectorContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeVectorContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeVectorContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall setClothesColorOne(Clothes myClothes) { - final WasmFunction function = new WasmFunction(FUNC_SETCLOTHESCOLORONE, Arrays.asList(myClothes), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setClothesColorOne(Clothes myClothes, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETCLOTHESCOLORONE, Arrays.asList(myClothes), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall setClothesColorTwo(String my_color) { - final WasmFunction function = new WasmFunction(FUNC_SETCLOTHESCOLORTWO, Arrays.asList(my_color), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall setClothesColorTwo(String my_color, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETCLOTHESCOLORTWO, Arrays.asList(my_color), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getClothesColorIndex() { - final WasmFunction function = new WasmFunction(FUNC_GETCLOTHESCOLORINDEX, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall getClothesColorLength() { - final WasmFunction function = new WasmFunction(FUNC_GETCLOTHESCOLORLENGTH, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static ReferenceDataTypeVectorContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeVectorContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeVectorContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeVectorContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Clothes { - public String color; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeVectorFuncContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeVectorFuncContract.java deleted file mode 100644 index ad9a6e88af..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ReferenceDataTypeVectorFuncContract.java +++ /dev/null @@ -1,160 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ReferenceDataTypeVectorFuncContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001591060027f7f0060017f0060017f017f60037f7f7f0060037f7f7f017f60000060027f7f017f60047f7f7f7f017f60047f7f7f7f0060027f7e0060017f017e60037e7e7f006000017f60027f7e017f60017e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000303656e760e726c705f62797465735f73697a65000603656e7610706c61746f6e5f726c705f6279746573000303656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000035251050100060800060704010103030000010001010100020302050204030a0a00020200020101020e0009010009010d05070100000602000404030000000400010001020400000200040701040305030202080405017001070705030100020608017f0141d089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003b06696e766f6b650025090c010041010b060e1a1b1c1e1f0abe6451040010590b0300010bd20302077f017e230041306b22072400200041186a21082000280218210402402000411c6a2802002203200041206a2205280200490440200320044604402004200110101a2000200028021c410c6a36021c0c020b2008200420032004410c6a10112004200420014d047f2001410c6a2001200028021c20014b1b0520010b10120c010b024020072008200320046b410c6d41016a101341002005101422022802082200200228020c2203470d0020022802042205200228020022064b04402002200520002005200520066b410c6d41016a417e6d410c6c22036a101522003602082002200228020420036a3602040c010b200741186a200320066b2200410c6d410174410120001b22002000410276200241106a28020010142103200228020821062002280204210003402000200646450440200328020822052000290200370200200541086a200041086a2802003602002000101620032003280208410c6a3602082000410c6a21000c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031017200228020821000b2000200110101a20022002280208410c6a3602082008200220041018200210170b200741306a24000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102421022000200136020420002004410172360200200020023602080b200220032001105a200120026a41003a000020000b970101037f20012000280204220520036b410c6d2206410c6c6a2103200521040340200320024f0440200541746a21042006410c6c2103200141746a21000340200304402004200020036a1021200441746a2104200341746a21030c010b0b0520042003290200370200200441086a200341086a2802003602002003101620002000280204410c6a22043602042003410c6a21030c010b0b0b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210580b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b20031024220120042002105a200020023602042000200341017236020020002001360208200120026a41003a00000b0b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0b4c01017f2000410036020c200041106a2003360200200104402001102221040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000b2600034020002001464504402002200010212002410c6a21022000410c6a21000c010b0b20020b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0bb00101027f20002802002002200141046a10232000280204210303402002200346450440200128020822042002290200370200200441086a200241086a2802003602002002101620012001280208410c6a3602082002410c6a21020c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000bbc02010a7f230041206b22072400024020012802002204450d00200041186a210620002802182101200041206a22032802002000411c6a28020022056b410c6d20044f0440200520016b220a410c6d220820042203490440200820046b21032005210903402009200210101a2000200028021c410c6a220936021c200341016a220b20034f210c200b2103200c0d000b20082103200a450d020b20062001200520012004410c6c22046a1011200120024d0440200220046a2002200028021c20024b1b21020b03402003450d022001200210122001410c6a21012003417f6a21030c000b000b200741086a2006200520016b410c6d20046a10134100200310142203280208210003402000200210101a20032003280208410c6a22003602082004417f6a22040d000b2006200320011018200310170b200741206a24000b0c002000200128021810101a0b120020002001411c6a28020041746a10101a0b1400200041186a2000411c6a28020041746a101d0b0900200020013602040b2101017f200041186a20002802182201410c6a2000411c6a28020020011015101d0b0900200041186a10200b0b0020002000280200101d0b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a280200360200200110160b09002000410c6c10240b4a01017f03402000200146450440200228020041746a2203200141746a2201290200370200200341086a200141086a280200360200200110162002200228020041746a3602000c010b0b0b0b002000410120001b10260bc10602057f017e23004180016b22002400105910072201102622021008200041206a200020022001102722014100102802400240200041206a10292205500d00418008102a200551044020014101102b0c020b418508102a2005510440200041c8006a102c21022001102d410247044010000b200041206a200141011028200041206a2002102e200041206a102f2101200041206a200041e0006a20021010100f200110300c020b419708102a200551044020004200370360200041e8006a102c21022001102d410347044010000b200041206a2001410110282000200041206a1029370360200041206a200141021028200041206a2002102e200041206a102f210120002903602105200041c8006a20021010210220002005370318200041206a200041186a20021019200110300c020b41ad08102a200551044020011031200041206a102f21022000413c6a280200210320002802382104200041e0006a10322201200320046b410c6dad220510331034200120051035200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210300c020b41bd08102a20055104402001102d410247044010000b200041206a200141011028200041206a10292105200041206a102f210120002005370348200041e0006a200041206a280218200041c8006a280200410c6c6a10101a200041e0006a1036200110300c020b41ca08102a20055104402001410210370c020b41da08102a20055104402001410310370c020b41e908102a200551044020014104102b0c020b41fd08102a200551044020014105102b0c020b418f09102a200551044020014106102b0c020b41a109102a2005520d0020011031200041206a102f21022000413c6a280200210320002802382104200041c8006a10322101200041f8006a4100360200200041f0006a4200370300200041e8006a420037030020004200370360200041e0006a2003200446ad2205103820002802602103200041e0006a410472103920012003103420012005103a220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210300c010b10000b103b20004180016a24000b9b0101047f230041106b220124002001200036020c2000047f41c809200041086a2202411076220041c8092802006a220336020041c40941c409280200220420026a41076a417871220236020002400240200341107420024d044041c809200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104104941086a0541000b2100200141106a240020000b0c00200020012002411c103c0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103f20012003280208200328020c104036020c20032001103f410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114103c1a200341106a24000f0b20032001103f41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041040105d2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b220324002000103d024002402000280204450d002000103d0240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a2000103e200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2f01017f230041306b2202240020001031200241086a102f2100200241086a200111010020001030200241306a24000b190020004200370200200041086a41003602002000101620000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000103f200128020c210003402000450d01200141002001280208220320032000104022046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a102c1a0c010b200241186a2000103e2000104121030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102421032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1021200241206a24000b9707010c7f23004190016b22042400200042003702182000428debc585c3a7f9dbf7003703102000410036020820004200370200200041206a4100360200200441186a1032220820002903101035200828020c200841106a28020047044010000b200041186a21052000411c6a210a0240200828020022032008280204220910092206450d002006102421020340200120026a41003a00002006200141016a2201470d000b2003200920022001100a417f460440410021010c010b024002402004200241016a200120026a2002417f736a10272202280204450d0020022802002d000041c001490d002002102d21012000280220200028021822036b410c6d20014904402005200441406b2001200028021c20036b410c6d200041206a101422011042200110170b200441e8006a2002410110432101200441d8006a2002410010432109200041206a210b20012802042102034020092802042002464100200128020822032009280208461b0d02200441406b20022003411c103c200441306a102c2203102e0240200028021c2202200028022049044020022004290330370200200241086a200441386a28020036020020031016200a200a280200410c6a3602000c010b200441f8006a2005200220052802006b410c6d220241016a10132002200b1014210220042802800122072004290330370200200741086a200441386a280200360200200310162004200428028001410c6a36028001200520021042200210170b20012001280204220220012802086a410020021b22023602042001280200220304402001200336020820022003104021072001027f2001280204220c4504404100210341000c010b410021034100200128020822022007490d001a200220072007417f461b2103200c0b2202ad2003ad42208684370204200141002001280200220720036b2203200320074b1b3602000c0105200141003602080c010b000b000b10000b200621010b200828020c22020440200820023602100b024020010d0020002802042206200028020022026b410c6d22032000280220200028021822016b410c6d4d04402003200a28020020016b410c6d22094b0440200220022009410c6c6a2203200110441a20032006200a10450c020b20052002200620011044101d0c010b200104402005102020004100360220200042003702180b20002005200310132203102222013602182000200136021c200020012003410c6c6a36022020022006200a10450b20044190016a240020000ba506010b7f230041e0006b22032400200341186a10322208200029031010331034200820002903101035200828020c200841106a28020047044010000b2008280204210a2008280200210b200310322101200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330027f20002802182000411c6a2802004604402003410136023041010c010b200341306a41001046200028021c210420002802182102037f2002200446047f200341306a41011046200328023005200341306a200341d0006a2002101010472002410c6a21020c010b0b0b2106200341306a410472103941011024220241fe013a0000200128020c200141106a28020047044010000b200241016a21052001280204220441016a220720012802084b047f20012007104820012802040520040b20012802006a2002410110491a2001200128020441016a3602042001200620026b20056a10340240200028021c20002802186b220204402002410c6d21022001280204210420012802102205200141146a280200220649044020052002ad2004ad422086843702002001200128021041086a3602100c020b027f41002005200128020c22076b410375220941016a2205200620076b2206410275220720072005491b41ffffffff01200641037541ffffffff00491b2207450d001a200741037410240b2105200520094103746a22062002ad2004ad4220868437020020062001280210200128020c22096b22026b2104200520074103746a2105200641086a2106200241014e044020042009200210491a0b20012005360214200120063602102001200436020c0c010b200141001001200128020422026a104a41004100200220012802006a10022001104b0b200028021c2104200028021821020340200220044704402001200341306a20021010104c2002410c6a21020c010b0b0240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b200b200a20022001280204100b200128020c22020440200120023602100b200828020c22020440200820023602100b200041186a104d2000104d200341e0006a24000b0e002000102d410147044010000b0b29002000410036020820004200370200200041001048200041146a41003602002000420037020c20000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200010382001280200210220014104721039200141206a240020020b1300200028020820014904402000200110480b0b090020002001103a1a0bab0101037f230041e0006b22012400200141186a10322102200141d8006a4100360200200141d0006a4200370300200141c8006a420037030020014200370340200141406b200141306a20001010104720012802402103200141406b41047210392002200310342002200141086a20001010104c200228020c200241106a28020047044010000b20022802002002280204100c200228020c22000440200220003602100b200141e0006a24000b3b01017f230041406a2202240020001031200241086a102f2100200241306a200241086a2001110000200241306a103620001030200241406b24000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002104e20026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002104f21000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001050200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011051200441106a24000b2a01017f2000420020011005200028020422026a104a42002001200220002802006a10062000104b20000b880101037f41b409410136020041b8092802002100034020000440034041bc0941bc092802002201417f6a2202360200200141014845044041b4094100360200200020024102746a22004184016a280200200041046a28020011010041b409410136020041b80928020021000c010b0b41bc09412036020041b809200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105b20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105b20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110412204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b2101017f20011041220220012802044b044010000b200020012001105c2002105d0b2701017f230041206b22022400200241086a200020014114103c105b2100200241206a240020000bff0201037f200028020445044041000f0b2000103d41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b6701017f20002802002000280204200141046a1023200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001103f20004100200428020c2201200428020822022001104022032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2600034020002001464504402002200010122002410c6a21022000410c6a21000c010b0b20020b2e00034020002001464504402002280200200010101a20022002280200410c6a3602002000410c6a21000c010b0b0bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203104f280200210120022003417f6a360200200710524180104f044020072000410c6a280200417c6a10510b200141384f047f2001104e20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002104f21000c010b0240200710520d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10530c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010242105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1054220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10552102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021056200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a105722013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10552102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021056200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10530c010b20042001410175410120011b200320051055210241802010242106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a105422013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200105521032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031056200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021056052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a105722013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210105521062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061056200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071050200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104e20026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001104f21000b2000200028020020036a3602000b2f01017f2000280208200149044020011026200028020020002802041049210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3601017f2000280208200149044020011026200028020020002802041049210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a104a200120002802006a22012002200110020c010b0b0b4c01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a104a20042001200220002802006a10042000104b0b0e0020002802000440200010200b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a105422023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10552103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031056200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110580b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102421040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110580b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210491a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041d0890436020c41c009200028020c41076a417871220036020041c409200036020041c8093f003602000b10002002044020002001200210491a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000105c200010416a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0bb80101004180080bb001696e697400696e73657274566563746f7256616c756500696e73657274566563746f724d616e6756616c756500676574566563746f724c656e6774680066696e64566563746f7241740066696e64566563746f7246726f6e740066696e64566563746f724261636b0064656c657465566563746f72506f704261636b0064656c657465566563746f7245726173650064656c657465566563746f72436c6561720066696e64566563746f72456d707479"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_DELETEVECTORPOPBACK = "deleteVectorPopBack"; - - public static final String FUNC_INSERTVECTORVALUE = "insertVectorValue"; - - public static final String FUNC_INSERTVECTORMANGVALUE = "insertVectorMangValue"; - - public static final String FUNC_GETVECTORLENGTH = "getVectorLength"; - - public static final String FUNC_FINDVECTORAT = "findVectorAt"; - - public static final String FUNC_FINDVECTORFRONT = "findVectorFront"; - - public static final String FUNC_FINDVECTORBACK = "findVectorBack"; - - public static final String FUNC_DELETEVECTORERASE = "deleteVectorErase"; - - public static final String FUNC_DELETEVECTORCLEAR = "deleteVectorClear"; - - public static final String FUNC_FINDVECTOREMPTY = "findVectorEmpty"; - - protected ReferenceDataTypeVectorFuncContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ReferenceDataTypeVectorFuncContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall deleteVectorPopBack() { - final WasmFunction function = new WasmFunction(FUNC_DELETEVECTORPOPBACK, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteVectorPopBack(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DELETEVECTORPOPBACK, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall insertVectorValue(String my_value) { - final WasmFunction function = new WasmFunction(FUNC_INSERTVECTORVALUE, Arrays.asList(my_value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall insertVectorValue(String my_value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_INSERTVECTORVALUE, Arrays.asList(my_value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeVectorFuncContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeVectorFuncContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeVectorFuncContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ReferenceDataTypeVectorFuncContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall insertVectorMangValue(Uint64 num, String my_value) { - final WasmFunction function = new WasmFunction(FUNC_INSERTVECTORMANGVALUE, Arrays.asList(num,my_value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall insertVectorMangValue(Uint64 num, String my_value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_INSERTVECTORMANGVALUE, Arrays.asList(num,my_value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getVectorLength() { - final WasmFunction function = new WasmFunction(FUNC_GETVECTORLENGTH, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall findVectorAt(Uint64 index) { - final WasmFunction function = new WasmFunction(FUNC_FINDVECTORAT, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall findVectorFront() { - final WasmFunction function = new WasmFunction(FUNC_FINDVECTORFRONT, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall findVectorBack() { - final WasmFunction function = new WasmFunction(FUNC_FINDVECTORBACK, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall deleteVectorErase() { - final WasmFunction function = new WasmFunction(FUNC_DELETEVECTORERASE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteVectorErase(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DELETEVECTORERASE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall deleteVectorClear() { - final WasmFunction function = new WasmFunction(FUNC_DELETEVECTORCLEAR, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall deleteVectorClear(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DELETEVECTORCLEAR, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall findVectorEmpty() { - final WasmFunction function = new WasmFunction(FUNC_FINDVECTOREMPTY, Arrays.asList(), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public static ReferenceDataTypeVectorFuncContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeVectorFuncContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ReferenceDataTypeVectorFuncContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ReferenceDataTypeVectorFuncContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Sha3Function.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Sha3Function.java deleted file mode 100644 index 44245bbac4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/Sha3Function.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class Sha3Function extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001490d60000060017f017f60017f0060027f7f006000017f60037f7f7f0060047f7f7f7f0060037e7e7f0060027f7f017f60037f7f7f017f60047f7f7f7f017f60027e7e017f60017f017e02c3010903656e760b706c61746f6e5f73686133000603656e760c706c61746f6e5f70616e6963000003656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000b03656e760f706c61746f6e5f726c705f75313238000703656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000403656e7610706c61746f6e5f6765745f696e707574000203656e760d706c61746f6e5f72657475726e000303131200040900010a030802010c020303000001010405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300090f5f5f66756e63735f6f6e5f65786974001706696e766f6b65000c0af91d12040010180b7701027f230041406a220024002000413c6a4184082d00003a00002000418008280000360238200041286a4200370300200041206a42003703002000420037031820004200370310200041386a4105200041106a412010002000410c6a200041106a4120100b1a200028020c2101200041406b240020010bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b930802087f027e230041406a22022400101810062200100d220110070240200241086a20012000411c100e2203280208450440200341146a2802002100200328021021010c010b200241386a2003100f20032002280238200228023c101036020c200241206a2003100f410021002003027f410020022802202204450d001a410020022802242206200328020c2205490d001a200620052005417f461b210020040b2201360210200341146a2000360200200341003602080b200241206a200120004114100e22001011024002402000280204450d00200010110240200028020022042c0000220141004e044020010d010c020b200141807f460d00200141ff0171220541b7014d0440200028020441014d04401001200028020021040b20042d00010d010c020b200541bf014b0d012000280204200141ff017141ca7e6a22014d04401001200028020021040b200120046a2d0000450d010b2000280204450d0020042d000041c001490d010b10010b200010122206200028020422044b04401001200028020421040b20002802002107024002400240200404404100210520072c00002200417f4a0d01027f200041ff0171220541bf014d04404100200041ff017141b801490d011a200541c97e6a0c010b4100200041ff017141f801490d001a200541897e6a0b41016a21050c010b4101210520070d00410021000c010b41002100200520066a20044b0d0020042006490d004100210120042005490d01200520076a2101200420056b20062006417f461b22004109490d0110010c010b410021010b0340200004402000417f6a210020013100002008420886842108200141016a21010c010b0b024002402008500d0041850810132008510440200310140c020b418a0810132008520d0020031014100a210341002100200241003602284200210820024200370320200241206a41001015200241346a41003602002002420037022c4101210120034180014f04402003ad2109034020082009845045044020084238862009420888842109200041016a2100200842088821080c010b0b024020004138490d002000210103402001450d01200041016a2100200141087621010c000b000b200041016a21010b20022802282001490440200241206a200110150b200241206a42002003ad22081004200228022422006a1016420020082000200228022022066a10050340024020022802302201200228022c22044622050d00200141786a220028020022034504401001200028020021030b20002003417f6a220336020020030d0020022000360230200241206a2001417c6a2802002200200228022420006b220110026a10162000200228022022066a22002001200010030c010b0b200545044010010b2006200228022410082004450d01200220043602300c010b10010b1017200241406b24000b9b0101047f230041106b220124002001200036020c2000047f41ac08200041086a2202411076220041ac082802006a220336020041a80841a808280200220420026a41076a417871220236020002400240200341107420024d044041ac08200341016a360200200041016a21000c010b2000450d010b200040000d0010010b20042001410c6a4104100b41086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000101920024f0d002003410471044010010c010b200042003702000b02402003411071450d002000101920024d0d0020034104710440100120000f0b200042003702000b20000b7201047f20011012220220012802044b044010010b2001101a21032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114100e10192100200241206a240020000b4101017f200028020445044010010b0240200028020022012d0000418101470d00200028020441014d047f100120002802000520010b2c00014100480d0010010b0bff0201037f200028020445044041000f0b2000101141012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10010b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000100f41012103200128020c2100034020000440200141002001280208220220022000101022046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10010b200141106a24000b2f01017f200028020820014904402001100d20002802002000280204100b210220002001360208200020023602000b0b3601017f200028020820014904402001100d20002802002000280204100b210220002001360208200020023602000b200020013602040b880101037f4198084101360200419c082802002100034020000440034041a00841a0082802002201417f6a220236020020014101484504404198084100360200200020024102746a22004184016a280200200041046a2802001102004198084101360200419c0828020021000c010b0b41a0084120360200419c08200028020022003602000c010b0b0b3501017f230041106b220041b0880436020c41a408200028020c41076a417871220036020041a808200036020041ac083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000101a200010126a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b0b1b01004180080b140107102030696e69740053686133526573756c74"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SHA3RESULT = "Sha3Result"; - - protected Sha3Function(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected Sha3Function(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Sha3Function.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Sha3Function.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Sha3Function.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(Sha3Function.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall Sha3Result() { - final WasmFunction function = new WasmFunction(FUNC_SHA3RESULT, Arrays.asList(), Uint32.class); - return executeRemoteCall(function, Uint32.class); - } - - public static Sha3Function load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new Sha3Function(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static Sha3Function load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new Sha3Function(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ShellSort.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ShellSort.java deleted file mode 100644 index 3dd3e99ecd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ShellSort.java +++ /dev/null @@ -1,85 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ShellSort extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f017f60017f0060037f7f7f017f60000060037f7f7f0060027f7f017f60047f7f7f7f017f60047f7f7f7f0060037f7e7e0060027f7e0060037e7e7f006000017f60027e7e017f60017f017e02fd010b03656e760c706c61746f6e5f70616e6963000403656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000033d3c0405060005010301040103050201000e020102010000010100000407010a0306090200000607000203000002090301000100030702030005040101080405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974002506696e766f6b6500130adf503c040010430bb602020b7f027e2002210303400240200341026d210520034102480d004100210841002005410374220a6b210d200a210641002107034020052007460440200521030c030b2001280200220b21092007210403400240200420056a220c2002480440200b200c4103746a290300220e200b20044103746a290300590d01200e422086422087210f200921030340024020044100480d00200320086a290300220e200f570d00200320066a200e3703002003200d6a2103200420056b21040c010b0b200320066a200f3703000c010b200841086a2108200641086a2106200741016a21070c020b2009200a6a2109200c21040c000b000b000b0b2000280218044020004200370218200041206a41003602000b20002001290200370218200041206a200128020836020020014100360208200142003702000b3e01017f2000420037020020004100360208200128020420012802006b2202044020002002410375100e20012802002001280204200041046a100f0b20000b2301017f2000200110102202360200200020023602042000200220014103746a3602080b2800200120006b220141014e044020022802002000200110111a2002200228020020016a3602000b0b0900200041037410120bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b0b002000410120001b10140b970402057f017e23004180016b22002400104310052201101422021006200041306a200041186a200220011015220341001016200041306a101702400240200041306a1018450d002000280234450d0020002802302d000041c001490d010b10000b200041e8006a200041306a1019200028026c220141094f044010000b200028026821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d00418008101a20055104402003101b200041306a101c101d0c020b418508101a200551044020004200370370200042003703682003101e410347044010000b200041306a200341011016200041306a200041e8006a101f200041306a200341021016200041086a200041306a1020200020002903082205420188420020054201837d853e0274200041306a101c2102200041306a200041d8006a200041e8006a100d22012000280274100c200128020022030440200120033602040b2002101d20002802682201450d022000200136026c0c020b418a08101a2005520d002003101b200041306a101c2103200041d8006a200041c8006a100d2102200041e8006a10212201200210221023200120021024200128020c200141106a28020047044010000b20012802002001280204100a200128020c22040440200120043602100b200228020022010440200220013602040b2003101d0c010b10000b102520004180016a24000b9b0101047f230041106b220124002001200036020c2000047f41a808200041086a2202411076220041a8082802006a220336020041a40841a408280200220420026a41076a417871220236020002400240200341107420024d044041a808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101141086a0541000b2100200141106a240020000b0c00200020012002411c10260bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102e20012003280208200328020c102f36020c20032001102e410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410261a200341106a24000f0b20032001102e41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102f10462001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001017200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110272204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101e410147044010000b0b810301087f230041306b2207240020004200370218200042a5defba9b381cff0ac7f3703102000410036020820004200370200200041206a4100360200200741186a1021220320002903101028200328020c200341106a28020047044010000b200041186a21050240200328020022062003280204220810072204450d002004101221020340200120026a41003a00002004200141016a2201470d000b20062008200220011008417f460440410021010c010b2007200241016a200120026a2002417f736a10152005101f200421010b200328020c22020440200320023602100b024020010d002000411c6a210120002802042203200028020022046b41037522062000280220200028021822026b4103754d04402006200128020020026b41037522054b04402004200420054103746a2205200210291a200520032001100f0c020b200120042003200210293602000c010b2002044020004100360220200042003702180b200520052006102a100e200420032001100f0b200741306a240020000b9c03010a7f230041406a22022400200241086a10212103200241386a4100360200200241306a4200370300200241286a420037030020024200370320200241206a20002903104200102b20022802202101200241206a410472102c200320011023200320002903101028200328020c200341106a28020047044010000b2003280204210520032802002106200241206a10212101200041186a22071022210841011012220441fe013a0000200128020c200141106a28020047044010000b2001280204220941016a220a20012802084b047f2001200a102d20012802040520090b20012802006a2004410110111a2001200128020441016a3602042001200441016a200820046b6a10232001200710240240200128020c2001280210460440200128020021040c010b100020012802002104200128020c2001280210460d0010000b20062005200420012802041009200128020c22040440200120043602100b200328020c22010440200320013602100b2000280218220104402000411c6a20013602000b200028020022010440200020013602040b200241406b24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000102e200128020c210003402000450d01200141002001280208220320032000102f22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf30302077f017e230041e0006b22042400024002402000280204450d0020002802002d000041c001490d002000101e21022001280208200128020022036b41037520024904402001200441106a2002200128020420036b410375200141086a103022021031200210320b200441386a2000410110332102200441286a2000410010332106200141086a210720022802042100034020062802042000464100200228020822032006280208461b0d022004200441106a20002003411c10261020200441086a290300423f862004290300220942018884420020094201837d8521090240200128020422002001280208490440200020093703002001200041086a3602040c010b200441c8006a2001200020012802006b410375220041016a102a20002007103021002004280250220320093703002004200341086a360250200120001031200010320b20022002280204220020022802086a410020001b22003602042002280200220304402002200336020820002003102f21052002027f200228020422004504404100210341000c010b410021034100200228020822082005490d001a200820052005417f461b210320000b2200ad2003ad42208684370204200241002002280200220520036b2203200320054b1b3602000c0105200241003602080c010b000b000b10000b200441e0006a24000b9e0102027f027e230041106b22022400200110170240024020011018450d002001280204450d0020012802002d000041c001490d010b10000b200241086a20011019200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000b2900200041003602082000420037020020004100102d200041146a41003602002000420037020c20000bba0102027f027e230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300027f200028020020002802044604402001410136020041010c010b2001410010342000280204210220002802002100037f2000200246047f2001410110342001280200052001200029030022034201862003423f8722048520044201862003423f8884200485102b200041086a21000c010b0b0b21002001410472102c200141206a240020000b13002000280208200149044020002001102d0b0bf60202067f027e0240200128020420012802006b220204402002410375210220002802042106200041106a2802002203200041146a280200220449044020032002ad2006ad422086843702002000200028021041086a3602100c020b027f41002003200028020c22056b410375220741016a2203200420056b2204410275220520052003491b41ffffffff01200441037541ffffffff00491b2205450d001a200541037410120b2103200320074103746a22042002ad2006ad4220868437020020042000280210200028020c22076b22026b2106200320054103746a2103200441086a2104200241014e044020062007200210111a0b20002003360214200020043602102000200636020c0c010b200041001001200028020422026a103541004100200220002802006a1002200010360b20012802042102200128020021010340200120024704402000200129030022084201862008423f8722098520094201862008423f88842009851037200141086a21010c010b0b0b880101037f419408410136020041980828020021000340200004400340419c08419c082802002201417f6a220236020020014101484504404194084100360200200020024102746a22004184016a280200200041046a280200110200419408410136020041980828020021000c010b0b419c084120360200419808200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104420024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104420024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101741012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0a0020002001420010370b2501017f200120006b220141037521032001044020022000200110420b200220034103746a0b3101017f2001200028020820002802006b2200410275220220022001491b41ffffffff01200041037541ffffffff00491b0b890101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103b20036a0520030b41016a21040b200041186a28020022030440200041086a280200200041146a2802002003103821000b2000200028020020046a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001041200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103a200441106a24000b2f01017f2000280208200149044020011014200028020020002802041011210220002001360208200020023602000b0b2101017f20011027220220012802044b044010000b2000200120011045200210460b2701017f230041206b22022400200241086a200020014114102610442100200241206a240020000b4c01017f2000410036020c200041106a2003360200200104402001101021040b200020043602002000200420024103746a22023602082000200420014103746a36020c2000200236020420000b870101037f200120012802042000280204200028020022046b22036b2202360204200341004a044020022004200310111a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141786a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001102e20004100200428020c2201200428020822022001102f22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031038280200210120022003417f6a360200200710394180104f044020072000410c6a280200417c6a103a0b200141384f047f2001103b20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002103821000c010b0240200710390d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103c0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010122105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103d220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104022013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103c0c010b20042001410175410120011b20032005103e210241802010122106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103d22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103e21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003103f200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002103f052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104022013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103e21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006103f200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071041200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b3601017f2000280208200149044020011014200028020020002802041011210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a1035200120002802006a22012002200110020c010b0b0b2801017f2000200220011003200028020422036a103520022001200320002802006a1004200010360b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103d22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a103e2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003103f200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110420b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101221040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110420b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210111a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041b0880436020c41a008200028020c41076a417871220036020041a408200036020041a8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001045200010276a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b1a01004180080b13696e697400736f7274006765745f6172726179"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SORT = "sort"; - - public static final String FUNC_GET_ARRAY = "get_array"; - - protected ShellSort(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ShellSort(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ShellSort.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ShellSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ShellSort.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ShellSort.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall sort(Int64[] arr, Int32 n) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,n), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall sort(Int64[] arr, Int32 n, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SORT, Arrays.asList(arr,n), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_array() { - final WasmFunction function = new WasmFunction(FUNC_GET_ARRAY, Arrays.asList(), Int64[].class); - return executeRemoteCall(function, Int64[].class); - } - - public static ShellSort load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ShellSort(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ShellSort load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ShellSort(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SimpleAuction.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SimpleAuction.java deleted file mode 100644 index 537c7fa49f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SimpleAuction.java +++ /dev/null @@ -1,201 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class SimpleAuction extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000016a1360027f7f0060017f017f60017f0060027f7f017f60037f7f7f017f60000060047f7f7f7f0060037f7f7f0060047f7f7f7f017f60027f7e0060037f7e7e017f60017f017e60037f7e7e0060037e7e7f006000017f60027f7e017f60017e017f60027e7e017f6000017e02bb031403656e760c706c61746f6e5f70616e6963000503656e760d706c61746f6e5f63616c6c6572000203656e760f706c61746f6e5f7472616e73666572000403656e7610706c61746f6e5f74696d657374616d70001203656e7611706c61746f6e5f63616c6c5f76616c7565000103656e760b706c61746f6e5f73686133000603656e760d706c61746f6e5f726576657274000503656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000703656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000703656e760d726c705f753132385f73697a65001103656e760f706c61746f6e5f726c705f75313238000d03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000e03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000603656e760c706c61746f6e5f6576656e74000603656e760d706c61746f6e5f72657475726e0000035b5a050c0301000004000001030a02030a090f090204060201030302000104030202020001040004010000040802040007010504070b0b010001020002010005080201000103030304030104011001000300000001050101060002000405017001030305030100020608017f0141e088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300140f5f5f66756e63735f6f6e5f65786974005106696e766f6b6500440908010041010b02262d0aec8b015a040010670b900301097f230041a0016b220324002003418d0810162105200341e8006a10172104200341d8006a20051018200341c8006a20001019200341406b4100360200200341386a4200370300200341306a420037030020034200370328200341286a20032802582205200328025c101a20032802482207200328024c101a210820042003280228101b2004200341d8006a101c2004200341c8006a101c200428020c200441106a28020047044010000b2004280204210620042802002109200341106a101d210020034198016a410036020020034190016a420037030020034188016a4200370300200342003703800120034180016a4100101e20012002101f4101101e210a200328028001210b200a41046a10202000200b101b200041011021200120021022220028020c200041106a28020047044010000b20092006200028020020002802041012200028020c22060440200020063602100b200841046a1020200704402003200736024c0b200504402003200536025c0b200428020c22000440200420003602100b200341a0016a24000bec0101037f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b027f0240200220016b2202410b4f0440200241106a4170712204102f21032000200236020420002004410172360200200020033602080c010b200020024101743a0000200041016a22032002450d011a0b20032001200210300b2103200220036a41003a000020000b1d0020001034200041146a41003602002000420037020c2000410210210ba40201047f230041206b2202240020024100360218200242003703100240027f4100200128020420012d00002204410176200441017122051b2204450d001a2001280208200141016a20051b2103200241106a200410350340200404402002280214220120032d00003a00002002200141016a3602142004417f6a2104200341016a21030c010b0b2002280210210320022802140b220420036b41204d044020002004360204200020033602002000200228021836020820024100360218200242003703100c010b200241003602082002420037030020024120102e2003200228021420036b200228020022042002280204220120046b10052000200136020420002004360200200020022802083602082003450d00200220033602140b200241206a24000b2c01017f4114102f220220014114103021012000200241146a220236020820002002360204200020013602000b8b0101017f024020012002460440410121030c010b4101210302400240200220016b2202410146044020012c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002103620026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110370c010b20000b2201200128020020036a36020020000b1300200028020820014904402000200110380b0b1600200020012802002200200128020420006b10391a0b190020001034200041146a41003602002000420037020c20000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031037280200210120022003417f6a3602002007103a4180104f044020072000410c6a280200417c6a103b0b200141384f047f2001103620016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110370c020b20000c010b02402007103a0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a103c0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020102f2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a103d220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104022013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a103e2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002103f200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a103c0c010b20042001410175410120011b20032005103e2102418020102f2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a103d22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200103e21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003103f200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002103f052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104022013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210103e21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006103f200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071041200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b900101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003103620036a0520030b41016a21040b027f200041186a28020022030440200041086a280200200041146a280200200310370c010b20000b2203200328020020046a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001041200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001103b200441106a24000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374102f0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110301a0b20002002360214200020033602102000200536020c20000f0b200041001007200028020422016a106d41004100200120002802006a10082000106c20000b2a01017f200020022001100b200028020422036a106d20022001200320002802006a100c2000106c20000b8e0301097f230041a0016b22022400200241800810162104200241e8006a10172103200241d8006a20041018200241c8006a20001019200241406b4100360200200241386a4200370300200241306a420037030020024200370328200241286a20022802582204200228025c101a20022802482206200228024c101a210720032002280228101b2003200241d8006a101c2003200241c8006a101c200328020c200341106a28020047044010000b2003280204210520032802002108200241106a101d210020024198016a410036020020024190016a420037030020024188016a4200370300200242003703800120024180016a4100101e200110244101101e2109200228028001210a200941046a10202000200a101b200041011021220020011025200028020c200041106a28020047044010000b20082005200028020020002802041012200028020c22050440200020053602100b200741046a1020200604402002200636024c0b200404402002200436025c0b200328020c22000440200320003602100b200241a0016a24000b0a00200020014200101f0b0b0020002001420010221a0be50302057f037e230041d0006b22022400200241306a2103200241306a10042101034020010440200642088620074238888421062001417f6a210120033100002007420886842107200341016a21030c010b0b200041f8016a22012006370300200041f0016a20073703001003200041c8006a29030054044010000b20002903f001200041c0016a29030022065820012903002208200041c8016a220129030022075820072008511b047e200705100020002903c001210620012903000b2006845045044020004198026a2204200241306a200041f0006a22031027220528020022014504404130102f22012003290000370010200141286a4200370300200141206a200341106a280000360000200141186a200341086a290000370000200420022802302005200110280b200141286a2201200129030020067c3703000b200241306a102920004180016a200241406b280200360000200041f8006a200241386a290300370000200041f0006a2002290330370000200041c8016a200041f8016a2201290300370300200020002903f0013703c001200241186a10292001290300210720002903f0012106200241106a200241286a280200360200200241086a200241206a290300370300200220022903183703002002200620071015200241d0006a24000b890101027f200041046a2103024020002802042200044002400340024002402002200041106a220410310440200028020022040d012001200036020020000f0b200420021031450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b20032001280200470440200110322001280208220128020821020b200141013a000c200241003a000c200210330c010b02402004450d0020042d000c0d002004410c6a21030c020b20032001280200460440200110332001280208220128020821020b200141013a000c200241003a000c200210320b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000b210020004200370000200041106a4100360000200041086a4200370000200010010ba30102037f017e230041306b22012400200141186a102920004198016a20004198026a2202200141186a102b29030022043703004101210302402004500d00200141186a10292002200141186a102b4200370300200141186a1029200142003703082001200029039801370300200141186a2001102c450d002000290398012104200141186a10292002200141186a102b2004370300410021030b200141306a240020030b7401037f230041106b2203240020002003410c6a20011027220428020022024504404130102f22022001290000370010200241286a4200370300200241206a200141106a280000360000200241186a200141086a2900003700002000200328020c2004200210280b200341106a2400200241286a0ba40102037f027e230041106b22032400200341003602082003420037030020034120102e20032802002202417f6a2104200328020420026b2102200141086a290300210520012903002106034020020440200220046a20063c0000200542388620064208888421062002417f6a2102200542088821050c010b0b200020032802002202200328020420026b1002210420020440200320023602040b200341106a24002004450bf50102027f037e230041e0006b220124001003200041c8006a2903005a044010060b200041b8026a2d000045044010060b200041013a00b802200141d0006a200041f8006a2900002204370300200141d8006a20004180016a2800002202360200200041c0016a2903002105200041f0006a2900002103200141186a2002360200200141106a20043703002001200337034820012003370308200141086a20051023200141406b200041306a280000360200200141386a200041286a2900003703002001200029002037033020014200370328200120004198016a290300370320200141306a200141206a102c1a200141e0006a24000bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102f21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110301a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b0b002000410120001b10430bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3a01037f034020024114470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b160020004100360208200042003702002000410010380b2001017f20002001102f2202360200200020023602042000200120026a3602080b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2f01017f2000280208200149044020011043200028020020002802041030210220002001360208200020023602000b0b2a01017f2000200120021009200028020422036a106d20012002200320002802006a100a2000106c20000b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a103d22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a103e2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003103f200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110420b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102f21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110420b20020b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210301a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9b0101047f230041106b220124002001200036020c2000047f41d408200041086a2202411076220041d4082802006a220336020041d00841d008280200220420026a41076a417871220236020002400240200341107420024d044041d408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103041086a0541000b2100200141106a240020000b940402047f037e230041e0036b220024001067100d220110432202100e20004180016a20002002200110452201410010460240024020004180016a10472204500d0041a10810482004510440200041286a4200370300200041306a41003602002000420037032020004200370318200041206a210220011049410347044010000b20004180016a200141011046200020004180016a104737031820004180016a20014102104620004180016a2002104a20004180016a104b2101200041c8006a200241106a2800002203360200200041406b200241086a290000220437030020002002290000220537033820002903182106200041d8006a2004370300200041e0006a2003360200200041f0006a2004370300200041f8006a20033602002000200537035020002005370368200041d8036a2003360200200041d0036a200437030020012005370320200141286a2004370300200141306a2003360200200020053703c803200141c8006a100320067c3703002001104c0c020b41a6081048200451044020014101104d0c020b41aa08104820045104402001104e20004180016a104b2203102a2102200041186a101d22012002104f101b200120021050200128020c200141106a28020047044010000b200128020020012802041013200128020c22020440200120023602100b2003104c0c020b41b30810482004520d0020014102104d0c010b10000b1051200041e0036a24000b0c00200020012002411c10520bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001106b20012003280208200328020c105b36020c20032001106b410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410521a200341106a24000f0b20032001106b41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004105b106a2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b22012400200010530240024020001054450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001055200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2501017f02402000280204450d0020002802002d000041c001490d002000105621010b20010bcf0102037f027e230041406a2202240020001053200241386a20001055200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10000b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a2002280238200310301a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000bc010020f7f017e230041d0016b220324002000420037000020004200370020200042d0a1be898a89dca361370318200041106a22014100360000200041086a22064200370000200041286a4200370000200041306a4100360000200041186a200041206a2202105745044020022000290300370300200241106a2001280200360200200241086a20062903003703000b20004200370338200041406b220242e3ecbada85b7bec1043703002002200041c8006a1058450440200020002903383703480b20004200370050200041e0006a4100360000200041d8006a4200370000200041f0006a22024200370000200041e8006a22014289bea6f99b94f9ba7d370300200041f8006a420037000020004180016a41003600002001200210574504402002200041d0006a2201290300370300200241106a200141106a280200360200200241086a200141086a2903003703000b200042003703880120004190016a220242c9d0cad8a7cba4b7c200370300200220004198016a10584504402000200029038801370398010b200042003703a001200041a8016a22014200370300200041b0016a220242d0fee398bcc0bd89153703002002200041c0016a1059450440200020002903a0013703c001200041c8016a20012903003703000b200042003703d001200041d8016a22014200370300200041e0016a2202429cc39df1f882ecd2323703002002200041f0016a1059450440200020002903d0013703f001200041f8016a20012903003703000b20004184026a220742003702002000419c026a220c420037020020004190026a220242ca94ade3c1c1d2b616370300200020073602800220004198026a2206200c360200200341306a101d220920022903001025200928020c200941106a28020047044010000b02402009280200220120092802042204100f220d450440410021020c010b410021022003410036022820034200370320200341206a200d102e200120042003280220220a20032802242205200a6b1010417f47044002400240200341086a200a41016a2005200a417f736a10452201280204450d0020012802002d000041c001490d0020034190016a20014101105a210220034180016a20014100105a210e20022802042101200341d8006a2105200341d0006a210b0340200e280204200146410020022802082204200e280208461b0d02200341e8006a20012004411c1052210120054100360200200b420037030020034200370348200342003703600240200328026c044020032802682d000041bf014b0d010b10000b20011056410247044010000b200341b0016a22044100360200200341a8016a22084200370300200342003703a001200341b8016a200141001046200341b8016a200341a0016a104a200b200829030037030020052004280200360200200320032903a001370348200341b8016a2001410110462003200341b8016a104722103703602006200341b8016a200341c8006a102722042802004504404130102f22012003290348370310200141286a2010370300200141206a2005280200360200200141186a200b290300370300200620032802b8012004200110280b20022002280204220120022802086a410020011b22013602042002280200220404402002200436020820012004105b21082002027f2002280204220f4504404100210441000c010b410021044100200228020822012008490d001a200120082008417f461b2104200f0b2201ad2004ad42208684370204200241002002280200220820046b2204200420084b1b3602000c0105200241003602080c010b000b000b10000b200d21020b200a450d002003200a3602240b200928020c22010440200920013602100b024020020d002000280280022102024020002802a002450d0020002802980221012000200c36029802200041003602a002200028029c0221042000410036029c022004410036020820012802042204200120041b2104034020042201450d012002200747044020012002290010370010200141206a200241206a280000360000200141186a200241186a290000370000200141286a2002290328370300024020012802082204450440410021040c010b2001200428020022054604402004410036020020042802042205450d012005105c21040c010b200441003602042005450d002005105c21040b2006200341c8006a200141106a105d2105200620032802482005200110282002105e21020c010b0b0340200128020822010d000b200721020b034020022007460d014130102f22012002290310370310200141286a200241286a290300370300200141206a200241206a290300370300200141186a200241186a2903003703002006200341c8006a200141106a105d2104200620032802482004200110282002105e21020c000b000b41002102200041003a00a802200041b0026a2201428f95ff90e4b4e3a28c7f370300200341c8006a101d220420012903001025200428020c200441106a28020047044010000b02402004280200220120042802042206100f2205450d002003410036027020034200370368200341e8006a2005102e2001200620032802682207200328026c220b20076b1010417f470440200341b8016a200741016a200b2007417f736a1045220210530240024020021054450d002002280204450d0020022802002d000041c001490d010b10000b200341306a200210552003280234220241024f044010000b41002106200328023021010340200204402002417f6a210220012d00002106200141016a21010c010b0b2000200641ff01714100473a00b802200521020b2007450d002003200736026c0b200428020c22010440200420013602100b2002450440200020002d00a8023a00b8020b200341d0016a240020000bb409020b7f047e230041e0016b22012400200141c8006a101d2203200041b0026a2202290300105f101b200320022903001025200328020c200341106a28020047044010000b200328020421042003280200210820014180016a101d210220002d00b802104f21052002200141e8006a1060220610612002200520062802046a20062802006b101b200220002d00b80210500240200228020c200241106a280200460440200241046a2105200228020021070c010b200241046a2105100020022802002107200228020c2002280210460d0010000b20082004200720052802001011200628020022040440200620043602040b200228020c22060440200220063602100b200328020c22020440200320023602100b200141306a101d220720004190026a2202290300105f101b200720022903001025200728020c200741106a28020047044010000b2007280204210a2007280200210b200141186a101d2109200141e0006a4100360200200141d8006a4200370300200141d0006a420037030020014200370348027f200041a0026a2802004504402001410136024841010c010b2000419c026a2108200141c8006a4100101e21052000280298022102037f2002200846047f20054101101e1a200128024805200141f8006a200241206a290300220c370300200141f0006a200241186a290300220d37030020012002290310220e3703682002290328210f20014190016a2203200c37030020014188016a2206200d3703002001200e3703800120054100101e2104200141a8016a20032802002203360200200141a0016a2006290300220c370300200141106a2003360200200141086a200c3703002001200129038001220d37039801200141b8016a200c370300200141c0016a2003360200200141d0016a200c370300200141d8016a20033602002001200d3703002001200d3703b0012001200d3703c801200420011062200f10244101101e1a2002105e21020c010b0b0b2102200141c8006a41047210202009200141e8006a1060220510612009200528020420026a20052802006b101b200920002802a002102121042000419c026a21082000280298022102034020022008470440200441021021210620014190016a200241206a280000220336020020014188016a200241186a290000220c37030020012002290010220d37038001200141a0016a200c370300200141a8016a2003360200200141b8016a200c370300200141c0016a20033602002001200d370398012001200d3703b001200141d8006a2003360200200141d0006a200c3703002001200d3703482006200141c8006a41141039200229032810252002105e21020c010b0b0240200428020c200441106a280200460440200441046a2102200428020021030c010b200441046a2102100020042802002103200428020c2004280210460d0010000b200b200a200320022802001011200528020022020440200520023602040b200428020c22020440200420023602100b200728020c22020440200720023602100b200041e0016a200041f0016a1063200041b0016a200041c0016a106320004190016a20004198016a1064200041e8006a200041f0006a1065200041406b200041c8006a1064200041186a200041206a1065200141e0016a24000b2901017f230041c0026b220224002000104e2002104b220020011102002000104c200241c0026a24000b0e0020001049410147044010000b0b5801027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ff01834200101f210020012802002102200041046a1020200141206a240020020b0c0020002001ad420010221a0b880101037f41c008410136020041c4082802002100034020000440034041c80841c8082802002201417f6a2202360200200141014845044041c0084100360200200020024102746a22004184016a280200200041046a28020011020041c008410136020041c40828020021000c010b0b41c808412036020041c408200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106820024f0d002003410471044010000c010b200042003702000b02402003411071450d002000106820024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001053200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110662204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000106b200128020c210003402000450d01200141002001280208220320032000105b22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bbe0101057f230041406a22022400200241286a101d220320002903001025200328020c200341106a28020047044010000b02402003280200220020032802042205100f22064504400c010b2002410036022020024200370318200241186a2006102e2000200520022802182200200228021c220520006b1010417f4704402002200041016a20052000417f736a10452001104a200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040bc10101057f230041406a22022400200241286a101d220320002903001025200328020c200341106a28020047044010000b02402003280200220020032802042205100f22064504400c010b2002410036022020024200370318200241186a2006102e2000200520022802182200200228021c220520006b1010417f47044020012002200041016a20052000417f736a10451047370300200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040bd20202057f027e230041d0006b22022400200241306a101d220520002903001025200528020c200541106a28020047044010000b02402005280200220320052802042204100f2206450440410021000c010b410021002002410036022820024200370320200241206a2006102e20032004200228022022042002280224220320046b1010417f470440200241086a200441016a20032004417f736a1045220010530240024020001054450d002000280204450d0020002802002d000041c001490d010b10000b200241c8006a20001055200228024c220041114f044010000b20022802482103034020000440200842088620074238888421082000417f6a210020033100002007420886842107200341016a21030c010b0b2001200737030020012008370308200621000b2004450d00200220043602240b200528020c22030440200520033602100b200241d0006a240020000be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001106b20004100200428020c2201200428020822022001105b22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a200020014114105210682100200241206a240020000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a1031044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b5101037f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001024210220012802002103200241046a1020200141206a240020030b30002000410036020820004200370200200041011035200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004103820002802040520020b20002802006a2003200110301a2000200028020420016a3602040b6601037f410121030240034020024114460d01200120026a2104200241016a210220042d0000450d000b411521030b027f200041186a28020022020440200041086a280200200041146a280200200210370c010b20000b2202200228020020036a36020020000bd40201077f230041d0006b22022400200241186a101d22042000290300105f101b200420002903001025200428020c200441106a28020047044010000b20042802042106200428020021072002101d2103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a2001290300200141086a2205290300101f210020022802302108200041046a10202003200241306a1060220010612003200820002802046a20002802006b101b02402003200129030020052903001022220128020c200141106a280200460440200141046a2103200128020021050c010b200141046a2103100020012802002105200128020c2001280210460d0010000b20072006200520032802001011200028020022030440200020033602040b200128020c22000440200120003602100b200428020c22010440200420013602100b200241d0006a24000b8a0201067f230041406a22042400200441286a101d22022000290300105f101b200220002903001025200228020c200241106a28020047044010000b2002280204210620022802002107200441106a101d21002001290300105f2105200020041060220310612000200520032802046a20032802006b101b2000200129030010250240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b20072006200520012802001011200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000bdb04020e7f027e230041d0016b22022400200241d0006a101d22052000290300105f101b200520002903001025200528020c200541106a28020047044010000b2005280204210620052802002107200241386a101d210320024198016a410036020020024190016a2208420037030020024188016a22094200370300200241f8006a200141106a22042800002200360200200241f0006a200141086a220a290000221137030020012900002110200241106a2011370300200241186a2000360200200242003703800120022010370368200241a8016a220b2011370300200241b0016a220c2000360200200241c0016a220d2011370300200241c8016a220e200036020020022010370308200220103703a001200220103703b80120024180016a200241086a10622100200228028001210f200041046a10202003200241e8006a1060220010612003200f20002802046a20002802006b101b200241306a20042800002204360200200241286a200a2900002210370300200220012900002211370320200b2010370300200c2004360200200d2010370300200e2004360200200220113703a001200220113703b801200820043602002009201037030020022011370380010240200320024180016a41141039220128020c200141106a280200460440200141046a2103200128020021040c010b200141046a2103100020012802002104200128020c2001280210460d0010000b20072006200420032802001011200028020022030440200020033602040b200128020c22000440200120003602100b200528020c22010440200520013602100b200241d0016a24000bff0201037f200028020445044041000f0b2000105341012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3501017f230041106b220041e0880436020c41cc08200028020c41076a417871220036020041d008200036020041d4083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001069200010666a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f20011066220220012802044b044010000b20002001200110692002106a0b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210076a106d200120002802006a22012002200110080c010b0b0b3601017f2000280208200149044020011043200028020020002802041030210220002001360208200020023602000b200020013602040b0b4601004180080b3f41756374696f6e456e6465640048696768657374426964496e6372656173656400696e6974006269640077697468647261770061756374696f6e456e646564"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_BID = "bid"; - - public static final String FUNC_WITHDRAW = "withdraw"; - - public static final String FUNC_AUCTIONENDED = "auctionEnded"; - - public static final WasmEvent HIGHESTBIDINCREASED_EVENT = new WasmEvent("HighestBidIncreased", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent AUCTIONENDED_EVENT = new WasmEvent("AuctionEnded", Arrays.asList(new WasmEventParameter(WasmAddress.class, true)), Arrays.asList(new WasmEventParameter(Uint64.class))); - ; - - protected SimpleAuction(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SimpleAuction(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public List getHighestBidIncreasedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(HIGHESTBIDINCREASED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - HighestBidIncreasedEventResponse typedResponse = new HighestBidIncreasedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable highestBidIncreasedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public HighestBidIncreasedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(HIGHESTBIDINCREASED_EVENT, log); - HighestBidIncreasedEventResponse typedResponse = new HighestBidIncreasedEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable highestBidIncreasedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(HIGHESTBIDINCREASED_EVENT)); - return highestBidIncreasedEventObservable(filter); - } - - public List getAuctionEndedEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(AUCTIONENDED_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - AuctionEndedEventResponse typedResponse = new AuctionEndedEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - responses.add(typedResponse); - } - return responses; - } - - public Observable auctionEndedEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public AuctionEndedEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(AUCTIONENDED_EVENT, log); - AuctionEndedEventResponse typedResponse = new AuctionEndedEventResponse(); - typedResponse.log = log; - typedResponse.topic = (String) eventValues.getIndexedValues().get(0); - typedResponse.arg1 = (Uint64) eventValues.getNonIndexedValues().get(0); - return typedResponse; - } - }); - } - - public Observable auctionEndedEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(AUCTIONENDED_EVENT)); - return auctionEndedEventObservable(filter); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Uint64 _biddingTime, WasmAddress _beneficiary) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_biddingTime,_beneficiary)); - return deployRemoteCall(SimpleAuction.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Uint64 _biddingTime, WasmAddress _beneficiary) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_biddingTime,_beneficiary)); - return deployRemoteCall(SimpleAuction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint64 _biddingTime, WasmAddress _beneficiary) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_biddingTime,_beneficiary)); - return deployRemoteCall(SimpleAuction.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint64 _biddingTime, WasmAddress _beneficiary) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(_biddingTime,_beneficiary)); - return deployRemoteCall(SimpleAuction.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall bid() { - final WasmFunction function = new WasmFunction(FUNC_BID, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall bid(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_BID, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall withdraw() { - final WasmFunction function = new WasmFunction(FUNC_WITHDRAW, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall withdraw(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_WITHDRAW, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall auctionEnded() { - final WasmFunction function = new WasmFunction(FUNC_AUCTIONENDED, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall auctionEnded(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_AUCTIONENDED, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static SimpleAuction load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SimpleAuction(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SimpleAuction load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SimpleAuction(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class HighestBidIncreasedEventResponse { - public Log log; - - public String topic; - - public Uint128 arg1; - } - - public static class AuctionEndedEventResponse { - public Log log; - - public String topic; - - public Uint64 arg1; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SimpleContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SimpleContract.java deleted file mode 100644 index 531eef190a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SimpleContract.java +++ /dev/null @@ -1,104 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class SimpleContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60017f017f60027f7f0060017f0060000060027f7f017f60037f7f7f0060047f7f7f7f0060037f7f7f017f60047f7f7f7f017f60017f017e60027f7e0060037e7e7f006000017f60017e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000303656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000603656e760d706c61746f6e5f72657475726e00010327260303000705090902000200000d010a01000403080201010001010401020102070000030000060405017001010105030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974001f06696e766f6b65000e0a9b37260400102f0be70502057f027e23004190026b22002400102f10072201100f22021008200041c8006a200020022001101022014100101102400240200041c8006a10122205500d004180081013200551044020011014200041c8006a101510160c020b4185081013200551044020011017410247044010000b200041c8006a200141011011200041c8006a10122105200041c8006a101522012005370310200110160c020b4189081013200551044020011014200041c8006a101522022903102105200041c8016a1018220120051019101a20012005101b200128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210160c020b418d0810132005510440200041d8016a22024100360200200041d0016a22034200370300200042003703c80120011017410247044010000b200041c8006a200141011011200041c8006a200041c8016a101c200041c8006a10152101200041286a20022802002202360200200041206a20032903002205370300200020002903c8012206370318200141386a2006370300200141406b2005370300200141c8006a2002360200200110160c020b41990810132005520d0020011014200041a8016a2201200041c8006a1015220241c8006a280000360200200041a0016a2203200241406b2900003703002000200241386a29000037039801200041c8016a1018220420004198016a101d101a200041c0016a20012802002201360200200041b8016a20032903002205370300200020002903980122063703b001200041e8016a2005370300200041f0016a2001360200200041206a2005370300200041286a2001360200200020063703e0012000200637031820004188026a200136020020004180026a2005370300200020063703f8012004200041f8016a101e220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210160c010b10000b101f20004190026a24000b9b0101047f230041106b220124002001200036020c2000047f41bc08200041086a2202411076220041bc082802006a220336020041b80841b808280200220420026a41076a417871220236020002400240200341107420024d044041bc08200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102c41086a0541000b2100200141106a240020000b0c00200020012002411c10200bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102620012003280208200328020c102736020c200320011026410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410201a200341106a24000f0b20032001102641002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102710322001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b2203240020001021024002402000280204450d00200010210240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a20001022200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001017410147044010000b0b960401087f230041406a22012400200042d1f0fad48ae09ad34537030820004200370300200141286a101822022000290308101b200228020c200241106a28020047044010000b02402002280200220720022802042206100922054504400c010b2001410036022020014200370318200141186a200510232007200620012802182204200128021c220820046b100a417f47044020002001200441016a20082004417f736a10101012370310200521030b2004450d002001200436021c0b200228020c22040440200220043602100b2003450440200020002903003703100b2000420037001841002104200041286a4100360000200041206a4200370000200041386a22054200370000200041306a220342dda4afedfcbbf09c977f370300200041406b4200370000200041c8006a4100360000200141286a101822022003290300101b200228020c200241106a28020047044010000b0240200228020022062002280204220810092207450d002001410036022020014200370318200141186a200710232006200820012802182203200128021c220620036b100a417f4704402001200341016a20062003417f736a10102005101c200721040b2003450d002001200336021c0b200228020c22030440200220033602100b20044504402005200041186a2202290300370300200541106a200241106a280200360200200541086a200241086a2903003703000b200141406b240020000b9e0502087f027e230041a0016b2203240020034188016a10182202200041306a22012903001019101a20022001290300101b200041386a2101200228020c200241106a28020047044010000b2002280204210720022802002108200341f0006a101821052001101d21062005200341186a1024220410252005200620042802046a20042802006b101a200341106a200141106a2800002206360200200341086a200141086a290000220937030020032001290000220a370300200341306a2009370300200341386a2006360200200341c8006a2009370300200341d0006a20063602002003200a3703282003200a370340200341e8006a2006360200200341e0006a20093703002003200a37035802402005200341d8006a101e220128020c200141106a280200460440200141046a2105200128020021060c010b200141046a2105100020012802002106200128020c2001280210460d0010000b2008200720062005280200100b200428020022050440200420053602040b200128020c22040440200120043602100b200228020c22010440200220013602100b20034188016a1018220120002903081019101a20012000290308101b200128020c200141106a28020047044010000b2001280204210520012802002106200341f0006a101821022000290310101921072002200341d8006a1024220410252002200720042802046a20042802006b101a20022000290310101b0240200228020c200241106a280200460440200241046a2107200228020021080c010b200241046a2107100020022802002108200228020c2002280210460d0010000b2006200520082007280200100b200428020022050440200420053602040b200228020c22040440200220043602100b200128020c22020440200120023602100b200341a0016a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001026200128020c210003402000450d01200141002001280208220320032000102722046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b29002000410036020820004200370200200041001028200041146a41003602002000420037020c20000bb00102037f017e230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703004101210320004280015a0440034020002004845045044020044238862000420888842100200241016a2102200442088821040c010b0b024020024138490d002002210303402003450d01200241016a2102200341087621030c000b000b200241016a21030b2001200336020020014104721029200141206a240020030b1300200028020820014904402000200110280b0b2801017f2000420020011005200028020422026a102a42002001200220002802006a10062000102b0bcf0102037f027e230041406a2202240020001021200241386a20001022200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10000b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a20022802382003102c1a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000b850202037f027e23004180016b22012400200141306a4100360200200141286a4200370300200141206a4200370300200141086a200041086a2900002204370300200141106a200041106a280000220236020020014200370318200120002900002205370300200141406b2004370300200141c8006a2002360200200141d8006a2004370300200141e0006a20023602002001200537033820012005370350200141f8006a2002360200200141f0006a200437030020012005370368410121020240034020034114460d01200141e8006a20036a2100200341016a210320002d0000450d000b411521020b20012002360218200141186a410472102920014180016a240020020b2a01017f2000200141141003200028020422026a102a20014114200220002802006a10042000102b20000b880101037f41a808410136020041ac082802002100034020000440034041b00841b0082802002201417f6a2202360200200141014845044041a8084100360200200020024102746a22004184016a280200200041046a28020011020041a808410136020041ac0828020021000c010b0b41b008412036020041ac08200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000103020024f0d002003410471044010000c010b200042003702000b02402003411071450d002000103020024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f2001102d2204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102e21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001102c1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b3a01017f200041003602082000420037020020004101102e2201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004102820002802040520020b20002802006a20032001102c1a2000200028020420016a3602040b2101017f2001102d220220012802044b044010000b2000200120011031200210320b2701017f230041206b22022400200241086a200020014114102010302100200241206a240020000b2f01017f200028020820014904402001100f20002802002000280204102c210220002001360208200020023602000b0b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b3601017f200028020820014904402001100f20002802002000280204102c210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a102a200120002802006a22012002200110020c010b0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bff0201037f200028020445044041000f0b2000102141012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0b002000410120001b100f0b3501017f230041106b220041c0880436020c41b408200028020c41076a417871220036020041b808200036020041bc083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010312000102d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b2b01004180080b24696e69740073657400676574007365745f61646472657373006765745f61646472657373"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SET = "set"; - - public static final String FUNC_GET = "get"; - - public static final String FUNC_SET_ADDRESS = "set_address"; - - public static final String FUNC_GET_ADDRESS = "get_address"; - - protected SimpleContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SimpleContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SimpleContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SimpleContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SimpleContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SimpleContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall set(Uint64 input) { - final WasmFunction function = new WasmFunction(FUNC_SET, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set(Uint64 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get() { - final WasmFunction function = new WasmFunction(FUNC_GET, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall set_address(WasmAddress addr) { - final WasmFunction function = new WasmFunction(FUNC_SET_ADDRESS, Arrays.asList(addr), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set_address(WasmAddress addr, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET_ADDRESS, Arrays.asList(addr), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_address() { - final WasmFunction function = new WasmFunction(FUNC_GET_ADDRESS, Arrays.asList(), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public static SimpleContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SimpleContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SimpleContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SimpleContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SimpleStorage.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SimpleStorage.java deleted file mode 100644 index 54f01c823a..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SimpleStorage.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class SimpleStorage extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60017f017f60000060017f0060027f7f0060037f7f7f0060047f7f7f7f0060027f7f017f60037f7f7f017f60047f7f7f7f017f60017f017e60027f7e0060037e7e7f006000017f60017e017f60027e7e017f02fd010b03656e760c706c61746f6e5f70616e6963000103656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760d726c705f753132385f73697a65000e03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000503656e760d706c61746f6e5f72657475726e0003031e1d0101000704090902000200000d030a01080200000307030603010000050405017001010105030100020608017f0141b088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000b0f5f5f66756e63735f6f6e5f65786974001a06696e766f6b65000c0a81241d040010240b940202047f017e230041d0006b22012400102410052200100d22021006200141386a200141086a20022000100e22004100100f02400240200141386a10102204500d004180081011200451044020001012200141386a101310140c020b4185081011200451044020001015410247044010000b200141386a20004101100f200141386a10102104200141386a1013210020012004370348200010140c020b41890810112004520d0020001012200141206a1013210220012903302104200141386a10162200200410171018200020041019200028020c200041106a28020047044010000b20002802002000280204100a200028020c22030440200020033602100b200210140c010b10000b101a200141d0006a24000b9b0101047f230041106b220124002001200036020c2000047f41a408200041086a2202411076220041a4082802006a220336020041a00841a008280200220420026a41076a417871220236020002400240200341107420024d044041a408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102041086a0541000b2100200141106a240020000b0c00200020012002411c101b0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001102120012003280208200328020c102236020c200320011021410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114101b1a200341106a24000f0b20032001102141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004102210272001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000bad0302057f017e2000101c024002402000280204450d002000101c0240200028020022012c0000220241004e044020020d010c020b200241807f460d00200241ff0171220341b7014d0440200028020441014d04401000200028020021010b20012d00010d010c020b200341bf014b0d012000280204200241ff017141ca7e6a22024d04401000200028020021010b200120026a2d0000450d010b2000280204450d0020012d000041c001490d010b10000b2000101d2204200028020422014b04401000200028020421010b20002802002105024002400240200104404100210320052c00002200417f4a0d01027f200041ff0171220341bf014d04404100200041ff017141b801490d011a200341c97e6a0c010b4100200041ff017141f801490d001a200341897e6a0b41016a21030c010b4101210320050d00410021000c010b41002100200320046a20014b0d0020012004490d004100210220012003490d01200320056a2102200120036b20042004417f461b22004109490d0110000c010b410021020b0340200004402000417f6a210020023100002006420886842106200241016a21020c010b0b20060b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001015410147044010000b0bda0101077f230041306b22052400200042d1f0fad48ae09ad34537030820004200370300200541186a1016220220002903081019200228020c200241106a28020047044010000b02400240200228020022062002280204220710072204450d002004101e21030340200120036a41003a00002004200141016a2201470d000b20062007200320011008417f460d0020002005200341016a200120036a2003417f736a100e10103703100c010b410021040b200228020c22010440200220013602100b2004450440200020002903003703100b200541306a240020000bb40201097f230041306b22032400200341186a10162202200029030810171018200220002903081019200228020c200241106a28020047044010000b20022802042105200228020021062003101621012000290310101721074101101e220441fe013a0000200128020c200141106a28020047044010000b2001280204220841016a220920012802084b047f20012009101f20012802040520080b20012802006a2004410110201a2001200128020441016a3602042001200441016a200720046b6a10182001200029031010190240200128020c2001280210460440200128020021000c010b100020012802002100200128020c2001280210460d0010000b20062005200020012802041009200128020c22000440200120003602100b200228020c22010440200220013602100b200341306a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001021200128020c210003402000450d01200141002001280208220320032000102222046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b2900200041003602082000420037020020004100101f200041146a41003602002000420037020c20000b7002027f017e4101210120004280015a047f41002101034020002003845045044020034238862000420888842100200141016a2101200342088821030c010b0b024020014138490d002001210203402002450d01200141016a2101200241087621020c000b000b200141016a0520010b0b13002000280208200149044020002001101f0b0b9a0101037f2000420020011003200028020422026a102342002001200220002802006a10040340024020002802102202200028020c460d00200241786a2802004504401000200028021021020b200241786a22032003280200417f6a220436020020040d002000200336021020002002417c6a2802002202200028020420026b220310016a1023200220002802006a22022003200210020c010b0b0b880101037f4190084101360200419408280200210003402000044003404198084198082802002201417f6a220236020020014101484504404190084100360200200020024102746a22004184016a280200200041046a280200110200419008410136020041940828020021000c010b0b4198084120360200419408200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000102520024f0d002003410471044010000c010b200042003702000b02402003411071450d002000102520024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101c41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b0b002000410120001b100d0b2f01017f200028020820014904402001100d200028020020002802041020210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2101017f2001101d220220012802044b044010000b2000200120011026200210270b2701017f230041206b22022400200241086a200020014114101b10252100200241206a240020000b3601017f200028020820014904402001100d200028020020002802041020210220002001360208200020023602000b200020013602040b3501017f230041106b220041b0880436020c419c08200028020c41076a417871220036020041a008200036020041a4083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010262000101d6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b1301004180080b0c696e69740073657400676574"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_SET = "set"; - - public static final String FUNC_GET = "get"; - - protected SimpleStorage(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SimpleStorage(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SimpleStorage.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SimpleStorage.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SimpleStorage.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SimpleStorage.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall set(Uint64 input) { - final WasmFunction function = new WasmFunction(FUNC_SET, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall set(Uint64 input, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SET, Arrays.asList(input), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get() { - final WasmFunction function = new WasmFunction(FUNC_GET, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public static SimpleStorage load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SimpleStorage(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SimpleStorage load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SimpleStorage(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SolSimulation.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SolSimulation.java deleted file mode 100644 index 486689ea61..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SolSimulation.java +++ /dev/null @@ -1,111 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class SolSimulation extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001bc011b60017f017f60027f7f0060047f7f7f7f0060017f0060037f7f7f017f60000060037f7f7f0060047f7f7f7f017f60027e7e017f60027f7e0060027f7f017f60047f7e7e7f0060057f7e7e7e7e0060047e7e7e7e017f60017f017e60037f7e7f017e60057f7f7f7f7f0060047f7e7e7e0060027f7c0060037e7e7f006000017f600a7f7f7f7f7f7f7f7f7f7f017f600b7f7f7f7f7f7f7f7f7f7f7f017f600a7f7f7f7f7e7f7e7f7f7f017f60027f7e017f60017e017f60027e7f017f0290020c03656e760c706c61746f6e5f6465627567000103656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000603656e760d726c705f753132385f73697a65000803656e760f706c61746f6e5f726c705f75313238001303656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001403656e7610706c61746f6e5f6765745f696e707574000303656e7610706c61746f6e5f7365745f7374617465000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000a03656e7610706c61746f6e5f6765745f7374617465000703656e760d706c61746f6e5f7265766572740005036a690506000a0101030101090309020300010703010401050004060e030e000100030105070300000100010a00000901010a0119010001090318010004000001070202001517160400080b1107060006100d0c0c1a0801080112030506000002010000040f0b0b0008000d0405017001080805030100020608017f0141f0a2040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000c0f5f5f66756e63735f6f6e5f65786974002d06696e766f6b650021090d010041010b0716194b4c6c6d6e0afad40169040010650ba40401027f230041406a220424002004200236022c41202001700440200441306a100e41c709100f418e08100f41eb0a100f418e08100f41e609100f418e08100f41fa0a100f418e08100f41f209100f418e08100f2203411510102003418e08100f41f809100f418e08100f41aa08100f418e08100f41ff0a100f418e08100f22032001101120042003280208200341016a20042d00304101711b360220200441206a1012100b0b200120026c41204f0440200441306a100e41c709100f418e08100f41900b100f418e08100f41e609100f418e08100f41fa0a100f418e08100f41f209100f418e08100f2203411610102003418e08100f41f809100f418e08100f41aa08100f418e08100f41a50b100f418e08100f41b90b100f418e08100f2203200110112003418e08100f22032004412c6a101320042003280208200341016a20042d00304101711b360210200441106a1012100b0b2000420137031041002103034020034120460440200041406b2002360200200041286a2001360200200441306a100e41a008100f418e08100f2203411d10142003418e08100f41a508100f418e08100f41aa08100f418e08100f41b409100f418e08100f41fa0a100f418e08100f41e20a100f418e08100f2203200210112003418e08100f41b90b100f418e08100f22032001101120042003280208200341016a20042d00304101711b36020020041012200441406b240005200320002903101015200341016a21030c010b0b0b3601017f20004200370200200041086a410036020003402001410c46450440200020016a4100360200200141046a21010c010b0b20000b0c002000200120011033101f0bd70101067f230041306b22022400200241206a101a22032003280200417e71417f6a410a20022d00204101711b101b200328020420022d0020220441017620044101711b2105200341016a21060340024020032802082107200220013602002003027f2007200620044101711b200541016a41f9202002101c220441004e0440200420054d0d0220040c010b20054101744101720b2205101b20022d002021040c010b0b20032004101b200241186a200241286a280200360200200220022903203703102003101d2000200241106a101e200241306a24000bd70101067f230041306b22022400200241206a101a22032003280200417e71417f6a410a20022d00204101711b101b200328020420022d0020220441017620044101711b2105200341016a21060340024020032802082107200220013602002003027f2007200620044101711b200541016a41fc202002101c220441004e0440200420054d0d0220040c010b20054101744101720b2205101b20022d002021040c010b0b20032004101b200241186a200241286a280200360200200220022903203703102003101d2000200241106a101e200241306a24000b3b01017f23004190086b220124002001200036020c200141106a4180084180082000104a1a200141106a200141106a1033100020014190086a24000b1500200041e20a100f418e08100f200128020010110b2001017f230041106b2202240020022001102020002002101e200241106a24000b7c01017f230041406a22022400200241386a4200370300200241306a42003703002002420037032820024200370320200241206a20006a20003a0000200241186a4200370300200241106a42003703002002420037030820024200370300200020026a20013c0000200241206a4120200241201008200241406b24000bff0a02087f017e230041b0016b22012400200041406b22052802002102200041286a2206280200210320014180016a100e41a008100f418e08100f2204412110142004418e08100f41a508100f418e08100f41aa08100f418e08100f41b409100f418e08100f41b909100f418e08100f418508100f418e08100f2204200029031010172004418e08100f419008100f418e08100f2204200628020010112004418e08100f419608100f418e08100f2204200528020010112004418e08100f41c009100f418e08100f2204200220036c10112004418e08100f22042003200241016a6c101120012004280208200441016a20012d0080014101711b360250200141d0006a101220052802002202200628020022036c2104200041106a2107200141a0016a4101722108034002402004200241016a220220036c22034f04402005410020022003411f4b1b36020020014180016a100e41a008100f418e08100f2202412710142002418e08100f41a508100f418e08100f41aa08100f418e08100f41b409100f418e08100f41b909100f418e08100f22022005101320012002280208200241016a20012d0080014101711b360240200141406b10122007200729030042017c42ff018237030020052802002203200628020022046c21020c010b2007290300210920014198016a420037030020014190016a42003703002001420037038801200142003703800120014180016a20046a20043a0000200141f8006a4200370300200141f0006a4200370300200142003703682001420037036020014180016a4120100922024120470440200141a0016a100e41c709100f418e08100f41d909100f418e08100f41e609100f418e08100f41ec09100f418e08100f41f209100f418e08100f220341ce0010102003418e08100f41f809100f418e08100f41aa08100f418e08100f41fe09100f418e08100f2203200210112003418e08100f41900a100f1a200120012802a801200820012d00a0014101711b360220200141206a1012100b0b2009421f83210920014180016a4120200141e0006a4120100a1a4100210203402002412046450440200141e0006a20026a22002d00002103024002402002200446044020092003ad42ff0183510d02200141a0016a100e41c709100f418e08100f419a0a100f418e08100f41e609100f418e08100f41ec09100f418e08100f41f209100f418e08100f220341d50010102003418e08100f41f809100f418e08100f41aa08100f418e08100f41ad0a100f418e08100f2203200410112003418e08100f41bc0a100f418e08100f220320002d000010142003418e08100f41c30a100f418e08100f20091017200120012802a801200820012d00a0014101711b360200200110120c010b200341ff0171450d01200141a0016a100e41c709100f418e08100f41cb0a100f418e08100f41e609100f418e08100f41ec09100f418e08100f41f209100f418e08100f220341d80010102003418e08100f41f809100f418e08100f41aa08100f418e08100f41ad0a100f418e08100f2203200410112003418e08100f41bc0a100f418e08100f220320002d000010142003418e08100f41d90a100f1a200120012802a801200820012d00a0014101711b360210200141106a10120b100b0b200241016a21020c010b0b200441016a210420052802002102200628020021030c010b0b03402002200341016a20046c4f45044020022007290300421f831015200241016a210220052802002103200628020021040c010b0b20014180016a100e41a008100f418e08100f2202412d10142002418e08100f41a508100f418e08100f41aa08100f418e08100f41b409100f418e08100f41b909100f418e08100f2202200720062005101820012002280208200241016a20012d0080014101711b360230200141306a1012200141b0016a24000bd70101067f230041306b22022400200241206a101a22032003280200417e71417f6a410a20022d00204101711b101b200328020420022d0020220441017620044101711b2105200341016a21060340024020032802082107200220013703002003027f2007200620044101711b200541016a4180212002101c220441004e0440200420054d0d0220040c010b20054101744101720b2205101b20022d002021040c010b0b20032004101b200241186a200241286a280200360200200220022903203703102003101d2000200241106a101e200241306a24000b49002000418508100f418e08100f2200200129030010172000418e08100f419008100f418e08100f2201200228020010112001418e08100f419608100f418e08100f200328020010110b4a01027f230041206b22012400200141106a100e2202200041106a200041286a200041406b101820012002280208200241016a20012d00104101711b36020020011012200141206a24000b190020004200370200200041086a41003602002000101d20000be70201047f0240027f20002d000022024101712203044020002802040c010b20024101760b22042001490440200120046b2204450d01027f2003044020002802002202417e71417f6a210320002802040c010b410a210320024101760b2101200320016b2004490440027f2002410171044020002802080c010b200041016a0b2105416f2102200341e6ffffff074d0440410b20034101742202200120046a220320032002491b220241106a4170712002410b491b21020b2002104521032001044020032005200110660b200020033602082000200241017222023602000b027f2002410171044020002802080c010b200041016a0b220220016a4100200410511a200120046a2101024020002d00004101710440200020013602040c010b200020014101743a00000b200120026a41003a00000f0b20030440200028020820016a41003a0000200020013602040f0b200020016a41016a41003a0000200020014101743a00000b0b2901017f230041106b220424002004200336020c2000200120022003104a2103200441106a240020030b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2d01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b101f1a0baf0201057f0240027f20002d00002205410171220604402000280204210420002802002205417e71417f6a0c010b20054101762104410a0b220320046b20024f04402002450d012004027f2006044020002802080c010b200041016a0b22036a200120021066200220046a2104024020002d00004101710440200020043602040c010b200020044101743a00000b200320046a41003a000020000f0b027f2005410171044020002802080c010b200041016a0b2107200220046a2105416f2106200341e6ffffff074d0440410b20034101742203200520052003491b220341106a4170712003410b491b21060b2006104521032004044020032007200410660b200320046a200120021066200020053602042000200641017236020020002003360208200320056a41003a00000b20000bce0101067f230041206b22042400200441106a101a22022002280200417e71417f6a410a20022d00004101711b101b200228020420022d0000220341017620034101711b2105200241016a21060340024020022802082107200420013602002002027f2007200620034101711b200541016a41f6202004101c220341004e0440200320054d0d0220030c010b20054101744101720b2205101b20022d000021030c010b0b20022003101b200041086a200241086a280200360200200020022902003702002002101d200441206a24000bf10102037f017e230041f0006b22002400106510062201102222021007200041186a20002002200110232201410010240240200041186a1025220350044041be0b10260c010b41fa0a1027200351044020004200370360200041e0006a410472210220011028410347044041ce0b10260b2000410136026c200020013602182000200041ec006a36021c200041186a200041e0006a1029200041186a20021029200041186a102a220120002802602000280264100d2001102b0c010b41b9091027200351044020014101102c0c010b41fe0b1027200351044020014102102c0c010b41840c10260b102d200041f0006a24000b9b0101047f230041106b220124002001200036020c2000047f41e422200041086a2202411076220041e4222802006a220336020041e02241e022280200220420026a41076a417871220236020002400240200341107420024d044041e422200341016a360200200041016a21000c010b2000450d010b200040000d0010010b20042001410c6a4104104641086a0541000b2100200141106a240020000b0c00200020012002411c102e0bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001103420012003280208200328020c103536020c200320011034410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114102e1a200341106a24000f0b20032001103441002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103510692001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b820102027f017e230041106b220124002000102f0240024020001030450d00200010310d0020002802040d010b41ae0c10260b200141086a20001032200128020c220041094f044041ae0c10260b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b0c00200020001033100010010b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b870101047f230041106b22012400024020001031450d002000280204450d0020002802002d000041c001490d00200141086a20001034200128020c210003402000450d01200141002001280208220320032000103522046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b4601017f230041206b22022400200241086a2000280200200028020428020010242001200241086a103636020020002802042200200028020041016a360200200241206a24000bcb0201067f230041d0006b22012400200042cbf080c4caba99cf3237030820004200370300200141386a1037220320002903081038200141306a2003103902402001280230220220012802342205100922064504400c010b2001410036022820014200370320200141206a2006103a20022005200128022022022001280224220520026b100a417f4704402000200141086a200241016a20052002417f736a10231025370310200621040b2002450d00200120023602240b200328020c22020440200341106a20023602000b2004450440200020002903003703100b20004100360218200041206a2203429ed1bdbbeae49df8ea003703002003200041286a103b450440200020002802183602280b20004100360230200041386a22034285d9ef94e5f7e4929c7f3703002003200041406b103b450440200020002802303602400b200141d0006a240020000bfa0101067f230041e0006b22012400200041386a200041406b103c200041206a200041286a103c200141c8006a103722052000290308103d103e200520002903081038200141406b20051039200141286a103721022000290310103d21042002200141186a103f220310402002200420032802046a20032802006b103e2002200029031010382001280244210420012802402100200141106a2002103920012802102106200141086a20021039200020042006200128020c1008200328020022040440200320043602040b200228020c22030440200241106a20033602000b200528020c22020440200541106a20023602000b200141e0006a24000b3c01017f230041d0006b2202240020001028410147044041ce0b10260b200241086a102a2100200241086a20011103002000102b200241d0006a24000b880101037f41c422410136020041c8222802002100034020000440034041cc2241cc222802002201417f6a2202360200200141014845044041c4224100360200200020024102746a22004184016a280200200041046a28020011030041c422410136020041c82228020021000c010b0b41cc22412036020041c822200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106720024f0d002003410471044010010c010b200042003702000b02402003411071450d002000106720024d0d0020034104710440100120000f0b200042003702000b20000b4101017f200028020445044010010b0240200028020022012d0000418101470d00200028020441014d047f100120002802000520010b2c00014100480d0010010b0b980101037f200028020445044041000f0b2000102f200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100120002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100120002802000520020b20016a2d00004100470b0b1900200028020445044041000f0b200010472d000041bf014b0bf10101047f027f02400240200110482203200128020422024b047f41ae0c102620012802040520020b450d004100200110472c0000417f4a0d021a2001280204450d00200110472d000041bf014b0d00200110472d000041b801490d00200110472d000041c97e6a21020c010b4100210220011031450d00200110472d000041f801490d00200110472d000041897e6a21020b200241016a0b21022000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b2101017f20011048220220012802044b044010010b2000200120011068200210690b2701017f230041206b22022400200241086a200020014114102e10672100200241206a240020000b800101037f230041106b220124002000102f0240024020001030450d00200010310d0020002802040d010b41ae0c10260b200141086a20001032200128020c220041054f044041ae0c10260b200128020821030340200004402000417f6a210020032d00002002410874722102200341016a21030c010b0b200141106a240020020b29002000410036020820004200370200200041001044200041146a41003602002000420037020c20000b09002000200110431a0b2200200128020c200141106a28020047044041970c10260b200020012902003702000bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001104521060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110461a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0bbf0101057f230041d0006b22022400200241386a1037220420002903001038200241306a2004103902402002280230220020022802342205100922064504400c010b2002410036022820024200370320200241206a2006103a20002005200228022022002002280224220520006b100a417f4704402001200241086a200041016a20052000417f736a10231036360200200621030b2000450d00200220003602240b200428020c22000440200441106a20003602000b200241d0006a240020030ba20201057f230041f0006b22022400200241386a103722042000290300103d103e200420002903001038200241306a20041039200241186a10372103200241e8006a4100360200200241e0006a4200370300200241d8006a420037030020024200370350200241d0006a2001350200104120022802502105200241d0006a41047210422003200241d0006a103f220010402003200520002802046a20002802006b103e20032001350200104321032002280234210120022802302105200241106a2003103920022802102106200241086a20031039200520012006200228020c1008200028020022010440200020013602040b200328020c22000440200341106a20003602000b200428020c22000440200441106a20003602000b200241f0006a24000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200010412001280200210220014104721042200141206a240020020b1300200028020820014904402000200110440b0b3a01017f20004100360208200042003702002000410110452201360200200141fe013a00002000200141016a22013602082000200136020420000b6401037f200028020c200041106a28020047044041970c10260b200028020422022001280204200128020022036b22016a220420002802084b047f20002004104420002802040520020b20002802006a2003200110461a2000200028020420016a3602040bb60102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b024020024138490d002002210303402003450d01200241016a2102200341087621030c000b000b200241016a21030b200041186a28020022020440200041086a2802002002200041146a2802006a417f6a220241087641fcffff07716a280200200241ff07714102746a21000b2000200028020020036a3602000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b9c0101037f2000420020011004200028020422026a106a42002001200220002802006a10050340024020002802102202200028020c460d00200241786a2802004504401001200028021021020b200241786a22032003280200417f6a220436020020040d002000200336021020002002417c6a2802002202200028020420026b220310026a106a200220002802006a22022003200210030c010b0b20000b2f01017f2000280208200149044020011022200028020020002802041046210220002001360208200020023602000b0b0b002000410120001b10220bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b2e01017f02402000280200220104402000280204450d0120010f0b41b70c41b4011049000b41820d41b5011049000bff0201037f200028020445044041000f0b2000102f41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10010b20020b3501017f230041106b220224002002200136020c200241f70c360208200241be0c36020420022000360200200210644100106b1a000bfa16030f7f027e037c230041306b220a2400200a200236020c4103410420001b210b200a410f6a21110340410020066b21070240034020022d00002204450d01200441254704402004411874411875200020062001200b110200200a200241016a220236020c2007417f6a2107200641016a21060c010b0b200a200241016a220236020c410021040340024002400240024020022c0000220941556a220541054b0440200941606a220541034b0d0102400240200541016b0e03030301000b200a200241016a220236020c200441087221040c060b200a200241016a220236020c200441107221040c050b200541016b0e050002000003010b0240200941506a41ff017141094d0440200a410c6a104d210d200a28020c21020c010b4100210d2009412a470d0020032802002105200a200241016a220236020c2004410272200420054100481b210420052005411f7522096a200973210d200341046a21030b41002109024020022d0000412e470d00200a200241016a220836020c200441800872210420022d0001220541506a41ff017141094d0440200a410c6a104d2109200a28020c21020c010b200541ff0171412a470440200821020c010b20032802002105200a200241026a220236020c20054100200541004a1b2109200341046a21030b0240024020022c000041987f6a411f77220541094b0d000240024002400240200541016b0e09020004040403040403010b200a200241016a220836020c20022d0001220541ec004704402004418002722104200821020c050b200a200241026a220236020c20044180067221040c030b200a200241016a220836020c20022d0001220541e8004704402004418001722104200821020c040b200a200241026a220236020c200441c0017221040c020b200a200241016a220236020c20044180047221040c010b200a200241016a220236020c20044180027221040b20022d000021050b0240024002400240024002400240024002402005411874411875220c419e7f6a220841164b0440200c4125470440200c41c600460d07200c41d800470d020c080b4125200020062001200b1102000c020b200841016b0e15040600050000060000000000060200000300060000060b200c200020062001200b1102000b200a200241016a220236020c200641016a21060c0c0b200b200020062001200328020041004110200941082004412172104e2106200a200241016a220236020c200341046a21030c0b0b20032802002205417f6a21070340200741016a22072d00000d000b200720056b2207200920072009491b2007200441800871220c410a761b210802402004410271220e0440200621040c010b410021070340200620076a2104200720086a220f200d4f4504404120200020042001200b110200200741016a21070c010b0b200f41016a21080b200341046a21030340024020052d00002206450d00200c04402009450d012009417f6a21090b2006411874411875200020042001200b110200200441016a2104200541016a21050c010b0b200e450440200421060c050b410021070340200420076a2106200720086a200d4f0d054120200020062001200b110200200741016a21070c000b000b410121070240200441027122090440200621050c010b410121040340200420066a417f6a21052004200d4f450440200441016a21044120200020052001200b1102000c010b0b200441016a21070b20032c0000200020052001200b110200200541016a21062009450d0203402007200d4f0d034120200020062001200b110200200641016a2106200741016a21070c000b000b200941062004418008711b220941037441900d6a2108200341076a417871220e2b0300211541002105034002402009410a490d002005411f4b0d00200a41106a20056a41303a0000200841786a21082009417f6a2109200541016a21050c010b0b027f4400000000000000002015a1201520154400000000000000006322101b22159944000000000000e0416304402015aa0c010b4180808080780b2103027f20152003b7a120082b03002217a2221644000000000000f041632016440000000000000000667104402016ab0c010b41000b210c02402016200cb8a1221644000000000000e03f644101734504402017200c41016a220cb8654101730d01200341016a21034100210c0c010b201644000000000000e03f620d00200c45200c41017172200c6a210c0b4100210802402015440000c0ffffffdf41640d00024020090440200520096a41606a2112034002402005412046044041202105201221090c010b200a41106a20056a200c200c410a6e220841766c6a4130723a0000200541016a21052009417f6a2109200c41094b210f2008210c200f0d010b0b034002402005411f4b22080d002009450d00200a41106a20056a41303a0000200541016a21052009417f6a21090c010b0b20080d01200a41106a20056a412e3a0000200541016a21050c010b20152003b7a1221544000000000000e03f64410173450440200341016a21030c010b20032003201544000000000000e03f61716a21030b03402005411f4d0440200a41106a20056a20032003410a6d220941766c6a41306a3a0000200541016a2105200341096a210820092103200841124b0d010b0b20044103712109034002402005411f4b0d0020094101470d002005200d4f0d00200a41106a20056a41303a0000200541016a21050c010b0b20044101712108200441027121090240200d2004410c714100472010726b20052005200d461b2205411f4b0d0002402010410173450440200a41106a20056a412d3a00000c010b20044104710440200a41106a20056a412b3a00000c010b2004410871450d01200a41106a20056a41203a00000b200541016a21050b024020082009720440200621080c010b410021040340200420066a2108200420056a200d4f0d014120200020082001200b110200200441016a21040c000b000b200720086a2106034020050440200520116a2c0000200020082001200b110200200641016a21062005417f6a2105200841016a21080c010b0b2009450d0003402006200d4f0d014120200020082001200b110200200641016a2106200841016a21080c000b000b200e41086a2103200a200241016a220236020c200821060c080b41102108024002400240200541ff0171220741d8004622050d00200741f800460d00200741ef00460440410821080c020b200741e200460440410221080c020b2004416f712104410a21080b2004412072200420051b2104200741e400460d01200741e900460d010b200441737121040b2004417e7120042004418008711b2104200741e900474100200741e400471b4504402004418004710440200b200020062001200341076a417871220729030022132013423f8722147c2014852013423f88a72008ad2009200d2004104f2106200741086a21030c030b2004418002710440200b200020062001200328020022072007411f7522056a2005732007411f7620082009200d2004104e21060c020b200b200020062001027f200441c00071044020032c00000c010b2003280200220741107441107520072004418001711b0b2207411f75220520076a2005732007411f7620082009200d2004104e21060c010b2004418004710440200b200020062001200341076a417871220729030041002008ad2009200d2004104f2106200741086a21030c020b2004418002710440200b2000200620012003280200410020082009200d2004104e21060c010b200b200020062001027f200441c00071044020032d00000c010b2003280200220741ffff037120072004418001711b0b410020082009200d2004104e21060b200341046a21030b200a200241016a220236020c0c050b200a200241016a220236020c200441047221040c020b200a200241016a220236020c200441027221040c010b200a200241016a220236020c200441017221040c000b000b0b4100200020062001417f6a20062001491b2001200b110200200a41306a240020060b140020022003490440200120026a20003a00000b0b0300010b4501037f20002802002101034020012d000041506a41ff017141094b4504402000200141016a220336020020012c00002002410a6c6a41506a2102200321010c010b0b20020bad0101067f230041206b220b240020092009416f7120041b210c02402004450440200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a2004200420066e220e20066c6b220a4130200d200a41187441808080d000481b6a3a0000200941016a210a2009411e4b0d01200420064f210f200a2109200e2104200f0d000b0b2000200120022003200b200a2005200620072008200c10502104200b41206a240020040bba0102057f017e230041206b220b240020092009416f712004420052220a1b210c0240200a4504404100210a200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a4130200d20042004200680220f20067e7da7220a41187441808080d000481b200a6a3a0000200941016a210a2009411e4b0d01200420065a210e200a2109200f2104200e0d000b0b2000200120022003200b200a20052006a720072008200c10502109200b41206a240020090bf20401037f200a410271210d2005210b02400340200d0d010240200b20084f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410371410147210c2005210b02400340200c0d010240200b20094f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410171210c024002400240200a41107104400240200a418008710d002005450d002005200847410020052009471b0d002005417e6a2005417f6a220b200b1b200b20074110461b21050b0240200741104604400240200a412071220b0d002005411f4b0d00200420056a41f8003a0000200541016a21050c020b200b450d012005411f4b0d01200420056a41d8003a0000200541016a21050c010b20074102470d002005411f4b0d00200420056a41e2003a0000200541016a21050b2005411f4b0d01200420056a41303a0000200541016a21050c010b20050d00410021050c010b2009200a410c714100472006726b200520052009461b2205411f4b0d010b20060440200420056a412d3a0000200541016a21050c010b200a4104710440200420056a412b3a0000200541016a21050c010b200a410871450d00200420056a41203a0000200541016a21050b2002210b0240200c200d720d002005210c0340200c20094f0d0141202001200b20032000110200200c41016a210c200b41016a210b0c000b000b2004417f6a210c037f2005047f2005200c6a2c00002001200b200320001102002005417f6a2105200b41016a210b0c01050240200d450d00410020026b210503402005200b6a20094f0d0141202001200b20032000110200200b41016a210b0c000b000b200b0b0b0bfc0202027f017e02402002450d00200020013a0000200020026a2203417f6a20013a000020024103490d00200020013a0002200020013a00012003417d6a20013a00002003417e6a20013a000020024107490d00200020013a00032003417c6a20013a000020024109490d002000410020006b41037122046a2203200141ff017141818284086c22013602002003200220046b417c7122046a2202417c6a200136020020044109490d002003200136020820032001360204200241786a2001360200200241746a200136020020044119490d002003200136021820032001360214200320013602102003200136020c200241706a20013602002002416c6a2001360200200241686a2001360200200241646a20013602002001ad220542208620058421052004200341047141187222016b2102200120036a2101034020024120490d0120012005370300200141186a2005370300200141106a2005370300200141086a2005370300200141206a2101200241606a21020c000b000b20000b5901017f200020002802482201417f6a20017236024820002802002201410871044020002001412072360200417f0f0b200042003702042000200028022c220136021c200020013602142000200120002802306a36021041000b4402017f017e200142ffffffffffff3f832103027f2001423088a741ffff0171220241ffff01470440410420020d011a410241032000200384501b0f0b2000200384500b0bc50101037f230041206b2204240002402002423088a7220641ffff0171220541ffff01460d0020054504402003027f410020012002420042001074450d001a20042001200242808080808080c0bbc0001055200441106a2004290300200441086a290300200310542004290318210220042903102101200328020041887f6a0b3602000c010b200320054182807f6a360200200242ffffffffffff3f832006418080027141feff0072ad4230868421020b2000200137030020002002370308200441206a24000ba60a02047f107e230041e0006b220424002004200242ffffffffffff3f83370358200420013703502004200342ffffffffffff3f83220c370348200442003703402002200385428080808080808080807f8321090240027e02400240024002402002423088a741ffff01712206417f6a41fdff014d41002003423088a741ffff01712205417f6a41feff01491b0d00200150200242ffffffffffffffffff0083220a42808080808080c0ffff0054200a42808080808080c0ffff00511b450440200242808080808080208421090c060b4101200342ffffffffffffffffff0083220242808080808080c0ffff0054200242808080808080c0ffff00511b45044020034280808080808020842109420021010c060b2001200a42808080808080c0ffff008584500440200250450d0242808080808080e0ffff0021090c030b200242808080808080c0ffff00855004402001200a84210242002101200250044042808080808080e0ffff0021090c070b200942808080808080c0ffff008421090c060b2001200a842103420021012003500d052002500d05200a42ffffffffffff3f580440200441d0006a107321070b200242ffffffffffff3f560d00200441406b107320076a21072004290348210c200429034021080b2004200837034020042004290358220d42808080808080c00084220f3703582004200c42808080808080c0008422103703482004290350220342208822022008420f86428080feff0f8322017e2211200342ffffffff0f832203200842118842ffffffff0f83220a7e7c220e4220862212200120037e7c220b201254ad200d42ffffffff0f83220d20017e22142003200c420f8620084231888442ffffffff0f8322087e7c22122002200a7e7c2213200e201154ad422086200e422088847c220e2001200f422088220c7e2215201042118842ffffffff0f83220120037e7c220f200a200d7e7c2210200220087e7c22114220867c22167c2103200520066a20076a4181807f6a21050240200a200c7e22172008200d7e7c220a201754ad200a200120027e7c2202200a54ad7c2001200c7e7c2001200d7e22012008200c7e7c2208200154ad4220862008422088847c200220084220867c2208200254ad7c20082012201454ad2013201254ad7c7c2202200854ad7c20022011201054ad200f201554ad2010200f54ad7c7c4220862011422088847c2208200254ad7c2008200e201354ad2016200e54ad7c7c2202200854ad7c220842808080808080c0008350450440200541016a21050c010b200b423f88210120084201862002423f8884210820024201862003423f88842102200b420186210b200120034201868421030b200541ffff014e0440200942808080808080c0ffff008421090c020b200541004a0d02410120056b220641ff004b0d01200441106a200b200320061070200441206a20022008200541ff006a2205106f200441306a200b20032005106f200420022008200610702004290330200441386a29030084420052ad200429032020042903108484210b200441286a290300200441186a29030084210320042903002102200441086a2903000c030b200942808080808080c0ffff008421090b420021010c020b200842ffffffffffff3f832005ad423086840b2009842109200b502003427f552003428080808080808080807f511b4504402009200242017c2201200254ad7c21090c010b200b2003428080808080808080807f858450450440200221010c010b2009200220024201837c2201200254ad7c21090b2000200937030820002001370300200441e0006a24000b9a2f021d7f047e230041e03c6b2206240020064185213602d002200641b6026a211d419e7d20066b211e200641df026a211f200641e0026a410872211c200641e0026a410972211820064190396a2120200641e0026a211a200641b7026a211602400240024003400240200441ffffffff0720126b4a0d00200420126a2112024002400240027f0240027f02400240024002400240024002400240024002400240024002400240024020062802d00222092d000022070440410021042009210503400240200741ff01712207450d0020074125460d00200441016a210420052d00012107200541016a21050c010b0b200620053602d0022004210503400240200520096a22072d00004125470d00200741016a2d00004125470d00200441016a2104200541026a21050c010b0b200620073602d002200441ffffffff0720126b220b4a0d162000044020002009200410570b20040d17417f210f200741016a22042c000041506a220541094d0440200741036a2004200741026a2d000041244622071b21042005417f20071b210f4101201720071b21170b4100210503400240200620043602d00220042c0000220a41606a2207411f4b0d00410120077422074189d10471450d00200441016a2104200520077221050c010b0b0240200a412a460440027f0240200441016a220a2c000041506a220741094b0d00200441026a2d00004124470d00200320074102746a410a360200200441036a210a41012117200441016a2c000041047420026a41807a6a2802000c010b20170d0620004504402006200a3602d00241002117410021100c030b20012001280200220441046a3602004100211720042802000b21102006200a3602d0022010417f4a0d01410020106b211020054180c0007221050c010b200641d0026a105822104100480d1720062802d002210a0b41002104417f2108027f200a2d0000412e470440200a210741000c010b200a2d0001412a460440027f0240200a2c000241506a220741094b0d00200a2d00034124470d00200320074102746a410a360200200a41046a2107200a2c000241047420026a41807a6a2802000c010b20170d06200a41026a210741002000450d001a20012001280200220a41046a360200200a2802000b2108200620073602d0022008417f73411f760c010b2006200a41016a3602d002200641d0026a1058210820062802d002210741010b210e03402004210a20072c000041bf7f6a220441394b0d03200741016a2107200a413a6c20046a41e01c6a2d00002204417f6a4108490d000b200620073602d0022004450d030240024002402004411b460440200f417f4c0d010c070b200f4100480d012003200f4102746a200436020020062002200f4104746a22042903003703c0022006200441086a2903003703c8020b410021042000450d190c010b2000450d1a200641c0026a2004200110590b200541ffff7b712211200520054180c000711b210c2007417f6a2c00002204415f7120042004410f714103461b2004200a1b221341ad7f6a220441254d0d01201341bf7f6a220441064b0d040240200441016b0e03050005060b200641003602fc01200620062903c0023e02f8012006200641f8016a3602c002417f2108200641f8016a0c100b20000d192017450d18200241106a2107200341046a210541012104034002402004410a47047f200528020022090d01200405410a0b41027421040340200441046a2205412c460440410121120c1d0b200320046a2107200521042007280200450d000b0c040b2007200920011059200741106a2107200541046a2105200441016a21040c000b000b200441016b0e25020202020b0202020202020202030207080303030208020202050c090a020204020f02020b0d0b200620073602d0020b41d82241163602000c140b4100210541c020210f0c0f0b2008417f4c4100200e1b0d1020062903c002212220062903c80221212006410036028c03027f2021427f5704402021428080808080808080807f8521214101211541d1200c010b200c4180107104404101211541d4200c010b41d72041d220200c41017122151b0b211b024020222021105341014c0440200041202010201541036a22042011105a2000201b20151057200041ec2041f020201341207141057622051b41e42041e82020051b2022202120222021105b1b410310572000412020102004200c4180c00073105a2010200420042010481b21040c010b200641e0016a202220212006418c036a1054200641d0016a20062903e001222120062903e801222220212022105c20062903d0012221200641d8016a290300222242004200107404402006200628028c03417f6a36028c030b2013412072221941e100460440201b41096a201b201341207122091b210e02402008411a4b0d00411b20086b450d00200841656a210442808080808080c081c000212342002124034020040440200641f0006a2024202342808080808080c081c0001055200441016a2104200641f8006a2903002123200629037021240c010b0b200e2d0000412d460440200641406b20212022428080808080808080807f8520242023105d200641306a202420232006290340200641c8006a290300105c200641386a290300428080808080808080807f852122200629033021210c010b200641e0006a2021202220242023105c200641d0006a2006290360200641e8006a29030020242023105d200641d8006a2903002122200629035021210b2015410272210a201a200628028c0322052005411f7522046a200473ad201a105e2204460440200641303a00df02201f21040b2004417e6a220f2013410f6a3a00002004417f6a412d412b20054100481b3a0000200c410871210b200641e0026a21050340200641206a20212022105f22071060200641106a202120222006290320200641286a290300105d20062006290310200641186a29030042808080808080c081c000105520052204200741b0206a2d00002009723a0000200641086a2903002122200629030021210240200441016a2205200641e0026a6b4101470d000240200b0d00200841004a0d0020212022420042001074450d010b2004412e3a0001200441026a21050b202120224200420010740d000b417f210441fdffffff07200a201a200f6b22096a220b6b2008480d01200041202010200b200841026a2005200641e0026a6b22072005201e6a2008481b200720081b22056a2204200c105a2000200e200a10572000413020102004200c4180800473105a2000200641e0026a2007105720004130200520076b41004100105a2000200f200910572000412020102004200c4180c00073105a2010200420042010481b21040c010b20084100482104024020212022420042001074450440200628028c03210e0c010b200641c0016a2021202242808080808080c08dc00010552006200628028c0341646a220e36028c03200641c8016a290300212220062903c00121210b4106200820041b210d20064190036a2020200e4100481b221421050340200641b0016a20212022106122041062200641a0016a2021202220062903b001200641b8016a290300105d20064190016a20062903a001200641a8016a2903004280808080e59ab78ec000105520052004360200200541046a2105200629039001222120064198016a29030022224200420010740d000b2014210b0340200e41014e04402005417c6a2104200e411d200e411d481b2209ad21224100210703402004200b4f044020042007ad20043502002022867c22212021428094ebdc038022214280ec94a37c7e7c3e02002004417c6a21042021a721070c010b0b20070440200b417c6a220b20073602000b034020052204200b4b04402004417c6a2205280200450d010b0b200e20096b210e200421050c010b0b2006200e36028c03200d412d6a41096e41016a21110340200e417f4c044041002107418094ebdc0341094100200e6b200e4177481b220a762108417f200a74417f73210f200b2104034020042005490440200420042802002209200a7620076a360200200441046a21042009200f7120086c21070c010b0b2014200b200b41046a200b2802001b220b201941e600461b220420114102746a2007044020052007360200200541046a21050b2005200520046b41027520114a1b2105200a200e6a210e0c010b0b2006200e36028c03410021070240200b20054f0d002014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200d41002007201941e600461b6b201941e70046220a200d410047716b2204200520146b41027541096c41776a4804402004418080096a2204200441096d220841776c6a2104410a21090340200441074c04402009410a6c2109200441016a21040c010b0b200841027420146a220f4184807c6a22082802002204200420096e221120096c220e6b2104024041002005200f4188807c6a22194620041b0d00024020114101714504404280808080808080b8c0002121420021222008200b4d0d012009418094ebdc03470d012008417c6a2d0000410171450d010b4280808080808080b8c0002121420121220b4280808080808080ff3f42808080808080c0ff3f42808080808080e0ff3f200420094101762211461b42808080808080e0ff3f20052019461b20042011491b212302402015450d00201b2d0000412d470d002023428080808080808080807f8421234280808080808080b84021210b20064180016a2022202142002023105c2008200e36020020062903800120064188016a290300202220211074450d0020082009200e6a2207360200200f4180807c6a210403402007418094ebdc034f0440200441046a41003602002004200b490440200b417c6a220b41003602000b2004200428020041016a22073602002004417c6a21040c010b0b200441046a21082014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200841046a22042005200520044b1b21050b027f0340410020052209200b4d0d011a2009417c6a2205280200450d000b41010b210e0240200a450440200c41087121080c010b2007417f73417f200d4101200d1b220420074a2007417b4a7122051b20046a210d417f417e20051b20136a2113200c41087122080d00410921050240200e450d002009417c6a280200220a450d0041002105410a21040340200a2004700d01200541016a21052004410a6c21040c000b000b200920146b41027541096c41776a2104201341207241e60046044041002108200d200420056b22044100200441004a1b2204200d2004481b210d0c010b41002108200d200420076a20056b22044100200441004a1b2204200d2004481b210d0b417f2104200d41fdffffff0741feffffff072008200d72220f1b4a0d00200d200f4100476a41016a21110240201341207241e600472219450440200741ffffffff0720116b4a0d0220074100200741004a1b210a0c010b20072007411f7522056a200573ad201a105e417e6a21050340201a20056b220a417e6a41014c0440200541016a41303a00002005417f6a21050c010b0b200520133a0000200541016a412d412b20074100481b3a0000200a41ffffffff0720116b4a0d010b200a20116a2207201541ffffffff07734a0d00200041202010200720156a2211200c105a2000201b201510572000413020102011200c4180800473105a024020194504402014200b200b20144b1b220721050340200520144d044020053502002018105e210402402005200747044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b20042018470d00200641303a00e802201c21040b20002004201820046b1057200541046a21050c010b0b200f0440200041f420410110570b03400240200520094f0d00200d4101480d0020053502002018105e210403402004200641e0026a4b04402004417f6a220441303a00000c010b0b20002004200d4109200d4109481b1057200d41776a210d200541046a21050c010b0b20004130200d41096a41094100105a0c010b2009200b41046a200e1b210a200b2107034002402007200a4f0d00200d4100480d00201820073502002018105e2204460440200641303a00e802201c21040b02402007200b47044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b2000200441011057200441016a21042008454100200d4101481b0d00200041f420410110570b20002004201820046b2209200d200d20094a1b1057200741046a2107200d20096b210d0c010b0b20004130200d41126a41124100105a20002005201a20056b10570b2000412020102011200c4180c00073105a2010201120112010481b21040b200441004e0d110c100b20062802c002220441ca2020041b21090c010b4100210441d8222802002105037f200441d80046047f41d80005200441e00d6a2d0000200546047f200405200441016a21040c020b0b0b210741c00e210903402007450d01034020092d00002104200941016a2205210920040d000b2007417f6a2107200521090c000b000b4100210541ffffffff07200820084100481b210a0240024003400240200520096a21042005200a46220f0d002004410371450d0020042d0000450d02200541016a21050c010b0b41002107200f0d01200a20056b210720042d0000450d01200520096a2104034020074104490d0220042802002205417f73200541fffdfb776a71418081828478710d022007417c6a2107200441046a21040c000b000b200a20056b21070b03400240410021052007450440410021040c010b20042d0000450d002007417f6a2107200441016a21040c010b0b2009200420096b200a20041b22076a210441c020210f2008417f4a04402011210c200721080c0d0b2011210c2007210820042d0000450d0c0c0d0b200620062903c0023c00b6024100210541c020210f41012108201d2109201621042011210c0c0b0b20062903c0022221427f5704402006420020217d22213703c0024101210541c0200c080b200c4180107104404101210541c1200c080b41c22041c020200c41017122051b0c070b20062903c00221212016210903402021504504402009417f6a22092021a74107714130723a0000202142038821210c010b0b4100210541c020210f200c410871450d072008201620096b220441016a200820044a1b21080c070b20084108200841084b1b2108200c410872210c41f80021130b2013412071210420062903c00221212016210903402021504504402009417f6a22092021a7410f7141b0206a2d00002004723a0000202142048821210c010b0b4100210541c020210f200c410871450d0520062903c002500d05201341047541c0206a210f410221050c050b41002104200a41ff0171220541074b0d080240024002400240024002400240200541016b0e07010203040f0506000b20062802c00220123602000c0e0b20062802c00220123602000c0d0b20062802c0022012ac3703000c0c0b20062802c00220123b01000c0b0b20062802c00220123a00000c0a0b20062802c00220123602000c090b20062802c0022012ac3703000c080b20062802c0020b21094100210420092105024003400240024020042008470440200528020022070d01200421080b20084100480d092000412020102008200c105a41002104034020042008460d0420092802002205450d0420054180014f0d02200620053a00f401200441016a220420084b0d042000200641f4016a41011057200941046a21090c000b000b20074180014f0d00200620073a00f401200441016a2104200541046a21050c010b0b000b2000412020102008200c4180c00073105a20102008201020084a1b21040c060b4100210520062903c002212141c0200b210f20212016105e21090b200e410020084100481b0d02200c41ffff7b71200c200e1b210c20062903c0022121024020080d00202150450d0041002108201621090c010b2008202150201620096b6a2204200820044a1b21080b201621040b200420096b220a20082008200a481b220841ffffffff0720056b4a0d00200520086a2207201020102007481b2204200b4a0d002000412020042007200c105a2000200f200510572000413020042007200c4180800473105a200041302008200a4100105a20002009200a10572000412020042007200c4180c00073105a0c010b0b41d82241cb003602000b417f21120c010b410021120b200641e03c6a240020120bd30101057f024020002d00004120710d0020002802102203047f200305200010520d0120002802100b200028021422056b200249044020002001200220002802241104001a0f0b41002103024020002802504100480d0020012104034020022003460d01200341016a2103200220046a21062004417f6a220721042006417f6a2d0000410a470d000b20002001200220036b41016a220420002802241104002004490d01200220076a41016a2101200028021421052003417f6a21020b20052001200210461a2000200028021420026a3602140b0b5d01047f20002802002102034020022c000041506a220341094b450440417f21042000200241016a2202360200200141cc99b3e6004d047f417f20032001410a6c22016a200341ffffffff0720016b4a1b0520040b21010c010b0b20010ba00502017f017e230041106b220324000240200141776a220141114b0d00024002400240024002400240024002400240024002400240024002400240024002400240200141016b0e110102050304060708090a0b0c0d0e0f1011000b20022002280200220141046a360200200020012802003602000c110b20022002280200220141046a360200200020013402003703000c100b20022002280200220141046a360200200020013502003703000c0f0b20022002280200220141046a360200200020013402003703000c0e0b20022002280200220141046a360200200020013502003703000c0d0b2002200228020041076a417871220141086a360200200020012903003703000c0c0b20022002280200220141046a360200200020013201003703000c0b0b20022002280200220141046a360200200020013301003703000c0a0b20022002280200220141046a360200200020013000003703000c090b20022002280200220141046a360200200020013100003703000c080b2002200228020041076a417871220141086a360200200020012903003703000c070b20022002280200220141046a360200200020013502003703000c060b2002200228020041076a417871220141086a360200200020012903003703000c050b2002200228020041076a417871220141086a360200200020012903003703000c040b20022002280200220141046a360200200020013402003703000c030b20022002280200220141046a360200200020013502003703000c020b2002200228020041076a417871220141086a360200200320012b030010632000200341086a290300370308200020032903003703000c010b20022002280200410f6a417071220141106a3602002001290300210420002001290308370308200020043703000b200341106a24000b6a01017f23004180026b220524000240200220034c0d0020044180c004710d0020052001200220036b22024180022002418002491b105121030340200241800249450440200020034180021057200241807e6a21020c010b0b20002003200210570b20054180026a24000b63002000420052200142ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b2002420052200342ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b720bef0902037f037e230041f0006b22052400200442ffffffffffffffffff00832108024002402001427f7c2209427f51200242ffffffffffffffffff0083220a2009200154ad7c427f7c220942ffffffffffffbfffff0056200942ffffffffffffbfffff00511b4504402003427f7c2209427f5220082009200354ad7c427f7c220942ffffffffffffbfffff0054200942ffffffffffffbfffff00511b0d010b200150200a42808080808080c0ffff0054200a42808080808080c0ffff00511b45044020024280808080808020842104200121030c020b200350200842808080808080c0ffff0054200842808080808080c0ffff00511b450440200442808080808080208421040c020b2001200a42808080808080c0ffff00858450044042808080808080e0ffff00200220012003852002200485428080808080808080807f85845022061b21044200200120061b21030c020b2003200842808080808080c0ffff008584500d012001200a8450044020032008844200520d0220012003832103200220048321040c020b200320088450450d0020012103200221040c010b20052003200120032001562008200a562008200a511b22061b37036020052004200220061b220842ffffffffffff3f8337036820052002200420061b220242ffffffffffff3f83220437035820052001200320061b22013703502002423088a741ffff017121072008423088a741ffff01712206450440200541e0006a107121060b2007450440200541d0006a1071210720052903582104200529035021010b200520014203862203370350200520052903602209420386220a370360200520052903684203862009423d8884428080808080808004842209370368200520044203862001423d888442808080808080800484220437035820022008852101200620076b220704402005027e200741ff004d0440200541306a2003200420071070200541406b2003200441800120076b106f2005200541386a290300220437035820052903302005290340200541c8006a29030084420052ad840c010b420021042005420037035842010b22033703500b02402001427f5704402005200a20037d22013703602005200920047d200a200354ad7d2203370368200120038450044042002103420021040c030b200342ffffffffffffff03560d01200541206a2001200320012003107241746a2207106f2005200541286a2903002203370368200520052903202201370360200620076b21060c010b20052003200a7c220137036020052001200354ad200420097c7c2204370368200442808080808080800883500440200421030c010b200520044201882203370368200520014201832004423f86200142018884842201370360200641016a21060b2008428080808080808080807f832104200641ffff014e0440200442808080808080c0ffff00842104420021030c010b410021070240200641004a0440200621070c010b200520012003410120066b1070200541106a20012003200641ff006a106f2005200541086a2903002203370368200520052903002005290310200541186a29030084420052ad8422013703600b200342038842ffffffffffff3f832004842007ad423086842003423d8620014203888422042001a7410771220641044bad7c2203200454ad7c2003420183420020064104461b220120037c2203200154ad7c21040b2000200337030020002004370308200541f0006a24000b4401017f230041106b2205240020052001200220032004428080808080808080807f85105c200529030021012000200529030837030820002001370300200541106a24000b6602027f017e03402000428080808010544504402001417f6a220120002000420a80220442767e7ca74130723a0000200421000c010b0b2000a721020340200204402001417f6a220120022002410a6e220341766c6a4130723a0000200321020c010b0b20010b850101027f230041106b22032400027f41002001423088a741ffff0171220241ffff00490d001a41808080807841ffffffff0720014200531b20024181807f6a41204f0d001a20032000200142ffffffffffff3f8342808080808080c0008441ef800120026b10704100200328020022026b200220014200531b0b2102200341106a240020020b810102027f017e230041106b220324002000027e200145044042000c010b200320012001411f7522026a2002732202ad4200200267220241d1006a106f200341086a29030042808080808080c00085419e800120026bad4230867c200141808080807871ad42208684210420032903000b37030020002004370308200341106a24000b6d01037f230041106b22022400024020014200530d002001423088a741ffff0171220441ffff00490d00417f210320044181807f6a411f4b0d0020022000200142ffffffffffff3f8342808080808080c0008441ef800120046b1070200228020021030b200241106a240020030b6902017f017e230041106b220224002000027e200145044042000c010b20022001ad420041f000200167411f7322016b106f200241086a29030042808080808080c00085200141ffff006aad4230867c210320022903000b37030020002003370308200241106a24000b830102027f027e230041106b220224002001bd22044280808080088321052000027e200442ffffffff078322045004404200210442000c010b2002200442002004a7672203413c6a106f200241086a29030042808080808080c000854181f80020036bad42308684210420022903000b37030020002004200584370308200241106a24000bce0201037f230041b0026b220124002001200036020c200120003602ac0220014180026a4100412810511a200120012802ac023602a8024100200141a8026a200141e0006a20014180026a105641004e044041f4212802001a41a821280200210241f02128020041004c044041a8212002415f713602000b027f0240024041d82128020045044041d82141d00036020041c421410036020041b821420037030041d421280200210341d421200141106a3602000c010b41b8212802000d010b417f41a82110520d011a0b41a821200141a8026a200141e0006a20014180026a10560b2100200241207121022003047f41a8214100410041cc212802001104001a41d821410036020041d421200336020041c421410036020041b821410036020041bc21280200210341bc21410036020041000520000b1a41a82141a8212802002002723602000b200141b0026a24000b3501017f230041106b220041f0a20436020c41dc22200028020c41076a417871220036020041e022200036020041e4223f003602000b10002002044020002001200210461a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001068200010486a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b3601017f2000280208200149044020011022200028020020002802041046210220002001360208200020023602000b200020013602040bb50101027f20004504404100210041c022280200044041c022280200106b21000b41b822280200044041b822280200106b20007221000b41bc22410136020041bc22410036020020000f0b200028024c1a02402000280214200028021c460d0020004100410020002802241104001a20002802140d00417f0f0b20002802042201200028020822024704402000200120026bac41012000280228110f001a0b2000410036021c200042003703102000420037020441000b040041000b2901017f200028021c2203200028021420036b1000200120021000200028021420026a200028021c6b0b0400427f0b5001017e0240200341c0007104402001200341406aad862102420021010c010b2003450d0020022003ad220486200141c00020036bad88842102200120048621010b20002001370300200020023703080b6001017e0240027e200341c0007104402002200341406aad8821014200210242000c010b2003450d01200241c00020036bad8620012003ad2204888421012002200488210242000b2104200120048421010b20002001370300200020023703080b5402037f027e230041106b22012400200120002903002204200041086a22022903002205200420051072220341716a106f2002200141086a29030037030020002001290300370300200141106a2400411020036b0b1701017f2000200120015022021b792002410674ad7ca70b6102037f027e230041106b22012400200120002903002205200041086a220329030022042005200420045022021b792002410674ad7ca7220241716a106f200020012903003703002003200141086a290300370300200141106a2400411020026b0bdb0102017f027e4101210402402000420052200142ffffffffffffffffff0083220542808080808080c0ffff0056200542808080808080c0ffff00511b0d002002420052200342ffffffffffffffffff0083220642808080808080c0ffff0056200642808080808080c0ffff00511b0d00200020028420052006848450044041000f0b20012003834200590440417f21042000200254200120035320012003511b0d0120002002852001200385844200520f0b417f21042000200256200120035520012003511b0d00200020028520012003858442005221040b20040b0bcc1813004180080ba1152573090a00636f756e7465723a002000737465703a00667261676d656e743a006c696e650066696c65002f686f6d652f706c61746f6e2f2e6a656e6b696e732f776f726b73706163652f636f6e7472616374735f746573745f616c6179612f63617365732f436f6e7472616374734175746f54657374732f7372632f746573742f7265736f75726365732f636f6e7472616374732f7761736d2f73746f726167652f536f6c53696d756c6174696f6e2e6370700066756e6300616374696f6e0073636f70653a00417373657274696f6e206661696c65643a006c656e677468203d3d2033320066756e633a00636865636b006c696e653a0066696c653a00676574207374617465206c656e6774683a006578636570743a33320076616c75655b695d203d3d20657863657074006765742076616c756520706f733a0076616c75653a006578636570743a0076616c75655b695d203d3d2030006578636570743a3000667261676d656e7400333220252073746570203d3d203000696e6974007374657020697320696c6c6567616c3a0073746570202a20667261676d656e74203c20333200667261676d656e7420697320696c6c6567616c007374657000696e76616c6964206d6574686f640a00546865206e756d626572206f66206d6574686f6420706172616d657465727320646f6573206e6f74206d617463680a006465627567006e6f206d6574686f6420746f2063616c6c0a006c697374537461636b206973206e6f7420656d707479006261642063617374006d5f64617461002f7573722f6c6f63616c2f62696e2f2e2e2f706c61746f6e2e6364742f696e636c7564652f706c61746f6e2f766563746f725f7265662e68006f70657261746f725b5d005f69203c206d5f636f756e740000000000000000f03f000000000000244000000000000059400000000000408f40000000000088c34000000000006af8400000000080842e4100000000d01263410000000084d797410000000065cdcd41542122190d010203114b1c0c10040b1d121e27686e6f7071622005060f1314151a08160728241718090a0e1b1f252383827d262a2b3c3d3e3f43474a4d58595a5b5c5d5e5f60616364656667696a6b6c727374797a7b7c480000000000000000496c6c6567616c20627974652073657175656e636500446f6d61696e206572726f7200526573756c74206e6f7420726570726573656e7461626c65004e6f74206120747479005065726d697373696f6e2064656e696564004f7065726174696f6e206e6f74207065726d6974746564004e6f20737563682066696c65206f72206469726563746f7279004e6f20737563682070726f636573730046696c65206578697374730056616c756520746f6f206c6172676520666f7220646174612074797065004e6f207370616365206c656674206f6e20646576696365004f7574206f66206d656d6f7279005265736f75726365206275737900496e7465727275707465642073797374656d2063616c6c005265736f757263652074656d706f726172696c7920756e617661696c61626c6500496e76616c6964207365656b0043726f73732d646576696365206c696e6b00526561642d6f6e6c792066696c652073797374656d004469726563746f7279206e6f7420656d70747900436f6e6e656374696f6e2072657365742062792070656572004f7065726174696f6e2074696d6564206f757400436f6e6e656374696f6e207265667573656400486f737420697320646f776e00486f737420697320756e726561636861626c65004164647265737320696e207573650042726f6b656e207069706500492f4f206572726f72004e6f207375636820646576696365206f72206164647265737300426c6f636b20646576696365207265717569726564004e6f207375636820646576696365004e6f742061206469726563746f72790049732061206469726563746f727900546578742066696c652062757379004578656320666f726d6174206572726f7200496e76616c696420617267756d656e7400417267756d656e74206c69737420746f6f206c6f6e670053796d626f6c6963206c696e6b206c6f6f700046696c656e616d6520746f6f206c6f6e6700546f6f206d616e79206f70656e2066696c657320696e2073797374656d004e6f2066696c652064657363726970746f727320617661696c61626c65004261642066696c652064657363726970746f72004e6f206368696c642070726f636573730042616420616464726573730046696c6520746f6f206c6172676500546f6f206d616e79206c696e6b73004e6f206c6f636b7320617661696c61626c65005265736f7572636520646561646c6f636b20776f756c64206f63637572005374617465206e6f74207265636f76657261626c650050726576696f7573206f776e65722064696564004f7065726174696f6e2063616e63656c65640046756e6374696f6e206e6f7420696d706c656d656e746564004e6f206d657373616765206f6620646573697265642074797065004964656e7469666965722072656d6f76656400446576696365206e6f7420612073747265616d004e6f206461746120617661696c61626c65004465766963652074696d656f7574004f7574206f662073747265616d73207265736f7572636573004c696e6b20686173206265656e20736576657265640050726f746f636f6c206572726f7200426164206d6573736167650046696c652064657363726970746f7220696e20626164207374617465004e6f74206120736f636b65740044657374696e6174696f6e2061646472657373207265717569726564004d65737361676520746f6f206c617267650050726f746f636f6c2077726f6e67207479706520666f7220736f636b65740050726f746f636f6c206e6f7420617661696c61626c650050726f746f636f6c206e6f7420737570706f7274656400536f636b65742074797065206e6f7420737570706f72746564004e6f7420737570706f727465640050726f746f636f6c2066616d696c79206e6f7420737570706f7274656400416464726573732066616d696c79206e6f7420737570706f727465642062792070726f746f636f6c0041646472657373206e6f7420617661696c61626c65004e6574776f726b20697320646f776e004e6574776f726b20756e726561636861626c6500436f6e6e656374696f6e207265736574206279206e6574776f726b00436f6e6e656374696f6e2061626f72746564004e6f2062756666657220737061636520617661696c61626c6500536f636b657420697320636f6e6e656374656400536f636b6574206e6f7420636f6e6e65637465640043616e6e6f742073656e6420616674657220736f636b65742073687574646f776e004f7065726174696f6e20616c726561647920696e2070726f6772657373004f7065726174696f6e20696e2070726f6772657373005374616c652066696c652068616e646c650052656d6f746520492f4f206572726f720051756f7461206578636565646564004e6f206d656469756d20666f756e640057726f6e67206d656469756d2074797065004d756c7469686f7020617474656d70746564004e6f206572726f7220696e666f726d6174696f6e00000019000a00191919000000000500000000000009000000000b00000000000000001900110a191919030a0700011b090b18000009060b00000b0006190000001919190041b11d0b210e000000000000000019000a0d191919000d00000200090e00000009000e00000e0041eb1d0b010c0041f71d0b1513000000001300000000090c00000000000c00000c0041a51e0b01100041b11e0b150f000000040f0000000009100000000000100000100041df1e0b01120041eb1e0b1e11000000001100000000091200000000001200001200001a0000001a1a1a0041a21f0b0e1a0000001a1a1a000000000000090041d31f0b01140041df1f0b1517000000001700000000091400000000001400001400418d200b0116004199200b8e011500000000150000000009160000000000160000160000303132333435363738394142434445462d2b2020203058307800286e756c6c29002d30582b30582030582d30782b307820307800696e6600494e46006e616e004e414e002e00256400257500256c7500256c6c7500417373657274696f6e206661696c65643a202573202825733a2025733a202564290a0041a8210b01050041b4210b01050041cc210b0a060000000700000058110041e4210b01020041f4210b08ffffffffffffffff0041b8220b02a810"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ACTION = "action"; - - public static final String FUNC_DEBUG = "debug"; - - public static final String FUNC_GETCOUNTER = "getCounter"; - - public static final String FUNC_GETSTEP = "getStep"; - - public static final String FUNC_GETFRAGMENT = "getFragment"; - - protected SolSimulation(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SolSimulation(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId, Uint32 step, Uint32 fragment) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(step,fragment)); - return deployRemoteCall(SolSimulation.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId, Uint32 step, Uint32 fragment) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(step,fragment)); - return deployRemoteCall(SolSimulation.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint32 step, Uint32 fragment) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(step,fragment)); - return deployRemoteCall(SolSimulation.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId, Uint32 step, Uint32 fragment) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList(step,fragment)); - return deployRemoteCall(SolSimulation.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall action() { - final WasmFunction function = new WasmFunction(FUNC_ACTION, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall action(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ACTION, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall debug() { - final WasmFunction function = new WasmFunction(FUNC_DEBUG, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall debug(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DEBUG, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getCounter() { - final WasmFunction function = new WasmFunction(FUNC_GETCOUNTER, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall getStep() { - final WasmFunction function = new WasmFunction(FUNC_GETSTEP, Arrays.asList(), Uint32.class); - return executeRemoteCall(function, Uint32.class); - } - - public RemoteCall getFragment() { - final WasmFunction function = new WasmFunction(FUNC_GETFRAGMENT, Arrays.asList(), Uint32.class); - return executeRemoteCall(function, Uint32.class); - } - - public static SolSimulation load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SolSimulation(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SolSimulation load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SolSimulation(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SpecialFunctionsA.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SpecialFunctionsA.java deleted file mode 100644 index f1f59c99de..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SpecialFunctionsA.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class SpecialFunctionsA extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001530f60017f017f60000060017f0060027f7f006000017e60037f7f7f0060037f7e7e0060037e7e7f006000017f60027f7f017f60037f7f7f017f60047f7f7f7f017f60037f7e7e017f60027e7e017f60017f017e02e2010a03656e7610706c61746f6e5f74696d657374616d70000403656e7613706c61746f6e5f626c6f636b5f6e756d626572000403656e760c706c61746f6e5f70616e6963000103656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000503656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000703656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000803656e7610706c61746f6e5f6765745f696e707574000203656e760d706c61746f6e5f72657475726e00030317160101000b030902000e02000602030c01030a010000030405017001010105030100020608017f0141c088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000a0f5f5f66756e63735f6f6e5f65786974001906696e766f6b65000b0af521160400101c0be60702087f037e230041d0006b22012400101c10072200100c220210080240200120022000411c100d2205280208450440200541146a2802002100200528021021020c010b200141186a2005100e20052001280218200128021c100f36020c200141306a2005100e410021002005027f410020012802302203450d001a410020012802342206200528020c2204490d001a200620042004417f461b210020030b2202360210200541146a2000360200200541003602080b200141306a200220004114100d22001010024002402000280204450d00200010100240200028020022032c0000220241004e044020020d010c020b200241807f460d00200241ff0171220441b7014d0440200028020441014d04401002200028020021030b20032d00010d010c020b200441bf014b0d012000280204200241ff017141ca7e6a22024d04401002200028020021030b200220036a2d0000450d010b2000280204450d0020032d000041c001490d010b10020b200010112206200028020422034b04401002200028020421030b20002802002107024002400240200304404100210420072c00002200417f4a0d01027f200041ff0171220441bf014d04404100200041ff017141b801490d011a200441c97e6a0c010b4100200041ff017141f801490d001a200441897e6a0b41016a21040c010b4101210420070d00410021000c010b41002100200420066a20034b0d0020032006490d004100210220032004490d01200420076a2102200320046b20062006417f461b22004109490d0110020c010b410021020b0340200004402000417f6a210020023100002008420886842108200241016a21020c010b0b024002402008500d0041800810122008510440200510130c020b418508101220085104402005101310012108200141186a10142100200141c8006a4100360200200141406b4200370300200141386a420037030020014200370330200141306a20084200101520012802302102200141306a41047210162000200210172000200842001018220028020c200041106a28020047044010020b200028020020002802041009200028020c2202450d02200020023602100c020b41940810122008520d002005101310002108200141186a10142100200141c8006a4100360200200141406b4200370300200141386a420037030020014200370330200141306a2008423f872209200842018685220a20094201862008423f88842009852208101520012802302102200141306a41047210162000200210172000200a20081018220028020c200041106a28020047044010020b200028020020002802041009200028020c2202450d01200020023602100c010b10020b1019200141d0006a24000b9b0101047f230041106b220124002001200036020c2000047f41b808200041086a2202411076220041b8082802006a220336020041b40841b408280200220420026a41076a417871220236020002400240200341107420024d044041b808200341016a360200200041016a21000c010b2000450d010b200040000d0010020b20042001410c6a4104101b41086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000101d20024f0d002003410471044010020c010b200042003702000b02402003411071450d002000101d20024d0d0020034104710440100220000f0b200042003702000b20000b7201047f20011011220220012802044b044010020b2001101e21032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114100d101d2100200241206a240020000b4101017f200028020445044010020b0240200028020022012d0000418101470d00200028020441014d047f100220002802000520010b2c00014100480d0010020b0bff0201037f200028020445044041000f0b2000101041012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100220002802040520010b4102490d0020002802002d00010d0010020b200241054f044010020b20002802002d000145044010020b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100220002802040520010b4102490d0020002802002d00010d0010020b200241054f044010020b20002802002d000145044010020b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10020b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000100e41012103200128020c2100034020000440200141002001280208220220022000100f22046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10020b200141106a24000b2900200041003602082000420037020020004100101a200041146a41003602002000420037020c20000bbb0101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b024020034138490d002003210403402004450d01200341016a2103200441087621040c000b000b200341016a21040b200041186a28020022030440200041086a2802002003200041146a2802006a417f6a220341087641fcffff07716a280200200341ff07714102746a21000b2000200028020020046a3602000b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b13002000280208200149044020002001101a0b0b9c0101037f2000200220011005200028020422036a101f20022001200320002802006a10060340024020002802102203200028020c460d00200341786a2802004504401002200028021021030b200341786a22042004280200417f6a220536020020050d002000200436021020002003417c6a2802002203200028020420036b220410036a101f200320002802006a22032004200310040c010b0b20000b880101037f41a408410136020041a8082802002100034020000440034041ac0841ac082802002201417f6a2202360200200141014845044041a4084100360200200020024102746a22004184016a280200200041046a28020011020041a408410136020041a80828020021000c010b0b41ac08412036020041a808200028020022003602000c010b0b0b2f01017f200028020820014904402001100c20002802002000280204101b210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3501017f230041106b220041c0880436020c41b008200028020c41076a417871220036020041b408200036020041b8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000101e200010116a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b3601017f200028020820014904402001100c20002802002000280204101b210220002001360208200020023602000b200020013602040b0b2701004180080b20696e697400676574426c6f636b4e756d6265720067657454696d657374616d70"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETBLOCKNUMBER = "getBlockNumber"; - - public static final String FUNC_GETTIMESTAMP = "getTimestamp"; - - protected SpecialFunctionsA(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SpecialFunctionsA(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SpecialFunctionsA.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SpecialFunctionsA.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SpecialFunctionsA.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SpecialFunctionsA.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall getBlockNumber() { - final WasmFunction function = new WasmFunction(FUNC_GETBLOCKNUMBER, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall getTimestamp() { - final WasmFunction function = new WasmFunction(FUNC_GETTIMESTAMP, Arrays.asList(), Int64.class); - return executeRemoteCall(function, Int64.class); - } - - public static SpecialFunctionsA load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SpecialFunctionsA(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SpecialFunctionsA load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SpecialFunctionsA(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SpecialFunctionsB.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SpecialFunctionsB.java deleted file mode 100644 index 793e20e1ff..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/SpecialFunctionsB.java +++ /dev/null @@ -1,85 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class SpecialFunctionsB extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000014c0e60017f017f60017f0060027f7f0060000060017f017e60037f7f7f0060037f7e7e0060027f7f017f6000017e60037e7e7f006000017f60037f7f7f017f60047f7f7f7f017f60027e7e017f029c020d03656e760c706c61746f6e5f70616e6963000303656e7610706c61746f6e5f6761735f7072696365000003656e760a706c61746f6e5f676173000803656e7610706c61746f6e5f6761735f6c696d6974000803656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000703656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000903656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000a03656e7610706c61746f6e5f6765745f696e707574000103656e760d706c61746f6e5f72657475726e0002032120030404010005060603000c020701000401020007000102020103020b030000060405017001030305030100020608017f0141e088040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002606696e766f6b6500150908010041010b020e0f0a9a2e20040010290b040010020b040010030be90502097f047e230041306b22052400200541206a2102200541206a10012101034020010440200b420886200a42388884210b2001417f6a21012002310000200a42088684210a200241016a21020c010b0b20004200370200200041086a41003602004100210103402001410c470440200020016a4100360200200141046a21010c010b0b0240027f20002d00002201410171450440200141017622024128200241284b1b41106a41f001712101410a0c010b200028020422024128200241284b1b41106a41707122012000280200417e712203460d012003417f6a0b210641002001417f6a20064d2001101122031b0d0020032000280208200041016a20002d0000220641017122041b2000280204200641017620041b41016a10122000200336020820002002360204200020014101723602000b200041016a2107200541186a21080340200541106a200a200b101320052005290310220c2008290300220d10142005290300200a7ca74180086a2d00002106024002400240027f20002d000022034101712204450440410a210220034101760c010b20002802002203417e71417f6a210220002802040b220120024604402000280208200720034101711b2109416f2104200241e6ffffff074d0440410b20024101742203200241016a220420042003491b220341106a4170712003410b491b21040b20041011220320092002101220002004410172360200200020033602080c010b2004450d01200028020821030b2000200141016a3602040c010b2000200141017441026a3a0000200721030b200120036a220141003a0001200120063a0000200a4209562101200b4200522102200b502103200c210a200d210b2001200220031b0d000b0240200028020420002d00002201410176200141017122011b2202450d0020022000280208200720011b22006a417f6a21010340200020014f0d0120002d00002102200020012d00003a0000200120023a00002001417f6a2101200041016a21000c000b000b200541306a24000b0b002000410120001b10160b10002002044020002001200210281a0b0b3701017f230041106b22032400200320012002102c200329030021012000200341086a29030037030820002001370300200341106a24000b7701017e20002001427f7e200242767e7c2001422088220242ffffffff0f7e7c200242f6ffffff0f7e200142ffffffff0f83220142f6ffffff0f7e22034220887c22024220887c200142ffffffff0f7e200242ffffffff0f837c22024220887c3703082000200342ffffffff0f832002422086843703000b930802087f017e23004180016b220324001029100a220010162201100b0240200341086a20012000411c10172202280208450440200241146a2802002100200228021021010c010b200341386a2002101820022003280238200328023c101936020c200341e0006a20021018410021002002027f410020032802602204450d001a410020032802642206200228020c2205490d001a200620052005417f461b210020040b2201360210200241146a2000360200200241003602080b200341e0006a20012000411410172200101a024002402000280204450d002000101a0240200028020022042c0000220141004e044020010d010c020b200141807f460d00200141ff0171220541b7014d0440200028020441014d04401000200028020021040b20042d00010d010c020b200541bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021040b200120046a2d0000450d010b2000280204450d0020042d000041c001490d010b10000b2000101b2206200028020422044b04401000200028020421040b20002802002107024002400240200404404100210520072c00002200417f4a0d01027f200041ff0171220541bf014d04404100200041ff017141b801490d011a200541c97e6a0c010b4100200041ff017141f801490d001a200541897e6a0b41016a21050c010b4101210520070d00410021000c010b41002100200520066a20044b0d0020042006490d004100210120042005490d01200520076a2101200420056b20062006417f461b22004109490d0110000c010b410021010b0340200004402000417f6a210020013100002008420886842108200141016a21010c010b0b024002402008500d00418b08101c20085104402002101d0c020b419008101c200851044020024101101e0c020b419d08101c200851044020024102101e0c020b41af08101c2008520d002002101d200341286a1010200341386a101f2100200341f8006a4100360200200341f0006a4200370300200341e8006a42003703002003420037036041012101024002400240200341d0006a200341286a1020220428020420032d00502202410176200241017122051b220241014d0440200241016b0d032004280208200441016a20051b2c0000417f4c0d010c030b200241374b0d010b200241016a21010c010b2002102120026a41016a21010b20032001360260200341e0006a41047210222000200110232000200341e0006a200341286a10202201280208200141016a20032d0060220241017122041b22052001280204200241017620041b22011006200028020422026a102420052001200220002802006a100720001025200028020c200041106a28020047044010000b20002802002000280204100c200028020c2201450d01200020013602100c010b10000b102620034180016a24000b9b0101047f230041106b220124002001200036020c2000047f41d808200041086a2202411076220041d8082802006a220336020041d40841d408280200220420026a41076a417871220236020002400240200341107420024d044041d808200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102841086a0541000b2100200141106a240020000b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000102a20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000102a20024d0d0020034104710440100020000f0b200042003702000b20000b7201047f2001101b220220012802044b044010000b2001102b21032000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012003490d00410020012002490d011a200320056a2104200120036b20022002417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a2000200141141017102a2100200241206a240020000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bff0201037f200028020445044041000f0b2000101a41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b8b0101047f230041106b22012400024002402000280204450d0020002802002d000041c001490d00200141086a2000101841012103200128020c2100034020000440200141002001280208220220022000101922046a20024520002004497222021b3602084100200020046b20021b21002003417f6a21030c010b0b2003450d010b10000b200141106a24000b920202027f037e230041406a220324002000101d41012100200320011104002104200341086a101f210241002101200341386a4100360200200341306a4200370300200341286a42003703002003420037032020044280015a044020042105034020052006845045044020064238862005420888842105200141016a2101200642088821060c010b0b200141384f047f2001102120016a0520010b41016a21000b20032000360220200341206a41047210222002200010232002420020041008200228020422016a102442002004200120022802006a100920021025200228020c200241106a28020047044010000b20022802002002280204100c200228020c22010440200220013602100b200341406b24000b29002000410036020820004200370200200041001027200041146a41003602002000420037020c20000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101121022000200136020420002004410172360200200020023602080b2002200320011012200120026a41003a000020000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b860201067f200028020422032000280210220141087641fcffff07716a2102027f200320002802082204460440200041146a210641000c010b2003200028021420016a220541087641fcffff07716a280200200541ff07714102746a2105200041146a21062002280200200141ff07714102746a0b21010340024020012005460440200641003602000340200420036b41027522014103490d022000200341046a22033602040c000b000b200141046a220120022802006b418020470d0120022802042101200241046a21020c010b0b2001417f6a220241014d04402000418004418008200241016b1b3602100b03402003200447044020002004417c6a22043602080c010b0b0b1300200028020820014904402000200110270b0b3601017f2000280208200149044020011016200028020020002802041028210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210046a1024200120002802006a22012002200110050c010b0b0b880101037f41c408410136020041c8082802002100034020000440034041cc0841cc082802002201417f6a2202360200200141014845044041c4084100360200200020024102746a22004184016a280200200041046a28020011010041c408410136020041c80828020021000c010b0b41cc08412036020041c808200028020022003602000c010b0b0b2f01017f2000280208200149044020011016200028020020002802041028210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3501017f230041106b220041e0880436020c41d008200028020c41076a417871220036020041d408200036020041d8083f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000102b2000101b6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0bbe0202027f047e2000027e2002500440420021022001420a800c010b0240027e200141fd00200279a76b220341c000460d001a2003413f4d0440200241c00020036bad22058620012003ad2207888421062002200788210820012005862107420021050c020b200241800120036bad2205862001200341406aad22068884210720022006882106200120058621050c010b21072002210641c00021030b03402003044020084201862006423f888422022002427f8542007c20064201862007423f88842206427f852202420a7c200254ad7c423f8722024200837d20062002420a83220154ad7d2108200620017d210620074201862005423f888421072003417f6a21032004ad20054201868421052002a741017121040c010b0b20074201862005423f888421022004ad2005420186427e83840b370300200020023703080b0b4701004180080b403031323334353637383900696e697400676574506c61744f4e47617300676574506c61744f4e4761734c696d697400676574506c61744f4e4761735072696365"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETPLATONGAS = "getPlatONGas"; - - public static final String FUNC_GETPLATONGASLIMIT = "getPlatONGasLimit"; - - public static final String FUNC_GETPLATONGASPRICE = "getPlatONGasPrice"; - - protected SpecialFunctionsB(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected SpecialFunctionsB(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SpecialFunctionsB.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SpecialFunctionsB.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SpecialFunctionsB.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(SpecialFunctionsB.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall getPlatONGas() { - final WasmFunction function = new WasmFunction(FUNC_GETPLATONGAS, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall getPlatONGasLimit() { - final WasmFunction function = new WasmFunction(FUNC_GETPLATONGASLIMIT, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall getPlatONGasPrice() { - final WasmFunction function = new WasmFunction(FUNC_GETPLATONGASPRICE, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static SpecialFunctionsB load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new SpecialFunctionsB(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static SpecialFunctionsB load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new SpecialFunctionsB(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ThreeInherit.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ThreeInherit.java deleted file mode 100644 index 29002e3e8c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/ThreeInherit.java +++ /dev/null @@ -1,126 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class ThreeInherit extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f0060017f017f60027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f017f60047f7f7f7f0060027f7e0060037e7e7f006000017f60027f7e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000034e4d0600030307000104030402000102060205040102000e01020101020200020901000c000607020905030504000103000300050300000301010000020500000001020005070105040006040202080405017001030305030100020608017f0141a089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003006696e766f6b65001b0908010041010b0214160ae8664d040010550b8d0101047f230041206b2202240002402000411c6a2802002203200041206a220428020047044020032001100f1a2000200028021c41d4006a36021c0c010b200241086a200041186a2205200320002802186b41d4006d220041016a101020002004101122002802082001100f1a2000200028020841d4006a360208200520001012200010130b200241206a24000b5b002000200110151a2000410c6a2001410c6a10151a200041186a200141186a10151a200041246a200141246a10151a200041306a200141306a10151a2000413c6a2001413c6a10151a200041c8006a200141c8006a10151a20000b3001017f2001200028020820002802006b41d4006d2200410174220220022001491b41c3e1b018200041e1b0980c491b0b4e01017f2000410036020c200041106a2003360200200104402001101721040b2000200436020020002004200241d4006c6a220236020820002004200141d4006c6a36020c2000200236020420000b930101027f200028020421022000280200210303402002200346450440200128020441ac7f6a200241ac7f6a220210182001200128020441ac7f6a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2c01027f20002802082101200028020421020340200120024704402000200141ac7f6a22013602080c010b0b0b130020002001280218200241d4006c6a10151a0ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101a21022000200136020420002004410172360200200020023602080b2002200320011056200120026a41003a000020000b170020002001280218200241d4006c6a41c8006a10151a0b0a00200041d4006c101a0beb010020002001290200370200200041086a200141086a28020036020020011019200041146a200141146a2802003602002000200129020c37020c2001410c6a1019200041206a200141206a28020036020020002001290218370218200141186a10192000412c6a2001412c6a28020036020020002001290224370224200141246a1019200041386a200141386a28020036020020002001290230370230200141306a1019200041c4006a200141c4006a2802003602002000200129023c37023c2001413c6a1019200041d0006a200141d0006a28020036020020002001290248370248200141c8006a10190b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b0b002000410120001b101c0ba60402057f017e230041f0016b22002400105510072201101c2203100820004198016a200020032001101d22024100101e20004198016a101f0240024020004198016a1020450d00200028029c01450d002000280298012d000041c001490d010b10000b200041406b20004198016a10212000280244220141094f044010000b200028024021030340200104402001417f6a210120033100002005420886842105200341016a21030c010b0b024002402005500d00418008102220055104402002102320004198016a102410250c020b41850810222005510440200041406b1026200041406b1027210120021028410247044010000b20004198016a20024101101e20004198016a20011029200041186a10242103200041186a20004198016a2001100f100e200310250c020b419f08102220055104402002102320004198016a10242103200041b4016a280200210220002802b0012104200041186a102a2101200041d8006a4100360200200041d0006a4200370300200041c8006a420037030020004200370340200041406b200220046b41d4006d41ff0171ad2205102b20002802402102200041406b410472102c20012002102d20012005102e220128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310250c020b41be081022200551044020024101102f0c020b41dd0810222005520d0020024102102f0c010b10000b1030200041f0016a24000b9b0101047f230041106b220124002001200036020c2000047f419009200041086a220241107622004190092802006a2203360200418c09418c09280200220420026a41076a417871220236020002400240200341107420024d0440419009200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103e41086a0541000b2100200141106a240020000b0c00200020012002411c10310bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104520012003280208200328020c103536020c200320011045410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410311a200341106a24000f0b20032001104541002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103510592001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000101f200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110322204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001028410147044010000b0bf206010c7f230041e0016b2204240020004200370218200042d1b888dfd1eea8d5103703102000410036020820004200370200200041206a4100360200200441206a102a220720002903101033200728020c200741106a28020047044010000b200041186a21052000411c6a21090240200728020022022007280204220810092206450d002006101a21030340200120036a41003a00002006200141016a2201470d000b2002200820032001100a417f460440410021010c010b02400240200441086a200341016a200120036a2003417f736a101d2203280204450d0020032802002d000041c001490d002003102821012000280220200028021822026b41d4006d20014904402005200441386a2001200028021c20026b41d4006d200041206a101122011012200110130b200441b8016a2003410110342101200441a8016a2003410010342108200041206a210b20012802042103034020082802042003464100200128020822022008280208461b0d0220044190016a20032002411c1031200441386a1027220310290240200028021c220220002802204904402002200310182009200928020041d4006a3602000c010b200441c8016a2005200220052802006b41d4006d220241016a10102002200b1011210220042802d00120031018200420042802d00141d4006a3602d001200520021012200210130b20012001280204220320012802086a410020031b220336020420012802002202044020012002360208200320021035210a2001027f2001280204220c4504404100210241000c010b41002102410020012802082203200a490d001a2003200a200a417f461b2102200c0b2203ad2002ad42208684370204200141002001280200220a20026b22022002200a4b1b3602000c0105200141003602080c010b000b000b10000b200621010b200728020c22030440200720033602100b024020010d0020002802042206200028020022036b41d4006d22022000280220200028021822016b41d4006d4d04402002200928020020016b41d4006d22084b044020032003200841d4006c6a2202200110361a20022006200910370c020b2005200320062001103610380c010b200104402005103920004100360220200042003702180b20002005200210102202101722013602182000200136021c20002001200241d4006c6a36022020032006200910370b200441e0016a240020000b890901137f230041b0026b22012400200141186a102a2106200141a8026a22024100360200200141a0026a2205420037030020014198026a22034200370300200142003703900220014190026a2000290310102b200128029002210720014190026a410472102c20062007102d200620002903101033200628020c200641106a28020047044010000b200628020421092006280200210a2001102a21042002410036020020054200370300200342003703002001420037039002027f20002802182000411c6a280200460440200141013602900241010c010b20014190026a4100103a2107200028021c200028021822026b2105037f2005047f20074100103a22032002103b2003200141d0016a2002413c6a1015103c20014190016a200241c8006a1015103c4101103a1a200541ac7f6a2105200241d4006a21020c010520074101103a1a2001280290020b0b0b210320014190026a410472102c4101101a220241fe013a0000200428020c200441106a28020047044010000b200241016a21072004280204220541016a220820042802084b047f20042008103d20042802040520050b20042802006a20024101103e1a2004200428020441016a3602042004200320026b20076a102d2004200028021c20002802186b41d4006d103f210b200028021c200028021822026b2105200141d0006a410472210c20014190016a410472210d200141d0016a410472210e20014190026a410472210f034020050440200b4103103f210320014100360268200142003703602001420037035820014200370350200141d0006a2002103b200141d0006a200141406b2002413c6a22071015103c200141306a200241c8006a22081015103c1a20032001280250102d20034103103f2103200141003602a801200142003703a0012001420037039801200142003703900120014190016a2002104020014190016a20014180016a200241246a22101015103c200141f0006a200241306a22111015103c1a2003200128029001102d20034103103f2103200141003602e801200142003703e001200142003703d801200142003703d001200141d0016a20021041200141d0016a200141c0016a2002410c6a22121015103c200141b0016a200241186a22131015103c1a200320012802d001102d20034101103f2103200141003602a802200142003703a0022001420037039802200142003703900220014190026a20014180026a20021015103c1a2003200128029002102d2003200141f0016a2002101510422103200f102c200320014190026a20121015104220014180026a2013101510422103200e102c200320014190026a201010151042200141d0016a2011101510422103200d102c200320014190026a200710151042200141d0016a2008101510421a200c102c200541ac7f6a2105200241d4006a21020c010b0b0240200428020c2004280210460440200428020021020c010b100020042802002102200428020c2004280210460d0010000b200a200920022004280204100b200428020c22020440200420023602100b200628020c22020440200620023602100b200041186a104320001043200141b0026a24000bc70201027f200041003a0000200041d4006a2202417f6a41003a0000200041003a0002200041003a00012002417d6a41003a00002002417e6a41003a0000200041003a00032002417c6a41003a00002000410020006b41037122016a22024100360200200241d40020016b417c7122016a2200417c6a4100360200024020014109490d002002410036020820024100360204200041786a4100360200200041746a410036020020014119490d002002410036021820024100360214200241003602102002410036020c200041706a41003602002000416c6a4100360200200041686a4100360200200041646a41003602002001200241047141187222016b2100200120026a2101034020004120490d0120014200370300200141186a4200370300200141106a4200370300200141086a4200370300200141206a2101200041606a21000c000b000b0b3300200010442000410c6a1044200041186a1044200041246a1044200041306a10442000413c6a1044200041c8006a104420000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001045200128020c210003402000450d01200141002001280208220320032000103522046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bed0101017f230041e0006b22022400200220004100101e200241186a20024100101e200241306a200241186a4100101e200241c8006a200241306a4100101e200241c8006a20011046200241c8006a200241186a4101101e200241c8006a2001410c6a1046200241c8006a200241186a4102101e200241c8006a200141186a1046200241c8006a20024101101e200241c8006a200141246a1046200241c8006a20024102101e200241c8006a200141306a1046200241c8006a20004101101e200241c8006a2001413c6a1046200241c8006a20004102101e200241c8006a200141c8006a1046200241e0006a24000b2900200041003602082000420037020020004100103d200041146a41003602002000420037020c20000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002104720026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002104821000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001049200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001104a200441106a24000b13002000280208200149044020002001103d0b0b2a01017f2000420020011005200028020422026a104b42002001200220002802006a10062000104c20000bcb0201037f23004180016b2202240020001028410247044010000b200220004101101e2002101f0240024020021020450d002002280204450d0020022802002d000041c001490d010b10000b200241e0006a200210212002280264220041024f044010000b200228026021030340200004402000417f6a210020032d00002104200341016a21030c010b0b200210242103200241286a2002200441ff01712001110400200241386a102a2100200241f8006a4100360200200241f0006a4200370300200241e8006a420037030020024200370360200241e0006a200241d0006a200241286a1015103c210420022802602101200441046a102c20002001102d2000200241e0006a200241286a10151042220028020c200041106a28020047044010000b20002802002000280204100c200028020c22040440200020043602100b2003102520024180016a24000b880101037f41fc084101360200418009280200210003402000044003404184094184092802002201417f6a2202360200200141014845044041fc084100360200200020024102746a22004184016a280200200041046a28020011010041fc08410136020041800928020021000c010b0b4184094120360200418009200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105720024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105720024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101f41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b090020002001102e1a0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104520004100200428020c2201200428020822022001103522032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a200020014114103110572100200241206a240020000b800101037f200120006b210503402003200546450440200220036a2201200020036a220410542001410c6a2004410c6a1054200141186a200441186a1054200141246a200441246a1054200141306a200441306a10542001413c6a2004413c6a1054200141c8006a200441c8006a1054200341d4006a21030c010b0b200220036a0b30000340200020014645044020022802002000100f1a2002200228020041d4006a360200200041d4006a21000c010b0b0b0900200020013602040b0b002000200028020010380bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031048280200210120022003417f6a3602002007104d4180104f044020072000410c6a280200417c6a104a0b200141384f047f2001104720016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110480c020b20000c010b02402007104d0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a104e0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020101a2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a104f220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10502102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021051200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a105222013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10502102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021051200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a104e0c010b20042001410175410120011b2003200510502102418020101a2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104f22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200105021032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031051200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021051052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a105222013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210105021062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061051200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071049200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b4001017f230041206b2202240020004100103a2200200110402000200241106a200141246a1015103c2002200141306a1015103c4101103a1a200241206a24000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104720026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110480c010b20000b2201200128020020036a36020020000b2f01017f200028020820014904402001101c20002802002000280204103e210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374101a0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001103e1a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a104b41004100200120002802006a10022000104c20000b4001017f230041206b2202240020004100103a2200200110412000200241106a2001410c6a1015103c2002200141186a1015103c4101103a1a200241206a24000b2701017f230041106b2202240020004100103a200220011015103c4101103a1a200241106a24000b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a104b20042001200220002802006a10042000104c20000b0e0020002802000440200010390b0b170020004200370200200041086a4100360200200010190b2101017f20011032220220012802044b044010000b2000200120011058200210590bf30201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10440c010b200241186a200010212000103221030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101a21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1019200241206a24000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b3601017f200028020820014904402001101c20002802002000280204103e210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a104b200120002802006a22012002200110020c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104f22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10502103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031051200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110530b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101a21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110530b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103e1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210530b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b2003101a2201200420021056200020023602042000200341017236020020002001360208200120026a41003a00000b0b3501017f230041106b220041a0890436020c418809200028020c41076a4178712200360200418c0920003602004190093f003602000b100020020440200020012002103e1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001058200010326a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b820101004180080b7b696e6974006164645f6772656174655f7375625f6d795f6d657373616765006765745f6772656174655f7375625f6d795f6d6573736167655f73697a65006765745f6772656174655f7375625f6d795f6d6573736167655f68656164006765745f6772656174655f7375625f6d795f6d6573736167655f64657363"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_ADD_GREATE_SUB_MY_MESSAGE = "add_greate_sub_my_message"; - - public static final String FUNC_GET_GREATE_SUB_MY_MESSAGE_SIZE = "get_greate_sub_my_message_size"; - - public static final String FUNC_GET_GREATE_SUB_MY_MESSAGE_HEAD = "get_greate_sub_my_message_head"; - - public static final String FUNC_GET_GREATE_SUB_MY_MESSAGE_DESC = "get_greate_sub_my_message_desc"; - - protected ThreeInherit(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected ThreeInherit(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ThreeInherit.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ThreeInherit.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ThreeInherit.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(ThreeInherit.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall add_greate_sub_my_message(Greate_sub_my_message my_greate_sub_one_message) { - final WasmFunction function = new WasmFunction(FUNC_ADD_GREATE_SUB_MY_MESSAGE, Arrays.asList(my_greate_sub_one_message), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_greate_sub_my_message(Greate_sub_my_message my_greate_sub_one_message, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_GREATE_SUB_MY_MESSAGE, Arrays.asList(my_greate_sub_one_message), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_greate_sub_my_message_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_GREATE_SUB_MY_MESSAGE_SIZE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall get_greate_sub_my_message_head(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_GREATE_SUB_MY_MESSAGE_HEAD, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall get_greate_sub_my_message_desc(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_GREATE_SUB_MY_MESSAGE_DESC, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public static ThreeInherit load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new ThreeInherit(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static ThreeInherit load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new ThreeInherit(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Message { - public String head; - } - - public static class My_message { - public Message baseClass; - - public String body; - - public String end; - } - - public static class Sub_my_message { - public My_message baseClass; - - public String from; - - public String to; - } - - public static class Greate_sub_my_message { - public Sub_my_message baseClass; - - public String level; - - public String desc; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/TweetAccount.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/TweetAccount.java deleted file mode 100644 index 43a2d1f187..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/TweetAccount.java +++ /dev/null @@ -1,151 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class TweetAccount extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001781560027f7f0060017f0060017f017f60037f7f7f017f60027f7f017f60000060037f7f7f0060047f7f7f7f0060037f7e7e0060047f7f7f7f017f60027f7e017f60037f7e7e017f60017f017e60037f7f7e0060037e7e7f006000017f60037f7f7e017f60017e017f60027e7e017f6000017e60027f7f017e02a9031303656e760c706c61746f6e5f70616e6963000503656e760d706c61746f6e5f63616c6c6572000103656e760e706c61746f6e5f61646472657373000103656e760f706c61746f6e5f7472616e73666572000303656e7610706c61746f6e5f74696d657374616d70001303656e760e706c61746f6e5f62616c616e6365000403656e760e706c61746f6e5f64657374726f79000203656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000603656e760e726c705f62797465735f73697a65000403656e7610706c61746f6e5f726c705f6279746573000603656e760d726c705f753132385f73697a65001203656e760f706c61746f6e5f726c705f75313238000e03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000f03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000403656e7610706c61746f6e5f6765745f7374617465000903656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e0000035f5e050101021404000d040000000100000000020206080801010310070101050203060c0c000102020b01000b0102000100110a0005090100030200040203020000000203000002020003040a000400020200030901030605020207000100080405017001050505030100020608017f0141b089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300130f5f5f66756e63735f6f6e5f65786974004606696e766f6b650030090a010041010b04141d29220aca86015e040010690b5501017f230041206b22012400200041386a4200370300200141086a1015200041f0006a200141186a280200360000200041e8006a200141106a290300370000200041e0006a2001290308370000200141206a24000b210020004200370000200041106a4100360000200041086a4200370000200010010b6001037f230041206b22012400200041e0006a2103200141086a101541002100410121020340024020004114470440200141086a20006a2d0000200020036a2d0000460d01410021020b200141206a240020020f0b200041016a21000c000b000b970102027f017e230041106b22022400027e427f20001016450d001a20012d00004101710440427e200128020441a0014b0d011a0b100421042002200041386a2203290300420052ad370308200041186a2200200241086a1018200437030020022003290300420052ad3703082000200241086a101841086a200110192003200329030042017c37030042000b2104200241106a240020040b5501037f230041106b2203240020002003410c6a2001290300102c220428020022024504404130102522022001290300370310200241206a10241a2000200328020c20042002102d0b200341106a2400200241186a0b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210680b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b200310252201200420021026200020023602042000200341017236020020002001360208200120026a41003a00000b0b3b01017f230041106b22032400200320023703082000200141186a2201200341086a101841086a101b1a2001200341086a10181a200341106a24000ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102521022000200136020420002004410172360200200020023602080b2002200320011026200120026a41003a000020000b5301027f230041106b220224002002200141386a2203290300427f7c3703082000200141186a2201200241086a101841086a101b1a20022003290300427f7c3703082001200241086a10181a200241106a24000b3200200041106a200141f0006a280000360000200041086a200141e8006a2900003700002000200141e0006a2900003700000bc00102027f027e230041406a22022400024020001016450d00200241186a101f200241086a200241186a1020200241106a2903002104200229030821052002410036023820024200370330200241306a4120102120022802302200417f6a2103200228023420006b2100034020000440200020036a20053c0000200442388620054208888421052000417f6a2100200442088821040c010b0b200120022802302200200228023420006b10031a2000450d00200220003602340b200241406b24000b210020004200370000200041106a4100360000200041086a4200370000200010020b6202027f027e230041106b22022400200120021005210120022103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102521060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e0440200320062001102b1a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b06002000101f0b920502087f047e230041306b22042400200441206a20011020200441286a290300210a2004290320210b0240027f2000102422002d00002201410171450440200141017622034128200341284b1b41106a41f001712101410a0c010b200028020422034128200341284b1b41106a41707122012000280200417e712202460d012002417f6a0b210641002001417f6a20064d2001102522021b0d0020022000280208200041016a20002d0000220641017122051b2000280204200641017620051b41016a10262000200236020820002003360204200020014101723602000b200041016a2107200441186a21080340200441106a200b200a102720042004290310220c2008290300220d10282004290300200b7ca74180086a2d00002106024002400240027f20002d000022024101712205450440410a210320024101760c010b20002802002202417e71417f6a210320002802040b220120034604402000280208200720024101711b2109416f2105200341e6ffffff074d0440410b20034101742202200341016a220520052002491b220241106a4170712002410b491b21050b20051025220220092003102620002005410172360200200020023602080c010b2005450d01200028020821020b2000200141016a3602040c010b2000200141017441026a3a0000200721020b200120026a220141003a0001200120063a0000200b4209562101200a4200522103200a502102200c210b200d210a2001200320021b0d000b0240200028020420002d00002201410176200141017122011b2203450d0020032000280208200720011b22006a417f6a21010340200020014f0d0120002d00002103200020012d00003a0000200120033a00002001417f6a2101200041016a21000c000b000b200441306a24000b190020004200370200200041086a41003602002000102a20000b0b002000410120001b10310b100020020440200020012002102b1a0b0b3701017f230041106b220324002003200120021070200329030021012000200341086a29030037030820002001370300200341106a24000b7701017e20002001427f7e200242767e7c2001422088220242ffffffff0f7e7c200242f6ffffff0f7e200142ffffffff0f83220142f6ffffff0f7e22034220887c22024220887c200142ffffffff0f7e200242ffffffff0f837c22024220887c3703082000200342ffffffff0f832002422086843703000b1200200010160440200041e0006a10061a0b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b880102027f017e200041046a210302402000280204220004400240034002400240200029031022052002560440200028020022040d012001200036020020000f0b200520025a0d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b200320012802004704402001102e2001280208220128020821020b200141013a000c200241003a000c2002102f0c010b02402004450d0020042d000c0d002004410c6a21030c020b200320012802004604402001102f2001280208220128020821020b200141013a000c200241003a000c2002102e0b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040ba30902057f037e230041a0026b220024001069100d220110312202100e20004180016a200041186a2002200110322201410010330240024020004180016a10342205500d00418b08103520055104402001410110360c020b419008103520055104402001103720004180016a1038220210162103200041306a10392101200041e0006a4100360200200041d8006a4200370300200041d0006a420037030020004200370348200041c8006a2003ad22054200103a210320002802482104200341046a103b20012004103c200120054200103d220128020c200141106a28020047044010000b200128020020012802041012200128020c22030440200120033602100b2002103e0c020b41980810352005510440200041e8006a102421022001103f410247044010000b20004180016a20014101103320004180016a2002104020004180016a10382203200041f8016a2002101b10172105200041306a10392101200041e0006a4100360200200041d8006a4200370300200041d0006a420037030020004200370348200041c8006a2005423f872206200542018685220720064201862005423f88842006852205103a210220002802482104200241046a103b20012004103c200120072005103d220128020c200141106a28020047044010000b200128020020012802041012200128020c22020440200120023602100b2003103e0c020b419e08103520055104402001103f410247044010000b20004180016a20014101103320004180016a10342105200041c8006a20004180016a103822012005101a200041c8006a10412001103e0c020b41a7081035200551044020011037200041c8006a20004180016a10382201101c200041c8006a10412001103e0c020b41b608103520055104402001410210420c020b41c608103520055104402001103720004180016a1038220241386a2903002105200041c8006a1039220120051043103c200120051044220128020c200141106a28020047044010000b200128020020012802041012200128020c22030440200120033602100b2002103e0c020b41d80810352005510440200041406b22024100360200200041386a22034200370300200042003703302001200041306a104520004180016a10382101200041f8006a20022802002202360200200041f0006a20032903002205370300200020002903302206370368200041d8006a2002360200200041d0006a2005370300200020063703482001200041c8006a101e2001103e0c020b41ef08103520055104402001410310360c020b418209103520055104402001410410420c020b41880910352005520d0020004188026a2203410036020020004180026a22044200370300200042003703f8012001200041f8016a104520004180016a10382102200041406b20032802002201360200200041386a20042903002205370300200020002903f8012206370330200041f0006a2005370300200041f8006a2001360200200041106a2001360200200041086a2005370300200041d0006a2005370300200041d8006a200136020020002006370368200020063703002000200637034820004190026a2000102320004190026a10412002103e0c010b10000b1046200041a0026a24000b9b0101047f230041106b220124002001200036020c2000047f41ac09200041086a2202411076220041ac092802006a220336020041a80941a809280200220420026a41076a417871220236020002400240200341107420024d044041ac09200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102b41086a0541000b2100200141106a240020000b0c00200020012002411c10470bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001106d20012003280208200328020c104d36020c20032001106d410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410471a200341106a24000f0b20032001106d41002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004104d106c2001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b870202047f017e230041106b2203240020001048024002402000280204450d00200010480240200028020022022c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d04401000200028020021020b20022d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d04401000200028020021020b200120026a2d0000450d010b2000280204450d0020022d000041c001490d010b10000b200341086a20001049200328020c220041094f044010000b200328020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200341106a240020050b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b3101017f23004180016b2202240020001037200241086a10382100200241086a20011101002000103e20024180016a24000b0e002000103f410147044010000b0b880d010f7f230041e0016b2201240020004200370204200042f6bdbebb979e8efbe7003703102000411c6a220c42003702002000200041046a22083602002000200c360218200141286a103920002903101044220928020c200941106a28020047044010000b200041186a210502402009280200220220092802042204100f220d450d002001410036022020014200370318200141186a200d1021200220042001280218220a200128021c2206200a6b1010417f470440024002402001200a41016a2006200a417f736a10322202280204450d0020022802002d000041c001490d0020014188016a20024101104a2103200141f8006a20024100104a210720032802042102200141b8016a210e200141d0006a210b034020072802042002464100200328020822042007280208461b0d02200141e0006a20022004411c1047210220014200370340200b1024210602402001280264044020012802602d000041bf014b0d010b10000b2002104b410247044010000b200141c8016a2002410010332001200141c8016a1034370340200e1024210420014198016a200241011033200141c8016a20014198016a410010332001200141c8016a10343703b001200141c8016a20014198016a41011033200141c8016a20041040200120012903b00137034820062004104c2005200141c8016a2001290340102c22042802004504404130102522022001290340370310200241186a2001290348370300200241206a200b290200370200200241286a200b41086a2802003602002006102a200520012802c80120042002102d0b20032003280204220220032802086a410020021b22023602042003280200220404402003200436020820022004104d21062003027f2003280204220f4504404100210441000c010b410021044100200328020822022006490d001a200220062006417f461b2104200f0b2202ad2004ad42208684370204200341002003280200220620046b2204200420064b1b3602000c0105200341003602080c010b000b000b10000b200d21030b200a450d002001200a36021c0b200928020c22020440200920023602100b024020030d002000280200210302402000280220450d00200028021821022000200c36021820004100360220200028021c21042000410036021c2004410036020820022802042204200220041b2104034020042202450d012003200847044020022003290310370310200241186a2003290318370300200241206a200341206a1019200241106a2106024020022802082204450440410021040c010b2002200428020022074604402004410036020020042802042207450d012007104e21040c010b200441003602042007450d002007104e21040b2005200141406b2006104f21062005200128024020062002102d2003105021030c010b0b0340200228020822020d000b200821030b034020032008460d0141301025220241106a2204200341106a10512005200141406b2004104f21042005200128024020042002102d2003105021030c000b000b20004200370328200041306a220342e4e9dbd7f9a5b1f1e000370300200141406b103920032903001044220328020c200341106a28020047044010000b02402003280200220820032802042206100f2204450440410021020c010b41002102200141003602b801200142003703b001200141b0016a200410212008200620012802b001220520012802b401220720056b1010417f4704402000200141c8016a200541016a20072005417f736a10321034370338200421020b2005450d00200120053602b4010b200328020c22050440200320053602100b2002450440200020002903283703380b2000420037004041002102200041d0006a4100360000200041c8006a4200370000200041e0006a22044200370000200041d8006a220342ec9687b9d0b2e0d7a87f370300200041e8006a4200370000200041f0006a4100360000200141406b103920032903001044220328020c200341106a28020047044010000b02402003280200220620032802042207100f2208450d00200141003602b801200142003703b001200141b0016a200810212006200720012802b001220520012802b401220b20056b1010417f470440200141c8016a200541016a200b2005417f736a103220041052200821020b2005450d00200120053602b4010b200328020c22050440200320053602100b20024504402004200041406b2203290300370300200441106a200341106a280200360200200441086a200341086a2903003703000b200141e0016a240020000b29002000410036020820004200370200200041001053200041146a41003602002000420037020c20000b900101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003105420036a0520030b41016a21040b027f200041186a28020022030440200041086a280200200041146a280200200310550c010b20000b2203200328020020046a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001056200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011057200441106a24000b1300200028020820014904402000200110530b0b2a01017f200020022001100b200028020422036a106f20022001200320002802006a100c2000106e20000b860a020b7f027e230041b0016b2202240020024190016a10392204200041d8006a22052903001043103c200041e0006a2101200420052903001044220428020c200441106a28020047044010000b2004280204210720042802002108200241f0006a103921032001105821062003200241186a10592205105a2003200620052802046a20052802006b103c200241106a200141106a2800002206360200200241086a200141086a290000220c37030020022001290000220d370300200241306a200c370300200241386a2006360200200241c8006a200c370300200241d0006a20063602002002200d3703282002200d370340200241e8006a2006360200200241e0006a200c3703002002200d37035802402003200241d8006a4114105b220128020c200141106a280200460440200141046a2103200128020021060c010b200141046a2103100020012802002106200128020c2001280210460d0010000b20082007200620032802001011200528020022030440200520033602040b200128020c22050440200120053602100b200428020c22010440200420013602100b20024190016a10392201200041306a22042903001043103c200120042903001044220428020c200441106a28020047044010000b2004280204210320042802002106200241f0006a103921012000290338104321072001200241d8006a10592205105a2001200720052802046a20052802006b103c0240200120002903381044220128020c200141106a280200460440200141046a2107200128020021080c010b200141046a2107100020012802002108200128020c2001280210460d0010000b20062003200820072802001011200528020022030440200520033602040b200128020c22050440200120053602100b200428020c22010440200420013602100b200241d8006a1039220120002903101043103c200120002903101044220828020c200841106a28020047044010000b2008280204210a2008280200210b200241406b1039210720024188016a410036020020024180016a4200370300200241f8006a420037030020024200370370027f200041206a2802004504402002410136027041010c010b2000411c6a2105200241f0006a4100105c2103200241a0016a210620002802182101037f2001200546047f20034101105c1a20022802700520024190016a200141106a105120034100105c200229039001105d4100105c200229039801105d2204200241286a2006101b105e20044101105c4101105c1a2001105021010c010b0b0b2101200241f0006a410472103b2007200210592209105a2007200928020420016a20092802006b103c20072000280220105f21032000411c6a210620024190016a41047221072000280218210103402001200647044020034102105f200129031010444102105f2104200241003602a801200242003703a0012002420037039801200242003703900120024190016a2001290318105d200241f0006a200141206a2205101b105e2004200228029001103c200420012903181044200241286a2005101b10602007103b2001105021010c010b0b0240200328020c200341106a280200460440200341046a2101200328020021040c010b200341046a2101100020032802002104200328020c2003280210460d0010000b200b200a200420012802001011200928020022010440200920013602040b200328020c22010440200320013602100b200828020c22010440200820013602100b200241b0016a24000b2501017f02402000280204450d0020002802002d000041c001490d002000104b21010b20010ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10241a0c010b200241186a200010492000106121030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102521032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a104c200241206a24000bab0101037f230041e0006b22012400200141186a10392102200141d8006a4100360200200141d0006a4200370300200141c8006a420037030020014200370340200141406b200141306a2000101b105e20012802402103200141406b410472103b20022003103c2002200141086a2000101b1060200228020c200241106a28020047044010000b200228020020022802041012200228020c22000440200220003602100b200141e0006a24000b990202027f027e23004190026b2202240020001037200241086a1038210320024180016a200241086a2001110000200241b0016a1039220020024180016a1058103c200241a8016a20024190016a2802002201360200200241a0016a20024188016a29030022043703002002200229038001220537039801200241d0016a2004370300200241d8016a2001360200200241e8016a2004370300200241f0016a2001360200200220053703c801200220053703e00120024188026a200136020020024180026a2004370300200220053703f8012000200241f8016a4114105b220128020c200141106a28020047044010000b200128020020012802041012200128020c22000440200120003602100b2003103e20024190026a24000b5101037f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000105d210220012802002103200241046a103b200141206a240020030b0a00200020014200103d0b3401017f230041206b220224002000103f410247044010000b200241086a200041011033200241086a20011052200241206a24000b880101037f4198094101360200419c092802002100034020000440034041a00941a0092802002201417f6a220236020020014101484504404198094100360200200020024102746a22004184016a280200200041046a2802001101004198094101360200419c0928020021000c010b0b41a0094120360200419c09200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000106a20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000106a20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd50101047f200110612204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001106d20004100200428020c2201200428020822022001104d22032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000106d200128020c210003402000450d01200141002001280208220320032000104d22046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a2802003602002001102a0b2701017f230041206b22022400200241086a2000200141141047106a2100200241206a240020000b1d01017f03402000220128020022000d00200128020422000d000b20010b6402017f017e024020002802042203044020022903002104034002402004200329031054044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b23002000200129030037030020002001290308370308200041106a200141106a101b1a0bcf0102037f027e230041406a2202240020001048200241386a20001049200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10000b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a20022802382003102b1a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000b2f01017f200028020820014904402001103120002802002000280204102b210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b850202037f027e23004180016b22012400200141306a4100360200200141286a4200370300200141206a4200370300200141086a200041086a2900002204370300200141106a200041106a280000220236020020014200370318200120002900002205370300200141406b2004370300200141c8006a2002360200200141d8006a2004370300200141e0006a20023602002001200537033820012005370350200141f8006a2002360200200141f0006a200437030020012005370368410121020240034020034114460d01200141e8006a20036a2100200341016a210320002d0000450d000b411521020b20012002360218200141186a410472103b20014180016a240020020b3a01017f20004100360208200042003702002000410110252201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004105320002802040520020b20002802006a20032001102b1a2000200028020420016a3602040b2a01017f2000200120021009200028020422036a106f20012002200320002802006a100a2000106e20000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031055280200210120022003417f6a360200200710624180104f044020072000410c6a280200417c6a10570b200141384f047f2001105420016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110550c020b20000c010b0240200710620d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10630c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010252105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1064220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10652102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021066200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a106722013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10652102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021066200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10630c010b20042001410175410120011b200320051065210241802010252106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a106422013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200106521032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031066200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021066052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a106722013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210106521062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061066200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071056200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b0a00200020014200103a0b9a0101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002105420026a41016a21030b200041186a28020022010440200041086a280200200041146a2802002001105521000b2000200028020020036a3602000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410250b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001102b1a0b20002002360214200020033602102000200536020c20000f0b200041001007200028020422016a106f41004100200120002802006a10082000106e20000b2d01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b105b1a0bff0201037f200028020445044041000f0b2000104841012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a106422023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10652103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031066200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110680b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102521040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110680b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002102b1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b3501017f230041106b220041b0890436020c41a409200028020c41076a417871220036020041a809200036020041ac093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000106b200010616a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2101017f20011061220220012802044b044010000b200020012001106b2002106c0b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210076a106f200120002802006a22012002200110080c010b0b0b3601017f200028020820014904402001103120002802002000280204102b210220002001360208200020023602000b200020013602040bbe0202027f047e2000027e2002500440420021022001420a800c010b0240027e200141fd00200279a76b220341c000460d001a2003413f4d0440200241c00020036bad22058620012003ad2207888421062002200788210820012005862107420021050c020b200241800120036bad2205862001200341406aad22068884210720022006882106200120058621050c010b21072002210641c00021030b03402003044020084201862006423f888422022002427f8542007c20064201862007423f88842206427f852202420a7c200254ad7c423f8722024200837d20062002420a83220154ad7d2108200620017d210620074201862005423f888421072003417f6a21032004ad20054201868421052002a741017121040c010b0b20074201862005423f888421022004ad2005420186427e83840b370300200020023703080b0b9c0101004180080b94013031323334353637383900696e697400697341646d696e007477656574006765745477656574006765744c61746573745477656574006765744f776e657241646472657373006765744e756d6265724f665477656574730061646d696e5265747269657665446f6e6174696f6e730061646d696e44656c6574654163636f756e7400636164647200636164647242616c616e6365"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETLATESTTWEET = "getLatestTweet"; - - public static final String FUNC_CADDRBALANCE = "caddrBalance"; - - public static final String FUNC_ISADMIN = "isAdmin"; - - public static final String FUNC_TWEET = "tweet"; - - public static final String FUNC_GETTWEET = "getTweet"; - - public static final String FUNC_GETOWNERADDRESS = "getOwnerAddress"; - - public static final String FUNC_GETNUMBEROFTWEETS = "getNumberOfTweets"; - - public static final String FUNC_ADMINRETRIEVEDONATIONS = "adminRetrieveDonations"; - - public static final String FUNC_CADDR = "caddr"; - - public static final String FUNC_ADMINDELETEACCOUNT = "adminDeleteAccount"; - - protected TweetAccount(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TweetAccount(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getLatestTweet() { - final WasmFunction function = new WasmFunction(FUNC_GETLATESTTWEET, Arrays.asList(), String.class); - return executeRemoteCall(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TweetAccount.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TweetAccount.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TweetAccount.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TweetAccount.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall caddrBalance(WasmAddress receiver) { - final WasmFunction function = new WasmFunction(FUNC_CADDRBALANCE, Arrays.asList(receiver), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall isAdmin() { - final WasmFunction function = new WasmFunction(FUNC_ISADMIN, Arrays.asList(), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall tweet(String tweetString) { - final WasmFunction function = new WasmFunction(FUNC_TWEET, Arrays.asList(tweetString), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall tweet(String tweetString, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TWEET, Arrays.asList(tweetString), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getTweet(Uint64 tweetId) { - final WasmFunction function = new WasmFunction(FUNC_GETTWEET, Arrays.asList(tweetId), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall getOwnerAddress() { - final WasmFunction function = new WasmFunction(FUNC_GETOWNERADDRESS, Arrays.asList(), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public RemoteCall getNumberOfTweets() { - final WasmFunction function = new WasmFunction(FUNC_GETNUMBEROFTWEETS, Arrays.asList(), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall adminRetrieveDonations(WasmAddress receiver) { - final WasmFunction function = new WasmFunction(FUNC_ADMINRETRIEVEDONATIONS, Arrays.asList(receiver), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall adminRetrieveDonations(WasmAddress receiver, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADMINRETRIEVEDONATIONS, Arrays.asList(receiver), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall caddr() { - final WasmFunction function = new WasmFunction(FUNC_CADDR, Arrays.asList(), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public RemoteCall adminDeleteAccount() { - final WasmFunction function = new WasmFunction(FUNC_ADMINDELETEACCOUNT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall adminDeleteAccount(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADMINDELETEACCOUNT, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static TweetAccount load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TweetAccount(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TweetAccount load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TweetAccount(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/TweetRegistry.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/TweetRegistry.java deleted file mode 100644 index 6ff44cee55..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/TweetRegistry.java +++ /dev/null @@ -1,185 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class TweetRegistry extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001621160027f7f0060017f0060017f017f60027f7f017f60037f7f7f017f60037f7f7f0060000060047f7f7f7f0060047f7f7f7f017f60037f7e7e017f60027e7e017f60027f7e0060037e7e7f006000017f60047f7f7e7e017f60017e017f60017f017e0292031203656e760c706c61746f6e5f70616e6963000603656e760d706c61746f6e5f63616c6c6572000103656e760e706c61746f6e5f61646472657373000103656e760f706c61746f6e5f7472616e73666572000403656e760e706c61746f6e5f62616c616e6365000303656e760e706c61746f6e5f64657374726f79000203656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000503656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000503656e760d726c705f753132385f73697a65000a03656e760f706c61746f6e5f726c705f75313238000c03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000d03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000703656e760d706c61746f6e5f72657475726e00000375740601010403020303030e0703050001000300010001020404040203010001010306020405010200100002000002020901000901010a0001000100000106080202000b0000000201020402000404000300020400000f020200000001030303030004020200040801040505060505020203070001000405017001040405030100020608017f0141908a040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300120f5f5f66756e63735f6f6e5f65786974004e06696e766f6b6500320909010041010b031324260aa8b801740400107c0b950102027f027e230041206b22012400200141086a1014200041a8016a4200370300200041a0016a4200370300200041b0026a41003a0000200041e0016a200141186a2802002202360000200041d8016a200141106a2903002203370000200041d0016a2001290308220437000020004188026a200437000020004190026a200337000020004198026a2002360000200141206a24000b210020004200370000200041106a4100360000200041086a4200370000200010010b8b0302067f027e230041206b22052400027f417f200041e8006a220620011016200541086a10171018450d001a417e200041186a220720021019220428020420042d0000220441017620044101711b0d001a417d200128020420012d0000220441017620044101711b413f4b0d001a417c200041b0026a2d00000d001a2007200210192001101a1a200620011016220341106a200241106a2206280000360000200341086a200241086a220429000037000020032002290000370000200041406b2207200541086a200041a0016a290300200041a8016a220129030084420052ad22094200101b2208280200220345044041c0001027220341186a4200370300200341206a4200370000200341286a4200370000200341306a4100360000200320093703102007200528020820082003101c0b200341206a2002290000370000200341306a2006280000360000200341286a2004290000370000200020002903a001220942017c220a3703a00120012001290300200a200954ad7c37030041000b2103200541206a240020030b6801037f230041106b2203240020002003410c6a200110292204280200220245044041301027220241106a2001101d1a2002412c6a4100360000200241246a42003700002002411c6a42003700002000200328020c20042002101c0b200341106a24002002411c6a0b4401017f20004200370000200041106a4100360000200041086a42003700004113210103402001417f46450440200020016a41003a00002001417f6a21010c010b0b20000b3901027f41012103034002402002411447047f200020026a2d0000200120026a2d0000460d0141000520030b0f0b200241016a21020c000b000b7201037f230041106b2203240020002003410c6a2001102a220428020022024504404130102722022001290000370010200241206a200141106a280000360000200241186a200141086a290000370000200241246a102b1a2000200328020c20042002101c0b200341106a2400200241246a0b3601027f2000200147044020002001280208200141016a20012d0000220241017122031b2001280204200241017620031b107e0b20000ba60102027f027e200041046a21040240200028020422000440024003400240024020002903102207200258200041186a2903002206200358200320065122051b450440200028020022050d012001200036020020000f0b200720025a200620035a20051b0d03200041046a210420002802042205450d01200421000b20002104200521000c010b0b2001200036020020040f0b200120003602000c010b200120043602000b20040b480020032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b20002802042003102e2000200028020841016a3602080ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102721022000200136020420002004410172360200200020023602080b200220032001107d200120026a41003a000020000bb00101047f230041106b22032400200141406b22042003410c6a2002290300200241086a2205290300101b2206280200220145044041c000102722012002290300370310200141206a4200370000200141286a4200370000200141306a4100360000200141186a20052903003703002004200328020c20062001101c0b200041106a200141306a280000360000200041086a200141286a2900003700002000200141206a290000370000200341106a24000b7301027f230041306b22022400200241186a10142000200141186a2203200241186a1019101d21002003200241186a10191020200210171a200141e8006a20001016220141106a200241106a280200360000200141086a200241086a29030037000020012002290300370000200241306a24000b0b0020004180084100107e0bbd0101037f230041d0006b22022400200241386a10140240200241386a200041d0016a1018450440200241386a20004188026a1018450d010b200241306a200041e8006a220420011016220341106a280000360200200241286a200341086a29000037030020022003290000370320200041186a200241206a10191020200241086a10171a200420011016220041106a200241186a280200360000200041086a200241106a290300370000200020022903083700000b200241d0006a24000b3c01027f230041206b22022400200241086a1014200241086a200041d0016a10180440200041b0026a20013a0000410121030b200241206a240020030b5b01017f230041206b22022400200241086a1014200241086a200041d0016a1018044020004188026a200129000037000020004198026a200141106a28000036000020004190026a200141086a2900003700000b200241206a24000b910202037f027e230041406a22012400200141186a10140240200141186a200041d0016a22031018450d00200141106a4100360200200141086a42003703002001420037030020011002200141306a21022001200141306a10042100034020000440200542088620044238888421052000417f6a210020023100002004420886842104200241016a21020c010b0b2001410036023820014200370330200141306a4120102520012802302200417f6a2102200128023420006b2100034020000440200020026a20043c0000200542388620044208888421042000417f6a2100200542088821050c010b0b200320012802302200200128023420006b10031a2000450d00200120003602340b200141406b24000bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001102721060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110281a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b3201017f230041206b22012400200141086a1014200141086a200041d0016a220010180440200010051a0b200141206a24000b0b002000410120001b10330bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b890101027f200041046a2103024020002802042200044002400340024002402002200041106a220410310440200028020022040d012001200036020020000f0b200420021031450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b890101027f200041046a2103024020002802042200044002400340024002402002200041106a2204102c0440200028020022040d012001200036020020000f0b20042002102c450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b190020004200370200200041086a41003602002000102d20000b3a01037f034020024114470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0bec0101037f200120002001463a000c03400240024020002001460d00200128020822022d000c0d002002200228020822032802002204460440024020032802042204450d0020042d000c0d002004410c6a21010c030b200120022802004704402002102f2002280208220228020821030b200241013a000c200341003a000c200310300f0b02402004450d0020042d000c0d002004410c6a21010c020b20012002280200460440200210302002280208220228020821030b200241013a000c200341003a000c2003102f0b0f0b200241013a000c200320002003463a000c200141013a0000200321010c000b000b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040bb20101067f02400240200128020420012d00002202410176200241017122031b2205200028020420002d00002202410176200241017122041b2206200520064922071b2202450d002000280208200041016a20041b21002001280208200141016a20031b210103402002450d0120002d0000220320012d00002204460440200141016a2101200041016a21002002417f6a21020c010b0b200320046b22020d010b417f200720062005491b21020b2002411f760bab0c02057f037e23004180046b22002400107c100c220110332202100d200041c0016a200041106a200220011034220341001035200041c0016a103602400240200041c0016a1037450d0020002802c401450d0020002802c0012d000041c001490d010b10000b200041286a200041c0016a1038200028022c220141094f044010000b200028022821020340200104402001417f6a210120023100002005420886842105200241016a21020c010b0b024002402005500d004181081039200551044020034101103a0c020b41860810392005510440200041286a102b2102200041c4006a41003602002000413c6a420037020020004200370234200041346a21012003103b410347044010000b200041c0016a200341011035200041c0016a2002103c200041c0016a200341021035200041c0016a2001103d200041c0016a103e2103200041e0006a2002101d2102200041d8006a200141106a2800002204360200200041d0006a200141086a290000220537030020002001290000220637034820004180016a2004360200200041f8006a20053703002000200637037020032002200041f0006a1015210220004188016a103f2101200041b8016a4100360200200041b0016a4200370300200041a8016a4200370300200042003703a001200041a0016a2002ac22054201862005423f87220685220720064201862005423f888420068522051040210220002802a0012104200241046a10412001200410422001200720051043220128020c200141106a28020047044010000b200128020020012802041011200128020c22020440200120023602100b200310440c020b418f081039200551044020031045200041c0016a103e220241a8016a2903002105200241a0016a2903002106200041286a103f220120062005104610422001200620051043220128020c200141106a28020047044010000b200128020020012802041011200128020c22030440200120033602100b200210440c020b41a3081039200551044020004188016a102b2101200320004188016a1047200041386a200041c0016a103e220241e8006a200041a0016a2001101d1016220141106a280000360200200041306a200141086a29000037030020002001290000370328200041286a1048200210440c020b41b40810392005510440200041b0016a22024100360200200041a8016a22044200370300200042003703a0012003200041a0016a1049200041c0016a103e2101200041d8006a20022802002202360200200041d0006a20042903002205370300200020002903a0012206370348200041386a2002360200200041306a20053703002000200637032820004188016a200141186a200041286a1019101d1a20004188016a104a200110440c020b41c508103920055104402003103b410247044010000b200041c0016a2003410110352000200041c0016a104b200041086a290300210520002903002106200041c0016a103e2101200020053703a801200020063703a001200041286a2001200041a0016a101e200041286a1048200110440c020b41d4081039200551044020031045200041286a200041c0016a103e2201101f200041286a104a200110440c020b41df0810392005510440200041a0016a102b21012003200041a0016a1047200041c0016a103e2202200041286a2001101d1021200210440c020b41ef0810392005510440200041003a00a0012003103b410247044010000b200041c0016a200341011035200041c0016a200041a0016a104c2000200041c0016a103e220120002d00a00110223a0028200041286a104d200110440c020b418b0910392005510440200041b0016a22024100360200200041a8016a22044200370300200042003703a0012003200041a0016a1049200041c0016a103e2101200041d8006a20022802002202360200200041d0006a20042903002205370300200020002903a0012206370348200041386a2002360200200041306a2005370300200020063703282001200041286a1023200110440c020b41a8091039200551044020034102103a0c020b41bf091039200551044020034103103a0c020b41d30910392005520d00200310452000200041c0016a103e220141b0026a2d00003a0028200041286a104d200110440c010b10000b104e20004180046a24000b9b0101047f230041106b220124002001200036020c2000047f41800a200041086a2202411076220041800a2802006a220336020041fc0941fc09280200220420026a41076a417871220236020002400240200341107420024d044041800a200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104102841086a0541000b2100200141106a240020000b0c00200020012002411c104f0bcf0202067f017e230041106b220324002001280208220520024b0440200341086a200110830120012003280208200328020c10810136020c20032001108301410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114104f1a200341106a24000f0b2003200110830141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b21052001200436021420012005360210200320064100200520041081011082012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001036200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110502204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2b01017f230041c0026b22022400200010452002103e21002002200111010020001044200241c0026a24000b2501017f02402000280204450d0020002802002d000041c001490d002000105121010b20010ba10201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a102b1a0c010b200241186a200010382000105021030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206102721032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a1052200241206a24000bcf0102037f027e230041406a2202240020001036200241386a20001038200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10000b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a2002280238200310281a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000b9e1e020d7f027e23004180026b2201240020004200370204200042dfc095a5aa88a385373703102000411c6a220c42003702002000200041046a220b3602002000200c360218200141d0006a103f220920002903101053200928020c200941106a28020047044010000b200041186a210502402009280200220320092802042204100e220d450d002001410036024820014200370340200141406b200d1025200320042001280240220a20012802442206200a6b100f417f47044002400240200141286a200a41016a2006200a417f736a10342202280204450d0020022802002d000041c001490d00200141b0016a20021054200141a0016a20021055200141fc006a2108200141f8006a2103200141f0006a2104034020012802b40120012802a40146044020012802b80120012802a801460d030b20014188016a200141b0016a10562003410036020020044200370300200142003703682008102b210620014188016a1057410247044010000b200141d0016a22024100360200200141c8016a22074200370300200142003703c001200141e8016a20014188016a41001035200141e8016a200141c0016a103d2004200729030037030020032002280200360200200120012903c001370368200141d8016a102b2102200141e8016a20014188016a41011035200141e8016a2002103c2006200210522005200141e8016a200141e8006a102a22072802004504404130102722022001290368370210200241246a2008290200370200200241206a2003280200360200200241186a20042903003702002002412c6a200841086a2802003602002006102d200520012802e80120072002101c0b200141b0016a10580c000b000b10000b200d21020b200a450d002001200a3602440b200928020c22030440200920033602100b024020020d002000280200210202402000280220450d00200028021821032000200c36021820004100360220200028021c21042000410036021c2004410036020820032802042204200320041b2104034020042203450d012002200b47044020032002290010370010200341206a200241206a280000360000200341186a200241186a290000370000200341246a200241246a101a1a024020032802082204450440410021040c010b2003200428020022064604402004410036020020042802042206450d012006105921040c010b200441003602042006450d002006105921040b2005200141e8006a200341106a105a21062005200128026820062003101c2002105b21020c010b0b0340200328020822030d000b200b21020b03402002200b460d0141301027220341106a2204200241106a105c2005200141e8006a2004105a21042005200128026820042003101c2002105b21020c000b000b2000412c6a22064200370200200041c4006a220b4200370200200041386a220242ab8d96aecfefb5a22a37030020002006360228200041406b2205200b36020020014188016a103f220720022903001053200728020c200741106a28020047044010000b02402007280200220320072802042204100e2209450440410021020c010b41002102200141003602a801200142003703a001200141a0016a200910252003200420012802a001220820012802a401220a20086b100f417f47044002400240200141d0006a200841016a200a2008417f736a10342202280204450d0020022802002d000041c001490d00200141d8016a20021054200141b0016a20021055200141d0016a2102034020012802dc0120012802b40146044020012802e00120012802b801460d030b200141e8016a200141d8016a105620024100360200200142003703c801200142003703c001200141e8016a1057410247044010000b200141e8006a200141e8016a41001035200141186a200141e8006a104b200141206a290300210e2001290318210f200141386a22034100360200200141306a2204420037030020014200370328200141e8006a200141e8016a41011035200141e8006a200141286a103d20022003280200360200200120012903283703c001200120042903003703c8012005200141e8006a200f200e101b220428020045044041c00010272203200f370310200341186a200e370300200341206a20012903c001370300200341286a20012903c801370300200341306a20022802003602002005200128026820042003101c0b200141d8016a10580c000b000b10000b200921020b2008450d00200120083602a4010b200728020c22030440200720033602100b024020020d002000280228210202402000280248450d00200028024021032000200b3602402000410036024820002802442104200041003602442004410036020820032802042204200320041b2104034020042203450d01200220064704402002290310210e200341186a200241186a2903003703002003200e370310200341206a2002290020370000200341286a200241286a290000370000200341306a200241306a280000360000200341106a2107024020032802082204450440410021040c010b2003200428020022084604402004410036020020042802042208450d012008105921040c010b200441003602042008450d002008105921040b2005200141e8006a2007105d21072005200128026820072003101c2002105b21020c010b0b0340200328020822030d000b200621020b034020022006460d012005200141e8006a41c0001027220341106a200241106a41301028105d21042005200128026820042003101c2002105b21020c000b000b200041d4006a220b4200370200200041ec006a220c4200370200200041e0006a220242cbf8e2b38dc1b2e59d7f3703002000200b360250200041e8006a2205200c360200200141d0006a103f220920022903001053200928020c200941106a28020047044010000b02402009280200220320092802042204100e220d450440410021020c010b410021022001410036024820014200370340200141406b200d1025200320042001280240220a20012802442206200a6b100f417f47044002400240200141286a200a41016a2006200a417f736a10342202280204450d0020022802002d000041c001490d00200141b0016a20021054200141a0016a20021055200141f4006a220441106a2106200441086a2107034020012802b40120012802a40146044020012802b80120012802a801460d030b20014188016a200141b0016a1056200141e8006a102b210220064100360200200742003702002004420037020020014188016a1057410247044010000b200141d8016a102b2103200141e8016a20014188016a41001035200141e8016a2003103c200220031052200141d0016a22034100360200200141c8016a22084200370300200142003703c001200141e8016a20014188016a41011035200141e8016a200141c0016a103d2006200328020036000020072008290300370000200420012903c0013700002005200141e8016a2002102922082802004504404130102722032001290368370210200341186a200141f0006a2802003602002002102d2003412c6a2006280200360200200341246a20072902003702002003411c6a2004290200370200200520012802e80120082003101c0b200141b0016a10580c000b000b10000b200d21020b200a450d002001200a3602440b200928020c22030440200920033602100b024020020d002000280250210202402000280270450d00200028026821032000200c36026820004100360270200028026c21042000410036026c2004410036020820032802042204200320041b2104034020042203450d012002200b470440200341106a200241106a101a21062003412c6a2002412c6a280000360000200341246a200241246a2900003700002003411c6a200229001c370000024020032802082204450440410021040c010b2003200428020022074604402004410036020020042802042207450d012007105921040c010b200441003602042007450d002007105921040b2005200141e8006a2006105e21062005200128026820062003101c2002105b21020c010b0b0340200328020822030d000b200b21020b03402002200b460d0141301027220341106a2204200241106a105f2005200141e8006a2004105e21042005200128026820042003101c2002105b21020c000b000b200042003703800120004188016a420037030020004190016a220542ae8cc8aedb8fb8926c370300200141e8006a103f220220052903001053200228020c200241106a28020047044010000b02402002280200220620022802042207100e2204450440410021030c010b410021032001410036029001200142003703880120014188016a20041025200620072001280288012205200128028c01220820056b100f417f470440200141086a200141e8016a200541016a20082005417f736a1034104b2001290308210e200041a8016a200141106a2903003703002000200e3703a001200421030b2005450d002001200536028c010b200228020c22050440200220053602100b200345044020002000290380013703a001200041a8016a20004188016a2903003703000b200042003700b001200041c0016a4100360000200041b8016a4200370000200041d0016a22024200370000200041c8016a220542f2cfaabbd583f591a57f370300200041d8016a4200370000200041e0016a41003600002005200210604504402002200041b0016a2205290300370300200241106a200541106a280200360200200241086a200541086a2903003703000b200042003700e801200041f8016a4100360000200041f0016a420037000020004188026a2202420037000020004180026a220542fad3f8c0d486e9ff997f37030020004190026a420037000020004198026a41003600002005200210604504402002200041e8016a2205290300370300200241106a200541106a280200360200200241086a200541086a2903003703000b41002103200041003a00a002200041a8026a220542c9daaf93e2ff9188ce00370300200141e8006a103f220220052903001053200228020c200241106a28020047044010000b02402002280200220620022802042207100e2204450d002001410036029001200142003703880120014188016a20041025200620072001280288012205200128028c01220820056b100f417f470440200141e8016a200541016a20082005417f736a1034200041b0026a104c200421030b2005450d002001200536028c010b200228020c22050440200220053602100b2003450440200020002d00a0023a00b0020b20014180026a240020000b29002000410036020820004200370200200041001061200041146a41003602002000420037020c20000b900101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f2003106220036a0520030b41016a21040b027f200041186a28020022030440200041086a280200200041146a280200200310630c010b20000b2203200328020020046a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001064200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011065200441106a24000b1300200028020820014904402000200110610b0b2c01017f200020022001100a200028020422036a10850120022001200320002802006a100b200010840120000bba17020b7f047e230041b0026b22012400200141f0016a103f2203200041a8026a220229030010661042200320022903001053200328020c200341106a28020047044010000b2003280204210420032802002108200141d0016a103f210220002d00b002106721052002200141b8016a1068220710692002200520072802046a20072802006b1042200220002d00b002106a0240200228020c200241106a280200460440200241046a2105200228020021060c010b200241046a2105100020022802002106200228020c2002280210460d0010000b20082004200620052802001010200728020022040440200720043602040b200228020c22070440200220073602100b200328020c22020440200320023602100b20004180026a20004188026a106b200041c8016a200041d0016a106b200141f0016a103f220220004190016a220329030010661042200220032903001053200228020c200241106a28020047044010000b2002280204210420022802002108200141d0016a103f210320002903a001200041a8016a2205290300104621062003200141b8016a1068220710692003200620072802046a20072802006b10420240200320002903a00120052903001043220328020c200341106a280200460440200341046a2105200328020021060c010b200341046a2105100020032802002106200328020c2003280210460d0010000b20082004200620052802001010200728020022040440200720043602040b200328020c22070440200320073602100b200228020c22030440200220033602100b200141b8016a103f2206200041e0006a220229030010661042200620022903001053200628020c200641106a28020047044010000b2006280204210a2006280200210b200141a0016a103f2109200141e8016a4100360200200141e0016a4200370300200141d8016a4200370300200142003703d0010240200041f0006a280200450440200141d0016a106c0c010b200041ec006a2108200141d0016a4100106d2105200141fc016a21072000280268210203402002200846044020054101106d1a05200141f0016a200241106a105f20054100106d20014188016a200141f0016a101d106e2104200141e0006a200741106a2802002203360200200741086a290200210c2007290200210d200141c8006a2003360200200141406b200c3703002001200c3703582001200d370350200141f8006a200c37030020014180016a200336020020014198026a200c370300200141a0026a20033602002001200d3703382001200d3703702001200d370390022004200141386a106f4101106d1a2002105b21020c010b0b0b20012802d0012102200141d0016a4104721041200920014190026a1068220510692009200220052802046a20052802006b10422009200028027010702104200041ec006a2108200028026821020340200220084704402004410210702207200141d0016a200241106a101d107120014198016a2002412c6a280200220336020020014190016a200241246a290200220c3703002001200229021c220d37038801200141e0006a2003360200200141f8006a200c37030020014180016a20033602002001200d3703502001200c3703582001200d37037020014180026a2003360200200141f8016a200c3703002001200d3703f0012007200141f0016a411410721a2002105b21020c010b0b0240200428020c200441106a280200460440200441046a2102200428020021030c010b200441046a2102100020042802002103200428020c2004280210460d0010000b200b200a200320022802001010200528020022020440200520023602040b200428020c22020440200420023602100b200628020c22020440200620023602100b200141d0016a103f2206200041386a220229030010661042200620022903001053200628020c200641106a28020047044010000b2006280204210a2006280200210b200141b8016a103f210920014188026a410036020020014180026a4200370300200141f8016a4200370300200142003703f0010240200041c8006a280200450440200141f0016a106c0c010b200041c4006a2108200141f0016a4100106d21052000280240210203402002200846044020054101106d1a05200141a0026a200241306a280200220336020020012002290320220c370390022001200241286a290300220d37039802200241186a290300210e2002290310210f200141e0006a220720033602002001200d3703582001200c37035020054100106d200f200e1040210420014180016a20072802002203360200200141f8006a2001290358220c370300200141306a2003360200200141286a200c37030020012001290350220d37037020014190016a200c37030020014198016a2003360200200141a8016a200c370300200141b0016a20033602002001200d3703202001200d370388012001200d3703a0012004200141206a106f4101106d1a2002105b21020c010b0b0b20012802f0012102200141f0016a41047210412009200141a0016a1068220510692009200220052802046a20052802006b10422009200028024810702104200041c4006a2108200028024021020340200220084704402004410210702002290310200241186a29030010432107200141e0006a200241306a28020022033602002001200241286a290300220c37035820012002290320220d370350200141f8006a200c37030020014180016a200336020020014190016a200c37030020014198016a20033602002001200d3703702001200d3703880120014180026a2003360200200141f8016a200c3703002001200d3703f0012007200141f0016a411410721a2002105b21020c010b0b0240200428020c200441106a280200460440200441046a2102200428020021030c010b200441046a2102100020042802002103200428020c2004280210460d0010000b200b200a200320022802001010200528020022020440200520023602040b200428020c22020440200420023602100b200628020c22020440200620023602100b200141b8016a103f2206200029031010661042200620002903101053200628020c200641106a28020047044010000b2006280204210a2006280200210b200141a0016a103f2109200141e8016a4100360200200141e0016a4200370300200141d8016a4200370300200142003703d0010240200041206a280200450440200141d0016a106c0c010b2000411c6a2104200141d0016a4100106d210820014184026a21052000280218210203402002200446044020084101106d1a05200141f0016a200241106a105c20084100106d2107200141e0006a20014180026a2802002203360200200141186a2003360200200141106a200141f8016a290300220c3703002001200c370358200120012903f001220d370350200141f8006a200c37030020014180016a200336020020014198026a200c370300200141a0026a20033602002001200d3703082001200d3703702001200d370390022007200141086a106f20014190026a2005101d106e4101106d1a2002105b21020c010b0b0b20012802d0012102200141d0016a41047210412009200141d0016a1068220510692009200220052802046a20052802006b104220092000280220107021042000411c6a210820002802182102034020022008470440200441021070210720014198016a200241206a280200220336020020014190016a200241186a290200220c37030020012002290210220d37038801200141e0006a2003360200200141f8006a200c37030020014180016a20033602002001200d3703502001200c3703582001200d37037020014180026a2003360200200141f8016a200c3703002001200d3703f0012007200141f0016a41141072200141f0016a200241246a101d10712002105b21020c010b0b0240200428020c200441106a280200460440200441046a2102200428020021030c010b200441046a2102100020042802002103200428020c2004280210460d0010000b200b200a200320022802001010200528020022020440200520023602040b200428020c22020440200420023602100b200628020c22020440200620023602100b200141b0026a24000b0e002000103b410147044010000b0b5301037f230041206b22022400200241186a4100360200200241106a4200370300200241086a4200370300200242003703002002200020011040210320022802002104200341046a1041200241206a240020040b3401017f230041206b220224002000103b410247044010000b200241086a200041011035200241086a2001103c200241206a24000be90102037f027e23004180016b22012400200141206a103f2203200010731042200141186a200041106a2800002202360200200141106a200041086a2900002204370300200120002900002205370308200141406b2004370300200141c8006a2002360200200141d8006a2004370300200141e0006a20023602002001200537033820012005370350200141f8006a2002360200200141f0006a2004370300200120053703682003200141e8006a41141072220028020c200041106a28020047044010000b200028020020002802041011200028020c22020440200020023602100b20014180016a24000b3401017f230041206b220224002000103b410247044010000b200241086a200041011035200241086a2001103d200241206a24000baa0101047f230041e0006b22012400200141186a103f2102200141d8006a4100360200200141d0006a4200370300200141c8006a420037030020014200370340200141406b200141306a2000101d106e210320012802402104200341046a10412002200410422002200141086a2000101d1071200228020c200241106a28020047044010000b200228020020022802041011200228020c22000440200220003602100b200141e0006a24000b9e0102027f027e230041106b22022400200110360240024020011037450d002001280204450d0020012802002d000041c001490d010b10000b200241086a20011038200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000b850101037f230041106b22022400200010360240024020001037450d002000280204450d0020002802002d000041c001490d010b10000b200241086a20001038200228020c220041024f044010000b200228020821030340200004402000417f6a210020032d00002104200341016a21030c010b0b200120044100473a0000200241106a24000b5f01027f230041206b22022400200241086a103f220120002d000010671042200120002d0000106a200128020c200141106a28020047044010000b200128020020012802041011200128020c22000440200120003602100b200241206a24000b880101037f41ec09410136020041f0092802002100034020000440034041f40941f4092802002201417f6a2202360200200141014845044041ec094100360200200020024102746a22004184016a280200200041046a28020011010041ec09410136020041f00928020021000c010b0b41f409412036020041f009200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000107f20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000107f20024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000103641012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b820101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000108301200128020c210003402000450d0120014100200128020822032003200010810122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a2802003602002001102d0b0b0020002001420010431a0b0a00200020014101107b0b0a00200020014100107b0b160020002001280204200141086a280200411c104f1a0b210002402000280204044020002802002d000041bf014b0d010b10000b200010510bb70102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a200141002004200210810110820120002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a102c044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b390020002001290200370200200041106a200141106a280200360200200041086a200141086a290200370200200041146a200141146a101d1a0b820102017f037e0240200028020422030440200241086a29030021042002290300210503400240200520032903105a2004200341186a29030022065a20042006511b45044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b5c01017f0240200028020422030440034002402002200341106a1031044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b330020002001101d1a2000411c6a2001411c6a280200360200200041146a200141146a2902003702002000200129020c37020c0bbe0101057f230041406a22022400200241286a103f220320002903001053200328020c200341106a28020047044010000b02402003280200220020032802042205100e22064504400c010b2002410036022020024200370318200241186a200610252000200520022802182200200228021c220520006b100f417f4704402002200041016a20052000417f736a10342001103d200621040b2000450d002002200036021c0b200328020c22000440200320003602100b200241406b240020040b2f01017f2000280208200149044020011033200028020020002802041028210220002001360208200020023602000b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b5301037f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200042001040210220012802002103200241046a1041200141206a240020030b5801027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000ad42ff018342001040210020012802002102200041046a1041200141206a240020020b3a01017f20004100360208200042003702002000410110272201360200200141fe013a00002000200141016a22013602082000200136020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004106120002802040520020b20002802006a2003200110281a2000200028020420016a3602040b0c0020002001ad420010431a0b990302067f027e230041a0016b22022400200241406b103f2205200029030010661042200520002903001053200528020c200541106a28020047044010000b2005280204210620052802002107200241286a103f21032001107321042003200241186a1068220010692003200420002802046a20002802006b1042200241106a200141106a2800002204360200200241086a200141086a2900002208370300200220012900002209370300200241e0006a2008370300200241e8006a2004360200200241f8006a200837030020024180016a2004360200200220093703582002200937037020024198016a200436020020024190016a200837030020022009370388010240200320024188016a41141072220128020c200141106a280200460440200141046a2103200128020021040c010b200141046a2103100020012802002104200128020c2001280210460d0010000b20072006200420032802001010200028020022030440200020033602040b200128020c22000440200120003602100b200528020c22010440200520013602100b200241a0016a24000b3901017f027f200041186a28020022010440200041086a280200200041146a280200200110630c010b20000b2201200128020041016a3602000bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031063280200210120022003417f6a360200200710744180104f044020072000410c6a280200417c6a10650b200141384f047f2001106220016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110630c020b20000c010b0240200710740d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10750c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010272105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1076220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10772102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021078200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a107922013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10772102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021078200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10750c010b20042001410175410120011b200320051077210241802010272106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a107622013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200107721032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031078200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021078052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a107922013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210107721062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061078200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071064200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002106220026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110630c010b20000b2201200128020020036a36020020000b6601037f410121030240034020024114460d01200120026a2104200241016a210220042d0000450d000b411521030b027f200041186a28020022020440200041086a280200200041146a280200200210630c010b20000b2202200228020020036a36020020000b9f0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410270b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110281a0b20002002360214200020033602102000200536020c20000f0b200041001006200028020422016a10850141004100200120002802006a1007200010840120000b2d01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10721a0b2c01017f2000200120021008200028020422036a10850120012002200320002802006a1009200010840120000be00102027f027e23004180016b22012400200141c8006a4100360200200141406b4200370300200141386a4200370300200141206a200041086a2900002204370300200141286a200041106a280000220236020020002900002103200141086a2004370300200141106a20023602002001420037033020012003370318200141d8006a2004370300200141e0006a2002360200200141f0006a2004370300200141f8006a2002360200200120033703002001200337035020012003370368200141306a2001106f210020012802302102200041046a104120014180016a240020020b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a107622023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10772103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031078200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001107a0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102721040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001107a0b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210281a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110830120004100200428020c220120042802082202200110810122032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b3501017f230041106b220041908a0436020c41f809200028020c41076a417871220036020041fc09200036020041800a3f003602000b10002002044020002001200210281a0b0bd40101027f410a210320002d0000410171220404402000280200417e71417f6a21030b200320024f0440027f2004044020002802080c010b200041016a0b210320020440200320012002107a0b200220036a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2104200341e6ffffff074d0440410b200341017422032002200320024b1b220341106a4170712003410b491b21040b20041027220320012002107d200020023602042000200441017236020020002003360208200220036a41003a00000b2f01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000108001200010506a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2701017f230041206b22022400200241086a200020014114104f107f2100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2301017f20011050220220012802044b044010000b20002001200110800120021082010b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210066a108501200120002802006a22012002200110070c010b0b0b3601017f2000280208200149044020011033200028020020002802041028210220002001360208200020023602000b200020013602040b0bf10101004181080be901696e6974007265676973747279006765744e756d6265724f664163636f756e747300676574416464726573734f664e616d65006765744e616d654f664164647265737300676574416464726573734f66496400756e72656769737465720061646d696e556e72656769737465720061646d696e536574526567697374726174696f6e44697361626c650061646d696e5365744163636f756e7441646d696e6973747261746f720061646d696e5265747269657665446f6e6174696f6e730061646d696e44656c657465526567697374727900676574526567697374726174696f6e44697361626c6564"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GETADDRESSOFID = "getAddressOfId"; - - public static final String FUNC_ADMINUNREGISTER = "adminUnregister"; - - public static final String FUNC_ADMINSETACCOUNTADMINISTRATOR = "adminSetAccountAdministrator"; - - public static final String FUNC_ADMINRETRIEVEDONATIONS = "adminRetrieveDonations"; - - public static final String FUNC_REGISTRY = "registry"; - - public static final String FUNC_GETNUMBEROFACCOUNTS = "getNumberOfAccounts"; - - public static final String FUNC_GETADDRESSOFNAME = "getAddressOfName"; - - public static final String FUNC_GETNAMEOFADDRESS = "getNameOfAddress"; - - public static final String FUNC_UNREGISTER = "unregister"; - - public static final String FUNC_ADMINSETREGISTRATIONDISABLE = "adminSetRegistrationDisable"; - - public static final String FUNC_GETREGISTRATIONDISABLED = "getRegistrationDisabled"; - - public static final String FUNC_ADMINDELETEREGISTRY = "adminDeleteRegistry"; - - protected TweetRegistry(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TweetRegistry(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall getAddressOfId(Uint128 id) { - final WasmFunction function = new WasmFunction(FUNC_GETADDRESSOFID, Arrays.asList(id), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public RemoteCall adminUnregister(String name) { - final WasmFunction function = new WasmFunction(FUNC_ADMINUNREGISTER, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall adminUnregister(String name, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADMINUNREGISTER, Arrays.asList(name), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TweetRegistry.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TweetRegistry.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TweetRegistry.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TweetRegistry.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall adminSetAccountAdministrator(WasmAddress accountAdmin) { - final WasmFunction function = new WasmFunction(FUNC_ADMINSETACCOUNTADMINISTRATOR, Arrays.asList(accountAdmin), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall adminSetAccountAdministrator(WasmAddress accountAdmin, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADMINSETACCOUNTADMINISTRATOR, Arrays.asList(accountAdmin), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall adminRetrieveDonations() { - final WasmFunction function = new WasmFunction(FUNC_ADMINRETRIEVEDONATIONS, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall adminRetrieveDonations(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADMINRETRIEVEDONATIONS, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall registry(String name, WasmAddress accountAddress) { - final WasmFunction function = new WasmFunction(FUNC_REGISTRY, Arrays.asList(name,accountAddress), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall registry(String name, WasmAddress accountAddress, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_REGISTRY, Arrays.asList(name,accountAddress), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getNumberOfAccounts() { - final WasmFunction function = new WasmFunction(FUNC_GETNUMBEROFACCOUNTS, Arrays.asList(), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall getAddressOfName(String name) { - final WasmFunction function = new WasmFunction(FUNC_GETADDRESSOFNAME, Arrays.asList(name), WasmAddress.class); - return executeRemoteCall(function, WasmAddress.class); - } - - public RemoteCall getNameOfAddress(WasmAddress addr) { - final WasmFunction function = new WasmFunction(FUNC_GETNAMEOFADDRESS, Arrays.asList(addr), String.class); - return executeRemoteCall(function, String.class); - } - - public RemoteCall unregister() { - final WasmFunction function = new WasmFunction(FUNC_UNREGISTER, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall unregister(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_UNREGISTER, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall adminSetRegistrationDisable(Boolean registrationDisabled) { - final WasmFunction function = new WasmFunction(FUNC_ADMINSETREGISTRATIONDISABLE, Arrays.asList(registrationDisabled), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall adminSetRegistrationDisable(Boolean registrationDisabled, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADMINSETREGISTRATIONDISABLE, Arrays.asList(registrationDisabled), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall getRegistrationDisabled() { - final WasmFunction function = new WasmFunction(FUNC_GETREGISTRATIONDISABLED, Arrays.asList(), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall adminDeleteRegistry() { - final WasmFunction function = new WasmFunction(FUNC_ADMINDELETEREGISTRY, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall adminDeleteRegistry(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADMINDELETEREGISTRY, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static TweetRegistry load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TweetRegistry(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TweetRegistry load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TweetRegistry(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/TwoInherit.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/TwoInherit.java deleted file mode 100644 index 494b0de66d..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/TwoInherit.java +++ /dev/null @@ -1,118 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class TwoInherit extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001540f60027f7f0060017f0060017f017f60027f7f017f60037f7f7f0060037f7f7f017f60000060047f7f7f7f017f60047f7f7f7f0060027f7e0060037e7e7f006000017f60027f7e017f60027e7e017f60017f017e02a9020d03656e760c706c61746f6e5f70616e6963000603656e760d726c705f6c6973745f73697a65000203656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000a03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000b03656e7610706c61746f6e5f6765745f696e707574000103656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e0000034d4c0600030307000104030402000102060205040102000e01020101020200020901000c0006070209050305040001030003000503000301010000020500000001020005070105040006040202080405017001030305030100020608017f01418089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974003006696e766f6b65001b0908010041010b0214160aa2634c040010540b8a0101047f230041206b2202240002402000411c6a2802002203200041206a220428020047044020032001100f1a2000200028021c413c6a36021c0c010b200241086a200041186a2205200320002802186b413c6d220041016a101020002004101122002802082001100f1a20002000280208413c6a360208200520001012200010130b200241206a24000b3f002000200110151a2000410c6a2001410c6a10151a200041186a200141186a10151a200041246a200141246a10151a200041306a200141306a10151a20000b2f01017f2001200028020820002802006b413c6d2200410174220220022001491b41c4889122200041a2c48811491b0b4c01017f2000410036020c200041106a2003360200200104402001101721040b20002004360200200020042002413c6c6a2202360208200020042001413c6c6a36020c2000200236020420000b900101027f200028020421022000280200210303402002200346450440200128020441446a200241446a220210182001200128020441446a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141446a22013602080c010b0b0b1200200020012802182002413c6c6a10151a0ba10101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204101a21022000200136020420002004410172360200200020023602080b2002200320011055200120026a41003a000020000b1500200020012802182002413c6c6a41246a10151a0b09002000413c6c101a0ba4010020002001290200370200200041086a200141086a28020036020020011019200041146a200141146a2802003602002000200129020c37020c2001410c6a1019200041206a200141206a28020036020020002001290218370218200141186a10192000412c6a2001412c6a28020036020020002001290224370224200141246a1019200041386a200141386a28020036020020002001290230370230200141306a10190b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b0b002000410120001b101c0ba50402057f017e230041c0016b22002400105410072201101c2203100820004180016a200020032001101d22024100101e20004180016a101f0240024020004180016a1020450d00200028028401450d002000280280012d000041c001490d010b10000b200041406b20004180016a10212000280244220141094f044010000b200028024021030340200104402001417f6a210120033100002005420886842105200341016a21030c010b0b024002402005500d00418008102220055104402002102320004180016a102410250c020b41850810222005510440200041406b1026200041406b1027210120021028410247044010000b20004180016a20024101101e20004180016a20011029200041186a10242103200041186a20004180016a2001100f100e200310250c020b419808102220055104402002102320004180016a102421032000419c016a28020021022000280298012104200041186a102a2101200041d8006a4100360200200041d0006a4200370300200041c8006a420037030020004200370340200041406b200220046b413c6d41ff0171ad2205102b20002802402102200041406b410472102c20012002102d20012005102e220128020c200141106a28020047044010000b20012802002001280204100c200128020c22020440200120023602100b200310250c020b41b0081022200551044020024101102f0c020b41c80810222005520d0020024102102f0c010b10000b1030200041c0016a24000b9b0101047f230041106b220124002001200036020c2000047f41f408200041086a2202411076220041f4082802006a220336020041f00841f008280200220420026a41076a417871220236020002400240200341107420024d044041f408200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103e41086a0541000b2100200141106a240020000b0c00200020012002411c10310bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104420012003280208200328020c103536020c200320011044410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410311a200341106a24000f0b20032001104441002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103510582001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b2000101f200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110322204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e0020001028410147044010000b0be606010c7f230041c0016b2204240020004200370218200042b1fdc48289b7f690b67f3703102000410036020820004200370200200041206a4100360200200441186a102a220720002903101033200728020c200741106a28020047044010000b200041186a21052000411c6a21090240200728020022022007280204220810092206450d002006101a21030340200120036a41003a00002006200141016a2201470d000b2002200820032001100a417f460440410021010c010b024002402004200341016a200120036a2003417f736a101d2203280204450d0020032802002d000041c001490d002003102821012000280220200028021822026b413c6d20014904402005200441306a2001200028021c20026b413c6d200041206a101122011012200110130b20044198016a200341011034210120044188016a2003410010342108200041206a210b20012802042103034020082802042003464100200128020822022008280208461b0d02200441f0006a20032002411c1031200441306a1027220310290240200028021c2202200028022049044020022003101820092009280200413c6a3602000c010b200441a8016a2005200220052802006b413c6d220241016a10102002200b1011210220042802b00120031018200420042802b001413c6a3602b001200520021012200210130b20012001280204220320012802086a410020031b220336020420012802002202044020012002360208200320021035210a2001027f2001280204220c4504404100210241000c010b41002102410020012802082203200a490d001a2003200a200a417f461b2102200c0b2203ad2002ad42208684370204200141002001280200220a20026b22022002200a4b1b3602000c0105200141003602080c010b000b000b10000b200621010b200728020c22030440200720033602100b024020010d0020002802042206200028020022036b413c6d22022000280220200028021822016b413c6d4d04402002200928020020016b413c6d22084b0440200320032008413c6c6a2202200110361a20022006200910370c020b2005200320062001103610380c010b200104402005103920004100360220200042003702180b20002005200210102202101722013602182000200136021c200020012002413c6c6a36022020032006200910370b200441c0016a240020000bf20701107f230041f0016b22012400200141186a102a2106200141e8016a22024100360200200141e0016a22054200370300200141d8016a22044200370300200142003703d001200141d0016a2000290310102b20012802d0012107200141d0016a410472102c20062007102d200620002903101033200628020c200641106a28020047044010000b200628020421092006280200210a2001102a2103200241003602002005420037030020044200370300200142003703d001027f20002802182000411c6a280200460440200141013602d00141010c010b200141d0016a4100103a2107200028021c200028021822026b2105037f2005047f20074100103a22042002103b200420014190016a200241246a1015103c200141d0006a200241306a1015103c4101103a1a200541446a21052002413c6a21020c010520074101103a1a20012802d0010b0b0b2104200141d0016a410472102c4101101a220241fe013a0000200328020c200341106a28020047044010000b200241016a21072003280204220541016a220820032802084b047f20032008103d20032802040520050b20032802006a20024101103e1a2003200328020441016a3602042003200420026b20076a102d2003200028021c20002802186b413c6d103f210b200028021c200028021822026b2105200141d0006a410472210c20014190016a410472210d200141d0016a410472210e034020050440200b4103103f210420014100360268200142003703602001420037035820014200370350200141d0006a2002103b200141d0006a200141406b200241246a22071015103c200141306a200241306a22081015103c1a20042001280250102d20044103103f2104200141003602a801200142003703a0012001420037039801200142003703900120014190016a2002104020014190016a20014180016a2002410c6a220f1015103c200141f0006a200241186a22101015103c1a2004200128029001102d20044101103f2104200141003602e801200142003703e001200142003703d801200142003703d001200141d0016a200141c0016a20021015103c1a200420012802d001102d2004200141b0016a2002101510412104200e102c2004200141d0016a200f10151041200141c0016a2010101510412104200d102c2004200141d0016a20071015104120014190016a2008101510411a200c102c200541446a21052002413c6a21020c010b0b0240200328020c2003280210460440200328020021020c010b100020032802002102200328020c2003280210460d0010000b200a200920022003280204100b200328020c22020440200320023602100b200628020c22020440200620023602100b200041186a104220001042200141f0016a24000bc50201027f200041003a00002000413c6a2202417f6a41003a0000200041003a0002200041003a00012002417d6a41003a00002002417e6a41003a0000200041003a00032002417c6a41003a00002000410020006b41037122016a220241003602002002413c20016b417c7122016a2200417c6a4100360200024020014109490d002002410036020820024100360204200041786a4100360200200041746a410036020020014119490d002002410036021820024100360214200241003602102002410036020c200041706a41003602002000416c6a4100360200200041686a4100360200200041646a41003602002001200241047141187222016b2100200120026a2101034020004120490d0120014200370300200141186a4200370300200141106a4200370300200141086a4200370300200141206a2101200041606a21000c000b000b0b2400200010432000410c6a1043200041186a1043200041246a1043200041306a104320000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001044200128020c210003402000450d01200141002001280208220320032000103522046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020ba80101017f230041d0006b22022400200241086a20004100101e200241206a200241086a4100101e200241386a200241206a4100101e200241386a20011045200241386a200241086a4101101e200241386a2001410c6a1045200241386a200241086a4102101e200241386a200141186a1045200241386a20004101101e200241386a200141246a1045200241386a20004102101e200241386a200141306a1045200241d0006a24000b2900200041003602082000420037020020004100103d200041146a41003602002000420037020c20000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002104620026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002104721000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001048200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011049200441106a24000b13002000280208200149044020002001103d0b0b2a01017f2000420020011005200028020422026a104a42002001200220002802006a10062000104b20000bcb0201037f23004180016b2202240020001028410247044010000b200220004101101e2002101f0240024020021020450d002002280204450d0020022802002d000041c001490d010b10000b200241e0006a200210212002280264220041024f044010000b200228026021030340200004402000417f6a210020032d00002104200341016a21030c010b0b200210242103200241286a2002200441ff01712001110400200241386a102a2100200241f8006a4100360200200241f0006a4200370300200241e8006a420037030020024200370360200241e0006a200241d0006a200241286a1015103c210420022802602101200441046a102c20002001102d2000200241e0006a200241286a10151041220028020c200041106a28020047044010000b20002802002000280204100c200028020c22040440200020043602100b2003102520024180016a24000b880101037f41e008410136020041e4082802002100034020000440034041e80841e8082802002201417f6a2202360200200141014845044041e0084100360200200020024102746a22004184016a280200200041046a28020011010041e008410136020041e40828020021000c010b0b41e808412036020041e408200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000105620024f0d002003410471044010000c010b200042003702000b02402003411071450d002000105620024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000101f41012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b090020002001102e1a0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104420004100200428020c2201200428020822022001103522032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b2701017f230041206b22022400200241086a200020014114103110562100200241206a240020000b6901037f200120006b21054100210103402001200546450440200120026a2203200020016a220410532003410c6a2004410c6a1053200341186a200441186a1053200341246a200441246a1053200341306a200441306a10532001413c6a21010c010b0b200120026a0b2e000340200020014645044020022802002000100f1a20022002280200413c6a3602002000413c6a21000c010b0b0b0900200020013602040b0b002000200028020010380bc30c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a220228020022031047280200210120022003417f6a3602002007104c4180104f044020072000410c6a280200417c6a10490b200141384f047f2001104620016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a280200200110470c020b20000c010b02402007104c0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a104d0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020101a2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a104e220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a104f2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021050200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a105122013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a104f2102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021050200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a104d0c010b20042001410175410120011b20032005104f2102418020101a2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104e22013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104f21032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031050200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021050052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a105122013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104f21062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061050200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071048200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b4001017f230041206b2202240020004100103a2200200110402000200241106a2001410c6a1015103c2002200141186a1015103c4101103a1a200241206a24000ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002104620026a41016a21030b027f200041186a28020022010440200041086a280200200041146a280200200110470c010b20000b2201200128020020036a36020020000b2f01017f200028020820014904402001101c20002802002000280204103e210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374101a0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001103e1a0b20002002360214200020033602102000200536020c20000f0b200041001001200028020422016a104a41004100200120002802006a10022000104b20000b2701017f230041106b2202240020004100103a200220011015103c4101103a1a200241106a24000b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011003200028020422026a104a20042001200220002802006a10042000104b20000b0e0020002802000440200010390b0b170020004200370200200041086a4100360200200010190b2101017f20011032220220012802044b044010000b2000200120011057200210580bf30201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a10430c010b200241186a200010212000103221030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206101a21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b024020012d0000410171450440200141003b01000c010b200128020841003a00002001410036020420012d0000410171450d00200141003602000b20012002290308370200200141086a200241106a280200360200200241086a1019200241206a24000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b3601017f200028020820014904402001101c20002802002000280204103e210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a104a200120002802006a22012002200110020c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104e22023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a104f2103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031050200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b220141027521032001044020022000200110520b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274101a21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b22022000200110520b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103e1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b8c0201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b21012002044020012004200210520b200120026a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b2003101a2201200420021055200020023602042000200341017236020020002001360208200120026a41003a00000b0b3501017f230041106b22004180890436020c41ec08200028020c41076a417871220036020041f008200036020041f4083f003602000b100020020440200020012002103e1a0b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001057200010326a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b6601004180080b5f696e6974006164645f7375625f6d795f6d657373616765006765745f7375625f6d795f6d6573736167655f73697a65006765745f7375625f6d795f6d6573736167655f68656164006765745f7375625f6d795f6d6573736167655f66726f6d"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_SUB_MY_MESSAGE_FROM = "get_sub_my_message_from"; - - public static final String FUNC_ADD_SUB_MY_MESSAGE = "add_sub_my_message"; - - public static final String FUNC_GET_SUB_MY_MESSAGE_SIZE = "get_sub_my_message_size"; - - public static final String FUNC_GET_SUB_MY_MESSAGE_HEAD = "get_sub_my_message_head"; - - protected TwoInherit(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TwoInherit(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall get_sub_my_message_from(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_SUB_MY_MESSAGE_FROM, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TwoInherit.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TwoInherit.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TwoInherit.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TwoInherit.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall add_sub_my_message(Sub_my_message sub_one_message) { - final WasmFunction function = new WasmFunction(FUNC_ADD_SUB_MY_MESSAGE, Arrays.asList(sub_one_message), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall add_sub_my_message(Sub_my_message sub_one_message, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ADD_SUB_MY_MESSAGE, Arrays.asList(sub_one_message), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall get_sub_my_message_size() { - final WasmFunction function = new WasmFunction(FUNC_GET_SUB_MY_MESSAGE_SIZE, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall get_sub_my_message_head(Uint8 index) { - final WasmFunction function = new WasmFunction(FUNC_GET_SUB_MY_MESSAGE_HEAD, Arrays.asList(index), String.class); - return executeRemoteCall(function, String.class); - } - - public static TwoInherit load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TwoInherit(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TwoInherit load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TwoInherit(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class Message { - public String head; - } - - public static class My_message { - public Message baseClass; - - public String body; - - public String end; - } - - public static class Sub_my_message { - public My_message baseClass; - - public String from; - - public String to; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/TypeConversionContract.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/TypeConversionContract.java deleted file mode 100644 index efc5c36096..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/TypeConversionContract.java +++ /dev/null @@ -1,115 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class TypeConversionContract extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001591060017f017f60027f7f0060017f0060037f7f7f017f60037f7f7f0060000060027f7f017f60047f7f7f7f017f60047f7f7f7f0060027f7e0060017f017e60037e7e7f006000017f60027f7e017f60017e017f60027e7e017f02a9020d03656e760c706c61746f6e5f70616e6963000503656e760d726c705f6c6973745f73697a65000003656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000603656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000f03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000803656e760d706c61746f6e5f72657475726e000103464505000000050003040a0a020002000002000902010d01010507020001090007010203000002060603040102000e0101000103010202010301010001030702030404050000080405017001040405030100020608017f0141a089040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f7273000d0f5f5f66756e63735f6f6e5f65786974002406696e766f6b6500110909010041010b030e0f100a9a5b450400104e0b050041ea010b050041f4010b0400410a0bf90402047f017e23004180016b22002400104e10072201101222021008200041d8006a200041086a20022001101322014100101402400240200041d8006a10152204500d004180081016200451044020011017200041d8006a101810190c020b418508101620045104402001101a410347044010000b200041d8006a200141011014200041d8006a101b2102200041d8006a200141021014200041d8006a10152104200041d8006a10182101200020042002ad7c370338200041386a101c200110190c020b418d08101620045104402001101a410247044010000b200041d8006a200141011014200041d8006a101b2101200041d8006a1018210220002001410047ad370338200041386a101c200210190c020b41a1081016200451044020011017200041d8006a10182102200041206a101d2101200041d0006a4100360200200041c8006a4200370300200041406b420037030020004200370338200041386a4201101e20002802382103200041386a410472101f200120031020200142011021220128020c200141106a28020047044010000b20012802002001280204100c200128020c22030440200120033602100b200210190c020b41af0810162004510440200041003b0020200041216a21022001101a410347044010000b20004101360238200020013602582000200041386a36025c200041d8006a200041206a1022200041d8006a20021022200041d8006a101821012000200031002120003100207c370338200041386a101c200110190c020b41bf08101620045104402001410110230c020b41cb08101620045104402001410210230c020b41e30810162004520d002001410310230c010b10000b102420004180016a24000b9b0101047f230041106b220124002001200036020c2000047f419009200041086a220241107622004190092802006a2203360200418c09418c09280200220420026a41076a417871220236020002400240200341107420024d0440419009200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104103e41086a0541000b2100200141106a240020000b0c00200020012002411c10250bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001104220012003280208200328020c103336020c200320011042410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410251a200341106a24000f0b20032001104241002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004103310512001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b850102027f017e230041106b22012400200010260240024020001027450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001028200128020c220041094f044010000b200128020821020340200004402000417f6a210020023100002003420886842103200241016a21020c010b0b200141106a240020030b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b0e002000101a410147044010000b0b900a010f7f230041a0016b22032400200042003702182000428debc585c3a7f9dbf7003703102000410036020820004200370200200041206a4100360200200341206a101d220820002903101029200828020c200841106a28020047044010000b200041186a21062000411c6a2109024020082802002205200828020422041009220a450d00200a102a21020340200120026a41003a0000200a200141016a2201470d000b2005200420022001100a417f460440410021010c010b02400240200341086a200241016a200120026a2002417f736a10132201280204450d0020012802002d000041c001490d002001101a21022000280220200028021822056b410c6d20024904402006200341c8006a2002200028021c20056b410c6d200041206a102b2202102c2002102d0b200341f0006a20014101102e2104200341e0006a20014100102e210c200041206a210d2004280204210120034188016a410172210e0340200c280204200146410020042802082202200c280208461b0d02200341c8006a20012002411c10252101200341386a102f210b02400240200328024c044020032802482d000041c001490d010b20034188016a102f1a0c010b20034180016a20011028200110302102024002400240024020032802800122010440200328028401220520024f0d010b4100210120034190016a4100360200200342003703880141002107410021050c010b20034190016a410036020020034200370388012001200520022002417f461b22076a21052007410a4b0d010b200320074101743a008801200e21020c010b200741106a417071220f102a21022003200736028c012003200f4101723602880120032002360290010b03402001200546450440200220012d00003a0000200241016a2102200141016a21010c010b0b200241003a00000b024020032d0038410171450440200341003b01380c010b200328024041003a00002003410036023c20032d0038410171450d00200341003602380b200341406b220220034190016a280200360200200320032903880137033820034188016a10310240200028021c2201200028022049044020012003290338370200200141086a2002280200360200200b103120092009280200410c6a3602000c010b20034188016a2006200120062802006b410c6d220141016a10322001200d102b210120032802900122052003290338370200200541086a2002280200360200200b10312003200328029001410c6a3602900120062001102c2001102d0b20042004280204220120042802086a410020011b22013602042004280200220204402004200236020820012002103321052004027f2004280204220b4504404100210241000c010b410021024100200428020822072005490d001a200720052005417f461b2102200b0b2201ad2002ad42208684370204200441002004280200220520026b2202200220054b1b3602000c0105200441003602080c010b000b000b10000b200a21010b200828020c22020440200820023602100b024020010d0020002802042205200028020022026b410c6d22042000280220200028021822016b410c6d4d04402004200928020020016b410c6d220a4b044020022002200a410c6c6a2204200110341a20042005200910350c020b2006200220052001103410360c010b200104402006103720004100360220200042003702180b20002006200410322204103822013602182000200136021c200020012004410c6c6a36022020022005200910350b200341a0016a240020000ba008010b7f230041e0006b22032400200341186a101d2208200029031010391020200820002903101029200828020c200841106a28020047044010000b2008280204210a2008280200210b2003101d2101200341c8006a4100360200200341406b4200370300200341386a420037030020034200370330027f20002802182000411c6a2802004604402003410136023041010c010b200341306a4100103a200341d0006a4101722109200028021c210720002802182102037f2002200746047f200341306a4101103a200328023005200341d0006a2002103b41012105024002400240200328025420032d00502204410176200441017122061b220441014d0440200441016b0d032003280258200920061b2c0000417f4c0d010c030b200441374b0d010b200441016a21050c010b2004103c20046a41016a21050b027f200341306a20032802482204450d001a2003280238200420032802446a417f6a220441087641fcffff07716a280200200441ff07714102746a0b2204200428020020056a3602002002410c6a21020c010b0b0b2106200341306a410472101f4101102a220241fe013a0000200128020c200141106a28020047044010000b200241016a21052001280204220441016a220720012802084b047f20012007103d20012802040520040b20012802006a20024101103e1a2001200128020441016a3602042001200620026b20056a10200240200028021c20002802186b220204402002410c6d21022001280204210420012802102205200141146a280200220649044020052002ad2004ad422086843702002001200128021041086a3602100c020b027f41002005200128020c22076b410375220941016a2205200620076b2206410275220720072005491b41ffffffff01200641037541ffffffff00491b2207450d001a2007410374102a0b2105200520094103746a22062002ad2004ad4220868437020020062001280210200128020c22096b22026b2104200520074103746a2105200641086a2106200241014e0440200420092002103e1a0b20012005360214200120063602102001200436020c0c010b200141001001200128020422026a103f41004100200220012802006a1002200110400b200341306a4101722109200028021c210720002802182102034020022007470440200341306a2002103b20012003280238200920032d0030220441017122051b22062003280234200441017620051b22041003200128020422056a103f20062004200520012802006a1004200110402002410c6a21020c010b0b0240200128020c2001280210460440200128020021020c010b100020012802002102200128020c2001280210460d0010000b200b200a20022001280204100b200128020c22020440200120023602100b200828020c22010440200820013602100b200041186a104120001041200341e0006a24000b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001042200128020c210003402000450d01200141002001280208220320032000103322046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b7d01037f230041106b22012400200010260240024020001027450d002000280204450d0020002802002d000041c001490d010b10000b200141086a20001028200128020c220041024f044010000b200128020821020340200004402000417f6a210020022d00002103200241016a21020c010b0b200141106a240020030b5f01027f230041206b22022400200241086a101d2201200029030010391020200120002903001029200128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b200241206a24000b2900200041003602082000420037020020004100103d200041146a41003602002000420037020c20000b840102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002103c20026a0520020b41016a21030b200041186a28020022020440200041086a280200200041146a2802002002104321000b2000200028020020036a3602000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001044200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b200020011045200441106a24000b13002000280208200149044020002001103d0b0b2a01017f2000420020011005200028020422026a103f42002001200220002802006a10062000104020000b4601017f230041206b22022400200241086a2000280200200028020428020010142001200241086a101b3a000020002802042200200028020041016a360200200241206a24000bb90102027f017e230041e0006b2202240020001017200210182103200220011100002100200241286a101d2101200241d8006a4100360200200241d0006a4200370300200241c8006a420037030020024200370340200241406b2000ad2204101e20022802402100200241406b410472101f200120001020200120041021220128020c200141106a28020047044010000b20012802002001280204100c200128020c22000440200120003602100b20031019200241e0006a24000b880101037f41fc084101360200418009280200210003402000044003404184094184092802002201417f6a2202360200200141014845044041fc084100360200200020024102746a22004184016a280200200041046a28020011020041fc08410136020041800928020021000c010b0b4184094120360200418009200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000104f20024f0d002003410471044010000c010b200042003702000b02402003411071450d002000104f20024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001026200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110302204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b09002000200110211a0b0b002000410120001b10120b4c01017f2000410036020c200041106a2003360200200104402001103821040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000baa0101037f200028020421022000280200210303402002200346450440200128020441746a2204200241746a2202290200370200200441086a200241086a280200360200200210312001200128020441746a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001104220004100200428020c2201200428020822022001103322032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a240020000b190020004200370200200041086a41003602002000103120000bff0201037f200028020445044041000f0b2000102641012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0b2701017f230041206b22022400200241086a2000200141141025104f2100200241206a240020000bd00201077f200120006b2108410021010340200120026a2105200120084645044002402005200020016a2203460d00200341046a28020020032d00002204410176200441017122071b2104200341016a2106200341086a2802002109410a21032009200620071b210720052d0000410171220604402005280200417e71417f6a21030b200420034d0440027f20060440200541086a2802000c010b200541016a0b210320040440200320072004104c0b200320046a41003a000020052d00004101710440200541046a20043602000c020b200520044101743a00000c010b416f2106200341e6ffffff074d0440410b20034101742203200420042003491b220341106a4170712003410b491b21060b2006102a220320072004104d200541046a200436020020052006410172360200200541086a2003360200200320046a41003a00000b2001410c6a21010c010b0b20050b2d000340200020014645044020022802002000103b20022002280200410c6a3602002000410c6a21000c010b0b0b0900200020013602040b0b002000200028020010360b09002000410c6c102a0b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000101e200128020021022001410472101f200141206a240020020bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a220228020022031043280200210120022003417f6a360200200710464180104f044020072000410c6a280200417c6a10450b200141384f047f2001103c20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002104321000c010b0240200710460d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10470c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020102a2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1048220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10492102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104a200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a104b22013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10492102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002104a200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10470c010b20042001410175410120011b2003200510492102418020102a2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a104822013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200104921032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003104a200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002104a052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a104b22013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210104921062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006104a200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071044200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b9d0101037f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a2802003602000f0b20012802082103024020012802042201410a4d0440200020014101743a0000200041016a21020c010b200141106a4170712204102a21022000200136020420002004410172360200200020023602080b200220032001104d200120026a41003a00000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b2f01017f200028020820014904402001101220002802002000280204103e210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b3601017f200028020820014904402001101220002802002000280204103e210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210016a103f200120002802006a22012002200110020c010b0b0b0e0020002802000440200010370b0b2101017f20011030220220012802044b044010000b2000200120011050200210510b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a104822023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10492103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003104a200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001104c0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274102a21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001104c0b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002103e1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b100020020440200020012002103e1a0b0b3501017f230041106b220041a0890436020c418809200028020c41076a4178712200360200418c0920003602004190093f003602000b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001050200010306a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b0b800101004180080b79696e6974006765745f616464006765745f646966666572656e745f747970655f006765745f7072616d5f74797065006765745f7072616d5f72657475726e006765745f636f6e76657274006765745f636f6e766572745f7374617469635f63617374006765745f636f6e766572745f636f6e73745f63617374"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_GET_ADD = "get_add"; - - public static final String FUNC_GET_DIFFERENT_TYPE_ = "get_different_type_"; - - public static final String FUNC_GET_PRAM_TYPE = "get_pram_type"; - - public static final String FUNC_GET_PRAM_RETURN = "get_pram_return"; - - public static final String FUNC_GET_CONVERT = "get_convert"; - - public static final String FUNC_GET_CONVERT_STATIC_CAST = "get_convert_static_cast"; - - public static final String FUNC_GET_CONVERT_CONST_CAST = "get_convert_const_cast"; - - protected TypeConversionContract(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected TypeConversionContract(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TypeConversionContract.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TypeConversionContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TypeConversionContract.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(TypeConversionContract.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall get_add(Uint8 a, Uint64 b) { - final WasmFunction function = new WasmFunction(FUNC_GET_ADD, Arrays.asList(a,b), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall get_different_type_(Boolean a) { - final WasmFunction function = new WasmFunction(FUNC_GET_DIFFERENT_TYPE_, Arrays.asList(a), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall get_pram_type() { - final WasmFunction function = new WasmFunction(FUNC_GET_PRAM_TYPE, Arrays.asList(), Uint32.class); - return executeRemoteCall(function, Uint32.class); - } - - public RemoteCall get_pram_return(Uint8 a, Uint8 b) { - final WasmFunction function = new WasmFunction(FUNC_GET_PRAM_RETURN, Arrays.asList(a,b), Uint64.class); - return executeRemoteCall(function, Uint64.class); - } - - public RemoteCall get_convert() { - final WasmFunction function = new WasmFunction(FUNC_GET_CONVERT, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall get_convert_static_cast() { - final WasmFunction function = new WasmFunction(FUNC_GET_CONVERT_STATIC_CAST, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public RemoteCall get_convert_const_cast() { - final WasmFunction function = new WasmFunction(FUNC_GET_CONVERT_CONST_CAST, Arrays.asList(), Uint8.class); - return executeRemoteCall(function, Uint8.class); - } - - public static TypeConversionContract load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionContract(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static TypeConversionContract load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new TypeConversionContract(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/VIDToken.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/VIDToken.java deleted file mode 100644 index 2476da9a1c..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/VIDToken.java +++ /dev/null @@ -1,743 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmEventEncoder; -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmEvent; -import com.alaya.abi.wasm.datatypes.WasmEventParameter; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameter; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.request.PlatonFilter; -import com.alaya.protocol.core.methods.response.Log; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import rx.Observable; -import rx.functions.Func1; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class VIDToken extends WasmContract { - private static String BINARY_0 = "0x0061736d010000000192011760027f7f0060027f7f017f60017f0060017f017f60037f7f7f0060037f7f7f017f60047f7f7f7f0060047f7f7f7f017f60000060047f7f7e7e017f60037f7e7e0060037e7e7f0060037f7e7e017f60027e7e017f60057f7f7f7e7e0060047f7f7e7e0060057f7f7e7e7f0060077f7f7e7e7f7f7f0060027f7e006000017f60057f7e7e7e7e017f60017e017f60017f017e028a031203656e760c706c61746f6e5f70616e6963000803656e760d706c61746f6e5f63616c6c6572000203656e760d706c61746f6e5f6f726967696e000203656e760b706c61746f6e5f73686133000603656e760d726c705f6c6973745f73697a65000303656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000103656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238000b03656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001303656e7610706c61746f6e5f6765745f696e707574000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000103656e7610706c61746f6e5f6765745f7374617465000703656e7610706c61746f6e5f7365745f7374617465000603656e760c706c61746f6e5f6576656e74000603656e760d706c61746f6e5f726576657274000803656e760d706c61746f6e5f72657475726e000003cd01cb010801060a03000100000301010c0201050c0001000b040406040b02020303020202000302050601020001010901030401010e0601040900090109061003030402050f0a040107010711010101010700020501010a0014000402020301030200000005000603000001001512030002000500000303050001000702000304040101000504020200000300050702050403050301000804031600000300000302020002020000000000000008030100000000030200010000010500050300030001000d0405080303010600020004050170010a0a05030100020608017f0141b08c040b073b04066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300120f5f5f66756e63735f6f6e5f6578697400bb0106696e766f6b6500a501090f010041010b09312d303d47494b57590af4e502cb01050010d5010b920101027f20004200370200200041086a410036020020012102024003402002410371044020022d0000450d02200241016a21020c010b0b2002417c6a21020340200241046a22022802002203417f73200341fffdfb776a7141808182847871450d000b0340200341ff0171450d01200241016a2d00002103200241016a21020c000b000b20002001200220016b108f0120000bbc0302057f027e230041a0016b22042400200441286a10162105200441186a20001017200520042802182206200428021c101810192005200441186a101a200528020c200541106a28020047044010000b20052802042107200528020021082004101b2100200441f8006a200341086a2903002209370300200441d0006a200141106a280000360200200441dc006a200241086a290000370200200441e4006a200241106a28000036020020042003290300220a3703702004200141086a290000370348200420012900003703402004200229000037025420044198016a410036020020044190016a420037030020044188016a4200370300200442003703800120044180016a4100101c2201200441406b1097012001200441d4006a22021097012001200a2009101e4101101c21012004280280012103200141046a101f2000200310192000410310202201200441406b109801200120021098012001200a20091022220128020c200141106a28020047044010000b2008200720012802002001280204100f200128020c22020440200120023602100b200604402004200636021c0b200528020c22010440200520013602100b200441a0016a24000bed0402107f027e23004180026b22032400200341206a41a10a10132104200341d8006a10162105200341c8006a20041017200520032802482207200328024c101810192005200341c8006a101a200528020c200541106a28020047044010000b200528020421092005280200210a200341306a101b210420034180016a2208200041106a2800003602002003200041086a29000037037820032000290000370370200341b0016a4100360200200341a8016a220b4200370300200341a0016a220c4200370300200342003703980120034198016a4100101c2106200341c8016a220d20082802002200360200200341c0016a220e20032903782213370300200341186a2000360200200341106a20133703002003200329037022143703b801200341d8016a220f2013370300200341e0016a22102000360200200341f0016a22112013370300200341f8016a2212200036020020032014370308200320143703d001200320143703e8012006200341086a101d20012002101e4101101c21002003280298012106200041046a101f20042006101920044102102021042012200828020022003602002011200329037822133703002003200329037022143703e801200e2013370300200d2000360200200f201337030020102000360200200320143703b801200320143703d001200b2000360200200c20133703002003201437039801200420034198016a41141021200120021022220028020c200041106a28020047044010000b200a200920002802002000280204100f200028020c22040440200020043602100b200704402003200736024c0b200528020c22000440200520003602100b20034180026a24000b1d002000107f200041146a41003602002000420037020c2000410110200b9b0201057f230041206b220224002001280208210420012d000021062001104e210520024100360218200242003703100240027f410020052004200141016a20064101711b22016b2204450d001a200241106a20041077034020012005464504402002280214220320012d00003a00002002200341016a360214200141016a21010c010b0b2002280210210320022802140b220120036b41204d044020002001360204200020033602002000200228021836020820024100360218200242003703100c010b20024100360208200242003703002002412010712003200228021420036b20022802002201200228020420016b100320002002280200360200200020022902043702042003450d00200220033602140b200241206a24000b9a0101027f230041206b22022400200241186a4100360200200241106a4200370300200241086a420037030020024200370300024020002001460440410121030c010b4101210302400240200120006b2201410146044020002c0000417f4c0d010c030b200141374b0d010b200141016a21030c010b200110850120016a41016a21030b200220033602002002410472101f200241206a240020030b140020002802082001490440200020011080010b0b1600200020012802002200200128020420006b10211a0b19002000107f200041146a41003602002000420037020c20000bda0c02077f027e230041306b22042400200041046a2107027f20014101460440200041086a280200200041146a280200200041186a22022802002203108101280200210120022003417f6a36020020071099014180104f044020072000410c6a280200417c6a1083010b200141384f047f200110850120016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a28020020011081010c020b20000c010b024020071099010d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a109a010c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020104f2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a109b01220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a109c012102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002109d01200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a109e0122013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a109c012102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c200220093702082002109d01200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a109a010c010b20042001410175410120011b20032005109c012102418020104f2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a109b0122013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200109c0121032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b2002290200210920022003290200370200200320093702002002290208210920022003290208370208200320093702082003109d01200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c200220093702082002109d01052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a109e0122013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210109c0121062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a3703202006109d01200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a2007108201200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b4701017f411541012001103f1b2102027f200041186a28020022010440200041086a280200200041146a28020020011081010c010b20000b2201200128020020026a36020020000b920101027f4101210420014280015441002002501b450440034020012002845045044020024238862001420888842101200341016a2103200242088821020c010b0b200341384f047f200310850120036a0520030b41016a21040b027f200041186a28020022030440200041086a280200200041146a28020020031081010c010b20000b2203200328020020046a36020020000bec0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a2000108201200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001108301200441106a24000b9f0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374104f0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110521a0b20002002360214200020033602102000200536020c20000f0b200041001004200028020422016a10dc0141004100200120002802006a1005200010db0120000b2c01017f2000200120021006200028020422036a10dc0120012002200320002802006a1007200010db0120000b2c01017f2000200220011008200028020422036a10dc0120022001200320002802006a1009200010db0120000bf10402117f027e230041f0016b22022400200241206a41980a10132104200241d8006a10162103200241c8006a20041017200320022802482206200228024c101810192003200241c8006a101a200328020c200341106a28020047044010000b200328020421092003280200210a200241306a101b210420024180016a2207200041106a280000360200200241f8006a2208200041086a29000037030020022000290000370370200241a0016a410036020020024198016a220b420037030020024190016a220c4200370300200242003703880120024188016a4100101c2105200241b8016a220d20072802002200360200200241b0016a220e20082903002213370300200241186a2000360200200241106a20133703002002200229037022143703a801200241c8016a220f2013370300200241d0016a22102000360200200241e0016a22112013370300200241e8016a2212200036020020022014370308200220143703c001200220143703d8012005200241086a101d200110244101101c21002002280288012105200041046a101f20042005101920044102102021042012200728020022003602002011200829030022133703002002200229037022143703d801200e2013370300200d2000360200200f201337030020102000360200200220143703a801200220143703c001200b2000360200200c20133703002002201437038801200420024188016a41141021220020011025200028020c200041106a28020047044010000b200a200920002802002000280204100f200028020c22010440200020013602100b200604402002200636024c0b200328020c22000440200320003602100b200241f0016a24000b0b0020002001ad4200101e0b0c0020002001ad420010221a0b3201017f230041206b220324002003200137031820032000370310200341890a1013200341106a20021027200341206a24000be40201067f23004190016b22032400200341286a10162104200341186a20001017200420032802182205200328021c101810192004200341186a101a200428020c200441106a28020047044010000b20042802042106200428020021072003101b21002003200141086a29030037034820032001290300370340200341d0006a200210582102200341f8006a4100360200200341f0006a4200370300200341e8006a420037030020034200370360200341e0006a4100101c20032903402003290348101e20034180016a2002105810a3014101101c210120032802602108200141046a101f2000200810192000410210202003290340200329034810222201200341e0006a2002105810a401200128020c200141106a28020047044010000b2007200620012802002001280204100f200128020c22000440200120003602100b200504402003200536021c0b200428020c22010440200420013602100b20034190016a24000b2d01017f230041106b22032400200320013a000f200341f509101320002003410f6a20021029200341106a24000b9b05020f7f027e230041f0016b22042400200441c8006a10162105200441386a20001017200520042802382207200428023c101810192005200441386a101a200528020c200541106a28020047044010000b2005280204210a2005280200210b200441206a101b2100200441f0006a2208200141106a280000360200200441e8006a2209200141086a29000037030020042001290000370360200420022d00003a0074200441f8006a200310582102200441a0016a410036020020044198016a2203420037030020044190016a220c4200370300200442003703880120044188016a4100101c2106200441b8016a220d20082802002201360200200441b0016a220e20092903002213370300200441186a2001360200200441106a20133703002004200429036022143703a801200441c8016a220f2013370300200441d0016a22102001360200200441e0016a22112013370300200441e8016a2212200136020020042014370308200420143703c001200420143703d8012006200441086a101d20042d00741024200441d8016a2002105810a3014101101c21012004280288012106200141046a101f20002006101920004103102021002012200828020022013602002011200929030022133703002004200429036022143703d801200e2013370300200d2001360200200f201337030020102001360200200420143703a801200420143703c00120032001360200200c20133703002004201437038801200020044188016a41141021220120042d00741025200120044188016a2002105810a401200128020c200141106a28020047044010000b200b200a20012802002001280204100f200128020c22000440200120003602100b200704402004200736023c0b200528020c22010440200520013602100b200441f0016a24000b2d01017f230041106b22032400200320013a000f200341e409101320002003410f6a20021029200341106a24000b3201017f230041206b220324002003200137031820032000370310200341d9091013200341106a20021027200341206a24000b8c0201077f230041e0006b22012400200141286a10162102200141186a20001017200220012802182204200128021c101810192002200141186a101a200228020c200241106a28020047044010000b20022802042103200228020021052001101b2100200141d8006a4100360200200141d0006a4200370300200141c8006a420037030020014200370340200141406b4100101c4101101c210620012802402107200641046a101f200020071019200041001020220028020c200041106a28020047044010000b2005200320002802002000280204100f200028020c22030440200020033602100b200404402001200436021c0b200228020c22000440200220003602100b200141e0006a24000b4d01017f230041106b220124002001102e102f45044010100b200041406b2d0000044010100b200041013a0040230041106b22002400200041d1091013102c200041106a2400200141106a24000b190020004200370200200041086a41003602002000106b20000bd40101047f230041d0006b22012400200141c8006a22024100360200200141406b220342003703002001420037033802402000106c0440200141106a22004100360200200141086a2204420037030020014200370300200110022002200028020036020020032004290300370300200120012903003703380c010b20012000103320012d0014450d00200141c8006a200141106a280200360200200141406b200141086a290300370300200120012903003703380b20011034220041206a200141386a106d210220001035200141d0006a240020020b4e01017f230041106b220124002001102e102f45044010100b200041406b2d000045044010100b200041003a0040230041106b22002400200041c7091013102c200041106a2400200141106a24000bfa0501087f230041a0016b22012400200141406b102e210220014198016a2203410036020020014190016a2205420037030020014200370388010240200228020420012d0040220441017620044101711b450440200141d0006a10322003200141e0006a2802003602002005200141d8006a29030037030020012001290350370388010c010b200141d0006a2002103320012d0064450d0020014198016a200141e0006a28020036020020014190016a200141d8006a29030037030020012001290350370388010b200141d0006a1034220241306a20014198016a2205280200360000200241286a20014190016a220729030037000020022001290388013700202002103520004188036a420037030020004180036a428080f09d99ddbf92e100370300200041406b41003a0000200141d0006a1032200041c0036a200141e0006a2204280200360000200041b8036a200141d8006a2203290300370000200041b0036a2001290350370000200141d0006a103220004180026a220620014188016a200141d0006a1036220828020022024504404124104f2202200129035037000d200241216a41003a00002002411d6a2004280200360000200241156a200329030037000020062001280288012008200210370b200241216a41013a0000200041286a42d2efca02370300200042808080a0ae9a83e45c370320200141d0006a1032200041e0006a2200200141d0006a1038220242d2efca02370308200242808080a0ae9a83e45c370300200141206a22024200370300200141286a22064100360200200142003703182001103920072002290300370300200520062802003602002003200141086a2903003703002004200141106a2802003602002001200129031837038801200120012903003703502001420037034820014280c2d72f370340200141306a41b109101320014188016a200141d0006a200141406b1014200141d0006a1039200141406b200141d0006a103a200141306a2000103b210020014188016a1032200020014188016a103c1a200141a0016a24000b210020004200370000200041106a4100360000200041086a4200370000200010010bf10a010a7f23004190016b22032400200341086a418008101321092001280208200141016a220a20012d0000220241017122041b210b2001280204200241017620041b21084100210241012105024003402005410171410020022008491b04402002200b6a2d00002204415f6a41ff017141de004921052006200441bf7f6a41ff0171411a4972210620072004419f7f6a41ff0171411a49722107200241016a21020c01050240200520062007714101737121062008450d002008210203402002450d012002200b6a21052002417f6a220421022005417f6a2d00004131470d000b0c030b0b0b417f21040b0240024002402006410171450d00200441076a20084b0d00200441016a4102490d00200841da004b0d00410021022003410036027820034200370370200341f0006a20082004417f7322076a107141012106024003402002200128020420012d00002205410176200541017122051b20076a4f044002402006410171450d0341002102200341e0006a102e210602400340200220044604400240200628020420032d006022044101762202200441017122051b2207200928020420032d00082204410176200441017122041b470d092009280208200941016a20041b210420050d00200641016a210503402002450d0420052d000020042d0000470d0a200441016a2104200541016a21052002417f6a21020c000b000b0520062001280208200a20012d00004101711b20026a2c000022054120722005200541bf7f6a411a491b4118744118751072200241016a21020c010b0b20062802082004200710730d060b20034180016a20061074200341306a20034180016a200328027020032802741075200341306a10762102200328023022040440200320043602340b2003280280012204044020032004360284010b20024101470d0341002106200341003602880120034200370380012003410036023820034200370330027f41002003280274417a6a2205200328027022026b2204450d001a200341306a20041077034020022005464504402003280234220420022d00003a00002003200441016a360234200241016a21020c010b0b2003280230210620032802340b20066b210741002102410021044100210503402005200746044002402004410820026b7441ff017145200241054871210220060440200320063602340b20020d0020032802800121020c030b05200520066a2d0000200441057441e01f71722104200241056a21020340200241084845044020032004200241786a2202763a008f0120034180016a2003418f016a10780c010b0b200541016a21050c010b0b20032802840120032802800122026b4114470d00200341406b4100360200200341386a4200370300200342003703304100210203402002411446450440200341306a20026a41003a0000200241016a21020c010b0b20032802840120032802800122046b2105410021020340024020022005460d00200241134b0d00200341306a20026a200220046a2d00003a0000200241016a21020c010b0b20002003290330370000200041013a0014200041106a200341406b280200360000200041086a200341386a2903003700002004044020032004360284010b20032802702202450d06200320023602740c060b05200328027020026a2001280208200a20051b20046a20026a41016a2d00004190086a2d000022053a00002006200541ff0147712106200241016a21020c010b0b2002450d0020032002360284010b20032802702202450d00200320023602740b20004200370000200041003a0014200041086a4200370000200041106a41003600000c010b20004200370000200041003a0014200041086a4200370000200041106a410036000020032802702202450d00200320023602740b20034190016a24000b860101037f2000420037000020004200370020200042befadbd3c388a6d88a7f370318200041106a22024100360000200041086a22034200370000200041286a4200370000200041306a4100360000200041186a200041206a2201107945044020012000290300370300200141106a2002280200360200200141086a20032903003703000b20000b0e00200041186a200041206a107a0b8b0101027f200041046a21030240200028020422000440024003400240024020022000410d6a22041091010440200028020022040d012001200036020020000f0b20042002109101450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b490020032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b200028020420031092012000200028020841016a3602080b800101037f230041106b2203240020002003410c6a20011093012204280200220245044041c000104f220241386a4200370300200241306a420037030020022001290000370010200241206a200141106a280000360000200241186a200141086a2900003700002000200328020c2004200210370b200341106a2400200241306a0b4901027f230041406a220224002000200241086a10342201290020370000200041106a200141306a280000360000200041086a200141286a29000037000020011035200241406b24000b810801087f230041e0006b2202240020024180081013210420024100360238200242003703304114104f20014114105221064100210103402005411446044002402003044020022001410520036b74411f713a0050200241306a200241d0006a10780b200241406b20041074200241d0006a200241406b200228023020022802341075200228024022030440200220033602440b200241d0006a200228025420022802506b41066a1071200241d0006a10762103410021012002410036022820024200370320200241206a41061071200341017321054119210303402003417b460d01200228022020016a2005200376411f713a00002003417b6a2103200141016a21010c000b000b05200520066a2d0000200141087441801e71722101200341086a210303402003410548450440200220012003417b6a220376411f713a0050200241306a200241d0006a10780c010b0b200541016a21050c010b0b200228025022030440200220033602540b20024100360218200242003703100240200228023420022802306b2203450d00200241106a200310772002280234200228023022016b22034101480d0020022802142001200310521a2002200228021420036a3602140b200241d0006a200241106a200228022020022802241075200228021022030440200220033602140b20004200370200200041086a41003602002000106b2004280208200441016a20022d0000220341017122011b210502402004280204200341017620011b220341016a410a4d0440200020034101743a0000200041016a21010c010b200341116a4170712206104f21012000200336020420002006410172360200200020013602080b200120052003109401200120036a41003a000020004131107220022802542203200228025022056b2000280204220920002d000022064101762201200641017122081b6a2104410a21072008044020002802002206417e71417f6a2107200921010b024020012004200120044b1b220441106a417071417f6a410a2004410a4b1b22042007460d00027f2004410a460440200041016a21082000280208210741000c010b4100200420074d200441016a104f22081b0d0120002d0000220641017104402000280208210741010c010b200041016a210741010b210920082007027f2006410171044020002802040c010b200641fe01714101760b41016a1094012009044020002008360208200020013602042000200441016a4101723602000c010b200020014101743a00000b2005210103402003200546450440200020012d00004190096a2c00001072200141016a21012003417f6a21030c010b0b20050440200220053602540b200228022022030440200220033602240b200228023022030440200220033602340b200241e0006a24000b8f0201087f230041106b22032400200042003702042000200041046a2204360200200141046a210920012802002106034020062009470440200641106a210720002802042108027f0240024020042000280200460440200421010c010b20042105024020082202044003402002220128020422020d000c020b000b03402005280208220128020020054621022001210520020d000b0b200141106a2007109101450d010b20084504402003200436020c20040c020b2003200136020c200141046a0c010b20002003410c6a20071093010b2201280200450440200328020c210241c000104f220541106a2007413010521a200020022001200510370b200610a20121060c010b0b200341106a240020000b2a01017f230041106b2202240020002002410c6a20011093012802002100200241106a2400200041306a0b8f0502037f027e23004180026b2204240020044198016a103220044190016a2205410036020020044188016a220642003703002004420037038001200441e8006a2001103320042d007c04402005200441f8006a2802003602002006200441f0006a29030037030020042004290368370380010b200441c8016a20044180016a103a200041406b2d0000044010100b20044180016a20044198016a103e45044010100b20044180016a103f45044010100b200441286a200020044198016a1040200429032820025a200441306a290300220720035a20032007511b45044010100b200020044198016a1041044010100b200020044180016a1041044010100b200441186a200020044198016a104020042903182107200441206a2903002108200041e0006a220120044198016a10382205200720027d3703002005200820037d2007200254ad7d3703082002210720032108200120044180016a1042200041e4006a470440200441086a200020044180016a10402004290308220820027c2207200854ad200441106a29030020037c7c21080b200120044180016a10382200200837030820002007370300200441d8006a2200200441a0016a290300370300200441e0006a2201200441a8016a280200360200200441c8006a20044190016a2802002205360200200441406b20044188016a2903002207370300200420042903980137035020042004290380012208370338200441d0016a2007370300200441d8016a2005360200200420083703c801200441b8016a2000290300370300200441c0016a2001280200360200200420033703f801200420023703f001200420042903503703b001200441e0016a41b1091013200441b0016a200441c8016a200441f0016a101420044180026a240041010b0b0020002001106d4101730b2a01027f03402001411446044041000f0b200020016a2102200141016a210120022d0000450d000b41010b6b02027f027e230041106b22032400027e200141e0006a220420021042200141e4006a47044020032002103a20042002103c1a20042002103c22022903002105200241086a2903000c010b20032002103a42000b21062000200537030020002006370308200341106a24000b890101067f230041106b22042400200041b4016a22052106200521030340200628020022020440200241046a20022002410d6a200110910122071b21062003200220071b21030c010b0b41002102024020032005460d0020012003410d6a1091010d00200041b0016a2004410c6a2001103628020041216a2d000041004721020b200441106a240020020b5d01047f200041046a22032104200321020340200428020022000440200041046a2000200041106a200110910122051b21042002200020051b21020c010b0b0240200220034704402001200241106a109101450d010b200321020b20020bc50602037f037e230041c0026b22052400200541e8016a22064100360200200541e0016a22074200370300200542003703d801200541d0016a4100360200200541c8016a4200370300200542003703c001200541a8016a2001103320052d00bc0104402006200541b8016a2802003602002007200541b0016a290300370300200520052903a8013703d8010b20054190016a2002103320052d00a4010440200541d0016a200541a0016a280200360200200541c8016a20054198016a29030037030020052005290390013703c0010b200541f8006a1032200541c0016a103f2102200041406b2d0000044010100b200245044010100b200541386a2000200541d8016a1040200529033820035a200541406b290300220820045a20042008511b45044010100b200541286a2000200541d8016a200541f8006a1044200529032820035a200541306a290300220820045a20042008511b45044010100b2000200541d8016a1041044010100b2000200541c0016a1041044010100b200541186a2000200541d8016a104020052903182108200541206a2903002109200041e0006a2202200541d8016a10382201200820037d3703002001200920047d2008200354ad7d370308200541086a2000200541c0016a104020052903082108200541106a29030021092002200541c0016a10382202200320087c220a3703002002200a200854ad200420097c7c37030820004188016a2200200541d8016a1045200541f8006a1038220241086a2903002109200229030021082000200541d8016a1045200541f8006a10382200200920047d2008200354ad7d3703082000200820037d370300200541e8006a2200200541e0016a290300370300200541f0006a2202200541e8016a280200360200200541d8006a200541d0016a2802002201360200200541d0006a200541c8016a2903002208370300200520052903d801370360200520052903c001220937034820054190026a200837030020054198026a20013602002005200937038802200541f8016a200029030037030020054180026a2002280200360200200520043703b802200520033703b002200520052903603703f001200541a0026a41b1091013200541f0016a20054188026a200541b0026a1014200541c0026a24000bbd0102067f027e230041106b220624002001418c016a22072108200721050340200828020022040440200441046a2004200441106a200210910122091b21082005200420091b21050c010b0b027e024020052007460d0042002002200541106a1091010d011a20014188016a2006410c6a2002109301280200220441246a220520031042200441286a460d0020052003103c2204290300210a200441086a2903000c010b42000b210b2000200a3703002000200b370308200641106a24000b810101047f230041106b2203240020002003410c6a2001109301220428020022024504404130104f22022001290000370010200241286a22054200370200200241246a2005360200200241206a200141106a280000360000200241186a200141086a2900003700002000200328020c2004200210370b200341106a2400200241246a0b900102037f017e230041406a22032400200341386a22044100360200200341306a2205420037030020034200370328200341106a2002103320032d002404402004200341206a2802003602002005200341186a290300370300200320032903103703280b20032001200341286a1040200329030021062000200341086a29030037030820002006370300200341406b24000b9f0402037f027e230041e0016b2204240020044188016a2205410036020020044180016a2206420037030020044200370378200441e0006a2001103320042d007404402005200441f0006a2802003602002006200441e8006a290300370300200420042903603703780b200041406b2d0000044010100b200441c8006a103220002d0040044010100b02402002200384500d00200441086a2000200441c8006a200441f8006a10442004290308200441106a29030084500d0010100b024020004188016a2201200441c8006a10422000418c016a460440200442003702ac012004200441a8016a4104723602a801200441a8016a200441f8006a103822002003370308200020023703002001200441c8006a1045200441a8016a10480c010b2001200441c8006a1045200441f8006a103822002003370308200020023703000b200441406b2200200441d8006a280200360200200441386a2201200441d0006a290300370300200441206a20044180016a2903002207370300200441286a20044188016a280200220536020020042004290348370330200420042903782208370318200441b0016a2007370300200441b8016a2005360200200420083703a80120044198016a2001290300370300200441a0016a2000280200360200200420033703d801200420023703d0012004200429033037039001200441c0016a41bc09101320044190016a200441a8016a200441d0016a1014200441e0016a240041000b960302057f017e230041106b22052400024020002001460d00200141046a21062001280200210102402000280208450d00200028020021022000200041046a3602002000410036020820002802042103200041003602042003410036020820022802042203200220031b2103034020032202450d012001200647044020022001290010370010200241206a200141206a280000360000200241186a200141186a29000037000020012903302107200241386a200141386a290300370300200241306a2007370300024020022802082203450440410021030c010b2002200328020022044604402003410036020020032802042204450d01200410a00121030c010b200341003602042004450d00200410a00121030b2000200541086a200241106a10a101210420002005280208200420021037200110a20121010c010b0b0340200228020822020d000b200621010b034020012006460d0120002005410c6a41c000104f220241106a200141106a4130105210a10121032000200528020c200320021037200110a20121010c000b000b200541106a24000bdf0402047f027e230041d0016b22042400200441f8006a22054100360200200441f0006a2206420037030020044200370368200441d0006a2001103320042d006404402005200441e0006a2802003602002006200441d8006a290300370300200420042903503703680b200041406b2d0000044010100b200441386a1032024020004188016a2201200441386a10422000418c016a4604402004420037029c01200420044198016a4104723602980120044198016a200441e8006a103822002003370308200020023703002001200441386a104520044198016a10480c010b2001200441386a104a2200200441e8006a1042200041046a4704402000200441e8006a103c220541086a2903002109200529030021082000200441e8006a10382200200220087c220237030020002002200854ad200320097c7c3703080c010b2000200441e8006a103822002003370308200020023703000b200441306a2200200441c8006a280200360200200441286a2205200441406b290300370300200441106a2206200441f0006a290300370300200441186a2207200441f8006a28020036020020042004290338370320200420042903683703082001200441386a104a200441e8006a103c220141086a29030021022001290300210320044188016a200529030037030020044190016a2000280200360200200441a0016a2006290300370300200441a8016a200728020036020020042004290320370380012004200429030837039801200420023703c801200420033703c001200441b0016a41bc09101320044180016a20044198016a200441c0016a1014200441d0016a240041010b2a01017f230041106b2202240020002002410c6a20011093012802002100200241106a2400200041246a0bc50502047f027e230041d0016b22042400200441f8006a22054100360200200441f0006a2206420037030020044200370368200441d0006a2001103320042d006404402005200441e0006a2802003602002006200441d8006a290300370300200420042903503703680b200041406b2d0000044010100b200441386a1032024020004188016a2201200441386a10422000418c016a4604402004420037029c01200420044198016a4104723602980120044198016a200441e8006a103822004200370308200042003703002001200441386a104520044198016a10480c010b2001200441386a104a2200200441e8006a1042200041046a4704402000200441e8006a103c220541086a2903002108200529030021092000200441e8006a103c1a200820037d2009200254ad7d2108200920027d210902402000200441e8006a103c2205290300200254200541086a290300220220035420022003511b45044020092000200441e8006a103c2205290300582008200541086a29030022025820022008511b0d010b10100b2000200441e8006a103822002008370308200020093703000c010b2000200441e8006a103822004200370308200042003703000b200441306a2200200441c8006a280200360200200441286a2205200441406b290300370300200441106a2206200441f0006a290300370300200441186a2207200441f8006a28020036020020042004290338370320200420042903683703082001200441386a1045200441e8006a1038220141086a29030021022001290300210320044188016a200529030037030020044190016a2000280200360200200441a0016a2006290300370300200441a8016a200728020036020020042004290320370380012004200429030837039801200420023703c801200420033703c001200441b0016a41bc09101320044180016a20044198016a200441c0016a1014200441d0016a240041010bf20102037f017e230041f0006b22042400200441e8006a22054100360200200441e0006a2206420037030020044200370358200441406b2002103320042d005404402005200441d0006a2802003602002006200441c8006a290300370300200420042903403703580b200441386a4100360200200441306a420037030020044200370328200441106a2003103320042d00240440200441386a200441206a280200360200200441306a200441186a290300370300200420042903103703280b20042001200441d8006a200441286a1044200429030021072000200441086a29030037030820002007370300200441f0006a24000bdb0301067f23004190016b22002400200041f0006a22054100360200200041e8006a2206420037030020004200370360200041c8006a2001103320002d005c04402005200041d8006a2802003602002006200041d0006a290300370300200020002903483703600b200041286a2003370300200041386a22094100360200200041106a2005280200360200200020023703202000420037033020002000290360370300200020062903003703082000027f2004104e22012004280208200441016a220720042d000022064101711b22056b220841014e047f200041306a210a20004188016a2009360200200041003602840120002008104f220636028001200020063602782000200636027c2000200620086a36028401034020012005470440200620052d00003a0000200020002802800141016a220636028001200541016a21050c010b0b200a200041f8006a41001050200041f8006a105120042d00000520060b41017104402004280208220741016a210520072c000320072c00024108746a0c010b200441026a210520042c0004200441036a2c00004108746a0b20052c00004110746a20072d00004118746a3602782000413c6a200041f8006a410410521a200028023022050440200020053602340b20004190016a24000b3101017f027f20002d0000220141017104402000280204210120002802080c010b20014101762101200041016a0b20016a0b0c002000410120001b1084010b8e0101017f20002802002002200141046a108e01200028020420026b220341014e044020012802082002200310521a2001200128020820036a3602080b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bb70402037f037e230041e0016b2204240020044188016a2205410036020020044180016a2206420037030020044200370378200441e0006a2001103320042d007404402005200441f0006a2802003602002006200441e8006a290300370300200420042903603703780b200441a8016a102e102f45044010100b200441a8016a1039200441a8016a200441f8006a103e45044010100b200441206a2000200441f8006a1040200429032020025a200441286a290300220720035a20032007511b45044010100b2000200441f8006a1041044010100b200441106a2000200441f8006a104020042903102107200441186a2903002108200041e0006a2201200441f8006a10382205200720027d3703002005200820037d2007200254ad7d370308200441a8016a103920042000200441a8016a104020042903002107200441086a290300210820044190016a1039200120044190016a10382200200220077c220937030020002009200754ad200320087c7c370308200441d0006a220020044180016a290300370300200441d8006a220120044188016a28020036020020042004290378370348200441306a103920044198016a2000290300370300200441a0016a2001280200360200200441b0016a200441386a290300370300200441b8016a200441406b2802003602002004200429034837039001200420042903303703a801200420033703d801200420023703d001200441c0016a41b109101320044190016a200441a8016a200441d0016a1014200441e0016a24000bab0202027f027e230041f0006b22032400200341d8006a102e102f45044010100b200341d8006a1032200341306a2000200341d8006a1040200329033020015a200341386a290300220520025a20022005511b45044010100b200341206a2000200341d8006a104020032903202105200341286a2903002106200041e0006a200341d8006a10382204200520017d3703002004200620027d2005200154ad7d37030820002000290320220520017d370320200041286a2204200429030020027d2005200154ad7d370300200341c8006a200341e0006a2903002205370300200341d0006a200341e8006a2802002204360200200341106a2005370300200341186a200436020020032003290358220537034020032005370308200341086a200120021015200341f0006a24000be50102037f017e230041f0006b22032400200341e8006a22044100360200200341e0006a2205420037030020034200370358200341406b2001103320032d005404402004200341d0006a2802003602002005200341c8006a290300370300200320032903403703580b200341306a102e102f45044010100b200041b0016a200341d8006a105620023a0000200341206a200341e0006a2903002206370300200341286a200341e8006a2802002201360200200341086a2006370300200341106a200136020020032003290358220637031820032006370300200320021023200341f0006a24000b7401037f230041106b2203240020002003410c6a20011036220428020022024504404124104f2202200129000037000d200241216a41003a00002002411d6a200141106a280000360000200241156a200141086a2900003700002000200328020c2004200210370b200341106a2400200241216a0bfa0101037f23004180016b22042400200441f8006a22054100360200200441f0006a2206420037030020044200370368200441d0006a2001103320042d006404402005200441e0006a2802003602002006200441d8006a290300370300200420042903503703680b200441406b102e102f45044010100b200041d8016a200441e8006a105620023a0000200441306a2201200441f0006a290300370300200441386a2205200441f8006a28020036020020042004290368370328200441186a200310582103200441106a2005280200360200200441086a200129030037030020042004290328370300200420022003102820044180016a240041010b4e01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204108f0120000bfa0101037f23004180016b22042400200441f8006a22054100360200200441f0006a2206420037030020044200370368200441d0006a2001103320042d006404402005200441e0006a2802003602002006200441d8006a290300370300200420042903503703680b200441406b102e102f45044010100b20004180026a200441e8006a105620023a0000200441306a2201200441f0006a290300370300200441386a2205200441f8006a28020036020020042004290368370328200441186a200310582103200441106a2005280200360200200441086a200129030037030020042004290328370300200420022003102a20044180016a240041010b9b0802037f047e230041d0016b22072400200741b0016a22084100360200200741a8016a22094200370300200742003703a00120074188016a2001103320072d009c010440200820074198016a280200360200200920074190016a29030037030020072007290388013703a0010b200741f0006a1032200041406b2d0000044010100b20002903800320025820004188036a290300220a2003582003200a511b45044010100b0240200041d8016a2201200741f0006a105b200041dc016a4704402001200741f0006a105c2d00000d010b10100b0240200041b0016a2201200741f0006a105b200041b4016a2209460d002001200741f0006a105c2d0000450d0010100b200428020420042d0000220841017620084101711b41c00047044010100b0240024020004180026a2208200741a0016a105b20004184026a460d002008200741a0016a105c21082001200741a0016a105b210120082d0000450d0020012009460d010b200741a8016a200041b8036a290000370300200741b0016a200041c0036a2800003602002007200041b0036a2900003703a0010b200741c8006a200410582104200504400240200041d4026a2802002201200041d0026a2205280200460d00200041a8026a2004105d200041ac026a460d00101020002802d40221010b0240200041d8026a220828020020014704402001200410581a200020002802d402410c6a22013602d4020c010b200741b8016a2005200120002802d00222096b410c6d41016a105e200120096b410c6d2008105f2201280208200410581a20012001280208410c6a3602082005200110602001106120002802d40221010b200120002802d0026b410c6d417f6a2108200041a8026a2205200741b8016a20041062220928020022014504404130104f220141106a200410581a200141286a4200370300200141206a4200370300200520072802b8012009200110370b200141286a4200370300200141206a2008ad3703002005200410632201290300210c200141086a290300210b0b200741286a2000200741a0016a200741f0006a1044027f2007290328200254200741306a290300220a2003542003200a511b45044020004188016a2201200741a0016a1045200741f0006a1038220541086a29030020037d2005290300220a200254ad7d2103200a20027d21022001200741a0016a1045200741f0006a10380c010b200741186a2000200741f0006a10402007290318210a200741206a290300210d200041e0006a2201200741f0006a10382205200a20027d3703002005200d20037d200a200254ad7d370308200741086a2000200741a0016a1040200741106a29030020037c2007290308220320027c2202200354ad7c21032001200741a0016a10380b220120023703002001200337030820060440200c200b200741386a2004105810260b200741d0016a24000b5d01047f200041046a22032104200321020340200428020022000440200041046a20002000410d6a200110910122051b21042002200020051b21020c010b0b02402002200347044020012002410d6a109101450d010b200321020b20020b2901017f230041106b2202240020002002410c6a200110362802002100200241106a2400200041216a0b5d01047f200041046a22032104200321020340200428020022000440200041046a2000200041106a200110900122051b21042002200020051b21020c010b0b0240200220034704402001200241106a109001450d010b200321020b20020b3101017f2001200028020820002802006b410c6d2200410174220220022001491b41d5aad5aa01200041aad5aad500491b0b4c01017f2000410036020c200041106a2003360200200104402001106e21040b20002004360200200020042002410c6c6a2202360208200020042001410c6c6a36020c2000200236020420000baa0101037f200028020421022000280200210303402002200346450440200128020441746a2204200241746a2202290200370200200441086a200241086a2802003602002002106b2001200128020441746a3602040c010b0b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141746a22013602080c010b0b0b8b0101027f200041046a2103024020002802042200044002400340024002402002200041106a22041090010440200028020022040d012001200036020020000f0b20042002109001450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b2901017f230041106b2202240020002002410c6a200110622802002100200241106a2400200041206a0be80101057f230041106b220424000240200041d4026a280200200041d0026a280200460d00200041a8026a22022001105d200041ac026a460d002002200110632102200420002802d0022002280200410c6c6a1058220328020420042d00002200410176200041017122061b2200200128020420012d00002202410176200241017122021b470d002001280208200141016a20021b21012003280208200341016a20061b210203402000450440410121050c020b2000417f6a210020012d0000210320022d00002106200141016a2101200241016a210220032006460d000b0b200441106a240020050b3601017f230041106b220324002003102e102f45044010100b20004188036a200237030020004180036a2001370300200341106a24000ba40101037f230041406a22022400200241386a22034100360200200241306a2204420037030020024200370328200241106a2001103320022d002404402003200241206a2802003602002004200241186a290300370300200220022903103703280b2002102e102f45044010100b200041b0036a2002290328370000200041c0036a200241386a280200360000200041b8036a200241306a290300370000200241406b24000bbd0202047f027e230041206b22052400200541106a102e102f45044010100b0240200041d4026a280200200041d0026a2802006b2206450440410021000c010b2006410c6d417f6a2207ad220a20015a200250220620061b45044010100b20032004845045044002402003200158200420025820022004511b4504402007ad20035a200450220620061b0d010b10100b2003210a200421090b200541106a410472210803402001200a5a200220095a20022009511b0440410121000541002106200541003602182005420037031020012002200520002802d40220002802d0026b2207047f200541106a2007410c6d106820002802d00220002802d4022008106920052802100520060b2001a7410c6c6a1058102b2002200142017c2204200154ad7c2102200541106a106a200421010c010b0b0b200541206a240020000b2301017f20002001106e220236020020002002360204200020022001410c6c6a3602080b2e00034020002001464504402002280200200010581a20022002280200410c6a3602002000410c6a21000c010b0b0b0e00200028020004402000106f0b0b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2101017f027f20002d00002201410171044020002802040c010b20014101760b450b3901027f41012103034002402002411447047f200020026a2d0000200120026a2d0000460d0141000520030b0f0b200241016a21020c000b000b09002000410c6c104f0b0b002000200028020010700b0900200020013602040bfc0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b200020011088012106200241186a200041086a3602002002410036021441002101200604402006104f21010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a108901200241086a10510c010b200520014d0d002000200120046a3602040b200241206a24000bf70101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b2003104f22022006200510940120002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b4601037f02402002450d0003402002450d0120002d0000220420012d00002205460440200141016a2101200041016a21002002417f6a21020c010b0b200420056b21030b20030bba0101047f20004100360208200042003702002000200128020420012d0000220241017620024101711b4101744101721071200141016a210503402003200128020420012d00002202410176200241017122021b22044f0440200028020020046a41003a000005200028020020036a2001280208200520021b20036a2d000022024105763a00002000280200200128020420012d0000220441017620044101711b6a20036a41016a2002411f713a0000200341016a21030c010b0b0bbe0201057f230041206b22042400200128020421060240200320026b22054101480d002005200128020820066b4c0440034020022003460d02200620022d00003a00002001200128020441016a2206360204200241016a21020c000b000b2001200520066a200128020022056b1088012108200441186a200141086a36020020044100360214200620056b2105200804402008104f21070b200420073602082004200520076a22053602102004200720086a3602142004200536020c03402002200346450440200520022d00003a00002004200428021041016a2205360210200241016a21020c010b0b2001200441086a20061050200441086a1051200128020421060b20002006360204200141003602042000200128020036020020012802082102200141003602082000200236020820014100360200200441206a24000ba50101027f2000280204200028020022016b210241012100037f2002047f20012d000041002000411d764101716b41b3c5d1d0027141002000411c764101716b41dde788ea037141002000411b764101716b41fab384f5017141002000411a764101716b41ed9cc2b20271410020004119764101716b41b2afa9db0371200041057441e0ffffff037173737373737321002002417f6a2102200141016a21010c010520000b0b0b2001017f20002001104f2202360200200020023602042000200120026a3602080bb90101047f230041206b220224000240200028020422032000280208490440200320012d00003a00002000200028020441016a3602040c010b2000200320002802006b220441016a1088012105200241186a200041086a3602004100210320024100360214200504402005104f21030b20022003360208200320046a220420012d00003a00002002200320056a3602142002200436020c2002200441016a3602102000200241086a108901200241086a10510b200241206a24000bd30101057f230041406a22022400200241286a101b22032000290300107c200328020c200341106a28020047044010000b02402003280200220520032802042206100c2204450440410021000c010b410021002002410036022020024200370318200241186a200410712005200620022802182205200228021c20056b100d417f47044020022002280218220041016a200228021c2000417f736a1086012001108701200421000b20022802182204450d002002200436021c0b200328020c22040440200320043602100b200241406b240020000bdb04020e7f027e230041d0016b22022400200241d0006a101b22052000290300107b101920052000290300107c200528020c200541106a28020047044010000b2005280204210620052802002107200241386a101b210320024198016a410036020020024190016a2208420037030020024188016a22094200370300200241f8006a200141106a22042800002200360200200241f0006a200141086a220a290000221137030020012900002110200241106a2011370300200241186a2000360200200242003703800120022010370368200241a8016a220b2011370300200241b0016a220c2000360200200241c0016a220d2011370300200241c8016a220e200036020020022010370308200220103703a001200220103703b80120024180016a200241086a101d2100200228028001210f200041046a101f2003200241e8006a107d2200107e2003200f20002802046a20002802006b1019200241306a20042800002204360200200241286a200a2900002210370300200220012900002211370320200b2010370300200c2004360200200d2010370300200e2004360200200220113703a001200220113703b801200820043602002009201037030020022011370380010240200320024180016a41141021220128020c200141106a280200460440200141046a2103200128020021040c010b200141046a2103100020012802002104200128020c2001280210460d0010000b2007200620042003280200100e200028020022030440200020033602040b200128020c22000440200120003602100b200528020c22010440200520013602100b200241d0016a24000b5301037f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120004200101e210220012802002103200241046a101f200141206a240020030b0b0020002001420010221a0b30002000410036020820004200370200200041011077200028020441fe013a00002000200028020441016a36020420000b6201037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f2000200410800120002802040520020b20002802006a2003200110521a2000200028020420016a3602040b17002000410036020820004200370200200041001080010b3001017f200028020820014904402001108401200028020020002802041052210220002001360208200020023602000b0b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b9b0101047f230041106b220124002001200036020c2000047f41a40c200041086a2202411076220041a40c2802006a220336020041a00c41a00c280200220420026a41076a417871220236020002400240200341107420024d044041a40c200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104105241086a0541000b2100200141106a240020000b1e01017f03402000044020004108762100200141016a21010c010b0b20010b0d00200020012002411c108a010bd10102037f027e230041406a220224002000108b01200241386a2000108c01200228023c2103024002402000280204450d00200341144b0d0020002802002d000041c001490d010b10000b200241306a22004100360200200241286a220442003703002002420037032020022003411420034114491b22036b41346a2002280238200310521a200241186a20002802002200360200200241106a20042903002205370300200220022903202206370308200141106a2000360000200141086a200537000020012006370000200241406b24000b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b6801017f20002802002000280204200141046a108e01200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b750020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d00200010d60120024f0d002003410471044010000c010b200042003702000b02402003411071450d00200010d60120024d0d0020034104710440100020000f0b200042003702000b20000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0bd60101047f2001108d012204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b800301037f200028020445044041000f0b2000108b0141012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b270020022002280200200120006b22016b2202360200200141014e044020022000200110521a0b0b5b01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204104f21032000200236020420002004410172360200200020033602080b200320012002109401200220036a41003a00000b6801047f2000280208200041016a20002d0000220241017122031b2001280208200141016a20012d0000220441017122051b2001280204200441017620051b22012000280204200241017620031b220020012000491b107322022000200149411f7420021b411f760b3a01037f034020024114470440200020026a2d00002203200120026a2d0000220449044041010f0b200241016a2102200320044d0d010b0b41000bf00101037f200120002001463a000c03400240024020002001460d00200128020822022d000c0d002002200228020822032802002204460440024020032802042204450d0020042d000c0d002004410c6a21010c030b2001200228020047044020021095012002280208220228020821030b200241013a000c200341003a000c20031096010f0b02402004450d0020042d000c0d002004410c6a21010c020b2001200228020046044020021096012002280208220228020821030b200241013a000c200341003a000c20031095010b0f0b200241013a000c200320002003463a000c200141013a0000200321010c000b000b8b0101027f200041046a2103024020002802042200044002400340024002402002200041106a22041091010440200028020022040d012001200036020020000f0b20042002109101450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b10002002044020002001200210521a0b0b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040ba40102027f027e230041e0006b22022400200241286a200141106a2800002203360200200241206a200141086a290000220537030020012900002104200241086a2005370300200241106a200336020020022004370318200241386a2005370300200241406b2003360200200241d0006a2005370300200241d8006a200336020020022004370300200220043703302002200437034820002002101d1a200241e0006a24000ba80102027f027e230041e0006b22022400200241106a200141106a2800002203360200200241086a200141086a2900002204370300200220012900002205370300200241206a2004370300200241286a2003360200200241386a2004370300200241406b20033602002002200537031820022005370330200241d8006a2003360200200241d0006a2004370300200220053703482000200241c8006a411410211a200241e0006a24000b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0ba40202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a109b0122023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a109c012103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b2000290200210720002003290200370200200320073702002000290208210720002003290208370208200320073702082003109d01200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2601017f200120006b2201410275210320010440200220002001109f010b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274104f21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1c00200120006b22010440200220016b220220002001109f010b20020b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210521a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b1d01017f03402000220128020022000d00200128020422000d000b20010b5d01017f0240200028020422030440034002402002200341106a109101044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000ba20101037f4101210302402001106c0d0002400240200128020420012d00002202410176200241017122041b220241014604402001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b200210850120026a41016a21030b027f200041186a28020022010440200041086a280200200041146a28020020011081010c010b20000b2201200128020020036a36020020000b2d01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b10211a0b8b1102057f017e230041a0056b2200240010d501100a22021084012203100b200041d0016a200041d8006a200320021086012201410010a601200041d0016a108b0102400240200041d0016a10a701450d0020002802d401450d0020002802d0012d000041c001490d010b10000b20004190016a200041d0016a108c01200028029401220241094f044010000b20002802900121030340200204402002417f6a210220033100002005420886842105200341016a21030c010b0b024002402005500d0041a80a10a80120055104402001410110a9010c020b41ad0a10a80120055104402001410210a9010c020b41b30a10a80120055104402001410310a9010c020b41bb0a10a80120055104402001410410aa010c020b41c40a10a801200551044020004190016a102e210220004190016a410c72102e2103200041b8016a22044200370300200042003703b001200110ab01410447044010000b200041013602c00120002001360280012000200041c0016a3602840120004180016a200210ac0120004180016a200310ac01200041d0016a200120002802c00110a601200041086a200041d0016a10ad012004200041106a290300370300200020002903083703b001200041d0016a10ae01220120004180016a20021058200041c0016a2003105820002903b00120042903001043200041013a0070200041f0006a10af01200110b0010c020b41d10a10a8012005510440200041c0016a102e21022001200041c0016a10b101200041186a200041d0016a10ae01220320004180016a2002105810462000200041206a29030037039801200020002903183703900120004190016a10b201200310b0010c020b41db0a10a80120055104402001410510aa010c020b41e30a10a80120055104402001410610aa010c020b41f40a10a80120055104402001410710aa010c020b41850b10a801200551044020004190016a102e21022000419c016a102e2103200110ab01410347044010000b2000410136028001200020013602d001200020004180016a3602d401200041d0016a200210ac01200041d0016a200310ac01200041286a200041d0016a10ae012201200041c0016a20021058200041f0006a20031058104c2000200041306a29030037038801200020002903283703800120004180016a10b201200110b0010c020b418f0b10a801200551044020004190016a102e2102200041a8016a22034200370300200042003703a001200041b0016a102e2104200110ab01410447044010000b200041013602c00120002001360280012000200041c0016a3602840120004180016a200210ac01200041d0016a200120002802c00110a601200041386a200041d0016a10ad012003200041406b290300370300200020002903383703a001200020002802c00141016a3602c00120004180016a200410ac01200041d0016a10ae01220120004180016a2002105820002903a0012003290300200041c0016a20041058104d200041013a0070200041f0006a10af01200110b0010c020b419d0b10a801200551044020004190016a10b301200120004190016a10b401200041d0016a10ae01220220004180016a20004190016a105820002903a001200041a8016a2903001053200210b0010c020b41ab0b10a801200551044020004200370398012000420037039001200120004190016a10b501200041d0016a10ae0122022000290390012000290398011054200041013a00800120004180016a10af01200210b0010c020b41b00b10a801200551044020004190016a102e2102200041003a009c012000419c016a2103200110ab01410347044010000b200041d0016a2001410110a601200041d0016a200210b601200041d0016a2001410210a601200041d0016a200310b701200041d0016a10ae01220320004180016a2002105820002d009c011055200041013a00c001200041c0016a10af01200310b0010c020b41b70b10a80120055104402001410810b8010c020b41c90b10a80120055104402001410910b8010c020b41d80b10a801200551044020004190016a102e2102200041a8016a22034200370300200042003703a001200041b0016a102e2104200041003b01bc01200110ab01410647044010000b200041013602c00120002001360280012000200041c0016a3602840120004180016a200210ac01200041d0016a200120002802c00110a601200041c8006a200041d0016a10ad012003200041d0006a290300370300200020002903483703a001200020002802c00141016a3602c00120004180016a200410ac0120004180016a200041bc016a10b90120004180016a200041bd016a10b901200041d0016a10ae01220120004180016a2002105820002903a0012003290300200041c0016a2004105820002d00bc0120002d00bd01105a200041013a0070200041f0006a10af01200110b0010c020b41e50b10a801200551044020004180016a102e2102200120004180016a10b1012000200041d0016a10ae01220320004190016a2002105810643a00c001200041c0016a10af01200310b0010c020b41f00b10a801200551044020004200370398012000420037039001200120004190016a10b501200041d0016a10ae0122022000290390012000290398011065200210b0010c020b41f90b10a801200551044020004180016a102e2102200120004180016a10b101200041d0016a10ae01220320004190016a200210581066200310b0010c020b41830c10a8012005520d00200041a8016a22024200370300200042003703a00120004200370398012000420037039001200041a0016a2103200110ab01410347044010000b2000410136028001200020013602d001200020004180016a3602d401200041d0016a20004190016a10ba01200041d0016a200310ba012000200041d0016a10ae01220320002903900120002903980120002903a001200229030010673a00800120004180016a10af01200310b0010c010b10000b10bb01200041a0056a24000bd00202067f017e230041106b220324002001280208220520024b0440200341086a200110da0120012003280208200328020c10d80136020c2003200110da01410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b2000200628020020044114108a011a200341106a24000f0b2003200110da0141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b210520012004360214200120053602102003200641002005200410d80110d9012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b990101037f200028020445044041000f0b2000108b01200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b3601017f230041d0036b22022400200010ab01410147044010000b200210ae01210020022001110200200010b001200241d0036a24000b6901017f23004180046b22022400200241d0036a10b3012000200241d0036a10b401200210ae01210020022002200241f0036a200241d0036a105820022903e003200241e8036a29030020011109003a00ff03200241ff036a10af01200010b00120024180046a24000b2601017f02402000280204450d0020002802002d000041c001490d00200010bc0121010b20010b4501017f230041206b22022400200241086a20002802"; - - private static String BINARY_1 = "00200028020428020010a601200241086a200110b60120002802042200200028020041016a360200200241206a24000ba10102027f027e230041106b220224002001108b0102400240200110a701450d002001280204450d0020012802002d000041c001490d010b10000b200241086a2001108c01200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000be81f010f7f230041f0016b220124002000420037030820004200370300200042a99587b1dee0a9a249370310200041106a200041206a10bd0145044020002000290300370320200041286a200041086a2903003703000b200041003a0030200041386a220342bbc8e8cdd5bd82ea73370300200141d0006a101b22022003290300107c200228020c200241106a28020047044010000b02402002280200220520022802042206100c2203450d00200141003602a801200142003703a001200141a0016a200310712005200620012802a001220720012802a40120076b100d417f470440200141c8016a20012802a001220441016a20012802a4012004417f736a108601200041406b10b701200321040b20012802a0012203450d00200120033602a4010b200228020c22030440200220033602100b2004450440200020002d00303a00400b200041cc006a22024200370200200041e4006a22044200370200200041d8006a220342debbf3d6b6bead8a5b37030020002002360248200041e0006a22052004360200200141d0006a101b22022003290300107c200228020c200241106a28020047044010000b02402002280200220620022802042207100c2203450440410021040c010b41002104200141003602a801200142003703a001200141a0016a200310712006200720012802a001220820012802a40120086b100d417f470440200141c8016a20012802a001220441016a20012802a4012004417f736a108601200510be01200321040b20012802a0012203450d00200120033602a4010b200228020c22030440200220033602100b20044504402005200041c8006a10480b200041f4006a220842003702002000418c016a220d420037020020004180016a220242c3adc39cc39cd0fca97f3703002000200836027020004188016a2204200d360200200141f8006a101b22092002290300107c200928020c200941106a28020047044010000b02402009280200220320092802042205100c220e450440410021020c010b410021022001410036023020014200370328200141286a200e10712003200520012802282206200128022c20066b100d417f47044002400240200141386a2001280228220241016a200128022c2002417f736a1086012202280204450d0020022802002d000041c001490d00200141b8016a200210bf0120014190016a200210c001200141e0016a410472210b200141e8006a2106200141e0006a2103200141d8006a2105034020012802bc0120012802940146044020012802c001200128029801460d030b200141a0016a200141b8016a10c1012003410036020020054200370300200142003703502001420037036820012006360264200141a0016a10c201410247044010000b200141206a22024100360200200141186a2207420037030020014200370310200141c8016a200141a0016a410010a601200141c8016a200141106a108701200520072903003703002003200228020036020020012001290310370350200142003702e4012001200b3602e001200141c8016a200141a0016a410110a601200141c8016a200141e0016a10be01200120012802e001360264200120012802e4012207360268200120012802e801220236026c02402002450440200120063602640c010b20072006360208200142003702e4012001200b3602e0010b2004200141c8016a200141d0006a10930122072802004504404130104f22022001290350370210200241286a220a2001280268220f3602002002412c6a200128026c220c360200200241186a2005290300370200200241206a20032903003702000240200c4504402002200a3602240c010b200f200a36020820014200370368200120063602640b200420012802c8012007200210370b200141b8016a10c3010c000b000b10000b200e21020b20012802282203450d002001200336022c0b200928020c22030440200920033602100b024020020d00200028027021020240200028029001450d0020002802880121032000200d360288012000410036029001200028028c0121052000410036028c012005410036020820032802042205200320051b2105034020052203450d012002200847044020032002290010370010200341206a200241206a280000360000200341186a200241186a290000370000200341246a200241246a1048024020032802082205450440410021050c010b2003200528020022064604402005410036020020052802042206450d01200610a00121050c010b200541003602042006450d00200610a00121050b2004200141d0006a200341106a10a101210620042001280250200620031037200210a20121020c010b0b0340200328020822030d000b200821020b034020022008460d014130104f220341106a2205200241106a10c4012004200141d0006a200510a101210520042001280250200520031037200210a20121020c000b000b2000419c016a22024200370200200041b4016a22044200370200200041a8016a220342e7c7bf82d1e9bc96533703002000200236029801200041b0016a220220043602002003200210c501450440200220004198016a10c6010b200041c4016a22024200370200200041dc016a22044200370200200041d0016a220342a3b2d5acf19299801f370300200020023602c001200041d8016a220220043602002003200210c5014504402002200041c0016a10c6010b200041ec016a2202420037020020004184026a22044200370200200041f8016a220342c6cbe2ce97c196d923370300200020023602e80120004180026a220220043602002003200210c5014504402002200041e8016a10c6010b20004194026a22064200370200200041ac026a220c4200370200200041a0026a220242d2c2dab689b0e2c2f9003703002000200636029002200041a8026a2204200c360200200141386a101b220a2002290300107c200a28020c200a41106a28020047044010000b0240200a2802002203200a2802042205100c2209450440410021020c010b410021022001410036023020014200370328200141286a200910712003200520012802282207200128022c20076b100d417f47044002400240200141106a2001280228220241016a200128022c2002417f736a1086012202280204450d0020022802002d000041c001490d00200141b8016a200210bf0120014190016a200210c001200141e0006a220541086a2107200141e8006a210b034020012802bc0120012802940146044020012802c001200128029801460d030b200141f8006a200141b8016a10c101200141d0006a102e21022007420037030020054200370300200141f8006a10c201410247044010000b200141e0016a102e2103200141c8016a200141f8006a410010a601200141c8016a200310b6012002200310c701200141a0016a200141f8006a410110a601200141c8016a200141a0016a410010a6012001200141c8016a10ad01200b200141086a290300370300200120012903003703602004200141c8016a2002106222082802004504404130104f220341186a2001280258360200200320012903503702102002106b200341286a2007290300370300200341206a2005290300370300200420012802c8012008200310370b200141b8016a10c3010c000b000b10000b200921020b20012802282203450d002001200336022c0b200a28020c22030440200a20033602100b024020020d002000280290022102024020002802b002450d0020002802a80221032000200c3602a802200041003602b00220002802ac022105200041003602ac022005410036020820032802042205200320051b2105034020052203450d0120022006470440200341106a200241106a10c8012107200341286a200241286a290300370300200341206a2002290320370300024020032802082205450440410021050c010b2003200528020022084604402005410036020020052802042208450d01200810a00121050c010b200541003602042008450d00200810a00121050b2004200141d0006a200710c901210720042001280250200720031037200210a20121020c010b0b0340200328020822030d000b200621020b034020022006460d014130104f220341106a2205200241106a10ca012004200141d0006a200510c901210520042001280250200520031037200210a20121020c000b000b200042003702b80241002102200041d8026a4100360200200041d0026a22034200370200200041c8026a220442cab9b2abdda68f924b370300200041c0026a4100360200200141c8016a101b22072004290300107c200728020c200741106a28020047044010000b200041d4026a210502402007280200220420072802042206100c220b450d00200141003602c001200142003703b801200141b8016a200b10712004200620012802b801220820012802bc0120086b100d417f47044002400240200141a0016a20012802b801220241016a20012802bc012002417f736a1086012202280204450d0020022802002d000041c001490d00200210ab01210420002802d80220002802d00222066b410c6d20044904402003200141d0006a200420002802d40220066b410c6d200041d8026a105f22041060200410610b200141386a200210bf01200141106a200210c001200041d8026a21080340200128023c200128021446044020012802402001280218460d030b200141d0006a200141386a10c101200141d0006a200141e0016a102e220410b601024020002802d402220220002802d802490440200220012903e001370200200241086a200141e8016a2802003602002004106b20052005280200410c6a3602000c010b200141f8006a2003200220032802006b410c6d220241016a105e20022008105f2102200128028001220620012903e001370200200641086a200141e8016a2802003602002004106b2001200128028001410c6a36028001200320021060200210610b200141386a10c3010c000b000b10000b200b21020b20012802b8012204450d00200120043602bc010b200728020c22040440200720043602100b024020020d0020002802bc02220620002802b80222046b410c6d220720002802d80220002802d00222026b410c6d4d04402007200528020020026b410c6d22084b0440200420042008410c6c6a2203200210cb011a20032006200510690c020b200320042006200210cb0110700c010b200204402003106f200041003602d802200042003702d0020b200320032007105e106820042006200510690b200042003703e002200041e8026a22044200370300200041f0026a22024286a2a280c5fcaef8f800370300200220004180036a10bd01450440200020002903e0023703800320004188036a20042903003703000b2000420037009003200041a0036a410036000020004198036a4200370000200041b0036a22024200370000200041a8036a220442dc95efdbc683a7977f370300200041b8036a4200370000200041c0036a4100360000200420021079450440200220004190036a2204290300370300200241106a200441106a280200360200200241086a200441086a2903003703000b200141f0016a240020000b6001027f230041206b22022400200241086a101b220120002d000010cc011019200120002d00001025200128020c200141106a28020047044010000b200128020020012802041011200128020c22000440200120003602100b200241206a24000b8b14020b7f027e230041d0016b22022400200041a8036a200041b0036a107a200041f0026a20004180036a10cd01200241306a101b2204200041c8026a2201290300107b101920042001290300107c200428020c200441106a28020047044010000b2004280204210620042802002109200241b8016a101b2107200241e8006a4100360200200241e0006a4200370300200241d8006a420037030020024200370350024020002802d002200041d4026a280200460440200241d0006a10ce011a0c010b200241d0006a4100101c210320002802d402210520002802d002210103402001200546044020034101101c1a052003200241186a2001105810a3011a2001410c6a21010c010b0b0b20022802502101200241d0006a410472101f2007200241186a107d2208107e2007200120082802046a20082802006b1019200720002802d40220002802d0026b410c6d1020210320002802d402210520002802d00221010340200120054704402003200241d0006a2001105810a4012001410c6a21010c010b0b0240200328020c200341106a280200460440200341046a2101200328020021050c010b200341046a2101100020032802002105200328020c2003280210460d0010000b2009200620052001280200100e200828020022010440200820013602040b200328020c22010440200320013602100b200428020c22010440200420013602100b200041d0026a106a200041b8026a106a200241b8016a101b2206200041a0026a2201290300107b101920062001290300107c200628020c200641106a28020047044010000b2006280204210a2006280200210b200241186a101b2108200241c8006a4100360200200241406b4200370300200241386a4200370300200242003703300240200041b0026a280200450440200241306a10ce011a0c010b200041ac026a2103200241306a4100101c210520002802a8022101200241e8006a210403402001200346044020054101101c1a05200241d0006a200141106a10ca0120054100101c200241a0016a200241d0006a105810a3014100101c20022903602004290300101e4101101c4101101c1a200110a20121010c010b0b0b20022802302101200241306a410472101f2008200241a0016a107d2209107e2008200120092802046a20092802006b1019200820002802b00210202104200041ac026a2108200241d0006a410472210720002802a80221010340200120084704402004410210202203200241306a200141106a105810a401200341011020210320024100360268200242003703602002420037035820024200370350200241d0006a2001290320200141286a2205290300101e1a20032002280250101920032001290320200529030010221a2007101f200110a20121010c010b0b0240200428020c200441106a280200460440200441046a2101200428020021030c010b200441046a2101100020042802002103200428020c2004280210460d0010000b200b200a20032001280200100e200928020022010440200920013602040b200428020c22010440200420013602100b200628020c22010440200620013602100b200041f8016a20004180026a10cf01200041d0016a200041d8016a10cf01200041a8016a200041b0016a10cf01200241b8016a101b220620004180016a2201290300107b101920062001290300107c200628020c200641106a28020047044010000b2006280204210a2006280200210b200241186a101b2109200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330024020004190016a280200450440200241306a10ce011a0c010b2000418c016a2104200241306a4100101c2108200241e4006a2107200028028801210103402001200446044020084101101c1a05200241d0006a200141106a10c40120084100101c210520024180016a200241e0006a2802002203360200200241f8006a200241d8006a290300220c370300200241106a2003360200200241086a200c37030020022002290350220d37037020024190016a200c37030020024198016a2003360200200241a8016a200c370300200241b0016a20033602002002200d3703002002200d370388012002200d3703a00120052002101d200710d0014101101c1a200110a20121010c010b0b0b20022802302101200241306a410472101f2009200241a0016a107d2207107e2009200120072802046a20072802006b10192009200028029001102021042000418c016a210820002802880121010340200120084704402004410210202105200241406b200141206a2800002203360200200241386a200141186a290000220c37030020022001290010220d370330200241f8006a200c37030020024180016a200336020020024190016a200c37030020024198016a20033602002002200d3703702002200d37038801200241e0006a2003360200200241d8006a200c3703002002200d3703502005200241d0006a41141021200141246a10d101200110a20121010c010b0b0240200428020c200441106a280200460440200441046a2101200428020021030c010b200441046a2101100020042802002103200428020c2004280210460d0010000b200b200a20032001280200100e200728020022010440200720013602040b200428020c22010440200420013602100b200628020c22010440200620013602100b200241306a101b2203200041d8006a2201290300107b101920032001290300107c200041e0006a2104200328020c200341106a28020047044010000b2003280204210820032802002107200241b8016a101b2101200241e8006a4100360200200241e0006a4200370300200241d8006a420037030020024200370350200241d0006a200410d0011a20022802502106200241d0006a410472101f2001200241d0006a107d2205107e2001200620052802046a20052802006b10192001200410d1010240200128020c200141106a280200460440200141046a2104200128020021060c010b200141046a2104100020012802002106200128020c2001280210460d0010000b2007200820062004280200100e200528020022040440200520043602040b200128020c22050440200120053602100b200328020c22010440200320013602100b200241d0006a101b2203200041386a2201290300107b101920032001290300107c200328020c200341106a28020047044010000b2003280204210420032802002108200241306a101b210120002d004010cc0121072001200241b8016a107d2205107e2001200720052802046a20052802006b1019200120002d004010250240200128020c200141106a280200460440200141046a2107200128020021060c010b200141046a2107100020012802002106200128020c2001280210460d0010000b2008200420062007280200100e200528020022040440200520043602040b200128020c22050440200120053602100b200328020c22010440200320013602100b200041106a200041206a10cd01200241d0016a24000b3701017f230041206b22022400200010ab01410247044010000b200241086a2000410110a601200241086a200110b601200241206a24000b6f01037f230041206b22022400200241086a101b22012000290300200041086a220329030010d20110192001200029030020032903001022220028020c200041106a28020047044010000b200028020020002802041011200028020c22010440200020013602100b200241206a24000b18002000102e1a200041186a4200370300200042003703100b7002017f017e230041306b22022400200010ab01410347044010000b200241186a2000410110a601200241186a200110b601200241186a2000410210a601200241086a200241186a10ad0120022903082103200141186a200241106a29030037030020012003370310200241306a24000b5702017f017e230041306b22022400200010ab01410247044010000b200241186a2000410110a601200241086a200241186a10ad01200229030821032001200241106a29030037030820012003370300200241306a24000ba40201057f230041206b22022400024002402000280204044020002802002d000041c001490d010b200241086a102e1a0c010b200241186a2000108c012000108d0121030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206104f21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a10c701200241206a24000b880101037f230041106b220224002000108b0102400240200010a701450d002000280204450d0020002802002d000041c001490d010b10000b200241086a2000108c01200228020c220041024f044010000b200228020821030340200004402000417f6a210020032d00002104200341016a21030c010b0b200120044100473a0000200241106a24000bdb0101047f23004190046b22022400200241d0036a102e2104200241003a00dc03200241e0036a102e2105200241dc036a2103200010ab01410447044010000b200241013602f00320022000360280042002200241f0036a3602840420024180046a200410ac012002200020022802f00310a6012002200310b701200220022802f00341016a3602f00320024180046a200510ac01200210ae0121032002200220024180046a2004105820022d00dc03410047200241f0036a2005105820011107003a008f042002418f046a10af01200310b00120024190046a24000b4501017f230041206b22022400200241086a2000280200200028020428020010a601200241086a200110b70120002802042200200028020041016a360200200241206a24000b6502017f017e230041306b22022400200241186a2000280200200028020428020010a601200241086a200241186a10ad01200229030821032001200241106a2903003703082001200337030020002802042200200028020041016a360200200241306a24000b880101037f41900c410136020041940c2802002100034020000440034041980c41980c2802002201417f6a2202360200200141014845044041900c4100360200200020024102746a22004184016a280200200041046a28020011020041900c410136020041940c28020021000c010b0b41980c412036020041940c200028020022003602000c010b0b0b820101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a200010da01200128020c210003402000450d0120014100200128020822032003200010d80122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf50102057f017e230041d0006b22022400200241386a101b22032000290300107c200328020c200341106a28020047044010000b02402003280200220520032802042206100c2204450440410021000c010b410021002002410036023020024200370328200241286a200410712005200620022802282205200228022c20056b100d417f4704402002200241106a2002280228220041016a200228022c2000417f736a10860110ad01200229030021072001200241086a29030037030820012007370300200421000b20022802282204450d002002200436022c0b200328020c22040440200320043602100b200241d0006a240020000bc30302047f027e230041b0016b22022400024002402000280204450d0020002802002d000041c001490d00200241f0006a200010bf01200241e0006a200010c001200241386a2105200241206a210003402002280274200228026446044020022802782002280268460d030b200241c8006a200241f0006a10c1012005420037030020004100360200200242003703302002420037031820024200370310200241c8006a10c201410247044010000b200241a8016a22034100360200200241a0016a22044200370300200242003703980120024180016a200241c8006a410010a60120024180016a20024198016a1087012000200328020036020020022002290398013703102002200429030037031820024180016a200241c8006a410110a601200220024180016a10ad012005200241086a2903002206370300200220022903002207370330200120024180016a200241106a109301220428020045044041c000104f220341386a2006370300200341306a2007370300200341186a200229031837030020032002290310370310200341206a200028020036020020012002280280012004200310370b200241f0006a10c3010c000b000b10000b200241b0016a24000b0b0020002001410110d3010b0b0020002001410010d3010b170020002001280204200141086a280200411c108a011a0b220002402000280204044020002802002d000041bf014b0d010b10000b200010bc010bb70102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a200141002004200210d80110d90120002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b390020002001290200370200200041106a200141106a280200360200200041086a200141086a290200370200200041146a200141146a103b1a0be20401077f230041c0016b22022400200241286a101b22052000290300107c200528020c200541106a28020047044010000b02402005280200220320052802042204100c2207450440410021000c010b410021002002410036022020024200370318200241186a200710712003200420022802182206200228021c20066b100d417f4704400240024020022002280218220041016a200228021c2000417f736a1086012200280204450d0020002802002d000041c001490d0020024180016a200010bf01200241f0006a200010c001200241d0006a2100200241c8006a2103034020022802840120022802744604402002280288012002280278460d030b200241d8006a20024180016a10c101200041003602002003420037030020024200370340200241003a0054200241d8006a10c201410247044010000b200241b8016a22044100360200200241b0016a22064200370300200242003703a80120024190016a200241d8006a410010a60120024190016a200241a8016a1087012003200629030037030020002004280200360200200220022903a80137034020024190016a200241d8006a410110a60120024190016a2002418f016a10b701200220022d008f0122063a0054200120024190016a200241406b103622082802004504404124104f2204200229034037000d200441216a20063a00002004411d6a2000280200360000200441156a200329030037000020012002280290012008200410370b20024180016a10c3010c000b000b10000b200721000b20022802182203450d002002200336021c0b200528020c22030440200520033602100b200241c0016a240020000ba30301057f230041106b22052400024020002001460d00200141046a21062001280200210102402000280208450d00200028020021022000200041046a3602002000410036020820002802042103200041003602042003410036020820022802042203200220031b2103034020032202450d01200120064704402002200129000d37000d2002411d6a2001411d6a280000360000200241156a200141156a290000370000200241216a200141216a2d00003a0000024020022802082203450440410021030c010b2002200328020022044604402003410036020020032802042204450d01200410a00121030c010b200341003602042004450d00200410a00121030b2000200541086a2002410d6a10d401210420002005280208200420021037200110a20121010c010b0b0340200228020822020d000b200621010b034020012006460d014124104f2202200129000d37000d2002411a6a2001411a6a290000370000200241156a200141156a29000037000020002005410c6a2002410d6a10d40121032000200528020c200320021037200110a20121010c000b000b200541106a24000b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a2802003602002001106b0b940201047f20002001470440200128020420012d00002202410176200241017122041b2102200141016a210320012802082105410a21012005200320041b210420002d0000410171220304402000280200417e71417f6a21010b200220014d0440027f2003044020002802080c010b200041016a0b210120020440200120042002109f010b200120026a41003a000020002d000041017104402000200236020420000f0b200020024101743a000020000f0b416f2103200141e6ffffff074d0440410b20014101742201200220022001491b220141106a4170712001410b491b21030b2003104f220120042002109401200020023602042000200341017236020020002001360208200120026a41003a00000b20000b5d01017f0240200028020422030440034002402002200341106a109001044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b23002000200110581a200041186a200141186a290300370300200020012903103703100b2800034020002001464504402002200010c8011a2002410c6a21022000410c6a21000c010b0b20020b5801027f230041206b22012400200141186a4100360200200141106a4200370300200141086a4200370300200142003703002001200041ff01714100471024210020012802002102200041046a101f200141206a240020020b9a0201077f230041406a22042400200441286a101b22032000290300107b101920032000290300107c200328020c200341106a28020047044010000b2003280204210620032802002107200441106a101b21022001290300200141086a220529030010d201210820022004107d2200107e2002200820002802046a20002802006b101902402002200129030020052903001022220128020c200141106a280200460440200141046a2102200128020021050c010b200141046a2102100020012802002105200128020c2001280210460d0010000b2007200620052002280200100e200028020022020440200020023602040b200128020c22000440200120003602100b200328020c22010440200320013602100b200441406b24000b3c01017f027f200041186a28020022010440200041086a280200200041146a28020020011081010c010b20000b2201200128020041016a36020020000bdd06020c7f027e230041e0016b22022400200241306a101b22052000290300107b101920052000290300107c200528020c200541106a28020047044010000b2005280204210b2005280200210c200241186a101b2107200241e0006a4100360200200241d8006a4200370300200241d0006a42003703002002420037034802402001280208450440200241c8006a10ce011a0c010b200141046a210d200241c8006a4100101c210a2001280200210003402000200d460440200a4101101c1a05200241f8006a2000411d6a2800002204360200200241f0006a200041156a290000220e3703002002200029000d220f370368200041216a2d0000210820024190016a2203200436020020024188016a2209200e3703002002200f37038001200a4100101c2106200241a8016a20032802002204360200200241a0016a2009290300220e370300200241106a2004360200200241086a200e3703002002200229038001220f37039801200241b8016a200e370300200241c0016a2004360200200241d0016a200e370300200241d8016a20043602002002200f3703002002200f3703b0012002200f3703c80120062002101d200841004710244101101c1a200010a20121000c010b0b0b20022802482100200241c8006a410472101f2007200241c8016a107d2206107e2007200020062802046a20062802006b10192007200128020810202103200141046a21092001280200210003402000200946450440200341021020210820024190016a2000411d6a280000220436020020024188016a200041156a290000220e3703002002200029000d220f37038001200241a0016a200e370300200241a8016a2004360200200241b8016a200e370300200241c0016a20043602002002200f370398012002200f3703b001200241d8006a2004360200200241d0006a200e3703002002200f3703482008200241c8006a41141021200041216a2d00001025200010a20121000c010b0b0240200328020c200341106a280200460440200341046a2100200328020021040c010b200341046a2100100020032802002104200328020c2003280210460d0010000b200c200b20042000280200100e200628020022000440200620003602040b200328020c22000440200320003602100b200528020c22000440200520003602100b200241e0016a24000bf50202047f067e230041b0016b22022400027f2001280208450440200010ce010c010b20004100101c2103200141046a210420012802002101037f2001200446047f20034101101c05200241386a200141286a2903002206370300200241306a200141206a29030022073703002002200129031022083703202002200141186a2903002209370328200141386a290300210a2001290330210b200241d8006a2006370300200241d0006a22002007370300200220093703482002200837034020034100101c2105200241f8006a20002802002200360200200241f0006a20022903482206370300200241186a2000360200200241106a200637030020022002290340220737036820024188016a200637030020024190016a2000360200200241a0016a2006370300200241a8016a200036020020022007370308200220073703800120022007370398012005200241086a101d200b200a101e4101101c1a200110a20121010c010b0b0b2101200241b0016a240020010bed0102047f027e230041e0006b220224002000200128020810202103200141046a210420012802002101034020012004460440200241e0006a2400052003410210202105200241106a200141206a2800002200360200200241086a200141186a2900002206370300200220012900102207370300200241206a2006370300200241286a2000360200200241386a2006370300200241406b20003602002002200737031820022007370330200241d8006a2000360200200241d0006a2006370300200220073703482005200241c8006a411410212001290330200141386a29030010221a200110a20121010c010b0b0b5301037f230041206b22022400200241186a4100360200200241106a4200370300200241086a420037030020024200370300200220002001101e210320022802002104200341046a101f200241206a240020040be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a200110da0120004100200428020c220120042802082202200110d80122032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b5d01017f02402000280204220304400340024020022003410d6a109101044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3501017f230041106b220041b08c0436020c419c0c200028020c41076a417871220036020041a00c200036020041a40c3f003602000b3001017f200028020445044041000f0b4101210120002802002c0000417f4c047f200010d7012000108d016a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2901017f230041206b22022400200241086a200020014114108a0110d6012100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2401017f2001108d01220220012802044b044010000b20002001200110d701200210d9010b7b01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210046a10dc01200120002802006a22012002200110050c010b0b0b3701017f200028020820014904402001108401200028020020002802041052210220002001360208200020023602000b200020013602040b0b8d0402004180080b03617478004190080bfc03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff71707a7279397838676632747664773073336a6e35346b686365366d7561376c005472616e73666572457600417070726f76616c457600556e706175736545760050617573654576004c6f674576656e7445760056616c696461746557616c6c657445760056616c69646174655075626c697368657245760056616c696461746546696c65457600467265657a654576004275726e457600696e697400706175736500756e7061757365005472616e73666572005472616e7366657246726f6d0042616c616e63654f6600417070726f766500496e637265617365417070726f76616c004465637265617365417070726f76616c00416c6c6f77616e636500546f6b656e46616c6c6261636b005472616e73666572546f6b656e004275726e00467265657a650056616c69646174655075626c69736865720056616c696461746557616c6c65740056616c696461746546696c650056657269667946696c650053657450726963650053657457616c6c6574004c69737446696c6573"; - - public static String BINARY = BINARY_0 + BINARY_1; - - public static final String FUNC_TRANSFERFROM = "TransferFrom"; - - public static final String FUNC_APPROVE = "Approve"; - - public static final String FUNC_VALIDATEFILE = "ValidateFile"; - - public static final String FUNC_PAUSE = "pause"; - - public static final String FUNC_UNPAUSE = "unpause"; - - public static final String FUNC_TRANSFER = "Transfer"; - - public static final String FUNC_VERIFYFILE = "VerifyFile"; - - public static final String FUNC_BALANCEOF = "BalanceOf"; - - public static final String FUNC_TRANSFERTOKEN = "TransferToken"; - - public static final String FUNC_INCREASEAPPROVAL = "IncreaseApproval"; - - public static final String FUNC_DECREASEAPPROVAL = "DecreaseApproval"; - - public static final String FUNC_ALLOWANCE = "Allowance"; - - public static final String FUNC_TOKENFALLBACK = "TokenFallback"; - - public static final String FUNC_BURN = "Burn"; - - public static final String FUNC_FREEZE = "Freeze"; - - public static final String FUNC_VALIDATEPUBLISHER = "ValidatePublisher"; - - public static final String FUNC_VALIDATEWALLET = "ValidateWallet"; - - public static final String FUNC_SETPRICE = "SetPrice"; - - public static final String FUNC_SETWALLET = "SetWallet"; - - public static final String FUNC_LISTFILES = "ListFiles"; - - public static final WasmEvent TRANSFEREV_EVENT = new WasmEvent("TransferEv", Arrays.asList(), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent APPROVALEV_EVENT = new WasmEvent("ApprovalEv", Arrays.asList(), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent BURNEV_EVENT = new WasmEvent("BurnEv", Arrays.asList(), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Uint128.class))); - ; - - public static final WasmEvent FREEZEEV_EVENT = new WasmEvent("FreezeEv", Arrays.asList(), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Boolean.class))); - ; - - public static final WasmEvent VALIDATEFILEEV_EVENT = new WasmEvent("ValidateFileEv", Arrays.asList(), Arrays.asList(new WasmEventParameter(Uint128.class) , new WasmEventParameter(String.class))); - ; - - public static final WasmEvent VALIDATEPUBLISHEREV_EVENT = new WasmEvent("ValidatePublisherEv", Arrays.asList(), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Boolean.class) , new WasmEventParameter(String.class))); - ; - - public static final WasmEvent VALIDATEWALLETEV_EVENT = new WasmEvent("ValidateWalletEv", Arrays.asList(), Arrays.asList(new WasmEventParameter(WasmAddress.class) , new WasmEventParameter(Boolean.class) , new WasmEventParameter(String.class))); - ; - - public static final WasmEvent LOGEVENTEV_EVENT = new WasmEvent("LogEventEv", Arrays.asList(), Arrays.asList(new WasmEventParameter(Uint128.class) , new WasmEventParameter(String.class))); - ; - - public static final WasmEvent PAUSEEV_EVENT = new WasmEvent("PauseEv", Arrays.asList(), Arrays.asList()); - ; - - public static final WasmEvent UNPAUSEEV_EVENT = new WasmEvent("UnpauseEv", Arrays.asList(), Arrays.asList()); - ; - - protected VIDToken(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected VIDToken(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public RemoteCall TransferFrom(String from_addr, String to_addr, Uint128 value) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFERFROM, Arrays.asList(from_addr,to_addr,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall TransferFrom(String from_addr, String to_addr, Uint128 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFERFROM, Arrays.asList(from_addr,to_addr,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall Approve(String spender_addr, Uint128 value) { - final WasmFunction function = new WasmFunction(FUNC_APPROVE, Arrays.asList(spender_addr,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall Approve(String spender_addr, Uint128 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_APPROVE, Arrays.asList(spender_addr,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall ValidateFile(String to_addr, Uint128 payment, String data, Boolean store, Boolean log) { - final WasmFunction function = new WasmFunction(FUNC_VALIDATEFILE, Arrays.asList(to_addr,payment,data,store,log), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall ValidateFile(String to_addr, Uint128 payment, String data, Boolean store, Boolean log, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_VALIDATEFILE, Arrays.asList(to_addr,payment,data,store,log), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public List getTransferEvEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(TRANSFEREV_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - TransferEvEventResponse typedResponse = new TransferEvEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (WasmAddress) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint128) eventValues.getNonIndexedValues().get(2); - responses.add(typedResponse); - } - return responses; - } - - public Observable transferEvEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public TransferEvEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(TRANSFEREV_EVENT, log); - TransferEvEventResponse typedResponse = new TransferEvEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (WasmAddress) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint128) eventValues.getNonIndexedValues().get(2); - return typedResponse; - } - }); - } - - public Observable transferEvEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(TRANSFEREV_EVENT)); - return transferEvEventObservable(filter); - } - - public List getApprovalEvEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(APPROVALEV_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - ApprovalEvEventResponse typedResponse = new ApprovalEvEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (WasmAddress) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint128) eventValues.getNonIndexedValues().get(2); - responses.add(typedResponse); - } - return responses; - } - - public Observable approvalEvEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ApprovalEvEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(APPROVALEV_EVENT, log); - ApprovalEvEventResponse typedResponse = new ApprovalEvEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (WasmAddress) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (Uint128) eventValues.getNonIndexedValues().get(2); - return typedResponse; - } - }); - } - - public Observable approvalEvEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(APPROVALEV_EVENT)); - return approvalEvEventObservable(filter); - } - - public List getBurnEvEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(BURNEV_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - BurnEvEventResponse typedResponse = new BurnEvEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable burnEvEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public BurnEvEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(BURNEV_EVENT, log); - BurnEvEventResponse typedResponse = new BurnEvEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Uint128) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable burnEvEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(BURNEV_EVENT)); - return burnEvEventObservable(filter); - } - - public List getFreezeEvEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(FREEZEEV_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - FreezeEvEventResponse typedResponse = new FreezeEvEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Boolean) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable freezeEvEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public FreezeEvEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(FREEZEEV_EVENT, log); - FreezeEvEventResponse typedResponse = new FreezeEvEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Boolean) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable freezeEvEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(FREEZEEV_EVENT)); - return freezeEvEventObservable(filter); - } - - public List getValidateFileEvEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(VALIDATEFILEEV_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - ValidateFileEvEventResponse typedResponse = new ValidateFileEvEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (String) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable validateFileEvEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ValidateFileEvEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(VALIDATEFILEEV_EVENT, log); - ValidateFileEvEventResponse typedResponse = new ValidateFileEvEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (String) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable validateFileEvEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(VALIDATEFILEEV_EVENT)); - return validateFileEvEventObservable(filter); - } - - public List getValidatePublisherEvEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(VALIDATEPUBLISHEREV_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - ValidatePublisherEvEventResponse typedResponse = new ValidatePublisherEvEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Boolean) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (String) eventValues.getNonIndexedValues().get(2); - responses.add(typedResponse); - } - return responses; - } - - public Observable validatePublisherEvEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ValidatePublisherEvEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(VALIDATEPUBLISHEREV_EVENT, log); - ValidatePublisherEvEventResponse typedResponse = new ValidatePublisherEvEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Boolean) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (String) eventValues.getNonIndexedValues().get(2); - return typedResponse; - } - }); - } - - public Observable validatePublisherEvEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(VALIDATEPUBLISHEREV_EVENT)); - return validatePublisherEvEventObservable(filter); - } - - public List getValidateWalletEvEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(VALIDATEWALLETEV_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - ValidateWalletEvEventResponse typedResponse = new ValidateWalletEvEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Boolean) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (String) eventValues.getNonIndexedValues().get(2); - responses.add(typedResponse); - } - return responses; - } - - public Observable validateWalletEvEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public ValidateWalletEvEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(VALIDATEWALLETEV_EVENT, log); - ValidateWalletEvEventResponse typedResponse = new ValidateWalletEvEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (WasmAddress) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (Boolean) eventValues.getNonIndexedValues().get(1); - typedResponse.arg3 = (String) eventValues.getNonIndexedValues().get(2); - return typedResponse; - } - }); - } - - public Observable validateWalletEvEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(VALIDATEWALLETEV_EVENT)); - return validateWalletEvEventObservable(filter); - } - - public List getLogEventEvEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(LOGEVENTEV_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - LogEventEvEventResponse typedResponse = new LogEventEvEventResponse(); - typedResponse.log = eventValues.getLog(); - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (String) eventValues.getNonIndexedValues().get(1); - responses.add(typedResponse); - } - return responses; - } - - public Observable logEventEvEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public LogEventEvEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(LOGEVENTEV_EVENT, log); - LogEventEvEventResponse typedResponse = new LogEventEvEventResponse(); - typedResponse.log = log; - typedResponse.arg1 = (Uint128) eventValues.getNonIndexedValues().get(0); - typedResponse.arg2 = (String) eventValues.getNonIndexedValues().get(1); - return typedResponse; - } - }); - } - - public Observable logEventEvEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(LOGEVENTEV_EVENT)); - return logEventEvEventObservable(filter); - } - - public List getPauseEvEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(PAUSEEV_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - PauseEvEventResponse typedResponse = new PauseEvEventResponse(); - typedResponse.log = eventValues.getLog(); - responses.add(typedResponse); - } - return responses; - } - - public Observable pauseEvEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public PauseEvEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(PAUSEEV_EVENT, log); - PauseEvEventResponse typedResponse = new PauseEvEventResponse(); - typedResponse.log = log; - return typedResponse; - } - }); - } - - public Observable pauseEvEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(PAUSEEV_EVENT)); - return pauseEvEventObservable(filter); - } - - public List getUnpauseEvEvents(TransactionReceipt transactionReceipt) { - List valueList = extractEventParametersWithLog(UNPAUSEEV_EVENT, transactionReceipt); - ArrayList responses = new ArrayList(valueList.size()); - for (WasmEventValuesWithLog eventValues : valueList) { - UnpauseEvEventResponse typedResponse = new UnpauseEvEventResponse(); - typedResponse.log = eventValues.getLog(); - responses.add(typedResponse); - } - return responses; - } - - public Observable unpauseEvEventObservable(PlatonFilter filter) { - return web3j.platonLogObservable(filter).map(new Func1() { - @Override - public UnpauseEvEventResponse call(Log log) { - WasmEventValuesWithLog eventValues = extractEventParametersWithLog(UNPAUSEEV_EVENT, log); - UnpauseEvEventResponse typedResponse = new UnpauseEvEventResponse(); - typedResponse.log = log; - return typedResponse; - } - }); - } - - public Observable unpauseEvEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) { - PlatonFilter filter = new PlatonFilter(startBlock, endBlock, getContractAddress()); - filter.addSingleTopic(WasmEventEncoder.encode(UNPAUSEEV_EVENT)); - return unpauseEvEventObservable(filter); - } - - public RemoteCall pause() { - final WasmFunction function = new WasmFunction(FUNC_PAUSE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall pause(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_PAUSE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall unpause() { - final WasmFunction function = new WasmFunction(FUNC_UNPAUSE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall unpause(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_UNPAUSE, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(VIDToken.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(VIDToken.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(VIDToken.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(VIDToken.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall Transfer(String to_addr, Uint128 value) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFER, Arrays.asList(to_addr,value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall Transfer(String to_addr, Uint128 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFER, Arrays.asList(to_addr,value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall VerifyFile(String file_hash) { - final WasmFunction function = new WasmFunction(FUNC_VERIFYFILE, Arrays.asList(file_hash), Boolean.class); - return executeRemoteCall(function, Boolean.class); - } - - public RemoteCall BalanceOf(String owner_addr) { - final WasmFunction function = new WasmFunction(FUNC_BALANCEOF, Arrays.asList(owner_addr), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall TransferToken(String token_addr_s, Uint128 tokens) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFERTOKEN, Arrays.asList(token_addr_s,tokens), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall TransferToken(String token_addr_s, Uint128 tokens, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TRANSFERTOKEN, Arrays.asList(token_addr_s,tokens), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall IncreaseApproval(String spender_addr, Uint128 added_value) { - final WasmFunction function = new WasmFunction(FUNC_INCREASEAPPROVAL, Arrays.asList(spender_addr,added_value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall IncreaseApproval(String spender_addr, Uint128 added_value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_INCREASEAPPROVAL, Arrays.asList(spender_addr,added_value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall DecreaseApproval(String spender_addr, Uint128 subtracted_value) { - final WasmFunction function = new WasmFunction(FUNC_DECREASEAPPROVAL, Arrays.asList(spender_addr,subtracted_value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall DecreaseApproval(String spender_addr, Uint128 subtracted_value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DECREASEAPPROVAL, Arrays.asList(spender_addr,subtracted_value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall Allowance(String owner, String spender) { - final WasmFunction function = new WasmFunction(FUNC_ALLOWANCE, Arrays.asList(owner,spender), Uint128.class); - return executeRemoteCall(function, Uint128.class); - } - - public RemoteCall TokenFallback(String from_addr, Uint128 value, String data) { - final WasmFunction function = new WasmFunction(FUNC_TOKENFALLBACK, Arrays.asList(from_addr,value,data), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall TokenFallback(String from_addr, Uint128 value, String data, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_TOKENFALLBACK, Arrays.asList(from_addr,value,data), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall Burn(Uint128 value) { - final WasmFunction function = new WasmFunction(FUNC_BURN, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall Burn(Uint128 value, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_BURN, Arrays.asList(value), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall Freeze(String addr_s, Boolean state) { - final WasmFunction function = new WasmFunction(FUNC_FREEZE, Arrays.asList(addr_s,state), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall Freeze(String addr_s, Boolean state, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_FREEZE, Arrays.asList(addr_s,state), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall ValidatePublisher(String addr_s, Boolean state, String publisher) { - final WasmFunction function = new WasmFunction(FUNC_VALIDATEPUBLISHER, Arrays.asList(addr_s,state,publisher), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall ValidatePublisher(String addr_s, Boolean state, String publisher, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_VALIDATEPUBLISHER, Arrays.asList(addr_s,state,publisher), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall ValidateWallet(String addr_s, Boolean state, String wallet) { - final WasmFunction function = new WasmFunction(FUNC_VALIDATEWALLET, Arrays.asList(addr_s,state,wallet), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall ValidateWallet(String addr_s, Boolean state, String wallet, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_VALIDATEWALLET, Arrays.asList(addr_s,state,wallet), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall SetPrice(Uint128 new_price) { - final WasmFunction function = new WasmFunction(FUNC_SETPRICE, Arrays.asList(new_price), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall SetPrice(Uint128 new_price, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETPRICE, Arrays.asList(new_price), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall SetWallet(String new_wallet_s) { - final WasmFunction function = new WasmFunction(FUNC_SETWALLET, Arrays.asList(new_wallet_s), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall SetWallet(String new_wallet_s, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_SETWALLET, Arrays.asList(new_wallet_s), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall ListFiles(Uint128 start_at, Uint128 stop_at) { - final WasmFunction function = new WasmFunction(FUNC_LISTFILES, Arrays.asList(start_at,stop_at), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall ListFiles(Uint128 start_at, Uint128 stop_at, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_LISTFILES, Arrays.asList(start_at,stop_at), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static VIDToken load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new VIDToken(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static VIDToken load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new VIDToken(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static class TransferEvEventResponse { - public Log log; - - public WasmAddress arg1; - - public WasmAddress arg2; - - public Uint128 arg3; - } - - public static class ApprovalEvEventResponse { - public Log log; - - public WasmAddress arg1; - - public WasmAddress arg2; - - public Uint128 arg3; - } - - public static class BurnEvEventResponse { - public Log log; - - public WasmAddress arg1; - - public Uint128 arg2; - } - - public static class FreezeEvEventResponse { - public Log log; - - public WasmAddress arg1; - - public Boolean arg2; - } - - public static class ValidateFileEvEventResponse { - public Log log; - - public Uint128 arg1; - - public String arg2; - } - - public static class ValidatePublisherEvEventResponse { - public Log log; - - public WasmAddress arg1; - - public Boolean arg2; - - public String arg3; - } - - public static class ValidateWalletEvEventResponse { - public Log log; - - public WasmAddress arg1; - - public Boolean arg2; - - public String arg3; - } - - public static class LogEventEvEventResponse { - public Log log; - - public Uint128 arg1; - - public String arg2; - } - - public static class PauseEvEventResponse { - public Log log; - } - - public static class UnpauseEvEventResponse { - public Log log; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/VRF.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/VRF.java deleted file mode 100644 index 2875e6318b..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/VRF.java +++ /dev/null @@ -1,88 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class VRF extends WasmContract { - private static String BINARY_0 = "0x0061736d01000000018f011660027f7f0060017f017f60037f7f7f0060027f7f017f60017f0060037f7f7f017f60000060037f7e7e0060047f7f7f7f017f60047f7f7f7f0060027f7e0060057f7e7e7e7e006000017f60027e7e017f60087f7f7f7f7f7f7f7f0060067f7e7e7e7e7f0060037e7e7f0060077f7f7f7f7f7f7f017f60047f7f7e7f017f60037f7e7e017f60017e017f60017f017e02a4031203656e760c706c61746f6e5f70616e6963000603656e760d706c61746f6e5f736861323536000203656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000203656e760e726c705f62797465735f73697a65000303656e7610706c61746f6e5f726c705f6279746573000203656e760d726c705f753132385f73697a65000d03656e760f706c61746f6e5f726c705f75313238001003656e761d706c61746f6e5f6765745f63616c6c5f6f75747075745f6c656e677468000c03656e7616706c61746f6e5f6765745f63616c6c5f6f7574707574000403656e760b706c61746f6e5f63616c6c001103656e760d706c61746f6e5f726576657274000603656e7617706c61746f6e5f6765745f696e7075745f6c656e677468000c03656e7610706c61746f6e5f6765745f696e707574000403656e7617706c61746f6e5f6765745f73746174655f6c656e677468000303656e7610706c61746f6e5f6765745f7374617465000803656e7610706c61746f6e5f7365745f7374617465000903656e760d706c61746f6e5f72657475726e0000036b6a0604000102020b0b030105030a00000a000002040012000202010202030702030300010102040000020702030705020e020d040007001300000105010100050804050106050204010015010104000100050608010103010003001403010000010602010109030004000f0405017001010105030100020608017f0141a08e040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300120f5f5f66756e63735f6f6e5f65786974006306696e766f6b6500550ab7cc016a040010720bd50102017f027e230041206b22012400200141106a41da09101420012903102102200041286a200141186a290300370300200020023703202001419d0a1014200141086a290300210220012903002103200041b8056a4200370300200041b0056a420337030020004188056a420037030020004180056a420237030020004188016a420037030020004180016a4220370300200041d8006a2002370300200041d0006a200337030020004188066a41e00a41e00a10151016200041e8056a4200370300200041e0056a42a003370300200141206a24000bcd0202057f027e230041106b22042400024002400240024020012d000041304604404102210220012d000141f800460d010b410021020340200241c2004604404100210220034101710d020c040b4101200120026a2c00001054220541094a22064101742005417f461b220541024b0d022003200672210302400240200541016b0e020401000b200241016a21020c010b0b410021022003410171450d020b0340200241c200460d0320074204862008423c8884200120026a2c00001054ac2207423f877c2007200842048622077c2208200754ad7c2107200241016a21020c000b000b0c010b200441086a21030340200241c200460d01200420082007420a420010182003290300200120026a2c00001054ac2208423f877c2004290300220720087c2208200754ad7c2107200241016a21020c000b000b2000200837030020002007370308200441106a24000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b990101037f410a210320002d00002205410171220404402000280200417e71417f6a21030b200320024f0440027f2004044020002802080c010b200041016a0b2203200120021040200220036a41003a000020002d00004101710440200020023602040f0b200020024101743a00000f0b20002003200220036b027f2004044020002802040c010b20054101760b2204410020042002200110410b801002067f067e23004180036b22032400200341406b200141c0066a290300220a200141c8066a290300220c200a200c1018200341306a2003290340200341c8006a290300200141d0006a2903002209200141d8006a290300220b1019200341206a2003290330200341386a290300200a200c1018200341106a2003290320200341286a2903002009200b101920032003290310220d42077c220e200341186a290300200e200d54ad7c2009200b1019200141f8036a200c370300200141f0036a2207200a370300200141d8026a200b370300200141d0026a2009370300200141a8026a20014188016a290300220a370300200141a0026a20014180016a290300220c37030020014198026a200a37030020014190026a200c37030020014188026a200a37030020014180026a2206200c370300200141c8026a200b200942017c220a200954ad7c2209420288370300200141c0026a2009423e86200a42028884370300200141b8026a200341086a290300370300200141b0026a20032903003703002003420037039801200342c4cf9f023703900120034180016a41d009101a2108200341e0016a41d509101a220228020420032d00e0012204410176200441017122051b21042002280208200241016a20051b210242a5c688a1c89ca7f94b21090340200404402004417f6a21042002300000200942b383808080207e852109200241016a21020c010b0b200341c8016a101b2104200341f0016a200641e000101c1a20044102101d2104200341c0016a4100360200200341b8016a4200370300200341b0016a4200370300200342003703a801200341a8016a2009101e200341a8016a200341f0016a101f200420032802a80110202004200910212004200341f0016a1022027f02400240200428020c200441106a280200460440200441046a2106200428020021020c010b200441046a2106100020042802002102200428020c2004280210470d010b20020c010b100020042802000b21052003410036027820034200370370200520062802006a220620026b22050440200341f0006a2005102320022006200341f0006a41047210240b200341a8016a4104721025200428020c22020440200420023602100b200341d8016a22044100360200200341d0016a22024200370300200342003703c801200341a8016a2008102620032d00bc0104402004200341b8016a2802003602002002200341b0016a290300370300200320032903a8013703c8010b02400240200341c8016a200341f0006a420020034190016a1027450d002003410036026820034200370360200341e0006a1008102820032802601009200341d0006a200328026020032802641029200341e8016a4100360200200342003703e001200341e0016a41d10d41d10d1015102a41840e280200210841840e410036020020032003280258200341d0006a41017220032d00504101711b220436029c02200320043602f401200342003703e802200342003703e002417f21022003417f3602f8012003417f3602d80203400240027f200220044704402003200441016a3602f40120042d00000c010b200341f0016a102b0b220441776a220241174b0d004101200274419f80800471450d0020032802d802210220032802f40121040c010b0b02400240200441556a220241024b0d00200241016b450d00417f41002004412d461b210520032802f401220420032802d8024704402003200441016a3602f40120042d000021040c020b200341f0016a102b21040c010b410021050b027e200441d10b6a2d000041094d0440410021020340200441506a220641094d410020024198b3e6cc014d1b4504402002ad21090240024003400240200441506a220241094b0d0020094299b3e6cc99b3e6cc19560d002009420a7e220b2002ad220a427f85560d02200a200b7c210920032802f401220420032802d8024704402003200441016a3602f40120042d000021040c0205200341f0016a102b21040c020b000b0b200241094b0d010b200441d10b6a2d0000220441094b0d000340200441ff017141094d0440027f20032802f401220420032802d8024704402003200441016a3602f40120042d00000c010b200341f0016a102b0b41d10b6a2d000021040c010b0b4100210541840e4122360200427f21090b024020032903e002427f57044020032802f40121040c010b200320032802f401417f6a22043602f4010b41840e280200210241840e200836020020024122470440200328029c02210220032903e802210a20092005ac220b85200b7d0c040b230041106b220024002000200341e0016a41e80d1073000b2002410a6c20066a210220032802f401220420032802d8024704402003200441016a3602f40120042d000021040c0105200341f0016a102b21040c010b000b000b024020032903e002427f57044020032802f40121040c010b200320032802f401417f6a22043602f4010b41840e411636020041840e2008360200200328029c02220220046bac210a42000b21094200210b2004200aa76a2002460d0120032802602204450d00200320043602640b200328027022040440200320043602740b20014188046a2204200b37030020014180046a200937030020094201835045044020012001290350220a20097d370380042004200141d8006a290300200b7d200a200954ad7d3703000b20002007290300370300200041186a200741186a290300370300200041106a200741106a290300370300200041086a200741086a29030037030020034180036a24000f0b230041106b220024002000200341e0016a41d80d1073000b7501017e2000200120047e200220037e7c20034220882204200142208822027e7c200342ffffffff0f832203200142ffffffff0f8322017e2205422088200220037e7c22034220887c200120047e200342ffffffff0f837c22034220887c3703082000200542ffffffff0f832003422086843703000b3d01017f230041206b2205240020052001200220032004200541106a107b200529031021012000200529031837030820002001370300200541206a24000b1f0020004200370200200041086a41003602002000200120011015102a20000b29002000410036020820004200370200200041001045200041146a41003602002000420037020c20000bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000bf30101057f20002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a200441037410350b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e0440200520062001101c1a0b20002002360214200020033602102000200536020c20000b0a0020002001420010460b3c01027f2000410010470340200241e000464504402000200120026a2203290300200341086a2903001046200241106a21020c010b0b2000410110470b1300200028020820014904402000200110450b0b0b0020002001420010481a0b3c01027f20004106101d2102410021000340200041e0004704402002200020016a2203290300200341086a29030010481a200041106a21000c010b0b0b2001017f2000200110352202360200200020023602042000200120026a3602080b2800200120006b220141014e0440200228020020002001101c1a2002200228020020016a3602000b0bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001049200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001104a200441106a24000b2101017f230041106b22022400200020012002418008101a102d200241106a24000b880101017f230041206b22042400200441106a20024200103e20042003290300200341086a290300103e200020012802002203200128020420036b20042802102201200428021420016b20042802002201200428020420016b100a2101200428020022030440200420033602040b200428021022030440200420033602140b200441206a24002001450bfa0101057f230041206b22022400024020002802042203200028020022046b22052001490440200028020820036b200120056b22044f04400340200341003a00002000200028020441016a22033602042004417f6a22040d000c030b000b20002001103d2106200241186a200041086a3602002002410036021441002101200604402006103521010b200220013602082002200120056a22033602102002200120066a3602142002200336020c0340200341003a00002002200228021041016a22033602102004417f6a22040d000b2000200241086a1038200241086a10370c010b200520014d0d002000200120046a3602040b200241206a24000bd005010a7f230041106b220b2400200b41af08101a210320004200370200200041086a4100360200024002402003280204200b2d0000220641017620064101711b2208200220016b4101746a2204410b4f0440200441106a4170712206103521052000200436020420002006410172360200200020053602080c010b200020044101743a0000200041016a21052004450d010b200541302004103f2105200b2d000021060b200420056a41003a0000200341016a21072003280208210a2003280204200641fe0171410176200641017122091b2103027f20002d00002206410171220c450440410a2105200641017622062008200820064b1b0c010b2000280200417e71417f6a210520002802042206200820062008491b0b2104200a200720091b2107024002400240027f02400240200420066b20056a20034f0440027f200c044020002802080c010b200041016a0b21054100210a20032004460440200321090c050b200620046b220c450440200421090c050b20032004490d01200520074f0d02200520066a20074d0d02200420056a20074d04402007200320046b6a21070c030b2005200720041040200320076a2107200320046b21032004210a41000c030b20002005200320066a20046b20056b2006410020042003200710410c050b2005200720031040200320056a200420056a200c1040200421090c030b20040b21092005200a6a220420036a200420096a200c10400b2005200a6a2007200310400b200320096b20066a2103024020002d00004101710440200020033602040c010b200020034101743a00000b200320056a41003a00000b200041016a2103034020012002464504402000280208200320002d00004101711b20086a20012d000041047641b0086a2d00003a00002000280208200320002d00004101711b20086a41016a20012d0000410f7141b0086a2d00003a0000200141016a2101200841026a21080c010b0b200b41106a24000b5a01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204103521032000200236020420002004410172360200200020033602080b200320012002103a200220036a41003a00000be70102037f027e02402000290370220450454100200029037820002802042201200028022c22026bac7c22052004591b450440200010712201417f4a0d01200028022c2102200028020421010b2000427f3703702000200136026820002005200220016bac7c370378417f0f0b200542017c2105200028020821030240024020002903702204500440200028020421020c010b200420057d22042003200028020422026bac590d00200020022004a76a3602680c010b200020033602680b20002005200028022c20026bac7c3703782002417f6a22002d00002001470440200020013a00000b20010bf30f02087f047e230041f0046b22022400200141e8056a290300200141e0056a290300420c858450450440100b0b200241e0016a4100360200200241d8016a4200370300200241c0016a4200370300200241c8016a4100360200200242003703d001200242003703b801200241a8016a42074200200141d0006a290300200141d8006a22042903001019200241f0016a22034200370300200241f8016a22054100360200200242003703e801024020022903a801200241b0016a29030084500d00100b20024198016a42074200200129035020042903001019200229039801200241a0016a29030084500d00100b20024188016a420742002001290350200141d8006a2204290300101920022903880120024190016a29030084500d00100b200241f8006a42074200200129035020042903001019200229037820024180016a29030084500d00100b0b20024190026a2005280200220536020020024188026a2003290300220b370300200220022903e801220e37038002200241a8026a2005360200200241a0026a200b3703002002200e37039802200242003703c804200242c4cf9f023703c004200241b8046a4100360200200241b0046a4200370300200242003703a80420024180036a418008101a2103200241d0046a200241b0026a418408101a2003102d20022d00e4040440200241b8046a200241e0046a280200360200200241b0046a200241d8046a290300370300200220022903d0043703a8040b20024198026a200241a8046a102e0440100b0b20024198046a2001290320200141286a290300102f2002410036029004200242003703880420024188046a20022802a00420024198046a41017220022d009804220341017122051b22042004200228029c04200341017620051b6a1030200241f8036a20024188046a10312105200241e8036a42004200102f200241003602e003200242003703d803200241d8036a20022802f003200241e8036a41017220022d00e803220341017122041b2206200620022802ec03200341017620041b6a1030200241c8036a200241d8036a10312103200241c0036a200241b8046a280200360200200241b8036a200241b0046a290300370300200220022903a8043703b003200241a8036a22044100360200200241a0036a22064200370300200242003703980320024180036a20014188066a2207102620022d0094030440200420024190036a280200360200200620024188036a2903003703002002200229038003370398030b024020024198036a2003420c200241c0046a1027450d00200241003602f802200242003703f002200241f0026a1008102820022802f0021009200241e0026a20022802f00220022802f4021029200241d8026a22044100360200200241d0026a22064200370300200242003703c802200241b0026a2007102620022d00c40204402004200241c0026a2802003602002006200241b8026a290300370300200220022903b0023703c8020b200241c0036a2004280200360200200241b8036a2006290300370300200220022903c8023703b00320022802f0022204450d00200220043602f4020b200241b0036a20024198026a102e2104200328020022060440200320063602040b20022802d80322030440200220033602dc030b200528020022030440200520033602040b200228028804220304402002200336028c040b2004450440100b0b20024180036a200b200b102f200241003602b802200242003703b002200241b0026a20022802880320024180036a41017220022d008003220341017122051b22042004200228028403200341017620051b6a1030200241d0046a2001200241a8046a200241b0026a103122051017200141d8046a2204200241e8046a2209290300370300200141d0046a200241e0046a220a290300370300200141c8046a220620022903d804370300200141c0046a220320022903d004370300200528020022080440200520083602040b200141d8006a210803400240200241e8006a20012903c004220c2006290300220d200c200d1018200241c8006a2002290368200241f0006a2903002001290350220b2008290300220e1019200241386a2002290348200241d0006a290300200c200d1018200241286a2002290338200241406b290300200b200e1019200241d8006a20012903d004220c2004290300220d200c200d1018200241086a2002290358200241e0006a290300200b200e1019200241186a2002290328220c42077c220d200241306a290300200d200c54ad7c200b200e10192002290318200229030885200241206a290300200241106a2903008584500d00200241d0046a2001200241b0036a200241b0026a10311017200341186a2009290300370300200341106a200a290300370300200341086a20022903d804370300200320022903d00437030020022802b0032205450d01200220053602b4030c010b0b20022802b00222010440200220013602b4020b200720071032450440100b0b200720071032450440100b0b100b200241003602d804200242003703d0042002410036028803200242003703800320024180036a41201028200241d0046a20022802800310332002280280032201044020022001360284030b100b20004200370000200041086a4200370000200041106a4200370000200041186a4200370000200241003602d804200242003703d0042002410036028803200242003703800320024180036a41201028200241d0046a20022802800310332002280280032201044020022001360284030b200241f0046a24000bda0f010b7f23004190016b220324002001280208200141016a220c20012d0000220441017122051b21092001280204200441017620051b210a410021044101210602400340200641017141002004200a491b0440200420096a2d00002205415f6a41ff017141de004921062007200541bf7f6a41ff0171411a4972210720082005419f7f6a41ff0171411a49722108200441016a21040c0105024020062007200871410173712107200a450d00200a210403402004450d01200420096a21062004417f6a220521042006417f6a2d00004131470d000b0c030b0b0b417f21050b024002402007410171450d00200541076a200a4b0d00200541016a4102490d00200a41da004b0d00410021042003410036026020034200370358200341d8006a200a2005417f7322086a102841012107024003402004200128020420012d00002206410176200641017122061b20086a4f044002402007410171450d0341002104200341c8006a1034210703402004200546044020072002103245044020004200370000200041003a0014200041086a4200370000200041106a410036000020032802582204450d082003200436025c0c080b410021042003410036027020034200370368200341e8006a200728020420032d0048220541017620054101711b4101744101721028200741016a210803402004200728020420032d00482205410176200541017122051b22064f450440200328026820046a2007280208200820051b20046a2d000022054105763a00002003280268200728020420032d0048220641017620064101711b6a20046a41016a2005411f713a0000200441016a21040c010b0b200328026820066a41003a0000200328026c21060240200328025c2205200328025822046b22074101480d0020072003280270220920066b4c0440034020042005460d02200620042d00003a00002003200328026c41016a220636026c200441016a21040c000b000b20034188016a200341f0006a3602004100210820034100360284012006200328026822016b210a200620076a20016b2207200920016b2209410174220120012007491b41ffffffff07200941ffffffff03491b220904402009103521080b2003200836027820032008200a6a2207360280012003200820096a360284012003200736027c03402004200546450440200720042d00003a0000200320032802800141016a220736028001200441016a21040c010b0b200341e8006a200341f8006a20061036200341f8006a1037200328026c21060b2003420037026c2003280268210520034100360268200620056b21064101210403402006044020052d000041002004411d764101716b41b3c5d1d0027141002004411c764101716b41dde788ea037141002004411b764101716b41fab384f5017141002004411a764101716b41ed9cc2b20271410020044119764101716b41b2afa9db0371200441057441e0ffffff037173737373737321042006417f6a2106200541016a21050c010b0b20044101470d0520034100360270200342003703682003410036022820034200370320027f4100200328025c417a6a2206200328025822046b2205450d001a200341206a20051023034020042006464504402003280224220520042d00003a00002003200541016a360224200441016a21040c010b0b2003280220210b20032802240b200b6b210d200341f0006a210c41002104410021094100210203402002200d46044002402009410820046b7441ff0171452004410548712104200b04402003200b3602240b20040d00200328026821040c050b052002200b6a2d0000200941057441e01f71722109200441056a21040340200441084e04402009200441786a2204762106200328026c220720032802702208490440200720063a00002003200328026c41016a36026c0c02052003200c360288014100210520034100360284012007200328026822016b220741016a220a200820016b220841017422012001200a491b41ffffffff07200841ffffffff03491b220804402008103521050b20032005360278200520076a220720063a00002003200520086a360284012003200736027c2003200741016a36028001200341e8006a200341f8006a1038200341f8006a10370c020b000b0b200241016a21020c010b0b200328026c200328026822046b4114470d0220034188016a410036020020034180016a4200370300200342003703784100210403402004411446450440200341f8006a20046a41003a0000200441016a21040c010b0b200328026c200328026822056b21064100210403400240200441134b0d0020042006460d00200341f8006a20046a200420056a2d00003a0000200441016a21040c010b0b20002003290378370000200041013a0014200041106a20034188016a280200360000200041086a20034180016a290300370000200504402003200536026c0b20032802582204450d072003200436025c0c070520072001280208200c20012d00004101711b20046a2c000022064120722006200641bf7f6a411a491b4118744118751039200441016a21040c010b000b000b05200328025820046a2001280208200c20061b20056a20046a41016a2d000041d0086a2d000022063a00002007200641ff0147712107200441016a21040c010b0b2004450d002003200436026c0b20032802582204450d002003200436025c0b20004200370000200041003a0014200041086a4200370000200041106a41003600000b20034190016a24000b3901027f41012103034002402002411447047f200020026a2d0000200120026a2d0000460d0141000520030b0f0b200241016a21020c000b000ba30302067f027e230041206b220724000240027f2000103422032d00002200410171450440200041017622044128200441284b1b41106a41f001712100410a0c010b200328020422044128200441284b1b41106a41707122002003280200417e712205460d012005417f6a0b210641002000417f6a20064d2000103522051b0d00027f20032d0000220641017104402003280208210820032802040c010b200341016a210820064101760b210620052008200641016a103a2003200536020820032004360204200320004101723602000b200741186a21060340200741106a20012002103b2007200729031022092006290300220a4276427f10182003200729030020017ca741c1086a2c000010392001420956210020024200522104200250210520092101200a21022000200420051b0d000b0240200328020420032d00002200410176200041017122001b2204450d0020042003280208200341016a20001b22006a417f6a21040340200020044f0d0120002d00002105200020042d00003a0000200420053a00002004417f6a2104200041016a21000c000b000b200741206a24000ba30301067f230041206b220424000240200220016b22074101480d0020072000280208200028020422056b4c04400240200720054c044020052106200221080c010b20052106200120056a2208210303402002200346450440200620032d00003a00002000200028020441016a2206360204200341016a21030c010b0b20054101480d020b20062102200620076b220721030340200320054f044020070440200620076b41002007103c0b200820016b210041002103034020002003460d042003200120036a2d00003a0000200341016a21030c000b0005200220032d00003a00002000200028020441016a2202360204200341016a21030c010b000b000b2000200520076a200028020022036b103d2105200441186a200041086a36020020044100360214410020036b2103200504402005103521060b200420063602082004200320066a22033602102004200520066a3602142004200336020c03402001200246450440200320012d00003a00002004200428021041016a2203360210200141016a21010c010b0b2000200441086a41001036200441086a10370b200441206a24000b3b01017f2000420037020020004100360208200128020420012802006b2202044020002002102320012802002001280204200041046a10240b20000bc70101057f0240200028020420002d000022024101762203200241017122061b2202200128020420012d00002204410176200441017122041b470d002001280208200141016a20041b210102402006450440200041016a210203402003450d0220022d000020012d0000470d03200141016a2101200241016a21022003417f6a21030c000b000b2002450d002000280208210303402002450d0120032d000020012d0000470d02200141016a2101200341016a21032002417f6a21020c000b000b410121050b20050b1701017f20002802002202200028020420026b200110010b190020004200370200200041086a41003602002000104420000b0b002000410120001b104b0b8d0101017f20002802002002200141046a1042200028020420026b220341014e0440200128020820022003101c1a2001200128020820036a3602080b200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f200028020821012000280204210203402001200247044020002001417f6a22013602080c010b0b0b6701017f20002802002000280204200141046a1042200028020021022000200128020436020020012002360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000bf60101057f027f20002d00002202410171220345044020024101762104410a0c010b2000280204210420002802002202417e71417f6a0b210502400240024020042005460440027f2002410171044020002802080c010b200041016a0b2106416f2103200541e6ffffff074d0440410b20054101742202200541016a220320032002491b220241106a4170712002410b491b21030b20031035220220062005103a20002003410172360200200020023602080c010b2003450d01200028020821020b2000200441016a3602040c010b2000200441017441026a3a0000200041016a21020b200220046a220041003a0001200020013a00000b100020020440200020012002101c1a0b0b3d01017f230041106b22032400200320012002420a42004100107b200329030021012000200341086a29030037030820002001370300200341106a24000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d0440200020012002101c1a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b2e01017f2001200028020820002802006b2200410174220220022001491b41ffffffff07200041ffffffff03491b0b55002000410036020820004200370200200020012002104310282000280204417f6a21000340200120028450450440200020013c0000200242388620014208888421012000417f6a2100200242088821020c010b0b0bfc0202027f017e02402002450d00200020013a0000200020026a2203417f6a20013a000020024103490d00200020013a0002200020013a00012003417d6a20013a00002003417e6a20013a000020024107490d00200020013a00032003417c6a20013a000020024109490d002000410020006b41037122046a2203200141ff017141818284086c22013602002003200220046b417c7122046a2202417c6a200136020020044109490d002003200136020820032001360204200241786a2001360200200241746a200136020020044119490d002003200136021820032001360214200320013602102003200136020c200241706a20013602002002416c6a2001360200200241686a2001360200200241646a20013602002001ad220542208620058421052004200341047141187222016b2102200120036a2101034020024120490d0120012005370300200141186a2005370300200141106a2005370300200141086a2005370300200141206a2101200241606a21020c000b000b20000b0f0020020440200020012002103c0b0bc30101027f027f20002d0000410171044020002802080c010b200041016a0b2109416f2108200141e6ffffff074d0440410b20014101742208200120026a220120012008491b220141106a4170712001410b491b21080b20081035210120040440200120092004103a0b20060440200120046a20072006103a0b200320056b220320046b22070440200120046a20066a200420096a20056a2007103a0b200020013602082000200320066a220436020420002008410172360200200120046a41003a00000b270020022002280200200120006b22016b2202360200200141014e0440200220002001101c1a0b0b3001017f034020002001845045044020014238862000420888842100200241016a2102200142088821010c010b0b20020b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0b2f01017f200028020820014904402001104b20002802002000280204101c210220002001360208200020023602000b0b6501027f4101210320014280015441002002501b450440200120021043220341384f047f2003104e20036a0520030b41016a21030b200041186a28020022040440200041086a280200200041146a2802002004104c21000b2000200028020020036a3602000bc10c02077f027e230041306b22042400200041046a2107024020014101460440200041086a280200200041146a280200200041186a22022802002203104c280200210120022003417f6a3602002007104d4180104f044020072000410c6a280200417c6a104a0b200141384f047f2001104e20016a0520010b41016a2101200041186a2802002202450d01200041086a280200200041146a2802002002104c21000c010b02402007104d0d00200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a104f0c010b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b220141027549044041802010352105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1050220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10512102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021052200028020c21010b200120053602002000200028020c41046a36020c0c020b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a105322013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10512102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021052200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a104f0c010b20042001410175410120011b200320051051210241802010352106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a105022013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200105121032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031052200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c2002200937020820021052052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a105322013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210105121062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061052200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b0b0b200441186a20071049200428021c4100360200200041186a2100410121010b2000200028020020016a360200200441306a24000b2a01017f2000200220011006200028020422036a107a20022001200320002802006a10072000107920000b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b9b0101047f230041106b220124002001200036020c2000047f41900e200041086a2202411076220041900e2802006a2203360200418c0e418c0e280200220420026a41076a417871220236020002400240200341107420024d044041900e200341016a360200200041016a21000c010b2000450d010b200040000d0010000b20042001410c6a4104101c41086a0541000b2100200141106a240020000b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a105022023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10512103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031052200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001103c0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274103521040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001103c0b20020b4801017f415021010240200041506a41ff0171410a490d0041a97f21012000419f7f6a41ff01714106490d00200041496a417f200041bf7f6a41ff01714106491b0f0b200020016a0b920902077f047e23004180096b220024001072100c2201104b2202100d200041206a200041086a200220011056220341001057200041206a105802400240200041206a1059450d002000280224450d0020002802202d000041c001490d010b10000b200041e0086a200041206a105a20002802e408220141094f044010000b20002802e00821020340200104402001417f6a210120023100002007420886842107200241016a21020c010b0b024002402007500d00418b0b105b20075104402003105c410147044010000b200041206a105d220110132001105e0c020b41900b105b2007510440200041003602b007200042003703a8072003200041a8076a105f200041e0086a200041206a105d2203200041a0086a200041e0076a200041a8076a10312202103122011017200128020022040440200120043602040b200041c0086a101b2201200041e0086a106010202001200041e0086a1061200128020c200141106a28020047044010000b200128020020012802041011200128020c22040440200120043602100b200228020022010440200220013602040b2003105e20002802a8072201450d02200020013602ac070c020b41ab0b105b2007520d00410021012000410036028007200042003703f8062003200041f8066a105f200041a8076a200041206a105d220620004198076a20004188076a200041f8066a1031220510312202102c200228020022030440200220033602040b200041c8076a101b2104200041f8076a200041c0076a2903002207370300200041f0076a200041b8076a2903002208370300200041e8076a200041b0076a290300220937030020004198086a410036020020004190086a420037030020004188086a4200370300200020002903a807220a3703e0072000420037038008200041a8086a2009370300200041b0086a2008370300200041b8086a2007370300200041c8086a2009370300200041d0086a2008370300200041d8086a20073703002000200a3703a0082000200a3703c008200041f8086a2007370300200041f0086a2008370300200041e8086a20093703002000200a3703e008410121030240034020014120460d01200041e0086a20016a2102200141016a210120022d0000450d000b412121030b200020033602800820004180086a4104721025200420031020200041f8076a200041c0076a2903002207370300200041f0076a200041b8076a2903002208370300200041e8076a200041b0076a2903002209370300200020002903a807220a3703e007200041a8086a2009370300200041b0086a2008370300200041b8086a2007370300200041c8086a2009370300200041d0086a2008370300200041d8086a20073703002000200a3703a0082000200a3703c008200041f8086a2007370300200041f0086a2008370300200041e8086a20093703002000200a3703e0082004200041e0086a41201062220128020c200141106a28020047044010000b200128020020012802041011200128020c22020440200120023602100b200528020022010440200520013602040b2006105e20002802f8062201450d01200020013602fc060c010b10000b106320004180096a24000b0c00200020012002411c10640bc90202067f017e230041106b220324002001280208220520024b0440200341086a2001107820012003280208200328020c107736020c200320011078410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410641a200341106a24000f0b20032001107841002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004107710762001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b4101017f200028020445044010000b0240200028020022012d0000418101470d00200028020441014d047f100020002802000520010b2c00014100480d0010000b0b980101037f200028020445044041000f0b20001058200028020022022c0000220141004e044020014100470f0b027f4101200141807f460d001a200141ff0171220341b7014d0440200028020441014d047f100020002802000520020b2d00014100470f0b4100200341bf014b0d001a2000280204200141ff017141ca7e6a22014d047f100020002802000520020b20016a2d00004100470b0bd50101047f200110652204200128020422024b04401000200128020421020b200128020021052000027f02400240200204404100210120052c00002203417f4a0d01027f200341ff0171220141bf014d04404100200341ff017141b801490d011a200141c97e6a0c010b4100200341ff017141f801490d001a200141897e6a0b41016a21010c010b4101210120050d000c010b41002103200120046a20024b0d0020022001490d00410020022004490d011a200120056a2103200220016b20042004417f461b0c010b41000b360204200020033602000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010b2501017f02402000280204450d0020002802002d000041c001490d002000106621010b20010be70f020a7f017e230041f0006b220324002000420037030820004200370300200042ead68db3ef93daaac000370310200041106a200041206a106745044020002000290300370320200041286a200041086a2903003703000b20004200370330200041386a22014200370300200041406b220242908cf28bacbcdded867f3703002002200041d0006a106745044020002000290330370350200041d8006a20012903003703000b20004200370360200041e8006a22014200370300200041f0006a22024299e8e1b1d3d0ea98e000370300200220004180016a1067450440200020002903603703800120004188016a20012903003703000b4100210220004190016a410041e000103f2109200041f0016a220142d7b7f3eac89387ee61370300200341286a101b220420012903001021200428020c200441106a28020047044010000b02402004280200220120042802042205100e2208450d002003410036024820034200370340200341406b200810282001200520032802402206200328024420066b100f417f470440200341106a2003280240220241016a20032802442002417f736a105622051068410647044010000b20004180026a210141002102200341086a210603402002410646450440200341d0006a2005200210572003200341d0006a10692003290300210b200120062903003703082001200b370300200141106a2101200241016a21020c010b0b200821020b20032802402201450d00200320013602440b200428020c22010440200420013602100b200245044020004180026a200941e000101c1a0b200042003703e002200041e8026a22014200370300200041f0026a220242a6aad8e1b3be87d933370300200220004180036a1067450440200020002903e0023703800320004188036a20012903003703000b200042003703900320004198036a22014200370300200041a0036a220242eecdbbc0d2b7e0a9f7003703002002200041b0036a106745044020002000290390033703b003200041b8036a20012903003703000b200042003703c003200041d8036a4200370300200041d0036a4200370300200041c8036a4200370300200041e0036a220142bcacd994918cef898e7f3703002001200041f0036a2202106a4504402002200041c0036a2201290300370300200241186a200141186a290300370300200241106a200141106a290300370300200241086a200141086a2903003703000b2000420037039004200041a8046a4200370300200041a0046a420037030020004198046a4200370300200041b0046a22014281b5aca7fbc09599083703002001200041c0046a2202106a450440200220004190046a2201290300370300200241186a200141186a290300370300200241106a200141106a290300370300200241086a200141086a2903003703000b200042003703e004200041e8046a22014200370300200041f0046a220242e1b39ae88c92cf8914370300200220004180056a1067450440200020002903e0043703800520004188056a20012903003703000b200042003703900520004198056a22014200370300200041a0056a2202428399a4a2aee18df22d3703002002200041b0056a106745044020002000290390053703b005200041b8056a20012903003703000b200042003703c005200041c8056a22014200370300200041d0056a220242f280d49cfedd8da0987f3703002002200041e0056a1067450440200020002903c0053703e005200041e8056a20012903003703000b200041f0056a1034210920004180066a2202429fbaccd4e0b2c7df4237030020004188066a10342104200341d0006a101b220520022903001021200528020c200541106a28020047044010000b02402005280200220120052802042206100e2208450440410021020c010b410021022003410036024820034200370340200341406b200810282001200620032802402207200328024420076b100f417f47044002400240200341286a2003280240220241016a20032802442002417f736a10562202280204044020022802002d000041c001490d010b200341106a10341a0c010b200341e8006a2002105a2002106521010240024002400240200328026822020440200328026c220620014f0d010b41002102200341186a41003602002003420037031041002107410021060c010b200341186a4100360200200342003703102002200620012001417f461b22076a21062007410a4b0d010b200320074101743a0010200341106a41017221010c010b200741106a417071220a10352101200320073602142003200a410172360210200320013602180b03402002200646450440200120022d00003a0000200141016a2101200241016a21020c010b0b200141003a00000b024020042d0000410171450440200441003b01000c010b20004190066a28020041003a00002000418c066a410036020020042d0000410171450d00200441003602000b20042003290310370200200441086a200341186a280200360200200341106a1044200821020b20032802402201450d00200320013602440b200528020c22010440200520013602100b20024504402004200041f8056a280200200941016a20092d0000220241017122011b200041f4056a280200200241017620011b10160b200042003703a006200041a8066a22014200370300200041b0066a220242ac8ab3fedfbf91c2123703002002200041c0066a1067450440200020002903a0063703c006200041c8066a20012903003703000b200341f0006a240020000bb207010a7f230041e0006b22032400200041b0066a200041c0066a106b200341286a101b220120004180066a2202290300106c102020012002290300102120004188066a2106200128020c200141106a28020047044010000b2001280204210920012802002107200341106a101b2102200341d8006a4100360200200341d0006a4200370300200341c8006a4200370300200342003703404101210502400240024020032006106d220828020420032d000022044101762004410171220a1b220441014d0440200441016b0d032008280208200841016a200a1b2c0000417f4c0d010c030b200441374b0d010b200441016a21050c010b2004104e20046a41016a21050b20032005360240200341406b41047210252002200341406b106e2204106f2002200428020420056a20042802006b10200240200220032006106d2205280208200541016a20032d0000220641017122081b2005280204200641017620081b1062220228020c200241106a280200460440200241046a2105200228020021060c010b200241046a2105100020022802002106200228020c2002280210460d0010000b20072009200620052802001010200428020022050440200420053602040b200228020c22040440200220043602100b200128020c22020440200120023602100b200041d0056a200041e0056a106b200041a0056a200041b0056a106b200041f0046a20004180056a106b200041b0046a200041c0046a1070200041e0036a200041f0036a1070200041a0036a200041b0036a106b200041f0026a20004180036a106b200341286a101b2202200041f0016a2201290300106c102020022001290300102120004180026a2105200228020c200241106a28020047044010000b2002280204210620022802002109200341106a101b2101200341d8006a4100360200200341d0006a4200370300200341c8006a420037030020034200370340200341406b2005101f20032802402107200341406b41047210252001200341406b106e2204106f2001200720042802046a20042802006b10202001200510220240200128020c200141106a280200460440200141046a2105200128020021070c010b200141046a2105100020012802002107200128020c2001280210460d0010000b20092006200720052802001010200428020022050440200420053602040b200128020c22040440200120043602100b200228020c22010440200220013602100b200041f0006a20004180016a106b200041406b200041d0006a106b200041106a200041206a106b200341e0006a24000bee0101037f230041406a220224002000105c410247044010000b200241086a20004101105702400240200228020c044020022802082d000041c001490d010b20024100360228200242003703200c010b200241386a200241086a105a20022802382103200241306a200241086a105a20022802302100200241086a106521042002410036022820024200370320200020046a20036b2200450d00200241206a2000102320004101480d002002200228022420032000101c20006a3602240b2001280200044020014100360208200142003702000b2001200228022036020020012002290224370204200241406b24000b800101037f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200141001047034020024120464504402001200020026a2203290300200341086a2903001046200241106a21020c010b0b2001410110472001280200210220014104721025200141206a240020020b3b01027f20004102101d2102410021000340200041204704402002200020016a2203290300200341086a29030010481a200041106a21000c010b0b0b2a01017f2000200120021004200028020422036a107a20012002200320002802006a10052000107920000b880101037f41f80d410136020041fc0d2802002100034020000440034041800e41800e2802002201417f6a2202360200200141014845044041f80d4100360200200020024102746a22004184016a280200200041046a28020011040041f80d410136020041fc0d28020021000c010b0b41800e412036020041fc0d200028020022003602000c010b0b0b730020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000107420024f0d002003410471044010000c010b200042003702000b02402003411071450d002000107420024d0d0020034104710440100020000f0b200042003702000b20000bff0201037f200028020445044041000f0b2000105841012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100020002802040520010b4102490d0020002802002d00010d0010000b200241054f044010000b20002802002d000145044010000b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10000b20020b800101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a20001078200128020c210003402000450d01200141002001280208220320032000107722046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020bf30102057f017e230041d0006b22022400200241386a101b220320002903001021200328020c200341106a28020047044010000b02402003280200220520032802042206100e2204450440410021000c010b410021002002410036023020024200370328200241286a200410282005200620022802282205200228022c20056b100f417f4704402002200241106a2002280228220041016a200228022c2000417f736a10561069200229030021072001200241086a29030037030820012007370300200421000b20022802282204450d002002200436022c0b200328020c22040440200320043602100b200241d0006a240020000b210002402000280204044020002802002d000041bf014b0d010b10000b200010660b9e0102027f027e230041106b22022400200110580240024020011059450d002001280204450d0020012802002d000041c001490d010b10000b200241086a2001105a200228020c220141114f044010000b20022802082103034020010440200542088620044238888421052001417f6a210120033100002004420886842104200341016a21030c010b0b2000200437030020002005370308200241106a24000bb80202057f017e230041f0006b22022400200241406b101b220320002903001021200328020c200341106a28020047044010000b02402003280200220420032802042205100e2206450440410021000c010b410021002002410036023820024200370330200241306a200610282004200520022802302204200228023420046b100f417f470440200241186a2002280230220041016a20022802342000417f736a105622041068410247044010000b41002100200241106a210503402000410246450440200241d8006a200420001057200241086a200241d8006a1069200229030821072001200529030037030820012007370300200141106a2101200041016a21000c010b0b200621000b20022802302201450d00200220013602340b200328020c22010440200320013602100b200241f0006a240020000bd50201077f230041d0006b22022400200241186a101b22042000290300106c1020200420002903001021200428020c200441106a28020047044010000b20042802042106200428020021072002101b2103200241c8006a4100360200200241406b4200370300200241386a420037030020024200370330200241306a2001290300200141086a2205290300104620022802302108200241306a41047210252003200241306a106e2200106f2003200820002802046a20002802006b102002402003200129030020052903001048220128020c200141106a280200460440200141046a2103200128020021050c010b200141046a2103100020012802002105200128020c2001280210460d0010000b20072006200520032802001010200028020022030440200020033602040b200128020c22000440200120003602100b200428020c22010440200420013602100b200241d0006a24000b4f01027f230041206b22012400200141186a4100360200200141106a4200370300200141086a42003703002001420037030020012000101e2001280200210220014104721025200141206a240020020b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204102a20000b30002000410036020820004200370200200041011023200028020441fe013a00002000200028020441016a36020420000b6101037f200028020c200041106a28020047044010000b200028020422022001280204200128020022036b22016a220420002802084b047f20002004104520002802040520020b20002802006a20032001101c1a2000200028020420016a3602040b840201067f230041406a22042400200441286a101b22022000290300106c1020200220002903001021200228020c200241106a28020047044010000b2002280204210620022802002107200441106a101b210020011060210520002004106e2203106f2000200520032802046a20032802006b10202000200110610240200028020c200041106a280200460440200041046a2101200028020021050c010b200041046a2101100020002802002105200028020c2000280210460d0010000b20072006200520012802001010200328020022010440200320013602040b200028020c22030440200020033602100b200228020c22000440200220003602100b200441406b24000bb40101037f230041106b22022400200020002802482201417f6a2001723602482000280214200028021c47044020004100410020002802241105001a0b2000410036021c20004200370310024020002802002203410471044020002003412072360200417f21010c010b2000200028022c20002802306a220136020820002001360204417f210120034110710d0020002002410f6a410120002802201105004101470d0020022d000f21010b200241106a240020010b3501017f230041106b220041a08e0436020c41880e200028020c41076a4178712200360200418c0e200036020041900e3f003602000be70201047f20004200370200200041086a410036020003402003410c46450440200020036a4100360200200341046a21030c010b0b2001280208200141016a20012d0000220341017122041b210502402001280204200341017620041b22012002101522036a2204410a4d0440200020014101743a0000200041016a21040c010b200441106a4170712206103521042000200136020420002006410172360200200020043602080b200420052001103a200120046a41003a0000027f20002d00002201410171220504402000280200417e71417f6a210420002802040c010b410a210420014101760b21010240200420016b20034f04402003450d01027f2005044020002802080c010b200041016a0b220420016a20022003103a200120036a2103024020002d00004101710440200020033602040c010b200020034101743a00000b200320046a41003a00000f0b20002004200120036a20046b2001200141002003200210410b0b2e01017f200028020445044041000f0b4101210120002802002c0000417f4c047f20001075200010656a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2701017f230041206b22022400200241086a200020014114106410742100200241206a240020000b2101017f20011065220220012802044b044010000b2000200120011075200210760b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401000200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210026a107a200120002802006a22012002200110030c010b0b0b3601017f200028020820014904402001104b20002802002000280204101c210220002001360208200020023602000b200020013602040ba80602027f047e02400240200250044020045004402005044020054200370308200520012003823703000b20012003802101420021020c030b2005450d01420021022005420037030820052001370300420021010c020b02400240200350044020045004402005450d04420021012005420037030820054200370300420021020c050b20015004402005044020054200370300200520022004823703080b20022004802101420021020c050b20042004427f7c2208835004402005044020052001370300200520022008833703080b200220047a882101420021020c050b200479a7200279a76b2206413f4f0d022002413f20066bad2208862001200641016a2206ad22098884210a2002200988210b20012008862109420021080c010b0240027e200450044020032003427f7c2208835004402005044020054200370308200520012008833703000b20034201510d07200242c00020037a22087d862001200888842101200220088821020c070b200379a7200279a76b41c1006a220641c0004604404200210820010c020b2006413f4d0440200241c00020066bad22088620012006ad22098884210a2002200988210b20012008862109420021080c040b200241800120066bad2208862001200641406aad220a888421092002200a88210a200120088621080c030b200479a7200279a76b220741c0004f0d03200741016a220641c000470d0120010b21092002210a41c00021060c010b2002413f20076bad22098620012006ad220b8884210a2002200b88210b200120098621090b41002107034020060440200b420186200a423f888422022002427f8520047c200a4201862009423f8884220a427f85220220037c200254ad7c423f8722022004837d200a2002200383220154ad7d210b200a20017d210a20094201862008423f888421092006417f6a21062007ad20084201868421082002a741017121070c010b0b2008423f8821022008420186210820094201862109200504402005200b3703082005200a3703000b200220098421022007ad2008427e838421010c020b2005450d0020052001370300200520023703080b42002101420021020b20002001370300200020023703080b0bf70502004180080bc20361747800617478317a717171717171717171717171717171717171717171717171717171717171717338646b676b00003031323334353637383961626364656600303132333435363738390000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fff0a1115141a1e0705ffffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffffff1dff180d19090817ff12161f1b13ff010003100b1c0c0e060402ffffffffff30783035006461746100307846464646464646464646464646464646464646464646464646464646464646454241414544434536414634384130334242464432354538434430333634313431003078464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464546464646464332460061747831717171717171717171717171717171717171717171717171717171717171717a35717064393400696e6974006e657743616e646964617465536563703235366b31506f696e740072616e646f6d56616c756546726f6d56524650726f6f660041d00b0ba602ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223ffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff73746f756c6c003a206e6f20636f6e76657273696f6e003a206f7574206f662072616e6765"; - - public static String BINARY = BINARY_0; - - public static final String FUNC_NEWCANDIDATESECP256K1POINT = "newCandidateSecp256k1Point"; - - public static final String FUNC_RANDOMVALUEFROMVRFPROOF = "randomValueFromVRFProof"; - - protected VRF(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected VRF(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(VRF.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(VRF.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(VRF.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(VRF.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall newCandidateSecp256k1Point(byte[] bt) { - final WasmFunction function = new WasmFunction(FUNC_NEWCANDIDATESECP256K1POINT, Arrays.asList(bt, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall newCandidateSecp256k1Point(byte[] bt, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_NEWCANDIDATESECP256K1POINT, Arrays.asList(bt, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall randomValueFromVRFProof(byte[] proof) { - final WasmFunction function = new WasmFunction(FUNC_RANDOMVALUEFROMVRFPROOF, Arrays.asList(proof, Void.class), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall randomValueFromVRFProof(byte[] proof, BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_RANDOMVALUEFROMVRFPROOF, Arrays.asList(proof, Void.class), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static VRF load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new VRF(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static VRF load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new VRF(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/WasmStorage.java b/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/WasmStorage.java deleted file mode 100644 index 710533c7fd..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/contracts/wasm/WasmStorage.java +++ /dev/null @@ -1,102 +0,0 @@ -package network.platon.contracts.wasm; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.abi.wasm.datatypes.WasmFunction; -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.RemoteCall; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.WasmContract; -import com.alaya.tx.gas.GasProvider; -import java.math.BigInteger; -import java.util.Arrays; - -/** - *

Auto generated code. - *

Do not modify! - *

Please use the platon-web3j command line tools, - * or the com.alaya.codegen.WasmFunctionWrapperGenerator in the - * codegen module to update. - * - *

Generated with platon-web3j version 0.13.2.0. - */ -public class WasmStorage extends WasmContract { - private static String BINARY_0 = "0x0061736d0100000001e2012060027f7f0060017f017f60047f7f7f7f0060017f0060037f7f7f0060037f7f7f017f60027f7f017f60047f7f7f7f017f60000060027e7e017f60047f7e7e7f0060057f7f7f7f7f0060027f7e0060057f7e7e7e7e0060047e7e7e7e017f6000017e60017f017e60037f7e7f017e60077f7f7f7f7f7f7f0060087f7f7f7f7f7f7f7f0060047f7e7f7f0060037f7e7e0060047f7e7e7e0060027f7c0060037e7e7f006000017f600a7f7f7f7f7f7f7f7f7f7f017f600b7f7f7f7f7f7f7f7f7f7f7f017f600a7f7f7f7f7e7f7e7f7f7f017f60027f7e017f60017e017f60027e7f017f02ed021003656e760c706c61746f6e5f6465627567000003656e760c706c61746f6e5f70616e6963000803656e7613706c61746f6e5f626c6f636b5f6e756d626572000f03656e7610706c61746f6e5f74696d657374616d70000f03656e760d726c705f6c6973745f73697a65000103656e760f706c61746f6e5f726c705f6c697374000403656e760e726c705f62797465735f73697a65000603656e7610706c61746f6e5f726c705f6279746573000403656e760d726c705f753132385f73697a65000903656e760f706c61746f6e5f726c705f75313238001803656e7610706c61746f6e5f7365745f7374617465000203656e7617706c61746f6e5f6765745f73746174655f6c656e677468000603656e7610706c61746f6e5f6765745f7374617465000703656e760d706c61746f6e5f726576657274000803656e7617706c61746f6e5f6765745f696e7075745f6c656e677468001903656e7610706c61746f6e5f6765745f696e7075740003039b01990108030006040503020106000003031503000c000700061201000000050101070003000000100303001400040001010003061d030100060c040606030506030300050701010104030001010100050100010005070305020000030401040804100008060000041e001301050104070202011a1c1b0501090a16070401040b0e0d0d1f09000900170308040b0101060200010105110a0a0109010e04050170010a0a05030100020608017f0141f0a5040b073904066d656d6f72790200115f5f7761736d5f63616c6c5f63746f727300100f5f5f66756e63735f6f6e5f65786974007006696e766f6b65006c0912010041010b09111f1d4a7d7ea001a101a2010af2a702990105001097010bff03020b7f027e230041d0006b22012400200041406b2106200041e8006a2107200041186a210a1002210c1003210d20004194016a280200210b200141186a41017221082000280290012104200141206a210903402004200b470440200141306a20041012200141186a200141306a10131a2001200c370328200141c8006a200a200141186a1014200141186a200141306a101321022001200d3703282007200141c8006a2002101522052802004504404128103c22032001290318370210200341186a200928020036020020021016200341206a2001290328370300200720012802482005200310170b200141186a200141306a10132102200141003602242006200141c8006a2002101522052802004504404128103c22032001290318370210200341186a200928020036020020021016200341206a2001340224370300200620012802482005200310170b200141186a1018418e0a1019418a08101922024120101a2002418a08101941930a1019418a08101941f6081019418a08101941980a1019418a08101941b70e1019418a081019200141306a101b20012001280220200820012d00184101711b360210200141106a101c200141186a1018200141306a101b20012001280220200820012d00184101711b3602002001101c200441186a21040c010b0b20004188016a42d285d8cc04370300200141d0006a24000b13002000200110131a200020012903103703100b4d01017f20004200370200200041086a2202410036020020012d0000410171450440200020012902003702002002200141086a28020036020020000f0b200020012802082001280204107b20000b7601037f230041106b22042400200020012004410c6a2002101522052802002203047f4100054128103c22032002290200370210200341186a200241086a28020036020020021016200341206a20022903103703002001200428020c20052003101741010b3a000420002003360200200441106a24000b890101027f200041046a2103024020002802042200044002400340024002402002200041106a2204104c0440200028020022040d012001200036020020000f0b20042002104c450d03200041046a210320002802042204450d01200321000b20002103200421000c010b0b2001200036020020030f0b200120003602000c010b200120033602000b20030b2201017f03402001410c470440200020016a4100360200200141046a21010c010b0b0baf0201027f20032001360208200342003702002002200336020020002802002802002201044020002001360200200228020021030b2003200320002802042205463a000c03400240024020032005460d00200328020822012d000c0d002001200128020822022802002204460440024020022802042204450d0020042d000c0d002004410c6a21030c030b200320012802004704402001104d2001280208220128020821020b200141013a000c200241003a000c2002104e0c010b02402004450d0020042d000c0d002004410c6a21030c020b200320012802004604402001104e2001280208220128020821020b200141013a000c200241003a000c2002104d0b2000200028020841016a3602080f0b200141013a000c200220022005463a000c200341013a0000200221030c000b000b190020004200370200200041086a41003602002000101620000b0c002000200120011058104b0bd70101067f230041306b22022400200241206a101822032003280200417e71417f6a410a20022d00204101711b1022200328020420022d0020220441017620044101711b2105200341016a21060340024020032802082107200220013602002003027f2007200620044101711b200541016a41f62320021023220441004e0440200420054d0d0220040c010b20054101744101720b2205102220022d002021040c010b0b200320041022200241186a200241286a28020036020020022002290320370310200310162000200241106a1024200241306a24000b2801017f230041106b22022400200041bc0e1019418a0810192002200110131024200241106a24000b3b01017f23004190086b220124002001200036020c200141106a41800841b0082000107c1a200141106a200141106a1058100020014190086a24000b0a00200010021003101e0bdf0201067f230041206b22032400200341106a1018418e0a1019418a0810192204418401101a2004418a08101941930a1019418a08101941f6081019418a08101941980a1019418a08101941b40c1019418a08101941bb0c1019418a081019220420004188016a220529030010212004418a08101941ce0c1019418a0810192204200110212004418a0810194194081019418a08101922042002102120032004280208200441016a20032d00104101711b3602002003101c200320052903002201370310200041a0016a28020021062002a72107200028029c012100034020002006460440200520013703002003418e01360208200341086a41bb0c20051069200341206a2400052003200029030022013703082003418701360204200341046a41d60c200341086a10692001a72204106a220820073a0000200341106a410820082004100a2003200329031042017c2201370310200041086a21000c010b0b0bf01c020f7f057e230041f0026b220124001002211210032113200041c8006a280200450440200141d0026a101841b5081019418a08101941c7081019418a08101941dd081019418a08101941e3081019418a08101941ea081019418a08101922024131102020012002418a08101941f0081019418a08101941f6081019418a08101941fe0910192202280208200241016a20012d00d0024101711b360270200141f0006a101c100d0b200041406b2109200141a0026a1018418e0a1019418a08101922024132101a2002418a08101941930a1019418a08101941f6081019418a08101941980a1019418a08101941e3081019418a081019419d0a1019418a0810192202201210212002418a0810194194081019418a0810192106200141d0026a101822032003280200417e71417f6a410a20012d00d0024101711b1022200328020420012d00d002220541017620054101711b2102200341016a210c0340024020032802082104200120133703602003027f2004200c20054101711b200241016a418024200141e0006a1023220541004e0440200520024d0d0220050c010b20024101744101720b2202102220012d00d00221050c010b0b200320051022200141c0026a200141d8026a280200360200200120012903d0023703b802200310162006200141b8026a102420012006280208200641016a20012d00a0024101711b360250200141d0006a101c200041b4016a2105200041e8006a210e200041186a210c20004194016a2802002104200141d0026a410472210f200141d0026a4101722106200141c8016a410172210d20014198016a21082000280290012102024002400240034020022004470440200141f8006a20021012200c200141f8006a10252103201220012903880120032903007c5604402009200141f8006a1025290300500d04200e200141f8006a102529030021102009200141f8006a1025290300211420012010370390022001201437038802200120113703a001200141e6003602d002200141d0026a41a60a41ac0a200141f8006a20014190026a20014188026a200141a0016a102620014100360298012001420037039001200141f0016a200141f8006a10131a2001420137038002200141b8026a1027220a200141f0016a102820014198026a200a102902402001280298022202200128029c022203100b2204450d00200141003602b001200142003703a801200141a8016a2004102a02402002200320012802a801220b20012802ac012204200b6b100c417f460d00200141a0026a200b41016a2004200b417f736a102b2202102c04402002102d210320012802980120012802900122046b410375200349044020014190016a200141d0026a200320012802940120046b4103752008102e2203102f200310300b200141e0016a20021031200141b8016a20021032034020012802e40120012802bc0146044020012802e80120012802c001460d030b200141d0026a200141e0016a1033200141d0026a10342110024020012802940122022001280298012203490440200220103703002001200241086a360294010c010b200141c8016a200220012802900122046b410375220241016a2207200320046b2203410275220420042007491b41ffffffff01200341037541ffffffff00491b20022008102e210220012802d001220320103703002001200341086a3602d00120014190016a2002102f200210300b200141e0016a10350c000b000b41ba0a10360b200b450d002001200b3602ac010b200a28020c22020440200a41106a20023602000b200128029401220320012802900122026b2204418002470440200141d0026a101841b5081019418a08101941c30a1019418a08101941dd081019418a08101941a60a1019418a08101941ea081019418a081019220241eb0010202002418a08101941f0081019418a08101941f6081019418a08101941d40a1019418a0810192202200441037510372002418a08101941ec0a10191a200120012802d802200620012d00d0024101711b360240200141406b101c100d200128029401210320012802900121020b03400240200220034604402001420237038002201420002903c00182221050450d01200141d0026a10272202200141f0016a1028200141b8026a2002102920012802b80220012802bc02100b2103200228020c22040440200241106a20043602000b2003450d06200141d0026a101841b5081019418a08101941a60b1019418a08101941dd081019418a08101941a60a1019418a08101941ea081019418a081019220241f40010202002418a08101941f0081019418a08101941f6081019418a08101941b60b10191a200120012802d802200620012d00d0024101711b3602002001101c100d0c060b201420022903002210520440200141d0026a101841b5081019418a08101941f60a1019418a08101941dd081019418a08101941a60a1019418a08101941ea081019418a081019220441ee0010202004418a08101941f0081019418a08101941f6081019418a08101941830b1019418a0810192010419e0b20014188026a1038200120012802d802200620012d00d0024101711b360230200141306a101c100d0b200241086a21020c010b0b200141c8016a10182108200141d0026a10272202200141f0016a1028200141e0016a20021029024020012802e001220420012802e4012207100b2203450d00200141003602a802200142003703a002200141a0026a2003102a2004200720012802a002220320012802a402220a20036b100c417f470440200141b8026a200341016a200a2003417f736a102b200810390b2003450d00200120033602a4020b200228020c22030440200241106a20033602000b027f20012d00c80122044101712202044020012802cc010c010b20044101760b2203ad2010520440200141d0026a101841b5081019418a08101941c80b1019418a08101941dd081019418a08101941a60a1019418a08101941ea081019418a081019220241fb0010202002418a08101941f0081019418a08101941f6081019418a08101941df0b1019418a0810192202200310372002418a081019419e0b20014188026a103a200120012802d802200620012d00d0024101711b360220200141206a101c100d20012d00c801220441017121020b20012802d001200d20021b210320012802cc01200441017620021b210203402002450d0420032d0000220420052d0000470440200141d0026a101841b5081019418a08101941fb0b1019418a08101941dd081019418a08101941a60a1019418a08101941ea081019418a081019220741fe0010202007418a08101941f0081019418a08101941f6081019418a081019418f0c1019418a08101922072004411874411875103b2007418a081019419e0b1019418a08101920052c0000103b200120012802d802200620012d00d0024101711b360210200141106a101c100d0b2002417f6a2102200341016a21030c000b0005200541016a2105200241186a2102201142017c21110c020b000b0b200020122013101e0c020b2001280290012202450d0020012002360294010b2009200141f8006a10252202200229030042017c2210370300200120133703980220012010370390022001201137038802200141d4003602d002200141d0026a41a00c41a60c200141f8006a20014198026a20014190026a20014188026a1026418002103c2104410021020340200220046a2010370300200241086a2202418002470d000b200141f0016a200141f8006a10131a2001420137038002200141b8026a10272207200141f0016a103d103e2007200141f0016a1028200141c8016a20071029200141a0026a10272108200141003602e802200142003703e002200142003703d802200142003703d002200220046a210902402002450440200141d0026a103f0c010b200141d0026a410010402106200421030340200204402006200329030010411a200241786a2102200341086a21030c01052006410110401a0b0b0b200941786a210620012802d0022102200f10422008200141d0026a1043220d10442008200220012802d4026a20012802d0026b103e200441786a21022008200920046b41037510452103034020022006464504402003200241086a220229030010460c010b0b20012802cc01210220012802c8012104200141e0016a2003102920012802e0012106200141b8016a2003102920042002200620012802bc01100a200d28020022020440200120023602d4020b200328020c22020440200341106a20023602000b200728020c22020440200741106a20023602000b20014202370380020240201020002903c0018222114200520d00200141d0026a10272202200141f0016a1028200141b8026a20021029200141003a00a00220012802b80220012802bc02200141a0026a4100100a200228020c2203450d00200241106a20033602000b20052d00002103200141e8016a4100360200200142003703e00102402011a72202410a4d0440200120024101743a00e001200141e0016a41017221050c010b200241106a4170712204103c2105200120023602e401200120044101723602e001200120053602e8010b2005200220034118744118751047200220056a41003a0000200141b8026a10272202200141f0016a103d103e2002200141f0016a1028200141b8016a20021029200141a0026a10272105200141003602e802200142003703e002200142003703d802200142003703d002200141d0026a200141c8016a200141e0016a101310481a20012802d0022103200f10422005200141d0026a1043220410442005200320012802d4026a20012802d0026b103e2005200141c8016a200141e0016a10131049210520012802bc01210320012802b8012106200141a8016a2005102920012802a801210020014190016a20051029200620032000200128029401100a200428020022030440200120033602d4020b200528020c22030440200541106a20033602000b200228020c22050440200241106a20053602000b200e200141f8006a10252013370300200c200141f8006a102520123703000b200141f0026a24000bd70101067f230041306b22022400200241206a101822032003280200417e71417f6a410a20022d00204101711b1022200328020420022d0020220441017620044101711b2105200341016a21060340024020032802082107200220013602002003027f2007200620044101711b200541016a41f92320021023220441004e0440200420054d0d0220040c010b20054101744101720b2205102220022d002021040c010b0b200320041022200241186a200241286a28020036020020022002290320370310200310162000200241106a1024200241306a24000bd70101067f230041306b22022400200241206a101822032003280200417e71417f6a410a20022d00204101711b1022200328020420022d0020220441017620044101711b2105200341016a21060340024020032802082107200220013703002003027f2007200620044101711b200541016a41852420021023220441004e0440200420054d0d0220040c010b20054101744101720b2205102220022d002021040c010b0b200320041022200241186a200241286a28020036020020022002290320370310200310162000200241106a1024200241306a24000b880201037f0240027f20002d000022034101712202044020002802040c010b20034101760b22042001490440200120046b2204450d01027f2002044020002802002203417e71417f6a210220002802040c010b410a210220034101760b2201027f200220016b200449047f20002002200120046a20026b2001200110990120002d00000520030b410171044020002802080c010b200041016a0b22036a200441001047200120046a2101024020002d00004101710440200020013602040c010b200020014101743a00000b200120036a41003a00000f0b20020440200028020820016a41003a0000200020013602040f0b200020016a41016a41003a0000200020014101743a00000b0b2901017f230041106b220424002004200336020c2000200120022003107c2103200441106a240020030b2d01017f20002001280208200141016a20012d0000220041017122021b2001280204200041017620021b104b1a0b5401037f230041106b2203240020002003410c6a20011015220428020022024504404128103c220241106a200110131a200241206a42003703002000200328020c2004200210170b200341106a2400200241206a0bdc0101027f230041306b22072400200741106a1018418e0a1019418a08101922082000280200101a2008418a08101941930a1019418a08101941f6081019418a08101941980a1019418a08101920011019418a08101920021019418a0810192202200741206a2003101310242002418a0810194194081019418a0810192203200429030010212003418a081019419f081019418a0810192204200529030010212004418a08101941b00e1019418a08101922052006290300102120072005280208200541016a20072d00104101711b3602002007101c200741306a24000b2900200041003602082000420037020020004100104f200041146a41003602002000420037020c20000b7b01027f230041406a220224002000410210452100200241386a4100360200200241306a4200370300200241286a420037030020024200370320200241206a200241106a20011013104820012903101041210320002002280220103e2000200220011013104920012903101046200341046a1042200241406b24000b2200200128020c200141106a28020047044041e90c10360b200020012902003702000bfd0101067f024020002802042202200028020022046b220520014904402000280208220720026b200120056b22034f04400340200241003a00002000200028020441016a22023602042003417f6a22030d000c030b000b2001200720046b2202410174220420042001491b41ffffffff07200241ffffffff03491b220104402001103c21060b200520066a220521020340200241003a0000200241016a21022003417f6a22030d000b200120066a210420052000280204200028020022066b22016b2103200141014e044020032006200110501a0b2000200436020820002002360204200020033602000f0b200520014d0d002000200120046a3602040b0b0c00200020012002411c10510b1900200028020445044041000f0b200010522d000041bf014b0b1201017f2000102c047f200010530520010b0b4c01017f2000410036020c200041106a2003360200200104402001105421040b200020043602002000200420024103746a22023602082000200420014103746a36020c2000200236020420000b870101037f200120012802042000280204200028020022046b22036b2202360204200341004a044020022004200310501a200128020421020b200028020021032000200236020020012003360204200028020421022000200128020836020420012002360208200028020821022000200128020c3602082001200236020c200120012802043602000b2b01027f20002802082101200028020421020340200120024704402000200141786a22013602080c010b0b0b0a0020002001410110550b0a0020002001410010550b160020002001280204200141086a280200411c10511a0b850202047f017e230041106b2202240020001056024002402000280204450d00200010560240200028020022032c0000220141004e044020010d010c020b200141807f460d00200141ff0171220441b7014d0440200028020441014d047f100120002802000520030b2d00010d010c020b200441bf014b0d012000280204200141ff017141ca7e6a22014d047f100120002802000520030b20016a2d0000450d010b2000102c0d0020002802040d010b41ba0a10360b200241086a20001057200228020c220041094f044041ba0a10360b200228020821010340200004402000417f6a210020013100002005420886842105200141016a21010c010b0b200241106a240020050bb70102057f017e230041106b22032400200041046a210102402000280200220204402001280200220504402005200041086a2802006a21040b20002004360204200041086a2002360200200341086a2001410020042002109c01109d0120002003290308220637020420004100200028020022012006422088a76b2202200220014b1b3602000c010b200020012802002201047f2001200041086a2802006a0541000b360204200041086a41003602000b200341106a24000b0c00200020001058100010010bd70101067f230041306b22022400200241206a101822032003280200417e71417f6a410a20022d00204101711b1022200328020420022d0020220441017620044101711b2105200341016a21060340024020032802082107200220013602002003027f2007200620044101711b200541016a41fc2320021023220441004e0440200420054d0d0220040c010b20054101744101720b2205102220022d002021040c010b0b200320041022200241186a200241286a28020036020020022002290320370310200310162000200241106a1024200241306a24000b15002000200110212000418a08101920022003103a0b900201057f230041206b22022400024020001059450440200241086a10181a0c010b200241186a200010572000105a21030240024002400240200228021822000440200228021c220520034f0d010b41002100200241106a410036020020024200370308410021050c010b200241106a4100360200200242003703082000200520032003417f461b22046a21052004410a4b0d010b200220044101743a0008200241086a41017221030c010b200441106a4170712206103c21032002200436020c20022006410172360208200220033602100b03402000200546450440200320002d00003a0000200341016a2103200041016a21000c010b0b200341003a00000b2001200241086a105b200241206a24000b1400200020011019418a081019200229030010210b970101037f027f02400240027f20002d000022024101712204450440410a210320024101760c010b2000280200417e71417f6a210320002802040b220220034604402000200341012003200310990120002d0000410171450d010c020b20040d010b2000200241017441026a3a0000200041016a0c010b2000200241016a36020420002802080b20026a220041003a0001200020013a00000b0b002000410120001b106a0b6701027f230041306b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200141001040200141206a2000101310482000290310104141011040210020012802002102200041046a1042200141306a240020020b13002000280208200149044020002001104f0b0b3901017f027f200041186a28020022010440200041086a280200200041146a2802002001105c0c010b20000b2201200128020041016a3602000bde0c02077f027e230041306b22042400200041046a2107027f0240024020014101460440200041186a22032802002202450d01200041086a280200200041146a2802002002105c280200210120032002417f6a3602002007105d4180104f044020072000410c6a280200417c6a105e0b200141384f047f2001105f20016a0520010b41016a2102200041186a28020022010440200041086a280200200041146a2802002001105c0c040b20000c030b2007105d0d01200041146a28020022014180084f0440200020014180786a360214200041086a2201280200220228020021032001200241046a360200200420033602182007200441186a10600c020b2000410c6a2802002202200041086a2802006b4102752203200041106a2205280200220620002802046b2201410275490440418020103c2105200220064704400240200028020c220120002802102202470d0020002802082203200028020422064b04402000200320012003200320066b41027541016a417e6d41027422026a1061220136020c2000200028020820026a3602080c010b200441186a200220066b2201410175410120011b22012001410276200041106a10622102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021063200028020c21010b200120053602002000200028020c41046a36020c0c030b02402000280208220120002802042202470d00200028020c2203200028021022064904402000200120032003200620036b41027541016a41026d41027422026a106422013602082000200028020c20026a36020c0c010b200441186a200620026b2201410175410120011b2201200141036a410276200041106a10622102200028020c210320002802082101034020012003470440200228020820012802003602002002200228020841046a360208200141046a21010c010b0b200029020421092000200229020037020420022009370200200029020c21092000200229020837020c2002200937020820021063200028020821010b2001417c6a2005360200200020002802082201417c6a22023602082002280200210220002001360208200420023602182007200441186a10600c020b20042001410175410120011b2003200510622102418020103c2106024020022802082201200228020c2203470d0020022802042205200228020022084b04402002200520012005200520086b41027541016a417e6d41027422036a106122013602082002200228020420036a3602040c010b200441186a200320086b2201410175410120011b22012001410276200241106a280200106221032002280208210520022802042101034020012005470440200328020820012802003602002003200328020841046a360208200141046a21010c010b0b20022902002109200220032902003702002003200937020020022902082109200220032902083702082003200937020820031063200228020821010b200120063602002002200228020841046a360208200028020c2105034020002802082005460440200028020421012000200228020036020420022001360200200228020421012002200536020420002001360208200029020c21092000200229020837020c20022009370208200210630c03052005417c6a210502402002280204220120022802002203470d0020022802082206200228020c22084904402002200120062006200820066b41027541016a41026d41027422036a106422013602042002200228020820036a3602080c010b200441186a200820036b2201410175410120011b2201200141036a4102762002280210106221062002280208210320022802042101034020012003470440200428022020012802003602002004200428022041046a360220200141046a21010c010b0b20022902002109200220042903183702002002290208210a20022004290320370208200420093703182004200a37032020061063200228020421010b2001417c6a200528020036020020022002280204417c6a3602040c010b000b000b41800d41940d41cb0041cd0d1065000b200441186a20071066200428021c410036020041012102200041186a0b2201200128020020026a360200200441306a240020000b8b0102027f017e4101210320014280015a0440034020012004845045044020044238862001420888842101200241016a2102200442088821040c010b0b200241384f047f2002105f20026a0520020b41016a21030b027f200041186a28020022020440200041086a280200200041146a2802002002105c0c010b20000b2202200228020020036a36020020000bea0101047f230041106b22042400200028020422012000280210220241087641fcffff07716a2103027f410020012000280208460d001a2003280200200241ff07714102746a0b2101200441086a20001066200428020c210203400240200120024604402000410036021420002802082103200028020421010340200320016b41027522024103490d022000200141046a22013602040c000b000b200141046a220120032802006b418020470d0120032802042101200341046a21030c010b0b2002417f6a220241014d04402000418004418008200241016b1b3602100b20002001105e200441106a24000b3a01017f200041003602082000420037020020004101103c2201360200200141fe013a00002000200141016a22013602082000200136020420000b6401037f200028020c200041106a28020047044041e90c10360b200028020422022001280204200128020022036b22016a220420002802084b047f20002004104f20002802040520020b20002802006a2003200110501a2000200028020420016a3602040b9d0201057f2001044020002802042105200041106a2802002202200041146a280200220349044020022001ad2005ad422086843702002000200028021041086a36021020000f0b027f41002002200028020c22046b410375220641016a2202200320046b2203410275220420042002491b41ffffffff01200341037541ffffffff00491b2204450d001a2004410374103c0b2102200220064103746a22032001ad2005ad4220868437020020032000280210200028020c22066b22016b2105200220044103746a2102200341086a2103200141014e044020052006200110501a0b20002002360214200020033602102000200536020c20000f0b200041001004200028020422016a106741004100200120002802006a10052000106820000b2801017f2000420020011008200028020422026a106742002001200220002802006a1009200010680b1500200104402000200241ff017120011083011a0b0ba10101037f41012103024002400240200128020420012d00002202410176200241017122041b220241014d0440200241016b0d032001280208200141016a20041b2c0000417f4c0d010c030b200241374b0d010b200241016a21030c010b2002105f20026a41016a21030b027f200041186a28020022010440200041086a280200200041146a2802002001105c0c010b20000b2201200128020020036a36020020000b4e01037f20002001280208200141016a20012d0000220241017122031b22042001280204200241017620031b22011006200028020422026a106720042001200220002802006a10072000106820000b9902010b7f230041406a2201240020004188016a2104200041406b2105200041e8006a2106200041186a210720004194016a2802002108200141206a41017221092000280290012100034020002008460440200141406b240005200141086a200010122007200141086a102521022006200141086a1025210a2005200141086a1025210b200141206a10184180081019418a0810192203200141306a200141086a101310242003418a081019418c081019418a0810192203200229030010212003418a0810194194081019418a0810192202200a29030010212002418a081019419f081019418a081019200b29030041a8082004103820012001280228200920012d00204101711b3602002001101c200041186a21000c010b0b0bb70101037f027f20002d00002203410171220504402000280200417e71417f6a210420002802040c010b410a210420034101760b21030240200420036b20024f04402002450d01027f2005044020002802080c010b200041016a0b220420036a20012002109801200220036a2102024020002d00004101710440200020023602040c010b200020024101743a00000b200220046a41003a000020000f0b20002004200220036a20046b2003200341002002200110770b20000bb20101067f02400240200128020420012d00002202410176200241017122031b2205200028020420002d00002202410176200241017122041b2206200520064922071b2202450d002000280208200041016a20041b21002001280208200141016a20031b210103402002450d0120002d0000220320012d00002204460440200141016a2101200041016a21002002417f6a21020c010b0b200320046b22020d010b417f200720062005491b21020b2002411f760b5101027f200020002802042201280200220236020420020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602000b5101027f200020002802002201280204220236020020020440200220003602080b200120002802083602082000280208220220022802002000474102746a200136020020002001360208200120003602040b2f01017f200028020820014904402001106a200028020020002802041050210220002001360208200020023602000b0bfc0801067f03400240200020046a2105200120046a210320022004460d002003410371450d00200520032d00003a0000200441016a21040c010b0b200220046b210602402005410371220745044003402006411049450440200020046a2203200120046a2205290200370200200341086a200541086a290200370200200441106a2104200641706a21060c010b0b027f2006410871450440200120046a2103200020046a0c010b200020046a2205200120046a2204290200370200200441086a2103200541086a0b21042006410471044020042003280200360200200341046a2103200441046a21040b20064102710440200420032f00003b0000200341026a2103200441026a21040b2006410171450d01200420032d00003a000020000f0b024020064120490d002007417f6a220741024b0d00024002400240024002400240200741016b0e020102000b2005200120046a220328020022073a0000200541016a200341016a2f00003b0000200041036a2108200220046b417d6a2106034020064111490d03200420086a2203200120046a220541046a2802002202410874200741187672360200200341046a200541086a2802002207410874200241187672360200200341086a2005410c6a28020022024108742007411876723602002003410c6a200541106a2802002207410874200241187672360200200441106a2104200641706a21060c000b000b2005200120046a220328020022073a0000200541016a200341016a2d00003a0000200041026a2108200220046b417e6a2106034020064112490d03200420086a2203200120046a220541046a2802002202411074200741107672360200200341046a200541086a2802002207411074200241107672360200200341086a2005410c6a28020022024110742007411076723602002003410c6a200541106a2802002207411074200241107672360200200441106a2104200641706a21060c000b000b2005200120046a28020022073a0000200041016a21082004417f7320026a2106034020064113490d03200420086a2203200120046a220541046a2802002202411874200741087672360200200341046a200541086a2802002207411874200241087672360200200341086a2005410c6a28020022024118742007410876723602002003410c6a200541106a2802002207411874200241087672360200200441106a2104200641706a21060c000b000b200120046a41036a2103200020046a41036a21050c020b200120046a41026a2103200020046a41026a21050c010b200120046a41016a2103200020046a41016a21050b20064110710440200520032d00003a00002005200328000136000120052003290005370005200520032f000d3b000d200520032d000f3a000f200541106a2105200341106a21030b2006410871044020052003290000370000200541086a2105200341086a21030b2006410471044020052003280000360000200541046a2105200341046a21030b20064102710440200520032f00003b0000200541026a2105200341026a21030b2006410171450d00200520032d00003a00000b20000b750020004200370210200042ffffffff0f370208200020023602042000200136020002402003410871450d002000109a0120024f0d002003410471044010010c010b200042003702000b02402003411071450d002000109a0120024d0d0020034104710440100120000f0b200042003702000b20000b3a01017f02402000280200220104402000280204450d0120010f0b41d80d41df0d41b40141980e1065000b41a30e41df0d41b50141980e1065000b820101047f230041106b2201240002402000280204450d0020002802002d000041c001490d00200141086a2000109e01200128020c210003402000450d01200141002001280208220320032000109c0122046a20034520002004497222031b3602084100200020046b20031b2100200241016a21020c000b000b200141106a240020020b09002000410374103c0be70101037f230041106b2204240020004200370200200041086a410036020020012802042103024002402002450440200321020c010b410021022003450d002003210220012802002d000041c001490d00200441086a2001109e0120004100200428020c2201200428020822022001109c0122032003417f461b20024520012003497222031b220536020820004100200220031b3602042000200120056b3602000c010b20012802002103200128020421012000410036020020004100200220016b20034520022001497222021b36020820004100200120036a20021b3602040b200441106a24000b4101017f200028020445044010010b0240200028020022012d0000418101470d00200028020441014d047f100120002802000520010b2c00014100480d0010010b0be30101047f027f2001105a2203200128020422024b047f41ba0a103620012802040520020b04404100200110522c0000417f4a0d011a0b0240024020011059450d00200110522d000041b801490d00200110522d000041c97e6a21020c010b410021022001102c450d00200110522d000041f801490d00200110522d000041897e6a21020b200241016a0b21022000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b7801027f20002101024003402001410371044020012d0000450d02200141016a21010c010b0b2001417c6a21010340200141046a22012802002202417f73200241fffdfb776a7141808182847871450d000b0340200241ff0171450d01200141016a2d00002102200141016a21010c000b000b200120006b0b1900200028020445044041000f0b200010522d000041c001490bff0201037f200028020445044041000f0b2000105641012102024020002802002c00002201417f4a0d00200141ff0171220341b7014d0440200341807f6a0f0b02400240200141ff0171220141bf014d0440024020002802042201200341c97e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241b7012101034020012003460440200241384f0d030c0405200028020020016a41ca7e6a2d00002002410874722102200141016a21010c010b000b000b200141f7014d0440200341c07e6a0f0b024020002802042201200341897e6a22024d047f100120002802040520010b4102490d0020002802002d00010d0010010b200241054f044010010b20002802002d000145044010010b4100210241f701210103402001200346044020024138490d0305200028020020016a418a7e6a2d00002002410874722102200141016a21010c010b0b0b200241ff7d490d010b10010b20020b5b00024020002d0000410171450440200041003b01000c010b200028020841003a00002000410036020420002d0000410171450d00200041003602000b20002001290200370200200041086a200141086a280200360200200110160b25002000200120026a417f6a220241087641fcffff07716a280200200241ff07714102746a0b2801017f200028020820002802046b2201410874417f6a410020011b200028021420002802106a6b0b2501017f200028020821020340200120024645044020002002417c6a22023602080c010b0b0b1e01017f03402000044020004108762100200141016a21010c010b0b20010ba10202057f017e230041206b22052400024020002802082202200028020c2203470d0020002802042204200028020022064b04402000200420022004200420066b41027541016a417e6d41027422036a106122023602082000200028020420036a3602040c010b200541086a200320066b2202410175410120021b220220024102762000410c6a10622103200028020821042000280204210203402002200446450440200328020820022802003602002003200328020841046a360208200241046a21020c010b0b20002902002107200020032902003702002003200737020020002902082107200020032902083702082003200737020820031063200028020821020b200220012802003602002000200028020841046a360208200541206a24000b2501017f200120006b2201410275210320010440200220002001106b0b200220034102746a0b4f01017f2000410036020c200041106a2003360200200104402001410274103c21040b200020043602002000200420024102746a22023602082000200420014102746a36020c2000200236020420000b2b01027f200028020821012000280204210203402001200247044020002001417c6a22013602080c010b0b0b1b00200120006b22010440200220016b220220002001106b0b20020b3501017f230041106b220424002004200236020c20042003360208200420013602042004200036020020041096014100109f011a000b4f01037f20012802042203200128021020012802146a220441087641fcffff07716a21022000027f410020032001280208460d001a2002280200200441ff07714102746a0b360204200020023602000b3601017f200028020820014904402001106a200028020020002802041050210220002001360208200020023602000b200020013602040b7a01037f0340024020002802102201200028020c460d00200141786a2802004504401001200028021021010b200141786a22022002280200417f6a220336020020030d002000200236021020002001417c6a2802002201200028020420016b220210046a1067200120002802006a22012002200110050c010b0b0b8b0101027f230041206b22032400200341106a1018418e0a1019418a08101922042000280200101a2004418a08101941930a1019418a08101941f6081019418a08101941980a1019418a08101941b40c1019418a08101920011019418a08101922012002290300102120032001280208200141016a20032d00104101711b3602002003101c200341206a24000b9b0101047f230041106b220124002001200036020c2000047f41ec25200041086a2202411076220041ec252802006a220336020041e82541e825280200220420026a41076a417871220236020002400240200341107420024d044041ec25200341016a360200200041016a21000c010b2000450d010b200040000d0010010b20042001410c6a4104105041086a0541000b2100200141106a240020000b8d0301037f024020002001460d00200120006b20026b410020024101746b4d044020002001200210501a0c010b20002001734103712103027f024020002001490440200020030d021a410021030340200120036a2105200020036a2204410371450440200220036b210241002103034020024104490d04200320046a200320056a280200360200200341046a21032002417c6a21020c000b000b20022003460d04200420052d00003a0000200341016a21030c000b000b024020030d002001417f6a21040340200020026a22034103714504402001417c6a21032000417c6a2104034020024104490d03200220046a200220036a2802003602002002417c6a21020c000b000b2002450d042003417f6a200220046a2d00003a00002002417f6a21020c000b000b2001417f6a210103402002450d03200020026a417f6a200120026a2d00003a00002002417f6a21020c000b000b200320056a2101200320046a0b210303402002450d01200320012d00003a00002002417f6a2102200341016a2103200141016a21010c000b000b0b9d0102037f017e230041306b22012400109701100e2200106a2202100f2001200141186a20022000102b22004100106d024020011034220350044041c70e10360c010b41b70e106e200351044020004101106f0c010b41e308106e200351044020004102106f0c010b41d70e106e200351044020004103106f0c010b41e30e106e200351044020004104106f0c010b41e90e10360b1070200141306a24000bcf0202067f017e230041106b220324002001280208220520024b0440200341086a2001109e0120012003280208200328020c109c0136020c20032001109e01410021052001027f410020032802002207450d001a410020032802042208200128020c2206490d001a200820062006417f461b210420070b360210200141146a2004360200200141003602080b200141106a210603402001280214210402402005200249044020040d01410021040b200020062802002004411410511a200341106a24000f0b20032001109e0141002104027f410020032802002205450d001a410020032802042208200128020c2207490d001a200820076b2104200520076a0b2105200120043602142001200536021020032006410020052004109c01109d012001200329030022093702102001200128020c2009422088a76a36020c2001200128020841016a22053602080c000b000b3901027e42a5c688a1c89ca7f94b210103402000300000220250450440200041016a2100200142b383808080207e20028521010c010b0b20010be008010b7f230041d0026b220224002000102d410147044041fc0e10360b2002411c6a220042003702002002420037020420024283bebc9ee59b8e9d1b3703102002200241047236020020022000360218200241106a220c200241186a220910714504402009200210720b2002412c6a22004200370200200241c4006a22034200370200200241386a220a42cbf080c4caba99cf32370300200241406b2207200336020020022000360228200a200710714504402007200241286a10720b200241d4006a22004200370200200241ec006a22034200370200200241e0006a220b42bfd4ffbff4c3e6abb57f370300200241e8006a2208200336020020022000360250200b200810714504402008200241d0006a10720b20024180016a220342f0d4baf5b590adbf5537030020024200370378200241c8016a1027220020032903001046200241c8026a20001029024020022802c802220320022802cc022204100b2206450d00200241003602a802200242003703a002200241a0026a2006102a2003200420022802a002220320022802a402220420036b100c417f4704402002200241b0026a200341016a20042003417f736a102b103437038801200621050b2003450d00200220033602a4020b200028020c22030440200041106a20033602000b200545044020022002290378370388010b200241c8016a41ac0f1073200242c8013703d801200241e0016a41b80f1073200241f0016a42e400370300200241f8016a41c40f10734100210020024198016a2205410036020020024188026a4232370300200242003703900120024194016a41c800103c22033602002005200341c8006a36020020022003360290010340200041c8004704402003200241c8016a20006a1012200220022802940141186a220336029401200041186a21000c010b0b200241c8016a41d00f412810501a2002419c016a200241c8016a41051074200241d8016a418810290300370300200241d0016a418010290300370300200241f80f2903003703c801200241a8016a200241c8016a41031074200241ba016a41363a0000200241b8016a41b4ea003b010020024280043703c001200241b0e2c899033602b4012002200111030020022802a80122000440200241ac016a20003602000b200228029c0122000440200241a0016a20003602000b2002280290012200044020022000360294010b200241c8016a102722032002290380011075103e20032002290380011046200241c8026a20031029200241b0026a10272100200229038801107521012000200241a0026a1043220410442000200120042802046a20042802006b103e2000200229038801104620022802cc02210120022802c802210520024198026a20001029200228029802210620024190026a20001029200520012006200228029402100a200428020022010440200420013602040b200028020c22040440200041106a20043602000b200328020c22000440200341106a20003602000b200b20081076200a20071076200c20091076200241d0026a24000b880101037f41cc25410136020041d0252802002100034020000440034041d42541d4252802002201417f6a2202360200200141014845044041cc254100360200200020024102746a22004184016a280200200041046a28020011030041cc25410136020041d02528020021000c010b0b41d425412036020041d025200028020022003602000c010b0b0ba60301057f230041c0016b22022400200241306a1027220520002903001046200241286a20051029024020022802282203200228022c2204100b2206450440410021000c010b410021002002410036022020024200370318200241186a2006102a2003200420022802182204200228021c220320046b100c417f47044002402002200441016a20032004417f736a102b2200102c044020024188016a20001031200241f8006a200010320340200228028c01200228027c460440200228029001200228028001460d030b200241e0006a20024188016a1033200241c8006a1018210320024200370358200241e0006a102c45044041ba0a10360b200241e0006a1053410247044041ba0a10360b200241b0016a1018210020024198016a200241e0006a4100106d20024198016a2000103920032000105b20024198016a200241e0006a4101106d200220024198016a103437035820024198016a2001200241c8006a101420024188016a10350c000b000b41ba0a10360b200621000b2004450d002002200436021c0b200528020c22030440200541106a20033602000b200241c0016a240020000bab0401097f230041106b22062400024020002001460d00200141046a21082001280200210102402000280208450d00200028020021032000200041046a3602002000410036020820002802042102200041003602042002410036020820032802042202200320021b2102034020022203450d0120012008470440200341106a2105024020012003460d00200128021420012d00102202410176200241017122071b2102410a21042001280218200141116a20071b210720052d0000220a410171220904402005280200417e71417f6a21040b200220044d0440027f20090440200341186a2802000c010b200541016a0b210420020440200420072002106b0b200220046a41003a000020052d00004101710440200341146a20023602000c020b200520024101743a00000c010b20052004200220046b027f20090440200341146a2802000c010b200a4101760b2204410020042002200710770b20032001290320370320024020032802082202450440410021020c010b2003200228020022044604402002410036020020022802042204450d012004107821020c010b200241003602042004450d002004107821020b2000200641086a200510792105200020062802082005200310172001107a21010c010b0b0340200328020822030d000b200821010b034020012008460d014128103c220341106a2202200141106a101220002006410c6a2002107921022000200628020c2002200310172001107a21010c000b000b200641106a24000b1d0020004200370200200041086a41003602002000200120011058107b0b4e01017f20004100360208200042003702002002044020002002105422033602002000200336020420002003200241037422026a36020820032001200210501a2000200028020420026a3602040b0b5101037f230041206b22012400200141186a4100360200200141106a4200370300200141086a420037030020014200370300200120001041210220012802002103200241046a1042200141206a240020030bc60301067f23004180016b22022400200241206a1027220520002903001075103e200520002903001046200241186a20051029200210272107200241d0006a4100360200200241c8006a4200370300200241406b42003703002002420037033802402001280208450440200241386a103f0c010b200141046a2103200241386a410010402104200128020021000340200020034604402004410110401a05200241d8006a200041106a1012200441001040200241f0006a200241d8006a1013104820022903681041410110401a2000107a21000c010b0b0b20022802382100200241386a41047210422007200241d8006a1043220610442007200020062802046a20062802006b103e2007200128020810452103200141046a21042001280200210003402000200446450440200341021045200241386a200041106a10131049200029032010462000107a21000c010b0b200228021c210020022802182104200241386a2003102920022802382101200241f0006a200310292004200020012002280274100a200628020022000440200620003602040b200328020c22000440200341106a20003602000b200528020c22000440200541106a20003602000b20024180016a24000bc60101027f027f20002d0000410171044020002802080c010b200041016a0b2109416f2108200141e6ffffff074d0440410b20014101742208200120026a220120012008491b220141106a4170712001410b491b21080b2008103c2101200404402001200920041098010b20060440200120046a200720061098010b200320056b220320046b22070440200120046a20066a200420096a20056a20071098010b200020013602082000200320066a220436020420002008410172360200200120046a41003a00000b1d01017f03402000220128020022000d00200128020422000d000b20010b5c01017f0240200028020422030440034002402002200341106a104c044020032802002200450d040c010b200328020422000d0020012003360200200341046a0f0b200021030c000b000b200041046a21030b2001200336020020030b3601017f024020002802042201044003402001220028020022010d000c020b000b0340200020002802082200280200470d000b0b20000b5b01027f02402002410a4d0440200020024101743a0000200041016a21030c010b200241106a4170712204103c21032000200236020420002004410172360200200020033602080b200320012002109801200220036a41003a00000b8117030f7f027e037c230041306b220a2400200a200236020c4105410620001b210b200a410f6a21110340410020066b21070240034020022d00002204450d01200441254704402004411874411875200020062001200b110200200a200241016a220236020c2007417f6a2107200641016a21060c010b0b200a200241016a220236020c410021040340024002400240024020022c0000220941556a220541054b0440200941606a220541034b0d0102400240200541016b0e03030301000b200a200241016a220236020c200441087221040c060b200a200241016a220236020c200441107221040c050b200541016b0e050002000003010b0240200941506a41ff017141094d0440200a410c6a107f210d200a28020c21020c010b4100210d2009412a470d0020032802002105200a200241016a220236020c2004410272200420054100481b210420052005411f7522096a200973210d200341046a21030b41002109024020022d0000412e470d00200a200241016a220836020c200441800872210420022d0001220541506a41ff017141094d0440200a410c6a107f2109200a28020c21020c010b200541ff0171412a470440200821020c010b20032802002105200a200241026a220236020c20054100200541004a1b2109200341046a21030b0240024020022c000041987f6a411f77220541094b0d000240024002400240200541016b0e09020004040403040403010b200a200241016a220836020c20022d0001220541ec004704402004418002722104200821020c050b200a200241026a220236020c20044180067221040c030b200a200241016a220836020c20022d0001220541e8004704402004418001722104200821020c040b200a200241026a220236020c200441c0017221040c020b200a200241016a220236020c20044180047221040c010b200a200241016a220236020c20044180027221040b20022d000021050b0240024002400240024002400240024002402005411874411875220c419e7f6a220841164b0440200c4125470440200c41c600460d07200c41d800470d020c080b4125200020062001200b1102000c020b200841016b0e15040600050000060000000000060200000300060000060b200c200020062001200b1102000b200a200241016a220236020c200641016a21060c0c0b200b2000200620012003280200410041102009410820044121721080012106200a200241016a220236020c200341046a21030c0b0b20032802002205417f6a21070340200741016a22072d00000d000b200720056b2207200920072009491b2007200441800871220c410a761b210802402004410271220e0440200621040c010b410021070340200620076a2104200720086a220f200d4f4504404120200020042001200b110200200741016a21070c010b0b200f41016a21080b200341046a21030340024020052d00002206450d00200c04402009450d012009417f6a21090b2006411874411875200020042001200b110200200441016a2104200541016a21050c010b0b200e450440200421060c050b410021070340200420076a2106200720086a200d4f0d054120200020062001200b110200200741016a21070c000b000b410121070240200441027122090440200621050c010b410121040340200420066a417f6a21052004200d4f450440200441016a21044120200020052001200b1102000c010b0b200441016a21070b20032c0000200020052001200b110200200541016a21062009450d0203402007200d4f0d034120200020062001200b110200200641016a2106200741016a21070c000b000b200941062004418008711b22094103744190106a2108200341076a417871220e2b0300211541002105034002402009410a490d002005411f4b0d00200a41106a20056a41303a0000200841786a21082009417f6a2109200541016a21050c010b0b027f4400000000000000002015a1201520154400000000000000006322101b22159944000000000000e0416304402015aa0c010b4180808080780b2103027f20152003b7a120082b03002217a2221644000000000000f041632016440000000000000000667104402016ab0c010b41000b210c02402016200cb8a1221644000000000000e03f644101734504402017200c41016a220cb8654101730d01200341016a21034100210c0c010b201644000000000000e03f620d00200c45200c41017172200c6a210c0b4100210802402015440000c0ffffffdf41640d00024020090440200520096a41606a2112034002402005412046044041202105201221090c010b200a41106a20056a200c200c410a6e220841766c6a4130723a0000200541016a21052009417f6a2109200c41094b210f2008210c200f0d010b0b034002402005411f4b22080d002009450d00200a41106a20056a41303a0000200541016a21052009417f6a21090c010b0b20080d01200a41106a20056a412e3a0000200541016a21050c010b20152003b7a1221544000000000000e03f64410173450440200341016a21030c010b20032003201544000000000000e03f61716a21030b03402005411f4d0440200a41106a20056a20032003410a6d220941766c6a41306a3a0000200541016a2105200341096a210820092103200841124b0d010b0b20044103712109034002402005411f4b0d0020094101470d002005200d4f0d00200a41106a20056a41303a0000200541016a21050c010b0b20044101712108200441027121090240200d2004410c714100472010726b20052005200d461b2205411f4b0d0002402010410173450440200a41106a20056a412d3a00000c010b20044104710440200a41106a20056a412b3a00000c010b2004410871450d01200a41106a20056a41203a00000b200541016a21050b024020082009720440200621080c010b410021040340200420066a2108200420056a200d4f0d014120200020082001200b110200200441016a21040c000b000b200720086a2106034020050440200520116a2c0000200020082001200b110200200641016a21062005417f6a2105200841016a21080c010b0b2009450d0003402006200d4f0d014120200020082001200b110200200641016a2106200841016a21080c000b000b200e41086a2103200a200241016a220236020c200821060c080b41102108024002400240200541ff0171220741d8004622050d00200741f800460d00200741ef00460440410821080c020b200741e200460440410221080c020b2004416f712104410a21080b2004412072200420051b2104200741e400460d01200741e900460d010b200441737121040b2004417e7120042004418008711b2104200741e900474100200741e400471b4504402004418004710440200b200020062001200341076a417871220729030022132013423f8722147c2014852013423f88a72008ad2009200d20041081012106200741086a21030c030b2004418002710440200b200020062001200328020022072007411f7522056a2005732007411f7620082009200d200410800121060c020b200b200020062001027f200441c00071044020032c00000c010b2003280200220741107441107520072004418001711b0b2207411f75220520076a2005732007411f7620082009200d200410800121060c010b2004418004710440200b200020062001200341076a417871220729030041002008ad2009200d20041081012106200741086a21030c020b2004418002710440200b2000200620012003280200410020082009200d200410800121060c010b200b200020062001027f200441c00071044020032d00000c010b2003280200220741ffff037120072004418001711b0b410020082009200d200410800121060b200341046a21030b200a200241016a220236020c0c050b200a200241016a220236020c200441047221040c020b200a200241016a220236020c200441027221040c010b200a200241016a220236020c200441017221040c000b000b0b4100200020062001417f6a20062001491b2001200b110200200a41306a240020060b140020022003490440200120026a20003a00000b0b0300010b4501037f20002802002101034020012d000041506a41ff017141094b4504402000200141016a220336020020012c00002002410a6c6a41506a2102200321010c010b0b20020bae0101067f230041206b220b240020092009416f7120041b210c02402004450440200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a2004200420066e220e20066c6b220a4130200d200a41187441808080d000481b6a3a0000200941016a210a2009411e4b0d01200420064f210f200a2109200e2104200f0d000b0b2000200120022003200b200a2005200620072008200c1082012104200b41206a240020040bbb0102057f017e230041206b220b240020092009416f712004420052220a1b210c0240200a4504404100210a200c418008710d010b200c41207141e1007341f6016a210d4100210903402009200b6a4130200d20042004200680220f20067e7da7220a41187441808080d000481b200a6a3a0000200941016a210a2009411e4b0d01200420065a210e200a2109200f2104200e0d000b0b2000200120022003200b200a20052006a720072008200c1082012109200b41206a240020090bf20401037f200a410271210d2005210b02400340200d0d010240200b20084f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410371410147210c2005210b02400340200c0d010240200b20094f0d00200b411f4b0d002004200b6a41303a0000200b41016a210b0c010b0b200b21050b200a410171210c024002400240200a41107104400240200a418008710d002005450d002005200847410020052009471b0d002005417e6a2005417f6a220b200b1b200b20074110461b21050b0240200741104604400240200a412071220b0d002005411f4b0d00200420056a41f8003a0000200541016a21050c020b200b450d012005411f4b0d01200420056a41d8003a0000200541016a21050c010b20074102470d002005411f4b0d00200420056a41e2003a0000200541016a21050b2005411f4b0d01200420056a41303a0000200541016a21050c010b20050d00410021050c010b2009200a410c714100472006726b200520052009461b2205411f4b0d010b20060440200420056a412d3a0000200541016a21050c010b200a4104710440200420056a412b3a0000200541016a21050c010b200a410871450d00200420056a41203a0000200541016a21050b2002210b0240200c200d720d002005210c0340200c20094f0d0141202001200b20032000110200200c41016a210c200b41016a210b0c000b000b2004417f6a210c037f2005047f2005200c6a2c00002001200b200320001102002005417f6a2105200b41016a210b0c01050240200d450d00410020026b210503402005200b6a20094f0d0141202001200b20032000110200200b41016a210b0c000b000b200b0b0b0bfc0202027f017e02402002450d00200020013a0000200020026a2203417f6a20013a000020024103490d00200020013a0002200020013a00012003417d6a20013a00002003417e6a20013a000020024107490d00200020013a00032003417c6a20013a000020024109490d002000410020006b41037122046a2203200141ff017141818284086c22013602002003200220046b417c7122046a2202417c6a200136020020044109490d002003200136020820032001360204200241786a2001360200200241746a200136020020044119490d002003200136021820032001360214200320013602102003200136020c200241706a20013602002002416c6a2001360200200241686a2001360200200241646a20013602002001ad220542208620058421052004200341047141187222016b2102200120036a2101034020024120490d0120012005370300200141186a2005370300200141106a2005370300200141086a2005370300200141206a2101200241606a21020c000b000b20000b5901017f200020002802482201417f6a20017236024820002802002201410871044020002001412072360200417f0f0b200042003702042000200028022c220136021c200020013602142000200120002802306a36021041000b4402017f017e200142ffffffffffff3f832103027f2001423088a741ffff0171220241ffff01470440410420020d011a410241032000200384501b0f0b2000200384500b0bc80101037f230041206b2204240002402002423088a7220641ffff0171220541ffff01460d0020054504402003027f4100200120024200420010a801450d001a20042001200242808080808080c0bbc000108701200441106a2004290300200441086a29030020031086012004290318210220042903102101200328020041887f6a0b3602000c010b200320054182807f6a360200200242ffffffffffff3f832006418080027141feff0072ad4230868421020b2000200137030020002002370308200441206a24000bac0a02047f107e230041e0006b220424002004200242ffffffffffff3f83370358200420013703502004200342ffffffffffff3f83220c370348200442003703402002200385428080808080808080807f8321090240027e02400240024002402002423088a741ffff01712206417f6a41fdff014d41002003423088a741ffff01712205417f6a41feff01491b0d00200150200242ffffffffffffffffff0083220a42808080808080c0ffff0054200a42808080808080c0ffff00511b450440200242808080808080208421090c060b4101200342ffffffffffffffffff0083220242808080808080c0ffff0054200242808080808080c0ffff00511b45044020034280808080808020842109420021010c060b2001200a42808080808080c0ffff008584500440200250450d0242808080808080e0ffff0021090c030b200242808080808080c0ffff00855004402001200a84210242002101200250044042808080808080e0ffff0021090c070b200942808080808080c0ffff008421090c060b2001200a842103420021012003500d052002500d05200a42ffffffffffff3f580440200441d0006a10a70121070b200242ffffffffffff3f560d00200441406b10a70120076a21072004290348210c200429034021080b2004200837034020042004290358220d42808080808080c00084220f3703582004200c42808080808080c0008422103703482004290350220342208822022008420f86428080feff0f8322017e2211200342ffffffff0f832203200842118842ffffffff0f83220a7e7c220e4220862212200120037e7c220b201254ad200d42ffffffff0f83220d20017e22142003200c420f8620084231888442ffffffff0f8322087e7c22122002200a7e7c2213200e201154ad422086200e422088847c220e2001200f422088220c7e2215201042118842ffffffff0f83220120037e7c220f200a200d7e7c2210200220087e7c22114220867c22167c2103200520066a20076a4181807f6a21050240200a200c7e22172008200d7e7c220a201754ad200a200120027e7c2202200a54ad7c2001200c7e7c2001200d7e22012008200c7e7c2208200154ad4220862008422088847c200220084220867c2208200254ad7c20082012201454ad2013201254ad7c7c2202200854ad7c20022011201054ad200f201554ad2010200f54ad7c7c4220862011422088847c2208200254ad7c2008200e201354ad2016200e54ad7c7c2202200854ad7c220842808080808080c0008350450440200541016a21050c010b200b423f88210120084201862002423f8884210820024201862003423f88842102200b420186210b200120034201868421030b200541ffff014e0440200942808080808080c0ffff008421090c020b200541004a0d02410120056b220641ff004b0d01200441106a200b2003200610a401200441206a20022008200541ff006a220510a301200441306a200b2003200510a301200420022008200610a4012004290330200441386a29030084420052ad200429032020042903108484210b200441286a290300200441186a29030084210320042903002102200441086a2903000c030b200942808080808080c0ffff008421090b420021010c020b200842ffffffffffff3f832005ad423086840b2009842109200b502003427f552003428080808080808080807f511b4504402009200242017c2201200254ad7c21090c010b200b2003428080808080808080807f858450450440200221010c010b2009200220024201837c2201200254ad7c21090b2000200937030820002001370300200441e0006a24000bdf2f021d7f047e230041e03c6b220624002006418a243602d002200641b6026a211d419e7d20066b211e200641df026a211f200641e0026a410872211c200641e0026a410972211820064190396a2120200641e0026a211a200641b7026a211602400240024003400240200441ffffffff0720126b4a0d00200420126a2112024002400240027f0240027f02400240024002400240024002400240024002400240024002400240024020062802d00222092d000022070440410021042009210503400240200741ff01712207450d0020074125460d00200441016a210420052d00012107200541016a21050c010b0b200620053602d0022004210503400240200520096a22072d00004125470d00200741016a2d00004125470d00200441016a2104200541026a21050c010b0b200620073602d002200441ffffffff0720126b220b4a0d16200004402000200920041089010b20040d17417f210f200741016a22042c000041506a220541094d0440200741036a2004200741026a2d000041244622071b21042005417f20071b210f4101201720071b21170b4100210503400240200620043602d00220042c0000220a41606a2207411f4b0d00410120077422074189d10471450d00200441016a2104200520077221050c010b0b0240200a412a460440027f0240200441016a220a2c000041506a220741094b0d00200441026a2d00004124470d00200320074102746a410a360200200441036a210a41012117200441016a2c000041047420026a41807a6a2802000c010b20170d0620004504402006200a3602d00241002117410021100c030b20012001280200220441046a3602004100211720042802000b21102006200a3602d0022010417f4a0d01410020106b211020054180c0007221050c010b200641d0026a108a0122104100480d1720062802d002210a0b41002104417f2108027f200a2d0000412e470440200a210741000c010b200a2d0001412a460440027f0240200a2c000241506a220741094b0d00200a2d00034124470d00200320074102746a410a360200200a41046a2107200a2c000241047420026a41807a6a2802000c010b20170d06200a41026a210741002000450d001a20012001280200220a41046a360200200a2802000b2108200620073602d0022008417f73411f760c010b2006200a41016a3602d002200641d0026a108a01210820062802d002210741010b210e03402004210a20072c000041bf7f6a220441394b0d03200741016a2107200a413a6c20046a41e01f6a2d00002204417f6a4108490d000b200620073602d0022004450d030240024002402004411b460440200f417f4c0d010c070b200f4100480d012003200f4102746a200436020020062002200f4104746a22042903003703c0022006200441086a2903003703c8020b410021042000450d190c010b2000450d1a200641c0026a20042001108b010b200541ffff7b712211200520054180c000711b210c2007417f6a2c00002204415f7120042004410f714103461b2004200a1b221341ad7f6a220441254d0d01201341bf7f6a220441064b0d040240200441016b0e03050005060b200641003602fc01200620062903c0023e02f8012006200641f8016a3602c002417f2108200641f8016a0c100b20000d192017450d18200241106a2107200341046a210541012104034002402004410a47047f200528020022090d01200405410a0b41027421040340200441046a2205412c460440410121120c1d0b200320046a2107200521042007280200450d000b0c040b200720092001108b01200741106a2107200541046a2105200441016a21040c000b000b200441016b0e25020202020b0202020202020202030207080303030208020202050c090a020204020f02020b0d0b200620073602d0020b41e02541163602000c140b4100210541c023210f0c0f0b2008417f4c4100200e1b0d1020062903c002212220062903c80221212006410036028c03027f2021427f5704402021428080808080808080807f8521214101211541d1230c010b200c4180107104404101211541d4230c010b41d72341d223200c41017122151b0b211b02402022202110850141014c0440200041202010201541036a22042011108c012000201b2015108901200041ec2341f023201341207141057622051b41e42341e82320051b2022202120222021108d011b41031089012000412020102004200c4180c00073108c012010200420042010481b21040c010b200641e0016a202220212006418c036a108601200641d0016a20062903e001222120062903e801222220212022108e0120062903d0012221200641d8016a29030022224200420010a80104402006200628028c03417f6a36028c030b2013412072221941e100460440201b41096a201b201341207122091b210e02402008411a4b0d00411b20086b450d00200841656a210442808080808080c081c000212342002124034020040440200641f0006a2024202342808080808080c081c000108701200441016a2104200641f8006a2903002123200629037021240c010b0b200e2d0000412d460440200641406b20212022428080808080808080807f8520242023108f01200641306a202420232006290340200641c8006a290300108e01200641386a290300428080808080808080807f852122200629033021210c010b200641e0006a2021202220242023108e01200641d0006a2006290360200641e8006a29030020242023108f01200641d8006a2903002122200629035021210b2015410272210a201a200628028c0322052005411f7522046a200473ad201a1090012204460440200641303a00df02201f21040b2004417e6a220f2013410f6a3a00002004417f6a412d412b20054100481b3a0000200c410871210b200641e0026a21050340200641206a202120221091012207109201200641106a202120222006290320200641286a290300108f0120062006290310200641186a29030042808080808080c081c00010870120052204200741b0236a2d00002009723a0000200641086a2903002122200629030021210240200441016a2205200641e0026a6b4101470d000240200b0d00200841004a0d00202120224200420010a801450d010b2004412e3a0001200441026a21050b202120224200420010a8010d000b417f210441fdffffff07200a201a200f6b22096a220b6b2008480d01200041202010200b200841026a2005200641e0026a6b22072005201e6a2008481b200720081b22056a2204200c108c012000200e200a1089012000413020102004200c4180800473108c012000200641e0026a200710890120004130200520076b41004100108c012000200f20091089012000412020102004200c4180c00073108c012010200420042010481b21040c010b200841004821040240202120224200420010a801450440200628028c03210e0c010b200641c0016a2021202242808080808080c08dc0001087012006200628028c0341646a220e36028c03200641c8016a290300212220062903c00121210b4106200820041b210d20064190036a2020200e4100481b221421050340200641b0016a202120221093012204109401200641a0016a2021202220062903b001200641b8016a290300108f0120064190016a20062903a001200641a8016a2903004280808080e59ab78ec00010870120052004360200200541046a2105200629039001222120064198016a29030022224200420010a8010d000b2014210b0340200e41014e04402005417c6a2104200e411d200e411d481b2209ad21224100210703402004200b4f044020042007ad20043502002022867c22212021428094ebdc038022214280ec94a37c7e7c3e02002004417c6a21042021a721070c010b0b20070440200b417c6a220b20073602000b034020052204200b4b04402004417c6a2205280200450d010b0b200e20096b210e200421050c010b0b2006200e36028c03200d412d6a41096e41016a21110340200e417f4c044041002107418094ebdc0341094100200e6b200e4177481b220a762108417f200a74417f73210f200b2104034020042005490440200420042802002209200a7620076a360200200441046a21042009200f7120086c21070c010b0b2014200b200b41046a200b2802001b220b201941e600461b220420114102746a2007044020052007360200200541046a21050b2005200520046b41027520114a1b2105200a200e6a210e0c010b0b2006200e36028c03410021070240200b20054f0d002014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200d41002007201941e600461b6b201941e70046220a200d410047716b2204200520146b41027541096c41776a4804402004418080096a2204200441096d220841776c6a2104410a21090340200441074c04402009410a6c2109200441016a21040c010b0b200841027420146a220f4184807c6a22082802002204200420096e221120096c220e6b2104024041002005200f4188807c6a22194620041b0d00024020114101714504404280808080808080b8c0002121420021222008200b4d0d012009418094ebdc03470d012008417c6a2d0000410171450d010b4280808080808080b8c0002121420121220b4280808080808080ff3f42808080808080c0ff3f42808080808080e0ff3f200420094101762211461b42808080808080e0ff3f20052019461b20042011491b212302402015450d00201b2d0000412d470d002023428080808080808080807f8421234280808080808080b84021210b20064180016a2022202142002023108e012008200e36020020062903800120064188016a2903002022202110a801450d0020082009200e6a2207360200200f4180807c6a210403402007418094ebdc034f0440200441046a41003602002004200b490440200b417c6a220b41003602000b2004200428020041016a22073602002004417c6a21040c010b0b200441046a21082014200b6b41027541096c2107200b2802002109410a2104034020092004490d01200741016a21072004410a6c21040c000b000b200841046a22042005200520044b1b21050b027f0340410020052209200b4d0d011a2009417c6a2205280200450d000b41010b210e0240200a450440200c41087121080c010b2007417f73417f200d4101200d1b220420074a2007417b4a7122051b20046a210d417f417e20051b20136a2113200c41087122080d00410921050240200e450d002009417c6a280200220a450d0041002105410a21040340200a2004700d01200541016a21052004410a6c21040c000b000b200920146b41027541096c41776a2104201341207241e60046044041002108200d200420056b22044100200441004a1b2204200d2004481b210d0c010b41002108200d200420076a20056b22044100200441004a1b2204200d2004481b210d0b417f2104200d41fdffffff0741feffffff072008200d72220f1b4a0d00200d200f4100476a41016a21110240201341207241e600472219450440200741ffffffff0720116b4a0d0220074100200741004a1b210a0c010b20072007411f7522056a200573ad201a109001417e6a21050340201a20056b220a417e6a41014c0440200541016a41303a00002005417f6a21050c010b0b200520133a0000200541016a412d412b20074100481b3a0000200a41ffffffff0720116b4a0d010b200a20116a2207201541ffffffff07734a0d00200041202010200720156a2211200c108c012000201b20151089012000413020102011200c4180800473108c01024020194504402014200b200b20144b1b220721050340200520144d044020053502002018109001210402402005200747044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b20042018470d00200641303a00e802201c21040b20002004201820046b108901200541046a21050c010b0b200f0440200041f42341011089010b03400240200520094f0d00200d4101480d0020053502002018109001210403402004200641e0026a4b04402004417f6a220441303a00000c010b0b20002004200d4109200d4109481b108901200d41776a210d200541046a21050c010b0b20004130200d41096a41094100108c010c010b2009200b41046a200e1b210a200b2107034002402007200a4f0d00200d4100480d002018200735020020181090012204460440200641303a00e802201c21040b02402007200b47044003402004200641e0026a4d0d022004417f6a220441303a00000c000b000b200020044101108901200441016a21042008454100200d4101481b0d00200041f42341011089010b20002004201820046b2209200d200d20094a1b108901200741046a2107200d20096b210d0c010b0b20004130200d41126a41124100108c0120002005201a20056b1089010b2000412020102011200c4180c00073108c012010201120112010481b21040b200441004e0d110c100b20062802c002220441ca2320041b21090c010b4100210441e0252802002105037f200441d80046047f41d80005200441e0106a2d0000200546047f200405200441016a21040c020b0b0b210741c011210903402007450d01034020092d00002104200941016a2205210920040d000b2007417f6a2107200521090c000b000b4100210541ffffffff07200820084100481b210a0240024003400240200520096a21042005200a46220f0d002004410371450d0020042d0000450d02200541016a21050c010b0b41002107200f0d01200a20056b210720042d0000450d01200520096a2104034020074104490d0220042802002205417f73200541fffdfb776a71418081828478710d022007417c6a2107200441046a21040c000b000b200a20056b21070b03400240410021052007450440410021040c010b20042d0000450d002007417f6a2107200441016a21040c010b0b2009200420096b200a20041b22076a210441c023210f2008417f4a044020"; - - private static String BINARY_1 = "11210c200721080c0d0b2011210c2007210820042d0000450d0c0c0d0b200620062903c0023c00b6024100210541c023210f41012108201d2109201621042011210c0c0b0b20062903c0022221427f5704402006420020217d22213703c0024101210541c0230c080b200c4180107104404101210541c1230c080b41c22341c023200c41017122051b0c070b20062903c00221212016210903402021504504402009417f6a22092021a74107714130723a0000202142038821210c010b0b4100210541c023210f200c410871450d072008201620096b220441016a200820044a1b21080c070b20084108200841084b1b2108200c410872210c41f80021130b2013412071210420062903c00221212016210903402021504504402009417f6a22092021a7410f7141b0236a2d00002004723a0000202142048821210c010b0b4100210541c023210f200c410871450d0520062903c002500d05201341047541c0236a210f410221050c050b41002104200a41ff0171220541074b0d080240024002400240024002400240200541016b0e07010203040f0506000b20062802c00220123602000c0e0b20062802c00220123602000c0d0b20062802c0022012ac3703000c0c0b20062802c00220123b01000c0b0b20062802c00220123a00000c0a0b20062802c00220123602000c090b20062802c0022012ac3703000c080b20062802c0020b21094100210420092105024003400240024020042008470440200528020022070d01200421080b20084100480d092000412020102008200c108c0141002104034020042008460d0420092802002205450d0420054180014f0d02200620053a00f401200441016a220420084b0d042000200641f4016a4101108901200941046a21090c000b000b20074180014f0d00200620073a00f401200441016a2104200541046a21050c010b0b000b2000412020102008200c4180c00073108c0120102008201020084a1b21040c060b4100210520062903c002212141c0230b210f2021201610900121090b200e410020084100481b0d02200c41ffff7b71200c200e1b210c20062903c0022121024020080d00202150450d0041002108201621090c010b2008202150201620096b6a2204200820044a1b21080b201621040b200420096b220a20082008200a481b220841ffffffff0720056b4a0d00200520086a2207201020102007481b2204200b4a0d002000412020042007200c108c012000200f20051089012000413020042007200c4180800473108c01200041302008200a4100108c0120002009200a1089012000412020042007200c4180c00073108c010c010b0b41e02541cb003602000b417f21120c010b410021120b200641e03c6a240020120bd40101057f024020002d00004120710d0020002802102203047f20030520001084010d0120002802100b200028021422056b200249044020002001200220002802241105001a0f0b41002103024020002802504100480d0020012104034020022003460d01200341016a2103200220046a21062004417f6a220721042006417f6a2d0000410a470d000b20002001200220036b41016a220420002802241105002004490d01200220076a41016a2101200028021421052003417f6a21020b20052001200210501a2000200028021420026a3602140b0b5d01047f20002802002102034020022c000041506a220341094b450440417f21042000200241016a2202360200200141cc99b3e6004d047f417f20032001410a6c22016a200341ffffffff0720016b4a1b0520040b21010c010b0b20010ba10502017f017e230041106b220324000240200141776a220141114b0d00024002400240024002400240024002400240024002400240024002400240024002400240200141016b0e110102050304060708090a0b0c0d0e0f1011000b20022002280200220141046a360200200020012802003602000c110b20022002280200220141046a360200200020013402003703000c100b20022002280200220141046a360200200020013502003703000c0f0b20022002280200220141046a360200200020013402003703000c0e0b20022002280200220141046a360200200020013502003703000c0d0b2002200228020041076a417871220141086a360200200020012903003703000c0c0b20022002280200220141046a360200200020013201003703000c0b0b20022002280200220141046a360200200020013301003703000c0a0b20022002280200220141046a360200200020013000003703000c090b20022002280200220141046a360200200020013100003703000c080b2002200228020041076a417871220141086a360200200020012903003703000c070b20022002280200220141046a360200200020013502003703000c060b2002200228020041076a417871220141086a360200200020012903003703000c050b2002200228020041076a417871220141086a360200200020012903003703000c040b20022002280200220141046a360200200020013402003703000c030b20022002280200220141046a360200200020013502003703000c020b2002200228020041076a417871220141086a360200200320012b03001095012000200341086a290300370308200020032903003703000c010b20022002280200410f6a417071220141106a3602002001290300210420002001290308370308200020043703000b200341106a24000b6d01017f23004180026b220524000240200220034c0d0020044180c004710d0020052001200220036b22024180022002418002491b1083012103034020024180024945044020002003418002108901200241807e6a21020c010b0b2000200320021089010b20054180026a24000b63002000420052200142ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b2002420052200342ffffffffffffffffff0083220142808080808080c0ffff0056200142808080808080c0ffff00511b720bf70902037f037e230041f0006b22052400200442ffffffffffffffffff00832108024002402001427f7c2209427f51200242ffffffffffffffffff0083220a2009200154ad7c427f7c220942ffffffffffffbfffff0056200942ffffffffffffbfffff00511b4504402003427f7c2209427f5220082009200354ad7c427f7c220942ffffffffffffbfffff0054200942ffffffffffffbfffff00511b0d010b200150200a42808080808080c0ffff0054200a42808080808080c0ffff00511b45044020024280808080808020842104200121030c020b200350200842808080808080c0ffff0054200842808080808080c0ffff00511b450440200442808080808080208421040c020b2001200a42808080808080c0ffff00858450044042808080808080e0ffff00200220012003852002200485428080808080808080807f85845022061b21044200200120061b21030c020b2003200842808080808080c0ffff008584500d012001200a8450044020032008844200520d0220012003832103200220048321040c020b200320088450450d0020012103200221040c010b20052003200120032001562008200a562008200a511b22061b37036020052004200220061b220842ffffffffffff3f8337036820052002200420061b220242ffffffffffff3f83220437035820052001200320061b22013703502002423088a741ffff017121072008423088a741ffff01712206450440200541e0006a10a50121060b2007450440200541d0006a10a501210720052903582104200529035021010b200520014203862203370350200520052903602209420386220a370360200520052903684203862009423d8884428080808080808004842209370368200520044203862001423d888442808080808080800484220437035820022008852101200620076b220704402005027e200741ff004d0440200541306a20032004200710a401200541406b2003200441800120076b10a3012005200541386a290300220437035820052903302005290340200541c8006a29030084420052ad840c010b420021042005420037035842010b22033703500b02402001427f5704402005200a20037d22013703602005200920047d200a200354ad7d2203370368200120038450044042002103420021040c030b200342ffffffffffffff03560d01200541206a200120032001200310a60141746a220710a3012005200541286a2903002203370368200520052903202201370360200620076b21060c010b20052003200a7c220137036020052001200354ad200420097c7c2204370368200442808080808080800883500440200421030c010b200520044201882203370368200520014201832004423f86200142018884842201370360200641016a21060b2008428080808080808080807f832104200641ffff014e0440200442808080808080c0ffff00842104420021030c010b410021070240200641004a0440200621070c010b200520012003410120066b10a401200541106a20012003200641ff006a10a3012005200541086a2903002203370368200520052903002005290310200541186a29030084420052ad8422013703600b200342038842ffffffffffff3f832004842007ad423086842003423d8620014203888422042001a7410771220641044bad7c2203200454ad7c2003420183420020064104461b220120037c2203200154ad7c21040b2000200337030020002004370308200541f0006a24000b4501017f230041106b2205240020052001200220032004428080808080808080807f85108e01200529030021012000200529030837030820002001370300200541106a24000b6602027f017e03402000428080808010544504402001417f6a220120002000420a80220442767e7ca74130723a0000200421000c010b0b2000a721020340200204402001417f6a220120022002410a6e220341766c6a4130723a0000200321020c010b0b20010b860101027f230041106b22032400027f41002001423088a741ffff0171220241ffff00490d001a41808080807841ffffffff0720014200531b20024181807f6a41204f0d001a20032000200142ffffffffffff3f8342808080808080c0008441ef800120026b10a4014100200328020022026b200220014200531b0b2102200341106a240020020b820102027f017e230041106b220324002000027e200145044042000c010b200320012001411f7522026a2002732202ad4200200267220241d1006a10a301200341086a29030042808080808080c00085419e800120026bad4230867c200141808080807871ad42208684210420032903000b37030020002004370308200341106a24000b6e01037f230041106b22022400024020014200530d002001423088a741ffff0171220441ffff00490d00417f210320044181807f6a411f4b0d0020022000200142ffffffffffff3f8342808080808080c0008441ef800120046b10a401200228020021030b200241106a240020030b6a02017f017e230041106b220224002000027e200145044042000c010b20022001ad420041f000200167411f7322016b10a301200241086a29030042808080808080c00085200141ffff006aad4230867c210320022903000b37030020002003370308200241106a24000b840102027f027e230041106b220224002001bd22044280808080088321052000027e200442ffffffff078322045004404200210442000c010b2002200442002004a7672203413c6a10a301200241086a29030042808080808080c000854181f80020036bad42308684210420022903000b37030020002004200584370308200241106a24000bd20201037f230041b0026b220124002001200036020c200120003602ac0220014180026a410041281083011a200120012802ac023602a8024100200141a8026a200141e0006a20014180026a10880141004e044041fc242802001a41b024280200210241f82428020041004c044041b0242002415f713602000b027f0240024041e02428020045044041e02441d00036020041cc24410036020041c024420037030041dc24280200210341dc24200141106a3602000c010b41c0242802000d010b417f41b0241084010d011a0b41b024200141a8026a200141e0006a20014180026a1088010b2100200241207121022003047f41b0244100410041d4242802001105001a41e024410036020041dc24200336020041cc24410036020041c024410036020041c424280200210341c424410036020041000520000b1a41b02441b0242802002002723602000b200141b0026a24000b3501017f230041106b220041f0a50436020c41e425200028020c41076a417871220036020041e825200036020041ec253f003602000b10002002044020002001200210501a0b0b940101027f027f20002d0000410171044020002802080c010b200041016a0b2106416f2105200141e6ffffff074d0440410b20014101742205200120026a220120012005491b220541106a4170712005410b491b21050b2005103c2101200404402001200620041098010b200320046b22030440200120046a200420066a20031098010b20002001360208200020054101723602000b2f01017f200028020445044041000f0b4101210120002802002c0000417f4c047f2000109b012000105a6a0520010b0b5b00027f027f41002000280204450d001a410020002802002c0000417f4a0d011a20002802002d0000220041bf014d04404100200041b801490d011a200041c97e6a0c010b4100200041f801490d001a200041897e6a0b41016a0b0b2801017f230041206b22022400200241086a2000200141141051109a012100200241206a240020000b5b01027f2000027f0240200128020022054504400c010b200220036a200128020422014b0d0020012002490d00410020012003490d011a200220056a2104200120026b20032003417f461b0c010b41000b360204200020043602000b2301017f2001105a220220012802044b044010010b200020012001109b012002109d010bb70101027f20004504404100210041c825280200044041c825280200109f0121000b41c025280200044041c025280200109f0120007221000b41c425410136020041c425410036020020000f0b200028024c1a02402000280214200028021c460d0020004100410020002802241105001a20002802140d00417f0f0b20002802042201200028020822024704402000200120026bac410120002802281111001a0b2000410036021c200042003703102000420037020441000b040041000b2901017f200028021c2203200028021420036b1000200120021000200028021420026a200028021c6b0b0400427f0b5001017e0240200341c0007104402001200341406aad862102420021010c010b2003450d0020022003ad220486200141c00020036bad88842102200120048621010b20002001370300200020023703080b6001017e0240027e200341c0007104402002200341406aad8821014200210242000c010b2003450d01200241c00020036bad8620012003ad2204888421012002200488210242000b2104200120048421010b20002001370300200020023703080b5602037f027e230041106b22012400200120002903002204200041086a220229030022052004200510a601220341716a10a3012002200141086a29030037030020002001290300370300200141106a2400411020036b0b1701017f2000200120015022021b792002410674ad7ca70b6202037f027e230041106b22012400200120002903002205200041086a220329030022042005200420045022021b792002410674ad7ca7220241716a10a301200020012903003703002003200141086a290300370300200141106a2400411020026b0bdb0102017f027e4101210402402000420052200142ffffffffffffffffff0083220542808080808080c0ffff0056200542808080808080c0ffff00511b0d002002420052200342ffffffffffffffffff0083220642808080808080c0ffff0056200642808080808080c0ffff00511b0d00200020028420052006848450044041000f0b20012003834200590440417f21042000200254200120035320012003511b0d0120002002852001200385844200520f0b417f21042000200256200120035520012003511b0d00200020028520012003858442005221040b20040b0bcb1b14004180080b8908696e7465726e616c3a0020007374617465733a0074696d657374616d703a00636f756e7465723a0072616e646f6d3a002573090a00417373657274696f6e206661696c65643a00636f756e7465725f2d3e73697a65282920213d20300066756e633a00616374696f6e006c696e653a0066696c653a002f686f6d652f706c61746f6e2f2e6a656e6b696e732f776f726b73706163652f636f6e7472616374735f746573745f616c6179612f63617365732f436f6e7472616374734175746f54657374732f7372632f746573742f7265736f75726365732f636f6e7472616374732f7761736d2f73746f726167652f5761736d53746f726167652e63707000636f756e7465722072656d6f766564006c696e650066696c650066756e630063757272656e743a00636865636b00636865636b207072656669783a006261642063617374007665632e73697a652829203d3d20333200766563746f722073697a65206572726f722073697a653a006578636570743a3332006b203d3d20636f756e74657200766563746f72206973206e6f7420657175616c2076616c75653a006578636570743a00216861735f7374617465286b65792900737472696e672068616420657869737473007374722e6c656e6774682829203d3d206c656e67746800737472696e67206c656e677468206572726f72206c656e6774683a0073203d3d206b4e756d6265725b696e6465785d00737472696e6720206572726f7220733a007772697465007772697465207072656669783a0072616e646f6d0077726974652072616e646f6d20646174613a006e756d6265723a0077726974652072616e646f6d2073697a653a006c697374537461636b206973206e6f7420656d7074790070656e64696e675f2e73697a652829203e2030002f7573722f6c6f63616c2f62696e2f2e2e2f706c61746f6e2e6364742f696e636c7564652f706c61746f6e2f726c705f73697a652e687070006f70657261746f723c3c006d5f64617461002f7573722f6c6f63616c2f62696e2f2e2e2f706c61746f6e2e6364742f696e636c7564652f706c61746f6e2f766563746f725f7265662e68006f70657261746f725b5d005f69203c206d5f636f756e7400696e6465783a00696e6974006b496e7465726e616c3a00696e76616c6964206d6574686f640a0072616e646f6d5f64617461006465627567006e6f206d6574686f6420746f2063616c6c0a00546865206e756d626572206f66206d6574686f6420706172616d657465727320646f6573206e6f74206d617463680a00696e7465726e616c32303000696e7465726e616c31303000696e7465726e616c35300000100000000000000020000000000000004000000000000000800000000000000000010000000000001000000000000000200000000000000040004196100b8b10f03f000000000000244000000000000059400000000000408f40000000000088c34000000000006af8400000000080842e4100000000d01263410000000084d797410000000065cdcd41542122190d010203114b1c0c10040b1d121e27686e6f7071622005060f1314151a08160728241718090a0e1b1f252383827d262a2b3c3d3e3f43474a4d58595a5b5c5d5e5f60616364656667696a6b6c727374797a7b7c480000000000000000496c6c6567616c20627974652073657175656e636500446f6d61696e206572726f7200526573756c74206e6f7420726570726573656e7461626c65004e6f74206120747479005065726d697373696f6e2064656e696564004f7065726174696f6e206e6f74207065726d6974746564004e6f20737563682066696c65206f72206469726563746f7279004e6f20737563682070726f636573730046696c65206578697374730056616c756520746f6f206c6172676520666f7220646174612074797065004e6f207370616365206c656674206f6e20646576696365004f7574206f66206d656d6f7279005265736f75726365206275737900496e7465727275707465642073797374656d2063616c6c005265736f757263652074656d706f726172696c7920756e617661696c61626c6500496e76616c6964207365656b0043726f73732d646576696365206c696e6b00526561642d6f6e6c792066696c652073797374656d004469726563746f7279206e6f7420656d70747900436f6e6e656374696f6e2072657365742062792070656572004f7065726174696f6e2074696d6564206f757400436f6e6e656374696f6e207265667573656400486f737420697320646f776e00486f737420697320756e726561636861626c65004164647265737320696e207573650042726f6b656e207069706500492f4f206572726f72004e6f207375636820646576696365206f72206164647265737300426c6f636b20646576696365207265717569726564004e6f207375636820646576696365004e6f742061206469726563746f72790049732061206469726563746f727900546578742066696c652062757379004578656320666f726d6174206572726f7200496e76616c696420617267756d656e7400417267756d656e74206c69737420746f6f206c6f6e670053796d626f6c6963206c696e6b206c6f6f700046696c656e616d6520746f6f206c6f6e6700546f6f206d616e79206f70656e2066696c657320696e2073797374656d004e6f2066696c652064657363726970746f727320617661696c61626c65004261642066696c652064657363726970746f72004e6f206368696c642070726f636573730042616420616464726573730046696c6520746f6f206c6172676500546f6f206d616e79206c696e6b73004e6f206c6f636b7320617661696c61626c65005265736f7572636520646561646c6f636b20776f756c64206f63637572005374617465206e6f74207265636f76657261626c650050726576696f7573206f776e65722064696564004f7065726174696f6e2063616e63656c65640046756e6374696f6e206e6f7420696d706c656d656e746564004e6f206d657373616765206f6620646573697265642074797065004964656e7469666965722072656d6f76656400446576696365206e6f7420612073747265616d004e6f206461746120617661696c61626c65004465766963652074696d656f7574004f7574206f662073747265616d73207265736f7572636573004c696e6b20686173206265656e20736576657265640050726f746f636f6c206572726f7200426164206d6573736167650046696c652064657363726970746f7220696e20626164207374617465004e6f74206120736f636b65740044657374696e6174696f6e2061646472657373207265717569726564004d65737361676520746f6f206c617267650050726f746f636f6c2077726f6e67207479706520666f7220736f636b65740050726f746f636f6c206e6f7420617661696c61626c650050726f746f636f6c206e6f7420737570706f7274656400536f636b65742074797065206e6f7420737570706f72746564004e6f7420737570706f727465640050726f746f636f6c2066616d696c79206e6f7420737570706f7274656400416464726573732066616d696c79206e6f7420737570706f727465642062792070726f746f636f6c0041646472657373206e6f7420617661696c61626c65004e6574776f726b20697320646f776e004e6574776f726b20756e726561636861626c6500436f6e6e656374696f6e207265736574206279206e6574776f726b00436f6e6e656374696f6e2061626f72746564004e6f2062756666657220737061636520617661696c61626c6500536f636b657420697320636f6e6e656374656400536f636b6574206e6f7420636f6e6e65637465640043616e6e6f742073656e6420616674657220736f636b65742073687574646f776e004f7065726174696f6e20616c726561647920696e2070726f6772657373004f7065726174696f6e20696e2070726f6772657373005374616c652066696c652068616e646c650052656d6f746520492f4f206572726f720051756f7461206578636565646564004e6f206d656469756d20666f756e640057726f6e67206d656469756d2074797065004d756c7469686f7020617474656d70746564004e6f206572726f7220696e666f726d6174696f6e00000019000a00191919000000000500000000000009000000000b00000000000000001900110a191919030a0700011b090b18000009060b00000b0006190000001919190041b1200b210e000000000000000019000a0d191919000d00000200090e00000009000e00000e0041eb200b010c0041f7200b1513000000001300000000090c00000000000c00000c0041a5210b01100041b1210b150f000000040f0000000009100000000000100000100041df210b01120041eb210b1e11000000001100000000091200000000001200001200001a0000001a1a1a0041a2220b0e1a0000001a1a1a000000000000090041d3220b01140041df220b1517000000001700000000091400000000001400001400418d230b0116004199230b93011500000000150000000009160000000000160000160000303132333435363738394142434445462d2b2020203058307800286e756c6c29002d30582b30582030582d30782b307820307800696e6600494e46006e616e004e414e002e00256400257500256c7500256c6c6400256c6c7500417373657274696f6e206661696c65643a202573202825733a2025733a202564290a0041b0240b01050041bc240b01070041d4240b0a0800000009000000e0120041ec240b01020041fc240b08ffffffffffffffff0041c0250b023012"; - - public static String BINARY = BINARY_0 + BINARY_1; - - public static final String FUNC_RANDOM_DATA = "random_data"; - - public static final String FUNC_ACTION = "action"; - - public static final String FUNC_DEBUG = "debug"; - - protected WasmStorage(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - protected WasmStorage(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(WasmStorage.class, web3j, credentials, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(WasmStorage.class, web3j, transactionManager, contractGasProvider, encodedConstructor, chainId); - } - - public static RemoteCall deploy(Web3j web3j, Credentials credentials, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(WasmStorage.class, web3j, credentials, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public static RemoteCall deploy(Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, BigInteger initialVonValue, Long chainId) { - String encodedConstructor = WasmFunctionEncoder.encodeConstructor(BINARY, Arrays.asList()); - return deployRemoteCall(WasmStorage.class, web3j, transactionManager, contractGasProvider, encodedConstructor, initialVonValue, chainId); - } - - public RemoteCall random_data() { - final WasmFunction function = new WasmFunction(FUNC_RANDOM_DATA, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall random_data(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_RANDOM_DATA, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall action() { - final WasmFunction function = new WasmFunction(FUNC_ACTION, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall action(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_ACTION, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public RemoteCall debug() { - final WasmFunction function = new WasmFunction(FUNC_DEBUG, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function); - } - - public RemoteCall debug(BigInteger vonValue) { - final WasmFunction function = new WasmFunction(FUNC_DEBUG, Arrays.asList(), Void.class); - return executeRemoteCallTransaction(function, vonValue); - } - - public static WasmStorage load(String contractAddress, Web3j web3j, Credentials credentials, GasProvider contractGasProvider, Long chainId) { - return new WasmStorage(contractAddress, web3j, credentials, contractGasProvider, chainId); - } - - public static WasmStorage load(String contractAddress, Web3j web3j, TransactionManager transactionManager, GasProvider contractGasProvider, Long chainId) { - return new WasmStorage(contractAddress, web3j, transactionManager, contractGasProvider, chainId); - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/utils/CompileUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/utils/CompileUtil.java deleted file mode 100644 index bacd56096f..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/utils/CompileUtil.java +++ /dev/null @@ -1,85 +0,0 @@ -package network.platon.utils; - -import lombok.extern.slf4j.Slf4j; -import network.platon.autotest.utils.FileUtil; - -import java.io.BufferedReader; -import java.io.File; -import java.io.InputStreamReader; -import java.nio.file.Paths; -import java.util.concurrent.TimeUnit; - -/** - * @title CompileUtil - * @description 编译工具类 - * @author qcxiao - * @updateTime 2019/12/27 14:39 - */ -@Slf4j -public class CompileUtil { - - public void evmCompile(String filename) throws Exception { - File file = new File(filename); - String compilerVersion = file.getPath().replaceAll("(.*)(0\\..\\d*\\.\\d*)(.*$)", "$2"); - String buildPath = file.getPath().replaceAll("(.*)(0\\.\\d*\\.\\d*)(.*$)", "$1"); - if(System.getProperty("os.name").toLowerCase().startsWith("windows")){ - buildPath += "build\\" + compilerVersion + "\\"; - }else { - buildPath += "build/" + compilerVersion + "/"; - } - String contractName = file.getName().replaceAll("\\.sol", ""); - log.info(compilerVersion); - log.info(buildPath); - File buildPathFile = new File(buildPath); - if (!buildPathFile.exists() || !buildPathFile.isDirectory()) { - buildPathFile.mkdirs(); - } - File[] list = new File(buildPath).listFiles(); - if (null != list) { - for (File f : list) { - if(f.getName().equals(contractName + ".abi") || f.getName().equals(contractName + ".bin")){ - f.delete(); - } - } - } - try { - Solc.compile(filename, buildPath); - } catch (Exception e) { - e.printStackTrace(); - throw new Exception(e); - } - } - - public void wasmCompile(String file, String buildPath) throws Exception { - try { - String[] args = new String[]{"/bin/bash", "-c", "/usr/local/bin/platon-cpp" + " " + file + " " + "-o" + " " + buildPath}; - execGenerate(args); - } catch (Exception e) { - e.printStackTrace(); - throw new Exception(e); - } - } - - public static void execGenerate(String[] args) throws Exception { - Process ps = null; - StringBuffer sb = null; - BufferedReader br = null; - try { - ps = Runtime.getRuntime().exec(args); - ps.waitFor(2, TimeUnit.SECONDS); - br = new BufferedReader(new InputStreamReader(ps.getInputStream())); - sb = new StringBuffer(); - - String line; - while ((line = br.readLine()) != null) { - sb.append(line).append("\n"); - } - String result = sb.toString(); - } catch (Exception e) { - throw new Exception(); - } finally { - br.close(); - ps.destroy(); - } - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/utils/DataChangeUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/utils/DataChangeUtil.java deleted file mode 100644 index 127390e8c4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/utils/DataChangeUtil.java +++ /dev/null @@ -1,189 +0,0 @@ -package network.platon.utils; - -import com.alaya.rlp.wasm.RLPCodec; -import com.alaya.rlp.wasm.RLPList; -import com.alaya.utils.Numeric; -import org.apache.commons.lang.StringUtils; - -import java.math.BigInteger; - -/** - * @title ContractsAutoTests - * @description: 数据类型转换工具类 - * @author: hudenian - * @create: 2019/12/26 18:17 - */ -public class DataChangeUtil { - - /** - * hex字符串转byte数组 - * @param inHex 待转换的Hex字符串 - * @return 转换后的byte数组结果 - */ - public static byte[] hexToByteArray(String inHex){ - if(inHex.startsWith("0x"))inHex = inHex.substring(2); - int hexlen = inHex.length(); - byte[] result; - if (hexlen % 2 == 1){ - //奇数 - hexlen++; - result = new byte[(hexlen/2)]; - inHex="0"+inHex; - }else { - //偶数 - result = new byte[(hexlen/2)]; - } - int j=0; - for (int i = 0; i < hexlen; i+=2){ - result[j]=hexToByte(inHex.substring(i,i+2)); - j++; - } - return result; - } - - - /** - * Hex字符串转byte - * @param inHex 待转换的Hex字符串 - * @return 转换后的byte - */ - public static byte hexToByte(String inHex){ - return (byte)Integer.parseInt(inHex,16); - } - - /** - * 字节转十六进制 - * @param b 需要进行转换的byte字节 - * @return 转换后的Hex字符串 - */ - public static String byteToHex(byte b){ - String hex = Integer.toHexString(b & 0xFF); - if(hex.length() < 2){ - hex = "0" + hex; - } - return hex; - } - - /** - * 字节数组转16进制 - * @param bytes 需要转换的byte数组 - * @return 转换后的Hex字符串 - */ - public static String bytesToHex(byte[] bytes) { - StringBuffer sb = new StringBuffer(); - for(int i = 0; i < bytes.length; i++) { - String hex = Integer.toHexString(bytes[i] & 0xFF); - if(hex.length() < 2){ - sb.append(0); - } - sb.append(hex); - } - return sb.toString(); - } - - public static String subHexData(String hexStr) { - if (StringUtils.isBlank(hexStr)) { - throw new IllegalArgumentException("string is blank"); - } - if (StringUtils.startsWith(hexStr, "0x")) { - hexStr = StringUtils.substringAfter(hexStr, "0x"); - } - byte[] addi = hexStr.getBytes(); - for (int i = 0; i < addi.length; i++) { - if (addi[i] != 0) { - hexStr = StringUtils.substring(hexStr, i - 1); - break; - } - } - return hexStr; - } - - /** - * ppos系统约data字段rlp解码处理 - * 系统合约的最外层是一个RLPList - * RlpList里面放实际的RLP编码值 - * - * @param hexRlp - * @return - */ - public static String decodeSystemContractRlp(String hexRlp, long chainId) { - byte[] data = Numeric.hexStringToByteArray(hexRlp); - RLPList rlpList = RLPCodec.decode(data, RLPList.class, chainId); - return RLPCodec.decode(rlpList.get(0),String.class, chainId); - } - - public static byte[] stringToBytes32(String string) { - byte[] byteValue = string.getBytes(); - byte[] byteValueLen32 = new byte[32]; - System.arraycopy(byteValue, 0, byteValueLen32, 0, byteValue.length); - return byteValueLen32; - } - - /** - * - * @param string 需要转换成byte数组的字符串 - * @param n byten - * @return - */ - public static byte[] stringToBytesN(String string,int n) { - byte[] byteValue = string.getBytes(); - byte[] byteValueLen = new byte[n]; - System.arraycopy(byteValue, 0, byteValueLen, 0, byteValue.length); - return byteValueLen; - } - - public static void main(String[] args) { -// String hexvalue = "aaaa"; -// byte bytess = hexToByte(hexvalue); - test(); - } - - - - public static void test() { -// byte[] bytes = new byte[10000000]; -// -// for (int i = 0; i < 10000000; i++) { -// if (i%3 == 0) { -// bytes[i] = 0; -// } else { -// bytes[i] = 1; -// } -// } - - byte[] bytes = hexToByteArray("aaaa"); - - System.out.println("可以转换的进制范围:" + Character.MIN_RADIX + "-" + Character.MAX_RADIX); - System.out.println("2进制:" + binary(bytes, 2)); - System.out.println("5进制:" + binary(bytes, 5)); - System.out.println("8进制:" + binary(bytes, 8)); - - System.out.println("16进制:" + binary(bytes, 16)); - System.out.println("32进制:" + binary(bytes, 32)); - System.out.println("64进制:" + binary(bytes, 64));// 这个已经超出范围,超出范围后变为10进制显示 - - System.exit(0); - } - - /* - * 将byte[]转为各种进制的字符串 - * @param bytes byte[] - * @param radix 基数可以转换进制的范围(2-36),从Character.MIN_RADIX到Character.MAX_RADIX,超出范围后变为10进制 - * @return 转换后的字符串 - */ - public static String binary(byte[] bytes, int radix){ - return new BigInteger(1, bytes).toString(radix);// 这里的1代表正数 - } - - - public static byte[] toPrimitives(Byte[] oBytes){ - byte[] bytes = new byte[oBytes.length]; - - for(int i = 0; i < oBytes.length; i++) { - bytes[i] = oBytes[i]; - } - - return bytes; - } - -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/utils/GeneratorUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/utils/GeneratorUtil.java deleted file mode 100644 index 308cbf7043..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/utils/GeneratorUtil.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.utils; - -import lombok.extern.slf4j.Slf4j; -import network.platon.autotest.utils.FileUtil; - -import java.io.File; -import java.nio.file.Paths; - -/** - * @title 将ABI文件和二进制文件生成包装类 - * @author: qcxiao - * @create: 2019/12/27 13:53 - **/ -@Slf4j -public class GeneratorUtil { - - /** - * @description: - * @author: qcxiao - * @create: 2019/12/14 16:34 - **/ - public static void generator(File contractFile) throws Exception { - try { - String binPath = contractFile.getPath(); - String abiPath = contractFile.getPath().replace(".bin", ".abi"); - String compilerVersion = contractFile.getPath().replaceAll("(.*)(0\\..\\d*\\.\\d*)(.*$)", "$2"); - - String outputPath = FileUtil.pathOptimization(System.getProperty("user.dir") + "/src/main/java"); - String packagePath = "network.platon.contracts.evm.v" + compilerVersion.replaceAll("\\.", "_"); - log.info("packagePath: " + packagePath); - String os = System.getProperty("os.name"); - String[] args = null; - String rootPath = FileUtil.pathOptimization(Paths.get("scripts", "platon-web3j", "bin").toUri().getPath()); - - if (!os.startsWith("Linux") && !os.startsWith("Mac OS")) { - if (os.startsWith("Windows")) { - args = new String[]{"cmd", "/C", rootPath + "platon-web3j.bat" + " " + "solidity" + " " + "generate" + " " + binPath + " " + abiPath + " " + "-o" + " " + outputPath + " " + "-p" + " " + packagePath}; - } else { - log.error("Not supported operate system platform"); - } - } else { - args = new String[]{"/bin/bash", "-c", rootPath + "platon-web3j" + " " + "solidity" + " " + "generate" + " " + binPath + " " + abiPath + " " + "-o" + " " + outputPath + " " + "-p" + " " + packagePath}; - } - - CompileUtil.execGenerate(args); - } catch (Exception e) { - log.error("contract generator error:{}", e.getMessage()); - throw new Exception(e); - } - } - - public void generatorWasm(String contractName) throws Exception { - try { - String filePath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "contracts", "wasm", "build").toUri().getPath()); - String binPath = filePath + contractName + ".wasm"; - String abiPath = filePath + contractName + ".abi.json"; - - String outputPath = FileUtil.pathOptimization(System.getProperty("user.dir") + "/src/main/java"); - String packagePath = "network.platon.contracts.wasm"; - String rootPath = System.getProperty("user.dir"); - String[] args = new String[]{"/bin/bash", "-c", rootPath + "/scripts/platon-web3j/bin/platon-web3j" + " " + "wasm" + " " + "generate" + " " + binPath + " " + abiPath + " " + "-o" + " " + outputPath + " " + "-p" + " " + packagePath}; - - CompileUtil.execGenerate(args); - } catch (Exception e) { - log.error("contract generator error:{}", e.getMessage()); - throw new Exception(e); - } - } - - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/utils/OneselfFileUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/utils/OneselfFileUtil.java deleted file mode 100644 index 67e53fd76e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/utils/OneselfFileUtil.java +++ /dev/null @@ -1,149 +0,0 @@ -package network.platon.utils; - -import lombok.extern.slf4j.Slf4j; -import network.platon.autotest.utils.FileUtil; - -import java.io.*; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.List; - -@Slf4j -public class OneselfFileUtil { - /* - *收集所有evm和wasm的源文件 - */ - private List evmSourceFileList = new ArrayList<>(); - private List wasmSourceFileList = new ArrayList<>(); - - /** - * @title OneselfFileUtil - * @description 获取所有sol源文件 - * @author qcxiao - * @updateTime 2019/12/27 14:22 - */ - public List getResourcesFile(String path, int deep) { - // 获得指定文件对象 - File file = new File(path); - // 获得该文件夹内的所有文件 - File[] files = file.listFiles(); - for (int i = 0; i < files.length; i++) { - if (files[i].isFile()) { - if (files[i].getName().substring(files[i].getName().lastIndexOf(".") + 1).equals("sol")) { - evmSourceFileList.add(files[i].getPath()); - } - } else if (files[i].isDirectory()) { - //文件夹需要调用递归 ,深度+1 - getResourcesFile(files[i].getPath(), deep + 1); - } - } - return evmSourceFileList; - } - - /** - * @title OneselfFileUtil - * @description 获取所有二进制文件,并返回文件名称列表 - * @author qcxiao - * @updateTime 2019/12/27 14:24 - */ - public static List getBinFiles() { - List files = new ArrayList<>(); - String filePath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "contracts", "evm", "build").toUri().getPath()); - File file = new File(filePath); - File[] tempList = file.listFiles(); - - for (int i = 0; i < tempList.length; i++) { - File f = tempList[i]; - getFile(files, f); -// if (tempList[i].isFile()) { -// String fileName = tempList[i].getName(); -// if (fileName.substring(fileName.lastIndexOf(".") + 1).equals("bin")) { -// fileName = fileName.substring(0, fileName.lastIndexOf(".")); -// files.add(fileName); -// } -// } - } - return files; - } - - public static void getFile(List files, File file){ - if (file.isFile()) { - String fileName = file.getName(); - if (fileName.substring(fileName.lastIndexOf(".") + 1).equals("bin")) { - files.add(file); - } - }else { - File[] subFiles = file.listFiles(); - for (int i = 0; i < subFiles.length; i++){ - File f = subFiles[i]; - getFile(files, f); - } - } - } - - public List getWasmResourcesFile(String path, int deep) { - // 获得指定文件对象 - File file = new File(path); - // 获得该文件夹内的所有文件 - File[] files = file.listFiles(); - for (int i = 0; i < files.length; i++) { - if (files[i].isFile()) { - if (files[i].getName().substring(files[i].getName().lastIndexOf(".") + 1).equals("cpp")) { - wasmSourceFileList.add(files[i].getPath()); - } - } else if (files[i].isDirectory()) { - //文件夹需要调用递归 ,深度+1 - getWasmResourcesFile(files[i].getPath(), deep + 1); - } - } - return wasmSourceFileList; - } - - public List getWasmFileName() throws Exception { - List files = new ArrayList<>(); - String filePath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "contracts", "wasm", "build").toUri().getPath()); - File file = new File(filePath); - - File[] tempList = file.listFiles(); - if (null == tempList || 0 == tempList.length) { - log.info("src/test/resources/contracts/wasm/build路径下无wasm和abi文件,因此请查看编译步骤."); - throw new Exception("src/test/resources/contracts/wasm/build路径下无wasm和abi文件"); - } - for (int i = 0; i < tempList.length; i++) { - if (tempList[i].isFile()) { - String fileName = tempList[i].getName(); - if (fileName.substring(fileName.lastIndexOf(".") + 1).equals("wasm")) { - fileName = fileName.substring(0, fileName.lastIndexOf(".")); - files.add(fileName); - } - } - } - return files; - } - - public static String readFile(String Path){ - BufferedReader reader = null; - String laststr = ""; - try{ - FileInputStream fileInputStream = new FileInputStream(Path); - InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream, "UTF-8"); - reader = new BufferedReader(inputStreamReader); - String tempString = null; - while((tempString = reader.readLine()) != null){ - laststr += tempString; - } - reader.close(); - }catch(IOException e){ - e.printStackTrace(); - }finally{ - if(reader != null){ - try { - reader.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - } - return laststr; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/utils/PlatonAddressChangeUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/utils/PlatonAddressChangeUtil.java deleted file mode 100644 index ea8142c89e..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/utils/PlatonAddressChangeUtil.java +++ /dev/null @@ -1,204 +0,0 @@ -/* - * Copyright 2018 Coinomi Ltd - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package network.platon.utils; - -import java.io.ByteArrayOutputStream; -import java.util.*; - -public class PlatonAddressChangeUtil { - - public static final String HRP_LAT = "lat"; - public static final String HRP_LAX = "lax"; - public static final String HRP_PLA = "pla"; - public static final String HRP_PLT = "plt"; - - - /** The Bech32 character set for encoding. */ - private static final String CHARSET = "qpzry9x8gf2tvdw0s3jn54khce6mua7l"; - - /** The Bech32 character set for decoding. */ - private static final byte[] CHARSET_REV = { - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 15, -1, 10, 17, 21, 20, 26, 30, 7, 5, -1, -1, -1, -1, -1, -1, - -1, 29, -1, 24, 13, 25, 9, 8, 23, -1, 18, 22, 31, 27, 19, -1, - 1, 0, 3, 16, 11, 28, 12, 14, 6, 4, 2, -1, -1, -1, -1, -1, - -1, 29, -1, 24, 13, 25, 9, 8, 23, -1, 18, 22, 31, 27, 19, -1, - 1, 0, 3, 16, 11, 28, 12, 14, 6, 4, 2, -1, -1, -1, -1, -1 - }; - - public static class Bech32Data { - public final String hrp; - public final byte[] data; - - private Bech32Data(final String hrp, final byte[] data) { - this.hrp = hrp; - this.data = data; - } - } - - /** Find the polynomial with value coefficients mod the generator as 30-bit. */ - private static int polymod(final byte[] values) { - int c = 1; - for (byte v_i: values) { - int c0 = (c >>> 25) & 0xff; - c = ((c & 0x1ffffff) << 5) ^ (v_i & 0xff); - if ((c0 & 1) != 0) c ^= 0x3b6a57b2; - if ((c0 & 2) != 0) c ^= 0x26508e6d; - if ((c0 & 4) != 0) c ^= 0x1ea119fa; - if ((c0 & 8) != 0) c ^= 0x3d4233dd; - if ((c0 & 16) != 0) c ^= 0x2a1462b3; - } - return c; - } - - /** Expand a HRP for use in checksum computation. */ - private static byte[] expandHrp(final String hrp) { - int hrpLength = hrp.length(); - byte ret[] = new byte[hrpLength * 2 + 1]; - for (int i = 0; i < hrpLength; ++i) { - int c = hrp.charAt(i) & 0x7f; // Limit to standard 7-bit ASCII - ret[i] = (byte) ((c >>> 5) & 0x07); - ret[i + hrpLength + 1] = (byte) (c & 0x1f); - } - ret[hrpLength] = 0; - return ret; - } - - /** Verify a checksum. */ - private static boolean verifyChecksum(final String hrp, final byte[] values) { - byte[] hrpExpanded = expandHrp(hrp); - byte[] combined = new byte[hrpExpanded.length + values.length]; - System.arraycopy(hrpExpanded, 0, combined, 0, hrpExpanded.length); - System.arraycopy(values, 0, combined, hrpExpanded.length, values.length); - return polymod(combined) == 1; - } - - /** Create a checksum. */ - private static byte[] createChecksum(final String hrp, final byte[] values) { - byte[] hrpExpanded = expandHrp(hrp); - byte[] enc = new byte[hrpExpanded.length + values.length + 6]; - System.arraycopy(hrpExpanded, 0, enc, 0, hrpExpanded.length); - System.arraycopy(values, 0, enc, hrpExpanded.length, values.length); - int mod = polymod(enc) ^ 1; - byte[] ret = new byte[6]; - for (int i = 0; i < 6; ++i) { - ret[i] = (byte) ((mod >>> (5 * (5 - i))) & 31); - } - return ret; - } - - /** Encode a Bech32 string. */ - public static String encode(final Bech32Data bech32) { - return encode(bech32.hrp, bech32.data); - } - - /** Encode a Bech32 string. */ - public static String encode(String hrp, final byte[] values) { -// checkArgument(hrp.length() >= 1, "Human-readable part is too short"); -// checkArgument(hrp.length() <= 83, "Human-readable part is too long"); - hrp = hrp.toLowerCase(Locale.ROOT); - byte[] checksum = createChecksum(hrp, values); - byte[] combined = new byte[values.length + checksum.length]; - System.arraycopy(values, 0, combined, 0, values.length); - System.arraycopy(checksum, 0, combined, values.length, checksum.length); - StringBuilder sb = new StringBuilder(hrp.length() + 1 + combined.length); - sb.append(hrp); - sb.append('1'); - for (byte b : combined) { - sb.append(CHARSET.charAt(b)); - } - return sb.toString(); - } - - /** Decode a Bech32 string. */ - public static Bech32Data decode(final String str) throws RuntimeException { - boolean lower = false, upper = false; - - final int pos = str.lastIndexOf('1'); - final int dataPartLength = str.length() - 1 - pos; - byte[] values = new byte[dataPartLength]; - for (int i = 0; i < dataPartLength; ++i) { - char c = str.charAt(i + pos + 1); - values[i] = CHARSET_REV[c]; - } - String hrp = str.substring(0, pos).toLowerCase(Locale.ROOT); - if (!verifyChecksum(hrp, values)) throw new RuntimeException(); - return new Bech32Data(hrp, Arrays.copyOfRange(values, 0, values.length - 6)); - } - - - /** - * Helper for re-arranging bits into groups. - */ - public static byte[] convertBits(final byte[] in, final int fromBits, - final int toBits, final boolean pad) { - int acc = 0; - int bits = 0; - ByteArrayOutputStream out = new ByteArrayOutputStream(64); - final int maxv = (1 << toBits) - 1; - final int max_acc = (1 << (fromBits + toBits - 1)) - 1; - for (int i = 0; i < in.length; i++) { - int value = in[i] & 0xff; - if ((value >>> fromBits) != 0) { - throw new RuntimeException( - String.format("Input value '%X' exceeds '%d' bit size", value, fromBits)); - } - acc = ((acc << fromBits) | value) & max_acc; - bits += fromBits; - while (bits >= toBits) { - bits -= toBits; - out.write((acc >>> bits) & maxv); - } - } - if (pad) { - if (bits > 0) - out.write((acc << (toBits - bits)) & maxv); - } else if (bits >= fromBits || ((acc << (toBits - bits)) & maxv) != 0) { - throw new RuntimeException("Could not convert bits, invalid padding"); - } - return out.toByteArray(); - } - - /** - * 合约前缀转换 - * @param args - */ -// public static void main(String[] args) { -// String addr = "0x000000000000000000000000e03887881e1e0cd6cdbfc82bc3292b8ad9a683f2"; -// String laxAddr = PlatonAddressChangeUtil.encode("lax", convertBits(Numeric.hexStringToByteArray(addr),8,5,true)); -// System.out.println(DataChangeUtil.bytesToHex(Bech32.addressDecode(laxAddr))); -// -// -// List addrList = new ArrayList(); -// addrList.add("0x1000000000000000000000000000000000000001"); -// addrList.add("0x1000000000000000000000000000000000000002"); -// addrList.add("0x1000000000000000000000000000000000000003"); -// addrList.add("0x1000000000000000000000000000000000000004"); -// addrList.add("0x1000000000000000000000000000000000000005"); -// addrList.add("0x1000000000000000000000000000000000000006"); -// addrList.add("0x1000000000000000000000000000000000000007"); -// addrList.add("0x1000000000000000000000000000000000000008"); -// addrList.add("0x1000000000000000000000000000000000000009"); -// addrList.add("0x9e3e0f0f366b26b965f3aa3ed67603fb480b1257"); -// addrList.add("0xda838210049594c9e1c2b330cf7e759f2493c5c754b34d98b07f93"); -// addrList.add("0x0000000000000000000000000000000000000001"); -// addrList.stream().forEach(a -> -// System.out.println(a+"转换后的钱包地址>>>"+ PlatonAddressChangeUtil.encode("lax", convertBits(Numeric.hexStringToByteArray(a),8,5,true)))); -// } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/utils/RlpUtil.java b/cases/ContractsAutoTests/src/main/java/network/platon/utils/RlpUtil.java deleted file mode 100644 index 067cb8f109..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/utils/RlpUtil.java +++ /dev/null @@ -1,118 +0,0 @@ -package network.platon.utils; - -import com.alaya.rlp.solidity.RlpEncoder; -import com.alaya.rlp.solidity.RlpList; -import com.alaya.rlp.solidity.RlpString; -import com.alaya.rlp.solidity.RlpType; -import lombok.extern.slf4j.Slf4j; - -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.util.List; - -/** - * @title ContractsAutoTests - * @description: RLP编解码及生成合约升级参数工具类 - * @author: hudenian - * @create: 2020/2/12 18:03 - */ -@Slf4j -public class RlpUtil { - - /** - * - * @param wasmFile 根据wasm文件 - * @param args init参数数组 - * @return - */ - public static Byte[] loadInitArg(String wasmFile,List args) { - - File file = new File(wasmFile); - - long fileSize = file.length(); - if (fileSize > Integer.MAX_VALUE) { - System.out.println("file too big..."); - } - - FileInputStream fi = null; - Byte[] finalByte = null; - try { - fi = new FileInputStream(file); - byte[] buffer = new byte[(int) fileSize]; - int offset = 0; - int numRead = 0; - while (offset < buffer.length - && (numRead = fi.read(buffer, offset, buffer.length - offset)) >= 0) { - offset += numRead; - } - // make sure get all data - if (offset != buffer.length) { - throw new IOException("Could not completely read file " - + file.getName()); - } - fi.close(); - byte[] bufferFinish = buffer;//wasm - - - byte[] initAndParamsRlp = null; - - if(args.size() == 0 ){ - initAndParamsRlp = RlpEncoder.encode(RlpString.create("init")); - }else{ - RlpType[] values = new RlpType[args.size()+1]; - values[0] = RlpString.create("init"); - for(int i=0;i>>"+DataChangeUtil.bytesToHex(DataChangeUtil.toPrimitives(finalByte))); - return finalByte; - } - - - /** - * transfer between byte[] and Byte[] - * @param bytesPrim - * @return - */ - public static Byte[] toObjects(byte[] bytesPrim) { - Byte[] bytes = new Byte[bytesPrim.length]; - - int i = 0; - for (byte b : bytesPrim) bytes[i++] = b; - - return bytes; - } -} diff --git a/cases/ContractsAutoTests/src/main/java/network/platon/utils/Solc.java b/cases/ContractsAutoTests/src/main/java/network/platon/utils/Solc.java deleted file mode 100644 index ce67c9d6d4..0000000000 --- a/cases/ContractsAutoTests/src/main/java/network/platon/utils/Solc.java +++ /dev/null @@ -1,331 +0,0 @@ -// -// Source code recreated from a .class file by IntelliJ IDEA -// (powered by Fernflower decompiler) -// - -package network.platon.utils; - -import lombok.extern.slf4j.Slf4j; - -import java.io.*; -import java.net.HttpURLConnection; -import java.net.URL; -import java.nio.file.Files; -import java.nio.file.LinkOption; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Iterator; -import java.util.concurrent.TimeUnit; -import java.util.zip.ZipEntry; -import java.util.zip.ZipInputStream; - -@Slf4j -public class Solc { - - public static ArrayList solcList = new ArrayList(Arrays.asList("0.4.12", "0.4.13", "0.4.14", "0.4.15", "0.4.16", "0.4.17", "0.4.18", "0.4.19", "0.4.20", "0.4.21", "0.4.22", "0.4.23", "0.4.24", "0.4.25", "0.4.26", "0.5.0", "0.5.1", "0.5.2", "0.5.3", "0.5.4", "0.5.5", "0.5.6", "0.5.7", "0.5.8", "0.5.9", "0.5.10", "0.5.11", "0.5.12", "0.5.13", "0.5.14", "0.5.15", "0.5.17", "0.6.0", "0.6.12", "0.7.1")); - - public Solc() { - } - - public static String pullSolcBin(String contractPath) throws Exception { - String versionContent = readFile(contractPath); - String version = parseSolcVersion(versionContent); - log.info("Found solc compiler version: " + version); - if (version.equals("")) { - log.error("Contract not provider compiler version, please check source file"); - throw new Exception("Contract not provider compiler version"); - } else if (!checkSolcVersion(version)) { - log.error("Not supported solc version, must be 0.4.12 or later"); - throw new Exception("Not supported solc version, must be 0.4.12 or later"); - } else { - String os = System.getProperty("os.name"); - String solcUrl = ""; - String saveFileName = ""; - String absolutePath = ""; - if (!os.startsWith("Linux") && !os.startsWith("Mac OS")) { - if (os.startsWith("Windows")) { - solcUrl = "https://github.com/PlatONnetwork/solidity/releases/download/platon_v" + version + "/solidity-windows-" + version + ".zip"; - saveFileName = "solc-windows-" + version + ".zip"; - absolutePath = ".\\solc\\"; - } else { - log.error("Unsupported operate system platform"); - } - } else { - solcUrl = "https://github.com/PlatONnetwork/solidity/releases/download/platon_v" + version + "/solc"; - saveFileName = "solc-" + version; - absolutePath = "./solc/"; - } - - Path path = Paths.get(absolutePath + saveFileName); - if (Files.exists(path, new LinkOption[0])) { - return version; - } else { - log.info("Pulling solc binary, waiting a moment ....."); - String path1 = downRemoteFile(solcUrl, saveFileName, absolutePath); - if (!path1.equals("")) { - if (os.startsWith("Windows")) { - String targetDir = "solc-windows-" + version; - unzip(absolutePath + saveFileName, absolutePath + targetDir); - } - - return version; - } else { - return ""; - } - } - } - } - - public static void compile(String contractPath, String targetPath) throws Exception { - String version = null; - - try { - version = pullSolcBin(contractPath); - } catch (Exception var13) { - throw var13; - } - - if (!version.equals("")) { - new ProcessBuilder(new String[0]); - String os = System.getProperty("os.name"); - String[] cmd = new String[0]; - if (!os.startsWith("Linux") && !os.startsWith("Mac OS")) { - if (os.startsWith("Windows")) { - cmd = new String[]{"cmd", "/C", "cd .\\scripts && compile.bat " + version + " " + contractPath + " " + targetPath}; - } else { - log.error("Not supported operate system platform"); - } - } else { - cmd = new String[]{"/bin/bash", "-c", "pwd && cd ./scripts && ./compile.sh " + version + " " + contractPath + " " + targetPath}; - } - - try { - Process ps = Runtime.getRuntime().exec(cmd); - ps.waitFor(5L, TimeUnit.SECONDS); - BufferedReader br = new BufferedReader(new InputStreamReader(ps.getInputStream())); - BufferedReader bufrError = new BufferedReader(new InputStreamReader(ps.getErrorStream(), "UTF-8")); - StringBuilder sb = new StringBuilder(); - StringBuilder err = new StringBuilder(); - - String line; - while(br.ready() && (line = br.readLine()) != null) { - sb.append(line).append("\n"); - } - - for(; bufrError.ready() && (line = bufrError.readLine()) != null; sb.append(line).append('\n')) { - if (line.contains("Error:")) { - err.append(line).append('\n'); - } - } - - String result = sb.toString(); - br.close(); - bufrError.close(); - if (ps != null) { - ps.destroy(); - } - - if (!err.toString().equals("")) { - throw new Exception(err.toString()); - } - } catch (Exception var14) { - var14.printStackTrace(); - throw var14; - } - } - - } - - public static String readFile(String filePath) { - File file = new File(filePath); - BufferedReader reader = null; - String line = null; - try { - reader = new BufferedReader(new FileReader(file)); - while((line = reader.readLine()) != null){ - if(line.matches("(\\s)?pragma(\\s)?solidity.*")){ - break; - } - } - reader.close(); - } catch (IOException var15) { - var15.printStackTrace(); - line = ""; - } finally { - if (reader != null) { - try { - reader.close(); - } catch (IOException var14) { - } - } - - } - return line; - } - - public static String parseSolcVersion(String content) { - String version = content.replace("pragma solidity ", "").replace(" ", "").replace(";", ""); - if (!version.startsWith("0") && !version.startsWith("v")) { - String maxVersion; - if (!version.startsWith(">=") && !version.startsWith("^")) { - if (version.startsWith("<=")) { - maxVersion = version.replace("<=", ""); - return maxVersion.length() == 3 ? maxVersion + ".0" : maxVersion; - } else { - Iterator iterator; - if (!version.startsWith(">") && !version.startsWith("!=")) { - if (version.startsWith("<")) { - maxVersion = version.replace("<", ""); - if (maxVersion.length() == 3) { - maxVersion = maxVersion + ".0"; - } - - iterator = solcList.iterator(); - - for(int index = 0; iterator.hasNext(); ++index) { - String solcVersion = (String)iterator.next(); - if (solcVersion.compareTo(maxVersion) >= 0) { - if (index >= 1) { - return (String)solcList.get(index - 1); - } - - return ""; - } - } - - return ""; - } else { - return ""; - } - } else { - maxVersion = version.replace(">", "").replace("!=", "").split("<")[0]; - if (maxVersion.length() == 3) { - maxVersion = maxVersion + ".0"; - } - - iterator = solcList.iterator(); - - String solcVersion; - do { - if (!iterator.hasNext()) { - return ""; - } - - solcVersion = (String)iterator.next(); - } while(solcVersion.compareTo(maxVersion) <= 0); - - return solcVersion; - } - } - } else { - maxVersion = version.replace(">=", "").replace("^", "").split("<")[0]; - return maxVersion.length() == 3 ? maxVersion + ".0" : maxVersion; - } - } else { - version = version.replace("v", ""); - if (version.length() > 3) { - return version; - } else { - return version.length() == 3 ? version + ".0" : (String)solcList.get(0); - } - } - } - - public static boolean checkSolcVersion(String version) { - return solcList.contains(version); - } - - public static String downRemoteFile(String remoteFileUrl, String saveFileName, String saveDir) { - HttpURLConnection conn = null; - OutputStream oputstream = null; - InputStream iputstream = null; - - try { - File savePath = new File(saveDir); - if (!savePath.exists()) { - savePath.mkdir(); - } - - File file = new File(saveDir + saveFileName); - if (file != null && !file.exists()) { - file.createNewFile(); - } - - URL url = new URL(remoteFileUrl); - conn = (HttpURLConnection)url.openConnection(); - conn.setDoInput(true); - conn.connect(); - iputstream = conn.getInputStream(); - oputstream = new FileOutputStream(file); - byte[] buffer = new byte[4096]; - boolean var10 = true; - - int byteRead; - while((byteRead = iputstream.read(buffer)) != -1) { - oputstream.write(buffer, 0, byteRead); - } - - oputstream.flush(); - } catch (Exception var19) { - var19.printStackTrace(); - } finally { - try { - if (iputstream != null) { - iputstream.close(); - } - - if (oputstream != null) { - oputstream.close(); - } - - if (conn != null) { - conn.disconnect(); - } - } catch (IOException var18) { - var18.printStackTrace(); - } - - } - - return saveDir + saveFileName; - } - - public static void unzip(String zipFilePath, String destDir) { - File dir = new File(destDir); - if (!dir.exists()) { - dir.mkdirs(); - } - - byte[] buffer = new byte[1024]; - - try { - FileInputStream fis = new FileInputStream(zipFilePath); - ZipInputStream zis = new ZipInputStream(fis); - - for(ZipEntry ze = zis.getNextEntry(); ze != null; ze = zis.getNextEntry()) { - String fileName = ze.getName(); - File newFile = new File(destDir + File.separator + fileName); - log.info("Unzipping to " + newFile.getAbsolutePath()); - (new File(newFile.getParent())).mkdirs(); - FileOutputStream fos = new FileOutputStream(newFile); - - int len; - while((len = zis.read(buffer)) > 0) { - fos.write(buffer, 0, len); - } - - fos.close(); - zis.closeEntry(); - } - - zis.closeEntry(); - zis.close(); - fis.close(); - } catch (IOException var11) { - var11.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/main/resources/logback.xml b/cases/ContractsAutoTests/src/main/resources/logback.xml deleted file mode 100644 index cf2320df19..0000000000 --- a/cases/ContractsAutoTests/src/main/resources/logback.xml +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger - %msg%n - - - - - - - - - - - - ERROR - - ACCEPT - - DENY - - - - - - ${log_dir}/error/%d{yyyy-MM-dd}/error-log.log - - - ${maxHistory} - - - - - %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger - %msg%n - - - - - - - - - - - WARN - - ACCEPT - - DENY - - - - ${log_dir}/warn/%d{yyyy-MM-dd}/warn-log.log - ${maxHistory} - - - %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger - %msg%n - - - - - - - INFO - ACCEPT - DENY - - - ${log_dir}/info/%d{yyyy-MM-dd}/info-log.log - ${maxHistory} - - - %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger - %msg%n - - - - - - - DEBUG - ACCEPT - DENY - - - ${log_dir}/debug/%d{yyyy-MM-dd}/debug-log.log - ${maxHistory} - - - %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger - %msg%n - - - - - - - TRACE - ACCEPT - DENY - - - ${log_dir}/trace/%d{yyyy-MM-dd}/trace-log.log - ${maxHistory} - - - %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger - %msg%n - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/main/resources/templates/caseResult.vm b/cases/ContractsAutoTests/src/main/resources/templates/caseResult.vm deleted file mode 100644 index 490b6ce82a..0000000000 --- a/cases/ContractsAutoTests/src/main/resources/templates/caseResult.vm +++ /dev/null @@ -1,214 +0,0 @@ - - - - - ${caseInfo.caseName}执行结果 - - - - - -

- - - - - - - -

${caseInfo.caseName}-用例执行结果

- ${caseInfo.caseDesc} -
-
- - - - - - - - - - - - - - - - - - - - - - #foreach ($logStep in $logStepInfoList) - - - - - - - - - - - #end -
ID步骤描述实际值期望值步骤类型执行结果失败原因执行时间
$logStep.stepId$logStep.stepDesc -
-						$logStep.actual
-					
-
-
-						$logStep.expect
-					
-
$logStep.stepType - #if($!logStep.stepResult=="PASS") - #if ($!logStep.pictureRelative) - Pass - #else - Pass - #end - #else - #if ($!logStep.pictureRelative&&$!logStep.pictureRelative!="") - Fail - #else - Fail - #end - #end - $!logStep.failReason$logStep.stepTime
-
- - diff --git a/cases/ContractsAutoTests/src/main/resources/templates/images/image-20191217094605262.png b/cases/ContractsAutoTests/src/main/resources/templates/images/image-20191217094605262.png deleted file mode 100644 index ba312994ab..0000000000 Binary files a/cases/ContractsAutoTests/src/main/resources/templates/images/image-20191217094605262.png and /dev/null differ diff --git "a/cases/ContractsAutoTests/src/main/resources/templates/images/\347\273\223\346\236\204.png" "b/cases/ContractsAutoTests/src/main/resources/templates/images/\347\273\223\346\236\204.png" deleted file mode 100644 index c7b46af0de..0000000000 Binary files "a/cases/ContractsAutoTests/src/main/resources/templates/images/\347\273\223\346\236\204.png" and /dev/null differ diff --git a/cases/ContractsAutoTests/src/main/resources/templates/js/highcharts.js b/cases/ContractsAutoTests/src/main/resources/templates/js/highcharts.js deleted file mode 100644 index 77a30123c0..0000000000 --- a/cases/ContractsAutoTests/src/main/resources/templates/js/highcharts.js +++ /dev/null @@ -1,324 +0,0 @@ -/* - Highcharts JS v4.1.5 (2015-04-13) - - (c) 2009-2014 Torstein Honsi - - License: www.highcharts.com/license -*/ -(function(){function z(){var a,b=arguments,c,d={},e=function(a,b){var c,d;typeof a!=="object"&&(a={});for(d in b)b.hasOwnProperty(d)&&(c=b[d],a[d]=c&&typeof c==="object"&&Object.prototype.toString.call(c)!=="[object Array]"&&d!=="renderTo"&&typeof c.nodeType!=="number"?e(a[d]||{},c):b[d]);return a};b[0]===!0&&(d=b[1],b=Array.prototype.slice.call(b,2));c=b.length;for(a=0;a-1?h.thousandsSep:""))):e=Oa(f,e)}j.push(e);a=a.slice(c+1);c=(d=!d)?"}":"{"}j.push(a);return j.join("")}function ob(a){return V.pow(10,U(V.log(a)/V.LN10))}function pb(a,b,c,d,e){var f,g=a,c=p(c,1);f=a/c;b||(b=[1,2,2.5,5,10],d===!1&&(c=== -1?b=[1,2,5,10]:c<=0.1&&(b=[1/c])));for(d=0;d=a||!e&&f<=(b[d]+(b[d+1]||b[d]))/2)break;g*=c;return g}function qb(a,b){var c=a.length,d,e;for(e=0;ec&&(c=a[b]);return c}function Qa(a,b){for(var c in a)a[c]&&a[c]!==b&&a[c].destroy&&a[c].destroy(), -delete a[c]}function Ra(a){fb||(fb=Z(Ka));a&&fb.appendChild(a);fb.innerHTML=""}function ka(a,b){var c="Highcharts error #"+a+": www.highcharts.com/errors/"+a;if(b)throw c;H.console&&console.log(c)}function da(a){return parseFloat(a.toPrecision(14))}function Sa(a,b){za=p(a,b.animation)}function Cb(){var a=P.global,b=a.useUTC,c=b?"getUTC":"get",d=b?"setUTC":"set";Aa=a.Date||window.Date;nb=b&&a.timezoneOffset;eb=b&&a.getTimezoneOffset;gb=function(a,c,d,h,i,j){var k;b?(k=Aa.UTC.apply(0,arguments),k+= -Wa(k)):k=(new Aa(a,c,p(d,1),p(h,0),p(i,0),p(j,0))).getTime();return k};rb=c+"Minutes";sb=c+"Hours";tb=c+"Day";Xa=c+"Date";Ya=c+"Month";Za=c+"FullYear";Db=d+"Milliseconds";Eb=d+"Seconds";Fb=d+"Minutes";Gb=d+"Hours";ub=d+"Date";vb=d+"Month";wb=d+"FullYear"}function K(){}function Ta(a,b,c,d){this.axis=a;this.pos=b;this.type=c||"";this.isNew=!0;!c&&!d&&this.addLabel()}function Hb(a,b,c,d,e){var f=a.chart.inverted;this.axis=a;this.isNegative=c;this.options=b;this.x=d;this.total=null;this.points={};this.stack= -e;this.alignOptions={align:b.align||(f?c?"left":"right":"center"),verticalAlign:b.verticalAlign||(f?"middle":c?"bottom":"top"),y:p(b.y,f?4:c?14:-6),x:p(b.x,f?c?-6:6:0)};this.textAlign=b.textAlign||(f?c?"right":"left":"center")}var u,A=document,H=window,V=Math,x=V.round,U=V.floor,sa=V.ceil,t=V.max,I=V.min,O=V.abs,W=V.cos,$=V.sin,la=V.PI,ga=la*2/360,Ba=navigator.userAgent,Ib=H.opera,ya=/(msie|trident)/i.test(Ba)&&!Ib,hb=A.documentMode===8,xb=/AppleWebKit/.test(Ba),La=/Firefox/.test(Ba),Jb=/(Mobile|Android|Windows Phone)/.test(Ba), -Ca="http://www.w3.org/2000/svg",ba=!!A.createElementNS&&!!A.createElementNS(Ca,"svg").createSVGRect,Nb=La&&parseInt(Ba.split("Firefox/")[1],10)<4,ea=!ba&&!ya&&!!A.createElement("canvas").getContext,$a,ab,Kb={},yb=0,fb,P,Oa,za,zb,G,ma=function(){return u},X=[],bb=0,Ka="div",R="none",Ob=/^[0-9]+$/,ib=["plotTop","marginRight","marginBottom","plotLeft"],Pb="stroke-width",Aa,gb,nb,eb,rb,sb,tb,Xa,Ya,Za,Db,Eb,Fb,Gb,ub,vb,wb,J={},w;w=H.Highcharts=H.Highcharts?ka(16,!0):{};w.seriesTypes=J;var r=w.extend=function(a, -b){var c;a||(a={});for(c in b)a[c]=b[c];return a},p=w.pick=function(){var a=arguments,b,c,d=a.length;for(b=0;b3?c.length%3:0;return e+(g?c.substr(0,g)+d:"")+c.substr(g).replace(/(\d{3})(?=\d)/g,"$1"+d)+(f?b+O(a-c).toFixed(f).slice(2):"")};zb={init:function(a,b,c){var b=b||"",d=a.shift,e=b.indexOf("C")>-1,f=e?7:3,g,b=b.split(" "),c=[].concat(c),h,i,j=function(a){for(g=a.length;g--;)a[g]==="M"&&a.splice(g+ -1,0,a[g+1],a[g+2],a[g+1],a[g+2])};e&&(j(b),j(c));a.isArea&&(h=b.splice(b.length-6,6),i=c.splice(c.length-6,6));if(d<=c.length/f&&b.length===c.length)for(;d--;)c=[].concat(c).splice(0,f).concat(c);a.shift=0;if(b.length)for(a=c.length;b.length{point.key}
',pointFormat:'\u25CF {series.name}: {point.y}
', -shadow:!0,snap:Jb?25:10,style:{color:"#333333",cursor:"default",fontSize:"12px",padding:"8px",whiteSpace:"nowrap"}},credits:{enabled:!0,text:"Highcharts.com",href:"http://www.highcharts.com",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#909090",fontSize:"9px"}}};var aa=P.plotOptions,T=aa.line;Cb();var Tb=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/,Ub=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/, -Vb=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,na=function(a){var b=[],c,d;(function(a){a&&a.stops?d=Ua(a.stops,function(a){return na(a[1])}):(c=Tb.exec(a))?b=[B(c[1]),B(c[2]),B(c[3]),parseFloat(c[4],10)]:(c=Ub.exec(a))?b=[B(c[1],16),B(c[2],16),B(c[3],16),1]:(c=Vb.exec(a))&&(b=[B(c[1]),B(c[2]),B(c[3]),1])})(a);return{get:function(c){var f;d?(f=z(a),f.stops=[].concat(f.stops),m(d,function(a,b){f.stops[b]=[f.stops[b][0],a.get(c)]})):f=b&&!isNaN(b[0])?c==="rgb"?"rgb("+b[0]+","+ -b[1]+","+b[2]+")":c==="a"?b[3]:"rgba("+b.join(",")+")":a;return f},brighten:function(a){if(d)m(d,function(b){b.brighten(a)});else if(qa(a)&&a!==0){var c;for(c=0;c<3;c++)b[c]+=B(a*255),b[c]<0&&(b[c]=0),b[c]>255&&(b[c]=255)}return this},rgba:b,setOpacity:function(a){b[3]=a;return this},raw:a}};K.prototype={opacity:1,textProps:"fontSize,fontWeight,fontFamily,fontStyle,color,lineHeight,width,textDecoration,textShadow".split(","),init:function(a,b){this.element=b==="span"?Z(b):A.createElementNS(Ca,b); -this.renderer=a},animate:function(a,b,c){b=p(b,za,!0);db(this);if(b){b=z(b,{});if(c)b.complete=c;lb(this,a,b)}else this.attr(a),c&&c();return this},colorGradient:function(a,b,c){var d=this.renderer,e,f,g,h,i,j,k,l,n,o,q=[];a.linearGradient?f="linearGradient":a.radialGradient&&(f="radialGradient");if(f){g=a[f];h=d.gradients;j=a.stops;n=c.radialReference;Ha(g)&&(a[f]=g={x1:g[0],y1:g[1],x2:g[2],y2:g[3],gradientUnits:"userSpaceOnUse"});f==="radialGradient"&&n&&!s(g.gradientUnits)&&(g=z(g,{cx:n[0]-n[2]/ -2+g.cx*n[2],cy:n[1]-n[2]/2+g.cy*n[2],r:g.r*n[2],gradientUnits:"userSpaceOnUse"}));for(o in g)o!=="id"&&q.push(o,g[o]);for(o in j)q.push(j[o]);q=q.join(",");h[q]?a=h[q].attr("id"):(g.id=a="highcharts-"+yb++,h[q]=i=d.createElement(f).attr(g).add(d.defs),i.stops=[],m(j,function(a){a[1].indexOf("rgba")===0?(e=na(a[1]),k=e.get("rgb"),l=e.get("a")):(k=a[1],l=1);a=d.createElement("stop").attr({offset:a[0],"stop-color":k,"stop-opacity":l}).add(i);i.stops.push(a)}));c.setAttribute(b,"url("+d.url+"#"+a+")")}}, -applyTextShadow:function(a){var b=this.element,c,d=a.indexOf("contrast")!==-1,e=this.renderer.forExport||b.style.textShadow!==u&&!ya;d&&(a=a.replace(/contrast/g,this.renderer.getContrast(b.style.fill)));e?d&&F(b,{textShadow:a}):(this.fakeTS=!0,this.ySetter=this.xSetter,c=[].slice.call(b.getElementsByTagName("tspan")),m(a.split(/\s?,\s?/g),function(a){var d=b.firstChild,e,i,a=a.split(" ");e=a[a.length-1];(i=a[a.length-2])&&m(c,function(a,c){var f;c===0&&(a.setAttribute("x",b.getAttribute("x")),c=b.getAttribute("y"), -a.setAttribute("y",c||0),c===null&&b.setAttribute("y",0));f=a.cloneNode(1);L(f,{"class":"highcharts-text-shadow",fill:e,stroke:e,"stroke-opacity":1/t(B(i),3),"stroke-width":i,"stroke-linejoin":"round"});b.insertBefore(f,d)})}))},attr:function(a,b){var c,d,e=this.element,f,g=this,h;typeof a==="string"&&b!==u&&(c=a,a={},a[c]=b);if(typeof a==="string")g=(this[a+"Getter"]||this._defaultGetter).call(this,a,e);else{for(c in a){d=a[c];h=!1;this.symbolName&&/^(x|y|width|height|r|start|end|innerR|anchorX|anchorY)/.test(c)&& -(f||(this.symbolAttr(a),f=!0),h=!0);if(this.rotation&&(c==="x"||c==="y"))this.doTransform=!0;h||(this[c+"Setter"]||this._defaultSetter).call(this,d,c,e);this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(c)&&this.updateShadows(c,d)}if(this.doTransform)this.updateTransform(),this.doTransform=!1}return g},updateShadows:function(a,b){for(var c=this.shadows,d=c.length;d--;)c[d].setAttribute(a,a==="height"?t(b-(c[d].cutHeight||0),0):a==="d"?this.d:b)},addClass:function(a){var b=this.element, -c=L(b,"class")||"";c.indexOf(a)===-1&&L(b,"class",c+" "+a);return this},symbolAttr:function(a){var b=this;m("x,y,r,start,end,width,height,innerR,anchorX,anchorY".split(","),function(c){b[c]=p(a[c],b[c])});b.attr({d:b.renderer.symbols[b.symbolName](b.x,b.y,b.width,b.height,b)})},clip:function(a){return this.attr("clip-path",a?"url("+this.renderer.url+"#"+a.id+")":R)},crisp:function(a){var b,c={},d,e=a.strokeWidth||this.strokeWidth||0;d=x(e)%2/2;a.x=U(a.x||this.x||0)+d;a.y=U(a.y||this.y||0)+d;a.width= -U((a.width||this.width||0)-2*d);a.height=U((a.height||this.height||0)-2*d);a.strokeWidth=e;for(b in a)this[b]!==a[b]&&(this[b]=c[b]=a[b]);return c},css:function(a){var b=this.styles,c={},d=this.element,e,f,g="";e=!b;if(a&&a.color)a.fill=a.color;if(b)for(f in a)a[f]!==b[f]&&(c[f]=a[f],e=!0);if(e){e=this.textWidth=a&&a.width&&d.nodeName.toLowerCase()==="text"&&B(a.width)||this.textWidth;b&&(a=r(b,c));this.styles=a;e&&(ea||!ba&&this.renderer.forExport)&&delete a.width;if(ya&&!ba)F(this.element,a);else{b= -function(a,b){return"-"+b.toLowerCase()};for(f in a)g+=f.replace(/([A-Z])/g,b)+":"+a[f]+";";L(d,"style",g)}e&&this.added&&this.renderer.buildText(this)}return this},on:function(a,b){var c=this,d=c.element;ab&&a==="click"?(d.ontouchstart=function(a){c.touchEventFired=Aa.now();a.preventDefault();b.call(d,a)},d.onclick=function(a){(Ba.indexOf("Android")===-1||Aa.now()-(c.touchEventFired||0)>1100)&&b.call(d,a)}):d["on"+a]=b;return this},setRadialReference:function(a){this.element.radialReference=a;return this}, -translate:function(a,b){return this.attr({translateX:a,translateY:b})},invert:function(){this.inverted=!0;this.updateTransform();return this},updateTransform:function(){var a=this.translateX||0,b=this.translateY||0,c=this.scaleX,d=this.scaleY,e=this.inverted,f=this.rotation,g=this.element;e&&(a+=this.attr("width"),b+=this.attr("height"));a=["translate("+a+","+b+")"];e?a.push("rotate(90) scale(-1,1)"):f&&a.push("rotate("+f+" "+(g.getAttribute("x")||0)+" "+(g.getAttribute("y")||0)+")");(s(c)||s(d))&& -a.push("scale("+p(c,1)+" "+p(d,1)+")");a.length&&g.setAttribute("transform",a.join(" "))},toFront:function(){var a=this.element;a.parentNode.appendChild(a);return this},align:function(a,b,c){var d,e,f,g,h={};e=this.renderer;f=e.alignedObjects;if(a){if(this.alignOptions=a,this.alignByTranslate=b,!c||Da(c))this.alignTo=d=c||"renderer",ia(f,this),f.push(this),c=null}else a=this.alignOptions,b=this.alignByTranslate,d=this.alignTo;c=p(c,e[d],e);d=a.align;e=a.verticalAlign;f=(c.x||0)+(a.x||0);g=(c.y||0)+ -(a.y||0);if(d==="right"||d==="center")f+=(c.width-(a.width||0))/{right:1,center:2}[d];h[b?"translateX":"x"]=x(f);if(e==="bottom"||e==="middle")g+=(c.height-(a.height||0))/({bottom:1,middle:2}[e]||1);h[b?"translateY":"y"]=x(g);this[this.placed?"animate":"attr"](h);this.placed=!0;this.alignAttr=h;return this},getBBox:function(a){var b,c=this.renderer,d,e=this.rotation,f=this.element,g=this.styles,h=e*ga;d=this.textStr;var i,j=f.style,k,l;d!==u&&(l=["",e||0,g&&g.fontSize,f.style.width].join(","),l=d=== -""||Ob.test(d)?"num:"+d.toString().length+l:d+l);l&&!a&&(b=c.cache[l]);if(!b){if(f.namespaceURI===Ca||c.forExport){try{k=this.fakeTS&&function(a){m(f.querySelectorAll(".highcharts-text-shadow"),function(b){b.style.display=a})},La&&j.textShadow?(i=j.textShadow,j.textShadow=""):k&&k(R),b=f.getBBox?r({},f.getBBox()):{width:f.offsetWidth,height:f.offsetHeight},i?j.textShadow=i:k&&k("")}catch(n){}if(!b||b.width<0)b={width:0,height:0}}else b=this.htmlGetBBox();if(c.isSVG){a=b.width;d=b.height;if(ya&&g&& -g.fontSize==="11px"&&d.toPrecision(3)==="16.9")b.height=d=14;if(e)b.width=O(d*$(h))+O(a*W(h)),b.height=O(d*W(h))+O(a*$(h))}c.cache[l]=b}return b},show:function(a){a&&this.element.namespaceURI===Ca?this.element.removeAttribute("visibility"):this.attr({visibility:a?"inherit":"visible"});return this},hide:function(){return this.attr({visibility:"hidden"})},fadeOut:function(a){var b=this;b.animate({opacity:0},{duration:a||150,complete:function(){b.attr({y:-9999})}})},add:function(a){var b=this.renderer, -c=this.element,d;if(a)this.parentGroup=a;this.parentInverted=a&&a.inverted;this.textStr!==void 0&&b.buildText(this);this.added=!0;if(!a||a.handleZ||this.zIndex)d=this.zIndexSetter();d||(a?a.element:b.box).appendChild(c);if(this.onAdd)this.onAdd();return this},safeRemoveChild:function(a){var b=a.parentNode;b&&b.removeChild(a)},destroy:function(){var a=this,b=a.element||{},c=a.shadows,d=a.renderer.isSVG&&b.nodeName==="SPAN"&&a.parentGroup,e,f;b.onclick=b.onmouseout=b.onmouseover=b.onmousemove=b.point= -null;db(a);if(a.clipPath)a.clipPath=a.clipPath.destroy();if(a.stops){for(f=0;f]*>/g, -"")},textSetter:function(a){if(a!==this.textStr)delete this.bBox,this.textStr=a,this.added&&this.renderer.buildText(this)},fillSetter:function(a,b,c){typeof a==="string"?c.setAttribute(b,a):a&&this.colorGradient(a,b,c)},zIndexSetter:function(a,b){var c=this.renderer,d=this.parentGroup,c=(d||c).element||c.box,e,f,g=this.element,h;e=this.added;var i;s(a)&&(g.setAttribute(b,a),a=+a,this[b]===a&&(e=!1),this[b]=a);if(e){if((a=this.zIndex)&&d)d.handleZ=!0;d=c.childNodes;for(i=0;ia||!s(a)&&s(f)))c.insertBefore(g,e),h=!0;h||c.appendChild(g)}return h},_defaultSetter:function(a,b,c){c.setAttribute(b,a)}};K.prototype.yGetter=K.prototype.xGetter;K.prototype.translateXSetter=K.prototype.translateYSetter=K.prototype.rotationSetter=K.prototype.verticalAlignSetter=K.prototype.scaleXSetter=K.prototype.scaleYSetter=function(a,b){this[b]=a;this.doTransform=!0};K.prototype["stroke-widthSetter"]=K.prototype.strokeSetter=function(a,b,c){this[b]=a;if(this.stroke&& -this["stroke-width"])this.strokeWidth=this["stroke-width"],K.prototype.fillSetter.call(this,this.stroke,"stroke",c),c.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0;else if(b==="stroke-width"&&a===0&&this.hasStroke)c.removeAttribute("stroke"),this.hasStroke=!1};var ta=function(){this.init.apply(this,arguments)};ta.prototype={Element:K,init:function(a,b,c,d,e){var f=location,g,d=this.createElement("svg").attr({version:"1.1"}).css(this.getStyle(d));g=d.element;a.appendChild(g); -a.innerHTML.indexOf("xmlns")===-1&&L(g,"xmlns",Ca);this.isSVG=!0;this.box=g;this.boxWrapper=d;this.alignedObjects=[];this.url=(La||xb)&&A.getElementsByTagName("base").length?f.href.replace(/#.*?$/,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"";this.createElement("desc").add().element.appendChild(A.createTextNode("Created with Highcharts 4.1.5"));this.defs=this.createElement("defs").add();this.forExport=e;this.gradients={};this.cache={};this.setSize(b,c,!1);var h;if(La&&a.getBoundingClientRect)this.subPixelFix= -b=function(){F(a,{left:0,top:0});h=a.getBoundingClientRect();F(a,{left:sa(h.left)-h.left+"px",top:sa(h.top)-h.top+"px"})},b(),N(H,"resize",b)},getStyle:function(a){return this.style=r({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},a)},isHidden:function(){return!this.boxWrapper.getBBox().width},destroy:function(){var a=this.defs;this.box=null;this.boxWrapper=this.boxWrapper.destroy();Qa(this.gradients||{});this.gradients=null;if(a)this.defs=a.destroy(); -this.subPixelFix&&Y(H,"resize",this.subPixelFix);return this.alignedObjects=null},createElement:function(a){var b=new this.Element;b.init(this,a);return b},draw:function(){},buildText:function(a){for(var b=a.element,c=this,d=c.forExport,e=p(a.textStr,"").toString(),f=e.indexOf("<")!==-1,g=b.childNodes,h,i,j=L(b,"x"),k=a.styles,l=a.textWidth,n=k&&k.lineHeight,o=k&&k.textShadow,q=k&&k.textOverflow==="ellipsis",y=g.length,S=l&&!a.added&&this.box,C=function(a){return n?B(n):c.fontMetrics(/(px|em)$/.test(a&& -a.style.fontSize)?a.style.fontSize:k&&k.fontSize||c.style.fontSize||12,a).h},v=function(a){return a.replace(/</g,"<").replace(/>/g,">")};y--;)b.removeChild(g[y]);!f&&!o&&!q&&e.indexOf(" ")===-1?b.appendChild(A.createTextNode(v(e))):(h=/<.*style="([^"]+)".*>/,i=/<.*href="(http[^"]+)".*>/,S&&S.appendChild(b),e=f?e.replace(/<(b|strong)>/g,'').replace(/<(i|em)>/g,'').replace(//g,"").split(//g): -[e],e[e.length-1]===""&&e.pop(),m(e,function(e,f){var g,n=0,e=e.replace(//g,"|||");g=e.split("|||");m(g,function(e){if(e!==""||g.length===1){var o={},y=A.createElementNS(Ca,"tspan"),p;h.test(e)&&(p=e.match(h)[1].replace(/(;| |^)color([ :])/,"$1fill$2"),L(y,"style",p));i.test(e)&&!d&&(L(y,"onclick",'location.href="'+e.match(i)[1]+'"'),F(y,{cursor:"pointer"}));e=v(e.replace(/<(.|\n)*?>/g,"")||" ");if(e!==" "){y.appendChild(A.createTextNode(e));if(n)o.dx=0; -else if(f&&j!==null)o.x=j;L(y,o);b.appendChild(y);!n&&f&&(!ba&&d&&F(y,{display:"block"}),L(y,"dy",C(y)));if(l){for(var o=e.replace(/([^\^])-/g,"$1- ").split(" "),m=g.length>1||f||o.length>1&&k.whiteSpace!=="nowrap",S,s,ua,u=[],t=C(y),x=1,r=a.rotation,z=e,w=z.length;(m||q)&&(o.length||u.length);)a.rotation=0,S=a.getBBox(!0),ua=S.width,!ba&&c.forExport&&(ua=c.measureSpanWidth(y.firstChild.data,a.styles)),S=ua>l,s===void 0&&(s=S),q&&s?(w/=2,z===""||!S&&w<0.5?o=[]:(S&&(s=!0),z=e.substring(0,z.length+ -(S?-1:1)*sa(w)),o=[z+"…"],y.removeChild(y.firstChild))):!S||o.length===1?(o=u,u=[],o.length&&(x++,y=A.createElementNS(Ca,"tspan"),L(y,{dy:t,x:j}),p&&L(y,"style",p),b.appendChild(y)),ua>l&&(l=ua)):(y.removeChild(y.firstChild),u.unshift(o.pop())),o.length&&y.appendChild(A.createTextNode(o.join(" ").replace(/- /g,"-")));s&&a.attr("title",a.textStr);a.rotation=r}n++}}})}),S&&S.removeChild(b),o&&a.applyTextShadow&&a.applyTextShadow(o))},getContrast:function(a){a=na(a).rgba;return a[0]+a[1]+a[2]>384?"#000": -"#FFF"},button:function(a,b,c,d,e,f,g,h,i){var j=this.label(a,b,c,i,null,null,null,null,"button"),k=0,l,n,o,q,y,p,a={x1:0,y1:0,x2:0,y2:1},e=z({"stroke-width":1,stroke:"#CCCCCC",fill:{linearGradient:a,stops:[[0,"#FEFEFE"],[1,"#F6F6F6"]]},r:2,padding:5,style:{color:"black"}},e);o=e.style;delete e.style;f=z(e,{stroke:"#68A",fill:{linearGradient:a,stops:[[0,"#FFF"],[1,"#ACF"]]}},f);q=f.style;delete f.style;g=z(e,{stroke:"#68A",fill:{linearGradient:a,stops:[[0,"#9BD"],[1,"#CDF"]]}},g);y=g.style;delete g.style; -h=z(e,{style:{color:"#CCC"}},h);p=h.style;delete h.style;N(j.element,ya?"mouseover":"mouseenter",function(){k!==3&&j.attr(f).css(q)});N(j.element,ya?"mouseout":"mouseleave",function(){k!==3&&(l=[e,f,g][k],n=[o,q,y][k],j.attr(l).css(n))});j.setState=function(a){(j.state=k=a)?a===2?j.attr(g).css(y):a===3&&j.attr(h).css(p):j.attr(e).css(o)};return j.on("click",function(){k!==3&&d.call(j)}).attr(e).css(r({cursor:"default"},o))},crispLine:function(a,b){a[1]===a[4]&&(a[1]=a[4]=x(a[1])-b%2/2);a[2]===a[5]&& -(a[2]=a[5]=x(a[2])+b%2/2);return a},path:function(a){var b={fill:R};Ha(a)?b.d=a:ca(a)&&r(b,a);return this.createElement("path").attr(b)},circle:function(a,b,c){a=ca(a)?a:{x:a,y:b,r:c};b=this.createElement("circle");b.xSetter=function(a){this.element.setAttribute("cx",a)};b.ySetter=function(a){this.element.setAttribute("cy",a)};return b.attr(a)},arc:function(a,b,c,d,e,f){if(ca(a))b=a.y,c=a.r,d=a.innerR,e=a.start,f=a.end,a=a.x;a=this.symbol("arc",a||0,b||0,c||0,c||0,{innerR:d||0,start:e||0,end:f||0}); -a.r=c;return a},rect:function(a,b,c,d,e,f){var e=ca(a)?a.r:e,g=this.createElement("rect"),a=ca(a)?a:a===u?{}:{x:a,y:b,width:t(c,0),height:t(d,0)};if(f!==u)a.strokeWidth=f,a=g.crisp(a);if(e)a.r=e;g.rSetter=function(a){L(this.element,{rx:a,ry:a})};return g.attr(a)},setSize:function(a,b,c){var d=this.alignedObjects,e=d.length;this.width=a;this.height=b;for(this.boxWrapper[p(c,!0)?"animate":"attr"]({width:a,height:b});e--;)d[e].align()},g:function(a){var b=this.createElement("g");return s(a)?b.attr({"class":"highcharts-"+ -a}):b},image:function(a,b,c,d,e){var f={preserveAspectRatio:R};arguments.length>1&&r(f,{x:b,y:c,width:d,height:e});f=this.createElement("image").attr(f);f.element.setAttributeNS?f.element.setAttributeNS("http://www.w3.org/1999/xlink","href",a):f.element.setAttribute("hc-svg-href",a);return f},symbol:function(a,b,c,d,e,f){var g,h=this.symbols[a],h=h&&h(x(b),x(c),d,e,f),i=/^url\((.*?)\)$/,j,k;if(h)g=this.path(h),r(g,{symbolName:a,x:b,y:c,width:d,height:e}),f&&r(g,f);else if(i.test(a))k=function(a,b){a.element&& -(a.attr({width:b[0],height:b[1]}),a.alignByTranslate||a.translate(x((d-b[0])/2),x((e-b[1])/2)))},j=a.match(i)[1],a=Kb[j]||f&&f.width&&f.height&&[f.width,f.height],g=this.image(j).attr({x:b,y:c}),g.isImg=!0,a?k(g,a):(g.attr({width:0,height:0}),Z("img",{onload:function(){k(g,Kb[j]=[this.width,this.height])},src:j}));return g},symbols:{circle:function(a,b,c,d){var e=0.166*c;return["M",a+c/2,b,"C",a+c+e,b,a+c+e,b+d,a+c/2,b+d,"C",a-e,b+d,a-e,b,a+c/2,b,"Z"]},square:function(a,b,c,d){return["M",a,b,"L", -a+c,b,a+c,b+d,a,b+d,"Z"]},triangle:function(a,b,c,d){return["M",a+c/2,b,"L",a+c,b+d,a,b+d,"Z"]},"triangle-down":function(a,b,c,d){return["M",a,b,"L",a+c,b,a+c/2,b+d,"Z"]},diamond:function(a,b,c,d){return["M",a+c/2,b,"L",a+c,b+d/2,a+c/2,b+d,a,b+d/2,"Z"]},arc:function(a,b,c,d,e){var f=e.start,c=e.r||c||d,g=e.end-0.001,d=e.innerR,h=e.open,i=W(f),j=$(f),k=W(g),g=$(g),e=e.end-fc&&i>b+g&&ib+g&&id&&h>a+g&&ha+g&&hn&&/[ \-]/.test(b.textContent||b.innerText))F(b,{width:n+"px",display:"block",whiteSpace:j&&j.whiteSpace||"normal"}),i=n;this.getSpanCorrection(i,l,h,k,g)}F(b,{left:e+(this.xCorr||0)+"px",top:f+(this.yCorr||0)+"px"});if(xb)l=b.offsetHeight;this.cTT=o}}else this.alignOnAdd=!0},setSpanRotation:function(a,b,c){var d={},e=ya?"-ms-transform":xb?"-webkit-transform":La?"MozTransform":Ib?"-o-transform":"";d[e]=d.transform="rotate("+a+"deg)"; -d[e+(La?"Origin":"-origin")]=d.transformOrigin=b*100+"% "+c+"px";F(this.element,d)},getSpanCorrection:function(a,b,c){this.xCorr=-a*c;this.yCorr=-b}});r(ta.prototype,{html:function(a,b,c){var d=this.createElement("span"),e=d.element,f=d.renderer;d.textSetter=function(a){a!==e.innerHTML&&delete this.bBox;e.innerHTML=this.textStr=a};d.xSetter=d.ySetter=d.alignSetter=d.rotationSetter=function(a,b){b==="align"&&(b="textAlign");d[b]=a;d.htmlUpdateTransform()};d.attr({text:a,x:x(b),y:x(c)}).css({position:"absolute", -fontFamily:this.style.fontFamily,fontSize:this.style.fontSize});e.style.whiteSpace="nowrap";d.css=d.htmlCss;if(f.isSVG)d.add=function(a){var b,c=f.box.parentNode,j=[];if(this.parentGroup=a){if(b=a.div,!b){for(;a;)j.push(a),a=a.parentGroup;m(j.reverse(),function(a){var d;b=a.div=a.div||Z(Ka,{className:L(a.element,"class")},{position:"absolute",left:(a.translateX||0)+"px",top:(a.translateY||0)+"px"},b||c);d=b.style;r(a,{translateXSetter:function(b,c){d.left=b+"px";a[c]=b;a.doTransform=!0},translateYSetter:function(b, -c){d.top=b+"px";a[c]=b;a.doTransform=!0},visibilitySetter:function(a,b){d[b]=a}})})}}else b=c;b.appendChild(e);d.added=!0;d.alignOnAdd&&d.htmlUpdateTransform();return d};return d}});if(!ba&&!ea){D={init:function(a,b){var c=["<",b,' filled="f" stroked="f"'],d=["position: ","absolute",";"],e=b===Ka;(b==="shape"||e)&&d.push("left:0;top:0;width:1px;height:1px;");d.push("visibility: ",e?"hidden":"visible");c.push(' style="',d.join(""),'"/>');if(b)c=e||b==="span"||b==="img"?c.join(""):a.prepVML(c),this.element= -Z(c);this.renderer=a},add:function(a){var b=this.renderer,c=this.element,d=b.box,d=a?a.element||a:d;a&&a.inverted&&b.invertChild(c,d);d.appendChild(c);this.added=!0;this.alignOnAdd&&!this.deferUpdateTransform&&this.updateTransform();if(this.onAdd)this.onAdd();return this},updateTransform:K.prototype.htmlUpdateTransform,setSpanRotation:function(){var a=this.rotation,b=W(a*ga),c=$(a*ga);F(this.element,{filter:a?["progid:DXImageTransform.Microsoft.Matrix(M11=",b,", M12=",-c,", M21=",c,", M22=",b,", sizingMethod='auto expand')"].join(""): -R})},getSpanCorrection:function(a,b,c,d,e){var f=d?W(d*ga):1,g=d?$(d*ga):0,h=p(this.elemHeight,this.element.offsetHeight),i;this.xCorr=f<0&&-a;this.yCorr=g<0&&-h;i=f*g<0;this.xCorr+=g*b*(i?1-c:c);this.yCorr-=f*b*(d?i?c:1-c:1);e&&e!=="left"&&(this.xCorr-=a*c*(f<0?-1:1),d&&(this.yCorr-=h*c*(g<0?-1:1)),F(this.element,{textAlign:e}))},pathToVML:function(a){for(var b=a.length,c=[];b--;)if(qa(a[b]))c[b]=x(a[b]*10)-5;else if(a[b]==="Z")c[b]="x";else if(c[b]=a[b],a.isArc&&(a[b]==="wa"||a[b]==="at"))c[b+5]=== -c[b+7]&&(c[b+7]+=a[b+7]>a[b+5]?1:-1),c[b+6]===c[b+8]&&(c[b+8]+=a[b+8]>a[b+6]?1:-1);return c.join(" ")||"x"},clip:function(a){var b=this,c;a?(c=a.members,ia(c,b),c.push(b),b.destroyClip=function(){ia(c,b)},a=a.getCSS(b)):(b.destroyClip&&b.destroyClip(),a={clip:hb?"inherit":"rect(auto)"});return b.css(a)},css:K.prototype.htmlCss,safeRemoveChild:function(a){a.parentNode&&Ra(a)},destroy:function(){this.destroyClip&&this.destroyClip();return K.prototype.destroy.apply(this)},on:function(a,b){this.element["on"+ -a]=function(){var a=H.event;a.target=a.srcElement;b(a)};return this},cutOffPath:function(a,b){var c,a=a.split(/[ ,]/);c=a.length;if(c===9||c===11)a[c-4]=a[c-2]=B(a[c-2])-10*b;return a.join(" ")},shadow:function(a,b,c){var d=[],e,f=this.element,g=this.renderer,h,i=f.style,j,k=f.path,l,n,o,q;k&&typeof k.value!=="string"&&(k="x");n=k;if(a){o=p(a.width,3);q=(a.opacity||0.15)/o;for(e=1;e<=3;e++){l=o*2+1-2*e;c&&(n=this.cutOffPath(k.value,l+0.5));j=[''];h=Z(g.prepVML(j),null,{left:B(i.left)+p(a.offsetX,1),top:B(i.top)+p(a.offsetY,1)});if(c)h.cutOff=l+1;j=[''];Z(g.prepVML(j),null,null,h);b?b.element.appendChild(h):f.parentNode.insertBefore(h,f);d.push(h)}this.shadows=d}return this},updateShadows:ma,setAttr:function(a,b){hb?this.element[a]=b:this.element.setAttribute(a,b)},classSetter:function(a){this.element.className=a},dashstyleSetter:function(a, -b,c){(c.getElementsByTagName("stroke")[0]||Z(this.renderer.prepVML([""]),null,null,c))[b]=a||"solid";this[b]=a},dSetter:function(a,b,c){var d=this.shadows,a=a||[];this.d=a.join&&a.join(" ");c.path=a=this.pathToVML(a);if(d)for(c=d.length;c--;)d[c].path=d[c].cutOff?this.cutOffPath(a,d[c].cutOff):a;this.setAttr(b,a)},fillSetter:function(a,b,c){var d=c.nodeName;if(d==="SPAN")c.style.color=a;else if(d!=="IMG")c.filled=a!==R,this.setAttr("fillcolor",this.renderer.color(a,c,b,this))},opacitySetter:ma, -rotationSetter:function(a,b,c){c=c.style;this[b]=c[b]=a;c.left=-x($(a*ga)+1)+"px";c.top=x(W(a*ga))+"px"},strokeSetter:function(a,b,c){this.setAttr("strokecolor",this.renderer.color(a,c,b))},"stroke-widthSetter":function(a,b,c){c.stroked=!!a;this[b]=a;qa(a)&&(a+="px");this.setAttr("strokeweight",a)},titleSetter:function(a,b){this.setAttr(b,a)},visibilitySetter:function(a,b,c){a==="inherit"&&(a="visible");this.shadows&&m(this.shadows,function(c){c.style[b]=a});c.nodeName==="DIV"&&(a=a==="hidden"?"-999em": -0,hb||(c.style[b]=a?"visible":"hidden"),b="top");c.style[b]=a},xSetter:function(a,b,c){this[b]=a;b==="x"?b="left":b==="y"&&(b="top");this.updateClipping?(this[b]=a,this.updateClipping()):c.style[b]=a},zIndexSetter:function(a,b,c){c.style[b]=a}};w.VMLElement=D=ja(K,D);D.prototype.ySetter=D.prototype.widthSetter=D.prototype.heightSetter=D.prototype.xSetter;var Na={Element:D,isIE8:Ba.indexOf("MSIE 8.0")>-1,init:function(a,b,c,d){var e;this.alignedObjects=[];d=this.createElement(Ka).css(r(this.getStyle(d), -{position:"relative"}));e=d.element;a.appendChild(d.element);this.isVML=!0;this.box=e;this.boxWrapper=d;this.cache={};this.setSize(b,c,!1);if(!A.namespaces.hcv){A.namespaces.add("hcv","urn:schemas-microsoft-com:vml");try{A.createStyleSheet().cssText="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "}catch(f){A.styleSheets[0].cssText+="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "}}}, -isHidden:function(){return!this.box.offsetWidth},clipRect:function(a,b,c,d){var e=this.createElement(),f=ca(a);return r(e,{members:[],count:0,left:(f?a.x:a)+1,top:(f?a.y:b)+1,width:(f?a.width:c)-1,height:(f?a.height:d)-1,getCSS:function(a){var b=a.element,c=b.nodeName,a=a.inverted,d=this.top-(c==="shape"?b.offsetTop:0),e=this.left,b=e+this.width,f=d+this.height,d={clip:"rect("+x(a?e:d)+"px,"+x(a?f:b)+"px,"+x(a?b:f)+"px,"+x(a?d:e)+"px)"};!a&&hb&&c==="DIV"&&r(d,{width:b+"px",height:f+"px"});return d}, -updateClipping:function(){m(e.members,function(a){a.element&&a.css(e.getCSS(a))})}})},color:function(a,b,c,d){var e=this,f,g=/^rgba/,h,i,j=R;a&&a.linearGradient?i="gradient":a&&a.radialGradient&&(i="pattern");if(i){var k,l,n=a.linearGradient||a.radialGradient,o,q,y,p,C,v="",a=a.stops,s,fa=[],t=function(){h=[''];Z(e.prepVML(h),null,null,b)};o=a[0];s=a[a.length-1];o[0]>0&&a.unshift([0,o[1]]); -s[0]<1&&a.push([1,s[1]]);m(a,function(a,b){g.test(a[1])?(f=na(a[1]),k=f.get("rgb"),l=f.get("a")):(k=a[1],l=1);fa.push(a[0]*100+"% "+k);b?(y=l,p=k):(q=l,C=k)});if(c==="fill")if(i==="gradient")c=n.x1||n[0]||0,a=n.y1||n[1]||0,o=n.x2||n[2]||0,n=n.y2||n[3]||0,v='angle="'+(90-V.atan((n-a)/(o-c))*180/la)+'"',t();else{var j=n.r,u=j*2,x=j*2,r=n.cx,E=n.cy,z=b.radialReference,w,j=function(){z&&(w=d.getBBox(),r+=(z[0]-w.x)/w.width-0.5,E+=(z[1]-w.y)/w.height-0.5,u*=z[2]/w.width,x*=z[2]/w.height);v='src="'+P.global.VMLRadialGradientURL+ -'" size="'+u+","+x+'" origin="0.5,0.5" position="'+r+","+E+'" color2="'+C+'" ';t()};d.added?j():d.onAdd=j;j=p}else j=k}else if(g.test(a)&&b.tagName!=="IMG")f=na(a),h=["<",c,' opacity="',f.get("a"),'"/>'],Z(this.prepVML(h),null,null,b),j=f.get("rgb");else{j=b.getElementsByTagName(c);if(j.length)j[0].opacity=1,j[0].type="solid";j=a}return j},prepVML:function(a){var b=this.isIE8,a=a.join("");b?(a=a.replace("/>",' xmlns="urn:schemas-microsoft-com:vml" />'),a=a.indexOf('style="')===-1?a.replace("/>",' style="display:inline-block;behavior:url(#default#VML);" />'): -a.replace('style="','style="display:inline-block;behavior:url(#default#VML);')):a=a.replace("<","1&&f.attr({x:b,y:c,width:d,height:e});return f},createElement:function(a){return a==="rect"?this.symbol(a):ta.prototype.createElement.call(this,a)},invertChild:function(a,b){var c=this,d=b.style,e=a.tagName==="IMG"&&a.style;F(a,{flip:"x",left:B(d.width)-(e?B(e.top):1),top:B(d.height)-(e?B(e.left):1),rotation:-90});m(a.childNodes,function(b){c.invertChild(b,a)})},symbols:{arc:function(a,b,c,d,e){var f=e.start,g=e.end,h=e.r||c|| -d,c=e.innerR,d=W(f),i=$(f),j=W(g),k=$(g);if(g-f===0)return["x"];f=["wa",a-h,b-h,a+h,b+h,a+h*d,b+h*i,a+h*j,b+h*k];e.open&&!c&&f.push("e","M",a,b);f.push("at",a-c,b-c,a+c,b+c,a+c*j,b+c*k,a+c*d,b+c*i,"x","e");f.isArc=!0;return f},circle:function(a,b,c,d,e){e&&(c=d=2*e.r);e&&e.isCircle&&(a-=c/2,b-=d/2);return["wa",a,b,a+c,b+d,a+c,b+d/2,a+c,b+d/2,"e"]},rect:function(a,b,c,d,e){return ta.prototype.symbols[!s(e)||!e.r?"square":"callout"].call(0,a,b,c,d,e)}}};w.VMLRenderer=D=function(){this.init.apply(this, -arguments)};D.prototype=z(ta.prototype,Na);$a=D}ta.prototype.measureSpanWidth=function(a,b){var c=A.createElement("span"),d;d=A.createTextNode(a);c.appendChild(d);F(c,b);this.box.appendChild(c);d=c.offsetWidth;Ra(c);return d};var Lb;if(ea)w.CanVGRenderer=D=function(){Ca="http://www.w3.org/1999/xhtml"},D.prototype.symbols={},Lb=function(){function a(){var a=b.length,d;for(d=0;d0&&c+i*j>e&&(l=x((d-c)/W(h*ga)));else{d=c-i*j;c+=i*j;if(de)k-=c-e,a.x=e,g.attr({align:"right"});if(j>k||b.autoRotation&&g.styles.width)l=k}l&&g.css({width:l,textOverflow:"ellipsis"})},getPosition:function(a,b,c,d){var e=this.axis,f=e.chart,g=d&&f.oldChartHeight||f.chartHeight;return{x:a?e.translate(b+c,null,null,d)+e.transB:e.left+e.offset+(e.opposite?(d&&f.oldChartWidth||f.chartWidth)-e.right-e.left:0),y:a?g-e.bottom+e.offset-(e.opposite?e.height:0):g-e.translate(b+c,null,null,d)-e.transB}},getLabelPosition:function(a,b,c,d,e,f,g,h){var i=this.axis, -j=i.transA,k=i.reversed,l=i.staggerLines,n=i.tickRotCorr||{x:0,y:0},c=p(e.y,n.y+(i.side===2?8:-(c.getBBox().height/2))),a=a+e.x+n.x-(f&&d?f*j*(k?-1:1):0),b=b+c-(f&&!d?f*j*(k?1:-1):0);l&&(b+=g/(h||1)%l*(i.labelOffset/l));return{x:a,y:x(b)}},getMarkPath:function(a,b,c,d,e,f){return f.crispLine(["M",a,b,"L",a+(e?0:-c),b+(e?c:0)],d)},render:function(a,b,c){var d=this.axis,e=d.options,f=d.chart.renderer,g=d.horiz,h=this.type,i=this.label,j=this.pos,k=e.labels,l=this.gridLine,n=h?h+"Grid":"grid",o=h?h+ -"Tick":"tick",q=e[n+"LineWidth"],y=e[n+"LineColor"],m=e[n+"LineDashStyle"],C=e[o+"Length"],n=e[o+"Width"]||0,v=e[o+"Color"],s=e[o+"Position"],o=this.mark,fa=k.step,t=!0,x=d.tickmarkOffset,r=this.getPosition(g,j,x,b),w=r.x,r=r.y,z=g&&w===d.pos+d.len||!g&&r===d.pos?-1:1,c=p(c,1);this.isActive=!0;if(q){j=d.getPlotLinePath(j+x,q*z,b,!0);if(l===u){l={stroke:y,"stroke-width":q};if(m)l.dashstyle=m;if(!h)l.zIndex=1;if(b)l.opacity=0;this.gridLine=l=q?f.path(j).attr(l).add(d.gridGroup):null}if(!b&&l&&j)l[this.isNew? -"attr":"animate"]({d:j,opacity:c})}if(n&&C)s==="inside"&&(C=-C),d.opposite&&(C=-C),h=this.getMarkPath(w,r,C,n*z,g,f),o?o.animate({d:h,opacity:c}):this.mark=f.path(h).attr({stroke:v,"stroke-width":n,opacity:c}).add(d.axisGroup);if(i&&!isNaN(w))i.xy=r=this.getLabelPosition(w,r,i,g,k,x,a,fa),this.isFirst&&!this.isLast&&!p(e.showFirstLabel,1)||this.isLast&&!this.isFirst&&!p(e.showLastLabel,1)?t=!1:g&&!d.isRadial&&!k.step&&!k.rotation&&!b&&c!==0&&this.handleOverflow(r),fa&&a%fa&&(t=!1),t&&!isNaN(r.y)? -(r.opacity=c,i[this.isNew?"attr":"animate"](r),this.isNew=!1):i.attr("y",-9999)},destroy:function(){Qa(this,this.axis)}};w.PlotLineOrBand=function(a,b){this.axis=a;if(b)this.options=b,this.id=b.id};w.PlotLineOrBand.prototype={render:function(){var a=this,b=a.axis,c=b.horiz,d=a.options,e=d.label,f=a.label,g=d.width,h=d.to,i=d.from,j=s(i)&&s(h),k=d.value,l=d.dashStyle,n=a.svgElem,o=[],q,y=d.color,p=d.zIndex,m=d.events,v={},t=b.chart.renderer;b.isLog&&(i=Ea(i),h=Ea(h),k=Ea(k));if(g){if(o=b.getPlotLinePath(k, -g),v={stroke:y,"stroke-width":g},l)v.dashstyle=l}else if(j){o=b.getPlotBandPath(i,h,d);if(y)v.fill=y;if(d.borderWidth)v.stroke=d.borderColor,v["stroke-width"]=d.borderWidth}else return;if(s(p))v.zIndex=p;if(n)if(o)n.animate({d:o},null,n.onGetPath);else{if(n.hide(),n.onGetPath=function(){n.show()},f)a.label=f=f.destroy()}else if(o&&o.length&&(a.svgElem=n=t.path(o).attr(v).add(),m))for(q in d=function(b){n.on(b,function(c){m[b].apply(a,[c])})},m)d(q);if(e&&s(e.text)&&o&&o.length&&b.width>0&&b.height> -0){e=z({align:c&&j&&"center",x:c?!j&&4:10,verticalAlign:!c&&j&&"middle",y:c?j?16:10:j?6:-4,rotation:c&&!j&&90},e);if(!f){v={align:e.textAlign||e.align,rotation:e.rotation};if(s(p))v.zIndex=p;a.label=f=t.text(e.text,0,0,e.useHTML).attr(v).css(e.style).add()}b=[o[1],o[4],j?o[6]:o[1]];j=[o[2],o[5],j?o[7]:o[2]];o=Pa(b);c=Pa(j);f.align(e,!1,{x:o,y:c,width:Fa(b)-o,height:Fa(j)-c});f.show()}else f&&f.hide();return a},destroy:function(){ia(this.axis.plotLinesAndBands,this);delete this.axis;Qa(this)}};var va= -w.Axis=function(){this.init.apply(this,arguments)};va.prototype={defaultOptions:{dateTimeLabelFormats:{millisecond:"%H:%M:%S.%L",second:"%H:%M:%S",minute:"%H:%M",hour:"%H:%M",day:"%e. %b",week:"%e. %b",month:"%b '%y",year:"%Y"},endOnTick:!1,gridLineColor:"#D8D8D8",labels:{enabled:!0,style:{color:"#606060",cursor:"default",fontSize:"11px"},x:0,y:15},lineColor:"#C0D0E0",lineWidth:1,minPadding:0.01,maxPadding:0.01,minorGridLineColor:"#E0E0E0",minorGridLineWidth:1,minorTickColor:"#A0A0A0",minorTickLength:2, -minorTickPosition:"outside",startOfWeek:1,startOnTick:!1,tickColor:"#C0D0E0",tickLength:10,tickmarkPlacement:"between",tickPixelInterval:100,tickPosition:"outside",tickWidth:1,title:{align:"middle",style:{color:"#707070"}},type:"linear"},defaultYAxisOptions:{endOnTick:!0,gridLineWidth:1,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8,y:3},lineWidth:0,maxPadding:0.05,minPadding:0.05,startOnTick:!0,tickWidth:0,title:{rotation:270,text:"Values"},stackLabels:{enabled:!1,formatter:function(){return w.numberFormat(this.total, --1)},style:z(aa.line.dataLabels.style,{color:"#000000"})}},defaultLeftAxisOptions:{labels:{x:-15,y:null},title:{rotation:270}},defaultRightAxisOptions:{labels:{x:15,y:null},title:{rotation:90}},defaultBottomAxisOptions:{labels:{autoRotation:[-45],x:0,y:null},title:{rotation:0}},defaultTopAxisOptions:{labels:{autoRotation:[-45],x:0,y:-15},title:{rotation:0}},init:function(a,b){var c=b.isX;this.horiz=a.inverted?!c:c;this.coll=(this.isXAxis=c)?"xAxis":"yAxis";this.opposite=b.opposite;this.side=b.side|| -(this.horiz?this.opposite?0:2:this.opposite?1:3);this.setOptions(b);var d=this.options,e=d.type;this.labelFormatter=d.labels.formatter||this.defaultLabelFormatter;this.userOptions=b;this.minPixelPadding=0;this.chart=a;this.reversed=d.reversed;this.zoomEnabled=d.zoomEnabled!==!1;this.categories=d.categories||e==="category";this.names=this.names||[];this.isLog=e==="logarithmic";this.isDatetimeAxis=e==="datetime";this.isLinked=s(d.linkedTo);this.ticks={};this.labelEdge=[];this.minorTicks={};this.plotLinesAndBands= -[];this.alternateBands={};this.len=0;this.minRange=this.userMinRange=d.minRange||d.maxZoom;this.range=d.range;this.offset=d.offset||0;this.stacks={};this.oldStacks={};this.min=this.max=null;this.crosshair=p(d.crosshair,ra(a.options.tooltip.crosshairs)[c?0:1],!1);var f,d=this.options.events;Ma(this,a.axes)===-1&&(c&&!this.isColorAxis?a.axes.splice(a.xAxis.length,0,this):a.axes.push(this),a[this.coll].push(this));this.series=this.series||[];if(a.inverted&&c&&this.reversed===u)this.reversed=!0;this.removePlotLine= -this.removePlotBand=this.removePlotBandOrLine;for(f in d)N(this,f,d[f]);if(this.isLog)this.val2lin=Ea,this.lin2val=ha},setOptions:function(a){this.options=z(this.defaultOptions,this.isXAxis?{}:this.defaultYAxisOptions,[this.defaultTopAxisOptions,this.defaultRightAxisOptions,this.defaultBottomAxisOptions,this.defaultLeftAxisOptions][this.side],z(P[this.coll],a))},defaultLabelFormatter:function(){var a=this.axis,b=this.value,c=a.categories,d=this.dateTimeLabelFormat,e=P.lang.numericSymbols,f=e&&e.length, -g,h=a.options.labels.format,a=a.isLog?b:a.tickInterval;if(h)g=Ja(h,this);else if(c)g=b;else if(d)g=Oa(d,b);else if(f&&a>=1E3)for(;f--&&g===u;)c=Math.pow(1E3,f+1),a>=c&&e[f]!==null&&(g=w.numberFormat(b/c,-1)+e[f]);g===u&&(g=O(b)>=1E4?w.numberFormat(b,0):w.numberFormat(b,-1,u,""));return g},getSeriesExtremes:function(){var a=this,b=a.chart;a.hasVisibleSeries=!1;a.dataMin=a.dataMax=a.ignoreMinPadding=a.ignoreMaxPadding=null;a.buildStacks&&a.buildStacks();m(a.series,function(c){if(c.visible||!b.options.chart.ignoreHiddenSeries){var d; -d=c.options.threshold;var e;a.hasVisibleSeries=!0;a.isLog&&d<=0&&(d=null);if(a.isXAxis){if(d=c.xData,d.length)a.dataMin=I(p(a.dataMin,d[0]),Pa(d)),a.dataMax=t(p(a.dataMax,d[0]),Fa(d))}else{c.getExtremes();e=c.dataMax;c=c.dataMin;if(s(c)&&s(e))a.dataMin=I(p(a.dataMin,c),c),a.dataMax=t(p(a.dataMax,e),e);if(s(d))if(a.dataMin>=d)a.dataMin=d,a.ignoreMinPadding=!0;else if(a.dataMaxc)d?a=I(t(b,a),c):n=!0;return a},e=p(e,this.translate(a,null,null,c)),a=c=x(e+i);i=j=x(k-e-i);isNaN(e)?n=!0:this.horiz?(i=h,j=k-this.bottom,a=c=o(a,g,g+this.width)):(a=g,c=l-this.right,i=j=o(i,h,h+this.height));return n&&!d?null:f.renderer.crispLine(["M",a,i,"L",c,j],b||1)},getLinearTickPositions:function(a, -b,c){var d,e=da(U(b/a)*a),f=da(sa(c/a)*a),g=[];if(b===c&&qa(b))return[b];for(b=e;b<=f;){g.push(b);b=da(b+a);if(b===d)break;d=b}return g},getMinorTickPositions:function(){var a=this.options,b=this.tickPositions,c=this.minorTickInterval,d=[],e,f=this.min;e=this.max;var g=e-f;if(g&&g/c=this.minRange,f,g,h,i,j;if(this.isXAxis&&this.minRange===u&&!this.isLog)s(a.min)||s(a.max)?this.minRange=null:(m(this.series,function(a){i=a.xData;for(g=j=a.xIncrement?1:i.length-1;g>0;g--)if(h=i[g]-i[g-1],f===u||hc&&(h=0);d=t(d,h);b.single||(f=t(f,Da(j)?0:h/2),g=t(g,j==="on"?0:h));!a.noSharedTooltip&&s(q)&&(e=s(e)?I(e,q):q)}),h=b.ordinalSlope&&e?b.ordinalSlope/e:1,b.minPointOffset=f*=h,b.pointRangePadding=g*=h,b.pointRange=I(d,c),k)b.closestPointRange=e;if(a)b.oldTransA=j;b.translationSlope=b.transA=j=b.len/(c+g||1);b.transB=b.horiz?b.left:b.bottom;b.minPixelPadding=j*f},setTickInterval:function(a){var b=this,c=b.chart,d=b.options,e=b.isLog,f=b.isDatetimeAxis,g=b.isXAxis,h=b.isLinked,i=d.maxPadding,j=d.minPadding, -k=d.tickInterval,l=d.tickPixelInterval,n=b.categories;!f&&!n&&!h&&this.getTickAmount();h?(b.linkedParent=c[b.coll][d.linkedTo],c=b.linkedParent.getExtremes(),b.min=p(c.min,c.dataMin),b.max=p(c.max,c.dataMax),d.type!==b.linkedParent.options.type&&ka(11,1)):(b.min=p(b.userMin,d.min,b.dataMin),b.max=p(b.userMax,d.max,b.dataMax));if(e)!a&&I(b.min,p(b.dataMin,b.min))<=0&&ka(10,1),b.min=da(Ea(b.min)),b.max=da(Ea(b.max));if(b.range&&s(b.max))b.userMin=b.min=t(b.min,b.max-b.range),b.userMax=b.max,b.range= -null;b.beforePadding&&b.beforePadding();b.adjustForMinRange();if(!n&&!b.axisPointRange&&!b.usePercentage&&!h&&s(b.min)&&s(b.max)&&(c=b.max-b.min)){if(!s(d.min)&&!s(b.userMin)&&j&&(b.dataMin<0||!b.ignoreMinPadding))b.min-=c*j;if(!s(d.max)&&!s(b.userMax)&&i&&(b.dataMax>0||!b.ignoreMaxPadding))b.max+=c*i}if(qa(d.floor))b.min=t(b.min,d.floor);if(qa(d.ceiling))b.max=I(b.max,d.ceiling);b.tickInterval=b.min===b.max||b.min===void 0||b.max===void 0?1:h&&!k&&l===b.linkedParent.options.tickPixelInterval?b.linkedParent.tickInterval: -p(k,this.tickAmount?(b.max-b.min)/t(this.tickAmount-1,1):void 0,n?1:(b.max-b.min)*l/t(b.len,l));g&&!a&&m(b.series,function(a){a.processData(b.min!==b.oldMin||b.max!==b.oldMax)});b.setAxisTranslation(!0);b.beforeSetTickPositions&&b.beforeSetTickPositions();if(b.postProcessTickInterval)b.tickInterval=b.postProcessTickInterval(b.tickInterval);if(b.pointRange)b.tickInterval=t(b.pointRange,b.tickInterval);a=p(d.minTickInterval,b.isDatetimeAxis&&b.closestPointRange);if(!k&&b.tickInterval0.5&&b.tickInterval<5&&b.max>1E3&&b.max<9999)),!!this.tickAmount);if(!this.tickAmount&&this.len)b.tickInterval=b.unsquish();this.setTickPositions()},setTickPositions:function(){var a=this.options,b,c=a.tickPositions,d=a.tickPositioner,e=a.startOnTick,f=a.endOnTick,g;this.tickmarkOffset=this.categories&&a.tickmarkPlacement==="between"&&this.tickInterval===1?0.5:0;this.minorTickInterval=a.minorTickInterval=== -"auto"&&this.tickInterval?this.tickInterval/5:a.minorTickInterval;this.tickPositions=b=a.tickPositions&&a.tickPositions.slice();if(!b&&(this.tickPositions=b=this.isDatetimeAxis?this.getTimeTicks(this.normalizeTimeTickInterval(this.tickInterval,a.units),this.min,this.max,a.startOfWeek,this.ordinalPositions,this.closestPointRange,!0):this.isLog?this.getLogTickPositions(this.tickInterval,this.min,this.max):this.getLinearTickPositions(this.tickInterval,this.min,this.max),d&&(d=d.apply(this,[this.min, -this.max]))))this.tickPositions=b=d;if(!this.isLinked)this.trimTicks(b,e,f),this.min===this.max&&s(this.min)&&!this.tickAmount&&(g=!0,this.min-=0.5,this.max+=0.5),this.single=g,!c&&!d&&this.adjustTickAmount()},trimTicks:function(a,b,c){var d=a[0],e=a[a.length-1],f=this.minPointOffset||0;b?this.min=d:this.min-f>d&&a.shift();c?this.max=e:this.max+fc&&(this.tickInterval*=2,this.setTickPositions());if(s(d)){for(a=c=b.length;a--;)(d===3&&a%2===1||d<=2&&a>0&&a=t(d,p(e.max,d))&&(b=u));this.displayBtn=a!==u||b!==u;this.setExtremes(a,b,!1,u,{trigger:"zoom"});return!0},setAxisSize:function(){var a=this.chart,b=this.options,c=b.offsetLeft|| -0,d=this.horiz,e=p(b.width,a.plotWidth-c+(b.offsetRight||0)),f=p(b.height,a.plotHeight),g=p(b.top,a.plotTop),b=p(b.left,a.plotLeft+c),c=/%$/;c.test(f)&&(f=parseFloat(f)/100*a.plotHeight);c.test(g)&&(g=parseFloat(g)/100*a.plotHeight+a.plotTop);this.left=b;this.top=g;this.width=e;this.height=f;this.bottom=a.chartHeight-f-g;this.right=a.chartWidth-e-b;this.len=t(d?e:f,0);this.pos=d?b:g},getExtremes:function(){var a=this.isLog;return{min:a?da(ha(this.min)):this.min,max:a?da(ha(this.max)):this.max,dataMin:this.dataMin, -dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},getThreshold:function(a){var b=this.isLog,c=b?ha(this.min):this.min,b=b?ha(this.max):this.max;c>a||a===null?a=c:b15&&a<165?"right":a>195&&a<345?"left":"center"},unsquish:function(){var a=this.ticks,b=this.options.labels,c=this.horiz,d=this.tickInterval,e=d,f=this.len/(((this.categories?1:0)+this.max-this.min)/d),g,h=b.rotation, -i=this.chart.renderer.fontMetrics(b.style.fontSize,a[0]&&a[0].label),j,k=Number.MAX_VALUE,l,n=function(a){a/=f||1;a=a>1?sa(a):1;return a*d};c?(l=s(h)?[h]:f=-90&&a<=90)j=n(O(i.h/$(ga*a))),b=j+O(a/360),bl)l=a.labelLength}),l>i&&l>g.h?j.rotation=this.labelRotation:this.labelRotation=0;else if(h){k={width:i+"px",textOverflow:"clip"};for(h=c.length;!f&& -h--;)if(i=c[h],i=d[i].label)if(i.styles.textOverflow==="ellipsis"&&i.css({textOverflow:"clip"}),i.getBBox().height>this.len/c.length-(g.h-g.f))i.specCss={textOverflow:"ellipsis"}}j.rotation&&(k={width:(l>a.chartHeight*0.5?a.chartHeight*0.33:a.chartHeight)+"px",textOverflow:"ellipsis"});this.labelAlign=j.align=e.align||this.autoLabelAlign(this.labelRotation);m(c,function(a){var b=(a=d[a])&&a.label;if(b)k&&b.css(z(k,b.specCss)),delete b.specCss,b.attr(j),a.rotation=j.rotation});this.tickRotCorr=b.rotCorr(g.b, -this.labelRotation||0,this.side===2)},getOffset:function(){var a=this,b=a.chart,c=b.renderer,d=a.options,e=a.tickPositions,f=a.ticks,g=a.horiz,h=a.side,i=b.inverted?[1,0,3,2][h]:h,j,k,l=0,n,o=0,q=d.title,y=d.labels,S=0,C=b.axisOffset,b=b.clipOffset,v=[-1,1,1,-1][h],r;a.hasData=j=a.hasVisibleSeries||s(a.min)&&s(a.max)&&!!e;a.showAxis=k=j||p(d.showEmpty,!0);a.staggerLines=a.horiz&&y.staggerLines;if(!a.axisGroup)a.gridGroup=c.g("grid").attr({zIndex:d.gridZIndex||1}).add(),a.axisGroup=c.g("axis").attr({zIndex:d.zIndex|| -2}).add(),a.labelGroup=c.g("axis-labels").attr({zIndex:y.zIndex||7}).addClass("highcharts-"+a.coll.toLowerCase()+"-labels").add();if(j||a.isLinked){if(m(e,function(b){f[b]?f[b].addLabel():f[b]=new Ta(a,b)}),a.renderUnsquish(),m(e,function(b){if(h===0||h===2||{1:"left",3:"right"}[h]===a.labelAlign)S=t(f[b].getLabelSize(),S)}),a.staggerLines)S*=a.staggerLines,a.labelOffset=S}else for(r in f)f[r].destroy(),delete f[r];if(q&&q.text&&q.enabled!==!1){if(!a.axisTitle)a.axisTitle=c.text(q.text,0,0,q.useHTML).attr({zIndex:7, -rotation:q.rotation||0,align:q.textAlign||{low:"left",middle:"center",high:"right"}[q.align]}).addClass("highcharts-"+this.coll.toLowerCase()+"-title").css(q.style).add(a.axisGroup),a.axisTitle.isNew=!0;if(k)l=a.axisTitle.getBBox()[g?"height":"width"],n=q.offset,o=s(n)?0:p(q.margin,g?5:10);a.axisTitle[k?"show":"hide"]()}a.offset=v*p(d.offset,C[h]);a.tickRotCorr=a.tickRotCorr||{x:0,y:0};c=h===2?a.tickRotCorr.y:0;g=S+o+(S&&v*(g?p(y.y,a.tickRotCorr.y+8):y.x)-c);a.axisTitleMargin=p(n,g);C[h]=t(C[h],a.axisTitleMargin+ -l+v*a.offset,g);b[i]=t(b[i],U(d.lineWidth/2)*2)},getLinePath:function(a){var b=this.chart,c=this.opposite,d=this.offset,e=this.horiz,f=this.left+(c?this.width:0)+d,d=b.chartHeight-this.bottom-(c?this.height:0)+d;c&&(a*=-1);return b.renderer.crispLine(["M",e?this.left:f,e?d:this.top,"L",e?b.chartWidth-this.right:f,e?d:b.chartHeight-this.bottom],a)},getTitlePosition:function(){var a=this.horiz,b=this.left,c=this.top,d=this.len,e=this.options.title,f=a?b:c,g=this.opposite,h=this.offset,i=B(e.style.fontSize|| -12),d={low:f+(a?0:d),middle:f+d/2,high:f+(a?d:0)}[e.align],b=(a?c+this.height:b)+(a?1:-1)*(g?-1:1)*this.axisTitleMargin+(this.side===2?i:0);return{x:a?d:b+(g?this.width:0)+h+(e.x||0),y:a?b-(g?this.height:0)+h:d+(e.y||0)}},render:function(){var a=this,b=a.chart,c=b.renderer,d=a.options,e=a.isLog,f=a.isLinked,g=a.tickPositions,h=a.axisTitle,i=a.ticks,j=a.minorTicks,k=a.alternateBands,l=d.stackLabels,n=d.alternateGridColor,o=a.tickmarkOffset,q=d.lineWidth,y,p=b.hasRendered&&s(a.oldMin)&&!isNaN(a.oldMin); -y=a.hasData;var C=a.showAxis,v,r;a.labelEdge.length=0;a.overlap=!1;m([i,j,k],function(a){for(var b in a)a[b].isActive=!1});if(y||f){a.minorTickInterval&&!a.categories&&m(a.getMinorTickPositions(),function(b){j[b]||(j[b]=new Ta(a,b,"minor"));p&&j[b].isNew&&j[b].render(null,!0);j[b].render(null,!1,1)});if(g.length&&(m(g,function(b,c){if(!f||b>=a.min&&b<=a.max)i[b]||(i[b]=new Ta(a,b)),p&&i[b].isNew&&i[b].render(c,!0,0.1),i[b].render(c)}),o&&(a.min===0||a.single)))i[-1]||(i[-1]=new Ta(a,-1,null,!0)), -i[-1].render(-1);n&&m(g,function(b,c){if(c%2===0&&b=G.second?0:k*U(i.getMilliseconds()/k));if(j>=G.second)i[Eb](j>=G.minute?0:k*U(i.getSeconds()/k));if(j>=G.minute)i[Fb](j>=G.hour?0:k*U(i[rb]()/k));if(j>=G.hour)i[Gb](j>=G.day?0:k*U(i[sb]()/k));if(j>=G.day)i[ub](j>=G.month?1:k*U(i[Xa]()/k));j>=G.month&&(i[vb](j>=G.year?0:k*U(i[Ya]()/k)),h=i[Za]());j>=G.year&&(h-=h%k,i[wb](h));if(j===G.week)i[ub](i[Xa]()-i[tb]()+p(d,1));b=1;if(nb||eb)i=i.getTime(),i=new Aa(i+ -Wa(i));h=i[Za]();for(var d=i.getTime(),l=i[Ya](),n=i[Xa](),o=(G.day+(g?Wa(i):i.getTimezoneOffset()*6E4))%G.day;d=0.5)a=x(a),g=this.getLinearTickPositions(a,b,c);else if(a>=0.08)for(var f=U(b),h,i,j,k,l,e=a>0.3?[1,2,4]:a>0.15?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];fb&&(!d||k<=c)&&k!==u&&g.push(k),k>c&&(l=!0),k=j}else if(b=ha(b),c=ha(c),a=e[d?"minorTickInterval":"tickInterval"],a=p(a==="auto"?null:a,this._minorAutoInterval,(c-b)*(e.tickPixelInterval/(d?5:1))/((d?f/this.tickPositions.length:f)||1)),a=pb(a,null,ob(a)),g=Ua(this.getLinearTickPositions(a, -b,c),Ea),!d)this._minorAutoInterval=a/5;if(!d)this.tickInterval=a;return g};var Mb=w.Tooltip=function(){this.init.apply(this,arguments)};Mb.prototype={init:function(a,b){var c=b.borderWidth,d=b.style,e=B(d.padding);this.chart=a;this.options=b;this.crosshairs=[];this.now={x:0,y:0};this.isHidden=!0;this.label=a.renderer.label("",0,0,b.shape||"callout",null,null,b.useHTML,null,"tooltip").attr({padding:e,fill:b.backgroundColor,"stroke-width":c,r:b.borderRadius,zIndex:8}).css(d).css({padding:0}).add().attr({y:-9999}); -ea||this.label.shadow(b.shadow);this.shared=b.shared},destroy:function(){if(this.label)this.label=this.label.destroy();clearTimeout(this.hideTimer);clearTimeout(this.tooltipTimeout)},move:function(a,b,c,d){var e=this,f=e.now,g=e.options.animation!==!1&&!e.isHidden&&(O(a-f.x)>1||O(b-f.y)>1),h=e.followPointer||e.len>1;r(f,{x:g?(2*f.x+a)/3:a,y:g?(f.y+b)/2:b,anchorX:h?u:g?(2*f.anchorX+c)/3:c,anchorY:h?u:g?(f.anchorY+d)/2:d});e.label.attr(f);if(g)clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){e&& -e.move(a,b,c,d)},32)},hide:function(a){var b=this,c;clearTimeout(this.hideTimer);if(!this.isHidden)c=this.chart.hoverPoints,this.hideTimer=setTimeout(function(){b.label.fadeOut();b.isHidden=!0},p(a,this.options.hideDelay,500)),c&&m(c,function(a){a.setState()}),this.chart.hoverPoints=null,this.chart.hoverSeries=null},getAnchor:function(a,b){var c,d=this.chart,e=d.inverted,f=d.plotTop,g=d.plotLeft,h=0,i=0,j,k,a=ra(a);c=a[0].tooltipPos;this.followPointer&&b&&(b.chartX===u&&(b=d.pointer.normalize(b)), -c=[b.chartX-d.plotLeft,b.chartY-f]);c||(m(a,function(a){j=a.series.yAxis;k=a.series.xAxis;h+=a.plotX+(!e&&k?k.left-g:0);i+=(a.plotLow?(a.plotLow+a.plotHigh)/2:a.plotY)+(!e&&j?j.top-f:0)}),h/=a.length,i/=a.length,c=[e?d.plotWidth-i:h,this.shared&&!e&&a.length>1&&b?b.chartY-f:e?d.plotHeight-h:i]);return Ua(c,x)},getPosition:function(a,b,c){var d=this.chart,e=this.distance,f={},g=c.h,h,i=["y",d.chartHeight,b,c.plotY+d.plotTop],j=["x",d.chartWidth,a,c.plotX+d.plotLeft],k=p(c.ttBelow,d.inverted&&!c.negative|| -!d.inverted&&c.negative),l=function(a,b,c,d){var h=cb?d:d+g;else return!1},n=function(a,b,c,d){if(db-e)return!1;else f[a]=db-c/2?b-c-2:d-c/2},o=function(a){var b=i;i=j;j=b;h=a},q=function(){l.apply(0,i)!==!1?n.apply(0,j)===!1&&!h&&(o(!0),q()):h?f.x=f.y=0:(o(!0),q())};(d.inverted||this.len>1)&&o();q();return f},defaultFormatter:function(a){var b=this.points||ra(this),c;c=[a.tooltipFooterHeaderFormatter(b[0])]; -c=c.concat(a.bodyFormatter(b));c.push(a.tooltipFooterHeaderFormatter(b[0],!0));return c.join("")},refresh:function(a,b){var c=this.chart,d=this.label,e=this.options,f,g,h={},i,j=[];i=e.formatter||this.defaultFormatter;var h=c.hoverPoints,k,l=this.shared;clearTimeout(this.hideTimer);this.followPointer=ra(a)[0].series.tooltipOptions.followPointer;g=this.getAnchor(a,b);f=g[0];g=g[1];l&&(!a.series||!a.series.noSharedTooltip)?(c.hoverPoints=a,h&&m(h,function(a){a.setState()}),m(a,function(a){a.setState("hover"); -j.push(a.getLabelConfig())}),h={x:a[0].category,y:a[0].y},h.points=j,this.len=j.length,a=a[0]):h=a.getLabelConfig();i=i.call(h,this);h=a.series;this.distance=p(h.tooltipOptions.distance,16);i===!1?this.hide():(this.isHidden&&(db(d),d.attr("opacity",1).show()),d.attr({text:i}),k=e.borderColor||a.color||h.color||"#606060",d.attr({stroke:k}),this.updatePosition({plotX:f,plotY:g,negative:a.negative,ttBelow:a.ttBelow,h:a.shapeArgs&&a.shapeArgs.height||0}),this.isHidden=!1);M(c,"tooltipRefresh",{text:i, -x:f+c.plotLeft,y:g+c.plotTop,borderColor:k})},updatePosition:function(a){var b=this.chart,c=this.label,c=(this.options.positioner||this.getPosition).call(this,c.width,c.height,a);this.move(x(c.x),x(c.y),a.plotX+b.plotLeft,a.plotY+b.plotTop)},getXDateFormat:function(a,b,c){var d,b=b.dateTimeLabelFormats,e=c&&c.closestPointRange,f,g={millisecond:15,second:12,minute:9,hour:6,day:3},h,i;if(e){h=Oa("%m-%d %H:%M:%S.%L",a.x);for(f in G){if(e===G.week&&+Oa("%w",a.x)===c.options.startOfWeek&&h.substr(6)=== -"00:00:00.000"){f="week";break}else if(G[f]>e){f=i;break}else if(g[f]&&h.substr(g[f])!=="01-01 00:00:00.000".substr(g[f]))break;f!=="week"&&(i=f)}f&&(d=b[f])}else d=b.day;return d||b.year},tooltipFooterHeaderFormatter:function(a,b){var c=b?"footer":"header",d=a.series,e=d.tooltipOptions,f=e.xDateFormat,g=d.xAxis,h=g&&g.options.type==="datetime"&&qa(a.key),c=e[c+"Format"];h&&!f&&(f=this.getXDateFormat(a,e,g));h&&f&&(c=c.replace("{point.key}","{point.key:"+f+"}"));return Ja(c,{point:a,series:d})},bodyFormatter:function(a){return Ua(a, -function(a){var c=a.series.tooltipOptions;return(c.pointFormatter||a.point.tooltipFormatter).call(a.point,c.pointFormat)})}};var oa;ab=A.documentElement.ontouchstart!==u;var Va=w.Pointer=function(a,b){this.init(a,b)};Va.prototype={init:function(a,b){var c=b.chart,d=c.events,e=ea?"":c.zoomType,c=a.inverted,f;this.options=b;this.chart=a;this.zoomX=f=/x/.test(e);this.zoomY=e=/y/.test(e);this.zoomHor=f&&!c||e&&c;this.zoomVert=e&&!c||f&&c;this.hasZoom=f||e;this.runChartClick=d&&!!d.click;this.pinchDown= -[];this.lastValidTouch={};if(w.Tooltip&&b.tooltip.enabled)a.tooltip=new Mb(a,b.tooltip),this.followTouchMove=p(b.tooltip.followTouchMove,!0);this.setDOMEvents()},normalize:function(a,b){var c,d,a=a||window.event,a=Sb(a);if(!a.target)a.target=a.srcElement;d=a.touches?a.touches.length?a.touches.item(0):a.changedTouches[0]:a;if(!b)this.chartPosition=b=Rb(this.chart.container);d.pageX===u?(c=t(a.x,a.clientX-b.left),d=a.y):(c=d.pageX-b.left,d=d.pageY-b.top);return r(a,{chartX:x(c),chartY:x(d)})},getCoordinates:function(a){var b= -{xAxis:[],yAxis:[]};m(this.chart.axes,function(c){b[c.isXAxis?"xAxis":"yAxis"].push({axis:c,value:c.toValue(a[c.horiz?"chartX":"chartY"])})});return b},runPointActions:function(a){var b=this.chart,c=b.series,d=b.tooltip,e=d?d.shared:!1,f=b.hoverPoint,g=b.hoverSeries,h,i=b.chartWidth,j=b.chartWidth,k,l=[],n,o;if(!e&&!g)for(h=0;h1)&&a.dist.distRh+j&&(d=h+j);ei+k&&(e=i+k);this.hasDragged=Math.sqrt(Math.pow(n-d,2)+Math.pow(o-e,2));if(this.hasDragged>10){l=b.isInsidePlot(n-h,o-i);if(b.hasCartesianSeries&&(this.zoomX||this.zoomY)&&l&&!q&&!this.selectionMarker)this.selectionMarker=b.renderer.rect(h,i,f?1:j,g?1:k,0).attr({fill:c.selectionMarkerFill||"rgba(69,114,167,0.25)",zIndex:7}).add();this.selectionMarker&&f&&(d-=n,this.selectionMarker.attr({width:O(d),x:(d>0?0:d)+n}));this.selectionMarker&& -g&&(d=e-o,this.selectionMarker.attr({height:O(d),y:(d>0?0:d)+o}));l&&!this.selectionMarker&&c.panning&&b.pan(a,c.panning)}},drop:function(a){var b=this,c=this.chart,d=this.hasPinched;if(this.selectionMarker){var e={xAxis:[],yAxis:[],originalEvent:a.originalEvent||a},f=this.selectionMarker,g=f.attr?f.attr("x"):f.x,h=f.attr?f.attr("y"):f.y,i=f.attr?f.attr("width"):f.width,j=f.attr?f.attr("height"):f.height,k;if(this.hasDragged||d)m(c.axes,function(c){if(c.zoomEnabled&&s(c.min)&&(d||b[{xAxis:"zoomX", -yAxis:"zoomY"}[c.coll]])){var f=c.horiz,o=a.type==="touchend"?c.minPixelPadding:0,q=c.toValue((f?g:h)+o),f=c.toValue((f?g+i:h+j)-o);e[c.coll].push({axis:c,min:I(q,f),max:t(q,f)});k=!0}}),k&&M(c,"selection",e,function(a){c.zoom(r(a,d?{animation:!1}:null))});this.selectionMarker=this.selectionMarker.destroy();d&&this.scaleGroups()}if(c)F(c.container,{cursor:c._cursor}),c.cancelClick=this.hasDragged>10,c.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[]},onContainerMouseDown:function(a){a= -this.normalize(a);a.preventDefault&&a.preventDefault();this.dragStart(a)},onDocumentMouseUp:function(a){X[oa]&&X[oa].pointer.drop(a)},onDocumentMouseMove:function(a){var b=this.chart,c=this.chartPosition,a=this.normalize(a,c);c&&!this.inClass(a.target,"highcharts-tracker")&&!b.isInsidePlot(a.chartX-b.plotLeft,a.chartY-b.plotTop)&&this.reset()},onContainerMouseLeave:function(){var a=X[oa];if(a)a.pointer.reset(),a.pointer.chartPosition=null},onContainerMouseMove:function(a){var b=this.chart;oa=b.index; -a=this.normalize(a);a.returnValue=!1;b.mouseIsDown==="mousedown"&&this.drag(a);(this.inClass(a.target,"highcharts-tracker")||b.isInsidePlot(a.chartX-b.plotLeft,a.chartY-b.plotTop))&&!b.openMenu&&this.runPointActions(a)},inClass:function(a,b){for(var c;a;){if(c=L(a,"class"))if(c.indexOf(b)!==-1)return!0;else if(c.indexOf("highcharts-container")!==-1)return!1;a=a.parentNode}},onTrackerMouseOut:function(a){var b=this.chart.hoverSeries,c=(a=a.relatedTarget||a.toElement)&&a.point&&a.point.series;if(b&& -!b.options.stickyTracking&&!this.inClass(a,"highcharts-tooltip")&&c!==b)b.onMouseOut()},onContainerClick:function(a){var b=this.chart,c=b.hoverPoint,d=b.plotLeft,e=b.plotTop,a=this.normalize(a);a.originalEvent=a;a.cancelBubble=!0;b.cancelClick||(c&&this.inClass(a.target,"highcharts-tracker")?(M(c.series,"click",r(a,{point:c})),b.hoverPoint&&c.firePointEvent("click",a)):(r(a,this.getCoordinates(a)),b.isInsidePlot(a.chartX-d,a.chartY-e)&&M(b,"click",a)))},setDOMEvents:function(){var a=this,b=a.chart.container; -b.onmousedown=function(b){a.onContainerMouseDown(b)};b.onmousemove=function(b){a.onContainerMouseMove(b)};b.onclick=function(b){a.onContainerClick(b)};N(b,"mouseleave",a.onContainerMouseLeave);bb===1&&N(A,"mouseup",a.onDocumentMouseUp);if(ab)b.ontouchstart=function(b){a.onContainerTouchStart(b)},b.ontouchmove=function(b){a.onContainerTouchMove(b)},bb===1&&N(A,"touchend",a.onDocumentTouchEnd)},destroy:function(){var a;Y(this.chart.container,"mouseleave",this.onContainerMouseLeave);bb||(Y(A,"mouseup", -this.onDocumentMouseUp),Y(A,"touchend",this.onDocumentTouchEnd));clearInterval(this.tooltipTimeout);for(a in this)this[a]=null}};r(w.Pointer.prototype,{pinchTranslate:function(a,b,c,d,e,f){(this.zoomHor||this.pinchHor)&&this.pinchTranslateDirection(!0,a,b,c,d,e,f);(this.zoomVert||this.pinchVert)&&this.pinchTranslateDirection(!1,a,b,c,d,e,f)},pinchTranslateDirection:function(a,b,c,d,e,f,g,h){var i=this.chart,j=a?"x":"y",k=a?"X":"Y",l="chart"+k,n=a?"width":"height",o=i["plot"+(a?"Left":"Top")],q,p, -m=h||1,C=i.inverted,v=i.bounds[a?"h":"v"],s=b.length===1,r=b[0][l],t=c[0][l],u=!s&&b[1][l],x=!s&&c[1][l],w,c=function(){!s&&O(r-u)>20&&(m=h||O(t-x)/O(r-u));p=(o-t)/m+r;q=i["plot"+(a?"Width":"Height")]/m};c();b=p;bv.max&&(b=v.max-q,w=!0);w?(t-=0.8*(t-g[j][0]),s||(x-=0.8*(x-g[j][1])),c()):g[j]=[t,x];C||(f[j]=p-o,f[n]=q);f=C?1/m:m;e[n]=q;e[j]=b;d[C?a?"scaleY":"scaleX":"scale"+k]=m;d["translate"+k]=f*o+(t-f*r)},pinch:function(a){var b=this,c=b.chart,d=b.pinchDown,e=a.touches, -f=e.length,g=b.lastValidTouch,h=b.hasZoom,i=b.selectionMarker,j={},k=f===1&&(b.inClass(a.target,"highcharts-tracker")&&c.runTrackerClick||b.runChartClick),l={};h&&!k&&a.preventDefault();Ua(e,function(a){return b.normalize(a)});if(a.type==="touchstart")m(e,function(a,b){d[b]={chartX:a.chartX,chartY:a.chartY}}),g.x=[d[0].chartX,d[1]&&d[1].chartX],g.y=[d[0].chartY,d[1]&&d[1].chartY],m(c.axes,function(a){if(a.zoomEnabled){var b=c.bounds[a.horiz?"h":"v"],d=a.minPixelPadding,e=a.toPixels(p(a.options.min, -a.dataMin)),f=a.toPixels(p(a.options.max,a.dataMax)),g=I(e,f),e=t(e,f);b.min=I(a.pos,g-d);b.max=t(a.pos+a.len,e+d)}}),b.res=!0;else if(d.length){if(!i)b.selectionMarker=i=r({destroy:ma},c.plotBox);b.pinchTranslate(d,e,j,i,l,g);b.hasPinched=h;b.scaleGroups(j,l);if(!h&&b.followTouchMove&&f===1)this.runPointActions(b.normalize(a));else if(b.res)b.res=!1,this.reset(!1,0)}},onContainerTouchStart:function(a){var b=this.chart;oa=b.index;a.touches.length===1?(a=this.normalize(a),b.isInsidePlot(a.chartX-b.plotLeft, -a.chartY-b.plotTop)&&!b.openMenu?(this.runPointActions(a),this.pinch(a)):this.reset()):a.touches.length===2&&this.pinch(a)},onContainerTouchMove:function(a){(a.touches.length===1||a.touches.length===2)&&this.pinch(a)},onDocumentTouchEnd:function(a){X[oa]&&X[oa].pointer.drop(a)}});if(H.PointerEvent||H.MSPointerEvent){var wa={},Ab=!!H.PointerEvent,Wb=function(){var a,b=[];b.item=function(a){return this[a]};for(a in wa)wa.hasOwnProperty(a)&&b.push({pageX:wa[a].pageX,pageY:wa[a].pageY,target:wa[a].target}); -return b},Bb=function(a,b,c,d){a=a.originalEvent||a;if((a.pointerType==="touch"||a.pointerType===a.MSPOINTER_TYPE_TOUCH)&&X[oa])d(a),d=X[oa].pointer,d[b]({type:c,target:a.currentTarget,preventDefault:ma,touches:Wb()})};r(Va.prototype,{onContainerPointerDown:function(a){Bb(a,"onContainerTouchStart","touchstart",function(a){wa[a.pointerId]={pageX:a.pageX,pageY:a.pageY,target:a.currentTarget}})},onContainerPointerMove:function(a){Bb(a,"onContainerTouchMove","touchmove",function(a){wa[a.pointerId]={pageX:a.pageX, -pageY:a.pageY};if(!wa[a.pointerId].target)wa[a.pointerId].target=a.currentTarget})},onDocumentPointerUp:function(a){Bb(a,"onDocumentTouchEnd","touchend",function(a){delete wa[a.pointerId]})},batchMSEvents:function(a){a(this.chart.container,Ab?"pointerdown":"MSPointerDown",this.onContainerPointerDown);a(this.chart.container,Ab?"pointermove":"MSPointerMove",this.onContainerPointerMove);a(A,Ab?"pointerup":"MSPointerUp",this.onDocumentPointerUp)}});cb(Va.prototype,"init",function(a,b,c){a.call(this,b, -c);this.hasZoom&&F(b.container,{"-ms-touch-action":R,"touch-action":R})});cb(Va.prototype,"setDOMEvents",function(a){a.apply(this);(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(N)});cb(Va.prototype,"destroy",function(a){this.batchMSEvents(Y);a.call(this)})}var mb=w.Legend=function(a,b){this.init(a,b)};mb.prototype={init:function(a,b){var c=this,d=b.itemStyle,e=b.itemMarginTop||0;this.options=b;if(b.enabled)c.itemStyle=d,c.itemHiddenStyle=z(d,b.itemHiddenStyle),c.itemMarginTop=e,c.padding= -d=p(b.padding,8),c.initialItemX=d,c.initialItemY=d-5,c.maxItemWidth=0,c.chart=a,c.itemHeight=0,c.symbolWidth=p(b.symbolWidth,16),c.pages=[],c.render(),N(c.chart,"endResize",function(){c.positionCheckboxes()})},colorizeItem:function(a,b){var c=this.options,d=a.legendItem,e=a.legendLine,f=a.legendSymbol,g=this.itemHiddenStyle.color,c=b?c.itemStyle.color:g,h=b?a.legendColor||a.color||"#CCC":g,g=a.options&&a.options.marker,i={fill:h},j;d&&d.css({fill:c,color:c});e&&e.attr({stroke:h});if(f){if(g&&f.isMarker)for(j in i.stroke= -h,g=a.convertAttribs(g),g)d=g[j],d!==u&&(i[j]=d);f.attr(i)}},positionItem:function(a){var b=this.options,c=b.symbolPadding,b=!b.rtl,d=a._legendItemPos,e=d[0],d=d[1],f=a.checkbox;a.legendGroup&&a.legendGroup.translate(b?e:this.legendWidth-e-2*c-4,d);if(f)f.x=e,f.y=d},destroyItem:function(a){var b=a.checkbox;m(["legendItem","legendLine","legendSymbol","legendGroup"],function(b){a[b]&&(a[b]=a[b].destroy())});b&&Ra(a.checkbox)},clearItems:function(){var a=this;m(a.getAllItems(),function(b){a.destroyItem(b)})}, -destroy:function(){var a=this.group,b=this.box;if(b)this.box=b.destroy();if(a)this.group=a.destroy()},positionCheckboxes:function(a){var b=this.group.alignAttr,c,d=this.clipHeight||this.legendHeight;if(b)c=b.translateY,m(this.allItems,function(e){var f=e.checkbox,g;f&&(g=c+f.y+(a||0)+3,F(f,{left:b.translateX+e.checkboxOffset+f.x-20+"px",top:g+"px",display:g>c-6&&g(n||b.chartWidth-2*j-y-d.x))this.itemX=y,this.itemY+=q+this.lastLineHeight+o,this.lastLineHeight=0;this.maxItemWidth=t(this.maxItemWidth,f);this.lastItemY=q+this.itemY+o;this.lastLineHeight= -t(g,this.lastLineHeight);a._legendItemPos=[this.itemX,this.itemY];e?this.itemX+=f:(this.itemY+=q+g+o,this.lastLineHeight=g);this.offsetWidth=n||t((e?this.itemX-y-k:f)+j,this.offsetWidth)},getAllItems:function(){var a=[];m(this.chart.series,function(b){var c=b.options;if(p(c.showInLegend,!s(c.linkedTo)?u:!1,!0))a=a.concat(b.legendItems||(c.legendType==="point"?b.data:b))});return a},adjustMargins:function(a,b){var c=this.chart,d=this.options,e=d.align[0]+d.verticalAlign[0]+d.layout[0];this.display&& -!d.floating&&m([/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/],function(f,g){f.test(e)&&!s(a[g])&&(c[ib[g]]=t(c[ib[g]],c.legend[(g+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][g]*d[g%2?"x":"y"]+p(d.margin,12)+b[g]))})},render:function(){var a=this,b=a.chart,c=b.renderer,d=a.group,e,f,g,h,i=a.box,j=a.options,k=a.padding,l=j.borderWidth,n=j.backgroundColor;a.itemX=a.initialItemX;a.itemY=a.initialItemY;a.offsetWidth=0;a.lastItemY=0;if(!d)a.group=d=c.g("legend").attr({zIndex:7}).add(), -a.contentGroup=c.g().attr({zIndex:1}).add(d),a.scrollGroup=c.g().add(a.contentGroup);a.renderTitle();e=a.getAllItems();qb(e,function(a,b){return(a.options&&a.options.legendIndex||0)-(b.options&&b.options.legendIndex||0)});j.reversed&&e.reverse();a.allItems=e;a.display=f=!!e.length;a.lastLineHeight=0;m(e,function(b){a.renderItem(b)});g=(j.width||a.offsetWidth)+k;h=a.lastItemY+a.lastLineHeight+a.titleHeight;h=a.handleOverflow(h);h+=k;if(l||n){if(i){if(g>0&&h>0)i[i.isNew?"attr":"animate"](i.crisp({width:g, -height:h})),i.isNew=!1}else a.box=i=c.rect(0,0,g,h,j.borderRadius,l||0).attr({stroke:j.borderColor,"stroke-width":l||0,fill:n||R}).add(d).shadow(j.shadow),i.isNew=!0;i[f?"show":"hide"]()}a.legendWidth=g;a.legendHeight=h;m(e,function(b){a.positionItem(b)});f&&d.align(r({width:g,height:h},j),!0,"spacingBox");b.isResizing||this.positionCheckboxes()},handleOverflow:function(a){var b=this,c=this.chart,d=c.renderer,e=this.options,f=e.y,f=c.spacingBox.height+(e.verticalAlign==="top"?-f:f)-this.padding,g= -e.maxHeight,h,i=this.clipRect,j=e.navigation,k=p(j.animation,!0),l=j.arrowSize||12,n=this.nav,o=this.pages,q,y=this.allItems;e.layout==="horizontal"&&(f/=2);g&&(f=I(f,g));o.length=0;if(a>f&&!e.useHTML){this.clipHeight=h=t(f-20-this.titleHeight-this.padding,0);this.currentPage=p(this.currentPage,1);this.fullHeight=a;m(y,function(a,b){var c=a._legendItemPos[1],d=x(a.legendItem.getBBox().height),e=o.length;if(!e||c-o[e-1]>h&&(q||c)!==o[e-1])o.push(q||c),e++;b===y.length-1&&c+d-o[e-1]>h&&o.push(c);c!== -q&&(q=c)});if(!i)i=b.clipRect=d.clipRect(0,this.padding,9999,0),b.contentGroup.clip(i);i.attr({height:h});if(!n)this.nav=n=d.g().attr({zIndex:1}).add(this.group),this.up=d.symbol("triangle",0,0,l,l).on("click",function(){b.scroll(-1,k)}).add(n),this.pager=d.text("",15,10).css(j.style).add(n),this.down=d.symbol("triangle-down",0,0,l,l).on("click",function(){b.scroll(1,k)}).add(n);b.scroll(0);a=f}else if(n)i.attr({height:c.chartHeight}),n.hide(),this.scrollGroup.attr({translateY:1}),this.clipHeight= -0;return a},scroll:function(a,b){var c=this.pages,d=c.length,e=this.currentPage+a,f=this.clipHeight,g=this.options.navigation,h=g.activeColor,g=g.inactiveColor,i=this.pager,j=this.padding;e>d&&(e=d);if(e>0)b!==u&&Sa(b,this.chart),this.nav.attr({translateX:j,translateY:f+this.padding+7+this.titleHeight,visibility:"visible"}),this.up.attr({fill:e===1?g:h}).css({cursor:e===1?"default":"pointer"}),i.attr({text:e+"/"+d}),this.down.attr({x:18+this.pager.getBBox().width,fill:e===d?g:h}).css({cursor:e=== -d?"default":"pointer"}),c=-c[e-1]+this.initialItemY,this.scrollGroup.animate({translateY:c}),this.currentPage=e,this.positionCheckboxes(c)}};Na=w.LegendSymbolMixin={drawRectangle:function(a,b){var c=a.options.symbolHeight||a.fontMetrics.f;b.legendSymbol=this.chart.renderer.rect(0,a.baseline-c+1,a.symbolWidth,c,a.options.symbolRadius||0).attr({zIndex:3}).add(b.legendGroup)},drawLineMarker:function(a){var b=this.options,c=b.marker,d;d=a.symbolWidth;var e=this.chart.renderer,f=this.legendGroup,a=a.baseline- -x(a.fontMetrics.b*0.3),g;if(b.lineWidth){g={"stroke-width":b.lineWidth};if(b.dashStyle)g.dashstyle=b.dashStyle;this.legendLine=e.path(["M",0,a,"L",d,a]).attr(g).add(f)}if(c&&c.enabled!==!1)b=c.radius,this.legendSymbol=d=e.symbol(this.symbol,d/2-b,a-b,2*b,2*b).add(f),d.isMarker=!0}};(/Trident\/7\.0/.test(Ba)||La)&&cb(mb.prototype,"positionItem",function(a,b){var c=this,d=function(){b._legendItemPos&&a.call(c,b)};d();setTimeout(d)});D=w.Chart=function(){this.init.apply(this,arguments)};D.prototype= -{callbacks:[],init:function(a,b){var c,d=a.series;a.series=null;c=z(P,a);c.series=a.series=d;this.userOptions=a;d=c.chart;this.margin=this.splashArray("margin",d);this.spacing=this.splashArray("spacing",d);var e=d.events;this.bounds={h:{},v:{}};this.callback=b;this.isResizing=0;this.options=c;this.axes=[];this.series=[];this.hasCartesianSeries=d.showAxes;var f=this,g;f.index=X.length;X.push(f);bb++;d.reflow!==!1&&N(f,"load",function(){f.initReflow()});if(e)for(g in e)N(f,g,e[g]);f.xAxis=[];f.yAxis= -[];f.animation=ea?!1:p(d.animation,!0);f.pointCount=f.colorCounter=f.symbolCounter=0;f.firstRender()},initSeries:function(a){var b=this.options.chart;(b=J[a.type||b.type||b.defaultSeriesType])||ka(17,!0);b=new b;b.init(this,a);return b},isInsidePlot:function(a,b,c){var d=c?b:a,a=c?a:b;return d>=0&&d<=this.plotWidth&&a>=0&&a<=this.plotHeight},redraw:function(a){var b=this.axes,c=this.series,d=this.pointer,e=this.legend,f=this.isDirtyLegend,g,h,i=this.hasCartesianSeries,j=this.isDirtyBox,k=c.length, -l=k,n=this.renderer,o=n.isHidden(),q=[];Sa(a,this);o&&this.cloneRenderTo();for(this.layOutTitles();l--;)if(a=c[l],a.options.stacking&&(g=!0,a.isDirty)){h=!0;break}if(h)for(l=k;l--;)if(a=c[l],a.options.stacking)a.isDirty=!0;m(c,function(a){a.isDirty&&a.options.legendType==="point"&&(f=!0)});if(f&&e.options.enabled)e.render(),this.isDirtyLegend=!1;g&&this.getStacks();if(i&&!this.isResizing)this.maxTicks=null,m(b,function(a){a.setScale()});this.getMargins();i&&(m(b,function(a){a.isDirty&&(j=!0)}),m(b, -function(a){if(a.isDirtyExtremes)a.isDirtyExtremes=!1,q.push(function(){M(a,"afterSetExtremes",r(a.eventArgs,a.getExtremes()));delete a.eventArgs});(j||g)&&a.redraw()}));j&&this.drawChartBox();m(c,function(a){a.isDirty&&a.visible&&(!a.isCartesian||a.xAxis)&&a.redraw()});d&&d.reset(!0);n.draw();M(this,"redraw");o&&this.cloneRenderTo(!0);m(q,function(a){a.call()})},get:function(a){var b=this.axes,c=this.series,d,e;for(d=0;d19?this.containerHeight:400))},cloneRenderTo:function(a){var b=this.renderToClone,c=this.container;a?b&&(this.renderTo.appendChild(c),Ra(b),delete this.renderToClone):(c&&c.parentNode===this.renderTo&&this.renderTo.removeChild(c),this.renderToClone=b=this.renderTo.cloneNode(0),F(b,{position:"absolute",top:"-9999px",display:"block"}),b.style.setProperty&&b.style.setProperty("display","block","important"),A.body.appendChild(b),c&&b.appendChild(c))}, -getContainer:function(){var a,b=this.options.chart,c,d,e;this.renderTo=a=b.renderTo;e="highcharts-"+yb++;if(Da(a))this.renderTo=a=A.getElementById(a);a||ka(13,!0);c=B(L(a,"data-highcharts-chart"));!isNaN(c)&&X[c]&&X[c].hasRendered&&X[c].destroy();L(a,"data-highcharts-chart",this.index);a.innerHTML="";!b.skipClone&&!a.offsetWidth&&this.cloneRenderTo();this.getChartSize();c=this.chartWidth;d=this.chartHeight;this.container=a=Z(Ka,{className:"highcharts-container"+(b.className?" "+b.className:""),id:e}, -r({position:"relative",overflow:"hidden",width:c+"px",height:d+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)"},b.style),this.renderToClone||a);this._cursor=a.style.cursor;this.renderer=b.forExport?new ta(a,c,d,b.style,!0):new $a(a,c,d,b.style);ea&&this.renderer.create(this,a,c,d);this.renderer.chartIndex=this.index},getMargins:function(a){var b=this.spacing,c=this.margin,d=this.titleOffset;this.resetMargins();if(d&&!s(c[0]))this.plotTop=t(this.plotTop, -d+this.options.title.margin+b[0]);this.legend.adjustMargins(c,b);this.extraBottomMargin&&(this.marginBottom+=this.extraBottomMargin);this.extraTopMargin&&(this.plotTop+=this.extraTopMargin);a||this.getAxisMargins()},getAxisMargins:function(){var a=this,b=a.axisOffset=[0,0,0,0],c=a.margin;a.hasCartesianSeries&&m(a.axes,function(a){a.getOffset()});m(ib,function(d,e){s(c[e])||(a[d]+=b[e])});a.setChartSize()},reflow:function(a){var b=this,c=b.options.chart,d=b.renderTo,e=c.width||jb(d,"width"),f=c.height|| -jb(d,"height"),c=a?a.target:H,d=function(){if(b.container)b.setSize(e,f,!1),b.hasUserSize=null};if(!b.hasUserSize&&!b.isPrinting&&e&&f&&(c===H||c===A)){if(e!==b.containerWidth||f!==b.containerHeight)clearTimeout(b.reflowTimeout),a?b.reflowTimeout=setTimeout(d,100):d();b.containerWidth=e;b.containerHeight=f}},initReflow:function(){var a=this,b=function(b){a.reflow(b)};N(H,"resize",b);N(a,"destroy",function(){Y(H,"resize",b)})},setSize:function(a,b,c){var d=this,e,f,g;d.isResizing+=1;g=function(){d&& -M(d,"endResize",null,function(){d.isResizing-=1})};Sa(c,d);d.oldChartHeight=d.chartHeight;d.oldChartWidth=d.chartWidth;if(s(a))d.chartWidth=e=t(0,x(a)),d.hasUserSize=!!e;if(s(b))d.chartHeight=f=t(0,x(b));(za?lb:F)(d.container,{width:e+"px",height:f+"px"},za);d.setChartSize(!0);d.renderer.setSize(e,f,c);d.maxTicks=null;m(d.axes,function(a){a.isDirty=!0;a.setScale()});m(d.series,function(a){a.isDirty=!0});d.isDirtyLegend=!0;d.isDirtyBox=!0;d.layOutTitles();d.getMargins();d.redraw(c);d.oldChartHeight= -null;M(d,"resize");za===!1?g():setTimeout(g,za&&za.duration||500)},setChartSize:function(a){var b=this.inverted,c=this.renderer,d=this.chartWidth,e=this.chartHeight,f=this.options.chart,g=this.spacing,h=this.clipOffset,i,j,k,l;this.plotLeft=i=x(this.plotLeft);this.plotTop=j=x(this.plotTop);this.plotWidth=k=t(0,x(d-i-this.marginRight));this.plotHeight=l=t(0,x(e-j-this.marginBottom));this.plotSizeX=b?l:k;this.plotSizeY=b?k:l;this.plotBorderWidth=f.plotBorderWidth||0;this.spacingBox=c.spacingBox={x:g[3], -y:g[0],width:d-g[3]-g[1],height:e-g[0]-g[2]};this.plotBox=c.plotBox={x:i,y:j,width:k,height:l};d=2*U(this.plotBorderWidth/2);b=sa(t(d,h[3])/2);c=sa(t(d,h[0])/2);this.clipBox={x:b,y:c,width:U(this.plotSizeX-t(d,h[1])/2-b),height:t(0,U(this.plotSizeY-t(d,h[2])/2-c))};a||m(this.axes,function(a){a.setAxisSize();a.setAxisTranslation()})},resetMargins:function(){var a=this;m(ib,function(b,c){a[b]=p(a.margin[c],a.spacing[c])});a.axisOffset=[0,0,0,0];a.clipOffset=[0,0,0,0]},drawChartBox:function(){var a= -this.options.chart,b=this.renderer,c=this.chartWidth,d=this.chartHeight,e=this.chartBackground,f=this.plotBackground,g=this.plotBorder,h=this.plotBGImage,i=a.borderWidth||0,j=a.backgroundColor,k=a.plotBackgroundColor,l=a.plotBackgroundImage,n=a.plotBorderWidth||0,o,q=this.plotLeft,p=this.plotTop,m=this.plotWidth,s=this.plotHeight,v=this.plotBox,r=this.clipRect,t=this.clipBox;o=i+(a.shadow?8:0);if(i||j)if(e)e.animate(e.crisp({width:c-o,height:d-o}));else{e={fill:j||R};if(i)e.stroke=a.borderColor,e["stroke-width"]= -i;this.chartBackground=b.rect(o/2,o/2,c-o,d-o,a.borderRadius,i).attr(e).addClass("highcharts-background").add().shadow(a.shadow)}if(k)f?f.animate(v):this.plotBackground=b.rect(q,p,m,s,0).attr({fill:k}).add().shadow(a.plotShadow);if(l)h?h.animate(v):this.plotBGImage=b.image(l,q,p,m,s).add();r?r.animate({width:t.width,height:t.height}):this.clipRect=b.clipRect(t);if(n)g?g.animate(g.crisp({x:q,y:p,width:m,height:s,strokeWidth:-n})):this.plotBorder=b.rect(q,p,m,s,0,-n).attr({stroke:a.plotBorderColor, -"stroke-width":n,fill:R,zIndex:1}).add();this.isDirtyBox=!1},propFromSeries:function(){var a=this,b=a.options.chart,c,d=a.options.series,e,f;m(["inverted","angular","polar"],function(g){c=J[b.type||b.defaultSeriesType];f=a[g]||b[g]||c&&c.prototype[g];for(e=d&&d.length;!f&&e--;)(c=J[d[e].type])&&c.prototype[g]&&(f=!0);a[g]=f})},linkSeries:function(){var a=this,b=a.series;m(b,function(a){a.linkedSeries.length=0});m(b,function(b){var d=b.options.linkedTo;if(Da(d)&&(d=d===":previous"?a.series[b.index- -1]:a.get(d)))d.linkedSeries.push(b),b.linkedParent=d})},renderSeries:function(){m(this.series,function(a){a.translate();a.render()})},renderLabels:function(){var a=this,b=a.options.labels;b.items&&m(b.items,function(c){var d=r(b.style,c.style),e=B(d.left)+a.plotLeft,f=B(d.top)+a.plotTop+12;delete d.left;delete d.top;a.renderer.text(c.html,e,f).attr({zIndex:2}).css(d).add()})},render:function(){var a=this.axes,b=this.renderer,c=this.options,d,e,f,g;this.setTitle();this.legend=new mb(this,c.legend); -this.getStacks();this.getMargins(!0);this.setChartSize();d=this.plotWidth;e=this.plotHeight-=13;m(a,function(a){a.setScale()});this.getAxisMargins();f=d/this.plotWidth>1.1;g=e/this.plotHeight>1.1;if(f||g)this.maxTicks=null,m(a,function(a){(a.horiz&&f||!a.horiz&&g)&&a.setTickInterval(!0)}),this.getMargins();this.drawChartBox();this.hasCartesianSeries&&m(a,function(a){a.render()});if(!this.seriesGroup)this.seriesGroup=b.g("series-group").attr({zIndex:3}).add();this.renderSeries();this.renderLabels(); -this.showCredits(c.credits);this.hasRendered=!0},showCredits:function(a){if(a.enabled&&!this.credits)this.credits=this.renderer.text(a.text,0,0).on("click",function(){if(a.href)location.href=a.href}).attr({align:a.position.align,zIndex:8}).css(a.style).add().align(a.position)},destroy:function(){var a=this,b=a.axes,c=a.series,d=a.container,e,f=d&&d.parentNode;M(a,"destroy");X[a.index]=u;bb--;a.renderTo.removeAttribute("data-highcharts-chart");Y(a);for(e=b.length;e--;)b[e]=b[e].destroy();for(e=c.length;e--;)c[e]= -c[e].destroy();m("title,subtitle,chartBackground,plotBackground,plotBGImage,plotBorder,seriesGroup,clipRect,credits,pointer,scroller,rangeSelector,legend,resetZoomButton,tooltip,renderer".split(","),function(b){var c=a[b];c&&c.destroy&&(a[b]=c.destroy())});if(d)d.innerHTML="",Y(d),f&&Ra(d);for(e in a)delete a[e]},isReadyToRender:function(){var a=this;return!ba&&H==H.top&&A.readyState!=="complete"||ea&&!H.canvg?(ea?Lb.push(function(){a.firstRender()},a.options.global.canvasToolsURL):A.attachEvent("onreadystatechange", -function(){A.detachEvent("onreadystatechange",a.firstRender);A.readyState==="complete"&&a.firstRender()}),!1):!0},firstRender:function(){var a=this,b=a.options,c=a.callback;if(a.isReadyToRender()){a.getContainer();M(a,"init");a.resetMargins();a.setChartSize();a.propFromSeries();a.getAxes();m(b.series||[],function(b){a.initSeries(b)});a.linkSeries();M(a,"beforeRender");if(w.Pointer)a.pointer=new Va(a,b);a.render();a.renderer.draw();c&&c.apply(a,[a]);m(a.callbacks,function(b){a.index!==u&&b.apply(a, -[a])});M(a,"load");a.cloneRenderTo(!0)}},splashArray:function(a,b){var c=b[a],c=ca(c)?c:[c,c,c,c];return[p(b[a+"Top"],c[0]),p(b[a+"Right"],c[1]),p(b[a+"Bottom"],c[2]),p(b[a+"Left"],c[3])]}};var Xb=w.CenteredSeriesMixin={getCenter:function(){var a=this.options,b=this.chart,c=2*(a.slicedOffset||0),d=b.plotWidth-2*c,b=b.plotHeight-2*c,e=a.center,e=[p(e[0],"50%"),p(e[1],"50%"),a.size||"100%",a.innerSize||0],f=I(d,b),g,h,i;for(h=0;h<4;++h)i=e[h],g=/%$/.test(i),a=h<2||h===2&&g,e[h]=(g?[d,b,f,e[2]][h]*B(i)/ -100:B(i))+(a?c:0);return e}},Ga=function(){};Ga.prototype={init:function(a,b,c){this.series=a;this.color=a.color;this.applyOptions(b,c);this.pointAttr={};if(a.options.colorByPoint&&(b=a.options.colors||a.chart.options.colors,this.color=this.color||b[a.colorCounter++],a.colorCounter===b.length))a.colorCounter=0;a.chart.pointCount++;return this},applyOptions:function(a,b){var c=this.series,d=c.options.pointValKey||c.pointValKey,a=Ga.prototype.optionsToObject.call(this,a);r(this,a);this.options=this.options? -r(this.options,a):a;if(d)this.y=this[d];if(this.x===u&&c)this.x=b===u?c.autoIncrement():b;return this},optionsToObject:function(a){var b={},c=this.series,d=c.options.keys,e=d||c.pointArrayMap||["y"],f=e.length,g=0,h=0;if(typeof a==="number"||a===null)b[e[0]]=a;else if(Ha(a)){if(!d&&a.length>f){c=typeof a[0];if(c==="string")b.name=a[0];else if(c==="number")b.x=a[0];g++}for(;ha+1&&b.push(d.slice(a+1,g)),a=g):g===e-1&&b.push(d.slice(a+1,g+1))});this.segments=b},setOptions:function(a){var b=this.chart,c=b.options.plotOptions,b=b.userOptions||{},d=b.plotOptions||{},e=c[this.type];this.userOptions=a;c=z(e,c.series,a);this.tooltipOptions=z(P.tooltip,P.plotOptions[this.type].tooltip,b.tooltip,d.series&&d.series.tooltip,d[this.type]&&d[this.type].tooltip,a.tooltip);e.marker===null&&delete c.marker; -this.zoneAxis=c.zoneAxis;a=this.zones=(c.zones||[]).slice();if((c.negativeColor||c.negativeFillColor)&&!c.zones)a.push({value:c[this.zoneAxis+"Threshold"]||c.threshold||0,color:c.negativeColor,fillColor:c.negativeFillColor});a.length&&s(a[a.length-1].value)&&a.push({color:this.color,fillColor:this.fillColor});return c},getCyclic:function(a,b,c){var d=this.userOptions,e="_"+a+"Index",f=a+"Counter";b||(s(d[e])?b=d[e]:(d[e]=b=this.chart[f]%c.length,this.chart[f]+=1),b=c[b]);this[a]=b},getColor:function(){this.options.colorByPoint|| -this.getCyclic("color",this.options.color||aa[this.type].color,this.chart.options.colors)},getSymbol:function(){var a=this.options.marker;this.getCyclic("symbol",a.symbol,this.chart.options.symbols);if(/^url/.test(this.symbol))a.radius=0},drawLegendSymbol:Na.drawLineMarker,setData:function(a,b,c,d){var e=this,f=e.points,g=f&&f.length||0,h,i=e.options,j=e.chart,k=null,l=e.xAxis,n=l&&!!l.categories,o=i.turboThreshold,q=this.xData,y=this.yData,s=(h=e.pointArrayMap)&&h.length,a=a||[];h=a.length;b=p(b, -!0);if(d!==!1&&h&&g===h&&!e.cropped&&!e.hasGroupedData&&e.visible)m(a,function(a,b){f[b].update(a,!1,null,!1)});else{e.xIncrement=null;e.pointRange=n?1:i.pointRange;e.colorCounter=0;m(this.parallelArrays,function(a){e[a+"Data"].length=0});if(o&&h>o){for(c=0;k===null&&ci||this.forceCrop))if(b[d-1]n)b=[],c=[];else if(b[0]n)e=this.cropData(this.xData,this.yData,l,n),b=e.xData,c=e.yData,e=e.start,f=!0;for(i=b.length-1;i>=0;i--)d=b[i]-b[i-1],d>0&&(g===u||d=c){f=t(0,i-h);break}for(;id){g=i+h;break}return{xData:a.slice(f,g),yData:b.slice(f,g),start:f,end:g}},generatePoints:function(){var a=this.options.data,b=this.data,c,d=this.processedXData,e=this.processedYData,f=this.pointClass,g=d.length,h=this.cropStart||0,i,j=this.hasGroupedData,k,l=[],n;if(!b&&!j)b=[],b.length=a.length,b=this.data=b;for(n=0;n0),j=this.getExtremesFromAll||this.cropped||(c[l+1]||j)>=g&&(c[l-1]||j)<=h,i&&j)if(i=k.length)for(;i--;)k[i]!==null&&(e[f++]=k[i]);else e[f++]=k;this.dataMin=Pa(e);this.dataMax=Fa(e)},translate:function(){this.processedXData||this.processData();this.generatePoints();for(var a=this.options,b=a.stacking,c=this.xAxis,d=c.categories,e=this.yAxis,f=this.points,g=f.length,h=!!this.modifyValue,i=a.pointPlacement,j=i==="between"||qa(i),k=a.threshold,l,n,o,q=Number.MAX_VALUE,a=0;a=0&&n<=e.len&&l>=0&&l<=c.len;m.clientX=j?c.translate(r,0,0,0,1):l;m.negative=m.y<(k||0);m.category=d&&d[m.x]!==u?d[m.x]:m.x;a&&(q=I(q,O(l-o)));o=l}this.closestPointRangePx=q;this.getSegments()},setClip:function(a){var b=this.chart,c=b.renderer,d=b.inverted,e=this.clipBox,f=e||b.clipBox,g=this.sharedClipKey||["_sharedClip",a&&a.duration,a&&a.easing,f.height].join(","),h=b[g],i=b[g+"m"];if(!h){if(a)f.width= -0,b[g+"m"]=i=c.clipRect(-99,d?-b.plotLeft:-b.plotTop,99,d?b.chartWidth:b.chartHeight);b[g]=h=c.clipRect(f)}a&&(h.count+=1);if(this.options.clip!==!1)this.group.clip(a||e?h:b.clipRect),this.markerGroup.clip(i),this.sharedClipKey=g;a||(h.count-=1,h.count<=0&&g&&b[g]&&(e||(b[g]=b[g].destroy()),b[g+"m"]&&(b[g+"m"]=b[g+"m"].destroy())))},animate:function(a){var b=this.chart,c=this.options.animation,d;if(c&&!ca(c))c=aa[this.type].animation;a?this.setClip(c):(d=this.sharedClipKey,(a=b[d])&&a.animate({width:b.plotSizeX}, -c),b[d+"m"]&&b[d+"m"].animate({width:b.plotSizeX+99},c),this.animate=null)},afterAnimate:function(){this.setClip();M(this,"afterAnimate")},drawPoints:function(){var a,b=this.points,c=this.chart,d,e,f,g,h,i,j,k,l=this.options.marker,n=this.pointAttr[""],o,q,m,s=this.markerGroup,t=p(l.enabled,this.xAxis.isRadial,this.closestPointRangePx>2*l.radius);if(l.enabled!==!1||this._hasPointMarkers)for(f=b.length;f--;)if(g=b[f],d=U(g.plotX),e=g.plotY,k=g.graphic,o=g.marker||{},q=!!g.marker,a=t&&o.enabled===u|| -o.enabled,m=g.isInside,a&&e!==u&&!isNaN(e)&&g.y!==null)if(a=g.pointAttr[g.selected?"select":""]||n,h=a.r,i=p(o.symbol,this.symbol),j=i.indexOf("url")===0,k)k[m?"show":"hide"](!0).animate(r({x:d-h,y:e-h},k.symbolName?{width:2*h,height:2*h}:{}));else{if(m&&(h>0||j))g.graphic=c.renderer.symbol(i,d-h,e-h,2*h,2*h,q?o:l).attr(a).add(s)}else if(k)g.graphic=k.destroy()},convertAttribs:function(a,b,c,d){var e=this.pointAttrToOptions,f,g,h={},a=a||{},b=b||{},c=c||{},d=d||{};for(f in e)g=e[f],h[f]=p(a[g],b[f], -c[f],d[f]);return h},getAttribs:function(){var a=this,b=a.options,c=aa[a.type].marker?b.marker:b,d=c.states,e=d.hover,f,g=a.color,h=a.options.negativeColor;f={stroke:g,fill:g};var i=a.points||[],j,k=[],l,n=a.pointAttrToOptions;l=a.hasPointSpecificOptions;var o=c.lineColor,q=c.fillColor;j=b.turboThreshold;var p=a.zones,t=a.zoneAxis||"y",C;b.marker?(e.radius=e.radius||c.radius+e.radiusPlus,e.lineWidth=e.lineWidth||c.lineWidth+e.lineWidthPlus):(e.color=e.color||na(e.color||g).brighten(e.brightness).get(), -e.negativeColor=e.negativeColor||na(e.negativeColor||h).brighten(e.brightness).get());k[""]=a.convertAttribs(c,f);m(["hover","select"],function(b){k[b]=a.convertAttribs(d[b],k[""])});a.pointAttr=k;g=i.length;if(!j||g=f.value;)f=p[++l];j.color=j.fillColor=f.color}l=b.colorByPoint||j.color;if(j.options)for(C in n)s(c[n[C]])&&(l=!0);if(l){c=c||{};l=[];d=c.states||{};f=d.hover= -d.hover||{};if(!b.marker)f.color=f.color||!j.options.color&&e[j.negative&&h?"negativeColor":"color"]||na(j.color).brighten(f.brightness||e.brightness).get();f={color:j.color};if(!q)f.fillColor=j.color;if(!o)f.lineColor=j.color;c.hasOwnProperty("color")&&!c.color&&delete c.color;l[""]=a.convertAttribs(r(f,c),k[""]);l.hover=a.convertAttribs(d.hover,k.hover,l[""]);l.select=a.convertAttribs(d.select,k.select,l[""])}else l=k;j.pointAttr=l}},destroy:function(){var a=this,b=a.chart,c=/AppleWebKit\/533/.test(Ba), -d,e=a.data||[],f,g,h;M(a,"destroy");Y(a);m(a.axisTypes||[],function(b){if(h=a[b])ia(h.series,a),h.isDirty=h.forceRedraw=!0});a.legendItem&&a.chart.legend.destroyItem(a);for(d=e.length;d--;)(f=e[d])&&f.destroy&&f.destroy();a.points=null;clearTimeout(a.animationTimeout);for(g in a)a[g]instanceof K&&!a[g].survive&&(d=c&&g==="group"?"hide":"destroy",a[g][d]());if(b.hoverSeries===a)b.hoverSeries=null;ia(b.series,a);for(g in a)delete a[g]},getSegmentPath:function(a){var b=this,c=[],d=b.options.step;m(a, -function(e,f){var g=e.plotX,h=e.plotY,i;b.getPointSpline?c.push.apply(c,b.getPointSpline(a,e,f)):(c.push(f?"L":"M"),d&&f&&(i=a[f-1],d==="right"?c.push(i.plotX,h):d==="center"?c.push((i.plotX+g)/2,i.plotY,(i.plotX+g)/2,h):c.push(g,i.plotY)),c.push(e.plotX,e.plotY))});return c},getGraphPath:function(){var a=this,b=[],c,d=[];m(a.segments,function(e){c=a.getSegmentPath(e);e.length>1?b=b.concat(c):d.push(e[0])});a.singlePoints=d;return a.graphPath=b},drawGraph:function(){var a=this,b=this.options,c=[["graph", -b.lineColor||this.color,b.dashStyle]],d=b.lineWidth,e=b.linecap!=="square",f=this.getGraphPath(),g=this.fillGraph&&this.color||R;m(this.zones,function(d,e){c.push(["zoneGraph"+e,d.color||a.color,d.dashStyle||b.dashStyle])});m(c,function(c,i){var j=c[0],k=a[j];if(k)db(k),k.animate({d:f});else if((d||g)&&f.length)k={stroke:c[1],"stroke-width":d,fill:g,zIndex:1},c[2]?k.dashstyle=c[2]:e&&(k["stroke-linecap"]=k["stroke-linejoin"]="round"),a[j]=a.chart.renderer.path(f).attr(k).add(a.group).shadow(i<2&& -b.shadow)})},applyZones:function(){var a=this,b=this.chart,c=b.renderer,d=this.zones,e,f,g=this.clips||[],h,i=this.graph,j=this.area,k=t(b.chartWidth,b.chartHeight),l=this[(this.zoneAxis||"y")+"Axis"],n=l.reversed,o=l.horiz,q=!1;if(d.length&&(i||j))i&&i.hide(),j&&j.hide(),m(d,function(d,m){e=p(f,n?o?b.plotWidth:0:o?0:l.toPixels(l.min));f=x(l.toPixels(p(d.value,l.max),!0));e=l.isXAxis?e>f?f:e:el.max}),this.clips=g},invertGroups:function(){function a(){var a={width:b.yAxis.len,height:b.xAxis.len};m(["group","markerGroup"],function(c){b[c]&&b[c].attr(a).invert()})} -var b=this,c=b.chart;if(b.xAxis)N(c,"resize",a),N(b,"destroy",function(){Y(c,"resize",a)}),a(),b.invertGroups=a},plotGroup:function(a,b,c,d,e){var f=this[a],g=!f;g&&(this[a]=f=this.chart.renderer.g(b).attr({visibility:c,zIndex:d||0.1}).add(e));f[g?"attr":"animate"](this.getPlotBox());return f},getPlotBox:function(){var a=this.chart,b=this.xAxis,c=this.yAxis;if(a.inverted)b=c,c=this.xAxis;return{translateX:b?b.left:a.plotLeft,translateY:c?c.top:a.plotTop,scaleX:1,scaleY:1}},render:function(){var a= -this,b=a.chart,c,d=a.options,e=(c=d.animation)&&!!a.animate&&b.renderer.isSVG&&p(c.duration,500)||0,f=a.visible?"visible":"hidden",g=d.zIndex,h=a.hasRendered,i=b.seriesGroup;c=a.plotGroup("group","series",f,g,i);a.markerGroup=a.plotGroup("markerGroup","markers",f,g,i);e&&a.animate(!0);a.getAttribs();c.inverted=a.isCartesian?b.inverted:!1;a.drawGraph&&(a.drawGraph(),a.applyZones());m(a.points,function(a){a.redraw&&a.redraw()});a.drawDataLabels&&a.drawDataLabels();a.visible&&a.drawPoints();a.drawTracker&& -a.options.enableMouseTracking!==!1&&a.drawTracker();b.inverted&&a.invertGroups();d.clip!==!1&&!a.sharedClipKey&&!h&&c.clip(b.clipRect);e&&a.animate();if(!h)e?a.animationTimeout=setTimeout(function(){a.afterAnimate()},e):a.afterAnimate();a.isDirty=a.isDirtyData=!1;a.hasRendered=!0},redraw:function(){var a=this.chart,b=this.isDirtyData,c=this.isDirty,d=this.group,e=this.xAxis,f=this.yAxis;d&&(a.inverted&&d.attr({width:a.plotWidth,height:a.plotHeight}),d.animate({translateX:p(e&&e.left,a.plotLeft),translateY:p(f&& -f.top,a.plotTop)}));this.translate();this.render();b&&M(this,"updatedData");(c||b)&&delete this.kdTree},kdDimensions:1,kdTree:null,kdAxisArray:["clientX","plotY"],kdComparer:"distX",searchPoint:function(a){var b=this.xAxis,c=this.yAxis,d=this.chart.inverted;return this.searchKDTree({clientX:d?b.len-a.chartY+b.pos:a.chartX-b.pos,plotY:d?c.len-a.chartX+c.pos:a.chartY-c.pos})},buildKDTree:function(){function a(b,d,g){var h,i;if(i=b&&b.length)return h=c.kdAxisArray[d%g],b.sort(function(a,b){return a[h]- -b[h]}),i=Math.floor(i/2),{point:b[i],left:a(b.slice(0,i),d+1,g),right:a(b.slice(i+1),d+1,g)}}function b(){var b=kb(c.points,function(a){return a.y!==null});c.kdTree=a(b,d,d)}var c=this,d=c.kdDimensions;delete c.kdTree;c.options.kdSync?b():setTimeout(b)},searchKDTree:function(a){function b(a,h,i,j){var k=h.point,l=c.kdAxisArray[i%j],n,o=k;n=s(a[e])&&s(k[e])?Math.pow(a[e]-k[e],2):null;var m=s(a[f])&&s(k[f])?Math.pow(a[f]-k[f],2):null,p=(n||0)+(m||0);n={distX:s(n)?Math.sqrt(n):Number.MAX_VALUE,distY:s(m)? -Math.sqrt(m):Number.MAX_VALUE,distR:s(p)?Math.sqrt(p):Number.MAX_VALUE};k.dist=n;l=a[l]-k[l];n=l<0?"left":"right";h[n]&&(n=b(a,h[n],i+1,j),o=n.dist[d]n;)d--;e.updateParallelArrays(i,"splice",d,0,0);e.updateParallelArrays(i,d);if(k&&i.name)k[n]=i.name;h.splice(d,0,a);o&&(e.data.splice(d,0,null),e.processData());f.legendType==="point"&&e.generatePoints();c&&(g[0]&&g[0].remove?g[0].remove(!1):(g.shift(),e.updateParallelArrays(i,"shift"),h.shift()));e.isDirty=!0;e.isDirtyData=!0;b&&(e.getAttribs(),j.redraw())},removePoint:function(a, -b,c){var d=this,e=d.data,f=e[a],g=d.points,h=d.chart,i=function(){e.length===g.length&&g.splice(a,1);e.splice(a,1);d.options.data.splice(a,1);d.updateParallelArrays(f||{series:d},"splice",a,1);f&&f.destroy();d.isDirty=!0;d.isDirtyData=!0;b&&h.redraw()};Sa(c,h);b=p(b,!0);f?f.firePointEvent("remove",null,i):i()},remove:function(a,b){var c=this,d=c.chart,a=p(a,!0);if(!c.isRemoving)c.isRemoving=!0,M(c,"remove",null,function(){c.destroy();d.isDirtyLegend=d.isDirtyBox=!0;d.linkSeries();a&&d.redraw(b)}); -c.isRemoving=!1},update:function(a,b){var c=this,d=this.chart,e=this.userOptions,f=this.type,g=J[f].prototype,h=["group","markerGroup","dataLabelsGroup"],i;if(a.type&&a.type!==f||a.zIndex!==void 0)h.length=0;m(h,function(a){h[a]=c[a];delete c[a]});a=z(e,{animation:!1,index:this.index,pointStart:this.xData[0]},{data:this.options.data},a);this.remove(!1);for(i in g)this[i]=u;r(this,J[a.type||f].prototype);m(h,function(a){c[a]=h[a]});this.init(d,a);d.linkSeries();p(b,!0)&&d.redraw(!1)}});r(va.prototype, -{update:function(a,b){var c=this.chart,a=c.options[this.coll][this.options.index]=z(this.userOptions,a);this.destroy(!0);this._addedPlotLB=u;this.init(c,r(a,{events:u}));c.isDirtyBox=!0;p(b,!0)&&c.redraw()},remove:function(a){for(var b=this.chart,c=this.coll,d=this.series,e=d.length;e--;)d[e]&&d[e].remove(!1);ia(b.axes,this);ia(b[c],this);b.options[c].splice(this.options.index,1);m(b[c],function(a,b){a.options.index=b});this.destroy();b.isDirtyBox=!0;p(a,!0)&&b.redraw()},setTitle:function(a,b){this.update({title:a}, -b)},setCategories:function(a,b){this.update({categories:a},b)}});var xa=ja(Q);J.line=xa;aa.area=z(T,{threshold:0});var pa=ja(Q,{type:"area",getSegments:function(){var a=this,b=[],c=[],d=[],e=this.xAxis,f=this.yAxis,g=f.stacks[this.stackKey],h={},i,j,k=this.points,l=this.options.connectNulls,n,o;if(this.options.stacking&&!this.cropped){for(n=0;n=0;d--)g=p(a[d].yBottom,f),da&&i>e? -(i=t(a,e),k=2*e-i):ig&&k>e?(k=t(g,e),i=2*e-k):kg?d-g:f-(w?g:0)));c.barX=m;c.pointWidth=i;c.tooltipPos=b.inverted?[e.len+e.pos-b.plotLeft-h,a.xAxis.len-m-s/2]:[m+s/2, -h+e.pos-b.plotTop];s=x(m+s)+l;m=x(m)+l;s-=m;d=O(r)<0.5;u=I(x(r+u)+n,9E4);r=x(r)+n;u-=r;d&&(r-=1,u+=1);c.shapeType="rect";c.shapeArgs={x:m,y:r,width:s,height:u}})},getSymbol:ma,drawLegendSymbol:Na.drawRectangle,drawGraph:ma,drawPoints:function(){var a=this,b=this.chart,c=a.options,d=b.renderer,e=c.animationLimit||250,f,g;m(a.points,function(h){var i=h.plotY,j=h.graphic;if(i!==u&&!isNaN(i)&&h.y!==null)f=h.shapeArgs,i=s(a.borderWidth)?{"stroke-width":a.borderWidth}:{},g=h.pointAttr[h.selected?"select": -""]||a.pointAttr[""],j?(db(j),j.attr(i)[b.pointCount\u25CF {series.name}
',pointFormat:"x: {point.x}
y: {point.y}
"}}); -pa=ja(Q,{type:"scatter",sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1,kdDimensions:2,kdComparer:"distR",drawGraph:function(){this.options.lineWidth&&Q.prototype.drawGraph.call(this)}});J.scatter=pa;aa.pie=z(T,{borderColor:"#FFFFFF",borderWidth:1,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{distance:30,enabled:!0,formatter:function(){return this.point.name},x:0},ignoreHiddenPoint:!0,legendType:"point",marker:null, -size:null,showInLegend:!1,slicedOffset:10,states:{hover:{brightness:0.1,shadow:!1}},stickyTracking:!1,tooltip:{followPointer:!0}});T={type:"pie",isCartesian:!1,pointClass:ja(Ga,{init:function(){Ga.prototype.init.apply(this,arguments);var a=this,b;r(a,{visible:a.visible!==!1,name:p(a.name,"Slice")});b=function(b){a.slice(b.type==="select")};N(a,"select",b);N(a,"unselect",b);return a},setVisible:function(a,b){var c=this,d=c.series,e=d.chart,f=!d.isDirty&&d.options.ignoreHiddenPoint;if(a!==c.visible|| -b)if(c.visible=c.options.visible=a=a===u?!c.visible:a,d.options.data[Ma(c,d.data)]=c.options,m(["graphic","dataLabel","connector","shadowGroup"],function(b){if(c[b])c[b][a?"show":"hide"](!0)}),c.legendItem&&(e.hasRendered&&(d.updateTotals(),e.legend.clearItems(),f||e.legend.render()),e.legend.colorizeItem(c,a)),f)d.isDirty=!0,e.redraw()},slice:function(a,b,c){var d=this.series;Sa(c,d.chart);p(b,!0);this.sliced=this.options.sliced=a=s(a)?a:!this.sliced;d.options.data[Ma(this,d.data)]=this.options; -a=a?this.slicedTranslation:{translateX:0,translateY:0};this.graphic.animate(a);this.shadowGroup&&this.shadowGroup.animate(a)},haloPath:function(a){var b=this.shapeArgs,c=this.series.chart;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(c.plotLeft+b.x,c.plotTop+b.y,b.r+a,b.r+a,{innerR:this.shapeArgs.r,start:b.start,end:b.end})}}),requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],axisTypes:[],pointAttrToOptions:{stroke:"borderColor","stroke-width":"borderWidth", -fill:"color"},getColor:ma,animate:function(a){var b=this,c=b.points,d=b.startAngleRad;if(!a)m(c,function(a){var c=a.graphic,g=a.shapeArgs;c&&(c.attr({r:a.startR||b.center[3]/2,start:d,end:d}),c.animate({r:g.r,start:g.start,end:g.end},b.options.animation))}),b.animate=null},setData:function(a,b,c,d){Q.prototype.setData.call(this,a,!1,c,d);this.processData();this.generatePoints();p(b,!0)&&this.chart.redraw(c)},updateTotals:function(){var a,b=0,c,d,e,f=this.options.ignoreHiddenPoint;c=this.points;d= -c.length;for(a=0;a0&&(e.visible||!f)?e.y/b*100:0,e.total=b},generatePoints:function(){Q.prototype.generatePoints.call(this);this.updateTotals()},translate:function(a){this.generatePoints();var b=0,c=this.options,d=c.slicedOffset,e=d+c.borderWidth,f,g,h,i=c.startAngle||0,j=this.startAngleRad=la/180*(i-90),i=(this.endAngleRad=la/180*(p(c.endAngle,i+360)-90))-j,k=this.points,l=c.dataLabels.distance, -c=c.ignoreHiddenPoint,n,m=k.length,q;if(!a)this.center=a=this.getCenter();this.getX=function(b,c){h=V.asin(I((b-a[1])/(a[2]/2+l),1));return a[0]+(c?-1:1)*W(h)*(a[2]/2+l)};for(n=0;n1.5*la?h-=2*la:h<-la/2&&(h+=2*la);q.slicedTranslation={translateX:x(W(h)*d),translateY:x($(h)*d)};f=W(h)*a[2]/2;g=$(h)*a[2]/2;q.tooltipPos= -[a[0]+f*0.7,a[1]+g*0.7];q.half=h<-la/2||h>la/2?1:0;q.angle=h;e=I(e,l/2);q.labelPos=[a[0]+f+W(h)*l,a[1]+g+$(h)*l,a[0]+f+W(h)*e,a[1]+g+$(h)*e,a[0]+f,a[1]+g,l<0?"center":q.half?"right":"left",h]}},drawGraph:null,drawPoints:function(){var a=this,b=a.chart.renderer,c,d,e=a.options.shadow,f,g;if(e&&!a.shadowGroup)a.shadowGroup=b.g("shadow").add(a.group);m(a.points,function(h){var i=h.options.visible;d=h.graphic;g=h.shapeArgs;f=h.shadowGroup;if(e&&!f)f=h.shadowGroup=b.g("shadow").add(a.shadowGroup);c=h.sliced? -h.slicedTranslation:{translateX:0,translateY:0};f&&f.attr(c);d?d.animate(r(g,c)):h.graphic=d=b[h.shapeType](g).setRadialReference(a.center).attr(h.pointAttr[h.selected?"select":""]).attr({"stroke-linejoin":"round"}).attr(c).add(a.group).shadow(e,f);i!==void 0&&h.setVisible(i,!0)})},searchPoint:ma,sortByAngle:function(a,b){a.sort(function(a,d){return a.angle!==void 0&&(d.angle-a.angle)*b})},drawLegendSymbol:Na.drawRectangle,getCenter:Xb.getCenter,getSymbol:ma};T=ja(Q,T);J.pie=T;Q.prototype.drawDataLabels= -function(){var a=this,b=a.options,c=b.cursor,d=b.dataLabels,e=a.points,f,g,h=a.hasRendered||0,i,j,k=a.chart.renderer;if(d.enabled||a._hasPointLabels)a.dlProcessOptions&&a.dlProcessOptions(d),j=a.plotGroup("dataLabelsGroup","data-labels",d.defer?"hidden":"visible",d.zIndex||6),p(d.defer,!0)&&(j.attr({opacity:+h}),h||N(a,"afterAnimate",function(){a.visible&&j.show();j[b.animation?"animate":"attr"]({opacity:1},{duration:200})})),g=d,m(e,function(e){var h,m=e.dataLabel,q,t,x=e.connector,w=!0,v,A={};f= -e.dlOptions||e.options&&e.options.dataLabels;h=p(f&&f.enabled,g.enabled);if(m&&!h)e.dataLabel=m.destroy();else if(h){d=z(g,f);v=d.style;h=d.rotation;q=e.getLabelConfig();i=d.format?Ja(d.format,q):d.formatter.call(q,d);v.color=p(d.color,v.color,a.color,"black");if(m)if(s(i))m.attr({text:i}),w=!1;else{if(e.dataLabel=m=m.destroy(),x)e.connector=x.destroy()}else if(s(i)){m={fill:d.backgroundColor,stroke:d.borderColor,"stroke-width":d.borderWidth,r:d.borderRadius||0,rotation:h,padding:d.padding,zIndex:1}; -if(v.color==="contrast")A.color=d.inside||d.distance<0||b.stacking?k.getContrast(e.color||a.color):"#000000";if(c)A.cursor=c;for(t in m)m[t]===u&&delete m[t];m=e.dataLabel=k[h?"text":"label"](i,0,-999,d.shape,null,null,d.useHTML).attr(m).css(r(v,A)).add(j).shadow(d.shadow)}m&&a.alignDataLabel(e,m,d,null,w)}})};Q.prototype.alignDataLabel=function(a,b,c,d,e){var f=this.chart,g=f.inverted,h=p(a.plotX,-999),i=p(a.plotY,-999),j=b.getBBox(),k=f.renderer.fontMetrics(c.style.fontSize).b,l=this.visible&&(a.series.forceDL|| -f.isInsidePlot(h,x(i),g)||d&&f.isInsidePlot(h,g?d.x+1:d.y+d.height-1,g));if(l)d=r({x:g?f.plotWidth-i:h,y:x(g?f.plotHeight-h:i),width:0,height:0},d),r(c,{width:j.width,height:j.height}),c.rotation?(a=f.renderer.rotCorr(k,c.rotation),b[e?"attr":"animate"]({x:d.x+c.x+d.width/2+a.x,y:d.y+c.y+d.height/2}).attr({align:c.align})):(b.align(c,null,d),g=b.alignAttr,p(c.overflow,"justify")==="justify"?this.justifyDataLabel(b,c,g,j,d,e):p(c.crop,!0)&&(l=f.isInsidePlot(g.x,g.y)&&f.isInsidePlot(g.x+j.width,g.y+ -j.height)),c.shape&&b.attr({anchorX:a.plotX,anchorY:a.plotY}));if(!l)b.attr({y:-999}),b.placed=!1};Q.prototype.justifyDataLabel=function(a,b,c,d,e,f){var g=this.chart,h=b.align,i=b.verticalAlign,j,k,l=a.box?0:a.padding||0;j=c.x+l;if(j<0)h==="right"?b.align="left":b.x=-j,k=!0;j=c.x+d.width-l;if(j>g.plotWidth)h==="left"?b.align="right":b.x=g.plotWidth-j,k=!0;j=c.y+l;if(j<0)i==="bottom"?b.verticalAlign="top":b.y=-j,k=!0;j=c.y+d.height-l;if(j>g.plotHeight)i==="top"?b.verticalAlign="bottom":b.y=g.plotHeight- -j,k=!0;if(k)a.placed=!f,a.align(b,null,e)};if(J.pie)J.pie.prototype.drawDataLabels=function(){var a=this,b=a.data,c,d=a.chart,e=a.options.dataLabels,f=p(e.connectorPadding,10),g=p(e.connectorWidth,1),h=d.plotWidth,i=d.plotHeight,j,k,l=p(e.softConnector,!0),n=e.distance,o=a.center,q=o[2]/2,r=o[1],s=n>0,u,v,w,z=[[],[]],A,B,D,G,E,F=[0,0,0,0],M=function(a,b){return b.y-a.y};if(a.visible&&(e.enabled||a._hasPointLabels)){Q.prototype.drawDataLabels.apply(a);m(b,function(a){a.dataLabel&&a.visible&&z[a.half].push(a)}); -for(G=2;G--;){var J=[],N=[],H=z[G],L=H.length,K;if(L){a.sortByAngle(H,G-0.5);for(E=b=0;!b&&H[E];)b=H[E]&&H[E].dataLabel&&(H[E].dataLabel.getBBox().height||21),E++;if(n>0){v=I(r+q+n,d.plotHeight);for(E=t(0,r-q-n);E<=v;E+=b)J.push(E);v=J.length;if(L>v){c=[].concat(H);c.sort(M);for(E=L;E--;)c[E].rank=E;for(E=L;E--;)H[E].rank>=v&&H.splice(E,1);L=H.length}for(E=0;E0){if(v=N.pop(),K=v.i,B=v.y,c>B&&J[K+1]!==null||ch-f&&(F[1]=t(x(A+v-h+f),F[1])),B-b/2<0?F[0]=t(x(-B+b/2),F[0]):B+b/2>i&&(F[2]=t(x(B+b/2-i),F[2]))}}}if(Fa(F)===0||this.verifyDataLabelOverflow(F))this.placeDataLabels(),s&&g&&m(this.points,function(b){j=b.connector;w=b.labelPos;if((u=b.dataLabel)&&u._pos)D=u._attr.visibility,A=u.connX,B=u.connY,k=l?["M",A+(w[6]==="left"?5:-5),B,"C",A,B,2*w[2]-w[4],2*w[3]-w[5],w[2],w[3],"L",w[4],w[5]]:["M",A+(w[6]==="left"?5:-5),B,"L",w[2],w[3],"L",w[4],w[5]],j?(j.animate({d:k}),j.attr("visibility",D)): -b.connector=j=a.chart.renderer.path(k).attr({"stroke-width":g,stroke:e.connectorColor||b.color||"#606060",visibility:D}).add(a.dataLabelsGroup);else if(j)b.connector=j.destroy()})}},J.pie.prototype.placeDataLabels=function(){m(this.points,function(a){var a=a.dataLabel,b;if(a)(b=a._pos)?(a.attr(a._attr),a[a.moved?"animate":"attr"](b),a.moved=!0):a&&a.attr({y:-999})})},J.pie.prototype.alignDataLabel=ma,J.pie.prototype.verifyDataLabelOverflow=function(a){var b=this.center,c=this.options,d=c.center,e= -c=c.minSize||80,f;d[0]!==null?e=t(b[2]-t(a[1],a[3]),c):(e=t(b[2]-a[1]-a[3],c),b[0]+=(a[3]-a[1])/2);d[1]!==null?e=t(I(e,b[2]-t(a[0],a[2])),c):(e=t(I(e,b[2]-a[0]-a[2]),c),b[1]+=(a[0]-a[2])/2);ep(this.translatedThreshold, -g.yAxis.len),j=p(c.inside,!!this.options.stacking);if(h&&(d=z(h),f&&(d={x:g.yAxis.len-d.y-d.height,y:g.xAxis.len-d.x-d.width,width:d.height,height:d.width}),!j))f?(d.x+=i?0:d.width,d.width=0):(d.y+=i?d.height:0,d.height=0);c.align=p(c.align,!f||j?"center":i?"right":"left");c.verticalAlign=p(c.verticalAlign,f||j?"middle":i?"top":"bottom");Q.prototype.alignDataLabel.call(this,a,b,c,d,e)};(function(a){var b=a.Chart,c=a.each,d=HighchartsAdapter.addEvent;b.prototype.callbacks.push(function(a){function b(){var d= -[];c(a.series,function(a){var b=a.options.dataLabels;(b.enabled||a._hasPointLabels)&&!b.allowOverlap&&a.visible&&c(a.points,function(a){if(a.dataLabel)a.dataLabel.labelrank=a.labelrank,d.push(a.dataLabel)})});a.hideOverlappingLabels(d)}b();d(a,"redraw",b)});b.prototype.hideOverlappingLabels=function(a){var b=a.length,c,d,i,j;for(d=0;di.alignAttr.x+i.width||j.alignAttr.x+j.widthi.alignAttr.y+i.height||j.alignAttr.y+j.heightd;if(h.series.length&&(i||l>I(k.dataMin,k.min))&&(!i||j").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
"+""+"
",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
t
",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; -f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
","
"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() -{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/main/resources/templates/moduleResult.vm b/cases/ContractsAutoTests/src/main/resources/templates/moduleResult.vm deleted file mode 100644 index 9baeb7b067..0000000000 --- a/cases/ContractsAutoTests/src/main/resources/templates/moduleResult.vm +++ /dev/null @@ -1,155 +0,0 @@ - - - - - 自动化运行结果 - - - -
-

模块执行结果

-
-

概要信息

-
- - - - - - - - - - - - - - - - - -
模块名脚本负责人运行用例数成功用例数失败用例数成功率
$moduleInfo.moduleShowName$!moduleInfo.moduleAuthor$!moduleInfo.moduleCaseNum$!moduleInfo.passCaseNum$!moduleInfo.failCaseNum - #if($!moduleInfo.passPercent>=100) - 100% - #else - $!moduleInfo.passPercent% - #end -
- - - - -
- 备注: 未运行的case会被标记为执行失败! -
- -

用例信息

- - - - - - - - - - - - - - - - - - #foreach ($caseInfo in $moduleInfo.caseInfoList) - - - - - - - - - #end -
用例名用例描述开始时间结束时间运行耗时执行结果
- #if($caseInfo.caseResult=="PASS") - $caseInfo.caseName - #else - $caseInfo.caseName - #end - $caseInfo.caseDesc$!caseInfo.getCaseStartTimeStr()$!caseInfo.getCaseStopTimeStr()$!caseInfo.getCaseRunTimeStr()秒 - #if( $caseInfo.caseResult=="PASS") - Pass - #else - Fail - #end -
- - - \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/main/resources/templates/plan.vm b/cases/ContractsAutoTests/src/main/resources/templates/plan.vm deleted file mode 100644 index b4cc1f9740..0000000000 --- a/cases/ContractsAutoTests/src/main/resources/templates/plan.vm +++ /dev/null @@ -1,11 +0,0 @@ - - -#foreach ($!moduleInfo in $!suiteInfo.moduleInfoList) - -#foreach ($caseInfo in $moduleInfo.caseInfoList) - - -#end - -#end - \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/main/resources/templates/suiteResult.vm b/cases/ContractsAutoTests/src/main/resources/templates/suiteResult.vm deleted file mode 100644 index 65d6f3b4a9..0000000000 --- a/cases/ContractsAutoTests/src/main/resources/templates/suiteResult.vm +++ /dev/null @@ -1,448 +0,0 @@ - - - - - 自动化测试报告 - - - - - - -
- - - - - - -

自动化测试报告

- - - - - - -
- - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
报告概述
运行项目$!project
运行人$!runner
通过率 - - #if($!suiteInfo.passPercent >= 100) - 100% - #else - $!{suiteInfo.passPercent}% - #end - -
模块数$!suiteInfo.suiteModuleNum
总用例数$!suiteInfo.suiteCaseNum
成功用例数$!suiteInfo.passCaseNum
失败用例数$!suiteInfo.failCaseNum
开始时间$!suiteInfo.getSuiteStartTimeStr()
结束时间$!suiteInfo.getSuiteStopTimeStr()
运行耗时$!suiteInfo.getSuiteRunTimeStr()
-
- - -

 模块运行结果

 该表显示了所有模块执行的总体结果信息,要查看具体信息请点击链接查看.

- - - - - - - - - - - - - #foreach ($moduleInfo in $suiteInfo.moduleInfoList) - - - - - - - - - - #end - -
模块名字脚本负责人用例个数通过个数失败个数通过率
- - #if($!moduleInfo.moduleShowName != "") - $!moduleInfo.moduleShowName - #end - - #if($!moduleInfo.moduleShowName == "") - $!moduleInfo.moduleName - #end - - $!moduleInfo.moduleAuthor$!moduleInfo.moduleCaseNum$!moduleInfo.passCaseNum$!moduleInfo.failCaseNum$!{moduleInfo.passPercent}% - - - - #if($!moduleInfo.passCaseNum > 0) - - #end - #if($!moduleInfo.failCaseNum > 0) - - #end - - -
-
-
-
- - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/BaseTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/BaseTest.java deleted file mode 100644 index 10351d0fdf..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/BaseTest.java +++ /dev/null @@ -1,151 +0,0 @@ -package network.platon.test; - -import com.alaya.crypto.ECKeyPair; -import com.alaya.crypto.Keys; -import com.alibaba.fastjson.JSONObject; -import network.platon.autotest.junit.rules.AssertCollector; -import network.platon.autotest.junit.rules.DriverService; -import org.junit.Rule; - -import java.security.InvalidAlgorithmParameterException; -import java.security.NoSuchAlgorithmException; -import java.security.NoSuchProviderException; - -public class BaseTest { - - @Rule - public DriverService driverService = new DriverService(); - @Rule - public AssertCollector collector = new AssertCollector(); - - public long chainId; - - public static String getJsonString(Object object){ - return JSONObject.toJSONString(object); - } - -// public Credentials createCredentials(String privateKey){ -// Credentials credentials; -// if(this.getParam("secretType").equals("sm2")){ -// credentials = Credentials.createSm2(privateKey); -// }else { -// credentials = Credentials.create(privateKey); -// } -// return credentials; -// } -// -// public String getCredentialsAddress(Credentials credentials){ -// return credentials.getAddress(); -// } -// - public ECKeyPair generateEcKeyPair(){ - ECKeyPair ecKeyPair = null; - try { - ecKeyPair = Keys.createEcKeyPair(); - } catch (InvalidAlgorithmParameterException e) { - e.printStackTrace(); - } catch (NoSuchAlgorithmException e) { - e.printStackTrace(); - } catch (NoSuchProviderException e) { - e.printStackTrace(); - } - return ecKeyPair; - } -// -// public ECKeyPair generateEcKeyPair(byte[] privateKey){ -// ECKeyPair ecKeyPair; -// if(this.getParam("secretType").equals("sm2")){ -// ecKeyPair = ECKeyPair.createSm2(privateKey); -// }else { -// ecKeyPair = ECKeyPair.create(privateKey); -// } -// return ecKeyPair; -// } - -// public ECKeyPair generateEcKeyPair(String privateKey){ -// return this.generateEcKeyPair(Numeric.hexStringToByteArray(privateKey)); -// } -// -// public String generateNewWallet() { -// ECKeyPair ecKeyPair = this.generateEcKeyPair(); -// Credentials credentials = this.createCredentials(ecKeyPair.getPrivateKey().toString(16)); -// return getCredentialsAddress(credentials); -// } - - public String generatePrivateKey() { - ECKeyPair ecKeyPair = this.generateEcKeyPair(); - //私钥长度不足64位时需要补0 - String privateKey = ecKeyPair.getPrivateKey().toString(16); - int len = privateKey.length(); - for(int i=0;i<(64-len);i++){ - privateKey = "0" + privateKey; - } - return privateKey; - } -// -// public String generatePublicKeyFromPrivateKey(String privateKey){ -// ECKeyPair ecKeyPair = this.generateEcKeyPair(privateKey); -// String publicKey = Numeric.toHexStringWithPrefix(ecKeyPair.getPublicKey()); -// //公钥长度不足128位时需要补0 -//// int len = publicKey.length(); -//// for(int i=0;i<(128-len);i++){ -//// publicKey = "0" + publicKey; -//// } -// return publicKey; -// } -// -// public String generatePublicKey(){ -// ECKeyPair ecKeyPair = this.generateEcKeyPair(); -// String publicKey = ecKeyPair.getPublicKey().toString(16); -// //公钥长度不足128位时需要补0 -// int len = publicKey.length(); -// for(int i=0;i<(128-len);i++){ -// publicKey = "0" + publicKey; -// } -// return publicKey; -// } -// -// public void transfer(String transferToPrivateKey) throws Exception { -// Web3j web3j = Web3j.build(new HttpService(this.getParam("nodeUrl"))); -// Credentials credentials = this.createCredentials(this.getParam("privateKey")); -// collector.logStepPass("currentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); -// String transferFrom = getCredentialsAddress(this.createCredentials(driverService.param.get("privateKey"))); -// String transferTo = this.createCredentials(transferToPrivateKey).getAddress(); -// BigInteger transferFromInitialBalance = web3j.platonGetBalance(transferFrom, DefaultBlockParameterName.LATEST).send().getBalance(); -// -// if (transferFromInitialBalance.compareTo(new BigInteger("1000000000000000000")) < 0) { -// return; -// } -// -// BigInteger initialBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); -// -// TransactionReceipt transactionReceipt = new Transfer(web3j,new RawTransactionManager(web3j, credentials, chainId)).sendFunds(transferTo, new BigDecimal(1), Convert.Unit.LAT).send(); -// BigInteger endBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); -// -// if (endBalance.compareTo(initialBalance) == 0) { -// throw new RuntimeException("转账失败"); -// } -// -// System.out.println("txHash:" + transactionReceipt.getTransactionHash()); -// System.out.println("address:" + transferTo); -// -// } - - /** - * 获取链管理者私钥 - * - * @return - */ - public String getAdmin() { - return driverService.param.get("privateKey"); - } - - public String getParam(String name) { - return driverService.param.get(name); - } - - public int getIntParam(String name) { - return Integer.parseInt(getParam(name)); - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/datatypes/Xuint128.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/datatypes/Xuint128.java deleted file mode 100644 index 77b53de866..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/datatypes/Xuint128.java +++ /dev/null @@ -1,31 +0,0 @@ -package network.platon.test.datatypes; - -import com.alaya.rlp.wasm.datatypes.Uint128; -//import com.platon.rlp.datatypes.Uint128; - -import java.math.BigInteger; - -/** - * @author wuyang - */ -public class Xuint128 extends Uint128 { - - public Xuint128(String stringValue){ - super(new BigInteger(stringValue)); - } - - public Uint128 add(BigInteger bigInteger){ - return Uint128.of(this.getValue().add(bigInteger)); - } - - public Uint128 add(Uint128 uint128){ - return Uint128.of(this.getValue().add(uint128.getValue())); - } - - public static final Uint128 ZERO = Uint128.of(BigInteger.ZERO); - - public static final Uint128 ONE = Uint128.of(BigInteger.ONE); - - public static final Uint128 TEN = Uint128.of(BigInteger.TEN); - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/beforetest/BaseLibrary.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/beforetest/BaseLibrary.java deleted file mode 100644 index 8cda8dc6fb..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/beforetest/BaseLibrary.java +++ /dev/null @@ -1,83 +0,0 @@ -package network.platon.test.evm.beforetest; - -import com.alaya.crypto.Credentials; -import com.alaya.crypto.RawTransaction; -import com.alaya.crypto.TransactionEncoder; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.Web3jService; -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.PlatonGetTransactionCount; -import com.alaya.protocol.core.methods.response.PlatonSendTransaction; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import com.alaya.protocol.http.HttpService; -import com.alaya.tx.response.PollingTransactionReceiptProcessor; -import com.alaya.utils.Numeric; - -import java.io.IOException; -import java.math.BigInteger; - -public class BaseLibrary { - protected static final BigInteger GAS_LIMIT = BigInteger.valueOf(4700000); - protected static final BigInteger GAS_PRICE = BigInteger.valueOf(1000000000L); - - public static final int DEFAULT_POLLING_ATTEMPTS_PER_TX_HASH = 40; - public static final long DEFAULT_POLLING_FREQUENCY = 2 * 1000; - - private Credentials credentials; - private Web3j web3j; - private long chainId; - - public BaseLibrary(Credentials credentials, Web3j web3j, long chainId) { - this.credentials = credentials; - this.web3j = web3j; - this.chainId = chainId; - } - - public TransactionReceipt deploy(BigInteger gasPrice, BigInteger gasLimit, String data) throws Exception { - PlatonGetTransactionCount platonGetTransactionCount = web3j - .platonGetTransactionCount(credentials.getAddress(chainId), DefaultBlockParameterName.LATEST).send(); - BigInteger nonce = platonGetTransactionCount.getTransactionCount(); - - String to = ""; - BigInteger value = BigInteger.valueOf(0L); - RawTransaction rawTransaction = RawTransaction.createTransaction(nonce, gasPrice, gasLimit, to, value, data); - - byte[] signedMessage = TransactionEncoder.signMessage(rawTransaction, chainId, credentials); - String hexValue = Numeric.toHexString(signedMessage); - PlatonSendTransaction platonSendTransaction = web3j.platonSendRawTransaction(hexValue).send(); - - return processResponse(platonSendTransaction); - } - - private TransactionReceipt processResponse(PlatonSendTransaction transactionResponse) throws IOException, TransactionException { - if (transactionResponse.hasError()) { - throw new RuntimeException("Error processing transaction request: " + transactionResponse.getError().getMessage()); - } - - String transactionHash = transactionResponse.getTransactionHash(); - - return new PollingTransactionReceiptProcessor(web3j, DEFAULT_POLLING_FREQUENCY, DEFAULT_POLLING_ATTEMPTS_PER_TX_HASH) - .waitForTransactionReceipt(transactionHash); - } - - public static void main(String[] args) throws Exception { - long chainId = 100L; - String nodeUrl = "http://10.1.1.1:8801"; - String privateKey = "11e20dc277fafc4bc008521adda4b79c2a9e403131798c94eacb071005d43532"; - - Credentials credentials = Credentials.create(privateKey); - Web3jService web3jService = new HttpService(nodeUrl); - Web3j web3j = Web3j.build(web3jService); - - BaseLibrary baseLibrary = new BaseLibrary(credentials, web3j, chainId); - String data = "608060405234801561001057600080fd5b50610827806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80638f39654914610051578063d4d7306b14610112578063e4e50f7814610264578063e78855a814610343575b600080fd5b6100976004803603602081101561006757600080fd5b81019080803576ffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610477565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100d75780820151818401526020810190506100bc565b50505050905090810190601f1680156101045780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102626004803603604081101561012857600080fd5b810190808035906020019064010000000081111561014557600080fd5b82018360208201111561015757600080fd5b8035906020019184600183028401116401000000008311171561017957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803590602001906401000000008111156101dc57600080fd5b8201836020820111156101ee57600080fd5b8035906020019184600183028401116401000000008311171561021057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610560565b005b6103416004803603604081101561027a57600080fd5b81019080803576ffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803590602001906401000000008111156102bb57600080fd5b8201836020820111156102cd57600080fd5b803590602001918460018302840111640100000000831117156102ef57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506105e2565b005b6103fc6004803603602081101561035957600080fd5b810190808035906020019064010000000081111561037657600080fd5b82018360208201111561038857600080fd5b803590602001918460018302840111640100000000831117156103aa57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610642565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561043c578082015181840152602081019050610421565b50505050905090810190601f1680156104695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6060600160008376ffffffffffffffffffffffffffffffffffffffffffffff191676ffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105545780601f1061052957610100808354040283529160200191610554565b820191906000526020600020905b81548152906001019060200180831161053757829003601f168201915b50505050509050919050565b806000836040518082805190602001908083835b602083106105975780518252602082019150602081019050602083039250610574565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902090805190602001906105dd92919061074d565b505050565b80600160008476ffffffffffffffffffffffffffffffffffffffffffffff191676ffffffffffffffffffffffffffffffffffffffffffffff19168152602001908152602001600020908051906020019061063d92919061074d565b505050565b60606000826040518082805190602001908083835b6020831061067a5780518252602082019150602081019050602083039250610657565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107415780601f1061071657610100808354040283529160200191610741565b820191906000526020600020905b81548152906001019060200180831161072457829003601f168201915b50505050509050919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061078e57805160ff19168380011785556107bc565b828001600101855582156107bc579182015b828111156107bb5782518255916020019190600101906107a0565b5b5090506107c991906107cd565b5090565b6107ef91905b808211156107eb5760008160009055506001016107d3565b5090565b9056fea265627a7a72315820d47de161b5fdeef80faf8609f1d6cf0ffe10e042616f09c69627196e8a1ef92464736f6c634300050d0032"; - TransactionReceipt receipt = baseLibrary.deploy(BaseLibrary.GAS_PRICE, BaseLibrary.GAS_LIMIT, data); - if(receipt.getStatus().toString().equals("0x1")){ - System.err.println("status >>>> " + receipt.getStatus()+"合约部署成功"); - }else{ - System.err.println("status >>>> " + receipt.getStatus()+"合约部署失败"); - } - System.err.println("contract address >>>> " + receipt.getContractAddress()); - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/beforetest/ContractPrepareTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/beforetest/ContractPrepareTest.java deleted file mode 100644 index f697cc5e9d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/beforetest/ContractPrepareTest.java +++ /dev/null @@ -1,53 +0,0 @@ -package network.platon.test.evm.beforetest; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.tx.RawTransactionManager; -import com.alaya.tx.gas.ContractGasProvider; -import network.platon.test.BaseTest; -import com.alaya.protocol.http.HttpService; - -import java.math.BigInteger; - -/** - * @title 所有合约部署前相关准备工作,需要初始化gas值 - * @author: albedo - * @create: 2019/12/26 11:27 - **/ -public class ContractPrepareTest extends BaseTest { - - protected Web3j web3j = null; - protected Credentials credentials = null; - protected RawTransactionManager transactionManager; - protected ContractGasProvider provider; - protected String walletAddress; - protected String gasLimit = "4712388"; - protected String gasPrice = "3000000000000000"; - - /** - * 合约部署相关准备工作 - * @param gasPrice - * @param gasLimit - */ - protected void prepare(String gasPrice,String gasLimit){ - chainId = Integer.valueOf(driverService.param.get("chainId")); - try { - web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); - credentials = Credentials.create(driverService.param.get("privateKey")); - collector.logStepPass("currentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); - walletAddress = driverService.param.get("address"); - } catch (Exception e) { - collector.logStepFail("The node is unable to connect", e.toString()); - e.printStackTrace(); - } - provider = new ContractGasProvider(new BigInteger(gasPrice), new BigInteger(gasLimit)); - transactionManager = new RawTransactionManager(web3j, credentials, chainId); - } - - /** - * 合约部署相关准备工作 - */ - protected void prepare(){ - this.prepare(gasPrice,gasLimit); - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/beforetest/GeneratorPreTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/beforetest/GeneratorPreTest.java deleted file mode 100644 index e163968446..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/beforetest/GeneratorPreTest.java +++ /dev/null @@ -1,244 +0,0 @@ -package network.platon.test.evm.beforetest; -import com.alaya.bech32.Bech32; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.autotest.utils.FileUtil; -import network.platon.utils.CompileUtil; -import network.platon.utils.DataChangeUtil; -import network.platon.utils.GeneratorUtil; -import network.platon.utils.OneselfFileUtil; -import org.junit.Before; -import org.junit.Test; -import java.io.*; -import java.nio.file.Paths; -import java.util.*; -import java.util.concurrent.CountDownLatch; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.concurrent.Semaphore; - -/** - * @title 1.将sol编译成二进制和ABI文件,2.通过合约二进制和ABI文件生成包裝类 - * @author: qcxiao - * @create: 2019/12/18 11:27 - **/ -public class GeneratorPreTest extends ContractPrepareTest { - - private String contractAndLibrarys; - - @Before - public void before() { - this.prepare(); - contractAndLibrarys = driverService.param.get("contractAndLibrarys") == null ? "" : driverService.param.get("contractAndLibrarys"); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qcxiao" - , showName = "GeneratorPreTest-编译并生成包装类", sourcePrefix = "evm") - public void compileAndGenerator() { - Date compileStartDate = new Date(); - try { - // 1.将sol编译成二进制和ABI文件 - compile(); - Date compileEndDate = new Date(); - long ms = compileEndDate.getTime() - compileStartDate.getTime(); - collector.logStepPass("compile time:" + ms + "ms"); - - //2.将含有library库的合约中的引用替换为library库对对合约地址 - String[] contractAndLibrarysArr = contractAndLibrarys.split(";"); -// log.info("" + contractAndLibrarysArr.length); - if (contractAndLibrarysArr.length > 0) { - for (int i = 0; i < contractAndLibrarysArr.length; i++) { -// log.info("contractAndLibrarysArr[i] is:" + contractAndLibrarysArr[i]); - try{ - String[] singleContractLib = contractAndLibrarysArr[i].split("&"); - deployLibrary(singleContractLib[0], singleContractLib[1],singleContractLib[2]); - }catch (Exception e){ - e.printStackTrace(); - } - - } - } - - Date generatorWrapperStartDate = new Date(); - // 3.通过合约二进制和ABI文件生成包裝类 - generatorEVMWrapper(); - Date generatorWrapperEndDate = new Date(); - - ms = generatorWrapperEndDate.getTime() - generatorWrapperStartDate.getTime(); - collector.logStepPass("generator wrapper time:" + ms + "ms"); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - - - /** - * @title 将sol编译成二进制和ABI文件 - * @description: - * @author: qcxiao - * @create: 2019/12/24 14:44 - **/ - public void compile() throws InterruptedException { - String resourcePath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "contracts", "evm").toUri().getPath()); - // 获取所有sol源文件 - List files = new OneselfFileUtil().getResourcesFile(resourcePath, 0); - int size = files.size(); -// log.info("size: " + size); - ExecutorService executorService = Executors.newCachedThreadPool(); - // 同时并发执行的线程数 - final Semaphore semaphore = new Semaphore(20); - // 请求总数与文件数定义一致size - CountDownLatch countDownLatch = new CountDownLatch(size); - CompileUtil compileUtil = new CompileUtil(); - for (String file : files) { - executorService.execute(() -> { - try { - semaphore.acquire(); - compileUtil.evmCompile(file); -// log.info("compile success:" + file); - } catch (Exception e) { -// log.info("compile fail:" + file, e.toString()); - } finally { - semaphore.release(); - countDownLatch.countDown(); - } - - }); - } - - countDownLatch.await(); - executorService.shutdown(); - } - - - public void deployLibrary(String contractName, String librarys,String version) { - String libraryAddressNoPre = ""; - //key值为library库名称,value为library库对应的地址 - Map libraryAddressNoPreMap = new HashMap(); - - //key值为library库名称,value为library库对应的引用地址 - Map libraryReplaceMap = new HashMap(); - String lineTxt = null; - - BufferedReader bufferedReader = null; - try { - String resourcePath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "contracts", "evm", "build",version).toUri().getPath()); - - String[] libraryArr = librarys.split("\\|\\|"); - - for (int i = 0; i < libraryArr.length; i++) { - String libraryFile = resourcePath + libraryArr[i]; - File file = new File(libraryFile); - if (!file.exists()) { - continue; - } - bufferedReader = new BufferedReader(new InputStreamReader(new FileInputStream(file), "UTF-8")); - while ((lineTxt = bufferedReader.readLine()) != null) { - BaseLibrary baseLibrary = new BaseLibrary(credentials, web3j, chainId); - TransactionReceipt receipt = baseLibrary.deploy(BaseLibrary.GAS_PRICE, BaseLibrary.GAS_LIMIT, lineTxt); - collector.logStepPass("status >>>> " + receipt.getStatus()); - if(receipt.getStatus().toString().equals("0x1")){ - collector.logStepPass(libraryArr[i] + "部署成功"); - }else{ - collector.logStepPass(libraryArr[i] + "部署失败"); - } - libraryAddressNoPre = receipt.getContractAddress(); - collector.logStepPass("contract address >>>> " + libraryAddressNoPre); - if (libraryAddressNoPre.startsWith("atp") || libraryAddressNoPre.startsWith("atx")) { -// if (libraryAddressNoPre.startsWith("lax") || libraryAddressNoPre.startsWith("lat")) { - libraryAddressNoPreMap.put(libraryArr[i].split("\\.")[0], DataChangeUtil.bytesToHex(Bech32.addressDecode(libraryAddressNoPre))); - break; - } - } - } - - //将合约中对应的library库地址进行替换 - String binData = ""; - String replaceStr = ""; - String sha3Str = ""; - String contractNameFile = resourcePath + contractName; - File file = new File(contractNameFile); - if (!file.exists()) { - return; - } - bufferedReader = new BufferedReader(new InputStreamReader(new FileInputStream(file), "UTF-8")); - while ((lineTxt = bufferedReader.readLine()) != null) { - if (lineTxt.startsWith("60")) { - binData = lineTxt; - continue; - } else if (lineTxt.startsWith("//")) { - String[] arr = lineTxt.substring(2).trim().split("->"); - replaceStr = "__" + arr[0].trim() + "__"; //bin文件中需要替换的字符串 - //replaceStr生成规则 -// sha3Str = Hash.sha3String(arr[1].trim()).substring(2,36); - String[] keyArr = arr[1].split("\\:"); - libraryReplaceMap.put(keyArr[keyArr.length - 1], replaceStr); - } - } - bufferedReader.close(); - - //替换合约bin中的library库引用修改为对应的真实library合约地址 - Iterator it = libraryReplaceMap.keySet().iterator(); - collector.logStepPass("contract oldBinData >>> " + binData); - while (it.hasNext()) { - String libraryKey = it.next(); - binData = binData.replace(libraryReplaceMap.get(libraryKey), libraryAddressNoPreMap.get(libraryKey)); - } - - collector.logStepPass("contract newBinData >>> " + binData); - - //将替换好的地址的合约重新写入合约的bin文件中 - FileWriter fw = new FileWriter(contractNameFile); - fw.write(binData); - fw.close(); - - } catch (Exception e) { - collector.logStepFail(e.getMessage(), e.toString()); - e.printStackTrace(); - } - } - - - /** - * @title 通过合约二进制和ABI文件生成包裝类 - * @description: - * @author: qcxiao - * @create: 2019/12/24 14:45 - **/ - public void generatorEVMWrapper() throws InterruptedException { - // 获取已编译后的二进制文件 - List binFileName = new OneselfFileUtil().getBinFiles(); - // 获取合约文件数量 - int size = binFileName.size(); - - ExecutorService executorService = Executors.newCachedThreadPool(); - CountDownLatch countDownLatch = new CountDownLatch(size); - // 信号量 - final Semaphore semaphore = new Semaphore(50); - GeneratorUtil generatorUtil = new GeneratorUtil(); - collector.logStepPass("staring generator, Total " + size + " contract, please wait..."); - - for (File file : binFileName) { - //collector.logStepPass("staring compile:" + fileName); - executorService.execute(() -> { - try { - semaphore.acquire(); - generatorUtil.generator(file); - collector.logStepPass("generator success:" + file); - } catch (Exception e) { - collector.logStepFail("generator fail:" + file.getName(), e.toString()); - } finally { - semaphore.release(); - countDownLatch.countDown(); - } - }); - } - countDownLatch.await(); - executorService.shutdown(); - } - -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/complexcontracts/EVMVIDTokenTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/complexcontracts/EVMVIDTokenTest.java deleted file mode 100644 index df27f210ca..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/complexcontracts/EVMVIDTokenTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.evm.v0_4_26.complexcontracts; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_4_26.VIDToken; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -public class EVMVIDTokenTest extends ContractPrepareTest { - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "complexcontracts.EVMVIDTokenTest", sourcePrefix = "evm/0.4.26") - public void test() { - try { - VIDToken token = VIDToken.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = token.getContractAddress(); - TransactionReceipt tx = token.getTransactionReceipt().get(); - - collector.logStepPass( - "Token issued successfully.contractAddress:" + contractAddress + - ", hash:" + tx.getTransactionHash() + - ", tokenName:" + token.name().send() + - ", symbol:" + token.symbol().send()); - collector.logStepPass("deploy gas used:" + token.getTransactionReceipt().get().getGasUsed()); - - BigInteger balanceOf = VIDToken.load(contractAddress, web3j, transactionManager, provider, chainId).balanceOf(contractAddress).send(); - collector.logStepPass("balanceOf:" + balanceOf); - - } catch (Exception e) { - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/complexcontracts/TokenTransferTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/complexcontracts/TokenTransferTest.java deleted file mode 100644 index 468b75f779..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/complexcontracts/TokenTransferTest.java +++ /dev/null @@ -1,112 +0,0 @@ -package network.platon.test.evm.v0_4_26.complexcontracts; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.http.HttpService; -import com.alaya.tx.RawTransactionManager; -import com.alaya.tx.gas.ContractGasProvider; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.autotest.junit.rules.AssertCollector; -import network.platon.autotest.junit.rules.DriverService; -import network.platon.contracts.evm.v0_4_26.HumanStandardToken; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 代币转移 - * @description: - * @author: qcxiao - * @create: 2019/12/16 13:39 - **/ -public class TokenTransferTest { - - @Rule - public DriverService driverService = new DriverService(); - - @Rule - public AssertCollector collector = new AssertCollector(); - - // 底层链ID - private long chainId; - // 每次转移的代币数量 - private String transferAmount; - // 发行代币的总额 - private String ownerAmount; - // 接收代币的地址 -// private final static String transferTo = "lax1354ckckjla0869lernuzrjh7arslu3vypxek6h"; - private final static String transferTo = "atx1354ckckjla0869lernuzrjh7arslu3vyanptca"; - // 代币名称 - private String tokenName; - // 发行代币的地址 - private String transferFrom; - - - @Before - public void before() { - chainId = Integer.valueOf(driverService.param.get("chainId")); - ownerAmount = driverService.param.get("ownerAmount"); - transferAmount = driverService.param.get("transferAmount"); - tokenName = driverService.param.get("tokenName"); - transferFrom = driverService.param.get("address"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "complexcontracts.TokenTransferTest-代币转移", sourcePrefix = "evm/0.4.26") - public void testTransfer() { - Web3j web3j = null; - Credentials credentials = null; - try { - web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); - credentials = Credentials.create(driverService.param.get("privateKey")); - collector.logStepPass("currentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("The node is unable to connect", e.toString()); - e.printStackTrace(); - } - - - ContractGasProvider provider = new ContractGasProvider(new BigInteger("5000000000000"), new BigInteger("3000000")); - RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - - try { - HumanStandardToken token = HumanStandardToken.deploy(web3j, transactionManager, provider, chainId, - new BigInteger(ownerAmount), tokenName, BigInteger.valueOf(18), "USDT").send(); - - String contractAddress = token.getContractAddress(); - TransactionReceipt tx = token.getTransactionReceipt().get(); - - collector.logStepPass("Token issued successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash() + - ", tokenName:" + token.name().send() + ", symbol:" + token.symbol().send()); - collector.logStepPass("deploy gas used:" + token.getTransactionReceipt().get().getGasUsed()); - collector.assertEqual(tokenName, token.name().send(), "checkout tokenName"); - - collector.logStepPass("5次循环调用..."); - for (int i = 1; i < 6; i++) { - TransactionReceipt transactionReceipt = HumanStandardToken.load(contractAddress, web3j, transactionManager, provider, chainId) - .transfer(transferTo, new BigInteger(transferAmount)).send(); - BigInteger toBalance = token.balanceOf(transferTo).send(); - BigInteger fromBalance = token.balanceOf(transferFrom).send(); - collector.logStepPass("Token transfer successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentTransferTime:" + i + ", currentBlockNumber:" + transactionReceipt.getBlockNumber()); - collector.logStepPass("transferToBalance:" + toBalance + ", transferFromBalance:" + fromBalance); - // 累计转移的数量 - BigInteger amount = new BigInteger(transferAmount).multiply(BigInteger.valueOf(i)); - // 判断代币接收地址的余额是否正确 - collector.assertEqual(toBalance, amount, "checkout every time transferTo balance."); - // 判断代币转出地址余额是否正确 - collector.assertEqual(fromBalance, (new BigInteger(ownerAmount)).subtract(amount), "checkout every time transferFrom balance."); - } - } catch (Exception e) { - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/complexcontracts/erc/ERC200412TokenTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/complexcontracts/erc/ERC200412TokenTest.java deleted file mode 100644 index 7c84f8f4bf..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/complexcontracts/erc/ERC200412TokenTest.java +++ /dev/null @@ -1,143 +0,0 @@ -package network.platon.test.evm.v0_4_26.complexcontracts.erc; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_4_26.ERC200412Token; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigDecimal; -import java.math.BigInteger; - - -/** - * @title ERC200412Token测试 - * @description: 合约版本solidity ^0.4.26 - * @author: albedo - * @create: 2019/12/28 - */ -public class ERC200412TokenTest extends ContractPrepareTest { - - //供应份额 - private String initialSupply; - - //代币名称 - private String tokenName; - - //代币简称 - private String tokenSymbol; - - //转出账号 - private String to; - - //转出金额 - private String value; - - //设置approveAddress可以创建交易者名义花费的代币数 - private String approveAddress; - - //设置approveAddress可以创建交易者名义花费的代币数approveValue - private String approveValue; - - //创建者销毁的代币数 - private String burnValue; - - - @Before - public void before() { - this.prepare(); - initialSupply = driverService.param.get("initialSupply"); - tokenName = driverService.param.get("tokenName"); - tokenSymbol = driverService.param.get("tokenSymbol"); - to = driverService.param.get("to"); - value = driverService.param.get("value"); - approveAddress = driverService.param.get("approveAddress"); - approveValue = driverService.param.get("approveValue"); - burnValue = driverService.param.get("burnValue"); - - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "albedo", showName = "ERC200412TokenTest-测试0.4.12版本ERC20", sourcePrefix = "evm/0.4.26") - public void erc20Test() { - try { - - ERC200412Token eRC200412Token = ERC200412Token.deploy(web3j, transactionManager, provider, chainId, new BigInteger(initialSupply), tokenName, tokenSymbol).send(); - - String contractAddress = eRC200412Token.getContractAddress(); - TransactionReceipt tx = eRC200412Token.getTransactionReceipt().get(); - - collector.logStepPass("ERC200412Token deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + eRC200412Token.getTransactionReceipt().get().getGasUsed()); - - //获取代币名称 - String chainTokenName = eRC200412Token.name().send().toString(); - collector.logStepPass("开始获取代币名称" + chainTokenName); - collector.assertEqual(tokenName, chainTokenName); - - //获取代币简称 - String chainTokenSymbol = eRC200412Token.symbol().send().toString(); - collector.logStepPass("开始获取代币简称" + chainTokenSymbol); - collector.assertEqual(tokenSymbol, chainTokenSymbol); - - //获取代币总发行量 - String chainInitialSupply = eRC200412Token.totalSupply().send().toString(); - collector.logStepPass("开始获取代币发行量" + chainInitialSupply); - collector.assertEqual(initialSupply + "000000000000000000", chainInitialSupply); - - //给to地址转账value值 - TransactionReceipt transactionReceipt = eRC200412Token.transfer(to, new BigInteger(value)).send(); - collector.logStepPass("发行账户向" + to + "转账" + value); - - collector.logStepPass("ERC200412Token transfer to " + to + " successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //查询to地址的余额 - String to_balance = eRC200412Token.balanceOf(to).send().toString(); - collector.logStepPass(to + "账户余额为:" + to_balance); - collector.assertEqual(to_balance, value); - - //查询from地址的余额 - String from_balance = eRC200412Token.balanceOf(walletAddress).send().toString(); - collector.logStepPass("转账后发行账户" + walletAddress + "余额为:" + from_balance); - collector.assertEqual(from_balance, new BigDecimal(chainInitialSupply).subtract(new BigDecimal(value)).toString()); - - //创建者设置approveAddress可以创建交易者名义花费的代币数为approveValue - transactionReceipt = eRC200412Token.approve(approveAddress, new BigInteger(approveValue)).send(); - collector.logStepPass("发行账户允许" + approveAddress + "账户以自己的名义花费的代币数为:" + approveValue); - - collector.logStepPass("ERC200412Token transfer to " + to + " successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //查询approveAddress可以从我的地址转出我代币数 - String chainApproveValue = eRC200412Token.allowance(walletAddress, approveAddress).send().toString(); - collector.logStepPass("发行账户允许" + approveAddress + "账户以自己的名义花费的代币数为:" + chainApproveValue); - collector.assertEqual(approveValue, chainApproveValue); - - //创建者销毁自己账户的指定的代币数 - transactionReceipt = eRC200412Token.burn(new BigInteger(burnValue)).send(); - collector.logStepPass("发行账销毁的代币数:" + burnValue); - - collector.logStepPass("ERC200412Token burn " + burnValue + " successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - - //查询from地址的余额 - String from_balance_afterBurn = eRC200412Token.balanceOf(walletAddress).send().toString(); - collector.logStepPass("发行都销毁" + burnValue + "后账户余额为" + from_balance_afterBurn); - - //销毁指定代币后获取总发行量 - String chainInitialSupply_after_burn = eRC200412Token.totalSupply().send().toString(); - collector.logStepPass("销毁指定代币后获取总发行量:" + chainInitialSupply_after_burn); - - - } catch (Exception e) { - collector.logStepFail("erc20Test failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/crossContractCall/Caller0425Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/crossContractCall/Caller0425Test.java deleted file mode 100644 index 9cde0ad1c8..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/crossContractCall/Caller0425Test.java +++ /dev/null @@ -1,168 +0,0 @@ -package network.platon.test.evm.v0_4_26.crossContractCall; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_4_26.Callee0425; -import network.platon.contracts.evm.v0_4_26.Caller0425; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * @title 0.4.25跨合约调用的调用者 - * 说明:CALL修改的是被调用者的状态变量,使用的是上一个调用者地址 - * DELEGATECALL会一直使用原始调用者的地址,而CALLCODE不会。两者都是修改被调用者的状态 - * @description: - * @author: hudenian - * @create: 2019/12/30 - */ -public class Caller0425Test extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "Caller0425Test-0.4.25跨合约调用CALL", sourcePrefix = "evm/0.4.26") - public void caller0425CallTest() { - try { - //调用者合约地址 - Caller0425 caller0425 = Caller0425.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = caller0425.getContractAddress(); - TransactionReceipt tx = caller0425.getTransactionReceipt().get(); - collector.logStepPass("Caller0425 deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + caller0425.getTransactionReceipt().get().getGasUsed()); - - - //被调用者合约地址 - Callee0425 callee0425 = Callee0425.deploy(web3j, transactionManager, provider, chainId).send(); - String calleeContractAddress = callee0425.getContractAddress(); - TransactionReceipt tx1 = callee0425.getTransactionReceipt().get(); - collector.logStepPass("Callee0425 deploy successfully.contractAddress:" + calleeContractAddress + ", hash:" + tx1.getTransactionHash()); - collector.logStepPass("deploy gas used:" + callee0425.getTransactionReceipt().get().getGasUsed()); - - //查询调用者x值 - String callerX = caller0425.getCallerX().send().toString(); - collector.logStepPass("Caller0425 合约中X的值为:"+callerX); - - //查询被调用者x值 - String calleeX = callee0425.getCalleeX().send().toString(); - collector.logStepPass("Callee0425 合约中X的值为:"+calleeX); - - - TransactionReceipt tx2 = caller0425.inc_call(calleeContractAddress).send(); - collector.logStepPass("执行跨合约调用后,hash:" + tx2.getTransactionHash()); - - //查询调用者x值 - String callerAfterX = caller0425.getCallerX().send().toString(); - collector.logStepPass("跨合约调用后,Caller0425 合约中X的值为:"+callerAfterX); - - //查询被调用者x值 - String calleeAfterX = callee0425.getCalleeX().send().toString(); - collector.logStepPass("跨合约调用后,Callee0425 合约中X的值为:"+calleeAfterX); - - - } catch (Exception e) { - collector.logStepFail("Caller0425Test caller0425CallTest process fail.", e.toString()); - e.printStackTrace(); - } - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test1.xls", sheetName = "Sheet1", - author = "hudenian", showName = "Caller0425Test-0.4.25跨合约调用CALLCODE", sourcePrefix = "evm/0.4.26") - public void caller0425CallCodeTest() { - try { - //调用者合约地址 - Caller0425 caller0425 = Caller0425.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = caller0425.getContractAddress(); - TransactionReceipt tx = caller0425.getTransactionReceipt().get(); - collector.logStepPass("Caller0425 deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - - - //被调用者合约地址 - Callee0425 callee0425 = Callee0425.deploy(web3j, transactionManager, provider, chainId).send(); - String calleeContractAddress = callee0425.getContractAddress(); - TransactionReceipt tx1 = callee0425.getTransactionReceipt().get(); - collector.logStepPass("Callee0425 deploy successfully.contractAddress:" + calleeContractAddress + ", hash:" + tx1.getTransactionHash()); - - //查询调用者x值 - String callerX = caller0425.getCallerX().send().toString(); - collector.logStepPass("Caller0425 合约中X的值为:"+callerX); - - //查询被调用者x值 - String calleeX = callee0425.getCalleeX().send().toString(); - collector.logStepPass("Callee0425 合约中X的值为:"+calleeX); - - - TransactionReceipt tx2 = caller0425.inc_callcode(calleeContractAddress).send(); - collector.logStepPass("执行跨合约调用后,hash:" + tx2.getTransactionHash()); - - //查询调用者x值 - String callerAfterX = caller0425.getCallerX().send().toString(); - collector.logStepPass("跨合约调用后,Caller0425 合约中X的值为:"+callerAfterX); - - //查询被调用者x值 - String calleeAfterX = callee0425.getCalleeX().send().toString(); - collector.logStepPass("跨合约调用后,Callee0425 合约中X的值为:"+calleeAfterX); - - - } catch (Exception e) { - collector.logStepFail("Caller0425Test caller0425CallCodeTest process fail.", e.toString()); - e.printStackTrace(); - } - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test2.xls", sheetName = "Sheet1", - author = "hudenian", showName = "Caller0425Test-0.4.25跨合约调用DELEGATECALL", sourcePrefix = "evm/0.4.26") - public void caller0425DelegateCallTest() { - try { - //调用者合约地址 - Caller0425 caller0425 = Caller0425.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = caller0425.getContractAddress(); - TransactionReceipt tx = caller0425.getTransactionReceipt().get(); - collector.logStepPass("Caller0425 deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - - - //被调用者合约地址 - Callee0425 callee0425 = Callee0425.deploy(web3j, transactionManager, provider, chainId).send(); - String calleeContractAddress = callee0425.getContractAddress(); - TransactionReceipt tx1 = callee0425.getTransactionReceipt().get(); - collector.logStepPass("Callee0425 deploy successfully.contractAddress:" + calleeContractAddress + ", hash:" + tx1.getTransactionHash()); - - //查询调用者x值 - String callerX = caller0425.getCallerX().send().toString(); - collector.logStepPass("Caller0425 合约中X的值为:"+callerX); - - //查询被调用者x值 - String calleeX = callee0425.getCalleeX().send().toString(); - collector.logStepPass("Callee0425 合约中X的值为:"+calleeX); - - - TransactionReceipt tx2 = caller0425.inc_delegatecall(calleeContractAddress).send(); - collector.logStepPass("执行跨合约调用后,hash:" + tx2.getTransactionHash()); - - //查询调用者x值 - String callerAfterX = caller0425.getCallerX().send().toString(); - collector.logStepPass("跨合约调用后,Caller0425 合约中X的值为:"+callerAfterX); - - //查询被调用者x值 - String calleeAfterX = callee0425.getCalleeX().send().toString(); - collector.logStepPass("跨合约调用后,Callee0425 合约中X的值为:"+calleeAfterX); - - - } catch (Exception e) { - collector.logStepFail("Caller0425Test caller0425DelegateCallTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/csdccontracts/NewSecPledgeApplyManagerTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/csdccontracts/NewSecPledgeApplyManagerTest.java deleted file mode 100644 index 68190b1c83..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/csdccontracts/NewSecPledgeApplyManagerTest.java +++ /dev/null @@ -1,89 +0,0 @@ -package network.platon.test.evm.v0_4_26.csdccontracts; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_4_26.NewSecPledgeApplyManager; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.util.Date; - - -/** - * @title 结算质押申请合约验证测试 - * @description: - * @author: hudenian - * @create: 2020/1/9 - */ -public class NewSecPledgeApplyManagerTest extends ContractPrepareTest { - - -// //模拟简单的业务数据 - private String secApply = "2-businessNo1-bizId1-4-5-6-7-8-9-10-11-12-13-14-15-16-17-18-19-20-21-22-23-24"; - - //对应 secApply以“-”分隔的第一个值 - private String bizId = "2"; - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "NewSecPledgeApplyManagerTest-结算复杂合约测试验证", sourcePrefix = "evm/0.4.26") - public void createPledgeApplyCommonTest() { - try { - - NewSecPledgeApplyManager newSecPledgeApplyManager = NewSecPledgeApplyManager.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = newSecPledgeApplyManager.getContractAddress(); - TransactionReceipt tx = newSecPledgeApplyManager.getTransactionReceipt().get(); - collector.logStepPass("NewSecPledgeApplyManager deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + newSecPledgeApplyManager.getTransactionReceipt().get().getGasUsed()); - - Date start = new Date(); - - - tx = newSecPledgeApplyManager.createPledgeApplyCommon(secApply).send(); - //插入业务数据 - collector.logStepPass("NewSecPledgeApplyManager add successfully hash:" + tx.getTransactionHash()); - - //查询质押申请信息 - String businessNo = newSecPledgeApplyManager.select_SecPledgeApply_byId(bizId).send().toString(); - collector.logStepPass("bizId:"+bizId+"对应的business_no为:"+businessNo); - //对应 secApply以“-”分隔的第二个值 - collector.assertEqual("businessNo1",businessNo); - - //查询交易用户 - String tradeUser = newSecPledgeApplyManager.select_tradeUser_byId(bizId).send().toString(); - collector.logStepPass("bizId:"+bizId+"对应的tradeUser为:"+tradeUser); - //对应 secApply以“-”分隔的第三个值 - collector.assertEqual("bizId1",tradeUser); - - //查询操作用户 - String tradeOperator = newSecPledgeApplyManager.select_tradeOperator_bytId(bizId).send().toString(); - collector.logStepPass("bizId:"+bizId+"对应的tradeOperator为:"+tradeOperator); - //对应 secApply以“-”分隔的第七个值 - collector.assertEqual("7",tradeOperator); - - //查询pledgeSecurity - String pledgeSecurity = newSecPledgeApplyManager.select_pledgeSecurity_bytId(bizId).send().toString(); - collector.logStepPass("bizId:"+bizId+"对应的pledgeSecurity为:"+pledgeSecurity); - //对应 secApply以“-”分隔的第十四个值 - collector.assertEqual("14",pledgeSecurity); - - - Date end = new Date(); - collector.logStepPass("插入到调用一共耗时:"+(end.getTime()-start.getTime())); - - - } catch (Exception e) { - collector.logStepFail("NewSecPledgeApplyManagerTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/csdccontracts/OrderDaoTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/csdccontracts/OrderDaoTest.java deleted file mode 100644 index 2217c7cf72..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/csdccontracts/OrderDaoTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_4_26.csdccontracts; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_4_26.OrderDao; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.util.Date; - - -/** - * @title 结算质押申请合约验证测试 - * @description: - * @author: hudenian - * @create: 2020/1/9 - */ -public class OrderDaoTest extends ContractPrepareTest { - - - //模拟简单的业务数据 - private String secApply = "2-businessNo1-bizId1-4-5-6-7-8-9-10-11-12-13-14-15-16-17-18-19-20-21-22-23-24-25-26-27-28-29-30-31-32-33-34-35-36-37-38-39-40"; - - private String bizId = "2"; - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "OrderDaoTest-结算复杂合约测试验证", sourcePrefix = "evm/0.4.26") - public void orderDaoTest() { - try { - //调用者合约地址 - OrderDao orderDao = OrderDao.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = orderDao.getContractAddress(); - TransactionReceipt tx = orderDao.getTransactionReceipt().get(); - collector.logStepPass("OrderDao deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + orderDao.getTransactionReceipt().get().getGasUsed()); - - Date start = new Date(); - - - tx = orderDao.insert_SecPledgeApply(secApply).send(); - //插入业务数据 - collector.logStepPass("OrderDao callDoublelTest successfully hash:" + tx.getTransactionHash()); - - //根据业务id查询业务数据 - String business_id = orderDao.select_SecPledgeApply_byId(bizId).send().toString(); - collector.logStepPass("bizId:"+bizId+"对应的business_no为:"+business_id); - - Date end = new Date(); - collector.logStepPass("插入到调用一共耗时:"+(end.getTime()-start.getTime())); - - - } catch (Exception e) { - collector.logStepFail("OrderDaoTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/data_type/AddressBalanceTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/data_type/AddressBalanceTest.java deleted file mode 100644 index aea8569a98..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/data_type/AddressBalanceTest.java +++ /dev/null @@ -1,48 +0,0 @@ -package network.platon.test.evm.v0_4_26.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_4_26.AddressBalance; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -public class AddressBalanceTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", author = "qcxiao", - showName = "AddressBalanceTest.查询某地址余额",sourcePrefix = "evm/0.4.26") - public void test() { - -// String useAddress = "lax10eycqggu2yawpadtmn7d2zdw0vnmscklynzq8x"; - String useAddress = "atx10eycqggu2yawpadtmn7d2zdw0vnmscklcx6a9v"; - - AddressBalance addressBalance = null; - try { - //合约部署 - addressBalance = AddressBalance.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = addressBalance.getContractAddress(); - TransactionReceipt tx = addressBalance.getTransactionReceipt().get(); - collector.logStepPass("AddressBalance deploy successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deploy finish currentBlockNumber:" + tx.getBlockNumber()); - - //调用合约 - BigInteger balance = addressBalance.balanceOfPlatON(useAddress).send(); - collector.logStepPass("transactionHash:" + tx.getTransactionHash() + ", currentBlockNumber:" + tx.getBlockNumber()); - - System.out.println("address:" + useAddress + ", balance:" + balance); - } catch (Exception e) { - collector.logStepFail("AddressBalance process fail.", e.toString()); - e.printStackTrace(); - } - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/event/EventNegativeValueTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/event/EventNegativeValueTest.java deleted file mode 100644 index e56a3fcdd9..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/event/EventNegativeValueTest.java +++ /dev/null @@ -1,50 +0,0 @@ -package network.platon.test.evm.v0_4_26.event; - - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_4_26.Eventer; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title EventNegativeValueTest - * @description 事件中负值的调用 - * @author qcxiao - * @updateTime 2020/6/3 19:38 - */ -public class EventNegativeValueTest extends ContractPrepareTest { - - private String contractAddress; - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "event.EventNegativeValueTest-事件负值调用", sourcePrefix = "evm/0.4.26") - public void test() { - prepare(); - try { - Eventer eventer = Eventer.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = eventer.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + eventer.getTransactionReceipt().get().getGasUsed()); - - - TransactionReceipt transactionReceipt = eventer.load(contractAddress, web3j, transactionManager, provider, chainId).getEvent().send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - collector.assertEqual(eventer.getTestInt8Events(transactionReceipt).get(0).out1, BigInteger.valueOf(-2), "事件中第一个值的比较"); - collector.assertEqual(eventer.getTestInt8Events(transactionReceipt).get(0).out2, BigInteger.valueOf(-3), "事件中第二个值的比较"); - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/exec_efficiency/QuickSortTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/exec_efficiency/QuickSortTest.java deleted file mode 100644 index fee3c748d1..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/exec_efficiency/QuickSortTest.java +++ /dev/null @@ -1,73 +0,0 @@ -package network.platon.test.evm.v0_4_26.exec_efficiency; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_4_26.QuickSort; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Random; - -/** - * @title QuickSortTest - * @description 快速排序 - * @author zjsunzone - * @updateTime 2020-02-26 14:25:27 - */ -public class QuickSortTest extends ContractPrepareTest { - - private BigInteger numberOfCalls; // length of array. - private String contractAddress; - - @Before - public void before() { - numberOfCalls = new BigInteger(driverService.param.get("numberOfCalls")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "exec_efficiency.QuickSort-快速排序", sourcePrefix = "evm/0.4.26") - public void test() { - prepare(); - try { - // prepare array - List array = new ArrayList<>(); - Random r = new Random(); - for (int i = 0; i < numberOfCalls.intValue(); i++) { - int val = r.nextInt(2000); - if(i % 2 == 0){ - String nfval = "-" + val; - int nval = Integer.parseInt(nfval); - array.add(BigInteger.valueOf(nval)); - } else { - array.add(BigInteger.valueOf(val)); - } - } - - QuickSort contract = QuickSort.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = contract.getContractAddress(); - collector.logStepPass("QuickSort contract deploy successful. contractAddress:" + contractAddress + " hash:" + contract.getTransactionReceipt().get().getTransactionHash()); - collector.logStepPass("QuickSort contract deploy successful. gasUsed:" + contract.getTransactionReceipt().get().getGasUsed().toString()); - - TransactionReceipt transactionReceipt = contract.sort(array, BigInteger.ZERO, BigInteger.valueOf(array.size() - 1)).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("QuickSort sort successful, gasUsed:" + gasUsed); - collector.logStepPass("QuickSort sort successful. hash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("QuickSort currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - List afterArray = contract.show().send(); - collector.logStepPass("QuickSort sort before:" + Arrays.toString(array.toArray())); - collector.logStepPass("QuickSort sort after :" + Arrays.toString(afterArray.toArray())); - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/exec_efficiency/SimpleStorageTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/exec_efficiency/SimpleStorageTest.java deleted file mode 100644 index 607ea822e9..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/exec_efficiency/SimpleStorageTest.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.test.evm.v0_4_26.exec_efficiency;//package network.platon.test.evm.exec_efficiency; -// -//import com.alibaba.fastjson.JSONArray; -//import network.platon.test.evm.beforetest.ContractPrepareTest; -//import network.platon.autotest.junit.annotations.DataSource; -//import network.platon.autotest.junit.enums.DataSourceType; -//import network.platon.autotest.utils.FileUtil; -//import network.platon.contracts.evm.SimpleStorage; -//import network.platon.utils.DataChangeUtil; -//import network.platon.utils.OneselfFileUtil; -//import org.junit.Test; -//import org.web3j.crypto.Credentials; -//import org.web3j.protocol.core.methods.response.TransactionReceipt; -//import org.web3j.tx.RawTransactionManager; -//import java.nio.file.Paths; -//import java.util.concurrent.CountDownLatch; -//import java.util.concurrent.ExecutorService; -//import java.util.concurrent.Executors; -//import java.util.concurrent.Semaphore; -// -///** -// * @title SimpleStorageTest -// * @description blockhash的测试验证 -// * @author qcxiao -// * @updateTime 2020/4/1 9:54 -// */ -//public class SimpleStorageTest extends ContractPrepareTest { -// private String contractAddress; -// -// @Test -// @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", -// author = "qcxiao", showName = "exec_efficiency.SimpleStorageTest-blockHash验证", sourcePrefix = "network.platon.test.evm") -// public void test() { -// prepare(); -// -// try { -// SimpleStorage simpleStorage = SimpleStorage.deploy(web3j, transactionManager, provider, chainId).send(); -// contractAddress = simpleStorage.getContractAddress(); -// collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); -// collector.logStepPass("deploy gas used:" + simpleStorage.getTransactionReceipt().get().getGasUsed()); -// -// -// String filePath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "all_addr_and_private_keys_4000_evm.json").toUri().getPath()); -// String jsonContent = OneselfFileUtil.readFile(filePath); -// -// JSONArray jsonArray = JSONArray.parseArray(jsonContent); -// ExecutorService executorService = Executors.newCachedThreadPool(); -// // 同时并发执行的线程数 -// final Semaphore semaphore = new Semaphore(100); -// // 请求总数 -// CountDownLatch countDownLatch = new CountDownLatch(jsonArray.size()); -// -// for (int i = 0; i < jsonArray.size(); i++) { -// int finalI = i; -// executorService.execute(() -> { -// try { -// semaphore.acquire(); -// credentials = Credentials.create(jsonArray.getJSONObject(finalI).getString("private_key")); -// transactionManager = new RawTransactionManager(web3j, credentials, chainId); -// -// TransactionReceipt transactionReceipt = SimpleStorage.load(contractAddress, web3j, transactionManager, provider, chainId).hello().send(); -// collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash() -// + ", currentBlockNumber:" + transactionReceipt.getBlockNumber()); -// -// byte[] hash = SimpleStorage.load(contractAddress, web3j, transactionManager, provider, chainId).hash().send(); -// collector.logStepPass("contract load successful, current time:" + finalI + ", blockHash:" + DataChangeUtil.bytesToHex(hash)); -// } catch (Exception e) { -// //e.printStackTrace(); -// //collector.logStepFail("call fail.", e.toString()); -// } finally { -// semaphore.release(); -// countDownLatch.countDown(); -// } -// }); -// -// } -// countDownLatch.await(); -// executorService.shutdown(); -// -// } catch (Exception e) { -// collector.logStepFail("The contract fail.", e.toString()); -// } -// } -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/function/ConstantViewPureTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/function/ConstantViewPureTest.java deleted file mode 100644 index b314b8f28b..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/function/ConstantViewPureTest.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.test.evm.v0_4_26.function; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_4_26.ConstantViewPure; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 验证constant,view,pure - * @description: - * @author: liweic - * @create: 2020/01/02 14:01 - **/ - -public class ConstantViewPureTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.ConstantViewPureTest-函数声明方式测试", sourcePrefix = "evm/0.4.26") - public void constantviewPure() { - try { - ConstantViewPure constantviewpure = ConstantViewPure.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = constantviewpure.getContractAddress(); - TransactionReceipt tx = constantviewpure.getTransactionReceipt().get(); - collector.logStepPass("ConstantViewPure deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("ConstantViewPure deploy gasUsed:" + constantviewpure.getTransactionReceipt().get().getGasUsed()); - - - TransactionReceipt age = constantviewpure.constantViewPure().send(); - collector.logStepPass("age交易Hash" + age.getTransactionHash()); - //验证constant声明 - BigInteger constantage = constantviewpure.getAgeByConstant().send(); - collector.logStepPass("constant声明函数后返回值:" + constantage); - collector.assertEqual(new BigInteger("20"),constantage); - - //验证view声明 - BigInteger viewage = constantviewpure.getAgeByView().send(); - collector.logStepPass("view声明函数后返回值:" + viewage); - collector.assertEqual(new BigInteger("20"),viewage); - - //验证pure声明 - BigInteger pureage = constantviewpure.getAgeByPure().send(); - collector.logStepPass("pure声明函数后返回值:" + pureage); - collector.assertEqual(new BigInteger("1"),pureage); - - - } catch (Exception e) { - collector.logStepFail("ConstantViewPureContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/innerContract/PlatonUnitTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/innerContract/PlatonUnitTest.java deleted file mode 100644 index b0235d2bae..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/innerContract/PlatonUnitTest.java +++ /dev/null @@ -1,74 +0,0 @@ -package network.platon.test.evm.v0_4_26.innerContract;//package network.platon.test.evm.innerContract; -// -//import network.platon.test.evm.beforetest.ContractPrepareTest; -//import network.platon.autotest.junit.annotations.DataSource; -//import network.platon.autotest.junit.enums.DataSourceType; -//import network.platon.contracts.evm.Guessing; -//import network.platon.contracts.evm.PlatonUnit; -//import org.junit.Before; -//import org.junit.Test; -//import org.web3j.protocol.core.DefaultBlockParameterName; -//import org.web3j.protocol.core.methods.response.TransactionReceipt; -//import org.web3j.tx.Transfer; -//import org.web3j.utils.Convert; -// -//import java.math.BigDecimal; -//import java.math.BigInteger; -// -///** -// * @title Platon金额单位测试 -// * @description: -// * @author: hudenian -// * @create: 2020/03/05 16:42 -// * -// **/ -// -//public class PlatonUnitTest extends ContractPrepareTest { -// private String endBlock = "100000000"; //设置竞猜截止块高 -// -// @Before -// public void before() { -// this.prepare(); -// } -// -// @Test -// @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", -// author = "hudenian", showName = "PlatonUnitTest-Platon金额单位测试", sourcePrefix = "network.platon.test.evm") -// public void unitTest() { -// -// try { -// -// PlatonUnit platonUnit = PlatonUnit.deploy(web3j, transactionManager, provider, chainId).send(); -// -// String contractAddress = platonUnit.getContractAddress(); -// TransactionReceipt tx = platonUnit.getTransactionReceipt().get(); -// collector.logStepPass("PlatonUnitTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); -// collector.logStepPass("PlatonUnitTest deploy gasUsed:" + platonUnit.getTransactionReceipt().get().getGasUsed()); -// -// //发起转账 -// Transfer transfer = new Transfer(web3j, transactionManager); -// TransactionReceipt transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.GLAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.MLAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.KLAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.LAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.FINNEY, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.SZABO, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.GVON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.MVON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.KVON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.VON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// -// //查询合约余额 -// String contractBalance = platonUnit.getBalance().send().toString(); -// collector.logStepPass("合约中的余额为:"+contractBalance); -// collector.assertEqual(contractBalance,"1001001001001001001001001001"); -// -// // -// -// -// } catch (Exception e) { -// collector.logStepFail("PlatonUnitTest Calling Method fail.", e.toString()); -// e.printStackTrace(); -// } -// } -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/regreetest/PlatONTransfer2Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/regreetest/PlatONTransfer2Test.java deleted file mode 100644 index 78f11e0b75..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/regreetest/PlatONTransfer2Test.java +++ /dev/null @@ -1,103 +0,0 @@ -package network.platon.test.evm.v0_4_26.regreetest;//package network.platon.test.evm.regreetest; -// -//import com.alibaba.fastjson.JSONArray; -//import network.platon.autotest.junit.annotations.DataSource; -//import network.platon.autotest.junit.enums.DataSourceType; -//import network.platon.autotest.junit.rules.AssertCollector; -//import network.platon.autotest.junit.rules.DriverService; -//import network.platon.autotest.utils.FileUtil; -//import network.platon.utils.OneselfFileUtil; -//import org.junit.Before; -//import org.junit.Rule; -//import org.junit.Test; -//import org.web3j.crypto.Credentials; -//import org.web3j.protocol.Web3j; -//import org.web3j.protocol.core.DefaultBlockParameterName; -//import org.web3j.protocol.core.methods.response.TransactionReceipt; -//import org.web3j.protocol.http.HttpService; -//import org.web3j.tx.RawTransactionManager; -//import org.web3j.tx.Transfer; -//import org.web3j.utils.Convert; -// -//import java.math.BigDecimal; -//import java.math.BigInteger; -//import java.nio.file.Paths; -// -// -///** -// * @title PlatON普通有回执转账交易 -// * @description: 步骤:账户A向账户B转账amount,预期1:账户A的余额减少amount,预期2:账户B的余额增加amount -// * @author: qcxiao -// * @create: 2019/12/16 11:03 -// **/ -//public class PlatONTransfer2Test { -// -// @Rule -// public DriverService driverService = new DriverService(); -// -// @Rule -// public AssertCollector collector = new AssertCollector(); -// -// // 底层链ID -// private long chainId; -// // 发行代币的地址 -// private String transferFrom; -// // 接收代币的地址 -// private String transferTo; -// private Web3j web3j; -// // 转账的金额 -// private String amount; -// -// @Before -// public void before() { -// chainId = Integer.valueOf(driverService.param.get("chainId")); -// //transferFrom = driverService.param.get("transferFrom"); -// transferFrom = driverService.param.get("address"); -// transferTo = driverService.param.get("transferTo"); -// amount = driverService.param.get("amount"); -// } -// -// @Test -// @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", -// author = "qcxiao", showName = "network.platon.test.evm.PlatonTransferTest-普通有回执转账交易", sourcePrefix = "network.platon.test.evm") -// public void testTransfer() { -// Credentials credentials = null; -// BigInteger nonce = null; -// try { -// web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); -// credentials = Credentials.create(driverService.param.get("privateKey")); -// -// -// String filePath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "lax_bech32_all_addr_and_private_keys.json").toUri().getPath()); -// String jsonContent = OneselfFileUtil.readFile(filePath); -// -// JSONArray jsonArray = JSONArray.parseArray(jsonContent); -// for (int i = 0; i < jsonArray.size(); i++) { -// Thread.sleep(1000); // 1680 -// transferTo = jsonArray.getJSONObject(i).getString("address"); -// try { -// RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); -// Transfer transfer = new Transfer(web3j, transactionManager); -// -// amount = "100000"; -// //TransactionReceipt transactionReceipt = transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.LAT).send(); -// -// transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.LAT).sendAsync(); -// -// //BigInteger endBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); -// //collector.logStepPass("transferTo:" + transferTo + ",endBalance:" + endBalance); -// collector.logStepPass("time:" + i); -// } catch (Exception e) { -// e.printStackTrace(); -// } -// -// } -// -// } catch (Exception e) { -// collector.logStepFail("transfer fail.", e.toString()); -// e.printStackTrace(); -// } -// -// } -// -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/regreetest/PlatONTransferTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/regreetest/PlatONTransferTest.java deleted file mode 100644 index f36c9e9a2a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_4_26/regreetest/PlatONTransferTest.java +++ /dev/null @@ -1,130 +0,0 @@ -package network.platon.test.evm.v0_4_26.regreetest; - -import com.alaya.bech32.Bech32; -import com.alaya.crypto.Credentials; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.PlatonGetTransactionCount; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.http.HttpService; -import com.alaya.tx.RawTransactionManager; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.autotest.junit.rules.AssertCollector; -import network.platon.autotest.junit.rules.DriverService; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; - -import java.math.BigDecimal; -import java.math.BigInteger; -import java.util.concurrent.ExecutionException; - - -/** - * @title PlatON普通有回执转账交易 - * @description: 步骤:账户A向账户B转账amount,预期1:账户A的余额减少amount,预期2:账户B的余额增加amount - * @author: qcxiao - * @create: 2019/12/16 11:03 - **/ -public class PlatONTransferTest { - - @Rule - public DriverService driverService = new DriverService(); - - @Rule - public AssertCollector collector = new AssertCollector(); - - // 底层链ID - private long chainId; - // 发行代币的地址 - private String transferFrom; - // 接收代币的地址 - private String transferTo; - private Web3j web3j; - // 转账的金额 - private String amount; - - @Before - public void before() { - chainId = Integer.valueOf(driverService.param.get("chainId")); - //transferFrom = driverService.param.get("transferFrom"); - transferFrom = driverService.param.get("address"); -// transferTo = "lax10eycqggu2yawpadtmn7d2zdw0vnmscklynzq8x"; //driverService.param.get("transferTo"); - transferTo = "atx10eycqggu2yawpadtmn7d2zdw0vnmscklcx6a9v"; //driverService.param.get("transferTo"); - amount = "1"; //driverService.param.get("amount"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "network.platon.test.evm.PlatonTransferTest-普通有回执转账交易", sourcePrefix = "evm/0.4.26") - public void testTransfer() { - Credentials credentials = null; - BigInteger nonce = null; - try { - web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); - //credentials = Credentials.create(driverService.param.get("privateKeyOfTransferFrom")); - credentials = Credentials.create(driverService.param.get("privateKey")); - collector.logStepPass("currentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); - //获取nonce,交易笔数 - transferFrom = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),transferFrom); - nonce = getNonce(transferFrom); - collector.logStepPass("nonce:" + nonce); - //transferTo = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),transferTo); - BigInteger initialBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("initialBalance:" + initialBalance); - - /* - //创建RawTransaction交易对象 - RawTransaction rawTransaction = RawTransaction.createEtherTransaction(nonce, new BigInteger("50000000000"), new BigInteger("3000000"), - transferTo, new BigInteger(amount)); - //签名Transaction,这里要对交易做签名 - byte[] signMessage = TransactionEncoder.signMessage(rawTransaction, chainId, credentials); - String hexValue = Numeric.toHexString(signMessage); - - //发送交易 - PlatonSendTransaction ethSendTransaction = web3j.platonSendRawTransaction(hexValue).send(); - //String hash = ethSendTransaction.getTransactionHash(); - */ - //RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - //Transfer transfer = new Transfer(web3j, transactionManager); - //TransactionReceipt transactionReceipt = transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.VON).send(); - - //TransactionReceipt transactionReceipt = Transfer.sendFunds(web3j, credentials, chainId, transferTo, new BigDecimal("1"), Convert.Unit.VON).send(); - - - TransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - Transfer transfer = new Transfer(web3j,transactionManager); - - TransactionReceipt transactionReceipt = transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.VON).send(); - - - BigInteger endBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("endBalance:" + endBalance); - collector.logStepPass("txHash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(endBalance.subtract(initialBalance).toString(), amount, "compare the balance after transfer"); - } catch (Exception e) { - collector.logStepFail("transfer fail.", e.toString()); - e.printStackTrace(); - } - - } - - /** - * 获取nonce,交易笔数 - * - * @param from - * @return - * @throws ExecutionException - * @throws InterruptedException - */ - private BigInteger getNonce(String from) throws ExecutionException, InterruptedException { - PlatonGetTransactionCount transactionCount = web3j.platonGetTransactionCount(from, DefaultBlockParameterName.LATEST).sendAsync().get(); - BigInteger nonce = transactionCount.getTransactionCount(); - return nonce; - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/complexcontracts/AtomicSwapTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/complexcontracts/AtomicSwapTest.java deleted file mode 100644 index e2abe79df7..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/complexcontracts/AtomicSwapTest.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.test.evm.v0_5_17.complexcontracts; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.AtomicSwap; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.util.List; - -/** - * 合约版本solidity ^0.5.17 - */ -public class AtomicSwapTest extends ContractPrepareTest { - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "complexcontracts.AtomicSwapTest", sourcePrefix = "evm/0.5.17") - public void test() { - try { - AtomicSwap atomicSwap = AtomicSwap.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = atomicSwap.getContractAddress(); - TransactionReceipt tx = atomicSwap.getTransactionReceipt().get(); - - collector.logStepPass( - "Token issued successfully.contractAddress:" + contractAddress + - ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + atomicSwap.getTransactionReceipt().get().getGasUsed()); - - - /* - * 方法作用:初始化一个map并且给定这个map的key转入多少金额 - * 参数:key、参与者地址(目前0.12.1的版本需要改为0x...)、时间戳(必须大于当前区块时间)、初始减去多少、初始转多少VON - */ -// tx = atomicSwap.initiate(stringToBytes32("hello"), "lax1uqug0zq7rcxddndleq4ux2ft3tv6dqljphydrl", new BigInteger("1690063146613"), BigInteger.valueOf(1), BigInteger.valueOf(100000)).send(); - tx = atomicSwap.initiate(stringToBytes32("hello"), "atx1uqug0zq7rcxddndleq4ux2ft3tv6dqljazusp4", new BigInteger("1690063146613"), BigInteger.valueOf(1), BigInteger.valueOf(100000)).send(); - - List emitEventData = atomicSwap.getInitiatedEvents(tx); - - System.out.println(emitEventData.get(0)._value); - - // 销毁合约 - // atomicSwap.destruct().send(); - } catch (Exception e) { - e.printStackTrace(); - } - - } - - public static byte[] stringToBytes32(String string) { - byte[] byteValue = string.getBytes(); - byte[] byteValueLen32 = new byte[32]; - System.arraycopy(byteValue, 0, byteValueLen32, 0, byteValue.length); - return byteValueLen32; - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/complexcontracts/BallotTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/complexcontracts/BallotTest.java deleted file mode 100644 index dd397ba11e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/complexcontracts/BallotTest.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.test.evm.v0_5_17.complexcontracts; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.http.HttpService; -import com.alaya.tx.RawTransactionManager; -import com.alaya.tx.gas.ContractGasProvider; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.autotest.junit.rules.AssertCollector; -import network.platon.autotest.junit.rules.DriverService; -import network.platon.contracts.evm.v0_5_17.Ballot; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 投票功能合约测试 - * @description: - * @author: qcxiao - * @create: 2019/12/18 15:09 - **/ -public class BallotTest { - @Rule - public AssertCollector collector = new AssertCollector(); - - @Rule - public DriverService driverService = new DriverService(); - - // 底层链ID - private long chainId; - - @Before - public void before() { - chainId = Integer.valueOf(driverService.param.get("chainId")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qcxiao" - , showName = "complexcontracts.BallotTest-投票功能合约", sourcePrefix = "evm/0.5.17") - public void testBallot() { - Web3j web3j = null; - Credentials credentials = null; - try { - web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); - credentials = Credentials.create(driverService.param.get("privateKey")); - collector.logStepPass("currentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("The node is unable to connect", e.toString()); - e.printStackTrace(); - } - - - ContractGasProvider provider = new ContractGasProvider(new BigInteger("50000000000"), new BigInteger("3000000")); - RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - - try { - Ballot ballot = Ballot.deploy(web3j, transactionManager, provider, chainId, BigInteger.valueOf(100)).send(); - - } catch (Exception e) { - collector.logStepFail("ballot deploy fail.", e.toString()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/complexcontracts/ERC200513TokenTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/complexcontracts/ERC200513TokenTest.java deleted file mode 100644 index 97738f25d9..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/complexcontracts/ERC200513TokenTest.java +++ /dev/null @@ -1,144 +0,0 @@ -package network.platon.test.evm.v0_5_17.complexcontracts; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.ERC200513Token; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigDecimal; -import java.math.BigInteger; - - -/** - * @title ERC200513Token测试 - * @description: 合约版本solidity ^0.5.17 - * @author: hudenian - * @create: 2019/12/28 - */ -public class ERC200513TokenTest extends ContractPrepareTest { - - //供应份额 - private String initialSupply; - - //代币名称 - private String tokenName; - - //代币简称 - private String tokenSymbol; - - //转出账号 - private String to; - - //转出金额 - private String value; - - //设置approveAddress可以创建交易者名义花费的代币数 - private String approveAddress; - - //设置approveAddress可以创建交易者名义花费的代币数approveValue - private String approveValue; - - //创建者销毁的代币数 - private String burnValue; - - - @Before - public void before() { - this.prepare(); - initialSupply = driverService.param.get("initialSupply"); - tokenName = driverService.param.get("tokenName"); - tokenSymbol = driverService.param.get("tokenSymbol"); - to = driverService.param.get("to"); - value = driverService.param.get("value"); - approveAddress = driverService.param.get("approveAddress"); - approveValue = driverService.param.get("approveValue"); - burnValue = driverService.param.get("burnValue"); - - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ERC200513TokenTest-测试0.5.13版本ERC20", sourcePrefix = "evm/0.5.17") - public void erc20Test() { - try { - - ERC200513Token eRC200513Token = ERC200513Token.deploy(web3j, transactionManager, provider, chainId, new BigInteger(initialSupply), tokenName, tokenSymbol).send(); - - String contractAddress = eRC200513Token.getContractAddress(); - TransactionReceipt tx = eRC200513Token.getTransactionReceipt().get(); - - collector.logStepPass("ERC200513Token deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + eRC200513Token.getTransactionReceipt().get().getGasUsed()); - - //获取代币名称 - String chainTokenName = eRC200513Token.getName().send().toString(); - collector.logStepPass("开始获取代币名称" + chainTokenName); - collector.assertEqual(tokenName, chainTokenName); - - //获取代币简称 - String chainTokenSymbol = eRC200513Token.getSymbol().send().toString(); - collector.logStepPass("开始获取代币简称" + chainTokenSymbol); - collector.assertEqual(tokenSymbol, chainTokenSymbol); - - //获取代币总发行量 - String chainInitialSupply = eRC200513Token.getTotalSupply().send().toString(); - collector.logStepPass("开始获取代币发行量" + chainInitialSupply); - collector.assertEqual(initialSupply + "000000000000000000", chainInitialSupply); - - //给to地址转账value值 - TransactionReceipt transactionReceipt = eRC200513Token.transfer(to, new BigInteger(value)).send(); - collector.logStepPass("发行账户向" + to + "转账" + value); - - collector.logStepPass("ERC200513Token transfer to " + to + " successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //查询to地址的余额 - String to_balance = eRC200513Token.getBalanceOf(to).send().toString(); - collector.logStepPass(to + "账户余额为:" + to_balance); - collector.assertEqual(to_balance, value); - - //查询from地址的余额 - String from_balance = eRC200513Token.getBalanceOf(walletAddress).send().toString(); - collector.logStepPass("转账后发行账户" + walletAddress + "余额为:" + from_balance); - collector.assertEqual(from_balance, new BigDecimal(chainInitialSupply).subtract(new BigDecimal(value)).toString()); - - //创建者设置approveAddress可以创建交易者名义花费的代币数为approveValue - transactionReceipt = eRC200513Token.approve(approveAddress, new BigInteger(approveValue)).send(); - collector.logStepPass("发行账户允许" + approveAddress + "账户以自己的名义花费的代币数为:" + approveValue); - - collector.logStepPass("ERC200513Token transfer to " + to + " successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //查询approveAddress可以从我的地址转出我代币数 - String chainApproveValue = eRC200513Token.getAllowance(walletAddress, approveAddress).send().toString(); - collector.logStepPass("发行账户允许" + approveAddress + "账户以自己的名义花费的代币数为:" + chainApproveValue); - collector.assertEqual(approveValue, chainApproveValue); - - //创建者销毁自己账户的指定的代币数 - transactionReceipt = eRC200513Token.burn(new BigInteger(burnValue)).send(); - collector.logStepPass("发行账销毁的代币数:" + burnValue); - - collector.logStepPass("ERC200513Token burn " + burnValue + " successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - - //查询from地址的余额 - String from_balance_afterBurn = eRC200513Token.getBalanceOf(walletAddress).send().toString(); - collector.logStepPass("发行都销毁" + burnValue + "后账户余额为" + from_balance_afterBurn); -// collector.assertEqual(from_balance,new BigDecimal(chainInitialSupply).subtract(new BigDecimal(value)).toString()); - - //销毁指定代币后获取总发行量 - String chainInitialSupply_after_burn = eRC200513Token.getTotalSupply().send().toString(); - collector.logStepPass("销毁指定代币后获取总发行量:" + chainInitialSupply_after_burn); - - - } catch (Exception e) { - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/complexcontracts/GuessingTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/complexcontracts/GuessingTest.java deleted file mode 100644 index 1b7cb5251e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/complexcontracts/GuessingTest.java +++ /dev/null @@ -1,114 +0,0 @@ -package network.platon.test.evm.v0_5_17.complexcontracts; - -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import network.platon.contracts.evm.v0_5_17.Guessing; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigDecimal; -import java.math.BigInteger; - -/** - * @title 竞猜合约测试 - * @description: - * @author: hudenian - * @create: 2020/03/04 16:42 - **/ - -public class GuessingTest extends ContractPrepareTest { - private String endBlock = "12823"; //设置竞猜截止块高 - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "function.GuessingTest-竞猜合约测试", sourcePrefix = "evm/0.5.17") - public void guessingTest() { - - try { - - Guessing guessing = Guessing.deploy(web3j, transactionManager, provider, chainId, new BigInteger(endBlock)).send(); - - String contractAddress = guessing.getContractAddress(); - TransactionReceipt tx = guessing.getTransactionReceipt().get(); - collector.logStepPass("GuessingTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("GuessingTest deploy gasUsed:" + guessing.getTransactionReceipt().get().getGasUsed()); - - //查询截止块高 - endBlock = guessing.endBlock().send().toString(); - collector.logStepPass("查询截止块高为:" + endBlock); - - //查询合约余额 - String contractBalance = guessing.getBalanceOf().send().toString(); - collector.assertEqual("0", contractBalance); - - - //查询总奖池 - String balance = guessing.balance().send().toString(); - collector.logStepPass("发起竞猜前奖池总金额为:" + balance); - - //发起转账(触发竞猜操作) - Transfer transfer = new Transfer(web3j, transactionManager); - TransactionReceipt transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1000"), Convert.Unit.ATP, new BigInteger("1000000000"), new BigInteger("4712388")).send(); - collector.logStepPass("gas used>>>>>>>" + transactionReceipt.getGasUsed().toString()); - - //查询合约余额 - contractBalance = guessing.getBalanceOf().send().toString(); - - balance = guessing.balance().send().toString(); - collector.logStepPass("发起第一次竞猜前奖池总金额为:" + balance); - - //发起竞猜(客户端发起的单位是von与 lat差10^18次方) - tx = guessing.guessingWithLat(new BigInteger("1000000000000000000000")).send(); - collector.logStepPass(tx.getLogs().toString()); - collector.logStepPass(" gas used>>>>>>>" + transactionReceipt.getGasUsed()); - - //自增序列下标 - String indexKey = guessing.indexKey().send().toString(); - collector.logStepPass("自增序列下标为:" + indexKey); - - //查询总奖池 - balance = guessing.balance().send().toString(); - collector.logStepPass("发起第二次竞猜后奖池总金额为:" + balance); - - contractBalance = guessing.getBalanceOf().send().toString(); - - //自增序列下标 - indexKey = guessing.indexKey().send().toString(); - collector.logStepPass("自增序列下标为:" + indexKey); - - //查询当前调用者余额 - BigInteger originBalance = web3j.platonGetBalance(credentials.getAddress(chainId), DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("开奖前用户账户余额为>>>" + originBalance); - - //查询当前块高 - long currentBlockNumber = new Long(web3j.platonBlockNumber().send().getBlockNumber().toString()).intValue(); - - //入参为截止块高的hash,真实环境需要从浏览器获取,此处为了测试方便直接从合约取当前块高hash - byte[] blockhash = guessing.generateBlockHash(new BigInteger(String.valueOf(currentBlockNumber - 20))).send(); - - - //开奖操作 - tx = guessing.draw(blockhash).send(); - collector.logStepPass(tx.getLogs().toString()); - - - //查询当前调用者余额 - BigInteger afterBalance = web3j.platonGetBalance(credentials.getAddress(chainId), DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("开奖后用户账户余额为>>>" + afterBalance); - - - } catch (Exception e) { - collector.logStepFail("GuessingTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/ControlTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/ControlTest.java deleted file mode 100644 index ff4b4df160..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/ControlTest.java +++ /dev/null @@ -1,147 +0,0 @@ -package network.platon.test.evm.v0_5_17.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.Control; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 控制结构 - * 1. if...else - * 2. do...while - * 3. for循环 - * 4. for循环包含break - * 5. for循环包含continue - * 6. for循环包含return - * 7. 三目运算符 - * @description: - * @author: hudenian - * @create: 2019/12/30 - */ -public class ControlTest extends ContractPrepareTest { - - //需要判断年龄的是否大于20的数值 - private String ifControlValue; - - //需要判断年龄的是否大于20的数值 - private String threeControlControlValue; - - @Before - public void before() { - this.prepare(); - ifControlValue = driverService.param.get("age"); - threeControlControlValue = driverService.param.get("age"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ControlTest-控制结构测试", sourcePrefix = "evm/0.5.17") - public void controlStructCheck() { - try { - - Control control = Control.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = control.getContractAddress(); - TransactionReceipt tx = control.getTransactionReceipt().get(); - - collector.logStepPass("ControlTest 常用控制结构功能测试"); - collector.logStepPass("deploy gas used:" + control.getTransactionReceipt().get().getGasUsed()); - - //1.if控制结构验证 ifControlValue - TransactionReceipt transactionReceipt = control.ifControl(new BigInteger(ifControlValue)).send(); - collector.logStepPass("ControlTest ifControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //if控制结构验证结果值 - String chainIfControlValue = control.getIfControlResult().send(); - collector.logStepPass( "if控制结构测试获取链上的结果是:" + chainIfControlValue); - collector.assertEqual(ifControlCheck(ifControlValue),chainIfControlValue); - - //2.doWhile控制结构 - transactionReceipt = control.doWhileControl().send(); - collector.logStepPass("ControlTest doWhileControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //doWhile控制结构执行结果值 - String chaindoWhileValue = control.getdoWhileResult().send().toString(); - collector.logStepPass( "doWhile控制结构执行结果是:" + chaindoWhileValue); - collector.assertEqual("45",chaindoWhileValue);//需要调整 - - //3.forControl控制结构 - transactionReceipt = control.forControl().send(); - collector.logStepPass("ControlTest forControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //forControl控制结构执行结果值 - String chainGetForControlValue = control.getForControlResult().send().toString(); - collector.logStepPass( "forControl控制结构执行结果是:" + chainGetForControlValue); - collector.assertEqual("45",chainGetForControlValue);//需要调整 - - //4. for循环包含break控制结构 - transactionReceipt = control.forBreakControl().send(); - collector.logStepPass("ControlTest forBreakControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //for循环包含break控制结构执行结果值 - String chainForBreakControlValue = control.getForBreakControlResult().send().toString(); - collector.logStepPass( "for循环包含break控制结构执行结果是:" + chainForBreakControlValue); - collector.assertEqual("1",chainForBreakControlValue);//需要调整 - - //5. for循环包含continue控制结构 - transactionReceipt = control.forContinueControl().send(); - collector.logStepPass("ControlTest forContinueControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - // for循环包含continue控制结构执行结果值 - String chainForContinueControlValue = control.getForContinueControlResult().send().toString(); - collector.logStepPass( " for循环包含continue控制结构执行结果是:" + chainForContinueControlValue); - collector.assertEqual("25",chainForContinueControlValue);//需要调整 - - //6. for循环包含return控制结构 - transactionReceipt = control.forReturnControl().send(); - collector.logStepPass("ControlTest forReturnControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //for循环包含return执行结果值 - String chainForReturnControlValue = control.getForReturnControlResult().send().toString(); - collector.logStepPass( "for循环包含return执行结果是:" + chainForReturnControlValue); - collector.assertEqual("10",chainForReturnControlValue);//需要调整 - - //7.三目运算符控制结构 - transactionReceipt = control.forThreeControlControl(new BigInteger(threeControlControlValue)).send(); - collector.logStepPass("ControlTest forThreeControlControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //三目运算符控制结构执行结果值 - String chainThreeControlControlValue = control.getForThreeControlControlResult().send().toString(); - collector.logStepPass( "三目运算符控制结构执行结果是:" + chainThreeControlControlValue); - collector.assertEqual(Integer.valueOf(threeControlControlValue).intValue()> 20?"less than 20":"more than 20",chainThreeControlControlValue);//需要调整 - - - - } catch (Exception e) { - collector.logStepFail("ControlTest controlStructCheck process fail.", e.toString()); - e.printStackTrace(); - } - } - - public static String ifControlCheck(String ifControlValue){ - int age = Integer.valueOf(ifControlValue); - String ifControlResult = ""; - if(age < 20){ - ifControlResult = "you are a young man"; - }else if (age < 60){ - ifControlResult = "you are a middle man"; - }else { - ifControlResult = "you are a old man"; - } - return ifControlResult; - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/DoWhileErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/DoWhileErrorTest.java deleted file mode 100644 index 794d8d4a3a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/DoWhileErrorTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_5_17.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.DoWhileError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * dowhile控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 11:09 - */ -public class DoWhileErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ControlTest-dowhile控制结构测试", sourcePrefix = "evm/0.5.17") - public void doWhileStruct() { - try { - - DoWhileError doWhileError = DoWhileError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = doWhileError.getContractAddress(); - TransactionReceipt tx = doWhileError.getTransactionReceipt().get(); - - collector.logStepPass("DoWhileErrorTest dowhile控制结构返回的结构体如果是指针需要提前初始化"); - collector.logStepPass("deploy gas used:" + doWhileError.getTransactionReceipt().get().getGasUsed()); - - //1.if控制结构验证 ifControlValue - Boolean doWhileFlg = doWhileError.getDoWhileControlRes().send(); - - collector.logStepPass( "DoWhileErrorTest 测试获取链上的结果是:" + doWhileFlg); - collector.assertEqual(false,doWhileFlg); - - } catch (Exception e) { - collector.logStepFail("DoWhileErrorTest process fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/ForErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/ForErrorTest.java deleted file mode 100644 index 0cb11b4122..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/ForErrorTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.evm.v0_5_17.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.ForError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * for控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 18:09 - */ -public class ForErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ForErrorTest-for控制结构测试", sourcePrefix = "evm/0.5.17") - public void forStruct() { - try { - - ForError forError = ForError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = forError.getContractAddress(); - TransactionReceipt tx = forError.getTransactionReceipt().get(); - - collector.logStepPass("ForErrorTest for控制结构返回的结构体如果是指针需要提前初始化"); - collector.logStepPass("deploy gas used:" + forError.getTransactionReceipt().get().getGasUsed()); - - //1.for控制结构验证 - Boolean forFlg = forError.getForControlRes().send(); - - collector.logStepPass( "ForErrorTest->getForControlRes 测试获取链上的结果是:" + forFlg); - collector.assertEqual(false,forFlg); - - //2.for控制结构验证 - Boolean forFlg1 = forError.getForControlRes1().send(); - - collector.logStepPass( "ForErrorTest->getForControlRes1测试获取链上的结果是:" + forFlg1); - collector.assertEqual(false,forFlg1); - - } catch (Exception e) { - collector.logStepFail("ForErrorTest testCase process fail",e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/IfErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/IfErrorTest.java deleted file mode 100644 index fe5e46b208..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/IfErrorTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.evm.v0_5_17.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.IfError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * for控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 11:09 - */ -public class IfErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ForErrorTest-for控制结构测试", sourcePrefix = "evm/0.5.17") - public void ifStruct() { - try { - - IfError ifError = IfError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = ifError.getContractAddress(); - TransactionReceipt tx = ifError.getTransactionReceipt().get(); - - collector.logStepPass("IfErrorTest if控制结构返回的结构体如果是指针需要提前初始化"); - collector.logStepPass("deploy gas used:" + ifError.getTransactionReceipt().get().getGasUsed()); - - //1.if控制结构验证 ifControlValue - Boolean ifFlg = ifError.getIfControlRes().send(); - - collector.logStepPass( "IfErrorTest 测试获取链上的结果是:" + ifFlg); - collector.assertEqual(false,ifFlg); - - //2.if控制结构验证 ifControlValue - Boolean ifFlg1 = ifError.getIfControlRes1().send(); - - collector.logStepPass( "IfErrorTest 测试获取链上的结果是:" + ifFlg1); - collector.assertEqual(false,ifFlg1); - - } catch (Exception e) { - collector.logStepFail("IfErrorTest testCase process fail",e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/ShortCircuitErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/ShortCircuitErrorTest.java deleted file mode 100644 index b9fea37a33..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/ShortCircuitErrorTest.java +++ /dev/null @@ -1,56 +0,0 @@ -package network.platon.test.evm.v0_5_17.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.ShortCircuitError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -/** - * && || 短路语法 - * - * @author hudenian - * @dev 2020/1/6 19:54 - */ -public class ShortCircuitErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ShortCircuitErrorTest-短路语法", sourcePrefix = "evm/0.5.17") - public void shortCircuitStruct() { - try { - - ShortCircuitError shortCircuitError = ShortCircuitError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = shortCircuitError.getContractAddress(); - TransactionReceipt tx = shortCircuitError.getTransactionReceipt().get(); - - collector.logStepPass("ShortCircuitError deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + shortCircuitError.getTransactionReceipt().get().getGasUsed()); - - - Boolean fFlg = shortCircuitError.getF().send(); - - collector.logStepPass( "ShortCircuitErrorTest 测试获取链上的结果是:" + fFlg); - collector.assertEqual(false,fFlg); - - - Boolean gflg = shortCircuitError.getG().send(); - - collector.logStepPass( "ShortCircuitErrorTest 测试获取链上的结果是:" + gflg); - collector.assertEqual(false,gflg); - - } catch (Exception e) { - collector.logStepFail("ShortCircuitErrorTest testCase process fail",e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/WhileErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/WhileErrorTest.java deleted file mode 100644 index fde456a7c2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/controlstruct/WhileErrorTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_5_17.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.WhileError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * for控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/7 13:42 - */ -public class WhileErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "WhileErrorTest-while控制结构测试", sourcePrefix = "evm/0.5.17") - public void whileStruct() { - try { - - WhileError whileError = WhileError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = whileError.getContractAddress(); - TransactionReceipt tx = whileError.getTransactionReceipt().get(); - - collector.logStepPass("WhileErrorTest for控制结构返回的结构体如果是指针类型需要提前初始化"); - collector.logStepPass("deploy gas used:" + whileError.getTransactionReceipt().get().getGasUsed()); - - //1.while控制结构验证 - Boolean whileFlg = whileError.getWhileControlRes().send(); - - collector.logStepPass( "WhileErrorTest->whileStruct 测试获取链上的结果是:" + whileFlg); - collector.assertEqual(false,whileFlg); - - } catch (Exception e) { - collector.logStepFail("WhileErrorTest testCase process fail",e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/createcontract/CreateContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/createcontract/CreateContractTest.java deleted file mode 100644 index 6cad912a3b..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/createcontract/CreateContractTest.java +++ /dev/null @@ -1,38 +0,0 @@ -package network.platon.test.evm.v0_5_17.createcontract; - -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_5_17.CreateContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title new关键字创建合约测试 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class CreateContractTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "albedo", showName = "createcontract.CreateContractTest-new创建合约", sourcePrefix = "evm/0.5.17") - public void testNewContract() { - try { - prepare(); - CreateContract createContract = CreateContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = createContract.getContractAddress(); - String transactionHash = createContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("CreateContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + createContract.getTransactionReceipt().get().getGasUsed()); - Tuple2 result = createContract.getTargetCreateContractData().send(); - Tuple2 expect = new Tuple2<>(new BigInteger("1000"),new BigInteger("0")); - collector.assertEqual(result, expect, "checkout new contract param"); - } catch (Exception e) { - collector.logStepFail("CreateContractTest testNewContract failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/crossContractCall/DelegatecallCaller050Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/crossContractCall/DelegatecallCaller050Test.java deleted file mode 100644 index 4d8d5b5eec..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/crossContractCall/DelegatecallCaller050Test.java +++ /dev/null @@ -1,74 +0,0 @@ -package network.platon.test.evm.v0_5_17.crossContractCall; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.DelegatecallCallee_050; -import network.platon.contracts.evm.v0_5_17.DelegatecallCaller_050; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * @title 0.5.0跨合约调用者, 修改的是调用者中的状态变量的值 - * @description: - * @author: hudenian - * @create: 2019/12/30 - */ -public class DelegatecallCaller050Test extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "DelegatecallCaller050Test-0.5.0跨合约调用者", sourcePrefix = "evm/0.5.17") - public void caller050Test() { - try { - //调用者合约地址 - DelegatecallCaller_050 delegatecallCaller_050 = DelegatecallCaller_050.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = delegatecallCaller_050.getContractAddress(); - TransactionReceipt tx = delegatecallCaller_050.getTransactionReceipt().get(); - collector.logStepPass("DelegatecallCaller_050 deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + delegatecallCaller_050.getTransactionReceipt().get().getGasUsed()); - - - //被调用者合约地址 - DelegatecallCallee_050 delegatecallCallee050 = DelegatecallCallee_050.deploy(web3j, transactionManager, provider, chainId).send(); - String calleeContractAddress = delegatecallCallee050.getContractAddress(); - TransactionReceipt tx1 = delegatecallCallee050.getTransactionReceipt().get(); - collector.logStepPass("delegatecallCallee050 deploy successfully.contractAddress:" + calleeContractAddress + ", hash:" + tx1.getTransactionHash()); - collector.logStepPass("deploy gas used:" + delegatecallCallee050.getTransactionReceipt().get().getGasUsed()); - - //查询调用者x值 - String callerX = delegatecallCaller_050.getCallerX().send().toString(); - collector.logStepPass("DelegatecallCaller_050 合约中X的值为:" + callerX); - - //查询被调用者x值 - String calleeX = delegatecallCallee050.getCalleeX().send().toString(); - collector.logStepPass("DelegatecallCallee_050 合约中X的值为:" + calleeX); - - - TransactionReceipt tx2 = delegatecallCaller_050.inc_delegatecall(calleeContractAddress).send(); - collector.logStepPass("执行跨合约调用后,hash:" + tx2.getTransactionHash()); - - //查询调用者x值 - String callerAfterX = delegatecallCaller_050.getCallerX().send().toString(); - collector.logStepPass("跨合约调用后,DelegatecallCaller 合约中X的值为:" + callerAfterX); - - //查询被调用者x值 - String calleeAfterX = delegatecallCallee050.getCalleeX().send().toString(); - collector.logStepPass("跨合约调用后,DelegatecallCallee_050 合约中X的值为:" + calleeAfterX); - - - } catch (Exception e) { - collector.logStepFail("DelegatecallCaller050Test process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/crossContractCall/DelegatecallCallerTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/crossContractCall/DelegatecallCallerTest.java deleted file mode 100644 index 3e39a45498..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/crossContractCall/DelegatecallCallerTest.java +++ /dev/null @@ -1,74 +0,0 @@ -package network.platon.test.evm.v0_5_17.crossContractCall; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.DelegatecallCallee; -import network.platon.contracts.evm.v0_5_17.DelegatecallCaller; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * @title 0.5.13跨合约调用者,修改的是调用者中的状态变量的值 - * @description: - * @author: hudenian - * @create: 2019/12/28 - */ -public class DelegatecallCallerTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "DelegatecallCallerTest-跨合约调用者", sourcePrefix = "evm/0.5.17") - public void crossContractCaller() { - try { - //调用者合约地址 - DelegatecallCaller delegatecallCaller = DelegatecallCaller.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = delegatecallCaller.getContractAddress(); - TransactionReceipt tx = delegatecallCaller.getTransactionReceipt().get(); - collector.logStepPass("DelegatecallCaller deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + delegatecallCaller.getTransactionReceipt().get().getGasUsed()); - - - //被调用者合约地址 - DelegatecallCallee delegatecallCallee = DelegatecallCallee.deploy(web3j, transactionManager, provider, chainId).send(); - String calleeContractAddress = delegatecallCallee.getContractAddress(); - TransactionReceipt tx1 = delegatecallCallee.getTransactionReceipt().get(); - collector.logStepPass("DelegatecallCallee deploy successfully.contractAddress:" + calleeContractAddress + ", hash:" + tx1.getTransactionHash()); - collector.logStepPass("deploy gas used:" + delegatecallCallee.getTransactionReceipt().get().getGasUsed()); - - //查询调用者x值 - String callerX = delegatecallCaller.getCallerX().send().toString(); - collector.logStepPass("DelegatecallCaller 合约中X的值为:"+callerX); - - //查询被调用者x值 - String calleeX = delegatecallCallee.getCalleeX().send().toString(); - collector.logStepPass("DelegatecallCallee 合约中X的值为:"+calleeX); - - - TransactionReceipt tx2 = delegatecallCaller.inc_delegatecall(calleeContractAddress).send(); - collector.logStepPass("执行跨合约调用后,hash:" + tx2.getTransactionHash()); - - //查询调用者x值 - String callerAfterX = delegatecallCaller.getCallerX().send().toString(); - collector.logStepPass("跨合约调用后,DelegatecallCaller 合约中X的值为:"+callerAfterX); - - //查询被调用者x值 - String calleeAfterX = delegatecallCallee.getCalleeX().send().toString(); - collector.logStepPass("跨合约调用后,DelegatecallCallee 合约中X的值为:"+calleeAfterX); - - - } catch (Exception e) { - collector.logStepFail("DelegatecallCallerTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/crossContractCall/ThreeContractCallTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/crossContractCall/ThreeContractCallTest.java deleted file mode 100644 index b76bb28c77..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/crossContractCall/ThreeContractCallTest.java +++ /dev/null @@ -1,94 +0,0 @@ -package network.platon.test.evm.v0_5_17.crossContractCall; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.CallerOne; -import network.platon.contracts.evm.v0_5_17.CallerThree; -import network.platon.contracts.evm.v0_5_17.CallerTwo; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * @title 0.5.13三个合约间跨合约调用 delegatecall只会修改第一个合约中的状态变量 - * @description: - * @author: hudenian - * @create: 2020/1/9 - */ -public class ThreeContractCallTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ThreeContractCallTest-三个合约间跨合约调用者", sourcePrefix = "evm/0.5.17") - public void threeContractCaller() { - try { - //第一个合约 - CallerOne callerOne = CallerOne.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = callerOne.getContractAddress(); - TransactionReceipt tx = callerOne.getTransactionReceipt().get(); - collector.logStepPass("CallerOne deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + callerOne.getTransactionReceipt().get().getGasUsed()); - - - //第二个合约 - CallerTwo callerTwo = CallerTwo.deploy(web3j, transactionManager, provider, chainId).send(); - String callerTwoContractAddress = callerTwo.getContractAddress(); - tx = callerTwo.getTransactionReceipt().get(); - collector.logStepPass("CallerTwo deploy successfully.contractAddress:" + callerTwoContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + callerTwo.getTransactionReceipt().get().getGasUsed()); - - //第三个合约 - CallerThree callerThree = CallerThree.deploy(web3j, transactionManager, provider, chainId).send(); - String callerThreeContractAddress = callerThree.getContractAddress(); - tx = callerThree.getTransactionReceipt().get(); - collector.logStepPass("DelegatecallCallee deploy successfully.contractAddress:" + callerThreeContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + callerThree.getTransactionReceipt().get().getGasUsed()); - - - - //查询第一个合约x值 - String callerOneX = callerOne.getCallerX().send().toString(); - collector.logStepPass("CallerOne 合约中X的值为:"+callerOneX); - - //查询第二个合约x值 - String callerTwoX = callerTwo.getCalleeX().send().toString(); - collector.logStepPass("CallerTwo 合约中X的值为:"+callerTwoX); - - //查询第三个合约x值 - String callerThreeX = callerThree.getCalleeThreeX().send().toString(); - collector.logStepPass("CallerThree 合约中X的值为:"+callerThreeX); - - - TransactionReceipt tx2 = callerOne.inc_delegatecall().send(); - collector.logStepPass("执行跨合约调用后,hash:" + tx2.getTransactionHash()); - - //查询第一个合约x值 - callerOneX = callerOne.getCallerX().send().toString(); - collector.logStepPass("CallerOne 合约中X的值为:"+callerOneX); - collector.assertEqual("1",callerOneX); - - //查询第二个合约x值 - callerTwoX = callerTwo.getCalleeX().send().toString(); - collector.logStepPass("CallerTwo 合约中X的值为:"+callerTwoX); - collector.assertEqual("0",callerTwoX); - - //查询第三个合约x值 - callerThreeX = callerThree.getCalleeThreeX().send().toString(); - collector.logStepPass("CallerThree 合约中X的值为:"+callerThreeX); - collector.assertEqual("0",callerThreeX); - - } catch (Exception e) { - collector.logStepFail("ThreeContractCallTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/crossContractCall/WithBackCallerTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/crossContractCall/WithBackCallerTest.java deleted file mode 100644 index f4220fc544..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/crossContractCall/WithBackCallerTest.java +++ /dev/null @@ -1,100 +0,0 @@ -package network.platon.test.evm.v0_5_17.crossContractCall; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.WithBackCallee; -import network.platon.contracts.evm.v0_5_17.WithBackCaller; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigDecimal; -import java.math.BigInteger; - - -/** - * @title 0.5.13跨合约调用者,接收返回值 - * @description: - * @author: hudenian - * @create: 2019/12/28 - */ -public class WithBackCallerTest extends ContractPrepareTest { - - //需要进行double的值 - private String doubleValue = "10"; - - //需要前缀hello的值 - private String helloValue = "hudenian"; - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "WithBackCallerTest-跨合约调用者对反回值进行编码与解码", sourcePrefix = "evm/0.5.17") - public void crossContractCaller() { - try { - //调用者合约地址 - WithBackCaller withBackCaller = WithBackCaller.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = withBackCaller.getContractAddress(); - TransactionReceipt tx = withBackCaller.getTransactionReceipt().get(); - collector.logStepPass("WithBackCaller deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + withBackCaller.getTransactionReceipt().get().getGasUsed()); - - - //被调用者合约地址 - WithBackCallee withBackCallee = WithBackCallee.deploy(web3j, transactionManager, provider, chainId).send(); - String calleeContractAddress = withBackCallee.getContractAddress(); - TransactionReceipt tx1 = withBackCallee.getTransactionReceipt().get(); - collector.logStepPass("WithBackCallee deploy successfully.contractAddress:" + calleeContractAddress + ", hash:" + tx1.getTransactionHash()); - collector.logStepPass("deploy gas used:" + withBackCallee.getTransactionReceipt().get().getGasUsed()); - - //数值类型跨合约调用 - TransactionReceipt tx2 = withBackCaller.callDoublelTest(calleeContractAddress,new BigInteger(doubleValue)).send(); - collector.logStepPass("WithBackCaller callDoublelTest successfully hash:" + tx2.getTransactionHash()); - //获取数值类型跨合约调用的结果 - String chainDoubleValue = withBackCaller.getuintResult().send().toString(); - collector.logStepPass("获取数值类型跨合约调用的结果值为:" + chainDoubleValue); - collector.assertEqual(new BigDecimal(doubleValue).multiply(new BigDecimal("2")),new BigDecimal(chainDoubleValue)); - - - //字符串类型跨合约调用 - tx2 = withBackCaller.callgetNameTest(calleeContractAddress,helloValue).send(); - collector.logStepPass("WithBackCaller callDoublelTest successfully hash:" + tx2.getTransactionHash()+"gas消耗值为:"+tx2.getGasUsed()); - //获取字符串类型跨合约调用 - String callerStringResult = withBackCaller.getStringResult().send().toString(); - collector.logStepPass("获取字符串类型跨合约调用的结果值为:" + callerStringResult); - collector.assertEqual(callerStringResult,"hello"+helloValue); - - - //调用被调用合约,指定足够的gas - tx2 = withBackCaller.callgetNameTestWithGas(calleeContractAddress,helloValue,new BigInteger("90000")).send(); - collector.logStepPass("withBackCaller callgetNameTestWithGas successfully hash:" + tx2.getTransactionHash()+"gas消耗值为:"+tx2.getGasUsed()); - //获取字符串类型跨合约调用 - callerStringResult = withBackCaller.getStringResult().send().toString(); - collector.logStepPass("调用被调用合约,指定足够的gas查询到的返回值为:" + callerStringResult); - collector.assertEqual(callerStringResult,"hellogashudenian"); - - //调用被调用合约,指定gas不足 - try { - tx2 = withBackCaller.callgetNameTestWithGas(calleeContractAddress, helloValue, new BigInteger("100")).send(); - - collector.logStepPass("withBackCaller callgetNameTestWithGas with less gas hash:" + tx2.getTransactionHash() + "gas消耗值为:" + tx2.getGasUsed()); - //获取字符串类型跨合约调用 - callerStringResult = withBackCaller.getStringResult().send().toString(); - collector.logStepPass("调用被调用合约,指定gas不足时查询到的返回值为:" + callerStringResult); - }catch(Exception e1){ - collector.logStepPass("指定gas不足时,调用合约失败!"); - } - - - } catch (Exception e) { - collector.logStepFail("WithBackCallerTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeConstantAddressTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeConstantAddressTest.java deleted file mode 100644 index ba0fcc1d50..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeConstantAddressTest.java +++ /dev/null @@ -1,86 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.BasicDataTypeConstantContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:合约字面常量地址Address - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeConstantAddressTest extends ContractPrepareTest { - - private String amountValue1; - private String amountValue2; - private String amountSumValue; - - @Before - public void before() { - this.prepare(); - amountValue1 = driverService.param.get("amountValue1"); - amountValue2 = driverService.param.get("amountValue2"); - amountSumValue = driverService.param.get("amountSumValue"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeConstantContractTest.合约地址Address常量",sourcePrefix = "evm/0.5.17") - public void testBasicDataTypeContract() { - - BasicDataTypeConstantContract basicDataTypeConstantContract = null; - try { - //合约部署 - basicDataTypeConstantContract = BasicDataTypeConstantContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeConstantContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeConstantContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeConstantContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:address类型,转账给指定地址 - try { - int expectValue = Integer.parseInt(amountSumValue); -// String myContractAddress = "lax132dnv620rmht2qxgfgvmkdqn0vz3vtkfw87hjs"; - String myContractAddress = "atx132dnv620rmht2qxgfgvmkdqn0vz3vtkfjjx2s6"; - - //1)、查询地址余额 - BigInteger contractBalance = basicDataTypeConstantContract.getBalance(myContractAddress).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 1)、查询地址余额 getBalance() successfully.contractBalance:" + contractBalance); - - //2)、查询当前转账人账户余额getBalance() - BigInteger currentTransferUserBalance = basicDataTypeConstantContract.getBalance(walletAddress).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 2)、转账人账户余额 getBalance() successfully.currentTransferUserBalance: " + currentTransferUserBalance); - - //3)、给当前地址第一次转账 - TransactionReceipt transactionReceipt = basicDataTypeConstantContract.goTransfer(myContractAddress,new BigInteger(amountValue1)).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 3)、给当前地址转账 goTransfer() successfully hash:" + transactionReceipt.getTransactionHash()); - - //4)、给当前地址第二次转账 - TransactionReceipt transactionReceipt1 = basicDataTypeConstantContract.goSend(myContractAddress,new BigInteger(amountValue2)).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 4)、给当前地址转账 goSend() successfully hash:" + transactionReceipt1.getTransactionHash()); - - //5)、查询转账完毕,地址余额 - BigInteger currentContractBalance = basicDataTypeConstantContract.getBalance(myContractAddress).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 5)、查询转账完毕,地址余额 getBalance() successfully currentContractBalance:" + currentContractBalance); - int actualValue = currentContractBalance.intValue() - contractBalance.intValue(); - - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeConstantContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeConstantContractTest.java deleted file mode 100644 index ff521ce678..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeConstantContractTest.java +++ /dev/null @@ -1,174 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple3; -import network.platon.contracts.evm.v0_5_17.BasicDataTypeConstantContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:合约基本数据类型字面常量 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeConstantContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeConstantContractTest.合约基本数据类型字面常量",sourcePrefix = "evm/0.5.17") - public void testBasicDataTypeContract() { - - BasicDataTypeConstantContract basicDataTypeConstantContract = null; - try { - //合约部署 - basicDataTypeConstantContract = BasicDataTypeConstantContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeConstantContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeConstantContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeConstantContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:address类型,获取当前合约余额 - try { - BigInteger expectValue = new BigInteger("0"); - //执行getCurrentBalance() - BigInteger actualValue = basicDataTypeConstantContract.getCurrentBalance().send(); - collector.logStepPass("BasicDataTypeConstantContract 执行查询当前合约中余额 getCurrentBalance() successfully contractBalance:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、验证:字符串字面常量,进行赋值 - try { - String expectValue = "hello"; - //执行getCurrentBalance() - String actualValue = basicDataTypeConstantContract.getStrA().send(); - collector.logStepPass("BasicDataTypeConstantContract 字符串字面常量进行赋值 执行getStrA() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、验证:字符串是特殊的动态长度字节数组,获取长度 - try { - BigInteger expectValue = new BigInteger("5"); - //执行getCurrentBalance() - BigInteger actualValue = basicDataTypeConstantContract.getStrALength().send(); - collector.logStepPass("BasicDataTypeConstantContract 验证字符串字面常量 执行getStrALength() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //4、验证:字符串是特殊的动态长度字节数组,进行转换 - try { - String expectValue = "aello"; - //赋值执行setStr1() - String actualValue = basicDataTypeConstantContract.setStrA().send(); - collector.logStepPass("BasicDataTypeConstantContract 验证字符串字面常量 执行setStrA() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //5、验证:十六进制字面常量,定义赋值取值 - try { - //执行getHexLiteral() - String expectValue = "c8"; - byte[] byteValue = basicDataTypeConstantContract.getHexLiteraA().send(); - String actualValue = DataChangeUtil.bytesToHex(byteValue); - collector.logStepPass("BasicDataTypeConstantContract 验证十六进制字面常量 执行getHexLiteraA() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - - //执行getHexLitera2() - String expectValue2 = "01f4"; - byte[] byteValue2 = basicDataTypeConstantContract.getHexLiteraB().send(); - String actualValue2 = DataChangeUtil.bytesToHex(byteValue2); - collector.logStepPass("BasicDataTypeConstantContract 验证十六进制字面常量 执行getHexLiteraB() successfully actualValue2:" + actualValue2); - collector.assertEqual(actualValue2,expectValue2, "checkout execute success."); - - //执行getHexLitera3() - String expectValueA = "01f4"; - String expectValueB = "01"; - String expectValueC = "f4"; - Tuple3 tuple3 = basicDataTypeConstantContract.getHexLiteraC().send(); - String actualValueA = DataChangeUtil.bytesToHex(tuple3.getValue1()); - String actualValueB = DataChangeUtil.bytesToHex(tuple3.getValue2()); - String actualValueC = DataChangeUtil.bytesToHex(tuple3.getValue3()); - collector.logStepPass("BasicDataTypeConstantContract 验证十六进制字面常量 执行getHexLiteraC() successfully actualValueA:" + actualValueA + - ", actualValueB:" + actualValueB + ", actualValueC:" + actualValueC); - - collector.assertEqual(actualValueA,expectValueA, "checkout execute success."); - collector.assertEqual(actualValueB,expectValueB, "checkout execute success."); - collector.assertEqual(actualValueC,expectValueC, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //6、验证:枚举类型 - try { - BigInteger expectValue1 = new BigInteger("1"); - BigInteger expectValue2 = new BigInteger("3"); - //执行getSeason1() - BigInteger actualValue1 = basicDataTypeConstantContract.getSeasonA().send(); - collector.logStepPass("BasicDataTypeConstantContract 验证枚举类型执行 getSeasonA() successfully actualValue1:" + actualValue1); - collector.assertEqual(actualValue1,expectValue1, "checkout execute success."); - - //执行getSeason2() - BigInteger actualValue2 = basicDataTypeConstantContract.getSeasonB().send(); - collector.logStepPass("BasicDataTypeConstantContract 验证枚举类型执行 getSeasonB() successfully actualValue2:" + actualValue2); - collector.assertEqual(actualValue2,expectValue2, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //7、验证:有理数常量 - try { - BigInteger expectValue1 = new BigInteger("3"); - BigInteger expectValue2 = new BigInteger("20000000000"); - BigInteger expectValue3 = new BigInteger("3000000000000000"); - //执行getValue() - Tuple3 tuple3 = basicDataTypeConstantContract.getValue().send(); - BigInteger actualValue1 = tuple3.getValue1(); - BigInteger actualValue2 = tuple3.getValue2(); - BigInteger actualValue3 = tuple3.getValue3(); - - collector.logStepPass("BasicDataTypeConstantContract 验证有理数常量执行 getValue() successfully actualValue1:" + actualValue1 + - ", actualValue2: " + actualValue2 + ", actualValue3:" + actualValue3) ; - collector.assertEqual(actualValue1,expectValue1, "checkout execute success."); - collector.assertEqual(actualValue2,expectValue2, "checkout execute success."); - collector.assertEqual(actualValue3,expectValue3, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeContractTest.java deleted file mode 100644 index 1294b0cb97..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeContractTest.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.BasicDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:合约基本数据类型 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeUintOverTest.合约基本数据类型",sourcePrefix = "evm/0.5.17") - public void testBasicDataTypeContract() { - - BasicDataTypeContract basicDataTypeContract = null; - try { - //合约部署 - basicDataTypeContract = BasicDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:定长字节数组 - try { - BigInteger expectLength = new BigInteger("2"); - //赋值执行getBytes1Length() - BigInteger actualLength = basicDataTypeContract.getBytes1Length().send(); - collector.logStepPass("BasicDataTypeContract 执行getBytes1Length() successfully actualValue:" + actualLength); - collector.assertEqual(actualLength,expectLength, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、验证:变长字节数组 - try { - BigInteger expectLength = new BigInteger("3"); - //赋值执行getBytesLength() - BigInteger actualLength = basicDataTypeContract.getBytesLength().send(); - collector.logStepPass("BasicDataTypeContract 执行getBytesLength() successfully actualValue:" + actualLength); - collector.assertEqual(actualLength,expectLength, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeDeleteContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeDeleteContractTest.java deleted file mode 100644 index 7304c9f0ff..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeDeleteContractTest.java +++ /dev/null @@ -1,132 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tuples.generated.Tuple6; -import network.platon.contracts.evm.v0_5_17.BasicDataTypeDeleteContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:数据类型操作符delete - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeDeleteContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeDelete.数据类型操作符delete",sourcePrefix = "evm/0.5.17") - public void testBasicDataTypeContract() { - BasicDataTypeDeleteContract basicDataTypeDeleteContract = null; - try { - //合约部署 - basicDataTypeDeleteContract = BasicDataTypeDeleteContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeDeleteContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeDeleteContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeDelete issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、delete基本数据类型 - try { - //初始化赋值 - TransactionReceipt initTx = basicDataTypeDeleteContract.initBasicData().send(); - collector.logStepPass("BasicDataTypeDelete 【执行初始化赋值操作 initBasicData()】successfully hash:" + initTx.getTransactionHash()); - //执行delete基本数据类型 - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteBasicData().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete基本数据类型 deleteBasicData()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取基本数据类型数值 - Tuple6 tuple6 = basicDataTypeDeleteContract.getBasicData().send(); - collector.logStepPass("BasicDataTypeDelete 【执行获取基本数据类型数值】successfully value:" + tuple6.toString()); - Boolean boolActual = tuple6.getValue1(); - BigInteger uintActual = tuple6.getValue2(); - String addrStr = tuple6.getValue3(); - byte[] bytesActual = tuple6.getValue4(); - String str = tuple6.getValue5(); - BigInteger intActual = tuple6.getValue6(); - collector.assertEqual(boolActual,false, "checkout delete bool execute success."); - collector.assertEqual(uintActual,new BigInteger("0"), "checkout delete uint execute success."); -// collector.assertEqual(addrStr,"lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmscn5j", "checkout delete address execute success."); - collector.assertEqual(addrStr,"atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc", "checkout delete address execute success."); - //collector.assertEqual(bytesActual,new byte[]("0x0"), "checkout delete bytes execute success."); - collector.assertEqual(str,"", "checkout delete string execute success."); - collector.assertEqual(intActual,new BigInteger("0"), "checkout delete int execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、delete结构体 - try { - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteStruct().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete结构体 deleteStruct()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取结构体数值 - Tuple2 tuple2 =basicDataTypeDeleteContract.getStruct().send(); - collector.logStepPass("BasicDataTypeDelete 【执行获取结构体数值】successfully value:" + tuple2.toString()); - BigInteger uintActual = tuple2.getValue1(); - String addrStr = tuple2.getValue2(); - collector.assertEqual(uintActual,new BigInteger("0"), "checkout delete struct execute success."); - collector.assertEqual(addrStr,"", "checkout delete struct execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、delete数组 - try { - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteArray().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete数组 deleteArray()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取数组长度 - BigInteger arrayLength =basicDataTypeDeleteContract.getArrayLength().send(); - collector.logStepPass("BasicDataTypeDelete 【获取数组长度】successfully value:" + arrayLength); - collector.assertEqual(arrayLength,new BigInteger("0"), "checkout delete struct execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、delete枚举 - try { - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteEnum().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete枚举 deleteEnum()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取枚举值 - BigInteger enumValue =basicDataTypeDeleteContract.getEnum().send(); - collector.logStepPass("BasicDataTypeDelete 【获取枚举数值】successfully value:" + enumValue); - collector.assertEqual(enumValue,new BigInteger("0"), "checkout delete struct execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //4、deleteMapping - try { - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteMapping().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete映射 deleteMapping()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取映射值 - BigInteger mappingValue =basicDataTypeDeleteContract.getMapping().send(); - collector.logStepPass("BasicDataTypeDelete 【获取映射数值】successfully value:" + mappingValue); - collector.assertEqual(mappingValue,new BigInteger("0"), "checkout delete struct execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeIntOverTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeIntOverTest.java deleted file mode 100644 index 0d4f87a1a1..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeIntOverTest.java +++ /dev/null @@ -1,66 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.BasicDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:有符号8位整数数据溢出(8位有符号整数取值范围-128~127) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeIntOverTest extends ContractPrepareTest { - - private String uintParam; - private String resultParam; - - - @Before - public void before() { - this.prepare(); - uintParam = driverService.param.get("uintParam"); - resultParam = driverService.param.get("resultParam"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeUintOverTest.有符号8位整数数据溢出",sourcePrefix = "evm/0.5.17") - public void testBasicDataTypeContract() { - - BasicDataTypeContract basicDataTypeContract = null; - try { - //合约部署 - basicDataTypeContract = BasicDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //验证:有符号8位整数溢出(8位有符号整数取值范围-128~127) - try { - BigInteger resultValue = new BigInteger(resultParam); - //赋值执行addIntOverflow() - BigInteger actualValue = basicDataTypeContract.addIntOverflow(new BigInteger(uintParam)).send(); - collector.logStepPass("BasicDataTypeContract 执行addIntOverflow() successfully actualValue:" + actualValue + ",resultValue:" + resultValue); - collector.assertEqual(actualValue,resultValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeUintOverTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeUintOverTest.java deleted file mode 100644 index 738e4c9d42..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/BasicDataType/BasicDataTypeUintOverTest.java +++ /dev/null @@ -1,66 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.BasicDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:无符号8位整数数据溢出(8位无符号整数取值范围0~255) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeUintOverTest extends ContractPrepareTest { - - private String uintParam; - private String resultParam; - - - @Before - public void before() { - this.prepare(); - uintParam = driverService.param.get("uintParam"); - resultParam = driverService.param.get("resultParam"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeUintOverTest.无符号8位整数数据溢出",sourcePrefix = "evm/0.5.17") - public void testBasicDataTypeContract() { - - BasicDataTypeContract basicDataTypeContract = null; - try { - //合约部署 - basicDataTypeContract = BasicDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:无符号8位整数数据溢出(8位无符号整数取值范围0~255) - try { - BigInteger resultValue = new BigInteger(resultParam); - //赋值执行addUintOverflow() - BigInteger actualValue = basicDataTypeContract.addUintOverflow(new BigInteger(uintParam)).send(); - collector.logStepPass("BasicDataTypeContract 执行addUintOverflow() successfully actualValue:" + actualValue +",resultValue:"+ resultValue); - collector.assertEqual(actualValue,resultValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/MappingData/MappingArrayDataTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/MappingData/MappingArrayDataTypeContractTest.java deleted file mode 100644 index 7df28f56d2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/MappingData/MappingArrayDataTypeContractTest.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.MappingData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple4; -import network.platon.contracts.evm.v0_5_17.MappingArrayDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:验证mapping数组类型 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class MappingArrayDataTypeContractTest extends ContractPrepareTest { - - private String keyValue,a1Value,a2Value,b1Value,b2Value; - - @Before - public void before() { - this.prepare(); - keyValue = driverService.param.get("keyValue"); - a1Value = driverService.param.get("a1Value"); - a2Value = driverService.param.get("a2Value"); - b1Value = driverService.param.get("b1Value"); - b2Value = driverService.param.get("b2Value"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "MappingDataTypeContract.mapping数组类型",sourcePrefix = "evm/0.5.17") - public void testMappingContract() { - - MappingArrayDataTypeContract mappingArrayDataTypeContract = null; - try { - //合约部署 - mappingArrayDataTypeContract = MappingArrayDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = mappingArrayDataTypeContract.getContractAddress(); - TransactionReceipt tx = mappingArrayDataTypeContract.getTransactionReceipt().get(); - collector.logStepPass("mappingArrayDataTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("mappingArrayDataTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - //1、执行mapping数组赋值 - try { - BigInteger keyValueBig = new BigInteger(keyValue); - BigInteger a1ValueBig = new BigInteger(a1Value); - BigInteger a2ValueBig = new BigInteger(a2Value); - BigInteger b1ValueBig = new BigInteger(b1Value); - BigInteger b2ValueBig = new BigInteger(b2Value); - TransactionReceipt transactionReceipt = mappingArrayDataTypeContract.set(keyValueBig,a1ValueBig,a2ValueBig,b1ValueBig,b2ValueBig).send(); - collector.logStepPass("mappingArrayDataTypeContract 【执行mapping数组赋值 set()】 successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取值getValueByKey() - Tuple4 tuple4 = mappingArrayDataTypeContract.getValueByKey(keyValueBig).send(); - BigInteger actualValue1 = tuple4.getValue1(); - BigInteger actualValue2 = tuple4.getValue2(); - BigInteger actualValue3 = tuple4.getValue3(); - BigInteger actualValue4 = tuple4.getValue4(); - collector.logStepPass("mappingArrayDataTypeContract 【执行获取值getValueByKey()】 successful actualValue:" + tuple4.toString()); - collector.assertEqual(actualValue1,a1ValueBig, "checkout execute success."); - collector.assertEqual(actualValue2,a2ValueBig, "checkout execute success."); - collector.assertEqual(actualValue3,b1ValueBig, "checkout execute success."); - collector.assertEqual(actualValue4,b2ValueBig, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("mappingArrayDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/MappingData/MappingDataTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/MappingData/MappingDataTypeContractTest.java deleted file mode 100644 index 8919c56a50..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/MappingData/MappingDataTypeContractTest.java +++ /dev/null @@ -1,66 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.MappingData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.MappingDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:映射(Mapping)定义赋值取值 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class MappingDataTypeContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "MappingDataTypeContract.映射(Mapping)定义赋值取值",sourcePrefix = "evm/0.5.17") - public void testMappingContract() { - - MappingDataTypeContract mappingContractTest = null; - try { - //合约部署 - mappingContractTest = MappingDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = mappingContractTest.getContractAddress(); - TransactionReceipt tx = mappingContractTest.getTransactionReceipt().get(); - collector.logStepPass("MappingContractTest issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("MappingContractTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:数组的声明及初始化及取值(定长数组、可变数组) - try { - String expectValue = "Lucy"; - BigInteger index = new BigInteger("0"); - //赋值执行addName() - TransactionReceipt transactionReceipt = mappingContractTest.addName().send(); - collector.logStepPass("MappingContractTest 执行addName() successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取值getName() - String actualValue = mappingContractTest.getName(index).send(); - collector.logStepPass("调用合约getName()方法完毕 successful actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("MappingContractTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ContractArrayTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ContractArrayTest.java deleted file mode 100644 index 26648bdd6c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ContractArrayTest.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.ContractArray; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; - -import org.junit.Before; -import org.junit.Test; - -import java.util.List; - -/** - * @title 验证ContractArray - * @description: - * @author: liweic - * @create: 2020/01/11 19:01 - **/ - -public class ContractArrayTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "data_type.ContractArrayTest-合约数组测试",sourcePrefix = "evm/0.5.17") - public void Contractarray() { - try { - ContractArray contractarray = ContractArray.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = contractarray.getContractAddress(); - TransactionReceipt tx = contractarray.getTransactionReceipt().get(); - collector.logStepPass("ContractArray deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - - //验证合约数组 - TransactionReceipt resultA = contractarray.f().send(); - - String getx = contractarray.getx().send(); - collector.logStepPass("合约数组X返回值:" + getx); - collector.assertEqual(getx.toLowerCase() ,contractAddress); - - List gety = contractarray.gety().send(); - String addressy = gety.get(3).toString(); - collector.logStepPass("合约数组Y返回值:" + addressy); - collector.assertEqual(addressy.toLowerCase() ,contractAddress); - - - - } catch (Exception e) { - collector.logStepFail("ContractArrayContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeArrayComplexTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeArrayComplexTest.java deleted file mode 100644 index de45003f35..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeArrayComplexTest.java +++ /dev/null @@ -1,76 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.ReferenceDataTypeArrayComplexContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - -/** - * @title 测试:验证含数组(Array)运算逻辑合约 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeArrayComplexTest extends ContractPrepareTest { - - private String a,b,c,d,e; - private String sum; - - - @Before - public void before() { - this.prepare(); - a = driverService.param.get("a"); - b = driverService.param.get("b"); - c = driverService.param.get("c"); - d = driverService.param.get("d"); - e = driverService.param.get("e"); - sum = driverService.param.get("sum"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeArrayComplex.含数组(Array)运算逻辑合约",sourcePrefix = "evm/0.5.17") - public void testReferenceDataTypeArrayTest() { - try{ - ReferenceDataTypeArrayComplexContract referenceDataTypeArrayComplex = null; - referenceDataTypeArrayComplex = ReferenceDataTypeArrayComplexContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayComplex.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayComplex.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeArrayComplex issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - if(getIntParam("seq") == 3){ - List array = new ArrayList(); - BigInteger actualValue = referenceDataTypeArrayComplex.sumComplexArray(array).send(); - collector.logStepPass("referenceDataTypeArrayComplex 执行sumComplexArray() successfully.hash:" + actualValue); - collector.assertEqual(actualValue,BigInteger.ZERO, "checkout execute success."); - return; - } - BigInteger sumBig = new BigInteger(sum); - List array = new ArrayList(); - array.add(new BigInteger(a)); - array.add(new BigInteger(b)); - array.add(new BigInteger(c)); - array.add(new BigInteger(d)); - array.add(new BigInteger(e)); - - //赋值执行sumComplexArray() - BigInteger actualValue = referenceDataTypeArrayComplex.sumComplexArray(array).send(); - collector.logStepPass("referenceDataTypeArrayComplex 执行sumComplexArray() successfully.hash:" + actualValue); - collector.assertEqual(actualValue,sumBig, "checkout execute success."); - }catch (Exception e){ - collector.logStepFail(Thread.currentThread().getStackTrace()[1].getMethodName() + " fail.", e.getMessage()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeArrayMethodTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeArrayMethodTest.java deleted file mode 100644 index 1582defc1d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeArrayMethodTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.ReferenceDataTypeArrayContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:数组(Array)方法 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeArrayMethodTest extends ContractPrepareTest { - - private String insertValue; - private String arrayLength; - - @Before - public void before() { - this.prepare(); - insertValue = driverService.param.get("insertValue"); - arrayLength = driverService.param.get("arrayLength"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeMultiArrayContractTest.数组(Array)方法",sourcePrefix = "evm/0.5.17") - public void testReferenceDataTypeArrayTest() { - - ReferenceDataTypeArrayContract referenceDataTypeArrayContract = null; - try { - //合约部署 - referenceDataTypeArrayContract = ReferenceDataTypeArrayContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayContract.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeArrayContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //验证:数组的属性及方法 - try { - BigInteger expectLength = new BigInteger(arrayLength); - //赋值执行setArrayPush() - TransactionReceipt transactionReceipt = referenceDataTypeArrayContract.setArrayPush(insertValue).send(); - collector.logStepPass("ReferenceDataTypeArrayContract 执行setArrayPush() successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取数组长度getArrayLength() - BigInteger actualLength = referenceDataTypeArrayContract.getArrayLength().send(); - collector.logStepPass("调用合约getArrayLength()方法完毕 successful actualLength:" + actualLength); - collector.assertEqual(actualLength,expectLength, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeArrayOperatorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeArrayOperatorTest.java deleted file mode 100644 index 95002557d3..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeArrayOperatorTest.java +++ /dev/null @@ -1,105 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tuples.generated.Tuple5; -import network.platon.contracts.evm.v0_5_17.ReferenceDataTypeArrayOperatorContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:验证数组支持的运算符 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeArrayOperatorTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeArray.数组支持的运算符",sourcePrefix = "evm/0.5.17") - public void testReferenceDataTypeArrayTest() { - - ReferenceDataTypeArrayOperatorContract referenceDataTypeArrayOperator = null; - try { - //合约部署 - referenceDataTypeArrayOperator = ReferenceDataTypeArrayOperatorContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayOperator.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayOperator.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeArrayOperator issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeArrayOperator deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //1、比较运算符 arrayCompare() - Tuple5 tuple5 = referenceDataTypeArrayOperator.arrayCompare().send(); - boolean actualValue1 = tuple5.getValue1(); - boolean actualValue2 = tuple5.getValue2(); - boolean actualValue3 = tuple5.getValue3(); - boolean actualValue4 = tuple5.getValue4(); - boolean actualValue5 = tuple5.getValue5(); - - collector.logStepPass("执行【比较运算符 arrayCompare()】 successfully.hash:" + tuple5.toString()); - collector.assertEqual(actualValue1,true, "checkout < execute success."); - collector.assertEqual(actualValue2,false, "checkout > execute success."); - collector.assertEqual(actualValue3,true, "checkout == execute success."); - collector.assertEqual(actualValue4,true, "checkout != execute success."); - collector.assertEqual(actualValue5,true, "checkout >= execute success."); - - //2、&(按位与) - Tuple2 tuple2 =referenceDataTypeArrayOperator.arrayBitAndOperators().send(); - BigInteger andOperatorsValue = tuple2.getValue2(); - collector.logStepPass("执行【&(按位与) arrayBitAndOperators()】 successfully.hash:" + tuple2.toString()); - collector.assertEqual(andOperatorsValue,new BigInteger("128"), "checkout execute success."); - - //3、|(按位或) - Tuple2 tuple3 =referenceDataTypeArrayOperator.arrayBitOrOperators().send(); - BigInteger orOperatorsValue = tuple3.getValue2(); - collector.logStepPass("执行【|(按位或) arrayBitOrOperators()】 successfully.hash:" + tuple3.toString()); - collector.assertEqual(orOperatorsValue,new BigInteger("129"), "checkout execute success."); - - //4、~(按位取反) - Tuple2 tuple4 =referenceDataTypeArrayOperator.arrayBitInverseOperators().send(); - BigInteger inverseOperatorsValue = tuple4.getValue2(); - collector.logStepPass("执行【~(按位取反) arrayBitInverseOperators()】 successfully.hash:" + tuple4.toString()); - collector.assertEqual(inverseOperatorsValue,new BigInteger("126"), "checkout execute success."); - - //5、^(按位异或) - Tuple2 tuple6 =referenceDataTypeArrayOperator.arrayBitXOROperators().send(); - BigInteger xOROperatorsValue = tuple6.getValue2(); - collector.logStepPass("执行【^(按位异或) arrayBitXOROperators()】 successfully.hash:" + tuple6.toString()); - collector.assertEqual(xOROperatorsValue,new BigInteger("1"), "checkout execute success."); - - //6、<<(左移位) - Tuple2 tuple7 =referenceDataTypeArrayOperator.arrayBitLeftShiftperators().send(); - BigInteger leftShiftperatorsValue = tuple7.getValue2(); - collector.logStepPass("执行【<<(左移位) arrayBitLeftShiftperators()】 successfully.hash:" + tuple7.toString()); - collector.assertEqual(leftShiftperatorsValue,new BigInteger("2"), "checkout execute success."); - - //7、<<(右移位) - Tuple2 tuple8 =referenceDataTypeArrayOperator.arrayBitRightShiftperators().send(); - BigInteger rightShiftperatorsValue = tuple8.getValue2(); - collector.logStepPass("执行【<<(右移位) arrayBitLeftShiftperators()】 successfully.hash:" + tuple8.toString()); - collector.assertEqual(rightShiftperatorsValue,new BigInteger("64"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeArrayOperator Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeMultiArrayContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeMultiArrayContractTest.java deleted file mode 100644 index 4a03cadc7d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeMultiArrayContractTest.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_5_17.ReferenceDataTypeArrayContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:多维数组声明及初始化及取值 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeMultiArrayContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeMultiArray.多维数组声明及初始化及取值",sourcePrefix = "evm/0.5.17") - public void testReferenceDataTypeArrayTest() { - - ReferenceDataTypeArrayContract referenceDataTypeArrayContract = null; - try { - //合约部署 - referenceDataTypeArrayContract = ReferenceDataTypeArrayContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayContract.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeArrayContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - - //验证:多维数组声明及初始化及取值 - try { - BigInteger expectValue = new BigInteger("100"); - BigInteger expectLength = new BigInteger("2"); - //赋值执行setMultiArray() - TransactionReceipt transactionReceipt = referenceDataTypeArrayContract.setMultiArray().send(); - collector.logStepPass("ReferenceDataTypeArrayContract 执行setMultiArray() successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取值getMultiArray() - Tuple2 tuple2 = referenceDataTypeArrayContract.getMultiArray().send(); - BigInteger actualValue = tuple2.getValue1(); - BigInteger actualLength = tuple2.getValue2(); - - collector.logStepPass("调用合约setMultiArray() 方法完毕 successful actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout value execute success."); - collector.assertEqual(actualLength,expectLength, "checkout length execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeSetArrayContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeSetArrayContractTest.java deleted file mode 100644 index 8313bd96d7..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeSetArrayContractTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.ReferenceDataTypeArrayContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:数组(Array)赋值取值及方法 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeSetArrayContractTest extends ContractPrepareTest { - - private String insertNo; - private String insertValue; - - @Before - public void before() { - this.prepare(); - insertNo = driverService.param.get("insertNo"); - insertValue = driverService.param.get("insertValue"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeArray.数组的声明及初始化及取值",sourcePrefix = "evm/0.5.17") - public void testReferenceDataTypeArrayTest() { - - ReferenceDataTypeArrayContract referenceDataTypeArrayContract = null; - try { - //合约部署 - referenceDataTypeArrayContract = ReferenceDataTypeArrayContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayContract.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeArrayContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:数组的声明及初始化及取值(定长数组、可变数组) - try { - BigInteger index = new BigInteger(insertNo); - BigInteger value = new BigInteger(insertValue); - //赋值执行setArray() - TransactionReceipt transactionReceipt = referenceDataTypeArrayContract.setArray(index,value).send(); - collector.logStepPass("ReferenceDataTypeArrayContract 执行setArray() successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取值getArray() - BigInteger actualValue = referenceDataTypeArrayContract.getArray(index).send(); - collector.logStepPass("调用合约getArray()方法完毕 successful actualValue:" + actualValue); - collector.assertEqual(actualValue,value, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeStructContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeStructContractTest.java deleted file mode 100644 index 5b4fb81106..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeStructContractTest.java +++ /dev/null @@ -1,104 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple4; -import network.platon.contracts.evm.v0_5_17.ReferenceDataTypeStructContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:结构体定义、赋值及取值 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeStructContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeStructContractTest.结构体定义、赋值及取值",sourcePrefix = "evm/0.5.17") - public void testReferenceDataTypeStructTest() { - - ReferenceDataTypeStructContract referenceDataTypeStructContract = null; - try { - //合约部署 - referenceDataTypeStructContract = ReferenceDataTypeStructContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeStructContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeStructContract.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeStructContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - BigInteger expectId = new BigInteger("2"); - BigInteger expectAge = new BigInteger("25"); - boolean expectVIP = true; - - //1、赋值方式一: 按入参顺序赋值 - try { - //赋值执行initDataStruct1() - Tuple4 tuple4 = referenceDataTypeStructContract.initDataStructA().send(); - BigInteger actualId = tuple4.getValue1(); - BigInteger actualAge = tuple4.getValue3(); - boolean actualVIP = tuple4.getValue4(); - - collector.logStepPass("ReferenceDataTypeStructContract 执行initDataStructA()方法 successfully."); - collector.assertEqual(actualId,expectId, "checkout Id execute success."); - collector.assertEqual(actualAge,expectAge, "checkout Age execute success."); - collector.assertEqual(actualVIP,expectVIP, "checkout VIP execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //2、赋值方式二: 按命名参数赋值 - try { - //赋值执行initDataStruct2() - Tuple4 tuple4 = referenceDataTypeStructContract.initDataStructB().send(); - BigInteger actualId = tuple4.getValue1(); - BigInteger actualAge = tuple4.getValue3(); - boolean actualVIP = tuple4.getValue4(); - - collector.logStepPass("ReferenceDataTypeStructContract 执行initDataStructB()方法 successfully."); - collector.assertEqual(actualId,expectId, "checkout Id execute success."); - collector.assertEqual(actualAge,expectAge, "checkout Age execute success."); - collector.assertEqual(actualVIP,expectVIP, "checkout VIP execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、赋值方式三:结构体中映射的初始化 - try { - //赋值执行initDataStruct3() - Tuple4 tuple4 = referenceDataTypeStructContract.initDataStructC().send(); - BigInteger actualId = tuple4.getValue1(); - BigInteger actualAge = tuple4.getValue3(); - boolean actualVIP = tuple4.getValue4(); - - collector.logStepPass("ReferenceDataTypeStructContract 执行initDataStructC()方法 successfully."); - collector.assertEqual(actualId,expectId, "checkout Id execute success."); - collector.assertEqual(actualAge,expectAge, "checkout Age execute success."); - collector.assertEqual(actualVIP,expectVIP, "checkout VIP execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeStructDeleteContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeStructDeleteContractTest.java deleted file mode 100644 index f17fdaa074..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeStructDeleteContractTest.java +++ /dev/null @@ -1,93 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.ReferenceDataTypeStructDeleteContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:结构体嵌套delete操作 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeStructDeleteContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeStructDelete.结构体嵌套delete操作",sourcePrefix = "evm/0.5.17") - public void testReferenceDataTypeStructRecursive() { - - ReferenceDataTypeStructDeleteContract referenceDataTypeStructDelete = null; - try { - //合约部署 - referenceDataTypeStructDelete = ReferenceDataTypeStructDeleteContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeStructDelete.getContractAddress(); - TransactionReceipt tx = referenceDataTypeStructDelete.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeStructDelete issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete deploy fail.", e.toString()); - e.printStackTrace(); - } - try { - //1、执行delete基本类型之后值 - BigInteger deleteInt = referenceDataTypeStructDelete.getToDeleteInt().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete基本类型之后值 getToDeleteInt()】方法 successfully.deleteInt:" + deleteInt); - collector.assertEqual(deleteInt,new BigInteger("0"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - //2、执行delete外部结构体uint类型 - BigInteger actualValue = referenceDataTypeStructDelete.getTopValue().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete外部结构体包含uint类型 getTopValue()】方法 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,new BigInteger("0"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - //3、执行delete外部结构体包含mapping类型 - BigInteger actualValue = referenceDataTypeStructDelete.getTopMapping().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete外部结构体包含mapping类型 getTopMapping()】方法 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,new BigInteger("1"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - //4、执行delete内部部结构体包含uint类型 - BigInteger actualValue = referenceDataTypeStructDelete.getNestedValue().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete内部部结构体包含uint类型 getNestedValue()】方法 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,new BigInteger("0"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - //5、执行delete内部部结构体包含mapping类型 - Boolean actualValue = referenceDataTypeStructDelete.getNestedMapping().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete内部部结构体包含mapping类型 getNestedMapping()】方法 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,true, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeStructRecursiveContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeStructRecursiveContractTest.java deleted file mode 100644 index 668cf1a5b5..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/ReferenceData/ReferenceDataTypeStructRecursiveContractTest.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple3; -import network.platon.contracts.evm.v0_5_17.ReferenceDataTypeStructRecursiveContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:结构体嵌套递归 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeStructRecursiveContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeStructRecursive.结构体嵌套递归",sourcePrefix = "evm/0.5.17") - public void testReferenceDataTypeStructRecursive() { - - ReferenceDataTypeStructRecursiveContract referenceDataTypeStructRecursive = null; - try { - //合约部署 - referenceDataTypeStructRecursive = ReferenceDataTypeStructRecursiveContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeStructRecursive.getContractAddress(); - TransactionReceipt tx = referenceDataTypeStructRecursive.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeStructRecursive issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructRecursive deploy fail.", e.toString()); - e.printStackTrace(); - } - try { - //结构体嵌套递归,获取结构体数组长度 - Tuple3 tuple3 = referenceDataTypeStructRecursive.getStructPersonLength().send(); - BigInteger actuaLength1 = tuple3.getValue1(); - BigInteger actuaLength2 = tuple3.getValue2(); - BigInteger actuaLength3 = tuple3.getValue3(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行获取结构体数组长度 getStructPersonLength()】方法 successfully.tuple3:" + tuple3.toString()); - collector.assertEqual(actuaLength1,new BigInteger("2"), "checkout Id execute success."); - collector.assertEqual(actuaLength2,new BigInteger("10"), "checkout Age execute success."); - collector.assertEqual(actuaLength3,new BigInteger("20"), "checkout VIP execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructRecursive Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/TypeConversion/TypeConversionBytesToUintContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/TypeConversion/TypeConversionBytesToUintContractTest.java deleted file mode 100644 index 1870cf211c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/TypeConversion/TypeConversionBytesToUintContractTest.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.TypeConversion; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.TypeConversionBytesToUintContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:测试不同类型转换(字节转换整型) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class TypeConversionBytesToUintContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "TypeConversionContract.字节转换整型",sourcePrefix = "evm/0.5.17") - public void testTypeConversionContract() { - - TypeConversionBytesToUintContract typeConversionBytesToUintContract = null; - try { - //合约部署 - typeConversionBytesToUintContract = TypeConversionBytesToUintContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = typeConversionBytesToUintContract.getContractAddress(); - TransactionReceipt tx = typeConversionBytesToUintContract.getTransactionReceipt().get(); - collector.logStepPass("typeConversion issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("typeConversion deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - BigInteger expectValue = new BigInteger("1633837924"); - //1、执行字节转换大位整型 bytesToBigUint() - BigInteger actualValue = typeConversionBytesToUintContract.bytesToBigUint().send(); - collector.logStepPass("typeConversion 执行【字节转换大位整型 bytesToBigUint()】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - BigInteger expectValue = new BigInteger("97"); - //2、字节转换相同位数整数 bytesToSameUint() - BigInteger actualValue = typeConversionBytesToUintContract.bytesToSameUint().send(); - collector.logStepPass("typeConversion 执行【字节转换相同位数整数 bytesToSameUint()】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - BigInteger expectValue = new BigInteger("25444"); - //3、字节转换小位整型 bytesToSmallUint() - BigInteger actualValue = typeConversionBytesToUintContract.bytesToSmallUint().send(); - collector.logStepPass("typeConversion 执行【字节转换小位整型 bytesToSmallUint()】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/TypeConversion/TypeConversionContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/TypeConversion/TypeConversionContractTest.java deleted file mode 100644 index 98bb8a2921..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/TypeConversion/TypeConversionContractTest.java +++ /dev/null @@ -1,144 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.TypeConversion; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_5_17.TypeConversionContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:基本类型之间的转换(隐式/显示) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class TypeConversionContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "TypeConversionContract.基本类型转换",sourcePrefix = "evm/0.5.17") - public void testTypeConversionContract() { - - TypeConversionContract typeConversionContractTest = null; - try { - //合约部署 - typeConversionContractTest = TypeConversionContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = typeConversionContractTest.getContractAddress(); - TransactionReceipt tx = typeConversionContractTest.getTransactionReceipt().get(); - collector.logStepPass("typeConversion issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("typeConversion deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:基本类型隐式转换(运算符操作隐式转换) - try { - BigInteger expectValue = new BigInteger("102"); - //赋值执行sum() - BigInteger actualValue = typeConversionContractTest.sum().send(); - collector.logStepPass("typeConversion 执行【运算符操作隐式转换】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、验证:基本类型隐式转换(赋值操作隐式转换) - try { - BigInteger expectValue = new BigInteger("10"); - //赋值执行conversion() - BigInteger actualValue = typeConversionContractTest.conversion().send(); - collector.logStepPass("typeConversion 执行【赋值操作隐式转换】successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、验证:基本类型显示转换(无符合与有符号转换) - try { - BigInteger expectValue = new BigInteger("1"); - //执行displayConversion() - BigInteger actualValue = typeConversionContractTest.displayConversion().send(); - collector.logStepPass("typeConversion 执行【无符合与有符号显示转换】successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //4、验证:基本类型显示转换(转换成更小的类型,会丢失高位) - try { - BigInteger expectValue1 = new BigInteger("22136"); - String expectValue2 = "0x5678"; - //执行displayConversion1() - Tuple2 tuple2 = typeConversionContractTest.displayConversion1().send(); - BigInteger actualValue1 = tuple2.getValue1(); - String actualValue2 = "0x" + DataChangeUtil.bytesToHex(tuple2.getValue2()); - - collector.logStepPass("typeConversion 执行【大整型类型显示转换小类型】successfully.actualValue1:" + actualValue1 + - ",actualValue2:" + actualValue2); - collector.assertEqual(actualValue1,expectValue1, "checkout execute success."); - collector.assertEqual(actualValue2,expectValue2, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //5、验证:转换成更大的类型(将向左侧添加填充位) - try { - BigInteger expectValue1 = new BigInteger("4660"); - //执行displayConversion2() - Tuple2 tuple2 = typeConversionContractTest.displayConversion2().send(); - BigInteger actualValue1 = tuple2.getValue1(); - - collector.logStepPass("typeConversion 执行【小整型类型显示转换成大类型】 successfully.actualValue1:" + actualValue1); - collector.assertEqual(actualValue1,expectValue1, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //6、验证:转换到更小的字节类型 - try { - String expectValue = "0x12"; - //执行displayConversion3() - byte[] byteValue = typeConversionContractTest.displayConversion3().send(); - String actualValue = "0x" + DataChangeUtil.bytesToHex(byteValue); - - collector.logStepPass("typeConversion 执行【大字节类型显示转换成小类型】successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //7、验证:转换为更大的字节类型 - try { - String expectValue = "0x12340000"; - //执行displayConversion4() - byte[] byteValue = typeConversionContractTest.displayConversion4().send(); - String actualValue = "0x" + DataChangeUtil.bytesToHex(byteValue); - - collector.logStepPass("typeConversion 执行【小字节类型显示转换成大类型】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/structs/RecursiveStorageMemoryComplexTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/structs/RecursiveStorageMemoryComplexTest.java deleted file mode 100644 index 0dd91595cf..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/structs/RecursiveStorageMemoryComplexTest.java +++ /dev/null @@ -1,65 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.structs; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.RecursiveStorageMemoryComplex; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.util.List; - -/** - * @title 复杂结构体数据类递归调用验证 - * @description: - * @author: hudenian - * @create: 2020/1/13 10:03 - **/ -public class RecursiveStorageMemoryComplexTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls",sheetName = "structs", author = "hudenian", showName = "StructDataTypeTest.结构体数据类型",sourcePrefix = "evm/0.5.17") - public void testRecursiveStorageMemoryComplex() { - - RecursiveStorageMemoryComplex recursiveStorageMemoryComplex = null; - try { - //合约部署 - recursiveStorageMemoryComplex = RecursiveStorageMemoryComplex.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = recursiveStorageMemoryComplex.getContractAddress(); - TransactionReceipt tx = recursiveStorageMemoryComplex.getTransactionReceipt().get(); - collector.logStepPass("RecursiveStorageMemoryComplex issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - //调用合约 - tx = recursiveStorageMemoryComplex.run().send(); - collector.logStepPass("RecursiveStorageMemoryComplexTest run() successful.transactionHash:" + tx.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + tx.getBlockNumber()); - - //查询执行结果 - List resultList = recursiveStorageMemoryComplex.getRunResult().send(); - - collector.assertEqual("66",resultList.get(0).toString()); - collector.assertEqual("16896",resultList.get(1).toString()); - collector.assertEqual("4325376",resultList.get(2).toString()); - collector.assertEqual("4325377",resultList.get(3).toString()); - collector.assertEqual("4325378",resultList.get(4).toString()); - collector.assertEqual("16897",resultList.get(5).toString()); - collector.assertEqual("4325632",resultList.get(6).toString()); - collector.assertEqual("4325633",resultList.get(7).toString()); - collector.assertEqual("4325634",resultList.get(8).toString()); - collector.assertEqual("4325635",resultList.get(9).toString()); - - } catch (Exception e) { - collector.logStepFail("RecursiveStorageMemoryComplexTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/structs/StructDataTypeTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/structs/StructDataTypeTest.java deleted file mode 100644 index 0deed92495..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/data_type/structs/StructDataTypeTest.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.test.evm.v0_5_17.data_type.structs; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple6; -import network.platon.contracts.evm.v0_5_17.StructDataType; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:结构体数据类型 - * @description: - * @author: hudenian - * @create: 2020/1/11 16:03 - **/ -public class StructDataTypeTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls",sheetName = "structs", author = "hudenian", showName = "StructDataTypeTest.结构体数据类型",sourcePrefix = "evm/0.5.17") - public void testTypeConversionContract() { - - StructDataType structDataType = null; - try { - //合约部署 - structDataType = StructDataType.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = structDataType.getContractAddress(); - TransactionReceipt tx = structDataType.getTransactionReceipt().get(); - collector.logStepPass("StructDataType issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - //调用合约 - tx = structDataType.run().send(); - collector.logStepPass("StructDataTypeTest run() successful.transactionHash:" + tx.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + tx.getBlockNumber()); - - //查询执行结果 - Tuple6 tuple6 = structDataType.getRunValue().send(); - - collector.assertEqual("2",tuple6.getValue1().toString()); - collector.assertEqual("2",tuple6.getValue2().toString()); - collector.assertEqual("2",tuple6.getValue3().toString()); - collector.assertEqual("6",tuple6.getValue4().toString()); - collector.assertEqual("9",tuple6.getValue5().toString()); - collector.assertEqual("7",tuple6.getValue6().toString()); - - } catch (Exception e) { - collector.logStepFail("StructDataTypeTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/event/EventCallContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/event/EventCallContractTest.java deleted file mode 100644 index 18cc25d5ef..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/event/EventCallContractTest.java +++ /dev/null @@ -1,131 +0,0 @@ -package network.platon.test.evm.v0_5_17.event; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.EventCallContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import com.alibaba.fastjson.JSONObject; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.List; - -/** - * @title 事件验证测试 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class EventCallContractTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "emitEvent", - author = "albedo", showName = "event.EventCallContractTest-event关键字声明事件", sourcePrefix = "evm/0.5.17") - public void testEmitEvent() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.emitEvent().send(); - List emitEventData = eventCallContract.getIncrementEvents(receipt); - String data = emitEventData.get(0).log.getData(); - collector.assertEqual(emitEventData.get(0).who, receipt.getFrom(), "checkout declare event keyword"); - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testEmitEvent failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "indexedEvent", - author = "albedo", showName = "event.EventCallContractTest-indexed关键字定义事件索引", sourcePrefix = "evm/0.5.17") - public void testIndexedEvent() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - TransactionReceipt receipt = eventCallContract.indexedEvent().send(); - List emitEventData = eventCallContract.getDepositEvents(receipt); - String data = emitEventData.get(0).log.getData(); - collector.assertEqual(emitEventData.get(0)._from, receipt.getFrom(), "checkout new contract param"); - collector.assertEqual(emitEventData.get(0)._value.toString(), "12", "checkout indexed keyword"); - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testIndexedEvent failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "anonymousEvent", - author = "albedo", showName = "event.EventCallContractTest-anonymous关键字定义匿名事件", sourcePrefix = "evm/0.5.17") - public void testAnonymousEvent() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - TransactionReceipt receipt = eventCallContract.anonymousEvent().send(); - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(0).getData()), DataChangeUtil.subHexData("1"), "checkout anonymous keyword"); - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testAnonymousEvent failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testEmitEvents", - author = "albedo", showName = "event.EventCallContractTest-函数多事件监听", sourcePrefix = "evm/0.5.17") - public void testEmitEvents() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - TransactionReceipt receipt = eventCallContract.testBool().send(); - System.out.println(JSONObject.toJSONString(receipt.getLogs())); - List bList = eventCallContract.getBoolEventEvents(receipt); - collector.assertEqual(bList.get(0).result ,Boolean.FALSE, "checkout multi bool type event"); - collector.assertEqual(bList.get(1).result ,Boolean.TRUE, "checkout multi bool type event"); - List iList = eventCallContract.getIncrementEvents(receipt); - collector.assertEqual(iList.get(0).who ,receipt.getFrom(), "checkout address type event"); - - List dList = eventCallContract.getDepositEvents(receipt); - collector.assertEqual(dList.get(0)._from ,receipt.getFrom(), "checkout address type event"); - collector.assertEqual(dList.get(0)._value ,new BigInteger("12"), "checkout uint event"); - - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(3).getData()),DataChangeUtil.subHexData("c"), "checkout address type event"); - - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testAnonymousEvent failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testMultiAnonymousEvents", - author = "albedo", showName = "event.EventCallContractTest-函数多匿名事件监听", sourcePrefix = "evm/0.5.17") - public void testMultiAnonymousEvents() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - TransactionReceipt receipt = eventCallContract.testMultiAnonymous().send(); - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(0).getData()),DataChangeUtil.subHexData("c"), "checkout multi anonymous event"); - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(1).getData()),DataChangeUtil.subHexData("d"), "checkout multi anonymous event"); - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(2).getData()),DataChangeUtil.subHexData("e"), "checkout multi anonymous event"); - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testMultiAnonymousEvents failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/event/EventIndexedContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/event/EventIndexedContractTest.java deleted file mode 100644 index a17187f33f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/event/EventIndexedContractTest.java +++ /dev/null @@ -1,193 +0,0 @@ -package network.platon.test.evm.v0_5_17.event; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.EventIndexedContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import com.alibaba.fastjson.JSONObject; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.List; - -/** - * @title 事件索引测试 - * @description: - * @author: albedo - * @create: 2020/01/07 - */ -public class EventIndexedContractTest extends ContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testIntIndex", - author = "albedo", showName = "event.EventIndexedContractTest-有符号整型索引", sourcePrefix = "evm/0.5.17") - public void testIntIndex() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testMinus(new BigInteger("-12")).send(); - List str=eventCallContract.getMinusEventEvents(receipt); - BigInteger s=str.get(0).minus; - collector.assertEqual(s, new BigInteger("-12"), "checkout string indexed event"); - - receipt = eventCallContract.testMinus(new BigInteger("12")).send(); - str=eventCallContract.getMinusEventEvents(receipt); - s=str.get(0).minus; - collector.assertEqual(s, new BigInteger("12"), "checkout string indexed event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testOneDimensionalArray", - author = "albedo", showName = "event.EventIndexedContractTest-一维数组索引", sourcePrefix = "evm/0.5.17") - public void testOneDimensionalArray() { - try { - prepare(); - EventIndexedContract eventTypeContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventTypeContract.getContractAddress(); - String transactionHash = eventTypeContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventTypeContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventTypeContract.testOneDimensionalArray().send(); - List one = eventTypeContract.getOneDimensionalArrayEventEvents(receipt); - byte[] data = one.get(0).array; - String str=DataChangeUtil.bytesToHex(data); - String except=one.get(0).log.getTopics().get(1); - collector.assertEqual("0x"+str, except, "checkout one dimensional array index event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testOneDimensionalArray failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testTwoDimensionalArray", - author = "albedo", showName = "event.EventIndexedContractTest-二维数组索引", sourcePrefix = "evm/0.5.17") - public void testTwoDimensionalArray() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testTwoDimensionalArray().send(); - try { - eventCallContract.getTwoDimensionalArrayEventEvents(receipt); - } catch (UnsupportedOperationException e) { - collector.assertEqual(e.getCause().getMessage(),"com.alaya.abi.solidity.datatypes.generated.StaticArray2"); - } - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testTwoDimensionalArray failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testStr", - author = "albedo", showName = "event.EventIndexedContractTest-字符串索引", sourcePrefix = "evm/0.5.17") - public void testStr() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testStr().send(); - List str=eventCallContract.getStringEventEvents(receipt); - byte[] s=str.get(0).str; - String strIndexed=DataChangeUtil.bytesToHex(s); - String except=str.get(0).log.getTopics().get(1); - collector.assertEqual("0x"+strIndexed, except, "checkout string indexed event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testEnum", - author = "albedo", showName = "event.EventIndexedContractTest-枚举类型索引", sourcePrefix = "evm/0.5.17") - public void testEnum() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testEnum().send(); - List str=eventCallContract.getEnumEventEvents(receipt); - BigInteger s=str.get(0).choices; - String except=str.get(0).log.getTopics().get(1); - collector.assertEqual(DataChangeUtil.subHexData(s.toString()), DataChangeUtil.subHexData(except), "checkout string indexed event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testComplex", - author = "albedo", showName = "event.EventIndexedContractTest-复杂多索引", sourcePrefix = "evm/0.5.17") - public void testComplex() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testComplex().send(); - List str=eventCallContract.getComplexIndexedEventEvents(receipt); - String strIndex=DataChangeUtil.bytesToHex(str.get(0).str); - String arrayIndex=DataChangeUtil.bytesToHex(str.get(0).array); - String choiceIndex=DataChangeUtil.bytesToHex(str.get(0).choice.toByteArray()); - String exceptStr=str.get(0).log.getTopics().get(3); - String exceptArray=str.get(0).log.getTopics().get(1); - String exceptId=str.get(0).log.getTopics().get(2); - collector.assertEqual("0x"+strIndex, exceptStr, "checkout complex indexes event"); - collector.assertEqual("0x"+arrayIndex, exceptArray, "checkout complex indexes event"); - collector.assertEqual(DataChangeUtil.subHexData(choiceIndex), DataChangeUtil.subHexData(exceptId), "checkout complex indexes event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testComplex failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testAnonymousIndexed", - author = "albedo", showName = "event.EventIndexedContractTest-匿名事件索引数目", sourcePrefix = "evm/0.5.17") - public void testAnonymousIndexed() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testAnonymousIndexed().send(); - System.out.println(JSONObject.toJSONString(receipt.getLogs().get(0).getTopics())); - String u1Topic=receipt.getLogs().get(0).getTopics().get(0); - String u2Topic=receipt.getLogs().get(0).getTopics().get(1); - String u3Topic=receipt.getLogs().get(0).getTopics().get(2); - String u4Topic=receipt.getLogs().get(0).getTopics().get(3); - collector.assertEqual(DataChangeUtil.subHexData(u1Topic), DataChangeUtil.subHexData("1"), "checkout anonymous index.0 event"); - collector.assertEqual(DataChangeUtil.subHexData(u2Topic), DataChangeUtil.subHexData("2"), "checkout anonymous index.1 event"); - collector.assertEqual(DataChangeUtil.subHexData(u3Topic), DataChangeUtil.subHexData("3"), "checkout anonymous index.2 event"); - collector.assertEqual(DataChangeUtil.subHexData(u4Topic), DataChangeUtil.subHexData("4"), "checkout anonymous index.3 event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testAnonymousIndexed failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/event/EventTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/event/EventTypeContractTest.java deleted file mode 100644 index 83e76408ae..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/event/EventTypeContractTest.java +++ /dev/null @@ -1,110 +0,0 @@ -package network.platon.test.evm.v0_5_17.event; - -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.EventTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - -/** - * @title 事件类型测试 - * @description: - * @author: albedo - * @create: 2020/01/06 - */ -public class EventTypeContractTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testOneDimensionalArray", - author = "albedo", showName = "event.EventTypeContractTest-一维数组类型", sourcePrefix = "evm/0.5.17") - public void testOneDimensionalArray() { - try { - prepare(); - EventTypeContract eventTypeContract = EventTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventTypeContract.getContractAddress(); - String transactionHash = eventTypeContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventTypeContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventTypeContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventTypeContract.testOneDimensionalArray().send(); - List one = eventTypeContract.getOneDimensionalArrayEventEvents(receipt); - List data = one.get(0).array; - List except = new ArrayList<>(5); - for (int i = 0; i < 5; i++) { - except.add(new Uint256(new BigInteger(Integer.toString(i)))); - } - collector.assertEqual(data, except, "checkout one dimensional array type declare event"); - } catch (Exception e) { - collector.logStepFail("EventTypeContractTest testOneDimensionalArray failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testTwoDimensionalArray", - author = "albedo", showName = "event.EventTypeContractTest-二维数组类型", sourcePrefix = "evm/0.5.17") - public void testTwoDimensionalArray() { - try { - prepare(); - EventTypeContract eventCallContract = EventTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventTypeContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testTwoDimensionalArray().send(); - try { - eventCallContract.getTwoDimensionalArrayEventEvents(receipt); - } catch (UnsupportedOperationException e) { - collector.assertEqual(e.getCause().getMessage(),"com.alaya.abi.solidity.datatypes.generated.StaticArray2"); - } - } catch (Exception e) { - collector.logStepFail("EventTypeContractTest testTwoDimensionalArray failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testStr", - author = "albedo", showName = "event.EventTypeContractTest-字符串", sourcePrefix = "evm/0.5.17") - public void testStr() { - try { - prepare(); - EventTypeContract eventCallContract = EventTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventTypeContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testStr().send(); - List str = eventCallContract.getStringEventEvents(receipt); - String s = str.get(0).str; - collector.assertEqual(s, "1234567890097865432112345678900987654321123456789009764354666663242444444444475831546856", "checkout string type declare event"); - } catch (Exception e) { - collector.logStepFail("EventTypeContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testEnum", - author = "albedo", showName = "event.EventTypeContractTest-枚举", sourcePrefix = "evm/0.5.17") - public void testEnum() { - try { - prepare(); - EventTypeContract eventCallContract = EventTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventTypeContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testEnum().send(); - List str = eventCallContract.getEnumEventEvents(receipt); - BigInteger s = str.get(0).choices; - collector.assertEqual(s, new BigInteger("0"), "checkout string type declare event"); - } catch (Exception e) { - collector.logStepFail("EventTypeContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/evm_assembly_contract_call/PlatonInnerTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/evm_assembly_contract_call/PlatonInnerTest.java deleted file mode 100644 index 930003ad90..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/evm_assembly_contract_call/PlatonInnerTest.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.test.evm.v0_5_17.evm_assembly_contract_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.PlatonInner; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; -import java.util.Arrays; -import java.util.HashSet; -import java.util.Set; - -/** - * 添加evm合约调用PPOS合约场景 - * @author hudenian - * @dev 2020/02/24 - */ - -public class PlatonInnerTest extends ContractPrepareTest { - - //要调用的ppos合约地址(参考:PlatON内置合约及RPC接口说明) - private String addr; - - //调用ppos合约请求参数进行rlp编码(参考:http://192.168.18.61:8080/browse/PM-613) - private String input; - - //交易码 - private String code; - - private String caseName; - - //查询方法没有回执 - private String[] queryCodeArray = new String[]{"4100","1005","1100","1101","1102","1103","1104","1105","1200","1201","1202","2004", - "2100","2101","2102","2103","2104","2105","2106","3001","5100"}; - - private Set queryCodeSet; - - @Before - public void before() { - this.prepare(); - addr = driverService.param.get("addr"); - input = driverService.param.get("input"); - code = driverService.param.get("code"); - caseName = driverService.param.get("caseName"); - queryCodeSet = new HashSet(Arrays.asList(queryCodeArray)); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "evm_assembly_contract_call.PlatonInnerTest-evm合约调用PPOS合约", sourcePrefix = "evm/0.5.17") - public void platonInner() { - try { - PlatonInner platonInner = PlatonInner.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = platonInner.getContractAddress(); - TransactionReceipt tx = platonInner.getTransactionReceipt().get(); - collector.logStepPass("PlatonInnerTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + platonInner.getTransactionReceipt().get().getGasUsed()); - - tx = platonInner.assemblyCallppos(DataChangeUtil.hexToByteArray(input),addr).send(); - collector.logStepPass("PlatonInnerTest call "+addr+" and code is:"+code+" createRestrictingPlan successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("caseName:+caseName>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"+"code:"+code); - if( !queryCodeSet.contains(code) && (null!=tx.getLogs().get(0).getData() && "".equals(tx.getLogs().get(0).getData()))){ - collector.logStepPass("str is >>>"+DataChangeUtil.decodeSystemContractRlp(tx.getLogs().get(0).getData(), chainId)); - } - - - //获取交易回执 - byte[] resultByte = platonInner.getReturnValue().send(); - collector.logStepPass("call "+addr+" and getReturnValue is:"+new String(resultByte)); - - } catch (Exception e) { - collector.logStepFail("PlatonInnerTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/evm_assembly_contract_call/PrecompiledTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/evm_assembly_contract_call/PrecompiledTest.java deleted file mode 100644 index f56f6a8ef5..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/evm_assembly_contract_call/PrecompiledTest.java +++ /dev/null @@ -1,128 +0,0 @@ -package network.platon.test.evm.v0_5_17.evm_assembly_contract_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.Precompiled; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.List; - -/** - * 添加evm合约调用系统合约场景 - * - * @author hudenian - * @dev 2020/02/19 - */ - -public class PrecompiledTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "evm_assembly_contract_call.AssemblyAddTest-evm合约调用系统合约", sourcePrefix = "evm/0.5.17") - public void precompiledTest() { - try { - Precompiled precompiled = Precompiled.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = precompiled.getContractAddress(); - TransactionReceipt tx = precompiled.getTransactionReceipt().get(); - collector.logStepPass("PrecompiledTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + precompiled.getTransactionReceipt().get().getGasUsed()); - - byte[] bytes = "hu".getBytes(); - - - //验证ecrecover函数 -// String ecrecover = "lax132dnv620rmht2qxgfgvmkdqn0vz3vtk9lecarh"; - String ecrecover = "atx132dnv620rmht2qxgfgvmkdqn0vz3vtk9rvqqpa"; - - String hash = "e281eaa11e6e37e6f53aade5d6c5b7201ef1c66162ec42ccc3215a0c4349350d"; - byte[] a = DataChangeUtil.hexToByteArray(hash); - - BigInteger v = new BigInteger("27"); - - String R = "55b60cadd4b4a3ea4fc368ef338f97e12e7328dd6e9e969a3fd8e5c10be855fe"; - byte[] b = DataChangeUtil.hexToByteArray(R); - - String S = "2b42cee2585a16ea537efcb88009c1aeac693c28b59aa6bbff0baf22730338f6"; - byte[] c = DataChangeUtil.hexToByteArray(S); - - //Address 0x01: ecrecover(hash, v, r, s) - String resultF = precompiled.callEcrecover(a, v, b, c).send(); - collector.logStepPass("ecrecover函数返回值:" + resultF); - collector.assertEqual(ecrecover, resultF.toLowerCase()); - - //Address 0x02: sha256(data) - byte[] resultD = precompiled.callSha256(bytes).send(); - String hexValue2 = DataChangeUtil.bytesToHex(resultD); - collector.logStepPass("Sha256函数返回值:" + hexValue2); - - //Address 0x03: ripemd160(data) - byte[] resultE = precompiled.callRipemd160(bytes).send(); - String hexValue3 = DataChangeUtil.bytesToHex(resultE); - collector.logStepPass("ripemd160函数返回值:" + hexValue3); -// collector.assertEqual(ripemd160 ,hexValue3); - - //0x04 dataCopy() test pass - tx = precompiled.callDatacopy(bytes).send(); - collector.logStepPass("PrecompiledTest callDatacopy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - byte[] callDatacopyValueByte = precompiled.getCallDatacopyValue().send(); - collector.logStepPass("PrecompiledTest 0x04 result is:" + new String(callDatacopyValueByte)); - - //0x05 callBigModExp() test pass - byte[] base = DataChangeUtil.hexToByteArray("0000000000000000000000000000000462e4ded88953a39ce849a8a7fa163fa9"); - byte[] exponent = DataChangeUtil.hexToByteArray("1f4a3123ff1223a1b0d040057af8a9fe70baa9258e0b959273ffc5718c6d4cc7"); - byte[] modulus = DataChangeUtil.hexToByteArray("00000000000000000000000000077d29a9c710b7e616683f194f18c43b43b869"); - - tx = precompiled.callBigModExp(base, exponent, modulus).send(); - collector.logStepPass("PrecompiledTest callBigModExp successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - byte[] callBigModExpValueByte = precompiled.getCallBigModExpValue().send(); - collector.logStepPass("PrecompiledTest 0x05 result is:" + DataChangeUtil.bytesToHex(callBigModExpValueByte)); - - - //Address 0x06: bn256Add(ax, ay, bx, by)(test pass) - //输入参数规则:y^2 = x^3 + 3 - tx = precompiled.callBn256Add(new BigInteger("1"), new BigInteger("2"), new BigInteger("1"), new BigInteger("2")).send(); - collector.logStepPass("PrecompiledTest callBn256Add successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - List list = precompiled.getCallBn256AddValues().send(); - for (int i = 0; i < list.size(); i++) { - collector.logStepPass("PrecompiledTest 0x06 result " + i + " is:" + list.get(i).toString()); - } - - //Address 0x07: bn256ScalarMul(x, y, scalar) - byte[] pointXByte = DataChangeUtil.hexToByteArray("2bd3e6d0f3b142924f5ca7b49ce5b9d54c4703d7ae5648e61d02268b1a0a9fb7"); - byte[] pointYByte = DataChangeUtil.hexToByteArray("21611ce0a6af85915e2f1d70300909ce2e49dfad4a4619c8390cae66cefdb204"); - byte[] scalarByte = DataChangeUtil.hexToByteArray("00000000000000000000000000000000000000000000000011138ce750fa15c2"); - tx = precompiled.callBn256ScalarMul(pointXByte, pointYByte, scalarByte).send(); - collector.logStepPass("PrecompiledTest callBigModExp successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - List callBn256ScalarMulList = precompiled.getCallBn256ScalarMulValues().send(); - for (int i = 0; i < callBn256ScalarMulList.size(); i++) { - collector.logStepPass("PrecompiledTest call 0x07 result " + i + " is:" + DataChangeUtil.bytesToHex((byte[]) callBn256ScalarMulList.get(i))); - - } - - //Address 0x08:callBn256Pairing - String hexStr = "1c76476f4def4bb94541d57ebba1193381ffa7aa76ada664dd31c16024c43f593034dd2920f673e204fee2811c678745fc819b55d3e9d294e45c9b03a76aef41209dd15ebff5d46c4bd888e51a93cf99a7329636c63514396b4a452003a35bf704bf11ca01483bfa8b34b43561848d28905960114c8ac04049af4b6315a416782bb8324af6cfc93537a2ad1a445cfd0ca2a71acd7ac41fadbf933c2a51be344d120a2a4cf30c1bf9845f20c6fe39e07ea2cce61f0c9bb048165fe5e4de877550111e129f1cf1097710d41c4ac70fcdfa5ba2023c6ff1cbeac322de49d1b6df7c2032c61a830e3c17286de9462bf242fca2883585b93870a73853face6a6bf411198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c21800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa"; - tx = precompiled.callBn256Pairing(DataChangeUtil.hexToByteArray(hexStr)).send(); - collector.logStepPass("PrecompiledTest callBn256Pairing successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - byte[] callBn256PairingValue = precompiled.getCallBn256PairingValue().send(); - collector.logStepPass("PrecompiledTest 0x08 result is:" + DataChangeUtil.bytesToHex(callBn256PairingValue)); - - - } catch (Exception e) { - collector.logStepFail("PrecompiledTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exceptionhandle/AssertHandleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exceptionhandle/AssertHandleTest.java deleted file mode 100644 index cdfb5f5ab2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exceptionhandle/AssertHandleTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.evm.v0_5_17.exceptionhandle; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import network.platon.contracts.evm.v0_5_17.AssertHandle; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title assert(bool condition)函数测试 - * 如果条件不满足,则使当前交易没有效果 ,gas正常消耗,用于检查内部错误 - * 1.数组越界访问产生生异常验证,如i >= x.length 或 i < 0时访问x[i]————(编译异常) - * 2.定长bytesN数组越界访问产生异常验证————(编译异常) - * 3.被除数为0或取模运算产生异常验证————(编译异常) - * 4.对一个二进制移动一个负的值产生异常验证————(编译异常) - * 5.整数显式转换为枚举,将过大值,负值转为枚举类型则抛出异常 - * 6.调用内部函数类型的零初始化变量验证————(编译异常) - * 7.用assert的参数为false产生异常验证 - * @description: - * @author: albedo - * @create: 2019/12/31 - */ -public class AssertHandleTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "intChangeException", - author = "albedo", showName = "exceptionhandle.AssertHandle-整数显式转换为枚举", sourcePrefix = "evm/0.5.17") - public void testIntChangeException() { - try { - prepare(); - AssertHandle handle = AssertHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("AssertHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = handle.intChangeException(new BigInteger("2")).send(); - collector.logStepPass("checkout integer contains enums,transactionHah="+receipt.getTransactionHash()); - try { - handle.intChangeException(new BigInteger("5")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout integer large then enums:" + e.getMessage()); - } - try { - handle.intChangeException(new BigInteger("-1")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout integer less then enums:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("AssertHandleTest testIntChangeException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "paramException", - author = "albedo", showName = "exceptionhandle.AssertHandle-调用assert的参数为false", sourcePrefix = "evm/0.5.17") - public void testParamException() { - try { - prepare(); - AssertHandle handle = AssertHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("AssertHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = handle.paramException(new BigInteger("5")).send(); - collector.logStepPass("checkout normal,transactionHash="+receipt.getTransactionHash()); - try { - handle.paramException(new BigInteger("11")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout assert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("AssertHandleTest testParamException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exceptionhandle/RequireHandleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exceptionhandle/RequireHandleTest.java deleted file mode 100644 index 27235ad0f4..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exceptionhandle/RequireHandleTest.java +++ /dev/null @@ -1,177 +0,0 @@ -package network.platon.test.evm.v0_5_17.exceptionhandle; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import network.platon.contracts.evm.v0_5_17.RequireHandle; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title require(bool condition)函数测试 - * 如果条件不满足则撤销状态更改,用于检查由输入或者外部组件引起的错误 - *(1)消息调用函数过程中没有正确结束异常验证 - *(2)new创建合约没有正确返回产生异常验证 - *(3)调用外部函数,被调用的对象不包含代码异常验证 - *(4)合约没有payable修饰符的public的函数在接收主币时(包括构造函数,和回退函数)异常验证 - *(5)合约通过一个public的getter函数(public getter funciton)接收主币异常验证 - *(6).transfer()函数执行失败异常验证 - * @description: - * @author: albedo - * @create: 2019/12/31 - */ -public class RequireHandleTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "functionCallException", - author = "albedo", showName = "network.platon.test.evm.exceptionhandle.RequireHandle-消息调用函数过程中没有正确结束异常", sourcePrefix = "evm/0.5.17") - public void testFunctionCallException() { - try { - prepare(); - RequireHandle handle = RequireHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RequireHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - try { - handle.functionCallException(new BigInteger("1000")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout assert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail(" RequireHandleTest testFunctionCallException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "newContractException", - author = "albedo", showName = "exceptionhandle.RequireHandle-new创建合约没有正确返回", sourcePrefix = "evm/0.5.17") - public void testNewContractException() { - try { - prepare(); - RequireHandle handle = RequireHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RequireHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - try { - handle.newContractException().send(); - } catch (TransactionException e) { - collector.logStepPass("checkout assert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RequireHandleTest testNewContractException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "outFunctionCallException", - author = "albedo", showName = "exceptionhandle.RequireHandle-调用外部函数,被调用的对象不包含代码", sourcePrefix = "evm/0.5.17") - public void testOutFunctionCallException() { - try { - prepare(); - RequireHandle handle = RequireHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RequireHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - try { - handle.outFunctionCallException(new BigInteger("1000")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout assert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RequireHandleTest testOutFunctionCallException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "nonPayableReceiveEthException", - author = "albedo", showName = "exceptionhandle.RequireHandle-合约在没有payable修饰符的public的函数中接收主币", sourcePrefix = "evm/0.5.17") - public void testNonPayableReceiveEthException() { - try { - prepare(); - RequireHandle handle = RequireHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RequireHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - try { - handle.nonPayableReceiveEthException(new BigInteger("1000")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout assert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RequireHandleTest testNonPayableReceiveEthException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "publicGetterReceiveEthException", - author = "albedo", showName = "exceptionhandle.RequireHandle-合约通过一个public的getter函数接收主币", sourcePrefix = "evm/0.5.17") - public void testPublicGetterReceiveEthException() { - try { - prepare(); - RequireHandle handle = RequireHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RequireHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - try { - handle.publicGetterReceiveEthException(new BigInteger("1000")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout assert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RequireHandleTest testPublicGetterReceiveEthException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "transferCallException", - author = "albedo", showName = "exceptionhandle.RequireHandle-transfer()函数执行失败", sourcePrefix = "evm/0.5.17") - public void testTransferCallException() { - try { - prepare(); - RequireHandle handle = RequireHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RequireHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - try { - handle.transferCallException(new BigInteger("100000000000000000000000000000000000000000"),new BigInteger("100000000000")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout assert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RequireHandleTest testTransferCallException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "paramException", - author = "albedo", showName = "exceptionhandle.RequireHandle-检测异常", sourcePrefix = "evm/0.5.17") - public void testParamException() { - try { - prepare(); - RequireHandle handle = RequireHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RequireHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - TransactionReceipt receipt = handle.paramException(new BigInteger("5")).send(); - collector.logStepPass("checkout require normal,transactionHash="+receipt.getTransactionHash()); - try { - handle.paramException(new BigInteger("11")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout require throw exception:"+e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RequireHandleTest testParamException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exceptionhandle/RequireMessageHandleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exceptionhandle/RequireMessageHandleTest.java deleted file mode 100644 index df38e33797..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exceptionhandle/RequireMessageHandleTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.evm.v0_5_17.exceptionhandle; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import network.platon.contracts.evm.v0_5_17.RequireMessageHandle; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title require(bool condition, string message)函数(该函数可以自定义message信息)测试 - * @description: - * @author: albedo - * @create: 2019/12/31 - */ -public class RequireMessageHandleTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "albedo", showName = "exceptionhandle.RequireMessageHandle-require(bool condition, string message)函数", sourcePrefix = "evm/0.5.17") - public void testParamException() { - try { - prepare(); - RequireMessageHandle handle = RequireMessageHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RequireMessageHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = handle.paramException(new BigInteger("5")).send(); - collector.logStepPass("checkout require normal,transactionHash="+receipt.getTransactionHash()); - try { - handle.paramException(new BigInteger("11")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout require throw exception:"+e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RequireMessageHandleTest testParamException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exceptionhandle/RevertHandleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exceptionhandle/RevertHandleTest.java deleted file mode 100644 index de52f68d66..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exceptionhandle/RevertHandleTest.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.test.evm.v0_5_17.exceptionhandle; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import network.platon.contracts.evm.v0_5_17.RevertHandle; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title revert函数测试 - * 1.revert()函数————终止运行并撤销状态更改————验证 - * 2.revert(string reason)函数————终止运行并撤销状态更改,并提供一个解释性的字符串————验证 - * @description: - * @author: albedo - * @create: 2019/12/31 - */ -public class RevertHandleTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "revertCheck", - author = "albedo", showName = "exceptionhandle.RevertHandle-revert()函数", sourcePrefix = "evm/0.5.17") - public void testRevertCheck() { - try { - prepare(); - RevertHandle handle = RevertHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RevertHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt =handle.revertCheck(new BigInteger("5")).send(); - collector.logStepPass("checkout revert normal,transactionHah="+receipt.getTransactionHash()); - try { - handle.revertCheck(new BigInteger("11")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout revert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RevertHandleTest testRevertCheck failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "revertReasonCheck", - author = "albedo", showName = "exceptionhandle.RevertHandle-revert(string reason)函数", sourcePrefix = "evm/0.5.17") - public void testParamException() { - try { - prepare(); - RevertHandle handle = RevertHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RevertHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt =handle.revertReasonCheck(new BigInteger("5")).send(); - collector.logStepPass("checkout revert normal,transactionHah="+receipt.getTransactionHash()); - try { - handle.revertReasonCheck(new BigInteger("11")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout revert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RevertHandleTest testParamException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exec_efficiency/BubbleSortTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exec_efficiency/BubbleSortTest.java deleted file mode 100644 index 2a7492af42..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exec_efficiency/BubbleSortTest.java +++ /dev/null @@ -1,86 +0,0 @@ -package network.platon.test.evm.v0_5_17.exec_efficiency; - - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.BubbleSort; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - - -/** - * @title 冒泡排序 - * @description: - * @author: liweic - * @create: 2020/03/02 - **/ -public class BubbleSortTest extends ContractPrepareTest { - - private BigInteger numberOfCalls; - private String contractAddress; - - @Before - public void before() { - numberOfCalls = new BigInteger(driverService.param.get("numberOfCalls")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "exec_efficiency.BubbleSortTest-冒泡排序", sourcePrefix = "evm/0.5.17") - public void test() { - prepare(); - try { - - Integer numberOfCalls = Integer.valueOf(driverService.param.get("numberOfCalls")); - - BubbleSort bubblesort = BubbleSort.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = bubblesort.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + bubblesort.getTransactionReceipt().get().getGasUsed()); - - List array = new ArrayList<>(numberOfCalls); - - int min = -1000, max = 2000; - for (int i = 0; i < numberOfCalls; i++) { - BigInteger a = BigInteger.valueOf(min + (int) (Math.random() * 3001)); - array.add(a); - } - - collector.logStepPass("before sort:" + array.toString()); - BigInteger n = BigInteger.valueOf(array.size()); - TransactionReceipt transactionReceipt = bubblesort.BubbleArrays(array, n, new BigInteger("1000")).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - List resultarr = bubblesort.get_arr().send(); - collector.logStepPass("after sort:" + resultarr); - - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - - /** - * int 数组转 BigInteger - * @param intArray - * @return - */ - private List changeIntToBigInteger(Integer[] intArray) { - List bigIntegerList = new ArrayList<>(); - for (int i = 0; i array = new ArrayList<>(numberOfCalls); - - int min = -1000, max = 2000; - - for (int i = 0; i < numberOfCalls; i++) { - BigInteger a = BigInteger.valueOf(min + (int) (Math.random() * 3001)); - array.add(a); - } - -// Integer[] intArray = new Integer[]{131, 662, 585, 1946, 640, 1339, 1099, 1713, -588, -683, 1452, 56, 350, 1984, 1616, 382, 82, 427, -641, 564, -752, 598, 753, -912, -414, 930, -514, 1005, 793, -872, 964, 188, 1468, -266, 1513, 337, -443, 1712, -310, 1133, 723, -589, 748, 1036, -115, -916, -342, 1430, -133, -572, -137, -939, -415, 610, 937, 1117, -420, 1768, 780, 711, -82, 111, 1725, 172, 1514, -530, 1000, 1104, 1830, -523, -513, -27, 1647, 470, 1425, 835, 186, 1729, -95, -309, 1265, 1754, 452, 38, 472, -10, -238, -721, 435, 700, 904, -126, -802, 1579, 720, 412, -416, -845, 60, 213, 1979, 1154, 637, 531, -475, 1578, -141, 1026, 1032, 623, -158, -113, 41, 316, 47, 720, -427, 255, 547, 199, 888, 1865, 827, 473, 321, 209, -699, 1327, 812, 1645, 289, 288, -885, 1409, 165, 97, -52, 1657, -324, 301, 1375, 1486, -984, -839, -304, 1066, 279, 601, 1850, 217, 1158, 1527, 931, 1550, 484, -427, 946, -324, 145, 150, -845, 985, -700, 523, -452, 33, -495, -279, -47, 788, 1370, 1093, -876, 1707, 759, 538, 842, 1994, 1291, 746, 1542, 1327, 1912, 1088, 385, 1892, 769, -688, 873, -313, 346, 1750, 163, 797, 1909, -639, -869, 1661, 771, 1730, 1973, -730, 1669, 1929, 698, 754, -362, 129, 339, -119, 1299, 837, 895, 1770, -776, 777, 1220, 1311, 278, -364, -42, 761, 256, 219, -518, 401, -942, 924, -628, 1242, 781, 1996, 1534, 444, -340, -451, 1309, -667, -316, -911, 185, 807, -100, -26, -357, 315, 1017, -801, 1630, 703, 1807, 793, -218, 769, 1070, 202, 1119, -305, 1513, 1180, 287, 266, 844, 954, -296, -753, 661, 766, -992, -700, 344, 1322, -852, 1397, -873, 1226, 234, 915, 862, 66, -142, 1381, 1596, 563, 65, 1214, 167, -26, 451, 1786, -722, 1871, 2, -271, -726, 377, 1295, 1540, -166, -925, 477, 1316, 1201, -64, 154, 830, -739, 1929, 1814, 42, 887, 337, 1769, 765, 324, 1250, 1836, -734, -800, -722, 985, 1361, -205, 1189, 1112, -140, -324, 886, 1803, -840, -439, 22, 569, 257, 1436, 449, 422, 1586, 1383, -264, 950, 1796, -572, 113, -834, 822, -144, -585, -656, 1550, 932, 1900, 1872, 821, 864, 200, -220, 589, 1966, 222, -889, -249, 561, -691, 1603, -625, 41, -251, 348, 1956}; -// -// List array = changeIntToBigInteger(intArray); - - - BigInteger n = BigInteger.valueOf(array.size()); -// BigInteger n = new BigInteger("370"); - TransactionReceipt transactionReceipt = insertSort.OuputArrays(array, n, new BigInteger("1000")).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - List resultarr = insertSort.get_arr().send(); - collector.logStepPass("resultarr:" + resultarr); - - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - - /** - * int 数组转 BigInteger - * @param intArray - * @return - */ - private List changeIntToBigInteger(Integer[] intArray) { - List bigIntegerList = new ArrayList<>(); - for (int i = 0; i { -// try { -// semaphore.acquire(); -// credentials = Credentials.create(jsonArray.getJSONObject(finalI).getString("private_key")); -// transactionManager = new RawTransactionManager(web3j, credentials, chainId); -// -// TransactionReceipt transactionReceipt = SimpleStorage.load(contractAddress, web3j, transactionManager, provider, chainId).hello().send(); -// collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash() -// + ", currentBlockNumber:" + transactionReceipt.getBlockNumber()); -// -// byte[] hash = SimpleStorage.load(contractAddress, web3j, transactionManager, provider, chainId).hash().send(); -// collector.logStepPass("contract load successful, current time:" + finalI + ", blockHash:" + DataChangeUtil.bytesToHex(hash)); -// } catch (Exception e) { -// //e.printStackTrace(); -// //collector.logStepFail("call fail.", e.toString()); -// } finally { -// semaphore.release(); -// countDownLatch.countDown(); -// } -// }); -// -// } -// countDownLatch.await(); -// executorService.shutdown(); -// -// } catch (Exception e) { -// collector.logStepFail("The contract fail.", e.toString()); -// } -// } -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exec_efficiency/SpaceComplexityTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exec_efficiency/SpaceComplexityTest.java deleted file mode 100644 index 0ea47f5912..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/exec_efficiency/SpaceComplexityTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.evm.v0_5_17.exec_efficiency; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.SpaceComplexity; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title SpaceComplexityTest - * @description 空间复杂度场景测试 - * @author qcxiao - * @updateTime 2019/12/28 14:39 - */ -public class SpaceComplexityTest extends ContractPrepareTest { - private BigInteger numberOfCalls; - private String contractAddress; - - @Before - public void before() { - numberOfCalls = new BigInteger(driverService.param.get("numberOfCalls")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "exec_efficiency.SpaceComplexityTest-空间复杂度", sourcePrefix = "evm/0.5.17") - public void test() { - prepare(); - try { - SpaceComplexity spaceComplexity = SpaceComplexity.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = spaceComplexity.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + spaceComplexity.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt transactionReceipt = SpaceComplexity.load(contractAddress, web3j, transactionManager, provider, chainId) - .testStorage(numberOfCalls).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - String name = SpaceComplexity.load(contractAddress, web3j, transactionManager, provider, chainId).name().send(); - - if (numberOfCalls.mod(BigInteger.valueOf(2)) == BigInteger.ZERO) { - collector.assertEqual(name, "QCXIAO"); - } else { - collector.assertEqual(name, "qcxiao"); - } - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/Modifier/InheritanceModifierTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/Modifier/InheritanceModifierTest.java deleted file mode 100644 index 7e4518003e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/Modifier/InheritanceModifierTest.java +++ /dev/null @@ -1,56 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.Modifier; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.InheritanceModifier; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - *1.验证单一修饰器 - *2.验证特殊_的用法,符合函数修饰器定义的条件,才可以执行函数体内容 - *3.验证修饰器可以接收参数 - *4.验证合约继承情况下的修饰器的使用 - * @author liweic - * @dev 2020/01/02 20:50 - */ - -public class InheritanceModifierTest extends ContractPrepareTest { - private String modifiertest; - - @Before - public void before() { - this.prepare(); - modifiertest = driverService.param.get("modifiertest"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.InheritanceModifierTest-单修饰器函数测试", sourcePrefix = "evm/0.5.17") - public void inheritancemodifier() { - try { - InheritanceModifier inheritanceModifier = InheritanceModifier.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = inheritanceModifier.getContractAddress(); - TransactionReceipt tx = inheritanceModifier.getTransactionReceipt().get(); - collector.logStepPass("InheritanceModifier deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("InheritanceModifier deploy gasUsed:" + inheritanceModifier.getTransactionReceipt().get().getGasUsed()); - - //验证单修饰器函数调用 - BigInteger result = inheritanceModifier.getA().send(); - collector.logStepPass("InheritanceModifier函数返回值:" + result); - collector.assertEqual(modifiertest ,result.toString()); - - - } catch (Exception e) { - collector.logStepFail("InheritanceModifierContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/Modifier/ModifiersTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/Modifier/ModifiersTest.java deleted file mode 100644 index f30228918e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/Modifier/ModifiersTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.Modifier; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.Modifiers; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - - -/** - * @title 验证多修饰器 - * @description: - * @author: liweic - * @create: 2020/01/02 20:01 - **/ - -public class ModifiersTest extends ContractPrepareTest { - - private String modifierstest; - - @Before - public void before() { - this.prepare(); - modifierstest = driverService.param.get("modifierstest"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.ModifiersTest-多修饰器函数测试", sourcePrefix = "evm/0.5.17") - public void modifiers() { - try { - Modifiers modifiers = Modifiers.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = modifiers.getContractAddress(); - TransactionReceipt tx = modifiers.getTransactionReceipt().get(); - collector.logStepPass("modifiers deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("modifiers deploy gasUsed:" + modifiers.getTransactionReceipt().get().getGasUsed()); - - //验证多修饰器函数调用 - TransactionReceipt result = modifiers.test1().send(); - collector.logStepPass("交易hash:" + result.getTransactionHash()); - - BigInteger a = modifiers.test2().send(); - collector.logStepPass("modifiers函数返回值:" + a); - collector.assertEqual(modifierstest ,a.toString()); - - - } catch (Exception e) { - collector.logStepFail("ModifiersContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/assembly/AssemblyReturnsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/assembly/AssemblyReturnsTest.java deleted file mode 100644 index 39a50ba82d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/assembly/AssemblyReturnsTest.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.assembly; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple5; -import network.platon.contracts.evm.v0_5_17.AssemblyReturns; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 验证内联汇编关键字assembly,汇编赋值并返回多类型参数 - * @description: - * @author: liweic - * @create: 2020/01/07 19:01 - **/ - -public class AssemblyReturnsTest extends ContractPrepareTest { - private String B; - private String C; - - - @Before - public void before() { - this.prepare(); - B = driverService.param.get("B"); - C = driverService.param.get("C"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.AssemblyReturnsTest-AssemblyReturns测试", sourcePrefix = "evm/0.5.17") - public void Assemblyreturns() { - try { - AssemblyReturns assemblyreturns = AssemblyReturns.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = assemblyreturns.getContractAddress(); - TransactionReceipt tx = assemblyreturns.getTransactionReceipt().get(); - collector.logStepPass("AssemblyReturns deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("AssemblyReturns deploy gasUsed:" + assemblyreturns.getTransactionReceipt().get().getGasUsed()); - - //验证AssemblyReturns - Tuple5 result = assemblyreturns.f().send(); - - collector.logStepPass("Assemblyreturns第一个返回值:" + result.getValue1()); - collector.assertEqual(new BigInteger("2") ,result.getValue1()); - - byte[] value2 = (byte[])result.getValue2(); - String b = DataChangeUtil.bytesToHex(value2); - collector.logStepPass("Assemblyreturns第二个返回值:" + b); - collector.assertEqual(B ,b); - - byte[] value3 = (byte[])result.getValue3(); - String c = DataChangeUtil.bytesToHex(value3); - collector.logStepPass("Assemblyreturns第三个返回值:" + c); - collector.assertEqual(C ,c); - - collector.logStepPass("Assemblyreturns第四个返回值:" + result.getValue4()); - collector.assertEqual(true ,result.getValue4()); - - collector.logStepPass("Assemblyreturns第五个返回值:" + result.getValue5()); -// collector.assertEqual("lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2" ,result.getValue5().toString()); - collector.assertEqual("atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq" ,result.getValue5().toString()); - - } catch (Exception e) { - collector.logStepFail("AssemblyReturnsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/assembly/SumAssemblyTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/assembly/SumAssemblyTest.java deleted file mode 100644 index 0d71cdb14e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/assembly/SumAssemblyTest.java +++ /dev/null @@ -1,57 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.assembly; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.SumAssembly; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - 1.验证内联汇编在库中的使用 - 2.验证汇编的操作码add,mul等 - * @author liweic - * @dev 2020/01/08 14:30 - */ - -public class SumAssemblyTest extends ContractPrepareTest { - private String sum; - - - @Before - public void before() { - this.prepare(); - sum = driverService.param.get("sum"); - - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.SumAssemblyTest-汇编操作指令测试", sourcePrefix = "evm/0.5.17") - public void Sumassembly() { - try { - SumAssembly sumassembly = SumAssembly.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = sumassembly.getContractAddress(); - TransactionReceipt tx = sumassembly.getTransactionReceipt().get(); - collector.logStepPass("SumAssembly deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("SumAssembly deploy gasUsed:" + sumassembly.getTransactionReceipt().get().getGasUsed()); - - //验证内联汇编操作指令 - BigInteger result = sumassembly.sum().send(); - - collector.logStepPass("SumAssembly返回值:" + result); - collector.assertEqual(sum ,result.toString()); - - - } catch (Exception e) { - collector.logStepFail("SumAssemblyContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/contractRelatedAndFallback/FallbackTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/contractRelatedAndFallback/FallbackTest.java deleted file mode 100644 index 5f4342a165..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/contractRelatedAndFallback/FallbackTest.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.contractRelatedAndFallback; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.FallBack; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - - -/** - 1.验证合约关键字this,表示当前合约,可以显示的转换为Address - 2.验证Fallback函数,调用了未命名的函数等方式 - * @author liweic - * @dev 2020/01/02 18:00 - */ - -public class FallbackTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.FallbackTest-this和回退函数测试", sourcePrefix = "evm/0.5.17") - public void fallback() { - try { - FallBack fallback = FallBack.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = fallback.getContractAddress(); - TransactionReceipt tx = fallback.getTransactionReceipt().get(); - collector.logStepPass("FallBack deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("FallBack deploy gasUsed:" + fallback.getTransactionReceipt().get().getGasUsed()); - - //验证this和回退函数 - BigInteger a = fallback.getA().send(); - collector.logStepPass("回退函数调用前a的值:" + a); - - TransactionReceipt functionnotexist = fallback.CallFunctionNotExist().send(); - collector.logStepPass("打印fallback交易hash:" + functionnotexist.getTransactionHash()); - - BigInteger falla = fallback.getA().send(); - collector.logStepPass("回退函数调用后a的值:" + falla); - collector.assertEqual(new BigInteger("100"),falla); - - } catch (Exception e) { - collector.logStepFail("FallbackContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/delete/DeleteDemoTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/delete/DeleteDemoTest.java deleted file mode 100644 index 39e0eb9edc..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/delete/DeleteDemoTest.java +++ /dev/null @@ -1,113 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.delete; - -import com.alaya.bech32.Bech32; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_5_17.DeleteDemo; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * 验证delete关键字,验证各种类型的delete,包括bool,uint,address,bytes,string,enum - * @author liweic - * @dev 2020/01/09 16:10 - */ - -public class DeleteDemoTest extends ContractPrepareTest { - - private String i; - private String addr; - - @Before - public void before() { - this.prepare(); - i = driverService.param.get("i"); - addr = driverService.param.get("addr"); - - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.DeleteDemoTest-delete操作测试", sourcePrefix = "evm/0.5.17") - public void Deletedemo() { - try { - DeleteDemo deletedemo = DeleteDemo.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = deletedemo.getContractAddress(); - TransactionReceipt tx = deletedemo.getTransactionReceipt().get(); - collector.logStepPass("DeleteDemo deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("DeleteDemo deploy gasUsed:" + deletedemo.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt result = deletedemo.deleteAttr().send(); - collector.logStepPass("打印result交易Hash:" + result.getTransactionHash()); - - //验证delete bool - boolean delb = deletedemo.getbool().send(); - collector.logStepPass("delete bool返回值:" + delb); - collector.assertEqual(false ,delb); - - //验证delete uint - BigInteger deli = deletedemo.getunit().send(); - collector.logStepPass("delete uint返回值:" + deli); - collector.assertEqual(i ,deli.toString()); - - //验证delete addr - String deladdr = deletedemo.getaddress().send(); - collector.logStepPass("delete addr返回值:" + deladdr); - addr = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(), addr); - collector.assertEqual(addr ,deladdr); - - //delete bytes - byte[] delbytes = deletedemo.getbytes().send(); - String a = DataChangeUtil.bytesToHex(delbytes); - collector.logStepPass("delete bytes返回值:" + a); - collector.assertEqual("" ,a); - - //delete str - String delstr = deletedemo.getstr().send(); - collector.logStepPass("delete str返回值:" + delstr); - collector.assertEqual("" ,delstr); - - //delete enum - BigInteger delenum = deletedemo.getenum().send(); - collector.logStepPass("delete enum返回值:" + delenum); - collector.assertEqual("0" ,delenum.toString()); - - //delete dynamicarray - BigInteger deldynamic = deletedemo.delDynamicArray().send(); - collector.logStepPass("delete dynamicarray返回值:" + deldynamic); - collector.assertEqual("0" ,delenum.toString()); - - //delete struct - TransactionReceipt st = deletedemo.delStruct(new BigInteger("1")).send(); - - Tuple2 delstruct = deletedemo.getstruct().send(); - collector.logStepPass("struct执行delete后第一个值:" + delstruct.getValue1()); - collector.assertEqual("0" ,delstruct.getValue1().toString()); - collector.logStepPass("struct执行delete后第二个值:" + delstruct.getValue2()); - collector.assertEqual("" ,delstruct.getValue2().toString()); - - //delete struct mapping - TransactionReceipt sta = deletedemo.delMapping(new BigInteger("1")).send(); - - Tuple2 delstructmapping = deletedemo.getdelMapping().send(); - collector.logStepPass("struct执行delete后mapping值:" + delstructmapping.getValue1()); - collector.assertEqual("2000" ,delstructmapping.getValue1().toString()); - - collector.logStepPass("struct执行delete后非mapping值:" + delstructmapping.getValue2()); - collector.assertEqual("0" ,delstructmapping.getValue2().toString()); - - - } catch (Exception e) { - collector.logStepFail("DeleteDemoContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/GetterTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/GetterTest.java deleted file mode 100644 index 87f44673aa..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/GetterTest.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.functionVisibilityAndDecarations; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.Getter; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import com.alaya.tuples.generated.Tuple2; - -import java.math.BigInteger; - - -/** - * @title 验证getter函数,状态变量所创建的访问器函数,与变量同名。以internal访问时,按状态变量的方式使用,若以external的方式访问时,则需要通过访问器函数 - * @description: - * @author: liweic - * @create: 2020/01/02 15:01 - **/ - -public class GetterTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.GetterTest-getter函数测试", sourcePrefix = "evm/0.5.17") - public void getter() { - try { - Getter getter = Getter.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = getter.getContractAddress(); - TransactionReceipt tx = getter.getTransactionReceipt().get(); - collector.logStepPass("getter deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("getter deploy gasUsed:" + getter.getTransactionReceipt().get().getGasUsed()); - - //验证编译器创建的getter函数 - BigInteger data = getter.data().send(); - collector.logStepPass("getter函数返回值:" + data); - collector.assertEqual(new BigInteger("10"),data); - - Tuple2 data2 = getter.f().send(); - //以internal访问时,按状态变量的方式使用 - collector.logStepPass("interal访问data的返回值:" + data2.getValue1()); - collector.assertEqual(new BigInteger("10"),data2.getValue1()); - //以external的方式访问时,则需要通过访问器函数 - collector.logStepPass("external访问data的返回值:" + data2.getValue2()); - collector.assertEqual(new BigInteger("10"),data2.getValue2()); - - - } catch (Exception e) { - collector.logStepFail("GetterContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/InterTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/InterTest.java deleted file mode 100644 index e7562d85a7..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/InterTest.java +++ /dev/null @@ -1,53 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.functionVisibilityAndDecarations; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.Inter; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 验证internal在继承合约里的调用 - * @description: - * @author: liweic - * @create: 2020/01/02 16:01 - **/ - -public class InterTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.InterTest-函数可见性继承合约调用内部方法测试", sourcePrefix = "evm/0.5.17") - public void inter() { - try { - Inter intercall = Inter.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = intercall.getContractAddress(); - TransactionReceipt tx = intercall.getTransactionReceipt().get(); - collector.logStepPass("Inter deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("Inter deploy gasUsed:" + intercall.getTransactionReceipt().get().getGasUsed()); - - //验证继承合约可以调用父合约的内部方法 - BigInteger interdata = intercall.g().send(); - collector.logStepPass("public可见函数返回值:" + interdata); - collector.assertEqual(new BigInteger("3"),interdata); - - } catch (Exception e) { - collector.logStepFail("InterContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/PayableTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/PayableTest.java deleted file mode 100644 index 96078f69fd..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/PayableTest.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.functionVisibilityAndDecarations; - -import com.alaya.bech32.Bech32; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.Payable; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 验证Payable声明 - * @description: - * @author: liweic - * @create: 2020/01/02 16:01 - **/ - -public class PayableTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.PayableTest-函数声明方式Payable测试", sourcePrefix = "evm/0.5.17") - public void payable() { - try { - Payable payable = Payable.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = payable.getContractAddress(); - TransactionReceipt tx = payable.getTransactionReceipt().get(); - collector.logStepPass("paybale deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("paybale deploy gasUsed:" + payable.getTransactionReceipt().get().getGasUsed()); - - //验证payable声明 - - String toAdddress = "0x8a9B36694F1eeeb500c84A19bB34137B05162EC4"; - toAdddress = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(), toAdddress); - - BigInteger payablepremoney = payable.getBalances(toAdddress).send(); - collector.logStepPass("转账前余额:" + payablepremoney); - TransactionReceipt result = payable.transfer(toAdddress, new BigInteger("100")).send(); - BigInteger payableaftermoney = payable.getBalances(toAdddress).send(); - collector.logStepPass("转账后余额:" + payableaftermoney); - int a = Integer.valueOf(payableaftermoney.toString()); - int b = Integer.valueOf(payablepremoney.toString()); - int payablecount = a - b; - collector.assertEqual(100,payablecount); - - - } catch (Exception e) { - collector.logStepFail("PayableContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/SelectorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/SelectorTest.java deleted file mode 100644 index 2c7b93efda..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/SelectorTest.java +++ /dev/null @@ -1,51 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.functionVisibilityAndDecarations; - - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.Selector; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - - -/** - * 验证public (或 external) 函数有一个特殊的成员selector, 它对应一个ABI 函数选择器. - * @author liweic - * @dev 2020/01/11 20:30 - */ - -public class SelectorTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.SelectorTest-Selector测试", sourcePrefix = "evm/0.5.17") - public void selector() { - try { - Selector selector = Selector.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = selector.getContractAddress(); - TransactionReceipt tx = selector.getTransactionReceipt().get(); - collector.logStepPass("Selector deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("Selector deploy gasUsed:" + selector.getTransactionReceipt().get().getGasUsed()); - - //验证payable声明 - byte[] result = selector.f().send(); - String f = DataChangeUtil.bytesToHex(result); - - collector.logStepPass("selector:" + f); - collector.assertEqual("b8c9d365",f); - - } catch (Exception e) { - collector.logStepFail("SelectorContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/VisibilityTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/VisibilityTest.java deleted file mode 100644 index 25f87d25e8..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functionVisibilityAndDecarations/VisibilityTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.functionVisibilityAndDecarations; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.Visibility; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 验证函数四种可见性external,public,internal,private - * @description: - * @author: liweic - * @create: 2020/01/02 16:01 - **/ - -public class VisibilityTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.VisibilityTest-函数可见性测试", sourcePrefix = "evm/0.5.17") - public void Visibility() { - try { - Visibility visibility = Visibility.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = visibility.getContractAddress(); - TransactionReceipt tx = visibility.getTransactionReceipt().get(); - collector.logStepPass("Visibility deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("Visibility deploy gasUsed:" + visibility.getTransactionReceipt().get().getGasUsed()); - - //验证public可见性 - BigInteger pubdata = visibility.fpub(new BigInteger("10")).send(); - collector.logStepPass("public可见函数返回值:" + pubdata); - collector.assertEqual(new BigInteger("13"),pubdata); - - //验证external可见性 - BigInteger extdata = visibility.fe(new BigInteger("10")).send(); - collector.logStepPass("external可见函数返回值:" + extdata); - collector.assertEqual(new BigInteger("12"),extdata); - - - } catch (Exception e) { - collector.logStepFail("VisibilityContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functioncalls/CallExternalTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functioncalls/CallExternalTest.java deleted file mode 100644 index 86dd05e85a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functioncalls/CallExternalTest.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.functioncalls; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.CallExternal; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.apache.commons.lang.StringUtils; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.util.List; - - -/** - * @title 验证函数外部调用 - * @description: - * @author: liweic - * @create: 2020/01/02 19:11 - **/ - -public class CallExternalTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.CallExternalTest-函数外部调用测试", sourcePrefix = "evm/0.5.17") - public void callexternal() { - try { - CallExternal callexternal = CallExternal.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = callexternal.getContractAddress(); - TransactionReceipt tx = callexternal.getTransactionReceipt().get(); - collector.logStepPass("callexternal deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("callexternal deploy gasUsed:" + callexternal.getTransactionReceipt().get().getGasUsed()); - - //验证函数外部调用 - TransactionReceipt result = callexternal.getResult(new BigInteger("1")).send(); - collector.logStepPass("打印交易Hash:" + result.getTransactionHash()); - collector.logStepPass("intercall函数返回值:" + result); - - List eventResult =callexternal.getExternalCValueEvents(result); - String cv=eventResult.get(0).log.getData(); - collector.assertEqual(subHexData(cv),subHexData("3")); - - - } catch (Exception e) { - collector.logStepFail("CallExternalContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - - private String subHexData(String hexStr) { - if (StringUtils.isBlank(hexStr)) { - throw new IllegalArgumentException("string is blank"); - } - if (StringUtils.startsWith(hexStr, "0x")) { - hexStr = StringUtils.substringAfter(hexStr, "0x"); - } - byte[] addi = hexStr.getBytes(); - for (int i = 0; i < addi.length; i++) { - if (addi[i] != 0) { - hexStr = StringUtils.substring(hexStr, i - 1); - break; - } - } - return hexStr; - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functioncalls/InternalCallTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functioncalls/InternalCallTest.java deleted file mode 100644 index 4b8a0e1e47..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functioncalls/InternalCallTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.functioncalls; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.IntenalCall; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - - -/** - * @title 验证函数内部调用 - * @description: - * @author: liweic - * @create: 2020/01/02 19:01 - **/ - -public class InternalCallTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.InternalCallTest-函数内部调用测试", sourcePrefix = "evm/0.5.17") - public void intercall() { - try { - IntenalCall intercall = IntenalCall.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = intercall.getContractAddress(); - TransactionReceipt tx = intercall.getTransactionReceipt().get(); - collector.logStepPass("intercall deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("intercall deploy gasUsed:" + intercall.getTransactionReceipt().get().getGasUsed()); - - //验证函数内部调用 - BigInteger result = intercall.getResult().send(); - collector.logStepPass("intercall函数返回值:" + result); - collector.assertEqual(new BigInteger("9"),result); - - - } catch (Exception e) { - collector.logStepFail("InterCallContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functioncalls/NamedCallTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functioncalls/NamedCallTest.java deleted file mode 100644 index ca443fe71d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/functioncalls/NamedCallTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.functioncalls; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_5_17.NamedCall; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 验证函数具名调用 - * @description: - * @author: liweic - * @create: 2020/01/02 19:11 - **/ - -public class NamedCallTest extends ContractPrepareTest { - - @Before - public void before() { - - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.NamedCallTest-函数具名调用测试", sourcePrefix = "evm/0.5.17") - public void namedcall() { - try { - NamedCall namedcall = NamedCall.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = namedcall.getContractAddress(); - TransactionReceipt tx = namedcall.getTransactionReceipt().get(); - collector.logStepPass("namedcall deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("namedcall deploy gasUsed:" + namedcall.getTransactionReceipt().get().getGasUsed()); - - //交换传入值的顺序并返回 - Tuple2 result = namedcall.exchange(new BigInteger("1"),new BigInteger("2")).send(); - collector.logStepPass("exchange函数返回值:" + result); - - //任意顺序的通过变量名来指定参数值 - Tuple2 nametesult = namedcall.namecall().send(); - collector.logStepPass("namecall函数返回值:" + nametesult); - collector.assertEqual("2",result.getValue1().toString()); - collector.assertEqual("1",result.getValue2().toString()); - - - } catch (Exception e) { - collector.logStepFail("NamedCallContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/paramandreturns/FunctionParamTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/paramandreturns/FunctionParamTest.java deleted file mode 100644 index 884333dfce..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/paramandreturns/FunctionParamTest.java +++ /dev/null @@ -1,54 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.paramandreturns; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.FunctionParam; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - - -/** - * @title 入参是函数的使用 - * @description: - * @author: liweic - * @create: 2020/01/11 20:20 - **/ - - -public class FunctionParamTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.FunctionParamTest-参数是函数的类型测试", sourcePrefix = "evm/0.5.17") - public void Functionparam() { - try { - - FunctionParam functionparam = FunctionParam.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = functionparam.getContractAddress(); - TransactionReceipt tx = functionparam.getTransactionReceipt().get(); - collector.logStepPass("FunctionParam deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("FunctionParam deploy gasUsed:" + functionparam.getTransactionReceipt().get().getGasUsed()); - - BigInteger t = functionparam.t().send(); - collector.logStepPass("FunctionParam函数返回值:" + t); - collector.assertEqual("7",t.toString()); - - } catch (Exception e) { - collector.logStepFail("FunctionParamContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/paramandreturns/PramaAndReturnsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/paramandreturns/PramaAndReturnsTest.java deleted file mode 100644 index dd7d1511e5..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/paramandreturns/PramaAndReturnsTest.java +++ /dev/null @@ -1,102 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.paramandreturns; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_5_17.PramaAndReturns; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - -/** - * @title 参数和返回类型 - * @description: - * @author: liweic - * @create: 2019/12/30 15:01 - **/ - - -public class PramaAndReturnsTest extends ContractPrepareTest { - - private String a; - private String b; - private String c; - - @Before - public void before() { - this.prepare(); - a = driverService.param.get("a"); - b = driverService.param.get("b"); - c = driverService.param.get("c"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.PramaAndReturnsTest-参数和返回类型测试", sourcePrefix = "evm/0.5.17") - public void ParamAndReturn() { - try { - - PramaAndReturns pramaAndReturns = PramaAndReturns.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = pramaAndReturns.getContractAddress(); - TransactionReceipt tx = pramaAndReturns.getTransactionReceipt().get(); - collector.logStepPass("pramaAndReturnstest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("pramaAndReturnstest deploy gasUsed:" + pramaAndReturns.getTransactionReceipt().get().getGasUsed()); - - BigInteger resultA = pramaAndReturns.InputParam(new BigInteger(a)).send(); - collector.logStepPass("InputParam函数返回值:" + resultA); - collector.assertEqual("100",resultA.toString()); - - //调用没有返回值的函数 - TransactionReceipt transactionReceipt = pramaAndReturns.NoOutput(new BigInteger("1"),new BigInteger("1")).send(); - collector.logStepPass("NoOutput NoOutput successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - ////验证函数NoOutput是否调用成功 - BigInteger resultB = pramaAndReturns.getS().send(); - collector.logStepPass("验证的S值为: " + resultB); - collector.assertEqual(new BigInteger("1"), resultB); - - BigInteger resultC = pramaAndReturns.OmitParam(new BigInteger("10"), new BigInteger("20")).send(); - collector.logStepPass("OmitParam函数返回值为: " + resultC); - collector.assertEqual(new BigInteger("10"), resultC); - - //入参和出参均为数组 - List bigIntegerList = new ArrayList(); - bigIntegerList.add(new BigInteger(a)); - bigIntegerList.add(new BigInteger(b)); - bigIntegerList.add(new BigInteger(c)); - - List resList = pramaAndReturns.IuputArray(bigIntegerList).send(); - collector.logStepPass("IuputArray第一个数: " + resList.get(0)); - collector.assertEqual("100", resList.get(0).toString()); - collector.logStepPass("IuputArray第二个数: " + resList.get(1)); - collector.assertEqual("1", resList.get(1).toString()); - collector.logStepPass("IuputArray第三个数: " + resList.get(2)); - collector.assertEqual("3", resList.get(2).toString()); - - //返回值类型是字符串 - String resultD = pramaAndReturns.OuputString().send(); - collector.logStepPass("返回的字符串是: " + resultD); - collector.assertEqual(resultD, "What's up man"); - - //多个返回值且返回类型是数组 - Tuple2 resultE = pramaAndReturns.OuputArrays().send(); - collector.logStepPass("第一个数组是: " + resultE.getValue1()); - collector.assertEqual("[10, 2, 3]", resultE.getValue1().toString()); - collector.logStepPass("第二个数组是: " + resultE.getValue2()); - collector.assertEqual("[10, 2, 3]", resultE.getValue2().toString()); - - } catch (Exception e) { - collector.logStepFail("ParamAndReturnsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/ABIFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/ABIFunctionsTest.java deleted file mode 100644 index 35f5f6f64b..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/ABIFunctionsTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.specialVariablesAndFunctions; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.ABIFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; -/** - * @title 验证ABI编解码函数 - * @description: - * @author: liweic - * @create: 2019/12/30 19:01 - **/ - -public class ABIFunctionsTest extends ContractPrepareTest { - - private String encodeWithSignature; - private String encode; - private String encodePacked; - - @Before - public void before() { - this.prepare(); - encodeWithSignature = driverService.param.get("encodeWithSignature"); - encode = driverService.param.get("encode"); - encodePacked = driverService.param.get("encodePacked"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.ABIFunctionsTest-ABI函数测试", sourcePrefix = "evm/0.5.17") - public void ABIfunction() { - try { - ABIFunctions abiFunctions = ABIFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = abiFunctions.getContractAddress(); - TransactionReceipt tx = abiFunctions.getTransactionReceipt().get(); - collector.logStepPass("ABIFunctionsTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("ABIFunctionsTest deploy gasUsed:" + abiFunctions.getTransactionReceipt().get().getGasUsed()); - - //验证abi.encodeWithSignature函数 - byte[] resultA = abiFunctions.getEncodeWithSignature().send(); - String hexValue = DataChangeUtil.bytesToHex(resultA); - collector.logStepPass("getEncodeWithSignature函数返回值:" + hexValue); - collector.assertEqual(encodeWithSignature ,hexValue); - - //验证abi.encode函数 - byte[] resultB = abiFunctions.getEncode().send(); - String hexValue2 = DataChangeUtil.bytesToHex(resultB); - collector.logStepPass("getEncode函数返回值:" + hexValue2); - collector.assertEqual(encode ,hexValue2); - - //验证abi.encodePacked函数 - byte[] resultC = abiFunctions.getEncodePacked().send(); - String hexValue3 = DataChangeUtil.bytesToHex(resultC); - collector.logStepPass("getEncodePacked函数返回值:" + hexValue3); - collector.assertEqual(encodePacked ,hexValue3); - - } catch (Exception e) { - collector.logStepFail("ABIFuctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/AddressFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/AddressFunctionsTest.java deleted file mode 100644 index d6c569d427..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/AddressFunctionsTest.java +++ /dev/null @@ -1,92 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.specialVariablesAndFunctions; - -import com.alaya.bech32.Bech32; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.AddressFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 验证地址相关函数 - * @description: - * @author: liweic - * @create: 2020/01/02 11:30 - **/ - -public class AddressFunctionsTest extends ContractPrepareTest { - private String amount; - - @Before - public void before() { - this.prepare(); - amount = driverService.param.get("amount"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.AddressFunctionsTest-地址相关函数测试", sourcePrefix = "evm/0.5.17") - public void Addressfunctions() { - try { - AddressFunctions addressfunctions = AddressFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = addressfunctions.getContractAddress(); - TransactionReceipt tx = addressfunctions.getTransactionReceipt().get(); - collector.logStepPass("Addressfunctions deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("Addressfunctions deploy gasUsed:" + addressfunctions.getTransactionReceipt().get().getGasUsed()); - - //验证balance(地址账户)函数 - String balanceaddr = "0x03f0e0a226f081a5daecfda222cafc959ed7b800"; - balanceaddr = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),balanceaddr); - BigInteger money = addressfunctions.getBalance(balanceaddr).send(); - collector.logStepPass("地址账户getBalance函数返回值:" + money); - int num = money.toString().length(); - boolean n = num > 0; - collector.assertEqual(n,true); - - //验证balance(合约账户)函数 - BigInteger contractmoney = addressfunctions.getBalanceOf().send(); - collector.logStepPass("合约账户getBalance函数返回值:" + contractmoney); - int num2 = contractmoney.toString().length(); - collector.assertEqual(1,num2); - - //验证transfer函数 - String transferaddr = "0x8a9B36694F1eeeb500c84A19bB34137B05162EC1"; - transferaddr = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),transferaddr); - BigInteger addresspremoney = addressfunctions.getBalance(transferaddr).send(); - collector.logStepPass("转账前余额:" + addresspremoney); - TransactionReceipt result = addressfunctions.transfer(transferaddr ,new BigInteger(amount)).send(); - collector.logStepPass("transfer转账结果交易Hash:" + result.getTransactionHash()); - BigInteger addressaftermoney = addressfunctions.getBalance(transferaddr).send(); - collector.logStepPass("转账后余额:" + addressaftermoney); - int a = Integer.valueOf(addressaftermoney.toString()); - int b = Integer.valueOf(addresspremoney.toString()); - int transfercounts = a - b; - collector.assertEqual(amount ,String.valueOf(transfercounts)); - - - //验证send函数 - String sendsddr = "0x8a9B36694F1eeeb500c84A19bB34137B05162EC7"; - sendsddr = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),sendsddr); - BigInteger sendbefore = addressfunctions.getBalance(sendsddr).send(); - collector.logStepPass("转账前余额:" + sendbefore); - TransactionReceipt result2 = addressfunctions.send(sendsddr ,new BigInteger("10000")).send(); - collector.logStepPass("send转账结果交易Hash:" + result2.getTransactionHash()); - BigInteger addressaftersend = addressfunctions.getBalance(sendsddr).send(); - collector.logStepPass("转账后余额:" + addressaftersend); - int c = Integer.valueOf(addressaftersend.toString()); - int d = Integer.valueOf(sendbefore.toString()); - int sendcount = c - d; - collector.assertEqual(1,sendcount); - - } catch (Exception e) { - collector.logStepFail("AddressFunctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/BlockTransactionPropertiesFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/BlockTransactionPropertiesFunctionsTest.java deleted file mode 100644 index 41cddb43d8..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/BlockTransactionPropertiesFunctionsTest.java +++ /dev/null @@ -1,161 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.specialVariablesAndFunctions; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.BlockTransactionPropertiesFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -/** - * @title 验证区块和交易函数 - * @description: - * @author: liweic - * @create: 2019/12/31 11:01 - **/ - -public class BlockTransactionPropertiesFunctionsTest extends ContractPrepareTest { - - private String coinbase; -// private String gaslimit; - private String msgdata; - private String gasleft; - private String msgsig; - private String gasprice; - - @Before - public void before() { - this.prepare(); - coinbase = driverService.param.get("coinbase"); -// gaslimit = driverService.param.get("gaslimit"); - msgdata = driverService.param.get("msgdata"); - gasleft = driverService.param.get("gasleft"); - msgsig = driverService.param.get("msgsig"); - gasprice = driverService.param.get("gasprice"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.BlockTransactionPropertiesFunctionsTest-区块和交易函数测试", sourcePrefix = "evm/0.5.17") - public void BlockTransactionPropertiesfunction() { - try { - BlockTransactionPropertiesFunctions blockTransactionPropertiesFunctions = BlockTransactionPropertiesFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = blockTransactionPropertiesFunctions.getContractAddress(); - TransactionReceipt tx = blockTransactionPropertiesFunctions.getTransactionReceipt().get(); - collector.logStepPass("BlockTransactionPropertiesFunctionsTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("BlockTransactionPropertiesFunctionsTest deploy gasUsed:" + blockTransactionPropertiesFunctions.getTransactionReceipt().get().getGasUsed()); - - //验证block.number函数(获取块高) - BigInteger PlatONBlocknumber = web3j.platonBlockNumber().send().getBlockNumber(); - collector.logStepPass("web3j拿到的区块高度:" + PlatONBlocknumber); - - BigInteger blocknumber = blockTransactionPropertiesFunctions.getBlockNumber().send(); - collector.logStepPass("block.number函数返回值:" + blocknumber); - int a = Integer.valueOf(blocknumber.toString()); - int b = Integer.valueOf(PlatONBlocknumber.toString()); - int blocknumdiff = a - b; - List list = new ArrayList(); - list.add(new Integer(0)); - list.add(new Integer(1)); - list.add(new Integer(2)); - Boolean bndf = list.contains(blocknumdiff); - collector.assertEqual(true, bndf); - - //验证blockhash(blockNumber)函数(获取区块Hash) - String blocknumberNow = web3j.platonBlockNumber().send().getBlockNumber().toString(); - int number = Integer.valueOf(blocknumberNow).intValue()-100; - byte[] resultB = blockTransactionPropertiesFunctions.getBlockhash(new BigInteger(String.valueOf(number))).send(); - String hexValue = DataChangeUtil.bytesToHex(resultB); - collector.logStepPass("blockhash(blockNumber)函数返回值:" + hexValue); - String errorhash = "0000000000000000000000000000000000000000000000000000000000000000"; - boolean isBool = hexValue.equals(errorhash); - collector.assertTrue(!isBool,"success"); - - //验证block.coinbase函数(获取矿工地址) - String resultC = blockTransactionPropertiesFunctions.getBlockCoinbase().send(); - collector.logStepPass("block.coinbase函数返回值:" + resultC); - String coinaddr = "0x0000000000000000000000000000000000000000"; - boolean iscoinbase = resultC.equals(coinaddr); - collector.assertEqual(!iscoinbase ,true); - - //验证block.difficulty(获取当前块的难度) - BigInteger resultD = blockTransactionPropertiesFunctions.getBlockDifficulty().send(); - collector.logStepPass("block.difficulty函数返回值:" + resultD); - collector.assertEqual("0" ,resultD.toString()); - - //验证block.gaslimit(获取当前区块的gas限额) - BigInteger resultE = blockTransactionPropertiesFunctions.getGaslimit().send(); - collector.logStepPass("block.gaslimit函数返回值:" + resultE); - boolean gas = "0".toString().equals(resultE); - collector.assertEqual(false ,gas); - - //验证block.timestamp(获取当前区块的UNIX时间戳) - BigInteger resultF = blockTransactionPropertiesFunctions.getBlockTimestamp().send(); - collector.logStepPass("block.timestamp函数返回值:" + resultF); - SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); - String resultTime = sdf.format(new Date(Long.parseLong(String.valueOf(resultF)))); - String today = sdf.format(new Date()); - collector.assertEqual(today,resultTime); - - - //验证msg.data(获取完整的calldata) - byte[] resultG = blockTransactionPropertiesFunctions.getData().send(); - String hexvalue2 = DataChangeUtil.bytesToHex(resultG); - collector.logStepPass("msg.data函数返回值:" + hexvalue2); - collector.assertEqual(msgdata ,hexvalue2); - - //验证gasleft()(剩余的gas) - BigInteger resultH = blockTransactionPropertiesFunctions.getGasleft().send(); - collector.logStepPass("gasleft函数返回值:" + resultH); -// collector.assertEqual("9223372036854754307" ,resultH.toString()); - - //验证msg.sender(获取消息发送者(当前调用)) - String resultI = blockTransactionPropertiesFunctions.getSender().send(); - collector.logStepPass("msg.sender函数返回值:" + resultI); - collector.assertEqual(walletAddress.toLowerCase() ,resultI); - - //验证msg.sig(calldata 的前 4 字节(也就是函数标识符)) - byte[] resultJ = blockTransactionPropertiesFunctions.getSig().send(); - String hexvalue3 = DataChangeUtil.bytesToHex(resultJ); - collector.logStepPass("msg.sig函数返回值:" + hexvalue3); - collector.assertEqual(msgsig ,hexvalue3); - - //验证msg.value(随消息发送的以太币的数量) - TransactionReceipt transactionReceipt = blockTransactionPropertiesFunctions.getValue(new BigInteger("2")).send(); - String status = transactionReceipt.getStatus(); - collector.logStepPass("msg.value的transactionReceipt是:" + transactionReceipt); - collector.logStepPass("msg.value的status是:" + status); - collector.assertEqual("0x1" ,status); - - //验证now(目前区块时间戳) - BigInteger resultK = blockTransactionPropertiesFunctions.getNow().send(); - collector.logStepPass("now函数返回值:" + resultK); - SimpleDateFormat sdf2=new SimpleDateFormat("yyyy-MM-dd"); - String resultTime2 = sdf2.format(new Date(Long.parseLong(String.valueOf(resultF)))); - String now = sdf2.format(new Date()); - collector.assertEqual(now,resultTime2); - - //验证tx.gasprice(交易的 gas 价格) - BigInteger resultL = blockTransactionPropertiesFunctions.getGasprice().send(); - collector.logStepPass("tx.gasprice函数返回值:" + resultL); - collector.assertEqual("0" ,resultL.toString()); - - //验证tx.origin(交易发起者(完全的调用链)) - String resultM = blockTransactionPropertiesFunctions.getOrigin().send(); - collector.logStepPass("tx.origin函数返回值:" + resultM); - collector.assertEqual(walletAddress.toLowerCase() ,resultM); - - } catch (Exception e) { - collector.logStepFail("BlockTransactionPropertiesFunctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/BlockhashTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/BlockhashTest.java deleted file mode 100644 index 0c7177180f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/BlockhashTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.specialVariablesAndFunctions; - -import network.platon.contracts.evm.v0_5_17.Blockhash; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -/** - * @title blockHash函数(只能获取(当前块-256)至(当前块-1)之间的块hash) - * @description: - * @author: hudenian - * @create: 2020/03/09 19:17 - **/ - -public class BlockhashTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.BlockhashTest-验证以blockhash函数", sourcePrefix = "evm/0.5.17") - public void blockhashTest() { - try { - Blockhash blockhash = Blockhash.deploy(web3j, transactionManager, provider, chainId).send(); - - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore0().send())); - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore30().send())); - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore255().send())); - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore256().send())); - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore257().send())); - - } catch (Exception e) { - collector.logStepFail("BlockTransactionPropertiesFunctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/CheckstatusTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/CheckstatusTest.java deleted file mode 100644 index 31f2b2b8c8..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/CheckstatusTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.specialVariablesAndFunctions; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.SelfdestructFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 验证同一个合约部署两次后,两个合约间是否会相互影响 - * @description: - * @author: hudenian - * @create: 2020/02/05 13:37 - **/ - -public class CheckstatusTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "function.CheckstatusTest-两个合约间是否会相互影响", sourcePrefix = "evm/0.5.17") - public void Selfdestructfunction() { - try { - //第一次部署合约 - SelfdestructFunctions selfdestructFunctions = SelfdestructFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = selfdestructFunctions.getContractAddress(); - TransactionReceipt tx = selfdestructFunctions.getTransactionReceipt().get(); - collector.logStepPass("SelfdestructFunctionsTest first deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("SelfdestructFunctionsTest first deploy gasUsed:" + selfdestructFunctions.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt increaseCount = selfdestructFunctions.increment().send(); - collector.logStepPass("交易Hash:" + increaseCount.getTransactionHash()); - BigInteger resultCount = selfdestructFunctions.getCount().send(); - collector.logStepPass("getCount函数返回值:" + resultCount); - collector.assertEqual("5",resultCount.toString()); - - - //第二次部署合约 - SelfdestructFunctions selfdestructFunctionsTwo = SelfdestructFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddressTwo = selfdestructFunctionsTwo.getContractAddress(); - tx = selfdestructFunctionsTwo.getTransactionReceipt().get(); - collector.logStepPass("SelfdestructFunctionsTest second deploy successfully.contractAddress:" + selfdestructFunctionsTwo + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("SelfdestructFunctionsTest second deploy gasUsed:" + selfdestructFunctionsTwo.getTransactionReceipt().get().getGasUsed()); - - increaseCount = selfdestructFunctionsTwo.increment().send(); - collector.logStepPass("交易Hash:" + increaseCount.getTransactionHash()); - resultCount = selfdestructFunctionsTwo.getCount().send(); - collector.logStepPass("getCount函数返回值:" + resultCount); - collector.assertEqual("5",resultCount.toString()); - - //第二个合约自杀后看对第一个合约是否有影响 - TransactionReceipt selfkill = selfdestructFunctionsTwo.selfKill().send(); - collector.logStepPass("自杀函数交易Hash:" + selfkill.getTransactionHash()); - resultCount = selfdestructFunctions.getCount().send(); - collector.logStepPass("第二个合约自杀后查询第一个合约getCount函数返回值:" + resultCount); - collector.assertEqual("5",resultCount.toString()); - - //调用第二个合约查询函数返回值(抛出异常) - BigInteger count1 = selfdestructFunctionsTwo.getCount().send(); - collector.logStepPass("调用自杀函数后链上的count值为:"+count1); - - } catch (Exception e) { - if(e.getMessage().startsWith("Empty")){ - collector.logStepPass("调用自杀函数后链上的count值为:Empty"); - } - collector.assertContains(e.toString(), "ContractCallException"); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/MathAndCryptographicFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/MathAndCryptographicFunctionsTest.java deleted file mode 100644 index 8a818a98f2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/MathAndCryptographicFunctionsTest.java +++ /dev/null @@ -1,105 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.specialVariablesAndFunctions; - -import com.alaya.bech32.Bech32; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.parameters.NetworkParameters; -import network.platon.contracts.evm.v0_5_17.MathAndCryptographicFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 验证数学和加密函数 - * @description: - * @author: liweic - * @create: 2019/12/30 20:01 - **/ - -public class MathAndCryptographicFunctionsTest extends ContractPrepareTest { - - private String addmod; - private String mulmod; - private String keccak256; - private String sha256; - private String ripemd160; - private String ecrecover; - - @Before - public void before() { - this.prepare(); - addmod = driverService.param.get("addmod"); - mulmod = driverService.param.get("mulmod"); - keccak256 = driverService.param.get("keccak256"); - sha256 = driverService.param.get("sha256"); - ripemd160 = driverService.param.get("ripemd160"); - ecrecover = driverService.param.get("ecrecover"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.MathAndCryptographicFunctionsTest-数学和加密函数测试", sourcePrefix = "evm/0.5.17") - public void MathAndCryptographicfunction() { - try { - MathAndCryptographicFunctions mathAndCryptographicFunctions = MathAndCryptographicFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = mathAndCryptographicFunctions.getContractAddress(); - TransactionReceipt tx = mathAndCryptographicFunctions.getTransactionReceipt().get(); - collector.logStepPass("MathAndCryptographicFunctionsTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("MathAndCryptographicFunctionsTest deploy gasUsed:" + mathAndCryptographicFunctions.getTransactionReceipt().get().getGasUsed()); - - //验证addmod函数 - BigInteger resultA = mathAndCryptographicFunctions.callAddMod().send(); - collector.logStepPass("addmod函数返回值:" + resultA); - collector.assertEqual(addmod ,resultA.toString()); - - //验证mulmod函数 - BigInteger resultB = mathAndCryptographicFunctions.callMulMod().send(); - collector.logStepPass("mulmod函数返回值:" + resultB); - collector.assertEqual(mulmod ,resultB.toString()); - - //验证keccak256函数 - byte[] resultC = mathAndCryptographicFunctions.callKeccak256().send(); - String hexValue = DataChangeUtil.bytesToHex(resultC); - collector.logStepPass("keccak256函数返回值:" + hexValue); - collector.assertEqual(keccak256 ,hexValue); - - //验证sha256函数 - byte[] resultD = mathAndCryptographicFunctions.callSha256().send(); - String hexValue2 = DataChangeUtil.bytesToHex(resultD); - collector.logStepPass("sha256函数返回值:" + hexValue2); - collector.assertEqual(sha256 ,hexValue2); - - //验证ripemd160函数 - byte[] resultE = mathAndCryptographicFunctions.callRipemd160().send(); - String hexValue3 = DataChangeUtil.bytesToHex(resultE); - collector.logStepPass("ripemd160函数返回值:" + hexValue3); - collector.assertEqual(ripemd160 ,hexValue3); - - //验证ecrecover函数 - String hash = "e281eaa11e6e37e6f53aade5d6c5b7201ef1c66162ec42ccc3215a0c4349350d"; - byte[] a = DataChangeUtil.hexToByteArray(hash); - - BigInteger v = new BigInteger("27"); - - String R = "55b60cadd4b4a3ea4fc368ef338f97e12e7328dd6e9e969a3fd8e5c10be855fe"; - byte[] b = DataChangeUtil.hexToByteArray(R); - - String S = "2b42cee2585a16ea537efcb88009c1aeac693c28b59aa6bbff0baf22730338f6"; - byte[] c = DataChangeUtil.hexToByteArray(S); - - String resultF = mathAndCryptographicFunctions.callEcrecover(a, v, b, c).send(); - collector.logStepPass("ecrecover函数返回值:" + resultF); - String bech32Address = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(), ecrecover); - collector.assertEqual(bech32Address ,resultF.toLowerCase()); - - } catch (Exception e) { - collector.logStepFail("MathAndCryptographicfunctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/SelfdestructFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/SelfdestructFunctionsTest.java deleted file mode 100644 index 8c54bb2a9a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/function/specialVariablesAndFunctions/SelfdestructFunctionsTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_5_17.function.specialVariablesAndFunctions; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.SelfdestructFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 验证合约自毁函数 - * @description: - * @author: liweic - * @create: 2019/12/30 19:01 - **/ - -public class SelfdestructFunctionsTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.SelfdestructFunctionsTest-合约相关函数测试", sourcePrefix = "evm/0.5.17") - public void Selfdestructfunction() { - try { - SelfdestructFunctions selfdestructFunctions = SelfdestructFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = selfdestructFunctions.getContractAddress(); - TransactionReceipt tx = selfdestructFunctions.getTransactionReceipt().get(); - collector.logStepPass("SelfdestructFunctionsTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("SelfdestructFunctionsTest deploy gasUsed:" + selfdestructFunctions.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt increaseCount = selfdestructFunctions.increment().send(); - collector.logStepPass("交易Hash:" + increaseCount.getTransactionHash()); - BigInteger resultCount = selfdestructFunctions.getCount().send(); - collector.logStepPass("getCount函数返回值:" + resultCount); - collector.assertEqual("5",resultCount.toString()); - - - //调用自杀函数 - TransactionReceipt selfkill = selfdestructFunctions.selfKill().send(); - collector.logStepPass("自杀函数交易Hash:" + selfkill.getTransactionHash()); - - collector.logStepPass("Selfdestruct successful.transactionHash:" + selfkill.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + selfkill.getBlockNumber()); - - - BigInteger count1 = selfdestructFunctions.getCount().send(); - - collector.logStepPass("调用自杀函数后链上的count值为:"+count1); - - - } catch (Exception e) { - if(e.getMessage().startsWith("Empty")){ - collector.logStepPass("调用自杀函数后链上的count值为:Empty"); - } - collector.assertContains(e.toString(), "ContractCallException"); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/innerContract/PlatonUnitTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/innerContract/PlatonUnitTest.java deleted file mode 100644 index 4841c693da..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/innerContract/PlatonUnitTest.java +++ /dev/null @@ -1,74 +0,0 @@ -package network.platon.test.evm.v0_5_17.innerContract;//package network.platon.test.evm.innerContract; -// -//import network.platon.test.evm.beforetest.ContractPrepareTest; -//import network.platon.autotest.junit.annotations.DataSource; -//import network.platon.autotest.junit.enums.DataSourceType; -//import network.platon.contracts.evm.Guessing; -//import network.platon.contracts.evm.PlatonUnit; -//import org.junit.Before; -//import org.junit.Test; -//import org.web3j.protocol.core.DefaultBlockParameterName; -//import org.web3j.protocol.core.methods.response.TransactionReceipt; -//import org.web3j.tx.Transfer; -//import org.web3j.utils.Convert; -// -//import java.math.BigDecimal; -//import java.math.BigInteger; -// -///** -// * @title Platon金额单位测试 -// * @description: -// * @author: hudenian -// * @create: 2020/03/05 16:42 -// * -// **/ -// -//public class PlatonUnitTest extends ContractPrepareTest { -// private String endBlock = "100000000"; //设置竞猜截止块高 -// -// @Before -// public void before() { -// this.prepare(); -// } -// -// @Test -// @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", -// author = "hudenian", showName = "PlatonUnitTest-Platon金额单位测试", sourcePrefix = "network.platon.test.evm") -// public void unitTest() { -// -// try { -// -// PlatonUnit platonUnit = PlatonUnit.deploy(web3j, transactionManager, provider, chainId).send(); -// -// String contractAddress = platonUnit.getContractAddress(); -// TransactionReceipt tx = platonUnit.getTransactionReceipt().get(); -// collector.logStepPass("PlatonUnitTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); -// collector.logStepPass("PlatonUnitTest deploy gasUsed:" + platonUnit.getTransactionReceipt().get().getGasUsed()); -// -// //发起转账 -// Transfer transfer = new Transfer(web3j, transactionManager); -// TransactionReceipt transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.GLAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.MLAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.KLAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.LAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.FINNEY, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.SZABO, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.GVON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.MVON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.KVON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.VON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// -// //查询合约余额 -// String contractBalance = platonUnit.getBalance().send().toString(); -// collector.logStepPass("合约中的余额为:"+contractBalance); -// collector.assertEqual(contractBalance,"1001001001001001001001001001"); -// -// // -// -// -// } catch (Exception e) { -// collector.logStepFail("PlatonUnitTest Calling Method fail.", e.toString()); -// e.printStackTrace(); -// } -// } -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/lib/LibraryStaticUsingTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/lib/LibraryStaticUsingTest.java deleted file mode 100644 index 0ef19cc679..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/lib/LibraryStaticUsingTest.java +++ /dev/null @@ -1,44 +0,0 @@ -package network.platon.test.evm.v0_5_17.lib; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.LibraryStaticUsing; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.List; - -/** - * @title 库引用类似引用static方法测试 - * 解释:如果L作为库的名称,f()是库L的函数,则可以通过L.f()的方式调用 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class LibraryStaticUsingTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "emitEvent", - author = "albedo", showName = "lib.LibraryStaticUsingTest-类static方式引用", sourcePrefix = "evm/0.5.17") - public void testEmitEvent() { - try { - prepare(); - LibraryStaticUsing using = LibraryStaticUsing.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("LibraryStaticUsing issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + using.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = using.register(new BigInteger("12")).send(); - List eventData = using.getResultEvents(receipt); - String data = eventData.get(0).log.getData(); - collector.assertEqual(DataChangeUtil.subHexData(data), DataChangeUtil.subHexData("1"), "checkout static method using library function"); - } catch (Exception e) { - collector.logStepFail("LibraryStaticUsingTest testEmitEvent failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/lib/LibraryUsingForAllTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/lib/LibraryUsingForAllTest.java deleted file mode 100644 index 556a27210b..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/lib/LibraryUsingForAllTest.java +++ /dev/null @@ -1,37 +0,0 @@ -package network.platon.test.evm.v0_5_17.lib; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.LibraryUsingForAll; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 引用using for方式验证 - * 解释:using A for * 的效果是,库 A 中的函数被附加在任意的类型上。 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class LibraryUsingForAllTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "albedo", showName = "lib.LibraryUsingForAllTest-using A for all type", sourcePrefix = "evm/0.5.17") - public void testReplace() { - try { - prepare(); - LibraryUsingForAll using = LibraryUsingForAll.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("LibraryUsingForAll issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + using.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = using.replace(new BigInteger("12"),new BigInteger("14")).send(); - collector.assertEqual(receipt.getStatus(),"0x1" , "checkout using a for * success"); - } catch (Exception e) { - collector.logStepFail("LibraryUsingForAll testReplace method failure:",e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/lib/LibraryUsingForTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/lib/LibraryUsingForTest.java deleted file mode 100644 index d700a4a472..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/lib/LibraryUsingForTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.evm.v0_5_17.lib; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.LibraryUsingFor; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; -import java.math.BigInteger; -import java.util.List; - -/** - * @title 引用using for方式验证 - * 解释:指令using A for B 可用于附加库函数(从库 A)到任何类型(B)。 这些函数将接收到调用它们的对象作为它们的第一个参数。 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class LibraryUsingForTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "albedo", showName = "lib.LibraryUsingForTest-using A for B", sourcePrefix = "evm/0.5.17") - public void testRegister() { - try { - prepare(); - LibraryUsingFor using = LibraryUsingFor.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("LibraryUsingFor issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + using.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = using.register(new BigInteger("12")).send(); - List eventData = using.getResultEvents(receipt); - String data = eventData.get(0).log.getData(); - collector.assertEqual(DataChangeUtil.subHexData(data), DataChangeUtil.subHexData("1"), "checkout using A for B"); - } catch (Exception e) { - collector.logStepFail("LibraryUsingForTest testRegister method failure:",e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/lib/SafeMathMockTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/lib/SafeMathMockTest.java deleted file mode 100644 index 703a5584e7..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/lib/SafeMathMockTest.java +++ /dev/null @@ -1,160 +0,0 @@ -package network.platon.test.evm.v0_5_17.lib; - -import network.platon.contracts.evm.v0_5_17.SafeMathMock; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -public class SafeMathMockTest extends ContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "max", - author = "albedo", showName = "lib.SafeMathMockTest-最大值", sourcePrefix = "evm/0.5.17") - public void testMax() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + using.getTransactionReceipt().get().getGasUsed()); - BigInteger result = using.max(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("13"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testMax failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "min", - author = "albedo", showName = "lib.SafeMathMockTest-最小值", sourcePrefix = "evm/0.5.17") - public void testMin() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.min(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("12"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testMin failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "average", - author = "albedo", showName = "lib.SafeMathMockTest-平均值", sourcePrefix = "evm/0.5.17") - public void testAverage() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.average(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("12"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testAverage failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "add", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型相加", sourcePrefix = "evm/0.5.17") - public void testAdd() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.add(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("25"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testAdd failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "mul", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型相乘", sourcePrefix = "evm/0.5.17") - public void testMul() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.mul(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("156"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testMul failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "sub", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型相减", sourcePrefix = "evm/0.5.17") - public void testSub() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.sub(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("3963877391197344453575983046348115674221700746820753546331534351508065746944"), "checkout library function"); - result = using.sub(new BigInteger("13"), new BigInteger("12")).send(); - collector.assertEqual(result, new BigInteger("1"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testSub failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "div", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型相除", sourcePrefix = "evm/0.5.17") - public void testDiv() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.div(new BigInteger("12"), new BigInteger("0")).send(); - collector.assertEqual(result, new BigInteger("3963877391197344453575983046348115674221700746820753546331534351508065746944"), "checkout library function"); - result = using.div(new BigInteger("13"), new BigInteger("12")).send(); - collector.assertEqual(result, new BigInteger("1"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testDiv failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "mod", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型除余", sourcePrefix = "evm/0.5.17") - public void testMod() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.mod(new BigInteger("12"), new BigInteger("0")).send(); - collector.assertEqual(result, new BigInteger("3963877391197344453575983046348115674221700746820753546331534351508065746944"), "checkout library function"); - result = using.mod(new BigInteger("13"), new BigInteger("12")).send(); - collector.assertEqual(result, new BigInteger("1"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testMod failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/Interface/InterfaceContractALimitTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/Interface/InterfaceContractALimitTest.java deleted file mode 100644 index f80d92575b..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/Interface/InterfaceContractALimitTest.java +++ /dev/null @@ -1,65 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.Interface; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.InterfaceContractParentTest; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:在5.0以后版本,接口的函数只能声明外部类型(external),否则会编译失败 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InterfaceContractALimitTest extends ContractPrepareTest { - - private String param1,param2,sumParam; - - @Before - public void before() { - this.prepare(); - param1 = driverService.param.get("param1"); - param2 = driverService.param.get("param2"); - sumParam = driverService.param.get("sumParam"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InterfaceContract.接口的函数只能声明外部类型",sourcePrefix = "evm/0.5.17") - public void testInterfaceContractLimit() { - - InterfaceContractParentTest interfaceContractParentTest= null; - try { - //合约部署 - interfaceContractParentTest = InterfaceContractParentTest.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = interfaceContractParentTest.getContractAddress(); - TransactionReceipt tx = interfaceContractParentTest.getTransactionReceipt().get(); - - collector.logStepPass("InterfaceContractParentTest issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("InterfaceContractParentTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - BigInteger sumBigInt = interfaceContractParentTest.sumExternal(new BigInteger(param1),new BigInteger(param2)).send(); - collector.logStepPass("调用合约方法完毕 successful.sumBigInt:" + sumBigInt); - collector.assertEqual(sumBigInt, new BigInteger(sumParam), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractParentTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/Interface/InterfaceContractBLimitEnumTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/Interface/InterfaceContractBLimitEnumTest.java deleted file mode 100644 index a5f4c3ee40..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/Interface/InterfaceContractBLimitEnumTest.java +++ /dev/null @@ -1,76 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.Interface; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.InterfaceContractEnumTest; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:在5.0以后版本,接口中可以正常定义枚举 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InterfaceContractBLimitEnumTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InterfaceContractLimitEnum.验证接口中定义枚举",sourcePrefix = "evm/0.5.17") - public void testInterfaceContractLimitEnum() { - - InterfaceContractEnumTest interfaceContractEnumTest= null; - try { - //合约部署 - interfaceContractEnumTest = InterfaceContractEnumTest.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = interfaceContractEnumTest.getContractAddress(); - TransactionReceipt tx = interfaceContractEnumTest.getTransactionReceipt().get(); - - collector.logStepPass("InterfaceContractEnumTest issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("InterfaceContractEnumTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - - //1、执行setLarge() - try { - TransactionReceipt setLargeTransaction = interfaceContractEnumTest.setLarge().send(); - collector.logStepPass("调用合约setLarge()方法完毕 successful hash:" + setLargeTransaction.getTransactionHash()); - //collector.assertEqual(sumBigInt, new BigInteger(sumParam), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractEnumTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //2、执行getChoice() - try { - BigInteger expectChoiceResult = new BigInteger("2"); - BigInteger actualBigInteger = interfaceContractEnumTest.getChoice().send(); - collector.logStepPass("调用合约getChoice()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectChoiceResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractEnumTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/Interface/InterfaceContractBLimitStructTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/Interface/InterfaceContractBLimitStructTest.java deleted file mode 100644 index a9937ac4b4..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/Interface/InterfaceContractBLimitStructTest.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.Interface; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.InterfaceContractStructTest; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:在5.0以后版本,接口可以声明结构体 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InterfaceContractBLimitStructTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InterfaceContractLimitStruct.验证接口定义结构体", sourcePrefix = "evm/0.5.17") - public void testInterfaceContractLimitEnum() { - - InterfaceContractStructTest interfaceContractStructTest= null; - try { - //合约部署 - interfaceContractStructTest = InterfaceContractStructTest.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = interfaceContractStructTest.getContractAddress(); - TransactionReceipt tx = interfaceContractStructTest.getTransactionReceipt().get(); - - collector.logStepPass("InterfaceContractStructTest issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - - //1、执行setBook() - try { - TransactionReceipt setBookTransaction = interfaceContractStructTest.setBook().send(); - collector.logStepPass("调用合约setBook()方法完毕 successful hash:" + setBookTransaction.getTransactionHash()); - //collector.assertEqual(sumBigInt, new BigInteger(sumParam), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //2、执行getBookID() - try { - BigInteger expectBookResult = new BigInteger("1"); - BigInteger actualBigInteger = interfaceContractStructTest.getBookID().send(); - collector.logStepPass("调用合约getBookID()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/Interface/InterfaceContractInhertTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/Interface/InterfaceContractInhertTest.java deleted file mode 100644 index 0d0ca87b35..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/Interface/InterfaceContractInhertTest.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.Interface; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.InterfaceContractInheritMultipleTest; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:合约是否可以继承多个接口 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InterfaceContractInhertTest extends ContractPrepareTest { - - private String a,b,sumValue; - private String c,d,reduceValue; - - @Before - public void before() { - this.prepare(); - a = driverService.param.get("a"); - b = driverService.param.get("b"); - sumValue = driverService.param.get("sumValue"); - c = driverService.param.get("c"); - d = driverService.param.get("d"); - reduceValue = driverService.param.get("reduceValue"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.合约多继承接口执行情况",sourcePrefix = "evm/0.5.17") - public void testAbstractContract() { - - InterfaceContractInheritMultipleTest interfaceInheritMultiple = null; - try { - //合约部署 - interfaceInheritMultiple = InterfaceContractInheritMultipleTest.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = interfaceInheritMultiple.getContractAddress(); - TransactionReceipt tx = interfaceInheritMultiple.getTransactionReceipt().get(); - collector.logStepPass("interfaceContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("interfaceContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - BigInteger resultSum = new BigInteger(sumValue); - BigInteger resultReduce = new BigInteger(reduceValue); - - //合约加法 sum() - BigInteger actualSumValue = interfaceInheritMultiple.sum(new BigInteger(a),new BigInteger(b)).send(); - collector.logStepPass("执行【合约加法 sum()】 actualSumValue:" + actualSumValue); - collector.assertEqual(resultSum,actualSumValue, "checkout execute success."); - - //合约减法 reduce() - BigInteger actualReduceValue = interfaceInheritMultiple.reduce(new BigInteger(c),new BigInteger(d)).send(); - collector.logStepPass("执行【合约减法 reduce()】 actualReduceValue:" + actualReduceValue); - collector.assertEqual(resultReduce,actualReduceValue, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("interfaceContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractAInhertNoImpTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractAInhertNoImpTest.java deleted file mode 100644 index e58bd2bd46..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractAInhertNoImpTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.AbstractContractSon; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -/** - * @title 测试:抽象合约被继承,但未被实现抽象方法,是否可正常执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractAInhertNoImpTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约被继承未实现执行情况",sourcePrefix = "evm/0.5.17") - public void testAbstractContract() { - - AbstractContractSon sonAbstractContract = null; - try { - //合约部署 - sonAbstractContract = AbstractContractSon.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = sonAbstractContract.getContractAddress(); - TransactionReceipt tx = sonAbstractContract.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - String expectResult = "sonName"; - String actualName = sonAbstractContract.sonName().send(); - collector.logStepFail("abstractContract Calling Method Fail.","抽象合约被继承未实现方法无法执行"); - } catch (Exception e) { - collector.logStepPass("执行【抽象合约被继承未实现方法,调用函数sonName()】,抽象合约部分实现是无法执行方法"); - collector.assertEqual(e.getMessage(),"Empty value (0x) returned from contract","checkout execute success."); - //e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractANoImpTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractANoImpTest.java deleted file mode 100644 index 2e7b1fca5a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractANoImpTest.java +++ /dev/null @@ -1,83 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.abstracttest; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.http.HttpService; -import com.alaya.tx.RawTransactionManager; -import com.alaya.tx.gas.ContractGasProvider; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.autotest.junit.rules.AssertCollector; -import network.platon.autotest.junit.rules.DriverService; -import network.platon.contracts.evm.v0_5_17.AbstractContractGrandpa; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 1、抽象合约未实现任何方法,验证是否可编译、部署、执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractANoImpTest { - - @Rule - public AssertCollector collector = new AssertCollector(); - - @Rule - public DriverService driverService = new DriverService(); - - // 底层链ID - private long chainId; - - @Before - public void before() { - chainId = Integer.valueOf(driverService.param.get("chainId")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约未实现执行情况",sourcePrefix = "evm/0.5.17") - public void testAbstractContract() { - Web3j web3j = null; - Credentials credentials = null; - try { - web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); - credentials = Credentials.create(driverService.param.get("privateKey")); - collector.logStepPass("initCurrentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("The node is unable to connect", e.toString()); - e.printStackTrace(); - } - ContractGasProvider provider = new ContractGasProvider(new BigInteger("50000000000"), new BigInteger("3000000")); - RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - - //1、合约部署 - String contractAddress = ""; - try { - AbstractContractGrandpa grandpaAbstractContract = AbstractContractGrandpa.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = grandpaAbstractContract.getContractAddress(); - TransactionReceipt tx = grandpaAbstractContract.getTransactionReceipt().get(); - - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //2、调用合约方法 - try{ - String name = AbstractContractGrandpa.load(contractAddress, web3j, transactionManager, provider, chainId).name().send(); - collector.logStepFail("abstractContract Calling Method Fail.","抽象合约是无法执行方法的"); - }catch (Exception e){ - collector.logStepPass("执行【抽象合约调用函数getName()】,结果无法执行抽象合约方法"); - collector.assertEqual(e.getMessage(),"Empty value (0x) returned from contract","checkout execute success."); - //e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractAPartImpTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractAPartImpTest.java deleted file mode 100644 index f41fceb337..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractAPartImpTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.AbstractContractFather; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -/** - * @title 1、抽象合约实现部分方法,验证是否可编译、部署、执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractAPartImpTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约实现部分执行情况",sourcePrefix = "evm/0.5.17") - public void testAbstractContract() { - - AbstractContractFather fatherAbstractContract = null; - try { - //合约部署 - fatherAbstractContract = AbstractContractFather.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = fatherAbstractContract.getContractAddress(); - TransactionReceipt tx = fatherAbstractContract.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - BigInteger age = fatherAbstractContract.fatherAge().send(); - collector.logStepFail("abstractContract Calling Method Fail.","抽象合约部分实现是无法执行方法"); - } catch (Exception e) { - collector.logStepPass("执行【抽象合约部分实现调用函数fatherAge()】,抽象合约部分实现是无法执行方法"); - collector.assertEqual(e.getMessage(),"Empty value (0x) returned from contract","checkout execute success."); - //e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractBInhertAllImpTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractBInhertAllImpTest.java deleted file mode 100644 index 5a01a70ad0..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractBInhertAllImpTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.AbstractContractBSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -/** - * @title 测试:抽象合约被继承,且实现抽象方法,是否可正常执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractBInhertAllImpTest extends ContractPrepareTest { - - private String name,resultName; - - @Before - public void before() { - this.prepare(); - name = driverService.param.get("name"); - resultName = driverService.param.get("resultName"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约单继承且实现执行情况",sourcePrefix = "evm/0.5.17") - public void testAbstractContract() { - - AbstractContractBSubclass abstractContractBSubclass= null; - try { - //合约部署 - abstractContractBSubclass = AbstractContractBSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = abstractContractBSubclass.getContractAddress(); - TransactionReceipt tx = abstractContractBSubclass.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //设置用户名称setParentName() - TransactionReceipt transactionReceipt = abstractContractBSubclass.setParentName(name).send(); - collector.logStepPass("执行【设置用户名称合约方法setParentName()】,生成hash:" + transactionReceipt.getTransactionHash()); - //获取用户名称parentName() - String actualValue = abstractContractBSubclass.parentName().send(); - collector.logStepPass("执行【获取用户名称 parentName()】 successful.actualValue:" + actualValue); - collector.assertEqual(actualValue,resultName, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("abstractContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractBMultipleInhertTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractBMultipleInhertTest.java deleted file mode 100644 index ff4e830449..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractBMultipleInhertTest.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.AbstractContractCSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -/** - * @title 测试:普通合约是否可以继承多个抽象合约,且实现抽象方法,是否可以正常编译部署执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractBMultipleInhertTest extends ContractPrepareTest { - - private String name,resultName; - - @Before - public void before() { - this.prepare(); - name = driverService.param.get("name"); - resultName = driverService.param.get("resultName"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.合约多继承且实现执行情况",sourcePrefix = "evm/0.5.17") - public void testAbstractContract() { - - AbstractContractCSubclass abstractContractCSubclass= null; - try { - //合约部署 - abstractContractCSubclass = AbstractContractCSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = abstractContractCSubclass.getContractAddress(); - TransactionReceipt tx = abstractContractCSubclass.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //设置用户名称setASubName() - TransactionReceipt transactionReceipt = abstractContractCSubclass.setASubName(name).send(); - collector.logStepPass("执行【设置用户名称合约方法setASubName()】,生成hash:" + transactionReceipt.getTransactionHash()); - //获取用户名称aSubName() - String actualValue = abstractContractCSubclass.aSubName().send(); - collector.logStepPass("执行【获取用户名称 aSubName()】 successful.actualValue:" + actualValue); - collector.assertEqual(actualValue,resultName, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("abstractContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractCInhertTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractCInhertTest.java deleted file mode 100644 index f02af47d2a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractCInhertTest.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.AbstractContractFSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -/** - * @title 测试:抽象合约是否可以继承抽象合约,是否可以正常编译部署执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractCInhertTest extends ContractPrepareTest { - - private String name,resultName; - - @Before - public void before() { - this.prepare(); - name = driverService.param.get("name"); - resultName = driverService.param.get("resultName"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约继承抽象合约执行情况",sourcePrefix = "evm/0.5.17") - public void testAbstractContract() { - - AbstractContractFSubclass abstractContractFSubclass= null; - try { - //合约部署 - abstractContractFSubclass = AbstractContractFSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = abstractContractFSubclass.getContractAddress(); - TransactionReceipt tx = abstractContractFSubclass.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //设置用户名称setASubName() - TransactionReceipt transactionReceipt = abstractContractFSubclass.setParentNameD(name).send(); - collector.logStepPass("执行【设置用户名称合约方法setParentNameD()】,生成hash:" + transactionReceipt.getTransactionHash()); - //获取用户名称aSubName() - String actualValue = abstractContractFSubclass.parentName().send(); - collector.logStepPass("执行【获取用户名称 parentName()】 successful.actualValue:" + actualValue); - collector.assertEqual(actualValue,resultName, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("abstractContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractDInhertTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractDInhertTest.java deleted file mode 100644 index 1153c8742b..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/abstracttest/AbstractContractDInhertTest.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.AbstractContractGSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:抽象合约是否可以继承接口(反之接口是否可以继承抽象合约) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractDInhertTest extends ContractPrepareTest { - - private String age,resultAge; - - @Before - public void before() { - this.prepare(); - age = driverService.param.get("age"); - resultAge = driverService.param.get("resultAge"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约继承接口执行情况",sourcePrefix = "evm/0.5.17") - public void testAbstractContract() { - - AbstractContractGSubclass abstractContractGSubclass= null; - try { - //合约部署 - abstractContractGSubclass = AbstractContractGSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = abstractContractGSubclass.getContractAddress(); - TransactionReceipt tx = abstractContractGSubclass.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //设置用户年龄setInterAge() - BigInteger resultValue = new BigInteger(resultAge); - TransactionReceipt transactionReceipt = abstractContractGSubclass.setInterAge(new BigInteger(age)).send(); - collector.logStepPass("执行【设置用户年龄合约方法setInterAge()】,生成hash:" + transactionReceipt.getTransactionHash()); - //获取用户名称getInterAge() - BigInteger actualValue = abstractContractGSubclass.aInterAge().send(); - collector.logStepPass("执行【获取用户年龄 getInterAge()】 successful.actualValue:" + actualValue); - collector.assertEqual(actualValue,resultValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("abstractContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractAMutipleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractAMutipleTest.java deleted file mode 100644 index 6cf9e7e7c1..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractAMutipleTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.InheritContractAMutipleClass; -import network.platon.contracts.evm.v0_5_17.InheritContractBMutipleClass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:多重合约继承重名问题,遵循最远继承原则 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractAMutipleTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.合约继承重名问题(遵循最远继承原则)",sourcePrefix = "evm/0.5.17") - public void testInheritContracAtMutipleTest() { - - InheritContractAMutipleClass inheritContractMutipleTest1 = null; - InheritContractBMutipleClass inheritContractMutipleTest2 = null; - try { - //合约部署(InheritContractMutipleTest1) - inheritContractMutipleTest1 = InheritContractAMutipleClass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractMutipleTest1.getContractAddress(); - TransactionReceipt tx = inheritContractMutipleTest1.getTransactionReceipt().get(); - collector.logStepPass("InheritContractMutipleTest1 issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - - //合约部署(InheritContractMutipleTest1) - inheritContractMutipleTest2 = InheritContractBMutipleClass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress2 = inheritContractMutipleTest2.getContractAddress(); - TransactionReceipt tx2 = inheritContractMutipleTest2.getTransactionReceipt().get(); - collector.logStepPass("InheritContractMutipleTest2 issued successfully.contractAddress:" + contractAddress2 - + ", hash:" + tx2.getTransactionHash()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx2.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("InheritContractMutipleTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行callGetDate1() - try { - BigInteger expectBookResult = new BigInteger("1"); - BigInteger actualBigInteger = inheritContractMutipleTest1.callGetDateA().send(); - collector.logStepPass("调用合约callGetDateA()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractMutipleTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、执行callGetDate2() - try { - BigInteger expectBookResult = new BigInteger("2"); - BigInteger actualBigInteger = inheritContractMutipleTest2.callGetDateB().send(); - collector.logStepPass("调用合约callGetDateB()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractMutipleTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractBMutipleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractBMutipleTest.java deleted file mode 100644 index 48e70a8d97..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractBMutipleTest.java +++ /dev/null @@ -1,56 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.InheritContractSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:多重继承(父类合约存在父子关系),合约继承必须遵循先父到子的继承顺序 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractBMutipleTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.多重继承(遵循先父到子的继承顺序)",sourcePrefix = "evm/0.5.17") - public void testInheritContractMutipleTest1() { - - InheritContractSubclass inheritContractSubclass = null; - try { - //合约部署 - inheritContractSubclass = InheritContractSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractSubclass.getContractAddress(); - TransactionReceipt tx = inheritContractSubclass.getTransactionReceipt().get(); - collector.logStepPass("InheritContractSubclass issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行getDataThree() - try { - BigInteger expectResult = new BigInteger("3"); - BigInteger actualBigInteger = inheritContractSubclass.getDataThree().send(); - collector.logStepPass("调用合约getDataThree()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractOverloadComplexTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractOverloadComplexTest.java deleted file mode 100644 index bb2d643452..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractOverloadComplexTest.java +++ /dev/null @@ -1,113 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.InheritContractOverloadChild; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:合约函数重载(Overload)复杂情况 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractOverloadComplexTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.合约函数重载(Overload)复杂情况",sourcePrefix = "evm/0.5.17") - public void testInheritContractMutipleTest1() { - - InheritContractOverloadChild inheritContractOverloadChild = null; - try { - //合约部署 - inheritContractOverloadChild = InheritContractOverloadChild.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractOverloadChild.getContractAddress(); - TransactionReceipt tx = inheritContractOverloadChild.getTransactionReceipt().get(); - collector.logStepPass("InheritContractOverload issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行Base父类重载方法单个参数 - try { - BigInteger param1 = new BigInteger("3"); - TransactionReceipt transactionReceipt = inheritContractOverloadChild.initBase(param1).send(); - collector.logStepPass("执行【Base父类赋值重载方法单个参数 initBase()】 successful,hash:" + transactionReceipt.getTransactionHash()); - //执行查询 - BigInteger actualValue = inheritContractOverloadChild.getX().send(); - collector.logStepPass("查询赋值结果 getX() successful,actualValue:" + actualValue); - collector.assertEqual(actualValue,param1, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、执行Base父类重载方法多个参数 - try { - BigInteger param1 = new BigInteger("3"); - BigInteger param2 = new BigInteger("4"); - TransactionReceipt transactionReceipt = inheritContractOverloadChild.initBase(param1,param2).send(); - collector.logStepPass("执行【Base父类赋值重载方法多个参数 initBase()】 successful,hash:" + transactionReceipt.getTransactionHash()); - //执行查询 - BigInteger actualValueX = inheritContractOverloadChild.getX().send(); - BigInteger actualValueY = inheritContractOverloadChild.getY().send(); - collector.logStepPass("查询赋值结果 getX() successful,actualValueX:" + actualValueX); - collector.logStepPass("查询赋值结果 getY() successful,actualValueY:" + actualValueY); - collector.assertEqual(actualValueX,param1, "checkout execute success."); - collector.assertEqual(actualValueY,param2, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //3、执行BaseBase父类重载方法单个参数 - try { - BigInteger param1 = new BigInteger("3"); - BigInteger expectResult = new BigInteger("4"); - TransactionReceipt transactionReceipt = inheritContractOverloadChild.initBaseBase(param1).send(); - collector.logStepPass("执行【BaseBase父类重载方法单个参数 initBase()】 successful,hash:" + transactionReceipt.getTransactionHash()); - //执行查询 - BigInteger actualValueX = inheritContractOverloadChild.getX().send(); - collector.logStepPass("查询赋值结果 getX() successful,actualValueX:" + actualValueX); - collector.assertEqual(actualValueX,expectResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //4、执行BaseBase父类重载方法多个参数 - try { - BigInteger param1 = new BigInteger("3"); - BigInteger param2 = new BigInteger("4"); - BigInteger expectResultY = new BigInteger("3"); - BigInteger expectResultX = new BigInteger("4"); - TransactionReceipt transactionReceipt = inheritContractOverloadChild.initBaseBase(param1,param2).send(); - collector.logStepPass("执行【BaseBase父类重载方法多个参数 initBase()】 successful,hash:" + transactionReceipt.getTransactionHash()); - //执行查询 - BigInteger actualValueX = inheritContractOverloadChild.getX().send(); - BigInteger actualValueY = inheritContractOverloadChild.getY().send(); - collector.logStepPass("查询赋值结果 getX() successful,actualValueX:" + actualValueX); - collector.logStepPass("查询赋值结果 getY() successful,actualValueY:" + actualValueY); - collector.assertEqual(actualValueX,expectResultX, "checkout execute success."); - collector.assertEqual(actualValueY,expectResultY, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractOverloadTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractOverloadTest.java deleted file mode 100644 index 96d430a7db..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractOverloadTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.InheritContractOverload; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:合约函数重载(Overload):合约可以有多个同名函数,可以有不同输入参数。 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractOverloadTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.多重继承函数重载",sourcePrefix = "evm/0.5.17") - public void testInheritContractMutipleTest1() { - - InheritContractOverload inheritContractOverload = null; - try { - //合约部署 - inheritContractOverload = InheritContractOverload.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractOverload.getContractAddress(); - TransactionReceipt tx = inheritContractOverload.getTransactionReceipt().get(); - collector.logStepPass("InheritContractOverload issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行getData1() - try { - BigInteger expectResult = new BigInteger("3"); - BigInteger actualBigInteger = inheritContractOverload.getDataA().send(); - collector.logStepPass("调用合约getData1()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、执行getData2() - try { - BigInteger expectResult = new BigInteger("6"); - BigInteger actualBigInteger = inheritContractOverload.getDataB().send(); - collector.logStepPass("调用合约getData2()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractPassParamTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractPassParamTest.java deleted file mode 100644 index cd32ff76f7..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/oop/inherit/InheritContractPassParamTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.evm.v0_5_17.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_5_17.InheritContractASub; -import network.platon.contracts.evm.v0_5_17.InheritContractBSub; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:继承支持传参(继承中基类构造函数的传参) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractPassParamTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.合约继承支持传参",sourcePrefix = "evm/0.5.17") - public void testInheritContractMutipleTest1() { - - InheritContractASub inheritContractSub1 = null; - InheritContractBSub inheritContractSub2 = null; - try { - //合约部署(inheritContractASub) - inheritContractSub1 = InheritContractASub.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractSub1.getContractAddress(); - TransactionReceipt tx = inheritContractSub1.getTransactionReceipt().get(); - collector.logStepPass("InheritContractASub issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - - //合约部署(inheritContractBSub) - inheritContractSub2 = InheritContractBSub.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress2 = inheritContractSub2.getContractAddress(); - TransactionReceipt tx2 = inheritContractSub2.getTransactionReceipt().get(); - collector.logStepPass("InheritContractBSub issued successfully.contractAddress:" + contractAddress2 - + ", hash:" + tx2.getTransactionHash()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx2.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("inheritContractSub deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行getDataA() - try { - BigInteger expectBookResult = new BigInteger("2"); - BigInteger actualBigInteger = inheritContractSub1.getDataA().send(); - collector.logStepPass("调用合约getDataA()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest1 Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、执行getDataB() - try { - BigInteger expectBookResult = new BigInteger("4"); - BigInteger actualBigInteger = inheritContractSub2.getDataB().send(); - collector.logStepPass("调用合约getDataB()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest1 Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/regreetest/PlatONTransfer2Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/regreetest/PlatONTransfer2Test.java deleted file mode 100644 index da05598c19..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/regreetest/PlatONTransfer2Test.java +++ /dev/null @@ -1,103 +0,0 @@ -package network.platon.test.evm.v0_5_17.regreetest;//package network.platon.test.evm.regreetest; -// -//import com.alibaba.fastjson.JSONArray; -//import network.platon.autotest.junit.annotations.DataSource; -//import network.platon.autotest.junit.enums.DataSourceType; -//import network.platon.autotest.junit.rules.AssertCollector; -//import network.platon.autotest.junit.rules.DriverService; -//import network.platon.autotest.utils.FileUtil; -//import network.platon.utils.OneselfFileUtil; -//import org.junit.Before; -//import org.junit.Rule; -//import org.junit.Test; -//import org.web3j.crypto.Credentials; -//import org.web3j.protocol.Web3j; -//import org.web3j.protocol.core.DefaultBlockParameterName; -//import org.web3j.protocol.core.methods.response.TransactionReceipt; -//import org.web3j.protocol.http.HttpService; -//import org.web3j.tx.RawTransactionManager; -//import org.web3j.tx.Transfer; -//import org.web3j.utils.Convert; -// -//import java.math.BigDecimal; -//import java.math.BigInteger; -//import java.nio.file.Paths; -// -// -///** -// * @title PlatON普通有回执转账交易 -// * @description: 步骤:账户A向账户B转账amount,预期1:账户A的余额减少amount,预期2:账户B的余额增加amount -// * @author: qcxiao -// * @create: 2019/12/16 11:03 -// **/ -//public class PlatONTransfer2Test { -// -// @Rule -// public DriverService driverService = new DriverService(); -// -// @Rule -// public AssertCollector collector = new AssertCollector(); -// -// // 底层链ID -// private long chainId; -// // 发行代币的地址 -// private String transferFrom; -// // 接收代币的地址 -// private String transferTo; -// private Web3j web3j; -// // 转账的金额 -// private String amount; -// -// @Before -// public void before() { -// chainId = Integer.valueOf(driverService.param.get("chainId")); -// //transferFrom = driverService.param.get("transferFrom"); -// transferFrom = driverService.param.get("address"); -// transferTo = driverService.param.get("transferTo"); -// amount = driverService.param.get("amount"); -// } -// -// @Test -// @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", -// author = "qcxiao", showName = "network.platon.test.evm.PlatonTransferTest-普通有回执转账交易", sourcePrefix = "network.platon.test.evm") -// public void testTransfer() { -// Credentials credentials = null; -// BigInteger nonce = null; -// try { -// web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); -// credentials = Credentials.create(driverService.param.get("privateKey")); -// -// -// String filePath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "lax_bech32_all_addr_and_private_keys.json").toUri().getPath()); -// String jsonContent = OneselfFileUtil.readFile(filePath); -// -// JSONArray jsonArray = JSONArray.parseArray(jsonContent); -// for (int i = 0; i < jsonArray.size(); i++) { -// Thread.sleep(1000); // 1680 -// transferTo = jsonArray.getJSONObject(i).getString("address"); -// try { -// RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); -// Transfer transfer = new Transfer(web3j, transactionManager); -// -// amount = "100000"; -// //TransactionReceipt transactionReceipt = transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.LAT).send(); -// -// transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.LAT).sendAsync(); -// -// //BigInteger endBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); -// //collector.logStepPass("transferTo:" + transferTo + ",endBalance:" + endBalance); -// collector.logStepPass("time:" + i); -// } catch (Exception e) { -// e.printStackTrace(); -// } -// -// } -// -// } catch (Exception e) { -// collector.logStepFail("transfer fail.", e.toString()); -// e.printStackTrace(); -// } -// -// } -// -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/regreetest/PlatONTransferTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/regreetest/PlatONTransferTest.java deleted file mode 100644 index fa25c8094b..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_5_17/regreetest/PlatONTransferTest.java +++ /dev/null @@ -1,130 +0,0 @@ -package network.platon.test.evm.v0_5_17.regreetest; - -import com.alaya.bech32.Bech32; -import com.alaya.crypto.Credentials; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.PlatonGetTransactionCount; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.http.HttpService; -import com.alaya.tx.RawTransactionManager; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.autotest.junit.rules.AssertCollector; -import network.platon.autotest.junit.rules.DriverService; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; - -import java.math.BigDecimal; -import java.math.BigInteger; -import java.util.concurrent.ExecutionException; - - -/** - * @title PlatON普通有回执转账交易 - * @description: 步骤:账户A向账户B转账amount,预期1:账户A的余额减少amount,预期2:账户B的余额增加amount - * @author: qcxiao - * @create: 2019/12/16 11:03 - **/ -public class PlatONTransferTest { - - @Rule - public DriverService driverService = new DriverService(); - - @Rule - public AssertCollector collector = new AssertCollector(); - - // 底层链ID - private long chainId; - // 发行代币的地址 - private String transferFrom; - // 接收代币的地址 - private String transferTo; - private Web3j web3j; - // 转账的金额 - private String amount; - - @Before - public void before() { - chainId = Integer.valueOf(driverService.param.get("chainId")); - //transferFrom = driverService.param.get("transferFrom"); - transferFrom = driverService.param.get("address"); -// transferTo = "lax10eycqggu2yawpadtmn7d2zdw0vnmscklynzq8x"; //driverService.param.get("transferTo"); - transferTo = "atx10eycqggu2yawpadtmn7d2zdw0vnmscklcx6a9v"; //driverService.param.get("transferTo"); - amount = "1"; //driverService.param.get("amount"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "network.platon.test.evm.PlatonTransferTest-普通有回执转账交易", sourcePrefix = "evm/0.5.17") - public void testTransfer() { - Credentials credentials = null; - BigInteger nonce = null; - try { - web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); - //credentials = Credentials.create(driverService.param.get("privateKeyOfTransferFrom")); - credentials = Credentials.create(driverService.param.get("privateKey")); - collector.logStepPass("currentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); - //获取nonce,交易笔数 - transferFrom = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),transferFrom); - nonce = getNonce(transferFrom); - collector.logStepPass("nonce:" + nonce); - //transferTo = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),transferTo); - BigInteger initialBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("initialBalance:" + initialBalance); - - /* - //创建RawTransaction交易对象 - RawTransaction rawTransaction = RawTransaction.createEtherTransaction(nonce, new BigInteger("50000000000"), new BigInteger("3000000"), - transferTo, new BigInteger(amount)); - //签名Transaction,这里要对交易做签名 - byte[] signMessage = TransactionEncoder.signMessage(rawTransaction, chainId, credentials); - String hexValue = Numeric.toHexString(signMessage); - - //发送交易 - PlatonSendTransaction ethSendTransaction = web3j.platonSendRawTransaction(hexValue).send(); - //String hash = ethSendTransaction.getTransactionHash(); - */ - //RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - //Transfer transfer = new Transfer(web3j, transactionManager); - //TransactionReceipt transactionReceipt = transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.VON).send(); - - //TransactionReceipt transactionReceipt = Transfer.sendFunds(web3j, credentials, chainId, transferTo, new BigDecimal("1"), Convert.Unit.VON).send(); - - - TransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - Transfer transfer = new Transfer(web3j,transactionManager); - - TransactionReceipt transactionReceipt = transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.VON).send(); - - - BigInteger endBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("endBalance:" + endBalance); - collector.logStepPass("txHash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(endBalance.subtract(initialBalance).toString(), amount, "compare the balance after transfer"); - } catch (Exception e) { - collector.logStepFail("transfer fail.", e.toString()); - e.printStackTrace(); - } - - } - - /** - * 获取nonce,交易笔数 - * - * @param from - * @return - * @throws ExecutionException - * @throws InterruptedException - */ - private BigInteger getNonce(String from) throws ExecutionException, InterruptedException { - PlatonGetTransactionCount transactionCount = web3j.platonGetTransactionCount(from, DefaultBlockParameterName.LATEST).sendAsync().get(); - BigInteger nonce = transactionCount.getTransactionCount(); - return nonce; - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/complexcontracts/AtomicSwapTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/complexcontracts/AtomicSwapTest.java deleted file mode 100644 index 6547d21fed..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/complexcontracts/AtomicSwapTest.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.test.evm.v0_6_12.complexcontracts; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.AtomicSwap; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.util.List; - -/** - * 合约版本solidity ^0.5.17 - */ -public class AtomicSwapTest extends ContractPrepareTest { - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "complexcontracts.AtomicSwapTest", sourcePrefix = "evm/0.6.12") - public void test() { - try { - AtomicSwap atomicSwap = AtomicSwap.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = atomicSwap.getContractAddress(); - TransactionReceipt tx = atomicSwap.getTransactionReceipt().get(); - - collector.logStepPass( - "Token issued successfully.contractAddress:" + contractAddress + - ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + atomicSwap.getTransactionReceipt().get().getGasUsed()); - - - /* - * 方法作用:初始化一个map并且给定这个map的key转入多少金额 - * 参数:key、参与者地址(目前0.12.1的版本需要改为0x...)、时间戳(必须大于当前区块时间)、初始减去多少、初始转多少VON - */ -// tx = atomicSwap.initiate(stringToBytes32("hello"), "lax1uqug0zq7rcxddndleq4ux2ft3tv6dqljphydrl", new BigInteger("1690063146613"), BigInteger.valueOf(1), BigInteger.valueOf(100000)).send(); - tx = atomicSwap.initiate(stringToBytes32("hello"), "atx1uqug0zq7rcxddndleq4ux2ft3tv6dqljazusp4", new BigInteger("1690063146613"), BigInteger.valueOf(1), BigInteger.valueOf(100000)).send(); - - List emitEventData = atomicSwap.getInitiatedEvents(tx); - - System.out.println(emitEventData.get(0)._value); - - // 销毁合约 - // atomicSwap.destruct().send(); - } catch (Exception e) { - e.printStackTrace(); - } - - } - - public static byte[] stringToBytes32(String string) { - byte[] byteValue = string.getBytes(); - byte[] byteValueLen32 = new byte[32]; - System.arraycopy(byteValue, 0, byteValueLen32, 0, byteValue.length); - return byteValueLen32; - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/complexcontracts/GuessingTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/complexcontracts/GuessingTest.java deleted file mode 100644 index e75129022e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/complexcontracts/GuessingTest.java +++ /dev/null @@ -1,114 +0,0 @@ -package network.platon.test.evm.v0_6_12.complexcontracts; - -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import network.platon.contracts.evm.v0_6_12.Guessing; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigDecimal; -import java.math.BigInteger; - -/** - * @title 竞猜合约测试 - * @description: - * @author: hudenian - * @create: 2020/03/04 16:42 - **/ - -public class GuessingTest extends ContractPrepareTest { - private String endBlock = "12823"; //设置竞猜截止块高 - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "function.GuessingTest-竞猜合约测试", sourcePrefix = "evm/0.6.12") - public void guessingTest() { - - try { - - Guessing guessing = Guessing.deploy(web3j, transactionManager, provider, chainId, new BigInteger(endBlock)).send(); - - String contractAddress = guessing.getContractAddress(); - TransactionReceipt tx = guessing.getTransactionReceipt().get(); - collector.logStepPass("GuessingTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("GuessingTest deploy gasUsed:" + guessing.getTransactionReceipt().get().getGasUsed()); - - //查询截止块高 - endBlock = guessing.endBlock().send().toString(); - collector.logStepPass("查询截止块高为:" + endBlock); - - //查询合约余额 - String contractBalance = guessing.getBalanceOf().send().toString(); - collector.assertEqual("0", contractBalance); - - - //查询总奖池 - String balance = guessing.balance().send().toString(); - collector.logStepPass("发起竞猜前奖池总金额为:" + balance); - - //发起转账(触发竞猜操作) - Transfer transfer = new Transfer(web3j, transactionManager); - TransactionReceipt transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1000"), Convert.Unit.ATP, new BigInteger("1000000000"), new BigInteger("4712388")).send(); - collector.logStepPass("gas used>>>>>>>" + transactionReceipt.getGasUsed().toString()); - - //查询合约余额 - contractBalance = guessing.getBalanceOf().send().toString(); - - balance = guessing.balance().send().toString(); - collector.logStepPass("发起第一次竞猜前奖池总金额为:" + balance); - - //发起竞猜(客户端发起的单位是von与 lat差10^18次方) - tx = guessing.guessingWithLat(new BigInteger("1000000000000000000000")).send(); - collector.logStepPass(tx.getLogs().toString()); - collector.logStepPass(" gas used>>>>>>>" + transactionReceipt.getGasUsed()); - - //自增序列下标 - String indexKey = guessing.indexKey().send().toString(); - collector.logStepPass("自增序列下标为:" + indexKey); - - //查询总奖池 - balance = guessing.balance().send().toString(); - collector.logStepPass("发起第二次竞猜后奖池总金额为:" + balance); - - contractBalance = guessing.getBalanceOf().send().toString(); - - //自增序列下标 - indexKey = guessing.indexKey().send().toString(); - collector.logStepPass("自增序列下标为:" + indexKey); - - //查询当前调用者余额 - BigInteger originBalance = web3j.platonGetBalance(credentials.getAddress(chainId), DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("开奖前用户账户余额为>>>" + originBalance); - - //查询当前块高 - long currentBlockNumber = new Long(web3j.platonBlockNumber().send().getBlockNumber().toString()).intValue(); - - //入参为截止块高的hash,真实环境需要从浏览器获取,此处为了测试方便直接从合约取当前块高hash - byte[] blockhash = guessing.generateBlockHash(new BigInteger(String.valueOf(currentBlockNumber - 20))).send(); - - - //开奖操作 - tx = guessing.draw(blockhash).send(); - collector.logStepPass(tx.getLogs().toString()); - - - //查询当前调用者余额 - BigInteger afterBalance = web3j.platonGetBalance(credentials.getAddress(chainId), DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("开奖后用户账户余额为>>>" + afterBalance); - - - } catch (Exception e) { - collector.logStepFail("GuessingTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/complexcontracts/erc20_0513/ERC200513TokenTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/complexcontracts/erc20_0513/ERC200513TokenTest.java deleted file mode 100644 index 83fb6030c7..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/complexcontracts/erc20_0513/ERC200513TokenTest.java +++ /dev/null @@ -1,144 +0,0 @@ -package network.platon.test.evm.v0_6_12.complexcontracts.erc20_0513; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.ERC200513Token; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigDecimal; -import java.math.BigInteger; - - -/** - * @title ERC200513Token测试 - * @description: 合约版本solidity ^0.5.17 - * @author: hudenian - * @create: 2019/12/28 - */ -public class ERC200513TokenTest extends ContractPrepareTest { - - //供应份额 - private String initialSupply; - - //代币名称 - private String tokenName; - - //代币简称 - private String tokenSymbol; - - //转出账号 - private String to; - - //转出金额 - private String value; - - //设置approveAddress可以创建交易者名义花费的代币数 - private String approveAddress; - - //设置approveAddress可以创建交易者名义花费的代币数approveValue - private String approveValue; - - //创建者销毁的代币数 - private String burnValue; - - - @Before - public void before() { - this.prepare(); - initialSupply = driverService.param.get("initialSupply"); - tokenName = driverService.param.get("tokenName"); - tokenSymbol = driverService.param.get("tokenSymbol"); - to = driverService.param.get("to"); - value = driverService.param.get("value"); - approveAddress = driverService.param.get("approveAddress"); - approveValue = driverService.param.get("approveValue"); - burnValue = driverService.param.get("burnValue"); - - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ERC200513TokenTest-测试0.5.13版本ERC20", sourcePrefix = "evm/0.6.12") - public void erc20Test() { - try { - - ERC200513Token eRC200513Token = ERC200513Token.deploy(web3j, transactionManager, provider, chainId, new BigInteger(initialSupply), tokenName, tokenSymbol).send(); - - String contractAddress = eRC200513Token.getContractAddress(); - TransactionReceipt tx = eRC200513Token.getTransactionReceipt().get(); - - collector.logStepPass("ERC200513Token deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + eRC200513Token.getTransactionReceipt().get().getGasUsed()); - - //获取代币名称 - String chainTokenName = eRC200513Token.getName().send().toString(); - collector.logStepPass("开始获取代币名称" + chainTokenName); - collector.assertEqual(tokenName, chainTokenName); - - //获取代币简称 - String chainTokenSymbol = eRC200513Token.getSymbol().send().toString(); - collector.logStepPass("开始获取代币简称" + chainTokenSymbol); - collector.assertEqual(tokenSymbol, chainTokenSymbol); - - //获取代币总发行量 - String chainInitialSupply = eRC200513Token.getTotalSupply().send().toString(); - collector.logStepPass("开始获取代币发行量" + chainInitialSupply); - collector.assertEqual(initialSupply + "000000000000000000", chainInitialSupply); - - //给to地址转账value值 - TransactionReceipt transactionReceipt = eRC200513Token.transfer(to, new BigInteger(value)).send(); - collector.logStepPass("发行账户向" + to + "转账" + value); - - collector.logStepPass("ERC200513Token transfer to " + to + " successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //查询to地址的余额 - String to_balance = eRC200513Token.getBalanceOf(to).send().toString(); - collector.logStepPass(to + "账户余额为:" + to_balance); - collector.assertEqual(to_balance, value); - - //查询from地址的余额 - String from_balance = eRC200513Token.getBalanceOf(walletAddress).send().toString(); - collector.logStepPass("转账后发行账户" + walletAddress + "余额为:" + from_balance); - collector.assertEqual(from_balance, new BigDecimal(chainInitialSupply).subtract(new BigDecimal(value)).toString()); - - //创建者设置approveAddress可以创建交易者名义花费的代币数为approveValue - transactionReceipt = eRC200513Token.approve(approveAddress, new BigInteger(approveValue)).send(); - collector.logStepPass("发行账户允许" + approveAddress + "账户以自己的名义花费的代币数为:" + approveValue); - - collector.logStepPass("ERC200513Token transfer to " + to + " successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //查询approveAddress可以从我的地址转出我代币数 - String chainApproveValue = eRC200513Token.getAllowance(walletAddress, approveAddress).send().toString(); - collector.logStepPass("发行账户允许" + approveAddress + "账户以自己的名义花费的代币数为:" + chainApproveValue); - collector.assertEqual(approveValue, chainApproveValue); - - //创建者销毁自己账户的指定的代币数 - transactionReceipt = eRC200513Token.burn(new BigInteger(burnValue)).send(); - collector.logStepPass("发行账销毁的代币数:" + burnValue); - - collector.logStepPass("ERC200513Token burn " + burnValue + " successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - - //查询from地址的余额 - String from_balance_afterBurn = eRC200513Token.getBalanceOf(walletAddress).send().toString(); - collector.logStepPass("发行都销毁" + burnValue + "后账户余额为" + from_balance_afterBurn); -// collector.assertEqual(from_balance,new BigDecimal(chainInitialSupply).subtract(new BigDecimal(value)).toString()); - - //销毁指定代币后获取总发行量 - String chainInitialSupply_after_burn = eRC200513Token.getTotalSupply().send().toString(); - collector.logStepPass("销毁指定代币后获取总发行量:" + chainInitialSupply_after_burn); - - - } catch (Exception e) { - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/ControlTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/ControlTest.java deleted file mode 100644 index 1a6bd09228..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/ControlTest.java +++ /dev/null @@ -1,147 +0,0 @@ -package network.platon.test.evm.v0_6_12.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.Control; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 控制结构 - * 1. if...else - * 2. do...while - * 3. for循环 - * 4. for循环包含break - * 5. for循环包含continue - * 6. for循环包含return - * 7. 三目运算符 - * @description: - * @author: hudenian - * @create: 2019/12/30 - */ -public class ControlTest extends ContractPrepareTest { - - //需要判断年龄的是否大于20的数值 - private String ifControlValue; - - //需要判断年龄的是否大于20的数值 - private String threeControlControlValue; - - @Before - public void before() { - this.prepare(); - ifControlValue = driverService.param.get("age"); - threeControlControlValue = driverService.param.get("age"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ControlTest-控制结构测试", sourcePrefix = "evm/0.6.12") - public void controlStructCheck() { - try { - - Control control = Control.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = control.getContractAddress(); - TransactionReceipt tx = control.getTransactionReceipt().get(); - - collector.logStepPass("ControlTest 常用控制结构功能测试"); - collector.logStepPass("deploy gas used:" + control.getTransactionReceipt().get().getGasUsed()); - - //1.if控制结构验证 ifControlValue - TransactionReceipt transactionReceipt = control.ifControl(new BigInteger(ifControlValue)).send(); - collector.logStepPass("ControlTest ifControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //if控制结构验证结果值 - String chainIfControlValue = control.getIfControlResult().send(); - collector.logStepPass( "if控制结构测试获取链上的结果是:" + chainIfControlValue); - collector.assertEqual(ifControlCheck(ifControlValue),chainIfControlValue); - - //2.doWhile控制结构 - transactionReceipt = control.doWhileControl().send(); - collector.logStepPass("ControlTest doWhileControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //doWhile控制结构执行结果值 - String chaindoWhileValue = control.getdoWhileResult().send().toString(); - collector.logStepPass( "doWhile控制结构执行结果是:" + chaindoWhileValue); - collector.assertEqual("45",chaindoWhileValue);//需要调整 - - //3.forControl控制结构 - transactionReceipt = control.forControl().send(); - collector.logStepPass("ControlTest forControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //forControl控制结构执行结果值 - String chainGetForControlValue = control.getForControlResult().send().toString(); - collector.logStepPass( "forControl控制结构执行结果是:" + chainGetForControlValue); - collector.assertEqual("45",chainGetForControlValue);//需要调整 - - //4. for循环包含break控制结构 - transactionReceipt = control.forBreakControl().send(); - collector.logStepPass("ControlTest forBreakControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //for循环包含break控制结构执行结果值 - String chainForBreakControlValue = control.getForBreakControlResult().send().toString(); - collector.logStepPass( "for循环包含break控制结构执行结果是:" + chainForBreakControlValue); - collector.assertEqual("1",chainForBreakControlValue);//需要调整 - - //5. for循环包含continue控制结构 - transactionReceipt = control.forContinueControl().send(); - collector.logStepPass("ControlTest forContinueControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - // for循环包含continue控制结构执行结果值 - String chainForContinueControlValue = control.getForContinueControlResult().send().toString(); - collector.logStepPass( " for循环包含continue控制结构执行结果是:" + chainForContinueControlValue); - collector.assertEqual("25",chainForContinueControlValue);//需要调整 - - //6. for循环包含return控制结构 - transactionReceipt = control.forReturnControl().send(); - collector.logStepPass("ControlTest forReturnControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //for循环包含return执行结果值 - String chainForReturnControlValue = control.getForReturnControlResult().send().toString(); - collector.logStepPass( "for循环包含return执行结果是:" + chainForReturnControlValue); - collector.assertEqual("10",chainForReturnControlValue);//需要调整 - - //7.三目运算符控制结构 - transactionReceipt = control.forThreeControlControl(new BigInteger(threeControlControlValue)).send(); - collector.logStepPass("ControlTest forThreeControlControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //三目运算符控制结构执行结果值 - String chainThreeControlControlValue = control.getForThreeControlControlResult().send().toString(); - collector.logStepPass( "三目运算符控制结构执行结果是:" + chainThreeControlControlValue); - collector.assertEqual(Integer.valueOf(threeControlControlValue).intValue()> 20?"less than 20":"more than 20",chainThreeControlControlValue);//需要调整 - - - - } catch (Exception e) { - collector.logStepFail("ControlTest controlStructCheck process fail.", e.toString()); - e.printStackTrace(); - } - } - - public static String ifControlCheck(String ifControlValue){ - int age = Integer.valueOf(ifControlValue); - String ifControlResult = ""; - if(age < 20){ - ifControlResult = "you are a young man"; - }else if (age < 60){ - ifControlResult = "you are a middle man"; - }else { - ifControlResult = "you are a old man"; - } - return ifControlResult; - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/DoWhileErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/DoWhileErrorTest.java deleted file mode 100644 index fc4b36480c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/DoWhileErrorTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_6_12.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.DoWhileError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * dowhile控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 11:09 - */ -public class DoWhileErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ControlTest-dowhile控制结构测试", sourcePrefix = "evm/0.6.12") - public void doWhileStruct() { - try { - - DoWhileError doWhileError = DoWhileError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = doWhileError.getContractAddress(); - TransactionReceipt tx = doWhileError.getTransactionReceipt().get(); - - collector.logStepPass("DoWhileErrorTest dowhile控制结构返回的结构体如果是指针需要提前初始化"); - collector.logStepPass("deploy gas used:" + doWhileError.getTransactionReceipt().get().getGasUsed()); - - //1.if控制结构验证 ifControlValue - Boolean doWhileFlg = doWhileError.getDoWhileControlRes().send(); - - collector.logStepPass( "DoWhileErrorTest 测试获取链上的结果是:" + doWhileFlg); - collector.assertEqual(false,doWhileFlg); - - } catch (Exception e) { - collector.logStepFail("DoWhileErrorTest process fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/ForErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/ForErrorTest.java deleted file mode 100644 index 47e9168977..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/ForErrorTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.evm.v0_6_12.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.ForError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * for控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 18:09 - */ -public class ForErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ForErrorTest-for控制结构测试", sourcePrefix = "evm/0.6.12") - public void forStruct() { - try { - - ForError forError = ForError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = forError.getContractAddress(); - TransactionReceipt tx = forError.getTransactionReceipt().get(); - - collector.logStepPass("ForErrorTest for控制结构返回的结构体如果是指针需要提前初始化"); - collector.logStepPass("deploy gas used:" + forError.getTransactionReceipt().get().getGasUsed()); - - //1.for控制结构验证 - Boolean forFlg = forError.getForControlRes().send(); - - collector.logStepPass( "ForErrorTest->getForControlRes 测试获取链上的结果是:" + forFlg); - collector.assertEqual(false,forFlg); - - //2.for控制结构验证 - Boolean forFlg1 = forError.getForControlRes1().send(); - - collector.logStepPass( "ForErrorTest->getForControlRes1测试获取链上的结果是:" + forFlg1); - collector.assertEqual(false,forFlg1); - - } catch (Exception e) { - collector.logStepFail("ForErrorTest testCase process fail",e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/IfErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/IfErrorTest.java deleted file mode 100644 index d6451dd1d1..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/IfErrorTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.evm.v0_6_12.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.IfError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * for控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 11:09 - */ -public class IfErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ForErrorTest-for控制结构测试", sourcePrefix = "evm/0.6.12") - public void ifStruct() { - try { - - IfError ifError = IfError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = ifError.getContractAddress(); - TransactionReceipt tx = ifError.getTransactionReceipt().get(); - - collector.logStepPass("IfErrorTest if控制结构返回的结构体如果是指针需要提前初始化"); - collector.logStepPass("deploy gas used:" + ifError.getTransactionReceipt().get().getGasUsed()); - - //1.if控制结构验证 ifControlValue - Boolean ifFlg = ifError.getIfControlRes().send(); - - collector.logStepPass( "IfErrorTest 测试获取链上的结果是:" + ifFlg); - collector.assertEqual(false,ifFlg); - - //2.if控制结构验证 ifControlValue - Boolean ifFlg1 = ifError.getIfControlRes1().send(); - - collector.logStepPass( "IfErrorTest 测试获取链上的结果是:" + ifFlg1); - collector.assertEqual(false,ifFlg1); - - } catch (Exception e) { - collector.logStepFail("IfErrorTest testCase process fail",e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/ShortCircuitErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/ShortCircuitErrorTest.java deleted file mode 100644 index 86c91c1eb5..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/ShortCircuitErrorTest.java +++ /dev/null @@ -1,56 +0,0 @@ -package network.platon.test.evm.v0_6_12.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.ShortCircuitError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -/** - * && || 短路语法 - * - * @author hudenian - * @dev 2020/1/6 19:54 - */ -public class ShortCircuitErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ShortCircuitErrorTest-短路语法", sourcePrefix = "evm/0.6.12") - public void shortCircuitStruct() { - try { - - ShortCircuitError shortCircuitError = ShortCircuitError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = shortCircuitError.getContractAddress(); - TransactionReceipt tx = shortCircuitError.getTransactionReceipt().get(); - - collector.logStepPass("ShortCircuitError deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + shortCircuitError.getTransactionReceipt().get().getGasUsed()); - - - Boolean fFlg = shortCircuitError.getF().send(); - - collector.logStepPass( "ShortCircuitErrorTest 测试获取链上的结果是:" + fFlg); - collector.assertEqual(false,fFlg); - - - Boolean gflg = shortCircuitError.getG().send(); - - collector.logStepPass( "ShortCircuitErrorTest 测试获取链上的结果是:" + gflg); - collector.assertEqual(false,gflg); - - } catch (Exception e) { - collector.logStepFail("ShortCircuitErrorTest testCase process fail",e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/WhileErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/WhileErrorTest.java deleted file mode 100644 index d1d8cac42c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/controlstruct/WhileErrorTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_6_12.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.WhileError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * for控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/7 13:42 - */ -public class WhileErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "WhileErrorTest-while控制结构测试", sourcePrefix = "evm/0.6.12") - public void whileStruct() { - try { - - WhileError whileError = WhileError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = whileError.getContractAddress(); - TransactionReceipt tx = whileError.getTransactionReceipt().get(); - - collector.logStepPass("WhileErrorTest for控制结构返回的结构体如果是指针类型需要提前初始化"); - collector.logStepPass("deploy gas used:" + whileError.getTransactionReceipt().get().getGasUsed()); - - //1.while控制结构验证 - Boolean whileFlg = whileError.getWhileControlRes().send(); - - collector.logStepPass( "WhileErrorTest->whileStruct 测试获取链上的结果是:" + whileFlg); - collector.assertEqual(false,whileFlg); - - } catch (Exception e) { - collector.logStepFail("WhileErrorTest testCase process fail",e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/createcontract/CreateContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/createcontract/CreateContractTest.java deleted file mode 100644 index 7da0905d44..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/createcontract/CreateContractTest.java +++ /dev/null @@ -1,38 +0,0 @@ -package network.platon.test.evm.v0_6_12.createcontract; - -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_6_12.CreateContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title new关键字创建合约测试 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class CreateContractTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "albedo", showName = "createcontract.CreateContractTest-new创建合约", sourcePrefix = "evm/0.6.12") - public void testNewContract() { - try { - prepare(); - CreateContract createContract = CreateContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = createContract.getContractAddress(); - String transactionHash = createContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("CreateContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + createContract.getTransactionReceipt().get().getGasUsed()); - Tuple2 result = createContract.getTargetCreateContractData().send(); - Tuple2 expect = new Tuple2<>(new BigInteger("1000"),new BigInteger("0")); - collector.assertEqual(result, expect, "checkout new contract param"); - } catch (Exception e) { - collector.logStepFail("CreateContractTest testNewContract failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/crossContractCall/DelegatecallCaller050Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/crossContractCall/DelegatecallCaller050Test.java deleted file mode 100644 index fcbbf15754..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/crossContractCall/DelegatecallCaller050Test.java +++ /dev/null @@ -1,74 +0,0 @@ -package network.platon.test.evm.v0_6_12.crossContractCall; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.DelegatecallCallee_050; -import network.platon.contracts.evm.v0_6_12.DelegatecallCaller_050; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * @title 0.5.0跨合约调用者, 修改的是调用者中的状态变量的值 - * @description: - * @author: hudenian - * @create: 2019/12/30 - */ -public class DelegatecallCaller050Test extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "DelegatecallCaller050Test-0.5.0跨合约调用者", sourcePrefix = "evm/0.6.12") - public void caller050Test() { - try { - //调用者合约地址 - DelegatecallCaller_050 delegatecallCaller_050 = DelegatecallCaller_050.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = delegatecallCaller_050.getContractAddress(); - TransactionReceipt tx = delegatecallCaller_050.getTransactionReceipt().get(); - collector.logStepPass("DelegatecallCaller_050 deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + delegatecallCaller_050.getTransactionReceipt().get().getGasUsed()); - - - //被调用者合约地址 - DelegatecallCallee_050 delegatecallCallee050 = DelegatecallCallee_050.deploy(web3j, transactionManager, provider, chainId).send(); - String calleeContractAddress = delegatecallCallee050.getContractAddress(); - TransactionReceipt tx1 = delegatecallCallee050.getTransactionReceipt().get(); - collector.logStepPass("delegatecallCallee050 deploy successfully.contractAddress:" + calleeContractAddress + ", hash:" + tx1.getTransactionHash()); - collector.logStepPass("deploy gas used:" + delegatecallCallee050.getTransactionReceipt().get().getGasUsed()); - - //查询调用者x值 - String callerX = delegatecallCaller_050.getCallerX().send().toString(); - collector.logStepPass("DelegatecallCaller_050 合约中X的值为:" + callerX); - - //查询被调用者x值 - String calleeX = delegatecallCallee050.getCalleeX().send().toString(); - collector.logStepPass("DelegatecallCallee_050 合约中X的值为:" + calleeX); - - - TransactionReceipt tx2 = delegatecallCaller_050.inc_delegatecall(calleeContractAddress).send(); - collector.logStepPass("执行跨合约调用后,hash:" + tx2.getTransactionHash()); - - //查询调用者x值 - String callerAfterX = delegatecallCaller_050.getCallerX().send().toString(); - collector.logStepPass("跨合约调用后,DelegatecallCaller 合约中X的值为:" + callerAfterX); - - //查询被调用者x值 - String calleeAfterX = delegatecallCallee050.getCalleeX().send().toString(); - collector.logStepPass("跨合约调用后,DelegatecallCallee_050 合约中X的值为:" + calleeAfterX); - - - } catch (Exception e) { - collector.logStepFail("DelegatecallCaller050Test process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/crossContractCall/DelegatecallCallerTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/crossContractCall/DelegatecallCallerTest.java deleted file mode 100644 index f82bc78efb..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/crossContractCall/DelegatecallCallerTest.java +++ /dev/null @@ -1,74 +0,0 @@ -package network.platon.test.evm.v0_6_12.crossContractCall; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.DelegatecallCallee; -import network.platon.contracts.evm.v0_6_12.DelegatecallCaller; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * @title 0.5.13跨合约调用者,修改的是调用者中的状态变量的值 - * @description: - * @author: hudenian - * @create: 2019/12/28 - */ -public class DelegatecallCallerTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "DelegatecallCallerTest-跨合约调用者", sourcePrefix = "evm/0.6.12") - public void crossContractCaller() { - try { - //调用者合约地址 - DelegatecallCaller delegatecallCaller = DelegatecallCaller.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = delegatecallCaller.getContractAddress(); - TransactionReceipt tx = delegatecallCaller.getTransactionReceipt().get(); - collector.logStepPass("DelegatecallCaller deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + delegatecallCaller.getTransactionReceipt().get().getGasUsed()); - - - //被调用者合约地址 - DelegatecallCallee delegatecallCallee = DelegatecallCallee.deploy(web3j, transactionManager, provider, chainId).send(); - String calleeContractAddress = delegatecallCallee.getContractAddress(); - TransactionReceipt tx1 = delegatecallCallee.getTransactionReceipt().get(); - collector.logStepPass("DelegatecallCallee deploy successfully.contractAddress:" + calleeContractAddress + ", hash:" + tx1.getTransactionHash()); - collector.logStepPass("deploy gas used:" + delegatecallCallee.getTransactionReceipt().get().getGasUsed()); - - //查询调用者x值 - String callerX = delegatecallCaller.getCallerX().send().toString(); - collector.logStepPass("DelegatecallCaller 合约中X的值为:"+callerX); - - //查询被调用者x值 - String calleeX = delegatecallCallee.getCalleeX().send().toString(); - collector.logStepPass("DelegatecallCallee 合约中X的值为:"+calleeX); - - - TransactionReceipt tx2 = delegatecallCaller.inc_delegatecall(calleeContractAddress).send(); - collector.logStepPass("执行跨合约调用后,hash:" + tx2.getTransactionHash()); - - //查询调用者x值 - String callerAfterX = delegatecallCaller.getCallerX().send().toString(); - collector.logStepPass("跨合约调用后,DelegatecallCaller 合约中X的值为:"+callerAfterX); - - //查询被调用者x值 - String calleeAfterX = delegatecallCallee.getCalleeX().send().toString(); - collector.logStepPass("跨合约调用后,DelegatecallCallee 合约中X的值为:"+calleeAfterX); - - - } catch (Exception e) { - collector.logStepFail("DelegatecallCallerTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/crossContractCall/ThreeContractCallTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/crossContractCall/ThreeContractCallTest.java deleted file mode 100644 index c116acf40a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/crossContractCall/ThreeContractCallTest.java +++ /dev/null @@ -1,94 +0,0 @@ -package network.platon.test.evm.v0_6_12.crossContractCall; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.CallerOne; -import network.platon.contracts.evm.v0_6_12.CallerThree; -import network.platon.contracts.evm.v0_6_12.CallerTwo; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * @title 0.5.13三个合约间跨合约调用 delegatecall只会修改第一个合约中的状态变量 - * @description: - * @author: hudenian - * @create: 2020/1/9 - */ -public class ThreeContractCallTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ThreeContractCallTest-三个合约间跨合约调用者", sourcePrefix = "evm/0.6.12") - public void threeContractCaller() { - try { - //第一个合约 - CallerOne callerOne = CallerOne.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = callerOne.getContractAddress(); - TransactionReceipt tx = callerOne.getTransactionReceipt().get(); - collector.logStepPass("CallerOne deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + callerOne.getTransactionReceipt().get().getGasUsed()); - - - //第二个合约 - CallerTwo callerTwo = CallerTwo.deploy(web3j, transactionManager, provider, chainId).send(); - String callerTwoContractAddress = callerTwo.getContractAddress(); - tx = callerTwo.getTransactionReceipt().get(); - collector.logStepPass("CallerTwo deploy successfully.contractAddress:" + callerTwoContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + callerTwo.getTransactionReceipt().get().getGasUsed()); - - //第三个合约 - CallerThree callerThree = CallerThree.deploy(web3j, transactionManager, provider, chainId).send(); - String callerThreeContractAddress = callerThree.getContractAddress(); - tx = callerThree.getTransactionReceipt().get(); - collector.logStepPass("DelegatecallCallee deploy successfully.contractAddress:" + callerThreeContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + callerThree.getTransactionReceipt().get().getGasUsed()); - - - - //查询第一个合约x值 - String callerOneX = callerOne.getCallerX().send().toString(); - collector.logStepPass("CallerOne 合约中X的值为:"+callerOneX); - - //查询第二个合约x值 - String callerTwoX = callerTwo.getCalleeX().send().toString(); - collector.logStepPass("CallerTwo 合约中X的值为:"+callerTwoX); - - //查询第三个合约x值 - String callerThreeX = callerThree.getCalleeThreeX().send().toString(); - collector.logStepPass("CallerThree 合约中X的值为:"+callerThreeX); - - - TransactionReceipt tx2 = callerOne.inc_delegatecall().send(); - collector.logStepPass("执行跨合约调用后,hash:" + tx2.getTransactionHash()); - - //查询第一个合约x值 - callerOneX = callerOne.getCallerX().send().toString(); - collector.logStepPass("CallerOne 合约中X的值为:"+callerOneX); - collector.assertEqual("1",callerOneX); - - //查询第二个合约x值 - callerTwoX = callerTwo.getCalleeX().send().toString(); - collector.logStepPass("CallerTwo 合约中X的值为:"+callerTwoX); - collector.assertEqual("0",callerTwoX); - - //查询第三个合约x值 - callerThreeX = callerThree.getCalleeThreeX().send().toString(); - collector.logStepPass("CallerThree 合约中X的值为:"+callerThreeX); - collector.assertEqual("0",callerThreeX); - - } catch (Exception e) { - collector.logStepFail("ThreeContractCallTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/crossContractCall/WithBackCallerTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/crossContractCall/WithBackCallerTest.java deleted file mode 100644 index 0a72b59e60..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/crossContractCall/WithBackCallerTest.java +++ /dev/null @@ -1,100 +0,0 @@ -package network.platon.test.evm.v0_6_12.crossContractCall; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.WithBackCallee; -import network.platon.contracts.evm.v0_6_12.WithBackCaller; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigDecimal; -import java.math.BigInteger; - - -/** - * @title 0.5.13跨合约调用者,接收返回值 - * @description: - * @author: hudenian - * @create: 2019/12/28 - */ -public class WithBackCallerTest extends ContractPrepareTest { - - //需要进行double的值 - private String doubleValue = "10"; - - //需要前缀hello的值 - private String helloValue = "hudenian"; - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "WithBackCallerTest-跨合约调用者对反回值进行编码与解码", sourcePrefix = "evm/0.6.12") - public void crossContractCaller() { - try { - //调用者合约地址 - WithBackCaller withBackCaller = WithBackCaller.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = withBackCaller.getContractAddress(); - TransactionReceipt tx = withBackCaller.getTransactionReceipt().get(); - collector.logStepPass("WithBackCaller deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + withBackCaller.getTransactionReceipt().get().getGasUsed()); - - - //被调用者合约地址 - WithBackCallee withBackCallee = WithBackCallee.deploy(web3j, transactionManager, provider, chainId).send(); - String calleeContractAddress = withBackCallee.getContractAddress(); - TransactionReceipt tx1 = withBackCallee.getTransactionReceipt().get(); - collector.logStepPass("WithBackCallee deploy successfully.contractAddress:" + calleeContractAddress + ", hash:" + tx1.getTransactionHash()); - collector.logStepPass("deploy gas used:" + withBackCallee.getTransactionReceipt().get().getGasUsed()); - - //数值类型跨合约调用 - TransactionReceipt tx2 = withBackCaller.callDoublelTest(calleeContractAddress,new BigInteger(doubleValue)).send(); - collector.logStepPass("WithBackCaller callDoublelTest successfully hash:" + tx2.getTransactionHash()); - //获取数值类型跨合约调用的结果 - String chainDoubleValue = withBackCaller.getuintResult().send().toString(); - collector.logStepPass("获取数值类型跨合约调用的结果值为:" + chainDoubleValue); - collector.assertEqual(new BigDecimal(doubleValue).multiply(new BigDecimal("2")),new BigDecimal(chainDoubleValue)); - - - //字符串类型跨合约调用 - tx2 = withBackCaller.callgetNameTest(calleeContractAddress,helloValue).send(); - collector.logStepPass("WithBackCaller callDoublelTest successfully hash:" + tx2.getTransactionHash()+"gas消耗值为:"+tx2.getGasUsed()); - //获取字符串类型跨合约调用 - String callerStringResult = withBackCaller.getStringResult().send().toString(); - collector.logStepPass("获取字符串类型跨合约调用的结果值为:" + callerStringResult); - collector.assertEqual(callerStringResult,"hello"+helloValue); - - - //调用被调用合约,指定足够的gas - tx2 = withBackCaller.callgetNameTestWithGas(calleeContractAddress,helloValue,new BigInteger("90000")).send(); - collector.logStepPass("withBackCaller callgetNameTestWithGas successfully hash:" + tx2.getTransactionHash()+"gas消耗值为:"+tx2.getGasUsed()); - //获取字符串类型跨合约调用 - callerStringResult = withBackCaller.getStringResult().send().toString(); - collector.logStepPass("调用被调用合约,指定足够的gas查询到的返回值为:" + callerStringResult); - collector.assertEqual(callerStringResult,"hellogashudenian"); - - //调用被调用合约,指定gas不足 - try { - tx2 = withBackCaller.callgetNameTestWithGas(calleeContractAddress, helloValue, new BigInteger("100")).send(); - - collector.logStepPass("withBackCaller callgetNameTestWithGas with less gas hash:" + tx2.getTransactionHash() + "gas消耗值为:" + tx2.getGasUsed()); - //获取字符串类型跨合约调用 - callerStringResult = withBackCaller.getStringResult().send().toString(); - collector.logStepPass("调用被调用合约,指定gas不足时查询到的返回值为:" + callerStringResult); - }catch(Exception e1){ - collector.logStepPass("指定gas不足时,调用合约失败!"); - } - - - } catch (Exception e) { - collector.logStepFail("WithBackCallerTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeConstantAddressTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeConstantAddressTest.java deleted file mode 100644 index 4d2bed0d6a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeConstantAddressTest.java +++ /dev/null @@ -1,86 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.BasicDataTypeConstantContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:合约字面常量地址Address - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeConstantAddressTest extends ContractPrepareTest { - - private String amountValue1; - private String amountValue2; - private String amountSumValue; - - @Before - public void before() { - this.prepare(); - amountValue1 = driverService.param.get("amountValue1"); - amountValue2 = driverService.param.get("amountValue2"); - amountSumValue = driverService.param.get("amountSumValue"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeConstantContractTest.合约地址Address常量",sourcePrefix = "evm/0.6.12") - public void testBasicDataTypeContract() { - - BasicDataTypeConstantContract basicDataTypeConstantContract = null; - try { - //合约部署 - basicDataTypeConstantContract = BasicDataTypeConstantContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeConstantContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeConstantContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeConstantContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:address类型,转账给指定地址 - try { - int expectValue = Integer.parseInt(amountSumValue); -// String myContractAddress = "lax132dnv620rmht2qxgfgvmkdqn0vz3vtkfw87hjs"; - String myContractAddress = "atx132dnv620rmht2qxgfgvmkdqn0vz3vtkfjjx2s6"; - - //1)、查询地址余额 - BigInteger contractBalance = basicDataTypeConstantContract.getBalance(myContractAddress).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 1)、查询地址余额 getBalance() successfully.contractBalance:" + contractBalance); - - //2)、查询当前转账人账户余额getBalance() - BigInteger currentTransferUserBalance = basicDataTypeConstantContract.getBalance(walletAddress).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 2)、转账人账户余额 getBalance() successfully.currentTransferUserBalance: " + currentTransferUserBalance); - - //3)、给当前地址第一次转账 - TransactionReceipt transactionReceipt = basicDataTypeConstantContract.goTransfer(myContractAddress,new BigInteger(amountValue1)).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 3)、给当前地址转账 goTransfer() successfully hash:" + transactionReceipt.getTransactionHash()); - - //4)、给当前地址第二次转账 - TransactionReceipt transactionReceipt1 = basicDataTypeConstantContract.goSend(myContractAddress,new BigInteger(amountValue2)).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 4)、给当前地址转账 goSend() successfully hash:" + transactionReceipt1.getTransactionHash()); - - //5)、查询转账完毕,地址余额 - BigInteger currentContractBalance = basicDataTypeConstantContract.getBalance(myContractAddress).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 5)、查询转账完毕,地址余额 getBalance() successfully currentContractBalance:" + currentContractBalance); - int actualValue = currentContractBalance.intValue() - contractBalance.intValue(); - - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeConstantContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeConstantContractTest.java deleted file mode 100644 index f6a3434043..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeConstantContractTest.java +++ /dev/null @@ -1,174 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple3; -import network.platon.contracts.evm.v0_6_12.BasicDataTypeConstantContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:合约基本数据类型字面常量 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeConstantContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeConstantContractTest.合约基本数据类型字面常量",sourcePrefix = "evm/0.6.12") - public void testBasicDataTypeContract() { - - BasicDataTypeConstantContract basicDataTypeConstantContract = null; - try { - //合约部署 - basicDataTypeConstantContract = BasicDataTypeConstantContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeConstantContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeConstantContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeConstantContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:address类型,获取当前合约余额 - try { - BigInteger expectValue = new BigInteger("0"); - //执行getCurrentBalance() - BigInteger actualValue = basicDataTypeConstantContract.getCurrentBalance().send(); - collector.logStepPass("BasicDataTypeConstantContract 执行查询当前合约中余额 getCurrentBalance() successfully contractBalance:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、验证:字符串字面常量,进行赋值 - try { - String expectValue = "hello"; - //执行getCurrentBalance() - String actualValue = basicDataTypeConstantContract.getStrA().send(); - collector.logStepPass("BasicDataTypeConstantContract 字符串字面常量进行赋值 执行getStrA() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、验证:字符串是特殊的动态长度字节数组,获取长度 - try { - BigInteger expectValue = new BigInteger("5"); - //执行getCurrentBalance() - BigInteger actualValue = basicDataTypeConstantContract.getStrALength().send(); - collector.logStepPass("BasicDataTypeConstantContract 验证字符串字面常量 执行getStrALength() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //4、验证:字符串是特殊的动态长度字节数组,进行转换 - try { - String expectValue = "aello"; - //赋值执行setStr1() - String actualValue = basicDataTypeConstantContract.setStrA().send(); - collector.logStepPass("BasicDataTypeConstantContract 验证字符串字面常量 执行setStrA() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //5、验证:十六进制字面常量,定义赋值取值 - try { - //执行getHexLiteral() - String expectValue = "c8"; - byte[] byteValue = basicDataTypeConstantContract.getHexLiteraA().send(); - String actualValue = DataChangeUtil.bytesToHex(byteValue); - collector.logStepPass("BasicDataTypeConstantContract 验证十六进制字面常量 执行getHexLiteraA() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - - //执行getHexLitera2() - String expectValue2 = "01f4"; - byte[] byteValue2 = basicDataTypeConstantContract.getHexLiteraB().send(); - String actualValue2 = DataChangeUtil.bytesToHex(byteValue2); - collector.logStepPass("BasicDataTypeConstantContract 验证十六进制字面常量 执行getHexLiteraB() successfully actualValue2:" + actualValue2); - collector.assertEqual(actualValue2,expectValue2, "checkout execute success."); - - //执行getHexLitera3() - String expectValueA = "01f4"; - String expectValueB = "01"; - String expectValueC = "f4"; - Tuple3 tuple3 = basicDataTypeConstantContract.getHexLiteraC().send(); - String actualValueA = DataChangeUtil.bytesToHex(tuple3.getValue1()); - String actualValueB = DataChangeUtil.bytesToHex(tuple3.getValue2()); - String actualValueC = DataChangeUtil.bytesToHex(tuple3.getValue3()); - collector.logStepPass("BasicDataTypeConstantContract 验证十六进制字面常量 执行getHexLiteraC() successfully actualValueA:" + actualValueA + - ", actualValueB:" + actualValueB + ", actualValueC:" + actualValueC); - - collector.assertEqual(actualValueA,expectValueA, "checkout execute success."); - collector.assertEqual(actualValueB,expectValueB, "checkout execute success."); - collector.assertEqual(actualValueC,expectValueC, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //6、验证:枚举类型 - try { - BigInteger expectValue1 = new BigInteger("1"); - BigInteger expectValue2 = new BigInteger("3"); - //执行getSeason1() - BigInteger actualValue1 = basicDataTypeConstantContract.getSeasonA().send(); - collector.logStepPass("BasicDataTypeConstantContract 验证枚举类型执行 getSeasonA() successfully actualValue1:" + actualValue1); - collector.assertEqual(actualValue1,expectValue1, "checkout execute success."); - - //执行getSeason2() - BigInteger actualValue2 = basicDataTypeConstantContract.getSeasonB().send(); - collector.logStepPass("BasicDataTypeConstantContract 验证枚举类型执行 getSeasonB() successfully actualValue2:" + actualValue2); - collector.assertEqual(actualValue2,expectValue2, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //7、验证:有理数常量 - try { - BigInteger expectValue1 = new BigInteger("3"); - BigInteger expectValue2 = new BigInteger("20000000000"); - BigInteger expectValue3 = new BigInteger("3000000000000000"); - //执行getValue() - Tuple3 tuple3 = basicDataTypeConstantContract.getValue().send(); - BigInteger actualValue1 = tuple3.getValue1(); - BigInteger actualValue2 = tuple3.getValue2(); - BigInteger actualValue3 = tuple3.getValue3(); - - collector.logStepPass("BasicDataTypeConstantContract 验证有理数常量执行 getValue() successfully actualValue1:" + actualValue1 + - ", actualValue2: " + actualValue2 + ", actualValue3:" + actualValue3) ; - collector.assertEqual(actualValue1,expectValue1, "checkout execute success."); - collector.assertEqual(actualValue2,expectValue2, "checkout execute success."); - collector.assertEqual(actualValue3,expectValue3, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeContractTest.java deleted file mode 100644 index b96aa3a207..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeContractTest.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.BasicDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:合约基本数据类型 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeUintOverTest.合约基本数据类型",sourcePrefix = "evm/0.6.12") - public void testBasicDataTypeContract() { - - BasicDataTypeContract basicDataTypeContract = null; - try { - //合约部署 - basicDataTypeContract = BasicDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:定长字节数组 - try { - BigInteger expectLength = new BigInteger("2"); - //赋值执行getBytes1Length() - BigInteger actualLength = basicDataTypeContract.getBytes1Length().send(); - collector.logStepPass("BasicDataTypeContract 执行getBytes1Length() successfully actualValue:" + actualLength); - collector.assertEqual(actualLength,expectLength, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、验证:变长字节数组 - try { - BigInteger expectLength = new BigInteger("3"); - //赋值执行getBytesLength() - BigInteger actualLength = basicDataTypeContract.getBytesLength().send(); - collector.logStepPass("BasicDataTypeContract 执行getBytesLength() successfully actualValue:" + actualLength); - collector.assertEqual(actualLength,expectLength, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeDeleteContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeDeleteContractTest.java deleted file mode 100644 index 1d246a3ab5..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeDeleteContractTest.java +++ /dev/null @@ -1,132 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tuples.generated.Tuple6; -import network.platon.contracts.evm.v0_6_12.BasicDataTypeDeleteContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:数据类型操作符delete - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeDeleteContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeDelete.数据类型操作符delete",sourcePrefix = "evm/0.6.12") - public void testBasicDataTypeContract() { - BasicDataTypeDeleteContract basicDataTypeDeleteContract = null; - try { - //合约部署 - basicDataTypeDeleteContract = BasicDataTypeDeleteContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeDeleteContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeDeleteContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeDelete issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、delete基本数据类型 - try { - //初始化赋值 - TransactionReceipt initTx = basicDataTypeDeleteContract.initBasicData().send(); - collector.logStepPass("BasicDataTypeDelete 【执行初始化赋值操作 initBasicData()】successfully hash:" + initTx.getTransactionHash()); - //执行delete基本数据类型 - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteBasicData().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete基本数据类型 deleteBasicData()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取基本数据类型数值 - Tuple6 tuple6 = basicDataTypeDeleteContract.getBasicData().send(); - collector.logStepPass("BasicDataTypeDelete 【执行获取基本数据类型数值】successfully value:" + tuple6.toString()); - Boolean boolActual = tuple6.getValue1(); - BigInteger uintActual = tuple6.getValue2(); - String addrStr = tuple6.getValue3(); - byte[] bytesActual = tuple6.getValue4(); - String str = tuple6.getValue5(); - BigInteger intActual = tuple6.getValue6(); - collector.assertEqual(boolActual,false, "checkout delete bool execute success."); - collector.assertEqual(uintActual,new BigInteger("0"), "checkout delete uint execute success."); -// collector.assertEqual(addrStr,"lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmscn5j", "checkout delete address execute success."); - collector.assertEqual(addrStr,"atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc", "checkout delete address execute success."); - //collector.assertEqual(bytesActual,new byte[]("0x0"), "checkout delete bytes execute success."); - collector.assertEqual(str,"", "checkout delete string execute success."); - collector.assertEqual(intActual,new BigInteger("0"), "checkout delete int execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、delete结构体 - try { - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteStruct().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete结构体 deleteStruct()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取结构体数值 - Tuple2 tuple2 =basicDataTypeDeleteContract.getStruct().send(); - collector.logStepPass("BasicDataTypeDelete 【执行获取结构体数值】successfully value:" + tuple2.toString()); - BigInteger uintActual = tuple2.getValue1(); - String addrStr = tuple2.getValue2(); - collector.assertEqual(uintActual,new BigInteger("0"), "checkout delete struct execute success."); - collector.assertEqual(addrStr,"", "checkout delete struct execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、delete数组 - try { - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteArray().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete数组 deleteArray()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取数组长度 - BigInteger arrayLength =basicDataTypeDeleteContract.getArrayLength().send(); - collector.logStepPass("BasicDataTypeDelete 【获取数组长度】successfully value:" + arrayLength); - collector.assertEqual(arrayLength,new BigInteger("0"), "checkout delete struct execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、delete枚举 - try { - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteEnum().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete枚举 deleteEnum()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取枚举值 - BigInteger enumValue =basicDataTypeDeleteContract.getEnum().send(); - collector.logStepPass("BasicDataTypeDelete 【获取枚举数值】successfully value:" + enumValue); - collector.assertEqual(enumValue,new BigInteger("0"), "checkout delete struct execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //4、deleteMapping - try { - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteMapping().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete映射 deleteMapping()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取映射值 - BigInteger mappingValue =basicDataTypeDeleteContract.getMapping().send(); - collector.logStepPass("BasicDataTypeDelete 【获取映射数值】successfully value:" + mappingValue); - collector.assertEqual(mappingValue,new BigInteger("0"), "checkout delete struct execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeIntOverTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeIntOverTest.java deleted file mode 100644 index f9e42922c7..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeIntOverTest.java +++ /dev/null @@ -1,66 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.BasicDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:有符号8位整数数据溢出(8位有符号整数取值范围-128~127) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeIntOverTest extends ContractPrepareTest { - - private String uintParam; - private String resultParam; - - - @Before - public void before() { - this.prepare(); - uintParam = driverService.param.get("uintParam"); - resultParam = driverService.param.get("resultParam"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeUintOverTest.有符号8位整数数据溢出",sourcePrefix = "evm/0.6.12") - public void testBasicDataTypeContract() { - - BasicDataTypeContract basicDataTypeContract = null; - try { - //合约部署 - basicDataTypeContract = BasicDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //验证:有符号8位整数溢出(8位有符号整数取值范围-128~127) - try { - BigInteger resultValue = new BigInteger(resultParam); - //赋值执行addIntOverflow() - BigInteger actualValue = basicDataTypeContract.addIntOverflow(new BigInteger(uintParam)).send(); - collector.logStepPass("BasicDataTypeContract 执行addIntOverflow() successfully actualValue:" + actualValue + ",resultValue:" + resultValue); - collector.assertEqual(actualValue,resultValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeUintOverTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeUintOverTest.java deleted file mode 100644 index 73a15c6120..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/BasicDataType/BasicDataTypeUintOverTest.java +++ /dev/null @@ -1,66 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.BasicDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:无符号8位整数数据溢出(8位无符号整数取值范围0~255) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeUintOverTest extends ContractPrepareTest { - - private String uintParam; - private String resultParam; - - - @Before - public void before() { - this.prepare(); - uintParam = driverService.param.get("uintParam"); - resultParam = driverService.param.get("resultParam"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeUintOverTest.无符号8位整数数据溢出",sourcePrefix = "evm/0.6.12") - public void testBasicDataTypeContract() { - - BasicDataTypeContract basicDataTypeContract = null; - try { - //合约部署 - basicDataTypeContract = BasicDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:无符号8位整数数据溢出(8位无符号整数取值范围0~255) - try { - BigInteger resultValue = new BigInteger(resultParam); - //赋值执行addUintOverflow() - BigInteger actualValue = basicDataTypeContract.addUintOverflow(new BigInteger(uintParam)).send(); - collector.logStepPass("BasicDataTypeContract 执行addUintOverflow() successfully actualValue:" + actualValue +",resultValue:"+ resultValue); - collector.assertEqual(actualValue,resultValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/MappingData/MappingArrayDataTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/MappingData/MappingArrayDataTypeContractTest.java deleted file mode 100644 index 2e82ab184c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/MappingData/MappingArrayDataTypeContractTest.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.MappingData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple4; -import network.platon.contracts.evm.v0_6_12.MappingArrayDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:验证mapping数组类型 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class MappingArrayDataTypeContractTest extends ContractPrepareTest { - - private String keyValue,a1Value,a2Value,b1Value,b2Value; - - @Before - public void before() { - this.prepare(); - keyValue = driverService.param.get("keyValue"); - a1Value = driverService.param.get("a1Value"); - a2Value = driverService.param.get("a2Value"); - b1Value = driverService.param.get("b1Value"); - b2Value = driverService.param.get("b2Value"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "MappingDataTypeContract.mapping数组类型",sourcePrefix = "evm/0.6.12") - public void testMappingContract() { - - MappingArrayDataTypeContract mappingArrayDataTypeContract = null; - try { - //合约部署 - mappingArrayDataTypeContract = MappingArrayDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = mappingArrayDataTypeContract.getContractAddress(); - TransactionReceipt tx = mappingArrayDataTypeContract.getTransactionReceipt().get(); - collector.logStepPass("mappingArrayDataTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("mappingArrayDataTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - //1、执行mapping数组赋值 - try { - BigInteger keyValueBig = new BigInteger(keyValue); - BigInteger a1ValueBig = new BigInteger(a1Value); - BigInteger a2ValueBig = new BigInteger(a2Value); - BigInteger b1ValueBig = new BigInteger(b1Value); - BigInteger b2ValueBig = new BigInteger(b2Value); - TransactionReceipt transactionReceipt = mappingArrayDataTypeContract.set(keyValueBig,a1ValueBig,a2ValueBig,b1ValueBig,b2ValueBig).send(); - collector.logStepPass("mappingArrayDataTypeContract 【执行mapping数组赋值 set()】 successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取值getValueByKey() - Tuple4 tuple4 = mappingArrayDataTypeContract.getValueByKey(keyValueBig).send(); - BigInteger actualValue1 = tuple4.getValue1(); - BigInteger actualValue2 = tuple4.getValue2(); - BigInteger actualValue3 = tuple4.getValue3(); - BigInteger actualValue4 = tuple4.getValue4(); - collector.logStepPass("mappingArrayDataTypeContract 【执行获取值getValueByKey()】 successful actualValue:" + tuple4.toString()); - collector.assertEqual(actualValue1,a1ValueBig, "checkout execute success."); - collector.assertEqual(actualValue2,a2ValueBig, "checkout execute success."); - collector.assertEqual(actualValue3,b1ValueBig, "checkout execute success."); - collector.assertEqual(actualValue4,b2ValueBig, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("mappingArrayDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/MappingData/MappingDataTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/MappingData/MappingDataTypeContractTest.java deleted file mode 100644 index e24200837d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/MappingData/MappingDataTypeContractTest.java +++ /dev/null @@ -1,66 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.MappingData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.MappingDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:映射(Mapping)定义赋值取值 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class MappingDataTypeContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "MappingDataTypeContract.映射(Mapping)定义赋值取值",sourcePrefix = "evm/0.6.12") - public void testMappingContract() { - - MappingDataTypeContract mappingContractTest = null; - try { - //合约部署 - mappingContractTest = MappingDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = mappingContractTest.getContractAddress(); - TransactionReceipt tx = mappingContractTest.getTransactionReceipt().get(); - collector.logStepPass("MappingContractTest issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("MappingContractTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:数组的声明及初始化及取值(定长数组、可变数组) - try { - String expectValue = "Lucy"; - BigInteger index = new BigInteger("0"); - //赋值执行addName() - TransactionReceipt transactionReceipt = mappingContractTest.addName().send(); - collector.logStepPass("MappingContractTest 执行addName() successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取值getName() - String actualValue = mappingContractTest.getName(index).send(); - collector.logStepPass("调用合约getName()方法完毕 successful actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("MappingContractTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ContractArrayTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ContractArrayTest.java deleted file mode 100644 index 244fb5a3cd..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ContractArrayTest.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.ContractArray; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; - -import org.junit.Before; -import org.junit.Test; - -import java.util.List; - -/** - * @title 验证ContractArray - * @description: - * @author: liweic - * @create: 2020/01/11 19:01 - **/ - -public class ContractArrayTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "data_type.ContractArrayTest-合约数组测试",sourcePrefix = "evm/0.6.12") - public void Contractarray() { - try { - ContractArray contractarray = ContractArray.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = contractarray.getContractAddress(); - TransactionReceipt tx = contractarray.getTransactionReceipt().get(); - collector.logStepPass("ContractArray deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - - //验证合约数组 - TransactionReceipt resultA = contractarray.f().send(); - - String getx = contractarray.getx().send(); - collector.logStepPass("合约数组X返回值:" + getx); - collector.assertEqual(getx.toLowerCase() ,contractAddress); - - List gety = contractarray.gety().send(); - String addressy = gety.get(3).toString(); - collector.logStepPass("合约数组Y返回值:" + addressy); - collector.assertEqual(addressy.toLowerCase() ,contractAddress); - - - - } catch (Exception e) { - collector.logStepFail("ContractArrayContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeArrayComplexTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeArrayComplexTest.java deleted file mode 100644 index 779a4ada41..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeArrayComplexTest.java +++ /dev/null @@ -1,76 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.ReferenceDataTypeArrayComplexContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - -/** - * @title 测试:验证含数组(Array)运算逻辑合约 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeArrayComplexTest extends ContractPrepareTest { - - private String a,b,c,d,e; - private String sum; - - - @Before - public void before() { - this.prepare(); - a = driverService.param.get("a"); - b = driverService.param.get("b"); - c = driverService.param.get("c"); - d = driverService.param.get("d"); - e = driverService.param.get("e"); - sum = driverService.param.get("sum"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeArrayComplex.含数组(Array)运算逻辑合约",sourcePrefix = "evm/0.6.12") - public void testReferenceDataTypeArrayTest() { - try{ - ReferenceDataTypeArrayComplexContract referenceDataTypeArrayComplex = null; - referenceDataTypeArrayComplex = ReferenceDataTypeArrayComplexContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayComplex.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayComplex.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeArrayComplex issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - if(getIntParam("seq") == 3){ - List array = new ArrayList(); - BigInteger actualValue = referenceDataTypeArrayComplex.sumComplexArray(array).send(); - collector.logStepPass("referenceDataTypeArrayComplex 执行sumComplexArray() successfully.hash:" + actualValue); - collector.assertEqual(actualValue,BigInteger.ZERO, "checkout execute success."); - return; - } - BigInteger sumBig = new BigInteger(sum); - List array = new ArrayList(); - array.add(new BigInteger(a)); - array.add(new BigInteger(b)); - array.add(new BigInteger(c)); - array.add(new BigInteger(d)); - array.add(new BigInteger(e)); - - //赋值执行sumComplexArray() - BigInteger actualValue = referenceDataTypeArrayComplex.sumComplexArray(array).send(); - collector.logStepPass("referenceDataTypeArrayComplex 执行sumComplexArray() successfully.hash:" + actualValue); - collector.assertEqual(actualValue,sumBig, "checkout execute success."); - }catch (Exception e){ - collector.logStepFail(Thread.currentThread().getStackTrace()[1].getMethodName() + " fail.", e.getMessage()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeArrayMethodTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeArrayMethodTest.java deleted file mode 100644 index d7b980a1e2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeArrayMethodTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.ReferenceDataTypeArrayContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:数组(Array)方法 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeArrayMethodTest extends ContractPrepareTest { - - private String insertValue; - private String arrayLength; - - @Before - public void before() { - this.prepare(); - insertValue = driverService.param.get("insertValue"); - arrayLength = driverService.param.get("arrayLength"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeMultiArrayContractTest.数组(Array)方法",sourcePrefix = "evm/0.6.12") - public void testReferenceDataTypeArrayTest() { - - ReferenceDataTypeArrayContract referenceDataTypeArrayContract = null; - try { - //合约部署 - referenceDataTypeArrayContract = ReferenceDataTypeArrayContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayContract.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeArrayContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //验证:数组的属性及方法 - try { - BigInteger expectLength = new BigInteger(arrayLength); - //赋值执行setArrayPush() - TransactionReceipt transactionReceipt = referenceDataTypeArrayContract.setArrayPush(insertValue).send(); - collector.logStepPass("ReferenceDataTypeArrayContract 执行setArrayPush() successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取数组长度getArrayLength() - BigInteger actualLength = referenceDataTypeArrayContract.getArrayLength().send(); - collector.logStepPass("调用合约getArrayLength()方法完毕 successful actualLength:" + actualLength); - collector.assertEqual(actualLength,expectLength, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeArrayOperatorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeArrayOperatorTest.java deleted file mode 100644 index 07e2f9058e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeArrayOperatorTest.java +++ /dev/null @@ -1,105 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tuples.generated.Tuple5; -import network.platon.contracts.evm.v0_6_12.ReferenceDataTypeArrayOperatorContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:验证数组支持的运算符 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeArrayOperatorTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeArray.数组支持的运算符",sourcePrefix = "evm/0.6.12") - public void testReferenceDataTypeArrayTest() { - - ReferenceDataTypeArrayOperatorContract referenceDataTypeArrayOperator = null; - try { - //合约部署 - referenceDataTypeArrayOperator = ReferenceDataTypeArrayOperatorContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayOperator.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayOperator.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeArrayOperator issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeArrayOperator deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //1、比较运算符 arrayCompare() - Tuple5 tuple5 = referenceDataTypeArrayOperator.arrayCompare().send(); - boolean actualValue1 = tuple5.getValue1(); - boolean actualValue2 = tuple5.getValue2(); - boolean actualValue3 = tuple5.getValue3(); - boolean actualValue4 = tuple5.getValue4(); - boolean actualValue5 = tuple5.getValue5(); - - collector.logStepPass("执行【比较运算符 arrayCompare()】 successfully.hash:" + tuple5.toString()); - collector.assertEqual(actualValue1,true, "checkout < execute success."); - collector.assertEqual(actualValue2,false, "checkout > execute success."); - collector.assertEqual(actualValue3,true, "checkout == execute success."); - collector.assertEqual(actualValue4,true, "checkout != execute success."); - collector.assertEqual(actualValue5,true, "checkout >= execute success."); - - //2、&(按位与) - Tuple2 tuple2 =referenceDataTypeArrayOperator.arrayBitAndOperators().send(); - BigInteger andOperatorsValue = tuple2.getValue2(); - collector.logStepPass("执行【&(按位与) arrayBitAndOperators()】 successfully.hash:" + tuple2.toString()); - collector.assertEqual(andOperatorsValue,new BigInteger("128"), "checkout execute success."); - - //3、|(按位或) - Tuple2 tuple3 =referenceDataTypeArrayOperator.arrayBitOrOperators().send(); - BigInteger orOperatorsValue = tuple3.getValue2(); - collector.logStepPass("执行【|(按位或) arrayBitOrOperators()】 successfully.hash:" + tuple3.toString()); - collector.assertEqual(orOperatorsValue,new BigInteger("129"), "checkout execute success."); - - //4、~(按位取反) - Tuple2 tuple4 =referenceDataTypeArrayOperator.arrayBitInverseOperators().send(); - BigInteger inverseOperatorsValue = tuple4.getValue2(); - collector.logStepPass("执行【~(按位取反) arrayBitInverseOperators()】 successfully.hash:" + tuple4.toString()); - collector.assertEqual(inverseOperatorsValue,new BigInteger("126"), "checkout execute success."); - - //5、^(按位异或) - Tuple2 tuple6 =referenceDataTypeArrayOperator.arrayBitXOROperators().send(); - BigInteger xOROperatorsValue = tuple6.getValue2(); - collector.logStepPass("执行【^(按位异或) arrayBitXOROperators()】 successfully.hash:" + tuple6.toString()); - collector.assertEqual(xOROperatorsValue,new BigInteger("1"), "checkout execute success."); - - //6、<<(左移位) - Tuple2 tuple7 =referenceDataTypeArrayOperator.arrayBitLeftShiftperators().send(); - BigInteger leftShiftperatorsValue = tuple7.getValue2(); - collector.logStepPass("执行【<<(左移位) arrayBitLeftShiftperators()】 successfully.hash:" + tuple7.toString()); - collector.assertEqual(leftShiftperatorsValue,new BigInteger("2"), "checkout execute success."); - - //7、<<(右移位) - Tuple2 tuple8 =referenceDataTypeArrayOperator.arrayBitRightShiftperators().send(); - BigInteger rightShiftperatorsValue = tuple8.getValue2(); - collector.logStepPass("执行【<<(右移位) arrayBitLeftShiftperators()】 successfully.hash:" + tuple8.toString()); - collector.assertEqual(rightShiftperatorsValue,new BigInteger("64"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeArrayOperator Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeMultiArrayContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeMultiArrayContractTest.java deleted file mode 100644 index d051610f98..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeMultiArrayContractTest.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_6_12.ReferenceDataTypeArrayContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:多维数组声明及初始化及取值 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeMultiArrayContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeMultiArray.多维数组声明及初始化及取值",sourcePrefix = "evm/0.6.12") - public void testReferenceDataTypeArrayTest() { - - ReferenceDataTypeArrayContract referenceDataTypeArrayContract = null; - try { - //合约部署 - referenceDataTypeArrayContract = ReferenceDataTypeArrayContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayContract.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeArrayContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - - //验证:多维数组声明及初始化及取值 - try { - BigInteger expectValue = new BigInteger("100"); - BigInteger expectLength = new BigInteger("2"); - //赋值执行setMultiArray() - TransactionReceipt transactionReceipt = referenceDataTypeArrayContract.setMultiArray().send(); - collector.logStepPass("ReferenceDataTypeArrayContract 执行setMultiArray() successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取值getMultiArray() - Tuple2 tuple2 = referenceDataTypeArrayContract.getMultiArray().send(); - BigInteger actualValue = tuple2.getValue1(); - BigInteger actualLength = tuple2.getValue2(); - - collector.logStepPass("调用合约setMultiArray() 方法完毕 successful actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout value execute success."); - collector.assertEqual(actualLength,expectLength, "checkout length execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeSetArrayContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeSetArrayContractTest.java deleted file mode 100644 index 35385977dd..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeSetArrayContractTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.ReferenceDataTypeArrayContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:数组(Array)赋值取值及方法 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeSetArrayContractTest extends ContractPrepareTest { - - private String insertNo; - private String insertValue; - - @Before - public void before() { - this.prepare(); - insertNo = driverService.param.get("insertNo"); - insertValue = driverService.param.get("insertValue"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeArray.数组的声明及初始化及取值",sourcePrefix = "evm/0.6.12") - public void testReferenceDataTypeArrayTest() { - - ReferenceDataTypeArrayContract referenceDataTypeArrayContract = null; - try { - //合约部署 - referenceDataTypeArrayContract = ReferenceDataTypeArrayContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayContract.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeArrayContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:数组的声明及初始化及取值(定长数组、可变数组) - try { - BigInteger index = new BigInteger(insertNo); - BigInteger value = new BigInteger(insertValue); - //赋值执行setArray() - TransactionReceipt transactionReceipt = referenceDataTypeArrayContract.setArray(index,value).send(); - collector.logStepPass("ReferenceDataTypeArrayContract 执行setArray() successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取值getArray() - BigInteger actualValue = referenceDataTypeArrayContract.getArray(index).send(); - collector.logStepPass("调用合约getArray()方法完毕 successful actualValue:" + actualValue); - collector.assertEqual(actualValue,value, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeStructContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeStructContractTest.java deleted file mode 100644 index a51530141d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeStructContractTest.java +++ /dev/null @@ -1,104 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple4; -import network.platon.contracts.evm.v0_6_12.ReferenceDataTypeStructContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:结构体定义、赋值及取值 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeStructContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeStructContractTest.结构体定义、赋值及取值",sourcePrefix = "evm/0.6.12") - public void testReferenceDataTypeStructTest() { - - ReferenceDataTypeStructContract referenceDataTypeStructContract = null; - try { - //合约部署 - referenceDataTypeStructContract = ReferenceDataTypeStructContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeStructContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeStructContract.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeStructContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - BigInteger expectId = new BigInteger("2"); - BigInteger expectAge = new BigInteger("25"); - boolean expectVIP = true; - - //1、赋值方式一: 按入参顺序赋值 - try { - //赋值执行initDataStruct1() - Tuple4 tuple4 = referenceDataTypeStructContract.initDataStructA().send(); - BigInteger actualId = tuple4.getValue1(); - BigInteger actualAge = tuple4.getValue3(); - boolean actualVIP = tuple4.getValue4(); - - collector.logStepPass("ReferenceDataTypeStructContract 执行initDataStructA()方法 successfully."); - collector.assertEqual(actualId,expectId, "checkout Id execute success."); - collector.assertEqual(actualAge,expectAge, "checkout Age execute success."); - collector.assertEqual(actualVIP,expectVIP, "checkout VIP execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //2、赋值方式二: 按命名参数赋值 - try { - //赋值执行initDataStruct2() - Tuple4 tuple4 = referenceDataTypeStructContract.initDataStructB().send(); - BigInteger actualId = tuple4.getValue1(); - BigInteger actualAge = tuple4.getValue3(); - boolean actualVIP = tuple4.getValue4(); - - collector.logStepPass("ReferenceDataTypeStructContract 执行initDataStructB()方法 successfully."); - collector.assertEqual(actualId,expectId, "checkout Id execute success."); - collector.assertEqual(actualAge,expectAge, "checkout Age execute success."); - collector.assertEqual(actualVIP,expectVIP, "checkout VIP execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、赋值方式三:结构体中映射的初始化 - try { - //赋值执行initDataStruct3() - Tuple4 tuple4 = referenceDataTypeStructContract.initDataStructC().send(); - BigInteger actualId = tuple4.getValue1(); - BigInteger actualAge = tuple4.getValue3(); - boolean actualVIP = tuple4.getValue4(); - - collector.logStepPass("ReferenceDataTypeStructContract 执行initDataStructC()方法 successfully."); - collector.assertEqual(actualId,expectId, "checkout Id execute success."); - collector.assertEqual(actualAge,expectAge, "checkout Age execute success."); - collector.assertEqual(actualVIP,expectVIP, "checkout VIP execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeStructDeleteContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeStructDeleteContractTest.java deleted file mode 100644 index cc82e3ade6..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/ReferenceData/ReferenceDataTypeStructDeleteContractTest.java +++ /dev/null @@ -1,93 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.ReferenceDataTypeStructDeleteContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:结构体嵌套delete操作 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeStructDeleteContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeStructDelete.结构体嵌套delete操作",sourcePrefix = "evm/0.6.12") - public void testReferenceDataTypeStructRecursive() { - - ReferenceDataTypeStructDeleteContract referenceDataTypeStructDelete = null; - try { - //合约部署 - referenceDataTypeStructDelete = ReferenceDataTypeStructDeleteContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeStructDelete.getContractAddress(); - TransactionReceipt tx = referenceDataTypeStructDelete.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeStructDelete issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete deploy fail.", e.toString()); - e.printStackTrace(); - } - try { - //1、执行delete基本类型之后值 - BigInteger deleteInt = referenceDataTypeStructDelete.getToDeleteInt().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete基本类型之后值 getToDeleteInt()】方法 successfully.deleteInt:" + deleteInt); - collector.assertEqual(deleteInt,new BigInteger("0"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - //2、执行delete外部结构体uint类型 - BigInteger actualValue = referenceDataTypeStructDelete.getTopValue().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete外部结构体包含uint类型 getTopValue()】方法 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,new BigInteger("0"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - //3、执行delete外部结构体包含mapping类型 - BigInteger actualValue = referenceDataTypeStructDelete.getTopMapping().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete外部结构体包含mapping类型 getTopMapping()】方法 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,new BigInteger("1"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - //4、执行delete内部部结构体包含uint类型 - BigInteger actualValue = referenceDataTypeStructDelete.getNestedValue().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete内部部结构体包含uint类型 getNestedValue()】方法 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,new BigInteger("0"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - //5、执行delete内部部结构体包含mapping类型 - Boolean actualValue = referenceDataTypeStructDelete.getNestedMapping().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete内部部结构体包含mapping类型 getNestedMapping()】方法 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,true, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/TypeConversion/TypeConversionBytesToUintContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/TypeConversion/TypeConversionBytesToUintContractTest.java deleted file mode 100644 index f3785f69c3..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/TypeConversion/TypeConversionBytesToUintContractTest.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.TypeConversion; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.TypeConversionBytesToUintContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:测试不同类型转换(字节转换整型) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class TypeConversionBytesToUintContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "TypeConversionContract.字节转换整型",sourcePrefix = "evm/0.6.12") - public void testTypeConversionContract() { - - TypeConversionBytesToUintContract typeConversionBytesToUintContract = null; - try { - //合约部署 - typeConversionBytesToUintContract = TypeConversionBytesToUintContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = typeConversionBytesToUintContract.getContractAddress(); - TransactionReceipt tx = typeConversionBytesToUintContract.getTransactionReceipt().get(); - collector.logStepPass("typeConversion issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("typeConversion deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - BigInteger expectValue = new BigInteger("1633837924"); - //1、执行字节转换大位整型 bytesToBigUint() - BigInteger actualValue = typeConversionBytesToUintContract.bytesToBigUint().send(); - collector.logStepPass("typeConversion 执行【字节转换大位整型 bytesToBigUint()】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - BigInteger expectValue = new BigInteger("97"); - //2、字节转换相同位数整数 bytesToSameUint() - BigInteger actualValue = typeConversionBytesToUintContract.bytesToSameUint().send(); - collector.logStepPass("typeConversion 执行【字节转换相同位数整数 bytesToSameUint()】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - BigInteger expectValue = new BigInteger("25444"); - //3、字节转换小位整型 bytesToSmallUint() - BigInteger actualValue = typeConversionBytesToUintContract.bytesToSmallUint().send(); - collector.logStepPass("typeConversion 执行【字节转换小位整型 bytesToSmallUint()】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/TypeConversion/TypeConversionContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/TypeConversion/TypeConversionContractTest.java deleted file mode 100644 index 63ad9e8e31..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/TypeConversion/TypeConversionContractTest.java +++ /dev/null @@ -1,144 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.TypeConversion; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_6_12.TypeConversionContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:基本类型之间的转换(隐式/显示) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class TypeConversionContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "TypeConversionContract.基本类型转换",sourcePrefix = "evm/0.6.12") - public void testTypeConversionContract() { - - TypeConversionContract typeConversionContractTest = null; - try { - //合约部署 - typeConversionContractTest = TypeConversionContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = typeConversionContractTest.getContractAddress(); - TransactionReceipt tx = typeConversionContractTest.getTransactionReceipt().get(); - collector.logStepPass("typeConversion issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("typeConversion deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:基本类型隐式转换(运算符操作隐式转换) - try { - BigInteger expectValue = new BigInteger("102"); - //赋值执行sum() - BigInteger actualValue = typeConversionContractTest.sum().send(); - collector.logStepPass("typeConversion 执行【运算符操作隐式转换】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、验证:基本类型隐式转换(赋值操作隐式转换) - try { - BigInteger expectValue = new BigInteger("10"); - //赋值执行conversion() - BigInteger actualValue = typeConversionContractTest.conversion().send(); - collector.logStepPass("typeConversion 执行【赋值操作隐式转换】successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、验证:基本类型显示转换(无符合与有符号转换) - try { - BigInteger expectValue = new BigInteger("1"); - //执行displayConversion() - BigInteger actualValue = typeConversionContractTest.displayConversion().send(); - collector.logStepPass("typeConversion 执行【无符合与有符号显示转换】successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //4、验证:基本类型显示转换(转换成更小的类型,会丢失高位) - try { - BigInteger expectValue1 = new BigInteger("22136"); - String expectValue2 = "0x5678"; - //执行displayConversion1() - Tuple2 tuple2 = typeConversionContractTest.displayConversion1().send(); - BigInteger actualValue1 = tuple2.getValue1(); - String actualValue2 = "0x" + DataChangeUtil.bytesToHex(tuple2.getValue2()); - - collector.logStepPass("typeConversion 执行【大整型类型显示转换小类型】successfully.actualValue1:" + actualValue1 + - ",actualValue2:" + actualValue2); - collector.assertEqual(actualValue1,expectValue1, "checkout execute success."); - collector.assertEqual(actualValue2,expectValue2, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //5、验证:转换成更大的类型(将向左侧添加填充位) - try { - BigInteger expectValue1 = new BigInteger("4660"); - //执行displayConversion2() - Tuple2 tuple2 = typeConversionContractTest.displayConversion2().send(); - BigInteger actualValue1 = tuple2.getValue1(); - - collector.logStepPass("typeConversion 执行【小整型类型显示转换成大类型】 successfully.actualValue1:" + actualValue1); - collector.assertEqual(actualValue1,expectValue1, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //6、验证:转换到更小的字节类型 - try { - String expectValue = "0x12"; - //执行displayConversion3() - byte[] byteValue = typeConversionContractTest.displayConversion3().send(); - String actualValue = "0x" + DataChangeUtil.bytesToHex(byteValue); - - collector.logStepPass("typeConversion 执行【大字节类型显示转换成小类型】successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //7、验证:转换为更大的字节类型 - try { - String expectValue = "0x12340000"; - //执行displayConversion4() - byte[] byteValue = typeConversionContractTest.displayConversion4().send(); - String actualValue = "0x" + DataChangeUtil.bytesToHex(byteValue); - - collector.logStepPass("typeConversion 执行【小字节类型显示转换成大类型】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/structs/StructDataTypeTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/structs/StructDataTypeTest.java deleted file mode 100644 index bf4a2f3d5a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/data_type/structs/StructDataTypeTest.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.test.evm.v0_6_12.data_type.structs; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple6; -import network.platon.contracts.evm.v0_6_12.StructDataType; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:结构体数据类型 - * @description: - * @author: hudenian - * @create: 2020/1/11 16:03 - **/ -public class StructDataTypeTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls",sheetName = "structs", author = "hudenian", showName = "StructDataTypeTest.结构体数据类型",sourcePrefix = "evm/0.6.12") - public void testTypeConversionContract() { - - StructDataType structDataType = null; - try { - //合约部署 - structDataType = StructDataType.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = structDataType.getContractAddress(); - TransactionReceipt tx = structDataType.getTransactionReceipt().get(); - collector.logStepPass("StructDataType issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - //调用合约 - tx = structDataType.run().send(); - collector.logStepPass("StructDataTypeTest run() successful.transactionHash:" + tx.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + tx.getBlockNumber()); - - //查询执行结果 - Tuple6 tuple6 = structDataType.getRunValue().send(); - - collector.assertEqual("2",tuple6.getValue1().toString()); - collector.assertEqual("2",tuple6.getValue2().toString()); - collector.assertEqual("2",tuple6.getValue3().toString()); - collector.assertEqual("0",tuple6.getValue4().toString()); - collector.assertEqual("9",tuple6.getValue5().toString()); - collector.assertEqual("0",tuple6.getValue6().toString()); - - } catch (Exception e) { - collector.logStepFail("StructDataTypeTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/event/EventCallContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/event/EventCallContractTest.java deleted file mode 100644 index 8d85718328..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/event/EventCallContractTest.java +++ /dev/null @@ -1,131 +0,0 @@ -package network.platon.test.evm.v0_6_12.event; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.EventCallContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import com.alibaba.fastjson.JSONObject; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.List; - -/** - * @title 事件验证测试 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class EventCallContractTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "emitEvent", - author = "albedo", showName = "event.EventCallContractTest-event关键字声明事件", sourcePrefix = "evm/0.6.12") - public void testEmitEvent() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.emitEvent().send(); - List emitEventData = eventCallContract.getIncrementEvents(receipt); - String data = emitEventData.get(0).log.getData(); - collector.assertEqual(emitEventData.get(0).who, receipt.getFrom(), "checkout declare event keyword"); - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testEmitEvent failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "indexedEvent", - author = "albedo", showName = "event.EventCallContractTest-indexed关键字定义事件索引", sourcePrefix = "evm") - public void testIndexedEvent() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - TransactionReceipt receipt = eventCallContract.indexedEvent().send(); - List emitEventData = eventCallContract.getDepositEvents(receipt); - String data = emitEventData.get(0).log.getData(); - collector.assertEqual(emitEventData.get(0)._from, receipt.getFrom(), "checkout new contract param"); - collector.assertEqual(emitEventData.get(0)._value.toString(), "12", "checkout indexed keyword"); - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testIndexedEvent failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "anonymousEvent", - author = "albedo", showName = "event.EventCallContractTest-anonymous关键字定义匿名事件", sourcePrefix = "evm") - public void testAnonymousEvent() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - TransactionReceipt receipt = eventCallContract.anonymousEvent().send(); - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(0).getData()), DataChangeUtil.subHexData("1"), "checkout anonymous keyword"); - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testAnonymousEvent failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testEmitEvents", - author = "albedo", showName = "event.EventCallContractTest-函数多事件监听", sourcePrefix = "evm") - public void testEmitEvents() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - TransactionReceipt receipt = eventCallContract.testBool().send(); - System.out.println(JSONObject.toJSONString(receipt.getLogs())); - List bList = eventCallContract.getBoolEventEvents(receipt); - collector.assertEqual(bList.get(0).result ,Boolean.FALSE, "checkout multi bool type event"); - collector.assertEqual(bList.get(1).result ,Boolean.TRUE, "checkout multi bool type event"); - List iList = eventCallContract.getIncrementEvents(receipt); - collector.assertEqual(iList.get(0).who ,receipt.getFrom(), "checkout address type event"); - - List dList = eventCallContract.getDepositEvents(receipt); - collector.assertEqual(dList.get(0)._from ,receipt.getFrom(), "checkout address type event"); - collector.assertEqual(dList.get(0)._value ,new BigInteger("12"), "checkout uint event"); - - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(3).getData()),DataChangeUtil.subHexData("c"), "checkout address type event"); - - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testAnonymousEvent failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testMultiAnonymousEvents", - author = "albedo", showName = "event.EventCallContractTest-函数多匿名事件监听", sourcePrefix = "evm") - public void testMultiAnonymousEvents() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - TransactionReceipt receipt = eventCallContract.testMultiAnonymous().send(); - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(0).getData()),DataChangeUtil.subHexData("c"), "checkout multi anonymous event"); - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(1).getData()),DataChangeUtil.subHexData("d"), "checkout multi anonymous event"); - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(2).getData()),DataChangeUtil.subHexData("e"), "checkout multi anonymous event"); - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testMultiAnonymousEvents failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/event/EventIndexedContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/event/EventIndexedContractTest.java deleted file mode 100644 index 385549fa3a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/event/EventIndexedContractTest.java +++ /dev/null @@ -1,193 +0,0 @@ -package network.platon.test.evm.v0_6_12.event; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.EventIndexedContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import com.alibaba.fastjson.JSONObject; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.List; - -/** - * @title 事件索引测试 - * @description: - * @author: albedo - * @create: 2020/01/07 - */ -public class EventIndexedContractTest extends ContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testIntIndex", - author = "albedo", showName = "event.EventIndexedContractTest-有符号整型索引", sourcePrefix = "evm/0.6.12") - public void testIntIndex() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testMinus(new BigInteger("-12")).send(); - List str=eventCallContract.getMinusEventEvents(receipt); - BigInteger s=str.get(0).minus; - collector.assertEqual(s, new BigInteger("-12"), "checkout string indexed event"); - - receipt = eventCallContract.testMinus(new BigInteger("12")).send(); - str=eventCallContract.getMinusEventEvents(receipt); - s=str.get(0).minus; - collector.assertEqual(s, new BigInteger("12"), "checkout string indexed event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testOneDimensionalArray", - author = "albedo", showName = "event.EventIndexedContractTest-一维数组索引", sourcePrefix = "evm") - public void testOneDimensionalArray() { - try { - prepare(); - EventIndexedContract eventTypeContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventTypeContract.getContractAddress(); - String transactionHash = eventTypeContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventTypeContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventTypeContract.testOneDimensionalArray().send(); - List one = eventTypeContract.getOneDimensionalArrayEventEvents(receipt); - byte[] data = one.get(0).array; - String str=DataChangeUtil.bytesToHex(data); - String except=one.get(0).log.getTopics().get(1); - collector.assertEqual("0x"+str, except, "checkout one dimensional array index event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testOneDimensionalArray failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testTwoDimensionalArray", - author = "albedo", showName = "event.EventIndexedContractTest-二维数组索引", sourcePrefix = "evm") - public void testTwoDimensionalArray() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testTwoDimensionalArray().send(); - try { - eventCallContract.getTwoDimensionalArrayEventEvents(receipt); - } catch (UnsupportedOperationException e) { - collector.assertEqual(e.getCause().getMessage(),"com.alaya.abi.solidity.datatypes.generated.StaticArray2"); - } - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testTwoDimensionalArray failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testStr", - author = "albedo", showName = "event.EventIndexedContractTest-字符串索引", sourcePrefix = "evm") - public void testStr() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testStr().send(); - List str=eventCallContract.getStringEventEvents(receipt); - byte[] s=str.get(0).str; - String strIndexed=DataChangeUtil.bytesToHex(s); - String except=str.get(0).log.getTopics().get(1); - collector.assertEqual("0x"+strIndexed, except, "checkout string indexed event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testEnum", - author = "albedo", showName = "event.EventIndexedContractTest-枚举类型索引", sourcePrefix = "evm") - public void testEnum() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testEnum().send(); - List str=eventCallContract.getEnumEventEvents(receipt); - BigInteger s=str.get(0).choices; - String except=str.get(0).log.getTopics().get(1); - collector.assertEqual(DataChangeUtil.subHexData(s.toString()), DataChangeUtil.subHexData(except), "checkout string indexed event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testComplex", - author = "albedo", showName = "event.EventIndexedContractTest-复杂多索引", sourcePrefix = "evm") - public void testComplex() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testComplex().send(); - List str=eventCallContract.getComplexIndexedEventEvents(receipt); - String strIndex=DataChangeUtil.bytesToHex(str.get(0).str); - String arrayIndex=DataChangeUtil.bytesToHex(str.get(0).array); - String choiceIndex=DataChangeUtil.bytesToHex(str.get(0).choice.toByteArray()); - String exceptStr=str.get(0).log.getTopics().get(3); - String exceptArray=str.get(0).log.getTopics().get(1); - String exceptId=str.get(0).log.getTopics().get(2); - collector.assertEqual("0x"+strIndex, exceptStr, "checkout complex indexes event"); - collector.assertEqual("0x"+arrayIndex, exceptArray, "checkout complex indexes event"); - collector.assertEqual(DataChangeUtil.subHexData(choiceIndex), DataChangeUtil.subHexData(exceptId), "checkout complex indexes event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testComplex failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testAnonymousIndexed", - author = "albedo", showName = "event.EventIndexedContractTest-匿名事件索引数目", sourcePrefix = "evm") - public void testAnonymousIndexed() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testAnonymousIndexed().send(); - System.out.println(JSONObject.toJSONString(receipt.getLogs().get(0).getTopics())); - String u1Topic=receipt.getLogs().get(0).getTopics().get(0); - String u2Topic=receipt.getLogs().get(0).getTopics().get(1); - String u3Topic=receipt.getLogs().get(0).getTopics().get(2); - String u4Topic=receipt.getLogs().get(0).getTopics().get(3); - collector.assertEqual(DataChangeUtil.subHexData(u1Topic), DataChangeUtil.subHexData("1"), "checkout anonymous index.0 event"); - collector.assertEqual(DataChangeUtil.subHexData(u2Topic), DataChangeUtil.subHexData("2"), "checkout anonymous index.1 event"); - collector.assertEqual(DataChangeUtil.subHexData(u3Topic), DataChangeUtil.subHexData("3"), "checkout anonymous index.2 event"); - collector.assertEqual(DataChangeUtil.subHexData(u4Topic), DataChangeUtil.subHexData("4"), "checkout anonymous index.3 event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testAnonymousIndexed failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/event/EventTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/event/EventTypeContractTest.java deleted file mode 100644 index 46e1264a9f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/event/EventTypeContractTest.java +++ /dev/null @@ -1,110 +0,0 @@ -package network.platon.test.evm.v0_6_12.event; - -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.EventTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - -/** - * @title 事件类型测试 - * @description: - * @author: albedo - * @create: 2020/01/06 - */ -public class EventTypeContractTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testOneDimensionalArray", - author = "albedo", showName = "event.EventTypeContractTest-一维数组类型", sourcePrefix = "evm/0.6.12") - public void testOneDimensionalArray() { - try { - prepare(); - EventTypeContract eventTypeContract = EventTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventTypeContract.getContractAddress(); - String transactionHash = eventTypeContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventTypeContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventTypeContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventTypeContract.testOneDimensionalArray().send(); - List one = eventTypeContract.getOneDimensionalArrayEventEvents(receipt); - List data = one.get(0).array; - List except = new ArrayList<>(5); - for (int i = 0; i < 5; i++) { - except.add(new Uint256(new BigInteger(Integer.toString(i)))); - } - collector.assertEqual(data, except, "checkout one dimensional array type declare event"); - } catch (Exception e) { - collector.logStepFail("EventTypeContractTest testOneDimensionalArray failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testTwoDimensionalArray", - author = "albedo", showName = "event.EventTypeContractTest-二维数组类型", sourcePrefix = "evm") - public void testTwoDimensionalArray() { - try { - prepare(); - EventTypeContract eventCallContract = EventTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventTypeContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testTwoDimensionalArray().send(); - try { - eventCallContract.getTwoDimensionalArrayEventEvents(receipt); - } catch (UnsupportedOperationException e) { - collector.assertEqual(e.getCause().getMessage(),"com.alaya.abi.solidity.datatypes.generated.StaticArray2"); - } - } catch (Exception e) { - collector.logStepFail("EventTypeContractTest testTwoDimensionalArray failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testStr", - author = "albedo", showName = "event.EventTypeContractTest-字符串", sourcePrefix = "evm") - public void testStr() { - try { - prepare(); - EventTypeContract eventCallContract = EventTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventTypeContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testStr().send(); - List str = eventCallContract.getStringEventEvents(receipt); - String s = str.get(0).str; - collector.assertEqual(s, "1234567890097865432112345678900987654321123456789009764354666663242444444444475831546856", "checkout string type declare event"); - } catch (Exception e) { - collector.logStepFail("EventTypeContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testEnum", - author = "albedo", showName = "event.EventTypeContractTest-枚举", sourcePrefix = "evm") - public void testEnum() { - try { - prepare(); - EventTypeContract eventCallContract = EventTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventTypeContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testEnum().send(); - List str = eventCallContract.getEnumEventEvents(receipt); - BigInteger s = str.get(0).choices; - collector.assertEqual(s, new BigInteger("0"), "checkout string type declare event"); - } catch (Exception e) { - collector.logStepFail("EventTypeContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/evm_assembly_contract_call/PlatonInnerTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/evm_assembly_contract_call/PlatonInnerTest.java deleted file mode 100644 index 2f53439054..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/evm_assembly_contract_call/PlatonInnerTest.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.test.evm.v0_6_12.evm_assembly_contract_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.PlatonInner; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; -import java.util.Arrays; -import java.util.HashSet; -import java.util.Set; - -/** - * 添加evm合约调用PPOS合约场景 - * @author hudenian - * @dev 2020/02/24 - */ - -public class PlatonInnerTest extends ContractPrepareTest { - - //要调用的ppos合约地址(参考:PlatON内置合约及RPC接口说明) - private String addr; - - //调用ppos合约请求参数进行rlp编码(参考:http://192.168.18.61:8080/browse/PM-613) - private String input; - - //交易码 - private String code; - - private String caseName; - - //查询方法没有回执 - private String[] queryCodeArray = new String[]{"4100","1005","1100","1101","1102","1103","1104","1105","1200","1201","1202","2004", - "2100","2101","2102","2103","2104","2105","2106","3001","5100"}; - - private Set queryCodeSet; - - @Before - public void before() { - this.prepare(); - addr = driverService.param.get("addr"); - input = driverService.param.get("input"); - code = driverService.param.get("code"); - caseName = driverService.param.get("caseName"); - queryCodeSet = new HashSet(Arrays.asList(queryCodeArray)); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "evm_assembly_contract_call.PlatonInnerTest-evm合约调用PPOS合约", sourcePrefix = "evm/0.6.12") - public void platonInner() { - try { - PlatonInner platonInner = PlatonInner.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = platonInner.getContractAddress(); - TransactionReceipt tx = platonInner.getTransactionReceipt().get(); - collector.logStepPass("PlatonInnerTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + platonInner.getTransactionReceipt().get().getGasUsed()); - - tx = platonInner.assemblyCallppos(DataChangeUtil.hexToByteArray(input),addr).send(); - collector.logStepPass("PlatonInnerTest call "+addr+" and code is:"+code+" createRestrictingPlan successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("caseName:+caseName>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"+"code:"+code); - if( !queryCodeSet.contains(code) && (null!=tx.getLogs().get(0).getData() && "".equals(tx.getLogs().get(0).getData()))){ - collector.logStepPass("str is >>>"+DataChangeUtil.decodeSystemContractRlp(tx.getLogs().get(0).getData(), chainId)); - } - - - //获取交易回执 - byte[] resultByte = platonInner.getReturnValue().send(); - collector.logStepPass("call "+addr+" and getReturnValue is:"+new String(resultByte)); - - } catch (Exception e) { - collector.logStepFail("PlatonInnerTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/evm_assembly_contract_call/PrecompiledTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/evm_assembly_contract_call/PrecompiledTest.java deleted file mode 100644 index d656189185..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/evm_assembly_contract_call/PrecompiledTest.java +++ /dev/null @@ -1,128 +0,0 @@ -package network.platon.test.evm.v0_6_12.evm_assembly_contract_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.Precompiled; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.List; - -/** - * 添加evm合约调用系统合约场景 - * - * @author hudenian - * @dev 2020/02/19 - */ - -public class PrecompiledTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "evm_assembly_contract_call.AssemblyAddTest-evm合约调用系统合约", sourcePrefix = "evm/0.6.12") - public void precompiledTest() { - try { - Precompiled precompiled = Precompiled.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = precompiled.getContractAddress(); - TransactionReceipt tx = precompiled.getTransactionReceipt().get(); - collector.logStepPass("PrecompiledTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + precompiled.getTransactionReceipt().get().getGasUsed()); - - byte[] bytes = "hu".getBytes(); - - - //验证ecrecover函数 -// String ecrecover = "lax132dnv620rmht2qxgfgvmkdqn0vz3vtk9lecarh"; - String ecrecover = "atx132dnv620rmht2qxgfgvmkdqn0vz3vtk9rvqqpa"; - - String hash = "e281eaa11e6e37e6f53aade5d6c5b7201ef1c66162ec42ccc3215a0c4349350d"; - byte[] a = DataChangeUtil.hexToByteArray(hash); - - BigInteger v = new BigInteger("27"); - - String R = "55b60cadd4b4a3ea4fc368ef338f97e12e7328dd6e9e969a3fd8e5c10be855fe"; - byte[] b = DataChangeUtil.hexToByteArray(R); - - String S = "2b42cee2585a16ea537efcb88009c1aeac693c28b59aa6bbff0baf22730338f6"; - byte[] c = DataChangeUtil.hexToByteArray(S); - - //Address 0x01: ecrecover(hash, v, r, s) - String resultF = precompiled.callEcrecover(a, v, b, c).send(); - collector.logStepPass("ecrecover函数返回值:" + resultF); - collector.assertEqual(ecrecover, resultF.toLowerCase()); - - //Address 0x02: sha256(data) - byte[] resultD = precompiled.callSha256(bytes).send(); - String hexValue2 = DataChangeUtil.bytesToHex(resultD); - collector.logStepPass("Sha256函数返回值:" + hexValue2); - - //Address 0x03: ripemd160(data) - byte[] resultE = precompiled.callRipemd160(bytes).send(); - String hexValue3 = DataChangeUtil.bytesToHex(resultE); - collector.logStepPass("ripemd160函数返回值:" + hexValue3); -// collector.assertEqual(ripemd160 ,hexValue3); - - //0x04 dataCopy() test pass - tx = precompiled.callDatacopy(bytes).send(); - collector.logStepPass("PrecompiledTest callDatacopy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - byte[] callDatacopyValueByte = precompiled.getCallDatacopyValue().send(); - collector.logStepPass("PrecompiledTest 0x04 result is:" + new String(callDatacopyValueByte)); - - //0x05 callBigModExp() test pass - byte[] base = DataChangeUtil.hexToByteArray("0000000000000000000000000000000462e4ded88953a39ce849a8a7fa163fa9"); - byte[] exponent = DataChangeUtil.hexToByteArray("1f4a3123ff1223a1b0d040057af8a9fe70baa9258e0b959273ffc5718c6d4cc7"); - byte[] modulus = DataChangeUtil.hexToByteArray("00000000000000000000000000077d29a9c710b7e616683f194f18c43b43b869"); - - tx = precompiled.callBigModExp(base, exponent, modulus).send(); - collector.logStepPass("PrecompiledTest callBigModExp successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - byte[] callBigModExpValueByte = precompiled.getCallBigModExpValue().send(); - collector.logStepPass("PrecompiledTest 0x05 result is:" + DataChangeUtil.bytesToHex(callBigModExpValueByte)); - - - //Address 0x06: bn256Add(ax, ay, bx, by)(test pass) - //输入参数规则:y^2 = x^3 + 3 - tx = precompiled.callBn256Add(new BigInteger("1"), new BigInteger("2"), new BigInteger("1"), new BigInteger("2")).send(); - collector.logStepPass("PrecompiledTest callBn256Add successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - List list = precompiled.getCallBn256AddValues().send(); - for (int i = 0; i < list.size(); i++) { - collector.logStepPass("PrecompiledTest 0x06 result " + i + " is:" + list.get(i).toString()); - } - - //Address 0x07: bn256ScalarMul(x, y, scalar) - byte[] pointXByte = DataChangeUtil.hexToByteArray("2bd3e6d0f3b142924f5ca7b49ce5b9d54c4703d7ae5648e61d02268b1a0a9fb7"); - byte[] pointYByte = DataChangeUtil.hexToByteArray("21611ce0a6af85915e2f1d70300909ce2e49dfad4a4619c8390cae66cefdb204"); - byte[] scalarByte = DataChangeUtil.hexToByteArray("00000000000000000000000000000000000000000000000011138ce750fa15c2"); - tx = precompiled.callBn256ScalarMul(pointXByte, pointYByte, scalarByte).send(); - collector.logStepPass("PrecompiledTest callBigModExp successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - List callBn256ScalarMulList = precompiled.getCallBn256ScalarMulValues().send(); - for (int i = 0; i < callBn256ScalarMulList.size(); i++) { - collector.logStepPass("PrecompiledTest call 0x07 result " + i + " is:" + DataChangeUtil.bytesToHex((byte[]) callBn256ScalarMulList.get(i))); - - } - - //Address 0x08:callBn256Pairing - String hexStr = "1c76476f4def4bb94541d57ebba1193381ffa7aa76ada664dd31c16024c43f593034dd2920f673e204fee2811c678745fc819b55d3e9d294e45c9b03a76aef41209dd15ebff5d46c4bd888e51a93cf99a7329636c63514396b4a452003a35bf704bf11ca01483bfa8b34b43561848d28905960114c8ac04049af4b6315a416782bb8324af6cfc93537a2ad1a445cfd0ca2a71acd7ac41fadbf933c2a51be344d120a2a4cf30c1bf9845f20c6fe39e07ea2cce61f0c9bb048165fe5e4de877550111e129f1cf1097710d41c4ac70fcdfa5ba2023c6ff1cbeac322de49d1b6df7c2032c61a830e3c17286de9462bf242fca2883585b93870a73853face6a6bf411198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c21800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa"; - tx = precompiled.callBn256Pairing(DataChangeUtil.hexToByteArray(hexStr)).send(); - collector.logStepPass("PrecompiledTest callBn256Pairing successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - byte[] callBn256PairingValue = precompiled.getCallBn256PairingValue().send(); - collector.logStepPass("PrecompiledTest 0x08 result is:" + DataChangeUtil.bytesToHex(callBn256PairingValue)); - - - } catch (Exception e) { - collector.logStepFail("PrecompiledTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exceptionhandle/AssertHandleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exceptionhandle/AssertHandleTest.java deleted file mode 100644 index 2bec82922f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exceptionhandle/AssertHandleTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.evm.v0_6_12.exceptionhandle; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import network.platon.contracts.evm.v0_6_12.AssertHandle; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title assert(bool condition)函数测试 - * 如果条件不满足,则使当前交易没有效果 ,gas正常消耗,用于检查内部错误 - * 1.数组越界访问产生生异常验证,如i >= x.length 或 i < 0时访问x[i]————(编译异常) - * 2.定长bytesN数组越界访问产生异常验证————(编译异常) - * 3.被除数为0或取模运算产生异常验证————(编译异常) - * 4.对一个二进制移动一个负的值产生异常验证————(编译异常) - * 5.整数显式转换为枚举,将过大值,负值转为枚举类型则抛出异常 - * 6.调用内部函数类型的零初始化变量验证————(编译异常) - * 7.用assert的参数为false产生异常验证 - * @description: - * @author: albedo - * @create: 2019/12/31 - */ -public class AssertHandleTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "intChangeException", - author = "albedo", showName = "exceptionhandle.AssertHandle-整数显式转换为枚举", sourcePrefix = "evm/0.6.12") - public void testIntChangeException() { - try { - prepare(); - AssertHandle handle = AssertHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("AssertHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = handle.intChangeException(new BigInteger("2")).send(); - collector.logStepPass("checkout integer contains enums,transactionHah="+receipt.getTransactionHash()); - try { - handle.intChangeException(new BigInteger("5")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout integer large then enums:" + e.getMessage()); - } - try { - handle.intChangeException(new BigInteger("-1")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout integer less then enums:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("AssertHandleTest testIntChangeException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "paramException", - author = "albedo", showName = "exceptionhandle.AssertHandle-调用assert的参数为false", sourcePrefix = "evm") - public void testParamException() { - try { - prepare(); - AssertHandle handle = AssertHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("AssertHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = handle.paramException(new BigInteger("5")).send(); - collector.logStepPass("checkout normal,transactionHash="+receipt.getTransactionHash()); - try { - handle.paramException(new BigInteger("11")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout assert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("AssertHandleTest testParamException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exceptionhandle/RequireMessageHandleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exceptionhandle/RequireMessageHandleTest.java deleted file mode 100644 index 949a3395fd..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exceptionhandle/RequireMessageHandleTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.evm.v0_6_12.exceptionhandle; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import network.platon.contracts.evm.v0_6_12.RequireMessageHandle; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title require(bool condition, string message)函数(该函数可以自定义message信息)测试 - * @description: - * @author: albedo - * @create: 2019/12/31 - */ -public class RequireMessageHandleTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "albedo", showName = "exceptionhandle.RequireMessageHandle-require(bool condition, string message)函数", sourcePrefix = "evm/0.6.12") - public void testParamException() { - try { - prepare(); - RequireMessageHandle handle = RequireMessageHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RequireMessageHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = handle.paramException(new BigInteger("5")).send(); - collector.logStepPass("checkout require normal,transactionHash="+receipt.getTransactionHash()); - try { - handle.paramException(new BigInteger("11")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout require throw exception:"+e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RequireMessageHandleTest testParamException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exceptionhandle/RevertHandleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exceptionhandle/RevertHandleTest.java deleted file mode 100644 index 243fbe6928..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exceptionhandle/RevertHandleTest.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.test.evm.v0_6_12.exceptionhandle; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import network.platon.contracts.evm.v0_6_12.RevertHandle; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title revert函数测试 - * 1.revert()函数————终止运行并撤销状态更改————验证 - * 2.revert(string reason)函数————终止运行并撤销状态更改,并提供一个解释性的字符串————验证 - * @description: - * @author: albedo - * @create: 2019/12/31 - */ -public class RevertHandleTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "revertCheck", - author = "albedo", showName = "exceptionhandle.RevertHandle-revert()函数", sourcePrefix = "evm/0.6.12") - public void testRevertCheck() { - try { - prepare(); - RevertHandle handle = RevertHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RevertHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt =handle.revertCheck(new BigInteger("5")).send(); - collector.logStepPass("checkout revert normal,transactionHah="+receipt.getTransactionHash()); - try { - handle.revertCheck(new BigInteger("11")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout revert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RevertHandleTest testRevertCheck failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "revertReasonCheck", - author = "albedo", showName = "exceptionhandle.RevertHandle-revert(string reason)函数", sourcePrefix = "evm") - public void testParamException() { - try { - prepare(); - RevertHandle handle = RevertHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RevertHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt =handle.revertReasonCheck(new BigInteger("5")).send(); - collector.logStepPass("checkout revert normal,transactionHah="+receipt.getTransactionHash()); - try { - handle.revertReasonCheck(new BigInteger("11")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout revert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RevertHandleTest testParamException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exec_efficiency/BubbleSortTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exec_efficiency/BubbleSortTest.java deleted file mode 100644 index 6ba9de20a0..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exec_efficiency/BubbleSortTest.java +++ /dev/null @@ -1,86 +0,0 @@ -package network.platon.test.evm.v0_6_12.exec_efficiency; - - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.BubbleSort; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - - -/** - * @title 冒泡排序 - * @description: - * @author: liweic - * @create: 2020/03/02 - **/ -public class BubbleSortTest extends ContractPrepareTest { - - private BigInteger numberOfCalls; - private String contractAddress; - - @Before - public void before() { - numberOfCalls = new BigInteger(driverService.param.get("numberOfCalls")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "exec_efficiency.BubbleSortTest-冒泡排序", sourcePrefix = "evm/0.6.12") - public void test() { - prepare(); - try { - - Integer numberOfCalls = Integer.valueOf(driverService.param.get("numberOfCalls")); - - BubbleSort bubblesort = BubbleSort.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = bubblesort.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + bubblesort.getTransactionReceipt().get().getGasUsed()); - - List array = new ArrayList<>(numberOfCalls); - - int min = -1000, max = 2000; - for (int i = 0; i < numberOfCalls; i++) { - BigInteger a = BigInteger.valueOf(min + (int) (Math.random() * 3001)); - array.add(a); - } - - collector.logStepPass("before sort:" + array.toString()); - BigInteger n = BigInteger.valueOf(array.size()); - TransactionReceipt transactionReceipt = bubblesort.BubbleArrays(array, n, new BigInteger("1000")).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - List resultarr = bubblesort.get_arr().send(); - collector.logStepPass("after sort:" + resultarr); - - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - - /** - * int 数组转 BigInteger - * @param intArray - * @return - */ - private List changeIntToBigInteger(Integer[] intArray) { - List bigIntegerList = new ArrayList<>(); - for (int i = 0; i array = new ArrayList<>(numberOfCalls); - - int min = -1000, max = 2000; - - for (int i = 0; i < numberOfCalls; i++) { - BigInteger a = BigInteger.valueOf(min + (int) (Math.random() * 3001)); - array.add(a); - } - -// Integer[] intArray = new Integer[]{131, 662, 585, 1946, 640, 1339, 1099, 1713, -588, -683, 1452, 56, 350, 1984, 1616, 382, 82, 427, -641, 564, -752, 598, 753, -912, -414, 930, -514, 1005, 793, -872, 964, 188, 1468, -266, 1513, 337, -443, 1712, -310, 1133, 723, -589, 748, 1036, -115, -916, -342, 1430, -133, -572, -137, -939, -415, 610, 937, 1117, -420, 1768, 780, 711, -82, 111, 1725, 172, 1514, -530, 1000, 1104, 1830, -523, -513, -27, 1647, 470, 1425, 835, 186, 1729, -95, -309, 1265, 1754, 452, 38, 472, -10, -238, -721, 435, 700, 904, -126, -802, 1579, 720, 412, -416, -845, 60, 213, 1979, 1154, 637, 531, -475, 1578, -141, 1026, 1032, 623, -158, -113, 41, 316, 47, 720, -427, 255, 547, 199, 888, 1865, 827, 473, 321, 209, -699, 1327, 812, 1645, 289, 288, -885, 1409, 165, 97, -52, 1657, -324, 301, 1375, 1486, -984, -839, -304, 1066, 279, 601, 1850, 217, 1158, 1527, 931, 1550, 484, -427, 946, -324, 145, 150, -845, 985, -700, 523, -452, 33, -495, -279, -47, 788, 1370, 1093, -876, 1707, 759, 538, 842, 1994, 1291, 746, 1542, 1327, 1912, 1088, 385, 1892, 769, -688, 873, -313, 346, 1750, 163, 797, 1909, -639, -869, 1661, 771, 1730, 1973, -730, 1669, 1929, 698, 754, -362, 129, 339, -119, 1299, 837, 895, 1770, -776, 777, 1220, 1311, 278, -364, -42, 761, 256, 219, -518, 401, -942, 924, -628, 1242, 781, 1996, 1534, 444, -340, -451, 1309, -667, -316, -911, 185, 807, -100, -26, -357, 315, 1017, -801, 1630, 703, 1807, 793, -218, 769, 1070, 202, 1119, -305, 1513, 1180, 287, 266, 844, 954, -296, -753, 661, 766, -992, -700, 344, 1322, -852, 1397, -873, 1226, 234, 915, 862, 66, -142, 1381, 1596, 563, 65, 1214, 167, -26, 451, 1786, -722, 1871, 2, -271, -726, 377, 1295, 1540, -166, -925, 477, 1316, 1201, -64, 154, 830, -739, 1929, 1814, 42, 887, 337, 1769, 765, 324, 1250, 1836, -734, -800, -722, 985, 1361, -205, 1189, 1112, -140, -324, 886, 1803, -840, -439, 22, 569, 257, 1436, 449, 422, 1586, 1383, -264, 950, 1796, -572, 113, -834, 822, -144, -585, -656, 1550, 932, 1900, 1872, 821, 864, 200, -220, 589, 1966, 222, -889, -249, 561, -691, 1603, -625, 41, -251, 348, 1956}; -// -// List array = changeIntToBigInteger(intArray); - - - BigInteger n = BigInteger.valueOf(array.size()); -// BigInteger n = new BigInteger("370"); - TransactionReceipt transactionReceipt = insertSort.OuputArrays(array, n, new BigInteger("1000")).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - List resultarr = insertSort.get_arr().send(); - collector.logStepPass("resultarr:" + resultarr); - - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - - /** - * int 数组转 BigInteger - * @param intArray - * @return - */ - private List changeIntToBigInteger(Integer[] intArray) { - List bigIntegerList = new ArrayList<>(); - for (int i = 0; i { -// try { -// semaphore.acquire(); -// credentials = Credentials.create(jsonArray.getJSONObject(finalI).getString("private_key")); -// transactionManager = new RawTransactionManager(web3j, credentials, chainId); -// -// TransactionReceipt transactionReceipt = SimpleStorage.load(contractAddress, web3j, transactionManager, provider, chainId).hello().send(); -// collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash() -// + ", currentBlockNumber:" + transactionReceipt.getBlockNumber()); -// -// byte[] hash = SimpleStorage.load(contractAddress, web3j, transactionManager, provider, chainId).hash().send(); -// collector.logStepPass("contract load successful, current time:" + finalI + ", blockHash:" + DataChangeUtil.bytesToHex(hash)); -// } catch (Exception e) { -// //e.printStackTrace(); -// //collector.logStepFail("call fail.", e.toString()); -// } finally { -// semaphore.release(); -// countDownLatch.countDown(); -// } -// }); -// -// } -// countDownLatch.await(); -// executorService.shutdown(); -// -// } catch (Exception e) { -// collector.logStepFail("The contract fail.", e.toString()); -// } -// } -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exec_efficiency/SpaceComplexityTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exec_efficiency/SpaceComplexityTest.java deleted file mode 100644 index 975d4bcd79..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/exec_efficiency/SpaceComplexityTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.evm.v0_6_12.exec_efficiency; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.SpaceComplexity; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title SpaceComplexityTest - * @description 空间复杂度场景测试 - * @author qcxiao - * @updateTime 2019/12/28 14:39 - */ -public class SpaceComplexityTest extends ContractPrepareTest { - private BigInteger numberOfCalls; - private String contractAddress; - - @Before - public void before() { - numberOfCalls = new BigInteger(driverService.param.get("numberOfCalls")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "exec_efficiency.SpaceComplexityTest-空间复杂度", sourcePrefix = "evm/0.6.12") - public void test() { - prepare(); - try { - SpaceComplexity spaceComplexity = SpaceComplexity.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = spaceComplexity.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + spaceComplexity.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt transactionReceipt = SpaceComplexity.load(contractAddress, web3j, transactionManager, provider, chainId) - .testStorage(numberOfCalls).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - String name = SpaceComplexity.load(contractAddress, web3j, transactionManager, provider, chainId).name().send(); - - if (numberOfCalls.mod(BigInteger.valueOf(2)) == BigInteger.ZERO) { - collector.assertEqual(name, "QCXIAO"); - } else { - collector.assertEqual(name, "qcxiao"); - } - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/Modifier/InheritanceModifierTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/Modifier/InheritanceModifierTest.java deleted file mode 100644 index 202704d2b0..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/Modifier/InheritanceModifierTest.java +++ /dev/null @@ -1,56 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.Modifier; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.InheritanceModifier; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - *1.验证单一修饰器 - *2.验证特殊_的用法,符合函数修饰器定义的条件,才可以执行函数体内容 - *3.验证修饰器可以接收参数 - *4.验证合约继承情况下的修饰器的使用 - * @author liweic - * @dev 2020/01/02 20:50 - */ - -public class InheritanceModifierTest extends ContractPrepareTest { - private String modifiertest; - - @Before - public void before() { - this.prepare(); - modifiertest = driverService.param.get("modifiertest"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.InheritanceModifierTest-单修饰器函数测试", sourcePrefix = "evm/0.6.12") - public void inheritancemodifier() { - try { - InheritanceModifier inheritanceModifier = InheritanceModifier.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = inheritanceModifier.getContractAddress(); - TransactionReceipt tx = inheritanceModifier.getTransactionReceipt().get(); - collector.logStepPass("InheritanceModifier deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("InheritanceModifier deploy gasUsed:" + inheritanceModifier.getTransactionReceipt().get().getGasUsed()); - - //验证单修饰器函数调用 - BigInteger result = inheritanceModifier.getA().send(); - collector.logStepPass("InheritanceModifier函数返回值:" + result); - collector.assertEqual(modifiertest ,result.toString()); - - - } catch (Exception e) { - collector.logStepFail("InheritanceModifierContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/Modifier/ModifiersTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/Modifier/ModifiersTest.java deleted file mode 100644 index 3d885a9623..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/Modifier/ModifiersTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.Modifier; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.Modifiers; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - - -/** - * @title 验证多修饰器 - * @description: - * @author: liweic - * @create: 2020/01/02 20:01 - **/ - -public class ModifiersTest extends ContractPrepareTest { - - private String modifierstest; - - @Before - public void before() { - this.prepare(); - modifierstest = driverService.param.get("modifierstest"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.ModifiersTest-多修饰器函数测试", sourcePrefix = "evm/0.6.12") - public void modifiers() { - try { - Modifiers modifiers = Modifiers.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = modifiers.getContractAddress(); - TransactionReceipt tx = modifiers.getTransactionReceipt().get(); - collector.logStepPass("modifiers deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("modifiers deploy gasUsed:" + modifiers.getTransactionReceipt().get().getGasUsed()); - - //验证多修饰器函数调用 - TransactionReceipt result = modifiers.test1().send(); - collector.logStepPass("交易hash:" + result.getTransactionHash()); - - BigInteger a = modifiers.test2().send(); - collector.logStepPass("modifiers函数返回值:" + a); - collector.assertEqual(modifierstest ,a.toString()); - - - } catch (Exception e) { - collector.logStepFail("ModifiersContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/assembly/AssemblyReturnsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/assembly/AssemblyReturnsTest.java deleted file mode 100644 index 5bd9bba1f1..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/assembly/AssemblyReturnsTest.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.assembly; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple5; -import network.platon.contracts.evm.v0_6_12.AssemblyReturns; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 验证内联汇编关键字assembly,汇编赋值并返回多类型参数 - * @description: - * @author: liweic - * @create: 2020/01/07 19:01 - **/ - -public class AssemblyReturnsTest extends ContractPrepareTest { - private String B; - private String C; - - - @Before - public void before() { - this.prepare(); - B = driverService.param.get("B"); - C = driverService.param.get("C"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.AssemblyReturnsTest-AssemblyReturns测试", sourcePrefix = "evm/0.6.12") - public void Assemblyreturns() { - try { - AssemblyReturns assemblyreturns = AssemblyReturns.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = assemblyreturns.getContractAddress(); - TransactionReceipt tx = assemblyreturns.getTransactionReceipt().get(); - collector.logStepPass("AssemblyReturns deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("AssemblyReturns deploy gasUsed:" + assemblyreturns.getTransactionReceipt().get().getGasUsed()); - - //验证AssemblyReturns - Tuple5 result = assemblyreturns.f().send(); - - collector.logStepPass("Assemblyreturns第一个返回值:" + result.getValue1()); - collector.assertEqual(new BigInteger("2") ,result.getValue1()); - - byte[] value2 = (byte[])result.getValue2(); - String b = DataChangeUtil.bytesToHex(value2); - collector.logStepPass("Assemblyreturns第二个返回值:" + b); - collector.assertEqual(B ,b); - - byte[] value3 = (byte[])result.getValue3(); - String c = DataChangeUtil.bytesToHex(value3); - collector.logStepPass("Assemblyreturns第三个返回值:" + c); - collector.assertEqual(C ,c); - - collector.logStepPass("Assemblyreturns第四个返回值:" + result.getValue4()); - collector.assertEqual(true ,result.getValue4()); - - collector.logStepPass("Assemblyreturns第五个返回值:" + result.getValue5()); -// collector.assertEqual("lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2" ,result.getValue5().toString()); - collector.assertEqual("atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq" ,result.getValue5().toString()); - - } catch (Exception e) { - collector.logStepFail("AssemblyReturnsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/assembly/SumAssemblyTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/assembly/SumAssemblyTest.java deleted file mode 100644 index 3c3a8c4b99..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/assembly/SumAssemblyTest.java +++ /dev/null @@ -1,57 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.assembly; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.SumAssembly; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - 1.验证内联汇编在库中的使用 - 2.验证汇编的操作码add,mul等 - * @author liweic - * @dev 2020/01/08 14:30 - */ - -public class SumAssemblyTest extends ContractPrepareTest { - private String sum; - - - @Before - public void before() { - this.prepare(); - sum = driverService.param.get("sum"); - - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.SumAssemblyTest-汇编操作指令测试", sourcePrefix = "evm/0.6.12") - public void Sumassembly() { - try { - SumAssembly sumassembly = SumAssembly.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = sumassembly.getContractAddress(); - TransactionReceipt tx = sumassembly.getTransactionReceipt().get(); - collector.logStepPass("SumAssembly deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("SumAssembly deploy gasUsed:" + sumassembly.getTransactionReceipt().get().getGasUsed()); - - //验证内联汇编操作指令 - BigInteger result = sumassembly.sum().send(); - - collector.logStepPass("SumAssembly返回值:" + result); - collector.assertEqual(sum ,result.toString()); - - - } catch (Exception e) { - collector.logStepFail("SumAssemblyContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/contractRelatedAndFallback/FallbackTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/contractRelatedAndFallback/FallbackTest.java deleted file mode 100644 index 188385f011..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/contractRelatedAndFallback/FallbackTest.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.contractRelatedAndFallback; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.FallBack; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - - -/** - 1.验证合约关键字this,表示当前合约,可以显示的转换为Address - 2.验证Fallback函数,调用了未命名的函数等方式 - * @author liweic - * @dev 2020/01/02 18:00 - */ - -public class FallbackTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.FallbackTest-this和回退函数测试", sourcePrefix = "evm/0.6.12") - public void fallback() { - try { - FallBack fallback = FallBack.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = fallback.getContractAddress(); - TransactionReceipt tx = fallback.getTransactionReceipt().get(); - collector.logStepPass("FallBack deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("FallBack deploy gasUsed:" + fallback.getTransactionReceipt().get().getGasUsed()); - - //验证this和回退函数 - BigInteger a = fallback.getA().send(); - collector.logStepPass("回退函数调用前a的值:" + a); - - TransactionReceipt functionnotexist = fallback.CallFunctionNotExist().send(); - collector.logStepPass("打印fallback交易hash:" + functionnotexist.getTransactionHash()); - - BigInteger falla = fallback.getA().send(); - collector.logStepPass("回退函数调用后a的值:" + falla); - collector.assertEqual(new BigInteger("100"),falla); - - } catch (Exception e) { - collector.logStepFail("FallbackContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/delete/DeleteDemoTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/delete/DeleteDemoTest.java deleted file mode 100644 index 52b4d51759..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/delete/DeleteDemoTest.java +++ /dev/null @@ -1,113 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.delete; - -import com.alaya.bech32.Bech32; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_6_12.DeleteDemo; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * 验证delete关键字,验证各种类型的delete,包括bool,uint,address,bytes,string,enum - * @author liweic - * @dev 2020/01/09 16:10 - */ - -public class DeleteDemoTest extends ContractPrepareTest { - - private String i; - private String addr; - - @Before - public void before() { - this.prepare(); - i = driverService.param.get("i"); - addr = driverService.param.get("addr"); - - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.DeleteDemoTest-delete操作测试", sourcePrefix = "evm/0.6.12") - public void Deletedemo() { - try { - DeleteDemo deletedemo = DeleteDemo.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = deletedemo.getContractAddress(); - TransactionReceipt tx = deletedemo.getTransactionReceipt().get(); - collector.logStepPass("DeleteDemo deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("DeleteDemo deploy gasUsed:" + deletedemo.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt result = deletedemo.deleteAttr().send(); - collector.logStepPass("打印result交易Hash:" + result.getTransactionHash()); - - //验证delete bool - boolean delb = deletedemo.getbool().send(); - collector.logStepPass("delete bool返回值:" + delb); - collector.assertEqual(false ,delb); - - //验证delete uint - BigInteger deli = deletedemo.getunit().send(); - collector.logStepPass("delete uint返回值:" + deli); - collector.assertEqual(i ,deli.toString()); - - //验证delete addr - String deladdr = deletedemo.getaddress().send(); - collector.logStepPass("delete addr返回值:" + deladdr); - addr = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(), addr); - collector.assertEqual(addr ,deladdr); - - //delete bytes - byte[] delbytes = deletedemo.getbytes().send(); - String a = DataChangeUtil.bytesToHex(delbytes); - collector.logStepPass("delete bytes返回值:" + a); - collector.assertEqual("" ,a); - - //delete str - String delstr = deletedemo.getstr().send(); - collector.logStepPass("delete str返回值:" + delstr); - collector.assertEqual("" ,delstr); - - //delete enum - BigInteger delenum = deletedemo.getenum().send(); - collector.logStepPass("delete enum返回值:" + delenum); - collector.assertEqual("0" ,delenum.toString()); - - //delete dynamicarray - BigInteger deldynamic = deletedemo.delDynamicArray().send(); - collector.logStepPass("delete dynamicarray返回值:" + deldynamic); - collector.assertEqual("0" ,delenum.toString()); - - //delete struct - TransactionReceipt st = deletedemo.delStruct(new BigInteger("1")).send(); - - Tuple2 delstruct = deletedemo.getstruct().send(); - collector.logStepPass("struct执行delete后第一个值:" + delstruct.getValue1()); - collector.assertEqual("0" ,delstruct.getValue1().toString()); - collector.logStepPass("struct执行delete后第二个值:" + delstruct.getValue2()); - collector.assertEqual("" ,delstruct.getValue2().toString()); - - //delete struct mapping - TransactionReceipt sta = deletedemo.delMapping(new BigInteger("1")).send(); - - Tuple2 delstructmapping = deletedemo.getdelMapping().send(); - collector.logStepPass("struct执行delete后mapping值:" + delstructmapping.getValue1()); - collector.assertEqual("2000" ,delstructmapping.getValue1().toString()); - - collector.logStepPass("struct执行delete后非mapping值:" + delstructmapping.getValue2()); - collector.assertEqual("0" ,delstructmapping.getValue2().toString()); - - - } catch (Exception e) { - collector.logStepFail("DeleteDemoContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/GetterTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/GetterTest.java deleted file mode 100644 index 8ad45f4e9c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/GetterTest.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.functionVisibilityAndDecarations; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.Getter; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import com.alaya.tuples.generated.Tuple2; - -import java.math.BigInteger; - - -/** - * @title 验证getter函数,状态变量所创建的访问器函数,与变量同名。以internal访问时,按状态变量的方式使用,若以external的方式访问时,则需要通过访问器函数 - * @description: - * @author: liweic - * @create: 2020/01/02 15:01 - **/ - -public class GetterTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.GetterTest-getter函数测试", sourcePrefix = "evm/0.6.12") - public void getter() { - try { - Getter getter = Getter.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = getter.getContractAddress(); - TransactionReceipt tx = getter.getTransactionReceipt().get(); - collector.logStepPass("getter deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("getter deploy gasUsed:" + getter.getTransactionReceipt().get().getGasUsed()); - - //验证编译器创建的getter函数 - BigInteger data = getter.data().send(); - collector.logStepPass("getter函数返回值:" + data); - collector.assertEqual(new BigInteger("10"),data); - - Tuple2 data2 = getter.f().send(); - //以internal访问时,按状态变量的方式使用 - collector.logStepPass("interal访问data的返回值:" + data2.getValue1()); - collector.assertEqual(new BigInteger("10"),data2.getValue1()); - //以external的方式访问时,则需要通过访问器函数 - collector.logStepPass("external访问data的返回值:" + data2.getValue2()); - collector.assertEqual(new BigInteger("10"),data2.getValue2()); - - - } catch (Exception e) { - collector.logStepFail("GetterContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/InterTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/InterTest.java deleted file mode 100644 index f531395964..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/InterTest.java +++ /dev/null @@ -1,53 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.functionVisibilityAndDecarations; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.Inter; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 验证internal在继承合约里的调用 - * @description: - * @author: liweic - * @create: 2020/01/02 16:01 - **/ - -public class InterTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.InterTest-函数可见性继承合约调用内部方法测试", sourcePrefix = "evm/0.6.12") - public void inter() { - try { - Inter intercall = Inter.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = intercall.getContractAddress(); - TransactionReceipt tx = intercall.getTransactionReceipt().get(); - collector.logStepPass("Inter deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("Inter deploy gasUsed:" + intercall.getTransactionReceipt().get().getGasUsed()); - - //验证继承合约可以调用父合约的内部方法 - BigInteger interdata = intercall.g().send(); - collector.logStepPass("public可见函数返回值:" + interdata); - collector.assertEqual(new BigInteger("3"),interdata); - - } catch (Exception e) { - collector.logStepFail("InterContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/PayableTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/PayableTest.java deleted file mode 100644 index e9dced93c0..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/PayableTest.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.functionVisibilityAndDecarations; - -import com.alaya.bech32.Bech32; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.Payable; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 验证Payable声明 - * @description: - * @author: liweic - * @create: 2020/01/02 16:01 - **/ - -public class PayableTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.PayableTest-函数声明方式Payable测试", sourcePrefix = "evm/0.6.12") - public void payable() { - try { - Payable payable = Payable.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = payable.getContractAddress(); - TransactionReceipt tx = payable.getTransactionReceipt().get(); - collector.logStepPass("paybale deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("paybale deploy gasUsed:" + payable.getTransactionReceipt().get().getGasUsed()); - - //验证payable声明 - - String toAdddress = "0x8a9B36694F1eeeb500c84A19bB34137B05162EC4"; - toAdddress = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(), toAdddress); - - BigInteger payablepremoney = payable.getBalances(toAdddress).send(); - collector.logStepPass("转账前余额:" + payablepremoney); - TransactionReceipt result = payable.transfer(toAdddress, new BigInteger("100")).send(); - BigInteger payableaftermoney = payable.getBalances(toAdddress).send(); - collector.logStepPass("转账后余额:" + payableaftermoney); - int a = Integer.valueOf(payableaftermoney.toString()); - int b = Integer.valueOf(payablepremoney.toString()); - int payablecount = a - b; - collector.assertEqual(100,payablecount); - - - } catch (Exception e) { - collector.logStepFail("PayableContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/SelectorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/SelectorTest.java deleted file mode 100644 index 31cac45da2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/SelectorTest.java +++ /dev/null @@ -1,51 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.functionVisibilityAndDecarations; - - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.Selector; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - - -/** - * 验证public (或 external) 函数有一个特殊的成员selector, 它对应一个ABI 函数选择器. - * @author liweic - * @dev 2020/01/11 20:30 - */ - -public class SelectorTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.SelectorTest-Selector测试", sourcePrefix = "evm/0.6.12") - public void selector() { - try { - Selector selector = Selector.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = selector.getContractAddress(); - TransactionReceipt tx = selector.getTransactionReceipt().get(); - collector.logStepPass("Selector deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("Selector deploy gasUsed:" + selector.getTransactionReceipt().get().getGasUsed()); - - //验证payable声明 - byte[] result = selector.f().send(); - String f = DataChangeUtil.bytesToHex(result); - - collector.logStepPass("selector:" + f); - collector.assertEqual("b8c9d365",f); - - } catch (Exception e) { - collector.logStepFail("SelectorContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/VisibilityTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/VisibilityTest.java deleted file mode 100644 index 2571a193b2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functionVisibilityAndDecarations/VisibilityTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.functionVisibilityAndDecarations; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.Visibility; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 验证函数四种可见性external,public,internal,private - * @description: - * @author: liweic - * @create: 2020/01/02 16:01 - **/ - -public class VisibilityTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.VisibilityTest-函数可见性测试", sourcePrefix = "evm/0.6.12") - public void Visibility() { - try { - Visibility visibility = Visibility.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = visibility.getContractAddress(); - TransactionReceipt tx = visibility.getTransactionReceipt().get(); - collector.logStepPass("Visibility deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("Visibility deploy gasUsed:" + visibility.getTransactionReceipt().get().getGasUsed()); - - //验证public可见性 - BigInteger pubdata = visibility.fpub(new BigInteger("10")).send(); - collector.logStepPass("public可见函数返回值:" + pubdata); - collector.assertEqual(new BigInteger("13"),pubdata); - - //验证external可见性 - BigInteger extdata = visibility.fe(new BigInteger("10")).send(); - collector.logStepPass("external可见函数返回值:" + extdata); - collector.assertEqual(new BigInteger("12"),extdata); - - - } catch (Exception e) { - collector.logStepFail("VisibilityContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functioncalls/CallExternalTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functioncalls/CallExternalTest.java deleted file mode 100644 index 2b72879441..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functioncalls/CallExternalTest.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.functioncalls; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.CallExternal; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.apache.commons.lang.StringUtils; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.util.List; - - -/** - * @title 验证函数外部调用 - * @description: - * @author: liweic - * @create: 2020/01/02 19:11 - **/ - -public class CallExternalTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.CallExternalTest-函数外部调用测试", sourcePrefix = "evm/0.6.12") - public void callexternal() { - try { - CallExternal callexternal = CallExternal.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = callexternal.getContractAddress(); - TransactionReceipt tx = callexternal.getTransactionReceipt().get(); - collector.logStepPass("callexternal deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("callexternal deploy gasUsed:" + callexternal.getTransactionReceipt().get().getGasUsed()); - - //验证函数外部调用 - TransactionReceipt result = callexternal.getResult(new BigInteger("1")).send(); - collector.logStepPass("打印交易Hash:" + result.getTransactionHash()); - collector.logStepPass("intercall函数返回值:" + result); - - List eventResult =callexternal.getExternalCValueEvents(result); - String cv=eventResult.get(0).log.getData(); - collector.assertEqual(subHexData(cv),subHexData("3")); - - - } catch (Exception e) { - collector.logStepFail("CallExternalContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - - private String subHexData(String hexStr) { - if (StringUtils.isBlank(hexStr)) { - throw new IllegalArgumentException("string is blank"); - } - if (StringUtils.startsWith(hexStr, "0x")) { - hexStr = StringUtils.substringAfter(hexStr, "0x"); - } - byte[] addi = hexStr.getBytes(); - for (int i = 0; i < addi.length; i++) { - if (addi[i] != 0) { - hexStr = StringUtils.substring(hexStr, i - 1); - break; - } - } - return hexStr; - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functioncalls/InternalCallTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functioncalls/InternalCallTest.java deleted file mode 100644 index 3c7b1cb907..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functioncalls/InternalCallTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.functioncalls; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.IntenalCall; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - - -/** - * @title 验证函数内部调用 - * @description: - * @author: liweic - * @create: 2020/01/02 19:01 - **/ - -public class InternalCallTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.InternalCallTest-函数内部调用测试", sourcePrefix = "evm/0.6.12") - public void intercall() { - try { - IntenalCall intercall = IntenalCall.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = intercall.getContractAddress(); - TransactionReceipt tx = intercall.getTransactionReceipt().get(); - collector.logStepPass("intercall deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("intercall deploy gasUsed:" + intercall.getTransactionReceipt().get().getGasUsed()); - - //验证函数内部调用 - BigInteger result = intercall.getResult().send(); - collector.logStepPass("intercall函数返回值:" + result); - collector.assertEqual(new BigInteger("9"),result); - - - } catch (Exception e) { - collector.logStepFail("InterCallContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functioncalls/NamedCallTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functioncalls/NamedCallTest.java deleted file mode 100644 index 96f3f40276..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/functioncalls/NamedCallTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.functioncalls; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_6_12.NamedCall; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 验证函数具名调用 - * @description: - * @author: liweic - * @create: 2020/01/02 19:11 - **/ - -public class NamedCallTest extends ContractPrepareTest { - - @Before - public void before() { - - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.NamedCallTest-函数具名调用测试", sourcePrefix = "evm/0.6.12") - public void namedcall() { - try { - NamedCall namedcall = NamedCall.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = namedcall.getContractAddress(); - TransactionReceipt tx = namedcall.getTransactionReceipt().get(); - collector.logStepPass("namedcall deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("namedcall deploy gasUsed:" + namedcall.getTransactionReceipt().get().getGasUsed()); - - //交换传入值的顺序并返回 - Tuple2 result = namedcall.exchange(new BigInteger("1"),new BigInteger("2")).send(); - collector.logStepPass("exchange函数返回值:" + result); - - //任意顺序的通过变量名来指定参数值 - Tuple2 nametesult = namedcall.namecall().send(); - collector.logStepPass("namecall函数返回值:" + nametesult); - collector.assertEqual("2",result.getValue1().toString()); - collector.assertEqual("1",result.getValue2().toString()); - - - } catch (Exception e) { - collector.logStepFail("NamedCallContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/paramandreturns/FunctionParamTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/paramandreturns/FunctionParamTest.java deleted file mode 100644 index 17d28e4527..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/paramandreturns/FunctionParamTest.java +++ /dev/null @@ -1,54 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.paramandreturns; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.FunctionParam; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - - -/** - * @title 入参是函数的使用 - * @description: - * @author: liweic - * @create: 2020/01/11 20:20 - **/ - - -public class FunctionParamTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.FunctionParamTest-参数是函数的类型测试", sourcePrefix = "evm/0.6.12") - public void Functionparam() { - try { - - FunctionParam functionparam = FunctionParam.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = functionparam.getContractAddress(); - TransactionReceipt tx = functionparam.getTransactionReceipt().get(); - collector.logStepPass("FunctionParam deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("FunctionParam deploy gasUsed:" + functionparam.getTransactionReceipt().get().getGasUsed()); - - BigInteger t = functionparam.t().send(); - collector.logStepPass("FunctionParam函数返回值:" + t); - collector.assertEqual("7",t.toString()); - - } catch (Exception e) { - collector.logStepFail("FunctionParamContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/paramandreturns/PramaAndReturnsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/paramandreturns/PramaAndReturnsTest.java deleted file mode 100644 index 705de98814..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/paramandreturns/PramaAndReturnsTest.java +++ /dev/null @@ -1,102 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.paramandreturns; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_6_12.PramaAndReturns; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - -/** - * @title 参数和返回类型 - * @description: - * @author: liweic - * @create: 2019/12/30 15:01 - **/ - - -public class PramaAndReturnsTest extends ContractPrepareTest { - - private String a; - private String b; - private String c; - - @Before - public void before() { - this.prepare(); - a = driverService.param.get("a"); - b = driverService.param.get("b"); - c = driverService.param.get("c"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.PramaAndReturnsTest-参数和返回类型测试", sourcePrefix = "evm/0.6.12") - public void ParamAndReturn() { - try { - - PramaAndReturns pramaAndReturns = PramaAndReturns.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = pramaAndReturns.getContractAddress(); - TransactionReceipt tx = pramaAndReturns.getTransactionReceipt().get(); - collector.logStepPass("pramaAndReturnstest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("pramaAndReturnstest deploy gasUsed:" + pramaAndReturns.getTransactionReceipt().get().getGasUsed()); - - BigInteger resultA = pramaAndReturns.InputParam(new BigInteger(a)).send(); - collector.logStepPass("InputParam函数返回值:" + resultA); - collector.assertEqual("100",resultA.toString()); - - //调用没有返回值的函数 - TransactionReceipt transactionReceipt = pramaAndReturns.NoOutput(new BigInteger("1"),new BigInteger("1")).send(); - collector.logStepPass("NoOutput NoOutput successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - ////验证函数NoOutput是否调用成功 - BigInteger resultB = pramaAndReturns.getS().send(); - collector.logStepPass("验证的S值为: " + resultB); - collector.assertEqual(new BigInteger("1"), resultB); - - BigInteger resultC = pramaAndReturns.OmitParam(new BigInteger("10"), new BigInteger("20")).send(); - collector.logStepPass("OmitParam函数返回值为: " + resultC); - collector.assertEqual(new BigInteger("10"), resultC); - - //入参和出参均为数组 - List bigIntegerList = new ArrayList(); - bigIntegerList.add(new BigInteger(a)); - bigIntegerList.add(new BigInteger(b)); - bigIntegerList.add(new BigInteger(c)); - - List resList = pramaAndReturns.IuputArray(bigIntegerList).send(); - collector.logStepPass("IuputArray第一个数: " + resList.get(0)); - collector.assertEqual("100", resList.get(0).toString()); - collector.logStepPass("IuputArray第二个数: " + resList.get(1)); - collector.assertEqual("1", resList.get(1).toString()); - collector.logStepPass("IuputArray第三个数: " + resList.get(2)); - collector.assertEqual("3", resList.get(2).toString()); - - //返回值类型是字符串 - String resultD = pramaAndReturns.OuputString().send(); - collector.logStepPass("返回的字符串是: " + resultD); - collector.assertEqual(resultD, "What's up man"); - - //多个返回值且返回类型是数组 - Tuple2 resultE = pramaAndReturns.OuputArrays().send(); - collector.logStepPass("第一个数组是: " + resultE.getValue1()); - collector.assertEqual("[10, 2, 3]", resultE.getValue1().toString()); - collector.logStepPass("第二个数组是: " + resultE.getValue2()); - collector.assertEqual("[10, 2, 3]", resultE.getValue2().toString()); - - } catch (Exception e) { - collector.logStepFail("ParamAndReturnsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/ABIFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/ABIFunctionsTest.java deleted file mode 100644 index ceb9a25046..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/ABIFunctionsTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.specialVariablesAndFunctions; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.ABIFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; -/** - * @title 验证ABI编解码函数 - * @description: - * @author: liweic - * @create: 2019/12/30 19:01 - **/ - -public class ABIFunctionsTest extends ContractPrepareTest { - - private String encodeWithSignature; - private String encode; - private String encodePacked; - - @Before - public void before() { - this.prepare(); - encodeWithSignature = driverService.param.get("encodeWithSignature"); - encode = driverService.param.get("encode"); - encodePacked = driverService.param.get("encodePacked"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.ABIFunctionsTest-ABI函数测试", sourcePrefix = "evm/0.6.12") - public void ABIfunction() { - try { - ABIFunctions abiFunctions = ABIFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = abiFunctions.getContractAddress(); - TransactionReceipt tx = abiFunctions.getTransactionReceipt().get(); - collector.logStepPass("ABIFunctionsTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("ABIFunctionsTest deploy gasUsed:" + abiFunctions.getTransactionReceipt().get().getGasUsed()); - - //验证abi.encodeWithSignature函数 - byte[] resultA = abiFunctions.getEncodeWithSignature().send(); - String hexValue = DataChangeUtil.bytesToHex(resultA); - collector.logStepPass("getEncodeWithSignature函数返回值:" + hexValue); - collector.assertEqual(encodeWithSignature ,hexValue); - - //验证abi.encode函数 - byte[] resultB = abiFunctions.getEncode().send(); - String hexValue2 = DataChangeUtil.bytesToHex(resultB); - collector.logStepPass("getEncode函数返回值:" + hexValue2); - collector.assertEqual(encode ,hexValue2); - - //验证abi.encodePacked函数 - byte[] resultC = abiFunctions.getEncodePacked().send(); - String hexValue3 = DataChangeUtil.bytesToHex(resultC); - collector.logStepPass("getEncodePacked函数返回值:" + hexValue3); - collector.assertEqual(encodePacked ,hexValue3); - - } catch (Exception e) { - collector.logStepFail("ABIFuctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/AddressFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/AddressFunctionsTest.java deleted file mode 100644 index 0ef291742f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/AddressFunctionsTest.java +++ /dev/null @@ -1,92 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.specialVariablesAndFunctions; - -import com.alaya.bech32.Bech32; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.AddressFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 验证地址相关函数 - * @description: - * @author: liweic - * @create: 2020/01/02 11:30 - **/ - -public class AddressFunctionsTest extends ContractPrepareTest { - private String amount; - - @Before - public void before() { - this.prepare(); - amount = driverService.param.get("amount"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.AddressFunctionsTest-地址相关函数测试", sourcePrefix = "evm/0.6.12") - public void Addressfunctions() { - try { - AddressFunctions addressfunctions = AddressFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = addressfunctions.getContractAddress(); - TransactionReceipt tx = addressfunctions.getTransactionReceipt().get(); - collector.logStepPass("Addressfunctions deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("Addressfunctions deploy gasUsed:" + addressfunctions.getTransactionReceipt().get().getGasUsed()); - - //验证balance(地址账户)函数 - String balanceaddr = "0x03f0e0a226f081a5daecfda222cafc959ed7b800"; - balanceaddr = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),balanceaddr); - BigInteger money = addressfunctions.getBalance(balanceaddr).send(); - collector.logStepPass("地址账户getBalance函数返回值:" + money); - int num = money.toString().length(); - boolean n = num > 0; - collector.assertEqual(n,true); - - //验证balance(合约账户)函数 - BigInteger contractmoney = addressfunctions.getBalanceOf().send(); - collector.logStepPass("合约账户getBalance函数返回值:" + contractmoney); - int num2 = contractmoney.toString().length(); - collector.assertEqual(1,num2); - - //验证transfer函数 - String transferaddr = "0x8a9B36694F1eeeb500c84A19bB34137B05162EC1"; - transferaddr = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),transferaddr); - BigInteger addresspremoney = addressfunctions.getBalance(transferaddr).send(); - collector.logStepPass("转账前余额:" + addresspremoney); - TransactionReceipt result = addressfunctions.transfer(transferaddr ,new BigInteger(amount)).send(); - collector.logStepPass("transfer转账结果交易Hash:" + result.getTransactionHash()); - BigInteger addressaftermoney = addressfunctions.getBalance(transferaddr).send(); - collector.logStepPass("转账后余额:" + addressaftermoney); - int a = Integer.valueOf(addressaftermoney.toString()); - int b = Integer.valueOf(addresspremoney.toString()); - int transfercounts = a - b; - collector.assertEqual(amount ,String.valueOf(transfercounts)); - - - //验证send函数 - String sendsddr = "0x8a9B36694F1eeeb500c84A19bB34137B05162EC7"; - sendsddr = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),sendsddr); - BigInteger sendbefore = addressfunctions.getBalance(sendsddr).send(); - collector.logStepPass("转账前余额:" + sendbefore); - TransactionReceipt result2 = addressfunctions.send(sendsddr ,new BigInteger("10000")).send(); - collector.logStepPass("send转账结果交易Hash:" + result2.getTransactionHash()); - BigInteger addressaftersend = addressfunctions.getBalance(sendsddr).send(); - collector.logStepPass("转账后余额:" + addressaftersend); - int c = Integer.valueOf(addressaftersend.toString()); - int d = Integer.valueOf(sendbefore.toString()); - int sendcount = c - d; - collector.assertEqual(1,sendcount); - - } catch (Exception e) { - collector.logStepFail("AddressFunctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/BlockTransactionPropertiesFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/BlockTransactionPropertiesFunctionsTest.java deleted file mode 100644 index 1270a2afc5..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/BlockTransactionPropertiesFunctionsTest.java +++ /dev/null @@ -1,161 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.specialVariablesAndFunctions; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.BlockTransactionPropertiesFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -/** - * @title 验证区块和交易函数 - * @description: - * @author: liweic - * @create: 2019/12/31 11:01 - **/ - -public class BlockTransactionPropertiesFunctionsTest extends ContractPrepareTest { - - private String coinbase; -// private String gaslimit; - private String msgdata; - private String gasleft; - private String msgsig; - private String gasprice; - - @Before - public void before() { - this.prepare(); - coinbase = driverService.param.get("coinbase"); -// gaslimit = driverService.param.get("gaslimit"); - msgdata = driverService.param.get("msgdata"); - gasleft = driverService.param.get("gasleft"); - msgsig = driverService.param.get("msgsig"); - gasprice = driverService.param.get("gasprice"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.BlockTransactionPropertiesFunctionsTest-区块和交易函数测试", sourcePrefix = "evm/0.6.12") - public void BlockTransactionPropertiesfunction() { - try { - BlockTransactionPropertiesFunctions blockTransactionPropertiesFunctions = BlockTransactionPropertiesFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = blockTransactionPropertiesFunctions.getContractAddress(); - TransactionReceipt tx = blockTransactionPropertiesFunctions.getTransactionReceipt().get(); - collector.logStepPass("BlockTransactionPropertiesFunctionsTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("BlockTransactionPropertiesFunctionsTest deploy gasUsed:" + blockTransactionPropertiesFunctions.getTransactionReceipt().get().getGasUsed()); - - //验证block.number函数(获取块高) - BigInteger PlatONBlocknumber = web3j.platonBlockNumber().send().getBlockNumber(); - collector.logStepPass("web3j拿到的区块高度:" + PlatONBlocknumber); - - BigInteger blocknumber = blockTransactionPropertiesFunctions.getBlockNumber().send(); - collector.logStepPass("block.number函数返回值:" + blocknumber); - int a = Integer.valueOf(blocknumber.toString()); - int b = Integer.valueOf(PlatONBlocknumber.toString()); - int blocknumdiff = a - b; - List list = new ArrayList(); - list.add(new Integer(0)); - list.add(new Integer(1)); - list.add(new Integer(2)); - Boolean bndf = list.contains(blocknumdiff); - collector.assertEqual(true, bndf); - - //验证blockhash(blockNumber)函数(获取区块Hash) - String blocknumberNow = web3j.platonBlockNumber().send().getBlockNumber().toString(); - int number = Integer.valueOf(blocknumberNow).intValue()-100; - byte[] resultB = blockTransactionPropertiesFunctions.getBlockhash(new BigInteger(String.valueOf(number))).send(); - String hexValue = DataChangeUtil.bytesToHex(resultB); - collector.logStepPass("blockhash(blockNumber)函数返回值:" + hexValue); - String errorhash = "0000000000000000000000000000000000000000000000000000000000000000"; - boolean isBool = hexValue.equals(errorhash); - collector.assertTrue(!isBool,"success"); - - //验证block.coinbase函数(获取矿工地址) - String resultC = blockTransactionPropertiesFunctions.getBlockCoinbase().send(); - collector.logStepPass("block.coinbase函数返回值:" + resultC); - String coinaddr = "0x0000000000000000000000000000000000000000"; - boolean iscoinbase = resultC.equals(coinaddr); - collector.assertEqual(!iscoinbase ,true); - - //验证block.difficulty(获取当前块的难度) - BigInteger resultD = blockTransactionPropertiesFunctions.getBlockDifficulty().send(); - collector.logStepPass("block.difficulty函数返回值:" + resultD); - collector.assertEqual("0" ,resultD.toString()); - - //验证block.gaslimit(获取当前区块的gas限额) - BigInteger resultE = blockTransactionPropertiesFunctions.getGaslimit().send(); - collector.logStepPass("block.gaslimit函数返回值:" + resultE); - boolean gas = "0".toString().equals(resultE); - collector.assertEqual(false ,gas); - - //验证block.timestamp(获取当前区块的UNIX时间戳) - BigInteger resultF = blockTransactionPropertiesFunctions.getBlockTimestamp().send(); - collector.logStepPass("block.timestamp函数返回值:" + resultF); - SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); - String resultTime = sdf.format(new Date(Long.parseLong(String.valueOf(resultF)))); - String today = sdf.format(new Date()); - collector.assertEqual(today,resultTime); - - - //验证msg.data(获取完整的calldata) - byte[] resultG = blockTransactionPropertiesFunctions.getData().send(); - String hexvalue2 = DataChangeUtil.bytesToHex(resultG); - collector.logStepPass("msg.data函数返回值:" + hexvalue2); - collector.assertEqual(msgdata ,hexvalue2); - - //验证gasleft()(剩余的gas) - BigInteger resultH = blockTransactionPropertiesFunctions.getGasleft().send(); - collector.logStepPass("gasleft函数返回值:" + resultH); -// collector.assertEqual("9223372036854754307" ,resultH.toString()); - - //验证msg.sender(获取消息发送者(当前调用)) - String resultI = blockTransactionPropertiesFunctions.getSender().send(); - collector.logStepPass("msg.sender函数返回值:" + resultI); - collector.assertEqual(walletAddress.toLowerCase() ,resultI); - - //验证msg.sig(calldata 的前 4 字节(也就是函数标识符)) - byte[] resultJ = blockTransactionPropertiesFunctions.getSig().send(); - String hexvalue3 = DataChangeUtil.bytesToHex(resultJ); - collector.logStepPass("msg.sig函数返回值:" + hexvalue3); - collector.assertEqual(msgsig ,hexvalue3); - - //验证msg.value(随消息发送的以太币的数量) - TransactionReceipt transactionReceipt = blockTransactionPropertiesFunctions.getValue(new BigInteger("2")).send(); - String status = transactionReceipt.getStatus(); - collector.logStepPass("msg.value的transactionReceipt是:" + transactionReceipt); - collector.logStepPass("msg.value的status是:" + status); - collector.assertEqual("0x1" ,status); - - //验证now(目前区块时间戳) - BigInteger resultK = blockTransactionPropertiesFunctions.getNow().send(); - collector.logStepPass("now函数返回值:" + resultK); - SimpleDateFormat sdf2=new SimpleDateFormat("yyyy-MM-dd"); - String resultTime2 = sdf2.format(new Date(Long.parseLong(String.valueOf(resultF)))); - String now = sdf2.format(new Date()); - collector.assertEqual(now,resultTime2); - - //验证tx.gasprice(交易的 gas 价格) - BigInteger resultL = blockTransactionPropertiesFunctions.getGasprice().send(); - collector.logStepPass("tx.gasprice函数返回值:" + resultL); - collector.assertEqual("0" ,resultL.toString()); - - //验证tx.origin(交易发起者(完全的调用链)) - String resultM = blockTransactionPropertiesFunctions.getOrigin().send(); - collector.logStepPass("tx.origin函数返回值:" + resultM); - collector.assertEqual(walletAddress.toLowerCase() ,resultM); - - } catch (Exception e) { - collector.logStepFail("BlockTransactionPropertiesFunctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/BlockhashTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/BlockhashTest.java deleted file mode 100644 index fcff872581..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/BlockhashTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.specialVariablesAndFunctions; - -import network.platon.contracts.evm.v0_6_12.Blockhash; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -/** - * @title blockHash函数(只能获取(当前块-256)至(当前块-1)之间的块hash) - * @description: - * @author: hudenian - * @create: 2020/03/09 19:17 - **/ - -public class BlockhashTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.BlockhashTest-验证以blockhash函数", sourcePrefix = "evm/0.6.12") - public void blockhashTest() { - try { - Blockhash blockhash = Blockhash.deploy(web3j, transactionManager, provider, chainId).send(); - - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore0().send())); - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore30().send())); - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore255().send())); - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore256().send())); - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore257().send())); - - } catch (Exception e) { - collector.logStepFail("BlockTransactionPropertiesFunctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/CheckstatusTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/CheckstatusTest.java deleted file mode 100644 index d684d526f2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/CheckstatusTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.specialVariablesAndFunctions; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.SelfdestructFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 验证同一个合约部署两次后,两个合约间是否会相互影响 - * @description: - * @author: hudenian - * @create: 2020/02/05 13:37 - **/ - -public class CheckstatusTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "function.CheckstatusTest-两个合约间是否会相互影响", sourcePrefix = "evm/0.6.12") - public void Selfdestructfunction() { - try { - //第一次部署合约 - SelfdestructFunctions selfdestructFunctions = SelfdestructFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = selfdestructFunctions.getContractAddress(); - TransactionReceipt tx = selfdestructFunctions.getTransactionReceipt().get(); - collector.logStepPass("SelfdestructFunctionsTest first deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("SelfdestructFunctionsTest first deploy gasUsed:" + selfdestructFunctions.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt increaseCount = selfdestructFunctions.increment().send(); - collector.logStepPass("交易Hash:" + increaseCount.getTransactionHash()); - BigInteger resultCount = selfdestructFunctions.getCount().send(); - collector.logStepPass("getCount函数返回值:" + resultCount); - collector.assertEqual("5",resultCount.toString()); - - - //第二次部署合约 - SelfdestructFunctions selfdestructFunctionsTwo = SelfdestructFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddressTwo = selfdestructFunctionsTwo.getContractAddress(); - tx = selfdestructFunctionsTwo.getTransactionReceipt().get(); - collector.logStepPass("SelfdestructFunctionsTest second deploy successfully.contractAddress:" + selfdestructFunctionsTwo + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("SelfdestructFunctionsTest second deploy gasUsed:" + selfdestructFunctionsTwo.getTransactionReceipt().get().getGasUsed()); - - increaseCount = selfdestructFunctionsTwo.increment().send(); - collector.logStepPass("交易Hash:" + increaseCount.getTransactionHash()); - resultCount = selfdestructFunctionsTwo.getCount().send(); - collector.logStepPass("getCount函数返回值:" + resultCount); - collector.assertEqual("5",resultCount.toString()); - - //第二个合约自杀后看对第一个合约是否有影响 - TransactionReceipt selfkill = selfdestructFunctionsTwo.selfKill().send(); - collector.logStepPass("自杀函数交易Hash:" + selfkill.getTransactionHash()); - resultCount = selfdestructFunctions.getCount().send(); - collector.logStepPass("第二个合约自杀后查询第一个合约getCount函数返回值:" + resultCount); - collector.assertEqual("5",resultCount.toString()); - - //调用第二个合约查询函数返回值(抛出异常) - BigInteger count1 = selfdestructFunctionsTwo.getCount().send(); - collector.logStepPass("调用自杀函数后链上的count值为:"+count1); - - } catch (Exception e) { - if(e.getMessage().startsWith("Empty")){ - collector.logStepPass("调用自杀函数后链上的count值为:Empty"); - } - collector.assertContains(e.toString(), "ContractCallException"); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/MathAndCryptographicFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/MathAndCryptographicFunctionsTest.java deleted file mode 100644 index 2b64648844..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/MathAndCryptographicFunctionsTest.java +++ /dev/null @@ -1,105 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.specialVariablesAndFunctions; - -import com.alaya.bech32.Bech32; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.parameters.NetworkParameters; -import network.platon.contracts.evm.v0_6_12.MathAndCryptographicFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 验证数学和加密函数 - * @description: - * @author: liweic - * @create: 2019/12/30 20:01 - **/ - -public class MathAndCryptographicFunctionsTest extends ContractPrepareTest { - - private String addmod; - private String mulmod; - private String keccak256; - private String sha256; - private String ripemd160; - private String ecrecover; - - @Before - public void before() { - this.prepare(); - addmod = driverService.param.get("addmod"); - mulmod = driverService.param.get("mulmod"); - keccak256 = driverService.param.get("keccak256"); - sha256 = driverService.param.get("sha256"); - ripemd160 = driverService.param.get("ripemd160"); - ecrecover = driverService.param.get("ecrecover"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.MathAndCryptographicFunctionsTest-数学和加密函数测试", sourcePrefix = "evm/0.6.12") - public void MathAndCryptographicfunction() { - try { - MathAndCryptographicFunctions mathAndCryptographicFunctions = MathAndCryptographicFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = mathAndCryptographicFunctions.getContractAddress(); - TransactionReceipt tx = mathAndCryptographicFunctions.getTransactionReceipt().get(); - collector.logStepPass("MathAndCryptographicFunctionsTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("MathAndCryptographicFunctionsTest deploy gasUsed:" + mathAndCryptographicFunctions.getTransactionReceipt().get().getGasUsed()); - - //验证addmod函数 - BigInteger resultA = mathAndCryptographicFunctions.callAddMod().send(); - collector.logStepPass("addmod函数返回值:" + resultA); - collector.assertEqual(addmod ,resultA.toString()); - - //验证mulmod函数 - BigInteger resultB = mathAndCryptographicFunctions.callMulMod().send(); - collector.logStepPass("mulmod函数返回值:" + resultB); - collector.assertEqual(mulmod ,resultB.toString()); - - //验证keccak256函数 - byte[] resultC = mathAndCryptographicFunctions.callKeccak256().send(); - String hexValue = DataChangeUtil.bytesToHex(resultC); - collector.logStepPass("keccak256函数返回值:" + hexValue); - collector.assertEqual(keccak256 ,hexValue); - - //验证sha256函数 - byte[] resultD = mathAndCryptographicFunctions.callSha256().send(); - String hexValue2 = DataChangeUtil.bytesToHex(resultD); - collector.logStepPass("sha256函数返回值:" + hexValue2); - collector.assertEqual(sha256 ,hexValue2); - - //验证ripemd160函数 - byte[] resultE = mathAndCryptographicFunctions.callRipemd160().send(); - String hexValue3 = DataChangeUtil.bytesToHex(resultE); - collector.logStepPass("ripemd160函数返回值:" + hexValue3); - collector.assertEqual(ripemd160 ,hexValue3); - - //验证ecrecover函数 - String hash = "e281eaa11e6e37e6f53aade5d6c5b7201ef1c66162ec42ccc3215a0c4349350d"; - byte[] a = DataChangeUtil.hexToByteArray(hash); - - BigInteger v = new BigInteger("27"); - - String R = "55b60cadd4b4a3ea4fc368ef338f97e12e7328dd6e9e969a3fd8e5c10be855fe"; - byte[] b = DataChangeUtil.hexToByteArray(R); - - String S = "2b42cee2585a16ea537efcb88009c1aeac693c28b59aa6bbff0baf22730338f6"; - byte[] c = DataChangeUtil.hexToByteArray(S); - - String resultF = mathAndCryptographicFunctions.callEcrecover(a, v, b, c).send(); - collector.logStepPass("ecrecover函数返回值:" + resultF); - String bech32Address = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(), ecrecover); - collector.assertEqual(bech32Address ,resultF.toLowerCase()); - - } catch (Exception e) { - collector.logStepFail("MathAndCryptographicfunctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/SelfdestructFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/SelfdestructFunctionsTest.java deleted file mode 100644 index d49005fe43..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/function/specialVariablesAndFunctions/SelfdestructFunctionsTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_6_12.function.specialVariablesAndFunctions; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.SelfdestructFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 验证合约自毁函数 - * @description: - * @author: liweic - * @create: 2019/12/30 19:01 - **/ - -public class SelfdestructFunctionsTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.SelfdestructFunctionsTest-合约相关函数测试", sourcePrefix = "evm/0.6.12") - public void Selfdestructfunction() { - try { - SelfdestructFunctions selfdestructFunctions = SelfdestructFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = selfdestructFunctions.getContractAddress(); - TransactionReceipt tx = selfdestructFunctions.getTransactionReceipt().get(); - collector.logStepPass("SelfdestructFunctionsTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("SelfdestructFunctionsTest deploy gasUsed:" + selfdestructFunctions.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt increaseCount = selfdestructFunctions.increment().send(); - collector.logStepPass("交易Hash:" + increaseCount.getTransactionHash()); - BigInteger resultCount = selfdestructFunctions.getCount().send(); - collector.logStepPass("getCount函数返回值:" + resultCount); - collector.assertEqual("5",resultCount.toString()); - - - //调用自杀函数 - TransactionReceipt selfkill = selfdestructFunctions.selfKill().send(); - collector.logStepPass("自杀函数交易Hash:" + selfkill.getTransactionHash()); - - collector.logStepPass("Selfdestruct successful.transactionHash:" + selfkill.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + selfkill.getBlockNumber()); - - - BigInteger count1 = selfdestructFunctions.getCount().send(); - - collector.logStepPass("调用自杀函数后链上的count值为:"+count1); - - - } catch (Exception e) { - if(e.getMessage().startsWith("Empty")){ - collector.logStepPass("调用自杀函数后链上的count值为:Empty"); - } - collector.assertContains(e.toString(), "ContractCallException"); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/innerContract/PlatonUnitTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/innerContract/PlatonUnitTest.java deleted file mode 100644 index 08b6682c3c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/innerContract/PlatonUnitTest.java +++ /dev/null @@ -1,74 +0,0 @@ -package network.platon.test.evm.v0_6_12.innerContract;//package network.platon.test.evm.innerContract; -// -//import network.platon.test.evm.beforetest.ContractPrepareTest; -//import network.platon.autotest.junit.annotations.DataSource; -//import network.platon.autotest.junit.enums.DataSourceType; -//import network.platon.contracts.evm.Guessing; -//import network.platon.contracts.evm.PlatonUnit; -//import org.junit.Before; -//import org.junit.Test; -//import org.web3j.protocol.core.DefaultBlockParameterName; -//import org.web3j.protocol.core.methods.response.TransactionReceipt; -//import org.web3j.tx.Transfer; -//import org.web3j.utils.Convert; -// -//import java.math.BigDecimal; -//import java.math.BigInteger; -// -///** -// * @title Platon金额单位测试 -// * @description: -// * @author: hudenian -// * @create: 2020/03/05 16:42 -// * -// **/ -// -//public class PlatonUnitTest extends ContractPrepareTest { -// private String endBlock = "100000000"; //设置竞猜截止块高 -// -// @Before -// public void before() { -// this.prepare(); -// } -// -// @Test -// @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", -// author = "hudenian", showName = "PlatonUnitTest-Platon金额单位测试", sourcePrefix = "network.platon.test.evm") -// public void unitTest() { -// -// try { -// -// PlatonUnit platonUnit = PlatonUnit.deploy(web3j, transactionManager, provider, chainId).send(); -// -// String contractAddress = platonUnit.getContractAddress(); -// TransactionReceipt tx = platonUnit.getTransactionReceipt().get(); -// collector.logStepPass("PlatonUnitTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); -// collector.logStepPass("PlatonUnitTest deploy gasUsed:" + platonUnit.getTransactionReceipt().get().getGasUsed()); -// -// //发起转账 -// Transfer transfer = new Transfer(web3j, transactionManager); -// TransactionReceipt transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.GLAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.MLAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.KLAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.LAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.FINNEY, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.SZABO, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.GVON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.MVON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.KVON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.VON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// -// //查询合约余额 -// String contractBalance = platonUnit.getBalance().send().toString(); -// collector.logStepPass("合约中的余额为:"+contractBalance); -// collector.assertEqual(contractBalance,"1001001001001001001001001001"); -// -// // -// -// -// } catch (Exception e) { -// collector.logStepFail("PlatonUnitTest Calling Method fail.", e.toString()); -// e.printStackTrace(); -// } -// } -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/lib/LibraryStaticUsingTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/lib/LibraryStaticUsingTest.java deleted file mode 100644 index f58cd5175c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/lib/LibraryStaticUsingTest.java +++ /dev/null @@ -1,44 +0,0 @@ -package network.platon.test.evm.v0_6_12.lib; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.LibraryStaticUsing; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.List; - -/** - * @title 库引用类似引用static方法测试 - * 解释:如果L作为库的名称,f()是库L的函数,则可以通过L.f()的方式调用 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class LibraryStaticUsingTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "emitEvent", - author = "albedo", showName = "lib.LibraryStaticUsingTest-类static方式引用", sourcePrefix = "evm/0.6.12") - public void testEmitEvent() { - try { - prepare(); - LibraryStaticUsing using = LibraryStaticUsing.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("LibraryStaticUsing issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + using.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = using.register(new BigInteger("12")).send(); - List eventData = using.getResultEvents(receipt); - String data = eventData.get(0).log.getData(); - collector.assertEqual(DataChangeUtil.subHexData(data), DataChangeUtil.subHexData("1"), "checkout static method using library function"); - } catch (Exception e) { - collector.logStepFail("LibraryStaticUsingTest testEmitEvent failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/lib/LibraryUsingForAllTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/lib/LibraryUsingForAllTest.java deleted file mode 100644 index 16a4f78141..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/lib/LibraryUsingForAllTest.java +++ /dev/null @@ -1,37 +0,0 @@ -package network.platon.test.evm.v0_6_12.lib; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.LibraryUsingForAll; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 引用using for方式验证 - * 解释:using A for * 的效果是,库 A 中的函数被附加在任意的类型上。 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class LibraryUsingForAllTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "albedo", showName = "lib.LibraryUsingForAllTest-using A for all type", sourcePrefix = "evm/0.6.12") - public void testReplace() { - try { - prepare(); - LibraryUsingForAll using = LibraryUsingForAll.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("LibraryUsingForAll issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + using.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = using.replace(new BigInteger("12"),new BigInteger("14")).send(); - collector.assertEqual(receipt.getStatus(),"0x1" , "checkout using a for * success"); - } catch (Exception e) { - collector.logStepFail("LibraryUsingForAll testReplace method failure:",e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/lib/LibraryUsingForTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/lib/LibraryUsingForTest.java deleted file mode 100644 index e91a4e203e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/lib/LibraryUsingForTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.evm.v0_6_12.lib; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.LibraryUsingFor; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; -import java.math.BigInteger; -import java.util.List; - -/** - * @title 引用using for方式验证 - * 解释:指令using A for B 可用于附加库函数(从库 A)到任何类型(B)。 这些函数将接收到调用它们的对象作为它们的第一个参数。 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class LibraryUsingForTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "albedo", showName = "lib.LibraryUsingForTest-using A for B", sourcePrefix = "evm/0.6.12") - public void testRegister() { - try { - prepare(); - LibraryUsingFor using = LibraryUsingFor.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("LibraryUsingFor issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + using.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = using.register(new BigInteger("12")).send(); - List eventData = using.getResultEvents(receipt); - String data = eventData.get(0).log.getData(); - collector.assertEqual(DataChangeUtil.subHexData(data), DataChangeUtil.subHexData("1"), "checkout using A for B"); - } catch (Exception e) { - collector.logStepFail("LibraryUsingForTest testRegister method failure:",e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/lib/SafeMathMockTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/lib/SafeMathMockTest.java deleted file mode 100644 index 8d6028c5de..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/lib/SafeMathMockTest.java +++ /dev/null @@ -1,160 +0,0 @@ -package network.platon.test.evm.v0_6_12.lib; - -import network.platon.contracts.evm.v0_6_12.SafeMathMock; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -public class SafeMathMockTest extends ContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "max", - author = "albedo", showName = "lib.SafeMathMockTest-最大值", sourcePrefix = "evm/0.6.12") - public void testMax() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + using.getTransactionReceipt().get().getGasUsed()); - BigInteger result = using.max(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("13"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testMax failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "min", - author = "albedo", showName = "lib.SafeMathMockTest-最小值", sourcePrefix = "evm/0.6.12") - public void testMin() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.min(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("12"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testMin failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "average", - author = "albedo", showName = "lib.SafeMathMockTest-平均值", sourcePrefix = "evm/0.6.12") - public void testAverage() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.average(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("12"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testAverage failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "add", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型相加", sourcePrefix = "evm/0.6.12") - public void testAdd() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.add(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("25"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testAdd failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "mul", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型相乘", sourcePrefix = "evm/0.6.12") - public void testMul() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.mul(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("156"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testMul failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "sub", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型相减", sourcePrefix = "evm/0.6.12") - public void testSub() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.sub(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("3963877391197344453575983046348115674221700746820753546331534351508065746944"), "checkout library function"); - result = using.sub(new BigInteger("13"), new BigInteger("12")).send(); - collector.assertEqual(result, new BigInteger("1"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testSub failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "div", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型相除", sourcePrefix = "evm/0.6.12") - public void testDiv() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.div(new BigInteger("12"), new BigInteger("0")).send(); - collector.assertEqual(result, new BigInteger("3963877391197344453575983046348115674221700746820753546331534351508065746944"), "checkout library function"); - result = using.div(new BigInteger("13"), new BigInteger("12")).send(); - collector.assertEqual(result, new BigInteger("1"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testDiv failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "mod", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型除余", sourcePrefix = "evm/0.6.12") - public void testMod() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.mod(new BigInteger("12"), new BigInteger("0")).send(); - collector.assertEqual(result, new BigInteger("3963877391197344453575983046348115674221700746820753546331534351508065746944"), "checkout library function"); - result = using.mod(new BigInteger("13"), new BigInteger("12")).send(); - collector.assertEqual(result, new BigInteger("1"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testMod failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/Interface/InterfaceContractALimitTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/Interface/InterfaceContractALimitTest.java deleted file mode 100644 index f9333cf848..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/Interface/InterfaceContractALimitTest.java +++ /dev/null @@ -1,65 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.Interface; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.InterfaceContractParentTest; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:在5.0以后版本,接口的函数只能声明外部类型(external),否则会编译失败 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InterfaceContractALimitTest extends ContractPrepareTest { - - private String param1,param2,sumParam; - - @Before - public void before() { - this.prepare(); - param1 = driverService.param.get("param1"); - param2 = driverService.param.get("param2"); - sumParam = driverService.param.get("sumParam"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InterfaceContract.接口的函数只能声明外部类型",sourcePrefix = "evm/0.6.12") - public void testInterfaceContractLimit() { - - InterfaceContractParentTest interfaceContractParentTest= null; - try { - //合约部署 - interfaceContractParentTest = InterfaceContractParentTest.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = interfaceContractParentTest.getContractAddress(); - TransactionReceipt tx = interfaceContractParentTest.getTransactionReceipt().get(); - - collector.logStepPass("InterfaceContractParentTest issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("InterfaceContractParentTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - BigInteger sumBigInt = interfaceContractParentTest.sumExternal(new BigInteger(param1),new BigInteger(param2)).send(); - collector.logStepPass("调用合约方法完毕 successful.sumBigInt:" + sumBigInt); - collector.assertEqual(sumBigInt, new BigInteger(sumParam), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractParentTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/Interface/InterfaceContractBLimitEnumTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/Interface/InterfaceContractBLimitEnumTest.java deleted file mode 100644 index 3f15789ba4..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/Interface/InterfaceContractBLimitEnumTest.java +++ /dev/null @@ -1,76 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.Interface; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.InterfaceContractEnumTest; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:在5.0以后版本,接口中可以正常定义枚举 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InterfaceContractBLimitEnumTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InterfaceContractLimitEnum.验证接口中定义枚举",sourcePrefix = "evm/0.6.12") - public void testInterfaceContractLimitEnum() { - - InterfaceContractEnumTest interfaceContractEnumTest= null; - try { - //合约部署 - interfaceContractEnumTest = InterfaceContractEnumTest.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = interfaceContractEnumTest.getContractAddress(); - TransactionReceipt tx = interfaceContractEnumTest.getTransactionReceipt().get(); - - collector.logStepPass("InterfaceContractEnumTest issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("InterfaceContractEnumTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - - //1、执行setLarge() - try { - TransactionReceipt setLargeTransaction = interfaceContractEnumTest.setLarge().send(); - collector.logStepPass("调用合约setLarge()方法完毕 successful hash:" + setLargeTransaction.getTransactionHash()); - //collector.assertEqual(sumBigInt, new BigInteger(sumParam), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractEnumTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //2、执行getChoice() - try { - BigInteger expectChoiceResult = new BigInteger("2"); - BigInteger actualBigInteger = interfaceContractEnumTest.getChoice().send(); - collector.logStepPass("调用合约getChoice()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectChoiceResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractEnumTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/Interface/InterfaceContractBLimitStructTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/Interface/InterfaceContractBLimitStructTest.java deleted file mode 100644 index 84e35695cc..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/Interface/InterfaceContractBLimitStructTest.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.Interface; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.InterfaceContractStructTest; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:在5.0以后版本,接口可以声明结构体 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InterfaceContractBLimitStructTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InterfaceContractLimitStruct.验证接口定义结构体", sourcePrefix = "evm/0.6.12") - public void testInterfaceContractLimitEnum() { - - InterfaceContractStructTest interfaceContractStructTest= null; - try { - //合约部署 - interfaceContractStructTest = InterfaceContractStructTest.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = interfaceContractStructTest.getContractAddress(); - TransactionReceipt tx = interfaceContractStructTest.getTransactionReceipt().get(); - - collector.logStepPass("InterfaceContractStructTest issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - - //1、执行setBook() - try { - TransactionReceipt setBookTransaction = interfaceContractStructTest.setBook().send(); - collector.logStepPass("调用合约setBook()方法完毕 successful hash:" + setBookTransaction.getTransactionHash()); - //collector.assertEqual(sumBigInt, new BigInteger(sumParam), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //2、执行getBookID() - try { - BigInteger expectBookResult = new BigInteger("1"); - BigInteger actualBigInteger = interfaceContractStructTest.getBookID().send(); - collector.logStepPass("调用合约getBookID()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/Interface/InterfaceContractInhertTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/Interface/InterfaceContractInhertTest.java deleted file mode 100644 index ce0b4de0bd..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/Interface/InterfaceContractInhertTest.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.Interface; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.InterfaceContractInheritMultipleTest; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:合约是否可以继承多个接口 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InterfaceContractInhertTest extends ContractPrepareTest { - - private String a,b,sumValue; - private String c,d,reduceValue; - - @Before - public void before() { - this.prepare(); - a = driverService.param.get("a"); - b = driverService.param.get("b"); - sumValue = driverService.param.get("sumValue"); - c = driverService.param.get("c"); - d = driverService.param.get("d"); - reduceValue = driverService.param.get("reduceValue"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.合约多继承接口执行情况",sourcePrefix = "evm/0.6.12") - public void testAbstractContract() { - - InterfaceContractInheritMultipleTest interfaceInheritMultiple = null; - try { - //合约部署 - interfaceInheritMultiple = InterfaceContractInheritMultipleTest.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = interfaceInheritMultiple.getContractAddress(); - TransactionReceipt tx = interfaceInheritMultiple.getTransactionReceipt().get(); - collector.logStepPass("interfaceContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("interfaceContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - BigInteger resultSum = new BigInteger(sumValue); - BigInteger resultReduce = new BigInteger(reduceValue); - - //合约加法 sum() - BigInteger actualSumValue = interfaceInheritMultiple.sum(new BigInteger(a),new BigInteger(b)).send(); - collector.logStepPass("执行【合约加法 sum()】 actualSumValue:" + actualSumValue); - collector.assertEqual(resultSum,actualSumValue, "checkout execute success."); - - //合约减法 reduce() - BigInteger actualReduceValue = interfaceInheritMultiple.reduce(new BigInteger(c),new BigInteger(d)).send(); - collector.logStepPass("执行【合约减法 reduce()】 actualReduceValue:" + actualReduceValue); - collector.assertEqual(resultReduce,actualReduceValue, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("interfaceContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractAInhertNoImpTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractAInhertNoImpTest.java deleted file mode 100644 index 2354e1bb20..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractAInhertNoImpTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.AbstractContractSon; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -/** - * @title 测试:抽象合约被继承,但未被实现抽象方法,是否可正常执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractAInhertNoImpTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约被继承未实现执行情况",sourcePrefix = "evm/0.6.12") - public void testAbstractContract() { - - AbstractContractSon sonAbstractContract = null; - try { - //合约部署 - sonAbstractContract = AbstractContractSon.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = sonAbstractContract.getContractAddress(); - TransactionReceipt tx = sonAbstractContract.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 -// try { -// String expectResult = "sonName"; -// String actualName = sonAbstractContract.sonName().send(); -// collector.logStepFail("abstractContract Calling Method Fail.","抽象合约被继承未实现方法无法执行"); -// } catch (Exception e) { -// collector.logStepPass("执行【抽象合约被继承未实现方法,调用函数sonName()】,抽象合约部分实现是无法执行方法"); -// collector.assertEqual(e.getMessage(),"Empty value (0x) returned from contract","checkout execute success."); -// //e.printStackTrace(); -// } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractANoImpTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractANoImpTest.java deleted file mode 100644 index 8b6a37b723..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractANoImpTest.java +++ /dev/null @@ -1,83 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.abstracttest; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.http.HttpService; -import com.alaya.tx.RawTransactionManager; -import com.alaya.tx.gas.ContractGasProvider; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.autotest.junit.rules.AssertCollector; -import network.platon.autotest.junit.rules.DriverService; -import network.platon.contracts.evm.v0_6_12.AbstractContractGrandpa; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 1、抽象合约未实现任何方法,验证是否可编译、部署、执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractANoImpTest { - - @Rule - public AssertCollector collector = new AssertCollector(); - - @Rule - public DriverService driverService = new DriverService(); - - // 底层链ID - private long chainId; - - @Before - public void before() { - chainId = Integer.valueOf(driverService.param.get("chainId")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约未实现执行情况",sourcePrefix = "evm/0.6.12") - public void testAbstractContract() { - Web3j web3j = null; - Credentials credentials = null; - try { - web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); - credentials = Credentials.create(driverService.param.get("privateKey")); - collector.logStepPass("initCurrentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("The node is unable to connect", e.toString()); - e.printStackTrace(); - } - ContractGasProvider provider = new ContractGasProvider(new BigInteger("50000000000"), new BigInteger("3000000")); - RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - - //1、合约部署 - String contractAddress = ""; - try { - AbstractContractGrandpa grandpaAbstractContract = AbstractContractGrandpa.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = grandpaAbstractContract.getContractAddress(); - TransactionReceipt tx = grandpaAbstractContract.getTransactionReceipt().get(); - - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //2、调用合约方法 - try{ - String name = AbstractContractGrandpa.load(contractAddress, web3j, transactionManager, provider, chainId).name().send(); - collector.logStepFail("abstractContract Calling Method Fail.","抽象合约是无法执行方法的"); - }catch (Exception e){ - collector.logStepPass("执行【抽象合约调用函数getName()】,结果无法执行抽象合约方法"); - collector.assertEqual(e.getMessage(),"Empty value (0x) returned from contract","checkout execute success."); - //e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractAPartImpTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractAPartImpTest.java deleted file mode 100644 index 37af74fc12..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractAPartImpTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.AbstractContractFather; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -/** - * @title 1、抽象合约实现部分方法,验证是否可编译、部署、执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractAPartImpTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约实现部分执行情况",sourcePrefix = "evm/0.6.12") - public void testAbstractContract() { - - AbstractContractFather fatherAbstractContract = null; - try { - //合约部署 - fatherAbstractContract = AbstractContractFather.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = fatherAbstractContract.getContractAddress(); - TransactionReceipt tx = fatherAbstractContract.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - BigInteger age = fatherAbstractContract.fatherAge().send(); - collector.logStepFail("abstractContract Calling Method Fail.","抽象合约部分实现是无法执行方法"); - } catch (Exception e) { - collector.logStepPass("执行【抽象合约部分实现调用函数fatherAge()】,抽象合约部分实现是无法执行方法"); - collector.assertEqual(e.getMessage(),"Empty value (0x) returned from contract","checkout execute success."); - //e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractBInhertAllImpTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractBInhertAllImpTest.java deleted file mode 100644 index 6839ef5aea..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractBInhertAllImpTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.AbstractContractBSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -/** - * @title 测试:抽象合约被继承,且实现抽象方法,是否可正常执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractBInhertAllImpTest extends ContractPrepareTest { - - private String name,resultName; - - @Before - public void before() { - this.prepare(); - name = driverService.param.get("name"); - resultName = driverService.param.get("resultName"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约单继承且实现执行情况",sourcePrefix = "evm/0.6.12") - public void testAbstractContract() { - - AbstractContractBSubclass abstractContractBSubclass= null; - try { - //合约部署 - abstractContractBSubclass = AbstractContractBSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = abstractContractBSubclass.getContractAddress(); - TransactionReceipt tx = abstractContractBSubclass.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //设置用户名称setParentName() - TransactionReceipt transactionReceipt = abstractContractBSubclass.setParentName(name).send(); - collector.logStepPass("执行【设置用户名称合约方法setParentName()】,生成hash:" + transactionReceipt.getTransactionHash()); - //获取用户名称parentName() - String actualValue = abstractContractBSubclass.parentName().send(); - collector.logStepPass("执行【获取用户名称 parentName()】 successful.actualValue:" + actualValue); - collector.assertEqual(actualValue,resultName, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("abstractContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractBMultipleInhertTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractBMultipleInhertTest.java deleted file mode 100644 index 985d91cf21..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractBMultipleInhertTest.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.AbstractContractCSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -/** - * @title 测试:普通合约是否可以继承多个抽象合约,且实现抽象方法,是否可以正常编译部署执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractBMultipleInhertTest extends ContractPrepareTest { - - private String name,resultName; - - @Before - public void before() { - this.prepare(); - name = driverService.param.get("name"); - resultName = driverService.param.get("resultName"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.合约多继承且实现执行情况",sourcePrefix = "evm/0.6.12") - public void testAbstractContract() { - - AbstractContractCSubclass abstractContractCSubclass= null; - try { - //合约部署 - abstractContractCSubclass = AbstractContractCSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = abstractContractCSubclass.getContractAddress(); - TransactionReceipt tx = abstractContractCSubclass.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //设置用户名称setASubName() - TransactionReceipt transactionReceipt = abstractContractCSubclass.setASubName(name).send(); - collector.logStepPass("执行【设置用户名称合约方法setASubName()】,生成hash:" + transactionReceipt.getTransactionHash()); - //获取用户名称aSubName() - String actualValue = abstractContractCSubclass.aSubName().send(); - collector.logStepPass("执行【获取用户名称 aSubName()】 successful.actualValue:" + actualValue); - collector.assertEqual(actualValue,resultName, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("abstractContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractCInhertTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractCInhertTest.java deleted file mode 100644 index 0bcacc0c61..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractCInhertTest.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.AbstractContractFSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -/** - * @title 测试:抽象合约是否可以继承抽象合约,是否可以正常编译部署执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractCInhertTest extends ContractPrepareTest { - - private String name,resultName; - - @Before - public void before() { - this.prepare(); - name = driverService.param.get("name"); - resultName = driverService.param.get("resultName"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约继承抽象合约执行情况",sourcePrefix = "evm/0.6.12") - public void testAbstractContract() { - - AbstractContractFSubclass abstractContractFSubclass= null; - try { - //合约部署 - abstractContractFSubclass = AbstractContractFSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = abstractContractFSubclass.getContractAddress(); - TransactionReceipt tx = abstractContractFSubclass.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //设置用户名称setASubName() - TransactionReceipt transactionReceipt = abstractContractFSubclass.setParentNameD(name).send(); - collector.logStepPass("执行【设置用户名称合约方法setParentNameD()】,生成hash:" + transactionReceipt.getTransactionHash()); - //获取用户名称aSubName() - String actualValue = abstractContractFSubclass.parentName().send(); - collector.logStepPass("执行【获取用户名称 parentName()】 successful.actualValue:" + actualValue); - collector.assertEqual(actualValue,resultName, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("abstractContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractDInhertTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractDInhertTest.java deleted file mode 100644 index 8f680ab634..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/abstracttest/AbstractContractDInhertTest.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.AbstractContractGSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:抽象合约是否可以继承接口(反之接口是否可以继承抽象合约) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractDInhertTest extends ContractPrepareTest { - - private String age,resultAge; - - @Before - public void before() { - this.prepare(); - age = driverService.param.get("age"); - resultAge = driverService.param.get("resultAge"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约继承接口执行情况",sourcePrefix = "evm/0.6.12") - public void testAbstractContract() { - - AbstractContractGSubclass abstractContractGSubclass= null; - try { - //合约部署 - abstractContractGSubclass = AbstractContractGSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = abstractContractGSubclass.getContractAddress(); - TransactionReceipt tx = abstractContractGSubclass.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //设置用户年龄setInterAge() - BigInteger resultValue = new BigInteger(resultAge); - TransactionReceipt transactionReceipt = abstractContractGSubclass.setInterAge(new BigInteger(age)).send(); - collector.logStepPass("执行【设置用户年龄合约方法setInterAge()】,生成hash:" + transactionReceipt.getTransactionHash()); - //获取用户名称getInterAge() - BigInteger actualValue = abstractContractGSubclass.aInterAge().send(); - collector.logStepPass("执行【获取用户年龄 getInterAge()】 successful.actualValue:" + actualValue); - collector.assertEqual(actualValue,resultValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("abstractContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractAMutipleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractAMutipleTest.java deleted file mode 100644 index 24a37af101..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractAMutipleTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.InheritContractAMutipleClass; -import network.platon.contracts.evm.v0_6_12.InheritContractBMutipleClass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:多重合约继承重名问题,遵循最远继承原则 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractAMutipleTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.合约继承重名问题(遵循最远继承原则)",sourcePrefix = "evm") - public void testInheritContracAtMutipleTest() { - - InheritContractAMutipleClass inheritContractMutipleTest1 = null; - InheritContractBMutipleClass inheritContractMutipleTest2 = null; - try { - //合约部署(InheritContractMutipleTest1) - inheritContractMutipleTest1 = InheritContractAMutipleClass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractMutipleTest1.getContractAddress(); - TransactionReceipt tx = inheritContractMutipleTest1.getTransactionReceipt().get(); - collector.logStepPass("InheritContractMutipleTest1 issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - - //合约部署(InheritContractMutipleTest1) - inheritContractMutipleTest2 = InheritContractBMutipleClass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress2 = inheritContractMutipleTest2.getContractAddress(); - TransactionReceipt tx2 = inheritContractMutipleTest2.getTransactionReceipt().get(); - collector.logStepPass("InheritContractMutipleTest2 issued successfully.contractAddress:" + contractAddress2 - + ", hash:" + tx2.getTransactionHash()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx2.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("InheritContractMutipleTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行callGetDate1() - try { - BigInteger expectBookResult = new BigInteger("1"); - BigInteger actualBigInteger = inheritContractMutipleTest1.callGetDateA().send(); - collector.logStepPass("调用合约callGetDateA()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractMutipleTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、执行callGetDate2() - try { - BigInteger expectBookResult = new BigInteger("2"); - BigInteger actualBigInteger = inheritContractMutipleTest2.callGetDateB().send(); - collector.logStepPass("调用合约callGetDateB()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractMutipleTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractBMutipleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractBMutipleTest.java deleted file mode 100644 index b6271ae386..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractBMutipleTest.java +++ /dev/null @@ -1,56 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.InheritContractSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:多重继承(父类合约存在父子关系),合约继承必须遵循先父到子的继承顺序 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractBMutipleTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.多重继承(遵循先父到子的继承顺序)",sourcePrefix = "evm/0.6.12") - public void testInheritContractMutipleTest1() { - - InheritContractSubclass inheritContractSubclass = null; - try { - //合约部署 - inheritContractSubclass = InheritContractSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractSubclass.getContractAddress(); - TransactionReceipt tx = inheritContractSubclass.getTransactionReceipt().get(); - collector.logStepPass("InheritContractSubclass issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行getDataThree() - try { - BigInteger expectResult = new BigInteger("3"); - BigInteger actualBigInteger = inheritContractSubclass.getDataThree().send(); - collector.logStepPass("调用合约getDataThree()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractOverloadComplexTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractOverloadComplexTest.java deleted file mode 100644 index a8c04c84c1..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractOverloadComplexTest.java +++ /dev/null @@ -1,113 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.InheritContractOverloadChild; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:合约函数重载(Overload)复杂情况 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractOverloadComplexTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.合约函数重载(Overload)复杂情况",sourcePrefix = "evm/0.6.12") - public void testInheritContractMutipleTest1() { - - InheritContractOverloadChild inheritContractOverloadChild = null; - try { - //合约部署 - inheritContractOverloadChild = InheritContractOverloadChild.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractOverloadChild.getContractAddress(); - TransactionReceipt tx = inheritContractOverloadChild.getTransactionReceipt().get(); - collector.logStepPass("InheritContractOverload issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行Base父类重载方法单个参数 - try { - BigInteger param1 = new BigInteger("3"); - TransactionReceipt transactionReceipt = inheritContractOverloadChild.initBase(param1).send(); - collector.logStepPass("执行【Base父类赋值重载方法单个参数 initBase()】 successful,hash:" + transactionReceipt.getTransactionHash()); - //执行查询 - BigInteger actualValue = inheritContractOverloadChild.getX().send(); - collector.logStepPass("查询赋值结果 getX() successful,actualValue:" + actualValue); - collector.assertEqual(actualValue,param1, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、执行Base父类重载方法多个参数 - try { - BigInteger param1 = new BigInteger("3"); - BigInteger param2 = new BigInteger("4"); - TransactionReceipt transactionReceipt = inheritContractOverloadChild.initBase(param1,param2).send(); - collector.logStepPass("执行【Base父类赋值重载方法多个参数 initBase()】 successful,hash:" + transactionReceipt.getTransactionHash()); - //执行查询 - BigInteger actualValueX = inheritContractOverloadChild.getX().send(); - BigInteger actualValueY = inheritContractOverloadChild.getY().send(); - collector.logStepPass("查询赋值结果 getX() successful,actualValueX:" + actualValueX); - collector.logStepPass("查询赋值结果 getY() successful,actualValueY:" + actualValueY); - collector.assertEqual(actualValueX,param1, "checkout execute success."); - collector.assertEqual(actualValueY,param2, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //3、执行BaseBase父类重载方法单个参数 - try { - BigInteger param1 = new BigInteger("3"); - BigInteger expectResult = new BigInteger("4"); - TransactionReceipt transactionReceipt = inheritContractOverloadChild.initBaseBase(param1).send(); - collector.logStepPass("执行【BaseBase父类重载方法单个参数 initBase()】 successful,hash:" + transactionReceipt.getTransactionHash()); - //执行查询 - BigInteger actualValueX = inheritContractOverloadChild.getX().send(); - collector.logStepPass("查询赋值结果 getX() successful,actualValueX:" + actualValueX); - collector.assertEqual(actualValueX,expectResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //4、执行BaseBase父类重载方法多个参数 - try { - BigInteger param1 = new BigInteger("3"); - BigInteger param2 = new BigInteger("4"); - BigInteger expectResultY = new BigInteger("3"); - BigInteger expectResultX = new BigInteger("4"); - TransactionReceipt transactionReceipt = inheritContractOverloadChild.initBaseBase(param1,param2).send(); - collector.logStepPass("执行【BaseBase父类重载方法多个参数 initBase()】 successful,hash:" + transactionReceipt.getTransactionHash()); - //执行查询 - BigInteger actualValueX = inheritContractOverloadChild.getX().send(); - BigInteger actualValueY = inheritContractOverloadChild.getY().send(); - collector.logStepPass("查询赋值结果 getX() successful,actualValueX:" + actualValueX); - collector.logStepPass("查询赋值结果 getY() successful,actualValueY:" + actualValueY); - collector.assertEqual(actualValueX,expectResultX, "checkout execute success."); - collector.assertEqual(actualValueY,expectResultY, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractOverloadTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractOverloadTest.java deleted file mode 100644 index a2b55bcadb..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractOverloadTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.InheritContractOverload; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:合约函数重载(Overload):合约可以有多个同名函数,可以有不同输入参数。 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractOverloadTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.多重继承函数重载",sourcePrefix = "evm/0.6.12") - public void testInheritContractMutipleTest1() { - - InheritContractOverload inheritContractOverload = null; - try { - //合约部署 - inheritContractOverload = InheritContractOverload.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractOverload.getContractAddress(); - TransactionReceipt tx = inheritContractOverload.getTransactionReceipt().get(); - collector.logStepPass("InheritContractOverload issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行getData1() - try { - BigInteger expectResult = new BigInteger("3"); - BigInteger actualBigInteger = inheritContractOverload.getDataA().send(); - collector.logStepPass("调用合约getData1()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、执行getData2() - try { - BigInteger expectResult = new BigInteger("6"); - BigInteger actualBigInteger = inheritContractOverload.getDataB().send(); - collector.logStepPass("调用合约getData2()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractPassParamTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractPassParamTest.java deleted file mode 100644 index 537438fc48..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/oop/inherit/InheritContractPassParamTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.evm.v0_6_12.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_6_12.InheritContractASub; -import network.platon.contracts.evm.v0_6_12.InheritContractBSub; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:继承支持传参(继承中基类构造函数的传参) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractPassParamTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.合约继承支持传参",sourcePrefix = "evm/0.6.12") - public void testInheritContractMutipleTest1() { - - InheritContractASub inheritContractSub1 = null; - InheritContractBSub inheritContractSub2 = null; - try { - //合约部署(inheritContractASub) - inheritContractSub1 = InheritContractASub.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractSub1.getContractAddress(); - TransactionReceipt tx = inheritContractSub1.getTransactionReceipt().get(); - collector.logStepPass("InheritContractASub issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - - //合约部署(inheritContractBSub) - inheritContractSub2 = InheritContractBSub.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress2 = inheritContractSub2.getContractAddress(); - TransactionReceipt tx2 = inheritContractSub2.getTransactionReceipt().get(); - collector.logStepPass("InheritContractBSub issued successfully.contractAddress:" + contractAddress2 - + ", hash:" + tx2.getTransactionHash()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx2.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("inheritContractSub deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行getDataA() - try { - BigInteger expectBookResult = new BigInteger("2"); - BigInteger actualBigInteger = inheritContractSub1.getDataA().send(); - collector.logStepPass("调用合约getDataA()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest1 Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、执行getDataB() - try { - BigInteger expectBookResult = new BigInteger("4"); - BigInteger actualBigInteger = inheritContractSub2.getDataB().send(); - collector.logStepPass("调用合约getDataB()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest1 Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/regreetest/PlatONTransfer2Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/regreetest/PlatONTransfer2Test.java deleted file mode 100644 index 0112ab5a0d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/regreetest/PlatONTransfer2Test.java +++ /dev/null @@ -1,103 +0,0 @@ -package network.platon.test.evm.v0_6_12.regreetest;//package network.platon.test.evm.regreetest; -// -//import com.alibaba.fastjson.JSONArray; -//import network.platon.autotest.junit.annotations.DataSource; -//import network.platon.autotest.junit.enums.DataSourceType; -//import network.platon.autotest.junit.rules.AssertCollector; -//import network.platon.autotest.junit.rules.DriverService; -//import network.platon.autotest.utils.FileUtil; -//import network.platon.utils.OneselfFileUtil; -//import org.junit.Before; -//import org.junit.Rule; -//import org.junit.Test; -//import org.web3j.crypto.Credentials; -//import org.web3j.protocol.Web3j; -//import org.web3j.protocol.core.DefaultBlockParameterName; -//import org.web3j.protocol.core.methods.response.TransactionReceipt; -//import org.web3j.protocol.http.HttpService; -//import org.web3j.tx.RawTransactionManager; -//import org.web3j.tx.Transfer; -//import org.web3j.utils.Convert; -// -//import java.math.BigDecimal; -//import java.math.BigInteger; -//import java.nio.file.Paths; -// -// -///** -// * @title PlatON普通有回执转账交易 -// * @description: 步骤:账户A向账户B转账amount,预期1:账户A的余额减少amount,预期2:账户B的余额增加amount -// * @author: qcxiao -// * @create: 2019/12/16 11:03 -// **/ -//public class PlatONTransfer2Test { -// -// @Rule -// public DriverService driverService = new DriverService(); -// -// @Rule -// public AssertCollector collector = new AssertCollector(); -// -// // 底层链ID -// private long chainId; -// // 发行代币的地址 -// private String transferFrom; -// // 接收代币的地址 -// private String transferTo; -// private Web3j web3j; -// // 转账的金额 -// private String amount; -// -// @Before -// public void before() { -// chainId = Integer.valueOf(driverService.param.get("chainId")); -// //transferFrom = driverService.param.get("transferFrom"); -// transferFrom = driverService.param.get("address"); -// transferTo = driverService.param.get("transferTo"); -// amount = driverService.param.get("amount"); -// } -// -// @Test -// @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", -// author = "qcxiao", showName = "network.platon.test.evm.PlatonTransferTest-普通有回执转账交易", sourcePrefix = "network.platon.test.evm") -// public void testTransfer() { -// Credentials credentials = null; -// BigInteger nonce = null; -// try { -// web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); -// credentials = Credentials.create(driverService.param.get("privateKey")); -// -// -// String filePath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "lax_bech32_all_addr_and_private_keys.json").toUri().getPath()); -// String jsonContent = OneselfFileUtil.readFile(filePath); -// -// JSONArray jsonArray = JSONArray.parseArray(jsonContent); -// for (int i = 0; i < jsonArray.size(); i++) { -// Thread.sleep(1000); // 1680 -// transferTo = jsonArray.getJSONObject(i).getString("address"); -// try { -// RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); -// Transfer transfer = new Transfer(web3j, transactionManager); -// -// amount = "100000"; -// //TransactionReceipt transactionReceipt = transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.LAT).send(); -// -// transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.LAT).sendAsync(); -// -// //BigInteger endBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); -// //collector.logStepPass("transferTo:" + transferTo + ",endBalance:" + endBalance); -// collector.logStepPass("time:" + i); -// } catch (Exception e) { -// e.printStackTrace(); -// } -// -// } -// -// } catch (Exception e) { -// collector.logStepFail("transfer fail.", e.toString()); -// e.printStackTrace(); -// } -// -// } -// -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/regreetest/PlatONTransferTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/regreetest/PlatONTransferTest.java deleted file mode 100644 index 6673b67a28..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_6_12/regreetest/PlatONTransferTest.java +++ /dev/null @@ -1,130 +0,0 @@ -package network.platon.test.evm.v0_6_12.regreetest; - -import com.alaya.bech32.Bech32; -import com.alaya.crypto.Credentials; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.PlatonGetTransactionCount; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.http.HttpService; -import com.alaya.tx.RawTransactionManager; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.autotest.junit.rules.AssertCollector; -import network.platon.autotest.junit.rules.DriverService; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; - -import java.math.BigDecimal; -import java.math.BigInteger; -import java.util.concurrent.ExecutionException; - - -/** - * @title PlatON普通有回执转账交易 - * @description: 步骤:账户A向账户B转账amount,预期1:账户A的余额减少amount,预期2:账户B的余额增加amount - * @author: qcxiao - * @create: 2019/12/16 11:03 - **/ -public class PlatONTransferTest { - - @Rule - public DriverService driverService = new DriverService(); - - @Rule - public AssertCollector collector = new AssertCollector(); - - // 底层链ID - private long chainId; - // 发行代币的地址 - private String transferFrom; - // 接收代币的地址 - private String transferTo; - private Web3j web3j; - // 转账的金额 - private String amount; - - @Before - public void before() { - chainId = Integer.valueOf(driverService.param.get("chainId")); - //transferFrom = driverService.param.get("transferFrom"); - transferFrom = driverService.param.get("address"); -// transferTo = "lax10eycqggu2yawpadtmn7d2zdw0vnmscklynzq8x"; //driverService.param.get("transferTo"); - transferTo = "atx10eycqggu2yawpadtmn7d2zdw0vnmscklcx6a9v"; //driverService.param.get("transferTo"); - amount = "1"; //driverService.param.get("amount"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "network.platon.test.evm.PlatonTransferTest-普通有回执转账交易", sourcePrefix = "evm") - public void testTransfer() { - Credentials credentials = null; - BigInteger nonce = null; - try { - web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); - //credentials = Credentials.create(driverService.param.get("privateKeyOfTransferFrom")); - credentials = Credentials.create(driverService.param.get("privateKey")); - collector.logStepPass("currentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); - //获取nonce,交易笔数 - transferFrom = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),transferFrom); - nonce = getNonce(transferFrom); - collector.logStepPass("nonce:" + nonce); - //transferTo = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),transferTo); - BigInteger initialBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("initialBalance:" + initialBalance); - - /* - //创建RawTransaction交易对象 - RawTransaction rawTransaction = RawTransaction.createEtherTransaction(nonce, new BigInteger("50000000000"), new BigInteger("3000000"), - transferTo, new BigInteger(amount)); - //签名Transaction,这里要对交易做签名 - byte[] signMessage = TransactionEncoder.signMessage(rawTransaction, chainId, credentials); - String hexValue = Numeric.toHexString(signMessage); - - //发送交易 - PlatonSendTransaction ethSendTransaction = web3j.platonSendRawTransaction(hexValue).send(); - //String hash = ethSendTransaction.getTransactionHash(); - */ - //RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - //Transfer transfer = new Transfer(web3j, transactionManager); - //TransactionReceipt transactionReceipt = transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.VON).send(); - - //TransactionReceipt transactionReceipt = Transfer.sendFunds(web3j, credentials, chainId, transferTo, new BigDecimal("1"), Convert.Unit.VON).send(); - - - TransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - Transfer transfer = new Transfer(web3j,transactionManager); - - TransactionReceipt transactionReceipt = transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.VON).send(); - - - BigInteger endBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("endBalance:" + endBalance); - collector.logStepPass("txHash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(endBalance.subtract(initialBalance).toString(), amount, "compare the balance after transfer"); - } catch (Exception e) { - collector.logStepFail("transfer fail.", e.toString()); - e.printStackTrace(); - } - - } - - /** - * 获取nonce,交易笔数 - * - * @param from - * @return - * @throws ExecutionException - * @throws InterruptedException - */ - private BigInteger getNonce(String from) throws ExecutionException, InterruptedException { - PlatonGetTransactionCount transactionCount = web3j.platonGetTransactionCount(from, DefaultBlockParameterName.LATEST).sendAsync().get(); - BigInteger nonce = transactionCount.getTransactionCount(); - return nonce; - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/complexcontracts/AtomicSwapTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/complexcontracts/AtomicSwapTest.java deleted file mode 100644 index af4a94223d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/complexcontracts/AtomicSwapTest.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.test.evm.v0_7_1.complexcontracts; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.AtomicSwap; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.util.List; - -/** - * 合约版本solidity ^0.5.17 - */ -public class AtomicSwapTest extends ContractPrepareTest { - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "complexcontracts.AtomicSwapTest", sourcePrefix = "evm/0.7.1") - public void test() { - try { - AtomicSwap atomicSwap = AtomicSwap.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = atomicSwap.getContractAddress(); - TransactionReceipt tx = atomicSwap.getTransactionReceipt().get(); - - collector.logStepPass( - "Token issued successfully.contractAddress:" + contractAddress + - ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + atomicSwap.getTransactionReceipt().get().getGasUsed()); - - - /* - * 方法作用:初始化一个map并且给定这个map的key转入多少金额 - * 参数:key、参与者地址(目前0.12.1的版本需要改为0x...)、时间戳(必须大于当前区块时间)、初始减去多少、初始转多少VON - */ -// tx = atomicSwap.initiate(stringToBytes32("hello"), "lax1uqug0zq7rcxddndleq4ux2ft3tv6dqljphydrl", new BigInteger("1690063146613"), BigInteger.valueOf(1), BigInteger.valueOf(100000)).send(); - tx = atomicSwap.initiate(stringToBytes32("hello"), "atx1uqug0zq7rcxddndleq4ux2ft3tv6dqljazusp4", new BigInteger("1690063146613"), BigInteger.valueOf(1), BigInteger.valueOf(100000)).send(); - - List emitEventData = atomicSwap.getInitiatedEvents(tx); - - System.out.println(emitEventData.get(0)._value); - - // 销毁合约 - // atomicSwap.destruct().send(); - } catch (Exception e) { - e.printStackTrace(); - } - - } - - public static byte[] stringToBytes32(String string) { - byte[] byteValue = string.getBytes(); - byte[] byteValueLen32 = new byte[32]; - System.arraycopy(byteValue, 0, byteValueLen32, 0, byteValue.length); - return byteValueLen32; - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/complexcontracts/GuessingTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/complexcontracts/GuessingTest.java deleted file mode 100644 index 37d0478215..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/complexcontracts/GuessingTest.java +++ /dev/null @@ -1,114 +0,0 @@ -package network.platon.test.evm.v0_7_1.complexcontracts; - -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import network.platon.contracts.evm.v0_7_1.Guessing; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigDecimal; -import java.math.BigInteger; - -/** - * @title 竞猜合约测试 - * @description: - * @author: hudenian - * @create: 2020/03/04 16:42 - **/ - -public class GuessingTest extends ContractPrepareTest { - private String endBlock = "12823"; //设置竞猜截止块高 - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "function.GuessingTest-竞猜合约测试", sourcePrefix = "evm/0.7.1") - public void guessingTest() { - - try { - - Guessing guessing = Guessing.deploy(web3j, transactionManager, provider, chainId, new BigInteger(endBlock)).send(); - - String contractAddress = guessing.getContractAddress(); - TransactionReceipt tx = guessing.getTransactionReceipt().get(); - collector.logStepPass("GuessingTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("GuessingTest deploy gasUsed:" + guessing.getTransactionReceipt().get().getGasUsed()); - - //查询截止块高 - endBlock = guessing.endBlock().send().toString(); - collector.logStepPass("查询截止块高为:" + endBlock); - - //查询合约余额 - String contractBalance = guessing.getBalanceOf().send().toString(); - collector.assertEqual("0", contractBalance); - - - //查询总奖池 - String balance = guessing.balance().send().toString(); - collector.logStepPass("发起竞猜前奖池总金额为:" + balance); - - //发起转账(触发竞猜操作) - Transfer transfer = new Transfer(web3j, transactionManager); - TransactionReceipt transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1000"), Convert.Unit.ATP, new BigInteger("1000000000"), new BigInteger("4712388")).send(); - collector.logStepPass("gas used>>>>>>>" + transactionReceipt.getGasUsed().toString()); - - //查询合约余额 - contractBalance = guessing.getBalanceOf().send().toString(); - - balance = guessing.balance().send().toString(); - collector.logStepPass("发起第一次竞猜前奖池总金额为:" + balance); - - //发起竞猜(客户端发起的单位是von与 lat差10^18次方) - tx = guessing.guessingWithLat(new BigInteger("1000000000000000000000")).send(); - collector.logStepPass(tx.getLogs().toString()); - collector.logStepPass(" gas used>>>>>>>" + transactionReceipt.getGasUsed()); - - //自增序列下标 - String indexKey = guessing.indexKey().send().toString(); - collector.logStepPass("自增序列下标为:" + indexKey); - - //查询总奖池 - balance = guessing.balance().send().toString(); - collector.logStepPass("发起第二次竞猜后奖池总金额为:" + balance); - - contractBalance = guessing.getBalanceOf().send().toString(); - - //自增序列下标 - indexKey = guessing.indexKey().send().toString(); - collector.logStepPass("自增序列下标为:" + indexKey); - - //查询当前调用者余额 - BigInteger originBalance = web3j.platonGetBalance(credentials.getAddress(chainId), DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("开奖前用户账户余额为>>>" + originBalance); - - //查询当前块高 - long currentBlockNumber = new Long(web3j.platonBlockNumber().send().getBlockNumber().toString()).intValue(); - - //入参为截止块高的hash,真实环境需要从浏览器获取,此处为了测试方便直接从合约取当前块高hash - byte[] blockhash = guessing.generateBlockHash(new BigInteger(String.valueOf(currentBlockNumber - 20))).send(); - - - //开奖操作 - tx = guessing.draw(blockhash).send(); - collector.logStepPass(tx.getLogs().toString()); - - - //查询当前调用者余额 - BigInteger afterBalance = web3j.platonGetBalance(credentials.getAddress(chainId), DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("开奖后用户账户余额为>>>" + afterBalance); - - - } catch (Exception e) { - collector.logStepFail("GuessingTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/complexcontracts/erc20_0513/ERC200513TokenTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/complexcontracts/erc20_0513/ERC200513TokenTest.java deleted file mode 100644 index 2a748377c3..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/complexcontracts/erc20_0513/ERC200513TokenTest.java +++ /dev/null @@ -1,144 +0,0 @@ -package network.platon.test.evm.v0_7_1.complexcontracts.erc20_0513; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.ERC200513Token; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigDecimal; -import java.math.BigInteger; - - -/** - * @title ERC200513Token测试 - * @description: 合约版本solidity ^0.5.17 - * @author: hudenian - * @create: 2019/12/28 - */ -public class ERC200513TokenTest extends ContractPrepareTest { - - //供应份额 - private String initialSupply; - - //代币名称 - private String tokenName; - - //代币简称 - private String tokenSymbol; - - //转出账号 - private String to; - - //转出金额 - private String value; - - //设置approveAddress可以创建交易者名义花费的代币数 - private String approveAddress; - - //设置approveAddress可以创建交易者名义花费的代币数approveValue - private String approveValue; - - //创建者销毁的代币数 - private String burnValue; - - - @Before - public void before() { - this.prepare(); - initialSupply = driverService.param.get("initialSupply"); - tokenName = driverService.param.get("tokenName"); - tokenSymbol = driverService.param.get("tokenSymbol"); - to = driverService.param.get("to"); - value = driverService.param.get("value"); - approveAddress = driverService.param.get("approveAddress"); - approveValue = driverService.param.get("approveValue"); - burnValue = driverService.param.get("burnValue"); - - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ERC200513TokenTest-测试0.5.13版本ERC20", sourcePrefix = "evm/0.7.1") - public void erc20Test() { - try { - - ERC200513Token eRC200513Token = ERC200513Token.deploy(web3j, transactionManager, provider, chainId, new BigInteger(initialSupply), tokenName, tokenSymbol).send(); - - String contractAddress = eRC200513Token.getContractAddress(); - TransactionReceipt tx = eRC200513Token.getTransactionReceipt().get(); - - collector.logStepPass("ERC200513Token deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + eRC200513Token.getTransactionReceipt().get().getGasUsed()); - - //获取代币名称 - String chainTokenName = eRC200513Token.getName().send().toString(); - collector.logStepPass("开始获取代币名称" + chainTokenName); - collector.assertEqual(tokenName, chainTokenName); - - //获取代币简称 - String chainTokenSymbol = eRC200513Token.getSymbol().send().toString(); - collector.logStepPass("开始获取代币简称" + chainTokenSymbol); - collector.assertEqual(tokenSymbol, chainTokenSymbol); - - //获取代币总发行量 - String chainInitialSupply = eRC200513Token.getTotalSupply().send().toString(); - collector.logStepPass("开始获取代币发行量" + chainInitialSupply); - collector.assertEqual(initialSupply + "000000000000000000", chainInitialSupply); - - //给to地址转账value值 - TransactionReceipt transactionReceipt = eRC200513Token.transfer(to, new BigInteger(value)).send(); - collector.logStepPass("发行账户向" + to + "转账" + value); - - collector.logStepPass("ERC200513Token transfer to " + to + " successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //查询to地址的余额 - String to_balance = eRC200513Token.getBalanceOf(to).send().toString(); - collector.logStepPass(to + "账户余额为:" + to_balance); - collector.assertEqual(to_balance, value); - - //查询from地址的余额 - String from_balance = eRC200513Token.getBalanceOf(walletAddress).send().toString(); - collector.logStepPass("转账后发行账户" + walletAddress + "余额为:" + from_balance); - collector.assertEqual(from_balance, new BigDecimal(chainInitialSupply).subtract(new BigDecimal(value)).toString()); - - //创建者设置approveAddress可以创建交易者名义花费的代币数为approveValue - transactionReceipt = eRC200513Token.approve(approveAddress, new BigInteger(approveValue)).send(); - collector.logStepPass("发行账户允许" + approveAddress + "账户以自己的名义花费的代币数为:" + approveValue); - - collector.logStepPass("ERC200513Token transfer to " + to + " successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //查询approveAddress可以从我的地址转出我代币数 - String chainApproveValue = eRC200513Token.getAllowance(walletAddress, approveAddress).send().toString(); - collector.logStepPass("发行账户允许" + approveAddress + "账户以自己的名义花费的代币数为:" + chainApproveValue); - collector.assertEqual(approveValue, chainApproveValue); - - //创建者销毁自己账户的指定的代币数 - transactionReceipt = eRC200513Token.burn(new BigInteger(burnValue)).send(); - collector.logStepPass("发行账销毁的代币数:" + burnValue); - - collector.logStepPass("ERC200513Token burn " + burnValue + " successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - - //查询from地址的余额 - String from_balance_afterBurn = eRC200513Token.getBalanceOf(walletAddress).send().toString(); - collector.logStepPass("发行都销毁" + burnValue + "后账户余额为" + from_balance_afterBurn); -// collector.assertEqual(from_balance,new BigDecimal(chainInitialSupply).subtract(new BigDecimal(value)).toString()); - - //销毁指定代币后获取总发行量 - String chainInitialSupply_after_burn = eRC200513Token.getTotalSupply().send().toString(); - collector.logStepPass("销毁指定代币后获取总发行量:" + chainInitialSupply_after_burn); - - - } catch (Exception e) { - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/ControlTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/ControlTest.java deleted file mode 100644 index 4bde6d94ca..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/ControlTest.java +++ /dev/null @@ -1,147 +0,0 @@ -package network.platon.test.evm.v0_7_1.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.Control; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 控制结构 - * 1. if...else - * 2. do...while - * 3. for循环 - * 4. for循环包含break - * 5. for循环包含continue - * 6. for循环包含return - * 7. 三目运算符 - * @description: - * @author: hudenian - * @create: 2019/12/30 - */ -public class ControlTest extends ContractPrepareTest { - - //需要判断年龄的是否大于20的数值 - private String ifControlValue; - - //需要判断年龄的是否大于20的数值 - private String threeControlControlValue; - - @Before - public void before() { - this.prepare(); - ifControlValue = driverService.param.get("age"); - threeControlControlValue = driverService.param.get("age"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ControlTest-控制结构测试", sourcePrefix = "evm/0.7.1") - public void controlStructCheck() { - try { - - Control control = Control.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = control.getContractAddress(); - TransactionReceipt tx = control.getTransactionReceipt().get(); - - collector.logStepPass("ControlTest 常用控制结构功能测试"); - collector.logStepPass("deploy gas used:" + control.getTransactionReceipt().get().getGasUsed()); - - //1.if控制结构验证 ifControlValue - TransactionReceipt transactionReceipt = control.ifControl(new BigInteger(ifControlValue)).send(); - collector.logStepPass("ControlTest ifControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //if控制结构验证结果值 - String chainIfControlValue = control.getIfControlResult().send(); - collector.logStepPass( "if控制结构测试获取链上的结果是:" + chainIfControlValue); - collector.assertEqual(ifControlCheck(ifControlValue),chainIfControlValue); - - //2.doWhile控制结构 - transactionReceipt = control.doWhileControl().send(); - collector.logStepPass("ControlTest doWhileControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //doWhile控制结构执行结果值 - String chaindoWhileValue = control.getdoWhileResult().send().toString(); - collector.logStepPass( "doWhile控制结构执行结果是:" + chaindoWhileValue); - collector.assertEqual("45",chaindoWhileValue);//需要调整 - - //3.forControl控制结构 - transactionReceipt = control.forControl().send(); - collector.logStepPass("ControlTest forControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //forControl控制结构执行结果值 - String chainGetForControlValue = control.getForControlResult().send().toString(); - collector.logStepPass( "forControl控制结构执行结果是:" + chainGetForControlValue); - collector.assertEqual("45",chainGetForControlValue);//需要调整 - - //4. for循环包含break控制结构 - transactionReceipt = control.forBreakControl().send(); - collector.logStepPass("ControlTest forBreakControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //for循环包含break控制结构执行结果值 - String chainForBreakControlValue = control.getForBreakControlResult().send().toString(); - collector.logStepPass( "for循环包含break控制结构执行结果是:" + chainForBreakControlValue); - collector.assertEqual("1",chainForBreakControlValue);//需要调整 - - //5. for循环包含continue控制结构 - transactionReceipt = control.forContinueControl().send(); - collector.logStepPass("ControlTest forContinueControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - // for循环包含continue控制结构执行结果值 - String chainForContinueControlValue = control.getForContinueControlResult().send().toString(); - collector.logStepPass( " for循环包含continue控制结构执行结果是:" + chainForContinueControlValue); - collector.assertEqual("25",chainForContinueControlValue);//需要调整 - - //6. for循环包含return控制结构 - transactionReceipt = control.forReturnControl().send(); - collector.logStepPass("ControlTest forReturnControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //for循环包含return执行结果值 - String chainForReturnControlValue = control.getForReturnControlResult().send().toString(); - collector.logStepPass( "for循环包含return执行结果是:" + chainForReturnControlValue); - collector.assertEqual("10",chainForReturnControlValue);//需要调整 - - //7.三目运算符控制结构 - transactionReceipt = control.forThreeControlControl(new BigInteger(threeControlControlValue)).send(); - collector.logStepPass("ControlTest forThreeControlControl successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - //三目运算符控制结构执行结果值 - String chainThreeControlControlValue = control.getForThreeControlControlResult().send().toString(); - collector.logStepPass( "三目运算符控制结构执行结果是:" + chainThreeControlControlValue); - collector.assertEqual(Integer.valueOf(threeControlControlValue).intValue()> 20?"less than 20":"more than 20",chainThreeControlControlValue);//需要调整 - - - - } catch (Exception e) { - collector.logStepFail("ControlTest controlStructCheck process fail.", e.toString()); - e.printStackTrace(); - } - } - - public static String ifControlCheck(String ifControlValue){ - int age = Integer.valueOf(ifControlValue); - String ifControlResult = ""; - if(age < 20){ - ifControlResult = "you are a young man"; - }else if (age < 60){ - ifControlResult = "you are a middle man"; - }else { - ifControlResult = "you are a old man"; - } - return ifControlResult; - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/DoWhileErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/DoWhileErrorTest.java deleted file mode 100644 index 7de4c3cda4..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/DoWhileErrorTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_7_1.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.DoWhileError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * dowhile控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 11:09 - */ -public class DoWhileErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ControlTest-dowhile控制结构测试", sourcePrefix = "evm/0.7.1") - public void doWhileStruct() { - try { - - DoWhileError doWhileError = DoWhileError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = doWhileError.getContractAddress(); - TransactionReceipt tx = doWhileError.getTransactionReceipt().get(); - - collector.logStepPass("DoWhileErrorTest dowhile控制结构返回的结构体如果是指针需要提前初始化"); - collector.logStepPass("deploy gas used:" + doWhileError.getTransactionReceipt().get().getGasUsed()); - - //1.if控制结构验证 ifControlValue - Boolean doWhileFlg = doWhileError.getDoWhileControlRes().send(); - - collector.logStepPass( "DoWhileErrorTest 测试获取链上的结果是:" + doWhileFlg); - collector.assertEqual(false,doWhileFlg); - - } catch (Exception e) { - collector.logStepFail("DoWhileErrorTest process fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/ForErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/ForErrorTest.java deleted file mode 100644 index ea7a7e6b79..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/ForErrorTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.evm.v0_7_1.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.ForError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * for控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 18:09 - */ -public class ForErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ForErrorTest-for控制结构测试", sourcePrefix = "evm/0.7.1") - public void forStruct() { - try { - - ForError forError = ForError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = forError.getContractAddress(); - TransactionReceipt tx = forError.getTransactionReceipt().get(); - - collector.logStepPass("ForErrorTest for控制结构返回的结构体如果是指针需要提前初始化"); - collector.logStepPass("deploy gas used:" + forError.getTransactionReceipt().get().getGasUsed()); - - //1.for控制结构验证 - Boolean forFlg = forError.getForControlRes().send(); - - collector.logStepPass( "ForErrorTest->getForControlRes 测试获取链上的结果是:" + forFlg); - collector.assertEqual(false,forFlg); - - //2.for控制结构验证 - Boolean forFlg1 = forError.getForControlRes1().send(); - - collector.logStepPass( "ForErrorTest->getForControlRes1测试获取链上的结果是:" + forFlg1); - collector.assertEqual(false,forFlg1); - - } catch (Exception e) { - collector.logStepFail("ForErrorTest testCase process fail",e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/IfErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/IfErrorTest.java deleted file mode 100644 index 756f639266..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/IfErrorTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.evm.v0_7_1.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.IfError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * for控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 11:09 - */ -public class IfErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ForErrorTest-for控制结构测试", sourcePrefix = "evm/0.7.1") - public void ifStruct() { - try { - - IfError ifError = IfError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = ifError.getContractAddress(); - TransactionReceipt tx = ifError.getTransactionReceipt().get(); - - collector.logStepPass("IfErrorTest if控制结构返回的结构体如果是指针需要提前初始化"); - collector.logStepPass("deploy gas used:" + ifError.getTransactionReceipt().get().getGasUsed()); - - //1.if控制结构验证 ifControlValue - Boolean ifFlg = ifError.getIfControlRes().send(); - - collector.logStepPass( "IfErrorTest 测试获取链上的结果是:" + ifFlg); - collector.assertEqual(false,ifFlg); - - //2.if控制结构验证 ifControlValue - Boolean ifFlg1 = ifError.getIfControlRes1().send(); - - collector.logStepPass( "IfErrorTest 测试获取链上的结果是:" + ifFlg1); - collector.assertEqual(false,ifFlg1); - - } catch (Exception e) { - collector.logStepFail("IfErrorTest testCase process fail",e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/ShortCircuitErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/ShortCircuitErrorTest.java deleted file mode 100644 index fd58a84277..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/ShortCircuitErrorTest.java +++ /dev/null @@ -1,56 +0,0 @@ -package network.platon.test.evm.v0_7_1.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.ShortCircuitError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -/** - * && || 短路语法 - * - * @author hudenian - * @dev 2020/1/6 19:54 - */ -public class ShortCircuitErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ShortCircuitErrorTest-短路语法", sourcePrefix = "evm/0.7.1") - public void shortCircuitStruct() { - try { - - ShortCircuitError shortCircuitError = ShortCircuitError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = shortCircuitError.getContractAddress(); - TransactionReceipt tx = shortCircuitError.getTransactionReceipt().get(); - - collector.logStepPass("ShortCircuitError deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + shortCircuitError.getTransactionReceipt().get().getGasUsed()); - - - Boolean fFlg = shortCircuitError.getF().send(); - - collector.logStepPass( "ShortCircuitErrorTest 测试获取链上的结果是:" + fFlg); - collector.assertEqual(false,fFlg); - - - Boolean gflg = shortCircuitError.getG().send(); - - collector.logStepPass( "ShortCircuitErrorTest 测试获取链上的结果是:" + gflg); - collector.assertEqual(false,gflg); - - } catch (Exception e) { - collector.logStepFail("ShortCircuitErrorTest testCase process fail",e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/WhileErrorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/WhileErrorTest.java deleted file mode 100644 index 768784c604..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/controlstruct/WhileErrorTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_7_1.controlstruct; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.WhileError; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * for控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/7 13:42 - */ -public class WhileErrorTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "WhileErrorTest-while控制结构测试", sourcePrefix = "evm/0.7.1") - public void whileStruct() { - try { - - WhileError whileError = WhileError.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = whileError.getContractAddress(); - TransactionReceipt tx = whileError.getTransactionReceipt().get(); - - collector.logStepPass("WhileErrorTest for控制结构返回的结构体如果是指针类型需要提前初始化"); - collector.logStepPass("deploy gas used:" + whileError.getTransactionReceipt().get().getGasUsed()); - - //1.while控制结构验证 - Boolean whileFlg = whileError.getWhileControlRes().send(); - - collector.logStepPass( "WhileErrorTest->whileStruct 测试获取链上的结果是:" + whileFlg); - collector.assertEqual(false,whileFlg); - - } catch (Exception e) { - collector.logStepFail("WhileErrorTest testCase process fail",e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/createcontract/CreateContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/createcontract/CreateContractTest.java deleted file mode 100644 index 77b0dc24c3..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/createcontract/CreateContractTest.java +++ /dev/null @@ -1,38 +0,0 @@ -package network.platon.test.evm.v0_7_1.createcontract; - -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_7_1.CreateContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title new关键字创建合约测试 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class CreateContractTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "albedo", showName = "createcontract.CreateContractTest-new创建合约", sourcePrefix = "evm/0.7.1") - public void testNewContract() { - try { - prepare(); - CreateContract createContract = CreateContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = createContract.getContractAddress(); - String transactionHash = createContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("CreateContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + createContract.getTransactionReceipt().get().getGasUsed()); - Tuple2 result = createContract.getTargetCreateContractData().send(); - Tuple2 expect = new Tuple2<>(new BigInteger("1000"),new BigInteger("0")); - collector.assertEqual(result, expect, "checkout new contract param"); - } catch (Exception e) { - collector.logStepFail("CreateContractTest testNewContract failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/crossContractCall/DelegatecallCaller050Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/crossContractCall/DelegatecallCaller050Test.java deleted file mode 100644 index 3f14ba7abf..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/crossContractCall/DelegatecallCaller050Test.java +++ /dev/null @@ -1,74 +0,0 @@ -package network.platon.test.evm.v0_7_1.crossContractCall; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.DelegatecallCallee_050; -import network.platon.contracts.evm.v0_7_1.DelegatecallCaller_050; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * @title 0.5.0跨合约调用者, 修改的是调用者中的状态变量的值 - * @description: - * @author: hudenian - * @create: 2019/12/30 - */ -public class DelegatecallCaller050Test extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "DelegatecallCaller050Test-0.5.0跨合约调用者", sourcePrefix = "evm/0.7.1") - public void caller050Test() { - try { - //调用者合约地址 - DelegatecallCaller_050 delegatecallCaller_050 = DelegatecallCaller_050.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = delegatecallCaller_050.getContractAddress(); - TransactionReceipt tx = delegatecallCaller_050.getTransactionReceipt().get(); - collector.logStepPass("DelegatecallCaller_050 deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + delegatecallCaller_050.getTransactionReceipt().get().getGasUsed()); - - - //被调用者合约地址 - DelegatecallCallee_050 delegatecallCallee050 = DelegatecallCallee_050.deploy(web3j, transactionManager, provider, chainId).send(); - String calleeContractAddress = delegatecallCallee050.getContractAddress(); - TransactionReceipt tx1 = delegatecallCallee050.getTransactionReceipt().get(); - collector.logStepPass("delegatecallCallee050 deploy successfully.contractAddress:" + calleeContractAddress + ", hash:" + tx1.getTransactionHash()); - collector.logStepPass("deploy gas used:" + delegatecallCallee050.getTransactionReceipt().get().getGasUsed()); - - //查询调用者x值 - String callerX = delegatecallCaller_050.getCallerX().send().toString(); - collector.logStepPass("DelegatecallCaller_050 合约中X的值为:" + callerX); - - //查询被调用者x值 - String calleeX = delegatecallCallee050.getCalleeX().send().toString(); - collector.logStepPass("DelegatecallCallee_050 合约中X的值为:" + calleeX); - - - TransactionReceipt tx2 = delegatecallCaller_050.inc_delegatecall(calleeContractAddress).send(); - collector.logStepPass("执行跨合约调用后,hash:" + tx2.getTransactionHash()); - - //查询调用者x值 - String callerAfterX = delegatecallCaller_050.getCallerX().send().toString(); - collector.logStepPass("跨合约调用后,DelegatecallCaller 合约中X的值为:" + callerAfterX); - - //查询被调用者x值 - String calleeAfterX = delegatecallCallee050.getCalleeX().send().toString(); - collector.logStepPass("跨合约调用后,DelegatecallCallee_050 合约中X的值为:" + calleeAfterX); - - - } catch (Exception e) { - collector.logStepFail("DelegatecallCaller050Test process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/crossContractCall/DelegatecallCallerTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/crossContractCall/DelegatecallCallerTest.java deleted file mode 100644 index c768b250d5..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/crossContractCall/DelegatecallCallerTest.java +++ /dev/null @@ -1,74 +0,0 @@ -package network.platon.test.evm.v0_7_1.crossContractCall; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.DelegatecallCallee; -import network.platon.contracts.evm.v0_7_1.DelegatecallCaller; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * @title 0.5.13跨合约调用者,修改的是调用者中的状态变量的值 - * @description: - * @author: hudenian - * @create: 2019/12/28 - */ -public class DelegatecallCallerTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "DelegatecallCallerTest-跨合约调用者", sourcePrefix = "evm/0.7.1") - public void crossContractCaller() { - try { - //调用者合约地址 - DelegatecallCaller delegatecallCaller = DelegatecallCaller.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = delegatecallCaller.getContractAddress(); - TransactionReceipt tx = delegatecallCaller.getTransactionReceipt().get(); - collector.logStepPass("DelegatecallCaller deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + delegatecallCaller.getTransactionReceipt().get().getGasUsed()); - - - //被调用者合约地址 - DelegatecallCallee delegatecallCallee = DelegatecallCallee.deploy(web3j, transactionManager, provider, chainId).send(); - String calleeContractAddress = delegatecallCallee.getContractAddress(); - TransactionReceipt tx1 = delegatecallCallee.getTransactionReceipt().get(); - collector.logStepPass("DelegatecallCallee deploy successfully.contractAddress:" + calleeContractAddress + ", hash:" + tx1.getTransactionHash()); - collector.logStepPass("deploy gas used:" + delegatecallCallee.getTransactionReceipt().get().getGasUsed()); - - //查询调用者x值 - String callerX = delegatecallCaller.getCallerX().send().toString(); - collector.logStepPass("DelegatecallCaller 合约中X的值为:"+callerX); - - //查询被调用者x值 - String calleeX = delegatecallCallee.getCalleeX().send().toString(); - collector.logStepPass("DelegatecallCallee 合约中X的值为:"+calleeX); - - - TransactionReceipt tx2 = delegatecallCaller.inc_delegatecall(calleeContractAddress).send(); - collector.logStepPass("执行跨合约调用后,hash:" + tx2.getTransactionHash()); - - //查询调用者x值 - String callerAfterX = delegatecallCaller.getCallerX().send().toString(); - collector.logStepPass("跨合约调用后,DelegatecallCaller 合约中X的值为:"+callerAfterX); - - //查询被调用者x值 - String calleeAfterX = delegatecallCallee.getCalleeX().send().toString(); - collector.logStepPass("跨合约调用后,DelegatecallCallee 合约中X的值为:"+calleeAfterX); - - - } catch (Exception e) { - collector.logStepFail("DelegatecallCallerTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/crossContractCall/ThreeContractCallTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/crossContractCall/ThreeContractCallTest.java deleted file mode 100644 index 3e8a6d0632..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/crossContractCall/ThreeContractCallTest.java +++ /dev/null @@ -1,94 +0,0 @@ -package network.platon.test.evm.v0_7_1.crossContractCall; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.CallerOne; -import network.platon.contracts.evm.v0_7_1.CallerThree; -import network.platon.contracts.evm.v0_7_1.CallerTwo; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - - -/** - * @title 0.5.13三个合约间跨合约调用 delegatecall只会修改第一个合约中的状态变量 - * @description: - * @author: hudenian - * @create: 2020/1/9 - */ -public class ThreeContractCallTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "ThreeContractCallTest-三个合约间跨合约调用者", sourcePrefix = "evm/0.7.1") - public void threeContractCaller() { - try { - //第一个合约 - CallerOne callerOne = CallerOne.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = callerOne.getContractAddress(); - TransactionReceipt tx = callerOne.getTransactionReceipt().get(); - collector.logStepPass("CallerOne deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + callerOne.getTransactionReceipt().get().getGasUsed()); - - - //第二个合约 - CallerTwo callerTwo = CallerTwo.deploy(web3j, transactionManager, provider, chainId).send(); - String callerTwoContractAddress = callerTwo.getContractAddress(); - tx = callerTwo.getTransactionReceipt().get(); - collector.logStepPass("CallerTwo deploy successfully.contractAddress:" + callerTwoContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + callerTwo.getTransactionReceipt().get().getGasUsed()); - - //第三个合约 - CallerThree callerThree = CallerThree.deploy(web3j, transactionManager, provider, chainId).send(); - String callerThreeContractAddress = callerThree.getContractAddress(); - tx = callerThree.getTransactionReceipt().get(); - collector.logStepPass("DelegatecallCallee deploy successfully.contractAddress:" + callerThreeContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + callerThree.getTransactionReceipt().get().getGasUsed()); - - - - //查询第一个合约x值 - String callerOneX = callerOne.getCallerX().send().toString(); - collector.logStepPass("CallerOne 合约中X的值为:"+callerOneX); - - //查询第二个合约x值 - String callerTwoX = callerTwo.getCalleeX().send().toString(); - collector.logStepPass("CallerTwo 合约中X的值为:"+callerTwoX); - - //查询第三个合约x值 - String callerThreeX = callerThree.getCalleeThreeX().send().toString(); - collector.logStepPass("CallerThree 合约中X的值为:"+callerThreeX); - - - TransactionReceipt tx2 = callerOne.inc_delegatecall().send(); - collector.logStepPass("执行跨合约调用后,hash:" + tx2.getTransactionHash()); - - //查询第一个合约x值 - callerOneX = callerOne.getCallerX().send().toString(); - collector.logStepPass("CallerOne 合约中X的值为:"+callerOneX); - collector.assertEqual("1",callerOneX); - - //查询第二个合约x值 - callerTwoX = callerTwo.getCalleeX().send().toString(); - collector.logStepPass("CallerTwo 合约中X的值为:"+callerTwoX); - collector.assertEqual("0",callerTwoX); - - //查询第三个合约x值 - callerThreeX = callerThree.getCalleeThreeX().send().toString(); - collector.logStepPass("CallerThree 合约中X的值为:"+callerThreeX); - collector.assertEqual("0",callerThreeX); - - } catch (Exception e) { - collector.logStepFail("ThreeContractCallTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/crossContractCall/WithBackCallerTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/crossContractCall/WithBackCallerTest.java deleted file mode 100644 index 89ef6edd08..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/crossContractCall/WithBackCallerTest.java +++ /dev/null @@ -1,100 +0,0 @@ -package network.platon.test.evm.v0_7_1.crossContractCall; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.WithBackCallee; -import network.platon.contracts.evm.v0_7_1.WithBackCaller; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigDecimal; -import java.math.BigInteger; - - -/** - * @title 0.5.13跨合约调用者,接收返回值 - * @description: - * @author: hudenian - * @create: 2019/12/28 - */ -public class WithBackCallerTest extends ContractPrepareTest { - - //需要进行double的值 - private String doubleValue = "10"; - - //需要前缀hello的值 - private String helloValue = "hudenian"; - - @Before - public void before() { - this.prepare(); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "WithBackCallerTest-跨合约调用者对反回值进行编码与解码", sourcePrefix = "evm/0.7.1") - public void crossContractCaller() { - try { - //调用者合约地址 - WithBackCaller withBackCaller = WithBackCaller.deploy(web3j, transactionManager, provider, chainId).send(); - String callerContractAddress = withBackCaller.getContractAddress(); - TransactionReceipt tx = withBackCaller.getTransactionReceipt().get(); - collector.logStepPass("WithBackCaller deploy successfully.contractAddress:" + callerContractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + withBackCaller.getTransactionReceipt().get().getGasUsed()); - - - //被调用者合约地址 - WithBackCallee withBackCallee = WithBackCallee.deploy(web3j, transactionManager, provider, chainId).send(); - String calleeContractAddress = withBackCallee.getContractAddress(); - TransactionReceipt tx1 = withBackCallee.getTransactionReceipt().get(); - collector.logStepPass("WithBackCallee deploy successfully.contractAddress:" + calleeContractAddress + ", hash:" + tx1.getTransactionHash()); - collector.logStepPass("deploy gas used:" + withBackCallee.getTransactionReceipt().get().getGasUsed()); - - //数值类型跨合约调用 - TransactionReceipt tx2 = withBackCaller.callDoublelTest(calleeContractAddress,new BigInteger(doubleValue)).send(); - collector.logStepPass("WithBackCaller callDoublelTest successfully hash:" + tx2.getTransactionHash()); - //获取数值类型跨合约调用的结果 - String chainDoubleValue = withBackCaller.getuintResult().send().toString(); - collector.logStepPass("获取数值类型跨合约调用的结果值为:" + chainDoubleValue); - collector.assertEqual(new BigDecimal(doubleValue).multiply(new BigDecimal("2")),new BigDecimal(chainDoubleValue)); - - - //字符串类型跨合约调用 - tx2 = withBackCaller.callgetNameTest(calleeContractAddress,helloValue).send(); - collector.logStepPass("WithBackCaller callDoublelTest successfully hash:" + tx2.getTransactionHash()+"gas消耗值为:"+tx2.getGasUsed()); - //获取字符串类型跨合约调用 - String callerStringResult = withBackCaller.getStringResult().send().toString(); - collector.logStepPass("获取字符串类型跨合约调用的结果值为:" + callerStringResult); - collector.assertEqual(callerStringResult,"hello"+helloValue); - - - //调用被调用合约,指定足够的gas - tx2 = withBackCaller.callgetNameTestWithGas(calleeContractAddress,helloValue,new BigInteger("90000")).send(); - collector.logStepPass("withBackCaller callgetNameTestWithGas successfully hash:" + tx2.getTransactionHash()+"gas消耗值为:"+tx2.getGasUsed()); - //获取字符串类型跨合约调用 - callerStringResult = withBackCaller.getStringResult().send().toString(); - collector.logStepPass("调用被调用合约,指定足够的gas查询到的返回值为:" + callerStringResult); - collector.assertEqual(callerStringResult,"hellogashudenian"); - - //调用被调用合约,指定gas不足 - try { - tx2 = withBackCaller.callgetNameTestWithGas(calleeContractAddress, helloValue, new BigInteger("100")).send(); - - collector.logStepPass("withBackCaller callgetNameTestWithGas with less gas hash:" + tx2.getTransactionHash() + "gas消耗值为:" + tx2.getGasUsed()); - //获取字符串类型跨合约调用 - callerStringResult = withBackCaller.getStringResult().send().toString(); - collector.logStepPass("调用被调用合约,指定gas不足时查询到的返回值为:" + callerStringResult); - }catch(Exception e1){ - collector.logStepPass("指定gas不足时,调用合约失败!"); - } - - - } catch (Exception e) { - collector.logStepFail("WithBackCallerTest process fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeConstantAddressTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeConstantAddressTest.java deleted file mode 100644 index 06c6e23bcf..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeConstantAddressTest.java +++ /dev/null @@ -1,86 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.BasicDataTypeConstantContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:合约字面常量地址Address - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeConstantAddressTest extends ContractPrepareTest { - - private String amountValue1; - private String amountValue2; - private String amountSumValue; - - @Before - public void before() { - this.prepare(); - amountValue1 = driverService.param.get("amountValue1"); - amountValue2 = driverService.param.get("amountValue2"); - amountSumValue = driverService.param.get("amountSumValue"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeConstantContractTest.合约地址Address常量",sourcePrefix = "evm/0.7.1") - public void testBasicDataTypeContract() { - - BasicDataTypeConstantContract basicDataTypeConstantContract = null; - try { - //合约部署 - basicDataTypeConstantContract = BasicDataTypeConstantContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeConstantContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeConstantContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeConstantContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:address类型,转账给指定地址 - try { - int expectValue = Integer.parseInt(amountSumValue); -// String myContractAddress = "lax132dnv620rmht2qxgfgvmkdqn0vz3vtkfw87hjs"; - String myContractAddress = "atx132dnv620rmht2qxgfgvmkdqn0vz3vtkfjjx2s6"; - - //1)、查询地址余额 - BigInteger contractBalance = basicDataTypeConstantContract.getBalance(myContractAddress).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 1)、查询地址余额 getBalance() successfully.contractBalance:" + contractBalance); - - //2)、查询当前转账人账户余额getBalance() - BigInteger currentTransferUserBalance = basicDataTypeConstantContract.getBalance(walletAddress).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 2)、转账人账户余额 getBalance() successfully.currentTransferUserBalance: " + currentTransferUserBalance); - - //3)、给当前地址第一次转账 - TransactionReceipt transactionReceipt = basicDataTypeConstantContract.goTransfer(myContractAddress,new BigInteger(amountValue1)).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 3)、给当前地址转账 goTransfer() successfully hash:" + transactionReceipt.getTransactionHash()); - - //4)、给当前地址第二次转账 - TransactionReceipt transactionReceipt1 = basicDataTypeConstantContract.goSend(myContractAddress,new BigInteger(amountValue2)).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 4)、给当前地址转账 goSend() successfully hash:" + transactionReceipt1.getTransactionHash()); - - //5)、查询转账完毕,地址余额 - BigInteger currentContractBalance = basicDataTypeConstantContract.getBalance(myContractAddress).send(); - collector.logStepPass("BasicDataTypeConstantContract 执行 5)、查询转账完毕,地址余额 getBalance() successfully currentContractBalance:" + currentContractBalance); - int actualValue = currentContractBalance.intValue() - contractBalance.intValue(); - - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeConstantContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeConstantContractTest.java deleted file mode 100644 index 8577415271..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeConstantContractTest.java +++ /dev/null @@ -1,174 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple3; -import network.platon.contracts.evm.v0_7_1.BasicDataTypeConstantContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:合约基本数据类型字面常量 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeConstantContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeConstantContractTest.合约基本数据类型字面常量",sourcePrefix = "evm/0.7.1") - public void testBasicDataTypeContract() { - - BasicDataTypeConstantContract basicDataTypeConstantContract = null; - try { - //合约部署 - basicDataTypeConstantContract = BasicDataTypeConstantContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeConstantContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeConstantContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeConstantContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:address类型,获取当前合约余额 - try { - BigInteger expectValue = new BigInteger("0"); - //执行getCurrentBalance() - BigInteger actualValue = basicDataTypeConstantContract.getCurrentBalance().send(); - collector.logStepPass("BasicDataTypeConstantContract 执行查询当前合约中余额 getCurrentBalance() successfully contractBalance:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、验证:字符串字面常量,进行赋值 - try { - String expectValue = "hello"; - //执行getCurrentBalance() - String actualValue = basicDataTypeConstantContract.getStrA().send(); - collector.logStepPass("BasicDataTypeConstantContract 字符串字面常量进行赋值 执行getStrA() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、验证:字符串是特殊的动态长度字节数组,获取长度 - try { - BigInteger expectValue = new BigInteger("5"); - //执行getCurrentBalance() - BigInteger actualValue = basicDataTypeConstantContract.getStrALength().send(); - collector.logStepPass("BasicDataTypeConstantContract 验证字符串字面常量 执行getStrALength() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //4、验证:字符串是特殊的动态长度字节数组,进行转换 - try { - String expectValue = "aello"; - //赋值执行setStr1() - String actualValue = basicDataTypeConstantContract.setStrA().send(); - collector.logStepPass("BasicDataTypeConstantContract 验证字符串字面常量 执行setStrA() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //5、验证:十六进制字面常量,定义赋值取值 - try { - //执行getHexLiteral() - String expectValue = "c8"; - byte[] byteValue = basicDataTypeConstantContract.getHexLiteraA().send(); - String actualValue = DataChangeUtil.bytesToHex(byteValue); - collector.logStepPass("BasicDataTypeConstantContract 验证十六进制字面常量 执行getHexLiteraA() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - - //执行getHexLitera2() - String expectValue2 = "01f4"; - byte[] byteValue2 = basicDataTypeConstantContract.getHexLiteraB().send(); - String actualValue2 = DataChangeUtil.bytesToHex(byteValue2); - collector.logStepPass("BasicDataTypeConstantContract 验证十六进制字面常量 执行getHexLiteraB() successfully actualValue2:" + actualValue2); - collector.assertEqual(actualValue2,expectValue2, "checkout execute success."); - - //执行getHexLitera3() - String expectValueA = "01f4"; - String expectValueB = "01"; - String expectValueC = "f4"; - Tuple3 tuple3 = basicDataTypeConstantContract.getHexLiteraC().send(); - String actualValueA = DataChangeUtil.bytesToHex(tuple3.getValue1()); - String actualValueB = DataChangeUtil.bytesToHex(tuple3.getValue2()); - String actualValueC = DataChangeUtil.bytesToHex(tuple3.getValue3()); - collector.logStepPass("BasicDataTypeConstantContract 验证十六进制字面常量 执行getHexLiteraC() successfully actualValueA:" + actualValueA + - ", actualValueB:" + actualValueB + ", actualValueC:" + actualValueC); - - collector.assertEqual(actualValueA,expectValueA, "checkout execute success."); - collector.assertEqual(actualValueB,expectValueB, "checkout execute success."); - collector.assertEqual(actualValueC,expectValueC, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //6、验证:枚举类型 - try { - BigInteger expectValue1 = new BigInteger("1"); - BigInteger expectValue2 = new BigInteger("3"); - //执行getSeason1() - BigInteger actualValue1 = basicDataTypeConstantContract.getSeasonA().send(); - collector.logStepPass("BasicDataTypeConstantContract 验证枚举类型执行 getSeasonA() successfully actualValue1:" + actualValue1); - collector.assertEqual(actualValue1,expectValue1, "checkout execute success."); - - //执行getSeason2() - BigInteger actualValue2 = basicDataTypeConstantContract.getSeasonB().send(); - collector.logStepPass("BasicDataTypeConstantContract 验证枚举类型执行 getSeasonB() successfully actualValue2:" + actualValue2); - collector.assertEqual(actualValue2,expectValue2, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //7、验证:有理数常量 - try { - BigInteger expectValue1 = new BigInteger("3"); - BigInteger expectValue2 = new BigInteger("20000000000"); - BigInteger expectValue3 = new BigInteger("3000000000000000"); - //执行getValue() - Tuple3 tuple3 = basicDataTypeConstantContract.getValue().send(); - BigInteger actualValue1 = tuple3.getValue1(); - BigInteger actualValue2 = tuple3.getValue2(); - BigInteger actualValue3 = tuple3.getValue3(); - - collector.logStepPass("BasicDataTypeConstantContract 验证有理数常量执行 getValue() successfully actualValue1:" + actualValue1 + - ", actualValue2: " + actualValue2 + ", actualValue3:" + actualValue3) ; - collector.assertEqual(actualValue1,expectValue1, "checkout execute success."); - collector.assertEqual(actualValue2,expectValue2, "checkout execute success."); - collector.assertEqual(actualValue3,expectValue3, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("BasicDataTypeConstantContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeContractTest.java deleted file mode 100644 index 3fce173008..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeContractTest.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.BasicDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:合约基本数据类型 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeUintOverTest.合约基本数据类型",sourcePrefix = "evm/0.7.1") - public void testBasicDataTypeContract() { - - BasicDataTypeContract basicDataTypeContract = null; - try { - //合约部署 - basicDataTypeContract = BasicDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:定长字节数组 - try { - BigInteger expectLength = new BigInteger("2"); - //赋值执行getBytes1Length() - BigInteger actualLength = basicDataTypeContract.getBytes1Length().send(); - collector.logStepPass("BasicDataTypeContract 执行getBytes1Length() successfully actualValue:" + actualLength); - collector.assertEqual(actualLength,expectLength, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、验证:变长字节数组 - try { - BigInteger expectLength = new BigInteger("3"); - //赋值执行getBytesLength() - BigInteger actualLength = basicDataTypeContract.getBytesLength().send(); - collector.logStepPass("BasicDataTypeContract 执行getBytesLength() successfully actualValue:" + actualLength); - collector.assertEqual(actualLength,expectLength, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeDeleteContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeDeleteContractTest.java deleted file mode 100644 index 70bb8f96a0..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeDeleteContractTest.java +++ /dev/null @@ -1,132 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tuples.generated.Tuple6; -import network.platon.contracts.evm.v0_7_1.BasicDataTypeDeleteContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:数据类型操作符delete - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeDeleteContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeDelete.数据类型操作符delete",sourcePrefix = "evm/0.7.1") - public void testBasicDataTypeContract() { - BasicDataTypeDeleteContract basicDataTypeDeleteContract = null; - try { - //合约部署 - basicDataTypeDeleteContract = BasicDataTypeDeleteContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeDeleteContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeDeleteContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeDelete issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、delete基本数据类型 - try { - //初始化赋值 - TransactionReceipt initTx = basicDataTypeDeleteContract.initBasicData().send(); - collector.logStepPass("BasicDataTypeDelete 【执行初始化赋值操作 initBasicData()】successfully hash:" + initTx.getTransactionHash()); - //执行delete基本数据类型 - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteBasicData().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete基本数据类型 deleteBasicData()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取基本数据类型数值 - Tuple6 tuple6 = basicDataTypeDeleteContract.getBasicData().send(); - collector.logStepPass("BasicDataTypeDelete 【执行获取基本数据类型数值】successfully value:" + tuple6.toString()); - Boolean boolActual = tuple6.getValue1(); - BigInteger uintActual = tuple6.getValue2(); - String addrStr = tuple6.getValue3(); - byte[] bytesActual = tuple6.getValue4(); - String str = tuple6.getValue5(); - BigInteger intActual = tuple6.getValue6(); - collector.assertEqual(boolActual,false, "checkout delete bool execute success."); - collector.assertEqual(uintActual,new BigInteger("0"), "checkout delete uint execute success."); -// collector.assertEqual(addrStr,"lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmscn5j", "checkout delete address execute success."); - collector.assertEqual(addrStr,"atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc", "checkout delete address execute success."); - //collector.assertEqual(bytesActual,new byte[]("0x0"), "checkout delete bytes execute success."); - collector.assertEqual(str,"", "checkout delete string execute success."); - collector.assertEqual(intActual,new BigInteger("0"), "checkout delete int execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、delete结构体 - try { - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteStruct().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete结构体 deleteStruct()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取结构体数值 - Tuple2 tuple2 =basicDataTypeDeleteContract.getStruct().send(); - collector.logStepPass("BasicDataTypeDelete 【执行获取结构体数值】successfully value:" + tuple2.toString()); - BigInteger uintActual = tuple2.getValue1(); - String addrStr = tuple2.getValue2(); - collector.assertEqual(uintActual,new BigInteger("0"), "checkout delete struct execute success."); - collector.assertEqual(addrStr,"", "checkout delete struct execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、delete数组 - try { - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteArray().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete数组 deleteArray()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取数组长度 - BigInteger arrayLength =basicDataTypeDeleteContract.getArrayLength().send(); - collector.logStepPass("BasicDataTypeDelete 【获取数组长度】successfully value:" + arrayLength); - collector.assertEqual(arrayLength,new BigInteger("0"), "checkout delete struct execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、delete枚举 - try { - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteEnum().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete枚举 deleteEnum()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取枚举值 - BigInteger enumValue =basicDataTypeDeleteContract.getEnum().send(); - collector.logStepPass("BasicDataTypeDelete 【获取枚举数值】successfully value:" + enumValue); - collector.assertEqual(enumValue,new BigInteger("0"), "checkout delete struct execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //4、deleteMapping - try { - TransactionReceipt transactionReceipt = basicDataTypeDeleteContract.deleteMapping().send(); - collector.logStepPass("BasicDataTypeDelete 【执行delete映射 deleteMapping()】successfully hash:" + transactionReceipt.getTransactionHash()); - //获取映射值 - BigInteger mappingValue =basicDataTypeDeleteContract.getMapping().send(); - collector.logStepPass("BasicDataTypeDelete 【获取映射数值】successfully value:" + mappingValue); - collector.assertEqual(mappingValue,new BigInteger("0"), "checkout delete struct execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeIntOverTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeIntOverTest.java deleted file mode 100644 index 81ed4c583f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeIntOverTest.java +++ /dev/null @@ -1,66 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.BasicDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:有符号8位整数数据溢出(8位有符号整数取值范围-128~127) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeIntOverTest extends ContractPrepareTest { - - private String uintParam; - private String resultParam; - - - @Before - public void before() { - this.prepare(); - uintParam = driverService.param.get("uintParam"); - resultParam = driverService.param.get("resultParam"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeUintOverTest.有符号8位整数数据溢出",sourcePrefix = "evm/0.7.1") - public void testBasicDataTypeContract() { - - BasicDataTypeContract basicDataTypeContract = null; - try { - //合约部署 - basicDataTypeContract = BasicDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //验证:有符号8位整数溢出(8位有符号整数取值范围-128~127) - try { - BigInteger resultValue = new BigInteger(resultParam); - //赋值执行addIntOverflow() - BigInteger actualValue = basicDataTypeContract.addIntOverflow(new BigInteger(uintParam)).send(); - collector.logStepPass("BasicDataTypeContract 执行addIntOverflow() successfully actualValue:" + actualValue + ",resultValue:" + resultValue); - collector.assertEqual(actualValue,resultValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeUintOverTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeUintOverTest.java deleted file mode 100644 index 9f81ec7d49..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/BasicDataType/BasicDataTypeUintOverTest.java +++ /dev/null @@ -1,66 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.BasicDataType; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.BasicDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:无符号8位整数数据溢出(8位无符号整数取值范围0~255) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class BasicDataTypeUintOverTest extends ContractPrepareTest { - - private String uintParam; - private String resultParam; - - - @Before - public void before() { - this.prepare(); - uintParam = driverService.param.get("uintParam"); - resultParam = driverService.param.get("resultParam"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "BasicDataTypeUintOverTest.无符号8位整数数据溢出",sourcePrefix = "evm/0.7.1") - public void testBasicDataTypeContract() { - - BasicDataTypeContract basicDataTypeContract = null; - try { - //合约部署 - basicDataTypeContract = BasicDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeContract.getTransactionReceipt().get(); - collector.logStepPass("BasicDataTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:无符号8位整数数据溢出(8位无符号整数取值范围0~255) - try { - BigInteger resultValue = new BigInteger(resultParam); - //赋值执行addUintOverflow() - BigInteger actualValue = basicDataTypeContract.addUintOverflow(new BigInteger(uintParam)).send(); - collector.logStepPass("BasicDataTypeContract 执行addUintOverflow() successfully actualValue:" + actualValue +",resultValue:"+ resultValue); - collector.assertEqual(actualValue,resultValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("BasicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/MappingData/MappingArrayDataTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/MappingData/MappingArrayDataTypeContractTest.java deleted file mode 100644 index 03035f1804..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/MappingData/MappingArrayDataTypeContractTest.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.MappingData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple4; -import network.platon.contracts.evm.v0_7_1.MappingArrayDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:验证mapping数组类型 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class MappingArrayDataTypeContractTest extends ContractPrepareTest { - - private String keyValue,a1Value,a2Value,b1Value,b2Value; - - @Before - public void before() { - this.prepare(); - keyValue = driverService.param.get("keyValue"); - a1Value = driverService.param.get("a1Value"); - a2Value = driverService.param.get("a2Value"); - b1Value = driverService.param.get("b1Value"); - b2Value = driverService.param.get("b2Value"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "MappingDataTypeContract.mapping数组类型",sourcePrefix = "evm/0.7.1") - public void testMappingContract() { - - MappingArrayDataTypeContract mappingArrayDataTypeContract = null; - try { - //合约部署 - mappingArrayDataTypeContract = MappingArrayDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = mappingArrayDataTypeContract.getContractAddress(); - TransactionReceipt tx = mappingArrayDataTypeContract.getTransactionReceipt().get(); - collector.logStepPass("mappingArrayDataTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("mappingArrayDataTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - //1、执行mapping数组赋值 - try { - BigInteger keyValueBig = new BigInteger(keyValue); - BigInteger a1ValueBig = new BigInteger(a1Value); - BigInteger a2ValueBig = new BigInteger(a2Value); - BigInteger b1ValueBig = new BigInteger(b1Value); - BigInteger b2ValueBig = new BigInteger(b2Value); - TransactionReceipt transactionReceipt = mappingArrayDataTypeContract.set(keyValueBig,a1ValueBig,a2ValueBig,b1ValueBig,b2ValueBig).send(); - collector.logStepPass("mappingArrayDataTypeContract 【执行mapping数组赋值 set()】 successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取值getValueByKey() - Tuple4 tuple4 = mappingArrayDataTypeContract.getValueByKey(keyValueBig).send(); - BigInteger actualValue1 = tuple4.getValue1(); - BigInteger actualValue2 = tuple4.getValue2(); - BigInteger actualValue3 = tuple4.getValue3(); - BigInteger actualValue4 = tuple4.getValue4(); - collector.logStepPass("mappingArrayDataTypeContract 【执行获取值getValueByKey()】 successful actualValue:" + tuple4.toString()); - collector.assertEqual(actualValue1,a1ValueBig, "checkout execute success."); - collector.assertEqual(actualValue2,a2ValueBig, "checkout execute success."); - collector.assertEqual(actualValue3,b1ValueBig, "checkout execute success."); - collector.assertEqual(actualValue4,b2ValueBig, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("mappingArrayDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/MappingData/MappingDataTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/MappingData/MappingDataTypeContractTest.java deleted file mode 100644 index fca6099149..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/MappingData/MappingDataTypeContractTest.java +++ /dev/null @@ -1,66 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.MappingData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.MappingDataTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:映射(Mapping)定义赋值取值 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class MappingDataTypeContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "MappingDataTypeContract.映射(Mapping)定义赋值取值",sourcePrefix = "evm/0.7.1") - public void testMappingContract() { - - MappingDataTypeContract mappingContractTest = null; - try { - //合约部署 - mappingContractTest = MappingDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = mappingContractTest.getContractAddress(); - TransactionReceipt tx = mappingContractTest.getTransactionReceipt().get(); - collector.logStepPass("MappingContractTest issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("MappingContractTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:数组的声明及初始化及取值(定长数组、可变数组) - try { - String expectValue = "Lucy"; - BigInteger index = new BigInteger("0"); - //赋值执行addName() - TransactionReceipt transactionReceipt = mappingContractTest.addName().send(); - collector.logStepPass("MappingContractTest 执行addName() successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取值getName() - String actualValue = mappingContractTest.getName(index).send(); - collector.logStepPass("调用合约getName()方法完毕 successful actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("MappingContractTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ContractArrayTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ContractArrayTest.java deleted file mode 100644 index f53bae1971..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ContractArrayTest.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.ContractArray; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; - -import org.junit.Before; -import org.junit.Test; - -import java.util.List; - -/** - * @title 验证ContractArray - * @description: - * @author: liweic - * @create: 2020/01/11 19:01 - **/ - -public class ContractArrayTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "data_type.ContractArrayTest-合约数组测试",sourcePrefix = "evm/0.7.1") - public void Contractarray() { - try { - ContractArray contractarray = ContractArray.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = contractarray.getContractAddress(); - TransactionReceipt tx = contractarray.getTransactionReceipt().get(); - collector.logStepPass("ContractArray deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - - //验证合约数组 - TransactionReceipt resultA = contractarray.f().send(); - - String getx = contractarray.getx().send(); - collector.logStepPass("合约数组X返回值:" + getx); - collector.assertEqual(getx.toLowerCase() ,contractAddress); - - List gety = contractarray.gety().send(); - String addressy = gety.get(3).toString(); - collector.logStepPass("合约数组Y返回值:" + addressy); - collector.assertEqual(addressy.toLowerCase() ,contractAddress); - - - - } catch (Exception e) { - collector.logStepFail("ContractArrayContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeArrayComplexTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeArrayComplexTest.java deleted file mode 100644 index 41f6f56f0d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeArrayComplexTest.java +++ /dev/null @@ -1,76 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.ReferenceDataTypeArrayComplexContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - -/** - * @title 测试:验证含数组(Array)运算逻辑合约 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeArrayComplexTest extends ContractPrepareTest { - - private String a,b,c,d,e; - private String sum; - - - @Before - public void before() { - this.prepare(); - a = driverService.param.get("a"); - b = driverService.param.get("b"); - c = driverService.param.get("c"); - d = driverService.param.get("d"); - e = driverService.param.get("e"); - sum = driverService.param.get("sum"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeArrayComplex.含数组(Array)运算逻辑合约",sourcePrefix = "evm/0.7.1") - public void testReferenceDataTypeArrayTest() { - try{ - ReferenceDataTypeArrayComplexContract referenceDataTypeArrayComplex = null; - referenceDataTypeArrayComplex = ReferenceDataTypeArrayComplexContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayComplex.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayComplex.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeArrayComplex issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - if(getIntParam("seq") == 3){ - List array = new ArrayList(); - BigInteger actualValue = referenceDataTypeArrayComplex.sumComplexArray(array).send(); - collector.logStepPass("referenceDataTypeArrayComplex 执行sumComplexArray() successfully.hash:" + actualValue); - collector.assertEqual(actualValue,BigInteger.ZERO, "checkout execute success."); - return; - } - BigInteger sumBig = new BigInteger(sum); - List array = new ArrayList(); - array.add(new BigInteger(a)); - array.add(new BigInteger(b)); - array.add(new BigInteger(c)); - array.add(new BigInteger(d)); - array.add(new BigInteger(e)); - - //赋值执行sumComplexArray() - BigInteger actualValue = referenceDataTypeArrayComplex.sumComplexArray(array).send(); - collector.logStepPass("referenceDataTypeArrayComplex 执行sumComplexArray() successfully.hash:" + actualValue); - collector.assertEqual(actualValue,sumBig, "checkout execute success."); - }catch (Exception e){ - collector.logStepFail(Thread.currentThread().getStackTrace()[1].getMethodName() + " fail.", e.getMessage()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeArrayMethodTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeArrayMethodTest.java deleted file mode 100644 index 67c9d60000..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeArrayMethodTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.ReferenceDataTypeArrayContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:数组(Array)方法 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeArrayMethodTest extends ContractPrepareTest { - - private String insertValue; - private String arrayLength; - - @Before - public void before() { - this.prepare(); - insertValue = driverService.param.get("insertValue"); - arrayLength = driverService.param.get("arrayLength"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeMultiArrayContractTest.数组(Array)方法",sourcePrefix = "evm/0.7.1") - public void testReferenceDataTypeArrayTest() { - - ReferenceDataTypeArrayContract referenceDataTypeArrayContract = null; - try { - //合约部署 - referenceDataTypeArrayContract = ReferenceDataTypeArrayContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayContract.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeArrayContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //验证:数组的属性及方法 - try { - BigInteger expectLength = new BigInteger(arrayLength); - //赋值执行setArrayPush() - TransactionReceipt transactionReceipt = referenceDataTypeArrayContract.setArrayPush(insertValue).send(); - collector.logStepPass("ReferenceDataTypeArrayContract 执行setArrayPush() successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取数组长度getArrayLength() - BigInteger actualLength = referenceDataTypeArrayContract.getArrayLength().send(); - collector.logStepPass("调用合约getArrayLength()方法完毕 successful actualLength:" + actualLength); - collector.assertEqual(actualLength,expectLength, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeArrayOperatorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeArrayOperatorTest.java deleted file mode 100644 index 0fdf2c08ae..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeArrayOperatorTest.java +++ /dev/null @@ -1,105 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import com.alaya.tuples.generated.Tuple5; -import network.platon.contracts.evm.v0_7_1.ReferenceDataTypeArrayOperatorContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:验证数组支持的运算符 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeArrayOperatorTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeArray.数组支持的运算符",sourcePrefix = "evm/0.7.1") - public void testReferenceDataTypeArrayTest() { - - ReferenceDataTypeArrayOperatorContract referenceDataTypeArrayOperator = null; - try { - //合约部署 - referenceDataTypeArrayOperator = ReferenceDataTypeArrayOperatorContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayOperator.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayOperator.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeArrayOperator issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeArrayOperator deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //1、比较运算符 arrayCompare() - Tuple5 tuple5 = referenceDataTypeArrayOperator.arrayCompare().send(); - boolean actualValue1 = tuple5.getValue1(); - boolean actualValue2 = tuple5.getValue2(); - boolean actualValue3 = tuple5.getValue3(); - boolean actualValue4 = tuple5.getValue4(); - boolean actualValue5 = tuple5.getValue5(); - - collector.logStepPass("执行【比较运算符 arrayCompare()】 successfully.hash:" + tuple5.toString()); - collector.assertEqual(actualValue1,true, "checkout < execute success."); - collector.assertEqual(actualValue2,false, "checkout > execute success."); - collector.assertEqual(actualValue3,true, "checkout == execute success."); - collector.assertEqual(actualValue4,true, "checkout != execute success."); - collector.assertEqual(actualValue5,true, "checkout >= execute success."); - - //2、&(按位与) - Tuple2 tuple2 =referenceDataTypeArrayOperator.arrayBitAndOperators().send(); - BigInteger andOperatorsValue = tuple2.getValue2(); - collector.logStepPass("执行【&(按位与) arrayBitAndOperators()】 successfully.hash:" + tuple2.toString()); - collector.assertEqual(andOperatorsValue,new BigInteger("128"), "checkout execute success."); - - //3、|(按位或) - Tuple2 tuple3 =referenceDataTypeArrayOperator.arrayBitOrOperators().send(); - BigInteger orOperatorsValue = tuple3.getValue2(); - collector.logStepPass("执行【|(按位或) arrayBitOrOperators()】 successfully.hash:" + tuple3.toString()); - collector.assertEqual(orOperatorsValue,new BigInteger("129"), "checkout execute success."); - - //4、~(按位取反) - Tuple2 tuple4 =referenceDataTypeArrayOperator.arrayBitInverseOperators().send(); - BigInteger inverseOperatorsValue = tuple4.getValue2(); - collector.logStepPass("执行【~(按位取反) arrayBitInverseOperators()】 successfully.hash:" + tuple4.toString()); - collector.assertEqual(inverseOperatorsValue,new BigInteger("126"), "checkout execute success."); - - //5、^(按位异或) - Tuple2 tuple6 =referenceDataTypeArrayOperator.arrayBitXOROperators().send(); - BigInteger xOROperatorsValue = tuple6.getValue2(); - collector.logStepPass("执行【^(按位异或) arrayBitXOROperators()】 successfully.hash:" + tuple6.toString()); - collector.assertEqual(xOROperatorsValue,new BigInteger("1"), "checkout execute success."); - - //6、<<(左移位) - Tuple2 tuple7 =referenceDataTypeArrayOperator.arrayBitLeftShiftperators().send(); - BigInteger leftShiftperatorsValue = tuple7.getValue2(); - collector.logStepPass("执行【<<(左移位) arrayBitLeftShiftperators()】 successfully.hash:" + tuple7.toString()); - collector.assertEqual(leftShiftperatorsValue,new BigInteger("2"), "checkout execute success."); - - //7、<<(右移位) - Tuple2 tuple8 =referenceDataTypeArrayOperator.arrayBitRightShiftperators().send(); - BigInteger rightShiftperatorsValue = tuple8.getValue2(); - collector.logStepPass("执行【<<(右移位) arrayBitLeftShiftperators()】 successfully.hash:" + tuple8.toString()); - collector.assertEqual(rightShiftperatorsValue,new BigInteger("64"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeArrayOperator Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeMultiArrayContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeMultiArrayContractTest.java deleted file mode 100644 index e7982069a5..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeMultiArrayContractTest.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_7_1.ReferenceDataTypeArrayContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:多维数组声明及初始化及取值 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeMultiArrayContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeMultiArray.多维数组声明及初始化及取值",sourcePrefix = "evm/0.7.1") - public void testReferenceDataTypeArrayTest() { - - ReferenceDataTypeArrayContract referenceDataTypeArrayContract = null; - try { - //合约部署 - referenceDataTypeArrayContract = ReferenceDataTypeArrayContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayContract.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeArrayContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - - //验证:多维数组声明及初始化及取值 - try { - BigInteger expectValue = new BigInteger("100"); - BigInteger expectLength = new BigInteger("2"); - //赋值执行setMultiArray() - TransactionReceipt transactionReceipt = referenceDataTypeArrayContract.setMultiArray().send(); - collector.logStepPass("ReferenceDataTypeArrayContract 执行setMultiArray() successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取值getMultiArray() - Tuple2 tuple2 = referenceDataTypeArrayContract.getMultiArray().send(); - BigInteger actualValue = tuple2.getValue1(); - BigInteger actualLength = tuple2.getValue2(); - - collector.logStepPass("调用合约setMultiArray() 方法完毕 successful actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout value execute success."); - collector.assertEqual(actualLength,expectLength, "checkout length execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeSetArrayContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeSetArrayContractTest.java deleted file mode 100644 index 68b60db673..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeSetArrayContractTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.ReferenceDataTypeArrayContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:数组(Array)赋值取值及方法 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeSetArrayContractTest extends ContractPrepareTest { - - private String insertNo; - private String insertValue; - - @Before - public void before() { - this.prepare(); - insertNo = driverService.param.get("insertNo"); - insertValue = driverService.param.get("insertValue"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeArray.数组的声明及初始化及取值",sourcePrefix = "evm/0.7.1") - public void testReferenceDataTypeArrayTest() { - - ReferenceDataTypeArrayContract referenceDataTypeArrayContract = null; - try { - //合约部署 - referenceDataTypeArrayContract = ReferenceDataTypeArrayContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayContract.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeArrayContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:数组的声明及初始化及取值(定长数组、可变数组) - try { - BigInteger index = new BigInteger(insertNo); - BigInteger value = new BigInteger(insertValue); - //赋值执行setArray() - TransactionReceipt transactionReceipt = referenceDataTypeArrayContract.setArray(index,value).send(); - collector.logStepPass("ReferenceDataTypeArrayContract 执行setArray() successfully.hash:" + transactionReceipt.getTransactionHash()); - //获取值getArray() - BigInteger actualValue = referenceDataTypeArrayContract.getArray(index).send(); - collector.logStepPass("调用合约getArray()方法完毕 successful actualValue:" + actualValue); - collector.assertEqual(actualValue,value, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeStructContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeStructContractTest.java deleted file mode 100644 index 161895435e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeStructContractTest.java +++ /dev/null @@ -1,104 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple4; -import network.platon.contracts.evm.v0_7_1.ReferenceDataTypeStructContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:结构体定义、赋值及取值 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeStructContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeStructContractTest.结构体定义、赋值及取值",sourcePrefix = "evm/0.7.1") - public void testReferenceDataTypeStructTest() { - - ReferenceDataTypeStructContract referenceDataTypeStructContract = null; - try { - //合约部署 - referenceDataTypeStructContract = ReferenceDataTypeStructContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeStructContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeStructContract.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeStructContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - BigInteger expectId = new BigInteger("2"); - BigInteger expectAge = new BigInteger("25"); - boolean expectVIP = true; - - //1、赋值方式一: 按入参顺序赋值 - try { - //赋值执行initDataStruct1() - Tuple4 tuple4 = referenceDataTypeStructContract.initDataStructA().send(); - BigInteger actualId = tuple4.getValue1(); - BigInteger actualAge = tuple4.getValue3(); - boolean actualVIP = tuple4.getValue4(); - - collector.logStepPass("ReferenceDataTypeStructContract 执行initDataStructA()方法 successfully."); - collector.assertEqual(actualId,expectId, "checkout Id execute success."); - collector.assertEqual(actualAge,expectAge, "checkout Age execute success."); - collector.assertEqual(actualVIP,expectVIP, "checkout VIP execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //2、赋值方式二: 按命名参数赋值 - try { - //赋值执行initDataStruct2() - Tuple4 tuple4 = referenceDataTypeStructContract.initDataStructB().send(); - BigInteger actualId = tuple4.getValue1(); - BigInteger actualAge = tuple4.getValue3(); - boolean actualVIP = tuple4.getValue4(); - - collector.logStepPass("ReferenceDataTypeStructContract 执行initDataStructB()方法 successfully."); - collector.assertEqual(actualId,expectId, "checkout Id execute success."); - collector.assertEqual(actualAge,expectAge, "checkout Age execute success."); - collector.assertEqual(actualVIP,expectVIP, "checkout VIP execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、赋值方式三:结构体中映射的初始化 - try { - //赋值执行initDataStruct3() - Tuple4 tuple4 = referenceDataTypeStructContract.initDataStructC().send(); - BigInteger actualId = tuple4.getValue1(); - BigInteger actualAge = tuple4.getValue3(); - boolean actualVIP = tuple4.getValue4(); - - collector.logStepPass("ReferenceDataTypeStructContract 执行initDataStructC()方法 successfully."); - collector.assertEqual(actualId,expectId, "checkout Id execute success."); - collector.assertEqual(actualAge,expectAge, "checkout Age execute success."); - collector.assertEqual(actualVIP,expectVIP, "checkout VIP execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeStructContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeStructDeleteContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeStructDeleteContractTest.java deleted file mode 100644 index e806ef6ac7..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/ReferenceData/ReferenceDataTypeStructDeleteContractTest.java +++ /dev/null @@ -1,93 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.ReferenceData; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.ReferenceDataTypeStructDeleteContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:结构体嵌套delete操作 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class ReferenceDataTypeStructDeleteContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "ReferenceDataTypeStructDelete.结构体嵌套delete操作",sourcePrefix = "evm/0.7.1") - public void testReferenceDataTypeStructRecursive() { - - ReferenceDataTypeStructDeleteContract referenceDataTypeStructDelete = null; - try { - //合约部署 - referenceDataTypeStructDelete = ReferenceDataTypeStructDeleteContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeStructDelete.getContractAddress(); - TransactionReceipt tx = referenceDataTypeStructDelete.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeStructDelete issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete deploy fail.", e.toString()); - e.printStackTrace(); - } - try { - //1、执行delete基本类型之后值 - BigInteger deleteInt = referenceDataTypeStructDelete.getToDeleteInt().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete基本类型之后值 getToDeleteInt()】方法 successfully.deleteInt:" + deleteInt); - collector.assertEqual(deleteInt,new BigInteger("0"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - //2、执行delete外部结构体uint类型 - BigInteger actualValue = referenceDataTypeStructDelete.getTopValue().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete外部结构体包含uint类型 getTopValue()】方法 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,new BigInteger("0"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - //3、执行delete外部结构体包含mapping类型 - BigInteger actualValue = referenceDataTypeStructDelete.getTopMapping().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete外部结构体包含mapping类型 getTopMapping()】方法 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,new BigInteger("1"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - //4、执行delete内部部结构体包含uint类型 - BigInteger actualValue = referenceDataTypeStructDelete.getNestedValue().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete内部部结构体包含uint类型 getNestedValue()】方法 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,new BigInteger("0"), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - //5、执行delete内部部结构体包含mapping类型 - Boolean actualValue = referenceDataTypeStructDelete.getNestedMapping().send(); - collector.logStepPass("ReferenceDataTypeStructRecursive 【执行delete内部部结构体包含mapping类型 getNestedMapping()】方法 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,true, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructDelete Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/TypeConversion/TypeConversionBytesToUintContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/TypeConversion/TypeConversionBytesToUintContractTest.java deleted file mode 100644 index fc4a66b0b9..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/TypeConversion/TypeConversionBytesToUintContractTest.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.TypeConversion; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.TypeConversionBytesToUintContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:测试不同类型转换(字节转换整型) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class TypeConversionBytesToUintContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "TypeConversionContract.字节转换整型",sourcePrefix = "evm/0.7.1") - public void testTypeConversionContract() { - - TypeConversionBytesToUintContract typeConversionBytesToUintContract = null; - try { - //合约部署 - typeConversionBytesToUintContract = TypeConversionBytesToUintContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = typeConversionBytesToUintContract.getContractAddress(); - TransactionReceipt tx = typeConversionBytesToUintContract.getTransactionReceipt().get(); - collector.logStepPass("typeConversion issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("typeConversion deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - BigInteger expectValue = new BigInteger("1633837924"); - //1、执行字节转换大位整型 bytesToBigUint() - BigInteger actualValue = typeConversionBytesToUintContract.bytesToBigUint().send(); - collector.logStepPass("typeConversion 执行【字节转换大位整型 bytesToBigUint()】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - BigInteger expectValue = new BigInteger("97"); - //2、字节转换相同位数整数 bytesToSameUint() - BigInteger actualValue = typeConversionBytesToUintContract.bytesToSameUint().send(); - collector.logStepPass("typeConversion 执行【字节转换相同位数整数 bytesToSameUint()】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - try { - BigInteger expectValue = new BigInteger("25444"); - //3、字节转换小位整型 bytesToSmallUint() - BigInteger actualValue = typeConversionBytesToUintContract.bytesToSmallUint().send(); - collector.logStepPass("typeConversion 执行【字节转换小位整型 bytesToSmallUint()】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/TypeConversion/TypeConversionContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/TypeConversion/TypeConversionContractTest.java deleted file mode 100644 index bad757f99d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/data_type/TypeConversion/TypeConversionContractTest.java +++ /dev/null @@ -1,144 +0,0 @@ -package network.platon.test.evm.v0_7_1.data_type.TypeConversion; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_7_1.TypeConversionContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 测试:基本类型之间的转换(隐式/显示) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class TypeConversionContractTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "TypeConversionContract.基本类型转换",sourcePrefix = "evm/0.7.1") - public void testTypeConversionContract() { - - TypeConversionContract typeConversionContractTest = null; - try { - //合约部署 - typeConversionContractTest = TypeConversionContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = typeConversionContractTest.getContractAddress(); - TransactionReceipt tx = typeConversionContractTest.getTransactionReceipt().get(); - collector.logStepPass("typeConversion issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("typeConversion deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、验证:基本类型隐式转换(运算符操作隐式转换) - try { - BigInteger expectValue = new BigInteger("102"); - //赋值执行sum() - BigInteger actualValue = typeConversionContractTest.sum().send(); - collector.logStepPass("typeConversion 执行【运算符操作隐式转换】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、验证:基本类型隐式转换(赋值操作隐式转换) - try { - BigInteger expectValue = new BigInteger("10"); - //赋值执行conversion() - BigInteger actualValue = typeConversionContractTest.conversion().send(); - collector.logStepPass("typeConversion 执行【赋值操作隐式转换】successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //3、验证:基本类型显示转换(无符合与有符号转换) - try { - BigInteger expectValue = new BigInteger("1"); - //执行displayConversion() - BigInteger actualValue = typeConversionContractTest.displayConversion().send(); - collector.logStepPass("typeConversion 执行【无符合与有符号显示转换】successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //4、验证:基本类型显示转换(转换成更小的类型,会丢失高位) - try { - BigInteger expectValue1 = new BigInteger("22136"); - String expectValue2 = "0x5678"; - //执行displayConversion1() - Tuple2 tuple2 = typeConversionContractTest.displayConversion1().send(); - BigInteger actualValue1 = tuple2.getValue1(); - String actualValue2 = "0x" + DataChangeUtil.bytesToHex(tuple2.getValue2()); - - collector.logStepPass("typeConversion 执行【大整型类型显示转换小类型】successfully.actualValue1:" + actualValue1 + - ",actualValue2:" + actualValue2); - collector.assertEqual(actualValue1,expectValue1, "checkout execute success."); - collector.assertEqual(actualValue2,expectValue2, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //5、验证:转换成更大的类型(将向左侧添加填充位) - try { - BigInteger expectValue1 = new BigInteger("4660"); - //执行displayConversion2() - Tuple2 tuple2 = typeConversionContractTest.displayConversion2().send(); - BigInteger actualValue1 = tuple2.getValue1(); - - collector.logStepPass("typeConversion 执行【小整型类型显示转换成大类型】 successfully.actualValue1:" + actualValue1); - collector.assertEqual(actualValue1,expectValue1, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //6、验证:转换到更小的字节类型 - try { - String expectValue = "0x12"; - //执行displayConversion3() - byte[] byteValue = typeConversionContractTest.displayConversion3().send(); - String actualValue = "0x" + DataChangeUtil.bytesToHex(byteValue); - - collector.logStepPass("typeConversion 执行【大字节类型显示转换成小类型】successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //7、验证:转换为更大的字节类型 - try { - String expectValue = "0x12340000"; - //执行displayConversion4() - byte[] byteValue = typeConversionContractTest.displayConversion4().send(); - String actualValue = "0x" + DataChangeUtil.bytesToHex(byteValue); - - collector.logStepPass("typeConversion 执行【小字节类型显示转换成大类型】 successfully.actualValue:" + actualValue); - collector.assertEqual(actualValue,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("typeConversion Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/event/EventCallContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/event/EventCallContractTest.java deleted file mode 100644 index 7129554fdc..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/event/EventCallContractTest.java +++ /dev/null @@ -1,131 +0,0 @@ -package network.platon.test.evm.v0_7_1.event; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.EventCallContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import com.alibaba.fastjson.JSONObject; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.List; - -/** - * @title 事件验证测试 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class EventCallContractTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "emitEvent", - author = "albedo", showName = "event.EventCallContractTest-event关键字声明事件", sourcePrefix = "evm/0.7.1") - public void testEmitEvent() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.emitEvent().send(); - List emitEventData = eventCallContract.getIncrementEvents(receipt); - String data = emitEventData.get(0).log.getData(); - collector.assertEqual(emitEventData.get(0).who, receipt.getFrom(), "checkout declare event keyword"); - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testEmitEvent failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "indexedEvent", - author = "albedo", showName = "event.EventCallContractTest-indexed关键字定义事件索引", sourcePrefix = "evm/0.7.1") - public void testIndexedEvent() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - TransactionReceipt receipt = eventCallContract.indexedEvent().send(); - List emitEventData = eventCallContract.getDepositEvents(receipt); - String data = emitEventData.get(0).log.getData(); - collector.assertEqual(emitEventData.get(0)._from, receipt.getFrom(), "checkout new contract param"); - collector.assertEqual(emitEventData.get(0)._value.toString(), "12", "checkout indexed keyword"); - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testIndexedEvent failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "anonymousEvent", - author = "albedo", showName = "event.EventCallContractTest-anonymous关键字定义匿名事件", sourcePrefix = "evm/0.7.1") - public void testAnonymousEvent() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - TransactionReceipt receipt = eventCallContract.anonymousEvent().send(); - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(0).getData()), DataChangeUtil.subHexData("1"), "checkout anonymous keyword"); - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testAnonymousEvent failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testEmitEvents", - author = "albedo", showName = "event.EventCallContractTest-函数多事件监听", sourcePrefix = "evm/0.7.1") - public void testEmitEvents() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - TransactionReceipt receipt = eventCallContract.testBool().send(); - System.out.println(JSONObject.toJSONString(receipt.getLogs())); - List bList = eventCallContract.getBoolEventEvents(receipt); - collector.assertEqual(bList.get(0).result ,Boolean.FALSE, "checkout multi bool type event"); - collector.assertEqual(bList.get(1).result ,Boolean.TRUE, "checkout multi bool type event"); - List iList = eventCallContract.getIncrementEvents(receipt); - collector.assertEqual(iList.get(0).who ,receipt.getFrom(), "checkout address type event"); - - List dList = eventCallContract.getDepositEvents(receipt); - collector.assertEqual(dList.get(0)._from ,receipt.getFrom(), "checkout address type event"); - collector.assertEqual(dList.get(0)._value ,new BigInteger("12"), "checkout uint event"); - - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(3).getData()),DataChangeUtil.subHexData("c"), "checkout address type event"); - - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testAnonymousEvent failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testMultiAnonymousEvents", - author = "albedo", showName = "event.EventCallContractTest-函数多匿名事件监听", sourcePrefix = "evm/0.7.1") - public void testMultiAnonymousEvents() { - try { - prepare(); - EventCallContract eventCallContract = EventCallContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventCallContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - TransactionReceipt receipt = eventCallContract.testMultiAnonymous().send(); - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(0).getData()),DataChangeUtil.subHexData("c"), "checkout multi anonymous event"); - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(1).getData()),DataChangeUtil.subHexData("d"), "checkout multi anonymous event"); - collector.assertEqual(DataChangeUtil.subHexData(receipt.getLogs().get(2).getData()),DataChangeUtil.subHexData("e"), "checkout multi anonymous event"); - } catch (Exception e) { - collector.logStepFail("EventCallContractTest testMultiAnonymousEvents failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/event/EventIndexedContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/event/EventIndexedContractTest.java deleted file mode 100644 index 23a861b6d6..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/event/EventIndexedContractTest.java +++ /dev/null @@ -1,193 +0,0 @@ -package network.platon.test.evm.v0_7_1.event; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.EventIndexedContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import com.alibaba.fastjson.JSONObject; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.List; - -/** - * @title 事件索引测试 - * @description: - * @author: albedo - * @create: 2020/01/07 - */ -public class EventIndexedContractTest extends ContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testIntIndex", - author = "albedo", showName = "event.EventIndexedContractTest-有符号整型索引", sourcePrefix = "evm/0.7.1") - public void testIntIndex() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testMinus(new BigInteger("-12")).send(); - List str=eventCallContract.getMinusEventEvents(receipt); - BigInteger s=str.get(0).minus; - collector.assertEqual(s, new BigInteger("-12"), "checkout string indexed event"); - - receipt = eventCallContract.testMinus(new BigInteger("12")).send(); - str=eventCallContract.getMinusEventEvents(receipt); - s=str.get(0).minus; - collector.assertEqual(s, new BigInteger("12"), "checkout string indexed event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testOneDimensionalArray", - author = "albedo", showName = "event.EventIndexedContractTest-一维数组索引", sourcePrefix = "evm/0.7.1") - public void testOneDimensionalArray() { - try { - prepare(); - EventIndexedContract eventTypeContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventTypeContract.getContractAddress(); - String transactionHash = eventTypeContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventTypeContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventTypeContract.testOneDimensionalArray().send(); - List one = eventTypeContract.getOneDimensionalArrayEventEvents(receipt); - byte[] data = one.get(0).array; - String str=DataChangeUtil.bytesToHex(data); - String except=one.get(0).log.getTopics().get(1); - collector.assertEqual("0x"+str, except, "checkout one dimensional array index event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testOneDimensionalArray failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testTwoDimensionalArray", - author = "albedo", showName = "event.EventIndexedContractTest-二维数组索引", sourcePrefix = "evm/0.7.1") - public void testTwoDimensionalArray() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testTwoDimensionalArray().send(); - try { - eventCallContract.getTwoDimensionalArrayEventEvents(receipt); - } catch (UnsupportedOperationException e) { - collector.assertEqual(e.getCause().getMessage(),"com.alaya.abi.solidity.datatypes.generated.StaticArray2"); - } - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testTwoDimensionalArray failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testStr", - author = "albedo", showName = "event.EventIndexedContractTest-字符串索引", sourcePrefix = "evm/0.7.1") - public void testStr() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testStr().send(); - List str=eventCallContract.getStringEventEvents(receipt); - byte[] s=str.get(0).str; - String strIndexed=DataChangeUtil.bytesToHex(s); - String except=str.get(0).log.getTopics().get(1); - collector.assertEqual("0x"+strIndexed, except, "checkout string indexed event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testEnum", - author = "albedo", showName = "event.EventIndexedContractTest-枚举类型索引", sourcePrefix = "evm/0.7.1") - public void testEnum() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testEnum().send(); - List str=eventCallContract.getEnumEventEvents(receipt); - BigInteger s=str.get(0).choices; - String except=str.get(0).log.getTopics().get(1); - collector.assertEqual(DataChangeUtil.subHexData(s.toString()), DataChangeUtil.subHexData(except), "checkout string indexed event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testComplex", - author = "albedo", showName = "event.EventIndexedContractTest-复杂多索引", sourcePrefix = "evm/0.7.1") - public void testComplex() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testComplex().send(); - List str=eventCallContract.getComplexIndexedEventEvents(receipt); - String strIndex=DataChangeUtil.bytesToHex(str.get(0).str); - String arrayIndex=DataChangeUtil.bytesToHex(str.get(0).array); - String choiceIndex=DataChangeUtil.bytesToHex(str.get(0).choice.toByteArray()); - String exceptStr=str.get(0).log.getTopics().get(3); - String exceptArray=str.get(0).log.getTopics().get(1); - String exceptId=str.get(0).log.getTopics().get(2); - collector.assertEqual("0x"+strIndex, exceptStr, "checkout complex indexes event"); - collector.assertEqual("0x"+arrayIndex, exceptArray, "checkout complex indexes event"); - collector.assertEqual(DataChangeUtil.subHexData(choiceIndex), DataChangeUtil.subHexData(exceptId), "checkout complex indexes event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testComplex failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testAnonymousIndexed", - author = "albedo", showName = "event.EventIndexedContractTest-匿名事件索引数目", sourcePrefix = "evm/0.7.1") - public void testAnonymousIndexed() { - try { - prepare(); - EventIndexedContract eventCallContract = EventIndexedContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventIndexedContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testAnonymousIndexed().send(); - System.out.println(JSONObject.toJSONString(receipt.getLogs().get(0).getTopics())); - String u1Topic=receipt.getLogs().get(0).getTopics().get(0); - String u2Topic=receipt.getLogs().get(0).getTopics().get(1); - String u3Topic=receipt.getLogs().get(0).getTopics().get(2); - String u4Topic=receipt.getLogs().get(0).getTopics().get(3); - collector.assertEqual(DataChangeUtil.subHexData(u1Topic), DataChangeUtil.subHexData("1"), "checkout anonymous index.0 event"); - collector.assertEqual(DataChangeUtil.subHexData(u2Topic), DataChangeUtil.subHexData("2"), "checkout anonymous index.1 event"); - collector.assertEqual(DataChangeUtil.subHexData(u3Topic), DataChangeUtil.subHexData("3"), "checkout anonymous index.2 event"); - collector.assertEqual(DataChangeUtil.subHexData(u4Topic), DataChangeUtil.subHexData("4"), "checkout anonymous index.3 event"); - } catch (Exception e) { - collector.logStepFail("EventIndexedContractTest testAnonymousIndexed failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/event/EventTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/event/EventTypeContractTest.java deleted file mode 100644 index 82955395b1..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/event/EventTypeContractTest.java +++ /dev/null @@ -1,110 +0,0 @@ -package network.platon.test.evm.v0_7_1.event; - -import com.alaya.abi.solidity.datatypes.generated.Uint256; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.EventTypeContract; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - -/** - * @title 事件类型测试 - * @description: - * @author: albedo - * @create: 2020/01/06 - */ -public class EventTypeContractTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testOneDimensionalArray", - author = "albedo", showName = "event.EventTypeContractTest-一维数组类型", sourcePrefix = "evm/0.7.1") - public void testOneDimensionalArray() { - try { - prepare(); - EventTypeContract eventTypeContract = EventTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventTypeContract.getContractAddress(); - String transactionHash = eventTypeContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventTypeContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventTypeContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventTypeContract.testOneDimensionalArray().send(); - List one = eventTypeContract.getOneDimensionalArrayEventEvents(receipt); - List data = one.get(0).array; - List except = new ArrayList<>(5); - for (int i = 0; i < 5; i++) { - except.add(new Uint256(new BigInteger(Integer.toString(i)))); - } - collector.assertEqual(data, except, "checkout one dimensional array type declare event"); - } catch (Exception e) { - collector.logStepFail("EventTypeContractTest testOneDimensionalArray failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testTwoDimensionalArray", - author = "albedo", showName = "event.EventTypeContractTest-二维数组类型", sourcePrefix = "evm/0.7.1") - public void testTwoDimensionalArray() { - try { - prepare(); - EventTypeContract eventCallContract = EventTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventTypeContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testTwoDimensionalArray().send(); - try { - eventCallContract.getTwoDimensionalArrayEventEvents(receipt); - } catch (UnsupportedOperationException e) { - collector.assertEqual(e.getCause().getMessage(),"com.alaya.abi.solidity.datatypes.generated.StaticArray2"); - } - } catch (Exception e) { - collector.logStepFail("EventTypeContractTest testTwoDimensionalArray failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testStr", - author = "albedo", showName = "event.EventTypeContractTest-字符串", sourcePrefix = "evm/0.7.1") - public void testStr() { - try { - prepare(); - EventTypeContract eventCallContract = EventTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventTypeContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testStr().send(); - List str = eventCallContract.getStringEventEvents(receipt); - String s = str.get(0).str; - collector.assertEqual(s, "1234567890097865432112345678900987654321123456789009764354666663242444444444475831546856", "checkout string type declare event"); - } catch (Exception e) { - collector.logStepFail("EventTypeContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "testEnum", - author = "albedo", showName = "event.EventTypeContractTest-枚举", sourcePrefix = "evm/0.7.1") - public void testEnum() { - try { - prepare(); - EventTypeContract eventCallContract = EventTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = eventCallContract.getContractAddress(); - String transactionHash = eventCallContract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("EventTypeContract issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + eventCallContract.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = eventCallContract.testEnum().send(); - List str = eventCallContract.getEnumEventEvents(receipt); - BigInteger s = str.get(0).choices; - collector.assertEqual(s, new BigInteger("0"), "checkout string type declare event"); - } catch (Exception e) { - collector.logStepFail("EventTypeContractTest testStr failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/evm_assembly_contract_call/PlatonInnerTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/evm_assembly_contract_call/PlatonInnerTest.java deleted file mode 100644 index e2c6e8e895..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/evm_assembly_contract_call/PlatonInnerTest.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.test.evm.v0_7_1.evm_assembly_contract_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.PlatonInner; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; -import java.util.Arrays; -import java.util.HashSet; -import java.util.Set; - -/** - * 添加evm合约调用PPOS合约场景 - * @author hudenian - * @dev 2020/02/24 - */ - -public class PlatonInnerTest extends ContractPrepareTest { - - //要调用的ppos合约地址(参考:PlatON内置合约及RPC接口说明) - private String addr; - - //调用ppos合约请求参数进行rlp编码(参考:http://192.168.18.61:8080/browse/PM-613) - private String input; - - //交易码 - private String code; - - private String caseName; - - //查询方法没有回执 - private String[] queryCodeArray = new String[]{"4100","1005","1100","1101","1102","1103","1104","1105","1200","1201","1202","2004", - "2100","2101","2102","2103","2104","2105","2106","3001","5100"}; - - private Set queryCodeSet; - - @Before - public void before() { - this.prepare(); - addr = driverService.param.get("addr"); - input = driverService.param.get("input"); - code = driverService.param.get("code"); - caseName = driverService.param.get("caseName"); - queryCodeSet = new HashSet(Arrays.asList(queryCodeArray)); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "evm_assembly_contract_call.PlatonInnerTest-evm合约调用PPOS合约", sourcePrefix = "evm/0.7.1") - public void platonInner() { - try { - PlatonInner platonInner = PlatonInner.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = platonInner.getContractAddress(); - TransactionReceipt tx = platonInner.getTransactionReceipt().get(); - collector.logStepPass("PlatonInnerTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + platonInner.getTransactionReceipt().get().getGasUsed()); - - tx = platonInner.assemblyCallppos(DataChangeUtil.hexToByteArray(input),addr).send(); - collector.logStepPass("PlatonInnerTest call "+addr+" and code is:"+code+" createRestrictingPlan successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("caseName:+caseName>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"+"code:"+code); - if( !queryCodeSet.contains(code) && (null!=tx.getLogs().get(0).getData() && "".equals(tx.getLogs().get(0).getData()))){ - collector.logStepPass("str is >>>"+DataChangeUtil.decodeSystemContractRlp(tx.getLogs().get(0).getData(), chainId)); - } - - - //获取交易回执 - byte[] resultByte = platonInner.getReturnValue().send(); - collector.logStepPass("call "+addr+" and getReturnValue is:"+new String(resultByte)); - - } catch (Exception e) { - collector.logStepFail("PlatonInnerTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/evm_assembly_contract_call/PrecompiledTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/evm_assembly_contract_call/PrecompiledTest.java deleted file mode 100644 index a8dd2f4c2f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/evm_assembly_contract_call/PrecompiledTest.java +++ /dev/null @@ -1,128 +0,0 @@ -package network.platon.test.evm.v0_7_1.evm_assembly_contract_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.Precompiled; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.List; - -/** - * 添加evm合约调用系统合约场景 - * - * @author hudenian - * @dev 2020/02/19 - */ - -public class PrecompiledTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "evm_assembly_contract_call.AssemblyAddTest-evm合约调用系统合约", sourcePrefix = "evm/0.7.1") - public void precompiledTest() { - try { - Precompiled precompiled = Precompiled.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = precompiled.getContractAddress(); - TransactionReceipt tx = precompiled.getTransactionReceipt().get(); - collector.logStepPass("PrecompiledTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("deploy gas used:" + precompiled.getTransactionReceipt().get().getGasUsed()); - - byte[] bytes = "hu".getBytes(); - - - //验证ecrecover函数 -// String ecrecover = "lax132dnv620rmht2qxgfgvmkdqn0vz3vtk9lecarh"; - String ecrecover = "atx132dnv620rmht2qxgfgvmkdqn0vz3vtk9rvqqpa"; - - String hash = "e281eaa11e6e37e6f53aade5d6c5b7201ef1c66162ec42ccc3215a0c4349350d"; - byte[] a = DataChangeUtil.hexToByteArray(hash); - - BigInteger v = new BigInteger("27"); - - String R = "55b60cadd4b4a3ea4fc368ef338f97e12e7328dd6e9e969a3fd8e5c10be855fe"; - byte[] b = DataChangeUtil.hexToByteArray(R); - - String S = "2b42cee2585a16ea537efcb88009c1aeac693c28b59aa6bbff0baf22730338f6"; - byte[] c = DataChangeUtil.hexToByteArray(S); - - //Address 0x01: ecrecover(hash, v, r, s) - String resultF = precompiled.callEcrecover(a, v, b, c).send(); - collector.logStepPass("ecrecover函数返回值:" + resultF); - collector.assertEqual(ecrecover, resultF.toLowerCase()); - - //Address 0x02: sha256(data) - byte[] resultD = precompiled.callSha256(bytes).send(); - String hexValue2 = DataChangeUtil.bytesToHex(resultD); - collector.logStepPass("Sha256函数返回值:" + hexValue2); - - //Address 0x03: ripemd160(data) - byte[] resultE = precompiled.callRipemd160(bytes).send(); - String hexValue3 = DataChangeUtil.bytesToHex(resultE); - collector.logStepPass("ripemd160函数返回值:" + hexValue3); -// collector.assertEqual(ripemd160 ,hexValue3); - - //0x04 dataCopy() test pass - tx = precompiled.callDatacopy(bytes).send(); - collector.logStepPass("PrecompiledTest callDatacopy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - byte[] callDatacopyValueByte = precompiled.getCallDatacopyValue().send(); - collector.logStepPass("PrecompiledTest 0x04 result is:" + new String(callDatacopyValueByte)); - - //0x05 callBigModExp() test pass - byte[] base = DataChangeUtil.hexToByteArray("0000000000000000000000000000000462e4ded88953a39ce849a8a7fa163fa9"); - byte[] exponent = DataChangeUtil.hexToByteArray("1f4a3123ff1223a1b0d040057af8a9fe70baa9258e0b959273ffc5718c6d4cc7"); - byte[] modulus = DataChangeUtil.hexToByteArray("00000000000000000000000000077d29a9c710b7e616683f194f18c43b43b869"); - - tx = precompiled.callBigModExp(base, exponent, modulus).send(); - collector.logStepPass("PrecompiledTest callBigModExp successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - byte[] callBigModExpValueByte = precompiled.getCallBigModExpValue().send(); - collector.logStepPass("PrecompiledTest 0x05 result is:" + DataChangeUtil.bytesToHex(callBigModExpValueByte)); - - - //Address 0x06: bn256Add(ax, ay, bx, by)(test pass) - //输入参数规则:y^2 = x^3 + 3 - tx = precompiled.callBn256Add(new BigInteger("1"), new BigInteger("2"), new BigInteger("1"), new BigInteger("2")).send(); - collector.logStepPass("PrecompiledTest callBn256Add successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - List list = precompiled.getCallBn256AddValues().send(); - for (int i = 0; i < list.size(); i++) { - collector.logStepPass("PrecompiledTest 0x06 result " + i + " is:" + list.get(i).toString()); - } - - //Address 0x07: bn256ScalarMul(x, y, scalar) - byte[] pointXByte = DataChangeUtil.hexToByteArray("2bd3e6d0f3b142924f5ca7b49ce5b9d54c4703d7ae5648e61d02268b1a0a9fb7"); - byte[] pointYByte = DataChangeUtil.hexToByteArray("21611ce0a6af85915e2f1d70300909ce2e49dfad4a4619c8390cae66cefdb204"); - byte[] scalarByte = DataChangeUtil.hexToByteArray("00000000000000000000000000000000000000000000000011138ce750fa15c2"); - tx = precompiled.callBn256ScalarMul(pointXByte, pointYByte, scalarByte).send(); - collector.logStepPass("PrecompiledTest callBigModExp successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - List callBn256ScalarMulList = precompiled.getCallBn256ScalarMulValues().send(); - for (int i = 0; i < callBn256ScalarMulList.size(); i++) { - collector.logStepPass("PrecompiledTest call 0x07 result " + i + " is:" + DataChangeUtil.bytesToHex((byte[]) callBn256ScalarMulList.get(i))); - - } - - //Address 0x08:callBn256Pairing - String hexStr = "1c76476f4def4bb94541d57ebba1193381ffa7aa76ada664dd31c16024c43f593034dd2920f673e204fee2811c678745fc819b55d3e9d294e45c9b03a76aef41209dd15ebff5d46c4bd888e51a93cf99a7329636c63514396b4a452003a35bf704bf11ca01483bfa8b34b43561848d28905960114c8ac04049af4b6315a416782bb8324af6cfc93537a2ad1a445cfd0ca2a71acd7ac41fadbf933c2a51be344d120a2a4cf30c1bf9845f20c6fe39e07ea2cce61f0c9bb048165fe5e4de877550111e129f1cf1097710d41c4ac70fcdfa5ba2023c6ff1cbeac322de49d1b6df7c2032c61a830e3c17286de9462bf242fca2883585b93870a73853face6a6bf411198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c21800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa"; - tx = precompiled.callBn256Pairing(DataChangeUtil.hexToByteArray(hexStr)).send(); - collector.logStepPass("PrecompiledTest callBn256Pairing successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - byte[] callBn256PairingValue = precompiled.getCallBn256PairingValue().send(); - collector.logStepPass("PrecompiledTest 0x08 result is:" + DataChangeUtil.bytesToHex(callBn256PairingValue)); - - - } catch (Exception e) { - collector.logStepFail("PrecompiledTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exceptionhandle/AssertHandleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exceptionhandle/AssertHandleTest.java deleted file mode 100644 index 7244be7526..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exceptionhandle/AssertHandleTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.evm.v0_7_1.exceptionhandle; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import network.platon.contracts.evm.v0_7_1.AssertHandle; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title assert(bool condition)函数测试 - * 如果条件不满足,则使当前交易没有效果 ,gas正常消耗,用于检查内部错误 - * 1.数组越界访问产生生异常验证,如i >= x.length 或 i < 0时访问x[i]————(编译异常) - * 2.定长bytesN数组越界访问产生异常验证————(编译异常) - * 3.被除数为0或取模运算产生异常验证————(编译异常) - * 4.对一个二进制移动一个负的值产生异常验证————(编译异常) - * 5.整数显式转换为枚举,将过大值,负值转为枚举类型则抛出异常 - * 6.调用内部函数类型的零初始化变量验证————(编译异常) - * 7.用assert的参数为false产生异常验证 - * @description: - * @author: albedo - * @create: 2019/12/31 - */ -public class AssertHandleTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "intChangeException", - author = "albedo", showName = "exceptionhandle.AssertHandle-整数显式转换为枚举", sourcePrefix = "evm/0.7.1") - public void testIntChangeException() { - try { - prepare(); - AssertHandle handle = AssertHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("AssertHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = handle.intChangeException(new BigInteger("2")).send(); - collector.logStepPass("checkout integer contains enums,transactionHah="+receipt.getTransactionHash()); - try { - handle.intChangeException(new BigInteger("5")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout integer large then enums:" + e.getMessage()); - } - try { - handle.intChangeException(new BigInteger("-1")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout integer less then enums:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("AssertHandleTest testIntChangeException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "paramException", - author = "albedo", showName = "exceptionhandle.AssertHandle-调用assert的参数为false", sourcePrefix = "evm/0.7.1") - public void testParamException() { - try { - prepare(); - AssertHandle handle = AssertHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("AssertHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = handle.paramException(new BigInteger("5")).send(); - collector.logStepPass("checkout normal,transactionHash="+receipt.getTransactionHash()); - try { - handle.paramException(new BigInteger("11")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout assert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("AssertHandleTest testParamException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exceptionhandle/RequireMessageHandleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exceptionhandle/RequireMessageHandleTest.java deleted file mode 100644 index 0538341958..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exceptionhandle/RequireMessageHandleTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.evm.v0_7_1.exceptionhandle; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import network.platon.contracts.evm.v0_7_1.RequireMessageHandle; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title require(bool condition, string message)函数(该函数可以自定义message信息)测试 - * @description: - * @author: albedo - * @create: 2019/12/31 - */ -public class RequireMessageHandleTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "albedo", showName = "exceptionhandle.RequireMessageHandle-require(bool condition, string message)函数", sourcePrefix = "evm/0.7.1") - public void testParamException() { - try { - prepare(); - RequireMessageHandle handle = RequireMessageHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RequireMessageHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = handle.paramException(new BigInteger("5")).send(); - collector.logStepPass("checkout require normal,transactionHash="+receipt.getTransactionHash()); - try { - handle.paramException(new BigInteger("11")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout require throw exception:"+e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RequireMessageHandleTest testParamException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exceptionhandle/RevertHandleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exceptionhandle/RevertHandleTest.java deleted file mode 100644 index 2ac4737d58..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exceptionhandle/RevertHandleTest.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.test.evm.v0_7_1.exceptionhandle; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import network.platon.contracts.evm.v0_7_1.RevertHandle; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title revert函数测试 - * 1.revert()函数————终止运行并撤销状态更改————验证 - * 2.revert(string reason)函数————终止运行并撤销状态更改,并提供一个解释性的字符串————验证 - * @description: - * @author: albedo - * @create: 2019/12/31 - */ -public class RevertHandleTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "revertCheck", - author = "albedo", showName = "exceptionhandle.RevertHandle-revert()函数", sourcePrefix = "evm/0.7.1") - public void testRevertCheck() { - try { - prepare(); - RevertHandle handle = RevertHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RevertHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt =handle.revertCheck(new BigInteger("5")).send(); - collector.logStepPass("checkout revert normal,transactionHah="+receipt.getTransactionHash()); - try { - handle.revertCheck(new BigInteger("11")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout revert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RevertHandleTest testRevertCheck failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "revertReasonCheck", - author = "albedo", showName = "exceptionhandle.RevertHandle-revert(string reason)函数", sourcePrefix = "evm/0.7.1") - public void testParamException() { - try { - prepare(); - RevertHandle handle = RevertHandle.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = handle.getContractAddress(); - String transactionHash = handle.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("RevertHandle issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + handle.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt =handle.revertReasonCheck(new BigInteger("5")).send(); - collector.logStepPass("checkout revert normal,transactionHah="+receipt.getTransactionHash()); - try { - handle.revertReasonCheck(new BigInteger("11")).send(); - } catch (TransactionException e) { - collector.logStepPass("checkout revert throw exception:" + e.getMessage()); - } - } catch (Exception e) { - collector.logStepFail("RevertHandleTest testParamException failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exec_efficiency/BubbleSortTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exec_efficiency/BubbleSortTest.java deleted file mode 100644 index 0b914d86e8..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exec_efficiency/BubbleSortTest.java +++ /dev/null @@ -1,86 +0,0 @@ -package network.platon.test.evm.v0_7_1.exec_efficiency; - - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.BubbleSort; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - - -/** - * @title 冒泡排序 - * @description: - * @author: liweic - * @create: 2020/03/02 - **/ -public class BubbleSortTest extends ContractPrepareTest { - - private BigInteger numberOfCalls; - private String contractAddress; - - @Before - public void before() { - numberOfCalls = new BigInteger(driverService.param.get("numberOfCalls")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "exec_efficiency.BubbleSortTest-冒泡排序", sourcePrefix = "evm/0.7.1") - public void test() { - prepare(); - try { - - Integer numberOfCalls = Integer.valueOf(driverService.param.get("numberOfCalls")); - - BubbleSort bubblesort = BubbleSort.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = bubblesort.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + bubblesort.getTransactionReceipt().get().getGasUsed()); - - List array = new ArrayList<>(numberOfCalls); - - int min = -1000, max = 2000; - for (int i = 0; i < numberOfCalls; i++) { - BigInteger a = BigInteger.valueOf(min + (int) (Math.random() * 3001)); - array.add(a); - } - - collector.logStepPass("before sort:" + array.toString()); - BigInteger n = BigInteger.valueOf(array.size()); - TransactionReceipt transactionReceipt = bubblesort.BubbleArrays(array, n, new BigInteger("1000")).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - List resultarr = bubblesort.get_arr().send(); - collector.logStepPass("after sort:" + resultarr); - - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - - /** - * int 数组转 BigInteger - * @param intArray - * @return - */ - private List changeIntToBigInteger(Integer[] intArray) { - List bigIntegerList = new ArrayList<>(); - for (int i = 0; i array = new ArrayList<>(numberOfCalls); - - int min = -1000, max = 2000; - - for (int i = 0; i < numberOfCalls; i++) { - BigInteger a = BigInteger.valueOf(min + (int) (Math.random() * 3001)); - array.add(a); - } - -// Integer[] intArray = new Integer[]{131, 662, 585, 1946, 640, 1339, 1099, 1713, -588, -683, 1452, 56, 350, 1984, 1616, 382, 82, 427, -641, 564, -752, 598, 753, -912, -414, 930, -514, 1005, 793, -872, 964, 188, 1468, -266, 1513, 337, -443, 1712, -310, 1133, 723, -589, 748, 1036, -115, -916, -342, 1430, -133, -572, -137, -939, -415, 610, 937, 1117, -420, 1768, 780, 711, -82, 111, 1725, 172, 1514, -530, 1000, 1104, 1830, -523, -513, -27, 1647, 470, 1425, 835, 186, 1729, -95, -309, 1265, 1754, 452, 38, 472, -10, -238, -721, 435, 700, 904, -126, -802, 1579, 720, 412, -416, -845, 60, 213, 1979, 1154, 637, 531, -475, 1578, -141, 1026, 1032, 623, -158, -113, 41, 316, 47, 720, -427, 255, 547, 199, 888, 1865, 827, 473, 321, 209, -699, 1327, 812, 1645, 289, 288, -885, 1409, 165, 97, -52, 1657, -324, 301, 1375, 1486, -984, -839, -304, 1066, 279, 601, 1850, 217, 1158, 1527, 931, 1550, 484, -427, 946, -324, 145, 150, -845, 985, -700, 523, -452, 33, -495, -279, -47, 788, 1370, 1093, -876, 1707, 759, 538, 842, 1994, 1291, 746, 1542, 1327, 1912, 1088, 385, 1892, 769, -688, 873, -313, 346, 1750, 163, 797, 1909, -639, -869, 1661, 771, 1730, 1973, -730, 1669, 1929, 698, 754, -362, 129, 339, -119, 1299, 837, 895, 1770, -776, 777, 1220, 1311, 278, -364, -42, 761, 256, 219, -518, 401, -942, 924, -628, 1242, 781, 1996, 1534, 444, -340, -451, 1309, -667, -316, -911, 185, 807, -100, -26, -357, 315, 1017, -801, 1630, 703, 1807, 793, -218, 769, 1070, 202, 1119, -305, 1513, 1180, 287, 266, 844, 954, -296, -753, 661, 766, -992, -700, 344, 1322, -852, 1397, -873, 1226, 234, 915, 862, 66, -142, 1381, 1596, 563, 65, 1214, 167, -26, 451, 1786, -722, 1871, 2, -271, -726, 377, 1295, 1540, -166, -925, 477, 1316, 1201, -64, 154, 830, -739, 1929, 1814, 42, 887, 337, 1769, 765, 324, 1250, 1836, -734, -800, -722, 985, 1361, -205, 1189, 1112, -140, -324, 886, 1803, -840, -439, 22, 569, 257, 1436, 449, 422, 1586, 1383, -264, 950, 1796, -572, 113, -834, 822, -144, -585, -656, 1550, 932, 1900, 1872, 821, 864, 200, -220, 589, 1966, 222, -889, -249, 561, -691, 1603, -625, 41, -251, 348, 1956}; -// -// List array = changeIntToBigInteger(intArray); - - - BigInteger n = BigInteger.valueOf(array.size()); -// BigInteger n = new BigInteger("370"); - TransactionReceipt transactionReceipt = insertSort.OuputArrays(array, n, new BigInteger("1000")).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - List resultarr = insertSort.get_arr().send(); - collector.logStepPass("resultarr:" + resultarr); - - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - - /** - * int 数组转 BigInteger - * @param intArray - * @return - */ - private List changeIntToBigInteger(Integer[] intArray) { - List bigIntegerList = new ArrayList<>(); - for (int i = 0; i { -// try { -// semaphore.acquire(); -// credentials = Credentials.create(jsonArray.getJSONObject(finalI).getString("private_key")); -// transactionManager = new RawTransactionManager(web3j, credentials, chainId); -// -// TransactionReceipt transactionReceipt = SimpleStorage.load(contractAddress, web3j, transactionManager, provider, chainId).hello().send(); -// collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash() -// + ", currentBlockNumber:" + transactionReceipt.getBlockNumber()); -// -// byte[] hash = SimpleStorage.load(contractAddress, web3j, transactionManager, provider, chainId).hash().send(); -// collector.logStepPass("contract load successful, current time:" + finalI + ", blockHash:" + DataChangeUtil.bytesToHex(hash)); -// } catch (Exception e) { -// //e.printStackTrace(); -// //collector.logStepFail("call fail.", e.toString()); -// } finally { -// semaphore.release(); -// countDownLatch.countDown(); -// } -// }); -// -// } -// countDownLatch.await(); -// executorService.shutdown(); -// -// } catch (Exception e) { -// collector.logStepFail("The contract fail.", e.toString()); -// } -// } -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exec_efficiency/SpaceComplexityTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exec_efficiency/SpaceComplexityTest.java deleted file mode 100644 index 55337492c2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/exec_efficiency/SpaceComplexityTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.evm.v0_7_1.exec_efficiency; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.SpaceComplexity; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title SpaceComplexityTest - * @description 空间复杂度场景测试 - * @author qcxiao - * @updateTime 2019/12/28 14:39 - */ -public class SpaceComplexityTest extends ContractPrepareTest { - private BigInteger numberOfCalls; - private String contractAddress; - - @Before - public void before() { - numberOfCalls = new BigInteger(driverService.param.get("numberOfCalls")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "exec_efficiency.SpaceComplexityTest-空间复杂度", sourcePrefix = "evm/0.7.1") - public void test() { - prepare(); - try { - SpaceComplexity spaceComplexity = SpaceComplexity.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = spaceComplexity.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + spaceComplexity.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt transactionReceipt = SpaceComplexity.load(contractAddress, web3j, transactionManager, provider, chainId) - .testStorage(numberOfCalls).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - String name = SpaceComplexity.load(contractAddress, web3j, transactionManager, provider, chainId).name().send(); - - if (numberOfCalls.mod(BigInteger.valueOf(2)) == BigInteger.ZERO) { - collector.assertEqual(name, "QCXIAO"); - } else { - collector.assertEqual(name, "qcxiao"); - } - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/Modifier/InheritanceModifierTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/Modifier/InheritanceModifierTest.java deleted file mode 100644 index 07bee5dc01..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/Modifier/InheritanceModifierTest.java +++ /dev/null @@ -1,56 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.Modifier; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.InheritanceModifier; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - *1.验证单一修饰器 - *2.验证特殊_的用法,符合函数修饰器定义的条件,才可以执行函数体内容 - *3.验证修饰器可以接收参数 - *4.验证合约继承情况下的修饰器的使用 - * @author liweic - * @dev 2020/01/02 20:50 - */ - -public class InheritanceModifierTest extends ContractPrepareTest { - private String modifiertest; - - @Before - public void before() { - this.prepare(); - modifiertest = driverService.param.get("modifiertest"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.InheritanceModifierTest-单修饰器函数测试", sourcePrefix = "evm/0.7.1") - public void inheritancemodifier() { - try { - InheritanceModifier inheritanceModifier = InheritanceModifier.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = inheritanceModifier.getContractAddress(); - TransactionReceipt tx = inheritanceModifier.getTransactionReceipt().get(); - collector.logStepPass("InheritanceModifier deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("InheritanceModifier deploy gasUsed:" + inheritanceModifier.getTransactionReceipt().get().getGasUsed()); - - //验证单修饰器函数调用 - BigInteger result = inheritanceModifier.getA().send(); - collector.logStepPass("InheritanceModifier函数返回值:" + result); - collector.assertEqual(modifiertest ,result.toString()); - - - } catch (Exception e) { - collector.logStepFail("InheritanceModifierContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/Modifier/ModifiersTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/Modifier/ModifiersTest.java deleted file mode 100644 index b8b86b4340..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/Modifier/ModifiersTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.Modifier; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.Modifiers; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - - -/** - * @title 验证多修饰器 - * @description: - * @author: liweic - * @create: 2020/01/02 20:01 - **/ - -public class ModifiersTest extends ContractPrepareTest { - - private String modifierstest; - - @Before - public void before() { - this.prepare(); - modifierstest = driverService.param.get("modifierstest"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.ModifiersTest-多修饰器函数测试", sourcePrefix = "evm/0.7.1") - public void modifiers() { - try { - Modifiers modifiers = Modifiers.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = modifiers.getContractAddress(); - TransactionReceipt tx = modifiers.getTransactionReceipt().get(); - collector.logStepPass("modifiers deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("modifiers deploy gasUsed:" + modifiers.getTransactionReceipt().get().getGasUsed()); - - //验证多修饰器函数调用 - TransactionReceipt result = modifiers.test1().send(); - collector.logStepPass("交易hash:" + result.getTransactionHash()); - - BigInteger a = modifiers.test2().send(); - collector.logStepPass("modifiers函数返回值:" + a); - collector.assertEqual(modifierstest ,a.toString()); - - - } catch (Exception e) { - collector.logStepFail("ModifiersContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/assembly/AssemblyReturnsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/assembly/AssemblyReturnsTest.java deleted file mode 100644 index 305571bba4..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/assembly/AssemblyReturnsTest.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.assembly; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple5; -import network.platon.contracts.evm.v0_7_1.AssemblyReturns; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 验证内联汇编关键字assembly,汇编赋值并返回多类型参数 - * @description: - * @author: liweic - * @create: 2020/01/07 19:01 - **/ - -public class AssemblyReturnsTest extends ContractPrepareTest { - private String B; - private String C; - - - @Before - public void before() { - this.prepare(); - B = driverService.param.get("B"); - C = driverService.param.get("C"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.AssemblyReturnsTest-AssemblyReturns测试", sourcePrefix = "evm/0.7.1") - public void Assemblyreturns() { - try { - AssemblyReturns assemblyreturns = AssemblyReturns.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = assemblyreturns.getContractAddress(); - TransactionReceipt tx = assemblyreturns.getTransactionReceipt().get(); - collector.logStepPass("AssemblyReturns deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("AssemblyReturns deploy gasUsed:" + assemblyreturns.getTransactionReceipt().get().getGasUsed()); - - //验证AssemblyReturns - Tuple5 result = assemblyreturns.f().send(); - - collector.logStepPass("Assemblyreturns第一个返回值:" + result.getValue1()); - collector.assertEqual(new BigInteger("2") ,result.getValue1()); - - byte[] value2 = (byte[])result.getValue2(); - String b = DataChangeUtil.bytesToHex(value2); - collector.logStepPass("Assemblyreturns第二个返回值:" + b); - collector.assertEqual(B ,b); - - byte[] value3 = (byte[])result.getValue3(); - String c = DataChangeUtil.bytesToHex(value3); - collector.logStepPass("Assemblyreturns第三个返回值:" + c); - collector.assertEqual(C ,c); - - collector.logStepPass("Assemblyreturns第四个返回值:" + result.getValue4()); - collector.assertEqual(true ,result.getValue4()); - - collector.logStepPass("Assemblyreturns第五个返回值:" + result.getValue5()); -// collector.assertEqual("lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2" ,result.getValue5().toString()); - collector.assertEqual("atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq" ,result.getValue5().toString()); - - } catch (Exception e) { - collector.logStepFail("AssemblyReturnsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/assembly/SumAssemblyTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/assembly/SumAssemblyTest.java deleted file mode 100644 index 57a21ec90f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/assembly/SumAssemblyTest.java +++ /dev/null @@ -1,57 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.assembly; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.SumAssembly; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - 1.验证内联汇编在库中的使用 - 2.验证汇编的操作码add,mul等 - * @author liweic - * @dev 2020/01/08 14:30 - */ - -public class SumAssemblyTest extends ContractPrepareTest { - private String sum; - - - @Before - public void before() { - this.prepare(); - sum = driverService.param.get("sum"); - - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.SumAssemblyTest-汇编操作指令测试", sourcePrefix = "evm/0.7.1") - public void Sumassembly() { - try { - SumAssembly sumassembly = SumAssembly.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = sumassembly.getContractAddress(); - TransactionReceipt tx = sumassembly.getTransactionReceipt().get(); - collector.logStepPass("SumAssembly deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("SumAssembly deploy gasUsed:" + sumassembly.getTransactionReceipt().get().getGasUsed()); - - //验证内联汇编操作指令 - BigInteger result = sumassembly.sum().send(); - - collector.logStepPass("SumAssembly返回值:" + result); - collector.assertEqual(sum ,result.toString()); - - - } catch (Exception e) { - collector.logStepFail("SumAssemblyContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/contractRelatedAndFallback/FallbackTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/contractRelatedAndFallback/FallbackTest.java deleted file mode 100644 index 111e0dad00..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/contractRelatedAndFallback/FallbackTest.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.contractRelatedAndFallback; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.FallBack; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - - -/** - 1.验证合约关键字this,表示当前合约,可以显示的转换为Address - 2.验证Fallback函数,调用了未命名的函数等方式 - * @author liweic - * @dev 2020/01/02 18:00 - */ - -public class FallbackTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.FallbackTest-this和回退函数测试", sourcePrefix = "evm/0.7.1") - public void fallback() { - try { - FallBack fallback = FallBack.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = fallback.getContractAddress(); - TransactionReceipt tx = fallback.getTransactionReceipt().get(); - collector.logStepPass("FallBack deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("FallBack deploy gasUsed:" + fallback.getTransactionReceipt().get().getGasUsed()); - - //验证this和回退函数 - BigInteger a = fallback.getA().send(); - collector.logStepPass("回退函数调用前a的值:" + a); - - TransactionReceipt functionnotexist = fallback.CallFunctionNotExist().send(); - collector.logStepPass("打印fallback交易hash:" + functionnotexist.getTransactionHash()); - - BigInteger falla = fallback.getA().send(); - collector.logStepPass("回退函数调用后a的值:" + falla); - collector.assertEqual(new BigInteger("100"),falla); - - } catch (Exception e) { - collector.logStepFail("FallbackContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/delete/DeleteDemoTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/delete/DeleteDemoTest.java deleted file mode 100644 index 40962994d1..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/delete/DeleteDemoTest.java +++ /dev/null @@ -1,113 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.delete; - -import com.alaya.bech32.Bech32; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_7_1.DeleteDemo; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * 验证delete关键字,验证各种类型的delete,包括bool,uint,address,bytes,string,enum - * @author liweic - * @dev 2020/01/09 16:10 - */ - -public class DeleteDemoTest extends ContractPrepareTest { - - private String i; - private String addr; - - @Before - public void before() { - this.prepare(); - i = driverService.param.get("i"); - addr = driverService.param.get("addr"); - - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.DeleteDemoTest-delete操作测试", sourcePrefix = "evm/0.7.1") - public void Deletedemo() { - try { - DeleteDemo deletedemo = DeleteDemo.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = deletedemo.getContractAddress(); - TransactionReceipt tx = deletedemo.getTransactionReceipt().get(); - collector.logStepPass("DeleteDemo deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("DeleteDemo deploy gasUsed:" + deletedemo.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt result = deletedemo.deleteAttr().send(); - collector.logStepPass("打印result交易Hash:" + result.getTransactionHash()); - - //验证delete bool - boolean delb = deletedemo.getbool().send(); - collector.logStepPass("delete bool返回值:" + delb); - collector.assertEqual(false ,delb); - - //验证delete uint - BigInteger deli = deletedemo.getunit().send(); - collector.logStepPass("delete uint返回值:" + deli); - collector.assertEqual(i ,deli.toString()); - - //验证delete addr - String deladdr = deletedemo.getaddress().send(); - collector.logStepPass("delete addr返回值:" + deladdr); - addr = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(), addr); - collector.assertEqual(addr ,deladdr); - - //delete bytes - byte[] delbytes = deletedemo.getbytes().send(); - String a = DataChangeUtil.bytesToHex(delbytes); - collector.logStepPass("delete bytes返回值:" + a); - collector.assertEqual("" ,a); - - //delete str - String delstr = deletedemo.getstr().send(); - collector.logStepPass("delete str返回值:" + delstr); - collector.assertEqual("" ,delstr); - - //delete enum - BigInteger delenum = deletedemo.getenum().send(); - collector.logStepPass("delete enum返回值:" + delenum); - collector.assertEqual("0" ,delenum.toString()); - - //delete dynamicarray - BigInteger deldynamic = deletedemo.delDynamicArray().send(); - collector.logStepPass("delete dynamicarray返回值:" + deldynamic); - collector.assertEqual("0" ,delenum.toString()); - - //delete struct - TransactionReceipt st = deletedemo.delStruct(new BigInteger("1")).send(); - - Tuple2 delstruct = deletedemo.getstruct().send(); - collector.logStepPass("struct执行delete后第一个值:" + delstruct.getValue1()); - collector.assertEqual("0" ,delstruct.getValue1().toString()); - collector.logStepPass("struct执行delete后第二个值:" + delstruct.getValue2()); - collector.assertEqual("" ,delstruct.getValue2().toString()); - - //delete struct mapping - TransactionReceipt sta = deletedemo.delMapping(new BigInteger("1")).send(); - - Tuple2 delstructmapping = deletedemo.getdelMapping().send(); - collector.logStepPass("struct执行delete后mapping值:" + delstructmapping.getValue1()); - collector.assertEqual("2000" ,delstructmapping.getValue1().toString()); - - collector.logStepPass("struct执行delete后非mapping值:" + delstructmapping.getValue2()); - collector.assertEqual("0" ,delstructmapping.getValue2().toString()); - - - } catch (Exception e) { - collector.logStepFail("DeleteDemoContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/GetterTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/GetterTest.java deleted file mode 100644 index 1020efb9b7..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/GetterTest.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.functionVisibilityAndDecarations; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.Getter; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import com.alaya.tuples.generated.Tuple2; - -import java.math.BigInteger; - - -/** - * @title 验证getter函数,状态变量所创建的访问器函数,与变量同名。以internal访问时,按状态变量的方式使用,若以external的方式访问时,则需要通过访问器函数 - * @description: - * @author: liweic - * @create: 2020/01/02 15:01 - **/ - -public class GetterTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.GetterTest-getter函数测试", sourcePrefix = "evm/0.7.1") - public void getter() { - try { - Getter getter = Getter.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = getter.getContractAddress(); - TransactionReceipt tx = getter.getTransactionReceipt().get(); - collector.logStepPass("getter deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("getter deploy gasUsed:" + getter.getTransactionReceipt().get().getGasUsed()); - - //验证编译器创建的getter函数 - BigInteger data = getter.data().send(); - collector.logStepPass("getter函数返回值:" + data); - collector.assertEqual(new BigInteger("10"),data); - - Tuple2 data2 = getter.f().send(); - //以internal访问时,按状态变量的方式使用 - collector.logStepPass("interal访问data的返回值:" + data2.getValue1()); - collector.assertEqual(new BigInteger("10"),data2.getValue1()); - //以external的方式访问时,则需要通过访问器函数 - collector.logStepPass("external访问data的返回值:" + data2.getValue2()); - collector.assertEqual(new BigInteger("10"),data2.getValue2()); - - - } catch (Exception e) { - collector.logStepFail("GetterContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/InterTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/InterTest.java deleted file mode 100644 index 2c55ea9e87..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/InterTest.java +++ /dev/null @@ -1,53 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.functionVisibilityAndDecarations; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.Inter; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 验证internal在继承合约里的调用 - * @description: - * @author: liweic - * @create: 2020/01/02 16:01 - **/ - -public class InterTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.InterTest-函数可见性继承合约调用内部方法测试", sourcePrefix = "evm/0.7.1") - public void inter() { - try { - Inter intercall = Inter.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = intercall.getContractAddress(); - TransactionReceipt tx = intercall.getTransactionReceipt().get(); - collector.logStepPass("Inter deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("Inter deploy gasUsed:" + intercall.getTransactionReceipt().get().getGasUsed()); - - //验证继承合约可以调用父合约的内部方法 - BigInteger interdata = intercall.g().send(); - collector.logStepPass("public可见函数返回值:" + interdata); - collector.assertEqual(new BigInteger("3"),interdata); - - } catch (Exception e) { - collector.logStepFail("InterContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/PayableTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/PayableTest.java deleted file mode 100644 index 56399f49a7..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/PayableTest.java +++ /dev/null @@ -1,63 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.functionVisibilityAndDecarations; - -import com.alaya.bech32.Bech32; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.Payable; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 验证Payable声明 - * @description: - * @author: liweic - * @create: 2020/01/02 16:01 - **/ - -public class PayableTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.PayableTest-函数声明方式Payable测试", sourcePrefix = "evm/0.7.1") - public void payable() { - try { - Payable payable = Payable.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = payable.getContractAddress(); - TransactionReceipt tx = payable.getTransactionReceipt().get(); - collector.logStepPass("paybale deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("paybale deploy gasUsed:" + payable.getTransactionReceipt().get().getGasUsed()); - - //验证payable声明 - - String toAdddress = "0x8a9B36694F1eeeb500c84A19bB34137B05162EC4"; - toAdddress = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(), toAdddress); - - BigInteger payablepremoney = payable.getBalances(toAdddress).send(); - collector.logStepPass("转账前余额:" + payablepremoney); - TransactionReceipt result = payable.transfer(toAdddress, new BigInteger("100")).send(); - BigInteger payableaftermoney = payable.getBalances(toAdddress).send(); - collector.logStepPass("转账后余额:" + payableaftermoney); - int a = Integer.valueOf(payableaftermoney.toString()); - int b = Integer.valueOf(payablepremoney.toString()); - int payablecount = a - b; - collector.assertEqual(100,payablecount); - - - } catch (Exception e) { - collector.logStepFail("PayableContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/SelectorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/SelectorTest.java deleted file mode 100644 index 86c2952e82..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/SelectorTest.java +++ /dev/null @@ -1,51 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.functionVisibilityAndDecarations; - - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.Selector; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - - -/** - * 验证public (或 external) 函数有一个特殊的成员selector, 它对应一个ABI 函数选择器. - * @author liweic - * @dev 2020/01/11 20:30 - */ - -public class SelectorTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.SelectorTest-Selector测试", sourcePrefix = "evm/0.7.1") - public void selector() { - try { - Selector selector = Selector.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = selector.getContractAddress(); - TransactionReceipt tx = selector.getTransactionReceipt().get(); - collector.logStepPass("Selector deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("Selector deploy gasUsed:" + selector.getTransactionReceipt().get().getGasUsed()); - - //验证payable声明 - byte[] result = selector.f().send(); - String f = DataChangeUtil.bytesToHex(result); - - collector.logStepPass("selector:" + f); - collector.assertEqual("b8c9d365",f); - - } catch (Exception e) { - collector.logStepFail("SelectorContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/VisibilityTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/VisibilityTest.java deleted file mode 100644 index d30774a1a2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functionVisibilityAndDecarations/VisibilityTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.functionVisibilityAndDecarations; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.Visibility; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 验证函数四种可见性external,public,internal,private - * @description: - * @author: liweic - * @create: 2020/01/02 16:01 - **/ - -public class VisibilityTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.VisibilityTest-函数可见性测试", sourcePrefix = "evm/0.7.1") - public void Visibility() { - try { - Visibility visibility = Visibility.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = visibility.getContractAddress(); - TransactionReceipt tx = visibility.getTransactionReceipt().get(); - collector.logStepPass("Visibility deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("Visibility deploy gasUsed:" + visibility.getTransactionReceipt().get().getGasUsed()); - - //验证public可见性 - BigInteger pubdata = visibility.fpub(new BigInteger("10")).send(); - collector.logStepPass("public可见函数返回值:" + pubdata); - collector.assertEqual(new BigInteger("13"),pubdata); - - //验证external可见性 - BigInteger extdata = visibility.fe(new BigInteger("10")).send(); - collector.logStepPass("external可见函数返回值:" + extdata); - collector.assertEqual(new BigInteger("12"),extdata); - - - } catch (Exception e) { - collector.logStepFail("VisibilityContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functioncalls/CallExternalTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functioncalls/CallExternalTest.java deleted file mode 100644 index 34a9838638..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functioncalls/CallExternalTest.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.functioncalls; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.CallExternal; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.apache.commons.lang.StringUtils; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.util.List; - - -/** - * @title 验证函数外部调用 - * @description: - * @author: liweic - * @create: 2020/01/02 19:11 - **/ - -public class CallExternalTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.CallExternalTest-函数外部调用测试", sourcePrefix = "evm/0.7.1") - public void callexternal() { - try { - CallExternal callexternal = CallExternal.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = callexternal.getContractAddress(); - TransactionReceipt tx = callexternal.getTransactionReceipt().get(); - collector.logStepPass("callexternal deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("callexternal deploy gasUsed:" + callexternal.getTransactionReceipt().get().getGasUsed()); - - //验证函数外部调用 - TransactionReceipt result = callexternal.getResult(new BigInteger("1")).send(); - collector.logStepPass("打印交易Hash:" + result.getTransactionHash()); - collector.logStepPass("intercall函数返回值:" + result); - - List eventResult =callexternal.getExternalCValueEvents(result); - String cv=eventResult.get(0).log.getData(); - collector.assertEqual(subHexData(cv),subHexData("3")); - - - } catch (Exception e) { - collector.logStepFail("CallExternalContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - - private String subHexData(String hexStr) { - if (StringUtils.isBlank(hexStr)) { - throw new IllegalArgumentException("string is blank"); - } - if (StringUtils.startsWith(hexStr, "0x")) { - hexStr = StringUtils.substringAfter(hexStr, "0x"); - } - byte[] addi = hexStr.getBytes(); - for (int i = 0; i < addi.length; i++) { - if (addi[i] != 0) { - hexStr = StringUtils.substring(hexStr, i - 1); - break; - } - } - return hexStr; - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functioncalls/InternalCallTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functioncalls/InternalCallTest.java deleted file mode 100644 index a82c7759db..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functioncalls/InternalCallTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.functioncalls; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.IntenalCall; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - - -/** - * @title 验证函数内部调用 - * @description: - * @author: liweic - * @create: 2020/01/02 19:01 - **/ - -public class InternalCallTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.InternalCallTest-函数内部调用测试", sourcePrefix = "evm/0.7.1") - public void intercall() { - try { - IntenalCall intercall = IntenalCall.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = intercall.getContractAddress(); - TransactionReceipt tx = intercall.getTransactionReceipt().get(); - collector.logStepPass("intercall deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("intercall deploy gasUsed:" + intercall.getTransactionReceipt().get().getGasUsed()); - - //验证函数内部调用 - BigInteger result = intercall.getResult().send(); - collector.logStepPass("intercall函数返回值:" + result); - collector.assertEqual(new BigInteger("9"),result); - - - } catch (Exception e) { - collector.logStepFail("InterCallContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functioncalls/NamedCallTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functioncalls/NamedCallTest.java deleted file mode 100644 index 1448ac7701..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/functioncalls/NamedCallTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.functioncalls; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_7_1.NamedCall; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - - -/** - * @title 验证函数具名调用 - * @description: - * @author: liweic - * @create: 2020/01/02 19:11 - **/ - -public class NamedCallTest extends ContractPrepareTest { - - @Before - public void before() { - - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.NamedCallTest-函数具名调用测试", sourcePrefix = "evm/0.7.1") - public void namedcall() { - try { - NamedCall namedcall = NamedCall.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = namedcall.getContractAddress(); - TransactionReceipt tx = namedcall.getTransactionReceipt().get(); - collector.logStepPass("namedcall deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("namedcall deploy gasUsed:" + namedcall.getTransactionReceipt().get().getGasUsed()); - - //交换传入值的顺序并返回 - Tuple2 result = namedcall.exchange(new BigInteger("1"),new BigInteger("2")).send(); - collector.logStepPass("exchange函数返回值:" + result); - - //任意顺序的通过变量名来指定参数值 - Tuple2 nametesult = namedcall.namecall().send(); - collector.logStepPass("namecall函数返回值:" + nametesult); - collector.assertEqual("2",result.getValue1().toString()); - collector.assertEqual("1",result.getValue2().toString()); - - - } catch (Exception e) { - collector.logStepFail("NamedCallContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/paramandreturns/FunctionParamTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/paramandreturns/FunctionParamTest.java deleted file mode 100644 index 262e613269..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/paramandreturns/FunctionParamTest.java +++ /dev/null @@ -1,54 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.paramandreturns; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.FunctionParam; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - - -/** - * @title 入参是函数的使用 - * @description: - * @author: liweic - * @create: 2020/01/11 20:20 - **/ - - -public class FunctionParamTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.FunctionParamTest-参数是函数的类型测试", sourcePrefix = "evm/0.7.1") - public void Functionparam() { - try { - - FunctionParam functionparam = FunctionParam.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = functionparam.getContractAddress(); - TransactionReceipt tx = functionparam.getTransactionReceipt().get(); - collector.logStepPass("FunctionParam deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("FunctionParam deploy gasUsed:" + functionparam.getTransactionReceipt().get().getGasUsed()); - - BigInteger t = functionparam.t().send(); - collector.logStepPass("FunctionParam函数返回值:" + t); - collector.assertEqual("7",t.toString()); - - } catch (Exception e) { - collector.logStepFail("FunctionParamContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/paramandreturns/PramaAndReturnsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/paramandreturns/PramaAndReturnsTest.java deleted file mode 100644 index 0cf4110985..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/paramandreturns/PramaAndReturnsTest.java +++ /dev/null @@ -1,102 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.paramandreturns; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tuples.generated.Tuple2; -import network.platon.contracts.evm.v0_7_1.PramaAndReturns; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - -/** - * @title 参数和返回类型 - * @description: - * @author: liweic - * @create: 2019/12/30 15:01 - **/ - - -public class PramaAndReturnsTest extends ContractPrepareTest { - - private String a; - private String b; - private String c; - - @Before - public void before() { - this.prepare(); - a = driverService.param.get("a"); - b = driverService.param.get("b"); - c = driverService.param.get("c"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.PramaAndReturnsTest-参数和返回类型测试", sourcePrefix = "evm/0.7.1") - public void ParamAndReturn() { - try { - - PramaAndReturns pramaAndReturns = PramaAndReturns.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = pramaAndReturns.getContractAddress(); - TransactionReceipt tx = pramaAndReturns.getTransactionReceipt().get(); - collector.logStepPass("pramaAndReturnstest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("pramaAndReturnstest deploy gasUsed:" + pramaAndReturns.getTransactionReceipt().get().getGasUsed()); - - BigInteger resultA = pramaAndReturns.InputParam(new BigInteger(a)).send(); - collector.logStepPass("InputParam函数返回值:" + resultA); - collector.assertEqual("100",resultA.toString()); - - //调用没有返回值的函数 - TransactionReceipt transactionReceipt = pramaAndReturns.NoOutput(new BigInteger("1"),new BigInteger("1")).send(); - collector.logStepPass("NoOutput NoOutput successful.transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - ////验证函数NoOutput是否调用成功 - BigInteger resultB = pramaAndReturns.getS().send(); - collector.logStepPass("验证的S值为: " + resultB); - collector.assertEqual(new BigInteger("1"), resultB); - - BigInteger resultC = pramaAndReturns.OmitParam(new BigInteger("10"), new BigInteger("20")).send(); - collector.logStepPass("OmitParam函数返回值为: " + resultC); - collector.assertEqual(new BigInteger("10"), resultC); - - //入参和出参均为数组 - List bigIntegerList = new ArrayList(); - bigIntegerList.add(new BigInteger(a)); - bigIntegerList.add(new BigInteger(b)); - bigIntegerList.add(new BigInteger(c)); - - List resList = pramaAndReturns.IuputArray(bigIntegerList).send(); - collector.logStepPass("IuputArray第一个数: " + resList.get(0)); - collector.assertEqual("100", resList.get(0).toString()); - collector.logStepPass("IuputArray第二个数: " + resList.get(1)); - collector.assertEqual("1", resList.get(1).toString()); - collector.logStepPass("IuputArray第三个数: " + resList.get(2)); - collector.assertEqual("3", resList.get(2).toString()); - - //返回值类型是字符串 - String resultD = pramaAndReturns.OuputString().send(); - collector.logStepPass("返回的字符串是: " + resultD); - collector.assertEqual(resultD, "What's up man"); - - //多个返回值且返回类型是数组 - Tuple2 resultE = pramaAndReturns.OuputArrays().send(); - collector.logStepPass("第一个数组是: " + resultE.getValue1()); - collector.assertEqual("[10, 2, 3]", resultE.getValue1().toString()); - collector.logStepPass("第二个数组是: " + resultE.getValue2()); - collector.assertEqual("[10, 2, 3]", resultE.getValue2().toString()); - - } catch (Exception e) { - collector.logStepFail("ParamAndReturnsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/ABIFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/ABIFunctionsTest.java deleted file mode 100644 index 3d5bfbbdfd..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/ABIFunctionsTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.specialVariablesAndFunctions; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.ABIFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; -/** - * @title 验证ABI编解码函数 - * @description: - * @author: liweic - * @create: 2019/12/30 19:01 - **/ - -public class ABIFunctionsTest extends ContractPrepareTest { - - private String encodeWithSignature; - private String encode; - private String encodePacked; - - @Before - public void before() { - this.prepare(); - encodeWithSignature = driverService.param.get("encodeWithSignature"); - encode = driverService.param.get("encode"); - encodePacked = driverService.param.get("encodePacked"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.ABIFunctionsTest-ABI函数测试", sourcePrefix = "evm/0.7.1") - public void ABIfunction() { - try { - ABIFunctions abiFunctions = ABIFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = abiFunctions.getContractAddress(); - TransactionReceipt tx = abiFunctions.getTransactionReceipt().get(); - collector.logStepPass("ABIFunctionsTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("ABIFunctionsTest deploy gasUsed:" + abiFunctions.getTransactionReceipt().get().getGasUsed()); - - //验证abi.encodeWithSignature函数 - byte[] resultA = abiFunctions.getEncodeWithSignature().send(); - String hexValue = DataChangeUtil.bytesToHex(resultA); - collector.logStepPass("getEncodeWithSignature函数返回值:" + hexValue); - collector.assertEqual(encodeWithSignature ,hexValue); - - //验证abi.encode函数 - byte[] resultB = abiFunctions.getEncode().send(); - String hexValue2 = DataChangeUtil.bytesToHex(resultB); - collector.logStepPass("getEncode函数返回值:" + hexValue2); - collector.assertEqual(encode ,hexValue2); - - //验证abi.encodePacked函数 - byte[] resultC = abiFunctions.getEncodePacked().send(); - String hexValue3 = DataChangeUtil.bytesToHex(resultC); - collector.logStepPass("getEncodePacked函数返回值:" + hexValue3); - collector.assertEqual(encodePacked ,hexValue3); - - } catch (Exception e) { - collector.logStepFail("ABIFuctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/AddressFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/AddressFunctionsTest.java deleted file mode 100644 index 3d194efa79..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/AddressFunctionsTest.java +++ /dev/null @@ -1,92 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.specialVariablesAndFunctions; - -import com.alaya.bech32.Bech32; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.AddressFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 验证地址相关函数 - * @description: - * @author: liweic - * @create: 2020/01/02 11:30 - **/ - -public class AddressFunctionsTest extends ContractPrepareTest { - private String amount; - - @Before - public void before() { - this.prepare(); - amount = driverService.param.get("amount"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.AddressFunctionsTest-地址相关函数测试", sourcePrefix = "evm/0.7.1") - public void Addressfunctions() { - try { - AddressFunctions addressfunctions = AddressFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = addressfunctions.getContractAddress(); - TransactionReceipt tx = addressfunctions.getTransactionReceipt().get(); - collector.logStepPass("Addressfunctions deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("Addressfunctions deploy gasUsed:" + addressfunctions.getTransactionReceipt().get().getGasUsed()); - - //验证balance(地址账户)函数 - String balanceaddr = "0x03f0e0a226f081a5daecfda222cafc959ed7b800"; - balanceaddr = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),balanceaddr); - BigInteger money = addressfunctions.getBalance(balanceaddr).send(); - collector.logStepPass("地址账户getBalance函数返回值:" + money); - int num = money.toString().length(); - boolean n = num > 0; - collector.assertEqual(n,true); - - //验证balance(合约账户)函数 - BigInteger contractmoney = addressfunctions.getBalanceOf().send(); - collector.logStepPass("合约账户getBalance函数返回值:" + contractmoney); - int num2 = contractmoney.toString().length(); - collector.assertEqual(1,num2); - - //验证transfer函数 - String transferaddr = "0x8a9B36694F1eeeb500c84A19bB34137B05162EC1"; - transferaddr = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),transferaddr); - BigInteger addresspremoney = addressfunctions.getBalance(transferaddr).send(); - collector.logStepPass("转账前余额:" + addresspremoney); - TransactionReceipt result = addressfunctions.transfer(transferaddr ,new BigInteger(amount)).send(); - collector.logStepPass("transfer转账结果交易Hash:" + result.getTransactionHash()); - BigInteger addressaftermoney = addressfunctions.getBalance(transferaddr).send(); - collector.logStepPass("转账后余额:" + addressaftermoney); - int a = Integer.valueOf(addressaftermoney.toString()); - int b = Integer.valueOf(addresspremoney.toString()); - int transfercounts = a - b; - collector.assertEqual(amount ,String.valueOf(transfercounts)); - - - //验证send函数 - String sendsddr = "0x8a9B36694F1eeeb500c84A19bB34137B05162EC7"; - sendsddr = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),sendsddr); - BigInteger sendbefore = addressfunctions.getBalance(sendsddr).send(); - collector.logStepPass("转账前余额:" + sendbefore); - TransactionReceipt result2 = addressfunctions.send(sendsddr ,new BigInteger("10000")).send(); - collector.logStepPass("send转账结果交易Hash:" + result2.getTransactionHash()); - BigInteger addressaftersend = addressfunctions.getBalance(sendsddr).send(); - collector.logStepPass("转账后余额:" + addressaftersend); - int c = Integer.valueOf(addressaftersend.toString()); - int d = Integer.valueOf(sendbefore.toString()); - int sendcount = c - d; - collector.assertEqual(1,sendcount); - - } catch (Exception e) { - collector.logStepFail("AddressFunctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/BlockTransactionPropertiesFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/BlockTransactionPropertiesFunctionsTest.java deleted file mode 100644 index fe73d77c79..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/BlockTransactionPropertiesFunctionsTest.java +++ /dev/null @@ -1,161 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.specialVariablesAndFunctions; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.BlockTransactionPropertiesFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -/** - * @title 验证区块和交易函数 - * @description: - * @author: liweic - * @create: 2019/12/31 11:01 - **/ - -public class BlockTransactionPropertiesFunctionsTest extends ContractPrepareTest { - - private String coinbase; -// private String gaslimit; - private String msgdata; - private String gasleft; - private String msgsig; - private String gasprice; - - @Before - public void before() { - this.prepare(); - coinbase = driverService.param.get("coinbase"); -// gaslimit = driverService.param.get("gaslimit"); - msgdata = driverService.param.get("msgdata"); - gasleft = driverService.param.get("gasleft"); - msgsig = driverService.param.get("msgsig"); - gasprice = driverService.param.get("gasprice"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.BlockTransactionPropertiesFunctionsTest-区块和交易函数测试", sourcePrefix = "evm/0.7.1") - public void BlockTransactionPropertiesfunction() { - try { - BlockTransactionPropertiesFunctions blockTransactionPropertiesFunctions = BlockTransactionPropertiesFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = blockTransactionPropertiesFunctions.getContractAddress(); - TransactionReceipt tx = blockTransactionPropertiesFunctions.getTransactionReceipt().get(); - collector.logStepPass("BlockTransactionPropertiesFunctionsTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("BlockTransactionPropertiesFunctionsTest deploy gasUsed:" + blockTransactionPropertiesFunctions.getTransactionReceipt().get().getGasUsed()); - - //验证block.number函数(获取块高) - BigInteger PlatONBlocknumber = web3j.platonBlockNumber().send().getBlockNumber(); - collector.logStepPass("web3j拿到的区块高度:" + PlatONBlocknumber); - - BigInteger blocknumber = blockTransactionPropertiesFunctions.getBlockNumber().send(); - collector.logStepPass("block.number函数返回值:" + blocknumber); - int a = Integer.valueOf(blocknumber.toString()); - int b = Integer.valueOf(PlatONBlocknumber.toString()); - int blocknumdiff = a - b; - List list = new ArrayList(); - list.add(new Integer(0)); - list.add(new Integer(1)); - list.add(new Integer(2)); - Boolean bndf = list.contains(blocknumdiff); - collector.assertEqual(true, bndf); - - //验证blockhash(blockNumber)函数(获取区块Hash) - String blocknumberNow = web3j.platonBlockNumber().send().getBlockNumber().toString(); - int number = Integer.valueOf(blocknumberNow).intValue()-100; - byte[] resultB = blockTransactionPropertiesFunctions.getBlockhash(new BigInteger(String.valueOf(number))).send(); - String hexValue = DataChangeUtil.bytesToHex(resultB); - collector.logStepPass("blockhash(blockNumber)函数返回值:" + hexValue); - String errorhash = "0000000000000000000000000000000000000000000000000000000000000000"; - boolean isBool = hexValue.equals(errorhash); - collector.assertTrue(!isBool,"success"); - - //验证block.coinbase函数(获取矿工地址) - String resultC = blockTransactionPropertiesFunctions.getBlockCoinbase().send(); - collector.logStepPass("block.coinbase函数返回值:" + resultC); - String coinaddr = "0x0000000000000000000000000000000000000000"; - boolean iscoinbase = resultC.equals(coinaddr); - collector.assertEqual(!iscoinbase ,true); - - //验证block.difficulty(获取当前块的难度) - BigInteger resultD = blockTransactionPropertiesFunctions.getBlockDifficulty().send(); - collector.logStepPass("block.difficulty函数返回值:" + resultD); - collector.assertEqual("0" ,resultD.toString()); - - //验证block.gaslimit(获取当前区块的gas限额) - BigInteger resultE = blockTransactionPropertiesFunctions.getGaslimit().send(); - collector.logStepPass("block.gaslimit函数返回值:" + resultE); - boolean gas = "0".toString().equals(resultE); - collector.assertEqual(false ,gas); - - //验证block.timestamp(获取当前区块的UNIX时间戳) - BigInteger resultF = blockTransactionPropertiesFunctions.getBlockTimestamp().send(); - collector.logStepPass("block.timestamp函数返回值:" + resultF); - SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); - String resultTime = sdf.format(new Date(Long.parseLong(String.valueOf(resultF)))); - String today = sdf.format(new Date()); - collector.assertEqual(today,resultTime); - - - //验证msg.data(获取完整的calldata) - byte[] resultG = blockTransactionPropertiesFunctions.getData().send(); - String hexvalue2 = DataChangeUtil.bytesToHex(resultG); - collector.logStepPass("msg.data函数返回值:" + hexvalue2); - collector.assertEqual(msgdata ,hexvalue2); - - //验证gasleft()(剩余的gas) - BigInteger resultH = blockTransactionPropertiesFunctions.getGasleft().send(); - collector.logStepPass("gasleft函数返回值:" + resultH); -// collector.assertEqual("9223372036854754307" ,resultH.toString()); - - //验证msg.sender(获取消息发送者(当前调用)) - String resultI = blockTransactionPropertiesFunctions.getSender().send(); - collector.logStepPass("msg.sender函数返回值:" + resultI); - collector.assertEqual(walletAddress.toLowerCase() ,resultI); - - //验证msg.sig(calldata 的前 4 字节(也就是函数标识符)) - byte[] resultJ = blockTransactionPropertiesFunctions.getSig().send(); - String hexvalue3 = DataChangeUtil.bytesToHex(resultJ); - collector.logStepPass("msg.sig函数返回值:" + hexvalue3); - collector.assertEqual(msgsig ,hexvalue3); - - //验证msg.value(随消息发送的以太币的数量) - TransactionReceipt transactionReceipt = blockTransactionPropertiesFunctions.getValue(new BigInteger("2")).send(); - String status = transactionReceipt.getStatus(); - collector.logStepPass("msg.value的transactionReceipt是:" + transactionReceipt); - collector.logStepPass("msg.value的status是:" + status); - collector.assertEqual("0x1" ,status); - - //验证now(目前区块时间戳) - BigInteger resultK = blockTransactionPropertiesFunctions.getNow().send(); - collector.logStepPass("now函数返回值:" + resultK); - SimpleDateFormat sdf2=new SimpleDateFormat("yyyy-MM-dd"); - String resultTime2 = sdf2.format(new Date(Long.parseLong(String.valueOf(resultF)))); - String now = sdf2.format(new Date()); - collector.assertEqual(now,resultTime2); - - //验证tx.gasprice(交易的 gas 价格) - BigInteger resultL = blockTransactionPropertiesFunctions.getGasprice().send(); - collector.logStepPass("tx.gasprice函数返回值:" + resultL); - collector.assertEqual("0" ,resultL.toString()); - - //验证tx.origin(交易发起者(完全的调用链)) - String resultM = blockTransactionPropertiesFunctions.getOrigin().send(); - collector.logStepPass("tx.origin函数返回值:" + resultM); - collector.assertEqual(walletAddress.toLowerCase() ,resultM); - - } catch (Exception e) { - collector.logStepFail("BlockTransactionPropertiesFunctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/BlockhashTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/BlockhashTest.java deleted file mode 100644 index e8653ed1c0..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/BlockhashTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.specialVariablesAndFunctions; - -import network.platon.contracts.evm.v0_7_1.Blockhash; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -/** - * @title blockHash函数(只能获取(当前块-256)至(当前块-1)之间的块hash) - * @description: - * @author: hudenian - * @create: 2020/03/09 19:17 - **/ - -public class BlockhashTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.BlockhashTest-验证以blockhash函数", sourcePrefix = "evm/0.7.1") - public void blockhashTest() { - try { - Blockhash blockhash = Blockhash.deploy(web3j, transactionManager, provider, chainId).send(); - - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore0().send())); - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore30().send())); - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore255().send())); - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore256().send())); - collector.logStepPass(DataChangeUtil.bytesToHex(blockhash.getBlockhashbefore257().send())); - - } catch (Exception e) { - collector.logStepFail("BlockTransactionPropertiesFunctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/CheckstatusTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/CheckstatusTest.java deleted file mode 100644 index a32b4a8a4c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/CheckstatusTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.specialVariablesAndFunctions; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.SelfdestructFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 验证同一个合约部署两次后,两个合约间是否会相互影响 - * @description: - * @author: hudenian - * @create: 2020/02/05 13:37 - **/ - -public class CheckstatusTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "function.CheckstatusTest-两个合约间是否会相互影响", sourcePrefix = "evm/0.7.1") - public void Selfdestructfunction() { - try { - //第一次部署合约 - SelfdestructFunctions selfdestructFunctions = SelfdestructFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = selfdestructFunctions.getContractAddress(); - TransactionReceipt tx = selfdestructFunctions.getTransactionReceipt().get(); - collector.logStepPass("SelfdestructFunctionsTest first deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("SelfdestructFunctionsTest first deploy gasUsed:" + selfdestructFunctions.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt increaseCount = selfdestructFunctions.increment().send(); - collector.logStepPass("交易Hash:" + increaseCount.getTransactionHash()); - BigInteger resultCount = selfdestructFunctions.getCount().send(); - collector.logStepPass("getCount函数返回值:" + resultCount); - collector.assertEqual("5",resultCount.toString()); - - - //第二次部署合约 - SelfdestructFunctions selfdestructFunctionsTwo = SelfdestructFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddressTwo = selfdestructFunctionsTwo.getContractAddress(); - tx = selfdestructFunctionsTwo.getTransactionReceipt().get(); - collector.logStepPass("SelfdestructFunctionsTest second deploy successfully.contractAddress:" + selfdestructFunctionsTwo + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("SelfdestructFunctionsTest second deploy gasUsed:" + selfdestructFunctionsTwo.getTransactionReceipt().get().getGasUsed()); - - increaseCount = selfdestructFunctionsTwo.increment().send(); - collector.logStepPass("交易Hash:" + increaseCount.getTransactionHash()); - resultCount = selfdestructFunctionsTwo.getCount().send(); - collector.logStepPass("getCount函数返回值:" + resultCount); - collector.assertEqual("5",resultCount.toString()); - - //第二个合约自杀后看对第一个合约是否有影响 - TransactionReceipt selfkill = selfdestructFunctionsTwo.selfKill().send(); - collector.logStepPass("自杀函数交易Hash:" + selfkill.getTransactionHash()); - resultCount = selfdestructFunctions.getCount().send(); - collector.logStepPass("第二个合约自杀后查询第一个合约getCount函数返回值:" + resultCount); - collector.assertEqual("5",resultCount.toString()); - - //调用第二个合约查询函数返回值(抛出异常) - BigInteger count1 = selfdestructFunctionsTwo.getCount().send(); - collector.logStepPass("调用自杀函数后链上的count值为:"+count1); - - } catch (Exception e) { - if(e.getMessage().startsWith("Empty")){ - collector.logStepPass("调用自杀函数后链上的count值为:Empty"); - } - collector.assertContains(e.toString(), "ContractCallException"); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/MathAndCryptographicFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/MathAndCryptographicFunctionsTest.java deleted file mode 100644 index ade0bf7234..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/MathAndCryptographicFunctionsTest.java +++ /dev/null @@ -1,105 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.specialVariablesAndFunctions; - -import com.alaya.bech32.Bech32; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.parameters.NetworkParameters; -import network.platon.contracts.evm.v0_7_1.MathAndCryptographicFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Before; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 验证数学和加密函数 - * @description: - * @author: liweic - * @create: 2019/12/30 20:01 - **/ - -public class MathAndCryptographicFunctionsTest extends ContractPrepareTest { - - private String addmod; - private String mulmod; - private String keccak256; - private String sha256; - private String ripemd160; - private String ecrecover; - - @Before - public void before() { - this.prepare(); - addmod = driverService.param.get("addmod"); - mulmod = driverService.param.get("mulmod"); - keccak256 = driverService.param.get("keccak256"); - sha256 = driverService.param.get("sha256"); - ripemd160 = driverService.param.get("ripemd160"); - ecrecover = driverService.param.get("ecrecover"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.MathAndCryptographicFunctionsTest-数学和加密函数测试", sourcePrefix = "evm/0.7.1") - public void MathAndCryptographicfunction() { - try { - MathAndCryptographicFunctions mathAndCryptographicFunctions = MathAndCryptographicFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = mathAndCryptographicFunctions.getContractAddress(); - TransactionReceipt tx = mathAndCryptographicFunctions.getTransactionReceipt().get(); - collector.logStepPass("MathAndCryptographicFunctionsTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("MathAndCryptographicFunctionsTest deploy gasUsed:" + mathAndCryptographicFunctions.getTransactionReceipt().get().getGasUsed()); - - //验证addmod函数 - BigInteger resultA = mathAndCryptographicFunctions.callAddMod().send(); - collector.logStepPass("addmod函数返回值:" + resultA); - collector.assertEqual(addmod ,resultA.toString()); - - //验证mulmod函数 - BigInteger resultB = mathAndCryptographicFunctions.callMulMod().send(); - collector.logStepPass("mulmod函数返回值:" + resultB); - collector.assertEqual(mulmod ,resultB.toString()); - - //验证keccak256函数 - byte[] resultC = mathAndCryptographicFunctions.callKeccak256().send(); - String hexValue = DataChangeUtil.bytesToHex(resultC); - collector.logStepPass("keccak256函数返回值:" + hexValue); - collector.assertEqual(keccak256 ,hexValue); - - //验证sha256函数 - byte[] resultD = mathAndCryptographicFunctions.callSha256().send(); - String hexValue2 = DataChangeUtil.bytesToHex(resultD); - collector.logStepPass("sha256函数返回值:" + hexValue2); - collector.assertEqual(sha256 ,hexValue2); - - //验证ripemd160函数 - byte[] resultE = mathAndCryptographicFunctions.callRipemd160().send(); - String hexValue3 = DataChangeUtil.bytesToHex(resultE); - collector.logStepPass("ripemd160函数返回值:" + hexValue3); - collector.assertEqual(ripemd160 ,hexValue3); - - //验证ecrecover函数 - String hash = "e281eaa11e6e37e6f53aade5d6c5b7201ef1c66162ec42ccc3215a0c4349350d"; - byte[] a = DataChangeUtil.hexToByteArray(hash); - - BigInteger v = new BigInteger("27"); - - String R = "55b60cadd4b4a3ea4fc368ef338f97e12e7328dd6e9e969a3fd8e5c10be855fe"; - byte[] b = DataChangeUtil.hexToByteArray(R); - - String S = "2b42cee2585a16ea537efcb88009c1aeac693c28b59aa6bbff0baf22730338f6"; - byte[] c = DataChangeUtil.hexToByteArray(S); - - String resultF = mathAndCryptographicFunctions.callEcrecover(a, v, b, c).send(); - collector.logStepPass("ecrecover函数返回值:" + resultF); - String bech32Address = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(), ecrecover); - collector.assertEqual(bech32Address ,resultF.toLowerCase()); - - } catch (Exception e) { - collector.logStepFail("MathAndCryptographicfunctionsContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/SelfdestructFunctionsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/SelfdestructFunctionsTest.java deleted file mode 100644 index 73c95689b7..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/function/specialVariablesAndFunctions/SelfdestructFunctionsTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_7_1.function.specialVariablesAndFunctions; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.SelfdestructFunctions; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 验证合约自毁函数 - * @description: - * @author: liweic - * @create: 2019/12/30 19:01 - **/ - -public class SelfdestructFunctionsTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "function.SelfdestructFunctionsTest-合约相关函数测试", sourcePrefix = "evm/0.7.1") - public void Selfdestructfunction() { - try { - SelfdestructFunctions selfdestructFunctions = SelfdestructFunctions.deploy(web3j, transactionManager, provider, chainId).send(); - - String contractAddress = selfdestructFunctions.getContractAddress(); - TransactionReceipt tx = selfdestructFunctions.getTransactionReceipt().get(); - collector.logStepPass("SelfdestructFunctionsTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.logStepPass("SelfdestructFunctionsTest deploy gasUsed:" + selfdestructFunctions.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt increaseCount = selfdestructFunctions.increment().send(); - collector.logStepPass("交易Hash:" + increaseCount.getTransactionHash()); - BigInteger resultCount = selfdestructFunctions.getCount().send(); - collector.logStepPass("getCount函数返回值:" + resultCount); - collector.assertEqual("5",resultCount.toString()); - - - //调用自杀函数 - TransactionReceipt selfkill = selfdestructFunctions.selfKill().send(); - collector.logStepPass("自杀函数交易Hash:" + selfkill.getTransactionHash()); - - collector.logStepPass("Selfdestruct successful.transactionHash:" + selfkill.getTransactionHash()); - collector.logStepPass( "currentBlockNumber:" + selfkill.getBlockNumber()); - - - BigInteger count1 = selfdestructFunctions.getCount().send(); - - collector.logStepPass("调用自杀函数后链上的count值为:"+count1); - - - } catch (Exception e) { - if(e.getMessage().startsWith("Empty")){ - collector.logStepPass("调用自杀函数后链上的count值为:Empty"); - } - collector.assertContains(e.toString(), "ContractCallException"); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/innerContract/PlatonUnitTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/innerContract/PlatonUnitTest.java deleted file mode 100644 index 4e4e52fd05..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/innerContract/PlatonUnitTest.java +++ /dev/null @@ -1,74 +0,0 @@ -package network.platon.test.evm.v0_7_1.innerContract;//package network.platon.test.evm.innerContract; -// -//import network.platon.test.evm.beforetest.ContractPrepareTest; -//import network.platon.autotest.junit.annotations.DataSource; -//import network.platon.autotest.junit.enums.DataSourceType; -//import network.platon.contracts.evm.Guessing; -//import network.platon.contracts.evm.PlatonUnit; -//import org.junit.Before; -//import org.junit.Test; -//import org.web3j.protocol.core.DefaultBlockParameterName; -//import org.web3j.protocol.core.methods.response.TransactionReceipt; -//import org.web3j.tx.Transfer; -//import org.web3j.utils.Convert; -// -//import java.math.BigDecimal; -//import java.math.BigInteger; -// -///** -// * @title Platon金额单位测试 -// * @description: -// * @author: hudenian -// * @create: 2020/03/05 16:42 -// * -// **/ -// -//public class PlatonUnitTest extends ContractPrepareTest { -// private String endBlock = "100000000"; //设置竞猜截止块高 -// -// @Before -// public void before() { -// this.prepare(); -// } -// -// @Test -// @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", -// author = "hudenian", showName = "PlatonUnitTest-Platon金额单位测试", sourcePrefix = "network.platon.test.evm") -// public void unitTest() { -// -// try { -// -// PlatonUnit platonUnit = PlatonUnit.deploy(web3j, transactionManager, provider, chainId).send(); -// -// String contractAddress = platonUnit.getContractAddress(); -// TransactionReceipt tx = platonUnit.getTransactionReceipt().get(); -// collector.logStepPass("PlatonUnitTest deploy successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); -// collector.logStepPass("PlatonUnitTest deploy gasUsed:" + platonUnit.getTransactionReceipt().get().getGasUsed()); -// -// //发起转账 -// Transfer transfer = new Transfer(web3j, transactionManager); -// TransactionReceipt transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.GLAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.MLAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.KLAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.LAT, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.FINNEY, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.SZABO, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.GVON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.MVON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.KVON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// transactionReceipt = transfer.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.VON, new BigInteger("1000000000"), new BigInteger("4712388")).send(); -// -// //查询合约余额 -// String contractBalance = platonUnit.getBalance().send().toString(); -// collector.logStepPass("合约中的余额为:"+contractBalance); -// collector.assertEqual(contractBalance,"1001001001001001001001001001"); -// -// // -// -// -// } catch (Exception e) { -// collector.logStepFail("PlatonUnitTest Calling Method fail.", e.toString()); -// e.printStackTrace(); -// } -// } -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/lib/LibraryStaticUsingTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/lib/LibraryStaticUsingTest.java deleted file mode 100644 index ae84b235a6..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/lib/LibraryStaticUsingTest.java +++ /dev/null @@ -1,44 +0,0 @@ -package network.platon.test.evm.v0_7_1.lib; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.LibraryStaticUsing; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; - -import java.math.BigInteger; -import java.util.List; - -/** - * @title 库引用类似引用static方法测试 - * 解释:如果L作为库的名称,f()是库L的函数,则可以通过L.f()的方式调用 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class LibraryStaticUsingTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "emitEvent", - author = "albedo", showName = "lib.LibraryStaticUsingTest-类static方式引用", sourcePrefix = "evm/0.7.1") - public void testEmitEvent() { - try { - prepare(); - LibraryStaticUsing using = LibraryStaticUsing.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("LibraryStaticUsing issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + using.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = using.register(new BigInteger("12")).send(); - List eventData = using.getResultEvents(receipt); - String data = eventData.get(0).log.getData(); - collector.assertEqual(DataChangeUtil.subHexData(data), DataChangeUtil.subHexData("1"), "checkout static method using library function"); - } catch (Exception e) { - collector.logStepFail("LibraryStaticUsingTest testEmitEvent failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/lib/LibraryUsingForAllTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/lib/LibraryUsingForAllTest.java deleted file mode 100644 index 6bdd4ad43a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/lib/LibraryUsingForAllTest.java +++ /dev/null @@ -1,37 +0,0 @@ -package network.platon.test.evm.v0_7_1.lib; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.LibraryUsingForAll; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 引用using for方式验证 - * 解释:using A for * 的效果是,库 A 中的函数被附加在任意的类型上。 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class LibraryUsingForAllTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "albedo", showName = "lib.LibraryUsingForAllTest-using A for all type", sourcePrefix = "evm/0.7.1") - public void testReplace() { - try { - prepare(); - LibraryUsingForAll using = LibraryUsingForAll.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("LibraryUsingForAll issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + using.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = using.replace(new BigInteger("12"),new BigInteger("14")).send(); - collector.assertEqual(receipt.getStatus(),"0x1" , "checkout using a for * success"); - } catch (Exception e) { - collector.logStepFail("LibraryUsingForAll testReplace method failure:",e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/lib/LibraryUsingForTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/lib/LibraryUsingForTest.java deleted file mode 100644 index 524f24cd4d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/lib/LibraryUsingForTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.evm.v0_7_1.lib; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.LibraryUsingFor; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; -import java.math.BigInteger; -import java.util.List; - -/** - * @title 引用using for方式验证 - * 解释:指令using A for B 可用于附加库函数(从库 A)到任何类型(B)。 这些函数将接收到调用它们的对象作为它们的第一个参数。 - * @description: - * @author: albedo - * @create: 2019/12/28 - */ -public class LibraryUsingForTest extends ContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "albedo", showName = "lib.LibraryUsingForTest-using A for B", sourcePrefix = "evm/0.7.1") - public void testRegister() { - try { - prepare(); - LibraryUsingFor using = LibraryUsingFor.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("LibraryUsingFor issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + using.getTransactionReceipt().get().getGasUsed()); - TransactionReceipt receipt = using.register(new BigInteger("12")).send(); - List eventData = using.getResultEvents(receipt); - String data = eventData.get(0).log.getData(); - collector.assertEqual(DataChangeUtil.subHexData(data), DataChangeUtil.subHexData("1"), "checkout using A for B"); - } catch (Exception e) { - collector.logStepFail("LibraryUsingForTest testRegister method failure:",e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/lib/SafeMathMockTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/lib/SafeMathMockTest.java deleted file mode 100644 index c3c0ec66d1..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/lib/SafeMathMockTest.java +++ /dev/null @@ -1,160 +0,0 @@ -package network.platon.test.evm.v0_7_1.lib; - -import network.platon.contracts.evm.v0_7_1.SafeMathMock; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Test; - -import java.math.BigInteger; - -public class SafeMathMockTest extends ContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "max", - author = "albedo", showName = "lib.SafeMathMockTest-最大值", sourcePrefix = "evm/0.7.1") - public void testMax() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + using.getTransactionReceipt().get().getGasUsed()); - BigInteger result = using.max(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("13"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testMax failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "min", - author = "albedo", showName = "lib.SafeMathMockTest-最小值", sourcePrefix = "evm/0.7.1") - public void testMin() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.min(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("12"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testMin failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "average", - author = "albedo", showName = "lib.SafeMathMockTest-平均值", sourcePrefix = "evm/0.7.1") - public void testAverage() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.average(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("12"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testAverage failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "add", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型相加", sourcePrefix = "evm/0.7.1") - public void testAdd() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.add(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("25"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testAdd failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "mul", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型相乘", sourcePrefix = "evm/0.7.1") - public void testMul() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.mul(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("156"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testMul failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "sub", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型相减", sourcePrefix = "evm/0.7.1") - public void testSub() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.sub(new BigInteger("12"), new BigInteger("13")).send(); - collector.assertEqual(result, new BigInteger("3963877391197344453575983046348115674221700746820753546331534351508065746944"), "checkout library function"); - result = using.sub(new BigInteger("13"), new BigInteger("12")).send(); - collector.assertEqual(result, new BigInteger("1"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testSub failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "div", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型相除", sourcePrefix = "evm/0.7.1") - public void testDiv() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.div(new BigInteger("12"), new BigInteger("0")).send(); - collector.assertEqual(result, new BigInteger("3963877391197344453575983046348115674221700746820753546331534351508065746944"), "checkout library function"); - result = using.div(new BigInteger("13"), new BigInteger("12")).send(); - collector.assertEqual(result, new BigInteger("1"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testDiv failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "mod", - author = "albedo", showName = "lib.SafeMathMockTest-无符号整型除余", sourcePrefix = "evm/0.7.1") - public void testMod() { - try { - prepare(); - SafeMathMock using = SafeMathMock.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = using.getContractAddress(); - String transactionHash = using.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SafeMathMock issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - BigInteger result = using.mod(new BigInteger("12"), new BigInteger("0")).send(); - collector.assertEqual(result, new BigInteger("3963877391197344453575983046348115674221700746820753546331534351508065746944"), "checkout library function"); - result = using.mod(new BigInteger("13"), new BigInteger("12")).send(); - collector.assertEqual(result, new BigInteger("1"), "checkout library function"); - } catch (Exception e) { - collector.logStepFail("SafeMathMockTest testMod failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/Interface/InterfaceContractALimitTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/Interface/InterfaceContractALimitTest.java deleted file mode 100644 index 62a2b9d9ca..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/Interface/InterfaceContractALimitTest.java +++ /dev/null @@ -1,65 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.Interface; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.InterfaceContractParentTest; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:在5.0以后版本,接口的函数只能声明外部类型(external),否则会编译失败 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InterfaceContractALimitTest extends ContractPrepareTest { - - private String param1,param2,sumParam; - - @Before - public void before() { - this.prepare(); - param1 = driverService.param.get("param1"); - param2 = driverService.param.get("param2"); - sumParam = driverService.param.get("sumParam"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InterfaceContract.接口的函数只能声明外部类型",sourcePrefix = "evm/0.7.1") - public void testInterfaceContractLimit() { - - InterfaceContractParentTest interfaceContractParentTest= null; - try { - //合约部署 - interfaceContractParentTest = InterfaceContractParentTest.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = interfaceContractParentTest.getContractAddress(); - TransactionReceipt tx = interfaceContractParentTest.getTransactionReceipt().get(); - - collector.logStepPass("InterfaceContractParentTest issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("InterfaceContractParentTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - BigInteger sumBigInt = interfaceContractParentTest.sumExternal(new BigInteger(param1),new BigInteger(param2)).send(); - collector.logStepPass("调用合约方法完毕 successful.sumBigInt:" + sumBigInt); - collector.assertEqual(sumBigInt, new BigInteger(sumParam), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractParentTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/Interface/InterfaceContractBLimitEnumTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/Interface/InterfaceContractBLimitEnumTest.java deleted file mode 100644 index 716bd70810..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/Interface/InterfaceContractBLimitEnumTest.java +++ /dev/null @@ -1,76 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.Interface; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.InterfaceContractEnumTest; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:在5.0以后版本,接口中可以正常定义枚举 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InterfaceContractBLimitEnumTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InterfaceContractLimitEnum.验证接口中定义枚举",sourcePrefix = "evm/0.7.1") - public void testInterfaceContractLimitEnum() { - - InterfaceContractEnumTest interfaceContractEnumTest= null; - try { - //合约部署 - interfaceContractEnumTest = InterfaceContractEnumTest.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = interfaceContractEnumTest.getContractAddress(); - TransactionReceipt tx = interfaceContractEnumTest.getTransactionReceipt().get(); - - collector.logStepPass("InterfaceContractEnumTest issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("InterfaceContractEnumTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - - //1、执行setLarge() - try { - TransactionReceipt setLargeTransaction = interfaceContractEnumTest.setLarge().send(); - collector.logStepPass("调用合约setLarge()方法完毕 successful hash:" + setLargeTransaction.getTransactionHash()); - //collector.assertEqual(sumBigInt, new BigInteger(sumParam), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractEnumTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //2、执行getChoice() - try { - BigInteger expectChoiceResult = new BigInteger("2"); - BigInteger actualBigInteger = interfaceContractEnumTest.getChoice().send(); - collector.logStepPass("调用合约getChoice()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectChoiceResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractEnumTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - - - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/Interface/InterfaceContractBLimitStructTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/Interface/InterfaceContractBLimitStructTest.java deleted file mode 100644 index 4c16c241f3..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/Interface/InterfaceContractBLimitStructTest.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.Interface; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.InterfaceContractStructTest; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:在5.0以后版本,接口可以声明结构体 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InterfaceContractBLimitStructTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InterfaceContractLimitStruct.验证接口定义结构体", sourcePrefix = "evm/0.7.1") - public void testInterfaceContractLimitEnum() { - - InterfaceContractStructTest interfaceContractStructTest= null; - try { - //合约部署 - interfaceContractStructTest = InterfaceContractStructTest.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = interfaceContractStructTest.getContractAddress(); - TransactionReceipt tx = interfaceContractStructTest.getTransactionReceipt().get(); - - collector.logStepPass("InterfaceContractStructTest issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - - //1、执行setBook() - try { - TransactionReceipt setBookTransaction = interfaceContractStructTest.setBook().send(); - collector.logStepPass("调用合约setBook()方法完毕 successful hash:" + setBookTransaction.getTransactionHash()); - //collector.assertEqual(sumBigInt, new BigInteger(sumParam), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //2、执行getBookID() - try { - BigInteger expectBookResult = new BigInteger("1"); - BigInteger actualBigInteger = interfaceContractStructTest.getBookID().send(); - collector.logStepPass("调用合约getBookID()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/Interface/InterfaceContractInhertTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/Interface/InterfaceContractInhertTest.java deleted file mode 100644 index 495e30740f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/Interface/InterfaceContractInhertTest.java +++ /dev/null @@ -1,72 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.Interface; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.InterfaceContractInheritMultipleTest; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:合约是否可以继承多个接口 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InterfaceContractInhertTest extends ContractPrepareTest { - - private String a,b,sumValue; - private String c,d,reduceValue; - - @Before - public void before() { - this.prepare(); - a = driverService.param.get("a"); - b = driverService.param.get("b"); - sumValue = driverService.param.get("sumValue"); - c = driverService.param.get("c"); - d = driverService.param.get("d"); - reduceValue = driverService.param.get("reduceValue"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.合约多继承接口执行情况",sourcePrefix = "evm/0.7.1") - public void testAbstractContract() { - - InterfaceContractInheritMultipleTest interfaceInheritMultiple = null; - try { - //合约部署 - interfaceInheritMultiple = InterfaceContractInheritMultipleTest.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = interfaceInheritMultiple.getContractAddress(); - TransactionReceipt tx = interfaceInheritMultiple.getTransactionReceipt().get(); - collector.logStepPass("interfaceContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("interfaceContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - BigInteger resultSum = new BigInteger(sumValue); - BigInteger resultReduce = new BigInteger(reduceValue); - - //合约加法 sum() - BigInteger actualSumValue = interfaceInheritMultiple.sum(new BigInteger(a),new BigInteger(b)).send(); - collector.logStepPass("执行【合约加法 sum()】 actualSumValue:" + actualSumValue); - collector.assertEqual(resultSum,actualSumValue, "checkout execute success."); - - //合约减法 reduce() - BigInteger actualReduceValue = interfaceInheritMultiple.reduce(new BigInteger(c),new BigInteger(d)).send(); - collector.logStepPass("执行【合约减法 reduce()】 actualReduceValue:" + actualReduceValue); - collector.assertEqual(resultReduce,actualReduceValue, "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("interfaceContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractAInhertNoImpTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractAInhertNoImpTest.java deleted file mode 100644 index 29225f0526..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractAInhertNoImpTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.AbstractContractSon; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -/** - * @title 测试:抽象合约被继承,但未被实现抽象方法,是否可正常执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractAInhertNoImpTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约被继承未实现执行情况",sourcePrefix = "evm/0.7.1") - public void testAbstractContract() { - - AbstractContractSon sonAbstractContract = null; - try { - //合约部署 - sonAbstractContract = AbstractContractSon.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = sonAbstractContract.getContractAddress(); - TransactionReceipt tx = sonAbstractContract.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - -// //调用合约方法 -// try { -// String expectResult = "sonName"; -// String actualName = sonAbstractContract.sonName().send(); -// collector.logStepFail("abstractContract Calling Method Fail.","抽象合约被继承未实现方法无法执行"); -// } catch (Exception e) { -// collector.logStepPass("执行【抽象合约被继承未实现方法,调用函数sonName()】,抽象合约部分实现是无法执行方法"); -// collector.assertEqual(e.getMessage(),"Empty value (0x) returned from contract","checkout execute success."); -// //e.printStackTrace(); -// } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractANoImpTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractANoImpTest.java deleted file mode 100644 index 4c90e679b2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractANoImpTest.java +++ /dev/null @@ -1,83 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.abstracttest; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.http.HttpService; -import com.alaya.tx.RawTransactionManager; -import com.alaya.tx.gas.ContractGasProvider; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.autotest.junit.rules.AssertCollector; -import network.platon.autotest.junit.rules.DriverService; -import network.platon.contracts.evm.v0_7_1.AbstractContractGrandpa; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; - -import java.math.BigInteger; - -/** - * @title 1、抽象合约未实现任何方法,验证是否可编译、部署、执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractANoImpTest { - - @Rule - public AssertCollector collector = new AssertCollector(); - - @Rule - public DriverService driverService = new DriverService(); - - // 底层链ID - private long chainId; - - @Before - public void before() { - chainId = Integer.valueOf(driverService.param.get("chainId")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约未实现执行情况",sourcePrefix = "evm/0.7.1") - public void testAbstractContract() { - Web3j web3j = null; - Credentials credentials = null; - try { - web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); - credentials = Credentials.create(driverService.param.get("privateKey")); - collector.logStepPass("initCurrentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("The node is unable to connect", e.toString()); - e.printStackTrace(); - } - ContractGasProvider provider = new ContractGasProvider(new BigInteger("50000000000"), new BigInteger("3000000")); - RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - - //1、合约部署 - String contractAddress = ""; - try { - AbstractContractGrandpa grandpaAbstractContract = AbstractContractGrandpa.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = grandpaAbstractContract.getContractAddress(); - TransactionReceipt tx = grandpaAbstractContract.getTransactionReceipt().get(); - - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //2、调用合约方法 - try{ - String name = AbstractContractGrandpa.load(contractAddress, web3j, transactionManager, provider, chainId).name().send(); - collector.logStepFail("abstractContract Calling Method Fail.","抽象合约是无法执行方法的"); - }catch (Exception e){ - collector.logStepPass("执行【抽象合约调用函数getName()】,结果无法执行抽象合约方法"); - collector.assertEqual(e.getMessage(),"Empty value (0x) returned from contract","checkout execute success."); - //e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractAPartImpTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractAPartImpTest.java deleted file mode 100644 index fca8264515..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractAPartImpTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.AbstractContractFather; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; -/** - * @title 1、抽象合约实现部分方法,验证是否可编译、部署、执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractAPartImpTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约实现部分执行情况",sourcePrefix = "evm/0.7.1") - public void testAbstractContract() { - - AbstractContractFather fatherAbstractContract = null; - try { - //合约部署 - fatherAbstractContract = AbstractContractFather.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = fatherAbstractContract.getContractAddress(); - TransactionReceipt tx = fatherAbstractContract.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - BigInteger age = fatherAbstractContract.fatherAge().send(); - collector.logStepFail("abstractContract Calling Method Fail.","抽象合约部分实现是无法执行方法"); - } catch (Exception e) { - collector.logStepPass("执行【抽象合约部分实现调用函数fatherAge()】,抽象合约部分实现是无法执行方法"); - collector.assertEqual(e.getMessage(),"Empty value (0x) returned from contract","checkout execute success."); - //e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractBInhertAllImpTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractBInhertAllImpTest.java deleted file mode 100644 index 2a1ea54f13..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractBInhertAllImpTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.AbstractContractBSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -/** - * @title 测试:抽象合约被继承,且实现抽象方法,是否可正常执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractBInhertAllImpTest extends ContractPrepareTest { - - private String name,resultName; - - @Before - public void before() { - this.prepare(); - name = driverService.param.get("name"); - resultName = driverService.param.get("resultName"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约单继承且实现执行情况",sourcePrefix = "evm/0.7.1") - public void testAbstractContract() { - - AbstractContractBSubclass abstractContractBSubclass= null; - try { - //合约部署 - abstractContractBSubclass = AbstractContractBSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = abstractContractBSubclass.getContractAddress(); - TransactionReceipt tx = abstractContractBSubclass.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //设置用户名称setParentName() - TransactionReceipt transactionReceipt = abstractContractBSubclass.setParentName(name).send(); - collector.logStepPass("执行【设置用户名称合约方法setParentName()】,生成hash:" + transactionReceipt.getTransactionHash()); - //获取用户名称parentName() - String actualValue = abstractContractBSubclass.parentName().send(); - collector.logStepPass("执行【获取用户名称 parentName()】 successful.actualValue:" + actualValue); - collector.assertEqual(actualValue,resultName, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("abstractContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractBMultipleInhertTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractBMultipleInhertTest.java deleted file mode 100644 index 3b17189bf7..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractBMultipleInhertTest.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.AbstractContractCSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -/** - * @title 测试:普通合约是否可以继承多个抽象合约,且实现抽象方法,是否可以正常编译部署执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractBMultipleInhertTest extends ContractPrepareTest { - - private String name,resultName; - - @Before - public void before() { - this.prepare(); - name = driverService.param.get("name"); - resultName = driverService.param.get("resultName"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.合约多继承且实现执行情况",sourcePrefix = "evm/0.7.1") - public void testAbstractContract() { - - AbstractContractCSubclass abstractContractCSubclass= null; - try { - //合约部署 - abstractContractCSubclass = AbstractContractCSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = abstractContractCSubclass.getContractAddress(); - TransactionReceipt tx = abstractContractCSubclass.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //设置用户名称setASubName() - TransactionReceipt transactionReceipt = abstractContractCSubclass.setASubName(name).send(); - collector.logStepPass("执行【设置用户名称合约方法setASubName()】,生成hash:" + transactionReceipt.getTransactionHash()); - //获取用户名称aSubName() - String actualValue = abstractContractCSubclass.aSubName().send(); - collector.logStepPass("执行【获取用户名称 aSubName()】 successful.actualValue:" + actualValue); - collector.assertEqual(actualValue,resultName, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("abstractContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractCInhertTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractCInhertTest.java deleted file mode 100644 index 6022223c95..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractCInhertTest.java +++ /dev/null @@ -1,59 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.AbstractContractFSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -/** - * @title 测试:抽象合约是否可以继承抽象合约,是否可以正常编译部署执行 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractCInhertTest extends ContractPrepareTest { - - private String name,resultName; - - @Before - public void before() { - this.prepare(); - name = driverService.param.get("name"); - resultName = driverService.param.get("resultName"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约继承抽象合约执行情况",sourcePrefix = "evm/0.7.1") - public void testAbstractContract() { - - AbstractContractFSubclass abstractContractFSubclass= null; - try { - //合约部署 - abstractContractFSubclass = AbstractContractFSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = abstractContractFSubclass.getContractAddress(); - TransactionReceipt tx = abstractContractFSubclass.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //设置用户名称setASubName() - TransactionReceipt transactionReceipt = abstractContractFSubclass.setParentNameD(name).send(); - collector.logStepPass("执行【设置用户名称合约方法setParentNameD()】,生成hash:" + transactionReceipt.getTransactionHash()); - //获取用户名称aSubName() - String actualValue = abstractContractFSubclass.parentName().send(); - collector.logStepPass("执行【获取用户名称 parentName()】 successful.actualValue:" + actualValue); - collector.assertEqual(actualValue,resultName, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("abstractContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractDInhertTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractDInhertTest.java deleted file mode 100644 index b6beafec13..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/abstracttest/AbstractContractDInhertTest.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.abstracttest; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.AbstractContractGSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:抽象合约是否可以继承接口(反之接口是否可以继承抽象合约) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class AbstractContractDInhertTest extends ContractPrepareTest { - - private String age,resultAge; - - @Before - public void before() { - this.prepare(); - age = driverService.param.get("age"); - resultAge = driverService.param.get("resultAge"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "AbstractContract.抽象合约继承接口执行情况",sourcePrefix = "evm/0.7.1") - public void testAbstractContract() { - - AbstractContractGSubclass abstractContractGSubclass= null; - try { - //合约部署 - abstractContractGSubclass = AbstractContractGSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = abstractContractGSubclass.getContractAddress(); - TransactionReceipt tx = abstractContractGSubclass.getTransactionReceipt().get(); - collector.logStepPass("abstractContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("abstractContract deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - try { - //设置用户年龄setInterAge() - BigInteger resultValue = new BigInteger(resultAge); - TransactionReceipt transactionReceipt = abstractContractGSubclass.setInterAge(new BigInteger(age)).send(); - collector.logStepPass("执行【设置用户年龄合约方法setInterAge()】,生成hash:" + transactionReceipt.getTransactionHash()); - //获取用户名称getInterAge() - BigInteger actualValue = abstractContractGSubclass.aInterAge().send(); - collector.logStepPass("执行【获取用户年龄 getInterAge()】 successful.actualValue:" + actualValue); - collector.assertEqual(actualValue,resultValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("abstractContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractAMutipleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractAMutipleTest.java deleted file mode 100644 index 0eba59017e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractAMutipleTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.InheritContractAMutipleClass; -import network.platon.contracts.evm.v0_7_1.InheritContractBMutipleClass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:多重合约继承重名问题,遵循最远继承原则 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractAMutipleTest extends ContractPrepareTest { - - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.合约继承重名问题(遵循最远继承原则)",sourcePrefix = "evm/0.7.1") - public void testInheritContracAtMutipleTest() { - - InheritContractAMutipleClass inheritContractMutipleTest1 = null; - InheritContractBMutipleClass inheritContractMutipleTest2 = null; - try { - //合约部署(InheritContractMutipleTest1) - inheritContractMutipleTest1 = InheritContractAMutipleClass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractMutipleTest1.getContractAddress(); - TransactionReceipt tx = inheritContractMutipleTest1.getTransactionReceipt().get(); - collector.logStepPass("InheritContractMutipleTest1 issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - - //合约部署(InheritContractMutipleTest2) - inheritContractMutipleTest2 = InheritContractBMutipleClass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress2 = inheritContractMutipleTest2.getContractAddress(); - TransactionReceipt tx2 = inheritContractMutipleTest2.getTransactionReceipt().get(); - collector.logStepPass("InheritContractMutipleTest2 issued successfully.contractAddress:" + contractAddress2 - + ", hash:" + tx2.getTransactionHash()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx2.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("InheritContractMutipleTest deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行callGetDate1() - try { - BigInteger expectBookResult = new BigInteger("2"); - BigInteger actualBigInteger = inheritContractMutipleTest1.callGetDateA().send(); - collector.logStepPass("调用合约callGetDateA()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractMutipleTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、执行callGetDate2() - try { - BigInteger expectBookResult = new BigInteger("1"); - BigInteger actualBigInteger = inheritContractMutipleTest2.callGetDateB().send(); - collector.logStepPass("调用合约callGetDateB()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractMutipleTest Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractBMutipleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractBMutipleTest.java deleted file mode 100644 index 66a5235968..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractBMutipleTest.java +++ /dev/null @@ -1,56 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.InheritContractSubclass; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:多重继承(父类合约存在父子关系),合约继承必须遵循先父到子的继承顺序 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractBMutipleTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.多重继承(遵循先父到子的继承顺序)",sourcePrefix = "evm/0.7.1") - public void testInheritContractMutipleTest1() { - - InheritContractSubclass inheritContractSubclass = null; - try { - //合约部署 - inheritContractSubclass = InheritContractSubclass.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractSubclass.getContractAddress(); - TransactionReceipt tx = inheritContractSubclass.getTransactionReceipt().get(); - collector.logStepPass("InheritContractSubclass issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行getDataThree() - try { - BigInteger expectResult = new BigInteger("3"); - BigInteger actualBigInteger = inheritContractSubclass.getDataThree().send(); - collector.logStepPass("调用合约getDataThree()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractOverloadComplexTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractOverloadComplexTest.java deleted file mode 100644 index 6eee2cbb3d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractOverloadComplexTest.java +++ /dev/null @@ -1,113 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.InheritContractOverloadChild; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:合约函数重载(Overload)复杂情况 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractOverloadComplexTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.合约函数重载(Overload)复杂情况",sourcePrefix = "evm/0.7.1") - public void testInheritContractMutipleTest1() { - - InheritContractOverloadChild inheritContractOverloadChild = null; - try { - //合约部署 - inheritContractOverloadChild = InheritContractOverloadChild.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractOverloadChild.getContractAddress(); - TransactionReceipt tx = inheritContractOverloadChild.getTransactionReceipt().get(); - collector.logStepPass("InheritContractOverload issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行Base父类重载方法单个参数 - try { - BigInteger param1 = new BigInteger("3"); - TransactionReceipt transactionReceipt = inheritContractOverloadChild.initBase(param1).send(); - collector.logStepPass("执行【Base父类赋值重载方法单个参数 initBase()】 successful,hash:" + transactionReceipt.getTransactionHash()); - //执行查询 - BigInteger actualValue = inheritContractOverloadChild.getX().send(); - collector.logStepPass("查询赋值结果 getX() successful,actualValue:" + actualValue); - collector.assertEqual(actualValue,param1, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、执行Base父类重载方法多个参数 - try { - BigInteger param1 = new BigInteger("3"); - BigInteger param2 = new BigInteger("4"); - TransactionReceipt transactionReceipt = inheritContractOverloadChild.initBase(param1,param2).send(); - collector.logStepPass("执行【Base父类赋值重载方法多个参数 initBase()】 successful,hash:" + transactionReceipt.getTransactionHash()); - //执行查询 - BigInteger actualValueX = inheritContractOverloadChild.getX().send(); - BigInteger actualValueY = inheritContractOverloadChild.getY().send(); - collector.logStepPass("查询赋值结果 getX() successful,actualValueX:" + actualValueX); - collector.logStepPass("查询赋值结果 getY() successful,actualValueY:" + actualValueY); - collector.assertEqual(actualValueX,param1, "checkout execute success."); - collector.assertEqual(actualValueY,param2, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - - //3、执行BaseBase父类重载方法单个参数 - try { - BigInteger param1 = new BigInteger("3"); - BigInteger expectResult = new BigInteger("4"); - TransactionReceipt transactionReceipt = inheritContractOverloadChild.initBaseBase(param1).send(); - collector.logStepPass("执行【BaseBase父类重载方法单个参数 initBase()】 successful,hash:" + transactionReceipt.getTransactionHash()); - //执行查询 - BigInteger actualValueX = inheritContractOverloadChild.getX().send(); - collector.logStepPass("查询赋值结果 getX() successful,actualValueX:" + actualValueX); - collector.assertEqual(actualValueX,expectResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //4、执行BaseBase父类重载方法多个参数 - try { - BigInteger param1 = new BigInteger("3"); - BigInteger param2 = new BigInteger("4"); - BigInteger expectResultY = new BigInteger("3"); - BigInteger expectResultX = new BigInteger("4"); - TransactionReceipt transactionReceipt = inheritContractOverloadChild.initBaseBase(param1,param2).send(); - collector.logStepPass("执行【BaseBase父类重载方法多个参数 initBase()】 successful,hash:" + transactionReceipt.getTransactionHash()); - //执行查询 - BigInteger actualValueX = inheritContractOverloadChild.getX().send(); - BigInteger actualValueY = inheritContractOverloadChild.getY().send(); - collector.logStepPass("查询赋值结果 getX() successful,actualValueX:" + actualValueX); - collector.logStepPass("查询赋值结果 getY() successful,actualValueY:" + actualValueY); - collector.assertEqual(actualValueX,expectResultX, "checkout execute success."); - collector.assertEqual(actualValueY,expectResultY, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractOverloadTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractOverloadTest.java deleted file mode 100644 index 67d1db8de9..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractOverloadTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.InheritContractOverload; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:合约函数重载(Overload):合约可以有多个同名函数,可以有不同输入参数。 - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractOverloadTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.多重继承函数重载",sourcePrefix = "evm/0.7.1") - public void testInheritContractMutipleTest1() { - - InheritContractOverload inheritContractOverload = null; - try { - //合约部署 - inheritContractOverload = InheritContractOverload.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractOverload.getContractAddress(); - TransactionReceipt tx = inheritContractOverload.getTransactionReceipt().get(); - collector.logStepPass("InheritContractOverload issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("InheritContractOverload deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行getData1() - try { - BigInteger expectResult = new BigInteger("3"); - BigInteger actualBigInteger = inheritContractOverload.getDataA().send(); - collector.logStepPass("调用合约getData1()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、执行getData2() - try { - BigInteger expectResult = new BigInteger("6"); - BigInteger actualBigInteger = inheritContractOverload.getDataB().send(); - collector.logStepPass("调用合约getData2()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InheritContractSubclass Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractPassParamTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractPassParamTest.java deleted file mode 100644 index 64e28651bd..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/oop/inherit/InheritContractPassParamTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.evm.v0_7_1.oop.inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.contracts.evm.v0_7_1.InheritContractASub; -import network.platon.contracts.evm.v0_7_1.InheritContractBSub; -import network.platon.test.evm.beforetest.ContractPrepareTest; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import org.junit.Before; -import org.junit.Test; -import java.math.BigInteger; - -/** - * @title 测试:继承支持传参(继承中基类构造函数的传参) - * @description: - * @author: qudong - * @create: 2019/12/25 15:09 - **/ -public class InheritContractPassParamTest extends ContractPrepareTest { - - @Before - public void before() { - this.prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qudong", showName = "InheritContract.合约继承支持传参",sourcePrefix = "evm/0.7.1") - public void testInheritContractMutipleTest1() { - - InheritContractASub inheritContractSub1 = null; - InheritContractBSub inheritContractSub2 = null; - try { - //合约部署(inheritContractASub) - inheritContractSub1 = InheritContractASub.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = inheritContractSub1.getContractAddress(); - TransactionReceipt tx = inheritContractSub1.getTransactionReceipt().get(); - collector.logStepPass("InheritContractASub issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - - //合约部署(inheritContractBSub) - inheritContractSub2 = InheritContractBSub.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress2 = inheritContractSub2.getContractAddress(); - TransactionReceipt tx2 = inheritContractSub2.getTransactionReceipt().get(); - collector.logStepPass("InheritContractBSub issued successfully.contractAddress:" + contractAddress2 - + ", hash:" + tx2.getTransactionHash()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx2.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("inheritContractSub deploy fail.", e.toString()); - e.printStackTrace(); - } - - //调用合约方法 - //1、执行getDataA() - try { - BigInteger expectBookResult = new BigInteger("2"); - BigInteger actualBigInteger = inheritContractSub1.getDataA().send(); - collector.logStepPass("调用合约getDataA()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest1 Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - //2、执行getDataB() - try { - BigInteger expectBookResult = new BigInteger("4"); - BigInteger actualBigInteger = inheritContractSub2.getDataB().send(); - collector.logStepPass("调用合约getDataB()方法完毕 successful actualValue:" + actualBigInteger); - collector.assertEqual(actualBigInteger,expectBookResult, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("InterfaceContractStructTest1 Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/regreetest/PlatONTransfer2Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/regreetest/PlatONTransfer2Test.java deleted file mode 100644 index 6026db4d88..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/regreetest/PlatONTransfer2Test.java +++ /dev/null @@ -1,103 +0,0 @@ -package network.platon.test.evm.v0_7_1.regreetest;//package network.platon.test.evm.regreetest; -// -//import com.alibaba.fastjson.JSONArray; -//import network.platon.autotest.junit.annotations.DataSource; -//import network.platon.autotest.junit.enums.DataSourceType; -//import network.platon.autotest.junit.rules.AssertCollector; -//import network.platon.autotest.junit.rules.DriverService; -//import network.platon.autotest.utils.FileUtil; -//import network.platon.utils.OneselfFileUtil; -//import org.junit.Before; -//import org.junit.Rule; -//import org.junit.Test; -//import org.web3j.crypto.Credentials; -//import org.web3j.protocol.Web3j; -//import org.web3j.protocol.core.DefaultBlockParameterName; -//import org.web3j.protocol.core.methods.response.TransactionReceipt; -//import org.web3j.protocol.http.HttpService; -//import org.web3j.tx.RawTransactionManager; -//import org.web3j.tx.Transfer; -//import org.web3j.utils.Convert; -// -//import java.math.BigDecimal; -//import java.math.BigInteger; -//import java.nio.file.Paths; -// -// -///** -// * @title PlatON普通有回执转账交易 -// * @description: 步骤:账户A向账户B转账amount,预期1:账户A的余额减少amount,预期2:账户B的余额增加amount -// * @author: qcxiao -// * @create: 2019/12/16 11:03 -// **/ -//public class PlatONTransfer2Test { -// -// @Rule -// public DriverService driverService = new DriverService(); -// -// @Rule -// public AssertCollector collector = new AssertCollector(); -// -// // 底层链ID -// private long chainId; -// // 发行代币的地址 -// private String transferFrom; -// // 接收代币的地址 -// private String transferTo; -// private Web3j web3j; -// // 转账的金额 -// private String amount; -// -// @Before -// public void before() { -// chainId = Integer.valueOf(driverService.param.get("chainId")); -// //transferFrom = driverService.param.get("transferFrom"); -// transferFrom = driverService.param.get("address"); -// transferTo = driverService.param.get("transferTo"); -// amount = driverService.param.get("amount"); -// } -// -// @Test -// @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", -// author = "qcxiao", showName = "network.platon.test.evm.PlatonTransferTest-普通有回执转账交易", sourcePrefix = "network.platon.test.evm") -// public void testTransfer() { -// Credentials credentials = null; -// BigInteger nonce = null; -// try { -// web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); -// credentials = Credentials.create(driverService.param.get("privateKey")); -// -// -// String filePath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "lax_bech32_all_addr_and_private_keys.json").toUri().getPath()); -// String jsonContent = OneselfFileUtil.readFile(filePath); -// -// JSONArray jsonArray = JSONArray.parseArray(jsonContent); -// for (int i = 0; i < jsonArray.size(); i++) { -// Thread.sleep(1000); // 1680 -// transferTo = jsonArray.getJSONObject(i).getString("address"); -// try { -// RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); -// Transfer transfer = new Transfer(web3j, transactionManager); -// -// amount = "100000"; -// //TransactionReceipt transactionReceipt = transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.LAT).send(); -// -// transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.LAT).sendAsync(); -// -// //BigInteger endBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); -// //collector.logStepPass("transferTo:" + transferTo + ",endBalance:" + endBalance); -// collector.logStepPass("time:" + i); -// } catch (Exception e) { -// e.printStackTrace(); -// } -// -// } -// -// } catch (Exception e) { -// collector.logStepFail("transfer fail.", e.toString()); -// e.printStackTrace(); -// } -// -// } -// -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/regreetest/PlatONTransferTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/regreetest/PlatONTransferTest.java deleted file mode 100644 index e021012548..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/evm/v0_7_1/regreetest/PlatONTransferTest.java +++ /dev/null @@ -1,130 +0,0 @@ -package network.platon.test.evm.v0_7_1.regreetest; - -import com.alaya.bech32.Bech32; -import com.alaya.crypto.Credentials; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.PlatonGetTransactionCount; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.http.HttpService; -import com.alaya.tx.RawTransactionManager; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.autotest.junit.rules.AssertCollector; -import network.platon.autotest.junit.rules.DriverService; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; - -import java.math.BigDecimal; -import java.math.BigInteger; -import java.util.concurrent.ExecutionException; - - -/** - * @title PlatON普通有回执转账交易 - * @description: 步骤:账户A向账户B转账amount,预期1:账户A的余额减少amount,预期2:账户B的余额增加amount - * @author: qcxiao - * @create: 2019/12/16 11:03 - **/ -public class PlatONTransferTest { - - @Rule - public DriverService driverService = new DriverService(); - - @Rule - public AssertCollector collector = new AssertCollector(); - - // 底层链ID - private long chainId; - // 发行代币的地址 - private String transferFrom; - // 接收代币的地址 - private String transferTo; - private Web3j web3j; - // 转账的金额 - private String amount; - - @Before - public void before() { - chainId = Integer.valueOf(driverService.param.get("chainId")); - //transferFrom = driverService.param.get("transferFrom"); - transferFrom = driverService.param.get("address"); -// transferTo = "lax10eycqggu2yawpadtmn7d2zdw0vnmscklynzq8x"; //driverService.param.get("transferTo"); - transferTo = "atx10eycqggu2yawpadtmn7d2zdw0vnmscklcx6a9v"; //driverService.param.get("transferTo"); - amount = "1"; //driverService.param.get("amount"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "network.platon.test.evm.PlatonTransferTest-普通有回执转账交易", sourcePrefix = "evm/0.7.1") - public void testTransfer() { - Credentials credentials = null; - BigInteger nonce = null; - try { - web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); - //credentials = Credentials.create(driverService.param.get("privateKeyOfTransferFrom")); - credentials = Credentials.create(driverService.param.get("privateKey")); - collector.logStepPass("currentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); - //获取nonce,交易笔数 - transferFrom = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),transferFrom); - nonce = getNonce(transferFrom); - collector.logStepPass("nonce:" + nonce); - //transferTo = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(),transferTo); - BigInteger initialBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("initialBalance:" + initialBalance); - - /* - //创建RawTransaction交易对象 - RawTransaction rawTransaction = RawTransaction.createEtherTransaction(nonce, new BigInteger("50000000000"), new BigInteger("3000000"), - transferTo, new BigInteger(amount)); - //签名Transaction,这里要对交易做签名 - byte[] signMessage = TransactionEncoder.signMessage(rawTransaction, chainId, credentials); - String hexValue = Numeric.toHexString(signMessage); - - //发送交易 - PlatonSendTransaction ethSendTransaction = web3j.platonSendRawTransaction(hexValue).send(); - //String hash = ethSendTransaction.getTransactionHash(); - */ - //RawTransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - //Transfer transfer = new Transfer(web3j, transactionManager); - //TransactionReceipt transactionReceipt = transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.VON).send(); - - //TransactionReceipt transactionReceipt = Transfer.sendFunds(web3j, credentials, chainId, transferTo, new BigDecimal("1"), Convert.Unit.VON).send(); - - - TransactionManager transactionManager = new RawTransactionManager(web3j, credentials, chainId); - Transfer transfer = new Transfer(web3j,transactionManager); - - TransactionReceipt transactionReceipt = transfer.sendFunds(transferTo, new BigDecimal(amount), Convert.Unit.VON).send(); - - - BigInteger endBalance = web3j.platonGetBalance(transferTo, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("endBalance:" + endBalance); - collector.logStepPass("txHash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(endBalance.subtract(initialBalance).toString(), amount, "compare the balance after transfer"); - } catch (Exception e) { - collector.logStepFail("transfer fail.", e.toString()); - e.printStackTrace(); - } - - } - - /** - * 获取nonce,交易笔数 - * - * @param from - * @return - * @throws ExecutionException - * @throws InterruptedException - */ - private BigInteger getNonce(String from) throws ExecutionException, InterruptedException { - PlatonGetTransactionCount transactionCount = web3j.platonGetTransactionCount(from, DefaultBlockParameterName.LATEST).sendAsync().get(); - BigInteger nonce = transactionCount.getTransactionCount(); - return nonce; - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/beforetest/WASMContractPrepareTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/beforetest/WASMContractPrepareTest.java deleted file mode 100644 index b3cec4f2e2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/beforetest/WASMContractPrepareTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.wasm.beforetest; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.Web3j; -import com.alaya.protocol.http.HttpService; -import com.alaya.tx.RawTransactionManager; -import com.alaya.tx.gas.ContractGasProvider; -import com.alaya.utils.Numeric; -import network.platon.test.BaseTest; -import java.math.BigInteger; - -/** - * @title 所有合约部署前相关准备工作,需要初始化gas值 - * @author: albedo - * @create: 2019/12/26 11:27 - **/ -public class WASMContractPrepareTest extends BaseTest { - - protected Web3j web3j = null; - protected Credentials credentials = null; - protected RawTransactionManager transactionManager; - protected ContractGasProvider provider; - protected String walletAddress; - protected String gasLimit = "4712388"; - protected String gasPrice = "3000000000000000"; - - /** - * 合约部署相关准备工作 - * @param gasPrice - * @param gasLimit - */ - protected void prepare(String gasPrice,String gasLimit){ - chainId = Integer.valueOf(driverService.param.get("chainId")); - try { - web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); - credentials = Credentials.create(driverService.param.get("privateKey")); - collector.logStepPass("currentBlockNumber:" + web3j.platonBlockNumber().send().getBlockNumber()); - walletAddress = driverService.param.get("address"); - } catch (Exception e) { - collector.logStepFail("The node is unable to connect", e.toString()); - e.printStackTrace(); - } - provider = new ContractGasProvider(new BigInteger(gasPrice), new BigInteger(gasLimit)); - transactionManager = new RawTransactionManager(web3j, credentials, chainId); - } - - /** - * 合约部署相关准备工作 - */ - protected void prepare(){ - this.prepare(gasPrice,gasLimit); - } - - protected String prependHexPrefix(String input){ - if(Numeric.containsHexPrefix(input)){ - return input; - } - return Numeric.prependHexPrefix(input); - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/beforetest/WASMGeneratorPreTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/beforetest/WASMGeneratorPreTest.java deleted file mode 100644 index 6ef3667feb..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/beforetest/WASMGeneratorPreTest.java +++ /dev/null @@ -1,157 +0,0 @@ -package network.platon.test.wasm.beforetest; - -import lombok.extern.slf4j.Slf4j; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.autotest.junit.rules.AssertCollector; -import network.platon.autotest.junit.rules.DriverService; -import network.platon.autotest.utils.FileUtil; -import network.platon.test.BaseTest; -import network.platon.utils.CompileUtil; -import network.platon.utils.GeneratorUtil; -import network.platon.utils.OneselfFileUtil; -import org.junit.Rule; -import org.junit.Test; - -import java.io.*; -import java.nio.file.Paths; -import java.util.*; -import java.util.concurrent.CountDownLatch; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.concurrent.Semaphore; - -/** - * @title WASMGeneratorPreTest - * @description 1.将cpp编译成二进制和ABI文件,2.通过合约二进制和ABI文件生成包裝类 - * @author qcxiao - * @updateTime 2020/2/6 12:11 - */ -@Slf4j -public class WASMGeneratorPreTest extends BaseTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", author = "qcxiao", - showName = "wasm.GeneratorPreTest-编译并生成包装类", sourcePrefix = "wasm") - public void compileAndGenerator() { - Date compileStartDate = new Date(); - try { - // 1.编译wasm源文件 - compileWasm(); - Date compileEndDate = new Date(); - long ms = compileEndDate.getTime() - compileStartDate.getTime(); - collector.logStepPass("compile time:" + ms + "ms"); - - Date generatorWrapperStartDate = new Date(); - // 2.通过合约二进制和ABI文件生成包裝类 - generatorWasmWrapper(); - Date generatorWrapperEndDate = new Date(); - - ms = generatorWrapperEndDate.getTime() - generatorWrapperStartDate.getTime(); - collector.logStepPass("generator wrapper time:" + ms + "ms"); - } catch (Exception e) { - e.printStackTrace(); - } - } - - - /** - * @title 将cpp编译成二进制和ABI文件 - * @description: - * @author: qcxiao - * @create: 2019/12/24 14:44 - **/ - public void compileWasm() throws InterruptedException { - //String resourcePath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "contracts", "wasm").toUri().getPath()); - String resourcePath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "contracts", "wasm").toUri().getPath()); - - String buildPath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "contracts", "wasm", "build").toUri().getPath()); - - collector.logStepPass("resourcePath:" + resourcePath + ", buildPath:" + buildPath); - - File buildPathFile = new File(buildPath); - if (!buildPathFile.exists() || !buildPathFile.isDirectory()) { - buildPathFile.mkdirs(); - } - - File[] list = new File(buildPath).listFiles(); - if (null != list) { - for (File file : list) { - file.delete(); - } - } - // 获取所有wasm源文件 - List files = new OneselfFileUtil().getWasmResourcesFile(resourcePath, 0); - int size = files.size(); - collector.logStepPass("wasm contract size:" + size); - - ExecutorService executorService = Executors.newCachedThreadPool(); - // 同时并发执行的线程数 - final Semaphore semaphore = new Semaphore(50); - // 请求总数与文件数定义一致size - CountDownLatch countDownLatch = new CountDownLatch(size); - CompileUtil compileUtil = new CompileUtil(); - - for (String file : files) { - collector.logStepPass("staring compile:" + file); - String fileName = file.substring(file.lastIndexOf("/") + 1, file.lastIndexOf(".cpp")) + ".wasm"; - executorService.execute(() -> { - try { - semaphore.acquire(); - log.info(buildPath + fileName); - compileUtil.wasmCompile(file, buildPath + fileName); - collector.logStepPass("compile success:" + file); - } catch (Exception e) { - collector.logStepFail("compile fail:" + file, e.toString()); - } finally { - semaphore.release(); - countDownLatch.countDown(); - } - - }); - } - - countDownLatch.await(); - executorService.shutdown(); - } - - /** - * @title 通过合约二进制和ABI文件生成包裝类 - * @description: - * @author: qcxiao - * @create: 2019/12/24 14:45 - **/ - public void generatorWasmWrapper() throws Exception { - // 获取已编译后的二进制文件 - List binFileName = new OneselfFileUtil().getWasmFileName(); - - // 获取合约文件数量 - int size = binFileName.size(); - - ExecutorService executorService = Executors.newCachedThreadPool(); - CountDownLatch countDownLatch = new CountDownLatch(size); - // 信号量 - final Semaphore semaphore = new Semaphore(50); - GeneratorUtil generatorUtil = new GeneratorUtil(); - collector.logStepPass("staring generator, Total " + size + " contract, please wait..."); - - for (String fileName : binFileName) { - executorService.execute(() -> { - try { - semaphore.acquire(); - generatorUtil.generatorWasm(fileName); - collector.logStepPass("generator success:" + fileName); - semaphore.release(); - } catch (Exception e) { - collector.logStepFail("generator fail:" + fileName, e.toString()); - } finally { - countDownLatch.countDown(); - } - }); - } - countDownLatch.await(); - executorService.shutdown(); - } - -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/ContractVIDTokenTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/ContractVIDTokenTest.java deleted file mode 100644 index 8b95c53964..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/ContractVIDTokenTest.java +++ /dev/null @@ -1,212 +0,0 @@ -package network.platon.test.wasm.complex_contract; - -import com.alaya.crypto.Credentials; -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.tx.RawTransactionManager; -import com.alaya.tx.TransactionManager; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import com.alibaba.fastjson.JSONObject; -import network.platon.test.datatypes.Xuint128; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.VIDToken; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigDecimal; -import java.math.BigInteger; - -/** - * @author zjsunzone - *

- * This class is for docs. - */ -public class ContractVIDTokenTest extends WASMContractPrepareTest { - - @Before - public void before() { - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.contract_VIDToken", sourcePrefix = "wasm") - public void testHomeBridge() { - try { - // deploy contract. - VIDToken contract = VIDToken.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("contract_VIDToken issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("contract_VIDToken deploy successfully. gasUsed: " + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // transfer to contract - Transfer t = new Transfer(web3j, transactionManager); - t.sendFunds(contractAddress, new BigDecimal(1000), Convert.Unit.ATP, provider.getGasPrice(), provider.getGasLimit()).send(); - BigInteger cbalance = web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("Transfer to contract , address: " + contractAddress + " cbalance: " + cbalance); - - - // transfer in contract -// String to = "lax1fyeszufxwxk62p46djncj86rd553skpptsj8v6"; - String toPrivateKey = this.generatePrivateKey(); -// String to = "atx1fyeszufxwxk62p46djncj86rd553skpph926ws"; - String to = Credentials.create(toPrivateKey).getAddress(chainId); - Xuint128 value = new Xuint128("100000"); - TransactionReceipt transferTr = contract.Transfer(to, value).send(); - collector.logStepPass("Send Transfer, hash: " + transferTr.getTransactionHash() - + " gasUsed: " + transferTr.getGasUsed()); - - // balance of - Uint128 balance = contract.BalanceOf(to).send(); - collector.logStepPass("Call balanceOf, res: " + balance); - collector.assertEqual(balance.value, value.value); - - // approve - TransactionReceipt approveTR = contract.Approve(to, value).send(); - collector.logStepPass(JSONObject.toJSONString(approveTR)); - collector.logStepPass("Send Approve, hash: " + approveTR.getTransactionHash() - + " gasUsed: " + approveTR.getGasUsed()); - - // allowance - Uint128 allowance = contract.Allowance(credentials.getAddress(chainId), to).send(); - collector.logStepPass("Call allowance, res: " + allowance); - collector.assertEqual(allowance.value, value.value); - - // IncreaseApproval - Xuint128 increaseValue = new Xuint128("23300000"); - TransactionReceipt increaseTr = contract.IncreaseApproval(to, increaseValue).send(); - collector.logStepPass("Send IncreaseApproval, hash: " + increaseTr.getTransactionHash() - + " gasUsed: " + increaseTr.getGasUsed()); - - Uint128 afterIncreaseAllowance = contract.Allowance(credentials.getAddress(chainId), to).send(); - collector.logStepPass("Call Allowance after increaseApproval, res: " + afterIncreaseAllowance); - collector.assertEqual(afterIncreaseAllowance, value.add(increaseValue)); - - // DecreaseApproval - Xuint128 decreaseValue = new Xuint128("23300000"); - TransactionReceipt decreaseTr = contract.DecreaseApproval(to, decreaseValue).send(); - collector.logStepPass("Send DecreaseApproval, hash: " + decreaseTr.getTransactionHash() - + " gasUsed: " + decreaseTr.getGasUsed()); - - Uint128 afterDecreaseAllowance = contract.Allowance(credentials.getAddress(chainId), to).send(); - collector.logStepPass("Call Allowance after DecreaseApproval, res: " + afterDecreaseAllowance); - collector.assertEqual(afterDecreaseAllowance.value, value.value); - - // TransferFrom - // spender: a11859ce23effc663a9460e332ca09bd812acc390497f8dc7542b6938e13f8d7 - // 0x493301712671Ada506ba6Ca7891F436D29185821 - // to: 0x1E1ae3407377F7897470FEf31a80873B4FD75cA1 -// Credentials spendCredentials = Credentials.create("a11859ce23effc663a9460e332ca09bd812acc390497f8dc7542b6938e13f8d7"); - Credentials spendCredentials = Credentials.create(toPrivateKey); - t.sendFunds(spendCredentials.getAddress(chainId), new BigDecimal(100000), Convert.Unit.ATP, provider.getGasPrice(), provider.getGasLimit()).send(); - BigInteger spendBalance = web3j.platonGetBalance(spendCredentials.getAddress(chainId), DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("Transfer to contract , address: " + spendCredentials.getAddress(chainId) + " spendBalance: " + spendBalance); - - TransactionManager spenderTM = new RawTransactionManager(web3j, spendCredentials, chainId); -// String to2 = "lax1rcdwxsrnwlmcjarslme34qy88d8awh9pnjpmz9"; -// String to2 = "atx1rcdwxsrnwlmcjarslme34qy88d8awh9p08exq0"; - //to2 address random generate - String to2 = Credentials.create(this.generatePrivateKey()).getAddress(chainId); - Xuint128 valule2 = new Xuint128("10000"); - VIDToken v = VIDToken.load(contractAddress, web3j, spenderTM, provider, chainId); - TransactionReceipt transferFromTr = v.TransferFrom(credentials.getAddress(chainId), to2, valule2).send(); - collector.logStepPass("Send TransferFrom, hash: " + transferFromTr.getTransactionHash() - + " gasUsed: " + transferFromTr.getGasUsed()); - Uint128 to2Balance = contract.BalanceOf(to2).send(); - collector.logStepPass("Call balanceOf 2, res: " + to2Balance); - collector.assertEqual(to2Balance.value, valule2.value); - collector.logStepPass("Check TransferFrom() and Approve() success."); - - // TransferToken - Xuint128 transferTokenValue = new Xuint128("10000"); - TransactionReceipt transferTokenTR = contract.TransferToken(to, transferTokenValue).send(); - collector.logStepPass("Send TransferToken, hash: " + transferTokenTR.getTransactionHash() - + " gasUsed: " + transferTokenTR.getGasUsed() + " logs:" + transferTokenTR.getLogs().size()); - VIDToken.TransferEvEventResponse transferTokenResponse = contract.getTransferEvEvents(transferTokenTR).get(0); - collector.logStepPass("Send TransaferToken Logs: " - + " arg1: " + transferTokenResponse.arg1 - + " arg2: " + transferTokenResponse.arg2 - + " arg3: " + transferTokenResponse.arg3); - - // Burn - Xuint128 burnValue = new Xuint128("122"); - TransactionReceipt burnTr = contract.Burn(burnValue).send(); - collector.logStepPass("Send Burn, hash: " + burnTr.getTransactionHash() - + " gasUsed: " + burnTr.getGasUsed() + " logs:" + burnTr.getLogs().size()); - VIDToken.BurnEvEventResponse burnResponse = contract.getBurnEvEvents(burnTr).get(0); - collector.assertTrue(burnTr.getLogs().size() != 0); - collector.logStepPass("Send Burn Logs: " - + " arg1: " + transferTokenResponse.arg1 - + " arg2: " + transferTokenResponse.arg2); - - // Freeze - TransactionReceipt freezeTr = contract.Freeze(credentials.getAddress(chainId), true).send(); - collector.logStepPass("Send Freeze, hash: " + freezeTr.getTransactionHash() - + " gasUsed: " + freezeTr.getGasUsed() + " logs:" + freezeTr.getLogs().size()); - VIDToken.FreezeEvEventResponse freezeResponse = contract.getFreezeEvEvents(freezeTr).get(0); - collector.assertTrue(freezeTr.getLogs().size() != 0); - collector.logStepPass("Send Burn Logs: " - + " arg1: " + freezeResponse.arg1 - + " arg2: " + freezeResponse.arg2); - - // ValidatePublisher - TransactionReceipt publisherTr = contract.ValidatePublisher(to, true, credentials.getAddress(chainId)).send(); - collector.logStepPass("Send ValidatePublisher, hash: " + publisherTr.getTransactionHash() - + " gasUsed: " + publisherTr.getGasUsed() + " logs:" + publisherTr.getLogs().size()); - VIDToken.ValidatePublisherEvEventResponse publisherResponse = contract.getValidatePublisherEvEvents(publisherTr).get(0); - collector.assertTrue(publisherTr.getLogs().size() != 0); - collector.logStepPass("Send ValidatePublisher Logs: " - + " arg1: " + publisherResponse.arg1 - + " arg2: " + publisherResponse.arg2 - + " arg3: " + publisherResponse.arg3); - - // ValidateWallet - TransactionReceipt walletTr = contract.ValidateWallet(to, true, credentials.getAddress(chainId)).send(); - collector.logStepPass("Send ValidateWallet, hash: " + walletTr.getTransactionHash() - + " gasUsed: " + walletTr.getGasUsed() + " logs:" + walletTr.getLogs().size()); - VIDToken.ValidateWalletEvEventResponse walletResponse = contract.getValidateWalletEvEvents(walletTr).get(0); - collector.assertTrue(publisherTr.getLogs().size() != 0); - collector.logStepPass("Send ValidateWallet Logs: " - + " arg1: " + walletResponse.arg1 - + " arg2: " + walletResponse.arg2 - + " arg3: " + walletResponse.arg3); - - // listFiles - TransactionReceipt listFileTR = contract.ListFiles(Xuint128.ZERO, Xuint128.TEN).send(); - collector.logStepPass("Send ListFiles, hash: " + listFileTR.getTransactionHash() - + " gasUsed: " + listFileTR.getGasUsed() + " logs:" + listFileTR.getLogs().size()); - - for (int i = 0; i < listFileTR.getLogs().size(); i++) { - VIDToken.LogEventEvEventResponse response = contract.getLogEventEvEvents(listFileTR).get(i); - collector.logStepPass("Send ListFiles Logs: " - + " arg1: " + response.arg1 - + " arg2: " + response.arg2); - } - - // VerifyFile - boolean verifyFileRes = contract.VerifyFile("").send(); - collector.logStepPass("Call VerifyFile, res: " + verifyFileRes); - - // set price - TransactionReceipt setPriceTr = contract.SetPrice(new Xuint128("30000000000")).send(); - collector.logStepPass("Send SetPrice, hash: " + setPriceTr.getTransactionHash() - + " gasUsed: " + setPriceTr.getGasUsed() + " logs:" + setPriceTr.getLogs().size()); - - // set wallet - TransactionReceipt setWalltTr = contract.SetWallet(credentials.getAddress(chainId)).send(); - collector.logStepPass("Send SetWallet, hash: " + setWalltTr.getTransactionHash() - + " gasUsed: " + setWalltTr.getGasUsed() + " logs:" + setWalltTr.getLogs().size()); - - } catch (Exception e) { - collector.logStepFail("contract_VIDToken failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/CrowdFundingTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/CrowdFundingTest.java deleted file mode 100644 index 00d46179d0..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/CrowdFundingTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.wasm.complex_contract; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.CrowdFunding; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; - -/** - * @author hudenian - * - */ -public class CrowdFundingTest extends WASMContractPrepareTest { - - @Before - public void before(){ - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.GuessingTest-众筹合约",sourcePrefix = "wasm") - public void testCrowdFundContract() { - - Long blocks = 30L;//设置截止块高与当前块高为20 - - try { - CrowdFunding crowdFunding = CrowdFunding.deploy(web3j, transactionManager, provider,chainId, Uint64.of("10000"),Uint64.of("10000")).send(); - String contractAddress = crowdFunding.getContractAddress(); - String transactionHash = crowdFunding.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("CrowdFunding issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("CrowdFunding deploy successfully. gasUsed: " + crowdFunding.getTransactionReceipt().get().getGasUsed().toString()); - - //发起众筹 - TransactionReceipt transactionReceipt = crowdFunding.crowdFund(new BigInteger("1000")).send(); - collector.logStepPass("CrowdFunding call transfer hash is:"+transactionReceipt.getTransactionHash()); - - //检测众筹目标是否已经达到 - transactionReceipt =crowdFunding.safeWithdrawal().send(); - collector.logStepPass("CrowdFunding call checkGoalReached hash is:"+transactionReceipt.getTransactionHash()); - - CrowdFunding.Transfer1EventResponse flg = crowdFunding.getTransfer1Events(transactionReceipt).get(0); - collector.assertEqual("1000",crowdFunding.getTransfer1Events(transactionReceipt).get(0).arg2.toString()); - - - - } catch (Exception e) { - collector.logStepFail("CrowdFunding failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/DonateTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/DonateTest.java deleted file mode 100644 index fedbdb1f5c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/DonateTest.java +++ /dev/null @@ -1,76 +0,0 @@ -package network.platon.test.wasm.complex_contract; - -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.utils.Convert; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.Donate; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigDecimal; -import java.math.BigInteger; -import java.util.List; -import java.util.Map; - -/** - * @author denglonghui - * - */ -public class DonateTest extends WASMContractPrepareTest { - - @Before - public void before(){ - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "denglonghui", showName = "wasm.DonateTest-DonateTest",sourcePrefix = "wasm") - public void testDonate() { - - BigInteger initialVonValue = BigInteger.valueOf(100L); - WasmAddress _charity = new WasmAddress(credentials.getAddress(chainId)); - System.out.println(_charity); - Uint128 _openingTime = Uint128.of((System.currentTimeMillis() - 1 * 60 * 60 * 1000)); - Uint128 _closingTime = Uint128.of((System.currentTimeMillis() + 24 * 60 * 60 * 1000)); - Uint128 _minVonAmount = Uint128.of(1); - Uint128 _maxVonAmount = Uint128.of(Convert.toVon(new BigDecimal(10000), Convert.Unit.ATP).toBigInteger()); - Uint128 _maxNumDonors = Uint128.of(100000); - - try { - System.out.println(_openingTime); - System.out.println(_closingTime); - Donate donate = Donate.deploy(web3j, transactionManager, provider, chainId, _charity, _openingTime, _closingTime, _minVonAmount, _maxVonAmount, _maxNumDonors).send(); - String contractAddress = donate.getContractAddress(); - String transactionHash = donate.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("Donate issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("Donate deploy successfully. gasUsed: " + donate.getTransactionReceipt().get().getGasUsed().toString()); - - // 加入白名单 - donate.addToWhitelist(new WasmAddress(credentials.getAddress(chainId))).send(); - Map whitelist = donate.getWhitelist().send(); - System.err.println("Whitelist >>>> " + whitelist); - - // 捐赠,只有加入白名单才能捐赠 - TransactionReceipt receipt = donate.donate(new WasmAddress(credentials.getAddress(chainId)),BigInteger.valueOf(1000)).send(); - List list = donate.getDonatedEvents(receipt); - collector.logStepPass(">>>>>>>>>>> " + list.get(0).topic); - collector.logStepPass("捐赠金额>>>>>>>>>> " + list.get(0).arg1); - - collector.logStepPass("After donate, balance >>>> " + web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance()); - - // 捐赠名单 - WasmAddress[] wasms = donate.getDonors().send(); - collector.logStepPass(" >>>>>>>>>>>>> " + wasms.length); - } catch (Exception e) { - collector.logStepFail("DonateTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/GuessingWasmTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/GuessingWasmTest.java deleted file mode 100644 index a76f6be30a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/GuessingWasmTest.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.test.wasm.complex_contract; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.GuessingWasm; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; -import java.util.List; - -/** - * @author hudenian - * - */ -public class GuessingWasmTest extends WASMContractPrepareTest { - - @Before - public void before(){ - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.GuessingWasmTest-竞猜合约",sourcePrefix = "wasm") - public void testGuessing() { - - Long blocks = 30L;//设置截止块高与当前块高为20 - try { - //设置结束时块高 - BigInteger endBlock = web3j.platonBlockNumber().send().getBlockNumber().add(BigInteger.valueOf(blocks)); - - GuessingWasm guessing = GuessingWasm.deploy(web3j, transactionManager, provider,chainId, Uint64.of(endBlock)).send(); - String contractAddress = guessing.getContractAddress(); - String transactionHash = guessing.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("GuessingWasm issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("GuessingWasm deploy successfully. gasUsed: " + guessing.getTransactionReceipt().get().getGasUsed().toString()); - - //发起竞猜 至少5LAT - TransactionReceipt transactionReceipt = guessing.guessingWithLat(new BigInteger("5000000000000000000")).send(); - collector.logStepPass("GuessingWasm call guessingWithLat successfully hash:" + transactionReceipt.getTransactionHash()); - - //对事件信息进行解析 - List eventList = guessing.getTransfer1Events(transactionReceipt); - String data = eventList.get(0).log.getData(); - collector.logStepPass("event arg1 value is:"+eventList.get(0).arg1); - collector.logStepPass("topics is:"+eventList.get(0).log.getTopics().get(0).toString()); - - String indexKey = guessing.getIndexKey().send().toString(); - collector.logStepPass("indexKey is:"+indexKey); - - //开奖操作 - transactionReceipt = guessing.draw().send(); - collector.logStepPass("GuessingWasm call draw successfully hash:" + transactionReceipt.getTransactionHash()); - - //查看合约中的余额 - String balance = guessing.getBalance().send().toString(); - collector.logStepPass("contract balance is:"+balance); - - - //获取所有中奖人地址 - WasmAddress[] wasmAddresses = guessing.getWinnerAddresses().send(); - for (WasmAddress wasmAddresse : wasmAddresses) { - collector.logStepPass("获奖人地址:" + wasmAddresse); - } - //Arrays.asList(wasmAddresses).stream().forEach(addr ->{collector.logStepPass("获奖人地址:"+addr);}); - - } catch (Exception e) { - collector.logStepFail("Guessing wasm failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/MultiSigWalletTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/MultiSigWalletTest.java deleted file mode 100644 index cde9014035..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/complex_contract/MultiSigWalletTest.java +++ /dev/null @@ -1,83 +0,0 @@ -package network.platon.test.wasm.complex_contract; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.MultiSigWallet; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.HashSet; -import java.util.Map; -import java.util.Set; - -/** - * @author hudenian - */ -public class MultiSigWalletTest extends WASMContractPrepareTest { - - @Before - public void before() { - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.MultiSigWalletTest-MultiSigWallet", sourcePrefix = "wasm") - public void testMultiSigWallet() { - -// String address1 = "lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2"; - String address1 = "atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq"; -// String address2 = "lax1fyeszufxwxk62p46djncj86rd553skpptsj8v6"; - String address2 = "atx1fyeszufxwxk62p46djncj86rd553skpph926ws"; - /*String address3 = "lax1570qv7qgyd0nrsaprht5e6m285wrk3ddyeafxt"; - String address4 = "lax1tvma40k6uphdk9pz27qeltfqwxves6vjx3wjjk";*/ -// String address5 = "lax1uqug0zq7rcxddndleq4ux2ft3tv6dqljphydrl"; - String address5 = "atx1uqug0zq7rcxddndleq4ux2ft3tv6dqljazusp4"; - Set owners = new HashSet<>(); - owners.add(new WasmAddress(address1)); - owners.add(new WasmAddress(address2)); -// owners.add(new WasmAddress(address3)); - - try { - MultiSigWallet multiSigWallet = MultiSigWallet.deploy(web3j, transactionManager, provider,chainId, Uint64.of("2"), owners).send(); - String contractAddress = multiSigWallet.getContractAddress(); - String transactionHash = multiSigWallet.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("MultiSigWallet issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("MultiSigWallet deploy successfully. gasUsed: " + multiSigWallet.getTransactionReceipt().get().getGasUsed().toString()); - - Map isOwner = multiSigWallet.getIsOwner().send(); - collector.logStepPass("isOwner map size is:" + isOwner.size()); - - TransactionReceipt transactionReceipt = multiSigWallet.addOwner(new WasmAddress(address5)).send(); - collector.logStepPass("MultiSigWallet call addOwner hash is:" + transactionReceipt.getTransactionHash()); - isOwner = multiSigWallet.getIsOwner().send(); - collector.logStepPass("isOwner map size is:" + isOwner.size()); - - transactionReceipt = multiSigWallet.removeOwner(new WasmAddress(address5)).send(); - collector.logStepPass("MultiSigWallet call removeOwner hash is:" + transactionReceipt.getTransactionHash()); - isOwner = multiSigWallet.getIsOwner().send(); - collector.logStepPass("isOwner map size is:" + isOwner.size()); - - transactionReceipt = multiSigWallet.changeThreshold(Uint64.of(2L)).send(); - collector.logStepPass("MultiSigWallet call changeThreshold hash is:" + transactionReceipt.getTransactionHash()); - isOwner = multiSigWallet.getIsOwner().send(); - collector.logStepPass("isOwner map size is:" + isOwner.size()); - - -// byte[] _data = "helloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallet".getBytes(); -// byte[] _signatures = "helloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallethelloMultiSigWalletTesttestMultiSigWalletMultiSigWalletTesttestMultiSigWallet".getBytes(); -// -// transactionReceipt = multiSigWallet.execute(new WasmAddress(address4),Uint64.of(10L),_data,_signatures).send(); -// collector.logStepPass("MultiSigWallet call execute hash is:"+transactionReceipt.getTransactionHash()); - - } catch (Exception e) { - collector.logStepFail("MultiSigWallet failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_clone/CreateContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_clone/CreateContractTest.java deleted file mode 100644 index 7f1265b632..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_clone/CreateContractTest.java +++ /dev/null @@ -1,143 +0,0 @@ -package network.platon.test.wasm.contract_clone; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import network.platon.test.datatypes.Xuint128; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.SimpleContract; -import network.platon.contracts.wasm.CreateContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @author wanghengtao - *

- * This class is for docs. - */ -public class CreateContractTest extends WASMContractPrepareTest { - - @Before - public void before() { - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "wanghengtao", showName = "wasm.CreateContract", sourcePrefix = "wasm") - public void testCloneAndCreate() { - try { - // deploy contract. - SimpleContract simpleContract = SimpleContract.deploy(web3j, transactionManager, provider, chainId).send(); - CreateContract createContract = CreateContract.deploy(web3j, transactionManager, provider, chainId).send(); - - // test simple contract - WasmAddress wasmCreateAddress = new WasmAddress(createContract.getContractAddress()); - simpleContract.set_address(wasmCreateAddress).send(); - WasmAddress simpleCreateAddress = simpleContract.get_address().send(); - collector.assertEqual(wasmCreateAddress, simpleCreateAddress); - collector.logStepPass("The set_simple_address and get_simple_address methods have been verified to work."); - - // test create contract - WasmAddress wasmSimpleAddress = new WasmAddress(simpleContract.getContractAddress()); - createContract.set_simple_address(wasmSimpleAddress).send(); - WasmAddress createSimpleAddress = createContract.get_simple_address().send(); - collector.assertEqual(wasmSimpleAddress, createSimpleAddress); - - // deploy simple contract - TransactionReceipt receipt = createContract.deploy_contract(wasmSimpleAddress).send(); - collector.assertTrue(receipt.isStatusOK()); - WasmAddress deploySimple = createContract.get_deploy_address().send(); - collector.logStepPass("deploy contract successfully, contract address:" + deploySimple.toString()); - - // get deploy simple contract code length - Int32 deployLength = createContract.get_contract_length(deploySimple).send(); - Int32 simpleLength = createContract.get_contract_length(wasmSimpleAddress).send(); - collector.assertEqual(deployLength, simpleLength); - collector.logStepPass("The deployment contract length is verified correctly"); - - // test deploy simple contract - SimpleContract deploySimpleContract = SimpleContract.load(deploySimple.toString(), web3j, transactionManager, provider, chainId); - deploySimpleContract.set(Uint64.of(7)).send(); - Uint64 deploySimpleGet = deploySimpleContract.get().send(); - collector.assertEqual(deploySimpleGet, Uint64.of(7)); - collector.logStepPass("The deployment contract method is called normally"); - - // clone simple contract - receipt = createContract.clone_contract(wasmSimpleAddress).send(); - collector.assertTrue(receipt.isStatusOK()); - WasmAddress cloneSimple = createContract.get_clone_address().send(); - collector.logStepPass("clone contract successfully, contract address:" + cloneSimple.toString()); - - // get clone simple contract code length - Int32 cloneLength = createContract.get_contract_length(cloneSimple).send(); - collector.assertEqual(cloneLength, simpleLength); - collector.logStepPass("The cloned contract length is verified correctly"); - - // test clone simple contract - SimpleContract cloneSimpleContract = SimpleContract.load(cloneSimple.toString(), web3j, transactionManager, provider, chainId); - cloneSimpleContract.set(Uint64.of(7)).send(); - Uint64 cloneSimpleGet = cloneSimpleContract.get().send(); - collector.assertEqual(cloneSimpleGet, Uint64.of(7)); - collector.logStepPass("The cloned contract method is called normally"); - - // migrate test - CreateContract migrateCreateContract = CreateContract.deploy(web3j, transactionManager, provider, chainId).send(); - migrateCreateContract.set_simple_address(deploySimple).send(); - receipt = migrateCreateContract.migrate(deploySimple).send(); - collector.assertTrue(receipt.isStatusOK()); - WasmAddress migrateSimpleAddress = deploySimpleContract.get_address().send(); - collector.logStepPass("migrate contract successfully, contract address:" + migrateSimpleAddress.toString()); - - // test migrate simple contract - SimpleContract migrateSimpleContract = SimpleContract.load(migrateSimpleAddress.toString(), web3j, transactionManager, provider, chainId); - migrateSimpleContract.set(Uint64.of(7)).send(); - Uint64 migrateSimpleGet = migrateSimpleContract.get().send(); - collector.assertEqual(migrateSimpleGet, Uint64.of(7)); - collector.logStepPass("The migrate contract method is called normally"); - - // migrate clone test - CreateContract migrateCloneCreateContract = CreateContract.deploy(web3j, transactionManager, provider, chainId).send(); - migrateCloneCreateContract.set_simple_address(cloneSimple).send(); - receipt = migrateCloneCreateContract.migrate_clone(cloneSimple).send(); - collector.assertTrue(receipt.isStatusOK()); - WasmAddress migrateCloneSimpleAddress = cloneSimpleContract.get_address().send(); - collector.logStepPass("migrate clone contract successfully, contract address:" + migrateCloneSimpleAddress.toString()); - - // test migrate clone simple contract - SimpleContract migrateCloneSimpleContract = SimpleContract.load(migrateCloneSimpleAddress.toString(), web3j, transactionManager, provider, chainId); - migrateCloneSimpleContract.set(Uint64.of(7)).send(); - Uint64 migrateCloneSimpleGet = migrateCloneSimpleContract.get().send(); - collector.assertEqual(migrateCloneSimpleGet, Uint64.of(7)); - collector.logStepPass("The migrate clone contract method is called normally"); - - // Failed to migrate contract test - CreateContract failMigrateCreateContract = CreateContract.deploy(web3j, transactionManager, provider, chainId).send(); - WasmAddress failMigrateCreateContractAddress = new WasmAddress(createContract.getContractAddress()); - WasmAddress failMigrateDeployAddress; - CreateContract failMigrateDeployContract; - for(int i = 0; i < 20; i++){ - // create a new create contract - receipt = failMigrateCreateContract.deploy_contract(wasmCreateAddress).send(); - collector.assertTrue(receipt.isStatusOK()); - failMigrateDeployAddress = failMigrateCreateContract.get_deploy_address().send(); - collector.logStepPass("create contract create a new contratc successfully, contract address:" + failMigrateDeployAddress.toString()); - - // new create contract clone migrate - failMigrateDeployContract = CreateContract.load(failMigrateDeployAddress.toString(), web3j, transactionManager, provider, chainId); - receipt = failMigrateDeployContract.migrate_clone(failMigrateCreateContractAddress).send(); - collector.assertTrue(receipt.isStatusOK()); - collector.logStepPass("deploy create contract clone successfully"); - } - - } catch (Exception e) { - collector.logStepFail("contract_VIDToken failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitOverloadTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitOverloadTest.java deleted file mode 100644 index 31776a8b18..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitOverloadTest.java +++ /dev/null @@ -1,47 +0,0 @@ -package network.platon.test.wasm.contract_create; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InitOverload; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 创建合约带空init函数测试 - * @description: - * @author: hudenian - * @create: 2020/02/07 - */ -public class InitOverloadTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_create创建合约",sourcePrefix = "wasm") - public void testNewContract() { - - String name = "hudenian"; - try { - prepare(); - InitOverload initOverload = InitOverload.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = initOverload.getContractAddress(); - String transactionHash = initOverload.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("InitOverload issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + initOverload.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt transactionReceipt = initOverload.add_vector(name).send(); - collector.logStepPass("InitOverload add_vector successfully hash:" + transactionReceipt.getTransactionHash()); - - Uint8 idx = Uint8.of(0); - String chainName = initOverload.get_vector(idx).send(); - collector.assertEqual(chainName,name); - - Uint64 size = initOverload.get_vector_size().send(); - collector.logStepPass("vector size is:"+size); - } catch (Exception e) { - collector.logStepFail("InitOverloadTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitOverloadWithErrorBinaryTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitOverloadWithErrorBinaryTest.java deleted file mode 100644 index ebb1d1f2eb..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitOverloadWithErrorBinaryTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.wasm.contract_create; - -import com.alaya.protocol.exceptions.TransactionException; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InitOverload; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 使用异常编译文件部署合约 - * @description: - * @author: hudenian - * @create: 2020/02/19 - */ -public class InitOverloadWithErrorBinaryTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_create使用异常编译文件部署合约",sourcePrefix = "wasm") - public void testNewContractWithErrorBinary() { - - String name = "hudenian"; - try { - prepare(); - //截掉binary前面5位数字 - InitOverload.BINARY = InitOverload.BINARY.substring(5); - - InitOverload initOverload = InitOverload.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = initOverload.getContractAddress(); - String transactionHash = initOverload.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("InitOverload issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - - } catch (Exception e) { - if(e instanceof TransactionException){ - collector.logStepPass("合约binary文件错误,预期部署不成功"); - }else{ - collector.logStepFail("InitOverloadTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitOverloadWithStringTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitOverloadWithStringTest.java deleted file mode 100644 index 86e178801e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitOverloadWithStringTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.wasm.contract_create; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InitOverloadWithString; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 创建合约包含字符串操作 - * @description: - * @author: hudenian - * @create: 2020/02/29 - */ -public class InitOverloadWithStringTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_create创建合约包含字符串操作",sourcePrefix = "wasm") - public void testStringOpt() { - - String name = "how are you"; - String who = "lily"; - try { - prepare(); - InitOverloadWithString initOverloadWithString = InitOverloadWithString.deploy(web3j, transactionManager, provider, chainId, name).send(); - String contractAddress = initOverloadWithString.getContractAddress(); - String transactionHash = initOverloadWithString.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("InitOverloadWithString issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + initOverloadWithString.getTransactionReceipt().get().getGasUsed()); - - //获取字符串大小 - String chainStrLength = initOverloadWithString.string_length().send().value.toString(); - collector.assertEqual(String.valueOf(name.length()),chainStrLength); - - //字符串连接 - String chainSpliceStr = initOverloadWithString.string_splice(who).send().toString(); - collector.assertEqual(name+who,chainSpliceStr); - - //字符串比较 - Int8 result = initOverloadWithString.string_compare("abc","efg").send(); - collector.assertEqual("-1",result.toString()); - - //字符串查找 - Int8 location = Int8.of(initOverloadWithString.string_find("how").send().value); - collector.logStepPass("how location is:"+location); - - //字符串倒置 - TransactionReceipt tx = initOverloadWithString.string_reverse(name).send(); - String reverseStr = initOverloadWithString.get_string().send(); - collector.logStepPass("reverse Strirng is:"+reverseStr); - - - } catch (Exception e) { - collector.logStepFail("InitOverloadWithStringTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithArrayParamsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithArrayParamsTest.java deleted file mode 100644 index 76cbebda7c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithArrayParamsTest.java +++ /dev/null @@ -1,54 +0,0 @@ -package network.platon.test.wasm.contract_create; - -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InitWithArrayParams; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 创建合约init入参包含array - * @description: - * @author: hudenian - * @create: 2020/02/27 - */ -public class InitWithArrayParamsTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_create创建合约init入参包含array",sourcePrefix = "wasm") - public void testArrayParams() { - - String[] array = new String[]{"array1","array2","array3","array4","array5","array6","array7","array8","array9","array10"}; - try { - prepare(); - InitWithArrayParams initWithArrayParams = InitWithArrayParams.deploy(web3j, transactionManager, provider, chainId, array).send(); - String contractAddress = initWithArrayParams.getContractAddress(); - String transactionHash = initWithArrayParams.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("InitWithArrayParamsTest issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + initWithArrayParams.getTransactionReceipt().get().getGasUsed()); - - //查询包含array对象 - String[] chainArray = initWithArrayParams.get_array().send(); - - collector.assertEqual(chainArray[0].toString(),array[0].toString()); - collector.assertEqual(chainArray[1].toString(),array[1].toString()); - collector.assertEqual(chainArray[2].toString(),array[2].toString()); - - //查看数组大小 - Uint8 arrarySize = initWithArrayParams.get_array_size().send(); - collector.assertEqual("10",arrarySize.value.toString()); - - //查看数组是否包含指定的元素 - boolean flg = initWithArrayParams.get_array_contain_element("array1").send(); - collector.assertEqual(true,flg); - - flg = initWithArrayParams.get_array_contain_element("array01").send(); - collector.assertEqual(false,flg); - - } catch (Exception e) { - collector.logStepFail("InitWithArrayParamsTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithListParamsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithListParamsTest.java deleted file mode 100644 index bd0564cde1..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithListParamsTest.java +++ /dev/null @@ -1,127 +0,0 @@ -package network.platon.test.wasm.contract_create; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InitWithListParams; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.*; - -/** - * @title 创建合约init入参包含list - * @description: - * @author: hudenian - * @create: 2020/02/27 - */ -public class InitWithListParamsTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_create创建合约init入参包含list及嵌套测试",sourcePrefix = "wasm") - public void testMapParams() { - - //单个list - List list = new ArrayList(); - String list1 = "list1"; - list.add(list1); - - //list中要添加的元素 - String list2 = "list2"; - String list3 = "list3"; - String list4 = "list4"; - String list5 = "list5"; - String list6 = "list6"; - - List listMerge = Arrays.asList(new String[]{"list7","list8"}); - - //list嵌套list - List> listlist = new ArrayList>(); - listlist.add(list); - - try { - prepare(); - InitWithListParams initWithListParams = InitWithListParams.deploy(web3j, transactionManager, provider, chainId,list).send(); - String contractAddress = initWithListParams.getContractAddress(); - String transactionHash = initWithListParams.getTransactionReceipt().get().getTransactionHash(); - String gasUsed = initWithListParams.getTransactionReceipt().get().getGasUsed().toString(); - collector.logStepPass("InitWithListParamsTest issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash+",deploy gas used:"+gasUsed); - collector.logStepPass("deploy gas used:" + initWithListParams.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt tx = initWithListParams.set_list(list).send(); - collector.logStepPass("InitWithListParamsTest call set_list successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //查询包含list对象 - List chainList = initWithListParams.get_list().send(); - - collector.assertEqual(list.get(0).toString(),chainList.get(0).toString()); - - - //list - tx = initWithListParams.set_list_list(listlist).send(); - collector.logStepPass("InitWithListParamsTest call add_map_map successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //调用list嵌套list - List> chainlistlist = initWithListParams.get_list_list().send(); - collector.logStepPass("InitWithMapParamsTest call add_map_list successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - collector.assertEqual(listlist.get(0).get(0).toString(), chainlistlist.get(0).get(0).toString()); - - //list中添加一个元素 - tx = initWithListParams.add_list_element(list2).send(); - collector.logStepPass("InitWithListParamsTest call add_list_element successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //取出list中最后一个元素 - String chainLastElement = initWithListParams.get_list_last_element().send(); - collector.assertEqual(list2,chainLastElement); - - //取出list中第一个元素 - String chainFirstElement = initWithListParams.get_list_first_element().send(); - collector.assertEqual(list1,chainFirstElement); - - //list中添加一个元素 - tx = initWithListParams.add_list_element(list3).send(); - collector.logStepPass("InitWithListParamsTest call add_list_element successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //list中删除一个元素list2(还有list1 与list3) - tx = initWithListParams.list_remove_element(list2).send(); - collector.logStepPass("InitWithListParamsTest call list_remove_element successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //list中删除第一个元素(还剩下list3) - tx = initWithListParams.list_pop_front().send(); - collector.logStepPass("InitWithListParamsTest call list_remove_element successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //查询包含list对象 - chainList = initWithListParams.get_list().send(); - collector.assertEqual(list3,chainList.get(0).toString()); - - //list 中再添加list3 - tx = initWithListParams.add_list_element(list3).send(); - collector.logStepPass("InitWithListParamsTest call add_list_element successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //查看list的大小 - Uint listSize =initWithListParams.list_size().send(); - collector.assertEqual("2",listSize.value.toString()); - - //去掉list中的重复元素 - tx = initWithListParams.list_unique().send(); - collector.logStepPass("InitWithListParamsTest call list_unique successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //查看list的大小(理论上只有一个元素) - listSize =initWithListParams.list_size().send(); - collector.assertEqual("1",listSize.value.toString()); - - //list中添加另一个list - tx = initWithListParams.list_merge(listMerge).send(); - collector.logStepPass("InitWithListParamsTest call list_merge successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //查看list的大小(理论上只有一个元素) - listSize =initWithListParams.list_size().send(); - collector.assertEqual("3",listSize.value.toString()); - - } catch (Exception e) { - collector.logStepFail("InitWithListParamsTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithMapParamsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithMapParamsTest.java deleted file mode 100644 index 070499b129..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithMapParamsTest.java +++ /dev/null @@ -1,138 +0,0 @@ -package network.platon.test.wasm.contract_create; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InitWithMapParams; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -/** - * @title 创建合约init入参包含map - * @description: - * @author: hudenian - * @create: 2020/02/26 - */ -public class InitWithMapParamsTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_create创建合约init入参包含map及嵌套测试",sourcePrefix = "wasm") - public void testMapParams() { - - //单个map测试 - Map maps = new HashMap(); - maps.put("key1","value1"); - maps.put("key2","value2"); - - //单个list - List list = new ArrayList<>(); - list.add("list1"); - - //map嵌套map测试 - Map> inMapmap = new HashMap>(); - inMapmap.put("map1",maps); - - //map嵌套list测试 - Map> inMaplist = new HashMap>(); - inMaplist.put("keyList",list); - - //map 需要添加的key与value - String key2 = "key2"; - String value2 = "value2"; - - String key3 = "key3"; - String value3 = "value3"; - - String key4 = "key4"; - String value4 = "value4"; - - //需要被添加进map的map对象 - String key5 = "key5"; - String value5 = "value5"; - - String key6 = "key6"; - String value6 = "value6"; - - Map maps2 = new HashMap(); - maps2.put(key5,value5); - maps2.put(key6,value6); - - - try { - prepare(); - InitWithMapParams initWithMapParams = InitWithMapParams.deploy(web3j, transactionManager, provider, chainId,maps).send(); - String contractAddress = initWithMapParams.getContractAddress(); - String transactionHash = initWithMapParams.getTransactionReceipt().get().getTransactionHash(); - String gasUsed = initWithMapParams.getTransactionReceipt().get().getGasUsed().toString(); - collector.logStepPass("InitWithMapParamsTest issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash+",deploy gas used:"+gasUsed); - collector.logStepPass("deploy gas used:" + initWithMapParams.getTransactionReceipt().get().getGasUsed()); - - //查询包含map对象 - Map chainMap = initWithMapParams.get_map().send(); - - collector.assertEqual(maps.get("key1").toString(),chainMap.get("key1").toString()); - collector.assertEqual(maps.get("key2").toString(),chainMap.get("key2").toString()); - - //调用map嵌套map - TransactionReceipt tx = initWithMapParams.add_map_map(inMapmap).send(); - collector.logStepPass("InitWithMapParamsTest call add_map_map successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - Map> mapmap = initWithMapParams.get_map_map().send(); - collector.assertEqual(maps.get("key1").toString(), mapmap.get("map1").get("key1").toString()); - collector.assertEqual(maps.get("key2").toString(), mapmap.get("map1").get("key2").toString()); - - //调用map嵌套list - tx = initWithMapParams.add_map_list(inMaplist).send(); - collector.logStepPass("InitWithMapParamsTest call add_map_list successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - Map> maplist = initWithMapParams.get_map_list().send(); - collector.assertEqual(list.get(0), maplist.get("keyList").get(0)); - - //map中添加键值对 - tx = initWithMapParams.add_map_element(key3,value3).send(); - collector.logStepPass("InitWithMapParamsTest call add_map_element successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - chainMap = initWithMapParams.get_map().send(); - - collector.assertEqual(value3,chainMap.get("key3").toString()); - - //map中删除指定的key值 - tx = initWithMapParams.delete_map_element(key3).send(); - collector.logStepPass("InitWithMapParamsTest call delete_map_element successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - chainMap = initWithMapParams.get_map().send(); - - collector.assertEqual(2,chainMap.size()); - - //map中查找不存在的key - String chainValue = initWithMapParams.find_element_bykey(key4).send(); - collector.assertEqual("",chainValue); - - //map中查找存在的key - chainValue = initWithMapParams.find_element_bykey(key2).send(); - collector.assertEqual(value2,chainValue); - - //map 查看大小 - Uint8 mapSize = initWithMapParams.get_map_size().send(); - collector.logStepPass("当前map中元素个数为:"+mapSize.value); - - //map中添加另一个map对象 - tx = initWithMapParams.add_map(maps2).send(); - collector.logStepPass("InitWithMapParamsTest call add_map successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //查看新的map是否添加成功 - String chainValue6 = initWithMapParams.find_element_bykey(key6).send(); - collector.assertEqual(value6,chainValue6); - - } catch (Exception e) { - collector.logStepFail("InitWithMapParamsTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithMapTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithMapTest.java deleted file mode 100644 index 2de528b6a9..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithMapTest.java +++ /dev/null @@ -1,41 +0,0 @@ -package network.platon.test.wasm.contract_create; - -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InitWithMap; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 创建合约init包含Map测试 - * @description: - * @author: hudenian - * @create: 2020/02/16 - */ -public class InitWithMapTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_create创建合约init带Map",sourcePrefix = "wasm") - public void testNewContract() { - - String mapKey = "name"; - String mapValue = "Lily"; - - try { - prepare(); - InitWithMap initWithMap = InitWithMap.deploy(web3j, transactionManager, provider, chainId,mapKey,mapValue).send(); - String contractAddress = initWithMap.getContractAddress(); - String transactionHash = initWithMap.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("InitWithMap issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + initWithMap.getTransactionReceipt().get().getGasUsed()); - - Byte idx = 0; - String chainMapValue = initWithMap.get_map(mapKey).send(); - collector.assertEqual(chainMapValue,mapValue); - - } catch (Exception e) { - collector.logStepFail("InitWithMapTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithObjectParamsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithObjectParamsTest.java deleted file mode 100644 index 6be56ff7c1..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithObjectParamsTest.java +++ /dev/null @@ -1,42 +0,0 @@ -package network.platon.test.wasm.contract_create; - -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InitWithObjectParams; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 创建合约init带一个入参对象测试 - * @description: - * @author: hudenian - * @create: 2020/02/07 - */ -public class InitWithObjectParamsTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_create创建合约init带一个入参",sourcePrefix = "wasm") - public void testNewContract() { - - String body = "myBody"; - String end = "myEnd"; - try { - prepare(); - InitWithObjectParams.My_message myMessage = new InitWithObjectParams.My_message(); - myMessage.body = body; - myMessage.end = end; - InitWithObjectParams initWithObjectParams = InitWithObjectParams.deploy(web3j, transactionManager, provider, chainId,myMessage).send(); - String contractAddress = initWithObjectParams.getContractAddress(); - String transactionHash = initWithObjectParams.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("InitWithObjectParams issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + initWithObjectParams.getTransactionReceipt().get().getGasUsed()); - - InitWithObjectParams.My_message[] messages = initWithObjectParams.get_message("").send(); - collector.assertEqual(messages[0].body,body); - - } catch (Exception e) { - collector.logStepFail("InitWithObjectParamsTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithParamsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithParamsTest.java deleted file mode 100644 index f5304ecf5c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithParamsTest.java +++ /dev/null @@ -1,45 +0,0 @@ -package network.platon.test.wasm.contract_create; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InitWithParams; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 创建合约init带一个入参测试 - * @description: - * @author: hudenian - * @create: 2020/02/07 - */ -public class InitWithParamsTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_create创建合约init带一个入参",sourcePrefix = "wasm") - public void testNewContract() { - - String initName = "hudenian"; - String addName = "hudenian1"; - try { - prepare(); - InitWithParams initWithParams = InitWithParams.deploy(web3j, transactionManager, provider, chainId,initName).send(); - String contractAddress = initWithParams.getContractAddress(); - String transactionHash = initWithParams.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("initWithParams issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + initWithParams.getTransactionReceipt().get().getGasUsed()); - - InitWithParams.Person person = new InitWithParams.Person(); - person.name=addName; - TransactionReceipt transactionReceipt = initWithParams.add_person(person).send(); - collector.logStepPass("initWithParams add_vector successfully hash:" + transactionReceipt.getTransactionHash()); - - InitWithParams.Person[] peoples = initWithParams.get_person().send(); - collector.assertEqual(peoples[1].name,addName); - - } catch (Exception e) { - collector.logStepFail("initWithParamsTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithSetParamsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithSetParamsTest.java deleted file mode 100644 index 3ae5b7bc82..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithSetParamsTest.java +++ /dev/null @@ -1,56 +0,0 @@ -package network.platon.test.wasm.contract_create; - -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InitWithSetParams; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.HashSet; -import java.util.Iterator; -import java.util.Set; - -/** - * @title 创建合约init入参包含set - * @description: - * @author: hudenian - * @create: 2020/02/26 - */ -public class InitWithSetParamsTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_create创建合约init入参包含set",sourcePrefix = "wasm") - public void testMapParams() { - - Set set = new HashSet(); - set.add("setOne"); - set.add("setTwo"); - try { - prepare(); - InitWithSetParams initWithSetParams = InitWithSetParams.deploy(web3j, transactionManager, provider, chainId,set).send(); - String contractAddress = initWithSetParams.getContractAddress(); - String transactionHash = initWithSetParams.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("InitWithSetParamsTest issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + initWithSetParams.getTransactionReceipt().get().getGasUsed()); - - //查询包含map对象 - Set chainSet = initWithSetParams.get_set().send(); - Iterator it =chainSet.iterator(); - String chainValue = ""; - int i =0; - if(it.hasNext()){ - chainValue =it.next().toString(); - if(i == 0){ - collector.assertEqual("setOne",chainValue); - }else if(i==1){ - collector.assertEqual("setTwo",chainValue); - } - i++; - } - - } catch (Exception e) { - collector.logStepFail("InitWithSetParamsTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithStructTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithStructTest.java deleted file mode 100644 index 52c2eafbff..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithStructTest.java +++ /dev/null @@ -1,45 +0,0 @@ -package network.platon.test.wasm.contract_create; - -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InitWithStruct; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 创建合约init带一个入参结构体测试 - * @description: - * @author: hudenian - * @create: 2020/02/07 - */ -public class InitWithStructTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_create创建合约init带一个入参",sourcePrefix = "wasm") - public void testNewContract() { - - String name = "myName"; - Uint64 age = Uint64.of(12L); - try { - prepare(); - InitWithStruct initWithStruct = InitWithStruct.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = initWithStruct.getContractAddress(); - String transactionHash = initWithStruct.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("InitWithStructTest issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + initWithStruct.getTransactionReceipt().get().getGasUsed()); - - transactionHash =initWithStruct.add_vector(name,age).send().getTransactionHash(); - collector.logStepPass("InitWithStructTest invoke successfully hash:" + transactionHash); - - Uint8 idx = Uint8.of(0); - String chainName = initWithStruct.get_vector(idx).send(); - collector.assertEqual(chainName,name); - - } catch (Exception e) { - collector.logStepFail("InitWithStructTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithVectorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithVectorTest.java deleted file mode 100644 index 75b12e3e04..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_create/InitWithVectorTest.java +++ /dev/null @@ -1,105 +0,0 @@ -package network.platon.test.wasm.contract_create; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint16; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InitWithVector; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 创建合约init包含vector测试 - * @description: - * @author: hudenian - * @create: 2020/02/16 - */ -public class InitWithVectorTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_create创建合约init带vector",sourcePrefix = "wasm") - public void testNewContract() { - - Uint16 age = Uint16.of(20); - - //vector中要添加的元素 - String vector1 = "vector1"; - String vector2 = "vector2"; - String vector3 = "vector3"; - String vector4 = "vector4"; - String vector5 = "vector5"; - - try { - prepare(); - InitWithVector initWithVector = InitWithVector.deploy(web3j, transactionManager, provider, chainId,age).send(); - String contractAddress = initWithVector.getContractAddress(); - String transactionHash = initWithVector.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("InitWithVector issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + initWithVector.getTransactionReceipt().get().getGasUsed()); - - Uint8 idx = Uint8.of(0); - Uint64 chainAge = initWithVector.get_vector(idx).send(); - collector.assertEqual(chainAge.value,age.value); - - //vctor添加第一个元素 - TransactionReceipt tx = initWithVector.vector_push_back_element(vector1).send(); - collector.logStepPass("InitWithVectorTest call vector_push_back_element successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //vctor添加第二、三个元素 - tx = initWithVector.vector_push_back_element(vector2).send(); - collector.logStepPass("InitWithVectorTest call vector_push_back_element successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - tx = initWithVector.vector_push_back_element(vector3).send(); - collector.logStepPass("InitWithVectorTest call vector_push_back_element successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //查看vector中元素个数 - Uint8 vectorSize = initWithVector.get_strvector_size().send(); - collector.assertEqual("3",vectorSize.value.toString()); - - //获取第二个元素(下标为1) - String chainElement = initWithVector.get_vector_element_by_position(Uint8.of("1")).send(); - collector.assertEqual(vector2,chainElement); - - //去掉最后一个元素 - tx = initWithVector.vector_pop_back_element().send(); - collector.logStepPass("InitWithVectorTest call vector_pop_back_element successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //查看vector中元素个数 - vectorSize = initWithVector.get_strvector_size().send(); - collector.assertEqual("2",vectorSize.value.toString()); - - //在指定位置添加元素 - tx = initWithVector.vector_insert_element(vector4,Uint8.of("2")).send(); - collector.logStepPass("InitWithVectorTest call vector_insert_element successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //查看vector中元素个数 - vectorSize = initWithVector.get_strvector_size().send(); - collector.assertEqual("3",vectorSize.value.toString()); - - //在指定位置添加元素(下标超过数组大小,则插入到最后面) - tx = initWithVector.vector_insert_element(vector4,Uint8.of("6")).send(); - collector.logStepPass("InitWithVectorTest call vector_insert_element successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //查看vector中元素个数 - vectorSize = initWithVector.get_strvector_size().send(); - collector.assertEqual("4",vectorSize.value.toString()); - - //验证for循环 - tx = initWithVector.vectorFor(new String[]{vector1,vector2,vector3,vector4,vector5}).send(); - collector.logStepPass("InitWithVectorTest call vectorFor successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //验证switch语句 - tx = initWithVector.vectorCase(new String[]{vector1,vector2,vector3,vector4,vector5}).send(); - collector.logStepPass("InitWithVectorTest call vectorCase successfully.contractAddress:" + contractAddress + ", hash:" + tx.getTransactionHash()); - - //查询switch调用结果 - String caseResult = initWithVector.get_vectorCase_result().send(); - collector.assertEqual("5",caseResult); - - } catch (Exception e) { - collector.logStepFail("InitWithVectorTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallBalanceTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallBalanceTest.java deleted file mode 100644 index 37bcaf80c5..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallBalanceTest.java +++ /dev/null @@ -1,87 +0,0 @@ -package network.platon.test.wasm.contract_cross_call; - -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractCrossCallStorageString; -import network.platon.contracts.wasm.ContractStorageString; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigDecimal; -import java.math.BigInteger; - -public class ContractCrossCallBalanceTest extends WASMContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_cross_call_balance",sourcePrefix = "wasm") - public void testCrossCallContract() { - - try { - prepare(); - - // deploy the target contract which the name is `storge_str`, first - ContractStorageString strc = ContractStorageString.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy storge_str contract:" + strc.getTransactionReceipt().get().getGasUsed()); - - String strcAddr = strc.getContractAddress(); - String strcTxHash = strc.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("storge_str deployed sucessfully, contractAddress:" + strcAddr + ", txHash:" + strcTxHash); - - - // deploy the cross_call_storage_str contract second - ContractCrossCallStorageString crossCall = ContractCrossCallStorageString.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy cross_call_storage_str contract:" + crossCall.getTransactionReceipt().get().getGasUsed()); - - String crossCallAddr = crossCall.getContractAddress(); - String crossCallTxHash = crossCall.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("cross_call_storage_str deployed sucessfully, contractAddress:" + crossCallAddr + ", txHash:" + crossCallTxHash); - - - // check contract balance 1st - BigInteger strBalance = web3j.platonGetBalance(strcAddr, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("check contract balance 1st: the storage_str contract balance is:" + strBalance.toString()); - collector.assertEqual(strBalance.longValue(), 0l); - - BigInteger crosscallBalance = web3j.platonGetBalance(crossCallAddr, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("check contract balance 1st: the cross_call_balance contract balance is:" + crosscallBalance.toString()); - collector.assertEqual(crosscallBalance.longValue(), 0l); - - String transferMoneyStr = "1000"; - long transferMoneyL = Long.valueOf(transferMoneyStr).longValue(); - // transfer some balance to crosscall contract - Transfer transfer = new Transfer(web3j, transactionManager); - transfer.sendFunds(crossCallAddr, new BigDecimal(transferMoneyStr), Convert.Unit.VON).send(); - - crosscallBalance = web3j.platonGetBalance(crossCallAddr, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("after transfer balance to crosscall contract: the cross_call_balance contract balance is:" + crosscallBalance.toString()); - collector.assertEqual(crosscallBalance.longValue(), transferMoneyL); - - - long value = 100l; - - // cross call contract start - TransactionReceipt receipt = crossCall.call_set_string(strcAddr, "", Uint64.of(value), Uint64.of(60000000l)).send(); - collector.logStepPass("cross_call_storage_str call_add_message successfully txHash:" + receipt.getTransactionHash()); - - - // check contract balance 2nd - strBalance = web3j.platonGetBalance(strcAddr, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("check contract balance 2nd: the storage_str contract balance is:" + strBalance.toString()); - collector.assertEqual(strBalance.longValue(), value); - - crosscallBalance = web3j.platonGetBalance(crossCallAddr, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("check contract balance 2nd: the cross_call_balance contract balance is:" + crosscallBalance.toString()); - collector.assertEqual(crosscallBalance.longValue(), transferMoneyL-value); - - } catch (Exception e) { - collector.logStepFail("Failed to call cross_call_storage_str Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallFlagByRetTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallFlagByRetTest.java deleted file mode 100644 index 9a59dc21ec..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallFlagByRetTest.java +++ /dev/null @@ -1,131 +0,0 @@ -package network.platon.test.wasm.contract_cross_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.*; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -public class ContractCrossCallFlagByRetTest extends WASMContractPrepareTest { - - // 跨合约调用有返回值的合约 - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_cross_call_flag_ByRet",sourcePrefix = "wasm") - public void testCrossCallContractByRet() { - - try { - prepare(); - - // deploy the target contract which the name is `receiver_byret`, first - ContractReceiverByRet receiver = ContractReceiverByRet.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy receiver_byret contract:" + receiver.getTransactionReceipt().get().getGasUsed()); - - String receiverAddr = receiver.getContractAddress(); - String receiverTxHash = receiver.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("receiver_byret deployed sucessfully, contractAddress:" + receiverAddr + ", txHash:" + receiverTxHash); - - - // deploy the cross_caller_byret contract second - ContractCallerByRet caller = ContractCallerByRet.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy cross_caller_byret contract:" + caller.getTransactionReceipt().get().getGasUsed()); - - String callerAddr = caller.getContractAddress(); - String callerTxHash = caller.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("cross_caller_byret deployed sucessfully, contractAddress:" + callerAddr + ", txHash:" + callerTxHash); - - - // 给予receiver的gas足够时 - TransactionReceipt receipt = caller.callFeed(receiverAddr, Uint64.of(508651l)).send(); - collector.logStepPass("cross_caller_byret callFeed by gas 98651l successfully txHash:" + receipt.getTransactionHash()); - - // 检查下调用receiver 成功与否 - Uint64 status = caller.get_status().send(); - collector.assertEqual(status.getValue().longValue(), 0l); - - // 给予receiver的gas 不够时 - receipt = caller.callFeed(receiverAddr, Uint64.of(10000l)).send(); - collector.logStepPass("cross_caller_byret callFeed by gas 10000 successfully txHash:" + receipt.getTransactionHash()); - - // 检查下调用receiver 成功与否 - status = caller.get_status().send(); - collector.assertEqual(status.getValue().longValue(), 1l); - - - // 直接给予 0gas, 就会使用默认的 剩余gas - receipt = caller.callFeed(receiverAddr, Uint64.of(0l)).send(); - collector.logStepPass("cross_caller_byret callFeed by gas 0 successfully txHash:" + receipt.getTransactionHash()); - - // 检查下调用receiver 成功与否 - status = caller.get_status().send(); - collector.assertEqual(status.getValue().longValue(), 0l); - - - } catch (Exception e) { - collector.logStepFail("Failed to call cross_caller_byret Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - - - // 跨合约调用无返回值的合约 - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_cross_call_flag_ByNoRet",sourcePrefix = "wasm") - public void testCrossCallContractByNoRet() { - - try { - prepare(); - - // deploy the target contract which the name is `receiver_noret`, first - ContractReceiverNoRet receiver = ContractReceiverNoRet.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy receiver_noret contract:" + receiver.getTransactionReceipt().get().getGasUsed()); - - String receiverAddr = receiver.getContractAddress(); - String receiverTxHash = receiver.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("receiver_noret deployed sucessfully, contractAddress:" + receiverAddr + ", txHash:" + receiverTxHash); - - - // deploy the cross_caller_noret contract second - ContractCallerNoRet caller = ContractCallerNoRet.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy cross_caller_noret contract:" + caller.getTransactionReceipt().get().getGasUsed()); - - String callerAddr = caller.getContractAddress(); - String callerTxHash = caller.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("cross_caller_noret deployed sucessfully, contractAddress:" + callerAddr + ", txHash:" + callerTxHash); - - - // 给予receiver的gas足够时 - TransactionReceipt receipt = caller.callFeed(receiverAddr, Uint64.of(98651l)).send(); - collector.logStepPass("cross_caller_noret callFeed by gas 98651l successfully txHash:" + receipt.getTransactionHash()); - - // 检查下调用receiver 成功与否 - Uint64 status = caller.get_status().send(); - collector.assertEqual(status.getValue().longValue(), 0l); - - // 给予receiver的gas 不够时 - receipt = caller.callFeed(receiverAddr, Uint64.of(10000l)).send(); - collector.logStepPass("cross_caller_noret callFeed by gas 10000 successfully txHash:" + receipt.getTransactionHash()); - - // 检查下调用receiver 成功与否 - status = caller.get_status().send(); - collector.assertEqual(status.getValue().longValue(), 1l); - - - // 直接给予 0gas, 就会使用默认的 剩余gas - receipt = caller.callFeed(receiverAddr, Uint64.of(0l)).send(); - collector.logStepPass("cross_caller_noret callFeed by gas 0 successfully txHash:" + receipt.getTransactionHash()); - - // 检查下调用receiver 成功与否 - status = caller.get_status().send(); - collector.assertEqual(status.getValue().longValue(), 0l); - - } catch (Exception e) { - collector.logStepFail("Failed to call cross_caller_noret Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallOriginTypeTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallOriginTypeTest.java deleted file mode 100644 index 09d3c74f5f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallOriginTypeTest.java +++ /dev/null @@ -1,76 +0,0 @@ -package network.platon.test.wasm.contract_cross_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.*; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; -import org.junit.Test; - -public class ContractCrossCallOriginTypeTest extends WASMContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_cross_call_origin_type",sourcePrefix = "wasm") - public void testCrossCallContract() { - - try { - prepare(); - - // deploy the target contract which the name is `storge_origin`, first - ContractOriginType origin = ContractOriginType.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy storge_origin contract:" + origin.getTransactionReceipt().get().getGasUsed()); - - - String originAddr = origin.getContractAddress(); - String originTxHash = origin.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("storge_str deployed sucessfully, contractAddress:" + originAddr + ", txHash:" + originTxHash); - - - // deploy the cross_call_origin_type contract second - ContractCrossCallOriginType crossCall = ContractCrossCallOriginType.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy cross_call_origin_type contract:" + crossCall.getTransactionReceipt().get().getGasUsed()); - - - String crossCallAddr = crossCall.getContractAddress(); - String crossCallTxHash = crossCall.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("cross_call_origin_type deployed sucessfully, contractAddress:" + crossCallAddr + ", txHash:" + crossCallTxHash); - - - // check vec size 1st - Uint64 originVecSize = origin.get_vector_size().send(); - collector.logStepPass("the msg count in arr of storge_origin contract:" + originVecSize); - collector.assertEqual(originVecSize.getValue().longValue(), 0l); - - Uint64 crossCallVecSize = crossCall.get_vector_size().send(); - collector.logStepPass("the msg count in arr of cross_call_origin_type contract:" + crossCallVecSize); - collector.assertEqual(crossCallVecSize.getValue().longValue(), 0l); - - // delegate call contract start - ContractCrossCallOriginType.My_message myMessage = new ContractCrossCallOriginType.My_message(); - myMessage.baseClass = new ContractCrossCallOriginType.Message(); - myMessage.baseClass.head = "Gavin Head"; - myMessage.body = "Gavin Body"; - myMessage.end = "Gavin End"; - - // cross call contract start - TransactionReceipt receipt = crossCall.cross_call_add_message(originAddr, myMessage, Uint64.of(0), Uint64.of(60000000l)).send(); - collector.logStepPass("cross_call_origin_type call_add_message successfully txHash:" + receipt.getTransactionHash()); - - - // check arr size 2nd - originVecSize = origin.get_vector_size().send(); - collector.logStepPass("the msg count in arr of storge_origin contract:" + originVecSize); - collector.assertEqual(originVecSize.getValue().longValue(), 1l); - - crossCallVecSize = crossCall.get_vector_size().send(); - collector.logStepPass("the msg count in arr of cross_call_origin_type contract:" + crossCallVecSize); - collector.assertEqual(crossCallVecSize.getValue().longValue(), 0l); - - } catch (Exception e) { - collector.logStepFail("Failed to call cross_call_origin_type Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallPPOSTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallPPOSTest.java deleted file mode 100644 index 9bc3e0860b..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallPPOSTest.java +++ /dev/null @@ -1,391 +0,0 @@ -package network.platon.test.wasm.contract_cross_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.google.gson.Gson; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractCallPPOS; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -public class ContractCrossCallPPOSTest extends WASMContractPrepareTest { - - // 锁仓合约 -// private String restrictingContractAddr = "lax1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqp3yp7hw"; - private String restrictingContractAddr = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpd3er4y"; - -// private String stakingContractAddr = "lax1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzlh5ge3"; - private String stakingContractAddr = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzrzv4mm"; - -// private String slashingContractAddr = "lax1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqyrchd9x"; - private String slashingContractAddr = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqyld0s8v"; - -// private String govContractAddr = "lax1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq97wrcc5"; - private String govContractAddr = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq9zmm967"; - -// private String delegateRewardPoolAddr = "lax1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqxsakwkt"; - private String delegateRewardPoolAddr = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqxvgwn5p"; - - - private Gson gson = new Gson(); - - // {"Code":305001,"Ret": xxx} - class pposResult { - public int Code; - public Object Ret; - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_cross_call_ppos_RestrictingPlan",sourcePrefix = "wasm") - public void testCrossCallPPOS4Restricting() { - try { - - prepare(); - - // 测试跨合约调 ppos合约 - - - // 部署 - ContractCallPPOS ppos = ContractCallPPOS.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy cross_call_ppos:" + ppos.getTransactionReceipt().get().getGasUsed()); - - /** - * 查询 账户的锁仓计划 - * - * account: 0xc9E1C2B330Cf7e759F2493c5C754b34d98B07f93 - * - * - */ - - String getRestrictingInfoInput = "0xda838210049594c9e1c2b330cf7e759f2493c5c754b34d98b07f93"; - String getRestrictingInfoHexStr = ppos.cross_call_ppos_query(restrictingContractAddr, getRestrictingInfoInput, Uint64.of(0), Uint64.of(60000000l)).send(); - byte[] getRestrictingInfoByte = DataChangeUtil.hexToByteArray(getRestrictingInfoHexStr); - String getRestrictingInfoStr = new String(getRestrictingInfoByte); - collector.logStepPass("获取锁仓计划:" + getRestrictingInfoStr); - pposResult res = gson.fromJson(getRestrictingInfoStr, pposResult.class); - int firstCode = 1; - if( res != null){ - firstCode = res.Code; - } - - - - /** - * 锁仓 - * - * account: 0xc9E1C2B330Cf7e759F2493c5C754b34d98B07f93 - * plans: [{"epoch":1,"amount":1000000000000000000},{"epoch":2,"amount":1000000000000000000},{"epoch":3,"amount":1000000000000000000},{"epoch":4,"amount":1000000000000000000},{"epoch":5,"amount":1000000000000000000}] - * - */ - String createRestrictingPlanInput = "0xf85483820fa09594c9e1c2b330cf7e759f2493c5c754b34d98b07f93b838f7ca01880de0b6b3a7640000ca02880de0b6b3a7640000ca03880de0b6b3a7640000ca04880de0b6b3a7640000ca05880de0b6b3a7640000"; - - TransactionReceipt createRestrictingPlanReceipt = ppos.cross_call_ppos_send(restrictingContractAddr, createRestrictingPlanInput, Uint64.of(0), Uint64.of(60000000l)).send(); - - String createRestrictingPlanDataHex = createRestrictingPlanReceipt.getLogs().get(0).getData(); - String createRestrictingPlanDataStr = DataChangeUtil.decodeSystemContractRlp(createRestrictingPlanDataHex, chainId); - String createRestrictingPlanExpectData = "304004"; - - collector.logStepPass("cross_call_ppos createRestrictingPlan successfully txHash:" + createRestrictingPlanReceipt.getTransactionHash()); - collector.assertEqual(createRestrictingPlanDataStr, createRestrictingPlanExpectData); - - - /** - * 查询 账户的锁仓计划 - * - * account: 0xc9E1C2B330Cf7e759F2493c5C754b34d98B07f93 - * - * - */ - - getRestrictingInfoInput = "0xda838210049594c9e1c2b330cf7e759f2493c5c754b34d98b07f93"; - getRestrictingInfoHexStr = ppos.cross_call_ppos_query(restrictingContractAddr, getRestrictingInfoInput, Uint64.of(0), Uint64.of(60000000l)).send(); - getRestrictingInfoByte = DataChangeUtil.hexToByteArray(getRestrictingInfoHexStr); - getRestrictingInfoStr = new String(getRestrictingInfoByte); - collector.logStepPass("获取锁仓计划:" + getRestrictingInfoStr); - res = gson.fromJson(getRestrictingInfoStr, pposResult.class); - collector.assertEqual(res.Code, firstCode); - - - } catch (Exception e) { - collector.logStepFail("Failed to call cross_call_ppos Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_cross_call_ppos_Staking",sourcePrefix = "wasm") - public void testCrossCallPPOS4Staking() { - try { - - prepare(); - - // 测试跨合约调 ppos合约 - - - // 部署 - ContractCallPPOS ppos = ContractCallPPOS.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy cross_call_ppos:" + ppos.getTransactionReceipt().get().getGasUsed()); - - /** - * 质押 - * - * typ: 0 - * benefitAddress: 0xd87E10F8efd2C32f5e88b7C279953aEF6EE58902 - * nodeId: ced880d4769331f47af07a8d1b79de1e40c95a37ea1890bb9d3f0da8349e1a7c0ea4cadbb9c5bf185b051061eef8e5eadca251c24e1db1d9faf0fb24cbd06f9a - * externalId: xssssddddffffggggg - * nodeName: Gavin, China - * website: https://www.Gavin.network - * details: Gavin super node - * amount: 1000000000000000000000000 - * rewardPer: 5000 - * programVersion: 65536 - * programVersionSign: 0xa6b8f5e2de519991b567b7c9af9cdf6adb331be5c4b79d26ba0dcd1fb2fbab7a276a36944765997f4d18d6135b515d9de7cceb2d7af4338f4fedb6acdc050f8001 - * blsPubKey: e5c3fcd6ce33c06aae22113977396c295728b8c01e0bc9188d2f3ffe52ea97b465639731f3cd4956a26e3e35f96e2a10646f28a352c6453be54dda05b703c31f0fbda3abc55a75151788338917f5a60b26f92bd15cdaf0dc00779a62056f3a00 - * blsProof: 46e9c92915ad2b423e9eea33482d2615f6a17a15a6fa3b99e3e83bc394700d14c7ace638b34be70e6903724ca217b3cf4ff85db6f38e83f06de95de2c0370916 - */ - String createStakingInput = "0xf901b1838203e881809594d87e10f8efd2c32f5e88b7c279953aef6ee58902b842b840ced880d4769331f47af07a8d1b79de1e40c95a37ea1890bb9d3f0da8349e1a7c0ea4cadbb9c5bf185b051061eef8e5eadca251c24e1db1d9faf0fb24cbd06f9a93927873737373646464646666666667676767678d8c476176696e2c204368696e619a9968747470733a2f2f7777772e476176696e2e6e6574776f726b9190476176696e207375706572206e6f64658b8ad3c21bcecceda1000000838213888483010000b843b841a6b8f5e2de519991b567b7c9af9cdf6adb331be5c4b79d26ba0dcd1fb2fbab7a276a36944765997f4d18d6135b515d9de7cceb2d7af4338f4fedb6acdc050f8001b862b860e5c3fcd6ce33c06aae22113977396c295728b8c01e0bc9188d2f3ffe52ea97b465639731f3cd4956a26e3e35f96e2a10646f28a352c6453be54dda05b703c31f0fbda3abc55a75151788338917f5a60b26f92bd15cdaf0dc00779a62056f3a00b842b84046e9c92915ad2b423e9eea33482d2615f6a17a15a6fa3b99e3e83bc394700d14c7ace638b34be70e6903724ca217b3cf4ff85db6f38e83f06de95de2c0370916"; - - TransactionReceipt createStakingReceipt = ppos.cross_call_ppos_send(stakingContractAddr, createStakingInput, Uint64.of(0), Uint64.of(60000000l)).send(); - - String createStakingDataHex = createStakingReceipt.getLogs().get(0).getData(); - String createStakingDataStr = DataChangeUtil.decodeSystemContractRlp(createStakingDataHex, chainId); - String createStakingExpectData = "301111"; - - collector.logStepPass("cross_call_ppos createStaking successfully txHash:" + createStakingReceipt.getTransactionHash()); - collector.assertEqual(createStakingDataStr, createStakingExpectData); - - - /** - * 查询 候选人详情 - * - * nodeId: ced880d4769331f47af07a8d1b79de1e40c95a37ea1890bb9d3f0da8349e1a7c0ea4cadbb9c5bf185b051061eef8e5eadca251c24e1db1d9faf0fb24cbd06f9a - * - * - */ - - String getCandidateInfoInput = "0xf84883820451b842b840ced880d4769331f47af07a8d1b79de1e40c95a37ea1890bb9d3f0da8349e1a7c0ea4cadbb9c5bf185b051061eef8e5eadca251c24e1db1d9faf0fb24cbd06f9a"; - String getCandidateInfoHexStr = ppos.cross_call_ppos_query(stakingContractAddr, getCandidateInfoInput, Uint64.of(0), Uint64.of(60000000l)).send(); - byte[] getCandidateInfoByte = DataChangeUtil.hexToByteArray(getCandidateInfoHexStr); - String getCandidateInfoStr = new String(getCandidateInfoByte); - pposResult res = gson.fromJson(getCandidateInfoStr, pposResult.class); - collector.assertEqual(res.Code, 301204, "查询候选人详情 result == expect res: {\"Code\":301204,\"Ret\":\"Query candidate info failed:Candidate info is not found\"}"); - - } catch (Exception e) { - collector.logStepFail("Failed to call cross_call_ppos Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_cross_call_ppos_Slashing",sourcePrefix = "wasm") - public void testCrossCallPPOS4Slashing() { - try { - - prepare(); - - // 测试跨合约调 ppos合约 - - - // 部署 - ContractCallPPOS ppos = ContractCallPPOS.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy cross_call_ppos:" + ppos.getTransactionReceipt().get().getGasUsed()); - - /** - * 举报 - * - * dupType: 1 - * data: { - * "prepareA": { - * "epoch": 1, - * "viewNumber": 1, - * "blockHash": "0xbb6d4b83af8667929a9cb4918bbf790a97bb136775353765388d0add3437cde6", - * "blockNumber": 1, - * "blockIndex": 1, - * "blockData": "0x45b20c5ba595be254943aa57cc80562e84f1fb3bafbf4a414e30570c93a39579", - * "validateNode": { - * "index": 0, - * "address": "0x195667cdefcad94c521bdff0bf85079761e0f8f3", - * "nodeId": "51c0559c065400151377d71acd7a17282a7c8abcfefdb11992dcecafde15e100b8e31e1a5e74834a04792d016f166c80b9923423fe280570e8131debf591d483", - * "blsPubKey": "752fe419bbdc2d2222009e450f2932657bbc2370028d396ba556a49439fe1cc11903354dcb6dac552a124e0b3db0d90edcd334d7aabda0c3f1ade12ca22372f876212ac456d549dbbd04d2c8c8fb3e33760215e114b4d60313c142f7b8bbfd87" - * }, - * "signature": "0x36015fee15253487e8125b86505377d8540b1a95d1a6b13f714baa55b12bd06ec7d5755a98230cdc88858470afa8cb0000000000000000000000000000000000" - * }, - * "prepareB": { - * "epoch": 1, - * "viewNumber": 1, - * "blockHash": "0xf46c45f7ebb4a999dd030b9f799198b785654293dbe41aa7e909223af0e8c4ba", - * "blockNumber": 1, - * "blockIndex": 1, - * "blockData": "0xd630e96d127f55319392f20d4fd917e3e7cba19ad366c031b9dff05e056d9420", - * "validateNode": { - * "index": 0, - * "address": "0x195667cdefcad94c521bdff0bf85079761e0f8f3", - * "nodeId": "51c0559c065400151377d71acd7a17282a7c8abcfefdb11992dcecafde15e100b8e31e1a5e74834a04792d016f166c80b9923423fe280570e8131debf591d483", - * "blsPubKey": "752fe419bbdc2d2222009e450f2932657bbc2370028d396ba556a49439fe1cc11903354dcb6dac552a124e0b3db0d90edcd334d7aabda0c3f1ade12ca22372f876212ac456d549dbbd04d2c8c8fb3e33760215e114b4d60313c142f7b8bbfd87" - * }, - * "signature": "0x783892b9b766f9f4c2a1d45b1fd53ca9ea56a82e38a998939edc17bc7fd756267d3c145c03bc6c1412302cf590645d8200000000000000000000000000000000" - * } - * } - */ - String reportDuplicateSignInput = "0xf907e683820bb801b907deb907db7b0a20202020202020202020227072657061726541223a207b0a20202020202020202020202265706f6368223a20312c0a202020202020202020202022766965774e756d626572223a20312c0a202020202020202020202022626c6f636b48617368223a2022307862623664346238336166383636373932396139636234393138626266373930613937626231333637373533353337363533383864306164643334333763646536222c0a202020202020202020202022626c6f636b4e756d626572223a20312c0a202020202020202020202022626c6f636b496e646578223a20312c0a202020202020202020202022626c6f636b44617461223a2022307834356232306335626135393562653235343934336161353763633830353632653834663166623362616662663461343134653330353730633933613339353739222c0a20202020202020202020202276616c69646174654e6f6465223a207b0a20202020202020202020202022696e646578223a20302c0a2020202020202020202020202261646472657373223a2022307831393536363763646566636164393463353231626466663062663835303739373631653066386633222c0a202020202020202020202020226e6f64654964223a20223531633035353963303635343030313531333737643731616364376131373238326137633861626366656664623131393932646365636166646531356531303062386533316531613565373438333461303437393264303136663136366338306239393233343233666532383035373065383133316465626635393164343833222c0a20202020202020202020202022626c735075624b6579223a2022373532666534313962626463326432323232303039653435306632393332363537626263323337303032386433393662613535366134393433396665316363313139303333353464636236646163353532613132346530623364623064393065646364333334643761616264613063336631616465313263613232333732663837363231326163343536643534396462626430346432633863386662336533333736303231356531313462346436303331336331343266376238626266643837220a20202020202020202020207d2c0a2020202020202020202020227369676e6174757265223a202230783336303135666565313532353334383765383132356238363530353337376438353430623161393564316136623133663731346261613535623132626430366563376435373535613938323330636463383838353834373061666138636230303030303030303030303030303030303030303030303030303030303030303030220a202020202020202020207d2c0a20202020202020202020227072657061726542223a207b0a20202020202020202020202265706f6368223a20312c0a202020202020202020202022766965774e756d626572223a20312c0a202020202020202020202022626c6f636b48617368223a2022307866343663343566376562623461393939646430333062396637393931393862373835363534323933646265343161613765393039323233616630653863346261222c0a202020202020202020202022626c6f636b4e756d626572223a20312c0a202020202020202020202022626c6f636b496e646578223a20312c0a202020202020202020202022626c6f636b44617461223a2022307864363330653936643132376635353331393339326632306434666439313765336537636261313961643336366330333162396466663035653035366439343230222c0a20202020202020202020202276616c69646174654e6f6465223a207b0a20202020202020202020202022696e646578223a20302c0a2020202020202020202020202261646472657373223a2022307831393536363763646566636164393463353231626466663062663835303739373631653066386633222c0a202020202020202020202020226e6f64654964223a20223531633035353963303635343030313531333737643731616364376131373238326137633861626366656664623131393932646365636166646531356531303062386533316531613565373438333461303437393264303136663136366338306239393233343233666532383035373065383133316465626635393164343833222c0a20202020202020202020202022626c735075624b6579223a2022373532666534313962626463326432323232303039653435306632393332363537626263323337303032386433393662613535366134393433396665316363313139303333353464636236646163353532613132346530623364623064393065646364333334643761616264613063336631616465313263613232333732663837363231326163343536643534396462626430346432633863386662336533333736303231356531313462346436303331336331343266376238626266643837220a20202020202020202020207d2c0a2020202020202020202020227369676e6174757265223a202230783738333839326239623736366639663463326131643435623166643533636139656135366138326533386139393839333965646331376263376664373536323637643363313435633033626336633134313233303263663539303634356438323030303030303030303030303030303030303030303030303030303030303030220a202020202020202020207d0a2020202020202020207d"; - - TransactionReceipt reportDuplicateSignReceipt = ppos.cross_call_ppos_send(slashingContractAddr, reportDuplicateSignInput, Uint64.of(0), Uint64.of(60000000l)).send(); - - String reportDuplicateSignDataHex = reportDuplicateSignReceipt.getLogs().get(0).getData(); - String reportDuplicateSignDataStr = DataChangeUtil.decodeSystemContractRlp(reportDuplicateSignDataHex, chainId); - String reportDuplicateSignExpectData = "0"; - boolean expectFlag = reportDuplicateSignDataStr.equals(reportDuplicateSignExpectData); - - collector.logStepPass("cross_call_ppos reportDuplicateSign successfully txHash:" + reportDuplicateSignReceipt.getTransactionHash()); - collector.assertEqual(expectFlag, false); - - - /** - * 查询 节点是否有多签过 - * - * dupType: 1 - * addr: 0x9e3e0f0f366b26b965f3aa3ed67603fb480b1257 - * blockNumber: 1 - * - * 0 - */ - - String checkDuplicateSignInput = "0xdc83820bb90195949e3e0f0f366b26b965f3aa3ed67603fb480b125701"; - String checkDuplicateSignHexStr = ppos.cross_call_ppos_query(slashingContractAddr, checkDuplicateSignInput, Uint64.of(0), Uint64.of(60000000l)).send(); - byte[] checkDuplicateSignByte = DataChangeUtil.hexToByteArray(checkDuplicateSignHexStr); - String checkDuplicateSignStr = new String(checkDuplicateSignByte); - pposResult res = gson.fromJson(checkDuplicateSignStr, pposResult.class); - if (res != null){ - collector.assertEqual(res.Code, 0, "查询节点是否有多签过 result == expect res: {\"Code\":0,\"Ret\":\"\"}"); - } - - } catch (Exception e) { - collector.logStepFail("Failed to call cross_call_ppos Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_cross_call_ppos_Governance",sourcePrefix = "wasm") - public void testCrossCallPPOS4Governance() { - try { - - prepare(); - - // 测试跨合约调 ppos合约 - - - // 部署 - ContractCallPPOS ppos = ContractCallPPOS.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy cross_call_ppos:" + ppos.getTransactionReceipt().get().getGasUsed()); - - /** - * 提交文本提案 - * - * verifierID: ced880d4769331f47af07a8d1b79de1e40c95a37ea1890bb9d3f0da8349e1a7c0ea4cadbb9c5bf185b051061eef8e5eadca251c24e1db1d9faf0fb24cbd06f9a - * PIPID: textUrl - */ - String submitTextInput = "0xf851838207d0b842b840ced880d4769331f47af07a8d1b79de1e40c95a37ea1890bb9d3f0da8349e1a7c0ea4cadbb9c5bf185b051061eef8e5eadca251c24e1db1d9faf0fb24cbd06f9a88877465787455726c"; - - TransactionReceipt submitTextReceipt = ppos.cross_call_ppos_send(govContractAddr, submitTextInput, Uint64.of(0), Uint64.of(60000000l)).send(); - - String submitTextDataHex = submitTextReceipt.getLogs().get(0).getData(); - String submitTextDataStr =DataChangeUtil.decodeSystemContractRlp(submitTextDataHex, chainId); - String submitTextExpectData = "302022"; - - collector.logStepPass("cross_call_ppos submitText successfully txHash:" + submitTextReceipt.getTransactionHash()); - collector.assertEqual(submitTextDataStr, submitTextExpectData); - - - /** - * 查询 提案 - * - * proposalID: 0x12c171900f010b17e969702efa044d077e86808212c171900f010b17e969702e - * - * - */ - - String getProposalInput = "0xe683820834a1a012c171900f010b17e969702efa044d077e86808212c171900f010b17e969702e"; - String getProposalHexStr = ppos.cross_call_ppos_query(govContractAddr, getProposalInput, Uint64.of(0), Uint64.of(60000000l)).send(); - byte[] getProposalByte = DataChangeUtil.hexToByteArray(getProposalHexStr); - String getProposalStr = new String(getProposalByte); - pposResult res = gson.fromJson(getProposalStr, pposResult.class); - collector.assertEqual(res.Code, 302006, "查询提案 result == expect res: {\"Code\":302006,\"Ret\":\"proposal not found\"}"); - - } catch (Exception e) { - collector.logStepFail("Failed to call cross_call_ppos Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_cross_call_ppos_DelegateReward",sourcePrefix = "wasm") - public void testCrossCallPPOS4DelegateReward() { - try { - - prepare(); - - // 测试跨合约调 ppos合约 - - - // 部署 - ContractCallPPOS ppos = ContractCallPPOS.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy cross_call_ppos:" + ppos.getTransactionReceipt().get().getGasUsed()); - - /** - * 提取委托奖励 - * - */ - String withdrawDelegateRewardInput = "0xc483821388"; - - TransactionReceipt withdrawDelegateRewardReceipt = ppos.cross_call_ppos_send(delegateRewardPoolAddr, withdrawDelegateRewardInput, Uint64.of(0), Uint64.of(60000000l)).send(); - - String withdrawDelegateRewardDataHex = withdrawDelegateRewardReceipt.getLogs().get(0).getData(); - String withdrawDelegateRewardDataStr = DataChangeUtil.decodeSystemContractRlp(withdrawDelegateRewardDataHex, chainId); - String withdrawDelegateRewardExpectData = "305001"; - - collector.logStepPass("cross_call_ppos withdrawDelegateReward successfully txHash:" + withdrawDelegateRewardReceipt.getTransactionHash()); - collector.assertEqual(withdrawDelegateRewardDataStr, withdrawDelegateRewardExpectData); - - - /** - * 查询 账户在各节点未提取委托奖励 - * - " Addr": "0x12c171900f010b17e969702efa044d077e868082"z - * - * NodeIDs": [ - * "db18af9be2af9dff2347c3d06db4b1bada0598d099a210275251b68fa7b5a863d47fcdd382cc4b3ea01e5b55e9dd0bdbce654133b7f58928ce74629d5e68b974", - * "1f3a8672348ff6b789e416762ad53e69063138b8eb4d8780101658f24b2369f1a8e09499226b467d8bc0c4e03e1dc903df857eeb3c67733d21b6aaee2840e429"] - * - * - * - */ - String getDelegateRewardInput = "0xf8a2838213ec959412c171900f010b17e969702efa044d077e868082b886f884b840db18af9be2af9dff2347c3d06db4b1bada0598d099a210275251b68fa7b5a863d47fcdd382cc4b3ea01e5b55e9dd0bdbce654133b7f58928ce74629d5e68b974b8401f3a8672348ff6b789e416762ad53e69063138b8eb4d8780101658f24b2369f1a8e09499226b467d8bc0c4e03e1dc903df857eeb3c67733d21b6aaee2840e429"; - String getDelegateRewardHexStr = ppos.cross_call_ppos_query(delegateRewardPoolAddr, getDelegateRewardInput, Uint64.of(0), Uint64.of(60000000l)).send(); - byte[] getDelegateRewardByte = DataChangeUtil.hexToByteArray(getDelegateRewardHexStr); - String getDelegateRewardStr = new String(getDelegateRewardByte); - pposResult res = gson.fromJson(getDelegateRewardStr, pposResult.class); - collector.assertEqual(res.Code, 305001, "查询候选人详情 result == expect res: {\"Code\":305001,\"Ret\":\"delegation info not found\"}"); - - } catch (Exception e) { - collector.logStepFail("Failed to call cross_call_ppos Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallPrecompileContractsTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallPrecompileContractsTest.java deleted file mode 100644 index dc59a1a47c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallPrecompileContractsTest.java +++ /dev/null @@ -1,222 +0,0 @@ -package network.platon.test.wasm.contract_cross_call; - -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractCallPrecompile; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -public class ContractCrossCallPrecompileContractsTest extends WASMContractPrepareTest { - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_cross_call_precompile",sourcePrefix = "wasm") - public void testCrossCallPreCompile() { - try { - - prepare(); - - // 测试跨合约调 ecrecover 预编译合约 - // - // 入参的规则为: bytes32(dataHash) + bytes32(v) + bytes32(r) + bytes32(s) - // - // dataHash: "0xe281eaa11e6e37e6f53aade5d6c5b7201ef1c66162ec42ccc3215a0c4349350d", this hash is not txHash - // V = 27 - // R = "0x55b60cadd4b4a3ea4fc368ef338f97e12e7328dd6e9e969a3fd8e5c10be855fe" - // S = "0x2b42cee2585a16ea537efcb88009c1aeac693c28b59aa6bbff0baf22730338f6" - // - // 求出最终的hex应为 0000000000000000000000008a9b36694f1eeeb500c84a19bb34137b05162ec5 - // 对应的address: "0x8a9B36694F1eeeb500c84A19bB34137B05162EC5" - String msghStr = "0xe281eaa11e6e37e6f53aade5d6c5b7201ef1c66162ec42ccc3215a0c4349350d"; - - byte[] msgh = DataChangeUtil.hexToByteArray(msghStr); - - - Uint8 v = Uint8.of("27"); - - String rStr = "0x55b60cadd4b4a3ea4fc368ef338f97e12e7328dd6e9e969a3fd8e5c10be855fe"; - byte[] r = DataChangeUtil.hexToByteArray(rStr); - - String sStr = "0x2b42cee2585a16ea537efcb88009c1aeac693c28b59aa6bbff0baf22730338f6"; - byte[] s = DataChangeUtil.hexToByteArray(sStr); - - String expectAddrStr = "0000000000000000000000008a9b36694f1eeeb500c84a19bb34137b05162ec5"; - - - ContractCallPrecompile precompile = ContractCallPrecompile.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy cross_call_precompile contract:" + precompile.getTransactionReceipt().get().getGasUsed()); - collector.logStepPass("cross_call_precompile deployed sucessfully, contractAddress:" + precompile.getContractAddress() + ", txHash:" + precompile.getTransactionReceipt().get().getTransactionHash()); - - String addr = precompile.cross_call_ecrecover(msgh, v, r, s, Uint64.of(0), Uint64.of(60000000l)).send(); - - collector.logStepPass("cross_call_precompile cross_call_ecrecover successfully addr:" + addr); - collector.assertEqual(addr, expectAddrStr); - - // 测试跨合约调 sha256hash 预编译合约 - String sha3Str = "0x414243"; // hex(ABC) - String sha3ExpectHash = "b5d4045c3f466fa91fe2cc6abe79232a1a57cdf104f7a26e716e0a1e2789df78"; - String sha3Hash = precompile.cross_call_sha256hash(sha3Str,Uint64.of(0), Uint64.of(60000000l)).send(); - collector.logStepPass("cross_call_precompile cross_call_sha256hash successfully sha3Hash:" + sha3Hash); - collector.assertEqual(sha3Hash, sha3ExpectHash); - - // 测试跨合约调 ripemd160hash 预编译合约 - String ripemd160Str = "0x414243"; // hex(ABC) - String ripemd160ExpectHash = "000000000000000000000000df62d400e51d3582d53c2d89cfeb6e10d32a3ca6"; // 这一点注意, sol中返回的是被经处理成: df62d400e51d3582d53c2d89cfeb6e10d32a3ca6000000000000000000000000 - String ripemd160Hash = precompile.cross_call_ripemd160hash(ripemd160Str,Uint64.of(0), Uint64.of(60000000l)).send(); - collector.logStepPass("cross_call_precompile cross_call_ripemd160hash successfully ripemd160Hash:" + ripemd160Hash); - collector.assertEqual(ripemd160Hash, ripemd160ExpectHash); - - // 测试跨合约调 dataCopy 预编译合约 - String dataCopyStr = "414243"; // hex(ABC) - String dataCopyHash = precompile.cross_call_dataCopy(sha3Str, Uint64.of(0), Uint64.of(60000000l)).send(); - collector.logStepPass("cross_call_precompile cross_call_dataCopy successfully dataCopyHash:" + dataCopyHash); - collector.assertEqual(dataCopyHash, dataCopyStr); - - // 测试跨合约调 bigModExp 预编译合约 - // - // 入参的input拼接规则, input = [32]byte(baseLen) + [32]byte(expLen) + [32]byte(modLen) + [baseLen]byte(base) + [expLen]byte(exp) + [modLen]byte32(mod) - // 其中 base 为基数, exp 为指数, mod 为模数 - // 求出 z, 其中 (公式: z = 基数 ** 指数 mod | 模数 |) - // 如: z = 32 ** 3 mod | 5 |; z = 3 - // - // baseLen = "0000000000000000000000000000000000000000000000000000000000000020" - // expLen = "0000000000000000000000000000000000000000000000000000000000000020" - // modLen = "0000000000000000000000000000000000000000000000000000000000000020" - // base = "0000000000000000000000000000000000000000000000000000000000000020" - // exp = "0000000000000000000000000000000000000000000000000000000000000003" - // mod = "0000000000000000000000000000000000000000000000000000000000000005" - // 求得的 z 应该为: 0000000000000000000000000000000000000000000000000000000000000003 - // - String zExpectHash = "0000000000000000000000000000000000000000000000000000000000000003"; - - String baseStr = "0000000000000000000000000000000000000000000000000000000000000020"; - byte[] base = DataChangeUtil.hexToByteArray(baseStr); - - String expStr = "0000000000000000000000000000000000000000000000000000000000000003"; - byte[] exp = DataChangeUtil.hexToByteArray(expStr); - - String modStr = "0000000000000000000000000000000000000000000000000000000000000005"; - byte[] mod = DataChangeUtil.hexToByteArray(modStr); - - - String zHash = precompile.cross_call_bigModExp(base, exp, mod,Uint64.of(0), Uint64.of(60000000l)).send(); - collector.logStepPass("cross_call_precompile cross_call_bigModExp successfully zHash:" + zHash); - collector.assertEqual(zHash, zExpectHash); - - - // 测试跨合约调 bn256Add 预编译合约 - // - // 主要是对 bn256 做 + 操作 - // 其中入参的 ax, ay, bx, by 其中 (ax, ay) 为椭圆曲线 bn256 上的一个点A, (bx, by) 是椭圆曲线上的另外一个点B - // 该函数就是 求两个点的 G点 - // - // input = ax + ay + bx + by - // - // 对于点A坐标取值: - // ax: 10744596414106452074759370245733544594153395043370666422502510773307029471145 其十六进制为: 0x17c139df0efee0f766bc0204762b774362e4ded88953a39ce849a8a7fa163fa9 - // ay: 848677436511517736191562425154572367705380862894644942948681172815252343932 其十六进制为: 0x01e0559bacb160664764a357af8a9fe70baa9258e0b959273ffc5718c6d4cc7c - // - // 对于点B坐标取值: - // bx: 1624070059937464756887933993293429854168590106605707304006200119738501412969 其十六进制为: 0x039730ea8dff1254c0fee9c0ea777d29a9c710b7e616683f194f18c43b43b869 - // by: 3269329550605213075043232856820720631601935657990457502777101397807070461336 其十六进制为: 0x073a5ffcc6fc7a28c30723d6e58ce577356982d65b833a5a5c15bf9024b43d98 - // - // 则,内置合约 bn256Add 的input入参为: ax+ay+bx+by = 0x17c139df0efee0f766bc0204762b774362e4ded88953a39ce849a8a7fa163fa901e0559bacb160664764a357af8a9fe70baa9258e0b959273ffc5718c6d4cc7c039730ea8dff1254c0fee9c0ea777d29a9c710b7e616683f194f18c43b43b869073a5ffcc6fc7a28c30723d6e58ce577356982d65b833a5a5c15bf9024b43d98 - String cExpect = "15bf2bb17880144b5d1cd2b1f46eff9d617bffd1ca57c37fb5a49bd84e53cf66049c797f9ce0d17083deb32b5e36f2ea2a212ee036598dd7624c168993d1355f"; - - - String axStr = "0x17c139df0efee0f766bc0204762b774362e4ded88953a39ce849a8a7fa163fa9"; - byte[] ax = DataChangeUtil.hexToByteArray(axStr); - - String ayStr = "0x01e0559bacb160664764a357af8a9fe70baa9258e0b959273ffc5718c6d4cc7c"; - byte[] ay = DataChangeUtil.hexToByteArray(ayStr); - - String bxStr = "0x039730ea8dff1254c0fee9c0ea777d29a9c710b7e616683f194f18c43b43b869"; - byte[] bx = DataChangeUtil.hexToByteArray(bxStr); - - String byStr = "0x073a5ffcc6fc7a28c30723d6e58ce577356982d65b833a5a5c15bf9024b43d98"; - byte[] by = DataChangeUtil.hexToByteArray(byStr); - - String cCoordinate = precompile.cross_call_bn256Add(ax, ay, bx, by, Uint64.of(0), Uint64.of(60000000l)).send(); - collector.logStepPass("cross_call_precompile cross_call_bn256Add successfully c ponit coordinate:" + cCoordinate); - collector.assertEqual(cCoordinate, cExpect); - - - - // 测试跨合约调 bn256ScalarMul 预编译合约 - // - // 主要是对 bn256 做 × 操作 - // 其中入参的 ax, ay, 和 系数 scalar 其中 (ax, ay) 为椭圆曲线 bn256 上的一个点A, scalar 为椭圆曲线的质数域中的 N×G, 即 A×NG == B 得到椭圆曲线上的另外一个点B的坐标(bx, by) - // - // input = ax + ay + scalar - // - // 对于点A坐标取值: - // ax: 19823850254741169819033785099293761935467223354323761392354670518001715552183 其十六进制为: 0x2bd3e6d0f3b142924f5ca7b49ce5b9d54c4703d7ae5648e61d02268b1a0a9fb7 - // ay: 15097907474011103550430959168661954736283086276546887690628027914974507414020 其十六进制为: 0x21611ce0a6af85915e2f1d70300909ce2e49dfad4a4619c8390cae66cefdb204 - // - // 系数 scalar 取值: 1230482048326178242 其十六进制为: 0x00000000000000000000000000000000000000000000000011138ce750fa15c2 - // - // 我们将会得到B的坐标为: (返回的B坐标的 bx+by的十六进制为: 0x070a8d6a982153cae4be29d434e8faef8a47b274a053f5a4ee2a6c9c13c31e5c031b8ce914eba3a9ffb989f9cdd5b0f01943074bf4f0f315690ec3cec6981afc) - // bx: 3184834430741071145030522771540763108892281233703148152311693391954704539228 其十六进制为: 0x070a8d6a982153cae4be29d434e8faef8a47b274a053f5a4ee2a6c9c13c31e5c - // by: 1405615944858121891163559530323310827496899969303520166098610312148921359100 其十六进制为: 0x031b8ce914eba3a9ffb989f9cdd5b0f01943074bf4f0f315690ec3cec6981afc - // - // 则,内置合约 bn256ScalarMul 的input入参为: ax+ay+scalar = 0x2bd3e6d0f3b142924f5ca7b49ce5b9d54c4703d7ae5648e61d02268b1a0a9fb721611ce0a6af85915e2f1d70300909ce2e49dfad4a4619c8390cae66cefdb20400000000000000000000000000000000000000000000000011138ce750fa15c2 - String bExpect = "070a8d6a982153cae4be29d434e8faef8a47b274a053f5a4ee2a6c9c13c31e5c031b8ce914eba3a9ffb989f9cdd5b0f01943074bf4f0f315690ec3cec6981afc"; - - String xStr = "0x2bd3e6d0f3b142924f5ca7b49ce5b9d54c4703d7ae5648e61d02268b1a0a9fb7"; - byte[] x = DataChangeUtil.hexToByteArray(xStr); - - String yStr = "0x21611ce0a6af85915e2f1d70300909ce2e49dfad4a4619c8390cae66cefdb204"; - byte[] y = DataChangeUtil.hexToByteArray(yStr); - - String scalarStr = "0x00000000000000000000000000000000000000000000000011138ce750fa15c2"; - byte[] scalar = DataChangeUtil.hexToByteArray(scalarStr); - - String bCoordinate = precompile.cross_call_bn256ScalarMul(x, y, scalar, Uint64.of(0), Uint64.of(60000000l)).send(); - collector.logStepPass("cross_call_precompile cross_call_bn256ScalarMul successfully b ponit coordinate:" + bCoordinate); - collector.assertEqual(bCoordinate, bExpect); - - - // 测试跨合约调 bn256ScalarMul 预编译合约 - // - // 主要是对 bn256 做 pairing 操作, 也就是 配对操作 - // 通过没两组 (x, y) 分别代表 去 曲线点和 扭曲点 来一一匹配,看看是否同属于 一条曲线上的 - // - //入参数据如下: - // - // x1: 12873740738727497448187997291915224677121726020054032516825496230827252793177 其对应的十六进制为: 0x1c76476f4def4bb94541d57ebba1193381ffa7aa76ada664dd31c16024c43f59 - // y1: 21804419174137094775122804775419507726154084057848719988004616848382402162497 其对应的十六进制为: 0x3034dd2920f673e204fee2811c678745fc819b55d3e9d294e45c9b03a76aef41 - // x2: 14752851163271972921165116810778899752274893127848647655434033030151679466487 其对应的十六进制为: 0x209dd15ebff5d46c4bd888e51a93cf99a7329636c63514396b4a452003a35bf7 - // y2: 2146841959437886920191033516947821737903543682424168472444605468016078231160 其对应的十六进制为: 0x04bf11ca01483bfa8b34b43561848d28905960114c8ac04049af4b6315a41678 - // x3: 19774899457345372253936887903062884289284519982717033379297427576421785416781 其对应的十六进制为: 0x2bb8324af6cfc93537a2ad1a445cfd0ca2a71acd7ac41fadbf933c2a51be344d - // y3: 8159591693044959083845993640644415462154314071906244874217244895511876957520 其对应的十六进制为: 0x120a2a4cf30c1bf9845f20c6fe39e07ea2cce61f0c9bb048165fe5e4de877550 - // x4: 7742452358972543465462254569134860944739929848367563713587808717088650354556 其对应的十六进制为: 0x111e129f1cf1097710d41c4ac70fcdfa5ba2023c6ff1cbeac322de49d1b6df7c - // y4: 14563720768440487558151020426243236708567496944263114635856508834497000371217 其对应的十六进制为: 0x2032c61a830e3c17286de9462bf242fca2883585b93870a73853face6a6bf411 - // x5: 11559732032986387107991004021392285783925812861821192530917403151452391805634 其对应的十六进制为: 0x198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c2 - // y5: 10857046999023057135944570762232829481370756359578518086990519993285655852781 其对应的十六进制为: 0x1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed - // x6: 4082367875863433681332203403145435568316851327593401208105741076214120093531 其对应的十六进制为: 0x090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b - // - // 规则 (x1, y1) 和 (x2, y2) 做匹配 以此类推 - // - - String pairingStr = "0x1c76476f4def4bb94541d57ebba1193381ffa7aa76ada664dd31c16024c43f593034dd2920f673e204fee2811c678745fc819b55d3e9d294e45c9b03a76aef41209dd15ebff5d46c4bd888e51a93cf99a7329636c63514396b4a452003a35bf704bf11ca01483bfa8b34b43561848d28905960114c8ac04049af4b6315a416782bb8324af6cfc93537a2ad1a445cfd0ca2a71acd7ac41fadbf933c2a51be344d120a2a4cf30c1bf9845f20c6fe39e07ea2cce61f0c9bb048165fe5e4de877550111e129f1cf1097710d41c4ac70fcdfa5ba2023c6ff1cbeac322de49d1b6df7c2032c61a830e3c17286de9462bf242fca2883585b93870a73853face6a6bf411198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c21800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa"; - String expextFlag = "0000000000000000000000000000000000000000000000000000000000000001"; // 1 表示全部配对成功, 0 表示有配对失败的存在 - String retFlag = precompile.cross_call_bn256Pairing(pairingStr,Uint64.of(0), Uint64.of(60000000l)).send(); - collector.logStepPass("cross_call_precompile cross_call_bn256Pairing successfully ret flag:" + retFlag); - collector.assertEqual(retFlag, expextFlag); - - - - - - } catch (Exception e) { - collector.logStepFail("Failed to call cross_call_origin_type Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallStorageStrTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallStorageStrTest.java deleted file mode 100644 index 5b027e27fd..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallStorageStrTest.java +++ /dev/null @@ -1,70 +0,0 @@ -package network.platon.test.wasm.contract_cross_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractCrossCallStorageString; -import network.platon.contracts.wasm.ContractStorageString; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -public class ContractCrossCallStorageStrTest extends WASMContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_cross_call_storage_str",sourcePrefix = "wasm") - public void testCrossCallContract() { - - try { - prepare(); - - // deploy the target contract which the name is `storge_str`, first - ContractStorageString strc = ContractStorageString.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy storge_str contract:" + strc.getTransactionReceipt().get().getGasUsed()); - - String strcAddr = strc.getContractAddress(); - String strcTxHash = strc.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("storge_str deployed sucessfully, contractAddress:" + strcAddr + ", txHash:" + strcTxHash); - - - // deploy the cross_call_storage_str contract second - ContractCrossCallStorageString crossCall = ContractCrossCallStorageString.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy cross_call_storage_str contract:" + crossCall.getTransactionReceipt().get().getGasUsed()); - - String crossCallAddr = crossCall.getContractAddress(); - String crossCallTxHash = crossCall.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("cross_call_storage_str deployed sucessfully, contractAddress:" + crossCallAddr + ", txHash:" + crossCallTxHash); - - - // check str value 1st - String strcStr = strc.get_string().send(); - collector.logStepPass("the msg count in arr of storge_str contract:" + strcStr); - collector.assertEqual(strcStr, ""); - - String crossCallStr = crossCall.get_string().send(); - collector.logStepPass("the msg count in arr of cross_call_storage_str contract:" + crossCallStr); - collector.assertEqual(crossCallStr, ""); - - String msg = "Gavin"; - - // cross call contract start - TransactionReceipt receipt = crossCall.call_set_string(strcAddr, msg, Uint64.of(0), Uint64.of(60000000l)).send(); - collector.logStepPass("cross_call_storage_str call_add_message successfully txHash:" + receipt.getTransactionHash()); - - - // check str value 2nd - strcStr = strc.get_string().send(); - collector.logStepPass("the msg count in arr of storge_str contract:" + strcStr); - collector.assertEqual(strcStr, msg); - - crossCallStr = crossCall.get_string().send(); - collector.logStepPass("the msg count in arr of cross_call_storage_str contract:" + crossCallStr); - collector.assertEqual(crossCallStr, ""); - - } catch (Exception e) { - collector.logStepFail("Failed to call cross_call_storage_str Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallStorageVecTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallStorageVecTest.java deleted file mode 100644 index fcc8cda613..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractCrossCallStorageVecTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.wasm.contract_cross_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractCrossCallStorageVector; -import network.platon.contracts.wasm.ContractStorageVector; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - - -public class ContractCrossCallStorageVecTest extends WASMContractPrepareTest { - - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_cross_call_storage_vector",sourcePrefix = "wasm") - public void testCrossCallContract() { - - try { - prepare(); - - // deploy the target contract which the name is `storage_vec`, first - ContractStorageVector storage_vec = ContractStorageVector.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy storage_vec contract:" + storage_vec.getTransactionReceipt().get().getGasUsed()); - - String storage_vec_Addr = storage_vec.getContractAddress(); - String storage_vec_TxHash = storage_vec.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractHello deployed sucessfully, contractAddress:" + storage_vec_Addr + ", txHash:" + storage_vec_TxHash); - - - // deploy the cross_call contract second - ContractCrossCallStorageVector crossCall = ContractCrossCallStorageVector.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy cross_call_storage_vec contract:" + crossCall.getTransactionReceipt().get().getGasUsed()); - - - String crossCallAddr = crossCall.getContractAddress(); - String crossCallTxHash = crossCall.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractCrossCall deployed sucessfully, contractAddress:" + crossCallAddr + ", txHash:" + crossCallTxHash); - - - // check arr size 1st - Uint64 storageVecLen = storage_vec.get_vector_size().send(); - collector.logStepPass("the msg count in arr of storage_vec contract:" + storageVecLen); - collector.assertEqual(storageVecLen.getValue().longValue(), 0l); - - Uint64 crossCallVecLen = crossCall.get_vector_size().send(); - collector.logStepPass("the msg count in arr of crossCall contract:" + crossCallVecLen); - collector.assertEqual(crossCallVecLen.getValue().longValue(), 0l); - - - // cross call contract start - ContractCrossCallStorageVector.My_message myMessage = new ContractCrossCallStorageVector.My_message(); - myMessage.baseClass = new ContractCrossCallStorageVector.Message(); - myMessage.baseClass.head = "Gavin Head"; - myMessage.body = "Gavin Body"; - myMessage.end = "Gavin End"; - - TransactionReceipt receipt = crossCall.call_add_message(storage_vec_Addr, myMessage, Uint64.of(0), Uint64.of(60000000l)).send(); - collector.logStepPass("ContractCrossCall call_add_message successfully txHash:" + receipt.getTransactionHash()); - - - // check arr size 2nd - storageVecLen = storage_vec.get_vector_size().send(); - collector.logStepPass("the msg count in arr of storage_vec contract:" + storageVecLen); - collector.assertEqual(storageVecLen.getValue().longValue(), 1l); - - crossCallVecLen = crossCall.get_vector_size().send(); - collector.logStepPass("the msg count in arr of crossCall contract:" + crossCallVecLen); - collector.assertEqual(crossCallVecLen.getValue().longValue(), 0l); - - } catch (Exception e) { - collector.logStepFail("Failed to CrossCall Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallFlagByRetTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallFlagByRetTest.java deleted file mode 100644 index ee34a4bc84..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallFlagByRetTest.java +++ /dev/null @@ -1,131 +0,0 @@ -package network.platon.test.wasm.contract_cross_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.*; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -public class ContractDelegateCallFlagByRetTest extends WASMContractPrepareTest { - - // 跨合约调用有返回值的合约 - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_delegate_call_flag_ByRet",sourcePrefix = "wasm") - public void testCrossCallContractByRet() { - - try { - prepare(); - - // deploy the target contract which the name is `receiver_byret`, first - ContractReceiverByRet receiver = ContractReceiverByRet.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy receiver_byret contract:" + receiver.getTransactionReceipt().get().getGasUsed()); - - String receiverAddr = receiver.getContractAddress(); - String receiverTxHash = receiver.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("receiver_byret deployed sucessfully, contractAddress:" + receiverAddr + ", txHash:" + receiverTxHash); - - - // deploy the delegate_caller_byret contract second - ContractDelegateCallerByRet caller = ContractDelegateCallerByRet.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy delegate_caller_byret contract:" + caller.getTransactionReceipt().get().getGasUsed()); - - String callerAddr = caller.getContractAddress(); - String callerTxHash = caller.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("delegate_caller_byret deployed sucessfully, contractAddress:" + callerAddr + ", txHash:" + callerTxHash); - - - // 给予receiver的gas足够时 - TransactionReceipt receipt = caller.callFeed(receiverAddr, Uint64.of(98651l)).send(); - collector.logStepPass("delegate_caller_byret callFeed by gas 98651l successfully txHash:" + receipt.getTransactionHash()); - - // 检查下调用receiver 成功与否 - Uint64 status = caller.get_status().send(); - collector.assertEqual(status.getValue().longValue(), 0l); - - // 给予receiver的gas 不够时 - receipt = caller.callFeed(receiverAddr, Uint64.of(10000l)).send(); - collector.logStepPass("delegate_caller_byret callFeed by gas 10000 successfully txHash:" + receipt.getTransactionHash()); - - // 检查下调用receiver 成功与否 - status = caller.get_status().send(); - collector.assertEqual(status.getValue().longValue(), 1l); - - - // 直接给予 0gas, 就会使用默认的 剩余gas - receipt = caller.callFeed(receiverAddr, Uint64.of(0l)).send(); - collector.logStepPass("delegate_caller_byret callFeed by gas 0 successfully txHash:" + receipt.getTransactionHash()); - - // 检查下调用receiver 成功与否 - status = caller.get_status().send(); - collector.assertEqual(status.getValue().longValue(), 0l); - - - } catch (Exception e) { - collector.logStepFail("Failed to call delegate_caller_byret Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - - - // 跨合约调用无返回值的合约 - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_delegate_call_flag_ByNoRet",sourcePrefix = "wasm") - public void testCrossCallContractByNoRet() { - - try { - prepare(); - - // deploy the target contract which the name is `receiver_noret`, first - ContractReceiverNoRet receiver = ContractReceiverNoRet.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy receiver_noret contract:" + receiver.getTransactionReceipt().get().getGasUsed()); - - String receiverAddr = receiver.getContractAddress(); - String receiverTxHash = receiver.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("receiver_noret deployed sucessfully, contractAddress:" + receiverAddr + ", txHash:" + receiverTxHash); - - - // deploy the delegate_caller_noret contract second - ContractDelegateCallerNoRet caller = ContractDelegateCallerNoRet.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy delegate_caller_noret contract:" + caller.getTransactionReceipt().get().getGasUsed()); - - String callerAddr = caller.getContractAddress(); - String callerTxHash = caller.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("delegate_caller_noret deployed sucessfully, contractAddress:" + callerAddr + ", txHash:" + callerTxHash); - - - // 给予receiver的gas足够时 - TransactionReceipt receipt = caller.callFeed(receiverAddr, Uint64.of(98651l)).send(); - collector.logStepPass("delegate_caller_noret callFeed by gas 98651l successfully txHash:" + receipt.getTransactionHash()); - - // 检查下调用receiver 成功与否 - Uint64 status = caller.get_status().send(); - collector.assertEqual(status.getValue().longValue(), 0l); - - // 给予receiver的gas 不够时 - receipt = caller.callFeed(receiverAddr, Uint64.of(10000l)).send(); - collector.logStepPass("delegate_caller_noret callFeed by gas 10000 successfully txHash:" + receipt.getTransactionHash()); - - // 检查下调用receiver 成功与否 - status = caller.get_status().send(); - collector.assertEqual(status.getValue().longValue(), 1l); - - - // 直接给予 0gas, 就会使用默认的 剩余gas - receipt = caller.callFeed(receiverAddr, Uint64.of(0l)).send(); - collector.logStepPass("delegate_caller_noret callFeed by gas 0 successfully txHash:" + receipt.getTransactionHash()); - - // 检查下调用receiver 成功与否 - status = caller.get_status().send(); - collector.assertEqual(status.getValue().longValue(), 0l); - - } catch (Exception e) { - collector.logStepFail("Failed to call delegate_caller_noret Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallOriginTypeTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallOriginTypeTest.java deleted file mode 100644 index f1ffe9e18a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallOriginTypeTest.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.test.wasm.contract_cross_call; - - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractDelegateCallOriginType; -import network.platon.contracts.wasm.ContractOriginType; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -public class ContractDelegateCallOriginTypeTest extends WASMContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_delegate_call_origin_type",sourcePrefix = "wasm") - public void testCrossCallContract() { - - try { - prepare(); - - // deploy the target contract which the name is `storge_origin`, first - ContractOriginType origin = ContractOriginType.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy storge_origin contract:" + origin.getTransactionReceipt().get().getGasUsed()); - - - String originAddr = origin.getContractAddress(); - String originTxHash = origin.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("storge_str deployed sucessfully, contractAddress:" + originAddr + ", txHash:" + originTxHash); - - - // deploy the delegate_call_origin_type contract second - ContractDelegateCallOriginType crossCall = ContractDelegateCallOriginType.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy delegate_call_origin_type contract:" + crossCall.getTransactionReceipt().get().getGasUsed()); - - - String delegateCallAddr = crossCall.getContractAddress(); - String delegateCallTxHash = crossCall.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("delegate_call_origin_type deployed sucessfully, contractAddress:" + delegateCallAddr + ", txHash:" + delegateCallTxHash); - - - // check vec size 1st - Uint64 originVecSize = origin.get_vector_size().send(); - collector.logStepPass("the msg count in arr of storge_origin contract:" + originVecSize); - collector.assertEqual(originVecSize.getValue().longValue(), 0l); - - Uint64 delegateCallVecSize = crossCall.get_vector_size().send(); - collector.logStepPass("the msg count in arr of delegate_call_origin_type contract:" + delegateCallVecSize); - collector.assertEqual(delegateCallVecSize.getValue().longValue(), 0l); - - // delegate call contract start - ContractDelegateCallOriginType.My_message myMessage = new ContractDelegateCallOriginType.My_message(); - myMessage.baseClass = new ContractDelegateCallOriginType.Message(); - myMessage.baseClass.head = "Gavin Head"; - myMessage.body = "Gavin Body"; - myMessage.end = "Gavin End"; - - // cross call contract start - TransactionReceipt receipt = crossCall.delegate_call_add_message(originAddr, myMessage, Uint64.of(60000000l)).send(); - collector.logStepPass("delegate_call_origin_type call_add_message successfully txHash:" + receipt.getTransactionHash()); - - - // check arr size 2nd - originVecSize = origin.get_vector_size().send(); - collector.logStepPass("the msg count in arr of storge_origin contract:" + originVecSize); - collector.assertEqual(originVecSize.getValue().longValue(), 0l); - - delegateCallVecSize = crossCall.get_vector_size().send(); - collector.logStepPass("the msg count in arr of delegate_call_origin_type contract:" + delegateCallVecSize); - collector.assertEqual(delegateCallVecSize.getValue().longValue(), 1l); - - } catch (Exception e) { - collector.logStepFail("Failed to call delegate_call_origin_type Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallPPOSTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallPPOSTest.java deleted file mode 100644 index 3d2a6480b5..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallPPOSTest.java +++ /dev/null @@ -1,370 +0,0 @@ -package network.platon.test.wasm.contract_cross_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.google.gson.Gson; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractDelegateCallPPOS; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -public class ContractDelegateCallPPOSTest extends WASMContractPrepareTest { - - // 锁仓合约 -// private String restrictingContractAddr = "lax1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqp3yp7hw"; - private String restrictingContractAddr = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpd3er4y"; - -// private String stakingContractAddr = "lax1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzlh5ge3"; - private String stakingContractAddr = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzrzv4mm"; - -// private String slashingContractAddr = "lax1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqyrchd9x"; - private String slashingContractAddr = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqyld0s8v"; - -// private String govContractAddr = "lax1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq97wrcc5"; - private String govContractAddr = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq9zmm967"; - -// private String delegateRewardPoolAddr = "lax1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqxsakwkt"; - private String delegateRewardPoolAddr = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqxvgwn5p"; - - - private Gson gson = new Gson(); - - // {"Code":305001,"Ret": xxx} - class pposResult { - public int Code; - public Object Ret; - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_delegate_call_ppos_RestrictingPlan",sourcePrefix = "wasm") - public void testDelegateCallPPOS4Restricting() { - try { - - prepare(); - - // 测试跨合约调 ppos合约 - - - // 部署 - ContractDelegateCallPPOS ppos = ContractDelegateCallPPOS.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy delegate_call_ppos:" + ppos.getTransactionReceipt().get().getGasUsed()); - - /** - * 锁仓 - * - * account: 0xc9E1C2B330Cf7e759F2493c5C754b34d98B07f93 - * plans: [{"epoch":1,"amount":1000000000000000000},{"epoch":2,"amount":1000000000000000000},{"epoch":3,"amount":1000000000000000000},{"epoch":4,"amount":1000000000000000000},{"epoch":5,"amount":1000000000000000000}] - * - */ - String createRestrictingPlanInput = "0xf85483820fa09594c9e1c2b330cf7e759f2493c5c754b34d98b07f93b838f7ca01880de0b6b3a7640000ca02880de0b6b3a7640000ca03880de0b6b3a7640000ca04880de0b6b3a7640000ca05880de0b6b3a7640000"; - - TransactionReceipt createRestrictingPlanReceipt = ppos.delegate_call_ppos_send(restrictingContractAddr, createRestrictingPlanInput, Uint64.of(60000000l)).send(); - - String createRestrictingPlanDataHex = createRestrictingPlanReceipt.getLogs().get(0).getData(); - String createRestrictingPlanDataStr = DataChangeUtil.decodeSystemContractRlp(createRestrictingPlanDataHex, chainId); - String createRestrictingPlanExpectData = "0"; - - collector.logStepPass("delegate_call_ppos createRestrictingPlan successfully txHash:" + createRestrictingPlanReceipt.getTransactionHash()); - collector.assertEqual(createRestrictingPlanDataStr, createRestrictingPlanExpectData); - - - /** - * 查询 账户的锁仓计划 - * - * account: 0xc9E1C2B330Cf7e759F2493c5C754b34d98B07f93 - * - * - */ - - String getRestrictingInfoInput = "0xda838210049594c9e1c2b330cf7e759f2493c5c754b34d98b07f93"; - String getRestrictingInfoHexStr = ppos.delegate_call_ppos_query(restrictingContractAddr, getRestrictingInfoInput, Uint64.of(60000000l)).send(); - byte[] getRestrictingInfoByte = DataChangeUtil.hexToByteArray(getRestrictingInfoHexStr); - String getRestrictingInfoStr = new String(getRestrictingInfoByte); - collector.logStepPass("获取锁仓计划:" + getRestrictingInfoStr); - ContractCrossCallPPOSTest.pposResult res = gson.fromJson(getRestrictingInfoStr, ContractCrossCallPPOSTest.pposResult.class); - collector.assertEqual(res.Code, 0, "查询账户的锁仓计划 result == expect res: {\"Code\":0,\"Ret\": xxxx }"); - - - } catch (Exception e) { - collector.logStepFail("Failed to delegateCall delegate_call_ppos Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_delegate_call_ppos_Staking",sourcePrefix = "wasm") - public void testDelegateCallPPOS4Staking() { - try { - - prepare(); - - // 测试跨合约调 ppos合约 - - - // 部署 - ContractDelegateCallPPOS ppos = ContractDelegateCallPPOS.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy delegate_call_ppos:" + ppos.getTransactionReceipt().get().getGasUsed()); - - /** - * 质押 - * - * typ: 0 - * benefitAddress: 0xd87E10F8efd2C32f5e88b7C279953aEF6EE58902 - * nodeId: ced880d4769331f47af07a8d1b79de1e40c95a37ea1890bb9d3f0da8349e1a7c0ea4cadbb9c5bf185b051061eef8e5eadca251c24e1db1d9faf0fb24cbd06f9a - * externalId: xssssddddffffggggg - * nodeName: Gavin, China - * website: https://www.Gavin.network - * details: Gavin super node - * amount: 1000000000000000000000000 - * rewardPer: 5000 - * programVersion: 65536 - * programVersionSign: 0xa6b8f5e2de519991b567b7c9af9cdf6adb331be5c4b79d26ba0dcd1fb2fbab7a276a36944765997f4d18d6135b515d9de7cceb2d7af4338f4fedb6acdc050f8001 - * blsPubKey: e5c3fcd6ce33c06aae22113977396c295728b8c01e0bc9188d2f3ffe52ea97b465639731f3cd4956a26e3e35f96e2a10646f28a352c6453be54dda05b703c31f0fbda3abc55a75151788338917f5a60b26f92bd15cdaf0dc00779a62056f3a00 - * blsProof: 46e9c92915ad2b423e9eea33482d2615f6a17a15a6fa3b99e3e83bc394700d14c7ace638b34be70e6903724ca217b3cf4ff85db6f38e83f06de95de2c0370916 - */ - String createStakingInput = "0xf901b1838203e881809594d87e10f8efd2c32f5e88b7c279953aef6ee58902b842b840ced880d4769331f47af07a8d1b79de1e40c95a37ea1890bb9d3f0da8349e1a7c0ea4cadbb9c5bf185b051061eef8e5eadca251c24e1db1d9faf0fb24cbd06f9a93927873737373646464646666666667676767678d8c476176696e2c204368696e619a9968747470733a2f2f7777772e476176696e2e6e6574776f726b9190476176696e207375706572206e6f64658b8ad3c21bcecceda1000000838213888483010000b843b841a6b8f5e2de519991b567b7c9af9cdf6adb331be5c4b79d26ba0dcd1fb2fbab7a276a36944765997f4d18d6135b515d9de7cceb2d7af4338f4fedb6acdc050f8001b862b860e5c3fcd6ce33c06aae22113977396c295728b8c01e0bc9188d2f3ffe52ea97b465639731f3cd4956a26e3e35f96e2a10646f28a352c6453be54dda05b703c31f0fbda3abc55a75151788338917f5a60b26f92bd15cdaf0dc00779a62056f3a00b842b84046e9c92915ad2b423e9eea33482d2615f6a17a15a6fa3b99e3e83bc394700d14c7ace638b34be70e6903724ca217b3cf4ff85db6f38e83f06de95de2c0370916"; - - TransactionReceipt createStakingReceipt = ppos.delegate_call_ppos_send(stakingContractAddr, createStakingInput, Uint64.of(60000000l)).send(); - - String createStakingDataHex = createStakingReceipt.getLogs().get(0).getData(); - String createStakingDataStr = DataChangeUtil.decodeSystemContractRlp(createStakingDataHex, chainId); - String createStakingExpectData = "301005"; - - collector.logStepPass("delegate_call_ppos createStaking successfully txHash:" + createStakingReceipt.getTransactionHash()); - collector.assertEqual(createStakingDataStr, createStakingExpectData); - - - /** - * 查询 候选人详情 - * - * nodeId: ced880d4769331f47af07a8d1b79de1e40c95a37ea1890bb9d3f0da8349e1a7c0ea4cadbb9c5bf185b051061eef8e5eadca251c24e1db1d9faf0fb24cbd06f9a - * - * - */ - - String getCandidateInfoInput = "0xf84883820451b842b840ced880d4769331f47af07a8d1b79de1e40c95a37ea1890bb9d3f0da8349e1a7c0ea4cadbb9c5bf185b051061eef8e5eadca251c24e1db1d9faf0fb24cbd06f9a"; - String getCandidateInfoHexStr = ppos.delegate_call_ppos_query(stakingContractAddr, getCandidateInfoInput, Uint64.of(60000000l)).send(); - byte[] getCandidateInfoByte = DataChangeUtil.hexToByteArray(getCandidateInfoHexStr); - String getCandidateInfoStr = new String(getCandidateInfoByte); - ContractCrossCallPPOSTest.pposResult res = gson.fromJson(getCandidateInfoStr, ContractCrossCallPPOSTest.pposResult.class); - collector.assertEqual(res.Code, 301204, "查询候选人详情 result == expect res: {\"Code\":301204,\"Ret\":\"Query candidate info failed:Candidate info is not found\"}"); - - } catch (Exception e) { - collector.logStepFail("Failed to delegateCall delegate_call_ppos Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_delegate_call_ppos_Slashing",sourcePrefix = "wasm") - public void testDelegateCallPPOS4Slashing() { - try { - - prepare(); - - // 测试跨合约调 ppos合约 - - - // 部署 - ContractDelegateCallPPOS ppos = ContractDelegateCallPPOS.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy delegate_call_ppos:" + ppos.getTransactionReceipt().get().getGasUsed()); - - /** - * 举报 - * - * dupType: 1 - * data: { - * "prepareA": { - * "epoch": 1, - * "viewNumber": 1, - * "blockHash": "0xbb6d4b83af8667929a9cb4918bbf790a97bb136775353765388d0add3437cde6", - * "blockNumber": 1, - * "blockIndex": 1, - * "blockData": "0x45b20c5ba595be254943aa57cc80562e84f1fb3bafbf4a414e30570c93a39579", - * "validateNode": { - * "index": 0, - * "address": "0x195667cdefcad94c521bdff0bf85079761e0f8f3", - * "nodeId": "51c0559c065400151377d71acd7a17282a7c8abcfefdb11992dcecafde15e100b8e31e1a5e74834a04792d016f166c80b9923423fe280570e8131debf591d483", - * "blsPubKey": "752fe419bbdc2d2222009e450f2932657bbc2370028d396ba556a49439fe1cc11903354dcb6dac552a124e0b3db0d90edcd334d7aabda0c3f1ade12ca22372f876212ac456d549dbbd04d2c8c8fb3e33760215e114b4d60313c142f7b8bbfd87" - * }, - * "signature": "0x36015fee15253487e8125b86505377d8540b1a95d1a6b13f714baa55b12bd06ec7d5755a98230cdc88858470afa8cb0000000000000000000000000000000000" - * }, - * "prepareB": { - * "epoch": 1, - * "viewNumber": 1, - * "blockHash": "0xf46c45f7ebb4a999dd030b9f799198b785654293dbe41aa7e909223af0e8c4ba", - * "blockNumber": 1, - * "blockIndex": 1, - * "blockData": "0xd630e96d127f55319392f20d4fd917e3e7cba19ad366c031b9dff05e056d9420", - * "validateNode": { - * "index": 0, - * "address": "0x195667cdefcad94c521bdff0bf85079761e0f8f3", - * "nodeId": "51c0559c065400151377d71acd7a17282a7c8abcfefdb11992dcecafde15e100b8e31e1a5e74834a04792d016f166c80b9923423fe280570e8131debf591d483", - * "blsPubKey": "752fe419bbdc2d2222009e450f2932657bbc2370028d396ba556a49439fe1cc11903354dcb6dac552a124e0b3db0d90edcd334d7aabda0c3f1ade12ca22372f876212ac456d549dbbd04d2c8c8fb3e33760215e114b4d60313c142f7b8bbfd87" - * }, - * "signature": "0x783892b9b766f9f4c2a1d45b1fd53ca9ea56a82e38a998939edc17bc7fd756267d3c145c03bc6c1412302cf590645d8200000000000000000000000000000000" - * } - * } - */ - String reportDuplicateSignInput = "0xf907e683820bb801b907deb907db7b0a20202020202020202020227072657061726541223a207b0a20202020202020202020202265706f6368223a20312c0a202020202020202020202022766965774e756d626572223a20312c0a202020202020202020202022626c6f636b48617368223a2022307862623664346238336166383636373932396139636234393138626266373930613937626231333637373533353337363533383864306164643334333763646536222c0a202020202020202020202022626c6f636b4e756d626572223a20312c0a202020202020202020202022626c6f636b496e646578223a20312c0a202020202020202020202022626c6f636b44617461223a2022307834356232306335626135393562653235343934336161353763633830353632653834663166623362616662663461343134653330353730633933613339353739222c0a20202020202020202020202276616c69646174654e6f6465223a207b0a20202020202020202020202022696e646578223a20302c0a2020202020202020202020202261646472657373223a2022307831393536363763646566636164393463353231626466663062663835303739373631653066386633222c0a202020202020202020202020226e6f64654964223a20223531633035353963303635343030313531333737643731616364376131373238326137633861626366656664623131393932646365636166646531356531303062386533316531613565373438333461303437393264303136663136366338306239393233343233666532383035373065383133316465626635393164343833222c0a20202020202020202020202022626c735075624b6579223a2022373532666534313962626463326432323232303039653435306632393332363537626263323337303032386433393662613535366134393433396665316363313139303333353464636236646163353532613132346530623364623064393065646364333334643761616264613063336631616465313263613232333732663837363231326163343536643534396462626430346432633863386662336533333736303231356531313462346436303331336331343266376238626266643837220a20202020202020202020207d2c0a2020202020202020202020227369676e6174757265223a202230783336303135666565313532353334383765383132356238363530353337376438353430623161393564316136623133663731346261613535623132626430366563376435373535613938323330636463383838353834373061666138636230303030303030303030303030303030303030303030303030303030303030303030220a202020202020202020207d2c0a20202020202020202020227072657061726542223a207b0a20202020202020202020202265706f6368223a20312c0a202020202020202020202022766965774e756d626572223a20312c0a202020202020202020202022626c6f636b48617368223a2022307866343663343566376562623461393939646430333062396637393931393862373835363534323933646265343161613765393039323233616630653863346261222c0a202020202020202020202022626c6f636b4e756d626572223a20312c0a202020202020202020202022626c6f636b496e646578223a20312c0a202020202020202020202022626c6f636b44617461223a2022307864363330653936643132376635353331393339326632306434666439313765336537636261313961643336366330333162396466663035653035366439343230222c0a20202020202020202020202276616c69646174654e6f6465223a207b0a20202020202020202020202022696e646578223a20302c0a2020202020202020202020202261646472657373223a2022307831393536363763646566636164393463353231626466663062663835303739373631653066386633222c0a202020202020202020202020226e6f64654964223a20223531633035353963303635343030313531333737643731616364376131373238326137633861626366656664623131393932646365636166646531356531303062386533316531613565373438333461303437393264303136663136366338306239393233343233666532383035373065383133316465626635393164343833222c0a20202020202020202020202022626c735075624b6579223a2022373532666534313962626463326432323232303039653435306632393332363537626263323337303032386433393662613535366134393433396665316363313139303333353464636236646163353532613132346530623364623064393065646364333334643761616264613063336631616465313263613232333732663837363231326163343536643534396462626430346432633863386662336533333736303231356531313462346436303331336331343266376238626266643837220a20202020202020202020207d2c0a2020202020202020202020227369676e6174757265223a202230783738333839326239623736366639663463326131643435623166643533636139656135366138326533386139393839333965646331376263376664373536323637643363313435633033626336633134313233303263663539303634356438323030303030303030303030303030303030303030303030303030303030303030220a202020202020202020207d0a2020202020202020207d"; - - TransactionReceipt reportDuplicateSignReceipt = ppos.delegate_call_ppos_send(slashingContractAddr, reportDuplicateSignInput, Uint64.of(60000000l)).send(); - - String reportDuplicateSignDataHex = reportDuplicateSignReceipt.getLogs().get(0).getData(); - String reportDuplicateSignDataStr = DataChangeUtil.decodeSystemContractRlp(reportDuplicateSignDataHex, chainId); - String reportDuplicateSignExpectData = "0"; - boolean actual = reportDuplicateSignDataStr.equals(reportDuplicateSignExpectData); - - collector.logStepPass("delegate_call_ppos reportDuplicateSign successfully txHash:" + reportDuplicateSignReceipt.getTransactionHash()); - collector.assertEqual(actual, false); - - - /** - * 查询 节点是否有多签过 - * - * dupType: 1 - * addr: 0x9e3e0f0f366b26b965f3aa3ed67603fb480b1257 - * blockNumber: 1 - * - * 0 - */ - - String checkDuplicateSignInput = "0xf183820bb801abaa6c6178316e636c713772656b64766e746a65306e34676c64766173726c6479716b796a686b7667727172"; - String checkDuplicateSignHexStr = ppos.delegate_call_ppos_query(slashingContractAddr, checkDuplicateSignInput, Uint64.of(60000000l)).send(); - byte[] checkDuplicateSignByte = DataChangeUtil.hexToByteArray(checkDuplicateSignHexStr); - String checkDuplicateSignStr = new String(checkDuplicateSignByte); - ContractCrossCallPPOSTest.pposResult res = gson.fromJson(checkDuplicateSignStr, ContractCrossCallPPOSTest.pposResult.class); - if(res != null){ - collector.assertEqual(res.Code, 0, "查询节点是否有多签过 result == expect res: {\"Code\":0,\"Ret\":\"\"}"); - } - - } catch (Exception e) { - collector.logStepFail("Failed to delegateCall delegate_call_ppos Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_delegate_call_ppos_Governance",sourcePrefix = "wasm") - public void testDelegateCallPPOS4Governance() { - try { - - prepare(); - - // 测试跨合约调 ppos合约 - - - // 部署 - ContractDelegateCallPPOS ppos = ContractDelegateCallPPOS.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy delegate_call_ppos:" + ppos.getTransactionReceipt().get().getGasUsed()); - - /** - * 提交文本提案 - * - * verifierID: ced880d4769331f47af07a8d1b79de1e40c95a37ea1890bb9d3f0da8349e1a7c0ea4cadbb9c5bf185b051061eef8e5eadca251c24e1db1d9faf0fb24cbd06f9a - * PIPID: textUrl - */ - String submitTextInput = "0xf851838207d0b842b840ced880d4769331f47af07a8d1b79de1e40c95a37ea1890bb9d3f0da8349e1a7c0ea4cadbb9c5bf185b051061eef8e5eadca251c24e1db1d9faf0fb24cbd06f9a88877465787455726c"; - - TransactionReceipt submitTextReceipt = ppos.delegate_call_ppos_send(govContractAddr, submitTextInput, Uint64.of(60000000l)).send(); - - String submitTextDataHex = submitTextReceipt.getLogs().get(0).getData(); - String submitTextDataStr =DataChangeUtil.decodeSystemContractRlp(submitTextDataHex, chainId); - String submitTextExpectData = "302022"; - - collector.logStepPass("delegate_call_ppos submitText successfully txHash:" + submitTextReceipt.getTransactionHash()); - collector.assertEqual(submitTextDataStr, submitTextExpectData); - - - /** - * 查询 提案 - * - * proposalID: 0x12c171900f010b17e969702efa044d077e86808212c171900f010b17e969702e - * - * - */ - - String getProposalInput = "0xe683820834a1a012c171900f010b17e969702efa044d077e86808212c171900f010b17e969702e"; - String getProposalHexStr = ppos.delegate_call_ppos_query(govContractAddr, getProposalInput, Uint64.of(60000000l)).send(); - byte[] getProposalByte = DataChangeUtil.hexToByteArray(getProposalHexStr); - String getProposalStr = new String(getProposalByte); - ContractCrossCallPPOSTest.pposResult res = gson.fromJson(getProposalStr, ContractCrossCallPPOSTest.pposResult.class); - collector.assertEqual(res.Code, 302006, "查询提案 result == expect res: {\"Code\":302006,\"Ret\":\"proposal not found\"}"); - - } catch (Exception e) { - collector.logStepFail("Failed to delegateCall delegate_call_ppos Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_delegate_call_ppos_DelegateReward",sourcePrefix = "wasm") - public void testDelegateCallPPOS4DelegateReward() { - try { - - prepare(); - - // 测试跨合约调 ppos合约 - - - // 部署 - ContractDelegateCallPPOS ppos = ContractDelegateCallPPOS.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy delegate_call_ppos:" + ppos.getTransactionReceipt().get().getGasUsed()); - - /** - * 提取委托奖励 - * - */ - String withdrawDelegateRewardInput = "0xc483821388"; - - TransactionReceipt withdrawDelegateRewardReceipt = ppos.delegate_call_ppos_send(delegateRewardPoolAddr, withdrawDelegateRewardInput, Uint64.of(60000000l)).send(); - - String withdrawDelegateRewardDataHex = withdrawDelegateRewardReceipt.getLogs().get(0).getData(); - String withdrawDelegateRewardDataStr = DataChangeUtil.decodeSystemContractRlp(withdrawDelegateRewardDataHex, chainId); - String withdrawDelegateRewardExpectData = "305001"; - - collector.logStepPass("delegate_call_ppos withdrawDelegateReward successfully txHash:" + withdrawDelegateRewardReceipt.getTransactionHash()); - collector.assertEqual(withdrawDelegateRewardDataStr, withdrawDelegateRewardExpectData); - - - /** - * 查询 账户在各节点未提取委托奖励 - * - " Addr": "0x12c171900f010b17e969702efa044d077e868082" - * - * NodeIDs": [ - * "db18af9be2af9dff2347c3d06db4b1bada0598d099a210275251b68fa7b5a863d47fcdd382cc4b3ea01e5b55e9dd0bdbce654133b7f58928ce74629d5e68b974", - * "1f3a8672348ff6b789e416762ad53e69063138b8eb4d8780101658f24b2369f1a8e09499226b467d8bc0c4e03e1dc903df857eeb3c67733d21b6aaee2840e429"] - * - * - * - */ - String getDelegateRewardInput = "0xf8a2838213ec959412c171900f010b17e969702efa044d077e868082b886f884b840db18af9be2af9dff2347c3d06db4b1bada0598d099a210275251b68fa7b5a863d47fcdd382cc4b3ea01e5b55e9dd0bdbce654133b7f58928ce74629d5e68b974b8401f3a8672348ff6b789e416762ad53e69063138b8eb4d8780101658f24b2369f1a8e09499226b467d8bc0c4e03e1dc903df857eeb3c67733d21b6aaee2840e429"; - String getDelegateRewardHexStr = ppos.delegate_call_ppos_query(delegateRewardPoolAddr, getDelegateRewardInput, Uint64.of(60000000l)).send(); - byte[] getDelegateRewardByte = DataChangeUtil.hexToByteArray(getDelegateRewardHexStr); - String getDelegateRewardStr = new String(getDelegateRewardByte); - ContractCrossCallPPOSTest.pposResult res = gson.fromJson(getDelegateRewardStr, ContractCrossCallPPOSTest.pposResult.class); - collector.assertEqual(res.Code, 305001, "查询候选人详情 result == expect res: {\"Code\":305001,\"Ret\":\"delegation info not found\"}"); - - } catch (Exception e) { - collector.logStepFail("Failed to delegateCall delegate_call_ppos Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallStorageStrTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallStorageStrTest.java deleted file mode 100644 index 4c8da1a82c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallStorageStrTest.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.test.wasm.contract_cross_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractDelegateCallStorageString; -import network.platon.contracts.wasm.ContractStorageString; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -public class ContractDelegateCallStorageStrTest extends WASMContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_delegate_call_storage_str",sourcePrefix = "wasm") - public void testDelegateCallContract() { - - try { - prepare(); - - // deploy the target contract which the name is `storge_str`, first - ContractStorageString strc = ContractStorageString.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy storge_str contract:" + strc.getTransactionReceipt().get().getGasUsed()); - - - String strcAddr = strc.getContractAddress(); - String helloTxHash = strc.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("storge_str deployed sucessfully, contractAddress:" + strcAddr + ", txHash:" + helloTxHash); - - - // deploy the delegate_call contract second - ContractDelegateCallStorageString delegateCall = ContractDelegateCallStorageString.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy delegate_call_storge_str contract:" + delegateCall.getTransactionReceipt().get().getGasUsed()); - - String delegateCallAddr = delegateCall.getContractAddress(); - String delegateCallTxHash = delegateCall.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("cross_delegate_call_storage_str deployed sucessfully, contractAddress:" + delegateCallAddr + ", txHash:" + delegateCallTxHash); - - - // check arr size 1st - String strcStr = strc.get_string().send(); - collector.logStepPass("the msg count in arr of storge_str contract:" + strcStr); - collector.assertEqual(strcStr, ""); - - String delegateCallStr = delegateCall.get_string().send(); - collector.logStepPass("the msg count in arr of cross_delegate_call_storage_str contract:" + delegateCallStr); - collector.assertEqual(delegateCallStr, ""); - - String msg = "Gavin"; - - TransactionReceipt receipt = delegateCall.delegate_call_set_string(strcAddr, msg, Uint64.of(60000000l)).send(); - collector.logStepPass("cross_delegate_call_storage_str call_add_message successfully txHash:" + receipt.getTransactionHash()); - - - // check arr size 2nd - strcStr = strc.get_string().send(); - collector.logStepPass("the msg count in arr of storge_str contract:" + strcStr); - collector.assertEqual(strcStr, ""); - - delegateCallStr = delegateCall.get_string().send(); - collector.logStepPass("the msg count in arr of cross_delegate_call_storage_str contract:" + delegateCallStr); - collector.assertEqual(delegateCallStr, msg); - - } catch (Exception e) { - collector.logStepFail("Failed to call cross_delegate_call_storage_str Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallStorageVecTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallStorageVecTest.java deleted file mode 100644 index 4528127b16..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_cross_call/ContractDelegateCallStorageVecTest.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.test.wasm.contract_cross_call; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractDelegateCallStorageVector; -import network.platon.contracts.wasm.ContractStorageVector; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -public class ContractDelegateCallStorageVecTest extends WASMContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xujiacan", showName = "wasm.contract_delegate_call_storage_vector",sourcePrefix = "wasm") - public void testDelegateCallContract() { - - try { - prepare(); - - // deploy the target contract which the name is `storage_vec`, first - ContractStorageVector target = ContractStorageVector.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy storage_vec contract:" + target.getTransactionReceipt().get().getGasUsed()); - - - String storage_Addr = target.getContractAddress(); - String sotrage_vec_TxHash = target.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractTarget deployed sucessfully, contractAddress:" + storage_Addr + ", txHash:" + sotrage_vec_TxHash); - - - // deploy the delegate_call contract second - ContractDelegateCallStorageVector delegateCall = ContractDelegateCallStorageVector.deploy(web3j, transactionManager, provider, chainId).send(); - collector.logStepPass("gas used after deploy delegate_call_storage_vec contract:" + delegateCall.getTransactionReceipt().get().getGasUsed()); - - String delegateCallAddr = delegateCall.getContractAddress(); - String delegateCallTxHash = delegateCall.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractDelegateCall deployed sucessfully, contractAddress:" + delegateCallAddr + ", txHash:" + delegateCallTxHash); - - - // check arr size 1st - Uint64 vecLen = target.get_vector_size().send(); - collector.logStepPass("the msg count in arr of storage_vec contract:" + vecLen); - collector.assertEqual(vecLen.getValue().longValue(), 0l); - - Uint64 delegateCallVecLen = delegateCall.get_vector_size().send(); - collector.logStepPass("the msg count in arr of delegateCall contract:" + delegateCallVecLen); - collector.assertEqual(delegateCallVecLen.getValue().longValue(), 0l); - - // delegate call contract start - ContractDelegateCallStorageVector.My_message myMessage = new ContractDelegateCallStorageVector.My_message(); - myMessage.baseClass = new ContractDelegateCallStorageVector.Message(); - myMessage.baseClass.head = "Gavin Head"; - myMessage.body = "Gavin Body"; - myMessage.end = "Gavin End"; - - TransactionReceipt receipt = delegateCall.delegate_call_add_message(storage_Addr, myMessage, Uint64.of(60000000l)).send(); - collector.logStepPass("ContractDelegateCall call_add_message successfully txHash:" + receipt.getTransactionHash()); - - - // check arr size 2nd - vecLen = target.get_vector_size().send(); - collector.logStepPass("the msg count in arr of storage_vec contract:" + vecLen); - collector.assertEqual(vecLen.getValue().longValue(), 0l); - - delegateCallVecLen = delegateCall.get_vector_size().send(); - collector.logStepPass("the msg count in arr of delegateCall contract:" + delegateCallVecLen); - collector.assertEqual(delegateCallVecLen.getValue().longValue(), 1l); - - } catch (Exception e) { - collector.logStepFail("Failed to DelegateCall Contract,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractCheckStatusTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractCheckStatusTest.java deleted file mode 100644 index 74af16693d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractCheckStatusTest.java +++ /dev/null @@ -1,80 +0,0 @@ -package network.platon.test.wasm.contract_distory; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractDistory; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title wasm同一个合约之间局部状态是否会相互影响验证 - * @description: - * @author: hudenian - * @create: 2020/03/05 - */ -public class ContractCheckStatusTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.ContractCheckStatusTest同一个合约之间局部状态是否会相互影响验证",sourcePrefix = "wasm") - public void testDistoryContract() { - - String nameOne = "valueOne"; - String nameTwo = "valueTwo"; - String nameThree = "nameThree"; - try { - prepare(); - //合约第一次部署 - ContractDistory contractDistory = ContractDistory.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractDistory.getContractAddress(); - String transactionHash = contractDistory.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractDistory first issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("ContractDistory first deploy gas used:" + contractDistory.getTransactionReceipt().get().getGasUsed()); - - //合约第二次部署 - ContractDistory contractDistoryTwo = ContractDistory.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddressTwo = contractDistoryTwo.getContractAddress(); - transactionHash = contractDistoryTwo.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractDistory second issued successfully.contractAddress:" + contractAddressTwo + ", hash:" + transactionHash); - collector.logStepPass("ContractDistory second deploy gas used:" + contractDistoryTwo.getTransactionReceipt().get().getGasUsed()); - - - //contractDistory合约设置值 - TransactionReceipt transactionReceipt = contractDistory.set_string(nameOne).send(); - collector.logStepPass("contractDistory set_string successfully hash:" + transactionReceipt.getTransactionHash()); - //contractDistoryTwo合约设置值 - transactionReceipt = contractDistoryTwo.set_string(nameTwo).send(); - collector.logStepPass("contractDistoryTwo set_string successfully hash:" + transactionReceipt.getTransactionHash()); - - - String chainNameOne = contractDistory.get_string().send(); - collector.logStepPass("contractDistory get_string successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainNameOne,nameOne); - - String chainNameTwo = contractDistoryTwo.get_string().send(); - collector.logStepPass("contractDistoryTwo get_string successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainNameTwo,nameTwo); - - //第一个合约销毁看对第二个合约是否有影响 - transactionReceipt = contractDistory.distory_contract().send(); - collector.logStepPass("ContractDistory distory_contract successfully hash:" + transactionReceipt.getTransactionHash()); - - //验证第一个合约销毁对第二个合约没有影响 - transactionReceipt = contractDistoryTwo.set_string(nameThree).send(); - collector.logStepPass("contractDistoryTwo set_string successfully hash:" + transactionReceipt.getTransactionHash()); - - - String chainNameThree = contractDistoryTwo.get_string().send(); - collector.logStepPass("contractDistoryTwo get_string successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainNameThree,nameThree); - - } catch (Exception e) { - if(e instanceof ArrayIndexOutOfBoundsException){ - collector.logStepPass("ContractDistoryed and could not call contract function"); - }else{ - collector.logStepFail("ContractDistoryTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractDistoryCheckBalanceTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractDistoryCheckBalanceTest.java deleted file mode 100644 index 90e8e2e17e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractDistoryCheckBalanceTest.java +++ /dev/null @@ -1,51 +0,0 @@ -package network.platon.test.wasm.contract_distory; - -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractDistory; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; - -/** - * @title 合约销毁后,对合约账户余额进行校验 - * @description: - * @author: hudenian - * @create: 2020/02/16 - */ -public class ContractDistoryCheckBalanceTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_distory合约销毁余额校验",sourcePrefix = "wasm") - public void testDistoryContract() { - - try { - prepare(); - ContractDistory contractDistory = ContractDistory.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractDistory.getContractAddress(); - String transactionHash = contractDistory.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractDistory issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractDistory.getTransactionReceipt().get().getGasUsed()); - - //合约销毁 - TransactionReceipt transactionReceipt = contractDistory.distory_contract().send(); - collector.logStepPass("ContractDistory distory_contract successfully hash:" + transactionReceipt.getTransactionHash()); - - //合约销毁后余额为0 - BigInteger afterDistoryBalance = web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("After distory, contract balance is: " + afterDistoryBalance); - collector.assertEqual(afterDistoryBalance.toString(),"0"); - - } catch (Exception e) { - if(e instanceof ArrayIndexOutOfBoundsException){ - collector.logStepPass("ContractDistoryCheckBalanceTest and could not call contract function"); - }else{ - collector.logStepFail("ContractDistoryCheckBalanceTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractDistoryTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractDistoryTest.java deleted file mode 100644 index da3ba79887..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractDistoryTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.wasm.contract_distory; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractDistory; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 合约销毁 - * @description: - * @author: hudenian - * @create: 2020/02/07 - */ -public class ContractDistoryTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_distory合约销毁",sourcePrefix = "wasm") - public void testDistoryContract() { - - String name = "hudenian"; - try { - prepare(); - ContractDistory contractDistory = ContractDistory.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractDistory.getContractAddress(); - String transactionHash = contractDistory.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractDistory issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractDistory.getTransactionReceipt().get().getGasUsed()); - - //合约设置值 - TransactionReceipt transactionReceipt = contractDistory.set_string(name).send(); - collector.logStepPass("ContractDistory set_string successfully hash:" + transactionReceipt.getTransactionHash()); - - //合约销毁前查询合约上的数据 - String chainName = contractDistory.get_string().send(); - collector.logStepPass("ContractDistory get_string successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainName,name); - - //合约销毁 - transactionReceipt = contractDistory.distory_contract().send(); - collector.logStepPass("ContractDistory distory_contract successfully hash:" + transactionReceipt.getTransactionHash()); - - //合约销毁后查询合约上的数据 - String chainName1 = contractDistory.get_string().send(); - collector.logStepPass("ContractDistory get_string successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainName1,name); - - } catch (Exception e) { - if(e instanceof ArrayIndexOutOfBoundsException){ - collector.logStepPass("ContractDistoryed and could not call contract function"); - }else{ - collector.logStepFail("ContractDistoryTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractDistoryTransferBalanceTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractDistoryTransferBalanceTest.java deleted file mode 100644 index cbfa5e468f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractDistoryTransferBalanceTest.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.test.wasm.contract_distory; - -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractDistory; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigDecimal; -import java.math.BigInteger; - -/** - * @title 合约销毁后,销毁合约的余额转移至调用者账户中 - * @description: - * @author: hudenian - * @create: 2020/02/18 - */ -public class ContractDistoryTransferBalanceTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_distory销毁合约的余额转移至调用者账户中",sourcePrefix = "wasm") - public void testDistoryContract() { - - String transferMoney = "10000000000000000000"; - - try { - prepare(); - ContractDistory contractDistory = ContractDistory.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractDistory.getContractAddress(); - String transactionHash = contractDistory.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractDistory issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractDistory.getTransactionReceipt().get().getGasUsed()); - - //合约销毁前往合约转账 - Transfer transfer = new Transfer(web3j, transactionManager); - TransactionReceipt transactionReceiptTransfer = transfer.sendFunds(contractAddress, new BigDecimal(transferMoney), Convert.Unit.VON).send(); - - collector.logStepPass("transfer.status:" + transactionReceiptTransfer.getStatus() + ", hash:" + transactionReceiptTransfer.getTransactionHash() + ", gas used:" + transactionReceiptTransfer.getGasUsed()); - - //查询当前调用者余额 - BigInteger originBalance = web3j.platonGetBalance(credentials.getAddress(chainId), DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("当前用户销毁合约之前账户余额为>>>"+originBalance); - - - //合约销毁 - TransactionReceipt transactionReceipt = contractDistory.distory_contract().send(); - collector.logStepPass("ContractDistory distory_contract successfully hash:" + transactionReceipt.getTransactionHash()); - - //合约销毁后余额为0 - BigInteger afterDistoryBalance = web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("After distory, contract balance is: " + afterDistoryBalance); - collector.assertEqual(afterDistoryBalance.toString(),"0"); - - //查询当前调用者余额 - BigInteger afterBalance = web3j.platonGetBalance(credentials.getAddress(chainId), DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("当前用户销毁合约之后账户余额为>>>"+afterBalance); - - //校验当前用户的余额增加值是否等于被销毁合约中的余额 - if(afterBalance.subtract(originBalance).longValue()>0){ - collector.logStepPass("销毁合约后用户账户余额增加"); - }else{ - collector.logStepFail("销毁合约后用户账户余额没有增加","销毁用户合约账户余额校验失败"); - } - - } catch (Exception e) { - if(e instanceof ArrayIndexOutOfBoundsException){ - collector.logStepPass("ContractDistoryTransferBalanceTest and could not call contract function"); - }else{ - collector.logStepFail("ContractDistoryTransferBalanceTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractDistoryWithPermissionCheckTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractDistoryWithPermissionCheckTest.java deleted file mode 100644 index c8ed98a04d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_distory/ContractDistoryWithPermissionCheckTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.wasm.contract_distory; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractDistoryWithPermissionCheck; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 合约销毁,带用户权限校验 - * @description: - * @author: hudenian - * @create: 2020/02/19 - */ -public class ContractDistoryWithPermissionCheckTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_distory合约销毁带用户权限校验",sourcePrefix = "wasm") - public void testDistoryContractCheckPermission() { - - String name = "hudenian"; - try { - prepare(); - ContractDistoryWithPermissionCheck ontractDistoryWithPermissionCheck = ContractDistoryWithPermissionCheck.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = ontractDistoryWithPermissionCheck.getContractAddress(); - String transactionHash = ontractDistoryWithPermissionCheck.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractDistoryWithPermissionCheck issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + ontractDistoryWithPermissionCheck.getTransactionReceipt().get().getGasUsed()); - - //合约设置值 - TransactionReceipt transactionReceipt = ontractDistoryWithPermissionCheck.set_string(name).send(); - collector.logStepPass("ContractDistoryWithPermissionCheck set_string successfully hash:" + transactionReceipt.getTransactionHash()); - - //合约销毁前查询合约上的数据 - String chainName = ontractDistoryWithPermissionCheck.get_string().send(); - collector.logStepPass("ContractDistoryWithPermissionCheck get_string successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainName,name); - - //合约销毁 - transactionReceipt = ontractDistoryWithPermissionCheck.distory_contract().send(); - collector.logStepPass("ContractDistoryWithPermissionCheck distory_contract successfully hash:" + transactionReceipt.getTransactionHash()); - - //合约销毁后查询合约上的数据 - String chainName1 = ontractDistoryWithPermissionCheck.get_string().send(); - collector.logStepPass("ContractDistoryWithPermissionCheck get_string successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainName1,name); - - } catch (Exception e) { - if(e instanceof ArrayIndexOutOfBoundsException){ - collector.logStepPass("ContractDistoryWithPermissionCheckTest and could not call contract function"); - }else{ - collector.logStepFail("ContractDistoryWithPermissionCheckTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractBridgeTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractBridgeTest.java deleted file mode 100644 index 7e01b41a06..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractBridgeTest.java +++ /dev/null @@ -1,129 +0,0 @@ -package network.platon.test.wasm.contract_docs; - -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import com.alaya.utils.Numeric; -import network.platon.test.datatypes.Xuint128; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ForeignBridge; -import network.platon.contracts.wasm.HomeBridge; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigDecimal; -import java.math.BigInteger; - -/** - * @author zjsunzone - *

- * This class is for docs. - */ -public class ContractBridgeTest extends WASMContractPrepareTest { - - @Before - public void before() { - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.contract_HomeBridge", sourcePrefix = "wasm") - public void testHomeBridge() { - try { - // deploy contract. -// WasmAddress wasmAddress1 = new WasmAddress("lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2"); - WasmAddress wasmAddress1 = new WasmAddress("atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq"); -// WasmAddress wasmAddress2 = new WasmAddress("lax1fyeszufxwxk62p46djncj86rd553skpptsj8v6"); - WasmAddress wasmAddress2 = new WasmAddress("atx1fyeszufxwxk62p46djncj86rd553skpph926ws"); - HomeBridge contract = HomeBridge.deploy(web3j, transactionManager, provider, chainId, - Xuint128.ONE, new WasmAddress[]{wasmAddress1, wasmAddress2}, Xuint128.ONE).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("contract_HomeBridge issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("contract_HomeBridge deploy successfully. gasUsed: " + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // transfer to contract - Transfer t = new Transfer(web3j, transactionManager); - t.sendFunds(contractAddress, new BigDecimal(100), Convert.Unit.ATP, provider.getGasPrice(), provider.getGasLimit()).send(); - BigInteger cbalance = web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("Transfer to contract , address: " + contractAddress + " cbalance: " + cbalance); - - // - TransactionReceipt setTr = contract.setGasLimitWithdrawRelay(new Xuint128("100000")).send(); - collector.logStepPass("Send setGasLimitWithdrawRelay, txHash: " + setTr.getTransactionHash() - + " gasUsed: " + setTr.getGasUsed()); - collector.logStepPass("Send setGasLimitWithdrawRelay ,logs size: " + setTr.getLogs().size()); - HomeBridge.GasConsumptionLimitsUpdatedEventResponse setEvent = contract.getGasConsumptionLimitsUpdatedEvents(setTr).get(0); - collector.logStepPass("Send setGasLimitWithdrawRelay, event args1:" + setEvent.arg1); - - // withdraw. - byte[] vs = new byte[0]; - byte[][] rs = new byte[0][256]; - byte[][] ss = new byte[0][256]; - byte[] message = new byte[116]; - collector.logStepPass("message size: " + message.length); - TransactionReceipt withdrawTr = contract.withdraw(vs, rs, ss, message, new BigInteger("1000000000000000000")).send(); - collector.logStepPass("Send withdraw, txHash: " + withdrawTr.getTransactionHash() + " gasUsed: " + withdrawTr.getGasUsed()); - collector.logStepPass("Send withdraw ,logs size: " + withdrawTr.getLogs().size()); - collector.assertTrue(withdrawTr.getLogs().size() != 0); - HomeBridge.WithdrawEventResponse withevent = contract.getWithdrawEvents(withdrawTr).get(0); - collector.logStepPass("Send withdraw ,event response, " - + " arg1: " + withevent.arg1); - - } catch (Exception e) { - collector.logStepFail("contract_HomeBridge failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.contract_ForeignBridge", sourcePrefix = "wasm") - public void testForeignBridge() { - try { - // deploy contract. - ForeignBridge contract = ForeignBridge.deploy(web3j, transactionManager, provider, chainId, - Xuint128.ONE, new WasmAddress[]{new WasmAddress(credentials.getAddress(chainId))}, Xuint128.ONE).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("contract_ForeignBridge issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("contract_ForeignBridge deploy successfully. gasUsed: " + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // setTokenAddress - TransactionReceipt tokenTr = contract.setTokenAddress(new WasmAddress(contractAddress)).send(); - collector.logStepPass("Send setTokenAddress, txHash: " + tokenTr.getTransactionHash() - + " gasUsed: " + tokenTr.getGasUsed()); - collector.logStepPass("Send setTokenAddress ,logs size: " + tokenTr.getLogs().size()); - - // deposit - TransactionReceipt depositTr = contract.deposit(new WasmAddress(credentials.getAddress(chainId)), Uint128.of(1000000), new byte[]{}).send(); - collector.logStepPass("Send deposit, txHash: " + depositTr.getTransactionHash() - + " gasUsed: " + depositTr.getGasUsed()); - collector.logStepPass("Send deposit ,logs size: " + depositTr.getLogs().size()); - collector.assertTrue(depositTr.getLogs().size() != 0); - - // submitSignature - TransactionReceipt submitSignatureTr = contract.submitSignature(new byte[]{}, new byte[116]).send(); - collector.logStepPass("Send submitSignature, txHash: " + submitSignatureTr.getTransactionHash() - + " gasUsed: " + submitSignatureTr.getGasUsed()); - collector.logStepPass("Send submitSignature ,logs size: " + submitSignatureTr.getLogs().size()); - collector.assertTrue(submitSignatureTr.getLogs().size() != 0); - - // signature - byte[] signature = contract.signature(new byte[]{}, Xuint128.TEN).send(); - collector.logStepPass("Call signature, response: " + Numeric.toHexString(signature)); - - - } catch (Exception e) { - collector.logStepFail("contract_ForeignBridge failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractCypherBankTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractCypherBankTest.java deleted file mode 100644 index 6eacc69e4b..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractCypherBankTest.java +++ /dev/null @@ -1,143 +0,0 @@ -package network.platon.test.wasm.contract_docs; - -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import network.platon.test.datatypes.Xuint128; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.Bank; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigDecimal; -import java.math.BigInteger; - -/** - * @author zjsunzone - * - * This class is for docs. - */ -public class ContractCypherBankTest extends WASMContractPrepareTest { - - @Before - public void before(){ - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.contract_CypherBank",sourcePrefix = "wasm") - public void testSimpleStorageContract() { - try { - // deploy contract. - Bank contract = Bank.deploy(web3j, transactionManager, provider,chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("contract_CypherBank issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("contract_CypherBank deploy successfully. gasUsed: " + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // transfer - Transfer t = new Transfer(web3j, transactionManager); - t.sendFunds(contractAddress, new BigDecimal("1"), Convert.Unit.ATP, provider.getGasPrice(), provider.getGasLimit()).send(); - BigInteger cbalance = web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("Transfer to contract , address: " + contractAddress + " cbalance: " + cbalance); - - // tokenSupply - Uint128 tokenSupply = contract.totalSupply().send(); - collector.logStepPass("Call totalSupply, res: " + tokenSupply); - - // exitFee - Uint8 exitFee = contract.exitFee().send(); - collector.logStepPass("Call exitFee, res: " + exitFee.getValue()); - - // buy -// WasmAddress receiver = new WasmAddress("lax1uqug0zq7rcxddndleq4ux2ft3tv6dqljphydrl"); - WasmAddress receiver = new WasmAddress("atx19xdjrg06xz9te85c839zqtelmaj2tgt0ft32k2"); - - TransactionReceipt buyTr = contract.buy(receiver, new BigInteger("100000000000000000000")).send(); - collector.logStepPass("Send buy, txHash: " + buyTr.getTransactionHash() + " gasUsed: " + buyTr.getGasUsed()); - collector.logStepPass("Send buy ,logs size: " + buyTr.getLogs().size()); - /*Bank.TestDataEventResponse testData = contract.getTestDataEvents(buyTr).get(0); - collector.logStepPass("parse logs, args1: " + - testData.arg1.toString() + "" + - " args2: " + testData.arg2 + - " args3: " + testData.arg3);*/ - - // IDD - TransactionReceipt iddTr = contract.IDD().send(); - collector.logStepPass("Send IDD, txHash: " + iddTr.getTransactionHash() + " gasUsed: " + iddTr.getGasUsed()); - collector.logStepPass("Send IDD ,logs size: " + iddTr.getLogs().size()); - - // DivsAddon - //TransactionReceipt divsAddonTr = contract.DivsAddon().send(); - //collector.logStepPass("Send DivsAddon, txHash: " + divsAddonTr.getTransactionHash() + " gasUsed: " + divsAddonTr.getGasUsed()); - //collector.logStepPass("Send DivsAddon ,logs size: " + divsAddonTr.getLogs().size()); - - // reinvest - TransactionReceipt reinvestTr = contract.reinvest().send(); - collector.logStepPass("Send reinvest, txHash: " + reinvestTr.getTransactionHash() + " gasUsed: " + reinvestTr.getGasUsed()); - collector.logStepPass("Send reinvest ,logs size: " + reinvestTr.getLogs().size()); - - // withdraw - TransactionReceipt withdrawTr = contract.withdraw().send(); - collector.logStepPass("Send withdraw, txHash: " + withdrawTr.getTransactionHash() + - " gasUsed: " + withdrawTr.getGasUsed()); - collector.logStepPass("Send withdraw ,logs size: " + withdrawTr.getLogs().size()); - - // sell - TransactionReceipt sellTr = contract.sell(new Xuint128("1000")).send(); - collector.logStepPass("Send sell, txHash: " + sellTr.getTransactionHash() + - " gasUsed: " + sellTr.getGasUsed()); - collector.logStepPass("Send sell ,logs size: " + sellTr.getLogs().size()); - - // transfer -// TransactionReceipt transferTr = contract.transfer(new WasmAddress("lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2"), new Xuint128("300000000000000000")).send(); - TransactionReceipt transferTr = contract.transfer(new WasmAddress("atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq"), new Xuint128("300000000000000000")).send(); - collector.logStepPass("Send transfer, txHash: " + transferTr.getTransactionHash() + - " gasUsed: " + transferTr.getGasUsed()); - collector.logStepPass("Send transfer ,logs size: " + transferTr.getLogs().size()); - - // balanceOf -// Uint128 balanceOf = contract.balanceOf(new WasmAddress("lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2")).send(); - Uint128 balanceOf = contract.balanceOf(new WasmAddress("atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq")).send(); - collector.logStepPass("Call balanceOf, res: " + balanceOf + " expect: " + "300000000000000000"); // - - // myDividends - Uint128 myDividends = contract.myDividends(false).send(); - collector.logStepPass("Call myDividends, res: " + myDividends); - - // dividendsOf -// BigInteger dividendsOf = contract.dividendsOf(new WasmAddress(credentials.getAddress(chainId))).send(); -// Uint128 dividendsOf = contract.dividendsOf(new WasmAddress("lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2")).send(); - Uint128 dividendsOf = contract.dividendsOf(new WasmAddress("atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq")).send(); - collector.logStepPass("Call dividendsOf, res: " + dividendsOf); - - // totalEthereumBalance - Uint128 totalEthereumBalance = contract.totalEthereumBalance().send(); - collector.logStepPass("Call totalEthereumBalance, res: " + totalEthereumBalance); - - // myTokens - Uint128 myTokens = contract.myTokens().send(); - collector.logStepPass("Call myTokens, res: " + myTokens); - - // sellPrice - Uint128 sellPrice = contract.sellPrice().send(); - collector.logStepPass("Call sellPrice, res: " + sellPrice); - - // buyPrice - Uint128 buyPrice = contract.sellPrice().send(); - collector.logStepPass("Call buyPrice, res: " + buyPrice); - - } catch (Exception e) { - collector.logStepFail("contract_CypherBank failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractFibonacciTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractFibonacciTest.java deleted file mode 100644 index 82a0ddb554..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractFibonacciTest.java +++ /dev/null @@ -1,55 +0,0 @@ -package network.platon.test.wasm.contract_docs; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.Fibonacci; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @author zjsunzone - * - * This class exists for docs. - */ -public class ContractFibonacciTest extends WASMContractPrepareTest { - - @Before - public void before(){ - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.contract_fibonacci",sourcePrefix = "wasm") - public void testFibonacciContract() { - - try { - // deploy contract. - Fibonacci contract = Fibonacci.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("Fibonacci deploy successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("Fibonacci deploy successfully. gasUsed: " + contract.getTransactionReceipt().get().getGasUsed().toString()); - Long number = Long.valueOf(5); - TransactionReceipt tr = contract.fibonacci_notify(Uint64.of(number)).send(); - collector.logStepPass("Fibonacci notify successfully, hash: " + tr.getTransactionHash()); - Fibonacci.NotifyEventResponse eventResponse = contract.getNotifyEvents(tr).get(0); - - collector.logStepPass("To invoke fibonacci_notify success, args0: " + eventResponse.arg1 - + " args2: " + eventResponse.arg2 - + " args3: " + eventResponse.arg3); - - Uint64 result = contract.fibonacci_call(Uint64.of(number)).send(); - collector.logStepPass("To invoke fibonacci success, result: " + result.toString()); - - } catch (Exception e) { - collector.logStepFail("Fibonacci failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractLATTokenTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractLATTokenTest.java deleted file mode 100644 index cd603d2cdb..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractLATTokenTest.java +++ /dev/null @@ -1,91 +0,0 @@ -package network.platon.test.wasm.contract_docs; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.LATToken; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.List; - -/** - * @author zjsunzone - * - * This class exists for docs. - */ -public class ContractLATTokenTest extends WASMContractPrepareTest { - - @Before - public void before(){ - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.contract_LATToken",sourcePrefix = "wasm") - public void testToken() { - - try { - // deploy contract. - // TransactionManager transactionManager, GasProvider contractGasProvider, - // Uint64 _initialAmount, String _tokenName, Uint8 _decimalUnits, String _tokenSymbol - LATToken contract = LATToken.deploy(web3j, transactionManager, provider,chainId, - Uint64.of("100000000000000"), - "LTT Token", - Uint8.of(6), - "LTT").send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("contract_LATToken deploy successfully. contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("contract_LATToken deploy successfully. gasUsed: " + contract.getTransactionReceipt().get().getGasUsed().toString()); - - WasmAddress sender = contract.getSender().send(); - collector.logStepPass("sender address is: " + sender.toString()); - - // the info of contract - String name = contract.getName().send(); - collector.logStepPass("Call getName of LATToken, name: " + name); - String symbol = contract.getSymbol().send(); - collector.logStepPass("Call getSymbol of LATToken, symbol: " + symbol); - Uint64 totalSUpply = contract.getTotalSupply().send(); - collector.logStepPass("Call totalSUpply of LATToken, totalSUpply: " + totalSUpply.getValue()); - Uint8 decimal = contract.getDecimals().send(); - collector.logStepPass("Call getDecimals of LATToken, decimal: " + decimal.getValue()); - - Uint64 balance = contract.balanceOf(sender).send(); - collector.logStepPass("Call balanceOf of LATToken, balance: " + balance.getValue()); - - // transfer -// WasmAddress receiver = new WasmAddress("lax19xdjrg06xz9te85c839zqtelmaj2tgt047fh5q"); - WasmAddress receiver = new WasmAddress("atx19xdjrg06xz9te85c839zqtelmaj2tgt0ft32k2"); - balance = contract.balanceOf(receiver).send(); - collector.logStepPass("Call balanceOf of LATToken, token before balance: " + balance.getValue()); - TransactionReceipt trasferTR = contract.transfer(receiver, Uint64.of(100000000)).send(); - collector.logStepPass("Send trasnsfer, hash: " + trasferTR.getTransactionHash() + " gasUsed: " + trasferTR.getGasUsed()); - - // parse logs - List responses = contract.getTransferEvents(trasferTR); - - collector.logStepPass("Send transfer, logs: " + trasferTR.getLogs().size() - + " from: " + responses.get(0).topic1 + " to: " + responses.get(0).topic2 + " value: " - + responses.get(0).arg1); - - - - balance = contract.balanceOf(receiver).send(); - collector.logStepPass("Call balanceOf of LATToken, token after balance: " + balance.getValue()); - collector.assertEqual(balance.getValue().longValue(), Long.valueOf(100000000)); - - } catch (Exception e) { - collector.logStepFail("contract_LATToken failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractSimpleStorageTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractSimpleStorageTest.java deleted file mode 100644 index 22cd80c166..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractSimpleStorageTest.java +++ /dev/null @@ -1,48 +0,0 @@ -package network.platon.test.wasm.contract_docs; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.SimpleStorage; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @author zjsunzone - * - * This class is for docs. - */ -public class ContractSimpleStorageTest extends WASMContractPrepareTest { - - @Before - public void before(){ - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.contract_simple_storage",sourcePrefix = "wasm") - public void testSimpleStorageContract() { - try { - // deploy contract. - SimpleStorage contract = SimpleStorage.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SimpleStorage issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("SimpleStorage deploy successfully. gasUsed: " + contract.getTransactionReceipt().get().getGasUsed().toString()); - - TransactionReceipt tr = contract.set(Uint64.of(10000)).send(); - collector.logStepPass("To invoke set success, txHash: " + tr.getTransactionHash()); - Uint64 result = contract.get().send(); - collector.logStepPass("To invoke get success, result: " + result.value.toString()); - collector.assertEqual(result.value.toString(), "10000"); - - } catch (Exception e) { - collector.logStepFail("SimpleStorage failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractTweetAccountTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractTweetAccountTest.java deleted file mode 100644 index bb413997a8..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractTweetAccountTest.java +++ /dev/null @@ -1,119 +0,0 @@ -package network.platon.test.wasm.contract_docs; - -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.TweetAccount; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigDecimal; -import java.math.BigInteger; - -/** - * @author zjsunzone - * - * This class exists for docs. - */ -public class ContractTweetAccountTest extends WASMContractPrepareTest { - - @Before - public void before(){ - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.contract_TweetAccount",sourcePrefix = "wasm") - public void testTweetAccount() { - - try { - // deploy contract. - TweetAccount contract = TweetAccount.deploy(web3j, transactionManager, provider,chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("TweetAccount deploy successfully. contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("TweetAccount deploy successfully. gasUsed: " + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // get owner - WasmAddress owner = contract.getOwnerAddress().send(); - collector.logStepPass("Call getOwnerAddress, owner: " + owner.getAddress()); - collector.assertEqual(owner.getAddress(), credentials.getAddress(chainId)); - - // isAdmin - Boolean isAdmin = contract.isAdmin().send(); - collector.logStepPass("Call isAdmin, res: " + isAdmin.toString()); - collector.assertTrue(isAdmin.booleanValue()); - - // create tweet - TransactionReceipt tweetTR = contract.tweet("Hello bob is bob.").send(); - collector.logStepPass("Send tweet, hash: " + tweetTR.getTransactionHash() + " gasUsed: " + tweetTR.getGasUsed().toString()); - - // call getTweet - String tweet = contract.getTweet(Uint64.of(0)).send(); - collector.logStepPass("Call getTweet, res: " + tweet); - - TransactionReceipt tweet1TR = contract.tweet("Hello alice is alice.").send(); - collector.logStepPass("Send tweet1, hash: " + tweet1TR.getTransactionHash() + " gasUsed: " + tweet1TR.getGasUsed().toString()); - - // call getTweet - String tweet1 = contract.getTweet(Uint64.of(1)).send(); - collector.logStepPass("Call getTweet 1, res: " + tweet1); - - // call last tweet - String lastTweet = contract.getLatestTweet().send(); - collector.logStepPass("Call getLatestTweet, res " + lastTweet); - - // call getNumberOfTweets - Uint64 numberOfTweets = contract.getNumberOfTweets().send(); - collector.logStepPass("Call getNumberOfTweets, res: " + numberOfTweets.getValue().toString()); - - // call contract addr - WasmAddress caddr = contract.caddr().send(); - collector.logStepPass("Call caddr, res: " + caddr.getAddress()); - - // transfer - Transfer t = new Transfer(web3j, transactionManager); - t.sendFunds(contractAddress, new BigDecimal(10), Convert.Unit.ATP, provider.getGasPrice(), provider.getGasLimit()).send(); - BigInteger cbalance = web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("Transfer to contract , address: " + contractAddress + " cbalance: " + cbalance); - - String caddrBalance = contract.caddrBalance(caddr).send(); - collector.logStepPass("Call caddrBalance, res: " + caddrBalance); - - // adminRetri -// WasmAddress receiver = new WasmAddress("lax1q0cwpg3x7zq6tkhvlk3z9jhujk0d0wqp3wg4ue"); - WasmAddress receiver = new WasmAddress("atx1q0cwpg3x7zq6tkhvlk3z9jhujk0d0wqpdmsg7n"); - BigInteger receiveBalanceBefore = web3j.platonGetBalance(receiver.getAddress(), DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("Call balance, before res: " + receiveBalanceBefore); - -// WasmAddress adminAddr = new WasmAddress(credentials.getAddress(chainId)); -// WasmAddress adminAddr = new WasmAddress("lax1fyeszufxwxk62p46djncj86rd553skpptsj8v6"); - WasmAddress adminAddr = new WasmAddress("atx1fyeszufxwxk62p46djncj86rd553skpph926ws"); - - TransactionReceipt adminTr = contract.adminRetrieveDonations(adminAddr).send(); - collector.logStepPass("Send adminRetrieveDonations, hash: " + adminTr.getTransactionHash() + " gasUsed: " + adminTr.getGasUsed().toString()); - BigInteger receiveBalanceAfter = web3j.platonGetBalance(receiver.getAddress(), DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("Call balance, after res: " + receiveBalanceAfter); - - // adminDelete... - BigInteger ownerBalance = web3j.platonGetBalance(credentials.getAddress(chainId), DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("Owner balance, before res: " + ownerBalance); - TransactionReceipt adminDeleteTr = contract.adminDeleteAccount().send(); - collector.logStepPass("Send adminDeleteAccount, hash: " + adminDeleteTr.getTransactionHash() + " gasUsed: " + adminDeleteTr.getGasUsed()); - ownerBalance = web3j.platonGetBalance(credentials.getAddress(chainId), DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("Owner balance, after res: " + ownerBalance); - } catch (Exception e) { - collector.logStepFail("TweetAccount failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractTweetRegistryTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractTweetRegistryTest.java deleted file mode 100644 index 7550a7e3b3..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_docs/ContractTweetRegistryTest.java +++ /dev/null @@ -1,133 +0,0 @@ -package network.platon.test.wasm.contract_docs; - -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint128; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import network.platon.test.datatypes.Xuint128; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.TweetRegistry; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigDecimal; -import java.math.BigInteger; - -/** - * @author zjsunzone - * - * This class exists for docs. - */ -public class ContractTweetRegistryTest extends WASMContractPrepareTest { - - @Before - public void before(){ - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.contract_TweetAccount",sourcePrefix = "wasm") - public void testTweetAccount() { - - try { - // deploy contract. - TweetRegistry contract = TweetRegistry.deploy(web3j, transactionManager, provider,chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("TweetRegistry deploy successfully. contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("TweetRegistry deploy successfully. gasUsed: " + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // registry - String addr = credentials.getAddress(chainId); -// addr = "lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2"; - addr = "atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq"; - TransactionReceipt registrTr = contract.registry("bob", new WasmAddress(addr)).send(); - collector.logStepPass("Send registry, hash: " + registrTr.getTransactionHash() + " gasUsed: " + registrTr.getGasUsed()); - - // getNumberOfAccounts - Uint128 numberOfAccounts = contract.getNumberOfAccounts().send(); - collector.logStepPass("Call getNumberOfAccounts, result: " + numberOfAccounts); - - // getAddressOfName - WasmAddress addressOfName = contract.getAddressOfName("bob").send(); - collector.logStepPass("Call getAddressOfName, result: " + addressOfName); - collector.assertEqual(addressOfName.getAddress(), addr); - - // getNameOfAddress - String nameOfAddress = contract.getNameOfAddress(new WasmAddress(addr)).send(); - collector.logStepPass("Call getNameOfAddress, result: " + nameOfAddress); - collector.assertEqual(nameOfAddress, "bob"); - - // getAddressOfId - WasmAddress addressOfId = contract.getAddressOfId(Xuint128.ZERO).send(); - collector.logStepPass("Call getAddressOfId, result: " + addressOfId.getAddress()); - collector.assertEqual(addressOfId.getAddress(), addr); - - // unregister - /*TransactionReceipt unregistterTr = contract.unregister().send(); - collector.logStepPass("Send unregister, txHash: " + unregistterTr.getTransactionHash() + - " gasUsed: " + unregistterTr.getGasUsed()); - nameOfAddress = contract.getNameOfAddress(new WasmAddress(addr)).send(); - collector.logStepPass("Call getNameOfAddress after unregister, result: " + nameOfAddress); - collector.assertEqual(nameOfAddress, "");*/ - - // adminUnregister - TransactionReceipt adminUnregisterTr = contract.adminUnregister("bob").send(); - collector.logStepPass("Send adminUnregister, txHash: " + adminUnregisterTr.getTransactionHash() + - " gasUsed: " + adminUnregisterTr.getGasUsed()); - nameOfAddress = contract.getNameOfAddress(new WasmAddress(addr)).send(); - collector.logStepPass("Call getNameOfAddress after unregister, result: " + nameOfAddress); - collector.assertEqual(nameOfAddress, ""); - - // adminSetRegistrationDisable - boolean disabled = contract.getRegistrationDisabled().send(); - collector.logStepPass("Call getRegistrationDisabled, before result " + disabled); - TransactionReceipt disableTr = contract.adminSetRegistrationDisable(false).send(); - collector.logStepPass("Send adminDeleteRegistry, hash: " + disableTr.getTransactionHash() + - "gasUsed: " + disableTr.getGasUsed()); - disabled = contract.getRegistrationDisabled().send(); - collector.logStepPass("Call getRegistrationDisabled, after result " + disabled); - - // transfer to contract - Transfer t = new Transfer(web3j, transactionManager); - t.sendFunds(contractAddress, new BigDecimal(1), Convert.Unit.ATP, provider.getGasPrice(), provider.getGasLimit()).send(); - BigInteger cbalance = web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("Transfer to contract , before balance: " + cbalance); - - // adminRetrieveDonations - TransactionReceipt retrieveTr = contract.adminRetrieveDonations().send(); - collector.logStepPass("Send adminRetrieveDonations, hash: " + retrieveTr.getTransactionHash() + - "gasUsed: " + retrieveTr.getGasUsed()); - - cbalance = web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("Transfer to contract , after balance: " + cbalance); - collector.assertEqual(cbalance, BigInteger.ZERO); - - // - // transfer to contract - t.sendFunds(contractAddress, new BigDecimal(1), Convert.Unit.ATP, provider.getGasPrice(), provider.getGasLimit()).send(); - cbalance = web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("02-Transfer to contract , before balance: " + cbalance); - - // adminDeleteRegistry - TransactionReceipt deleteTR = contract.adminDeleteRegistry().send(); - collector.logStepPass("Send adminDeleteRegistry, hash: " + deleteTR.getTransactionHash() + - "gasUsed: " + deleteTR.getGasUsed()); - - cbalance = web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("02-Transfer to contract , after balance: " + cbalance); - collector.assertEqual(cbalance, BigInteger.ZERO); - - } catch (Exception e) { - collector.logStepFail("TweetAccount failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEvent1ComplexParamTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEvent1ComplexParamTest.java deleted file mode 100644 index 587faeb70c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEvent1ComplexParamTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.wasm.contract_event; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractEmitEvent1ComplexParam; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.ArrayList; -import java.util.List; - -/** - * @title PLATON_EVENT 合约入参及事件包含List - * @description: - * @author: hudenian - * @create: 2020/02/26 - */ -public class ContractEmitEvent1ComplexParamTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.ContractEmitEvent1ComplexParamTest合约入参及事件包含List",sourcePrefix = "wasm") - public void testComplexParamContract() { - - String name = "myName"; - Uint32 value = Uint32.of(1L); - List stringList = new ArrayList(); - stringList.add("listOne"); - stringList.add("listTwo"); - - try { - prepare(); - ContractEmitEvent1ComplexParam contractEmitEvent1 = ContractEmitEvent1ComplexParam.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractEmitEvent1.getContractAddress(); - String transactionHash = contractEmitEvent1.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractEmitEvent1ComplexParamTest issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractEmitEvent1.getTransactionReceipt().get().getGasUsed()); - - //调用包含1个主题事件的合约传一个list - TransactionReceipt transactionReceipt = contractEmitEvent1.one_emit_event1(name,value,stringList).send(); - collector.logStepPass("ContractEmitEvent1ComplexParamTest call one_emit_event1 successfully hash:" + transactionReceipt.getTransactionHash()); - - //对事件信息进行解析 - List eventList = contractEmitEvent1.getTransferEvents(transactionReceipt); - String data = eventList.get(0).log.getData(); - - //获取包含list集合的合约 - collector.assertEqual(eventList.get(0).arg1,value); - collector.assertEqual(eventList.get(0).arg2.get(0),stringList.get(0)); - collector.assertEqual(eventList.get(0).arg2.get(1),stringList.get(1)); - - collector.logStepPass("topics is:"+eventList.get(0).log.getTopics().get(0).toString()); - - } catch (Exception e) { - collector.logStepFail("ContractEmitEvent1ComplexParamTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEvent1Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEvent1Test.java deleted file mode 100644 index 81c7570260..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEvent1Test.java +++ /dev/null @@ -1,50 +0,0 @@ -package network.platon.test.wasm.contract_event; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractEmitEvent1; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.List; - -/** - * @title PLATON_EVENT 测试1个主题 - * @description: - * @author: hudenian - * @create: 2020/02/11 - */ -public class ContractEmitEvent1Test extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_event合约1个主题事件",sourcePrefix = "wasm") - public void testZeroEventContract() { - - String name = "hudenian"; - Uint32 value = Uint32.of(1L); - try { - prepare(); - ContractEmitEvent1 contractEmitEvent1 = ContractEmitEvent1.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractEmitEvent1.getContractAddress(); - String transactionHash = contractEmitEvent1.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractEmitEvent1 issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractEmitEvent1.getTransactionReceipt().get().getGasUsed()); - - //调用包含1个主题事件的合约 - TransactionReceipt transactionReceipt = contractEmitEvent1.one_emit_event1(name,value).send(); - collector.logStepPass("ContractEmitEvent1 call zero_emit_event successfully hash:" + transactionReceipt.getTransactionHash()); - - //对事件信息进行解析 - List eventList = contractEmitEvent1.getTransferEvents(transactionReceipt); - String data = eventList.get(0).log.getData(); - collector.assertEqual(eventList.get(0).arg1,value); - collector.logStepPass("topics is:"+eventList.get(0).log.getTopics().get(0).toString()); - - } catch (Exception e) { - collector.logStepFail("ContractEmitEvent1Test failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEvent2Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEvent2Test.java deleted file mode 100644 index 9bfd45e353..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEvent2Test.java +++ /dev/null @@ -1,51 +0,0 @@ -package network.platon.test.wasm.contract_event; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractEmitEvent2; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.List; - -/** - * @title PLATON_EVENT 测试2个主题 - * @description: - * @author: hudenian - * @create: 2020/02/10 - */ -public class ContractEmitEvent2Test extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_event合约2个主题事件",sourcePrefix = "wasm") - public void testTwoEventContract() { - - String name = "hudenian"; - Uint32 value = Uint32.of(1L); - String nationality = "myNationality"; - try { - prepare(); - ContractEmitEvent2 contractEmitEvent2 = ContractEmitEvent2.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractEmitEvent2.getContractAddress(); - String transactionHash = contractEmitEvent2.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("contractEmitEvent2 issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractEmitEvent2.getTransactionReceipt().get().getGasUsed()); - - //调用包含2个主题事件的合约 - TransactionReceipt transactionReceipt = contractEmitEvent2.two_emit_event2(name,nationality,value).send(); - collector.logStepPass("contractEmitEvent2 call zero_emit_event successfully hash:" + transactionReceipt.getTransactionHash()); - - List eventList = contractEmitEvent2.getTransferEvents(transactionReceipt); - String data = eventList.get(0).log.getData(); - collector.assertEqual(eventList.get(0).arg1,value); - collector.logStepPass("topics is:"+eventList.get(0).log.getTopics().get(0).toString()); - - - } catch (Exception e) { - collector.logStepFail("ContractEmitEvent2Test failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEvent3Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEvent3Test.java deleted file mode 100644 index 6be3144737..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEvent3Test.java +++ /dev/null @@ -1,52 +0,0 @@ -package network.platon.test.wasm.contract_event; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractEmitEvent3; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.List; - -/** - * @title PLATON_EVENT 测试3个主题 - * @description: - * @author: hudenian - * @create: 2020/02/10 - */ -public class ContractEmitEvent3Test extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_event合约3个主题事件",sourcePrefix = "wasm") - public void testThreeEventContract() { - - String name = "hudenian"; - Uint32 value = Uint32.of(1L); - String nationality = "myNationality"; - String city = "shanghai"; - try { - prepare(); - ContractEmitEvent3 contractEmitEvent3 = ContractEmitEvent3.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractEmitEvent3.getContractAddress(); - String transactionHash = contractEmitEvent3.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("contractEmitEvent3 issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractEmitEvent3.getTransactionReceipt().get().getGasUsed()); - - //调用包含3个主题事件的合约 - TransactionReceipt transactionReceipt = contractEmitEvent3.three_emit_event3(name,nationality,city,value).send(); - collector.logStepPass("contractEmitEvent3 call zero_emit_event successfully hash:" + transactionReceipt.getTransactionHash()); - - List eventList = contractEmitEvent3.getTransferEvents(transactionReceipt); - String data = eventList.get(0).log.getData(); - collector.assertEqual(eventList.get(0).arg1,value); - collector.logStepPass("topics is:"+eventList.get(0).log.getTopics().get(0).toString()); - - - } catch (Exception e) { - collector.logStepFail("ContractEmitEvent3Test failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEventTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEventTest.java deleted file mode 100644 index 13bdcbb5c0..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEventTest.java +++ /dev/null @@ -1,47 +0,0 @@ -package network.platon.test.wasm.contract_event; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractEmitEvent; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.List; - -/** - * @title PLATON_EVENT 测试零个主题 - * @description: - * @author: hudenian - * @create: 2020/02/07 - */ -public class ContractEmitEventTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_event合约0个主题事件",sourcePrefix = "wasm") - public void testZeroEventContract() { - - String name = "hudenian"; - try { - prepare(); - ContractEmitEvent contractEmitEvent = ContractEmitEvent.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractEmitEvent.getContractAddress(); - String transactionHash = contractEmitEvent.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractEmitEvent issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractEmitEvent.getTransactionReceipt().get().getGasUsed()); - - //调用包含零个主题事件的合约 - TransactionReceipt transactionReceipt = contractEmitEvent.zero_emit_event(name).send(); - collector.logStepPass("ContractEmitEvent call zero_emit_event successfully hash:" + transactionReceipt.getTransactionHash()); - - List eventList = contractEmitEvent.getTransferEvents(transactionReceipt); - String data = eventList.get(0).log.getData(); - collector.assertEqual(eventList.get(0).arg1,name); - - - } catch (Exception e) { - collector.logStepFail("ContractDistoryTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEventWithArrayTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEventWithArrayTest.java deleted file mode 100644 index eca19606d2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_event/ContractEmitEventWithArrayTest.java +++ /dev/null @@ -1,293 +0,0 @@ -package network.platon.test.wasm.contract_event; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int8; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractEmitEventWithArray; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.ArrayList; -import java.util.List; - -/** - * @title PLATON_EVENT 合约优化事件测试 - * http://192.168.9.66/PlatONContract/PlatONContract/blob/develop/system-design/event%E4%BC%98%E5%8C%96%E6%96%B9%E6%A1%88.md - * @description: - * @author: hudenian - * @create: 2020/07/28 - */ -public class ContractEmitEventWithArrayTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_event字节列表类型测试包含零个topic", sourcePrefix = "wasm") - public void testZeroTopic() { - - try { - prepare(); - ContractEmitEventWithArray contractEmitEventWithAddr = ContractEmitEventWithArray.deploy(web3j, transactionManager, provider, chainId).send(); - - Int8[] _argsOne = new Int8[3]; - _argsOne[0] = Int8.of(0); - _argsOne[1] = Int8.of(1); - _argsOne[2] = Int8.of(2); - - - byte[] _argsTwo = "abc".getBytes(); - - byte[] _argsThree = "abcdefgh".getBytes(); - - Int8[] _argsFour = new Int8[8]; - _argsFour[0] = Int8.of(3); - _argsFour[1] = Int8.of(4); - _argsFour[2] = Int8.of(5); - _argsFour[4] = Int8.of(6); - _argsFour[5] = Int8.of(7); - _argsFour[6] = Int8.of(8); - _argsFour[7] = Int8.of(9); - - Uint8[] _argsFive = new Uint8[8]; - _argsFive[0] = Uint8.of(3); - _argsFive[1] = Uint8.of(4); - _argsFive[2] = Uint8.of(5); - _argsFive[3] = Uint8.of(6); - _argsFive[4] = Uint8.of(7); - _argsFive[5] = Uint8.of(8); - _argsFive[6] = Uint8.of(9); - _argsFive[7] = Uint8.of(10); - - List _argsSix = new ArrayList<>(); - _argsSix.add(Uint8.of(6)); - _argsSix.add(Uint8.of(7)); - _argsSix.add(Uint8.of(8)); - - List _argsSeven = new ArrayList<>(); - _argsSeven.add(Int8.of(9)); - _argsSeven.add(Int8.of(10)); - _argsSeven.add(Int8.of(11)); - - String _argsEight = "lastArg"; - - TransactionReceipt transactionReceipt = contractEmitEventWithAddr.zerotopic_eigthargs_event(_argsOne, _argsTwo, _argsThree, _argsFour, _argsFive, _argsSix, _argsSeven, _argsEight).send(); - List transfer0EventResponseList = contractEmitEventWithAddr.getTransfer0Events(transactionReceipt); - - collector.assertEqual(contractEmitEventWithAddr.get_string().send(), _argsEight); - collector.assertEqual(transfer0EventResponseList.get(0).arg1[0].value, _argsOne[0].value); - collector.assertEqual(transfer0EventResponseList.get(0).arg2[0], _argsTwo[0]); - collector.assertEqual(transfer0EventResponseList.get(0).arg3[0], _argsThree[0]); - collector.assertEqual(transfer0EventResponseList.get(0).arg4[0].value, _argsFour[0].value); - collector.assertEqual(transfer0EventResponseList.get(0).arg5[0].value, _argsFive[0].value); - collector.assertEqual(transfer0EventResponseList.get(0).arg6.get(0), _argsSix.get(0)); - collector.assertEqual(transfer0EventResponseList.get(0).arg7.get(0), _argsSeven.get(0)); - collector.assertEqual(transfer0EventResponseList.get(0).arg8, _argsEight); - - } catch (Exception e) { - collector.logStepFail("ContractEmitEventWithArrayTest call testZeroTopic failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_event字节列表类型测试包含1个topic", sourcePrefix = "wasm") - public void testOneTopic() { - - try { - prepare(); - ContractEmitEventWithArray contractEmitEventWithAddr = ContractEmitEventWithArray.deploy(web3j, transactionManager, provider, chainId).send(); - - List _topicOne = new ArrayList<>(); - _topicOne.add(Int8.of(9)); - _topicOne.add(Int8.of(10)); - _topicOne.add(Int8.of(11)); - - Int8[] _argsOne = new Int8[3]; - _argsOne[0] = Int8.of(0); - _argsOne[1] = Int8.of(1); - _argsOne[2] = Int8.of(2); - - byte[] _argsTwo = "abc".getBytes(); - - byte[] _argsThree = "abcdefgh".getBytes(); - - Int8[] _argsFour = new Int8[8]; - _argsFour[0] = Int8.of(3); - _argsFour[1] = Int8.of(4); - _argsFour[2] = Int8.of(5); - _argsFour[4] = Int8.of(6); - _argsFour[5] = Int8.of(7); - _argsFour[6] = Int8.of(8); - _argsFour[7] = Int8.of(9); - - Uint8[] _argsFive = new Uint8[8]; - _argsFive[0] = Uint8.of(3); - _argsFive[1] = Uint8.of(4); - _argsFive[2] = Uint8.of(5); - _argsFive[3] = Uint8.of(6); - _argsFive[4] = Uint8.of(7); - _argsFive[5] = Uint8.of(8); - _argsFive[6] = Uint8.of(9); - _argsFive[7] = Uint8.of(10); - - List _argsSix = new ArrayList<>(); - _argsSix.add(Uint8.of(6)); - _argsSix.add(Uint8.of(7)); - _argsSix.add(Uint8.of(8)); - - String _argsSeven = "lastArg1"; - - TransactionReceipt transactionReceipt = contractEmitEventWithAddr.onetopic_sevenargs_event(_topicOne, _argsOne, _argsTwo, _argsThree, _argsFour, _argsFive, _argsSix, _argsSeven).send(); - List transfer0EventResponseList = contractEmitEventWithAddr.getTransfer1Events(transactionReceipt); - - collector.assertEqual(contractEmitEventWithAddr.get_string().send(), _argsSeven); - collector.assertEqual(transfer0EventResponseList.get(0).arg1[0].value, _argsOne[0].value); - collector.assertEqual(transfer0EventResponseList.get(0).arg2[0], _argsTwo[0]); - collector.assertEqual(transfer0EventResponseList.get(0).arg3[0], _argsThree[0]); - collector.assertEqual(transfer0EventResponseList.get(0).arg4[0].value, _argsFour[0].value); - collector.assertEqual(transfer0EventResponseList.get(0).arg5[0].value, _argsFive[0].value); - - } catch (Exception e) { - collector.logStepFail("ContractEmitEventWithArrayTest call testOneTopic failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_event字节列表类型测试包含2个topic", sourcePrefix = "wasm") - public void testTwoTopic() { - - try { - prepare(); - ContractEmitEventWithArray contractEmitEventWithAddr = ContractEmitEventWithArray.deploy(web3j, transactionManager, provider, chainId).send(); - - Int8[] _topicOne = new Int8[8]; - _topicOne[0] = Int8.of(0); - _topicOne[1] = Int8.of(1); - _topicOne[2] = Int8.of(2); - - byte[] _topicTwo = "abc".getBytes(); - - byte[] _argsOne = "abcdefgh".getBytes(); - - Int8[] _argsTwo = new Int8[8]; - _argsTwo[0] = Int8.of(3); - _argsTwo[1] = Int8.of(4); - _argsTwo[2] = Int8.of(5); - _argsTwo[4] = Int8.of(6); - _argsTwo[5] = Int8.of(7); - _argsTwo[6] = Int8.of(8); - _argsTwo[7] = Int8.of(9); - - Uint8[] _argsThree = new Uint8[8]; - _argsThree[0] = Uint8.of(3); - _argsThree[1] = Uint8.of(4); - _argsThree[2] = Uint8.of(5); - _argsThree[3] = Uint8.of(6); - _argsThree[4] = Uint8.of(7); - _argsThree[5] = Uint8.of(8); - _argsThree[6] = Uint8.of(9); - _argsThree[7] = Uint8.of(10); - - List _argsFour = new ArrayList<>(); - _argsFour.add(Int8.of(9)); - _argsFour.add(Int8.of(10)); - _argsFour.add(Int8.of(11)); - - List _argsFive = new ArrayList<>(); - _argsFive.add(Uint8.of(6)); - _argsFive.add(Uint8.of(7)); - _argsFive.add(Uint8.of(8)); - - String _argsSix = "lastArg2"; - - TransactionReceipt transactionReceipt = contractEmitEventWithAddr.twotopic_sixargs_event(_topicOne, _topicTwo, _argsOne, _argsTwo, _argsThree, _argsFour, _argsFive, _argsSix).send(); - List transfer0EventResponseList = contractEmitEventWithAddr.getTransfer2Events(transactionReceipt); - - collector.assertEqual(contractEmitEventWithAddr.get_string().send(), _argsSix); - collector.assertEqual(transfer0EventResponseList.get(0).arg1[0], _argsOne[0]); - collector.assertEqual(transfer0EventResponseList.get(0).arg2[0], _argsTwo[0]); - collector.assertEqual(transfer0EventResponseList.get(0).arg3[0], _argsThree[0]); - collector.assertEqual(transfer0EventResponseList.get(0).arg4.get(0), _argsFour.get(0)); - collector.assertEqual(transfer0EventResponseList.get(0).arg5.get(0), _argsFive.get(0)); - collector.assertEqual(transfer0EventResponseList.get(0).arg6, _argsSix); - - } catch (Exception e) { - collector.logStepFail("ContractEmitEventWithArrayTest call testTwoTopic failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_event字节列表类型测试包含3个topic", sourcePrefix = "wasm") - public void testThreeTopic() { - - try { - prepare(); - ContractEmitEventWithArray contractEmitEventWithAddr = ContractEmitEventWithArray.deploy(web3j, transactionManager, provider, chainId).send(); - - byte[] _topicOne = "abcdefgh".getBytes(); - - Int8[] _topicTwo = new Int8[8]; - _topicTwo[0] = Int8.of(3); - _topicTwo[1] = Int8.of(4); - _topicTwo[2] = Int8.of(5); - _topicTwo[4] = Int8.of(6); - _topicTwo[5] = Int8.of(7); - _topicTwo[6] = Int8.of(8); - _topicTwo[7] = Int8.of(9); - - Uint8[] _topicThree = new Uint8[8]; - _topicThree[0] = Uint8.of(3); - _topicThree[1] = Uint8.of(4); - _topicThree[2] = Uint8.of(5); - _topicThree[3] = Uint8.of(6); - _topicThree[4] = Uint8.of(7); - _topicThree[5] = Uint8.of(8); - _topicThree[6] = Uint8.of(9); - _topicThree[7] = Uint8.of(10); - - Int8[] _argsOne = new Int8[8]; - _argsOne[0] = Int8.of(3); - _argsOne[1] = Int8.of(4); - _argsOne[2] = Int8.of(5); - _argsOne[4] = Int8.of(6); - _argsOne[5] = Int8.of(7); - _argsOne[6] = Int8.of(8); - _argsOne[7] = Int8.of(9); - - - byte[] _argsTwo = "def".getBytes(); - - List _argsThree = new ArrayList<>(); - _argsThree.add(Int8.of(9)); - _argsThree.add(Int8.of(10)); - _argsThree.add(Int8.of(11)); - - List _argsFour = new ArrayList<>(); - _argsFour.add("a"); - _argsFour.add("b"); - _argsFour.add("c"); - - String _argsFive = "lastArg3"; - - TransactionReceipt transactionReceipt = contractEmitEventWithAddr.threetopic_fiveargs_event(_topicOne, _topicTwo, _topicThree, _argsOne, _argsTwo, _argsThree, _argsFour, _argsFive).send(); - List transfer3EventResponseList = contractEmitEventWithAddr.getTransfer3Events(transactionReceipt); - - collector.assertEqual(contractEmitEventWithAddr.get_string().send(), _argsFive); - collector.assertEqual(transfer3EventResponseList.get(0).arg1[0], _argsOne[0]); - collector.assertEqual(transfer3EventResponseList.get(0).arg2[0], _argsTwo[0]); - collector.assertEqual(transfer3EventResponseList.get(0).arg3.get(0), _argsThree.get(0)); - collector.assertEqual(transfer3EventResponseList.get(0).arg4.get(0), _argsFour.get(0)); - collector.assertEqual(transfer3EventResponseList.get(0).arg5, _argsFive); - - } catch (Exception e) { - collector.logStepFail("ContractEmitEventWithArrayTest call testThreeTopic failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_func/ContractInnerFunctionTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_func/ContractInnerFunctionTest.java deleted file mode 100644 index c313657551..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_func/ContractInnerFunctionTest.java +++ /dev/null @@ -1,186 +0,0 @@ -package network.platon.test.wasm.contract_func; - -import com.alaya.bech32.Bech32; -import com.alaya.parameters.NetworkParameters; -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import com.alaya.utils.Numeric; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InnerFunction; -import network.platon.contracts.wasm.InnerFunction_1; -import network.platon.contracts.wasm.InnerFunction_2; -import network.platon.utils.PlatonAddressChangeUtil; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigDecimal; -import java.math.BigInteger; - -import static network.platon.utils.PlatonAddressChangeUtil.convertBits; - -/** - * The test class of the function for chain. - */ -public class ContractInnerFunctionTest extends WASMContractPrepareTest { - - @Before - public void before() { - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.contract_function", sourcePrefix = "wasm") - public void testFunctionContract() { - - String name = "zjsunzone"; - try { - // deploy contract. - InnerFunction innerFunction = InnerFunction.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = innerFunction.getContractAddress(); - String transactionHash = innerFunction.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("InnerFunction issued successfully.contractAddress:" - + contractAddress + ", hash:" + transactionHash - + " gasUsed:" + innerFunction.getTransactionReceipt().get().getGasUsed().toString()); - - // test: timestamp(bug) - Uint64 timestamp = innerFunction.timestamp().send(); - collector.logStepPass("To invoke timestamp success, timestamp: " + timestamp.getValue().toString()); - - // test: gas_limit - Uint64 gasLimit = innerFunction.gas_limit().send(); - collector.logStepPass("To invoke gas_limit success. gasLimit: " + gasLimit + " conf: " + provider.getGasLimit()); - collector.assertTrue(provider.getGasLimit().longValue() == gasLimit.getValue().longValue()); - - // test: block_number - Uint64 bn = innerFunction.block_number().send(); - collector.logStepPass("To invoke block_number success, bn: " + bn.getValue().toString()); - - - } catch (Exception e) { - collector.logStepFail("InnerFunction failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.contract_function_01", sourcePrefix = "wasm") - public void testFunctionContract_01() { - - String name = "zjsunzone"; - try { - - // deploy contract. - InnerFunction_1 innerFunction = InnerFunction_1.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = innerFunction.getContractAddress(); - String transactionHash = innerFunction.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("InnerFunction issued successfully.contractAddress:" - + contractAddress + ", hash:" + transactionHash - + " gasUsed:" + innerFunction.getTransactionReceipt().get().getGasUsed().toString()); - - // test: gas - Uint64 gas = innerFunction.gas().send(); - collector.logStepPass("To invoke gas success, gas: " + gas.getValue().toString()); - - // test: nonce - Long rnonce = web3j.platonGetTransactionCount(credentials.getAddress(chainId), DefaultBlockParameterName.LATEST).send().getTransactionCount().longValue(); - Uint64 nonce = innerFunction.nonce().send(); - collector.logStepPass("To invoke nonce success, nonce: " + nonce.getValue().toString() + " rnonce: " + rnonce); - - // test: block_hash - //String bhsh = innerFunction.block_hash(Long.valueOf(100)).send(); - //collector.logStepPass("To invoke block_hash success, hash: " + bhsh); - //String bhash2 = web3j.platonGetBlockByNumber(new DefaultBlockParameterNumber(100), false).send().getBlock().getHash(); - //collector.assertEqual(prependHexPrefix(bhash2), prependHexPrefix(bhsh)); - - // test: coinbase - WasmAddress coinbase = innerFunction.coinbase().send(); - collector.logStepPass("To invoke coinbase success, coinbase: " + coinbase.getAddress()); - - } catch (Exception e) { - collector.logStepFail("InnerFunction_1 failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.contract_function_02", sourcePrefix = "wasm") - public void testFunctionContract_02() { - - try { - // deploy contract. - InnerFunction_2 innerFunction = InnerFunction_2.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = innerFunction.getContractAddress(); - String transactionHash = innerFunction.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("InnerFunction deploy successfully.contractAddress:" - + contractAddress + ", hash:" + transactionHash - + " gasUsed:" + innerFunction.getTransactionReceipt().get().getGasUsed().toString()); - - - // test: origin - WasmAddress origin = innerFunction.origin().send(); - collector.logStepPass("To invoke origin success. origin string: " + origin.toString()); - collector.logStepPass("To invoke origin success. origin: " + origin.getAddress()); - //如果java-sdk没有转换地址就在此处转换 - String laxAddress = origin.getAddress().startsWith("at") ? origin.getAddress() : PlatonAddressChangeUtil.encode("lax", convertBits(Numeric.hexStringToByteArray(origin.getAddress()), 8, 5, true)); - collector.assertEqual(credentials.getAddress(chainId), laxAddress); - - // test: transfer - String toAddress = "0x250b67c9f1baa47dafcd1cfd5ad7780bb7b9b196"; - toAddress = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(), toAddress); - long amount = 1; - Transfer t = new Transfer(web3j, transactionManager); - t.sendFunds(contractAddress, new BigDecimal(amount), Convert.Unit.ATP, provider.getGasPrice(), provider.getGasLimit()).send(); - BigInteger cbalance = web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("Transfer to contract , address: " + contractAddress + " cbalance: " + cbalance); - TransactionReceipt transferTr = innerFunction.transfer(toAddress, Uint64.of(BigInteger.valueOf(amount))).send(); - BigInteger balance = web3j.platonGetBalance(toAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("To invoke transfer success, hash:" + transferTr.getTransactionHash() + " balance: " + balance); - //collector.assertEqual(amount, balance.longValue()); - - // test: sha3 - String sha3v1 = innerFunction.sha3("this is bob").send(); - String sha3v2 = innerFunction.sha3("this is bob").send(); - collector.logStepPass("To invoke sha3 success, v1: " + sha3v1 + " v2: " + sha3v2); - collector.assertEqual(sha3v1, sha3v2); - - // test: return - // ignore - - // test: panic - TransactionReceipt panicTr = null; - try { - panicTr = innerFunction.panic().send(); - collector.logStepPass("To invoke panic success. hash:" + panicTr.getTransactionHash() + " useGas: " + panicTr.getGasUsed().toString()); - } catch (Exception e) { - if (panicTr != null) { - collector.assertEqual(provider.getGasLimit(), panicTr.getGasUsed().longValue()); - } - } - - // test: revert(bug) - //TransactionReceipt tr = innerFunction.revert(Int64.of(1)).send(); - //collector.logStepPass("To invoke revert success. hash:"+ tr.getTransactionHash() +" useGas: " + tr.getGasUsed().toString()); - //collector.assertFalse(provider.getGasLimit().longValue() == tr.getGasUsed().longValue()); - - // test: destroy - String receiveAddr = "0x250b67c9f1baa47dafcd1cfd5ad7780bb7b9b193"; - receiveAddr = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(), receiveAddr); - TransactionReceipt destoryTr = innerFunction.destroy(receiveAddr).send(); - BigInteger receiveBalance = web3j.platonGetBalance(receiveAddr, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("To invoke destory success, receiveBalance: " + receiveBalance); - - } catch (Exception e) { - collector.logStepFail("InnerFunction failure,exception msg:", e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateBalanceTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateBalanceTest.java deleted file mode 100644 index f501539226..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateBalanceTest.java +++ /dev/null @@ -1,71 +0,0 @@ -package network.platon.test.wasm.contract_migrate; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.protocol.core.DefaultBlockParameterName; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.tx.Transfer; -import com.alaya.utils.Convert; -import com.alaya.utils.Numeric; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractMigrate_v1; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigDecimal; -import java.math.BigInteger; -import java.util.Arrays; - -/** - * @title contract migrate - * @description: - * @author: yuanwenjun - * @create: 2020/02/12 - */ -public class ContractMigrateBalanceTest extends WASMContractPrepareTest { - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "yuanwenjun", showName = "wasm.contract_migrate",sourcePrefix = "wasm") - public void testMigrateContractBalance() { - - Uint64 transfer_value = Uint64.of(100000L); - BigInteger origin_contract_value = BigInteger.valueOf(10000); - - try { - prepare(); - ContractMigrate_v1 contractMigratev1 = ContractMigrate_v1.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractMigratev1.getContractAddress(); - String transactionHash = contractMigratev1.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractMigrateV1 issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractMigratev1.getTransactionReceipt().get().getGasUsed()); - - Transfer transfer = new Transfer(web3j, transactionManager); - transfer.sendFunds(contractAddress, new BigDecimal(origin_contract_value), Convert.Unit.VON).send(); - BigInteger originBalance = web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("origin contract balance is: " + originBalance); - - String code = WasmFunctionEncoder.encodeConstructor(contractMigratev1.getContractBinary(), Arrays.asList()); - byte[] data = Numeric.hexStringToByteArray(code); - - TransactionReceipt transactionReceipt = contractMigratev1.migrate_contract(data,transfer_value, Uint64.of(90000000L)).send(); - collector.logStepPass("Contract Migrate V1 successfully hash:" + transactionReceipt.getTransactionHash()); - - BigInteger originAfterMigrateBalance = web3j.platonGetBalance(contractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("After migrate, origin contract balance is: " + originAfterMigrateBalance); - collector.assertEqual(originAfterMigrateBalance, BigInteger.valueOf(0), "checkout origin contract balance"); - - String newContractAddress = contractMigratev1.getTransferEvents(transactionReceipt).get(0).arg1; - collector.logStepPass("new Contract Address is:"+newContractAddress); - BigInteger newMigrateBalance = web3j.platonGetBalance(newContractAddress, DefaultBlockParameterName.LATEST).send().getBalance(); - collector.logStepPass("new contract balance is: " + newMigrateBalance); - collector.assertEqual(newMigrateBalance, origin_contract_value.add(transfer_value.getValue()), "checkout new contract balance"); - - } catch (Exception e) { - collector.logStepFail("ContractDistoryTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateTypesTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateTypesTest.java deleted file mode 100644 index 00e99dc3ca..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateTypesTest.java +++ /dev/null @@ -1,87 +0,0 @@ -package network.platon.test.wasm.contract_migrate; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint16; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.utils.Numeric; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractMigrate_types; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.Arrays; - - -/** - * @title 合约升级 - * @description: - * @author: yuanwenjun - * @create: 2020/02/15 - */ -public class ContractMigrateTypesTest extends WASMContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "yuanwenjun", showName = "wasm.contract_migrate",sourcePrefix = "wasm") - public void testMigrateContract() { - - String name = "hello"; - - try { - prepare(); - ContractMigrate_types contractMigrateTypes = ContractMigrate_types.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractMigrateTypes.getContractAddress(); - String transactionHash = contractMigrateTypes.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("contractMigrateTypes issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractMigrateTypes.getTransactionReceipt().get().getGasUsed()); - - String structvalue = "testvalue"; - ContractMigrate_types.Message msg = new ContractMigrate_types.Message(); - msg.head = structvalue; - contractMigrateTypes.setMessage(msg).send(); - - Uint16 vecEle1 = Uint16.of(12); - Uint16 vecEle2 = Uint16.of(13); - contractMigrateTypes.pushVector(vecEle1).send(); - contractMigrateTypes.pushVector(vecEle2).send(); - - String mapKey1 = "key1", mapValue1= "value1", mapKey2 = "key2", mapValue2 = "value2"; - contractMigrateTypes.setMap(mapKey1, mapValue1).send(); - contractMigrateTypes.setMap(mapKey2, mapValue2).send(); - - String code = WasmFunctionEncoder.encodeConstructor(contractMigrateTypes.getContractBinary(), Arrays.asList()); - byte[] data = Numeric.hexStringToByteArray(code); - TransactionReceipt transactionReceipt = contractMigrateTypes.migrate_contract(data, Uint64.of(0L), Uint64.of(90000000L)).send(); - collector.logStepPass("contractMigrateTypes migrate successfully hash:" + transactionReceipt.getTransactionHash()); - - String newContractAddress = contractMigrateTypes.getTransferEvents(transactionReceipt).get(0).arg1; - collector.logStepPass("new Contract Address is:"+newContractAddress); - - ContractMigrate_types new_contractMigrate = ContractMigrate_types.load(newContractAddress,web3j,credentials,provider, chainId); - ContractMigrate_types.Message newMsg = new_contractMigrate.getMessage().send(); - collector.logStepPass("new Contract message variable is:" + newMsg.head); - collector.assertEqual(newMsg.head, structvalue, "check migrate struct value"); - - Uint16 newVecEle1 = new_contractMigrate.getVectorElement(Uint64.of(0)).send(); - Uint16 newVecEle2 = new_contractMigrate.getVectorElement(Uint64.of(1)).send(); - collector.logStepPass("new Contract vector variable 0 is:" + newVecEle1); - collector.logStepPass("new Contract vector variable 1 is:" + newVecEle2); - collector.assertEqual(newVecEle1, vecEle1, "check vector variable 0"); - collector.assertEqual(newVecEle2, vecEle2, "check vector variable 1"); - - String newMapValue1 = new_contractMigrate.getMapElement(mapKey1).send(); - String newMapValue2 = new_contractMigrate.getMapElement(mapKey2).send(); - collector.logStepPass("new Contract map value of key1 is:" + newMapValue1); - collector.logStepPass("new Contract map value of key2 is:" + newMapValue2); - collector.assertEqual(newMapValue1, mapValue1, "check map value of key1"); - collector.assertEqual(newMapValue2, mapValue2, "check map value of key2"); - - } catch (Exception e) { - collector.logStepFail("ContractDistoryTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateV1Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateV1Test.java deleted file mode 100644 index 966d7d2bad..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateV1Test.java +++ /dev/null @@ -1,77 +0,0 @@ -package network.platon.test.wasm.contract_migrate; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.utils.Numeric; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractMigrate_v1; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.Arrays; - - -/** - * @title 合约升级 - * @description: - * @author: hudenian - * @create: 2020/02/10 - */ -public class ContractMigrateV1Test extends WASMContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_migrate合约升级",sourcePrefix = "wasm") - public void testMigrateContract() { - - String name = "hello"; - - try { - prepare(); - ContractMigrate_v1 contractMigratev1 = ContractMigrate_v1.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractMigratev1.getContractAddress(); - String transactionHash = contractMigratev1.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractMigrateV1 issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractMigratev1.getTransactionReceipt().get().getGasUsed()); - - //设置值 - transactionHash = contractMigratev1.set_string(name).send().getTransactionHash(); - collector.logStepPass("ContractMigrateV1 set_string successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - - //查询结果 - String chainName = contractMigratev1.get_string().send(); - collector.assertEqual(chainName,name); - - - String code = WasmFunctionEncoder.encodeConstructor(contractMigratev1.getContractBinary(), Arrays.asList()); - byte[] data = Numeric.hexStringToByteArray(code); - - //合约升级 - TransactionReceipt transactionReceipt = contractMigratev1.migrate_contract(data, Uint64.of(0L), Uint64.of(90000000L)).send(); - collector.logStepPass("Contract Migrate V1 successfully hash:" + transactionReceipt.getTransactionHash()); - - //获取升级后的合约地址(需要通过事件获取) - String newContractAddress = contractMigratev1.getTransferEvents(transactionReceipt).get(0).arg1; - collector.logStepPass("new Contract Address is:"+newContractAddress); - - //调用升级后的合约 - ContractMigrate_v1 new_contractMigrate_v1 = ContractMigrate_v1.load(newContractAddress,web3j,credentials,provider, chainId); - String newContractChainName = new_contractMigrate_v1.get_string().send(); - collector.assertContains(newContractChainName,name); - - //调用旧的合约(旧合约已被销毁不能再调用) - try{ - String chainName2 = contractMigratev1.get_string().send(); - }catch (Exception e){ - collector.logStepPass("old contract can not migrate"); - } - - } catch (Exception e) { - collector.logStepFail("ContractDistoryTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateV2Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateV2Test.java deleted file mode 100644 index c10247fe51..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateV2Test.java +++ /dev/null @@ -1,76 +0,0 @@ -package network.platon.test.wasm.contract_migrate; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.utils.Numeric; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractMigrate_v1; -import network.platon.contracts.wasm.ContractMigrate_v2; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.Arrays; - -/** - * @title 合约升级增加升级权限校验 - * @description: - * @author: hudenian - * @create: 2020/02/16 - */ -public class ContractMigrateV2Test extends WASMContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_migrateV2合约升级带权限验证",sourcePrefix = "wasm") - public void testMigrateContract() { - - String name = "hello"; - - try { - prepare(); - ContractMigrate_v2 contractMigratev2 = ContractMigrate_v2.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractMigratev2.getContractAddress(); - String transactionHash = contractMigratev2.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("contractMigratev2 issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractMigratev2.getTransactionReceipt().get().getGasUsed()); - - //设置值 - transactionHash = contractMigratev2.set_string(name).send().getTransactionHash(); - collector.logStepPass("contractMigratev2 set_string successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - - //查询结果 - String chainName = contractMigratev2.get_string().send(); - collector.assertEqual(chainName,name); - - - String code = WasmFunctionEncoder.encodeConstructor(contractMigratev2.getContractBinary(), Arrays.asList()); - byte[] data = Numeric.hexStringToByteArray(code); - - //合约升级 - TransactionReceipt transactionReceipt = contractMigratev2.migrate_contract(data, Uint64.of(0L), Uint64.of(90000000L)).send(); - collector.logStepPass("Contract Migrate V1 successfully hash:" + transactionReceipt.getTransactionHash()); - - //获取升级后的合约地址(需要通过事件获取) - String newContractAddress = contractMigratev2.getTransferEvents(transactionReceipt).get(0).arg1; - collector.logStepPass("new Contract Address is:"+newContractAddress); - - //调用升级后的合约 - ContractMigrate_v1 new_contractMigrate_v1 = ContractMigrate_v1.load(newContractAddress,web3j,credentials,provider, chainId); - String newContractChainName = new_contractMigrate_v1.get_string().send(); - collector.assertContains(newContractChainName,name); - - //调用旧的合约(旧合约已被销毁不能再调用) - try{ - String chainName2 = contractMigratev2.get_string().send(); - }catch (Exception e){ - collector.logStepPass("old contract can not migrate"); - } - - } catch (Exception e) { - collector.logStepFail("ContractMigrateV2Test failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateVariableTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateVariableTest.java deleted file mode 100644 index cc2ed249b7..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_migrate/ContractMigrateVariableTest.java +++ /dev/null @@ -1,66 +0,0 @@ -package network.platon.test.wasm.contract_migrate; - -import com.alaya.abi.wasm.WasmFunctionEncoder; -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint16; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import com.alaya.utils.Numeric; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractMigrate_new; -import network.platon.contracts.wasm.ContractMigrate_old; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.util.Arrays; - -/** - * @title contract migrate - * @description: - * @author: yuanwenjun - * @create: 2020/02/12 - */ -public class ContractMigrateVariableTest extends WASMContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "yuanwenjun", showName = "wasm.contract_migrate",sourcePrefix = "wasm") - public void testMigrateContractBalance() { - - Uint8 oldval = Uint8.of(12); - - try { - prepare(); - ContractMigrate_old contractMigrateOld = ContractMigrate_old.deploy(web3j, transactionManager, provider, chainId, oldval).send(); - String contractAddress = contractMigrateOld.getContractAddress(); - String transactionHash = contractMigrateOld.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractMigrateVariableTest issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractMigrateOld.getTransactionReceipt().get().getGasUsed()); - - Uint8 varval = contractMigrateOld.getUint8().send(); - collector.logStepPass("ContractMigrateVariableTest old contract variable value:" + varval); - - Byte newval = 23; - short newvar = 26; - String code = WasmFunctionEncoder.encodeConstructor(ContractMigrate_new.BINARY, Arrays.asList(newval, newvar)); - byte[] data = Numeric.hexStringToByteArray(code); - TransactionReceipt transactionReceipt = contractMigrateOld.migrate_contract(data, Uint64.of(0L), Uint64.of(90000000L)).send(); - collector.logStepPass("ContractMigrateVariableTest migrate successfully hash:" + transactionReceipt.getTransactionHash()); - - String newContractAddress = contractMigrateOld.getTransferEvents(transactionReceipt).get(0).arg1; - collector.logStepPass("new Contract Address is:"+newContractAddress); - - ContractMigrate_new new_contractMigrate = ContractMigrate_new.load(newContractAddress,web3j,credentials,provider, chainId); - Uint8 newContractval = new_contractMigrate.getUint8New().send(); - collector.logStepPass("new Contract origin variable value is:" + newContractval); - collector.assertEqual(newContractval.value.intValue(), Integer.valueOf(newval).intValue(), "checkout old variable of new contract value"); - Uint16 newVar = new_contractMigrate.getUint16().send(); - collector.logStepPass("new Contract new variable value is:" + newVar); - collector.assertEqual(newVar.value.intValue(), Integer.valueOf(newvar).intValue(), "checkout new variable of new contract value"); - } catch (Exception e) { - collector.logStepFail("ContractDistoryTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_multi_inherit/OneInheritTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_multi_inherit/OneInheritTest.java deleted file mode 100644 index c6ca2d1e95..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_multi_inherit/OneInheritTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package network.platon.test.wasm.contract_multi_inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.OneInherit; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 合约基础类单继承测试 - * @description: - * @author: hudenian - * @create: 2020/02/11 - */ -public class OneInheritTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.OneInherit合约基础类单继承测试",sourcePrefix = "wasm") - public void testOneInhert() { - - String head = "myHead"; - String body = "myBody"; - String end = "myEnd"; - - try { - prepare(); - OneInherit oneInherit = OneInherit.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = oneInherit.getContractAddress(); - String transactionHash = oneInherit.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("OneInherit issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + oneInherit.getTransactionReceipt().get().getGasUsed()); - - OneInherit.My_message my_message = new OneInherit.My_message(); - OneInherit.Message message = new OneInherit.Message(); - message.head = head; - - my_message.baseClass = message; - my_message.body = body; - my_message.end = end; - - TransactionReceipt transactionReceipt = oneInherit.add_my_message(my_message).send(); - collector.logStepPass("OneInheritTest call add_my_message successfully hash:" + transactionReceipt.getTransactionHash()); - - //查询vector中对象数量 - Uint8 size = oneInherit.get_my_message_size().send(); - collector.logStepPass("vector中my_message 数量为:"+size); - - //查询消息头信息 - Uint8 idx = Uint8.of(0); - String chainHead = oneInherit.get_my_message_head(idx).send(); - collector.logStepPass("OneInheritTest call get_my_message_head successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainHead,head); - - //查询消息体信息 - String chainBody = oneInherit.get_my_message_body(idx).send(); - collector.logStepPass("OneInheritTest call get_my_message_body successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainBody,body); - - - } catch (Exception e) { - collector.logStepFail("OneInheritTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_multi_inherit/OneInheritWithMultiDataTypeTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_multi_inherit/OneInheritWithMultiDataTypeTest.java deleted file mode 100644 index c64a800483..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_multi_inherit/OneInheritWithMultiDataTypeTest.java +++ /dev/null @@ -1,82 +0,0 @@ -package network.platon.test.wasm.contract_multi_inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.OneInheritWithMultiDataType; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 合约基础类单继承带有多种类型参数测试 - * @description: - * @author: hudenian - * @create: 2020/02/17 - */ -public class OneInheritWithMultiDataTypeTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.OneInheritWithMultiDataType合约基础类单继承带有多种类型参数测试",sourcePrefix = "wasm") - public void testOneInhertWithMultiDataType() { - - String head = "myHead"; - String body = "myBody"; - String end = "myEnd"; - Uint32 age = Uint32.of(20); - Uint64 money = Uint64.of(100000L); - - try { - prepare(); - OneInheritWithMultiDataType oneInheritWithMultiDataType = OneInheritWithMultiDataType.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = oneInheritWithMultiDataType.getContractAddress(); - String transactionHash = oneInheritWithMultiDataType.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("oneInheritWithMultiDataType issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + oneInheritWithMultiDataType.getTransactionReceipt().get().getGasUsed()); - - OneInheritWithMultiDataType.My_message my_message = new OneInheritWithMultiDataType.My_message(); - OneInheritWithMultiDataType.Message message = new OneInheritWithMultiDataType.Message(); - message.head = head; - message.age = age; - message.money = money; - - my_message.baseClass = message; - my_message.body = body; - my_message.end = end; - - TransactionReceipt transactionReceipt = oneInheritWithMultiDataType.add_my_message(my_message).send(); - collector.logStepPass("OneInheritWithMultiDataTypeTest call add_my_message successfully hash:" + transactionReceipt.getTransactionHash()); - - //查询vector中对象数量 - Uint8 size = oneInheritWithMultiDataType.get_my_message_size().send(); - collector.logStepPass("vector中my_message 数量为:"+size); - - //查询消息头信息 - Uint8 idx = Uint8.of(0); - String chainHead = oneInheritWithMultiDataType.get_my_message_head(idx).send(); - collector.logStepPass("OneInheritWithMultiDataTypeTest call get_my_message_head successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainHead,head); - - //查询消息体信息 - String chainBody = oneInheritWithMultiDataType.get_my_message_body(idx).send(); - collector.logStepPass("OneInheritWithMultiDataTypeTest call get_my_message_body successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainBody,body); - - //查询age信息 - Uint32 chainAge = oneInheritWithMultiDataType.get_my_message_age(idx).send(); - collector.logStepPass("OneInheritWithMultiDataTypeTest call get_my_message_age successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainAge,age); - - //查询money信息 - Uint64 chainMoney = oneInheritWithMultiDataType.get_my_message_money(idx).send(); - collector.logStepPass("OneInheritWithMultiDataTypeTest call get_my_message_money successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainMoney,money); - - } catch (Exception e) { - collector.logStepFail("OneInheritWithMultiDataTypeTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_multi_inherit/ThreeInheritTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_multi_inherit/ThreeInheritTest.java deleted file mode 100644 index 6a82a12277..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_multi_inherit/ThreeInheritTest.java +++ /dev/null @@ -1,86 +0,0 @@ -package network.platon.test.wasm.contract_multi_inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ThreeInherit; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 合约基础类三次继承测试 - * @description: - * @author: hudenian - * @create: 2020/02/16 - */ -public class ThreeInheritTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.TwoInheritT合约基础类三次继承测试",sourcePrefix = "wasm") - public void testThreeInhert() { - - String head = "myHead"; - String body = "myBody"; - String end = "myEnd"; - String from = "myFrom"; - String to = "myTo"; - String level = "myLevel"; - String desc = "myDesc"; - - try { - prepare(); - ThreeInherit threeInherit = ThreeInherit.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = threeInherit.getContractAddress(); - String transactionHash = threeInherit.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ThreeInherit issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + threeInherit.getTransactionReceipt().get().getGasUsed()); - - //基类 - ThreeInherit.Message message = new ThreeInherit.Message(); - message.head = head; - - //子类 - ThreeInherit.My_message my_message = new ThreeInherit.My_message(); - my_message.baseClass = message; - my_message.body = body; - my_message.end = end; - - //孙子类 - ThreeInherit.Sub_my_message sub_my_message = new ThreeInherit.Sub_my_message(); - sub_my_message.from = from; - sub_my_message.to = to; - sub_my_message.baseClass = my_message; - - //曾孙类 - ThreeInherit.Greate_sub_my_message greate_sub_my_message= new ThreeInherit.Greate_sub_my_message(); - greate_sub_my_message.level = level; - greate_sub_my_message.desc = desc; - greate_sub_my_message.baseClass = sub_my_message; - - - TransactionReceipt transactionReceipt = threeInherit.add_greate_sub_my_message(greate_sub_my_message).send(); - collector.logStepPass("ThreeInheritTest call add_my_message successfully hash:" + transactionReceipt.getTransactionHash()); - - //查询vector中对象数量 - Uint8 size = threeInherit.get_greate_sub_my_message_size().send(); - collector.logStepPass("vector中sub_my_message 数量为:"+size); - - //查询消息头信息 - Uint8 idx = Uint8.of(0); - String chainHead = threeInherit.get_greate_sub_my_message_head(idx).send(); - collector.logStepPass("ThreeInheritTest call get_sub_my_message_head successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainHead,head); - - //查询曾孙desc - String chainDesc = threeInherit.get_greate_sub_my_message_desc(idx).send(); - collector.logStepPass("ThreeInheritTest call get_sub_my_message_from successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainDesc,desc); - - - } catch (Exception e) { - collector.logStepFail("ThreeInheritTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_multi_inherit/TwoInheritTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_multi_inherit/TwoInheritTest.java deleted file mode 100644 index bbaa8095a3..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_multi_inherit/TwoInheritTest.java +++ /dev/null @@ -1,78 +0,0 @@ -package network.platon.test.wasm.contract_multi_inherit; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.TwoInherit; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 合约基础类双继承测试 - * @description: - * @author: hudenian - * @create: 2020/02/11 - */ -public class TwoInheritTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.TwoInheritT合约基础类双继承测试",sourcePrefix = "wasm") - public void testTwoInhert() { - - String head = "myHead"; - String body = "myBody"; - String end = "myEnd"; - String from = "myFrom"; - String to = "myTo"; - - try { - prepare(); - TwoInherit twoInherit = TwoInherit.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = twoInherit.getContractAddress(); - String transactionHash = twoInherit.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("twoInherit issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + twoInherit.getTransactionReceipt().get().getGasUsed()); - - //基类 - TwoInherit.Message message = new TwoInherit.Message(); - message.head = head; - - //子类 - TwoInherit.My_message my_message = new TwoInherit.My_message(); - my_message.baseClass = message; - my_message.body = body; - my_message.end = end; - - //孙子类 - TwoInherit.Sub_my_message sub_my_message = new TwoInherit.Sub_my_message(); - sub_my_message.from = from; - sub_my_message.to = to; - sub_my_message.baseClass = my_message; - - - TransactionReceipt transactionReceipt = twoInherit.add_sub_my_message(sub_my_message).send(); - collector.logStepPass("TwoInheritTest call add_my_message successfully hash:" + transactionReceipt.getTransactionHash()); - - //查询vector中对象数量 - Uint8 size = twoInherit.get_sub_my_message_size().send(); - collector.logStepPass("vector中sub_my_message 数量为:"+size); - - //查询消息头信息 - Uint8 idx = Uint8.of(0); - String chainHead = twoInherit.get_sub_my_message_head(idx).send(); - collector.logStepPass("TwoInheritTest call get_sub_my_message_head successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainHead,head); - - //查询消息from - String chainFrom = twoInherit.get_sub_my_message_from(idx).send(); - collector.logStepPass("TwoInheritTest call get_sub_my_message_from successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainFrom,from); - - - } catch (Exception e) { - collector.logStepFail("TwoInheritTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_object_oriented/ContractInterfaceTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_object_oriented/ContractInterfaceTest.java deleted file mode 100644 index f5cc3ba56e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_object_oriented/ContractInterfaceTest.java +++ /dev/null @@ -1,42 +0,0 @@ -package network.platon.test.wasm.contract_object_oriented; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ContractInterface; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 创建合约面向对象接口特性的函数测试 - * @description: - * @author: xuwen - * @create: 2020/02/07 - */ -public class ContractInterfaceTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "xuwen", showName = "wasm.contract_interface接口特性测试",sourcePrefix = "wasm") - public void testNewContract() { - - String name = "xuwen"; - try { - prepare(); - ContractInterface contractInterface = ContractInterface.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractInterface.getContractAddress(); - String transactionHash = contractInterface.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractInterface issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - - Uint64 number = Uint64.of(10); - TransactionReceipt transactionReceipt = contractInterface.setCount(number).send(); - collector.logStepPass("ContractInterface setCount successfully hash:" + transactionReceipt.getTransactionHash()); - - Uint64 count = contractInterface.getCount().send(); - collector.assertEqual(count,number); - } catch (Exception e) { - collector.logStepFail("ContractInterfaceTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_object_oriented/OverrideContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_object_oriented/OverrideContractTest.java deleted file mode 100644 index 7608e7ef30..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_object_oriented/OverrideContractTest.java +++ /dev/null @@ -1,49 +0,0 @@ -package network.platon.test.wasm.contract_object_oriented; - -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.OverrideContract; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; - -/** - * @author zjsunzone - * - * The test class of the function for chain. - */ -public class OverrideContractTest extends WASMContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.override_contract",sourcePrefix = "wasm") - public void testOverrideContract() { - try { - prepare(); - - // deploy contract. - OverrideContract contract = OverrideContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("OverrideContract issued successfully.contractAddress:" - + contractAddress + ", hash:" + transactionHash - + " gasUsed:" + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // 1. input = 1, get: 100, input == 2, get: 10000 - Uint32 area01 = contract.getArea(Uint64.of(1)).send(); - collector.logStepPass("To invoke getArea success, area: " + area01.getValue().toString()); - collector.assertEqual(area01.getValue(), BigInteger.valueOf(100)); - - Uint32 area02 = contract.getArea(Uint64.of(2)).send(); - collector.logStepPass("To invoke getArea success, area2: " + area02.getValue().toString()); - collector.assertEqual(area02.getValue(), BigInteger.valueOf(10000)); - - } catch (Exception e) { - collector.logStepFail("OverrideContract failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_termination/ContractAssertTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_termination/ContractAssertTest.java deleted file mode 100644 index 2f48df8d7c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_termination/ContractAssertTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.wasm.contract_termination; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.Contract_termination; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 合约终止,platon_assert 断言失败会退出合约,此时会花费掉实际执行消耗的 gas - * @description: - * @author: hudenian - * @create: 2020/02/07 - */ -public class ContractAssertTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_termination合约assert终止",sourcePrefix = "wasm") - public void testAssertContract() { - - String nomalName = "nomalName"; - String errorName = "errorName"; - Uint64 nomalValue = Uint64.of(112L); - Uint64 errorValue = Uint64.of(12L); - try { - prepare(); - Contract_termination contractTermination = Contract_termination.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractTermination.getContractAddress(); - String transactionHash = contractTermination.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractTermination issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractTermination.getTransactionReceipt().get().getGasUsed()); - - //调用包含platon_assert的合约,传正常的值 - TransactionReceipt transactionReceipt = contractTermination.transfer_assert(nomalName,nomalValue).send(); - collector.logStepPass("ContractTermination transfer_assert successfully hash:" + transactionReceipt.getTransactionHash()); - - //查询调platon_panic之前设置的值 - String chainName = contractTermination.get_string_storage().send(); - collector.logStepPass("ContractTermination assert get_string_storage successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainName,nomalName); - - //调用包含platon_assert的合约,传触发assert方法 - transactionReceipt = contractTermination.transfer_assert(errorName,errorValue).send(); - collector.logStepPass("ContractTermination transfer_assert successfully hash:" + transactionReceipt.getTransactionHash()); - - - } catch (Exception e) { - if(e instanceof TransactionException){ - collector.logStepPass("platon_assert会消耗实际使用的gas:"+e.getMessage()); - }else{ - collector.logStepFail("ContractDistoryTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_termination/ContractPanicTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_termination/ContractPanicTest.java deleted file mode 100644 index 3dae90e0bb..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_termination/ContractPanicTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.wasm.contract_termination; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.Contract_panic; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 合约终止,把用户的全部 gas 用完 - * @description: - * @author: hudenian - * @create: 2020/02/07 - */ -public class ContractPanicTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_termination合约panic终止",sourcePrefix = "wasm") - public void testPanicContract() { - - String name = "hudenian"; - Uint64 value = Uint64.of(3L); - try { - prepare(); - Contract_panic contractPanic = Contract_panic.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractPanic.getContractAddress(); - String transactionHash = contractPanic.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractPanic issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractPanic.getTransactionReceipt().get().getGasUsed()); - - //调用包含platon_panic的合约 - TransactionReceipt transactionReceipt = contractPanic.panic_contract(name,value).send(); - collector.logStepPass("ContractDistory panic_contract successfully hash:" + transactionReceipt.getTransactionHash()); - - //查询调platon_panic之前设置的值 - String chainName = contractPanic.get_string_storage().send(); - collector.logStepPass("ContractDistory get_string_storage successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainName,name); - - //查询调platon_panic之后设置的值 - String chainName1 = contractPanic.get_string_storage1().send(); - collector.logStepPass("ContractDistory get_string_storage1 successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainName1,name); - - } catch (Exception e) { - if(e instanceof TransactionException){ - collector.logStepPass("platon_panic会消耗所有的gas:"+e.getMessage()); - }else{ - collector.logStepFail("ContractDistoryTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_termination/ContractPanicWithSmalllGasTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_termination/ContractPanicWithSmalllGasTest.java deleted file mode 100644 index 53b1dc31ee..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_termination/ContractPanicWithSmalllGasTest.java +++ /dev/null @@ -1,41 +0,0 @@ -package network.platon.test.wasm.contract_termination; - -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.Contract_panic; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 合约gas不足终止 - * @description: - * @author: hudenian - * @create: 2020/02/19 - */ -public class ContractPanicWithSmalllGasTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_termination合约gas不足终止",sourcePrefix = "wasm") - public void testPanicContractWithSmallGas() { - - String name = "hudenian"; - Long value = 3L; - try { - prepare(); - //gas设置过小 -// provider = new ContractGasProvider(BigInteger.valueOf(50L), BigInteger.valueOf(90000000L)); - Contract_panic contractPanic = Contract_panic.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractPanic.getContractAddress(); - String transactionHash = contractPanic.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractPanic issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - - } catch (Exception e) { - if(e instanceof RuntimeException && e.getMessage().contains("transaction underpriced")){ - collector.logStepPass("gas 不足合约部署终止:"+e.getMessage()); - }else{ - collector.logStepFail("ContractPanicWithSmalllGasTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_termination/ContractTimeoutTerminationTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_termination/ContractTimeoutTerminationTest.java deleted file mode 100644 index 268e8b0a96..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/contract_termination/ContractTimeoutTerminationTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package network.platon.test.wasm.contract_termination; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.protocol.exceptions.TransactionException; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.Contract_timeout_termination; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 合约死循环终止 - * @description: - * @author: hudenian - * @create: 2020/02/07 - */ -public class ContractTimeoutTerminationTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.contract_termination合约timeout终止",sourcePrefix = "wasm") - public void testTimeOutContract() { - - String nomalName = "nomalName"; - String errorName = "errorName"; - Uint64 nomalValue = Uint64.of(12L); - Uint64 errorValue = Uint64.of(112L); - try { - prepare(); - Contract_timeout_termination contractTimeoutTermination = Contract_timeout_termination.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contractTimeoutTermination.getContractAddress(); - String transactionHash = contractTimeoutTermination.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ContractTermination issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + contractTimeoutTermination.getTransactionReceipt().get().getGasUsed()); - - //传正常的值 - TransactionReceipt transactionReceipt = contractTimeoutTermination.forfunction(nomalName,nomalValue).send(); - collector.logStepPass("ContractTermination call forfunction set nomal value successfully hash:" + transactionReceipt.getTransactionHash()); - - //查询结果 - String chainName = contractTimeoutTermination.get_string_storage().send(); - collector.logStepPass("ContractTimeoutTerminationTest nomal get_string_storage successfully hash:" + transactionReceipt.getTransactionHash()); - collector.assertEqual(chainName,nomalName); - - //传异常值 - transactionReceipt = contractTimeoutTermination.forfunction(errorName,errorValue).send(); - collector.logStepPass("ContractTermination call forfunction set error value successfully hash:" + transactionReceipt.getTransactionHash()); - - - } catch (Exception e) { - if(e instanceof TransactionException){ - collector.logStepPass("死循环产生gas消耗完:"+e.getMessage()); - }else{ - collector.logStepFail("ContractDistoryTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/AutoTypeTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/AutoTypeTest.java deleted file mode 100644 index f0f8025a13..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/AutoTypeTest.java +++ /dev/null @@ -1,81 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.AutoTypeContract; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试合约anto关键字 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class AutoTypeTest extends WASMContractPrepareTest { - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.autoTypeTest测试合约anto关键字",sourcePrefix = "wasm") - public void testAutoType() { - - //部署合约 - AutoTypeContract autoTypeContract = null; - try { - prepare(); - autoTypeContract = AutoTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = autoTypeContract.getContractAddress(); - TransactionReceipt tx = autoTypeContract.getTransactionReceipt().get(); - collector.logStepPass("autoTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("autoTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:自动匹配int类型 - Int32 actualIntValue = autoTypeContract.get_anto_int().send(); - collector.logStepPass("autoTypeContract 【验证自动匹配int类型】 执行get_anto_int() successfully actualIntValue:" + actualIntValue); - collector.assertEqual(actualIntValue,Int32.of(5), "checkout execute success."); - //2、验证:自动匹配int类型负数值 - Int32 actualIntValue2 = autoTypeContract.get_anto_int32().send(); - collector.logStepPass("autoTypeContract 【验证自动匹配int类型负数值】 执行get_anto_int32() successfully actualIntValue2:" + actualIntValue2); - collector.assertEqual(actualIntValue,Int32.of(5), "checkout execute success."); - - - //2、验证:自动匹配double类型 - /* Double actualDoubleValue = autoTypeContract.get_anto_double().send(); - collector.logStepPass("autoTypeContract 【验证自动匹配double类型】 get_anto_double() successfully actualDoubleValue:" + actualDoubleValue); - collector.assertEqual(actualDoubleValue,Double.parseDouble("1.0"), "checkout execute success.");*/ - //3、验证:自动匹配多个值类型 - Int32 actualmultipleValue = autoTypeContract.get_anto_multiple().send(); - collector.logStepPass("autoTypeContract 【验证自动匹配多个值类型】 get_anto_multiple() successfully actualmultipleValue:" + actualmultipleValue); - collector.assertEqual(actualmultipleValue,Int32.of(30), "checkout execute success."); - //4、验证:自动匹配uint8类型 - Uint8 actualUint8Value = autoTypeContract.get_anto_uint8_t().send(); - collector.logStepPass("autoTypeContract 【验证自动匹配uint8类型】 get_anto_uint8_t() successfully actualUint8Value:" + actualUint8Value); - collector.assertEqual(actualUint8Value,Uint8.of(10), "checkout execute success."); - - //5、验证:自动匹配表达式 - /* Double actualValue = autoTypeContract.get_anto_express().send(); - collector.logStepPass("autoTypeContract 【验证自动匹配表达式】 执行get_anto_express() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,Double.parseDouble("15.32"), "checkout execute success.");*/ - //6、验证:迭代器中应用auto - Uint8 iteratorCount = autoTypeContract.get_anto_iterator().send(); - collector.logStepPass("autoTypeContract 【验证迭代器中应用auto】 执行get_anto_iterator() successfully iteratorCount:" + iteratorCount); - collector.assertEqual(iteratorCount,Uint8.of(3), "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("autoTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/BasicDataIntegerTypeTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/BasicDataIntegerTypeTest.java deleted file mode 100644 index cff811a69f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/BasicDataIntegerTypeTest.java +++ /dev/null @@ -1,173 +0,0 @@ -package network.platon.test.wasm.data_type; - - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.*; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.BasicDataIntegerTypeContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试整型基本类型 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class BasicDataIntegerTypeTest extends WASMContractPrepareTest { - - private String int8ValueStr; - private String int16ValueStr; - private String int32ValueStr; - private String int64ValueStr; - private String uint8ValueStr; - private String uint16ValueStr; - private String uint32ValueStr; - private String uint64ValueStr; - private String uint160ValueStr; - private String uint256ValueStr; - private String uintbigIntValueStr; - - @Before - public void before() { - int8ValueStr = driverService.param.get("int8ValueStr"); - int16ValueStr = driverService.param.get("int16ValueStr"); - int32ValueStr = driverService.param.get("int32ValueStr"); - int64ValueStr = driverService.param.get("int64ValueStr"); - uint8ValueStr = driverService.param.get("uint8ValueStr"); - uint16ValueStr = driverService.param.get("uint16ValueStr"); - uint32ValueStr = driverService.param.get("uint32ValueStr"); - uint64ValueStr = driverService.param.get("uint64ValueStr"); - int64ValueStr = driverService.param.get("int64ValueStr"); - uint160ValueStr = driverService.param.get("uint160ValueStr"); - uint256ValueStr = driverService.param.get("uint256ValueStr"); - uintbigIntValueStr = driverService.param.get("uintbigIntValueStr"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.basicDataIntegerTypeTest整型基本类型验证测试",sourcePrefix = "wasm") - public void testBasicDataIntegerTypeTest() { - - //部署合约 - BasicDataIntegerTypeContract basicDataIntegerTypeContract = null; - try { - prepare(); - basicDataIntegerTypeContract = BasicDataIntegerTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataIntegerTypeContract.getContractAddress(); - TransactionReceipt tx = basicDataIntegerTypeContract.getTransactionReceipt().get(); - collector.logStepPass("basicDataIntegerTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("basicDataIntegerTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:整型有符号/无符号类型 - Int8 int8Value = Int8.of(Long.parseLong(int8ValueStr)); - Int16 int16Value = Int16.of(Long.parseLong(int16ValueStr)); - Int32 int32Value = Int32.of(Long.parseLong(int32ValueStr)); - Int64 int64Value = Int64.of(Long.parseLong(int64ValueStr)); - Uint8 uint8Value = Uint8.of(Long.parseLong(uint8ValueStr)); - Uint16 uint16Value = Uint16.of(Long.parseLong(uint16ValueStr)); - Uint32 uint32Value = Uint32.of(Long.parseLong(uint32ValueStr)); - Uint64 uint64Value = Uint64.of(Long.parseLong(uint64ValueStr)); - Uint64 uint160Value = Uint64.of(Long.parseLong(uint160ValueStr)); - Uint64 uint256Value = Uint64.of(Long.parseLong(uint256ValueStr)); - Uint64 uintbigIntValue = Uint64.of(Long.parseLong(uintbigIntValueStr)); - - - - - //int8 - TransactionReceipt transactionReceipt = basicDataIntegerTypeContract.set_int8(int8Value).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证int8整型有符号/无符号类型】 successfully hash:" + transactionReceipt.getTransactionHash()); - Int8 actualInt8Value = basicDataIntegerTypeContract.get_int8().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数int8_t取值】 执行get_int8() successfully actualInt8Value:" + actualInt8Value.toString()); - collector.assertEqual(actualInt8Value,int8Value, "checkout execute success."); - //int16 - TransactionReceipt transactionReceipt1 = basicDataIntegerTypeContract.set_int16(int16Value).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证int16整型有符号/无符号类型】 successfully hash:" + transactionReceipt1.getTransactionHash()); - Int16 actualInt16Value = basicDataIntegerTypeContract.get_int16().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数int16_t取值】 执行get_int16() successfully actualInt16Value:" + actualInt16Value.toString()); - collector.assertEqual(actualInt16Value,int16Value, "checkout execute success."); - //int32 - TransactionReceipt transactionReceipt2 = basicDataIntegerTypeContract.set_int32(int32Value).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证int32整型有符号/无符号类型】 successfully hash:" + transactionReceipt2.getTransactionHash()); - Int32 actualInt32Value = basicDataIntegerTypeContract.get_int32().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数int32_t取值】 执行get_int32() successfully actualInt32Value:" + actualInt32Value.toString()); - collector.assertEqual(actualInt32Value,int32Value, "checkout execute success."); - //int64 - TransactionReceipt transactionReceipt3 = basicDataIntegerTypeContract.set_int64(int64Value).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证int64整型有符号/无符号类型】 successfully hash:" + transactionReceipt3.getTransactionHash()); - Int64 actualInt64Value = basicDataIntegerTypeContract.get_int64().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数int32_t取值】 执行get_int64() successfully actualInt64Value:" + actualInt64Value.toString()); - collector.assertEqual(actualInt64Value,int64Value, "checkout execute success."); - - //uint8 - TransactionReceipt transactionReceipt4 = basicDataIntegerTypeContract.set_uint8(uint8Value).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证uint8整型有符号/无符号类型】 successfully hash:" + transactionReceipt4.getTransactionHash()); - Uint8 actualUint8Value = basicDataIntegerTypeContract.get_uint8().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数uint8_t取值】 执行get_uint8() successfully actualUint8Value:" + actualUint8Value.toString()); - collector.assertEqual(actualUint8Value,uint8Value, "checkout execute success."); - - //uint16 - TransactionReceipt transactionReceipt5 = basicDataIntegerTypeContract.set_uint16(uint16Value).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证uint16整型有符号/无符号类型】 successfully hash:" + transactionReceipt5.getTransactionHash()); - Uint16 actualUint16Value = basicDataIntegerTypeContract.get_uint16().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数uint16_t取值】 执行get_uint16() successfully actualUint16Value:" + actualUint16Value.toString()); - collector.assertEqual(actualUint16Value,uint16Value, "checkout execute success."); - - //uint32 - TransactionReceipt transactionReceipt6 = basicDataIntegerTypeContract.set_uint32(uint32Value).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证uint32整型有符号/无符号类型】 successfully hash:" + transactionReceipt6.getTransactionHash()); - Uint32 actualUint32Value = basicDataIntegerTypeContract.get_uint32().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数uint32_t取值】 执行get_uint32() successfully actualUint32Value:" + actualUint32Value.toString()); - collector.assertEqual(actualUint32Value,uint32Value, "checkout execute success."); - - //uint64 - TransactionReceipt transactionReceipt7 = basicDataIntegerTypeContract.set_uint64(uint64Value).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证uint64整型有符号/无符号类型】 successfully hash:" + transactionReceipt7.getTransactionHash()); - Uint64 actualUint64Value = basicDataIntegerTypeContract.get_uint64().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数uint64_t取值】 执行get_uint64() successfully actualUint64Value:" + actualUint64Value.toString()); - collector.assertEqual(actualUint64Value,uint64Value, "checkout execute success."); - - //u128 - TransactionReceipt transactionReceipt8 = basicDataIntegerTypeContract.set_u128(uint64Value).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证u128整型类型】 successfully hash:" + transactionReceipt8.getTransactionHash()); - String actualU128Value = basicDataIntegerTypeContract.get_u128().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数u128取值】 执行get_u128() successfully actualU128Value:" + actualU128Value); - collector.assertEqual(actualU128Value,uint64ValueStr, "checkout execute success."); - - //u160 - /* TransactionReceipt transactionReceipt8 = basicDataIntegerTypeContract.set_u160(uint160Value).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证u160整型有符号/无符号类型】 successfully hash:" + transactionReceipt8.getTransactionHash()); - String actualU160Value = basicDataIntegerTypeContract.get_u160().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数u160取值】 执行get_u160() successfully actualU160Value:" + actualU160Value); - collector.assertEqual(actualU160Value,uint160ValueStr, "checkout execute success."); - - //u256 - TransactionReceipt transactionReceipt9 = basicDataIntegerTypeContract.set_u256(uint256Value).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证u256整型有符号/无符号类型】 successfully hash:" + transactionReceipt9.getTransactionHash()); - String actualU256Value = basicDataIntegerTypeContract.get_u256().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数u256取值】 执行get_u160() successfully actualU256Value:" + actualU256Value); - collector.assertEqual(actualU256Value,uint256ValueStr, "checkout execute success."); - - //bigint - TransactionReceipt transactionReceipt10 = basicDataIntegerTypeContract.set_bigint(uintbigIntValue).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证bigint整型有符号/无符号类型】 successfully hash:" + transactionReceipt10.getTransactionHash()); - String actualBigIntValue = basicDataIntegerTypeContract.get_bigint().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数bigInt取值】 执行get_bigint() successfully actualBigIntValue:" + actualBigIntValue); - collector.assertEqual(actualBigIntValue,uintbigIntValueStr, "checkout execute success.");*/ - - } catch (Exception e) { - collector.logStepFail("basicDataIntegerTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/BasicDataTypeTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/BasicDataTypeTest.java deleted file mode 100644 index 229a8f108c..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/BasicDataTypeTest.java +++ /dev/null @@ -1,138 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.BasicDataTypeContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试基本类型 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class BasicDataTypeTest extends WASMContractPrepareTest { - - private String uint8ByteValueStr; - private String stringValueStr; - private String stringValueStrLength; - private String floatValueStr; - - - @Before - public void before() { - uint8ByteValueStr = driverService.param.get("uint8ByteValueStr"); - stringValueStr = driverService.param.get("stringValueStr"); - stringValueStrLength = driverService.param.get("stringValueStrLength"); - floatValueStr = driverService.param.get("floatValueStr"); - - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.basicDataTypeTest基本类型验证测试",sourcePrefix = "wasm") - public void testBasicDataType() { - //部署合约 - BasicDataTypeContract basicDataTypeContract = null; - try { - prepare(); - basicDataTypeContract = BasicDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = basicDataTypeContract.getContractAddress(); - TransactionReceipt tx = basicDataTypeContract.getTransactionReceipt().get(); - collector.logStepPass("basicDataTypeContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("basicDataTypeContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:布尔值赋值 - Boolean boolValue = true; - TransactionReceipt transactionReceipt = basicDataTypeContract.set_bool(boolValue).send(); - collector.logStepPass("basicDataTypeContract 【验证布尔值赋值】 successfully hash:" + transactionReceipt.getTransactionHash()); - Boolean actualBoolValue = basicDataTypeContract.get_bool().send(); - collector.logStepPass("basicDataTypeContract 【验证布尔值取值】 执行getBool() successfully actualBoolValue:" + actualBoolValue); - collector.assertEqual(actualBoolValue,boolValue, "checkout execute success."); - //2、验证:字节类型(byte) - Uint8 uint8ByteValue = Uint8.of(uint8ByteValueStr); - TransactionReceipt transactionReceipt1 = basicDataTypeContract.set_byte(uint8ByteValue).send(); - collector.logStepPass("basicDataTypeContract 【验证字节类型(byte)】 successfully hash:" + transactionReceipt1.getTransactionHash()); - Uint8 actualByteValue = basicDataTypeContract.get_byte().send(); - collector.logStepPass("basicDataTypeContract 【验证字节类型取值】 执行get_byte() successfully actualByteValue:" + actualByteValue); - collector.assertEqual(actualByteValue,uint8ByteValue, "checkout execute success."); - //3、验证:字符串赋值 - TransactionReceipt transactionReceipt2 = basicDataTypeContract.set_string(stringValueStr).send(); - collector.logStepPass("basicDataTypeContract 【验证字符串赋值】 successfully hash:" + transactionReceipt2.getTransactionHash()); - String actualStringValue = basicDataTypeContract.get_string().send(); - collector.logStepPass("basicDataTypeContract 【验证字符串取值】 执行get_string() successfully actualStringValue:" + actualStringValue); - collector.assertEqual(actualStringValue,stringValueStr, "checkout execute success."); - //4、验证:字符串长度 - Uint8 actualStringLength = basicDataTypeContract.get_string_length().send(); - collector.logStepPass("basicDataTypeContract 【验证字符串长度】 执行get_string_length() successfully actualStringLength:" + actualStringLength); - collector.assertEqual(actualStringLength,Uint8.of(stringValueStrLength), "checkout execute success."); - //5、地址类型(Address) - TransactionReceipt transactionReceipt4 = basicDataTypeContract.set_address().send(); - collector.logStepPass("basicDataTypeContract 【验证地址类型(Address)】 successfully hash:" + transactionReceipt4.getTransactionHash()); - String actualAddreeValue = basicDataTypeContract.get_address().send(); - collector.logStepPass("basicDataTypeContract 【验证地址取值】 执行getString() successfully actualAddreeValue:" + actualAddreeValue); - //collector.assertEqual(actualStringValue,expectStringValue, "checkout execute success.") - //6、浮点类型(float) - // Float floatValue = Float.parseFloat(floatValueStr);//-3.4E-38f - /* Float floatValue = 1.5f; - TransactionReceipt transactionReceipt5 = basicDataTypeContract.set_float(floatValue).send(); - collector.logStepPass("basicDataTypeContract 【验证浮点类型(float)】 successfully hash:" + transactionReceipt5.getTransactionHash()); - Float actualFloatValue = basicDataTypeContract.get_float().send(); - collector.logStepPass("basicDataTypeContract 【验证浮点类型(float)取值】 执行get_float() successfully actualFloatValue:" + actualFloatValue); - collector.assertEqual(actualFloatValue,floatValue, "checkout execute success."); - //7、浮点类型(double) - // Double doubleValue = 6.577; - Double doubleValue = 2.4791E2; - TransactionReceipt transactionReceipt6 = basicDataTypeContract.set_double(doubleValue).send(); - collector.logStepPass("basicDataTypeContract 【验证浮点类型(double)】 successfully hash:" + transactionReceipt6.getTransactionHash()); - Double actualDoubleValue = basicDataTypeContract.get_double().send(); - collector.logStepPass("basicDataTypeContract 【验证浮点类型(double)取值】 执行get_double() successfully actualDoubleValue:" + actualDoubleValue); - collector.assertEqual(actualDoubleValue,doubleValue, "checkout execute success.");*/ - //8、验证浮点型局部变量 - TransactionReceipt transactionReceipt6 = basicDataTypeContract.set_float_type_local().send(); - collector.logStepPass("basicDataTypeContract 【验证浮点型局部变量】 successfully hash:" + transactionReceipt6.getTransactionHash()); - - //9、验证long整型 - Int32 longValue = Int32.of(50); - TransactionReceipt transactionReceipt7 = basicDataTypeContract.set_long(longValue).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证long整型类型】 successfully hash:" + transactionReceipt7.getTransactionHash()); - Int32 actualLongValue = basicDataTypeContract.get_long().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数long取值】 执行get_long() successfully actualLongValue:" + actualLongValue); - collector.assertEqual(actualLongValue,longValue, "checkout execute success."); - - //10、验证long long整型 - Int64 longlongValue = Int64.of(100); - TransactionReceipt transactionReceipt8 = basicDataTypeContract.set_long_long(longlongValue).send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证longlong整型类型】 successfully hash:" + transactionReceipt8.getTransactionHash()); - Int64 actualLongLongValue = basicDataTypeContract.get_long_long().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证整数longlong取值】 执行get_long_long() successfully actualLongLongValue:" + actualLongLongValue); - collector.assertEqual(actualLongLongValue,longlongValue, "checkout execute success."); - //11、enum枚举赋值 - Uint8 actualEnumValue = basicDataTypeContract.set_enum_assignment().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证enum枚举赋值】 执行set_enum_assignment() successfully actualEnumValue:" + actualEnumValue); - collector.assertEqual(actualEnumValue,Uint8.of(3), "checkout execute success."); - //12、enum限制作用域枚举赋值 - Uint8 actualEnumValue1 = basicDataTypeContract.set_enum_class_assignment().send(); - collector.logStepPass("basicDataIntegerTypeContract 【验证enum限制作用域枚举赋值】 执行set_enum_class_assignment() successfully actualEnumValue1:" + actualEnumValue1); - collector.assertEqual(actualEnumValue1,Uint8.of(2), "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("basicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/BindFunctionTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/BindFunctionTest.java deleted file mode 100644 index 70bf610c9b..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/BindFunctionTest.java +++ /dev/null @@ -1,68 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.BindFunctionContract; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试合约bind函数 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class BindFunctionTest extends WASMContractPrepareTest { - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.bindFunctionTest测试合约bind函数",sourcePrefix = "wasm") - public void testBindFunction() { - - //部署合约 - BindFunctionContract bindFunctionContract = null; - try { - prepare(); - bindFunctionContract = BindFunctionContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = bindFunctionContract.getContractAddress(); - TransactionReceipt tx = bindFunctionContract.getTransactionReceipt().get(); - collector.logStepPass("bindFunctionContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("bindFunctionContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:bind绑定普通函数 - Uint8 actualIntValue = bindFunctionContract.get_bind_function().send(); - collector.logStepPass("bindFunctionContract 【验证bind绑定普通函数】 执行get_bind_function() successfully actualIntValue:" + actualIntValue); - collector.assertEqual(actualIntValue,Uint8.of(6), "checkout execute success."); - - //2、验证:bind绑定类的成员函数 - Uint32 actualIntValue2 = bindFunctionContract.get_bind_class_function().send(); - collector.logStepPass("bindFunctionContract 【验证bind绑定类的成员函数(指针形式调用成员函数)】 执行get_bind_class_function() successfully actualIntValue2:" + actualIntValue2); - collector.assertEqual(actualIntValue2,Uint32.of(6), "checkout execute success."); - - //3、验证:bind绑定类的成员函数(对象形式调用成员函数) - Uint32 actualIntValue3 = bindFunctionContract.get_bind_class_function_one().send(); - collector.logStepPass("bindFunctionContract 【验证bind绑定类的成员函数(对象形式调用成员函数)】 执行get_bind_class_function_one() successfully actualIntValue3:" + actualIntValue3); - collector.assertEqual(actualIntValue3,Uint32.of(6), "checkout execute success."); - - //4、验证:bind绑定类静态成员函数 - Uint32 actualIntValue4 = bindFunctionContract.get_bind_static_function().send(); - collector.logStepPass("bindFunctionContract 【验证bind绑定类静态成员函数】 执行get_bind_static_function() successfully actualIntValue4:" + actualIntValue4); - collector.assertEqual(actualIntValue4,Uint32.of(6), "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("bindFunctionContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/FunctionTemplateTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/FunctionTemplateTest.java deleted file mode 100644 index 32cfd9d42e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/FunctionTemplateTest.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.FunctionTemplateContract; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试合约类模板std :: function - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class FunctionTemplateTest extends WASMContractPrepareTest { - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.autoTypeTest测试合约类模板std :: function",sourcePrefix = "wasm") - public void testFunctionTemplate() { - - //部署合约 - FunctionTemplateContract functionTemplateContract = null; - try { - prepare(); - functionTemplateContract = FunctionTemplateContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = functionTemplateContract.getContractAddress(); - TransactionReceipt tx = functionTemplateContract.getTransactionReceipt().get(); - collector.logStepPass("functionTemplateContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("functionTemplateContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:调用lambda表达式 - Uint8 actualValue = functionTemplateContract.get_lambda_function().send(); - collector.logStepPass("functionTemplateContract 【验证调用lambda表达式】 执行get_lambda_function() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,Uint8.of(6), "checkout execute success."); - - //2、验证:调用普通函数 - Uint8 actualValue1 = functionTemplateContract.get_normal_function().send(); - collector.logStepPass("functionTemplateContract 【验证调用普通函数】 执行get_normal_function() successfully actualValue1:" + actualValue1); - collector.assertEqual(actualValue1,Uint8.of(6), "checkout execute success."); - - //3、验证:调用类静态成员函数 - Uint8 actualValue2 = functionTemplateContract.get_class_static_function().send(); - collector.logStepPass("functionTemplateContract 【验证调用类静态成员函数】 执行get_class_static_function() successfully actualValue2:" + actualValue2); - collector.assertEqual(actualValue2,Uint8.of(6), "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("functionTemplateContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/IntegerDataTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/IntegerDataTypeContractTest.java deleted file mode 100644 index a88521c92f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/IntegerDataTypeContractTest.java +++ /dev/null @@ -1,421 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.*; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.IntegerDataTypeContract_1; -import network.platon.contracts.wasm.IntegerDataTypeContract_2; -import network.platon.contracts.wasm.IntegerDataTypeContract_3; -import network.platon.contracts.wasm.IntegerDataTypeContract_4; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; - -/** - * @author zjsunzone - * - * This class is used to test date type of integer. - */ -public class IntegerDataTypeContractTest extends WASMContractPrepareTest { - - @Before - public void before(){ - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.base_data_type_01",sourcePrefix = "wasm") - public void testBaseTypeContract_01() { - - try { - // deploy contract. - IntegerDataTypeContract_1 contract = IntegerDataTypeContract_1.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("IntegerDataTypeContract_01 issued successfully.contractAddress:" - + contractAddress + ", hash:" + transactionHash - + " gasUsed:" + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // test: int8 - Int16 int8 = contract.int8().send(); - collector.logStepPass("To invoke int8 success, int8: " + int8.getValue()); - - // test: int64 - Int64 int64 = contract.int64().send(); - collector.logStepPass("To invoke int8 success, int64: " + int64.getValue()); - - // test uint8 - Uint8 expectByt8 = Uint8.of(10); - Uint8 uint8 = contract.uint8t(expectByt8).send(); - collector.logStepPass("To invoke uint8 success, uint8: " + uint8.getValue().toString()); - - // test: uint32 - Uint32 expectByt32 = Uint32.of(1000); - Uint32 uint32 = contract.uint32t(expectByt32).send(); - collector.logStepPass("To invoke uint32 success, uint32: " + uint32.getValue()); - collector.assertEqual(uint32.getValue(), BigInteger.valueOf(2000)); - - // test: uint64 - Uint64 expect64 = Uint64.of(10000); - Uint64 uint64 = contract.uint64t(expect64).send(); - collector.logStepPass("To invoke uint64 success, uint64: " + uint64.getValue().toString()); - collector.assertEqual(uint64.getValue(), BigInteger.valueOf(20000)); - - // test: u128 - Uint64 expect128 = Uint64.of(10000); - String u128 = contract.u128t(expect128).send(); - collector.logStepPass("To invoke uint64 success, u128: " + u128); - collector.assertEqual(u128, expect128.getValue().toString()); - - // test: u256 - Uint64 expect256 = Uint64.of(10000); - String u256 = contract.u256t(expect256).send(); - collector.logStepPass("To invoke u256t success, u256: " + u128); - collector.assertEqual(u256, expect256.getValue().toString()); - - } catch (Exception e) { - if(e instanceof ArrayIndexOutOfBoundsException){ - collector.logStepPass("IntegerDataTypeContract_01 and could not call contract function"); - }else{ - collector.logStepFail("IntegerDataTypeContract_01 failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.base_data_type_02",sourcePrefix = "wasm") - public void testBaseTypeContract_02() { - - try { - // deploy contract. - IntegerDataTypeContract_2 contract = IntegerDataTypeContract_2.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("IntegerDataTypeContract_01 issued successfully.contractAddress:" - + contractAddress + ", hash:" + transactionHash - + " gasUsed:" + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // int8 - TransactionReceipt int8Tr = contract.setInt8(Int8.of((byte) 2)).send(); - collector.logStepPass("To invoke setInt 8 success, txHash: " + int8Tr.getTransactionHash()); - Int8 getInt8 = contract.getInt8().send(); - collector.logStepPass("To invoke getInt8 8 success, getInt8: " + getInt8.getValue()); - - // int32 - TransactionReceipt int32Tr = contract.setInt32(Int32.of(100)).send(); - collector.logStepPass("To invoke setInt32 success, txHash: " + int32Tr.getTransactionHash()); - Int32 getInt32 = contract.getInt32().send(); - collector.logStepPass("To invoke getInt32 success, getInt32: " + getInt32); - - // int64 - TransactionReceipt int64Tr = contract.setInt64(Int64.of(1111111111)).send(); - collector.logStepPass("To invoke setInt64 success, txHash: " + int64Tr.getTransactionHash()); - Int64 getInt64 = contract.getInt64().send(); - collector.logStepPass("To invoke getInt64 success, getInt64: " + getInt64); - - // ======================= uint ======================= - // uint8 - TransactionReceipt uint8Tr = contract.setUint8(Uint8.of(2)).send(); - collector.logStepPass("To invoke setUint8 success, txHash: " + uint8Tr.getTransactionHash()); - Uint8 getUint8 = contract.getUint8().send(); - collector.logStepPass("To invoke getUint8 8 success, getUint8: " + getUint8.getValue().toString()); - - // uint32 - TransactionReceipt uint32Tr = contract.setUint32(Uint32.of(100)).send(); - collector.logStepPass("To invoke setuUint32 success, txHash: " + uint32Tr.getTransactionHash()); - Uint32 getUint32 = contract.getUint32().send(); - collector.logStepPass("To invoke getUint32 success, getUint32: " + getUint32.getValue().toString()); - - // uint64 - TransactionReceipt uint64Tr = contract.setUint64(Uint64.of("1111111111")).send(); - collector.logStepPass("To invoke setUint64 success, txHash: " + uint64Tr.getTransactionHash()); - Uint64 getUint64 = contract.getUint64().send(); - collector.logStepPass("To invoke getUint64 success, getUint64: " + getUint64.getValue().toString()); - - } catch (Exception e) { - if(e instanceof ArrayIndexOutOfBoundsException){ - collector.logStepPass("IntegerDataTypeContract_02 and could not call contract function"); - }else{ - collector.logStepFail("IntegerDataTypeContract_02 failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.base_data_type_03",sourcePrefix = "wasm") - public void testBaseTypeContract_03() { - - try { - // deploy contract. - IntegerDataTypeContract_3 contract = IntegerDataTypeContract_3.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("IntegerDataTypeContract_3 issued successfully.contractAddress:" - + contractAddress + ", hash:" + transactionHash - + " gasUsed:" + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // test: store string - TransactionReceipt strTr = contract.setString("setString").send(); - String getString = contract.getString().send(); - collector.logStepPass("To invoke setString and getString, getString: " + getString); - collector.assertEqual(getString, "setString"); - - // test: store bool - TransactionReceipt boolTr = contract.setBool(true).send(); - boolean getBool = contract.getBool().send(); - collector.logStepPass("To invoke setBool and getBool, bool: " + getBool); - collector.assertEqual(getBool, true); - - // test: store char - Byte expectByte = (byte)1; - TransactionReceipt charTr = contract.setChar(Int8.of(expectByte.byteValue())).send(); - collector.logStepPass("To invoke setChar success, txHash: " + charTr.getTransactionHash()); - Int8 getChar = contract.getChar().send(); - collector.logStepPass("To invoke getChar success, getChar: " + getChar.getValue()); - collector.assertEqual(getChar.getValue(), expectByte.byteValue()); - - } catch (Exception e) { - collector.logStepFail("IntegerDataTypeContract_3 failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.base_data_type_04",sourcePrefix = "wasm") - public void testBaseTypeContract_04() { - - try { - // deploy contract. - IntegerDataTypeContract_4 contract = IntegerDataTypeContract_4.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("IntegerDataTypeContract_4 issued successfully.contractAddress:" - + contractAddress + ", hash:" + transactionHash - + " gasUsed:" + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // init address - TransactionReceipt initTr = contract.initAddress().send(); - collector.logStepPass("To invoke initAddress success, txHash: " + initTr.getTransactionHash()); - String afterInitAddress = contract.getAddress().send(); - collector.logStepPass("To invoke getAddress success, getAddress: " + afterInitAddress); -// collector.assertEqual(afterInitAddress.toLowerCase(), "lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2".toLowerCase()); - collector.assertEqual(afterInitAddress.toLowerCase(), "atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq".toLowerCase()); - -// // test: store address -// Address expectAddr = new Address("0x5b05e7a3e2a688c5e5cc491545a84a1efc66c1b1"); -// String expectAddr = "lax1fyeszufxwxk62p46djncj86rd553skpptsj8v6"; - String expectAddr = "atx1fyeszufxwxk62p46djncj86rd553skpph926ws"; - TransactionReceipt addrTr = contract.setAddress(expectAddr).send(); - collector.logStepPass("To invoke setAddress success, txHash: " + addrTr.getTransactionHash()); - String getAddress = contract.getAddress().send(); - collector.logStepPass("To invoke getAddress success, getAddress: " + getAddress); - //collector.assertEqual(getAddress, expectAddr); - - // test: store u256 - String expectU256 = "100000"; - TransactionReceipt u256TR = contract.setU256(Uint64.of(expectU256)).send(); - collector.logStepPass("To invoke setU256 success, txHash: " + u256TR.getTransactionHash()); - String getU256 = contract.getU256().send(); - collector.logStepPass("To invoke getU256 success, getU256: " + getU256); - collector.assertEqual(getU256, expectU256); - - // test: store h256 - String expectH256 = "0x80b543239ae8e4f679019719312524d10f14fef79fd0d9117d810bffdedf608e"; - TransactionReceipt h256Tr = contract.setH256(expectH256).send(); - collector.logStepPass("To invoke setH256 success, txHash: " + h256Tr.getTransactionHash()); - String getH256 = contract.getH256().send(); - collector.logStepPass("To invoke getH256 success, getH256: " + getH256); - //collector.assertEqual(getH256, expectH256); - - } catch (Exception e) { - collector.logStepFail("IntegerDataTypeContract_4 failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.base_data_type_border",sourcePrefix = "wasm") - public void testBaseTypeContract_border() { - // 主要测试各类型的边界值 - try { - // deploy contract. - IntegerDataTypeContract_2 contract = IntegerDataTypeContract_2.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("IntegerDataTypeContract_01 issued successfully.contractAddress:" - + contractAddress + ", hash:" + transactionHash - + " gasUsed:" + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // int8: -128 ~ 127 - // uint: 0 ~ 255 - // int32: -2147483648 ~ 2147483647 - // uint32: 0 ~ 4294967295 - // int64: -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 - // uint64: 0 ~ 18,446,744,073,709,551,615 - - // int8: -128 ~ 127 - // [{"input":100, "expect": 100, "equal":"N"}] - JSONArray int8Cases = JSON.parseArray("[" - + "{\"input\":-128, \"expect\": -128, \"equal\":\"Y\"}" - //+ "{\"input\":-129, \"expect\": -129, \"equal\":\"N\"}" // pass - + "{\"input\":127, \"expect\": 127, \"equal\":\"Y\"}" - //+ "{\"input\":128, \"expect\": 128, \"equal\":\"N\"}" // pass - +"]"); - for (int i = 0; i < int8Cases.size(); i++) { - JSONObject testCase = int8Cases.getJSONObject(i); - int input = testCase.getIntValue("input"); - int expect = testCase.getIntValue("expect"); - String equal = testCase.getString("equal"); - TransactionReceipt int8Tr = contract.setInt8(Int8.of(input)).send(); - collector.logStepPass("To invoke setInt8 success, txHash: " + int8Tr.getTransactionHash()); - Int8 getInt8 = contract.getInt8().send(); - collector.logStepPass("To invoke getInt8 success, setInt8: " + input+ " getInt8: " + getInt8.getValue()); - if(equal.equals("Y")){ - collector.assertEqual(getInt8.getValue(), (byte)expect); - } else { - boolean eq = (int)getInt8.getValue() != expect; - collector.assertTrue(eq); - } - } - - // uint8: 0 ~ 255 - JSONArray uint8Cases = JSON.parseArray("[" - //+ "{\"input\":-1, \"expect\": -1, \"equal\":\"N\"}" // pass: - + "{\"input\":0, \"expect\": 0, \"equal\":\"Y\"}" - //+ "{\"input\":254, \"expect\": 254, \"equal\":\"Y\"}" // return: -2 - + "{\"input\":255, \"expect\": 255, \"equal\":\"N\"}" - //+ "{\"input\":256, \"expect\": 256, \"equal\":\"N\"}" // pass. - +"]"); - for (int i = 0; i < uint8Cases.size(); i++) { - JSONObject testCase = uint8Cases.getJSONObject(i); - int input = testCase.getIntValue("input"); - int expect = testCase.getIntValue("expect"); - String equal = testCase.getString("equal"); - TransactionReceipt int8Tr = contract.setUint8(Uint8.of(input)).send(); - collector.logStepPass("To invoke setUint8 success, txHash: " + int8Tr.getTransactionHash()); - Uint8 getUint8 = contract.getUint8().send(); - collector.logStepPass("To invoke getUint8 success, setUint8: "+ input +", getUint8: " + getUint8.getValue().toString()); - if(equal.equals("Y")){ - collector.assertEqual(getUint8.getValue().toString(), String.valueOf(expect)); - } else { - collector.assertFalse(getUint8.getValue() == BigInteger.valueOf(expect)); - } - } - - // int32: -2147483648 ~ 2147483647 - // int32 - JSONArray int32Cases = JSON.parseArray("[" - //+ "{\"input\": \"-2147483649\", \"expect\": \"-2147483649\", \"equal\":\"N\"}" // pass. - + "{\"input\": \"-2147483648\", \"expect\": \"-2147483648\", \"equal\":\"Y\"}" // right - + "{\"input\": \"2147483647\", \"expect\": \"2147483647\", \"equal\":\"Y\"}" - + "{\"input\":\"0\", \"expect\": \"0\", \"equal\":\"Y\"}" - //+ "{\"input\": \"2147483648\", \"expect\": \"2147483648\", \"equal\":\"N\"}" - +"]"); - for (int i = 0; i < int32Cases.size(); i++) { - JSONObject testCase = int32Cases.getJSONObject(i); - String input = testCase.getString("input"); - String expect = testCase.getString("expect"); - String equal = testCase.getString("equal"); - TransactionReceipt tr = contract.setInt32(Int32.of(Long.valueOf(input))).send(); - collector.logStepPass("To invoke setInt32 success, txHash: " + tr.getTransactionHash()); - Int32 getInt32 = contract.getInt32().send(); - collector.logStepPass("To invoke getInt32 success,setInt32: "+ input +", getInt32: " + getInt32.toString()); - if(equal.equals("Y")){ - collector.assertEqual(getInt32.getValue(), Integer.valueOf(expect)); - } else { - collector.assertFalse(getInt32.toString().equals(expect)); - } - } - - // uint32: 0 ~ 4294967295 - // uint32 - JSONArray uint32Cases = JSON.parseArray("[" - //+ "{\"input\": \"-1\", \"expect\": \"-1\", \"equal\":\"N\"}" // pass - //+ "{\"input\": \"4294967294\", \"expect\": \"4294967294\", \"equal\":\"Y\"}" - + "{\"input\": \"4294967295\", \"expect\": \"4294967295\", \"equal\":\"Y\"}" - //+ "{\"input\": \"4294967296\", \"expect\": \"4294967296\", \"equal\":\"N\"}" // pass - + "{\"input\": \"0\", \"expect\": \"0\", \"equal\":\"Y\"}" - +"]"); - for (int i = 0; i < uint32Cases.size(); i++) { - JSONObject testCase = uint32Cases.getJSONObject(i); - String input = testCase.getString("input"); - String expect = testCase.getString("expect"); - String equal = testCase.getString("equal"); - TransactionReceipt tr = contract.setUint32(Uint32.of(input)).send(); - collector.logStepPass("To invoke setUint32 success, txHash: " + tr.getTransactionHash()); - Uint32 getReturn = contract.getUint32().send(); - collector.logStepPass("To invoke getUint32 success,setUint32: "+ input +", getUint32: " + getReturn); - if(equal.equals("Y")){ - collector.assertEqual(getReturn.getValue().toString(), expect); - } else { - collector.assertFalse(getReturn.getValue().toString().equals(expect)); - } - } - - // int64: -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 - // int64 - JSONArray int64Cases = JSON.parseArray("[" - + "{\"input\": \"-1\", \"expect\": \"-1\", \"equal\":\"Y\"}" - + "{\"input\": \"-9223372036854775808\", \"expect\": \"-9223372036854775808\", \"equal\":\"Y\"}" - + "{\"input\": \"0\", \"expect\": \"0\", \"equal\":\"Y\"}" - + "{\"input\": \"9223372036854775807\", \"expect\": \"9223372036854775807\", \"equal\":\"Y\"}" - //+ "{\"input\": \"9223372036854775808\", \"expect\": \"9223372036854775808\", \"equal\":\"N\"}" - +"]"); - for (int i = 0; i < int64Cases.size(); i++) { - JSONObject testCase = int64Cases.getJSONObject(i); - String input = testCase.getString("input"); - String expect = testCase.getString("expect"); - String equal = testCase.getString("equal"); - TransactionReceipt tr = contract.setInt64(Int64.of(Long.valueOf(input))).send(); - collector.logStepPass("To invoke setInt64 success, txHash: " + tr.getTransactionHash()); - Int64 getReturn = contract.getInt64().send(); - collector.logStepPass("To invoke getInt64 success,setInt64: "+ input +", getInt64: " + getReturn.getValue()); - if(equal.equals("Y")){ - collector.assertEqual(getReturn.getValue(), Long.valueOf(expect).longValue()); - } else { - collector.assertFalse(getReturn.getValue() == Long.valueOf(expect).longValue()); - } - } - - // uint64: 0 ~ 18,446,744,073,709,551,615 - JSONArray uint64Cases = JSON.parseArray("[" - //+ "{\"input\": \"-1\", \"expect\": \"-1\", \"equal\":\"Y\"}" // pass - + "{\"input\": \"4294967294\", \"expect\": \"4294967294\", \"equal\":\"Y\"}" - + "{\"input\": \"0\", \"expect\": \"0\", \"equal\":\"Y\"}" - + "{\"input\": \"18446744073709551615\", \"expect\": \"18446744073709551615\", \"equal\":\"Y\"}" - +"]"); - for (int i = 0; i < uint64Cases.size(); i++) { - JSONObject testCase = uint64Cases.getJSONObject(i); - String input = testCase.getString("input"); - String expect = testCase.getString("expect"); - String equal = testCase.getString("equal"); - TransactionReceipt tr = contract.setUint64(Uint64.of(input)).send(); - collector.logStepPass("To invoke setUint64 success, txHash: " + tr.getTransactionHash()); - Uint64 getReturn = contract.getUint64().send(); - collector.logStepPass("To invoke setUint64 success,setUint64: "+ input +", getUint64: " + getReturn.getValue().toString()); - if(equal.equals("Y")){ - collector.assertEqual(getReturn.getValue(), new BigInteger(expect)); - } else { - collector.assertFalse(getReturn.getValue().compareTo(new BigInteger(expect)) == 0); - } - } - - } catch (Exception e) { - collector.logStepFail("IntegerDataTypeContract_02 failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/MultiIndexContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/MultiIndexContractTest.java deleted file mode 100644 index c19ebddd46..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/MultiIndexContractTest.java +++ /dev/null @@ -1,98 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.MultiIndexContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 多索引容器 - * @description: - * @author: liweic - * @create: 2020/04/20 - */ -public class MultiIndexContractTest extends WASMContractPrepareTest { - - private String my_name; - private String my_age; - private String my_sex; - private String delete_age; - - - @Before - public void before() { - my_name = driverService.param.get("my_name"); - my_age = driverService.param.get("my_age"); - my_sex = driverService.param.get("my_sex"); - delete_age = driverService.param.get("delete_age"); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.MultiIndex测试多索引容器",sourcePrefix = "wasm") - public void test() { - - try { - prepare(); - MultiIndexContract multiindexcontract = MultiIndexContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = multiindexcontract.getContractAddress(); - TransactionReceipt tx = multiindexcontract.getTransactionReceipt().get(); - collector.logStepPass("MultiIndexContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - //1、验证:多索引插入数据 - TransactionReceipt transactionReceipt = multiindexcontract.addInitMultiIndex(my_name,Uint8.of(my_age),Uint8.of(my_sex)).send(); - collector.logStepPass("MultiIndexContract验证多索引插入数据 successfully hash:" + transactionReceipt.getTransactionHash()); - - //2、验证:cbegin()多索引迭代器起始位置 - Boolean actualbegin= multiindexcontract.getMultiIndexCbegin("lucy").send(); - collector.logStepPass("MultiIndexContract 验证cbegin()多索引迭代器起始位置 执行getMultiIndexCbegin() successfully actualbegin:" + actualbegin); - collector.assertEqual(actualbegin,true, "checkout execute success."); - - //3、验证:cend()多索引迭代器结束位置 - Boolean actualend= multiindexcontract.getMultiIndexCend(Uint8.of(1)).send(); - collector.logStepPass("MultiIndexContract 验证cend()多索引迭代器结束位置 getMultiIndexCend() successfully actualend:" + actualend); - collector.assertEqual(actualend,true, "checkout execute success."); - - //4、验证:count获取与索引值对应的数据的数量 - Uint8 actualcount = multiindexcontract.getMultiIndexCount(Uint8.of(10)).send(); - collector.logStepPass("MultiIndexContract 验证索引对应数据的数量 getMultiIndexCount() successfully actualcount:" + actualcount); - collector.assertEqual(actualcount,Uint8.of(1), "checkout execute success."); - - //5、验证:find多索引取值 - String actualfind = multiindexcontract.getMultiIndexFind("lucy").send(); - collector.logStepPass("MultiIndexContract 验证find多索引取值 执行getMultiIndexFind() successfully actualfind:" + actualfind); - collector.assertEqual(actualfind,"lucy", "checkout execute success."); - - //6、验证:get_index获取非唯一索引的索引对象 - Boolean actualindex = multiindexcontract.getMultiIndexIndex(Uint8.of(10)).send(); - collector.logStepPass("MultiIndexContract 验证get_index获取非唯一索引的索引对象 执行getMultiIndexFind() successfully actualindex:" + actualindex); - collector.assertEqual(actualindex, true, "checkout execute success."); - -// //7、验证:modify基于迭代器修改数据(待验证) -// TransactionReceipt actualtx = multiindexcontract.MultiIndexModify("messi").send(); -// collector.logStepPass("MultiIndexContract验证多索引修改数据 successfully hash:" + actualtx.getTransactionHash()); -// String actualfind2 = multiindexcontract.getMultiIndexFind("lucy").send(); -// collector.logStepPass("MultiIndexContract 验证数据是否修改成功 successfully actualfind2:" + actualfind2); -// collector.assertEqual(actualfind2,"lucy", "checkout execute success."); - - //8、验证:erase()多索引删除数据 - TransactionReceipt erase = multiindexcontract.MultiIndexErase("lucy").send(); - collector.logStepPass("MultiIndexContract验证多索引修改数据 successfully hash:" + erase.getTransactionHash()); - String actualfind3 = multiindexcontract.getMultiIndexFind("lucy").send(); - collector.logStepPass("MultiIndexContract 验证数据是否删除成功 successfully actualfind2:" + actualfind3); - collector.assertEqual(actualfind3,"", "checkout execute success."); - - } catch (Exception e) { - collector.logStepFail("referenceDataTypeMultiIndexContract deploy fail.", e.toString()); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/NullPtrAndForTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/NullPtrAndForTest.java deleted file mode 100644 index 37534d632a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/NullPtrAndForTest.java +++ /dev/null @@ -1,69 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.NullPtrAndForContract; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试合约Nullptr 和 序列for循环 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class NullPtrAndForTest extends WASMContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.nullPtrAndForTest合约Nullptr和序列for循环",sourcePrefix = "wasm") - public void testNullPtrAndFor() { - - //部署合约 - NullPtrAndForContract nullPtrAndForContract = null; - try { - prepare(); - nullPtrAndForContract = NullPtrAndForContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = nullPtrAndForContract.getContractAddress(); - TransactionReceipt tx = nullPtrAndForContract.getTransactionReceipt().get(); - collector.logStepPass("nullPtrAndForContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("nullPtrAndForContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:nullprt赋值 - boolean actualValue = nullPtrAndForContract.get_nullptr().send(); - collector.logStepPass("nullPtrAndForContract 【验证nullprt赋值】 执行get_nullptr() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,true, "checkout execute success."); - //2、验证:nullprt赋值不同类型 - boolean actualValue2 = nullPtrAndForContract.get_nullptr_one().send(); - collector.logStepPass("nullPtrAndForContract 【验证nullprt赋值不同类型】 执行get_nullptr_one() successfully actualValue2:" + actualValue2); - collector.assertEqual(actualValue2,false, "checkout execute success."); - //3、验证:验证NULL在C++中就是0;Nullptr表示为空指针 - String actualValue3 = nullPtrAndForContract.set_nullptr_overload().send(); - collector.logStepPass("nullPtrAndForContract 【验证NULL在C++中就是0;Nullptr表示为空指针】 set_nullptr_overload() successfully actualValue3:" + actualValue3); - collector.assertEqual(actualValue3,"is nullptr", "checkout execute success."); - //4、验证:foreach遍历map容器 - String actualValue4 = nullPtrAndForContract.get_foreach_map().send(); - collector.logStepPass("nullPtrAndForContract 【验证foreach遍历map容器】 get_foreach_map() successfully actualValue4:" + actualValue4); - collector.assertEqual(actualValue4,"four,one,three,two,", "checkout execute success."); - //5、验证:foreach遍历array容器 - Uint32 actualValue5 = nullPtrAndForContract.get_foreach_array().send(); - collector.logStepPass("nullPtrAndForContract 【验证foreach遍历array容器】 get_foreach_array() successfully actualValue5:" + actualValue5); - collector.assertEqual(actualValue5,Uint32.of(45), "checkout execute success."); - - - } catch (Exception e) { - collector.logStepFail("autoTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeArrayFuncTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeArrayFuncTest.java deleted file mode 100644 index 3a40d938c1..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeArrayFuncTest.java +++ /dev/null @@ -1,84 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ReferenceDataTypeArrayFuncContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试引用类型数组(array类型)属性/函数 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class ReferenceDataTypeArrayFuncTest extends WASMContractPrepareTest { - - private String indexValue; - private String expectIndexValue; - private String expectFirstValue; - private String fillValue; - private String expectFill; - - @Before - public void before() { - indexValue = driverService.param.get("indexValue"); - expectIndexValue = driverService.param.get("expectIndexValue"); - expectFirstValue = driverService.param.get("expectFirstValue"); - fillValue = driverService.param.get("fillValue"); - expectFill = driverService.param.get("expectFill"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.referenceDataTypeArrayTest验证数组属性及函数",sourcePrefix = "wasm") - public void testReferenceDataTypeArrayFunc() { - - //部署合约 - ReferenceDataTypeArrayFuncContract referenceDataTypeArrayFuncContract = null; - try { - prepare(); - referenceDataTypeArrayFuncContract = ReferenceDataTypeArrayFuncContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayFuncContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayFuncContract.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeArrayFuncContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeArrayFuncContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、数组初始化数据源 - TransactionReceipt transactionReceipt = referenceDataTypeArrayFuncContract.setInitArrayDate().send(); - collector.logStepPass("referenceDataTypeArrayFuncContract 【数组初始化数据源】 successfully hash:" + transactionReceipt.getTransactionHash()); - //2、验证:数组属性empty() - Boolean actualValue = referenceDataTypeArrayFuncContract.getArrayIsEmpty().send(); - collector.logStepPass("referenceDataTypeArrayFuncContract 【验证:数组属性empty()】 执行getArrayIsEmpty() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,false, "checkout execute success."); - //3、验证:数组属性at() - String actualStringValue = referenceDataTypeArrayFuncContract.getArrayValueIndex(Uint32.of(indexValue)).send(); - collector.logStepPass("referenceDataTypeArrayFuncContract 【验证:数组属性at()】 执行getArrayValueIndex() successfully actualStringValue:" + actualStringValue); - collector.assertEqual(actualStringValue,expectIndexValue, "checkout execute success."); - //4、验证:数组属性front() - String actualStringValue1 = referenceDataTypeArrayFuncContract.getArrayFirstValue().send(); - collector.logStepPass("referenceDataTypeArrayFuncContract 【验证:数组属性front()】 执行getArrayFirstValue() successfully actualStringValue1:" + actualStringValue1); - collector.assertEqual(actualStringValue1,expectFirstValue, "checkout execute success."); - //5、验证:数组属性fill() - TransactionReceipt transactionReceipt1 = referenceDataTypeArrayFuncContract.setArrayFill(fillValue).send(); - collector.logStepPass("referenceDataTypeArrayFuncContract 【验证:数组属性fill()】 successfully hash:" + transactionReceipt1.getTransactionHash()); - //取值验证 - String actualStringValue2 = referenceDataTypeArrayFuncContract.getArrayValueIndex(Uint32.of(expectFill)).send(); - collector.logStepPass("referenceDataTypeArrayFuncContract 【验证:数组属性at()】 执行getArrayValueIndex() successfully actualStringValue2:" + actualStringValue2); - collector.assertEqual(actualStringValue2,fillValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeArrayFuncContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeArrayTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeArrayTest.java deleted file mode 100644 index 27c4e20900..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeArrayTest.java +++ /dev/null @@ -1,89 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ReferenceDataTypeArrayContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试引用类型数组(array类型) - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class ReferenceDataTypeArrayTest extends WASMContractPrepareTest { - - private String indexNo; - private String expectIndexValue; - private String expectArrayLength; - private String indexByteNo; - - @Before - public void before() { - indexNo = driverService.param.get("indexNo"); - expectIndexValue = driverService.param.get("expectIndexValue"); - expectArrayLength = driverService.param.get("expectArrayLength"); - indexByteNo = driverService.param.get("indexByteNo"); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.referenceDataTypeArrayTest验证数组定义及赋值",sourcePrefix = "wasm") - public void testReferenceDataTypeArray() { - - //部署合约 - ReferenceDataTypeArrayContract referenceDataTypeArrayContract = null; - try { - prepare(); - referenceDataTypeArrayContract = ReferenceDataTypeArrayContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeArrayContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeArrayContract.getTransactionReceipt().get(); - collector.logStepPass("ReferenceDataTypeArrayContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:数组初始化赋值 - TransactionReceipt transactionReceipt = referenceDataTypeArrayContract.setInitArray().send(); - collector.logStepPass("ReferenceDataTypeArrayContract 【验证数组初始化赋值】 successfully hash:" + transactionReceipt.getTransactionHash()); - //2、验证:数组取值 - String actualValue = referenceDataTypeArrayContract.getArrayStringIndex(Uint32.of(indexNo)).send(); - collector.logStepPass("ReferenceDataTypeArrayContract 【验证数组取值】 执行getArrayIndex() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,expectIndexValue, "checkout execute success."); - //3、验证:获取数组容器大小 - Uint8 actualArrayLength = referenceDataTypeArrayContract.getArrayUintSize().send(); - collector.logStepPass("ReferenceDataTypeArrayContract 【验证获取数组容器大小】 执行getArraySize() successfully actualArrayLength:" + actualArrayLength); - collector.assertEqual(actualArrayLength,Uint8.of(expectArrayLength), "checkout execute success."); - //4、验证:数组定义person类型 - /*ReferenceDataTypeArrayContract.Person person = new ReferenceDataTypeArrayContract.Person(); - person.name = "lucy"; - person.age = Long.parseLong("20"); - TransactionReceipt transactionReceipt2 =referenceDataTypeArrayContract.setArrayPerson(person).send(); - collector.logStepPass("ReferenceDataTypeArrayContract 【验证person类型数组赋值】 successfully hash:" + transactionReceipt2.getTransactionHash()); - //person类型取值 - String actualValueName = referenceDataTypeArrayContract.getArrayPersonNameIndex().send(); - collector.logStepPass("ReferenceDataTypeArrayContract 【验证person类型数组取值】 执行getArrayPersonNameIndex() successfully actualValueName:" + actualValueName); - collector.assertEqual(actualValueName,"lucy", "checkout execute success.");*/ - //5、验证:字节数组赋值&取值 - TransactionReceipt receipt = referenceDataTypeArrayContract.setBytesArray().send(); - collector.logStepPass("ReferenceDataTypeArrayContract 【验证字节数组赋值】 successfully hash:" + receipt.getTransactionHash()); - Uint8 actualByteValue = referenceDataTypeArrayContract.getBytesArrayIndex(Uint32.of(indexByteNo)).send(); - collector.logStepPass("ReferenceDataTypeArrayContract 【验证字节数组取值】 执行getBytesArrayIndex() successfully actualByteValue:" + actualByteValue); - //collector.assertEqual(actualByteValue,expectByteValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeArrayContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeComplexContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeComplexContractTest.java deleted file mode 100644 index 222c3c835f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeComplexContractTest.java +++ /dev/null @@ -1,91 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ReferenceDataTypeComplexContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试合约引用类型复杂合约 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class ReferenceDataTypeComplexContractTest extends WASMContractPrepareTest { - - private String sIdStr; - private String nameStr; - private String ageStr; - - @Before - public void before() { - sIdStr = driverService.param.get("sIdStr"); - nameStr = driverService.param.get("nameStr"); - ageStr = driverService.param.get("ageStr"); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.referenceDataTypeComplexContractTest合约引用类型复杂合约",sourcePrefix = "wasm") - public void testReferenceDataTypeComplexContract() { - - //部署合约 - ReferenceDataTypeComplexContract referenceDataTypeComplexContract = null; - try { - prepare(); - referenceDataTypeComplexContract = ReferenceDataTypeComplexContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeComplexContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeComplexContract.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeComplexContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeComplexContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:学生赋值基本信息 - Uint64 sId = Uint64.of(sIdStr); - String name = nameStr; - Uint8 age = Uint8.of(ageStr); - Boolean sex = false; - TransactionReceipt transactionReceipt = referenceDataTypeComplexContract.set_student_info(sId,name,age,sex).send(); - collector.logStepPass("referenceDataTypeComplexContract 【验证学生赋值基本信息】 successfully hash:" + transactionReceipt.getTransactionHash()); - //学生信息取值 - Uint64 actualValueSid = referenceDataTypeComplexContract.get_student_id().send(); - collector.logStepPass("referenceDataTypeComplexContract 【取值学生编号】 执行get_student_id() successfully actualValueSid:" + actualValueSid); - // collector.assertEqual(actualValue,expectIndexValue, "checkout execute success."); - String actualValueName = referenceDataTypeComplexContract.get_name().send(); - collector.logStepPass("referenceDataTypeComplexContract 【取值学生姓名】 执行get_name() successfully actualValueName:" + actualValueName); - // collector.assertEqual(actualValue,expectIndexValue, "checkout execute success."); - Uint8 actualValueAge = referenceDataTypeComplexContract.get_age().send(); - collector.logStepPass("referenceDataTypeComplexContract 【取值学生年龄】 执行get_age() successfully actualValueAge:" + actualValueAge); - // collector.assertEqual(actualValue,expectIndexValue, "checkout execute success."); - Boolean actualValueSex = referenceDataTypeComplexContract.get_sex().send(); - collector.logStepPass("referenceDataTypeComplexContract 【取值学生性别】 执行get_sex() successfully actualValueSex:" + actualValueSex); - // collector.assertEqual(actualValue,expectIndexValue, "checkout execute success."); - - /* String[] arrayCourse = {"English","Mathematics"}; - TransactionReceipt transactionReceipt1 = referenceDataTypeComplexContract.set_array_course(arrayCourse).send(); - collector.logStepPass("referenceDataTypeComplexContract 【验证数组赋值课程】 successfully hash:" + transactionReceipt1.getTransactionHash()); - *///2、验证:数组课程取值 - String[] courseArr = referenceDataTypeComplexContract.get_array_course().send(); - collector.logStepPass("referenceDataTypeComplexContract 【验证数组课程取值】 执行get_array_course() successfully courseArr.length:" + courseArr.length); - // collector.assertEqual(actualValue,expectIndexValue, "checkout execute success."); - - - - } catch (Exception e) { - collector.logStepFail("referenceDataTypeComplexContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeContractTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeContractTest.java deleted file mode 100644 index dffb8ce2c4..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeContractTest.java +++ /dev/null @@ -1,166 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ReferenceDataTypeContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @author zjsunzone - * - * This class is used to test data type of reference. - */ -public class ReferenceDataTypeContractTest extends WASMContractPrepareTest { - - @Before - public void before(){ - prepare(); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.address_map_type",sourcePrefix = "wasm") - public void testAddressMapContract() { - - try { - // deploy contract. - ReferenceDataTypeContract contract = ReferenceDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ReferenceDataTypeContract deploy successfully.contractAddress:" - + contractAddress + ", hash:" + transactionHash - + " gasUsed:" + contract.getTransactionReceipt().get().getGasUsed().toString()); - - Uint8 num0 = contract.getNum().send(); - collector.logStepPass("num1: " + num0.value); - - - // test: map - String expectKey1 = "name"; -// WasmAddress expectValue11 = new WasmAddress("lax1uqug1zq7rcxddndleq4ux2ft3tv6dqljphydrl"); -// String expectValue11 = "lax1uqug0zq7rcxddndleq4ux2ft3tv6dqljphydrl"; - String expectValue11 = "atx1uqug0zq7rcxddndleq4ux2ft3tv6dqljazusp4"; -// String expectValue11 = "lax1uqug1zq7rcxddndleq4ux2ft3tv6dqljphydrl"; -// String expectValue11 = "lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2"; - TransactionReceipt mapTr = contract.setAddressMap(expectKey1, expectValue11).send(); - collector.logStepPass("To invoke setAddressMap success, txHash1: " + mapTr.getTransactionHash()); - - Uint8 num1 = contract.getNum().send(); - collector.logStepPass("num1: " + num1.value); - - String expectKey2 = "name2"; -// String expectValue2 = "lax1uqug2zq7rcxddndleq4ux2ft3tv6dqljphydrl"; -// String expectValue2 = "lax1fyeszufxwxk62p46djncj86rd553skpptsj8v6"; - String expectValue2 = "atx1fyeszufxwxk62p46djncj86rd553skpph926ws"; - TransactionReceipt mapTr2 = contract.setAddressMap(expectKey2, expectValue2).send(); - collector.logStepPass("To invoke setAddressMap success, txHash2: " + mapTr2.getTransactionHash()); - - String actValue1 = contract.getAddrFromMap(expectKey1).send(); - String actValue2 = contract.getAddrFromMap(expectKey2).send(); - collector.logStepPass("To invoke getAddrFromMap success, value1: " + actValue1 + " value2:" + actValue2); - - Uint8 num2 = contract.getNum().send(); - collector.logStepPass("num1: " + num2.value); - - Uint8 mapSize = contract.sizeOfAddrMap().send(); - collector.logStepPass("To invoke sizeOfAddrMap success, mapSize: " + mapSize.getValue().toString()); - collector.assertEqual(mapSize.getValue().intValue(), 2); - collector.assertEqual(prependHexPrefix(actValue1).toUpperCase(), prependHexPrefix(expectValue11).toUpperCase()); - collector.assertEqual(prependHexPrefix(actValue2).toUpperCase(), prependHexPrefix(expectValue2).toUpperCase()); - - - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeContract failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.u256_map_type",sourcePrefix = "wasm") - public void testU256MapContract() { - - try { - // deploy contract. - ReferenceDataTypeContract contract = ReferenceDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ReferenceDataTypeContract deploy successfully.contractAddress:" - + contractAddress + ", hash:" + transactionHash - + " gasUsed:" + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // test: u256 - String expectKey1 = "name"; - String expectValue11 = "100000"; - TransactionReceipt tr1 = contract.setU256Map(expectKey1, Uint64.of(expectValue11)).send(); - collector.logStepPass("To invoke setU256Map success, txHash1: " + tr1.getTransactionHash()); - - String expectKey2 = "name2"; - String expectValue2 = "200000"; - TransactionReceipt mapTr2 = contract.setU256Map(expectKey2, Uint64.of(expectValue2)).send(); - collector.logStepPass("To invoke setU256Map success, txHash2: " + mapTr2.getTransactionHash()); - - String actValue1 = contract.getU256FromMap(expectKey1).send(); - String actValue2 = contract.getU256FromMap(expectKey2).send(); - collector.logStepPass("To invoke getU256FromMap success, value1: " + actValue1 + " value2:" + actValue2); - - Uint8 mapSize = contract.sizeOfU256Map().send(); - collector.logStepPass("To invoke sizeOfU256Map success, mapSize: " + mapSize.getValue().toString()); - collector.assertEqual(mapSize.getValue().intValue(), 2); - collector.assertEqual(actValue1.toUpperCase(), expectValue11.toUpperCase()); - collector.assertEqual(actValue2.toUpperCase(), expectValue2.toUpperCase()); - - - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeContract failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "zjsunzone", showName = "wasm.h256_map_type",sourcePrefix = "wasm") - public void testH256MapContract() { - - try { - // deploy contract. - ReferenceDataTypeContract contract = ReferenceDataTypeContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = contract.getContractAddress(); - String transactionHash = contract.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ReferenceDataTypeContract deploy successfully.contractAddress:" - + contractAddress + ", hash:" + transactionHash - + " gasUsed:" + contract.getTransactionReceipt().get().getGasUsed().toString()); - - // test: u256 - String expectKey1 = "name"; - String expectValue11 = "0xc648eb226f98cbb05835c9fad2cbaa419c602782ed4fbd4a6b5c6789e8292a85"; - TransactionReceipt tr1 = contract.setH256Map(expectKey1, expectValue11).send(); - collector.logStepPass("To invoke setH256Map success, txHash1: " + tr1.getTransactionHash()); - - String expectKey2 = "name2"; - String expectValue2 = "0xc648eb226f98cbb05835c9fad2cbaa419c602782ed4fbd4a6b5c6789e8292a86"; - TransactionReceipt mapTr2 = contract.setH256Map(expectKey2, expectValue2).send(); - collector.logStepPass("To invoke setH256Map success, txHash2: " + mapTr2.getTransactionHash()); - - String actValue1 = contract.getH256FromMap(expectKey1).send(); - String actValue2 = contract.getH256FromMap(expectKey2).send(); - collector.logStepPass("To invoke getH256FromMap success, value1: " + actValue1 + " value2:" + actValue2); - - Uint8 mapSize = contract.sizeOfH256Map().send(); - collector.logStepPass("To invoke sizeOfH256Map success, mapSize: " + mapSize.getValue().toString()); - collector.assertEqual(mapSize.getValue().intValue(), 2); - //collector.assertEqual(actValue1.toUpperCase(), expectValue11.toUpperCase()); - //collector.assertEqual(actValue2.toUpperCase(), expectValue2.toUpperCase()); - - - } catch (Exception e) { - collector.logStepFail("ReferenceDataTypeContract failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeLinklistTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeLinklistTest.java deleted file mode 100644 index e58be4e707..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeLinklistTest.java +++ /dev/null @@ -1,74 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ReferenceDataTypeLinkedlistContract; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试引用类型链表 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class ReferenceDataTypeLinklistTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.referenceDataTypeLinklistTest验证引用类型链表",sourcePrefix = "wasm") - public void testReferenceDataTypeLinklist() { - - //部署合约 - ReferenceDataTypeLinkedlistContract referenceDataTypeLinkedlistContract = null; - try { - prepare(); - referenceDataTypeLinkedlistContract = ReferenceDataTypeLinkedlistContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeLinkedlistContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeLinkedlistContract.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeLinkedlistContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeLinkedlistContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:链表新增 - String nodeData = "one"; - String nodeData1 = "two"; - TransactionReceipt transactionReceipt = referenceDataTypeLinkedlistContract.insertNodeElement(nodeData).send(); - collector.logStepPass("referenceDataTypeLinkedlistContract 【验证链表新增】 successfully hash:" + transactionReceipt.getTransactionHash()); - TransactionReceipt transactionReceipt2 = referenceDataTypeLinkedlistContract.insertNodeElement(nodeData1).send(); - collector.logStepPass("referenceDataTypeLinkedlistContract 【验证链表新增】 successfully hash:" + transactionReceipt2.getTransactionHash()); - //2、验证:获取结点数据 - Uint8 a = Uint8.of(0); - Uint8 b = Uint8.of(0); - Uint8 expectValue = Uint8.of(1); - Uint8 actualValueIndex = referenceDataTypeLinkedlistContract.getNodeElementIndex(a,b).send(); - collector.logStepPass("referenceDataTypeLinkedlistContract 【验证获取结点数据】 执行getNodeElementIndex() successfully actualValueIndex:" + actualValueIndex); - collector.assertEqual(actualValueIndex,expectValue, "checkout execute success."); - //3、验证:遍历结点链表数据 - Uint8 index = Uint8.of(0); - String[] arrayStr = referenceDataTypeLinkedlistContract.findNodeElement(index).send(); - for (int i = 0; i < arrayStr.length; i++) { - collector.logStepPass("referenceDataTypeLinkedlistContract 【验证获取结点数据】 执行findNodeElement() successfully nodeName:" + arrayStr[i]); - } - //4、验证:链表删除数据 - TransactionReceipt transactionReceipt3 = referenceDataTypeLinkedlistContract.clearNodeElement().send(); - collector.logStepPass("referenceDataTypeLinkedlistContract 【验证链表删除数据】 successfully hash:" + transactionReceipt3.getTransactionHash()); - //清空后查询数据 - Uint8 index1 = Uint8.of(0); - String[] arrayStr1 = referenceDataTypeLinkedlistContract.findNodeElement(index1).send(); - collector.assertEqual(arrayStr1.length,0, "checkout execute success."); - - - } catch (Exception e) { - collector.logStepFail("referenceDataTypeLinkedlistContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeMapFuncTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeMapFuncTest.java deleted file mode 100644 index c0707a60cb..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeMapFuncTest.java +++ /dev/null @@ -1,122 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ReferenceDataTypeMapFuncContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; - -/** - * @title map属性方法 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class ReferenceDataTypeMapFuncTest extends WASMContractPrepareTest { - - private String cycleNum; - private String cycleMapNum; - - private String deleteIndex; - private String deleteMapNum; - - private String insertKey; - private String insertValue; - private String insertMapNum; - private String clearMapNum; - - @Before - public void before() { - cycleNum = driverService.param.get("cycleNum"); - cycleMapNum = driverService.param.get("cycleMapNum"); - deleteIndex = driverService.param.get("deleteIndex"); - deleteMapNum = driverService.param.get("deleteMapNum"); - insertKey = driverService.param.get("insertKey"); - insertValue = driverService.param.get("insertValue"); - insertMapNum = driverService.param.get("insertMapNum"); - clearMapNum = driverService.param.get("clearMapNum"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.referenceDataTypeMapTest验证Map集合属性方法",sourcePrefix = "wasm") - public void testReferenceDataTypeMapFunc() { - - //部署合约 - ReferenceDataTypeMapFuncContract referenceDataTypeMapFuncContract = null; - try { - prepare(); - referenceDataTypeMapFuncContract = ReferenceDataTypeMapFuncContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeMapFuncContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeMapFuncContract.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeMapFuncContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeMapFuncContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:map循环新增值 - TransactionReceipt transactionReceipt = referenceDataTypeMapFuncContract.addMapByUint(Uint8.of(cycleNum)).send(); - collector.logStepPass("referenceDataTypeMapFuncContract 【验证map循环新增值】 successfully hash:" + transactionReceipt.getTransactionHash()); - //2、验证:循环map容器数量 - Uint8 actualValueSize = referenceDataTypeMapFuncContract.getMapBySize().send(); - collector.logStepPass("referenceDataTypeMapFuncContract 【验证循环map容器数量】 执行getMapBySize() actualValueSize:" + actualValueSize); - collector.assertEqual(actualValueSize.getValue(),new BigInteger(cycleMapNum), "checkout execute success."); - //3、验证:map容器删除指定值 - TransactionReceipt transactionReceipt1 = referenceDataTypeMapFuncContract.deleteMapByIndex(Uint8.of(deleteIndex)).send(); - collector.logStepPass("referenceDataTypeMapFuncContract 【验证map容器删除指定值】 successfully hash:" + transactionReceipt1.getTransactionHash()); - //获取删除容器数量 - Uint8 actualValueSize1 = referenceDataTypeMapFuncContract.getMapBySize().send(); - collector.logStepPass("referenceDataTypeMapFuncContract 【验证删除map容器数量】 执行getMapBySize() actualValueSize1:" + actualValueSize1); - collector.assertEqual(actualValueSize1.getValue(),new BigInteger(deleteMapNum), "checkout execute success."); - - //4、验证:map容器插入方法insert() - TransactionReceipt transactionReceipt2 = referenceDataTypeMapFuncContract.insertMapUint(Uint8.of(insertKey),insertValue).send(); - collector.logStepPass("referenceDataTypeMapFuncContract 【验证map容器插入方法insert()】 执行insertMap() successfully hash:" + transactionReceipt2.getTransactionHash()); - //数量 - Uint8 actualValueSize2 = referenceDataTypeMapFuncContract.getMapBySize().send(); - collector.logStepPass("referenceDataTypeMapFuncContract 【验证map容器插入元素数量】 执行getMapBySize() actualValueSize2:" + actualValueSize2); - collector.assertEqual(actualValueSize2.getValue(),new BigInteger(insertMapNum), "checkout execute success."); - - //5、验证map清空方法clear() - TransactionReceipt transactionReceipt3 = referenceDataTypeMapFuncContract.clearMapUint().send(); - collector.logStepPass("referenceDataTypeMapFuncContract 【验证map清空方法clear()】 执行clearMapString() successfully hash:" + transactionReceipt3.getTransactionHash()); - //数量 - Uint8 actualValueSize3 = referenceDataTypeMapFuncContract.getMapBySize().send(); - collector.logStepPass("referenceDataTypeMapFuncContract 【验证map容器清空数量】 执行getMapStringByKeySize() actualValueSize3:" + actualValueSize3); - collector.assertEqual(actualValueSize3.getValue(),new BigInteger(clearMapNum), "checkout execute success."); - //6、验证map容器判断空 - boolean actualValue4 = referenceDataTypeMapFuncContract.getMapIsEmpty().send(); - collector.logStepPass("referenceDataTypeMapFuncContract 【验证map容器判断空】 执行getMapIsEmpty() actualValue4:" + actualValue4); - collector.assertEqual(actualValue4,true, "checkout execute success."); - - - /* //5、获取插入的值 - String actualValue2 = referenceDataTypeMapFuncContract.getMapStringByKey("01").send(); - collector.logStepPass("referenceDataTypeMapFuncContract 【验证map获取插入的值】 执行getMapStringByKey() actualValue2:" + actualValue2); - collector.assertEqual(actualValue2,"lucy", "checkout execute success.");*/ - - /* //4、验证:map容器数量 - Long actualPersonSize = referenceDataTypeMapTestContract.getMapByPersonSize().send(); - collector.logStepPass("referenceDataTypeMapContract 【验证map容器数量】 执行getMapByPersonSize() actualPersonSize:" + actualPersonSize); - collector.assertEqual(actualPersonSize,Long.parseLong("1"), "checkout execute success."); - //5、验证:map容器根据key获取值Person - String actualValueName = referenceDataTypeMapTestContract.getMapByPerson(Byte.valueOf(keyPerson)).send(); - collector.logStepPass("referenceDataTypeMapContract 【验证map容器根据key获取值】 执行getMapByPerson() actualValueName:" + actualValueName); - //collector.assertEqual(actualValuePerson.name,personName, "checkout execute success.");*/ - - } catch (Exception e) { - collector.logStepFail("referenceDataTypeMapContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeMapTypeTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeMapTypeTest.java deleted file mode 100644 index 6f2293e2f4..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeMapTypeTest.java +++ /dev/null @@ -1,100 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ReferenceDataTypeMapTestContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试引用类型Map集合 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class ReferenceDataTypeMapTypeTest extends WASMContractPrepareTest { - - private String key; - private String value; - private String mapSize; - - private String keyPerson; - private String personName; - private String personAge; - private String mapPersonSize; - - @Before - public void before() { - key = driverService.param.get("key"); - value = driverService.param.get("value"); - mapSize = driverService.param.get("mapSize"); - - keyPerson = driverService.param.get("keyPerson"); - personName = driverService.param.get("personName"); - personAge = driverService.param.get("personAge"); - mapPersonSize = driverService.param.get("mapPersonSize"); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.referenceDataTypeMapTest验证Map集合",sourcePrefix = "wasm") - public void testReferenceDataTypeMapType() { - //部署合约 - ReferenceDataTypeMapTestContract referenceDataTypeMapTestContract = null; - try { - prepare(); - referenceDataTypeMapTestContract = ReferenceDataTypeMapTestContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeMapTestContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeMapTestContract.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeMapContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeMapContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:map中的key与value可以是任意类型 - TransactionReceipt transactionReceipt = referenceDataTypeMapTestContract.setMapKeyType().send(); - collector.logStepPass("referenceDataTypeMapContract 【验证map中的key与value可以是任意类型】 successfully hash:" + transactionReceipt.getTransactionHash()); - //2、验证:string类型map容器赋值 - TransactionReceipt transactionReceipt1 = referenceDataTypeMapTestContract.addMapString(key,value).send(); - collector.logStepPass("referenceDataTypeMapContract 【验证string类型map容器赋值】 执行storageType_map_string() successfully hash:" + transactionReceipt1.getTransactionHash()); - //3、验证:map容器数量 - Uint64 actualValueSize = referenceDataTypeMapTestContract.getMapStringSize().send(); - collector.logStepPass("referenceDataTypeMapContract 【验证map容器数量】 执行getMapStringSize() actualValueSize:" + actualValueSize); - collector.assertEqual(actualValueSize,Uint64.of(mapSize), "checkout execute success."); - //4、验证:map容器根据key获取值 - String actualValue = referenceDataTypeMapTestContract.getMapValueByString(key).send(); - collector.logStepPass("referenceDataTypeMapContract 【验证map容器根据key获取值】 执行getMapValueByString() actualValue:" + actualValue); - collector.assertEqual(actualValue,value, "checkout execute success."); - - //5、验证:person类型map容器赋值 - ReferenceDataTypeMapTestContract.Person person = new ReferenceDataTypeMapTestContract.Person(); - person.name = personName; - person.age = Uint64.of(personAge); - TransactionReceipt transactionReceipt2 = referenceDataTypeMapTestContract.addMapByPerson(Uint8.of(keyPerson),person).send(); - collector.logStepPass("referenceDataTypeMapContract 【验证person类型map容器赋值】 执行setMapByPerson() successfully hash:" + transactionReceipt2.getTransactionHash()); - //6、验证:map容器数量 - Uint64 actualPersonSize = referenceDataTypeMapTestContract.getMapByPersonSize().send(); - collector.logStepPass("referenceDataTypeMapContract 【验证map容器数量】 执行getMapByPersonSize() actualPersonSize:" + actualPersonSize); - collector.assertEqual(actualPersonSize,Uint64.of(mapPersonSize), "checkout execute success."); - - //7、验证:map容器根据key获取值Person - /*String actualValueName = referenceDataTypeMapTestContract.getMapByPerson(Byte.valueOf(keyPerson)).send(); - collector.logStepPass("referenceDataTypeMapContract 【验证map容器根据key获取值】 执行getMapByPerson() actualValueName:" + actualValueName); - collector.assertEqual(actualValueName,personName, "checkout execute success.");*/ - - } catch (Exception e) { - collector.logStepFail("referenceDataTypeMapContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeSetTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeSetTest.java deleted file mode 100644 index f04e554027..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeSetTest.java +++ /dev/null @@ -1,113 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ReferenceDataTypeSetContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试合约引用类型(set类型)属性及函数 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class ReferenceDataTypeSetTest extends WASMContractPrepareTest { - - private String initSetLength; - private String insertSetValue; - private String setLength; - private String findValue; - private String eraseValue; - private String deleteValue; - private String deleteSetLength; - private String clearSetLength; - - - - @Before - public void before() { - initSetLength = driverService.param.get("initSetLength"); - insertSetValue = driverService.param.get("insertSetValue"); - setLength = driverService.param.get("setLength"); - findValue = driverService.param.get("findValue"); - eraseValue = driverService.param.get("eraseValue"); - deleteValue = driverService.param.get("deleteValue"); - deleteSetLength = driverService.param.get("deleteSetLength"); - clearSetLength = driverService.param.get("clearSetLength"); - - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.referenceDataTypeSetTest(set类型)属性函数",sourcePrefix = "wasm") - public void testReferenceDataTypeSet() { - //部署合约 - ReferenceDataTypeSetContract referenceDataTypeSetContract = null; - try { - prepare(); - referenceDataTypeSetContract = ReferenceDataTypeSetContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeSetContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeSetContract.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeSetContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeSetContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:set类型初始化赋值 - TransactionReceipt transactionReceipt = referenceDataTypeSetContract.init_set().send(); - collector.logStepPass("referenceDataTypeSetContract 【验证(set类型初始化赋值】 successfully hash:" + transactionReceipt.getTransactionHash()); - //set类型获取容器大小 - getSetLength(referenceDataTypeSetContract,initSetLength); - - //2、验证:set类型插入数据insert - TransactionReceipt transactionReceipt1 = referenceDataTypeSetContract.insert_set(Uint8.of(insertSetValue)).send(); - collector.logStepPass("referenceDataTypeSetContract 【验证set类型插入数据insert】 successfully hash:" + transactionReceipt1.getTransactionHash()); - //set类型获取容器大小 - getSetLength(referenceDataTypeSetContract,setLength); - //3、验证:set类型查找数据find - Uint8 actualSetValue = referenceDataTypeSetContract.find_set().send(); - collector.logStepPass("referenceDataTypeSetContract 【验证set类型查找数据find】 执行find_set() successfully actualSetValue:" + actualSetValue); - collector.assertEqual(actualSetValue,Uint8.of(findValue), "checkout execute success."); - //4、验证:set类型删除元素erase - TransactionReceipt transactionReceipt2 = referenceDataTypeSetContract.erase_set(Uint8.of(eraseValue)).send(); - collector.logStepPass("referenceDataTypeSetContract 【验证set类型删除元素erase】 successfully hash:" + transactionReceipt2.getTransactionHash()); - getSetLength(referenceDataTypeSetContract,deleteSetLength); - //5、验证:set类型判断是否为空 - Boolean actualEmptyValue = referenceDataTypeSetContract.get_set_empty().send(); - collector.logStepPass("referenceDataTypeSetContract 【验证set类型判断是否为空】 执行find_set() successfully actualEmptyValue:" + actualEmptyValue); - //6、验证:set类型清空clear - TransactionReceipt transactionReceipt3 = referenceDataTypeSetContract.clear_set().send(); - collector.logStepPass("referenceDataTypeSetContract 【验证set类型清空clear】 successfully hash:" + transactionReceipt3.getTransactionHash()); - getSetLength(referenceDataTypeSetContract,clearSetLength); - - } catch (Exception e) { - collector.logStepFail("referenceDataTypeVectorFuncContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - - public void getSetLength(ReferenceDataTypeSetContract referenceDataTypeSetContract,String setLength){ - - try { - Uint64 actualSetLength = referenceDataTypeSetContract.get_set_size().send(); - collector.logStepPass("referenceDataTypeSetContract 【验证set类型获取容器大小】 执行get_set_size() successfully actualSetLength:" + actualSetLength); - collector.assertEqual(actualSetLength, Uint64.of(setLength), "checkout execute success."); - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("referenceDataTypeSetContract Calling Method fail.", e.toString()); - } - - - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeStructMultipleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeStructMultipleTest.java deleted file mode 100644 index bae2a07286..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeStructMultipleTest.java +++ /dev/null @@ -1,79 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ReferenceDataTypeStructMultipleContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试结构体包含复杂类型赋值&取值 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class ReferenceDataTypeStructMultipleTest extends WASMContractPrepareTest { - - private String myGroupName; - private String myGroupId; - private String oneValue; - private String twoValue; - private String arrayIndex; - - - @Before - public void before() { - myGroupName = driverService.param.get("myGroupName"); - myGroupId = driverService.param.get("myGroupId"); - oneValue = driverService.param.get("oneValue"); - twoValue = driverService.param.get("twoValue"); - arrayIndex = driverService.param.get("arrayIndex"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.referenceDataTypeStructTest验证结构体包含复杂类型赋值&取值",sourcePrefix = "wasm") - public void testReferenceDataTypeStructMultiple() { - - //部署合约 - ReferenceDataTypeStructMultipleContract referenceDataTypeStructMultipleContract = null; - try { - prepare(); - referenceDataTypeStructMultipleContract = ReferenceDataTypeStructMultipleContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeStructMultipleContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeStructMultipleContract.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeStructMultipleContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructMultipleContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - - //1、包含(引用类型及基本类型)struct类型赋值 - TransactionReceipt transactionReceipt = referenceDataTypeStructMultipleContract.setGroupValue(myGroupName, Uint64.of(myGroupId)).send(); - collector.logStepPass("referenceDataTypeStructMultipleContract 【验证struct类型包含引用类型及基本类型赋值】 successfully hash:" + transactionReceipt.getTransactionHash()); - //2、验证:验证struct结构体 groupName取值 - String actualGroupName = referenceDataTypeStructMultipleContract.getGroupName().send(); - collector.logStepPass("referenceDataTypeStructMultipleContract 【验证struct结构体 groupName取值】 执行getGroupName() successfully actualGroupName:" + actualGroupName); - collector.assertEqual(actualGroupName,myGroupName, "checkout execute success."); - - //3、包含(引用类型及基本类型)struct类型赋值 - TransactionReceipt transactionReceipt1 = referenceDataTypeStructMultipleContract.setGroupArrayValue(oneValue,twoValue).send(); - collector.logStepPass("referenceDataTypeStructMultipleContract 【验证struct类型数组赋值】 successfully hash:" + transactionReceipt1.getTransactionHash()); - //4、验证:验证struct结构体 getGroupArrayIndexValue取值 - String actualArrayValue = referenceDataTypeStructMultipleContract.getGroupArrayIndexValue(Uint32.of(arrayIndex)).send(); - collector.logStepPass("referenceDataTypeStructMultipleContract 【验证struct结构体数组取值】 执行getGroupArrayIndexValue() successfully actualArrayValue:" + actualArrayValue); - collector.assertEqual(actualArrayValue,twoValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructMultipleContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeStructTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeStructTest.java deleted file mode 100644 index f155d39800..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeStructTest.java +++ /dev/null @@ -1,64 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ReferenceDataTypeStructContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试引用类型结构体(Struct) - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class ReferenceDataTypeStructTest extends WASMContractPrepareTest { - - private String name; - private String age; - - - @Before - public void before() { - name = driverService.param.get("name"); - age = driverService.param.get("age"); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.referenceDataTypeStructTest验证结构体赋值&取值",sourcePrefix = "wasm") - public void testReferenceDataTypeStruct() { - - //部署合约 - ReferenceDataTypeStructContract referenceDataTypeStructContract = null; - try { - prepare(); - referenceDataTypeStructContract = ReferenceDataTypeStructContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeStructContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeStructContract.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeStructContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:定义struct类型并赋值 - TransactionReceipt transactionReceipt = referenceDataTypeStructContract.setStructPersonA(name, Uint64.of(age)).send(); - collector.logStepPass("referenceDataTypeStructContract 【验证定义struct类型并赋值】 successfully hash:" + transactionReceipt.getTransactionHash()); - //2、验证:struct取值 - String actualValue = referenceDataTypeStructContract.getPersonName().send(); - collector.logStepPass("referenceDataTypeStructContract 【验证struct取值】 执行getPersonName() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,name, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeStructContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeTupleTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeTupleTest.java deleted file mode 100644 index b8c74928ad..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeTupleTest.java +++ /dev/null @@ -1,91 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ReferenceDataTypeTupleContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试引用类型(Tuple) - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class ReferenceDataTypeTupleTest extends WASMContractPrepareTest { - - private String expectValue1; - private String expectValue2; - private String a; - private String b; - private String name; - private String age; - - - @Before - public void before() { - expectValue1 = driverService.param.get("expectValue1"); - expectValue2 = driverService.param.get("expectValue2"); - a = driverService.param.get("a"); - b = driverService.param.get("b"); - name = driverService.param.get("name"); - age = driverService.param.get("age"); - } - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.referenceDataTypeTupleTest定义元组赋值&取值",sourcePrefix = "wasm") - public void testReferenceDataTypeTuple() { - - //部署合约 - ReferenceDataTypeTupleContract referenceDataTypeTupleContract = null; - try { - prepare(); - referenceDataTypeTupleContract = ReferenceDataTypeTupleContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeTupleContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeTupleContract.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeTupleContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeTupleContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:tuple元组初始化赋值方式一 - TransactionReceipt transactionReceipt = referenceDataTypeTupleContract.setInitTupleModeOne().send(); - collector.logStepPass("referenceDataTypeTupleContract 【验证元组初始化赋值方式一】 successfully hash:" + transactionReceipt.getTransactionHash()); - //2、验证:tuple根据索引取值 - String actualValue1 = referenceDataTypeTupleContract.getTupleValueIndex1().send(); - collector.logStepPass("referenceDataTypeTupleContract 【验证tuple元组根据索引取值】 执行getTupleValueIndex1() successfully actualValue1:" + actualValue1); - collector.assertEqual(actualValue1,expectValue1, "checkout execute success."); - Uint8 actualValue2 = referenceDataTypeTupleContract.getTupleValueIndex2().send(); - collector.logStepPass("referenceDataTypeTupleContract 【验证tuple元组根据索引取值】 执行getTupleValueIndex2() successfully actualValue2:" + actualValue2); - collector.assertEqual(actualValue2,Uint8.of(expectValue2), "checkout execute success."); - - //3、验证:tuple元组初始化赋值方式二(使用make_tuple函数) - TransactionReceipt transactionReceipt1 = referenceDataTypeTupleContract.setInitTupleModeTwo(a,Uint8.of(b)).send(); - collector.logStepPass("referenceDataTypeTupleContract 【验证tuple元组初始化赋值方式二(使用make_tuple函数)】 successfully hash:" + transactionReceipt1.getTransactionHash()); - String actualValue3 = referenceDataTypeTupleContract.getTupleValueIndex3().send(); - collector.logStepPass("referenceDataTypeTupleContract 【验证tuple元组根据索引取值】 执行getTupleValueIndex() successfully actualValue3:" + actualValue3); - collector.assertEqual(actualValue3,a, "checkout execute success."); - - //4、验证:定义包含引用类型 - TransactionReceipt transactionReceipt2 = referenceDataTypeTupleContract.setInitTupleModeThree(name, Uint64.of(age)).send(); - collector.logStepPass("referenceDataTypeTupleContract 【验证元组定义包含引用类型】 successfully hash:" + transactionReceipt2.getTransactionHash()); - ReferenceDataTypeTupleContract.Person person = referenceDataTypeTupleContract.getTupleValueIndex4().send(); - String actualValueName = person.name; - collector.logStepPass("referenceDataTypeTupleContract 【验证tuple元组根据索引取值】 执行getTupleValueIndex4() successfully actualValueName:" + actualValueName); - collector.assertEqual(actualValueName,name, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeTupleContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeVectorFuncTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeVectorFuncTest.java deleted file mode 100644 index 34da51a2ab..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeVectorFuncTest.java +++ /dev/null @@ -1,139 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ReferenceDataTypeVectorFuncContract; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试合约引用类型(verctor类型)属性/函数 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class ReferenceDataTypeVectorFuncTest extends WASMContractPrepareTest { - - private String insertValue1; - private String vectorLength1; - private String insertValue2; - private String insertNum2; - private String vectorLength2; - private String expectValueAtIndex; - private String expectValueAtValue; - private String FrontValue; - private String BackValue; - private String vectorLength3; - private String vectorLength4; - private String vectorLength5; - - - - @Before - public void before() { - insertValue1 = driverService.param.get("insertValue1"); - vectorLength1 = driverService.param.get("vectorLength1"); - insertValue2 = driverService.param.get("insertValue2"); - insertNum2 = driverService.param.get("insertNum2"); - vectorLength2 = driverService.param.get("vectorLength2"); - expectValueAtIndex = driverService.param.get("expectValueAtIndex"); - expectValueAtValue = driverService.param.get("expectValueAtValue"); - FrontValue = driverService.param.get("FrontValue"); - BackValue = driverService.param.get("BackValue"); - vectorLength3 = driverService.param.get("vectorLength3"); - vectorLength4 = driverService.param.get("vectorLength4"); - vectorLength5 = driverService.param.get("vectorLength5"); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.referenceDataTypeVectorFuncTest(verctor类型)属性函数",sourcePrefix = "wasm") - public void testReferenceDataTypeVectorFunc() { - - //部署合约 - ReferenceDataTypeVectorFuncContract referenceDataTypeVectorFuncContract = null; - try { - prepare(); - referenceDataTypeVectorFuncContract = ReferenceDataTypeVectorFuncContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeVectorFuncContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeVectorFuncContract.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeVectorFuncContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeVectorFuncContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:(增加函数)指定位置插入数据 - TransactionReceipt transactionReceipt = referenceDataTypeVectorFuncContract.insertVectorValue(insertValue1).send(); - collector.logStepPass("referenceDataTypeVectorFuncContract 【验证(增加函数)将值添加到begin()起始位置之前】 successfully hash:" + transactionReceipt.getTransactionHash()); - //vector类型获取容器大小 - getVectorLength(referenceDataTypeVectorFuncContract,vectorLength1); - - //2、验证:(增加函数)指定位置插入多个相同数据 - TransactionReceipt transactionReceipt1 = referenceDataTypeVectorFuncContract.insertVectorMangValue(Uint64.of(insertNum2),insertValue2).send(); - collector.logStepPass("referenceDataTypeVectorFuncContract 【验证(增加函数)指定位置插入多个相同数据】 successfully hash:" + transactionReceipt1.getTransactionHash()); - //vector类型获取容器大小 - getVectorLength(referenceDataTypeVectorFuncContract,vectorLength2); - - //3、验证at()函数,返回index位置元素的引用 [two,two,one] - String actualVectorAtValue = referenceDataTypeVectorFuncContract.findVectorAt(Uint64.of(expectValueAtIndex)).send(); - collector.logStepPass("referenceDataTypeVectorFuncContract 【验证at()函数,返回index位置元素的引用】 执行findVectorAt() successfully actualVectorAtValue:" + actualVectorAtValue); - collector.assertEqual(actualVectorAtValue,expectValueAtValue, "checkout execute success."); - - - //4、验证front():返回首元素的引用 - String actualVectorFrontValue = referenceDataTypeVectorFuncContract.findVectorFront().send(); - collector.logStepPass("referenceDataTypeVectorFuncContract 【验证front():返回首元素的引用】 执行findVectorFront() successfully actualVectorFrontValue:" + actualVectorFrontValue); - collector.assertEqual(actualVectorFrontValue,FrontValue, "checkout execute success."); - //5、验证 back():返回尾元素的引用 - String actualVectorBackValue = referenceDataTypeVectorFuncContract.findVectorBack().send(); - collector.logStepPass("referenceDataTypeVectorFuncContract 【验证 back():返回尾元素的引用】 执行findVectorBack() successfully actualVectorBackValue:" + actualVectorBackValue); - collector.assertEqual(actualVectorBackValue,BackValue, "checkout execute success."); - - //6、验证pop_back()删除最后一个元素 - TransactionReceipt transactionReceipt2 = referenceDataTypeVectorFuncContract.deleteVectorPopBack().send(); - collector.logStepPass("referenceDataTypeVectorFuncContract 【验证pop_back()删除最后一个元素】 successfully hash:" + transactionReceipt2.getTransactionHash()); - //vector类型获取容器大小 - getVectorLength(referenceDataTypeVectorFuncContract,vectorLength3); - //7、验证erase()删除指定元素,将起始位置的元素删除 - TransactionReceipt transactionReceipt3 = referenceDataTypeVectorFuncContract.deleteVectorErase().send(); - collector.logStepPass("referenceDataTypeVectorFuncContract 【验证erase()删除指定元素,将起始位置的元素删除】 successfully hash:" + transactionReceipt3.getTransactionHash()); - //vector类型获取容器大小 - getVectorLength(referenceDataTypeVectorFuncContract,vectorLength4); - //8、clear()清空元素 - TransactionReceipt transactionReceipt4 = referenceDataTypeVectorFuncContract.deleteVectorClear().send(); - collector.logStepPass("referenceDataTypeVectorFuncContract 【验证clear()清空元素】 successfully hash:" + transactionReceipt4.getTransactionHash()); - //vector类型获取容器大小 - getVectorLength(referenceDataTypeVectorFuncContract,vectorLength5); - //9、empty()判断函数 - Boolean isEmpty = referenceDataTypeVectorFuncContract.findVectorEmpty().send(); - collector.logStepPass("referenceDataTypeVectorFuncContract 【验证empty()判断函数】 执行findVectorEmpty() successfully isEmpty:" + isEmpty); - collector.assertEqual(isEmpty,true, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeVectorFuncContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } - - public void getVectorLength(ReferenceDataTypeVectorFuncContract referenceDataTypeVectorFuncContract,String vectorLength){ - - try { - Uint64 actualVectorLength = referenceDataTypeVectorFuncContract.getVectorLength().send(); - collector.logStepPass("referenceDataTypeVectorFuncContract 【验证vector类型获取容器大小】 执行getVectorLength() successfully actualVectorLength:" + actualVectorLength); - collector.assertEqual(actualVectorLength,Uint64.of(vectorLength), "checkout execute success."); - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("referenceDataTypeVectorFuncContract Calling Method fail.", e.toString()); - } - - - } - - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeVectorTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeVectorTest.java deleted file mode 100644 index 33bad264c2..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/ReferenceDataTypeVectorTest.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ReferenceDataTypeVectorContract; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试引用类型(Vector) - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class ReferenceDataTypeVectorTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.referenceDataTypeVectorTest验证Vector容器赋值及属性",sourcePrefix = "wasm") - public void testReferenceDataTypeVector() { - //部署合约 - ReferenceDataTypeVectorContract referenceDataTypeVectorContract = null; - try { - prepare(); - referenceDataTypeVectorContract = ReferenceDataTypeVectorContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = referenceDataTypeVectorContract.getContractAddress(); - TransactionReceipt tx = referenceDataTypeVectorContract.getTransactionReceipt().get(); - collector.logStepPass("referenceDataTypeVectorContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeVectorContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:vector类型赋值传参对象 - ReferenceDataTypeVectorContract.Clothes clothes = new ReferenceDataTypeVectorContract.Clothes(); - clothes.color = "yellow"; - TransactionReceipt transactionReceipt = referenceDataTypeVectorContract.setClothesColorOne(clothes).send(); - collector.logStepPass("referenceDataTypeVectorContract 【验证vector类型赋值传参对象】 successfully hash:" + transactionReceipt.getTransactionHash()); - //2、验证:vector类型赋值传参字符串 - String myColor = "bule"; - TransactionReceipt transactionReceipt1 = referenceDataTypeVectorContract.setClothesColorTwo(myColor).send(); - collector.logStepPass("referenceDataTypeVectorContract 【验证vector类型赋值传参字符串】 successfully hash:" + transactionReceipt1.getTransactionHash()); - //3、验证:vector类型根据索引取值 - String actualValue = referenceDataTypeVectorContract.getClothesColorIndex().send(); - collector.logStepPass("referenceDataTypeVectorContract 【验证vector类型根据索引取值】 执行getClothesColorIndex() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,"yellow", "checkout execute success."); - //4、验证:vector类型获取容器大小 - Uint64 expectValue = Uint64.of("2"); - Uint64 actualVectorLength = referenceDataTypeVectorContract.getClothesColorLength().send(); - collector.logStepPass("referenceDataTypeVectorContract 【验证vector类型根据索引取值】 执行getClothesColorLength() successfully actualValue:" + actualValue); - collector.assertEqual(actualVectorLength,expectValue, "checkout execute success."); - } catch (Exception e) { - collector.logStepFail("referenceDataTypeVectorContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/TypeConversionTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/TypeConversionTest.java deleted file mode 100644 index 0ae8455dc4..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/data_type/TypeConversionTest.java +++ /dev/null @@ -1,92 +0,0 @@ -package network.platon.test.wasm.data_type; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint32; -import com.alaya.rlp.wasm.datatypes.Uint64; -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.TypeConversionContract; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * @title 测试合约数据类型转换 - * @description: - * @author: qudong - * @create: 2020/02/07 - */ -public class TypeConversionTest extends WASMContractPrepareTest { - - - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qudong", showName = "wasm.typeConversionTest测试合约数据类型转换",sourcePrefix = "wasm") - public void testTypeConversion() { - //部署合约 - TypeConversionContract typeConversionContract = null; - try { - prepare(); - typeConversionContract = TypeConversionContract.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = typeConversionContract.getContractAddress(); - TransactionReceipt tx = typeConversionContract.getTransactionReceipt().get(); - collector.logStepPass("typeConversionContract issued successfully.contractAddress:" + contractAddress - + ", hash:" + tx.getTransactionHash() + ",deploy gas used:" + tx.getGasUsed()); - collector.logStepPass("deployFinishCurrentBlockNumber:" + tx.getBlockNumber()); - - } catch (Exception e) { - collector.logStepFail("typeConversionContract deploy fail.", e.toString()); - e.printStackTrace(); - } - //调用合约方法 - try { - //1、验证:隐式类型转换(混合类型的算术运算) - Uint8 a = Uint8.of(5); - Uint64 b = Uint64.of(10); - Uint64 actualUint64Value = typeConversionContract.get_add(a,b).send(); - collector.logStepPass("basicDataTypeContract 【验证隐式类型转换(混合类型的算术运算)】 执行get_add() successfully actualUint64Value:" + actualUint64Value); - collector.assertEqual(actualUint64Value,Uint64.of(15), "checkout execute success."); - //2、验证:隐式类型转换(不同类型的赋值操作) - Boolean bool = true; - Uint64 actualUint64Value1 = typeConversionContract.get_different_type_(bool).send(); - collector.logStepPass("basicDataTypeContract 【验证隐式类型转换(不同类型的赋值操作)】 执行get_different_type_() successfully actualUint64Value1:" + actualUint64Value1); - collector.assertEqual(actualUint64Value1,Uint64.of(1), "checkout execute success."); - - //3、、验证:函数参数传值时类型转换 - Uint32 actualValue = typeConversionContract.get_pram_type().send(); - collector.logStepPass("basicDataTypeContract 【验证函数参数传值时类型转换】 执行get_pram_type() successfully actualValue:" + actualValue); - collector.assertEqual(actualValue,Uint32.of(1), "checkout execute success."); - - //4、验证:隐式类型转换(函数返回值) - Uint8 aValue = Uint8.of(10); - Uint8 bValue = Uint8.of(10); - Uint64 actualValue1 = typeConversionContract.get_pram_return(aValue,bValue).send(); - collector.logStepPass("basicDataTypeContract 【验证隐式类型转换(函数返回值)】 执行get_pram_return() successfully actualValue1:" + actualValue1); - collector.assertEqual(actualValue1,Uint64.of(20), "checkout execute success."); - - //5、验证:显示类型转换(强制类型转换) - Uint8 actualValue2 = typeConversionContract.get_convert().send(); - collector.logStepPass("basicDataTypeContract 【验证强制类型转换】 执行get_convert() successfully actualValue2:" + actualValue2); - collector.assertEqual(actualValue2,Uint8.of(234), "checkout execute success."); - - //6、验证:强制类型转换(static_cast) - Uint8 actualValue3 = typeConversionContract.get_convert_static_cast().send(); - collector.logStepPass("basicDataTypeContract 【验证强制类型转换(static_cast)】 执行get_convert_static_cast() successfully actualValue3:" + actualValue3); - collector.assertEqual(actualValue3,Uint8.of(244), "checkout execute success."); - - //7、验证:强制类型转换(const_cast) - Uint8 actualValue4 = typeConversionContract.get_convert_const_cast().send(); - collector.logStepPass("basicDataTypeContract 【验证强制类型转换(const_cast)】 执行get_convert_const_cast() successfully actualValue4:" + actualValue4); - collector.assertEqual(actualValue4,Uint8.of(10), "checkout execute success."); - - - - } catch (Exception e) { - collector.logStepFail("basicDataTypeContract Calling Method fail.", e.toString()); - e.printStackTrace(); - } - - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMBubbleSortTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMBubbleSortTest.java deleted file mode 100644 index 9cd2c02ca3..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMBubbleSortTest.java +++ /dev/null @@ -1,64 +0,0 @@ -package network.platon.test.wasm.exec_efficiency; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.BubbleSort; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; -import java.util.Arrays; - -/** - * @title WASMBubbleSortTest - * @description 执行效率 - 冒泡排序 - * @author liweic - * @updateTime 2020/2/28 19:38 - */ -public class WASMBubbleSortTest extends WASMContractPrepareTest { - private String contractAddress; - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.exec_efficiency-冒泡排序", sourcePrefix = "wasm") - public void test() { - prepare(); - try { - - Integer numberOfCalls = Integer.valueOf(driverService.param.get("numberOfCalls")); - - BubbleSort bubblesort = BubbleSort.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = bubblesort.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + bubblesort.getTransactionReceipt().get().getGasUsed()); - - Int64[] arr = new Int64[numberOfCalls]; - - int min = -1000, max = 2000; - - for (int i = 0; i < numberOfCalls; i++) { - arr[i] = Int64.of(min + (int) (Math.random() * (max - min + 1))); - } - - collector.logStepPass("before sort:" + Arrays.toString(arr)); - TransactionReceipt transactionReceipt = bubblesort.load(contractAddress, web3j, transactionManager, provider, chainId) - .sort(arr, Int32.of(arr.length)).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - Int64[] generationArr = bubblesort.load(contractAddress, web3j, transactionManager, provider, chainId).get_array().send(); - - collector.logStepPass("after sort:" + Arrays.toString(generationArr)); - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMHeapSortTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMHeapSortTest.java deleted file mode 100644 index 5fa57fd2a4..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMHeapSortTest.java +++ /dev/null @@ -1,64 +0,0 @@ -package network.platon.test.wasm.exec_efficiency; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.HeapSort; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; -import java.util.Arrays; - -/** - * @title WASMHeapSortTest - * @description 执行效率 - 堆排序 - * @author liweic - * @updateTime 2020/3/2 15:09 - */ -public class WASMHeapSortTest extends WASMContractPrepareTest { - private String contractAddress; - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.exec_efficiency-堆排序", sourcePrefix = "wasm") - public void test() { - prepare(); - try { - - Integer numberOfCalls = Integer.valueOf(driverService.param.get("numberOfCalls")); - - HeapSort heapsort = HeapSort.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = heapsort.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + heapsort.getTransactionReceipt().get().getGasUsed()); - - Int64[] arr = new Int64[numberOfCalls]; - - int min = -1000, max = 2000; - - for (int i = 0; i < numberOfCalls; i++) { - arr[i] = Int64.of(min + (int) (Math.random() * (max - min + 1))); - } - - collector.logStepPass("before sort:" + Arrays.toString(arr)); - TransactionReceipt transactionReceipt = heapsort.load(contractAddress, web3j, transactionManager, provider, chainId) - .sort(arr, Int32.of(arr.length)).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - Int64[] generationArr = heapsort.load(contractAddress, web3j, transactionManager, provider, chainId).get_array().send(); - - collector.logStepPass("after sort:" + Arrays.toString(generationArr)); - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMInsertSortTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMInsertSortTest.java deleted file mode 100644 index f3e4a1111d..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMInsertSortTest.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.test.wasm.exec_efficiency; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.InsertSort; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; -import java.math.BigInteger; -import java.util.Arrays; - -/** - * @title WASMInsertSortTest - * @description 执行效率 - 插入排序 - * @author qcxiao - * @updateTime 2020/2/25 11:38 - */ -public class WASMInsertSortTest extends WASMContractPrepareTest { - private String contractAddress; - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "wasm.exec_efficiency-插入排序", sourcePrefix = "wasm") - public void test() { - prepare(); - try { - - Integer numberOfCalls = Integer.valueOf(driverService.param.get("numberOfCalls")); - - InsertSort insertSort = InsertSort.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = insertSort.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + insertSort.getTransactionReceipt().get().getGasUsed()); - - Int64[] arr = new Int64[numberOfCalls]; - - int min = -1000, max = 2000; - - for (int i = 0; i < numberOfCalls; i++) { - arr[i] = Int64.of(min + (int) (Math.random() * (max - min + 1))); - } - - collector.logStepPass("before sort:" + Arrays.toString(arr)); - TransactionReceipt transactionReceipt = InsertSort.load(contractAddress, web3j, transactionManager, provider, chainId) - .sort(arr, Int64.of(arr.length)).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - Int64[] generationArr = InsertSort.load(contractAddress, web3j, transactionManager, provider, chainId).get_array().send(); - - collector.logStepPass("after sort:" + Arrays.toString(generationArr)); - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMLoopCallTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMLoopCallTest.java deleted file mode 100644 index 2f5ded298e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMLoopCallTest.java +++ /dev/null @@ -1,55 +0,0 @@ -package network.platon.test.wasm.exec_efficiency; - - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.LoopCall; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; -import java.math.BigInteger; - -/** - * @title 执行效率-循环调用 - * @description: - * @author: qcxiao - * @create: 2019/12/26 14:38 - **/ -public class WASMLoopCallTest extends WASMContractPrepareTest { - - private Uint64 numberOfCalls; - private String contractAddress; - - @Before - public void before() { - numberOfCalls = Uint64.of(driverService.param.get("numberOfCalls")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "wasm.exec_efficiency.LoopCallTest-循环执行", sourcePrefix = "wasm") - public void test() { - prepare(); - try { - LoopCall loopCall = LoopCall.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = loopCall.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + loopCall.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt transactionReceipt = LoopCall.load(contractAddress, web3j, transactionManager, provider, chainId) - .loopCallTest(numberOfCalls).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - Uint64 sum = LoopCall.load(contractAddress, web3j, transactionManager, provider, chainId).get_sum().send(); - collector.logStepPass("computing result:" + sum); - } catch (Exception e) { - collector.logStepFail("The contract fail.", e.getMessage()); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMMergeSortTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMMergeSortTest.java deleted file mode 100644 index 314dc87978..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMMergeSortTest.java +++ /dev/null @@ -1,64 +0,0 @@ -package network.platon.test.wasm.exec_efficiency; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.MergeSort; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; -import java.util.Arrays; - -/** - * @title WASMMergeSortTest - * @description 执行效率 - 归并排序 - * @author liweic - * @updateTime 2020/3/2 19:08 - */ -public class WASMMergeSortTest extends WASMContractPrepareTest { - private String contractAddress; - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.exec_efficiency-归并排序", sourcePrefix = "wasm") - public void test() { - prepare(); - try { - - Integer numberOfCalls = Integer.valueOf(driverService.param.get("numberOfCalls")); - - MergeSort mergesort = MergeSort.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = mergesort.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + mergesort.getTransactionReceipt().get().getGasUsed()); - - Int64[] arr = new Int64[numberOfCalls]; - - int min = -1000, max = 2000; - - for (int i = 0; i < numberOfCalls; i++) { - arr[i] = Int64.of(min + (int) (Math.random() * (max - min + 1))); - } - - collector.logStepPass("before sort:" + Arrays.toString(arr)); - TransactionReceipt transactionReceipt = mergesort.load(contractAddress, web3j, transactionManager, provider, chainId) - .sort(arr, Int32.of(0),Int32.of(arr.length)).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - Int64[] generationArr = mergesort.load(contractAddress, web3j, transactionManager, provider, chainId).get_array().send(); - - collector.logStepPass("after sort:" + Arrays.toString(generationArr)); - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMQuickSortTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMQuickSortTest.java deleted file mode 100644 index d33e8fbfc5..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMQuickSortTest.java +++ /dev/null @@ -1,62 +0,0 @@ -package network.platon.test.wasm.exec_efficiency; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.QuickSort; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; -import java.math.BigInteger; -import java.util.Arrays; - -/** - * @title WASMQuickSortTest - * @description 快排 - * @author qcxiao - * @updateTime 2019/12/28 14:39 - */ -public class WASMQuickSortTest extends WASMContractPrepareTest { - private String contractAddress; - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "wasm.exec_efficiency-快速排序", sourcePrefix = "wasm") - public void test() { - prepare(); - try { - Integer numberOfCalls = Integer.valueOf(driverService.param.get("numberOfCalls")); - QuickSort quickSort = QuickSort.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = quickSort.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + quickSort.getTransactionReceipt().get().getGasUsed()); - - Int64[] arr = new Int64[numberOfCalls]; - - // 定义一个数组中的最小值与最大值 - int min = -1000, max = 2000; - - // numberOfCalls表示数组的长度 - for (int i = 0; i < numberOfCalls; i++) { - arr[i] = Int64.of(min + (int) (Math.random() * (max - min + 1))); - } - - collector.logStepPass("before sort:" + Arrays.toString(arr)); - TransactionReceipt transactionReceipt = QuickSort.load(contractAddress, web3j, transactionManager, provider, chainId) - .sort(arr, Int64.of(0), Int64.of(arr.length)).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - Int64[] generationArr = QuickSort.load(contractAddress, web3j, transactionManager, provider, chainId).get_array().send(); - - collector.logStepPass("after sort:" + Arrays.toString(generationArr)); - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMRadixSortTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMRadixSortTest.java deleted file mode 100644 index 32642f5921..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMRadixSortTest.java +++ /dev/null @@ -1,64 +0,0 @@ -package network.platon.test.wasm.exec_efficiency; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.RadixSort; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; -import java.util.Arrays; - -/** - * @title WASMRadixSortTest - * @description 执行效率 - 基数排序 - * @author liweic - * @updateTime 2020/3/3 17:09 - */ -public class WASMRadixSortTest extends WASMContractPrepareTest { - private String contractAddress; - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.exec_efficiency-基数排序", sourcePrefix = "wasm") - public void test() { - prepare(); - try { - - Integer numberOfCalls = Integer.valueOf(driverService.param.get("numberOfCalls")); - - RadixSort radixsort = RadixSort.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = radixsort.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + radixsort.getTransactionReceipt().get().getGasUsed()); - - Int64[] arr = new Int64[numberOfCalls]; - - int min = 1000, max = 4000; - - for (int i = 0; i < numberOfCalls; i++) { - arr[i] = Int64.of(min + (int) (Math.random() * (max - min + 1))); - } - - collector.logStepPass("before sort:" + Arrays.toString(arr)); - TransactionReceipt transactionReceipt = radixsort.load(contractAddress, web3j, transactionManager, provider, chainId) - .sort(arr, Int32.of(arr.length)).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - Int64[] generationArr = radixsort.load(contractAddress, web3j, transactionManager, provider, chainId).get_array().send(); - - collector.logStepPass("after sort:" + Arrays.toString(generationArr)); - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMRecursionCallTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMRecursionCallTest.java deleted file mode 100644 index e14e0a1334..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMRecursionCallTest.java +++ /dev/null @@ -1,61 +0,0 @@ -package network.platon.test.wasm.exec_efficiency; - - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.RecursionCall; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; - -/** - * @title 执行效率-递归调用 - * @description: - * @author: qcxiao - * @create: 2019/12/26 14:38 - **/ -public class WASMRecursionCallTest extends WASMContractPrepareTest { - - - private Uint64 numberOfCalls; - private String contractAddress; - - @Before - public void before() { - numberOfCalls = Uint64.of(driverService.param.get("numberOfCalls")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "wasm.exec_efficiency.RecursionCallTest-递归执行", sourcePrefix = "wasm") - public void test() { - prepare(); - try { - RecursionCall recursionCall = RecursionCall.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = recursionCall.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + recursionCall.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt transactionReceipt = RecursionCall.load(contractAddress, web3j, transactionManager, provider, chainId) - .call(numberOfCalls).send(); - - Uint64 sum = RecursionCall.load(contractAddress, web3j, transactionManager, provider, chainId) - .get_sum().send(); - - collector.logStepPass("sum:" + sum); - collector.assertEqual(sum, numberOfCalls, "assert recursion call result"); - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMShellSortTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMShellSortTest.java deleted file mode 100644 index 349400f337..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/exec_efficiency/WASMShellSortTest.java +++ /dev/null @@ -1,64 +0,0 @@ -package network.platon.test.wasm.exec_efficiency; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Int32; -import com.alaya.rlp.wasm.datatypes.Int64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ShellSort; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; -import java.util.Arrays; - -/** - * @title WASMShellSortTest - * @description 执行效率 - 希尔排序 - * @author liweic - * @updateTime 2020/2/28 16:38 - */ -public class WASMShellSortTest extends WASMContractPrepareTest { - private String contractAddress; - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.exec_efficiency-希尔排序", sourcePrefix = "wasm") - public void test() { - prepare(); - try { - - Integer numberOfCalls = Integer.valueOf(driverService.param.get("numberOfCalls")); - - ShellSort shellsort = ShellSort.deploy(web3j, transactionManager, provider, chainId).send(); - contractAddress = shellsort.getContractAddress(); - collector.logStepPass("contract deploy successful. contractAddress:" + contractAddress); - collector.logStepPass("deploy gas used:" + shellsort.getTransactionReceipt().get().getGasUsed()); - - Int64[] arr = new Int64[numberOfCalls]; - - int min = -1000, max = 2000; - - for (int i = 0; i < numberOfCalls; i++) { - arr[i] = Int64.of(min + (int) (Math.random() * (max - min + 1))); - } - - collector.logStepPass("before sort:" + Arrays.toString(arr)); - TransactionReceipt transactionReceipt = ShellSort.load(contractAddress, web3j, transactionManager, provider, chainId) - .sort(arr, Int32.of(arr.length)).send(); - - BigInteger gasUsed = transactionReceipt.getGasUsed(); - collector.logStepPass("gasUsed:" + gasUsed); - collector.logStepPass("contract load successful. transactionHash:" + transactionReceipt.getTransactionHash()); - collector.logStepPass("currentBlockNumber:" + transactionReceipt.getBlockNumber()); - - Int64[] generationArr = ShellSort.load(contractAddress, web3j, transactionManager, provider, chainId).get_array().send(); - - collector.logStepPass("after sort:" + Arrays.toString(generationArr)); - } catch (Exception e) { - e.printStackTrace(); - collector.logStepFail("The contract fail.", e.toString()); - } - } - -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/CallValueFunctionTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/CallValueFunctionTest.java deleted file mode 100644 index 018461476e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/CallValueFunctionTest.java +++ /dev/null @@ -1,45 +0,0 @@ -package network.platon.test.wasm.function; - -import com.alaya.rlp.wasm.datatypes.Uint8; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.CallValueFunction; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - - -/** - * - * @title 验证函数platon_call_value - * @description: - * @author: liweic - * @create: 2020/02/11 - */ -public class CallValueFunctionTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.CallValueFunctionTest验证链上函数platon_call_value",sourcePrefix = "wasm") - public void CallValuefunction() { - - try { - prepare(); - CallValueFunction callvalue = CallValueFunction.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = callvalue.getContractAddress(); - String transactionHash = callvalue.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("CallerFunctionTest issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("CallerFunctionTest deploy gasUsed:" + callvalue.getTransactionReceipt().get().getGasUsed()); - - Uint8 callval = callvalue.get_platon_call_value().send(); - collector.logStepPass("getPlatONCallValue函数返回值:" + callval.value); - collector.assertEqual(callval.value.toString(), "0"); - - - } catch (Exception e) { - collector.logStepFail("CallValueFunctionTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/CallerFunctionTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/CallerFunctionTest.java deleted file mode 100644 index 23c8197023..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/CallerFunctionTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.wasm.function; - -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.CallerFunction; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - - -/** - * - * @title 验证函数platon_caller - * @description: - * @author: liweic - * @create: 2020/02/11 - */ -public class CallerFunctionTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.CallerFunctionTest验证链上函数platon_caller",sourcePrefix = "wasm") - public void callerFunction() { - - try { - prepare(); - CallerFunction caller = CallerFunction.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = caller.getContractAddress(); - String transactionHash = caller.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("CallerFunctionTest issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("CallerFunctionTest deploy gasUsed:" + caller.getTransactionReceipt().get().getGasUsed()); - - String callerAddr = caller.get_platon_caller().send(); - collector.logStepPass("getPlatONCaller函数返回值:" + callerAddr); - collector.assertEqual(callerAddr, walletAddress.toLowerCase()); - - - } catch (Exception e) { - collector.logStepFail("CallerFunctionTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/CoinbaseFunctionTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/CoinbaseFunctionTest.java deleted file mode 100644 index 5c2273a5d9..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/CoinbaseFunctionTest.java +++ /dev/null @@ -1,44 +0,0 @@ -package network.platon.test.wasm.function; - -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.CoinbaseFunction; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - - -/** - * - * @title 验证函数platon_coinbase - * @description: - * @author: liweic - * @create: 2020/02/11 - */ -public class CoinbaseFunctionTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.CoinbaseFunctionTest验证链上函数platon_coinbase",sourcePrefix = "wasm") - public void Coinbasefunction() { - - try { - prepare(); - CoinbaseFunction coinbase = CoinbaseFunction.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = coinbase.getContractAddress(); - String transactionHash = coinbase.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("CoinbaseFunction issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("CoinbaseFunction deploy gasUsed:" + coinbase.getTransactionReceipt().get().getGasUsed()); - - String coinbaseaddr = coinbase.get_platon_coinbase().send(); - collector.logStepPass("getPlatONConibase函数返回值:" + coinbaseaddr); - - String coinaddr = "0x0000000000000000000000000000000000000000"; - boolean iscoinbase = coinbaseaddr.equals(coinaddr); - collector.assertEqual(!iscoinbase ,true); - - - } catch (Exception e) { - collector.logStepFail("CoinbaseFunctionTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/ComputeDateTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/ComputeDateTest.java deleted file mode 100644 index 2a375b649b..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/ComputeDateTest.java +++ /dev/null @@ -1,48 +0,0 @@ -package network.platon.test.wasm.function; - -import com.alaya.rlp.wasm.datatypes.Int32; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.ComputeDate; -import org.junit.Before; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * 验证计算方法在合约里的实现 - * 计算两个日期之间相差的月份 - * @create: 2020/02/16 - * @author liweic - */ - -public class ComputeDateTest extends WASMContractPrepareTest { - - private int monthdiff; - - @Before - public void before() { monthdiff = Integer.parseInt(driverService.param.get("monthdiff")); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.ComputeDate验证简单的计算方法",sourcePrefix = "wasm") - public void Computedate() { - - try { - prepare(); - ComputeDate computedate = ComputeDate.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = computedate.getContractAddress(); - String transactionHash = computedate.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("ComputeDate issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("ComputeDate deploy gasUsed:" + computedate.getTransactionReceipt().get().getGasUsed()); - - Int32 datediff1 = computedate.MonthsBetween2Date("20190201", "20200219").send(); - collector.logStepPass("日期月份差:" + datediff1.value); - collector.assertEqual(datediff1.value, monthdiff); - - } catch (Exception e) { - collector.logStepFail("ComputeDate failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/CryptographicFunctionTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/CryptographicFunctionTest.java deleted file mode 100644 index 7021534b54..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/CryptographicFunctionTest.java +++ /dev/null @@ -1,75 +0,0 @@ -package network.platon.test.wasm.function; - -import com.alaya.bech32.Bech32; -import com.alaya.parameters.NetworkParameters; -import com.alaya.rlp.wasm.datatypes.WasmAddress; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.CryptographicFunction; -import network.platon.utils.DataChangeUtil; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - - -/** - * - * @title 内置函数 - * platon_ecrecover - * platon_ripemd160 - * platon_sha256 - * @description: - * @author: hudenian - * @create: 2020/03/18 - */ -public class CryptographicFunctionTest extends WASMContractPrepareTest { - - // 公钥 - String publicKey = "0x60320b8a71bc314404ef7d194ad8cac0bee1e331"; - // 被签名数据的哈希结果值 Hash.sha3("abc"); - String hexHash = "4e03657aea45a94fc7d47ba826c8d667c0d1e6e33a64a036ec44f58fa12d6c45"; - // 签名后的数据 - String hexSignature = "f4128988cbe7df8315440adde412a8955f7f5ff9a5468a791433727f82717a6753bd71882079522207060b681fbd3f5623ee7ed66e33fc8e581f442acbcf6ab800"; - - - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "hudenian", showName = "wasm.CryptographicFunctionTest-验证内置函数",sourcePrefix = "wasm") - public void cryptographicTest() { - - try { - prepare(); - CryptographicFunction cryptographicFunction = CryptographicFunction.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = cryptographicFunction.getContractAddress(); - String transactionHash = cryptographicFunction.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("CryptographicFunctionTest issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("CryptographicFunctionTest deploy gasUsed:" + cryptographicFunction.getTransactionReceipt().get().getGasUsed()); - - - - //platon_ecrecover - byte[] hash = DataChangeUtil.hexToByteArray(hexHash); - byte[] signature = DataChangeUtil.hexToByteArray(hexSignature); - - WasmAddress wasmAddress1 = cryptographicFunction.call_platon_ecrecover(hash,signature).send(); - String bech32Address = Bech32.addressEncode(NetworkParameters.TestNetParams.getHrp(), publicKey); - collector.logStepPass("call_platon_ecrecover函数返回值:" + wasmAddress1.getAddress()); - collector.assertEqual(bech32Address,wasmAddress1.getAddress()); - - //platon_ripemd160 - byte[] wasmAddress = cryptographicFunction.call_platon_ripemd160(DataChangeUtil.stringToBytes32("hellow")).send(); - collector.logStepPass("call_platon_ripemd160函数返回值:" + DataChangeUtil.bytesToHex(wasmAddress)); - - //platon_sha256 - byte[] resultByte = cryptographicFunction.call_platon_sha256(DataChangeUtil.stringToBytes32("hellow")).send(); - collector.logStepPass("call_platon_sha256函数返回值:" + DataChangeUtil.bytesToHex(resultByte)); - - - } catch (Exception e) { - collector.logStepFail("CryptographicFunctionTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryCallocIntTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryCallocIntTest.java deleted file mode 100644 index b44ea19535..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryCallocIntTest.java +++ /dev/null @@ -1,41 +0,0 @@ -package network.platon.test.wasm.function; - -import com.alaya.rlp.wasm.datatypes.Int32; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.MemoryCallocInt; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * 验证内存memory函数-整型存储 - * 1.函数calloc - * @author liweic - * @create 2020/02/24 - */ - -public class MemoryCallocIntTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.MemoryCallocIntTest验证calloc-int",sourcePrefix = "wasm") - public void Memoryreallocint() { - - try { - prepare(); - MemoryCallocInt mci = MemoryCallocInt.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = mci.getContractAddress(); - String transactionHash = mci.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("MemoryCallocInt issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("MemoryCallocInt deploy gasUsed:" + mci.getTransactionReceipt().get().getGasUsed()); - - Int32 callocint = mci.getcalloc().send(); - collector.logStepPass("calloc函数返回值:" + callocint.value); - collector.assertEqual(callocint.value, 2500); - - } catch (Exception e) { - collector.logStepFail("MemoryCallocInt failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryFunctionIntTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryFunctionIntTest.java deleted file mode 100644 index cdd8d3c13a..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryFunctionIntTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.wasm.function; - -import com.alaya.rlp.wasm.datatypes.Int32; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.MemoryFunctionInt; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * 验证内存memory函数-整型存储 - * 1.函数realloc - * 2.函数free - * 3.函数memset - * @author liweic - * @create 2020/02/19 - */ - -public class MemoryFunctionIntTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.MemoryFunctionIntTest验证memory函数-整型存储",sourcePrefix = "wasm") - public void Memoryfunctionint() { - - try { - prepare(); - MemoryFunctionInt memoryint = MemoryFunctionInt.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = memoryint.getContractAddress(); - String transactionHash = memoryint.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("MemoryFunctionInt issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("MemoryFunctionInt deploy gasUsed:" + memoryint.getTransactionReceipt().get().getGasUsed()); - - Int32 mallocint = memoryint.getmallocint().send(); - collector.logStepPass("malloc函数返回值:" + mallocint.value); - collector.assertEqual(mallocint.value, -1); - - } catch (Exception e) { - collector.logStepFail("MemoryFunctionInt failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryFunction_1Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryFunction_1Test.java deleted file mode 100644 index 9d09219323..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryFunction_1Test.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.wasm.function; - -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.MemoryFunction_1; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * 验证内存memory实现函数 - * 1.函数malloc - * 2.函数free - * 3.函数memset - * 4.C库函数strcpy - * @author liweic - *@create: 2020/02/16 - */ - -public class MemoryFunction_1Test extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.MemoryFunction_1Test验证内存实现函数malloc",sourcePrefix = "wasm") - public void Memoryfunction1() { - - try { - prepare(); - MemoryFunction_1 memory1 = MemoryFunction_1.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = memory1.getContractAddress(); - String transactionHash = memory1.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("MemoryFunction_1 issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("MemoryFunction_1 deploy gasUsed:" + memory1.getTransactionReceipt().get().getGasUsed()); - - String malloc = memory1.getmalloc().send(); - collector.logStepPass("malloc函数返回值:" + malloc); - collector.assertEqual(malloc, "WasmTest"); - - - } catch (Exception e) { - collector.logStepFail("MemoryFunctions_1 failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryFunction_2Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryFunction_2Test.java deleted file mode 100644 index 9c084a360e..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryFunction_2Test.java +++ /dev/null @@ -1,43 +0,0 @@ -package network.platon.test.wasm.function; - -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.MemoryFunction_2; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * 验证内存memory实现函数 - * 1.函数realloc - * 2.函数free - * 3.函数memset - * 4.C库函数strcpy - * @author liweic - * @create: 2020/02/16 - */ - -public class MemoryFunction_2Test extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.MemoryFunction_2Test验证内存实现函数realloc",sourcePrefix = "wasm") - public void Memoryfunction2() { - - try { - prepare(); - MemoryFunction_2 memory2 = MemoryFunction_2.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = memory2.getContractAddress(); - String transactionHash = memory2.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("MemoryFunction_2 issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("MemoryFunction_2 deploy gasUsed:" + memory2.getTransactionReceipt().get().getGasUsed()); - - String realloc = memory2.getrealloc().send(); - collector.logStepPass("realloc函数返回值:" + realloc); - collector.assertEqual(realloc, "WasmTest2"); - - - } catch (Exception e) { - collector.logStepFail("MemoryFunction_2 failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryFunction_3Test.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryFunction_3Test.java deleted file mode 100644 index 40c35d2bb4..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryFunction_3Test.java +++ /dev/null @@ -1,42 +0,0 @@ -package network.platon.test.wasm.function; - -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.MemoryFunction_3; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * 验证内存memory实现函数 - * 1.函数calloc - * 2.函数free - * 3.函数memcpy - * @author liweic - * @create: 2020/02/17 - */ - -public class MemoryFunction_3Test extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.MemoryFunction_3Test验证内存实现函数calloc",sourcePrefix = "wasm") - public void Memoryfunction3() { - - try { - prepare(); - MemoryFunction_3 memory3 = MemoryFunction_3.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = memory3.getContractAddress(); - String transactionHash = memory3.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("MemoryFunction_3 issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("MemoryFunction_3 deploy gasUsed:" + memory3.getTransactionReceipt().get().getGasUsed()); - - String calloc = memory3.getcalloc().send(); - collector.logStepPass("calloc函数返回值:" + calloc); - collector.assertEqual(calloc, "WasmTest3"); - - - } catch (Exception e) { - collector.logStepFail("MemoryFunction_3 failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryReallocIntTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryReallocIntTest.java deleted file mode 100644 index fda3cb6dc5..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/MemoryReallocIntTest.java +++ /dev/null @@ -1,41 +0,0 @@ -package network.platon.test.wasm.function; - -import com.alaya.rlp.wasm.datatypes.Int32; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.MemoryReallocInt; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * 验证内存memory函数-整型存储 - * 1.函数realloc - * @author liweic - * @create 2020/02/24 - */ - -public class MemoryReallocIntTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.MemoryReallocIntTest验证realloc-int",sourcePrefix = "wasm") - public void Memoryreallocint() { - - try { - prepare(); - MemoryReallocInt mri = MemoryReallocInt.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = mri.getContractAddress(); - String transactionHash = mri.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("MemoryReallocInt issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("MemoryReallocInt deploy gasUsed:" + mri.getTransactionReceipt().get().getGasUsed()); - - Int32 reallocint = mri.getrealloc().send(); - collector.logStepPass("realloc函数返回值:" + reallocint.value); - collector.assertEqual(reallocint.value, 100); - - } catch (Exception e) { - collector.logStepFail("MemoryReallocInt failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/OriginFunctionTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/OriginFunctionTest.java deleted file mode 100644 index 7888bd25e1..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/OriginFunctionTest.java +++ /dev/null @@ -1,42 +0,0 @@ -package network.platon.test.wasm.function; - -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.OriginFunction; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -/** - * - * @title 验证函数platon_origin - * @description: - * @author: liweic - * @create: 2020/02/11 - */ -public class OriginFunctionTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.OriginFunctionTest验证链上函数platon_origin",sourcePrefix = "wasm") - public void Originfunction() { - - try { - prepare(); - OriginFunction origin = OriginFunction.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = origin.getContractAddress(); - String transactionHash = origin.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("OriginFunction issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("OriginFunction deploy gasUsed:" + origin.getTransactionReceipt().get().getGasUsed()); - - String originaddr = origin.get_platon_origin().send(); - collector.logStepPass("getPlatONOrigin函数返回值:" + originaddr); - collector.assertEqual(originaddr, walletAddress.toLowerCase()); - - - } catch (Exception e) { - collector.logStepFail("OriginFunctionTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/PagingQueryTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/PagingQueryTest.java deleted file mode 100644 index b0a7885d52..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/PagingQueryTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package network.platon.test.wasm.function; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.PagingQuery; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; - -/** - * vector分页查询 - * @create: 2020/02/20 - * @author liweic - */ - -public class PagingQueryTest extends WASMContractPrepareTest { - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.PagingQuery验证vector分页查询",sourcePrefix = "wasm") - public void test() { - - try { - prepare(); - PagingQuery pagingquery = PagingQuery.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = pagingquery.getContractAddress(); - String transactionHash = pagingquery.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("PagingQuery issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("PagingQuery deploy gasUsed:" + pagingquery.getTransactionReceipt().get().getGasUsed()); - - TransactionReceipt str1 = pagingquery.insertVectorValue("a").send(); - collector.logStepPass("插入字符串a的交易Hash:" + str1.getTransactionHash()); - TransactionReceipt str2 = pagingquery.insertVectorValue("b").send(); - collector.logStepPass("插入字符串b的交易Hash:" + str2.getTransactionHash()); - TransactionReceipt str3 = pagingquery.insertVectorValue("c").send(); - collector.logStepPass("插入字符串c的交易Hash:" + str3.getTransactionHash()); - TransactionReceipt str4 = pagingquery.insertVectorValue("d").send(); - collector.logStepPass("插入字符串d的交易Hash:" + str4.getTransactionHash()); - TransactionReceipt str5 = pagingquery.insertVectorValue("e").send(); - collector.logStepPass("插入字符串e的交易Hash:" + str5.getTransactionHash()); - - Uint64 vecsize = pagingquery.getVectorSize().send(); - collector.logStepPass("vector长度:" + vecsize.value); - collector.assertEqual(vecsize.value, new BigInteger("5")); - - String result = pagingquery.getPagingQuery(Uint64.of("2"), Uint64.of("3")).send(); - collector.logStepPass("PagingQuery结果为:" + result); - collector.assertEqual(result, "{\"PageTotal\":2,\"Data\":[d,e]}"); - - } catch (Exception e) { - collector.logStepFail("Pagingquery failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/Sha3FunctionTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/Sha3FunctionTest.java deleted file mode 100644 index 62c04af338..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/Sha3FunctionTest.java +++ /dev/null @@ -1,47 +0,0 @@ -package network.platon.test.wasm.function; - -import com.alaya.rlp.wasm.datatypes.Uint32; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.Sha3Function; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; - - -/** - * - * @title 验证函数platon_sha3 - * @description: - * @author: liweic - * @create: 2020/02/11 - */ -public class Sha3FunctionTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.Sha3FunctionTest验证链上函数platon_sha3",sourcePrefix = "wasm") - public void Sha3function() { - - try { - prepare(); - Sha3Function shafunction = Sha3Function.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = shafunction.getContractAddress(); - String transactionHash = shafunction.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("CallerFunctionTest issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("CallerFunctionTest deploy gasUsed:" + shafunction.getTransactionReceipt().get().getGasUsed()); - - Uint32 sha3 = shafunction.Sha3Result().send(); - collector.logStepPass("sha3函数返回值:" + sha3.value); - collector.assertEqual(sha3.value, new BigInteger("114259850")); - - - } catch (Exception e) { - collector.logStepFail("Sha3FunctionTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/SpecialFunctionsATest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/SpecialFunctionsATest.java deleted file mode 100644 index eb8007bedc..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/SpecialFunctionsATest.java +++ /dev/null @@ -1,56 +0,0 @@ -package network.platon.test.wasm.function; - -import com.alaya.rlp.wasm.datatypes.Int64; -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.SpecialFunctionsA; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.text.SimpleDateFormat; -import java.util.Date; - -/** - * - * @title 验证函数platon_block_number,platon_timestamp - * @description: - * @author: liweic - * @create: 2020/02/10 - */ -public class SpecialFunctionsATest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.SpecialFunctionsA验证链上区块相关函数",sourcePrefix = "wasm") - public void SpecialfunctionsA() { - - try { - prepare(); - SpecialFunctionsA specialfunctionsa = SpecialFunctionsA.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = specialfunctionsa.getContractAddress(); - String transactionHash = specialfunctionsa.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SpecialFunctionsATest issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("SpecialFunctionsATest deploy gassUsed:" + specialfunctionsa.getTransactionReceipt().get().getGasUsed()); - - Uint64 blocknumber =specialfunctionsa.getBlockNumber().send(); - collector.logStepPass("getPlatONGas函数返回值:" + blocknumber.value); - boolean result = "0".toString().equals(blocknumber.value.toString()); - collector.assertEqual(result, false); - - //bug - Int64 timestamp = specialfunctionsa.getTimestamp().send(); - collector.logStepPass("block.timestamp函数返回值:" + timestamp.value); - SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); - String resultTime = sdf.format(new Date(Long.parseLong(String.valueOf(timestamp)))); - System.out.print("时间:" + resultTime); - String today = sdf.format(new Date()); - collector.assertEqual(resultTime,today); - - - } catch (Exception e) { - collector.logStepFail("SpecialFunctionsBTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/SpecialFunctionsBTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/SpecialFunctionsBTest.java deleted file mode 100644 index bd01e141de..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/function/SpecialFunctionsBTest.java +++ /dev/null @@ -1,56 +0,0 @@ -package network.platon.test.wasm.function; - -import com.alaya.rlp.wasm.datatypes.Uint64; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.SpecialFunctionsB; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; - -/** - * - * @title 验证函数platon_gas,platon_gas_limit,platon_gas_price - * @description: - * @author: liweic - * @create: 2020/02/07 - */ -public class SpecialFunctionsBTest extends WASMContractPrepareTest { - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "liweic", showName = "wasm.SpecialFunctionsB验证gas相关函数",sourcePrefix = "wasm") - public void SpecialfunctionsB() { - - try { - prepare(); -// provider = new ContractGasProvider(BigInteger.valueOf(50000000004L), BigInteger.valueOf(90000000L)); - SpecialFunctionsB specialfunctionsb = SpecialFunctionsB.deploy(web3j, transactionManager, provider, chainId).send(); - String contractAddress = specialfunctionsb.getContractAddress(); - String transactionHash = specialfunctionsb.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("SpecialFunctionsBTest issued successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("SpecialFunctionsBTest deploy gasUsed:" + specialfunctionsb.getTransactionReceipt().get().getGasUsed()); - - Uint64 gas =specialfunctionsb.getPlatONGas().send(); - collector.logStepPass("getPlatONGas函数返回值:" + gas.value); - boolean result = "0".toString().equals(gas.value.toString()); - collector.assertEqual(result, false); - - Uint64 gaslimit = specialfunctionsb.getPlatONGasLimit().send(); - collector.logStepPass("getPlatONGasLimit函数返回值:" + gaslimit.value); - int compareresult = gaslimit.value.compareTo(new BigInteger("4712388")); - boolean resulta = compareresult >= 0; - collector.assertEqual(resulta, true); - - String gasprice = specialfunctionsb.getPlatONGasPrice().send(); - collector.logStepPass("getPlatONGasPrice函数返回值:" + gasprice); - boolean resultb = "0".toString().equals(gasprice.toString()); - collector.assertEqual(resultb, true); - - } catch (Exception e) { - collector.logStepFail("SpecialFunctionsBTest failure,exception msg:" , e.getMessage()); - e.printStackTrace(); - } - } -} - diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/gas/GasPriceTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/gas/GasPriceTest.java deleted file mode 100644 index f1550ff9bc..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/gas/GasPriceTest.java +++ /dev/null @@ -1,496 +0,0 @@ -package network.platon.test.wasm.gas; - -import com.alaya.protocol.core.methods.response.TransactionReceipt; -import com.alaya.rlp.solidity.RlpEncoder; -import com.alaya.rlp.solidity.RlpList; -import com.alaya.rlp.solidity.RlpString; -import com.alaya.rlp.solidity.RlpType; -import com.alaya.rlp.wasm.datatypes.*; -import com.alaya.utils.Numeric; -import com.alibaba.fastjson.JSONObject; -import network.platon.autotest.junit.annotations.DataSource; -import network.platon.autotest.junit.enums.DataSourceType; -import network.platon.contracts.wasm.*; -import network.platon.utils.DataChangeUtil; -import org.apache.commons.lang3.RandomStringUtils; -import org.junit.Test; -import network.platon.test.wasm.beforetest.WASMContractPrepareTest; - -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; - -/** - * @title GasTest - * @description Gas测试 - * @author qcxiao - */ -public class GasPriceTest extends WASMContractPrepareTest { - - private static final String GASMAPSTR = "{\"platonGasPrice\": 2, \"platonBlockHash\": 20, \"platonBlockNumber\": 2," + - " \"platonGasLimit\": 2, \"platonGas\": 2, \"platonTimestamp\": 2, \"platonCoinbase\": 2, " + - "\"platonBalance\": 400, \"platonOrigin\": 2, \"platonCaller\": 2, \"platonCallValue\": 2, " + - "\"platonAddress\": 2, \"platonSha3\": 150, \"platonCallerNonce\": 2, \"platonTransfer\": 7444, " + - "\"platonGetStateLength\": 200, \"platonGetState\": 200, \"platonGetInputLength\": 2, " + - "\"platonGetInput\": 2, \"platonGetCallOutputLength\": 2, \"platonGetCallOutput\": 2, \"platonReturn\": 302, " + - "\"platonRevert\": 0, \"platonPanic\": 0, \"platonDebug\": 310, \"platonCall\": 17429, \"platonDelegateCall\": 17410," + - " \"platonDestory\": 1293, \"platonMigrate\": 153200, \"platonMigrateClone\": 1293, \"platonEvent\": 1293," + - "\"platonEcrecover\": 3000, \"platonRipemd160\": 840, \"platonSha256\": 84, \"platonRlpU128Size\": 2, " + - "\"platonRlpU128\": 17, \"platonRlpBytesSize\": 2, \"platonRlpBytes\": 35," + - " \"platonRlpListSize\": 2, \"platonRlpList\": 35, \"platonContractCodeLength\": 200, " + - "\"platonContractCode\": 200, \"platonDeploy\": 110000, \"platonClone\": 110000}"; - private static final JSONObject GASMAP = JSONObject.parseObject(GASMAPSTR); - private BigInteger getGasValue(TransactionReceipt transactionReceipt, GasPrice gasPrice, String method){ - collector.logStepPass("transactionReceipt: " + JSONObject.toJSONString(transactionReceipt)); - List eventList = gasPrice.getGasUsedEvents(transactionReceipt); - collector.logStepPass("eventList: " + JSONObject.toJSONString(eventList)); - - //topic encoding - byte[] realFunctionNameBytes = new byte[32]; - byte[] functionNameBytes = method.getBytes(); - int len = functionNameBytes.length; - if(len < 32){ - for(int i=len-1,j=31;i>=0;i--,j--){ - realFunctionNameBytes[j] = functionNameBytes[i]; - } - }else{ - System.arraycopy(functionNameBytes, 0, realFunctionNameBytes, 0, 32); - } - - //filter topic - String topicFuncName = Numeric.toHexString(realFunctionNameBytes); - for(GasPrice.GasUsedEventResponse event:eventList){ - if(event.topic.equals(topicFuncName)){ - return event.arg1.value; - } - } - return BigInteger.ZERO; - } - - private void checkGas(BigInteger gasValue, String method){ - collector.logStepPass("gas of " + method + ": " + gasValue); - collector.assertTrue((Math.abs(GASMAP.getIntValue(method) - gasValue.intValue())) < 100); - } - - @Test - @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", - author = "qcxiao", showName = "wasm.GasTest",sourcePrefix = "wasm") - public void test() { - - try { - prepare(); - GasPrice gasPrice = GasPrice.deploy(web3j, transactionManager, provider,chainId).send(); - String contractAddress = gasPrice.getContractAddress(); - String transactionHash = gasPrice.getTransactionReceipt().get().getTransactionHash(); - collector.logStepPass("GasPrice deploy successfully.contractAddress:" + contractAddress + ", hash:" + transactionHash); - collector.logStepPass("deploy gas used:" + gasPrice.getTransactionReceipt().get().getGasUsed()); - - gasPrice = GasPrice.load(contractAddress, web3j, transactionManager, provider,chainId); - - TransactionReceipt transactionReceipt; - BigInteger gas; - switch (Integer.valueOf(driverService.param.get("seq"))){ - case 1:{ - //查询当前交易的 gas price - transactionReceipt = gasPrice.platonGasPrice().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_gas_price"); - this.checkGas(gas, "platonGasPrice"); - break; - } - case 2:{ - //根据blockNumber查询blockHash - BigInteger currentBlockNumber = web3j.platonBlockNumber().send().getBlockNumber(); -// transactionReceipt = gasPrice.platonBlockHash(Int64.of(BigInteger.TEN)).send(); - transactionReceipt = gasPrice.platonBlockHash(Int64.of(currentBlockNumber)).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_block_hash"); - this.checkGas(gas, "platonBlockHash"); - break; - } - case 3:{ - //查询当前blockNumber - transactionReceipt = gasPrice.platonBlockNumber().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_block_number"); - this.checkGas(gas, "platonBlockNumber"); - break; - } - case 4:{ - //查询当前tx的gasLimit - transactionReceipt = gasPrice.platonGasLimit().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_gas_limit"); - this.checkGas(gas, "platonGasLimit"); - break; - } - case 5:{ - //查询当前tx的gas - transactionReceipt = gasPrice.platonGas().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_gas"); - this.checkGas(gas, "platonGas"); - break; - } - case 6:{ - //查询当前block的时间戳 - transactionReceipt = gasPrice.platonTimestamp().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_timestamp"); - this.checkGas(gas, "platonTimestamp"); - break; - } - case 7:{ - //查询当前block的coinbase - transactionReceipt = gasPrice.platonCoinbase().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_coinbase"); - this.checkGas(gas, "platonCoinbase"); - break; - } - case 8:{ - //根据addr查询addr的余额 - Uint8[] addr = new Uint8[20]; - transactionReceipt = gasPrice.platonBalance(addr).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_balance"); - this.checkGas(gas, "platonBalance"); - break; - } - case 9:{ - //查询tx非原始发送者 - transactionReceipt = gasPrice.platonOrigin().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_origin"); - this.checkGas(gas, "platonOrigin"); - break; - } - case 10:{ - //查询合约的上一级调用者账户地址 - transactionReceipt = gasPrice.platonCaller().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_caller"); - this.checkGas(gas, "platonCaller"); - break; - } - case 11:{ - //查询合约上一级调用者的余额 - transactionReceipt = gasPrice.platonCallValue().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_call_value"); - this.checkGas(gas, "platonCallValue"); - break; - } - case 12:{ - //查询当前合约的地址 - transactionReceipt = gasPrice.platonAddress().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_address"); - this.checkGas(gas, "platonAddress"); - break; - } - case 13:{ - //对输入的内容做 sha3 - transactionReceipt = gasPrice.platonSha3("helloworldworldhello".getBytes()).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_sha3"); - this.checkGas(gas, "platonSha3"); - break; - } - case 14:{ - //查询当前合约的调用方账户的nonce - transactionReceipt = gasPrice.platonCallerNonce().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_caller_nonce"); - this.checkGas(gas, "platonCallerNonce"); - break; - } - case 15:{ - //转账 (金额转移) - Uint8[] addr = new Uint8[20]; - transactionReceipt = gasPrice.platonTransfer(addr).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_transfer"); - this.checkGas(gas, "platonTransfer"); - break; - } - case 16:{ - //存储单个账户的store (调用SetState()), 新增数据 - String key = RandomStringUtils.randomAlphanumeric(20); - String value = RandomStringUtils.randomAlphanumeric(20); - transactionReceipt = gasPrice.platonSetState(key.getBytes(), value.getBytes()).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_set_state"); - collector.logStepPass("gas of platonSetState: " + gas); - collector.assertTrue((Math.abs(40000 - gas.intValue())) < 100); - - //存储单个账户的store (调用SetState()), 修改数据 - value = RandomStringUtils.randomAlphanumeric(20); - transactionReceipt = gasPrice.platonSetState(key.getBytes(), value.getBytes()).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_set_state"); - collector.logStepPass("gas of platonSetState: " + gas); - collector.assertTrue((Math.abs(5000 - gas.intValue())) < 100); - - //存储单个账户的store (调用SetState()), 删除数据 - value = ""; - transactionReceipt = gasPrice.platonSetState(key.getBytes(), value.getBytes()).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_set_state"); - collector.logStepPass("gas of platonSetState: " + gas); - collector.assertTrue((Math.abs(10000 - gas.intValue())) < 100); - break; - } - case 17:{ - //根据key获取 store 中value 的长度 - transactionReceipt = gasPrice.platonGetStateLength("helloworldworldhello".getBytes()).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_get_state_length"); - this.checkGas(gas, "platonGetStateLength"); - break; - } - case 18:{ - //获取单个账户的store (调用GetState()) - transactionReceipt = gasPrice.platonGetState("helloworldworldhello".getBytes(), Uint32.of(10)).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_get_state"); - this.checkGas(gas, "platonGetState"); - break; - } - case 19:{ - //获取输入参数长度 - transactionReceipt = gasPrice.platonGetInputLength().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_get_input_length"); - this.checkGas(gas, "platonGetInputLength"); - break; - } - case 20:{ - //获取输入参数 - transactionReceipt = gasPrice.platonGetInput().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_get_input"); - this.checkGas(gas, "platonGetInput"); - break; - } - case 21:{ - //获取 跨合约调用返回 output数据长度 - transactionReceipt = gasPrice.platonGetCallOutputLength().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_get_call_output_length"); - this.checkGas(gas, "platonGetCallOutputLength"); - break; - } - case 22:{ - //获取 跨合约调用返回 output数据 - transactionReceipt = gasPrice.platonGetCallOutput().send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_get_call_output"); - this.checkGas(gas, "platonGetCallOutput"); - break; - } - case 23:{ - //获取当前合约返回值 - transactionReceipt = gasPrice.platonReturn(Uint32.of(100)).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_return"); - this.checkGas(gas, "platonReturn"); - break; - } - case 24:{ - //合约终止指令 - try{ - transactionReceipt = gasPrice.platonRevert().send(); - collector.logStepFail("合约终止调用需要报错", "合约终止调用未报错"); - }catch (Exception e){ - - } - break; - } - case 25:{ - //合约异常恐慌中断指令 - try{ - transactionReceipt = gasPrice.platonPanic().send(); - collector.logStepFail("合约中断调用需要报错", "合约中断调用未报错"); - }catch (Exception e){ - - } - break; - } - case 26:{ - //打印合约调试信息 - transactionReceipt = gasPrice.platonDebug(Uint32.of(100)).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_debug"); - this.checkGas(gas, "platonDebug"); - break; - } - case 27:{ - //跨合约普通调用 - GasPrice newGasPrice = GasPrice.deploy(web3j, transactionManager, provider,chainId).send(); - WasmAddress wasmAddress = new WasmAddress(newGasPrice.getContractAddress()); - - transactionReceipt = gasPrice.platonCall(wasmAddress, "platonTimestamp").send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_call"); - collector.logStepPass("gas of platonCall: " + gas); - collector.assertTrue((Math.abs(GASMAP.getIntValue("platonCall") - gas.intValue())) < 10000); - break; - } - case 28:{ - //跨合约代理调用 - GasPrice newGasPrice = GasPrice.deploy(web3j, transactionManager, provider,chainId).send(); - WasmAddress wasmAddress = new WasmAddress(newGasPrice.getContractAddress()); - - transactionReceipt = gasPrice.platonDelegateCall(wasmAddress, "platonTimestamp").send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_delegate_call"); - collector.logStepPass("gas of platonDelegateCall: " + gas); - collector.assertTrue((Math.abs(GASMAP.getIntValue("platonDelegateCall") - gas.intValue())) < 10000); - break; - } - case 29:{ - //合约销毁,地址使用过 - WasmAddress wasmAddress = new WasmAddress(gasPrice.getContractAddress()); - gasPrice.platonBlockNumber(); - transactionReceipt = gasPrice.platonDestory(wasmAddress).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_destroy"); - collector.logStepPass("gas of platonDestory: " + gas); - collector.assertTrue((Math.abs(5000 - gas.intValue())) < 100); - - //合约销毁,地址未使用过 - gasPrice = GasPrice.deploy(web3j, transactionManager, provider,chainId).send(); -// wasmAddress = new WasmAddress("lax1uqug0zq7rcxddndleq4ux2ft3tv6dqljphydrl"); - wasmAddress = new WasmAddress("atx1uqug0zq7rcxddndleq4ux2ft3tv6dqljazusp4"); - transactionReceipt = gasPrice.platonDestory(wasmAddress).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_destroy"); - collector.logStepPass("gas of platonDestory: " + gas); - collector.assertTrue((Math.abs(5000 - gas.intValue())) < 100); - break; - } - case 30:{ - //合约迁移 - GasPrice newGasPrice = GasPrice.deploy(web3j, transactionManager, provider,chainId).send(); - WasmAddress wasmAddress = new WasmAddress(newGasPrice.getContractAddress()); - - transactionReceipt = gasPrice.platonMigrate(wasmAddress).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_migrate"); - collector.logStepPass("gas of platonMigrate: " + gas); - collector.assertTrue((Math.abs(153200 - gas.intValue())) < 10000); - break; - } - case 31:{ - //合约克隆迁移 - GasPrice newGasPrice = GasPrice.deploy(web3j, transactionManager, provider,chainId).send(); - WasmAddress wasmAddress = new WasmAddress(newGasPrice.getContractAddress()); - - transactionReceipt = gasPrice.platonMigrateClone(wasmAddress).send(); - gas = this.getGasValue(transactionReceipt, gasPrice, "platon_clone_migrate"); - collector.logStepPass("gas of platonMigrateClone: " + gas); - collector.assertTrue((Math.abs(153200 - gas.intValue())) < 10000); - break; - } - case 32:{ - //合约事件 - RlpString rlpString = RlpString.create(RandomStringUtils.randomAlphanumeric(20).getBytes()); - byte[] topic = RlpEncoder.encode(rlpString); - List args = Arrays.asList("hello", "world"); - RlpType[] values = new RlpType[args.size()]; - for(int i=0;i { -// try { -// semaphore.acquire(); -// credentials = Credentials.create(jsonArray.getJSONObject(finalI + 1000).getString("private_key")); -// transactionManager = new RawTransactionManager(web3j, credentials, chainId); -// -// SolSimulation solSimulation = SolSimulation.deploy(web3j, transactionManager, provider,chainId, Uint32.of(32), Uint32.of(0)).send(); -// String contractAddress = solSimulation.getContractAddress(); -// String transactionHash = solSimulation.getTransactionReceipt().get().getTransactionHash(); -// collector.logStepPass("deploy successfully.contractAddress:" + contractAddress -// + ", hash:" + transactionHash -// + ", gasUsed:" + solSimulation.getTransactionReceipt().get().getGasUsed()); -// -// TransactionReceipt transactionReceiptAction = SolSimulation.load(contractAddress, web3j, transactionManager, provider,chainId).action().send(); -// -// TransactionReceipt transactionReceipt = SolSimulation.load(contractAddress, web3j, transactionManager, provider,chainId).debug().send(); -// -// collector.logStepPass("action and debug are gas used: " + transactionReceiptAction.getGasUsed() + "," + transactionReceipt.getGasUsed()); -// -// semaphore.release(); -// } catch (Exception e) { -// e.printStackTrace(); -// collector.logStepFail("call fail.", e.toString()); -// } -// countDownLatch.countDown(); -// }); -// } -// countDownLatch.await(); -// executorService.shutdown(); -// } catch (Exception e) { -// e.printStackTrace(); -// collector.logStepFail("", e.getMessage()); -// } -// } -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/storage/Wasm1StorageTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/storage/Wasm1StorageTest.java deleted file mode 100644 index a025477c30..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/storage/Wasm1StorageTest.java +++ /dev/null @@ -1,62 +0,0 @@ -//package network.platon.test.wasm.storage; -// -//import com.alibaba.fastjson.JSONArray; -//import com.platon.rlp.network.platon.test.datatypes.Uint32; -//import network.platon.test.evm.beforetest.ContractPrepareTest; -//import network.platon.autotest.junit.annotations.DataSource; -//import network.platon.autotest.junit.enums.DataSourceType; -//import network.platon.autotest.utils.FileUtil; -//import network.platon.contracts.evm.SimpleStorage; -//import network.platon.contracts.wasm.SolSimulation; -//import network.platon.contracts.wasm.WasmStorage; -//import network.platon.utils.DataChangeUtil; -//import network.platon.utils.OneselfFileUtil; -//import org.junit.Test; -//import org.web3j.crypto.Credentials; -//import org.web3j.protocol.Web3j; -//import org.web3j.protocol.core.methods.response.TransactionReceipt; -//import org.web3j.protocol.http.HttpService; -//import org.web3j.tx.RawTransactionManager; -//import org.web3j.tx.gas.ContractGasProvider; -// -//import java.math.BigInteger; -//import java.nio.file.Paths; -//import java.util.concurrent.CountDownLatch; -//import java.util.concurrent.ExecutorService; -//import java.util.concurrent.Executors; -//import java.util.concurrent.Semaphore; -// -///** -// * @title WasmStorageTest -// * @description 验证存储 -// * @author qcxiao -// * @updateTime 2020/3/19 20:39 -// */ -//public class Wasm1StorageTest extends ContractPrepareTest { -// @Test -// @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", -// author = "qcxiao", showName = "wasm.storage.WasmStorageTest", sourcePrefix = "wasm") -// public void test() { -// -// try { -// prepare(); -// WasmStorage wasmStorage1 = WasmStorage.deploy(web3j, transactionManager, provider,chainId).send(); -// String contractAddress1 = wasmStorage1.getContractAddress(); -// String transactionHash1 = wasmStorage1.getTransactionReceipt().get().getTransactionHash(); -// collector.logStepPass("deploy successfully.contractAddress1:" + contractAddress1 -// + ", deployTxHash1:" + transactionHash1 -// + ", gasUsed1:" + wasmStorage1.getTransactionReceipt().get().getGasUsed()); -// -// WasmStorage wasmStorage2 = WasmStorage.deploy(web3j, transactionManager, provider,chainId).send(); -// String contractAddress2 = wasmStorage2.getContractAddress(); -// String transactionHash2 = wasmStorage2.getTransactionReceipt().get().getTransactionHash(); -// collector.logStepPass("deploy successfully.contractAddress2:" + contractAddress2 -// + ", deployTxHash2:" + transactionHash2 -// + ", gasUsed2:" + wasmStorage2.getTransactionReceipt().get().getGasUsed()); -// -// } catch (Exception e) { -// e.printStackTrace(); -// collector.logStepFail("", e.getMessage()); -// } -// } -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/storage/Wasm2StorageTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/storage/Wasm2StorageTest.java deleted file mode 100644 index 5471d12f7f..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/storage/Wasm2StorageTest.java +++ /dev/null @@ -1,128 +0,0 @@ -//package network.platon.test.wasm.storage; -// -//import com.alibaba.fastjson.JSONArray; -//import network.platon.test.evm.beforetest.ContractPrepareTest; -//import network.platon.autotest.junit.annotations.DataSource; -//import network.platon.autotest.junit.enums.DataSourceType; -//import network.platon.autotest.utils.FileUtil; -//import network.platon.contracts.wasm.WasmStorage; -//import network.platon.utils.OneselfFileUtil; -//import org.junit.Test; -//import org.web3j.crypto.Credentials; -//import org.web3j.protocol.Web3j; -//import org.web3j.protocol.core.DefaultBlockParameterName; -//import org.web3j.protocol.core.methods.response.TransactionReceipt; -//import org.web3j.protocol.http.HttpService; -//import org.web3j.tx.RawTransactionManager; -//import org.web3j.tx.gas.ContractGasProvider; -// -//import java.io.IOException; -//import java.math.BigInteger; -//import java.nio.file.Paths; -//import java.util.concurrent.CountDownLatch; -//import java.util.concurrent.ExecutorService; -//import java.util.concurrent.Executors; -//import java.util.concurrent.Semaphore; -// -///** -// * @title WasmStorageTest -// * @description 验证存储 -// * @author qcxiao -// * @updateTime 2020/3/19 20:39 -// */ -//public class Wasm2StorageTest extends ContractPrepareTest { -// @Test -// @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", -// author = "qcxiao", showName = "wasm.storage.WasmStorageTest", sourcePrefix = "wasm") -// public void test() { -// -// try { -// String contractAddress2 = "lax1keq09ca6esdzfs3q2m2sls6l5n5rwz4e5xstw8"; -// -// chainId = Integer.valueOf(driverService.param.get("chainId")); -// web3j = Web3j.build(new HttpService(driverService.param.get("nodeUrl"))); -// provider = new ContractGasProvider(new BigInteger("6000000000"), new BigInteger(gasLimit)); -// -// // addr:lax10zgfmzecyevthcc80jcrxx6m954qhxj5fz9ful,private_key:7a6ffe562fcb8644510d92e42a11ada2f7ec64a0cad3b4f6ec543a76dc88eefb -//// credentials = Credentials.create("7a6ffe562fcb8644510d92e42a11ada2f7ec64a0cad3b4f6ec543a76dc88eefb"); -//// transactionManager = new RawTransactionManager(web3j, credentials, chainId); -//// BigInteger endBalance1 = web3j.platonGetBalance("lax10zgfmzecyevthcc80jcrxx6m954qhxj5fz9ful", DefaultBlockParameterName.LATEST).send().getBalance(); -//// collector.logStepPass("transferTo:lax10zgfmzecyevthcc80jcrxx6m954qhxj5fz9ful,endBalance:" + endBalance1); -//// TransactionReceipt transactionReceipt1 = WasmStorage.load(contractAddress2, web3j, transactionManager, provider, chainId).random_data().send(); -//// collector.logStepPass("transactionHash: " + transactionReceipt1.getTransactionHash()); -//// collector.logStepPass("gasuse: " + transactionReceipt1.getGasUsed()); -//// WasmStorage.load(contractAddress2, web3j, transactionManager, provider, chainId).debug().send(); -// -// -// String filePath = FileUtil.pathOptimization(Paths.get("src", "test", "resources", "lax_bech32_all_addr_and_private_keys.json").toUri().getPath()); -// String jsonContent = OneselfFileUtil.readFile(filePath); -// JSONArray jsonArray = JSONArray.parseArray(jsonContent); -// ExecutorService executorService = Executors.newCachedThreadPool(); -// // 同时并发执行的线程数 -// final Semaphore semaphore = new Semaphore(30); -// // 请求总数 -// CountDownLatch countDownLatch = new CountDownLatch(jsonArray.size() * 1); -// -//// credentials = Credentials.create(driverService.param.get("privateKey")); -//// transactionManager = new RawTransactionManager(web3j, credentials, chainId); -//// BigInteger endBalance = web3j.platonGetBalance(driverService.param.get("address"), DefaultBlockParameterName.LATEST).send().getBalance(); -//// collector.logStepPass("transferTo:" + driverService.param.get("address") + ",endBalance:" + endBalance); -//// TransactionReceipt transactionReceipt1 = WasmStorage.load(contractAddress2, web3j, transactionManager, provider,chainId).random_data().send(); -//// collector.logStepPass("transactionHash: " + transactionReceipt1.getTransactionHash()); -// -//// credentials = Credentials.create(jsonArray.getJSONObject(0).getString("private_key")); -//// transactionManager = new RawTransactionManager(web3j, credentials, chainId); -//// BigInteger endBalance = web3j.platonGetBalance(jsonArray.getJSONObject(0).getString("address"), DefaultBlockParameterName.LATEST).send().getBalance(); -//// collector.logStepPass("transferTo:" + jsonArray.getJSONObject(0).getString("address") + ",endBalance:" + endBalance); -//// TransactionReceipt transactionReceipt1 = WasmStorage.load(contractAddress2, web3j, transactionManager, provider, chainId).random_data().send(); -//// collector.logStepPass("transactionHash: " + transactionReceipt1.getTransactionHash()); -//// collector.logStepPass("gasuse: " + transactionReceipt1.getGasUsed()); -//// WasmStorage.load(contractAddress2, web3j, transactionManager, provider, chainId).debug().send(); -// -// -// -// -// for (int j = 0; j < 1; j++) { -// int finalJ = j; -// for (int i = 0; i < jsonArray.size(); i++) { -// int finalI = i; -// executorService.execute(() -> { -// try { -// semaphore.acquire(); -// credentials = Credentials.create(jsonArray.getJSONObject(finalI).getString("private_key")); -// -// transactionManager = new RawTransactionManager(web3j, credentials, chainId); -// -// TransactionReceipt transactionReceipt = WasmStorage.load(contractAddress2, web3j, transactionManager, provider,chainId).random_data().send(); -// collector.logStepPass("transactionHash: " + transactionReceipt.getTransactionHash() + ",gasUsed:" + transactionReceipt.getGasUsed() + -// ",this time: " + finalI + ", j: " + finalJ); -// //WasmStorage.load(contractAddress2, web3j, transactionManager, provider, chainId).debug().send(); -// } catch (Exception e) { -// String address = jsonArray.getJSONObject(finalI).getString("address"); -// BigInteger endBalance = null; -// try { -// endBalance = web3j.platonGetBalance(address, DefaultBlockParameterName.LATEST).send().getBalance(); -// } catch (IOException ex) { -// ex.printStackTrace(); -// } -// collector.logStepFail("call fail. this time: " + finalI + ", j: " + finalJ + -// ", addr:" + address + ",endBalance:" + endBalance, e.toString()); -// } finally { -// semaphore.release(); -// countDownLatch.countDown(); -// } -// }); -// } -// } -// -// -// -// countDownLatch.await(); -// executorService.shutdown(); -// -// } catch (Exception e) { -// e.printStackTrace(); -// collector.logStepFail("", e.getMessage()); -// } -// } -//} diff --git a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/storage/Wasm3StorageTest.java b/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/storage/Wasm3StorageTest.java deleted file mode 100644 index 7b9e77c10b..0000000000 --- a/cases/ContractsAutoTests/src/test/java/network/platon/test/wasm/storage/Wasm3StorageTest.java +++ /dev/null @@ -1,46 +0,0 @@ -//package network.platon.test.wasm.storage; -// -//import network.platon.test.evm.beforetest.ContractPrepareTest; -//import network.platon.autotest.junit.annotations.DataSource; -//import network.platon.autotest.junit.enums.DataSourceType; -//import network.platon.contracts.wasm.WasmStorage; -//import org.junit.Test; -// -///** -// * @title WasmStorageTest -// * @description 验证存储 -// * @author qcxiao -// * @updateTime 2020/3/19 20:39 -// */ -//public class Wasm3StorageTest extends ContractPrepareTest { -// @Test -// @DataSource(type = DataSourceType.EXCEL, file = "test.xls", sheetName = "Sheet1", -// author = "qcxiao", showName = "wasm.storage.WasmStorageTest", sourcePrefix = "wasm") -// public void test() { -// -// try { -// prepare(); -// String contractAddress1 = "lax1hahqha2mmujx0wktwh3t37s956hxxk5574m2c4"; -// WasmStorage wasmStorage3 = WasmStorage.deploy(web3j, transactionManager, provider,chainId).send(); -// String contractAddress3 = wasmStorage3.getContractAddress(); -// String transactionHash3 = wasmStorage3.getTransactionReceipt().get().getTransactionHash(); -// -// collector.logStepPass("deploy successfully.contractAddress3:" + contractAddress3 -// + ", deployTxHash3:" + transactionHash3 -// + ", gasUsed3:" + wasmStorage3.getTransactionReceipt().get().getGasUsed()); -// -// for (int i = 0; i < 11; i++) { -// WasmStorage.load(contractAddress3, web3j, transactionManager, provider,chainId).action().send(); -// WasmStorage.load(contractAddress3, web3j, transactionManager, provider,chainId).debug().send(); -// } -// -// for (int i = 0; i < 11; i++) { -// WasmStorage.load(contractAddress1, web3j, transactionManager, provider,chainId).action().send(); -// WasmStorage.load(contractAddress1, web3j, transactionManager, provider,chainId).debug().send(); -// } -// } catch (Exception e) { -// e.printStackTrace(); -// collector.logStepFail("", e.getMessage()); -// } -// } -//} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/1.ERC20_transfer/HumanStandardToken.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/1.ERC20_transfer/HumanStandardToken.sol deleted file mode 100644 index e0c86400fb..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/1.ERC20_transfer/HumanStandardToken.sol +++ /dev/null @@ -1,62 +0,0 @@ -pragma solidity ^0.4.26; - -/* -This Token Contract implements the standard token functionality (https://github.com/ethereum/EIPs/issues/20) as well as the following OPTIONAL extras intended for use by humans. - -In other words. This is intended for deployment in something like a Token Factory or Mist wallet, and then used by humans. -Imagine coins, currencies, shares, voting weight, etc. -Machine-based, rapid creation of many tokens would not necessarily need these extra features or will be minted in other manners. - -1) Initial Finite Supply (upon creation one specifies how much is minted). -2) In the absence of a token registry: Optional Decimal, Symbol & Name. -3) Optional approveAndCall() functionality to notify a contract if an approval() has occurred. - -.*/ - -import "./StandardToken.sol"; - -contract HumanStandardToken is StandardToken { - - function () public { - //if ether is sent to this address, send it back. - revert(); - } - - /* Public variables of the token */ - - /* - NOTE: - The following variables are OPTIONAL vanities. One does not have to include them. - They allow one to customise the token contract & in no way influences the core functionality. - Some wallets/interfaces might not even bother to look at this information. - */ - string public name; //fancy name: eg Simon Bucks - uint8 public decimals; //How many decimals to show. ie. There could 1000 base units with 3 decimals. Meaning 0.980 SBX = 980 base units. It's like comparing 1 wei to 1 ether. - string public symbol; //An identifier: eg SBX - string public version = 'H0.1'; //human 0.1 standard. Just an arbitrary versioning scheme. - - constructor( - uint256 _initialAmount, - string _tokenName, - uint8 _decimalUnits, - string _tokenSymbol - ) public { - balances[msg.sender] = _initialAmount; // Give the creator all initial tokens - totalSupply = _initialAmount; // Update total supply - name = _tokenName; // Set the name for display purposes - decimals = _decimalUnits; // Amount of decimals for display purposes - symbol = _tokenSymbol; // Set the symbol for display purposes - } - - /* Approves and then calls the receiving contract */ - function approveAndCall(address _spender, uint256 _value, bytes _extraData) public returns (bool success) { - allowed[msg.sender][_spender] = _value; - emit Approval(msg.sender, _spender, _value); - - //call the receiveApproval function on the contract you want to be notified. This crafts the function signature manually so one doesn't have to include a contract in here just for this. - //receiveApproval(address _from, uint256 _value, address _tokenContract, bytes _extraData) - //it is assumed that when does this that the call *should* succeed, otherwise one would use vanilla approve instead. - if(!_spender.call(bytes4(bytes32(keccak256("receiveApproval(address,uint256,address,bytes)"))), msg.sender, _value, this, _extraData)) { revert(); } - return true; - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/1.ERC20_transfer/HumanStandardTokenFactory.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/1.ERC20_transfer/HumanStandardTokenFactory.sol deleted file mode 100644 index 82532fe64c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/1.ERC20_transfer/HumanStandardTokenFactory.sol +++ /dev/null @@ -1,63 +0,0 @@ -pragma solidity ^0.4.26; - - -import "./HumanStandardToken.sol"; - -contract HumanStandardTokenFactory { - - mapping(address => address[]) public created; - mapping(address => bool) public isHumanToken; //verify without having to do a bytecode check. - bytes public humanStandardByteCode; - - constructor() public { - //upon creation of the factory, deploy a HumanStandardToken (parameters are meaningless) and store the bytecode provably. - address verifiedToken = createHumanStandardToken(10000, "Verify Token", 3, "VTX"); - humanStandardByteCode = codeAt(verifiedToken); - } - - //verifies if a contract that has been deployed is a Human Standard Token. - //NOTE: This is a very expensive function, and should only be used in an eth_call. ~800k gas - function verifyHumanStandardToken(address _tokenContract) public returns (bool) { - bytes memory fetchedTokenByteCode = codeAt(_tokenContract); - - if (fetchedTokenByteCode.length != humanStandardByteCode.length) { - return false; //clear mismatch - } - - //starting iterating through it if lengths match - for (uint i = 0; i < fetchedTokenByteCode.length; i ++) { - if (fetchedTokenByteCode[i] != humanStandardByteCode[i]) { - return false; - } - } - - return true; - } - - //for now, keeping this internal. Ideally there should also be a live version of this that any contract can use, lib-style. - //retrieves the bytecode at a specific address. - function codeAt(address _addr) public returns (bytes o_code) { - assembly { - // retrieve the size of the code, this needs assembly - let size := extcodesize(_addr) - // allocate output byte array - this could also be done without assembly - // by using o_code = new bytes(size) - o_code := mload(0x40) - // new "memory end" including padding - mstore(0x40, add(o_code, and(add(add(size, 0x20), 0x1f), not(0x1f)))) - // store length in memory - mstore(o_code, size) - // actually retrieve the code, this needs assembly - extcodecopy(_addr, add(o_code, 0x20), 0, size) - } - } - - function createHumanStandardToken(uint256 _initialAmount, string _name, uint8 _decimals, string _symbol) public returns (address) { - - HumanStandardToken newToken = (new HumanStandardToken(_initialAmount, _name, _decimals, _symbol)); - created[msg.sender].push(address(newToken)); - isHumanToken[address(newToken)] = true; - newToken.transfer(msg.sender, _initialAmount); //the factory will own the created tokens. You must transfer them. - return address(newToken); - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/1.ERC20_transfer/StandardToken.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/1.ERC20_transfer/StandardToken.sol deleted file mode 100644 index f07528ad47..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/1.ERC20_transfer/StandardToken.sol +++ /dev/null @@ -1,57 +0,0 @@ -pragma solidity ^0.4.26; - -/* -You should inherit from StandardToken or, for a token like you would want to -deploy in something like Mist, see HumanStandardToken.sol. -(This implements ONLY the standard functions and NOTHING else. -If you deploy this, you won't have anything useful.) - -Implements ERC 20 Token standard: https://github.com/ethereum/EIPs/issues/20. -*/ - -import "./Token.sol"; - -contract StandardToken is Token { - - function transfer(address _to, uint256 _value) public returns (bool success) { - //Default assumes totalSupply can't be over max (2^256 - 1). - //If your token leaves out totalSupply and can issue more tokens as time goes on, you need to check if it doesn't wrap. - //Replace the if with this one instead. - //if (balances[msg.sender] >= _value && balances[_to] + _value > balances[_to]) { - if (balances[msg.sender] >= _value && _value > 0) { - balances[msg.sender] -= _value; - balances[_to] += _value; - emit Transfer(msg.sender, _to, _value); - return true; - } else { return false; } - } - - function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) { - //same as above. Replace this line with the following if you want to protect against wrapping uints. - //if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && balances[_to] + _value > balances[_to]) { - if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && _value > 0) { - balances[_to] += _value; - balances[_from] -= _value; - allowed[_from][msg.sender] -= _value; - emit Transfer(_from, _to, _value); - return true; - } else { return false; } - } - - function balanceOf(address _owner) public view returns (uint256 balance) { - return balances[_owner]; - } - - function approve(address _spender, uint256 _value) public returns (bool success) { - allowed[msg.sender][_spender] = _value; - emit Approval(msg.sender, _spender, _value); - return true; - } - - function allowance(address _owner, address _spender) public view returns (uint256 remaining) { - return allowed[_owner][_spender]; - } - - mapping (address => uint256) balances; - mapping (address => mapping (address => uint256)) allowed; -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/1.ERC20_transfer/Token.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/1.ERC20_transfer/Token.sol deleted file mode 100644 index 0165e9bff3..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/1.ERC20_transfer/Token.sol +++ /dev/null @@ -1,49 +0,0 @@ -pragma solidity ^0.4.26; - -// Abstract contract for the full ERC 20 Token standard -// https://github.com/ethereum/EIPs/issues/20 - -contract Token { - /* This is a slight change to the ERC20 base standard. - function totalSupply() constant returns (uint256 supply); - is replaced with: - uint256 public totalSupply; - This automatically creates a getter function for the totalSupply. - This is moved to the base contract since public getter functions are not - currently recognised as an implementation of the matching abstract - function by the compiler. - */ - /// total amount of tokens - uint256 public totalSupply; - - /// @param _owner The address from which the balance will be retrieved - /// @return The balance - function balanceOf(address _owner) public constant returns (uint256 balance); - - /// @notice send `_value` token to `_to` from `msg.sender` - /// @param _to The address of the recipient - /// @param _value The amount of token to be transferred - /// @return Whether the transfer was successful or not - function transfer(address _to, uint256 _value) public returns (bool success); - - /// @notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from` - /// @param _from The address of the sender - /// @param _to The address of the recipient - /// @param _value The amount of token to be transferred - /// @return Whether the transfer was successful or not - function transferFrom(address _from, address _to, uint256 _value) public returns (bool success); - - /// @notice `msg.sender` approves `_addr` to spend `_value` tokens - /// @param _spender The address of the account able to transfer the tokens - /// @param _value The amount of wei to be approved for transfer - /// @return Whether the approval was successful or not - function approve(address _spender, uint256 _value) public returns (bool success); - - /// @param _owner The address of the account owning tokens - /// @param _spender The address of the account able to transfer the tokens - /// @return Amount of remaining tokens allowed to spent - function allowance(address _owner, address _spender) public view returns (uint256 remaining); - - event Transfer(address indexed _from, address indexed _to, uint256 _value); - event Approval(address indexed _owner, address indexed _spender, uint256 _value); -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/ERC20_0_4_12/ERC200412Token.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/ERC20_0_4_12/ERC200412Token.sol deleted file mode 100644 index a16776b53a..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/ERC20_0_4_12/ERC200412Token.sol +++ /dev/null @@ -1,230 +0,0 @@ -pragma solidity ^0.4.26; - -/** - * ERC20 0.4.12版本验证 - * - * - * @author Albedo - * @dev 2019/12/20 - **/ -interface ERC20Interface { - //1.代币的名字,如:"黑马币" - function name() constant public returns (string name); - //2.代币的简称,例如:HMB - function symbol() public constant returns (string symbol); - //3.代币的最小分割量 token使用的小数点后几位。比如如果设置为3,就是支持0.001表示 - function decimals() public constant returns (uint8 decimals); - //4.token的总量 - function totalSupply() constant returns (uint theTotalSupply); - //5.余额 返回某个地址(账户)的账户余额 - function balanceOf(address _owner) constant returns (uint balance); - /*6.转账 交易代币 从消息发送者账户中往_to账户转数量为_value的token, - 从代币合约的调用者地址上转移 _value的数量token到的地址 _to - 【注意:并且必须触发Transfer事件】*/ - function transfer(address _to, uint _value) returns (bool success); - /*7.两个地址转账 - 从账户_from中往账户_to转数量为_value的token,与approve方法配合使用 - 从地址 _from发送数量为 _value的token到地址 _to - 【注意:并且必须触发Transfer事件】 - transferFrom方法用于允许合约代理某人转移token。条件是from账户必须经过了approve。*/ - function transferFrom(address _from, address _to, uint _value) returns (bool success); - //8.批准_spender能从合约调用账户中转出数量为_value的token - function approve(address _spender, uint _value) returns (bool success); - //9.获取_spender可以从账户_owner中转出token的剩余数量 - function allowance(address _owner, address _spender) constant returns (uint remaining); - //1.发生转账时必须要触发的事件,transfer 和 transferFrom 成功执行时必须触发的事件 - event Transfer(address indexed _from, address indexed _to, uint _value); - //2.当函数 approve(address _spender, uint256 _value)成功执行时必须触发的事件 - event Approval(address indexed _owner, address indexed _spender, uint _value); -} - -interface tokenRecipient { function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) public; } - - -contract ERC200412Token is ERC20Interface { - string public name; // ERC20标准--代币名称 - string public symbol; // ERC20标准——代币简称 - uint8 public decimals = 18; // ERC20标准,decimals 可以有的小数点个数,最小的代币单位。18 是建议的默认值 - uint256 public totalSupply; // ERC20标准 总供应量 - - // 用mapping保存每个地址对应的余额 ERC20标准 - mapping(address => uint256) public balanceOf; - // 存储对账号的控制 ERC20标准 - mapping(address => mapping(address => uint256)) public allowance; - - // 事件,用来通知客户端交易发生 ERC20标准 - event Transfer(address indexed from, address indexed to, uint256 value); - - // 事件,用来通知客户端代币被消费 ERC20标准 - event Burn(address indexed from, uint256 value); - - /** - * 初始化构造 - */ - function ERC200412Token(uint256 initialSupply, string tokenName, string tokenSymbol) public { - totalSupply = initialSupply * 10 ** uint256(decimals); - // 供应的份额,份额跟最小的代币单位有关,份额 = 币数 * 10 ** decimals。 - balanceOf[msg.sender] = totalSupply; - // 创建者拥有所有的代币 - name = tokenName; - // 代币名称 - symbol = tokenSymbol; - // 代币符号 - } - /** - * 返回代币的名称 - */ - function name() constant public returns (string){ - return name; - } - - /** - * 返回代币的简称 - */ - function symbol() constant public returns (string){ - return symbol; - } - /** - * 返回代币最小分割量 - */ - function decimals() public constant returns (uint8){ - return decimals; - } - - function totalSupply() constant returns (uint256 theTotalSupply) { - //函数声明中已经定义了返回变量theTotalSupply - theTotalSupply = totalSupply; - return theTotalSupply; - } - - function balanceOf(address _owner) constant returns (uint256 balance) { - //返回指定地址的通证余额 - return balanceOf[_owner]; - } - /** - * 代币交易转移的内部实现 - */ - function _transfer(address _from, address _to, uint _value) internal returns (bool success){ - // 确保目标地址不为0x0,因为0x0地址代表销毁 -// require(_to != address("lat1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq542u6a") && _to != address("lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmscn5j")); - require(_to != address("atp1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqdruy9j") && _to != address("atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc")); - // 检查发送者余额 - require(balanceOf[_from] >= _value); - // 确保转移为正数个 - require(balanceOf[_to] + _value > balanceOf[_to]); - - // 以下用来检查交易, - uint previousBalances = balanceOf[_from] + balanceOf[_to]; - // Subtract from the sender - balanceOf[_from] -= _value; - // Add the same to the recipient - balanceOf[_to] += _value; - Transfer(_from, _to, _value); - - // 用assert来检查代码逻辑。 - return (balanceOf[_from] + balanceOf[_to] == previousBalances); - } - - /** - * 代币交易转移 - * 从自己(创建交易者)账号发送`_value`个代币到 `_to`账号 - * ERC20标准 - * @param _to 接收者地址 - * @param _value 转移数额 - */ - function transfer(address _to, uint256 _value) public returns (bool success){ - return _transfer(msg.sender, _to, _value); - } - - /** - * 账号之间代币交易转移 - * ERC20标准 - * @param _from 发送者地址 - * @param _to 接收者地址 - * @param _value 转移数额 - */ - function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) { - require(_value <= allowance[_from][msg.sender]); - // Check allowance - allowance[_from][msg.sender] -= _value; - _transfer(_from, _to, _value); - return true; - } - - /** - * 设置某个地址(合约)可以创建交易者名义花费的代币数。 - * - * 允许发送者`_spender` 花费不多于 `_value` 个代币 - * ERC20标准 - * @param _spender The address authorized to spend - * @param _value the max amount they can spend - */ - function approve(address _spender, uint256 _value) public - returns (bool success) { - allowance[msg.sender][_spender] = _value; - return true; - } - - /** - * 设置允许一个地址(合约)以我(创建交易者)的名义可最多花费的代币数。 - *-非ERC20标准 - * @param _spender 被授权的地址(合约) - * @param _value 最大可花费代币数 - * @param _extraData 发送给合约的附加数据 - */ - function approveAndCall(address _spender, uint256 _value, bytes _extraData) - public - returns (bool success) { - tokenRecipient spender = tokenRecipient(_spender); - if (approve(_spender, _value)) { - // 通知合约 - spender.receiveApproval(msg.sender, _value, this, _extraData); - return true; - } - } - /** - * - * 获取_spender可以从账户_owner中转出token的剩余数量 - */ - function allowance(address _owner, address _spender) constant returns (uint remaining){ - return allowance[_owner][_spender]; - } - - /** - * 销毁我(创建交易者)账户中指定个代币 - *-非ERC20标准 - */ - function burn(uint256 _value) public returns (bool success) { - require(balanceOf[msg.sender] >= _value); - // Check if the sender has enough - balanceOf[msg.sender] -= _value; - // Subtract from the sender - totalSupply -= _value; - // Updates totalSupply - Burn(msg.sender, _value); - return true; - } - - /** - * 销毁用户账户中指定个代币 - *-非ERC20标准 - * Remove `_value` tokens from the system irreversibly on behalf of `_from`. - * - * @param _from the address of the sender - * @param _value the amount of money to burn - */ - function burnFrom(address _from, uint256 _value) public returns (bool success) { - require(balanceOf[_from] >= _value); - // Check if the targeted balance is enough - require(_value <= allowance[_from][msg.sender]); - // Check allowance - balanceOf[_from] -= _value; - // Subtract from the targeted balance - allowance[_from][msg.sender] -= _value; - // Subtract from the sender's allowance - totalSupply -= _value; - // Update totalSupply - Burn(_from, _value); - return true; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/V-ID/VIDT.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/V-ID/VIDT.sol deleted file mode 100644 index c9664b5466..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/0.complex_contracts/V-ID/VIDT.sol +++ /dev/null @@ -1,451 +0,0 @@ -pragma solidity ^0.4.26; -/* - This solidity version supports auto-generated getter functions for all public state variables. - The default ERC20 getter functions for name(), symbol(), decimals() and totalSupply() are created by the compiler. -*/ - -contract ERC20 { -/* - Full ERC20 EIP20 compliancy - Credits https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md -*/ - - uint256 public totalSupply; - - function balanceOf(address who) public view returns (uint256 balance); - - function allowance(address owner, address spender) public view returns (uint256 remaining); - - function transfer(address to, uint256 value) public returns (bool success); - - function approve(address spender, uint256 value) public returns (bool success); - - function transferFrom(address from, address to, uint256 value) public returns (bool success); - - event Transfer(address indexed _from, address indexed _to, uint256 _value); - - event Approval(address indexed _owner, address indexed _spender, uint256 _value); -} - -library SafeMath { -/* - SafeMath library with small extension to the assert statements, adds or subtracts two numbers, reverts on overflow -*/ - - function sub(uint256 a, uint256 b) internal pure returns (uint256 c) { - c = a - b; - assert(b <= a && c <= a); - return c; - } - - function add(uint256 a, uint256 b) internal pure returns (uint256 c) { - c = a + b; - assert(c >= a && c>=b); - return c; - } -} - -library SafeERC20 { -/* - SafeERC20 library just here to transfer any non V-ID tokens accidentally sent to the contract, can be used to reimburse senders - Credits https://github.com/OpenZeppelin/openzeppelin-solidity/blob/master/contracts/token/ERC20/SafeERC20.sol (not identical, tailored to V-ID) -*/ - - function safeTransfer(ERC20 _token, address _to, uint256 _value) internal { - require(_token.transfer(_to, _value)); - } -} - -contract Owned { -/* - The contract is Owned so ownership can be transferred and some functions can only be invoked by the owner - Credits https://github.com/OpenZeppelin/openzeppelin-solidity/blob/master/contracts/ownership/Ownable.sol (not identical, tailored to V-ID) -*/ - - address public owner; - - constructor() public { - owner = msg.sender; - } - - modifier onlyOwner { - require(msg.sender == owner,"O1- Owner only function"); - _; - } - - function setOwner(address newOwner) onlyOwner public { - owner = newOwner; - } -} - -contract Pausable is Owned { -/* - The contract is Pauseable so token transfers can be paused in case of a security risk or Ethereum protocol problem - Credits https://github.com/OpenZeppelin/openzeppelin-solidity/blob/master/contracts/token/ERC20/PausableToken.sol (not identical, tailored to V-ID) -*/ - - event Pause(); - event Unpause(); - - bool public paused = false; - - modifier whenNotPaused() { - require(!paused); - _; - } - - modifier whenPaused() { - require(paused); - _; - } - - function pause() public onlyOwner whenNotPaused { - paused = true; - emit Pause(); - } - - function unpause() public onlyOwner whenPaused { - paused = false; - emit Unpause(); - } -} - -contract VIDToken is Owned, Pausable, ERC20 { -/* - The V-ID contract itself, using all the before mentioned defaults and libraries -*/ - -// Applying the SafeMath library to all integers used - using SafeMath for uint256; - -// Applying the SafeERC20 library to all ERC20 instances - using SafeERC20 for ERC20; - -// Default ERC20 array for storing the balances - mapping (address => uint256) public balances; - -// Default ERC20 array for storing the allowances between accounts - mapping (address => mapping (address => uint256)) public allowed; - -// A custom array to store accounts that are (temporarily) frozen, to be able to prevent abuse - mapping (address => bool) public frozenAccount; - -// A custom array to store all verified publisher accounts - mapping (address => bool) public verifyPublisher; - -// A custom array to store all verified validation wallets - mapping (address => bool) public verifyWallet; - -// Simple structure for the storage of the hashes - struct fStruct { uint256 index; } - -// The hashes are stored in this array - mapping(string => fStruct) private fileHashes; - -// The array of hashes is indexed in this array for queries - string[] private fileIndex; - -// The name of the token - string public constant name = "V-ID Token"; - -// The number of decimals, 18 for most broadly used implementation - uint8 public constant decimals = 18; - -// The preferred ticker / symbol of the token - string public constant symbol = "VIDT"; - -// The initial supply (lacking the 18 decimals) 100.000.000 VIDT - uint256 public constant initialSupply = 100000000; - -// The default validation price per hash - uint256 public validationPrice = 7 * 10 ** uint(decimals); - -// The default validation wallet -// address public validationWallet = address("lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmscn5j"); - address public validationWallet = address("atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc"); - -// The constructor is invoked on contract creation, it sets the contract owner and default wallet - - constructor() public { - validationWallet = msg.sender; - verifyWallet[msg.sender] = true; - totalSupply = initialSupply * 10 ** uint(decimals); - balances[msg.sender] = totalSupply; -// emit Transfer(address("lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmscn5j"),owner,initialSupply); - emit Transfer(address("atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc"),owner,initialSupply); - } - -// The fallback function which will be invoked when the function signature is not found, the revert() prevents the contract from receiving Ethereum - - function () public payable { - revert(); - } - -// The default ERC20 transfer() function is extended to be pausable and to prevent transfers from or to frozen accounts - - function transfer(address _to, uint256 _value) public whenNotPaused returns (bool success) { - require(_to != msg.sender,"T1- Recipient can not be the same as sender"); -// require(_to != address("lat1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq542u6a") && _to != address("lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmscn5j"),"T2- Please check the recipient address"); - require(_to != address("atp1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqdruy9j") && _to != address("atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc"),"T2- Please check the recipient address"); - require(balances[msg.sender] >= _value,"T3- The balance of sender is too low"); - require(!frozenAccount[msg.sender],"T4- The wallet of sender is frozen"); - require(!frozenAccount[_to],"T5- The wallet of recipient is frozen"); - - balances[msg.sender] = balances[msg.sender].sub(_value); - balances[_to] = balances[_to].add(_value); - - emit Transfer(msg.sender, _to, _value); - - return true; - } - -// The default ERC20 transferFrom() function is extended to be pausable and to prevent transfers from or to frozen accounts - - function transferFrom(address _from, address _to, uint256 _value) public whenNotPaused returns (bool success) { -// require(_to != address("lat1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq542u6a") && _to != address("lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmscn5j"),"TF1- Please check the recipient address"); - require(_to != address("atp1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqdruy9j") && _to != address("atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc"),"TF1- Please check the recipient address"); - require(balances[_from] >= _value,"TF2- The balance of sender is too low"); - require(allowed[_from][msg.sender] >= _value,"TF3- The allowance of sender is too low"); - require(!frozenAccount[_from],"TF4- The wallet of sender is frozen"); - require(!frozenAccount[_to],"TF5- The wallet of recipient is frozen"); - - balances[_from] = balances[_from].sub(_value); - balances[_to] = balances[_to].add(_value); - - allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value); - - emit Transfer(_from, _to, _value); - - return true; - } - -// Default ERC20 balanceOf() returns the current balance of _owner - - function balanceOf(address _owner) public view returns (uint256 balance) { - return balances[_owner]; - } - -// Default ERC20 approve() extended to prevent abuse under race conditions by requiring a 0 allowance before approving - - function approve(address _spender, uint256 _value) public whenNotPaused returns (bool success) { - require((_value == 0) || (allowed[msg.sender][_spender] == 0),"A1- Reset allowance to 0 first"); - - allowed[msg.sender][_spender] = _value; - - emit Approval(msg.sender, _spender, _value); - - return true; - } - -// The increaseApproval() function is here to efficiently increase any allowance in 1 transaction, protected against overflow bug using SafeMath - - function increaseApproval(address _spender, uint256 _addedValue) public whenNotPaused returns (bool) { - allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue); - - emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); - - return true; - } - -// The decreaseApproval() function is here to efficiently decrease any allowance in 1 transaction, protected against overflow bug using SafeMath - - function decreaseApproval(address _spender, uint256 _subtractedValue) public whenNotPaused returns (bool) { - allowed[msg.sender][_spender] = allowed[msg.sender][_spender].sub(_subtractedValue); - - emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); - - return true; - } - -// Default ERC20 allowance() returns the current allowance of _spender using tokens of _owner - - function allowance(address _owner, address _spender) public view returns (uint256 remaining) { - return allowed[_owner][_spender]; - } - -// The struct is a named array to be used in the tokenFallback() function - - struct TKN { address sender; uint256 value; bytes data; bytes4 sig; } - -// Though the tokenFallback() is a pure bogey, it's existence confirms the contract's ability to transfer any token (ERC223 compatibility) - - function tokenFallback(address _from, uint256 _value, bytes _data) public pure returns (bool) { - TKN memory tkn; - tkn.sender = _from; - tkn.value = _value; - tkn.data = _data; - uint32 u = uint32(_data[3]) + (uint32(_data[2]) << 8) + (uint32(_data[1]) << 16) + (uint32(_data[0]) << 24); - tkn.sig = bytes4(u); - return true; - } - -// The transferToken() is the function that is actually used by the contract owner to transfer tokens to the owner wallet so these can be reimbursed to any sender - - function transferToken(address tokenAddress, uint256 tokens) public onlyOwner { - ERC20(tokenAddress).safeTransfer(owner,tokens); - } - -// The V-ID tokenomics model is set to burn() a minimum of 10% of all tokens received in payment for validations and implementations, tokens are burned by sending them to the (0) address - - function burn(uint256 _value) public onlyOwner returns (bool) { - require(_value <= balances[msg.sender],"B1- The balance of burner is too low"); - - balances[msg.sender] = balances[msg.sender].sub(_value); - totalSupply = totalSupply.sub(_value); - - emit Burn(msg.sender, _value); - -// emit Transfer(msg.sender, address("lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmscn5j"), _value); - emit Transfer(msg.sender, address("atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc"), _value); - - return true; - } - -// The freeze() function is used to prevent abuse or protecting funds by freezing accounts - - function freeze(address _address, bool _state) public onlyOwner returns (bool) { - frozenAccount[_address] = _state; - - emit Freeze(_address, _state); - - return true; - } - -// All publishers are identified and validated by wallet / account and are named in the validation transaction - - function validatePublisher(address Address, bool State, string Publisher) public onlyOwner returns (bool) { - verifyPublisher[Address] = State; - - emit ValidatePublisher(Address,State,Publisher); - - return true; - } - -// Multiple wallets can be used to receive the V-ID Token payments, the contract owner / admin can (in)validate wallets using this function - - function validateWallet(address Address, bool State, string Wallet) public onlyOwner returns (bool) { - verifyWallet[Address] = State; - - emit ValidateWallet(Address,State,Wallet); - - return true; - } - -/* - The essence of the validation process is the validation of a files fingerprint / hash using the validateFile() function. - The hash is alway stored in the transaction log (input) and optionally (though default) in the contract itself and in the event logs. - In this way the validateFile() function provides the use of all 3 tiers in the data storage logic of the Ethereum blockchain (transaction, state and receipt). - - Herein also lies the logic of using the token as method of most efficient payment for each micro transaction. - As we will be using automated validation tools (also API's) it is easy to vary the price per validation, therefore the validationPrice variable only represents the minimum amount. -*/ - - function validateFile(address To, uint256 Payment, bytes Data, bool cStore, bool eLog) public whenNotPaused returns (bool) { - require(Payment>=validationPrice,"V1- Insufficient payment provided"); - require(verifyPublisher[msg.sender],"V2- Unverified publisher address"); - require(!frozenAccount[msg.sender],"V3- The wallet of publisher is frozen"); - require(Data.length == 64,"V4- Invalid hash provided"); - - if (!verifyWallet[To] || frozenAccount[To]) { - To = validationWallet; - } - - uint256 index = 0; - string memory fileHash = string(Data); - - if (cStore) { - if (fileIndex.length > 0) { - require(fileHashes[fileHash].index == 0,"V5- This hash was previously validated"); - } - - fileHashes[fileHash].index = fileIndex.push(fileHash)-1; - index = fileHashes[fileHash].index; - } - - if (allowed[To][msg.sender] >= Payment) { - allowed[To][msg.sender] = allowed[To][msg.sender].sub(Payment); - } else { - balances[msg.sender] = balances[msg.sender].sub(Payment); - balances[To] = balances[To].add(Payment); - } - - emit Transfer(msg.sender, To, Payment); - - if (eLog) { - emit ValidateFile(index,fileHash); - } - - return true; - } - -/* - Verifying a file is available at zero cost as it does not require a transaction, just a query. - The verifyFile() function matches twice, first by retrieving the index of a file by its hash (string) and again by comparing the strings 1 character at a time. -*/ - - function verifyFile(string fileHash) public view returns (bool) { - if (fileIndex.length == 0) { - return false; - } - - bytes memory a = bytes(fileIndex[fileHashes[fileHash].index]); - bytes memory b = bytes(fileHash); - - if (a.length != b.length) { - return false; - } - - for (uint256 i = 0; i < a.length; i ++) { - if (a[i] != b[i]) { - return false; - } - } - - return true; - } - -// The contract owner / V-ID can set the price for each validation using the setPrice() function - - function setPrice(uint256 newPrice) public onlyOwner { - validationPrice = newPrice; - } - -// The contract owner / V-ID can set the default wallet for payments using the setWallet() function - - function setWallet(address newWallet) public onlyOwner { - validationWallet = newWallet; - } - -// The listFiles() function is to provide direct access to the data for audits and consistency checks - - function listFiles(uint256 startAt, uint256 stopAt) onlyOwner public returns (bool) { - if (fileIndex.length == 0) { - return false; - } - - require(startAt <= fileIndex.length-1,"L1- Please select a valid start"); - - if (stopAt > 0) { - require(stopAt > startAt && stopAt <= fileIndex.length-1,"L2- Please select a valid stop"); - } else { - stopAt = fileIndex.length-1; - } - - for (uint256 i = startAt; i <= stopAt; i++) { - emit LogEvent(i,fileIndex[i]); - } - - return true; - } - -// All possible custom events are listed here for their signatures - - event Burn(address indexed burner, uint256 value); - event Freeze(address target, bool frozen); - - event ValidateFile(uint256 index, string data); - event ValidatePublisher(address indexed publisherAddress, bool state, string indexed publisherName); - event ValidateWallet(address indexed walletAddress, bool state, string indexed walletName); - - event LogEvent(uint256 index, string data) anonymous; -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/1.function/03Function_Visibility_and_Decarations/ConstantViewPure.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/1.function/03Function_Visibility_and_Decarations/ConstantViewPure.sol deleted file mode 100644 index a085b52803..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/1.function/03Function_Visibility_and_Decarations/ConstantViewPure.sol +++ /dev/null @@ -1,31 +0,0 @@ -pragma solidity ^0.4.26; -/** - * 验证三个函数修饰词constant, view, pure - * @author liweic - * @dev 2019/12/27 14:10 - */ - -contract ConstantViewPure{ - string name; - uint public age; - - function constantViewPure() public{ - name = "fanxian"; - age = 19; - } - - function getAgeByConstant() public constant returns(uint){ - age += 1; //声明为constant,在函数体中又试图去改变状态变量的值,编译会报warning, 但是可以通过 - return age; // return 20, 状态变量age的值不会改变,仍然为19! - } - - function getAgeByView() public view returns(uint){ - age += 1; //view和constant效果一致,编译会报warning,但是可以通过 - return age; // return 20,状态变量age的值不会改变,仍然为19! - } - - function getAgeByPure() public pure returns(uint){ - //return age; //编译报错!pure比constant和view都要严格,pure完全禁止读写状态变量! - return 1; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/10.exec_efficiency/QuickSort.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/10.exec_efficiency/QuickSort.sol deleted file mode 100644 index 8a144cd05d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/10.exec_efficiency/QuickSort.sol +++ /dev/null @@ -1,62 +0,0 @@ - pragma solidity ^0.4.26; - -/** - * 快速排序 - × - × @author zjsunzone - */ -contract QuickSort { - - int256[] public arr; - - function QuickSort(){ - - } - - function sort(int256[] _arr, uint256 low, uint256 high) public { - quick_sort(_arr, low, high); - arr = _arr; - /*for(uint256 i = 0; i < _arr.length; i++){ - arr.push(_arr[i]); - }*/ - } - - function quick_sort(int256[] _arr, uint256 low, uint256 high) internal { - if(low < high){ - uint256 i = partition(_arr, low, high); - if(i != 0){ - quick_sort(_arr, low, i-1); - } - quick_sort(_arr, i+1, high); - } - } - - function partition(int256[] _arr, uint256 low, uint256 high) internal returns (uint256) { - int256 temp = _arr[low]; - uint i = low; - uint j = high; - while(i != j) { - while(i < j && _arr[j] > temp){ - j = j - 1; - } - if(i < j){ - _arr[i] = _arr[j]; - i = i + 1; - } - while(i < j && _arr[i] < temp){ - i = i+1; - } - if(i < j){ - _arr[j] = _arr[i]; - j = j - 1; - } - _arr[i] = temp; - } - _arr[i] = temp; - return i; - } - - function show() constant public returns(int256[]){ - return arr; - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/11.cross_contract_call/0_4_25\350\267\250\345\220\210\347\272\246\350\260\203\347\224\250callcode/Callee0425.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/11.cross_contract_call/0_4_25\350\267\250\345\220\210\347\272\246\350\260\203\347\224\250callcode/Callee0425.sol" deleted file mode 100644 index 0eedabe181..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/11.cross_contract_call/0_4_25\350\267\250\345\220\210\347\272\246\350\260\203\347\224\250callcode/Callee0425.sol" +++ /dev/null @@ -1,23 +0,0 @@ -pragma solidity ^0.4.26; -/** - * 0.4.25跨合约被调用者 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - - -contract Callee0425 { - uint256 public x; - - event EventName(address seder,uint256 x); - - function inc() public { - x++; - emit EventName(msg.sender,x); - } - - function getCalleeX() public view returns(uint256){ - return x; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/11.cross_contract_call/0_4_25\350\267\250\345\220\210\347\272\246\350\260\203\347\224\250callcode/Caller0425.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/11.cross_contract_call/0_4_25\350\267\250\345\220\210\347\272\246\350\260\203\347\224\250callcode/Caller0425.sol" deleted file mode 100644 index 1407675182..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/11.cross_contract_call/0_4_25\350\267\250\345\220\210\347\272\246\350\260\203\347\224\250callcode/Caller0425.sol" +++ /dev/null @@ -1,38 +0,0 @@ -pragma solidity ^0.4.26; -/** - * 0.4.25跨合约调用的调用者 - * 说明:DELEGATECALL会一直使用原始调用者的地址,而CALLCODE不会。 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - - -contract Caller0425 { - uint256 public x; - - /** - * 改变的是被调用者的状态变量 - */ - function inc_call(address _contractAddress) public { - _contractAddress.call(bytes4(keccak256("inc()"))); - } - - /** - * 改变的是调用者的状态变量,msg.sender是当前合约 - */ - function inc_callcode(address _contractAddress) public { - _contractAddress.callcode(bytes4(keccak256("inc()"))); - } - - /** - * 改变的是调用者的状态变量,msg.sender是最初调用者 - */ - function inc_delegatecall(address _contractAddress) public { - _contractAddress.delegatecall(bytes4(keccak256("inc()"))); - } - - function getCallerX() public view returns(uint256){ - return x; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/11.cross_contract_call/Person.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/11.cross_contract_call/Person.sol deleted file mode 100644 index b082a74888..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/11.cross_contract_call/Person.sol +++ /dev/null @@ -1,66 +0,0 @@ -pragma solidity ^0.4.26; - -/** - * 1.验证0.4.4版本下的特殊版本下的构造函数 - * 2.验证selfdestruct析構函數 - * 3.验证==表达式 - * 4.验证uint数据类型 - * @author qcxiao - * @dev 2019/12/18 15:09 - */ -contract Person { - uint _age; - uint _height; - address _owner; - string _name; - - function Person() { - _height = 180; - _age = 20; - _owner = msg.sender; - _name = "qcxiao"; - } - - function f() { - modify(_name); - } - - // 引用类型string需要配合storage关键字传递参数的地址,并需要配合internal或private声明为内部函数 - function modify(string storage name) internal { - bytes(name)[0] = "Q"; - } - - function name() constant returns (string) { - return _name; - } - - function owner() constant returns (address) { - return _owner; - } - - function setAge(uint age) { - _age = age; - } - - function age() constant returns (uint) { - return _age; - } - - function setHeight(uint height) { - _height = height; - } - - // constant代表只讀,不需要消耗gas - function height() constant returns (uint) { - return _height; - } - - function kill() constant { - if (_owner == msg.sender) { - // 析構函數 - selfdestruct(_owner); - } - } - - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/13.modity_csdc_contracts/NewSecPledgeApplyManager.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/13.modity_csdc_contracts/NewSecPledgeApplyManager.sol deleted file mode 100644 index e5a3cefc8d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/13.modity_csdc_contracts/NewSecPledgeApplyManager.sol +++ /dev/null @@ -1,306 +0,0 @@ -pragma solidity ^0.4.26; - -import "./strings.sol"; - -contract NewSecPledgeApplyManager{ - - using strings for *; - - struct SecPledgeApply { - string id; - string businessNo; - string bizId; - string pledgorId; - string pledgorName; - string pledgeeId; - string pledgeeName; - string managerId; - string financingAmount; - string financingDateStart; - string financingDateEnd; - string financingRate; - string financingTarget; - string paymentId; - string payerType; - string warnLine; - string closeLine; - string pledgeContractNo; - string pledgeContractFileId; - string pledgeContractFileName; - string secPledgeId; - // string applyTime; - // string mainContractCode; - // string mainContractName; - // string disputeMethodInfo; // 争议解决处理内容 24 - // string payerAccount; //支付者地址 25 - // string payerName; //付款人姓名 26 - // string payAmount; //支付金额 27 - // string receivedAmount; //到账金额 28 - // string receivedTime; //到账时间 29 - // string payType; //付款方式 30 - // string payFlow; //银行流水号 31 - // string invoiceId; //邮寄发票id 32 - // string djfs; //冻结方式 33 - // string pledgeRegisterNo; //质押业务登记编号 34 - // string bizAccount; //券商备付金账户 35 - // string ywbh; //业务编号 36 - // string sfje; //收费金额 37 - // string enter400time; //进入400时间 38 - // string pledgeTime; //质押成功时间 39 - - TradeUser tradeUser; //出质人 40 - TradeOperator tradeOperator; //经办人 41 - // PledgeSecurity pledgeSecurity; //质押证券 42 - } - - - struct TradeOperator { - string id; - string brokerId; //券商id - string name; //姓名 - // string department; //部门名称 - // string phone; //电话 - // string fax; //传真 - // string mobile; //手机 - // string email; //邮箱 - } - - struct TradeUser { - string traderType; //交易者类型 - string traderId; //交易者address - string account; //证券账户号 - string accountType; //证券账户类型 - string idType; //身份证件类型 - // string idNo; //身份证件号/注册号码 - // string userType; //用户类型 - // string name; //姓名 - // string isShareholder; //是否国有股东 - // string isSecAccount; //是否定向资管专用证券账户 - // string isFundAccount; //是否基金账户 - // string isAgency; //是否代办 - // string agentName; //代办人姓名 - // string agentMobile; //代办人移动电话 - // string email; //Email - // string receiverName; //收件人姓名 - // string receiverMobile; //收件人联系方式 - // string postCode; //邮政编码 - // string postAddr; //邮政地址 - // string receiverCompany;//收件人单位名称 - // string postType; //邮寄方式 - // string expressCompany; //快递公司名称 - // string isPost; //是否邮寄 - } - - struct PledgeSecurity { - string id; //id - string secAccount; //证券账户 - string secCode; //证券代码 - string secName; //证券简称 - // string secType; //证券类别(股份性质) - // string hostedUnit; //托管单元 - // string hostedUnitName;//证券单元名称 - // string secProperty;//股份性质 - // string pledgeNum; //质押数量 - // string remainPledgeNum; //剩余质押数量 - // string isProfit; //是否解除红利 - // string isProfitRemain; //是否解除红利修改后 - // string profitAmount; //现金红利金额 - // string bonusShareAmount; //剩余红股 - // string uniAcctNbr; //一码通号 - // string shareholderIdNo; //股东证件号码 - // string freezeNo; //冻结序号 - // string subFreezeNo; //冻结子序号 - // string totalMarketAmount; //市场总股本 - // string shareHoldingRatio; //持股比例 - // string pledgeRatio; //质押比例 - // string frozenFlag; //冻结是否成功 - // string frozenNum; //已冻结股数 - // string preFrozenNum; //预冻结股数 - // string originalPledgeNum; //原质押数量 - // string judiciaryFreezeNum; //司法冻结股数 - // string isJudiciaryFrozen; //是否已司法冻结 - // string doContinueWithJudiciaryFreeze; //司法冻结情况下是否继续接触质押 - // string remainPositionNum; //剩余持仓股数 - } - - mapping(string => SecPledgeApply) secPledgeApplyMap; //id => object - string[] secPledgeApplyIds;//件组ids - PledgeSecurity[] pledgeSecuritys; - mapping(string =>PledgeSecurity[]) pledgeSecurityArrMap; - - //新增质押申请信息 - function createPledgeApplyCommon(string memory secPledgeApplyJson) public returns(string memory) { - strings.slice memory s = secPledgeApplyJson.toSlice(); - strings.slice memory delim = "-".toSlice(); - string[] memory parts = new string[](s.count(delim)); - for (uint i = 0; i < parts.length; i++) { - parts[i] = s.split(delim).toString(); - } - - secPledgeApplyIds.push(parts[0]); - - SecPledgeApply memory secPledgeApply; - secPledgeApply.id = parts[0]; - secPledgeApply.businessNo = parts[1]; - secPledgeApply.bizId = parts[2]; - secPledgeApply.pledgorId = parts[3]; - secPledgeApply.pledgorName = parts[4]; - secPledgeApply.pledgeeId = parts[5]; - secPledgeApply.pledgeeName = parts[6]; - secPledgeApply.managerId = parts[7]; - secPledgeApply.financingAmount = parts[8]; - secPledgeApply.financingDateStart = parts[9]; - secPledgeApply.financingDateEnd = parts[10]; - secPledgeApply.financingRate = parts[11]; - secPledgeApply.financingTarget = parts[12]; - secPledgeApply.paymentId = parts[13]; - secPledgeApply.payerType = parts[14]; - secPledgeApply.warnLine = parts[15]; - secPledgeApply.closeLine = parts[16]; - secPledgeApply.pledgeContractNo = parts[17]; - secPledgeApply.pledgeContractFileId = parts[18]; - secPledgeApply.pledgeContractFileName = parts[19]; - secPledgeApply.secPledgeId = parts[20]; - // secPledgeApply.applyTime = parts[21]; - // secPledgeApply.mainContractCode = parts[22]; - // secPledgeApply.mainContractName = parts[23]; - // secPledgeApply.disputeMethodInfo = parts[24]; - // secPledgeApply.payerAccount = parts[25]; - // secPledgeApply.payerName = parts[26]; - // secPledgeApply.payAmount = parts[27]; - // secPledgeApply.receivedAmount = parts[28]; - // secPledgeApply.receivedTime = parts[29]; - // secPledgeApply.payType = parts[30]; - // secPledgeApply.payFlow = parts[31]; - // secPledgeApply.invoiceId = parts[32]; - // secPledgeApply.djfs = parts[33]; - // secPledgeApply.pledgeRegisterNo = parts[34]; - // secPledgeApply.bizAccount = parts[35]; - // secPledgeApply.ywbh = parts[36]; - // secPledgeApply.sfje = parts[37]; - // secPledgeApply.enter400time = parts[38]; - // secPledgeApply.pledgeTime = parts[39]; - - //新增证券信息 - // strings.slice memory s1 = pledgeSecurityJson.toSlice(); - // strings.slice memory delim1 = "-".toSlice(); - // string[] memory parts1 = new string[](s1.count(delim1)); - // for (uint i = 0; i < parts1.length; i++) { - // parts1[i] = s1.split(delim1).toString(); - // } - - PledgeSecurity memory pledgeSecurity; - pledgeSecurity.id = parts[8]; - pledgeSecurity.secAccount = parts[11]; - pledgeSecurity.secCode = parts[12]; - pledgeSecurity.secName = parts[13]; - - pledgeSecuritys.push(pledgeSecurity); - pledgeSecurityArrMap[parts[0]] = pledgeSecuritys; - - // secPledgeApply.pledgeSecuritys = pledgeSecurityArr; - // secPledgeApply.pledgeSecurity.secType = parts1[4]; - // secPledgeApply.pledgeSecurity.hostedUnit = parts1[5]; - // secPledgeApply.pledgeSecurity.hostedUnitName = parts1[6]; - // secPledgeApply.pledgeSecurity.secProperty = parts1[7]; - // secPledgeApply.pledgeSecurity.pledgeNum = parts1[8]; - // secPledgeApply.pledgeSecurity.remainPledgeNum = parts1[9]; - // secPledgeApply.pledgeSecurity.isProfit = parts1[10]; - // secPledgeApply.pledgeSecurity.isProfitRemain = parts1[11]; - // secPledgeApply.pledgeSecurity.profitAmount = parts1[12]; - // secPledgeApply.pledgeSecurity.bonusShareAmount = parts1[13]; - // secPledgeApply.pledgeSecurity.uniAcctNbr = parts1[14]; - // secPledgeApply.pledgeSecurity.shareholderIdNo = parts1[15]; - // secPledgeApply.pledgeSecurity.freezeNo = parts1[16]; - // secPledgeApply.pledgeSecurity.subFreezeNo = parts1[17]; - // secPledgeApply.pledgeSecurity.totalMarketAmount = parts1[18]; - // secPledgeApply.pledgeSecurity.shareHoldingRatio = parts1[19]; - // secPledgeApply.pledgeSecurity.pledgeRatio = parts1[20]; - // secPledgeApply.pledgeSecurity.frozenFlag = parts1[21]; - // secPledgeApply.pledgeSecurity.frozenNum = parts1[22]; - // secPledgeApply.pledgeSecurity.preFrozenNum = parts1[23]; - // secPledgeApply.pledgeSecurity.originalPledgeNum = parts1[24]; - // secPledgeApply.pledgeSecurity.judiciaryFreezeNum = parts1[25]; - // secPledgeApply.pledgeSecurity.isJudiciaryFrozen = parts1[26]; - // secPledgeApply.pledgeSecurity.doContinueWithJudiciaryFreeze = parts1[27]; - // secPledgeApply.pledgeSecurity.remainPositionNum = parts1[28]; - - - - // //新增交易用户信息 - // strings.slice memory s2 = tradeUserJson.toSlice(); - // strings.slice memory delim2 = "-".toSlice(); - // string[] memory parts2 = new string[](s2.count(delim2)); - // for (uint i = 0; i < parts2.length; i++) { - // parts2[i] = s2.split(delim2).toString(); - // } - - secPledgeApply.tradeUser.traderType = parts[0]; - secPledgeApply.tradeUser.traderId = parts[1]; - secPledgeApply.tradeUser.account = parts[2]; - secPledgeApply.tradeUser.accountType = parts[3]; - secPledgeApply.tradeUser.idType = parts[4]; - // secPledgeApply.tradeUser.idNo = parts2[5]; - // secPledgeApply.tradeUser.userType = parts2[6]; - // secPledgeApply.tradeUser.name = parts2[7]; - // secPledgeApply.tradeUser.isShareholder = parts2[8]; - // secPledgeApply.tradeUser.isSecAccount = parts2[9]; - // secPledgeApply.tradeUser.isFundAccount = parts2[10]; - // secPledgeApply.tradeUser.isAgency = parts2[11]; - // secPledgeApply.tradeUser.agentName = parts2[12]; - // secPledgeApply.tradeUser.agentMobile = parts2[13]; - // secPledgeApply.tradeUser.email = parts2[14]; - // secPledgeApply.tradeUser.receiverName = parts2[15]; - // secPledgeApply.tradeUser.receiverMobile = parts2[16]; - // secPledgeApply.tradeUser.postCode = parts2[17]; - // secPledgeApply.tradeUser.postAddr = parts2[18]; - // secPledgeApply.tradeUser.receiverCompany = parts2[19]; - // secPledgeApply.tradeUser.postType = parts2[20]; - // secPledgeApply.tradeUser.expressCompany = parts2[21]; - // secPledgeApply.tradeUser.isPost = parts2[22]; - - - // //新增操作用户 - // strings.slice memory s3 = tradeOperatorJson.toSlice(); - // strings.slice memory delim3 = "-".toSlice(); - // string[] memory parts3 = new string[](s3.count(delim3)); - // for (uint i = 0; i < parts3.length; i++) { - // parts3[i] = s3.split(delim3).toString(); - // } - - secPledgeApply.tradeOperator.id = parts[4]; - secPledgeApply.tradeOperator.brokerId = parts[5]; - secPledgeApply.tradeOperator.name = parts[6]; - // secPledgeApply.tradeOperator.department = parts3[3]; - // secPledgeApply.tradeOperator.phone = parts3[4]; - // secPledgeApply.tradeOperator.fax = parts3[5]; - // secPledgeApply.tradeOperator.mobile = parts3[6]; - // secPledgeApply.tradeOperator.email = parts3[7]; - - secPledgeApplyMap[secPledgeApply.id] = secPledgeApply; - // secPledgeApplyIds.push(parts[0]); - - return secPledgeApply.id; - - } - - //查询质押申请信息(将所有的返回参数拼接成字符串) - function select_SecPledgeApply_byId(string memory _id) public constant returns(string memory) { - return secPledgeApplyMap[_id].businessNo; - } - - //查询交易用户 - function select_tradeUser_byId(string memory _id) public constant returns(string memory) { - return secPledgeApplyMap[_id].tradeUser.account; - } - - //查询操作用户 - function select_tradeOperator_bytId(string memory _id) public constant returns(string memory) { - return secPledgeApplyMap[_id].tradeOperator.name; - } - - //查询证券信息用户 - function select_pledgeSecurity_bytId(string memory _id) public constant returns(string memory) { - return pledgeSecurityArrMap[_id][0].secName; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/13.modity_csdc_contracts/OrderDao.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/13.modity_csdc_contracts/OrderDao.sol deleted file mode 100644 index 66aee8b5e6..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/13.modity_csdc_contracts/OrderDao.sol +++ /dev/null @@ -1,130 +0,0 @@ -pragma solidity ^0.4.26; - -import "./strings.sol"; - -contract OrderDao{ - using strings for *; - - struct SecPledgeApply { - string id; //id 0 - string businessNo; //交易申请流水,业务单号 1 - string bizId; //业务基本信息id 2 - string bizId2; //业务基本信息id 2 - string pledgorId; //出质人地址 3 - string pledgorName; //出质人姓名 4 - string pledgeeId; //质权人地址 5 - string pledgeeName; //质权人姓名 6 - string managerId; //经办人id 7 - - // LibTradeUser.TradeUser[] pledgors; //出质人 - // LibTradeUser.TradeUser pledgee; //质权人 - // LibTradeOperator.TradeOperator tradeOperator; //经办人 - - string financingAmount; //融资金额 8 - string financingDateStart; //融资期限起 9 - string financingDateEnd; //融资期限止 10 - string financingRate; //融资利率 11 - string financingTarget; //融资投向 12 - string paymentId; //缴费信息id 13 - // PayerType payerType; //付费方 - string warnLine; //预警线 14 - string closeLine; //平仓线 15 - string pledgeContractNo; //质押合同编号 16 - string pledgeContractFileId; //质押合同文件id 17 - string pledgeContractFileName; //18 - string secPledgeId; //成功单号 19 - string applyTime; //20 - string mainContractCode; // 主合同编号 21 - string mainContractName; // 主合同名称 22 - // DisputeMethod disputeMethod; // 争议解决方式 s “1”:方式一 “2”:方式二 23 - string disputeMethodInfo; // 争议解决处理内容 s 24 - - string payerAccount; //支付者地址 25 - string payerName; //付款人姓名 26 - string payAmount; //支付金额 27 - string receivedAmount; //到账金额 28 - string receivedTime; //到账时间 29 - string payType; //付款方式 30 - string payFlow; //银行流水号 31 - - string invoiceId; //邮寄发票id 32 - string djfs; //冻结方式 33 - string pledgeRegisterNo; //质押业务登记编号 34 - - // LibPledgeSecurity.PledgeSecurity[] appliedSecurities; //质押证券 - - string bizAccount; //券商备付金账户 35 - // LibAttachInfo.AttachInfo[] frontAttachments; //前端操作普通附件 - string ywbh; //业务编号 36 - string sfje; //收费金额 37 - - string enter400time; //进入400时间 38 - string pledgeTime; //质押成功时间 39 - } - - mapping(string => SecPledgeApply) m_secPledgeApplyMap; //id => object - string[] m_secPledgeApplyIds;//件组ids - - string public part1; - string public part2; - - function insert_SecPledgeApply(string memory param) public returns(uint) { - strings.slice memory s = param.toSlice(); - strings.slice memory delim = "-".toSlice(); - string[] memory parts = new string[](s.count(delim)); - for (uint i = 0; i < parts.length; i++) { - parts[i] = s.split(delim).toString(); - } - - - m_secPledgeApplyIds.push(parts[0]); - SecPledgeApply memory secPledgeApply; - secPledgeApply.id = parts[0]; - secPledgeApply.businessNo = parts[1]; - secPledgeApply.bizId = parts[2]; - secPledgeApply.bizId2 = parts[3]; - secPledgeApply.pledgorName = parts[4]; - secPledgeApply.pledgeeId = parts[5]; - secPledgeApply.pledgeeName = parts[6]; - secPledgeApply.managerId = parts[7]; - secPledgeApply.financingAmount = parts[8]; - secPledgeApply.financingDateStart = parts[9]; - secPledgeApply.financingDateEnd = parts[10]; - secPledgeApply.financingRate = parts[11]; - secPledgeApply.financingTarget = parts[12]; - secPledgeApply.paymentId = parts[13]; - secPledgeApply.warnLine = parts[14]; - secPledgeApply.closeLine = parts[15]; - secPledgeApply.pledgeContractNo = parts[16]; - secPledgeApply.pledgeContractFileId = parts[17]; - secPledgeApply.pledgeContractFileName = parts[18]; - secPledgeApply.secPledgeId = parts[19]; - secPledgeApply.applyTime = parts[20]; - secPledgeApply.mainContractCode = parts[21]; - secPledgeApply.mainContractName = parts[22]; - secPledgeApply.disputeMethodInfo = parts[23]; - secPledgeApply.payerAccount = parts[24]; - secPledgeApply.payerName = parts[25]; - secPledgeApply.payAmount = parts[26]; - secPledgeApply.receivedAmount = parts[27]; - secPledgeApply.receivedTime = parts[28]; - secPledgeApply.payType = parts[29]; - secPledgeApply.payFlow = parts[30]; - secPledgeApply.invoiceId = parts[31]; - secPledgeApply.djfs = parts[32]; - secPledgeApply.pledgeRegisterNo = parts[33]; - secPledgeApply.bizAccount = parts[34]; - secPledgeApply.ywbh = parts[35]; - secPledgeApply.sfje = parts[36]; - secPledgeApply.enter400time = parts[37]; - secPledgeApply.pledgeTime = parts[38]; - - - m_secPledgeApplyMap[secPledgeApply.id] = secPledgeApply; - - } - - function select_SecPledgeApply_byId(string memory _id) public constant returns(string memory) { - return m_secPledgeApplyMap[_id].businessNo; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/13.modity_csdc_contracts/strings.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/13.modity_csdc_contracts/strings.sol deleted file mode 100644 index 6667a65a50..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/13.modity_csdc_contracts/strings.sol +++ /dev/null @@ -1,715 +0,0 @@ -pragma solidity ^0.4.26; -/* - * @title String & slice utility library for Solidity contracts. - * @author Nick Johnson - * - * @dev Functionality in this library is largely implemented using an - * abstraction called a 'slice'. A slice represents a part of a string - - * anything from the entire string to a single character, or even no - * characters at all (a 0-length slice). Since a slice only has to specify - * an offset and a length, copying and manipulating slices is a lot less - * expensive than copying and manipulating the strings they reference. - * - * To further reduce gas costs, most functions on slice that need to return - * a slice modify the original one instead of allocating a new one; for - * instance, `s.split(".")` will return the text up to the first '.', - * modifying s to only contain the remainder of the string after the '.'. - * In situations where you do not want to modify the original slice, you - * can make a copy first with `.copy()`, for example: - * `s.copy().split(".")`. Try and avoid using this idiom in loops; since - * Solidity has no memory management, it will result in allocating many - * short-lived slices that are later discarded. - * - * Functions that return two slices come in two versions: a non-allocating - * version that takes the second slice as an argument, modifying it in - * place, and an allocating version that allocates and returns the second - * slice; see `nextRune` for example. - * - * Functions that have to copy string data will return strings rather than - * slices; these can be cast back to slices for further processing if - * required. - * - * For convenience, some functions are provided with non-modifying - * variants that create a new slice and return both; for instance, - * `s.splitNew('.')` leaves s unmodified, and returns two values - * corresponding to the left and right parts of the string. - */ - -library strings { - struct slice { - uint _len; - uint _ptr; - } - - function memcpy(uint dest, uint src, uint len) private pure { - // Copy word-length chunks while possible - for(; len >= 32; len -= 32) { - assembly { - mstore(dest, mload(src)) - } - dest += 32; - src += 32; - } - - // Copy remaining bytes - uint mask = 256 ** (32 - len) - 1; - assembly { - let srcpart := and(mload(src), not(mask)) - let destpart := and(mload(dest), mask) - mstore(dest, or(destpart, srcpart)) - } - } - - /* - * @dev Returns a slice containing the entire string. - * @param self The string to make a slice from. - * @return A newly allocated slice containing the entire string. - */ - function toSlice(string memory self) internal pure returns (slice memory) { - uint ptr; - assembly { - ptr := add(self, 0x20) - } - return slice(bytes(self).length, ptr); - } - - /* - * @dev Returns the length of a null-terminated bytes32 string. - * @param self The value to find the length of. - * @return The length of the string, from 0 to 32. - */ - function len(bytes32 self) internal pure returns (uint) { - uint ret; - if (self == 0) - return 0; - if (self & 0xffffffffffffffffffffffffffffffff == 0) { - ret += 16; - self = bytes32(uint(self) / 0x100000000000000000000000000000000); - } - if (self & 0xffffffffffffffff == 0) { - ret += 8; - self = bytes32(uint(self) / 0x10000000000000000); - } - if (self & 0xffffffff == 0) { - ret += 4; - self = bytes32(uint(self) / 0x100000000); - } - if (self & 0xffff == 0) { - ret += 2; - self = bytes32(uint(self) / 0x10000); - } - if (self & 0xff == 0) { - ret += 1; - } - return 32 - ret; - } - - /* - * @dev Returns a slice containing the entire bytes32, interpreted as a - * null-terminated utf-8 string. - * @param self The bytes32 value to convert to a slice. - * @return A new slice containing the value of the input argument up to the - * first null. - */ - function toSliceB32(bytes32 self) internal pure returns (slice memory ret) { - // Allocate space for `self` in memory, copy it there, and point ret at it - assembly { - let ptr := mload(0x40) - mstore(0x40, add(ptr, 0x20)) - mstore(ptr, self) - mstore(add(ret, 0x20), ptr) - } - ret._len = len(self); - } - - /* - * @dev Returns a new slice containing the same data as the current slice. - * @param self The slice to copy. - * @return A new slice containing the same data as `self`. - */ - function copy(slice memory self) internal pure returns (slice memory) { - return slice(self._len, self._ptr); - } - - /* - * @dev Copies a slice to a new string. - * @param self The slice to copy. - * @return A newly allocated string containing the slice's text. - */ - function toString(slice memory self) internal pure returns (string memory) { - string memory ret = new string(self._len); - uint retptr; - assembly { retptr := add(ret, 32) } - - memcpy(retptr, self._ptr, self._len); - return ret; - } - - /* - * @dev Returns the length in runes of the slice. Note that this operation - * takes time proportional to the length of the slice; avoid using it - * in loops, and call `slice.empty()` if you only need to know whether - * the slice is empty or not. - * @param self The slice to operate on. - * @return The length of the slice in runes. - */ - function len(slice memory self) internal pure returns (uint l) { - // Starting at ptr-31 means the LSB will be the byte we care about - uint ptr = self._ptr - 31; - uint end = ptr + self._len; - for (l = 0; ptr < end; l++) { - uint8 b; - assembly { b := and(mload(ptr), 0xFF) } - if (b < 0x80) { - ptr += 1; - } else if(b < 0xE0) { - ptr += 2; - } else if(b < 0xF0) { - ptr += 3; - } else if(b < 0xF8) { - ptr += 4; - } else if(b < 0xFC) { - ptr += 5; - } else { - ptr += 6; - } - } - } - - /* - * @dev Returns true if the slice is empty (has a length of 0). - * @param self The slice to operate on. - * @return True if the slice is empty, False otherwise. - */ - function empty(slice memory self) internal pure returns (bool) { - return self._len == 0; - } - - /* - * @dev Returns a positive number if `other` comes lexicographically after - * `self`, a negative number if it comes before, or zero if the - * contents of the two slices are equal. Comparison is done per-rune, - * on unicode codepoints. - * @param self The first slice to compare. - * @param other The second slice to compare. - * @return The result of the comparison. - */ - function compare(slice memory self, slice memory other) internal pure returns (int) { - uint shortest = self._len; - if (other._len < self._len) - shortest = other._len; - - uint selfptr = self._ptr; - uint otherptr = other._ptr; - for (uint idx = 0; idx < shortest; idx += 32) { - uint a; - uint b; - assembly { - a := mload(selfptr) - b := mload(otherptr) - } - if (a != b) { - // Mask out irrelevant bytes and check again - uint256 mask = uint256(-1); // 0xffff... - if(shortest < 32) { - mask = ~(2 ** (8 * (32 - shortest + idx)) - 1); - } - uint256 diff = (a & mask) - (b & mask); - if (diff != 0) - return int(diff); - } - selfptr += 32; - otherptr += 32; - } - return int(self._len) - int(other._len); - } - - /* - * @dev Returns true if the two slices contain the same text. - * @param self The first slice to compare. - * @param self The second slice to compare. - * @return True if the slices are equal, false otherwise. - */ - function equals(slice memory self, slice memory other) internal pure returns (bool) { - return compare(self, other) == 0; - } - - /* - * @dev Extracts the first rune in the slice into `rune`, advancing the - * slice to point to the next rune and returning `self`. - * @param self The slice to operate on. - * @param rune The slice that will contain the first rune. - * @return `rune`. - */ - function nextRune(slice memory self, slice memory rune) internal pure returns (slice memory) { - rune._ptr = self._ptr; - - if (self._len == 0) { - rune._len = 0; - return rune; - } - - uint l; - uint b; - // Load the first byte of the rune into the LSBs of b - assembly { b := and(mload(sub(mload(add(self, 32)), 31)), 0xFF) } - if (b < 0x80) { - l = 1; - } else if(b < 0xE0) { - l = 2; - } else if(b < 0xF0) { - l = 3; - } else { - l = 4; - } - - // Check for truncated codepoints - if (l > self._len) { - rune._len = self._len; - self._ptr += self._len; - self._len = 0; - return rune; - } - - self._ptr += l; - self._len -= l; - rune._len = l; - return rune; - } - - /* - * @dev Returns the first rune in the slice, advancing the slice to point - * to the next rune. - * @param self The slice to operate on. - * @return A slice containing only the first rune from `self`. - */ - function nextRune(slice memory self) internal pure returns (slice memory ret) { - nextRune(self, ret); - } - - /* - * @dev Returns the number of the first codepoint in the slice. - * @param self The slice to operate on. - * @return The number of the first codepoint in the slice. - */ - function ord(slice memory self) internal pure returns (uint ret) { - if (self._len == 0) { - return 0; - } - - uint word; - uint length; - uint divisor = 2 ** 248; - - // Load the rune into the MSBs of b - assembly { word:= mload(mload(add(self, 32))) } - uint b = word / divisor; - if (b < 0x80) { - ret = b; - length = 1; - } else if(b < 0xE0) { - ret = b & 0x1F; - length = 2; - } else if(b < 0xF0) { - ret = b & 0x0F; - length = 3; - } else { - ret = b & 0x07; - length = 4; - } - - // Check for truncated codepoints - if (length > self._len) { - return 0; - } - - for (uint i = 1; i < length; i++) { - divisor = divisor / 256; - b = (word / divisor) & 0xFF; - if (b & 0xC0 != 0x80) { - // Invalid UTF-8 sequence - return 0; - } - ret = (ret * 64) | (b & 0x3F); - } - - return ret; - } - - /* - * @dev Returns the keccak-256 hash of the slice. - * @param self The slice to hash. - * @return The hash of the slice. - */ - function keccak(slice memory self) internal pure returns (bytes32 ret) { - assembly { - ret := keccak256(mload(add(self, 32)), mload(self)) - } - } - - /* - * @dev Returns true if `self` starts with `needle`. - * @param self The slice to operate on. - * @param needle The slice to search for. - * @return True if the slice starts with the provided text, false otherwise. - */ - function startsWith(slice memory self, slice memory needle) internal pure returns (bool) { - if (self._len < needle._len) { - return false; - } - - if (self._ptr == needle._ptr) { - return true; - } - - bool equal; - assembly { - let length := mload(needle) - let selfptr := mload(add(self, 0x20)) - let needleptr := mload(add(needle, 0x20)) - equal := eq(keccak256(selfptr, length), keccak256(needleptr, length)) - } - return equal; - } - - /* - * @dev If `self` starts with `needle`, `needle` is removed from the - * beginning of `self`. Otherwise, `self` is unmodified. - * @param self The slice to operate on. - * @param needle The slice to search for. - * @return `self` - */ - function beyond(slice memory self, slice memory needle) internal pure returns (slice memory) { - if (self._len < needle._len) { - return self; - } - - bool equal = true; - if (self._ptr != needle._ptr) { - assembly { - let length := mload(needle) - let selfptr := mload(add(self, 0x20)) - let needleptr := mload(add(needle, 0x20)) - equal := eq(keccak256(selfptr, length), keccak256(needleptr, length)) - } - } - - if (equal) { - self._len -= needle._len; - self._ptr += needle._len; - } - - return self; - } - - /* - * @dev Returns true if the slice ends with `needle`. - * @param self The slice to operate on. - * @param needle The slice to search for. - * @return True if the slice starts with the provided text, false otherwise. - */ - function endsWith(slice memory self, slice memory needle) internal pure returns (bool) { - if (self._len < needle._len) { - return false; - } - - uint selfptr = self._ptr + self._len - needle._len; - - if (selfptr == needle._ptr) { - return true; - } - - bool equal; - assembly { - let length := mload(needle) - let needleptr := mload(add(needle, 0x20)) - equal := eq(keccak256(selfptr, length), keccak256(needleptr, length)) - } - - return equal; - } - - /* - * @dev If `self` ends with `needle`, `needle` is removed from the - * end of `self`. Otherwise, `self` is unmodified. - * @param self The slice to operate on. - * @param needle The slice to search for. - * @return `self` - */ - function until(slice memory self, slice memory needle) internal pure returns (slice memory) { - if (self._len < needle._len) { - return self; - } - - uint selfptr = self._ptr + self._len - needle._len; - bool equal = true; - if (selfptr != needle._ptr) { - assembly { - let length := mload(needle) - let needleptr := mload(add(needle, 0x20)) - equal := eq(keccak256(selfptr, length), keccak256(needleptr, length)) - } - } - - if (equal) { - self._len -= needle._len; - } - - return self; - } - - // Returns the memory address of the first byte of the first occurrence of - // `needle` in `self`, or the first byte after `self` if not found. - function findPtr(uint selflen, uint selfptr, uint needlelen, uint needleptr) private pure returns (uint) { - uint ptr = selfptr; - uint idx; - - if (needlelen <= selflen) { - if (needlelen <= 32) { - bytes32 mask = bytes32(~(2 ** (8 * (32 - needlelen)) - 1)); - - bytes32 needledata; - assembly { needledata := and(mload(needleptr), mask) } - - uint end = selfptr + selflen - needlelen; - bytes32 ptrdata; - assembly { ptrdata := and(mload(ptr), mask) } - - while (ptrdata != needledata) { - if (ptr >= end) - return selfptr + selflen; - ptr++; - assembly { ptrdata := and(mload(ptr), mask) } - } - return ptr; - } else { - // For long needles, use hashing - bytes32 hash; - assembly { hash := keccak256(needleptr, needlelen) } - - for (idx = 0; idx <= selflen - needlelen; idx++) { - bytes32 testHash; - assembly { testHash := keccak256(ptr, needlelen) } - if (hash == testHash) - return ptr; - ptr += 1; - } - } - } - return selfptr + selflen; - } - - // Returns the memory address of the first byte after the last occurrence of - // `needle` in `self`, or the address of `self` if not found. - function rfindPtr(uint selflen, uint selfptr, uint needlelen, uint needleptr) private pure returns (uint) { - uint ptr; - - if (needlelen <= selflen) { - if (needlelen <= 32) { - bytes32 mask = bytes32(~(2 ** (8 * (32 - needlelen)) - 1)); - - bytes32 needledata; - assembly { needledata := and(mload(needleptr), mask) } - - ptr = selfptr + selflen - needlelen; - bytes32 ptrdata; - assembly { ptrdata := and(mload(ptr), mask) } - - while (ptrdata != needledata) { - if (ptr <= selfptr) - return selfptr; - ptr--; - assembly { ptrdata := and(mload(ptr), mask) } - } - return ptr + needlelen; - } else { - // For long needles, use hashing - bytes32 hash; - assembly { hash := keccak256(needleptr, needlelen) } - ptr = selfptr + (selflen - needlelen); - while (ptr >= selfptr) { - bytes32 testHash; - assembly { testHash := keccak256(ptr, needlelen) } - if (hash == testHash) - return ptr + needlelen; - ptr -= 1; - } - } - } - return selfptr; - } - - /* - * @dev Modifies `self` to contain everything from the first occurrence of - * `needle` to the end of the slice. `self` is set to the empty slice - * if `needle` is not found. - * @param self The slice to search and modify. - * @param needle The text to search for. - * @return `self`. - */ - function find(slice memory self, slice memory needle) internal pure returns (slice memory) { - uint ptr = findPtr(self._len, self._ptr, needle._len, needle._ptr); - self._len -= ptr - self._ptr; - self._ptr = ptr; - return self; - } - - /* - * @dev Modifies `self` to contain the part of the string from the start of - * `self` to the end of the first occurrence of `needle`. If `needle` - * is not found, `self` is set to the empty slice. - * @param self The slice to search and modify. - * @param needle The text to search for. - * @return `self`. - */ - function rfind(slice memory self, slice memory needle) internal pure returns (slice memory) { - uint ptr = rfindPtr(self._len, self._ptr, needle._len, needle._ptr); - self._len = ptr - self._ptr; - return self; - } - - /* - * @dev Splits the slice, setting `self` to everything after the first - * occurrence of `needle`, and `token` to everything before it. If - * `needle` does not occur in `self`, `self` is set to the empty slice, - * and `token` is set to the entirety of `self`. - * @param self The slice to split. - * @param needle The text to search for in `self`. - * @param token An output parameter to which the first token is written. - * @return `token`. - */ - function split(slice memory self, slice memory needle, slice memory token) internal pure returns (slice memory) { - uint ptr = findPtr(self._len, self._ptr, needle._len, needle._ptr); - token._ptr = self._ptr; - token._len = ptr - self._ptr; - if (ptr == self._ptr + self._len) { - // Not found - self._len = 0; - } else { - self._len -= token._len + needle._len; - self._ptr = ptr + needle._len; - } - return token; - } - - /* - * @dev Splits the slice, setting `self` to everything after the first - * occurrence of `needle`, and returning everything before it. If - * `needle` does not occur in `self`, `self` is set to the empty slice, - * and the entirety of `self` is returned. - * @param self The slice to split. - * @param needle The text to search for in `self`. - * @return The part of `self` up to the first occurrence of `delim`. - */ - function split(slice memory self, slice memory needle) internal pure returns (slice memory token) { - split(self, needle, token); - } - - /* - * @dev Splits the slice, setting `self` to everything before the last - * occurrence of `needle`, and `token` to everything after it. If - * `needle` does not occur in `self`, `self` is set to the empty slice, - * and `token` is set to the entirety of `self`. - * @param self The slice to split. - * @param needle The text to search for in `self`. - * @param token An output parameter to which the first token is written. - * @return `token`. - */ - function rsplit(slice memory self, slice memory needle, slice memory token) internal pure returns (slice memory) { - uint ptr = rfindPtr(self._len, self._ptr, needle._len, needle._ptr); - token._ptr = ptr; - token._len = self._len - (ptr - self._ptr); - if (ptr == self._ptr) { - // Not found - self._len = 0; - } else { - self._len -= token._len + needle._len; - } - return token; - } - - /* - * @dev Splits the slice, setting `self` to everything before the last - * occurrence of `needle`, and returning everything after it. If - * `needle` does not occur in `self`, `self` is set to the empty slice, - * and the entirety of `self` is returned. - * @param self The slice to split. - * @param needle The text to search for in `self`. - * @return The part of `self` after the last occurrence of `delim`. - */ - function rsplit(slice memory self, slice memory needle) internal pure returns (slice memory token) { - rsplit(self, needle, token); - } - - /* - * @dev Counts the number of nonoverlapping occurrences of `needle` in `self`. - * @param self The slice to search. - * @param needle The text to search for in `self`. - * @return The number of occurrences of `needle` found in `self`. - */ - function count(slice memory self, slice memory needle) internal pure returns (uint cnt) { - uint ptr = findPtr(self._len, self._ptr, needle._len, needle._ptr) + needle._len; - while (ptr <= self._ptr + self._len) { - cnt++; - ptr = findPtr(self._len - (ptr - self._ptr), ptr, needle._len, needle._ptr) + needle._len; - } - } - - /* - * @dev Returns True if `self` contains `needle`. - * @param self The slice to search. - * @param needle The text to search for in `self`. - * @return True if `needle` is found in `self`, false otherwise. - */ - function contains(slice memory self, slice memory needle) internal pure returns (bool) { - return rfindPtr(self._len, self._ptr, needle._len, needle._ptr) != self._ptr; - } - - /* - * @dev Returns a newly allocated string containing the concatenation of - * `self` and `other`. - * @param self The first slice to concatenate. - * @param other The second slice to concatenate. - * @return The concatenation of the two strings. - */ - function concat(slice memory self, slice memory other) internal pure returns (string memory) { - string memory ret = new string(self._len + other._len); - uint retptr; - assembly { retptr := add(ret, 32) } - memcpy(retptr, self._ptr, self._len); - memcpy(retptr + self._len, other._ptr, other._len); - return ret; - } - - /* - * @dev Joins an array of slices, using `self` as a delimiter, returning a - * newly allocated string. - * @param self The delimiter to use. - * @param parts A list of slices to join. - * @return A newly allocated string containing all the slices in `parts`, - * joined with `self`. - */ - function join(slice memory self, slice[] memory parts) internal pure returns (string memory) { - if (parts.length == 0) - return ""; - - uint length = self._len * (parts.length - 1); - for(uint i = 0; i < parts.length; i++) - length += parts[i]._len; - - string memory ret = new string(length); - uint retptr; - assembly { retptr := add(ret, 32) } - - for(i = 0; i < parts.length; i++) { - memcpy(retptr, parts[i]._ptr, parts[i]._len); - retptr += parts[i]._len; - if (i < parts.length - 1) { - memcpy(retptr, self._ptr, self._len); - retptr += self._len; - } - } - - return ret; - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/ConstructorDefaultVisibility.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/ConstructorDefaultVisibility.sol" deleted file mode 100644 index f0de8f3729..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/ConstructorDefaultVisibility.sol" +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.4.26; - -/** - * 1. 0.4.25版本验证使用constrictor关键字定义构造函数,但是不强制声明可见性(默认为public可见性) - * 2. 0.4.25版本同一继承层次结构中允许多次指定基类构造函数参数验证: - * (1) 允许合约直接声明构造函数 ———— is Base(7) - * (2)子合约构造函数继承父合约构造函数———— constructor(uint _y) Base(_y * _y) - * 两种引用构造函数方式共存时,合约优先选择(2)方式 - * @author Albedo - * @dev 2019/12/23 - **/ -contract BaseDefault { - uint x; - constructor(uint _x) public { x = _x; } -} -//(1) 允许合约直接声明构造函数Base(7) -contract ConstructorDefaultVisibility is BaseDefault(7) { - uint outI; - //(2)子合约构造函数继承父合约构造函数———— constructor(uint _y) Base(_y * _y) - constructor(uint _y) BaseDefault(_y * _y) {outI=_y;} - - function getOutI() public view returns (uint) { - return outI; - } - -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/ConstructorInternalVisibility.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/ConstructorInternalVisibility.sol" deleted file mode 100644 index fe8d3f3336..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/ConstructorInternalVisibility.sol" +++ /dev/null @@ -1,29 +0,0 @@ -pragma solidity ^0.4.26; -/** - * 1. 0.4.25版本验证使用constructor关键字定义构造函数,使用internal声明可见性 - * 2. 0.4.25版本验证子合约直接声明父合约构造函数,但是构造函数参数与父合约不一致 - * 如:父合约:constructor(uint _x) 子合约:is Base() - * @author Albedo - * @dev 2019/12/23 - **/ - -contract BaseInternal { - uint x; - constructor(uint _x) public {x = _x;} -} -// 验证点:(1) 允许合约直接声明构造函数但参数与父合约不一致————子合约编译可以通过,但是在evm中无法部署 -// 0.4.x Base(7) 如果改成 Base(),编译可以通过,但是无法部署;0.5.x Base(7) 如果改成 Base(),直接编译报错; -// --- 增强了编译阶段的语法校验能力 -// contract ConstructorInternalVisibility is Base() -// evm返回 This contract may be abstract, not implement an abstract parent's methods completely -// or not invoke an inherited contract's constructor correctly. -contract ConstructorInternalVisibility is BaseInternal(7) { - uint outI; - //constructor声明构造函数,允许internal可见性 - constructor(uint _y) {outI = _y;} - - function getOutI() public view returns (uint) { - return outI; - } - -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/ConstructorPublicVisibility.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/ConstructorPublicVisibility.sol" deleted file mode 100644 index 99bca33026..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/ConstructorPublicVisibility.sol" +++ /dev/null @@ -1,77 +0,0 @@ -pragma solidity ^0.4.26; - -/** - * 1. constructor声明构造函数,public可见性验证; - * 2. 允许调用没有括号的基类构造函数验证 - * 3. ,0.4.25支持语法(0.5.X版本已弃用)覆盖验证 - * (1)0.4.25版本允许未实现的函数使用修饰符(modifier)验证() - * (2)0.4.25版本允许布尔变量使用算术运算验证 - * (3)0.4.25版本允许使用一元运算符"+"验证 - * (4)0.4.25版本允许在if包含的块中使用单个语句声明/定义变量验证 - * (5)0.4.25版本允许在while包含的块中使用单个语句声明/定义变量验证使用算术原酸运算符 - * (6)0.4.25版本允许在for包含的块中使用单个语句声明/定义变量验证 - * (7)0.4.25版本允许具有一个或多个返回值的函数使用空返回语句验证 - * (8)0.4.25版本允许具有一个或多个返回值的函数使用空返回语句验证 - * 4. 0.4.25版本允许constant用作修饰函数状态可变性验证 - * 5. 0.4.25版本允许定义具有命名返回值的函数类型验证 - * 6. 0.4.25版本允许 msg.value用在非 payable函数里以及此函数的修饰符(modifier)里验证 - * @author Albedo - * @dev 2019/12/23 - **/ - -//0.4.25版本允许未实现的函数使用修饰符(modifier)验证 -contract BasePublic { - uint x; - modifier preMethod { - x = 123; - _; - } - //允许未实现的函数使用修饰符(modifier) - function abstractFunction() public view preMethod returns (uint); - -} - -contract ConstructorPublicVisibility is BasePublic { - uint outI; - constructor(uint _y) public {outI = _y;} - function abstractFunction() public view preMethod returns (uint){ - outI = outI + x; - return outI; - } - - function getOutI() public view returns (uint) { - return outI; - } - //弃用语法验证 - function grammarCheck() public view returns (uint, uint){ - //0.4.25版本允许布尔变量使用算术运算验证 - bool evenFlag = true; - bool evenFlag1 = false; - //实际验证不可行 - // bool result = evenFlag + evenFlag1; - //0.4.25版本允许使用一元运算符"+"验证 - uint value = + 1; - //0.4.25版本允许在if包含的块中使用单个语句声明/定义变量验证 - if (evenFlag) {uint ifVar = 1;} - //0.4.25版本允许在while包含的块中使用单个语句声明/定义变量验证使用算术原酸运算符 - while (evenFlag1) {uint whileVal = 1;} - //0.4.25版本允许在for包含的块中使用单个语句声明/定义变量验证 - for (uint i = 0; i < 2; i++) {uint forVal = 1;} - //0.4.25版本允许具有一个或多个返回值的函数使用空返回语句验证 - return; - } - - //0.4.25版本允许constant用作修饰函数状态可变性验证 - function constantCheck() public constant returns (uint) { - return outI; - } - - - //0.4.25版本允许定义具有命名返回值的函数类型验证 - function namedReturn(uint a, uint b) public view returns (uint add){ - add = a + b; - } - - //0.4.25版本允许 msg.value用在非 payable函数里以及此函数的修饰符(modifier)里验证 - function show() public view returns (uint) {return msg.value;} -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/SameNameConstructorDefaultVisibility.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/SameNameConstructorDefaultVisibility.sol" deleted file mode 100644 index dbce59159c..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/SameNameConstructorDefaultVisibility.sol" +++ /dev/null @@ -1,57 +0,0 @@ -pragma solidity ^0.4.26; - -/** - * 1.0.4.25版本验证同名函数构造函数定义,可见性未声明(默认public可见性)验证; - * 2.函数可见性非强制声明验证。5种函数 - * (1) 函数默认可见性声明 - * (2) 函数public可见性声明 - * (3) 函数external可见性声明 - * (4) 函数internal可见性声明 - * (5) 函数private可见性声明 - * @author Albedo - * @dev 2019/12/19 - **/ -contract SameNameConstructorDefaultVisibility { - uint256 conParam; - //同名函数构造函数,默认可见性 - function SameNameConstructorVisibility(uint256 param) { - conParam = param; - } - //默认可见性 - function defaultVisibility(uint256 param) view returns (uint256){ - conParam = param; - return conParam; - } - - //public可见性 - function publicVisibility(uint256 param) public view returns (uint256){ - conParam = param; - return conParam; - } - //external可见性 - function externalVisibility(uint256 param) external view returns (uint256){ - conParam = param; - return conParam; - } - //internal可见性 - function internalVisibility(uint256 param) internal view returns (uint256){ - conParam = param; - return conParam; - } - //private可见性 - function privateVisibility(uint256 param) private returns (uint256){ - conParam = param; - return conParam; - } - - //private可见性验证 - function privateVisibilityCheck(uint256 param) public view returns (uint256){ - return privateVisibility(param); - } - - //private可见性验证 - function internalVisibilityCheck(uint256 param) public view returns (uint256){ - return internalVisibility(param); - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/SameNameConstructorInternalVisibility.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/SameNameConstructorInternalVisibility.sol" deleted file mode 100644 index 351f3a40e7..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/SameNameConstructorInternalVisibility.sol" +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.4.26; - -/** - * 1. 0.4.25版本同名函数构造函数定义,声明internal可见性验证; - * 2. 0.4.25版本接口(interface)函数支持external和public两种可见性,可见性声明非必须验证 - * (1)默认可见性(默认public)函数声明 - * (2)public可见性函数声明 - * (3)external可见性声明 - * 3. 0.4.25版本支持,但0.5.x已弃用变量验证 - * (1)0.4.25版本允许声明0长度的定长数组类型 - * (2)0.4.25版本允许声明0结构体成员的结构体类型 - * (3)0.4.25版本允许定义非编译期常量的 constant常量 - * (4)0.4.25版本允许使用空元组组件 - * (5)0.4.25版本允许声明未初始化的storage变量 - * (6)0.4.25版本允许使用var - * @author Albedo - * @dev 2019/12/19 - **/ -interface VisibilityInterface { - //默认可见性 - function defaultVisibility(); - //public可见性 - function publicVisibility() public; - //external可见性 - function externalVisibility() external; -} - -contract SameNameConstructorInternalVisibility { - uint256 conParam; - //声明0长度的定长数组类型 - int256[0] zeroArr; - //声明0结构体成员的结构体类型 - struct ZeroStruct {} - //允许定义非编译期常量的 constant常量 - uint constant time = 1; - - struct UnInitialized { - int age; - string name; - } - //同名函数构造函数,internal可见性 - function SameNameConstructorPublicVisibility(uint256 param) internal { - conParam = param; - } - //弃用字面量及后缀整体覆盖验证 - function discardVariable() public view returns (uint, uint, uint){ - //允许使用空元组组件验证 - uint x; - uint y; - (x,) = (1,); - //允许声明未初始化的storage变量 - UnInitialized storage unInitialized; - //使用var - var i = 1; - return (x, y, i); - } - -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/SameNameConstructorPublicVisibility.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/SameNameConstructorPublicVisibility.sol" deleted file mode 100644 index 71352ca44f..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/1.\346\236\204\351\200\240\345\207\275\346\225\260\345\222\214\345\217\257\350\247\201\346\200\247\351\252\214\350\257\201/SameNameConstructorPublicVisibility.sol" +++ /dev/null @@ -1,41 +0,0 @@ -pragma solidity ^0.4.26; -/** - * 1. 0.4.25版本同名函数构造函数定义,声明public可见性验证(0.5.x版本弃用同名函数定义构造函数); - * 2. 0.4.25版本fallback函数可见性非强制声明(默认public可见性)验证 - * 3. 0.4.25版本支持字面量及后缀(0.5.x版本已弃用)验证 - * (1)0.4.25版本支持year时间单位 - * (2)0.4.25版本允许小数点后不跟数字的数值写法 - * (3)0.4.25版本十六进制数字支持带“0X”和“0x”等2种前缀表示 - * (4)0.4.25版本支持十六进制数与以太币单位组合 - * - * @author Albedo - * @dev 2019/12/19 - **/ -contract SameNameConstructorPublicVisibility { - uint256 conParam; - //同名函数构造函数,public可见性 - function SameNameConstructorPublicVisibility(uint256 param) public { - conParam=param; - } - //弃用字面量及后缀整体覆盖验证 - function discardLiteralsAndSuffixes() public view returns (uint,uint,uint,uint,uint,uint){ - //0.4.25版本years时间单位支持验证 - uint time = 1 years; - //0.4.25版本允许小数点后不跟数字的数值写法验证 -// uint ethPoint=255. lat; - uint ethPoint=255. atp; - //0.4.25版本十六进制数字支持带“0X”和“0x”等2种前缀表示验证 - uint hexX=0Xff; - uint hexx=0xff; - //0.4.25版本支持十六进制数与以太币单位组合验证 -// uint hexEther=0xff lat; - uint hexEther=0xff atp; - return (conParam,time,ethPoint,hexX,hexx,hexEther); - } - - - //fallback函数可见性非强制声明验证 - function (){ - - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/2.\347\261\273\345\236\213\350\275\254\346\215\242\351\252\214\350\257\201/TypeCast.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/2.\347\261\273\345\236\213\350\275\254\346\215\242\351\252\214\350\257\201/TypeCast.sol" deleted file mode 100644 index 44d0d6a450..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/2.\347\261\273\345\236\213\350\275\254\346\215\242\351\252\214\350\257\201/TypeCast.sol" +++ /dev/null @@ -1,22 +0,0 @@ -pragma solidity ^0.4.26; - -/** - * 0.4.25版本支持类型转换(0.5.x版本已弃用)验证 - * (1)0.4.25版本bytesX和uintY支持直接转换 - * (2)0.4.25版本10进制数值可以直接转换成 bytesX类型 - * (3)0.4.25版本16进制数值如果长度与 bytesX不相等,能直接转换成 bytesX类型 - * @author Albedo - * @dev 2019/12/23 - **/ -contract TypeCast { - function typeCast() public view returns (uint16, bytes4, bytes4){ - //0.4.25版本bytesX和uintY支持直接转换验证 - bytes2 a = 0x12; - uint16 b = uint16(a); //16进制转换成10进制,b的值为18 - //0.4.25版本10进制数值可以直接转换成 bytesX类型验证 - bytes4 c = bytes4(1234); //转换成16进制 0x000004d2 - //0.4.25版本16进制数值如果长度与 bytesX不相等,能直接转换成 bytesX类型验证 - bytes4 d = bytes4(0x1234); //类型转换 0x00001234 - return (b, c, d); - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/3.\345\274\203\347\224\250\345\207\275\346\225\260\351\252\214\350\257\201/DeprecatedFunctions.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/3.\345\274\203\347\224\250\345\207\275\346\225\260\351\252\214\350\257\201/DeprecatedFunctions.sol" deleted file mode 100644 index 0dd8a821aa..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/3.\345\274\203\347\224\250\345\207\275\346\225\260\351\252\214\350\257\201/DeprecatedFunctions.sol" +++ /dev/null @@ -1,39 +0,0 @@ -pragma solidity ^0.4.26; - -/** - * 验证0.5.0版本弃用但0.4.25版本仍生效函数 - * 1.callcode()(0.5.0版本已弃用,使用delegatecall()函数代替) 验证 - * 2.suicide() (0.5.0版本已弃用,使用selfdestruct()函数替用)验证 - * 3.sha3() (0.5.0版本已弃用,使用keccak256()函数代替)验证 - * 4.throw (0.5.0版本已弃用,使用异常函数验证)验证 - * @author Albedo - * @dev 2019/12/19 - **/ -contract DeprecatedFunctions { - function functionCheck() public view returns (bool, bytes32){ -// address _to = "lax1eg6m0kg4gk802s9ducrgml30gn505ueuswqu73"; - address _to = "atx1eg6m0kg4gk802s9ducrgml30gn505ueuvmcpum"; -// address _from = "lax16f0dq2wqj0jkhjy3rgruge29qqxt7d7x4zvmg4"; // lat16f0dq2wqj0jkhjy3rgruge29qqxt7d7x6875x6 - address _from = "atx16f0dq2wqj0jkhjy3rgruge29qqxt7d7xfh5x2l"; // atp16f0dq2wqj0jkhjy3rgruge29qqxt7d7xr3gve4 - //callcode() 验证 - bool callcodeResult = _from.callcode(_to); - //sha3() 验证 - bytes32 strbytes = sha3("wangzhangxiong"); - //返回 false,0x49a40597e20d39bf568fe3296189c2d963951969c41761aabb19c402f8231695 - return (callcodeResult, strbytes); - - } - - function throwCheck(bool param) public view returns (bool) { - //throw 验证 - if (!param) {throw;} - return param; - } - - function kill() public { -// address _to = "lax1eg6m0kg4gk802s9ducrgml30gn505ueuswqu73"; // lat1eg6m0kg4gk802s9ducrgml30gn505ueultjns7 - address _to = "atx1eg6m0kg4gk802s9ducrgml30gn505ueuvmcpum"; // atp1eg6m0kg4gk802s9ducrgml30gn505ueuxayt03 - //suicide() 验证 - suicide(_to); - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/4.\345\255\230\345\202\250\344\275\215\347\275\256\351\252\214\350\257\201/StorageLocation.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/4.\345\255\230\345\202\250\344\275\215\347\275\256\351\252\214\350\257\201/StorageLocation.sol" deleted file mode 100644 index d9083d4707..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/4.\345\255\230\345\202\250\344\275\215\347\275\256\351\252\214\350\257\201/StorageLocation.sol" +++ /dev/null @@ -1,36 +0,0 @@ -pragma solidity ^0.4.26; - -/** - * 存储位置验证; - * (1)0.4.25版本结构体(struct)、数组(array)、映射(mapping)等类型的变量不必显式声明存储位置验证 - * (2)0.4.25版本函数参数变量为数组(array)类型不须显式声明验证 - * (3)0.4.25版本external 的函数的数组(array)类型参数不需显式声明为 calldata验证 - * @author Albedo - * @dev 2019/12/24 - **/ -contract StorageLocation { - bytes data; - - //0.4.25版本结构体(struct)类型的变量不必显式声明存储位置验证 - struct Person{ - string name; - int8 age; - int16 high; - } - //0.4.25版本映射(mapping)类型的变量不必显式声明存储位置验证 - mapping(address=>bytes) addValue; - - - //0.4.25版本函数参数变量为数组(array)类型不须显式声明验证 - function storageLocaltionCheck(bytes _data) public view returns (bytes){ - addValue[msg.sender] =_data; - return addValue[msg.sender]; - } - - - //0.4.25版本external 的函数的数组(array)类型参数不需显式声明为 calldata验证 - function transfer(bytes _data) external view returns (bytes){ - data=_data; - return data; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/5.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200\347\233\270\345\205\263\351\252\214\350\257\201/ContractAndAddressFunction.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/5.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200\347\233\270\345\205\263\351\252\214\350\257\201/ContractAndAddressFunction.sol" deleted file mode 100644 index 6c90314737..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/5.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200\347\233\270\345\205\263\351\252\214\350\257\201/ContractAndAddressFunction.sol" +++ /dev/null @@ -1,32 +0,0 @@ -pragma solidity ^0.4.26; - -/** - * 0.4.25版本合约和地址成员变量/函数验证 - * 1.0.4.25版本contract合约类型包括 address类型的成员函数,可以直接使用 send()成员函数验证 - * 2.0.4.25版本contract合约类型包括 address类型的成员函数,可以直接使用 transfer()成员函数验证 - * 3.0.4.25版本contract合约类型包括 address类型的成员函数,可以直接使用 balance成员变量验证 - * 4.0.4.25版本msg.sender类型所属验证 - * @author Albedo - * @dev 2019/12/24 - **/ -contract ContractAndAddressFunction { - - function addressCheck() public view returns (address,uint256,uint256) { -// address x = "lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqfreqpsmj"; //0x123、lat1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqfrk9nl4a - address x = "atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqfr94edec"; //0x123、lat1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqfrk9nl4a - address myAddress = this; - //0.4.25版本contract合约类型包括 address类型的成员函数,可以直接使用 balance成员变量验证 - if (x.balance < 10 && myAddress.balance >= 10) - { - //0.4.25版本contract合约类型包括 address类型的成员函数,可以直接使用 transfer()成员函数验证 - x.transfer(10); - //0.4.25版本contract合约类型包括 address类型的成员函数,可以直接使用 send()成员函数验证 - x.send(10); - } - - //0.4.25版本msg.sender类型所属验证 - address sender=msg.sender; - return (sender,myAddress.balance,x.balance); - } - function() payable external {} -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/6.\351\207\215\345\244\247bug\351\252\214\350\257\201/DoWhileCheck.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/6.\351\207\215\345\244\247bug\351\252\214\350\257\201/DoWhileCheck.sol" deleted file mode 100644 index 14f6c12bd3..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/2.version_compatible/0_4_25/6.\351\207\215\345\244\247bug\351\252\214\350\257\201/DoWhileCheck.sol" +++ /dev/null @@ -1,32 +0,0 @@ -pragma solidity ^0.4.26; - -/** - * 1. 0.4.25版本do...while循环里的continue跳转到循环体内,可能会产生死循环验证 - * 2. 0.4.25版本局部变量上级作用域生效验证 - * @author Albedo - * @dev 2019/12/24 - **/ -contract DoWhileCheck { - function doWhileCheck() public view returns (uint256,uint256){ - uint count=0; - uint a=0; - //0.4.25版本do...while循环里的continue跳转到循环体内,可能会产生死循环验证 - do { - count++; - a++; - if(a > 20){ - break; - } - //因为continue会直接跳回到do处,所以count和a都会自增,直到a到21时通过break跳出整个循环 - //因此,此时的count的值也是21 - if(count>10) continue; - }while(count<30); - - //0.4.25版本局部变量上级作用域生效验证 - if(count==21){ - uint c=12; - } - c=14; - return (count,c); //输出(21,14) - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/3.data_type/AddressBalance.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/3.data_type/AddressBalance.sol deleted file mode 100644 index 68aa697d67..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/3.data_type/AddressBalance.sol +++ /dev/null @@ -1,7 +0,0 @@ -pragma solidity ^0.4.26; - -contract AddressBalance { - function balanceOfPlatON(address user) public constant returns (uint256) { - return user.balance; - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/7.event/Eventer.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/7.event/Eventer.sol deleted file mode 100644 index fc8fb7eee1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.4.26/7.event/Eventer.sol +++ /dev/null @@ -1,12 +0,0 @@ -pragma solidity >=0.4.26; - -contract Eventer { - - event TestInt8(int8 indexed out1, int8 indexed out2); - event AnonEvent(address, address); - - function getEvent() public { - // set to 2,3 for functioning filter - emit TestInt8(-2, -3); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/0.complex_contracts/Ballot.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/0.complex_contracts/Ballot.sol deleted file mode 100644 index 3d6a104dec..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/0.complex_contracts/Ballot.sol +++ /dev/null @@ -1,66 +0,0 @@ -pragma solidity ^0.5.17; - -contract Ballot { - struct Voter { - uint weight; - bool voted; - uint8 vote; - address delegate; - } - struct Proposal { - uint voteCount; - } - - address chairperson; - mapping(address => Voter) voters; - Proposal[] proposals; - - /// Create a new ballot with $(_numProposals) different proposals. - constructor(uint8 _numProposals) public { - chairperson = msg.sender; - voters[chairperson].weight = 1; - proposals.length = _numProposals; - } - - /// Give $(toVoter) the right to vote on this ballot. - /// May only be called by $(chairperson). - function giveRightToVote(address toVoter) public { - if (msg.sender != chairperson || voters[toVoter].voted) return; - voters[toVoter].weight = 1; - } - - /// Delegate your vote to the voter $(to). - function delegate(address to) public { - Voter storage sender = voters[msg.sender]; // assigns reference - if (sender.voted) return; -// while (voters[to].delegate != address("lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmscn5j") && voters[to].delegate != msg.sender) - while (voters[to].delegate != address("atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc") && voters[to].delegate != msg.sender) - to = voters[to].delegate; - if (to == msg.sender) return; - sender.voted = true; - sender.delegate = to; - Voter storage delegateTo = voters[to]; - if (delegateTo.voted) - proposals[delegateTo.vote].voteCount += sender.weight; - else - delegateTo.weight += sender.weight; - } - - /// Give a single vote to proposal $(toProposal). - function vote(uint8 toProposal) public { - Voter storage sender = voters[msg.sender]; - if (sender.voted || toProposal >= proposals.length) return; - sender.voted = true; - sender.vote = toProposal; - proposals[toProposal].voteCount += sender.weight; - } - - function winningProposal() public view returns (uint8 _winningProposal) { - uint256 winningVoteCount = 0; - for (uint8 prop = 0; prop < proposals.length; prop++) - if (proposals[prop].voteCount > winningVoteCount) { - winningVoteCount = proposals[prop].voteCount; - _winningProposal = prop; - } - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/0.complex_contracts/ERC20_0_5_13/ERC200513Token.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/0.complex_contracts/ERC20_0_5_13/ERC200513Token.sol deleted file mode 100644 index aca50bde6b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/0.complex_contracts/ERC20_0_5_13/ERC200513Token.sol +++ /dev/null @@ -1,195 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * ERC20 0.5.13版本验证 - * - * - * @author hudenian - * @dev 2019/12/23 - **/ -contract ERC200513Token { - string public name; // ERC20标准--代币名称 - string public symbol; // ERC20标准——代币简称 - uint8 public decimals = 18; // ERC20标准,decimals 可以有的小数点个数,最小的代币单位。18 是建议的默认值 - uint256 public totalSupply; // ERC20标准 总供应量 - - // 用mapping保存每个地址对应的余额 ERC20标准 - mapping(address => uint256) public balanceOf; - // 存储对账号的控制 ERC20标准 - mapping(address => mapping(address => uint256)) public allowance; - - // 事件,用来通知客户端交易发生 ERC20标准 - event Transfer(address indexed from, address indexed to, uint256 value); - - // 事件,用来通知客户端代币被消费 ERC20标准 - event Burn(address indexed from, uint256 value); - - /** - * 初始化构造 - */ - constructor(uint256 initialSupply, string memory tokenName, string memory tokenSymbol) public { - totalSupply = initialSupply * 10 ** uint256(decimals); - // 供应的份额,份额跟最小的代币单位有关,份额 = 币数 * 10 ** decimals。 - balanceOf[msg.sender] = totalSupply; - // 创建者拥有所有的代币 - name = tokenName; - // 代币名称 - symbol = tokenSymbol; - // 代币符号 - } - /** - * 返回代币的名称 - */ - function getName() view public returns (string memory){ - return name; - } - - /** - * 返回代币的简称 - */ - function getSymbol() view public returns (string memory){ - return symbol; - } - /** - * 返回代币最小分割量 - */ - function getDecimals() public view returns (uint8){ - return decimals; - } - - function getTotalSupply() public view returns (uint256 theTotalSupply) { - //函数声明中已经定义了返回变量theTotalSupply - theTotalSupply = totalSupply; - return theTotalSupply; - } - - function getBalanceOf(address _owner) public view returns (uint256 balance) { - //返回指定地址的通证余额 - return balanceOf[_owner]; - } - /** - * 代币交易转移的内部实现 - */ - function _transfer(address _from, address _to, uint _value) internal returns (bool success){ - // 确保目标地址不为0x0,因为0x0地址代表销毁 -// require(_to != address("lat1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq542u6a") || _to != address("lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmscn5j")); - require(_to != address("atp1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqdruy9j") || _to != address("atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc")); - // 检查发送者余额 - require(balanceOf[_from] >= _value); - // 确保转移为正数个 - require(balanceOf[_to] + _value > balanceOf[_to]); - - // 以下用来检查交易, - uint previousBalances = balanceOf[_from] + balanceOf[_to]; - // Subtract from the sender - balanceOf[_from] -= _value; - // Add the same to the recipient - balanceOf[_to] += _value; - emit Transfer(_from, _to, _value); - - // 用assert来检查代码逻辑。 - return (balanceOf[_from] + balanceOf[_to] == previousBalances); - } - - /** - * 代币交易转移 - * 从自己(创建交易者)账号发送`_value`个代币到 `_to`账号 - * ERC20标准 - * @param _to 接收者地址 - * @param _value 转移数额 - */ - function transfer(address _to, uint256 _value) public returns (bool success){ - return _transfer(msg.sender, _to, _value); - } - - /** - * 账号之间代币交易转移 - * ERC20标准 - * @param _from 发送者地址 - * @param _to 接收者地址 - * @param _value 转移数额 - */ - function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) { - require(_value <= allowance[_from][msg.sender]); - // Check allowance - allowance[_from][msg.sender] -= _value; - _transfer(_from, _to, _value); - return true; - } - - /** - * 设置某个地址(合约)可以创建交易者名义花费的代币数。 - * - * 允许发送者`_spender` 花费不多于 `_value` 个代币 - * ERC20标准 - * @param _spender The address authorized to spend - * @param _value the max amount they can spend - */ - function approve(address _spender, uint256 _value) public - returns (bool success) { - allowance[msg.sender][_spender] = _value; - return true; - } - - /** - * 设置允许一个地址(合约)以我(创建交易者)的名义可最多花费的代币数。 - *-非ERC20标准 - * @param _spender 被授权的地址(合约) - * @param _value 最大可花费代币数 - * @param _extraData 发送给合约的附加数据 - */ - // function approveAndCall(address _spender, uint256 _value, bytes memory _extraData) public returns (bool success) { - // tokenRecipient spender = tokenRecipient(_spender); - // if (approve(_spender, _value)) { - // // 通知合约 - // spender.receiveApproval(msg.sender, _value, address(this), _extraData); - // return true; - // } - // } - - /** - * - * 获取_spender可以从账户_owner中转出token的剩余数量 - */ - function getAllowance(address _owner, address _spender) public view returns (uint remaining){ - return allowance[_owner][_spender]; - } - - /** - * 销毁我(创建交易者)账户中指定个代币 - *-非ERC20标准 - */ - function burn(uint256 _value) public returns (bool success) { - require(balanceOf[msg.sender] >= _value); - // Check if the sender has enough - balanceOf[msg.sender] -= _value; - // Subtract from the sender - totalSupply -= _value; - // Updates totalSupply - emit Burn(msg.sender, _value); - return true; - } - - /** - * 销毁用户账户中指定个代币 - *-非ERC20标准 - * Remove `_value` tokens from the system irreversibly on behalf of `_from`. - * - * @param _from the address of the sender - * @param _value the amount of money to burn - */ - function burnFrom(address _from, uint256 _value) public returns (bool success) { - require(balanceOf[_from] >= _value); - // Check if the targeted balance is enough - require(_value <= allowance[_from][msg.sender]); - // Check allowance - balanceOf[_from] -= _value; - // Subtract from the targeted balance - allowance[_from][msg.sender] -= _value; - // Subtract from the sender's allowance - totalSupply -= _value; - // Update totalSupply - emit Burn(_from, _value); - return true; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/01Parameters_and_Returns/FunctionParam.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/01Parameters_and_Returns/FunctionParam.sol deleted file mode 100644 index 41d837f1a5..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/01Parameters_and_Returns/FunctionParam.sol +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * 验证入参是函数的使用,来自官方case - * @author liweic - * @dev 2020/01/11 20:09 - */ - -library G { - function g(function() internal returns (uint) _t) internal returns (uint) { - return _t(); - } -} -contract FunctionParam { - using G for *; - function g(function() internal returns (uint) _t) internal returns (uint) { - return _t(); - } - - function f() public returns (uint) { - return t.g(); - } - function t() public pure returns (uint) { - return 7; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/01Parameters_and_Returns/PramaAndReturns.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/01Parameters_and_Returns/PramaAndReturns.sol deleted file mode 100644 index b7d9492936..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/01Parameters_and_Returns/PramaAndReturns.sol +++ /dev/null @@ -1,66 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * 验证单一输入、输出参数类型uint - * 验证函数无返回值 - * 验证未使用参数可以省略参数名 - * 验证入参和出参均为数组 - * 验证返回值为字符串 - * 验证多个返回值且返回类型是数组 - * @author liweic - * @dev 2019/12/28 19:09 - */ - -contract PramaAndReturns { - string greeting = "What's up man"; - - uint public s ; - - //入参出参均为uint - function InputParam(uint a) public view returns(uint b){ - b = a; - return b; - } - - //无返回值 - function NoOutput(uint a, uint b) public { - s = a; - } - - //验证函数NoOutput是否调用成功 - function getS() public view returns(uint){ - return s; - } - - //未使用参数可以省略参数名 - function OmitParam(uint y, uint) public pure returns(uint) { - return y; - } - - //入参和出参均为数组 - function IuputArray(uint[3] memory y) public view returns (uint[3] memory){ - y[2] = 3; - return y; - } - - //返回值为字符串 - function OuputString() public view returns (string memory) { - return greeting; - } - - //多个返回值且返回类型是数组 - function OuputArrays() public pure returns(uint[] memory, uint[] memory) { - - uint[] memory localMemoryArray1 = new uint[](3); - localMemoryArray1[0] = 1; - localMemoryArray1[1] = 2; - localMemoryArray1[2] = 3; - - uint[] memory localMemoryArray2 = localMemoryArray1; - localMemoryArray1[0] = 10; - - return (localMemoryArray1, localMemoryArray2); - //returns 1,2,3 | 10,2,3 - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/ABIFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/ABIFunctions.sol deleted file mode 100644 index cd9f22739d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/ABIFunctions.sol +++ /dev/null @@ -1,19 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证ABI编解码相关的函数 - * @author liweic - * @dev 2019/12/27 20:10 - */ -contract ABIFunctions { - function getEncodeWithSignature() public view returns (bytes memory) { - return abi.encodeWithSignature("set(uint256)", 1); //计算函数set(uint256) 及参数1 的ABI 编码 - } - - function getEncode() public view returns (bytes memory) { - return abi.encode(1); //计算参数 1 的ABI 编码 - } - - function getEncodePacked() public view returns (bytes memory) { - return abi.encodePacked("1"); //计算参数 1 的紧密打包编码 - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/AddressFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/AddressFunctions.sol deleted file mode 100644 index d2bcb635d2..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/AddressFunctions.sol +++ /dev/null @@ -1,29 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证address的查余额方法banlance和转账方法send,transfer - * 验证合约关键字this - * @author liweic - * @dev 2019/12/28 10:10 - */ - -contract AddressFunctions { - - //获取地址的余额 - function getBalance(address addr) view public returns (uint){ - return addr.balance; - } - - //当前合约的余额 - function getBalanceOf() view public returns (uint){ - return address(this).balance; - } - - function transfer(address payable addr) public payable{ - addr.transfer(msg.value); - } - - function send(address payable addr) public payable returns(bool success){ - return addr.send(1); - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/BlockTransactionPropertiesFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/BlockTransactionPropertiesFunctions.sol deleted file mode 100644 index 7c4306d5b6..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/BlockTransactionPropertiesFunctions.sol +++ /dev/null @@ -1,79 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证区块和交易属性的内置函数 - * @author liweic - * @dev 2019/12/27 19:10 - */ - -contract BlockTransactionPropertiesFunctions { - - function getBlockhash(uint blockNumber) public view returns (bytes32) { - // 获取指定区块的区块哈希 - return blockhash(blockNumber); - } - - function getBlockCoinbase() public view returns(address) { - // 获取当前块矿工的地址 - return block.coinbase; - } - - function getBlockDifficulty() public view returns(uint) { - // 获取当前块的难度 - return block.difficulty; - } - - function getGaslimit() public view returns(uint) { - // 获取当前区块 gas 限额 - return block.gaslimit; - } - - function getBlockNumber() public view returns(uint) { - // 获取当前区块的块高 - return block.number; - } - - function getBlockTimestamp() public view returns(uint) { - // 获取当前块的Unix时间戳 - return block.timestamp; - } - - function getData() public view returns(bytes memory) { - // 获取完整的 calldata - return msg.data; - } - - function getGasleft() public view returns(uint) { - // 获取当前还剩的gas - return gasleft(); - } - - function getSender() public view returns(address) { - // 获取当前调用发起人的地址 - return msg.sender; - } - - function getSig() public view returns(bytes4) { - // 调用数据的前四个字节 - return msg.sig; - } - - function getValue() public payable returns(uint) { - // 获取这个消息所附带的以太币,单位为wei - return msg.value; - } - - function getNow() public view returns(uint) { - // 获取当前块的时间戳 - return now; - } - - function getGasprice() public view returns(uint) { - // 获取交易的gas价格 - return tx.gasprice; - } - - function getOrigin() public view returns(address) { - // 获取交易发起者(完全的调用链) - return tx.origin; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/Blockhash.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/Blockhash.sol deleted file mode 100644 index 3dd0f153fc..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/Blockhash.sol +++ /dev/null @@ -1,43 +0,0 @@ -pragma solidity ^0.5.17; -/** - * blockhash功能测试 - */ -contract Blockhash { - - //取当前块高之前300个块hash(理论上取不到) - function getBlockhashbefore257() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number - 257); - - return blockhs; - } - - //取当前块高之前256个块hash(理论上取不到) - function getBlockhashbefore256() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number - 256); - - return blockhs; - } - - //取当前块高之前255个块hash(理论上取不到) - function getBlockhashbefore255() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number - 255); - - return blockhs; - } - - - //取当前块高之前30个块hash(理论上可以取到) - function getBlockhashbefore30() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number - 30); - - return blockhs; - } - - //取当前块高之前30个块hash(理论上可以取到) - function getBlockhashbefore0() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number); - - return blockhs; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/MathAndCryptographicFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/MathAndCryptographicFunctions.sol deleted file mode 100644 index c28b8a2ce4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/MathAndCryptographicFunctions.sol +++ /dev/null @@ -1,46 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证数学和加密函数,sha3在0.5.0版本之后被剔除,用keccak256取代 - * 计算(x + y) % k - * 计算(x * y) % k - * 计算输入的Keccak256Hash值 - * 计算输入的Sha256Hash值 - * 计算输入的Ripemd160Hash值 - * 从椭圆曲线签名中恢复与公钥相关的地址,或在出错时返回零 - * 函数参数对应于签名的ECDSA值: r – 签名的前32字节; s: 签名的第二个32字节; v: 签名的最后一个字节 - * @author liweic - * @dev 2019/12/27 20:10 - */ - -contract MathAndCryptographicFunctions { - - function callAddMod() public pure returns(uint){ - return addmod(2, 3, 3); - } - - function callMulMod() public pure returns(uint){ - return mulmod(2, 3, 3); - } - - function callKeccak256() public pure returns(bytes32 result){ - return keccak256("ABC"); - } - - function callSha256() public pure returns(bytes32 result){ - return sha256("ABC"); - } - - function callRipemd160() public pure returns(bytes32 result){ - return ripemd160("ABC"); - } - - //hash: "0xe281eaa11e6e37e6f53aade5d6c5b7201ef1c66162ec42ccc3215a0c4349350d" - //V = 27 - //R = "0x55b60cadd4b4a3ea4fc368ef338f97e12e7328dd6e9e969a3fd8e5c10be855fe" - //S = "0x2b42cee2585a16ea537efcb88009c1aeac693c28b59aa6bbff0baf22730338f6" - //address: "0x8a9B36694F1eeeb500c84A19bB34137B05162EC5" - function callEcrecover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) public pure returns (address) { - address x = ecrecover(hash, v, r, s); - return x; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/SelfdestructFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/SelfdestructFunctions.sol deleted file mode 100644 index 0e00c7f11b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/02Special_Variables_and_Functions/SelfdestructFunctions.sol +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证构造函数constructor - * 验证销毁函数selfdestruct,0.5.x之后弃用suicide - * @author liweic - * @dev 2019/12/28 16:00 - */ - -contract SelfdestructFunctions { - //声明状态变量 - uint count = 0; - address payable owner; - - //构造函数 - constructor () public { - owner = msg.sender; - } - - function increment() public { - uint num = 5; - if(owner == msg.sender) { - count = count + num; - } - } - - function getCount() view public returns (uint) { - return count; - } - - function selfKill() public { - if (owner == msg.sender) { - selfdestruct(owner); - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/03Function_Visibility_and_Decarations/Getter.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/03Function_Visibility_and_Decarations/Getter.sol deleted file mode 100644 index c7dfc39acb..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/03Function_Visibility_and_Decarations/Getter.sol +++ /dev/null @@ -1,16 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证getter(访问器)函数,编译器会自动为所有 public 状态变量创建 getter 函数,编译器会为我们自动生成的data()函数 - * 在合约内,可以直接操作及访问data状态变量,但在合约外我们只能用data()的方式来访问 - * 在合约内,不能直接访问data(),因为访问器函数的可见性是external - * @author liweic - * @dev 2019/12/27 14:10 - */ -contract Getter{ - uint public data = 10; - - function f() public view returns (uint, uint){ - //分别以internal,external的方式访问 - return (data, this.data()); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/03Function_Visibility_and_Decarations/Payable.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/03Function_Visibility_and_Decarations/Payable.sol deleted file mode 100644 index a79ff4c7f3..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/03Function_Visibility_and_Decarations/Payable.sol +++ /dev/null @@ -1,18 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证函数声明方式payable,用于转账 - * @author liweic - * @dev 2019/12/27 16:10 - */ - -contract Payable { - - //获取地址的余额 - function getBalances(address addr) view public returns (uint){ - return addr.balance; - } - - function transfer(address payable addr) public payable{ - addr.transfer(msg.value); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/03Function_Visibility_and_Decarations/Selector.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/03Function_Visibility_and_Decarations/Selector.sol deleted file mode 100644 index 712c58fd94..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/03Function_Visibility_and_Decarations/Selector.sol +++ /dev/null @@ -1,14 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证public (或 external) 函数有一个特殊的成员selector, 它对应一个ABI 函数选择器. - * @author liweic - * @dev 2020/01/11 20:30 - */ -contract Selector { - function h() payable external { - } - function f() view external returns (bytes4) { - function () external g = this.h; - return g.selector; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/03Function_Visibility_and_Decarations/Visibility.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/03Function_Visibility_and_Decarations/Visibility.sol deleted file mode 100644 index 2a72a5660e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/03Function_Visibility_and_Decarations/Visibility.sol +++ /dev/null @@ -1,49 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证函数四种可见性external,public,internal,private - * @author liweic - * @dev 2019/12/27 10:10 - */ - -contract Visibility { - - //private:私有函数和状态变量仅在当前合约中可以访问,在继承的合约内,不可访问 - function fpri(uint a) view private returns(uint) { - return a + 1; - } - - //external:外部函数是合约接口的一部分,所以我们可以从其它合约或通过交易来发起调用 - function fe(uint a) view external returns(uint){ - return a + 2; - } - - //public:公开函数是合约接口的一部分,可以通过内部,或者消息来进行调用 - function fpub(uint a) view public returns(uint) { - return a + 3; - } - - //internal:这样声明的函数和状态变量只能通过内部访问,也可以在继承合约里调用 - function add(uint a, uint b) view internal returns(uint) { - return a+b; - } -} - - -contract VisibilityCall { - function readData() public payable returns(uint localA, uint localB){ - Visibility visibility = new Visibility(); - //uint local = visibilitytest.fpri(10); // error: member "fpri" is not visible,编译报错 - localA = visibility.fe(1); - localB = visibility.fpub(1); - //uint localB = visibilitytest.add(1, 2); // error: member "add" is not visible,编译报错 - } - -} - - -contract Inter is Visibility { - function g() view public returns(uint){ - //继承合约里调用internal函数 - return add(1,2); // acces to internal member (from derivated to parent contract) - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/04Function_Calls/ExternalCall.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/04Function_Calls/ExternalCall.sol deleted file mode 100644 index a746f395dd..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/04Function_Calls/ExternalCall.sol +++ /dev/null @@ -1,24 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证函数的外部调用,一个函数调用另一个合约的函数 - * @author liweic - * @dev 2019/12/27 10:10 - */ - -contract External { - function getSum() external view returns(uint sum){ - //定义两个局部变量 - uint a = 1; - uint b = 2; - sum = a + b; - } -} - -contract CallExternal { - event ExternalCValue(uint value); - function getResult() payable public returns(uint c){ - External d = new External(); - c = d.getSum(); - emit ExternalCValue(c); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/04Function_Calls/InternalCall.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/04Function_Calls/InternalCall.sol deleted file mode 100644 index 55ffc2dd19..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/04Function_Calls/InternalCall.sol +++ /dev/null @@ -1,21 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证函数的内部调用,一个函数在同一个合约中调用另一个函数 - * @author liweic - * @dev 2019/12/26 17:10 - */ - -contract IntenalCall { - - function getSum() public view returns(uint sum){ - //定义两个局部变量 - uint a = 1; - uint b = 2; - sum = a + b; - } - - function getResult() public view returns(uint product){ - uint c = 3; - product = c * getSum(); //内部调用之前定义的函数 - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/04Function_Calls/NamedCall.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/04Function_Calls/NamedCall.sol deleted file mode 100644 index be3d46f1b1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/04Function_Calls/NamedCall.sol +++ /dev/null @@ -1,17 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证函数的具名调用 - * @author liweic - * @dev 2019/12/26 16:10 - */ -contract NamedCall { - //交换传入值的顺序并返回 - function exchange(uint key, uint value) view public returns (uint, uint){ - return (value, key); - } - - function namecall() view public returns (uint, uint){ - //任意顺序的通过变量名来指定参数值 - return exchange({value: 2, key: 1}); - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/05Modifier/InheritanceModifier.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/05Modifier/InheritanceModifier.sol deleted file mode 100644 index 177c4a341d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/05Modifier/InheritanceModifier.sol +++ /dev/null @@ -1,15 +0,0 @@ -pragma solidity ^0.5.17; - -import "./Modifier.sol"; - -contract InheritanceModifier is Modifier { - - // 使用修饰符 mf - function inheritance(uint c) public mf(c) { - a = 1; - } - - function getA() public view returns (uint) { - return a; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/05Modifier/Modifier.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/05Modifier/Modifier.sol deleted file mode 100644 index 89c0cf4015..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/05Modifier/Modifier.sol +++ /dev/null @@ -1,19 +0,0 @@ -pragma solidity ^0.5.17; -/** - *1.验证单一修饰器 - *2.验证特殊_的用法,符合函数修饰器定义的条件,才可以执行函数体内容 - *3.验证修饰器可以接收参数 - *4.验证合约继承情况下的修饰器的使用 - * @author liweic - * @dev 2019/12/26 11:10 - */ -contract Modifier { - uint a = 10; - - // 定义修饰符 mf 带参数 - modifier mf (uint b) { - if (b >= a) { - _; - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/05Modifier/Modifiers.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/05Modifier/Modifiers.sol deleted file mode 100644 index 34f132ca06..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/05Modifier/Modifiers.sol +++ /dev/null @@ -1,38 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 1.验证函数修饰器的关键词modifier - * 2.验证多个修饰器的用法 - * 3.验证修饰器接收参数和无参修饰器的用法 - * @author liweic - * @dev 2019/12/25 15:10 - */ -contract Modifiers { - uint a = 10; - - modifier mf1 (uint b) { - uint c = b; - _; - c = a; - a = 11; - } - - modifier mf2 () { - uint c = a; - _; - } - - modifier mf3() { - a = 12; - return ; - _; - a = 13; - } - - function test1() mf1(a) mf2 mf3 public { - a = 1; - } - - function test2 () public view returns (uint) { - return a; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/06Contract_Related_and_Fallback/Fallback.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/06Contract_Related_and_Fallback/Fallback.sol deleted file mode 100644 index 8f809bc11a..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/06Contract_Related_and_Fallback/Fallback.sol +++ /dev/null @@ -1,25 +0,0 @@ -pragma solidity ^0.5.17; -/** - 1.验证合约关键字this,表示当前合约,可以显示的转换为Address - 2.验证Fallback函数,调用了未命名的函数等方式 - * @author liweic - * @dev 2019/12/26 15:30 - */ - -contract FallBack { - uint a = 1; - - //定义一个回退函数 - function () external { - a = 100; - } - - //调用一个不存在的函数将触发回退函数 - function CallFunctionNotExist() public { - address(this).delegatecall("functionNotExist()"); - } - - function getA() view public returns (uint) { - return a; - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/07Assembly/AssemblyReturns.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/07Assembly/AssemblyReturns.sol deleted file mode 100644 index ce334795c6..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/07Assembly/AssemblyReturns.sol +++ /dev/null @@ -1,24 +0,0 @@ -pragma solidity ^0.5.17; -/** - 1.验证内联汇编关键字assembly,汇编赋值指令:= - * @author liweic - * @dev 2020/01/07 14:30 - */ - -contract AssemblyReturns { - uint constant a = 2; - bytes2 constant b = 0xabcd; - bytes3 constant c = "abc"; - bool constant d = true; -// address payable constant e = "lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2"; - address payable constant e = "atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq"; - function f() public pure returns (uint w, bytes2 x, bytes3 y, bool z, address t) { - assembly { - w := a - x := b - y := c - z := d - t := e - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/07Assembly/SumAssembly.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/07Assembly/SumAssembly.sol deleted file mode 100644 index 88a5668447..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/07Assembly/SumAssembly.sol +++ /dev/null @@ -1,30 +0,0 @@ -pragma solidity ^0.5.17; -/** - 1.验证内联汇编在库中的使用 - 2.验证汇编的操作码add,mul等 - * @author liweic - * @dev 2020/01/08 14:30 - */ -library Sum { - function sumUsingInlineAssembly(uint[] memory _data) public pure returns (uint o_sum) { - for (uint i = 0; i < _data.length; ++i) { - assembly { - o_sum := add(o_sum, mload(add(add(_data, 0x20), mul(i, 0x20)))) - } - } - } -} -contract SumAssembly { - uint[] data; - - constructor() public { - data.push(1); - data.push(2); - data.push(3); - data.push(4); - data.push(5); - } - function sum() external view returns(uint){ - return Sum.sumUsingInlineAssembly(data); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/08delete/DeleteDemo.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/08delete/DeleteDemo.sol deleted file mode 100644 index 01aa70d807..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/1.function/08delete/DeleteDemo.sol +++ /dev/null @@ -1,95 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证delete关键字,验证各种类型的delete,包括bool,uint,address,bytes,string,enum,变长数组 - * 验证删除struct, struct中的映射不会被删除其他的会被删除 - * @author liweic - * @dev 2020/01/09 16:10 - */ - -contract DeleteDemo{ - - bool public b = true; - uint public i = 1; - address public addr = msg.sender; - bytes public varByte = "123"; - string public str = "abc"; - enum Color{RED,GREEN,YELLOW} - Color public color = Color.GREEN; - - struct S{ - uint a; - string r; - } - - S s; - - struct MapStruct{ - mapping(address => uint) m; - uint n; - } - - MapStruct ms; - - function delMapping() payable public{ - ms = MapStruct(200); - ms.m[msg.sender] = 2000; - - delete ms; - } - - function getdelMapping() view public returns(uint,uint){ - return (ms.m[msg.sender],ms.n); - } - - function delStruct() payable public returns(uint, string memory){ - DeleteDemo.S(10, "abc"); - delete s; - - return (s.a,s.r); - } - - function deleteAttr() public { - delete b; // false - delete i; // 0 - delete addr; // 0x0 - delete varByte; // 0x - delete str; // "" - delete color;//Color.RED - } - - function getbool() view public returns(bool){ - return b; - } - - function getunit() view public returns(uint){ - return i; - } - - function getaddress() view public returns(address){ - return addr; - } - - function getbytes() view public returns(bytes memory){ - return varByte; - } - - function getstr() view public returns(string memory){ - return str; - } - - function getenum() view public returns(Color){ - return color; - } - - function getstruct() view public returns(uint, string memory){ - return (s.a,s.r); - } - - function delDynamicArray() view public returns(uint){ - uint[] memory a = new uint[](7); - a[0] = 100; - a[1] = 200; - delete a; - return (a.length); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/10.exec_efficiency/BubbleSort.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/10.exec_efficiency/BubbleSort.sol deleted file mode 100644 index 97f9646c79..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/10.exec_efficiency/BubbleSort.sol +++ /dev/null @@ -1,33 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * EVM 冒泡排序算法复杂度验证 - **/ - -contract BubbleSort{ - - int[] result_arr; - - function BubbleArrays(int[] memory arr, uint n) public payable{ - for (uint i = 0; i < n - 1; i++) - { - for (uint j = 0; jarr[j + 1]) - { - int temp; - temp = arr[j]; - arr[j] = arr[j + 1]; - arr[j + 1] = temp; - } - } - } - - result_arr = arr; - } - - function get_arr() public view returns(int[] memory){ - return result_arr; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/10.exec_efficiency/InsertSort.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/10.exec_efficiency/InsertSort.sol deleted file mode 100644 index e3578fd3a4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/10.exec_efficiency/InsertSort.sol +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * EVM 插入排序算法复杂度验证 - **/ - -contract InsertSort{ - - int[] result_arr; - - function OuputArrays(int[] memory arr, uint n) public payable{ - uint i; - uint k; - uint j; - for(i=1;i=1 && temp second); - - result = frist+second; - return result; - } - - - function getResult() view public returns(uint){ - return result; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/ChainFunction.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/ChainFunction.sol" deleted file mode 100644 index 02b7e76945..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/ChainFunction.sol" +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 10-链上函数 - * 1- 0.5.0版本函数 delegatecall() 代替 0.4.25版本函数 callcode() - * 2- 0.5.0版本函数 selfdestruct() 代替 0.4.25版本函数 suicide() - * - * 4- 0.5.0版本函数 revert(), require(),assert() 代替 0.4.25版本函数 throw - * 5- 0.5.0版本函数 call()族只接受一个参数 bytes,返回成功是否的bool及函数执行的返回值 - * 0.4.25版本函数 call()族函数接收多个参数方式,只返回成功是否的 bool - * 跨合约调用见11.cross_contract_call - * - * @author hudenian - * @dev 2019/12/19 09:57 - * - */ - -contract ChainFunction { - - address owner; - uint fortune; - bool isDeceased; - - constructor() public payable{ - owner = msg.sender; - fortune = msg.value; - isDeceased = false; - } - - modifier onlyOwner{ - require(msg.sender == owner); - _; - } - - modifier mustBeDeceased{ - require(isDeceased == true); - _; - } - - /** - * 0.5.0 版本使用revert(), require(),assert()关键字 - * _isDeceased为false,或者less9小于9则抛出异常 - */ - function deceased(bool isDeceased,uint less9) view public returns(address){ - assert(isDeceased == true); - if(less9 < 9){ - revert(); - } - return msg.sender; - } - - /** - * _isDeceased为false则抛出异常 - */ - function deceasedWithModify(bool _isDeceased) view public returns(address){ - require(_isDeceased == true); - return msg.sender; - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RequireContract.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RequireContract.sol" deleted file mode 100644 index 9fe9d1f324..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RequireContract.sol" +++ /dev/null @@ -1,29 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 10-链上函数 - * 函数 require() - * - * @author hudenian - * @dev 2020/1/8 09:57 - * - */ - -contract RequireContract { - - uint result; - /** - * require退回剩下的gas - * 验证输入参数合法性 - */ - function toSenderAmount(uint frist,uint second) public { - require(frist > second); - result = frist - second; - } - - - function getResult() view public returns(uint){ - return result; - } - - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RevertContract.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RevertContract.sol" deleted file mode 100644 index 8e00ccbf0c..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RevertContract.sol" +++ /dev/null @@ -1,34 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 10-链上函数 - * 函数 revert() - * - * @author hudenian - * @dev 2020/1/8 09:57 - * - */ -contract RevertContract { - - address payable owner; - uint result; - - constructor() public{ - owner = msg.sender; - } - /** - * revert会把所有剩下的gas退回给caller - * 验证输入参数合法性 - */ - function toSenderAmount(uint first,uint second) public returns(uint) { - if(first < second){ - revert("first less than second"); - } - result = first-second; - return result; - } - - - function getResult() view public returns(uint){ - return result; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/Sha3AndKeccake256.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/Sha3AndKeccake256.sol" deleted file mode 100644 index 239ebe6743..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/Sha3AndKeccake256.sol" +++ /dev/null @@ -1,32 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 10-链上函数 - * 1- 0.5.0版本函数 keccak256() 代替 0.4.25版本函数 sha3() - * - * @author hudenian - * @dev 2019/12/19 09:57 - * - */ - -contract Sha3AndKeccake256 { - - uint256 afterSha256value; - - /** - * keccak256a - */ - function keccak(string memory sha256value) public{ - afterSha256value = uint256(keccak256(abi.encodePacked(sha256value, sha256value))); - } - - function getKeccak256Value() view public returns(uint256){ - return afterSha256value; - } - - /** - * sha3 只能在0.4.x版本上使用 - */ - // function sha(string memory sha256value) public returns(uint256){ - // return uint256(sha3(sha256value, "c")); - // } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/SuicideAndSelfdestruct.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/SuicideAndSelfdestruct.sol" deleted file mode 100644 index de02de2f01..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/SuicideAndSelfdestruct.sol" +++ /dev/null @@ -1,40 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 10-链上函数 - * 1- suicide()已弃用, 请使用 selfdestruct() - * 部署合约账号必须要有balance - * - * @author hudenian - * @dev 2019/12/19 09:57 - * - */ - -contract SuicideAndSelfdestruct { - uint count = 0; - address payable owner; - - constructor() public{ - owner = msg.sender; - } - - function increment() public { - uint step = 10; - if (owner == msg.sender) { - count = count + step; - } - } - - function getCount() view public returns (uint){ - return count; - } - - /** - *0.5.0版本使用新的自杀函数 - */ - function kill() public{ - if (owner == msg.sender) { - selfdestruct(owner); //0.5.0使用的函数 - // suicide(owner); //0.4.25使用的函数(0.5.0废弃的函数) - } - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ConstructorTest.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ConstructorTest.sol" deleted file mode 100644 index 54e9957e7a..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ConstructorTest.sol" +++ /dev/null @@ -1,34 +0,0 @@ -pragma solidity ^0.5.17; -/** - * constructor必须强制使用constructor声明 - * 且去除同名函数定义,0.4.25版本则通过同名函数定义,且constructor非必须 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract ConstructorTest{ - - uint public count = 0; - - //constructor必须强制使用constructor声明 - constructor(uint _count) public { - count = _count; - } - - function update(uint amount) public returns (address, uint){ - count += amount; - return (msg.sender, count); - } - - //5.查询count - function getCount() public view returns (uint){ - return count; - } - - //0.5.0弃用同名构造函数 - // function constructorTest() external { - // a = 1; - // } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructor.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructor.sol" deleted file mode 100644 index 5e02a4991a..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructor.sol" +++ /dev/null @@ -1,39 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 不允许调用带参数但具有错误参数计数的构造函数。 - * 如果只想在不提供参数的情况下指定继承关系,请不要提供括号 - * - * @author hudenian - * @dev 2019/12/20 09:57 - */ - - -import "./ErrorParamConstructorBase.sol"; - - -/** - * 0.5.0版本可以不指定参数errorParamConstructorBase编译可以通过但是部署失败, - * 指定参数errorParamConstructorBase(10)编译部署成功 - * 0.4.x版本可以不指定参数,并且带括号如:errorParamConstructorBase() - */ -contract ErrorParamConstructor is ErrorParamConstructorBase(10) { - uint public b ; - constructor(uint _b) public { - b = _b; - } - - function update(uint amount) public returns (address, uint){ - b += amount; - return (msg.sender, b); - } - - //查询a - function getA() public view returns (uint){ - return a; - } - - //查询b - function getB() public view returns (uint){ - return b; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructorBase.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructorBase.sol" deleted file mode 100644 index f560a509d9..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructorBase.sol" +++ /dev/null @@ -1,18 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 不允许调用带参数但具有错误参数计数的构造函数。 - * 如果只想在不提供参数的情况下指定继承关系,请不要提供括号 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract ErrorParamConstructorBase{ - uint public a ; - - //基类构造函数 - constructor (uint _a) public{ - a = _a; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay1.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay1.sol" deleted file mode 100644 index d009a0bc5c..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay1.sol" +++ /dev/null @@ -1,24 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 0.5.0不允许在同一继承层次结构中多次指定基类构造函数参数 - * 0.4.x可以同时使用2种方式,但如果2种方式都存在,优先选择修饰符方式 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -import "./ErrorParamConstructorBase.sol"; - -/** -* 方式一:contract mulicPointBaseConstructor is errorParamConstructorBase(10) -* (方式二参考mulicPointBaseConstructorWay2.sol) -*/ -contract MulicPointBaseConstructorWay1 is ErrorParamConstructorBase(10) { - constructor() public {} - - function update(uint amount) public returns (address, uint){ - a += amount; - return (msg.sender, a); - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay2.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay2.sol" deleted file mode 100644 index c0dbbf462a..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay2.sol" +++ /dev/null @@ -1,30 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 0.5.0不允许在同一继承层次结构中多次指定基类构造函数参数 - * 0.4.x可以同时使用2种方式,但如果2种方式都存在,优先选择修饰符方式 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -import "./ErrorParamConstructorBase.sol"; - -/** -* 方式二:通过派生的构造函数中用类似于修饰符方式调用父类构造函数(只能2选1) -* (方式一参考mulicPointBaseConstructorWay1.sol) -*/ -contract MulicPointBaseConstructorWay2 is ErrorParamConstructorBase { - constructor(uint _y) ErrorParamConstructorBase(_y * _y) public {} - - function update(uint amount) public returns (address, uint){ - a += amount; - return (msg.sender, a); - } - - //查询a - function getA() public view returns (uint){ - return a; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/NoParenthesesConstructor.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/NoParenthesesConstructor.sol" deleted file mode 100644 index 4c955fc5ab..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/NoParenthesesConstructor.sol" +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 不允许调用没有括号的基类构造函数 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -import "./ErrorParamConstructorBase.sol"; - -//contract Base { -// uint x; -// constructor() public {} -//} - -/** - * 0.5.0版本不允许调用没有括号的基类构造函数(编译不通过) - * 0.4.25版本可以调用基类构造函数 - */ -contract NoParenthesesConstructor is ErrorParamConstructorBase { - constructor(uint _b) ErrorParamConstructorBase(1) public {} -} - -//contract noParenthesesConstructor is errorParamConstructorBase { -// constructor(uint _b) errorParamConstructorBase() public {} -//} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DecimalLiteralsChangeByte.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DecimalLiteralsChangeByte.sol" deleted file mode 100644 index 73d8d8fcf5..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DecimalLiteralsChangeByte.sol" +++ /dev/null @@ -1,33 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 10进制数值不能直接转换成 bytesX类型 - * 必须先转换到与 bytesX相同长度的 uintY,再转换到 bytesX类型 - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - - -contract DecimalLiteralsChangeByte { - - bytes4 public b4; - - function testChange(uint a) public returns(bytes4) { - // bytes8 bt = bytes8(a); //编译出错,10进制数值不能直接转换成 bytesX类型,要像如下进行转换 - uint32 u1 = uint32(a); //先转成uint - - // bytes5 b2 = bytes5(u1);//编译出错, uint32长度与byte4一致,不能转成byte5类型的长度 - - b4 = bytes4(u1);//再转成byte - - return b4; - } - - //5.查询b4的值 - function getB4() public view returns (bytes4){ - return b4; - } - - - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DisallowTypeChange.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DisallowTypeChange.sol" deleted file mode 100644 index 3b6bf02f22..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DisallowTypeChange.sol" +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 因为填充(padding)的时候, bytesX是右填充(低比特位补0), - * 而 uintY是左填充(高比特位补0),二者直接转换可能会导致不符合预期的结果, - * 所以现在当 bytesX和uintY长度大小不一致(即X*8 != Y)时,不能直接转换, - * 必须先转换到相同长度,再转换到相同类型 - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - - -contract DisallowTypeChange { - - uint32 public y; - - function testChange() payable public{ - //由于uint32(4字节)小于bytes8(8字节) - // bytes8 x1; // 8*8 length - // uint32 y1 = uint32(x1); //error, 64 length can not change to 32 length - - // bytes1 a = 255; - // bytes2 b = "aA"; - - bytes8 x = hex"aaaa" ; - bytes4 x4 = bytes4(x); //right,转将长度转成一致 - y = uint32(x4); //right,再进行类型转换 - } - - //查询y的值 - function getY() public view returns (uint32){ - return y; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/HexLiteralsChangeByte.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/HexLiteralsChangeByte.sol" deleted file mode 100644 index e74a33c1ad..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/HexLiteralsChangeByte.sol" +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 16进制数值如果长度与 bytesX不相等,也不能直接转换成 bytesX类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract HexLiteralsChangeByte { - - bytes1 public b1; - - function testChange() payable public returns(bytes1) { - bytes16 b16 = "ab"; - // b16 = 0xff; //编译出错,16进制数值长度与 byte16长度不相等 - - b1 = 0xf1; //16进制数值长度与 byte1长度不相等,正常转换(ff占用8位=1byte) - return b1; - } - - //查询y的值 - function getY() public view returns (bytes1){ - return b1; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/4.\345\274\203\347\224\250\345\255\227\351\235\242\351\207\217\345\217\212\345\220\216\347\274\200/DisallowYears.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/4.\345\274\203\347\224\250\345\255\227\351\235\242\351\207\217\345\217\212\345\220\216\347\274\200/DisallowYears.sol" deleted file mode 100644 index 1c10b44b2a..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/4.\345\274\203\347\224\250\345\255\227\351\235\242\351\207\217\345\217\212\345\220\216\347\274\200/DisallowYears.sol" +++ /dev/null @@ -1,70 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 弃用字面量及后缀 - * 1-years时间单位已弃用。因为闰年计算容易导致各种问题 - * 2-不允许小数点后不跟数字的数值写法 - * 3-十六进制数字不允许带“0X”前缀,只能用“0x” - * 4-不允许将十六进制数与单位组合 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -contract DisallowYears { - - uint256 time1; - uint256 etherValue; - uint256 hexValue; - uint256 hexComValue; - - - function testyear(uint a) payable public returns(uint time) { - /** - *1-years时间单位已弃用。因为闰年计算容易导致各种问题 - */ - // uint _time = 1 years; //error,编译出错,可以days代替 uint _time = 365 days - time1 = 365 days; //right, - - - /** - * 2-不允许小数点后不跟数字的数值写法 - */ - //uint value=255. ether; //error,编译出错 -// etherValue=255.0 lat;//right - etherValue=255.0 atp;//right - - /** - * 3-十六进制数字不允许带“0X”前缀,只能用“0x” - */ - // uint value=0Xff; //error,编译出错 - hexValue=0xff; //right - - /** - * 4-不允许将十六进制数与单位组合 - */ - // uint value=0xff ether; //error,编译出错 -// hexComValue=0xff*1 lat;//right - hexComValue=0xff*1 atp;//right - } - - //查询time1的值 - function getTime1() public view returns (uint){ - return time1; - } - - //查询ether的值 - function getEtherValue() public view returns (uint){ - return etherValue; - } - - //查询hexValue的值 - function getHexValue() public view returns (uint){ - return hexValue; - } - - //查询time1的值 - function getHexComValue() public view returns (uint){ - return hexComValue; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/5.\345\274\203\347\224\250\345\217\230\351\207\217/DisallowVariable.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/5.\345\274\203\347\224\250\345\217\230\351\207\217/DisallowVariable.sol" deleted file mode 100644 index 06934f5d2d..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/5.\345\274\203\347\224\250\345\217\230\351\207\217/DisallowVariable.sol" +++ /dev/null @@ -1,63 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 05-弃用变量 - * 1-不允许声明0长度的定长数组类型 - * 2-不允许声明0结构体成员的结构体类型 - * 3-不允许使用空元组组件 - * 4-不允许声明未初始化的storage变量 - * 5-不允许定义非编译期常量的 constant常量 - * 6-var已弃用,需要明确声明变量类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -contract DisallowVariable { - - /** - *1-不允许声明0长度的定长数组类型 - */ - // int[0] arri0; //error,编译报错 - int[1] arri1; //right - - - /** - * 2-不允许声明0结构体成员的结构体类型 - */ - // struct Person{}//error,编译出错 - - struct Person{ - uint age; - } - - - mapping (uint =>Person) persons; - - function tesEmpty(uint _id) payable public returns(uint time) { - - /** - * 3-不允许使用空元组组件 - */ - // (uint x,uint y) = (,); //error,编译出错 - (uint x,uint y) = (2,3); //right - - /** - * 4-不允许声明未初始化的storage变量 - */ - // Person storage p;//error,编译出错 - Person storage p = persons[_id];//right - } - - - /** - * 5-不允许定义非编译期常量的 constant常量 - */ - // uint constant time = now; //error,编译出错 - - /** - * 6-var已弃用,需要明确声明变量类型 - */ - // var i=1; //编译出错,需明确指定变量类型 - uint j=1; - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/6.\345\274\203\347\224\250\350\257\255\346\263\225/DisallowSyntax.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/6.\345\274\203\347\224\250\350\257\255\346\263\225/DisallowSyntax.sol" deleted file mode 100644 index b6c2572a75..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/6.\345\274\203\347\224\250\350\257\255\346\263\225/DisallowSyntax.sol" +++ /dev/null @@ -1,88 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 06-弃用语法 - * 1-不允许布尔表达式使用算术运算符 - * 2-不允许具有一个或多个返回值的函数使用空返回语句 - * 3-不允许未实现的函数使用修饰符(modifier) - * 4-constant函数修饰符已弃用,不能用作修饰函数状态可变性,请使用view关键字 - * 5-不允许使用一元运算符 + - * 6-不允许在if/while/for等非{}包含的块中使用单个语句声明/定义变量 - * 7-不允许定义具有命名返回值的函数类型 - * 8-不允许 msg.value用在非 payable函数里以及此函数的修饰符(modifier)里 - * 9-新的关键字alias,apply,auto,copyof,define,immutable,implements,macro,mutable,override,partial,promise,reference,sealed,sizeof,supports,typedefandunchecked,但这些关键字并未实际声明用处,会在以后的版本进行设置 - * 10-接口允许定义结构体与枚举 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -contract DisallowSyntax { - - /** - *1-不允许布尔表达式使用算术运算符 - */ - bool flg = false; - uint a = 1; - // uint b = a + flg; - - - /** - * 2-不允许具有一个或多个返回值的函数使用空返回语句 - */ - function tesReturn(uint _id) payable public returns(uint res1) { - // return;//error,编译出错 - return 1; //right - } - - /** - * 3-不允许未实现的函数使用修饰符(modifier) - */ -// function method() public modifier; //error,编译报错 - function method() public; //right - - /** - * 4-constant函数修饰符已弃用,不能用作修饰函数状态可变性,请使用view关键字 - */ - // function getValue(address _to, uint _value) constant external returns (uint){ //error,编译出错,请使用view或者pure - function getValue(address _to, uint _value) view external returns (uint){ //right - return a; - } - - /** - * 5-不允许使用一元运算符 + - */ - // uint value = +1 ether; //编译出错,可以写成 value = 1ether -// uint value1 = 1 lat; - uint value1 = 1 atp; - - - /** - * 6-不允许在if/while/for等非{}包含的块中使用单个语句声明/定义变量 - */ - function testBlock(address _to, uint _value) public{ - // if(true) bool b=false; //error,编译出错,必须用 {}包含单个语句 - if(true) {bool b=false;} - } - - /** - * 7-不允许定义具有命名返回值的函数类型 - * 函数执行时出错 - */ - function mulvalue2(uint a,uint b) public returns(uint add){ - add = a+b; - } - - /** - * 8-不允许 msg.value用在非 payable函数里以及此函数的修饰符(modifier)里 - * - */ - // function show() public returns(uint) { return msg.value; } //error编译出错,需加payable修饰符 - function getMsgValue() public payable returns(uint) {return msg.value; }//right - - /** - * 9-新的关键字alias,apply,auto,copyof,define,immutable,implements,macro,mutable,override,partial,promise,reference,sealed,sizeof,supports,typedefandunchecked, - * 但这些关键字并未实际声明用处,会在以后的版本进行设置 - * - */ - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/6.\345\274\203\347\224\250\350\257\255\346\263\225/InterfaceEnableStructAndenum.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/6.\345\274\203\347\224\250\350\257\255\346\263\225/InterfaceEnableStructAndenum.sol" deleted file mode 100644 index ac54bd5019..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/6.\345\274\203\347\224\250\350\257\255\346\263\225/InterfaceEnableStructAndenum.sol" +++ /dev/null @@ -1,23 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 09-弃用语法 - * 10-接口允许定义结构体与枚举 - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -interface InterfaceEnableStructAndenum { - - //结构体 - struct Voter { - string name; - uint age; - } - - //枚举 - enum gender{ - MALE, - FEMALE - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/7.\345\255\230\345\202\250\345\214\272\345\237\237/DataLocation.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/7.\345\255\230\345\202\250\345\214\272\345\237\237/DataLocation.sol" deleted file mode 100644 index 7344f238c7..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/7.\345\255\230\345\202\250\345\214\272\345\237\237/DataLocation.sol" +++ /dev/null @@ -1,76 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 06- 存储区域 - * 1-结构体(struct),数组(array), - * 映射(mapping)类型的变量必须显式声明存储区域( storage, memeory, calldata), - * 包括函数参数和返回值变量都必须显式声明 - * 2-external 的函数的引用参数和映射参数需显式声明为 calldata - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - -contract DataLocation { - - struct Person{ - string name; - uint age; - } - - mapping(uint => Person) persons; - - bytes res_data; - - - /** - * 1.结构体(struct)类型的变量入参及返回值必须显示声明存储区域 - */ - function set_struct_person(Person memory _person,uint _id) internal{ - persons[_id] = _person; - } - - - /** - * 2. 数组(array) 类型的变量入参及返回值必须显示声明存储区域 - */ - // function transfer(address _to,uint _value,bytes _data) external returns (bool success){ //数组数据类型存储区域必须声明为calldata - function testBytes(bytes calldata _data) external returns (bytes memory){ - res_data = _data; - return res_data; - } - - /** - * 3.mapping 类型的变量入参及返回值必须声明存储位置 - * 允许internal函数的参数及返回值为mapping指针 - */ - function set_person(mapping(uint=>uint) storage id_age_map,uint _id) internal returns(mapping(uint=>uint) storage) { - Person memory person; - id_age_map[_id]= 23; - return id_age_map; - } - - - /** - * public 函数入参必须显示声明为memory - */ - function getPerson(uint _id) view external returns (string memory,uint){ - return (persons[_id].name,persons[_id].age); - } - - /** - * public 函数入参必须显示声明为memory - */ - function getBytes() view external returns (bytes memory){ - return res_data; - } - - /** - * public 函数入参必须显示声明为memory - */ - function savePerson(uint _id,string memory _name,uint _age) public returns (bool){ - Person memory _person = Person(_name,_age); - set_struct_person(_person,_id); - return true; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAdress.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAdress.sol" deleted file mode 100644 index 87182ce3c7..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAdress.sol" +++ /dev/null @@ -1,22 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 08-合约和地址 - * 1-contract合约类型不再包括 address类型的成员函数, - * 必须显式转换成 address地址类型才能使用 send(), transfer(), - * balance等与之相关的成员函数/变量成员 - * 2-address地址类型细分为address和address payable, - * 只有address payable可以使用transfer(),send()函数, - * address payable类型可以直接转换为 address类型,反之不能。 - * 但是 address x可以通过 address(uint160(x)),强制转换成 address payable类型。 - * 如果 contract A不具有 payable的fallback函数, 那么 address(A)是 address类型。 - * 如果 contract A具有 payable的fallback函数, 那么 address(A)是 address payable类型 - * 3-msg.sender属于address payable类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract ContractAdress{ - function () external {} -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAndAddress.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAndAddress.sol" deleted file mode 100644 index 4f00be4098..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAndAddress.sol" +++ /dev/null @@ -1,65 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 08-合约和地址 - * 1-contract合约类型不再包括 address类型的成员函数, - * 必须显式转换成 address地址类型才能使用 send(), transfer(), - * balance等与之相关的成员函数/变量成员 - * 2-address地址类型细分为address和address payable, - * 只有address payable可以使用transfer(),send()函数, - * address payable类型可以直接转换为 address类型,反之不能。 - * 但是 address x可以通过 address(uint160(x)),强制转换成 address payable类型。 - * 如果 contract A不具有 payable的fallback函数, 那么 address(A)是 address类型。 - * 如果 contract A具有 payable的fallback函数, 那么 address(A)是 address payable类型 - * 3-msg.sender属于address payable类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -import "./ContractAdress.sol"; -import "./ContractPayable.sol"; - - -contract ContractAndAddress{ - address payable to_pay; - address to; - address payableToAddress; - address payable addressForcePayable; - - function payableOrNot() external { - bool result; - to_pay = address(new ContractPayable()); // 包含回退函数的合约contractPayable是一个 `address payable` - to = address(new ContractAdress()); // `address payable` 可以显示转换成address - // to_pay.transfer(1); // `transfer()` 是 `address payable` 的成员函数 - // result = to_pay.send(1); // `send()` 是 `address payable` 的成员函数 - to = address(new ContractAdress()); // 不包含声明为payable回退函数的合约可以显示转换`address` - // to_pay = address(new B()); // 不包含声明为payable回退函数的合约不可以显示转换成 // `address payable` - // to.transfer(1 ether); // `transfer()` 不是`address`成员函数 - // result = to.send(1 ether); // `send()` 不是`address`成员函数(写法不对) - //address john; - payableToAddress = to_pay; // Right,`address payable` can directly convert to `address` - - addressForcePayable = address(uint160(to)); // Right,`address` can forcibly convert to `address payable` - - } - - //获取payable类型的地址 - function getNonalPayableAddress() view public returns (address){ - return to_pay; - } - - //获取非payable类型的地址 - function getNonalContractAddress() view public returns (address){ - return to; - } - - //获取payable转换成address的地址 - function getPayableToAddress() view public returns (address){ - return payableToAddress; - } - - //获取address强制转换成payable的地址 - function getAddressToPayable() view public returns (address){ - return addressForcePayable; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractPayable.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractPayable.sol" deleted file mode 100644 index e4496853ca..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractPayable.sol" +++ /dev/null @@ -1,22 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 08-合约和地址 - * 1-contract合约类型不再包括 address类型的成员函数, - * 必须显式转换成 address地址类型才能使用 send(), transfer(), - * balance等与之相关的成员函数/变量成员 - * 2-address地址类型细分为address和address payable, - * 只有address payable可以使用transfer(),send()函数, - * address payable类型可以直接转换为 address类型,反之不能。 - * 但是 address x可以通过 address(uint160(x)),强制转换成 address payable类型。 - * 如果 contract A不具有 payable的fallback函数, 那么 address(A)是 address类型。 - * 如果 contract A具有 payable的fallback函数, 那么 address(A)是 address payable类型 - * 3-msg.sender属于address payable类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract ContractPayable{ - function () external payable {} //回退函数(没有名字、没有参数、没有返回值) -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/MsgSenderBelongToPayable.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/MsgSenderBelongToPayable.sol" deleted file mode 100644 index 6d98fd6962..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/MsgSenderBelongToPayable.sol" +++ /dev/null @@ -1,21 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 08-合约和地址 - * 验证msg.sender属于address payable类型 - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - - -contract MsgSenderBelongToPayable { - function getContractAddr() view public returns (address){ - address payable ad= msg.sender;//msg.sender属于address payable - return address(this); - } - - function getMsgSenderAddr() view public returns (address){ - return msg.sender; - } -} - diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/EmitTest.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/EmitTest.sol" deleted file mode 100644 index 4e18cd80cc..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/EmitTest.sol" +++ /dev/null @@ -1,24 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 09-其它 - * 1-引入emit做为触发事件的关键字而不是做为一个修饰符 - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - -contract EmitTest { - - event EventName(address bidder, uint amount); - - function testEvent() payable public { - // emit将触发一个事件(0.5.0必须使用emit关键字) - emit EventName(msg.sender, msg.value); - } - -//0.4.0版本触发事件可以不需要使用emit关键字 -// function testEvent() payable public { -// // emit将触发一个事件 -// EventName(msg.sender, msg.value); -// } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenum.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenum.sol" deleted file mode 100644 index 04e0e0d8bd..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenum.sol" +++ /dev/null @@ -1,22 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 09-其它 - * 10-验证0.5.0接口允许定义结构体与枚举(0.4.25版本会报错) - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - -interface InterfaceEnableStructAndenum { - - //结构体 - struct Product{ - ProductCondition condition; - } - - //枚举 - enum ProductCondition{ - New, - Used - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenumImpl.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenumImpl.sol" deleted file mode 100644 index f7f9c898e3..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenumImpl.sol" +++ /dev/null @@ -1,20 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 09-其它 - * 10-验证0.5.0接口允许定义结构体与枚举(0.4.25版本会报错) - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - -import "./InterfaceEnableStructAndenum.sol"; - -contract InterfaceEnableStructAndenumImpl is InterfaceEnableStructAndenum{ - - //构建Product结构体传入ProductCondition,Used则返回1,ProductCondition.New返回0 - function getProductCondition() public pure returns (ProductCondition){ - Product memory product = Product(ProductCondition.Used); - return product.condition; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserLib.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserLib.sol deleted file mode 100644 index 2a9e2ac7c1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserLib.sol +++ /dev/null @@ -1,46 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 1. 允许public和external库函数的参数和返回变量使用mapping类型 - * - * @author hudenian - * @dev 2019/12/20 11:09 - */ - -library UserLib { - // struct _User { - // string name; - // uint age; - // mapping(uint=>string) user; - // } - - // function set_age(uint new_age) internal returns(_User memory) { - // _User memory user; - // user.age =new_age; - // return user; - // } - - /** - * library库中允许包含mapping做为入参与出参 - * - */ - function set_user(mapping(uint=>uint) storage id_age_map,uint _id) public returns(mapping(uint=>uint) storage) { - // _User memory user; - id_age_map[_id]= 23; - return id_age_map; - } - - /** - * library库中允许包含mapping做为入参与出参 - * - */ - // function set_user_inter(mapping(uint=>uint) storage id_age_map,uint _id) external returns(mapping(uint=>uint) storage) { - // _User memory user; - // id_age_map[_id]= 24; - // return id_age_map; - // } - - // function get_age() public { - - // } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserMapping.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserMapping.sol deleted file mode 100644 index 88834bba79..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserMapping.sol +++ /dev/null @@ -1,38 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 1. 允许public和external库函数的参数和返回变量使用mapping类型 - * - * @author hudenian - * @dev 2019/12/20 11:09 - */ - -import "./UserLib.sol"; - -contract UserMapping{ - - using UserLib for *; - - - mapping(uint=>uint) id_age_map; - - function setOutUser(uint _age,uint _id) public { - - // uint age = _age; - // 正确的用法:等价于set_age(age); - // age.set_age(); - - id_age_map[_id] =_age; - // mapping(uint=>uint) storage myIdAgeMap = set_user(id_age_map,_id); - - id_age_map.set_user(_id); - - - // return id_age_map[1]; - // 错误用法:get_age()无参数或和第一个参数不匹配,就不能这么调用 - // age.get_age(); - } - - function getOutUser(uint _id) view public returns(uint age){ - return id_age_map[_id]; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/AnimalExternal.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/AnimalExternal.sol" deleted file mode 100644 index c85c600c90..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/AnimalExternal.sol" +++ /dev/null @@ -1,38 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证0.5.13版本允许public函数覆盖external函数 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - -contract AnimalExternal { - - string _birthDay; // 生日 - int public _age; // 年龄 - int internal _weight; // 身高 - string private _name; // 姓名 - - constructor() public{ - _age = 29; - _weight = 170; - _name = "Lucky dog"; - _birthDay = "2011-01-01"; - } - //声明external函数 - function birthDay() view external returns (string memory) { - return _birthDay; - } - - function age() view public returns (int) { - return _age; - } - - function height() view internal returns (int) { - return _weight; - } - - function name() view private returns (string memory) { - return _name; - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/PersonPublic.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/PersonPublic.sol" deleted file mode 100644 index febe5c40b5..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/PersonPublic.sol" +++ /dev/null @@ -1,20 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 验证0.5.13版本允许public函数覆盖external函数 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ -import "./AnimalExternal.sol"; - -contract PersonPublic is AnimalExternal { - /** - * 0.5.13 允许public函数覆盖external函数 - * - */ - function birthDay() view public returns (string memory) { - - return "2020-12-15"; - } - -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/3-\346\267\273\345\212\240\345\257\271\345\205\267\346\234\211string\346\210\226bytes\351\224\256\347\261\273\345\236\213\347\232\204mapping\347\232\204\350\216\267\345\217\226\345\231\250\347\232\204\346\224\257\346\214\201/StringmappingSupport.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/3-\346\267\273\345\212\240\345\257\271\345\205\267\346\234\211string\346\210\226bytes\351\224\256\347\261\273\345\236\213\347\232\204mapping\347\232\204\350\216\267\345\217\226\345\231\250\347\232\204\346\224\257\346\214\201/StringmappingSupport.sol" deleted file mode 100644 index b79978cf86..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/3-\346\267\273\345\212\240\345\257\271\345\205\267\346\234\211string\346\210\226bytes\351\224\256\347\261\273\345\236\213\347\232\204mapping\347\232\204\350\216\267\345\217\226\345\231\250\347\232\204\346\224\257\346\214\201/StringmappingSupport.sol" +++ /dev/null @@ -1,43 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 添加对具有string或bytes键类型的mapping的获取器的支持 - * Add support for getters of mappings with string or bytes key types - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - -contract StringmappingSupport { - - - mapping(string =>string) amap; - mapping(bytes9 => string) bmap; - - /** - * 支持string为key的mapping数据存储 - */ - function setStringmapValue(string memory _key,string memory _value) public{ - amap[_key] = _value; - } - - /** - * 支持string为key的mapping数据获取 - */ - function getStringmapValue(string memory _key) public view returns(string memory){ - return amap[_key]; - } - - /** - * 支持byte为key的mapping数据存储 - */ - function setByte32mapValue(bytes9 _key,string memory _value) public{ - bmap[_key] = _value; - } - - /** - * 支持byte为key的mapping数据获取 - */ - function getByte32mapValue(bytes9 _key) public view returns( string memory){ - return bmap[_key]; - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/4-\345\270\246\346\234\211\346\214\207\345\256\232\345\217\202\346\225\260\347\232\204\345\207\275\346\225\260\350\260\203\347\224\250\345\217\257\344\273\245\345\244\204\347\220\206\351\207\215\350\275\275\345\207\275\346\225\260/Overload.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/4-\345\270\246\346\234\211\346\214\207\345\256\232\345\217\202\346\225\260\347\232\204\345\207\275\346\225\260\350\260\203\347\224\250\345\217\257\344\273\245\345\244\204\347\220\206\351\207\215\350\275\275\345\207\275\346\225\260/Overload.sol" deleted file mode 100644 index ec1b8bd636..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/4-\345\270\246\346\234\211\346\214\207\345\256\232\345\217\202\346\225\260\347\232\204\345\207\275\346\225\260\350\260\203\347\224\250\345\217\257\344\273\245\345\244\204\347\220\206\351\207\215\350\275\275\345\207\275\346\225\260/Overload.sol" +++ /dev/null @@ -1,37 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 带有指定参数的函数调用可以处理重载函数 - * Function calls with named arguments now work with overloaded functions. - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - -contract Overload { - - uint public re; - - function f(uint a,uint b) public returns (uint sum) { - sum = a+b; - return sum; - } - - function f(uint a) public returns (uint sum) { - sum = a; - return sum; - } - - function g() public{ - //0.4.0版本会出错 - uint tp; - tp = f({a:2,b:3}); - tp = f({a:2}); - re= tp; - // return re; - } - - function getRe() view public returns(uint){ - return re; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCode.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCode.sol" deleted file mode 100644 index 825a761df4..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCode.sol" +++ /dev/null @@ -1,19 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 5. type(C).creationCode():提供对合约的创建 - * https://github.com/ethereum/solidity/issues/5647 - * https://solidity.readthedocs.io/en/v0.5.3/units-and-global-variables.html - * 说明:主要用于内联汇编中 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ -import "./CreationCodeType.sol"; - -contract CreationCode { - bytes public constant creationCodeInfo = type(CreationCodeType).creationCode; - - function getContractName() public view returns(bytes memory contractName){ - return creationCodeInfo; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCodeType.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCodeType.sol" deleted file mode 100644 index 4286798e20..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCodeType.sol" +++ /dev/null @@ -1,16 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 5. type(C).creationCode():提供对合约的创建 - * https://solidity.readthedocs.io/en/v0.5.3/units-and-global-variables.html - * 说明:主要用于内联汇编中 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - - -contract CreationCodeType { - function getValue() public returns (string memory){ - return "hello"; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCode.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCode.sol" deleted file mode 100644 index 1e0f2e05d4..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCode.sol" +++ /dev/null @@ -1,21 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 6. type(C).runtimeCode():提供运行时代码的访问 - * https://github.com/ethereum/solidity/issues/5647 - * https://solidity.readthedocs.io/en/v0.5.3/units-and-global-variables.html - * 说明:主要用于内联汇编中 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - -import "./RuntimeCodeType.sol"; - -contract RuntimeCode { - - bytes public constant runtimeCodeInfo = type(RuntimeCodeType).runtimeCode; - - function getContractName() public view returns(bytes memory contractName){ - return runtimeCodeInfo; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCodeType.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCodeType.sol" deleted file mode 100644 index c49f892f7e..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCodeType.sol" +++ /dev/null @@ -1,16 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 5. type(C).creationCode():提供对合约的创建 - * https://solidity.readthedocs.io/en/v0.5.3/units-and-global-variables.html - * 说明:主要用于内联汇编中 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - - -contract RuntimeCodeType { - function getValue() public returns (string memory){ - return "hello"; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeName.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeName.sol" deleted file mode 100644 index c5dcf48cb3..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeName.sol" +++ /dev/null @@ -1,15 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * type(C).name():获取合约名称 - * - * @author hudenian - * @dev 2019/12/23 13:57 - */ -contract TypeName { - string public constant name = type(TypeName).name; - - function getContractName() public returns(string memory contractName){ - return name; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeNameFunction.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeNameFunction.sol" deleted file mode 100644 index 5bb22ae292..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeNameFunction.sol" +++ /dev/null @@ -1,13 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * type(C).name():提供对合约名称的访问 - * - * @author hudenian - * @dev 2019/12/23 13:57 - */ -contract TypeNameFunction { - function f() public pure returns (string memory) { - return type(TypeNameFunction).name; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/8-address_LibraryName/GetLibraryAddress.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/8-address_LibraryName/GetLibraryAddress.sol deleted file mode 100644 index 57eb516901..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/8-address_LibraryName/GetLibraryAddress.sol +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 1. address(LibraryName):获取链接库的地址 - * - * @author hudenian - * @dev 2019/12/25 09:57 - * - */ - -import "./UserLibrary.sol"; - -contract GetLibraryAddress{ - - using UserLibrary for *; - - address userLibAddress; - - function setUserLibAddress() public{ - //根据library库的名称获取地址 - userLibAddress = address(UserLibrary); - } - - function getUserLibAddress() view public returns(address adr){ - return userLibAddress; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/8-address_LibraryName/UserLibrary.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/8-address_LibraryName/UserLibrary.sol deleted file mode 100644 index baaeae38a2..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/2.version_compatible/0_5_13/8-address_LibraryName/UserLibrary.sol +++ /dev/null @@ -1,46 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 1. 允许public和external库函数的参数和返回变量使用mapping类型 - * - * @author hudenian - * @dev 2019/12/20 11:09 - */ - -library UserLibrary { - struct _User { - string name; - uint age; - mapping(uint=>string) user; - } - - function set_age(uint new_age) internal returns(_User memory) { - _User memory user; - user.age =new_age; - return user; - } - - /** - * library库中允许包含mapping做为入参与出参 - * - */ - function set_user(mapping(uint=>uint) storage id_age_map,uint _id) public returns(mapping(uint=>uint) storage) { - _User memory user; - id_age_map[_id]= 23; - return id_age_map; - } - - /** - * library库中允许包含mapping做为入参与出参 - * - */ - function set_user_inter(mapping(uint=>uint) storage id_age_map,uint _id) external returns(mapping(uint=>uint) storage) { - _User memory user; - id_age_map[_id]= 24; - return id_age_map; - } - - function get_age() public { - - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/1.BasicDataType/BasicDataTypeConstantContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/1.BasicDataType/BasicDataTypeConstantContract.sol deleted file mode 100644 index e3e928bc70..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/1.BasicDataType/BasicDataTypeConstantContract.sol +++ /dev/null @@ -1,177 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试合约基本数据类型字面常量 - * - *1、地址类型(Address) - *2、地址字面常量 - *3、有理数常量 - *4、整数字面常量 - *5、字符串字面常量 - *6、十六进制字面常量 - *7、枚举类型 - */ - -contract BasicDataTypeConstantContract { - - /** - *1、地址类型(Address) - *包含两种形式: - *address:保存一个20字节的值(以太坊地址的大小),160位。 - *address payable :可支付地址,与 address 相同,不过有成员函数 transfer 和 send 。 - *------------- 测试点 ---------- - *1、地址类型赋值使用 - *2、地址成员变量: - *address.balance():查询一个地址余额 - *address.transfer():发送货币,[常情况转账、异常情况转账] - *address.send() :transfer 的低级版本。如果执行失败,当前的合约不会因为异常而终止,但 send 会返回 false。 - */ - - //查询地址余额 - function getBalance(address addr) public view returns (uint) { - return addr.balance; - } - - //当前合约的余额 - function getCurrentBalance() public view returns (uint) { - return address(this).balance; - } - - //转账transfer - function goTransfer(address payable addr) public payable { - addr.transfer(msg.value); - } - - //转账send,向当前合约发送货币 - function goSend(address payable addr) public payable returns(uint amount, bool success) { - //msg.sender 全局变量,调用合约的发起方 - //msg.value 全局变量,调用合约的发起方转发的货币量,以wei为单位。 - //send() 执行的结果 - return (msg.value, addr.send(msg.value)); - } - - /** - *2、地址字面常量 - * 通过了地址校验和测试的十六进制字面常量,长度在 39 到 41 个数字的会作为地址字面常量 - */ - function getAddress() public returns (address v) { - -// address b = address("lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2"); - address b = address("atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq"); - return b; - } - - /** - *3、有理数常量 - * 整数、分数(有限小数、无限循环小数) - * - */ - function getValue() public view returns (uint128,uint,uint) { - - uint128 o = 2.5 + 0.5; - uint v = 2e10; - uint l = 3e15; - return (o,v,l); - } - - /** - *4、整数字面常量 - * 整数字面常量由范围在0-9的一串数字组成,表现成十进制。 - * - */ - - function getInt() public returns (int v) { - int a = 6; - return a; - } - - /** - *5、字符串字面常量: - * 字符串字面常量是指由双引号或单引号引起来的字符串 - *------- 测试点---- - * 1)、赋值操作 - * 2)、字符串是特殊的动态长度字节数组 - * 转换:字符串字面常数的类型———>转换成 bytes1,……,bytes32 ,或者bytes - * 3)、字符串不能够字节的修改长度和内容,需要转换为bytes动态字节数组 - */ - - //1)、赋值 - string strA = 'hello'; - string strB = "world"; - - function getStrA() public view returns (string memory) { - return strA; - } - - //2)、转换(字符串是特殊的动态字节数组),字符串不能直接的获取长度和内容,可以通过转换字节数组进行获取 - function getStrALength() public view returns (uint) { - return bytes(strA).length; - } - - function setStrA() public view returns (string memory) { - bytes memory b = bytes(strA); - b[0] = 'a'; - return string(b); - } - - /** - *6、十六进制字面常量: - * 十六进制字面量,以关键字hex打头,后面紧跟用单或双引号包裹的字符串。 - * 由于一个字节是8位,所以一个hex是由两个[0-9a-z]字符组成的 - *--------- 测试点 ---------- - * 十六进制字面常量定义赋值取值操作 - * - */ - - function getHexLiteraA() public view returns(bytes1){ - - bytes1 b = hex"c8";//十进制数字200 <====> 十六进制c8 <===> 二进制11001000 - return b; - } - - function getHexLiteraB() public view returns(bytes2){ - - bytes2 b = hex"01f4"; //十进制数字256 <===> 十六进制1f4 <===> 二进制111110100 - return b; - } - - function getHexLiteraC() public view returns (bytes2, bytes1, bytes1){ - - bytes2 b = hex"01f4";//十进制数字256 <===> 十六进制1f4 <===> 二进制111110100 - return (b, b[0], b[1]); - } - - - /** - *7、枚举类型 - * 枚举是在Solidity中创建用户定义类型的一种方法,其可以从整型显示转换成枚举。 - * 选项从0开始无符号整数值表示。 - *------------ 测试点 -------------------- - *1、定义 - *2、取值 - */ - - enum Season{Spring, Summer, Autumn, Winter} - - function getSeasonA() public view returns(Season){ - return printSeason(Season.Summer); - } - - function getSeasonB() public view returns(Season){ - //Season s = Season(5);//越界 - Season s = Season(3); - return s; - } - - function getSeasonIndex() public view returns(uint){ - uint s = uint(Season.Spring); - return s; - } - - function printSeason(Season s) public view returns(Season) { - return s; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/1.BasicDataType/BasicDataTypeContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/1.BasicDataType/BasicDataTypeContract.sol deleted file mode 100644 index a09e9331f5..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/1.BasicDataType/BasicDataTypeContract.sol +++ /dev/null @@ -1,98 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试合约基本数据类型 - *1、整型 - *2、浮点型 - *3、布尔型 - *4、字节数组 - */ - -contract BasicDataTypeContract { - - /** - * 1、整型 (1个数字1个字节代表8位) - 1)、int有符号整型,默认int256,包含位数:int8、int16、int24.....int256 - 2)、uint:无符号整数,默认uint256,包含位数:uint8、uint16,uint24.....uint256 - */ - - //1)、验证有符号/无符号整数 - int a = -1;//正常 - int b = 1;//正常 - uint c = 2;//正常 - //uint d = -3;//异常,编译异常,无符号整数不能赋值有符号整数 - - //2)、验证无符号整数位数 - uint8 x1 = 1; - uint8 x2 = 255;//8位无符号整数取值范围0~255 - //uint8 x3 = 256;//8位数无符号整数溢出,编译报错 - uint16 y1 = 1; - uint16 y2 = 65535;//16位无符号整数取值范围0~65535 - //uint16 y3 = 65535;//16位数溢出,编译报错 - - //无符号8位整数溢出(输入最大值255+1,则溢出显示结果为0) - function addUintOverflow(uint8 a) public pure returns(uint8) { - return a + 1; - } - - //3)、验证有符号整数位数 - int8 z1 = 1; - int8 z2 = 127 ;//8位有符号整数取值范围-128~127 - //int8 z3 = 128;//8位数有符号整数溢出,编译报错 - int8 w1 = -1; - int8 w2 = -128; - //int8 w3 = -129;//8位数有符号整数溢出,编译报错 - - //有符号8位整数溢出(输入最大值127+1,则溢出显示结果-128) - function addIntOverflow(int8 a) public pure returns(int8) { - return a + 1; - } - - /** - * 2、浮点型 - 可以用来声明变量,但是不可以用来赋值 - 1)、fixed 有符号固定位浮点数,关键字为 fixedMxN - 2)、ufixed:无符号的固定位浮点数,关键字为 ufixedMxN - (M 表示这个类型要占用的位数,以 8 步进,可为 8 到 256 位。N 表示小数点的个数,可为 0 到 80 之间。) - * - */ - - //1、fixed 有符号固定位浮点数,关键字为 fixedMxN - //fixed f1 = 1.0;//编译异常 - - /** - *3、布尔型:取值为常量值true和false - * - */ - bool h = true; - bool j = false; - - /** - *4、字节数组 - *1)、定长字节数组,关键字:bytes1、bytes2、bytes3...,byte32,byte默认代表bytes1。 - *2)、变长字节数组,关键字:bytes,动态分配大小字节数组 - */ - - //1)、验证定长字节数组 - bytes1 b1 = "a"; - bytes1 b2 = bytes1(uint8(1)); - bytes2 b3 = "ab"; - bytes3 b4 = "abc"; - //bytes3 b5 = "abcd";//位数超出,编译异常 - - function getBytes1Length() public view returns (uint) { - return b3.length; - } - - //2)、验证变长字节数组 - bytes k1 = "a"; - bytes k2 = "ab"; - bytes k3 = "abc"; - - function getBytesLength() public view returns (uint) { - return k3.length; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/1.BasicDataType/BasicDataTypeDeleteContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/1.BasicDataType/BasicDataTypeDeleteContract.sol deleted file mode 100644 index 2e0a61a6cb..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/1.BasicDataType/BasicDataTypeDeleteContract.sol +++ /dev/null @@ -1,112 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试数据类型操作符delete - * solidity中通过操作符delete用于释放空间,对于某个值类型赋予初始化值 - */ - -contract BasicDataTypeDeleteContract { - - bool boolValue; - uint uintValue; - address addr; - bytes3 bytesValue; - string str; - int intValue; - uint8[] arrayInt; - - enum LightEnum{RED, GREEN, YELLOW} - LightEnum lightEnum; - - struct Person{ - uint8 id; - string name; - } - Person person; - mapping (uint8 => uint8) uintMap; - - /** - * 数据赋值 - */ - function initBasicData() public { - boolValue = true; - uintValue = 2; - addr = msg.sender; - bytesValue = "123"; - str = "hello"; - intValue = 5; - //结构体赋值 - person = Person(1,"Ella"); - //数组赋值 - arrayInt = [1,2,3]; - //mapping赋值 - uintMap[1] = 1; - uintMap[2] = 2; - uintMap[3] = 3; - //枚举赋值 - lightEnum = LightEnum.YELLOW; - } - - // ----- delete基本数据类型 ----- - function deleteBasicData() public { - delete boolValue; - delete uintValue; - delete addr; - delete bytesValue; - delete str; - delete intValue; - } - - function getBasicData() public view returns (bool,uint,address,bytes3,string memory,int) { - return (boolValue,uintValue,addr,bytesValue,str,intValue); - } - - - // ------ delete结构体 ------ - function deleteStruct() public { - - delete person; - } - - function getStruct() public view returns (uint8,string memory) { - return (person.id,person.name); - } - - // ----- delete数组 -------- - function deleteArray() public { - delete arrayInt; - } - - function getArrayLength() public view returns (uint256) { - return arrayInt.length; - } - - // ----- delete枚举 ------ - function deleteEnum() public { - - delete lightEnum; - } - - function getEnum() public view returns (LightEnum) { - return lightEnum; - } - - /** - * ------- delete映射 ---------- - * 映射的特殊性,由于映射的键并不总能有效遍历,所以不能直接删除一个映射 - * 但是,可以按照某一项删除映射 - */ - function deleteMapping() public { - - //直接删除映射,编译异常 - //delete uintMap; - //删除映射中某一项 - delete uintMap[2]; - } - - function getMapping() public view returns (uint8) { - return uintMap[2]; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ContractArray.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ContractArray.sol deleted file mode 100644 index 27819e00d3..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ContractArray.sol +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author liweic - * @dev 2020/01/11 - * ----------------- 测试点 ------------------------------ - * 验证合约数组 - */ -contract ContractArray { - ContractArray[] y = new ContractArray[](3); - ContractArray[3] x; - function f() public { - ContractArray[3] memory z; - y.push(this); - x[0] = this; - z[0] = this; - } - - function gety() view public returns(ContractArray[] memory){ - return y; - } - - function getx() view public returns(ContractArray){ - return x[0]; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeArrayComplexContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeArrayComplexContract.sol deleted file mode 100644 index 2dee1706f2..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeArrayComplexContract.sol +++ /dev/null @@ -1,41 +0,0 @@ -pragma solidity ^0.5.17; - -contract ReferenceDataTypeArrayComplexContract { - - - uint256[] arrayUint = [1,2]; - - /** - * 验证含数组运算逻辑合约 - * 此函数是加和运算限制: - * 1)、数组长度不可以超过10; - * 2)、数组值将大于1000过滤掉不进行计算; - * 3)、总和大于500将不再进行加和运算 - */ - function sumComplexArray(uint256[] calldata array) external pure returns (uint256) { - - uint i = 0; - uint sum = 0; - while(i < array.length){ - uint idx = i; - //1、数组长度大于10,停止执行计算 - if(idx > 10) - break; - //获取数组中值 - uint x = array[idx]; - //2、数组值将大于1000过滤掉不进行计算 - if(x >= 1000){ - i += 1; - continue; - }else{ - sum += x; - } - //3、总和大于500将不再进行加和运算 - if(sum >= 500) - return sum; - - i++; - } - return sum; - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeArrayContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeArrayContract.sol deleted file mode 100644 index 6641cf9c06..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeArrayContract.sol +++ /dev/null @@ -1,69 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试引用数据类型 - *1、数组(Array) - *2、结构体(Struct) - */ - -contract ReferenceDataTypeArrayContract { - - /** - *2、数组(Array):一种数据结构,它是存储同类元素的有序集合 - * 1)、数组的声明及初始化及取值(定长数组、可变数组) - * 2)、多维数组 - * 3)、数组成员方法 - * length属性、push()方法 - */ - - /** - *验证:1)、数组的声明及初始化及取值(定长数组、可变数组) - */ - - //声明定长数组 - uint[5] numArray = [1,2,3,4,5]; - - //声明可变数组 - string[] numArray1 = ["1","2","3","4","5","6"]; - - //new关键字创建动态数组 - uint[] a = new uint[](5); - - function setArray(uint index,uint value) public { - numArray[index] = value; - } - - function getArray(uint index) public view returns (uint value) { - return numArray[index]; - } - - /** - *验证:2)、多维数组声明及初始化及取值 - * - */ - //声明二维数组并赋值、取值 - uint[][] multiArray = [[0,0],[0,1],[0,2],[1,0],[1,1],[1,2]]; - - function setMultiArray() public { - multiArray[1][0] = 100; - } - - function getMultiArray() public view returns (uint value,uint lenght) { - return (multiArray[1][0],multiArray[0].length); - } - - /** - *验证:3)、数组的属性及方法 - * length属性、push()方法 - */ - function setArrayPush(string memory x) public { - numArray1.push(x); - } - - function getArrayLength() public view returns (uint) { - return numArray1.length; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeArrayOperatorContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeArrayOperatorContract.sol deleted file mode 100644 index 21a0330cc1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeArrayOperatorContract.sol +++ /dev/null @@ -1,87 +0,0 @@ -pragma solidity ^0.5.17; - -contract ReferenceDataTypeArrayOperatorContract { - - /** - * 验证数组支持的运算符 - * 1)、比较运算符 - * 2)、位运算符 - */ - - //1)、比较运算符:支持的比较运算符有<=,<,==,!=,>=,>,返回的结果是一个bool - function arrayCompare() public view returns (bool,bool,bool,bool,bool) { - - bytes1 a = "a"; - bytes1 b = "b"; - bytes1 c = bytes1(uint8(97)); - - bool r1 = a < b;//返回 ture (ASCII码 Dec a= 97,b = 98) - bool r2 = a > b;//返回 false - bool r3 = a == c;//返回 ture - bool r4 = b != c;//返回 ture - bool r5 = a >= c;//返回 ture - return (r1,r2,r3,r4,r5); - } - - //2)、定长字节数组支持位运算符 &(按位与),|(按位或),^(按位异或),~(按位取反),以及<<(左移位),<<(右移位) - - - //&(按位与)--两个操作数中位都为1,结果才为1,否则结果为0 - function arrayBitAndOperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 b = bytes1(uint8(128));//bin:1000 0000 - bytes1 c = a&b;//hex:0x80,bin:1000 0000,dec:128 - uint8 d = uint8(c); - return (c,d); - } - - - //|(按位或) -- 两个位只要有一个为1,那么结果就是1,否则就为0 - function arrayBitOrOperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 b = bytes1(uint8(128));//bin:1000 0000 - bytes1 c = a|b;//hex:0x81,bin:1000 0001,dec:129 - uint8 d = uint8(c); - return (c,d); - } - - //~(按位取反) -- 如果位为0,结果是1,如果位为1,结果是0 - function arrayBitInverseOperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 c = ~a;//hex:0x7e,bin:0111 1110,dec:126 - uint8 d = uint8(c); - return (c,d); - } - - //^(按位异或) -- 两个操作数的位中,相同则结果为0,不同则结果为1 - function arrayBitXOROperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 b = bytes1(uint8(128));//bin:1000 0000 - bytes1 c = a^b;//hex:0x01,bin:0000 0001,dec:1 - uint8 d = uint8(c); - return (c,d); - } - - //<<(左移位) -- 按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零 - function arrayBitLeftShiftperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 c = a<<1;//hex:0x02,bin:0000 0010,dec:2 - uint8 d = uint8(c); - return (c,d); - } - - //<<(右移位) -- 按二进制形式把所有的数字向右移动对应的位数,低位移出(舍弃),高位的空位补零 - function arrayBitRightShiftperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 c = a>>1;//hex:0x40,bin:0100 0000,dec:64 - uint8 d = uint8(c); - return (c,d); - } - -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeStructContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeStructContract.sol deleted file mode 100644 index 704948e785..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeStructContract.sol +++ /dev/null @@ -1,82 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试引用数据类型 - *1、数组(Array) - *2、结构体(Struct) - */ - -contract ReferenceDataTypeStructContract { - - /** - * 2、结构体 (struct) - * 简述:使用关键字struct定义结构体,struct可以用于映射和数组中作为元素, - * 其本身也可以包含映射和数组类型,不能声明一个struct同时将自身struct作为成员。 - * ----------------- 测试点 ------------------------------ - *1)、定义不同子元素数据(包含基本类型、包含引用数据类型) - *2)、赋值及取值 - */ - - /** - *验证:1)、定义不同子元素数据(包含基本类型、包含引用数据类型) - *--------------------------------------------------------- - * 验证结果:结构体可以包含基本数据类型,引用数据类型,包含结构体(不可以包含自身结构体,否则会编译不过 - */ - - //定义结构体包含基本数据类型 - struct Person { - uint id; - address addr; - uint age; - bool isVIP; - } - - //定义结构体包含引用数据类型 - struct Group { - uint idGroup; - address addrGroup; - mapping(uint => address) addressMap; - string nameGroup; - uint[] pIdArray; - } - - //定义结构体包含结构体(但是结构体不能包含自身) - struct LucyPerson { - uint id; - string name; - Person p; //包含其他结构体 - // LucyPerson lucy; //结构体不能包含自身,否则编译不过 - } - - /** - * 2)、验证结构体赋值及取值 - * --------------------- - * 三种赋值方式 - */ - - //赋值方式一: 按入参顺序赋值 - function initDataStructA() public view returns (uint,address,uint,bool) { - Person memory person = Person(2,msg.sender,25,true); - return (person.id,person.addr,person.age,person.isVIP); - } - - //赋值方式二: 按命名参数赋值 - function initDataStructB() public view returns (uint,address,uint,bool) { - Person memory person = Person({id:2,addr:msg.sender,age:25,isVIP:true}); - return (person.id,person.addr,person.age,person.isVIP); - } - - //赋值方式三:结构体中映射的初始化 - function initDataStructC() public view returns (uint,address,uint,bool) { - Person memory p1;//分配映射空间 - Person memory person = Person({id:2,addr:msg.sender,age:25,isVIP:true}); - p1 = person; - return (p1.id,p1.addr,p1.age,p1.isVIP); - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeStructDeleteContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeStructDeleteContract.sol deleted file mode 100644 index ae1af37ce4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeStructDeleteContract.sol +++ /dev/null @@ -1,63 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试结构体嵌套delete操作 - */ - -contract ReferenceDataTypeStructDeleteContract { - - //内嵌结构体 - struct nestedStruct { - uint nestedValue; - mapping (uint => bool) nestedMapping; - } - //外部结构体 - struct topStruct { - nestedStruct nStruct;//声明内嵌结构体 - uint topValue; - mapping (uint => uint) topMapping; - } - uint toDeletInt; - topStruct tStruct;//声明内嵌结构体 - //构造函数初始化 - constructor() public{ - toDeletInt = 5; - //外部结构体赋值 - tStruct.topValue = 10; - tStruct.topMapping[1] = 1; - tStruct.topMapping[2] = 2; - //外部结构体嵌套的内部结构体赋值 - tStruct.nStruct.nestedValue = 3; - tStruct.nStruct.nestedMapping[1] = true; - tStruct.nStruct.nestedMapping[2] = true; - //执行delete - delete tStruct; - delete toDeletInt; - } - - function getToDeleteInt() public view returns (uint) { - return toDeletInt; - } - - function getTopValue() public view returns(uint){ - return tStruct.topValue; - } - - function getTopMapping() public view returns(uint) { - return tStruct.topMapping[1]; - } - - function getNestedValue() public view returns(uint){ - return tStruct.nStruct.nestedValue; - } - - function getNestedMapping() public view returns(bool) { - return tStruct.nStruct.nestedMapping[1]; - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeStructRecursiveContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeStructRecursiveContract.sol deleted file mode 100644 index ebf16fb862..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/2.ReferenceData/ReferenceDataTypeStructRecursiveContract.sol +++ /dev/null @@ -1,34 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试结构体递归 - */ - -contract ReferenceDataTypeStructRecursiveContract { - - //定义结构体,嵌套递归结构体数组 - struct Person { - Person[] children; - } - Person person; - //构造函数赋值 - constructor() public { - person.children.length = 2; - person.children[0].children.length = 10; - person.children[1].children.length = 20; - } - //获取结构数组长度 - function getStructPersonLength() public view returns (uint256, uint256, uint256) { - Person memory memoryPerson; - memoryPerson = person; - return(memoryPerson.children.length, - memoryPerson.children[0].children.length, - memoryPerson.children[1].children.length); - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/3.MappingData/MappingArrayDataTypeContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/3.MappingData/MappingArrayDataTypeContract.sol deleted file mode 100644 index f67f4c4701..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/3.MappingData/MappingArrayDataTypeContract.sol +++ /dev/null @@ -1,39 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试映射功能点 - *映射(Mapping)简述:映射类型,一种键值对的映射关系存储结构 - *----------------- 测试点 ------------------------------ - * 验证mapping数组类型 - */ - -contract MappingArrayDataTypeContract { - - //定义mapping定长数组 - mapping (uint8 => uint8)[2] a; - mapping (uint8 => uint8)[2] b; - //定义赋值内部函数 - function setMappingInternal(mapping (uint8 => uint8)[2] storage mapArray,uint8 key,uint8 value1, - uint8 value2) internal returns (uint8,uint8) { - //获取mapping数组中值 - uint8 oldValue1 = mapArray[0][key]; - uint8 oldValue2 = mapArray[1][key]; - //给mapping数组赋新值 - mapArray[0][key] = value1; - mapArray[1][key] = value2; - return (oldValue1,oldValue2); - } - //调用内部函数进行赋值 - function set(uint8 key,uint8 value_a1,uint8 value_a2,uint8 value_b1,uint8 value_b2) public { - - setMappingInternal(a,key,value_a1,value_a2); - setMappingInternal(b,key,value_b1,value_b2); - } - //查询mapping定长数组值 - function getValueByKey(uint8 key) public view returns (uint8,uint8,uint8,uint8) { - return(a[0][key],a[1][key],b[0][key],b[1][key]); - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/3.MappingData/MappingDataTypeContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/3.MappingData/MappingDataTypeContract.sol deleted file mode 100644 index 2e93dddb88..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/3.MappingData/MappingDataTypeContract.sol +++ /dev/null @@ -1,74 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试映射功能点 - *映射(Mapping)简述:映射类型,一种键值对的映射关系存储结构 - *----------------- 测试点 ------------------------------ - *1、定义映射 - * mapping(keyType => keyValue) public maps; - * 键类型--允许除映射、变长数组、合约、枚举、结构体外的几乎所有类型 - * 值类型--值类型没有任何限制,可以为任何类型包含映射类型 - *2、赋值、取值 - * map[keyType] ← 不同数值类型; - */ - - -contract MappingDataTypeContract { - - /** - *验证:1、定义映射 - * 键类型--允许除映射、变长数组、合约、枚举、结构体外的几乎所有类型 - * 值类型--值类型没有任何限制,可以为任何类型包含映射类型 - * --------------------------------------------------------- - *验证结果:1)、mapping定义键类型,包含映射、变长数组、合约、枚举、结构体,会编译异常 - * 2)、mapping定义值类型,没有任何限制 - */ - - enum SizeEnum {XL, XXL, XXXL} - struct PeopleStruct { - uint id; - string name; - bool sex; - } - mapping (int => SizeEnum) map; - uint[] uintArr; - - mapping (uint => address) public addressMap; //正确 - mapping (int => bool) public boolMap;//正确 - mapping (bool => byte) public byteMap;//正确 - mapping (bytes1 => string) public stringMap;//正确 - mapping (bytes => uint) public uintMap;//正确 - mapping (string => int) public intMap;//正确 - mapping (address => bytes) public bytesMap;//正确 - mapping (int => mapping (int => SizeEnum)) public sizeMap;//正确 - mapping (int => PeopleStruct) public peopleMap;//正确 - mapping (int => SizeEnum) public SizeEnumMap;//正确 - - // mapping (SizeEnum => int) public enumMap;//异常 - // mapping (PeopleStruct => bytes10) public structMap;//异常 - // mapping (map => string) public stringMap1;//异常 - // mapping (uintArr => string) public stringMap1;//异常 - - -/** - *2、赋值、取值 - * map[keyType] ← 不同数值类型; - */ - - mapping (uint => string) nameMap; - string[] nameArr = ["Lucy","Ella","Lily"]; - - function addName() public { - for (uint i = 0; i < nameArr.length; i++) { - nameMap[i] = nameArr[i]; - } - } - - function getName(uint index) public view returns (string memory) { - return nameMap[index]; - } - -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/4.TypeConversion/TypeConversionBytesToUintContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/4.TypeConversion/TypeConversionBytesToUintContract.sol deleted file mode 100644 index 9f163d428e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/4.TypeConversion/TypeConversionBytesToUintContract.sol +++ /dev/null @@ -1,36 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * - * 测试不同类型转换 - * ----------------- 测试点 ------------------------------ - * 字节转换整型 - */ - -contract TypeConversionBytesToUintContract { - - //字节转换大位整型 - function bytesToBigUint() public view returns(uint64) { - bytes4 a = "abcd";//hex:0x61626364 - uint32 b = uint32(a);//dec:1633837924 - uint64 c = uint64(b);//dec:1633837924 - return c; - } - - //字节转换相同位数整数 - function bytesToSameUint() public view returns(uint8) { - bytes1 a = "a";//hex:0x61 - uint8 b = uint8(a);//dec:97 - return b; - } - - //字节转换小位整型 - function bytesToSmallUint() public view returns (uint16) { - bytes4 a = "abcd";//hex:0x61626364,bin:0‭110 0001 0110 0010 0110 0011 0110 0100‬ - uint32 b = uint32(a);//dec:1633837924 - uint16 c = uint16(b);//dec:25444 ,bin:0110 0011 0110 0100‬ - return c; - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/4.TypeConversion/TypeConversionContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/4.TypeConversion/TypeConversionContract.sol deleted file mode 100644 index 7e7563e23d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/4.TypeConversion/TypeConversionContract.sol +++ /dev/null @@ -1,99 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试类型转换 - *类型简述: - *1、基本类型之间的转换 - *1)、隐式转换: - * A、在进行运算符运算时,两个不同类型的变量之间,那么编译器将隐式地将其中一个类型转换为另一个类型。 - * B、不同类型之间的赋值 - * 只要值类型之间的转换在语义上行得通,而且转换的过程中没有信息丢失,那么隐式转换基本都是可以实现的, - * 隐式转换可以将一个类型转换成与它相当大小,或者更大的类型,反正不行。 - *2)、显式转换: - * 编译器不会将语法上不可转换的类型进行隐式转换,此时我们要通过显式转换的方式。 - * A、一个类型显式转换成更小的类型,相应的高位将被舍弃 - * B、将一个类型显式转换为更大的类型,则将填充左侧(即在更高阶的位置) - *----------------- 测试点 ------------------------------ - *1、基本类型隐式转换 - * 1)、进行运算符操作 - * 2)、进行赋值操作 - * 3)、不同类型转换 - *2、基本类型显式转换 - * 1)、整数操作:大类型<-->小类型 - * 2)、字节操作:大类型<-->小类型 - */ - -contract TypeConversionContract { - - /** - *1、基本类型隐式转换 - *1)、进行运算符操作 - *2)、进行赋值操作 - */ - - //运算符操作隐式转换 - function sum() public view returns(int16) { - int8 a = 2; - int16 b = 100; - return a + b; - } - - //赋值操作隐式转换 - function conversion() public view returns(uint16) { - uint8 a = 10; - uint16 b = a; - return b; - } - - /** - *2、基本类型显示转换 - */ - //无符合与有符号转换 - function displayConversion() public view returns (int8) { - uint8 a = 1; - int8 b = int8(a); - return b; - } - - //转换成更小的类型,会丢失高位 - function displayConversion1() public view returns (uint16,bytes2) { - uint32 a = 0x12345678; //二进制://‭0001 0010 0011 0100 0101 0110 0111 1000,十进制:305,419,896 - uint16 b = uint16(a); //转换高位截取丢失,即 0101 0110 0111 1000,十进制:22136,十六进制:0x5678 - return (b,bytes2(b)); - } - - //转换成更大的类型,将向左侧添加填充位 - function displayConversion2() public view returns (uint32,bytes4) { - uint16 a = 0x1234; //二进制:0001 0010 0011 0100‬,十进制:4660 - uint32 b = uint32(a);//转换 十进制:4660 ,十六进制:0x00001234 - return (b,bytes4(b)); - } - - //转换到更小的字节类型,会丢失右侧数据 - function displayConversion3() public view returns (bytes1) { - bytes2 a = 0x1234;//二进制:0001 0010 0011 0100‬,十进制:4660 - bytes1 b = bytes1(a);//二进制:0001 0010‬‬,十进制:18,十六进制:0x12 - return b; - } - - //转换为更大的字节类型时,向右添加填充位 - function displayConversion4() public view returns (bytes4) { - bytes2 a = 0x1234;//二进制:0001 0010 0011 0100‬,十进制:4660 - bytes4 b = bytes4(a);//十六进制:0x12340000 - return b; - } - - //只有当字节类型和int类型大小相同时,才可以进行转换 - /* function displayConversion5() public view returns (uint32,uint32,uint8,uint8) { - - bytes2 a = 0x1234; - uint32 b = uint16(a); // b = 0x00001234 - uint32 c = uint32(bytes4(a)); // c = 0x12340000 - uint8 d = uint8(uint16(a)); // d = 0x34 - uint8 e = uint8(bytes1(a)); // e = 0x12 - return (b,c,d,e); - }*/ -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/5.StructsDataType/RecursiveStorageMemoryComplex.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/5.StructsDataType/RecursiveStorageMemoryComplex.sol deleted file mode 100644 index b5bfd7cdb3..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/5.StructsDataType/RecursiveStorageMemoryComplex.sol +++ /dev/null @@ -1,52 +0,0 @@ -pragma solidity ^0.5.17; - -contract RecursiveStorageMemoryComplex { - struct Tree { - uint256 data; - Tree[] children; - } - Tree storageTree; - - constructor() public { - storageTree.data = 0x42; - storageTree.children.length = 2; - storageTree.children[0].data = 0x4200; - storageTree.children[1].data = 0x4201; - storageTree.children[0].children.length = 3; - for (uint i = 0; i < 3; i++) - storageTree.children[0].children[i].data = 0x420000 + i; - storageTree.children[1].children.length = 4; - for (uint i = 0; i < 4; i++) - storageTree.children[1].children[i].data = 0x420100 + i; - } - - uint256[] result; - - function countData(Tree memory tree) internal returns (uint256 c) { - c = 1; - for (uint i = 0; i < tree.children.length; i++) { - c += countData(tree.children[i]); - } - } - - function copyFromTree(Tree memory tree,uint256 offset) internal returns (uint256) { - result[offset++] = tree.data; - for (uint i = 0; i < tree.children.length; i++) { - offset = copyFromTree(tree.children[i],offset); - } - return offset; - } - - function run() public returns (uint256[] memory) { - Tree memory memoryTree; - memoryTree = storageTree; - uint256 length = countData(memoryTree); - result = new uint256[](length); - copyFromTree(memoryTree, 0); - return result; - } - - function getRunResult() public view returns(uint256[] memory){ - return result; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/5.StructsDataType/StructDataType.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/5.StructsDataType/StructDataType.sol deleted file mode 100644 index b87e68781c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/3.data_type/5.StructsDataType/StructDataType.sol +++ /dev/null @@ -1,68 +0,0 @@ -pragma solidity ^0.5.17; - -contract StructDataType { - struct A { - mapping(uint=>uint) m; - } - struct B { - mapping(uint=>uint) m; - uint x; - } - struct C { - mapping(uint=>uint)[] ma; - } - struct D { - A[] a; - } - A storageA; - B storageB; - C storageC; - D storageD; - constructor() public { - storageA.m[1] = 2; - storageB.m[3] = 4; - storageB.x = 5; - storageC.ma.length = 6; - storageD.a.length = 7; - } - - uint storageAmValue; - uint storageBxValue; - uint memoryBxValue; - uint storageCmaLen; - uint memoryD1aLen; - uint memoryD2aLen; - - - function run() public returns (uint, uint, uint, uint, uint, uint) { - A memory memoryA = A(); - B memory memoryB = B(2); - C memory memoryC = C(); - D memory memoryD1 = D(new A[](9)); - D memory memoryD2 = storageD; - storageA = memoryA; - storageB = memoryB; - storageC = memoryC; - - storageAmValue = storageA.m[1]; - storageBxValue = storageB.x; - memoryBxValue = memoryB.x; - storageCmaLen = storageC.ma.length; - memoryD1aLen = memoryD1.a.length; - memoryD2aLen = memoryD2.a.length; - - return ( - storageA.m[1], - storageB.x, - memoryB.x, - storageC.ma.length, - memoryD1.a.length, - memoryD2.a.length - ); - } - - //执行run后的结果 - function getRunValue() public view returns(uint, uint, uint, uint, uint, uint) { - return (storageAmValue,storageBxValue,memoryBxValue,storageCmaLen,memoryD1aLen,memoryD2aLen); - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/4.variable/01Time_Units/Time.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/4.variable/01Time_Units/Time.sol deleted file mode 100644 index d269610698..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/4.variable/01Time_Units/Time.sol +++ /dev/null @@ -1,51 +0,0 @@ -pragma solidity ^0.5.17; -/** -* 对 Time 单位进行测试 -* Time的单位关键字有seconds, minutes, hours, days, weeks, years,换算格式如下: -* 1 == 1 seconds -* 1 minutes == 60 seconds -* 1 hours == 60 minutes -* 1 days == 24 hours -* 1 weeks == 7 days -* 1 years == 365 days 0.5.0被弃用,故在0.5.13版本无法使用编译不通过 -* 默认缺省单位是秒 -* @author liweic -* @dev 2019/12/26 18:10 -*/ - -contract Time { - - // 定义全局变量 - uint time; - - //返回当前时间的Unix时间戳和当前块的Unix时间戳差值(本质是一个方法),结果为0 - function testimeDiff() view public returns (uint256){ - return block.timestamp - now; - } - - //时间的默认缺省单位是秒 - function testTime() public{ - time = 100000000; - } - - //时间加1秒结果100000001 - function tSeconds() public view returns(uint){ - return time + 1 seconds; - } - - //时间加1分钟结果100000060 - function tMinutes() public view returns(uint){ - return time + 1 minutes; - } - - //时间加一小时结果100003600 - function tHours() public view returns(uint){ - return time + 1 hours; - } - - //时间加一周结果为100604800 - function tWeeks() public view returns(uint){ - return time + 1 weeks; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/4.variable/02PlatON_Units/PlatONToken.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/4.variable/02PlatON_Units/PlatONToken.sol deleted file mode 100644 index b6d5d1cd14..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/4.variable/02PlatON_Units/PlatONToken.sol +++ /dev/null @@ -1,47 +0,0 @@ -pragma solidity ^0.5.17; - -/************************************************** -* PlatON的单位关键字有von, kvon, mvon, gvon,szabo,finney,lat,klat,mlat,glat换算格式如下: -* 1 glat = 1 * 10^27 von -* 1 mlat = 1 * 10^24 von -* 1 klat = 1* 10^21 von -* 1 lat = 1* 10^18 von -* 1 finney = 1* 10^15 von -* 1 szabo = 1* 10^12 von -* 1 gvon = 1* 10^9 von -* 1 mvon = 1* 10^6 von -* 1 kvon = 1* 10^3 von -* 默认缺省单位是von -*************************************************/ - -// 对 PlatON 币的几个单位进行测试 -contract PlatONToken { - // 定义全局变量 - uint public platontoken; - - function Token() public{ - platontoken = 1 von; - } - - function Plat() public view returns(uint platontoken){ - //1lat = 1000000000000000000 -// return platontoken + 1 lat; - return platontoken + 1 atp; - } - - function Pfinney() public view returns(uint platontoken){ - //1finney = 1000000000000000 - return platontoken + 1 finney; - } - - function Pszabo() public view returns(uint platontoken){ - //1 szabo = 1000000000000 - return platontoken + 1 szabo; - } - - function Pvon() public view returns(uint platontoken){ - //默认缺省单位是von - return platontoken + 1; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/Control.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/Control.sol deleted file mode 100644 index 1398d3e388..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/Control.sol +++ /dev/null @@ -1,162 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 控制结构 - * 1. if...else - * 2. do...while - * 3. for循环 - * 4. for循环包含break - * 5. for循环包含continue - * 6. for循环包含return - * 7. 三目运算符 - * - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - - -contract Control { - - //1.if控制结构执行结果值 - string public ifControlResult; - - //2.doWhile控制结构执行结果值 - uint public doWhileControlResult; - - //3.forControl控制结构执行结果值 - uint public forControlResult; - - //4.forBreakControl控制结构执行结果值 - uint public forBreakControlResult; - - //5.forContinueControl控制结构执行结果值 - uint public forContinueControlResult; - - //6.forReturnControl控制结构执行结果值 - uint public forReturnControlResult; - - //forControl控制结构执行结果值 - string public forThreeControlControlResult; - - - /** - *1. if...else - */ - function ifControl(uint age) public { - if(age < 20){ - ifControlResult = "you are a young man"; - }else if (age < 60){ - ifControlResult = "you are a middle man"; - }else { - ifControlResult = "you are a old man"; - } - } - - function getIfControlResult() view public returns(string memory){ - return ifControlResult; - } - - /** - *2. do...while - */ - function doWhileControl() public returns (uint) { - doWhileControlResult = 0; - uint i = 0; - do{ - doWhileControlResult +=i; - ++i; - }while(i <10); - return doWhileControlResult; - } - - function getdoWhileResult() view public returns(uint){ - return doWhileControlResult; - } - - - - /** - *3. for循环 - */ - function forControl() public returns (uint) { - forControlResult = 0; - for(uint i=0;i<10;i++){ - forControlResult +=i; - } - return forControlResult; - } - - function getForControlResult() view public returns(uint){ - return forControlResult; - } - - /** - *4. for循环包含break - * 满足条件就退出for循环 - */ - function forBreakControl() public returns (uint) { - forBreakControlResult = 0; - for(uint i=1;i<10;i++){ - if(i % 2 == 0){ - break; - } - forBreakControlResult +=i; - } - return forBreakControlResult; - } - - function getForBreakControlResult() view public returns(uint){ - return forBreakControlResult; - } - - /** - * 5. for循环包含continue - * 满足条件的就跳过 - */ - function forContinueControl() public returns (uint) { - forContinueControlResult = 0; - for(uint i=0;i<10;i++){ - if(i % 2 == 0){ - continue; - } - forContinueControlResult +=i; - } - return forContinueControlResult; - } - - function getForContinueControlResult() view public returns(uint){ - return forContinueControlResult; - } - - /** - * 6. for循环包含return - * 满足条件就返回 - */ - function forReturnControl() public returns (uint) { - forReturnControlResult = 0; - for(uint i=1;i<10;i++){ - if(i % 5 == 0){ - return forReturnControlResult; - } - forReturnControlResult +=i; - } - return forReturnControlResult; - } - - function getForReturnControlResult() view public returns(uint){ - return forReturnControlResult; - } - - - /** - * 7. 三目运算符 - */ - function forThreeControlControl(int age) public { - forThreeControlControlResult = age> 20?"less than 20":"more than 20"; - } - - function getForThreeControlControlResult() view public returns(string memory){ - return forThreeControlControlResult; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/DoWhileError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/DoWhileError.sol deleted file mode 100644 index 97a697d0db..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/DoWhileError.sol +++ /dev/null @@ -1,68 +0,0 @@ -pragma solidity ^0.5.17; -/** - * dowhile控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 11:09 - */ - - -contract DoWhileError { - - struct S { bool f; } - S s; - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function f() internal view returns (S storage c) { - do { - break; - c = s; - } while(false); - }*/ - - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function g() internal view returns (S storage c) { - do { - if (s.f) { - continue; - c = s; - } - else { - } - } while(false); - }*/ - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function i() internal view returns (S storage c) { - do { - if (s.f) { - continue; - } - else { - c = s; - } - } while(false); - }*/ - - - /** - * 正确 - */ - function doWhileControl() internal view returns (S storage c) { - do {} while((c = s).f); - } - - function getDoWhileControlRes() public view returns(bool){ - S storage doWileS = doWhileControl(); - return doWileS.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/ForError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/ForError.sol deleted file mode 100644 index 916f4c42ab..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/ForError.sol +++ /dev/null @@ -1,55 +0,0 @@ -pragma solidity ^0.5.17; -/** - * for控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 18:02 - */ - - -contract ForError { - - struct S { bool f; } - S s; - S s1; - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function f() internal view returns (S storage c) { - for(;; c = s) { - } - }*/ - - - function forControlFirst() internal view returns (S storage c) { - for(c = s;c.f==true;) { - } - } - - function getForControlRes() public view returns(bool){ - S storage forS = forControlFirst(); - return forS.f; - } - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function g() internal view returns (S storage c) { - for(;;) { - c = s; - } - }*/ - - function forControlSecond() internal view returns (S storage c) { - for(; (c = s1).f;) { - } - } - - function getForControlRes1() public view returns(bool){ - S storage forS = forControlSecond(); - return forS.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/ShortCircuitError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/ShortCircuitError.sol deleted file mode 100644 index 8119634988..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/ShortCircuitError.sol +++ /dev/null @@ -1,55 +0,0 @@ -pragma solidity ^0.5.17; -/** - * && || 短路语法 - * - * @author hudenian - * @dev 2020/1/6 17:38 - */ - -contract ShortCircuitError { - - struct S { bool f; } - S s; - S s1; - - /** - * 第一个条件为false,导致c未初始化,会导致返回空指针错误 - */ -/* function f() internal view returns (S storage c) { - false && (c = s).f; - }*/ - - //right - function f() internal view returns (S storage c) { - (c = s).f && false; - } - - - function getF() public view returns(bool){ - S storage c = f(); - return c.f; - } - - /** - * 第一个条件为true,导致c未初始化,会导致返回空指针错误 - */ - /*function g() internal view returns (S storage c) { - true || (c = s).f; - }*/ - - /*function h() internal view returns (S storage c) { - // expect error, although this is always fine - true && (false || (c = s).f); - }*/ - - //right - function g() internal view returns (S storage c) { - (c = s1).f || true; - } - - function getG() public view returns(bool){ - S storage c = g(); - return c.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/WhileError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/WhileError.sol deleted file mode 100644 index 01e2824b70..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/WhileError.sol +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.5.17; -/** - * while控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/7 11:30 - */ - - -contract WhileError { - - struct S { bool f; } - S s; - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function f() internal view returns (S storage c) { - while(false) { - c = s; - } - }*/ - - function f() internal view returns (S storage c) { - while((c = s).f) { - } - } - - function getWhileControlRes() public view returns(bool){ - S storage whileS = f(); - return whileS.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/ifError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/ifError.sol deleted file mode 100644 index 4fbb8a95ce..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/5.control_struct/ifError.sol +++ /dev/null @@ -1,59 +0,0 @@ -pragma solidity ^0.5.17; -/** - * if控制结构语法 - * - * @author hudenian - * @dev 2020/1/6 18:02 - */ - - -contract ifError { - - struct S { bool f; } - S s; - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function f(bool flag) internal view returns (S storage c) { - if (flag) c = s; - }*/ - - - function ifControl(bool flag) internal view returns (S storage c) { - if (flag) c = s; - else c = s; - } - - function getIfControlRes() public view returns(bool){ - S storage ifS = ifControl(true); - return ifS.f; - } - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function g(bool flag) internal returns (S storage c) { - if (flag) c = s; - else - { - if (!flag) c = s; - else s.f = true; - } - }*/ - - function ifControlSecond(bool flag) internal view returns (S storage c) { - if (flag) c = s; - else - { - if (!flag) c = s; - else c = s; - } - } - - function getIfControlRes1() public view returns(bool){ - S storage ifS = ifControlSecond(true); - return ifS.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/AbstractContractAExecuteTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/AbstractContractAExecuteTest.sol deleted file mode 100644 index f99399e228..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/AbstractContractAExecuteTest.sol +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试抽象合约功能点 - * 抽象合约(Abstract )简述: - * 1、合约函数缺少实现,或者除了包含未实现的函数还包含已经实现的函数。 - * 2、如果合约继承自抽象合约,并且没有去重写实现所有未实现的函数,那么它本身依旧是抽象合约。 - *----------------- 测试点 ------------------------------ - * 情况分类: - * 1、不含任何实现的抽象合约 - * 2、包含部分实现的抽象合约 - * 测试操作: - * 1、抽象合约是否可编译、部署、执行 - * 2、抽象合约被继承,但未被实现抽象方法,是否可正常执行 - */ - -/** - * 1、测试:不含任何实现的抽象合约,是否可编译部署执行 - * ------------------------------------------------ - * 验证结果:抽象合约可以编译、部署,但是不可以执行调用方法 - */ -contract AbstractContractGrandpa { - function name() public view returns (string memory v); -} - -/** - * 1.1、测试:包含部分实现的抽象合约,可编译部署执行 - * ------------------------------------------------ - * 验证结果:抽象合约可以编译、部署,但是不可以执行调用方法 - */ -contract AbstractContractFather { - function fatherName() public view returns (string memory v); - - function fatherAge() public view returns (int v) { - int age = 20; - return age; - } -} - -/** - * 2、测试:抽象合约被继承,但未被实现抽象方法,是否可正常执行 - * ------------------------------------------------ - * 验证结果:抽象合约被继承,但未被实现抽象方法,可以编译、部署,但是不可以执行调用方法 - */ -contract AbstractContractSon is AbstractContractFather { - function sonName() public view returns (string memory v) { - string memory name = "sonName"; - return name; - } -} - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/AbstractContractBExecuteTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/AbstractContractBExecuteTest.sol deleted file mode 100644 index 97132d47f1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/AbstractContractBExecuteTest.sol +++ /dev/null @@ -1,72 +0,0 @@ -pragma solidity ^0.5.17; -import "./BaseAbstract.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试抽象合约功能点 - * 抽象合约(Abstract )简述: - * 1、合约函数缺少实现,或者除了包含未实现的函数还包含已经实现的函数。 - * 2、如果合约继承自抽象合约,并且没有去重写实现所有未实现的函数,那么它本身依旧是抽象合约。 - *----------------- 测试点 ------------------------------ - * 测试操作: - * 1、抽象合约被继承,且被实现抽象方法,是否可正常执行 - * 2、普通合约是否可以继承多个抽象合约 - */ - -/** - * 1、抽象合约被继承,且实现抽象方法,是否可正常执行 - * ----------------------------------------------- - * 验证结果:抽象合约被继承并实现了抽象方法后,是可以部署执行的 - */ -contract AbstractContractBSubclass is AbstractContractParentClass { - - //实现父类抽象函数 - function parentName() public view returns (string memory v){ - return myName; - } - - function bSubName() public view returns (string memory v) { - string memory name = "bSubName"; - return name; - } -} - -/** - * 2、普通合约是否可以继承多个抽象合约,且实现抽象方法,是否可以正常编译部署执行 - * ----------------------------------------------- - * 验证结果:普通合约继承多个抽象合约,可以正常编译执行 - */ - contract AbstractContractCSubclass is AbstractContractASubclass,AbstractContractParentClass { - - //实现ParentClass父类函数 - function parentName() public view returns (string memory v){ - string memory name = "parentName"; - return name; - } - - //实现ASubclass父类函数 - function aSubName() public view returns (string memory v){ - return subName; - } - - function setASubName(string memory v) public{ - subName = v; - } - - function cSubName() public view returns (string memory v) { - string memory name = "cSubName"; - return name; - } - } - - - - - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/AbstractContractCExecuteTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/AbstractContractCExecuteTest.sol deleted file mode 100644 index f17148699a..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/AbstractContractCExecuteTest.sol +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.5.17; -import "./BaseAbstract.sol"; -import "./BaseAbstractParent.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试抽象合约功能点 - * 抽象合约(Abstract )简述: - * 1、合约函数缺少实现,或者除了包含未实现的函数还包含已经实现的函数。 - * 2、如果合约继承自抽象合约,并且没有去重写实现所有未实现的函数,那么它本身依旧是抽象合约。 - *----------------- 测试点 ------------------------------ - * 测试操作: - * 1、抽象合约是否可以继承抽象合约 - * 2、抽象合约是否可以继承接口(但是反之不可以) - */ - -/** - * 1、抽象合约是否可以继承抽象合约 - * ---------------------------------- - * 验证结果: 抽象合约是可以继承抽象合约 - */ - contract AbstractContractFSubclass is AbstractContractDSubclass { - - function parentName() public view returns (string memory v){ - return myName; - } - - function dSubClassName() public view returns (string memory dSubName){ - - } - } - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/AbstractContractDExecuteTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/AbstractContractDExecuteTest.sol deleted file mode 100644 index 95f32b666b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/AbstractContractDExecuteTest.sol +++ /dev/null @@ -1,64 +0,0 @@ -pragma solidity ^0.5.17; - -import "./BaseAbstractParentInterface.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试抽象合约功能点 - * 抽象合约(Abstract )简述: - * 1、合约函数缺少实现,或者除了包含未实现的函数还包含已经实现的函数。 - * 2、如果合约继承自抽象合约,并且没有去重写实现所有未实现的函数,那么它本身依旧是抽象合约。 - *----------------- 测试点 ------------------------------ - * 测试操作: - * 1、抽象合约是否可以继承抽象合约 - * 2、抽象合约是否可以继承接口(但是反之不可以) - */ - -/** - * 1)、抽象合约是否可以继承接口(反之接口是否可以继承抽象合约) - * ---------------------------------- - * 验证结果:抽象合约是可以继承接口(但是反过来接口是不可以继承抽象合约) - */ - contract AbstractContractGSubclass is AbstractContractESubclass { - int public age = 0; - - function setInterAge(int v) public{ - age = v; - } - - function aInterAge() external view returns (int){ - return age; - } - } - -//2)、接口是不可以继承抽象合约(编译报错) -/* interface AbstractContractBInterface is AbstractContractParentClass{ - function bInterAge() external returns (int age); - }*/ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/BaseAbstract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/BaseAbstract.sol deleted file mode 100644 index 1052fd11a1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/BaseAbstract.sol +++ /dev/null @@ -1,28 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * 基础合约 - */ -contract AbstractContractParentClass { - - string myName = ""; - function parentName() public view returns (string memory v); - - function setParentName(string memory name) public { - myName = name; - } -} - -contract AbstractContractASubclass { - - string subName = ""; - function aSubName() public view returns (string memory v); - function aSubAge() public view returns (int v) { - int age = 20; - return age; - } -} - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/BaseAbstractInterface.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/BaseAbstractInterface.sol deleted file mode 100644 index a236e2b22b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/BaseAbstractInterface.sol +++ /dev/null @@ -1,12 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * 基础合约(定义接口) - */ - -interface AbstractContractAInterface{ - function aInterAge() external view returns (int age); -} - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/BaseAbstractParent.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/BaseAbstractParent.sol deleted file mode 100644 index d97901facf..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/BaseAbstractParent.sol +++ /dev/null @@ -1,17 +0,0 @@ -pragma solidity ^0.5.17; -import "./BaseAbstract.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 基础合约(抽象合约是否可以继承抽象合约) - */ - - contract AbstractContractDSubclass is AbstractContractParentClass { - - function setParentNameD(string memory name) public { - myName = name; - } - - function dSubClassName() public view returns (string memory dSubName); - } diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/BaseAbstractParentInterface.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/BaseAbstractParentInterface.sol deleted file mode 100644 index dbc6d0f7e4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/1.abstract/BaseAbstractParentInterface.sol +++ /dev/null @@ -1,12 +0,0 @@ -pragma solidity ^0.5.17; -import "./BaseAbstractInterface.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 基础合约(定义抽象合约继承接口) - */ - -contract AbstractContractESubclass is AbstractContractAInterface { - function setInterAge(int v) public; -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/2.interface/InterfaceContractALimitTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/2.interface/InterfaceContractALimitTest.sol deleted file mode 100644 index 2b01f657de..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/2.interface/InterfaceContractALimitTest.sol +++ /dev/null @@ -1,63 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试合约接口功能点 - *接口(interface)简述:接口类似于抽象合约,但是其不能实现任何函数。 - *----------------- 测试点 ------------------------------ - *1、接口限制点测试(5.0以后版本) - *1)、 不能声明构造函数 - *2)、 不能声明状态变量 - *3)、 接口的函数只能声明外部类型(external) - */ - -interface InterfaceContractParent { - - /** - * 验证:1、接口不能声明状态变量 - *----------------------------- - * 验证结果:接口中定义状态变量,会编译失败 - * Variables cannot be declared in interfaces.solc - */ - // uint a = -1; - - /** - * 验证:2、接口不能声明构造函数 - *----------------------------- - * 验证结果:接口中定义构造函数,会编译失败 - */ - /*constructor() public{ - a += 2; - }*/ - - - /** - * 验证:3、接口的函数只能声明外部类型(external) - *------------------------------ - * 验证结果:在5.0以后版本,接口的函数只能声明外部类型(external),否则会编译失败; - * 在5.0以前的版本,使用public - */ - - //5.0以后版本 - function sumExternal(int a,int b) external view returns (int); - - //5.0以前版本,否则Error: Functions in interfaces must be declared external - //function sumPublic(int a,int b) public returns (int); -} - -contract InterfaceContractParentTest is InterfaceContractParent { - - function sumExternal(int a,int b) external view returns (int) { - return a + b; - } - -} - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/2.interface/InterfaceContractBLimitTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/2.interface/InterfaceContractBLimitTest.sol deleted file mode 100644 index 1df754f924..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/2.interface/InterfaceContractBLimitTest.sol +++ /dev/null @@ -1,88 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * - * 测试合约接口功能点 - * 接口(interface)简述:接口类似于抽象合约,但是其不能实现任何函数。 - *----------------- 测试点 ------------------------------ - * 1、接口限制点测试(5.0以后版本) - * 1)、 可以声明结构体 - * 2)、 可以声明枚举 - */ -interface InterfaceContractEnum { - - /** - * 验证:1、接口可以声明枚举 - *----------------------------- - * 验证结果:接口中可以正常定义枚举 - */ - enum FreshJuiceSize { - SMALL, - MEDIUM, - LARGE - } - - function getDefaultChoice() external returns (uint); -} - -contract InterfaceContractEnumTest is InterfaceContractEnum { - - FreshJuiceSize choice; - //默认饮料类型 - FreshJuiceSize defaultChoice = FreshJuiceSize.MEDIUM; - - function setLarge() public { - choice = FreshJuiceSize.LARGE; - } - - function getChoice() public view returns (FreshJuiceSize) { - return choice; - } - - function getDefaultChoice() external returns (uint) { - return uint(defaultChoice); - } -} - -interface InterfaceContractStruct { - - /** - * 验证:2、接口可以声明结构体 - *----------------------------- - * 验证结果:接口中可以定义结构体 - */ - struct Book { - int bookID; - string title; - string describe; - } - function getDefaultBookID() external returns (int); -} - -contract InterfaceContractStructTest is InterfaceContractStruct { - - Book book; - function setBook() public { - book = Book(1,"PlatON","PlatON Describe"); - } - - function getBookID() public view returns (int) { - return book.bookID; - } - - function getDefaultBookID() external returns (int) { - if(book.bookID == 0){ - return 0; - } - return book.bookID; - } -} - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/2.interface/InterfaceContractInheritTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/2.interface/InterfaceContractInheritTest.sol deleted file mode 100644 index 8296b2e279..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/2.interface/InterfaceContractInheritTest.sol +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - *测试合约接口功能点 - *接口(interface)简述:接口类似于抽象合约,但是其不能实现任何函数。 - *----------------- 测试点 ------------------------------ - *1、接口被继承情况测试 - *1)、 普通合约继承多个接口 - *2)、 接口无法继承接口 - *3)、 接口无法继承其他合约(在抽象函数已经验证过此问题,估此处不再验证) - */ -interface InterfaceContractInheritOne { - function sum(uint a, uint b) external view returns (uint); -} - -interface InterfaceContractInheritTwo { - function reduce(uint c, uint d) external view returns (uint); -} - -/** - *验证:1)、普通合约是否可以继承多个接口 - *----------------------------------- - *验证结果:普通合约可以继承多个接口 - */ -contract InterfaceContractInheritMultipleTest is InterfaceContractInheritOne, - InterfaceContractInheritTwo { - - function sum(uint a, uint b) external view returns (uint) { - return a + b; - } - - function reduce(uint c, uint d) external view returns (uint) { - return c - d; - } - - - -} - -/** - * 验证:2)、 接口是否可以继承接口 - * ------------------------------- - * 验证结果:接口是不可以继承接口的,无法编译通过 - */ - -/* interface InterfaceContractInheritTest is InterfaceContractInheritOne { - - function multiply(uint e, uint f) external returns (uint); - }*/ - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractAMultipleTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractAMultipleTest.sol deleted file mode 100644 index f719338db0..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractAMultipleTest.sol +++ /dev/null @@ -1,53 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - *1、多重继承:合约可以继承多个合约,也可以被多个合约继承 - *验证: 1)、多重合约继承重名问题,继承顺序很重要,是否遵循最远继承原则 - * --------------------------------------------------------------- - *验证结果:多重合约继承,如果父类合约有同名函数,则遵循最远继承原则。 - */ -contract InheritContractParentOneClass { - - function getDate() public view returns (uint) { - return 1; - } -} - -contract InheritContractParentTwoClass { - - function getDate() public view returns (uint) { - return 2; - } -} - -contract InheritContractAMutipleClass is InheritContractParentTwoClass,InheritContractParentOneClass { - - function callGetDateA() public view returns (uint) { - return getDate(); - } -} - -contract InheritContractBMutipleClass is InheritContractParentOneClass,InheritContractParentTwoClass { - - function callGetDateB() public view returns (uint) { - return getDate(); - } -} - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractBMultipleTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractBMultipleTest.sol deleted file mode 100644 index 9a1ce09cf7..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractBMultipleTest.sol +++ /dev/null @@ -1,69 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - *1、多重继承:合约可以继承多个合约,也可以被多个合约继承 - * 验证:2)、当继承多个合约时,这些父合约中不允许出现相同的函数名,事件名,修改器名,或互相重名。 - * 另外,隐藏情况,默认状态变量的getter函数导致的重名。 - *-------------------------------------------- - * 验证结果:当继承多个合约时,父类重名函数与修饰器、事件与修饰器、默认getter函数名同名,会编译异常 - */ - -contract InheritContractAParentBase { - address public owner;//编译器自动为所有public 状态变量创建getter函数 - modifier ownd1(){ - if (msg.sender == owner) - _; - } - - function getAddressA() public view returns (address) { - return msg.sender; - } -} - -contract InheritContractBParentBase { - address owner2; - modifier ownd2() { - if (msg.sender == owner2) - _; - } - - function getAddressB() public view returns (address) { - return msg.sender; - } - //1、同名函数名与修饰器,编译异常 - /* function ownd1() public view returns (address) { - return msg.sender; - }*/ - - //2、同名修饰器与事件,编译异常 - // event ownd1(address addr); - - //3、默认状态变量 owner的getter函数导致的重名,编译异常 - /* function owner() public view returns (address) { - return msg.sender; - }*/ -} - -contract InheritContractParentMutipleTest is InheritContractBParentBase,InheritContractAParentBase { - function sum() public view { - - } -} - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractCMultipleTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractCMultipleTest.sol deleted file mode 100644 index 09b0eb4552..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractCMultipleTest.sol +++ /dev/null @@ -1,39 +0,0 @@ -pragma solidity ^0.5.17; -import "./InheritContractAMultipleTest.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - * - *验证:2、多重继承(父类合约存在父子关系),如果继承的合约之间有父子关系,是否必须遵循先父到子的继承顺序 - *------------------------------- - *验证结果:多重继承(父类合约存在父子关系),合约继承必须遵循先父到子的继承顺序,否则会编译异常。 - */ - - contract InheritContractParentThreeClass is InheritContractParentTwoClass { - - function getDataThree() public view returns (uint) { - return 3; - } -} - -contract InheritContractSubclass is InheritContractParentTwoClass,InheritContractParentThreeClass { - - function getSubData() public view returns (uint) { - return 4; - } -} - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractOverloadComplexTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractOverloadComplexTest.sol deleted file mode 100644 index 85c046d561..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractOverloadComplexTest.sol +++ /dev/null @@ -1,68 +0,0 @@ -pragma solidity ^0.5.17; - -/** - - * @author qudong - * @dev 2019/12/23 - * - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - *4、合约函数重载(Overload)复杂情况 - **/ - -contract InheritContractOverloadBaseBase { - uint public x; - uint public y; - function init(uint a, uint b) public { - x = b; - y = a; - } - function init(uint a) public { - x = a + 1; - } - function getX() public view returns (uint) { - return x; - } - function getY() public view returns (uint) { - return y; - } -} - -contract InheritContractOverloadBase is InheritContractOverloadBaseBase { - function init(uint a, uint b) public { - x = a; - y = b; - } - function init(uint a) public { - x = a; - } -} - -contract InheritContractOverloadChild is InheritContractOverloadBase { - function initBase(uint c) public { - InheritContractOverloadBase.init(c); - } - function initBase(uint c, uint d) public { - InheritContractOverloadBase.init(c, d); - } - function initBaseBase(uint c) public { - InheritContractOverloadBaseBase.init(c); - } - function initBaseBase(uint c, uint d) public { - InheritContractOverloadBaseBase.init(c, d); - } -} - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractOverloadTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractOverloadTest.sol deleted file mode 100644 index 48a46aeef0..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractOverloadTest.sol +++ /dev/null @@ -1,46 +0,0 @@ -pragma solidity ^0.5.17; - -/** - - * @author qudong - * @dev 2019/12/23 - * - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - *4、合约函数重载(Overload):合约可以有多个同名函数,可以有不同输入参数。 - * 重载解析和参数匹配 - **/ - -contract InheritContractOverload { - - uint sumInt; - function sum(uint a,uint b) public pure returns(uint sumInt) { - sumInt = a + b; - } - - function sum(uint a,uint b, uint c) public pure returns(uint sumInt) { - sumInt = a + b + c; - } - - function getDataA() public view returns(uint) { - return sum(1,2); - } - - function getDataB() public view returns(uint) { - return sum(1,2,3); - } - - -} - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractPassParamTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractPassParamTest.sol deleted file mode 100644 index f583903a48..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/6.oop/3.inherit/InheritContractPassParamTest.sol +++ /dev/null @@ -1,50 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - -/** - *验证:3、继承支持传参(继承中基类构造函数的传参) - *------------------------------------------- - * 验证结果:继承支持传参两种方式 - */ - - contract InheritContractBase { - - uint a = 0; - constructor(uint x) public { - a = x; - } - } - -//给基类构造函数传参方式一 -contract InheritContractASub is InheritContractBase(2) { - function getDataA() public view returns (uint) { - return a; - } -} - -//给基类构造函数传参方式二 -contract InheritContractBSub is InheritContractBase { - uint b; - constructor () InheritContractBase(3) public { - uint y = 1; - b = y + a; - } - - function getDataB() public view returns(uint){ - return b; - } -} - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/7.event/EventCallContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/7.event/EventCallContract.sol deleted file mode 100644 index 8e7d250178..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/7.event/EventCallContract.sol +++ /dev/null @@ -1,63 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 事件验证 - * (1)event关键字声明事件验证 - * (2)indexed关键字定义事件索引验证 - * (3)emit关键字触发事件验证 - * (4)anonymous关键字定义匿名事件验证 - * (5)函数内多事件监听验证 - * (6)函数内多匿名事件监听验证 - * @author Albedo - * @dev 2019/12/19 - **/ -contract EventCallContract { - //事件声明(事件名称以大写字母开头,以区别于函数) - event Increment(address who); - //添加索引(如果indexed声明索引超过3个,编译异常:超过3个indexed标记的元素) - event Deposit( - address indexed _from, - // bytes32 indexed _idl, - // bytes32 indexed _idm, - uint _value - ); - - //匿名事件 - event Anonymous(uint256 _id) anonymous; - event Anonymous2(uint256 _id) anonymous; - //一般事件触发 - function emitEvent() public returns (uint256 count){ - //emit 事件触发 - emit Increment(msg.sender); - count += 1; - } - - function indexedEvent() public returns (uint256 count){ - //emit 事件触发 - emit Deposit(msg.sender, 12); - count += 1; - } - - function anonymousEvent() public returns (uint256 count){ - count += 1; - //emit 事件触发 - emit Anonymous(count); - } - //外部:JavaScript API配合来回调--定义事件及触发事件——使用 Web3 监听事件 - - event BoolEvent(bool result); - //函数多事件监听验证 - function testBool() public{ - emit BoolEvent(false); - emit BoolEvent(true); - emit Increment(msg.sender); - emit Anonymous(12); - emit Deposit(msg.sender, 12); - } - - //函数多匿名事件监听验证 - function testMultiAnonymous() public{ - emit Anonymous(12); - emit Anonymous2(13); - emit Anonymous(14); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/7.event/EventIndexedContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/7.event/EventIndexedContract.sol deleted file mode 100644 index 9002bdde17..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/7.event/EventIndexedContract.sol +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * 事件声明类型验证 - * (1)一维数组索引 - * (2)二维数组但一维确定长度 索引 - * (3)字符串索引 - * (4)枚举索引 - * (4)复杂索引 - * (5)匿名事件索引认证 - * @author Albedo - * @dev 2020/01/06 - **/ -contract EventIndexedContract { - //int索引验证 - event MinusEvent(int indexed minus); - function testMinus(int value) public{ - emit MinusEvent(value); - } - uint[] uintArray = [0,1,2,3,4]; - //一维数组索引测试 - event OneDimensionalArrayEvent(uint[] indexed array); - function testOneDimensionalArray() public{ - emit OneDimensionalArrayEvent(uintArray); - } - uint[2][] multiArray = [[0,0],[0,1],[0,2],[0,3],[0,4],[0,5]]; - - event TwoDimensionalArrayEvent(uint[2][] indexed array); - //二维数组索引 - function testTwoDimensionalArray() public{ - emit TwoDimensionalArrayEvent(multiArray); - } - string str = "1234567890097865432112345678900987654321123456789009764354666663242444444444475831546856"; - event StringEvent(string indexed str); - //string类型索引 - function testStr() public{ - emit StringEvent(str); - } - enum ActionChoices { GoLeft, GoRight, GoStraight, SitStill } - event EnumEvent(ActionChoices indexed choices); - - //测试枚举类型索引 - function testEnum() public{ - emit EnumEvent(ActionChoices.GoLeft); - } - - event ComplexIndexedEvent(uint[] indexed array,ActionChoices indexed choice,string indexed str); - //复杂类型索引 - function testComplex() public{ - emit ComplexIndexedEvent(uintArray,ActionChoices.GoLeft,str); - } - - event AnonymousIndexedNum(uint indexed u1,uint indexed u2,uint indexed u3,uint indexed u4) anonymous; - //匿名事件索引数量测试 - function testAnonymousIndexed() public{ - emit AnonymousIndexedNum(1,2,3,4); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/7.event/EventTypeContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/7.event/EventTypeContract.sol deleted file mode 100644 index af3bb99c39..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/7.event/EventTypeContract.sol +++ /dev/null @@ -1,42 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * 事件声明类型验证 - * (1)一维数组 - * (2)二维数组但是二维确定长度 - * (3)字符串类型 - * (3)枚举类型 - * @author Albedo - * @dev 2020/01/06 - **/ -contract EventTypeContract { - - uint[] uintArray = [0,1,2,3,4]; - event OneDimensionalArrayEvent(uint[] array); - //测试一维数组类型声明事件 - function testOneDimensionalArray() public{ - emit OneDimensionalArrayEvent(uintArray); - } - uint[2][] multiArray = [[0,0],[0,1],[0,2],[0,3],[0,4],[0,5]]; - - event TwoDimensionalArrayEvent(uint[2][] array); - //测试二维数组声明事件 - function testTwoDimensionalArray() public{ - emit TwoDimensionalArrayEvent(multiArray); - } - string str = "1234567890097865432112345678900987654321123456789009764354666663242444444444475831546856"; - event StringEvent(string str); - //测试string类型声明事件 - function testStr() public{ - emit StringEvent(str); - } - - enum ActionChoices { GoLeft, GoRight, GoStraight, SitStill } - event EnumEvent(ActionChoices choices); - - //测试枚举类型声明事件 - function testEnum() public{ - emit EnumEvent(ActionChoices.GoLeft); - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/8.exception_handle/AssertHandle.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/8.exception_handle/AssertHandle.sol deleted file mode 100644 index 798b596a2b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/8.exception_handle/AssertHandle.sol +++ /dev/null @@ -1,94 +0,0 @@ -pragma solidity ^0.5.17; -/** - * assert(bool condition)函数验证: - * 如果条件不满足,则使当前交易没有效果 ,gas正常消耗,用于检查内部错误 - * 1.数组越界访问产生生异常验证,如i >= x.length 或 i < 0时访问x[i] - * 2.定长bytesN数组越界访问产生异常验证 - * 3.被除数为0或取模运算产生异常验证 - * 4.对一个二进制移动一个负的值产生异常验证 - * 5.整数进行可以显式转换为枚举时,如果将过大值,负值转为枚举类型则抛出异常 - * 6.调用内部函数类型的零初始化变量验证 - * 7.用assert的参数为false产生异常验证 - * @author Albedo - * @dev 2019/12/30 - **/ - -library ArrayUtils { - // they will be part of the same code context - function map(uint[] memory self, function (uint) pure returns (uint) f) - internal - pure - returns (uint[] memory r) - { - r = new uint[](self.length); - for (uint i = 0; i < self.length; i++) { - r[i] = f(self[i]); - } - } - - function reduce( - uint[] memory self, - function (uint, uint) pure returns (uint) f - ) - internal - pure - returns (uint r) - { - r = self[0]; - for (uint i = 1; i < self.length; i++) { - r = f(r, self[i]); - } - } - - function range(uint length) internal pure returns (uint[] memory r) { - r = new uint[](length); - for (uint i = 0; i < r.length; i++) { - r[i] = i; - } - } -} - -contract AssertHandle { - - enum ActionChoices { GoLeft, GoRight, GoStraight, SitStill } - //1.如果越界,或负的序号值访问数组,如i >= x.length 或 i < 0时访问x[i] - function outOfBoundsException() public { - //编译异常:数组越界访问 - //uint8[3] memory balance = [1, 2, 3]; - //balance[4]=12; - //balance[-1]=12; - } - - //2.如果序号越界,或负的序号值时访问一个定长的bytesN - function noOutOfBoundsException() public { - //编译异常:定长bytesN越界访问 - // bytes4 b4=0x12345678; - // b4[4]; - // b4[-1]; - } - - //3.被除数为0或取模运算 - function dividendZeroException() public { - //编译异常:被除数为0和取模运算 - // uint result = 12/0; - // uint result = 12% 0; - } - - //4.移位负数位 - function binaryMoveMinusException() public { - //编译异常:移位负数位 - // uint8 uu=2; - // uu<<-2; - } - - //5.整数进行可以显式转换为枚举时,如果将过大值,负值转为枚举类型则抛出异常 - function intChangeException(int8 param) public returns (ActionChoices choice){ - choice = ActionChoices(param); - } - - //7.如果调用assert的参数为false - function paramException(uint param) public { - assert(param < 10); - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/8.exception_handle/RequireHandle.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/8.exception_handle/RequireHandle.sol deleted file mode 100644 index 361638bbb7..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/8.exception_handle/RequireHandle.sol +++ /dev/null @@ -1,73 +0,0 @@ -pragma solidity ^0.5.17; -/** - * require(bool condition)函数验证: - * 如果条件不满足则撤销状态更改,用于检查由输入或者外部组件引起的错误 - *(1)消息调用一个函数,但在调用的过程中,并没有正确结束异常验证 - *(2)使用new创建一个新合约时因为(1)的原因没有正常完成异常验证 - *(3)调用外部函数时,被调用的对象不包含代码异常验证 - *(4)合约没有payable修饰符的public的函数在接收主币时(包括构造函数,和回退函数)异常验证 - *(5)合约通过一个public的getter函数(public getter funciton)接收主币异常验证 - *(6).transfer()函数执行失败异常验证 - * @author Albedo - * @dev 2019/12/19 - **/ - -contract InfoFeed { - constructor () public { - revert(); - } - function info() public payable returns (uint ret) {return 42;} - - function nonCode() public {} -} - -contract RequireHandle { - InfoFeed feed; - address payable get_pay = address(uint160(0x4B0897b0513fdC7C541B6d9D7E929C4e5364D2dB)); - constructor() public{ - //部署异常 - // address payable to_pay =address(uint160(0x14723A09ACff6D2A60DcdF7aA4AFf308FDDC160C)); - // to_pay.transfer(10); - } - - //如果调用require的参数为false - function paramException(uint param) public { - require(param < 10); - } - /** - * 如果你通过消息调用一个函数,但在调用的过程中,并没有正确结束 - * (gas不足,没有匹配到对应的函数,或被调用的函数出现异常)。 - * 底层操作如call,send,delegatecall或callcode除外,它们不会抛出异常,但它们会通过返回false来表示失败 - **/ - function functionCallException(uint param) public { - feed.info.value(10).gas(param)(); - } - //如果在使用new创建一个新合约时出现第1条的原因没有正常完成 - function newContractException() public { - feed = new InfoFeed(); - - } - //如果调用外部函数时,被调用的对象不包含代码 - function outFunctionCallException(uint count) public { - feed.nonCode.gas(count)(); - } - //如果合约没有payable修饰符的public的函数在接收主币时(包括构造函数和回退函数) - function nonPayableReceiveEthException(uint count) public { - address payable to_pay =address(uint160(0x14723A09ACff6D2A60DcdF7aA4AFf308FDDC160C)); - to_pay.transfer(count); - } - //如果合约通过一个public的getter函数(public getter funciton)接收主币 - function publicGetterReceiveEthException(uint count) public { - get_pay.transfer(count); - } - //如果.transfer()执行失败 - function transferCallException(uint count) public payable { - address payable to_pay =address(uint160(0x14723A09ACff6D2A60DcdF7aA4AFf308FDDC160C)); - to_pay.transfer(count); - } - - function() external { - address payable to_pay =address(uint160(0x14723A09ACff6D2A60DcdF7aA4AFf308FDDC160C)); - to_pay.transfer(10); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/8.exception_handle/RequireMessageHandle.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/8.exception_handle/RequireMessageHandle.sol deleted file mode 100644 index 8fb85cbf3a..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/8.exception_handle/RequireMessageHandle.sol +++ /dev/null @@ -1,14 +0,0 @@ -pragma solidity ^0.5.17; -/** - * require(bool condition, string message)函数(该函数可以自定义message信息)验证 - * 如果条件不满足则撤销状态更改,用于检查由输入或者外部组件引起的错误 - * 此时为require异常返回异常信息,非运行时异常检测 - * @author Albedo - * @dev 2019/12/19 - **/ -contract RequireMessageHandle { - //如果调用require的参数为false - function paramException(uint param) public { - require(param<10,"整型大小比较异常"); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/8.exception_handle/RevertHandle.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/8.exception_handle/RevertHandle.sol deleted file mode 100644 index 05532e05a6..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/8.exception_handle/RevertHandle.sol +++ /dev/null @@ -1,19 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 1.revert()函数————终止运行并撤销状态更改————验证 - * 2.revert(string reason)函数————终止运行并撤销状态更改,并提供一个解释性的字符串————验证 - * - * @author Albedo - * @dev 2019/12/30 - **/ -contract RevertHandle { - //revert()终止运行并撤销状态更改 - function revertCheck(uint param) public { - if (param > 10) {revert();} - } - - //revert(string reason) 终止运行并撤销状态更改,并提供一个解释性的字符串 - function revertReasonCheck(uint param) public { - if (param > 10) {revert("check catch exception");} - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/9.library/LibraryStaticUsing.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/9.library/LibraryStaticUsing.sol deleted file mode 100644 index 9ef8a7cc32..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/9.library/LibraryStaticUsing.sol +++ /dev/null @@ -1,29 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * 库引用类似引用static方法验证 - * 解释:如果L作为库的名称,f()是库L的函数,则可以通过L.f()的方式调用 - * - * @author Albedo - * @dev 2019/12/25 - **/ - -library BaseStaticLibrary { - // - function compare(uint self, uint value) public returns (bool) - { - if (self bool) flags;} - - // 注意第一个参数是“storage reference”类型,因此在调用中参数传递的只是它的存储地址而不是内容。 - // 这是库函数的一个特性。如果该函数可以被视为对象的方法,则习惯称第一个参数为 `self` 。 - function insert(Data storage self, uint value) public returns (bool) - { - if (self.flags[value]) - return false; - // 已经存在 - self.flags[value] = true; - return true; - } -} - -contract LibraryUsingFor { - event Result(bool result); - - - //using A for B - using BaseLibrary for BaseLibrary.Data; - BaseLibrary.Data knownValues; - - function register(uint value) public returns (bool result){ - result=knownValues.insert(value); - emit Result(result); - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/9.library/SafeMathLibrary.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/9.library/SafeMathLibrary.sol deleted file mode 100644 index d344c51474..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/9.library/SafeMathLibrary.sol +++ /dev/null @@ -1,114 +0,0 @@ -pragma solidity ^0.5.17; - -/** - * 安全算术运算 - *(1)最大值 - *(2)最小值 - *(3)平均值 - *(4)无符号整型相加 - *(5)无符号整型相减 - *(6)无符号整型相乘 - *(7)无符号整型相除 - *(8)无符号整型取模运算 - * - * @author Albedo - * @dev 2020/01/08 - **/ -library SafeMathLibrary { - - /** - * 获取最大值 - */ - function max(uint256 a, uint256 b) internal pure returns (uint256) { - return a >= b ? a : b; - } - - /** - * 获取最小值 - */ - function min(uint256 a, uint256 b) internal pure returns (uint256) { - return a < b ? a : b; - } - - /** - * 获取平均值 - */ - function average(uint256 a, uint256 b) internal pure returns (uint256) { - return (a / 2) + (b / 2) + ((a % 2 + b % 2) / 2); - } - /** - * .两个无符号整型相加 - */ - function add(uint256 a, uint256 b) internal pure returns (uint256) { - uint256 c = a + b; - require(c >= a, "SafeMath: addition overflow"); - return c; - } - - /** - * 两个无符号整型相减 - */ - function sub(uint256 a, uint256 b) internal pure returns (uint256) { - require(b <= a, "SafeMath: subtraction overflow"); - uint256 c = a - b; - - return c; - } - - - /** - * 两个无符号整型相乘 - */ - function mul(uint256 a, uint256 b) internal pure returns (uint256) { - if (a == 0) { - return 0; - } - - uint256 c = a * b; - require(c / a == b, "SafeMath: multiplication overflow"); - - return c; - } - - /** - * 两个无符号整型相除,并检测除数为0异常 - * a 被除数 - * b 除数 - */ - function div(uint256 a, uint256 b) internal pure returns (uint256) { - require(b > 0, "SafeMath: division by zero"); - uint256 c = a / b; - return c; - } - - /** - * 两个无符号整型相除,并自定义除数为0异常信息 - * a 被除数 - * b 除数 - */ - function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { - require(b > 0, errorMessage); - uint256 c = a / b; - return c; - } - - /** - * 两个无符号整型除余运算,并检测除数为0异常 - * a 被除数 - * b 除数 - */ - function mod(uint256 a, uint256 b) internal pure returns (uint256) { - require(b != 0, "SafeMath: modulo by zero"); - return a % b; - } - - /** - * 两个无符号整型除余运算,并自定义除数为0异常信息 - * a 被除数 - * b 除数 - */ - function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { - require(b != 0, errorMessage); - return a % b; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/9.library/SafeMathMock.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/9.library/SafeMathMock.sol deleted file mode 100644 index 36502619ec..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/9.library/SafeMathMock.sol +++ /dev/null @@ -1,51 +0,0 @@ -pragma solidity ^0.5.17; - -import "./SafeMathLibrary.sol"; -/** - * 安全算术运算验证 - *(1)最大值 - *(2)最小值 - *(3)平均值 - *(4)无符号整型相加 - *(5)无符号整型相减 - *(6)无符号整型相乘 - *(7)无符号整型相除 - *(8)无符号整型取模运算 - * - * @author Albedo - * @dev 2020/01/08 - **/ -contract SafeMathMock { - //最大值验证 - function max(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.max(a, b); - } - //最小值验证 - function min(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.min(a, b); - } - //平均值验证 - function average(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.average(a, b); - } - //乘运算 - function mul(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.mul(a, b); - } - //除运算 - function div(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.div(a, b); - } - //减法运算 - function sub(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.sub(a, b); - } - //加法运算 - function add(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.add(a, b); - } - //取模运算 - function mod(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.mod(a, b); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/dappContract/AtomicSwap.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/dappContract/AtomicSwap.sol deleted file mode 100644 index bc3a174e19..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/dappContract/AtomicSwap.sol +++ /dev/null @@ -1,167 +0,0 @@ -pragma solidity ^0.5.17; - -library SafeMath { - function add(uint a, uint b) internal pure returns (uint c) { - c = a + b; - require(c >= a, "SafeMath add wrong value"); - return c; - } - function sub(uint a, uint b) internal pure returns (uint) { - require(b <= a, "SafeMath sub wrong value"); - return a - b; - } -} - -contract Destructable { - address payable private owner; - - constructor() public { - owner = msg.sender; - } - - modifier isDestructable { - require(msg.sender == owner, "only owner"); - require(address(this).balance == 0, "balance is not zero"); - _; - } - - function destruct() public isDestructable { - selfdestruct(owner); - } -} - -contract AtomicSwap is Destructable { - using SafeMath for uint; - - enum State { Empty, Initiated, Redeemed, Refunded } - - struct Swap { - bytes32 hashedSecret; - bytes32 secret; - address payable initiator; - address payable participant; - uint refundTimestamp; - uint value; - uint payoff; - State state; - } - - event Initiated( - bytes32 indexed _hashedSecret, - address indexed _participant, - address _initiator, - uint _refundTimestamp, - uint _value, - uint _payoff - ); - - event Added( - bytes32 indexed _hashedSecret, - address _sender, - uint _value - ); - - event Redeemed( - bytes32 indexed _hashedSecret, - bytes32 _secret - ); - - event Refunded( - bytes32 indexed _hashedSecret - ); - - mapping(bytes32 => Swap) public swaps; - - modifier isRefundable(bytes32 _hashedSecret) { - require(block.timestamp >= swaps[_hashedSecret].refundTimestamp, "refundTimestamp has not passed"); - _; - } - - modifier isRedeemable(bytes32 _hashedSecret, bytes32 _secret) { - require(block.timestamp < swaps[_hashedSecret].refundTimestamp, "refundTimestamp has already passed"); - require(sha256(abi.encodePacked(sha256(abi.encodePacked(_secret)))) == _hashedSecret, "secret is not correct"); - _; - } - - modifier isInitiated(bytes32 _hashedSecret) { - require(swaps[_hashedSecret].state == State.Initiated, "swap for this hash is empty or already spent"); - _; - } - - modifier isInitiatable(bytes32 _hashedSecret, uint _refundTimestamp) { - require(swaps[_hashedSecret].state == State.Empty, "swap for this hash is already initiated"); - require(_refundTimestamp > block.timestamp, "refundTimestamp has already passed"); - _; - } - - modifier isAddable(bytes32 _hashedSecret) { - require(block.timestamp <= swaps[_hashedSecret].refundTimestamp, "refundTime has already come"); - _; - } - - function initiate (bytes32 _hashedSecret, address payable _participant, uint _refundTimestamp, uint _payoff) - public payable isInitiatable(_hashedSecret, _refundTimestamp) - { - swaps[_hashedSecret].value = msg.value.sub(_payoff); - swaps[_hashedSecret].hashedSecret = _hashedSecret; - swaps[_hashedSecret].initiator = msg.sender; - swaps[_hashedSecret].participant = _participant; - swaps[_hashedSecret].refundTimestamp = _refundTimestamp; - swaps[_hashedSecret].payoff = _payoff; - swaps[_hashedSecret].state = State.Initiated; - - emit Initiated( - _hashedSecret, - swaps[_hashedSecret].participant, - msg.sender, - swaps[_hashedSecret].refundTimestamp, - swaps[_hashedSecret].value, - swaps[_hashedSecret].payoff - ); - } - - function add (bytes32 _hashedSecret) - public payable isInitiated(_hashedSecret) isAddable(_hashedSecret) - { - swaps[_hashedSecret].value = swaps[_hashedSecret].value.add(msg.value); - - emit Added( - _hashedSecret, - msg.sender, - swaps[_hashedSecret].value - ); - } - - function redeem(bytes32 _hashedSecret, bytes32 _secret) - public isInitiated(_hashedSecret) isRedeemable(_hashedSecret, _secret) - { - swaps[_hashedSecret].secret = _secret; - swaps[_hashedSecret].state = State.Redeemed; - - emit Redeemed( - _hashedSecret, - _secret - ); - - swaps[_hashedSecret].participant.transfer(swaps[_hashedSecret].value); - if (swaps[_hashedSecret].payoff > 0) { - msg.sender.transfer(swaps[_hashedSecret].payoff); - } - - delete swaps[_hashedSecret]; - } - - function refund(bytes32 _hashedSecret) - public isInitiated(_hashedSecret) isRefundable(_hashedSecret) - { - swaps[_hashedSecret].state = State.Refunded; - - emit Refunded( - _hashedSecret - ); - - swaps[_hashedSecret].initiator.transfer(swaps[_hashedSecret].value.add(swaps[_hashedSecret].payoff)); - - delete swaps[_hashedSecret]; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/evm_assembly_contract_call/precompiled.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/evm_assembly_contract_call/precompiled.sol deleted file mode 100644 index 11dcc420c9..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/evm_assembly_contract_call/precompiled.sol +++ /dev/null @@ -1,149 +0,0 @@ -pragma solidity ^0.5.17; - -/* -network.platon.test.evm 跨合约调用 系统合约 -*/ -contract precompiled { - - bytes callDatacopyValue; - bytes32 callBigModExpValue; - uint256[2] callBn256AddValues; - bytes32[2] callBn256ScalarMulValues; - bytes32 callBn256PairingValue; - address feePayerAddr; - bool validateSenderFlg; - - //Address 0x01 - function callEcrecover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) public pure returns (address) { - return ecrecover(hash, v, r, s); - } - - - //Address 0x02: sha256(data) - function callSha256(bytes memory data) public pure returns(bytes32 result){ - return sha256(data); - } - - - //Address 0x03: ripemd160(data) - function callRipemd160(bytes memory data) public pure returns(bytes32 result){ - return ripemd160(data); - } - - - //pass 0x04 - function callDatacopy(bytes memory data) public returns (bytes memory) { - bytes memory ret = new bytes(data.length); - assembly { - let len := mload(data) - if iszero(call(gas, 0x04, 0, add(data, 0x20), len, add(ret,0x20), len)) { - invalid() - } - } - callDatacopyValue = ret; - return ret; - } - - function getCallDatacopyValue() public view returns(bytes memory){ - return callDatacopyValue; - } - - //pass 0x05 - function callBigModExp(bytes32 base, bytes32 exponent, bytes32 modulus) public returns (bytes32 result) { - assembly { - // free memory pointer - let memPtr := mload(0x40) - - // length of base, exponent, modulus - mstore(memPtr, 0x20) - mstore(add(memPtr, 0x20), 0x20) - mstore(add(memPtr, 0x40), 0x20) - - // assign base, exponent, modulus - mstore(add(memPtr, 0x60), base) - mstore(add(memPtr, 0x80), exponent) - mstore(add(memPtr, 0xa0), modulus) - - // call the precompiled contract BigModExp (0x05) - let success := call(gas, 0x05, 0x0, memPtr, 0xc0, memPtr, 0x20) - switch success - case 0 { - revert(0x0, 0x0) - } default { - result := mload(memPtr) - } - } - callBigModExpValue = result; - } - - - function getCallBigModExpValue() public view returns(bytes32 ){ - return callBigModExpValue; - } - - //pass 0x06 - function callBn256Add(uint256 ax, uint256 ay, uint256 bx, uint256 by) public returns (uint256[2] memory result) { - uint256[4] memory input; - input[0] = ax; - input[1] = ay; - input[2] = bx; - input[3] = by; - assembly { - let success := call(gas, 0x06, 0, input, 0x80, result, 0x40) - switch success - case 0 { - revert(0,0) - } - } - callBn256AddValues = result; - } - - - function getCallBn256AddValues() public view returns(uint256[2] memory result ){ - return callBn256AddValues; - } - - - //0x07 - function callBn256ScalarMul(bytes32 x, bytes32 y, bytes32 scalar) public returns (bytes32[2] memory result) { - bytes32[3] memory input; - input[0] = x; - input[1] = y; - input[2] = scalar; - assembly { - let success := call(gas, 0x07, 0, input, 0x60, result, 0x40) - switch success - case 0 { - revert(0,0) - } - } - callBn256ScalarMulValues = result; - } - - function getCallBn256ScalarMulValues() public view returns(bytes32[2] memory result ){ - return callBn256ScalarMulValues; - } - - //Address 0x08: bn256Pairing(a1, b1, a2, b2, a3, b3, ..., ak, bk) - function callBn256Pairing(bytes memory input) public returns (bytes32 result) { - // input is a serialized bytes stream of (a1, b1, a2, b2, ..., ak, bk) from (G_1 x G_2)^k - uint256 len = input.length; - require(len % 192 == 0); - assembly { - let memPtr := mload(0x40) - let success := call(gas, 0x08, 0, add(input, 0x20), len, memPtr, 0x20) - switch success - case 0 { - revert(0,0) - } default { - result := mload(memPtr) - } - } - callBn256PairingValue =result; - } - - function getCallBn256PairingValue() public view returns(bytes32 result ){ - return callBn256PairingValue; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/guessing/Guessing.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/guessing/Guessing.sol deleted file mode 100644 index c4114aa9f1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/guessing/Guessing.sol +++ /dev/null @@ -1,216 +0,0 @@ -pragma solidity ^0.5.17; -/** - * 竞猜合约 - * 当用户往竞猜合约发起转账操作,满足(单笔>=5LAT), - * 每笔交易给对应地址分配一个抽奖号码(一个地址多笔交易可分配多个抽奖号码),并记录地址转入数; - * - */ -contract Guessing { - - uint256 public endBlock; //竞猜截止块高 - bytes32 public block_hash;//竞猜截止块高的块hash - bool public guessingClosed = false; //竞猜是否已开奖 -// uint256 public baseUnit = 5 lat; //最小转金额 - uint256 public baseUnit = 5 atp; //最小转金额 - - uint256 public balance; //竞猜奖池总金额 - uint256 public averageAmount; //每个中奖号码对应获奖金额 - mapping(address => uint256) public gussingerLat; //每个竞猜者发起转账的金额 - mapping(uint256 =>address payable ) public indexOfgussinger; //每个抽奖号码对应的竞猜者地址 - mapping(address => uint[]) public gussingerCodes; //每个竞猜者所有的抽奖号码集合 - mapping(address => uint256 ) public winnerMap; //中奖者对应中奖号码个数 - uint public indexKey = 1; - address[] public winnerAddresses; //中奖者地址数组 - address public createAddress;//合约创建者 - uint public postfix = 0; //中奖尾号 - - - //竞猜成功通知 - event FundTransfer(address _backer, uint _amount, bool _isSuccess); - - //记录已接收的LAT通知 - event CurrentBalance(address _msgSenderAddress, uint _balance); - - /** - * 初始化构造函数 - * - * @param _endBlock 竞猜截止块高(达到此块高后不能再往合约转账) - */ - constructor (uint _endBlock)public { - createAddress = msg.sender; - endBlock = _endBlock; - } - - /** - * - * 默认函数,可以向合约直接打款 - */ - function () payable external { - guessing(msg.value,msg.sender); - } - - /** - * 判断是否已经过了竞猜截止限期 - */ - modifier beforeDeadline() { if (endBlock >= block.number) _; } - - - /** - * 竞猜 - */ - function guessingWithLat() public payable{ - guessing(msg.value,msg.sender); - } - - //竞猜内部实现 - function guessing(uint amount,address payable msgsender) beforeDeadline internal{ - //转账金额要大于5lat - require(amount >= baseUnit); - - gussingerCodes[msgsender].push(indexKey); - - indexOfgussinger[indexKey] = msgsender; - indexKey++; - - //竞猜人的金额累加 - gussingerLat[msgsender] += amount; - - //竞猜总额累加 - balance += amount; - - //竞猜成功通知 - emit FundTransfer(msgsender, amount, true); - } - - /** - * 判断是否已经过了竞猜截止限期 - */ - modifier afterDeadline() { if (block.number > endBlock ) _; } - - /** - * 开奖操作 - * 如果当前区块超过了截止日期 - * - * 参数A:基于开奖截止区块的hash转成uint256 - * - * 参数B:本期内参与的总票数 - * - * 结果C :A 对 B取余 - * - * 方法:A % B = C - * - * - * 1.参数B,1<总票数<99,取余数C的个位数,个位数相同的为中奖;例如余数的12,取个位数,个位数是2的为中奖票 - * 2.参数B,100<总票数<9999,取余数C的两位数(个位十位),两位数相同的为中奖;例如余数是123,取两位数,票数后两位23的为中奖票 - * 3.参数B,总票数>10000,取余数C的三位数(个位十位百位),三位数相同的为中奖;例如余数是1234,取三位数,票数后三位带234的为中奖票 - * - */ - function draw(bytes32 _block_hash) public afterDeadline { - //开奖只能操作一次,且只有合约创建者可以开奖 - if(!guessingClosed && createAddress == msg.sender && indexKey > 1){ - uint256 random = uint256(keccak256(abi.encodePacked(_block_hash))); - uint drawIndex = random%indexKey; - - if(indexKey<100){ - getwinners(drawIndex,10); - }else if(indexKey<10000){ - getwinners(drawIndex,100); - }else{ - getwinners(drawIndex,1000); - } - - //每个中奖者可以分到的金额 - averageAmount = balance/winnerAddresses.length; - address payable tempAddress; - //向中奖者转账 - for(uint256 j=0;j block.number - 257 && _blocknumber < block.number - 1); - return blockhash(_blocknumber); - } - - - /** - * 获取当前参与者所有幸运号码 - */ - function getMyGuessCodes() view public returns (uint[] memory){ - return gussingerCodes[msg.sender]; - } - - /** - * 获幸运尾号 - */ - function getPostfix() view public returns (uint){ - require(guessingClosed == true); - return postfix; - } - - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/guessing/PlatonUnit.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/guessing/PlatonUnit.sol deleted file mode 100644 index 2ad492bd07..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/guessing/PlatonUnit.sol +++ /dev/null @@ -1,29 +0,0 @@ -pragma solidity ^0.5.17; - -contract PlatonUnit { - - uint256 public balance; //合约金额 - - /** - * 默认函数 - * - * 默认函数,可以向合约直接打款 - */ - function () payable external { - balance = add(balance,msg.value); - } - - - //累加函数 - function add(uint256 a, uint256 b) internal pure returns (uint256) { - uint256 c = a + b; - assert(c >= a); - return c; - } - - //查看当前合约余额 - function getBalance() view public returns (uint256){ - return address(this).balance; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/innerContract/PlatonInner.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/innerContract/PlatonInner.sol deleted file mode 100644 index 8e0443d423..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/innerContract/PlatonInner.sol +++ /dev/null @@ -1,33 +0,0 @@ -pragma solidity ^0.5.17; - -/* - * network.platon.test.evm 跨合约调用 Platon系统合约 - * @author hudenian - * @dev 2020/02/25 -*/ -contract PlatonInner { - - bytes returnValue; - - function assemblyCallppos(bytes memory data,address addr) public { - uint256 len = data.length; - uint retsize; - bytes memory resval; - assembly { - if iszero(call(gas, addr, 0, add(data, 0x20), len, 0, 0)) { - invalid() - } - retsize := returndatasize() - } - resval = new bytes(retsize); - assembly { - returndatacopy(add(resval, 0x20), 0, returndatasize()) - } - returnValue = resval; - } - - function getReturnValue() public view returns(bytes memory ){ - return returnValue; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/new_instructions/Instructions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/new_instructions/Instructions.sol deleted file mode 100644 index 2483552429..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.5.17/new_instructions/Instructions.sol +++ /dev/null @@ -1,28 +0,0 @@ -pragma solidity ^0.5.17; - -contract Instructions { - - function getChainId() public view returns (uint) { - uint256 chainId; - assembly { chainId := chainid() } - return chainId; - } - - function getSelfBalance() public view returns (uint) { - uint256 ret; - assembly { ret := selfbalance() } - return ret; - } - - function test(uint x, uint y) public returns (uint) { - return test_mul(2,3); - } - - function test_mul(uint x, uint y) public returns (uint) { - return multiply(x,y); - } - - function multiply(uint x, uint y) public returns (uint) { - return x * y; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/0.complex_contracts/ERC20_0_6_12/ERC200513Token.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/0.complex_contracts/ERC20_0_6_12/ERC200513Token.sol deleted file mode 100644 index 12acf16e5b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/0.complex_contracts/ERC20_0_6_12/ERC200513Token.sol +++ /dev/null @@ -1,195 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * ERC20 0.5.13版本验证 - * - * - * @author hudenian - * @dev 2019/12/23 - **/ -contract ERC200513Token { - string public name; // ERC20标准--代币名称 - string public symbol; // ERC20标准——代币简称 - uint8 public decimals = 18; // ERC20标准,decimals 可以有的小数点个数,最小的代币单位。18 是建议的默认值 - uint256 public totalSupply; // ERC20标准 总供应量 - - // 用mapping保存每个地址对应的余额 ERC20标准 - mapping(address => uint256) public balanceOf; - // 存储对账号的控制 ERC20标准 - mapping(address => mapping(address => uint256)) public allowance; - - // 事件,用来通知客户端交易发生 ERC20标准 - event Transfer(address indexed from, address indexed to, uint256 value); - - // 事件,用来通知客户端代币被消费 ERC20标准 - event Burn(address indexed from, uint256 value); - - /** - * 初始化构造 - */ - constructor(uint256 initialSupply, string memory tokenName, string memory tokenSymbol) public { - totalSupply = initialSupply * 10 ** uint256(decimals); - // 供应的份额,份额跟最小的代币单位有关,份额 = 币数 * 10 ** decimals。 - balanceOf[msg.sender] = totalSupply; - // 创建者拥有所有的代币 - name = tokenName; - // 代币名称 - symbol = tokenSymbol; - // 代币符号 - } - /** - * 返回代币的名称 - */ - function getName() view public returns (string memory){ - return name; - } - - /** - * 返回代币的简称 - */ - function getSymbol() view public returns (string memory){ - return symbol; - } - /** - * 返回代币最小分割量 - */ - function getDecimals() public view returns (uint8){ - return decimals; - } - - function getTotalSupply() public view returns (uint256 theTotalSupply) { - //函数声明中已经定义了返回变量theTotalSupply - theTotalSupply = totalSupply; - return theTotalSupply; - } - - function getBalanceOf(address _owner) public view returns (uint256 balance) { - //返回指定地址的通证余额 - return balanceOf[_owner]; - } - /** - * 代币交易转移的内部实现 - */ - function _transfer(address _from, address _to, uint _value) internal returns (bool success){ - // 确保目标地址不为0x0,因为0x0地址代表销毁 -// require(_to != address("lat1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq542u6a") || _to != address("lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmscn5j")); - require(_to != address("atp1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqdruy9j") || _to != address("atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc")); - // 检查发送者余额 - require(balanceOf[_from] >= _value); - // 确保转移为正数个 - require(balanceOf[_to] + _value > balanceOf[_to]); - - // 以下用来检查交易, - uint previousBalances = balanceOf[_from] + balanceOf[_to]; - // Subtract from the sender - balanceOf[_from] -= _value; - // Add the same to the recipient - balanceOf[_to] += _value; - emit Transfer(_from, _to, _value); - - // 用assert来检查代码逻辑。 - return (balanceOf[_from] + balanceOf[_to] == previousBalances); - } - - /** - * 代币交易转移 - * 从自己(创建交易者)账号发送`_value`个代币到 `_to`账号 - * ERC20标准 - * @param _to 接收者地址 - * @param _value 转移数额 - */ - function transfer(address _to, uint256 _value) public returns (bool success){ - return _transfer(msg.sender, _to, _value); - } - - /** - * 账号之间代币交易转移 - * ERC20标准 - * @param _from 发送者地址 - * @param _to 接收者地址 - * @param _value 转移数额 - */ - function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) { - require(_value <= allowance[_from][msg.sender]); - // Check allowance - allowance[_from][msg.sender] -= _value; - _transfer(_from, _to, _value); - return true; - } - - /** - * 设置某个地址(合约)可以创建交易者名义花费的代币数。 - * - * 允许发送者`_spender` 花费不多于 `_value` 个代币 - * ERC20标准 - * @param _spender The address authorized to spend - * @param _value the max amount they can spend - */ - function approve(address _spender, uint256 _value) public - returns (bool success) { - allowance[msg.sender][_spender] = _value; - return true; - } - - /** - * 设置允许一个地址(合约)以我(创建交易者)的名义可最多花费的代币数。 - *-非ERC20标准 - * @param _spender 被授权的地址(合约) - * @param _value 最大可花费代币数 - * @param _extraData 发送给合约的附加数据 - */ - // function approveAndCall(address _spender, uint256 _value, bytes memory _extraData) public returns (bool success) { - // tokenRecipient spender = tokenRecipient(_spender); - // if (approve(_spender, _value)) { - // // 通知合约 - // spender.receiveApproval(msg.sender, _value, address(this), _extraData); - // return true; - // } - // } - - /** - * - * 获取_spender可以从账户_owner中转出token的剩余数量 - */ - function getAllowance(address _owner, address _spender) public view returns (uint remaining){ - return allowance[_owner][_spender]; - } - - /** - * 销毁我(创建交易者)账户中指定个代币 - *-非ERC20标准 - */ - function burn(uint256 _value) public returns (bool success) { - require(balanceOf[msg.sender] >= _value); - // Check if the sender has enough - balanceOf[msg.sender] -= _value; - // Subtract from the sender - totalSupply -= _value; - // Updates totalSupply - emit Burn(msg.sender, _value); - return true; - } - - /** - * 销毁用户账户中指定个代币 - *-非ERC20标准 - * Remove `_value` tokens from the system irreversibly on behalf of `_from`. - * - * @param _from the address of the sender - * @param _value the amount of money to burn - */ - function burnFrom(address _from, uint256 _value) public returns (bool success) { - require(balanceOf[_from] >= _value); - // Check if the targeted balance is enough - require(_value <= allowance[_from][msg.sender]); - // Check allowance - balanceOf[_from] -= _value; - // Subtract from the targeted balance - allowance[_from][msg.sender] -= _value; - // Subtract from the sender's allowance - totalSupply -= _value; - // Update totalSupply - emit Burn(_from, _value); - return true; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/01Parameters_and_Returns/FunctionParam.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/01Parameters_and_Returns/FunctionParam.sol deleted file mode 100644 index 101b53fe94..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/01Parameters_and_Returns/FunctionParam.sol +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * 验证入参是函数的使用,来自官方case - * @author liweic - * @dev 2020/01/11 20:09 - */ - -library G { - function g(function() internal returns (uint) _t) internal returns (uint) { - return _t(); - } -} -contract FunctionParam { - using G for *; - function g(function() internal returns (uint) _t) internal returns (uint) { - return _t(); - } - - function f() public returns (uint) { - return t.g(); - } - function t() public pure returns (uint) { - return 7; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/01Parameters_and_Returns/PramaAndReturns.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/01Parameters_and_Returns/PramaAndReturns.sol deleted file mode 100644 index 9b2de1c23c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/01Parameters_and_Returns/PramaAndReturns.sol +++ /dev/null @@ -1,66 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * 验证单一输入、输出参数类型uint - * 验证函数无返回值 - * 验证未使用参数可以省略参数名 - * 验证入参和出参均为数组 - * 验证返回值为字符串 - * 验证多个返回值且返回类型是数组 - * @author liweic - * @dev 2019/12/28 19:09 - */ - -contract PramaAndReturns { - string greeting = "What's up man"; - - uint public s ; - - //入参出参均为uint - function InputParam(uint a) public view returns(uint b){ - b = a; - return b; - } - - //无返回值 - function NoOutput(uint a, uint b) public { - s = a; - } - - //验证函数NoOutput是否调用成功 - function getS() public view returns(uint){ - return s; - } - - //未使用参数可以省略参数名 - function OmitParam(uint y, uint) public pure returns(uint) { - return y; - } - - //入参和出参均为数组 - function IuputArray(uint[3] memory y) public view returns (uint[3] memory){ - y[2] = 3; - return y; - } - - //返回值为字符串 - function OuputString() public view returns (string memory) { - return greeting; - } - - //多个返回值且返回类型是数组 - function OuputArrays() public pure returns(uint[] memory, uint[] memory) { - - uint[] memory localMemoryArray1 = new uint[](3); - localMemoryArray1[0] = 1; - localMemoryArray1[1] = 2; - localMemoryArray1[2] = 3; - - uint[] memory localMemoryArray2 = localMemoryArray1; - localMemoryArray1[0] = 10; - - return (localMemoryArray1, localMemoryArray2); - //returns 1,2,3 | 10,2,3 - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/ABIFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/ABIFunctions.sol deleted file mode 100644 index ee89a35156..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/ABIFunctions.sol +++ /dev/null @@ -1,19 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证ABI编解码相关的函数 - * @author liweic - * @dev 2019/12/27 20:10 - */ -contract ABIFunctions { - function getEncodeWithSignature() public view returns (bytes memory) { - return abi.encodeWithSignature("set(uint256)", 1); //计算函数set(uint256) 及参数1 的ABI 编码 - } - - function getEncode() public view returns (bytes memory) { - return abi.encode(1); //计算参数 1 的ABI 编码 - } - - function getEncodePacked() public view returns (bytes memory) { - return abi.encodePacked("1"); //计算参数 1 的紧密打包编码 - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/AddressFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/AddressFunctions.sol deleted file mode 100644 index da4569634e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/AddressFunctions.sol +++ /dev/null @@ -1,29 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证address的查余额方法banlance和转账方法send,transfer - * 验证合约关键字this - * @author liweic - * @dev 2019/12/28 10:10 - */ - -contract AddressFunctions { - - //获取地址的余额 - function getBalance(address addr) view public returns (uint){ - return addr.balance; - } - - //当前合约的余额 - function getBalanceOf() view public returns (uint){ - return address(this).balance; - } - - function transfer(address payable addr) public payable{ - addr.transfer(msg.value); - } - - function send(address payable addr) public payable returns(bool success){ - return addr.send(1); - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/BlockTransactionPropertiesFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/BlockTransactionPropertiesFunctions.sol deleted file mode 100644 index d293fe0c91..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/BlockTransactionPropertiesFunctions.sol +++ /dev/null @@ -1,79 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证区块和交易属性的内置函数 - * @author liweic - * @dev 2019/12/27 19:10 - */ - -contract BlockTransactionPropertiesFunctions { - - function getBlockhash(uint blockNumber) public view returns (bytes32) { - // 获取指定区块的区块哈希 - return blockhash(blockNumber); - } - - function getBlockCoinbase() public view returns(address) { - // 获取当前块矿工的地址 - return block.coinbase; - } - - function getBlockDifficulty() public view returns(uint) { - // 获取当前块的难度 - return block.difficulty; - } - - function getGaslimit() public view returns(uint) { - // 获取当前区块 gas 限额 - return block.gaslimit; - } - - function getBlockNumber() public view returns(uint) { - // 获取当前区块的块高 - return block.number; - } - - function getBlockTimestamp() public view returns(uint) { - // 获取当前块的Unix时间戳 - return block.timestamp; - } - - function getData() public view returns(bytes memory) { - // 获取完整的 calldata - return msg.data; - } - - function getGasleft() public view returns(uint) { - // 获取当前还剩的gas - return gasleft(); - } - - function getSender() public view returns(address) { - // 获取当前调用发起人的地址 - return msg.sender; - } - - function getSig() public view returns(bytes4) { - // 调用数据的前四个字节 - return msg.sig; - } - - function getValue() public payable returns(uint) { - // 获取这个消息所附带的以太币,单位为wei - return msg.value; - } - - function getNow() public view returns(uint) { - // 获取当前块的时间戳 - return now; - } - - function getGasprice() public view returns(uint) { - // 获取交易的gas价格 - return tx.gasprice; - } - - function getOrigin() public view returns(address) { - // 获取交易发起者(完全的调用链) - return tx.origin; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/Blockhash.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/Blockhash.sol deleted file mode 100644 index 294a3ea1f8..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/Blockhash.sol +++ /dev/null @@ -1,43 +0,0 @@ -pragma solidity ^0.6.12; -/** - * blockhash功能测试 - */ -contract Blockhash { - - //取当前块高之前300个块hash(理论上取不到) - function getBlockhashbefore257() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number - 257); - - return blockhs; - } - - //取当前块高之前256个块hash(理论上取不到) - function getBlockhashbefore256() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number - 256); - - return blockhs; - } - - //取当前块高之前255个块hash(理论上取不到) - function getBlockhashbefore255() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number - 255); - - return blockhs; - } - - - //取当前块高之前30个块hash(理论上可以取到) - function getBlockhashbefore30() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number - 30); - - return blockhs; - } - - //取当前块高之前30个块hash(理论上可以取到) - function getBlockhashbefore0() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number); - - return blockhs; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/MathAndCryptographicFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/MathAndCryptographicFunctions.sol deleted file mode 100644 index 8e530ab52b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/MathAndCryptographicFunctions.sol +++ /dev/null @@ -1,46 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证数学和加密函数,sha3在0.5.0版本之后被剔除,用keccak256取代 - * 计算(x + y) % k - * 计算(x * y) % k - * 计算输入的Keccak256Hash值 - * 计算输入的Sha256Hash值 - * 计算输入的Ripemd160Hash值 - * 从椭圆曲线签名中恢复与公钥相关的地址,或在出错时返回零 - * 函数参数对应于签名的ECDSA值: r – 签名的前32字节; s: 签名的第二个32字节; v: 签名的最后一个字节 - * @author liweic - * @dev 2019/12/27 20:10 - */ - -contract MathAndCryptographicFunctions { - - function callAddMod() public pure returns(uint){ - return addmod(2, 3, 3); - } - - function callMulMod() public pure returns(uint){ - return mulmod(2, 3, 3); - } - - function callKeccak256() public pure returns(bytes32 result){ - return keccak256("ABC"); - } - - function callSha256() public pure returns(bytes32 result){ - return sha256("ABC"); - } - - function callRipemd160() public pure returns(bytes32 result){ - return ripemd160("ABC"); - } - - //hash: "0xe281eaa11e6e37e6f53aade5d6c5b7201ef1c66162ec42ccc3215a0c4349350d" - //V = 27 - //R = "0x55b60cadd4b4a3ea4fc368ef338f97e12e7328dd6e9e969a3fd8e5c10be855fe" - //S = "0x2b42cee2585a16ea537efcb88009c1aeac693c28b59aa6bbff0baf22730338f6" - //address: "0x8a9B36694F1eeeb500c84A19bB34137B05162EC5" - function callEcrecover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) public pure returns (address) { - address x = ecrecover(hash, v, r, s); - return x; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/SelfdestructFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/SelfdestructFunctions.sol deleted file mode 100644 index 0dd2f5d567..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/02Special_Variables_and_Functions/SelfdestructFunctions.sol +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证构造函数constructor - * 验证销毁函数selfdestruct,0.5.x之后弃用suicide - * @author liweic - * @dev 2019/12/28 16:00 - */ - -contract SelfdestructFunctions { - //声明状态变量 - uint count = 0; - address payable owner; - - //构造函数 - constructor () public { - owner = msg.sender; - } - - function increment() public { - uint num = 5; - if(owner == msg.sender) { - count = count + num; - } - } - - function getCount() view public returns (uint) { - return count; - } - - function selfKill() public { - if (owner == msg.sender) { - selfdestruct(owner); - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/03Function_Visibility_and_Decarations/Getter.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/03Function_Visibility_and_Decarations/Getter.sol deleted file mode 100644 index 3e2d76545e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/03Function_Visibility_and_Decarations/Getter.sol +++ /dev/null @@ -1,16 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证getter(访问器)函数,编译器会自动为所有 public 状态变量创建 getter 函数,编译器会为我们自动生成的data()函数 - * 在合约内,可以直接操作及访问data状态变量,但在合约外我们只能用data()的方式来访问 - * 在合约内,不能直接访问data(),因为访问器函数的可见性是external - * @author liweic - * @dev 2019/12/27 14:10 - */ -contract Getter{ - uint public data = 10; - - function f() public view returns (uint, uint){ - //分别以internal,external的方式访问 - return (data, this.data()); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/03Function_Visibility_and_Decarations/Payable.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/03Function_Visibility_and_Decarations/Payable.sol deleted file mode 100644 index 99acabeda2..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/03Function_Visibility_and_Decarations/Payable.sol +++ /dev/null @@ -1,18 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证函数声明方式payable,用于转账 - * @author liweic - * @dev 2019/12/27 16:10 - */ - -contract Payable { - - //获取地址的余额 - function getBalances(address addr) view public returns (uint){ - return addr.balance; - } - - function transfer(address payable addr) public payable{ - addr.transfer(msg.value); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/03Function_Visibility_and_Decarations/Selector.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/03Function_Visibility_and_Decarations/Selector.sol deleted file mode 100644 index f03e1d7205..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/03Function_Visibility_and_Decarations/Selector.sol +++ /dev/null @@ -1,14 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证public (或 external) 函数有一个特殊的成员selector, 它对应一个ABI 函数选择器. - * @author liweic - * @dev 2020/01/11 20:30 - */ -contract Selector { - function h() payable external { - } - function f() view external returns (bytes4) { - function () external g = this.h; - return g.selector; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/03Function_Visibility_and_Decarations/Visibility.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/03Function_Visibility_and_Decarations/Visibility.sol deleted file mode 100644 index aa1042eacc..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/03Function_Visibility_and_Decarations/Visibility.sol +++ /dev/null @@ -1,49 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证函数四种可见性external,public,internal,private - * @author liweic - * @dev 2019/12/27 10:10 - */ - -contract Visibility { - - //private:私有函数和状态变量仅在当前合约中可以访问,在继承的合约内,不可访问 - function fpri(uint a) view private returns(uint) { - return a + 1; - } - - //external:外部函数是合约接口的一部分,所以我们可以从其它合约或通过交易来发起调用 - function fe(uint a) view external returns(uint){ - return a + 2; - } - - //public:公开函数是合约接口的一部分,可以通过内部,或者消息来进行调用 - function fpub(uint a) view public returns(uint) { - return a + 3; - } - - //internal:这样声明的函数和状态变量只能通过内部访问,也可以在继承合约里调用 - function add(uint a, uint b) view internal returns(uint) { - return a+b; - } -} - - -contract VisibilityCall { - function readData() public payable returns(uint localA, uint localB){ - Visibility visibility = new Visibility(); - //uint local = visibilitytest.fpri(10); // error: member "fpri" is not visible,编译报错 - localA = visibility.fe(1); - localB = visibility.fpub(1); - //uint localB = visibilitytest.add(1, 2); // error: member "add" is not visible,编译报错 - } - -} - - -contract Inter is Visibility { - function g() view public returns(uint){ - //继承合约里调用internal函数 - return add(1,2); // acces to internal member (from derivated to parent contract) - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/04Function_Calls/ExternalCall.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/04Function_Calls/ExternalCall.sol deleted file mode 100644 index 68ff3c73e0..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/04Function_Calls/ExternalCall.sol +++ /dev/null @@ -1,24 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证函数的外部调用,一个函数调用另一个合约的函数 - * @author liweic - * @dev 2019/12/27 10:10 - */ - -contract External { - function getSum() external view returns(uint sum){ - //定义两个局部变量 - uint a = 1; - uint b = 2; - sum = a + b; - } -} - -contract CallExternal { - event ExternalCValue(uint value); - function getResult() payable public returns(uint c){ - External d = new External(); - c = d.getSum(); - emit ExternalCValue(c); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/04Function_Calls/InternalCall.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/04Function_Calls/InternalCall.sol deleted file mode 100644 index a338a043f2..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/04Function_Calls/InternalCall.sol +++ /dev/null @@ -1,21 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证函数的内部调用,一个函数在同一个合约中调用另一个函数 - * @author liweic - * @dev 2019/12/26 17:10 - */ - -contract IntenalCall { - - function getSum() public view returns(uint sum){ - //定义两个局部变量 - uint a = 1; - uint b = 2; - sum = a + b; - } - - function getResult() public view returns(uint product){ - uint c = 3; - product = c * getSum(); //内部调用之前定义的函数 - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/04Function_Calls/NamedCall.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/04Function_Calls/NamedCall.sol deleted file mode 100644 index 7762f703a7..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/04Function_Calls/NamedCall.sol +++ /dev/null @@ -1,17 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证函数的具名调用 - * @author liweic - * @dev 2019/12/26 16:10 - */ -contract NamedCall { - //交换传入值的顺序并返回 - function exchange(uint key, uint value) view public returns (uint, uint){ - return (value, key); - } - - function namecall() view public returns (uint, uint){ - //任意顺序的通过变量名来指定参数值 - return exchange({value: 2, key: 1}); - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/05Modifier/InheritanceModifier.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/05Modifier/InheritanceModifier.sol deleted file mode 100644 index 820e4117be..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/05Modifier/InheritanceModifier.sol +++ /dev/null @@ -1,15 +0,0 @@ -pragma solidity ^0.6.12; - -import "./Modifier.sol"; - -contract InheritanceModifier is Modifier { - - // 使用修饰符 mf - function inheritance(uint c) public mf(c) { - a = 1; - } - - function getA() public view returns (uint) { - return a; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/05Modifier/Modifier.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/05Modifier/Modifier.sol deleted file mode 100644 index 8790a3f553..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/05Modifier/Modifier.sol +++ /dev/null @@ -1,19 +0,0 @@ -pragma solidity ^0.6.12; -/** - *1.验证单一修饰器 - *2.验证特殊_的用法,符合函数修饰器定义的条件,才可以执行函数体内容 - *3.验证修饰器可以接收参数 - *4.验证合约继承情况下的修饰器的使用 - * @author liweic - * @dev 2019/12/26 11:10 - */ -contract Modifier { - uint a = 10; - - // 定义修饰符 mf 带参数 - modifier mf (uint b) { - if (b >= a) { - _; - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/05Modifier/Modifiers.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/05Modifier/Modifiers.sol deleted file mode 100644 index 88bf951b3b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/05Modifier/Modifiers.sol +++ /dev/null @@ -1,38 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 1.验证函数修饰器的关键词modifier - * 2.验证多个修饰器的用法 - * 3.验证修饰器接收参数和无参修饰器的用法 - * @author liweic - * @dev 2019/12/25 15:10 - */ -contract Modifiers { - uint a = 10; - - modifier mf1 (uint b) { - uint c = b; - _; - c = a; - a = 11; - } - - modifier mf2 () { - uint c = a; - _; - } - - modifier mf3() { - a = 12; - return ; - _; - a = 13; - } - - function test1() mf1(a) mf2 mf3 public { - a = 1; - } - - function test2 () public view returns (uint) { - return a; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/06Contract_Related_and_Fallback/Fallback.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/06Contract_Related_and_Fallback/Fallback.sol deleted file mode 100644 index 0554c68d76..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/06Contract_Related_and_Fallback/Fallback.sol +++ /dev/null @@ -1,25 +0,0 @@ -pragma solidity ^0.6.12; -/** - 1.验证合约关键字this,表示当前合约,可以显示的转换为Address - 2.验证Fallback函数,调用了未命名的函数等方式 - * @author liweic - * @dev 2019/12/26 15:30 - */ - -contract FallBack { - uint a = 1; - - //定义一个回退函数 - fallback() external { - a = 100; - } - - //调用一个不存在的函数将触发回退函数 - function CallFunctionNotExist() public { - address(this).delegatecall("functionNotExist()"); - } - - function getA() view public returns (uint) { - return a; - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/07Assembly/AssemblyReturns.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/07Assembly/AssemblyReturns.sol deleted file mode 100644 index 93ae9d5f09..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/07Assembly/AssemblyReturns.sol +++ /dev/null @@ -1,24 +0,0 @@ -pragma solidity ^0.6.12; -/** - 1.验证内联汇编关键字assembly,汇编赋值指令:= - * @author liweic - * @dev 2020/01/07 14:30 - */ - -contract AssemblyReturns { - uint constant a = 2; - bytes2 constant b = 0xabcd; - bytes3 constant c = "abc"; - bool constant d = true; -// address payable constant e = "lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2"; - address payable constant e = "atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq"; - function f() public pure returns (uint w, bytes2 x, bytes3 y, bool z, address t) { - assembly { - w := a - x := b - y := c - z := d - t := e - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/07Assembly/SumAssembly.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/07Assembly/SumAssembly.sol deleted file mode 100644 index 88773867af..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/07Assembly/SumAssembly.sol +++ /dev/null @@ -1,30 +0,0 @@ -pragma solidity ^0.6.12; -/** - 1.验证内联汇编在库中的使用 - 2.验证汇编的操作码add,mul等 - * @author liweic - * @dev 2020/01/08 14:30 - */ -library Sum { - function sumUsingInlineAssembly(uint[] memory _data) public pure returns (uint o_sum) { - for (uint i = 0; i < _data.length; ++i) { - assembly { - o_sum := add(o_sum, mload(add(add(_data, 0x20), mul(i, 0x20)))) - } - } - } -} -contract SumAssembly { - uint[] data; - - constructor() public { - data.push(1); - data.push(2); - data.push(3); - data.push(4); - data.push(5); - } - function sum() external view returns(uint){ - return Sum.sumUsingInlineAssembly(data); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/08delete/DeleteDemo.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/08delete/DeleteDemo.sol deleted file mode 100644 index 907710b8c8..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/1.function/08delete/DeleteDemo.sol +++ /dev/null @@ -1,95 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证delete关键字,验证各种类型的delete,包括bool,uint,address,bytes,string,enum,变长数组 - * 验证删除struct, struct中的映射不会被删除其他的会被删除 - * @author liweic - * @dev 2020/01/09 16:10 - */ - -contract DeleteDemo{ - - bool public b = true; - uint public i = 1; - address public addr = msg.sender; - bytes public varByte = "123"; - string public str = "abc"; - enum Color{RED,GREEN,YELLOW} - Color public color = Color.GREEN; - - struct S{ - uint a; - string r; - } - - S s; - - struct MapStruct{ - mapping(address => uint) m; - uint n; - } - - MapStruct ms; - - function delMapping() payable public{ - ms = MapStruct(200); - ms.m[msg.sender] = 2000; - - delete ms; - } - - function getdelMapping() view public returns(uint,uint){ - return (ms.m[msg.sender],ms.n); - } - - function delStruct() payable public returns(uint, string memory){ - DeleteDemo.S(10, "abc"); - delete s; - - return (s.a,s.r); - } - - function deleteAttr() public { - delete b; // false - delete i; // 0 - delete addr; // 0x0 - delete varByte; // 0x - delete str; // "" - delete color;//Color.RED - } - - function getbool() view public returns(bool){ - return b; - } - - function getunit() view public returns(uint){ - return i; - } - - function getaddress() view public returns(address){ - return addr; - } - - function getbytes() view public returns(bytes memory){ - return varByte; - } - - function getstr() view public returns(string memory){ - return str; - } - - function getenum() view public returns(Color){ - return color; - } - - function getstruct() view public returns(uint, string memory){ - return (s.a,s.r); - } - - function delDynamicArray() view public returns(uint){ - uint[] memory a = new uint[](7); - a[0] = 100; - a[1] = 200; - delete a; - return (a.length); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/10.exec_efficiency/BubbleSort.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/10.exec_efficiency/BubbleSort.sol deleted file mode 100644 index 402786c670..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/10.exec_efficiency/BubbleSort.sol +++ /dev/null @@ -1,33 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * EVM 冒泡排序算法复杂度验证 - **/ - -contract BubbleSort{ - - int[] result_arr; - - function BubbleArrays(int[] memory arr, uint n) public payable{ - for (uint i = 0; i < n - 1; i++) - { - for (uint j = 0; jarr[j + 1]) - { - int temp; - temp = arr[j]; - arr[j] = arr[j + 1]; - arr[j + 1] = temp; - } - } - } - - result_arr = arr; - } - - function get_arr() public view returns(int[] memory){ - return result_arr; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/10.exec_efficiency/InsertSort.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/10.exec_efficiency/InsertSort.sol deleted file mode 100644 index bda0382a71..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/10.exec_efficiency/InsertSort.sol +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * EVM 插入排序算法复杂度验证 - **/ - -contract InsertSort{ - - int[] result_arr; - - function OuputArrays(int[] memory arr, uint n) public payable{ - uint i; - uint k; - uint j; - for(i=1;i=1 && temp second); - - result = frist+second; - return result; - } - - - function getResult() view public returns(uint){ - return result; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/ChainFunction.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/ChainFunction.sol" deleted file mode 100644 index 230db35b4e..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/ChainFunction.sol" +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 10-链上函数 - * 1- 0.5.0版本函数 delegatecall() 代替 0.4.25版本函数 callcode() - * 2- 0.5.0版本函数 selfdestruct() 代替 0.4.25版本函数 suicide() - * - * 4- 0.5.0版本函数 revert(), require(),assert() 代替 0.4.25版本函数 throw - * 5- 0.5.0版本函数 call()族只接受一个参数 bytes,返回成功是否的bool及函数执行的返回值 - * 0.4.25版本函数 call()族函数接收多个参数方式,只返回成功是否的 bool - * 跨合约调用见11.cross_contract_call - * - * @author hudenian - * @dev 2019/12/19 09:57 - * - */ - -contract ChainFunction { - - address owner; - uint fortune; - bool isDeceased; - - constructor() public payable{ - owner = msg.sender; - fortune = msg.value; - isDeceased = false; - } - - modifier onlyOwner{ - require(msg.sender == owner); - _; - } - - modifier mustBeDeceased{ - require(isDeceased == true); - _; - } - - /** - * 0.5.0 版本使用revert(), require(),assert()关键字 - * _isDeceased为false,或者less9小于9则抛出异常 - */ - function deceased(bool isDeceased,uint less9) view public returns(address){ - assert(isDeceased == true); - if(less9 < 9){ - revert(); - } - return msg.sender; - } - - /** - * _isDeceased为false则抛出异常 - */ - function deceasedWithModify(bool _isDeceased) view public returns(address){ - require(_isDeceased == true); - return msg.sender; - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RequireContract.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RequireContract.sol" deleted file mode 100644 index ef4bb78e43..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RequireContract.sol" +++ /dev/null @@ -1,29 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 10-链上函数 - * 函数 require() - * - * @author hudenian - * @dev 2020/1/8 09:57 - * - */ - -contract RequireContract { - - uint result; - /** - * require退回剩下的gas - * 验证输入参数合法性 - */ - function toSenderAmount(uint frist,uint second) public { - require(frist > second); - result = frist - second; - } - - - function getResult() view public returns(uint){ - return result; - } - - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RevertContract.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RevertContract.sol" deleted file mode 100644 index 31c8d2bb55..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RevertContract.sol" +++ /dev/null @@ -1,34 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 10-链上函数 - * 函数 revert() - * - * @author hudenian - * @dev 2020/1/8 09:57 - * - */ -contract RevertContract { - - address payable owner; - uint result; - - constructor() public{ - owner = msg.sender; - } - /** - * revert会把所有剩下的gas退回给caller - * 验证输入参数合法性 - */ - function toSenderAmount(uint first,uint second) public returns(uint) { - if(first < second){ - revert("first less than second"); - } - result = first-second; - return result; - } - - - function getResult() view public returns(uint){ - return result; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/Sha3AndKeccake256.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/Sha3AndKeccake256.sol" deleted file mode 100644 index 45d8606aa2..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/Sha3AndKeccake256.sol" +++ /dev/null @@ -1,32 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 10-链上函数 - * 1- 0.5.0版本函数 keccak256() 代替 0.4.25版本函数 sha3() - * - * @author hudenian - * @dev 2019/12/19 09:57 - * - */ - -contract Sha3AndKeccake256 { - - uint256 afterSha256value; - - /** - * keccak256a - */ - function keccak(string memory sha256value) public{ - afterSha256value = uint256(keccak256(abi.encodePacked(sha256value, sha256value))); - } - - function getKeccak256Value() view public returns(uint256){ - return afterSha256value; - } - - /** - * sha3 只能在0.4.x版本上使用 - */ - // function sha(string memory sha256value) public returns(uint256){ - // return uint256(sha3(sha256value, "c")); - // } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/SuicideAndSelfdestruct.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/SuicideAndSelfdestruct.sol" deleted file mode 100644 index 948119d988..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/SuicideAndSelfdestruct.sol" +++ /dev/null @@ -1,40 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 10-链上函数 - * 1- suicide()已弃用, 请使用 selfdestruct() - * 部署合约账号必须要有balance - * - * @author hudenian - * @dev 2019/12/19 09:57 - * - */ - -contract SuicideAndSelfdestruct { - uint count = 0; - address payable owner; - - constructor() public{ - owner = msg.sender; - } - - function increment() public { - uint step = 10; - if (owner == msg.sender) { - count = count + step; - } - } - - function getCount() view public returns (uint){ - return count; - } - - /** - *0.5.0版本使用新的自杀函数 - */ - function kill() public{ - if (owner == msg.sender) { - selfdestruct(owner); //0.5.0使用的函数 - // suicide(owner); //0.4.25使用的函数(0.5.0废弃的函数) - } - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ConstructorTest.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ConstructorTest.sol" deleted file mode 100644 index 89143dc9c5..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ConstructorTest.sol" +++ /dev/null @@ -1,34 +0,0 @@ -pragma solidity ^0.6.12; -/** - * constructor必须强制使用constructor声明 - * 且去除同名函数定义,0.4.25版本则通过同名函数定义,且constructor非必须 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract ConstructorTest{ - - uint public count = 0; - - //constructor必须强制使用constructor声明 - constructor(uint _count) public { - count = _count; - } - - function update(uint amount) public returns (address, uint){ - count += amount; - return (msg.sender, count); - } - - //5.查询count - function getCount() public view returns (uint){ - return count; - } - - //0.5.0弃用同名构造函数 - // function constructorTest() external { - // a = 1; - // } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructor.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructor.sol" deleted file mode 100644 index d0dd81b3bc..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructor.sol" +++ /dev/null @@ -1,39 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 不允许调用带参数但具有错误参数计数的构造函数。 - * 如果只想在不提供参数的情况下指定继承关系,请不要提供括号 - * - * @author hudenian - * @dev 2019/12/20 09:57 - */ - - -import "./ErrorParamConstructorBase.sol"; - - -/** - * 0.5.0版本可以不指定参数errorParamConstructorBase编译可以通过但是部署失败, - * 指定参数errorParamConstructorBase(10)编译部署成功 - * 0.4.x版本可以不指定参数,并且带括号如:errorParamConstructorBase() - */ -contract ErrorParamConstructor is ErrorParamConstructorBase(10) { - uint public b ; - constructor(uint _b) public { - b = _b; - } - - function update(uint amount) public returns (address, uint){ - b += amount; - return (msg.sender, b); - } - - //查询a - function getA() public view returns (uint){ - return a; - } - - //查询b - function getB() public view returns (uint){ - return b; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructorBase.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructorBase.sol" deleted file mode 100644 index 506af406fc..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructorBase.sol" +++ /dev/null @@ -1,18 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 不允许调用带参数但具有错误参数计数的构造函数。 - * 如果只想在不提供参数的情况下指定继承关系,请不要提供括号 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract ErrorParamConstructorBase{ - uint public a ; - - //基类构造函数 - constructor (uint _a) public{ - a = _a; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay1.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay1.sol" deleted file mode 100644 index 2bcad8e84d..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay1.sol" +++ /dev/null @@ -1,24 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 0.5.0不允许在同一继承层次结构中多次指定基类构造函数参数 - * 0.4.x可以同时使用2种方式,但如果2种方式都存在,优先选择修饰符方式 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -import "./ErrorParamConstructorBase.sol"; - -/** -* 方式一:contract mulicPointBaseConstructor is errorParamConstructorBase(10) -* (方式二参考mulicPointBaseConstructorWay2.sol) -*/ -contract MulicPointBaseConstructorWay1 is ErrorParamConstructorBase(10) { - constructor() public {} - - function update(uint amount) public returns (address, uint){ - a += amount; - return (msg.sender, a); - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay2.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay2.sol" deleted file mode 100644 index be2b4f3cc8..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay2.sol" +++ /dev/null @@ -1,30 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 0.5.0不允许在同一继承层次结构中多次指定基类构造函数参数 - * 0.4.x可以同时使用2种方式,但如果2种方式都存在,优先选择修饰符方式 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -import "./ErrorParamConstructorBase.sol"; - -/** -* 方式二:通过派生的构造函数中用类似于修饰符方式调用父类构造函数(只能2选1) -* (方式一参考mulicPointBaseConstructorWay1.sol) -*/ -contract MulicPointBaseConstructorWay2 is ErrorParamConstructorBase { - constructor(uint _y) ErrorParamConstructorBase(_y * _y) public {} - - function update(uint amount) public returns (address, uint){ - a += amount; - return (msg.sender, a); - } - - //查询a - function getA() public view returns (uint){ - return a; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/NoParenthesesConstructor.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/NoParenthesesConstructor.sol" deleted file mode 100644 index 2647a17247..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/NoParenthesesConstructor.sol" +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 不允许调用没有括号的基类构造函数 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -import "./ErrorParamConstructorBase.sol"; - -//contract Base { -// uint x; -// constructor() public {} -//} - -/** - * 0.5.0版本不允许调用没有括号的基类构造函数(编译不通过) - * 0.4.25版本可以调用基类构造函数 - */ -contract NoParenthesesConstructor is ErrorParamConstructorBase { - constructor(uint _b) ErrorParamConstructorBase(1) public {} -} - -//contract noParenthesesConstructor is errorParamConstructorBase { -// constructor(uint _b) errorParamConstructorBase() public {} -//} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DecimalLiteralsChangeByte.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DecimalLiteralsChangeByte.sol" deleted file mode 100644 index 905aa04ecd..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DecimalLiteralsChangeByte.sol" +++ /dev/null @@ -1,33 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 10进制数值不能直接转换成 bytesX类型 - * 必须先转换到与 bytesX相同长度的 uintY,再转换到 bytesX类型 - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - - -contract DecimalLiteralsChangeByte { - - bytes4 public b4; - - function testChange(uint a) public returns(bytes4) { - // bytes8 bt = bytes8(a); //编译出错,10进制数值不能直接转换成 bytesX类型,要像如下进行转换 - uint32 u1 = uint32(a); //先转成uint - - // bytes5 b2 = bytes5(u1);//编译出错, uint32长度与byte4一致,不能转成byte5类型的长度 - - b4 = bytes4(u1);//再转成byte - - return b4; - } - - //5.查询b4的值 - function getB4() public view returns (bytes4){ - return b4; - } - - - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DisallowTypeChange.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DisallowTypeChange.sol" deleted file mode 100644 index 62296da7a7..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DisallowTypeChange.sol" +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 因为填充(padding)的时候, bytesX是右填充(低比特位补0), - * 而 uintY是左填充(高比特位补0),二者直接转换可能会导致不符合预期的结果, - * 所以现在当 bytesX和uintY长度大小不一致(即X*8 != Y)时,不能直接转换, - * 必须先转换到相同长度,再转换到相同类型 - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - - -contract DisallowTypeChange { - - uint32 public y; - - function testChange() payable public{ - //由于uint32(4字节)小于bytes8(8字节) - // bytes8 x1; // 8*8 length - // uint32 y1 = uint32(x1); //error, 64 length can not change to 32 length - - // bytes1 a = 255; - // bytes2 b = "aA"; - - bytes8 x = hex"aaaa" ; - bytes4 x4 = bytes4(x); //right,转将长度转成一致 - y = uint32(x4); //right,再进行类型转换 - } - - //查询y的值 - function getY() public view returns (uint32){ - return y; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/HexLiteralsChangeByte.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/HexLiteralsChangeByte.sol" deleted file mode 100644 index 223758ab6c..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/HexLiteralsChangeByte.sol" +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 16进制数值如果长度与 bytesX不相等,也不能直接转换成 bytesX类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract HexLiteralsChangeByte { - - bytes1 public b1; - - function testChange() payable public returns(bytes1) { - bytes16 b16 = "ab"; - // b16 = 0xff; //编译出错,16进制数值长度与 byte16长度不相等 - - b1 = 0xf1; //16进制数值长度与 byte1长度不相等,正常转换(ff占用8位=1byte) - return b1; - } - - //查询y的值 - function getY() public view returns (bytes1){ - return b1; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/4.\345\274\203\347\224\250\345\255\227\351\235\242\351\207\217\345\217\212\345\220\216\347\274\200/DisallowYears.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/4.\345\274\203\347\224\250\345\255\227\351\235\242\351\207\217\345\217\212\345\220\216\347\274\200/DisallowYears.sol" deleted file mode 100644 index 6906bb5a7a..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/4.\345\274\203\347\224\250\345\255\227\351\235\242\351\207\217\345\217\212\345\220\216\347\274\200/DisallowYears.sol" +++ /dev/null @@ -1,70 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 弃用字面量及后缀 - * 1-years时间单位已弃用。因为闰年计算容易导致各种问题 - * 2-不允许小数点后不跟数字的数值写法 - * 3-十六进制数字不允许带“0X”前缀,只能用“0x” - * 4-不允许将十六进制数与单位组合 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -contract DisallowYears { - - uint256 time1; - uint256 etherValue; - uint256 hexValue; - uint256 hexComValue; - - - function testyear(uint a) payable public returns(uint time) { - /** - *1-years时间单位已弃用。因为闰年计算容易导致各种问题 - */ - // uint _time = 1 years; //error,编译出错,可以days代替 uint _time = 365 days - time1 = 365 days; //right, - - - /** - * 2-不允许小数点后不跟数字的数值写法 - */ - //uint value=255. ether; //error,编译出错 -// etherValue=255.0 lat;//right - etherValue=255.0 atp;//right - - /** - * 3-十六进制数字不允许带“0X”前缀,只能用“0x” - */ - // uint value=0Xff; //error,编译出错 - hexValue=0xff; //right - - /** - * 4-不允许将十六进制数与单位组合 - */ - // uint value=0xff ether; //error,编译出错 -// hexComValue=0xff*1 lat;//right - hexComValue=0xff*1 atp;//right - } - - //查询time1的值 - function getTime1() public view returns (uint){ - return time1; - } - - //查询ether的值 - function getEtherValue() public view returns (uint){ - return etherValue; - } - - //查询hexValue的值 - function getHexValue() public view returns (uint){ - return hexValue; - } - - //查询time1的值 - function getHexComValue() public view returns (uint){ - return hexComValue; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/5.\345\274\203\347\224\250\345\217\230\351\207\217/DisallowVariable.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/5.\345\274\203\347\224\250\345\217\230\351\207\217/DisallowVariable.sol" deleted file mode 100644 index 478751ffd7..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/5.\345\274\203\347\224\250\345\217\230\351\207\217/DisallowVariable.sol" +++ /dev/null @@ -1,63 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 05-弃用变量 - * 1-不允许声明0长度的定长数组类型 - * 2-不允许声明0结构体成员的结构体类型 - * 3-不允许使用空元组组件 - * 4-不允许声明未初始化的storage变量 - * 5-不允许定义非编译期常量的 constant常量 - * 6-var已弃用,需要明确声明变量类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -contract DisallowVariable { - - /** - *1-不允许声明0长度的定长数组类型 - */ - // int[0] arri0; //error,编译报错 - int[1] arri1; //right - - - /** - * 2-不允许声明0结构体成员的结构体类型 - */ - // struct Person{}//error,编译出错 - - struct Person{ - uint age; - } - - - mapping (uint =>Person) persons; - - function tesEmpty(uint _id) payable public returns(uint time) { - - /** - * 3-不允许使用空元组组件 - */ - // (uint x,uint y) = (,); //error,编译出错 - (uint x,uint y) = (2,3); //right - - /** - * 4-不允许声明未初始化的storage变量 - */ - // Person storage p;//error,编译出错 - Person storage p = persons[_id];//right - } - - - /** - * 5-不允许定义非编译期常量的 constant常量 - */ - // uint constant time = now; //error,编译出错 - - /** - * 6-var已弃用,需要明确声明变量类型 - */ - // var i=1; //编译出错,需明确指定变量类型 - uint j=1; - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/6.\345\274\203\347\224\250\350\257\255\346\263\225/InterfaceEnableStructAndenum.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/6.\345\274\203\347\224\250\350\257\255\346\263\225/InterfaceEnableStructAndenum.sol" deleted file mode 100644 index 9317e6ff86..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/6.\345\274\203\347\224\250\350\257\255\346\263\225/InterfaceEnableStructAndenum.sol" +++ /dev/null @@ -1,23 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 09-弃用语法 - * 10-接口允许定义结构体与枚举 - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -interface InterfaceEnableStructAndenum { - - //结构体 - struct Voter { - string name; - uint age; - } - - //枚举 - enum gender{ - MALE, - FEMALE - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/7.\345\255\230\345\202\250\345\214\272\345\237\237/DataLocation.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/7.\345\255\230\345\202\250\345\214\272\345\237\237/DataLocation.sol" deleted file mode 100644 index 15f48cf067..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/7.\345\255\230\345\202\250\345\214\272\345\237\237/DataLocation.sol" +++ /dev/null @@ -1,76 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 06- 存储区域 - * 1-结构体(struct),数组(array), - * 映射(mapping)类型的变量必须显式声明存储区域( storage, memeory, calldata), - * 包括函数参数和返回值变量都必须显式声明 - * 2-external 的函数的引用参数和映射参数需显式声明为 calldata - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - -contract DataLocation { - - struct Person{ - string name; - uint age; - } - - mapping(uint => Person) persons; - - bytes res_data; - - - /** - * 1.结构体(struct)类型的变量入参及返回值必须显示声明存储区域 - */ - function set_struct_person(Person memory _person,uint _id) internal{ - persons[_id] = _person; - } - - - /** - * 2. 数组(array) 类型的变量入参及返回值必须显示声明存储区域 - */ - // function transfer(address _to,uint _value,bytes _data) external returns (bool success){ //数组数据类型存储区域必须声明为calldata - function testBytes(bytes calldata _data) external returns (bytes memory){ - res_data = _data; - return res_data; - } - - /** - * 3.mapping 类型的变量入参及返回值必须声明存储位置 - * 允许internal函数的参数及返回值为mapping指针 - */ - function set_person(mapping(uint=>uint) storage id_age_map,uint _id) internal returns(mapping(uint=>uint) storage) { - Person memory person; - id_age_map[_id]= 23; - return id_age_map; - } - - - /** - * public 函数入参必须显示声明为memory - */ - function getPerson(uint _id) view external returns (string memory,uint){ - return (persons[_id].name,persons[_id].age); - } - - /** - * public 函数入参必须显示声明为memory - */ - function getBytes() view external returns (bytes memory){ - return res_data; - } - - /** - * public 函数入参必须显示声明为memory - */ - function savePerson(uint _id,string memory _name,uint _age) public returns (bool){ - Person memory _person = Person(_name,_age); - set_struct_person(_person,_id); - return true; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAdress.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAdress.sol" deleted file mode 100644 index 588907bcfb..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAdress.sol" +++ /dev/null @@ -1,22 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 08-合约和地址 - * 1-contract合约类型不再包括 address类型的成员函数, - * 必须显式转换成 address地址类型才能使用 send(), transfer(), - * balance等与之相关的成员函数/变量成员 - * 2-address地址类型细分为address和address payable, - * 只有address payable可以使用transfer(),send()函数, - * address payable类型可以直接转换为 address类型,反之不能。 - * 但是 address x可以通过 address(uint160(x)),强制转换成 address payable类型。 - * 如果 contract A不具有 payable的fallback函数, 那么 address(A)是 address类型。 - * 如果 contract A具有 payable的fallback函数, 那么 address(A)是 address payable类型 - * 3-msg.sender属于address payable类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract ContractAdress{ - fallback() external {} -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAndAddress.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAndAddress.sol" deleted file mode 100644 index e1952c64c3..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAndAddress.sol" +++ /dev/null @@ -1,65 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 08-合约和地址 - * 1-contract合约类型不再包括 address类型的成员函数, - * 必须显式转换成 address地址类型才能使用 send(), transfer(), - * balance等与之相关的成员函数/变量成员 - * 2-address地址类型细分为address和address payable, - * 只有address payable可以使用transfer(),send()函数, - * address payable类型可以直接转换为 address类型,反之不能。 - * 但是 address x可以通过 address(uint160(x)),强制转换成 address payable类型。 - * 如果 contract A不具有 payable的fallback函数, 那么 address(A)是 address类型。 - * 如果 contract A具有 payable的fallback函数, 那么 address(A)是 address payable类型 - * 3-msg.sender属于address payable类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -import "./ContractAdress.sol"; -import "./ContractPayable.sol"; - - -contract ContractAndAddress{ - address payable to_pay; - address to; - address payableToAddress; - address payable addressForcePayable; - - function payableOrNot() external { - bool result; - to_pay = address(new ContractPayable()); // 包含回退函数的合约contractPayable是一个 `address payable` - to = address(new ContractAdress()); // `address payable` 可以显示转换成address - // to_pay.transfer(1); // `transfer()` 是 `address payable` 的成员函数 - // result = to_pay.send(1); // `send()` 是 `address payable` 的成员函数 - to = address(new ContractAdress()); // 不包含声明为payable回退函数的合约可以显示转换`address` - // to_pay = address(new B()); // 不包含声明为payable回退函数的合约不可以显示转换成 // `address payable` - // to.transfer(1 ether); // `transfer()` 不是`address`成员函数 - // result = to.send(1 ether); // `send()` 不是`address`成员函数(写法不对) - //address john; - payableToAddress = to_pay; // Right,`address payable` can directly convert to `address` - - addressForcePayable = address(uint160(to)); // Right,`address` can forcibly convert to `address payable` - - } - - //获取payable类型的地址 - function getNonalPayableAddress() view public returns (address){ - return to_pay; - } - - //获取非payable类型的地址 - function getNonalContractAddress() view public returns (address){ - return to; - } - - //获取payable转换成address的地址 - function getPayableToAddress() view public returns (address){ - return payableToAddress; - } - - //获取address强制转换成payable的地址 - function getAddressToPayable() view public returns (address){ - return addressForcePayable; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractPayable.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractPayable.sol" deleted file mode 100644 index 1fe7769887..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractPayable.sol" +++ /dev/null @@ -1,27 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 08-合约和地址 - * 1-contract合约类型不再包括 address类型的成员函数, - * 必须显式转换成 address地址类型才能使用 send(), transfer(), - * balance等与之相关的成员函数/变量成员 - * 2-address地址类型细分为address和address payable, - * 只有address payable可以使用transfer(),send()函数, - * address payable类型可以直接转换为 address类型,反之不能。 - * 但是 address x可以通过 address(uint160(x)),强制转换成 address payable类型。 - * 如果 contract A不具有 payable的fallback函数, 那么 address(A)是 address类型。 - * 如果 contract A具有 payable的fallback函数, 那么 address(A)是 address payable类型 - * 3-msg.sender属于address payable类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract ContractPayable{ - - fallback() external { - } - receive() payable external { - - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/MsgSenderBelongToPayable.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/MsgSenderBelongToPayable.sol" deleted file mode 100644 index dbe6fb9e14..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/MsgSenderBelongToPayable.sol" +++ /dev/null @@ -1,21 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 08-合约和地址 - * 验证msg.sender属于address payable类型 - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - - -contract MsgSenderBelongToPayable { - function getContractAddr() view public returns (address){ - address payable ad= msg.sender;//msg.sender属于address payable - return address(this); - } - - function getMsgSenderAddr() view public returns (address){ - return msg.sender; - } -} - diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/EmitTest.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/EmitTest.sol" deleted file mode 100644 index 629a43de75..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/EmitTest.sol" +++ /dev/null @@ -1,24 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 09-其它 - * 1-引入emit做为触发事件的关键字而不是做为一个修饰符 - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - -contract EmitTest { - - event EventName(address bidder, uint amount); - - function testEvent() payable public { - // emit将触发一个事件(0.5.0必须使用emit关键字) - emit EventName(msg.sender, msg.value); - } - -//0.4.0版本触发事件可以不需要使用emit关键字 -// function testEvent() payable public { -// // emit将触发一个事件 -// EventName(msg.sender, msg.value); -// } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenum.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenum.sol" deleted file mode 100644 index 94e1d17c16..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenum.sol" +++ /dev/null @@ -1,22 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 09-其它 - * 10-验证0.5.0接口允许定义结构体与枚举(0.4.25版本会报错) - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - -interface InterfaceEnableStructAndenum { - - //结构体 - struct Product{ - ProductCondition condition; - } - - //枚举 - enum ProductCondition{ - New, - Used - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenumImpl.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenumImpl.sol" deleted file mode 100644 index c6fea7a7c3..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenumImpl.sol" +++ /dev/null @@ -1,20 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 09-其它 - * 10-验证0.5.0接口允许定义结构体与枚举(0.4.25版本会报错) - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - -import "./InterfaceEnableStructAndenum.sol"; - -contract InterfaceEnableStructAndenumImpl is InterfaceEnableStructAndenum{ - - //构建Product结构体传入ProductCondition,Used则返回1,ProductCondition.New返回0 - function getProductCondition() public pure returns (ProductCondition){ - Product memory product = Product(ProductCondition.Used); - return product.condition; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserLib.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserLib.sol deleted file mode 100644 index e2217511ad..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserLib.sol +++ /dev/null @@ -1,46 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 1. 允许public和external库函数的参数和返回变量使用mapping类型 - * - * @author hudenian - * @dev 2019/12/20 11:09 - */ - -library UserLib { - // struct _User { - // string name; - // uint age; - // mapping(uint=>string) user; - // } - - // function set_age(uint new_age) internal returns(_User memory) { - // _User memory user; - // user.age =new_age; - // return user; - // } - - /** - * library库中允许包含mapping做为入参与出参 - * - */ - function set_user(mapping(uint=>uint) storage id_age_map,uint _id) public returns(mapping(uint=>uint) storage) { - // _User memory user; - id_age_map[_id]= 23; - return id_age_map; - } - - /** - * library库中允许包含mapping做为入参与出参 - * - */ - // function set_user_inter(mapping(uint=>uint) storage id_age_map,uint _id) external returns(mapping(uint=>uint) storage) { - // _User memory user; - // id_age_map[_id]= 24; - // return id_age_map; - // } - - // function get_age() public { - - // } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserMapping.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserMapping.sol deleted file mode 100644 index 9901de1d9b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserMapping.sol +++ /dev/null @@ -1,38 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 1. 允许public和external库函数的参数和返回变量使用mapping类型 - * - * @author hudenian - * @dev 2019/12/20 11:09 - */ - -import "./UserLib.sol"; - -contract UserMapping{ - - using UserLib for *; - - - mapping(uint=>uint) id_age_map; - - function setOutUser(uint _age,uint _id) public { - - // uint age = _age; - // 正确的用法:等价于set_age(age); - // age.set_age(); - - id_age_map[_id] =_age; - // mapping(uint=>uint) storage myIdAgeMap = set_user(id_age_map,_id); - - id_age_map.set_user(_id); - - - // return id_age_map[1]; - // 错误用法:get_age()无参数或和第一个参数不匹配,就不能这么调用 - // age.get_age(); - } - - function getOutUser(uint _id) view public returns(uint age){ - return id_age_map[_id]; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/AnimalExternal.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/AnimalExternal.sol" deleted file mode 100644 index af73d16e0c..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/AnimalExternal.sol" +++ /dev/null @@ -1,38 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证0.5.13版本允许public函数覆盖external函数 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - -contract AnimalExternal { - - string _birthDay; // 生日 - int public _age; // 年龄 - int internal _weight; // 身高 - string private _name; // 姓名 - - constructor() public{ - _age = 29; - _weight = 170; - _name = "Lucky dog"; - _birthDay = "2011-01-01"; - } - //声明external函数 - function birthDay() view external virtual returns (string memory) { - return _birthDay; - } - - function age() view public returns (int) { - return _age; - } - - function height() view internal returns (int) { - return _weight; - } - - function name() view private returns (string memory) { - return _name; - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/PersonPublic.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/PersonPublic.sol" deleted file mode 100644 index b181a9bf79..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/PersonPublic.sol" +++ /dev/null @@ -1,20 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 验证0.5.13版本允许public函数覆盖external函数 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ -import "./AnimalExternal.sol"; - -contract PersonPublic is AnimalExternal { - /** - * 0.5.13 允许public函数覆盖external函数 - * - */ - function birthDay() view public override returns (string memory) { - - return "2020-12-15"; - } - -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/3-\346\267\273\345\212\240\345\257\271\345\205\267\346\234\211string\346\210\226bytes\351\224\256\347\261\273\345\236\213\347\232\204mapping\347\232\204\350\216\267\345\217\226\345\231\250\347\232\204\346\224\257\346\214\201/StringmappingSupport.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/3-\346\267\273\345\212\240\345\257\271\345\205\267\346\234\211string\346\210\226bytes\351\224\256\347\261\273\345\236\213\347\232\204mapping\347\232\204\350\216\267\345\217\226\345\231\250\347\232\204\346\224\257\346\214\201/StringmappingSupport.sol" deleted file mode 100644 index 4fb6adb6e6..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/3-\346\267\273\345\212\240\345\257\271\345\205\267\346\234\211string\346\210\226bytes\351\224\256\347\261\273\345\236\213\347\232\204mapping\347\232\204\350\216\267\345\217\226\345\231\250\347\232\204\346\224\257\346\214\201/StringmappingSupport.sol" +++ /dev/null @@ -1,43 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 添加对具有string或bytes键类型的mapping的获取器的支持 - * Add support for getters of mappings with string or bytes key types - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - -contract StringmappingSupport { - - - mapping(string =>string) amap; - mapping(bytes9 => string) bmap; - - /** - * 支持string为key的mapping数据存储 - */ - function setStringmapValue(string memory _key,string memory _value) public{ - amap[_key] = _value; - } - - /** - * 支持string为key的mapping数据获取 - */ - function getStringmapValue(string memory _key) public view returns(string memory){ - return amap[_key]; - } - - /** - * 支持byte为key的mapping数据存储 - */ - function setByte32mapValue(bytes9 _key,string memory _value) public{ - bmap[_key] = _value; - } - - /** - * 支持byte为key的mapping数据获取 - */ - function getByte32mapValue(bytes9 _key) public view returns( string memory){ - return bmap[_key]; - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/4-\345\270\246\346\234\211\346\214\207\345\256\232\345\217\202\346\225\260\347\232\204\345\207\275\346\225\260\350\260\203\347\224\250\345\217\257\344\273\245\345\244\204\347\220\206\351\207\215\350\275\275\345\207\275\346\225\260/Overload.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/4-\345\270\246\346\234\211\346\214\207\345\256\232\345\217\202\346\225\260\347\232\204\345\207\275\346\225\260\350\260\203\347\224\250\345\217\257\344\273\245\345\244\204\347\220\206\351\207\215\350\275\275\345\207\275\346\225\260/Overload.sol" deleted file mode 100644 index 92f844f30a..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/4-\345\270\246\346\234\211\346\214\207\345\256\232\345\217\202\346\225\260\347\232\204\345\207\275\346\225\260\350\260\203\347\224\250\345\217\257\344\273\245\345\244\204\347\220\206\351\207\215\350\275\275\345\207\275\346\225\260/Overload.sol" +++ /dev/null @@ -1,37 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 带有指定参数的函数调用可以处理重载函数 - * Function calls with named arguments now work with overloaded functions. - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - -contract Overload { - - uint public re; - - function f(uint a,uint b) public returns (uint sum) { - sum = a+b; - return sum; - } - - function f(uint a) public returns (uint sum) { - sum = a; - return sum; - } - - function g() public{ - //0.4.0版本会出错 - uint tp; - tp = f({a:2,b:3}); - tp = f({a:2}); - re= tp; - // return re; - } - - function getRe() view public returns(uint){ - return re; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCode.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCode.sol" deleted file mode 100644 index 76ff5a4e17..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCode.sol" +++ /dev/null @@ -1,19 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 5. type(C).creationCode():提供对合约的创建 - * https://github.com/ethereum/solidity/issues/5647 - * https://solidity.readthedocs.io/en/v0.5.3/units-and-global-variables.html - * 说明:主要用于内联汇编中 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ -import "./CreationCodeType.sol"; - -contract CreationCode { - bytes public constant creationCodeInfo = type(CreationCodeType).creationCode; - - function getContractName() public view returns(bytes memory contractName){ - return creationCodeInfo; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCodeType.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCodeType.sol" deleted file mode 100644 index 83851be2d3..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCodeType.sol" +++ /dev/null @@ -1,16 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 5. type(C).creationCode():提供对合约的创建 - * https://solidity.readthedocs.io/en/v0.5.3/units-and-global-variables.html - * 说明:主要用于内联汇编中 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - - -contract CreationCodeType { - function getValue() public returns (string memory){ - return "hello"; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCode.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCode.sol" deleted file mode 100644 index 65f417c153..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCode.sol" +++ /dev/null @@ -1,21 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 6. type(C).runtimeCode():提供运行时代码的访问 - * https://github.com/ethereum/solidity/issues/5647 - * https://solidity.readthedocs.io/en/v0.5.3/units-and-global-variables.html - * 说明:主要用于内联汇编中 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - -import "./RuntimeCodeType.sol"; - -contract RuntimeCode { - - bytes public constant runtimeCodeInfo = type(RuntimeCodeType).runtimeCode; - - function getContractName() public view returns(bytes memory contractName){ - return runtimeCodeInfo; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCodeType.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCodeType.sol" deleted file mode 100644 index 3b7baf7d73..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCodeType.sol" +++ /dev/null @@ -1,16 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 5. type(C).creationCode():提供对合约的创建 - * https://solidity.readthedocs.io/en/v0.5.3/units-and-global-variables.html - * 说明:主要用于内联汇编中 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - - -contract RuntimeCodeType { - function getValue() public returns (string memory){ - return "hello"; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeName.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeName.sol" deleted file mode 100644 index 6627a6d66f..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeName.sol" +++ /dev/null @@ -1,15 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * type(C).name():获取合约名称 - * - * @author hudenian - * @dev 2019/12/23 13:57 - */ -contract TypeName { - string public constant name = type(TypeName).name; - - function getContractName() public returns(string memory contractName){ - return name; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeNameFunction.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeNameFunction.sol" deleted file mode 100644 index 6fc62b761d..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeNameFunction.sol" +++ /dev/null @@ -1,13 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * type(C).name():提供对合约名称的访问 - * - * @author hudenian - * @dev 2019/12/23 13:57 - */ -contract TypeNameFunction { - function f() public pure returns (string memory) { - return type(TypeNameFunction).name; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/8-address_LibraryName/GetLibraryAddress.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/8-address_LibraryName/GetLibraryAddress.sol deleted file mode 100644 index 817f99a799..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/8-address_LibraryName/GetLibraryAddress.sol +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 1. address(LibraryName):获取链接库的地址 - * - * @author hudenian - * @dev 2019/12/25 09:57 - * - */ - -import "./UserLibrary.sol"; - -contract GetLibraryAddress{ - - using UserLibrary for *; - - address userLibAddress; - - function setUserLibAddress() public{ - //根据library库的名称获取地址 - userLibAddress = address(UserLibrary); - } - - function getUserLibAddress() view public returns(address adr){ - return userLibAddress; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/8-address_LibraryName/UserLibrary.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/8-address_LibraryName/UserLibrary.sol deleted file mode 100644 index 2f218ac03b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/2.version_compatible/0_5_13/8-address_LibraryName/UserLibrary.sol +++ /dev/null @@ -1,46 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 1. 允许public和external库函数的参数和返回变量使用mapping类型 - * - * @author hudenian - * @dev 2019/12/20 11:09 - */ - -library UserLibrary { - struct _User { - string name; - uint age; - mapping(uint=>string) user; - } - - function set_age(uint new_age) internal returns(_User memory) { - _User memory user; - user.age =new_age; - return user; - } - - /** - * library库中允许包含mapping做为入参与出参 - * - */ - function set_user(mapping(uint=>uint) storage id_age_map,uint _id) public returns(mapping(uint=>uint) storage) { - _User memory user; - id_age_map[_id]= 23; - return id_age_map; - } - - /** - * library库中允许包含mapping做为入参与出参 - * - */ - function set_user_inter(mapping(uint=>uint) storage id_age_map,uint _id) external returns(mapping(uint=>uint) storage) { - _User memory user; - id_age_map[_id]= 24; - return id_age_map; - } - - function get_age() public { - - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/1.BasicDataType/BasicDataTypeConstantContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/1.BasicDataType/BasicDataTypeConstantContract.sol deleted file mode 100644 index 7413849312..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/1.BasicDataType/BasicDataTypeConstantContract.sol +++ /dev/null @@ -1,177 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试合约基本数据类型字面常量 - * - *1、地址类型(Address) - *2、地址字面常量 - *3、有理数常量 - *4、整数字面常量 - *5、字符串字面常量 - *6、十六进制字面常量 - *7、枚举类型 - */ - -contract BasicDataTypeConstantContract { - - /** - *1、地址类型(Address) - *包含两种形式: - *address:保存一个20字节的值(以太坊地址的大小),160位。 - *address payable :可支付地址,与 address 相同,不过有成员函数 transfer 和 send 。 - *------------- 测试点 ---------- - *1、地址类型赋值使用 - *2、地址成员变量: - *address.balance():查询一个地址余额 - *address.transfer():发送货币,[常情况转账、异常情况转账] - *address.send() :transfer 的低级版本。如果执行失败,当前的合约不会因为异常而终止,但 send 会返回 false。 - */ - - //查询地址余额 - function getBalance(address addr) public view returns (uint) { - return addr.balance; - } - - //当前合约的余额 - function getCurrentBalance() public view returns (uint) { - return address(this).balance; - } - - //转账transfer - function goTransfer(address payable addr) public payable { - addr.transfer(msg.value); - } - - //转账send,向当前合约发送货币 - function goSend(address payable addr) public payable returns(uint amount, bool success) { - //msg.sender 全局变量,调用合约的发起方 - //msg.value 全局变量,调用合约的发起方转发的货币量,以wei为单位。 - //send() 执行的结果 - return (msg.value, addr.send(msg.value)); - } - - /** - *2、地址字面常量 - * 通过了地址校验和测试的十六进制字面常量,长度在 39 到 41 个数字的会作为地址字面常量 - */ - function getAddress() public returns (address v) { - -// address b = address("lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2"); - address b = address("atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq"); - return b; - } - - /** - *3、有理数常量 - * 整数、分数(有限小数、无限循环小数) - * - */ - function getValue() public view returns (uint128,uint,uint) { - - uint128 o = 2.5 + 0.5; - uint v = 2e10; - uint l = 3e15; - return (o,v,l); - } - - /** - *4、整数字面常量 - * 整数字面常量由范围在0-9的一串数字组成,表现成十进制。 - * - */ - - function getInt() public returns (int v) { - int a = 6; - return a; - } - - /** - *5、字符串字面常量: - * 字符串字面常量是指由双引号或单引号引起来的字符串 - *------- 测试点---- - * 1)、赋值操作 - * 2)、字符串是特殊的动态长度字节数组 - * 转换:字符串字面常数的类型———>转换成 bytes1,……,bytes32 ,或者bytes - * 3)、字符串不能够字节的修改长度和内容,需要转换为bytes动态字节数组 - */ - - //1)、赋值 - string strA = 'hello'; - string strB = "world"; - - function getStrA() public view returns (string memory) { - return strA; - } - - //2)、转换(字符串是特殊的动态字节数组),字符串不能直接的获取长度和内容,可以通过转换字节数组进行获取 - function getStrALength() public view returns (uint) { - return bytes(strA).length; - } - - function setStrA() public view returns (string memory) { - bytes memory b = bytes(strA); - b[0] = 'a'; - return string(b); - } - - /** - *6、十六进制字面常量: - * 十六进制字面量,以关键字hex打头,后面紧跟用单或双引号包裹的字符串。 - * 由于一个字节是8位,所以一个hex是由两个[0-9a-z]字符组成的 - *--------- 测试点 ---------- - * 十六进制字面常量定义赋值取值操作 - * - */ - - function getHexLiteraA() public view returns(bytes1){ - - bytes1 b = hex"c8";//十进制数字200 <====> 十六进制c8 <===> 二进制11001000 - return b; - } - - function getHexLiteraB() public view returns(bytes2){ - - bytes2 b = hex"01f4"; //十进制数字256 <===> 十六进制1f4 <===> 二进制111110100 - return b; - } - - function getHexLiteraC() public view returns (bytes2, bytes1, bytes1){ - - bytes2 b = hex"01f4";//十进制数字256 <===> 十六进制1f4 <===> 二进制111110100 - return (b, b[0], b[1]); - } - - - /** - *7、枚举类型 - * 枚举是在Solidity中创建用户定义类型的一种方法,其可以从整型显示转换成枚举。 - * 选项从0开始无符号整数值表示。 - *------------ 测试点 -------------------- - *1、定义 - *2、取值 - */ - - enum Season{Spring, Summer, Autumn, Winter} - - function getSeasonA() public view returns(Season){ - return printSeason(Season.Summer); - } - - function getSeasonB() public view returns(Season){ - //Season s = Season(5);//越界 - Season s = Season(3); - return s; - } - - function getSeasonIndex() public view returns(uint){ - uint s = uint(Season.Spring); - return s; - } - - function printSeason(Season s) public view returns(Season) { - return s; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/1.BasicDataType/BasicDataTypeContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/1.BasicDataType/BasicDataTypeContract.sol deleted file mode 100644 index d10d964446..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/1.BasicDataType/BasicDataTypeContract.sol +++ /dev/null @@ -1,98 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试合约基本数据类型 - *1、整型 - *2、浮点型 - *3、布尔型 - *4、字节数组 - */ - -contract BasicDataTypeContract { - - /** - * 1、整型 (1个数字1个字节代表8位) - 1)、int有符号整型,默认int256,包含位数:int8、int16、int24.....int256 - 2)、uint:无符号整数,默认uint256,包含位数:uint8、uint16,uint24.....uint256 - */ - - //1)、验证有符号/无符号整数 - int a = -1;//正常 - int b = 1;//正常 - uint c = 2;//正常 - //uint d = -3;//异常,编译异常,无符号整数不能赋值有符号整数 - - //2)、验证无符号整数位数 - uint8 x1 = 1; - uint8 x2 = 255;//8位无符号整数取值范围0~255 - //uint8 x3 = 256;//8位数无符号整数溢出,编译报错 - uint16 y1 = 1; - uint16 y2 = 65535;//16位无符号整数取值范围0~65535 - //uint16 y3 = 65535;//16位数溢出,编译报错 - - //无符号8位整数溢出(输入最大值255+1,则溢出显示结果为0) - function addUintOverflow(uint8 a) public pure returns(uint8) { - return a + 1; - } - - //3)、验证有符号整数位数 - int8 z1 = 1; - int8 z2 = 127 ;//8位有符号整数取值范围-128~127 - //int8 z3 = 128;//8位数有符号整数溢出,编译报错 - int8 w1 = -1; - int8 w2 = -128; - //int8 w3 = -129;//8位数有符号整数溢出,编译报错 - - //有符号8位整数溢出(输入最大值127+1,则溢出显示结果-128) - function addIntOverflow(int8 a) public pure returns(int8) { - return a + 1; - } - - /** - * 2、浮点型 - 可以用来声明变量,但是不可以用来赋值 - 1)、fixed 有符号固定位浮点数,关键字为 fixedMxN - 2)、ufixed:无符号的固定位浮点数,关键字为 ufixedMxN - (M 表示这个类型要占用的位数,以 8 步进,可为 8 到 256 位。N 表示小数点的个数,可为 0 到 80 之间。) - * - */ - - //1、fixed 有符号固定位浮点数,关键字为 fixedMxN - //fixed f1 = 1.0;//编译异常 - - /** - *3、布尔型:取值为常量值true和false - * - */ - bool h = true; - bool j = false; - - /** - *4、字节数组 - *1)、定长字节数组,关键字:bytes1、bytes2、bytes3...,byte32,byte默认代表bytes1。 - *2)、变长字节数组,关键字:bytes,动态分配大小字节数组 - */ - - //1)、验证定长字节数组 - bytes1 b1 = "a"; - bytes1 b2 = bytes1(uint8(1)); - bytes2 b3 = "ab"; - bytes3 b4 = "abc"; - //bytes3 b5 = "abcd";//位数超出,编译异常 - - function getBytes1Length() public view returns (uint) { - return b3.length; - } - - //2)、验证变长字节数组 - bytes k1 = "a"; - bytes k2 = "ab"; - bytes k3 = "abc"; - - function getBytesLength() public view returns (uint) { - return k3.length; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/1.BasicDataType/BasicDataTypeDeleteContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/1.BasicDataType/BasicDataTypeDeleteContract.sol deleted file mode 100644 index 09a641ffa2..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/1.BasicDataType/BasicDataTypeDeleteContract.sol +++ /dev/null @@ -1,112 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试数据类型操作符delete - * solidity中通过操作符delete用于释放空间,对于某个值类型赋予初始化值 - */ - -contract BasicDataTypeDeleteContract { - - bool boolValue; - uint uintValue; - address addr; - bytes3 bytesValue; - string str; - int intValue; - uint8[] arrayInt; - - enum LightEnum{RED, GREEN, YELLOW} - LightEnum lightEnum; - - struct Person{ - uint8 id; - string name; - } - Person person; - mapping (uint8 => uint8) uintMap; - - /** - * 数据赋值 - */ - function initBasicData() public { - boolValue = true; - uintValue = 2; - addr = msg.sender; - bytesValue = "123"; - str = "hello"; - intValue = 5; - //结构体赋值 - person = Person(1,"Ella"); - //数组赋值 - arrayInt = [1,2,3]; - //mapping赋值 - uintMap[1] = 1; - uintMap[2] = 2; - uintMap[3] = 3; - //枚举赋值 - lightEnum = LightEnum.YELLOW; - } - - // ----- delete基本数据类型 ----- - function deleteBasicData() public { - delete boolValue; - delete uintValue; - delete addr; - delete bytesValue; - delete str; - delete intValue; - } - - function getBasicData() public view returns (bool,uint,address,bytes3,string memory,int) { - return (boolValue,uintValue,addr,bytesValue,str,intValue); - } - - - // ------ delete结构体 ------ - function deleteStruct() public { - - delete person; - } - - function getStruct() public view returns (uint8,string memory) { - return (person.id,person.name); - } - - // ----- delete数组 -------- - function deleteArray() public { - delete arrayInt; - } - - function getArrayLength() public view returns (uint256) { - return arrayInt.length; - } - - // ----- delete枚举 ------ - function deleteEnum() public { - - delete lightEnum; - } - - function getEnum() public view returns (LightEnum) { - return lightEnum; - } - - /** - * ------- delete映射 ---------- - * 映射的特殊性,由于映射的键并不总能有效遍历,所以不能直接删除一个映射 - * 但是,可以按照某一项删除映射 - */ - function deleteMapping() public { - - //直接删除映射,编译异常 - //delete uintMap; - //删除映射中某一项 - delete uintMap[2]; - } - - function getMapping() public view returns (uint8) { - return uintMap[2]; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ContractArray.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ContractArray.sol deleted file mode 100644 index f1e7d19fe7..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ContractArray.sol +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author liweic - * @dev 2020/01/11 - * ----------------- 测试点 ------------------------------ - * 验证合约数组 - */ -contract ContractArray { - ContractArray[] y = new ContractArray[](3); - ContractArray[3] x; - function f() public { - ContractArray[3] memory z; - y.push(this); - x[0] = this; - z[0] = this; - } - - function gety() view public returns(ContractArray[] memory){ - return y; - } - - function getx() view public returns(ContractArray){ - return x[0]; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeArrayComplexContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeArrayComplexContract.sol deleted file mode 100644 index 74c9f6833e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeArrayComplexContract.sol +++ /dev/null @@ -1,41 +0,0 @@ -pragma solidity ^0.6.12; - -contract ReferenceDataTypeArrayComplexContract { - - - uint256[] arrayUint = [1,2]; - - /** - * 验证含数组运算逻辑合约 - * 此函数是加和运算限制: - * 1)、数组长度不可以超过10; - * 2)、数组值将大于1000过滤掉不进行计算; - * 3)、总和大于500将不再进行加和运算 - */ - function sumComplexArray(uint256[] calldata array) external pure returns (uint256) { - - uint i = 0; - uint sum = 0; - while(i < array.length){ - uint idx = i; - //1、数组长度大于10,停止执行计算 - if(idx > 10) - break; - //获取数组中值 - uint x = array[idx]; - //2、数组值将大于1000过滤掉不进行计算 - if(x >= 1000){ - i += 1; - continue; - }else{ - sum += x; - } - //3、总和大于500将不再进行加和运算 - if(sum >= 500) - return sum; - - i++; - } - return sum; - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeArrayContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeArrayContract.sol deleted file mode 100644 index f770dd05d7..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeArrayContract.sol +++ /dev/null @@ -1,69 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试引用数据类型 - *1、数组(Array) - *2、结构体(Struct) - */ - -contract ReferenceDataTypeArrayContract { - - /** - *2、数组(Array):一种数据结构,它是存储同类元素的有序集合 - * 1)、数组的声明及初始化及取值(定长数组、可变数组) - * 2)、多维数组 - * 3)、数组成员方法 - * length属性、push()方法 - */ - - /** - *验证:1)、数组的声明及初始化及取值(定长数组、可变数组) - */ - - //声明定长数组 - uint[5] numArray = [1,2,3,4,5]; - - //声明可变数组 - string[] numArray1 = ["1","2","3","4","5","6"]; - - //new关键字创建动态数组 - uint[] a = new uint[](5); - - function setArray(uint index,uint value) public { - numArray[index] = value; - } - - function getArray(uint index) public view returns (uint value) { - return numArray[index]; - } - - /** - *验证:2)、多维数组声明及初始化及取值 - * - */ - //声明二维数组并赋值、取值 - uint[][] multiArray = [[0,0],[0,1],[0,2],[1,0],[1,1],[1,2]]; - - function setMultiArray() public { - multiArray[1][0] = 100; - } - - function getMultiArray() public view returns (uint value,uint lenght) { - return (multiArray[1][0],multiArray[0].length); - } - - /** - *验证:3)、数组的属性及方法 - * length属性、push()方法 - */ - function setArrayPush(string memory x) public { - numArray1.push(x); - } - - function getArrayLength() public view returns (uint) { - return numArray1.length; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeArrayOperatorContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeArrayOperatorContract.sol deleted file mode 100644 index 12435b0bd4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeArrayOperatorContract.sol +++ /dev/null @@ -1,87 +0,0 @@ -pragma solidity ^0.6.12; - -contract ReferenceDataTypeArrayOperatorContract { - - /** - * 验证数组支持的运算符 - * 1)、比较运算符 - * 2)、位运算符 - */ - - //1)、比较运算符:支持的比较运算符有<=,<,==,!=,>=,>,返回的结果是一个bool - function arrayCompare() public view returns (bool,bool,bool,bool,bool) { - - bytes1 a = "a"; - bytes1 b = "b"; - bytes1 c = bytes1(uint8(97)); - - bool r1 = a < b;//返回 ture (ASCII码 Dec a= 97,b = 98) - bool r2 = a > b;//返回 false - bool r3 = a == c;//返回 ture - bool r4 = b != c;//返回 ture - bool r5 = a >= c;//返回 ture - return (r1,r2,r3,r4,r5); - } - - //2)、定长字节数组支持位运算符 &(按位与),|(按位或),^(按位异或),~(按位取反),以及<<(左移位),<<(右移位) - - - //&(按位与)--两个操作数中位都为1,结果才为1,否则结果为0 - function arrayBitAndOperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 b = bytes1(uint8(128));//bin:1000 0000 - bytes1 c = a&b;//hex:0x80,bin:1000 0000,dec:128 - uint8 d = uint8(c); - return (c,d); - } - - - //|(按位或) -- 两个位只要有一个为1,那么结果就是1,否则就为0 - function arrayBitOrOperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 b = bytes1(uint8(128));//bin:1000 0000 - bytes1 c = a|b;//hex:0x81,bin:1000 0001,dec:129 - uint8 d = uint8(c); - return (c,d); - } - - //~(按位取反) -- 如果位为0,结果是1,如果位为1,结果是0 - function arrayBitInverseOperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 c = ~a;//hex:0x7e,bin:0111 1110,dec:126 - uint8 d = uint8(c); - return (c,d); - } - - //^(按位异或) -- 两个操作数的位中,相同则结果为0,不同则结果为1 - function arrayBitXOROperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 b = bytes1(uint8(128));//bin:1000 0000 - bytes1 c = a^b;//hex:0x01,bin:0000 0001,dec:1 - uint8 d = uint8(c); - return (c,d); - } - - //<<(左移位) -- 按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零 - function arrayBitLeftShiftperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 c = a<<1;//hex:0x02,bin:0000 0010,dec:2 - uint8 d = uint8(c); - return (c,d); - } - - //<<(右移位) -- 按二进制形式把所有的数字向右移动对应的位数,低位移出(舍弃),高位的空位补零 - function arrayBitRightShiftperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 c = a>>1;//hex:0x40,bin:0100 0000,dec:64 - uint8 d = uint8(c); - return (c,d); - } - -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeStructContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeStructContract.sol deleted file mode 100644 index 7c771a6137..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeStructContract.sol +++ /dev/null @@ -1,82 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试引用数据类型 - *1、数组(Array) - *2、结构体(Struct) - */ - -contract ReferenceDataTypeStructContract { - - /** - * 2、结构体 (struct) - * 简述:使用关键字struct定义结构体,struct可以用于映射和数组中作为元素, - * 其本身也可以包含映射和数组类型,不能声明一个struct同时将自身struct作为成员。 - * ----------------- 测试点 ------------------------------ - *1)、定义不同子元素数据(包含基本类型、包含引用数据类型) - *2)、赋值及取值 - */ - - /** - *验证:1)、定义不同子元素数据(包含基本类型、包含引用数据类型) - *--------------------------------------------------------- - * 验证结果:结构体可以包含基本数据类型,引用数据类型,包含结构体(不可以包含自身结构体,否则会编译不过 - */ - - //定义结构体包含基本数据类型 - struct Person { - uint id; - address addr; - uint age; - bool isVIP; - } - - //定义结构体包含引用数据类型 - struct Group { - uint idGroup; - address addrGroup; - mapping(uint => address) addressMap; - string nameGroup; - uint[] pIdArray; - } - - //定义结构体包含结构体(但是结构体不能包含自身) - struct LucyPerson { - uint id; - string name; - Person p; //包含其他结构体 - // LucyPerson lucy; //结构体不能包含自身,否则编译不过 - } - - /** - * 2)、验证结构体赋值及取值 - * --------------------- - * 三种赋值方式 - */ - - //赋值方式一: 按入参顺序赋值 - function initDataStructA() public view returns (uint,address,uint,bool) { - Person memory person = Person(2,msg.sender,25,true); - return (person.id,person.addr,person.age,person.isVIP); - } - - //赋值方式二: 按命名参数赋值 - function initDataStructB() public view returns (uint,address,uint,bool) { - Person memory person = Person({id:2,addr:msg.sender,age:25,isVIP:true}); - return (person.id,person.addr,person.age,person.isVIP); - } - - //赋值方式三:结构体中映射的初始化 - function initDataStructC() public view returns (uint,address,uint,bool) { - Person memory p1;//分配映射空间 - Person memory person = Person({id:2,addr:msg.sender,age:25,isVIP:true}); - p1 = person; - return (p1.id,p1.addr,p1.age,p1.isVIP); - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeStructDeleteContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeStructDeleteContract.sol deleted file mode 100644 index 775046105e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeStructDeleteContract.sol +++ /dev/null @@ -1,63 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试结构体嵌套delete操作 - */ - -contract ReferenceDataTypeStructDeleteContract { - - //内嵌结构体 - struct nestedStruct { - uint nestedValue; - mapping (uint => bool) nestedMapping; - } - //外部结构体 - struct topStruct { - nestedStruct nStruct;//声明内嵌结构体 - uint topValue; - mapping (uint => uint) topMapping; - } - uint toDeletInt; - topStruct tStruct;//声明内嵌结构体 - //构造函数初始化 - constructor() public{ - toDeletInt = 5; - //外部结构体赋值 - tStruct.topValue = 10; - tStruct.topMapping[1] = 1; - tStruct.topMapping[2] = 2; - //外部结构体嵌套的内部结构体赋值 - tStruct.nStruct.nestedValue = 3; - tStruct.nStruct.nestedMapping[1] = true; - tStruct.nStruct.nestedMapping[2] = true; - //执行delete - delete tStruct; - delete toDeletInt; - } - - function getToDeleteInt() public view returns (uint) { - return toDeletInt; - } - - function getTopValue() public view returns(uint){ - return tStruct.topValue; - } - - function getTopMapping() public view returns(uint) { - return tStruct.topMapping[1]; - } - - function getNestedValue() public view returns(uint){ - return tStruct.nStruct.nestedValue; - } - - function getNestedMapping() public view returns(bool) { - return tStruct.nStruct.nestedMapping[1]; - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeStructRecursiveContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeStructRecursiveContract.sol deleted file mode 100644 index 28c42af9cb..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/2.ReferenceData/ReferenceDataTypeStructRecursiveContract.sol +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试结构体递归 - */ - -contract ReferenceDataTypeStructRecursiveContract { - - //定义结构体,嵌套递归结构体数组 - struct Person { - Person[] children; - } - Person person; - //构造函数赋值 - //length只读,无法调整数组大小 - //constructor() public { - // person.children.length = 2; - // person.children[0].children.length = 10; - // person.children[1].children.length = 20; - //} - //获取结构数组长度 - function getStructPersonLength() public view returns (uint256, uint256, uint256) { - Person memory memoryPerson; - memoryPerson = person; - return(memoryPerson.children.length, - memoryPerson.children[0].children.length, - memoryPerson.children[1].children.length); - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/3.MappingData/MappingArrayDataTypeContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/3.MappingData/MappingArrayDataTypeContract.sol deleted file mode 100644 index 6e34d7492e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/3.MappingData/MappingArrayDataTypeContract.sol +++ /dev/null @@ -1,39 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试映射功能点 - *映射(Mapping)简述:映射类型,一种键值对的映射关系存储结构 - *----------------- 测试点 ------------------------------ - * 验证mapping数组类型 - */ - -contract MappingArrayDataTypeContract { - - //定义mapping定长数组 - mapping (uint8 => uint8)[2] a; - mapping (uint8 => uint8)[2] b; - //定义赋值内部函数 - function setMappingInternal(mapping (uint8 => uint8)[2] storage mapArray,uint8 key,uint8 value1, - uint8 value2) internal returns (uint8,uint8) { - //获取mapping数组中值 - uint8 oldValue1 = mapArray[0][key]; - uint8 oldValue2 = mapArray[1][key]; - //给mapping数组赋新值 - mapArray[0][key] = value1; - mapArray[1][key] = value2; - return (oldValue1,oldValue2); - } - //调用内部函数进行赋值 - function set(uint8 key,uint8 value_a1,uint8 value_a2,uint8 value_b1,uint8 value_b2) public { - - setMappingInternal(a,key,value_a1,value_a2); - setMappingInternal(b,key,value_b1,value_b2); - } - //查询mapping定长数组值 - function getValueByKey(uint8 key) public view returns (uint8,uint8,uint8,uint8) { - return(a[0][key],a[1][key],b[0][key],b[1][key]); - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/3.MappingData/MappingDataTypeContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/3.MappingData/MappingDataTypeContract.sol deleted file mode 100644 index 9a796787ae..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/3.MappingData/MappingDataTypeContract.sol +++ /dev/null @@ -1,74 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试映射功能点 - *映射(Mapping)简述:映射类型,一种键值对的映射关系存储结构 - *----------------- 测试点 ------------------------------ - *1、定义映射 - * mapping(keyType => keyValue) public maps; - * 键类型--允许除映射、变长数组、合约、枚举、结构体外的几乎所有类型 - * 值类型--值类型没有任何限制,可以为任何类型包含映射类型 - *2、赋值、取值 - * map[keyType] ← 不同数值类型; - */ - - -contract MappingDataTypeContract { - - /** - *验证:1、定义映射 - * 键类型--允许除映射、变长数组、合约、枚举、结构体外的几乎所有类型 - * 值类型--值类型没有任何限制,可以为任何类型包含映射类型 - * --------------------------------------------------------- - *验证结果:1)、mapping定义键类型,包含映射、变长数组、合约、枚举、结构体,会编译异常 - * 2)、mapping定义值类型,没有任何限制 - */ - - enum SizeEnum {XL, XXL, XXXL} - struct PeopleStruct { - uint id; - string name; - bool sex; - } - mapping (int => SizeEnum) map; - uint[] uintArr; - - mapping (uint => address) public addressMap; //正确 - mapping (int => bool) public boolMap;//正确 - mapping (bool => byte) public byteMap;//正确 - mapping (bytes1 => string) public stringMap;//正确 - mapping (bytes => uint) public uintMap;//正确 - mapping (string => int) public intMap;//正确 - mapping (address => bytes) public bytesMap;//正确 - mapping (int => mapping (int => SizeEnum)) public sizeMap;//正确 - mapping (int => PeopleStruct) public peopleMap;//正确 - mapping (int => SizeEnum) public SizeEnumMap;//正确 - - // mapping (SizeEnum => int) public enumMap;//异常 - // mapping (PeopleStruct => bytes10) public structMap;//异常 - // mapping (map => string) public stringMap1;//异常 - // mapping (uintArr => string) public stringMap1;//异常 - - -/** - *2、赋值、取值 - * map[keyType] ← 不同数值类型; - */ - - mapping (uint => string) nameMap; - string[] nameArr = ["Lucy","Ella","Lily"]; - - function addName() public { - for (uint i = 0; i < nameArr.length; i++) { - nameMap[i] = nameArr[i]; - } - } - - function getName(uint index) public view returns (string memory) { - return nameMap[index]; - } - -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/4.TypeConversion/TypeConversionBytesToUintContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/4.TypeConversion/TypeConversionBytesToUintContract.sol deleted file mode 100644 index e73aa9d679..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/4.TypeConversion/TypeConversionBytesToUintContract.sol +++ /dev/null @@ -1,36 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * - * 测试不同类型转换 - * ----------------- 测试点 ------------------------------ - * 字节转换整型 - */ - -contract TypeConversionBytesToUintContract { - - //字节转换大位整型 - function bytesToBigUint() public view returns(uint64) { - bytes4 a = "abcd";//hex:0x61626364 - uint32 b = uint32(a);//dec:1633837924 - uint64 c = uint64(b);//dec:1633837924 - return c; - } - - //字节转换相同位数整数 - function bytesToSameUint() public view returns(uint8) { - bytes1 a = "a";//hex:0x61 - uint8 b = uint8(a);//dec:97 - return b; - } - - //字节转换小位整型 - function bytesToSmallUint() public view returns (uint16) { - bytes4 a = "abcd";//hex:0x61626364,bin:0‭110 0001 0110 0010 0110 0011 0110 0100‬ - uint32 b = uint32(a);//dec:1633837924 - uint16 c = uint16(b);//dec:25444 ,bin:0110 0011 0110 0100‬ - return c; - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/4.TypeConversion/TypeConversionContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/4.TypeConversion/TypeConversionContract.sol deleted file mode 100644 index 69378d0e05..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/4.TypeConversion/TypeConversionContract.sol +++ /dev/null @@ -1,99 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试类型转换 - *类型简述: - *1、基本类型之间的转换 - *1)、隐式转换: - * A、在进行运算符运算时,两个不同类型的变量之间,那么编译器将隐式地将其中一个类型转换为另一个类型。 - * B、不同类型之间的赋值 - * 只要值类型之间的转换在语义上行得通,而且转换的过程中没有信息丢失,那么隐式转换基本都是可以实现的, - * 隐式转换可以将一个类型转换成与它相当大小,或者更大的类型,反正不行。 - *2)、显式转换: - * 编译器不会将语法上不可转换的类型进行隐式转换,此时我们要通过显式转换的方式。 - * A、一个类型显式转换成更小的类型,相应的高位将被舍弃 - * B、将一个类型显式转换为更大的类型,则将填充左侧(即在更高阶的位置) - *----------------- 测试点 ------------------------------ - *1、基本类型隐式转换 - * 1)、进行运算符操作 - * 2)、进行赋值操作 - * 3)、不同类型转换 - *2、基本类型显式转换 - * 1)、整数操作:大类型<-->小类型 - * 2)、字节操作:大类型<-->小类型 - */ - -contract TypeConversionContract { - - /** - *1、基本类型隐式转换 - *1)、进行运算符操作 - *2)、进行赋值操作 - */ - - //运算符操作隐式转换 - function sum() public view returns(int16) { - int8 a = 2; - int16 b = 100; - return a + b; - } - - //赋值操作隐式转换 - function conversion() public view returns(uint16) { - uint8 a = 10; - uint16 b = a; - return b; - } - - /** - *2、基本类型显示转换 - */ - //无符合与有符号转换 - function displayConversion() public view returns (int8) { - uint8 a = 1; - int8 b = int8(a); - return b; - } - - //转换成更小的类型,会丢失高位 - function displayConversion1() public view returns (uint16,bytes2) { - uint32 a = 0x12345678; //二进制://‭0001 0010 0011 0100 0101 0110 0111 1000,十进制:305,419,896 - uint16 b = uint16(a); //转换高位截取丢失,即 0101 0110 0111 1000,十进制:22136,十六进制:0x5678 - return (b,bytes2(b)); - } - - //转换成更大的类型,将向左侧添加填充位 - function displayConversion2() public view returns (uint32,bytes4) { - uint16 a = 0x1234; //二进制:0001 0010 0011 0100‬,十进制:4660 - uint32 b = uint32(a);//转换 十进制:4660 ,十六进制:0x00001234 - return (b,bytes4(b)); - } - - //转换到更小的字节类型,会丢失右侧数据 - function displayConversion3() public view returns (bytes1) { - bytes2 a = 0x1234;//二进制:0001 0010 0011 0100‬,十进制:4660 - bytes1 b = bytes1(a);//二进制:0001 0010‬‬,十进制:18,十六进制:0x12 - return b; - } - - //转换为更大的字节类型时,向右添加填充位 - function displayConversion4() public view returns (bytes4) { - bytes2 a = 0x1234;//二进制:0001 0010 0011 0100‬,十进制:4660 - bytes4 b = bytes4(a);//十六进制:0x12340000 - return b; - } - - //只有当字节类型和int类型大小相同时,才可以进行转换 - /* function displayConversion5() public view returns (uint32,uint32,uint8,uint8) { - - bytes2 a = 0x1234; - uint32 b = uint16(a); // b = 0x00001234 - uint32 c = uint32(bytes4(a)); // c = 0x12340000 - uint8 d = uint8(uint16(a)); // d = 0x34 - uint8 e = uint8(bytes1(a)); // e = 0x12 - return (b,c,d,e); - }*/ -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/5.StructsDataType/RecursiveStorageMemoryComplex.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/5.StructsDataType/RecursiveStorageMemoryComplex.sol deleted file mode 100644 index e10ed54d88..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/5.StructsDataType/RecursiveStorageMemoryComplex.sol +++ /dev/null @@ -1,52 +0,0 @@ -pragma solidity ^0.6.12; - -contract RecursiveStorageMemoryComplex { - struct Tree { - uint256 data; - Tree[] children; - } - Tree storageTree; - - constructor() public { - storageTree.data = 0x42; - //storageTree.children.length = 2; - storageTree.children[0].data = 0x4200; - storageTree.children[1].data = 0x4201; - //storageTree.children[0].children.length = 3; - for (uint i = 0; i < 3; i++) - storageTree.children[0].children[i].data = 0x420000 + i; - //storageTree.children[1].children.length = 4; - for (uint i = 0; i < 4; i++) - storageTree.children[1].children[i].data = 0x420100 + i; - } - - uint256[] result; - - function countData(Tree memory tree) internal returns (uint256 c) { - c = 1; - for (uint i = 0; i < tree.children.length; i++) { - c += countData(tree.children[i]); - } - } - - function copyFromTree(Tree memory tree,uint256 offset) internal returns (uint256) { - result[offset++] = tree.data; - for (uint i = 0; i < tree.children.length; i++) { - offset = copyFromTree(tree.children[i],offset); - } - return offset; - } - - function run() public returns (uint256[] memory) { - Tree memory memoryTree; - memoryTree = storageTree; - uint256 length = countData(memoryTree); - result = new uint256[](length); - copyFromTree(memoryTree, 0); - return result; - } - - function getRunResult() public view returns(uint256[] memory){ - return result; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/5.StructsDataType/StructDataType.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/5.StructsDataType/StructDataType.sol deleted file mode 100644 index 8e6ca6aab9..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/3.data_type/5.StructsDataType/StructDataType.sol +++ /dev/null @@ -1,68 +0,0 @@ -pragma solidity ^0.6.12; - -contract StructDataType { - struct A { - mapping(uint=>uint) m; - } - struct B { - mapping(uint=>uint) m; - uint x; - } - struct C { - mapping(uint=>uint)[] ma; - } - struct D { - A[] a; - } - A storageA; - B storageB; - C storageC; - D storageD; - constructor() public { - storageA.m[1] = 2; - storageB.m[3] = 4; - storageB.x = 5; - //storageC.ma.length = 6; - //storageD.a.length = 7; - } - - uint storageAmValue; - uint storageBxValue; - uint memoryBxValue; - uint storageCmaLen; - uint memoryD1aLen; - uint memoryD2aLen; - - - function run() public returns (uint, uint, uint, uint, uint, uint) { - A memory memoryA = A(); - B memory memoryB = B(2); - C memory memoryC = C(); - D memory memoryD1 = D(new A[](9)); - D memory memoryD2 = storageD; - storageA = memoryA; - storageB = memoryB; - storageC = memoryC; - - storageAmValue = storageA.m[1]; - storageBxValue = storageB.x; - memoryBxValue = memoryB.x; - storageCmaLen = storageC.ma.length; - memoryD1aLen = memoryD1.a.length; - memoryD2aLen = memoryD2.a.length; - - return ( - storageA.m[1], - storageB.x, - memoryB.x, - storageC.ma.length, - memoryD1.a.length, - memoryD2.a.length - ); - } - - //执行run后的结果 - function getRunValue() public view returns(uint, uint, uint, uint, uint, uint) { - return (storageAmValue,storageBxValue,memoryBxValue,storageCmaLen,memoryD1aLen,memoryD2aLen); - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/4.variable/01Time_Units/Time.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/4.variable/01Time_Units/Time.sol deleted file mode 100644 index 27561d4228..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/4.variable/01Time_Units/Time.sol +++ /dev/null @@ -1,51 +0,0 @@ -pragma solidity ^0.6.12; -/** -* 对 Time 单位进行测试 -* Time的单位关键字有seconds, minutes, hours, days, weeks, years,换算格式如下: -* 1 == 1 seconds -* 1 minutes == 60 seconds -* 1 hours == 60 minutes -* 1 days == 24 hours -* 1 weeks == 7 days -* 1 years == 365 days 0.5.0被弃用,故在0.5.13版本无法使用编译不通过 -* 默认缺省单位是秒 -* @author liweic -* @dev 2019/12/26 18:10 -*/ - -contract Time { - - // 定义全局变量 - uint time; - - //返回当前时间的Unix时间戳和当前块的Unix时间戳差值(本质是一个方法),结果为0 - function testimeDiff() view public returns (uint256){ - return block.timestamp - now; - } - - //时间的默认缺省单位是秒 - function testTime() public{ - time = 100000000; - } - - //时间加1秒结果100000001 - function tSeconds() public view returns(uint){ - return time + 1 seconds; - } - - //时间加1分钟结果100000060 - function tMinutes() public view returns(uint){ - return time + 1 minutes; - } - - //时间加一小时结果100003600 - function tHours() public view returns(uint){ - return time + 1 hours; - } - - //时间加一周结果为100604800 - function tWeeks() public view returns(uint){ - return time + 1 weeks; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/4.variable/02PlatON_Units/PlatONToken.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/4.variable/02PlatON_Units/PlatONToken.sol deleted file mode 100644 index 0a5a469ed1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/4.variable/02PlatON_Units/PlatONToken.sol +++ /dev/null @@ -1,47 +0,0 @@ -pragma solidity ^0.6.12; - -/************************************************** -* PlatON的单位关键字有von, kvon, mvon, gvon,szabo,finney,lat,klat,mlat,glat换算格式如下: -* 1 glat = 1 * 10^27 von -* 1 mlat = 1 * 10^24 von -* 1 klat = 1* 10^21 von -* 1 lat = 1* 10^18 von -* 1 finney = 1* 10^15 von -* 1 szabo = 1* 10^12 von -* 1 gvon = 1* 10^9 von -* 1 mvon = 1* 10^6 von -* 1 kvon = 1* 10^3 von -* 默认缺省单位是von -*************************************************/ - -// 对 PlatON 币的几个单位进行测试 -contract PlatONToken { - // 定义全局变量 - uint public platontoken; - - function Token() public{ - platontoken = 1 von; - } - - function Plat() public view returns(uint platontoken){ - //1lat = 1000000000000000000 -// return platontoken + 1 lat; - return platontoken + 1 atp; - } - - function Pfinney() public view returns(uint platontoken){ - //1finney = 1000000000000000 - return platontoken + 1 finney; - } - - function Pszabo() public view returns(uint platontoken){ - //1 szabo = 1000000000000 - return platontoken + 1 szabo; - } - - function Pvon() public view returns(uint platontoken){ - //默认缺省单位是von - return platontoken + 1; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/Control.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/Control.sol deleted file mode 100644 index c616587fa2..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/Control.sol +++ /dev/null @@ -1,162 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 控制结构 - * 1. if...else - * 2. do...while - * 3. for循环 - * 4. for循环包含break - * 5. for循环包含continue - * 6. for循环包含return - * 7. 三目运算符 - * - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - - -contract Control { - - //1.if控制结构执行结果值 - string public ifControlResult; - - //2.doWhile控制结构执行结果值 - uint public doWhileControlResult; - - //3.forControl控制结构执行结果值 - uint public forControlResult; - - //4.forBreakControl控制结构执行结果值 - uint public forBreakControlResult; - - //5.forContinueControl控制结构执行结果值 - uint public forContinueControlResult; - - //6.forReturnControl控制结构执行结果值 - uint public forReturnControlResult; - - //forControl控制结构执行结果值 - string public forThreeControlControlResult; - - - /** - *1. if...else - */ - function ifControl(uint age) public { - if(age < 20){ - ifControlResult = "you are a young man"; - }else if (age < 60){ - ifControlResult = "you are a middle man"; - }else { - ifControlResult = "you are a old man"; - } - } - - function getIfControlResult() view public returns(string memory){ - return ifControlResult; - } - - /** - *2. do...while - */ - function doWhileControl() public returns (uint) { - doWhileControlResult = 0; - uint i = 0; - do{ - doWhileControlResult +=i; - ++i; - }while(i <10); - return doWhileControlResult; - } - - function getdoWhileResult() view public returns(uint){ - return doWhileControlResult; - } - - - - /** - *3. for循环 - */ - function forControl() public returns (uint) { - forControlResult = 0; - for(uint i=0;i<10;i++){ - forControlResult +=i; - } - return forControlResult; - } - - function getForControlResult() view public returns(uint){ - return forControlResult; - } - - /** - *4. for循环包含break - * 满足条件就退出for循环 - */ - function forBreakControl() public returns (uint) { - forBreakControlResult = 0; - for(uint i=1;i<10;i++){ - if(i % 2 == 0){ - break; - } - forBreakControlResult +=i; - } - return forBreakControlResult; - } - - function getForBreakControlResult() view public returns(uint){ - return forBreakControlResult; - } - - /** - * 5. for循环包含continue - * 满足条件的就跳过 - */ - function forContinueControl() public returns (uint) { - forContinueControlResult = 0; - for(uint i=0;i<10;i++){ - if(i % 2 == 0){ - continue; - } - forContinueControlResult +=i; - } - return forContinueControlResult; - } - - function getForContinueControlResult() view public returns(uint){ - return forContinueControlResult; - } - - /** - * 6. for循环包含return - * 满足条件就返回 - */ - function forReturnControl() public returns (uint) { - forReturnControlResult = 0; - for(uint i=1;i<10;i++){ - if(i % 5 == 0){ - return forReturnControlResult; - } - forReturnControlResult +=i; - } - return forReturnControlResult; - } - - function getForReturnControlResult() view public returns(uint){ - return forReturnControlResult; - } - - - /** - * 7. 三目运算符 - */ - function forThreeControlControl(int age) public { - forThreeControlControlResult = age> 20?"less than 20":"more than 20"; - } - - function getForThreeControlControlResult() view public returns(string memory){ - return forThreeControlControlResult; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/DoWhileError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/DoWhileError.sol deleted file mode 100644 index 5b68f5c8e7..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/DoWhileError.sol +++ /dev/null @@ -1,68 +0,0 @@ -pragma solidity ^0.6.12; -/** - * dowhile控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 11:09 - */ - - -contract DoWhileError { - - struct S { bool f; } - S s; - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function f() internal view returns (S storage c) { - do { - break; - c = s; - } while(false); - }*/ - - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function g() internal view returns (S storage c) { - do { - if (s.f) { - continue; - c = s; - } - else { - } - } while(false); - }*/ - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function i() internal view returns (S storage c) { - do { - if (s.f) { - continue; - } - else { - c = s; - } - } while(false); - }*/ - - - /** - * 正确 - */ - function doWhileControl() internal view returns (S storage c) { - do {} while((c = s).f); - } - - function getDoWhileControlRes() public view returns(bool){ - S storage doWileS = doWhileControl(); - return doWileS.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/ForError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/ForError.sol deleted file mode 100644 index d95109df86..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/ForError.sol +++ /dev/null @@ -1,55 +0,0 @@ -pragma solidity ^0.6.12; -/** - * for控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 18:02 - */ - - -contract ForError { - - struct S { bool f; } - S s; - S s1; - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function f() internal view returns (S storage c) { - for(;; c = s) { - } - }*/ - - - function forControlFirst() internal view returns (S storage c) { - for(c = s;c.f==true;) { - } - } - - function getForControlRes() public view returns(bool){ - S storage forS = forControlFirst(); - return forS.f; - } - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function g() internal view returns (S storage c) { - for(;;) { - c = s; - } - }*/ - - function forControlSecond() internal view returns (S storage c) { - for(; (c = s1).f;) { - } - } - - function getForControlRes1() public view returns(bool){ - S storage forS = forControlSecond(); - return forS.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/ShortCircuitError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/ShortCircuitError.sol deleted file mode 100644 index 00e5a99725..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/ShortCircuitError.sol +++ /dev/null @@ -1,55 +0,0 @@ -pragma solidity ^0.6.12; -/** - * && || 短路语法 - * - * @author hudenian - * @dev 2020/1/6 17:38 - */ - -contract ShortCircuitError { - - struct S { bool f; } - S s; - S s1; - - /** - * 第一个条件为false,导致c未初始化,会导致返回空指针错误 - */ -/* function f() internal view returns (S storage c) { - false && (c = s).f; - }*/ - - //right - function f() internal view returns (S storage c) { - (c = s).f && false; - } - - - function getF() public view returns(bool){ - S storage c = f(); - return c.f; - } - - /** - * 第一个条件为true,导致c未初始化,会导致返回空指针错误 - */ - /*function g() internal view returns (S storage c) { - true || (c = s).f; - }*/ - - /*function h() internal view returns (S storage c) { - // expect error, although this is always fine - true && (false || (c = s).f); - }*/ - - //right - function g() internal view returns (S storage c) { - (c = s1).f || true; - } - - function getG() public view returns(bool){ - S storage c = g(); - return c.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/WhileError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/WhileError.sol deleted file mode 100644 index 96eb40d9a4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/WhileError.sol +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.6.12; -/** - * while控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/7 11:30 - */ - - -contract WhileError { - - struct S { bool f; } - S s; - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function f() internal view returns (S storage c) { - while(false) { - c = s; - } - }*/ - - function f() internal view returns (S storage c) { - while((c = s).f) { - } - } - - function getWhileControlRes() public view returns(bool){ - S storage whileS = f(); - return whileS.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/ifError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/ifError.sol deleted file mode 100644 index 4ee1a0159e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/5.control_struct/ifError.sol +++ /dev/null @@ -1,59 +0,0 @@ -pragma solidity ^0.6.12; -/** - * if控制结构语法 - * - * @author hudenian - * @dev 2020/1/6 18:02 - */ - - -contract ifError { - - struct S { bool f; } - S s; - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function f(bool flag) internal view returns (S storage c) { - if (flag) c = s; - }*/ - - - function ifControl(bool flag) internal view returns (S storage c) { - if (flag) c = s; - else c = s; - } - - function getIfControlRes() public view returns(bool){ - S storage ifS = ifControl(true); - return ifS.f; - } - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function g(bool flag) internal returns (S storage c) { - if (flag) c = s; - else - { - if (!flag) c = s; - else s.f = true; - } - }*/ - - function ifControlSecond(bool flag) internal view returns (S storage c) { - if (flag) c = s; - else - { - if (!flag) c = s; - else c = s; - } - } - - function getIfControlRes1() public view returns(bool){ - S storage ifS = ifControlSecond(true); - return ifS.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/AbstractContractAExecuteTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/AbstractContractAExecuteTest.sol deleted file mode 100644 index f14e20465b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/AbstractContractAExecuteTest.sol +++ /dev/null @@ -1,62 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试抽象合约功能点 - * 抽象合约(Abstract )简述: - * 1、合约函数缺少实现,或者除了包含未实现的函数还包含已经实现的函数。 - * 2、如果合约继承自抽象合约,并且没有去重写实现所有未实现的函数,那么它本身依旧是抽象合约。 - *----------------- 测试点 ------------------------------ - * 情况分类: - * 1、不含任何实现的抽象合约 - * 2、包含部分实现的抽象合约 - * 测试操作: - * 1、抽象合约是否可编译、部署、执行 - * 2、抽象合约被继承,但未被实现抽象方法,是否可正常执行 - */ - -/** - * 1、测试:不含任何实现的抽象合约,是否可编译部署执行 - * ------------------------------------------------ - * 验证结果:抽象合约可以编译、部署,但是不可以执行调用方法 - */ -abstract contract AbstractContractGrandpa { - function name() public virtual view returns (string memory v); -} - -/** - * 1.1、测试:包含部分实现的抽象合约,可编译部署执行 - * ------------------------------------------------ - * 验证结果:抽象合约可以编译、部署,但是不可以执行调用方法 - */ -abstract contract AbstractContractFather { - function fatherName() public virtual view returns (string memory v); - - function fatherAge() public view returns (int v) { - int age = 20; - return age; - } -} - -/** - * 2、测试:抽象合约被继承,但未被实现抽象方法,是否可正常执行 - * ------------------------------------------------ - * 验证结果:抽象合约被继承,但未被实现抽象方法,可以编译、部署,但是不可以执行调用方法 - */ -contract AbstractContractSon is AbstractContractFather { - - function fatherName() public override view returns (string memory v){ - string memory name = "fatherName"; - } - function sonName() public view returns (string memory v) { - string memory name = "sonName"; - return name; - } -} - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/AbstractContractBExecuteTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/AbstractContractBExecuteTest.sol deleted file mode 100644 index 29a694edba..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/AbstractContractBExecuteTest.sol +++ /dev/null @@ -1,72 +0,0 @@ -pragma solidity ^0.6.12; -import "./BaseAbstract.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试抽象合约功能点 - * 抽象合约(Abstract )简述: - * 1、合约函数缺少实现,或者除了包含未实现的函数还包含已经实现的函数。 - * 2、如果合约继承自抽象合约,并且没有去重写实现所有未实现的函数,那么它本身依旧是抽象合约。 - *----------------- 测试点 ------------------------------ - * 测试操作: - * 1、抽象合约被继承,且被实现抽象方法,是否可正常执行 - * 2、普通合约是否可以继承多个抽象合约 - */ - -/** - * 1、抽象合约被继承,且实现抽象方法,是否可正常执行 - * ----------------------------------------------- - * 验证结果:抽象合约被继承并实现了抽象方法后,是可以部署执行的 - */ -contract AbstractContractBSubclass is AbstractContractParentClass { - - //实现父类抽象函数 - function parentName() public override view returns (string memory v){ - return myName; - } - - function bSubName() public view returns (string memory v) { - string memory name = "bSubName"; - return name; - } -} - -/** - * 2、普通合约是否可以继承多个抽象合约,且实现抽象方法,是否可以正常编译部署执行 - * ----------------------------------------------- - * 验证结果:普通合约继承多个抽象合约,可以正常编译执行 - */ - contract AbstractContractCSubclass is AbstractContractASubclass,AbstractContractParentClass { - - //实现ParentClass父类函数 - function parentName() public override view returns (string memory v){ - string memory name = "parentName"; - return name; - } - - //实现ASubclass父类函数 - function aSubName() public override view returns (string memory v){ - return subName; - } - - function setASubName(string memory v) public{ - subName = v; - } - - function cSubName() public view returns (string memory v) { - string memory name = "cSubName"; - return name; - } - } - - - - - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/AbstractContractCExecuteTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/AbstractContractCExecuteTest.sol deleted file mode 100644 index 846a09b72e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/AbstractContractCExecuteTest.sol +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.6.12; -import "./BaseAbstract.sol"; -import "./BaseAbstractParent.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试抽象合约功能点 - * 抽象合约(Abstract )简述: - * 1、合约函数缺少实现,或者除了包含未实现的函数还包含已经实现的函数。 - * 2、如果合约继承自抽象合约,并且没有去重写实现所有未实现的函数,那么它本身依旧是抽象合约。 - *----------------- 测试点 ------------------------------ - * 测试操作: - * 1、抽象合约是否可以继承抽象合约 - * 2、抽象合约是否可以继承接口(但是反之不可以) - */ - -/** - * 1、抽象合约是否可以继承抽象合约 - * ---------------------------------- - * 验证结果: 抽象合约是可以继承抽象合约 - */ - contract AbstractContractFSubclass is AbstractContractDSubclass { - - function parentName() public override view returns (string memory v){ - return myName; - } - - function dSubClassName() public override view returns (string memory dSubName){ - - } - } - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/AbstractContractDExecuteTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/AbstractContractDExecuteTest.sol deleted file mode 100644 index c14cb319b7..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/AbstractContractDExecuteTest.sol +++ /dev/null @@ -1,64 +0,0 @@ -pragma solidity ^0.6.12; - -import "./BaseAbstractParentInterface.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试抽象合约功能点 - * 抽象合约(Abstract )简述: - * 1、合约函数缺少实现,或者除了包含未实现的函数还包含已经实现的函数。 - * 2、如果合约继承自抽象合约,并且没有去重写实现所有未实现的函数,那么它本身依旧是抽象合约。 - *----------------- 测试点 ------------------------------ - * 测试操作: - * 1、抽象合约是否可以继承抽象合约 - * 2、抽象合约是否可以继承接口(但是反之不可以) - */ - -/** - * 1)、抽象合约是否可以继承接口(反之接口是否可以继承抽象合约) - * ---------------------------------- - * 验证结果:抽象合约是可以继承接口(但是反过来接口是不可以继承抽象合约) - */ - contract AbstractContractGSubclass is AbstractContractESubclass { - int public age = 0; - - function setInterAge(int v) public override{ - age = v; - } - - function aInterAge() external override view returns (int){ - return age; - } - } - -//2)、接口是不可以继承抽象合约(编译报错) -/* interface AbstractContractBInterface is AbstractContractParentClass{ - function bInterAge() external returns (int age); - }*/ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/BaseAbstract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/BaseAbstract.sol deleted file mode 100644 index 0bdcd16eaa..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/BaseAbstract.sol +++ /dev/null @@ -1,28 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * 基础合约 - */ -abstract contract AbstractContractParentClass { - - string myName = ""; - function parentName() public virtual view returns (string memory v); - - function setParentName(string memory name) public { - myName = name; - } -} - -abstract contract AbstractContractASubclass { - - string subName = ""; - function aSubName() public virtual view returns (string memory v); - function aSubAge() public view returns (int v) { - int age = 20; - return age; - } -} - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/BaseAbstractInterface.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/BaseAbstractInterface.sol deleted file mode 100644 index 23642e4bcc..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/BaseAbstractInterface.sol +++ /dev/null @@ -1,12 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * 基础合约(定义接口) - */ - -interface AbstractContractAInterface{ - function aInterAge() external view returns (int age); -} - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/BaseAbstractParent.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/BaseAbstractParent.sol deleted file mode 100644 index 7cf71c24e5..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/BaseAbstractParent.sol +++ /dev/null @@ -1,17 +0,0 @@ -pragma solidity ^0.6.12; -import "./BaseAbstract.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 基础合约(抽象合约是否可以继承抽象合约) - */ - -abstract contract AbstractContractDSubclass is AbstractContractParentClass { - - function setParentNameD(string memory name) public { - myName = name; - } - - function dSubClassName() public virtual view returns (string memory dSubName); - } diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/BaseAbstractParentInterface.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/BaseAbstractParentInterface.sol deleted file mode 100644 index 8eab996945..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/1.abstract/BaseAbstractParentInterface.sol +++ /dev/null @@ -1,12 +0,0 @@ -pragma solidity ^0.6.12; -import "./BaseAbstractInterface.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 基础合约(定义抽象合约继承接口) - */ - -abstract contract AbstractContractESubclass is AbstractContractAInterface { - function setInterAge(int v) public virtual; -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/2.interface/InterfaceContractALimitTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/2.interface/InterfaceContractALimitTest.sol deleted file mode 100644 index fa853c5650..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/2.interface/InterfaceContractALimitTest.sol +++ /dev/null @@ -1,63 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试合约接口功能点 - *接口(interface)简述:接口类似于抽象合约,但是其不能实现任何函数。 - *----------------- 测试点 ------------------------------ - *1、接口限制点测试(5.0以后版本) - *1)、 不能声明构造函数 - *2)、 不能声明状态变量 - *3)、 接口的函数只能声明外部类型(external) - */ - -interface InterfaceContractParent { - - /** - * 验证:1、接口不能声明状态变量 - *----------------------------- - * 验证结果:接口中定义状态变量,会编译失败 - * Variables cannot be declared in interfaces.solc - */ - // uint a = -1; - - /** - * 验证:2、接口不能声明构造函数 - *----------------------------- - * 验证结果:接口中定义构造函数,会编译失败 - */ - /*constructor() public{ - a += 2; - }*/ - - - /** - * 验证:3、接口的函数只能声明外部类型(external) - *------------------------------ - * 验证结果:在5.0以后版本,接口的函数只能声明外部类型(external),否则会编译失败; - * 在5.0以前的版本,使用public - */ - - //5.0以后版本 - function sumExternal(int a,int b) external virtual view returns (int); - - //5.0以前版本,否则Error: Functions in interfaces must be declared external - //function sumPublic(int a,int b) public view returns (int); -} - -contract InterfaceContractParentTest is InterfaceContractParent { - - function sumExternal(int a,int b) external override view returns (int) { - return a + b; - } - -} - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/2.interface/InterfaceContractBLimitTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/2.interface/InterfaceContractBLimitTest.sol deleted file mode 100644 index b2674cbfb7..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/2.interface/InterfaceContractBLimitTest.sol +++ /dev/null @@ -1,88 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * - * 测试合约接口功能点 - * 接口(interface)简述:接口类似于抽象合约,但是其不能实现任何函数。 - *----------------- 测试点 ------------------------------ - * 1、接口限制点测试(5.0以后版本) - * 1)、 可以声明结构体 - * 2)、 可以声明枚举 - */ -interface InterfaceContractEnum { - - /** - * 验证:1、接口可以声明枚举 - *----------------------------- - * 验证结果:接口中可以正常定义枚举 - */ - enum FreshJuiceSize { - SMALL, - MEDIUM, - LARGE - } - - function getDefaultChoice() external virtual returns (uint); -} - -contract InterfaceContractEnumTest is InterfaceContractEnum { - - FreshJuiceSize choice; - //默认饮料类型 - FreshJuiceSize defaultChoice = FreshJuiceSize.MEDIUM; - - function setLarge() public { - choice = FreshJuiceSize.LARGE; - } - - function getChoice() public view returns (FreshJuiceSize) { - return choice; - } - - function getDefaultChoice() external override returns (uint) { - return uint(defaultChoice); - } -} - -interface InterfaceContractStruct { - - /** - * 验证:2、接口可以声明结构体 - *----------------------------- - * 验证结果:接口中可以定义结构体 - */ - struct Book { - int bookID; - string title; - string describe; - } - function getDefaultBookID() external virtual view returns (int); -} - -contract InterfaceContractStructTest is InterfaceContractStruct { - - Book book; - function setBook() public { - book = Book(1,"PlatON","PlatON Describe"); - } - - function getBookID() public view returns (int) { - return book.bookID; - } - - function getDefaultBookID() external override view returns (int) { - if(book.bookID == 0){ - return 0; - } - return book.bookID; - } -} - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/2.interface/InterfaceContractInheritTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/2.interface/InterfaceContractInheritTest.sol deleted file mode 100644 index 6ff8af2b1d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/2.interface/InterfaceContractInheritTest.sol +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - *测试合约接口功能点 - *接口(interface)简述:接口类似于抽象合约,但是其不能实现任何函数。 - *----------------- 测试点 ------------------------------ - *1、接口被继承情况测试 - *1)、 普通合约继承多个接口 - *2)、 接口无法继承接口 - *3)、 接口无法继承其他合约(在抽象函数已经验证过此问题,估此处不再验证) - */ -interface InterfaceContractInheritOne { - function sum(uint a, uint b) external virtual view returns (uint); -} - -interface InterfaceContractInheritTwo { - function reduce(uint c, uint d) external virtual view returns (uint); -} - -/** - *验证:1)、普通合约是否可以继承多个接口 - *----------------------------------- - *验证结果:普通合约可以继承多个接口 - */ -contract InterfaceContractInheritMultipleTest is InterfaceContractInheritOne, - InterfaceContractInheritTwo { - - function sum(uint a, uint b) external override view returns (uint) { - return a + b; - } - - function reduce(uint c, uint d) external override view returns (uint) { - return c - d; - } - - - -} - -/** - * 验证:2)、 接口是否可以继承接口 - * ------------------------------- - * 验证结果:接口是不可以继承接口的,无法编译通过 - */ - -/* interface InterfaceContractInheritTest is InterfaceContractInheritOne { - - function multiply(uint e, uint f) external view returns (uint); - }*/ - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractAMultipleTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractAMultipleTest.sol deleted file mode 100644 index a4c14740bd..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractAMultipleTest.sol +++ /dev/null @@ -1,61 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - *1、多重继承:合约可以继承多个合约,也可以被多个合约继承 - *验证: 1)、多重合约继承重名问题,继承顺序很重要,是否遵循最远继承原则 - * --------------------------------------------------------------- - *验证结果:多重合约继承,如果父类合约有同名函数,则遵循最远继承原则。 - */ -contract InheritContractParentOneClass { - - function getDate() public virtual view returns (uint) { - return 1; - } -} - -contract InheritContractParentTwoClass { - - function getDate() public virtual view returns (uint) { - return 2; - } -} - -contract InheritContractAMutipleClass is InheritContractParentTwoClass,InheritContractParentOneClass { - - function getDate() public override(InheritContractParentTwoClass, InheritContractParentOneClass) view returns (uint) { - return InheritContractParentTwoClass.getDate(); - } - - function callGetDateA() public view returns (uint) { - return getDate(); - } -} - -contract InheritContractBMutipleClass is InheritContractParentOneClass,InheritContractParentTwoClass { - - function getDate() public override(InheritContractParentOneClass, InheritContractParentTwoClass) view returns (uint) { - return InheritContractParentOneClass.getDate(); - } - - function callGetDateB() public view returns (uint) { - return getDate(); - } -} - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractBMultipleTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractBMultipleTest.sol deleted file mode 100644 index 665d75d0f8..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractBMultipleTest.sol +++ /dev/null @@ -1,69 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - *1、多重继承:合约可以继承多个合约,也可以被多个合约继承 - * 验证:2)、当继承多个合约时,这些父合约中不允许出现相同的函数名,事件名,修改器名,或互相重名。 - * 另外,隐藏情况,默认状态变量的getter函数导致的重名。 - *-------------------------------------------- - * 验证结果:当继承多个合约时,父类重名函数与修饰器、事件与修饰器、默认getter函数名同名,会编译异常 - */ - -contract InheritContractAParentBase { - address public owner;//编译器自动为所有public 状态变量创建getter函数 - modifier ownd1(){ - if (msg.sender == owner) - _; - } - - function getAddressA() public view returns (address) { - return msg.sender; - } -} - -contract InheritContractBParentBase { - address owner2; - modifier ownd2() { - if (msg.sender == owner2) - _; - } - - function getAddressB() public view returns (address) { - return msg.sender; - } - //1、同名函数名与修饰器,编译异常 - /* function ownd1() public view returns (address) { - return msg.sender; - }*/ - - //2、同名修饰器与事件,编译异常 - // event ownd1(address addr); - - //3、默认状态变量 owner的getter函数导致的重名,编译异常 - /* function owner() public view returns (address) { - return msg.sender; - }*/ -} - -contract InheritContractParentMutipleTest is InheritContractBParentBase,InheritContractAParentBase { - function sum() public view { - - } -} - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractCMultipleTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractCMultipleTest.sol deleted file mode 100644 index a8ab2aad42..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractCMultipleTest.sol +++ /dev/null @@ -1,39 +0,0 @@ -pragma solidity ^0.6.12; -import "./InheritContractAMultipleTest.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - * - *验证:2、多重继承(父类合约存在父子关系),如果继承的合约之间有父子关系,是否必须遵循先父到子的继承顺序 - *------------------------------- - *验证结果:多重继承(父类合约存在父子关系),合约继承必须遵循先父到子的继承顺序,否则会编译异常。 - */ - - contract InheritContractParentThreeClass is InheritContractParentTwoClass { - - function getDataThree() public view returns (uint) { - return 3; - } -} - -contract InheritContractSubclass is InheritContractParentTwoClass,InheritContractParentThreeClass { - - function getSubData() public view returns (uint) { - return 4; - } -} - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractOverloadComplexTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractOverloadComplexTest.sol deleted file mode 100644 index b2d120d4b1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractOverloadComplexTest.sol +++ /dev/null @@ -1,68 +0,0 @@ -pragma solidity ^0.6.12; - -/** - - * @author qudong - * @dev 2019/12/23 - * - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - *4、合约函数重载(Overload)复杂情况 - **/ - -contract InheritContractOverloadBaseBase { - uint public x; - uint public y; - function init(uint a, uint b) public virtual{ - x = b; - y = a; - } - function init(uint a) public virtual{ - x = a + 1; - } - function getX() public view returns (uint) { - return x; - } - function getY() public view returns (uint) { - return y; - } -} - -contract InheritContractOverloadBase is InheritContractOverloadBaseBase { - function init(uint a, uint b) public override{ - x = a; - y = b; - } - function init(uint a) public override{ - x = a; - } -} - -contract InheritContractOverloadChild is InheritContractOverloadBase { - function initBase(uint c) public { - InheritContractOverloadBase.init(c); - } - function initBase(uint c, uint d) public { - InheritContractOverloadBase.init(c, d); - } - function initBaseBase(uint c) public { - InheritContractOverloadBaseBase.init(c); - } - function initBaseBase(uint c, uint d) public { - InheritContractOverloadBaseBase.init(c, d); - } -} - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractOverloadTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractOverloadTest.sol deleted file mode 100644 index 1413e66336..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractOverloadTest.sol +++ /dev/null @@ -1,46 +0,0 @@ -pragma solidity ^0.6.12; - -/** - - * @author qudong - * @dev 2019/12/23 - * - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - *4、合约函数重载(Overload):合约可以有多个同名函数,可以有不同输入参数。 - * 重载解析和参数匹配 - **/ - -contract InheritContractOverload { - - uint sumInt; - function sum(uint a,uint b) public pure returns(uint sumInt) { - sumInt = a + b; - } - - function sum(uint a,uint b, uint c) public pure returns(uint sumInt) { - sumInt = a + b + c; - } - - function getDataA() public view returns(uint) { - return sum(1,2); - } - - function getDataB() public view returns(uint) { - return sum(1,2,3); - } - - -} - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractPassParamTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractPassParamTest.sol deleted file mode 100644 index df139e96cc..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/6.oop/3.inherit/InheritContractPassParamTest.sol +++ /dev/null @@ -1,50 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - -/** - *验证:3、继承支持传参(继承中基类构造函数的传参) - *------------------------------------------- - * 验证结果:继承支持传参两种方式 - */ - - contract InheritContractBase { - - uint a = 0; - constructor(uint x) public { - a = x; - } - } - -//给基类构造函数传参方式一 -contract InheritContractASub is InheritContractBase(2) { - function getDataA() public view returns (uint) { - return a; - } -} - -//给基类构造函数传参方式二 -contract InheritContractBSub is InheritContractBase { - uint b; - constructor () InheritContractBase(3) public { - uint y = 1; - b = y + a; - } - - function getDataB() public view returns(uint){ - return b; - } -} - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/7.event/EventCallContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/7.event/EventCallContract.sol deleted file mode 100644 index d467021163..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/7.event/EventCallContract.sol +++ /dev/null @@ -1,63 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 事件验证 - * (1)event关键字声明事件验证 - * (2)indexed关键字定义事件索引验证 - * (3)emit关键字触发事件验证 - * (4)anonymous关键字定义匿名事件验证 - * (5)函数内多事件监听验证 - * (6)函数内多匿名事件监听验证 - * @author Albedo - * @dev 2019/12/19 - **/ -contract EventCallContract { - //事件声明(事件名称以大写字母开头,以区别于函数) - event Increment(address who); - //添加索引(如果indexed声明索引超过3个,编译异常:超过3个indexed标记的元素) - event Deposit( - address indexed _from, - // bytes32 indexed _idl, - // bytes32 indexed _idm, - uint _value - ); - - //匿名事件 - event Anonymous(uint256 _id) anonymous; - event Anonymous2(uint256 _id) anonymous; - //一般事件触发 - function emitEvent() public returns (uint256 count){ - //emit 事件触发 - emit Increment(msg.sender); - count += 1; - } - - function indexedEvent() public returns (uint256 count){ - //emit 事件触发 - emit Deposit(msg.sender, 12); - count += 1; - } - - function anonymousEvent() public returns (uint256 count){ - count += 1; - //emit 事件触发 - emit Anonymous(count); - } - //外部:JavaScript API配合来回调--定义事件及触发事件——使用 Web3 监听事件 - - event BoolEvent(bool result); - //函数多事件监听验证 - function testBool() public{ - emit BoolEvent(false); - emit BoolEvent(true); - emit Increment(msg.sender); - emit Anonymous(12); - emit Deposit(msg.sender, 12); - } - - //函数多匿名事件监听验证 - function testMultiAnonymous() public{ - emit Anonymous(12); - emit Anonymous2(13); - emit Anonymous(14); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/7.event/EventIndexedContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/7.event/EventIndexedContract.sol deleted file mode 100644 index 61569e9220..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/7.event/EventIndexedContract.sol +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * 事件声明类型验证 - * (1)一维数组索引 - * (2)二维数组但一维确定长度 索引 - * (3)字符串索引 - * (4)枚举索引 - * (4)复杂索引 - * (5)匿名事件索引认证 - * @author Albedo - * @dev 2020/01/06 - **/ -contract EventIndexedContract { - //int索引验证 - event MinusEvent(int indexed minus); - function testMinus(int value) public{ - emit MinusEvent(value); - } - uint[] uintArray = [0,1,2,3,4]; - //一维数组索引测试 - event OneDimensionalArrayEvent(uint[] indexed array); - function testOneDimensionalArray() public{ - emit OneDimensionalArrayEvent(uintArray); - } - uint[2][] multiArray = [[0,0],[0,1],[0,2],[0,3],[0,4],[0,5]]; - - event TwoDimensionalArrayEvent(uint[2][] indexed array); - //二维数组索引 - function testTwoDimensionalArray() public{ - emit TwoDimensionalArrayEvent(multiArray); - } - string str = "1234567890097865432112345678900987654321123456789009764354666663242444444444475831546856"; - event StringEvent(string indexed str); - //string类型索引 - function testStr() public{ - emit StringEvent(str); - } - enum ActionChoices { GoLeft, GoRight, GoStraight, SitStill } - event EnumEvent(ActionChoices indexed choices); - - //测试枚举类型索引 - function testEnum() public{ - emit EnumEvent(ActionChoices.GoLeft); - } - - event ComplexIndexedEvent(uint[] indexed array,ActionChoices indexed choice,string indexed str); - //复杂类型索引 - function testComplex() public{ - emit ComplexIndexedEvent(uintArray,ActionChoices.GoLeft,str); - } - - event AnonymousIndexedNum(uint indexed u1,uint indexed u2,uint indexed u3,uint indexed u4) anonymous; - //匿名事件索引数量测试 - function testAnonymousIndexed() public{ - emit AnonymousIndexedNum(1,2,3,4); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/7.event/EventTypeContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/7.event/EventTypeContract.sol deleted file mode 100644 index f9e6c3a6ed..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/7.event/EventTypeContract.sol +++ /dev/null @@ -1,42 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * 事件声明类型验证 - * (1)一维数组 - * (2)二维数组但是二维确定长度 - * (3)字符串类型 - * (3)枚举类型 - * @author Albedo - * @dev 2020/01/06 - **/ -contract EventTypeContract { - - uint[] uintArray = [0,1,2,3,4]; - event OneDimensionalArrayEvent(uint[] array); - //测试一维数组类型声明事件 - function testOneDimensionalArray() public{ - emit OneDimensionalArrayEvent(uintArray); - } - uint[2][] multiArray = [[0,0],[0,1],[0,2],[0,3],[0,4],[0,5]]; - - event TwoDimensionalArrayEvent(uint[2][] array); - //测试二维数组声明事件 - function testTwoDimensionalArray() public{ - emit TwoDimensionalArrayEvent(multiArray); - } - string str = "1234567890097865432112345678900987654321123456789009764354666663242444444444475831546856"; - event StringEvent(string str); - //测试string类型声明事件 - function testStr() public{ - emit StringEvent(str); - } - - enum ActionChoices { GoLeft, GoRight, GoStraight, SitStill } - event EnumEvent(ActionChoices choices); - - //测试枚举类型声明事件 - function testEnum() public{ - emit EnumEvent(ActionChoices.GoLeft); - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/8.exception_handle/AssertHandle.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/8.exception_handle/AssertHandle.sol deleted file mode 100644 index da283304ac..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/8.exception_handle/AssertHandle.sol +++ /dev/null @@ -1,94 +0,0 @@ -pragma solidity ^0.6.12; -/** - * assert(bool condition)函数验证: - * 如果条件不满足,则使当前交易没有效果 ,gas正常消耗,用于检查内部错误 - * 1.数组越界访问产生生异常验证,如i >= x.length 或 i < 0时访问x[i] - * 2.定长bytesN数组越界访问产生异常验证 - * 3.被除数为0或取模运算产生异常验证 - * 4.对一个二进制移动一个负的值产生异常验证 - * 5.整数进行可以显式转换为枚举时,如果将过大值,负值转为枚举类型则抛出异常 - * 6.调用内部函数类型的零初始化变量验证 - * 7.用assert的参数为false产生异常验证 - * @author Albedo - * @dev 2019/12/30 - **/ - -library ArrayUtils { - // they will be part of the same code context - function map(uint[] memory self, function (uint) pure returns (uint) f) - internal - pure - returns (uint[] memory r) - { - r = new uint[](self.length); - for (uint i = 0; i < self.length; i++) { - r[i] = f(self[i]); - } - } - - function reduce( - uint[] memory self, - function (uint, uint) pure returns (uint) f - ) - internal - pure - returns (uint r) - { - r = self[0]; - for (uint i = 1; i < self.length; i++) { - r = f(r, self[i]); - } - } - - function range(uint length) internal pure returns (uint[] memory r) { - r = new uint[](length); - for (uint i = 0; i < r.length; i++) { - r[i] = i; - } - } -} - -contract AssertHandle { - - enum ActionChoices { GoLeft, GoRight, GoStraight, SitStill } - //1.如果越界,或负的序号值访问数组,如i >= x.length 或 i < 0时访问x[i] - function outOfBoundsException() public { - //编译异常:数组越界访问 - //uint8[3] memory balance = [1, 2, 3]; - //balance[4]=12; - //balance[-1]=12; - } - - //2.如果序号越界,或负的序号值时访问一个定长的bytesN - function noOutOfBoundsException() public { - //编译异常:定长bytesN越界访问 - // bytes4 b4=0x12345678; - // b4[4]; - // b4[-1]; - } - - //3.被除数为0或取模运算 - function dividendZeroException() public { - //编译异常:被除数为0和取模运算 - // uint result = 12/0; - // uint result = 12% 0; - } - - //4.移位负数位 - function binaryMoveMinusException() public { - //编译异常:移位负数位 - // uint8 uu=2; - // uu<<-2; - } - - //5.整数进行可以显式转换为枚举时,如果将过大值,负值转为枚举类型则抛出异常 - function intChangeException(int8 param) public returns (ActionChoices choice){ - choice = ActionChoices(param); - } - - //7.如果调用assert的参数为false - function paramException(uint param) public { - assert(param < 10); - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/8.exception_handle/RequireMessageHandle.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/8.exception_handle/RequireMessageHandle.sol deleted file mode 100644 index 080d57b4b3..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/8.exception_handle/RequireMessageHandle.sol +++ /dev/null @@ -1,14 +0,0 @@ -pragma solidity ^0.6.12; -/** - * require(bool condition, string message)函数(该函数可以自定义message信息)验证 - * 如果条件不满足则撤销状态更改,用于检查由输入或者外部组件引起的错误 - * 此时为require异常返回异常信息,非运行时异常检测 - * @author Albedo - * @dev 2019/12/19 - **/ -contract RequireMessageHandle { - //如果调用require的参数为false - function paramException(uint param) public { - require(param<10,"整型大小比较异常"); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/8.exception_handle/RevertHandle.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/8.exception_handle/RevertHandle.sol deleted file mode 100644 index 5aefb65fd6..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/8.exception_handle/RevertHandle.sol +++ /dev/null @@ -1,19 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 1.revert()函数————终止运行并撤销状态更改————验证 - * 2.revert(string reason)函数————终止运行并撤销状态更改,并提供一个解释性的字符串————验证 - * - * @author Albedo - * @dev 2019/12/30 - **/ -contract RevertHandle { - //revert()终止运行并撤销状态更改 - function revertCheck(uint param) public { - if (param > 10) {revert();} - } - - //revert(string reason) 终止运行并撤销状态更改,并提供一个解释性的字符串 - function revertReasonCheck(uint param) public { - if (param > 10) {revert("check catch exception");} - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/9.library/LibraryStaticUsing.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/9.library/LibraryStaticUsing.sol deleted file mode 100644 index a22752ab31..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/9.library/LibraryStaticUsing.sol +++ /dev/null @@ -1,29 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * 库引用类似引用static方法验证 - * 解释:如果L作为库的名称,f()是库L的函数,则可以通过L.f()的方式调用 - * - * @author Albedo - * @dev 2019/12/25 - **/ - -library BaseStaticLibrary { - // - function compare(uint self, uint value) public returns (bool) - { - if (self bool) flags;} - - // 注意第一个参数是“storage reference”类型,因此在调用中参数传递的只是它的存储地址而不是内容。 - // 这是库函数的一个特性。如果该函数可以被视为对象的方法,则习惯称第一个参数为 `self` 。 - function insert(Data storage self, uint value) public returns (bool) - { - if (self.flags[value]) - return false; - // 已经存在 - self.flags[value] = true; - return true; - } -} - -contract LibraryUsingFor { - event Result(bool result); - - - //using A for B - using BaseLibrary for BaseLibrary.Data; - BaseLibrary.Data knownValues; - - function register(uint value) public returns (bool result){ - result=knownValues.insert(value); - emit Result(result); - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/9.library/SafeMathLibrary.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/9.library/SafeMathLibrary.sol deleted file mode 100644 index d88af2b9da..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/9.library/SafeMathLibrary.sol +++ /dev/null @@ -1,114 +0,0 @@ -pragma solidity ^0.6.12; - -/** - * 安全算术运算 - *(1)最大值 - *(2)最小值 - *(3)平均值 - *(4)无符号整型相加 - *(5)无符号整型相减 - *(6)无符号整型相乘 - *(7)无符号整型相除 - *(8)无符号整型取模运算 - * - * @author Albedo - * @dev 2020/01/08 - **/ -library SafeMathLibrary { - - /** - * 获取最大值 - */ - function max(uint256 a, uint256 b) internal pure returns (uint256) { - return a >= b ? a : b; - } - - /** - * 获取最小值 - */ - function min(uint256 a, uint256 b) internal pure returns (uint256) { - return a < b ? a : b; - } - - /** - * 获取平均值 - */ - function average(uint256 a, uint256 b) internal pure returns (uint256) { - return (a / 2) + (b / 2) + ((a % 2 + b % 2) / 2); - } - /** - * .两个无符号整型相加 - */ - function add(uint256 a, uint256 b) internal pure returns (uint256) { - uint256 c = a + b; - require(c >= a, "SafeMath: addition overflow"); - return c; - } - - /** - * 两个无符号整型相减 - */ - function sub(uint256 a, uint256 b) internal pure returns (uint256) { - require(b <= a, "SafeMath: subtraction overflow"); - uint256 c = a - b; - - return c; - } - - - /** - * 两个无符号整型相乘 - */ - function mul(uint256 a, uint256 b) internal pure returns (uint256) { - if (a == 0) { - return 0; - } - - uint256 c = a * b; - require(c / a == b, "SafeMath: multiplication overflow"); - - return c; - } - - /** - * 两个无符号整型相除,并检测除数为0异常 - * a 被除数 - * b 除数 - */ - function div(uint256 a, uint256 b) internal pure returns (uint256) { - require(b > 0, "SafeMath: division by zero"); - uint256 c = a / b; - return c; - } - - /** - * 两个无符号整型相除,并自定义除数为0异常信息 - * a 被除数 - * b 除数 - */ - function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { - require(b > 0, errorMessage); - uint256 c = a / b; - return c; - } - - /** - * 两个无符号整型除余运算,并检测除数为0异常 - * a 被除数 - * b 除数 - */ - function mod(uint256 a, uint256 b) internal pure returns (uint256) { - require(b != 0, "SafeMath: modulo by zero"); - return a % b; - } - - /** - * 两个无符号整型除余运算,并自定义除数为0异常信息 - * a 被除数 - * b 除数 - */ - function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { - require(b != 0, errorMessage); - return a % b; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/9.library/SafeMathMock.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/9.library/SafeMathMock.sol deleted file mode 100644 index cbb462c7e8..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/9.library/SafeMathMock.sol +++ /dev/null @@ -1,51 +0,0 @@ -pragma solidity ^0.6.12; - -import "./SafeMathLibrary.sol"; -/** - * 安全算术运算验证 - *(1)最大值 - *(2)最小值 - *(3)平均值 - *(4)无符号整型相加 - *(5)无符号整型相减 - *(6)无符号整型相乘 - *(7)无符号整型相除 - *(8)无符号整型取模运算 - * - * @author Albedo - * @dev 2020/01/08 - **/ -contract SafeMathMock { - //最大值验证 - function max(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.max(a, b); - } - //最小值验证 - function min(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.min(a, b); - } - //平均值验证 - function average(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.average(a, b); - } - //乘运算 - function mul(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.mul(a, b); - } - //除运算 - function div(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.div(a, b); - } - //减法运算 - function sub(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.sub(a, b); - } - //加法运算 - function add(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.add(a, b); - } - //取模运算 - function mod(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.mod(a, b); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/dappContract/AtomicSwap.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/dappContract/AtomicSwap.sol deleted file mode 100644 index 5cba0dae9a..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/dappContract/AtomicSwap.sol +++ /dev/null @@ -1,167 +0,0 @@ -pragma solidity ^0.6.12; - -library SafeMath { - function add(uint a, uint b) internal pure returns (uint c) { - c = a + b; - require(c >= a, "SafeMath add wrong value"); - return c; - } - function sub(uint a, uint b) internal pure returns (uint) { - require(b <= a, "SafeMath sub wrong value"); - return a - b; - } -} - -contract Destructable { - address payable private owner; - - constructor() public { - owner = msg.sender; - } - - modifier isDestructable { - require(msg.sender == owner, "only owner"); - require(address(this).balance == 0, "balance is not zero"); - _; - } - - function destruct() public isDestructable { - selfdestruct(owner); - } -} - -contract AtomicSwap is Destructable { - using SafeMath for uint; - - enum State { Empty, Initiated, Redeemed, Refunded } - - struct Swap { - bytes32 hashedSecret; - bytes32 secret; - address payable initiator; - address payable participant; - uint refundTimestamp; - uint value; - uint payoff; - State state; - } - - event Initiated( - bytes32 indexed _hashedSecret, - address indexed _participant, - address _initiator, - uint _refundTimestamp, - uint _value, - uint _payoff - ); - - event Added( - bytes32 indexed _hashedSecret, - address _sender, - uint _value - ); - - event Redeemed( - bytes32 indexed _hashedSecret, - bytes32 _secret - ); - - event Refunded( - bytes32 indexed _hashedSecret - ); - - mapping(bytes32 => Swap) public swaps; - - modifier isRefundable(bytes32 _hashedSecret) { - require(block.timestamp >= swaps[_hashedSecret].refundTimestamp, "refundTimestamp has not passed"); - _; - } - - modifier isRedeemable(bytes32 _hashedSecret, bytes32 _secret) { - require(block.timestamp < swaps[_hashedSecret].refundTimestamp, "refundTimestamp has already passed"); - require(sha256(abi.encodePacked(sha256(abi.encodePacked(_secret)))) == _hashedSecret, "secret is not correct"); - _; - } - - modifier isInitiated(bytes32 _hashedSecret) { - require(swaps[_hashedSecret].state == State.Initiated, "swap for this hash is empty or already spent"); - _; - } - - modifier isInitiatable(bytes32 _hashedSecret, uint _refundTimestamp) { - require(swaps[_hashedSecret].state == State.Empty, "swap for this hash is already initiated"); - require(_refundTimestamp > block.timestamp, "refundTimestamp has already passed"); - _; - } - - modifier isAddable(bytes32 _hashedSecret) { - require(block.timestamp <= swaps[_hashedSecret].refundTimestamp, "refundTime has already come"); - _; - } - - function initiate (bytes32 _hashedSecret, address payable _participant, uint _refundTimestamp, uint _payoff) - public payable isInitiatable(_hashedSecret, _refundTimestamp) - { - swaps[_hashedSecret].value = msg.value.sub(_payoff); - swaps[_hashedSecret].hashedSecret = _hashedSecret; - swaps[_hashedSecret].initiator = msg.sender; - swaps[_hashedSecret].participant = _participant; - swaps[_hashedSecret].refundTimestamp = _refundTimestamp; - swaps[_hashedSecret].payoff = _payoff; - swaps[_hashedSecret].state = State.Initiated; - - emit Initiated( - _hashedSecret, - swaps[_hashedSecret].participant, - msg.sender, - swaps[_hashedSecret].refundTimestamp, - swaps[_hashedSecret].value, - swaps[_hashedSecret].payoff - ); - } - - function add (bytes32 _hashedSecret) - public payable isInitiated(_hashedSecret) isAddable(_hashedSecret) - { - swaps[_hashedSecret].value = swaps[_hashedSecret].value.add(msg.value); - - emit Added( - _hashedSecret, - msg.sender, - swaps[_hashedSecret].value - ); - } - - function redeem(bytes32 _hashedSecret, bytes32 _secret) - public isInitiated(_hashedSecret) isRedeemable(_hashedSecret, _secret) - { - swaps[_hashedSecret].secret = _secret; - swaps[_hashedSecret].state = State.Redeemed; - - emit Redeemed( - _hashedSecret, - _secret - ); - - swaps[_hashedSecret].participant.transfer(swaps[_hashedSecret].value); - if (swaps[_hashedSecret].payoff > 0) { - msg.sender.transfer(swaps[_hashedSecret].payoff); - } - - delete swaps[_hashedSecret]; - } - - function refund(bytes32 _hashedSecret) - public isInitiated(_hashedSecret) isRefundable(_hashedSecret) - { - swaps[_hashedSecret].state = State.Refunded; - - emit Refunded( - _hashedSecret - ); - - swaps[_hashedSecret].initiator.transfer(swaps[_hashedSecret].value.add(swaps[_hashedSecret].payoff)); - - delete swaps[_hashedSecret]; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/evm_assembly_contract_call/precompiled.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/evm_assembly_contract_call/precompiled.sol deleted file mode 100644 index 3708d2349d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/evm_assembly_contract_call/precompiled.sol +++ /dev/null @@ -1,149 +0,0 @@ -pragma solidity ^0.6.12; - -/* -network.platon.test.evm 跨合约调用 系统合约 -*/ -contract precompiled { - - bytes callDatacopyValue; - bytes32 callBigModExpValue; - uint256[2] callBn256AddValues; - bytes32[2] callBn256ScalarMulValues; - bytes32 callBn256PairingValue; - address feePayerAddr; - bool validateSenderFlg; - - //Address 0x01 - function callEcrecover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) public pure returns (address) { - return ecrecover(hash, v, r, s); - } - - - //Address 0x02: sha256(data) - function callSha256(bytes memory data) public pure returns(bytes32 result){ - return sha256(data); - } - - - //Address 0x03: ripemd160(data) - function callRipemd160(bytes memory data) public pure returns(bytes32 result){ - return ripemd160(data); - } - - - //pass 0x04 - function callDatacopy(bytes memory data) public returns (bytes memory) { - bytes memory ret = new bytes(data.length); - assembly { - let len := mload(data) - if iszero(call(gas(), 0x04, 0, add(data, 0x20), len, add(ret,0x20), len)) { - invalid() - } - } - callDatacopyValue = ret; - return ret; - } - - function getCallDatacopyValue() public view returns(bytes memory){ - return callDatacopyValue; - } - - //pass 0x05 - function callBigModExp(bytes32 base, bytes32 exponent, bytes32 modulus) public returns (bytes32 result) { - assembly { - // free memory pointer - let memPtr := mload(0x40) - - // length of base, exponent, modulus - mstore(memPtr, 0x20) - mstore(add(memPtr, 0x20), 0x20) - mstore(add(memPtr, 0x40), 0x20) - - // assign base, exponent, modulus - mstore(add(memPtr, 0x60), base) - mstore(add(memPtr, 0x80), exponent) - mstore(add(memPtr, 0xa0), modulus) - - // call the precompiled contract BigModExp (0x05) - let success := call(gas(), 0x05, 0x0, memPtr, 0xc0, memPtr, 0x20) - switch success - case 0 { - revert(0x0, 0x0) - } default { - result := mload(memPtr) - } - } - callBigModExpValue = result; - } - - - function getCallBigModExpValue() public view returns(bytes32 ){ - return callBigModExpValue; - } - - //pass 0x06 - function callBn256Add(uint256 ax, uint256 ay, uint256 bx, uint256 by) public returns (uint256[2] memory result) { - uint256[4] memory input; - input[0] = ax; - input[1] = ay; - input[2] = bx; - input[3] = by; - assembly { - let success := call(gas(), 0x06, 0, input, 0x80, result, 0x40) - switch success - case 0 { - revert(0,0) - } - } - callBn256AddValues = result; - } - - - function getCallBn256AddValues() public view returns(uint256[2] memory result ){ - return callBn256AddValues; - } - - - //0x07 - function callBn256ScalarMul(bytes32 x, bytes32 y, bytes32 scalar) public returns (bytes32[2] memory result) { - bytes32[3] memory input; - input[0] = x; - input[1] = y; - input[2] = scalar; - assembly { - let success := call(gas(), 0x07, 0, input, 0x60, result, 0x40) - switch success - case 0 { - revert(0,0) - } - } - callBn256ScalarMulValues = result; - } - - function getCallBn256ScalarMulValues() public view returns(bytes32[2] memory result ){ - return callBn256ScalarMulValues; - } - - //Address 0x08: bn256Pairing(a1, b1, a2, b2, a3, b3, ..., ak, bk) - function callBn256Pairing(bytes memory input) public returns (bytes32 result) { - // input is a serialized bytes stream of (a1, b1, a2, b2, ..., ak, bk) from (G_1 x G_2)^k - uint256 len = input.length; - require(len % 192 == 0); - assembly { - let memPtr := mload(0x40) - let success := call(gas(), 0x08, 0, add(input, 0x20), len, memPtr, 0x20) - switch success - case 0 { - revert(0,0) - } default { - result := mload(memPtr) - } - } - callBn256PairingValue =result; - } - - function getCallBn256PairingValue() public view returns(bytes32 result ){ - return callBn256PairingValue; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/guessing/Guessing.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/guessing/Guessing.sol deleted file mode 100644 index d767ed2cfb..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/guessing/Guessing.sol +++ /dev/null @@ -1,218 +0,0 @@ -pragma solidity ^0.6.12; -/** - * 竞猜合约 - * 当用户往竞猜合约发起转账操作,满足(单笔>=5LAT), - * 每笔交易给对应地址分配一个抽奖号码(一个地址多笔交易可分配多个抽奖号码),并记录地址转入数; - * - */ -contract Guessing { - - uint256 public endBlock; //竞猜截止块高 - bytes32 public block_hash;//竞猜截止块高的块hash - bool public guessingClosed = false; //竞猜是否已开奖 -// uint256 public baseUnit = 5 lat; //最小转金额 - uint256 public baseUnit = 5 atp; //最小转金额 - - uint256 public balance; //竞猜奖池总金额 - uint256 public averageAmount; //每个中奖号码对应获奖金额 - mapping(address => uint256) public gussingerLat; //每个竞猜者发起转账的金额 - mapping(uint256 =>address payable ) public indexOfgussinger; //每个抽奖号码对应的竞猜者地址 - mapping(address => uint[]) public gussingerCodes; //每个竞猜者所有的抽奖号码集合 - mapping(address => uint256 ) public winnerMap; //中奖者对应中奖号码个数 - uint public indexKey = 1; - address[] public winnerAddresses; //中奖者地址数组 - address public createAddress;//合约创建者 - uint public postfix = 0; //中奖尾号 - - - //竞猜成功通知 - event FundTransfer(address _backer, uint _amount, bool _isSuccess); - - //记录已接收的LAT通知 - event CurrentBalance(address _msgSenderAddress, uint _balance); - - /** - * 初始化构造函数 - * - * @param _endBlock 竞猜截止块高(达到此块高后不能再往合约转账) - */ - constructor (uint _endBlock)public { - createAddress = msg.sender; - endBlock = _endBlock; - } - - /** - * - * 默认函数,可以向合约直接打款 - */ - fallback() external { - } - receive() payable external { - guessing(msg.value,msg.sender); - } - - /** - * 判断是否已经过了竞猜截止限期 - */ - modifier beforeDeadline() { if (endBlock >= block.number) _; } - - - /** - * 竞猜 - */ - function guessingWithLat() public payable{ - guessing(msg.value,msg.sender); - } - - //竞猜内部实现 - function guessing(uint amount,address payable msgsender) beforeDeadline internal{ - //转账金额要大于5lat - require(amount >= baseUnit); - - gussingerCodes[msgsender].push(indexKey); - - indexOfgussinger[indexKey] = msgsender; - indexKey++; - - //竞猜人的金额累加 - gussingerLat[msgsender] += amount; - - //竞猜总额累加 - balance += amount; - - //竞猜成功通知 - emit FundTransfer(msgsender, amount, true); - } - - /** - * 判断是否已经过了竞猜截止限期 - */ - modifier afterDeadline() { if (block.number > endBlock ) _; } - - /** - * 开奖操作 - * 如果当前区块超过了截止日期 - * - * 参数A:基于开奖截止区块的hash转成uint256 - * - * 参数B:本期内参与的总票数 - * - * 结果C :A 对 B取余 - * - * 方法:A % B = C - * - * - * 1.参数B,1<总票数<99,取余数C的个位数,个位数相同的为中奖;例如余数的12,取个位数,个位数是2的为中奖票 - * 2.参数B,100<总票数<9999,取余数C的两位数(个位十位),两位数相同的为中奖;例如余数是123,取两位数,票数后两位23的为中奖票 - * 3.参数B,总票数>10000,取余数C的三位数(个位十位百位),三位数相同的为中奖;例如余数是1234,取三位数,票数后三位带234的为中奖票 - * - */ - function draw(bytes32 _block_hash) public afterDeadline { - //开奖只能操作一次,且只有合约创建者可以开奖 - if(!guessingClosed && createAddress == msg.sender && indexKey > 1){ - uint256 random = uint256(keccak256(abi.encodePacked(_block_hash))); - uint drawIndex = random%indexKey; - - if(indexKey<100){ - getwinners(drawIndex,10); - }else if(indexKey<10000){ - getwinners(drawIndex,100); - }else{ - getwinners(drawIndex,1000); - } - - //每个中奖者可以分到的金额 - averageAmount = balance/winnerAddresses.length; - address payable tempAddress; - //向中奖者转账 - for(uint256 j=0;j block.number - 257 && _blocknumber < block.number - 1); - return blockhash(_blocknumber); - } - - - /** - * 获取当前参与者所有幸运号码 - */ - function getMyGuessCodes() view public returns (uint[] memory){ - return gussingerCodes[msg.sender]; - } - - /** - * 获幸运尾号 - */ - function getPostfix() view public returns (uint){ - require(guessingClosed == true); - return postfix; - } - - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/guessing/PlatonUnit.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/guessing/PlatonUnit.sol deleted file mode 100644 index 134a37840e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/guessing/PlatonUnit.sol +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.6.12; - -contract PlatonUnit { - - uint256 public balance; //合约金额 - - /** - * 默认函数 - * - * 默认函数,可以向合约直接打款 - */ -// function () payable external { -// balance = add(balance,msg.value); -// } - - fallback() external { - } - receive() payable external { - balance = add(balance,msg.value); - } - - - //累加函数 - function add(uint256 a, uint256 b) internal pure returns (uint256) { - uint256 c = a + b; - assert(c >= a); - return c; - } - - //查看当前合约余额 - function getBalance() view public returns (uint256){ - return address(this).balance; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/innerContract/PlatonInner.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/innerContract/PlatonInner.sol deleted file mode 100644 index 892c203b4b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/innerContract/PlatonInner.sol +++ /dev/null @@ -1,33 +0,0 @@ -pragma solidity ^0.6.12; - -/* - * network.platon.test.evm 跨合约调用 Platon系统合约 - * @author hudenian - * @dev 2020/02/25 -*/ -contract PlatonInner { - - bytes returnValue; - - function assemblyCallppos(bytes memory data,address addr) public { - uint256 len = data.length; - uint retsize; - bytes memory resval; - assembly { - if iszero(call(gas(), addr, 0, add(data, 0x20), len, 0, 0)) { - invalid() - } - retsize := returndatasize() - } - resval = new bytes(retsize); - assembly { - returndatacopy(add(resval, 0x20), 0, returndatasize()) - } - returnValue = resval; - } - - function getReturnValue() public view returns(bytes memory ){ - return returnValue; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/new_instructions/Inheritance.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/new_instructions/Inheritance.sol deleted file mode 100644 index b4f94dff72..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/new_instructions/Inheritance.sol +++ /dev/null @@ -1,61 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity ^0.6.12; - -/* Graph of inheritance - A - / \ - B C - / \ / -F D,E - -*/ - -contract InheritanceA { - function foo() public pure virtual returns (string memory) { - return "InheritanceA"; - } -} - -// Contracts inherit other contracts by using the keyword 'is'. -contract InheritanceB is InheritanceA { - // Override A.foo() - function foo() public pure virtual override returns (string memory) { - return "InheritanceB"; - } -} - -contract InheritanceC is InheritanceA { - // Override A.foo() - function foo() public pure virtual override returns (string memory) { - return "InheritanceC"; - } -} - -// Contracts can inherit from multiple parent contracts. -// When a function is called that is defined multiple times in -// different contracts, parent contracts are searched from -// right to left, and in depth-first manner. - -contract InheritanceD is InheritanceB, InheritanceC { - // D.foo() returns "C" - // since C is the right most parent contract with function foo() - function foo() public pure override(InheritanceB, InheritanceC) returns (string memory) { - return super.foo(); - } -} - -contract InheritanceE is InheritanceC, InheritanceB { - // E.foo() returns "B" - // since B is the right most parent contract with function foo() - function foo() public pure override(InheritanceC, InheritanceB) returns (string memory) { - return super.foo(); - } -} - -// Inheritance must be ordered from “most base-like” to “most derived”. -// Swapping the order of A and B will throw a compilation error. -contract InheritanceF is InheritanceA, InheritanceB { - function foo() public pure override(InheritanceA, InheritanceB) returns (string memory) { - return super.foo(); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/new_instructions/Instructions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/new_instructions/Instructions.sol deleted file mode 100644 index 1071ea3767..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/new_instructions/Instructions.sol +++ /dev/null @@ -1,28 +0,0 @@ -pragma solidity ^0.6.12; - -contract Instructions { - - function getChainId() public view returns (uint) { - uint256 chainId; - assembly { chainId := chainid() } - return chainId; - } - - function getSelfBalance() public view returns (uint) { - uint256 ret; - assembly { ret := selfbalance() } - return ret; - } - - function test(uint x, uint y) public returns (uint) { - return test_mul(2,3); - } - - function test_mul(uint x, uint y) public returns (uint) { - return multiply(x,y); - } - - function multiply(uint x, uint y) public returns (uint) { - return x * y; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/new_instructions/ShadowingInheritedStateVariables.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/new_instructions/ShadowingInheritedStateVariables.sol deleted file mode 100644 index 241068e891..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/new_instructions/ShadowingInheritedStateVariables.sol +++ /dev/null @@ -1,17 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity ^0.6.12; - -contract ShadowingInheritedStateVariablesSuper { - string public name = "Contract ShadowingInheritedStateVariablesSuper"; - - function getName() public view returns (string memory) { - return name; - } -} - -contract ShadowingInheritedStateVariablesSuperChild is ShadowingInheritedStateVariablesSuper { - // This is the correct way to override inherited state variables. - constructor() public { - name = "Contract ShadowingInheritedStateVariablesSuperChild"; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/new_instructions/TryCatch.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/new_instructions/TryCatch.sol deleted file mode 100644 index d3851789be..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.6.12/new_instructions/TryCatch.sol +++ /dev/null @@ -1,33 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity ^0.6.12; - -contract CalledContract { - function someFunction() external pure{ - // Code that reverts - revert(); - } -} - - -contract TryCatcher { - - event CatchEvent(); - event SuccessEvent(); - - CalledContract public externalContract; - - constructor() public { - externalContract = new CalledContract(); - } - - function execute() external { - - try externalContract.someFunction() { - // Do something if the call succeeds - emit SuccessEvent(); - } catch { - // Do something in any other case - emit CatchEvent(); - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/0.complex_contracts/ERC20_0_7_1/ERC200513Token.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/0.complex_contracts/ERC20_0_7_1/ERC200513Token.sol deleted file mode 100644 index 018a2bdb2f..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/0.complex_contracts/ERC20_0_7_1/ERC200513Token.sol +++ /dev/null @@ -1,195 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * ERC20 0.5.13版本验证 - * - * - * @author hudenian - * @dev 2019/12/23 - **/ -contract ERC200513Token { - string public name; // ERC20标准--代币名称 - string public symbol; // ERC20标准——代币简称 - uint8 public decimals = 18; // ERC20标准,decimals 可以有的小数点个数,最小的代币单位。18 是建议的默认值 - uint256 public totalSupply; // ERC20标准 总供应量 - - // 用mapping保存每个地址对应的余额 ERC20标准 - mapping(address => uint256) public balanceOf; - // 存储对账号的控制 ERC20标准 - mapping(address => mapping(address => uint256)) public allowance; - - // 事件,用来通知客户端交易发生 ERC20标准 - event Transfer(address indexed from, address indexed to, uint256 value); - - // 事件,用来通知客户端代币被消费 ERC20标准 - event Burn(address indexed from, uint256 value); - - /** - * 初始化构造 - */ - constructor(uint256 initialSupply, string memory tokenName, string memory tokenSymbol) public { - totalSupply = initialSupply * 10 ** uint256(decimals); - // 供应的份额,份额跟最小的代币单位有关,份额 = 币数 * 10 ** decimals。 - balanceOf[msg.sender] = totalSupply; - // 创建者拥有所有的代币 - name = tokenName; - // 代币名称 - symbol = tokenSymbol; - // 代币符号 - } - /** - * 返回代币的名称 - */ - function getName() view public returns (string memory){ - return name; - } - - /** - * 返回代币的简称 - */ - function getSymbol() view public returns (string memory){ - return symbol; - } - /** - * 返回代币最小分割量 - */ - function getDecimals() public view returns (uint8){ - return decimals; - } - - function getTotalSupply() public view returns (uint256 theTotalSupply) { - //函数声明中已经定义了返回变量theTotalSupply - theTotalSupply = totalSupply; - return theTotalSupply; - } - - function getBalanceOf(address _owner) public view returns (uint256 balance) { - //返回指定地址的通证余额 - return balanceOf[_owner]; - } - /** - * 代币交易转移的内部实现 - */ - function _transfer(address _from, address _to, uint _value) internal returns (bool success){ - // 确保目标地址不为0x0,因为0x0地址代表销毁 -// require(_to != address("lat1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq542u6a") || _to != address("lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmscn5j")); - require(_to != address("atp1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqdruy9j") || _to != address("atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc")); - // 检查发送者余额 - require(balanceOf[_from] >= _value); - // 确保转移为正数个 - require(balanceOf[_to] + _value > balanceOf[_to]); - - // 以下用来检查交易, - uint previousBalances = balanceOf[_from] + balanceOf[_to]; - // Subtract from the sender - balanceOf[_from] -= _value; - // Add the same to the recipient - balanceOf[_to] += _value; - emit Transfer(_from, _to, _value); - - // 用assert来检查代码逻辑。 - return (balanceOf[_from] + balanceOf[_to] == previousBalances); - } - - /** - * 代币交易转移 - * 从自己(创建交易者)账号发送`_value`个代币到 `_to`账号 - * ERC20标准 - * @param _to 接收者地址 - * @param _value 转移数额 - */ - function transfer(address _to, uint256 _value) public returns (bool success){ - return _transfer(msg.sender, _to, _value); - } - - /** - * 账号之间代币交易转移 - * ERC20标准 - * @param _from 发送者地址 - * @param _to 接收者地址 - * @param _value 转移数额 - */ - function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) { - require(_value <= allowance[_from][msg.sender]); - // Check allowance - allowance[_from][msg.sender] -= _value; - _transfer(_from, _to, _value); - return true; - } - - /** - * 设置某个地址(合约)可以创建交易者名义花费的代币数。 - * - * 允许发送者`_spender` 花费不多于 `_value` 个代币 - * ERC20标准 - * @param _spender The address authorized to spend - * @param _value the max amount they can spend - */ - function approve(address _spender, uint256 _value) public - returns (bool success) { - allowance[msg.sender][_spender] = _value; - return true; - } - - /** - * 设置允许一个地址(合约)以我(创建交易者)的名义可最多花费的代币数。 - *-非ERC20标准 - * @param _spender 被授权的地址(合约) - * @param _value 最大可花费代币数 - * @param _extraData 发送给合约的附加数据 - */ - // function approveAndCall(address _spender, uint256 _value, bytes memory _extraData) public returns (bool success) { - // tokenRecipient spender = tokenRecipient(_spender); - // if (approve(_spender, _value)) { - // // 通知合约 - // spender.receiveApproval(msg.sender, _value, address(this), _extraData); - // return true; - // } - // } - - /** - * - * 获取_spender可以从账户_owner中转出token的剩余数量 - */ - function getAllowance(address _owner, address _spender) public view returns (uint remaining){ - return allowance[_owner][_spender]; - } - - /** - * 销毁我(创建交易者)账户中指定个代币 - *-非ERC20标准 - */ - function burn(uint256 _value) public returns (bool success) { - require(balanceOf[msg.sender] >= _value); - // Check if the sender has enough - balanceOf[msg.sender] -= _value; - // Subtract from the sender - totalSupply -= _value; - // Updates totalSupply - emit Burn(msg.sender, _value); - return true; - } - - /** - * 销毁用户账户中指定个代币 - *-非ERC20标准 - * Remove `_value` tokens from the system irreversibly on behalf of `_from`. - * - * @param _from the address of the sender - * @param _value the amount of money to burn - */ - function burnFrom(address _from, uint256 _value) public returns (bool success) { - require(balanceOf[_from] >= _value); - // Check if the targeted balance is enough - require(_value <= allowance[_from][msg.sender]); - // Check allowance - balanceOf[_from] -= _value; - // Subtract from the targeted balance - allowance[_from][msg.sender] -= _value; - // Subtract from the sender's allowance - totalSupply -= _value; - // Update totalSupply - emit Burn(_from, _value); - return true; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/01Parameters_and_Returns/FunctionParam.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/01Parameters_and_Returns/FunctionParam.sol deleted file mode 100644 index 509b505849..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/01Parameters_and_Returns/FunctionParam.sol +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * 验证入参是函数的使用,来自官方case - * @author liweic - * @dev 2020/01/11 20:09 - */ - -library G { - function g(function() internal returns (uint) _t) internal returns (uint) { - return _t(); - } -} -contract FunctionParam { - using G for *; - function g(function() internal returns (uint) _t) internal returns (uint) { - return _t(); - } - - function f() public returns (uint) { - return t.g(); - } - function t() public pure returns (uint) { - return 7; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/01Parameters_and_Returns/PramaAndReturns.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/01Parameters_and_Returns/PramaAndReturns.sol deleted file mode 100644 index af92609f06..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/01Parameters_and_Returns/PramaAndReturns.sol +++ /dev/null @@ -1,66 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * 验证单一输入、输出参数类型uint - * 验证函数无返回值 - * 验证未使用参数可以省略参数名 - * 验证入参和出参均为数组 - * 验证返回值为字符串 - * 验证多个返回值且返回类型是数组 - * @author liweic - * @dev 2019/12/28 19:09 - */ - -contract PramaAndReturns { - string greeting = "What's up man"; - - uint public s ; - - //入参出参均为uint - function InputParam(uint a) public view returns(uint b){ - b = a; - return b; - } - - //无返回值 - function NoOutput(uint a, uint b) public { - s = a; - } - - //验证函数NoOutput是否调用成功 - function getS() public view returns(uint){ - return s; - } - - //未使用参数可以省略参数名 - function OmitParam(uint y, uint) public pure returns(uint) { - return y; - } - - //入参和出参均为数组 - function IuputArray(uint[3] memory y) public view returns (uint[3] memory){ - y[2] = 3; - return y; - } - - //返回值为字符串 - function OuputString() public view returns (string memory) { - return greeting; - } - - //多个返回值且返回类型是数组 - function OuputArrays() public pure returns(uint[] memory, uint[] memory) { - - uint[] memory localMemoryArray1 = new uint[](3); - localMemoryArray1[0] = 1; - localMemoryArray1[1] = 2; - localMemoryArray1[2] = 3; - - uint[] memory localMemoryArray2 = localMemoryArray1; - localMemoryArray1[0] = 10; - - return (localMemoryArray1, localMemoryArray2); - //returns 1,2,3 | 10,2,3 - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/ABIFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/ABIFunctions.sol deleted file mode 100644 index de65cb4df9..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/ABIFunctions.sol +++ /dev/null @@ -1,19 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证ABI编解码相关的函数 - * @author liweic - * @dev 2019/12/27 20:10 - */ -contract ABIFunctions { - function getEncodeWithSignature() public view returns (bytes memory) { - return abi.encodeWithSignature("set(uint256)", 1); //计算函数set(uint256) 及参数1 的ABI 编码 - } - - function getEncode() public view returns (bytes memory) { - return abi.encode(1); //计算参数 1 的ABI 编码 - } - - function getEncodePacked() public view returns (bytes memory) { - return abi.encodePacked("1"); //计算参数 1 的紧密打包编码 - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/AddressFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/AddressFunctions.sol deleted file mode 100644 index 9a7ed587e5..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/AddressFunctions.sol +++ /dev/null @@ -1,29 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证address的查余额方法banlance和转账方法send,transfer - * 验证合约关键字this - * @author liweic - * @dev 2019/12/28 10:10 - */ - -contract AddressFunctions { - - //获取地址的余额 - function getBalance(address addr) view public returns (uint){ - return addr.balance; - } - - //当前合约的余额 - function getBalanceOf() view public returns (uint){ - return address(this).balance; - } - - function transfer(address payable addr) public payable{ - addr.transfer(msg.value); - } - - function send(address payable addr) public payable returns(bool success){ - return addr.send(1); - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/BlockTransactionPropertiesFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/BlockTransactionPropertiesFunctions.sol deleted file mode 100644 index 55f301ad94..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/BlockTransactionPropertiesFunctions.sol +++ /dev/null @@ -1,80 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证区块和交易属性的内置函数 - * @author liweic - * @dev 2019/12/27 19:10 - */ - -contract BlockTransactionPropertiesFunctions { - - function getBlockhash(uint blockNumber) public view returns (bytes32) { - // 获取指定区块的区块哈希 - return blockhash(blockNumber); - } - - function getBlockCoinbase() public view returns(address) { - // 获取当前块矿工的地址 - return block.coinbase; - } - - function getBlockDifficulty() public view returns(uint) { - // 获取当前块的难度 - return block.difficulty; - } - - function getGaslimit() public view returns(uint) { - // 获取当前区块 gas 限额 - return block.gaslimit; - } - - function getBlockNumber() public view returns(uint) { - // 获取当前区块的块高 - return block.number; - } - - function getBlockTimestamp() public view returns(uint) { - // 获取当前块的Unix时间戳 - return block.timestamp; - } - - function getData() public view returns(bytes memory) { - // 获取完整的 calldata - return msg.data; - } - - function getGasleft() public view returns(uint) { - // 获取当前还剩的gas - return gasleft(); - } - - function getSender() public view returns(address) { - // 获取当前调用发起人的地址 - return msg.sender; - } - - function getSig() public view returns(bytes4) { - // 调用数据的前四个字节 - return msg.sig; - } - - function getValue() public payable returns(uint) { - // 获取这个消息所附带的以太币,单位为wei - return msg.value; - } - - //将now做为不推荐使用的全局变量,推荐大家使用block.timestamp以保证使用者明白含义(0.7.0) - function getNow() public view returns(uint) { - // 获取当前块的时间戳 - return block.timestamp; - } - - function getGasprice() public view returns(uint) { - // 获取交易的gas价格 - return tx.gasprice; - } - - function getOrigin() public view returns(address) { - // 获取交易发起者(完全的调用链) - return tx.origin; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/Blockhash.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/Blockhash.sol deleted file mode 100644 index 7b76258ed2..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/Blockhash.sol +++ /dev/null @@ -1,43 +0,0 @@ -pragma solidity ^0.7.1; -/** - * blockhash功能测试 - */ -contract Blockhash { - - //取当前块高之前300个块hash(理论上取不到) - function getBlockhashbefore257() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number - 257); - - return blockhs; - } - - //取当前块高之前256个块hash(理论上取不到) - function getBlockhashbefore256() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number - 256); - - return blockhs; - } - - //取当前块高之前255个块hash(理论上取不到) - function getBlockhashbefore255() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number - 255); - - return blockhs; - } - - - //取当前块高之前30个块hash(理论上可以取到) - function getBlockhashbefore30() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number - 30); - - return blockhs; - } - - //取当前块高之前30个块hash(理论上可以取到) - function getBlockhashbefore0() public view returns(bytes32){ - bytes32 blockhs = blockhash(block.number); - - return blockhs; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/MathAndCryptographicFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/MathAndCryptographicFunctions.sol deleted file mode 100644 index f9d9200b8b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/MathAndCryptographicFunctions.sol +++ /dev/null @@ -1,46 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证数学和加密函数,sha3在0.5.0版本之后被剔除,用keccak256取代 - * 计算(x + y) % k - * 计算(x * y) % k - * 计算输入的Keccak256Hash值 - * 计算输入的Sha256Hash值 - * 计算输入的Ripemd160Hash值 - * 从椭圆曲线签名中恢复与公钥相关的地址,或在出错时返回零 - * 函数参数对应于签名的ECDSA值: r – 签名的前32字节; s: 签名的第二个32字节; v: 签名的最后一个字节 - * @author liweic - * @dev 2019/12/27 20:10 - */ - -contract MathAndCryptographicFunctions { - - function callAddMod() public pure returns(uint){ - return addmod(2, 3, 3); - } - - function callMulMod() public pure returns(uint){ - return mulmod(2, 3, 3); - } - - function callKeccak256() public pure returns(bytes32 result){ - return keccak256("ABC"); - } - - function callSha256() public pure returns(bytes32 result){ - return sha256("ABC"); - } - - function callRipemd160() public pure returns(bytes32 result){ - return ripemd160("ABC"); - } - - //hash: "0xe281eaa11e6e37e6f53aade5d6c5b7201ef1c66162ec42ccc3215a0c4349350d" - //V = 27 - //R = "0x55b60cadd4b4a3ea4fc368ef338f97e12e7328dd6e9e969a3fd8e5c10be855fe" - //S = "0x2b42cee2585a16ea537efcb88009c1aeac693c28b59aa6bbff0baf22730338f6" - //address: "0x8a9B36694F1eeeb500c84A19bB34137B05162EC5" - function callEcrecover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) public pure returns (address) { - address x = ecrecover(hash, v, r, s); - return x; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/SelfdestructFunctions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/SelfdestructFunctions.sol deleted file mode 100644 index 9f896eeb1a..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/02Special_Variables_and_Functions/SelfdestructFunctions.sol +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证构造函数constructor - * 验证销毁函数selfdestruct,0.5.x之后弃用suicide - * @author liweic - * @dev 2019/12/28 16:00 - */ - -contract SelfdestructFunctions { - //声明状态变量 - uint count = 0; - address payable owner; - - //构造函数 - constructor () public { - owner = msg.sender; - } - - function increment() public { - uint num = 5; - if(owner == msg.sender) { - count = count + num; - } - } - - function getCount() view public returns (uint) { - return count; - } - - function selfKill() public { - if (owner == msg.sender) { - selfdestruct(owner); - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/03Function_Visibility_and_Decarations/Getter.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/03Function_Visibility_and_Decarations/Getter.sol deleted file mode 100644 index 38e012f030..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/03Function_Visibility_and_Decarations/Getter.sol +++ /dev/null @@ -1,16 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证getter(访问器)函数,编译器会自动为所有 public 状态变量创建 getter 函数,编译器会为我们自动生成的data()函数 - * 在合约内,可以直接操作及访问data状态变量,但在合约外我们只能用data()的方式来访问 - * 在合约内,不能直接访问data(),因为访问器函数的可见性是external - * @author liweic - * @dev 2019/12/27 14:10 - */ -contract Getter{ - uint public data = 10; - - function f() public view returns (uint, uint){ - //分别以internal,external的方式访问 - return (data, this.data()); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/03Function_Visibility_and_Decarations/Payable.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/03Function_Visibility_and_Decarations/Payable.sol deleted file mode 100644 index d735dacce3..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/03Function_Visibility_and_Decarations/Payable.sol +++ /dev/null @@ -1,18 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证函数声明方式payable,用于转账 - * @author liweic - * @dev 2019/12/27 16:10 - */ - -contract Payable { - - //获取地址的余额 - function getBalances(address addr) view public returns (uint){ - return addr.balance; - } - - function transfer(address payable addr) public payable{ - addr.transfer(msg.value); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/03Function_Visibility_and_Decarations/Selector.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/03Function_Visibility_and_Decarations/Selector.sol deleted file mode 100644 index c62c47fcbc..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/03Function_Visibility_and_Decarations/Selector.sol +++ /dev/null @@ -1,14 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证public (或 external) 函数有一个特殊的成员selector, 它对应一个ABI 函数选择器. - * @author liweic - * @dev 2020/01/11 20:30 - */ -contract Selector { - function h() payable external { - } - function f() view external returns (bytes4) { - function () external g = this.h; - return g.selector; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/03Function_Visibility_and_Decarations/Visibility.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/03Function_Visibility_and_Decarations/Visibility.sol deleted file mode 100644 index 8a7d2907ec..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/03Function_Visibility_and_Decarations/Visibility.sol +++ /dev/null @@ -1,49 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证函数四种可见性external,public,internal,private - * @author liweic - * @dev 2019/12/27 10:10 - */ - -contract Visibility { - - //private:私有函数和状态变量仅在当前合约中可以访问,在继承的合约内,不可访问 - function fpri(uint a) view private returns(uint) { - return a + 1; - } - - //external:外部函数是合约接口的一部分,所以我们可以从其它合约或通过交易来发起调用 - function fe(uint a) view external returns(uint){ - return a + 2; - } - - //public:公开函数是合约接口的一部分,可以通过内部,或者消息来进行调用 - function fpub(uint a) view public returns(uint) { - return a + 3; - } - - //internal:这样声明的函数和状态变量只能通过内部访问,也可以在继承合约里调用 - function add(uint a, uint b) view internal returns(uint) { - return a+b; - } -} - - -contract VisibilityCall { - function readData() public payable returns(uint localA, uint localB){ - Visibility visibility = new Visibility(); - //uint local = visibilitytest.fpri(10); // error: member "fpri" is not visible,编译报错 - localA = visibility.fe(1); - localB = visibility.fpub(1); - //uint localB = visibilitytest.add(1, 2); // error: member "add" is not visible,编译报错 - } - -} - - -contract Inter is Visibility { - function g() view public returns(uint){ - //继承合约里调用internal函数 - return add(1,2); // acces to internal member (from derivated to parent contract) - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/04Function_Calls/ExternalCall.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/04Function_Calls/ExternalCall.sol deleted file mode 100644 index 529a17f32e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/04Function_Calls/ExternalCall.sol +++ /dev/null @@ -1,24 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证函数的外部调用,一个函数调用另一个合约的函数 - * @author liweic - * @dev 2019/12/27 10:10 - */ - -contract External { - function getSum() external view returns(uint sum){ - //定义两个局部变量 - uint a = 1; - uint b = 2; - sum = a + b; - } -} - -contract CallExternal { - event ExternalCValue(uint value); - function getResult() payable public returns(uint c){ - External d = new External(); - c = d.getSum(); - emit ExternalCValue(c); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/04Function_Calls/InternalCall.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/04Function_Calls/InternalCall.sol deleted file mode 100644 index 4ee58af4df..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/04Function_Calls/InternalCall.sol +++ /dev/null @@ -1,21 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证函数的内部调用,一个函数在同一个合约中调用另一个函数 - * @author liweic - * @dev 2019/12/26 17:10 - */ - -contract IntenalCall { - - function getSum() public view returns(uint sum){ - //定义两个局部变量 - uint a = 1; - uint b = 2; - sum = a + b; - } - - function getResult() public view returns(uint product){ - uint c = 3; - product = c * getSum(); //内部调用之前定义的函数 - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/04Function_Calls/NamedCall.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/04Function_Calls/NamedCall.sol deleted file mode 100644 index 83bdd5b322..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/04Function_Calls/NamedCall.sol +++ /dev/null @@ -1,17 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证函数的具名调用 - * @author liweic - * @dev 2019/12/26 16:10 - */ -contract NamedCall { - //交换传入值的顺序并返回 - function exchange(uint key, uint value) view public returns (uint, uint){ - return (value, key); - } - - function namecall() view public returns (uint, uint){ - //任意顺序的通过变量名来指定参数值 - return exchange({value: 2, key: 1}); - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/05Modifier/InheritanceModifier.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/05Modifier/InheritanceModifier.sol deleted file mode 100644 index 916992fd2d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/05Modifier/InheritanceModifier.sol +++ /dev/null @@ -1,15 +0,0 @@ -pragma solidity ^0.7.1; - -import "./Modifier.sol"; - -contract InheritanceModifier is Modifier { - - // 使用修饰符 mf - function inheritance(uint c) public mf(c) { - a = 1; - } - - function getA() public view returns (uint) { - return a; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/05Modifier/Modifier.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/05Modifier/Modifier.sol deleted file mode 100644 index d49cec1efa..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/05Modifier/Modifier.sol +++ /dev/null @@ -1,19 +0,0 @@ -pragma solidity ^0.7.1; -/** - *1.验证单一修饰器 - *2.验证特殊_的用法,符合函数修饰器定义的条件,才可以执行函数体内容 - *3.验证修饰器可以接收参数 - *4.验证合约继承情况下的修饰器的使用 - * @author liweic - * @dev 2019/12/26 11:10 - */ -contract Modifier { - uint a = 10; - - // 定义修饰符 mf 带参数 - modifier mf (uint b) { - if (b >= a) { - _; - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/05Modifier/Modifiers.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/05Modifier/Modifiers.sol deleted file mode 100644 index 2a9beb3b1d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/05Modifier/Modifiers.sol +++ /dev/null @@ -1,38 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 1.验证函数修饰器的关键词modifier - * 2.验证多个修饰器的用法 - * 3.验证修饰器接收参数和无参修饰器的用法 - * @author liweic - * @dev 2019/12/25 15:10 - */ -contract Modifiers { - uint a = 10; - - modifier mf1 (uint b) { - uint c = b; - _; - c = a; - a = 11; - } - - modifier mf2 () { - uint c = a; - _; - } - - modifier mf3() { - a = 12; - return ; - _; - a = 13; - } - - function test1() mf1(a) mf2 mf3 public { - a = 1; - } - - function test2 () public view returns (uint) { - return a; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/06Contract_Related_and_Fallback/Fallback.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/06Contract_Related_and_Fallback/Fallback.sol deleted file mode 100644 index 92c7c29b0f..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/06Contract_Related_and_Fallback/Fallback.sol +++ /dev/null @@ -1,25 +0,0 @@ -pragma solidity ^0.7.1; -/** - 1.验证合约关键字this,表示当前合约,可以显示的转换为Address - 2.验证Fallback函数,调用了未命名的函数等方式 - * @author liweic - * @dev 2019/12/26 15:30 - */ - -contract FallBack { - uint a = 1; - - //定义一个回退函数 - fallback() external { - a = 100; - } - - //调用一个不存在的函数将触发回退函数 - function CallFunctionNotExist() public { - address(this).delegatecall("functionNotExist()"); - } - - function getA() view public returns (uint) { - return a; - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/07Assembly/AssemblyReturns.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/07Assembly/AssemblyReturns.sol deleted file mode 100644 index c649f77bf8..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/07Assembly/AssemblyReturns.sol +++ /dev/null @@ -1,24 +0,0 @@ -pragma solidity ^0.7.1; -/** - 1.验证内联汇编关键字assembly,汇编赋值指令:= - * @author liweic - * @dev 2020/01/07 14:30 - */ - -contract AssemblyReturns { - uint constant a = 2; - bytes2 constant b = 0xabcd; - bytes3 constant c = "abc"; - bool constant d = true; -// address payable constant e = "lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2"; - address payable constant e = "atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq"; - function f() public pure returns (uint w, bytes2 x, bytes3 y, bool z, address t) { - assembly { - w := a - x := b - y := c - z := d - t := e - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/07Assembly/SumAssembly.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/07Assembly/SumAssembly.sol deleted file mode 100644 index 0c25356097..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/07Assembly/SumAssembly.sol +++ /dev/null @@ -1,30 +0,0 @@ -pragma solidity ^0.7.1; -/** - 1.验证内联汇编在库中的使用 - 2.验证汇编的操作码add,mul等 - * @author liweic - * @dev 2020/01/08 14:30 - */ -library Sum { - function sumUsingInlineAssembly(uint[] memory _data) public pure returns (uint o_sum) { - for (uint i = 0; i < _data.length; ++i) { - assembly { - o_sum := add(o_sum, mload(add(add(_data, 0x20), mul(i, 0x20)))) - } - } - } -} -contract SumAssembly { - uint[] data; - - constructor() public { - data.push(1); - data.push(2); - data.push(3); - data.push(4); - data.push(5); - } - function sum() external view returns(uint){ - return Sum.sumUsingInlineAssembly(data); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/08delete/DeleteDemo.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/08delete/DeleteDemo.sol deleted file mode 100644 index 1744cc2172..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/1.function/08delete/DeleteDemo.sol +++ /dev/null @@ -1,95 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证delete关键字,验证各种类型的delete,包括bool,uint,address,bytes,string,enum,变长数组 - * 验证删除struct, struct中的映射不会被删除其他的会被删除 - * @author liweic - * @dev 2020/01/09 16:10 - */ - -contract DeleteDemo{ - - bool public b = true; - uint public i = 1; - address public addr = msg.sender; - bytes public varByte = "123"; - string public str = "abc"; - enum Color{RED,GREEN,YELLOW} - Color public color = Color.GREEN; - - struct S{ - uint a; - string r; - } - - S s; - - struct MapStruct{ - mapping(address => uint) m; - uint n; - } - - MapStruct ms; - - function delMapping() payable public{ - //ms = MapStruct(200); - ms.m[msg.sender] = 2000; - - delete ms; - } - - function getdelMapping() view public returns(uint,uint){ - return (ms.m[msg.sender],ms.n); - } - - function delStruct() payable public returns(uint, string memory){ - DeleteDemo.S(10, "abc"); - delete s; - - return (s.a,s.r); - } - - function deleteAttr() public { - delete b; // false - delete i; // 0 - delete addr; // 0x0 - delete varByte; // 0x - delete str; // "" - delete color;//Color.RED - } - - function getbool() view public returns(bool){ - return b; - } - - function getunit() view public returns(uint){ - return i; - } - - function getaddress() view public returns(address){ - return addr; - } - - function getbytes() view public returns(bytes memory){ - return varByte; - } - - function getstr() view public returns(string memory){ - return str; - } - - function getenum() view public returns(Color){ - return color; - } - - function getstruct() view public returns(uint, string memory){ - return (s.a,s.r); - } - - function delDynamicArray() view public returns(uint){ - uint[] memory a = new uint[](7); - a[0] = 100; - a[1] = 200; - delete a; - return (a.length); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/10.exec_efficiency/BubbleSort.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/10.exec_efficiency/BubbleSort.sol deleted file mode 100644 index 90b2635f5c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/10.exec_efficiency/BubbleSort.sol +++ /dev/null @@ -1,33 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * EVM 冒泡排序算法复杂度验证 - **/ - -contract BubbleSort{ - - int[] result_arr; - - function BubbleArrays(int[] memory arr, uint n) public payable{ - for (uint i = 0; i < n - 1; i++) - { - for (uint j = 0; jarr[j + 1]) - { - int temp; - temp = arr[j]; - arr[j] = arr[j + 1]; - arr[j + 1] = temp; - } - } - } - - result_arr = arr; - } - - function get_arr() public view returns(int[] memory){ - return result_arr; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/10.exec_efficiency/InsertSort.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/10.exec_efficiency/InsertSort.sol deleted file mode 100644 index ccac9bb934..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/10.exec_efficiency/InsertSort.sol +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * EVM 插入排序算法复杂度验证 - **/ - -contract InsertSort{ - - int[] result_arr; - - function OuputArrays(int[] memory arr, uint n) public payable{ - uint i; - uint k; - uint j; - for(i=1;i=1 && temp second); - - result = frist+second; - return result; - } - - - function getResult() view public returns(uint){ - return result; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/ChainFunction.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/ChainFunction.sol" deleted file mode 100644 index ed24ed9cb7..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/ChainFunction.sol" +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 10-链上函数 - * 1- 0.5.0版本函数 delegatecall() 代替 0.4.25版本函数 callcode() - * 2- 0.5.0版本函数 selfdestruct() 代替 0.4.25版本函数 suicide() - * - * 4- 0.5.0版本函数 revert(), require(),assert() 代替 0.4.25版本函数 throw - * 5- 0.5.0版本函数 call()族只接受一个参数 bytes,返回成功是否的bool及函数执行的返回值 - * 0.4.25版本函数 call()族函数接收多个参数方式,只返回成功是否的 bool - * 跨合约调用见11.cross_contract_call - * - * @author hudenian - * @dev 2019/12/19 09:57 - * - */ - -contract ChainFunction { - - address owner; - uint fortune; - bool isDeceased; - - constructor() public payable{ - owner = msg.sender; - fortune = msg.value; - isDeceased = false; - } - - modifier onlyOwner{ - require(msg.sender == owner); - _; - } - - modifier mustBeDeceased{ - require(isDeceased == true); - _; - } - - /** - * 0.5.0 版本使用revert(), require(),assert()关键字 - * _isDeceased为false,或者less9小于9则抛出异常 - */ - function deceased(bool isDeceased,uint less9) view public returns(address){ - assert(isDeceased == true); - if(less9 < 9){ - revert(); - } - return msg.sender; - } - - /** - * _isDeceased为false则抛出异常 - */ - function deceasedWithModify(bool _isDeceased) view public returns(address){ - require(_isDeceased == true); - return msg.sender; - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RequireContract.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RequireContract.sol" deleted file mode 100644 index bafd87e831..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RequireContract.sol" +++ /dev/null @@ -1,29 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 10-链上函数 - * 函数 require() - * - * @author hudenian - * @dev 2020/1/8 09:57 - * - */ - -contract RequireContract { - - uint result; - /** - * require退回剩下的gas - * 验证输入参数合法性 - */ - function toSenderAmount(uint frist,uint second) public { - require(frist > second); - result = frist - second; - } - - - function getResult() view public returns(uint){ - return result; - } - - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RevertContract.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RevertContract.sol" deleted file mode 100644 index 60626e90b6..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/RevertContract.sol" +++ /dev/null @@ -1,34 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 10-链上函数 - * 函数 revert() - * - * @author hudenian - * @dev 2020/1/8 09:57 - * - */ -contract RevertContract { - - address payable owner; - uint result; - - constructor() public{ - owner = msg.sender; - } - /** - * revert会把所有剩下的gas退回给caller - * 验证输入参数合法性 - */ - function toSenderAmount(uint first,uint second) public returns(uint) { - if(first < second){ - revert("first less than second"); - } - result = first-second; - return result; - } - - - function getResult() view public returns(uint){ - return result; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/Sha3AndKeccake256.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/Sha3AndKeccake256.sol" deleted file mode 100644 index 4693e38428..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/Sha3AndKeccake256.sol" +++ /dev/null @@ -1,32 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 10-链上函数 - * 1- 0.5.0版本函数 keccak256() 代替 0.4.25版本函数 sha3() - * - * @author hudenian - * @dev 2019/12/19 09:57 - * - */ - -contract Sha3AndKeccake256 { - - uint256 afterSha256value; - - /** - * keccak256a - */ - function keccak(string memory sha256value) public{ - afterSha256value = uint256(keccak256(abi.encodePacked(sha256value, sha256value))); - } - - function getKeccak256Value() view public returns(uint256){ - return afterSha256value; - } - - /** - * sha3 只能在0.4.x版本上使用 - */ - // function sha(string memory sha256value) public returns(uint256){ - // return uint256(sha3(sha256value, "c")); - // } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/SuicideAndSelfdestruct.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/SuicideAndSelfdestruct.sol" deleted file mode 100644 index f4b3c55069..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/10-\351\223\276\344\270\212\345\207\275\346\225\260/SuicideAndSelfdestruct.sol" +++ /dev/null @@ -1,40 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 10-链上函数 - * 1- suicide()已弃用, 请使用 selfdestruct() - * 部署合约账号必须要有balance - * - * @author hudenian - * @dev 2019/12/19 09:57 - * - */ - -contract SuicideAndSelfdestruct { - uint count = 0; - address payable owner; - - constructor() public{ - owner = msg.sender; - } - - function increment() public { - uint step = 10; - if (owner == msg.sender) { - count = count + step; - } - } - - function getCount() view public returns (uint){ - return count; - } - - /** - *0.5.0版本使用新的自杀函数 - */ - function kill() public{ - if (owner == msg.sender) { - selfdestruct(owner); //0.5.0使用的函数 - // suicide(owner); //0.4.25使用的函数(0.5.0废弃的函数) - } - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ConstructorTest.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ConstructorTest.sol" deleted file mode 100644 index 2e2fc6d714..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ConstructorTest.sol" +++ /dev/null @@ -1,34 +0,0 @@ -pragma solidity ^0.7.1; -/** - * constructor必须强制使用constructor声明 - * 且去除同名函数定义,0.4.25版本则通过同名函数定义,且constructor非必须 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract ConstructorTest{ - - uint public count = 0; - - //constructor必须强制使用constructor声明 - constructor(uint _count) public { - count = _count; - } - - function update(uint amount) public returns (address, uint){ - count += amount; - return (msg.sender, count); - } - - //5.查询count - function getCount() public view returns (uint){ - return count; - } - - //0.5.0弃用同名构造函数 - // function constructorTest() external { - // a = 1; - // } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructor.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructor.sol" deleted file mode 100644 index 3f48aafe48..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructor.sol" +++ /dev/null @@ -1,39 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 不允许调用带参数但具有错误参数计数的构造函数。 - * 如果只想在不提供参数的情况下指定继承关系,请不要提供括号 - * - * @author hudenian - * @dev 2019/12/20 09:57 - */ - - -import "./ErrorParamConstructorBase.sol"; - - -/** - * 0.5.0版本可以不指定参数errorParamConstructorBase编译可以通过但是部署失败, - * 指定参数errorParamConstructorBase(10)编译部署成功 - * 0.4.x版本可以不指定参数,并且带括号如:errorParamConstructorBase() - */ -contract ErrorParamConstructor is ErrorParamConstructorBase(10) { - uint public b ; - constructor(uint _b) public { - b = _b; - } - - function update(uint amount) public returns (address, uint){ - b += amount; - return (msg.sender, b); - } - - //查询a - function getA() public view returns (uint){ - return a; - } - - //查询b - function getB() public view returns (uint){ - return b; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructorBase.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructorBase.sol" deleted file mode 100644 index d40563f141..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/ErrorParamConstructorBase.sol" +++ /dev/null @@ -1,18 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 不允许调用带参数但具有错误参数计数的构造函数。 - * 如果只想在不提供参数的情况下指定继承关系,请不要提供括号 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract ErrorParamConstructorBase{ - uint public a ; - - //基类构造函数 - constructor (uint _a) public{ - a = _a; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay1.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay1.sol" deleted file mode 100644 index 18c3803648..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay1.sol" +++ /dev/null @@ -1,24 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 0.5.0不允许在同一继承层次结构中多次指定基类构造函数参数 - * 0.4.x可以同时使用2种方式,但如果2种方式都存在,优先选择修饰符方式 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -import "./ErrorParamConstructorBase.sol"; - -/** -* 方式一:contract mulicPointBaseConstructor is errorParamConstructorBase(10) -* (方式二参考mulicPointBaseConstructorWay2.sol) -*/ -contract MulicPointBaseConstructorWay1 is ErrorParamConstructorBase(10) { - constructor() public {} - - function update(uint amount) public returns (address, uint){ - a += amount; - return (msg.sender, a); - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay2.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay2.sol" deleted file mode 100644 index f6fc1c6fa0..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/MulicPointBaseConstructorWay2.sol" +++ /dev/null @@ -1,30 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 0.5.0不允许在同一继承层次结构中多次指定基类构造函数参数 - * 0.4.x可以同时使用2种方式,但如果2种方式都存在,优先选择修饰符方式 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -import "./ErrorParamConstructorBase.sol"; - -/** -* 方式二:通过派生的构造函数中用类似于修饰符方式调用父类构造函数(只能2选1) -* (方式一参考mulicPointBaseConstructorWay1.sol) -*/ -contract MulicPointBaseConstructorWay2 is ErrorParamConstructorBase { - constructor(uint _y) ErrorParamConstructorBase(_y * _y) public {} - - function update(uint amount) public returns (address, uint){ - a += amount; - return (msg.sender, a); - } - - //查询a - function getA() public view returns (uint){ - return a; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/NoParenthesesConstructor.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/NoParenthesesConstructor.sol" deleted file mode 100644 index 7d8035e170..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/2.\345\274\203\347\224\250\345\205\203\347\264\240\346\265\213\350\257\225/NoParenthesesConstructor.sol" +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 不允许调用没有括号的基类构造函数 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -import "./ErrorParamConstructorBase.sol"; - -//contract Base { -// uint x; -// constructor() public {} -//} - -/** - * 0.5.0版本不允许调用没有括号的基类构造函数(编译不通过) - * 0.4.25版本可以调用基类构造函数 - */ -contract NoParenthesesConstructor is ErrorParamConstructorBase { - constructor(uint _b) ErrorParamConstructorBase(1) public {} -} - -//contract noParenthesesConstructor is errorParamConstructorBase { -// constructor(uint _b) errorParamConstructorBase() public {} -//} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DecimalLiteralsChangeByte.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DecimalLiteralsChangeByte.sol" deleted file mode 100644 index 75d4aced05..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DecimalLiteralsChangeByte.sol" +++ /dev/null @@ -1,33 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 10进制数值不能直接转换成 bytesX类型 - * 必须先转换到与 bytesX相同长度的 uintY,再转换到 bytesX类型 - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - - -contract DecimalLiteralsChangeByte { - - bytes4 public b4; - - function testChange(uint a) public returns(bytes4) { - // bytes8 bt = bytes8(a); //编译出错,10进制数值不能直接转换成 bytesX类型,要像如下进行转换 - uint32 u1 = uint32(a); //先转成uint - - // bytes5 b2 = bytes5(u1);//编译出错, uint32长度与byte4一致,不能转成byte5类型的长度 - - b4 = bytes4(u1);//再转成byte - - return b4; - } - - //5.查询b4的值 - function getB4() public view returns (bytes4){ - return b4; - } - - - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DisallowTypeChange.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DisallowTypeChange.sol" deleted file mode 100644 index 9f47b9106c..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/DisallowTypeChange.sol" +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 因为填充(padding)的时候, bytesX是右填充(低比特位补0), - * 而 uintY是左填充(高比特位补0),二者直接转换可能会导致不符合预期的结果, - * 所以现在当 bytesX和uintY长度大小不一致(即X*8 != Y)时,不能直接转换, - * 必须先转换到相同长度,再转换到相同类型 - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - - -contract DisallowTypeChange { - - uint32 public y; - - function testChange() payable public{ - //由于uint32(4字节)小于bytes8(8字节) - // bytes8 x1; // 8*8 length - // uint32 y1 = uint32(x1); //error, 64 length can not change to 32 length - - // bytes1 a = 255; - // bytes2 b = "aA"; - - bytes8 x = hex"aaaa" ; - bytes4 x4 = bytes4(x); //right,转将长度转成一致 - y = uint32(x4); //right,再进行类型转换 - } - - //查询y的值 - function getY() public view returns (uint32){ - return y; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/HexLiteralsChangeByte.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/HexLiteralsChangeByte.sol" deleted file mode 100644 index d644c8ffb8..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/3.\345\274\203\347\224\250\347\261\273\345\236\213\350\275\254\346\215\242/HexLiteralsChangeByte.sol" +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 16进制数值如果长度与 bytesX不相等,也不能直接转换成 bytesX类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract HexLiteralsChangeByte { - - bytes1 public b1; - - function testChange() payable public returns(bytes1) { - bytes16 b16 = "ab"; - // b16 = 0xff; //编译出错,16进制数值长度与 byte16长度不相等 - - b1 = 0xf1; //16进制数值长度与 byte1长度不相等,正常转换(ff占用8位=1byte) - return b1; - } - - //查询y的值 - function getY() public view returns (bytes1){ - return b1; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/4.\345\274\203\347\224\250\345\255\227\351\235\242\351\207\217\345\217\212\345\220\216\347\274\200/DisallowYears.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/4.\345\274\203\347\224\250\345\255\227\351\235\242\351\207\217\345\217\212\345\220\216\347\274\200/DisallowYears.sol" deleted file mode 100644 index 524b9cc013..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/4.\345\274\203\347\224\250\345\255\227\351\235\242\351\207\217\345\217\212\345\220\216\347\274\200/DisallowYears.sol" +++ /dev/null @@ -1,70 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 弃用字面量及后缀 - * 1-years时间单位已弃用。因为闰年计算容易导致各种问题 - * 2-不允许小数点后不跟数字的数值写法 - * 3-十六进制数字不允许带“0X”前缀,只能用“0x” - * 4-不允许将十六进制数与单位组合 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -contract DisallowYears { - - uint256 time1; - uint256 etherValue; - uint256 hexValue; - uint256 hexComValue; - - - function testyear(uint a) payable public returns(uint time) { - /** - *1-years时间单位已弃用。因为闰年计算容易导致各种问题 - */ - // uint _time = 1 years; //error,编译出错,可以days代替 uint _time = 365 days - time1 = 365 days; //right, - - - /** - * 2-不允许小数点后不跟数字的数值写法 - */ - //uint value=255. ether; //error,编译出错 -// etherValue=255.0 lat;//right - etherValue=255.0 atp;//right - - /** - * 3-十六进制数字不允许带“0X”前缀,只能用“0x” - */ - // uint value=0Xff; //error,编译出错 - hexValue=0xff; //right - - /** - * 4-不允许将十六进制数与单位组合 - */ - // uint value=0xff ether; //error,编译出错 -// hexComValue=0xff*1 lat;//right - hexComValue=0xff*1 atp;//right - } - - //查询time1的值 - function getTime1() public view returns (uint){ - return time1; - } - - //查询ether的值 - function getEtherValue() public view returns (uint){ - return etherValue; - } - - //查询hexValue的值 - function getHexValue() public view returns (uint){ - return hexValue; - } - - //查询time1的值 - function getHexComValue() public view returns (uint){ - return hexComValue; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/6.\345\274\203\347\224\250\350\257\255\346\263\225/InterfaceEnableStructAndenum.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/6.\345\274\203\347\224\250\350\257\255\346\263\225/InterfaceEnableStructAndenum.sol" deleted file mode 100644 index 3590306287..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/6.\345\274\203\347\224\250\350\257\255\346\263\225/InterfaceEnableStructAndenum.sol" +++ /dev/null @@ -1,23 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 09-弃用语法 - * 10-接口允许定义结构体与枚举 - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -interface InterfaceEnableStructAndenum { - - //结构体 - struct Voter { - string name; - uint age; - } - - //枚举 - enum gender{ - MALE, - FEMALE - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/7.\345\255\230\345\202\250\345\214\272\345\237\237/DataLocation.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/7.\345\255\230\345\202\250\345\214\272\345\237\237/DataLocation.sol" deleted file mode 100644 index c22b827ab2..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/7.\345\255\230\345\202\250\345\214\272\345\237\237/DataLocation.sol" +++ /dev/null @@ -1,76 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 06- 存储区域 - * 1-结构体(struct),数组(array), - * 映射(mapping)类型的变量必须显式声明存储区域( storage, memeory, calldata), - * 包括函数参数和返回值变量都必须显式声明 - * 2-external 的函数的引用参数和映射参数需显式声明为 calldata - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - -contract DataLocation { - - struct Person{ - string name; - uint age; - } - - mapping(uint => Person) persons; - - bytes res_data; - - - /** - * 1.结构体(struct)类型的变量入参及返回值必须显示声明存储区域 - */ - function set_struct_person(Person memory _person,uint _id) internal{ - persons[_id] = _person; - } - - - /** - * 2. 数组(array) 类型的变量入参及返回值必须显示声明存储区域 - */ - // function transfer(address _to,uint _value,bytes _data) external returns (bool success){ //数组数据类型存储区域必须声明为calldata - function testBytes(bytes calldata _data) external returns (bytes memory){ - res_data = _data; - return res_data; - } - - /** - * 3.mapping 类型的变量入参及返回值必须声明存储位置 - * 允许internal函数的参数及返回值为mapping指针 - */ - function set_person(mapping(uint=>uint) storage id_age_map,uint _id) internal returns(mapping(uint=>uint) storage) { - Person memory person; - id_age_map[_id]= 23; - return id_age_map; - } - - - /** - * public 函数入参必须显示声明为memory - */ - function getPerson(uint _id) view external returns (string memory,uint){ - return (persons[_id].name,persons[_id].age); - } - - /** - * public 函数入参必须显示声明为memory - */ - function getBytes() view external returns (bytes memory){ - return res_data; - } - - /** - * public 函数入参必须显示声明为memory - */ - function savePerson(uint _id,string memory _name,uint _age) public returns (bool){ - Person memory _person = Person(_name,_age); - set_struct_person(_person,_id); - return true; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAdress.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAdress.sol" deleted file mode 100644 index cedbb4c9f3..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAdress.sol" +++ /dev/null @@ -1,22 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 08-合约和地址 - * 1-contract合约类型不再包括 address类型的成员函数, - * 必须显式转换成 address地址类型才能使用 send(), transfer(), - * balance等与之相关的成员函数/变量成员 - * 2-address地址类型细分为address和address payable, - * 只有address payable可以使用transfer(),send()函数, - * address payable类型可以直接转换为 address类型,反之不能。 - * 但是 address x可以通过 address(uint160(x)),强制转换成 address payable类型。 - * 如果 contract A不具有 payable的fallback函数, 那么 address(A)是 address类型。 - * 如果 contract A具有 payable的fallback函数, 那么 address(A)是 address payable类型 - * 3-msg.sender属于address payable类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract ContractAdress{ - fallback() external {} -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAndAddress.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAndAddress.sol" deleted file mode 100644 index 0671289b60..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractAndAddress.sol" +++ /dev/null @@ -1,65 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 08-合约和地址 - * 1-contract合约类型不再包括 address类型的成员函数, - * 必须显式转换成 address地址类型才能使用 send(), transfer(), - * balance等与之相关的成员函数/变量成员 - * 2-address地址类型细分为address和address payable, - * 只有address payable可以使用transfer(),send()函数, - * address payable类型可以直接转换为 address类型,反之不能。 - * 但是 address x可以通过 address(uint160(x)),强制转换成 address payable类型。 - * 如果 contract A不具有 payable的fallback函数, 那么 address(A)是 address类型。 - * 如果 contract A具有 payable的fallback函数, 那么 address(A)是 address payable类型 - * 3-msg.sender属于address payable类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - -import "./ContractAdress.sol"; -import "./ContractPayable.sol"; - - -contract ContractAndAddress{ - address payable to_pay; - address to; - address payableToAddress; - address payable addressForcePayable; - - function payableOrNot() external { - bool result; - to_pay = address(new ContractPayable()); // 包含回退函数的合约contractPayable是一个 `address payable` - to = address(new ContractAdress()); // `address payable` 可以显示转换成address - // to_pay.transfer(1); // `transfer()` 是 `address payable` 的成员函数 - // result = to_pay.send(1); // `send()` 是 `address payable` 的成员函数 - to = address(new ContractAdress()); // 不包含声明为payable回退函数的合约可以显示转换`address` - // to_pay = address(new B()); // 不包含声明为payable回退函数的合约不可以显示转换成 // `address payable` - // to.transfer(1 ether); // `transfer()` 不是`address`成员函数 - // result = to.send(1 ether); // `send()` 不是`address`成员函数(写法不对) - //address john; - payableToAddress = to_pay; // Right,`address payable` can directly convert to `address` - - addressForcePayable = address(uint160(to)); // Right,`address` can forcibly convert to `address payable` - - } - - //获取payable类型的地址 - function getNonalPayableAddress() view public returns (address){ - return to_pay; - } - - //获取非payable类型的地址 - function getNonalContractAddress() view public returns (address){ - return to; - } - - //获取payable转换成address的地址 - function getPayableToAddress() view public returns (address){ - return payableToAddress; - } - - //获取address强制转换成payable的地址 - function getAddressToPayable() view public returns (address){ - return addressForcePayable; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractPayable.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractPayable.sol" deleted file mode 100644 index e149974932..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/ContractPayable.sol" +++ /dev/null @@ -1,27 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 08-合约和地址 - * 1-contract合约类型不再包括 address类型的成员函数, - * 必须显式转换成 address地址类型才能使用 send(), transfer(), - * balance等与之相关的成员函数/变量成员 - * 2-address地址类型细分为address和address payable, - * 只有address payable可以使用transfer(),send()函数, - * address payable类型可以直接转换为 address类型,反之不能。 - * 但是 address x可以通过 address(uint160(x)),强制转换成 address payable类型。 - * 如果 contract A不具有 payable的fallback函数, 那么 address(A)是 address类型。 - * 如果 contract A具有 payable的fallback函数, 那么 address(A)是 address payable类型 - * 3-msg.sender属于address payable类型 - * - * @author hudenian - * @dev 2019/12/19 09:57 - */ - - -contract ContractPayable{ - - fallback() external { - } - receive() payable external { - - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/MsgSenderBelongToPayable.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/MsgSenderBelongToPayable.sol" deleted file mode 100644 index b3854b3d44..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/8.\345\220\210\347\272\246\345\222\214\345\234\260\345\235\200/MsgSenderBelongToPayable.sol" +++ /dev/null @@ -1,21 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 08-合约和地址 - * 验证msg.sender属于address payable类型 - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - - -contract MsgSenderBelongToPayable { - function getContractAddr() view public returns (address){ - address payable ad= msg.sender;//msg.sender属于address payable - return address(this); - } - - function getMsgSenderAddr() view public returns (address){ - return msg.sender; - } -} - diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/EmitTest.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/EmitTest.sol" deleted file mode 100644 index c4612df2c9..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/EmitTest.sol" +++ /dev/null @@ -1,24 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 09-其它 - * 1-引入emit做为触发事件的关键字而不是做为一个修饰符 - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - -contract EmitTest { - - event EventName(address bidder, uint amount); - - function testEvent() payable public { - // emit将触发一个事件(0.5.0必须使用emit关键字) - emit EventName(msg.sender, msg.value); - } - -//0.4.0版本触发事件可以不需要使用emit关键字 -// function testEvent() payable public { -// // emit将触发一个事件 -// EventName(msg.sender, msg.value); -// } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenum.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenum.sol" deleted file mode 100644 index efaf6de6b9..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenum.sol" +++ /dev/null @@ -1,22 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 09-其它 - * 10-验证0.5.0接口允许定义结构体与枚举(0.4.25版本会报错) - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - -interface InterfaceEnableStructAndenum { - - //结构体 - struct Product{ - ProductCondition condition; - } - - //枚举 - enum ProductCondition{ - New, - Used - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenumImpl.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenumImpl.sol" deleted file mode 100644 index 1ee2ad1772..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_0/9.\345\205\266\345\256\203/InterfaceEnableStructAndenumImpl.sol" +++ /dev/null @@ -1,20 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 09-其它 - * 10-验证0.5.0接口允许定义结构体与枚举(0.4.25版本会报错) - * - * @author hudenian - * @dev 2019/12/24 09:57 - */ - -import "./InterfaceEnableStructAndenum.sol"; - -contract InterfaceEnableStructAndenumImpl is InterfaceEnableStructAndenum{ - - //构建Product结构体传入ProductCondition,Used则返回1,ProductCondition.New返回0 - function getProductCondition() public pure returns (ProductCondition){ - Product memory product = Product(ProductCondition.Used); - return product.condition; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserLib.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserLib.sol deleted file mode 100644 index 7ba7e21734..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserLib.sol +++ /dev/null @@ -1,46 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 1. 允许public和external库函数的参数和返回变量使用mapping类型 - * - * @author hudenian - * @dev 2019/12/20 11:09 - */ - -library UserLib { - // struct _User { - // string name; - // uint age; - // mapping(uint=>string) user; - // } - - // function set_age(uint new_age) internal returns(_User memory) { - // _User memory user; - // user.age =new_age; - // return user; - // } - - /** - * library库中允许包含mapping做为入参与出参 - * - */ - function set_user(mapping(uint=>uint) storage id_age_map,uint _id) public returns(mapping(uint=>uint) storage) { - // _User memory user; - id_age_map[_id]= 23; - return id_age_map; - } - - /** - * library库中允许包含mapping做为入参与出参 - * - */ - // function set_user_inter(mapping(uint=>uint) storage id_age_map,uint _id) external returns(mapping(uint=>uint) storage) { - // _User memory user; - // id_age_map[_id]= 24; - // return id_age_map; - // } - - // function get_age() public { - - // } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserMapping.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserMapping.sol deleted file mode 100644 index 59f8d347ca..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/1-public_external_Library_mapping/UserMapping.sol +++ /dev/null @@ -1,38 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 1. 允许public和external库函数的参数和返回变量使用mapping类型 - * - * @author hudenian - * @dev 2019/12/20 11:09 - */ - -import "./UserLib.sol"; - -contract UserMapping{ - - using UserLib for *; - - - mapping(uint=>uint) id_age_map; - - function setOutUser(uint _age,uint _id) public { - - // uint age = _age; - // 正确的用法:等价于set_age(age); - // age.set_age(); - - id_age_map[_id] =_age; - // mapping(uint=>uint) storage myIdAgeMap = set_user(id_age_map,_id); - - id_age_map.set_user(_id); - - - // return id_age_map[1]; - // 错误用法:get_age()无参数或和第一个参数不匹配,就不能这么调用 - // age.get_age(); - } - - function getOutUser(uint _id) view public returns(uint age){ - return id_age_map[_id]; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/AnimalExternal.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/AnimalExternal.sol" deleted file mode 100644 index 59cfcd571a..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/AnimalExternal.sol" +++ /dev/null @@ -1,38 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证0.5.13版本允许public函数覆盖external函数 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - -contract AnimalExternal { - - string _birthDay; // 生日 - int public _age; // 年龄 - int internal _weight; // 身高 - string private _name; // 姓名 - - constructor() public{ - _age = 29; - _weight = 170; - _name = "Lucky dog"; - _birthDay = "2011-01-01"; - } - //声明external函数 - function birthDay() view external virtual returns (string memory) { - return _birthDay; - } - - function age() view public returns (int) { - return _age; - } - - function height() view internal returns (int) { - return _weight; - } - - function name() view private returns (string memory) { - return _name; - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/PersonPublic.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/PersonPublic.sol" deleted file mode 100644 index dad1983a5d..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/2-\345\205\201\350\256\270public\345\207\275\346\225\260\350\246\206\347\233\226external\345\207\275\346\225\260/PersonPublic.sol" +++ /dev/null @@ -1,20 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 验证0.5.13版本允许public函数覆盖external函数 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ -import "./AnimalExternal.sol"; - -contract PersonPublic is AnimalExternal { - /** - * 0.5.13 允许public函数覆盖external函数 - * - */ - function birthDay() view public override returns (string memory) { - - return "2020-12-15"; - } - -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/3-\346\267\273\345\212\240\345\257\271\345\205\267\346\234\211string\346\210\226bytes\351\224\256\347\261\273\345\236\213\347\232\204mapping\347\232\204\350\216\267\345\217\226\345\231\250\347\232\204\346\224\257\346\214\201/StringmappingSupport.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/3-\346\267\273\345\212\240\345\257\271\345\205\267\346\234\211string\346\210\226bytes\351\224\256\347\261\273\345\236\213\347\232\204mapping\347\232\204\350\216\267\345\217\226\345\231\250\347\232\204\346\224\257\346\214\201/StringmappingSupport.sol" deleted file mode 100644 index d33e6a3b8a..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/3-\346\267\273\345\212\240\345\257\271\345\205\267\346\234\211string\346\210\226bytes\351\224\256\347\261\273\345\236\213\347\232\204mapping\347\232\204\350\216\267\345\217\226\345\231\250\347\232\204\346\224\257\346\214\201/StringmappingSupport.sol" +++ /dev/null @@ -1,43 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 添加对具有string或bytes键类型的mapping的获取器的支持 - * Add support for getters of mappings with string or bytes key types - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - -contract StringmappingSupport { - - - mapping(string =>string) amap; - mapping(bytes9 => string) bmap; - - /** - * 支持string为key的mapping数据存储 - */ - function setStringmapValue(string memory _key,string memory _value) public{ - amap[_key] = _value; - } - - /** - * 支持string为key的mapping数据获取 - */ - function getStringmapValue(string memory _key) public view returns(string memory){ - return amap[_key]; - } - - /** - * 支持byte为key的mapping数据存储 - */ - function setByte32mapValue(bytes9 _key,string memory _value) public{ - bmap[_key] = _value; - } - - /** - * 支持byte为key的mapping数据获取 - */ - function getByte32mapValue(bytes9 _key) public view returns( string memory){ - return bmap[_key]; - } -} diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/4-\345\270\246\346\234\211\346\214\207\345\256\232\345\217\202\346\225\260\347\232\204\345\207\275\346\225\260\350\260\203\347\224\250\345\217\257\344\273\245\345\244\204\347\220\206\351\207\215\350\275\275\345\207\275\346\225\260/Overload.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/4-\345\270\246\346\234\211\346\214\207\345\256\232\345\217\202\346\225\260\347\232\204\345\207\275\346\225\260\350\260\203\347\224\250\345\217\257\344\273\245\345\244\204\347\220\206\351\207\215\350\275\275\345\207\275\346\225\260/Overload.sol" deleted file mode 100644 index 8f764e19a8..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/4-\345\270\246\346\234\211\346\214\207\345\256\232\345\217\202\346\225\260\347\232\204\345\207\275\346\225\260\350\260\203\347\224\250\345\217\257\344\273\245\345\244\204\347\220\206\351\207\215\350\275\275\345\207\275\346\225\260/Overload.sol" +++ /dev/null @@ -1,37 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 带有指定参数的函数调用可以处理重载函数 - * Function calls with named arguments now work with overloaded functions. - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - -contract Overload { - - uint public re; - - function f(uint a,uint b) public returns (uint sum) { - sum = a+b; - return sum; - } - - function f(uint a) public returns (uint sum) { - sum = a; - return sum; - } - - function g() public{ - //0.4.0版本会出错 - uint tp; - tp = f({a:2,b:3}); - tp = f({a:2}); - re= tp; - // return re; - } - - function getRe() view public returns(uint){ - return re; - } - -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCode.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCode.sol" deleted file mode 100644 index f747eb280c..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCode.sol" +++ /dev/null @@ -1,19 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 5. type(C).creationCode():提供对合约的创建 - * https://github.com/ethereum/solidity/issues/5647 - * https://solidity.readthedocs.io/en/v0.5.3/units-and-global-variables.html - * 说明:主要用于内联汇编中 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ -import "./CreationCodeType.sol"; - -contract CreationCode { - bytes public constant creationCodeInfo = type(CreationCodeType).creationCode; - - function getContractName() public view returns(bytes memory contractName){ - return creationCodeInfo; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCodeType.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCodeType.sol" deleted file mode 100644 index 6e43723ed3..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/5-\346\217\220\344\276\233\345\257\271\345\220\210\347\272\246\347\232\204\345\210\233\345\273\272/CreationCodeType.sol" +++ /dev/null @@ -1,16 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 5. type(C).creationCode():提供对合约的创建 - * https://solidity.readthedocs.io/en/v0.5.3/units-and-global-variables.html - * 说明:主要用于内联汇编中 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - - -contract CreationCodeType { - function getValue() public returns (string memory){ - return "hello"; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCode.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCode.sol" deleted file mode 100644 index 6e9bbb0d0d..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCode.sol" +++ /dev/null @@ -1,21 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 6. type(C).runtimeCode():提供运行时代码的访问 - * https://github.com/ethereum/solidity/issues/5647 - * https://solidity.readthedocs.io/en/v0.5.3/units-and-global-variables.html - * 说明:主要用于内联汇编中 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - -import "./RuntimeCodeType.sol"; - -contract RuntimeCode { - - bytes public constant runtimeCodeInfo = type(RuntimeCodeType).runtimeCode; - - function getContractName() public view returns(bytes memory contractName){ - return runtimeCodeInfo; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCodeType.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCodeType.sol" deleted file mode 100644 index df2ff4d7d3..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/6-\346\217\220\344\276\233\350\277\220\350\241\214\346\227\266\344\273\243\347\240\201\347\232\204\350\256\277\351\227\256/RuntimeCodeType.sol" +++ /dev/null @@ -1,16 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 5. type(C).creationCode():提供对合约的创建 - * https://solidity.readthedocs.io/en/v0.5.3/units-and-global-variables.html - * 说明:主要用于内联汇编中 - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - - -contract RuntimeCodeType { - function getValue() public returns (string memory){ - return "hello"; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeName.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeName.sol" deleted file mode 100644 index 3bcd27b31b..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeName.sol" +++ /dev/null @@ -1,15 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * type(C).name():获取合约名称 - * - * @author hudenian - * @dev 2019/12/23 13:57 - */ -contract TypeName { - string public constant name = type(TypeName).name; - - function getContractName() public returns(string memory contractName){ - return name; - } -} \ No newline at end of file diff --git "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeNameFunction.sol" "b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeNameFunction.sol" deleted file mode 100644 index dc8c45c539..0000000000 --- "a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/7-\350\216\267\345\217\226\345\220\210\347\272\246\345\220\215\347\247\260/TypeNameFunction.sol" +++ /dev/null @@ -1,13 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * type(C).name():提供对合约名称的访问 - * - * @author hudenian - * @dev 2019/12/23 13:57 - */ -contract TypeNameFunction { - function f() public pure returns (string memory) { - return type(TypeNameFunction).name; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/8-address_LibraryName/GetLibraryAddress.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/8-address_LibraryName/GetLibraryAddress.sol deleted file mode 100644 index 03947c214d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/8-address_LibraryName/GetLibraryAddress.sol +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 1. address(LibraryName):获取链接库的地址 - * - * @author hudenian - * @dev 2019/12/25 09:57 - * - */ - -import "./UserLibrary.sol"; - -contract GetLibraryAddress{ - - using UserLibrary for *; - - address userLibAddress; - - function setUserLibAddress() public{ - //根据library库的名称获取地址 - userLibAddress = address(UserLibrary); - } - - function getUserLibAddress() view public returns(address adr){ - return userLibAddress; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/8-address_LibraryName/UserLibrary.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/8-address_LibraryName/UserLibrary.sol deleted file mode 100644 index 0ff4da1087..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/2.version_compatible/0_5_13/8-address_LibraryName/UserLibrary.sol +++ /dev/null @@ -1,46 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 1. 允许public和external库函数的参数和返回变量使用mapping类型 - * - * @author hudenian - * @dev 2019/12/20 11:09 - */ - -library UserLibrary { - struct _User { - string name; - uint age; - mapping(uint=>string) user; - } - - //function set_age(uint new_age) internal returns(_User storage) { - // _User memory user; - // user.age =new_age; - // return user; - //} - - /** - * library库中允许包含mapping做为入参与出参 - * - */ - function set_user(mapping(uint=>uint) storage id_age_map,uint _id) public returns(mapping(uint=>uint) storage) { - _User storage user; - id_age_map[_id]= 23; - return id_age_map; - } - - /** - * library库中允许包含mapping做为入参与出参 - * - */ - function set_user_inter(mapping(uint=>uint) storage id_age_map,uint _id) external returns(mapping(uint=>uint) storage) { - _User storage user; - id_age_map[_id]= 24; - return id_age_map; - } - - function get_age() public { - - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/1.BasicDataType/BasicDataTypeConstantContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/1.BasicDataType/BasicDataTypeConstantContract.sol deleted file mode 100644 index 18ec6eb799..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/1.BasicDataType/BasicDataTypeConstantContract.sol +++ /dev/null @@ -1,167 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试合约基本数据类型字面常量 - * - *1、地址类型(Address) - *2、地址字面常量 - *3、有理数常量 - *4、整数字面常量 - *5、字符串字面常量 - *6、十六进制字面常量 - *7、枚举类型 - */ - -contract BasicDataTypeConstantContract { - - /** - *1、地址类型(Address) - *包含两种形式: - *address:保存一个20字节的值(以太坊地址的大小),160位。 - *address payable :可支付地址,与 address 相同,不过有成员函数 transfer 和 send 。 - *------------- 测试点 ---------- - *1、地址类型赋值使用 - *2、地址成员变量: - *address.balance():查询一个地址余额 - *address.transfer():发送货币,[常情况转账、异常情况转账] - *address.send() :transfer 的低级版本。如果执行失败,当前的合约不会因为异常而终止,但 send 会返回 false。 - */ - - //查询地址余额 - function getBalance(address addr) public view returns (uint) { - return addr.balance; - } - - //当前合约的余额 - function getCurrentBalance() public view returns (uint) { - return address(this).balance; - } - - //转账transfer - function goTransfer(address payable addr) public payable { - addr.transfer(msg.value); - } - - //转账send,向当前合约发送货币 - function goSend(address payable addr) public payable returns(uint amount, bool success) { - //msg.sender 全局变量,调用合约的发起方 - //msg.value 全局变量,调用合约的发起方转发的货币量,以wei为单位。 - //send() 执行的结果 - return (msg.value, addr.send(msg.value)); - } - - /** - *2、地址字面常量 - * 通过了地址校验和测试的十六进制字面常量,长度在 39 到 41 个数字的会作为地址字面常量 - */ - function getAddress() public returns (address v) { - -// address b = address("lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2"); - address b = address("atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq"); - return b; - } - - /** - *3、有理数常量 - * 整数、分数(有限小数、无限循环小数) - * - */ - function getValue() public view returns (uint128,uint,uint) { - - uint128 o = 2.5 + 0.5; - uint v = 2e10; - uint l = 3e15; - return (o,v,l); - } - - /** - *4、整数字面常量 - * 整数字面常量由范围在0-9的一串数字组成,表现成十进制。 - * - */ - - function getInt() public returns (int v) { - int a = 6; - return a; - } - - //1)、赋值 - string strA = 'hello'; - string strB = "world"; - - function getStrA() public view returns (string memory) { - return strA; - } - - //2)、转换(字符串是特殊的动态字节数组),字符串不能直接的获取长度和内容,可以通过转换字节数组进行获取 - function getStrALength() public view returns (uint) { - return bytes(strA).length; - } - - function setStrA() public view returns (string memory) { - bytes memory b = bytes(strA); - b[0] = 'a'; - return string(b); - } - - /** - *6、十六进制字面常量: - * 十六进制字面量,以关键字hex打头,后面紧跟用单或双引号包裹的字符串。 - * 由于一个字节是8位,所以一个hex是由两个[0-9a-z]字符组成的 - *--------- 测试点 ---------- - * 十六进制字面常量定义赋值取值操作 - * - */ - - function getHexLiteraA() public view returns(bytes1){ - - bytes1 b = hex"c8";//十进制数字200 <====> 十六进制c8 <===> 二进制11001000 - return b; - } - - function getHexLiteraB() public view returns(bytes2){ - - bytes2 b = hex"01f4"; //十进制数字256 <===> 十六进制1f4 <===> 二进制111110100 - return b; - } - - function getHexLiteraC() public view returns (bytes2, bytes1, bytes1){ - - bytes2 b = hex"01f4";//十进制数字256 <===> 十六进制1f4 <===> 二进制111110100 - return (b, b[0], b[1]); - } - - - /** - *7、枚举类型 - * 枚举是在Solidity中创建用户定义类型的一种方法,其可以从整型显示转换成枚举。 - * 选项从0开始无符号整数值表示。 - *------------ 测试点 -------------------- - *1、定义 - *2、取值 - */ - - enum Season{Spring, Summer, Autumn, Winter} - - function getSeasonA() public view returns(Season){ - return printSeason(Season.Summer); - } - - function getSeasonB() public view returns(Season){ - //Season s = Season(5);//越界 - Season s = Season(3); - return s; - } - - function getSeasonIndex() public view returns(uint){ - uint s = uint(Season.Spring); - return s; - } - - function printSeason(Season s) public view returns(Season) { - return s; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/1.BasicDataType/BasicDataTypeContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/1.BasicDataType/BasicDataTypeContract.sol deleted file mode 100644 index 0643eec333..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/1.BasicDataType/BasicDataTypeContract.sol +++ /dev/null @@ -1,74 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试合约基本数据类型 - *1、整型 - *2、浮点型 - *3、布尔型 - *4、字节数组 - */ - -contract BasicDataTypeContract { - - int a = -1;//正常 - int b = 1;//正常 - uint c = 2;//正常 - //uint d = -3;//异常,编译异常,无符号整数不能赋值有符号整数 - - //2)、验证无符号整数位数 - uint8 x1 = 1; - uint8 x2 = 255;//8位无符号整数取值范围0~255 - //uint8 x3 = 256;//8位数无符号整数溢出,编译报错 - uint16 y1 = 1; - uint16 y2 = 65535;//16位无符号整数取值范围0~65535 - //uint16 y3 = 65535;//16位数溢出,编译报错 - - //无符号8位整数溢出(输入最大值255+1,则溢出显示结果为0) - function addUintOverflow(uint8 a) public pure returns(uint8) { - return a + 1; - } - - //3)、验证有符号整数位数 - int8 z1 = 1; - int8 z2 = 127 ;//8位有符号整数取值范围-128~127 - //int8 z3 = 128;//8位数有符号整数溢出,编译报错 - int8 w1 = -1; - int8 w2 = -128; - //int8 w3 = -129;//8位数有符号整数溢出,编译报错 - - //有符号8位整数溢出(输入最大值127+1,则溢出显示结果-128) - function addIntOverflow(int8 a) public pure returns(int8) { - return a + 1; - } - - - - //1、fixed 有符号固定位浮点数,关键字为 fixedMxN - //fixed f1 = 1.0;//编译异常 - - bool h = true; - bool j = false; - - //1)、验证定长字节数组 - bytes1 b1 = "a"; - bytes1 b2 = bytes1(uint8(1)); - bytes2 b3 = "ab"; - bytes3 b4 = "abc"; - //bytes3 b5 = "abcd";//位数超出,编译异常 - - function getBytes1Length() public view returns (uint) { - return b3.length; - } - - //2)、验证变长字节数组 - bytes k1 = "a"; - bytes k2 = "ab"; - bytes k3 = "abc"; - - function getBytesLength() public view returns (uint) { - return k3.length; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/1.BasicDataType/BasicDataTypeDeleteContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/1.BasicDataType/BasicDataTypeDeleteContract.sol deleted file mode 100644 index a93fc727f4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/1.BasicDataType/BasicDataTypeDeleteContract.sol +++ /dev/null @@ -1,112 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试数据类型操作符delete - * solidity中通过操作符delete用于释放空间,对于某个值类型赋予初始化值 - */ - -contract BasicDataTypeDeleteContract { - - bool boolValue; - uint uintValue; - address addr; - bytes3 bytesValue; - string str; - int intValue; - uint8[] arrayInt; - - enum LightEnum{RED, GREEN, YELLOW} - LightEnum lightEnum; - - struct Person{ - uint8 id; - string name; - } - Person person; - mapping (uint8 => uint8) uintMap; - - /** - * 数据赋值 - */ - function initBasicData() public { - boolValue = true; - uintValue = 2; - addr = msg.sender; - bytesValue = "123"; - str = "hello"; - intValue = 5; - //结构体赋值 - person = Person(1,"Ella"); - //数组赋值 - arrayInt = [1,2,3]; - //mapping赋值 - uintMap[1] = 1; - uintMap[2] = 2; - uintMap[3] = 3; - //枚举赋值 - lightEnum = LightEnum.YELLOW; - } - - // ----- delete基本数据类型 ----- - function deleteBasicData() public { - delete boolValue; - delete uintValue; - delete addr; - delete bytesValue; - delete str; - delete intValue; - } - - function getBasicData() public view returns (bool,uint,address,bytes3,string memory,int) { - return (boolValue,uintValue,addr,bytesValue,str,intValue); - } - - - // ------ delete结构体 ------ - function deleteStruct() public { - - delete person; - } - - function getStruct() public view returns (uint8,string memory) { - return (person.id,person.name); - } - - // ----- delete数组 -------- - function deleteArray() public { - delete arrayInt; - } - - function getArrayLength() public view returns (uint256) { - return arrayInt.length; - } - - // ----- delete枚举 ------ - function deleteEnum() public { - - delete lightEnum; - } - - function getEnum() public view returns (LightEnum) { - return lightEnum; - } - - /** - * ------- delete映射 ---------- - * 映射的特殊性,由于映射的键并不总能有效遍历,所以不能直接删除一个映射 - * 但是,可以按照某一项删除映射 - */ - function deleteMapping() public { - - //直接删除映射,编译异常 - //delete uintMap; - //删除映射中某一项 - delete uintMap[2]; - } - - function getMapping() public view returns (uint8) { - return uintMap[2]; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ContractArray.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ContractArray.sol deleted file mode 100644 index aaca5c89f8..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ContractArray.sol +++ /dev/null @@ -1,26 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author liweic - * @dev 2020/01/11 - * ----------------- 测试点 ------------------------------ - * 验证合约数组 - */ -contract ContractArray { - ContractArray[] y = new ContractArray[](3); - ContractArray[3] x; - function f() public { - ContractArray[3] memory z; - y.push(this); - x[0] = this; - z[0] = this; - } - - function gety() view public returns(ContractArray[] memory){ - return y; - } - - function getx() view public returns(ContractArray){ - return x[0]; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeArrayComplexContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeArrayComplexContract.sol deleted file mode 100644 index 772c219078..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeArrayComplexContract.sol +++ /dev/null @@ -1,41 +0,0 @@ -pragma solidity ^0.7.1; - -contract ReferenceDataTypeArrayComplexContract { - - - uint256[] arrayUint = [1,2]; - - /** - * 验证含数组运算逻辑合约 - * 此函数是加和运算限制: - * 1)、数组长度不可以超过10; - * 2)、数组值将大于1000过滤掉不进行计算; - * 3)、总和大于500将不再进行加和运算 - */ - function sumComplexArray(uint256[] calldata array) external pure returns (uint256) { - - uint i = 0; - uint sum = 0; - while(i < array.length){ - uint idx = i; - //1、数组长度大于10,停止执行计算 - if(idx > 10) - break; - //获取数组中值 - uint x = array[idx]; - //2、数组值将大于1000过滤掉不进行计算 - if(x >= 1000){ - i += 1; - continue; - }else{ - sum += x; - } - //3、总和大于500将不再进行加和运算 - if(sum >= 500) - return sum; - - i++; - } - return sum; - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeArrayContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeArrayContract.sol deleted file mode 100644 index bd39146d21..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeArrayContract.sol +++ /dev/null @@ -1,65 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试引用数据类型 - *1、数组(Array) - *2、结构体(Struct) - */ - -contract ReferenceDataTypeArrayContract { - - //2、数组(Array):一种数据结构,它是存储同类元素的有序集合 - // 1)、数组的声明及初始化及取值(定长数组、可变数组) - // 2)、多维数组 - // 3)、数组成员方法 - // length属性、push()方法 - - - //验证:1)、数组的声明及初始化及取值(定长数组、可变数组) - - //声明定长数组 - uint[5] numArray = [1,2,3,4,5]; - - //声明可变数组 - string[] numArray1 = ["1","2","3","4","5","6"]; - - //new关键字创建动态数组 - uint[] a = new uint[](5); - - function setArray(uint index,uint value) public { - numArray[index] = value; - } - - function getArray(uint index) public view returns (uint value) { - return numArray[index]; - } - - - //验证:2)、多维数组声明及初始化及取值 - - //声明二维数组并赋值、取值 - uint[][] multiArray = [[0,0],[0,1],[0,2],[1,0],[1,1],[1,2]]; - - function setMultiArray() public { - multiArray[1][0] = 100; - } - - function getMultiArray() public view returns (uint value,uint lenght) { - return (multiArray[1][0],multiArray[0].length); - } - - - //验证:3)、数组的属性及方法 - // length属性、push()方法 - - function setArrayPush(string memory x) public { - numArray1.push(x); - } - - function getArrayLength() public view returns (uint) { - return numArray1.length; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeArrayOperatorContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeArrayOperatorContract.sol deleted file mode 100644 index 5d913931d9..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeArrayOperatorContract.sol +++ /dev/null @@ -1,87 +0,0 @@ -pragma solidity ^0.7.1; - -contract ReferenceDataTypeArrayOperatorContract { - - /** - * 验证数组支持的运算符 - * 1)、比较运算符 - * 2)、位运算符 - */ - - //1)、比较运算符:支持的比较运算符有<=,<,==,!=,>=,>,返回的结果是一个bool - function arrayCompare() public view returns (bool,bool,bool,bool,bool) { - - bytes1 a = "a"; - bytes1 b = "b"; - bytes1 c = bytes1(uint8(97)); - - bool r1 = a < b;//返回 ture (ASCII码 Dec a= 97,b = 98) - bool r2 = a > b;//返回 false - bool r3 = a == c;//返回 ture - bool r4 = b != c;//返回 ture - bool r5 = a >= c;//返回 ture - return (r1,r2,r3,r4,r5); - } - - //2)、定长字节数组支持位运算符 &(按位与),|(按位或),^(按位异或),~(按位取反),以及<<(左移位),<<(右移位) - - - //&(按位与)--两个操作数中位都为1,结果才为1,否则结果为0 - function arrayBitAndOperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 b = bytes1(uint8(128));//bin:1000 0000 - bytes1 c = a&b;//hex:0x80,bin:1000 0000,dec:128 - uint8 d = uint8(c); - return (c,d); - } - - - //|(按位或) -- 两个位只要有一个为1,那么结果就是1,否则就为0 - function arrayBitOrOperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 b = bytes1(uint8(128));//bin:1000 0000 - bytes1 c = a|b;//hex:0x81,bin:1000 0001,dec:129 - uint8 d = uint8(c); - return (c,d); - } - - //~(按位取反) -- 如果位为0,结果是1,如果位为1,结果是0 - function arrayBitInverseOperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 c = ~a;//hex:0x7e,bin:0111 1110,dec:126 - uint8 d = uint8(c); - return (c,d); - } - - //^(按位异或) -- 两个操作数的位中,相同则结果为0,不同则结果为1 - function arrayBitXOROperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 b = bytes1(uint8(128));//bin:1000 0000 - bytes1 c = a^b;//hex:0x01,bin:0000 0001,dec:1 - uint8 d = uint8(c); - return (c,d); - } - - //<<(左移位) -- 按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零 - function arrayBitLeftShiftperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 c = a<<1;//hex:0x02,bin:0000 0010,dec:2 - uint8 d = uint8(c); - return (c,d); - } - - //<<(右移位) -- 按二进制形式把所有的数字向右移动对应的位数,低位移出(舍弃),高位的空位补零 - function arrayBitRightShiftperators() public view returns(bytes1,uint8) { - - bytes1 a = bytes1(uint8(129));//bin:1000 0001 - bytes1 c = a>>1;//hex:0x40,bin:0100 0000,dec:64 - uint8 d = uint8(c); - return (c,d); - } - -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeStructContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeStructContract.sol deleted file mode 100644 index b170f00048..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeStructContract.sol +++ /dev/null @@ -1,82 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试引用数据类型 - *1、数组(Array) - *2、结构体(Struct) - */ - -contract ReferenceDataTypeStructContract { - - /** - * 2、结构体 (struct) - * 简述:使用关键字struct定义结构体,struct可以用于映射和数组中作为元素, - * 其本身也可以包含映射和数组类型,不能声明一个struct同时将自身struct作为成员。 - * ----------------- 测试点 ------------------------------ - *1)、定义不同子元素数据(包含基本类型、包含引用数据类型) - *2)、赋值及取值 - */ - - /** - *验证:1)、定义不同子元素数据(包含基本类型、包含引用数据类型) - *--------------------------------------------------------- - * 验证结果:结构体可以包含基本数据类型,引用数据类型,包含结构体(不可以包含自身结构体,否则会编译不过 - */ - - //定义结构体包含基本数据类型 - struct Person { - uint id; - address addr; - uint age; - bool isVIP; - } - - //定义结构体包含引用数据类型 - struct Group { - uint idGroup; - address addrGroup; - mapping(uint => address) addressMap; - string nameGroup; - uint[] pIdArray; - } - - //定义结构体包含结构体(但是结构体不能包含自身) - struct LucyPerson { - uint id; - string name; - Person p; //包含其他结构体 - // LucyPerson lucy; //结构体不能包含自身,否则编译不过 - } - - /** - * 2)、验证结构体赋值及取值 - * --------------------- - * 三种赋值方式 - */ - - //赋值方式一: 按入参顺序赋值 - function initDataStructA() public view returns (uint,address,uint,bool) { - Person memory person = Person(2,msg.sender,25,true); - return (person.id,person.addr,person.age,person.isVIP); - } - - //赋值方式二: 按命名参数赋值 - function initDataStructB() public view returns (uint,address,uint,bool) { - Person memory person = Person({id:2,addr:msg.sender,age:25,isVIP:true}); - return (person.id,person.addr,person.age,person.isVIP); - } - - //赋值方式三:结构体中映射的初始化 - function initDataStructC() public view returns (uint,address,uint,bool) { - Person memory p1;//分配映射空间 - Person memory person = Person({id:2,addr:msg.sender,age:25,isVIP:true}); - p1 = person; - return (p1.id,p1.addr,p1.age,p1.isVIP); - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeStructDeleteContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeStructDeleteContract.sol deleted file mode 100644 index 791248c2be..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeStructDeleteContract.sol +++ /dev/null @@ -1,63 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试结构体嵌套delete操作 - */ - -contract ReferenceDataTypeStructDeleteContract { - - //内嵌结构体 - struct nestedStruct { - uint nestedValue; - mapping (uint => bool) nestedMapping; - } - //外部结构体 - struct topStruct { - nestedStruct nStruct;//声明内嵌结构体 - uint topValue; - mapping (uint => uint) topMapping; - } - uint toDeletInt; - topStruct tStruct;//声明内嵌结构体 - //构造函数初始化 - constructor() public{ - toDeletInt = 5; - //外部结构体赋值 - tStruct.topValue = 10; - tStruct.topMapping[1] = 1; - tStruct.topMapping[2] = 2; - //外部结构体嵌套的内部结构体赋值 - tStruct.nStruct.nestedValue = 3; - tStruct.nStruct.nestedMapping[1] = true; - tStruct.nStruct.nestedMapping[2] = true; - //执行delete - delete tStruct; - delete toDeletInt; - } - - function getToDeleteInt() public view returns (uint) { - return toDeletInt; - } - - function getTopValue() public view returns(uint){ - return tStruct.topValue; - } - - function getTopMapping() public view returns(uint) { - return tStruct.topMapping[1]; - } - - function getNestedValue() public view returns(uint){ - return tStruct.nStruct.nestedValue; - } - - function getNestedMapping() public view returns(bool) { - return tStruct.nStruct.nestedMapping[1]; - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeStructRecursiveContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeStructRecursiveContract.sol deleted file mode 100644 index 10ad05883e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/2.ReferenceData/ReferenceDataTypeStructRecursiveContract.sol +++ /dev/null @@ -1,34 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试结构体递归 - */ - -contract ReferenceDataTypeStructRecursiveContract { - - //定义结构体,嵌套递归结构体数组 - struct Person { - Person[] children; - } - Person person; - //构造函数赋值 - //constructor() public { - // person.children.length = 2; - // person.children[0].children.length = 10; - // person.children[1].children.length = 20; - //} - //获取结构数组长度 - function getStructPersonLength() public view returns (uint256, uint256, uint256) { - Person memory memoryPerson; - memoryPerson = person; - return(memoryPerson.children.length, - memoryPerson.children[0].children.length, - memoryPerson.children[1].children.length); - } -} - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/3.MappingData/MappingArrayDataTypeContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/3.MappingData/MappingArrayDataTypeContract.sol deleted file mode 100644 index 9d012f35ac..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/3.MappingData/MappingArrayDataTypeContract.sol +++ /dev/null @@ -1,39 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试映射功能点 - *映射(Mapping)简述:映射类型,一种键值对的映射关系存储结构 - *----------------- 测试点 ------------------------------ - * 验证mapping数组类型 - */ - -contract MappingArrayDataTypeContract { - - //定义mapping定长数组 - mapping (uint8 => uint8)[2] a; - mapping (uint8 => uint8)[2] b; - //定义赋值内部函数 - function setMappingInternal(mapping (uint8 => uint8)[2] storage mapArray,uint8 key,uint8 value1, - uint8 value2) internal returns (uint8,uint8) { - //获取mapping数组中值 - uint8 oldValue1 = mapArray[0][key]; - uint8 oldValue2 = mapArray[1][key]; - //给mapping数组赋新值 - mapArray[0][key] = value1; - mapArray[1][key] = value2; - return (oldValue1,oldValue2); - } - //调用内部函数进行赋值 - function set(uint8 key,uint8 value_a1,uint8 value_a2,uint8 value_b1,uint8 value_b2) public { - - setMappingInternal(a,key,value_a1,value_a2); - setMappingInternal(b,key,value_b1,value_b2); - } - //查询mapping定长数组值 - function getValueByKey(uint8 key) public view returns (uint8,uint8,uint8,uint8) { - return(a[0][key],a[1][key],b[0][key],b[1][key]); - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/3.MappingData/MappingDataTypeContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/3.MappingData/MappingDataTypeContract.sol deleted file mode 100644 index 7e29de90c4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/3.MappingData/MappingDataTypeContract.sol +++ /dev/null @@ -1,69 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试映射功能点 - *映射(Mapping)简述:映射类型,一种键值对的映射关系存储结构 - *----------------- 测试点 ------------------------------ - *1、定义映射 - * mapping(keyType => keyValue) public maps; - * 键类型--允许除映射、变长数组、合约、枚举、结构体外的几乎所有类型 - * 值类型--值类型没有任何限制,可以为任何类型包含映射类型 - *2、赋值、取值 - * map[keyType] ← 不同数值类型; - */ - - -contract MappingDataTypeContract { - - /** - *验证:1、定义映射 - * 键类型--允许除映射、变长数组、合约、枚举、结构体外的几乎所有类型 - * 值类型--值类型没有任何限制,可以为任何类型包含映射类型 - * --------------------------------------------------------- - *验证结果:1)、mapping定义键类型,包含映射、变长数组、合约、枚举、结构体,会编译异常 - * 2)、mapping定义值类型,没有任何限制 - */ - - enum SizeEnum {XL, XXL, XXXL} - struct PeopleStruct { - uint id; - string name; - bool sex; - } - mapping (int => SizeEnum) map; - uint[] uintArr; - - mapping (uint => address) public addressMap; //正确 - mapping (int => bool) public boolMap;//正确 - mapping (bool => byte) public byteMap;//正确 - mapping (bytes1 => string) public stringMap;//正确 - mapping (bytes => uint) public uintMap;//正确 - mapping (string => int) public intMap;//正确 - mapping (address => bytes) public bytesMap;//正确 - mapping (int => mapping (int => SizeEnum)) public sizeMap;//正确 - mapping (int => PeopleStruct) public peopleMap;//正确 - mapping (int => SizeEnum) public SizeEnumMap;//正确 - - // mapping (SizeEnum => int) public enumMap;//异常 - // mapping (PeopleStruct => bytes10) public structMap;//异常 - // mapping (map => string) public stringMap1;//异常 - // mapping (uintArr => string) public stringMap1;//异常 - - - mapping (uint => string) nameMap; - string[] nameArr = ["Lucy","Ella","Lily"]; - - function addName() public { - for (uint i = 0; i < nameArr.length; i++) { - nameMap[i] = nameArr[i]; - } - } - - function getName(uint index) public view returns (string memory) { - return nameMap[index]; - } - -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/4.TypeConversion/TypeConversionBytesToUintContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/4.TypeConversion/TypeConversionBytesToUintContract.sol deleted file mode 100644 index 978a6d1ab4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/4.TypeConversion/TypeConversionBytesToUintContract.sol +++ /dev/null @@ -1,36 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * - * 测试不同类型转换 - * ----------------- 测试点 ------------------------------ - * 字节转换整型 - */ - -contract TypeConversionBytesToUintContract { - - //字节转换大位整型 - function bytesToBigUint() public view returns(uint64) { - bytes4 a = "abcd";//hex:0x61626364 - uint32 b = uint32(a);//dec:1633837924 - uint64 c = uint64(b);//dec:1633837924 - return c; - } - - //字节转换相同位数整数 - function bytesToSameUint() public view returns(uint8) { - bytes1 a = "a";//hex:0x61 - uint8 b = uint8(a);//dec:97 - return b; - } - - //字节转换小位整型 - function bytesToSmallUint() public view returns (uint16) { - bytes4 a = "abcd";//hex:0x61626364,bin:0‭110 0001 0110 0010 0110 0011 0110 0100‬ - uint32 b = uint32(a);//dec:1633837924 - uint16 c = uint16(b);//dec:25444 ,bin:0110 0011 0110 0100‬ - return c; - } -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/4.TypeConversion/TypeConversionContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/4.TypeConversion/TypeConversionContract.sol deleted file mode 100644 index caeba35e37..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/4.TypeConversion/TypeConversionContract.sol +++ /dev/null @@ -1,99 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试类型转换 - *类型简述: - *1、基本类型之间的转换 - *1)、隐式转换: - * A、在进行运算符运算时,两个不同类型的变量之间,那么编译器将隐式地将其中一个类型转换为另一个类型。 - * B、不同类型之间的赋值 - * 只要值类型之间的转换在语义上行得通,而且转换的过程中没有信息丢失,那么隐式转换基本都是可以实现的, - * 隐式转换可以将一个类型转换成与它相当大小,或者更大的类型,反正不行。 - *2)、显式转换: - * 编译器不会将语法上不可转换的类型进行隐式转换,此时我们要通过显式转换的方式。 - * A、一个类型显式转换成更小的类型,相应的高位将被舍弃 - * B、将一个类型显式转换为更大的类型,则将填充左侧(即在更高阶的位置) - *----------------- 测试点 ------------------------------ - *1、基本类型隐式转换 - * 1)、进行运算符操作 - * 2)、进行赋值操作 - * 3)、不同类型转换 - *2、基本类型显式转换 - * 1)、整数操作:大类型<-->小类型 - * 2)、字节操作:大类型<-->小类型 - */ - -contract TypeConversionContract { - - /** - *1、基本类型隐式转换 - *1)、进行运算符操作 - *2)、进行赋值操作 - */ - - //运算符操作隐式转换 - function sum() public view returns(int16) { - int8 a = 2; - int16 b = 100; - return a + b; - } - - //赋值操作隐式转换 - function conversion() public view returns(uint16) { - uint8 a = 10; - uint16 b = a; - return b; - } - - /** - *2、基本类型显示转换 - */ - //无符合与有符号转换 - function displayConversion() public view returns (int8) { - uint8 a = 1; - int8 b = int8(a); - return b; - } - - //转换成更小的类型,会丢失高位 - function displayConversion1() public view returns (uint16,bytes2) { - uint32 a = 0x12345678; //二进制://‭0001 0010 0011 0100 0101 0110 0111 1000,十进制:305,419,896 - uint16 b = uint16(a); //转换高位截取丢失,即 0101 0110 0111 1000,十进制:22136,十六进制:0x5678 - return (b,bytes2(b)); - } - - //转换成更大的类型,将向左侧添加填充位 - function displayConversion2() public view returns (uint32,bytes4) { - uint16 a = 0x1234; //二进制:0001 0010 0011 0100‬,十进制:4660 - uint32 b = uint32(a);//转换 十进制:4660 ,十六进制:0x00001234 - return (b,bytes4(b)); - } - - //转换到更小的字节类型,会丢失右侧数据 - function displayConversion3() public view returns (bytes1) { - bytes2 a = 0x1234;//二进制:0001 0010 0011 0100‬,十进制:4660 - bytes1 b = bytes1(a);//二进制:0001 0010‬‬,十进制:18,十六进制:0x12 - return b; - } - - //转换为更大的字节类型时,向右添加填充位 - function displayConversion4() public view returns (bytes4) { - bytes2 a = 0x1234;//二进制:0001 0010 0011 0100‬,十进制:4660 - bytes4 b = bytes4(a);//十六进制:0x12340000 - return b; - } - - //只有当字节类型和int类型大小相同时,才可以进行转换 - /* function displayConversion5() public view returns (uint32,uint32,uint8,uint8) { - - bytes2 a = 0x1234; - uint32 b = uint16(a); // b = 0x00001234 - uint32 c = uint32(bytes4(a)); // c = 0x12340000 - uint8 d = uint8(uint16(a)); // d = 0x34 - uint8 e = uint8(bytes1(a)); // e = 0x12 - return (b,c,d,e); - }*/ -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/5.StructsDataType/RecursiveStorageMemoryComplex.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/5.StructsDataType/RecursiveStorageMemoryComplex.sol deleted file mode 100644 index 5fc3b5b614..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/3.data_type/5.StructsDataType/RecursiveStorageMemoryComplex.sol +++ /dev/null @@ -1,52 +0,0 @@ -pragma solidity ^0.7.1; - -contract RecursiveStorageMemoryComplex { - struct Tree { - uint256 data; - Tree[] children; - } - Tree storageTree; - - constructor() public { - storageTree.data = 0x42; - //storageTree.children.length = 2; - storageTree.children[0].data = 0x4200; - storageTree.children[1].data = 0x4201; - //storageTree.children[0].children.length = 3; - for (uint i = 0; i < 3; i++) - storageTree.children[0].children[i].data = 0x420000 + i; - //storageTree.children[1].children.length = 4; - for (uint i = 0; i < 4; i++) - storageTree.children[1].children[i].data = 0x420100 + i; - } - - uint256[] result; - - function countData(Tree memory tree) internal returns (uint256 c) { - c = 1; - for (uint i = 0; i < tree.children.length; i++) { - c += countData(tree.children[i]); - } - } - - function copyFromTree(Tree memory tree,uint256 offset) internal returns (uint256) { - result[offset++] = tree.data; - for (uint i = 0; i < tree.children.length; i++) { - offset = copyFromTree(tree.children[i],offset); - } - return offset; - } - - function run() public returns (uint256[] memory) { - Tree memory memoryTree; - memoryTree = storageTree; - uint256 length = countData(memoryTree); - result = new uint256[](length); - copyFromTree(memoryTree, 0); - return result; - } - - function getRunResult() public view returns(uint256[] memory){ - return result; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/4.variable/01Time_Units/Time.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/4.variable/01Time_Units/Time.sol deleted file mode 100644 index 9033bcdd4c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/4.variable/01Time_Units/Time.sol +++ /dev/null @@ -1,51 +0,0 @@ -pragma solidity ^0.7.1; -/** -* 对 Time 单位进行测试 -* Time的单位关键字有seconds, minutes, hours, days, weeks, years,换算格式如下: -* 1 == 1 seconds -* 1 minutes == 60 seconds -* 1 hours == 60 minutes -* 1 days == 24 hours -* 1 weeks == 7 days -* 1 years == 365 days 0.5.0被弃用,故在0.5.13版本无法使用编译不通过 -* 默认缺省单位是秒 -* @author liweic -* @dev 2019/12/26 18:10 -*/ - -contract Time { - - // 定义全局变量 - uint time; - - //返回当前时间的Unix时间戳和当前块的Unix时间戳差值(本质是一个方法),结果为0 - function testimeDiff() view public returns (uint256){ - return block.timestamp - block.timestamp; - } - - //时间的默认缺省单位是秒 - function testTime() public{ - time = 100000000; - } - - //时间加1秒结果100000001 - function tSeconds() public view returns(uint){ - return time + 1 seconds; - } - - //时间加1分钟结果100000060 - function tMinutes() public view returns(uint){ - return time + 1 minutes; - } - - //时间加一小时结果100003600 - function tHours() public view returns(uint){ - return time + 1 hours; - } - - //时间加一周结果为100604800 - function tWeeks() public view returns(uint){ - return time + 1 weeks; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/4.variable/02PlatON_Units/PlatONToken.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/4.variable/02PlatON_Units/PlatONToken.sol deleted file mode 100644 index 15da89476c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/4.variable/02PlatON_Units/PlatONToken.sol +++ /dev/null @@ -1,37 +0,0 @@ -pragma solidity ^0.7.1; - -/************************************************** -* PlatON的单位关键字有von, kvon, mvon, gvon,szabo,finney,lat,klat,mlat,glat换算格式如下: -* 1 glat = 1 * 10^27 von -* 1 mlat = 1 * 10^24 von -* 1 klat = 1* 10^21 von -* 1 lat = 1* 10^18 von -* 1 finney = 1* 10^15 von -* 1 szabo = 1* 10^12 von -* 1 gvon = 1* 10^9 von -* 1 mvon = 1* 10^6 von -* 1 kvon = 1* 10^3 von -* 默认缺省单位是von -*************************************************/ - -// 对 PlatON 币的几个单位进行测试 -contract PlatONToken { - // 定义全局变量 - uint public platontoken; - - function Token() public{ - platontoken = 1 von; - } - - function Plat() public view returns(uint platontoken){ - //1lat = 1000000000000000000 -// return platontoken + 1 lat; - return platontoken + 1 atp; - } - - function Pvon() public view returns(uint platontoken){ - //默认缺省单位是von - return platontoken + 1; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/Control.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/Control.sol deleted file mode 100644 index daa0ea3258..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/Control.sol +++ /dev/null @@ -1,162 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 控制结构 - * 1. if...else - * 2. do...while - * 3. for循环 - * 4. for循环包含break - * 5. for循环包含continue - * 6. for循环包含return - * 7. 三目运算符 - * - * - * @author hudenian - * @dev 2019/12/25 11:09 - */ - - -contract Control { - - //1.if控制结构执行结果值 - string public ifControlResult; - - //2.doWhile控制结构执行结果值 - uint public doWhileControlResult; - - //3.forControl控制结构执行结果值 - uint public forControlResult; - - //4.forBreakControl控制结构执行结果值 - uint public forBreakControlResult; - - //5.forContinueControl控制结构执行结果值 - uint public forContinueControlResult; - - //6.forReturnControl控制结构执行结果值 - uint public forReturnControlResult; - - //forControl控制结构执行结果值 - string public forThreeControlControlResult; - - - /** - *1. if...else - */ - function ifControl(uint age) public { - if(age < 20){ - ifControlResult = "you are a young man"; - }else if (age < 60){ - ifControlResult = "you are a middle man"; - }else { - ifControlResult = "you are a old man"; - } - } - - function getIfControlResult() view public returns(string memory){ - return ifControlResult; - } - - /** - *2. do...while - */ - function doWhileControl() public returns (uint) { - doWhileControlResult = 0; - uint i = 0; - do{ - doWhileControlResult +=i; - ++i; - }while(i <10); - return doWhileControlResult; - } - - function getdoWhileResult() view public returns(uint){ - return doWhileControlResult; - } - - - - /** - *3. for循环 - */ - function forControl() public returns (uint) { - forControlResult = 0; - for(uint i=0;i<10;i++){ - forControlResult +=i; - } - return forControlResult; - } - - function getForControlResult() view public returns(uint){ - return forControlResult; - } - - /** - *4. for循环包含break - * 满足条件就退出for循环 - */ - function forBreakControl() public returns (uint) { - forBreakControlResult = 0; - for(uint i=1;i<10;i++){ - if(i % 2 == 0){ - break; - } - forBreakControlResult +=i; - } - return forBreakControlResult; - } - - function getForBreakControlResult() view public returns(uint){ - return forBreakControlResult; - } - - /** - * 5. for循环包含continue - * 满足条件的就跳过 - */ - function forContinueControl() public returns (uint) { - forContinueControlResult = 0; - for(uint i=0;i<10;i++){ - if(i % 2 == 0){ - continue; - } - forContinueControlResult +=i; - } - return forContinueControlResult; - } - - function getForContinueControlResult() view public returns(uint){ - return forContinueControlResult; - } - - /** - * 6. for循环包含return - * 满足条件就返回 - */ - function forReturnControl() public returns (uint) { - forReturnControlResult = 0; - for(uint i=1;i<10;i++){ - if(i % 5 == 0){ - return forReturnControlResult; - } - forReturnControlResult +=i; - } - return forReturnControlResult; - } - - function getForReturnControlResult() view public returns(uint){ - return forReturnControlResult; - } - - - /** - * 7. 三目运算符 - */ - function forThreeControlControl(int age) public { - forThreeControlControlResult = age> 20?"less than 20":"more than 20"; - } - - function getForThreeControlControlResult() view public returns(string memory){ - return forThreeControlControlResult; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/DoWhileError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/DoWhileError.sol deleted file mode 100644 index 594877fc0c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/DoWhileError.sol +++ /dev/null @@ -1,68 +0,0 @@ -pragma solidity ^0.7.1; -/** - * dowhile控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 11:09 - */ - - -contract DoWhileError { - - struct S { bool f; } - S s; - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function f() internal view returns (S storage c) { - do { - break; - c = s; - } while(false); - }*/ - - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function g() internal view returns (S storage c) { - do { - if (s.f) { - continue; - c = s; - } - else { - } - } while(false); - }*/ - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function i() internal view returns (S storage c) { - do { - if (s.f) { - continue; - } - else { - c = s; - } - } while(false); - }*/ - - - /** - * 正确 - */ - function doWhileControl() internal view returns (S storage c) { - do {} while((c = s).f); - } - - function getDoWhileControlRes() public view returns(bool){ - S storage doWileS = doWhileControl(); - return doWileS.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/ForError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/ForError.sol deleted file mode 100644 index d2e20ecde2..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/ForError.sol +++ /dev/null @@ -1,55 +0,0 @@ -pragma solidity ^0.7.1; -/** - * for控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/6 18:02 - */ - - -contract ForError { - - struct S { bool f; } - S s; - S s1; - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function f() internal view returns (S storage c) { - for(;; c = s) { - } - }*/ - - - function forControlFirst() internal view returns (S storage c) { - for(c = s;c.f==true;) { - } - } - - function getForControlRes() public view returns(bool){ - S storage forS = forControlFirst(); - return forS.f; - } - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function g() internal view returns (S storage c) { - for(;;) { - c = s; - } - }*/ - - function forControlSecond() internal view returns (S storage c) { - for(; (c = s1).f;) { - } - } - - function getForControlRes1() public view returns(bool){ - S storage forS = forControlSecond(); - return forS.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/ShortCircuitError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/ShortCircuitError.sol deleted file mode 100644 index 69dd1b13f5..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/ShortCircuitError.sol +++ /dev/null @@ -1,55 +0,0 @@ -pragma solidity ^0.7.1; -/** - * && || 短路语法 - * - * @author hudenian - * @dev 2020/1/6 17:38 - */ - -contract ShortCircuitError { - - struct S { bool f; } - S s; - S s1; - - /** - * 第一个条件为false,导致c未初始化,会导致返回空指针错误 - */ -/* function f() internal view returns (S storage c) { - false && (c = s).f; - }*/ - - //right - function f() internal view returns (S storage c) { - (c = s).f && false; - } - - - function getF() public view returns(bool){ - S storage c = f(); - return c.f; - } - - /** - * 第一个条件为true,导致c未初始化,会导致返回空指针错误 - */ - /*function g() internal view returns (S storage c) { - true || (c = s).f; - }*/ - - /*function h() internal view returns (S storage c) { - // expect error, although this is always fine - true && (false || (c = s).f); - }*/ - - //right - function g() internal view returns (S storage c) { - (c = s1).f || true; - } - - function getG() public view returns(bool){ - S storage c = g(); - return c.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/WhileError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/WhileError.sol deleted file mode 100644 index 7ddc19449c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/WhileError.sol +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.7.1; -/** - * while控制结构语法 - * - * - * @author hudenian - * @dev 2020/1/7 11:30 - */ - - -contract WhileError { - - struct S { bool f; } - S s; - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function f() internal view returns (S storage c) { - while(false) { - c = s; - } - }*/ - - function f() internal view returns (S storage c) { - while((c = s).f) { - } - } - - function getWhileControlRes() public view returns(bool){ - S storage whileS = f(); - return whileS.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/ifError.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/ifError.sol deleted file mode 100644 index 3959d8f8b8..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/5.control_struct/ifError.sol +++ /dev/null @@ -1,59 +0,0 @@ -pragma solidity ^0.7.1; -/** - * if控制结构语法 - * - * @author hudenian - * @dev 2020/1/6 18:02 - */ - - -contract ifError { - - struct S { bool f; } - S s; - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function f(bool flag) internal view returns (S storage c) { - if (flag) c = s; - }*/ - - - function ifControl(bool flag) internal view returns (S storage c) { - if (flag) c = s; - else c = s; - } - - function getIfControlRes() public view returns(bool){ - S storage ifS = ifControl(true); - return ifS.f; - } - - /** - * 结构体变量返回的是指针类型变量,可以未分配的情况下返回,导致未定义的异常 - */ - /*function g(bool flag) internal returns (S storage c) { - if (flag) c = s; - else - { - if (!flag) c = s; - else s.f = true; - } - }*/ - - function ifControlSecond(bool flag) internal view returns (S storage c) { - if (flag) c = s; - else - { - if (!flag) c = s; - else c = s; - } - } - - function getIfControlRes1() public view returns(bool){ - S storage ifS = ifControlSecond(true); - return ifS.f; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/AbstractContractAExecuteTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/AbstractContractAExecuteTest.sol deleted file mode 100644 index 171c425d16..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/AbstractContractAExecuteTest.sol +++ /dev/null @@ -1,62 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试抽象合约功能点 - * 抽象合约(Abstract )简述: - * 1、合约函数缺少实现,或者除了包含未实现的函数还包含已经实现的函数。 - * 2、如果合约继承自抽象合约,并且没有去重写实现所有未实现的函数,那么它本身依旧是抽象合约。 - *----------------- 测试点 ------------------------------ - * 情况分类: - * 1、不含任何实现的抽象合约 - * 2、包含部分实现的抽象合约 - * 测试操作: - * 1、抽象合约是否可编译、部署、执行 - * 2、抽象合约被继承,但未被实现抽象方法,是否可正常执行 - */ - -/** - * 1、测试:不含任何实现的抽象合约,是否可编译部署执行 - * ------------------------------------------------ - * 验证结果:抽象合约可以编译、部署,但是不可以执行调用方法 - */ -abstract contract AbstractContractGrandpa { - function name() public virtual view returns (string memory v); -} - -/** - * 1.1、测试:包含部分实现的抽象合约,可编译部署执行 - * ------------------------------------------------ - * 验证结果:抽象合约可以编译、部署,但是不可以执行调用方法 - */ -abstract contract AbstractContractFather { - function fatherName() public virtual view returns (string memory v); - - function fatherAge() public view returns (int v) { - int age = 20; - return age; - } -} - -/** - * 2、测试:抽象合约被继承,但未被实现抽象方法,是否可正常执行 - * ------------------------------------------------ - * 验证结果:抽象合约被继承,但未被实现抽象方法,可以编译、部署,但是不可以执行调用方法 - */ -contract AbstractContractSon is AbstractContractFather { - - function fatherName() public override view returns (string memory v){ - string memory name = "fatherName"; - } - function sonName() public view returns (string memory v) { - string memory name = "sonName"; - return name; - } -} - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/AbstractContractBExecuteTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/AbstractContractBExecuteTest.sol deleted file mode 100644 index e9de7b3aa2..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/AbstractContractBExecuteTest.sol +++ /dev/null @@ -1,72 +0,0 @@ -pragma solidity ^0.7.1; -import "./BaseAbstract.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试抽象合约功能点 - * 抽象合约(Abstract )简述: - * 1、合约函数缺少实现,或者除了包含未实现的函数还包含已经实现的函数。 - * 2、如果合约继承自抽象合约,并且没有去重写实现所有未实现的函数,那么它本身依旧是抽象合约。 - *----------------- 测试点 ------------------------------ - * 测试操作: - * 1、抽象合约被继承,且被实现抽象方法,是否可正常执行 - * 2、普通合约是否可以继承多个抽象合约 - */ - -/** - * 1、抽象合约被继承,且实现抽象方法,是否可正常执行 - * ----------------------------------------------- - * 验证结果:抽象合约被继承并实现了抽象方法后,是可以部署执行的 - */ -contract AbstractContractBSubclass is AbstractContractParentClass { - - //实现父类抽象函数 - function parentName() public override view returns (string memory v){ - return myName; - } - - function bSubName() public view returns (string memory v) { - string memory name = "bSubName"; - return name; - } -} - -/** - * 2、普通合约是否可以继承多个抽象合约,且实现抽象方法,是否可以正常编译部署执行 - * ----------------------------------------------- - * 验证结果:普通合约继承多个抽象合约,可以正常编译执行 - */ - contract AbstractContractCSubclass is AbstractContractASubclass,AbstractContractParentClass { - - //实现ParentClass父类函数 - function parentName() public override view returns (string memory v){ - string memory name = "parentName"; - return name; - } - - //实现ASubclass父类函数 - function aSubName() public override view returns (string memory v){ - return subName; - } - - function setASubName(string memory v) public{ - subName = v; - } - - function cSubName() public view returns (string memory v) { - string memory name = "cSubName"; - return name; - } - } - - - - - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/AbstractContractCExecuteTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/AbstractContractCExecuteTest.sol deleted file mode 100644 index 3442a83690..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/AbstractContractCExecuteTest.sol +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.7.1; -import "./BaseAbstract.sol"; -import "./BaseAbstractParent.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试抽象合约功能点 - * 抽象合约(Abstract )简述: - * 1、合约函数缺少实现,或者除了包含未实现的函数还包含已经实现的函数。 - * 2、如果合约继承自抽象合约,并且没有去重写实现所有未实现的函数,那么它本身依旧是抽象合约。 - *----------------- 测试点 ------------------------------ - * 测试操作: - * 1、抽象合约是否可以继承抽象合约 - * 2、抽象合约是否可以继承接口(但是反之不可以) - */ - -/** - * 1、抽象合约是否可以继承抽象合约 - * ---------------------------------- - * 验证结果: 抽象合约是可以继承抽象合约 - */ - contract AbstractContractFSubclass is AbstractContractDSubclass { - - function parentName() public override view returns (string memory v){ - return myName; - } - - function dSubClassName() public override view returns (string memory dSubName){ - - } - } - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/AbstractContractDExecuteTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/AbstractContractDExecuteTest.sol deleted file mode 100644 index 68a23a9e08..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/AbstractContractDExecuteTest.sol +++ /dev/null @@ -1,64 +0,0 @@ -pragma solidity ^0.7.1; - -import "./BaseAbstractParentInterface.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 测试抽象合约功能点 - * 抽象合约(Abstract )简述: - * 1、合约函数缺少实现,或者除了包含未实现的函数还包含已经实现的函数。 - * 2、如果合约继承自抽象合约,并且没有去重写实现所有未实现的函数,那么它本身依旧是抽象合约。 - *----------------- 测试点 ------------------------------ - * 测试操作: - * 1、抽象合约是否可以继承抽象合约 - * 2、抽象合约是否可以继承接口(但是反之不可以) - */ - -/** - * 1)、抽象合约是否可以继承接口(反之接口是否可以继承抽象合约) - * ---------------------------------- - * 验证结果:抽象合约是可以继承接口(但是反过来接口是不可以继承抽象合约) - */ - contract AbstractContractGSubclass is AbstractContractESubclass { - int public age = 0; - - function setInterAge(int v) public override{ - age = v; - } - - function aInterAge() external override view returns (int){ - return age; - } - } - -//2)、接口是不可以继承抽象合约(编译报错) -/* interface AbstractContractBInterface is AbstractContractParentClass{ - function bInterAge() external view returns (int age); - }*/ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/BaseAbstract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/BaseAbstract.sol deleted file mode 100644 index beb64d5096..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/BaseAbstract.sol +++ /dev/null @@ -1,28 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * 基础合约 - */ -abstract contract AbstractContractParentClass { - - string myName = ""; - function parentName() public virtual view returns (string memory v); - - function setParentName(string memory name) public { - myName = name; - } -} - -abstract contract AbstractContractASubclass { - - string subName = ""; - function aSubName() public virtual view returns (string memory v); - function aSubAge() public view returns (int v) { - int age = 20; - return age; - } -} - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/BaseAbstractInterface.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/BaseAbstractInterface.sol deleted file mode 100644 index ea57698ccb..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/BaseAbstractInterface.sol +++ /dev/null @@ -1,12 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * 基础合约(定义接口) - */ - -interface AbstractContractAInterface{ - function aInterAge() external view returns (int age); -} - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/BaseAbstractParent.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/BaseAbstractParent.sol deleted file mode 100644 index c26bf91d6d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/BaseAbstractParent.sol +++ /dev/null @@ -1,17 +0,0 @@ -pragma solidity ^0.7.1; -import "./BaseAbstract.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 基础合约(抽象合约是否可以继承抽象合约) - */ - -abstract contract AbstractContractDSubclass is AbstractContractParentClass { - - function setParentNameD(string memory name) public { - myName = name; - } - - function dSubClassName() public virtual view returns (string memory dSubName); - } diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/BaseAbstractParentInterface.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/BaseAbstractParentInterface.sol deleted file mode 100644 index b76a2eed6d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/1.abstract/BaseAbstractParentInterface.sol +++ /dev/null @@ -1,12 +0,0 @@ -pragma solidity ^0.7.1; -import "./BaseAbstractInterface.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - * 基础合约(定义抽象合约继承接口) - */ - -abstract contract AbstractContractESubclass is AbstractContractAInterface { - function setInterAge(int v) public virtual; -} diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/2.interface/InterfaceContractALimitTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/2.interface/InterfaceContractALimitTest.sol deleted file mode 100644 index e141d50467..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/2.interface/InterfaceContractALimitTest.sol +++ /dev/null @@ -1,63 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试合约接口功能点 - *接口(interface)简述:接口类似于抽象合约,但是其不能实现任何函数。 - *----------------- 测试点 ------------------------------ - *1、接口限制点测试(5.0以后版本) - *1)、 不能声明构造函数 - *2)、 不能声明状态变量 - *3)、 接口的函数只能声明外部类型(external) - */ - -interface InterfaceContractParent { - - /** - * 验证:1、接口不能声明状态变量 - *----------------------------- - * 验证结果:接口中定义状态变量,会编译失败 - * Variables cannot be declared in interfaces.solc - */ - // uint a = -1; - - /** - * 验证:2、接口不能声明构造函数 - *----------------------------- - * 验证结果:接口中定义构造函数,会编译失败 - */ - /*constructor() public{ - a += 2; - }*/ - - - /** - * 验证:3、接口的函数只能声明外部类型(external) - *------------------------------ - * 验证结果:在5.0以后版本,接口的函数只能声明外部类型(external),否则会编译失败; - * 在5.0以前的版本,使用public - */ - - //5.0以后版本 - function sumExternal(int a,int b) external virtual view returns (int); - - //5.0以前版本,否则Error: Functions in interfaces must be declared external - //function sumPublic(int a,int b) public returns (int); -} - -contract InterfaceContractParentTest is InterfaceContractParent { - - function sumExternal(int a,int b) external override view returns (int) { - return a + b; - } - -} - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/2.interface/InterfaceContractBLimitTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/2.interface/InterfaceContractBLimitTest.sol deleted file mode 100644 index 8ec936198f..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/2.interface/InterfaceContractBLimitTest.sol +++ /dev/null @@ -1,88 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * - * 测试合约接口功能点 - * 接口(interface)简述:接口类似于抽象合约,但是其不能实现任何函数。 - *----------------- 测试点 ------------------------------ - * 1、接口限制点测试(5.0以后版本) - * 1)、 可以声明结构体 - * 2)、 可以声明枚举 - */ -interface InterfaceContractEnum { - - /** - * 验证:1、接口可以声明枚举 - *----------------------------- - * 验证结果:接口中可以正常定义枚举 - */ - enum FreshJuiceSize { - SMALL, - MEDIUM, - LARGE - } - - function getDefaultChoice() external virtual view returns (uint); -} - -contract InterfaceContractEnumTest is InterfaceContractEnum { - - FreshJuiceSize choice; - //默认饮料类型 - FreshJuiceSize defaultChoice = FreshJuiceSize.MEDIUM; - - function setLarge() public { - choice = FreshJuiceSize.LARGE; - } - - function getChoice() public view returns (FreshJuiceSize) { - return choice; - } - - function getDefaultChoice() external override view returns (uint) { - return uint(defaultChoice); - } -} - -interface InterfaceContractStruct { - - /** - * 验证:2、接口可以声明结构体 - *----------------------------- - * 验证结果:接口中可以定义结构体 - */ - struct Book { - int bookID; - string title; - string describe; - } - function getDefaultBookID() external virtual view returns (int); -} - -contract InterfaceContractStructTest is InterfaceContractStruct { - - Book book; - function setBook() public { - book = Book(1,"PlatON","PlatON Describe"); - } - - function getBookID() public view returns (int) { - return book.bookID; - } - - function getDefaultBookID() external override view returns (int) { - if(book.bookID == 0){ - return 0; - } - return book.bookID; - } -} - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/2.interface/InterfaceContractInheritTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/2.interface/InterfaceContractInheritTest.sol deleted file mode 100644 index d1ce51404d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/2.interface/InterfaceContractInheritTest.sol +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - *测试合约接口功能点 - *接口(interface)简述:接口类似于抽象合约,但是其不能实现任何函数。 - *----------------- 测试点 ------------------------------ - *1、接口被继承情况测试 - *1)、 普通合约继承多个接口 - *2)、 接口无法继承接口 - *3)、 接口无法继承其他合约(在抽象函数已经验证过此问题,估此处不再验证) - */ -interface InterfaceContractInheritOne { - function sum(uint a, uint b) external virtual view returns (uint); -} - -interface InterfaceContractInheritTwo { - function reduce(uint c, uint d) external virtual view returns (uint); -} - -/** - *验证:1)、普通合约是否可以继承多个接口 - *----------------------------------- - *验证结果:普通合约可以继承多个接口 - */ -contract InterfaceContractInheritMultipleTest is InterfaceContractInheritOne, - InterfaceContractInheritTwo { - - function sum(uint a, uint b) external override view returns (uint) { - return a + b; - } - - function reduce(uint c, uint d) external override view returns (uint) { - return c - d; - } - - - -} - -/** - * 验证:2)、 接口是否可以继承接口 - * ------------------------------- - * 验证结果:接口是不可以继承接口的,无法编译通过 - */ - -/* interface InterfaceContractInheritTest is InterfaceContractInheritOne { - - function multiply(uint e, uint f) external view returns (uint); - }*/ - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractAMultipleTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractAMultipleTest.sol deleted file mode 100644 index 96128ac250..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractAMultipleTest.sol +++ /dev/null @@ -1,61 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - *1、多重继承:合约可以继承多个合约,也可以被多个合约继承 - *验证: 1)、多重合约继承重名问题,继承顺序很重要,是否遵循最远继承原则 - * --------------------------------------------------------------- - *验证结果:多重合约继承,如果父类合约有同名函数,则遵循最远继承原则。 - */ -contract InheritContractParentOneClass { - - function getDate() public virtual view returns (uint) { - return 1; - } -} - -contract InheritContractParentTwoClass { - - function getDate() public virtual view returns (uint) { - return 2; - } -} - -contract InheritContractAMutipleClass is InheritContractParentTwoClass,InheritContractParentOneClass { - - function getDate() public override(InheritContractParentTwoClass, InheritContractParentOneClass) view returns (uint) { - return InheritContractParentTwoClass.getDate(); - } - - function callGetDateA() public view returns (uint) { - return getDate(); - } -} - -contract InheritContractBMutipleClass is InheritContractParentOneClass,InheritContractParentTwoClass { - - function getDate() public override(InheritContractParentOneClass, InheritContractParentTwoClass) view returns (uint) { - return InheritContractParentOneClass.getDate(); - } - - function callGetDateB() public view returns (uint) { - return getDate(); - } -} - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractBMultipleTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractBMultipleTest.sol deleted file mode 100644 index 1ea240d4e0..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractBMultipleTest.sol +++ /dev/null @@ -1,69 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - *1、多重继承:合约可以继承多个合约,也可以被多个合约继承 - * 验证:2)、当继承多个合约时,这些父合约中不允许出现相同的函数名,事件名,修改器名,或互相重名。 - * 另外,隐藏情况,默认状态变量的getter函数导致的重名。 - *-------------------------------------------- - * 验证结果:当继承多个合约时,父类重名函数与修饰器、事件与修饰器、默认getter函数名同名,会编译异常 - */ - -contract InheritContractAParentBase { - address public owner;//编译器自动为所有public 状态变量创建getter函数 - modifier ownd1(){ - if (msg.sender == owner) - _; - } - - function getAddressA() public view returns (address) { - return msg.sender; - } -} - -contract InheritContractBParentBase { - address owner2; - modifier ownd2() { - if (msg.sender == owner2) - _; - } - - function getAddressB() public view returns (address) { - return msg.sender; - } - //1、同名函数名与修饰器,编译异常 - /* function ownd1() public view returns (address) { - return msg.sender; - }*/ - - //2、同名修饰器与事件,编译异常 - // event ownd1(address addr); - - //3、默认状态变量 owner的getter函数导致的重名,编译异常 - /* function owner() public view returns (address) { - return msg.sender; - }*/ -} - -contract InheritContractParentMutipleTest is InheritContractBParentBase,InheritContractAParentBase { - function sum() public view { - - } -} - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractCMultipleTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractCMultipleTest.sol deleted file mode 100644 index c5d7d3a802..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractCMultipleTest.sol +++ /dev/null @@ -1,39 +0,0 @@ -pragma solidity ^0.7.1; -import "./InheritContractAMultipleTest.sol"; - -/** - * @author qudong - * @dev 2019/12/23 - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - * - *验证:2、多重继承(父类合约存在父子关系),如果继承的合约之间有父子关系,是否必须遵循先父到子的继承顺序 - *------------------------------- - *验证结果:多重继承(父类合约存在父子关系),合约继承必须遵循先父到子的继承顺序,否则会编译异常。 - */ - - contract InheritContractParentThreeClass is InheritContractParentTwoClass { - - function getDataThree() public view returns (uint) { - return 3; - } -} - -contract InheritContractSubclass is InheritContractParentTwoClass,InheritContractParentThreeClass { - - function getSubData() public view returns (uint) { - return 4; - } -} - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractOverloadComplexTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractOverloadComplexTest.sol deleted file mode 100644 index ba1f5d37fe..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractOverloadComplexTest.sol +++ /dev/null @@ -1,68 +0,0 @@ -pragma solidity ^0.7.1; - -/** - - * @author qudong - * @dev 2019/12/23 - * - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - *4、合约函数重载(Overload)复杂情况 - **/ - -contract InheritContractOverloadBaseBase { - uint public x; - uint public y; - function init(uint a, uint b) public virtual{ - x = b; - y = a; - } - function init(uint a) public virtual{ - x = a + 1; - } - function getX() public view returns (uint) { - return x; - } - function getY() public view returns (uint) { - return y; - } -} - -contract InheritContractOverloadBase is InheritContractOverloadBaseBase { - function init(uint a, uint b) public override{ - x = a; - y = b; - } - function init(uint a) public override{ - x = a; - } -} - -contract InheritContractOverloadChild is InheritContractOverloadBase { - function initBase(uint c) public { - InheritContractOverloadBase.init(c); - } - function initBase(uint c, uint d) public { - InheritContractOverloadBase.init(c, d); - } - function initBaseBase(uint c) public { - InheritContractOverloadBaseBase.init(c); - } - function initBaseBase(uint c, uint d) public { - InheritContractOverloadBaseBase.init(c, d); - } -} - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractOverloadTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractOverloadTest.sol deleted file mode 100644 index 229274d339..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractOverloadTest.sol +++ /dev/null @@ -1,46 +0,0 @@ -pragma solidity ^0.7.1; - -/** - - * @author qudong - * @dev 2019/12/23 - * - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - - -/** - *4、合约函数重载(Overload):合约可以有多个同名函数,可以有不同输入参数。 - * 重载解析和参数匹配 - **/ - -contract InheritContractOverload { - - uint sumInt; - function sum(uint a,uint b) public pure returns(uint sumInt) { - sumInt = a + b; - } - - function sum(uint a,uint b, uint c) public pure returns(uint sumInt) { - sumInt = a + b + c; - } - - function getDataA() public view returns(uint) { - return sum(1,2); - } - - function getDataB() public view returns(uint) { - return sum(1,2,3); - } - - -} - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractPassParamTest.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractPassParamTest.sol deleted file mode 100644 index 0ac2fd4e6f..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/6.oop/3.inherit/InheritContractPassParamTest.sol +++ /dev/null @@ -1,50 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * @author qudong - * @dev 2019/12/23 - * - *测试合约继承功能点 - *继承(is)简述:合约支持多重继承,即当一个合约从多个合约继承时, - *在区块链上只有一个合约被创建,所有基类合约的代码被复制到创建合约中。 - *----------------- 测试点 ------------------------------ - *1、多重继承情况 - *2、多重继承(合约存在父子关系) - *3、继承支持传参 - *4、合约函数重载(Overload) - */ - -/** - *验证:3、继承支持传参(继承中基类构造函数的传参) - *------------------------------------------- - * 验证结果:继承支持传参两种方式 - */ - - contract InheritContractBase { - - uint a = 0; - constructor(uint x) public { - a = x; - } - } - -//给基类构造函数传参方式一 -contract InheritContractASub is InheritContractBase(2) { - function getDataA() public view returns (uint) { - return a; - } -} - -//给基类构造函数传参方式二 -contract InheritContractBSub is InheritContractBase { - uint b; - constructor () InheritContractBase(3) public { - uint y = 1; - b = y + a; - } - - function getDataB() public view returns(uint){ - return b; - } -} - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/7.event/EventCallContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/7.event/EventCallContract.sol deleted file mode 100644 index 47aee672ca..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/7.event/EventCallContract.sol +++ /dev/null @@ -1,63 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 事件验证 - * (1)event关键字声明事件验证 - * (2)indexed关键字定义事件索引验证 - * (3)emit关键字触发事件验证 - * (4)anonymous关键字定义匿名事件验证 - * (5)函数内多事件监听验证 - * (6)函数内多匿名事件监听验证 - * @author Albedo - * @dev 2019/12/19 - **/ -contract EventCallContract { - //事件声明(事件名称以大写字母开头,以区别于函数) - event Increment(address who); - //添加索引(如果indexed声明索引超过3个,编译异常:超过3个indexed标记的元素) - event Deposit( - address indexed _from, - // bytes32 indexed _idl, - // bytes32 indexed _idm, - uint _value - ); - - //匿名事件 - event Anonymous(uint256 _id) anonymous; - event Anonymous2(uint256 _id) anonymous; - //一般事件触发 - function emitEvent() public returns (uint256 count){ - //emit 事件触发 - emit Increment(msg.sender); - count += 1; - } - - function indexedEvent() public returns (uint256 count){ - //emit 事件触发 - emit Deposit(msg.sender, 12); - count += 1; - } - - function anonymousEvent() public returns (uint256 count){ - count += 1; - //emit 事件触发 - emit Anonymous(count); - } - //外部:JavaScript API配合来回调--定义事件及触发事件——使用 Web3 监听事件 - - event BoolEvent(bool result); - //函数多事件监听验证 - function testBool() public{ - emit BoolEvent(false); - emit BoolEvent(true); - emit Increment(msg.sender); - emit Anonymous(12); - emit Deposit(msg.sender, 12); - } - - //函数多匿名事件监听验证 - function testMultiAnonymous() public{ - emit Anonymous(12); - emit Anonymous2(13); - emit Anonymous(14); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/7.event/EventIndexedContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/7.event/EventIndexedContract.sol deleted file mode 100644 index 4d380e83ef..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/7.event/EventIndexedContract.sol +++ /dev/null @@ -1,58 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * 事件声明类型验证 - * (1)一维数组索引 - * (2)二维数组但一维确定长度 索引 - * (3)字符串索引 - * (4)枚举索引 - * (4)复杂索引 - * (5)匿名事件索引认证 - * @author Albedo - * @dev 2020/01/06 - **/ -contract EventIndexedContract { - //int索引验证 - event MinusEvent(int indexed minus); - function testMinus(int value) public{ - emit MinusEvent(value); - } - uint[] uintArray = [0,1,2,3,4]; - //一维数组索引测试 - event OneDimensionalArrayEvent(uint[] indexed array); - function testOneDimensionalArray() public{ - emit OneDimensionalArrayEvent(uintArray); - } - uint[2][] multiArray = [[0,0],[0,1],[0,2],[0,3],[0,4],[0,5]]; - - event TwoDimensionalArrayEvent(uint[2][] indexed array); - //二维数组索引 - function testTwoDimensionalArray() public{ - emit TwoDimensionalArrayEvent(multiArray); - } - string str = "1234567890097865432112345678900987654321123456789009764354666663242444444444475831546856"; - event StringEvent(string indexed str); - //string类型索引 - function testStr() public{ - emit StringEvent(str); - } - enum ActionChoices { GoLeft, GoRight, GoStraight, SitStill } - event EnumEvent(ActionChoices indexed choices); - - //测试枚举类型索引 - function testEnum() public{ - emit EnumEvent(ActionChoices.GoLeft); - } - - event ComplexIndexedEvent(uint[] indexed array,ActionChoices indexed choice,string indexed str); - //复杂类型索引 - function testComplex() public{ - emit ComplexIndexedEvent(uintArray,ActionChoices.GoLeft,str); - } - - event AnonymousIndexedNum(uint indexed u1,uint indexed u2,uint indexed u3,uint indexed u4) anonymous; - //匿名事件索引数量测试 - function testAnonymousIndexed() public{ - emit AnonymousIndexedNum(1,2,3,4); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/7.event/EventTypeContract.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/7.event/EventTypeContract.sol deleted file mode 100644 index bb3a0e85f8..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/7.event/EventTypeContract.sol +++ /dev/null @@ -1,42 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * 事件声明类型验证 - * (1)一维数组 - * (2)二维数组但是二维确定长度 - * (3)字符串类型 - * (3)枚举类型 - * @author Albedo - * @dev 2020/01/06 - **/ -contract EventTypeContract { - - uint[] uintArray = [0,1,2,3,4]; - event OneDimensionalArrayEvent(uint[] array); - //测试一维数组类型声明事件 - function testOneDimensionalArray() public{ - emit OneDimensionalArrayEvent(uintArray); - } - uint[2][] multiArray = [[0,0],[0,1],[0,2],[0,3],[0,4],[0,5]]; - - event TwoDimensionalArrayEvent(uint[2][] array); - //测试二维数组声明事件 - function testTwoDimensionalArray() public{ - emit TwoDimensionalArrayEvent(multiArray); - } - string str = "1234567890097865432112345678900987654321123456789009764354666663242444444444475831546856"; - event StringEvent(string str); - //测试string类型声明事件 - function testStr() public{ - emit StringEvent(str); - } - - enum ActionChoices { GoLeft, GoRight, GoStraight, SitStill } - event EnumEvent(ActionChoices choices); - - //测试枚举类型声明事件 - function testEnum() public{ - emit EnumEvent(ActionChoices.GoLeft); - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/8.exception_handle/AssertHandle.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/8.exception_handle/AssertHandle.sol deleted file mode 100644 index 2b2afa632d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/8.exception_handle/AssertHandle.sol +++ /dev/null @@ -1,94 +0,0 @@ -pragma solidity ^0.7.1; -/** - * assert(bool condition)函数验证: - * 如果条件不满足,则使当前交易没有效果 ,gas正常消耗,用于检查内部错误 - * 1.数组越界访问产生生异常验证,如i >= x.length 或 i < 0时访问x[i] - * 2.定长bytesN数组越界访问产生异常验证 - * 3.被除数为0或取模运算产生异常验证 - * 4.对一个二进制移动一个负的值产生异常验证 - * 5.整数进行可以显式转换为枚举时,如果将过大值,负值转为枚举类型则抛出异常 - * 6.调用内部函数类型的零初始化变量验证 - * 7.用assert的参数为false产生异常验证 - * @author Albedo - * @dev 2019/12/30 - **/ - -library ArrayUtils { - // they will be part of the same code context - function map(uint[] memory self, function (uint) pure returns (uint) f) - internal - pure - returns (uint[] memory r) - { - r = new uint[](self.length); - for (uint i = 0; i < self.length; i++) { - r[i] = f(self[i]); - } - } - - function reduce( - uint[] memory self, - function (uint, uint) pure returns (uint) f - ) - internal - pure - returns (uint r) - { - r = self[0]; - for (uint i = 1; i < self.length; i++) { - r = f(r, self[i]); - } - } - - function range(uint length) internal pure returns (uint[] memory r) { - r = new uint[](length); - for (uint i = 0; i < r.length; i++) { - r[i] = i; - } - } -} - -contract AssertHandle { - - enum ActionChoices { GoLeft, GoRight, GoStraight, SitStill } - //1.如果越界,或负的序号值访问数组,如i >= x.length 或 i < 0时访问x[i] - function outOfBoundsException() public { - //编译异常:数组越界访问 - //uint8[3] memory balance = [1, 2, 3]; - //balance[4]=12; - //balance[-1]=12; - } - - //2.如果序号越界,或负的序号值时访问一个定长的bytesN - function noOutOfBoundsException() public { - //编译异常:定长bytesN越界访问 - // bytes4 b4=0x12345678; - // b4[4]; - // b4[-1]; - } - - //3.被除数为0或取模运算 - function dividendZeroException() public { - //编译异常:被除数为0和取模运算 - // uint result = 12/0; - // uint result = 12% 0; - } - - //4.移位负数位 - function binaryMoveMinusException() public { - //编译异常:移位负数位 - // uint8 uu=2; - // uu<<-2; - } - - //5.整数进行可以显式转换为枚举时,如果将过大值,负值转为枚举类型则抛出异常 - function intChangeException(int8 param) public returns (ActionChoices choice){ - choice = ActionChoices(param); - } - - //7.如果调用assert的参数为false - function paramException(uint param) public { - assert(param < 10); - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/8.exception_handle/RequireMessageHandle.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/8.exception_handle/RequireMessageHandle.sol deleted file mode 100644 index 62794ece7c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/8.exception_handle/RequireMessageHandle.sol +++ /dev/null @@ -1,14 +0,0 @@ -pragma solidity ^0.7.1; -/** - * require(bool condition, string message)函数(该函数可以自定义message信息)验证 - * 如果条件不满足则撤销状态更改,用于检查由输入或者外部组件引起的错误 - * 此时为require异常返回异常信息,非运行时异常检测 - * @author Albedo - * @dev 2019/12/19 - **/ -contract RequireMessageHandle { - //如果调用require的参数为false - function paramException(uint param) public { - require(param<10,unicode"整型大小比较异常"); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/8.exception_handle/RevertHandle.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/8.exception_handle/RevertHandle.sol deleted file mode 100644 index cd8be46b51..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/8.exception_handle/RevertHandle.sol +++ /dev/null @@ -1,19 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 1.revert()函数————终止运行并撤销状态更改————验证 - * 2.revert(string reason)函数————终止运行并撤销状态更改,并提供一个解释性的字符串————验证 - * - * @author Albedo - * @dev 2019/12/30 - **/ -contract RevertHandle { - //revert()终止运行并撤销状态更改 - function revertCheck(uint param) public { - if (param > 10) {revert();} - } - - //revert(string reason) 终止运行并撤销状态更改,并提供一个解释性的字符串 - function revertReasonCheck(uint param) public { - if (param > 10) {revert("check catch exception");} - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/9.library/LibraryStaticUsing.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/9.library/LibraryStaticUsing.sol deleted file mode 100644 index aaeb98cc2a..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/9.library/LibraryStaticUsing.sol +++ /dev/null @@ -1,29 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * 库引用类似引用static方法验证 - * 解释:如果L作为库的名称,f()是库L的函数,则可以通过L.f()的方式调用 - * - * @author Albedo - * @dev 2019/12/25 - **/ - -library BaseStaticLibrary { - // - function compare(uint self, uint value) public returns (bool) - { - if (self bool) flags;} - - // 注意第一个参数是“storage reference”类型,因此在调用中参数传递的只是它的存储地址而不是内容。 - // 这是库函数的一个特性。如果该函数可以被视为对象的方法,则习惯称第一个参数为 `self` 。 - function insert(Data storage self, uint value) public returns (bool) - { - if (self.flags[value]) - return false; - // 已经存在 - self.flags[value] = true; - return true; - } -} - -contract LibraryUsingFor { - event Result(bool result); - - - //using A for B - using BaseLibrary for BaseLibrary.Data; - BaseLibrary.Data knownValues; - - function register(uint value) public returns (bool result){ - result=knownValues.insert(value); - emit Result(result); - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/9.library/SafeMathLibrary.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/9.library/SafeMathLibrary.sol deleted file mode 100644 index 378679f7f7..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/9.library/SafeMathLibrary.sol +++ /dev/null @@ -1,114 +0,0 @@ -pragma solidity ^0.7.1; - -/** - * 安全算术运算 - *(1)最大值 - *(2)最小值 - *(3)平均值 - *(4)无符号整型相加 - *(5)无符号整型相减 - *(6)无符号整型相乘 - *(7)无符号整型相除 - *(8)无符号整型取模运算 - * - * @author Albedo - * @dev 2020/01/08 - **/ -library SafeMathLibrary { - - /** - * 获取最大值 - */ - function max(uint256 a, uint256 b) internal pure returns (uint256) { - return a >= b ? a : b; - } - - /** - * 获取最小值 - */ - function min(uint256 a, uint256 b) internal pure returns (uint256) { - return a < b ? a : b; - } - - /** - * 获取平均值 - */ - function average(uint256 a, uint256 b) internal pure returns (uint256) { - return (a / 2) + (b / 2) + ((a % 2 + b % 2) / 2); - } - /** - * .两个无符号整型相加 - */ - function add(uint256 a, uint256 b) internal pure returns (uint256) { - uint256 c = a + b; - require(c >= a, "SafeMath: addition overflow"); - return c; - } - - /** - * 两个无符号整型相减 - */ - function sub(uint256 a, uint256 b) internal pure returns (uint256) { - require(b <= a, "SafeMath: subtraction overflow"); - uint256 c = a - b; - - return c; - } - - - /** - * 两个无符号整型相乘 - */ - function mul(uint256 a, uint256 b) internal pure returns (uint256) { - if (a == 0) { - return 0; - } - - uint256 c = a * b; - require(c / a == b, "SafeMath: multiplication overflow"); - - return c; - } - - /** - * 两个无符号整型相除,并检测除数为0异常 - * a 被除数 - * b 除数 - */ - function div(uint256 a, uint256 b) internal pure returns (uint256) { - require(b > 0, "SafeMath: division by zero"); - uint256 c = a / b; - return c; - } - - /** - * 两个无符号整型相除,并自定义除数为0异常信息 - * a 被除数 - * b 除数 - */ - function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { - require(b > 0, errorMessage); - uint256 c = a / b; - return c; - } - - /** - * 两个无符号整型除余运算,并检测除数为0异常 - * a 被除数 - * b 除数 - */ - function mod(uint256 a, uint256 b) internal pure returns (uint256) { - require(b != 0, "SafeMath: modulo by zero"); - return a % b; - } - - /** - * 两个无符号整型除余运算,并自定义除数为0异常信息 - * a 被除数 - * b 除数 - */ - function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { - require(b != 0, errorMessage); - return a % b; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/9.library/SafeMathMock.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/9.library/SafeMathMock.sol deleted file mode 100644 index b63533838c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/9.library/SafeMathMock.sol +++ /dev/null @@ -1,51 +0,0 @@ -pragma solidity ^0.7.1; - -import "./SafeMathLibrary.sol"; -/** - * 安全算术运算验证 - *(1)最大值 - *(2)最小值 - *(3)平均值 - *(4)无符号整型相加 - *(5)无符号整型相减 - *(6)无符号整型相乘 - *(7)无符号整型相除 - *(8)无符号整型取模运算 - * - * @author Albedo - * @dev 2020/01/08 - **/ -contract SafeMathMock { - //最大值验证 - function max(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.max(a, b); - } - //最小值验证 - function min(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.min(a, b); - } - //平均值验证 - function average(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.average(a, b); - } - //乘运算 - function mul(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.mul(a, b); - } - //除运算 - function div(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.div(a, b); - } - //减法运算 - function sub(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.sub(a, b); - } - //加法运算 - function add(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.add(a, b); - } - //取模运算 - function mod(uint256 a, uint256 b) public pure returns (uint256) { - return SafeMathLibrary.mod(a, b); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/dappContract/AtomicSwap.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/dappContract/AtomicSwap.sol deleted file mode 100644 index 4da6760309..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/dappContract/AtomicSwap.sol +++ /dev/null @@ -1,167 +0,0 @@ -pragma solidity ^0.7.1; - -library SafeMath { - function add(uint a, uint b) internal pure returns (uint c) { - c = a + b; - require(c >= a, "SafeMath add wrong value"); - return c; - } - function sub(uint a, uint b) internal pure returns (uint) { - require(b <= a, "SafeMath sub wrong value"); - return a - b; - } -} - -contract Destructable { - address payable private owner; - - constructor() public { - owner = msg.sender; - } - - modifier isDestructable { - require(msg.sender == owner, "only owner"); - require(address(this).balance == 0, "balance is not zero"); - _; - } - - function destruct() public isDestructable { - selfdestruct(owner); - } -} - -contract AtomicSwap is Destructable { - using SafeMath for uint; - - enum State { Empty, Initiated, Redeemed, Refunded } - - struct Swap { - bytes32 hashedSecret; - bytes32 secret; - address payable initiator; - address payable participant; - uint refundTimestamp; - uint value; - uint payoff; - State state; - } - - event Initiated( - bytes32 indexed _hashedSecret, - address indexed _participant, - address _initiator, - uint _refundTimestamp, - uint _value, - uint _payoff - ); - - event Added( - bytes32 indexed _hashedSecret, - address _sender, - uint _value - ); - - event Redeemed( - bytes32 indexed _hashedSecret, - bytes32 _secret - ); - - event Refunded( - bytes32 indexed _hashedSecret - ); - - mapping(bytes32 => Swap) public swaps; - - modifier isRefundable(bytes32 _hashedSecret) { - require(block.timestamp >= swaps[_hashedSecret].refundTimestamp, "refundTimestamp has not passed"); - _; - } - - modifier isRedeemable(bytes32 _hashedSecret, bytes32 _secret) { - require(block.timestamp < swaps[_hashedSecret].refundTimestamp, "refundTimestamp has already passed"); - require(sha256(abi.encodePacked(sha256(abi.encodePacked(_secret)))) == _hashedSecret, "secret is not correct"); - _; - } - - modifier isInitiated(bytes32 _hashedSecret) { - require(swaps[_hashedSecret].state == State.Initiated, "swap for this hash is empty or already spent"); - _; - } - - modifier isInitiatable(bytes32 _hashedSecret, uint _refundTimestamp) { - require(swaps[_hashedSecret].state == State.Empty, "swap for this hash is already initiated"); - require(_refundTimestamp > block.timestamp, "refundTimestamp has already passed"); - _; - } - - modifier isAddable(bytes32 _hashedSecret) { - require(block.timestamp <= swaps[_hashedSecret].refundTimestamp, "refundTime has already come"); - _; - } - - function initiate (bytes32 _hashedSecret, address payable _participant, uint _refundTimestamp, uint _payoff) - public payable isInitiatable(_hashedSecret, _refundTimestamp) - { - swaps[_hashedSecret].value = msg.value.sub(_payoff); - swaps[_hashedSecret].hashedSecret = _hashedSecret; - swaps[_hashedSecret].initiator = msg.sender; - swaps[_hashedSecret].participant = _participant; - swaps[_hashedSecret].refundTimestamp = _refundTimestamp; - swaps[_hashedSecret].payoff = _payoff; - swaps[_hashedSecret].state = State.Initiated; - - emit Initiated( - _hashedSecret, - swaps[_hashedSecret].participant, - msg.sender, - swaps[_hashedSecret].refundTimestamp, - swaps[_hashedSecret].value, - swaps[_hashedSecret].payoff - ); - } - - function add (bytes32 _hashedSecret) - public payable isInitiated(_hashedSecret) isAddable(_hashedSecret) - { - swaps[_hashedSecret].value = swaps[_hashedSecret].value.add(msg.value); - - emit Added( - _hashedSecret, - msg.sender, - swaps[_hashedSecret].value - ); - } - - function redeem(bytes32 _hashedSecret, bytes32 _secret) - public isInitiated(_hashedSecret) isRedeemable(_hashedSecret, _secret) - { - swaps[_hashedSecret].secret = _secret; - swaps[_hashedSecret].state = State.Redeemed; - - emit Redeemed( - _hashedSecret, - _secret - ); - - swaps[_hashedSecret].participant.transfer(swaps[_hashedSecret].value); - if (swaps[_hashedSecret].payoff > 0) { - msg.sender.transfer(swaps[_hashedSecret].payoff); - } - - delete swaps[_hashedSecret]; - } - - function refund(bytes32 _hashedSecret) - public isInitiated(_hashedSecret) isRefundable(_hashedSecret) - { - swaps[_hashedSecret].state = State.Refunded; - - emit Refunded( - _hashedSecret - ); - - swaps[_hashedSecret].initiator.transfer(swaps[_hashedSecret].value.add(swaps[_hashedSecret].payoff)); - - delete swaps[_hashedSecret]; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/evm_assembly_contract_call/precompiled.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/evm_assembly_contract_call/precompiled.sol deleted file mode 100644 index c074f08df7..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/evm_assembly_contract_call/precompiled.sol +++ /dev/null @@ -1,149 +0,0 @@ -pragma solidity ^0.7.1; - -/* -network.platon.test.evm 跨合约调用 系统合约 -*/ -contract precompiled { - - bytes callDatacopyValue; - bytes32 callBigModExpValue; - uint256[2] callBn256AddValues; - bytes32[2] callBn256ScalarMulValues; - bytes32 callBn256PairingValue; - address feePayerAddr; - bool validateSenderFlg; - - //Address 0x01 - function callEcrecover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) public pure returns (address) { - return ecrecover(hash, v, r, s); - } - - - //Address 0x02: sha256(data) - function callSha256(bytes memory data) public pure returns(bytes32 result){ - return sha256(data); - } - - - //Address 0x03: ripemd160(data) - function callRipemd160(bytes memory data) public pure returns(bytes32 result){ - return ripemd160(data); - } - - - //pass 0x04 - function callDatacopy(bytes memory data) public returns (bytes memory) { - bytes memory ret = new bytes(data.length); - assembly { - let len := mload(data) - if iszero(call(gas(), 0x04, 0, add(data, 0x20), len, add(ret,0x20), len)) { - invalid() - } - } - callDatacopyValue = ret; - return ret; - } - - function getCallDatacopyValue() public view returns(bytes memory){ - return callDatacopyValue; - } - - //pass 0x05 - function callBigModExp(bytes32 base, bytes32 exponent, bytes32 modulus) public returns (bytes32 result) { - assembly { - // free memory pointer - let memPtr := mload(0x40) - - // length of base, exponent, modulus - mstore(memPtr, 0x20) - mstore(add(memPtr, 0x20), 0x20) - mstore(add(memPtr, 0x40), 0x20) - - // assign base, exponent, modulus - mstore(add(memPtr, 0x60), base) - mstore(add(memPtr, 0x80), exponent) - mstore(add(memPtr, 0xa0), modulus) - - // call the precompiled contract BigModExp (0x05) - let success := call(gas(), 0x05, 0x0, memPtr, 0xc0, memPtr, 0x20) - switch success - case 0 { - revert(0x0, 0x0) - } default { - result := mload(memPtr) - } - } - callBigModExpValue = result; - } - - - function getCallBigModExpValue() public view returns(bytes32 ){ - return callBigModExpValue; - } - - //pass 0x06 - function callBn256Add(uint256 ax, uint256 ay, uint256 bx, uint256 by) public returns (uint256[2] memory result) { - uint256[4] memory input; - input[0] = ax; - input[1] = ay; - input[2] = bx; - input[3] = by; - assembly { - let success := call(gas(), 0x06, 0, input, 0x80, result, 0x40) - switch success - case 0 { - revert(0,0) - } - } - callBn256AddValues = result; - } - - - function getCallBn256AddValues() public view returns(uint256[2] memory result ){ - return callBn256AddValues; - } - - - //0x07 - function callBn256ScalarMul(bytes32 x, bytes32 y, bytes32 scalar) public returns (bytes32[2] memory result) { - bytes32[3] memory input; - input[0] = x; - input[1] = y; - input[2] = scalar; - assembly { - let success := call(gas(), 0x07, 0, input, 0x60, result, 0x40) - switch success - case 0 { - revert(0,0) - } - } - callBn256ScalarMulValues = result; - } - - function getCallBn256ScalarMulValues() public view returns(bytes32[2] memory result ){ - return callBn256ScalarMulValues; - } - - //Address 0x08: bn256Pairing(a1, b1, a2, b2, a3, b3, ..., ak, bk) - function callBn256Pairing(bytes memory input) public returns (bytes32 result) { - // input is a serialized bytes stream of (a1, b1, a2, b2, ..., ak, bk) from (G_1 x G_2)^k - uint256 len = input.length; - require(len % 192 == 0); - assembly { - let memPtr := mload(0x40) - let success := call(gas(), 0x08, 0, add(input, 0x20), len, memPtr, 0x20) - switch success - case 0 { - revert(0,0) - } default { - result := mload(memPtr) - } - } - callBn256PairingValue =result; - } - - function getCallBn256PairingValue() public view returns(bytes32 result ){ - return callBn256PairingValue; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/guessing/Guessing.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/guessing/Guessing.sol deleted file mode 100644 index ff95b3a99f..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/guessing/Guessing.sol +++ /dev/null @@ -1,218 +0,0 @@ -pragma solidity ^0.7.1; -/** - * 竞猜合约 - * 当用户往竞猜合约发起转账操作,满足(单笔>=5LAT), - * 每笔交易给对应地址分配一个抽奖号码(一个地址多笔交易可分配多个抽奖号码),并记录地址转入数; - * - */ -contract Guessing { - - uint256 public endBlock; //竞猜截止块高 - bytes32 public block_hash;//竞猜截止块高的块hash - bool public guessingClosed = false; //竞猜是否已开奖 -// uint256 public baseUnit = 5 lat; //最小转金额 - uint256 public baseUnit = 5 atp; //最小转金额 - - uint256 public balance; //竞猜奖池总金额 - uint256 public averageAmount; //每个中奖号码对应获奖金额 - mapping(address => uint256) public gussingerLat; //每个竞猜者发起转账的金额 - mapping(uint256 =>address payable ) public indexOfgussinger; //每个抽奖号码对应的竞猜者地址 - mapping(address => uint[]) public gussingerCodes; //每个竞猜者所有的抽奖号码集合 - mapping(address => uint256 ) public winnerMap; //中奖者对应中奖号码个数 - uint public indexKey = 1; - address[] public winnerAddresses; //中奖者地址数组 - address public createAddress;//合约创建者 - uint public postfix = 0; //中奖尾号 - - - //竞猜成功通知 - event FundTransfer(address _backer, uint _amount, bool _isSuccess); - - //记录已接收的LAT通知 - event CurrentBalance(address _msgSenderAddress, uint _balance); - - /** - * 初始化构造函数 - * - * @param _endBlock 竞猜截止块高(达到此块高后不能再往合约转账) - */ - constructor (uint _endBlock)public { - createAddress = msg.sender; - endBlock = _endBlock; - } - - /** - * - * 默认函数,可以向合约直接打款 - */ - fallback() external { - } - receive() payable external { - guessing(msg.value,msg.sender); - } - - /** - * 判断是否已经过了竞猜截止限期 - */ - modifier beforeDeadline() { if (endBlock >= block.number) _; } - - - /** - * 竞猜 - */ - function guessingWithLat() public payable{ - guessing(msg.value,msg.sender); - } - - //竞猜内部实现 - function guessing(uint amount,address payable msgsender) beforeDeadline internal{ - //转账金额要大于5lat - require(amount >= baseUnit); - - gussingerCodes[msgsender].push(indexKey); - - indexOfgussinger[indexKey] = msgsender; - indexKey++; - - //竞猜人的金额累加 - gussingerLat[msgsender] += amount; - - //竞猜总额累加 - balance += amount; - - //竞猜成功通知 - emit FundTransfer(msgsender, amount, true); - } - - /** - * 判断是否已经过了竞猜截止限期 - */ - modifier afterDeadline() { if (block.number > endBlock ) _; } - - /** - * 开奖操作 - * 如果当前区块超过了截止日期 - * - * 参数A:基于开奖截止区块的hash转成uint256 - * - * 参数B:本期内参与的总票数 - * - * 结果C :A 对 B取余 - * - * 方法:A % B = C - * - * - * 1.参数B,1<总票数<99,取余数C的个位数,个位数相同的为中奖;例如余数的12,取个位数,个位数是2的为中奖票 - * 2.参数B,100<总票数<9999,取余数C的两位数(个位十位),两位数相同的为中奖;例如余数是123,取两位数,票数后两位23的为中奖票 - * 3.参数B,总票数>10000,取余数C的三位数(个位十位百位),三位数相同的为中奖;例如余数是1234,取三位数,票数后三位带234的为中奖票 - * - */ - function draw(bytes32 _block_hash) public afterDeadline { - //开奖只能操作一次,且只有合约创建者可以开奖 - if(!guessingClosed && createAddress == msg.sender && indexKey > 1){ - uint256 random = uint256(keccak256(abi.encodePacked(_block_hash))); - uint drawIndex = random%indexKey; - - if(indexKey<100){ - getwinners(drawIndex,10); - }else if(indexKey<10000){ - getwinners(drawIndex,100); - }else{ - getwinners(drawIndex,1000); - } - - //每个中奖者可以分到的金额 - averageAmount = balance/winnerAddresses.length; - address payable tempAddress; - //向中奖者转账 - for(uint256 j=0;j block.number - 257 && _blocknumber < block.number - 1); - return blockhash(_blocknumber); - } - - - /** - * 获取当前参与者所有幸运号码 - */ - function getMyGuessCodes() view public returns (uint[] memory){ - return gussingerCodes[msg.sender]; - } - - /** - * 获幸运尾号 - */ - function getPostfix() view public returns (uint){ - require(guessingClosed == true); - return postfix; - } - - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/guessing/PlatonUnit.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/guessing/PlatonUnit.sol deleted file mode 100644 index 383b5dfdd9..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/guessing/PlatonUnit.sol +++ /dev/null @@ -1,35 +0,0 @@ -pragma solidity ^0.7.1; - -contract PlatonUnit { - - uint256 public balance; //合约金额 - - /** - * 默认函数 - * - * 默认函数,可以向合约直接打款 - */ -// function () payable external { -// balance = add(balance,msg.value); -// } - - fallback() external { - } - receive() payable external { - balance = add(balance,msg.value); - } - - - //累加函数 - function add(uint256 a, uint256 b) internal pure returns (uint256) { - uint256 c = a + b; - assert(c >= a); - return c; - } - - //查看当前合约余额 - function getBalance() view public returns (uint256){ - return address(this).balance; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/innerContract/PlatonInner.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/innerContract/PlatonInner.sol deleted file mode 100644 index 8bfe3f6139..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/innerContract/PlatonInner.sol +++ /dev/null @@ -1,33 +0,0 @@ -pragma solidity ^0.7.1; - -/* - * network.platon.test.evm 跨合约调用 Platon系统合约 - * @author hudenian - * @dev 2020/02/25 -*/ -contract PlatonInner { - - bytes returnValue; - - function assemblyCallppos(bytes memory data,address addr) public { - uint256 len = data.length; - uint retsize; - bytes memory resval; - assembly { - if iszero(call(gas(), addr, 0, add(data, 0x20), len, 0, 0)) { - invalid() - } - retsize := returndatasize() - } - resval = new bytes(retsize); - assembly { - returndatacopy(add(resval, 0x20), 0, returndatasize()) - } - returnValue = resval; - } - - function getReturnValue() public view returns(bytes memory ){ - return returnValue; - } - -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/new_instructions/Inheritance.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/new_instructions/Inheritance.sol deleted file mode 100644 index 55f17021cf..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/new_instructions/Inheritance.sol +++ /dev/null @@ -1,61 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity ^0.7.1; - -/* Graph of inheritance - A - / \ - B C - / \ / -F D,E - -*/ - -contract InheritanceA { - function foo() public pure virtual returns (string memory) { - return "InheritanceA"; - } -} - -// Contracts inherit other contracts by using the keyword 'is'. -contract InheritanceB is InheritanceA { - // Override A.foo() - function foo() public pure virtual override returns (string memory) { - return "InheritanceB"; - } -} - -contract InheritanceC is InheritanceA { - // Override A.foo() - function foo() public pure virtual override returns (string memory) { - return "InheritanceC"; - } -} - -// Contracts can inherit from multiple parent contracts. -// When a function is called that is defined multiple times in -// different contracts, parent contracts are searched from -// right to left, and in depth-first manner. - -contract InheritanceD is InheritanceB, InheritanceC { - // D.foo() returns "C" - // since C is the right most parent contract with function foo() - function foo() public pure override(InheritanceB, InheritanceC) returns (string memory) { - return super.foo(); - } -} - -contract InheritanceE is InheritanceC, InheritanceB { - // E.foo() returns "B" - // since B is the right most parent contract with function foo() - function foo() public pure override(InheritanceC, InheritanceB) returns (string memory) { - return super.foo(); - } -} - -// Inheritance must be ordered from “most base-like” to “most derived”. -// Swapping the order of A and B will throw a compilation error. -contract InheritanceF is InheritanceA, InheritanceB { - function foo() public pure override(InheritanceA, InheritanceB) returns (string memory) { - return super.foo(); - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/new_instructions/Instructions.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/new_instructions/Instructions.sol deleted file mode 100644 index 686bbd41d4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/new_instructions/Instructions.sol +++ /dev/null @@ -1,28 +0,0 @@ -pragma solidity ^0.7.1; - -contract Instructions { - - function getChainId() public view returns (uint) { - uint256 chainId; - assembly { chainId := chainid() } - return chainId; - } - - function getSelfBalance() public view returns (uint) { - uint256 ret; - assembly { ret := selfbalance() } - return ret; - } - - function test(uint x, uint y) public returns (uint) { - return test_mul(2,3); - } - - function test_mul(uint x, uint y) public returns (uint) { - return multiply(x,y); - } - - function multiply(uint x, uint y) public returns (uint) { - return x * y; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/new_instructions/ShadowingInheritedStateVariables.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/new_instructions/ShadowingInheritedStateVariables.sol deleted file mode 100644 index 2be7618635..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/new_instructions/ShadowingInheritedStateVariables.sol +++ /dev/null @@ -1,17 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity ^0.7.1; - -contract ShadowingInheritedStateVariablesSuper { - string public name = "Contract ShadowingInheritedStateVariablesSuper"; - - function getName() public view returns (string memory) { - return name; - } -} - -contract ShadowingInheritedStateVariablesSuperChild is ShadowingInheritedStateVariablesSuper { - // This is the correct way to override inherited state variables. - constructor() public { - name = "Contract ShadowingInheritedStateVariablesSuperChild"; - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/new_instructions/TryCatch.sol b/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/new_instructions/TryCatch.sol deleted file mode 100644 index 25275a0bf5..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/evm/0.7.1/new_instructions/TryCatch.sol +++ /dev/null @@ -1,33 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity ^0.7.1; - -contract CalledContract { - function someFunction() external pure{ - // Code that reverts - revert(); - } -} - - -contract TryCatcher { - - event CatchEvent(); - event SuccessEvent(); - - CalledContract public externalContract; - - constructor() public { - externalContract = new CalledContract(); - } - - function execute() external { - - try externalContract.someFunction() { - // Do something if the call succeeds - emit SuccessEvent(); - } catch { - // Do something in any other case - emit CatchEvent(); - } - } -} \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/CallValueFunction.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/CallValueFunction.cpp deleted file mode 100644 index ddaa0fa8ad..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/CallValueFunction.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证内置的一些与链交互的函数 -* 函数platon_call_value -*/ - -CONTRACT CallValueFunction : public platon::Contract{ - public: - - ACTION void init() {} - - CONST uint8_t get_platon_call_value() { - uint8_t result; - uint8_t val[32]; - result = platon_call_value(val); - return result; - } -}; - -PLATON_DISPATCH(CallValueFunction, (init)(get_platon_call_value)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/CallerFunction.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/CallerFunction.cpp deleted file mode 100644 index 9668639676..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/CallerFunction.cpp +++ /dev/null @@ -1,25 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证内置的一些与链交互的函数 -* 函数platon_caller -*/ -CONTRACT CallerFunction : public platon::Contract{ - public: - - ACTION void init() {} - - CONST std::string get_platon_caller() { - bytes addr; - addr.resize(20); - ::platon_caller(addr.data()); - Address address(addr); - //DEBUG("caller", "addr", address.toString()); - return Address(addr).toString(); - } -}; - -PLATON_DISPATCH(CallerFunction, (init)(get_platon_caller)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/CoinbaseFunction.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/CoinbaseFunction.cpp deleted file mode 100644 index 8311632d91..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/CoinbaseFunction.cpp +++ /dev/null @@ -1,25 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证内置的一些与链交互的函数 -* 函数platon_origin -*/ - - -CONTRACT CoinbaseFunction : public platon::Contract{ - public: - - ACTION void init() {} - - CONST std::string get_platon_coinbase() { - bytes addr; - addr.resize(20); - ::platon_coinbase(addr.data()); - return Address(addr).toString(); - } -}; - -PLATON_DISPATCH(CoinbaseFunction, (init)(get_platon_coinbase)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/ComputeDate.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/ComputeDate.cpp deleted file mode 100644 index 168fb2503b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/ComputeDate.cpp +++ /dev/null @@ -1,28 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证计算方法在合约里的实现 -* 计算两个日期之间相差的月份 -* @author liweic -*/ - -CONTRACT ComputeDate : public platon::Contract{ - public: - ACTION void init(){} - - CONST int MonthsBetween2Date(const std::string& date1, const std::string& date2){ - //取出日期中的年月日 - int year1, month1; - int year2, month2; - year1 = atoi((date1.substr(0,4)).c_str()); - month1 = atoi((date1.substr(5,2)).c_str()); - year2 = atoi((date2.substr(0,4)).c_str()); - month2 = atoi((date2.substr(5,2)).c_str()); - return 12*(year2-year1)+ month2 - month1; - } -}; - -PLATON_DISPATCH(ComputeDate, (init)(MonthsBetween2Date)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/CryptographicFunction.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/CryptographicFunction.cpp deleted file mode 100644 index 64f76347f5..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/CryptographicFunction.cpp +++ /dev/null @@ -1,43 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * 内置函数 - * platon_ecrecover - * platon_ripemd160 - * platon_sha256 - */ -CONTRACT CryptographicFunction:public platon::Contract{ - public: - ACTION void init() {} - - // platon_ecrecover - CONST Address call_platon_ecrecover(const h256 &hash, const bytes &signature){ - Address result; - int32_t res = platon_ecrecover(hash,signature,result); - return result; - } - - // platon_ripemd160 - CONST std::vector call_platon_ripemd160(const bytes &data){ - std::vector result; - result.resize(20); - platon_ripemd160(data, result.data()); - return result; - } - - // platon_sha256 - CONST std::vector call_platon_sha256(const bytes &data) { - std::vector result; - result.resize(32); - platon_sha256(data, result.data()); - return result; - } -}; - - -PLATON_DISPATCH(CryptographicFunction, (init)(call_platon_ecrecover)(call_platon_ripemd160)(call_platon_sha256)) - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/InnerFunction.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/InnerFunction.cpp deleted file mode 100644 index 6816f6d2a1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/InnerFunction.cpp +++ /dev/null @@ -1,108 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * 针对系统链上函数的调用 - */ -CONTRACT InnerFunction:public platon::Contract{ - public: - ACTION void init() {} - - /// 获取GasPrice - CONST std::string gas_price(){ - u128 price = platon_gas_price(); - return std::to_string(price); - } - - /// 获取区块高度 - CONST uint64_t block_number(){ - return platon_block_number(); - } - - /// 获取gasLimit - CONST uint64_t gas_limit() { - return platon_gas_limit(); - } - - /// 获取当前块的时间戳 - CONST uint64_t timestamp() { - return platon_timestamp(); - } - - - /* - /// 主币转账 - /// define: int32_t platon_transfer(const Address& addr, const Energon& amount); - ACTION void transfer(const std::string& addr, uint64_t amount) { - if(amount == 0){ - DEBUG("Transfer failed", "address", addr, "amount", amount); - return; - } - platon_transfer(Address(addr), Energon(amount)); - } - - /// 获取消息携带的value(fix) - /// define: u256 platon_call_value(); - CONST std::string value() { - u256 val = platon_call_value(); - return to_string(val); - } - - /// sha3操作 - /// define: h256 platon_sha3(const bytes& data); - CONST std::string sha3(const std::string& str) { - bytes data; - data.insert(data.begin(), str.begin(), str.end()); - h256 hash = platon::platon_sha3(data); - return hash.toString(); - } - - /// 设置函数返回值 - /// define: template void platon_return(const T& t); - CONST void rreturn() { - std::string str = "hello"; - platon_return(str); - } - - /// 终止交易 panic, 交易完成,合约执行异常 - /// define: void platon_panic(); - ACTION void panic() { - platon_panic(); - } - - /// 终止交易 revert - /// define: void platon_revert(); - ACTION void revert(int64_t flag) { - if(flag == 1){ - platon_revert(); - } - } - - /// 合约销毁 destroy, 销毁后检测余额 - /// define: bool platon_destroy(const Address& addr); - ACTION void destroy(const std::string& addr) { - platon_destroy(Address(addr)); - } - - /// 消息的原始发送者origin - /// define: Address platon_origin(); - CONST std::string origin() { - Address ori = platon::platon_origin(); - return ori.toString(); - } - - /// compile test - /// summary: compile success. - std::string compile(){ - return "compile"; - }*/ - -}; - -// (transfer)(value)(sha3)(rreturn)(panic)(revert)(destroy)(origin)(compile) -// (gas)(nonce)(block_hash)(coinbase) -PLATON_DISPATCH(InnerFunction, (init)(gas_price)(block_number)(gas_limit)(timestamp)) - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/InnerFunction_1.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/InnerFunction_1.cpp deleted file mode 100644 index 3fba95a94c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/InnerFunction_1.cpp +++ /dev/null @@ -1,51 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * 针对系统链上函数的调用 - */ -CONTRACT InnerFunction_1:public platon::Contract{ - public: - ACTION void init() {} - - /// 获取当前交易发送的Gas - CONST uint64_t gas() { - return platon_gas(); - } - - /// 获取消息发送者的nonce - CONST uint64_t nonce() { - return platon_caller_nonce(); - } - - /// 获取指定区块高度的哈希 - CONST std::string block_hash(uint64_t bn) { - h256 bhash = platon_block_hash(bn); - return bhash.toString(); - } - - /// 获取当前旷工地址 - CONST Address coinbase() { - return platon_coinbase(); - } - - /// 获取指定地址的余额(bug) - CONST std::string balanceOf(const std::string& addr) { - auto address_info = make_address(addr); - if(address_info.second){ - Energon e = platon_balance(address_info.first); - return std::to_string(e.Get()); - }else{ - return ""; - } - - } - -}; - - -PLATON_DISPATCH(InnerFunction_1, (init)(gas)(nonce)(block_hash)(coinbase)(balanceOf)) - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/InnerFunction_2.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/InnerFunction_2.cpp deleted file mode 100644 index b5216fdbf9..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/InnerFunction_2.cpp +++ /dev/null @@ -1,101 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * 针对系统链上函数的调用 - */ -CONTRACT InnerFunction_2:public platon::Contract{ - public: - ACTION void init() {} - - /// 主币转账 - /// define: int32_t platon_transfer(const Address& addr, const Energon& amount); - ACTION void transfer(const std::string& addr, uint64_t amount) { - if(amount == 0){ - DEBUG("Transfer failed", "address", addr, "amount", amount); - return; - } - - auto address_info = make_address(addr); - if(address_info.second){ - platon_transfer(address_info.first, Energon(amount)); - } - } - - /// 获取消息携带的value(fix) - /// define: u128 platon_call_value(); - CONST std::string value() { - u128 val = platon_call_value(); - return std::to_string(val); - } - - /// sha3操作 - /// define: h256 platon_sha3(const bytes& data); - CONST std::string sha3(const std::string& str) { - bytes data; - data.insert(data.begin(), str.begin(), str.end()); - h256 hash = platon::platon_sha3(data); - return hash.toString(); - } - - /// 设置函数返回值 - /// define: template void platon_return(const T& t); - CONST void rreturn() { - std::string str = "hello"; - platon_return(str); - } - - /// 终止交易 panic, 交易完成,合约执行异常 - /// define: void platon_panic(); - ACTION void panic() { - platon_panic(); - } - - /// 终止交易 revert - /// define: void platon_revert(); - ACTION void revert(int64_t flag) { - if(flag == 1){ - platon_revert(); - } - } - - /// 合约销毁 destroy, 销毁后检测余额 - /// define: bool platon_destroy(const Address& addr); - ACTION void destroy(const std::string& addr) { - auto address_info = make_address(addr); - if(address_info.second){ - platon_destroy(address_info.first); - } - } - - /// 消息的原始发送者origin - /// define: Address platon_origin(); - CONST Address origin() { - Address ori = platon::platon_origin(); - return ori; - } - - /// compile test - /// summary: compile success. - std::string compile(){ - return "compile"; - } - - CONST Address addr(){ - - Address address; -// auto address_info = make_address("lax1fyeszufxwxk62p46djncj86rd553skpptsj8v6"); - auto address_info = make_address("atx1fyeszufxwxk62p46djncj86rd553skpph926ws"); - if(address_info.second){ - address = address_info.first; - } - return address; - } - -}; - -PLATON_DISPATCH(InnerFunction_2, (init)(addr)(transfer)(value)(sha3)(rreturn)(panic)(revert)(destroy)(origin)) - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryCallocInt.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryCallocInt.cpp deleted file mode 100644 index a2d1b1ae33..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryCallocInt.cpp +++ /dev/null @@ -1,34 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证内存memory实现函数 -* @author liweic -*/ - -CONTRACT MemoryCallocInt : public platon::Contract{ - public: - ACTION void init(){} - - CONST int getcalloc(){ - int *p1 = (int*)calloc(5, sizeof(int)); - *p1 = 10; - free(p1); - int *p2 = (int*)calloc(10, 5*sizeof(int)); - *p2 = 50; - free(p2); - int *p3 = (int*)calloc(20, 10*sizeof(int)); - *p3 = 200; - free(p3); - - int *p4 = (int*)calloc(50, 50*sizeof(int)); - *p4 = 2500; - int temp = *p4; - free(p4); - return temp; - } -}; - -PLATON_DISPATCH(MemoryCallocInt, (init)(getcalloc)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryFunctionInt.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryFunctionInt.cpp deleted file mode 100644 index 237642a51e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryFunctionInt.cpp +++ /dev/null @@ -1,28 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证内存memory实现函数-整型存储 -* 1.函数realloc -* 2.函数free -* 3.函数memset -* @author liweic -*/ - -CONTRACT MemoryFunctionInt : public platon::Contract{ - public: - ACTION void init(){} - - CONST int getmallocint(){ - int intTmp = -1; - int* buf = (int*)malloc(sizeof(intTmp)); - memcpy(buf, &intTmp, sizeof(intTmp)); - int int_temp = *buf; - free(buf); - return int_temp; - } -}; - -PLATON_DISPATCH(MemoryFunctionInt, (init)(getmallocint)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryFunction_1.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryFunction_1.cpp deleted file mode 100644 index d5b3d7d9ec..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryFunction_1.cpp +++ /dev/null @@ -1,30 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证内存memory实现函数 -* 1.函数malloc -* 2.函数free -* 3.函数memset -* 4.C库函数strcpy -* @author liweic -*/ - -CONTRACT MemoryFunction_1 : public platon::Contract{ - public: - ACTION void init(){} - - CONST std::string getmalloc(){ - std::string strTmp = "WasmTest"; - char* buf = (char*)malloc(strTmp.size() + 1); - memset(buf, 0, strTmp.size()+1); - strcpy(buf, strTmp.c_str()); - std::string str_temp (buf); - free(buf); - return str_temp; - } -}; - -PLATON_DISPATCH(MemoryFunction_1, (init)(getmalloc)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryFunction_2.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryFunction_2.cpp deleted file mode 100644 index 998c09093d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryFunction_2.cpp +++ /dev/null @@ -1,31 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证内存memory实现函数 -* 1.函数realloc -* 2.函数free -* 3.函数memset -* 4.C库函数strcpy -* @author liweic -*/ - -CONTRACT MemoryFunction_2 : public platon::Contract{ - public: - ACTION void init(){} - - CONST std::string getrealloc(){ - std::string strTmp = "WasmTest2"; - char* buf = (char*)malloc(strTmp.size() + 1); - char* newbuf = (char*)realloc(buf, strTmp.size() + 1); - memset(newbuf, 0, strTmp.size()+1); - strcpy(newbuf, strTmp.c_str()); - std::string str_temp (newbuf); - free(newbuf); - return str_temp; - } -}; - -PLATON_DISPATCH(MemoryFunction_2, (init)(getrealloc)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryFunction_3.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryFunction_3.cpp deleted file mode 100644 index 794afab71e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryFunction_3.cpp +++ /dev/null @@ -1,29 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证内存memory实现函数 -* 1.函数calloc -* 2.函数free -* 3.函数memcpy -* @author liweic -*/ - -CONTRACT MemoryFunction_3 : public platon::Contract{ - public: - ACTION void init(){} - - CONST std::string getcalloc(){ - std::string strTmp = "WasmTest3"; - char* buf = (char*)calloc(strTmp.size() + 1, strTmp.size() + 1); - memset(buf, 0, strTmp.size()+1); - memcpy(buf, strTmp.c_str(), strTmp.size() + 1); - std::string str_temp (buf); - free(buf); - return str_temp; - } -}; - -PLATON_DISPATCH(MemoryFunction_3, (init)(getcalloc)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryReallocInt.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryReallocInt.cpp deleted file mode 100644 index 3de5397a88..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/MemoryReallocInt.cpp +++ /dev/null @@ -1,31 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证内存memory实现函数 -* @author liweic -*/ - -CONTRACT MemoryReallocInt : public platon::Contract{ - public: - ACTION void init(){} - - CONST int getrealloc(){ - int *p = (int *)malloc(sizeof(int)); - *p = 10; - free(p); - int *p1 = (int *)malloc(2*sizeof(int)); - *p1 = 100; - free(p1); - - int *p_new=(int *)realloc(p, 10*sizeof(int)); - *p_new = 100; - int temp = *p_new; - free(p_new); - return temp; - } -}; - -PLATON_DISPATCH(MemoryReallocInt, (init)(getrealloc)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/OriginFunction.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/OriginFunction.cpp deleted file mode 100644 index 7a4874a388..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/OriginFunction.cpp +++ /dev/null @@ -1,25 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证内置的一些与链交互的函数 -* 函数platon_origin -*/ - - -CONTRACT OriginFunction : public platon::Contract{ - public: - - ACTION void init() {} - - CONST std::string get_platon_origin() { - bytes addr; - addr.resize(20); - ::platon_origin(addr.data()); - return Address(addr).toString(); - } -}; - -PLATON_DISPATCH(OriginFunction, (init)(get_platon_origin)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/PagingQuery.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/PagingQuery.cpp deleted file mode 100644 index a29954bd2d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/PagingQuery.cpp +++ /dev/null @@ -1,89 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - -/** -* vector分页查询的实现测试 -* @author liweic -*/ - -CONTRACT PagingQuery : public platon::Contract{ - - private: - platon::StorageType<"vecstorage"_n, std::vector> storage_vector_string; - - public: - ACTION void init(){} - - ACTION void insertVectorValue(const std::string &my_value) - { - storage_vector_string.self().push_back(my_value); - } - - //vector大小 - CONST uint64_t getVectorSize() - { - return storage_vector_string.self().size(); - } - - CONST std::string getPagingQuery(uint64_t CurrentPage, uint64_t PageMaxSize) - { - int vecSize = 0; - int pages = 0; - vecSize = storage_vector_string.self().size(); - pages = vecSize / PageMaxSize; - if(0 != vecSize % PageMaxSize) - { - pages += 1; - } - - if(CurrentPage <= 0) - { - return ""; - } - else if(CurrentPage > pages) - { - return ""; - } - - // 计算当前页对应的开始与结束index - int nStartIndex = (CurrentPage - 1) * PageMaxSize; - int nEndIndex = nStartIndex + PageMaxSize - 1; - - // 超出范围,index为最后一个元素的下标 - if(nEndIndex >= vecSize) - { - nEndIndex = vecSize - 1; - } - - std::string strVecInfo = "{"; - strVecInfo += "\""; - strVecInfo += "PageTotal"; - strVecInfo += "\":"; - strVecInfo += to_string(pages); - strVecInfo += ","; - strVecInfo += "\""; - strVecInfo += "Data"; - strVecInfo += "\":["; - - for(int i = nStartIndex; i <= nEndIndex; i++) - { - std::string strTmp = ""; - strTmp = storage_vector_string.self().at(i); - strVecInfo += strTmp + ","; - } - - strVecInfo.pop_back(); - strVecInfo += "]}"; - - char* buf = (char*)malloc(strVecInfo.size() + 1); - memset(buf, 0, strVecInfo.size()+1); - strcpy(buf, strVecInfo.c_str()); - return buf; - } - -}; - -PLATON_DISPATCH(PagingQuery, (init)(insertVectorValue)(getVectorSize)(getPagingQuery)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/Sha3Function.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/Sha3Function.cpp deleted file mode 100644 index fabbfebd0e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/Sha3Function.cpp +++ /dev/null @@ -1,29 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证内置的一些与链交互的函数 -* 函数platon_sha3 -*/ - -// extern char const contract_ower[] = "contract_ower"; -// extern const uint8_t result[32] = {}; - -CONTRACT Sha3Function : public platon::Contract{ - public: - ACTION void init(){} - - CONST uint32_t Sha3Result(){ - uint8_t src[5] = {0x01, 0x07, 0x10, 0x20, 0x30}; - uint8_t result[32] = {}; - platon_sha3(src, 5, result, 32); - uint32_t a; - memcpy(&a, result, sizeof(result)); - return a; - } - -}; - -PLATON_DISPATCH(Sha3Function, (init)(Sha3Result)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/SpecialFunctionsA.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/SpecialFunctionsA.cpp deleted file mode 100644 index 972c600395..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/SpecialFunctionsA.cpp +++ /dev/null @@ -1,31 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证内置的一些与链交互的函数 -* 1.函数platon_block_number -* 2.函数platon_timestamp -*/ - -//extern "C"{ -// uint64_t platon_block_number(); -// int64_t platon_timestamp(); -//} - -CONTRACT SpecialFunctionsA : public platon::Contract{ - public: - ACTION void init(){} - - CONST uint64_t getBlockNumber(){ - return platon_block_number(); - } - - CONST int64_t getTimestamp(){ - return platon_timestamp(); - } - -}; - -PLATON_DISPATCH(SpecialFunctionsA, (init)(getBlockNumber)(getTimestamp)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/SpecialFunctionsB.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/SpecialFunctionsB.cpp deleted file mode 100644 index fd9e28f07d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/Functions/SpecialFunctionsB.cpp +++ /dev/null @@ -1,38 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** -* 验证内置的一些与链交互的函数 -* 1.函数platon_gas -* 2.函数platon_gas_limit -* 3.函数platon_gas_price -*/ - -//extern "C"{ -// uint64_t platon_gas(); -// uint64_t platon_gas_limit(); -// uint64_t platon_gas_price(); -//} - -CONTRACT SpecialFunctionsB : public platon::Contract{ - public: - ACTION void init(){} - - CONST uint64_t getPlatONGas(){ - return platon_gas(); - } - - CONST uint64_t getPlatONGasLimit(){ - return platon_gas_limit(); - } - - CONST std::string getPlatONGasPrice(){ - u128 gasprice = platon_gas_price(); - return std::to_string(gasprice); - } - -}; - -PLATON_DISPATCH(SpecialFunctionsB, (init)(getPlatONGas)(getPlatONGasLimit)(getPlatONGasPrice)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/auth_demo/test_auth.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/auth_demo/test_auth.cpp deleted file mode 100644 index 96386f97cf..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/auth_demo/test_auth.cpp +++ /dev/null @@ -1,47 +0,0 @@ -#define TESTNET -#include - -using namespace platon; - -CONTRACT TestAuth : public platon::Contract { -public: - ACTION void init() { platon::set_owner(); } - - ACTION void test_owner() { - DEBUG("owner is ", "owner", platon::owner().toString()); - if (platon::is_owner()) { - DEBUG("Caller is owner", "caller", - platon::platon_origin_caller().toString(), "owner", - platon::owner().toString()); - } else { - DEBUG("Caller is not owner", "caller", - platon::platon_origin_caller().toString(), "owner", - platon::owner().toString()); - } - } - - ACTION void add_to_whitelist(const std::string& addr) { - DEBUG("add to whitelist", "addr", addr); - SysWhitelist w; - w.Add(addr); - } - - ACTION void is_in_whitelist(const std::string &addr) { - DEBUG("check in whitelist", "addr", addr); - SysWhitelist w; - if (w.Exists(addr)) { - DEBUG("address in whitelist", "addr", addr); - }else { - DEBUG("address not in whitelist", "addr", addr); - } - } - - ACTION void delete_from_whitelist(const std::string& addr) { - DEBUG("Delete address from whitelist", "addr", addr); - SysWhitelist w; - w.Delete(addr); - } -}; - -PLATON_DISPATCH(TestAuth, - (init)(test_owner)(add_to_whitelist)(is_in_whitelist)(delete_from_whitelist)); diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/auth_demo/test_auth_set.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/auth_demo/test_auth_set.cpp deleted file mode 100644 index e1a6f25596..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/auth_demo/test_auth_set.cpp +++ /dev/null @@ -1,42 +0,0 @@ -#define TESTNET -#include - -#include - -using namespace platon; - -CONTRACT TestAuthSet : public platon::Contract { -public: - ACTION void init(const std::string &addr) { - platon::set_owner(addr); - DEBUG("Set owner", "owner", platon::owner().toString()); - } - -ACTION void test_owner() { - DEBUG("owner is ", "owner", platon::owner().toString()); - if (platon::is_owner()) { - DEBUG("Caller is owner", "caller", - platon::platon_origin_caller().toString(), "owner", - platon::owner().toString()); - } else { - DEBUG("Caller is not owner", "caller", - platon::platon_origin_caller().toString(), "owner", - platon::owner().toString()); - } -} - -ACTION void test_owner_p(const std::string& addr) { - DEBUG("owner is ", "owner", platon::owner().toString(), "addr", addr); - if (platon::is_owner(addr)) { - DEBUG("Caller is owner", "addr", - platon::platon_origin_caller().toString(), "owner", - platon::owner().toString()); - } else { - DEBUG("Caller is not owner", "addr", - platon::platon_origin_caller().toString(), "owner", - platon::owner().toString()); - } -} -}; - -PLATON_DISPATCH(TestAuthSet, (init)(test_owner)(test_owner_p)); diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/AtomicSwap.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/AtomicSwap.cpp deleted file mode 100644 index 35e1d7b1a5..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/AtomicSwap.cpp +++ /dev/null @@ -1,130 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * @author liweic - * Atomex - * */ - -class SafeMath -{ - public: - ACTION u128 add(u128 a, u128 b) - { - u128 c = a + b; - platon_assert(c >= a, "SafeMath add wrong value"); - return c; - } - - ACTION u128 sub(u128 a, u128 b) - { - platon_assert(b <= a, "SafeMath sub wrong value"); - u128 c = a - b; - return c; - } -}; - -enum State { Empty, Initiateds, Redeemeds, Refundeds }; - -struct Swap{ - public: - bytes hashedSecret; - bytes secret; - Address initiator; - Address participant; - uint64_t refundTimestamp; - u128 value; - u128 payoff; - int state; - // Swap(){} - // Swap(bytes &hashedSecret, bytes &secret, Address &initiator, Address &participant, uint64_t &refundTimestamp, u128 &value, u128 &payoff):hashedSecret(hashedSecret),secret(secret),initiator(initiator),participant(participant),refundTimestamp(refundTimestamp),value(value),payoff(payoff), state(state){} - PLATON_SERIALIZE(Swap,(hashedSecret)(secret)(initiator)(participant)(refundTimestamp)(value)(payoff)(state)) -}; - -CONTRACT AtomicSwap : public platon::Contract, public SafeMath{ - - private: - platon::StorageType<"owner"_n,Address> owner; - StorageType<"swap"_n, Swap> swap_; - platon::StorageType<"swaps"_n,std::map> swaps; - - public: - PLATON_EVENT1(Initiated, bytes, Address, Address, uint64_t, u128, u128); - PLATON_EVENT0(Added, bytes, Address, u128); - PLATON_EVENT0(Redeemed, bytes, bytes); - PLATON_EVENT0(Refunded, bytes); - - public: - ACTION void init() - { - owner.self() = platon_caller(); - } - - ACTION void destruct() - { - platon_assert(platon_caller() == owner.self(), "only owner"); - platon_assert(platon_balance(owner.self()) == 0, "balance is not zero"); - platon_destroy(owner.self()); - } - - ACTION void initiate(bytes _hashedSecret, Address _participant, uint64_t _refundTimestamp, u128 _payoff) - { - platon_assert(swaps.self()[_hashedSecret].state == Empty, "swap for this hash is already initiated"); - platon_assert(_refundTimestamp > platon_timestamp(), "refundTimestamp has already passed"); - u128 initiateval = platon_call_value(); - - swaps.self()[_hashedSecret].value = SafeMath::sub(initiateval, _payoff); - swaps.self()[_hashedSecret].hashedSecret = _hashedSecret; - swaps.self()[_hashedSecret].initiator = platon_caller(); - swaps.self()[_hashedSecret].participant = _participant; - swaps.self()[_hashedSecret].refundTimestamp = _refundTimestamp; - swaps.self()[_hashedSecret].payoff = _payoff; - swaps.self()[_hashedSecret].state = Initiateds; - - PLATON_EMIT_EVENT1(Initiated, _hashedSecret, swaps.self()[_hashedSecret].participant, platon_caller(), swaps.self()[_hashedSecret].refundTimestamp, swaps.self()[_hashedSecret].value, swaps.self()[_hashedSecret].payoff); - } - - ACTION void add(bytes _hashedSecret) - { - platon_assert(swaps.self()[_hashedSecret].state == Initiateds, "swap for this hash is empty or already spent"); - platon_assert(platon_timestamp() <= swaps.self()[_hashedSecret].refundTimestamp, "refundTime has already come"); - u128 addval = platon_call_value(); - swaps.self()[_hashedSecret].value = SafeMath::add(swaps.self()[_hashedSecret].value, addval); - - PLATON_EMIT_EVENT0(Added, _hashedSecret, platon_caller(), swaps.self()[_hashedSecret].value); - } - - ACTION void redeem(bytes _hashedSecret, bytes _secret) - { - platon_assert(swaps.self()[_hashedSecret].state == Initiateds, "swap for this hash is empty or already spent"); - platon_assert(platon_timestamp() < swaps.self()[_hashedSecret].refundTimestamp, "refundTimestamp has already passed"); - //wasm没有ABI编解码函数 - //platon_assert(sha256(abi.encodePacked(sha256(abi.encodePacked(_secret)))) == _hashedSecret, "secret is not correct"); - swaps.self()[_hashedSecret].secret = _secret; - swaps.self()[_hashedSecret].state = Redeemeds; - PLATON_EMIT_EVENT0(Redeemed, _hashedSecret, _secret); - platon_transfer(swaps.self()[_hashedSecret].participant, Energon(swaps.self()[_hashedSecret].value)); - if(swaps.self()[_hashedSecret].payoff > 0) - { - platon_transfer(platon_caller(), Energon(swaps.self()[_hashedSecret].payoff)); - } - - swaps.self().erase(_hashedSecret); - } - - ACTION void refund(bytes _hashedSecret) - { - - platon_assert(swaps.self()[_hashedSecret].state == Initiateds, "swap for this hash is empty or already spent"); - platon_assert(platon_timestamp() >= swaps.self()[_hashedSecret].refundTimestamp, "refundTimestamp has not passed"); - swaps.self()[_hashedSecret].state = Refundeds; - PLATON_EMIT_EVENT0(Refunded, _hashedSecret); - platon_transfer(swaps.self()[_hashedSecret].initiator, Energon(SafeMath::add(swaps.self()[_hashedSecret].value,swaps.self()[_hashedSecret].payoff))); - swaps.self().erase(_hashedSecret); - } - -}; - -PLATON_DISPATCH(AtomicSwap, (init)(destruct)(initiate)(add)(redeem)(refund)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/ContractStart.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/ContractStart.cpp deleted file mode 100644 index 913f2c85b9..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/ContractStart.cpp +++ /dev/null @@ -1,99 +0,0 @@ -#define TESTNET -#include -#include -#include - -using namespace platon; - -/** - * https://github.com/sun-asterisk-research/EOS-2048/blob/master/contracts/eos/mycontract/main.cpp - * - */ - -struct dummy_action_hello { - std::string vaccount; - uint64_t b; - uint64_t c; - dummy_action_hello(){} - - PLATON_SERIALIZE( dummy_action_hello, (vaccount)(b)(c) ) -}; - -struct shardbucket { - std::vector shard_uri; - uint64_t shard; - uint64_t primary_key() const { return shard; } - - PLATON_SERIALIZE( shardbucket, (shard_uri)(shard)) -}; - -struct TKEY{ - std::string pubkey; - std::string vaccount; - uint64_t nonce; - uint64_t primary_key; - - PLATON_SERIALIZE( TKEY, (pubkey)(vaccount)(nonce)(primary_key)) -}; - - -CONTRACT ContractStart : public platon::Contract{ - - private: - platon::StorageType<"stat"_n, uint64_t> stat; - platon::StorageType<"vaccounts"_n, shardbucket> cold_accounts_t_abi; - - public: - ACTION void init(){ - } - - ACTION bool Timer_callback(std::vector payload,uint64_t seconds){ - if(stat.self() == 0 ){ - stat.self() = seconds; - } - - auto reschedule = false; - if(seconds++ < 3){ - reschedule = true; - } - stat.self() = reschedule; - return reschedule; - - } - - ACTION void testschedule() { - std::vector payload; - - } - - ACTION void hello(dummy_action_hello payload){ - platon_assert(payload.vaccount.length() > 0, "invalid vaccount"); - DEBUG("hello from ",payload.vaccount," ",payload.b,payload.c); - - } - - ACTION void hello2(dummy_action_hello payload){ - DEBUG("hello2(default action) from ",payload.vaccount," ",payload.b,payload.c); - - } - - ACTION void transfer(Address from,Address to,uint64_t quantity,std::string memo){ - platon_assert(from.toString().length() < 5, "invalid from"); - platon_assert(from.toString() == to.toString(), "from can not same as to"); - if(memo.size() > 0){ - Address to_act = Address(memo.c_str()); - from = to_act; - } - platon_assert(quantity > 0, "quantity can not less zero"); - add_cold_balance(from,quantity); - - } - - ACTION void add_cold_balance(Address owner,uint64_t value){ - platon_transfer(owner, Energon(value)); - } - -}; - -PLATON_DISPATCH(ContractStart, (init)(Timer_callback)(testschedule)(hello)(hello2)(transfer)(add_cold_balance)) - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/CrowdFunding.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/CrowdFunding.cpp deleted file mode 100644 index 4350e3ac60..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/CrowdFunding.cpp +++ /dev/null @@ -1,105 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * @author hudenian - * 众筹合约 - * */ - -CONTRACT CrowdFunding : public platon::Contract{ - - private: - platon::StorageType<"beneficiary"_n,Address> beneficiaryAddress; //受益人地址,设置为合约创建者 - platon::StorageType<"fundgoal"_n, uint64_t> fundingGoal; //众筹目标 - platon::StorageType<"raised"_n, u128> amountRaised; //已筹集金额数量, 单位是VON - platon::StorageType<"deadline"_n, uint64_t> deadline; //截止时间 - platon::StorageType<"price"_n, u128> price; //代币价格 - platon::StorageType<"reachflg"_n, bool> fundingGoalReached;//达成众筹目标 - platon::StorageType<"closedflg"_n, bool> crowdsaleClosed;//众筹关闭 - - platon::StorageType<"balance"_n, std::map> balance;//保存众筹者对捐赈的金额 - platon::StorageType<"tokenmap"_n, std::map> tokenMap;//保存众筹者所拥有的代币数量 - - //记录已接收的LAT通知 - PLATON_EVENT1(transfer1,std::string,Address,uint64_t) - - //转帐通知 - PLATON_EVENT1(transfer2,std::string,Address,uint64_t,bool) - - public: - //第一个参数为众筹目标,第二个参数为持序时间,单位为秒 - ACTION void init(uint64_t _fundingGoalInlats,uint64_t _durationInMinutes){ - beneficiaryAddress.self() = platon_caller(); //收益人为合约发起者 - fundingGoal.self() = _fundingGoalInlats; - deadline.self() = _durationInMinutes + platon_timestamp(); - price.self() = 500; //假设一个代币500Von - crowdsaleClosed.self() = false; - } - - //发起众筹 - ACTION void crowdFund(){ - Address caller = platon_caller(); - - //众筹开关关闭后就不能再发起 - if(crowdsaleClosed.self() ){ - platon_revert(); - } - u128 amount = platon_call_value(); - - //捐款人的金额累加 - balance.self()[caller] += amount; - - //捐款总额累加 - amountRaised.self() += amount; - - //转帐操作,转多少代币给捐款人 - tokenMap.self()[caller] += amount /price.self(); - - PLATON_EMIT_EVENT1(transfer1, "transfer", caller, amount); - } - - - //检测众筹目标是否已经达到 - ACTION void checkGoalReached(){ - if(amountRaised.self() >= fundingGoal.self()){ - fundingGoalReached.self() = true; - PLATON_EMIT_EVENT1(transfer1,"checkGoalReached",platon_caller(),amountRaised.self()); - } - //关闭众筹 - crowdsaleClosed.self() = true; - } - - /** - * 收回资金 - * - * 检查是否达到了目标或时间限制,如果有,并且达到了资金目标, - * 将全部金额发送给受益人。如果没有达到目标,每个贡献者都可以退回 - * 他们贡献的金额 - */ - ACTION void safeWithdrawal(){ - //如果没有达成众筹目标 - if (!fundingGoalReached.self()) { - //获取合约调用者已捐款余额 - uint64_t amount = balance.self()[beneficiaryAddress.self()]; - - if (amount > 0) { - //返回合约发起者所有余额 - platon_transfer(Address(platon_caller()), Energon(balance.self()[beneficiaryAddress.self()])); - PLATON_EMIT_EVENT1(transfer1,"checkGoalReached",platon_caller(),balance.self()[beneficiaryAddress.self()]); - } - } - - //如果达成众筹目标,并且合约调用者是受益人 - if (fundingGoalReached.self() && beneficiaryAddress.self() == platon_caller()) { - - //将所有捐款从合约中给受益人 - platon_transfer(Address(platon_caller()), Energon(amountRaised.self())); - PLATON_EMIT_EVENT1(transfer1,"checkGoalReached",platon_caller(),amountRaised.self()); - } - } -}; - -PLATON_DISPATCH(CrowdFunding, (init)(crowdFund)(checkGoalReached)(safeWithdrawal)) - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/Donate.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/Donate.cpp deleted file mode 100644 index 9ec5c1aa01..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/Donate.cpp +++ /dev/null @@ -1,188 +0,0 @@ -#define TESTNET -#include -#include -#include -using namespace platon; - -/** - * Donate is a base contract for managing a donation -*/ -CONTRACT Donate : public platon::Contract{ - - private: - platon::StorageType<"owner"_n,Address> owner; - platon::StorageType<"charity"_n,Address> charity; - platon::StorageType<"openingTime"_n, u128> openingTime; - platon::StorageType<"closingTime"_n, u128> closingTime; - platon::StorageType<"minVonAmount"_n, u128> minVonAmount; - platon::StorageType<"maxVonAmount"_n, u128> maxVonAmount; - platon::StorageType<"maxNumDonors"_n, u128> maxNumDonors; - platon::StorageType<"donors"_n,std::vector

> donors; - platon::StorageType<"whitelist"_n, std::map> whitelist; - platon::StorageType<"paused"_n, bool> paused; - - public: - PLATON_EVENT1(Donated, Address, u128) - PLATON_EVENT0(OwnershipTransferred, Address, Address) - - /** - * @param _charity Address where collected funds will be forwarded to - * @param _openingTime Donate opening time - * @param _closingTime Donate closing time - * @param _minVonAmount Minimun donation amount in von - * @param _maxVonAmount Maximum donation amount in von - * @param _maxNumDonors Maximum number of donors - */ - ACTION void init(const Address& _charity, u128 _openingTime, u128 _closingTime, u128 _minVonAmount, u128 _maxVonAmount, u128 _maxNumDonors) { - platon_assert(_charity != Address(0)); - platon_assert(_closingTime > _openingTime); - platon_assert(_minVonAmount > 0); - platon_assert(_maxVonAmount > _minVonAmount); - platon_assert(_maxNumDonors > 0); - - owner.self() = platon_caller(); - charity.self() = _charity; - openingTime.self() = _openingTime; - closingTime.self() = _closingTime; - minVonAmount.self() = _minVonAmount; - maxVonAmount.self() = _maxVonAmount; - maxNumDonors.self() = _maxNumDonors; - } - - /** - * low level donation. - */ - ACTION void donate(const Address& _donor) { - u128 val = platon_call_value(); - preValidateDonate(_donor, val); - - donors.self().push_back(_donor); - PLATON_EMIT_EVENT1(Donated, platon_caller(), val); - } - - /** - * Sets opening and closing times. - */ - ACTION void setOpeningClosingTimes(u128 _openingTime, u128 _closingTime) { - onlyOwner(); - platon_assert(_closingTime > _openingTime); - - openingTime.self() = _openingTime; - } - - /** - * Adds single address to whitelist. - */ - ACTION void addToWhitelist(const Address& _donor) { - onlyOwner(); - - whitelist.self()[_donor] = true; - } - - /** - * Adds list of addresses to whitelist. Not overloaded due to limitations with truffle testing. - */ - ACTION void addManyToWhitelist(const std::vector
& _donors) { - onlyOwner(); - - for (uint64_t i = 0; i < _donors.size(); i++) { - whitelist.self()[_donors[i]] = true; - } - } - - /** - * Removes single address from whitelist. - */ - ACTION void removeFromWhitelist(const Address& _donor) { - onlyOwner(); - - whitelist.self()[_donor] = false; - } - - /** - * called by the owner to pause, triggers stopped state. - */ - ACTION void pause() { - onlyOwner(); - platon_assert(paused.self() == false); - - paused.self() = true; - } - - /** - * called by the owner to unpause, returns to normal state. - */ - ACTION void unpause() { - onlyOwner(); - platon_assert(paused.self() == true); - - paused.self() = false; - } - - /** - * Allows the current owner to transfer control of the contract to a newOwner. - */ - ACTION void transferOwnership(const Address& newOwner) { - onlyOwner(); - platon_assert(newOwner != Address(0)); - owner.self() = newOwner; - - PLATON_EMIT_EVENT0(OwnershipTransferred, owner.self(), newOwner); - } - - CONST Address getOwner() { - return owner.self(); - } - - CONST Address getCharity() { - return charity.self(); - } - - CONST u128 getOpeningTime() { - return openingTime.self(); - } - - CONST u128 getClosingTime() { - return closingTime.self(); - } - - CONST u128 getMinVonAmount() { - return minVonAmount.self(); - } - - CONST u128 getMaxVonAmount() { - return maxVonAmount.self(); - } - - CONST u128 getMaxNumDonors() { - return maxNumDonors.self(); - } - - CONST std::vector
getDonors() { - return donors.self(); - } - - CONST std::map getWhitelist() { - return whitelist.self(); - } - - CONST bool getPaused() { - return paused.self(); - } - - private: - ACTION void preValidateDonate(const Address& _donor ,u128 _vonAmount) { - platon_assert(u128(platon_timestamp()) >= openingTime.self() && u128(platon_timestamp()) <= closingTime.self()); - platon_assert(!paused.self()); - platon_assert(donors.self().size() <= maxNumDonors.self()); - platon_assert(whitelist.self()[_donor]); - platon_assert(_donor != Address(0)); - platon_assert(minVonAmount.self() <= _vonAmount && _vonAmount <= maxVonAmount.self()); - } - - ACTION void onlyOwner() { - platon_assert(platon_caller() == owner.self()); - } -}; - -PLATON_DISPATCH(Donate, (init)(donate)(setOpeningClosingTimes)(addToWhitelist)(addManyToWhitelist)(removeFromWhitelist)(pause)(unpause)(transferOwnership)(getOwner)(getCharity)(getOpeningTime)(getClosingTime)(getMinVonAmount)(getMaxVonAmount)(getMaxNumDonors)(getDonors)(getWhitelist)(getPaused)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/GuessingWasm.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/GuessingWasm.cpp deleted file mode 100644 index 27673f4a67..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/GuessingWasm.cpp +++ /dev/null @@ -1,142 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -CONTRACT GuessingWasm : public platon::Contract{ - - private: - platon::StorageType<"endblock"_n,uint64_t> endBlock; //竞猜截止块高 - platon::StorageType<"closedflg"_n, bool> guessingClosed;//竞猜是否已开奖 - platon::StorageType<"baseunit"_n, u128> baseUnit; //最小转金额 - platon::StorageType<"balance"_n, u128> balance; //竞猜总金额 - platon::StorageType<"avgmount"_n, u128> averageAmount; //每个人获奖金额 - - platon::StorageType<"gussinger"_n, std::map> gussingerLat;//每个竞猜者对应的金额 - platon::StorageType<"guesseridx"_n, std::map> indexOfgussinger;//每个竞猜者对应的下标(大于5个lat就给他分配一个随机数) - platon::StorageType<"winnermap"_n, std::map> winnerMap;//中奖者对应中奖号码个数 - platon::StorageType<"indexkey"_n, uint64_t> indexKey;//自增序列 - platon::StorageType<"provector"_n,std::vector
> winnerAddresses;//中奖者地址 - platon::StorageType<"createaddr"_n,Address> createAddress;//合约创建者 - - public: - //竞猜成功通知 - PLATON_EVENT1(transfer1,std::string,Address,u128) - - //记录已接收的LAT通知 - PLATON_EVENT1(transfer2,std::string,Address,u128) - - /** - * 初始化构造函数 - * - * @param _endBlock 竞猜截止块高(达到此块高后不能再往合约转账) - */ - ACTION void init(uint64_t _endBlock){ - createAddress.self() = platon_caller(); - endBlock.self() = _endBlock; - indexKey.self() = 0;//默认下标为0 - baseUnit.self() = (5_LAT).Get(); - guessingClosed.self() = false; - } - - /** - * 竞猜(带上金额) - */ - ACTION void guessingWithLat(){ - DEBUG("Guessing", "guessingWithLat", platon_call_value()); - //判断转账金额要大于5lat - u128 amount = platon_call_value(); - platon_assert( amount >= baseUnit.self(), "bad platon_call_value"); - - uint64_t currentBlock_number = platon_block_number();//获取当前块高 - platon_assert( endBlock.self() >= currentBlock_number, "not reach end block number"); - - indexOfgussinger.self()[indexKey.self()] = platon_caller(); - indexKey.self()++; - - //竞猜人的金额累加(可以投多次) - gussingerLat.self()[platon_caller()] += amount; - - //竞猜总额累加 - balance.self() +=amount; - - //竞猜成功通知 - PLATON_EMIT_EVENT1(transfer1,"guessing success",platon_caller(),amount); - } - - ACTION void draw(){ - DEBUG("Guessing", "draw", platon_caller()); - //只有合约创建者可以开奖 - if(!guessingClosed.self() && createAddress.self() == platon_caller() && indexKey.self() > 0){ - uint64_t random = 99999; - uint64_t drawIndex = random%indexKey.self(); - - if(indexKey.self()<100){ - getwinners(drawIndex,10); - }else if(indexKey.self()<10000){ - getwinners(drawIndex,100); - }else{ - getwinners(drawIndex,1000); - } - - //每个中奖者可以分到的金额 - averageAmount.self() = balance.self()/winnerAddresses.self().size(); - - //向中奖者转账 - for(uint64_t j=0;j getWinnerAddresses(){ - return winnerAddresses.self(); - } - - // 获取当前参与者中奖次数 - CONST uint64_t getMyGuessCodes(Address &address){ - return winnerMap.self()[address]; - } - - //查看当前下标 - CONST uint64_t getIndexKey(){ - return indexKey.self(); - } - -}; - -PLATON_DISPATCH(GuessingWasm, (init)(guessingWithLat)(draw)(getwinners)(getBalance)(getWinnerCount)(getWinnerAddresses)(getMyGuessCodes)(getIndexKey)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/MultiSigWallet.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/MultiSigWallet.cpp deleted file mode 100644 index 03b7a7a9ba..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/MultiSigWallet.cpp +++ /dev/null @@ -1,155 +0,0 @@ -#define TESTNET -#include -#include -#include - -using namespace platon; - -/** - * MultiSigWallet.sol合约 - * */ - -CONTRACT MultiSigWallet : public platon::Contract{ - - private: - platon::StorageType<"maxowner"_n, uint64_t> MAX_OWNER_COUNT; - platon::StorageType<"nonce"_n, uint64_t> nonce; - platon::StorageType<"threshold"_n, uint64_t> threshold; - platon::StorageType<"ownercount"_n, uint64_t> ownersCount; - platon::StorageType<"isowner"_n,std::map> isOwner; - platon::StorageType<"tuple"_n,std::tuple> vsr_tuple; - platon::StorageType<"eventname"_n, std::string> eventName; - platon::StorageType<"target"_n, std::string> target_addr; - - public: - PLATON_EVENT1(OwnerAdded,std::string,Address) - PLATON_EVENT1(OwnerRemoved,std::string,uint64_t) - PLATON_EVENT1(ThresholdChanged,std::string,uint64_t) - PLATON_EVENT1(Executed,std::string,Address,uint64_t,std::string) - PLATON_EVENT1(Received,std::string,uint64_t,Address) - - ACTION void init(uint64_t _threshold,std::set
_owners){ - target_addr.self() = "0x01"; //ecrecover(hash, v, r, s) 函数对应内置合约地址 - platon_assert(_owners.size() > 0, "MSW: Not enough or too many owners"); -// platon_assert(1>2,"_owners.size() is ", _owners.size()); - platon_assert(_threshold > 0 && _threshold <= _owners.size(), "MSW: Invalid threshold"); - ownersCount.self() = _owners.size(); - threshold.self() = _threshold; - - MAX_OWNER_COUNT.self() = 10; - - std::string name = "OwnerAdded"; - for(auto iter = _owners.begin(); iter != _owners.end(); iter++) { - isOwner.self()[*iter] = true; - PLATON_EMIT_EVENT1(OwnerAdded,name,*iter); - } - PLATON_EMIT_EVENT1(ThresholdChanged,name,_threshold); - } - - ACTION void execute(Address _to, uint64_t _value, bytes _data, bytes _signatures,uint64_t value,uint64_t gas){ -// uint64_t v; -// bytes r; -// bytes s; - - uint64_t count = sizeof(_signatures) / 65; - DEBUG("MultiSigWallet execute ", "count", count); - DEBUG("MultiSigWallet execute ", "threshold.self()", threshold.self()); - nonce.self() += 1; - uint64_t valid; - Address lastSigner = Address(0); - for(uint64_t i = 0; i < count; i++) { - Address recovered = Address(0); - - auto address_info = make_address(target_addr.self()); - if(address_info.second){ - if (platon_call(address_info.first, _signatures, value, gas)) { - platon::bytes ret; - size_t len = platon_get_call_output_length(); - ret.resize(len); - platon_get_call_output(ret.data()); - std::string str = toHex(ret); - - auto address_info = make_address(str); - if(address_info.second){ - recovered = address_info.first; - } - } - } - - platon_assert(recovered > lastSigner, "MSW: Badly ordered signatures"); // make sure signers are different - lastSigner = recovered; - if(isOwner.self()[recovered]) { - uint64_t gas = 4712388; - valid += 1; - if(valid >= threshold.self()) { - if (platon_call(_to, _data, _value, gas)) { - DEBUG("cross call contract cross_call_ppos_send success", "address", _to); - }else{ - DEBUG("cross call contract cross_call_ppos_send fail", "address", _to); - } - std::string name = "Executed"; - PLATON_EMIT_EVENT1(Executed,name,_to, _value, toHex(_signatures)); - return; - } - } - } - platon_panic(); - } - -// void splitSignature(bytes _signatures,uint64_t _index){ -// uint64_t r; -// bytes s; -// bytes v; -// -// //r calc -// uint64_t rmul = 65 * _index; -// uint64_t radd = 32 + rmul; -// -// -// -// // assembly { -// // r := mload(add(_signatures, add(0x20,mul(0x41,_index)))) -// // s := mload(add(_signatures, add(0x40,mul(0x41,_index)))) -// // v := and(mload(add(_signatures, add(0x41,mul(0x41,_index)))), 0xff) -// // } -// // require(v == 27 || v == 28, "MSW: Invalid v"); -// // std::tuple restuple = make_tuple(r,s,v); -// vsr_tuple.self() = make_tuple(r,s,v); -// // return restuple; -// } - - ACTION void addOwner(Address _owner){ - platon_assert(ownersCount.self() < MAX_OWNER_COUNT.self(), "ownersCount is:",ownersCount.self(),"MAX_OWNER_COUNT is:",MAX_OWNER_COUNT.self(),"MSW: MAX_OWNER_COUNT reached"); - platon_assert(isOwner.self()[_owner] == false, "MSW: Already owner"); - ownersCount.self() += 1; - isOwner.self()[_owner] = true; - std::string name = "OwnerAdded"; - PLATON_EMIT_EVENT1(OwnerAdded,name,_owner); - } - - ACTION void removeOwner(Address _owner){ - platon_assert(ownersCount.self() > threshold.self(), "MSW: Too few owners left"); - platon_assert(isOwner.self()[_owner] == true, "MSW: Not an owner"); - ownersCount.self() -= 1; - isOwner.self().erase(_owner); - std::string name = "OwnerRemoved"; - PLATON_EMIT_EVENT1(OwnerRemoved,name,ownersCount.self()); - } - - ACTION void changeThreshold(uint64_t _newThreshold){ - platon_assert(_newThreshold > 0 && _newThreshold <= ownersCount.self(), "MSW: Invalid new threshold"); - threshold.self() = _newThreshold; - std::string name = "OwnerRemoved"; - PLATON_EMIT_EVENT1(OwnerRemoved,name,_newThreshold); - } - - CONST std::map getIsOwner(){ - return isOwner.self(); - } - - - -}; - -PLATON_DISPATCH(MultiSigWallet, (init)(execute)(addOwner)(removeOwner)(changeThreshold)(getIsOwner)) - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/VIDToken.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/VIDToken.cpp deleted file mode 100644 index a720525124..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/VIDToken.cpp +++ /dev/null @@ -1,536 +0,0 @@ -#define TESTNET -#include - -using namespace platon; - -CONTRACT VIDToken : public Contract { - public: - PLATON_EVENT0(TransferEv, Address, Address, u128); - PLATON_EVENT0(ApprovalEv, Address, Address, u128); - PLATON_EVENT0(BurnEv, Address, u128); - PLATON_EVENT0(FreezeEv, Address, bool); - PLATON_EVENT0(ValidateFileEv, u128, std::string); - PLATON_EVENT0(ValidatePublisherEv, Address, bool, std::string); - PLATON_EVENT0(ValidateWalletEv, Address, bool, std::string); - PLATON_EVENT0(LogEventEv, u128, std::string); - - public: - PLATON_EVENT0(PauseEv); - PLATON_EVENT0(UnpauseEv); - - ACTION void pause() { - platon_assert(is_owner(), "O1- Owner only function"); - platon_assert(!paused_.get()); - - paused_.self() = true; - PLATON_EMIT_EVENT0(PauseEv); - } - - ACTION void unpause() { - platon_assert(is_owner(), "O1- Owner only function"); - platon_assert(paused_.get()); - - paused_.self() = false; - PLATON_EMIT_EVENT0(UnpauseEv); - } - - public: - ACTION void init() { - set_owner(); - paused_.self() = false; - validation_price_.self() = 7000000000000000000; - validation_wallet_.self() = platon_caller(); - verify_wallet_.self()[platon_caller()] = true; - total_supply_.self() = kInitialSupply * kUnit; - balances_.self()[platon_caller()] = total_supply_.get(); - PLATON_EMIT_EVENT0(TransferEv, Address(), owner(), kInitialSupply); - - DEBUG("init contract", "owner", owner().toString(), "balance", - balances_.get().at(platon_caller())); - } - - ACTION bool Transfer(const std::string& to_addr, u128 value) { - auto sender = platon_caller(); - Address to; - auto address_info = make_address(to_addr); - if(address_info.second){ - to = address_info.first; - } - DEBUG("transfer", "to", to.toString()); - platon_assert(!paused_.get()); - platon_assert(to != sender, "T1- Recipient can not be the same as sender"); - bool empty_addr = false; - if (to) { - empty_addr = true; - } - platon_assert(empty_addr, "T2- Please check the recipient address"); - platon_assert(Balance(sender) >= value, - "T3- The balance of sender is too low"); - platon_assert(!Frozen(sender), "T4- The wallet of sender is frozen"); - platon_assert(!Frozen(to), "T5- The wallet of recipient is frozen"); - - balances_.self()[sender] = Balance(sender) - value; - if (balances_.self().find(to) != balances_.self().end()) { - balances_.self()[to] = Balance(to) + value; - } else { - balances_.self()[to] = value; - } - - PLATON_EMIT_EVENT0(TransferEv, sender, to, value); - return true; - } - - ACTION bool TransferFrom(const std::string& from_addr, - const std::string& to_addr, u128 value) { - Address from; - Address to; - auto address_info = make_address(from_addr); - if(address_info.second){ - from = address_info.first; - } - - auto address_info2 = make_address(to_addr); - if(address_info2.second){ - to = address_info2.first; - } - - auto sender = platon_caller(); - bool empty_addr = false; - if (to) { - empty_addr = true; - } - platon_assert(!paused_.get()); - platon_assert(empty_addr, "TF1- Please check the recipient address"); - platon_assert(Balance(from) >= value, - "TF2- The balance of sender is too low"); - platon_assert(Allowed(from, sender) >= value, - "TF3- The allowed of sender if too low"); - platon_assert(!Frozen(from), "TF4- The wallet of sender is frozen"); - platon_assert(!Frozen(to), "TF5- The wallet of recipient is frozen"); - - balances_.self()[from] = Balance(from) - value; - balances_.self()[to] = Balance(to) + value; - - allowed_.self()[from][sender] = allowed_.self()[from][sender] - value; - - PLATON_EMIT_EVENT0(TransferEv, from, to, value); - return true; - } - - CONST u128 BalanceOf(const std::string& owner_addr) { - DEBUG("balance of ", "owner_addr", owner_addr); - - Address to; - auto address_info = make_address(owner_addr); - if(address_info.second){ - to = address_info.first; - } - - return Balance(to); - } - - ACTION bool Approve(const std::string& spender_addr, u128 value) { - Address spender; - auto address_info = make_address(spender_addr); - if(address_info.second){ - spender = address_info.first; - } - - platon_assert(!paused_.get()); - auto sender = platon_caller(); - platon_assert(!paused_.get()); - platon_assert(value == 0 || (Allowed(sender, spender) == 0), - "A1- Reset allowance to first"); - - auto& allowed = allowed_.self(); - if (allowed.find(sender) == allowed.end()) { - std::map allow; - allow[spender] = value; - allowed[sender] = allow; - } else { - allowed[sender][spender] = value; - } - - PLATON_EMIT_EVENT0(ApprovalEv, sender, spender, value); - return 0; - } - - ACTION bool IncreaseApproval(const std::string& spender_addr, - u128 added_value) { - Address spender; - auto address_info = make_address(spender_addr); - if(address_info.second){ - spender = address_info.first; - } - platon_assert(!paused_.get()); - auto sender = platon_caller(); - - auto& allowed = allowed_.self(); - if (allowed.find(sender) == allowed.end()) { - std::map allow; - allow[spender] = added_value; - allowed[sender] = allow; - } else { - auto& allow = allowed.at(sender); - if (allow.find(spender) != allow.end()) { - allow[spender] = allow.at(spender) + added_value; - } else { - allow[spender] = added_value; - } - } - - PLATON_EMIT_EVENT0(ApprovalEv, sender, spender, - allowed_.self().at(sender).at(spender)); - return true; - } - - ACTION bool DecreaseApproval(const std::string& spender_addr, - u128 subtracted_value) { - Address spender; - auto address_info = make_address(spender_addr); - if(address_info.second){ - spender = address_info.first; - } - platon_assert(!paused_.get()); - auto sender = platon_caller(); - - auto& allowed = allowed_.self(); - if (allowed.find(sender) == allowed.end()) { - std::map allow; - allow[spender] = 0; - allowed[sender] = allow; - } else { - auto& allow = allowed.at(sender); - if (allow.find(spender) != allow.end()) { - auto c = allow.at(spender) - subtracted_value; - DEBUG("decrease approval", "c", c, "allow", allow.at(spender), "sub", - subtracted_value); - platon_assert(allow.at(spender) >= subtracted_value && - c <= allow.at(spender)); - allow[spender] = c; - } else { - allow[spender] = 0; - } - } - - PLATON_EMIT_EVENT0(ApprovalEv, sender, spender, - allowed_.self()[sender][spender]); - return true; - } - - CONST u128 Allowance(const std::string& owner, const std::string& spender) { - Address addr1; - auto address_info1 = make_address(owner); - if(address_info1.second){ - addr1 = address_info1.first; - } - - Address addr2; - auto address_info2 = make_address(spender); - if(address_info2.second){ - addr2 = address_info2.first; - } - - - return Allowed(addr1, addr2); - } - - struct TKN { - Address sender; - u128 value; - bytes data; - byte sig[4]; - }; - - ACTION bool TokenFallback(const std::string& from_addr, u128 value, - const std::string& data) { - Address from; - auto address_info = make_address(from_addr); - if(address_info.second){ - from = address_info.first; - } - TKN tkn; - tkn.sender = from; - tkn.value = value; - tkn.data.insert(tkn.data.begin(), data.begin(), data.end()); - uint32_t u = uint32_t(data[3]) + (uint32_t(data[2]) << 8) + - (uint32_t(data[1]) << 16) + (uint32_t(data[0]) << 24); - memcpy(tkn.sig, &u, sizeof(u)); - return true; - } - - ACTION void TransferToken(const std::string& token_addr_s, u128 tokens) { - Address token_addr; - auto address_info = make_address(token_addr_s); - if(address_info.second){ - token_addr = address_info.first; - } - platon_assert(is_owner(), "O1- Owner only function"); - platon_assert(owner() != token_addr, - "T1- Recipient can not be the same as sender"); - platon_assert(Balance(token_addr) >= tokens, - "T3- The balance of sender is too low"); - platon_assert(!Frozen(token_addr), "T4- The wallet of sender is frozen"); - - balances_.self()[token_addr] = Balance(token_addr) - tokens; - balances_.self()[owner()] = Balance(owner()) + tokens; - - PLATON_EMIT_EVENT0(TransferEv, token_addr, owner(), tokens); - } - - ACTION bool Burn(u128 value) { - platon_assert(is_owner(), "O1- Owner only function"); - - auto sender = platon_caller(); - platon_assert(value <= Balance(sender), - "B1- The balance of burner is too low"); - - balances_.self()[sender] = Balance(sender) - value; - total_supply_.self() = total_supply_.get() - value; - - PLATON_EMIT_EVENT0(BurnEv, sender, value); - return true; - } - - ACTION bool Freeze(const std::string& addr_s, bool state) { - Address addr; - auto address_info = make_address(addr_s); - if(address_info.second){ - addr = address_info.first; - } - platon_assert(is_owner(), "O1- Owner only function"); - - frozen_account_.self()[addr] = state; - - PLATON_EMIT_EVENT0(FreezeEv, addr, state); - return true; - } - - ACTION bool ValidatePublisher(const std::string& addr_s, bool state, - const std::string& publisher) { - Address addr; - auto address_info = make_address(addr_s); - if(address_info.second){ - addr = address_info.first; - } - platon_assert(is_owner(), "O1- Owner only function"); - - verify_publisher_.self()[addr] = state; - - PLATON_EMIT_EVENT0(ValidatePublisherEv, addr, state, publisher); - - return true; - } - - ACTION bool ValidateWallet(const std::string& addr_s, bool state, - const std::string& wallet) { - Address addr; - auto address_info = make_address(addr_s); - if(address_info.second){ - addr = address_info.first; - } - platon_assert(is_owner(), "O1- Owner only function"); - - verify_wallet_.self()[addr] = state; - - PLATON_EMIT_EVENT0(ValidateWalletEv, addr, state, wallet); - - return true; - } - - ACTION bool ValidateFile(const std::string& to_addr, u128 payment, - const std::string& data, bool store, bool log) { - DEBUG("validate file", "to_addr", to_addr, "payment", payment, "data", data, - "store", store, "log", log, "price", validation_price_.get()); - Address to; - auto address_info = make_address(to_addr); - if(address_info.second){ - to = address_info.first; - } - auto sender = platon_caller(); - platon_assert(!paused_.get()); - platon_assert(payment >= validation_price_.get(), - "V1- Insufficient payment provided"); - - bool verify_publisher = false; - if (verify_publisher_.self().find(sender) != verify_publisher_.self().end()) { - verify_publisher = verify_publisher_.self().at(sender); - } - platon_assert(verify_publisher, "V2- Unverified publisher address"); - - bool frozen = false; - if (frozen_account_.self().find(sender) != frozen_account_.self().end()) { - frozen = frozen_account_.self().at(sender); - } - platon_assert(!frozen, "V3- The wallet of publisher is frozen"); - platon_assert(data.size() == 64, "V4- Invalid hash provided"); - - auto verify_wallet = false; - if (verify_wallet_.self().find(to) != verify_wallet_.self().end()) { - verify_wallet = verify_wallet_.self().at(to); - } - frozen = false; - if (frozen_account_.self().find(to) != frozen_account_.self().end()) { - frozen = true; - } - if (!verify_wallet || frozen) { - to = validation_wallet_.get(); - } - - u128 index = 0; - std::string file_hash(data); - - if (store) { - if (file_index_.self().size() > 0) { - platon_assert( - file_hashes_.self().find(file_hash) == file_hashes_.self().end(), - "V5- This hash was previously validated"); - } - - file_index_.self().push_back(file_hash); - file_hashes_.self()[file_hash] = FStruct{file_index_.self().size() - 1}; - index = file_hashes_.self().at(file_hash).index; - } - - if (Allowed(to, sender) >= payment) { - allowed_.self()[to][sender] = allowed_.self()[to][sender] - payment; - } else { - balances_.self()[sender] = Balance(sender) - payment; - balances_.self()[to] = Balance(to) + payment; - } - - if (log) { - PLATON_EMIT_EVENT0(ValidateFileEv, index, file_hash); - } - return true; - } - - CONST bool VerifyFile(const std::string& file_hash) { - if (file_index_.self().size() == 0) { - return false; - } - - u128 index = 0; - if (file_hashes_.self().find(file_hash) == file_hashes_.self().end()) { - return false; - } - index = file_hashes_.self().at(file_hash).index; - - auto fh = file_index_.self()[index]; - - if (fh.size() != file_hash.size()) { - return false; - } - - for (size_t i = 0; i < fh.size(); i++) { - if (fh[i] != file_hash[i]) { - return false; - } - } - return true; - } - - ACTION void SetPrice(u128 new_price) { - platon_assert(is_owner(), "O1- Owner only function"); - - validation_price_.self() = new_price; - } - - ACTION void SetWallet(const std::string& new_wallet_s) { - Address new_wallet; - auto address_info = make_address(new_wallet_s); - if(address_info.second){ - new_wallet = address_info.first; - } - platon_assert(is_owner(), "O1- Owner only function"); - validation_wallet_.self() = new_wallet; - } - - ACTION bool ListFiles(u128 start_at, u128 stop_at) { - platon_assert(is_owner(), "O1- Owner only function"); - - if (file_index_.self().size() == 0) { - return false; - } - - u128 max_index = file_index_.self().size() - 1; - - platon_assert(start_at <= max_index, "L1- Please select a valid start"); - if (stop_at > 0) { - platon_assert(stop_at > start_at && stop_at <= max_index, - "L2- Please selct a valid stop"); - } else { - stop_at = max_index; - } - - for (u128 i = start_at; i < stop_at; i++) { - PLATON_EMIT_EVENT0(LogEventEv, i, file_index_.get()[i]); - } - return true; - } - - private: - u128 Balance(const Address& addr) { - const auto& balances = balances_.self(); - if (balances.find(addr) != balances.end()) { - DEBUG("balance", "addr", addr.toString(), "balance", balances.at(addr)); - return balances.at(addr); - } - DEBUG("balance", "addr", addr.toString(), "balance", 0); - return 0; - } - - bool Frozen(const Address& addr) { - const auto& frozen_account = frozen_account_.self(); - if (frozen_account.find(addr) != frozen_account.end()) { - return frozen_account.at(addr); - } - return false; - } - - u128 Allowed(const Address& owner, const Address& allow) { - const auto& allowed = allowed_.self(); - if (allowed.find(owner) == allowed.end()) { - return 0; - } - - const auto& allower = allowed.at(owner); - if (allower.find(allow) != allower.end()) { - return allower.at(allow); - } - return 0; - } - - private: - StorageType<"total_supply"_n, u128> total_supply_; - StorageType<"paused"_n, bool> paused_; - - Map<"balances"_n, Address, u128> balances_; - Map<"allowed"_n, Address, std::map> allowed_; - Map<"frozen_account"_n, Address, bool> frozen_account_; - Map<"verify_publisher"_n, Address, bool> verify_publisher_; - Map<"verify_wallet"_n, Address, bool> verify_wallet_; - - struct FStruct { - u128 index; - PLATON_SERIALIZE(FStruct, (index)); - }; - Map<"file_hashes"_n, std::string, FStruct> file_hashes_; - Vector<"file_index"_n, std::string> file_index_; - - // const static std::string kName = "V-ID Token"; - const static uint8_t decimals = 18; - // const static std::string kSymbol = "VIDT"; - const static u128 kInitialSupply = 100000000; - const static u128 kUnit = 1000000000000000000; - - StorageType<"validation_price"_n, u128> validation_price_; - StorageType<"validation_wallet"_n, Address> validation_wallet_; -}; - -PLATON_DISPATCH( - VIDToken, - (init)(pause)(unpause)(Transfer)(TransferFrom)(BalanceOf)(Approve)( - IncreaseApproval)(DecreaseApproval)(Allowance)(TokenFallback)( - TransferToken)(Burn)(Freeze)(ValidatePublisher)(ValidateWallet)( - ValidateFile)(VerifyFile)(SetPrice)(SetWallet)(ListFiles)); diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/VRF.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/VRF.cpp deleted file mode 100644 index 4cef4771be..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/complex_contract/VRF.cpp +++ /dev/null @@ -1,370 +0,0 @@ -#define TESTNET -#include -#include -#include - -using namespace platon; - -/** - * VRF.sol合约 - * */ - -CONTRACT VRF : public platon::Contract{ - - private: - platon::StorageType<"groupOrder"_n, u128> groupOrder; - platon::StorageType<"fieldSize"_n, u128> fieldSize; - platon::StorageType<"wordlength"_n, u128> wordLengthBytes; - platon::StorageType<"bigmod"_n,std::array> bigModExpContractInputs; - platon::StorageType<"output"_n, u128> output; - platon::StorageType<"sqrtpower"_n, u128> sqrtPower; - platon::StorageType<"newcandi"_n,std::array> newCandiArr; - platon::StorageType<"rv"_n,std::array> rv; - platon::StorageType<"scalar"_n, u128> SCALAR_FROM_CURVE_POINTS_HASH_PREFIX; - platon::StorageType<"scalaprr"_n, u128> VRF_RANDOM_OUTPUT_HASH_PREFIX; - platon::StorageType<"prooflen"_n, u128> PROOF_LENGTH; - platon::StorageType<"addstr"_n, std::string> address_str; - platon::StorageType<"findhash"_n, u128> fieldHash128; - - public: - ACTION void init(){ - groupOrder.self() = "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141"_u128; - fieldSize.self() = "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F"_u128; - wordLengthBytes.self() = 32; //0x20; - SCALAR_FROM_CURVE_POINTS_HASH_PREFIX.self() = 2; - VRF_RANDOM_OUTPUT_HASH_PREFIX.self() = 3; -// address_str.self() = "lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzg4es8l"; - address_str.self() = "atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqz5qpd94"; - PROOF_LENGTH.self() = 64 + // PublicKey (uncompressed format.) - 64 + // Gamma - 32 + // C - 32 + // S - 32 + // Seed - 0 + // Dummy entry: The following elements are included for gas efficiency: - 32 + // uWitness (gets padded to 256 bits, even though it's only 160) - 64 + // cGammaWitness - 64 + // sHashWitness - 32; // zInv (Leave Output out, because that can be efficiently calculated) - - } - - u128 bigModExp(u128 base,u128 exponent){ - u128 callResult; - bigModExpContractInputs.self()[0] = wordLengthBytes.self(); - bigModExpContractInputs.self()[1] = wordLengthBytes.self(); - bigModExpContractInputs.self()[2] = wordLengthBytes.self(); - bigModExpContractInputs.self()[3] = base; - bigModExpContractInputs.self()[4] = exponent; - bigModExpContractInputs.self()[5] = fieldSize.self(); - - u128 value = 0; //转账金额 - u128 gas = 4712388; //预估的手续费 - std::string addr = "0x05";//目标合约地址 - platon::bytes params = platon::cross_call_args("data", bigModExpContractInputs.self()); - - u128 resulth128; - - Address addr3; - auto address_info3 = make_address(addr); - if(address_info3.second){ - addr3 = address_info3.first; - } - - if (platon_call(addr3, params, value, gas)) { - platon::bytes ret; - size_t len = platon_get_call_output_length(); - ret.resize(len); - platon_get_call_output(ret.data()); - std::string str = toHex(ret); - resulth128 = std::stoull(str); - } - return resulth128; - - } - - u128 getSqrtPower(){ - return (fieldSize.self()+1) >>2; - } - - u128 squareRoot(u128 x){ - return bigModExp(x,getSqrtPower()); - } - - u128 ySquared(u128 x){ - u128 value1 = x*x%fieldSize.self(); - u128 xCubed = x*value1%fieldSize.self(); - return (xCubed+7)%fieldSize.self(); - } - - bool isOnCurve(u128 p1,u128 p2){ - return ySquared(p1) == p2*p2%fieldSize.self(); - } - - //c++实现keccak256算法实现未开发 - // u128 fieldHash(bytes &b){ - u128 fieldHash(bytes &bt){ -// h256 res = platon_sha256(bt);//h256转u128 -// fieldHash128.self() = toHex(res.toString()) -// std::string res1 = std::to_string(res); -// while(res >= fieldSize.self()){ -// res = platon_sha256(res); -// std::string str = toHex(res); -// base = std::stoul(str); -// } - return fieldHash128.self(); - } - - bytes keccak256(bytes &bt){ - u128 value = 12; - u128 gas = 4712388; -// std::string target_addr = "lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzg4es8l"; - std::string target_addr = "atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqz5qpd94"; - platon::bytes ret; - - auto address_info = make_address(target_addr); - if(address_info.second){ - Address addr = address_info.first; - if (platon_call(addr, bt, value, gas)) { - size_t len = platon_get_call_output_length(); - ret.resize(len); - platon_get_call_output(ret.data()); - }else{ - platon_panic(); - } - } - - - return ret; - } - - // std::array newCandidateSecp256k1Point(bytes &bt){ - ACTION std::array newCandidateSecp256k1Point(bytes bt){ - newCandiArr.self()[0] = fieldHash(bt); - newCandiArr.self()[1] = squareRoot(ySquared(newCandiArr.self()[0])); - if (newCandiArr.self()[1] % 2 ==1){ - newCandiArr.self()[1] = fieldSize.self() - newCandiArr.self()[1]; - } - return newCandiArr.self(); - } - - - std::array hashToCurve(u128 &pk1,u128 pk2,u128 input){ - // u128 pk1 = 0;//test - std::string datapk1str = std::to_string(pk1); - bytes datapk1; - datapk1.insert(datapk1.begin(), datapk1str.begin(), datapk1str.end()); - - rv.self() = newCandidateSecp256k1Point(datapk1); - - while(!isOnCurve(rv.self()[0],rv.self()[1])){ - // rv.self() = newCandidateSecp256k1Point(fromHex(pk1)); - rv.self() = newCandidateSecp256k1Point(datapk1); - } - return rv.self(); - } - - bool ecmulVerify(std::array multiplicand,u128 scalar,std::array product){ - platon_assert(scalar != 0, "bad value"); - u128 x = multiplicand[0]; - u128 v = multiplicand[1] % 2 == 0 ? 27 : 28; - // platon::bytes scalarTimesX = fromHex(scalar*x%groupOrder.self()); - // Address actual = ecrecover(fromHex(0),v,fromHex(x),groupOrder.self());//待处理 - // Address exponent = Address(uint256(keccak256(abi.encodePacked(product))));//待处理 - - return (address_str.self() == address_str.self()); - } - - std::array projectiveSub(u128 x1,u128 z1,u128 x2,u128 z2){ - u128 num1 = z2*x1%fieldSize.self(); - u128 num2 = (fieldSize.self()-x2)*z1%fieldSize.self(); - std::array arrays; - arrays[0] = (num1+num2)%fieldSize; - arrays[1] = (z1*z2)%fieldSize.self(); - - return arrays; - } - - // Returns x1/z1*x2/z2=(x1x2)/(z1z2), in projective coordinates on P¹(𝔽ₙ) - std::array projectiveMul(u128 x1,u128 z1,u128 x2,u128 z2){ - std::array arr; - arr[0] = x1*x2%fieldSize.self(); - arr[1] = z1*z2%fieldSize.self(); - - return arr; - } - - std::array projectiveECAdd(u128 px,u128 py,u128 qx,u128 qy){ - std::array resArr; - - // std::tuple (z1,z2) = make_tuple(1,1); - u128 z1 =1; - u128 z2 =1; - u128 lx = (qx+fieldSize.self()-py)%fieldSize.self(); - u128 lz = (qx+fieldSize.self()-px)%fieldSize.self(); - u128 dx; - - std::array sxdx1 = projectiveMul(lx, lz, lx, lz); // ((qy-py)/(qx-px))^2 - std::array sxdx2 = projectiveSub(resArr[0], dx, px, z1); // ((qy-py)/(qx-px))^2-px - std::array sxdx3 = projectiveSub(resArr[0], dx, qx, z2); // ((qy-py)/(qx-px))^2-px-qx - - u128 dy; - std::array sydy1 = projectiveSub(px, z1, sxdx3[0], dx); // px-sx - std::array sydy2 = projectiveMul(resArr[1], dy, lx, lz); // ((qy-py)/(qx-px))(px-sx) - std::array sydy3 = projectiveSub(resArr[1], dy, py, z1); // ((qy-py)/(qx-px))(px-sx)-py - - - - if(sxdx1[0] !=sydy1[0] || sxdx1[1] !=sydy1[1] || sxdx2[0] !=sydy2[0] || sxdx2[1] !=sydy2[1] || sxdx3[0] !=sydy3[0] || sxdx3[1] !=sydy3[1]){ - resArr[0] = (sxdx3[1]*dy%fieldSize.self()); - resArr[1] = (sydy3[1]*dx%fieldSize.self()); - resArr[2] = (dx*dy%fieldSize.self()); - }else{ - resArr[0] = sxdx3[0]; - resArr[1] = sydy3[0]; - resArr[2] = sxdx3[0]; - } - return resArr; - } - - std::array affineECAdd(std::array p1,std::array p2,u128 invZ){ - u128 x; - u128 y; - u128 z; - std::array arr3 = projectiveECAdd(p1[0], p1[1], p2[0], p2[1]); - - platon_assert( z*invZ%fieldSize.self() == 1, "bad value"); - - std::array resArr; - resArr[0] = x*invZ%fieldSize.self(); - resArr[1] = y*invZ%fieldSize.self(); - return resArr; - } - - bool verifyLinearCombinationWithGenerator(u128 c,std::array p,u128 s,Address lcWitness){ - u128 value = 12; - u128 gas = 4712388; - - Address addr; -// auto address_info = make_address("lax1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqvj4t2u"); - auto address_info = make_address("atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqs8dkgk"); - if(address_info.second){ - addr = address_info.first; - } - - platon_assert( lcWitness != addr, "bad value"); - u128 v = (p[1] % 2 == 0) ? 27 : 28; - - std::string datastr = std::to_string((groupOrder.self() - p[0]*s%groupOrder.self())); - bytes data; - data.insert(data.begin(), datastr.begin(), datastr.end()); - - platon::bytes pseudoHash = data; // -s*p[0] - - std::string data1str = std::to_string(c*p[0]%groupOrder.self()); - bytes data1; - data1.insert(data1.begin(), data1str.begin(), data1str.end()); - - platon::bytes pseudoSignature = data1; // c*p[0] -// Address computed = ecrecover(pseudoHash, v, fromHex(p[0]), pseudoSignature); - Address computed = addr; - - Address addr2; - auto address_info2 = make_address(address_str.self()); - if(address_info2.second){ - addr2 = address_info2.first; - } - - if (platon_call(addr2, pseudoSignature, value, gas)) { - platon::bytes ret; - size_t len = platon_get_call_output_length(); - ret.resize(len); - platon_get_call_output(ret.data()); - std::string str = toHex(ret); - - Address addr3; - auto address_info3 = make_address(address_str.self()); - if(address_info3.second){ - addr3 = address_info3.first; - } - - computed = addr3; - } - - return computed == lcWitness; - } - - std::array linearCombination(u128 c,std::array p1,std::array cp1Witness, - u128 s, std::array p2,std::array sp2Witness,u128 zInv){ - std::array arr1; - // arr1[0] = p1; - // arr1[1] = c; - // arr1[2] = cp1Witness; - platon_assert( ecmulVerify(p1,c,cp1Witness), "bad value"); - platon_assert( ecmulVerify(p2,s,sp2Witness), "bad value"); - return affineECAdd(cp1Witness, sp2Witness, zInv); - } - - u128 scalarFromCurvePoints(std::array hash,std::array pk,std::array gamma, - Address uWitness,std::array v){ - u128 res = 0; //输入参数进行转换 - platon::bytes inputBytes; - - std::vector result; - result.resize(32); - platon_sha256(inputBytes, result.data()); - - //uint256(keccak256(abi.encodePacked(SCALAR_FROM_CURVE_POINTS_HASH_PREFIX,hash, pk, gamma, v, uWitness))); - return res; - } - - void verifyVRFProof(std::array pk,std::array gamma,u128 c,u128 s, - u128 seed,Address uWitness,std::array cGammaWitness, - std::array sHashWitness,u128 zInv){ - platon_assert(isOnCurve(pk[0],pk[1]), "public key is not on curve"); - platon_assert(isOnCurve(gamma[0],gamma[1]), "gamma is not on curve"); - platon_assert(isOnCurve(cGammaWitness[0],cGammaWitness[1]), "cGammaWitness is not on curve"); - platon_assert(isOnCurve(sHashWitness[0],sHashWitness[1]), "sHashWitness is not on curve"); - platon_assert(verifyLinearCombinationWithGenerator(c, pk, s, uWitness),"addr(c*pk+s*g)≠_uWitness"); - - std::array hash = hashToCurve(pk[0],pk[1],seed); - std::array v = linearCombination(c, gamma, cGammaWitness, s, hash, sHashWitness, zInv); - u128 derivedC = scalarFromCurvePoints(hash, pk, gamma, uWitness, v); - platon_assert(c == derivedC, "invalid proof"); - } - - ACTION h256 randomValueFromVRFProof(bytes proof){ - platon_assert(sizeof(proof) == PROOF_LENGTH.self(), "wrong proof length"); - - std::array pk; // parse proof contents into these variables - std::array gamma; - std::array cSSeed; - Address uWitness; - std::array cGammaWitness; - std::array sHashWitness; - u128 zInv; - //FIXME - // (pk, gamma, cSSeed, uWitness, cGammaWitness, sHashWitness, zInv) = abi.decode( //不好翻译 - // proof, (uint256[2], uint256[2], uint256[3], address, uint256[2], - // uint256[2], uint256)); - verifyVRFProof( - pk, - gamma, - cSSeed[0], // c - cSSeed[1], // s - cSSeed[2], // seed - uWitness, - cGammaWitness, - sHashWitness, - zInv - ); - platon::bytes gammaBytes; - h256 output; - std::vector result; - result.resize(32); - platon_sha256(gammaBytes, result.data()); - return output; - } -}; - -PLATON_DISPATCH(VRF, (init)(newCandidateSecp256k1Point)(randomValueFromVRFProof)) - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_clone/createContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_clone/createContract.cpp deleted file mode 100644 index 3c2fcf1537..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_clone/createContract.cpp +++ /dev/null @@ -1,107 +0,0 @@ -#undef NDEBUG -#define TESTNET -#include - -using namespace platon; - -CONTRACT UpdateContract : public platon::Contract { - public: - CONST void init(){} - - CONST int32_t get_contract_length(const Address & contract_address){ - size_t code_length = platon_contract_code_length(contract_address.data()); - if(0 == code_length) return 0; - bytes contract_code(code_length); - int32_t result = platon_contract_code(contract_address.data(), contract_code.data(), code_length); - return result; - } - - ACTION void deploy_contract(const Address & contract_address){ - size_t code_length = platon_contract_code_length(contract_address.data()); - if(0 == code_length) return; - bytes contract_code(code_length); - int32_t result = platon_contract_code(contract_address.data(), contract_code.data(), code_length); - if(result <= 0) return; - auto info = platon_create_contract(contract_code, 0U, 0U); - if(info.second) set_state("deploy", info.first); - } - - CONST Address get_deploy_address(){ - Address result; - get_state("deploy", result); - return result; - } - - ACTION void clone_contract(const Address & contract_address){ - auto info = platon_create_contract(contract_address, 0U, 0U); - if(info.second) set_state("clone", info.first); - } - - CONST Address get_clone_address(){ - Address result; - get_state("clone", result); - return result; - } - - ACTION void set_simple_address(const Address& addr){ - set_state("simple", addr); - } - - CONST Address get_simple_address(){ - Address result; - get_state("simple", result); - return result; - } - - ACTION void migrate(const Address & contract_address){ - size_t code_length = platon_contract_code_length(contract_address.data()); - if(0 == code_length) return; - bytes contract_code(code_length); - int32_t get_result = platon_contract_code(contract_address.data(), contract_code.data(), code_length); - if(get_result <= 0 ) return; - - // value and gas - bytes value_bytes = value_to_bytes(0U); - bytes gas_bytes = value_to_bytes(0U); - - // deploy agrs - std::vector magic_number = {0x00, 0x61, 0x73, 0x6d}; - bytes init_rlp = cross_call_args("init"); - RLPSize rlps; - rlps << contract_code << init_rlp; - RLPStream stream; - stream.appendPrefix(magic_number); - stream.reserve(rlps.size() + 4); - stream.appendList(2); - stream << contract_code << init_rlp; - bytesRef result = stream.out(); - - // migrate - Address return_address; - platon_migrate(return_address.data(), result.data(), result.size(), value_bytes.data(), value_bytes.size(), gas_bytes.data(), gas_bytes.size()); - - // // set new address - Address simple_address = get_simple_address(); - platon_call(simple_address, 0U, 0U, "set_address", return_address); - } - - ACTION void migrate_clone(const Address & contract_address){ - // value and gas - bytes value_bytes = value_to_bytes(0U); - bytes gas_bytes = value_to_bytes(0U); - - // init args - bytes init_rlp = cross_call_args("init"); - - // migrate - Address return_address; - platon_clone_migrate(contract_address.data(), return_address.data(), init_rlp.data(), init_rlp.size(), value_bytes.data(), value_bytes.size(), gas_bytes.data(), gas_bytes.size()); - - // set new address - Address simple_address = get_simple_address(); - platon_call(simple_address, 0U, 0U, "set_address", return_address); - } -}; - -PLATON_DISPATCH(UpdateContract, (init)(get_contract_length)(deploy_contract)(get_deploy_address)(clone_contract)(get_clone_address) - (set_simple_address)(get_simple_address)(migrate)(migrate_clone)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_clone/simpleContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_clone/simpleContract.cpp deleted file mode 100644 index d3d904467b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_clone/simpleContract.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#define TESTNET -#include -using namespace platon; - -CONTRACT SimpleStorage: public platon::Contract -{ - public: - ACTION void init(){} - - ACTION void set(uint64_t input) - { - storedData.self() = input; - } - - CONST uint64_t get() - { - return storedData.self(); - } - - ACTION void set_address(const Address &addr) - { - migrateAddress.self() = addr; - } - - CONST Address get_address() - { - return migrateAddress.self(); - } - - private: - platon::StorageType<"sstored"_n, uint64_t> storedData; - platon::StorageType<"migrate_address"_n, Address> migrateAddress; -}; - -PLATON_DISPATCH(SimpleStorage,(init)(set)(get)(set_address)(get_address)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitOverload.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitOverload.cpp deleted file mode 100644 index 80e107cb07..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitOverload.cpp +++ /dev/null @@ -1,61 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - /** - * 验证init函数能否重载 - * 1.当对init函数进行重载时,不管是否添加ACTION关键字编译都出错 - * 2.其它函数也不行进行重载 - * 3.二进制文件校验(删除前端两个字符看部署是否成功) - * 执行结果:修改wasm文件可以编译成功,但是调用返回的结果为空 - * 编译:./platon-cpp vectortest.cpp -std=c++17 - * 打开ctool工具:./pWASM-ctool --config config.json - * 部署:deploy --wasm vectortest.wasm - * 调用:invoke --addr 0x3a4B0C739F0F3fd9B11bee33997636c21e9b13Cd --func add_vector --params {"one_name":"1"} - * 查询:call --addr 0x3a4B0C739F0F3fd9B11bee33997636c21e9b13Cd --func get_vector --params {"index":0} - */ -class person { - public: - person(){} - person(const std::string &my_name):name(my_name){} - std::string name; - PLATON_SERIALIZE(person, (name)) -}; - -//extern char const person_vector[] = "input_vector"; - -CONTRACT InitOverload : public platon::Contract{ - public: - ACTION void init(){} - - /** - //init函数重载编译失败 - void init(const std::string  &init_name){ - input_vector.self().push_back(person(init_name)); - } -*/ - - - ACTION void add_vector(const std::string &one_name){ - input_vector.self().push_back(person(one_name)); - } - - CONST uint64_t get_vector_size(){ - return input_vector.self().size(); - } - - CONST std::string get_vector(uint8_t index){ - return input_vector.self()[index].name; - } -/** - std::string get_vector(){ - return input_vector.self()[0].name; - } -*/ - - private: - platon::StorageType<"pvector"_n, std::vector> input_vector; -}; - -PLATON_DISPATCH(InitOverload, (init)(add_vector)(get_vector_size)(get_vector)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitOverloadWithString.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitOverloadWithString.cpp deleted file mode 100644 index 434984626d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitOverloadWithString.cpp +++ /dev/null @@ -1,55 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - - -CONTRACT InitOverloadWithString : public platon::Contract{ - public: - ACTION void init(const std::string &initStr){ - str.self() = initStr; - } - - //获取字符串长度 - CONST std::string get_string(){ - return str.self(); - } - - //获取字符串长度 - CONST uint8_t string_length(){ - return str.self().size(); - } - - //字符串连接 - CONST std::string string_splice(const std::string &spliceStr){ - return str.self() + spliceStr; - } - - //字符串比较 - CONST int8_t string_compare(const std::string &strone,const std::string &strtwo){ - if(strone > strtwo){ - return 1; - }else if (strone == strtwo){ - return 0; - }else{ - return -1; - } - } - - //字符串倒置 - ACTION void string_reverse(const std::string &reverseStr){ - return reverse(str.self().begin(),str.self().end()); - } - - //字符串查找 - CONST int8_t string_find(const std::string &findStr){ - return str.self().find(findStr); - } - - - private: - platon::StorageType<"stropt"_n, std::string> str; -}; - -PLATON_DISPATCH(InitOverloadWithString, (init)(get_string)(string_length)(string_splice)(string_compare)(string_reverse)(string_find)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithArrayParams.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithArrayParams.cpp deleted file mode 100644 index 044875a076..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithArrayParams.cpp +++ /dev/null @@ -1,42 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - - -CONTRACT InitWithArrayParams : public platon::Contract{ - public: - ACTION void init(const std::array &inArray){ - strarray.self() = inArray; - } - - ACTION void set_array(const std::array &inArray){ - strarray.self() = inArray; - } - CONST std::array get_array(){ - return strarray.self(); - } - - //array size - CONST uint8_t get_array_size(){ - return strarray.self().size(); - } - - //判断数组中是否有指定元素的数据 - CONST bool get_array_contain_element(std::string &value){ - bool flg = false; - for(auto iter = strarray.self().begin(); iter != strarray.self().end(); iter++) { - DEBUG("InitWithArrayParams", "get_array_contain_element", *iter); - if( *iter == value ){ - flg = true; - break; - } - } - return flg; - } - - private: - platon::StorageType<"strarray"_n, std::array> strarray; -}; - -PLATON_DISPATCH(InitWithArrayParams, (init)(set_array)(get_array)(get_array_size)(get_array_contain_element)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithListParams.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithListParams.cpp deleted file mode 100644 index ad74047638..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithListParams.cpp +++ /dev/null @@ -1,88 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - - -CONTRACT InitWithListParams : public platon::Contract{ - public: - ACTION void init(const std::list &inList){ - slist.self() = inList; - } - - ACTION void set_list(const std::list &inList){ - slist.self() = inList; - } - - CONST std::list get_list(){ - return slist.self(); - } - - ACTION void set_list_list(const std::list> &inlistlist){ - slistlist.self() = inlistlist; - } - - CONST std::list> get_list_list(){ - return slistlist.self(); - } - - //list add element - ACTION void add_list_element(std::string &value){ - slist.self().push_back(value); - } - - //返回最后一个元素 - CONST std::string get_list_last_element(){ - return slist.self().back(); - } - - //返回第一个元素 - CONST std::string get_list_first_element(){ - return slist.self().front(); - } - - //删除所有元素 - ACTION void list_clear(){ - slist.self().clear(); - } - - //删除一个元素 - ACTION void list_remove_element(std::string &element){ - slist.self().remove(element); - } - - //删除最后一个元素 - ACTION void list_pop_back(){ - slist.self().pop_back(); - } - - //删除第一个元素 - ACTION void list_pop_front(){ - slist.self().pop_front(); - } - - //list中元素个数 - CONST uint8_t list_size(){ - return slist.self().size(); - } - - //删除list中重复的元素 - ACTION void list_unique(){ - slist.self().unique(); - } - - //两个list合并 - ACTION void list_merge(const std::list &inList){ - auto& l = slist.self(); - l.insert(l.end(), inList.begin(), inList.end()); - } - - private: - platon::StorageType<"list"_n, std::list> slist; - platon::StorageType<"listlist"_n, std::list>> slistlist; -}; - -PLATON_DISPATCH(InitWithListParams, (init)(set_list)(get_list)(set_list_list)(get_list_list) -(add_list_element)(get_list_last_element)(get_list_first_element)(list_clear)(list_remove_element)(list_pop_back)(list_pop_front)(list_size) -(list_unique)(list_merge)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithMap.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithMap.cpp deleted file mode 100644 index 5412d6dc20..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithMap.cpp +++ /dev/null @@ -1,27 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - - -CONTRACT InitWithMap : public platon::Contract{ - public: - ACTION void init(std::string &key, std::string &value){ - maps.self()[key] = value; - } - - ACTION void set_map(std::string &key, std::string &value){ - maps.self()[key] = value; - } - - - CONST std::string get_map(std::string &key){ - return maps.self()[key]; - } - - private: - platon::StorageType<"initmap"_n, std::map> maps; -}; - -PLATON_DISPATCH(InitWithMap, (init)(set_map)(get_map)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithMapParams.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithMapParams.cpp deleted file mode 100644 index 0a49b7244f..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithMapParams.cpp +++ /dev/null @@ -1,77 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - - -CONTRACT InitWithParams : public platon::Contract{ - public: - ACTION void init(const std::map &inMap){ - strmap.self() = inMap; - } - - ACTION void add_map(const std::map &inMap){ - strmap.self() = inMap; - } - CONST std::map get_map(){ - return strmap.self(); - } - - ACTION void add_map_map(const std::map> &inMapmap){ - mapmap.self() = inMapmap; - } - CONST std::map> get_map_map(){ - return mapmap.self(); - } - - ACTION void add_map_list(const std::map> &inMaplist){ - maplist.self() = inMaplist; - } - CONST std::map> get_map_list(){ - return maplist.self(); - } - - //map add element - ACTION void add_map_element(std::string &key,std::string &value){ - strmap.self().insert(pair(key,value)); - } - - //map delete element - ACTION void delete_map_element(std::string &key){ - strmap.self().erase(key); - } - - //map find value by key - CONST std::string find_element_bykey(std::string &key){ - if(strmap.self().count(key)>0){ - return strmap.self()[key]; - } - return ""; - } - - //map size - CONST uint8_t get_map_size(){ - return strmap.self().size(); - } - - //map add map - ACTION void addMap(const std::map& inMap) { - for (auto iter=inMap.begin(); iter!=inMap.end(); iter++) { - DEBUG("InitWithParams", "inMap", iter->first, iter->second); - if(strmap.self().count(iter->first)>0){ - continue; - }else{ - strmap.self()[iter->first] = iter->second; - } - } - } - - - private: - platon::StorageType<"strmap"_n, std::map> strmap; - platon::StorageType<"mapmap"_n, std::map>> mapmap; - platon::StorageType<"maplist"_n, std::map>> maplist; -}; - -PLATON_DISPATCH(InitWithParams, (init)(add_map)(get_map)(add_map_map)(get_map_map)(add_map_list)(get_map_list)(add_map_element)(delete_map_element)(find_element_bykey)(get_map_size)(addMap)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithObjectParams.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithObjectParams.cpp deleted file mode 100644 index 4be7aa5bd9..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithObjectParams.cpp +++ /dev/null @@ -1,43 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -class message { - public: - message(){} - message(const std::string &p_head):head(p_head){} - private: - std::string head; - PLATON_SERIALIZE(message, (head)) -}; - -class my_message : public message { - public: - my_message(){} - my_message(const std::string &p_head, const std::string &p_body, const std::string &p_end):message(p_head), body(p_body), end(p_end){} - private: - std::string body; - std::string end; - PLATON_SERIALIZE_DERIVED(my_message, message, (body)(end)) -}; - -CONTRACT InitWithObjectParams : public platon::Contract{ - public: - ACTION void init(const my_message &one_message){ - info.self().push_back(one_message); - } - - ACTION std::vector add_message(const my_message &one_message){ - info.self().push_back(one_message); - return info.self(); - } - CONST std::vector get_message(const std::string &name){ - return info.self(); - } - - private: - platon::StorageType<"cinfo"_n, std::vector> info; -}; - -PLATON_DISPATCH(InitWithObjectParams, (init)(add_message)(get_message)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithParams.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithParams.cpp deleted file mode 100644 index 90f9bfaa17..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithParams.cpp +++ /dev/null @@ -1,34 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -class Person { - public: - Person(){} - Person(const std::string &my_name):name(my_name){} - std::string name; - PLATON_SERIALIZE(Person, (name)) -}; - -//extern char const person_vector[] = "person_vector"; - -CONTRACT InitWithParams : public platon::Contract{ - public: - ACTION void init(const std::string &init_name){ - info.self().push_back(Person(init_name)); - } - - ACTION std::vector add_person(const Person &one_person){ - info.self().push_back(one_person); - return info.self(); - } - CONST std::vector get_person(){ - return info.self(); - } - - private: - platon::StorageType<"pvector"_n, std::vector> info; -}; - -PLATON_DISPATCH(InitWithParams, (init)(add_person)(get_person)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithSetParams.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithSetParams.cpp deleted file mode 100644 index 387add6950..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithSetParams.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - - -CONTRACT InitWithSetParams : public platon::Contract{ - public: - ACTION void init(const std::set &inSet){ - strSet.self() = inSet; - } - - ACTION void add_set(const std::set &inSet){ - strSet.self() = inSet; - } - CONST std::set get_set(){ - return strSet.self(); - } - - private: - platon::StorageType<"strset"_n, std::set> strSet; -}; - -PLATON_DISPATCH(InitWithSetParams, (init)(add_set)(get_set)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithStruct.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithStruct.cpp deleted file mode 100644 index 78ec8c9f8f..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithStruct.cpp +++ /dev/null @@ -1,51 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - /** - * 验证init函数能否重载 - * 1.当对init函数进行重载时,不管是否添加ACTION关键字编译都出错 - * 2.其它函数也不行进行重载 - * 3.二进制文件校验(删除前端两个字符看部署是否成功) - * 执行结果:修改wasm文件可以编译成功,但是调用返回的结果为空 - * 编译:./platon-cpp vectortest.cpp -std=c++17 - * 打开ctool工具:./pWASM-ctool --config config.json - * 部署:deploy --wasm vectortest.wasm - * 调用:invoke --addr 0x3a4B0C739F0F3fd9B11bee33997636c21e9b13Cd --func add_vector --params {"one_name":"1"} - * 查询:call --addr 0x3a4B0C739F0F3fd9B11bee33997636c21e9b13Cd --func get_vector --params {"index":0} - */ -struct person { - public: - std::string name; - uint64_t age; - - person(){} - person(const std::string &my_name,uint64_t &my_age):name(my_name),age(my_age){} - - PLATON_SERIALIZE(person, (name)(age)) -}; - -//extern char const person_vector[] = "input_vector"; - -CONTRACT InitWithStruct : public platon::Contract{ - public: - ACTION void init(){} - - ACTION void add_vector(const std::string &one_name,uint64_t &one_age){ - input_vector.self().push_back(person(one_name,one_age)); - } - - CONST uint64_t get_vector_size(){ - return input_vector.self().size(); - } - - CONST std::string get_vector(uint8_t index){ - return input_vector.self()[index].name; - } - - private: - platon::StorageType<"pvector"_n, std::vector> input_vector; -}; - -PLATON_DISPATCH(InitWithStruct, (init)(add_vector)(get_vector_size)(get_vector)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithVector.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithVector.cpp deleted file mode 100644 index 093476f33d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_create/InitWithVector.cpp +++ /dev/null @@ -1,85 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - - -CONTRACT InitWithVector : public platon::Contract{ - public: - ACTION void init(uint16_t &age){ - ageVector.self().push_back(age); - } - - ACTION void add_vector(uint64_t &one_age){ - ageVector.self().push_back(one_age); - } - - CONST uint64_t get_vector_size(){ - return ageVector.self().size(); - } - - CONST uint64_t get_vector(uint8_t index){ - return ageVector.self()[index]; - } - - //push_back 在数组的最后添加一个数据 - ACTION void vector_push_back_element(std::string &value){ - strvector.self().push_back(value); - } - //insert 在第index元素后面插入value(如果index超过vector最后一个元素,则插入最后面) - ACTION void vector_insert_element(std::string &value,uint8_t index){ - if(index > strvector.self().size()){ - strvector.self().insert(strvector.self().end(),value); - }else{ - strvector.self().insert(strvector.self().begin()+index,value); - } - - } - //pop_back 去掉数组的最后一个数据 - ACTION void vector_pop_back_element(){ - strvector.self().pop_back(); - } - //vector size - CONST uint8_t get_strvector_size(){ - return strvector.self().size(); - } - //得到编号位置的数据 - CONST std::string get_vector_element_by_position(uint8_t index){ - return strvector.self().at(index); - } - - - //验证for 循环 - ACTION void vectorFor(const std::vector &inVector) { - for(auto iter = inVector.begin(); iter != inVector.end(); iter++) { - DEBUG("InitWithVector", "setSet", *iter); - } - strvector.self() = inVector; - } - - //验证switch语句 - ACTION void vectorCase(const std::vector &inVector) { - switch(inVector.size()){ - case 1: str.self()="1";break; - case 2: str.self()="2";break; - case 3: str.self()="3";break; - case 4: str.self()="4";break; - case 5: str.self()="5";break; - default: str.self()="big than 5";break; - } - } - - CONST std::string get_vectorCase_result(){ - return str.self(); - } - - - private: - platon::StorageType<"agevector"_n, std::vector> ageVector; - platon::StorageType<"strvector"_n, std::vector> strvector; - platon::StorageType<"strvar"_n, std::string> str; -}; - -PLATON_DISPATCH(InitWithVector, (init)(add_vector)(get_vector_size)(get_vector)(vector_push_back_element) -(vector_insert_element)(vector_pop_back_element)(get_strvector_size)(get_vector_element_by_position)(vectorFor)(vectorCase)(get_vectorCase_result)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCallPPOS.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCallPPOS.cpp deleted file mode 100644 index 802d713077..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCallPPOS.cpp +++ /dev/null @@ -1,57 +0,0 @@ -#define TESTNET -#include -#include -#include -#undef NDEBUG - -using namespace platon; - -CONTRACT call_ppos : public platon::Contract { - public: - ACTION void init(){} - - ACTION uint64_t cross_call_ppos_send (std::string target_addr, std::string &in, uint64_t value, uint64_t gas) { - platon::bytes input = fromHex(in); - - auto address_info = make_address(target_addr); - - printf("address_info.first:%s\t\n", address_info.first.toString().c_str()); - printf("address_info.second:%s\t\n", address_info.second ? "true" : "false"); - - if(address_info.second){ - if (platon_call(address_info.first, input, value, gas)) { - platon_call(address_info.first, input, value, gas); - platon_call(address_info.first, input, value, gas); - DEBUG("cross call contract cross_call_ppos_send success", "address", target_addr); - return 0; - } - } - DEBUG("cross call contract cross_call_ppos_send fail", "address", target_addr); - return 1; - } - - CONST const std::string cross_call_ppos_query (std::string target_addr, std::string &in, uint64_t value, uint64_t gas) { - platon::bytes input = fromHex(in); - - auto address_info = make_address(target_addr); - if(address_info.second){ - if (platon_call(address_info.first, input, value, gas)) { - DEBUG("cross call contract cross_call_ppos_query success", "address", target_addr); - platon::bytes ret; - size_t len = platon_get_call_output_length(); - ret.resize(len); - platon_get_call_output(ret.data()); - std::string str = toHex(ret); - DEBUG("cross call contract cross_call_ppos_query success", "ret", str); - return str; - } - } - - - DEBUG("cross call contract cross_call_ppos_query fail", "address", target_addr); - return ""; - } - -}; - -PLATON_DISPATCH(call_ppos, (init)(cross_call_ppos_send)(cross_call_ppos_query)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCallPrecompile.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCallPrecompile.cpp deleted file mode 100644 index 44004044fe..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCallPrecompile.cpp +++ /dev/null @@ -1,303 +0,0 @@ -#define TESTNET -#include -#include -#include - -using namespace platon; - -CONTRACT call_precompile : public platon::Contract { - public: - ACTION void init(){} - - - CONST const std::string cross_call_ecrecover (platon::bytes msgh, uint8_t v, platon::bytes r, platon::bytes s, uint64_t value, uint64_t gas) { - - // uint8_t to bytes32 - std::vector vbytes; - vbytes.resize(32); - memset(vbytes.data(), 0, 32); - vbytes[31] = v; - - // v append to msgh - std::copy(vbytes.begin(), vbytes.end(), std::back_inserter(msgh)); - - // append r - std::copy(r.begin(), r.end(), std::back_inserter(msgh)); - // append s - std::copy(s.begin(), s.end(), std::back_inserter(msgh)); - - platon::bytes input = msgh; - -// std::string addr = "lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpxxvxfq"; - std::string addr = "atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqp6n5mt2"; - auto address_info = make_address(addr); - if(address_info.second){ - if (platon_call(address_info.first, input, value, gas)) { - DEBUG("cross call contract ecrecover success", "address", addr); - - platon::bytes ret; - size_t len = platon_get_call_output_length(); - - ret.resize(len); - platon_get_call_output(ret.data()); - - std::string str = toHex(ret); - - DEBUG("cross call contract ecrecover success", "acc", str); - - return str; - } - } - - - DEBUG("cross call contract ecrecover fail", "address", addr); - return ""; - } - - - - CONST const std::string cross_call_sha256hash (std::string &in, uint64_t value, uint64_t gas) { - - - platon::bytes input = fromHex(in); - -// std::string addr = "lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzg4es8l"; - std::string addr = "atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqz5qpd94"; - - auto address_info = make_address(addr); - if(address_info.second){ - if (platon_call(address_info.first, input, value, gas)) { - DEBUG("cross call contract sha256hash success", "address", addr); - - platon::bytes ret; - size_t len = platon_get_call_output_length(); - - ret.resize(len); - platon_get_call_output(ret.data()); - - std::string str = toHex(ret); - DEBUG("cross call contract sha256hash success", "hash", str); - return str; - } - } - - - DEBUG("cross call contract sha256hash fail", "address", addr); - return ""; - } - - - CONST const std::string cross_call_ripemd160hash (std::string &in, uint64_t value, uint64_t gas) { - - - platon::bytes input = fromHex(in); - -// std::string addr = "lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr4rd96d"; - std::string addr = "atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqrfk4cc8"; - - auto address_info = make_address(addr); - if(address_info.second){ - if (platon_call(address_info.first, input, value, gas)) { - DEBUG("cross call contract ripemd160hash success", "address", addr); - - platon::bytes ret; - size_t len = platon_get_call_output_length(); - - ret.resize(len); - platon_get_call_output(ret.data()); - - std::string str = toHex(ret); - DEBUG("cross call contract ripemd160hash success", "hash", str); - return str; - } - } - - - DEBUG("cross call contract ripemd160hash fail", "address", addr); - return ""; - } - - - CONST const std::string cross_call_dataCopy (std::string &in, uint64_t value, uint64_t gas) { - - - platon::bytes input = fromHex(in); - -// std::string addr = "lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqy5664mg"; - std::string addr = "atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqyg0zgez"; - - auto address_info = make_address(addr); - if(address_info.second){ - if (platon_call(address_info.first, input, value, gas)) { - DEBUG("cross call contract dataCopy success", "address", addr); - - platon::bytes ret; - size_t len = platon_get_call_output_length(); - - ret.resize(len); - platon_get_call_output(ret.data()); - - std::string str = toHex(ret); - DEBUG("cross call contract dataCopy success", "hash", str); - return str; - } - } - - DEBUG("cross call contract dataCopy fail", "address", addr); - return ""; - } - - CONST const std::string cross_call_bigModExp (platon::bytes base, platon::bytes exponent, platon::bytes modulus, uint64_t value, uint64_t gas) { - - - // uint8_t to bytes32 - std::vector len; - len.resize(32); - memset(len.data(), 0, 32); - - uint8_t l = 32; - len[31] = l; - - platon::bytes input; - - // [32]byte(baseLen) + [32]byte(expLen) + [32]byte(modLen) - std::copy(len.begin(), len.end(), std::back_inserter(input)); - std::copy(len.begin(), len.end(), std::back_inserter(input)); - std::copy(len.begin(), len.end(), std::back_inserter(input)); - - // append base - std::copy(base.begin(), base.end(), std::back_inserter(input)); - // append exponent - std::copy(exponent.begin(), exponent.end(), std::back_inserter(input)); - // append modulus - std::copy(modulus.begin(), modulus.end(), std::back_inserter(input)); - -// std::string addr = "lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq9fvwqx6"; - std::string addr = "atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq94ekays"; - - auto address_info = make_address(addr); - if(address_info.second){ - if (platon_call(address_info.first, input, value, gas)) { - DEBUG("cross call contract bigModExp success", "address", addr); - - platon::bytes ret; - size_t len = platon_get_call_output_length(); - - ret.resize(len); - platon_get_call_output(ret.data()); - - std::string str = toHex(ret); - DEBUG("cross call contract bigModExp success", "hash", str); - return str; - } - } - - DEBUG("cross call contract bigModExp fail", "address", addr); - return ""; - } - - CONST const std::string cross_call_bn256Add (platon::bytes ax, platon::bytes ay, platon::bytes bx, platon::bytes by, uint64_t value, uint64_t gas) { - - - platon::bytes input; - - // ax + ay + bx + by - std::copy(ax.begin(), ax.end(), std::back_inserter(input)); - std::copy(ay.begin(), ay.end(), std::back_inserter(input)); - std::copy(bx.begin(), bx.end(), std::back_inserter(input)); - std::copy(by.begin(), by.end(), std::back_inserter(input)); - -// std::string addr = "lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqx8lmkg9"; - std::string addr = "atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqxm2rt20"; - auto address_info = make_address(addr); - if(address_info.second){ - if (platon_call(address_info.first, input, value, gas)) { - DEBUG("cross call contract bn256Add success", "address", addr); - - platon::bytes ret; - size_t len = platon_get_call_output_length(); - - ret.resize(len); - platon_get_call_output(ret.data()); - - std::string str = toHex(ret); - DEBUG("cross call contract bn256Add success", "hash", str); - return str; - } - } - - DEBUG("cross call contract bn256Add fail", "address", addr); - return ""; - } - - - - CONST const std::string cross_call_bn256ScalarMul (platon::bytes x, platon::bytes y, platon::bytes scalar, uint64_t value, uint64_t gas) { - - - platon::bytes input; - - // x + y + scalar - std::copy(x.begin(), x.end(), std::back_inserter(input)); - std::copy(y.begin(), y.end(), std::back_inserter(input)); - std::copy(scalar.begin(), scalar.end(), std::back_inserter(input)); - -// std::string addr = "lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq86f0r4h"; - std::string addr = "atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq8xuh7ha"; - - auto address_info = make_address(addr); - if(address_info.second){ - if (platon_call(address_info.first, input, value, gas)) { - DEBUG("cross call contract bn256ScalarMul success", "address", addr); - - platon::bytes ret; - size_t len = platon_get_call_output_length(); - - ret.resize(len); - platon_get_call_output(ret.data()); - - std::string str = toHex(ret); - DEBUG("cross call contract bn256ScalarMul success", "hash", str); - return str; - } - } - - - DEBUG("cross call contract bn256ScalarMul fail", "address", addr); - return ""; - } - - CONST const std::string cross_call_bn256Pairing (std::string &in, uint64_t value, uint64_t gas) { - - - platon::bytes input = fromHex(in); - -// std::string addr = "lax1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqg9yul20"; - std::string addr = "atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqge3yzg9"; - - auto address_info = make_address(addr); - if(address_info.second){ - if (platon_call(address_info.first, input, value, gas)) { - DEBUG("cross call contract bn256Pairing success", "address", addr); - - platon::bytes ret; - size_t len = platon_get_call_output_length(); - - ret.resize(len); - platon_get_call_output(ret.data()); - - std::string str = toHex(ret); - DEBUG("cross call contract bn256Pairing success", "hash", str); - return str; - } - } - - DEBUG("cross call contract bn256Pairing fail", "address", addr); - return ""; - } - - - -}; - -PLATON_DISPATCH(call_precompile, (init)(cross_call_ecrecover)(cross_call_sha256hash)(cross_call_ripemd160hash)(cross_call_dataCopy)(cross_call_bigModExp)(cross_call_bn256Add)(cross_call_bn256ScalarMul)(cross_call_bn256Pairing)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCallerByRet.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCallerByRet.cpp deleted file mode 100644 index 223ba4a2a1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCallerByRet.cpp +++ /dev/null @@ -1,39 +0,0 @@ -#define TESTNET -#undef NDEBUG -#include -#include -#include - -using namespace platon; - - - -CONTRACT cross_caller_byret : public platon::Contract { - public: - ACTION void init(){} - - ACTION void callFeed(std::string target_address, uint64_t gasValue) { - - uint64_t transfer_value = 0; - auto address_info = make_address(target_address); - if(address_info.second){ - auto result = platon::platon_call_with_return_value(address_info.first, transfer_value, gasValue, "info"); - if(result.second){ - status.self() = 0; // successed - DEBUG("cross_caller_byret call receiver_byret info has successed!") - } else { - status.self() = 1; //failed - DEBUG("cross_caller_byret call receiver_byret info has failed!") - } - } - } - - CONST uint64_t get_status(){ - return status.self(); - } - - private: - platon::StorageType<"status"_n, uint64_t> status; -}; - -PLATON_DISPATCH(cross_caller_byret, (init)(callFeed)(get_status)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCallerNoRet.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCallerNoRet.cpp deleted file mode 100644 index 92b657e0fe..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCallerNoRet.cpp +++ /dev/null @@ -1,31 +0,0 @@ -#define TESTNET -#undef NDEBUG -#include -#include -#include -using namespace platon; - -CONTRACT cross_caller_noret : public platon::Contract { - public: - ACTION void init(){} - ACTION void callFeed(std::string target_address, uint64_t gasValue) { - uint64_t transfer_value = 0; - auto address_info = make_address(target_address); - if(address_info.second){ - if (platon_call(address_info.first, transfer_value, gasValue, "info")) { - status.self() = 0; // successed - DEBUG("cross_caller_noret call receiver_noret info has successed!") - } else { - status.self() = 1; //failed - DEBUG("cross_caller_noret call receiver_noret info has failed!") - } - } - } - CONST uint64_t get_status(){ - return status.self(); - } - private: - platon::StorageType<"status"_n, uint64_t> status; -}; - -PLATON_DISPATCH(cross_caller_noret, (init)(callFeed)(get_status)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCrossCallOriginType.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCrossCallOriginType.cpp deleted file mode 100644 index a0f1d5b9e4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCrossCallOriginType.cpp +++ /dev/null @@ -1,69 +0,0 @@ -#define TESTNET -#include -#include -#include - -using namespace platon; - - -class message { - public: - message(){} - message(const std::string &p_head):head(p_head){} - private: - std::string head; - PLATON_SERIALIZE(message, (head)) -}; - -class my_message : public message { - public: - my_message(){} - my_message(const std::string &p_head, const std::string &p_body, const std::string &p_end):message(p_head), body(p_body), end(p_end){} - private: - std::string body; - std::string end; - PLATON_SERIALIZE_DERIVED(my_message, message, (body)(end)) -}; - - -CONTRACT cross_call_origin_type : public platon::Contract { - public: - ACTION void init(){} - - cross_call_origin_type(){ - size_t vect_info_len = platon_get_state_length((uint8_t *)key.data(), key_len); - if (0 == vect_info_len){ - return; - } - std::vector vect_value; - vect_value.resize(vect_info_len); - platon_get_state((uint8_t *)key.data(), key_len, vect_value.data(), vect_info_len); - fetch(RLP(vect_value), vect_info); - } - - ACTION uint64_t cross_call_add_message(const std::string &target_address, - const my_message &one_message, uint64_t value, uint64_t gas) { - platon::bytes params = platon::cross_call_args("add_message", one_message); - - auto address_info = make_address(target_address); - if(address_info.second){ - if (platon_call(address_info.first, params, value, gas)) { - DEBUG("cross call contract success", "address", target_address); - } else { - DEBUG("cross call contract fail", "address", target_address); - } - } - return 0; - } - - CONST uint64_t get_vector_size(){ - return vect_info.size(); - } - - private: - std::vector vect_info; - std::string key = "info"; - size_t key_len = 4; -}; - -PLATON_DISPATCH(cross_call_origin_type, (init)(cross_call_add_message)(get_vector_size)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCrossCallStorageString.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCrossCallStorageString.cpp deleted file mode 100644 index da5d707445..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCrossCallStorageString.cpp +++ /dev/null @@ -1,43 +0,0 @@ -#define TESTNET -#include -#include -#include - -using namespace platon; - - - -CONTRACT cross_call_storage_str : public platon::Contract { - public: - - ACTION void init(){} - - ACTION uint64_t call_set_string(const std::string &target_address, const std::string &name, - uint64_t value, uint64_t gas) { - - DEBUG("Call contract start", "address", target_address, "name", name); - platon::bytes params = platon::cross_call_args("set_string", name); - - auto address_info = make_address(target_address); - if(address_info.second){ - if (platon_call(address_info.first, params, value, gas)) { - DEBUG("Call contract success", "address", target_address); - } else { - DEBUG("Call contract fail", "address", target_address); - } - } - return 0; - } - - CONST const std::string get_string(){ - - DEBUG("cross_call_storage_str get_string", "name:", str.self()); - return str.self(); - } - - - private: - platon::StorageType<"str"_n, std::string> str; -}; - -PLATON_DISPATCH(cross_call_storage_str, (init)(call_set_string)(get_string)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCrossCallStorageVector.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCrossCallStorageVector.cpp deleted file mode 100644 index 76f37e484c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractCrossCallStorageVector.cpp +++ /dev/null @@ -1,59 +0,0 @@ -#define TESTNET -#include -#include -#include - -using namespace platon; - - -class message { - public: - message(){} - message(const std::string &p_head):head(p_head){} - private: - std::string head; - PLATON_SERIALIZE(message, (head)) -}; - -class my_message : public message { - public: - my_message(){} - my_message(const std::string &p_head, const std::string &p_body, const std::string &p_end):message(p_head), body(p_body), end(p_end){} - private: - std::string body; - std::string end; - PLATON_SERIALIZE_DERIVED(my_message, message, (body)(end)) -}; - - -CONTRACT cross_call_storage_type : public platon::Contract { - public: - ACTION void init(){} - - ACTION uint64_t call_add_message(const std::string &target_address, const my_message &one_message, - uint64_t value, uint64_t gas) { - - platon::bytes params = platon::cross_call_args("add_message", one_message); - - auto address_info = make_address(target_address); - if(address_info.second){ - if (platon_call(address_info.first, params, value, gas)) { - DEBUG("Call contract success", "address", target_address); - } else { - DEBUG("Call contract fail", "address", target_address); - } - } - - return 0; - } - CONST uint64_t get_vector_size(){ - - return arr.self().size(); - } - - - private: - platon::StorageType<"arr"_n, std::vector> arr; -}; - -PLATON_DISPATCH(cross_call_storage_type, (init)(call_add_message)(get_vector_size)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallOriginType.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallOriginType.cpp deleted file mode 100644 index e7d65e7686..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallOriginType.cpp +++ /dev/null @@ -1,69 +0,0 @@ -#define TESTNET -#include -#include -#include - -using namespace platon; - - -class message { - public: - message(){} - message(const std::string &p_head):head(p_head){} - private: - std::string head; - PLATON_SERIALIZE(message, (head)) -}; - -class my_message : public message { - public: - my_message(){} - my_message(const std::string &p_head, const std::string &p_body, const std::string &p_end):message(p_head), body(p_body), end(p_end){} - private: - std::string body; - std::string end; - PLATON_SERIALIZE_DERIVED(my_message, message, (body)(end)) -}; - - -CONTRACT delegate_call_origin_type : public platon::Contract { - public: - ACTION void init(){} - - delegate_call_origin_type(){ - size_t vect_info_len = platon_get_state_length((uint8_t *)key.data(), key_len); - if (0 == vect_info_len){ - return; - } - std::vector vect_value; - vect_value.resize(vect_info_len); - platon_get_state((uint8_t *)key.data(), key_len, vect_value.data(), vect_info_len); - fetch(RLP(vect_value), vect_info); - } - - ACTION uint64_t delegate_call_add_message(const std::string &target_address, - const my_message &one_message, uint64_t gas) { - platon::bytes params = platon::cross_call_args("add_message", one_message); - - auto address_info = make_address(target_address); - if(address_info.second){ - if (platon_delegate_call(address_info.first, params, gas)) { - DEBUG("Delegate call contract success", "address", target_address); - } else { - DEBUG("Delegate call contract fail", "address", target_address); - } - } - return 0; - } - - CONST uint64_t get_vector_size(){ - return vect_info.size(); - } - - private: - std::vector vect_info; - std::string key = "info"; - size_t key_len = 4; -}; - -PLATON_DISPATCH(delegate_call_origin_type, (init)(delegate_call_add_message)(get_vector_size)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallPPOS.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallPPOS.cpp deleted file mode 100644 index f35619ab9b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallPPOS.cpp +++ /dev/null @@ -1,50 +0,0 @@ -#define TESTNET -#include -#include -#include - -using namespace platon; - -CONTRACT delegate_call_ppos : public platon::Contract { - public: - ACTION void init(){} - - ACTION uint64_t delegate_call_ppos_send (std::string target_addr, std::string &in, uint64_t gas) { - platon::bytes input = fromHex(in); - - auto address_info = make_address(target_addr); - if(address_info.second){ - if (platon_delegate_call(address_info.first, input, gas)) { - DEBUG("delegate call contract delegate_call_ppos_send success", "address", target_addr); - return 0; - } - } - - DEBUG("delegate call contract delegate_call_ppos_send fail", "address", target_addr); - return 1; - } - - CONST const std::string delegate_call_ppos_query (std::string target_addr, std::string &in, uint64_t gas) { - platon::bytes input = fromHex(in); - - auto address_info = make_address(target_addr); - if(address_info.second){ - if (platon_delegate_call(address_info.first, input, gas)) { - DEBUG("delegate call contract delegate_call_ppos_query success", "address", target_addr); - platon::bytes ret; - size_t len = platon_get_call_output_length(); - ret.resize(len); - platon_get_call_output(ret.data()); - std::string str = toHex(ret); - DEBUG("delegate call contract delegate_call_ppos_query success", "ret", str); - return str; - } - } - - DEBUG("delegate call contract delegate_call_ppos_query fail", "address", target_addr); - return ""; - } - -}; - -PLATON_DISPATCH(delegate_call_ppos, (init)(delegate_call_ppos_send)(delegate_call_ppos_query)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallStorageString.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallStorageString.cpp deleted file mode 100644 index a27ab54ee3..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallStorageString.cpp +++ /dev/null @@ -1,41 +0,0 @@ -#define TESTNET -#include -#include -#include - -using namespace platon; - - -CONTRACT delegate_call_storage_str : public platon::Contract { - public: - - ACTION void init(){} - - ACTION uint64_t delegate_call_set_string(const std::string &target_address, std::string &name, uint64_t gas) { - - DEBUG("Delegate call contract start", "address", target_address, "name", name); - platon::bytes params = platon::cross_call_args("set_string", name); - - auto address_info = make_address(target_address); - if(address_info.second){ - if (platon_delegate_call(address_info.first, params, gas)) { - DEBUG("Delegate call contract success", "address", target_address, "name", name); - } else { - DEBUG("Delegate call contract fail", "address", target_address, "name", name); - } - } - - return 0; - } - - CONST const std::string get_string(){ - - platon::StorageType<"str"_n, std::string> str; // Must use local definitions for manipulating the corresponding keys in th - return str.self(); - } - - - -}; - -PLATON_DISPATCH(delegate_call_storage_str, (init)(delegate_call_set_string)(get_string)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallStorageVector.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallStorageVector.cpp deleted file mode 100644 index 8c590d276e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallStorageVector.cpp +++ /dev/null @@ -1,55 +0,0 @@ -#define TESTNET -#include -#include -#include - -using namespace platon; - - -class message { - public: - message(){} - message(const std::string &p_head):head(p_head){} - private: - std::string head; - PLATON_SERIALIZE(message, (head)) -}; - -class my_message : public message { - public: - my_message(){} - my_message(const std::string &p_head, const std::string &p_body, const std::string &p_end):message(p_head), body(p_body), end(p_end){} - private: - std::string body; - std::string end; - PLATON_SERIALIZE_DERIVED(my_message, message, (body)(end)) -}; - - -CONTRACT delegate_call_storage_vector : public platon::Contract { - public: - ACTION void init(){} - - ACTION uint64_t delegate_call_add_message(const std::string &target_address, - const my_message &one_message, uint64_t gas) { - - auto address_info = make_address(target_address); - if(address_info.second){ - platon::bytes params = platon::cross_call_args("add_message", one_message); - if (platon_delegate_call(address_info.first, params, gas)) { - DEBUG("Delegate call contract success", "address", target_address); - } else { - DEBUG("Delegate call contract fail", "address", target_address); - } - } - return 0; - } - - CONST uint64_t get_vector_size(){ - platon::StorageType<"arr"_n, std::vector> arr; // Must use local definitions for manipulating the corresponding keys in the account space - return arr.self().size(); - } - -}; - -PLATON_DISPATCH(delegate_call_storage_vector, (init)(delegate_call_add_message)(get_vector_size)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallerByRet.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallerByRet.cpp deleted file mode 100644 index 8c1c4eb75d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallerByRet.cpp +++ /dev/null @@ -1,42 +0,0 @@ -#define TESTNET -#undef NDEBUG -#include -#include -#include - -using namespace platon; - - - -CONTRACT delegate_caller_byret : public platon::Contract { - public: - ACTION void init(){} - - ACTION void callFeed(std::string target_address, uint64_t gasValue) { - - uint64_t transfer_value = 0; - - auto address_info = make_address(target_address); - if(address_info.second){ - auto result = platon::platon_call_with_return_value(address_info.first, transfer_value, gasValue, "info"); - if(result.second){ - status.self() = 0; // successed - - DEBUG("delegate_caller_byret call receiver_byret info has successed!") - } else { - status.self() = 1; //failed - - DEBUG("delegate_caller_byret call receiver_byret info has failed!") - } - } - } - - CONST uint64_t get_status(){ - return status.self(); - } - - private: - platon::StorageType<"status"_n, uint64_t> status; -}; - -PLATON_DISPATCH(delegate_caller_byret, (init)(callFeed)(get_status)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallerNoRet.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallerNoRet.cpp deleted file mode 100644 index 91ad5d378c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractDelegateCallerNoRet.cpp +++ /dev/null @@ -1,43 +0,0 @@ -#define TESTNET -#undef NDEBUG -#include -#include -#include - -using namespace platon; - - - -CONTRACT delegate_caller_noret : public platon::Contract { - public: - ACTION void init(){} - - ACTION void callFeed(std::string target_address, uint64_t gasValue) { - - uint64_t transfer_value = 0; - - platon::bytes params = platon::cross_call_args("info"); - - auto address_info = make_address(target_address); - if(address_info.second){ - if (platon_call(address_info.first, params, transfer_value, gasValue)) { - status.self() = 0; // successed - - DEBUG("delegate_caller_noret call receiver_noret info has successed!") - } else { - status.self() = 1; //failed - - DEBUG("delegate_caller_noret call receiver_noret info has failed!") - } - } - } - CONST uint64_t get_status(){ - return status.self(); - } - - private: - platon::StorageType<"status"_n, uint64_t> status; - -}; - -PLATON_DISPATCH(delegate_caller_noret, (init)(callFeed)(get_status)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractOriginType.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractOriginType.cpp deleted file mode 100644 index 84e81d2f01..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractOriginType.cpp +++ /dev/null @@ -1,72 +0,0 @@ -#define TESTNET -#include -#include -//#include -using namespace platon; - - -class message { - public: - message(){} - message(const std::string &p_head):head(p_head){} - private: - std::string head; - PLATON_SERIALIZE(message, (head)) -}; - -class my_message : public message { - public: - my_message(){} - my_message(const std::string &p_head, const std::string &p_body, const std::string &p_end):message(p_head), body(p_body), end(p_end){} - private: - std::string body; - std::string end; - PLATON_SERIALIZE_DERIVED(my_message, message, (body)(end)) -}; - -CONTRACT origin_type : public platon::Contract{ - public: - PLATON_EVENT1(hello_event, std::string, std::string, uint32_t) - - origin_type(){ - size_t vect_info_len = platon_get_state_length((uint8_t *)key.data(), key_len); - if (0 == vect_info_len){ - return; - } - std::vector vect_value; - vect_value.resize(vect_info_len); - platon_get_state((uint8_t *)key.data(), key_len, vect_value.data(), vect_info_len); - fetch(RLP(vect_value), vect_info); - } - - ACTION void init(){} - - ACTION std::vector add_message(const my_message &one_message){ - PLATON_EMIT_EVENT1(hello_event, "add_message", "event1", 1); - DEBUG("origin_type add_message"); - vect_info.push_back(one_message); - RLPStream stream; - stream << vect_info; - platon::bytesRef result = stream.out(); -// std::vector result = stream.out(); - platon_set_state((uint8_t *)key.data(), key_len, result.data(), result.size()); - return vect_info; - } - CONST std::vector get_message(const std::string &name){ - PLATON_EMIT_EVENT1(hello_event, "get_message", "event2", 2); - DEBUG("origin_type get_message"); - return vect_info; - } - - CONST uint64_t get_vector_size(){ - DEBUG("origin_type get_vector_size"); - return vect_info.size(); - } - - private: - std::vector vect_info; - std::string key = "info"; - size_t key_len = 4; -}; - -PLATON_DISPATCH(origin_type, (init)(add_message)(get_message)(get_vector_size)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractReceiverByRet.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractReceiverByRet.cpp deleted file mode 100644 index 9b79fd96f1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractReceiverByRet.cpp +++ /dev/null @@ -1,39 +0,0 @@ -#define TESTNET -#include -#include - -using namespace platon; - - - -CONTRACT receiver_byret : public platon::Contract{ - public: - - ACTION void init(){} - - - ACTION uint8_t info (){ - - for (uint8_t i = 0; i < 2; i++) { - // uintmap.self().insert({i, i}); - uintmap.self()[i] = i; - } - return 0; - } - - CONST uint8_t get_value(const uint8_t key){ - - auto iter = uintmap.self().find(key); - - if(iter != uintmap.self().end()) - return iter->second; - else - return 0; - - } - - private: - platon::StorageType<"uintmap"_n,std::map> uintmap; -}; - -PLATON_DISPATCH(receiver_byret, (init)(info)(get_value)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractReceiverNoRet.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractReceiverNoRet.cpp deleted file mode 100644 index b0a9f2cc21..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractReceiverNoRet.cpp +++ /dev/null @@ -1,38 +0,0 @@ -#define TESTNET -#include -#include - -using namespace platon; - - - -CONTRACT receiver_noret : public platon::Contract{ - public: - - ACTION void init(){} - - - ACTION void info (){ - - for (uint8_t i = 0; i < 2; i++) { - // uintmap.self().insert({i, i}); - uintmap.self()[i] = i; - } - } - - CONST uint8_t get_value(const uint8_t key){ - - auto iter = uintmap.self().find(key); - - if(iter != uintmap.self().end()) - return iter->second; - else - return 0; - - } - - private: - platon::StorageType<"uintmap"_n,std::map> uintmap; -}; - -PLATON_DISPATCH(receiver_noret, (init)(info)(get_value)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractStorageString.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractStorageString.cpp deleted file mode 100644 index 3eb912718a..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractStorageString.cpp +++ /dev/null @@ -1,27 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - - -CONTRACT storge_str : public platon::Contract{ - public: - - ACTION void init(){} - - ACTION void set_string(const std::string &name){ - DEBUG("storge_str set_string", "name:", name); - str.self() = name; - } - - CONST const std::string get_string(){ - DEBUG("storge_str get_string", "name:", str.self()); - return str.self(); - } - - - private: - platon::StorageType<"str"_n, std::string> str; -}; - -PLATON_DISPATCH(storge_str, (init)(set_string)(get_string)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractStorageVector.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractStorageVector.cpp deleted file mode 100644 index 4ac9275e9d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_cross_call/ContractStorageVector.cpp +++ /dev/null @@ -1,55 +0,0 @@ -#define TESTNET -#include -#include -//#include -using namespace platon; - - -class message { - public: - message(){} - message(const std::string &p_head):head(p_head){} - private: - std::string head; - PLATON_SERIALIZE(message, (head)) -}; - -class my_message : public message { - public: - my_message(){} - my_message(const std::string &p_head, const std::string &p_body, const std::string &p_end):message(p_head), body(p_body), end(p_end){} - private: - std::string body; - std::string end; - PLATON_SERIALIZE_DERIVED(my_message, message, (body)(end)) -}; - -CONTRACT storage_vector : public platon::Contract{ - public: - - - ACTION void init(){} - - ACTION std::vector add_message(const my_message &one_message){ - - DEBUG("storage_vector add_message"); - arr.self().push_back(one_message); - return arr.self(); - } - CONST std::vector get_message(const std::string &name){ - - DEBUG("storage_vector get_message"); - return arr.self(); - } - - CONST uint64_t get_vector_size(){ - DEBUG("storage_vector get_vector_size"); - return arr.self().size(); - } - - - private: - platon::StorageType<"arr"_n, std::vector> arr; -}; - -PLATON_DISPATCH(storage_vector, (init)(add_message)(get_message)(get_vector_size)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_distory/ContractDistory.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_distory/ContractDistory.cpp deleted file mode 100644 index 601ae56a02..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_distory/ContractDistory.cpp +++ /dev/null @@ -1,29 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -//extern char const string_storage[] = "stringstorage"; - -CONTRACT ContractDistory : public platon::Contract{ - public: - ACTION void init(){ - } - - ACTION int32_t distory_contract(){ - Address platon_address = platon_origin(); - return platon_destroy(platon_address); - } - - ACTION void set_string(std::string &name){ - stringstorage.self() = name; - } - - CONST std::string get_string(){ - return stringstorage.self(); - } - private: - platon::StorageType<"sstorage"_n, std::string> stringstorage; -}; - -PLATON_DISPATCH(ContractDistory, (init)(distory_contract)(set_string)(get_string)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_distory/ContractDistoryWithPermissionCheck.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_distory/ContractDistoryWithPermissionCheck.cpp deleted file mode 100644 index c2482b05e9..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_distory/ContractDistoryWithPermissionCheck.cpp +++ /dev/null @@ -1,33 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -//extern char const string_storage[] = "stringstorage"; - -CONTRACT ContractDistory : public platon::Contract{ - public: - ACTION void init(){ - contract_ower.self() = platon_origin().toString(); - } - - ACTION int32_t distory_contract(){ - Address platon_address = platon_origin(); - if (contract_ower.self() != platon_address.toString()){ - return -1; - } - return platon_destroy(platon_address); - } - - ACTION void set_string(std::string &name){ - contract_ower.self() = name; - } - - CONST std::string get_string(){ - return contract_ower.self(); - } - private: - platon::StorageType<"sstorage"_n, std::string> contract_ower; -}; - -PLATON_DISPATCH(ContractDistory, (init)(distory_contract)(set_string)(get_string)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/Ballet.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/Ballet.cpp deleted file mode 100644 index b3438c11eb..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/Ballet.cpp +++ /dev/null @@ -1,99 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * @author liweic - * 投票合约 - * */ - -struct Voter{ - public: - uint64_t weight; // 256bit 的非负整数投票权重 - bool voted; // 用户是否已经投票 - Address delegate; // 被委托人账户 - uint64_t vote; // 投票提案编号 - Voter(){} - Voter(uint64_t &weight, bool &voted, Address &delegate, uint64_t &vote):weight(weight),voted(voted),delegate(delegate),vote(vote){} - PLATON_SERIALIZE(Voter,(weight)(voted)(delegate)(vote)) -}voter; - -struct Proposal{ - public: - uint64_t voteCount; // 得票数 - Proposal(){} - Proposal(uint64_t &voteCount):voteCount(voteCount){} - PLATON_SERIALIZE(Proposal,(voteCount)) -}; - -Proposal proposals; - -CONTRACT Ballot : public platon::Contract{ - - private: - platon::StorageType<"chairperson"_n,Address> chairperson; - platon::StorageType<"provector"_n,std::vector> proposal_vector; - platon::StorageType<"mapperson"_n,std::map> storage_address_voter; - platon::StorageType<"mapperson"_n,std::map,Proposal>> storage_vector_proposals; - - public: - ACTION void init(uint8_t _numProposals) - { - chairperson.self() = platon::platon_address(); - storage_address_voter.self()[chairperson.self()].weight = 1; - proposals.voteCount = _numProposals; - } - - ACTION void giveRightToVote(Address toVoter) - { - if(platon::platon_address() != chairperson.self() || storage_address_voter.self()[toVoter].voted != false) - return; - storage_address_voter.self()[toVoter].weight = 1; - } - - ACTION void delegate(Address to) - { - voter = storage_address_voter.self()[platon::platon_address()]; - if (voter.voted) return; - while (storage_address_voter.self()[to].delegate != Address(0)) - { - to = storage_address_voter.self()[to].delegate; - // 受委托人不能又将自己的票委托给委托人,形成循环 - assert(to != platon::platon_address()); - } - if(platon::platon_address() == to) return; - voter.voted = true; - voter.delegate = to; - Voter delegateTo = storage_address_voter.self()[to]; - proposals = storage_vector_proposals.self()[proposal_vector.self()]; - if (delegateTo.voted) - proposals.voteCount += voter.weight; - else - delegateTo.weight += voter.weight; - } - - ACTION void vote(uint8_t toProposal) - { - voter = storage_address_voter.self()[platon::platon_address()]; - if (voter.voted || toProposal >= proposal_vector.self().size()) return; - voter.voted = true; - voter.vote = toProposal; - proposals.voteCount += voter.weight; - } - - CONST uint8_t winningProposal(uint8_t _winningProposal) - { - u128 winningVoteCount = 0; - for (uint8_t prop = 0; prop < proposal_vector.self().size(); prop++) - if (proposals.voteCount > winningVoteCount) - { - winningVoteCount = proposals.voteCount; - _winningProposal = prop; - } - return _winningProposal; - } - -}; - -PLATON_DISPATCH(Ballot, (init)(giveRightToVote)(delegate)(vote)(winningProposal)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/Bank.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/Bank.cpp deleted file mode 100644 index da81c339fc..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/Bank.cpp +++ /dev/null @@ -1,453 +0,0 @@ -#define TESTNET -// Author: zjsunzone -#include -#include - -#include "src/Ownable.hpp" -using namespace platon; - - -CONTRACT Bank: public platon::Contract, public Ownable -{ - - // define event - public: - bool onlyBagholders(){ - if(myTokens() <= 0){ - return false; - } - return true; - } - bool onlyStronghands(){ - if(myDividends(true) <= 0){ - return false; - } - return false; - } - - public: - PLATON_EVENT1(onTokenPurchase, Address, u128, u128, Address, u128, u128); - PLATON_EVENT1(onTokenSell, Address, u128, u128, u128, u128); - PLATON_EVENT1(onReinvestment, Address, u128, u128); - PLATON_EVENT1(onWithdraw, Address, u128); - PLATON_EVENT1(Transfer, Address, Address, u128); - PLATON_EVENT1(TestData, Address, u128, u128, u128); - - public: - platon::StorageType<"name"_n, std::string> name; - platon::StorageType<"symbol"_n, std::string> symbol; - platon::StorageType<"decimals"_n, uint8_t> decimals; - platon::StorageType<"entryFee"_n, uint8_t> entryFee_; - platon::StorageType<"transferFee_"_n, uint8_t> transferFee_; - platon::StorageType<"exitFee"_n, uint8_t> ExitFee_; - platon::StorageType<"refferalFee_"_n, uint8_t> refferalFee_; - platon::StorageType<"DevFee_"_n, uint8_t> DevFee_; - platon::StorageType<"DailyINterest_"_n, uint8_t> DailyInterest_; - platon::StorageType<"IntFee_"_n, uint8_t> IntFee_; - platon::StorageType<"InterestPool_"_n, u128> InterestPool_; - platon::StorageType<"TokenPriceInitial_"_n, u128> tokenPriceInitial_; - platon::StorageType<"tokenPriceIncremental_"_n, u128> tokenPriceIncremental_; - platon::StorageType<"magnitude"_n, u128> magnitude; - platon::StorageType<"stakingRequirement"_n, u128> stakingRequirement; - - // map - platon::StorageType<"tokenBalanceLedger_"_n, std::map> tokenBalanceLedger_; - platon::StorageType<"referralBalance_"_n, std::map> referralBalance_; - platon::StorageType<"payoutsTo_"_n, std::map> payoutsTo_; - - platon::StorageType<"tokenSupply_"_n, u128> tokenSupply_; - platon::StorageType<"profitPerShare_"_n, u128> profitPerShare_; - platon::StorageType<"dev"_n, Address> dev; - platon::StorageType<"initaddr"_n, Address> initaddr; - - public: - ACTION void init() - { - name.self() = "Cypher Bank"; - symbol.self() = "CBT"; - decimals.self() = 18; - entryFee_.self() = 15; - transferFee_.self() = 1; - ExitFee_.self() = 20; - refferalFee_.self() = 8; - DevFee_.self() = 25; - DailyInterest_.self() = 1; - IntFee_.self() = 25; - InterestPool_.self() = 0; - tokenPriceInitial_.self() = u128(100000000000); - tokenPriceIncremental_.self() = u128(10000000000); - magnitude.self() = (18_LAT).Get(); // 2**64 - stakingRequirement.self() = (50_LAT).Get(); // 50e18 - - // - //dev.self() = Address("0x493301712671Ada506ba6Ca7891F436D29185823"); // setting. -// auto address_info = make_address("lax10jc0t4ndqarj4q6ujl3g3ycmufgc77epxg02lt"); - auto address_info = make_address("atx10jc0t4ndqarj4q6ujl3g3ycmufgc77ep6ahhap"); - if(address_info.second) dev.self() = address_info.first; - -// auto address_init = make_address("laxqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq"); - auto address_init = make_address("atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc"); - if(address_init.second) Address initaddr = address_init.first; - } - - ACTION void buy(Address _referredBy) { - u128 callValue = platon_call_value(); - u128 DevFee1 = callValue / u128(100) * DevFee_.self(); - u128 DevFeeFinal = DevFee1 / u128(10); - //PLATON_EMIT_EVENT1(TestData, platon_caller(), callValue, DevFee1, DevFeeFinal); - platon_transfer(dev.self(), Energon(DevFeeFinal)); - - // - u128 DailyInt1 = callValue/ u128(100) * IntFee_.self(); - u128 DailyIntFinal = DailyInt1 / u128(10); - InterestPool_.self() += DailyIntFinal; - purchaseTokens(callValue, _referredBy); - } - - ACTION void IDD(){ - Address sender = platon_caller(); - if(sender != owner.self()){ - platon_revert(); - } - Energon cbalance = platon_balance(platon_address()); - u128 Contract_Bal = cbalance.Get() - InterestPool_.self(); - u128 DailyInterest1 = Contract_Bal * InterestPool_.self() / u128(100); - u128 DailyInterestFinal = DailyInterest1 / u128(10); - InterestPool_.self() -= DailyInterestFinal; - // - //DividendsDistribution(DailyInterestFinal, Address("0x0000000000000000000000000000000000000000")); - } - - ACTION void DivsAddon(){ - u128 callValue = platon_call_value(); - //DividendsDistribution(callValue, Address("0x0000000000000000000000000000000000000000")); - DividendsDistribution(callValue, initaddr.self()); - } - - ACTION void reinvest() { - u128 _dividends = myDividends(false); - Address _customerAddress = platon_caller(); - payoutsTo_.self()[_customerAddress] += _dividends*magnitude.self(); - _dividends += referralBalance_.self()[_customerAddress]; - referralBalance_.self()[_customerAddress] = 0; - - //u128 _tokens = purchaseTokens(_dividends, Address("0x0000000000000000000000000000000000000000")); - u128 _tokens = purchaseTokens(_dividends, initaddr.self()); - PLATON_EMIT_EVENT1(onReinvestment, _customerAddress, _dividends, _tokens); - } - - ACTION void exit(){ - Address _customerAddress = platon_caller(); - u128 _tokens = tokenBalanceLedger_.self()[_customerAddress]; - if (_tokens > 0){ - sell(_tokens); - } - withdraw(); - } - - ACTION void withdraw(){ - onlyStronghands(); - Address _customerAddress = platon_caller(); - u128 _dividends = myDividends(false); - payoutsTo_.self()[_customerAddress] += _dividends * magnitude.self(); - _dividends += referralBalance_.self()[_customerAddress]; - referralBalance_.self()[_customerAddress] = u128(0); - platon_transfer(_customerAddress, Energon(_dividends)); - PLATON_EMIT_EVENT1(onWithdraw, _customerAddress, _dividends); - - } - - ACTION void sell(u128 _amountOfTokens){ - onlyBagholders(); - Address _customerAddress = platon_caller(); - if(_amountOfTokens > tokenBalanceLedger_.self()[_customerAddress]){ - platon_revert(); - } - u128 _tokens = _amountOfTokens; - u128 _ethereum = tokensToEthereum_(_tokens); - u128 _dividends = _ethereum * exitFee() * u128(100); - u128 _devexit = _ethereum * u128(5) * u128(100); - u128 _taxedEthereum1 = _ethereum - _dividends; - u128 _taxedEthereum = _taxedEthereum1 - _devexit; - u128 _devexitindividual = _ethereum * DevFee_.self() / u128(100); - u128 _devexitindividual_final = _devexitindividual / u128(10); - u128 DailyInt1 = _ethereum * IntFee_.self() / u128(100); - u128 DailyIntFinal = DailyInt1 / u128(10); - InterestPool_.self() += DailyIntFinal; - tokenSupply_.self() = tokenSupply_.self() - _tokens; - tokenBalanceLedger_.self()[_customerAddress] = tokenBalanceLedger_.self()[_customerAddress] - _tokens; - platon_transfer(dev.self(), _devexitindividual_final); - - u128 _updatedPayouts = profitPerShare_.self() * _tokens * (_taxedEthereum * magnitude.self()); - payoutsTo_.self()[_customerAddress] -= _updatedPayouts; - if(tokenSupply_.self() > 0){ - profitPerShare_.self() = profitPerShare_.self() + ((_dividends * magnitude.self()) / tokenSupply_.self()); - } - u128 now = u128(platon_timestamp()); - PLATON_EMIT_EVENT1(onTokenSell, _customerAddress, _tokens, _taxedEthereum,now, buyPrice()); - } - - ACTION bool transfer(Address _toAddress, u128 _amountOfTokens){ - onlyBagholders(); - Address _customerAddress = platon_caller(); - if(_amountOfTokens > tokenBalanceLedger_.self()[_customerAddress]){ - platon_revert(); - } - if(myDividends(true) > 0){ - withdraw(); - } - - u128 _tokenFee = _amountOfTokens * transferFee_.self() / 100; - u128 _taxedTokens = _amountOfTokens - _tokenFee; - u128 _dividends = tokensToEthereum_(_tokenFee); - - tokenSupply_.self() = tokenSupply_.self() - _tokenFee; - tokenBalanceLedger_.self()[_customerAddress] = tokenBalanceLedger_.self()[_customerAddress] - _amountOfTokens; - tokenBalanceLedger_.self()[_toAddress] = tokenBalanceLedger_.self()[_toAddress] + _taxedTokens; - payoutsTo_.self()[_customerAddress] -= profitPerShare_.self() * _amountOfTokens; - payoutsTo_.self()[_toAddress] += profitPerShare_.self() * _taxedTokens; - profitPerShare_.self() = profitPerShare_.self() + ((_dividends * magnitude.self())/tokenSupply_.self()); - PLATON_EMIT_EVENT1(Transfer, _customerAddress, _toAddress, _taxedTokens); - return true; - } - - CONST u128 totalEthereumBalance(){ - return platon_balance(platon_address()).Get(); - } - - CONST u128 totalSupply() { - return tokenSupply_.self(); - } - - CONST u128 myTokens(){ - Address _customerAddress = platon_caller(); - return balanceOf(_customerAddress); - } - - CONST u128 myDividends(bool _includeReferralBonus){ - Address _customerAddress = platon_caller(); - if(_includeReferralBonus){ - return dividendsOf(_customerAddress) + referralBalance_.self()[_customerAddress]; - } - return dividendsOf(_customerAddress) ; - } - - CONST u128 balanceOf(Address _customerAddress) { - return tokenBalanceLedger_.self()[_customerAddress]; - } - - CONST u128 dividendsOf(Address _customerAddress){ - u128 val = profitPerShare_.self() * tokenBalanceLedger_.self()[_customerAddress] - payoutsTo_.self()[_customerAddress]; - return val / magnitude.self(); - } - - CONST u128 sellPrice(){ - // our calculation relies on the token supply, so we need supply. Doh. - if (tokenSupply_.self() == u128(0)) { - return tokenPriceInitial_.self() - tokenPriceIncremental_.self(); - } else { - u128 _ethereum = tokensToEthereum_((1_LAT).Get()); - u128 _dividends = _ethereum * exitFee() / u128(100); - u128 _devexit = _ethereum * u128(5) / u128(100); - u128 _taxedEthereum1 = _ethereum - _dividends; - u128 _taxedEthereum = _taxedEthereum1 - _devexit; - return _taxedEthereum; - } - } - - CONST u128 buyPrice(){ - if (tokenSupply_.self() == u128(0)) { - return tokenPriceInitial_.self() + tokenPriceIncremental_.self(); - } else { - u128 _ethereum = tokensToEthereum_((1_LAT).Get()); - u128 _dividends = _ethereum * entryFee_.self() / u128(100); - u128 _devexit = _ethereum * u128(5) / u128(100); - u128 _taxedEthereum1 = _ethereum + _dividends; - u128 _taxedEthereum = _taxedEthereum1 + _devexit; - return _taxedEthereum; - } - } - - CONST u128 calculateTokensReceived(u128 _ethereumToSpend){ - u128 _dividends = _ethereumToSpend * entryFee_.self() / u128(100); - u128 _devbuyfees = _ethereumToSpend * u128(5) / u128(100); - u128 _taxedEthereum1 = _ethereumToSpend - _dividends; - u128 _taxedEthereum = _taxedEthereum1 - _devbuyfees; - u128 _amountOfTokens = ethereumToTokens_(_taxedEthereum); - return _amountOfTokens; - } - - CONST u128 calculateEthereumReceived(u128 _tokensToSell){ - if(tokenSupply_.self() > _tokensToSell){ - platon_revert(); - } - u128 _ethereum = tokensToEthereum_(_tokensToSell); - u128 _dividends = _ethereum * exitFee() / u128(100); - u128 _devexit = _ethereum * u128(5) / u128(100); - u128 _taxedEthereum1 = _ethereum - _dividends; - u128 _taxedEthereum = _taxedEthereum1 - _devexit; - return _taxedEthereum; - } - - CONST uint8_t exitFee(){ - return ExitFee_.self(); - } - - u128 purchaseTokens(u128 _incomingEthereum, Address _referredBy) { - Address _customerAddress = platon_caller(); - u128 _undividedDividends = _incomingEthereum * entryFee_.self() / u128(100); - u128 _referralBonus = _undividedDividends * refferalFee_.self() / u128(100); - u128 _devbuyfees = _incomingEthereum * u128(5) / u128(100); - u128 _dividends1 = _undividedDividends - _referralBonus; - u128 _dividends = _dividends1 - _devbuyfees; - u128 _taxedEthereum = _incomingEthereum - _undividedDividends; - u128 _amountOfTokens = ethereumToTokens_(_taxedEthereum); - u128 _fee = _dividends * magnitude.self(); - - if(_amountOfTokens <= u128(0) || tokenSupply_.self() >= (_amountOfTokens + tokenSupply_.self())){ - platon_revert(); - } - if ( - _referredBy != initaddr.self() && - _referredBy != _customerAddress && - tokenBalanceLedger_.self()[_referredBy] >= stakingRequirement.self() - ) { - referralBalance_.self()[_referredBy] = referralBalance_.self()[_referredBy] + _referralBonus; - } else { - _dividends = _dividends + _referralBonus; - _fee = _dividends * magnitude.self(); - } - - if (tokenSupply_.self() > u128(0)) { - tokenSupply_.self() = tokenSupply_.self() + _amountOfTokens; - profitPerShare_.self() += (_dividends * magnitude.self() / tokenSupply_.self()); - _fee = _fee - (_fee - (_amountOfTokens * (_dividends * magnitude.self() / tokenSupply_.self()))); - } else { - tokenSupply_.self() = _amountOfTokens; - } - - tokenBalanceLedger_.self()[_customerAddress] = tokenBalanceLedger_.self()[_customerAddress] + _amountOfTokens; - u128 _updatedPayouts = profitPerShare_ * _amountOfTokens - _fee; - payoutsTo_.self()[_customerAddress] += _updatedPayouts; - u128 now = u128(platon_timestamp()); - PLATON_EMIT_EVENT1(onTokenPurchase, _customerAddress, _incomingEthereum, _amountOfTokens, _referredBy, now, buyPrice()); - return _amountOfTokens; - } - - u128 DividendsDistribution(u128 _incomingEthereum, Address _referredBy){ - Address _customerAddress = platon_caller(); - u128 _undividedDividends = _incomingEthereum * u128(100) / u128(100); - u128 _referralBonus = _undividedDividends * refferalFee_.self() / u128(100); - u128 _dividends = _undividedDividends - _referralBonus; - u128 _taxedEthereum = _incomingEthereum - _undividedDividends; - u128 _amountOfTokens = ethereumToTokens_(_taxedEthereum); - u128 _fee = _dividends * magnitude.self(); - - if(_amountOfTokens < 0 || _amountOfTokens + tokenSupply_.self() < tokenSupply_.self()){ - platon_revert(); - } - - if ( - _referredBy != initaddr.self() && - _referredBy != _customerAddress && - tokenBalanceLedger_.self()[_referredBy] >= stakingRequirement - ) { - referralBalance_.self()[_referredBy] = referralBalance_.self()[_referredBy] + _referralBonus; - } else { - _dividends = _dividends + _referralBonus; - _fee = _dividends * magnitude.self(); - } - - if (tokenSupply_.self() > 0) { - tokenSupply_.self() = tokenSupply_ + _amountOfTokens; - profitPerShare_.self() += (_dividends * magnitude.self() / tokenSupply_.self()); - _fee = _fee - (_fee - (_amountOfTokens * (_dividends * magnitude.self() / tokenSupply_.self()))); - } else { - tokenSupply_.self() = _amountOfTokens; - } - - tokenBalanceLedger_.self()[_customerAddress] = tokenBalanceLedger_.self()[_customerAddress] + _amountOfTokens; - u128 _updatedPayouts = profitPerShare_.self() * _amountOfTokens - _fee; - payoutsTo_.self()[_customerAddress] += _updatedPayouts; - u128 now = u128(platon_timestamp()); - PLATON_EMIT_EVENT1(onTokenPurchase, _customerAddress, _incomingEthereum, _amountOfTokens, _referredBy, now, buyPrice()); - return _amountOfTokens; - } - - u128 ethereumToTokens_(u128 _ethereum) { - u128 _tokenPriceInitial = tokenPriceInitial_ * (1_LAT).Get(); - u128 _tokensReceived = - ( - ( - - (sqrt - ( - (_tokenPriceInitial * _tokenPriceInitial) - + - (u128(2) * (tokenPriceIncremental_.self() * (1_LAT).Get()) * (_ethereum * (1_LAT).Get())) - + - ((tokenPriceIncremental_.self() * tokenPriceIncremental_.self()) * (tokenSupply_.self() * tokenSupply_.self())) - + - (u128(2) * tokenPriceIncremental_.self() * _tokenPriceInitial*tokenSupply_.self()) - ) - ) - _tokenPriceInitial - - ) / (tokenPriceIncremental_) - ) - (tokenSupply_.self()); - - return _tokensReceived; - } - - u128 tokensToEthereum_(u128 _tokens) { - u128 tokens_ = (_tokens + (1_LAT).Get()); - u128 _tokenSupply = (tokenSupply_.self() + (1_LAT).Get()); - u128 _etherReceived = - ( - ( - ( - ( - ( - tokenPriceInitial_ + (tokenPriceIncremental_ * (_tokenSupply / (1_LAT).Get())) - ) - tokenPriceIncremental_ - ) * (tokens_ - (1_LAT).Get()) - ) - (tokenPriceIncremental_ * ((tokens_ * tokens_ - tokens_) / (1_LAT).Get())) / u128(2) - ) - / (1_LAT).Get() - ); - return _etherReceived; - } - - u128 sqrt(u128 x) { - u128 z = (x + u128(1)) / u128(2); - u128 y = x; - while(z < y){ - y = z; - z = (x / z + z) / u128(2); - } - return y; - } - -}; - -PLATON_DISPATCH(Bank,(init)(buy)(IDD)(DivsAddon)(reinvest)(exit) -(withdraw)(sell)(transfer)(totalEthereumBalance)(totalSupply) -(myTokens)(myDividends)(balanceOf)(dividendsOf)(sellPrice) -(buyPrice)(calculateTokensReceived)(calculateEthereumReceived)(exitFee)(purchaseTokens) -(DividendsDistribution)(ethereumToTokens_)(tokensToEthereum_)) - - - - - - - - - - - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/Fibonacci.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/Fibonacci.cpp deleted file mode 100644 index 54f6ae53b0..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/Fibonacci.cpp +++ /dev/null @@ -1,48 +0,0 @@ -#define TESTNET -// Author: zjsunzone -// 斐波拉契合约验证 -#include -#include -using namespace platon; - -CONTRACT Fibonacci: public platon::Contract -{ - - public: - PLATON_EVENT0(notify, std::string, uint64_t, uint64_t); - - public: - ACTION void init() - { - // do something to init. - } - - ACTION void fibonacci_notify(uint64_t number) - { - uint64_t result = deep_call(number); - PLATON_EMIT_EVENT0(notify, "ok", number, result); - } - - CONST uint64_t fibonacci_call(uint64_t number) - { - return deep_call(number); - } - - private: - uint64_t deep_call(uint64_t number) { - if(number == 0){ - return 0; - } else if(number == 1){ - return 1; - } else { - return deep_call(number-1) + deep_call(number-2); - } - } - -}; - - -PLATON_DISPATCH(Fibonacci,(init)(fibonacci_notify)(fibonacci_call)) - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/ForeignBridge.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/ForeignBridge.cpp deleted file mode 100644 index 2196c453f2..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/ForeignBridge.cpp +++ /dev/null @@ -1,307 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -#include "src/BridgeDeploymentAddressStorage.hpp" -#include "src/ForeignBridgeGasConsumptionLimitsStorage.hpp" -#include "src/MessageSigning.hpp" - - -class ForeignBridge: public platon::Contract, public BridgeDeploymentAddressStorage, public ForeignBridgeGasConsumptionLimitsStorage -{ - public: - /// Number of authorities signatures required to withdraw the money. - /// - /// Must be less than number of authorities. - platon::StorageType<"initaddr"_n, Address> initaddr; - - platon::StorageType<"requiredSignatures"_n, u128> requiredSignatures; - - platon::StorageType<"estimatedGasCostOfWithdraw"_n, u128> estimatedGasCostOfWithdraw; - - // Original parity-bridge assumes that anyone could forward final - // withdraw confirmation to the HomeBridge contract. That's why - // they need to make sure that no one is trying to steal funds by - // setting a big gas price of withdraw transaction. So, - // funds sender is responsible to limit this by setting gasprice - // as part of withdraw request. - // Since it is not the case for POA CCT bridge, gasprice is set - // to 1 Gwei which is minimal gasprice for POA network. - // 1000000000 wei - platon::StorageType<"homeGasPrice"_n, u128> homeGasPrice; - - /// Contract authorities. - platon::StorageType<"authorities"_n, std::map> authorities; - - /// Pending mesages - platon::StorageType<"messages"_n, std::map> messages; - /// ??? - platon::StorageType<"signatures"_n, std::map> signatures; - - /// Pending deposits and authorities who confirmed them - platon::StorageType<"messages_signed"_n, std::map> messages_signed; - platon::StorageType<"num_messages_signed"_n, std::map> num_messages_signed; - - /// Pending deposits and authorities who confirmed them - platon::StorageType<"deposits_signed"_n, std::map> deposits_signed; - platon::StorageType<"num_deposits_signed"_n, std::map> num_deposits_signed; - - /// Token to work with - platon::StorageType<"erc20token"_n, Address> erc20token; - //ERC20 public erc20token; - - /// List of authorities confirmed to set up ERC-20 token address - platon::StorageType<"tokenAddressAprroval_signs"_n, std::map> tokenAddressAprroval_signs; - platon::StorageType<"num_tokenAddressAprroval_signs"_n, std::map> num_tokenAddressAprroval_signs; - - public: - /// triggered when relay of deposit from HomeBridge is complete - PLATON_EVENT1(Deposit, Address, u128); - - /// Event created on money withdraw. - PLATON_EVENT1(Withdraw, Address, u128, u128); - - /// Collected signatures which should be relayed to home chain. - // params: address authorityResponsibleForRelay, bytes32 messageHash, uint256 NumberOfCollectedSignatures - PLATON_EVENT1(CollectedSignatures, Address, h256, u128); - - /// Event created when new token address is set up. - // params: address token - PLATON_EVENT0(TokenAddress, Address); - - public: - /// Constructor. - ACTION void init(u128 _requiredSignatures, std::vector
_authorities, u128 _estimatedGasCostOfWithdraw) - { - if(_requiredSignatures == u128(0)){ - platon_revert(); - } - if(u128(_authorities.size()) < _requiredSignatures){ - platon_revert(); - } - requiredSignatures.self() = _requiredSignatures; - - for (int i = 0; i < _authorities.size(); i++) { - authorities.self()[_authorities[i]] = true; - } - estimatedGasCostOfWithdraw.self() = _estimatedGasCostOfWithdraw; - - homeGasPrice.self() = u128(1000000000); - -// auto address_init = make_address("laxqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq"); - auto address_init = make_address("atx1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq89qwkc"); - if(address_init.second) Address initaddr = address_init.first; - } - - /// require that sender is an authority - void onlyAuthority(){ - Address sender = platon_caller(); - if(!authorities.self()[sender]){ - platon_revert(); - } - } - - /// Set up the token address. It allows to set up or change - /// the ERC20 token address only if authorities confirmed this. - /// - /// Usage maps instead of arrey allows to reduce gas consumption - /// - /// token address (address) - ACTION void setTokenAddress(Address token) { - - onlyAuthority(); - - // Duplicated deposits - std::string str = token.toString(); - bytes data; - data.insert(data.begin(), str.begin(), str.end()); - h256 token_sender = platon_sha3(data); - - if(tokenAddressAprroval_signs.self()[token_sender]){ - platon_revert(); - } - tokenAddressAprroval_signs.self()[token_sender]= true; - - u128 _signed = num_tokenAddressAprroval_signs.self()[token] + u128(1); - num_tokenAddressAprroval_signs.self()[token] = _signed; - - // TODO: this may cause troubles if requriedSignatures len is changed - if (_signed == requiredSignatures.self()) { - //todo: 还有严重问题 - erc20token.self() = token; - PLATON_EMIT_EVENT0(TokenAddress, token); - } - } - - /// Used to transfer tokens to the `recipient`. - /// The bridge contract must own enough tokens to release them for - /// recipients. Tokens must be transfered to the bridge contract BEFORE - /// the first deposit will be performed. - /// - /// Usage maps instead of array allows to reduce gas consumption - /// from 91169 to 89348 (solc 0.4.19). - /// - /// deposit recipient (bytes20) - /// deposit value (uint256) - /// mainnet transaction hash (bytes32) // to avoid transaction duplication - ACTION void deposit(Address recipient, u128 value, h256 transactionHash) { - onlyAuthority(); - if(erc20token.self() == initaddr.self()){ - platon_revert(); - } - // Protection from misbehaing authority - // todo: 此处需要调整 - //h256 hash_msg = keccak256(recipient, value, transactionHash); - std::string recipientStr = recipient.toString(); - std::string valueStr = std::to_string(value); - std::string transactionHashStr = transactionHash.toString(); - std::string hashMsgStr = ""; - hashMsgStr.append(recipientStr); - hashMsgStr.append(valueStr); - hashMsgStr.append(transactionHashStr); - bytes hashMsgData; - hashMsgData.insert(hashMsgData.begin(), hashMsgStr.begin(), hashMsgStr.end()); - h256 hash_msg = platon_sha3(hashMsgData); - - //h256 hash_sender = keccak256(msg.sender, hash_msg); - Address sender = platon_caller(); - std::string senderStr = sender.toString(); - std::string hashMessageStr = hash_msg.toString(); - std::string hashSenderStr = ""; - hashSenderStr.append(senderStr); - hashSenderStr.append(hashMessageStr); - bytes hashSenderData; - hashSenderData.insert(hashSenderData.begin(), hashSenderStr.begin(), hashSenderStr.end()); - h256 hash_sender = platon_sha3(hashSenderData); - - // Duplicated deposits - if(deposits_signed.self()[hash_sender]){ - platon_revert(); - } - deposits_signed.self()[hash_sender] = true; - - u128 _signed = num_deposits_signed.self()[hash_msg] + u128(1); - num_deposits_signed.self()[hash_msg] = _signed; - - // TODO: this may cause troubles if requriedSignatures len is changed - if (_signed == requiredSignatures.self()) { - // If the bridge contract does not own enough tokens to transfer - // it will couse funds lock on the home side of the bridge - // todo: 此处要调用ERC20的代币接口 - //erc20token.transfer(recipient, value); - PLATON_EMIT_EVENT1(Deposit, recipient, value); - } - } - - /// Used to transfer `value` of tokens from `_from`s balance on local - /// (`foreign`) chain to the same address (`_from`) on `home` chain. - /// Transfer of tokens within local (`foreign`) chain performed by usual - /// way through transfer method of the token contract. - /// In order to swap tokens to coins the owner (`_from`) must allow this - /// explicitly in the token contract by calling approveAndCall with address - /// of the bridge account. - /// The method locks tokens and emits a `Withdraw` event which will be - /// picked up by the bridge authorities. - /// Bridge authorities will then sign off (by calling `submitSignature`) on - /// a message containing `value`, the recipient (`_from`) and the `hash` of - /// the transaction on `foreign` containing the `Withdraw` event. - /// Once `requiredSignatures` are collected a `CollectedSignatures` event - /// will be emitted. - /// An authority will pick up `CollectedSignatures` an call - /// `HomeBridge.withdraw` which transfers `value - relayCost` to the - /// recipient completing the transfer. - ACTION bool receiveApproval(Address _from, u128 _value, Address _tokenContract, bytes _msg) { - /*require(erc20token != address(0x0)); - require(msg.sender == address(erc20token)); - require(erc20token.allowance(_from, this) >= _value); - erc20token.transferFrom(_from, this, _value);*/ - PLATON_EMIT_EVENT1(Withdraw, _from, _value, homeGasPrice.self()); - - return true; - } - - /// Should be used as sync tool - /// - /// Message is a message that should be relayed to main chain once authorities sign it. - /// - /// Usage several maps instead of structure allows to reduce gas consumption - /// from 265102 to 242334 (solc 0.4.19). - /// - /// for withdraw message contains: - /// withdrawal recipient (bytes20) - /// withdrawal value (uint256) - /// foreign transaction hash (bytes32) // to avoid transaction duplication - ACTION void submitSignature(bytes signature, bytes message) { - onlyAuthority(); - - // ensure that `signature` is really `message` signed by `msg.sender` - Address sender = platon_caller(); - if(sender != MessageSigning::recoverAddressFromSignedMessage(signature, message)){ - platon_revert(); - } - if(message.size() != 116){ - platon_revert(); - } - h256 hash = platon_sha3(message); - std::string sendrStr = sender.toString(); - std::string hashStr = hash.toString(); - std::string hashByteStr = ""; - hashByteStr.append(sendrStr); - hashByteStr.append(hashStr); - bytes hashSenderData; - hashSenderData.insert(hashSenderData.begin(), hashByteStr.begin(), hashByteStr.end()); - h256 hash_sender = platon_sha3(hashSenderData); - - u128 _signed = num_messages_signed.self()[hash_sender] + u128(1); - - if (_signed > u128(1)) { - // Duplicated signatures - if(messages_signed.self()[hash_sender]) { - platon_revert(); - } - } - else { - // check if it will really reduce gas usage in case of the second transaction - // with the same hash - messages.self()[hash] = message; - } - messages_signed.self()[hash_sender] = true; - - //h256 sign_idx = keccak256(hash, (signed-u128(1)); - std::string signIdStr = ""; - signIdStr.append(hashStr); - signIdStr.append(std::to_string(_signed - u128(1))); - bytes signIdxData; - signIdxData.insert(signIdxData.begin(), signIdStr.begin(), signIdStr.end()); - h256 sign_idx = platon_sha3(signIdxData); - signatures.self()[sign_idx]= signature; - - num_messages_signed.self()[hash_sender] = _signed; - - // TODO: this may cause troubles if requiredSignatures len is changed - if (_signed == requiredSignatures.self()) { - PLATON_EMIT_EVENT1(CollectedSignatures, platon_caller(), hash, _signed); - } - } - - /// Get signature - CONST bytes signature(h256 hash, u128 index) { - std::string signatureStr = ""; - signatureStr.append(hash.toString()); - signatureStr.append(std::to_string(index)); - bytes data; - data.insert(data.begin(), signatureStr.begin(), signatureStr.end()); - h256 sign_idx = platon_sha3(data); - return signatures.self()[sign_idx]; - } - - /// Get message - CONST bytes message(h256 hash){ - return messages.self()[hash]; - } - -}; - -PLATON_DISPATCH(ForeignBridge,(init)(setTokenAddress)(deposit)(receiveApproval) - (submitSignature)(signature)(message)); diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/HomeBridge.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/HomeBridge.cpp deleted file mode 100644 index 8f8b0eb6f3..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/HomeBridge.cpp +++ /dev/null @@ -1,115 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -#include "src/BridgeDeploymentAddressStorage.hpp" -#include "src/HomeBridgeGasConsumptionLimitsStorage.hpp" -#include "src/Message.hpp" -#include "src/Helpers.hpp" - -class HomeBridge: public platon::Contract, public BridgeDeploymentAddressStorage, public HomeBridgeGasConsumptionLimitsStorage -{ - public: - /// Number of authorities signatures required to withdraw the money. - /// - /// Must be lesser than number of authorities. - platon::StorageType<"requiredSignatures"_n, u128> requiredSignatures; - /// The gas cost of calling `HomeBridge.withdraw`. - /// - /// Is subtracted from `value` on withdraw. - /// recipient pays the relaying authority for withdraw. - /// this shuts down attacks that exhaust authorities funds on home chain. - platon::StorageType<"estimatedGasCostOfWithdraw"_n, u128> estimatedGasCostOfWithdraw; - - /// Contract authorities. - platon::StorageType<"authorities"_n, std::vector
> authorities; - - /// Used foreign transaction hashes. - platon::StorageType<"withdraws"_n, std::map> withdraws; - - public: - /// Event created on money deposit. - PLATON_EVENT1(Deposit, Address, u128); - - /// Event created on money withdraw. - PLATON_EVENT1(Withdraw, Address, u128); - - public: - ACTION void init(u128 requiredSignaturesParam, std::vector
authoritiesParam, u128 estimatedGasCostOfWithdrawParam) { - if(requiredSignaturesParam == u128(0)){ - platon_revert(); - } - if(requiredSignaturesParam > u128(authoritiesParam.size())){ - platon_revert(); - } - requiredSignatures.self() = requiredSignaturesParam; - authorities.self() = authoritiesParam; - estimatedGasCostOfWithdraw.self() = estimatedGasCostOfWithdrawParam; - } - - /// final step of a withdraw. - /// checks that `requiredSignatures` `authorities` have signed of on the `message`. - /// then transfers `value` to `recipient` (both extracted from `message`). - /// see message library above for a breakdown of the `message` contents. - /// `vs`, `rs`, `ss` are the components of the signatures. - - /// anyone can call this, provided they have the message and required signatures! - /// only the `authorities` can create these signatures. - /// `requiredSignatures` authorities can sign arbitrary `message`s - /// transfering any ether `value` out of this contract to `recipient`. - /// bridge users must trust a majority of `requiredSignatures` of the `authorities`. - ACTION void withdraw(std::vector vs, std::vector rs, std::vector ss, bytes message) { - if(message.size() != 116){ - platon_revert(); - } - - // check that at least `requiredSignatures` `authorities` have signed `message` - if(!Helpers::hasEnoughValidSignatures(message, vs, rs, ss, authorities.self(), requiredSignatures.self())){ - platon_revert(); - } - - Address recipient = Message::getRecipient(message); - u128 value = Message::getValue(message); - h256 hash = Message::getTransactionHash(message); - u128 homeGasPrice = Message::getHomeGasPrice(message); - - // if the recipient calls `withdraw` they can choose the gas price freely. - // if anyone else calls `withdraw` they have to use the gas price - // `homeGasPrice` specified by the user initiating the withdraw. - // this is a security mechanism designed to shut down - // malicious senders setting extremely high gas prices - // and effectively burning recipients withdrawn value. - // see https://github.com/paritytech/parity-bridge/issues/112 - // for further explanation. - Address sender = platon_caller(); - if(recipient != sender && platon_gas_price() != homeGasPrice){ - platon_revert(); - } - - // The following two statements guard against reentry into this function. - // Duplicated withdraw or reentry. - if(withdraws.self()[hash]){ - platon_revert(); - } - // Order of operations below is critical to avoid TheDAO-like re-entry bug - withdraws.self()[hash] = true; - - u128 estimatedWeiCostOfWithdraw = estimatedGasCostOfWithdraw.self() * homeGasPrice; - - // charge recipient for relay cost - u128 valueRemainingAfterSubtractingCost = value - estimatedWeiCostOfWithdraw; - - // pay out recipient - platon_transfer(recipient, Energon(valueRemainingAfterSubtractingCost)); - - // refund relay cost to relaying authority - platon_transfer(sender, Energon(estimatedWeiCostOfWithdraw)); - - PLATON_EMIT_EVENT1(Withdraw, recipient, valueRemainingAfterSubtractingCost); - } - - -}; - -PLATON_DISPATCH(HomeBridge,(init)(withdraw)(setGasLimitWithdrawRelay)); diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/LATToken.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/LATToken.cpp deleted file mode 100644 index 4ce33e0543..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/LATToken.cpp +++ /dev/null @@ -1,170 +0,0 @@ -#define TESTNET -// Author: zjsunzone -#include -#include -using namespace platon; - - -class Token { - public: - // total amount of tokens - platon::StorageType<"totalsupply"_n, uint64_t> totalSupply; - - public: // event - // define: _from, _to, _value - PLATON_EVENT2(Transfer, Address, Address, uint64_t); - // define: _owner, _spender, _value - PLATON_EVENT2(Approval, Address, Address, uint64_t); - - public: - // @param _owner The address from which the balance will be retrieved - // @return The balance. - virtual uint64_t balanceOf(Address _owner) = 0; - - // @notice send '_value' token to `_to` from `msg.sender` - // @param _to THe address of the recipient. - // @param _value The amount of token to be transferred. - // @return Whether the transfer was successful or not. - virtual bool transfer(Address _to, uint64_t _value) = 0; - - // @notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from` - // @param _from The address of the sender. - // @param _to The address of the recepient. - // @param _value The amount of token to be transferred. - // @return Whether the transfer was successful or not. - virtual bool transferFrom(Address _from, Address _to, uint64_t _value) = 0; - - // @notice `msg.sender` approves `_spender` to spend `_value` tokens - // @param _spender The address of the account able to transfer the tokens - // @param _value The amount of tokens to be approved for transfer - // @return Whether thee approval was successful or not. - virtual bool approve(Address _spender, uint64_t _value) = 0; - - // @param _owner The address of the account owning tokens - // @param _spender The address of the account able to transfer the tokens - // @return Amount of remaining tokens allowed to spent. - virtual uint64_t allowance(Address _owner, Address _spender) = 0; - -}; - -// You should inherit from StandardTOken or, for a token like you would want -// to deploy in something like MIst, see HumanStandardToken.cpp. -// (This implements ONLY the standard functions and NOTHING else. -// If you deploy this, you won't have anthing useful.) -class StandardToken: public Token -{ - - protected: - platon::StorageType<"balances"_n, std::map> balances; - platon::StorageType<"allowed"_n, std::map>> allowed; - - public: - CONST uint64_t balanceOf(Address _owner) { - return balances.self()[_owner]; - } - - ACTION bool transfer(Address _to, uint64_t _value){ - // Default assumes totalSupply can't be over max(2^64 - 1) - // If your token leaves out totalSupply and can issue more tokens as time goes on, - // you need to check if it doesn't wrap. - // Replace the if with this on instead. - Address sender = platon_caller(); - if (balances.self()[sender] >= _value && _value > 0) { - balances.self()[sender] -= _value; - balances.self()[_to] += _value; - PLATON_EMIT_EVENT2(Transfer, sender, _to, _value); - return true; - } else { - return false; - } - } - - ACTION bool transferFrom(Address _from, Address _to, uint64_t _value) { - // same as above. Replace this line with the following if you want to protect against - // wrapping uints. - Address sender = platon_caller(); - if(balances.self()[_from] >= _value - && allowed.self()[_from][sender] >= _value && _value > 0){ - balances.self()[_to] += _value; - balances.self()[_from] -= _value; - PLATON_EMIT_EVENT2(Transfer, _from, _to, _value); - return true; - } else { - return false; - } - } - - ACTION bool approve(Address _spender, uint64_t _value){ - Address sender = platon_caller(); - allowed.self()[sender][_spender] = _value; - PLATON_EMIT_EVENT2(Approval, sender, _spender, _value); - return true; - } - - CONST uint64_t allowance(Address _owner, Address _spender){ - return allowed.self()[_owner][_spender]; - } - -}; - - -CONTRACT LATToken: public platon::Contract, public StandardToken -{ - - public: - platon::StorageType<"name"_n, std::string> name; // fancy name: eg PlatON Token - platon::StorageType<"decimals"_n, uint8_t> decimals; // HOw many decimals to show. - platon::StorageType<"symbol"_n, std::string> symbol; // An identifier: eg LTT - platon::StorageType<"version"_n, std::string> version; // 0.1 standard. Just an arbitrary versioning scheme. - - public: - ACTION void init(uint64_t _initialAmount, const std::string& _tokenName, - uint8_t _decimalUnits, const std::string& _tokenSymbol) - { - Address sender = platon_caller(); - balances.self()[sender] = _initialAmount; // Give the creator all initial tokens. - totalSupply.self() = _initialAmount; // Update total supply. - name.self() = _tokenName; // Set the name for display purposes - decimals.self() = _decimalUnits; // Amount of decimals for display purposes - symbol.self() = _tokenSymbol; // Set the symbol for display purposes. - } - - CONST std::string getName(){ - return name.self(); - } - - CONST Address getSender(){ - return platon_caller(); - } - - CONST uint8_t getDecimals(){ - return decimals.self(); - } - - CONST std::string getSymbol(){ - return symbol.self(); - } - - CONST uint64_t getTotalSupply(){ - return totalSupply.self(); - } - - // Approves and then calls the receiving contract. - ACTION bool approveAndCall(Address _spender, uint64_t _value, const bytes& _extraData) { - Address sender = platon_caller(); - allowed.self()[sender][_spender] = _value; - PLATON_EMIT_EVENT2(Approval, sender, _spender, _value); - // call the receiveApproval function on the contract you want to be notified. This - // crafts the function signature manually so one doesn't have to include a contract - // in here just for this. - // define: receiveApproval(Address _from, uint64_t _value, Address _tokenContract, bytes& _extraDaa) - // it is assumed that when does this that the call should succeed. - return true; - } -}; - -PLATON_DISPATCH(LATToken,(init)(balanceOf)(transfer)(transferFrom)(approve)(allowance) -(getName)(getDecimals)(getSymbol)(getTotalSupply)(approveAndCall)(getSender)) - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/SimpleAuction.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/SimpleAuction.cpp deleted file mode 100644 index ad5c1ed2fe..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/SimpleAuction.cpp +++ /dev/null @@ -1,97 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * 拍卖合约 - * */ - -CONTRACT SimpleAuction : public platon::Contract{ - - public: - PLATON_EVENT1(HighestBidIncreased,Address,u128) - PLATON_EVENT1(AuctionEnded,Address,uint64_t) - - private: - platon::StorageType<"beneficiary"_n,Address> beneficiary; - platon::StorageType<"auctionEnd"_n,uint64_t> auctionEnd; - platon::StorageType<"highestBidder"_n,Address> highestBidder; - platon::StorageType<"amount"_n,uint64_t> amount; - platon::StorageType<"highestBid"_n,u128> highestBid; - platon::StorageType<"value"_n,u128> callvalue; - platon::StorageType<"mappending"_n,std::map> pendingReturns; - platon::StorageType<"ended"_n,bool> ended; - - public: - ACTION void init(uint64_t _biddingTime, Address _beneficiary) - { - beneficiary.self() = _beneficiary; - auctionEnd.self() = _biddingTime + platon_timestamp(); - } - - /// 对拍卖进行出价,具体的出价随交易一起发送 - /// 如果没有在拍卖中胜出,则返还出价 - ACTION void bid() - { - callvalue.self() = platon_call_value(); - if(platon_timestamp() < auctionEnd.self()) - { - platon_panic(); - } - - if(callvalue.self() > highestBid.self()) - { - platon_panic(); - } - - if(highestBid.self() != 0) - { - pendingReturns.self()[highestBidder.self()] += highestBid.self(); - } - - highestBidder.self() = platon_caller(); - highestBid.self() = callvalue.self(); - PLATON_EMIT_EVENT1(HighestBidIncreased, platon_caller(), callvalue.self()); - } - - /// 取回出价(当该出价已被超越) - ACTION bool withdraw() - { - amount.self() = pendingReturns.self()[platon_caller()]; - if(amount.self() > 0) - { - pendingReturns.self()[platon_caller()] = 0; - - if(platon_transfer(Address(platon_caller()), Energon(amount.self())) != 0) - { - pendingReturns.self()[platon_caller()] = amount.self(); - return false; - } - } - return true; - } - - /// 结束拍卖,并把最高的出价发送给受益人 - ACTION void auctionEnded() - { - // 1. 条件 - if(platon_timestamp() >= auctionEnd.self()) - { - platon_revert(); - } - - // 2. 生效 - if(!ended) { - platon_revert(); - } - - //3.交互 - ended.self() = true; - PLATON_EMIT_EVENT1(AuctionEnded, highestBidder.self(), highestBid.self()); - platon_transfer(Address(beneficiary.self()), Energon(amount.self())); - } - -}; - -PLATON_DISPATCH(SimpleAuction, (init)(bid)(withdraw)(auctionEnded)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/SimpleStorage.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/SimpleStorage.cpp deleted file mode 100644 index 722bf4fb15..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/SimpleStorage.cpp +++ /dev/null @@ -1,34 +0,0 @@ -#define TESTNET -// Author: zjsunzone -// 简单的存储合约 -#include -#include -using namespace platon; - - -CONTRACT SimpleStorage: public platon::Contract -{ - public: - ACTION void init() - { - - } - - ACTION void set(uint64_t input) - { - storedData.self() = input; - } - - CONST uint64_t get() - { - return storedData.self(); - } - - private: - platon::StorageType<"sstored"_n, uint64_t> storedData; -}; - -PLATON_DISPATCH(SimpleStorage,(init)(set)(get)) - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/TweetAccount.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/TweetAccount.cpp deleted file mode 100644 index aac70f4d3d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/TweetAccount.cpp +++ /dev/null @@ -1,120 +0,0 @@ -#define TESTNET -// Author: zjsunzone -#include -#include -using namespace platon; - -// data structure of a single tweet. -struct Tweet{ - - public: - uint64_t timestamp; - std::string tweetString; - - public: - Tweet(){} - Tweet(uint64_t ×tamp, const std::string &tweet):timestamp(timestamp), tweetString(tweet) { - } - - public: - PLATON_SERIALIZE(Tweet, (timestamp)(tweetString)) -}; - - -CONTRACT TweetAccount: public platon::Contract -{ - private: - // "array" of all tweets of this account: maps the tweet id to the actual tweet. - platon::StorageType<"smapping"_n, std::map> _tweets; - // total number of tweets in the above _tweets mapping. - platon::StorageType<"suint"_n, uint64_t> _numberOfTweets; - // "owner" of this account: only admin is allowed to tweet. - platon::StorageType<"saddress"_n, Address> _adminAddress; - - public: - ACTION void init() - { - _numberOfTweets.self() = 0; - _adminAddress.self() = platon::platon_caller(); - } - - // returns true if caller of function("sender") is admin. - CONST bool isAdmin(){ - return platon::platon_caller() == _adminAddress.self(); - } - - // create new tweet - ACTION int64_t tweet(const std::string& tweetString) { - int64_t result = 0; - if(!isAdmin()){ - // only owner is allowed to create tweets for this account. - result = -1; - } else if (tweetString.length() > 160) { - // tweet contains more than 160 bytes. - result = -2; - } else { - _tweets.self()[_numberOfTweets].timestamp = platon_timestamp(); - _tweets.self()[_numberOfTweets].tweetString = tweetString; - _numberOfTweets.self() = _numberOfTweets.self() + 1; - result = 0; // success. - } - return result; - } - - CONST std::string getTweet(uint64_t tweetId){ - // returns two values - std::string tweetString = _tweets.self()[tweetId].tweetString; - uint64_t timestamp = _tweets.self()[tweetId].timestamp; - return tweetString; - } - - CONST std::string getLatestTweet() { - // returns three values. - std::string tweetString = _tweets.self()[_numberOfTweets.self() - 1].tweetString; - uint64_t timestamp = _tweets.self()[_numberOfTweets.self() - 1].timestamp; - uint64_t numberOfTweets = _numberOfTweets.self(); - return tweetString; - } - - CONST Address getOwnerAddress() { - return _adminAddress.self(); - } - - CONST uint64_t getNumberOfTweets() { - return _numberOfTweets.self(); - } - - ACTION void adminRetrieveDonations(const Address& receiver) { - if(isAdmin()){ - Address caddr = platon_address(); - Energon e = platon_balance(caddr); - platon_transfer(receiver, e); - } - } - - CONST Address caddr(){ - return platon_address(); - } - - CONST std::string caddrBalance(Address receiver){ - //Address caddr = platon_address(); - Energon e = platon_balance(receiver); - return std::to_string(e.Get()); - } - - ACTION void adminDeleteAccount(){ - if(isAdmin()){ - // this is a predefined function, it deletes theh contract and returns all funds to the owner. - platon_destroy(_adminAddress.self()); - } - } - - -}; - -PLATON_DISPATCH(TweetAccount,(init)(isAdmin)(tweet)(getTweet)(getLatestTweet) -(getOwnerAddress)(getNumberOfTweets)(adminRetrieveDonations)(adminDeleteAccount) -(caddr)(caddrBalance)) - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/TweetRegistry.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/TweetRegistry.cpp deleted file mode 100644 index 48919a1977..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/TweetRegistry.cpp +++ /dev/null @@ -1,144 +0,0 @@ -#define TESTNET -// Author: zjsunzone -#include -#include -using namespace platon; - - -CONTRACT TweetRegistry: public platon::Contract -{ - private: - // mappings to look up account names, account ids and addresses - platon::StorageType<"addrmapname"_n, std::map> _addressToAccountName; - platon::StorageType<"idmapadr"_n, std::map> _accountIdToAccountAddress; - platon::StorageType<"namemapaddr"_n, std::map> _accountNameToAddress; - - // might be insteesting to see how many people use the system. - platon::StorageType<"numberofaccount"_n, u128> _numberOfAccounts; - - // owner - platon::StorageType<"_registryAdmin"_n, Address> _registryAdmin; - - // allowed to administrate accounts only, not everything. - platon::StorageType<"_accountAdmin"_n, Address> _accountAdmin; - - // if a newer version of this registry is available, force users to use it. - platon::StorageType<"_dsabled"_n, bool> _registrationDisabled; - - public: - ACTION void init() - { - Address sender = platon_caller(); - _registryAdmin.self() = sender; - _accountAdmin.self() = sender; // can be changed later. - _numberOfAccounts.self() = u128(0); - _registrationDisabled.self() = false; - } - - ACTION int registry(const std::string& name, const Address& accountAddress) { - int result = 0; - if(_accountNameToAddress.self()[name] != Address(0)){ - // name already token - result = -1; - } else if (_addressToAccountName.self()[accountAddress].length() != 0) { - // account address is already registered - result = -2; - } else if (name.length() >= 64){ - // name too long - result = -3; - } else if (_registrationDisabled.self()) { - // registry is disabled because a newer version is available - result = -4; - } else { - _addressToAccountName.self()[accountAddress] = name; - _accountNameToAddress.self()[name] = accountAddress; - _accountIdToAccountAddress.self()[_numberOfAccounts] = accountAddress; - _numberOfAccounts.self()++; - result = 0; // success. - } - return result; - } - - CONST u128 getNumberOfAccounts() { - return _numberOfAccounts.self(); - } - - CONST Address getAddressOfName(const std::string& name){ - return _accountNameToAddress.self()[name]; - } - - CONST std::string getNameOfAddress(const Address& addr) { - return _addressToAccountName.self()[addr]; - } - - CONST Address getAddressOfId(const u128& id) { - return _accountIdToAccountAddress.self()[id]; - } - - ACTION std::string unregister() { - Address sender = platon_caller(); - std::string unregisteredAccountName = _addressToAccountName.self()[sender]; - _addressToAccountName.self()[sender] = ""; - _accountNameToAddress.self()[unregisteredAccountName] = Address(0); - return unregisteredAccountName; - } - - ACTION void adminUnregister(const std::string& name) { - Address sender = platon_caller(); - if(sender == _registryAdmin.self() || - sender == _accountAdmin.self() ){ - Address addr = _accountNameToAddress.self()[name]; - _addressToAccountName.self()[addr] = ""; - _accountNameToAddress.self()[name] = Address(0); - } - } - - ACTION bool adminSetRegistrationDisable(bool registrationDisabled){ - // currently, the code of the registry can not be updatd once it is - // deployed. if a newer version of the registry is available, account - // registration can be disabled - Address sender = platon_caller(); - if(sender == _registryAdmin.self()){ - _registrationDisabled.self() = registrationDisabled; - return true; - } - return false; - } - - CONST bool getRegistrationDisabled() { - return _registrationDisabled.self(); - } - - ACTION void adminSetAccountAdministrator(const Address& accountAdmin) { - Address sender = platon_caller(); - if(sender == _registryAdmin.self()){ - _accountAdmin.self() = accountAdmin; - } - } - - ACTION void adminRetrieveDonations(){ - Address sender = platon_caller(); - if(sender == _registryAdmin.self()){ - Address caddr = platon_address(); - Energon e = platon_balance(caddr); - platon_transfer(_registryAdmin.self(), e); - } - } - - ACTION void adminDeleteRegistry() { - Address sender = platon_caller(); - if(sender == _registryAdmin.self()){ - // this is a predefined function, it deletes the contract - // and returns all funds to the admin's address. - platon_destroy(_registryAdmin.self()); - } - } - -}; - -PLATON_DISPATCH(TweetRegistry,(init)(registry)(getNumberOfAccounts)(getAddressOfName) -(getNameOfAddress)(getAddressOfId)(unregister)(adminUnregister)(adminSetRegistrationDisable) -(adminSetAccountAdministrator)(adminRetrieveDonations)(adminDeleteRegistry)(getRegistrationDisabled)) - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/BridgeDeploymentAddressStorage.hpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/BridgeDeploymentAddressStorage.hpp deleted file mode 100644 index 7576e2dd04..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/BridgeDeploymentAddressStorage.hpp +++ /dev/null @@ -1,14 +0,0 @@ -#include -#include -using namespace platon; - -class BridgeDeploymentAddressStorage -{ - public: - platon::StorageType<"deployedAtBlock"_n, u128> deployedAtBlock; - - public: - ACTION BridgeDeploymentAddressStorage() { - deployedAtBlock.self() = u128(platon_block_number()); - } -}; diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/ForeignBridgeGasConsumptionLimitsStorage.hpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/ForeignBridgeGasConsumptionLimitsStorage.hpp deleted file mode 100644 index 0a7d0480c6..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/ForeignBridgeGasConsumptionLimitsStorage.hpp +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include -using namespace platon; - -class ForeignBridgeGasConsumptionLimitsStorage -{ - public: - platon::StorageType<"gasLimitDepositRelay"_n, u128> gasLimitDepositRelay; - platon::StorageType<"gasLimitWithdrawConfirm"_n, u128> gasLimitWithdrawConfirm; - - public: - PLATON_EVENT1(GasConsumptionLimitsUpdated, u128, u128); - - public: - ACTION void setGasLimitDepositRelay(u128 gas) { - gasLimitDepositRelay.self() = gas; - PLATON_EMIT_EVENT1(GasConsumptionLimitsUpdated, gasLimitDepositRelay.self(), gasLimitWithdrawConfirm.self()); - } - - ACTION void setGasLimitWithdrawConfirm(u128 gas) { - gasLimitWithdrawConfirm.self() = gas; - PLATON_EMIT_EVENT1(GasConsumptionLimitsUpdated, gasLimitDepositRelay.self(), gasLimitWithdrawConfirm.self()); - } -}; diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/Helpers.hpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/Helpers.hpp deleted file mode 100644 index b6b8fddffc..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/Helpers.hpp +++ /dev/null @@ -1,61 +0,0 @@ -#include -#include -using namespace platon; - -#include "MessageSigning.hpp" - -class Helpers -{ - public: - Helpers() { - } - - public: - /// returns whether `array` contains `value`. - static bool addressArrayContains(std::vector
array, Address value){ - for (uint64_t i = 0; i < array.size(); i++) { - if (array[i] == value) { - return true; - } - } - return false; - } - - // returns the digits of `inputValue` as a string. - // example: `uintToString(12345678)` returns `"12345678"` - static std::string uintToString(u128 inputValue){ - return std::to_string(inputValue); - } - - /// returns whether signatures (whose components are in `vs`, `rs`, `ss`) - /// contain `requiredSignatures` distinct correct signatures - /// where signer is in `allowed_signers` - /// that signed `message` - static bool hasEnoughValidSignatures(bytes message, std::vector vs, - std::vector rs, std::vector ss, - std::vector
allowed_signers, - u128 requiredSignatures){ - // not enough signatures - /*if (u128(vs.size()) < requiredSignatures) { - return false; - }*/ - - h256 hash = MessageSigning::hashMessage(message); - /* - var encountered_addresses = new address[](allowed_signers.length); - - for (int i = 0; i < requiredSignatures; i++) { - var recovered_address = ecrecover(hash, vs[i], rs[i], ss[i]); - // only signatures by addresses in `addresses` are allowed - if (!addressArrayContains(allowed_signers, recovered_address)) { - return false; - } - // duplicate signatures are not allowed - if (addressArrayContains(encountered_addresses, recovered_address)) { - return false; - } - encountered_addresses[i] = recovered_address; - }*/ - return true; - } -}; diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/HomeBridgeGasConsumptionLimitsStorage.hpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/HomeBridgeGasConsumptionLimitsStorage.hpp deleted file mode 100644 index 8335455a2f..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/HomeBridgeGasConsumptionLimitsStorage.hpp +++ /dev/null @@ -1,27 +0,0 @@ -#include -#include -using namespace platon; - -/// Due to nature of bridge operations it makes sense to have the same value -/// of gas consumption limits which will distributed among all validators serving -/// particular bridge. This approach introduces few advantages: -/// --- new bridge instances will pickup limits from the contract instead of -/// looking at the configuration file (this configuration parameters could be -/// depricated) -/// --- as soon as upgradable bridge contract is implemented these limits needs -/// to be updated every time the contract is upgraded. Validators could get -/// an event that limits updated and use new values to send transactions. -class HomeBridgeGasConsumptionLimitsStorage -{ - public: - platon::StorageType<"gasLimitWithdrawRelay"_n, u128> gasLimitWithdrawRelay; - - public: - PLATON_EVENT0(GasConsumptionLimitsUpdated, u128); - - public: - ACTION void setGasLimitWithdrawRelay(u128 gas) { - gasLimitWithdrawRelay.self() = gas; - PLATON_EMIT_EVENT0(GasConsumptionLimitsUpdated, gasLimitWithdrawRelay.self()); - } -}; diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/Message.hpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/Message.hpp deleted file mode 100644 index 79b453e32d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/Message.hpp +++ /dev/null @@ -1,61 +0,0 @@ -#include -#include -using namespace platon; - -class Message -{ - public: - // layout of message :: bytes: - // offset 0: 32 bytes :: uint256 - message length - // offset 32: 20 bytes :: address - recipient address - // offset 52: 32 bytes :: uint256 - value - // offset 84: 32 bytes :: bytes32 - transaction hash - // offset 116: 32 bytes :: uint256 - home gas price - - // bytes 1 to 32 are 0 because message length is stored as little endian. - // mload always reads 32 bytes. - // so we can and have to start reading recipient at offset 20 instead of 32. - // if we were to read at 32 the address would contain part of value and be corrupted. - // when reading from offset 20 mload will read 12 zero bytes followed - // by the 20 recipient address bytes and correctly convert it into an address. - // this saves some storage/gas over the alternative solution - // which is padding address to 32 bytes and reading recipient at offset 32. - // for more details see discussion in: - // https://github.com/paritytech/parity-bridge/issues/61 - static Address getRecipient(bytes message) { - /*address recipient; - // solium-disable-next-line security/no-inline-assembly - assembly { - recipient := mload(add(message, 20)) - } - return recipient;*/ - Address sender = platon_caller(); - return sender; - } - - static u128 getValue(bytes message) { - return platon_call_value(); - } - - static h256 getTransactionHash(bytes message) { - /*bytes32 hash; - // solium-disable-next-line security/no-inline-assembly - assembly { - hash := mload(add(message, 84)) - } - return hash;*/ - h256 hash = platon_block_hash(platon_block_number()-1); - return hash; - } - - static u128 getHomeGasPrice(bytes message) { - /*uint256 gasPrice; - // solium-disable-next-line security/no-inline-assembly - assembly { - gasPrice := mload(add(message, 116)) - } - return gasPrice;*/ - u128 gasPrice = platon_gas_price(); - return gasPrice; - } -}; diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/MessageSigning.hpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/MessageSigning.hpp deleted file mode 100644 index a92c81ac20..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/MessageSigning.hpp +++ /dev/null @@ -1,29 +0,0 @@ -#include -#include -using namespace platon; - -class MessageSigning -{ - - public: - static Address recoverAddressFromSignedMessage(bytes signature, bytes message){ - /*require(signature.length == 65); - bytes32 r; - bytes32 s; - bytes1 v; - // solium-disable-next-line security/no-inline-assembly - assembly { - r := mload(add(signature, 0x20)) - s := mload(add(signature, 0x40)) - v := mload(add(signature, 0x60)) - } - return ecrecover(hashMessage(message), uint8(v), r, s);*/ - return platon_caller(); - } - - static h256 hashMessage(bytes message){ - /*bytes memory prefix = "\x19Ethereum Signed Message:\n"; - return keccak256(prefix, Helpers.uintToString(message.length), message);*/ - return platon_sha3(message);; - } -}; diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/Ownable.hpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/Ownable.hpp deleted file mode 100644 index 56baca6305..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_docs/src/Ownable.hpp +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include -using namespace platon; - -class Ownable -{ - public: - platon::StorageType<"owner"_n, Address> owner; - - public: - Ownable() { - owner.self() = platon_caller(); - } - - bool onlyOwner(){ - Address sender = platon_caller(); - if(sender != owner.self()){ - platon_revert(); - return false; - } - return true; - } - -}; diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent.cpp deleted file mode 100644 index d5538f883d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent.cpp +++ /dev/null @@ -1,44 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -//extern char const string_storage[] = "stringstorage"; - /** - * PLATON_EVENT 测试零个主题 - * 编译:./platon-cpp ContractEmitEvent.cpp -std=c++17 - * 部署:deploy --wasm ContractEmitEvent.wasm - * 调用:invoke --addr 0x1C31AE86DBDE69364a2cFBc90673df645e44e239 --func zero_emit_event_args2 --params {"name":"4"} - * 查询:call --addr 0x1C31AE86DBDE69364a2cFBc90673df645e44e239 --func get_string - */ -CONTRACT ContractEmitEvent : public platon::Contract{ - public: - PLATON_EVENT0(transfer,std::string) - PLATON_EVENT0(transfer2,std::string,std::string) - PLATON_EVENT0(transfer3,std::string,std::string,uint32_t) - - ACTION void init(){} - - ACTION void zero_emit_event(std::string name){ - stringstorage.self() = name; - PLATON_EMIT_EVENT0(transfer,name); - } - - ACTION void zero_emit_event_args2(std::string name){ - stringstorage.self() = name; - PLATON_EMIT_EVENT0(transfer2,name,name); - } - - ACTION void zero_emit_event_args3(std::string name,uint32_t value){ - stringstorage.self() = name; - PLATON_EMIT_EVENT0(transfer3,name,name,value); - } - - CONST std::string get_string(){ - return stringstorage.self(); - } - private: - platon::StorageType<"sstorage"_n, std::string> stringstorage; -}; - -PLATON_DISPATCH(ContractEmitEvent, (init)(zero_emit_event)(zero_emit_event_args2)(zero_emit_event_args3)(get_string)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent1.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent1.cpp deleted file mode 100644 index 1ae8b15e9b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent1.cpp +++ /dev/null @@ -1,46 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -//extern char const string_storage[] = "stringstorage"; - /** - * PLATON_EVENT 测试一个主题 - * 编译:./platon-cpp ContractEmitEvent1.cpp -std=c++17 - * 部署:deploy --wasm ContractEmitEvent1.wasm - * 调用:invoke --addr 0xd002CD0427bE17B0671B84A2221834116431aC29 --func one_emit_event1 --params {"name":"5","value":4} - * 调用:invoke --addr 0x21cC984a2dbD9431F7b2ebfd564Ff6034b5887c2 --func one_emit_event1_args2 --params {"name":"5","value":4} - * 查询:call --addr 0xd002CD0427bE17B0671B84A2221834116431aC29 --func get_string - */ -CONTRACT ContractEmitEvent1 : public platon::Contract{ - public: - PLATON_EVENT1(transfer,std::string,uint32_t) - PLATON_EVENT1(transfer2,std::string,uint32_t,std::string) - PLATON_EVENT1(transfer3,std::string,uint32_t,std::string,std::string,std::string,std::string,std::string,uint32_t,uint32_t,std::string) - - ACTION void init(){} - - ACTION void one_emit_event1(std::string name,uint32_t value){ - stringstorage.self() = name; - PLATON_EMIT_EVENT1(transfer,name,value); - } - - ACTION void one_emit_event1_args2(std::string name,uint32_t value){ - stringstorage.self() = name; - PLATON_EMIT_EVENT1(transfer2,name,value,name); - } - - ACTION void one_emit_event1_args9(std::string topic,uint32_t value,std::string name1,std::string name2,std::string name3,std::string name4,std::string name5,uint32_t value2 - ,uint32_t value3,std::string name6){ - stringstorage.self() = name1; - PLATON_EMIT_EVENT1(transfer3,topic,value,name1,name2,name3,name4,name5,value2,value3,name6); - } - - CONST std::string get_string(){ - return stringstorage.self(); - } - private: - platon::StorageType<"sstorage"_n, std::string> stringstorage; -}; - -PLATON_DISPATCH(ContractEmitEvent1, (init)(one_emit_event1)(one_emit_event1_args2)(one_emit_event1_args9)(get_string)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent1ComplexParam.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent1ComplexParam.cpp deleted file mode 100644 index e1de0dcd50..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent1ComplexParam.cpp +++ /dev/null @@ -1,26 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -CONTRACT ContractEmitEvent1ComplexParam : public platon::Contract{ - public: - PLATON_EVENT1(transfer,std::string,uint32_t,std::list) - - ACTION void init(){} - - ACTION void one_emit_event1(std::string name,uint32_t value,const std::list &inList){ - stringstorage.self() = name; - PLATON_EMIT_EVENT1(transfer,name,value,inList); - } - - - CONST std::string get_string(){ - return stringstorage.self(); - } - private: - platon::StorageType<"sstorage"_n, std::string> stringstorage; - platon::StorageType<"listvar"_n, std::list> sList; -}; - -PLATON_DISPATCH(ContractEmitEvent1ComplexParam, (init)(one_emit_event1)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent1WithMap.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent1WithMap.cpp deleted file mode 100644 index 90c1410e18..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent1WithMap.cpp +++ /dev/null @@ -1,31 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - - -CONTRACT ContractEmitEvent1WithMap : public platon::Contract{ - public: - PLATON_EVENT1(transfer,std::string,uint32_t,std::map) - - ACTION void init(){} - - ACTION void one_emit_event1(std::string name,uint32_t value,const std::map &inMap){ - stringstorage.self() = name; - for (auto iter=inMap.begin(); iter!=inMap.end(); iter++) { - DEBUG("ContractEmitEvent1WithMap", "inMap", iter->first, iter->second); - } -// inMap.insert(std::pair("key3", "value3")); - PLATON_EMIT_EVENT1(transfer,name,value,inMap); - } - - CONST std::string get_string(){ - return stringstorage.self(); - } - private: - platon::StorageType<"sstorage"_n, std::string> stringstorage; - platon::StorageType<"strmap"_n, std::map> strmap; - -}; - -PLATON_DISPATCH(ContractEmitEvent1WithMap, (init)(one_emit_event1)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent2.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent2.cpp deleted file mode 100644 index f9ec1a033c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent2.cpp +++ /dev/null @@ -1,40 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -//extern char const string_storage[] = "stringstorage"; - /** - * PLATON_EVENT 测试一个主题 - * 编译:./platon-cpp ContractEmitEvent2.cpp -std=c++17 - * 部署:deploy --wasm ContractEmitEvent2.wasm - * 调用:invoke --addr 0x42495B0a691061BBda4F3caAe8721D7CFD3d7d55 --func two_emit_event2 --params {"name":"5","nationality":"china","value":4} - * 调用:invoke --addr 0x334Bb5c07103cD54fB564655616D2C5194E7725a --func two_emit_event2_args2 --params {"name":"5","nationality":"china","value":4} - * 查询:call --addr 0x42495B0a691061BBda4F3caAe8721D7CFD3d7d55 --func get_string - */ -CONTRACT ContractEmitEvent2 : public platon::Contract{ - public: - PLATON_EVENT2(transfer,std::string,std::string,uint32_t) - PLATON_EVENT2(transfer2,std::string,std::string,uint32_t,uint32_t,std::string,std::string) - - ACTION void init(){} - - ACTION void two_emit_event2(std::string name,std::string nationality,uint32_t value){ - stringstorage.self() = name; - PLATON_EMIT_EVENT2(transfer,name,nationality,value); - } - - //两个topic 4个参数 - ACTION void two_emit_event2_args4(std::string name,std::string nationality,uint32_t value1,uint32_t value2,std::string name1,std::string name2){ - stringstorage.self() = name; - PLATON_EMIT_EVENT2(transfer2,name,nationality,value1,value2,name1,name2); - } - - CONST std::string get_string(){ - return stringstorage.self(); - } - private: - platon::StorageType<"sstorage"_n, std::string> stringstorage; -}; - -PLATON_DISPATCH(ContractEmitEvent2, (init)(two_emit_event2)(two_emit_event2_args4)(get_string)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent3.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent3.cpp deleted file mode 100644 index 82293b4799..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent3.cpp +++ /dev/null @@ -1,39 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -//extern char const string_storage[] = "stringstorage"; - /** - * PLATON_EVENT 测试一个主题 - * 编译:./platon-cpp ContractEmitEvent3.cpp -std=c++17 - * 部署:deploy --wasm ContractEmitEvent3.wasm - * 调用:invoke --addr 0xC13977ba78b5e42c910777fF13d34567b1a36D9B --func three_emit_event3 --params {"name":"5","nationality":"china","city":"hangzhou","value":4} - * 调用:invoke --addr 0xC13977ba78b5e42c910777fF13d34567b1a36D9B --func three_emit_event3_args2 --params {"name":"5","nationality":"china","city":"hangzhou","value":4} - * 查询:call --addr 0xBD891449A2403DF312572E9a40F161547819dD71 --func get_string - */ -CONTRACT ContractEmitEvent3 : public platon::Contract{ - public: - PLATON_EVENT3(transfer,std::string,std::string,std::string,uint32_t) - PLATON_EVENT3(transfer2,std::string,std::string,std::string,uint32_t,uint32_t,std::string,std::string) - - ACTION void init(){} - - ACTION void three_emit_event3(std::string name,std::string nationality,std::string city,uint32_t value){ - stringstorage.self() = name; - PLATON_EMIT_EVENT3(transfer,name,nationality,city,value); - } - - ACTION void three_emit_event3_args4(std::string name,std::string nationality,std::string city,uint32_t value1,uint32_t value2,std::string name1,std::string name2){ - stringstorage.self() = name; - PLATON_EMIT_EVENT3(transfer2,name,nationality,city,value1,value2,name1,name2); - } - - CONST std::string get_string(){ - return stringstorage.self(); - } - private: - platon::StorageType<"sstorage"_n, std::string> stringstorage; -}; - -PLATON_DISPATCH(ContractEmitEvent3, (init)(three_emit_event3)(three_emit_event3_args4)(get_string)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent4.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent4.cpp deleted file mode 100644 index b0d2899c00..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEvent4.cpp +++ /dev/null @@ -1,39 +0,0 @@ -//#define TESTNET -//#include -//#include -//using namespace platon; -// -////extern char const string_storage[] = "stringstorage"; -// /** -// * PLATON_EVENT 测试一个主题 -// * 编译:./platon-cpp ContractEmitEvent4.cpp -std=c++17 -// * 部署:deploy --wasm ContractEmitEvent4.wasm -// * 调用:invoke --addr 0xC822Ed460348C8F84dd8bad979A01e51C0673370 --func four_emit_event4 --params {"name":"5","nationality":"china","city":"hangzhou","village":"yuhang","value":4} -// * 调用:invoke --addr 0xBcad5dE91De1845Fe95812C206ED01d21fF7393F --func four_emit_event4_args2 --params {"name":"5","nationality":"china","city":"hangzhou","village":"yuhang","value":4} -// * 查询:call --addr 0xC822Ed460348C8F84dd8bad979A01e51C0673370 --func get_string -// */ -//CONTRACT ContractEmitEvent4 : public platon::Contract{ -// public: -// PLATON_EVENT4(transfer,std::string,std::string,std::string,std::string,uint32_t) -// PLATON_EVENT4(transfer2,std::string,std::string,std::string,std::string,uint32_t,uint32_t,std::string,std::string) -// -// ACTION void init(){} -// -// ACTION void four_emit_event4(std::string name,std::string nationality,std::string city,std::string village,uint32_t value){ -// stringstorage.self() = name; -// PLATON_EMIT_EVENT4(transfer,name,nationality,city,village,value); -// } -// -// ACTION void four_emit_event4_args4(std::string name,std::string nationality,std::string city,std::string village,uint32_t value1,uint32_t value2,std::string name1,std::string name2){ -// stringstorage.self() = name; -// PLATON_EMIT_EVENT4(transfer2,name,nationality,city,village,value1,value2,name1,name2); -// } -// -// CONST std::string get_string(){ -// return stringstorage.self(); -// } -// private: -// platon::StorageType<"sstorage"_n, std::string> stringstorage; -//}; -// -//PLATON_DISPATCH(ContractEmitEvent4, (init)(four_emit_event4)(four_emit_event4_args4)(get_string)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEventWithArray.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEventWithArray.cpp deleted file mode 100644 index ac72eee93f..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_event/ContractEmitEventWithArray.cpp +++ /dev/null @@ -1,49 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; -using myintArray = std::array; -using myuintArray = std::array; - - -CONTRACT ContractEmitEventWithArray : public platon::Contract{ - public: - PLATON_EVENT0(transfer0,std::vector,std::vector,FixedHash<8>,myintArray,myuintArray,std::list,std::list,std::string) - PLATON_EVENT1(transfer1,std::list,std::vector,std::vector,FixedHash<8>,myintArray,myuintArray,std::list,std::string) - PLATON_EVENT2(transfer2,std::vector,std::vector,FixedHash<8>,myintArray,myuintArray,std::list,std::list,std::string) - PLATON_EVENT3(transfer3,FixedHash<8>,myintArray,myuintArray, std::vector,std::vector,std::list,std::list,std::string) - - ACTION void init(){} - - ACTION void zerotopic_eigthargs_event(std::vector _argsOne,std::vector _argsTwo,FixedHash<8> _argsThree,myintArray _argsFour,myuintArray _argsFive,std::list _argsSix,std::list _argsSeven,std::string _argsEight){ - stringstorage.self() = _argsEight; - PLATON_EMIT_EVENT0(transfer0,_argsOne,_argsTwo,_argsThree,_argsFour,_argsFive,_argsSix,_argsSeven,_argsEight); - } - - ACTION void onetopic_sevenargs_event(std::list _topicOne,std::vector _argsOne,std::vector _argsTwo,FixedHash<8> _argsThree,myintArray _argsFour,myuintArray _argsFive,std::list _argsSix,std::string _argsSeven){ - stringstorage.self() = _argsSeven; - PLATON_EMIT_EVENT1(transfer1, _topicOne, _argsOne,_argsTwo,_argsThree,_argsFour,_argsFive,_argsSix,_argsSeven); - } - - ACTION void twotopic_sixargs_event(std::vector _topicOne,std::vector _topicTwo,FixedHash<8> _argsOne,myintArray _argsTwo,myuintArray _argsThree,std::list _argsFour,std::list _argsFive,std::string _argsSix){ - stringstorage.self() = _argsSix; - PLATON_EMIT_EVENT2(transfer2, _topicOne,_topicTwo, _argsOne,_argsTwo,_argsThree,_argsFour,_argsFive,_argsSix); - } - - ACTION void threetopic_fiveargs_event(FixedHash<8> _topicOne,myintArray _topicTwo,myuintArray _topicThree, std::vector _argsOne,std::vector _argsTwo,std::list _argsThree,std::list _argsFour,std::string _argsFive){ - stringstorage.self() = _argsFive; - PLATON_EMIT_EVENT3(transfer3, _topicOne,_topicTwo,_topicThree, _argsOne,_argsTwo,_argsThree,_argsFour,_argsFive); - } - - ACTION void set_string(std::string _stringargs){ - stringstorage.self() = _stringargs; - } - - CONST std::string get_string(){ - return stringstorage.self(); - } - private: - platon::StorageType<"sstorage"_n, std::string> stringstorage; -}; - -PLATON_DISPATCH(ContractEmitEventWithArray, (init)(zerotopic_eigthargs_event)(onetopic_sevenargs_event)(twotopic_sixargs_event)(threetopic_fiveargs_event)(set_string)(get_string)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_new.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_new.cpp deleted file mode 100644 index f3e888fb91..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_new.cpp +++ /dev/null @@ -1,38 +0,0 @@ -#define TESTNET -#include -using namespace platon; - -CONTRACT ContractMigrateNew: public platon::Contract { - public: - PLATON_EVENT1(transfer,std::string,std::string) - ACTION void init(uint8_t input, uint16_t input2) { - tUint8.self() = input; - tUint16.self() = input2; - } - - ACTION void setUint8New(uint8_t input) - { - tUint8.self() = input; - } - CONST uint8_t getUint8New() - { - return tUint8.self(); - } - - ACTION void setUint16(uint16_t input) - { - tUint16.self() = input; - } - CONST uint16_t getUint16() - { - return tUint16.self(); - } - - private: - platon::StorageType<"suintone"_n, uint8_t> tUint8; - platon::StorageType<"suinttwo"_n, uint16_t> tUint16; -}; - -PLATON_DISPATCH(ContractMigrateNew,(init)(setUint8New)(getUint8New)(setUint16)(getUint16)) - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_old.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_old.cpp deleted file mode 100644 index 9082a1f5f4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_old.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#define TESTNET -#include -using namespace platon; - -CONTRACT ContractMigrateOld: public platon::Contract { - public: - PLATON_EVENT1(transfer,std::string,std::string) - ACTION void init(uint8_t input) { - tUint8.self() = input; - } - - ACTION std::string migrate_contract(const bytes &init_arg, uint64_t transfer_value, uint64_t gas_value) { - DEBUG("init_arg is :", toHex(init_arg)); - Address return_address; - platon_migrate_contract(return_address, init_arg, transfer_value, gas_value); - PLATON_EMIT_EVENT1(transfer,return_address.toString(),return_address.toString()); - DEBUG("new contract address:", return_address.toString()); - return return_address.toString(); - } - - ACTION void setUint8(uint8_t input) - { - tUint8.self() = input; - } - CONST uint8_t getUint8() - { - return tUint8.self(); - } - - private: - platon::StorageType<"suint"_n, uint8_t> tUint8; -}; - -PLATON_DISPATCH(ContractMigrateOld,(init)(migrate_contract)(setUint8)(getUint8)) - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_types.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_types.cpp deleted file mode 100644 index 6601024670..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_types.cpp +++ /dev/null @@ -1,58 +0,0 @@ -#define TESTNET -#include -using namespace platon; - -class message { - public: - std::string head; - PLATON_SERIALIZE(message, (head)) -}; - - -CONTRACT ContractMigrateTypes: public platon::Contract { - public: - PLATON_EVENT1(transfer,std::string,std::string) - ACTION void init() { - - } - - ACTION std::string migrate_contract(const bytes &init_arg, uint64_t transfer_value, uint64_t gas_value) { - DEBUG("init_arg is :", toHex(init_arg)); - Address return_address; - platon_migrate_contract(return_address, init_arg, transfer_value, gas_value); - PLATON_EMIT_EVENT1(transfer,return_address.toString(),return_address.toString()); - DEBUG("new contract address:", return_address.toString()); - return return_address.toString(); - } - - ACTION void setMessage(const message &msg) { - sMessage.self() = msg; - } - CONST message getMessage() { - return sMessage.self(); - } - - ACTION void pushVector(uint16_t element) { - sVector.self().push_back(element); - } - CONST uint16_t getVectorElement(uint64_t index) { - return sVector.self()[index]; - } - - ACTION void setMap(std::string key, std::string value) { - sMap.self()[key] = value; - } - CONST std::string getMapElement(std::string key) { - return sMap.self()[key]; - } - - private: - platon::StorageType<"message"_n, message> sMessage; - platon::StorageType<"vectorvar"_n, std::vector> sVector; - platon::StorageType<"mapvar"_n,std::map> sMap; - -}; - -PLATON_DISPATCH(ContractMigrateTypes,(init)(migrate_contract)(setMessage)(getMessage) - (pushVector)(getVectorElement)(setMap)(getMapElement)) - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_v1.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_v1.cpp deleted file mode 100644 index 0a12b39c46..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_v1.cpp +++ /dev/null @@ -1,43 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -CONTRACT ContractMigrate : public platon::Contract{ - public: - PLATON_EVENT1(transfer,std::string,std::string) - - ACTION void init(){ - - } - - /** - * 合约升级 - * 内置 platon_migrate 函数 return_address 参数被写入新合约地址 - * init_arg 参数为 magic number + RLP(code, RLP("init", init_paras...)) - * transfer_value 为转到新合约地址的金额,gas_value 为预估消耗的 gas - */ - ACTION std::string migrate_contract(const bytes &init_arg, uint64_t transfer_value, uint64_t gas_value){ - //输出init_arg参数 - DEBUG("init_arg is :", toHex(init_arg)); - Address return_address; - platon_migrate_contract(return_address, init_arg, transfer_value, gas_value); - PLATON_EMIT_EVENT1(transfer,return_address.toString(),return_address.toString()); - DEBUG("new contract address:", return_address.toString()); - return return_address.toString(); - } - - ACTION void set_string(const std::string &one_name){ - DEBUG("set_string:", one_name); - stringstorage.self()= one_name; - } - - CONST std::string get_string(){ - DEBUG("get_string:", stringstorage.self()); - return stringstorage.self(); - } - private: - platon::StorageType<"sstorage"_n, std::string> stringstorage; -}; - -PLATON_DISPATCH(ContractMigrate, (init)(migrate_contract)(set_string)(get_string)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_v2.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_v2.cpp deleted file mode 100644 index 19ac9142ce..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_migrate/ContractMigrate_v2.cpp +++ /dev/null @@ -1,49 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -CONTRACT ContractMigrate : public platon::Contract{ - public: - PLATON_EVENT1(transfer,std::string,std::string) - - ACTION void init(){ - addressstorage.self()= platon_caller().toString(); - DEBUG("origin caller is:",platon_caller().toString()); - } - - /** - * 合约升级 - * 内置 platon_migrate 函数 return_address 参数被写入新合约地址 - * init_arg 参数为 magic number + RLP(code, RLP("init", init_paras...)) - * transfer_value 为转到新合约地址的金额,gas_value 为预估消耗的 gas - */ - ACTION std::string migrate_contract(const bytes &init_arg, uint64_t transfer_value, uint64_t gas_value){ - if(addressstorage.self() != platon_caller().toString()){ - DEBUG("please use contract create to migrate !!!"); - } - - //输出init_arg参数 - DEBUG("init_arg is :", toHex(init_arg)); - Address return_address; - platon_migrate_contract(return_address, init_arg, transfer_value, gas_value); - PLATON_EMIT_EVENT1(transfer,return_address.toString(),return_address.toString()); - DEBUG("new contract address:", return_address.toString()); - return return_address.toString(); - } - - ACTION void set_string(const std::string &one_name){ - DEBUG("set_string:", one_name); - stringstorage.self()= one_name; - } - - CONST std::string get_string(){ - DEBUG("get_string:", stringstorage.self()); - return stringstorage.self(); - } - private: - platon::StorageType<"sstorage"_n, std::string> stringstorage; - platon::StorageType<"sstorage"_n, std::string> addressstorage; -}; - -PLATON_DISPATCH(ContractMigrate, (init)(migrate_contract)(set_string)(get_string)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_multi_inherit/OneInherit.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_multi_inherit/OneInherit.cpp deleted file mode 100644 index 90325342cb..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_multi_inherit/OneInherit.cpp +++ /dev/null @@ -1,54 +0,0 @@ -#define TESTNET -#include -#include -#include -using namespace platon; - -class message { - public: - std::string head; - PLATON_SERIALIZE(message, (head)) -}; - -class my_message : public message { - public: - std::string body; - std::string end; - PLATON_SERIALIZE_DERIVED(my_message, message, (body)(end)) -}; - -//extern char const my_message_vector[] = "info"; - /** - * 单继承测试 - * 编译:./platon-cpp bbb.cpp - * 部署:deploy --wasm StorageType_uintts8t.cpp.wasm - * 调用:invoke --addr 0xa4E7351A774f8e48a3302b0972a8844454932Ffa --func set_int --params {"a":12} - * 查询:call --addr 0xa4E7351A774f8e48a3302b0972a8844454932Ffa --func get_int - */ -CONTRACT OneInherit : public platon::Contract{ - public: - ACTION void init(){ - } - - ACTION void add_my_message(const my_message &one_message){ - info.self().push_back(one_message); - } - - CONST uint8_t get_my_message_size(){ - return info.self().size(); - } - - CONST std::string get_my_message_head(const uint8_t index){ - return info.self()[index].head; - } - - CONST std::string get_my_message_body(const uint8_t index){ - return info.self()[index].body; - } - - - private: - platon::StorageType<"mymvector"_n, std::vector> info; -}; - -PLATON_DISPATCH(OneInherit, (init)(add_my_message)(get_my_message_size)(get_my_message_head)(get_my_message_body)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_multi_inherit/OneInheritWithMultiDataType.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_multi_inherit/OneInheritWithMultiDataType.cpp deleted file mode 100644 index 0bea475cfc..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_multi_inherit/OneInheritWithMultiDataType.cpp +++ /dev/null @@ -1,56 +0,0 @@ -#define TESTNET -#include -#include -#include -using namespace platon; - -class message { - public: - std::string head; - uint32_t age; - uint64_t money; - PLATON_SERIALIZE(message, (head)(age)(money)) -}; - -class my_message : public message { - public: - std::string body; - std::string end; - PLATON_SERIALIZE_DERIVED(my_message, message, (body)(end)) -}; - -CONTRACT OneInheritWithMultiDataType : public platon::Contract{ - public: - ACTION void init(){ - } - - ACTION void add_my_message(const my_message &one_message){ - info.self().push_back(one_message); - } - - CONST uint8_t get_my_message_size(){ - return info.self().size(); - } - - CONST std::string get_my_message_head(const uint8_t index){ - return info.self()[index].head; - } - - CONST uint32_t get_my_message_age(const uint8_t index){ - return info.self()[index].age; - } - - CONST uint64_t get_my_message_money(const uint8_t index){ - return info.self()[index].money; - } - - CONST std::string get_my_message_body(const uint8_t index){ - return info.self()[index].body; - } - - - private: - platon::StorageType<"mymvector"_n, std::vector> info; -}; - -PLATON_DISPATCH(OneInheritWithMultiDataType, (init)(add_my_message)(get_my_message_size)(get_my_message_head)(get_my_message_age)(get_my_message_money)(get_my_message_body)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_multi_inherit/ThreeInherit.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_multi_inherit/ThreeInherit.cpp deleted file mode 100644 index efc22e84fd..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_multi_inherit/ThreeInherit.cpp +++ /dev/null @@ -1,61 +0,0 @@ -#define TESTNET -#include -#include -#include -using namespace platon; - -class message { - public: - std::string head; - PLATON_SERIALIZE(message, (head)) -}; - -class my_message : public message { - public: - std::string body; - std::string end; - PLATON_SERIALIZE_DERIVED(my_message, message, (body)(end)) -}; - -class sub_my_message : public my_message { - public: - std::string from; - std::string to; - PLATON_SERIALIZE_DERIVED(sub_my_message, my_message,(from)(to)) -}; - -class greate_sub_my_message : public sub_my_message { - public: - std::string level; - std::string desc; - PLATON_SERIALIZE_DERIVED(greate_sub_my_message, sub_my_message,(level)(desc)) -}; - - -CONTRACT ThreeInherit : public platon::Contract{ - public: - ACTION void init(){ - } - - ACTION void add_greate_sub_my_message(const greate_sub_my_message &my_greate_sub_one_message){ - info.self().push_back(my_greate_sub_one_message); - } - - CONST uint8_t get_greate_sub_my_message_size(){ - return info.self().size(); - } - - CONST std::string get_greate_sub_my_message_head(const uint8_t index){ - return info.self()[index].head; - } - - CONST std::string get_greate_sub_my_message_desc(const uint8_t index){ - return info.self()[index].desc; - } - - - private: - platon::StorageType<"gsmvector"_n, std::vector> info; -}; - -PLATON_DISPATCH(ThreeInherit, (init)(add_greate_sub_my_message)(get_greate_sub_my_message_size)(get_greate_sub_my_message_head)(get_greate_sub_my_message_desc)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_multi_inherit/TwoInherit.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_multi_inherit/TwoInherit.cpp deleted file mode 100644 index 68a094a3b8..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_multi_inherit/TwoInherit.cpp +++ /dev/null @@ -1,55 +0,0 @@ -#define TESTNET -#include -#include -#include -using namespace platon; - -class message { - public: - std::string head; - PLATON_SERIALIZE(message, (head)) -}; - -class my_message : public message { - public: - std::string body; - std::string end; - PLATON_SERIALIZE_DERIVED(my_message, message, (body)(end)) -}; - -class sub_my_message : public my_message { - public: - std::string from; - std::string to; - PLATON_SERIALIZE_DERIVED(sub_my_message, my_message,(from)(to)) -}; - -//extern char const sub_my_message_vector[] = "info"; - -CONTRACT TwoInherit : public platon::Contract{ - public: - ACTION void init(){ - } - - ACTION void add_sub_my_message(const sub_my_message &sub_one_message){ - info.self().push_back(sub_one_message); - } - - CONST uint8_t get_sub_my_message_size(){ - return info.self().size(); - } - - CONST std::string get_sub_my_message_head(const uint8_t index){ - return info.self()[index].head; - } - - CONST std::string get_sub_my_message_from(const uint8_t index){ - return info.self()[index].from; - } - - - private: - platon::StorageType<"svector"_n, std::vector> info; -}; - -PLATON_DISPATCH(TwoInherit, (init)(add_sub_my_message)(get_sub_my_message_size)(get_sub_my_message_head)(get_sub_my_message_from)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/ContractInterface.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/ContractInterface.cpp deleted file mode 100644 index c01351bee8..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/ContractInterface.cpp +++ /dev/null @@ -1,30 +0,0 @@ -#define TESTNET -// Created by 许文 on 2020-02-06. -// - -#include -#include -using namespace platon; - -class Count { -public: - virtual uint64_t getCount()=0; - virtual void setCount(const uint64_t &count)=0; -}; - -CONTRACT migrate: public platon::Contract,public Count { -public: - ACTION void init(){ - this->count.self() = 0; - }; - CONST uint64_t getCount() { - return this->count.self(); - }; - ACTION void setCount(const uint64_t &count){ - this->count.self() = count; - }; -private: - platon::StorageType<"count"_n, uint64_t> count; -}; - -PLATON_DISPATCH(migrate, (init)(getCount)(setCount)); \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/OverrideContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/OverrideContract.cpp deleted file mode 100644 index c853c3cfd0..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/OverrideContract.cpp +++ /dev/null @@ -1,61 +0,0 @@ -#define TESTNET -// Author: zjsunzone -// 验证合约的继承、重载功能; -#include -using namespace platon; - -// 基类 -class Shape { - protected: - int32_t width, height; - - public: - Shape( int32_t a=1, int32_t b=1) - { - width = a; - height = b; - } - - virtual uint32_t area() - { - return width * height; - } - - uint32_t area2() - { - return 100 * 100; - } -}; - -// 合约类 -CONTRACT OverrideContract: public platon::Contract, public Shape { - public: - ACTION void init() - { - - }; - - // override area from super class. - uint32_t area() - { - return 100; - } - - CONST uint32_t getArea(uint64_t input) - { - if(input == 1) - { - return area(); - } - - if(input == 2) - { - return area2(); - } - return 0; - } -}; - -PLATON_DISPATCH(OverrideContract, (init)(getArea)) - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/multi-inherit-contract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/multi-inherit-contract.cpp deleted file mode 100644 index 24de842aea..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/multi-inherit-contract.cpp +++ /dev/null @@ -1,52 +0,0 @@ -#define TESTNET -// -// Created by 许文 on 2020-02-06. -// - -#include -#include -using namespace platon; - -class animal { -public: - void setName(std::string name) { - this->name = name; - }; - std::string getName() { - return this->name; - } -private: - std::string name; -}; - -class voice { -public: - std::string utterance() { - return this->shut; - }; - void setShut(std::string shut) { - this->shut = shut; - }; -private: - std::string shut; -}; - -CONTRACT dog: public platon::Contract,public animal, public voice { -public: - ACTION void init(){ - voice::setShut("汪汪汪"); - }; - ACTION void setName(std::string name) { - animal::setName(name); - }; - CONST std::string getName(){ - return animal::getName(); - } - CONST std::string shut() { - return voice::utterance(); - } -}; - -PLATON_DISPATCH(dog, (init)(setName)(getName)(shut)); - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/overload-contract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/overload-contract.cpp deleted file mode 100644 index 8a2116ba3e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/overload-contract.cpp +++ /dev/null @@ -1,36 +0,0 @@ -#define TESTNET -// -// Created by 许文 on 2020-02-06. -// - -#include -#include -using namespace platon; - -CONTRACT operate: public platon::Contract { -public: - ACTION void init() {}; - CONST uint64_t add(uint64_t x, uint64_t y) { - return x+y; - }; - - CONST std::string add(std::string x, std::string y) { - return x + y; - }; - uint64_t max(uint64_t x, uint64_t y) { - if(x > y){ - return x; - } else { - return y; - } - }; - std::string max(std::string s1, std::string s2) { - if(s1 > s2){ - return s1; - } else { - return s2; - } - }; -}; - -PLATON_DISPATCH(operate, (init)(add)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/single-inherit-contract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/single-inherit-contract.cpp deleted file mode 100644 index 8a1e4eec3b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_object_oriented/single-inherit-contract.cpp +++ /dev/null @@ -1,33 +0,0 @@ -#define TESTNET -// -// Created by 许文 on 2020-02-06. -// - -#include -using namespace platon; - -class base { -public: - uint64_t get_count(){ - return this->count; - }; - void set_count(uint64_t count) { - this->count = count; - }; -private: - uint64_t count; -}; - -PLATON_DISPATCH(base, (init)(getCount)(setCount)); - -CONTRACT inherit: public platon::Contract, public base { -public: - ACTION void init(){ - base::set_count(10); - }; - CONST uint64_t getCount() { - return base::get_count(); - } -}; - -PLATON_DISPATCH(inherit, (init)(getCount)); \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_termination/Contract_panic.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_termination/Contract_panic.cpp deleted file mode 100644 index 130a3c35c9..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_termination/Contract_panic.cpp +++ /dev/null @@ -1,44 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -//extern char const string_storage[] = "stringstorage"; -//extern char const string_storage1[] = "stringstorage1"; -/** - * platon_panic 函数退出合约,此时会把用户的全部 gas 用完 - */ -CONTRACT ContractPanic : public platon::Contract{ - public: - ACTION void init(){ - } - - /** - * 合约终止 - * platon 提供断言函数 platon_assert,断言失败会退出合约,此时会花费掉实际执行消耗的 gas。 - * VM returned with error err="execute function code: exec: transaction panic" - */ - ACTION void panic_contract(std::string name, uint64_t value){ - stringstorage.self() = name; - ::platon_panic; - stringstorage1.self() = name; - } - - ACTION void set_string_storage(std::string &name){ - stringstorage.self() = name; - } - - CONST std::string get_string_storage(){ - return stringstorage.self(); - } - - CONST std::string get_string_storage1(){ - return stringstorage1.self(); - } - - private: - platon::StorageType<"sstorage"_n, std::string> stringstorage; - platon::StorageType<"sstorage1"_n, std::string> stringstorage1; -}; - -PLATON_DISPATCH(ContractPanic, (init)(panic_contract)(set_string_storage)(get_string_storage)(get_string_storage1)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_termination/Contract_termination.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_termination/Contract_termination.cpp deleted file mode 100644 index 5897d04be1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_termination/Contract_termination.cpp +++ /dev/null @@ -1,29 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -//extern char const string_storage[] = "stringstorage"; -/** - * platon_assert - */ -CONTRACT ContractTermination : public platon::Contract{ - public: - ACTION void init(){ - } - - ACTION bool transfer_assert(std::string name, uint64_t value){ - platon_assert(value >= 100, "bad value"); - stringstorage.self() = name; - return false; - } - - CONST std::string get_string_storage(){ - return stringstorage.self(); - } - - private: - platon::StorageType<"sstorage"_n, std::string> stringstorage; -}; - -PLATON_DISPATCH(ContractTermination, (init)(transfer_assert)(get_string_storage)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_termination/Contract_timeout_termination.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_termination/Contract_timeout_termination.cpp deleted file mode 100644 index f60d2cab1b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/contract_termination/Contract_timeout_termination.cpp +++ /dev/null @@ -1,31 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -//extern char const string_storage[] = "stringstorage"; -/** - * 当value值大于100将会限入死循环 - * 将会终止合约 - */ -CONTRACT ContractTimeoutTermination : public platon::Contract{ - public: - ACTION void init(){ - } - - ACTION void forfunction(std::string name, uint64_t value){ - while(value>100){ - value=value+1; - } - stringstorage.self() = name; - } - - CONST std::string get_string_storage(){ - return stringstorage.self(); - } - - private: - platon::StorageType<"sstorage"_n, std::string> stringstorage; -}; - -PLATON_DISPATCH(ContractTimeoutTermination, (init)(forfunction)(get_string_storage)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/AutoTypeContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/AutoTypeContract.cpp deleted file mode 100644 index c5094ece1e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/AutoTypeContract.cpp +++ /dev/null @@ -1,118 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * @author qudong - * 测试合约anto关键字 - * 作用:auto可以在声明变量的时候根据初始值的类型自动为此类型变量匹配类型 - * */ - -CONTRACT AntoTypeContract : public platon::Contract{ - - private: - platon::StorageType<"vector1"_n, std::vector> storage_vector_string; - - public: - ACTION void init(){ - } - - //自动匹配int类型 - CONST auto get_anto_int(){ - auto a = 5;//值为整数 - return a; - } - //自动匹配 - CONST auto get_anto_int32(){ - auto a = -10;//值为负数 - return a; - } - //自动匹配int*类型--指针类型编译器不支持 - /* CONST auto get_anto_int2(){ - auto b = new auto(1);//y是int* - return b; - }*/ - //自动匹配int*类型--指针类型编译器不支持 - /* CONST auto get_anto_int3(){ - auto a = 5;//x是int - auto c = &a;//c是int*类型 - return c; - }*/ - //自动匹配double类型(暂不支持浮点) - /* CONST auto get_anto_double(){ - auto d = 1.0;//d是double类型 - return d; - }*/ - //自动匹配多个值类型 - CONST auto get_anto_multiple(){ - auto e = 10,f = 20,g = 30;//auto定义多个值时必须类型一致 - return g; - } - //自动匹配uint8类型 - CONST auto get_anto_uint8_t(){ - uint8_t a1 = 10; - auto v1 = a1;//v1是uint8_t类型 - return v1; - } - //自动匹配数组类型--指针类型不支持 - /* CONST auto get_anto_array(){ - int64_t arr[3] = {1,2,3}; - auto v2 = arr;//v2是int64_t - return v2; - }*/ - - //自动匹配表达式(暂不支持浮点) - /*CONST auto get_anto_express(){ - - auto a = 5; - auto b = 10.32; - auto c = a + b;//c是double - return c; - }*/ - - ACTION void set_anto_care_one(){ - //1、如果初始化表达式是引用,则去除引用语义 - int a = 10; - int &b = a; - auto c = b;//c的类型为int而非int&(去除引用) - - //2、如果初始化表达式为const或volatile(或者两者兼有),则除去const/volatile语义 - const int a1 = 10; - auto b1= a1; //b1的类型为int而非const int(去除const) - const auto c1 = a1;//此时c1的类型为const int - } - - - /** - * 函数参数不能被声明为auto - * auto仅仅是一个占位符,它并不是一个真正的类型, - * 不能使用一些以类型为操作数的操作符 - */ - /* ACTION void set_anto_func(auto a,auto b) - auto c = a * b; - }*/ - //auto应用迭代器中 - CONST uint8_t get_anto_iterator(){ - uint8_t count = 0; - storage_vector_string.self().push_back("v1"); - storage_vector_string.self().push_back("v2"); - storage_vector_string.self().push_back("v3"); - for(auto it = storage_vector_string.self().begin(); it != storage_vector_string.self().end(); ++it) - { - count += 1; - } - return count; - } - -}; - -PLATON_DISPATCH(AntoTypeContract,(init) -(get_anto_int)(get_anto_int32) -//(get_anto_int2)(get_anto_int3) -//(get_anto_double) -(get_anto_multiple) -(get_anto_uint8_t)//(get_anto_array) -//(get_anto_express) -(set_anto_care_one)(get_anto_iterator) -) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/BasicDataIntegerTypeContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/BasicDataIntegerTypeContract.cpp deleted file mode 100644 index 5cf4468113..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/BasicDataIntegerTypeContract.cpp +++ /dev/null @@ -1,217 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * @author qudong - * 测试合约基本数据类型 - * 1、整型 - * 1)、验证有符号/无符号整型 - * 2)、验证无符号整数位数 - * 3)、验证有符号整数位数 - * 4)、验证大位数整型赋值 - * */ - -CONTRACT BasicDataIntegerTypeContract : public platon::Contract{ - - - private: - platon::StorageType<"int1key"_n,int8_t> int8_v; - platon::StorageType<"int2key"_n,int16_t> int16_v; - platon::StorageType<"int3key"_n,int32_t> int32_v; - platon::StorageType<"int4key"_n,int64_t> int64_v; - platon::StorageType<"uint1key"_n,uint8_t> uint8_v; - platon::StorageType<"uint2key"_n,uint16_t> uint16_v; - platon::StorageType<"uint3key"_n,uint32_t> uint32_v; - platon::StorageType<"uint4key"_n,uint64_t> uint64_v; - - platon::StorageType<"key1range"_n,int8_t> int8_range; - platon::StorageType<"key2range"_n,int16_t> int16_range; - platon::StorageType<"key3range"_n,int32_t> int32_range; - platon::StorageType<"key4range"_n,int64_t> int64_range; - platon::StorageType<"key5range"_n,uint8_t> uint8_range; - platon::StorageType<"u1range"_n,uint16_t> uint16_range; - platon::StorageType<"u2range"_n,uint32_t> uint32_range; - platon::StorageType<"u3range"_n,uint64_t> uint64_range; - platon::StorageType<"u1key"_n,u128> u128_v; - //platon::StorageType<"u1key"_n,u160> u160_v; - //platon::StorageType<"u2key"_n,u256> u256_v; - //platon::StorageType<"bigintkey"_n,bigint> bigint_v; - - public: - ACTION void init(){ - } - /** - * 1、整型 - * 1)、有符号整型int - * 2)、无符号整型uint - **/ - - //赋值int8_t、int16_t、int32_t、uint8_t - ACTION void set_uint8(const uint8_t &value){ - uint8_v.self()=value; - } - - CONST uint8_t get_uint8(){ - return uint8_v.self(); - } - - - ACTION void set_uint16(const uint16_t &value){ - uint16_v.self()=value; - } - - CONST uint16_t get_uint16(){ - return uint16_v.self(); - } - - ACTION void set_uint32(const uint32_t &value){ - uint32_v.self()=value; - } - - CONST uint32_t get_uint32(){ - return uint32_v.self(); - } - - ACTION void set_uint64(const uint64_t &value){ - uint64_v.self()=value; - } - - CONST uint64_t get_uint64(){ - return uint64_v.self(); - } - - ACTION void set_int8(const int8_t &value){ - int8_v.self()=value; - } - - CONST int8_t get_int8(){ - return int8_v.self(); - } - - - ACTION void set_int16(const int16_t &value){ - int16_v.self()=value; - } - - CONST int16_t get_int16(){ - return int16_v.self(); - } - - ACTION void set_int32(const int32_t &value){ - int32_v.self()=value; - } - - CONST int32_t get_int32(){ - return int32_v.self(); - } - - ACTION void set_int64(const int64_t &value){ - int64_v.self()=value; - } - - CONST int64_t get_int64(){ - return int64_v.self(); - } - - /** - * 3)、验证大位数整型赋值 - */ - ACTION void set_u128(const uint64_t &value){ - u128_v.self()=value; - } - - CONST std::string get_u128(){ - return std::to_string(u128_v.self()); - } - - - /* CONST std::string get_u128(uint64_t input) - { - u128 u = u128(input); - return std::to_string(u); - }*/ - - /* ACTION void set_u160(const uint64_t &value){ - u160_v.self() = u160(value); - } - CONST std::string get_u160(){ - return to_string(u160_v.self()); - } - - ACTION void set_u256(const uint64_t &value){ - u256_v.self() = u256(value); - } - CONST std::string get_u256(){ - return to_string(u256_v.self()); - } - - ACTION void set_bigint(const uint64_t &value){ - bigint_v.self() = bigint(value); - } - CONST std::string get_bigint(){ - return to_string(bigint_v.self()); - }*/ - - /** - * 4)、验证有符号整数位数 - */ - /* //int8()取值范围:-128~127 - ACTION void set_int8_range(){ - //int8_range.self() = -129;//异常,整数溢出,编译报错 - int8_range.self() = -128; //正常 - int8_range.self() = -100; //正常 - int8_range.self() = 1; //正常 - int8_range.self() = 127; //正常 - //int8_range.self() = 128; //异常,整数溢出,编译报错 - } - - //int16()取值范围:-32768~32767 - ACTION void set_int16_range(){ - //int16_range.self() = -32770;//异常,整数溢出,编译报错 - int16_range.self() = -32768; //正常 - int16_range.self() = 1; //正常 - int16_range.self() = 127; //正常 - int16_range.self() = 32767; //异常,整数溢出,编译报错 - //int8_range.self() = 32768; //异常,整数溢出,编译报错 - }*/ - - /** - * 5)、验证无符号整数位数 - **/ - - //uint8()取值范围:0~255 - /* ACTION void set_uint8_range(){ - //uint8_range.self() = -10; //此处编译未报错??待开发查看 - uint8_range.self() = 0; //正常 - uint8_range.self() = 255; //正常 - // uint8_range.self() = 256; //异常警告,整数溢出 - } - //uint16()取值范围:0~65535 - ACTION void set_uint16_range(){ - // uint16_range.self() = -1; //此处编译未报错??待开发查看 - uint16_range.self() = 0; //正常 - uint16_range.self() = 65535; //正常 - //uint16_range.self() = 65536;//异常,整数溢出,编译报错 - } - //uint32()取值范围:0~4294967295 - ACTION void set_uint32_range(){ - //uint32_range.self() = -1; //此处编译未报错??待开发查看 - uint32_range.self() = 0; //正常 - uint32_range.self() = 4294967295; //正常 - //uint32_range.self() = 4294967296;//异常,整数溢出,编译报错 - }*/ - - - -}; - -PLATON_DISPATCH(BasicDataIntegerTypeContract,(init)(set_uint8)(get_uint8)(set_uint16)(get_uint16)(set_uint32) -(get_uint32)(set_uint64)(get_uint64)(set_int8)(get_int8)(set_int16)(get_int16)(set_int32)(get_int32) -(set_int64)(get_int64)(set_u128)(get_u128) -//(set_u256)(get_u256)(set_u160)(get_u160)(set_bigint)(get_bigint) -) -//(set_u160)(get_u160)(set_u256)(get_u256)(set_bigint)(get_bigint)) -//(set_int8_range)(set_int16_range)(set_uint8_range)(set_uint16_range)(set_uint32_range) - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/BasicDataTypeContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/BasicDataTypeContract.cpp deleted file mode 100644 index 9ea41af81c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/BasicDataTypeContract.cpp +++ /dev/null @@ -1,193 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * @author qudong - * 测试合约基本数据类型 - * 1、整型 - * 2、布尔型 - * 3、字节类型(byte) - * 4、字符串类型 - * 5、浮点类型(float、double) - * 6、地址类型 - * */ - - -CONTRACT BasicDataTypeContract : public platon::Contract{ - - private: - platon::StorageType<"bytekey"_n,byte> byte_v; - platon::StorageType<"boolkey"_n,bool> bool_v; - platon::StorageType<"strkey"_n,std::string> string_v; - platon::StorageType<"addrkey"_n,Address> address_v; -// platon::StorageType<"floatkey"_n,float> float_v; -// platon::StorageType<"doublekey"_n,double> double_v; - platon::StorageType<"long"_n,long> long_v; - platon::StorageType<"long2"_n,long long> long_long_v; - - public: - ACTION void init(){ - } - /** - * 1、布尔型(bool) - * 取值常量true、false - **/ - ACTION void set_bool(const bool &value){ - bool_v.self() = value; - } - CONST bool get_bool(){ - return bool_v.self(); - } - - /** - * 2、字节类型(byte) - * byte相当于uint8_t - **/ - ACTION void set_byte(const byte &value){ - byte_v.self() = value; - } - CONST byte get_byte(){ - return byte_v.self(); - } - - /** - * 3、字符串(string) - * 字符串赋值、字符串.size() - **/ - ACTION void set_string(const std::string &value){ - string_v.self() = value; - } - CONST std::string get_string(){ - return string_v.self(); - } - CONST uint8_t get_string_length(){ - return string_v.self().size(); - } - - /** - * 4、浮点类型(float、double) - * 验证结果:浮点型编译不通过 - **/ - //1)、float入参带&引用值 - /* ACTION void set_float(const float &value){ - float_v.self() = value; - } - ACTION void set_float_one(const float value){ - float_v.self() = value; - } - CONST float get_float(){ - return float_v.self(); - }*/ - //2)、double入参带&引用值 - /*ACTION void set_double(const double &value){ - double_v.self() = value; - } - ACTION void set_double_one(const double value){ - double_v.self() = value; - } - CONST double get_double(){ - return double_v.self(); - }*/ - //3)、定义局部变量浮点型 - //验证结果:可以编译通过,脚本调用正常未见gas不足异常 - ACTION void set_float_type_local(){ - float a = 1.3f; - double b = 2.56; - double c = a + 3; - } - - /** - * 5、地址类型(Address) - * - **/ - ACTION void set_address(){ - address_v.self() = platon_caller();//获取交易发起者地址 - } - CONST std::string get_address(){ - return address_v.self().toString(); - } - - /** - * 6、long类型 - */ - ACTION void set_long(const long &value){ - long_v.self()=value; - } - CONST long get_long(){ - return long_v.self(); - } - - ACTION void set_long_long(const long long &value){ - long_long_v.self()=value; - } - CONST long long get_long_long(){ - return long_long_v.self(); - } - - //7、枚举:由枚举常量构成, - /** - * 1)、枚举定义:只能以标识符形式表示,而不能以整型、字符型等文字常量。 - * 2)、枚举赋值 - * 3)、枚举类型限定作用域及非限定作用域 - *1、限定作用域的枚举类型:枚举成员的名字遵循常规的作用域准则,在枚举类型的作用域外是不可以访问的 - * 2、不限定作用域枚举类型:枚举成员的作用域和枚举类型本身作用域相同 - */ - //1)、枚举定义 - ACTION void set_enum_validity(){ - enum Weekday{SUN,MON,TUE,WED,THU,FRI,SAT};//合法编译正常 - //enum book{'a','b','c','d'};//非法编译异常 - //enum year{1998,1999,2010,2012};//非法编译异常 - } - //2)、枚举赋值 - CONST uint8_t set_enum_assignment(){ - //枚举类型在声明之后具有默认值0->4值递增 - enum Animal{dog,cat,pig,chicken,duck}; - //自定义赋值,未赋值在此基础递增 - enum AnimalEnum{dogEnum = 7,catEnum = 2,pigEnum,chickenEnum,duckEnum}; - //对枚举元素不能对它赋予常量值 - //dogEnum = 1;//赋值非法编译 - return uint8_t(pigEnum);//返回值为3 - } - //3)、枚举类型限定作用域及非限定作用域 - //A、限定作用域的枚举类型:枚举成员的名字遵循常规的作用域准则,在枚举类型的作用域外是不可以访问的 - //B、不限定作用域枚举类型:枚举成员的作用域和枚举类型本身作用域相同 - ACTION void set_enum_scope(){ - //定义非限定作用域的枚举类型 - enum color {red,yellow,green}; - // enum stoplight {red,yellow,green};//编译异常,作用范围内重复定义枚举成员 - //定义限定作用域的枚举类型 - enum class open_modes{input,output,append}; - enum class open_modes_enum{input,output,append};//编译正常,限定作用范围 - } - //4)、枚举赋值 - CONST uint8_t set_enum_class_assignment(){ - enum size{x,xx,xxx,xxxl,xxxxl}; - enum class sizeEnum{xEnum,xxEnum,xxxEnum,xxxlEnum,xxxxlEnum}; - //赋值 - size a = size::xxx; - sizeEnum b = sizeEnum::xxxEnum; - return uint8_t(b);//返回值为2 - } - - - -}; - -PLATON_DISPATCH(BasicDataTypeContract,(init) -(set_bool)(get_bool) -(set_byte)(get_byte) -(set_string)(get_string)(get_string_length) -(set_address)(get_address) -//(set_float) -//(set_float_one) -//(get_float) -//(set_double) -//(set_double_one) -//(get_double) -(set_float_type_local) -(set_long)(get_long)(set_long_long)(get_long_long) -(set_enum_validity)(set_enum_assignment)(set_enum_scope) -(set_enum_class_assignment) -) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract.cpp deleted file mode 100644 index 52663f4df5..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract.cpp +++ /dev/null @@ -1,273 +0,0 @@ -#define TESTNET -// Author: zjsunzone -// Desc: 验证所有基础数据类型的入参、返回值等是否合规 -#include -#include -using namespace platon; - - -// 定义基础数据类型的存储 -/*extern char const sint8[] = "sint8"; -extern char const sint32[] = "sint32"; -extern char const sint64[] = "sint64"; -extern char const sbyte[] = "sbyte"; -extern char const sstring[] = "string"; -extern char const sbool[] = "sbool"; -extern char const suint8[] = "suint8"; -extern char const suint32[] = "suint32"; -extern char const suint64[] = "suint64"; - -// 封装类型 -extern char const saddress[] = "saddress"; -extern char const su256[] = "su256"; -extern char const sh256[] = "sh256"; -*/ - -CONTRACT IntegerDataTypeContract: public platon::Contract -{ - - /// common - public: - ACTION void init() - { - // do something to init. - } - - /// integer data type. - /* - public: - /// int8 返回验证 - /// range: -32768 到 32767 - CONST short int int8() - { - return 3; - } - - /// int32 - /// range: -2147483648 到 2147483647 - CONST int int32() - { - return 2; - } - - /// int64 - /// range: -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 - CONST long long int64() - { - return 200; - } - - /// uint8_t - /// range: - CONST uint8_t uint8t(uint8_t input) - { - return input * 2; - } - - /// uint32_t - CONST uint32_t uint32t(uint32_t input) - { - return input * 2; - } - - /// uint64_t - CONST uint64_t uint64t(uint64_t input) - { - return input * 2; - } - - - /// u128 - CONST std::string u128t(uint64_t input) - { - u128 u = u128(input); - return to_string(u); - } - - /// u256 - CONST std::string u256t(uint64_t input) - { - u256 u = u256(input); - return to_string(u); - } - */ - // ACTION - public: - /* - /// to set value for int8. - ACTION void setInt8(int8_t input) - { - tInt8.self() = input; - DEBUG("Invoke setInt8", "input", input); - } - - /// get the value from int8. - CONST int8_t getInt8() - { - return tInt8.self(); - } - - /// to set value for int32. - ACTION void setInt32(int32_t input) - { - tInt32.self() = input; - DEBUG("Invoke setInt32", "input", input); - } - - /// get the value from int32. - CONST int32_t getInt32() - { - return tInt32.self(); - } - - /// to set value for int64. - ACTION void setInt64(int64_t input) - { - tInt64.self() = input; - DEBUG("Invoke setInt64", "input", input); - } - - /// get the value from int64. - CONST int64_t getInt64() - { - return tInt64.self(); - } - - /// to set value for uint8. - ACTION void setUint8(uint8_t input) - { - tUint8.self() = input; - DEBUG("Invoke setUint8", "input", input); - } - - /// get the value from uint8. - CONST uint8_t getUint8() - { - return tUint8.self(); - } - - /// to set value for uint32. - ACTION void setUint32(uint32_t input) - { - tUint32.self() = input; - DEBUG("Invoke setUint32", "input", input); - } - - /// get the value from uint32. - CONST uint32_t getUint32() - { - return tUint32.self(); - } - - /// to set value for uint64. - ACTION void setUint64(uint64_t input) - { - tUint64.self() = input; - DEBUG("Invoke setUint64", "input", input); - } - - /// get the value from uint64. - CONST uint64_t getUint64() - { - return tUint64.self(); - } - */ - - /// To set value for string. - ACTION void setString(const std::string& input) - { - tString.self() = input; - } - - /// get the value from string. - CONST std::string getString() - { - return tString.self(); - } - - /// To set value for bool. - ACTION void setBool(bool input) - { - tBool.self() = input; - } - - /// get the value from bool. - CONST bool getBool() - { - return tBool.self(); - } - - /// To set value for char. - ACTION void setChar(char input) - { - tByte.self() = input; - } - - /// get the value from char. - CONST char getChar() - { - return tByte.self(); - } - - /// set value for address. - ACTION void setAddress(const std::string& input) - { - auto address_info = make_address(input); - if(address_info.second) Address tAddress = address_info.first; -// tAddress.self() = Address(input); - } - - CONST std::string getAddress() - { - return tAddress.self().toString(); - } - - /// set value for u256. - ACTION void setU256(uint64_t input) - { - tU256.self() = u128(input); - } - - CONST std::string getU256() - { - return std::to_string(tU256.self()); - } - - /// set value for h256. - ACTION void setH256(const std::string& input) - { - tH256.self() = h256(input); - } - - CONST std::string getH256() - { - return tH256.self().toString(); - } - - private: - //platon::StorageType<"sint8"_n, int8_t> tInt8; - //platon::StorageType<"sint32"_n, int32_t> tInt32; - //platon::StorageType<"sint64"_n, int64_t> tInt64; - //platon::StorageType<"suint8"_n, uint8_t> tUint8; - //platon::StorageType<"suint32"_n, uint32_t> tUint32; - //platon::StorageType<"suint64"_n, uint64_t> tUint64; - platon::StorageType<"sbyte"_n, char> tByte; - platon::StorageType<"sbool"_n, bool> tBool; - platon::StorageType<"sstring"_n, std::string> tString; - - platon::StorageType<"saddress"_n, Address> tAddress; - platon::StorageType<"su255"_n, u128> tU256; - platon::StorageType<"sh255"_n, h256> tH256; - - -}; - -// (int8)(int64)(uint8t)(uint32t)(uint64t)(u128t)(u256t) -//(setInt8)(getInt8)(setInt32)(getInt32)(setInt64)(getInt64) -// (setUint8)(getUint8)(setUint32)(getUint32)(setUint64)(getUint64) -PLATON_DISPATCH(IntegerDataTypeContract,(init) -(setString)(getString)(setBool)(getBool)(setChar)(getChar) -(setAddress)(getAddress)(setU256)(getU256)(setH256)(getH256)) - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract_1.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract_1.cpp deleted file mode 100644 index a35e6a94b1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract_1.cpp +++ /dev/null @@ -1,87 +0,0 @@ -#define TESTNET -// Author: zjsunzone -// Desc: 验证所有基础数据类型的入参、返回值等是否合规 -#include -#include -using namespace platon; - - -CONTRACT IntegerDataTypeContract_1: public platon::Contract -{ - - /// common - public: - ACTION void init() - { - // do something to init. - } - - /// integer data type. - public: - /// int8 返回验证 - /// range: -32768 到 32767 - CONST short int int8() - { - return 3; - } - - /// int32 - /// range: -2147483648 到 2147483647 - CONST int int32() - { - return 2; - } - - /// int64 - /// range: -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 - CONST long long int64() - { - return 200; - } - - /// uint8_t - /// range: - CONST uint8_t uint8t(uint8_t input) - { - return input * 2; - } - - /// uint32_t - CONST uint32_t uint32t(uint32_t input) - { - return input * 2; - } - - /// uint64_t - CONST uint64_t uint64t(uint64_t input) - { - return input * 2; - } - - - /// u128 - CONST std::string u128t(uint64_t input) - { - u128 u = u128(input); - return std::to_string(u); - } - - /// u256 - CONST std::string u256t(uint64_t input) - { - u128 u = u128(input); - return std::to_string(u); - } - - - -}; - -// (int8)(int64)(uint8t)(uint32t)(uint64t)(u128t)(u256t) -//(setInt8)(getInt8)(setInt32)(getInt32)(setInt64)(getInt64) -// (setUint8)(getUint8)(setUint32)(getUint32)(setUint64)(getUint64) -PLATON_DISPATCH(IntegerDataTypeContract_1,(init) -(int8)(int64)(uint8t)(uint32t)(uint64t)(u128t)(u256t)) - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract_2.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract_2.cpp deleted file mode 100644 index 00e66f6eac..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract_2.cpp +++ /dev/null @@ -1,118 +0,0 @@ -#define TESTNET -// Author: zjsunzone -// Desc: 验证所有基础数据类型的入参、返回值等是否合规 -#include -#include -using namespace platon; - -CONTRACT IntegerDataTypeContract_2: public platon::Contract -{ - - /// common - public: - ACTION void init() - { - // do something to init. - } - - - // ACTION - public: - /// to set value for int8. - ACTION void setInt8(int8_t input) - { - tInt8.self() = input; - DEBUG("Invoke setInt8", "input", input); - } - - /// get the value from int8. - CONST int8_t getInt8() - { - return tInt8.self(); - } - - /// to set value for int32. - ACTION void setInt32(int32_t input) - { - tInt32.self() = input; - DEBUG("Invoke setInt32", "input", input); - } - - /// get the value from int32. - CONST int32_t getInt32() - { - return tInt32.self(); - } - - /// to set value for int64. - ACTION void setInt64(int64_t input) - { - tInt64.self() = input; - DEBUG("Invoke setInt64", "input", input); - } - - /// get the value from int64. - CONST int64_t getInt64() - { - return tInt64.self(); - } - - /// to set value for uint8. - ACTION void setUint8(uint8_t input) - { - tUint8.self() = input; - DEBUG("Invoke setUint8", "input", input); - } - - /// get the value from uint8. - CONST uint8_t getUint8() - { - return tUint8.self(); - } - - /// to set value for uint32. - ACTION void setUint32(uint32_t input) - { - tUint32.self() = input; - DEBUG("Invoke setUint32", "input", input); - } - - /// get the value from uint32. - CONST uint32_t getUint32() - { - return tUint32.self(); - } - - /// to set value for uint64. - ACTION void setUint64(uint64_t input) - { - tUint64.self() = input; - DEBUG("Invoke setUint64", "input", input); - } - - /// get the value from uint64. - CONST uint64_t getUint64() - { - return tUint64.self(); - } - - - private: - platon::StorageType<"sint24"_n, int8_t> tInt8; - platon::StorageType<"sint32"_n, int32_t> tInt32; - platon::StorageType<"sint44"_n, int64_t> tInt64; - platon::StorageType<"suint"_n, uint8_t> tUint8; - platon::StorageType<"suint32"_n, uint32_t> tUint32; - platon::StorageType<"suint44"_n, uint64_t> tUint64; - -}; - -// (int8)(int64)(uint8t)(uint32t)(uint64t)(u128t)(u256t) -//(setInt8)(getInt8)(setInt32)(getInt32)(setInt64)(getInt64) -// (setUint8)(getUint8)(setUint32)(getUint32)(setUint64)(getUint64) -PLATON_DISPATCH(IntegerDataTypeContract_2,(init) -(setInt8)(getInt8)(setInt32)(getInt32)(setInt64)(getInt64) -(setUint8)(getUint8)(setUint32)(getUint32)(setUint64)(getUint64)) - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract_3.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract_3.cpp deleted file mode 100644 index 91b1f8451b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract_3.cpp +++ /dev/null @@ -1,68 +0,0 @@ -#define TESTNET -// Author: zjsunzone -// Desc: 验证所有基础数据类型的入参、返回值等是否合规 -#include -#include -using namespace platon; - - -CONTRACT IntegerDataTypeContract_3: public platon::Contract -{ - - /// common - public: - ACTION void init() - { - // do something to init. - } - - /// To set value for string. - ACTION void setString(const std::string& input) - { - tString.self() = input; - } - - /// get the value from string. - CONST std::string getString() - { - return tString.self(); - } - - /// To set value for bool. - ACTION void setBool(bool input) - { - tBool.self() = input; - } - - /// get the value from bool. - CONST bool getBool() - { - return tBool.self(); - } - - /// To set value for char. - ACTION void setChar(char input) - { - tByte.self() = input; - } - - /// get the value from char. - CONST char getChar() - { - return tByte.self(); - } - - private: - platon::StorageType<"sbyte"_n, char> tByte; - platon::StorageType<"sbool"_n, bool> tBool; - platon::StorageType<"sstring"_n, std::string> tString; -}; - -// (int8)(int64)(uint8t)(uint32t)(uint64t)(u128t)(u256t) -//(setInt8)(getInt8)(setInt32)(getInt32)(setInt64)(getInt64) -// (setUint8)(getUint8)(setUint32)(getUint32)(setUint64)(getUint64) -PLATON_DISPATCH(IntegerDataTypeContract_3,(init) -(setString)(getString)(setBool)(getBool)(setChar)(getChar)) - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract_4.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract_4.cpp deleted file mode 100644 index 7a82687b25..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/BasicDataType/IntegerDataTypeContract_4.cpp +++ /dev/null @@ -1,77 +0,0 @@ -#define TESTNET -#undef NDEBUG -// Author: zjsunzone -// Desc: 验证所有基础数据类型的入参、返回值等是否合规 -#include -#include -using namespace platon; - - -CONTRACT IntegerDataTypeContract_4: public platon::Contract -{ - - /// common - public: - ACTION void init() - { - // do something to init. - } - - /// init value for address. - ACTION void initAddress() - { - //tAddress.self() = make_address("0xf674172E619af9C09C126a568CF2838d243cE7F7"); -// auto address_info = make_address("lax1w2kjkufl4g2v93xd94a0lewc75ufdr66rnzuw2"); - auto address_info = make_address("atx1w2kjkufl4g2v93xd94a0lewc75ufdr66lx6pvq"); - if(address_info.second) tAddress.self() = address_info.first; - } - - /// set value for address. - ACTION void setAddress(const std::string& input) - { - auto address_info = make_address(input); - if(address_info.second) tAddress.self() = address_info.first; - } - - CONST std::string getAddress() - { - return tAddress.self().toString(); - } - - /// set value for u256. - ACTION void setU256(uint64_t input) - { - tU256.self() = u128(input); - } - - CONST std::string getU256() - { - return std::to_string(tU256.self()); - } - - /// set value for h256. - ACTION void setH256(const std::string& input) - { - tH256.self() = h256(input); - } - - CONST std::string getH256() - { - return tH256.self().toString(); - } - - private: - platon::StorageType<"saddress"_n, Address> tAddress; - platon::StorageType<"su255"_n, u128> tU256; - platon::StorageType<"sh255"_n, h256> tH256; - -}; - -// (int8)(int64)(uint8t)(uint32t)(uint64t)(u128t)(u256t) -//(setInt8)(getInt8)(setInt32)(getInt32)(setInt64)(getInt64) -// (setUint8)(getUint8)(setUint32)(getUint32)(setUint64)(getUint64) -PLATON_DISPATCH(IntegerDataTypeContract_4,(init)(initAddress) -(setAddress)(getAddress)(setU256)(getU256)(setH256)(getH256)) - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/Features/BindFunctionContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/Features/BindFunctionContract.cpp deleted file mode 100644 index 6439f8d27d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/Features/BindFunctionContract.cpp +++ /dev/null @@ -1,82 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * @author qudong - * 测试合约bind函数 - * bind函数可以看做是一个通用的函数适配器,它可以接受一个可调用的对象,并生成一个新的可调用对象。 - * bind函数的形式:auto newCallable = bind(callable,arg_list); - * newCallable本身是一个可调用对象,arg_list是一个逗号分隔的参数列表,对应给定的callable的参数 - * 即,当我们调用newCallable时,newCallable会调用callable,并传给它arg_list中的参数。 - * */ - -class Plus{ - public: - uint32_t plus(uint32_t a,uint32_t b){ - return a + b; - } -}; - -class PlusTwo{ - public: - static int plus(int a,int b) - { - return a + b; - } -}; - -CONTRACT BindFunctionContract : public platon::Contract{ - private: - platon::StorageType<"vector1"_n, std::vector> storage_vector_string; - public: - ACTION void init(){ - } - - static uint8_t plus(uint8_t a,uint8_t b){ - return a + b; - } - - //1、bind绑定普通函数 - CONST uint8_t get_bind_function(){ - //1)、通过bind函数,绑定plus()参数由funcPlus1来指定 - std::function funcPlus1 = std::bind(plus,std::placeholders::_1,std::placeholders::_2); - //2)、通过bind函数,绑定plus()参数进行赋值 - auto funcPlus2 = std::bind(plus,1, 2); - return funcPlus1(1,5); - } - - //2、 bind绑定类的成员函数(指针形式调用成员函数) - CONST uint32_t get_bind_class_function(){ - Plus p; - //1)、 - std::function funcPlus1 = std::bind(&Plus::plus,&p,std::placeholders::_1,std::placeholders::_2); - return funcPlus1(1,5); - } - - //3、 bind绑定类的成员函数(对象形式调用成员函数) - CONST uint32_t get_bind_class_function_one(){ - Plus p; - std::function funcPlus = std::bind(&Plus::plus,p,std::placeholders::_1,std::placeholders::_2); - return funcPlus(1,5); - } - - //4、 bind绑定类静态成员函数 - CONST uint32_t get_bind_static_function(){ - Plus p; - std::function funcPlus = std::bind(&PlusTwo::plus,std::placeholders::_1,std::placeholders::_2); - return funcPlus(1,5); - } - - - -}; - -PLATON_DISPATCH(BindFunctionContract,(init) -(get_bind_function) -(get_bind_class_function) -(get_bind_class_function_one) -(get_bind_static_function) - -) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/Features/FunctionTemplateContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/Features/FunctionTemplateContract.cpp deleted file mode 100644 index 314a11dec4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/Features/FunctionTemplateContract.cpp +++ /dev/null @@ -1,66 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * @author qudong - * 测试合约类模板std :: function - * 类模板std :: function:是一个通用的多态函数包装器; - * std :: function的实例可以存储,复制和调用任何可调用的目标。 - * - * */ -class Plus{ - public: - static uint8_t plus(uint8_t a, uint8_t b){ - return a + b; - } -}; -class PlusAdd{ - public: - uint8_t add(uint8_t a, uint8_t b){ - return a + b; - } -}; -CONTRACT FunctionTemplateContract : public platon::Contract{ - private: - platon::StorageType<"vector1"_n, std::vector> storage_vector_string; - public: - ACTION void init(){ - } - - //1、调用lambda表达式 - CONST uint8_t get_lambda_function(){ - auto add = [](uint8_t a,uint8_t b) -> uint8_t { - return a + b; - }; - std::functionfunction = add; - return function(1,5); - } - - //2、调用普通函数 - static uint8_t addFunc(uint8_t a, uint8_t b){ - return a + b; - } - CONST uint8_t get_normal_function(){ - //定义函数 - std::functionfunction = addFunc; - return function(1,5); - } - - //3、调用类静态成员函数 - CONST uint8_t get_class_static_function(){ - //定义函数 - std::functionfunction = &Plus::plus; - return function(1,5); - } - - - - -}; - -PLATON_DISPATCH(FunctionTemplateContract,(init) -(get_lambda_function)(get_normal_function) -(get_class_static_function) -) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/Features/NullPtrAndForContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/Features/NullPtrAndForContract.cpp deleted file mode 100644 index 66abb60a97..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/Features/NullPtrAndForContract.cpp +++ /dev/null @@ -1,91 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; -using namespace std; - -/** - * @author qudong - * 测试合约Nullptr 和 序列for循环 - * 1、Nullptr关键字 - * 其出现是为了解决NULL表示空指针在C++中具有二义性的问题 - * NULL在C++中就是0;Nullptr表示为空指针 - * 2、序列for循环 - * - * */ - -CONTRACT NullPtrAndForContract : public platon::Contract{ - - private: - platon::StorageType<"stringmap"_n, std::map> storage_string_map; - platon::StorageType<"arr"_n,std::array> storage_array_string; - platon::StorageType<"vector1"_n, std::vector> vector_clothes; - - public: - ACTION void init(){ - } - - /** - * 1、Nullptr关键字 - */ - //1)、nullprt赋值 - CONST bool get_nullptr(){ - uint32_t *p = nullptr;//赋值空指针 - uint32_t *q = NULL;//定义null - bool equal = (p == q); - return equal; - } - //2)、nullprt赋值不同类型,转换成任何指针类型和bool布尔类型 - //但不能转换成整数 - CONST bool get_nullptr_one(){ - uint32_t *p1 = nullptr; //编译正常,赋值空指针 - char *p2 = nullptr; //编译正常,赋值空指针 - int64_t *p3 = nullptr; //编译正常,赋值空指针 - std::string *p4 = nullptr;//编译正常,赋值空指针 - bool p5 = (bool)nullptr; //p5为false - //int8_t p6 = nullptr; //编译异常,nullptr不能转换整型 - return p5; - } - //3)、验证NULL在C++中就是0;Nullptr表示为空指针 - CONST std::string set_nullptr_overload(){ - auto testNullptr = [](void* i) -> std::string{ - return "is nullptr"; - }; - auto testNull = [](int8_t i) -> std::string{ - return "is null"; - }; - return testNullptr(nullptr); - } - /** - * 2、序列for循环 - * 在C++中for循环能够使用相似java的简化的for循环,能够用于遍历数组,容器,string - */ - //1)、遍历map容器 - CONST std::string get_foreach_map(){ - std::string msg; - storage_string_map.self().insert(pair("one","1")); - storage_string_map.self().insert(pair("two","2")); - storage_string_map.self().insert(pair("three","3")); - storage_string_map.self().insert(pair("four","4")); - for (auto itr: storage_string_map.self()){ - msg += itr.first + ","; - } - return msg; - } - //2)、遍历map容器 - CONST uint32_t get_foreach_array(){ - uint32_t sum; - uint32_t array[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; - for (auto itr: array){ - sum += itr; - } - return sum; - } - -}; - -PLATON_DISPATCH(NullPtrAndForContract,(init) -(get_nullptr)(get_nullptr_one) -(set_nullptr_overload)(get_foreach_map) -(get_foreach_array) -) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/MultiIndexContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/MultiIndexContract.cpp deleted file mode 100644 index c186d97c84..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/MultiIndexContract.cpp +++ /dev/null @@ -1,106 +0,0 @@ -#define TESTNET -#include -#include -#include -using namespace std; -using namespace platon; - -/** - * @author liweic - * 多索引(MultiIndex类型) - * */ - -struct Member { - std::string name; - uint8_t age; - uint8_t sex; - uint64_t $seq_; - std::string Name() const { return name; } - uint8_t Age() const { return age; } - Member(){} - Member(const std::string &my_name,uint8_t &my_age,uint8_t &my_sex):name(my_name),age(my_age),sex(my_sex){} - PLATON_SERIALIZE(Member, (name)(age)(sex)) -}; - -CONTRACT MultiIndexContract : public platon::Contract{ - private: - platon::db::MultiIndex<"student"_n, - Member, - platon::db::IndexedBy<"indexname"_n,platon::db::IndexMemberFun>, - platon::db::IndexedBy<"indexage"_n,platon::db::IndexMemberFun> - > member_student; - public: - - ACTION void init(){} - - //1、定义多索引类型,多索引插入数据emplace - ACTION void addInitMultiIndex(const std::string &my_name,uint8_t &my_age,uint8_t &my_sex) - { - member_student.emplace(([&](auto &m) { - m.age = my_age; - m.name = my_name; - m.sex = my_sex; - })); - } - - //2、验证:cbegin()多索引迭代器起始位置 - CONST bool getMultiIndexCbegin(const std::string &my_name) - { - auto iter = member_student.find<"indexname"_n>(my_name); - if(iter == member_student.cbegin()){ - return true; - } - return false; - } - - //3)、验证:cend()多索引迭代器结束位置 - CONST bool getMultiIndexCend(uint8_t &my_sex) - { - auto iter = member_student.find<"indexname"_n>(my_sex); - if(iter == member_student.cend()){ - return true; - } - return false; - } - - //4)、验证:count获取与索引值对应的数据的数量 - CONST uint8_t getMultiIndexCount(const uint8_t &my_age) - { - auto count = member_student.count<"indexage"_n>(my_age); - return count; - } - - //5)、验证:find多索引取值 - CONST std::string getMultiIndexFind(const std::string &my_name) - { - auto iter = member_student.find<"indexname"_n>(my_name); - return iter->name; - } - - //6)、验证:get_index获取非唯一索引的索引对象 - CONST bool getMultiIndexIndex(const uint8_t &my_age) - { - auto index = member_student.get_index<"indexage"_n>(); - for (auto it = index.cbegin(my_age); it != index.cend(my_age); ++it) - { - return true; - } - return false; - } - - //7)、验证:modify基于迭代器修改数据 - ACTION void MultiIndexModify(const std::string &my_name) - { - member_student.modify(member_student.cbegin(), [&](auto &m) { m.name = my_name; }); - } - - //8)、验证:erase()多索引删除数据 - ACTION void MultiIndexErase(const std::string &my_name) - { - auto iter = member_student.find<"indexname"_n>(my_name); - member_student.erase(iter); - } - -}; - -PLATON_DISPATCH(MultiIndexContract,(init)(addInitMultiIndex)(getMultiIndexCbegin)(getMultiIndexCend)(getMultiIndexCount)(getMultiIndexFind)(getMultiIndexIndex)(MultiIndexModify)(MultiIndexErase)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeArrayContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeArrayContract.cpp deleted file mode 100644 index c05302905b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeArrayContract.cpp +++ /dev/null @@ -1,69 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - -/** - * @author qudong - * 合约引用类型数组(array类型):数组可以容纳相同类型的数据表 - * 测试验证功能点: - * 1、定义array类型 - * 1)、基本类型数组 - * 2)、自定义类型数组----异常,待与开发沟通 - * 2、字节数组bytes - * - * */ - - -CONTRACT ReferenceDataTypeArrayContract : public platon::Contract{ - - private: - platon::StorageType<"a"_n,std::array> storage_array_string; - platon::StorageType<"b"_n,std::array> storage_array_uint8; - platon::StorageType<"c"_n,bytes> storage_array_bytes; - //platon::StorageType<"storage_array_peron"_n,std::array> storage_array_peron; - //platon::StorageType<"storage_array_bool"_n,std::array> storage_array_bool; - - public: - ACTION void init(){} - /** - * 1、定义array类型 - * 赋值/取值 - **/ - //1)、验证数组赋值 - ACTION void setInitArray(){ - //赋值方式一 - storage_array_uint8.self() = {1,2,3,4,5}; - //赋值方式二 - storage_array_string.self()[0] = "a"; - storage_array_string.self()[1] = "b"; - storage_array_string.self()[2] = "c"; - } - - //2)、验证数组取值 - CONST std::string getArrayStringIndex(const uint32_t &index){ - return storage_array_string.self()[index]; - } - - //3)、验证数组大小 - CONST uint8_t getArrayUintSize(){ - return storage_array_uint8.self().size(); - } - - /** - * 2、字节数组bytes - **/ - ACTION void setBytesArray(){ - storage_array_bytes.self() = {1,2,3,4,5}; - } - CONST uint8_t getBytesArrayIndex(const uint32_t &index){ - return storage_array_bytes.self()[index]; - } -}; - -PLATON_DISPATCH(ReferenceDataTypeArrayContract,(init)(setInitArray) -(getArrayStringIndex)(getArrayUintSize) -(setBytesArray)(getBytesArrayIndex) -) - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeArrayFuncContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeArrayFuncContract.cpp deleted file mode 100644 index 95735ab0d4..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeArrayFuncContract.cpp +++ /dev/null @@ -1,55 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - -/** - * @author qudong - * 合约引用类型数组(array类型): - * 测试验证功能点: - * 1、验证数组属性 - * 1)、size():返回数组的大小 - * 2)、empty():判断数组是否为空 - * 3)、at()和[]操作运算符实现一样的功能。 - * 4)、front():获取数组的第一个元素 - * 5)、fill():将数组每个元素都固定填一个值 - * */ - -CONTRACT ReferenceDataTypeArrayFuncContract:public platon::Contract{ - - private: - platon::StorageType<"arr"_n,std::array> storage_array_string; - - public: - ACTION void init(){} - //1)、数据源初始化准备 - ACTION void setInitArrayDate(){ - storage_array_string.self()[0] = "a"; - storage_array_string.self()[1] = "b"; - storage_array_string.self()[2] = "c"; - storage_array_string.self()[3] = "d"; - storage_array_string.self()[4] = "e"; - } - - //2)、验证数组empty() - CONST bool getArrayIsEmpty(){ - return storage_array_string.self().empty(); - } - //3)、验证数组at(),获取数组值 - CONST std::string getArrayValueIndex(const uint32_t &index){ - return storage_array_string.self().at(index); - } - //4)、验证数组front() - CONST std::string getArrayFirstValue(){ - return storage_array_string.self().front(); - } - //5)、验证数组fill() - ACTION void setArrayFill(std::string str){ - storage_array_string.self().fill(str); - } -}; - -PLATON_DISPATCH(ReferenceDataTypeArrayFuncContract,(init)(setInitArrayDate)(getArrayIsEmpty)(getArrayValueIndex) - (getArrayFirstValue)(setArrayFill)) - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeComplexContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeComplexContract.cpp deleted file mode 100644 index ee6edc8f4b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeComplexContract.cpp +++ /dev/null @@ -1,172 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; -using namespace std; -/** - * @author qudong - * 合约引用类型结合其他类型构造复杂合约 - * - * */ -//基类 -class People { - public: - void setName(std::string name) { - this->name = name; - }; - std::string getName() { - return this->name; - } - void setAge(uint8_t age){ - this->age = age; - } - uint8_t getAge(){ - return this->age; - } - private: - std::string name; - uint8_t age; - PLATON_SERIALIZE(People, (name)(age)) - -}; -//学生类 -class Student : public People { - private: - uint64_t sId;//学生编号 - std::array arrayCourse;//学生课程 - //std::map courseScore;//课程对应成绩 - bool sex;//性别--(男生:true、女生:false) - public: - void setStudentId(uint64_t sId) { - this->sId = sId; - }; - uint64_t getStudentId() { - return this->sId; - } - void setArrayCourse(std::array arrayCourse){ - this->arrayCourse = arrayCourse; - } - std::array getArrayCourse(){ - return this->arrayCourse; - } - /* void setCourseScore(std::string course,uint64_t score){ - this->courseScore[course] = score; - } - std::map getCourseScore(){ - return this->courseScore; - }*/ - void setSex(bool sex) { - this->sex = sex; - }; - bool getSex() { - return this->sex; - } - PLATON_SERIALIZE_DERIVED(Student, People, (sId)(arrayCourse)(sex)) - -}; - -CONTRACT ReferenceDataTypeComplexContract:public platon::Contract, public Student{ - - private: - platon::StorageType<"a"_n, Student> storage_students; - platon::StorageType<"b"_n, std::vector> storage_vector_students; - - public: - ACTION void init(){ }; - //设置学生基本信息 - ACTION void set_student_id(const uint64_t &sId) { - storage_students.self().setStudentId(sId); - }; - CONST uint64_t get_student_id() { - return storage_students.self().getStudentId(); - } - ACTION void set_sex(const bool &sex) { - storage_students.self().setSex(sex); - }; - CONST bool get_sex() { - return storage_students.self().getSex(); - } - ACTION void set_name(const std::string &name) { - storage_students.self().setName(name); - }; - CONST std::string get_name() { - return storage_students.self().getName(); - } - ACTION void set_age(const uint8_t &age){ - storage_students.self().setAge(age); - } - CONST uint8_t get_age(){ - return storage_students.self().getAge(); - } - //设置课程信息 - ACTION void set_array_course(const std::array &arrayCourse){ - storage_students.self().setArrayCourse(arrayCourse); - } - CONST std::array get_array_course(){ - return storage_students.self().getArrayCourse(); - } - /*ACTION void set_course_score(const std::string &course,uint64_t &score){ - storage_students.self().setCourseScore(course,score); - } - CONST std::map get_course_score(){ - return storage_students.self().getCourseScore(); - }*/ - - - - - //设置学生基本信息 - ACTION void set_student_info(const uint64_t &sId,std::string &name,uint8_t &age,bool &sex){ - set_student_id(sId); - set_name(name); - set_age(age); - set_sex(sex); - }; - - //设置课程成绩 - /* ACTION void set_all_course_score(){ - uint64_t initScore = 60; - std::array courseArr = getArrayCourse(); - for(uint8_t i = 0; i <= courseArr.size(); i++ ){ - std::string courseName = courseArr[i]; - initScore += 10; - setCourseScore(courseName,initScore); - } - };*/ - //修改指定课程成绩 - /* ACTION void set_score_by_coursename(std::string &name){ - std::map courseScore = getCourseScore(); - uint64_t initScore = 60; - if(!courseScore.empty()){ - auto iter = courseScore.find(name); - if(iter != courseScore.end()){//查询到元素 - //根据key删除元素 - getCourseScore().erase(name); - //添加元素 - getCourseScore().insert(pair(name,initScore)); - }else{//未查询到元素 - getCourseScore().insert(pair(name,initScore)); - } - } - }*/ - - - - - //ACTION void set_student_info(const uint64_t &sId,std::string &name,uint8_t &age,bool &sex){ - - -}; - -PLATON_DISPATCH(ReferenceDataTypeComplexContract,(init) -(set_student_info) -//(set_score_by_coursename)(set_all_course_score) -(set_student_id)(get_student_id) -(set_sex)(get_sex) -(set_name)(get_name) -(set_age)(get_age) -(set_array_course)(get_array_course) -//(set_course_score)(get_course_score) -); - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeContract.cpp deleted file mode 100644 index 80295bb273..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeContract.cpp +++ /dev/null @@ -1,106 +0,0 @@ -#define TESTNET -// Author: zjsunzone -// Desc: 针对引用类型的相关测试 -#include -#include -using namespace std; -using namespace platon; - -CONTRACT ReferenceDataTypeContract: public platon::Contract{ - - private: - platon::StorageType<"maddress"_n, std::map> tmaddress; - platon::StorageType<"mu255"_n, std::map> tmu256; - platon::StorageType<"mh255"_n, std::map> tmh256; - platon::StorageType<"entr"_n, uint8_t> num; - - public: - ACTION void init(){ - num.self() = 0; - } - - // 针对address类型的map进行设置 - ACTION void setAddressMap(const std::string& key, const std::string& addr) - { - auto address_info = make_address(addr); - if(address_info.second){ - num.self() += 1; - Address address = address_info.first; - tmaddress.self()[key] = address; - } - - //tmaddress.self()[key] = "compile error"; // expect: compile error. - //tmaddress.self()[key] = 111; // expect: compile error. - } - - // get value from map of address type. - CONST std::string getAddrFromMap(const std::string& key) - { - auto iter = tmaddress.self().find(key); - if (iter != tmaddress.self().end()) { - return iter->second.toString().c_str(); - } else { - return ""; - } - } - - CONST uint8_t getNum() { - return num.self(); - } - - // get the length of map. - CONST uint8_t sizeOfAddrMap() - { - return tmaddress.self().size(); - } - - public: - // 针对u256类型的map进行设置 - ACTION void setU256Map(const std::string& key, uint64_t value) - { - tmu256.self()[key] = u128(value); - //tmu256.self()[key] = "compile error"; // expect: compile error. - //tmu256.self()[key] = 111; // expect: compile error. - } - - // get value from map of address type. - CONST std::string getU256FromMap(const std::string& key) - { - return std::to_string(tmu256.self()[key]); - } - - // get the length of map. - CONST uint8_t sizeOfU256Map() - { - return tmu256.self().size(); - } - - public: - // 针对h256类型的map进行设置 - ACTION void setH256Map(const std::string& key, const std::string& value) - { - tmh256.self()[key] = h256(value); - //tmh256.self()[key] = "compile error"; // expect: compile error. - //tmh256.self()[key] = 111; // expect: compile error. - } - - // get value from map of h256 type. - CONST std::string getH256FromMap(const std::string& key) - { - return tmh256.self()[key].toString(); - } - - // get the length of map. - CONST uint8_t sizeOfH256Map() - { - return tmh256.self().size(); - } - -}; - -PLATON_DISPATCH(ReferenceDataTypeContract, (init) -(setAddressMap)(getAddrFromMap)(getNum)(sizeOfAddrMap) -(setU256Map)(getU256FromMap)(sizeOfU256Map) -(setH256Map)(getH256FromMap)(sizeOfH256Map)) - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeForwardlistContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeForwardlistContract.cpp deleted file mode 100644 index dcd09ee274..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeForwardlistContract.cpp +++ /dev/null @@ -1,39 +0,0 @@ -#define TESTNET -#include -#include -#include -using namespace std; -using namespace platon; - - -/** - * @author qudong - * 合约引用类型(std::forward_list类型):单向链表容器,不支持快速随机访问, - * 不提供 size() 方法的容器。当不需要双向迭代时,具有比 std::list 更高的空间利用率。 - * 测试验证功能点: - * 1、定义单链表容器类型 - * 1)、forward_list类型初始化赋值 - * - * */ - -CONTRACT ReferenceDataTypeForwardlistContract : public platon::Contract{ - private: - platon::StorageType<"forwardlist"_n, std::forward_list> storage_int_forward_list; - public: - ACTION void init(){} - - //1)、forwardlist类型初始化赋值 - ACTION void init_forward_list(){ - storage_int_forward_list.self() = {1,2,3,4,5}; - } - //2)、forwardlist创建,编译异常,暂不支持此类型 - ACTION void create_forward_list(){ - //1、创建空元素容器 - std::forward_list values1; - //2、创建一个包含10个元素的 容器 - std::forward_list values2(10); - //3、创建一个包含10个元素,并初始化值 - std::forward_list values3(10, 5); - } -}; -PLATON_DISPATCH(ReferenceDataTypeForwardlistContract,(init)(init_forward_list)(create_forward_list)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeLinkedlistContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeLinkedlistContract.cpp deleted file mode 100644 index 28356da510..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeLinkedlistContract.cpp +++ /dev/null @@ -1,88 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - -/** - * @author qudong - * 合约引用类型链表:是由一系列连接在一起的结点构成,其中每个结点是一个数据结构。 - * 其中,结点包含一个或多个数据成员,除数据之外,每个结点还包含一个后续指针指向链表的下一个结点, - * 以此类推,构成链表。 - * 【说明】:链表的结点通常是动态分配、使用、删除的,如果需要将新的信息添加到链表中, - * 则只需分配另一个结点并将其插入到系列中。需要删除特定的信息,则只需删除包含信息的结点。 - * - * 测试验证功能点: - * 1、定义链表类型 - * 2、链表取值 - * */ - - struct Edge{ - public: - std::string nodeName;//结点数据 - uint8_t nextNode;//下一个结点编号 - Edge(){} - PLATON_SERIALIZE(Edge,(nodeName)(nextNode)) -}; - - -CONTRACT ReferenceDataTypeLinkedlistContract : public platon::Contract{ - - private: - /* platon::StorageType<"node_head"_n,listNode> storage_node_head; - platon::StorageType<"node_tmp"_n,listNode> storage_node_tmp; - platon::StorageType<"node_vector"_n, std::vector> node_vector; - platon::StorageType<"storage_array_uint8"_n,std::array> storage_array_uint8;*/ - //每一个结点都建立一个单链表来保存与其相邻的边权值和结点的信息 - platon::StorageType<"array1"_n,std::array,10>> array_vector; - platon::StorageType<"intvalue"_n,int8_t> count_int; - platon::StorageType<"vector1"_n, std::vector> vector_string; - public: - ACTION void init(){} - - /** - * 1、定义链表类型 - **/ - //1)、链表新增元素 - ACTION void insertNodeElement(const std::string &nodeData) { - if(array_vector.self().size() == 0){ - count_int.self() = 0; - }else{ - count_int.self() = count_int.self() + 1; - } - Edge tmp; //准备一个Edge结构体 - tmp.nextNode = count_int.self(); //下一结点编号 - tmp.nodeName = nodeData; //该结点数据 - array_vector.self()[0].push_back(tmp); //将改元素添加到结点的单链表中(Vector) - } - - //查询指定元素 - CONST uint8_t getNodeElementIndex(const uint8_t &arrayIndex,const uint8_t &vectorIndex){ - return array_vector.self()[arrayIndex][vectorIndex].nextNode; - } - - //清除数据 - ACTION void clearNodeElement(){ - for (uint8_t i = 0;i < array_vector.self().size();i ++) { - //遍历所有结点 - array_vector.self()[i].clear(); //清空其单链表 - } - } - //查询某个结点的所有邻接信息 - CONST std::vector findNodeElement(const uint8_t &index){ - for (int i = 0;i < array_vector.self()[index].size(); i ++) { - //对所有与结点index相邻的边进行遍历, - uint8_t nextNode = array_vector.self()[index][i].nextNode; //结点编号 - std::string nodeName = array_vector.self()[index][i].nodeName; //结点数据 - DEBUG("ReferenceDataTypeLinkedlistContract", "查询某个结点的所有邻接信息nextNode:", nextNode); - DEBUG("ReferenceDataTypeLinkedlistContract", "查询某个结点的所有邻接信息nodeName:", nodeName); - vector_string.self().push_back(nodeName); - } - return vector_string.self(); - } - -}; - -PLATON_DISPATCH(ReferenceDataTypeLinkedlistContract,(init) -(insertNodeElement)(getNodeElementIndex)(clearNodeElement) -(findNodeElement)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeMapFuncContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeMapFuncContract.cpp deleted file mode 100644 index a15a077491..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeMapFuncContract.cpp +++ /dev/null @@ -1,70 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - -/** - * @author qudong - * 合约引用类型(map类型) - * 测试验证功能点: - * 1、map属性方法 - * 增加、删除、容器集合大小 - * */ - -CONTRACT ReferenceDataTypeMapFuncContract : public platon::Contract{ - - private: - platon::StorageType<"map1"_n,std::map> storage_map_uint; - platon::StorageType<"map2"_n,std::map> storage_map_string; - - - public: - ACTION void init(){} - /** - * 1、map属性方法 - * 增加、删除、容器集合大小 - **/ - //1)、验证map容器新增 - ACTION void addMapByUint(const uint8_t n){ - for(uint8_t i = 0; i <= n; i++){ - storage_map_uint.self()[i] = std::to_string(i); - } - } - //2)、验证map容器大小 - CONST uint8_t getMapBySize(){ - return storage_map_uint.self().size(); - } - //3)、验证map容器删除 - ACTION void deleteMapByIndex(const uint8_t &key){ - storage_map_uint.self().erase(key); - } - //4)、验证map容器插入方法insert() - ACTION void insertMapUint(const uint8_t &key,const std::string &value){ - storage_map_uint.self().insert(pair(key,value)); - } - //5)、验证map容器清空集合clear() - ACTION void clearMapUint(){ - storage_map_uint.self().clear(); - } - //6)、验证map容器判断空方法empty() - CONST bool getMapIsEmpty(){ - return storage_map_uint.self().empty(); - } - - //7)、验证map容器迭代器 - /* CONST std::map getMapUintIterator(){ - std::map ::iterator iter = storage_map_uint.self().begin(); - while(iter != storage_map_uint.self().end()) { - a_storage_map_uint.self()[iter->first] = iter->second; - iter++; - } - return a_storage_map_uint.self(); - }*/ - - - -}; - -PLATON_DISPATCH(ReferenceDataTypeMapFuncContract, (init)(addMapByUint)(getMapBySize)(deleteMapByIndex) - (insertMapUint)(clearMapUint)(getMapIsEmpty)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeMapTestContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeMapTestContract.cpp deleted file mode 100644 index 61eea4a4c1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeMapTestContract.cpp +++ /dev/null @@ -1,71 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - -class Person{ - public: - std::string name; - uint64_t age; - Person(){} - Person(const std::string &my_name,uint64_t &my_age):name(my_name),age(my_age){} - PLATON_SERIALIZE(Person,(name)(age)) -}; -CONTRACT ReferenceDataTypeMapTestContract : public platon::Contract{ - - private: - platon::StorageType<"stringmap"_n, std::map> storage_string_map; - platon::StorageType<"mapuint"_n,std::map> storage_map_uint; - platon::StorageType<"amapuint"_n,std::map> a_storage_map_uint; - platon::StorageType<"mapbool"_n,std::map> storage_map_bool; - platon::StorageType<"mapstring"_n,std::map> storage_map_string; - platon::StorageType<"amapstring"_n, std::map> a_storage_map_string; - platon::StorageType<"mapperson"_n,std::map> storage_map_person; - platon::StorageType<"mapaddress"_n,std::map> storage_map_address; - - public: - ACTION void init(){} - - /** - * 1、定义map类型 - * 1)、map中的key与value可以是任意类型 - * 2)、map类型赋值&取值 - **/ - - //1)、验证map中的key与value可以是任意类型 - ACTION void setMapKeyType(){ - storage_map_uint.self()[0] = "test1";//正常 - storage_map_bool.self()[true] = "test2";//正常 - storage_map_string.self()["1"] = "test3";//正常 - //key为Address类型 - Address address = platon_caller();//获取交易发起者地址 - storage_map_address.self()[address] = "test4";//正常 - } - - //2)、string类型map容器赋值&取值 - ACTION void addMapString(const std::string &one_key,const std::string &one_value){ - storage_string_map.self()[one_key]= one_value; - } - CONST uint64_t getMapStringSize(){ - return storage_string_map.self().size(); - } - CONST std::string getMapValueByString(const std::string &key){ - return storage_string_map.self()[key]; - } - - //3)、person类型map容器赋值&取值 - ACTION void addMapByPerson(const uint8_t &key,const Person &person){ - storage_map_person.self()[key] = person; - } - CONST uint64_t getMapByPersonSize(){ - return storage_map_person.self().size(); - } - CONST std::string getMapByPerson(uint8_t key){ - return storage_map_person.self()[key].name; - } - -}; - -PLATON_DISPATCH(ReferenceDataTypeMapTestContract, (init)(setMapKeyType)(addMapString)(getMapStringSize)(getMapValueByString) - (addMapByPerson)(getMapByPersonSize)(getMapByPerson)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeSetContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeSetContract.cpp deleted file mode 100644 index 443b372ab1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeSetContract.cpp +++ /dev/null @@ -1,79 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - -class Person{ - public: - std::string name; - uint64_t age; - Person(){} - Person(const std::string &my_name,uint64_t &my_age):name(my_name),age(my_age){} - PLATON_SERIALIZE(Person,(name)(age)) -}; -CONTRACT ReferenceDataTypeSetContract : public platon::Contract{ - - private: - platon::StorageType<"intmap"_n, std::set> storage_int_set; - - public: - ACTION void init(){} - - /** - * set类型:无顺序不可重复容器 - * 1)、set类型初始化赋值 - * 2)、set插入元素 - * 3)、set类型存储值唯一性 - * 4)、访问元素 - * 5)、查找元素 - * 6)、删除元素 - * 7)、判断元素 - * 8)、清空元素 - * 9)、set容器元素数量 - **/ - - // 1)、set类型初始化赋值 - ACTION void init_set(){ - storage_int_set.self() = {1,2,3,4,5,6}; - } - //2)、set插入元素 - ACTION void insert_set(const uint8_t &value){ - storage_int_set.self().insert(value); - } - //4)、访问元素 - ACTION void iterator_set(){ - for (auto iter = storage_int_set.self().begin(); iter != storage_int_set.self().end(); iter++){ - DEBUG("ReferenceDataTypeSetContract", "setIterator", *iter); - } - } - //5)、查找元素 - CONST uint8_t find_set(){ - uint8_t v = 0; - auto iter = storage_int_set.self().find(3); - if(iter != storage_int_set.self().end()){ - v = *iter; - } - return v; - } - //6)、删除元素 - ACTION void erase_set(const uint8_t &value){ - storage_int_set.self().erase(value); - } - //7)、判断元素 - CONST bool get_set_empty(){ - return storage_int_set.self().empty(); - } - //8)、清空元素 - ACTION void clear_set(){ - storage_int_set.self().clear(); - } - //9)、set容器元素数量 - CONST uint64_t get_set_size(){ - return storage_int_set.self().size(); - } - -}; - -PLATON_DISPATCH(ReferenceDataTypeSetContract,(init)(init_set)(insert_set)(get_set_size) -(iterator_set)(find_set)(erase_set)(get_set_empty)(clear_set)(get_set_size)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeStructContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeStructContract.cpp deleted file mode 100644 index 3a695f4df3..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeStructContract.cpp +++ /dev/null @@ -1,56 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - -/** - * @author qudong - * 合约引用类型结构体(struct类型):允许存储不同类型的数据项 - - * 测试验证功能点: - * 1、定义struct类型包含基本类型(赋值、取值) - * */ - -struct person{ - public: - std::string name; - uint64_t age; - person(){} - person(const std::string &my_name,uint64_t &my_age):name(my_name),age(my_age){} - PLATON_SERIALIZE(person,(name)(age)) -}; - -CONTRACT ReferenceDataTypeStructContract : public platon::Contract{ - - private: - platon::StorageType<"person"_n,person> storage_struct_person; - platon::StorageType<"name"_n,std::string> storage_string_name; - platon::StorageType<"age"_n,uint64_t> storage_uint64_age; - // platon::StorageType<"storage_struct_group"_n,group> storage_struct_group; - - public: - ACTION void init(){} - /** - * 1、定义struct类型包含基本类型(赋值、取值) - * 赋值/取值 - **/ - //1)、赋值 - ACTION void setStructPersonA(const std::string &my_name,uint64_t &my_age){ - storage_struct_person.self() = person(my_name,my_age); - } - ACTION void setStructPersonB(){ - storage_string_name.self() = "张三"; - storage_uint64_age.self() = 20; - storage_struct_person.self() = person(storage_string_name.self(),storage_uint64_age.self()); - } - //2)、取值 - CONST std::string getPersonName(){ - return storage_struct_person.self().name; - } - -}; - -PLATON_DISPATCH(ReferenceDataTypeStructContract, (init)(setStructPersonA)(setStructPersonB) - (getPersonName)) - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeStructMultipleContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeStructMultipleContract.cpp deleted file mode 100644 index aa7bf1c7be..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeStructMultipleContract.cpp +++ /dev/null @@ -1,56 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - -/** - * @author qudong - * 合约引用类型结构体(struct类型):允许存储不同类型的数据项 - - * 测试验证功能点: - * 2、定义struct类型包含引用类型及基本类型 - * */ - -struct group{ - public: - uint64_t groupID; - std::string groupName; - std::array subGroupNameArray; - std::map subGroupScoreMap; - group(){} - PLATON_SERIALIZE(group,(groupID)(groupName)(subGroupNameArray)(subGroupScoreMap)) -}; - -CONTRACT ReferenceDataTypeStructMultipleContract : public platon::Contract{ - - private: - platon::StorageType<"group"_n,group> storage_struct_group; - - public: - ACTION void init(){} - - /** - * 2、定义struct类型包含引用类型及基本类型 - */ - //1)、赋值基本类型 - ACTION void setGroupValue(const std::string &myGroupName,const uint64_t &myGroupId){ - storage_struct_group.self().groupID = myGroupId; - storage_struct_group.self().groupName = myGroupName; - } - CONST std::string getGroupName(){ - return storage_struct_group.self().groupName; - } - //2)、赋值引用类型 - ACTION void setGroupArrayValue(const std::string &oneValue,const std::string &twoValue){ - storage_struct_group.self().subGroupNameArray[0] = oneValue; - storage_struct_group.self().subGroupNameArray[1] = twoValue; - } - CONST std::string getGroupArrayIndexValue(const uint32_t &index){ - return storage_struct_group.self().subGroupNameArray[index]; - } -}; - -PLATON_DISPATCH(ReferenceDataTypeStructMultipleContract, (init)(setGroupValue)(getGroupName) - (setGroupArrayValue)(getGroupArrayIndexValue)) - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeTupleContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeTupleContract.cpp deleted file mode 100644 index 2a9b373299..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeTupleContract.cpp +++ /dev/null @@ -1,81 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - -/** - * @author qudong - * 合约引用类型tuple:可以将一些不同类型的数据和成单一对象,可以用于函数返回多个值。 - * tuple所有成员是public,一个tuple可以有任意数量的成员; - * 一个确定的tuple类型的成员数目是固定的,不能进行添加和删除等操作。 - * - * 测试验证功能点: - * 1、定义tuple类型、初始化、取值 - * 2、定义包含引用类型 - * */ - -struct person{ - public: - std::string name; - uint64_t age; - person(){} - person(const std::string &my_name,uint64_t &my_age):name(my_name),age(my_age){} - PLATON_SERIALIZE(person,(name)(age)) -}; - -CONTRACT ReferenceDataTypeTupleContract : public platon::Contract{ - - private: - platon::StorageType<"tuple1"_n,std::tuple>> storage_tuple_one; - platon::StorageType<"tuple2"_n,std::tuple> storage_tuple_two; - platon::StorageType<"tuple3"_n,std::tuple>> storage_tuple_three; - platon::StorageType<"struct4"_n,person> storage_struct_person; - public: - ACTION void init(){} - /** - * 1、定义类型 - * 赋值/取值 - **/ - //1)、元组初始化赋值方式一 - ACTION void setInitTupleModeOne(){ - storage_tuple_one.self() = {"Lucy",2,{"1","2","3"}}; - } - //2)、tuple根据索引取值 - CONST std::string getTupleValueIndex1(){ - return get<0>(storage_tuple_one.self()); - } - CONST uint8_t getTupleValueIndex2(){ - return get<1>(storage_tuple_one.self()); - } - - //3)、元组初始化赋值方式二(使用make_tuple函数) - ACTION void setInitTupleModeTwo(const std::string &a,const uint8_t &b){ - storage_tuple_two.self() = make_tuple(a,b); - } - CONST std::string getTupleValueIndex3(){ - return get<0>(storage_tuple_two.self()); - } - - //4)、定义包含引用类型 - ACTION void setInitTupleModeThree(const std::string &name,const uint64_t &age){ - std::string str = "Lili"; - std::array array; - array[0] = "a"; - array[1] = "b"; - array[2] = "c"; - storage_struct_person.self().name = name; - storage_struct_person.self().age = age; - storage_tuple_three.self() = make_tuple(str,storage_struct_person.self(),array); - } - CONST person getTupleValueIndex4(){ - return get<1>(storage_tuple_three.self()); - } - - - - -}; - -PLATON_DISPATCH(ReferenceDataTypeTupleContract,(init)(setInitTupleModeOne)(getTupleValueIndex1) -(getTupleValueIndex2)(setInitTupleModeTwo)(getTupleValueIndex3)(setInitTupleModeThree)(getTupleValueIndex4)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeUnorederdMapContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeUnorederdMapContract.cpp deleted file mode 100644 index 19409680aa..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeUnorederdMapContract.cpp +++ /dev/null @@ -1,29 +0,0 @@ -#define TESTNET -#include -#include -#include -using namespace std; -using namespace platon; - - - -/** - * @author qudong - * 合约引用类型(std::unorederd_map类型):无序map容器, - * 关联性:是一个关联容器,其中的元素根据键来引用,而不是根据索引引用 - * 无序性:元素不会根据其键值或映射值按任何特定顺序排序,而是根据哈希值组织 - * 唯一性:元素的键是唯一的 - * - * */ - -CONTRACT ReferenceDataTypeUnorderMapContract : public platon::Contract{ - private: - platon::StorageType<"unordermap"_n, std::unordered_map> storage_string_map; - public: - ACTION void init(){} - // 1)、unorderMap类型初始化赋值,编译异常,暂不支持此类型 - ACTION void init_unorder_map(){ - storage_string_map.self() = {{"apple","red"},{"lemon","yellow"}}; - } -}; -PLATON_DISPATCH(ReferenceDataTypeUnorderMapContract,(init)(init_unorder_map)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeUnorederdSetContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeUnorederdSetContract.cpp deleted file mode 100644 index fcb891af43..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeUnorederdSetContract.cpp +++ /dev/null @@ -1,39 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - - - -/** - * @author qudong - * 合约引用类型(std::unordered_set类型):基于哈希表无序不重复set容器, - * */ - -CONTRACT ReferenceDataTypeUnorderSetContract : public platon::Contract{ - - private: - platon::StorageType<"set"_n, std::unordered_set> storage_string_set; - - public: - ACTION void init(){} - - // 1)、unorederd_set类型类型初始化赋值,编译异常,暂不支持此类型 - ACTION void init_unorder_set(){ - storage_string_set.self() = {"one","two","three"}; - } - //2)、unorederd_set创建,编译异常,暂不支持此类型 - ACTION void create_unorder_set(){ - //1、创建空元素容器 - std::unordered_set values1; - //2、创建一个容器并赋值 - std::unordered_set values2{"aaa","bbb","ccc"}; - } - - -}; - -PLATON_DISPATCH(ReferenceDataTypeUnorderSetContract,(init) -(init_unorder_set)(create_unorder_set) -) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeVectorContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeVectorContract.cpp deleted file mode 100644 index 1b589f8fdd..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeVectorContract.cpp +++ /dev/null @@ -1,48 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - -/** - * @author qudong - * 测试合约引用类型(verctor类型) - * vector是一个能够存放任意类型的动态数组,能够增加和压缩数据 - * - * */ - -class clothes { - public: - std::string color; - clothes(){} - clothes(const std::string &my_color):color(my_color){} - PLATON_SERIALIZE(clothes, (color)) -}; - -CONTRACT ReferenceDataTypeVectorContract : public platon::Contract{ - public: - ACTION void init(){} - - //新增方式一 - ACTION void setClothesColorOne(const clothes &myClothes){ - vector_clothes.self().push_back(myClothes); - } - //新增方式二 - ACTION void setClothesColorTwo(const std::string &my_color){ - vector_clothes.self().push_back(clothes(my_color)); - } - //取值 - CONST std::string getClothesColorIndex(){ - return vector_clothes.self()[0].color; - } - //vector大小 - CONST uint64_t getClothesColorLength(){ - return vector_clothes.self().size(); - } - - private: - platon::StorageType<"vector1"_n, std::vector> vector_clothes; -}; - -PLATON_DISPATCH(ReferenceDataTypeVectorContract, (init)(setClothesColorOne)(setClothesColorTwo)(getClothesColorIndex) - (getClothesColorLength)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeVectorFuncContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeVectorFuncContract.cpp deleted file mode 100644 index f90513c51b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/ReferenceData/ReferenceDataTypeVectorFuncContract.cpp +++ /dev/null @@ -1,83 +0,0 @@ -#define TESTNET -#include -#include -using namespace std; -using namespace platon; - -/** - * @author qudong - * 测试合约引用类型(verctor类型)属性/函数 - * 1)、增加函数 - * 2)、遍历函数 - * 3)、删除函数 - * 4)、判断函数 - * 5)、其他函数 - * vector是一个能够存放任意类型的动态数组,能够增加和压缩数据 - * - * */ - -CONTRACT ReferenceDataTypeVectorFuncContract : public platon::Contract{ - - private: - platon::StorageType<"vector1"_n, std::vector> storage_vector_string; - public: - ACTION void init(){} - - - //1)、增加函数:将值添加到向量begin()起始位置 - //A、指定位置插入数据,在a的第1个元素(从第0个算起)的位置插入数值5,如a为1,2,3,4,插入元素后为5,1,2,3,4 - ACTION void insertVectorValue(const std::string &my_value){ - storage_vector_string.self().insert(storage_vector_string.self().begin(),my_value); - } - //B、指定位置插入多个相同数据,在a的第1个元素(从第0个算起)的位置插入3个数,其值都为5 - ACTION void insertVectorMangValue(const uint64_t &num,const std::string &my_value){ - storage_vector_string.self().insert(storage_vector_string.self().begin(),num,my_value); - } - //取值 - /* CONST std::string getClothesColorIndex(){ - return vector_clothes.self()[0].color; - }*/ - //vector大小 - CONST uint64_t getVectorLength(){ - return storage_vector_string.self().size(); - } - - - //2)、遍历函数 - //A、at()函数,返回index位置元素的引用 - CONST std::string findVectorAt(const uint64_t &index){ - return storage_vector_string.self().at(index); - } - //B、front():返回首元素的引用 - CONST std::string findVectorFront(){ - return storage_vector_string.self().front(); - } - //C、 back():返回尾元素的引用 - CONST std::string findVectorBack(){ - return storage_vector_string.self().back(); - } - - //3)、删除函数 - //A、pop_back()删除最后一个元素 - ACTION void deleteVectorPopBack(){ - storage_vector_string.self().pop_back(); - } - //B、erase()删除指定元素,将起始位置的元素删除 - ACTION void deleteVectorErase(){ - storage_vector_string.self().erase(storage_vector_string.self().begin()); - } - //C、clear()清空元素 - ACTION void deleteVectorClear(){ - storage_vector_string.self().clear(); - } - - //4)、 empty()判断函数 - CONST bool findVectorEmpty(){ - return storage_vector_string.self().empty(); - } - -}; - -PLATON_DISPATCH(ReferenceDataTypeVectorFuncContract, (init)(insertVectorValue)(insertVectorMangValue)(getVectorLength) - (findVectorAt)(findVectorFront)(findVectorBack)(deleteVectorPopBack)(deleteVectorErase)(deleteVectorClear) - (findVectorEmpty)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/TypeConversion/TypeConversionContract.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/TypeConversion/TypeConversionContract.cpp deleted file mode 100644 index 5f83b7fb70..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/date_type/TypeConversion/TypeConversionContract.cpp +++ /dev/null @@ -1,126 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * @author qudong - * 测试合约数据类型转换 - * 主要分为两种类型:隐式类型转换、显示类型转换 - * 1、隐式类型转换:编译器默认进行的类型转换行为 - * 2、显示类型转换(强制类型转换) - * 强制类型转换操作符:static_cast、const_cast、dynamic_cast - * */ - -class People { - public: - virtual void setAge(uint8_t age){ - this->age = age; - } - uint8_t getAge(){ - return this->age; - } - private: - uint8_t age; - PLATON_SERIALIZE(People,(age)) -}; -class Student : public People { - private: - uint64_t sAge;//学生年龄 - public: - void setSAge(uint64_t sAge) { - this->sAge = sAge; - }; - uint64_t getSAge() { - return this->sAge; - } - PLATON_SERIALIZE_DERIVED(Student,People,(sAge)) -}; - -CONTRACT TypeConversionContract : public platon::Contract{ - - private: - platon::StorageType<"vector1"_n, std::vector> storage_vector_string; - - public: - ACTION void init(){ - } - - //1、隐式类型转换 - //混合类型的算术运算表达式中(由低精度向高精度的转换) - CONST auto get_add(uint8_t a,uint64_t b){ - //a会被自动转换成double - auto c = a + b; - return c; - } - - //不同类型的赋值操作时(由低精度向高精度的转换) - CONST uint64_t get_different_type_(bool a){ - //bol类型被转换成uint64 - uint64_t b = a; - return b; - } - - //函数参数传值时类型转换(由低精度向高精度的转换) - CONST auto get_pram_type(){ - auto test = [](uint32_t a){ - return a; - }; - //调用函数整数值被转换成double - return test(1); - } - - //函数返回值时(由低精度向高精度的转换) - CONST uint64_t get_pram_return(const uint8_t a,uint8_t b){ - //运算结果会被隐式转换为double类型返回 - return (a + b); - } - - //2、显示类型转换(强制类型转换) - //显式类型转换(由高精度向低精度的转换) - CONST uint8_t get_convert(){ - uint32_t a = 1002; - uint8_t b = (uint8_t)a; - return b; - } - - // static_cast:非多态类型转换(静态转换)主要用于内置数据类型之间的相互转换 - //不能在没有派生关系的两个类类型之间转换 - CONST uint8_t get_convert_static_cast(){ - uint32_t aValue = 500; - uint8_t bValue = static_cast(aValue); - return bValue; - } - - //const_cast:删除变量的const属性,方便再次赋值,只能转换指针或者引用 - CONST uint8_t get_convert_const_cast(){ - const uint8_t i = 10; - uint8_t *p = const_cast(&i); - return i; - } - - //dynamic_cast:执行派生类指针或引用与基类指针或引用之间的转换 - //其转换是运行时处理的,不能用于内置基本类型的强制转换 - //编译异常,编译器不支持 - /*CONST bool get_convert_dynamic_cast(){ - People* p = new People(); - Student* s = nullptr; - s = dynamic_cast(p);//向下转型 - if(nullptr == s){ - return false; - }else{ - return true; - } - return false; - }*/ - - - -}; - -PLATON_DISPATCH(TypeConversionContract,(init) -(get_add)(get_different_type_)(get_pram_type) -(get_pram_return)(get_convert) -(get_convert_static_cast)(get_convert_const_cast) -//(get_convert_dynamic_cast) -) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/BubbleSort.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/BubbleSort.cpp deleted file mode 100644 index c10e3f8580..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/BubbleSort.cpp +++ /dev/null @@ -1,44 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * 执行效率-冒泡排序 - * @author liweic - **/ - -CONTRACT BubbleSort : public platon::Contract { - private: - platon::StorageType<"vecbubble"_n, std::vector> vector_bubble; - public: - ACTION void init(){} - - std::vector& bubbleSort(std::vector& a, int n) - { - for (int i = 0; i < n - 1; i++) - { - for (int j = 0; ja[j + 1]) - { - int temp; - temp = a[j]; - a[j] = a[j + 1]; - a[j + 1] = temp; - } - } - } - return a; - } - - ACTION void sort(std::vector& arr, int n) { - vector_bubble.self() = std::move(bubbleSort(arr, n)); - } - - CONST std::vector get_array() { - return vector_bubble.self(); - } - -}; -PLATON_DISPATCH(BubbleSort,(init)(sort)(get_array)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/HeapSort.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/HeapSort.cpp deleted file mode 100644 index ff17c0d7a8..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/HeapSort.cpp +++ /dev/null @@ -1,64 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * 执行效率-堆排序 - * @author liweic - **/ - -CONTRACT HeapSort : public platon::Contract { - private: - platon::StorageType<"vecheap"_n, std::vector> vector_heap; - public: - ACTION void init(){} - - void MaxSort(std::vector& a, int root, int n) - { - int parent = root; - int child = parent*2+1; // 左孩子 - while( child < n ) - { - if( (child+1) < n && a[child+1] > a[child] ) - { - ++child; - } - if( a[child] > a[parent] ) - { - std::swap(a[child],a[parent]); - parent = child; - child = parent*2+1; - } - else - break; - } - } - - std::vector& heapSort(std::vector& a, int n) - { - assert(a); - for( int i = (n-2)/2; i >=0 ; i-- ) - { - MaxSort(a,i,n); - } - - int end = n-1; - while( end > 0 ){ - std::swap(a[0],a[end]); - MaxSort(a,0,end); // end其实就是不算后面的一个元素,原因是最后一个节点已经是最大的 - end--; - } - return a; - } - - ACTION void sort(std::vector& arr, int n) { - vector_heap.self() = std::move(heapSort(arr, n)); - } - - CONST std::vector get_array() { - return vector_heap.self(); - } - -}; -PLATON_DISPATCH(HeapSort,(init)(sort)(get_array)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/InsertSort.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/InsertSort.cpp deleted file mode 100644 index ad54aabaf0..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/InsertSort.cpp +++ /dev/null @@ -1,43 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * 执行效率-插入排序 - * @author qcxiao - **/ - -CONTRACT InsertSort : public platon::Contract { - - private: - platon::StorageType<"vector1"_n, std::vector> vector_clothes; - public: - ACTION void init(){} - - std::vector insertSort(std::vector& arr, long n) - { - long i,j,key; - for(i = 1; i < n; i++) - { - key = arr[i]; - j = i - 1; - while(j >= 0 && arr[j] > key) - { - arr[j+1] = arr[j]; - j--; - } - arr[j+1] = key; - } - return arr; - } - - ACTION void sort(std::vector& arr, int64_t length) { - vector_clothes.self() = insertSort(arr, length); - } - - CONST std::vector get_array() { - return vector_clothes.self(); - } -}; -PLATON_DISPATCH(InsertSort,(init)(sort)(get_array)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/LoopCall.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/LoopCall.cpp deleted file mode 100644 index 3847d5dd6e..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/LoopCall.cpp +++ /dev/null @@ -1,26 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * 执行效率-循环调用 - * @author qcxiao - **/ - -CONTRACT LoopCall : public platon::Contract { - - private: - platon::StorageType<"test"_n, uint64_t> sum; - public: - ACTION void init(){} - ACTION void loopCallTest(uint64_t n) { - for (int i = 0; i < n; i++) { - sum += i; - } - } - CONST uint64_t get_sum() { - return sum.self(); - } -}; -PLATON_DISPATCH(LoopCall,(init)(loopCallTest)(get_sum)) diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/MergeSort.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/MergeSort.cpp deleted file mode 100644 index 525a415357..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/MergeSort.cpp +++ /dev/null @@ -1,68 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * 执行效率-归并排序 - * @author liweic - **/ - -CONTRACT MergeSort : public platon::Contract { - private: - platon::StorageType<"vecmerge"_n, std::vector> vector_merge; - public: - ACTION void init(){} - - void merge(std::vector& a, int start, int mid, int end) - { - int *tmp = new int[end - start + 1]; // tmp是汇总2个有序区的临时区域 - int i = start; // 第1个有序区的索引 - int j = mid + 1; // 第2个有序区的索引 - int k = 0; // 临时区域的索引 - - while (i <= mid && j <= end) - { - if (a[i] <= a[j]) - tmp[k++] = a[i++]; - else - tmp[k++] = a[j++]; - } - while (i <= mid) - tmp[k++] = a[i++]; - - while (j <= end) - tmp[k++] = a[j++]; - - // 将排序后的元素,全部都整合到数组a中。 - for (i = 0; i < k; i++) - a[start + i] = tmp[i]; - - delete[] tmp; - } - - std::vector& mergeSort(std::vector& a, int start, int end) - { - if (start >= end) - return a; - - int mid = (end + start) / 2; - mergeSort(a, start, mid); // 递归排序a[start...mid] - mergeSort(a, mid + 1, end); // 递归排序a[mid+1...end] - - // a[start...mid] 和 a[mid...end]是两个有序空间, - // 将它们排序成一个有序空间a[start...end] - merge(a, start, mid, end); - return a; - } - - ACTION void sort(std::vector& arr, int start, int end) { - vector_merge.self() = std::move(mergeSort(arr, start, end)); - } - - CONST std::vector get_array() { - return vector_merge.self(); - } - -}; -PLATON_DISPATCH(MergeSort,(init)(sort)(get_array)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/QuickSort.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/QuickSort.cpp deleted file mode 100644 index f0b07ff80d..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/QuickSort.cpp +++ /dev/null @@ -1,56 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; -/** - * 执行效率-快速排序 - * @author qcxiao - **/ -CONTRACT QuickSort : public platon::Contract { - private: - platon::StorageType<"vector1"_n, std::vector> vector_clothes; - public: - ACTION void init(){} - std::vector& quickSort(std::vector& array, long start, long last) - { - long i = start; - long j = last; - long temp = array[i]; - if (i < j) - { - while (i < j) - { - while (i < j && array[j]>=temp ) - j--; - if (i < j) - { - array[i] = array[j]; - i++; - } - - while (i < j && temp > array[i]) - i++; - if (i < j) - { - array[j] = array[i]; - j--; - } - - } - array[i] = temp; - quickSort(array, start, i - 1); - quickSort(array, i + 1, last); - } - return array; - } - - ACTION void sort(std::vector& arr, int64_t start, int64_t last) { - vector_clothes.self() = std::move(quickSort(arr, start, last)); - } - - CONST std::vector get_array() { - return vector_clothes.self(); - } - -}; -PLATON_DISPATCH(QuickSort,(init)(sort)(get_array)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/RadixSort.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/RadixSort.cpp deleted file mode 100644 index 7b1064fe17..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/RadixSort.cpp +++ /dev/null @@ -1,67 +0,0 @@ -#define TESTNET -#include -#include -#include -using namespace platon; - - -/** - * 执行效率-基数排序 支持正数排序 - * @author liweic - **/ - -CONTRACT RadixSort : public platon::Contract { - private: - platon::StorageType<"vecradix"_n, std::vector> vector_radix; - public: - ACTION void init(){} - - int maxdigiit(std::vector& arr,int n) - { - int d = 1; - int p = 10; - for (int i = 0; i < n; ++i) - { - while (arr[i] >= p) - { - p *= 10; - ++d; - } - } - return d; - } - - - std::vector& radixSort(std::vector& arr, int n) - { - int digits = maxdigiit(arr,n); - std::list lists[10]; - int d,j,k,factor; - for ( d = 1,factor=1; d <= digits;factor*=10, d++) - { - for ( j = 0; j < n; j++) - { - lists[(arr[j] / factor) % 10].push_back(arr[j]); - } - for (j = k = 0; j < 10; j++) - { - while (!lists[j].empty()) - { - arr[k++] = lists[j].front(); - lists[j].pop_front(); - } - } - } - return arr; - } - - ACTION void sort(std::vector& arr, int n) { - vector_radix.self() = std::move(radixSort(arr, n)); - } - - CONST std::vector get_array() { - return vector_radix.self(); - } - -}; -PLATON_DISPATCH(RadixSort,(init)(sort)(get_array)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/RecursionCall.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/RecursionCall.cpp deleted file mode 100644 index b9bfbf7658..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/RecursionCall.cpp +++ /dev/null @@ -1,28 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * 执行效率-递归调用 - * @author qcxiao - **/ -CONTRACT RecursionCall : public platon::Contract { - - private: - platon::StorageType<"test"_n, uint64_t> sum = 0; - public: - ACTION void init(){} - - ACTION void call(uint64_t n) { - if (sum < n) { - ++sum; - call(n); - } - } - - CONST uint64_t get_sum() { - return sum.self(); - } -}; -PLATON_DISPATCH(RecursionCall,(init)(call)(get_sum)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/ShellSort.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/ShellSort.cpp deleted file mode 100644 index 0fb819699b..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/exec_efficiency/ShellSort.cpp +++ /dev/null @@ -1,54 +0,0 @@ -#define TESTNET -#include -#include -using namespace platon; - -/** - * 执行效率-希尔排序 - * @author liweic - **/ - -CONTRACT ShellSort : public platon::Contract { - private: - platon::StorageType<"vecshell"_n, std::vector> vector_shell; - public: - ACTION void init(){} - std::vector& shellSort(std::vector& a, int n) - { - int i, j, gap; - // gap为步长,每次减为原来的一半。 - for (gap = n / 2; gap > 0; gap /= 2) - { - // 共gap个组,对每一组都执行直接插入排序 - for (i = 0; i < gap; i++) - { - for (j = i + gap; j < n; j += gap) - { - // 如果a[j] < a[j-gap],则寻找a[j]位置,并将后面数据的位置都后移。 - if (a[j] < a[j - gap]) - { - int tmp = a[j]; - int k = j - gap; - while (k >= 0 && a[k] > tmp) - { - a[k + gap] = a[k]; - k -= gap; - } - a[k + gap] = tmp; - } - } - } - } - return a; - } - - ACTION void sort(std::vector& arr, int n) { - vector_shell.self() = std::move(shellSort(arr, n)); - } - - CONST std::vector get_array() { - return vector_shell.self(); - } - -}; -PLATON_DISPATCH(ShellSort,(init)(sort)(get_array)) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/gas/Gas.h b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/gas/Gas.h deleted file mode 100644 index f783aa6851..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/gas/Gas.h +++ /dev/null @@ -1,227 +0,0 @@ -#include - -class Gas { - private: - const char* name_ = nullptr; - uint64_t gas_; - - PLATON_EVENT1(GasUsed, const std::string &, uint64_t) - - public: - Gas(const char *name) : name_(name), gas_(platon_gas()) {} - ~Gas() - { - emit(); - } - - void Reset(const char *name) { - emit(); - name_ = name; - gas_ = platon_gas(); - } - - void emit() { - uint64_t cost = gas_ - platon_gas(); - PLATON_EMIT_EVENT1(GasUsed, name_, cost); - } -}; - - -// SIMULATOR -#define SIMULATOR_DEFINE(NAME) \ - struct NAME##_simulator { \ - using func_type = decltype(&NAME); \ - NAME##_simulator(const char* origin) : gasGuard_(origin) {} \ - func_type get_func() const { return &NAME; } \ - Gas gasGuard_; \ - }; - -#define NAMESPACE_SIMULATOR_DEFINE(NAMESPACE, NAME) \ - namespace NAMESPACE { \ - SIMULATOR_DEFINE(NAME) \ - } - -#define SIMULATOR_CALL(NAME) NAME##_simulator(#NAME).get_func() - - -// test function - -// platon_gas_price -SIMULATOR_DEFINE(platon_gas_price) -#define platon_gas_price SIMULATOR_CALL(platon_gas_price) - -// platon_block_hash -SIMULATOR_DEFINE(platon_block_hash) -#define platon_block_hash SIMULATOR_CALL(platon_block_hash) - -// platon_block_number -SIMULATOR_DEFINE(platon_block_number) -#define platon_block_number SIMULATOR_CALL(platon_block_number) - -// platon_gas_limit -SIMULATOR_DEFINE(platon_gas_limit) -#define platon_gas_limit SIMULATOR_CALL(platon_gas_limit) - -// platon_gas -SIMULATOR_DEFINE(platon_gas) -#define platon_gas SIMULATOR_CALL(platon_gas) - -// platon_timestamp -SIMULATOR_DEFINE(platon_timestamp) -#define platon_timestamp SIMULATOR_CALL(platon_timestamp) - -// platon_coinbase -SIMULATOR_DEFINE(platon_coinbase) -#define platon_coinbase SIMULATOR_CALL(platon_coinbase) - -// platon_balance -SIMULATOR_DEFINE(platon_balance) -#define platon_balance SIMULATOR_CALL(platon_balance) - -// platon_origin -SIMULATOR_DEFINE(platon_origin) -#define platon_origin SIMULATOR_CALL(platon_origin) - -// platon_caller -SIMULATOR_DEFINE(platon_caller) -#define platon_caller SIMULATOR_CALL(platon_caller) - -// platon_call_value -SIMULATOR_DEFINE(platon_call_value) -#define platon_call_value SIMULATOR_CALL(platon_call_value) - -// platon_address -SIMULATOR_DEFINE(platon_address) -#define platon_address SIMULATOR_CALL(platon_address) - -// platon_sha3 -SIMULATOR_DEFINE(platon_sha3) -#define platon_sha3 SIMULATOR_CALL(platon_sha3) - -// platon_caller_nonce -SIMULATOR_DEFINE(platon_caller_nonce) -#define platon_caller_nonce SIMULATOR_CALL(platon_caller_nonce) - -// platon_transfer -SIMULATOR_DEFINE(platon_transfer) -#define platon_transfer SIMULATOR_CALL(platon_transfer) - -// platon_set_state -SIMULATOR_DEFINE(platon_set_state) -#define platon_set_state SIMULATOR_CALL(platon_set_state) - -// platon_get_state_length -SIMULATOR_DEFINE(platon_get_state_length) -#define platon_get_state_length SIMULATOR_CALL(platon_get_state_length) - -// platon_get_state -SIMULATOR_DEFINE(platon_get_state) -#define platon_get_state SIMULATOR_CALL(platon_get_state) - -// platon_get_input_length -SIMULATOR_DEFINE(platon_get_input_length) -#define platon_get_input_length SIMULATOR_CALL(platon_get_input_length) - -// platon_get_input -SIMULATOR_DEFINE(platon_get_input) -#define platon_get_input SIMULATOR_CALL(platon_get_input) - -// platon_get_call_output_length -SIMULATOR_DEFINE(platon_get_call_output_length) -#define platon_get_call_output_length SIMULATOR_CALL(platon_get_call_output_length) - -// platon_get_call_output -SIMULATOR_DEFINE(platon_get_call_output) -#define platon_get_call_output SIMULATOR_CALL(platon_get_call_output) - -// platon_return -SIMULATOR_DEFINE(platon_return) -#define platon_return SIMULATOR_CALL(platon_return) - -// platon_revert -SIMULATOR_DEFINE(platon_revert) -#define platon_revert SIMULATOR_CALL(platon_revert) - -// platon_panic -SIMULATOR_DEFINE(platon_panic) -#define platon_panic SIMULATOR_CALL(platon_panic) - -// platon_debug -SIMULATOR_DEFINE(platon_debug) -#define platon_debug SIMULATOR_CALL(platon_debug) - -// platon_call -SIMULATOR_DEFINE(platon_call) -#define platon_call SIMULATOR_CALL(platon_call) - -// platon_delegate_call -SIMULATOR_DEFINE(platon_delegate_call) -#define platon_delegate_call SIMULATOR_CALL(platon_delegate_call) - -// platon_destroy -SIMULATOR_DEFINE(platon_destroy) -#define platon_destroy SIMULATOR_CALL(platon_destroy) - -// platon_migrate -SIMULATOR_DEFINE(platon_migrate) -#define platon_migrate SIMULATOR_CALL(platon_migrate) - -// platon_clone_migrate -SIMULATOR_DEFINE(platon_clone_migrate) -#define platon_clone_migrate SIMULATOR_CALL(platon_clone_migrate) - -// platon_event -SIMULATOR_DEFINE(platon_event) -#define platon_event SIMULATOR_CALL(platon_event) - -// platon_ecrecover -SIMULATOR_DEFINE(platon_ecrecover) -#define platon_ecrecover SIMULATOR_CALL(platon_ecrecover) - -// platon_ripemd160 -SIMULATOR_DEFINE(platon_ripemd160) -#define platon_ripemd160 SIMULATOR_CALL(platon_ripemd160) - -// platon_sha256 -SIMULATOR_DEFINE(platon_sha256) -#define platon_sha256 SIMULATOR_CALL(platon_sha256) - -// rlp_u128_size -SIMULATOR_DEFINE(rlp_u128_size) -#define rlp_u128_size SIMULATOR_CALL(rlp_u128_size) - -// platon_rlp_u128 -SIMULATOR_DEFINE(platon_rlp_u128) -#define platon_rlp_u128 SIMULATOR_CALL(platon_rlp_u128) - -// rlp_bytes_size -SIMULATOR_DEFINE(rlp_bytes_size) -#define rlp_bytes_size SIMULATOR_CALL(rlp_bytes_size) - -// platon_rlp_bytes -SIMULATOR_DEFINE(platon_rlp_bytes) -#define platon_rlp_bytes SIMULATOR_CALL(platon_rlp_bytes) - -// rlp_list_size -SIMULATOR_DEFINE(rlp_list_size) -#define rlp_list_size SIMULATOR_CALL(rlp_list_size) - -// platon_rlp_list -SIMULATOR_DEFINE(platon_rlp_list) -#define platon_rlp_list SIMULATOR_CALL(platon_rlp_list) - -// platon_contract_code_length -SIMULATOR_DEFINE(platon_contract_code_length) -#define platon_contract_code_length SIMULATOR_CALL(platon_contract_code_length) - -// platon_contract_code -SIMULATOR_DEFINE(platon_contract_code) -#define platon_contract_code SIMULATOR_CALL(platon_contract_code) - -// platon_deploy -SIMULATOR_DEFINE(platon_deploy) -#define platon_deploy SIMULATOR_CALL(platon_deploy) - -// platon_clone -SIMULATOR_DEFINE(platon_clone) -#define platon_clone SIMULATOR_CALL(platon_clone) \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/gas/GasPrice.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/gas/GasPrice.cpp deleted file mode 100644 index fea14c6acb..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/gas/GasPrice.cpp +++ /dev/null @@ -1,302 +0,0 @@ -#define TESTNET -#include -#include "Gas.h" - -using namespace platon; - -CONTRACT GasPrice : public platon::Contract{ - public: - ACTION void init() {} - - ACTION void platonGasPrice(){ - uint8_t gas_price[16] = {}; - platon_gas_price(gas_price); - } - - ACTION void platonBlockHash(int64_t num){ - uint8_t hash[32] = {}; - platon_block_hash(num, hash); - } - - ACTION void platonBlockNumber(){ - platon_block_number(); - } - - ACTION void platonGasLimit(){ - platon_gas_limit(); - } - - ACTION void platonGas(){ - platon_gas(); - } - - ACTION void platonTimestamp(){ - platon_timestamp(); - } - - ACTION void platonCoinbase(){ - uint8_t addr[20] = {}; - platon_coinbase(addr); - } - - ACTION void platonBalance(const std::array &addr){ - uint8_t balance[16] = {}; - platon_balance(addr.data(), balance); - } - - ACTION void platonOrigin(){ - uint8_t addr[20] = {}; - platon_coinbase(addr); - } - - ACTION void platonCaller(){ - uint8_t addr[20] = {}; - platon_caller(addr); - } - - ACTION void platonCallValue(){ - uint8_t addr[20] = {}; - platon_call_value(addr); - } - - ACTION void platonAddress(){ - uint8_t addr[20] = {}; - platon_address(addr); - } - - ACTION void platonSha3(const std::vector & src){ - uint8_t dest[32] = {}; - platon_sha3(src.data(), src.size(), dest, sizeof(dest)); - } - - ACTION void platonCallerNonce(){ - platon_caller_nonce(); - } - - ACTION void platonTransfer(const std::array &to){ - uint8_t amount = 100; - platon_transfer(to.data(), &amount, 1); - } - - ACTION void platonSetState(const std::vector &key, const std::vector &value){ - platon_set_state(key.data(), key.size(), value.data(), value.size()); - } - - ACTION void platonGetStateLength(const std::vector &key){ - platon_get_state_length(key.data(), key.size()); - } - - ACTION void platonGetState(const std::vector &key, size_t length){ - uint8_t *value = (uint8_t *) malloc(length); - platon_get_state(key.data(), key.size(), value, length); - } - - ACTION void platonGetInputLength(){ - platon_get_input_length(); - } - - ACTION void platonGetInput() { - uint8_t input[100] = {}; - platon_get_input(input); - } - - ACTION void platonGetCallOutputLength() { - platon_get_call_output_length(); - } - - ACTION void platonGetCallOutput() { - uint8_t value[100] = {}; - platon_get_call_output(value); - } - - ACTION void platonReturn(size_t length) { - uint8_t *value = (uint8_t *) malloc(length); - platon_return(value, length); - } - - ACTION void platonRevert() { - platon_revert(); - } - - ACTION void platonPanic() { - platon_panic(); - } - - ACTION void platonDebug(size_t length) { - uint8_t *src = (uint8_t *) malloc(length); - platon_debug(src, length); - } - - ACTION void platonCall(const Address & contract_address, const std::string &method){ - bytes paras = cross_call_args(method); - bytes value_bytes = value_to_bytes(0U); - bytes gas_bytes = value_to_bytes(0U); - platon_call(contract_address.data(), paras.data(), paras.size(), value_bytes.data(), - value_bytes.size(), gas_bytes.data(), gas_bytes.size()); - } - - ACTION void platonDelegateCall(const Address & contract_address, const std::string &method){ - bytes paras = cross_call_args(method); - bytes gas_bytes = value_to_bytes(0U); - platon_delegate_call(contract_address.data(), paras.data(), paras.size(), - gas_bytes.data(), gas_bytes.size()); - } - - ACTION void platonDestory(const Address & to) { - platon_destroy(to.data()); - } - - ACTION void platonMigrate(const Address & contract_address){ - size_t code_length = platon_contract_code_length(contract_address.data()); - if(0 == code_length) return; - bytes contract_code(code_length); - int32_t get_result = platon_contract_code(contract_address.data(), contract_code.data(), code_length); - if(get_result <= 0 ) return; - - // value and gas - bytes value_bytes = value_to_bytes(0U); - bytes gas_bytes = value_to_bytes(0U); - - // deploy agrs - std::vector magic_number = {0x00, 0x61, 0x73, 0x6d}; - bytes init_rlp = cross_call_args("init"); - RLPSize rlps; - rlps << contract_code << init_rlp; - RLPStream stream; - stream.appendPrefix(magic_number); - stream.reserve(rlps.size() + 4); - stream.appendList(2); - stream << contract_code << init_rlp; - bytesRef result = stream.out(); - - // migrate - Address return_address; - platon_migrate(return_address.data(), result.data(), result.size(), value_bytes.data(), value_bytes.size(), gas_bytes.data(), gas_bytes.size()); - } - - ACTION void platonMigrateClone(const Address & contract_address){ - // value and gas - bytes value_bytes = value_to_bytes(0U); - bytes gas_bytes = value_to_bytes(0U); - - // init args - bytes init_rlp = cross_call_args("init"); - - // migrate - Address return_address; - platon_clone_migrate(contract_address.data(), return_address.data(), init_rlp.data(), init_rlp.size(), value_bytes.data(), value_bytes.size(), gas_bytes.data(), gas_bytes.size()); - } - - ACTION void platonEvent(const std::vector &topic, const std::vector &args){ - platon_event(topic.data(), topic.size(), args.data(), args.size()); - } - - ACTION void platonEcrecover(const std::array &hash, const std::vector &sig) { - uint8_t addr[20] = {}; - platon_ecrecover(hash.data(), sig.data(), sig.size(), addr); - } - - ACTION void platonRipemd160(const std::vector &src) { - uint8_t hash[20] = {}; - platon_ripemd160(src.data(), src.size(), hash); - } - - ACTION void platonSha256(const std::vector &src) { - uint8_t hash[32] = {}; - platon_sha256(src.data(), src.size(), hash); - } - - ACTION void platonRlpU128Size(uint64_t heigh, uint64_t low) { - rlp_u128_size(heigh, low); - } - - ACTION void platonRlpU128(uint64_t heigh, uint64_t low) { - void *dest = malloc(10); - platon_rlp_u128(heigh, low, dest); - } - - ACTION void platonRlpBytesSize(const std::vector & data) { - rlp_bytes_size(data.data(), data.size()); - } - - ACTION void platonRlpBytes(const std::vector & data) { - void *dest = malloc(10); - platon_rlp_bytes(data.data(), data.size(), dest); - } - - ACTION void platonRlpListSize(size_t len) { - rlp_list_size(len); - } - - ACTION void platonRlpList(const std::vector & data) { - void *dest = malloc(10); - platon_rlp_list(data.data(), data.size(), dest); - } - - ACTION void platonContractCodeLength(const std::array &addr) { - platon_contract_code_length(addr.data()); - } - - ACTION void platonContractCode(const std::array &addr) { - uint8_t code[100] = {}; - platon_contract_code(addr.data(), code, 100); - } - - ACTION void platonDeploy(const Address & contract_address){ - size_t code_length = platon_contract_code_length(contract_address.data()); - if(0 == code_length) return; - bytes contract_code(code_length); - int32_t code_result = platon_contract_code(contract_address.data(), contract_code.data(), code_length); - if(code_result <= 0) return; - - // value and gas - bytes value_bytes = value_to_bytes(0U); - bytes gas_bytes = value_to_bytes(0U); - - // deploy args - std::vector magic_number = {0x00, 0x61, 0x73, 0x6d}; - bytes init_rlp = cross_call_args("init"); - RLPSize rlps; - rlps << contract_code << init_rlp; - RLPStream stream; - stream.appendPrefix(magic_number); - stream.reserve(rlps.size() + 4); - stream.appendList(2); - stream << contract_code << init_rlp; - bytesRef result = stream.out(); - - // deploy contract - Address return_address; - platon_deploy(return_address.data(), result.data(), result.size(), - value_bytes.data(), value_bytes.size(), gas_bytes.data(), - gas_bytes.size()); - } - - ACTION void platonClone(const Address & contract_address){ - // value and gas - bytes value_bytes = value_to_bytes(0U); - bytes gas_bytes = value_to_bytes(0U); - - // init args - bytes init_rlp = cross_call_args("init"); - - // clone contract - Address return_address; - platon_clone(contract_address.data(), return_address.data(), init_rlp.data(), - init_rlp.size(), value_bytes.data(), value_bytes.size(), - gas_bytes.data(), gas_bytes.size()); - } - -}; - -PLATON_DISPATCH(GasPrice, (init)(platonGasPrice)(platonBlockHash)(platonBlockNumber)(platonGasLimit) -(platonGas)(platonTimestamp)(platonCoinbase)(platonBalance)(platonOrigin)(platonCaller)(platonCallValue) -(platonAddress)(platonSha3)(platonCallerNonce)(platonTransfer)(platonSetState)(platonGetStateLength) -(platonGetState)(platonGetInputLength)(platonGetInput)(platonGetCallOutputLength)(platonGetCallOutput) -(platonReturn)(platonRevert)(platonPanic)(platonDebug)(platonCall)(platonDelegateCall)(platonDestory) -(platonMigrate)(platonMigrateClone)(platonEvent)(platonEcrecover)(platonRipemd160)(platonSha256) -(platonRlpU128Size)(platonRlpU128)(platonRlpBytesSize)(platonRlpBytes)(platonRlpListSize) -(platonRlpList)(platonContractCodeLength)(platonContractCode)(platonDeploy)(platonClone)) - - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/storage/OOMException.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/storage/OOMException.cpp deleted file mode 100644 index 76fe8df5bb..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/storage/OOMException.cpp +++ /dev/null @@ -1,23 +0,0 @@ -#define TESTNET -#include -using namespace platon; - - -CONTRACT OOMException : public platon::Contract{ - public: - ACTION void init() {} - - ACTION void memory_limit() { - int* p = NULL; - for (int i = 0; i < 6 * 1024; i++) { - p = (int*)malloc(1024 * 1024); - *p = i; - printf("i = %d\t\n", *p); - } - printf("i = %d\t\n", *p); - } -}; - -PLATON_DISPATCH(OOMException, (init)(memory_limit)) - - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/storage/SolSimulation.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/storage/SolSimulation.cpp deleted file mode 100644 index b31535e3e5..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/storage/SolSimulation.cpp +++ /dev/null @@ -1,102 +0,0 @@ -#define TESTNET -#undef NDEBUG -#include "platon/contract.hpp" -//#include "platon/common.h" -#include "platon/assert.hpp" -#include "platon/dispatcher.hpp" -#include "platon/panic.hpp" -#include "platon/print.hpp" -#include "platon/storage.hpp" -#include "platon/storagetype.hpp" - -namespace platon { - -CONTRACT SolSimulation : public platon::Contract { - public: - /* - * solidity 合约存储有固定32字节key-value 组成,写入的数据有32条,每条数据的相应字节为非零,其他为零 - * step 是将32个数据分成几组,如分成8组则step为4,fragment 为从第几组开始写入 - */ - ACTION void init(size_t step, size_t fragment) { - platon_assert(32 % step == 0, "step is illegal:", step); - platon_assert(step * fragment < 32, "fragment is illegal", "step", step, "fragment", fragment); - *counter_ = 1; - for (size_t i = 0; i < 32; i++) { - write(i, *counter_); - } - *step_ = step; - *fragment_ = fragment; - DEBUG("fragment", fragment, "step", step); - } - - ACTION void action() { - DEBUG("counter:", *counter_, "step:", *step_, "fragment:", *fragment_, "scope:", *step_ * (*fragment_), *step_ * (*fragment_ + 1)); - for (size_t i = *step_ * (*fragment_); i < *step_ * (*fragment_ + 1); i++) { - check(i, *counter_ % 32); - } - - *fragment_ = (*step_*(*fragment_ + 1) ) >= 32 ? 0 : (*fragment_ + 1); - DEBUG("fragment", *fragment_); - - *counter_ = (*counter_+1) % 255; - for (size_t i = *step_ * (*fragment_); i < *step_ * (*fragment_ + 1); i++) { - write(i, *counter_ % 32); - } - DEBUG("counter:", *counter_, "step:", *step_, "fragment:", *fragment_); - } - - ACTION void debug() { - println("counter:", *counter_, "step:", *step_, "fragment:", *fragment_); - } - - CONST uint64_t getCounter() { - return *counter_; - } - - CONST size_t getStep() { - return *step_; - } - - CONST size_t getFragment() { - return *fragment_; - } - - private: - void write(size_t pos, uint64_t num) { - uint8_t key[32] = {0}; - key[pos] = pos; - uint8_t value[32] = {0}; - value[pos] = num; - platon_set_state(key, sizeof(key), value, sizeof(value)); - } - - void check(size_t pos, uint64_t except) { - uint8_t key[32] = {0}; - key[pos] = pos; - uint8_t value[32] = {0}; - size_t length = platon_get_state_length(key, sizeof(key)); - platon_assert(length == 32, "get state length:", length, "except:32"); - platon_get_state(key, sizeof(key), value, sizeof(value)); - - - for (size_t i = 0; i < 32; i++) { - if (i == pos) { - platon_assert(value[i] == except, "get value pos:", pos, - "value:", value[i], "except:", except); - } else { - platon_assert(value[i] == 0, "get value pos:", pos, "value:", value[i], - "except:0"); - } - } - } - - private: - StorageType<"counter"_n, uint64_t> counter_; - StorageType<"section"_n, size_t> step_; - StorageType<"fragment"_n, size_t> fragment_; -}; - - -PLATON_DISPATCH(SolSimulation, (init)(action)(debug)) -} - diff --git a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/storage/WasmStorage.cpp b/cases/ContractsAutoTests/src/test/resources/contracts/wasm/storage/WasmStorage.cpp deleted file mode 100644 index ef748258c0..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/contracts/wasm/storage/WasmStorage.cpp +++ /dev/null @@ -1,164 +0,0 @@ -#define TESTNET -#undef NDEBUG -#include "platon/contract.hpp" -//#include "platon/common.h" -#include "platon/assert.hpp" -#include "platon/dispatcher.hpp" -#include "platon/panic.hpp" -#include "platon/print.hpp" -#include "platon/storage.hpp" -#include "platon/storagetype.hpp" -namespace platon { -struct Key { - std::string prefix; - uint64_t seq; - PLATON_SERIALIZE(Key, (prefix)(seq)) -}; -CONTRACT WasmStorage : public platon::Contract { - public: - /* - * 测试不同数据长度,16b, 32b, 64b, 64Kb, 500Kb - * 测试数据的修改 - * 测试数据删除 - * 测试单合约大数据量 - */ - ACTION void init() { - auto block_num = platon_block_number(); - auto timestamp = platon_timestamp(); - for (auto k : kInternal) { - states_->emplace(std::make_pair(k.first, block_num)); - timestamp_->emplace(std::make_pair(k.first, timestamp)); - counter_->emplace(std::make_pair(k.first, 0)); - DEBUG("kInternal:", k.first); - println("kInternal:", k.first); - } - *random_ = 1234567890; - } - - ACTION void random_data() { - auto current = platon_block_number(); - auto timestamp = platon_timestamp(); - random(current, timestamp); - } - - ACTION void action() { - auto current = platon_block_number(); - auto timestamp = platon_timestamp(); - bool hit = false; - uint64_t index = 0; - platon_assert(counter_->size() != 0 , "counter removed"); - DEBUG("current:", current, "timestamp:", timestamp); - for (auto k : kInternal) { - auto number = (*states_)[k.first]; - if (current > number + k.second) { - if ((*counter_)[k.first] != 0) { - check(k.first, (*timestamp_)[k.first], (*counter_)[k.first], index); - } - uint64_t counter = ++(*counter_)[k.first]; - write(k.first, timestamp, counter, index); - (*timestamp_)[k.first] = timestamp; - (*states_)[k.first] = current; - hit = true; - break; - } - index++; - } - - if (!hit) { - random(current, timestamp); - } - } - - ACTION void debug() { - for (auto k : kInternal) { - println("internal:", k.first, "states:", (*states_)[k.first], - "timestamp:", (*timestamp_)[k.first], - "counter:", (*counter_)[k.first], "random:", *random_); - } - } - - private: - void write(const std::string &prefix, uint64_t timestamp, uint64_t counter, - uint64_t index) { - DEBUG("write prefix:", prefix, "timestamp:", timestamp, "counter:", counter, - "index:", index); - - std::vector vec(32, counter); - Key key{.prefix = prefix, .seq = 1}; - set_state(key, vec); - uint64_t length = counter % kMaxStringLength; - - key.seq = 2; - if (length == 0) { - del_state(key); - } - std::string str(length, kNumber[index]); - set_state(key, str); - } - - void check(const std::string &prefix, uint64_t timestamp, uint64_t counter, - uint64_t index) { - DEBUG("check prefix:", prefix, "timestamp:", timestamp, "counter:", counter, - "index:", index); - std::vector vec; - Key key{.prefix = prefix, .seq = 1}; - get_state(key, vec); - platon_assert(vec.size() == 32, "vector size error size:", vec.size(), - "except:32"); - for (auto k : vec) { - platon_assert(k == counter, "vector is not equal value:", k, - "except:", counter); - } - - uint64_t length = counter % kMaxStringLength; - key.seq = 2; - if (length == 0) { - platon_assert(!has_state(key), "string had exists"); - return; - } - std::string str; - get_state(key, str); - platon_assert(str.length() == length, - "string length error length:", str.length(), - "except:", counter); - for (auto s : str) { - platon_assert(s == kNumber[index], "string error s:", s, - "except:", kNumber[index]); - } - } - - void random(uint64_t number, uint64_t timestamp) { - DEBUG("write random data:", *random_, "number:", number, - "timestamp:", timestamp); - uint64_t seq = *random_; - for (auto k : kRandomSize) { - DEBUG("write random size:", k); - uint8_t *value = (uint8_t *)malloc(k); - value[0] = timestamp; - platon_set_state((uint8_t *)&seq, sizeof(seq), value, k); - ++seq; - } - *random_ = seq; - DEBUG("write random data:", *random_); - } - - private: - StorageType<"states"_n, std::map> states_; - StorageType<"counter"_n, std::map> counter_; - StorageType<"timestamp"_n, std::map> timestamp_; - StorageType<"random"_n, uint64_t> random_; - - const std::vector> kInternal{ - {"internal200", 200}, - {"internal100", 100}, - {"internal50", 50}, - }; - - const std::vector kRandomSize{16, 32, 64, 128, 256}; - const std::vector kSize{16, 32, 64}; - const char kNumber[7] = {'0', '1', '2', '3', '4', '5', '6'}; - const uint64_t kMaxStringLength = 512; -}; - -PLATON_DISPATCH(WasmStorage, (init)(action)(random_data)(debug)) -} // namespace platon diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ABIFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ABIFunctionsTest/test.xls deleted file mode 100644 index d207e2ee88..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ABIFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractAInhertNoImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractAInhertNoImpTest/test.xls deleted file mode 100644 index d54ac894a1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractAInhertNoImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractANoImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractANoImpTest/test.xls deleted file mode 100644 index beb1b27572..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractANoImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractAPartImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractAPartImpTest/test.xls deleted file mode 100644 index e46c0e7f86..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractAPartImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractBInhertAllImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractBInhertAllImpTest/test.xls deleted file mode 100644 index e0ec9eafdc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractBInhertAllImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractBMultipleInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractBMultipleInhertTest/test.xls deleted file mode 100644 index 1423eca59b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractBMultipleInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractCInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractCInhertTest/test.xls deleted file mode 100644 index 1fbc4b5354..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractCInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractDInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractDInhertTest/test.xls deleted file mode 100644 index a594052f56..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AbstractContractDInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AddressBalanceTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AddressBalanceTest/test.xls deleted file mode 100644 index bda4af126b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AddressBalanceTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AddressFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AddressFunctionsTest/test.xls deleted file mode 100644 index 2b72e54df6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AddressFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AssemblyReturnsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AssemblyReturnsTest/test.xls deleted file mode 100644 index 501e012e29..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AssemblyReturnsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AssertContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AssertContractTest/test.xls deleted file mode 100644 index abd57c1d43..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AssertContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AssertHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AssertHandleTest/test.xls deleted file mode 100644 index f53a6fd71e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AssertHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AtomicSwapTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AtomicSwapTest/test.xls deleted file mode 100644 index b2f9cfe30e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/AtomicSwapTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BallotTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BallotTest/test.xls deleted file mode 100644 index 72bb0877f5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BallotTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeConstantAddressTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeConstantAddressTest/test.xls deleted file mode 100644 index 839492650a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeConstantAddressTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeConstantContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeConstantContractTest/test.xls deleted file mode 100644 index 52dc4879ec..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeConstantContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeContractTest/test.xls deleted file mode 100644 index 8ee2499b78..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeDeleteContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeDeleteContractTest/test.xls deleted file mode 100644 index 94cde4a50c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeDeleteContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeIntOverTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeIntOverTest/test.xls deleted file mode 100644 index f7b150b4c8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeIntOverTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeUintOverTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeUintOverTest/test.xls deleted file mode 100644 index 2c77450b08..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BasicDataTypeUintOverTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BlockTransactionPropertiesFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BlockTransactionPropertiesFunctionsTest/test.xls deleted file mode 100644 index 99fe7a558c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BlockTransactionPropertiesFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BlockhashTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BlockhashTest/test.xls deleted file mode 100644 index f31a7acf41..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BlockhashTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BubbleSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BubbleSortTest/test.xls deleted file mode 100644 index f084c80bf3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/BubbleSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/CallExternalTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/CallExternalTest/test.xls deleted file mode 100644 index 5f50cd750b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/CallExternalTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/Caller0425Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/Caller0425Test/test.xls deleted file mode 100644 index c070285267..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/Caller0425Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/Caller0425Test/test1.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/Caller0425Test/test1.xls deleted file mode 100644 index ec60742065..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/Caller0425Test/test1.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/Caller0425Test/test2.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/Caller0425Test/test2.xls deleted file mode 100644 index 78cbf9fefb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/Caller0425Test/test2.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ChainFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ChainFunctionTest/test.xls deleted file mode 100644 index bd4c3ed182..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ChainFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/CheckstatusTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/CheckstatusTest/test.xls deleted file mode 100644 index cfd096e9c1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/CheckstatusTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstantViewPureTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstantViewPureTest/test.xls deleted file mode 100644 index 3f2f8b4e85..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstantViewPureTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorDefaultVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorDefaultVisibilityTest/test.xls deleted file mode 100644 index 768b6ad43b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorDefaultVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorDeprecatedElementTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorDeprecatedElementTest/test.xls deleted file mode 100644 index a206dc5cba..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorDeprecatedElementTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorInternalDeclaractionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorInternalDeclaractionTest/test.xls deleted file mode 100644 index 21f01a55f7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorInternalDeclaractionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorInternalVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorInternalVisibilityTest/test.xls deleted file mode 100644 index f6a4c7cf52..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorInternalVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorPublicDeclaractionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorPublicDeclaractionTest/test.xls deleted file mode 100644 index 425b77ce5d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorPublicDeclaractionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorPublicVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorPublicVisibilityTest/test.xls deleted file mode 100644 index d06f8c79a6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ConstructorPublicVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ContractAdressTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ContractAdressTest/test.xls deleted file mode 100644 index ea0276c9f5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ContractAdressTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ContractAndAddressFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ContractAndAddressFunctionTest/test.xls deleted file mode 100644 index eba0283932..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ContractAndAddressFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ContractArrayTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ContractArrayTest/test.xls deleted file mode 100644 index bd88753c21..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ContractArrayTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ControlTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ControlTest/test.xls deleted file mode 100644 index ab240c2f51..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ControlTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/CreateContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/CreateContractTest/test.xls deleted file mode 100644 index 6a2d21441c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/CreateContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/CreationCodeTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/CreationCodeTypeTest/test.xls deleted file mode 100644 index c5feb5ee32..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/CreationCodeTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DataLocationTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DataLocationTest/test.xls deleted file mode 100644 index 97de26cfa7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DataLocationTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DecimalLiteralsChangeByteDeprecatedTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DecimalLiteralsChangeByteDeprecatedTypeTest/test.xls deleted file mode 100644 index 6719423a00..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DecimalLiteralsChangeByteDeprecatedTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DelegatecallCaller050Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DelegatecallCaller050Test/test.xls deleted file mode 100644 index 76b7cd32bb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DelegatecallCaller050Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DelegatecallCallerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DelegatecallCallerTest/test.xls deleted file mode 100644 index 860c513e33..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DelegatecallCallerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DeleteDemoTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DeleteDemoTest/test.xls deleted file mode 100644 index 9c18ecf715..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DeleteDemoTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DeprecatedFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DeprecatedFunctionsTest/test.xls deleted file mode 100644 index 3ac44baa1c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DeprecatedFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DisallowYearsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DisallowYearsTest/test.xls deleted file mode 100644 index 91146a7cb1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DisallowYearsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DoWhileCheckTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DoWhileCheckTest/test.xls deleted file mode 100644 index ff70495b71..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DoWhileCheckTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DoWhileErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DoWhileErrorTest/test.xls deleted file mode 100644 index a20065b263..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/DoWhileErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ERC200412TokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ERC200412TokenTest/test.xls deleted file mode 100644 index 28dba014da..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ERC200412TokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ERC200513TokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ERC200513TokenTest/test.xls deleted file mode 100644 index e383a84ecf..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ERC200513TokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EVMVIDTokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EVMVIDTokenTest/test.xls deleted file mode 100644 index fd81eb76f9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EVMVIDTokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ErrorParamConstructorDeprecatedElementTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ErrorParamConstructorDeprecatedElementTest/test.xls deleted file mode 100644 index 0d67263368..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ErrorParamConstructorDeprecatedElementTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EventCallContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EventCallContractTest/test.xls deleted file mode 100644 index bb7c77a520..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EventCallContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EventIndexedContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EventIndexedContractTest/test.xls deleted file mode 100644 index be23610b4b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EventIndexedContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EventNegativeValueTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EventNegativeValueTest/test.xls deleted file mode 100644 index a3c543df96..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EventNegativeValueTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EventTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EventTypeContractTest/test.xls deleted file mode 100644 index c7f3af809c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/EventTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FallbackDeclaractionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FallbackDeclaractionTest/test.xls deleted file mode 100644 index d409dba8aa..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FallbackDeclaractionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FallbackTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FallbackTest/test.xls deleted file mode 100644 index bc3313e841..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FallbackTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ForErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ForErrorTest/test.xls deleted file mode 100644 index 9530d7d99f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ForErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FunctionDeclaractionTest/test1.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FunctionDeclaractionTest/test1.xls deleted file mode 100644 index 9c911c1455..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FunctionDeclaractionTest/test1.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FunctionDeclaractionTest/test2.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FunctionDeclaractionTest/test2.xls deleted file mode 100644 index 8f70f5f24f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FunctionDeclaractionTest/test2.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FunctionParamTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FunctionParamTest/test.xls deleted file mode 100644 index 9dddee597e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/FunctionParamTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/GeneratorPreTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/GeneratorPreTest/test.xls deleted file mode 100644 index 57192f40e4..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/GeneratorPreTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/GetLibraryAddressTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/GetLibraryAddressTest/test.xls deleted file mode 100644 index 0ebe0d5708..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/GetLibraryAddressTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/GetterTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/GetterTest/test.xls deleted file mode 100644 index bdbbc7a6cc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/GetterTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/GuessingTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/GuessingTest/test.xls deleted file mode 100644 index 676ef26c7b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/GuessingTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/HexLiteralsChangeByteTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/HexLiteralsChangeByteTest/test.xls deleted file mode 100644 index a7eda578a2..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/HexLiteralsChangeByteTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/IfErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/IfErrorTest/test.xls deleted file mode 100644 index c1e3287323..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/IfErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractAMutipleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractAMutipleTest/test.xls deleted file mode 100644 index 8060a2b37d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractAMutipleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractBMutipleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractBMutipleTest/test.xls deleted file mode 100644 index e7ee1b9fd1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractBMutipleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractOverloadComplexTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractOverloadComplexTest/test.xls deleted file mode 100644 index e4132d2530..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractOverloadComplexTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractOverloadTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractOverloadTest/test.xls deleted file mode 100644 index 85102fba30..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractOverloadTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractPassParamTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractPassParamTest/test.xls deleted file mode 100644 index 2e04887af4..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritContractPassParamTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritanceModifierTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritanceModifierTest/test.xls deleted file mode 100644 index abbe429e0a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InheritanceModifierTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InsertSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InsertSortTest/test.xls deleted file mode 100644 index 589b7de133..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InsertSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterTest/test.xls deleted file mode 100644 index 965fa7b307..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceContractALimitTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceContractALimitTest/test.xls deleted file mode 100644 index e8bc95ae7a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceContractALimitTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceContractBLimitEnumTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceContractBLimitEnumTest/test.xls deleted file mode 100644 index e40e7f98f8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceContractBLimitEnumTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceContractBLimitStructTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceContractBLimitStructTest/test.xls deleted file mode 100644 index 38990bc406..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceContractBLimitStructTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceContractInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceContractInhertTest/test.xls deleted file mode 100644 index ef7b454e68..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceContractInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceEnableStructAndenumImplTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceEnableStructAndenumImplTest/test.xls deleted file mode 100644 index 72964b1ebf..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InterfaceEnableStructAndenumImplTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InternalCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InternalCallTest/test.xls deleted file mode 100644 index 27ea6c0f89..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/InternalCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LibraryStaticUsingTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LibraryStaticUsingTest/test.xls deleted file mode 100644 index 262c084018..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LibraryStaticUsingTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LibraryUsingForAllTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LibraryUsingForAllTest/test.xls deleted file mode 100644 index b4457e7013..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LibraryUsingForAllTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LibraryUsingForTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LibraryUsingForTest/test.xls deleted file mode 100644 index caec537e27..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LibraryUsingForTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LoopCallOfViewTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LoopCallOfViewTest/test.xls deleted file mode 100644 index 7b8d66faad..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LoopCallOfViewTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LoopCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LoopCallTest/test.xls deleted file mode 100644 index d5242e4d4c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/LoopCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/MappingArrayDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/MappingArrayDataTypeContractTest/test.xls deleted file mode 100644 index 7e134a9716..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/MappingArrayDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/MappingDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/MappingDataTypeContractTest/test.xls deleted file mode 100644 index f1803176f3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/MappingDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/MathAndCryptographicFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/MathAndCryptographicFunctionsTest/test.xls deleted file mode 100644 index 2e4aa4dea6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/MathAndCryptographicFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ModifiersTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ModifiersTest/test.xls deleted file mode 100644 index 68f30dc549..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ModifiersTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/MulicPointBaseConstructorWay2Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/MulicPointBaseConstructorWay2Test/test.xls deleted file mode 100644 index 371af6e4b7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/MulicPointBaseConstructorWay2Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/NamedCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/NamedCallTest/test.xls deleted file mode 100644 index 913500db7f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/NamedCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/NewSecPledgeApplyManagerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/NewSecPledgeApplyManagerTest/test.xls deleted file mode 100644 index dd4a09bbc0..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/NewSecPledgeApplyManagerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/OrderDaoTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/OrderDaoTest/test.xls deleted file mode 100644 index a72f2ab227..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/OrderDaoTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/OverloadTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/OverloadTest/test.xls deleted file mode 100644 index 50ef1e14fc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/OverloadTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PayableTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PayableTest/test.xls deleted file mode 100644 index e4b744dc65..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PayableTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PlatONTokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PlatONTokenTest/test.xls deleted file mode 100644 index 09858535f6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PlatONTokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PlatONTransferTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PlatONTransferTest/test.xls deleted file mode 100644 index 30abb17806..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PlatONTransferTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PlatonInnerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PlatonInnerTest/test.xls deleted file mode 100644 index 6dead6b824..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PlatonInnerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PlatonUnitTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PlatonUnitTest/test.xls deleted file mode 100644 index c7bcf19ef3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PlatonUnitTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PramaAndReturnsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PramaAndReturnsTest/test.xls deleted file mode 100644 index 8e83b8f9fc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PramaAndReturnsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PrecompiledTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PrecompiledTest/test.xls deleted file mode 100644 index ad5b7ee8e4..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PrecompiledTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PublicCoverExternalTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PublicCoverExternalTest/test.xls deleted file mode 100644 index 5e6756dbdb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/PublicCoverExternalTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/QuickSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/QuickSortTest/test.xls deleted file mode 100644 index 3d1dc7e4d9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/QuickSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RecursionCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RecursionCallTest/test.xls deleted file mode 100644 index 1771649931..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RecursionCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RecursiveStorageMemoryComplexTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RecursiveStorageMemoryComplexTest/test.xls deleted file mode 100644 index 13afaa40bb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RecursiveStorageMemoryComplexTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeArrayComplexTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeArrayComplexTest/test.xls deleted file mode 100644 index 6682be2531..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeArrayComplexTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeArrayMethodTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeArrayMethodTest/test.xls deleted file mode 100644 index 6869bb4279..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeArrayMethodTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeArrayOperatorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeArrayOperatorTest/test.xls deleted file mode 100644 index 68eb8cd716..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeArrayOperatorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeMultiArrayContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeMultiArrayContractTest/test.xls deleted file mode 100644 index 5bb503d54d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeMultiArrayContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeSetArrayContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeSetArrayContractTest/test.xls deleted file mode 100644 index e0bdcdbe1f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeSetArrayContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeStructContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeStructContractTest/test.xls deleted file mode 100644 index 82a81796f9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeStructContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeStructDeleteContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeStructDeleteContractTest/test.xls deleted file mode 100644 index ea4449cfd1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeStructDeleteContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeStructRecursiveContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeStructRecursiveContractTest/test.xls deleted file mode 100644 index 59a40f7c43..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ReferenceDataTypeStructRecursiveContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RequireContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RequireContractTest/test.xls deleted file mode 100644 index f4dc681744..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RequireContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RequireHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RequireHandleTest/test.xls deleted file mode 100644 index 7cc4fc5309..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RequireHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RequireMessageHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RequireMessageHandleTest/test.xls deleted file mode 100644 index 593c4bca35..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RequireMessageHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RevertContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RevertContractTest/test.xls deleted file mode 100644 index 8a3173fbfb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RevertContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RevertHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RevertHandleTest/test.xls deleted file mode 100644 index e1cf5aea0f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RevertHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RuntimeCodeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RuntimeCodeTest/test.xls deleted file mode 100644 index 52e4561c94..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/RuntimeCodeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SafeMathMockTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SafeMathMockTest/test.xls deleted file mode 100644 index 662bd16f1b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SafeMathMockTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SameNameConstructorDefaultVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SameNameConstructorDefaultVisibilityTest/test.xls deleted file mode 100644 index e2b1b2cace..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SameNameConstructorDefaultVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SameNameConstructorInternalVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SameNameConstructorInternalVisibilityTest/test.xls deleted file mode 100644 index e730d3453d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SameNameConstructorInternalVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SameNameConstructorPublicVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SameNameConstructorPublicVisibilityTest/test.xls deleted file mode 100644 index 9f04ed4ed8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SameNameConstructorPublicVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SelectorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SelectorTest/test.xls deleted file mode 100644 index 87e18a6012..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SelectorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SelfdestructFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SelfdestructFunctionsTest/test.xls deleted file mode 100644 index 9c140a45fe..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SelfdestructFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/Sha3AndKeccake256Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/Sha3AndKeccake256Test/test.xls deleted file mode 100644 index fd165e332e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/Sha3AndKeccake256Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ShortCircuitErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ShortCircuitErrorTest/test.xls deleted file mode 100644 index 5437fcfc04..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ShortCircuitErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SimpleStorageTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SimpleStorageTest/test.xls deleted file mode 100644 index 6fae685248..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SimpleStorageTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SpaceComplexityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SpaceComplexityTest/test.xls deleted file mode 100644 index 25bcbf557e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SpaceComplexityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/StorageLocationTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/StorageLocationTest/test.xls deleted file mode 100644 index 8654d06edb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/StorageLocationTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/StringmappingSupportTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/StringmappingSupportTest/test.xls deleted file mode 100644 index 372ef910f0..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/StringmappingSupportTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/StringmappingSupportTest/test1.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/StringmappingSupportTest/test1.xls deleted file mode 100644 index 4ea0c9649c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/StringmappingSupportTest/test1.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/StructDataTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/StructDataTypeTest/test.xls deleted file mode 100644 index bbd25ba1dc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/StructDataTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SuicideAndSelfdestructTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SuicideAndSelfdestructTest/test.xls deleted file mode 100644 index 3557d037ff..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SuicideAndSelfdestructTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SumAssemblyTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SumAssemblyTest/test.xls deleted file mode 100644 index 17eff774da..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/SumAssemblyTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ThreeContractCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ThreeContractCallTest/test.xls deleted file mode 100644 index 953db230c7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/ThreeContractCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TimeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TimeTest/test.xls deleted file mode 100644 index 96e23cd7f1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TimeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TokenTransferTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TokenTransferTest/test.xls deleted file mode 100644 index ee24551629..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TokenTransferTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TypeCastTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TypeCastTest/test.xls deleted file mode 100644 index daca5165c5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TypeCastTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TypeConversionBytesToUintContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TypeConversionBytesToUintContractTest/test.xls deleted file mode 100644 index f48cbdcfdc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TypeConversionBytesToUintContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TypeConversionContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TypeConversionContractTest/test.xls deleted file mode 100644 index 71fdacdd27..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TypeConversionContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TypeNameTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TypeNameTest/test.xls deleted file mode 100644 index 30ee52072f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/TypeNameTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/UserLibUseMappingTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/UserLibUseMappingTest/test.xls deleted file mode 100644 index 41b37079bb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/UserLibUseMappingTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/VisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/VisibilityTest/test.xls deleted file mode 100644 index 6c63bd487d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/VisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/WhileErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/WhileErrorTest/test.xls deleted file mode 100644 index 3d2c16bd10..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/WhileErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/WithBackCallerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/WithBackCallerTest/test.xls deleted file mode 100644 index 8a4242964c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/WithBackCallerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/msgSenderBelongToPayableTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/msgSenderBelongToPayableTest/test.xls deleted file mode 100644 index 164e1b6942..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.4.26/msgSenderBelongToPayableTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ABIFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ABIFunctionsTest/test.xls deleted file mode 100644 index d207e2ee88..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ABIFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractAInhertNoImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractAInhertNoImpTest/test.xls deleted file mode 100644 index d54ac894a1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractAInhertNoImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractANoImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractANoImpTest/test.xls deleted file mode 100644 index beb1b27572..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractANoImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractAPartImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractAPartImpTest/test.xls deleted file mode 100644 index e46c0e7f86..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractAPartImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractBInhertAllImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractBInhertAllImpTest/test.xls deleted file mode 100644 index e0ec9eafdc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractBInhertAllImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractBMultipleInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractBMultipleInhertTest/test.xls deleted file mode 100644 index 1423eca59b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractBMultipleInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractCInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractCInhertTest/test.xls deleted file mode 100644 index 1fbc4b5354..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractCInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractDInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractDInhertTest/test.xls deleted file mode 100644 index a594052f56..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AbstractContractDInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AddressBalanceTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AddressBalanceTest/test.xls deleted file mode 100644 index bda4af126b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AddressBalanceTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AddressFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AddressFunctionsTest/test.xls deleted file mode 100644 index 2b72e54df6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AddressFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AssemblyReturnsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AssemblyReturnsTest/test.xls deleted file mode 100644 index 501e012e29..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AssemblyReturnsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AssertContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AssertContractTest/test.xls deleted file mode 100644 index abd57c1d43..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AssertContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AssertHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AssertHandleTest/test.xls deleted file mode 100644 index f53a6fd71e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AssertHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AtomicSwapTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AtomicSwapTest/test.xls deleted file mode 100644 index 7cd5e1e2d7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/AtomicSwapTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BallotTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BallotTest/test.xls deleted file mode 100644 index 72bb0877f5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BallotTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeConstantAddressTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeConstantAddressTest/test.xls deleted file mode 100644 index 839492650a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeConstantAddressTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeConstantContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeConstantContractTest/test.xls deleted file mode 100644 index 52dc4879ec..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeConstantContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeContractTest/test.xls deleted file mode 100644 index 8ee2499b78..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeDeleteContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeDeleteContractTest/test.xls deleted file mode 100644 index 94cde4a50c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeDeleteContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeIntOverTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeIntOverTest/test.xls deleted file mode 100644 index f7b150b4c8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeIntOverTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeUintOverTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeUintOverTest/test.xls deleted file mode 100644 index 2c77450b08..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BasicDataTypeUintOverTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BlockTransactionPropertiesFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BlockTransactionPropertiesFunctionsTest/test.xls deleted file mode 100644 index 99fe7a558c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BlockTransactionPropertiesFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BlockhashTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BlockhashTest/test.xls deleted file mode 100644 index f31a7acf41..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BlockhashTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BubbleSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BubbleSortTest/test.xls deleted file mode 100644 index f084c80bf3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/BubbleSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/CallExternalTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/CallExternalTest/test.xls deleted file mode 100644 index 5f50cd750b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/CallExternalTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/Caller0425Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/Caller0425Test/test.xls deleted file mode 100644 index c070285267..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/Caller0425Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/Caller0425Test/test1.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/Caller0425Test/test1.xls deleted file mode 100644 index ec60742065..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/Caller0425Test/test1.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/Caller0425Test/test2.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/Caller0425Test/test2.xls deleted file mode 100644 index 78cbf9fefb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/Caller0425Test/test2.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ChainFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ChainFunctionTest/test.xls deleted file mode 100644 index bd4c3ed182..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ChainFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/CheckstatusTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/CheckstatusTest/test.xls deleted file mode 100644 index cfd096e9c1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/CheckstatusTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstantViewPureTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstantViewPureTest/test.xls deleted file mode 100644 index 3f2f8b4e85..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstantViewPureTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorDefaultVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorDefaultVisibilityTest/test.xls deleted file mode 100644 index 768b6ad43b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorDefaultVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorDeprecatedElementTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorDeprecatedElementTest/test.xls deleted file mode 100644 index a206dc5cba..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorDeprecatedElementTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorInternalDeclaractionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorInternalDeclaractionTest/test.xls deleted file mode 100644 index 21f01a55f7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorInternalDeclaractionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorInternalVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorInternalVisibilityTest/test.xls deleted file mode 100644 index f6a4c7cf52..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorInternalVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorPublicDeclaractionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorPublicDeclaractionTest/test.xls deleted file mode 100644 index 425b77ce5d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorPublicDeclaractionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorPublicVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorPublicVisibilityTest/test.xls deleted file mode 100644 index d06f8c79a6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ConstructorPublicVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ContractAdressTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ContractAdressTest/test.xls deleted file mode 100644 index ea0276c9f5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ContractAdressTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ContractAndAddressFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ContractAndAddressFunctionTest/test.xls deleted file mode 100644 index eba0283932..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ContractAndAddressFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ContractArrayTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ContractArrayTest/test.xls deleted file mode 100644 index bd88753c21..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ContractArrayTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ControlTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ControlTest/test.xls deleted file mode 100644 index ab240c2f51..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ControlTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/CreateContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/CreateContractTest/test.xls deleted file mode 100644 index 6a2d21441c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/CreateContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/CreationCodeTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/CreationCodeTypeTest/test.xls deleted file mode 100644 index c5feb5ee32..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/CreationCodeTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DataLocationTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DataLocationTest/test.xls deleted file mode 100644 index 97de26cfa7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DataLocationTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DecimalLiteralsChangeByteDeprecatedTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DecimalLiteralsChangeByteDeprecatedTypeTest/test.xls deleted file mode 100644 index 6719423a00..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DecimalLiteralsChangeByteDeprecatedTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DelegatecallCaller050Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DelegatecallCaller050Test/test.xls deleted file mode 100644 index 76b7cd32bb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DelegatecallCaller050Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DelegatecallCallerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DelegatecallCallerTest/test.xls deleted file mode 100644 index 860c513e33..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DelegatecallCallerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DeleteDemoTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DeleteDemoTest/test.xls deleted file mode 100644 index 9c18ecf715..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DeleteDemoTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DeprecatedFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DeprecatedFunctionsTest/test.xls deleted file mode 100644 index 3ac44baa1c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DeprecatedFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DisallowYearsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DisallowYearsTest/test.xls deleted file mode 100644 index 91146a7cb1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DisallowYearsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DoWhileCheckTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DoWhileCheckTest/test.xls deleted file mode 100644 index ff70495b71..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DoWhileCheckTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DoWhileErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DoWhileErrorTest/test.xls deleted file mode 100644 index a20065b263..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/DoWhileErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ERC200412TokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ERC200412TokenTest/test.xls deleted file mode 100644 index 28dba014da..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ERC200412TokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ERC200513TokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ERC200513TokenTest/test.xls deleted file mode 100644 index e383a84ecf..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ERC200513TokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EVMVIDTokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EVMVIDTokenTest/test.xls deleted file mode 100644 index fd81eb76f9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EVMVIDTokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ErrorParamConstructorDeprecatedElementTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ErrorParamConstructorDeprecatedElementTest/test.xls deleted file mode 100644 index 0d67263368..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ErrorParamConstructorDeprecatedElementTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EventCallContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EventCallContractTest/test.xls deleted file mode 100644 index bb7c77a520..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EventCallContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EventIndexedContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EventIndexedContractTest/test.xls deleted file mode 100644 index be23610b4b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EventIndexedContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EventNegativeValueTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EventNegativeValueTest/test.xls deleted file mode 100644 index a3c543df96..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EventNegativeValueTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EventTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EventTypeContractTest/test.xls deleted file mode 100644 index c7f3af809c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/EventTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FallbackDeclaractionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FallbackDeclaractionTest/test.xls deleted file mode 100644 index d409dba8aa..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FallbackDeclaractionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FallbackTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FallbackTest/test.xls deleted file mode 100644 index bc3313e841..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FallbackTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ForErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ForErrorTest/test.xls deleted file mode 100644 index 9530d7d99f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ForErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FunctionDeclaractionTest/test1.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FunctionDeclaractionTest/test1.xls deleted file mode 100644 index 9c911c1455..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FunctionDeclaractionTest/test1.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FunctionDeclaractionTest/test2.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FunctionDeclaractionTest/test2.xls deleted file mode 100644 index 8f70f5f24f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FunctionDeclaractionTest/test2.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FunctionParamTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FunctionParamTest/test.xls deleted file mode 100644 index 9dddee597e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/FunctionParamTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/GeneratorPreTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/GeneratorPreTest/test.xls deleted file mode 100644 index c57033b09a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/GeneratorPreTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/GetLibraryAddressTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/GetLibraryAddressTest/test.xls deleted file mode 100644 index 0ebe0d5708..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/GetLibraryAddressTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/GetterTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/GetterTest/test.xls deleted file mode 100644 index bdbbc7a6cc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/GetterTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/GuessingTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/GuessingTest/test.xls deleted file mode 100644 index 676ef26c7b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/GuessingTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/HexLiteralsChangeByteTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/HexLiteralsChangeByteTest/test.xls deleted file mode 100644 index a7eda578a2..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/HexLiteralsChangeByteTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/IfErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/IfErrorTest/test.xls deleted file mode 100644 index c1e3287323..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/IfErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractAMutipleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractAMutipleTest/test.xls deleted file mode 100644 index 8060a2b37d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractAMutipleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractBMutipleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractBMutipleTest/test.xls deleted file mode 100644 index e7ee1b9fd1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractBMutipleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractOverloadComplexTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractOverloadComplexTest/test.xls deleted file mode 100644 index e4132d2530..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractOverloadComplexTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractOverloadTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractOverloadTest/test.xls deleted file mode 100644 index 85102fba30..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractOverloadTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractPassParamTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractPassParamTest/test.xls deleted file mode 100644 index 2e04887af4..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritContractPassParamTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritanceModifierTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritanceModifierTest/test.xls deleted file mode 100644 index abbe429e0a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InheritanceModifierTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InsertSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InsertSortTest/test.xls deleted file mode 100644 index 589b7de133..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InsertSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterTest/test.xls deleted file mode 100644 index 965fa7b307..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceContractALimitTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceContractALimitTest/test.xls deleted file mode 100644 index e8bc95ae7a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceContractALimitTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceContractBLimitEnumTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceContractBLimitEnumTest/test.xls deleted file mode 100644 index e40e7f98f8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceContractBLimitEnumTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceContractBLimitStructTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceContractBLimitStructTest/test.xls deleted file mode 100644 index 38990bc406..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceContractBLimitStructTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceContractInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceContractInhertTest/test.xls deleted file mode 100644 index ef7b454e68..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceContractInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceEnableStructAndenumImplTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceEnableStructAndenumImplTest/test.xls deleted file mode 100644 index 72964b1ebf..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InterfaceEnableStructAndenumImplTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InternalCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InternalCallTest/test.xls deleted file mode 100644 index 27ea6c0f89..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/InternalCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LibraryStaticUsingTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LibraryStaticUsingTest/test.xls deleted file mode 100644 index 262c084018..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LibraryStaticUsingTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LibraryUsingForAllTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LibraryUsingForAllTest/test.xls deleted file mode 100644 index b4457e7013..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LibraryUsingForAllTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LibraryUsingForTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LibraryUsingForTest/test.xls deleted file mode 100644 index caec537e27..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LibraryUsingForTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LoopCallOfViewTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LoopCallOfViewTest/test.xls deleted file mode 100644 index 7b8d66faad..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LoopCallOfViewTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LoopCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LoopCallTest/test.xls deleted file mode 100644 index d5242e4d4c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/LoopCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/MappingArrayDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/MappingArrayDataTypeContractTest/test.xls deleted file mode 100644 index 7e134a9716..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/MappingArrayDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/MappingDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/MappingDataTypeContractTest/test.xls deleted file mode 100644 index f1803176f3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/MappingDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/MathAndCryptographicFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/MathAndCryptographicFunctionsTest/test.xls deleted file mode 100644 index 2e4aa4dea6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/MathAndCryptographicFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ModifiersTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ModifiersTest/test.xls deleted file mode 100644 index 68f30dc549..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ModifiersTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/MulicPointBaseConstructorWay2Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/MulicPointBaseConstructorWay2Test/test.xls deleted file mode 100644 index 371af6e4b7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/MulicPointBaseConstructorWay2Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/NamedCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/NamedCallTest/test.xls deleted file mode 100644 index 913500db7f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/NamedCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/NewSecPledgeApplyManagerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/NewSecPledgeApplyManagerTest/test.xls deleted file mode 100644 index dd4a09bbc0..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/NewSecPledgeApplyManagerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/OrderDaoTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/OrderDaoTest/test.xls deleted file mode 100644 index a72f2ab227..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/OrderDaoTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/OverloadTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/OverloadTest/test.xls deleted file mode 100644 index 50ef1e14fc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/OverloadTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PayableTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PayableTest/test.xls deleted file mode 100644 index e4b744dc65..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PayableTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PlatONTokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PlatONTokenTest/test.xls deleted file mode 100644 index 09858535f6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PlatONTokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PlatONTransferTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PlatONTransferTest/test.xls deleted file mode 100644 index 30abb17806..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PlatONTransferTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PlatonInnerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PlatonInnerTest/test.xls deleted file mode 100644 index 6dead6b824..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PlatonInnerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PlatonUnitTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PlatonUnitTest/test.xls deleted file mode 100644 index c7bcf19ef3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PlatonUnitTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PramaAndReturnsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PramaAndReturnsTest/test.xls deleted file mode 100644 index 8e83b8f9fc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PramaAndReturnsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PrecompiledTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PrecompiledTest/test.xls deleted file mode 100644 index ad5b7ee8e4..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PrecompiledTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PublicCoverExternalTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PublicCoverExternalTest/test.xls deleted file mode 100644 index 5e6756dbdb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/PublicCoverExternalTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/QuickSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/QuickSortTest/test.xls deleted file mode 100644 index 3d1dc7e4d9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/QuickSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RecursionCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RecursionCallTest/test.xls deleted file mode 100644 index 1771649931..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RecursionCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RecursiveStorageMemoryComplexTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RecursiveStorageMemoryComplexTest/test.xls deleted file mode 100644 index 13afaa40bb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RecursiveStorageMemoryComplexTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeArrayComplexTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeArrayComplexTest/test.xls deleted file mode 100644 index 6682be2531..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeArrayComplexTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeArrayMethodTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeArrayMethodTest/test.xls deleted file mode 100644 index 6869bb4279..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeArrayMethodTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeArrayOperatorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeArrayOperatorTest/test.xls deleted file mode 100644 index 68eb8cd716..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeArrayOperatorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeMultiArrayContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeMultiArrayContractTest/test.xls deleted file mode 100644 index 5bb503d54d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeMultiArrayContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeSetArrayContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeSetArrayContractTest/test.xls deleted file mode 100644 index e0bdcdbe1f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeSetArrayContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeStructContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeStructContractTest/test.xls deleted file mode 100644 index 82a81796f9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeStructContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeStructDeleteContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeStructDeleteContractTest/test.xls deleted file mode 100644 index ea4449cfd1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeStructDeleteContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeStructRecursiveContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeStructRecursiveContractTest/test.xls deleted file mode 100644 index 59a40f7c43..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ReferenceDataTypeStructRecursiveContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RequireContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RequireContractTest/test.xls deleted file mode 100644 index f4dc681744..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RequireContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RequireHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RequireHandleTest/test.xls deleted file mode 100644 index 7cc4fc5309..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RequireHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RequireMessageHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RequireMessageHandleTest/test.xls deleted file mode 100644 index 593c4bca35..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RequireMessageHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RevertContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RevertContractTest/test.xls deleted file mode 100644 index 8a3173fbfb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RevertContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RevertHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RevertHandleTest/test.xls deleted file mode 100644 index e1cf5aea0f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RevertHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RuntimeCodeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RuntimeCodeTest/test.xls deleted file mode 100644 index 52e4561c94..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/RuntimeCodeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SafeMathMockTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SafeMathMockTest/test.xls deleted file mode 100644 index 662bd16f1b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SafeMathMockTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SameNameConstructorDefaultVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SameNameConstructorDefaultVisibilityTest/test.xls deleted file mode 100644 index e2b1b2cace..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SameNameConstructorDefaultVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SameNameConstructorInternalVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SameNameConstructorInternalVisibilityTest/test.xls deleted file mode 100644 index e730d3453d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SameNameConstructorInternalVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SameNameConstructorPublicVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SameNameConstructorPublicVisibilityTest/test.xls deleted file mode 100644 index 9f04ed4ed8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SameNameConstructorPublicVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SelectorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SelectorTest/test.xls deleted file mode 100644 index 87e18a6012..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SelectorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SelfdestructFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SelfdestructFunctionsTest/test.xls deleted file mode 100644 index 9c140a45fe..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SelfdestructFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/Sha3AndKeccake256Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/Sha3AndKeccake256Test/test.xls deleted file mode 100644 index fd165e332e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/Sha3AndKeccake256Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ShortCircuitErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ShortCircuitErrorTest/test.xls deleted file mode 100644 index 5437fcfc04..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ShortCircuitErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SimpleStorageTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SimpleStorageTest/test.xls deleted file mode 100644 index 6fae685248..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SimpleStorageTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SpaceComplexityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SpaceComplexityTest/test.xls deleted file mode 100644 index 25bcbf557e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SpaceComplexityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/StorageLocationTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/StorageLocationTest/test.xls deleted file mode 100644 index 8654d06edb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/StorageLocationTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/StringmappingSupportTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/StringmappingSupportTest/test.xls deleted file mode 100644 index 372ef910f0..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/StringmappingSupportTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/StringmappingSupportTest/test1.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/StringmappingSupportTest/test1.xls deleted file mode 100644 index 4ea0c9649c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/StringmappingSupportTest/test1.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/StructDataTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/StructDataTypeTest/test.xls deleted file mode 100644 index bbd25ba1dc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/StructDataTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SuicideAndSelfdestructTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SuicideAndSelfdestructTest/test.xls deleted file mode 100644 index 3557d037ff..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SuicideAndSelfdestructTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SumAssemblyTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SumAssemblyTest/test.xls deleted file mode 100644 index 17eff774da..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/SumAssemblyTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ThreeContractCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ThreeContractCallTest/test.xls deleted file mode 100644 index 953db230c7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/ThreeContractCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TimeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TimeTest/test.xls deleted file mode 100644 index 96e23cd7f1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TimeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TokenTransferTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TokenTransferTest/test.xls deleted file mode 100644 index ee24551629..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TokenTransferTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TypeCastTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TypeCastTest/test.xls deleted file mode 100644 index daca5165c5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TypeCastTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TypeConversionBytesToUintContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TypeConversionBytesToUintContractTest/test.xls deleted file mode 100644 index f48cbdcfdc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TypeConversionBytesToUintContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TypeConversionContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TypeConversionContractTest/test.xls deleted file mode 100644 index 71fdacdd27..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TypeConversionContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TypeNameTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TypeNameTest/test.xls deleted file mode 100644 index 30ee52072f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/TypeNameTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/UserLibUseMappingTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/UserLibUseMappingTest/test.xls deleted file mode 100644 index 41b37079bb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/UserLibUseMappingTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/VisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/VisibilityTest/test.xls deleted file mode 100644 index 6c63bd487d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/VisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/WhileErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/WhileErrorTest/test.xls deleted file mode 100644 index 3d2c16bd10..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/WhileErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/WithBackCallerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/WithBackCallerTest/test.xls deleted file mode 100644 index 8a4242964c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/WithBackCallerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/msgSenderBelongToPayableTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/msgSenderBelongToPayableTest/test.xls deleted file mode 100644 index 164e1b6942..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.5.17/msgSenderBelongToPayableTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ABIFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ABIFunctionsTest/test.xls deleted file mode 100644 index 79cec59dc5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ABIFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractAInhertNoImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractAInhertNoImpTest/test.xls deleted file mode 100644 index d54ac894a1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractAInhertNoImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractANoImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractANoImpTest/test.xls deleted file mode 100644 index beb1b27572..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractANoImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractAPartImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractAPartImpTest/test.xls deleted file mode 100644 index e46c0e7f86..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractAPartImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractBInhertAllImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractBInhertAllImpTest/test.xls deleted file mode 100644 index e0ec9eafdc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractBInhertAllImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractBMultipleInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractBMultipleInhertTest/test.xls deleted file mode 100644 index 1423eca59b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractBMultipleInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractCInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractCInhertTest/test.xls deleted file mode 100644 index 1fbc4b5354..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractCInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractDInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractDInhertTest/test.xls deleted file mode 100644 index a594052f56..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AbstractContractDInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AddressBalanceTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AddressBalanceTest/test.xls deleted file mode 100644 index bda4af126b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AddressBalanceTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AddressFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AddressFunctionsTest/test.xls deleted file mode 100644 index 2b72e54df6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AddressFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AssemblyReturnsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AssemblyReturnsTest/test.xls deleted file mode 100644 index 501e012e29..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AssemblyReturnsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AssertContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AssertContractTest/test.xls deleted file mode 100644 index abd57c1d43..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AssertContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AssertHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AssertHandleTest/test.xls deleted file mode 100644 index f53a6fd71e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AssertHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AtomicSwapTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AtomicSwapTest/test.xls deleted file mode 100644 index f254999065..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/AtomicSwapTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BallotTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BallotTest/test.xls deleted file mode 100644 index 72bb0877f5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BallotTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeConstantAddressTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeConstantAddressTest/test.xls deleted file mode 100644 index 839492650a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeConstantAddressTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeConstantContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeConstantContractTest/test.xls deleted file mode 100644 index 52dc4879ec..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeConstantContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeContractTest/test.xls deleted file mode 100644 index 8ee2499b78..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeDeleteContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeDeleteContractTest/test.xls deleted file mode 100644 index 94cde4a50c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeDeleteContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeIntOverTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeIntOverTest/test.xls deleted file mode 100644 index f7b150b4c8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeIntOverTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeUintOverTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeUintOverTest/test.xls deleted file mode 100644 index 2c77450b08..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BasicDataTypeUintOverTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BlockTransactionPropertiesFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BlockTransactionPropertiesFunctionsTest/test.xls deleted file mode 100644 index 99fe7a558c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BlockTransactionPropertiesFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BlockhashTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BlockhashTest/test.xls deleted file mode 100644 index f31a7acf41..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BlockhashTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BubbleSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BubbleSortTest/test.xls deleted file mode 100644 index f084c80bf3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/BubbleSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/CallExternalTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/CallExternalTest/test.xls deleted file mode 100644 index 5f50cd750b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/CallExternalTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/Caller0425Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/Caller0425Test/test.xls deleted file mode 100644 index c070285267..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/Caller0425Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/Caller0425Test/test1.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/Caller0425Test/test1.xls deleted file mode 100644 index ec60742065..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/Caller0425Test/test1.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/Caller0425Test/test2.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/Caller0425Test/test2.xls deleted file mode 100644 index 78cbf9fefb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/Caller0425Test/test2.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ChainFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ChainFunctionTest/test.xls deleted file mode 100644 index bd4c3ed182..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ChainFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/CheckstatusTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/CheckstatusTest/test.xls deleted file mode 100644 index cfd096e9c1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/CheckstatusTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstantViewPureTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstantViewPureTest/test.xls deleted file mode 100644 index 3f2f8b4e85..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstantViewPureTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorDefaultVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorDefaultVisibilityTest/test.xls deleted file mode 100644 index 768b6ad43b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorDefaultVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorDeprecatedElementTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorDeprecatedElementTest/test.xls deleted file mode 100644 index a206dc5cba..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorDeprecatedElementTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorInternalDeclaractionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorInternalDeclaractionTest/test.xls deleted file mode 100644 index 21f01a55f7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorInternalDeclaractionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorInternalVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorInternalVisibilityTest/test.xls deleted file mode 100644 index f6a4c7cf52..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorInternalVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorPublicDeclaractionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorPublicDeclaractionTest/test.xls deleted file mode 100644 index 425b77ce5d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorPublicDeclaractionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorPublicVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorPublicVisibilityTest/test.xls deleted file mode 100644 index d06f8c79a6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ConstructorPublicVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ContractAdressTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ContractAdressTest/test.xls deleted file mode 100644 index ea0276c9f5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ContractAdressTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ContractAndAddressFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ContractAndAddressFunctionTest/test.xls deleted file mode 100644 index eba0283932..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ContractAndAddressFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ContractArrayTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ContractArrayTest/test.xls deleted file mode 100644 index bd88753c21..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ContractArrayTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ControlTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ControlTest/test.xls deleted file mode 100644 index ab240c2f51..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ControlTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/CreateContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/CreateContractTest/test.xls deleted file mode 100644 index 6a2d21441c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/CreateContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/CreationCodeTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/CreationCodeTypeTest/test.xls deleted file mode 100644 index c5feb5ee32..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/CreationCodeTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DataLocationTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DataLocationTest/test.xls deleted file mode 100644 index 97de26cfa7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DataLocationTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DecimalLiteralsChangeByteDeprecatedTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DecimalLiteralsChangeByteDeprecatedTypeTest/test.xls deleted file mode 100644 index 6719423a00..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DecimalLiteralsChangeByteDeprecatedTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DelegatecallCaller050Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DelegatecallCaller050Test/test.xls deleted file mode 100644 index 76b7cd32bb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DelegatecallCaller050Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DelegatecallCallerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DelegatecallCallerTest/test.xls deleted file mode 100644 index 860c513e33..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DelegatecallCallerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DeleteDemoTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DeleteDemoTest/test.xls deleted file mode 100644 index 9c18ecf715..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DeleteDemoTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DeprecatedFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DeprecatedFunctionsTest/test.xls deleted file mode 100644 index 3ac44baa1c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DeprecatedFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DisallowYearsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DisallowYearsTest/test.xls deleted file mode 100644 index 91146a7cb1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DisallowYearsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DoWhileCheckTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DoWhileCheckTest/test.xls deleted file mode 100644 index ff70495b71..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DoWhileCheckTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DoWhileErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DoWhileErrorTest/test.xls deleted file mode 100644 index a20065b263..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/DoWhileErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ERC200412TokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ERC200412TokenTest/test.xls deleted file mode 100644 index 28dba014da..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ERC200412TokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ERC200513TokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ERC200513TokenTest/test.xls deleted file mode 100644 index e383a84ecf..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ERC200513TokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EVMVIDTokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EVMVIDTokenTest/test.xls deleted file mode 100644 index fd81eb76f9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EVMVIDTokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ErrorParamConstructorDeprecatedElementTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ErrorParamConstructorDeprecatedElementTest/test.xls deleted file mode 100644 index 0d67263368..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ErrorParamConstructorDeprecatedElementTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EventCallContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EventCallContractTest/test.xls deleted file mode 100644 index bb7c77a520..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EventCallContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EventIndexedContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EventIndexedContractTest/test.xls deleted file mode 100644 index be23610b4b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EventIndexedContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EventNegativeValueTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EventNegativeValueTest/test.xls deleted file mode 100644 index a3c543df96..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EventNegativeValueTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EventTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EventTypeContractTest/test.xls deleted file mode 100644 index c7f3af809c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/EventTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FallbackDeclaractionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FallbackDeclaractionTest/test.xls deleted file mode 100644 index d409dba8aa..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FallbackDeclaractionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FallbackTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FallbackTest/test.xls deleted file mode 100644 index bc3313e841..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FallbackTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ForErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ForErrorTest/test.xls deleted file mode 100644 index 9530d7d99f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ForErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FunctionDeclaractionTest/test1.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FunctionDeclaractionTest/test1.xls deleted file mode 100644 index 9c911c1455..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FunctionDeclaractionTest/test1.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FunctionDeclaractionTest/test2.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FunctionDeclaractionTest/test2.xls deleted file mode 100644 index 8f70f5f24f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FunctionDeclaractionTest/test2.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FunctionParamTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FunctionParamTest/test.xls deleted file mode 100644 index 9dddee597e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/FunctionParamTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/GeneratorPreTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/GeneratorPreTest/test.xls deleted file mode 100644 index a330ba7d9e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/GeneratorPreTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/GetLibraryAddressTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/GetLibraryAddressTest/test.xls deleted file mode 100644 index 0ebe0d5708..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/GetLibraryAddressTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/GetterTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/GetterTest/test.xls deleted file mode 100644 index bdbbc7a6cc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/GetterTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/GuessingTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/GuessingTest/test.xls deleted file mode 100644 index 676ef26c7b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/GuessingTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/HexLiteralsChangeByteTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/HexLiteralsChangeByteTest/test.xls deleted file mode 100644 index a7eda578a2..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/HexLiteralsChangeByteTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/IfErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/IfErrorTest/test.xls deleted file mode 100644 index c1e3287323..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/IfErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractAMutipleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractAMutipleTest/test.xls deleted file mode 100644 index 8060a2b37d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractAMutipleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractBMutipleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractBMutipleTest/test.xls deleted file mode 100644 index e7ee1b9fd1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractBMutipleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractOverloadComplexTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractOverloadComplexTest/test.xls deleted file mode 100644 index e4132d2530..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractOverloadComplexTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractOverloadTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractOverloadTest/test.xls deleted file mode 100644 index 85102fba30..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractOverloadTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractPassParamTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractPassParamTest/test.xls deleted file mode 100644 index 2e04887af4..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritContractPassParamTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritanceModifierTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritanceModifierTest/test.xls deleted file mode 100644 index abbe429e0a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InheritanceModifierTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InsertSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InsertSortTest/test.xls deleted file mode 100644 index 589b7de133..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InsertSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterTest/test.xls deleted file mode 100644 index 965fa7b307..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceContractALimitTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceContractALimitTest/test.xls deleted file mode 100644 index e8bc95ae7a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceContractALimitTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceContractBLimitEnumTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceContractBLimitEnumTest/test.xls deleted file mode 100644 index e40e7f98f8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceContractBLimitEnumTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceContractBLimitStructTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceContractBLimitStructTest/test.xls deleted file mode 100644 index 38990bc406..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceContractBLimitStructTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceContractInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceContractInhertTest/test.xls deleted file mode 100644 index ef7b454e68..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceContractInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceEnableStructAndenumImplTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceEnableStructAndenumImplTest/test.xls deleted file mode 100644 index 72964b1ebf..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InterfaceEnableStructAndenumImplTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InternalCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InternalCallTest/test.xls deleted file mode 100644 index 27ea6c0f89..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/InternalCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LibraryStaticUsingTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LibraryStaticUsingTest/test.xls deleted file mode 100644 index 262c084018..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LibraryStaticUsingTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LibraryUsingForAllTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LibraryUsingForAllTest/test.xls deleted file mode 100644 index b4457e7013..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LibraryUsingForAllTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LibraryUsingForTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LibraryUsingForTest/test.xls deleted file mode 100644 index caec537e27..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LibraryUsingForTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LoopCallOfViewTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LoopCallOfViewTest/test.xls deleted file mode 100644 index 7b8d66faad..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LoopCallOfViewTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LoopCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LoopCallTest/test.xls deleted file mode 100644 index d5242e4d4c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/LoopCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/MappingArrayDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/MappingArrayDataTypeContractTest/test.xls deleted file mode 100644 index 7e134a9716..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/MappingArrayDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/MappingDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/MappingDataTypeContractTest/test.xls deleted file mode 100644 index f1803176f3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/MappingDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/MathAndCryptographicFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/MathAndCryptographicFunctionsTest/test.xls deleted file mode 100644 index 2e4aa4dea6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/MathAndCryptographicFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ModifiersTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ModifiersTest/test.xls deleted file mode 100644 index 68f30dc549..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ModifiersTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/MulicPointBaseConstructorWay2Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/MulicPointBaseConstructorWay2Test/test.xls deleted file mode 100644 index 371af6e4b7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/MulicPointBaseConstructorWay2Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/NamedCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/NamedCallTest/test.xls deleted file mode 100644 index 913500db7f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/NamedCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/NewSecPledgeApplyManagerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/NewSecPledgeApplyManagerTest/test.xls deleted file mode 100644 index dd4a09bbc0..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/NewSecPledgeApplyManagerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/OrderDaoTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/OrderDaoTest/test.xls deleted file mode 100644 index a72f2ab227..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/OrderDaoTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/OverloadTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/OverloadTest/test.xls deleted file mode 100644 index 50ef1e14fc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/OverloadTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PayableTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PayableTest/test.xls deleted file mode 100644 index e4b744dc65..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PayableTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PlatONTokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PlatONTokenTest/test.xls deleted file mode 100644 index 09858535f6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PlatONTokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PlatONTransferTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PlatONTransferTest/test.xls deleted file mode 100644 index 30abb17806..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PlatONTransferTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PlatonInnerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PlatonInnerTest/test.xls deleted file mode 100644 index 6dead6b824..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PlatonInnerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PlatonUnitTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PlatonUnitTest/test.xls deleted file mode 100644 index c7bcf19ef3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PlatonUnitTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PramaAndReturnsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PramaAndReturnsTest/test.xls deleted file mode 100644 index 8e83b8f9fc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PramaAndReturnsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PrecompiledTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PrecompiledTest/test.xls deleted file mode 100644 index ad5b7ee8e4..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PrecompiledTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PublicCoverExternalTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PublicCoverExternalTest/test.xls deleted file mode 100644 index 5e6756dbdb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/PublicCoverExternalTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/QuickSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/QuickSortTest/test.xls deleted file mode 100644 index 3d1dc7e4d9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/QuickSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RecursionCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RecursionCallTest/test.xls deleted file mode 100644 index 1771649931..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RecursionCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RecursiveStorageMemoryComplexTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RecursiveStorageMemoryComplexTest/test.xls deleted file mode 100644 index 13afaa40bb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RecursiveStorageMemoryComplexTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeArrayComplexTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeArrayComplexTest/test.xls deleted file mode 100644 index 6682be2531..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeArrayComplexTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeArrayMethodTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeArrayMethodTest/test.xls deleted file mode 100644 index 6869bb4279..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeArrayMethodTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeArrayOperatorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeArrayOperatorTest/test.xls deleted file mode 100644 index 68eb8cd716..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeArrayOperatorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeMultiArrayContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeMultiArrayContractTest/test.xls deleted file mode 100644 index 5bb503d54d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeMultiArrayContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeSetArrayContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeSetArrayContractTest/test.xls deleted file mode 100644 index e0bdcdbe1f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeSetArrayContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeStructContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeStructContractTest/test.xls deleted file mode 100644 index 82a81796f9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeStructContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeStructDeleteContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeStructDeleteContractTest/test.xls deleted file mode 100644 index ea4449cfd1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeStructDeleteContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeStructRecursiveContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeStructRecursiveContractTest/test.xls deleted file mode 100644 index 59a40f7c43..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ReferenceDataTypeStructRecursiveContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RequireContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RequireContractTest/test.xls deleted file mode 100644 index f4dc681744..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RequireContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RequireHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RequireHandleTest/test.xls deleted file mode 100644 index 7cc4fc5309..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RequireHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RequireMessageHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RequireMessageHandleTest/test.xls deleted file mode 100644 index 593c4bca35..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RequireMessageHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RevertContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RevertContractTest/test.xls deleted file mode 100644 index 8a3173fbfb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RevertContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RevertHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RevertHandleTest/test.xls deleted file mode 100644 index e1cf5aea0f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RevertHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RuntimeCodeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RuntimeCodeTest/test.xls deleted file mode 100644 index 52e4561c94..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/RuntimeCodeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SafeMathMockTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SafeMathMockTest/test.xls deleted file mode 100644 index 662bd16f1b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SafeMathMockTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SameNameConstructorDefaultVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SameNameConstructorDefaultVisibilityTest/test.xls deleted file mode 100644 index e2b1b2cace..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SameNameConstructorDefaultVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SameNameConstructorInternalVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SameNameConstructorInternalVisibilityTest/test.xls deleted file mode 100644 index e730d3453d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SameNameConstructorInternalVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SameNameConstructorPublicVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SameNameConstructorPublicVisibilityTest/test.xls deleted file mode 100644 index 9f04ed4ed8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SameNameConstructorPublicVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SelectorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SelectorTest/test.xls deleted file mode 100644 index 87e18a6012..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SelectorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SelfdestructFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SelfdestructFunctionsTest/test.xls deleted file mode 100644 index 9c140a45fe..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SelfdestructFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/Sha3AndKeccake256Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/Sha3AndKeccake256Test/test.xls deleted file mode 100644 index fd165e332e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/Sha3AndKeccake256Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ShortCircuitErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ShortCircuitErrorTest/test.xls deleted file mode 100644 index 5437fcfc04..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ShortCircuitErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SimpleStorageTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SimpleStorageTest/test.xls deleted file mode 100644 index 6fae685248..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SimpleStorageTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SpaceComplexityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SpaceComplexityTest/test.xls deleted file mode 100644 index 25bcbf557e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SpaceComplexityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/StorageLocationTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/StorageLocationTest/test.xls deleted file mode 100644 index 8654d06edb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/StorageLocationTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/StringmappingSupportTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/StringmappingSupportTest/test.xls deleted file mode 100644 index 372ef910f0..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/StringmappingSupportTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/StringmappingSupportTest/test1.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/StringmappingSupportTest/test1.xls deleted file mode 100644 index 4ea0c9649c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/StringmappingSupportTest/test1.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/StructDataTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/StructDataTypeTest/test.xls deleted file mode 100644 index bbd25ba1dc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/StructDataTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SuicideAndSelfdestructTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SuicideAndSelfdestructTest/test.xls deleted file mode 100644 index 3557d037ff..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SuicideAndSelfdestructTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SumAssemblyTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SumAssemblyTest/test.xls deleted file mode 100644 index 17eff774da..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/SumAssemblyTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ThreeContractCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ThreeContractCallTest/test.xls deleted file mode 100644 index 953db230c7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/ThreeContractCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TimeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TimeTest/test.xls deleted file mode 100644 index 96e23cd7f1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TimeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TokenTransferTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TokenTransferTest/test.xls deleted file mode 100644 index ee24551629..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TokenTransferTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TypeCastTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TypeCastTest/test.xls deleted file mode 100644 index daca5165c5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TypeCastTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TypeConversionBytesToUintContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TypeConversionBytesToUintContractTest/test.xls deleted file mode 100644 index f48cbdcfdc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TypeConversionBytesToUintContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TypeConversionContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TypeConversionContractTest/test.xls deleted file mode 100644 index 71fdacdd27..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TypeConversionContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TypeNameTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TypeNameTest/test.xls deleted file mode 100644 index 30ee52072f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/TypeNameTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/UserLibUseMappingTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/UserLibUseMappingTest/test.xls deleted file mode 100644 index 41b37079bb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/UserLibUseMappingTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/VisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/VisibilityTest/test.xls deleted file mode 100644 index 6c63bd487d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/VisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/WhileErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/WhileErrorTest/test.xls deleted file mode 100644 index 3d2c16bd10..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/WhileErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/WithBackCallerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/WithBackCallerTest/test.xls deleted file mode 100644 index 8a4242964c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/WithBackCallerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/msgSenderBelongToPayableTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/msgSenderBelongToPayableTest/test.xls deleted file mode 100644 index 164e1b6942..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.6.12/msgSenderBelongToPayableTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ABIFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ABIFunctionsTest/test.xls deleted file mode 100644 index d207e2ee88..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ABIFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractAInhertNoImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractAInhertNoImpTest/test.xls deleted file mode 100644 index f822529d32..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractAInhertNoImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractANoImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractANoImpTest/test.xls deleted file mode 100644 index beb1b27572..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractANoImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractAPartImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractAPartImpTest/test.xls deleted file mode 100644 index e46c0e7f86..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractAPartImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractBInhertAllImpTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractBInhertAllImpTest/test.xls deleted file mode 100644 index e0ec9eafdc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractBInhertAllImpTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractBMultipleInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractBMultipleInhertTest/test.xls deleted file mode 100644 index 1423eca59b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractBMultipleInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractCInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractCInhertTest/test.xls deleted file mode 100644 index 1fbc4b5354..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractCInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractDInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractDInhertTest/test.xls deleted file mode 100644 index a594052f56..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AbstractContractDInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AddressBalanceTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AddressBalanceTest/test.xls deleted file mode 100644 index bda4af126b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AddressBalanceTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AddressFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AddressFunctionsTest/test.xls deleted file mode 100644 index 2b72e54df6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AddressFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AssemblyReturnsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AssemblyReturnsTest/test.xls deleted file mode 100644 index 501e012e29..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AssemblyReturnsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AssertContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AssertContractTest/test.xls deleted file mode 100644 index abd57c1d43..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AssertContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AssertHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AssertHandleTest/test.xls deleted file mode 100644 index f53a6fd71e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AssertHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AtomicSwapTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AtomicSwapTest/test.xls deleted file mode 100644 index c29bd50f4e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/AtomicSwapTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BallotTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BallotTest/test.xls deleted file mode 100644 index 72bb0877f5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BallotTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeConstantAddressTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeConstantAddressTest/test.xls deleted file mode 100644 index 839492650a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeConstantAddressTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeConstantContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeConstantContractTest/test.xls deleted file mode 100644 index 52dc4879ec..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeConstantContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeContractTest/test.xls deleted file mode 100644 index 8ee2499b78..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeDeleteContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeDeleteContractTest/test.xls deleted file mode 100644 index 94cde4a50c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeDeleteContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeIntOverTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeIntOverTest/test.xls deleted file mode 100644 index f7b150b4c8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeIntOverTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeUintOverTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeUintOverTest/test.xls deleted file mode 100644 index 2c77450b08..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BasicDataTypeUintOverTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BlockTransactionPropertiesFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BlockTransactionPropertiesFunctionsTest/test.xls deleted file mode 100644 index 99fe7a558c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BlockTransactionPropertiesFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BlockhashTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BlockhashTest/test.xls deleted file mode 100644 index f31a7acf41..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BlockhashTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BubbleSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BubbleSortTest/test.xls deleted file mode 100644 index f084c80bf3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/BubbleSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/CallExternalTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/CallExternalTest/test.xls deleted file mode 100644 index 5f50cd750b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/CallExternalTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/Caller0425Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/Caller0425Test/test.xls deleted file mode 100644 index c070285267..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/Caller0425Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/Caller0425Test/test1.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/Caller0425Test/test1.xls deleted file mode 100644 index ec60742065..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/Caller0425Test/test1.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/Caller0425Test/test2.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/Caller0425Test/test2.xls deleted file mode 100644 index 78cbf9fefb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/Caller0425Test/test2.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ChainFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ChainFunctionTest/test.xls deleted file mode 100644 index bd4c3ed182..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ChainFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/CheckstatusTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/CheckstatusTest/test.xls deleted file mode 100644 index cfd096e9c1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/CheckstatusTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstantViewPureTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstantViewPureTest/test.xls deleted file mode 100644 index 3f2f8b4e85..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstantViewPureTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorDefaultVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorDefaultVisibilityTest/test.xls deleted file mode 100644 index 768b6ad43b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorDefaultVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorDeprecatedElementTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorDeprecatedElementTest/test.xls deleted file mode 100644 index a206dc5cba..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorDeprecatedElementTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorInternalDeclaractionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorInternalDeclaractionTest/test.xls deleted file mode 100644 index 21f01a55f7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorInternalDeclaractionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorInternalVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorInternalVisibilityTest/test.xls deleted file mode 100644 index f6a4c7cf52..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorInternalVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorPublicDeclaractionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorPublicDeclaractionTest/test.xls deleted file mode 100644 index 425b77ce5d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorPublicDeclaractionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorPublicVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorPublicVisibilityTest/test.xls deleted file mode 100644 index d06f8c79a6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ConstructorPublicVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ContractAdressTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ContractAdressTest/test.xls deleted file mode 100644 index ea0276c9f5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ContractAdressTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ContractAndAddressFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ContractAndAddressFunctionTest/test.xls deleted file mode 100644 index eba0283932..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ContractAndAddressFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ContractArrayTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ContractArrayTest/test.xls deleted file mode 100644 index bd88753c21..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ContractArrayTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ControlTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ControlTest/test.xls deleted file mode 100644 index ab240c2f51..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ControlTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/CreateContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/CreateContractTest/test.xls deleted file mode 100644 index 6a2d21441c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/CreateContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/CreationCodeTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/CreationCodeTypeTest/test.xls deleted file mode 100644 index c5feb5ee32..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/CreationCodeTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DataLocationTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DataLocationTest/test.xls deleted file mode 100644 index 97de26cfa7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DataLocationTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DecimalLiteralsChangeByteDeprecatedTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DecimalLiteralsChangeByteDeprecatedTypeTest/test.xls deleted file mode 100644 index 6719423a00..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DecimalLiteralsChangeByteDeprecatedTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DelegatecallCaller050Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DelegatecallCaller050Test/test.xls deleted file mode 100644 index 76b7cd32bb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DelegatecallCaller050Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DelegatecallCallerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DelegatecallCallerTest/test.xls deleted file mode 100644 index 860c513e33..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DelegatecallCallerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DeleteDemoTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DeleteDemoTest/test.xls deleted file mode 100644 index 9c18ecf715..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DeleteDemoTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DeprecatedFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DeprecatedFunctionsTest/test.xls deleted file mode 100644 index 3ac44baa1c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DeprecatedFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DisallowYearsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DisallowYearsTest/test.xls deleted file mode 100644 index 91146a7cb1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DisallowYearsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DoWhileCheckTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DoWhileCheckTest/test.xls deleted file mode 100644 index ff70495b71..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DoWhileCheckTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DoWhileErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DoWhileErrorTest/test.xls deleted file mode 100644 index a20065b263..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/DoWhileErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ERC200412TokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ERC200412TokenTest/test.xls deleted file mode 100644 index 28dba014da..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ERC200412TokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ERC200513TokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ERC200513TokenTest/test.xls deleted file mode 100644 index e383a84ecf..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ERC200513TokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EVMVIDTokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EVMVIDTokenTest/test.xls deleted file mode 100644 index fd81eb76f9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EVMVIDTokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ErrorParamConstructorDeprecatedElementTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ErrorParamConstructorDeprecatedElementTest/test.xls deleted file mode 100644 index 0d67263368..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ErrorParamConstructorDeprecatedElementTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EventCallContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EventCallContractTest/test.xls deleted file mode 100644 index bb7c77a520..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EventCallContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EventIndexedContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EventIndexedContractTest/test.xls deleted file mode 100644 index be23610b4b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EventIndexedContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EventNegativeValueTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EventNegativeValueTest/test.xls deleted file mode 100644 index a3c543df96..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EventNegativeValueTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EventTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EventTypeContractTest/test.xls deleted file mode 100644 index c7f3af809c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/EventTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FallbackDeclaractionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FallbackDeclaractionTest/test.xls deleted file mode 100644 index d409dba8aa..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FallbackDeclaractionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FallbackTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FallbackTest/test.xls deleted file mode 100644 index bc3313e841..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FallbackTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ForErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ForErrorTest/test.xls deleted file mode 100644 index 9530d7d99f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ForErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FunctionDeclaractionTest/test1.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FunctionDeclaractionTest/test1.xls deleted file mode 100644 index 9c911c1455..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FunctionDeclaractionTest/test1.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FunctionDeclaractionTest/test2.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FunctionDeclaractionTest/test2.xls deleted file mode 100644 index 8f70f5f24f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FunctionDeclaractionTest/test2.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FunctionParamTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FunctionParamTest/test.xls deleted file mode 100644 index 9dddee597e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/FunctionParamTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/GeneratorPreTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/GeneratorPreTest/test.xls deleted file mode 100644 index 8ce320693a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/GeneratorPreTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/GetLibraryAddressTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/GetLibraryAddressTest/test.xls deleted file mode 100644 index 0ebe0d5708..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/GetLibraryAddressTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/GetterTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/GetterTest/test.xls deleted file mode 100644 index bdbbc7a6cc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/GetterTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/GuessingTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/GuessingTest/test.xls deleted file mode 100644 index 676ef26c7b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/GuessingTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/HexLiteralsChangeByteTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/HexLiteralsChangeByteTest/test.xls deleted file mode 100644 index a7eda578a2..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/HexLiteralsChangeByteTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/IfErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/IfErrorTest/test.xls deleted file mode 100644 index c1e3287323..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/IfErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractAMutipleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractAMutipleTest/test.xls deleted file mode 100644 index 8060a2b37d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractAMutipleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractBMutipleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractBMutipleTest/test.xls deleted file mode 100644 index e7ee1b9fd1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractBMutipleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractOverloadComplexTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractOverloadComplexTest/test.xls deleted file mode 100644 index e4132d2530..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractOverloadComplexTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractOverloadTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractOverloadTest/test.xls deleted file mode 100644 index 85102fba30..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractOverloadTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractPassParamTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractPassParamTest/test.xls deleted file mode 100644 index 2e04887af4..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritContractPassParamTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritanceModifierTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritanceModifierTest/test.xls deleted file mode 100644 index abbe429e0a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InheritanceModifierTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InsertSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InsertSortTest/test.xls deleted file mode 100644 index 589b7de133..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InsertSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterTest/test.xls deleted file mode 100644 index 965fa7b307..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceContractALimitTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceContractALimitTest/test.xls deleted file mode 100644 index e8bc95ae7a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceContractALimitTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceContractBLimitEnumTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceContractBLimitEnumTest/test.xls deleted file mode 100644 index e40e7f98f8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceContractBLimitEnumTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceContractBLimitStructTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceContractBLimitStructTest/test.xls deleted file mode 100644 index 38990bc406..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceContractBLimitStructTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceContractInhertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceContractInhertTest/test.xls deleted file mode 100644 index ef7b454e68..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceContractInhertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceEnableStructAndenumImplTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceEnableStructAndenumImplTest/test.xls deleted file mode 100644 index 72964b1ebf..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InterfaceEnableStructAndenumImplTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InternalCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InternalCallTest/test.xls deleted file mode 100644 index 27ea6c0f89..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/InternalCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LibraryStaticUsingTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LibraryStaticUsingTest/test.xls deleted file mode 100644 index 262c084018..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LibraryStaticUsingTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LibraryUsingForAllTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LibraryUsingForAllTest/test.xls deleted file mode 100644 index b4457e7013..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LibraryUsingForAllTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LibraryUsingForTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LibraryUsingForTest/test.xls deleted file mode 100644 index caec537e27..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LibraryUsingForTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LoopCallOfViewTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LoopCallOfViewTest/test.xls deleted file mode 100644 index 7b8d66faad..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LoopCallOfViewTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LoopCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LoopCallTest/test.xls deleted file mode 100644 index d5242e4d4c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/LoopCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/MappingArrayDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/MappingArrayDataTypeContractTest/test.xls deleted file mode 100644 index 7e134a9716..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/MappingArrayDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/MappingDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/MappingDataTypeContractTest/test.xls deleted file mode 100644 index f1803176f3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/MappingDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/MathAndCryptographicFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/MathAndCryptographicFunctionsTest/test.xls deleted file mode 100644 index 2e4aa4dea6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/MathAndCryptographicFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ModifiersTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ModifiersTest/test.xls deleted file mode 100644 index 68f30dc549..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ModifiersTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/MulicPointBaseConstructorWay2Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/MulicPointBaseConstructorWay2Test/test.xls deleted file mode 100644 index 371af6e4b7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/MulicPointBaseConstructorWay2Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/NamedCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/NamedCallTest/test.xls deleted file mode 100644 index 913500db7f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/NamedCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/NewSecPledgeApplyManagerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/NewSecPledgeApplyManagerTest/test.xls deleted file mode 100644 index dd4a09bbc0..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/NewSecPledgeApplyManagerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/OrderDaoTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/OrderDaoTest/test.xls deleted file mode 100644 index a72f2ab227..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/OrderDaoTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/OverloadTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/OverloadTest/test.xls deleted file mode 100644 index 50ef1e14fc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/OverloadTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PayableTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PayableTest/test.xls deleted file mode 100644 index e4b744dc65..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PayableTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PlatONTokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PlatONTokenTest/test.xls deleted file mode 100644 index 09858535f6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PlatONTokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PlatONTransferTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PlatONTransferTest/test.xls deleted file mode 100644 index 30abb17806..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PlatONTransferTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PlatonInnerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PlatonInnerTest/test.xls deleted file mode 100644 index 6dead6b824..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PlatonInnerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PlatonUnitTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PlatonUnitTest/test.xls deleted file mode 100644 index c7bcf19ef3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PlatonUnitTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PramaAndReturnsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PramaAndReturnsTest/test.xls deleted file mode 100644 index 8e83b8f9fc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PramaAndReturnsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PrecompiledTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PrecompiledTest/test.xls deleted file mode 100644 index ad5b7ee8e4..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PrecompiledTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PublicCoverExternalTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PublicCoverExternalTest/test.xls deleted file mode 100644 index 5e6756dbdb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/PublicCoverExternalTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/QuickSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/QuickSortTest/test.xls deleted file mode 100644 index 3d1dc7e4d9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/QuickSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RecursionCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RecursionCallTest/test.xls deleted file mode 100644 index 1771649931..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RecursionCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RecursiveStorageMemoryComplexTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RecursiveStorageMemoryComplexTest/test.xls deleted file mode 100644 index 13afaa40bb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RecursiveStorageMemoryComplexTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeArrayComplexTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeArrayComplexTest/test.xls deleted file mode 100644 index 6682be2531..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeArrayComplexTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeArrayMethodTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeArrayMethodTest/test.xls deleted file mode 100644 index 6869bb4279..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeArrayMethodTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeArrayOperatorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeArrayOperatorTest/test.xls deleted file mode 100644 index 68eb8cd716..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeArrayOperatorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeMultiArrayContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeMultiArrayContractTest/test.xls deleted file mode 100644 index 5bb503d54d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeMultiArrayContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeSetArrayContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeSetArrayContractTest/test.xls deleted file mode 100644 index e0bdcdbe1f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeSetArrayContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeStructContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeStructContractTest/test.xls deleted file mode 100644 index 82a81796f9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeStructContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeStructDeleteContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeStructDeleteContractTest/test.xls deleted file mode 100644 index ea4449cfd1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeStructDeleteContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeStructRecursiveContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeStructRecursiveContractTest/test.xls deleted file mode 100644 index 59a40f7c43..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ReferenceDataTypeStructRecursiveContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RequireContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RequireContractTest/test.xls deleted file mode 100644 index f4dc681744..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RequireContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RequireHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RequireHandleTest/test.xls deleted file mode 100644 index 7cc4fc5309..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RequireHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RequireMessageHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RequireMessageHandleTest/test.xls deleted file mode 100644 index 593c4bca35..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RequireMessageHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RevertContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RevertContractTest/test.xls deleted file mode 100644 index 8a3173fbfb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RevertContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RevertHandleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RevertHandleTest/test.xls deleted file mode 100644 index e1cf5aea0f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RevertHandleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RuntimeCodeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RuntimeCodeTest/test.xls deleted file mode 100644 index 52e4561c94..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/RuntimeCodeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SafeMathMockTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SafeMathMockTest/test.xls deleted file mode 100644 index 662bd16f1b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SafeMathMockTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SameNameConstructorDefaultVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SameNameConstructorDefaultVisibilityTest/test.xls deleted file mode 100644 index e2b1b2cace..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SameNameConstructorDefaultVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SameNameConstructorInternalVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SameNameConstructorInternalVisibilityTest/test.xls deleted file mode 100644 index e730d3453d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SameNameConstructorInternalVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SameNameConstructorPublicVisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SameNameConstructorPublicVisibilityTest/test.xls deleted file mode 100644 index 9f04ed4ed8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SameNameConstructorPublicVisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SelectorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SelectorTest/test.xls deleted file mode 100644 index 87e18a6012..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SelectorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SelfdestructFunctionsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SelfdestructFunctionsTest/test.xls deleted file mode 100644 index 9c140a45fe..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SelfdestructFunctionsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/Sha3AndKeccake256Test/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/Sha3AndKeccake256Test/test.xls deleted file mode 100644 index fd165e332e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/Sha3AndKeccake256Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ShortCircuitErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ShortCircuitErrorTest/test.xls deleted file mode 100644 index 5437fcfc04..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ShortCircuitErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SimpleStorageTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SimpleStorageTest/test.xls deleted file mode 100644 index 6fae685248..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SimpleStorageTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SpaceComplexityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SpaceComplexityTest/test.xls deleted file mode 100644 index 25bcbf557e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SpaceComplexityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/StorageLocationTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/StorageLocationTest/test.xls deleted file mode 100644 index 8654d06edb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/StorageLocationTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/StringmappingSupportTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/StringmappingSupportTest/test.xls deleted file mode 100644 index 372ef910f0..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/StringmappingSupportTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/StringmappingSupportTest/test1.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/StringmappingSupportTest/test1.xls deleted file mode 100644 index 4ea0c9649c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/StringmappingSupportTest/test1.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/StructDataTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/StructDataTypeTest/test.xls deleted file mode 100644 index bbd25ba1dc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/StructDataTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SuicideAndSelfdestructTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SuicideAndSelfdestructTest/test.xls deleted file mode 100644 index 3557d037ff..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SuicideAndSelfdestructTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SumAssemblyTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SumAssemblyTest/test.xls deleted file mode 100644 index 17eff774da..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/SumAssemblyTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ThreeContractCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ThreeContractCallTest/test.xls deleted file mode 100644 index 953db230c7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/ThreeContractCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TimeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TimeTest/test.xls deleted file mode 100644 index 96e23cd7f1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TimeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TokenTransferTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TokenTransferTest/test.xls deleted file mode 100644 index ee24551629..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TokenTransferTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TypeCastTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TypeCastTest/test.xls deleted file mode 100644 index daca5165c5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TypeCastTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TypeConversionBytesToUintContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TypeConversionBytesToUintContractTest/test.xls deleted file mode 100644 index f48cbdcfdc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TypeConversionBytesToUintContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TypeConversionContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TypeConversionContractTest/test.xls deleted file mode 100644 index 71fdacdd27..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TypeConversionContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TypeNameTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TypeNameTest/test.xls deleted file mode 100644 index 30ee52072f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/TypeNameTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/UserLibUseMappingTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/UserLibUseMappingTest/test.xls deleted file mode 100644 index 41b37079bb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/UserLibUseMappingTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/VisibilityTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/VisibilityTest/test.xls deleted file mode 100644 index 6c63bd487d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/VisibilityTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/WhileErrorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/WhileErrorTest/test.xls deleted file mode 100644 index 3d2c16bd10..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/WhileErrorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/WithBackCallerTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/WithBackCallerTest/test.xls deleted file mode 100644 index 8a4242964c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/WithBackCallerTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/msgSenderBelongToPayableTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/msgSenderBelongToPayableTest/test.xls deleted file mode 100644 index 164e1b6942..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/0.7.1/msgSenderBelongToPayableTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/evm/GeneratorPreTest/test.xls b/cases/ContractsAutoTests/src/test/resources/evm/GeneratorPreTest/test.xls deleted file mode 100644 index 69f45e110c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/evm/GeneratorPreTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/lax_bech32_all_addr_and_private_keys.json b/cases/ContractsAutoTests/src/test/resources/lax_bech32_all_addr_and_private_keys.json deleted file mode 100644 index f1e5e7cca1..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/lax_bech32_all_addr_and_private_keys.json +++ /dev/null @@ -1,40002 +0,0 @@ -[ - { - "private_key": "f7b60fce6ae799ed1fe1e698d384bc59c9e5d36784dc69c6aacb61148bb9d193", - "address": "lax10eycqggu2yawpadtmn7d2zdw0vnmscklynzq8x" - }, - { - "private_key": "46f26eab2030510e76fe636dec5a6ba8a0fd41e052167ad9929b44eaaae25172", - "address": "lax1yjcs6fntvu8mtvr4fxkrv33lmrf2zwr6yf99nc" - }, - { - "private_key": "2bc2d19dae8881edb23909ad29f57f40bc12efc216ba4b047aa3ee671b8fcd89", - "address": "lax14lv0d639ytey7nf3en630y79mstj3xus3y24w4" - }, - { - "private_key": "bc88ec43770e686c34c3833297ef6ce037d82f364d713dd7f2da40c52a07e7d7", - "address": "lax1cytadclntqvw65xhwe0gv34309lphl7f52jwha" - }, - { - "private_key": "514be7eefb80b6e9bb344e038f7a5b5d388a84bd53d9bf08766f8748d03e6601", - "address": "lax165h4vncwhrqhlrnz6p7fr500wc62m4c5z972ks" - }, - { - "private_key": "86d481bc849987ff0e279efb35333d31766a14ed73e70f0eabd5b3bbe8ec0a1e", - "address": "lax1s8n388wa63ktv5qheawg5v2fyrgxutt6k57p2w" - }, - { - "private_key": "3f3188a19eaf43b5e2a67b84f6ef23ddbc6fd789d248ec885590bef6859746cf", - "address": "lax10vrczw7sqqdx4xptrmv2mmxrd38lgyvkaas6pn" - }, - { - "private_key": "f9f685ff82b63806cab96397324eebd54f7c63f3a1844605ea11331ede38fbdf", - "address": "lax1lnym6gcdu882heftwqwc5k34lhekyywhw3h8d9" - }, - { - "private_key": "7a6ffe562fcb8644510d92e42a11ada2f7ec64a0cad3b4f6ec543a76dc88eefb", - "address": "lax10zgfmzecyevthcc80jcrxx6m954qhxj5fz9ful" - }, - { - "private_key": "c53c7dbad917d98413d1c7cbdb3a591ca1e7f238a903780c11e0694a26f55d53", - "address": "lax1s5ksptgqdutjk0mgdcajuzrehrv76r9xxp6tve" - }, - { - "private_key": "f9b23fd9caff1137fcf862d2a60f9a6346603978c42e84111878767fa978c18d", - "address": "lax12agp79m4xlah8qd5pyddpyc8gxlzw0rqnmnmp6" - }, - { - "private_key": "971b2a87f7e45028e9334e95a56a0320b37b7e84e359e9927acd17a0e1b3dd77", - "address": "lax1es259a2u28e84k2tjt09cgdxym8wv99z03zhce" - }, - { - "private_key": "206a20850dfe704e660ed9ab8b56c8fae27b08419391d67f11f90326748baf7f", - "address": "lax1znhglgnah9lm5463lkyx6kkuxhnztqmvqvtsav" - }, - { - "private_key": "0bea6cc0d05377e5bd0d22c77f58f879c4181cd367faea268cb51b637f6dabee", - "address": "lax1sxn2kuq8scpn8l27znzvkyyj75tx3462pj56gk" - }, - { - "private_key": "7ac792dad8cb0e2959b27fe9273af31cd6e9d9f2c349e996ca155f554415d230", - "address": "lax1wv0a4gmmrsvajh3e57jxqu7l5tgln4l6v2h73l" - }, - { - "private_key": "122f71bbb1d61166e5e0a7df71affde8601dddffac6021002e064c01d763ad64", - "address": "lax15v2hu53dpp7ss7c4w3sxwrlz782tw66ufq7fhh" - }, - { - "private_key": "8c1f534cd87ea820f952f6ec4a3e59e9a61a049526bd1d94f6f8765df615ba9c", - "address": "lax1hqx9jks0nzf68w58k8ma04qr8tfdg4fgu6llsw" - }, - { - "private_key": "25b4a618cc2b9eabaea51482dd6890f43ce36c4817291f88738cd1584d5ed78a", - "address": "lax1whfqdm0ss9jnrpqgpeu6dnj5r7f9qnq5fppv04" - }, - { - "private_key": "d3ceeb68c15f42b23c5caa3739399d7fd637218f377cf0ff94fbba9d10b3c55a", - "address": "lax1wzerhgwyct27cv93h3wfulh9dyaacesg2rugxs" - }, - { - "private_key": "3269c3889b5e99e6a17bb80b305db08f70f25e4143a752c20838466ef7e831e0", - "address": "lax13q4ch786rfqvxjs9qw3rtaq9vrt76kdlvymllc" - }, - { - "private_key": "f9c8f4cc78c18ea0ca87989fcabc705d618972096dedef262f21d5375194ea4d", - "address": "lax1cwwlmjcx7dhlnkx939zd8n4j2temalwgdpuyxs" - }, - { - "private_key": "88c05f8d1731e373bca1a6b74c0658dbbce2c73e5ec8b9c70e92532c0c7a9aed", - "address": "lax1e27pg75wn6fzxv32wuzwjzmjp0avhzxfllzntt" - }, - { - "private_key": "a1fdbd32882b1d5d23af33a77f75b84ea715f219b22644197eb4a7f2de4bb2dc", - "address": "lax13kprasadrkj5thv24ksmwsmu8xx3f6prq55qe0" - }, - { - "private_key": "a4f92d41faa9c138a954af5456af95c6ffd8c88d7799a7c4a1bc2eef0807219d", - "address": "lax1hqegvc5jt09qpc48vddwtrnyhjmhklv72eakla" - }, - { - "private_key": "6d63db09474c0238cd171cc485dd075db13df0355cdb357101279ed1a676613c", - "address": "lax1s7950z50xn9k70m75h6q0fw65nsddg85m9ugd4" - }, - { - "private_key": "cfe8dfb8479dac700d7377c6832d04692a283f87bbc23808761b506df51bebb8", - "address": "lax15rlvcu9tv4z2xetp9cctyruveqstdsd7pgwf4k" - }, - { - "private_key": "7877f7550eee189127284adb854bd2ca6af07a7b0594412ec4e8de1a402022a1", - "address": "lax1480fvgsdwytu84f23qlvfvwt34zjfwuu63wrj3" - }, - { - "private_key": "1e03955c52b744e711d89f7fdc65362b65abf17734645003e193bab048c48547", - "address": "lax1sp920kmjlec4hft0pcj0f6qyf3fgd70t54an5l" - }, - { - "private_key": "d95b2b0e898ce1f0f3c87a5570a9bdb3b82b87ce5534d5915fc72c369a685766", - "address": "lax12z0cf7s0f9kq46gdfwnzpcua7532pd3s5yn5d5" - }, - { - "private_key": "0a89c074401a3d0d630ac30efbcb16a3f6f364f6138d89d3ba6e2878d88f3c01", - "address": "lax1nqd6c5uv83ahkl22vnums3snn9skyyp6ua2dns" - }, - { - "private_key": "a6004647a10963de68e040bf25d3b45ded0e70314c7886eee920b9144b280bff", - "address": "lax10rpk2055gkxa3mnwmqknaj8zx492srty3nuhqr" - }, - { - "private_key": "ce4ae4a516837cc80acad3b4724a6162a16ce14162852d7849f2c808bc273340", - "address": "lax19ex3zxf7r95n3s24p7ydtz5qnzuz7zcq56e33g" - }, - { - "private_key": "e35b5c97693d657343559fa7a820307c8d8032a9a1d56da04bc48e2273d31856", - "address": "lax1zmpk4wpfqdq7dgcd0ap5xsp2fw76nk6wyryjt2" - }, - { - "private_key": "f682ad1df3f0ccfa9358d0ee9e1cbbe93b65b56119ce77fb8879ee19629d0573", - "address": "lax1s75twps2943dyhyz4hvc5sh5anmysrxjja9mcy" - }, - { - "private_key": "9f1d5aa1eb99112ba3560d86b8681e66dfaa18b2916c3413eafe2efd44f202ec", - "address": "lax1es5qrdxmuajqw69qnrpuqvulcrskt8l6reylqd" - }, - { - "private_key": "58b9b42c29c9af713eb305f83bfb52ca0857522fe3bb0b493ecaee604fa3a764", - "address": "lax1llnwg5ywy62z32dgf787pv0xj4du3fkrxz370j" - }, - { - "private_key": "e0baf3e35213163b81b896cf3a903cb35fad840951810dfb8d926960faefb805", - "address": "lax16razknxun43hkhdgqmyap6ypny0azp2thm0833" - }, - { - "private_key": "2df5a37bb6447c96321f1942c06f92de68583916dc358cb2371f56fe10447b4f", - "address": "lax1l6e9lr5y57q8m5k3u73tf80w0h94uwt32cuye4" - }, - { - "private_key": "c4076c34a67853f2b81cb319e3656f4c01d2804617171b1dc829a0f56dbd8ac2", - "address": "lax15qywhl8y9tkatdg528w3rjnnqp8qz02myzncw7" - }, - { - "private_key": "fc50fdd05eb895bf7cb38d01299adb9855e330bc895281147bbc8f7f1c1a4d0d", - "address": "lax1pf33c3yqxzjtt44xrgka7ec8jws4z9vwtfn9a8" - }, - { - "private_key": "1a2b6a8195c7ee09965055c11c51d6c0eceab3b61709280e084406c2e1d11a0e", - "address": "lax1u85vczd2m3u06gm5j0pcyhhvj6jdsknzazxawv" - }, - { - "private_key": "cc2d763c9c0bd840c85c6dd602d0bd8295782ad4efbaf5e504036312e4da72b5", - "address": "lax1gykqlzumax2xn96an0kyye02l9ys8aulx49eux" - }, - { - "private_key": "bf06a462b69bb1e91a4d51768aad80844100fd522a5d98511658fc7861a8431f", - "address": "lax1jd35ypf8t600h2l2seynk9wtcegz95gspmupfu" - }, - { - "private_key": "abba36a373a679d4f3c7d88f5834bddba75bbe9a132bb86709aa870e2f947f22", - "address": "lax1a447aeq6ewxgxywzwuyj4fcll5ngufr6a2r5wl" - }, - { - "private_key": "fd998604bd34c375032fd9b76424467e56d6e426ee9a23fd382863cdd3e0a6bc", - "address": "lax1lmxvkzju9uzsls50eyc3maggaep90xfuhfc848" - }, - { - "private_key": "d7f1bf891f01f286570950267a6599c6e4416e934f719e071c1b7c9c505b90c3", - "address": "lax1th6sy9qnapnudle8y4kut2s4vjlgyaj59ceh42" - }, - { - "private_key": "8646d45790959aa00189faf14a4f5ab212e5a17a8099c51a7f2ff4450f8d20f6", - "address": "lax1cawz5cqxrtfmxzh9dr0lgcl6j3vvt566t4z6dk" - }, - { - "private_key": "4b22c80cf9a346f21545d66431bf331228e6d31cde833244c0c755b7f6591993", - "address": "lax17nrqk88kyu6yntdlqxrmhm3ptsra3u9h35dw43" - }, - { - "private_key": "475fb48c33894d45e927c0f9877e85a0ace2f880be5ac2a72c277d74edc015af", - "address": "lax14geqm8cre8tw9753wku5ctp59ewuxqkklj6rqp" - }, - { - "private_key": "870e075709885399593d5f0e0553dbf14e2b675a74cdaf95b2fe189b1b00d762", - "address": "lax146yrxvsnh9nn4nw0lc9jmn34w2mk78tjx86t74" - }, - { - "private_key": "c93928b3809a88b6a1df0a183b31032da6ce244ba45664dc194dca99b48acd3b", - "address": "lax1lg6hxsyn5q7d4cm5krwxy6r6j2jmc3tl3chyt4" - }, - { - "private_key": "fbc7c96938a896be67da3bfd7dadf4a01fe34604edc75685fc800e6f0a8e5e4c", - "address": "lax1qtyzasw6zgdh4xxqawvr8qmz46jvkqtspqnhr6" - }, - { - "private_key": "e37c67801d19636f18222007dfd85eeb7da4cdc30c89b998905215dfb3d1afe8", - "address": "lax1a8ukzuy3gdu9rx05sarv66z005wdfhnq37er0s" - }, - { - "private_key": "05bca2c08ecfdddadb0811484240a73f2a8b13c6fa059e345a577084e43b6a5b", - "address": "lax1grw59xl53naz959eujpknukv9g5fq48etr3u97" - }, - { - "private_key": "a5bdcd5fa47af85f153e2b6a6810b26a96c62ddc70ce78766cf01cdcf0bb9694", - "address": "lax12yr5emmssg8u9aa282dfake5mcj4qt8u220h2h" - }, - { - "private_key": "8cd553dcf732f88eb16f111c04a17c979443a45dc81cc72d0919268caac295ea", - "address": "lax1fx0lswc44xwemm04f2usj6p3tc3727s7gejd49" - }, - { - "private_key": "66e5e315484bed31932d629813309cceb52559812e00458ef161c6742789be96", - "address": "lax1x8hj0c82564h8u0l048t6czese48tut7sl4vf4" - }, - { - "private_key": "f78dd2c0db2b5f0ae185d000d6cbf52ddebbeb5a491b44478ae025abe59bfc08", - "address": "lax13nhx3grdr9le89mtvq0q3jceccmyml4mhgzedk" - }, - { - "private_key": "1def86fc88fa187db8911d9b47a6a2a88c2183e4937431fd9c30a610962769cf", - "address": "lax1p7n7vytg68kjx8awcftlvfzvelyy07zkykjzhq" - }, - { - "private_key": "ddb70e82c77d3d589794e838770cfec592ae1b3474e1214208c5df92112a2dab", - "address": "lax1cgm9pdkqyah806n8lrlhvwtpzrewl4lcy8s5tm" - }, - { - "private_key": "53575e43e8cade3aa312f6794fafe5e69b042134223aec7695a3f0c335561e56", - "address": "lax129usw4wezqjavf35rcc6eylr0ha3ppxjxaah3v" - }, - { - "private_key": "58b9fc5e43894ac06026e796d8b6265c5cc770264c1bb3d3f741a18fb3c052c2", - "address": "lax1k765973acfl798clrf5mdledjsalhrhdre3yry" - }, - { - "private_key": "2e92729a9f02a02cb51161a0c352cc7d6688b453ddf543d6f86767777abef2af", - "address": "lax1gqlxu23ppt6m8xeau677y69rmklc0xm5v74arf" - }, - { - "private_key": "d45e5f451602c00b0b83253c2d150f62c010556072963cd777b15fbbc39e5213", - "address": "lax17g0z8duq4sfudklmmt9nfcpzdu328yyrkz2dtr" - }, - { - "private_key": "347b045190685792087b4b48113dcb7ce7c7fc1da4bab144b57c5b3289e8a145", - "address": "lax1ucf9cllg239m7w6u29jc67j92kr38u0ux85ll3" - }, - { - "private_key": "6342de371256bd7c706619ba810a673f295bf78c41093ee8ed69fc8aad047139", - "address": "lax1qp6vqgfl4ytj9g6dakxctcpmatu3mpmf38pwdr" - }, - { - "private_key": "963e55f862fe736429bcf1a890b02d15c40c2fb4ae30b04ff9cd4cb3ec84df91", - "address": "lax1avd0kh5ul48kh7qvy0rpp0f3nm6kmsm3lj633m" - }, - { - "private_key": "c4891dfb8bff91365d2e691e0e4cbe8ded15d1ca5221dad2c61217435b1cb929", - "address": "lax1v8psd46q4nlpfa2jryedmv0lkvdnrx48mkrnpc" - }, - { - "private_key": "49d1e9d208b0b34bee580708dd6ec9c64f7a769b79a0ab5c99468beda1656e15", - "address": "lax1a33s58jj3vu4f76q5zfusra6k4lkamfajutpzw" - }, - { - "private_key": "bf72bc1750e522bbf4bb1e9c0066b981565cfdc591e8005b4d2f4f06efbb03d1", - "address": "lax1y48fqzktdvj496d4nhfuvprstlx6nqta0n24pg" - }, - { - "private_key": "3df264061e86ba208dd6ef9810ae55f0fcd14172f29c9dcbcdc151f4c7792955", - "address": "lax122v5gzz335lsgklvu69wd7jh65q42v27yqtwkx" - }, - { - "private_key": "74d9253d521d34d47802187c4cf8bd38996f116b7b84c6220189fc5d36b85fe8", - "address": "lax1ncvpltx2a8yrpwg43x7tfea42thyp4pf0k8kkh" - }, - { - "private_key": "37a25799540ae52ab9336988dd179e7410ec8f1056b2844b226e5c44a9738403", - "address": "lax1qpty2wzvk7ayrpc0x4jm80pld8wtyzxrhtekxl" - }, - { - "private_key": "cb7ba5c00001ac927c78dd6940fe365c8d3dee545a13158f95270f4a0c3c54fa", - "address": "lax1x7vwd2d7tps245dccj3g78f94q4jkqx5as5vps" - }, - { - "private_key": "69c487a7e923ce4a60f8ff3aa21b53a4a506a270cf5bfebf20424d1101f9f111", - "address": "lax15cpyvlkxtu8kdm2rfr7rd4a9sxaapr8upfdc2d" - }, - { - "private_key": "e3206935cf5ff49434bcfe640421eedf82a8e5c63806da007b9f7397357f63a5", - "address": "lax1atdtejls7dju7a2am443uzqvhkzk53sy4mdhcw" - }, - { - "private_key": "c1c2439a822f651c43f39223104338295835abd6777e8eb2522d7f02091aadb5", - "address": "lax1kj2tgwa0us6vjyqakv8e78ejlml5w4ppyedvz8" - }, - { - "private_key": "cb6a6bd3dab7f2724dc4db3c18310af522933b4a577e60182a798c6d6328bef9", - "address": "lax1xlqzt6ffrc924xvwq3hj2es0wzduv0ytkp5g30" - }, - { - "private_key": "afbf60dcb2cce982770899da0a1a777667f1dfe4d199b257179c49484340eb8f", - "address": "lax14wvxjj6md08dy53gvqefadcj07wkrt6d79q99v" - }, - { - "private_key": "6bb546e140de6ced6dfb70953e2d5dd1f9ad053c6b1e9f965cc89cc9704d342b", - "address": "lax1vlnj8cflpk3nvg736x24xycdhjpqrtyc9pevnn" - }, - { - "private_key": "015c0022541f1feead34593f903e3459c268be31005b09e5875c41ddb653dc11", - "address": "lax1q03whvlwsl3sz24ngjqyvl064f4gplpzs62emx" - }, - { - "private_key": "f514f8e4bacd48215ff454a417f56b465fc80478b02d91c3ac7f153c20c5b7e9", - "address": "lax12gadgxgqehnle6ra680yncd0jdlm6yjplk688p" - }, - { - "private_key": "6b5ca430b816f8eb477fa2663dce94826c7b8d6e4b534ef26d33a2a787ff2b54", - "address": "lax1yag0335lzk2d2pejx0krru5l9wcvgxxx25kasy" - }, - { - "private_key": "632e86b763724cb19e07dbdb87957405d0497da8bac9770c7385dc070c764203", - "address": "lax14klq8njgvyw8xsq49f3pcu3mks58w6nhmesqt5" - }, - { - "private_key": "f31d5bbf6f856fcd471075c15ebbd358186bb09dbd46947f6f85d9729665c8a3", - "address": "lax164h3ma4xtms8dm39hn0yc4n7t50tna4pt9fasc" - }, - { - "private_key": "707bdd227bb05433cc60d547984e426d73165bf58b466113636f895572667bd3", - "address": "lax15h7626sgjjew0mclpv3lhsxsfl20j0ynwxcwcj" - }, - { - "private_key": "53374e75d5a5f6045bd33b20b77d7645f635d85e9cb96d30ff24f4e4dc127a94", - "address": "lax1xl8tmej2f6wj67neqzdh6vgf0a0n3uzl954ar7" - }, - { - "private_key": "21f7b2039dbf2989d279d40861263f0213f88bc40fbbd72a4a82241d39fc2e6e", - "address": "lax170t03hlc360cak3exexh9vu4t8d0y8qx40cyaf" - }, - { - "private_key": "84b40de31bf9bf686fc93693435b791f159535962c769f3314c21cc012de4e5b", - "address": "lax1zm6u5jrm5vmx90yk6khtgekxz704g2m49cfuks" - }, - { - "private_key": "69925be44e01117ae7fe1411d317da5f3c87ec519420b7a877be4486ddf84d6a", - "address": "lax1s95fnh9rk8nqdz5n3j3k3yqhn753jrz3pvtpyj" - }, - { - "private_key": "32b3adb2d4170e118891a4cea30254cdefbb7b15a30b71c2980c12e036f2a872", - "address": "lax1m3ac3sj532dksdsg54m2p34ct8dgwcdfzppa2h" - }, - { - "private_key": "4adf9077363db014996696ef2a4429eb57c4f026a1e571c1285f875d82dfb88a", - "address": "lax17qxrqlp7cggywan8maktfmutedh3y9str4jyxn" - }, - { - "private_key": "3c272947cd8ebd42e9f74dbda6c1fa580b912b5edf7b505e86ed4771e26a5ced", - "address": "lax1qle7p48ft5f0xffmr46xv7uvm9cz0yk6mmzk33" - }, - { - "private_key": "8e5d3f68f2bb6cf8c8800f701c5c75a44488c58a6b992981bd4e7f6e6bf217ae", - "address": "lax18h9fczefsewx0j4fwj4sechm4xs2yh7weerx0z" - }, - { - "private_key": "d380f4e8f595e21a4563e9c600f0e45c1f610724dca56b6fbba1fa63e9a2c4f5", - "address": "lax17p7gsvu4z8ftg85smuqxh35mungp409yjs7hu2" - }, - { - "private_key": "01af454275bb18676aec7ea6e1ff7402861847ea89adc60aba4fddbf3f97dcb5", - "address": "lax1ylf0j90zghgr568tnwj94rvcw5qs8hjvjn8u5d" - }, - { - "private_key": "faea4ce72c294abe289b51daac5a8c08a55762bd8261b118269f52ef870d22ed", - "address": "lax1sekqhwsgrs5syqqar8xsnywry0y3rkzcfz3mkh" - }, - { - "private_key": "6cc7da10805fc692d5da1c3a82647ecc2512eedcc10ac647cc5520761de40b17", - "address": "lax177jcwchmlsd5vjcxz9tk3z75j5uhstv74876w0" - }, - { - "private_key": "67c5b7cf9b8acfc58d631fb4536537cbc5cf12e705f70982f490faf8b0859b58", - "address": "lax18v42hggunah32z7cy798vxqnfy5q2mjl54zu00" - }, - { - "private_key": "9580bef5abdae091081f9672720638059c1cf1960a55bb2712d45c377805a7b3", - "address": "lax1885qwaa37gykwmmuecu2jjluuc2u5m22v8m0d5" - }, - { - "private_key": "1f1d494e3677da84bc68f860ade334bac58aef83c56cb0b772a204f03d48d23f", - "address": "lax1q8rhra02ufyswznjymlgh23gjqkxeu0jsqfe79" - }, - { - "private_key": "7203448e529130b67631d7923c838d8a719b402d9634898052ef50c2495f5348", - "address": "lax1pjtjdlepsfx20d6tnpu2ch0w38jvu47ut904zr" - }, - { - "private_key": "4f38add959dc93a5288c935f376307bc4011e3aa9c2d2956f62355be78e1296f", - "address": "lax1txrkhmq34u94enn5ytudvvmkz6pefnqc6e859h" - }, - { - "private_key": "ef95666200a45f926107b5a221625868340dd824a914fc7ccd793e67357ba710", - "address": "lax1l85fxvcyuzv7svxxxctkgkn5j2v7x9uezyh95j" - }, - { - "private_key": "302ae4f67528b5edfe615053719321c985a6c92dab5a39e0c448488720c98f84", - "address": "lax1rd7j3qfm779mdhvr9gczthm22v6c6xnjjufdy7" - }, - { - "private_key": "05036f29673f8b25fe3f4407dc5293a7014baea56b48f22e969b5a07aac02c5c", - "address": "lax120tnyztx7xmrn4eutckru6hulrwa75n75493fu" - }, - { - "private_key": "c50eb0b8f17fe736bfae3c4eea0300dd187116f7f8e550a3d3bc4b6d8f402095", - "address": "lax1kz7dqyez0vqjy7jzgqtjj3ryypq8pcejzr80g2" - }, - { - "private_key": "24f847c7cd543cba6fec59fadac667602604e69228f48383bcc6c0578f24d338", - "address": "lax1y23nf4j27tkft8mtw8wwcxh0vm6kffack8px47" - }, - { - "private_key": "f4dd1aafac40f90ce73e0f78cfda7028120432cbc0e600edcf27bf7c29fc843a", - "address": "lax1p4pwr6h57cmhxk295avpmhly6njffxruheprkx" - }, - { - "private_key": "4e7e2d2ac50fbd7bb46a3df40da0f53d2306c6ae30a72edea97bb72588e8d1f5", - "address": "lax1w95y5qvjhvvm4tfjwzdzxcd4frn2ttcee6ngg6" - }, - { - "private_key": "2f3cde9193127fbb956d630ef1ad3d13987e8b368d1da3bc66410e3a820aaac1", - "address": "lax16qgzl8l5qym6gmrvpjj78khdv6sfqzjtnxh0zl" - }, - { - "private_key": "c712a1acb1a472f4402fdfdc3e98f785a41e6e20641fe7a68e52a4cf116bd879", - "address": "lax1vdp83365epq5qa9yl7w4swvwzykcl20d9tacvh" - }, - { - "private_key": "54b49d0bcb5e338e4a94859517dfbb05d00b2d0f16430dc67258ac5ce07ff551", - "address": "lax18g3ktcsxv9hzqfp84he6zp7n0uxn27wvpvvsnx" - }, - { - "private_key": "38dea0ff5288fbaca5ac28b28a43dd90e4aa4625af11359152d521448a290075", - "address": "lax1rfe94xsy2f67z9qcfu4r529eh0hj2et5azdqpf" - }, - { - "private_key": "5bf066492ce3a82e0562636c82e6234ec226588489b4e2113dcb9a6d8ca62546", - "address": "lax1w6h9lnmn36phscg9sm8pn2c2dm6mpkz2ss63jt" - }, - { - "private_key": "fb4c51bda19c5ea06b0dcf9e0055e3dd1e394f6bb016665046aeea6af3dda969", - "address": "lax14hlrzd7uz8x5584d8a0780jwhggtq0t4ucn69t" - }, - { - "private_key": "284ec44202fffe55903c1e0d725096b862ae70775ffa9b2b05d856133a272be0", - "address": "lax14uf4pq2mcxlz4ywpenm77mhuppuultkxk79vfw" - }, - { - "private_key": "7fc54c79f7c0860a9b67108d9bf9de78407415337e9fb550a5f9955b1066dd66", - "address": "lax1vtvkf2ej7wpks3n7x0fzr4agnp7m6q5kp9zjy5" - }, - { - "private_key": "73f0fb1bd39f3fa09111f7f7890eace36bdeb712164433e0724c78ce4eee719d", - "address": "lax15wx6uv69ddlwyxl245ycahdc7a5ahlnf3mqafd" - }, - { - "private_key": "ea73ece74656d47f3db5fefecc1f4f530e7c62d7cdbb9f360fd56f7a9ab054fa", - "address": "lax1m2nxx2yy0mcdfxdlgzqeldjtpjcs79sgjc7wv5" - }, - { - "private_key": "07db19a73f1e36502654b0cead140f336498714a83a29b77fe89b20f90dd0396", - "address": "lax1ruwwq8qysw85jlfpgsnjh8cst4p8qhf7rhxjx4" - }, - { - "private_key": "1de9cda394afb82328a64a2c7c2a7807fb767f4b1ca717a422d45afc05f9c7e6", - "address": "lax152z7kyu7qxlprp2zdxlpaktzqd2n4k3fk84ql7" - }, - { - "private_key": "a872810a2fe24c85bcec9a0d1031c8cb9346f4cb25640ad6b1e7bb736642dee5", - "address": "lax17wvemeggaarymxfdupxyjjw4f2tjrhdd8pgwje" - }, - { - "private_key": "5e504f17bfc5335c383651307b9b62de75590f5fae3073ae563933476058ec14", - "address": "lax15v7xssw4vxakftwdxfg2gt89ywfrw0c6v6ymn0" - }, - { - "private_key": "63414943862d2b1516fb91c2d9df2438b919c238f52fea0050d636102e795836", - "address": "lax15hkxh505p0q269eps9tl6slv7eyafzguq65l8v" - }, - { - "private_key": "43dc897cb1f52cc314580d596fbbf5b927262e85b31bc03d816233813a07795b", - "address": "lax1wu5se30cdrg0zwzvh6764sj84meypxc95e6wpm" - }, - { - "private_key": "40acec2fbd902b2d6b344381f1dda73d61e3bec3605ac3ae4796630405145930", - "address": "lax1876qxrufy2m3dn4fl4n0z2x0ckyrzpsfv5u7jz" - }, - { - "private_key": "9c678215d400951c5ef61de94d25dc096e39485885fa51120910d90c3e74fd5d", - "address": "lax18d7eu26nvmpnjpmq26cvgsdh9tathntzlq7xnq" - }, - { - "private_key": "5b6a76ce99d1c1ef863b7b63ccbd61f75c02dd07058af2cda8bbba2e872a5409", - "address": "lax1cupdfzznkaa37kehv6lf9ms6kyy64ft6jaew3l" - }, - { - "private_key": "adbb9477c3c048bd311f4376a4188a4ed348275e41fab969a828b84dc5ae8490", - "address": "lax1kvd7mc4zpywm32xsf6r6q9smcsxnx7p3ncn6wk" - }, - { - "private_key": "eecd71e50c9140d69c22e8104fdf2917a03a1912add27e5f6bb458a413804d55", - "address": "lax15vg3jl7lvfax4h762z3vtz9qawt8mg75k6uc7n" - }, - { - "private_key": "957329e9faea64d8ee5044ba114146adb144e1e75c4fecdcfa4f84f8bb2179af", - "address": "lax1s6ve6lkuq5vstu7la62dm5nyhvsmqf627ceuql" - }, - { - "private_key": "d4be5193e716c605de2f483f7848068b41f98c8e10f3b76069acf164e1078b87", - "address": "lax1mdamn794v3lr0n2tqux23mez2y2t4436qc4lqc" - }, - { - "private_key": "2ecbd477c6c7ae1f6e678f5ef483cbbd83a5877e0d2ed247e3736a1cdfa2384a", - "address": "lax17m9g7hg7rhfzyy69sj0atkqqj9q69qktzn07ht" - }, - { - "private_key": "60a88b7f23238a0644e9a7ced71ac972b80e5e8e8f81fed34295ef6284350dfb", - "address": "lax1tqslfvadpr8n49uyuc9y5f86ns4aj8kmggx6uq" - }, - { - "private_key": "b2900603b1210ce030cca278779c0f0b657d1187fe28b15faf5bd00b75e12ecd", - "address": "lax1fccfx298m0petwga5enc74k727n63e80axc84k" - }, - { - "private_key": "964b83a2fa665f043e9f02bbfd6c94d57b6ccdd16c5f11b587fc9f93d895f8a5", - "address": "lax1usdakqczyqdqx00v9zk0f4z9yh8zycdhjrcdu5" - }, - { - "private_key": "e994272e79cb1c35225d0fdb4001b4052c3a89089342fa39efcd26706af46f67", - "address": "lax1u6d5m3dlzwkzfekxwasnkul5aq8d0nzpemkgsr" - }, - { - "private_key": "6057143f48476320504f8f7d76cc4891253e8f2e89c0f49b1ffc506d9515ca88", - "address": "lax1vf9gca545rhc7eq4q3s0uhn5lcgnhsxpm4mldd" - }, - { - "private_key": "4a1773f05606787608b845c4c04948abafe972d9f6cf7dbdc8d7cc4323f959f3", - "address": "lax125d90exgq5364qyqta7ruhv69h3xgxvyyfffcv" - }, - { - "private_key": "d2a6b98b141c2816d514546e57477d53a74000cece892a3c764510687669d709", - "address": "lax132aq7kgx659ehtem3n38kkct9yjjhg6p5kzjn6" - }, - { - "private_key": "d639be072d2afdfc734ceed799b796ddb1e03d45cfc3e9a48f4dfb48481879ec", - "address": "lax1lgy98nz68ndd06epwy2jdmzf54zd4pd6tvqkmk" - }, - { - "private_key": "f253e03e5adbb5ce09cb085fdeb7f4e66c165bab4a58da1aa9240087d8848bc8", - "address": "lax1xs52ehgacf39elxg2gukxtd76lzhwhc2x6x7rv" - }, - { - "private_key": "45cad17014c290191b98d2f04f198fc1c4184678735af3f5e85903ddb645caaa", - "address": "lax1xn8dquy86swfq6p44nscd3qndvh3tam2lq0twg" - }, - { - "private_key": "91d199776dc189928178ca1a6894bd22bcb8741dc615acd024af57c115fc17c7", - "address": "lax1pev0rk5rj94j8q472twzykwud966765rtgnf8f" - }, - { - "private_key": "813df9b1484855334fca3a81cb04ccc78e38cac7bb0b4c7cc90803eff7f1703d", - "address": "lax1j26uy3fle9gpnz75vcvjzp2tv6y4t3h6rmwl4s" - }, - { - "private_key": "d11742ba5106b6f392d02d6bd2eefef1568b1dfcef8d94c72891fd96524960f1", - "address": "lax1arcnxgg8lzypv2yhytvll23krlgupjvgyx3zmt" - }, - { - "private_key": "1f155f7a467028ba70e34ea7cab35359ea4e2f954057c76dd1e4a1ea815aa27f", - "address": "lax1c3ktzgl7x455688tgz5mns2tz06hn6d5dv9ayn" - }, - { - "private_key": "aa49893922442e2c037cea96f4b5444bcc769835e8e419380012087045268091", - "address": "lax15vqczx6l626emac7vvu34uzjkpu2rvvv2zvwxv" - }, - { - "private_key": "4f137f4bfdec3a6c4e33ede693c4a90070ca12aa05d1d825752b12f6a0eaee36", - "address": "lax10rcs62835j2nsqfxdhhzfglac6sxm8q0nx55gf" - }, - { - "private_key": "1d7bbb9a41a8370dadf6756f4236efb11879e85cd4601c07e01d4e3d5636b82f", - "address": "lax1navpkr4wekujatcudk98v502snahnjluu4yzxt" - }, - { - "private_key": "aadcb95a1270ec04fa9efb95c22d1268c80b4da346dbc1dc148a18059b38f7c4", - "address": "lax1vf7ta79rdyjnm8hutuustm4a3cskafy9nsz36k" - }, - { - "private_key": "0faa7843412238a5113e1ffc9b675e70226eb20b02463242e9d9d5f585e8e9de", - "address": "lax14elgahmymz2sh2gxv7sm3skzkretm4aylr2v82" - }, - { - "private_key": "e57c4e35f297ba244a424f2b554eb2e64dae39e21bbad511b8a8e9515df60177", - "address": "lax1453ng0dgmt3r0nz20zln8y93us73yfumknfc46" - }, - { - "private_key": "1a275112438a9384c4da49f5cfe1edd7f7406b7b0c7635b1167b1f44e9cac8e7", - "address": "lax1a9l49svrl4x5hkcdqj53rrzmdhd69ux7jpnlkl" - }, - { - "private_key": "057b5ea14f4d9287a5a26b5a464023cc91e74fa4ddef51c7aac58e3080228352", - "address": "lax1u6pdep2q899dstpsnqhy3k608dwz2shdvxs4qs" - }, - { - "private_key": "dd0551d5af2c77a34e7a21666530782ed62408c8055198eef90fd7547c56d71c", - "address": "lax1gxcrafvwv3l52yc6kat39hsgh7lmgm26mjqswl" - }, - { - "private_key": "7a255b04ec00e579f170db11be934f9b67481ad7e049f36134c475a5e57770dc", - "address": "lax17g5qxea6qfpr90ahevt7rertpdcu7qx94xt30m" - }, - { - "private_key": "8b7d0406f4e7e7010380447ec4232ecc67055885c7e98ea0d852d00290192e4b", - "address": "lax12ntwk8xst56tk0hj285tqwh8ps3vjyhyszkz4f" - }, - { - "private_key": "02c1b6184712af3d291fb6383931bf8a9c7d9f3d341cd46cca999ac5362e2dc0", - "address": "lax1kda8ygrudprpf3lckza9js6uqhy5hdz8h27cd9" - }, - { - "private_key": "71d499bdf5f24906c37fad31f48fad4774d7d096801b5c3be6bb2e0bef8ba6ab", - "address": "lax1werjwzngtge9pkfn8gj5ltvj2h78ln2dmawm7e" - }, - { - "private_key": "19b0eae09f7e440667c084848d4b1d1f5bbeb032d526a762605d23d963bda2b7", - "address": "lax1842h9hdz309rctqsdr82ctdfes5grs34ej9gg9" - }, - { - "private_key": "9c529e49db168713a03086671bd4b16d2e53072d292a3da80659866e5d835314", - "address": "lax1g08ycst3v9yglm2fyh7szgr0ff0zmg94z34lr3" - }, - { - "private_key": "4b5d3d4d8be65300a13e43e970acf92fbd9494756223acad659f92cae81e9aa4", - "address": "lax1t4x4xn536zt8e33qar5xetlrel0zyhuhjmmenr" - }, - { - "private_key": "44cd489baa9cfbd1b964eb3fbe2b0d9308a99002e8d98a46794cbdbcfa395402", - "address": "lax1fjk58dhqg6w5jw6hleu6sl9w7amueurw9x20kn" - }, - { - "private_key": "0207d3eeffdf3839a709c16b8898865bbfaa00cc25443d23f73187e46cf23185", - "address": "lax1fk26edgxxhkh6mcd8m4rpv55lh8ejxvfawn63v" - }, - { - "private_key": "fd83a0baad02a2ad3b02d2b114df7020b55d49a9bcc8082b1cf28f2a21a98dbc", - "address": "lax1ht8ycm0alaac2gqxe97d68vlm9hxcfnrgvddhd" - }, - { - "private_key": "de9e4bca78b76a48664f5ea7b2e345ddb0d50bfc836c46d63bb8f67596ca82ff", - "address": "lax1sw3k0dz0strr2mdreauptpspt60yucsxfzupk2" - }, - { - "private_key": "d2f70d41ad96ce46c7dddef1a6452dfb843a5aa451ffae7b5a027fe6497f0c6d", - "address": "lax1ksl9p4c3xrz6l4xx895ynt2l8608tpe04fwrs6" - }, - { - "private_key": "62a8e22dafa2d7575944acf2e44779266c69a6e3a2804515794faa840d5d7a84", - "address": "lax1z7kznxyy2h2jnj9ljhp0lq9lxuqmwreprkg88c" - }, - { - "private_key": "329a42c9ddbec93b4ce2863a1baa3b7786aa73f4b9e82cafc63afb572574afff", - "address": "lax1pjv5ps5x9z9fmch568lr83dlnxxql9460gn677" - }, - { - "private_key": "f8340876fe5d77a19494a03afebe8f2636ec2064fbc23e987e412091c9a446e7", - "address": "lax1rref2pxf8gxsrjs2mwxg3u0543cekj6xt4tqss" - }, - { - "private_key": "29e48b20efbd7042827779da3473ae5b02cd5a36183939b03dd82d111d598bc4", - "address": "lax1khz93k9mvewcjayush6qvkx425f4kefxjz6z8f" - }, - { - "private_key": "650bbb13f559d0125aaf6992f1e005900c408cab7a320b4124cc08242a7f14de", - "address": "lax19v5pey8vm5mtxgjq5qt2cd4uc4q5y8l4chl5xm" - }, - { - "private_key": "32342164b35bdf1b2a7d301b9a3158d3553a995d290c12d1e95b9b788c370fed", - "address": "lax1jsl5r0up46mjaxtll6fvwnqetk7muymheu03zm" - }, - { - "private_key": "6c6a62200d72a28e34a1140d0dd13650d4926dc6e9ec596095331bbfda04989e", - "address": "lax1367xpdaturycxzcukw6368vhkjqgxqzez7raxd" - }, - { - "private_key": "dabae0bb82b7c654a4d0f3e1be38385e25a32dfe5e81b79530d89bf416339ada", - "address": "lax1uxtzman4asgmtrrpaux7whsc256x4daf8yc764" - }, - { - "private_key": "16b39ebb27398ee2ecd8a240ffb296953429a647447c5170ba0183e467e0228f", - "address": "lax14vahle7xqufj0gumnctcwcsknzunvxwwfwkatc" - }, - { - "private_key": "8a8686f75bf96712bc434af76fddcd5ff289192cebf68281318c66992e48c7be", - "address": "lax1f0evuc9jyuezht8s9d29xrcjkrq88xdt6e9e6v" - }, - { - "private_key": "2f3ea4720fec8046683517574fbeebe4bc9bb4a25714a04b090456dc2f35caa4", - "address": "lax1kk7hw80r4dpm3q9scr4ppxjz5qgtezwmfc5jum" - }, - { - "private_key": "1f6665adada9926725d65b2b07af8891da3f550ce5542f4c43299586e6938e76", - "address": "lax1k2kur265yt6ef4zwmhdxxv3s4tdlprxrwftt5u" - }, - { - "private_key": "29c763734e2e6b2c14177e5d50de8d7a96bd16a003176a2b2426a4150ec890ca", - "address": "lax1td8lsqwg4u62vn8qlqxvrd2n3l439j8ep09lk5" - }, - { - "private_key": "591fe19136c839f84857ee8847e85a1bd708709e4d246a6c5ef3fc9bdb39aece", - "address": "lax1zzzc6e4sezlpjcd4l9fp78kcctzapdxl7wmlfl" - }, - { - "private_key": "96e1802988ba98544aef2241b8ba154e50d912646e1b4ce708f4ab145682db10", - "address": "lax10nnc3u3e56yqz2l2syd0gtqy2nf64xqd20wank" - }, - { - "private_key": "5cfa600617c1e2d80cb76af92a06fe4a20a2ce8dcc11a40a698bdfc0fbf51117", - "address": "lax1kkvvn2yqwxn7z7v74z44mj6sz4yfmmrfuufamc" - }, - { - "private_key": "bd8e40070ab2abb75e60e02ea83cf1f975a2fdf894896b794e2e4edd136acbb4", - "address": "lax1xrg6ln4nsavnu8znmupzg9cs4cjry4hrmhmgvs" - }, - { - "private_key": "381b3c07e969feac1590b4edcfdc422eddda58a786ddf63075f8506ff2a3e542", - "address": "lax1gpx22skvmevm2042q9m84p0zm7x532g25g4nng" - }, - { - "private_key": "bf77f9b0270049a6f0d157df2f6ea580afa5934b33d81212f18e19550b545952", - "address": "lax14zvwu74spw2eqdnsgmxwh4yayuyv47yfr4ucwt" - }, - { - "private_key": "5a64a77b3ab863b6cbeb3bb56ed239918c721cb05019c9585ac704afca176283", - "address": "lax1579zhfe27qaukhr8huq9cz7g8k26h4fht6ersy" - }, - { - "private_key": "e0b7bdf757500d287e2c1c0f58a742d82adcd86151fa6e36e0236865c89ffcf2", - "address": "lax1mjalekgyfcacecns9z0cxc45dmsrrx8gv74p3m" - }, - { - "private_key": "6486fbc2ed1cbdd029b3cc4a26ea751e4558422c9cf319b0c0907dc38bb239bf", - "address": "lax1z3j8rwdkcqqq80efmsqerscjdyu0c3rtscz24z" - }, - { - "private_key": "8c15153a6e6bbcae0504b821574d4f61cbb66d3f88b6743003197b7eb61567a1", - "address": "lax13qmdd67seksz4qlrxs2sr836vtlc5ujzc3n4el" - }, - { - "private_key": "f7462e2c2da3eff4fe230e89f6c9af49dbb9d31df17fc2444a3dae8320305f2f", - "address": "lax1hsnc4u6znn7qzf64d8rrp5lyc2xdff0el9wdja" - }, - { - "private_key": "84eab2385bfb1de83746231b19919dcd42a267f7c2e7d1fe3b9bdd27d3b0142c", - "address": "lax12p53vn3ej65m4rzpggtj3mx6tzu68wwr9z7m9y" - }, - { - "private_key": "86537d90d51e83446367d196c4aa324b98fb2d719300a1ba6df48c3e49aab6bf", - "address": "lax1h0fjstxcuq3dfqgs4v5fygpfqzakz2jgmhjqds" - }, - { - "private_key": "49798e0a2f0615c5d26bdb35dfccb814f691ba1bf0ca2de32c6dbb9fc7917567", - "address": "lax1yl0wjvn3pcf6m4c0tk2j7pu9l38cpgj865s8mv" - }, - { - "private_key": "026b9d82c9cd9e529e940105e156c6c301deb3c6f8185008b14cf32fec66062c", - "address": "lax1wxu3tzp4jvck3kkqgzkwwmecpgkdmhlncq3hru" - }, - { - "private_key": "7676c245f8c1d72e746acee8ca8c83f6c140d0a27584612db838be4ea2a98dbd", - "address": "lax1awjhfffqsmhf4eu3t296s3xkqz9nmtl0pw4s6a" - }, - { - "private_key": "522b3d8405dc8f34c5e07292030acc5fa8b255a4e89e01217df34f12f2ca2b75", - "address": "lax1z3gjeyfk6sa964vrmerydphk0aev4jy44n0tud" - }, - { - "private_key": "1aecf979fe2e265679ebb742e1ba628cdf236e1e90be70934446e469dbe2cbc8", - "address": "lax10upxc6eu0ytj57uefrd57naqmnev8zdrz69sjk" - }, - { - "private_key": "3e7a913d64d4b02b035654baa9fb258c67e9358eb2fc8c3743363303d41018b9", - "address": "lax1d7fdpmhfm7epe6ap65dz89lk42fpv4dcuzrsku" - }, - { - "private_key": "e75293950c5995770bbc75fd1a34b9141d61e9414f62f92792862afb8cf67cd8", - "address": "lax1qk8u4yfx3qeh3krs9pwp6s3km9yzrn8v92kf4p" - }, - { - "private_key": "fb032de6c716d856247c5dbcd35af01527bae9dfa1b33fc912377ed9aa6b54a2", - "address": "lax1r0k9qgq6ep4l4w485sn2zv34nfypxjdwj70sjh" - }, - { - "private_key": "719991712574d2390abe550f6443b155bda32169c9c5471d4584f6e3ab6d1de8", - "address": "lax19g4mp97gv93s2k8wfrwkhjkd7ddzg9lzflspwc" - }, - { - "private_key": "e961655985e510b22db3376182f8b4594d5ed196d04830d627b6c1c4e0738f20", - "address": "lax1aj4ek0thvjd73tcn9dcxykdykpypjj98mpt5xk" - }, - { - "private_key": "011239b1edc4cb92c419f4619e8ffcc73ea876ad26171d80902985d149b1d71c", - "address": "lax1fc77y6yq3mrrn7mktcs2jy6sxuweakx7vul98x" - }, - { - "private_key": "d4c2660fabc4e066a321009f6bcbd8cad71874a0126ff82fc8f8d8c0855bc1ef", - "address": "lax17tv2ll88ww5elean23d33u02eq3qk3fxa72yxe" - }, - { - "private_key": "c7fb299f1ba7225d2fefafd8b91906797afb852a4d98a8d3adaee6e354e68a7f", - "address": "lax1qglgcamynne6ch995z77r7r2sevr8eufqpsu7k" - }, - { - "private_key": "ec905326238753c4f9ec2e7d0880d1617e5c68255c34e816268efae6d47c18c8", - "address": "lax1ct7s7g8ms4uy348wux4g6rqde4346tyen0u7dj" - }, - { - "private_key": "585fc8bee690705e35949c68f8d67c132347f6a45f2e245def7e86c965533c70", - "address": "lax13e9htv6393dxgp02ngcrxlmdrudr7skjnn98ht" - }, - { - "private_key": "18da89fdebf77e59dc559da73661fb817b39105cc3b42f0dc059dc2cd7c68fe1", - "address": "lax1820g4a0qn029p4rze36vktddpf86maujwrm0p5" - }, - { - "private_key": "6861764bda65bcdaffd106cc1b376f7f8482e33aebf600c9185d9f53164f403b", - "address": "lax1cecfyksrjq48l6dd4z2qxj8a4mucwg9jf7hls3" - }, - { - "private_key": "f5995d0ea28932c4b4e658ae1c57c6434220267cc6f7072acbeadedd8608f74f", - "address": "lax1nsd0ftsdlzr0de5xylyzyjfnrqkktc93884l6s" - }, - { - "private_key": "a8087ce0317862cceb15139a0182b47b8b95e1a6a02a2c1cca74462c5a4b842b", - "address": "lax13v274eh8dcmc34xsvuu4vuh537s9l6ck5akv4z" - }, - { - "private_key": "874d255854a6dd8e70d3f0b06cdc2dd473fc32c40feaf7831b677e8898957293", - "address": "lax18uzsf68ay43cyxjf07nh2h505jnzdv2tgzxelw" - }, - { - "private_key": "fa532d52cddb8681777af6f01d0b75dfdf6bd00131543a487316d847949f4258", - "address": "lax1qq3886ugpjpufc0dpel4elc570svf6pw3fgpvt" - }, - { - "private_key": "47a1dfbe975b72edf09264072630e258d507e63fa8e3807f8186ac7f50c12725", - "address": "lax1je9j7j2t36lts5r5jrml3rlpy7c73pvuzf3hkl" - }, - { - "private_key": "4063a0dbdbb21d36c8d1617560c1c84e86e719587e202b13fa209e4fc50317cc", - "address": "lax1ltsdsg2afsvctqhn4s4t4284q27ejqvs6upwg4" - }, - { - "private_key": "fd391e0e8b631b4eba37bdcbe98b0e43ce922e248cb259497a7d31e3150d7ca9", - "address": "lax1ejxs796jefa97lt6jewwntr26y825r4fkjzdxc" - }, - { - "private_key": "7f694bf576f498c1518de41a9aa16b0fc46b4e9e91df4537ae1b30f42f760c5f", - "address": "lax1hx9zn8qqx0h8r8tlfrcx0fymt4rw2r05p9ldap" - }, - { - "private_key": "9d71903e200fd603a7fb200a16e72267987bd00bcc6c57c56837ef93ae41b729", - "address": "lax1l8mcalh2em5s30wmpy2lw2mkjprzgext4rthmg" - }, - { - "private_key": "fabacbddca0eeaa205bb261fe08cff29a8a33c53f721636401a7a10a715a6ad7", - "address": "lax1wuev878mqkly7a8cuklta86s0rt7e5xgdfqxxs" - }, - { - "private_key": "c367708fa85009d47c03d2a8caec8b1ebc3adcac88c06abcf950a2c8a3f533ad", - "address": "lax1ss4t4s5rmvgtgy9k52eq8vhtfl693skfcrlpam" - }, - { - "private_key": "1cc7befd4516b43339c1740a19df4fc1e4fbc35874bc69d6c3fe85eaa7745a8d", - "address": "lax1c6jjvzny3a8p3ygmdcrlv9gay6kw4r8609njzf" - }, - { - "private_key": "63ab86286a7a582b87549f3090fdcd0afb789becf8b36efd9f20248790f877e9", - "address": "lax1u3uj2kvu8y4dav4vqkrjkhyrzf08alr700yvyc" - }, - { - "private_key": "cd9c3050c374e7bf646a2f7ab2c51d0bd47557cd3d99fd43fddd8abfd009920d", - "address": "lax1nuwmm6580w3ptdjwq97g3sdp04qkcdqg5eq6qk" - }, - { - "private_key": "671bf93b3be176e0c69a747fce1e5f9ce3ffd06d5c890cc37bb4b1607840b2aa", - "address": "lax1fzs5ag49agvpegmqua3smhlnz93pxqxpg5m59s" - }, - { - "private_key": "85ba024743dc9af86a9aa593c3d195274288bc9940f877bd48681b0ac4c27477", - "address": "lax1szd6y4027kx0c9wcs8zhv4xuzwjkc8snucpsmg" - }, - { - "private_key": "a70bf92f8149a92988259e8913960334bf8ac2377d0c53ba838226c7e6fd8574", - "address": "lax1prarylwkrslcflvh7p3su0h5erk8w9fskxjmlz" - }, - { - "private_key": "0d729287bd5d060b577ec764cda903e82355423c9906b0461048bacc05e753d0", - "address": "lax17mrck5sr2nypkzn62kgv9949vl4m04pqevyshq" - }, - { - "private_key": "35b1442018f6fe5e2ffbf628f4b235af2ca7c437a9d8e9a67d2491a7a0b36808", - "address": "lax12e9j9uzdh9xkexg6u25k58jth4fnhljgjvlwlk" - }, - { - "private_key": "255a2d0bdbfe888a80ab179489fa32e2761de7d8a2a328fdab5e1624ccb92d22", - "address": "lax1zgvwgmm8p329vrjk4jt4yutvf24y2lepr7ra8d" - }, - { - "private_key": "74340154dd39703babfe80facf031a6af5ba3fdadce8f137c6326fe357295c69", - "address": "lax1xuv0q8e7gr3e428gya8wr3kd2nm3k7p75gn5lj" - }, - { - "private_key": "5e21821dcb132ead48db8000b4bd3a9d92dcfdf052dafe77efbb65a6c8099d64", - "address": "lax14984c3wesc3zavh32dhtmxyczj6udtgasjdn5m" - }, - { - "private_key": "3434ef903ca6647ea3fe0a37aeea13d1043d594c04e03150132a4de6c882b861", - "address": "lax15le7ryduy5kykju45sdkku0dejt6nyqclwf340" - }, - { - "private_key": "3212e585c6a889d8884df1b5ac21f31ab9371e9413c7d10da659cc23c7e250c0", - "address": "lax1n96aawm4lqlfpnq24yfdknrd9vs4h3sjumszw2" - }, - { - "private_key": "a9bc6b36063278cb9691917d43e45bd6b0e5ae6cac4465dafc607a8cb394c9d0", - "address": "lax1q2lcqnuk7x76kp6y0q4krugm03kan5um7pf3ty" - }, - { - "private_key": "84aac53a1a396939181e62fcf32d88fe748a82501ea55dcec24a69b568f5fd07", - "address": "lax16jwyxs0rfn86pnzqpjwkmtqfqwe78vkz5839x9" - }, - { - "private_key": "7abac06db6c9f9863a04245a6092dc6a31fc793c6bee362c7e697af50ebff4f0", - "address": "lax1ldps8zn7gm42jxqvm9ay4z0pf0uw533xs3jh6h" - }, - { - "private_key": "e39a2ca4522a463cafbdf14ce71fc52c33989e60c0816a129a0a746ab3726ea3", - "address": "lax1f39pajxwr8m92vpwtjv6l6xx380d6aht5k7ckr" - }, - { - "private_key": "aec50b83db722dfb56fc43ba3fbfe7d1f2779df58c03efcdac245db24cb439ab", - "address": "lax1j3g25pv4dvzfh7ur6lwjss42pa0zzxxu9hcl6j" - }, - { - "private_key": "ef8157df3523f29b5e1666d3dc7b6171daf4a460cb2a082aae3aab2cdbf21dce", - "address": "lax1d9pk3dykmdajx9uln8cqsukalfxy7epnw2yy8m" - }, - { - "private_key": "7070ffcb0863ba7ae11af9e15b134edec42eba0bf9b7d80a581a8a7a89a492d5", - "address": "lax1tw4upxg68qwnauddm68ja9e5hgt5h98szyrvnw" - }, - { - "private_key": "dc6cb6561b06d422aeaf31056aa1f8c1f15bba3c7e1d25b9fd910f7c4a2aee96", - "address": "lax1v8spl7t3ldpnge4lrh8f9dqerzjwhe0menxw3t" - }, - { - "private_key": "c9c3463029a97bf0d0ea8180251609e76daead361e1c1cf8921cffbbf88c9a24", - "address": "lax1ycpf99fdv09sn0cu7q22f9gy2uyvtdkfjwrk0m" - }, - { - "private_key": "261590e96cbfcba82a7b78bcd80e5b796d9508da2a29c35f07aa7e939aece26e", - "address": "lax120h5rnqegh6sepr96uuh4xr0kytz2xa4rwg8df" - }, - { - "private_key": "230ff51053cad0a0c47722b8f4ec1bfa0a751a9c9075ff0f7f41086760135dfe", - "address": "lax1yswk37zkthp33gnp6ewvwqkz4zvf4mzwqnaa3k" - }, - { - "private_key": "32a60d9d59af0071f7aa91620c54edb5a7c98e489aecaf9874c2da1167c77345", - "address": "lax1rnh3cddnzw3sxz378uantakjjny9z8x9r7uuv4" - }, - { - "private_key": "8e3992863e5b0b1eb6066ffe701c3c59ae3f304d610309af039f821dd63d6e99", - "address": "lax16y6nkfslezdg5kqxkqpmaf3g3xp44j8yc0gc60" - }, - { - "private_key": "1c64cb28f25e76596d10b2cfcc3ef81449f3a94dddca462ddbdcd1cea526a074", - "address": "lax10u6q4y7rr4n39hlsy8lguy3qzea3ma7u978c68" - }, - { - "private_key": "7fa6f9145e4f0a0ec69f418cd2a341eb48b949620a9009776ef2bb512f158238", - "address": "lax1fse5e3hvrceydrjqfkmdeaxclt5qsgqqcaxj4c" - }, - { - "private_key": "e88b9d255e4d383c77739d5094639704853ce3d16682b69a66b2d599818b6e3a", - "address": "lax1l87gpgrfyy05785j6csujvjmtjejw8nll0zjgz" - }, - { - "private_key": "e6e8aa94dd3e26c81fea94cde415cc15134a017204e71abaf96850fcad30b614", - "address": "lax1f0dfh4pg8z4frmukswp3uqsgknsspq6zka9z3m" - }, - { - "private_key": "1e88a8db50a1b3ad0fba06dbdd5512aaac3bad57960473dc3859791e1e22b8ec", - "address": "lax1vtdydx4hrkad4v4tuu6uf6czqt3vt3ykv68szq" - }, - { - "private_key": "04c2df4568ea8569ff91cb30223bbd1fe904850d3628490e12cb4b436f234fc5", - "address": "lax1xzqhdwtxp8lkzm74q8n0qlex653juwy5ejrx39" - }, - { - "private_key": "3a8f317be62f867cb8c66bfcbd58cc64ce04ed11c979f66d48533643bf3d3e2d", - "address": "lax17gpu0c2fysx8kfu73l0fzz4yna3fjx8a4zpa90" - }, - { - "private_key": "66dc754befda078d8bb82c2d7f161841130f77491d36b6abf7082793db204e6a", - "address": "lax1ldysz8xav6jrenc90suvm0xmzmcrhx88zu4lq3" - }, - { - "private_key": "6f87fec798cc75554483618281da49ec284ceaa1cd5a16ce03c70f475f1bb49e", - "address": "lax1un2tacfxes0a6pqhdfeqxk4u3s5yhn372qc0jz" - }, - { - "private_key": "44b1c04abacdcc8d11e7eff406950b4d026f1f78746b5a429ddb395701d29ffb", - "address": "lax1636uhhj55qm6xqg27uea05hfqsq836sfjs5wyj" - }, - { - "private_key": "bb62994b9b68a09c86ee377f89bba2e29036bf1d3bab0c9825ebb7e9f526b3f3", - "address": "lax1xacx2m3dm0muy9vnmtl4vna8q5227ejuvuz2qc" - }, - { - "private_key": "dd0bde947f608d7ec50ea0946ce2a49d387942a4f4eed91674e77dc7d6d4d122", - "address": "lax17v00079turu4337hdsm5pfxredkmp05w3yqe4z" - }, - { - "private_key": "65f836fc788c117bd5aa2876e744e50e0ee2f917dd077a1b36bfed45e02cb210", - "address": "lax1uvtcs846d6akaq2genj95mx0lw2tf4tdfk4kan" - }, - { - "private_key": "87acf0485d08f153d652d97e0f8a7319e0f8ef298ae9215f83c64b8c8fd82b4b", - "address": "lax1xmnl8jl7yzq4c3rtdftsj8h7m26wrc7rr57ukr" - }, - { - "private_key": "20e2b79463869c091c598254da01214158303414f37d44301e9269ae078c7db6", - "address": "lax1d53hpdkx450ahpm7ueq035heyeyn7thx4mfwlg" - }, - { - "private_key": "5d2507ecee0da8bfcbb9d72f30cdc077fdfc4cc07a3778308b5e9432f8a479ad", - "address": "lax1f6qc6rfvkcqpufwztthaa8aw30jdk99x93m830" - }, - { - "private_key": "3bebc3a5cf120e3e1912c3ebbc6abea78e463785cace58ebdcd6596ef18bd16d", - "address": "lax1mdf7c2urvhahsdecclypd0eslj848rr5weavs7" - }, - { - "private_key": "1cd7916274ab5c5d19f3d26a88a327847d510398cc681828fc3c35305caf015b", - "address": "lax1gdyh7885ct8ehlc6vygd5yn4rj9uuj86es54g9" - }, - { - "private_key": "3f88daecc7b82ebf90c1c6e07d71a94a814586ca46d1278da1a46e73058784e1", - "address": "lax14wmreucul2sp86phwfkx4qlk9mqplyx4gnzxhu" - }, - { - "private_key": "90938f04fd246737797636a75c6568622f9751ba4db9c318aa49c0bc0489f030", - "address": "lax1hhnvh3huqvtqczlq0a3m4felmdzr6x7x8gukn9" - }, - { - "private_key": "bc85ca35c39bad1d2bb0567cf168973cc1b587a433b25f86b43a8f3e175e59ef", - "address": "lax12cjngv08t9nlrdhjk58pv60pg0wj23z000rfp2" - }, - { - "private_key": "a291b19b6d4ea064a99e2b33b4025783e60139754c3f3e9848af6c7583f0c00e", - "address": "lax1yzjx2yssgwwcy8kv73f2a5t6p0m29yy8zpk2ac" - }, - { - "private_key": "403259e60286ebde2ff0828f4b9387c828f0538da8dc0cd46f8af5e888f16deb", - "address": "lax139yhn07xz0ewe4zp0wpsjne4fxpq653ckuc9rq" - }, - { - "private_key": "6e62f581295c180a991e12773e173305eb4ce188d855aaf85ce5711e6b96ba93", - "address": "lax14s5p56fk9x8k9kf3ztkcevw3ps7xq40desjg27" - }, - { - "private_key": "3362635f8c5d687e391dae572b4ee5f2809a4f3a9b9652b59a0ed4d5432ae8f0", - "address": "lax1kpy9egqszyhlglu9zwtl2uakt6nf77pz4pzha3" - }, - { - "private_key": "edf596d74276aafa3880264c0d32fd0be1497498e45624865dbd7d7d062d7782", - "address": "lax1mdk4y48py4kagfgtpfs8fqjfd3q390nn0fnmc0" - }, - { - "private_key": "047fd19efc1d624299874dc5e8327612832e99b93478a4e9d7588fb41ec603ec", - "address": "lax10atpsxtsd24f4saj6j739xp4v3vsyja0rkt7qe" - }, - { - "private_key": "e8651aaca9f5a555e5cf6d15473c631ccb544d56072946f5f583e14999a54fba", - "address": "lax1h9jr5sg4wcggpg03mgq2dzfyv5kp8kndexjqn9" - }, - { - "private_key": "01bdf1282ab8169c6c19b507d658d68c90ad7166166b27b9e9abd6694e769f06", - "address": "lax1wujkmc40uatjhyw9purcevstg7n74d80tgxvra" - }, - { - "private_key": "3fba51db632fe25a763d41346db545dcbdd4b90915b868bf151dc84b1e15bdc8", - "address": "lax1ahxepfmt2zjrp80kwzpp24u3ad406dgrl0ptk0" - }, - { - "private_key": "e54ad3f85613479d3c4a7182768f42443043348ccb037a73b415392b9907eca4", - "address": "lax19e30d73jdenprn0zwyzgf04wlhgtw3f0p6x3aj" - }, - { - "private_key": "9bf71cca6fa2e1f111679d443dfcf29dee9e7e8b760452f93a1227bdcfd89c1d", - "address": "lax16qn5zssc83caln4n3psnd94k0pnrnrsgq6c9al" - }, - { - "private_key": "9ba252886c717370850fce5c8ee00d79ff04a2c3980ec130ebfc6cabddfddef1", - "address": "lax1m9kt7ynkls365z9sm88kvhpq6kqyl0uyjzskv2" - }, - { - "private_key": "a873c2081e02130157d6f9d2b6e4eae4efc6094e60944706f77a0e5c7864c945", - "address": "lax14hukufvc7lmkelapf2kkgkzk3tsq7l4ku4ledd" - }, - { - "private_key": "0c2edce97fec6eab0cc29a4c59036433b758ce4f91f25ed26591ad77503dc876", - "address": "lax1xkevcfw754tk86u368y879vhrv5ejz08p5a56w" - }, - { - "private_key": "b8238f6ffaaf4d2d67419ab4c8afdd4e04a5e850ae362d6f19ddb1aee05d3b81", - "address": "lax1g4qksqvyym2503mr3d7t4ruc5a8qqytkcve045" - }, - { - "private_key": "2e440e6e8fce91f262c9076ecb22db196da3d2631b5fbedf1b5d131de88fe095", - "address": "lax1pmm655jjugwu55nedkuu8u20q4gr8aqxf676kk" - }, - { - "private_key": "8777e87cb79d2dcde6d42cc279fc161ed044993385266caa872d8a2bf787a67b", - "address": "lax1f3742dph8kfctsh6qykeg5q7jujcz8lh8x9a69" - }, - { - "private_key": "4c2580e81bb52aaeb80d51d8155d7ab398361ca8b499527425e7c3cd38cd63ee", - "address": "lax18xmh8tdfvyss03n56akgagt2lzvvpc7trh0ful" - }, - { - "private_key": "df6057204348866df7bc25653686f1181f0f52e5609a7aca06b186ffe9aa4d44", - "address": "lax144e8mw2dus029ggvsdq598gc52j22wug9sl733" - }, - { - "private_key": "076a81dbf256832844aecd3aec2defac3227c5e8865936aeefa3ba672e92dca0", - "address": "lax1hpru04598fjuvqgenlut8cpjwmvuj2hnc26ufz" - }, - { - "private_key": "b9a0c99df66b84fd31343b5983755b57084ddd70cded89dc003686fdcd936de1", - "address": "lax1t6ssf0n64g0mpjn2e4khtv880q4t6e45ykdm5n" - }, - { - "private_key": "ebd2b57c812a804c112900ec81834bd1796a94e674aa10bf6b648f97d9e43e09", - "address": "lax16swusnuztv86228cez86fmwqs3med5fqzf85am" - }, - { - "private_key": "61cde41189c3c2c0c04209c2391fcfd1cd68851876776446c97f6ab429a1ee87", - "address": "lax1a7qg2n4j7u7cx9ra0g8k0fvkvhetq2e0vyupv7" - }, - { - "private_key": "1d11d548e90aa7924f0d8a519aa72ffe00a8aae9282d6adc3e3195c0ce4dc9de", - "address": "lax10nuj8zy2psczmuxw57n9auj59e72v3cgar55gp" - }, - { - "private_key": "4c5ed92a8988dc765b621c8b2638eef6dd529e11f289693cbab315d67cbcc02a", - "address": "lax1ntmjpvutnfstztlmzkwj87r2sreuwvh6w9gwqq" - }, - { - "private_key": "30d1bee1dc6b85b037ef7472ba9d1341cf9583f67e11703f879d7d9cddd0aba3", - "address": "lax1v6qpn56vgwu3r6rvythzplax5vdatz7y063c2h" - }, - { - "private_key": "d998b24a241e09460ab401f82f52ed6fe79af20b13b4e68cc193246dfc24cb5e", - "address": "lax1je04ngplqakqca9shljuxayc5j9wm42uczd7dk" - }, - { - "private_key": "c1b7eac25d973d5f2072a6c522ef1ab23c28346e77a912ef1843a8f7bf940c56", - "address": "lax17pv4wvlqjavlk5kp9cl0regzfw8ve7wayyq8xc" - }, - { - "private_key": "ef7f84d93f40eab18375d88667f0938ead26f5e249772ebfcc3b8098829718ce", - "address": "lax14sns8stu6tefvczsf6vzz5nv0x57p0e8erq3c6" - }, - { - "private_key": "9c2f9419d2d83efcc49def8c2002f4dec527d3b1e162c23ab662bd98dabad0bc", - "address": "lax19qltn2ax3hvstde4eeeh59220dxey0k0eqf958" - }, - { - "private_key": "88a6d8770fc6797f80263e4bd4903b3fba8e9dccf72f0503613d239155c1a881", - "address": "lax12lsjdt4e4rkdpudkxf06wya2rdxeuytwx728uh" - }, - { - "private_key": "bb268f6feceaf60000804a3fd3fe04291e5282aa4ab1051e94dd54c6fad58d48", - "address": "lax188yygxv4wgxys97y8y4tgpnd6sckzn3ftc8ryt" - }, - { - "private_key": "ad30f5307806a4b97682f0a9505d25ec71e638c229cd0c1fe7836cdbc7fdb331", - "address": "lax1wphuyuslmsp7n3u0h00gu0duhtljqfv2xvep4u" - }, - { - "private_key": "609056b951e40776c24c5d2dfef0a6e3400bc6e8a1bf1ac001808f7dc70999a2", - "address": "lax1ear236ydjyyp0anr5chamv03xq66cyevzylenp" - }, - { - "private_key": "b0d0d4744b8fa3e4dee92e5a2e7692124761c3fe2bac0dc33e3f98b1e613c81e", - "address": "lax1cr3uu7azl08849zrdsl34ylp3pn5uy37njlal6" - }, - { - "private_key": "3690bcf733fca771d310c0bdf42d9fc87685e147af90111c83d311e4eed5fc80", - "address": "lax13f3hvgg5wdqa25dvlhwgsff28ds4r96wrhaenu" - }, - { - "private_key": "f2c8ad24f4925b7c7bd094f0cbf05e57acc3f80a12772f636707d11d1a7f630b", - "address": "lax12vl97ymvykxm7c57vnp5f570mcv789rp8fy2y3" - }, - { - "private_key": "aebef0e992c39a081241ebb9eb4f36913b0482fab0f9fbcf39636d5338ba23b0", - "address": "lax1n2xghdmjeavylvf53ax4chyvaa6dv3ccxqjryk" - }, - { - "private_key": "86170577c5c8ad7b16020a1534b56ad3091a25b31a364c0c32cd315f16bd0c6b", - "address": "lax1vkye6ucvfc4r3ys3egmel4r44msndkhlgz4fxu" - }, - { - "private_key": "b16c0bbfcdb78197b6372fdaea8d44da49cc9946da0b6ba6ff74384e4337fdf5", - "address": "lax1gtfq9pa6cpcnjm6sf5jycu8nvekze0anz0yg82" - }, - { - "private_key": "6f2892e1bacc287ae4049d5423a90518523e84275b349db3d26de5f01cc20124", - "address": "lax19x69ma500z8g7pcncvlr564832rfuh83js07gv" - }, - { - "private_key": "9f4e6fdea98783fa259b90882ff9224cab3fd215b726788d18bab29b615f697d", - "address": "lax1j8texg7224fra89d8zx4fy522pdgtcnt6098vk" - }, - { - "private_key": "0271f7b523f000c9d1fbaa79a347d5eb9551eb20bb3ada9e7f4819fba27d17b2", - "address": "lax1esx3rzg28r87lhsvrzrjf54cgvcrfa7l087x45" - }, - { - "private_key": "e3ff9722d4b3a9337bcbfcffd4d98bbeee83a66b9f325225660222ff986e6ec2", - "address": "lax1tlukswhj8h0ycwkwk5ejtdsczffmes07y49r9s" - }, - { - "private_key": "5a67497a74dffb271e438cf294e882da9af83a45dc359a5f15bbde0da62e5286", - "address": "lax1frzlmarc4fydre2e3xkg2pqx57y82ehmxt885f" - }, - { - "private_key": "021ab4138e856aaaf144dcd0104b21af1fb657263316a394b6c40fc58ef2960a", - "address": "lax1pu4r9schx5mvfqta4a0xrh96xqska65h7lhth8" - }, - { - "private_key": "e93a37c8b4dc2041ad510582d63aceac3ec8c68c35cad2b4786e60e4d407b760", - "address": "lax15merte20wa3wxtjmlwgjrmd66v7ynff4ncvr97" - }, - { - "private_key": "65460798391a006344b604ca2341499d5392e07350c844c25e157b649bc0491c", - "address": "lax12zlhu6csu5fwprreen346ye0snjexpw76ka9zs" - }, - { - "private_key": "b7439ace1a39c6d33a2454ea5af8779a471f36fc714f61c8c2e9e04a161d5367", - "address": "lax19stdv5w7gyfs82jmwlt92qd6yxwx9m88lcmm3p" - }, - { - "private_key": "81a8458af5869992a7f450108e82f382e43e3d00c0805b716e4b28d2245f3ca8", - "address": "lax1jt866ffz5640jnkuqgvugyy56t5a7uj36m6ual" - }, - { - "private_key": "59884bb10016634a8cf7a6c1f8d681b832d877f9d26fa16d2e3b12198d704eb7", - "address": "lax16f042r99hld07e8m59ftcustk3rqvmxcjetnps" - }, - { - "private_key": "e6b8253b3fb8acc61d5b22295b7af07b34e7f02678e9f1e2d64b2147d04a9568", - "address": "lax1svq239y7mw0pxcketjnauzd9cyakshnxgnanyw" - }, - { - "private_key": "c46056a214bdda7057cee8fd6b21a1f10f559865da90cf82cc3201ddcdc15b2f", - "address": "lax148npr74eyada3m5085ye02ytppslfltz968xuk" - }, - { - "private_key": "5562980d9ee86d6031d7b8fc64a4bb244ba387e8a5fb8ad878b663042132fa89", - "address": "lax1u56hqc9qcasnw8h95papg99vncq5gaxm3yhpkj" - }, - { - "private_key": "af59b8b86acc5f61f7e75c66bb49cf2b7c3956d22b69f6d94c9f90f4a379ede6", - "address": "lax1au6j6a3mye0a28gsq4uppep03scug5vyet76n6" - }, - { - "private_key": "161c652d8479746582119e22e9b65e3a911cb6229f36309488495f9cbe6a3880", - "address": "lax1jmfq8djv90jlyk90psc076k4an8n5sufucexwq" - }, - { - "private_key": "4575655f32181df2003d7e518787da68b604e1cf308941371275fabe7bdfbc3e", - "address": "lax1jmay6tfnep5s49q9m0vmweuftjwtkx54fc4e6m" - }, - { - "private_key": "236318cc856c32113ac7771000ee4299cfef078e77ca9180f6444c60be542575", - "address": "lax14y397nrdd0lmup2xwrf0c6ag33606sg4lk5ln0" - }, - { - "private_key": "011871e9480c363fb3e489487d5e7d30f83277d3ca430ace73a009fdac2afa13", - "address": "lax1lcprqykfuzrukl0xqkahyv22uzllepr73s4gp4" - }, - { - "private_key": "70aa62b802a6b7ad521e523ee84593ce21047c1730ec3e5c1629c45c04002595", - "address": "lax10w2r56uem4xrujrp8pcm5stxg2u9l2chxq6q32" - }, - { - "private_key": "f6cc2d4303ba54a2492ac310d8f356378ab1acbf9cc4d84192078e810dc3daed", - "address": "lax1ranqq2rv6j2zpjklshcpp9gwdmdpkd2w523668" - }, - { - "private_key": "2bc00c0b9b88ee1ee33aef31dc484e2895fd71c3649b854d9a2b57d83423bb85", - "address": "lax1t3esz34tvxj6rang46gny426mny3dyy2c6ex4s" - }, - { - "private_key": "1a7b708e5a9eb7789f1b57fc1c6207e48ccd791f325d11dc1583efadc08af2f3", - "address": "lax1qnqqc23m65rw3fk6t2xd0dqpxv4td9vczunsl2" - }, - { - "private_key": "fb41dc59ba07379fe320ebed2138d8008ab138aa3fe6228f3d51d9cf1ba14238", - "address": "lax18glnrrgczjswxdx95mtd3qq960mnk0054cweqq" - }, - { - "private_key": "eeb3a4a2bd7cbbe9c87e4c000b3e54ec25c75d20905de3dbf6d42fe7e8ceabc9", - "address": "lax18lntu2kx7e3505kakvncjfsd8pzr5lw06t7t96" - }, - { - "private_key": "a8daef803966aa64472f8ce4fd7ae6aaccbde382c0792b9fa856000e734bba34", - "address": "lax1k8j9dal8cngeuh3dxtalwj2zgvetglpyd0uftp" - }, - { - "private_key": "97d2fec54ac296aa13e8c623448a7464137eca1c7acf107f5002db8ea9271d21", - "address": "lax1nkukax3anjcnhcz2jcmuwda6rdqmjvvcv4s6np" - }, - { - "private_key": "fe3ff4a64a1de0e2b81a3fabee730ddc01baa5536d2c01476314a24639ecd764", - "address": "lax1tpl2v7q9jx6gywamfmwm9fjsvfxh6nneg2ts8g" - }, - { - "private_key": "91171e18bef5a90792c7ebfd63d25a433da19ebf278341efd8e389822ff55d83", - "address": "lax1zgl8vqlgga0ed63arnddnke8unve3le44j02dn" - }, - { - "private_key": "b3e58e34bf2bd15ecc1da053e487f467a456243eae63820db34c56f58a4e8775", - "address": "lax10t4ag2zcayceel7shvgf24m0dwr2e9mh9gttx0" - }, - { - "private_key": "265d53163eb1107aeecbad38921570b5a8cfabd62ccb330e6289be910b6e4a4f", - "address": "lax159pcq5jjm54detnsu6fcss8su29vd6fem0pdj6" - }, - { - "private_key": "ba6e13f7a8cd8172c7e39fd3d8ba1e98f4658a3bb0ca64fc6ebfab4b8c1222fc", - "address": "lax1xtzeqrc6u5k55kugn7u2jsmzvs0cw5m7rncwlt" - }, - { - "private_key": "524651479f85bd19bc6a7df0ec724d015ac49695e55ce8eede3607c34ed2bb11", - "address": "lax1un8nl6egsr9hx6zkzvdeh8afaclt87txhgmhsg" - }, - { - "private_key": "561f3368e7f69b5397ec3e2525837f129ef57c7a663bcf5970e0c70154a1ec37", - "address": "lax17w0ydfe0y8mv2y534k32ls5atdgprjdtpsrjhl" - }, - { - "private_key": "a60a35c2c0a37964c2c2168237774fce9a5546533b820b8bcea153000c88eadb", - "address": "lax15a6sg002nxq3ech5fp0u5u7tvqcyh764kfwl09" - }, - { - "private_key": "f65d18d5bc5c64e318f82d00a635a7e8fbd28d0c0b2f17ef6ae97d1f4a7fa22d", - "address": "lax1qtj6p86z79mspy4jtk5dmdqd04xnn02ht22e2y" - }, - { - "private_key": "c745dca9b5f0469bcdd25bc19a8e6559c77091b9647c88712ee7dfa2c17f706b", - "address": "lax192ddd2jtvh0r32wc8w3c05a26hcrrjjqrdsxer" - }, - { - "private_key": "8961ee5bcec6f3b0b38e5b95eedff887ccdc34d2886236fecbd9ad878c219f49", - "address": "lax16x3q80hphj5n0agxycqyqgagxgzpytpgn2y6dq" - }, - { - "private_key": "dfe01073ef3d2b0646ed1b9de7d0ccf17263f0edd63a62019e5da7c0a3ce7ba2", - "address": "lax1mdgnnu4xat7fg47d8cr7slncsg3pzpc5f2cwhy" - }, - { - "private_key": "b4121e5a3c7c0a4bc61d60807d240f8c0b14896100be13ac57552020395da809", - "address": "lax1djrdpckngvqf6yu0gy2n7c5s8j5gpecexgtrc7" - }, - { - "private_key": "c697aa229a46279a430ac61614eb5f338f6b0356900e0ba5d24607c3defe314e", - "address": "lax1q8tzgxsv6y4k3rfd38xa43wpxpsjhae6zzk3zl" - }, - { - "private_key": "614d5153a4c58fcbc833cf9fea75a3178db8aaec04135e439b0f2b613cc8e400", - "address": "lax1n43nse6qnxlcruanfp05gyc4m9s2lm5an6q6nn" - }, - { - "private_key": "ee31e0649c557c2021be7e7bdd640902e8e8b154041b2e27b4c6d8ee87c6108a", - "address": "lax1829t96j4hqtz5z8q4rya54r706gawf96ydv5nu" - }, - { - "private_key": "12f0bdf02c555f176cb56fbca4a91186e387a2e2d9f3c83faddc05502e5d2083", - "address": "lax1xmuhanlrdlgpexzatf3ps47gdqvhvhx0lctrd8" - }, - { - "private_key": "85ded911ac22ff0be2425bdf7468652017c3ad9a68e2f78be8fda245ec42eb37", - "address": "lax1rvp8vvjgrcvqyqhsvfta9w3szjp3k7q50m2r92" - }, - { - "private_key": "55779147c537db2c98ddc0b1cc85f27ae4c4fab1e51510993bc61c66b0717299", - "address": "lax1adadnv0xj7mwlshwy9nteam94rgwy44sy9g6e5" - }, - { - "private_key": "a0dc646a13c1b676f624052fc6b4000b40cb398a37450731a1575106e05e8355", - "address": "lax1ggn9fscdzwyx2m9x8sc6rmkkghpw39pgzckqv9" - }, - { - "private_key": "df2e1c798a96c4edb198415af8efac6981031cbe4afd7e2d6dc5c18bdb3acfb5", - "address": "lax1572me6u5fqdxggt3744z0yudp6v3mnuhle5dxt" - }, - { - "private_key": "9050266c13b153c5a08740e05de2c7c5e91b780216ff4761ada159372067b0cd", - "address": "lax12nw57x3sdl07t7z9dce42z7xpqnwlxzwcs5wa4" - }, - { - "private_key": "4a46d0a7705576112a553cd9cefa375e7c503f18435a227534f65cc91ea3c0f5", - "address": "lax1ahdz25h8vz35uhrn0m487wm8m6k0uf3rfwew0s" - }, - { - "private_key": "9efcbf90acb0c5a7eb6ccb840bf01f02e90b9ff018094303038ee3518fdd4eaa", - "address": "lax1k7kn43jtnzggwqn2zc8hy3fq77jy0wnyjw0rvq" - }, - { - "private_key": "1189a48ef72b6b2e8782f677300d30ce6d6b0936daedc34e30931a400904f567", - "address": "lax1veuufn0wqryy95wev574c7pfcd4cml8vjcha27" - }, - { - "private_key": "4753e09c44314473c4af8ab102a87b5651bb2c6e58fb26c979bd6874ec6b6edf", - "address": "lax187ezr2et484cp7cam3n72qtjm76de567pfy65r" - }, - { - "private_key": "315732072d83c49de419ffe4c3618881587067a817e4b05840594febcd35d092", - "address": "lax1q0zqrzwge8fdx2uh2f970xy0f2qjun724jkafd" - }, - { - "private_key": "051b3cdd2bee4a8fa2af5de72b39c2caac4aa6eee54ff7a44aad0ba7891cbf57", - "address": "lax1pjsxscdc9pjqruec4xyzjs76q9fvcjr72esk4e" - }, - { - "private_key": "5d190faf4cd1920737ec68f16548d4a476f35c6967eb9352afa4614839f5ed68", - "address": "lax1e5jt52uvdk4f98aq6hwsag8ss36e77l9mx3ac9" - }, - { - "private_key": "9dd3182e11f446442f7cf1c93c3cc8e29131b755d3409272cc837c6629666c09", - "address": "lax1kc366zkjus0k2xqu0jsag3tsxv69g443fl8eu3" - }, - { - "private_key": "0ae61f0494d598c93ab4460da5aca59337a327b582e0dfde8fdace5a46b34b97", - "address": "lax1gyudg5z66k00klnxkfahs7gf60ctqxn32ce8d8" - }, - { - "private_key": "0b449716bccc4ef3493baeb990a9e6ea33313a312ee811ff7d1fa594b3370558", - "address": "lax1y6dz2q7y772d4mh92llc0498yhy3lw4a5sfa4u" - }, - { - "private_key": "92c885260885dfb66686b3e55b9d69a85c2a90aaeb6913fed8f22bc1c990d99a", - "address": "lax1shhrd6999rjpj6q4cnqx6ep79ynttss47hrq9e" - }, - { - "private_key": "832242be32103f320809f0b70e52b83fca1e14bb7f8a1f5ba9050db698d9a8e7", - "address": "lax1j3lfufqk3yayzm9z8takuefqa2sfrtmvfmj4xf" - }, - { - "private_key": "6f690ba78288b818f16919797009cd5ed1bd21e8b6a0471696f84b50d7654370", - "address": "lax1g0l37tvqj522ekksdjvzkk7yytn05pmuevv2dc" - }, - { - "private_key": "457b8c82463d09bf0b44c5f26a4d1847f4aecc0da19a5501e650298c9694ffde", - "address": "lax12ahmv8d4kqhkaszr5pw8tp73wqaldelav4pw5l" - }, - { - "private_key": "e4c77d494b22c50cc14b68290ee87ec986030411667453ce0c2e054cfef5bcdc", - "address": "lax1s3g8ptkehzsvlpu8586pdyxm0530s75f9j9vwg" - }, - { - "private_key": "3d84ed09dddf8fb1459afbb25b6d95314c9a865728937aa75b31bf00dba32aa7", - "address": "lax13fg9ax29w3zjveuywx4q9r6dq92eagwf087jx7" - }, - { - "private_key": "19d979df51fab6aafdec8f82a3529e4f8067a5d781ac087035111d7cf6ce6ddb", - "address": "lax1hglk3wa3sc7dqukfhnjt4jnsmpz5n4f4c0ak54" - }, - { - "private_key": "3471df86dee54facd5ab0b3421fbb144a1cea1156583aff5a87fccc7060640b2", - "address": "lax1ajz8n30h3tasvkywpl22gqmjwulu0j5u8ndnda" - }, - { - "private_key": "a114701ee2e304967879544b2def01694efda4120e4ae7a960d03b563219a698", - "address": "lax1yutwls6u0dzgan0y3h47cqwwvs3j0lw29vqsy6" - }, - { - "private_key": "a1a399caa8166076bcd3224e6d146f4971002ddbaea846195f25cf80165f3650", - "address": "lax17hxgxhnscrt9kppgrzcvxv9964zrq2uqm6ugrr" - }, - { - "private_key": "0286b5d33ca58d4b7f95658c7231fe4c5ae8b61e09211f7e3218ab909d2f4338", - "address": "lax10w9ap9ag330s0kuzrx7g57sjkm8hfa93jpsutj" - }, - { - "private_key": "f426d111557f7f54264cade3d6487bb5bae9d90359c3434124e937bff94fc16c", - "address": "lax1qy56zr7mq63y8vzuuvh5jum8xvur0fcaey32va" - }, - { - "private_key": "0fb80adf11efef5ddda74ed5db36a47f916c6a9748eb211dc5cfcd7a4644e529", - "address": "lax13ntr8h4dt6hjtxhh8kst4tvn7zw0u8u5x7xj6j" - }, - { - "private_key": "217642a68f53515dfd9adf3e21b2b5ff2760eb4ebbb509a77bffe7a0139c9764", - "address": "lax1y2w9dzx5vx6nph7x9raeuzl4227jvpkuzsfk6e" - }, - { - "private_key": "ee3ebeb2287193846dc1ce556ef3fa4ba3352c2bab54dc29a507d52cc6080e38", - "address": "lax1u4860sfmv6kn3eyn6n82e88dus2mx452q8dnfs" - }, - { - "private_key": "64912baedaca3047362fc333908452843d7646155bf88714a35418ad12d13ad3", - "address": "lax1742t2rnhf46ndt9lz7n6x3arsdj35826f2z2y6" - }, - { - "private_key": "4ac3a9934fee548061aeae1bb5b7b055f969ab5f3a667fe51d5070a3fc86f0c8", - "address": "lax10nphj9s3l52lt4cnvtn8grm8r4qxsn5hekwfpd" - }, - { - "private_key": "801412d34b7156a19261e53088c4f8cf515676d9e137ea4e59ce92108e2dd38b", - "address": "lax1a5q2vf083ze3ddqwvevg08x4fc2kwum7h40gvt" - }, - { - "private_key": "19af3d9d4ef127c98732f76789892e488abc59dee9dcc58643af851aa1c5a043", - "address": "lax1wf7fq5lppq4r3yzepntuw2hvwg3sqw29zsc5lx" - }, - { - "private_key": "0d8246b7ff8d4dffc5c348f51043b72c8cd8039317a48b690a354f21ebca061d", - "address": "lax148fghva0yyw425w3yzf80nfcf6fj90hvydt9ul" - }, - { - "private_key": "820aa94e573cc8bf32f55ffb1e7002b78f62f5bd45b40207a20cf3393bded57a", - "address": "lax1v4nkxgk4gkpmd7e98alvf47599dteufk2g99e7" - }, - { - "private_key": "888d5845c6d442d1a6570f764f76f632e8d80a2c311d21675350944ccc76b64b", - "address": "lax1mtxv8n5zyl4sy5dvqrs4te3tqdthrrqj0j7kmy" - }, - { - "private_key": "86713bda87f0824a8bac7154e761e2cddbb6e97aae464af5766d9e233c3c6101", - "address": "lax153xefw5u6h73t5ej0yf90f8k4jfmugkyl26lxj" - }, - { - "private_key": "0f01ca7f85d79811202fd0cddef02d8c21ebfdb9f4910788046f3e0a2f1d8da7", - "address": "lax17sv47u3qh0s7dkjv78qqe5jqldjqvy7xhy6c7w" - }, - { - "private_key": "e58eb8324998037af6883bfc42f7bb9ed4ca33295123290ddaf56954e27d75cd", - "address": "lax15ng7l2s0vf2nd32lrvjkuyvlm4yxjy4qn70l3m" - }, - { - "private_key": "d07f9a2d6bdac2bd26eeedae6f1075ec986f8429937c1d252f65615873dcb6f3", - "address": "lax10nnr7ur45ghjngms9j9lvuljzqd9vyat688dt0" - }, - { - "private_key": "1b8c5f5e11883699d0f166eac076448281dcad127f88a8d3edcfb661c92fc597", - "address": "lax18jlee3053t7yl555hp7rucpcqqk2xs5qc4hv2z" - }, - { - "private_key": "57e1639a3e46ff39b8a42bafe164ff06b50159de0cacd308761c39388e78e06a", - "address": "lax1mmv3g273c078mp490uqxpclvvymhwqft0fpwke" - }, - { - "private_key": "3ddb482a32670100e4031217d78b80bc90d2bd9d82d9f08fc702e9a7b66aa5c2", - "address": "lax1y909zqm8x9vn66fklyqwe6qfpxj47lwwya36kx" - }, - { - "private_key": "4803f55b3a993ae3f8305e24e593fe38bd19780a36722438cf0ae934f6410218", - "address": "lax1pf32a7xs0jkjkjtusyeupt68lt2zf90uzmygm7" - }, - { - "private_key": "2f8acda2ee219a4c19fd35e86264dffc0bcd0f21e84ba42e039367538017b7ca", - "address": "lax1cdp3dkf8mjwts3t4unvp0j84a794nmqh6pw0sy" - }, - { - "private_key": "b05b296b52e37c3542fbc3074eb9b8b64921428138e8de22ee35e9313c98db80", - "address": "lax1a24upq4pyccvprxx8zjt4vk4ehkh5yykq9n5vp" - }, - { - "private_key": "cea3e3633b6b03fbdbe0904349c4accd63870814527304b42597c58c5e626f22", - "address": "lax1pmpxz95fv8d6ntkdeaev2643dtuk7t43w0aa9q" - }, - { - "private_key": "68174d5b5c651a66ea474d16acbeb70a9f3785ff7e3299e31d77fa9fa89304b6", - "address": "lax1e2xqh9kkdkllk9mpzznq9xa6dlm5gy3v2jv7x7" - }, - { - "private_key": "3719ec3d6e7ef570740f5f761dfa269a531d94675a2bf52ea5e58073c18f581e", - "address": "lax1m25y5qqevegtfh68unkahcn8c7qyauynw5552a" - }, - { - "private_key": "17635022fd6146fa56884b85bbd0654b1905cac99a97d25c533a8787faf3fd79", - "address": "lax1un95u97mk0ldm04p5wg63gyfl04mw2te3a5p6w" - }, - { - "private_key": "a60a9acace7bae6e44ddc9dea90f5b9cd3f85b40a511d4b1c070d79bc815488f", - "address": "lax1m99mqrzallsemzxyye0tad966vtsutk0w37eg5" - }, - { - "private_key": "85e82d44659fafecc6f9fb8783055a8b8d62cd4f8704aef4d3d01d9745f8d5e9", - "address": "lax1rfv96d9kva0u22ks8enj30h4ks7akvs20keeg2" - }, - { - "private_key": "26aea0304686e7a66636c55ae96e991271860baf065b9109b8e7710e86cbaf0b", - "address": "lax14tg5yc5qq6v9z0crygs9daddypz00g5u8d6syg" - }, - { - "private_key": "dd4d0a3fd2ba170ea30b6c15828bc64c3213ffe2d47d5bc663c30aa08b31ea11", - "address": "lax1txd85k4n0sendgsvtga8mmdggk8nw4kf8me6x0" - }, - { - "private_key": "dddf62ba7cac998499d7fa1ccef247d1cfe424c56061272115da7e79005e1c5d", - "address": "lax16gng970lyvn32jndy5yfzts9srarlh7jcssqj9" - }, - { - "private_key": "ebdc589c5110842ee95023b03c02e516250103c0c688fe30082f113b5fa66678", - "address": "lax13lztrnqxy3gh9l3zq083vvsw0wm2njlp2lscps" - }, - { - "private_key": "2ffc4fecdf0b99f5b59384f430bd6b406b3ac6a23b3855e80b9e0da116277820", - "address": "lax19ux6dch083xu6j3zs9g5ru5yf7tu9y5asz2h78" - }, - { - "private_key": "309c55471252c9e527c7d234f6800c9b051a1274705ce93cbd4fd55b5c3a237e", - "address": "lax1vxy2nw4cfsr2suh252pqdr7xedrt0tedplwxs3" - }, - { - "private_key": "672ba8784fb008067adc8e4aa4877c98838075de2ed177c0e9409c43e5a97103", - "address": "lax1yyr60m7c3wy6xw3f52jn5x8fql66a5n05tvz7q" - }, - { - "private_key": "effedfa48f7eac7b3d815a6a598c37e125c966d5267527c71810c7a8391e7f7b", - "address": "lax13trlzlx6hx4xw5jacc9sn37r5t87gyhp8f3ktd" - }, - { - "private_key": "2796318c6af3f1aa96ac6abb244cdb248c671896cccfaa92003cef8ab0c28084", - "address": "lax16lp85npfp2zud5cz4xclwyx6w8x574pvyxw9ly" - }, - { - "private_key": "5bd37becd9658cd8cf412a411caa9bcf639e43069c39de73577d0bef2ad90141", - "address": "lax1g72hqzx2v5y3gmytuqmm506hvlra26gk0sd2xv" - }, - { - "private_key": "19c2608a1743cb741a61c456f4586d4c9b1cdbeb192970eec155783cdb3cf12f", - "address": "lax1z7uuhm706t9sfdld4xdvd3epf03kp8t927k5sc" - }, - { - "private_key": "197fc2a765ee71e61c0f652ad94a12a809f04f69c88200a53483c37e33a46b3d", - "address": "lax14yfz8c9e20a6aclvan98xrw6cv70t083kj3h86" - }, - { - "private_key": "312804ab1d3f86b6245e3c8d2cd322016cab08b679979560199d8f732a978b88", - "address": "lax1zpktw38n2q0d087depwhruqaz5z8jjc038gjtt" - }, - { - "private_key": "c039d7ea15053c2f8cb8ee215afe69d5216246cf9d8057fdfaf541fd7eb16327", - "address": "lax14cvn8whwy0a4kqp2uxrudq93j74mmm6hse6u7h" - }, - { - "private_key": "81ef7ce9f6e19fa99c0f72596a1574727b4dfa7931e99abd7b39b6c147d7a93c", - "address": "lax14upl95zlu0jn9456x6sw02rqw73pcya7ya8t35" - }, - { - "private_key": "268447f77ecd003e3b5d889a269ada86a3ae5c12a856bf4699f50f7d6e034dc5", - "address": "lax103vdkugkmlphmmjwckhtzm8jts3pw6wu5dkpq6" - }, - { - "private_key": "5c04805980d16c9996d08e52052f1ea9fbf56b63e63593fd2c137ae80010e3b3", - "address": "lax16cxvjz0g52pgkztsx67mucda9z5pxw3kd9f9ks" - }, - { - "private_key": "b231ec3a0b3db28cbfbfb72f054ff5e6b87179112c8eb841a89be842cbce1817", - "address": "lax1f0wqssn5lemqecew0tfnp2j06srzx4unh8pfmc" - }, - { - "private_key": "d9bd8106363e864f6f8bc4ba3df11c5180ff16cb7073fa31191fc53c068ac7e5", - "address": "lax1ehvrwvpvdrk6eprl26t92y8zaatgmp9524xjck" - }, - { - "private_key": "a4c3494c2a9ee550c974b14966308c17de1ebfa0628bc79792279b25b9db1bb6", - "address": "lax1xylj4hptjnzt2h737v7fm7lf97ul860uwnxexp" - }, - { - "private_key": "0c530e784c976abccb34e604142852ce45a99def90f62ccade6d535b309730dd", - "address": "lax1ckc7wjr65n6zaajg8u0pq98lc2arsw8jwx2nlx" - }, - { - "private_key": "b3b81e89c03c1868a1350a5dbaf29480cc63753c9a2ac81dc53ebf1ee90f8a33", - "address": "lax150u2a0qjhfd3ay50e7nde443qkun9p3c6lu38t" - }, - { - "private_key": "0be32b0186bb65295391040e0bd5db10cad28d4615792540043832a855ed1ae7", - "address": "lax12e7zu9tyv3kf90uv58ea3z8tyns2tfxqyupemd" - }, - { - "private_key": "3df28365cbdf777c8333dfdb5f0232118322968298c67a01ec620bb22975e8db", - "address": "lax1xpyzm3uc25h8cvc8tdvc72aa770xdlgynujp7q" - }, - { - "private_key": "1706439d124a2c5650d39fc7f20068869499f0989026e28dc256575afd21b478", - "address": "lax1qm08zvaz8c7235jy94099p842u66fh5nn4zdt4" - }, - { - "private_key": "0e05f90d690a419c919d0755536315c0e8cce8d710ab4779b93cdbb241fef59e", - "address": "lax1a8zj5luzffnhv2cu4t4nfuaarnwzcsx92s42h5" - }, - { - "private_key": "8cf9294537c0d3f1067840cb250d7d41842b60fd8548e896c043ef6d273a797e", - "address": "lax1dht3xdwmk3es0fe8gv4k6lgctgqhu050qppaku" - }, - { - "private_key": "389d89ee75cdbb7140f42e0599edaa048240841e49d8d4f582ae8b3f2040bd37", - "address": "lax1c0ukyar7pr2qhc2lfalaugmmcu7gge6j240xhd" - }, - { - "private_key": "2537a1f39636fd8780c10885bd5ca13c46f3c0cb70d5e2b9f1afa4f7b1d6ef36", - "address": "lax1d5qtpk8p6ka8vuppkdd3u2k9em6fashmryagp7" - }, - { - "private_key": "552c78fcfcdd0561fedbcecef9516724fe4f5905ace58645fabd99e9eee483ad", - "address": "lax1wumykxxk06r7mpcsm63t2f3vnqd0xt5y50zeh4" - }, - { - "private_key": "ec64d07bd65f4770a5107ab2dce70c1ccd2b1ca46c62f6356ea72ea168aa524d", - "address": "lax1tndj90kymerkkpp6jj03etsl5dh9pz5jsy3q6u" - }, - { - "private_key": "04e38cbb712ad52a693941e57214c6114b6a88eef39d326b5a85ac05c7ca3ef9", - "address": "lax1r2jtu835axh0ectzjyg0rym4pzyp580zh86hts" - }, - { - "private_key": "0d801b3ccbcfac6713a57c724e4b71804cacbda81e2ca6a7ae0adcc43539c1ea", - "address": "lax1mjepeqfmj2xkc09cdx6ulyuccjddfxlhupxnj3" - }, - { - "private_key": "99c9e7141ee68c0df920a4c24056788d49580402f6be62e64eb80412a77b96e4", - "address": "lax1ek4j0a2e0svg4hxxcwy0ww6samuc7wxwyh3v88" - }, - { - "private_key": "4344e6ad199f0ea73a07af855d6e2df827e8b08d6da56404d019408bc44c1f38", - "address": "lax1dpxpqv9v6gkc23e5uxcz4tcjgm7whpwlf4urvw" - }, - { - "private_key": "655ce0a03dc28f52c86d0143bad6fffbc83207253aa01dfd1fdb6d3a8024ea17", - "address": "lax1jtyv7k5k0ssr34hc0td83x6dhvratqypj2jk3y" - }, - { - "private_key": "290409a47aff73d479f0dae41f34e4ea5ddda00e2370cf7c098109a6c8f4b428", - "address": "lax13385yr4ag07dlv3v9s8nyqkfkwnnwyljmja6wp" - }, - { - "private_key": "19c89d829256f47b97162701c070c967b406c62855010a83f06d3199689ae09e", - "address": "lax1xjvdm6twa9mddkgllm6llw769t2a83hwpmpnf2" - }, - { - "private_key": "f49b8176e053d38691c587f2f8e6f59b01ca34a2c5da39574172001dbaff8702", - "address": "lax16kawvsykz2uk3328jjudkq54zd82g2u6q9zmz5" - }, - { - "private_key": "54178a82959d50652f22862e1b82c1f35b827d54b96bc0d444afeec6458fd400", - "address": "lax1wzm7j4zlen3gv03tgzdle43327a4pjsvapnycv" - }, - { - "private_key": "4f88f234afaf34551e7ee1f46e03c88afa2f417fc8c557397ea67bc18cd331bf", - "address": "lax1twctmftg5p5xf9lwl6mxpx5d59ap9g02kkc9aa" - }, - { - "private_key": "6274245964158e5040345a3e0377bedbfb248ed0aa5120b6203abf3a99d30dc1", - "address": "lax1l4slzpp2qmxjcvpgq5xparayxjdjfxek8lu6l8" - }, - { - "private_key": "ff352d5b2b1f8e1cfc9da1cc9acdc4d500f36a3d656907eff83f4d72fd70bfb2", - "address": "lax1ylh0kzvmdd9sck3qp3hm7j6gedy6szdwm580ne" - }, - { - "private_key": "a0ce3b5abfa29892446d59fd95c08891a61bfb62a0b0975d4c01ca732afee170", - "address": "lax1am340pqgkpq3pw9tqxkalg70ra53fnr49w4k30" - }, - { - "private_key": "fcae419e0f3489bfd53086865fc5d48159c2249e4d0f5220a8e93e6aa6522db6", - "address": "lax1cznuneewwew32tdm6elqzs0heaj9r92qx9f05c" - }, - { - "private_key": "7dd07964fc2c68a604fb3f3a0c0d5a3a8e31eb60a182a6bd8aab0bd4c2213bd1", - "address": "lax1pr20aquwr5ah0azdq5qy9dgtp0s3uneywq0ux4" - }, - { - "private_key": "0ee937a712fd14887a302104a34cfac8b2cdce21ed7b95512d52ed842c77a630", - "address": "lax15yfl50hxc99sv0yeeda08jqgtlvw3rxp96s99m" - }, - { - "private_key": "f4ddc40897c071b90b180e0110cf89ec382c1426fc95fb7c28de9231e0c115ea", - "address": "lax15d3nzmhja3an5n4heuehjnh2zhcrv8cxj5ryj6" - }, - { - "private_key": "3cc96e5804c7c3fb8c29b1459c5e522a3c1d1b41c8213225c2e2129d4968e829", - "address": "lax1lrjg9kggk6gnwyep65eqyx2nnjpa5qpm4k6m8v" - }, - { - "private_key": "0d97a8a6d9f621cfbbc04639f964cd0c333c7ddd67a1abd92ad2d645648854ca", - "address": "lax1yzxz93fh25dkpvl29q26rmq5adyj3p350vsdde" - }, - { - "private_key": "4b912651e165775b51d30d60ae623438e06c03117294fd938c6dd70ef59b3b19", - "address": "lax17smm0t53tkmsdv6uk6sjd2l9dvmncyr0k68lj6" - }, - { - "private_key": "171deeb1c81db5520d7d028b53e84ccd36cbf616ea022b982f84fdcec779d02d", - "address": "lax1v32p24fhduunkee9pj7u8tccx3pl4dt5cfuup6" - }, - { - "private_key": "360684784dba23dcbd3cadf338cb371e497b2ef0851629bb12e51c7dc8748353", - "address": "lax1n4v0x4s9dwv667s4z6zt48vx8vwdp9e3fq6esv" - }, - { - "private_key": "e3695eb39178ee463ec81b5a4a1da65fc175b2ae11e9970832519f24ba5e1efa", - "address": "lax1fhna7u5jqdt7kweqpl7m3s2vnxjse56uff63dt" - }, - { - "private_key": "484daec42e3f0f193c7f980fbc75ddd89e335fdbd479549260d67fdfe1c404c6", - "address": "lax1yagf2pzhhxkqaywsy7mv0zpnw2pccv4xw5q0ld" - }, - { - "private_key": "4c06349d810e52559d076419edfdc6f524b529300438bfa90709fd601d482d31", - "address": "lax1d7zh9cmcash4efpmv2hlgt5fx44ckwewpn4wdr" - }, - { - "private_key": "042ce3fd1c14a6b963633d8be7d5ec80f8723cfeaacd5ac1c22421cef433d36a", - "address": "lax1x4cvxemj5ygu7rmy6ysvzqnat404qs33atgkdy" - }, - { - "private_key": "90183f12e06513621404e56577d892629c73e13ca3d02042b2d81b0e75ae224e", - "address": "lax17x0sjuu2u657sxz52hlhlq5ssrj07m27h4m8yx" - }, - { - "private_key": "98cda86d3f212004a72362650e862d5a976096cc6ed7f0804b87f1a38503c592", - "address": "lax1c9g6yv9syt24pstaefhsdd6se54l62m0gzjc9w" - }, - { - "private_key": "a6a6b346faf057703872b066f783c979cc16d53d5fad2aef4f3a4a74b161c131", - "address": "lax1sj46de88nd5ky9j9vzmqs047hu30xj065zqx4w" - }, - { - "private_key": "6417fc2e7a357a13d8868cf1e0e058a65b1ca618f10204ff261b7e178b3369fb", - "address": "lax14uajjj4e20z9wy2vpgyd6ysd94ynfkr4t6r5ca" - }, - { - "private_key": "c8d7944fc17710c232b810543bc6058c71076a3b4dbbd9118be3b2ad1f7b83bb", - "address": "lax1xu8pxhcje9fwelkhtmts0vqlyt52jn9pmrj5q2" - }, - { - "private_key": "c93a22ce5c381020e3471f1d3e60418ed25d286eed38876f938fe4d6020a40fa", - "address": "lax1uw98lecl9x6wrc56hj4du57z7d7zkdvk23rrjm" - }, - { - "private_key": "71044e642c0b045d5f71e2c93a752006fcca55a1cc744951b52b73cc41f838c1", - "address": "lax1r54h7edpy6cksl3w75sej9mj55aeengua0p4uy" - }, - { - "private_key": "af2df50dc66ee7235a909e456b75cd0d68a32f14d9dedeb99c79bea96bffcb7e", - "address": "lax12yr0thrasfpzmkznvfey2afs9n7cj5h6kmfqgj" - }, - { - "private_key": "58fff936e61c8dac1c009f134323eba490b1469ce09015e89f4f5646e0528160", - "address": "lax1kdf8hw5wmyda5vr87nqymansd9fvddhqjaccst" - }, - { - "private_key": "35092e586d94fe511f5e9ee59a0d4d02a0283b976607e7284a855dcbfd20b3ee", - "address": "lax1s6732qqx5eglp7wkhsldgpfnfcpgy7mx4alxtg" - }, - { - "private_key": "6945d4272ee1133b0e5bc121291f42210f7a7a4e7ae96a418293e75619d38835", - "address": "lax1hy8mj5nq70jmfqeflglldf2aquqe0urqymtpzm" - }, - { - "private_key": "ec56d49d42f034ae76f06f450b265f2e31f42d48b45ae72ea5f6cd58a3911bea", - "address": "lax1gpnnhz5yraprptaf7c2s6mdrqukjzhap2lj7ry" - }, - { - "private_key": "2544aa7d7fa418234069945f95f8589559c616af489c479165a32d2f9f196eb9", - "address": "lax1ajrkxxrlmrc6xzl9uv6l9ux3r8qk05wjvasca4" - }, - { - "private_key": "f3f28c206fd236c089abdfaf71d3ef15e41063e33c5452ccbebcc1ca522889bc", - "address": "lax127edc5u322c7s7xggjekza47yt5wq8kv3che3f" - }, - { - "private_key": "d6f585999fee6012a11365339d1a81f725abd2bf31feb68cb8fbe6cc027adee6", - "address": "lax1zp2uh5z7nkt2ag6ayzgcr7qkyel73halm27f2f" - }, - { - "private_key": "f382b31f5a77e3670b15bb69752d63d9ff28319ff34681691826995fd520c255", - "address": "lax14tm8s2fc3afemhuydjmasxywzt00jgezphtd0r" - }, - { - "private_key": "ab693c02be36f0a57d8e7c8e3dd116356c7035c2af815221709b2e09283c5f6a", - "address": "lax18m3z37wt3htvfg2ty4dpw2dq33xf5hpww9wqle" - }, - { - "private_key": "5145bf3632eaafac01650acfa4519da2a6e33dcc79af4270515759542ad850ba", - "address": "lax1mwhqxy6cnmzfv05t5kd68yhx4xngfkrd4nepmn" - }, - { - "private_key": "6f12e1ac56b6eebd02d6e0c147c7450cf7b33c9e5f0088138b1fc542b2d32c49", - "address": "lax1avd7hxxurrwset9ky329h44e486s4u06a6q0yu" - }, - { - "private_key": "489075c75ba46bc7ef16df0ac801ccf96b44724400ddd43b4ea5a785f18ab3f3", - "address": "lax1a6asn67hs3uuptnyykcc8vhn9qvun43nxawqh8" - }, - { - "private_key": "4ad84767c14d2f191184732dbcf910cbf972a519f2d6b80af070e24733621f7e", - "address": "lax1v8lj7jg37qh8hxau5cja8587v78ccfpjle78j3" - }, - { - "private_key": "1dfac45afd927d829bec7b8d16cd135b504dc82c5d33c5d78c5a968686d2efdd", - "address": "lax18tcjpg4zk0x07j2275f69gct8hwefv7l486ana" - }, - { - "private_key": "326ae47585ec54e6830ab737013b849e7a21e2941752293a75dc9b4e29cfbf56", - "address": "lax1gpdmnkynjjv0vfttaegsxfw9pssc6hh8m9cnvy" - }, - { - "private_key": "2281e702b15f039d79d2f287073d241a066fd54d306b594aa7492a14895cdc51", - "address": "lax10vlsck9r37tg74tezlfgdcatf4v0dm3fnlx535" - }, - { - "private_key": "e78ba42daf13169b9686f4f18d66f9fba2fcdfc203d0997746d593e37740b2f8", - "address": "lax1nfe9dexwazqwh5h8032yhuplypcqdh0pqtd4my" - }, - { - "private_key": "331f0e23bb18a0a745a91544772f34cb18601f3520de6d30409b22edda12fa26", - "address": "lax1hg33he4tus0vfa7zzfqz2ksw72wtek4hl2k7fw" - }, - { - "private_key": "a5e63e991480448272b55926ce52fca1a111b6fb51f36fd90be71c2d4f3eee5d", - "address": "lax1su4ce84fws88fqdrm4pvu3xk8z6yrpvr7c85tl" - }, - { - "private_key": "05eb067aa616805ec831afe655174a156dedf01eb6a6bd6efa0abe2ef64b275d", - "address": "lax1cex3rv9ctzwfsc8mzfrepuy6zk03atg2ky560d" - }, - { - "private_key": "6cc2bf81b9b7d6e957611e99d68a8131b000c5392f25137c3d5f266da2c49a27", - "address": "lax14n2xza56kqf7rv7f62ylxyd0fm0v4496l5pe9s" - }, - { - "private_key": "227658f94ae8d682e019c3cf8733c04b03ce7982bc73bd944a08fdf5e5171cc8", - "address": "lax1s6xsna6au47qv5g4r32f84vt6j7j0xpm6ynv7e" - }, - { - "private_key": "3535f483bd3f719a74e299dc1a813c4ac795b2d7f4c9132b1f1ba1d425137296", - "address": "lax1th6ugwhrmmardrmzqujtvkqzhy8klyngsdp8v6" - }, - { - "private_key": "28ed66e278c56e82998e85b039158fb5b7d10474a6220b1e54eb709c29df1522", - "address": "lax1d55vmjagakxyg4gd3tpqq3gyjhmzpdkhew52qd" - }, - { - "private_key": "b2e3ac9d3694a1e0a812f4db26c123857c06c4a2c2c4ac1f7f19c2a98793f4a4", - "address": "lax1y6q9t0784nt9h6gdp0mfjh9j4drfgl2zfqah77" - }, - { - "private_key": "0d8d78ea78096be28cdc7c0b21cf122fa505010cd94323297cbc2220a972bc97", - "address": "lax1sg4avachtwuf2pxpy8swmywctqnsrg39a54sjv" - }, - { - "private_key": "bf8bee30b4da77a29d14625a3d9fd7e5a78800b50e379b493e11325bb289445e", - "address": "lax17ynktq3w7r9f6vmned3hymvuyq6qst89zv50sy" - }, - { - "private_key": "6d1087433aa5efe53d7081400a88bb86086e2dfc531ef0e4072ba8052d9c017a", - "address": "lax1r9zveqzhj8klq2kshfq6dvkm9w2rq6agqan0p5" - }, - { - "private_key": "caea9b5713661593e038bf7e7b9adebd29ef0a2fa3bd1a6c5620e132b65ececb", - "address": "lax1j68n6ssqmslueg9npn4m0r7qdcjagc9h0s9w87" - }, - { - "private_key": "dcacd89e55a5c9a15f095d46bd7fcfec41466d825f023bd63ea65f2aee2de1d8", - "address": "lax1stp4d3x0pnutvg5ahjqq70ydqtw3ke7tpwyhk3" - }, - { - "private_key": "21efab1bfdfba132346097052a7ec65e3a35c49719755a87daf2a329f27b4453", - "address": "lax1x4cpe22e0dh6aemdvgvqz28stf5rn5c3r5fn0j" - }, - { - "private_key": "765deab59c6523cae15161be36b6dbd18e9a5eb071b6641aa7397e8b3958f3df", - "address": "lax15xs645qx2c6t9gx64ck3e8xwkc704967uqge9q" - }, - { - "private_key": "ddb24fb6804df59b81317bb9a7a0e81843e1da09c1800a8cdd3a89c24edd6c73", - "address": "lax1fj3jxuzglavl7qxr4lux0zeap04e78lag284qy" - }, - { - "private_key": "05ca2e1d424a2e68ee5f756e52ef45a6ba984d6cec7f14ca9b0996441404c336", - "address": "lax1h9m93mpm08pagl9g45p3gmgzr9fh444ql8t5pp" - }, - { - "private_key": "bebd5525ad8746cf2952ec6b814b3b4f2141fa22322b48711de820d144f8dcb7", - "address": "lax1qm3urn0txn3htavdsr3pn3cj0rkxa25qxwrv9u" - }, - { - "private_key": "0ff15369778855575ec83d29102473df14d9f48b2b9e71bb77b1bced8cd16737", - "address": "lax1mdp98sczsjfan8yas2an83dwwkxduk3ucuhuu7" - }, - { - "private_key": "4c414b11b5edcc70e47ee44a257c26ae27b4ac928e22ef9957085f5d3e869d07", - "address": "lax1p47j24ycxsl5jfzr2pytlfwcpllu79ztaau4l2" - }, - { - "private_key": "80c34b4b3a67a662d0f3dbcbfbc41e28b34a177f53888a10112a8f51854de049", - "address": "lax10r64e03xmvazegw6luf4femg0r5kagewvm0kxp" - }, - { - "private_key": "ce95be88e762509939bcf442cf4c69eaf02f930db3e12ede46603b04962076ae", - "address": "lax1ugzy6k07rukxhgx2epx36qhlx22kh3y9l9z7ly" - }, - { - "private_key": "15a2e2a026df57f0c89a3e3947b745235256312e0a81ead7d118799b13dce35c", - "address": "lax1rn4esrdup4jcl7n4g27a4hcavqzx8am3vj9x2w" - }, - { - "private_key": "35298f71871558288e51b67ed52713fddf0cc70a6b60d1191db01518b0c88ea0", - "address": "lax16ud0v9mrlrcdqr3wvh3dnvjrcqtkn7lmzdlh0g" - }, - { - "private_key": "ffdc9eb5c93029e71abaa825759160f0062841b240e45950b1945f35fd2010c9", - "address": "lax1zggwjllf9p0gau8355n2cc3reqyxpwfk8qnysk" - }, - { - "private_key": "118dbb704ffacb61c4e11e7c44db5fee70e3f81dc8537cc68e8155b620448819", - "address": "lax1rnc5vft2hkn7mzlgpxu24cr48we995fgrgsrzp" - }, - { - "private_key": "80228b9e0421a697ba07f00d2479e820ada5a9a8db0142eb92177664557ac4f4", - "address": "lax17zy97n9zt68eunkx6a2ullfhvqr5jx7jvu7f4g" - }, - { - "private_key": "f28d117ee95c57100c0acdadf3bb6fbf58f27b64817e85d37ba7070a48a6a9ee", - "address": "lax1ww7h3amkuer7cuza045ptcwa52zykwutahkul0" - }, - { - "private_key": "4c809b0fb548f86516538d4fbd19c1f46b8efbe17bc979e6c03f1b9824dba6b0", - "address": "lax1zga4z88az2vc2sd925yhztfx02dn587yntesv8" - }, - { - "private_key": "a5062bcf7c50f0af136a880ed87b201ec8f3d1f99d804f099a3dd0ae6569f4d0", - "address": "lax19gy8mp7kwqtprtruuc7mfpachf30qtcplawn66" - }, - { - "private_key": "5c42346b6063e8f0db24632fc24b53ad5d25199b5087177b006a4a78c3983d65", - "address": "lax12pqw9fnk7fxjmqye525nfymwtjsral9ykc2gqy" - }, - { - "private_key": "a24c896c76d5819099d4f7f2f7197a80f31cdf05da1f56c481d73be1513b77d5", - "address": "lax1p8h08lh3hdtmpfxtpd8yk4raa6uvpkm96tn065" - }, - { - "private_key": "80f9710db796c7a5064bb94afdd4f69b58219375434eb8cebfb719efed21430f", - "address": "lax1qenyqz95wyy6uclmrp4w9dzgtjssq6s4vejxwu" - }, - { - "private_key": "b4d87cf56c322c1a4a13073c4a2ff7fd9808313280d19d9563890154aa708344", - "address": "lax1akjelfk3dewvltlcqt8kvqyrrvg428ttmxalfk" - }, - { - "private_key": "e4da4afa42920d91bf376e48bc3a9592a7bd9c0b519e2a13f35b292e559976f1", - "address": "lax194ztmtcn8s92u5ftyhs74gysl3ra7yapzjzyvk" - }, - { - "private_key": "3434d75c54bf32d0afaf90384aecd287e7c866bd81cb50a2df6b082e9cee9cd7", - "address": "lax1yf8kwa7zs729sm0c8najglspycv26xexqyaj0c" - }, - { - "private_key": "74f7ad68d6cb0cd136f86f1f47e93fc36db9d88a012d949dbbab6d16efc65c2a", - "address": "lax1mmxfg0aka4vyzre74d7a2rzk5pfnzaaxvtd6dt" - }, - { - "private_key": "995e594b2903a1294507d5a934b001a02a3b2fc703b3baa51a5d456945128c30", - "address": "lax15phm4d7k9ganvje4gjh9l670stc0ecah5f8yah" - }, - { - "private_key": "837ac8c98d4917abc3d15ff23098d1deee36992aff2339bfd420745ef9dd725c", - "address": "lax1ag29w73kscd9ndmn8teptn2rscnafxmq6afhtw" - }, - { - "private_key": "8c2deb532b7022ff6933494f58ddbc58167df9f4feadff5d6ce0623e954fb650", - "address": "lax1x4y3lprvl3k2vvcp9v0w8yu5h8d4r86cyl66tk" - }, - { - "private_key": "fbecdd65bab748c03fb776db2ba5b582a155641b501e16499057ba2e8858b0ac", - "address": "lax1x62szxrz2wd4x0ptk22furupaz254dkkfwk69g" - }, - { - "private_key": "80e3578ea3fcacd8e81032782a824f02fae1f8005928262d050c2ad68f0b3796", - "address": "lax1n7hd4r0z42hfymrv663fpedumlzfyz24maaq56" - }, - { - "private_key": "0654c3553eee793717e9633dbfd26f612b07786845c0194538dde7e0fb00c1a3", - "address": "lax1n7a6h0hfke39pvnsekv6mc6jvgafzctdn6pr33" - }, - { - "private_key": "fc40eb7acaf3dd38bbed572b35c1a514611d5f18cae2741582cd79ecfcc59e22", - "address": "lax10n7aw6hjmpf0x6960sk7r4uczcaq2tc5f5pv4m" - }, - { - "private_key": "f3ba57b57a961cec05de050a63a409cee792764efeb11cf2aa720558ea5b73d9", - "address": "lax142p67sce35tft9sfx97xmp95l2m5x65qvsqn9x" - }, - { - "private_key": "160f6832d98408a460efcedf689e7196cbbeeee1635d022ee364a0c0ec51497f", - "address": "lax1lpwtfnqcrn5l70h2sl5wvsnf5xdwu272npxj9f" - }, - { - "private_key": "083cbac133d5c83e8f7deef5803acc2d2028708845158e31098bbbd82ada94ac", - "address": "lax1c5xe286cr20akrfvrqvgmrt5yajfk2gf3k9ftw" - }, - { - "private_key": "24fc316a04476d245dd32380a5102f6917b5762143186ffbaadaccf74886d08a", - "address": "lax1n6gepjd3xhp7uc6uweazfr0ezy0lvg2wz4p9hf" - }, - { - "private_key": "441667da79fe33e4f707b3df784b77725493da5ae1124f76356629a87fcc9c71", - "address": "lax1q0phll33x3aayacvnqv3ggqnfv4setms8xz432" - }, - { - "private_key": "9d66c8f15f411991e1cf801caa3ecc59d3cb30d969eb7ecd64cffe424ab8cf09", - "address": "lax1eqmltet7tpy2quesh60wgtmwy4r607w9420rlh" - }, - { - "private_key": "53dafe48ba1517267b9f77c9af42281f09b04ba7dece22af9561f7cf3cf4f39b", - "address": "lax10e5cr6thpaw268jen86kn4uj57hjderx0lezm8" - }, - { - "private_key": "ff46d3ebb5b4506967dddb34f8edf86b771868ee83af4b57b2f67508563f61f5", - "address": "lax19nhnplmmu3as85ha9pn4tfn2n4cx7krnd3wwav" - }, - { - "private_key": "d87547416553e1f78131bf80c90b5857a8ca68481cbce2f5223fb84523143972", - "address": "lax10772r85pf634a0qpq2m6dmhem3kcq98tjg55j6" - }, - { - "private_key": "0873178428a4a4bdfc599ed827bb613374adda21157c0c33b848b60b409d1072", - "address": "lax1gz6zxnal2aepxdsxg9tymngjuypmaau8l7z29r" - }, - { - "private_key": "7502884c2724f4246a1792188a7d7988926b961300fa8287ecc7b55a53acfa21", - "address": "lax1x6x59nwtkamjrp2043r9xeaf2wmjpwqa73qds3" - }, - { - "private_key": "76dc5146fd61f38f69ea691c8cc20c1fcf7d588e3682ae04bbba7810ecd53c71", - "address": "lax1zpt8pkqkav82nuevavcmnt7pycsm6g2u7qw4vd" - }, - { - "private_key": "3e9654c4a0f433592d2fdee6a08e5401a7944bff5605ef289b3f4a5f3f6be538", - "address": "lax1ut7lsnwcdxp63mrpygh2cr9vu7cwgpjsmz8fsf" - }, - { - "private_key": "1a1b4441bfbb64bfef5293f9d7109bacfbd7dfc22702bd8ecd3eae9805c827b8", - "address": "lax1p7jrs8yh2cecr99upwx0z0wsfrnqzpmt5yz52c" - }, - { - "private_key": "e921e2f8b8ee1e323c9d970756d53398a2a40b1f6a26c41383445f9f04f8f425", - "address": "lax1sjcevfats2wveslpzapstg4qfrg4wfjfnjeely" - }, - { - "private_key": "4ed54b061767ab5cf4d3677c8884d65ab48f14fa2c9a2d2ba93f401849e0d733", - "address": "lax1ps0fkhnluxkv0fv75a5wp8g78xkq3pjxulg3kd" - }, - { - "private_key": "390073de305d1d6ca024836ad1828e8b58b9d61b42f5fad144773652d02d6be1", - "address": "lax1cx26qauhz9w905r2389eumda998g7twkqa08nz" - }, - { - "private_key": "1691cf3938691c874996e64737cd59cfd1010a7cdd017e58f99e0c4a5b58e004", - "address": "lax1mf4sdch823ksqs7p0j4kfsd9as3x22n020f88y" - }, - { - "private_key": "bd4d543c3c01f944c0723ce4e309cb28e230fea377941a0278e3dae6452945d8", - "address": "lax1cxvpdm9afk2ng3dzw6lla6ke2l85a89995se2d" - }, - { - "private_key": "2dc32f6514079a8257caaed356c37c61d9bfa6638ac192adb7c7b81f9be2f333", - "address": "lax12pqval7vk4sg5p89jqe0trzkylww68hh3eky0c" - }, - { - "private_key": "6165a0dabee62ba968a46675b5ff0a0cb0a032a61868e7c886d3eb9b28feae9f", - "address": "lax1u7q52st5nvyve0svy96c446tz3l0tk24xx72xh" - }, - { - "private_key": "c5e544301f3f51fb079cc5ad665632cb1d457bc45e6be4272319182713767478", - "address": "lax1k2jm3m907fhgcsk2ag0cckvdywr0tzp2v40gu9" - }, - { - "private_key": "6267965dd1c01dacfb57fcb1703b9777dd7f5d2f40dcf8ff3de30f233ba10f9b", - "address": "lax165f5xs7x4geq3a6z2y4pccp6wk7g349y7fmm7h" - }, - { - "private_key": "fa69725813701d8954186aa0a7d298aa3f55cf79ce8b9759bf959bdb98132e5f", - "address": "lax1adyztc5nk5t2f0u9la8ytf6fju482ld7l82u5q" - }, - { - "private_key": "792dac9bb7b60a0c39389a2d6f2788c5a92cf7eb3c155e04377da2d6368c7999", - "address": "lax1kep4njnw05afamncxcslx2jggm8fqyxvdkw75q" - }, - { - "private_key": "85950e4366b3021c55e698ba15ce11e87d3919507d82a60a1eab9748585db808", - "address": "lax12kmmcgxdrhsf58cfkhnc96flzsn4u60plr8lu6" - }, - { - "private_key": "5ee00405f2f96652dfe1d00350d0ffe485cf127811cc755dcb56566d53225eee", - "address": "lax1d8vhcler68ezde7rfasm4dsaencqurhf79n3vh" - }, - { - "private_key": "8efd9b4c0b1d21f105e2da0bac4ab1fcbceefdba04cdb53bb4540addd3c1c6e8", - "address": "lax16mpy07ce4edlueer238e65n6yky5lehlae5pfa" - }, - { - "private_key": "c7bfac591a3663a8487add54c0772ec9cf0bd785965876c16225437f97e56c2c", - "address": "lax15yanrr99hranwvnp9aefw2r9d0nt0p05rm33xg" - }, - { - "private_key": "8060d6f819dcf2797f3fb9872f8c13636418236329c55beee518591d96b122b8", - "address": "lax1cp6qkwneecwtukwvlfqmp897ep6snu374t7mdm" - }, - { - "private_key": "c6098ff26b34834543bca3377ad30a1e822700f1a682b7dc2f98a23544ae57b8", - "address": "lax1653fn6y947d2fry4awhjlpscsajm6943859akf" - }, - { - "private_key": "2eaca64046b1ca44d7c1b1df07b197c97034e558ab1d51214566af9b88a9d9ae", - "address": "lax1vk9ey3ng9ezcuf5elnthkf67k8gmmnhrf836c8" - }, - { - "private_key": "6fba386a7952b3e04adcd40bdb033306cf9ad9e8d259b9174c1c7d4904deb9a2", - "address": "lax1drvpa250myvgg44fd5q9smr7rw3406ld9hdckr" - }, - { - "private_key": "ce5779be4cfdaace99093c943b4e6b27e164ca45ea11dbedb37a4d1b13e12f49", - "address": "lax13e24lpt4qrglh6jaatjrn3z28lcdk0mfa5fncf" - }, - { - "private_key": "954e70458cb47259a4337f3176c2f54f9f23edab6ff000ffb1f700c6c53763df", - "address": "lax1h2z463khg8zxafzrl0ue703ppjghz3gev6vj9h" - }, - { - "private_key": "1da911afb36cb51a687588dacdf877de1a9db7bc2218fdf35903dc5a179bc3c8", - "address": "lax1tatlvj74nv3a46vdtacv6c434y4cdweqrgxz4n" - }, - { - "private_key": "84e79158ab2a4c2bab5f94dd41f0f869f2cde555f61af4a33b486a6517eb0bba", - "address": "lax1nryx8hm35jyqshv3ex9dsjqhukjyyk0zmecxuq" - }, - { - "private_key": "934a5df8b4476f41cc2eaa190e5fe6112303ddef8c02e0afa443b756f4a32873", - "address": "lax1je98hqs4rjlra83ls037zvxmy5h0tdcrp7wjuw" - }, - { - "private_key": "eb53563867ab78b2fc142cc80e532a57d35867b0ec84665e6701206164791757", - "address": "lax1n4j4h7ytkfq2xjxgfvv43ycengkkd2rgnrqwcf" - }, - { - "private_key": "027d0ad2ae98860a319e2bcb8380ec34d381e203181a3fd30f3cdf967d102c82", - "address": "lax1c4g9khxwl54hj2652z9auz88rfvhqqpaxmur22" - }, - { - "private_key": "a0635fa6224c032d9df1edd33b7111f065715ba7ceb1130423912fbc1652a6bf", - "address": "lax1xp9eglq8d9380lkyqz0s78j4vta95nl7utc8fr" - }, - { - "private_key": "fe26cf36d4654cb899b043dc7d7dfb8521558c29ff94142152daf6d6e5c30ccb", - "address": "lax1pm3x95e9s86u57sr2xe26tt8utmrf5gxms7qek" - }, - { - "private_key": "fe0c16ce09a26c4a0c8624bab564765358d76eaef298163c0e7f4ac96e9e5c25", - "address": "lax1claxq74qlkntr8me0jfse48tvnc07thnhmls7j" - }, - { - "private_key": "515f231c641a14f32d8b9833e9214702839309ed19201ef23b5c41f7f8313989", - "address": "lax1c78qg0gpsnhpvqmecarr9ahtpgh0fzfed7cqp0" - }, - { - "private_key": "6d73f239829b7c1a9216eb97ed94145dc00bbd97b5a522ff53b4c023c73aa7e3", - "address": "lax1e92mgt4u0lcjvml0mq7smqusx0a7rnsftqpyvu" - }, - { - "private_key": "8876c7a933fbcee68b89e176a117019ce4449ff8e707c9fb061fd520e5c7c426", - "address": "lax1rhxsx0ddkxznakgxwm5l0k6ry03h49c52wy7rh" - }, - { - "private_key": "852f308a0ccad3de3ffb657d4be189e2ce6f5ff473e17ea8fd751620d009fab8", - "address": "lax1ang54gtmhhsugnjcxj64gdv2xh3kf3k2ctqx9x" - }, - { - "private_key": "91873a6e58133ee493220bdcceb8f36656c09e53130b5cf5cad88b7d62019636", - "address": "lax1jescktl756t8y0r3rke4qwelkgr0jyxn5t7rdj" - }, - { - "private_key": "8a0a8bb40774edefe2bcde37a36d82bb3aabcfdcbd4730ce0be1cc248262e4cc", - "address": "lax1gz0pkxznm8q0h5t6glutkw543p2qs6g2lmhaqu" - }, - { - "private_key": "93edf3826e88fd49d0ba3cb96f9b91d19b2cca842e00fc152f8c7b81b2019e43", - "address": "lax159v26cag9zjfhjwm5jvfn4svvxucnq03kxcm8m" - }, - { - "private_key": "209f7e33759c2afec0c201abfb1207e6a2b6cab161e049e83980d792b00715cc", - "address": "lax1kl8dvfzna3ge953dnwzafcf00dxsq3zal8wk3a" - }, - { - "private_key": "62c9cdddad58fc905aa1a827edb7426c6344082d333e5eef6599a4e43ecf66d9", - "address": "lax1nqsxc9vl8ts40x6w0y22xlyae9xwx6qun7j8y5" - }, - { - "private_key": "0bdd0abcd97f41ef7d898e74017774b7d3d96ef07822f80232d0939e94647c93", - "address": "lax173rrg7wfu3tw03vemmm6tkfstvgr87gjem8g78" - }, - { - "private_key": "b8bbce690c8d50de4024e5e5521bfd70ec18be531d3cde1b6ce342d2e40796eb", - "address": "lax1ufzggcfykx35r5p8024j7sn0ffa4f64hdw4e5d" - }, - { - "private_key": "7cc107b680db4828de44e5e91bf53b0bcc4cba9cc5f96ea8f48a61fe47ba2fe4", - "address": "lax1a4dt7pe2u9t452r43hpgg4psudkgm9spcnwq7r" - }, - { - "private_key": "1843cf480fe0ec018e4275bc26b2079054582e620dfbde62d3fc36680c430c98", - "address": "lax1g4qxqfhvwrnx68lhw53vpd4zxdhyey2gm2567y" - }, - { - "private_key": "1ab56d2c85d95124a8c362b9576c8924772697bdf9e6791e1987bc6e28174657", - "address": "lax1gum8lk40yk6j3wwh6f3ltm9kryna3u5vnkv3rs" - }, - { - "private_key": "2fee2648b237afab9cddb7c5d2414e6ef563ddc0ee4c390fb1f7030f696939c4", - "address": "lax1xtfkzqe6pa0d9vzsleg52cwcvzwqkhnkuav8mt" - }, - { - "private_key": "250af3e41001bb09444319bc28cc01f46cfbdbd6f58ba22e4577a405d81f8969", - "address": "lax1daurdc0hvk7j6f22mpzyals9zjl2svgakmyv00" - }, - { - "private_key": "069d324ef400da63a8924aa670d8104c572050c4bb6c4a0af291396ff3e94b9f", - "address": "lax1vzwk3szg9nsrrajvha6h4073zlaglhnklmlhj0" - }, - { - "private_key": "c489e6ff4a0719557dfed1f444ff1338e4ee9551829fd718bf06f9abde16802a", - "address": "lax1zjfpcjdvpz7r5r8t324lj0xed99mzu93jpyul9" - }, - { - "private_key": "43e28f69cca3b7a008649db49f76fcf6b8b80bcf9b03d2cd3a8b5e6a9d88ad41", - "address": "lax1es60v9g70k2utz69smwg2mq6tcpmfze6kkjje9" - }, - { - "private_key": "d48ab5d2141861535dd96818a605782f7c4cfff766e279baf9980a1a5da95011", - "address": "lax1asl4ztc4x93x6up0xetuvvds5s9gq5lfruw8p2" - }, - { - "private_key": "0c94d8a2bb81839dec030498bb084520a6343fd8aae774314398e76355873fb9", - "address": "lax1v6sh3qp7q5ud4msuaa9cuct6665s6t47ahtgt2" - }, - { - "private_key": "d01c4c2d99d2e39057cb558e05554ae7f11902cb38609ad7a787388acfcc2997", - "address": "lax183qytxpwxndujwep4a7306cf7ljun4jafjzlzr" - }, - { - "private_key": "429178644f9e1a3884e4561d99b1431839a94a3041bb05db9fb89c0e87768537", - "address": "lax1q6zhmgk42vcqh0h68hqf0n39zvmufn67tyg5yg" - }, - { - "private_key": "3fb32ee2320fb55020a22069d4e3ba04eb79a0f95c3c997d94f36c1f83f4ff48", - "address": "lax1hmgnm4ezpntxg54nkth03vda5lrejfdmvjskg8" - }, - { - "private_key": "b7596dbd311ad0bc441457fc95d5f44b5478a97f0b61233e609be1217a24601b", - "address": "lax1xc30dc4u2p375c0ct0dh8dtukzfvj8jz3jpq84" - }, - { - "private_key": "f2c9b98918b2c7f45cbe7f8fb71e4804fd70232185f2fc75ee4fdc533fa6db02", - "address": "lax1v0sydec7a0xfe3yfj4fgjhad7rv5e5awcm24qd" - }, - { - "private_key": "cf3cd774a84520b7ab9ca27e962f7a0546adfc228c510b01040425abb6bc79f9", - "address": "lax1cv9fanx7dl6dhlgsr5p80mgdz057p7hrs28lp7" - }, - { - "private_key": "f537ecf63a1afed4063aeb5f89a8b13fe26eeaef3fe69d48291d5316f8c2e1ea", - "address": "lax1ungf3lhn9gxr2yehqp3kqesngq4fzu47h24890" - }, - { - "private_key": "773bb4545ef5b56b63d845dccda34dc97c5f4a271c644909e5a03eff26873b28", - "address": "lax1vh9mlmwcmughkq2wu5rrac9m7zssj24mjvxx06" - }, - { - "private_key": "61343ea4f0297ca2b3a1970c00d0ad114e99a608a7be34f931338144ccc5d627", - "address": "lax1dtj06dfj4pnsjxkvzktslk9ve7hx2ss27yfg7j" - }, - { - "private_key": "22890c3311a0945654f55bbe6e8d311a31433e966fa1b5e2d72b0fbf0f584768", - "address": "lax1qspuwvzt880rj2zu354y3utlvaftc5yqeyp8pc" - }, - { - "private_key": "c40f68215279d67d2ea8c09f91849110b7f388e10719e72561dc8cdab6989296", - "address": "lax1qafxvuy2493faxg9kv5fydms6244an7c2hrwfz" - }, - { - "private_key": "2359435af4baaac828e9e8ce5e4e951831538471386786a961903c3c7db88628", - "address": "lax1jfxnzl70cs6m0rvdjplz7g605c048gfxgvkj8l" - }, - { - "private_key": "d111e05984cfbc30708162fc905bd397d4b0b9ad80b2e83d70acfe08655f0215", - "address": "lax1npmy42vt5asj2zg88c9rr5c76dgd3d3q2szxjg" - }, - { - "private_key": "44351d0febcdc554558846f5c9659ae6433ebcbc165cd5711df868c8620ffa55", - "address": "lax1k0zg3d3xpdtly7kl4x445s6ckdpagaqw8udrly" - }, - { - "private_key": "8ec18e8d6d6a6b8065e15aae891687ddcd52a35f86bc17771521ff53b5f9f9be", - "address": "lax1gldq8wyanx0x6uja0uwce484707sq9umjnspu8" - }, - { - "private_key": "a99074e7b2db54676e2f6253de69c2fc67ec0658eb8353c70acd0303028dca77", - "address": "lax17n8zx8qu29v4wd3snnudvp4xtx4tsfgujdzlkq" - }, - { - "private_key": "df4022698d7cf3a1bd5ccb360683455f02a0333f73ea9fff4da66d9443aa7291", - "address": "lax1aa7pwf9f2a0jwwpge8842203h0r34t047p9frw" - }, - { - "private_key": "4d83b4958a7a2a36e659e79fb8eb3eaa01c4e70d29b0671cbd695e098e8e0999", - "address": "lax14zpa7sla8qll2m8xmv97p3qvp6zhgnyxqyx5vq" - }, - { - "private_key": "5022f9a4736c661747ed9c6024f38013f55844a4156e99364892fae53421b5e1", - "address": "lax1jxjyv33z449pred5rhdh3th9grvx78xy9p02jk" - }, - { - "private_key": "ecca4eaaedee184bc84f98c6e9f97e6f51a74e5323175d534c76b1c68f01d9dc", - "address": "lax1uhfdjtuhdu6r7ydyrvl0k2assruls4nq6nk2w5" - }, - { - "private_key": "b86ea97f9aa8b6623df5e26eb46ac80b6e47170d45734998b53b81e6a2f53cfe", - "address": "lax1xuhgk5gdj8yygdh8x7jj4g9wp085p46x465zeg" - }, - { - "private_key": "f697abf9717e754a1abfd9e1f043ce55b3848178a910684fa9778937e30123cb", - "address": "lax1z8zlj9lxaldmfete7earmt899h6eepftqzpnts" - }, - { - "private_key": "51f9a5630b5984c42fd2d6867635cc6b9b92b8688516c38ed351d22d4ac9fc19", - "address": "lax1phruen8r3zt2ge6x5u5392edafhhvu7vhcneuk" - }, - { - "private_key": "d92b373496b27b476a5eb9f290379e5dcae2aa7124b6ac8077d6df295fc6481c", - "address": "lax10g5d6nv9j8mu9w4up8nx3kph47qs47w0x3svaz" - }, - { - "private_key": "f13f04c09e8181d345f1c3099bca652deeed9ec015bfe809578e44e6eb6572c8", - "address": "lax1s54l0vme80jtlefavxql38z6qqqxmvdpwzhyye" - }, - { - "private_key": "e6b416976803995c9429cd3928e02d80992fd5e41a2706099f968f3c02f09938", - "address": "lax1360jtwkfms8klxtxchh5q7e33eg04c9e9j6k89" - }, - { - "private_key": "2fb9c8605ab9aa1974cd2e4d00801e9dbf1696081c388700a8c30287e856905e", - "address": "lax18jfasf5dd4fej3n5qn4a8udw2v849wc3d488sz" - }, - { - "private_key": "3921ad6b62b6f8bc2931d7ede048b896701338de354d4987d5b7a6bb0b6ec4ed", - "address": "lax10t2zunwdkmw9hqyydfalmhjgapl0tejd7gc8sp" - }, - { - "private_key": "808b31b826a17aa4e39cea26e1cc1f05318f3e7b0ad9e035be415b6f3f090ff6", - "address": "lax1k8egzxq7hsdrlh5yeprlwh2mk9er5sjhh0l66v" - }, - { - "private_key": "fa25dd6bd0509b5d9585c71fa8925b5703238d54b16c4006d42f13856dcb0c49", - "address": "lax1vk4eef49mqnjwx0skqmmdrgj9p088uryrxcwj8" - }, - { - "private_key": "f491ddf660cdf98a4da9f52f8cae67ebe79ed9ca218480934c581f901a692ae3", - "address": "lax12f8un2x0h83fmrkex73rf00rpalks9n7rtzguq" - }, - { - "private_key": "c58d793b3e4461c63a91c0d035fad6cd09b072ef79ca44fd93aa95791ecb4e63", - "address": "lax1g8axgszjf7xumfxwffkvu04j2vqgh20ps96exj" - }, - { - "private_key": "c9013705cc0fe96297dae7b5966bad6bc2b1e376bd5390bab8f8c96da1545258", - "address": "lax1c0jfahs47c5fyddsmsgnc8z3ww7qjvyvq3kalc" - }, - { - "private_key": "7b7699ca2af14ca08b8da742c08b24a88083a2d4372fc7c9b2bda67ff5b20904", - "address": "lax16p28xkgvyg0phsm83er47xjhsmmydunq3ym8xm" - }, - { - "private_key": "1ae80cba3ff64a8864f719699753de0192da2c3c85299665f26a150f0418f9a3", - "address": "lax1gnmg2k6pfgaydnr8wvfe932z9q75k9cpe8yg3h" - }, - { - "private_key": "669a7c288f476734102587200c800e9dea82ca3057c2e9646b4cdae83a0a40dc", - "address": "lax1sug68g7u6dw3yh26zae8ns2lgxfg52ws5hwlap" - }, - { - "private_key": "6dac6ebc90da0b8f5aada5a15bf043b3590d5f8e91eba5887f5f697ced296055", - "address": "lax1xujul7svkrxv7m3dy2eutlqhfws8mp4sdenc0x" - }, - { - "private_key": "831f5e1601375cf1f81a1f79c47913c400549b6b5fc8dc784de75d2471838a97", - "address": "lax1hhte43th0j43wvyn7pvvfrrkxpf2hmexm890ug" - }, - { - "private_key": "4ad420831f7f96048ebca83e2a7c20d51bc53d1a04e57a3ac68c0b8fbe5739b6", - "address": "lax1s0uhlve4tv7yt2dm20sqthkdn4wzglvl5ww5hu" - }, - { - "private_key": "fd8f817739dbc3e5e0e6ef1ee3a0f3d88c615534dacfe136b16d049d628c4b6c", - "address": "lax1pqeltmy5zutglr5ps0fwjqe952vn3xrq60jjft" - }, - { - "private_key": "669e5033631255827c79fac03e4268b8d4e2578c7d28663f7344d023d19a961c", - "address": "lax1nfvh8d9rgh6wse25hdhgzp8xkqpklngl2pympj" - }, - { - "private_key": "51b86525528346b7123f28fdee02e3a84a98ea15c3002d9f834c20c9151ef565", - "address": "lax1vwslrfhepfs2ylmsgr7qr8rwe876wd6jgflf3e" - }, - { - "private_key": "4da0f8ed4eefd9777bdbfa3177fe0f74d4105bd5772a98aa9b747c22b6d136f4", - "address": "lax15cq4ed60qywj7s3dp5ewg0m99knt7rj328jv8x" - }, - { - "private_key": "22185df30433d15f1915447eabe50c78421da76b2b8d5a256b9d01f3addc7044", - "address": "lax1unmkwj5nmsyv6dhew4q99ls5t88xrx8hqkesur" - }, - { - "private_key": "a5045c3d8e45e61be8c3349d59c99935cb5aa380e070b2f098144c3a052ec7c6", - "address": "lax1ps7arfjftdwjrewgv8euc90vvs3mm2hp0qmtv2" - }, - { - "private_key": "7055092458f11659f0e85a2cb89036ba6f9fdc11e0fbe68623a408ee1fff27cc", - "address": "lax1hqwt9fyx8349mwapsnl0hs5sklqrfftwkemppw" - }, - { - "private_key": "02b8f9c1a7845575b54f04b6f0cf669f2eebcc6d79f227b3d8cb878766715160", - "address": "lax1kqhk6wn8a5ejk9cezruj4k0xp82r4vgfysrtsq" - }, - { - "private_key": "0e056c9d7c1bae6dd244cab957064c11929983ef0b58962e366d4936c7d10317", - "address": "lax1xj6pt6wquxzkq82jgqzw5hrc5wsktz8qq997yh" - }, - { - "private_key": "a79d7103572ea24cd73675e969a983cf391d63a1e5c1eedce9121a456cd769a9", - "address": "lax1kc47nqzgd6ajp4mq0jrazh597ghxmg4u87xsmv" - }, - { - "private_key": "afd1dae1710e327c32ab93d167f96fb803ecb46fefc9b9538b9749b748b6ec0b", - "address": "lax1rxa8rak24xcsa868hgvmfkwu8eevfcedzcefrj" - }, - { - "private_key": "0a927858aaf8be946cdeeb22db756f9f40d3b0d333269055bcbf5a0103fbba4d", - "address": "lax10tkfudydwqjuwayjc7j9fhpuf6q0eplxwqd4ax" - }, - { - "private_key": "5552bf1b679550a5cf6720f0ab6a476d3e67883292729668840231a5d6533f3b", - "address": "lax176k4vp99x285kqde4wmf4au7ste8qnnun92y9e" - }, - { - "private_key": "cf664190f185e39436db83ddcef9d3cc27dd47c5df4c464cb5aac9f7c5ab7b4a", - "address": "lax15wtzxs4peewtz4xlyv0eggnsfqkwpfw0rgk3g3" - }, - { - "private_key": "9fb03673cbd1619400c7819052c0badedfd9908f002629fbab20cfa267902f9e", - "address": "lax13jzw6vv0hpaeqqkcxcd9236f0mkcz8qwadlk2x" - }, - { - "private_key": "1de9a91f2934f46de54f1485037372bda8100bcc6778faf9c514b786dff7a584", - "address": "lax1r34lp5snau532l4hl5jlwyudyphlz0cgq3rnt4" - }, - { - "private_key": "dd99958ad934ced8c74f54f1373fb4f8b7e7a0af7b5b0d13b9fc173661a3652c", - "address": "lax17tcsyp9k2wyq4ceghm45azehfqlt3agaete9xs" - }, - { - "private_key": "8e7e20fceb69661b1ac3c934900f993dafe18072c701d0e0c06956bba58f491d", - "address": "lax1qqycnwf4fjtk7rgu8t7wuay4c03rtdpt2w0dhh" - }, - { - "private_key": "ce09feaa23aedd917d59e221af35f7e06b86a7464aed991d23322f4620e5ef4d", - "address": "lax1jk6j33qnjfug4deqef8gtks90jf6g9ra7dpcfy" - }, - { - "private_key": "5de221e1082a9bff6ee8605c36b87176794327ca50ae4d1da6fe28b53ff97fe1", - "address": "lax16enskk7h3vtqh4dfmr0ph2dxkk876kp4e4vk8k" - }, - { - "private_key": "2f93d4083cdad934c400aa9ee909bdf225d63e307bddef0233272f041f939a39", - "address": "lax1t9t0aukp3gjl45cf934culcfclk8hdzl54ue0z" - }, - { - "private_key": "033449ac9532be1995c67b8d52c363b50e99cd4a4ab29a7f9d7512242743862c", - "address": "lax1q4ws0jxrve4fqnxl7v96jn4exzwpqatcxy7kh0" - }, - { - "private_key": "bd43645a29a9790b8f94dba0dfb08b33fbf5b500431040bfa9bd25e0c5a6cc69", - "address": "lax19g058nu28rrc9gtrhtexuu2jtl5us977vp5umf" - }, - { - "private_key": "220dd3f28acc67a6f871096538183b8b602133a6479a7c562e97dbf355074999", - "address": "lax1l44p9xzkkhvyfek8am2ntm9rnh8wlr882dvqs0" - }, - { - "private_key": "2a222cdcbfa8ce0cd428badd7de8916926c9c67204586304e735b527c0dbed24", - "address": "lax1ulggcah9vw8uu4x26w2xjt5dkf8jjvw5nfcgav" - }, - { - "private_key": "d2ad00db4e06c4752502b8fd4dc30c50718ec3f5764cab824f7e39cf8d4158e1", - "address": "lax18642vwyxsnjda63m8vssplps5tgxa2zh0mwpuf" - }, - { - "private_key": "6ed017262d9d2c62893999fbd41454d5902cfd0c25aa3e5b74a86a68c793e32c", - "address": "lax1pn3ydqhmn8wz39w8znd5hkzmkn3kw0a6rcmy5e" - }, - { - "private_key": "4b7b887f20e59b5c2f7574fa7e191a71004690da08167c6021a0ff4d6eca0c19", - "address": "lax1lu43npawmuc6ce4lg7udcda2aff30qyfvdqfgz" - }, - { - "private_key": "40f660c44d8804933cf414e60eebb82b9489aff2f5547c06d50c23bfd1d8d4af", - "address": "lax1yjx4ucjq7k7fazn3w28aldders9yl6zav5cjuc" - }, - { - "private_key": "43128202bb5807ae8c2441b9ae68c949b2544bc548e098e7b1e172f25e09584a", - "address": "lax10sjskgdac6kch47zv0ukfxqf9du3644g88tdmv" - }, - { - "private_key": "24c20fcf1022977d6a12ebd55687a16ff30cab06fad9cb758585591fea2b5e58", - "address": "lax13hy50skhtge3jxr0ynh8gq4lf2569n2hxu0h8f" - }, - { - "private_key": "d683e85e013d2f2f30bc13f4e01e61f555e5ee8aec5041075bc3caa566456fc7", - "address": "lax1d6tpuxcazetrrqsprgtwpryslplhuyvpwr5w00" - }, - { - "private_key": "63b3c42de612aba51600bee897645622cc1e599830cb5ee1a2b04b430601d2d8", - "address": "lax18gsph0n2h7tdsrypnx8z56deyefqdmq8v3ux6c" - }, - { - "private_key": "e6837eb444ff6175f371d7adee868509676722510895b27ec9bfbaa70eacdc8e", - "address": "lax147fczygu539dnwgd9avsnjga5n8v0t2astpfw4" - }, - { - "private_key": "5a647a9db90bfd183efeb4c866daaab4a25155fd1330ee4f3ded9e6f7a665416", - "address": "lax195r8sz6gsasrdusvjh530k49cfpzrt0zx7pens" - }, - { - "private_key": "30bc52a417ec967597b0dd14e65f76656e913a0412c3b9ec678a13b64be27d74", - "address": "lax1t0w7p459dqsa3sn9chanqdu5c75vcwe0z6pv2h" - }, - { - "private_key": "5e4cbc9b0dd317e971c529e2711042da63a22a3670c37368b4e405ae6933b8dd", - "address": "lax1m2gu7hlynkck89cclz6z3v4nl4glt8m7npqjhh" - }, - { - "private_key": "f7b96a0fe354085f580998ac7c83987410e3a2cb7f08ca8a11c8555c0fd8bc0c", - "address": "lax1pzsv7duhv33rvwch5p0umc06ygnseq3h2p6rgx" - }, - { - "private_key": "313d05963f7cd8b2e94c801152c90c5123dbb87a00f0779ff8f76db3f78c67ad", - "address": "lax15cmjl0xt0ksvvx0x3zgljtq8vjtdt2gglgqk7k" - }, - { - "private_key": "34f9463a3f5ecedb2c55ad013bb0457f7ececb73c84c73595b1c1849183d00aa", - "address": "lax1xq6ml0uty3jktclqg7ma55emd47cadthzmneu2" - }, - { - "private_key": "04d5c7d7b255d6695b7341bb753c3879b2b1e7c9310562c24815de33b51cf3d3", - "address": "lax1jl44dscauruuu29nvj8x3zh4fq5deevfyyzvtm" - }, - { - "private_key": "b8fef5224f87c78a08ac19f13077720e9ab98b400d5b0356789d6c58704ad75b", - "address": "lax1ht2ukvrupppgnnqx4axxc9u79pz56r4jzg4t3p" - }, - { - "private_key": "029274d1661906036c295240d49e410c18499c723aa145b11f760c2ed76716fc", - "address": "lax1p0wkphxx9hqms2xfz47rlh0evf8etcneud08rs" - }, - { - "private_key": "b95be28f0e0e06bd966443a8a3be1ea2e3a9f41d0ebb33d2f3fdba5f055c7dd2", - "address": "lax1d40nk3kxr90teycnxx7v6ezt2x8xm2kqfh8xuz" - }, - { - "private_key": "620b5ad017385642963c0e41a9e3bb269c94ae59611e7783974f1ac9cab7591d", - "address": "lax1xjte96s0z2sk3x3lpz8746q3t4ue2wrw0npyzg" - }, - { - "private_key": "542ec90baaadd614d283973bdb636c44dac8ea974f18539810fd06daee46292a", - "address": "lax1pdv8acszsy9xe090ajzacuyq0ynyjylxwpq3z9" - }, - { - "private_key": "4bf480e7e573cadf46913661649ebdb6dbe91ddb5904413d46c47b5f142ae3d4", - "address": "lax1xxxsus20kzkd8wth0wsfxmgrdjpnzdgeedyuvu" - }, - { - "private_key": "8cab53fd5bb27376c3d4efd9212f3cab324796b88abc6754df271aa1385150a9", - "address": "lax12ddprwxc3v5wc2azle9rm7wjfmyz4c9e03z84n" - }, - { - "private_key": "1a5787bf4742fa17eff5bf533ebcd1f893ecd9d96388370bfd286cbc0a9616b1", - "address": "lax1mh30kdywmn4nszsefxkud06npdskup0uxls5ge" - }, - { - "private_key": "0f8779dc11d0c7e4908e3ffe8badb60098abeb1af524cbb4552dc50dd6ce3f62", - "address": "lax17z7hjx4uctsywcp09ejp2ychxvaljpxunvc2un" - }, - { - "private_key": "18906b1d4f1782ce8d78e891dcfd05788a486e2d81aeb77f4378b73f4330e6e8", - "address": "lax135sxgdpvj2sy6zgtj5xy4mew27x6smeyuk9zx7" - }, - { - "private_key": "7f1302f62ce3231706d20b8d16c5c3b12a9766e9babde356c8686c8c3e3c09dc", - "address": "lax1n2kcmy30ln3ndkpzr54f6vv55f2jg5sea3pjtr" - }, - { - "private_key": "0739d75e3d3322f8e1de226d115bb8b92835e33f1d0afbeecda0f765ebe447ad", - "address": "lax1yhpkln4ugnp8z4ykxxhcnvskqkl78wpxfwqut0" - }, - { - "private_key": "d6c3ecd0b08b22c6e1ecce505726ca2d883ac79dfb3186213b4eb0960a2056e3", - "address": "lax13jvt2fg0t02c4kfyxssyu7tnz2xlf4a84mhrkw" - }, - { - "private_key": "6d21b18526f8de33f4035377d999b64e41bdd0d5994cb9602e26eff5546d693a", - "address": "lax17y2p0z7ltcf2wpsrawer4w5l6wr70kjtrkwl3n" - }, - { - "private_key": "23a2ce0fa3b1a79a04ba1b1a3a7eed84ebc27c117453e7f9c0a61df314bc53d3", - "address": "lax108vx47dcx5qw5srufm60z6feghpsyjwd5tfdy7" - }, - { - "private_key": "fad444fc29538902e4204fef25fc6caa0808b362c31febdc51e55d3e580e1295", - "address": "lax1gxze5xvta6yrcchjdwgx5ja60qzz9t5dwyk3y5" - }, - { - "private_key": "55dfb54199d3d8ed4441449d9fadbc10cec71603a682fbe937054eed6049efaa", - "address": "lax1e5yk0umdaaq3sjjendtd00t8ygnthcn37vr4l8" - }, - { - "private_key": "a7199a21607ec725f6cb99c06296bdc3780d0d8ade26e90a1a2525bb25d4c8b0", - "address": "lax180twkm98l28d20zc5kgsxkw64rfeksacghztc9" - }, - { - "private_key": "d6984f3fd27fc084d7ebb1679d04051bb1def0d1c6b88417d7d610ee78b8820f", - "address": "lax1pafatfczzgvtkyl44mvansnw436khrp7cv5s4a" - }, - { - "private_key": "c8805c1346691f8dfa42e4792657c6bca3133fad2a05855652c5047b44beec8e", - "address": "lax19vu0pgt9pqtyzdtdzy04c033n7wdhyhc8cxusf" - }, - { - "private_key": "a10bbaa833b21c90932072c291b50c378d53fa621f14f8dfc5c67d93f9708175", - "address": "lax182qngklkj7z5umsektvp99204kxj48may40ftz" - }, - { - "private_key": "926c98fe794bb7640e36b005cc2f46c85230e52f58f4fa55d937f92cfd3f306f", - "address": "lax1zswqt0jjmzqka7kvl6w6k78dvfh7fdnplhjluf" - }, - { - "private_key": "419d2a0688b19c778a3285fbbc2bacf05547346fb01c8e23802e47ff64a9ee0b", - "address": "lax159cgvek3ek0vdl5ege3xqh09x68g6jzlthyjdd" - }, - { - "private_key": "768a9ab14e0dd7355b9c2a10e6a3a61841591101c0d00950c2c65df2f356f8b9", - "address": "lax12alegr7dh0s8fmakq9vf6sskkjs3zk2sm8m9wl" - }, - { - "private_key": "1b200c0c1c54924136d23e9353b2020721721c747f85a0ef625a13e990266ade", - "address": "lax1k8ev6zz7ckcwznce0ykmcfjfqsqks39g4auq8f" - }, - { - "private_key": "23b82d7facd3bd56cf83df8299c74dbc5309cddf42cf6486dd0ab5a60cc0b747", - "address": "lax1t6a6cppn4h0rr6ad7yeac5a8g9dllykpatx9vf" - }, - { - "private_key": "e54705c40e215bcb2fe695bbc87465c115ce373e03b3d1c10bb475e7e3282241", - "address": "lax12ku7vppszvmvkgdne2t8mg82cdjyqggr35z5zt" - }, - { - "private_key": "aac89f4005e6c554ded53914a5fd357a567406873cef67c302d20a22565e30ad", - "address": "lax1ajxtyr4ag8hpw9chccrynzdx56wtlmwnmhj87g" - }, - { - "private_key": "807c326141e27e1a0fa6a1b004e5e517316b4a9f2234110a22212ae785842707", - "address": "lax18g720csvfxd4kkx6m7dw40l3ssgk0prj3zpq73" - }, - { - "private_key": "2889cbadef27e3f3fe3a7e9e6f9b574888f6a3323f241dd4a003391dd7694f74", - "address": "lax1rx3jdgxwvl9exls0tpa9784tln77u9tf2g3v8r" - }, - { - "private_key": "0a74f9e1e9c180d48a4ad602137b8627671f49b8c4ba21d940b9a965c04095cc", - "address": "lax1vg0qwkuem9u7z5q2j2zwwkan9zj98t734fqzlc" - }, - { - "private_key": "c1d8e9e8038e8100c100e65fd0de94bcf117c1ca5277881dda71ed84c4c973d0", - "address": "lax1az573tftscmxdcefc0wk8swjkyv4krh39j2f5q" - }, - { - "private_key": "c8dfbe3bf82e42ee46bf9041c322d70763699c899460d7292710871a7b02c0fe", - "address": "lax1h4a56fg9n35x2g5uylgcq58fpx2l3kjk5ytkal" - }, - { - "private_key": "2f8e27ef095e1df3b5f294ece82e9403241f7427073f07f5666e819d8e5d4f0f", - "address": "lax1d4jynsrj7tds68dxskr69q3g03j07yzr3haypz" - }, - { - "private_key": "35af177ca9c26df6dff03dd071a041918eb36b070cc50bc3dc194f6510e67faf", - "address": "lax1kses8zdm3x3nzf5hm7h3lrcgwynyvgtkepd6fu" - }, - { - "private_key": "07dab28d1b7ebd2e74bca93bb5d82c94bb57711e84a061108a069cea99ccd1cd", - "address": "lax1a0ca48hrzw47uasqz70u03lv3vj32mng3a07lu" - }, - { - "private_key": "faf9f8a39913561bffaf676f6dacaf622f42dcd91e7d82495fe4e553e81ba93d", - "address": "lax1pfc5su25s2h62x5mzuxpn9rm59frjnvufzycey" - }, - { - "private_key": "26c57aea49272b0446a4df5c065d5217e083feca9db6a766a671667af1df31c9", - "address": "lax1d3pjtg8amgzc7lly2g72e4hxs5jzfm2vwxpp4w" - }, - { - "private_key": "13166034713af46f1931c7b6de87d7f40f8d2cdcd4a136311867c988b50c0543", - "address": "lax1dtj9e3rwuxv3xrx2lgdl7zc90tz422cx2aj7c7" - }, - { - "private_key": "26baee3d13ad071a0230ef31a2f2a9a328da14df10f6d5516a8ffdb74e384bcd", - "address": "lax14rhg3p6wr246dc5302qwsjt4mlrfvk3px869vn" - }, - { - "private_key": "8412677f94a5326e4bd252fb82aa507824487ad41046c3c3a9f5b2eab5cc55fa", - "address": "lax179y00fpvzccr5le7sg7z0cxrnhpf994jvle46m" - }, - { - "private_key": "59947195a0f6781edb9a262b1114cd4d08ea17c5bf796e308883f5e583968a57", - "address": "lax1ra4f4x6r5jwt7kvcya928nvv2nk65atw9jh2ka" - }, - { - "private_key": "9e703107ef805648d52b5eb48ad53b0746e7c29cd866c681a12c7ea9435ee069", - "address": "lax1w9gcmdx90f5wngjde4taer4ztzrrnj46ddq328" - }, - { - "private_key": "d8bd8f99fc9ef19128f7204e8b297f2338e1f87ed9f76ab51e31871e6f083952", - "address": "lax1ncaperwf45zfezewdkuz5x3p65eaj2fww60tgw" - }, - { - "private_key": "a660b4930322f313457df94a48ef5131baf5370c9935e32d9bdf829179e1a42c", - "address": "lax1xwth58w082xcxyy8y7m90qj9m0dqrycjp0key7" - }, - { - "private_key": "28dac6a9bfde6908df654a5c0f356a1cbf33f45b0397ac099fb74856d3355146", - "address": "lax1wtdh0sl2pp08026tethhcasmqg0m8ycrsnfcsq" - }, - { - "private_key": "0cbd75d1ca9e374b9da03a76d260a357e496b444f371928a5f7c78dad81c9bbe", - "address": "lax1gtf7ejmkwv8a6gtfxv4ezadul5c8j8ask0fuyj" - }, - { - "private_key": "51a159fbb003cee6e1c805a30a7eddbbf2f1409d700685f28589ee2b84baafaf", - "address": "lax14598pqejaxukhnzstwkz25u0048jfhln2cjtww" - }, - { - "private_key": "bc35426ef14c5e501c6a46049184481468bda1fdd8b48d8e461f9d5b9eb85924", - "address": "lax1haamfsg0fge6765spelxtn6tj5mqzwdyslnsyj" - }, - { - "private_key": "9d39686cb338975ae699b37992c404b415e21bf536f67c92267cb5d80579e72a", - "address": "lax1jetaycc7wwvyrmlsj3vk98ur5ecsuhzudej03e" - }, - { - "private_key": "f25c8067af0c9124118734ac120a61e4bb4c4113fc22dd2595487d6e776358d6", - "address": "lax1ylvgt5qq3a36rhr0dj9y9h6det67ztmv4pw4uf" - }, - { - "private_key": "20330e07d8f026006fb826cebfaeff1167f8581297a4bf97a00ba1845213cde6", - "address": "lax133luj2xk9zjfvngvl8c50cy77xfk6h09mnnm47" - }, - { - "private_key": "de87ce98775115f9d5a5ffaa3739fa975ec336e27117e62cde599b90c464905c", - "address": "lax1mynk5cxz2ypa7892ryemcqwlajpnjr6u5pjjfm" - }, - { - "private_key": "0c528ce2d14030e2784eef1760ec3aac6f23cf632c8b0e17549ea8dc0a234a22", - "address": "lax1sdygkw52zrltnfkqyzfgh760ae6qzys57w3ex4" - }, - { - "private_key": "8025917bbbb023322f43190b4c5b973e616378f7b57dc098a266f6a7f93c2326", - "address": "lax107cjdklzsywjwft3azczjs7e99rl7k3wkxjg82" - }, - { - "private_key": "364917cd33ac249f110f947f05d05c173ab1bbac6f9fa3b9ecd57900e68350db", - "address": "lax16xcemu2x50cmxx8lndhurd7q9ax87l32usypc7" - }, - { - "private_key": "8fbc95ca1e8d70fc40bf240a34277e1eb92db28dbd90d06efd3cba666eab1cc9", - "address": "lax1ukmxfny3hc6tg3slugyz6u8cqfvlsxktf3cstz" - }, - { - "private_key": "7d5246ce0893da8c70dd35c3879d45485405eebb7a58e8a6655f7c4edf9a33bf", - "address": "lax12trqwp0lsmrfspca66t54fpdqxmkdy9zhhrqvl" - }, - { - "private_key": "a22253fe149bd1fcffba951233489c55d64c69e0b8781577ac7bf682466aaddf", - "address": "lax1r0hkx3j2se6lfn3dd0zzfxhh7mhjtx2qju6s60" - }, - { - "private_key": "102a503dba139e5556f5bd9913fa953e47636964155d8cc368f741e21117faee", - "address": "lax1plhqnucqummpd9f2swnsqr7k69yfncckkdd9wx" - }, - { - "private_key": "d314bd4bd7b514700c94316605df286cfd4c59765219607f20ecf2b5d07acf2b", - "address": "lax1060vrppkwq5ywvq3cf0f0dwr2du6prkd8hrvpe" - }, - { - "private_key": "f7a2debd768631fc73651c650f144494f1d5ae9968a9ade4a71a7bfa859fcf03", - "address": "lax15c6833v78eyszc3enmjmqdwcuz98l4vzadumxw" - }, - { - "private_key": "b1771cb42a377e431430dda4cb04febffd8f334ff54870e383a0df1da5b68384", - "address": "lax1p8cnyn9vp8ys8gh2080envv77wpppu3t4jtazw" - }, - { - "private_key": "dd3e318874076f49621fab9cec884d6fcf065caaf28ebc12cdd9f68c1cb69a5d", - "address": "lax1d3rx4nf3vjva3r7spagkzs83srcmzpwswvn2hn" - }, - { - "private_key": "7e31c84219b79058fead3684aa36775eaa49cc38bc96351429879d06b8c4e5ba", - "address": "lax1fcdnhe75s27y5lp98npaxh82c0mpfnwe9ggp9n" - }, - { - "private_key": "176daa2d9d3888263068851f446c2c6d9ee3db6260e1366347ed84c86f97d8fc", - "address": "lax18m4j2ctk3mq9f5q0gyta6cfjwunm06d7exs3at" - }, - { - "private_key": "ceed85e165f23516ff716fe1105ee2595e0e087f765ad5e348e722471c412a74", - "address": "lax1r3az25yazt6hsscu6g80snjlf7jldjmpv8fq37" - }, - { - "private_key": "2d1a785472257bc8ecc9ddd3a974991670c31046c29d1fd417972e268c3d55f1", - "address": "lax196k2gh4thh2s5682f4j5ug3gr433qgsgt4q63s" - }, - { - "private_key": "3bf00cf235ae2084ff311bae8bc92db1934b4a595ef6902014b41235d73288c9", - "address": "lax10ya3m3p3m2dxmh5kfy9yfxl5cjpjdslw8se3q3" - }, - { - "private_key": "6a35a2e284b019a5fc30c3bc3b6c087d79de0d89783fdc500ecf3404d74b6fb9", - "address": "lax1lpmxtgxjpmrpn3xdyzpnklecnqpxt9ssv2llp3" - }, - { - "private_key": "0096b80f87c854c748d2959ed06c9b55ba8c99f2220f7bab838ddad918621aa7", - "address": "lax1d4yfgyej703r3tjdcprwmd3asekq40vrqw56ca" - }, - { - "private_key": "cf31a7ece79977201b50832847c7becab24857e53843411bfc9c591a8630de2e", - "address": "lax1ntnx8tvwaj7vdqdetj4t55cwrqhamha3ny2fqy" - }, - { - "private_key": "0bfd0110a7c2fcacf5212657b3c2efd61d2b881b8e1b0dbe703111f71d73343c", - "address": "lax15eust95du67wg366cpfyfcsw2l78uc8fsctc2t" - }, - { - "private_key": "56c602df0cfd5c2f60ed0340d2c843d6c565e20759498e1c6aeeac821618dc1f", - "address": "lax1yp97578xrjuy3wz6mxufhjnkencs3fhey4fmdy" - }, - { - "private_key": "4a21aa580d2b7bd90ccf994802e88956e12cfbd76a73a2e28b4d9ca4a3f061a9", - "address": "lax18tnudkqfkvau49wlw8jp7mlleketvdx6jjtc7h" - }, - { - "private_key": "9f5b1f569d0b464b180154fab2b58fc3c3ea93766ecadbfbaabfcc170046c7af", - "address": "lax15dsqdmk3w3qcp2ha9cpmx0959g55q7rscd6t8a" - }, - { - "private_key": "281f62fb4b243c2536e5a0ca4f92b6ca34a0b6352f5b2d1dc3757bf1eb661fb7", - "address": "lax1n5j7mkrvg7j3ltwl99n7hjx4qsl36qurth65rv" - }, - { - "private_key": "85b657ec8bf6ee6cda1cc878c12cfcaa8df7db1c6fb8e01bc463274b515af329", - "address": "lax1yxxmkmqc9xfnrjw4phmyge74qya85rd2w4w9aq" - }, - { - "private_key": "48af1b738c713b730454f11c351e662b6a7ce7b6517923df714c3febebff66b7", - "address": "lax1nrw5n7h8lj84mk33qcuzpjjxkflzu2l503wu00" - }, - { - "private_key": "535f481f94478e7595a744a24407ed1edca7f10e479a432055460833468f39a8", - "address": "lax14dfevg8gk2mxmz2r3gfs4lvvty970eq3l5jma6" - }, - { - "private_key": "522c0b54edc089b45f2e5788efd5bac98aa613c82f0044019546ee191127ef6c", - "address": "lax1d8zxzgsxlgx9nnm57ktfu5r0k0d3zx6pl2lded" - }, - { - "private_key": "841b40b9b386db8f715e7b813edd148c7bb01ec1079277b87a4087909359c825", - "address": "lax1da23pak7085p0npr74ugv775jp47eue705r36g" - }, - { - "private_key": "e9ab2f4a2054ed16b0be4c8de2d4dd7972fabe56edec80a2e935eb3d33834b31", - "address": "lax1aen46x2uuwm0g0f3wn8na6lge46yphzd8ecrfn" - }, - { - "private_key": "7a9d8642e34472b0cbcaf9d42ca02870d311571cde3a99f36cf6d957a375fb3c", - "address": "lax1zgmv5d6qpvxfxds5q8uupf9r6aq7yhjqjf7rk0" - }, - { - "private_key": "e6ee2c12a3db95b49cbafa7b21237ff660da0ab9a0d1b42ad519706791f71425", - "address": "lax1r4u98v2vd6ju6cwz5pu0qhmyem8ymsylkpudvk" - }, - { - "private_key": "3ec1f152e381dd3778e0881423ce62e99e3428f206d73e426686bce7ede6f228", - "address": "lax1h24q3p3xjaxh2wej9ruep62jg488c92s57mdxg" - }, - { - "private_key": "8e170c1b61a6745947014b7d291146697c55db4771372a3c878f6e2b3df748a5", - "address": "lax1emyqncp0rhetvsc0gj4dcg20nz0hye02fm37f0" - }, - { - "private_key": "205e3b21a610c9579d19f66edd5afe3cabd7592ac9a1b22eed1dd61fcba23cef", - "address": "lax1wc4xhd24pu05g7j9vvz4lwl7jml3nacvjx4kv2" - }, - { - "private_key": "7825a7d0eef4ed8fc29d1d022321df3a8cbc8ef73aa26a9f136b0bfbd881b90d", - "address": "lax15aj4lkcr0qr5lgwk6mqgn9tytp4kyrzqpjaxrq" - }, - { - "private_key": "4d73018254c26a453e52c92be93c0b2d6f4dd2185b7f7e18e93474ad37678bb5", - "address": "lax1ppj944thea9es69xwu7f3v4gmlmv5edsu0pc4j" - }, - { - "private_key": "4a8c8bc3bd45dc5cc48408fad3e114b91d89c48c32e75e1e89c995c7d7739b6c", - "address": "lax16w9nuc4amafjwwstcenlgsnjjh0uh9msj0ksk9" - }, - { - "private_key": "a6521cb42607462d300247592d37845ca1f8054ce08a87cf846e0883f602c136", - "address": "lax1dfztye0tkzhsk62hw7w9aj7edzgtude7ecc5rs" - }, - { - "private_key": "a61ab3457ad496ac3d4ca026877ab993c5b47850a6bdc8df5fc223b7167f09c1", - "address": "lax1zml8ddzfnzg6ug7s0lnv5fev4jdtaqeulqlmc0" - }, - { - "private_key": "0df5e40831b547814859f93f8861c0ad0ab227c3f0440c2a8b6304826472722f", - "address": "lax1mttztxeucwmnnc5qew0ee66x8qlecfgnqh453x" - }, - { - "private_key": "f5b2f7554fb10d8a767130d36d991678533b36037574110a63fe8454dc180bb3", - "address": "lax1cg2yr29ys7atsntdxc6hncrmzkzm0zffvyeycr" - }, - { - "private_key": "ef1ccaac47c7ace298db4c6352567a3b69b163e53656fa4c283704dbe0b17b36", - "address": "lax1a2stlhldlcj07lny482nfxaszl5kzlxpu4tjl9" - }, - { - "private_key": "fcd22c6de1ebf0cf57353378c80711feade568c6e52d55c1995f690a9a2074b0", - "address": "lax1pz4asj44sd2qspvs0nddt6qqj8syn0c7wyspzg" - }, - { - "private_key": "10de000a16601a1afe067aacd2708090514499414a838940482eb4db2f87c96c", - "address": "lax1644mwdjmcsk6l4qjwyu3rj2fa0zp67zduwku2k" - }, - { - "private_key": "78a9df709260aa012e08a64129cea81fbec292736638b14637d28f8bcf42020f", - "address": "lax1m9xcfmgfln0dxhtw64yz7cujz67z67qqtwza62" - }, - { - "private_key": "4a86620088827b338f4bfa070c15c8f426ccdbb18b79e80bc592225901cddcee", - "address": "lax1rpu7grzkyq4wc6dc7n30jcqxlcm4xk6dd3vyzr" - }, - { - "private_key": "c8e52fbf3cb693002e0d8b471a2f5bdb1dbbd7356c796731bb99fc4f7df25d3c", - "address": "lax186e23ej772a3glqctffx5fq8u6r9spth35p7xz" - }, - { - "private_key": "4c34ca8073f0577a812f983edd93e866fb105c15fb4eacee973a907204be6201", - "address": "lax1qpj5k9qdh2daadnettk7wcu5y8w5pfzneercnv" - }, - { - "private_key": "eacf043ae9b2d2ef6390b42cd715ec16f32beeebf8819379214eafe16eb39cef", - "address": "lax18xwywf2sscc37l7w4y25jzxdgzf8fztzw62xe4" - }, - { - "private_key": "cf2ee398b5fe7685af9e22bfb00e707b3862b29dcb8e42800e88fcf4672d1fa5", - "address": "lax1d2rdfs35r5j6gqnl9lf8vp5pp4lx7705spy5k3" - }, - { - "private_key": "5a8a0a3f0c8fea174535b847e6d437880e08ae508385f33965eff2bf140c43ea", - "address": "lax127uwu22ll2jeux6kfkca4nq4gqe09xprg5a8ta" - }, - { - "private_key": "124d034f8f9bc664f1a1d47cb34585693234f97719991ccb311643ccdc6f382f", - "address": "lax1yjptc303cgr0jmwevtz9s8ed66k2s0msm7d9py" - }, - { - "private_key": "be958b7985af698478febfc37a2806488fb13d7637f0d928a9a58c59db18d113", - "address": "lax1u7j3aqmasd92qwc79gpdhyeghlagjjd9n8t339" - }, - { - "private_key": "23058bc5b0e6fbc250de668d8bc327580561cf02ecd96313eed07c0ef2de8983", - "address": "lax1c28y5dc7ch9k205aly7rlrmgj0z3x776adjztp" - }, - { - "private_key": "deec93cd3a548289328822357bfea9e49d37c187a39c2eef1093d538ac24f3b1", - "address": "lax1r48cm3y5wgp6vsuz0n8cyjanq2encdq4sd83ls" - }, - { - "private_key": "f2379d058d30a12d476bbd9e3cb3000fadd1c397618b3373facfb3d4901e673d", - "address": "lax152kqu3ce86nlx98mfempejnlp0tdqnff3dkj8m" - }, - { - "private_key": "9e39c06afa7c5cbb306694521184977e9a8d067ac4cdfc81f7282356417e17d7", - "address": "lax17zj9gd7mq7tzdnxn4ve3qtjkunvnprslzpsrgk" - }, - { - "private_key": "8d44b59e15793b07ce4a31610bdf6d42384ce833ee009e975101249541fe5161", - "address": "lax1n4qwp6q904ydstxx4s3u4hy5jyw2e0xl4nheey" - }, - { - "private_key": "1740a38a891df8510e59ae76363de5ca7d8b5c4bee7efe1ccbe8aaa7e75ca9ad", - "address": "lax134nwmlla40c2r2afek8y9rpr8s2pv4jzlyyp4n" - }, - { - "private_key": "024cb24f314b5e58da2975ab293c65c2857c78019b480e8a3ef4e64c8a3a5488", - "address": "lax1revhug04zp98pmxqwnq7jeqtewrmxpwntpy0he" - }, - { - "private_key": "b90d334741d263988bee1c14aa903b78ad590b1bac9ff4cc3f423bc114b64899", - "address": "lax1txpalmqc6248fgnfnk7sra6yy3nq4522rudmpy" - }, - { - "private_key": "d7a32ad3b29851d0774b8e03ba32da111059c1e466267a76ddbfedaaa1ce90b1", - "address": "lax1rnqz0mgl6j4mmas364h5maunm5qrmp2mh7p2ml" - }, - { - "private_key": "07ce96b0494349a49a8dda0fcec448e9f11594f1bcd41f26feff19c0793418fe", - "address": "lax1q5mgpwgd5lgzf920fsug8azya2juqn2aykfs07" - }, - { - "private_key": "13c0d2b116778b66f97c4a3d5344707c01d49d1dfe6925dc5ceff417650884da", - "address": "lax1a598s3xcjey9lgnff4avtd9ggp248wkfkqcn95" - }, - { - "private_key": "1677088956958b13615d334b43a141f652bcf6b29a7c209d83bc7b0fafc9874d", - "address": "lax1m7jp5lvp6xt9pm63wqkyfctl4gujxh670vf972" - }, - { - "private_key": "9bc3c2a3ec977cebd28371abb57b226bd50f10bba7479b1616b19df25612a0e0", - "address": "lax1jzvp7yppyl6da2vx7knfm2yqt2wnhqeeaheyae" - }, - { - "private_key": "07040dff7f3512f9fce09fbb6f166bc1ed4e5c6a5742ca581881443d7e8b0b43", - "address": "lax19p5qnnasj9umfqkfazcv5gq2l6a4tnelpamm78" - }, - { - "private_key": "5d58d6b016f3b5a2c5a6bb53abbcd9331be451abf65053690a9048299cd82d0d", - "address": "lax1k493udc52cn3qhrhzrz6c34v795y33m5vel9rg" - }, - { - "private_key": "17962fc185c7cde326c3acc9268f076346be4f8f343f431a57bee90742bd6b6c", - "address": "lax1kt69788fvgaqqkwur0hrt5gt3zplyfesrrqqwn" - }, - { - "private_key": "a5b5fcbb1a6ce19caf97a329d57482320abacdb22dd3848d386edc5cbbc0bba9", - "address": "lax1duktkx7cwwec8tqu08w5d6av2xj0cj75kmfp76" - }, - { - "private_key": "60d374f781b95a3e68e0c291dfd92483685a3eb2a127485c351438a74fb8efe9", - "address": "lax1g7su2r3wu2gh9c9v7rceuca0we3v2d6rtx8dpk" - }, - { - "private_key": "a7ed2f2c4002882e09b9b2f08e58be627b928144fd0be5d23e8fb5176d03a8fa", - "address": "lax1uejhyp8v0jd0jq065nh93l6lawgj90mras5289" - }, - { - "private_key": "74440bdd35fff7b73cc91e260f3fb63540437d7122075105215c919b5d3116e9", - "address": "lax1rrld4vq5jfjjvp354l4j5acz3sens8p64t5yz5" - }, - { - "private_key": "b182a59016a31ba5b8b378f7bc28c123a4752e90fc1de33fd74172f3cfaa5b33", - "address": "lax1xvwkxd45f6xu0rf89gw9yurjxaqwg3enpnkz9a" - }, - { - "private_key": "5f6b431fb6e8b237b7af8f68700760cfe8753a735e916a5b47e76f8face05904", - "address": "lax1th4zvrxt2gnwg9kc2kky0pa99r4zzwdc00zer2" - }, - { - "private_key": "3e5c2661ed9c818c7e7596902c8bdfefb45300efb4cb93986b50a856f094b69f", - "address": "lax19fflkhs3juxgs4wmfz6ve7kd6qclzugfucmm4v" - }, - { - "private_key": "3e499071d1855d0696181e9aa510b6782e0d4e00f3e65d93c4712f6a8326e2f9", - "address": "lax1m5286m32r42cudg3ktkm8k68ek85vpumekf77c" - }, - { - "private_key": "97de24b0357a5e056d204b9f59a9640edbb8be7b17557f159db8a229781991d7", - "address": "lax156xh9h8lvs292eq423m8yx7u5dg8uj8evdku5u" - }, - { - "private_key": "1cb99899fee044ec829f024df1445d016fd3b1e6b69331c36ce1ab7da4d2adb2", - "address": "lax1yaryrmmqddn0kqfqkufguc97psp86vkgmppnfg" - }, - { - "private_key": "17a6b17f60babb5bf5c0ccecb9cd45816670812da165f8db5dfa238314042a21", - "address": "lax1ljatem6v3jg2lnhmhp6576743q7kcfeh2l0amj" - }, - { - "private_key": "934b8c4a8435d3b496f25c55c36e9d035720db45ecd3b2d8eed19547fdf0d03b", - "address": "lax134cqajudfl2926cr0aclq2u5dv5e7f3mnzse22" - }, - { - "private_key": "22800c2dcc7c9d2a8cced6ab6e9954db225d7f7420688539f648c165d7206598", - "address": "lax1y0gq5zrucs522ufy7756wvujghm5ll2u9x29n6" - }, - { - "private_key": "03843b3b75d37527ce07b3d59dca6bd886abe20f511e5e2dde14b600b123f1fc", - "address": "lax146z9zx595f9tgm34j66znxq87uvf24je0z9hmh" - }, - { - "private_key": "c88895bc6fd6c61288ffd8a1079d57e2a861173635afacb137f1a7df94e864a6", - "address": "lax1chw02zh29xdrz0jv89vhm3dw8hpf7rr2x6k9sx" - }, - { - "private_key": "07f25bbdd277db0e11b9caa36c822deb3cf5373f7425f262a903f81b5174fd2b", - "address": "lax169x6g0u6lsph033rjp0c7ty4eys4y3760fc0q6" - }, - { - "private_key": "f87417e042bdb31788813f5b7af39c713fa0e6b4585e4ee126ed18ecd6a2dea1", - "address": "lax1prdc9npnxzhnzne7uvs4qzxu45qec8ctfhe5rc" - }, - { - "private_key": "1131c7fa35cfbc55647f979d24a2cede9f4380a34cb6ae914ea9d0c389ae8708", - "address": "lax16k3yslc6dg9kcxk50x2yyjc2hd6zs4ygvvkj6u" - }, - { - "private_key": "4069d223c94d789334c4b06cba69d753131bfabc105618b9d3a05f6babd5f6fa", - "address": "lax1ptltl5sfv95u322e8hwqtdswgq0efvrxpdrtv2" - }, - { - "private_key": "132a04950e064c6f0ce0eaa8ce2a5ab3f8d90f33b890871d51d49d0aa2d2a8f3", - "address": "lax1acknvqh6j57p3shn3pp6psy4l3w0xh3hs2vvrl" - }, - { - "private_key": "f9cf36af1bc6b38e209b2ae23c48c61a2eaa0cf143e1f7b33e265fb6f8d7749e", - "address": "lax1l8fqggk8zalp2k8sxuchm26d03g7jjwerafgck" - }, - { - "private_key": "a1a9fb80ba84fe821b8559d4eb5dfe2fae256d79e6e231e5617c76332ced5d3d", - "address": "lax1skvj4l0scfp2kajaus42pmquav45gfteal8yz3" - }, - { - "private_key": "99d92f3c9d79d6749e53dd4781236580d092eb3b88462f152c9c93c86669feb8", - "address": "lax19h3zedz293djt382l46d7y8sjxwpud3a88ajdr" - }, - { - "private_key": "5a64d99a0578a1011dc4d67e72bd92d6772019f466f8401b4a716ec55036f9b6", - "address": "lax15j07vnw0vkarjwrtv449vy3geaxzrl2zzps59c" - }, - { - "private_key": "40b251d4acc13bbd1884884b7b69c5300436826aef62328e40f42d53c0a94318", - "address": "lax10q8qxdn0crz9hzgza6su2p289rrad2jvh5dh4d" - }, - { - "private_key": "579aa0b6859122da56fa7fdfaeb3770e0a0b3254e552e3d5bbdb45ebc0ce3010", - "address": "lax1q89rsxy28sah3gyet9ma4ugp27zu82sxze0hl7" - }, - { - "private_key": "346031e314b3948fa3337f664a410084f2527f5a4235eea13f183682cceeab53", - "address": "lax1tk2035gymq02hrjsafhzgsx4nmjxpuhc9w5e90" - }, - { - "private_key": "99d8af015bf4045d81a966ac8d6c727a2ff08e46082fb52655b0828defa8442f", - "address": "lax1nqfsf6kshk35fefvellkr0s88f88yqjs3tvwcy" - }, - { - "private_key": "71fa25956a17b0a5cb5eb4a7364385c671aa6c0a74c3749f881b9e2bd1e5f70e", - "address": "lax12zjrx3t5dkm0jrgfl86g6dh2zwc4t8e8rexj7h" - }, - { - "private_key": "f2e6b0f524415fa8aba00fe18fd42a1f2430c19f0f3b37c9249ad295f8227d11", - "address": "lax1wumqknt0sutzdqauyy9kulzjp9mszl2wc8pwev" - }, - { - "private_key": "ccb756bf4c7fa229c0a072e30a7f4bfa11624c02e32321d5b3d33559dc6d07e5", - "address": "lax10c4esqcdgusl6w7ca9rklun2lzhhx5zjsm6aes" - }, - { - "private_key": "fec3922291529d279bc6fbfe6635dc53a5f1d5445be84ecd07beed0bd4eb8404", - "address": "lax1he9zjhprj9m3amjy6defp45e6uj0t4ppy7qf8t" - }, - { - "private_key": "c4c2ab76ec098d632784c0e9fdd331b4fc89674138798d6c8a096f007a2a6b94", - "address": "lax1uyc0suug733dvpf2mx5vc0lmtawmhkszlxu7j3" - }, - { - "private_key": "e6f60ed088e4284a785ca7632a547af779f3c10759f415a685a3ca9decb85bef", - "address": "lax1duwzd8z9829yazhsn3wmtu4jl24qr8f706fl08" - }, - { - "private_key": "28a6306787ea070b4df9066fc0d76545bd8fcc5772dd072eb4bbfc674a362f1c", - "address": "lax1azrwh6dtxmyu5hjz4fdvltvn8uql9p8rz6ly67" - }, - { - "private_key": "e27aa17732eac816a428674a9e372f8dbceaea6c3e24f07d4cfff34546f7d88d", - "address": "lax1jws44xv2tf3t0ewpdn99hawjvl8p25pcmuq45f" - }, - { - "private_key": "8ad1225fe4b5d032768bbbca4033844fef474b6c496a6910c5562a2421d3005a", - "address": "lax1d8vdmxsdn7jd72nlez9e7zruezt97hypgwqnev" - }, - { - "private_key": "3362dcc4e21bfad1a7761cafccc5dd9e81215c6752258b8888a5e4c6c660511a", - "address": "lax1eus6u8cw07yuc2hdktgjaquw2nm35gr9qe387j" - }, - { - "private_key": "6443f480c2802362de2c9de64d624cfcc5120cd0512596c78e56d39cadb38979", - "address": "lax1hhafae9tm9qmqm52wngvf2zsy6l80nvxp9jffu" - }, - { - "private_key": "88fa4dfa13b55b463f8637c01035e562e6acb7d711288f3f773bc21b4cd52a75", - "address": "lax1vx5s60jgyptd94x6z7ayzx73k2s5meez9x3sh6" - }, - { - "private_key": "9dc7b1a060fdfb555e86ecfc3354076b1fef7fe64ce2c0a63e4f1dd44e8e5e67", - "address": "lax1czje0jl842p8wduzhjw96clayau8epnk65ffds" - }, - { - "private_key": "fdc7e8109bc2ea8d4ab43557b83437534af41b53da82b63b700c267a3529dc5d", - "address": "lax14p6scyhdepczepyd9jg2s46dgdnhwlmhd4dd50" - }, - { - "private_key": "07cc286b0b038398a7017d3fc3fd60376e1844de26c19d0e1354556340d3243e", - "address": "lax1p6pcgs6t5v0p89lv4eqzhc25fpv88tpwafe90y" - }, - { - "private_key": "dbbf428b80743c6e4152f28625755ba0414d238720da0b366291b21e800aca97", - "address": "lax1qm4awerkqn2gy6kpc4uvunst8eua7d7hw0ucqk" - }, - { - "private_key": "9971087304ef0ccc63899caab49cc387a6556165c05a08cdc750317146a6f4eb", - "address": "lax1236r3rv0thcg5pqfu65c207nmxrw3r2r3adg3g" - }, - { - "private_key": "cf20ffc985f9a51e0c6256ec5398ac4f45777cb42fe4a32e3652acb30eda6586", - "address": "lax1v5q45es04cy6y4jd2dkjceru3fe9ykrjdengka" - }, - { - "private_key": "df548dee1f9dfa65689b9e42e1fe998d6d9b8d88a7a78056c3111d384681c786", - "address": "lax1l22hw59l7z20ay9qsukvyqavkpmxwalhyllzvh" - }, - { - "private_key": "1e65c655bc471812b335cc11bf6f6d349d66e0fadfa0b17108f4cb615dc362d2", - "address": "lax13uvynfqr5g4uhvpepd5r0f9f4r49hwrfzjpuv3" - }, - { - "private_key": "4f7067d37ee9bb938c151fd73319aea95f6301feab1fbd05616ac5bf7e405046", - "address": "lax17m9zl8kfr9ls5nkyydqgwq4ujf9258nnraxd3m" - }, - { - "private_key": "1f535181d80976542f7db5c651000f70a10cbd44b35f3c1ddbf138de629ee970", - "address": "lax1dv4dg2xas2vzk2ud4jtfslu84nqjsenr46aaxh" - }, - { - "private_key": "70d903a1299e263421958327f35d9f312b0be2c726aa38a27070c953c29ba212", - "address": "lax13q3mq4e8n6rt4s4r46d2u8h8ue35yhvze6fnsj" - }, - { - "private_key": "df4fbcae8899da7b90ecbcfc8fcc2fc6b676f2e9b4f45b131ff7d24889fc35b2", - "address": "lax13c264vx66k247qqmtth3ylf77evxmdu6704sde" - }, - { - "private_key": "70a2a949b96e4a090ab6ddde9af7f0fe51ea6963aa45ae22a4b505b7fd58bdc1", - "address": "lax1032k3cxly362teyvznq2xjg8h2x9aa2sa2uz2n" - }, - { - "private_key": "bd8e62c2860409424f2b85773caf72e65f450d6d7bbd293711dd8763293c9098", - "address": "lax19gts4l4tux6hqhhns2tlzww9gmm0v5w6jgjw4l" - }, - { - "private_key": "8d60d4d1e7e669b1a5aad2cab4dbe6f4b193ceaa78d54535fb660c73ae63a501", - "address": "lax1mt3mysd3fk4szv44gc5a9vqz20xxv3fcpka3p7" - }, - { - "private_key": "5eda689d50ef937c1a748fd92b22c47a89ee9b87c58c25cdae0b13517937b7bf", - "address": "lax1druu02l90wf6kccac7c0200dml08hqe3fp207e" - }, - { - "private_key": "f91008913fa1584e91f8eb76aac1cc6ddf77f201a6e9384d53796eebaa54cdbf", - "address": "lax1shd5s6uevjz6qd2lvjtva7hsdddljnsl95apau" - }, - { - "private_key": "e4922849bb90804d9cd0c31096ce7df38b139fbeb8c9f75c7a009a97432cdcba", - "address": "lax1j70898m8atga9mhwynkce96hnkvpn7g8mp2yzp" - }, - { - "private_key": "ddf6cbf58db661e60bd0790f43dff26157d64769f155729193c3bd407f463da1", - "address": "lax104jtp0vxvjmr9skrafyv856knx07vkp9d2elaw" - }, - { - "private_key": "06cf2dcdc2d889e5fc1acd6276c8cc4e31f12dd997e7d4c0d5f41c707c262a7f", - "address": "lax103g3t2jknhemq0qlhccf3nqsvvt7glu5fxn95f" - }, - { - "private_key": "ab49db5b40c20ffa3715142eef581d5162bd93e63061df3ae5ead0ad6e3daad6", - "address": "lax1v9kzsw5yyjfmacxe72e58e54ygzpdwphcc7nmj" - }, - { - "private_key": "0a23977f8e2fbcf3eb30aa37fbcb07bf09cde7aaeadaa3fbd332c064f4b70494", - "address": "lax13a6lum6pwwpztxy4qwstrrcwq0pwlaujrj04ph" - }, - { - "private_key": "09420b5ff994f4fd0563cd0ce03deb60e6407d05aa23174dcdef1ddc6e68df7b", - "address": "lax1rw4pvz5g3lerhk63slfhys2e2v3d7jhuza26ww" - }, - { - "private_key": "4ac2da9868b6be057f882262f8ef7b4250a4281e3b6a50ccd27b82bb4555ff12", - "address": "lax14ux5lv74htgqmkt889vnq7ev037z2zh7jnqk34" - }, - { - "private_key": "997dc8c28a43695a8b77917c2bc7412cb896452683f797b9f0071df190b325d4", - "address": "lax1z5r2045w0t2q0e69l5tkyfype8c9tq6lgz40rm" - }, - { - "private_key": "c7ed46a0203de7a0b43970036a3dc99cf6fdda9291726f01b2699c1d32077e25", - "address": "lax13vngk9femehz0ynmm8v3auxspfvp2dsv4ucgre" - }, - { - "private_key": "8ed39d86774320bc612cd7827cedd52109bd870aeb27974314b9c1dc6749d206", - "address": "lax10vpuvx3ztmv3z8g5vvyw7jzll2j3xxlserzdf8" - }, - { - "private_key": "d42a9e991a3ccfc419d8874cd0c0a871a4382f1c2bbe5bca4b9df7c91236af03", - "address": "lax1h76c2nhc6p9kkgch2m7fz7uxqfag7ezp2gys8c" - }, - { - "private_key": "04fb9b3d900bf8688c715ca1e9c3d8cb99f93069b4ebe2d2e10e96fe78b513e3", - "address": "lax1mklnuj4eu3nyu87ux0zcvreztrt5jxlrts29mm" - }, - { - "private_key": "0755bd768ef0d84a0852a801a4a71ed42fe9fe3424942c4b9c1057dccc5558ad", - "address": "lax1x5uln0xug5mgnlylkdmdsufxmfjdj78hk880p0" - }, - { - "private_key": "3032f6aee6ee8842682012d3dd426542a33f3e0bda0f7061ee74f10e681e9861", - "address": "lax1x6xr9tsdvvx4x88m5ptuwkwly98h5whgv0vlam" - }, - { - "private_key": "6b3514ea36bcdddd4ea7db28480211dd51fae048f15e27081eb403f97c1c0dd3", - "address": "lax19zzms4s7hpc80wlag00tzd5l6yfm2kwl4cewsc" - }, - { - "private_key": "64d84c474a092c6eb7cbca3e99bf124756bdae56692753c7ca528e2fc27c539f", - "address": "lax14kv2u4gwtqm84dehd727es33uh2dq4uppvkkd2" - }, - { - "private_key": "9b446b6158dd40da2b15dac1cea3598ac097f0b135aedf1fc54f1b4a896c34f9", - "address": "lax1jmf7s7e26rvsllvnjdcsq0ucpvzjcuvls47ks9" - }, - { - "private_key": "247ad41167dcd063d887db68ee4619c16a7913dbddf78b247ae5ae088d986f2c", - "address": "lax182k6jtvaqqvtjutlksguwde89pqszysk7f5rx6" - }, - { - "private_key": "973839fb7babdb2814f760c20316e96863bd59641c78bba765815f6b77bc3867", - "address": "lax1ygjetcfc8hkswtmxj8yc3mjtnklfe4hh0yrnv7" - }, - { - "private_key": "7886670fe0ead42264f5b3b2b70042e0ff7465237e1a47b4f09fa8485dfd6739", - "address": "lax12eg3qgt29jx5efjp8dxwxpvwcpggqueg0hptwh" - }, - { - "private_key": "c9e11cb72c94a3b7ef5bc27e5207b68718fb0fbe4e097a1f2b9dc147035f7e51", - "address": "lax156stk5ycu77lmwgwdv4c6vyq8u8vlrdphehgv3" - }, - { - "private_key": "ab01b35540db2fc7348051e707357c0e122070b96b95cfc8dbcf41f384642a1b", - "address": "lax1nega9elxsllhclu088hjz9q6y7gt9prhwg72ak" - }, - { - "private_key": "ba01c74d15a5b4798a6993bd69e5523880a6152db1be6b9df8a15342d94be2e7", - "address": "lax1fx332wukx0kladwv6d29hd98zw7h67r5rty5a0" - }, - { - "private_key": "04728bc4079133f850a2f4784febbb5ea2efca04ce4ac14408dbd03a95d0af33", - "address": "lax16nrnxt7eajxd0p5zmtcxdacvk4qm8du0krx64a" - }, - { - "private_key": "11a99b77e52e1d6d7ad6f4e640d9d16911e75e3913e180bd9497d66fdd996cb1", - "address": "lax1d8upa8z25f3hpd7xf044gnd29rzsramwpwk7r6" - }, - { - "private_key": "d6134ea74e78bb9968ef010fdd1bdc4d826174c9b212eefe59b03fd3a0ab8f8a", - "address": "lax15wrsa4f5qygezcy8twf8lzmkmz5nr3xcll06yy" - }, - { - "private_key": "3238ae651e2fb8e5334a3e83b3c3424aacceb88f4e4efb4ec04006a134569c7c", - "address": "lax1lq42jukflwnp6h8na53j2gapdytu7qes2mhuvt" - }, - { - "private_key": "353cb2e1ced4eb4a3b0b27cf69e0d1ff9fa3e3a01be95e949399a1e4a473a644", - "address": "lax1u4s3qs2hfsyny72f6jd2tqzr08d9a7gtm3g0hu" - }, - { - "private_key": "af6d7e6543d8c7267de970eea69555b2b7ebcc2d0c491d8b52cf430e2bb1b010", - "address": "lax10qx06yyf446hsuy7yg9eyz404y6xvffnsf55mh" - }, - { - "private_key": "ff94576cadc3499649e0355db8e4fece46610c8495c30e591e69aa2e63d6a344", - "address": "lax1d22fl2rmcgpn5n7372e5uv9kar2m3rdcasal9g" - }, - { - "private_key": "60e80beef51d60349b81263a9c720589424eb51db69048975af073d8ffa73054", - "address": "lax15fzcddg3fm3anj9fey3zy6ej8czkfzk5gxrfld" - }, - { - "private_key": "7ea7ceffa3fcb2056a04975464f9f7db37fc985154f2c907d274e62c0d5a2957", - "address": "lax1790p2uuare8xx4l7veeyrzxu22l07t58lcka6e" - }, - { - "private_key": "5f06639587cfb11e47269adbb12cfa2e35339820213bc844e170503504a6e534", - "address": "lax1qzqgacgt623e3ytan3jwrqkcaqdq8enntjvwl5" - }, - { - "private_key": "7d9aabaa4bb827b81a2d3bd36fdc7e098312d5b75684533b8e438312587c248a", - "address": "lax148ggpajmmmluz3gz7d3sll7cyv2q7vg4uq3d7h" - }, - { - "private_key": "f64c850085a0cd83f29486b2f864c20d275312c9ab0a0d1e0a39534233ba6bf7", - "address": "lax1d0tt6lpnqhckm2pcxpxykt39yj55p4r3ta705c" - }, - { - "private_key": "2ce3941754efdba837107f10098e550cd4723348b47b0a8395958f014dbff497", - "address": "lax1elehyqa0v6vdq4w8g2psd78tnf0we70hxckaua" - }, - { - "private_key": "bff50c7760e8045481bd7b01dbffba8ea95302230c3c5ab118cf0cd6674bd74c", - "address": "lax1gaamua4lu5r02gal0fyank56te2vrqaa8azqjh" - }, - { - "private_key": "c97a8745e29d85674abb5f11b6cc24d524559fc7ffca801125a9b16e1097e6e5", - "address": "lax1qcums6nquxf9xm2e8v5dwwl5k7vz2yqq9qcztg" - }, - { - "private_key": "5f49feb3e3584a2919777c978a4c35aaa9580bde8abda69817451bb46b768777", - "address": "lax1vhtf930l2cxz8uk2l3ljn6djgz04lxd7dyv9n0" - }, - { - "private_key": "8149a320c1cf514537de3eae88a1fb0f786c106ac2f821915435f84fc2669686", - "address": "lax1fy5zuaglvvyjqj68t5x8aaq6chmzfxs5fujfuc" - }, - { - "private_key": "53b2e5f705d021c97387a5bf3b992f44adaaf60c8a463e860c78c4cf72b8d969", - "address": "lax1rxqmt85v4sc2ccee2u4rffgs7lpthvfsgr26sy" - }, - { - "private_key": "ce84a9c02f5d258928fe522daefe9f711791798b307c5473514da7f0ccd9a3e1", - "address": "lax1jxjn00lrjeg3zp54q5apkz2sadu6vjswgsdvna" - }, - { - "private_key": "1995088628173eb5d9c5d399facae02faff546ed116dfd20ba517fd18c7daac9", - "address": "lax1d8uly7nfjp2km4jg94xj9ucj846fd6fchppms0" - }, - { - "private_key": "8ae0ff01e5ca79dd9e231f5a75d12bbb4b2a1c80e128c274143592ab2b7449e9", - "address": "lax1d5ng66usk7tmq5mxylw5awrx4vdyfpllzpez0w" - }, - { - "private_key": "3222b94aa96f326a649b17e621cf3a706c32816ba1e49c421387b5576381ded7", - "address": "lax1azv40v8k4h66fv5sand70hhf4ss76pz28dwnww" - }, - { - "private_key": "963a3a94aebb6f1ce956b30ca6cdcb6a5b6d0b1361342010d817eccefbed11f0", - "address": "lax179ekrrdacr8pz0e8aveyr5ufm8zk83cpsqpkz2" - }, - { - "private_key": "b88b9c612dd1aead4b2991b9da07a4cb31020b31a66190de656651c23e633450", - "address": "lax1nhfjl8rmrmhf4nz3r2a7yjz44p0n3t7rq4tf52" - }, - { - "private_key": "229b29e42df4c9743375683b90c1301e6c439ea99838a5ec87ff1c1e6682d246", - "address": "lax12xvwymmdvua970edp2lfmhjzeqk8nz70223mw9" - }, - { - "private_key": "7eff731c40b9f45abfc4ab15a729e69d32d07d47db40d0ff60ead73eac3ee9cb", - "address": "lax1sg3m8nu3rh3nvmunulpc384kr9nvw5gk6p3zzw" - }, - { - "private_key": "d66c6706466a61cb30171015b28f1d266d8894a04827c6b83de38f121f8dff59", - "address": "lax1vqvc4wj3aaa653d85747uck9dz3nzujrmrxc6v" - }, - { - "private_key": "60027334d9c36af7990bca594b4f79954137068f896ebe81a30da4076689c2ca", - "address": "lax1dswx6qngjq85rgx7lyl35vlrw2vswqrnqjy2nw" - }, - { - "private_key": "6dca867f337cffdfb9aa4827ba12a414a38948da246e90a566dd2d48ef9ce812", - "address": "lax10w0nene0dtarg4gcwdmal57tdlw76r77aq04zz" - }, - { - "private_key": "9c7b6f3bf6d74f6e1a1514daca42ae80cef92a38275194d1ad399849ec91c800", - "address": "lax18keyhsskga540qqyzlw22m9cjker7c2gh6dffe" - }, - { - "private_key": "a520937a0a93ff55c977bc08d187876b1b379a32da1653ca31275c86422fe3a6", - "address": "lax1juf27v5h0tcdnrzhdwrzxfumwl8fxp4pgw4pju" - }, - { - "private_key": "babba213319663d82f3b0d89e1123b22d0122ef0337352ae03759712784f914b", - "address": "lax1vzhkrxw2zejvcgz9el6vt2kljcp2qk93vqgvdj" - }, - { - "private_key": "4e8fea0e0d875def72dd9ff3050e446ca62889549c9ef9f9ab6bbf3b0edc9f30", - "address": "lax19py605983sdwkqp5z79qewtw74w4ucyz07dskc" - }, - { - "private_key": "cb498ba5e610a72100353f3e913024d7a918ad360602982cedfb407ef7478ba4", - "address": "lax193p22hnfy2mf62q6rmj8qd4k6cclvjy67p6ulf" - }, - { - "private_key": "d72426798eb49b672032e2e98c9b5034e9696dc27a804dd4beacd733e4804d58", - "address": "lax1ext743hpmg008wpud22nap5v388f6whapj3tkq" - }, - { - "private_key": "daea958bfe918e8680c7bbbda1fbeb9ff05e2c8f17148a20217646d5018f9eda", - "address": "lax1647ffw2a0vtt2vkn4zhhfh8qfn3qp9vrs8rd4h" - }, - { - "private_key": "91449c35ae91381fe3d719d4fad9b1fdbb1241f2caa86ba29b917f41cee1a53b", - "address": "lax13dvsz2jv0ms0ng0pjvfzedjg2aemnad958yk3j" - }, - { - "private_key": "1916149a67f93a56253fa03f4a6e067b36972f84806675c3c7faa29fe7d0d0bc", - "address": "lax1kepgnz9gn7j9agh08n6wd00x73fy23azexwek4" - }, - { - "private_key": "d48d6b78aa987e32677ab887dad1d94c9ff98171af1b135d9c15db4bf4ea61a0", - "address": "lax1ps8n7c4gnaxgke3pzaensdcm062glc8j9ah0rn" - }, - { - "private_key": "8315588da1bab4595cedd716a9a9576c1f0a5812ceecc91731b8571593fe2967", - "address": "lax1nzu64hg0kyc4nemd26rcpm28spl7fntre5ljj5" - }, - { - "private_key": "bf22c62c29016caaab5ef224f8ac261bb0db1139cae8393324dbaa2376e16bd3", - "address": "lax12felmmafjzkrsv702l594t6ulkxgh4z07fwa04" - }, - { - "private_key": "e40c1e4111a42846cb868cc201e3926bdd377c313f3ec9d9b83ed850314f9d48", - "address": "lax1xh8x9mmz7pwamx43fzus2z8jd2jytt57v772mq" - }, - { - "private_key": "fad407b55d2a54810cb7396b8c519afd0d40d45f985c6dee296cf0258e6e9d44", - "address": "lax1ug4vzjdrs3a96y9yp4yc6gf0ey9pyk6evwt5yu" - }, - { - "private_key": "55aad0265301d69250afc346c6d472fc9c8fd337b1af5221e0e2d0d55fd19d67", - "address": "lax1gnfaru8szcyjl43x9mehfsnutzlfjtj5fswp93" - }, - { - "private_key": "9bfe67c4a33c49eedcb8c78b87092bea908bdd37b7b6cf4516d0cbe94cc3895c", - "address": "lax1m7z5wxq4sg0dqgjnh29v4hzm20knq8f3axh4d3" - }, - { - "private_key": "1a9b61adc38d458d16121899d98068df065eaed69f46e3e8aecb8f6eb9966f0e", - "address": "lax1dhnvhnrc00g9rvdexejpldvtw87y7677plrugh" - }, - { - "private_key": "c071fc6c4bb2668b84cef9a070cb7fccf776c1b1d8506f171a9f2d7a5b5c93d4", - "address": "lax1c8qulj7gkm9qlsf3g8t693tvmrpp6kw6dv735j" - }, - { - "private_key": "623b2ad2c31365381073d1d886ca500c03a8fdd7cbe64465f3635dc95718637f", - "address": "lax1d07uyt7v7pyal0hf7sax537fv847a0ewqs6jqa" - }, - { - "private_key": "00369a4e9df7676750d5daf77cacc14300334cdaf41a1313d65bd57a9bc6947e", - "address": "lax1ualwkvftfxvpxz7u9qdam4ux4ztpp6xdqjyd94" - }, - { - "private_key": "38c30f1a9463d16d313c3befdd588a1a78ffa70ea05ac3b207e52d557050b774", - "address": "lax1tnpn3gl04gwn99qpqs7jnnhuemump36vgsmk6g" - }, - { - "private_key": "3d30b83608ab4c81b5868b59e7094fcda82a4243b80878800dae3768a9dd29fc", - "address": "lax1dc8acvn4huunu2rvljwx3nkcgksfrp8pfe4zfk" - }, - { - "private_key": "2dd004e8a1431f1d509dab515f2ec4282594d0c01387f846fdb03f8dd0155ca7", - "address": "lax1v45wwvyf4tlklcf6mp5et5zage5dmeulmekg7a" - }, - { - "private_key": "ec98d2c3ade708040ed4bf2c4da05b49bf0bd6449ff82581c6b9cdff372bd511", - "address": "lax194kyg348v056a52um6te2a3ss4xwtam7cgrhtz" - }, - { - "private_key": "78fb5ee66873d43cfdaddc267c1580c316147dcd52e5dd7a9ee51deac782d447", - "address": "lax1wnxmxpg4yz5v4dza99ksm8p9zxkvt7pm7tpmgw" - }, - { - "private_key": "c49ce175cc8b6dac32ca15b90778bae05e8f826a818cf7a36df543b3d93d6ab3", - "address": "lax17cv04c0z62acr43d2x5hhr6wn5c7rsl3w3h2rm" - }, - { - "private_key": "fe086cd87f0fc885a1b292e3523f15f0be231bcc79a8b3254de921a5b276dbb9", - "address": "lax1gdg0ypegnwrwel2q5vujxcmfc4y2hdrm339xyq" - }, - { - "private_key": "6ffa0292d7fa66a073da58f5b45a16847f7bc26bf43fb4f093e912fa7f5b0ced", - "address": "lax1zd9kp8xstulnt999aj083qgkmqcluyta0veu5q" - }, - { - "private_key": "05c60dba5c230de5a086e3e0a4bb68cb94ebf82d3781375d433bc0bc93d0ef01", - "address": "lax172zels0pxpkwj57q0ufw9ez2m4f2p3se50c96s" - }, - { - "private_key": "0e71bbbda3ec7069a500bdd947df6f521a09438a144e916e11203195eadd18e0", - "address": "lax15np3kx0t2ge33dvr6pcwycugd6yfhyx5v3ht58" - }, - { - "private_key": "531a5cd077de6d1ecdd15091a80f6bdf813c612e1ec53c602f209c73aaa7b359", - "address": "lax1qcypchz782feknhyhe7qx0t6h4nwqsjl4c3jsq" - }, - { - "private_key": "7233d4e261fa36f906fd6ab80d47f39d8a648feb801f5295d1ce09557956668b", - "address": "lax19w4gfal3xefe8z6egu7kehefdtap69p3zxa9nh" - }, - { - "private_key": "d3f4ad7e06614306e8708e1f2986b07551d0f1356e3449c9e2a05e305c750cd1", - "address": "lax1mplshgt8q6em9pepzqwqk65ntszcndpvt0rdk9" - }, - { - "private_key": "1d5f60bb196b5f1c92dc5c2399d058e6018cb8c82ba481dda0c2aee51cb28fa1", - "address": "lax1y88a7vxkv3djmamsw8s4vev6dfcvl5huw9ncla" - }, - { - "private_key": "6f07382b2090cff61e9b2aa05e9f46c2a80cf89316335b5729763dd5daf91353", - "address": "lax12cqaqfwvw8vvraqh0fcdn2pdydd36wjkmstckq" - }, - { - "private_key": "f3c2797e92a21cc98fe45b3bb068932141ed4e552984c7cd0589cd3fcf37b7e6", - "address": "lax1e6kv0kluq0m86zf35zckzjauu6jux99arrka0g" - }, - { - "private_key": "b3a087b58aa986cc6448dbbafb4346ad296f69071887c8cb7bc23acf8755678c", - "address": "lax12s2qay33ey466mkeg8krurln8grglxnum6es5h" - }, - { - "private_key": "2c22d80e58057bd2b1fcf892381860cef069dec0509349b7f4b1e86b83b0ec20", - "address": "lax1egv5tguw70pcr32uyjzd4eg90ll65tamxzhy4s" - }, - { - "private_key": "6c0d3bae3062c977ccfefd3d9fc84f5be73e42bdcc218e3d76f9197b14d2fb36", - "address": "lax1eclu29p3q503r0krl6q0z2hxy0ej38wx37efec" - }, - { - "private_key": "c4834336f92d8b684ba33b70d149f523d29d2dab43ae52152c785557cc4b1d4d", - "address": "lax1de2sf4lwqd32d37gljt6z793qwpl4j7kwhrns2" - }, - { - "private_key": "3dcb8a60eb9dd0bb1dc20a1dfbdb4527f85820e4e9d3316a6503d6507702fde9", - "address": "lax1jce73tg5fe4msta6ap6czrrzdnvwna63cy58up" - }, - { - "private_key": "b535f3a9c4aeef6a9c941427fe4f4501a91a8970c7f02ea330b320308414af04", - "address": "lax1ph4669elrkpv3rfpqgyk65rh3vn97rnlfpwm4u" - }, - { - "private_key": "dc592cf7cd9c7fb738d59049ebd1688a7bbdf932f0a369d41f90c8dfab35d815", - "address": "lax1l7k6mx7njfr0qtw7cf9k5rx0rfqcz85wyqrqd8" - }, - { - "private_key": "6a2fc3cb67fbc0695a3777b20963280e6d9bbe72dcbf7be3a5f0c0cdf91dae49", - "address": "lax14udwvp4hmpez7rz02645n7kg25ya8p2xpelvlg" - }, - { - "private_key": "3a299c95a483d65e352b8a4d335614f0069eb646465884cd923bd7d32b20e775", - "address": "lax1m4my0gw93qaqlkt8jw8p9hxvmkqwfec9ah4fc3" - }, - { - "private_key": "3248938f371e2ae55d66cbb572987b6209eeebfe36699aa32812c13e15760b8c", - "address": "lax15jyy4pvkjpmzez6zjwts7wqptaasmxkq789cpa" - }, - { - "private_key": "a28d6c28b6941dee130848498ce4eeaf67fbdf66046b6a8ecb2ea03181805696", - "address": "lax158kwdq7ct4wzjejkydcuusrkxzxlcq73fv35ps" - }, - { - "private_key": "4375aae781854188201f6d4bf8139e0fa11eb4846d00f8cb958be61e6583b535", - "address": "lax1jamxaru69j83red9ldc9zkh6uedg4rv8zkq5ga" - }, - { - "private_key": "5770b5f75a2234f1e0574881fa31b31a5dff1a36f96fcc7effd2dc62a4caad87", - "address": "lax1h6fwy2fgrd0dygs2swl33s7umzyfgxw6dc2ftu" - }, - { - "private_key": "cfd7596e0ea6b113101f358bc82fc2e5d75546bfcd3216bc911a7eeb2c1e9884", - "address": "lax1ash9837wjvr56u0jptuvc23d9xujtpzgc549a9" - }, - { - "private_key": "18dce165b276a641a677721c94b26fc03958653d602c1effcee60d7751171c7f", - "address": "lax1tq8tr2s5j4d5mdv64wpvhejccszcfmk8a0z0g7" - }, - { - "private_key": "fec870583e3838228eefe8be74f6a4252acdedef8b1150b662b3ff46749e8232", - "address": "lax1yudtnzn34u6gnwj2ylru0z8lq5u5fcrlz86r4s" - }, - { - "private_key": "655b099142b16874b861a28654a6548eb5fbb447484ec2250630a645156dcef2", - "address": "lax16p4vfd5ncg558nyzthuz9vtkhkcfkrutckjfc6" - }, - { - "private_key": "1e9e7ff5848f8ebaeed38537da51ca263ab5cc30117e04c260e23605a3ba079a", - "address": "lax1c42vpttaj0v35el933jty2u0dcvtkrf6h402kg" - }, - { - "private_key": "a0da264925a0aabdc2762b56d73d994b8239b9149dfb3386ba36389cba4266b9", - "address": "lax1tcea3zrtn80gnyh26weshfz50evcznnz6whxar" - }, - { - "private_key": "85e14c1ee77d08cdb9fe13bd7663d675cb6b34a9072c114e324493cb82b2c228", - "address": "lax1zqqda0ks63nesm55cvy6wytr32jyeuv0vm0n55" - }, - { - "private_key": "71335b6e83f6b34deca7bde255e7dd0fafe3bf18d7b618e0b36d96fd1b836886", - "address": "lax1eja6g9y83ldlevwa5md3xpv4tzt9vrpkvmhf55" - }, - { - "private_key": "d644ab2466f37123a8a4fe96867157df00fa960b233f949b34a7c130f9ae3f35", - "address": "lax1k4s933dh79wc3v76xpuxfkrq4eun7y33rqkgcf" - }, - { - "private_key": "8f3fe37a739ffa9edf528e4db64615987a0e6ddc7de6855154ad8a046d83f217", - "address": "lax1u5cqrxrpp20djn6y2y2erxeyt7yuyph0qfrfny" - }, - { - "private_key": "00e9081ff1bc5c97a14687e72b39fffc87f565783fc503e83d79c80290cf8574", - "address": "lax1sxgenq0hz9p9gf2f0v93ntkpg2qm2revjtmqt7" - }, - { - "private_key": "311f0959016b226f1f780e9e3485a298554b938ebdb356a223812b05a9c492fb", - "address": "lax16z2as6qrsydehwncpyx40g6xn0kuulm2pjv49c" - }, - { - "private_key": "bb0681d6ab42dc4407177c39cbc5fcc803efcdf2ada0bd8fe8b3385fb4e5d530", - "address": "lax1qnt2cgr7fgw4evugte3667ytf7cw33uv9dlld7" - }, - { - "private_key": "e0a6dcf50bd332ec48ea9b9823015df7005097e58b6842729724bf3f0191ecf8", - "address": "lax1nm0wfwf4y4mq0a9lwwer573l544dv9htj75s2s" - }, - { - "private_key": "87852b583d8d7c726e8d45d5ad6028ffcd7cf2c45a727628c9a09e221aaefb87", - "address": "lax13pty5fsa4sugd9zxpqryra7k0yc5hhknyfzmrg" - }, - { - "private_key": "50c8f23290edea38696dbc3f5d0e44d575c00bfa93ef207087e88ed676585ad4", - "address": "lax1g786tmv9ed7qgj6q3ckm6nkvxh5cf6wgx72w3d" - }, - { - "private_key": "84cdf74694c155bbe68aacb5e166c9994fd03216750cd16fdb699b8bcf49484d", - "address": "lax1pu2w5u2xn9qnz0228fs5ztyd05hs0e48sagd76" - }, - { - "private_key": "9a25b9dcd641f926c700bbc9e68f03c01479bf4cf09a5ceef546c139b5aab341", - "address": "lax10glksetc9r98x3mlkvdr3ayn6nhalky3slqw2a" - }, - { - "private_key": "674ed380ff353c5a824da0d804efba1ffc84b2cdacc5c59560ed98753cb0bc4c", - "address": "lax16t7qtkk08th5rt0lnedtmgvjnafw3jmqn5575g" - }, - { - "private_key": "6d6ddb768befa9bd7b12be0f8e5defefcbdc0d8ebee3c8b5d438b1ad3f4a8605", - "address": "lax1uxcnr934j8f4tw5v4ryqc6du4nuvvvk98rxn6d" - }, - { - "private_key": "1207eaec4172410a9f8a69ccf33fa1ae8e648a7e00c7d3243c83089a7f8ea83c", - "address": "lax1krqym2frs3w3fhr8sr4awm4qkztf6akqc3pxw4" - }, - { - "private_key": "69c11d94abf847824ee1d2e1c35a7c085c447aabbb40e613cefdb4fce52f3493", - "address": "lax1z4p2ljnt3eadhq22jc5z9yx4ysf2ywex0pzlxz" - }, - { - "private_key": "59bb778c6e2f39b35d264873fbd11d2ebc85a0acccbf7ece7d7079a93f3e64a6", - "address": "lax1hhs4rpvl8wt8lgj9z530c9hsa7jxhc8qf8avc3" - }, - { - "private_key": "1ea107cba5272019012ff43b416fdfcb0bf208fac7bc98197c15a42463c70a7f", - "address": "lax1nfvsasgl6fuv5745xv4sn36c23wp678xpchg8q" - }, - { - "private_key": "bc6763afdec825c954b913e2c76211c18723f1513b4944185bcd6958c58c575f", - "address": "lax1pxmdda7y8myzhl6jw9l9tslu24z090mtyt9rdw" - }, - { - "private_key": "f3ea6bc0f88056b6054396a970417d885d0733957059506b818a16cc680623f0", - "address": "lax176p5hymtd97893pgne258n773fhtxv0nv8mzzz" - }, - { - "private_key": "89a22376d92ca829635970960854ac257de784d7772a7694dc6a1e473c01efcb", - "address": "lax1yp6ef6tkchdgmz3e2wsg0e9rc588uranzkf8ew" - }, - { - "private_key": "0dbaa53dc5de1f563094a84a34b24b939844f643a439fe4a75edcaaa9dd033f7", - "address": "lax1dle796urqzt0rxqgv0naa2n20jku4wgxu6fs0n" - }, - { - "private_key": "9098c0035d1e895684d3c98e2e2b56d0e8d1f31a43358a1c2d5cd0192b4dc2d9", - "address": "lax1qrm0zhgc7gfsyl4dsk0sf26sk0qmdu68svvt9m" - }, - { - "private_key": "f81c61086b999d6bee0f141fc0ea31913af4c3d98690d9f1ea37f89e5406b460", - "address": "lax1hmghd3ra7f0590l22w5veq5ztrnfl02kulx4dr" - }, - { - "private_key": "f3c7ad209e4018e7c4860a9e9d4ee8cf1831d2f20f962152d64afb56002d4c2e", - "address": "lax1f7v7n7ngxuw0nk4tzxytnwkmpwu3ttnsqhekrn" - }, - { - "private_key": "25f9de4f7e2518f4d37cc1dc2b528b7b32ee03d05e49b18d5d39b7ae4fe4faca", - "address": "lax19595xe0juxhs5f4xkvchhhru3zwq49gdehmk2x" - }, - { - "private_key": "4688f7e4888988c07c0617f27388b53c2b9d3be203b5d394fccaa8c532d05096", - "address": "lax153g7c0gqkxcc65g9rg4vn24n6k98gt6htknyd6" - }, - { - "private_key": "0f74a16cb4f51cd90606d5ca6ad68161d1156620eb1756d86c4b1544c99f3932", - "address": "lax1lw33zt53kkj5dtf8t22p7la9ddxxkt8la9xa6d" - }, - { - "private_key": "aa59a156dd317367233961dc9f5342bc482acfed40d381d762f6e6cd2ed82c9c", - "address": "lax13aq9ymgdnfm9353v6u970jjfdyxzjlas4wa67p" - }, - { - "private_key": "7025d163a74f5abe01378a44eb8a4c31b85e4f5b42c1049295b25c277944270f", - "address": "lax19zgzxcycejqjsphl8snqsfw7xjxvcu6r704zqq" - }, - { - "private_key": "7a06b928c4dfacef9962b63634aee52c916552bfb72641b3a3d00efa8fd06154", - "address": "lax15eqhllceurz6h8vkjkx66f8jkw4h9tmzu3r2zc" - }, - { - "private_key": "1ca7075ea80337b2753236f0f578881131e91713795c18f714d3cd1fe0c55724", - "address": "lax187g4z85ggv9wu87qqym3ussxc8an79xyckezaw" - }, - { - "private_key": "1ea1f752d877d9745fef65d9b20edf57d0cab2017bf5b2eec43cc28e3460a5c2", - "address": "lax1a6k3c2840ak04ugaxxxalwqd4exvjdtgxnzrqh" - }, - { - "private_key": "6abe102f914bad6f176ad094b2d534a3b5f9f86ed0c109100795455cdd457bf1", - "address": "lax10u6egwjfq2k6w3nx4xevld9s949sat85add94c" - }, - { - "private_key": "c48d42e2ec3eab4ae65a5ec9ea3eafe97369e151069fa44c21f3608b46ffa60c", - "address": "lax1qns8dvwlj5tg7nu9y3jpkumu9t69m27qckv92n" - }, - { - "private_key": "f6c56a4cf1cc0b03eaa315d3f73e11694d02c9e3924eb2460cf411240df2767b", - "address": "lax1hlct5nfwsh7ld8m0kfa9wnlvwemu08ux56353j" - }, - { - "private_key": "560f92e272dbd075253edb860fd9cd0f5fd9a52e7b7b2dc2856f671b426deddd", - "address": "lax1fxec46s68amm5l2x8c93q9ejkhp2f0vt3mgrdf" - }, - { - "private_key": "195c0fc923a82437bfa26e5ef12117f731751b461f31b01c05f37233497d9a44", - "address": "lax1h2925xtzxq5lfyzdwm8yht45gafnqlyuuy5gk9" - }, - { - "private_key": "7e70da9187cdc89e6f9b5e6b1ca32b01174a14d90d8b06872fa67a3643098e7a", - "address": "lax105m0s8q23q8pek4fgggyn22cm0xgwvnxxpv56n" - }, - { - "private_key": "35804ec660024df489e54024b1e404325fd547d8fd3b755ae139d8f1732c14c4", - "address": "lax1wq4nqkmhk4mamyy2u68xkdnn4al35xr4vvqam3" - }, - { - "private_key": "d7b97c2a7980a7ef937b886e304fc581e1422228c92005f2145b1332aa332cd6", - "address": "lax1qp8name9ruujccylhprzvlyswy9rnmydxk0rf8" - }, - { - "private_key": "47284ac55927ccb672ba31bf0fef21365c87f48b5b9a5cd908a524f9e17645ec", - "address": "lax1d9a8m9t4mdt3p2h6wh5lhn7kylrspqy0j728xq" - }, - { - "private_key": "c5092a793e6bdd30aa99e966f1dc8823e312d124784dbe455039fb39896bd2c6", - "address": "lax1enns6vnl9hxvxx5far7xspm3kutv7kh84s3ykx" - }, - { - "private_key": "e3d2167e8e9deb507144158d6e0101452586dd79e557f1e0d8865daee341652a", - "address": "lax19pqmhhzsz6j340xcq988ve2jrszwdl7mmunud7" - }, - { - "private_key": "35ac7a94e0b4e39a4178b5f4c1fb3257556790130a892c40251489c944e1d23e", - "address": "lax1jgwar5ef9k6362fas2xkma6j77949d5am722lj" - }, - { - "private_key": "2115d1c0acfa415d62dff89623916aee90d38e2f8a566688567684e7c41969e2", - "address": "lax1h99d8t27hhrzv7k566ua979vrf52rt5w2dvvna" - }, - { - "private_key": "92926a71eab3bd718f81ca7825cdab7869f936a4b91cf519a0bedc57b5db384a", - "address": "lax1jzkrzt7tv6z6gsh55qghppg44n89cw3s7tne95" - }, - { - "private_key": "d76952d28a091a48a049118347e81836831bf56bdc3800e3e14cd24b01ef92c5", - "address": "lax1vwmdwyfjfzev9qnnlmguwg0ml9qmsvumxy5g52" - }, - { - "private_key": "8b37a60c4062f0c223906b085dac7c42a108643b2307194cd2ccffcb65768865", - "address": "lax177vylrajz0xctyjmv4gclp5y8h6ztny82yffg8" - }, - { - "private_key": "c5e5b003ab109936a3b8b908cf1f4b2d341339815d281f6f3fd756021df426fc", - "address": "lax1w7ln52rgcjglcpfhm560h5yxpg6w4yqtd07d2d" - }, - { - "private_key": "ef7bf9332c127ac51d27d99c9e4919fd4bf72222c6588c0f510e9f1cb339f1a3", - "address": "lax1fcrurnuplle7q9t26953x56af2day0eyydwj6g" - }, - { - "private_key": "f655501963c8ac23b3257cb71b7d4ea3a3f0f1894c9cdf91e99d9abfe6903aaa", - "address": "lax19090lusr2em5z6d0mfketm465n2wuwryhawav6" - }, - { - "private_key": "ba392a85235426f76c3aec6f22e0f318d3764e6cd6fa9940c51ce5a359a72191", - "address": "lax1uguyak56lpxxx09lyxgh8gl36rl77kvu8f9cyu" - }, - { - "private_key": "5b1a32bf4ecfdbb8dbfc4ebe1533f850e7be8044f31d6efec353504e8870cb13", - "address": "lax1rp5cxymt9c5xyp8jmvudc7nw8c9sfhrgew4072" - }, - { - "private_key": "be323d8a750dd282c11c50a894c2e5b63ab8d4ab2349d69f8a5aa031fd6e6b5d", - "address": "lax13jge9a98zknzep30t2sa9hq4qh76dnyf5s800f" - }, - { - "private_key": "df59fa2de98dd8258b44403bf5a3959735822dc4171fa97ce4d8466769d1a512", - "address": "lax1t94t37wwj3q96zdrnwvnln799f0v3huw2233yp" - }, - { - "private_key": "6823d256b20660eacda631545bbef5b9371925ff589cdcfef4bc1d8d6b757357", - "address": "lax1gjgm5a9mus599mum95weqy8cy0rp8a2l2lz7cg" - }, - { - "private_key": "6d7836a860a2c858b6ac80ed125b2f734379ca36ab368925d9ec2bc26b933470", - "address": "lax10v08vqs0k3f5v8lqc28uvrvw0483emyu20mp5w" - }, - { - "private_key": "d007b7e72e7eb673d45ac8cd01d27a8f1d5b0bc810cc60169bca6b1eda990ddd", - "address": "lax1tjyydjkh8vej0gue79kvdh92f9n7y5u999q4zd" - }, - { - "private_key": "f192eb6e7c7853f6db071d20ff423e97cab561799611a3036ef54e640828f586", - "address": "lax1328nlr230hfksghae7fw3shrz28hhr9nldfzrt" - }, - { - "private_key": "2b6598f5bf74e6e2c63b19e7a93c1bd1b2346f56604efaf838ba686862d7cb8f", - "address": "lax1l0vqzqkk7754k66qnur86fhl8fdk4zrff6y0lc" - }, - { - "private_key": "aba2084bc45e8688fa5c8fa801b93c9404f3027665141a556b71ef5f242577c3", - "address": "lax1yd7sapu0n2sz7409rme588k7pc8z2ul08qpthp" - }, - { - "private_key": "cef337fb39a375710b6481babc61624713d981d1ba6a8e612acc11326f739be3", - "address": "lax1g527y7kaxm43zdssr4q39s6ametshzwnfz3hwn" - }, - { - "private_key": "c1e4f397e9ce9d0e3d0d1638d5f5a542080629bd0cab33d16ebe9cfd959d6fbb", - "address": "lax1hyvpgjrl9wkelx5qj7na0ayq3wxtm8k0rqk99w" - }, - { - "private_key": "053bd82edda51079a288f9e23809e59d55ba17a4b883de55c278d3c0b5af5cb1", - "address": "lax129p2rgg83m2n7gpfzlyuukw3azlekvta6ttwfh" - }, - { - "private_key": "b3dc8ff995ef45630bfb3bc5ef5a395cebba5bba1a2d67ca19362266432b05f9", - "address": "lax1t2gkrgn8zpssy0urztj0axxyvvd6d6fyru00mc" - }, - { - "private_key": "f6802c2f7bc260827fb34035e44869f025451a1c3ab129eafd19a68bee10a002", - "address": "lax16hux8p9x8gk2cqrmavetjsnyhnp0q6r9xadf2p" - }, - { - "private_key": "26dba4ccfd21838affc09068b6d81fea0d0bc7189ba9a59b84b051d5cafdc26b", - "address": "lax10y5h5f4dmkc6lt6r7x4rh05akx68psdfdu5c90" - }, - { - "private_key": "f3e2903cfff1070e4110a28c1511dcdacf7dd1a029ed9591172813ba373eafb2", - "address": "lax1nx6k90xyh30c6m26ju5nry4hxn7xt7mfz8v8ct" - }, - { - "private_key": "fe1e9096d747df47a9c6ed7f07b6c3d5bd77dfe84920d5b7e7197a22142126e8", - "address": "lax1x5jr5f03tajw624dtm3j4hgr3q93esds77eq28" - }, - { - "private_key": "1db89f25d22442b0422983160ce3684d01d46580a05755654103869076e22666", - "address": "lax16uw49yny9w45kpcpqyu2jdcw6myau3hqle3mq9" - }, - { - "private_key": "d27ac2f3b3eee4a968a274fe030c59983a3089bf363b4eebc13882e5b7e6b8d9", - "address": "lax14j4jvxtqmgca24wc6vx237cjr49nv7zwmx28vc" - }, - { - "private_key": "263dba260840a665e7bef4c3c6f58c26388d5b2bc1da8fca1637ee43be54caf5", - "address": "lax1q0k35hxz27wmursdw2xv4ag6qnv8arxhr078c7" - }, - { - "private_key": "15840e7c58682d50f4732d38251c4ebdf432c0a0a7c26762562ed236102eec23", - "address": "lax16hya2yvw8hfcwrqg7jgevryccey3d8usgrkp0z" - }, - { - "private_key": "56795f43d48bd667d295800b81b6d6219939fc90fe59b81b656ebfc647ae5c0d", - "address": "lax1hkjfe634r2y3dh9ghpznsm99yf5tku2y2cz7xh" - }, - { - "private_key": "bd38fbb0c9ad93025ec86ae16793f05773cfa7d9fb8d86a8087e8227320d1f35", - "address": "lax1axwtff6rjtd3j8s8z9upqkg2srkjvqye72y5eu" - }, - { - "private_key": "b1bf9d65670d2315d7b3bbee17480d31dfe6c2fa2d7668e4fd261f5e19bd7fed", - "address": "lax1fecpnynytrxhnyfh9wyyu00e48mzvzr5z9adl0" - }, - { - "private_key": "fa5b56b0eada5e20a8a04a3fa4093d929b736d956cdbc26d61ef3ede7992f4f8", - "address": "lax1gqhnm0q9fzh527rcflglpl668wqca4hjw2j7m2" - }, - { - "private_key": "3e1aed6592f24e4385179b261e68b37a11a154dc396dc9deab9d33eee674f696", - "address": "lax1xl3pu0w5pv442cgrxdqez6kwz8kykypm3lvjzn" - }, - { - "private_key": "043ee80021bc474d0dc507a8c5abb26868fd39707dc1b7c68f5cbf82199a958a", - "address": "lax1r6yue73ufxdcfnsgfz4rq78smagq8mlemvh5mr" - }, - { - "private_key": "1adcb395fc137a8498de53eb5c7a67119903e480b4694a846790203102c0ec70", - "address": "lax14hg2tr7en4qua909a5ql20zma8hkpgutm54x9k" - }, - { - "private_key": "2b56c2d0684e06dc9c02fca470cc49276dbe0c81fe51d82763433b6a89088013", - "address": "lax1gxw7h3ucdkpjm56c2f8xz0uw54qf7c7vcg5x4v" - }, - { - "private_key": "dff86d56a0141705dbe60635c232b2f8e9a3a67a143863e0eb0899c6ce925dcf", - "address": "lax1wrtl8hrzx3chmqhfsef092eg5fltakjwdctmjt" - }, - { - "private_key": "207b398f6f042a45acf7c0469d0faf3d0c744c3618f339a72141b375a38aba6d", - "address": "lax17ar3e70thf0zvfuvt69qec0tq3p62t5zlswfkx" - }, - { - "private_key": "0310bf0009b91267a141171b1fe85fbc8275d617b52e0dee7422a860f7ba3943", - "address": "lax1w3w6ef925rxfvkz4u6sdeqhphwscy53xljgghz" - }, - { - "private_key": "90a12b90fbaa5c98dfe50aaeb68d15bab0151b831ee5291f97f3ca117f66efb0", - "address": "lax1uw332l50mcz0g6uvyzdx6ucayca20y9y07fmgc" - }, - { - "private_key": "eb8ecb5482016a2d27eb29ab6fb97bfc8cf368118ffe61a623acae3c0053684e", - "address": "lax13mhlv0tkmyh4phn25aa8kts5sd4ats27zpykcy" - }, - { - "private_key": "62df07643c012fe225a6405429556e590d229ef967e9049523d5047b596444bc", - "address": "lax1gd0qn2sz5ykyytxax5kuk4lx7g9xzr3y3gjfe2" - }, - { - "private_key": "d0f8f017e1717a1b892bd91c415bef55597bef9a76db75e30e3cc8f79920cf4a", - "address": "lax1vjptgej9tx8cuyhse2p6g65tuhdcxmtudax3t2" - }, - { - "private_key": "b0efae7e53d4c3ec1ab366ccf16185b72e0bd60b8676538958960559dfc0582d", - "address": "lax1errvx8jlc93kkwhwzvn7m0m6zy0uuu073gy3zl" - }, - { - "private_key": "ab0e925d7bd1f0641e1a9d24027b62844099adf7fea72f807fe0e47ccafe95df", - "address": "lax19rtu7wnl4v5mq9ay4am2964yhhulmdvq96qcjs" - }, - { - "private_key": "c347f1fc1f12d6ce7be6bb262f3c7dc6ae0c3eb7502ae89d13432fb29aac461b", - "address": "lax14ap8v3q3wzmc8ewav09djqjf9r2jw4a7qcl0mq" - }, - { - "private_key": "d810d74ef6866cba969f9981fb78ea259c5e06a74ed4bfd16396e387d2fd2067", - "address": "lax1z5t7smwy7f67k0t2rgvqcj9tzzppq23a3a8yrn" - }, - { - "private_key": "79d9f01bcd07e326de2b106bffc926783ddbf88622b41edbe40bc6b7cc680276", - "address": "lax1cdrutdfy4eysv9dm4nz3szwnr43pwekukmnfkg" - }, - { - "private_key": "301cdbe8509fbe880fdbe3c44b04e288cf53356a65620651db288538cb5e363a", - "address": "lax1jgpvap299zu346x7tueqzzhejwmacrzd5g9sz6" - }, - { - "private_key": "593c3f71110b33d731c73b046f870f9f11c9c58c1fac4a2d6efd79fe50492426", - "address": "lax1ndanr5jav0t7hrl3zwstum3z32mye8rc7ekv8c" - }, - { - "private_key": "49ab1fa3951459ca9c502d1eb6dd20fc5682c73975fa97d516a16018c1ecdfeb", - "address": "lax1trw4vj9qe6lc4egskl0gd29slnhrqmutuhfcc0" - }, - { - "private_key": "0a3d9b88b8dc5781181d79621cd5e20e401329771aead5fe4c44c97ea1c3fb37", - "address": "lax1tfvjwnumngecyrerj00hsg6e7gp4zd44k7j9ud" - }, - { - "private_key": "7da1a0c6739a95c29d3fef7bb6e7a3f50d609a96e47407864b974085e684bcfd", - "address": "lax15fuzl4hxanf587wrzchk04sy9ayuj0fw5pex79" - }, - { - "private_key": "78af5b03c8a3b56c45c02d455df1d3e0342a30289a16c34a9d8a22b0799628b4", - "address": "lax1ftdczz99vm420vujnvdr335f2kj5xdnyfxm38r" - }, - { - "private_key": "802a9a000b381159c8882fb3211a631816bf3782092a97b3b08926d37a30959f", - "address": "lax1gtxucpr8ufxksskd5vvq6xmylg0p8d0ugjs9hr" - }, - { - "private_key": "cd72365442fb70ceeef8a90eb6065123469dcadf979bb8607ed9fd7664d028ca", - "address": "lax19kxn5nu9kdrp0tm8qvr26c70f07jlyla4edqu3" - }, - { - "private_key": "58d2ea29f0eb4ed75401d494756bc35b8a33e8f4ddd5b8398c16ab8ee0d09df7", - "address": "lax1ksfv3qv3gw2h3z0vnl99482fhxdh0xr5ecm8cn" - }, - { - "private_key": "eb9026482ee36678b7e40c4aedead2db705f113c07bb4c2a5a5dc81427e8c20b", - "address": "lax1827yyct8veexg35060acq8sa0n9wwt6xa9ee9r" - }, - { - "private_key": "ea06d7bda071665823f91116258bf14e0661ba750cef2a6a53624f0b570b2ecd", - "address": "lax1g8rhvmtpe0dvwm4yaelyljacq83y7wxfee93zn" - }, - { - "private_key": "a6e80b37c999ea622ecb4f9416e5c2190287155c0ced1090c2a6df1d77bd9fb6", - "address": "lax1pqvxadfuf00ta007l5tmlj9crnfsclrllres9n" - }, - { - "private_key": "86ba174086b53e11ec2ceedb1dd872209a37facd671fbba877d9ccec0813e66f", - "address": "lax1ftr5vyu6mclwzy06ca87gmfhnf53xjxg94c725" - }, - { - "private_key": "c5305775c3778c75fabf90b90f0f941faf09743abdc5e358b6ea2549eb840306", - "address": "lax1w929alqp9r5qdyqesaf44vhzhpyheqcwdqs6ec" - }, - { - "private_key": "b219b9a80e15e7022269181d66248d4cfc3982c1e4d127b404dadfcbbea7d6d1", - "address": "lax17cf0k04sycgq4kmu44v72uyw59rjxr2acvfe64" - }, - { - "private_key": "e5e88bc1185fb621ae57b7ad4a4eb0dd892e0d3f0d10f2606de7e9275f55556d", - "address": "lax1u4nlfec66z3pdl40qzq82n84qt8spq30gtkz9c" - }, - { - "private_key": "5495256c0a62522ef9bbb64be913c871ea5f9128d3564fcecdbe206143d89bed", - "address": "lax1uhs5uflxkuk855afhdgg9llqkdmg32eqxzedrd" - }, - { - "private_key": "f991e05f5b00154437e3de909e90c21c7364998f1ce1730871979108ec2cfee0", - "address": "lax12mjms5m0fanuwcaggahpup9f7atqwtlu6jjf28" - }, - { - "private_key": "3b2dc1add4de4c40d93b3c6114fee8ebde023a5e07079b6d1caedb5c2969483c", - "address": "lax1tppkx29lccw25qsy0vppag3vadc7ym7mrnhspc" - }, - { - "private_key": "4fa4dd28d2d72e816d18d840cfa5551bdf0ae2e87b73c2f39be94005cf9b9f37", - "address": "lax1teym25thfq6rh330qfcad3emrkrdzwcrza2nv0" - }, - { - "private_key": "a759433520b186b28874ad36a0ce9d34c1fbdf1747a04d2a059d56779fbfd917", - "address": "lax1yd3uclrqxf375z20uc2c40mdngy9p6dpx0jqqd" - }, - { - "private_key": "9040669dc4578bc16fc5d0e2abbcc65136e0a2efb5ffd3e5731fde44fc2caaeb", - "address": "lax1m5gc2nhf0gplsqxkhzfjyfuwm6mfmc37j3nyk9" - }, - { - "private_key": "be96a62154ed4de62c13772ef53aa480d9b04e87499bd053f2fe5b6cd373b8cd", - "address": "lax1ul7kg7s4a5er4yazep8ffgxy2duqsq70jsmneg" - }, - { - "private_key": "cf3cb0a07903456de9eb473bc855e5d8b84ed39ae2569824ddb7700015b274a9", - "address": "lax18un4af02mcce6pr4qa4x20uqxadx2t3x5hn6rp" - }, - { - "private_key": "9b60f35bbc8a534640742426e8ff854310ae15a25915d136278106219a136164", - "address": "lax1xtscgegnetnsgwguc6w3cfzmy8jq6vxj4pg6yk" - }, - { - "private_key": "b55328e2f8a57beaf827cfc87a6844b773884f291969a4927de0fb80b8c74ff6", - "address": "lax1ra84jgsqyfmzwe7hxtlc43wrvl5cjrap0e9tv2" - }, - { - "private_key": "0e6e248f16285638e64d8d8758eb8c6cbda049b82521782b363fd759658e306d", - "address": "lax1zfrp3y0p7wzs574yhth4afnlsrxfngenhxjdqn" - }, - { - "private_key": "0eaefde459dcba02d5b87b56b3430f5780256f03b8119917072b1356b82b806c", - "address": "lax1sp7tl6shhc2u6kd4zu2j4zh0eu4afmky9m4x3g" - }, - { - "private_key": "e50ecc4c05e72876c8c153d2d05b8ef8d99ccd4fdb96295533e8f7635704c54e", - "address": "lax1nftde3k5cwcs329hrjmdtvjz6msvq3cu8djaud" - }, - { - "private_key": "4f567044c75985d2aacf8754420d8a834213e26fb7d98841a7e06978d7cc8c85", - "address": "lax125h6tts6953e8lcjdueax4wwkwevsstcksqh05" - }, - { - "private_key": "b3c2ab24fbba96b12612857e890f3dd82f56deb8e7bcdae95133bb6afee26c87", - "address": "lax1dhp4lkd68dd63sqttcfr54j0u4wwx8dy2acndu" - }, - { - "private_key": "cd4c14078978af2277fa02a6af3d1859a4d956702d556a2f70f30d96667c0e37", - "address": "lax1afe9jldw4geuck0elr2rvukwgpa9q5dgs5q5aw" - }, - { - "private_key": "4b51375c708330e829083395d802c6b954e69f9dd4c2b691f9ced532c97f1d7e", - "address": "lax1459na0p5dfsyncdra7h8ejs29ucmdx9qz8dah6" - }, - { - "private_key": "69e2c39ae8e62f0e0d659d103311989bde3a5b0d3ce50099c8b8622b6f3b80a0", - "address": "lax18c2lq8wrglxkm2em77k828lq45mdwhsjh7734n" - }, - { - "private_key": "a880cb8c61d3a4273ffcfa6044c5d5c106631bbc97f3994cbcdb469ee10fc62c", - "address": "lax1wwwnp238gk3rt0k94qzjlxzljqqfejlp62v047" - }, - { - "private_key": "0d9faae4be4c549a98d4a5e8c3fdbf87aae903f7dff95009cbbdc71edad82f65", - "address": "lax1qnwcpkakawwdm7nt9t5xd4v9ugp6pdfl73d4k8" - }, - { - "private_key": "c51870fb3593a3964180e34a841e0ff451abf38d931cb2f732093230ed9cd62a", - "address": "lax1c0rwvte75x8m03s9x9cja453vxcf2xzmhjz6ka" - }, - { - "private_key": "1f40848467eb9bd6b490799c5fbe234a35250dcc3e112ca9856f8fbb5a5b02b3", - "address": "lax1mv6kjpu3gtpywchr7qxzwfuqccankm62xpe4vz" - }, - { - "private_key": "d3ecb6eb3ee6549f806b2024f9f209e136f120d66d2005955043fbbc971c4f02", - "address": "lax1pr445dp5v0zc24drzep6kgvfalxgwx09fkwx67" - }, - { - "private_key": "86563d306c476d5fa978332166b7359d830fd82910ceb7502ad1d3276abc2d36", - "address": "lax1cwp9j3s05v94y7fmmmesvtse4rj9zm93xhtmyp" - }, - { - "private_key": "6bf6966b75270c2424ef48eb4c3938a098ffbc7bfd73db72d4c77a03694385d0", - "address": "lax1eyyeazemgkwqrnwu5ww75fkn8286fcj5tmv0gz" - }, - { - "private_key": "5d6274e1a7211a10a0c0fb6feeda7371504a5393a977d4b9017c6f59975d0e7f", - "address": "lax13dawm8v2w38nya4mq5y0vnw7ws0p5c9kwazw9e" - }, - { - "private_key": "acabc7b62895cdbe097d1add788e7e0557d36eceb522471312491dfaa8505a98", - "address": "lax1fmnynpsaq04dthxc36l0jasl2e3zhgefhcxrdg" - }, - { - "private_key": "9879adbe2fe3348ecc1eb0159f794fff19c8801373c7184e8af32ca63a7f3f89", - "address": "lax1xcfu2rlsf8jhe0m8759zzz3sjxg8f5qk4pey0e" - }, - { - "private_key": "1ce3dda14f3b89dcf13917d15c2b9c4b6a843e3f7850685841e6a9c24fa5d30f", - "address": "lax122yk64nzp2qe7hv50hlkv2pc4xnwn487yyhyz3" - }, - { - "private_key": "bd24cc94fb48ebedee6ba6e353491e6fad281818a5d58a623e1860d6601998bb", - "address": "lax1pppv0x42jgeecs25uwzcyadguwu75s6hach5xc" - }, - { - "private_key": "f7198eab4a229eeb19f6a549f687c2909e3bf92e2616451181312e827a645ca3", - "address": "lax10wapqc9egg0a07hnq7d8g0kuwrhkgxrmclrc7q" - }, - { - "private_key": "e5b3d2d5cb1ddfe3c19e8a1578ec85cc2c2cc5d9549574ce9d7928e7a4b66c7c", - "address": "lax19uxc55qegvduw8cqpv8g9xkw9frwy2j4nylhgp" - }, - { - "private_key": "09b48149de314d90bbce0da8c82659af98437e60af12cd7ae06e8a612e2ec114", - "address": "lax1re8dng3kuw9y3uj4ytmfgr28etgp9j27j83tjh" - }, - { - "private_key": "ddd67247060b8c426a236276f415195c8606a310b0b0bb2a9feb68ae3d02bbb3", - "address": "lax1n5xn8cpyeya24srh0ghzeuz0xll7pfxrakt967" - }, - { - "private_key": "e18f801e15509b0202817a9caba5f44b7a8f1789cbc5edfe1c1f739a393f1e9a", - "address": "lax1xedydfvcekm09y9df8c20lrak3lq77963cm8tw" - }, - { - "private_key": "f4e4244cfca4a61c5f1a56267956bc72746e78b9069f38d3b3fce1b20c988210", - "address": "lax17d87j73sw3vc5zwc5gdverjc5kz4qe60j894aj" - }, - { - "private_key": "2d185ddef2db75cb4814e67e6748c0e1c0e937b2d097a89ab03fd181c47eb9e6", - "address": "lax1vxm9t7c2jtjd4t9xm6qg4nryp4g0kckvzj7ru5" - }, - { - "private_key": "244f1ada109ee6ea3a63ea4c983d12647f87e8973f569b750b02a2ba340338c8", - "address": "lax1c478mqe8agrla5hqz0da6gs79d64ktmtw9n5lw" - }, - { - "private_key": "1e3777fd1838d8dd6573f6762be95e60ba4fcae04cfb51ceb8d49038f3735012", - "address": "lax14grpkmfee4fe6efangh5sl785q0sen2f5t6m9f" - }, - { - "private_key": "abcc5269157018551691951ee190727ef86f0d988a3987bbe8af7a873361617e", - "address": "lax1eapsl6tc9k5y3xhr9acxls4gukqn58aqkjmjfd" - }, - { - "private_key": "f412022143bb011b76753f1b4a1f488fed496edb75fecd56f73d198044cf0387", - "address": "lax1w2v3mmzcgesqdh6re0xajudwqtftlqx8exp2ad" - }, - { - "private_key": "e7b51e7334e8ba2546c56f3d715a16a621b366eef43be52f88648817800c1ea7", - "address": "lax10sw3pda92fv5vvvg4znurfcl2pyg3hk6h70dwd" - }, - { - "private_key": "e6819d6eb0d6484af51d6216f8b5183241a4a50da96a55626f54de9f8b37a7de", - "address": "lax1utzkedhkgysy0ypa7xpxh8nwhxv2c2fffpnda5" - }, - { - "private_key": "5ea491088992222a2dee99bfb594373f0bd795e411c40f38498017cfcd6f8de4", - "address": "lax1hx66rup63w20cg5n7fhmsa3s7g0vwsqym3krzh" - }, - { - "private_key": "d89ea1f474fc1899d06a8d9065ca5e251232c054faf1a75a28ad2c529b661d8e", - "address": "lax1vllh7097ur3fzh8tkexvf4v4sqw8v8wpk53lrz" - }, - { - "private_key": "dfd74c05c435e72a5312a15cc6beb6e09d22bf49c2e552efb48456b8255834f9", - "address": "lax1j85fxvkvv3578mgeru28a08fts67k5evz2yq95" - }, - { - "private_key": "7a11120b5cd961af2059697e01037dde8765345eadf7f693cd87f89d5887a40b", - "address": "lax100xe09hf86yghnvt6ufl7htc6vheqdrgtznnrp" - }, - { - "private_key": "adaeaf73007b097c9e94235390c33fff0cebf8e2f63f508cb6797e7c67f46454", - "address": "lax17rc4k2emzc8g8zawptsn3jklmqxsaet2xf8teg" - }, - { - "private_key": "7a495d4f0d2879b562ca8ba803501c10b2c1cff0f617bf9a4e6d696a32453744", - "address": "lax1tk4j9a7lf9z5ddsxfhcu7hmdz7ae62s6z92ave" - }, - { - "private_key": "bfae5612b5204eca3138a96a925f7f6ba41c9f40444064b36c49c0b99ce59a6c", - "address": "lax1jr47m2trwrp8jfmqnxpp2tq87e2kxhxhy76w4z" - }, - { - "private_key": "fc1e7899704a132aba3ea401ade4a46228b645dd8710593dd437dfe9e93867bd", - "address": "lax13h6etsz2lqzmyjct7usxrwnddlf569e28cn0lk" - }, - { - "private_key": "9481433c7366b18cf3cc51201191170a4c8cbf54728acdb0d095991b52b82ba7", - "address": "lax1qll2sjyezyq0czfw9m8y94maajjzgfwv5sspm7" - }, - { - "private_key": "6440f6f3e2043a91a0505cd622ddc1fe08a340b4a69512241ee59af42fe6a436", - "address": "lax1dekjxppuwa8wf9c2e2yrzzjfn7zjckug8qpu9e" - }, - { - "private_key": "26eba50ccb3795c7bfea61c47a256fba29deffa0734d0f16c5d63603f4d0c45d", - "address": "lax15zn67d657ytfwyqx7jrgwvh39dgymjyzvxdqhd" - }, - { - "private_key": "49d51763f44b83cd5b3108dfc8ad43d02ec8bf78a4d3458e920031549aa963d3", - "address": "lax1a0rdfy9xzeqvtkd82luhc4kvkym9j7flzace08" - }, - { - "private_key": "2286ad0e5aebfdc93bb7ebd7ec67885177865924bbfe6d7fa4c9b2b31422758f", - "address": "lax17pznhnugw4mkqqfjcyj4gkcpx0nyhzgka7c4xr" - }, - { - "private_key": "36b46ace0f498b0f44f6ea8232d68fdaf1d134781cfa20f7fc428bc5377fd1fa", - "address": "lax1xkwlyqfqak9jmup6ej2c89dh6q9fc0md73qm6c" - }, - { - "private_key": "b87d0a38a1d994c746e14934df32b3ac0e050d839fe69723addb71b7e4b0ffd6", - "address": "lax1v6j8w96ryjywvc08s870hcsczz0jgd7ppcfxla" - }, - { - "private_key": "ceea3af0f2776c36dda42b18c46a1875235fde69226119f658186c000d1de8fb", - "address": "lax1gk0ehzf4wyafutlcgn7rmdqfcgcwuvt0qhjecd" - }, - { - "private_key": "38ce11a72eddf45afe497a6953d61d3e4144fbcd6c497d7ae04d50163c85fdc5", - "address": "lax1mccev8gc2203klvu3zwv6gff0weenzzxlfglv4" - }, - { - "private_key": "7fe6f51303a3f96c12e91cd7a1248e2adb10da39c7fd0b6642dc6dee6a67a546", - "address": "lax1dyuue6fk7x5jpdman8wamz9zq7yq5c9yz9nnda" - }, - { - "private_key": "eaf8d6093c6555f2788aaca83dca9f3c1b3058f3be231bc824601e59a09db565", - "address": "lax1fxcnxmlq0d9z5a7gk7xudt2a3r2dvy2epsed32" - }, - { - "private_key": "1ccf932d988adaaf1befc35ba04d4f714a52d4ff8b58c2f77dfa84ded00bfb09", - "address": "lax1mcj8j0x85rf668cf3vp8xw6d5sdwq3gnsdq3jg" - }, - { - "private_key": "67fb29e78655288269a7a26c2c1775b4451683344d78a9ba832fd868d2b2e420", - "address": "lax1dzwg550q3g97ea8ll8adxsv7k4vw4kyje6n7x5" - }, - { - "private_key": "84718fb8e111213fc1e9a772c5c03300c32d31c87a7b01de69e9d8ca76d5d5b7", - "address": "lax1c4wj3q7ajrs84dff68e3t3djlygwsyk20t23mq" - }, - { - "private_key": "7e0b8e70d2aaa07be33fe615a06dc94b771a1df63d03aadcc662743e89e0631d", - "address": "lax1ag6ylkvul4levd8m0k6lqllx3hmep7cf5tuc4r" - }, - { - "private_key": "f051668cf71798f1a1dbe85eaae91065951f8524137d50ce0c0b2e3f7d71f223", - "address": "lax183dw7p5d02luj7znj8r57nku2aujwz6f7lrav9" - }, - { - "private_key": "5937e09b8246d6d1b4dcdda4980cd85031c40d3522be60b1485dae0236649e26", - "address": "lax1yq665pdnyt4kad4xl5lxmnc49sa66lygv2tdct" - }, - { - "private_key": "264a6a34a61ff72eb75001cef556b57b6f695f1ddd438cefb449c06dcc12b6bb", - "address": "lax1p7ywex38myhgzzymepwfzn5y64c7cv4xplac26" - }, - { - "private_key": "7e516e54446beefd8622dd4ae4629c8f8c1d1c63885bcaae6a2c88ae76c798e1", - "address": "lax1d7j80swfk360u7wj6s8vljga4lm30q2k3myq2a" - }, - { - "private_key": "3936037b7dcd01e34c4b4fcdb3eaa7e700a7075ffdc1b40b5c739de4ed22d216", - "address": "lax16nlh3h3k8v9rthfwgke8znl4r787tnf99e2cjf" - }, - { - "private_key": "7e50fa8943490bdc6a36dfb773d1a0ee332a26614f3d54765d64fd740ff5736f", - "address": "lax18akyd7yvev33pld74v726h4qefx00fvcy6cuwa" - }, - { - "private_key": "d888d53b5750fecb0563e122562490cf2b2ca3d41d152f9249f6a2bd6afd17ed", - "address": "lax1s5xs6ldc8z5f4cnecrp3nkhqfxff82wkc40ps3" - }, - { - "private_key": "38c8308f04440a7fab8e8bd7c53105e6ddfb210f00366d289aea294f8e06e9c5", - "address": "lax16sds3enwmd2wrap2zu2xr9dg8cvdusa38r0sga" - }, - { - "private_key": "a6c59ecfe26387a78294cf15e0a9fd18bff97ed8e18b05190db01b61049947ed", - "address": "lax1xh5g2ljzphd46jnh4udeue4gsrhdyawu3yuerh" - }, - { - "private_key": "7526f1935bda3d7cb46f9345d2c3c56a915fd1a6e9c6bc97a7045c2751b81c69", - "address": "lax1xkfm207k9gx0dszu3uvvd5pc20fmdlp7m2hnta" - }, - { - "private_key": "3357f4cc911926428e9f359b1916188772bb0ff1037b4e93ce587e104df9ffca", - "address": "lax1m72shu49spfztk84eg98celt62xtjzu4p82j4f" - }, - { - "private_key": "a369099bf0ecd379ffe0695247bfdae3a087e448b3da0b8bf2d7d502d056d6d1", - "address": "lax1jurhpelgs62dqq88hugxkhekctn49wyyw72qes" - }, - { - "private_key": "c20e4feb6c4db9957c40f2493a1b7eac326e0e7538f2b95009fe3a6f73028ae4", - "address": "lax13dkxh8k3scnp67stfglz5hqwfnhp7vav7nf7ek" - }, - { - "private_key": "7a977c5152e9c34df682bb6cf64c66ee68fee6f44b737bd3af73d1e5e3f855a7", - "address": "lax1jfknkwssfrefgwat8rgelxsjkmf3cdp6jdcdgh" - }, - { - "private_key": "3c6fd3fcacd0040896dfff19ded901fd4ca515649c0d8294d366f17a338a2910", - "address": "lax1fyv9hu9kk6mjjp4qccfqx96wpzhxlqv73afn9n" - }, - { - "private_key": "215aa20384484c8f5b9ed47166a82c29e910d0b9486a9b8eba4a44a6a210a4ea", - "address": "lax1fhjj90j6m6eukgdzjv6gjchf4kmjncxlks42fn" - }, - { - "private_key": "999eebd44b033b51cd1e5f7dd4e2398dae75f48772d84b9cef478ef6685f491c", - "address": "lax1z65jg2kz8l0cgpgkjyvjse88pqxjmhaxv26cra" - }, - { - "private_key": "94eb24af23169d0889566964500fea087ce30d87accec8198ba28d33669dbb7b", - "address": "lax1tz3n5ekuah3ruufhs7c90687fdsv9me0nk826p" - }, - { - "private_key": "7a0f4ce372225650792b8ade8b5eb453acb3e7b79a62b9d8bb035bd624055b8d", - "address": "lax17uldz4ted0m4utdq3mkg0pv5eauasdxjetnaju" - }, - { - "private_key": "daeae9dcab0a28a8899a831bd43583a7004209fb395b4c7ec83748c5ce17862b", - "address": "lax139u7ascpjuuu740dm3nm5ereumk28sv7dwz7ln" - }, - { - "private_key": "1ad658a601b096d4e9d1a07aae3cd723277fa36ba74770cc53e6194724471c1a", - "address": "lax1xt2d48sdq08qs60ucxvyxl9vf3apwhqmzpcdp7" - }, - { - "private_key": "08cda3ed590466c59c649709c93d60be382f394833827ce48358d6e940ffd0af", - "address": "lax19l50dezqj8c5tjsm9zn82qk0rtssm65wjqge6k" - }, - { - "private_key": "2d4ba62e81560718aad4755469c266d1249a80166b078d9b2f364f3d3f9a4715", - "address": "lax1mkv85aqkf3egv2zhurdtv40sql3jxsmeasfqga" - }, - { - "private_key": "1db9e6de011861b9b618407cedc1cea5fa9e7c500c0d29a58d832d3b6bfd0a85", - "address": "lax1yafrzpk8caa74cxfxupq49tg3tq5m9f4wjycjj" - }, - { - "private_key": "0a5eb00812befb39abc722a967c01ba86ce539cad0504f600d19f886ef3b7873", - "address": "lax1hhhz4vzy5v927pd0r4l9xcy4vdjlzfur45nmqy" - }, - { - "private_key": "9d7c8da802b3f390c90d6e4dc07f76f127a6a888233e2d3d5475ff3a8a863a16", - "address": "lax108q5c2tlphzfp0ltwnedsqxn8cgmvge6xqkx39" - }, - { - "private_key": "b3bd5c9da04fe029702e9f4ae4c7c59d9f9f0919175f7de4aa8997f4f34c3955", - "address": "lax1q3ajrcp2xeed4ujzs5hleckauvp83uyll6jrtp" - }, - { - "private_key": "b8f59db35ec1c47936b185569f1c1a37cffab2b76511be15c285f46eac426918", - "address": "lax1gwtjf62w45z6e04428x35nlz9p5mzfxerw5xan" - }, - { - "private_key": "b3fb02477d4bafcabe5b796f720773f646232a56b82bd8147437bc11717d8a87", - "address": "lax1vxv49pswyseewddnn4le3dkjve50mq8zy5t4e6" - }, - { - "private_key": "d8455b3fac1f4d1cbe058b8656b8a6da6bb626291ae85924264e1e56af4b6493", - "address": "lax1amgzkxj63h3rshesqdls6kkz2xwguf7e2kaxuw" - }, - { - "private_key": "5e8c004dcfade1b687cdfd4b66e5bf87135df10eeaf9beced9a0f9e7a942c086", - "address": "lax1f6p8uq7f82kyrcvv6ynt0ps6sqn5dlrx772etx" - }, - { - "private_key": "d127b08ac43011b864105294b5d14f83882c63dafff92d0a0746664c98ec5d31", - "address": "lax1mj2haw932dwdqe3758gxrvdu6fvjlz2fksnhwd" - }, - { - "private_key": "39e44cff23f1676692c01ea65f74e78b8031e64c9112401d24e7e584e4e09d57", - "address": "lax1seqrql42hfms5l2ft0tmg2cmla3vdp0jvzsmnu" - }, - { - "private_key": "44b9afacb6d8f7a65602e0333e1914319f8969724996871c580c4066e5d78986", - "address": "lax1tryzw2kj95wt8pqmz70c23u4usv4570tm4vhku" - }, - { - "private_key": "0348fcd83872669bfa8a9517ed3492370222857b8d3f958385f9a974407ccbb0", - "address": "lax10wed28gm8pkjcugq37g44ld4pndhfe8xx2lc7c" - }, - { - "private_key": "7322daba5fee002e0d683d9d5c65f5cdd137e818c281766fd86c6f2426f5b9ee", - "address": "lax1qsdmpn6nm0efk96anpxsusvh0rs02kcnjp34zz" - }, - { - "private_key": "787625d5acc822c97acec52ccbc16769eacd6dc8d806af9511429fb20ae9a949", - "address": "lax1hy83le5x9j9yv9c56mts6shn4svzvcr6m3xksk" - }, - { - "private_key": "1d20adae9c8c68d35cb842740913e147b48285c959f8496dde0b818deff42ab9", - "address": "lax1gw5tmpj7tw5wxl0l3356mjakxlk5wx4mk3w6z7" - }, - { - "private_key": "6982f37fb4adc1b71b6fa8dc4c221d76ae80b9bde1785cba701f3af0ded9a113", - "address": "lax1439m3lxqlcxmxhr8v33732akf07enrf6673wet" - }, - { - "private_key": "ee5a32a647dfd98fd58440b4e1b1fd60304d3347d01fe66bca3568ef94b426a0", - "address": "lax1fv45ztfqth5qncsj5g605k906p4a6fqpneqc6g" - }, - { - "private_key": "4d6797c794a280235af6307d1bde9747a3a98b90fc143957dd53cb1412c63e9c", - "address": "lax1k4wzf34sc0vxply6dpfgjsuqlmhxlqm8dq4ffs" - }, - { - "private_key": "1733a2ed4bd22827a56dc7de84e71a221a16cf29bd46f1c4d66ec2e51f150f94", - "address": "lax1um59qhjx9x9ukcegceaeupxlz2nzldvshd8k2s" - }, - { - "private_key": "cf952b22857a0557322bbdfff753d4187c1c897807b0c090c10f78606aaeb02b", - "address": "lax1qu5kxhccvyu902gpr3703zyej967rcs8zvyqfm" - }, - { - "private_key": "d54ecb6dff48e742bffe8560b6bf13ebfbc14ba3eaeafc4790a07d85a5e8d094", - "address": "lax1ekxtgqay33pe59l0nhmypkpzl395vcrjnxu80x" - }, - { - "private_key": "1a4ac313db2a50bb3263cb8ed1317f249949a6991b3c7892176a104ac1542d5d", - "address": "lax12x9nu3tx63s684a0req520xcsa3kvhrtkdlnyk" - }, - { - "private_key": "db4ac323511d781d61a8e48b90ce1cb1ca3b4189c3e63f22e0c558467e88c2f4", - "address": "lax1ewrnk9ff3gxfg3y3zk4td4hxpypm2aptffs85a" - }, - { - "private_key": "90d216d4e18b41b5ef288e686056a2017c0411578345d6907e39dbf620b77c62", - "address": "lax16yv0n6zcxyhjaexkds93ca0qqsnxl0q9q0rjdp" - }, - { - "private_key": "0798216ffaf134e33e91cfa4345e2733408c8fcd4d13b30e7807a49f83fda517", - "address": "lax1g9paltlcrtqrlhr8qtv7mgcaphjx4d3vrvhr4w" - }, - { - "private_key": "8c2ec1d8337d3e15f342a59603870702f4229ab9aa86ca9be3448974452269d3", - "address": "lax1p5w0w7dg25p6am47a4auncn73dxes9ew9vkq5p" - }, - { - "private_key": "9453f0ce21bfc75ee3d61d40d9a141c3a06d6df1ad71ac6e68bfea2256239aac", - "address": "lax16pts5s3yrrtwcjls789lv9pgesjhnjca0s6ztz" - }, - { - "private_key": "fa854b4cb5f7a65c6f1620181f79f92ae4e158ba7d1365a154c9f0d307ea346f", - "address": "lax1spa2zdcq6wprekwkd5u7v8p4xgklkpna29ly5y" - }, - { - "private_key": "e01ebb855ff7c804699fe7e41a93e55ec2d911b6846d8c32a5e58f0b3fce06af", - "address": "lax1pzm45m6xq6j70jn5vcf54suc7ehet5q2v2smdc" - }, - { - "private_key": "9c53e3a1c302af17c9b3cae38bfca7991eeab62564b143776ed055ced23c5213", - "address": "lax1sw5pvz90mdjjegdhc4049mgcmkmjvnntwv2fkh" - }, - { - "private_key": "9ada06e359ac2c257d9f0e340a503c3d60e83450d28a0a0d2e1e02b998212e54", - "address": "lax15549x6cfjnc2tehhl0rmtf345myesxgqwqfu3l" - }, - { - "private_key": "4beee6f0db7cc686937a84a2e85c9ed16a2cdd7ccb9868e39a997be7c04d3984", - "address": "lax1jyeu9uczwnqtqushnkp5wpxhk5fafxx39cxgln" - }, - { - "private_key": "f1e623660302f12e2b1e22ac61df9a5892ef77ec1df2b90c536214b392e011b7", - "address": "lax17v5mc8htnlucu3m6duj9aqxvuwx855949scc8f" - }, - { - "private_key": "7b71c8bf766bb05b0e304b1c684b612af14ec03f08b0f9cd19f2a35054910fc3", - "address": "lax1pf9pc3cayk9gvrv4urpg553qty0funv44cl0lt" - }, - { - "private_key": "771574d405d1916e2424459e94fd068602064aaa0155a5bf0a774a4ee02d7988", - "address": "lax1ja3g05em6d5ruclysvepze3hjwsmj3utg47gr6" - }, - { - "private_key": "6c966dac235bba0580a445b82fd01eedfba6c13d9077167c0e90903daeb02625", - "address": "lax10han88pv5s09syyptxj7c2ku2pxehkkyqwd69u" - }, - { - "private_key": "db89920addd5a0d72e06a9cdd15a8dd024705c7128a77b49936ee60c02c08fef", - "address": "lax14edezqukzh2269g26auttnf2qa5qyzd6nsycgl" - }, - { - "private_key": "fcbafcfb2a4b671951a094573f0acb8aec437650503ff03d2543b55803f7cd8e", - "address": "lax1r6t3qrdnf3xmfxvallad8vcn45c3gl73qx2xzj" - }, - { - "private_key": "d075560b046f9d504f1fb25d210eac1e0818495f4e03c7cbf63dc66ed5818e3d", - "address": "lax1djda2aacxx9wrxs4tahtdez8vzu0568x2zkz64" - }, - { - "private_key": "e17f3f0f8662a9fd9e1eda0bbf3948d9fecb128d416b4cbd684a861d15b4dbb3", - "address": "lax1raav99h5273q48skkvc9y2glvy4fs4kxhd5sn5" - }, - { - "private_key": "29915ecd02dcdfc08c7c759d54c42c8e8ae977976aa2af2557e09e71d5b74261", - "address": "lax1tzdlf6pt0j0ftraw000qf494lnj97ewhp3yy7u" - }, - { - "private_key": "f57f92da152430cfeb151693e5ea1e8f69a693a7dedebdfb2b35f127912d3242", - "address": "lax1yk7cxacmuyaf73ztf5fgsn77adpudljecrh04c" - }, - { - "private_key": "707f173a1f01a6d0615bcf6c4b832e2cfcd8e07713bb3639c6b335d16a1944b4", - "address": "lax17k0ttr4e8u0wxd583yjru9gt9ytc78ktg7090u" - }, - { - "private_key": "5f4b3cc187ab79e834853a60f704f7abddf008ce62b14c95e5ff0bc3360bc7ae", - "address": "lax1qtfxqsq4n02900yesh7d8rv669h0rfj8m6lzv0" - }, - { - "private_key": "26969d347e855c853bd01e4d2c52c03c87ab5ea231c868254293ca5ada1b3b62", - "address": "lax1qq5ugjx0vmec2nnh94axz8wzjq2z345tuvdj7t" - }, - { - "private_key": "caaa50737d46f764d9ba170c03e702c5828b0c04eb56f65fbbd8459474196a3b", - "address": "lax15dvx7d8737xtqrlrwsjadu80fwukutf4qlcddc" - }, - { - "private_key": "85f48eb98cfde0b1c194fc4222dcbd0c490ea9a64c7bdd440eb5131678db95fa", - "address": "lax12ntmc9kmmp84ylkfsdf6l9ygmjrptts3w3gnjk" - }, - { - "private_key": "86648fb64fad6d80c08747e07fef79b18d71b6e5b695e2be9fe5993cc9fba841", - "address": "lax144hyenwy70jpcxzyf7pjrt4y0a6hldefdu2j5e" - }, - { - "private_key": "2fcdc85fdcdb64451c0382c8cf861653193f4ca008fdfaba6fcb4438d6d7210d", - "address": "lax1hu6v6j8q3azp3kxn44cp33zn82p477wq4h4cc5" - }, - { - "private_key": "8c8176d49ff1327133c53b56c783e2c587ce1fbb993a0db8f090ba09641d0c1c", - "address": "lax1wyn5dfg6wckjjspjwx357dwsj62pxmff9lnf64" - }, - { - "private_key": "36ac68816d212419834a2b6b34a17b344f978cd5be98fe1a68b7a0f159d2fba8", - "address": "lax1fagf57xzefxsxssac0hz3ztxu3lhmulwfgkmnw" - }, - { - "private_key": "abab8ba9cff7750a65b7e077db3134d7558737ca3c235d845ff23e2957619591", - "address": "lax1uzvgfq5txjx303s5k4y94dhvep4cawf6ud0wt7" - }, - { - "private_key": "8365c5878303267ba9883e82f8069ca2a818d874de8a6ced45b17d57d9a80193", - "address": "lax15j0tf4usf83rkhqn5xfatt7ez7pe3dckyeks6e" - }, - { - "private_key": "f118a007cf50a706cc70f06a74b570e81072bf7c2b2a2d6fcb8f75d011e17446", - "address": "lax1nme0y7n0jwd2z980fslq6cux92p5f7du6zjcqe" - }, - { - "private_key": "e30e0f342233cc4371ac2707684d0f3f23cb9c4f1bbd1b7e8e3a08cf1eea7412", - "address": "lax1kesv4wc8vqxuvagdq4mvd3gzmksaydsxzn3j3m" - }, - { - "private_key": "e486ea717068a675f5d5072832f20cf044a82c5b60e250c361e58e37d5090090", - "address": "lax197pzaya9u2fynafmxxa77kx04cctkvwvvejf6h" - }, - { - "private_key": "bd8bc70efed5b20de26ba6af4ae336aacec11e04d7beaffeab2cad4b16c18a56", - "address": "lax14rfcrhqefyusne6ael0349ch36thajlxx78m6h" - }, - { - "private_key": "2a287987a724ed226b63bb26471cc4d364850ba653b2538d7fe81b76397fc81f", - "address": "lax18ncuf3njfn2p40p3gytmpuggw0vdj8jy4kzga7" - }, - { - "private_key": "3fd533f4b74f36b8d2b00001275d3e39712a9f53a608ca0317073864f7cba3ff", - "address": "lax1gm426xndt3yrpknpnk3fjda595vjlkn2jgrgza" - }, - { - "private_key": "24fb713333ccd86aafded40be6121ea7c35823af0200a7a15d6a0ab404bcdfd0", - "address": "lax12zdema86h3r424slf58qlevxyvtqvk892v86z0" - }, - { - "private_key": "2db10a517b3609fe31eb01cf519530456f16dde1c4f45201629c80770138b2fa", - "address": "lax1kj2e2f6qt2chg530p6yj2xw0nkxaec5lruq94t" - }, - { - "private_key": "14486c7f83af464dc736b2e27eedeb022fe598d646fb649884b907b5df0eb700", - "address": "lax1luupqqgpm2zqlu2j9u8fy0gutng053tnnt4tvv" - }, - { - "private_key": "bf1bb6e54122759b5ec0d287f8abb8a7cf2adc8ee1f9bd9477d487b8b30f9c89", - "address": "lax1734qrh27tavsdnxmxazag83j6xta60csy4alqr" - }, - { - "private_key": "0992a75f34290c37c796fdab3123583927e32c782be24cf8b0800a95e23fc2cc", - "address": "lax1kxa579y0ysrepujzdjv87mweshqq9jdgltyadc" - }, - { - "private_key": "d4647b128bb85e6f124cb24969f946b88da1e62d4eca7a18812a56f05aefc1a3", - "address": "lax15w4ptfz6qs36wmd3duysr40ey3mtuhs8hz9rke" - }, - { - "private_key": "a5ebd54d8d2a0842fd6cfe5aae90a99f3b3ece648544385cd70dba421a0cfcc4", - "address": "lax1lr0lmg38s4z2kc06t6tmpelxgudt9z55f4l0tq" - }, - { - "private_key": "f565537e8676c166ec774ea28d89be10f48db3ad34425ef566728e1b3ba94038", - "address": "lax1c7yq79ku34mfp6wt8779s3epm26dsdn89mnv0v" - }, - { - "private_key": "300e078d3b86135692b18eaf1ab7f3c5e0bb5e2cce364db18aec9e8e371ee47b", - "address": "lax1kad738u9mz2mfdq9mct7v9640yswxgmn57ejy0" - }, - { - "private_key": "1f5757fea7d5b631248b953116bdd977877cbd4bf283c5e2f79c77960ed599ae", - "address": "lax1nce7rra30pl9tnfk0ssrwhg9knvq69md8qcjj2" - }, - { - "private_key": "dbaad10b0ad865ce124f736c98eee485e9e108be2b90414d6048735f50169f35", - "address": "lax10wzk5zrsfxssf9zsdq5jvqztuvru82pwgrxxx2" - }, - { - "private_key": "de47dce8cc2256247d205701e58c6e0bdb72811ed68109d8ba4f1ecb8d9a75b3", - "address": "lax1dj4hvgjndr79jsctt93x529yjuxpqk5y5q4a4t" - }, - { - "private_key": "10a10e21aff65697a0a1e0d96860e0c6203610187a80c611c1fce3a3f3f4d374", - "address": "lax1la3ng3m2vwn9hphprwfgstkakekl8y9k8lew6p" - }, - { - "private_key": "7f1fa52ca9c2dd806d3f0368830a52744ebc51df542789fe3af7b99410e40cd4", - "address": "lax1wuxck4g2yp3ent4t9aycyxwdshyvyz8wgnksl0" - }, - { - "private_key": "298c157b1b991f7c10219f6ec1a14a6eb151446b86faf2ba8efdd8cd5c2197cf", - "address": "lax169kxy6k77fs9awyfvy9wy6kavwlz4jldahxd78" - }, - { - "private_key": "25f42f5e66461cf8c116b5e83ec11f2d11ca843fafa3731e3a67f53b8865dae2", - "address": "lax1lv2m7plv06quvtpyp9j72vhu6lgnmrlya0vlen" - }, - { - "private_key": "bb26c6d3957b96ef3291bd7ecd23c39127a31870d5852f2c6fd1a67616c71ae8", - "address": "lax1acurcl9fuca9mler5cfjdkpst5pzpq5253mu5v" - }, - { - "private_key": "2a8d73e4e84581acba089aceea45c757ef993e5620e8bdb431c170be03c36dcf", - "address": "lax16xqsn2ku0akywq9efp90xpqq6k07kua4rpjkmy" - }, - { - "private_key": "64c5ee6c8abe31f7deb882649796c97f6d8054a764ccabafff4957c14eeca7ba", - "address": "lax1ktwr89v7rjhtdeem0gf7qqzgd405hnwyr3dhg8" - }, - { - "private_key": "632e7c51771f33e8ca935f8726be5b350cca161b5a6a2e5eea1f8de03b3c6a40", - "address": "lax13gawc7p539awrgk3jvc6z4w475m9eu6kanrn5a" - }, - { - "private_key": "eb2247e7c8d9b0bc00bb9db734a7e13092dd062a5e46f9fb8c216184d4338874", - "address": "lax1fs65x8234he6w0jcds2pj94vzu7jwl6k27z07e" - }, - { - "private_key": "b5cb5e78c9feb90bd64bd62016d9e10e4d50ceeb6ae2fb5759ec3100f3297c29", - "address": "lax1rm5srg9enes8c7mpyp7mpj8t0p49avec9a0peg" - }, - { - "private_key": "602435304305e2a33797d186b6f8da120c6b1fb7e02dec164af0ac5834980b30", - "address": "lax1v4wr8wenhnuklg85vh68t8nmvj26xp0zqnd885" - }, - { - "private_key": "95dd01d742f5f853700f430ae6a4143da02a12f75f8b65414c54ccdb04a75551", - "address": "lax1klduqaj67g8pfd6kjes66kuu5a5umksuahppef" - }, - { - "private_key": "3467fae922b752ca839c5b25ecf0d03f38e0a5c97e8c53c072d3bce8abafd405", - "address": "lax18z92nterml4j22ctptnfhngusy3je79u43ggte" - }, - { - "private_key": "62005b7cf8a08a82413dc39174fe371fccb1ca1691789dfbcc6b69155e24fe91", - "address": "lax1z0g20nkjwj4h4cjvgs6t46jf75y2px3eeg5yjh" - }, - { - "private_key": "c3c22e65aa1a8f0daf73da26b76c3f09b96ca2dd2d16e359cd539d06491cf4af", - "address": "lax1s7rv23ytg2hwqvc6s8aulzwvxag2kvtmu0j3mf" - }, - { - "private_key": "02948794a4c56c9fc52737c7eba1cad66c3bb2e9858787f934d325c318f79480", - "address": "lax1psjd5ce5k8axwpyvkxrnhdy6fwj4m3um9yydet" - }, - { - "private_key": "b06d0f5fdca2dd9227936f24c239fd6b3b2100480c1f69a77a19f6260db5e1c6", - "address": "lax182hjjqzltj5j6zne5yrr2gzpptf9kg6hgd9hwe" - }, - { - "private_key": "16dc26a44491ab9e49387f9e6768071c247ef46c835ce85bc53e07fa8e93ca30", - "address": "lax1870l2e2peqlu48gesuyhy2ezndsjp5dfk3cty0" - }, - { - "private_key": "b39d2621f340bfe1dd1589a363ef5c0a2472f6015b3027aadc677dfed4563742", - "address": "lax1rtuj8hy4c3al55k4ggpdm0hqv8pamzpfx637q5" - }, - { - "private_key": "76d93e4c846b407cd2722b4a8e70a2d6b9c7df71463d0a445b1dd2d3e6768704", - "address": "lax1yxnhukwyq8ukqf7lll0snc3wj0gyyau8kqwxlc" - }, - { - "private_key": "a299884003fc65c93a4b45a162041b452124eb44fdf5a47fadb0b039f543683d", - "address": "lax16qatdamvyhj8m5k47ck92ccvmq77uqs3tqammy" - }, - { - "private_key": "b910cd75073bfeaf5bc4ce6626b5145f9b8b90775cedd8c291e23433d67ca222", - "address": "lax1p22qrcaf6ur3wx82khl2hj023m3y4yl029qhc5" - }, - { - "private_key": "a8b3cc2b802497b9385b237d2403771c911047d3b8dfb3ccba4e911111d41dbd", - "address": "lax1ck30t688379vrysz4m3qamzr4vsletf3lxq5yn" - }, - { - "private_key": "0fb7fde49d9f7932fb5d4e2bf76af9e2c13d98b08b2eef65cc6b7db7aff7a042", - "address": "lax1495u8ygr2rxltx6ff5lwk3rta277fz0a4hjqcd" - }, - { - "private_key": "e4c79b189599bbd5a1c373781bb009ff46ececdec69db8b2b9fcc18f93704451", - "address": "lax190dazr82rhvnevth552dweg37hjvzlh72jxhxj" - }, - { - "private_key": "bb4dec4ee56f7c16b7aa8ef74b0db632b616d8732931f5d6411cba30416c2dd2", - "address": "lax1hss6ywuspp92qhvenset24d54qx9y0nzplcfjg" - }, - { - "private_key": "094fd681e6e6abce8b442c591320ffcc81953a00f16bad7f7e014d47b7fd7018", - "address": "lax156jhyc68e725dr0alpsyax70wfs6gxggl0g4g6" - }, - { - "private_key": "33f8684c2b18685dcd152910e09ca1ec12604d164d1bc5b2f623507f792d54cc", - "address": "lax1venylqwuwmy7zpcrfneqyhejjassvehpjqtgs2" - }, - { - "private_key": "a6e3fcb6808a1190fedb25dea597b3e0c45c93e25d284d42e585cb0e0c13cb1c", - "address": "lax1qw8chdfakmum7r7ces79qqps4gwcwjhzgv7zvj" - }, - { - "private_key": "93a43739e66739f443655280b1fb74c78eca8b7d4047088d8ee139513886df93", - "address": "lax1wwt9c6nj5zkvtnk3fe5ajgu7w745rlce87qea9" - }, - { - "private_key": "24c33eb453d092e5866a2e9677e9b154f0a0203f2476cd3de24166da790aed79", - "address": "lax1v65qs3vq8jsywxhcrq3snq336h6t9fjpgtxvnw" - }, - { - "private_key": "ecd3b1a23d05518c032033c75082fc2d9d07567c9f7ce982f066c3582744c75d", - "address": "lax1q4szyeul0chh0cjvujtagz9jd58lzzxk65utlh" - }, - { - "private_key": "fecdea5241fe8dcdcb1eb95833a249a33c2ae4c6237584c39a7e657bacb19c67", - "address": "lax1w0f9ntpytac9ppp6cazjemddxx5utuj85uzsr0" - }, - { - "private_key": "74be581a60332212a6a0b312c26069770eaae59fa43d225f3c433868d3f434f7", - "address": "lax13wchyw4urhxf2lwe6nqyek8suyvlwdqnwn70mt" - }, - { - "private_key": "3fc1aade452183ba23f3e9c117fccbf81c8c7744c3d62b7dd22986703c23b618", - "address": "lax1mad7pgc6s2uww29hvrk9cer5z83748x3mktcdw" - }, - { - "private_key": "6e53bb162f33f1c7cc95dd0d70d2d346763ec8de60bf7137ff5e4ef05be9da18", - "address": "lax1g8ued8sm820vs98qnnskl3wju5yzx8dgd48jsh" - }, - { - "private_key": "1c0e0e61b6e0378041e3f7c10dc42049c35ea8aebea2ae4d26472447e03404dc", - "address": "lax1778f5gqt7f20xhpc3v9lhjdtwzwy8w60gvsyxe" - }, - { - "private_key": "cc8fd5db279337b4ebf2401492e9db3e96f387d982b7ac126bf61bfb1e15a311", - "address": "lax1zz6zys6c3gemllwwkhmmwekl8u5x64jfrhugzn" - }, - { - "private_key": "a4d9fc1f462f2dc23dbf06d63b111f123355ad292626e7df0c3e3e3e64d59dd3", - "address": "lax17u09kkw9pu2w4f4884mctnqpkh996jfq4rna0u" - }, - { - "private_key": "e7bfed6713955115b9ea552ae6f407d8eec48544700b1bfcb927687678728518", - "address": "lax1gx59wr6jx0lf86mqxrp6y5erqftdrvsq9uknwc" - }, - { - "private_key": "685ec8ecc1ba58fcebd8fb6647f2c89641f31ceabb6582a5569fe5360bf04f85", - "address": "lax1munf77r2qscz9vm0jlc34k52ulku7hdzzz3zus" - }, - { - "private_key": "f4ce217c579933d7c7b5dfd0e314ee725f9744f32cba980a345b610c4b42aa4c", - "address": "lax1wa2sh5a03a9wnqrzp4c53yjcapv7zjfsynctnw" - }, - { - "private_key": "f798aefe39eadd5480f387be5efe2413521d0dd41f7268a737f56988146c6fd6", - "address": "lax1akdyhdtn6m4p3lzgxudh6qgjtfa35ng64qwy2a" - }, - { - "private_key": "cdc65e74e244606a024856cbf31d13943e518277eb2decaed16ce1fa67c900c4", - "address": "lax1u6e7ypgeeg29mejyfcpmlmq0lth8n5sjcjv3hx" - }, - { - "private_key": "4b3626f4e15532c52a4990d523560ca21bdfc913664a4a9b9b834d8c6aebe74a", - "address": "lax1jhs2j250vczfmjesszuwqvvvmh56xhnue7ulm0" - }, - { - "private_key": "5b7e1ee26fc142b74fa43a92a4c8d64f0d15e9e979558e207bcf95e7ec29aa47", - "address": "lax1mzatyxhdk38sps3ujarts545qrm6dyutkw5n2e" - }, - { - "private_key": "50ca57ebbc25835ecdc46817b629bcbb2fc090285b694ec07744c2f45ebca1b2", - "address": "lax1z6p74cmz28tam8t79tcgq85mevfavp446wskvc" - }, - { - "private_key": "4c15016d19d2f2f08f0ba0fbe7a6bd7beaf272af9d712115604e55948e1ac5c1", - "address": "lax1rka7032qv9jl3gj6jxs8693twjjuuahsxly02g" - }, - { - "private_key": "e49bd2da269752905761185f9da9a0d98ccd863bdc25bd2e2a18623d7a345e06", - "address": "lax1a7vg5m3kdu9zrphfg8893n0jykt7pszfufpucs" - }, - { - "private_key": "db3855bb00717dc462829853f39f60e27d3b359a99ea5ae6f3f83e9bf607d8e3", - "address": "lax16ac46rfrk7mdtj5dkxgmftfsl6mfp9ndlhjpgy" - }, - { - "private_key": "d91d28f1e21cd0b7ceb8c8c4b455294ee5fa54463bc6b006b431fb4033f14a3b", - "address": "lax1ku5gcc6x9fp3k8dqcn799pjafygueem553cvfq" - }, - { - "private_key": "e7ba0335a0b08aef4853fac7232ffc7131d5a5d0f77d5bf3ed054c6b6c648423", - "address": "lax1a8ascw6dc5eem0s4r85tyey4ln86aqc7htjhdu" - }, - { - "private_key": "90740fe0cda0fbc5e6e7c0f369f267bdc552b57f94b09e3cd1217e6bd622f9be", - "address": "lax16pm5se40z2t3azmvpejf6hcnw7ahm03aq03r37" - }, - { - "private_key": "edbf8b86331294203151c70ea5e1af200f185980ea644e91aa83e04862b63091", - "address": "lax1l7a0p3xdan66zr3rl20t5yl37azj5jwxw6jn8q" - }, - { - "private_key": "2f1056143149aa0a13923036e66cb1f5ce4037e16a1dcdb2d334848eac8d91c2", - "address": "lax1xjvuv3thslvy49q79lx3fh6zyvnqn2sr24s30m" - }, - { - "private_key": "a0fb465ce33ab3408760f7187f9dcef4e0b4ab158267c33405bef76f46a6b939", - "address": "lax1yddejr840vc0059jy0pyc04u73e350yvae5szr" - }, - { - "private_key": "6d9535a7a5fa85ed6e995d5c7085bf5c2ff34560f91ccc88c1ac23359bdfaed0", - "address": "lax1s9ucplju87kaql6jr8dn5xtlgn44vm5el90u6h" - }, - { - "private_key": "c956d80528cd06a04ae46c304908c03de136399365057cb136092c01d6889dfc", - "address": "lax12z9a4qjcmcmt2zert3sz5h7g4d4jp2xua2e9sm" - }, - { - "private_key": "c565fdf4a64aa02863e8f80ea431444fe21a15f1831cf6421ee5394d73bf1618", - "address": "lax1cfmnc9zykwa85y8d20gu3wp92anx0ucegt3lgt" - }, - { - "private_key": "dc27947ab7e8df1d28b406101b57b78606e4c47a0f960c18d40336a5f244f647", - "address": "lax1zplf0uwqe3uhrk950mvnjmm3c9sz6sju02ckqn" - }, - { - "private_key": "a3af1942bf6c949b687605822dbdcbb865496562b6347c40bc8ee69734bc1217", - "address": "lax13jnc29h7glu0ks4pr0lynp4lfuaxq2u7xfesdj" - }, - { - "private_key": "3ebac85057ca33a3742dd5e032853111310be37ad3610cc420f60907c589d6de", - "address": "lax10uhw7wwhqxfsx7zjgued23dx2r8y99hc5lxqau" - }, - { - "private_key": "db0b3c19f82790382933dbd7cae2b9eb8f784c30317b714c37d81572ccdf1bb3", - "address": "lax1uek5fcsdasdgzwxyr0rl4fg957hsmpeay2xvjs" - }, - { - "private_key": "673dbf6a18b824eee4998b0975af8688eb089f2d89ce5ef741d0150640c04ac0", - "address": "lax1a4mhajzecxn4aeumz6ddpc0zrrzw6acuc2fx4c" - }, - { - "private_key": "7c2170ff21bcbbeca1e13d8d32072c51564b952bb89ec72b45fe0d367bf9b34f", - "address": "lax1g6ac4y2jsjjmt6vn9mu6jas6060dltnj2urcej" - }, - { - "private_key": "9f12eb433b2be9a855d29bf605503477c2d37440451c8ae3cd465f0e4b684fe6", - "address": "lax18vutstqgdzp89x3qex0jugypldrwpukceka3hj" - }, - { - "private_key": "dbdaca6ec6d57de5060775493df3d56f20eda118c4916ee9ce58592d5e76d889", - "address": "lax14dsl6dglftepurjl70u22zaqqtnpgnmsn5qdsf" - }, - { - "private_key": "6c7ab0998de622d19a027bd84b6552551ea3e977990c8741468ac6bdd6200d13", - "address": "lax1lf75ht2c5tszlym6kx3qk9dp0erlmewnjxph3n" - }, - { - "private_key": "7be37ba2fb73017e0076822c14e3817ef48a6bed0062d2e3e21de1c2f1a2ea77", - "address": "lax166tsvq5e42tp8lf80j48d0z9u040nyr66tdjje" - }, - { - "private_key": "b937d93dcef244be64b031e1398780006c0c64255415609b78fda94221fb7398", - "address": "lax1pwq0hff52d2uwfxe65xex0jlee3tarndc5yrfd" - }, - { - "private_key": "331eda18b78113b622d758c0ffd121c0336cfcba6fec8638dfeef2aae63f72e1", - "address": "lax1pvkf2mc5h3jwqyvn37z76sxnkrmvgswaqhutku" - }, - { - "private_key": "8b016f889b428e10444e87667bbaa9865849234d1520fbd9e9e16c1ceb5dfb7b", - "address": "lax13q3ud7dxj7lwhhcgwgzgras33w32admg9yw0t9" - }, - { - "private_key": "936cdd20465a57b479f378e5be20b471cd8896694e89c127edc242568c370c0c", - "address": "lax159cyx0dk8l00mnvfml8n6675pf3kgcl9r844xk" - }, - { - "private_key": "aa022e081c5e2bb084bea7922ce96768147434db9b3080cc4013430d34c45a0b", - "address": "lax1wncrfu6qvyq520h4v35rzk4grt9q8nmwty586j" - }, - { - "private_key": "524adc11e6f896994bdbdc94f87fc02a7b217d531c820ef2a53681a96218fca3", - "address": "lax1mnv9w744rj4w69qkecm44ulnmxanstyayapjnd" - }, - { - "private_key": "bf5dd9e52cab32e72ee0d09be522a5354307f149343785571c3d35cfafb91ef5", - "address": "lax1jnzqvsh5c47zxyjq02t5lf6fe746djglgdkcrx" - }, - { - "private_key": "7886565391fbca378d7e5f33f7e74391480d2d4b847d94cd7e43faa3ec373169", - "address": "lax1d2ax8awyp72w3sw5mdtvgvf9ygjut3pndg3k04" - }, - { - "private_key": "509f2ac4e22976ee4fa0975bc7f8b711295896d19fbd789d313f8de8038f390e", - "address": "lax1ldq7lx42076xzhewutq2haa3gyy5lpmqz900jq" - }, - { - "private_key": "717508860a6db6b9f1e6bb1e0308b17bf4dcf8ebac5c9ff89c03025e6f2ecda3", - "address": "lax1acr9dck3anjf6nrwzmtrv2v5ezmgl6dal05l98" - }, - { - "private_key": "c34b8ee9ee9b46c4ec400fccdff87a1120e507a76b2f42eadd7143c2592fe43b", - "address": "lax1j7uquufj2k9eu8k9dw0zae7hqa44gv4ahenfwu" - }, - { - "private_key": "1b53a67231d7f402ace9b69292fe8c09aab36fce800eedb94db59e1bd050373a", - "address": "lax1e4ppvgktty32ck8z37ux7fmf6hht63c4as6mug" - }, - { - "private_key": "d71868b4a5afef280a9589add03299b22e180a48b7196b381b5791dd1f5fa507", - "address": "lax166mjncheqs5u47ff5vjnt5zal0dj9sym4q3cem" - }, - { - "private_key": "02bcee513ca8b6e4f81dec872dd7dc6bac3a238131c4f04d8083bb759edd5496", - "address": "lax13zspxdfqxjew309ut20ryjuy0w4rx2qj2caa6d" - }, - { - "private_key": "3fac30b4c9f9079085a47bf0f7a06039baf41a6c22855207c8eec9eb018ccc8e", - "address": "lax1v27h85e3za3c77q3v7055taex2c9r6lsmy83kd" - }, - { - "private_key": "2b931e6a4f373b7b54a6ea659819cc1c5048a08695d75b0e4274159b1667f9ef", - "address": "lax1r9s0qulng9ljckttvhmaxanplxhlv3mx502kqp" - }, - { - "private_key": "ef9f7f285a61e9665b10875d6e3ced4f42e1ee146c0bb36fd15af78c7d5955eb", - "address": "lax1r5gwq437vlljh6flsugtyn0j94hl8sfxy6pyan" - }, - { - "private_key": "da6b363c94d16321f9744a8c4f596cf21e556fbb958d0b2a41bb931717f40d4a", - "address": "lax1w7vvndeee55rsx5ncl5ndyt6cmyu8pkxucjc4f" - }, - { - "private_key": "9aaf19fc49df8dca5a2cccadd6a0af40f315f2845311971aa1e2faf304029656", - "address": "lax18j2m73up5xryw4fts8f8n743u56kzwx6xquxv6" - }, - { - "private_key": "9c9b52a5fb104a4d4de3f1703436344d1d5f70f53af3e36f1e7e6aced870ff4f", - "address": "lax138j0gv9khxen9ps8203vjh4lz2ck0rg20trsug" - }, - { - "private_key": "236f3000f9d66e5a3abb810eac67d5c7fb4055b62a26c9f64baaa8bf4b250dc5", - "address": "lax14gnvvd76gy5t2g3vdst8ymdat7lurc9chr3h2e" - }, - { - "private_key": "688497e53eddd9042140e04d4c1e911f47001197ba30883d30d89854cba53cb7", - "address": "lax1ac0jh24rcwj4u7yjx6064av6227ag98crz46gz" - }, - { - "private_key": "0d0467bb2598f4ec3657d63da7e1ff63be3b9757ac6bdd0c1f1269e647a363f4", - "address": "lax1uuulc9s8lv2mcs7cvaj4p5fx3gdwuwgagrpakt" - }, - { - "private_key": "54615e0283f6d0d68951e791cb6c5effe836f25b3c64626f0dd08a68c4d00471", - "address": "lax1at7qzur3vduwpf2chnmx8h5v5tvxfynu4czf89" - }, - { - "private_key": "07f12c70f0b7436126ee412dfc659c2bf655c85481a3b00b69545d7408cfb190", - "address": "lax1r4ua3tq72rxg9zgpdut89esum5ju5u2lav339t" - }, - { - "private_key": "c253888587ca7cc0e169a304fe6d2894bc0e42d0d5b5f58d67a5f0bc133151ee", - "address": "lax1m3t6wqt2ykkh93k89gz2xxplcvs36c2a9zmker" - }, - { - "private_key": "5e2bafa561eaa14c0458fc34223cebfefa7f5d883fbf815fc225d8a78cc9782c", - "address": "lax1q2layurmt86n5l5wlvweq0axz782j8343zcyyx" - }, - { - "private_key": "69b44e72c5439f27e98a44601877a40997a2e63d75487f18f4311168160a1d0b", - "address": "lax13pdjm34y22ucg0270t6fxq4xvrmfcutzxl8c93" - }, - { - "private_key": "c2c92afa66885dec32cdb3de0cd2b7653ee1af1c8ab0d720bebe8f80b92d653b", - "address": "lax158smn20fyfrzdw0h6efg4jpjdkdpk92tnqg4vc" - }, - { - "private_key": "9beb476d8d904a5d188d74896fccaef0e0a62a67fef9af4c2327e82568910532", - "address": "lax1jmud4p55u98qnw3yjpds2k00y4c87p7kef0jg6" - }, - { - "private_key": "58068f06fd50a79560cc06174239c8c10767864b696e0d7c8a0aed50a77516b8", - "address": "lax1wq84g05jucpgad3lq8zlf05wpzqu0pxmxw70k8" - }, - { - "private_key": "24477bcc0416b0d78e285cd98628ed3ec4974f054b953ed3dbc6ae93d0092d09", - "address": "lax1mr7lzwh6mmpun82vmqfe2ckf6ycsj4tq4l476m" - }, - { - "private_key": "5939c0961c63214d35bde384bd1e5f964ff3b9a52b560bd97abcb6ec002cf31c", - "address": "lax1puhna4v9fpjh29l9my2k6wfkjcm7y9hc7fq93a" - }, - { - "private_key": "6409cb33559586f38e78cc1a2a9e485b1c6668edf5ea74b5f45c87dd20c13eaf", - "address": "lax1atrpdwdl2z5rlue3gx88v0xhkj7xnjrtnnad9j" - }, - { - "private_key": "d494a78b81851b2130b69eea8b2f162380bd6cbf6f240b140ab523a9ac472dcd", - "address": "lax18w5q7pek9t8uwn3zv9jsfpugqakhekuwnee9h8" - }, - { - "private_key": "64fc63a4fbe41a1c58f6ff6cb370a5618201f56f8367d400b2baa29a94c27c9d", - "address": "lax1p890jvt2jerxamnjahh9ycysz39pyeg5mfejsh" - }, - { - "private_key": "f0878c3f52dcd1efd5fb1878b63a52edc33dd2a1c7fcbbc5b802cd38b35af88e", - "address": "lax1amdlaazv55p4qmanr3tasezv224s64ft6dv5ec" - }, - { - "private_key": "b2bd6d8a8bb1ae2b9a67bd38cb3d6bf33952ea657883550417cff34b6f14aee9", - "address": "lax1wxyldpq3rav6w30uylxal7tqrcy97f9pw5nzru" - }, - { - "private_key": "f8d0d02b4af8004f929e4b72dda0ce1fa1ec9325bb4cba7e938c944df53ed664", - "address": "lax1rxjnjk2pmzumfc6gm9dpxkvrrucjv973guqw2v" - }, - { - "private_key": "d1f7f2535aa28190411697eed2bed0752289d9c9b6c5ee312c730b701891c119", - "address": "lax1p788vmmuszua34afhgkvyuu0p56wfdlxvu9yp8" - }, - { - "private_key": "c95ce2bba4ea8bbdc30a59f28d7b9fcec1698dddb0258b22337a82b345f6b2a9", - "address": "lax1gxxd96l749tztn7q2kkc82lrrvqcqcxhmmc07p" - }, - { - "private_key": "655c5873ad4f668fa3246e21844395972fe5ebb77528c4c9276a1675c98d882e", - "address": "lax1qdeuafwjqxh00pgjzvzaxm0tue97qkpyufmvm8" - }, - { - "private_key": "9a341772a586afe183e301f7820b94eee4918b4337cef38393bd35f73f1c731d", - "address": "lax1dec9vjdcdfdj2m42aqyynqp5w54cxva20ufwge" - }, - { - "private_key": "805271012577319c8389feecbc24ddf3111864c5a0be0e5c1b3f4804b3b38cb0", - "address": "lax1qd25wl2qjnc6wygyecy9y8ccyf6cc309r2a6md" - }, - { - "private_key": "19b1f2e9d3f9d567a0a9f901569c0ebba8dbbce925a1bac5d87b3ea4ed8f341e", - "address": "lax17cflqv6f88tjkwxgnk0mqu2j8z6cyvcxw5876p" - }, - { - "private_key": "01956c396458bb5051b57a620989b1100bef98c9d1f2beed7490fde2681c1d88", - "address": "lax1kfeyc0nmn4mam82ypw04el2nlzvm30ngxvu6fg" - }, - { - "private_key": "2e771664854dde6f34f9c6bbe977ab3ca0a5d6cd6d283f65cea48a6fcc5e317d", - "address": "lax1chp9j7y2vakes59pwwnuehrn5guj53umksxmy4" - }, - { - "private_key": "c6bebe2cc744ddb89a9a8149c90b6998f6d8a06b726ea24463ee26c2cf4c789d", - "address": "lax1ejdh836nsgly272auxdmwq9xrtrvznttcaq4vf" - }, - { - "private_key": "1560e7a85798b53d388577bbb324161cffe040a427e8e59c0daceea82b6193f4", - "address": "lax1r3rpj0leh85mknznt06pev5rhzh82akpld4um4" - }, - { - "private_key": "96646fb3c6ae936c98b3688ab6bcf30718562648de673b8e742b0163509fc4d3", - "address": "lax17ld2feuefmaegp4cxsms2e9k9mhag3kacxy7e3" - }, - { - "private_key": "eae11109a4a6b9bc8ffe9ab4f5f6ed585f503bfe999ecc56a01b025c5f41042f", - "address": "lax1mjepjg7y9ldmjrknmeq0dketzvpnfap4w02hnu" - }, - { - "private_key": "020010956acbac126b6e7b05d2ba96f7bc8b08949aef1525c1cdec3e34f4ba26", - "address": "lax1vs6xeku2uqgnmag9vnneqehs3kkyp6gsqu9808" - }, - { - "private_key": "5e374be8be5633447eb0207692ce6628f299fbd6fd202471610d735560207bb2", - "address": "lax10hw0ky3c7tpv6p7xf7wswurl2ewn9jl9yh037f" - }, - { - "private_key": "1de4bb1f991fd578c9ca4ae90b598e8a5ace24ac03303c092acb469006e67567", - "address": "lax1hsug4cfaeuxddlymhqpr7nk4dtz80fu8t3chds" - }, - { - "private_key": "c1dd33bc619e14c0053becb3b76bb96abe8e923a8fd9b6c764be022ca2372da3", - "address": "lax1vkndngr0ljju7h2xwwvhryrz023444fjvpm87y" - }, - { - "private_key": "77049ea241bd11cce0c8439d43bf9d20ca4c6da8762829e5b0018a43a59243e0", - "address": "lax1vxslt65sacuz88meapssngnylndma6t93yzzmm" - }, - { - "private_key": "9edb10d90dc9350e1ba657b5dae0c7d8bff62f4e90fbc9bf8b3f661713652359", - "address": "lax16qp4djl3gnwkyuduclmj3d5lm0xpdd3xc3f6xr" - }, - { - "private_key": "651eb08ef982b0305ac000ad10bc89560901e1f8fa719f1297e29c33788d8927", - "address": "lax18atuq000xdr2nzq5lqh4jrfkwmktda87ckv9fh" - }, - { - "private_key": "ab82c8b2dde6a3c6167f41b50f8e8a39af60739a2746c076c874d6acb7cf7844", - "address": "lax1wr3c2ynsgw2f07vey669nw5ftrwec9ct00s765" - }, - { - "private_key": "e520cb80e6957ca0574fce0827c34dff541198f1c5c3cd9e5d9695b6e6577612", - "address": "lax1rsht2mczfm9gxgj4pysgw94r9dezh2a4jzce4c" - }, - { - "private_key": "0ef29be912d9731433b7bd57ce5361079e50e87ca49fda3bbe8b795d8885fa75", - "address": "lax16fewckcqp3lk254nv6ypue7n044tjkn7g709ee" - }, - { - "private_key": "0dc72daa3a591bf0d5dc1b8ad68158a1f94e4856a37edbdf413f65ae3b9327be", - "address": "lax1cng220fdfxx5vmv8wc68r2npl7r86f4vfnd7f0" - }, - { - "private_key": "11f389d0b4470e43caf5f1b330c4d274f8dab706214fb0c0b23f26bbe9b7580e", - "address": "lax1e50z2jjtrsas3uw5spzn9eyalfagw7hea9jdng" - }, - { - "private_key": "57a375c70e52253e9b8559a142b703fd719960d745e3dd42ddc90f3db1678325", - "address": "lax1nj7dhuvyypwt9gsdl8t7e2cvchadyaew9vsjhd" - }, - { - "private_key": "7e4867b66715f89b2643bc52512a66c1a83799dffb5e9339552459d3d78babee", - "address": "lax1tq05k8z977je9vy97vmn5w6typnhle98fl6p7s" - }, - { - "private_key": "f22b8ad25002a635daf1589488b80ee7c2f8f9c42cfaa16f49c4683726118f1e", - "address": "lax1r7s5w4wfhjvxc47vf92xxul3wxnxve4qv6xzv7" - }, - { - "private_key": "7c956d0acbad27902597cc118a00e22a1aa15311bb2517bbf45c6f4d41610666", - "address": "lax1ey9u0tzcvs3jkjxm33adgme62srgpvr24e8fgw" - }, - { - "private_key": "afa59c9805f6fb7175b8fc187f15c53fb9a736ee62c920de7b8769e51301639e", - "address": "lax1f7dpx8s35gr4t5xhtu2s3w6w980m44ut6jgckx" - }, - { - "private_key": "7015cec7f39b8758f628609a2f91a57c20788d2d89f0d985560158c8259e2de3", - "address": "lax1fvw759064h0emyg7s5kv0tdnvvlk0ksya4g897" - }, - { - "private_key": "fe6df3954674b2dada07fbd538c90b383a87d62d059286e9a64fc7c9b5c49010", - "address": "lax1yd6lua6jmr3z39nuacrkh7n6nwqg02tkxe068w" - }, - { - "private_key": "142599acca44c9de3b655f1b14a72c11eca6455ffe836093cc53c8c5efe50fa3", - "address": "lax19kpzz9ltqyhz3x2upmvaa4adfl38qk45jerjdd" - }, - { - "private_key": "c3b859d090eb0c9e70e3e15fea34f1049bc6cfde60755f5935a5152d5ad6b3e5", - "address": "lax1htc2gyhal3d9m30npgnh7ryrvzz6m50amhwjmq" - }, - { - "private_key": "55c9ba0dffa6772323c9ccf9e3c27dd8cece1d3366b40b1cdbdc714287d8e547", - "address": "lax1pd5evqnmrlle94z47eyclpd632q3p54umdn82d" - }, - { - "private_key": "bec28ec6940f3f372906354da6e42d5b79f8f0cd4f0e54bd287dc1d1906d6662", - "address": "lax140gpv90r0dsdd2jsrsnztxedtu90vqpzl5amhj" - }, - { - "private_key": "f025b4a3a0a05f8936e42df11f59a1f7c5147a02032dbb6467d02f80cdc51477", - "address": "lax1sgyhfuez9cm33u3fchhpjtyt93fdfdednl524j" - }, - { - "private_key": "8dda1c821c0f197481be877ebffc880d73ae96a4a359c021c10dfc432819850f", - "address": "lax12cdhhpar03kqzzxlzx3mgmwzvk58z5m04xuf4l" - }, - { - "private_key": "780e00c2a2cb6badfb10ce01679d471a1e88446cbc7a1d774f5265e8d3b2ed5b", - "address": "lax170nlck58jfx9vy6mwn5pkk8y395w4dg5gc4nsv" - }, - { - "private_key": "7e0c9c26780b70a8dbf0f56aa54094991d59fbea7e7e727103436aa7e5c0823c", - "address": "lax19h4frjvlqlrnsk9yw96mldda634qlad3n09jtl" - }, - { - "private_key": "db2dce244d8870e874b02dd937823a566e30c26c2985fb24ba884a370f3c177f", - "address": "lax1he24qctrj7gmvh9dvzkt20hhj9jkvy8j57ap45" - }, - { - "private_key": "a96c648c86bb94b8d6710c99c126b76fe3b78fd2f80cc7da0ac9f3a94dbbe782", - "address": "lax1uwkhzd7kdyc9gvl7daca29f7lg8qx349wecg4r" - }, - { - "private_key": "8e1ee479ce51a7cc074ba0bb3865af669a0ddb6391b03c59007c67a161e85f93", - "address": "lax17tlgf4prch8w8wn0vu6g06n0zwkyjrshkxm0hr" - }, - { - "private_key": "176bea353cff7ffe848fb6e4e236798eb757eafcd5509185d623680d99717fc4", - "address": "lax13yqslkfhgn4xqunqtaj5dmulxtap0cmqt54skl" - }, - { - "private_key": "fbbdbaadec5cb359cc9b1b92a58bd374ce4f9a06a51a73e15ed116ccbf2a617e", - "address": "lax1l7844ukh5cuxkqvy3h56srd6ugu3e302dgyy0n" - }, - { - "private_key": "6b8952507e2cbd7c95e5ee3a7ef497560f54529fad77ab7c14faabc3d20aff4d", - "address": "lax1tlnlf3n2w52z08ycz4v26tsmtymztu93r0a4mm" - }, - { - "private_key": "04af275cf472a2c9470d92577fde496b48aea3b266ef4b7162172254ee9a220a", - "address": "lax13d57347m2xftvtq2fyyclwf7klc6veg47tk6p0" - }, - { - "private_key": "cd9d59e62e238581a9d46f6d3942692756dfdeb37858d30fd924b11755d5faea", - "address": "lax13ftqpktmh30f7ql4ycvzf2qvp9clmlg022xawp" - }, - { - "private_key": "1a5afcafe2dca3d7dbdca55022e6ac5a0bc1bbb08d97f263f111b1f447ed92ce", - "address": "lax17u4h93q2k3g684j56twtdt5kx5708q32e6xchr" - }, - { - "private_key": "d2c4b483d06426fd6783fd29239dbfbdf19b0faefe2faf0b6e4a15f74bce6dfd", - "address": "lax16hz58rdq7awws8lqln3tryyq89s8ljqh6n0n7f" - }, - { - "private_key": "8f5b0172dde0675102de60a574dcd677003fa7771f03d5e695d440094bc96479", - "address": "lax1kmmlj276jt3fgrcxdujy8murp3f3508tr94dts" - }, - { - "private_key": "d82fb15840f39c6d17b0f37cf9c55647e44b8d5d018f2da80bf78d2d7973f83e", - "address": "lax14pgv0qp60lfgp7hfrhw38rufr3r8q0gdy5v20k" - }, - { - "private_key": "6e1eaf85a52e1b51e6c79e3bbf7f06ed49b9752776eb9902ac0d1e12729d6c71", - "address": "lax1q4jyt2dwzahj4xnlzlej3z53cy5j4ykv9l44gr" - }, - { - "private_key": "de4646779bc5fac8ae8391f2d4303a8fdf88e93c4a21bc22125169f1cacb0aba", - "address": "lax1zp4az00ra9ffpw9z75vxjcg8plv9yuw2cxa89h" - }, - { - "private_key": "e6318682408e1303cb916422a9692d4979f997f0db38ec187ae0bdc88748d158", - "address": "lax184c97mk6xnxa8xt53wxgnt8fs657r3wjunpsrs" - }, - { - "private_key": "1d1ce0df22ad756382db48bf917de851607039d3bb1fbc4b756683a6f7bc2a0c", - "address": "lax18hxhpxul7dv4qzq9h258v4re9yagf8k3uc2h0a" - }, - { - "private_key": "4ca6c516602f58e3e0954eb9438b4a13c4499951db3ef99f358808877ceb811d", - "address": "lax14tfq9waruedphqsn4hpku5ruzpaapa8f3gxept" - }, - { - "private_key": "faf7363c5475374b34559512adc0fe6a48f4891ae59cd9a68c120faff333da80", - "address": "lax1vk8s3sxh5ec8zypv8kuv7e7ccaagq3ztydpk4y" - }, - { - "private_key": "ad909433b7b72c8c6864902d27cf5f82592b0a1d9f00d1287c1c1d8bbbf45ea8", - "address": "lax1nr2yu3kmmjpvw9lew52379j943aa9zscltl63h" - }, - { - "private_key": "34785e660e1a7d1c8eeacdd72afd4ad1a6a5efba7b3c45bd49fa5a72105b4603", - "address": "lax1rkmef2nz03ygpum39apqq3ujug3ajhxu5tjrf0" - }, - { - "private_key": "d0f7872b92987e462226b186f5a6f5ebc1cafa24559d5654e1c003e48b7dc637", - "address": "lax1vt47py4qk0nt3jffyccfmfsq2nw2rrudexmvsp" - }, - { - "private_key": "9e6110ce936068d052dbe4a4f232bbd8707b72ddbeeb37e55a107baea3e5d16c", - "address": "lax1dczhwf53v8n5euqva9k0fskkkvuvx8qgmntkzv" - }, - { - "private_key": "2ea5ac2cb922f870a27d29d311b4753fb79e78ac7a1c555faf8936be73b2cbdc", - "address": "lax1kv995muc868zf6ey2ckj8ts7ce0gha3urnmx75" - }, - { - "private_key": "08f3092bed46563292785db69a171cd25176ce9167da4513e51626c2039f7c69", - "address": "lax10j5j4lwmvygfrtc6jqe8vg3mfzhwnzfyq2svmm" - }, - { - "private_key": "98e8bd5dae11e8deeae02556400f20ee7ec7f2756701f3c73f197c61e8d98ed8", - "address": "lax1l5n2r42age0248qnc94le0ntpcwn5guavdq4x4" - }, - { - "private_key": "8f6ca750a09b71c3ca5acd5f6fe2c7b744064a3d92c41f6546b76831d112e4eb", - "address": "lax1vkqw6s3ge876wsf0jhc70ge6rtl4j6vmlswmgt" - }, - { - "private_key": "d6cd868de5a767979454f6d2182020d99564e0bed4325ddb7f173910887176e9", - "address": "lax1usxed88gwn3vf678fq7vd0p5kf75sf7uqpm5fg" - }, - { - "private_key": "0331ac2678e3bc3799a7a4c577d9517765f2db6394bea262348f452741cdbb3f", - "address": "lax1cgl33wh5yn6cm47wzm4rc2dck2jhq7x0wc68n6" - }, - { - "private_key": "9764fed35cee17b85f069d733eb48595f608e8013ea45b6ecd14d91098853dde", - "address": "lax14dv59kqgh9a2x05ngwcrfqdql8kuhkn4ljv4eg" - }, - { - "private_key": "a1cb80f661d35071b022e40a6230699fab838b0cb5ecce2e8cccf0a185077291", - "address": "lax1dyvvfgv3aeyjem0wtley6kwzcs9w8y5mvlh92c" - }, - { - "private_key": "08cc970428d2980fad42d01076bc71e789c7c49e2db1006cb95940920872e249", - "address": "lax1utvg3y42nd45tndjr6k6sw9kehc32ag43pcqy0" - }, - { - "private_key": "71537039076e2259ea35f29ee024e502020a5fbda09fbe4cca31894da82597c5", - "address": "lax1dwsx2gfq9slmsefxctas0m3gn28yrvgmfx7ff6" - }, - { - "private_key": "a5b69f599eb0109a630ad3f115f50be838c7fca12b3c7bd80a50539a1509b432", - "address": "lax18nujll6cgcpxk7t8t26zk78exh8k8m8uz47xlm" - }, - { - "private_key": "cae3a4cb710bdf52aee2087e7d761ed47f84bf3b64519664ba0735c2caa375b6", - "address": "lax15sp4ge6enpyycy3eje7jdw0clxcm03ugfzgdka" - }, - { - "private_key": "dc2868480ea8dddd6ee872f0266e3ed6c6ea72a51744ac0b85fcc0e53afba0fc", - "address": "lax1r3es9utq9waneeu57lvg4dqthfwfphwrj5cdn8" - }, - { - "private_key": "af495302c59531761043665aca2ef37ef5b31b2773a14be2c5206c2f3b518344", - "address": "lax1tg70pt78nq5ynjal8lvgn43h8jdmn3ueyrp48z" - }, - { - "private_key": "5a688d907948a1180f6cb4b9a62911f0a28010294d1b658ae877a6a6dc3c8ff6", - "address": "lax1qz6yy8jcd8s42u74lsv8hwyz0p6hpkqxprmas7" - }, - { - "private_key": "db58be6895558ed13910ce1aa4b6cf22cf7571a7eae0505da3b285eb9660f62d", - "address": "lax16vp03w0pz8x3y6n5jdgxqn0xg79fljngshupuc" - }, - { - "private_key": "81c4d1c1a60d445185e1ffdec22a5f078d1eeaf237075c0039fa3ca69f645887", - "address": "lax1pgk0hhfal0zeg3en0encenuz26yrqldqcg8n68" - }, - { - "private_key": "e3d7b6c225fa442cc30c2967854b812ff688eb6c9f24b4024123431552957d13", - "address": "lax180rl43tzh68ddfq7nqylwshaha3g6qwa4ehxah" - }, - { - "private_key": "3765a83c1e4f5a294f09b04c8155e3fe0aec7ae0f9abae872fd4b87dada52c0e", - "address": "lax1c6fe36kmlqhw4x04pwzk34ds0k9t6t26qfjapu" - }, - { - "private_key": "2d7f317569c746bd015c38d0a40e02b7353b73b74a05f759c565293a2ebc32f8", - "address": "lax10vm76kndc0xp50x8krpzzcu6zvyey4879e2x0m" - }, - { - "private_key": "29c243f08c376c823c6b13f2d08d240ae51b6fb2db7e90fa6416951d4432053e", - "address": "lax1z0k2n400tdf4uv7mv5v6eq0w0jjcmz2qqnm6nq" - }, - { - "private_key": "3c5761ae9f2f751a3339c7ddb2305ba6c2aefc7513b8b6fd66721fb974ef54a6", - "address": "lax1wx2yu43s4mqrclpfksmym3tkhwn0d3tt5n3vav" - }, - { - "private_key": "28fff737a2ad3af71cd74b8e773377419c2a143a2e50bce5a9e1719a8b822801", - "address": "lax1clf3w9delacskdw2q6suvs7y9lfp8hyglp80fn" - }, - { - "private_key": "d48a160f98de55008f47d5ef6f113368dbc96386c90119ec09eaa764595f9a41", - "address": "lax1jppnehenkg3vqdqky2drwcc5ann5u7yckajd4m" - }, - { - "private_key": "792458456dabd988e45a8745ca1c864a3bd2e0add48000fb971e2fdb2a1c3016", - "address": "lax186cxp0sk7g4gnsfex4axrxvsuc0jrd46vpgcwy" - }, - { - "private_key": "48468f6ef8981c44184116b6992db530651bac33cdc457c077e66a7696cdb60c", - "address": "lax1x87qjhgaal2hcykk0yqrmzw35c55zf3dmdaj69" - }, - { - "private_key": "1536b4a19d821a86ff1229094eb5e0276e67df5c19a69281e86fc4f7a3ff8eb5", - "address": "lax1l77lgd2acyj6cfv075v60qatrdtq9nnuz6r2v6" - }, - { - "private_key": "34c461e16ce63caca66329e853903d331aabab9c7ce977e4ae7781f14c71a15c", - "address": "lax1qkp29f7vlsmeglnxq75c9tlktz02x3a2uv2s3c" - }, - { - "private_key": "835d2ce6df8eb28ddeb2f43b577f4d5291e050ae1a8891e5e0ac1235a68cdee5", - "address": "lax1fhh5j3hsvg7fgh2e4266km8sw0pggwj9jzpamz" - }, - { - "private_key": "885c9d92cd9d3e384e0ade58b9c5060f9d49661d50a7e4a98f4d4ab8329b13a6", - "address": "lax1tu526jx8tuu9fh4g80r5n37d8tz0eh260jdfg7" - }, - { - "private_key": "f6c709c8f9c8b868b7998541dc1fc798865112f793aedcdda31be06ae13e3c9f", - "address": "lax1c479wf7exfllju865rk42z9nl97mph5gnuutdu" - }, - { - "private_key": "52d0e9fd8f08fad13102d735771afae021bb8bd39f29b4b7e7356a1ab35da323", - "address": "lax1j6608xtv8dah8je797qdsal90dcepr5najg25n" - }, - { - "private_key": "e3fe23e34b01b3a1e04a25817a048314cc6e3dab8c1f114194d97861f330a139", - "address": "lax1x3cznf80sgsn8yq99v0ezzhzm0acgh5knjnq5w" - }, - { - "private_key": "68e8c19dfd6d1fdf107001910954225c96d70ea7e83917df22a1e61dc15352ff", - "address": "lax1ta5y6vwfcnpmq99la8rg36pdcdaqe827saltpx" - }, - { - "private_key": "a7f64642758c65e7e5f9963a8a3d85726e70ab6f9028efbc93db894328360b8d", - "address": "lax1nvjldzffzj0s4g5r29rngwpkq5lgxx5h77449d" - }, - { - "private_key": "e195ffd65644796e1c2e9f6521d75b66b03b8f1660f60e2fbbdbe5eace918135", - "address": "lax1z9pwgqfh3s69p743pdvqtlvfjhe5y5t36337dq" - }, - { - "private_key": "a84c072a518f40c83e6cdc3485d892df7ddb7db7d6d670e57747acadaa953b3c", - "address": "lax1f90me4ee5u32ugw8lafkkncd7lqdng9v256mtc" - }, - { - "private_key": "183c31e89600e097afd5a3a5af0d02dc5bd7a3f3b8b99e8b473134781e888b9f", - "address": "lax18k2gjvzgu6kd62rrhuuc8qaqk494k5z6ut4lee" - }, - { - "private_key": "95eb8a71754696f412958d3c4b487869e3339de174b5b3fd1fddc4a5d19cc8ff", - "address": "lax1mp4qgn3sa8dmawklq47pk0ps7avgzkmme2l9xq" - }, - { - "private_key": "d073e644a755a7922bf60c49fe2443fafdf9cfa2a5276638fc09496a2021730c", - "address": "lax1ttkqcd8vxk60yrzq04n4ttj9jr0hlt5len7qr6" - }, - { - "private_key": "a5a9bf18a9c50068ed78fad1ef01ff08171de8a38f9b341e00c12221103f791e", - "address": "lax158mz66p0plj6gt8u3schyjhg2y884kelx23xrg" - }, - { - "private_key": "9fb552c81445e822e2810d387c2e876d308d767830148cc05d722f4b8ec4f909", - "address": "lax1kyhrzn0tjkcunuykh2jdw6zwp86q4wrwkcyuuv" - }, - { - "private_key": "02246969d463f480a66abb7e16bc14cc3f90f7978eb30c5e48f5f4c7d3295072", - "address": "lax157wcyzr5ucgxh6ea9nz6zrsq69lwpne4w4szfd" - }, - { - "private_key": "a1df5753a5887c2d02c15c8a6cb017889d7a49bac8b4a46a45556a68d20761b7", - "address": "lax1nylprvur5mxj44mudfnleafa8dt3x5jdysvs70" - }, - { - "private_key": "f775793891c4cb688150107509920611fac5a6c6a49eb71e3434247e52dacc85", - "address": "lax1tt5jqddywy7cjv2ywqjhjt75sv2qse2p4fxlgp" - }, - { - "private_key": "1732157f840050abb4e39917461487447e671a731f04e7942ddfbf6a8a845fca", - "address": "lax1vxvuzsq7m3j3ftlm3rtd982zw0gznrvqmjc3u5" - }, - { - "private_key": "83b2e74a448ee5ad03ae87e72007f11771878a0b11dbbdb4294b7c97d64953d3", - "address": "lax135w5ra3vlkxu4wgr9y05n24z5xhyz0yexn6zqs" - }, - { - "private_key": "507b52cbb01db810a5e23821ccf0c39f0d3c4361d28dd17a96620ff2b1abbe43", - "address": "lax1wa83ufzwsyh659zqhfk87q3qqcxa2wxtvzsq6f" - }, - { - "private_key": "763b0351321938b18f0e99b41d3f220df133e8738b33100c087ba4c183bf2118", - "address": "lax1244xe3zeagpvryh3ecxdtm6x8ftpv7pcykf8ux" - }, - { - "private_key": "1f58231a6aa4a3d227071a838c0850e302f1270ea0df2b6cfb0c1ff4796f53ad", - "address": "lax1ev0v703azttsg7lq938r6mpy947wh8qkfc6cj7" - }, - { - "private_key": "bd19914392a25a46101fdddc9d58ae9457eb731f76ef550cbcd8cc609856e1ed", - "address": "lax1er87n94n2944e4upp4226c5ufa4j8e67tcgkl8" - }, - { - "private_key": "8b8a5a7c74514c4110e0a340f0ebbc4e22d5321e196781d5ec171da6e7352392", - "address": "lax1qxchcse4yys044fngm7zalue2t6mnknfr2wkcz" - }, - { - "private_key": "28182b175c3b75a1fa3871d30d0c688e2ace61517492ed9b62b095da9c15cd02", - "address": "lax1e4ukg2n5xq86lnsuxt87k46jdx093jj8jwjzfu" - }, - { - "private_key": "a1251bbeea40c423a99fede827a0f3488a9083ba1465ad5f32e281768dded784", - "address": "lax16c8wzukdqmj5gdqax933j06jvmx3p3rersxd72" - }, - { - "private_key": "c1ae1eab0235bc54cb0bde306c58a6a2d290b5839847772c37edfc2d65a4217c", - "address": "lax1ncl746m6dfl6v3z669z3wymr3rcuumu9gl7mzj" - }, - { - "private_key": "322c7f4d677a5bea3ea7a90253e7187aed25c1a343467545d793c9461a6fe20c", - "address": "lax1sutx32ty8jznze2ffqqg6kg40je56lhs7agnrd" - }, - { - "private_key": "b2ec5ee62bd6eca8a4b1b96f779d2ba2cb15e435910ad8e18983bcda1ce11e37", - "address": "lax1jw93e7q66wne6e4xg6aqpjgntayc4jmpuk2gx0" - }, - { - "private_key": "5a4f09df528287ba6dedacad5eed8e9d2480e030b4a9b3d23328b771ab9d4980", - "address": "lax19gg926cnck327amzucka6uvg4yk2ydvuyaqvn4" - }, - { - "private_key": "22f1a48ef82023d11cdd6a7cb1da919814a8c7e9dd275a077a0b0babbb142d26", - "address": "lax1229ecd3e7q7qzaryr7szeukm9n7t53ut2p6rx5" - }, - { - "private_key": "7dc471e4ddb9f8a90d682299030067f61b4b0b4f81643ea22c7de3e85dc85b05", - "address": "lax1weghge48rc9rtqnshxqrdyunslft387zm2935n" - }, - { - "private_key": "c4bd572a298ae9fc81ac2721767c5e4c01b965c51a1a32c01e1141ad0d5b58e3", - "address": "lax1jwuzkkwu43wkp8pkgr844fs5g8fdfl5gd5k8rf" - }, - { - "private_key": "6ad523cd3aadcc301fa3e18fe9e81844537cf6664c242a84edf1747e3d74fa6f", - "address": "lax1he2zmwg6u8k2zyha8lxaae94klwevj587y30rs" - }, - { - "private_key": "f4ae5c9350c42134087cb3dbec2907b7408f3e10cd89590d730fd8e1bf39685b", - "address": "lax1g984498nfed782lppwjc9uxdxdv8zs7hsm6mnd" - }, - { - "private_key": "5cef426956b9c7ee66797ae514a237923195e3a6fe5fb80fd8eda427d0ee339f", - "address": "lax1y9rkc6lmmm8rppe7us7420uxf95gcly5x64u6k" - }, - { - "private_key": "29c0a27c211dd68e4857c909daf830227f5e9850d65f6a466632b78abcff324e", - "address": "lax196649rt7k67vpm6luv0n3yqdk7kn98r5h3elkf" - }, - { - "private_key": "03cd87bd08022c5a19f3ae2c03d45ab3ba80831d6102f472e7e55f719813b130", - "address": "lax1hl97tyjcraxvvnhlxhnfwksm7r669e8m6dnsfu" - }, - { - "private_key": "e244d58c1c9faef35417f275727c37f34f9a8390463b15c0d319697efae9decf", - "address": "lax1ng90esd67hcuajyhu2nfg8lwvtsv8r4756nxfl" - }, - { - "private_key": "e03d213b38e618f3652b20115c59faf4f9d0a568c040f410476ef30998ec75dd", - "address": "lax14zpp25rrt4mfjpnunxr26wharvlslk95df6e39" - }, - { - "private_key": "4901c2058929acef7eba9176d3923a44b8a17bcdd6f6d68b756f8e18731a35cc", - "address": "lax18llmaz4va82d52a6fkkh2ppkckx8wpcdle3ay9" - }, - { - "private_key": "2f4b80b1849fdc27ecc22e415f80e2f83afb73ce9e27a9fd5c5ae968f5e350ca", - "address": "lax1zckw6c87a5wej67cydx358ssg6varwmamezsnx" - }, - { - "private_key": "54569cf725463230be19cea07b1ef1b39cd22befa65277599670cd5cf2bdfdbb", - "address": "lax1wrsd0mz6rmqnuxc4ayn3chrqry3g09wvfs5zqf" - }, - { - "private_key": "5bcb4b345002f73e80c3a332d52f3a4f899025b808e1a3ad59f276fdf5d37e46", - "address": "lax1rxyklfcchahax7gl0h8x6pk0jc88kqgrwnqgvx" - }, - { - "private_key": "6bacbdec3a3a7a2eefde622bf3c71e53e650221139abc3010c2212f1c0015a2e", - "address": "lax1v8d80x8v87gcxn39za3gcpdyhlscxjg2cym045" - }, - { - "private_key": "dd16fac55ed528790930cf96a909023669876de9e45a7e0f8a0e623017f8c8ba", - "address": "lax1a7drd6mp0v8rqewuypd7qp22hpnxjh585qs9ec" - }, - { - "private_key": "50c4ff7f9b23858e28fcad5718b06e910e926b7d3fb64c4a0488b792223fdb6f", - "address": "lax1xu67mldlkps0p9zmnq0js3n6ykjvyz05vrmhxg" - }, - { - "private_key": "22693e7bd7a83f96d786af5aa050c4164df67e0513e1dcadf6f9b485eb8eefe4", - "address": "lax1qjkacyvy6mhxra0zyawlakneyanvps9669lgve" - }, - { - "private_key": "63a59416c249a788bfdd8fb7f9d8219622454b80e6fd388710824093608a8e35", - "address": "lax189euqml2g7fwdvath85egkwae4pqhwp94m8s6l" - }, - { - "private_key": "282fc53f37145219e5ce21863d59965d82ff45722edf643be181e9c4e7a1c59f", - "address": "lax17wwyp4kaxkfm20v2m25wmhsp0xau5sfewmt789" - }, - { - "private_key": "f809ffa9763b829bfd19998a51446792b22e0dcc108a20996fb7eab9f8804dd9", - "address": "lax13r7h7xcz359pwms7052qdcgys65sjvszz7ur6j" - }, - { - "private_key": "16b038ee7e96a771ee9be1438bb1ed31f33855737fb5a03ba598658bf1c420ec", - "address": "lax1rcx8j3krku9f4y8dee2t3xccfnc8yrcgscdkfa" - }, - { - "private_key": "74e5250399ed1a1e2b1043dac9ef0153beb43834c7ebfa10ff7026bcb6075e61", - "address": "lax14gqp9h7f98p6nak6tks4rldgvtkhmhzjhjf5uh" - }, - { - "private_key": "554bc515abaeb754ecfa75dad72205c635ebee050cc4d38cd69c3af5aaa3f2fc", - "address": "lax1ggdqd9sd4d4dts2h9u3rg8tresyx7w2kvzcygg" - }, - { - "private_key": "96cbcf40c20b86b8328329545d5902fd0a677bae2318d848fc47954cf3a86a06", - "address": "lax1vx9l83u2ck0f86fs9jdrc2qdxvp68dv6un59d2" - }, - { - "private_key": "f3f24ee6d40bfb6407864a207ea038f72cab974579db63fdcb8116532b39aba8", - "address": "lax1l5stxy46xuueaj0hah4ey4cpdpx5yvggtn73fh" - }, - { - "private_key": "76fef694f3b5ff11252a03138cdc5562949478c2bc3bf762a5bbe47c16a9a0e7", - "address": "lax1um75tvr2vq07rsdc2n6qqmg9lyqa2lutl4ezdq" - }, - { - "private_key": "f00d027aaa4d360bdf28af4c207e922148ff77203e2dbb051d50ea1698947b7a", - "address": "lax19txjq6727lfahp4a0mutnd6nxwk4qthjtzczx7" - }, - { - "private_key": "66d92cb4616f5cface43d1baf1bd40d998a82d400ff23ed2655eb8874735bf35", - "address": "lax1sx9638a6t0nhwef9s7l9vax4xqjq3sy0nmdlcw" - }, - { - "private_key": "10cedb5912b76e2d3ea86155e5f2503e227142daa3384fef37da1444bac9d8f5", - "address": "lax1s04zeznfs89c0lhxxcr4uqnyw30sx8kf9lm8hv" - }, - { - "private_key": "b4fd5ae758b8c48a4102b85d298aba77e5692c1294997a02a58bba297691a27e", - "address": "lax1xrr8x3jwuw4nla89k52qe54enx0f6dt7wxvfry" - }, - { - "private_key": "5997bdc7cbbe9e4bbb698c7655bc0924221b26078d36e1ee6b0f8a016ad168db", - "address": "lax1ezvy5947lkwrl4mthrwda9htvtvd6q3rl5nnht" - }, - { - "private_key": "60b60235126b95ed929d19c0cc99bf38638c44ec6ad5656ea1162294d6ebebfe", - "address": "lax19yentw2jperds9378whkfa0kls6ualq4j89wd3" - }, - { - "private_key": "020cccd9d051767c06df4a723eed0c3df55088d8ba84336bc318925bf93c5eab", - "address": "lax1klx2e5eklamse0fd7pqhjxfdsf9f89px2cw4ug" - }, - { - "private_key": "4f972744a8a55e0303f721eac5088c495c65b144a740480f1eab48980c15c445", - "address": "lax1ujg557fpaep4avauv3qj2ulxpe8389uhcmyx03" - }, - { - "private_key": "43e05c504af11aee80db516d4efb7965db2df49926377ee6ea89dc1d81a8171d", - "address": "lax1kfswzzcclh96zjf29r5zj8vf4yrqfnzujwmzwq" - }, - { - "private_key": "e3da6513562b3aa16dcbe97d3cbe7758f910136cb4832d7edf0072501de09d8e", - "address": "lax1g3ees6hrmh4apcay60dpqtul0h58as933vkt4e" - }, - { - "private_key": "be549985d7fae6f03beb0a12379ac33593b347a734233e029a568cb3bea8fa3e", - "address": "lax1nyv238vtudjzcjgv83mz7pyr9hstvtt4k6qlpn" - }, - { - "private_key": "466e33fc0b0188d3373b4b234fea578032c5a56e06514ebf391e1de3a02e08e4", - "address": "lax1avnd269k643emnmq0qq8tjdafsjnhqnqn3jnat" - }, - { - "private_key": "bfa4baefe08001e14af3c1f2dcf8352b7dd4759619859af60cc918f7df773790", - "address": "lax1tguulqlanx522emem9t75ycu027f2kgvph47n5" - }, - { - "private_key": "99be4484d04f0d5a6f894154d65fba4c3961dd56de3d78fd78b68fce312d104a", - "address": "lax1t430crpugfqjcxcwu99gwqyd6fpqrgurhanyuj" - }, - { - "private_key": "bd147bd27139f3c440596bafa1c3631f134d6d8a3db16f54e6e8cce74f0e080b", - "address": "lax188fywy26p728ryssxqapdt5n2j64nh3wcswgkw" - }, - { - "private_key": "242efafeb7ac000751b48d6c256c5c6ebd7037106de42be5f7e5cf1ee3aa3b48", - "address": "lax1f4q2cr89jyvanfl6j54vguyayff5zldxd3jy0z" - }, - { - "private_key": "4f53e3afe9b15d1359b52e12812d06a307528a28a549575ca492d8d4bfe36872", - "address": "lax1mey0th5xcgfw827kra7pzwr4pnnj0gklh5mzep" - }, - { - "private_key": "511746d9aa3c5bdfa62f18ba460782c58dc26279219d979cb9e34d0d78a8f5d5", - "address": "lax1arylxt0gzjss4ew90h2ng3kwy9aptmg46au8j0" - }, - { - "private_key": "32cff0745fd829be53221c2a76a202cbfbd2cb53500c6fcbc75f5d3d4ae3f47a", - "address": "lax1y3gy852afe4hwp0fypucq80ek8mnz6sdfqxm02" - }, - { - "private_key": "ebf22ed4662d68852000258d1cd6ef77cdf09fed84a4818f343dd408b7695411", - "address": "lax14zjjmclwwzs04l7fe02slwkuzdm6psx3x4cshd" - }, - { - "private_key": "ccc75164adbf69fc2a5503549afcb7ad02e3d147c02cd1266eb8306be01c5ee5", - "address": "lax14r5lejl8pzexphuezcs0p3yr5g2smpj6cryv98" - }, - { - "private_key": "fa3f3ecc310fd2f58b8d3678863146d68a63b59708b07cb43eb40ffe3b22f106", - "address": "lax1hhywhmaw9uuzqnps3dlwyz2vtaa8k027pptczs" - }, - { - "private_key": "43666b87ea775a455644ec577d77362bd703ed911eb79236dd86fe8febaeb6ea", - "address": "lax1wp9hclnnat7upzdlknl2llp7e7nm8qyt2hsf35" - }, - { - "private_key": "9dbea27cdd0385abdce559a9cee23876dd648e7853a22053e98ecab5a0539cce", - "address": "lax1eluzpry3rcksdr5da6n60wctp2j8jh3gwhc3ym" - }, - { - "private_key": "f2de223d60bf04a3c16b91db6120d6a079154a6e8666490e6f129abc62e07cfe", - "address": "lax1xfzpysm0fymfnwxa0jtftmg6j3udg0tsev5jlr" - }, - { - "private_key": "e011009fd91ed29c4ab485eef18ecccf9e027fcb39e5cec40464528b1989115a", - "address": "lax1qsl7ytflkx976c0dw0xm0p8fwtlugp2dx5l4sk" - }, - { - "private_key": "ffa488b15846a19654735b32d5d179cdfa8fa73b86b977bc13892c0b4d06311d", - "address": "lax1w4um6xdr8zfkdja87jpjez2s9fg2lua46zywhv" - }, - { - "private_key": "4e0d389e0e3e3d03ecb801229d98deba94d63a151b3666a4aa8d63750613e31e", - "address": "lax1tk4g9al79k4qkhzwxqr43xtng4369nncna4r2g" - }, - { - "private_key": "c201bfd724c0e52ff2613c3512419f6d454efbcabb7cfb079a892552f29cdaf3", - "address": "lax18wkc64ptvcp5f3ke76zgnhs6d54xn7sq2c6k4l" - }, - { - "private_key": "60ea31e665fb8f0562337895bf8b66c17aa5021e7ac0b4286e7e12d18d8ea356", - "address": "lax1l2r0rsgh3jmzxcxyh83ay4hn3tm29vvyszjwm4" - }, - { - "private_key": "7edc6a2109710b612fef4e9390354b312c4e6c86f2fb4d23483537b413e43b16", - "address": "lax1kfnynzk6etrc7usgk6855nces5xpq798v03mlw" - }, - { - "private_key": "bb05ecadd58ee7069efc7706a7462c06b654b3dc7e285e0dfc356d34cb9ee426", - "address": "lax1gf8dq98ayt5pptjpduj7e3vvnw6v4zxxlewde4" - }, - { - "private_key": "8c5a98fd87c3d483251cdec2a9eb1d756961c1dae7d23f162f43fd26df7b7594", - "address": "lax10tj9aey4hl07jpt9mneufdw4jzly9y2hy0uryk" - }, - { - "private_key": "d9ba9de300a96a5ac518c73a6195fe36d75af35f7ff08571ed30e2029ccc62c4", - "address": "lax1dgq65hgu495kqyayv65hqt5rkkz448muhpzxwj" - }, - { - "private_key": "ced6c4a173ed0674b41447657306a628cd39c8c64add3806a63db47fbeeac15a", - "address": "lax1wmcygj4hnztsjr2088nly577s2t962ld2v96a0" - }, - { - "private_key": "18834fbd44c50827032e1d47a88cc96719476fab64b0ce765bc0a466b3562e27", - "address": "lax1fmzrvf2s6eu2jz95n4ukw3pcavysltvjt646vs" - }, - { - "private_key": "0054e4fb08623759a8e4c33c9ed68179caff909232c5f4cedc7c4f7fdd920038", - "address": "lax1ds9pxke4qaw6ysv39mstvhjtj0mhg7ve0pgjj7" - }, - { - "private_key": "ab335c286da83484c2602d6fbd4e611658918eeac6accd3ebf6ee6c7cacffac5", - "address": "lax157rajlwqu2d2gz3zmmglsq2lxea6pw0d7q9vex" - }, - { - "private_key": "05dc38bc34a6b4463d4c248b21622d99195cb18e89ebf1e5a934cb5b31ecdb44", - "address": "lax1pfcryz2j3e43qyhvcutn9f63w80wsv0r5y8lvc" - }, - { - "private_key": "0d730ddab86e37f9b576980845c08892ec05f94c62876997565f0b39ffbf3550", - "address": "lax1tx95n3eteynxzhccjuyz2f4h2nx86ppyp2zmp0" - }, - { - "private_key": "a5e228fcf497422e1588feb2d6e8d270d6c4e335900befc1feecc161b49ff214", - "address": "lax1uyg4ghane54va57q0mp7llrrkkaj0hjw0am6xd" - }, - { - "private_key": "6413c1f233aee003c78edbc08e3e74b42bd21bb571d399629da36ea36f6481c0", - "address": "lax19f9tzhtgqucvfvf6ztkh8jr5npxy5hpwzylpf0" - }, - { - "private_key": "1d9912b2407a7da2b53ce3ee1cad6bd54ed713548a676ebd9f479bc23744d238", - "address": "lax1lkp45ntufc4uqe8lpyyg3s758naf4gk3g0c8pr" - }, - { - "private_key": "37b82ce85bce7c044244c49777a4c61fbf1649585251364dfed917f692784a4f", - "address": "lax187cucpyhp8frennrs6r8sssq4k3dc9awptf4ss" - }, - { - "private_key": "d27f32aa866479c449a2fae481d0960369da29a3d64b5600cf56dbacd7b7ac35", - "address": "lax1mudagz6dzg0vsv0d6cg7h7n63p9rpqky2mne8c" - }, - { - "private_key": "b165a6174855e116622d341a25140282d0b0040c4a443cf70171e6e5b965c82a", - "address": "lax1q5fr3zha7nnrtxh8us3d8h6z9ckra2xk5jffky" - }, - { - "private_key": "a92c50bbc37edb5c6899efa97ab33ce5fe8ca7a783afa7c2780ba1be736ebf98", - "address": "lax1aafe6t4r3rcrmgg6af8988gls8wq93v4mfhd33" - }, - { - "private_key": "674efb966451923cbf46940d509cf0a3084b694f43b95133b6e44414be79ce19", - "address": "lax19c4v0jxr2k2uadv4c7h2u5zdwc3luph3lwgt63" - }, - { - "private_key": "c57b6ad8a42ae640fc0a9376f98bd94946c3a4843e78c77d7717924092e1e6c0", - "address": "lax1txnwgjlrklh8a394299qadvvldzq0p5xnv8yup" - }, - { - "private_key": "88bb683d10c355a1e69b3d5fac2640c21faa0d73289dcac9c3a4ccc7a002f5b7", - "address": "lax147c8dwdn0gj725tan8d8mfv8qkm6x77akqtghy" - }, - { - "private_key": "304a24bb4236e0533592ac55729d66d3c5dc718e2d39114cf013daa85a40d06d", - "address": "lax1n5ggu5lxwqgftty9342azmqs0tvrx2jlhghk3d" - }, - { - "private_key": "02f019ac9cad970d3e7f74965b2d42796414fe8aed05b92ab1722dfb3aa12765", - "address": "lax1kqmm7sj69efg0dkx54paytw6qcd76n0gxwpmjd" - }, - { - "private_key": "ace1d2e69d2115be988da50c2e4292e2f1da54ce0f1348c155193034ec34d90d", - "address": "lax1qm9jvk54dxy6cz6rgrmsc42stjpyuw2t69x87n" - }, - { - "private_key": "9fce1e85b9dca0114adcb9eaa96f1eade76515e0ea7b7fc238c63cecb6c17cb8", - "address": "lax1lgj6jzy4rf70ch0330grkdfndznncuy3mkuruq" - }, - { - "private_key": "cf3ce137a7545cddd1411f203e577c5700ce5d06482065718a49590c6e92e063", - "address": "lax1l3hhy2504j6gg3794j0jx6mrgmuh6mpg8z40vp" - }, - { - "private_key": "f6ae2b120594c1ba20f49ddc25c45c05e53761c96f9c8dec8e710014d4ea625d", - "address": "lax107w3dzfscl04fn8sxvlpd0dgxv45p8wkulkmej" - }, - { - "private_key": "3207964041a27b9f9c9bc0c961f29353a0f31e7abb3a3960c481f55008f04d40", - "address": "lax1hjrj32ftvrdjxjhja88scq0fv5mpz5mxflacxj" - }, - { - "private_key": "0e50d77958c3d0ff36b9ca6dedfa5952ff6db0edbe070c2df27ea33f9ffa935f", - "address": "lax180u99zv9j77fuzlyqwydn4gy5pl2x4wyhkvr5u" - }, - { - "private_key": "8bf824e13beb269fcf5e38e1c5b29b15076267057a5c7ee55a75fb5a4db4d41f", - "address": "lax1zy9gj5mlrly53reeaq5ss5lqnna7ddtxkapqku" - }, - { - "private_key": "6646e30b906127a972b745b9c55f0861c4968800ae135136f29b580f18c4e18e", - "address": "lax10vdcupsa2smmlgdmglewgfwukcgu8j375h8duf" - }, - { - "private_key": "807e08b3a6ae091e4e0ca6868a54b13d2d10056b3d38052eb50c184546a4f557", - "address": "lax1ax92jlefs6kdtx559nljsn92czykg7yp6jdscv" - }, - { - "private_key": "d29260425306391800db08c42945c0983b96542f5265e8a956a70bd74ee5e067", - "address": "lax1tetm463qmf2jf5ex3u225uef4wpv5ljs0lk6tk" - }, - { - "private_key": "9a3dea510af0149f3567ec7e1dda81dfbfacab0d379ac3fddf5c993c335f6497", - "address": "lax1wm6kc4u446hx77c46vjdjrt8xrrglf36c3vjdk" - }, - { - "private_key": "f203341bfeacf37dc07a73d883367153f3e96fb09f0b85352aad2b1c5828d2bc", - "address": "lax18ucnejwt9dswp0h4v9ekad0yxjj5hhxnez09r2" - }, - { - "private_key": "8523b639a74907a39d62570293d6368faef37fd207fc30d0a0f165ee59afabfd", - "address": "lax1d8nr2vlwmvj9exk873yeff6q8tcay44ddnwyg0" - }, - { - "private_key": "11ecd696f61a9bb61fb874cb4c52d5fd04e80fd1084210dfcabc2c0f702fd7ba", - "address": "lax13fyartg8tdkv5yqvevegyhh9cfj3zmfzduchcr" - }, - { - "private_key": "f64ae0e60c019b2dafa944c79065e4a148f5bc70a0778bb6eaffd3ee7b0453b2", - "address": "lax1ap563w6upklfuecgf6awxs98lp829n30gay549" - }, - { - "private_key": "388f26337b8a0c62d8e04029aa2af53fbb0e43f99824d1bcf0a9249295020f33", - "address": "lax1emf4er0ppllz9u7u59tndhhtzupdds3k6rjprx" - }, - { - "private_key": "e2f18179287945ad6f683803982b106a6990feb295f2562bbcdf17730bd3cac5", - "address": "lax126xj8raaxm7pr7t5nppgc79v4vccz68nzu595x" - }, - { - "private_key": "626eb1b013aee12701b60a3e6f76ca46daeb86010d6d68d98c20911d28d37d9b", - "address": "lax1j8a33clqtng4cex4uxmvpqepgvzrmn9wc6lvjt" - }, - { - "private_key": "bd5bb2f0b1f96f7a405a12c8d05e89a3a4e50f522c50f58e837b0d5c3e1f627a", - "address": "lax1xsqx4mcuhhdw5m69ju4702qksedd7dyfhthy5n" - }, - { - "private_key": "1100e986499946af85bb0194b4bcf0966cf8fee9fad111a247dc26b50f91d49e", - "address": "lax1faa78wuz9hqwfq0v0hmmxp8uymqu4yh9th6hfr" - }, - { - "private_key": "3843c9f460383373bee24f9b27560b5e5951622400015b6d6448eb82023e821d", - "address": "lax1nrael9zcszrzulay8mm8kzy22dd4lxtfza9sy0" - }, - { - "private_key": "798b628be8d5955eac29c892def6d4bf5ac4a0eacba9a8f28d453484da8fe8a8", - "address": "lax1eqj3qelm89rsas8yzztkecf9dhkp9p3953uvuy" - }, - { - "private_key": "72c10eb9540e3777e8c40718f4e4181ff801ded2a7b67361c71307288a86ba4b", - "address": "lax1z29zn0kkp8e8a8m7pga04fpqrj00fsnshluw3v" - }, - { - "private_key": "2fb8006e0138ba6899c5acdb4c36e002b8c50650e2e394d485ca804ee73cf380", - "address": "lax1del99uugutawg3tjg8egs4qq2jk3rnwa2ua9rg" - }, - { - "private_key": "1a38d1709b8e0e497b3c444add426f4a9785305d0eaea96f23c5301ab6cf8c4d", - "address": "lax1y47e802xul7wqqg42kajkedwkx4npnqad9v96u" - }, - { - "private_key": "1f6039819df0384937219702a6b1b0c790a52ceb150663803b65629ddb30197e", - "address": "lax1pmjd5agdhqmstx6w2njan9zase6tmfny8v2n5s" - }, - { - "private_key": "690455b7b7fdbd48e54e139f04da92d287a3e75ed11d7dfc725f123757f1cdc7", - "address": "lax1lwtsl0m0jd49p50wtehed0p8er4qa4m38jp22v" - }, - { - "private_key": "fa85b89b544372c089d7d5a52ec98d5744751b6ea35c00cfd925090d5231dd02", - "address": "lax14hazcuhvpae9u3kv4kqk86n325fuetrqrp8jw8" - }, - { - "private_key": "afe83a87481b760bafad1c08eeb0607e42194e7044c7d4aa1b56131f83b26f16", - "address": "lax1q7jqjzy7zau80r6nls5wevxxu7drrsnfm67cm8" - }, - { - "private_key": "c00397bc9fdbbe8b90082e1db9eba260028436f983ab222fd7f939aa6c0c3ded", - "address": "lax1r38r7whlmfnfekzhgpx7jcv954m9usw8rnjery" - }, - { - "private_key": "3e25497c6707d77888ed5e6466353393770be21b905262996d3d6fe0c0642254", - "address": "lax1se6p4la6rhgd4x5kxtr5wnjwp4xggj8847tju7" - }, - { - "private_key": "5ea5024f0f9d072d97fa1ecb29a6e516e67d3aef275015776eed066413d01110", - "address": "lax16609pzz3fgjgqkazalu6sfjx8q3d2ke4zwvn87" - }, - { - "private_key": "23a45161d25e3aa6f5fd905065a3663fb46e68ee0455112d2d0959b00bf8be3d", - "address": "lax1kyh4pq73gqlq2kj6w8nxkhjl78s0seq4xx6eul" - }, - { - "private_key": "9279119e4d012b8d1fbff8a9d83a78d2da25aee6f4de394f718f5dcaaaa750c3", - "address": "lax1pa346wylpmy8umunc7ge289mq6gfsfehpl4rat" - }, - { - "private_key": "5b66d030619a59d1b70d9df9479dacecfafe4279b5cff3e325785c3cf52e1eb3", - "address": "lax1mecnklhhqcu3rlpghg3hjqp05txsg7qs4cke40" - }, - { - "private_key": "4e6367ff9c0ce0240dac71af47a149c46c7b0f01142f60a6eeb4839157493fc8", - "address": "lax15szmm87z4e7f6gzj8gxqxk5antyfcvkz6a5yrx" - }, - { - "private_key": "5bf76b51c3cee47b8af8b7d2ecde62fa6e7ac8428ca18b7a2453d46e12c447ea", - "address": "lax1j5lsl0qcpgrpcx0gksxucqjud20uqccnupe4rj" - }, - { - "private_key": "47956dff3749740ad40055dd7013ad361283fa8d1d78720ce3f6120413a892e6", - "address": "lax1ltnfzuq4v2lnhtkge3ezegzq03exeemq0llnfc" - }, - { - "private_key": "555a235b4e9764a54f0ac648e87b611c5b923e7e1f241f02760c7b96d669832f", - "address": "lax1cumneyfzfg625h5223u8xcvuzfpdacfjdlxyzn" - }, - { - "private_key": "b6480b78ffdfab271af59afdef6468fb17f14d979d9617aaed84374cfde721cf", - "address": "lax1kjmfp54xaetfxwz4qytr4lxdfj4tq9ldl054rc" - }, - { - "private_key": "222919608bfafd1d7a913570117d749f4caef189440238c6734a2c4d37eff038", - "address": "lax1nv5lcxxww2le94xw8jqlcsw3nn4m8kangh56x5" - }, - { - "private_key": "094f94430fdbdc668415a1149672b2c4e8221942b9123f53707c624e7bcaf149", - "address": "lax16ja6fmgx3jrd2fh4uk2ezj65qjzf0934sz8la0" - }, - { - "private_key": "f4e2cbba45d3030371b5ba02ffdcffd45b9034c1a9117512c259b0c08e5b7b41", - "address": "lax142jhn9c4em4r3a37n3nxzq8wjp0f980ahuns5c" - }, - { - "private_key": "1c1f70ab35c8cd01bd6e148d4a0bebe2bbc655f918e1a5dbe47a4302f277f87a", - "address": "lax178mfsg8h8jpw8cuyjyhr5txwupya27av04uwkg" - }, - { - "private_key": "3de3d0df800d13f2539231e0ed5d05cf3bfeeaaedb3ffaf4c822da55f8a1981f", - "address": "lax1jewqeac5grfscf7pevmapy7yu9nmgvg5wljt47" - }, - { - "private_key": "00784c72236db8e5d7775b2db8ff951bd8fe37f8c6e8f16bf75fcb80eab4a0c5", - "address": "lax194avgsx7vxwd0csc968qhypgp6np6tqxwal5qp" - }, - { - "private_key": "b5b132892e337ec5ee1d61dc4b0994db02dd484f51a8ca514541ab58b817d1c4", - "address": "lax1hqdxpllt39u2v659smwfjzauw0cnegvndqyy32" - }, - { - "private_key": "93d05649a3e21e84c98909015d1056eb067b8ed7c6fb17c8b345b0712a26f505", - "address": "lax14n68gh5fe3djtp6sdsfqvelzk6fljaapewmqr4" - }, - { - "private_key": "72e8e25400dab3f3405e0260e0028e2eb0c86035b016721fd993d3b5d8799b4a", - "address": "lax1m6ycgfsld54vdfdju7rug2t2dt9j7n0cn6f237" - }, - { - "private_key": "5b22eed5cfcaaff588efca331593e6874c9b143bd29dcbd362a951183f28f0b4", - "address": "lax1q77y2mwvy45nrzul2y7tk90q68q0vjgxpvn453" - }, - { - "private_key": "25e67835ad3ac86430896ff08315169189f6e2d5958efd7c77c687d428622f46", - "address": "lax1grg5sarwu6qj65kuqjf39a3qn6mmf0edefnqjx" - }, - { - "private_key": "17e7e0a2feb41ee3708b52e75bd424a0e7bef5a4c35472e3e3b7e86154eaffb1", - "address": "lax1sdsvp2hp7rn2drk39hk67fwpvcfc76k2jrtnvg" - }, - { - "private_key": "0e28e2c08802af3815bc600ef8e5d6c6b6441fe8dbf65dbc48f3c2cbf3ae2e7a", - "address": "lax1k6fcv0mj5gwzz7c3z6tspusu4pft3kuvn5r77s" - }, - { - "private_key": "5058884a823faae4eebb8e429a7181e806942298ba47c745d18734b89f575ce6", - "address": "lax1dae703sszw0cnw8qlxa0r6ly2d8acd4dh90yjz" - }, - { - "private_key": "60c7bd4fe51729a93fc3faafda125353592cdc0b7d42080aa00017d034ea1610", - "address": "lax1ljv6vnfzzfltde8lh82xxk8eezmma80e05jk3u" - }, - { - "private_key": "3d73863814d9c1f0f0055e570a25fd24b21203f2f95c2df22fa2d7837e1ecdee", - "address": "lax13dp6czwwwrg2v48sdafls90hpff98hvv62hx7q" - }, - { - "private_key": "ffa4168e74df245fff1d707c60d4c6edc6da99cafd06542ba03676f13fa5256a", - "address": "lax153s3vsxn3xexfdww36a6zttvqtl459t93hlr24" - }, - { - "private_key": "5633cf54ae515627ef2538be84b57b930a4055aaba5dafcf628f76bdb7f5ed0c", - "address": "lax1u2lth0zv0fwxdhlm3xjymzwv5uzvsyqlgldrlg" - }, - { - "private_key": "527b438d17793101b5cf97410a36b33441a3171d5698ebbe6b2fa44e330964e3", - "address": "lax1hxq035s0v9nu4h57wxepllq2uh5xky77s4ss6k" - }, - { - "private_key": "d405003e9465ffa910fcd84bd434bea7238613e129fa7560a15344b4101d0a41", - "address": "lax1853pr24yjas5pmtqxsdz9l3yrlkrh4s2yqgecj" - }, - { - "private_key": "56decb28a2a952b1f53ee6ad180cc8cf29934211763e005b72674a7b4ace0530", - "address": "lax1tq7nnxyxt6a54g6yf42nar5spthxe2aqqpx5m9" - }, - { - "private_key": "6438ef111be7e5fdad26571bd098653bf763229a0223d150db6e45377e01e58d", - "address": "lax16hwu52gle2mkj3zyajmt2hjf3qrmecju3g6wds" - }, - { - "private_key": "6249b8e5da57dce9c3275591d84863b9db5d68da1844567dd009bcf34e0a57f2", - "address": "lax16hdmhye99p4yfwaghljruz8gwpl8mcvuwud3gx" - }, - { - "private_key": "be43b01e52f21e907a3ce0ddf591a99ed27ec655da8aaeb26c1245aa70c3694c", - "address": "lax18mn23hremljjeq5zl5fhyjvt6ae9telgf0z8g3" - }, - { - "private_key": "aeca1c0497366384ece2ec0dd4c1ae77f4df9a040e929714be427114d1b2896b", - "address": "lax1xx7ps8pvl2pzlf2nf3svq0cc0mwllseyvgh8ad" - }, - { - "private_key": "710c771ffc2d5981dd6f68cdeeb2894a1dd212ce6af9bfe8645407725fa7d96b", - "address": "lax1m2hr8mn49qfen6ptwzyy0rtwrnh03sftdqh3ys" - }, - { - "private_key": "7abbe925600c67b191474ea39c296bff589b733144887f7c49bc087b3c3a9b18", - "address": "lax1g3n8eu68lktvkdhce07svgds7aug3mzxc2rrs7" - }, - { - "private_key": "37e0b75ec3081435fff2e6aac62158f79b70f91e4bbfc3363505a731d9a9e4fc", - "address": "lax16p4mfe2rze33758dh5rmn7krpyq5yqj32dd4zj" - }, - { - "private_key": "627d2057a21195bcd46fc96ad6b98758af5bc10880353c28070c9d79629eeb5a", - "address": "lax1w6txhtns8lutxgwxc8nwxsjja3e4qsnvr2nhyt" - }, - { - "private_key": "82ca5edaa41404cdf3d5fd2302ba1ef8ee76171bbf7dab1ddc1d8ae9951f3511", - "address": "lax12gs0ua2jkuyjng8ywm9klzlg3n93g25kssvu7e" - }, - { - "private_key": "7162b90b42d8b894a9217fdc58bc9b990b57dd95eb233dacee469e50a8f9d85f", - "address": "lax1vzyc5lx8veu80gy7vpfdrp2f685v6dr2rgf9w5" - }, - { - "private_key": "5a82a117b7a4e8ed98886a1187ef3631b1a6b053f2f1021606c9c72731f4cb49", - "address": "lax1c6lvpj3skmwxr8m5r46gcgsw0x8tqqpevvm2gz" - }, - { - "private_key": "328156b2d979b381348a77535ba182c775ce81c750ef0f6f8fde073e4c5a09fe", - "address": "lax17rvecvq6su9qgu2zmvkfm38k5c5fy84ef7hcm9" - }, - { - "private_key": "4a11a8edb5d98e9865240af9b99b9d96e3bdcaff6304fb931a0950fb27eb4b81", - "address": "lax10vg4aq94qwdt7e49d3qcl8tksdap84tp0tdwgs" - }, - { - "private_key": "cd3ca21b6c4be56d0d5ce3df362982199a971341e0fee586853bd385dcee4bae", - "address": "lax1773w3l5xz8anrcm5whpd38k43ns6td8304v35m" - }, - { - "private_key": "cadabad772090b6abce368ad2e8e2b8b9af4220300f26cd1cf758d71b41fcdce", - "address": "lax15xym843fxxsz7lsvcv2emqu2zcfx7hgr5majly" - }, - { - "private_key": "c677a8cf883869c2b36c98cfeb8d95928e1a83b422caf4e4bf52cb41d86ceca0", - "address": "lax1l5ftcznrnqhepyucx8ajys6cra6qta2qwj2csg" - }, - { - "private_key": "ffd5bd6cc21080d491bdafed1edfcb65d0a697adecac955537772b3af9d10875", - "address": "lax1n642jhcm9t4nzhl2qwhkysam643pyn8ef8t7fz" - }, - { - "private_key": "98d20018c4a08768cf595ffde24a556d2aa73ad4aeee806267514be245ce2ef5", - "address": "lax19275wyuyxtnrujtyegzfzgusyuq682zzd2mmyk" - }, - { - "private_key": "ed105766d3746932fa3949985d4d9d4799e9bd2f646abae7b4b4649980fb943f", - "address": "lax1wag0xsrz6snmca3whkrr97ukkcwg8x8mqgrru0" - }, - { - "private_key": "519aea05a86f6164711ff7ea7cedcf31b153f263a8db2fb5da57d9e36317d796", - "address": "lax12g6effap37lg4gfysja56e9m2w8t0gc86jmjeg" - }, - { - "private_key": "9a700b02d47ac90aba703aa58f8db956801471221696919cb82890760427233e", - "address": "lax1r3sxsdn5u4qm6r3yk609yntv50uyh9u8ctkh0c" - }, - { - "private_key": "9892eb83aaf16e9f8090d2a4b7ebbea6af63e9cb2d0ea1d05d155c97813b5675", - "address": "lax178qxwaytmcwq7e9cwe8t0k0j9clzee79yle2gh" - }, - { - "private_key": "06b49b80b80e0d42fdf99c7dd857fabc5aed8330cf361d729bd29a8af9399d7f", - "address": "lax1axdatx5hp0l7h03m5mz2rvs8x889h9tskvalk4" - }, - { - "private_key": "2d913a25528e4bea3845bff8e3b48d2f197dd007638dad14ef79f0a83175b27c", - "address": "lax1fcdl9kmdj4ledy52tfxn9lx70gkqp9nht9v9x8" - }, - { - "private_key": "9543c3c6017f1b88662a1c501eca7bfa00a5faf0f991fc5623b237a35e8f6f4e", - "address": "lax1w6eq8r94ghnfjydy579dgz40drqeu64kv2vnzc" - }, - { - "private_key": "f0c8c053ef2e6a28ca3a04b7588d65da91a03169cead06ea812e3973eac38bb6", - "address": "lax1fyg703xdd0hc356f82vytlphup2z0du2vckg4f" - }, - { - "private_key": "8b5ef26d01d4e0ac7abed9a1ea6e2896b939d6f1ce75a9ff66f6e51e60127c1e", - "address": "lax100q64krxvsk72yp3v77lypwmnnnrc8zpwv9pcx" - }, - { - "private_key": "829aee4d4bfb9b9b71f4b05f55f9e602e0c8a8627f096a65b538edb48e671835", - "address": "lax1smsmque2q8x2538un4f5yurgr85zm6dkyqyclf" - }, - { - "private_key": "e45294c1e60521b0c40c99a52b206f47c431fd4473c54f87ed890e930645b0c2", - "address": "lax1m8hfuyk6scpzyjklywqxjm2hpsu2cncmme8ng8" - }, - { - "private_key": "71f88ddee1cf9c7c91236033db6a5a1c0381cf9e23201a9c57385f3219377601", - "address": "lax1l72wjdp632u48ge5gpz2tmz8x9cyrllm83gfgw" - }, - { - "private_key": "b3df03a72195abc867232ec3f94aeba26401439a67875a96f5e7372471a13dfa", - "address": "lax1zt8lezq9jfnkz6sty6u8fw2l66jd5hn34zgg4h" - }, - { - "private_key": "a21e2f63d35bae8b665c94e73a9f35768a549b957af447d8ed56485df36d029d", - "address": "lax1j0wvk59tr5aglcdqfydenn50zjgn59usz43y7t" - }, - { - "private_key": "a903dfeb50146e0a32ea861641df6a68d26379e6a489c31c352dd5ac9c89130b", - "address": "lax1427vlg9whmk3r9glm8fazy32uf8cm2atud9pvt" - }, - { - "private_key": "1aeb86b126cc9d5de603fda66af570c690196a467221a9f5c1e8958ee2eb67c3", - "address": "lax1ymkps60dky2a2nwjnqx7hen4zku68nyvqm335e" - }, - { - "private_key": "9f0ff77a79f4031c382684ed4aeec8adb2e58a40e6dc4cc0017e47abc3793823", - "address": "lax1ua7z87v3ctj7etaad66yl63qnw9w03y8tw3e58" - }, - { - "private_key": "bb306b03182344b7191cc669427ff28d8b118f67bc127b99afc8ad1dc80b1adb", - "address": "lax15k7v2652fwum9cek2w2jsqs9tzpaceu8l8l542" - }, - { - "private_key": "99fa01389d6dca34d70d81b81cb2b6e14a07d9e37adb9594bbd734ac1aa365d2", - "address": "lax1d332epzt6y6ke95hx5gx843ugh5qtkv82a0kg9" - }, - { - "private_key": "da7ebc2a429d7ffc2c7d4408b956f7d5d0914f81af767c23b5e4af483d1630c1", - "address": "lax1g9rn594gaxkczvgc0p7gs8rvv9y8nwkqggvlqv" - }, - { - "private_key": "d69a166d7e234ffd0dec50c1285f72ca97d7086381bed6f60f0cbf4979cd9b46", - "address": "lax1ptm5dwww0qgh6dfjgx4zwhk7dyfjxjssvvdur4" - }, - { - "private_key": "165a9d5ed918f4fb2f4cfa0fa19b1cb8001e31849018ef4c91309b4025e44486", - "address": "lax1x4m9yc4tmj7hpqxqkccajtma58twzyjuwf4kvu" - }, - { - "private_key": "034587851e97319c81567ee4a5fcfd30862a83f271ec4186d743b5612c71ccaa", - "address": "lax1mv6zzrd6alp87aspc49h0safuhzwkssp8368v6" - }, - { - "private_key": "7ce3314b20941f36b5847395318b75eb9dac68bca81dbb6cc5d4302136b260ca", - "address": "lax1g7jeqlj066qa3mzq5k6f6555na3je5dtxwejry" - }, - { - "private_key": "419e8e4b967c9ec070f9ba4239ae8c4441d964820499f976e05f5de48de035ea", - "address": "lax16zcmt52e8z8a2dffczw57j4pgyxlnp9aksxrl7" - }, - { - "private_key": "e8226f3f83cf181643870dfef4444bc3446b9b60b1ec26be94edd814e52f75ca", - "address": "lax1gj6v60q53ja7u50vl8erk924wecv8tmjjf2xwq" - }, - { - "private_key": "934b16ca6fe753c424541b634102244533f2d78ddab85b769567724fcd8ece13", - "address": "lax1vvcc7ghvtq6mh5kkfzerxmrrvvdja89y8cmvy6" - }, - { - "private_key": "ccf2b89498219e9185e4b6ab2cf44a35466668d816f71c2c242405270c3679b5", - "address": "lax1kms7pzz7gwwgrept8z3f4wr39p4wzauej0zpnc" - }, - { - "private_key": "39ea16a6aa7d4b7b12cacfdeb2bd33bd94e8217a13f447e5e4753fcf729efdbe", - "address": "lax1ka93mh79kr2jkkyt6vemfcxwrwqpdj6ey0tdnr" - }, - { - "private_key": "5dd40e4becc188d9293c4be6956e2a2cb00d6c8780870b680733b876e0d48ff9", - "address": "lax1u3xx4lw8vyvam5t82wq3a8m55xpye0v2ur7alx" - }, - { - "private_key": "7a49da1db91102259e02ccb1957aaa41ab1522386b9aa53b833071291b6b5aa8", - "address": "lax1sxgfd57w9flv0dwjpe84hqhp6avc7x9vjpvvkx" - }, - { - "private_key": "7168d3a50195c4a09d83b045739b2e46723d80d4cf62a845c9d251476612e7c6", - "address": "lax13t09yjl8j7xw8uqaxlvja3s2aynejsaru8x604" - }, - { - "private_key": "2b9abecd871df4f98d59f6df6284ea852bb6e420606c423b10539182ab273733", - "address": "lax1ahpy9g82rd56c9ec0r779jxn7rmraw4gzjwjnn" - }, - { - "private_key": "263e756b39d4ba0b050908589536c5d98449abd03484db165eb82d9358cd5f07", - "address": "lax1yae2mccrcw2dgjdykdnuu69mtt6hec0wxuwhzm" - }, - { - "private_key": "61e8fe01a0c94fca85e25f20bc98124c8c01a8aa7e7b471ba9394809ccb3be93", - "address": "lax1jft7kqepfwcrnsy456z6gz0yxe6tgnftxduene" - }, - { - "private_key": "1eb188be9a3809a16990f3b4bc7d1fcb107db8149b45355eebfdccaedf3b1b64", - "address": "lax1pkrux3suyu34sf4afave8n02jaw26rgcz3m3h5" - }, - { - "private_key": "ba095dafcebb7ea0c0fdb5b5cce72196525c5692873ebae26a5a6102b22ef9f4", - "address": "lax1sh4npmj65dp5dgqqdvl03eazhjtjvxqg6gl4tm" - }, - { - "private_key": "f641825cffc9a0b45d477c1a03ebde50a3159086204e6320d0e621381a17a1e3", - "address": "lax1ku5z4plqeg8syr0af9wpry70klcq3kmf5kkn88" - }, - { - "private_key": "82782e1322d835d0617461585314e0bcc3b7bfce83dc01792e5ab6d7bf3f5beb", - "address": "lax1rx4ycc7fnc4gpe9576kp4tcxtmf2x2fvek5jjr" - }, - { - "private_key": "9ba0d51a0ee390e00aab9d2e1e81a828bfbfc1d94d70d30cf3c2f1ad444f9313", - "address": "lax18n7s760d0vd3g7ezu2mfphf4nfznldjugsdvf2" - }, - { - "private_key": "9431a6eb22ffac7a95199b13c501ca2e7dd6b44a451464b29fc06789cec59e96", - "address": "lax1vlujnrpc2gc24z20r0rhvuf2q9sj37m9vgc97z" - }, - { - "private_key": "f7a68c9ca6ac5b412acb0636ad3efa84485f3548f61e2ea0151f2829328e0679", - "address": "lax1a4j3n0hreyx6yr09ckejavnyhvx8dwwtrwqr7z" - }, - { - "private_key": "38fac90dc079648efa41e8a25d4b798a939529ba00b2a79ddf830b69cbcc7991", - "address": "lax1sevetqlz6z47a8un9dpvvd3d8gml7akg9tzpx3" - }, - { - "private_key": "068c558b4e091822fe6e4c20da021e24b396d494a2b46391447f2bdc6b7f81c1", - "address": "lax1ashdwp44z0xfym6f69scas05pah68cd4enezj2" - }, - { - "private_key": "8623c02a40183c2905b04721f9e55777de942e0973b9844b141e830c7af381fc", - "address": "lax1k8quxjwvthmlc0chjwj7zeyjnxq86gqgg4nj0y" - }, - { - "private_key": "d41129b12afcf6aae151175f44ba22e896276c0fc452c3ca439feef0ed258f8a", - "address": "lax18cy738ppwjyswrwg3td56e87hhuja4n0pqa7ya" - }, - { - "private_key": "329ed1722a87e0e60faf9c0678464dccaf9fc774e126ce8f5fcb53c404693cb6", - "address": "lax1twlqdrjgedadylwzz3ycph9excmgj452scdfhs" - }, - { - "private_key": "11837351c0ae22ed10c344237fcad21f34ab0d88f92a0f508547e773a413cb5a", - "address": "lax1zfwgvg97fnvzzfh26udssk5vcrxmk0885v2lgf" - }, - { - "private_key": "17f9686e50e59acdb060ab2bc2cb2ea6c5a67ec5d0c93a30f553492cdfa76610", - "address": "lax1d8hjq7c49uep74dq8xt4jqdnxznvweupk495eh" - }, - { - "private_key": "385d1e3528ae919a110242674ab93e4501d962716f6865a448d6c2cfa4fb4afd", - "address": "lax19z40smnkx9g8uyvdgqlguyntwq2e4r7p78qtkr" - }, - { - "private_key": "9cf795466907e05ec8794aa118713abb8142a61b7c52857e4701a1b805837b5a", - "address": "lax19czlg6sw23j0rlq058rh78fpk2ccs5tma7mkeq" - }, - { - "private_key": "5667d33be5f675df9d113629c83beb19a0dfb39bfb44420920833e82a10050e2", - "address": "lax1y0qnx9cuua8823cfw9c69znrud0suzcm0lh8ay" - }, - { - "private_key": "cd0883f202334162bba2dd19555631b1ff11535811c589c805f4fcbcefbb9045", - "address": "lax17hgqzhtrdekn682mucw79spqwdz03z9hzl3dft" - }, - { - "private_key": "67c351a89bddb7da4ab45865e4844a43845f423e82524b32bb60a83452588d15", - "address": "lax1jawmas82nl0aysv3k96ca7g5fpvchcf3a200n8" - }, - { - "private_key": "746f20d3aaee5e3284899b2155986804ab4681de18c96c21454cfe2f4e403b66", - "address": "lax1cq8mvhuxcxrplu3n7l4hnuznrwvhtfh6778tcx" - }, - { - "private_key": "e7c523ae1f60594703c7180c1d60bb023929f8da4689a3baf7354705eb9b512e", - "address": "lax10fg0ge65ts46f098xznet83jxv7cvlpyrlqztg" - }, - { - "private_key": "8fa953130439825ec85efc1f1e6970f232d97d1aea4710e766090db2159f52bc", - "address": "lax1w9rg4rwz8husjwmhk7w7c7y2xhrrftks3yrfyd" - }, - { - "private_key": "af15aeee0ffae3a69e95fbf78e86529dd6eaa7999ac7c60e8ea412e07b2d570b", - "address": "lax1n8svqq5j6npxh5q35xllunm7g56jqfqtqhv5wu" - }, - { - "private_key": "be8fbd6db6c7952bb840e0868cbfb35061ba289b7b9b5e4d5db7be845dac8b29", - "address": "lax1hdke655jq90zyhydxftc0f43sznsf54hg57kra" - }, - { - "private_key": "57507de33db82fe3c23e3e6b6d085f9bcc14db2f05d06c0f0efb422001092c59", - "address": "lax1etkjmyju04v8acu6kx8dfw6km30le0p36m6lj5" - }, - { - "private_key": "afa9cc1f9d26230eee8018719a7e485047edbe3aa6673e631e7d043d10eb267b", - "address": "lax1fla393guv044jcr9clqxttezcpn3fffgaxcc6d" - }, - { - "private_key": "f87db0c419e9df6e452e425202ac94b29c82d17dd2d29e137611bcf4b14e95ec", - "address": "lax1nwnlz8ssjk0tqzk5u8rz5mzma4nu3aa30spf98" - }, - { - "private_key": "ea93cf578c733b162912fbccd28446c4947fc116daf2aad7ce2d41ebb07792af", - "address": "lax1wksavjtcm6zplmd9eglgqxw8efeqwrhjxd9nyl" - }, - { - "private_key": "4ae2d0beb5ba708169b612207c765c37dce7fea1b891d3d87de17da2610c2abf", - "address": "lax1u2r4dyh573qwmxp7jzsgcf4t88drvjx8yfmxw5" - }, - { - "private_key": "616540fbe75c6914dfd077968c3816c632d7c0e256874fb8a3922f14b6290584", - "address": "lax1ej0ycjga0xxg8mvv334e2cc0vd6fcvmd9ntf3s" - }, - { - "private_key": "462e7235c6f916ae57454c358134711d65d909741703e63f495a998dedc249b9", - "address": "lax10hq7fn0wrczarwwy46y5du0rvvp8grtqgc6sn0" - }, - { - "private_key": "68f6fe245d420640e661eead9e31cdd4e422f76b4a253abc5355b3ae70a5ca9c", - "address": "lax12lng05muu3g64usgky97cdf7f8d2ale05z0sx7" - }, - { - "private_key": "034d3cac966bee8d3c6af67f1a7078282b43e387d2179ad78f93d8c8e1427a32", - "address": "lax1jhg8jl6jm8uzhmte4u3vsrer5spkv6vwnfulvg" - }, - { - "private_key": "3e9137836b6b9936fd6359ce4f0f728db74bd5e96ccb51b1a279f19d7493ae13", - "address": "lax1tdlt3fqevedc3wpz582xlpp2t0utpcsjqrkcxq" - }, - { - "private_key": "4da1a5fa4c95dc16ffaf90ebf030a580fc5d908d8ffb8e23e4e18981079c20c1", - "address": "lax1l9z7nu3qnftlpfulg825fr8p0m804pvn9svmrp" - }, - { - "private_key": "4fa012c5949738b7a4ce0816e139b2755df3fa74f114373ace717d84df3d59eb", - "address": "lax18ve8va86wezgx4cp3lhjntth2kqvjugg3ly4sr" - }, - { - "private_key": "f9fae388538c3b784f97a0194c1437d6846501dafa0a9eb924b1c8b48e884752", - "address": "lax1zmh8fe0quef7elgg77dg8yj0tlytrak6cy3d54" - }, - { - "private_key": "7a1aca6e85694f3970f2c03337dcde62b5d5ff11cc6544f503745283c1eee409", - "address": "lax13f4nvyffahm3dh6nvnkyk2w9mvkcx3rj0tnxlw" - }, - { - "private_key": "6e673ac27d3c0b24158328f3ee8cc81d59441afa2f1b4cc381377b2cfcd10438", - "address": "lax1u0ref6dckwg9dd8ch5qnlneuk8vewg2ak3cu5z" - }, - { - "private_key": "679347465f2f1c6dd051e60da2be1a8a2b463eca107f8cb15ec0b62075b6c633", - "address": "lax1rjfrsqw2alddjfx4jupjmpgp66h3d8kk5t0lna" - }, - { - "private_key": "bf98bb13f82acb7b48d814be65170d36d55f5d0667227cc534cfe40ac2190376", - "address": "lax1fpzzv49njpcx7xxtrxqw5g220pngk80l3q43p4" - }, - { - "private_key": "fdef993f45fad5ef894bbb17060ae3077e9e6cdaed25cbe1ff15b94431cba07c", - "address": "lax1epucp8e3a2a7cvm5qwct2uttuzj73qx2khmcu0" - }, - { - "private_key": "f18ff2f5a8e0a05aaf0f3a4a635eaed848f0b85efb3ed3603d814eafbe05ba34", - "address": "lax19sgxyr5368upwaxlmlp64m4vfj4pzqapxpp72c" - }, - { - "private_key": "35823d3f2f9ddeac8a4ac348941f62b3fedab6f19ecca6c43d216f95160ab9b8", - "address": "lax1hzz6mpspl3nrskhwf80upellg5ej6nz0e3x04z" - }, - { - "private_key": "ecc3153c21e12f56e845ce18876f3084c9b9a42d0f312e5380de0e91d8458457", - "address": "lax152fjetpzjpq3eee3lw94ssgtcetmkhs6mgs43m" - }, - { - "private_key": "bab51f833b9743c5ecdc7eedbe25746d06d9fa17dda2102d892e33a0f1c29823", - "address": "lax1plgzm4v8q5fyjeaafyue5r5q3yy05uk7a6ftm2" - }, - { - "private_key": "5632ca0822e4c4b844e73f877327e46b35fbee98dc2be719f39c8c8f573f34b4", - "address": "lax1aqhduz9zrulctnd72tv5cevcmdeqzrpwffqfvs" - }, - { - "private_key": "c69a00fe10b770f4d2a8cc46a48d59c13de80d30e6df13eda0c86ee3fd03f91d", - "address": "lax1esflmfu77phxt96ax5cgad6stmdfyv8p6gcksa" - }, - { - "private_key": "7695450b9c5b1b61af7bed1a481b9080c439116d144b0c0c127081d48d2d92da", - "address": "lax1f7f0dp3j9zqq32wd6thj32lu5vmmqz8nf0jy40" - }, - { - "private_key": "628d71aa0c2d64684176746fcec5407d022ccfbea09b3061465ea32883b7cdbf", - "address": "lax1mmsfs75jjwj7xhzvyemh8l9xxm5rqzl0vdtns9" - }, - { - "private_key": "2bd58fa76b1059b6f51109c5813aed154479dc554d65a99667790df707630eda", - "address": "lax18va0dwr002u80807837dp8fn5tr42znhvu5gx6" - }, - { - "private_key": "ed82d51aae69b37ac6f3975ce6a4b4f42cc58982669e39f67b74139bb649f17d", - "address": "lax1u9gr5msfxteyaj46anahgsjch57wxlc60ns0mm" - }, - { - "private_key": "58126c49cd9c7ddda14750c72d92934f4d9ba382fcfbd465ba3e6f0055f96260", - "address": "lax1xfwq55r4a9pcp4a0zdrk5tnrtczzmpg33g3ddn" - }, - { - "private_key": "3504631bf72193638f2a63611d0816f975b5e0d400748bc03d2e0b79a83d9771", - "address": "lax1pmppqn36dphf0lzwa58kg4kumgzzxhky45gwex" - }, - { - "private_key": "788bdabc15655b3485fe10a88a56c88c30787eb8094a443c81d1685ee0935d81", - "address": "lax1zkug5rnx03v9qlzujd7te8ut3yf4t5xtsku7vs" - }, - { - "private_key": "5be4f9d4341d7b25ef0b222e1c5cb47ab8217a3e245fd34ab5779de8927c43d1", - "address": "lax16z89u6ucmwq5529ctgta4e208d6m64llaam6uj" - }, - { - "private_key": "56ab6ebe07c7311c8a045230b9027dfdecb2088dd5f97606883581e5ec5cbedc", - "address": "lax1d993mkke6p7p6hzguapywyhw5y7urfs8mqnlk4" - }, - { - "private_key": "ab26f410223cb445da4ad60b8270ac99f49df90f02d896531995e26408c32afe", - "address": "lax1l60el8s35qm3pv8cghwf6gelwlmx9ecrf2zu6p" - }, - { - "private_key": "f504b23f37574ff252fe25e613f56b5e0d6032b9c9dd33160c1a737f8a96a16b", - "address": "lax1uahzd5f9wh9dwg8a759kah50l70t630je0hgup" - }, - { - "private_key": "8c2b312b7e9ef33ff6dd1aa34e48b01ed63fc48799af14e452042a2cd9200b9b", - "address": "lax12qw6vm22m07cc67hjy625yu4jepk32u2uc5ck5" - }, - { - "private_key": "4393f36e7e9cb9d7f5c183fbbdde0f361827a58fa73eb35e65c33b9c4f2f92aa", - "address": "lax1x30e0e5lw9ky6arss2tp5jqup8zzcl9c0ejfw9" - }, - { - "private_key": "c83d0389626b4119aefc2560a6ed9e5e16a0ff48b21f9a60fed848345ab9cb2f", - "address": "lax15fzhgenmr07008un8u7rkg7t0jtmhk2vlpu5l9" - }, - { - "private_key": "751ca5e38ce51fd1f24137f828f1e0cccf7ee7b5e671370bb1b109b4fea34764", - "address": "lax1rnhrvw95gh0krk0r332uevjfj68qq4hxmrftwz" - }, - { - "private_key": "85c84aa8df4d6e918e615af5c438fc9a3864a6a09d56b28942d7ff3d23c12c5c", - "address": "lax12uday5s7pd0kltssj4wxl35gsnvz2334h7kzra" - }, - { - "private_key": "6522820d976866016b35d7a1a266227f104c3330977cbfc16239fc4801790463", - "address": "lax1v9pqa52lm699elu25nmr3t4w5nrxjyj6n2h0nf" - }, - { - "private_key": "162aa061a48d078bf25204763c6298d54e21dddb0e66449ab6fa979198f31e14", - "address": "lax18yewxlvwj45s57cxwnzsey2c9cqrya9lngcqw0" - }, - { - "private_key": "135474afdd785c95caf5859b51c82ae010140b4ba3d39eff24a31421de9032d8", - "address": "lax1j9pxh5fpnhgy2y8kf6m4pksa7g7raay995mfwh" - }, - { - "private_key": "060d57c4d77ba563244572463264bc0aae1efee64a97d4ac68df676ae7a274d2", - "address": "lax1532ppxxlcd4uwa29gqnllqccda7y98wj6uktgc" - }, - { - "private_key": "06b1b67280c4802bb64304f3844023213cdbeab2e319ebd1a81eb28abf1f5eae", - "address": "lax1cq2c5q4epnw5ru4ra5f978thv6qm50kga0mwqp" - }, - { - "private_key": "6c7b11a0edefa4563cb61f5a084c4f02564d3513c928a15d725522a4d126b3c2", - "address": "lax17de7rx0a3lvcqlr60y2skw2ssajffpa9ka52rk" - }, - { - "private_key": "748360ab2751f639a439a873868797b4072ca27e55230b1004e7e5366f1acc10", - "address": "lax1r28l7rs273tf4zwh3qw7ug8mwpavg44ynndl4w" - }, - { - "private_key": "62347fb6112be07787fee52192ff75f92d3d3cd0542f8d1b57f7c4e373a441bc", - "address": "lax1xcyrldyagj2r8dsw26kxwva5v8lkrczyy4mt0g" - }, - { - "private_key": "4486bcecd367dbdd64d9c3bf73d92fd79adbd1bd860dc9bd4540d60cf3aad694", - "address": "lax15ff0q2r6c5p7hjay8t48xdfj99d7pjt2u93nth" - }, - { - "private_key": "811d25a3fd381503f1f95ef17acf6c13eb16975fd462d20822cf5e3a275755e2", - "address": "lax1s23lxmc7l7v3jfkkgwvtrq33wppkdnmckt3pt5" - }, - { - "private_key": "e55c77b4b3f3608fbca7701ef33e58c87402c45184627ec2067dc553e9f5581c", - "address": "lax1cywtn7wfq6nshkdf0enzky04j29xmpp6emljsn" - }, - { - "private_key": "477debe98bb3a774696ee72158705b9fb46595d686109dfcec774a03a32db430", - "address": "lax1ew9whp3qe3m0yhxf7cuwwtcemd2pnk5cd6zdjp" - }, - { - "private_key": "a29e3030675c4ee0809cccaab056edcac11dd20b2bd7e929059ca786788962fa", - "address": "lax1306svf6ghsygez6wmqwq4n3dfnel7sryefq4yz" - }, - { - "private_key": "e058930a4657c98e5f653547d1019d60317c8e840816f9c81763693cfbe71275", - "address": "lax1krrwh8xf7f2xws4tnr9f50qxv3atxurwsk72m7" - }, - { - "private_key": "f45bd12fa1fd45f4f60daa957aedd309bc28af613ab85d9eb58a99a38eaa6fa4", - "address": "lax14zcprdss0hfszsjtav6n7elsktwsvglfq84q7k" - }, - { - "private_key": "fa7c21e07f69ee50b22b15fe9e6966e9dacd82491317133a11e5f8f1a3bddf02", - "address": "lax15x3c6wrqatl4runra7v6377j0qcyc3rakryl4m" - }, - { - "private_key": "dabe9d26c10f0c2e5de7162da980ac959c9d713f0dcbcba7bdf0efa22f042f00", - "address": "lax1r3wyjp0gmt5skvgh6ze8puq6xn559g3h7kj6jw" - }, - { - "private_key": "b6a28946a0afce7c52da21cdfd27dcda005667fe726ea978c195a782df4c237c", - "address": "lax1za8g2x592mss427u2g3v9yckatqtkfzu6ecgqj" - }, - { - "private_key": "0bf7536d3a7ff63a1e84d2c545e6e5cf434c2c88649b2fac40877add29b41c87", - "address": "lax1c5j3hgk0gvnuphrdkr2d2c83p8mhlyyp9r9yd9" - }, - { - "private_key": "2ff909c8397cfdf18c9d3f2b3b2436900a302770f09407399543877d2974b1a1", - "address": "lax12hse9rsznpulzhlgyfdlch30c3qpn27sxyvqkl" - }, - { - "private_key": "88f810f31424639426a6ae8ccb496897ddddf4b4d1c225ca911f0b0c2af98fa5", - "address": "lax1p9gjjdyupp70ja5e7mczlkejgcxcnq96rccvnz" - }, - { - "private_key": "0bb6c7f6accdb0324340c47a55cc2b33ad1bdf6fefc16406c80e2c529dacecb1", - "address": "lax13c5ufkgh9s3yth4myf6hw3puwqqhmx6ym7mua7" - }, - { - "private_key": "aabe59563cfef023b0afa6812a2d5c72cf06d9c152237990bf616f6a71b1f577", - "address": "lax1kcanku9ru9w25hnc6a3kv96j34n855ggq2c9g8" - }, - { - "private_key": "0a54ca89e1016f421dceb7b9b4ca8889b019bee47f2d067b985efcde247252c2", - "address": "lax1ldqtxwgkxweczr29xjy3cngdrtedshwqyqdyk4" - }, - { - "private_key": "5980659460c4886560a677af3f853e19098a157535b86260b26307f7fb854ae6", - "address": "lax1zkmdvl32907074u463jylqgs2hkw699dgj6c6g" - }, - { - "private_key": "29626375c23f13f917ceee87eafeb1bcd051031f2ce991acba8e753a6cf5192c", - "address": "lax1eh2vnwms6u5a3q727mzc043sl7jc9mvtzxsvad" - }, - { - "private_key": "5a358e5018dd3535ccbcfb50242994452ccffe3ed2387997e4fcb907a9eff12b", - "address": "lax1m3nm4ug60qt6dg3fjntf9dsfmv6l55fqt3tp0s" - }, - { - "private_key": "711208b4d872a05dd76e9b5921811476bbdf4348a57bb609bb676b10dd8684ab", - "address": "lax188k69vvy0vecyf4ptl0nutenrktw7kyrcl3m7z" - }, - { - "private_key": "cb1c01b50a433b073f769d33094c91c288d8d3a5c0c19dc6f4e0af7d975c3286", - "address": "lax1qt48nkmk6r9erp5rtuus45ugjudkf6e8p7y0ad" - }, - { - "private_key": "d6fd858de135d5965dd66f718e7ebb321eb9f059b44ee8305d459e37d78d8a5a", - "address": "lax16yj3n3ay3qf75avg2fcqrrwwa2l7vncft62whn" - }, - { - "private_key": "8607f66f7764b75233e34fed2726d402939d71855aafa8089cc919420a5e75bf", - "address": "lax1xakgce7grkv360x65p8xr9tvvs7j722wgngxdw" - }, - { - "private_key": "eb905329bf84a37045ab6254e7a0c4ae46676c64210308b486a7a83a1f290f71", - "address": "lax18xfavgf7khpf6g9gd58yp49vapkgtsg05kjhty" - }, - { - "private_key": "b6fbd5d82356490b55524a73aeab60d77e8d5c0e612660ed29e7a7e52c65ad90", - "address": "lax1z8am8ura3ycel00qc7ldevtx8qy7zye0j66j7u" - }, - { - "private_key": "90ece4bbb910ee1ade0327e4d19b5d6379ca820e9e583b4a776a26ce0daffac5", - "address": "lax199re7krra9k0guv97kmj02hs7zqcxks0r9qt6u" - }, - { - "private_key": "74aec6bbaaa4f3ac47df04ba07413c01b7bfb4794c4d625ac273a9ada56353a7", - "address": "lax1vhkfqed2wfedpav7uwaev38fukq2z7mz0f0vhf" - }, - { - "private_key": "905a9d54e3f43de8c140644ccf362435f380ded93a87ab5f14efad81b9ee74df", - "address": "lax12jpu92xy5xth2p6zqywryn8exf7euu8gv8vxwm" - }, - { - "private_key": "9549011d192a88339953ea675784c6f1896f9e3265eb68154b7079623bc61b23", - "address": "lax1wd76uahjlecdh26wtj8mljsfrfwm9q9a6ck6cm" - }, - { - "private_key": "3af90a994975ab4b99c0b50e47bf08a6fc3c6cd9d7bca5d7cd249f42e79262f3", - "address": "lax18us7yggzz8ja0am2y2pqxdndqayeq0znmpz4jq" - }, - { - "private_key": "4f65f7deb4299f2a0f7aa31b808e64a2993f6f5e013e8d24099003c7ae8312df", - "address": "lax14a48xe95ecqarqkplaw4xzrlkmyuc6vn8zj4dk" - }, - { - "private_key": "e06f6c52ba982338c5c93b15fe015af43ce30b4ac103485ad446a055792206c7", - "address": "lax145yjmf85wxq7apj7qy2gnjwk6auk30yml7nxkz" - }, - { - "private_key": "6163f6bc67949b5810f7715bffc9691cda8b4c48e381388590a1012abed14f53", - "address": "lax1cvlvs58yfaks07daa0eu99peqnd6er4l2a63ll" - }, - { - "private_key": "b3f7f146fc8a71bd4302e903079804028dff3140cd533a092e22b7dbdca4799d", - "address": "lax1tg33waeruc7lvexdkg6ahn72kmfu0p67dldl0w" - }, - { - "private_key": "864b33fb38602cd044ed1139ed2c2e3dc36f43b489e953b8dd119776e766c0ff", - "address": "lax1zcak2gl9pa94k5v8h5pzjwh86xgy5vq2r88fhy" - }, - { - "private_key": "c1ebc5faeb7c000d56306e27188370badb9c549bc1fd7af07c79dcbcd88beb88", - "address": "lax1pm7nx6kgj7p99qzf5knhhjepeqmtqnh4ecg6qp" - }, - { - "private_key": "8b44bf11249322e631b8de667d8853af3c2b410a930e4bf07f65a030ecdfa679", - "address": "lax1z37w0yrj805f6m902epr88kqa2fr20npaah57d" - }, - { - "private_key": "477543b139bb4d84fed88dba173f4bcd310b178c98ffba1c6ce8423b5f5c5fd5", - "address": "lax1knwj58ukdwf2kwpjq9sfgpy86l7ceryvt86g3w" - }, - { - "private_key": "abd1878933b60a6225b2aadf473cb86c12449e695488850bdb62c98cad42332e", - "address": "lax1kye6ndvy2w0dtdx7gc4hey0lnaff59nh6ky2s4" - }, - { - "private_key": "86596f9d9a7f8c7d4f17a4add434c11d3c5a8ef143187d9ab7b65500662e1d3c", - "address": "lax1akugq5y7yhf748v2lx46llc77kc8qtl372hjwk" - }, - { - "private_key": "6f534e135cdc7bb12a313e36417c51a93eb85d8f9a001afd23d2fd85b2892c61", - "address": "lax1khg4jj8dvpv0vkjyuntazw7q3l07zsrflyzzve" - }, - { - "private_key": "58808f75e8118345868b93feece69a6ca82ee452264be832810fd7f9a9ce3838", - "address": "lax124gzlvea6kpjs96p2z5q8ej95v9twdqd3y9n0n" - }, - { - "private_key": "3b20e653493ddd43a396081cb0148fd8ba43bf6ddf7971e07f6f40760b92a042", - "address": "lax1s8usf4hc8hd5aa2la89ujg9c0fmjt9dkrvf4t7" - }, - { - "private_key": "9301ae267178e8cf831a0e250bfca5a2d8eb7886b68b6903957e17d7de8d879d", - "address": "lax1k7dk39a7a2ud2mwufr8ynpsacm4fvdp6t2egr4" - }, - { - "private_key": "25069c67a0a1bbf5928eb355d94b94fe2ab6377d0a3f0c66e306edde7e54ad6e", - "address": "lax184wsc2lhzmf9c35lrzclxhutmdr4nqrg8rcf3u" - }, - { - "private_key": "277a2b71cf15b6354b39171c490f3fbd84c170037737a75a43e64b679f4856d3", - "address": "lax18nls7la692k2ha2mf9ek8xane9t0xg5xxexk77" - }, - { - "private_key": "724a2657d35cf2289499deaa7406181d23afa08067ea365b84f39711de4cf516", - "address": "lax1e5n0xfx3tq9jjzl77q7xv60jalqmc4hgcvpz4a" - }, - { - "private_key": "6bc89b830b5435877ae7723e3c674f2245bac2c2c25322d8a2e533e6f805121a", - "address": "lax1y3pnm3jxsg2a2fvtl3uxwt9s40ekcptq4fu24l" - }, - { - "private_key": "c2f6d0d966dee1f5e5b2a27bd907b4e8415296a27abc539fdcea7feef60bf4af", - "address": "lax14tfpaxdzwxfdpynhvp7z9xw74gxzxuchsu40zr" - }, - { - "private_key": "2249029dd74db094b18d389f70ae75061c6f79e32e8bcb35bdf49100df637510", - "address": "lax169c8vs3rsgf3998vyk2ndv3tu275vvnvyffnll" - }, - { - "private_key": "6c5dbf85d5e15e341eec6190f9e6ae9faf6488ec8f0bf964f494610a804b7285", - "address": "lax1283dtm9hdyv56dfjwlhazjkk9vg7ejnr4l2v8y" - }, - { - "private_key": "a176817738fc030fd16488de5e7733d64fded0ffbc763df5b37597d47ac49f3e", - "address": "lax1rpckjv5yvmnl04x6tjd5ws7wjq2x8q4jpwpyze" - }, - { - "private_key": "8c4a4b7f1397314aefcef9a98e2a35b49129de3bd05718f9b1025c96437d82dc", - "address": "lax1n0yah5hmluxplwasnevjj05jppvgkvajrydp79" - }, - { - "private_key": "4ba8fe875fb9781772c45d54e20e00b82eca522b90d7ae4c21c7e1ea5fa3b861", - "address": "lax1jxt2jlym5ppgc506kj2xj0dy2cflhujyq8404k" - }, - { - "private_key": "c0ef915a263e41836f2a743d5ffbf8977a875155fb08d620c508cc705d4bb307", - "address": "lax1qj8tsdapc5ysk55k97dtyky70c9yukdkrrms2s" - }, - { - "private_key": "8f472c212ee683b803834d2d106f6157c599b50f8a2522b076d84ecc1259bc75", - "address": "lax1cevnehu572hqawwnj4u3ltukpa9tx8jqfkyryz" - }, - { - "private_key": "b5698fe162ded1e6f5304d7b64c0e7868caa51f7739b2fa63111a6221c504cf5", - "address": "lax1x4fwqyqzltevx47jfk7pk4qjfct7s5z3que96m" - }, - { - "private_key": "ec397599f2615383000e1a7ce8181dea01b76a9a82ce1f16e6bf9b1cc9d3e214", - "address": "lax19dz4yh263297mjahkkmdwvvvtjzcp9c657g6yv" - }, - { - "private_key": "b30c2ce7d65ee17a2607f249e4f9c2df3e2f0777db4f80bb59189aa183ce0b79", - "address": "lax17x5pvc7g02q2ql0uhajncfyah0t3cetj804rzq" - }, - { - "private_key": "cfb1f0bd7fd5219ce1d765dec32906655aa7eef9f2446e79f648ececa8dfd756", - "address": "lax1z9x0wykfgu499v30atuzdd46fjtjz8queaqa0r" - }, - { - "private_key": "38647ad523de351d1f181897d34fe46841b2a76a75be0216b88f7092dd9fad5a", - "address": "lax1wvvyyudg5fw0e8zk7kqtj9m4cj87r4ew6qkg7m" - }, - { - "private_key": "be11cc420674aacbf67eb688fda009c638f17abf3951711e365fc2194b58f08b", - "address": "lax1jm38hn5wtaax8p2dfu80w8e7j2nj3lw7vetgc9" - }, - { - "private_key": "527a6e46c997ad6db7a1f652bd89b86d6769e829b4d9b3f66423c2498534847d", - "address": "lax198vlx8k0p3ta6k0jdkuymtuaxar6808xhhdyf0" - }, - { - "private_key": "adfd6f54f804fb3b3f4d74de6b136f28ec3b17046f22aa89dad5ae51ce94c012", - "address": "lax13h8u2dl9gjaflz7y0spkgge7v9r5xl0h7d6e4h" - }, - { - "private_key": "15c808c8705329b81662c8bd9434b93fa630bfb8458ee143b3a244eaa9923ef1", - "address": "lax1yrt7euzvfzsn9udmg2j4nw8vdw98737mmwr29c" - }, - { - "private_key": "a35355c3a3f8a8f9a4342cc6ece20b28074a5c8e9b23a18d7886d5410ab4dbd4", - "address": "lax1fuz64msu82dffhk5n3434rpzrf7da0f3fkqr89" - }, - { - "private_key": "880266307fecbba4a9e3ecae0e03b459a01eaec39dc9d8883e07be2bee6f8f20", - "address": "lax1qkrr7scj6g56739rj98xrdu0lkz6lgvgch9msg" - }, - { - "private_key": "7f21bd7b2076f8202a25513f70f2378743f975b943a7c7e9c1b0bf5072a35a79", - "address": "lax1xn6sml576h3rvtw578f2stzcy8hdl4h4lky8l3" - }, - { - "private_key": "872cfe09f83b14cd9a3da1c905f6a219857d7d20f4dc147805fc306258a1b30f", - "address": "lax18n6e5wwtnd33tu82a5lzh4elwtca9d5jy9dp26" - }, - { - "private_key": "7afba1aa90a5129f04ae11f53f8635fd9c91df5490a5b01135fe2d1d1425cfa9", - "address": "lax1xxd6lhy9y0hp9nne95yqmdp3v7wgtnrjjl9k64" - }, - { - "private_key": "9b5d0f9ada52c6cc93c2a386e9563ec8226aba2f5acc0070632b872a37fdfaf4", - "address": "lax1jzxvwnej62s7umrff0m8tmvhydgzz4guynup47" - }, - { - "private_key": "2abbed9c4499507fbe3b904ffb2b9cb33d70d9bec0af0e76df4b96fa4e990754", - "address": "lax19sjpsnku967v34n95m9yr0hpxjvqxjtmafp9ey" - }, - { - "private_key": "f1747969f4c78172e985353558cfb3560a5d86096b572b6970106da091d29249", - "address": "lax1xseea4lm73trzxu7erufcnf3nhwtw7q0kre7p5" - }, - { - "private_key": "5439a7c9ce4bc948b8b664b34dd25c411a3283880c4adf2e5332ab858ad30386", - "address": "lax159tzys3a6sf6xkr46k66aa5g3lhplfehq6g62g" - }, - { - "private_key": "122017380d76e15aa80104009c28bf4340283e53a47b7ba878d1a9918b235162", - "address": "lax16kzv8yhmnwpj4gwdpdyhagm2j4llpjxpcrn8mr" - }, - { - "private_key": "c1f0ce8caaa89bed0779b98550bce678a8ffedb8b4ed0825c20823231ab1f374", - "address": "lax1p2rwsz574nvf9esqjgwcgws5dj0u72pvu503um" - }, - { - "private_key": "42e4311e083b1871a6738571ae4dffceb5de094b8ddf513a01aa37b4564d7de1", - "address": "lax1qr8f35v3pqrnls76phmc4s5zpg5gdy3dxurtz2" - }, - { - "private_key": "97b5d8f5c0f0a5947196c43f645be7940afe9b3b49203978c26a44ae8318fde5", - "address": "lax1k4qdxqwfnr6vlymnauw8pg3rd4pld6qhyq4gfz" - }, - { - "private_key": "e9ce29646953af2392f8e75452823a2084a10000bed329943716d93914e0a9ae", - "address": "lax1qh4q9q7qpwum9vmw5yc7t3x6clahl72t6mehc7" - }, - { - "private_key": "022e1866ca4905060ed535cd11b477c00e6399aab39f2108b6883eb39f2dc22d", - "address": "lax1gk3l5hgz9ht7awa8mfcfku486hmec7garc77u5" - }, - { - "private_key": "355724e0a7921a8da14ff674708fe24dd0396600c6f7f2332bd5630d9a727337", - "address": "lax1zku7stt3drcsrw5kr3tclgjdgd3h3saycjy7nv" - }, - { - "private_key": "f4ffadc95c3cd0ad98f88b6144d934e37244ece723b81f32ed12065d1609f5c4", - "address": "lax1fw594le0rd9f8saevnrzngymjj2zg8e2fsgqt9" - }, - { - "private_key": "c9a70249a9860adca4426f054c9d6e4ebfa293053a9ddb4bec4ad9e63e8ed079", - "address": "lax1866j3kq933fm4wcz6e2z98mw6afj44rr3s9v05" - }, - { - "private_key": "19f6a09338f1e27935457677abfa8caa3f645178b03d07e93dda45218e3b4978", - "address": "lax18g3pgq9sn2lg4egnye4kp4tgc69lpw8qcyu7sn" - }, - { - "private_key": "4e3a82a86b95b42bf31523f53d8328189de055439df62a7fd3fcd29ddff8f418", - "address": "lax1x43yhnz6c6p7twvcxjckrlna3s6tkqrj6nc985" - }, - { - "private_key": "d143188c819d75c5b987476ef89933e5d572b2a201de7999bb8ae6720cc89f00", - "address": "lax1f48s8dnf584aqa0znwnkp2yrldxaakjlftlcu7" - }, - { - "private_key": "9e967f6ed1527f740bae95667cf4d1c1ea9c3b3190265a802436858f557a7309", - "address": "lax18gxvzznaup8v99exvzzw5jrmd0pnn7c8jwkfv6" - }, - { - "private_key": "4fcb65b96ff7bd8bac66c0f17a12ee28227216f4494793c85c997f11bac79122", - "address": "lax1e55sx4hvyhceeanhfjd9flm6xk9rdtdltpd53e" - }, - { - "private_key": "72a2cd7d6625ac2f059a07310fbab2f8c35bb549819f7e6cd0ccb860870595ce", - "address": "lax17rmjvnmudr869f365zslwyg93q0yllmp9y0r44" - }, - { - "private_key": "8236f3bccc8c861a5b1a9cda97507c6f8acf361cef73b34440347931ae6bcb13", - "address": "lax18yl9tn6fdd0v2vpqcecuxtejy8lrwrqwjfa5cf" - }, - { - "private_key": "6ed4581e01320a009c7956dc62bebc79969c548e9437786a47d6890ef17dbc3a", - "address": "lax1f59d9mcdjvxqsvm7pljjhzaa7sd4xvyzutv2yx" - }, - { - "private_key": "accedf490a832a2df16e66d09385ee799c4c946c8b23eaa09938580091f7fce8", - "address": "lax1se8xmlcnp8jll0xdvu9ywehsnc7wwactk428kw" - }, - { - "private_key": "0d594f5f461d00c01cec5a4501cce7eea0b1eae7887456bb152ab0515d0988a8", - "address": "lax186wyqgw2hkf90cnef8n60um3gkjjxhpsrmhfuw" - }, - { - "private_key": "f80ee8c5d1e9aaa85800622bb7760ffffeae686f20069425177cebf1e6c1b3d5", - "address": "lax12cexee78u5yx8ttkkt4n3u98t2pmnaslxp69hl" - }, - { - "private_key": "88b160f28d1c74fc500d58d6d39deaa6b4f9b99869c762c125b28efc5d105f3a", - "address": "lax1vqqpr2tudumlsqmcv83l40mkky9twxgct88nn7" - }, - { - "private_key": "c1a8c411b63acb39624d8371f35a4198ea911611ce21b644f6a40f519fcf56c8", - "address": "lax19k29t2cxz6v5am86zmk73qnkuspqqwpnwl7zzc" - }, - { - "private_key": "0bbca5139d57b8592b657dc4756d6294a23dd18a0726b666d5fc38da56bd0c89", - "address": "lax1q5f93z7pmep09995ls6kx74evxs92legj90awv" - }, - { - "private_key": "113a09ca478d1bee8b26d6b27efb69fb954fac1b127a58b42d91d195a7fd48e6", - "address": "lax1hrrwy2kdert2nns93v722rw9d0sxm0sz7xvpwx" - }, - { - "private_key": "0dd7e257c1a8c671a95b0a1be44a80937637e50869ef5395ae041360d0a3c305", - "address": "lax125wv80sz8va0kxagp7r357lqwdsurrq4ga0648" - }, - { - "private_key": "ec2b44018f3a23234f3a17bc2bd37cb067f1cfc7108c7ba1bd50fbead565c26a", - "address": "lax13ln3a2hnh0dkru97vpqrhet7v4zxqczn0epalt" - }, - { - "private_key": "08f08885b5e8cf4bf73c7420e83ce8d4b98c87339644264c8642862588541026", - "address": "lax1cz2adww9wgadw0he8t26yuk644xy62aw08q5pl" - }, - { - "private_key": "5e30601e84449502fe6eb200b13a24b018101e21898681d744c6a3a145b8bc7f", - "address": "lax13ruffpz4m3h4g20e8yevvjy90l9f9vjxxdaxvf" - }, - { - "private_key": "00f0d9724a7404c9a4512b224cfc6ec3b22339c1b733b9dbcbddcc279b7ae5a7", - "address": "lax14mxewywjfaaccq867a5daklzw88rda6w8ytj0l" - }, - { - "private_key": "de553c503cb54477d8161bd810695dd4a5af51171bcdd626e3f3ea8d3711e38b", - "address": "lax18v6fx93qxdyg04hycup7lg294cnlzxx5mx3aef" - }, - { - "private_key": "f35b072351b0ca0679adb02324747db364a9d4be735c54ca9f3add3770b9f045", - "address": "lax1eu3ttm3vzvgltjdwljlws0cpm5lz5h8p4rlm7y" - }, - { - "private_key": "733f7a33dc45a463a1a8c9e8da2e442347dc4c7c6e787826547a09e9209e1698", - "address": "lax135x8w7rzaq5cu7ttpu3hxfngmc3ne09ata8mne" - }, - { - "private_key": "16c9a9ba0c1fde350ab6b1de6f42793a285b408ddfe5a82837f2bf760c425902", - "address": "lax1tjmpr45pfq2u3alflv2ejfpy5g8n3330kzyhcd" - }, - { - "private_key": "f509887f4af0ead4bfec8b9e68f846277a561393ac7e279cd2884a34844deccf", - "address": "lax13cskex6hkl50q8a72e26nlza7ye0pmvk4425hn" - }, - { - "private_key": "f84d18c6bb75d617608ed7f90752afc929a2cb6570cdd7b064830d2355ec33da", - "address": "lax1lzm5cuk0nr0far8x85ammzm5zzvespmum8c2kc" - }, - { - "private_key": "43d7b058975ec5759f6bc282378b26cf358db593d6ca830c8c509da1ad2cea23", - "address": "lax1mh2rqp7qq9ecjnqqp8rscma6vcl7pkppegwmje" - }, - { - "private_key": "f74eae3d4320f71c93f8ceec46e7d63c4062d44c6f797bd96e81c06ed6c30afb", - "address": "lax1z8ll4s8364yu7cch2rlyq850w33gjxqcguf44x" - }, - { - "private_key": "e93d76ce2ae46e22d20e8a30bd7c5165a656804bc8c27441a8fc47aeb3e2f643", - "address": "lax1ch0u7ypx94xy0rtq8qr69wacfl643wuaj04s8g" - }, - { - "private_key": "347a58125d2a02107ad08cab2865855c9fdaef0bb152408fd89081fc01c285a9", - "address": "lax1720q2t3jgd439mzzsvc52lwld0ry4k54g2jute" - }, - { - "private_key": "3d4ce383b1f61fa6b3c1dbf1199447090fde064d849f71f15cc63f8ba0573512", - "address": "lax145nd2fh009kl8f6dkk0xkgccmg2lr9d5suh2jw" - }, - { - "private_key": "5b05cf7aec70f1d5ad623ee6255e558bec1f76f8411a5ad8f9b5f7291d7f3d79", - "address": "lax1gns8ymlzadqr2t92s3uj57egv7837j58vpk59q" - }, - { - "private_key": "ae7e4d342ca83a32e70cddf3aa805d545d3ffbf5a437e0b42075fb3c59ab1238", - "address": "lax1sekeqs3vs2k6af8y3wtfhlj9y0d6q9cxayv0j3" - }, - { - "private_key": "3fd6c44a45c4225fcfed23f648cb424db5e9a3eea527eb4d02c8662576d40fc8", - "address": "lax18p92tvfxexsgrvtze6rh0rrthnxt8yudgs8fzj" - }, - { - "private_key": "13c6ba56548b9e36510d93a177ee2ac9b722233a3727cfc3e00dd8f9cb6331fb", - "address": "lax1yvqkmh6xzyk2w4wtcq20uytcnxwr0efum7mepm" - }, - { - "private_key": "dfdbfa4522999c39dd5819ad9eba8505ac5281cc820eed04161bd9ee64ac890f", - "address": "lax1vd4xr06r7yx5zakk6l49v5j8m8hmq8gejt4dhj" - }, - { - "private_key": "98d316f9751648dea88c83bdbe02c1210641dc5bcd50cff2a5464783c556bf36", - "address": "lax1dc8s8a7etzypvmy5pupyzs9n3dje23j60v87ly" - }, - { - "private_key": "2123da2e9875f2b7a2a7584d04708ca23e2ebe6f63be8e6c79fe7c36e87e4b0b", - "address": "lax17lum7uzpup0kacg9wmfvg2zemzhd0jndrymghp" - }, - { - "private_key": "4431fc5d965705a1c5f52e5016f10b8d357a66c96b1ad46ad6f0c5da81f68ea8", - "address": "lax1tzx46xch8wvm75q8kwm3nwnt4vs2kga9q9d5s9" - }, - { - "private_key": "bb6c3ba9903ccb9309d60bea79dc1fa2a082e0d401adc2e94ac56cf695ca6d15", - "address": "lax1q8ujs3acy3v20qjk7wejjpwr69cjd8j0hhwgdz" - }, - { - "private_key": "10bb837c0aeef756b1c5eb0fe16b891bae1e8965d4ccc5b3b909c90f61f7ef94", - "address": "lax1qsxpvkecjhar2th9yya6htrk25jd88z2nfrpsv" - }, - { - "private_key": "679e5004dd2c5a257344fc2f476b615b3514ae2d69fd9a120c3df47065368f74", - "address": "lax13w7pk9n60mq0lw5whewwjjy2fvc57mayttm5dl" - }, - { - "private_key": "ff0ce0adeca9953ec4dda53249a22b062056cfd262e38c4cafbbbe4b87622cbe", - "address": "lax1ftwxedkhwuj054wtaaw5hrwwv9pm7a4e2kemxn" - }, - { - "private_key": "8e0b187df5e53ca73bd92ba8780dec2f44cda33dd134ba01252b61f7dff25789", - "address": "lax1r0f8tss52uvsgg6upgv0ts38mhvsv2mcuy8kje" - }, - { - "private_key": "7d987e7318e23d78cd1794af80f5b835028fb4a7720cfd950b8058edc464d9e5", - "address": "lax1fnd0ufvs8ekhehwvc83wq29aprw09ualsrre9y" - }, - { - "private_key": "a10e43962fafd479ad009655c64edec143f0988dd91879385242a54add5f5bda", - "address": "lax17xmmaa7ykqr82hg38t2dg8twr2y4yusjyl6527" - }, - { - "private_key": "ed6fc1e6cea0d8f8451516c816f8e0181340979ab050be1d30dd7e78c62de3bc", - "address": "lax1cr0d46p5v5nu6sw8slc9q5r2uvss7nl3nfxakv" - }, - { - "private_key": "0a44b8d096dc5f6f3451973e9694b14501fe79456123888e8764c72c0b8f27a3", - "address": "lax10zs4g736j8wfmqj37cdwwqzv08hap4a966r0ze" - }, - { - "private_key": "1bec160d138265f16ce7a9ddd1483893e97205a8b5c73549dd95aa68d4bfb3c8", - "address": "lax1r7ktaklm7rhtp0u9y70rpwpzprjjhaklyz3ta9" - }, - { - "private_key": "f032014606e10274d13e0e0c985d36d1cee432a4faeddb7d482ca3508846f176", - "address": "lax1rv6lly5sehcknl353whrnw4s7zh75rms43j2h0" - }, - { - "private_key": "6b936e74ea322854773da0ba4798005bd445958f0648a84d08821a5b769b0222", - "address": "lax1ms8p896d9tj65usku7pt67gn5g9pahm6egsm20" - }, - { - "private_key": "0a7e181c5e97c94820c838566e45d2457614d1710f3e09a4d8ea8f6b20c1ecd6", - "address": "lax16v2w65d6g873pp6erx5mpdnhq3m5u5777r0h2z" - }, - { - "private_key": "cde0155d9c1ce2f09264f150531f708c53923a7711c9df3f333e4826177f3c49", - "address": "lax1eeyt7j9kl7tvh5p09d8t2gh3j37pgwp60x3jhh" - }, - { - "private_key": "e6d98dcea8e379d88faa11b2528d61b3abe7fbbc8d9dce70a2dc6fa635207c98", - "address": "lax1zvw82a2xvmsk9vunca0556w7szej4z2lp3pn64" - }, - { - "private_key": "d3b76c1ad84261411ff6c3f8037f3eebe0f879cdab65b1f845886619fbf0c69a", - "address": "lax1sh5mrra9qp4l6guxlkwhwedep4hq53k4y0lfz3" - }, - { - "private_key": "52a0b7d9ea5fba83bdcccdafa5c5e1bb14fd49b80d961ab20ee68c4973ffc27a", - "address": "lax1c007g648wtax33ktsqc27rzg2rwrcv75ptxggm" - }, - { - "private_key": "339f759027316e85a17189e3f1320d3ca8f2b1581c7edbfa82c5bb7478921f80", - "address": "lax1n2yj9e062y9tdy52wenqxkvch7kzvaz2p4p4t6" - }, - { - "private_key": "660fe0de46d481ff17abbc84478f25c80e4bd6c2ac111266e7a00d6b66e85629", - "address": "lax1mhwgdfrrt8z7wvdn6zql7qtw95j0sz5ravz7d2" - }, - { - "private_key": "9313029d32d19ffe204af82cf99a54aa7d7bdb91ffb1d487721bf3ecaf295c2c", - "address": "lax1v9gx263ygdhhvmmtw4y54zjl9ulycw6lduecx4" - }, - { - "private_key": "f4479aefcc1a3214ef3e598149c461e0a7e0db0fe8948612044412e314b4d69c", - "address": "lax1n8xefu4e3y3y2nqvwvahmzrqanzae7fa976net" - }, - { - "private_key": "4cac28b104cb46eca60a485e8c928755634c3698e0a79ff56e2933ee7012d8dd", - "address": "lax1rtyjx9zx0n3vf7jv0xju7da65ljufpxd96m0j7" - }, - { - "private_key": "f16c3314814bec62d46cdf10f710dbda780adbba850214918b57685db093c4c2", - "address": "lax1r4s4tc3dmcck38tmdgqufxwur8z39xj03t060m" - }, - { - "private_key": "9c1efebd38efca73f2643478076301d6c28be3a4d57587ee0e7a86a2d8758fdc", - "address": "lax14akxe8q69ga700skp7st8770xua46cz8kl7d5m" - }, - { - "private_key": "3d64846e931d8feb32eac711192be075a3cddb29503e582cf8eb6fb1a1f26e89", - "address": "lax1x82yjtl98ycskwltn9xvk77pea9f6qmlmnsq4a" - }, - { - "private_key": "322ce34b0c0d45b56e53041432188324a9c0b6903344e4acd68aa12ac01df69b", - "address": "lax1du27st8f76jscagp66q5uguj0jswyadpnzfvw9" - }, - { - "private_key": "96c3714575859d2f35cff04d5be2289eedffba8951e34b0c6dfbaca0574af78b", - "address": "lax1csuew24myza9y3eup8jne5max2dd9me5px6aqf" - }, - { - "private_key": "4e8aeaddb575dd58d571bb4d731368a8878759e05bf531539ceb2e1214cc23a2", - "address": "lax1xtzt8ws9jf8h6upyw2fp8lfv59n60faun0l624" - }, - { - "private_key": "d3db11c418897fd91af4aee39099a28f31de5afaf069bd8f3247303fef4f7b13", - "address": "lax1psy2v0qy8enecfte49psgswvzta0aq6wn4qd3p" - }, - { - "private_key": "af6f9480145eb29efbecf747d0799b3466e9397ae13455001ed61f63e5d34110", - "address": "lax1y9c8xm3qwtss2hnu8gzygj72hhw0wt550lk59f" - }, - { - "private_key": "5ab2463d758c5e82395e9babf9084806f9234a500eb34ec0e6e142df2fe8aea1", - "address": "lax1amr930wjq38r4e9su6zu9gdxmu4pvkc2lq00rr" - }, - { - "private_key": "61f3eaec519ee48c9dafc40ba62c9ee5b01ce073f6df903989edbd77ad1b2919", - "address": "lax1dna7zdkrr5c2hskx88hnv6r6u4yx6ghyad5mc8" - }, - { - "private_key": "d76129fa7619cc8a4b57de18a188738cc0571a7edd0c9f936a008e477b87b692", - "address": "lax1hd5w8thpjqdc3nreq8gjl5zvz6a0695029pqpr" - }, - { - "private_key": "23a7e181ce0f8e742beece497ceade4e173a6473a153a5e77ea86d798c6e4ee8", - "address": "lax1ck0hk4c67ufclc02wwzltd98csg9l9grj8qxpk" - }, - { - "private_key": "eeba566096df7c4bae317ad1dffc56ee2ac72de060e0359c88d0e6d03979f165", - "address": "lax1ptl6huhm90l08ezmgvffvfw7ypwy647wfzwtye" - }, - { - "private_key": "e3017919151ce30dd83458090d9cf7b2b6610b8d8efd5917cd6b3a56d13c27c5", - "address": "lax1g4au75w6jqvzxul2y2y8mmx29ku0pamgc8vcxd" - }, - { - "private_key": "82007282cf3b0003885c2ae4642f29d16f85567c22a740369ddb34c538f639d4", - "address": "lax1qe0uk6s9x8xycfhx94gtft5tgh58rrj7y2wwzl" - }, - { - "private_key": "a8e2a5f100cbc5a309e023be477005fcec2ed40394aabee0585fd7788157921b", - "address": "lax1gfa8p49mx74n9wfs64dunhs283mazf28e0kk3x" - }, - { - "private_key": "0bdde051edd099b5b510930ca4f760e8f285f371b9e40fbec49bcca05c31a109", - "address": "lax1zeg6s84kvucjeelzarh5kpmadhhzmgkua4dwek" - }, - { - "private_key": "0757213e895e131282ebc4834e8832d4a58a1d6e94d06cf65f8cd16440763d0d", - "address": "lax1r90twy6cahl2f2j2zqtctf3mcnu0curw32yyvs" - }, - { - "private_key": "be577223062fcd4f57618a2fec1c05215c416c775a86b19cbaf4e86f0c9cee90", - "address": "lax104v4d0fhvgcmhf3u5pfenx5t34z7gvaecqrpng" - }, - { - "private_key": "89335ad1541eacbb8ba6c3aaeba544d480ef82d32741eed05cc622616ffa6a0e", - "address": "lax1enm8nk9me95wqy3tneg3eact88n8ywyv4jss7t" - }, - { - "private_key": "fcf080f2f980acf43feac316715111c9cfba2cf09c7c3a4f021f3612fe081ba7", - "address": "lax1pxhy4lf0qp4jhzej930a5sgdej7pspn5723lzm" - }, - { - "private_key": "f4f18051367e6036bec6667cc0f0beb9da4cf658ca58f9c1c222783ce5c3af89", - "address": "lax1h26x6f273en7356faajxrgvcwjn22ggjwjxjv9" - }, - { - "private_key": "8148db84aa493e8d6f78efcfa3f0e6ea271399d56fc47dcca327ede8bd15762e", - "address": "lax1xtsxm5704n9f2y9ugzh9swl60ghpgs99964cam" - }, - { - "private_key": "2cbbd99c55f0af32104f9e0baee9dec9b7f1653ccf6a1344124deef0e1b386a6", - "address": "lax15dh8f2ydkdnqppjunrn0xkv9er5eh5sc3d56jj" - }, - { - "private_key": "5fa18e1c9d08b3fa0bbf0ea4d13ec625210ea56d0a09f704fe4f56b16504bb8f", - "address": "lax1egtuqdlvzey3ufq6fzv0asmpcaf3u6gaxy9rc7" - }, - { - "private_key": "deaabb953b24b3d283770ac98e72eb48a6d94843793a77b0e1ff10845ed8a61f", - "address": "lax1g3eujwn74k3mqm623d5hqv720kc0hz8fpt9f6y" - }, - { - "private_key": "ac5ae77f53fc1ebdf60c4648fe9164037a1655a635f1c528a7e62cc965f8d547", - "address": "lax1ygqvwv9vx2lze6ghx972mns0jezrgcfmldkfjf" - }, - { - "private_key": "77d949de9d71fd456b403fcd5ad79d20dd0d231349127e69e11a43725c016d66", - "address": "lax1qurgdwcpkeg0x7c9vvxch8pdx052tzvcjdxrz0" - }, - { - "private_key": "d1931af8fbda78969cc881050e7c1268f0297bb7e46b2034b5232e8f869ec48f", - "address": "lax1hz25d885r0x6987tzs38krwmnwlfdwnwzdf67f" - }, - { - "private_key": "14c9263e2ac3d0aa1ed6483d6cf4663d6961e1d213ae6f30e91a56e1bef703c3", - "address": "lax1zzvkpfq23nxg78q0p7a4acyanhgtchsay5reem" - }, - { - "private_key": "a53ca1d520c45d5e961b463e8086d0a8a94dff5dd5be9e137f76201ea6ea085d", - "address": "lax1m76tg9gggfjf0tkf34v6lymq5wrdkcpnp2s9k0" - }, - { - "private_key": "c81ebea5ef713136fa4b267f619b85099c276ea02439c564c8660bb805c18b3d", - "address": "lax1sfsgltte6ykdguxpjmx99eeqttva2gqw6r27ve" - }, - { - "private_key": "3b90f5bcb1a0ec45018e0d23a0d703c39518c135805a729b2e49970621229767", - "address": "lax1k07x92727mgmx5nt503ck82hsj066599gw2fep" - }, - { - "private_key": "f4f1ca59b8d7818e9e0f97cf251213d5b6286184ab7d78cbb2e1a111204daa85", - "address": "lax1gwjv523xmqg0v4lgmghhjwwuezp8qv3xn6l0sp" - }, - { - "private_key": "adb3844dc7bc55976a020b047e2f604f84f4122a757ce3a62d5ab2c113732f37", - "address": "lax1c0az8ttd5rxuxgde5uxxsrlkxc4c8g5t9dh99t" - }, - { - "private_key": "313267002a217dc577c980956d129cffe03e0acd394a3b9f1c1c19cbb58dc249", - "address": "lax18lh5kymtq09krvwu04ad2q9sgpk389u8hxp3ve" - }, - { - "private_key": "da86744310102f250ce302cf720d0d7362a0e06dae3c0458cb0e5cb8a7eb6034", - "address": "lax1x004xus8900hcegx2jad0fqdel2nw84735v6rx" - }, - { - "private_key": "d679420a458043fcb6ce5fd049764cb04519762e573ca764a461e95e2f5987d5", - "address": "lax19k79nre9pcagfj2gs5swf9d3u3w6k46dh5d4z7" - }, - { - "private_key": "e0e4a32287331391cd24ab62416e2810c8bce03c3bd092e35d5beacb8472d599", - "address": "lax1g5srkeas4yxcqza7qv27ted0znwj8aljv53m62" - }, - { - "private_key": "00b660089815e7f78c6dbc677fdd3494825c69ca3415b292c3839c81da49acb7", - "address": "lax15x3kv0pc7cpt0c78us0wrmz77ttlt3y8qpcm5d" - }, - { - "private_key": "b994cf8f07990813b7c982269023427809fb059fa8aeca51b074119401b1d4b9", - "address": "lax153cte3s5r53a5rrtw22rnhtfnqxj57fyq4ejmr" - }, - { - "private_key": "e91995ce44218c7c791faea0cebf07b976899082ca31d3f11199e8206ab74678", - "address": "lax12ah3uk2km9zghlwwk4093mxpwalpervkgmcryy" - }, - { - "private_key": "4c53e935e47296eba44257f68caa735d313a28ff7cf8d85cad5503024887b671", - "address": "lax1zf02meuerq8mc7juf64d4xac5ddnnkcrtflys8" - }, - { - "private_key": "3c0aafd4bf21a39ef001519b2ac4d13c342c0637b0a7edc4a869bc253257d089", - "address": "lax1yqdw8sktmu57mn6al8hqwja0j0ptk4qw5y6zf8" - }, - { - "private_key": "56146b0f2664e6c5331f6b6a56ae2046b6dc3c1cb8d7d0cc8743d97f95cc3c02", - "address": "lax1wk3sax4e24330dptux2kefp3dr69299rjp87ae" - }, - { - "private_key": "dd9711b6455f2cc1b47b6252170c75b4d18d608310a0ac6f81a7592c31d9926b", - "address": "lax149qqcfnw5xgxrlaz7n5g4pmwdrlms3x73fec9w" - }, - { - "private_key": "0b5810a5b387f615c2d2f28cb594420d0a0ca439ff98d00fb9937cc08503d7ac", - "address": "lax1m3jydnc5jctteu3wyxsdjk35d6xeh7xgpzp9v8" - }, - { - "private_key": "ecf4dedc44a81b44a2904a5bb962eb4cc471b31136b9e82fe6879de6dda63ac5", - "address": "lax19caewrdq7kzgs76n8d7ja4lh565ywg8h6jk0rv" - }, - { - "private_key": "3e386baaea1cfe773edc5e7beb082e3b9170231aadf342ff1c5440022a7bfbcd", - "address": "lax16hr2n08m6khzj38gv64fxyevd4efxlx9zghpw6" - }, - { - "private_key": "2ddda194efc4d69a31a2d74931192b7fdc5600099418fec1c1c8ab0f4701ee16", - "address": "lax17w9epw0gp7e4lyxadld4vgc2jhc2tay065x59x" - }, - { - "private_key": "886ca9f277d820ebf5f56e221abcbd59608b8938eed1e334bfacce52bbbc48e2", - "address": "lax1nmnkndqgles9h5f20g7fxact3kh9knfmcehgkg" - }, - { - "private_key": "d7a95ad1f675c1ab5dfc440ef1468f09d010d83e52b6ecd2e95837972e5a7443", - "address": "lax1c5n3x3kze62lveed2j5vytjv9338569y0yxnv4" - }, - { - "private_key": "cbc23ddf0f0d92fe7ea916d438689622d6aaa47b545ba5829fb29f69cd43d428", - "address": "lax17y3pvacu47qufpk6tuehwamw7thptpf25dpmdw" - }, - { - "private_key": "011b377d0a678c2ed7a37a28b3f13bf8ba04a2cbdbbe94f7548f134426bec2ea", - "address": "lax1zlt54m2yr88hyajcf4tqyrx6gpspa7phv8x26l" - }, - { - "private_key": "ff73c6536fe87580fad33c22042c437afbb2f8306853b2f948df99a6f555c4fc", - "address": "lax16pgr0wpavar5utjc9t9hhnj9v7l9xehtma4hs2" - }, - { - "private_key": "69df177c7267327afa4e01c91960e7dead9e72ddc5fde38a61b8f338d34e7c28", - "address": "lax108h9qswjw864h66wjznf6eswpxxgsnt9zmw3ge" - }, - { - "private_key": "eae38d484f538dca4987b3ef11ebff5e491d04c5c1ee723b801451cde401366c", - "address": "lax1l95temzy5l074yfvln398sat3fkqwzwcyqa0pv" - }, - { - "private_key": "0eb022d7e91a606d0cbb851c6d558a9f36449bc20d3037a4e2f9387b862085bd", - "address": "lax1htv89wn098mejvdvh8yyvtv5m5r584ucy5sa39" - }, - { - "private_key": "4d6e99464eaeefaf982a76329b9d5bbc4972dc81361d591b06ba6cdc128cfa97", - "address": "lax15me0rdft475qxhzrw7n5qmuqhw2ma5wnd6ufcj" - }, - { - "private_key": "ed2d124bbf9e701e95728869570afbf89149a2206fda9e824c4a837d5575729a", - "address": "lax1qw98ja5q0v73ycrqu7pdw5w3w7vuheuh8dnjft" - }, - { - "private_key": "70672693c6a8be8e58a3c1d7d4366e427fe206200a1177ae233841b5fde64631", - "address": "lax14d8m9pvykvpejgekvahs68w7q5jqv0mqvdy4kz" - }, - { - "private_key": "94d7a46ba3c70b59ee46afab1e7d57157d520b3f13b56e31a8186cf5b1fa78a7", - "address": "lax1wed3hrm9xx8tf4uq8whyeq8860d29jn437uqx9" - }, - { - "private_key": "cab9cf328b8ddbd84dd5afbae86a2d207cbcd2ae80346f8304cb9b19e2e22215", - "address": "lax15ytkm7dkg88tqzu9yqvphtuyvukl59a7yet6gj" - }, - { - "private_key": "89a3a50ec74dc18511b364a8d1a7e4e775e6ace9c6123bf78bd3507efd602720", - "address": "lax1t44hmzap779h6fdshd330hm2cqpzgw3tc6030j" - }, - { - "private_key": "4f80c39a2d1c4615827769afa351ec18229430b6b6dbf0f3919fd661f1d3b603", - "address": "lax10t0svn8k7ag5vgc5dfvk5yjzp8zl74wx6u6e65" - }, - { - "private_key": "73ead1a75d702ab8cb5c83e0d359bd80b43c03d345d34720bec5c2f0dd1b7005", - "address": "lax19vylw49qegnn73lk048r45lf63dm6fu0e73dzz" - }, - { - "private_key": "5e4b08d064fdbf315d65a50be504fbb232bfd6c86a7fe1d599137c90e933c8b2", - "address": "lax1awnvpuzxulv70g94lxqml6spfmphemukkjg9we" - }, - { - "private_key": "47154ce80ff2b5dc88d23c19f8695180e141d8af7dad43ae0a30dc276f863a85", - "address": "lax1nqaw62uhemymhcgawepnuz2ydg57futlr5zcw3" - }, - { - "private_key": "6d058f671bab5185538ac4629e0d736d228f297a0074d365713da0c6ce858c7f", - "address": "lax10rzhnj0mu4l4yu4yaq72g5j2gs0prd9hgl0sj3" - }, - { - "private_key": "441e36e72da49fbc8e6d6959c2914ff96e965cc4771e90c3ecd4ea6e60c0c420", - "address": "lax1uw6z57murucucne98ck84hv86ggx87djsjkzlr" - }, - { - "private_key": "bd0a07621183f091354b7374493fb062183ce6cc97f54b44ae80276d9721fd5b", - "address": "lax1kmtl4zj6x9ms3e096qgjksme8vcxjxg3909u85" - }, - { - "private_key": "1efc1776f2bd2aafcba68b44f9095f3a783e1fd27d9f5702b39315ee97620d69", - "address": "lax1dasrgvztyqxf4qsy5j59wvj6wmzpccx7npu2ta" - }, - { - "private_key": "2e9728d1d262c36612e8793aafd62b16adff1a8e90078c58a6441ec1cddaa102", - "address": "lax17x85svzuy9w597lpyp8047yyr6nph4qxje80fu" - }, - { - "private_key": "9477a6486ff197c22996da2de9ebf79fede23ae9df9761dd1c7cb7a777f71bf3", - "address": "lax1696n5lx2pd5620hctlgwzaytx9v93x8ke080vp" - }, - { - "private_key": "f8805ab97b6a82c184c8bd8aa553cc860477d98edbb852de7393263b4a40d1b7", - "address": "lax179dnn6tnzny53rxfugj49elkttrsd5np3j5zsf" - }, - { - "private_key": "29f3ba048e9b8668a54c2d66f8f2cf57690675eecaf2c1c2bb29513e3a255b68", - "address": "lax1m7vq7y82s9hdmaqef9w2n2ygd8fs29qkhe6xcr" - }, - { - "private_key": "cc9971ebca603d5a33b085b85f00e1b18ecbb4ed028f11e7c2ee311bab70fc45", - "address": "lax13qtz0avvgtkh3vfw7r38t5dx75mzk0k26g5440" - }, - { - "private_key": "4eae42da3623223d99b134c6c25bf92bdef843fcdc7beae8432c77f3c3fe5afb", - "address": "lax13765jcle3809m8vam6ayq0fcswwp4nz3j0k0v2" - }, - { - "private_key": "19507af3f3516d95eb744889a62dccebda1898aa5054bfbcb8078c7e614b4b15", - "address": "lax1x09jeprmt43hy244dqeruxs6sv50hd7awt2fzf" - }, - { - "private_key": "85ba17c1cb3dfb0c7b96ccd136414150267373a414683221c37d2ab09a739aee", - "address": "lax1peth4u2qlp2s4ua4uw2tfvktyg5tvfrg3t5fgc" - }, - { - "private_key": "7f78f9c58e829d2e271a5ec86884e4ee669e3517cf0ed47f010654b493353a7a", - "address": "lax1tgfan6f4p03vz4juranvt9wr7kfhhydxz969us" - }, - { - "private_key": "54d7567997038509ab9921cddd4fa4e542272593d491ead5eb387617e5d0d049", - "address": "lax15x9d0dgjhkq38ry3wmaz3ut5ervvc0svyxvz67" - }, - { - "private_key": "776056d75ee6536ce5f8affea59698c1604e8bf76364d31db59d1a1b1828dc71", - "address": "lax13mc0zcjl4sq75hmgwxk9qsz2j7hg4h6c8evxwf" - }, - { - "private_key": "16236d04c70f8f69e79c503435236521c4633e0b8e994db206eecf15098e833c", - "address": "lax17ru5jq4e0lk2krndydgpl00lael2fg2pyd0gy3" - }, - { - "private_key": "26e4b20ddb03e49e46414cad139022245bc2cf3cd2c0661dd7710a2ce8b905e2", - "address": "lax1uza2hk8mf8c2kx4ethnf7mj5naqrldfw8qkrwp" - }, - { - "private_key": "c7c90f1d40c19c42d361c7b56c97d3e2c80a05c725a9ba511fe9933ae22fcea4", - "address": "lax1z5ym8f0p5m7usuy2fg3mtt0n4taysxkfpfftac" - }, - { - "private_key": "7fc1451897053f61aaff437ed984fdbdddecc78fcfb08fc695da352f1d45128f", - "address": "lax137c985w3j8qjn8mfkqpy348pr9u6jauv0hss5y" - }, - { - "private_key": "27e2835b14929ed9b7b31b85d6e3deead1388a8a0f5f461a91d62cccbc741c19", - "address": "lax1k5xjkj2wa69n5g2z4mcw55ph3utjvewujj3zfp" - }, - { - "private_key": "3e1ad591bbb9a030a32796b511e91f1c2e3bede6ee691d91429d09ca5c63215d", - "address": "lax1v68u3d0rm7enkp6hmhh3ue2zvxjjdffayc7jgn" - }, - { - "private_key": "eaa97e0c41b3720ee600351ce515c29ca5fab40f83bbc98e7b2ac1e2aa8b7522", - "address": "lax1d36u7ga8722tjv95xsc56m4luv0s95usggfzdt" - }, - { - "private_key": "0b3e518d4f880538108368d02c88b93002d4c63c6f307c2571abc2f7c725c2dd", - "address": "lax1625mcxd6shxtkmfqd056t9jf52z3kccyumgjfn" - }, - { - "private_key": "f1ce042674d01f19c9f31e45b6634db121ff02444a9820d0ab241721ec024f58", - "address": "lax102f6tr09sn76cmpzxvwfxxwzekztxzfj00k8cy" - }, - { - "private_key": "7e323e8294167129ed0b1178e71ec015520d994508d6299e37d10e89177ff853", - "address": "lax1lldqdv3rc3faleyvwwf8g7m38k0a7hh5nf930w" - }, - { - "private_key": "a015ebf9f5178cceb9bfea6542b1d68cc355b0cafd72edd56738e3246f800a33", - "address": "lax1wv42e30h920g89526rgr8mv4mapfkwx0velcvf" - }, - { - "private_key": "c7b83d4210686934eee9ce336ca5650743230d62435d6a1ee83adf53e0bc8953", - "address": "lax13qa5vjhz596tgg77mdpdjh4jg2v3j4l0exvt5n" - }, - { - "private_key": "bc92181d91102b939a3660fb10ae148c861f78e56f29832ba52c8e0837de7ce1", - "address": "lax1zruhrha2pg0z33dac580ytdjhwpf0aksrgmgxy" - }, - { - "private_key": "2f6fff1980ce68e82966b56ea80384b1e42966ae4a7fdbcb022959068fcc46e6", - "address": "lax16c7umtw88mmhcawlgt2w865k3ktyprtscl5zlu" - }, - { - "private_key": "7d4f79ffdd705606655ce8adefd433d8362bd1b6a397984177c056350da7ab30", - "address": "lax1pr0wyluqvnzzwvxznnkyu7knjl6wg8leutasxd" - }, - { - "private_key": "eafae14b6d8618b03b181f266276894da806c8ddf39b2dec8d5d56b6c19d84e6", - "address": "lax1mnv7ygzc2j40kpjamxskce08qa0w74wrkmd75p" - }, - { - "private_key": "96258d9f1a7d5703c6d38943524e2721cd75dfebc51a6a8433a8329856afd860", - "address": "lax1jcch36c0levv4fpv40rt7eeug52fnfp6s6agpg" - }, - { - "private_key": "8b6ee3d85c218e7495b7b79263bf8cf847a70ec5f31e0a0ce578e445b568457e", - "address": "lax1xhylcpn06zv0wm97h66c0cfecjtfn8kpj9da98" - }, - { - "private_key": "2a9d96c5db551c2630e46544bba034b5783a32656d4eb0582b1b1c06a852584a", - "address": "lax1a5mp48ks535fl6cd6dd0w95futrzm66gwp2stt" - }, - { - "private_key": "952ab77543e37fe135382028755877204b8c9f4b9910b4ee0b35ce004ab50c9a", - "address": "lax15wtdlw8q78cmdapw3tpc6ttqk69rjftfh9dcmj" - }, - { - "private_key": "1f7c913fb6b9aca4b7d72f7ebc2ec0930c278a20fff623005ad093ec810a1880", - "address": "lax1n0uxrldh4gwr5pq6l78qejm62svwappc05sm2m" - }, - { - "private_key": "1bd4bc58d6de7f7ebca1043e832ae7557f0bcb9eaca2e08da60a9e15a3706829", - "address": "lax1dysstpkunm5z54nk09qn9ulelc5y9970vplsth" - }, - { - "private_key": "47c3ffc1354477fb5cd21b93cee8fe5257c0f4e38f3b504bf3f572097f40dcee", - "address": "lax1rppjuy0lnc46ztvyz360crjyz07kkv6frv59rq" - }, - { - "private_key": "e601fd9caf8f00205c065b58e4e90edb109d5931a02bcdf3bf2d72a05a203c7b", - "address": "lax19e8m8kj0pjkd9ltqvskw2j9m2skz49cxfrnrtm" - }, - { - "private_key": "fe95568eb76098d48395399a60d996eeff467834188090daf8b21837a38fdd7a", - "address": "lax1mccrlqyq336f50jptpqfvzqnfk7x7lcanp9478" - }, - { - "private_key": "b3385113dc385aaa9cc56d323c7488698433d2ccd2c0ef3f04a4602d45b79f53", - "address": "lax166nsn20kymnx2pwx455jx2yfclqgwc7knefm3n" - }, - { - "private_key": "e6d51e206634197a5bb9f948990f9fb98373992d1a36c0c48df9c7519ecad340", - "address": "lax1ljfp0fk6v22cllnv3nxdgp7f78cma4rahqljc8" - }, - { - "private_key": "b1ce4e032cde137f3a281c135e1fc676e6ae842cbb6d485aeb0b0a8b5e4a685e", - "address": "lax1rhhm8zj428qh6nru7hzm4pcje2hm0y7pkqn6wu" - }, - { - "private_key": "dd3a2c64c0304bf2a130d818acbc3d36d77562eadc3c457b6d5d90840bb1003b", - "address": "lax16tz7kmngsveu5m7s2j5zvqkmy0lna8smwy7zdx" - }, - { - "private_key": "b1af39e4e5c0602423da28015c6ce9b7ae2db3c7a45663cfa5feec7e92547387", - "address": "lax1er47eyvlsqa8muslykrlvfduhdxln3wrns5ssq" - }, - { - "private_key": "1726fdbd35b72247b423e7dcede3141280770dcd9cd9f097d5409460ea064ab2", - "address": "lax1v9ttcahmx3a46xs4stefl0jlt9cscpa8x9t42v" - }, - { - "private_key": "34f5789ded431c029c2b03ef67ae84015c7378d31c3dd84f713541b9a7c223b6", - "address": "lax1exgnrkfpttnvfwc760n5nqmzar9sx9vaykp7um" - }, - { - "private_key": "1a55aa34be7eac9b53f383878099838df6dfc58164c10d34cfc24623c868a451", - "address": "lax1wjhsvn2q0gzqayjeu9emx580n04vrf4g09rlcz" - }, - { - "private_key": "d38390ea447194127829a07fdd69c48dacf9a23b778df0ef14bc5c944531c837", - "address": "lax15e7gk22rss9xa2m5xhjjhfckk3mjyfzjwhnfwj" - }, - { - "private_key": "6b89efe1713dc4dcdb3e70ffc0835013ea90850f008a6c6474d2407035060052", - "address": "lax1xpr74xuuzhul6qlwmsnqrh56z3fmamccpsj448" - }, - { - "private_key": "723c4880ef23eeaf9824fe4e81e369b1ac845e96ebdbcc562c18c51a9d6fbbed", - "address": "lax19szj47h9xq2phaxc4r6c3822cnf8wzla9syzxu" - }, - { - "private_key": "23e9f96747e27de2c1b697efde5b5d078a3fb7c8709c291a8fb01aad381610bf", - "address": "lax1athp0nlf3fmxdhvt2dref7qre0dx5j6dqckf6s" - }, - { - "private_key": "9aa158548bc31c2c376fd4a44525adfda6e26ad965c40777371f7ed2703685f2", - "address": "lax1804zyykqsscru0772w3t09kfxmh99dncevpn0e" - }, - { - "private_key": "78f01df22b3fcb15030d7833da71676d8768fe827cf4cd37ce7ad9bc32707adf", - "address": "lax1ey6sstlwcqty3fzatcv6d9pv79jcn6ymew00cu" - }, - { - "private_key": "a728c459c0a5e3839a2847e75a52dd98993eb46d9d76b1ca22d6efaf3524dd80", - "address": "lax1qvx3fulkwq0hzfl2axnl6yg0kdp6s4pcc46ggx" - }, - { - "private_key": "9f5d7262b25a15719a7616095c89bb9d7c48db0a8b1f153ba1e2b43a8073e899", - "address": "lax1spdss6239d0qu7mjypmsql4t74qxk0manvmvpe" - }, - { - "private_key": "9a8b8bc5bb3297938f8fac9339a039a714b4b8ede8c339e097e611f781efaa55", - "address": "lax1uzn8hltyxhtl4qzhd43xg2fn47szc3s2fde438" - }, - { - "private_key": "54ca981b1d25cf6080b19160383fee4f9439c4783591d40e385cded9c592bbbd", - "address": "lax18m5gymmdey7e66druk6j0jwdrn0tfecswwvk7s" - }, - { - "private_key": "a314b43df5ffbfe30b83698ccaf6617991798b5ff9e8e9036efd51379053e699", - "address": "lax1d829wxg2xr42geqzvfdfw62cwdvqjdngpqa5ey" - }, - { - "private_key": "3066ad949c034c3736017f7767be35e8c82f41cdc7efce884a88643e07e054f8", - "address": "lax1cdryxwea7ndh5t4qzxj79mmqydnsu52e8n8at8" - }, - { - "private_key": "60275eba9b1e951c1bcb5e33bbf228ab226c8f27adca3d4150c6ec1a6426fd0e", - "address": "lax17tv85s6u7s4ysygpkaty3zfnp6hguwz4mq6y3v" - }, - { - "private_key": "a52b94b24d41b92bbf96998be975a212d5128cb9b9e01fe411e0188d6b3632f8", - "address": "lax1lzxtguew63s2cz9elq6hgt03tr6ew55qdys23q" - }, - { - "private_key": "6a132bfa7687c71f975057616bdbcdd552f023528f83eed810f0cae820e1ab1b", - "address": "lax1lcccushuc0dydg8zpwucl2trpq3x8l46luxyns" - }, - { - "private_key": "27876b93dc2c535a140e959f292508508fe7606788526e70686c50b7ffe3856b", - "address": "lax1yyfhwndlflz8jfh3wvqs5rq753tyxpmrvfh29v" - }, - { - "private_key": "d4fa50061ac105784297846df37868182c36545b1867cf6a3a04a0459e0a2df7", - "address": "lax1ehmj46zd23gtzcfu34mrgpcjwv2jx4j79pqznp" - }, - { - "private_key": "ba06229e353c62b4b0291919d202054b718a2bfdf1e44887baf8483b518097af", - "address": "lax1a6hqujc5c5eewydw9yvmv4764cpsvf49sf5a9a" - }, - { - "private_key": "23f83e62247bdfb316a0dc7c5773c80ce47365f84675dcaae6ce3c73f4c38979", - "address": "lax1ua8mm79u9m9nka8anvyfzdw4up6uchxxnhsp77" - }, - { - "private_key": "30e09db8402550b4558ce8f341f5ffb871b84d4159f1fda1394fb59dd6f64920", - "address": "lax1qpnpj9090nvzkev9unncsf03dfkvhdpgkmskjs" - }, - { - "private_key": "5925736cf6ff5c7748511d49d1f5760a88381e26b5d706641a2dec871a331d7b", - "address": "lax1tvu6asf3ktv7h6e375fxlfktcdq4dnws8ple4l" - }, - { - "private_key": "d8b220994af64a724ae57a65098cc4d04040cc19812fb1ad69508fbd24e62c8b", - "address": "lax10tcvzwcfma0vg0uy04fv76pk8zjq0xzld6fy2f" - }, - { - "private_key": "b2aeb2bfe474452a748bb9aa6cf4f70152679fbefa29dfbcc4ec34115ee178b2", - "address": "lax1z5gfpjg6s93dh4x5cejjdmp5tlgdn009q40qzv" - }, - { - "private_key": "d69cdde59aee22ee7986845930429225794776fd5ffebf527d75cc5058baeca7", - "address": "lax1e9x0vn9c4f48y9dh7nw7xjt787cxgkz3mdcpzj" - }, - { - "private_key": "3751b31bcbc9dca60a5738a769bbb8e432e2c91ed0e783121a3867f9198054c6", - "address": "lax1hnjeytclglu876xdqg36rerh78t66sdf2r9mwu" - }, - { - "private_key": "f62496c4c04de4308ead44be72499c9cb0215af26bb1115bc72e3ff5c5a376f4", - "address": "lax1rfrhaytfqq584azy8xcvvlymc2lpmsxkctcts4" - }, - { - "private_key": "4cf01a7d824db25d2ad9e45667a4cdedb6c86005d3fcd58e98d3cdcb389885f8", - "address": "lax13dnh8xqus27z3yt645gye0ytdz7xyxwf9zk64x" - }, - { - "private_key": "c85a601f640c2b4982b4ad6380131779acb8cf1a1d671ee7c91f1fb1c86eeaa7", - "address": "lax1960q6pxg47cwkpa40a6jlahd9he2l4kaykra3j" - }, - { - "private_key": "8cc7cacdf477ed14569c4cd87acec4b696fde4da911adfc5794900ba91508382", - "address": "lax12q46slh9eg6guehx3c5ya9ur52802pet8r9rpp" - }, - { - "private_key": "42bbcdbf584b506df5d792bbdfe3a76befc2485eaaf7d484bb2d2f46c5354024", - "address": "lax1pr39d2fwd3zx5h4ffjh4xldxzvec6rdkmuvvyh" - }, - { - "private_key": "7cdd240f356f49fe70cdd6c00db96ebd4fa1a24762b47ee992bb311f160fd6fb", - "address": "lax1z3xpdwkz0kgvqapucp0dpw5yzmz6mqm37w9sye" - }, - { - "private_key": "98a95c3de3d388644d4ca4af1db6f651727b8ef582e0571483acdb1b164ce65b", - "address": "lax17lal3t9zcwqcwjcp754gd8chuksllg6cqnke2x" - }, - { - "private_key": "ed119e2bed8042968212a77cdcef35bb5636b7fa7bf41801b252a0112177e4a3", - "address": "lax1qvaep3hkve4px4svd6m9mszk640kk6ep43xtfr" - }, - { - "private_key": "c430b96207b9d0ee9fa42620195470cc42f4ace95287996e17e365b7ae8397dd", - "address": "lax1vdthlc6ad7u76y07a2gh93yszd3tqwe6sz29l0" - }, - { - "private_key": "769c055801dd081114770f4a754ecb9896a02a1ca947e89cb14f80174099ffb0", - "address": "lax1aft2dsqya05zqgy2fgzgrqecmz7aj00smqgjkf" - }, - { - "private_key": "4541c933d5111b61c68ac23197e7f7475e063ac68f89fe1ea201288b62fc1285", - "address": "lax133yf49277nadw57mah4kn9saa6qtdcgrm3w5t5" - }, - { - "private_key": "643b80340196ec8bb04c0251e0e564c4457ce253f444ee4b2868ed7db85d5804", - "address": "lax1xmvdflcd58cvsqy26rz6w599pqcg4lg63qlduk" - }, - { - "private_key": "31ddf8e4b9af009a3c9f95325feaf7b23076a018673739caa059feac26b3cafa", - "address": "lax104c6klq9grctkf7genx5hkzlyk6t878xhlu6el" - }, - { - "private_key": "d28a22b40637e047fcc0532dfb26d4f25d95b14b98c443006fb2c8e2faf135c5", - "address": "lax1e6jf47js3cfqpdgc9sjp835v46wc676zjae50f" - }, - { - "private_key": "b799bccc1b10107082df3ecd3a98e7940b8ff60fc8c721eedc78abae55c25853", - "address": "lax1lg9l3qel4t66pshqxjc4xhp9fh3lpehrk3qm2a" - }, - { - "private_key": "7ea756c4cb4cb891b50875235314229f4708109bf6b0725860d8151be3e4dc55", - "address": "lax1phjhwlk9q8wgrzgsq99uc59ax6q07pk3t5z4mn" - }, - { - "private_key": "dbbb63c15644f99aad365a5af2a86fe0d2810d34eb6dc7aee2ccf40ff3bbe707", - "address": "lax1x99k4g6mvk847u0t3ls3zwamvkqyxqz2mf8z3m" - }, - { - "private_key": "5d4ccb5d919093da313b5a1cb50b0c7dce4c141e949150032ec600ce9be7049e", - "address": "lax1kk2ddzaf2myqtwcjutm0hg99dfntdyvppj4mg0" - }, - { - "private_key": "6993fe797d7da96ee1f878571a33d438d1114ccb17ef580d628f1b4793fd3ff9", - "address": "lax19a7n3ge76dwe2hz5fw503wskznxlqhvmgy58zc" - }, - { - "private_key": "71fc078a88f51d8683462335c21b4442701b5d7053e18a3263de59f6dde0cad2", - "address": "lax155dky7vhaq80rkavmshtmxmnakcwpsgpwflzq8" - }, - { - "private_key": "279f293a30c370b9de88051a1aaeac05f26c74bec42f6d871df35ef4ccc6e3b7", - "address": "lax1s3ghvwl9qqmnapfr0tg50rx8wa4d0dwl0ckwjm" - }, - { - "private_key": "9f2dfdeb2218ea5ce9d3997af613fec4703d9b243c29387a2543440859df6250", - "address": "lax1sn887urkfkvhlyl5s85ujtwepkx9ell6j7j76e" - }, - { - "private_key": "23ca3a4b915d4409317f8f5e8d0dee2b610ce8fd8fa6d7e6ff944b3e08d41b5b", - "address": "lax1383wuwjzs2ngpd7l66rhx7thxyk4x9cjllzj3r" - }, - { - "private_key": "8077d25eacfdd7d9ab95da22848695e657b4e4aa9366bc815be1fc8246bb07e6", - "address": "lax1ceyjp69xh58kqhe6n2m7yfqaud98vq2kuuwcrt" - }, - { - "private_key": "dae9b16aef4c1752a15575ee8f15199ffb511f74355edc2a68bc45c3b7b0f1db", - "address": "lax1px5x95uznjdt2sxhv66pz49n56yxmncc3p84jr" - }, - { - "private_key": "4936c684487cd436ab05c08657882814b56a3786044ba17a99358f7d04548c32", - "address": "lax108x38hutepjukxa7zmpeyd68c7qxzvml020dsp" - }, - { - "private_key": "d34b6f03ada718ad72fa2f596aa1cb9c1bf7cbbbd5dce5f533643cda4ef78c98", - "address": "lax1zp6n36wykvh7tff868894h3dw44eswzvz5jwhx" - }, - { - "private_key": "f132817808f1dd702fe9a58ee8381d1ed2fc87bea75db80e3ec6a7f47caa34c7", - "address": "lax1ktcwlsmvnsax4p7002snmauzhh470ndxevc2zl" - }, - { - "private_key": "8db2f3353a7023e6e8951340ddae67a4d9296a983a15f720d0b16d4e3c8865af", - "address": "lax1m999mmj58dcr8a72hachs3gqgamxs43gql0cd6" - }, - { - "private_key": "85e2e8d5c274f84572f1219b1da9efb54702344829a0e84cbf12144f06c17dff", - "address": "lax1zdqhquefxdrhss73sv56kv92cgl3m2dr8wvvfh" - }, - { - "private_key": "5caf9cd204130b5811fb0cb1d89fb1adc55e85e117301d728dd7f7f78b03eed8", - "address": "lax1z3e0pehclkkmetje87ry7hgdlxrhvxx7dlx9qr" - }, - { - "private_key": "c61ac2849ba36a3ad62b3e8915691cd403bcb559ed3ce1920219db6e9b87fa01", - "address": "lax1xpvvgwltc0gfv97ggawj3qeklqpfuq2l3g580m" - }, - { - "private_key": "0ea8665588817c0eec9254517675e6bd277631848b3b44c9c2b4d9c53beba3f2", - "address": "lax1xvkzvzh952qlc369pmv5mz4z53fv2dpz892yhs" - }, - { - "private_key": "a5bbef6d08d0c48d8cd71615f8fc414cf9b31d7b833e2b4880944729094e689b", - "address": "lax1dcpspar7dnu8qp0n3g95lylx6ynpxvfsvsyk4f" - }, - { - "private_key": "c0988bbceb947de86c4a950815a5e1453ad0586a3075024e521a1648b41c74a8", - "address": "lax1paa54pcmjr8c2g5tf8v7vvu4mha0z6uplqawze" - }, - { - "private_key": "1df73334e6179dda1ef40c3ef16169bcedeea012c7c01a66283e4c4dcb94c29d", - "address": "lax1d88tlhg4mv2cpx49umhtk4c4hu2d5etf0jkdgk" - }, - { - "private_key": "c7d397cf2f733ec2470fbeb2329b5bb2179d82c0547f8b88e471dd1fa4de2c3d", - "address": "lax1g75dr9m903wjp5mldd68kapwms87zlfdmnelku" - }, - { - "private_key": "cde3b3d31a40435ed8a184d0fe38cf6c5d1f4a01a67913574fa57cddcd950649", - "address": "lax1ctu06kacrv8npxn5eeuse9gse54uxffdad5dvn" - }, - { - "private_key": "2bbfdcd2bca6023eaf1ab1583e62d2925fa2addfa8531fa31dc6909caee01f6f", - "address": "lax1nwndns2ym8cmlapq5t4gda6taz6qqjqe3j0f5p" - }, - { - "private_key": "385bd01e0ee01c108d0a0bf820177e2cfa619b20abad9c12a26b1c72f10ac579", - "address": "lax1e6jlcz0vq6a0qpzhjaw8gfnjxenaypmwctjpyu" - }, - { - "private_key": "b9c6c58612bd6841d9d9e77381c0109f9993da1b464abdee40d72c0544c70b60", - "address": "lax12r2x3ayzlxpmqppgr6s02gxldphsx2sn99etxt" - }, - { - "private_key": "26544ed1cfd2a5c6539c71e098b337897b0dd96e960c550774252f1c72b98cdb", - "address": "lax170mlnqp392uus49vdxy75x6v7t0egfatkwcx3s" - }, - { - "private_key": "ea748b95e1f972fc98ef83d5e6998d1c5f297fc9f896fc375650822a1f7767c5", - "address": "lax15tw6epex6ussrucul9fdf5qv2wfntfslfej5mg" - }, - { - "private_key": "4d6ca2dc4ff1c6608c4487461a772316a720c6e49a3219b770853ca5bc63a33b", - "address": "lax1x9jlxaswtju7zugvxua3hdesxqs5st4c5razfz" - }, - { - "private_key": "32d8294db212b5de3c6ff0795a7f66174123128d17ee57658abf47eb9a93339f", - "address": "lax12z6hkaxs8jr24dwns9yggyy624ezdam4aj7ytq" - }, - { - "private_key": "0293d10317ec4d721e1add08501d1588ae4286104f269e7e649570a19dab0cc8", - "address": "lax1l2p2qnz4jpdxjd2l4py37afdffjwsme9am4qcm" - }, - { - "private_key": "c08925d69356056fcb669f03fd9f4c33e436d75de085e048a21e4e9a4c665705", - "address": "lax1w5hrphk7uqcshxjgr7cynt8um9zg0pn04ymksq" - }, - { - "private_key": "a7658e058e396fe52d974f9442739dcb971a96755665dc27a4710e16ddb63f27", - "address": "lax1ff0l2wcwp2uy8kr5hc5t3thas7852wwgw9ekxz" - }, - { - "private_key": "56541bcf618f61274a5c37996a0d8400ddf738e40de5920a277de45348875a3b", - "address": "lax1hu4mrrdh8tf4dhvln832k8gyfksk070d8rpm8t" - }, - { - "private_key": "d8f6a3ec7eb744ec89dd51d65fa8d08bca6111f928f52ad50de0a33db8454943", - "address": "lax19scz7asasswkyceuj2uqjuxttcfcfjejn867cc" - }, - { - "private_key": "e5928e1b2f79255f064e91555c7fed55a2a888f811ed98701a0e92a24d807ce2", - "address": "lax1wxcq2j5wah9jturu98neqyjh8kgv9de4tym4v8" - }, - { - "private_key": "69bb2331494cd28e1f910aef3c43d5b0ef7d3ff711a3e8fe2e5631edd59a2864", - "address": "lax1ys4fpchtp8uszvjmyhzgn475g93ypztwaz0znh" - }, - { - "private_key": "07891e6f9b69ffe41c9c437afd847f269cbce2f326de704519a9756806e195a7", - "address": "lax1twyvhq8m0tam28fh708nk6zrmavd2vskc90rsf" - }, - { - "private_key": "ccc48195add55ea3f2c901bc5605b34443bbc69f713de3ffde53076138efec90", - "address": "lax1vepcrpap6z562l3nk7x9qr8jtll24wr6x3ee7p" - }, - { - "private_key": "00d402d64a2044c1c7ae1297b8400b2b6343dbaa5bbd5890074bf1bf1a8e4e22", - "address": "lax1udxcxn6azvfxa4qf5wz82c4hvvf7vzqvcrngge" - }, - { - "private_key": "06e5175379ef47bcdb2e3678ce37f1bca8b97dfbc8449b35e3c76e7877976316", - "address": "lax1pffcmfukf0n4tputwqu0gns9pwav0vxnrn2ukx" - }, - { - "private_key": "89fff0c0f32e6cbef2498046b4e0d5abb319a4db364decb8bb8e3dfc10d142f9", - "address": "lax1xtrcnpvv0mfkg30wkkjwsqn7kc8aq7y022zuzl" - }, - { - "private_key": "36259f333bc30498d2c5bb5f2d67e2b4e63243b7df8c8a76971fd4cd7f033389", - "address": "lax1n5mnrset6882ap9rpne4jfschl3zl745ljdr0t" - }, - { - "private_key": "c285b0930a20cc70c9181ae29ae4145cee685d1b5e0b1b76bce8b00af8741f53", - "address": "lax1v3af007fen20kq005cvt99ef2cfdkhyfpp4s6s" - }, - { - "private_key": "05bb3d844088bce894f562730a7c66537e1cd9dcf2f291283e1e1797ca03cc18", - "address": "lax1zd3try0cuxk5hjvepxjzl80yfzzjg2tq7mn5vm" - }, - { - "private_key": "c64b207e8dc8f03a92dae4656fdb9e75c87bfe556a3cb137ceb3eecd59b5f1a5", - "address": "lax1qm7ex4hks7yusxyxek0kttdxsxapuq7zyjng77" - }, - { - "private_key": "49f32005b2cdd22f72c1a9692198757821d8ea0bacf4a4ae4316d033b551b89f", - "address": "lax13rx8rmlympsds77xdsnyw35224k7fcefc2et6d" - }, - { - "private_key": "fffdc7ec2323aabbc99f44eddebfc56c09559e8694ce09e8d59701dc861af4c5", - "address": "lax1pqfhcklyz5h2qlsqsfsvh8hxanmuvuqqm895aj" - }, - { - "private_key": "4a09336b65a8da15c90e315c48f986b94ba21d9bc944507e5f6b2f6d856a2ed9", - "address": "lax1v9tf52jgmnwaewnw9xcz4dczp6gw7k8ngjw50p" - }, - { - "private_key": "08747d3fef19bfc4039c27012329b5ecd8fb95906434a20b25cc83669192f3a5", - "address": "lax1tzea20ukg838cywm404rxkr90ygr85jkgs6tc4" - }, - { - "private_key": "c78ed66399efef6b6a3237d4e7862e4563d30d0dc6ea15ac6ace1911358e0a8e", - "address": "lax1shk06d964w8hlxhu57q6lyt0c5fz62d2vy94qm" - }, - { - "private_key": "7d52dd092259c5385e99cc4788313ba87dad7c4717b1a1f250397ce9b34e9932", - "address": "lax1qa7smzrudcqxhvjngugmd6ujvzexxpdfh0m0la" - }, - { - "private_key": "d43117ab5b50a9802bf96b2d0dec63188262657d2a25b492a8b20a2271d8fa73", - "address": "lax1cjslnr6z0jh2gf9m2yvc42rjfwsthzyrqd67w0" - }, - { - "private_key": "1d041e6b2c2453bfec88db79264c1aa3d53c12c8d3ecd1d5121a63f342b19238", - "address": "lax1xgsfkfxqmwll7djq7xgth6esx9yal0s2czr0kr" - }, - { - "private_key": "a51323369694c782a0d62df4c1bfed410811877f51185a019902a1f090636fff", - "address": "lax18spm0ddxykephfdw26w8530q2rd0upryfeshf6" - }, - { - "private_key": "8c95ba4bb41fff695f020e2b51e22ce88d18b5e528e51f4f47e04788671d07c8", - "address": "lax1z2qyyzdngj469majphvz6qy3k3l48tj0uzpn3t" - }, - { - "private_key": "0b54bfe9dc9c2a6fe0983bde67dcc6d78103d4510273063b0230683541c486b8", - "address": "lax1eq92hfnqd7j5ye3pd3l6qtmzcc938nrclaurp0" - }, - { - "private_key": "8a317d457dc2661188228025344c06ad38816f8a7537afef9ea46c4bcad51b02", - "address": "lax1z6dqgufs804hn77rqgfuv2mlxam7tlrksemsyy" - }, - { - "private_key": "d9661c49b6a8e2679cc6217a69bbfd903f135b95cf0841aeb27f58ba420d8b64", - "address": "lax1dynwv0f9mzrldj7ryqfxyxq5wx672dja28dv3x" - }, - { - "private_key": "df5285532ad6bc8d4b0a57268a7dfbb22066db41526d8ac426b3b8ac9a40b9f9", - "address": "lax1tf97h2eqd7m7rn0ahwth3wdvt4c2kug50lzk2y" - }, - { - "private_key": "353484b531d14de84dafab70ccb7c602d467a18a7fbc1f1a03d5c66e11d4dbdf", - "address": "lax1erz70evlzfq4udh6xsrqvpspr0hzsgqmwa2tlg" - }, - { - "private_key": "4b30ba0e96de1ba4cac623ddbd190f73c6f6d485d301a463b69214e2ba9850b0", - "address": "lax1yqk0c6amd68l7cfps8vmuq44ea9k8jnu9a84r0" - }, - { - "private_key": "e11644ce9a57e162418e6363081387e8bf38daf20a3676d5921c2588ad3f891f", - "address": "lax1gmdcezu7d00cv4pz0erpsdaqpaw5rn9fw5g0hv" - }, - { - "private_key": "285b6fa5226cfaf4d889743577a5a97b465324fcd0c8d00db04dbcfaee25e320", - "address": "lax1jyu9ufwejr8683lv4ulvcqmamf88tw6764p9sa" - }, - { - "private_key": "8438e7c1efec2452df4ebd1626957f009fb8b9c0655692109da152d946aa795a", - "address": "lax1de952aw2jtfn8kq7hx3dmkeszg5v34692gw3am" - }, - { - "private_key": "2d6c9a5051b57cebf4df11ac034c2c725563b8b7cd3f004699d92c33ef343777", - "address": "lax1l75qnvseetestpen8z3mvx5pfcld0x9c2yt7na" - }, - { - "private_key": "594daa8eaac099d6f068f4231787ebd3e945ed2c7a1e6821ca47d4f67ab88a5b", - "address": "lax1vszf6r2z8407r9tufe7garxzj9kmq9f233wtv8" - }, - { - "private_key": "f5aee1e030987d35cbcebae0c59b9a03bc1093edd163c513c52b8a3237d9b4a9", - "address": "lax1kecxdvnnm7lp379fu8t69sfu2527qmt0udywy8" - }, - { - "private_key": "3947eec303c4d2639e615ddaeed9b462ac1a9e3856c50fc7618321c7ee0b7aea", - "address": "lax1z29ywh5zs503yuynpnuwa2gwwk96stp2swdv5t" - }, - { - "private_key": "9ec9caeb5ab673d94749750cca53e4394a8a62603b546c43c697fde5c8fea6b6", - "address": "lax12n4ulzgfxkmy6ty85xeka5jznjw3l8dlhzc98n" - }, - { - "private_key": "42d8048b3af4c212ed4666207826f164fcc7a8e597e7f115af65e27701a9279a", - "address": "lax1n26cj7ev6ktpujsh00kygrzwc0na7m39rl0zyg" - }, - { - "private_key": "e5d34bc5ac2bfe07d1a75569494309e1d29ebe51e1b8c2d49d5e44831b2c6b53", - "address": "lax187u4k4u7s596h3ymacrqgluaww669md3n20602" - }, - { - "private_key": "7a5854dd7d22f3bf2f2a66ee3d230d949ca2235a4081e76ad777ab002ed7e120", - "address": "lax1wvrfz4hyceh4xmjwycc579m7zx2a9pua9nrsqy" - }, - { - "private_key": "44e7abf2e0249e96fc8d1a79a231a7d3accd930e0b152e5d9ef5e9976f0e7738", - "address": "lax1e8ld73n56r76l4z66p2zjmn0u58z8vh6lj0lhj" - }, - { - "private_key": "b7445cca454e7030d9cd862ed40abd6441ee4f4c469405bf451d171d2e21f384", - "address": "lax1u36uxhgmf3yg79ypwsltt0lkvpj5lpqjpugl42" - }, - { - "private_key": "3bdc264939df3d6040e063da004d2c6036cefe9292260187e414760f5cec2752", - "address": "lax12e793u227z7sgq8vdv6fnvwcytfvnqrmkg08f5" - }, - { - "private_key": "5270ab2b36119e9e2ea8a779440a24c10cccf35fe8688bb90f4a385030434165", - "address": "lax1x4uan7yclfdj0q0777c8dzk5uxpsryllxn4mp5" - }, - { - "private_key": "5bc90069a94d6a0bd896410127756e50d29621a5a37b1fa29281dd9c2d04e6a2", - "address": "lax17u2trza89amp5q2n5gndyxy4w66ugqza9u7vm2" - }, - { - "private_key": "c2b078443844ffb1daf52d9fdd5286d6244c55dc1e1301a564ac2ca31a12ea74", - "address": "lax14zw045tk4f05d4nzr8arftt4fkacpayz3tx09m" - }, - { - "private_key": "25d61586f4dc106cc1b2778bf18e41c449096780b4cbf9966ba35f909c4d96b9", - "address": "lax1dpned85rxdzaxzu5hzak3aq5q2jtel6ghuvsee" - }, - { - "private_key": "2a578ca661823b4979d52102fc0120dc034998753ba833c2abad52f212b7282c", - "address": "lax1wdflxtqvrs5zftswup0upna4vvsw0uvypc7l3f" - }, - { - "private_key": "1d9bea80acd9f23923a9ba611c8ad4f4c02b19198573a9f05a3a08997322ace3", - "address": "lax1a50kn6lwl8fvw2plzs8jmnkavg9lwrukk7dwxv" - }, - { - "private_key": "a018956e84b8b688f920001b90ef66cbf0b55af8e085dd03173b08c106d1b146", - "address": "lax1fusuaknxcg4t80p3eevngc6angazmhmunr2u04" - }, - { - "private_key": "991afb1cf3b849b7cc44fa328c2ccd4a3f594e169964fc45fc00b2bd6e1024bc", - "address": "lax15w3dzg83wd6knrqzkwnc0ru3cekl80e3eatwcu" - }, - { - "private_key": "3fe2509361af502b687cf331bd60a2b74d491ed5d02462a60f2b3a42ca48d83d", - "address": "lax14h9wjt3dl4h0gx006pp27xmsawgpyvuxdyulu0" - }, - { - "private_key": "c90eb0c47915f0f11b153e60eb8ff446f2aebf225272920a3554b793e6fc0222", - "address": "lax1m8phxsx44tkse0hyleky4ecs6ddawfp9m2lc0n" - }, - { - "private_key": "26eafe642ad2ddfb74d803455627398f3f8e3cdba0c412f5003d4c2c99d2bfbf", - "address": "lax1ev9j220hfu39lwmmwumwkz7nkh37umc0gjrnjz" - }, - { - "private_key": "1395f8564af4e42f263f10ab53b5d15383e24f625dd382e1451ed42f0b981b10", - "address": "lax1cjjv7x5npkf64vtg3j0tyyru9zam2m6ndphmvh" - }, - { - "private_key": "8233d68a5b173c6e8a24c284680aada3ee4dc5d7d696bbffdeb2d06c414ff532", - "address": "lax1k6agqg6r9k06hzdvzul2vu5hvy3nf5smxl4n80" - }, - { - "private_key": "2300166dc99ec5c5a9e09cc5f0f9db802f0795f7f33191573f1fe638f39c3830", - "address": "lax15dtxrftlkuzm00ylxwt05h3z0mt7xxk43s7x03" - }, - { - "private_key": "d3625d70f2360a6ddd7448fbf18921d62bb330e8698a2e564b9560f2240d74fd", - "address": "lax1p03gazthcmt4pncctga4rse3n8c5rw2e0v9e0w" - }, - { - "private_key": "823cca44e4c6f60f603b70bd2af58342f74362b7da996479e891aca9926a2344", - "address": "lax1gn06488zlgcqafqtauxtuh9xllzcxjqkhyksyu" - }, - { - "private_key": "3d0768ddbfe5f1a38629f8e3aa18e740ab60d44160e590663dc98b9f637de2a1", - "address": "lax1vcycu5ug8f0k32rkseuktenv0es5g26f2qj0sm" - }, - { - "private_key": "02c0973bfd800fd1d1d8d134ba175a5df87d99a6a8ab20805799bf2e7846747b", - "address": "lax12h69jd2agq9488nrea0vdqu5k62379agjtey4d" - }, - { - "private_key": "47484fafbdcbae194d04088c93bac5b1652aef8319190cb48bd57c69f4c0b9a4", - "address": "lax1cm4c7sjk3ft72vg2llatd7ll28yql570jass4r" - }, - { - "private_key": "e6d5ea019c8c7e19c4bf48abdefde13ca969445bec64c6545766d7eea30a43e7", - "address": "lax103ku7p5e3prhzjvq2naxhnn5jxves59mu73thv" - }, - { - "private_key": "2746e4379b1b903de96f0c4b7d44d0e52b272b1689395f9fe3ca659f258c1b5f", - "address": "lax1s9aws3dr6c2kh77fk48acv9d7qnwwy5rfvr5zq" - }, - { - "private_key": "ace008cfed7e88496d5109aa9092c6e8beb7a1053a01f54d50728964fe04d9ff", - "address": "lax1eh0nxzukhzeag4yg4rqwpqdavuh8j6rzladg3a" - }, - { - "private_key": "e22116ba72f493cd38462877ce57d14cfe9afe23efe00fd7cde18fd646fc85a2", - "address": "lax1l80ml9uksr7948rfred72xctklernguf0vk4rq" - }, - { - "private_key": "0ada5f79d0edca073edc56b135b45522776c26e703a37344f5ae05f7445cd51b", - "address": "lax1sksq34dsa3xkkpn3k83vngtwlnnhyhn00t5awm" - }, - { - "private_key": "0f40d099032e5cbc050df15073da0a16c5e624ad532b210f2eb818837c00f444", - "address": "lax147mq6wp7u9scqcc3dm75xkefmvpspcy300n63v" - }, - { - "private_key": "1b9c94e1a899d63a9fa1926786ddadbd1790622d26a840e6df96d188a463fde4", - "address": "lax1nhrz83e3w6d9fg09ug3n3rva9n66vxz2n7tlg5" - }, - { - "private_key": "207edf38619e5ca1a2ddce9cb6a56e83730d286883afdb250c4638763be2fb93", - "address": "lax12a76lyh3pcm2r9g300q3uvc7nv35q4xtf7el07" - }, - { - "private_key": "05c477c6895f7150bfc5d96f7173bf46aea49eec70e5e62011577d1ea5f07f33", - "address": "lax17n274mp822cverv828dsltccaj8jyjmm285l9l" - }, - { - "private_key": "9ce7cf743c70e5caf2926143dc17f39456a354695b8d2c31964417f166ca63f7", - "address": "lax1v79vjnucnp7l97gsyatqu4fxfn4qnxy6t2sna6" - }, - { - "private_key": "8088ecd772ed56a336b94899c1bcaf32b4bcb29fe8a5ab42dde1ce7076a92dd6", - "address": "lax1fx6e2v9r7m2teyd7wwra6vwaeqpeqtn8e9qvfd" - }, - { - "private_key": "9014b00796937fa2ea9aa81e843670151a8c463f94613022bddc6f2196801d07", - "address": "lax1mgjl9wzzfzdkdlj2uj24udxu8cngsy4anwa8lz" - }, - { - "private_key": "faad804d3220ed8a83bc1a079e00daf4bdd9f296798c846fd279723c8822363f", - "address": "lax1eet4tljjhwrjtev968g9kupqdtfx2mqph8uzmk" - }, - { - "private_key": "5211b6f036cdc352494276399f8a5847295022e4e98a38ac43d79f8c20789b0c", - "address": "lax17jdsnepz0d60kk4w8qumftpkp4srvvnuq8yget" - }, - { - "private_key": "66056f6883cf8b6f3b77715a7e5de11d86033920058f70d85e8857b72feb1be7", - "address": "lax17krvswa279jc4rrtz6neeu6equran3k90wm4en" - }, - { - "private_key": "28fa56eef467163ee02248040078403044ac76ddad063f7d59cf9df8353c28da", - "address": "lax1kx6k7mf8d3thjs67m5hhrp2qqaa794nxets5sm" - }, - { - "private_key": "725b28114352ac758bdd67e286a9963e82cb39c86c4d763e7a75497b071b9e38", - "address": "lax1m0p740ulawng2lkd27277hnc9tnxztdtkpk5zy" - }, - { - "private_key": "a449947806c3bdbecab641664d87bb917270cbcb2c035c7a5966032352769030", - "address": "lax14qujkqsp9h24qs6mwu5dqpq4n6vjeeajt80e4g" - }, - { - "private_key": "a3622f859c3e856a689e44d775f47f3a979d177b459b5c29b8f10214970396b4", - "address": "lax1a5s43jh9mr53m9e7u5nft4e6dz78237xdkhzj5" - }, - { - "private_key": "f118ac7644473365d99ac60d02c5bfd6a9231589a4083d368e59ca456158f4cc", - "address": "lax1ssv2t5v8vfm60cp3knrp2wxvuslhvxdjj7ftv6" - }, - { - "private_key": "74cf088c9449abcb789fb438510b0aa75ca14f1ecccab139309a2341f9c56d25", - "address": "lax1x8gtyfd3qlknfvcsggwscv9g9k8l4n0l92a2pp" - }, - { - "private_key": "0e23fff572340e7c34f81311545cc0d69ab9b57a3bd0633f1cb8ebb2f49b2983", - "address": "lax1l6lm4scsdgcs2hptzyvscj30nwl74s2zu2drsu" - }, - { - "private_key": "fb9e8702b5caa7f8bf7352806dfff4102c4f8750506329af719ff4587b48ae19", - "address": "lax1uvtuj7n9rf7cskep3ek8j3t7fjutm3ku4e3689" - }, - { - "private_key": "12a7ce42e48a00a5327f3ad51eccc3ae4ab9e6a0727d7b20a4f4df66e197569e", - "address": "lax1mcvrk3f6wzsx83vka9p57k2efqy6epm84ks34s" - }, - { - "private_key": "10881ed251e365897f12847ec6f1e54d61ecf4b9b370ab5fba30fced09fca354", - "address": "lax14dm9756kw2sd8k4ayunqj0uaqzrt9j47r7w970" - }, - { - "private_key": "fdac6270b109fa7b0a224ab9ce1d3c88e55db3967379e3b30ecc3bb268dcb1d7", - "address": "lax1666dsv094yqgtgqfsuvylws8c7uuqmq3f38gvr" - }, - { - "private_key": "6a74247fd4ca077f527cdf42cb4c10675b5582beda141feae6ad1516fdbaba64", - "address": "lax1he8zqt2ldvcrandj92g4xa7cgnzs04pk5wk6m2" - }, - { - "private_key": "ac4987584696e2a944966bc1c43050e30c6416a2815136b78c1fd29ea76c9be0", - "address": "lax1z0k2pkdyxqg8ulsja799qu0lup05frcp62as67" - }, - { - "private_key": "3533b7576fcedf06614750d68bac703398436f898e389163af095c72c52c4b9f", - "address": "lax1chy258x0lf9968hf8gcq9aa3aehq65mj5nywr0" - }, - { - "private_key": "d251e9c25ee9a25d20afb463e22445d6fce3f9b2f8c203a368a14108dd32beea", - "address": "lax1grd4hjy5jrdwdt7759w7e9wdnfwmkuark8rf60" - }, - { - "private_key": "4308135f5d6c0d2350d052d0c8217e80817bff1f776317f3a04f04fc93e1c5f4", - "address": "lax1ztghqklyfmrfummrpnnftvkytn0nnvatxrpqfs" - }, - { - "private_key": "1d7212ca2dd4c35f8424ff1020ac04274a95e72d71c87c2dfd1d90c2de3834ef", - "address": "lax1atukl78ewrxmrnhzkmhgszfnrkucguqq6vu2n4" - }, - { - "private_key": "173226ebe4852a1d7f0f3f162256debb97dfc2a3a349e49bf43ef7fdbb0b6f01", - "address": "lax1lqmyu5dxe5427f8l4l66ley8sn03lvnp0szg2m" - }, - { - "private_key": "cf523b7e3c592c161a097aa4abff87069f5bb04bce81b3a956823400506360d1", - "address": "lax12ynch33lssy9lpxf9txra485j4ug7ahp6w832v" - }, - { - "private_key": "570cd38afbf7e19618b80ba9b5295d1366aa2aa1ef24bc426a2176dc8fd59f99", - "address": "lax17vn7ya5u772kse29pdvs49s4u8sx5fjnw4rd0w" - }, - { - "private_key": "ddd6bb2d2d1638bf45618b7621514f8427ad38664a619fc3e43f3a5c9134ac6a", - "address": "lax1fsdwepph4sgtswpm0z5jdwreruvmne2ey4lmtk" - }, - { - "private_key": "927466f582a6f410ad37008cd5613832084cc706132d41df89e76caa63dd3ca0", - "address": "lax1m9wpz53u22ejuw3yv3axvmq8cntlj3y42ugwq9" - }, - { - "private_key": "016cd73aaba79cb3f4478d76714435f29bab3a34fa09cd5f0e7d601b6ed64e1e", - "address": "lax15dvzqkmc3ghljjmqez65v4wgyc0gdtnn4tdym0" - }, - { - "private_key": "6ceb5c4c54c754a10779b1eae62115cb5df275f67aaa68a3538c82770b143a58", - "address": "lax1637s8ugxlayvjulphcveuv3j87dnpu5hhxwa07" - }, - { - "private_key": "1912b4cedd89e3a0efd574d6af35dbd74cd7f20c25acd3991d076efd10f849da", - "address": "lax1ggxwscd6xj8k2fnw28cdyx0ckcap7lyvrx74yh" - }, - { - "private_key": "2836a9448f2f155e4487292f79acd44fba603c8871047bc0b254146ce909b71d", - "address": "lax1zs486826u4wz3ty4nxlw5esqs9mrv67dlfvxyx" - }, - { - "private_key": "ba0c9f53487e2bc26bc9b99f7a68399bfae331fdb2303741722a0bd3a3aa4c45", - "address": "lax14uy2hzxtph7zj4v4v3l89u0v3fl5glahwngawv" - }, - { - "private_key": "f5c16002c9eb7f4ae72dd5d31e0b1058973459c04cd454605e8bc1c9747a9296", - "address": "lax1eurtnrxtxut74tts0lq7fq43jq786mq28vjrdv" - }, - { - "private_key": "3ecccafce7d0266fbba83ebc9c82f2ee625c6cb430b48b93a7b176d41c4e37ba", - "address": "lax1w2utgpca3enqwsyrruldcjalszay0ftw3ujuu5" - }, - { - "private_key": "3c77738d7dece298c0f8033832d7af56d8b9c1964f23f4ce9da1ed5caad6e788", - "address": "lax1jnc93cfmc2sflrtpk2z3zlsjulw5mqs5r4ryaz" - }, - { - "private_key": "c8bb08beba7d3522f501b5badd1da55503aee75de6363c77be9f5f4ed81354f5", - "address": "lax1uhgr02ecwdeuucqvmjctfxdh5avctq2asepfl7" - }, - { - "private_key": "3e066d9b9e865de10bafd0a039951d0787098ad0dd2d4c60bfbb2ed5a8d14f9c", - "address": "lax1v0v2eyscy6c83cpxuhaua2jqp3kgjv9vgyv74y" - }, - { - "private_key": "fc74b631736f7d01f0bfd8dd00838bf73216d10e384fd0fc4e92fce1a1624550", - "address": "lax1pdm2ktw0j2rfn2k6z32r8dzatmddtrvj04d8u3" - }, - { - "private_key": "a5fe1266e60cc7d029d07f3d6c9cea95117fcd8bd79a840e8fe89a59924fd5b9", - "address": "lax19vqq23lr9m936qgwvugt7mmwej2yv9f0kfxtrq" - }, - { - "private_key": "a52cb5234ca101db925da5b0cc24bedb0b73e11540e7090cabee1109b6bb0ed4", - "address": "lax12nlhwkcjq2zr97kvgka3qsx6r320dgmsfpxpyf" - }, - { - "private_key": "4848762705ff382ccda109779649ecda66fd4dba755403b3158f3eb0106125a9", - "address": "lax1keuzvzatl9n3qaszfa58a2m3yywp4pl9aplgyy" - }, - { - "private_key": "b57fb1e24695bcf993bce3620bd942c08970c3c9539990ce4f897738bdbe036d", - "address": "lax1lzc8607gzx4yn206ndmj3thttw8ttlsn0nlppn" - }, - { - "private_key": "9417d0153341a8665c9cc8316d2e793b905200995e321cb8ecabe206488870f0", - "address": "lax1ya273qhs2j6c4t9etavtserq5numcykqhpxrcu" - }, - { - "private_key": "762566ca2708cf480c115b7bb979392b5a733a08a6cc81d12c275f0229ba026d", - "address": "lax1xzu0dlx8xa0nemmcnzlaep7ax0uqjz44s4ge8t" - }, - { - "private_key": "74d4a090417ca5707327873261e06171a34077a332a27e1e8f8b0018c8978f99", - "address": "lax1n83hnr8jw0nxywpg67qywnrpy0ze83zegsln4y" - }, - { - "private_key": "54382ce9969e5a877a73078cf1489b89e49d341c2484c05410b5d8a337197ecf", - "address": "lax10plprg0sejtja4fq8g6e42t640xsca2ctzyegq" - }, - { - "private_key": "3fbf072eafe946ad57dcc0f7fbdccbf82a5970b960ae8d8b5f213f63b6903caf", - "address": "lax1t329md0sqrekal9kle4xg4kyg98hwkqxf8ukph" - }, - { - "private_key": "aebf6c764386d586da82e2c0542d87c4061cfc7bd11575f13e32cb950113e60f", - "address": "lax1lyrkyvwnzy7s93ck298ukxpvt7lc0dx2h6n79k" - }, - { - "private_key": "49b26788fdd3f8a001750037e0a62b8adbd963c0046f4227f19aba4adae5bb52", - "address": "lax1dnxfeudlgnetvsrmlydyes9978nym956cqq5cj" - }, - { - "private_key": "9b97b317f7f877a78c080ed423242e1691de5a53eeaf932bb11a2794dfb165f5", - "address": "lax13xzh746tctvjvt62zwy45pzf65nj28h2vvfte7" - }, - { - "private_key": "181193b11f1bed3ba0c90658dad357a3de0dc124bd699687d463f46ba2f81aeb", - "address": "lax1zk92eyepg29mfqycvdrcgul8z7vrlpzlh0st34" - }, - { - "private_key": "2470617a16523ad34bfb987be1ccd1a653da908b3aeda28473262e4296dbc5ed", - "address": "lax1s07smfp8xrg3je87wgry3l47k6vyya0tp82hyq" - }, - { - "private_key": "7565ffb3ea18dea0f75bcc7acf34f406d444118f5fca433cae1305d106e8e707", - "address": "lax17vzplf8unq53sk6326ju589kceenzy96dn72kg" - }, - { - "private_key": "b35a68cedca48fd1543a5d784a7d85b5653d46e3b7bb558f9f10ea333d97c94c", - "address": "lax1yvtp0u5dc840n38ljhky55wyyedfd4m68kpe9y" - }, - { - "private_key": "bf1fcef2c157d0540d4855b8791bcb987018371201db5907dd68bf08586474f6", - "address": "lax10f0z9qh6zrnyeuqyc4pkglyzadd5ez2pqhwt0j" - }, - { - "private_key": "c578cc6481fbfd6e9276412700bbb44654edfb2c07f02d2f4580cdf855c3f9ec", - "address": "lax1n8t727k3ptncx6pd4xwf67vqhtg5gmu6cu68n3" - }, - { - "private_key": "261e05ffb9304ed8677ae632b1910520c23f6e71101ff662cb8714e0495833d5", - "address": "lax1m0vgh0y5wqv7u8en3ltwkqe94xysjtsygsfjk6" - }, - { - "private_key": "d1c3c009436721df74ef0721ca6e1a30032218da1ab8b1de584b717ca63cabf7", - "address": "lax1e7s5cdfwpymldv6hcqg7gsntue70qkjd3zt59x" - }, - { - "private_key": "27ece13455d5b28539836793b43fb864cfb89ff3364e055d3b3573c42d2ac492", - "address": "lax1cle405vfvahc68qfa3mgkusgc4kzlk6khw339g" - }, - { - "private_key": "eb157bdb060d3b81e9c5f8880aeaea38a73a5e686835f7217686645e591f29cf", - "address": "lax158dleaqqeeq8m55q3dpruptsgxm40srzpvahnr" - }, - { - "private_key": "e0791c3c5d00e017b029454c418bc3bb7be372463f87aa26ee866fe1940a7439", - "address": "lax1a2h6uq7mxzcjmn0gjmm6p5z2dk8pjexjjn2xlf" - }, - { - "private_key": "258d438f0be7aaf22423660b01e7e7453bce9e001fbe168ac5cfa87cd2d6ba5e", - "address": "lax1gh4f27qe9t6rj8huz75zrw5f9qgqk2u69eeczd" - }, - { - "private_key": "17cd9705f5ee7d51883721a51e62f4c51d07d540f9a7801f6e6e04eadedbd878", - "address": "lax1eg89h424u528387zunxwnxcdyr06r0mxjgkklh" - }, - { - "private_key": "e6dc3c2fd3e9afe36442d0be8f1e8c8005c94158bc05d74e714604cf46230fa7", - "address": "lax1fct73cps9m257nf4z7hmlnqyvcyu6hshlpq93p" - }, - { - "private_key": "7f6845326565d38c59d8c241acb1476594a5ea2498fc4bddb3960363f4c70cbd", - "address": "lax1e65wgegtehwmtjx58t27ztvy8m3g859pn02xk4" - }, - { - "private_key": "fd64e3a3d1580f4b99a096528e155c7ae58f7ff5b942cdfa5d3262faabb86c64", - "address": "lax12x904x48456pwuv7kht7z0zunkaxw5gt6xpmmt" - }, - { - "private_key": "ae8b2c2f196afa6063e56a4093404b0e45ca36279c80ea8ea999c4048ca2bec1", - "address": "lax1hcvwlrkk4shc73lw5743kqwg04xhtfxsd5k2x4" - }, - { - "private_key": "63256c2c12b95d6226c2e3bf7f46ca846ce3bc4467e2dac737f963689b77420b", - "address": "lax1dgfwwc70lluczcryh3wfeflzdg5a3c6k77d3rc" - }, - { - "private_key": "c260b4436e083cc96ec33375d9c16b0b126ba97dda9db9ff6da9e13b7332059c", - "address": "lax1rwa4fpjht87re80mz3l9v4p4cj4m3r98y0jln5" - }, - { - "private_key": "2ea3bd2c24b3b3ff4a95dc08c5e0d6e96a9aa4be31e6f3beb16a79e1686c573f", - "address": "lax15uc7dyr8yh2vgz2ncjmv3px75vavvllhw99rc5" - }, - { - "private_key": "ddc60615f6030e8fb27ea7e9b2cc6f2386e41b9c11bc049f0375d803ec990ce3", - "address": "lax1ucvugpx50kpxdz76x2pnf6660ffsu698lhxw42" - }, - { - "private_key": "0c2c4e76e329cd1fd7923a4d56d267afb04086bc04b8f3e41f27c998cc7698ec", - "address": "lax10ay5j7z0r78h4d3frwuplqfvl0smp9elj3l3h8" - }, - { - "private_key": "e5b5d3da350c52a5452c39503e4a5fb77e57802e5fdb3bee3204ec524e5ce657", - "address": "lax1hg0xg9p9qg7zavdhyue3xmqg7cxtdy8vwx0x96" - }, - { - "private_key": "aa57485349ce90abd1d009abe5789ebb87076dd4e554dab3d244cc05c9815041", - "address": "lax1ejudmnqr7ttqur5u8p4k9zyha43s63px8myfms" - }, - { - "private_key": "eeefaf50c625ed3336ef7ac16bbcdb5cf5f9cd754b90213261f566a284a21cec", - "address": "lax1g60hf2htapjz9lyqrm9avxrxvleyc4wlrthmle" - }, - { - "private_key": "168224eabcb176e9ffdfbe19f19d8d8b7d3bec99b3efa02d241738c4b2c4c315", - "address": "lax1t4eta5ngyedz5jecapxyj0xy4z8fkdtacr8j7r" - }, - { - "private_key": "6a76a08623389f489c318087c64a2dc7c68af9af36205702c08330f7f220dd78", - "address": "lax1c6zjljfyfcxw2es226teqvtelmjrgk2wsjqvtv" - }, - { - "private_key": "79a6bc08a17954bd19ea56781cda580426947a4b5692dbec0b3b924ac443ab60", - "address": "lax1fr4m43fdurqwss7hlpuzjes5khlnc8gmv4thyt" - }, - { - "private_key": "c20d4364bd8e124c0fe400b49a88767085364d3a722511b2a0ed9c7c2961d4f7", - "address": "lax1lj46q3qxpu23rs3hrk6r79jts04rlw3q4uxffh" - }, - { - "private_key": "adebcb5f66d5ae8b50296d7d54a4dba4c3cb9e57219c66f864ee436a30011b23", - "address": "lax1l8av5mh7h29lpxd8k9ex8grtlm3y6peg2xpsgh" - }, - { - "private_key": "517b53a6c7ff751c1f53d87513b03d761a8d30702e93a311e2f63ca88b5747f2", - "address": "lax1vhsnnztcyh64ldaztw5k4tw7umr8mrvv284t4q" - }, - { - "private_key": "81dcb897033ea5d282969a057b6357dc2fcc6f1ced0227af1f324929cd3f36ad", - "address": "lax1s3kde9xrtxxqcekmdpr8g44txev0d26nm2kyu7" - }, - { - "private_key": "d8b3207d6cde5fbe457e038835d8a8e43cc851fae96b002318f43102d74c5b31", - "address": "lax1q0j3pt5g7vahvx5zarjpq8w3kg7qct0v97ldvq" - }, - { - "private_key": "d7919a213e3a742601b5879ea6509e34c4bac74c9f4f25170fb20bc7eb09527d", - "address": "lax18x97n737gacxmkmfpp2xpywzw0ctfvz83maqgd" - }, - { - "private_key": "c5fa9a586452abf6b2249ac412ddf4fe2fb0bf8a7c7c4b7632c37f3d0ad2da86", - "address": "lax1xetvj92u5t72wlqeuvek8xtrcr4ga43a7qkv5s" - }, - { - "private_key": "e61817b153ae17a3d9c9a7fd1aca453238a2ba2c9c9b663a2546e4a6eb637330", - "address": "lax1w7h3fa86j9f7d73wkcclmytu2efzwe8su844jr" - }, - { - "private_key": "4a8028a35d77ee29997bfe9fbdf1f2209b755e9bab3a91d532e7a1860689dbce", - "address": "lax19rafmnm9s905vftzassky29s2l5z8nk3cx0tpg" - }, - { - "private_key": "ae6e2bcbe39132b78a3ce9d637ad18f23b0a269bc8b2b7219b542d8af989aa8c", - "address": "lax12mlg96druqygxacpgn4vhl6jafhzg7ftx6yvgw" - }, - { - "private_key": "ef68a9de64d35bce75b8cfc5de000ba3d2f49a567bd1049dc6cfc7b2103f5133", - "address": "lax1as282rt2g54jphgqu0udr9kc2cxvcm36kuhyac" - }, - { - "private_key": "755a93001d4f7ad3dc4b44a75672ef82169ced06788effd35bf274e9ded66cf7", - "address": "lax1nwu04z6vhr5xtnnzuden2d08anws7rlcg7hfdc" - }, - { - "private_key": "4571659f819685c214e0b28940f28ead9cf97c5ffe2bb230eeb65600b583b424", - "address": "lax18edwt93fasf02lghrgr756f8z3f23ryaytpfvr" - }, - { - "private_key": "11fd8a18bdf05bd6a0da0def48e1f37295cdff20b8a2c58c41ae1ccf1c43fa72", - "address": "lax127srq3zuh5f2y8ntk4dkuydfn2amf3vdmdzwyg" - }, - { - "private_key": "e0eadb41b5f9e340fb37228cde232b4dda36917d135831da76b6d5ad78368e43", - "address": "lax14p3tmn5wka4q4gmmwa5xqsmp8ttnyl6vav405t" - }, - { - "private_key": "ed3b236c1e3c3a5575b9b2b24b56e74826023f41a848bb01ed736304d9619ff5", - "address": "lax1gl958fphqmrttp6wy8wanrx8nk0kf95eveqq44" - }, - { - "private_key": "d0e5c06bdc7e414c34aa9d6832727e8b38027230c19639fa44d3a593eb8ee085", - "address": "lax1ew3tfzv6zuns7aaje60uw8g4adm44k5xweegte" - }, - { - "private_key": "6d8e19d988ba1607f831f8f8206a20870b2ec62c6c75a752797ae426efeca628", - "address": "lax1a69ufy86syunhhvrnu5x8qhydexeuzr9yd4ncu" - }, - { - "private_key": "e7125f5bed1bf2dfd718b8ce8f1239c50a37b340e1b32fe2542e97e04913de90", - "address": "lax1e2n829re3hczq5hucx0yuzug82y4enxx2vkpqd" - }, - { - "private_key": "c81b839dcffeecbfeeac849ba09b245fd58f48ce329b00cf4268cd596b05066a", - "address": "lax1pe4jhpf6rqa33usjgtqqplkrdszgupd3faclxe" - }, - { - "private_key": "cb2637a100817e3bf7d6cef184283adc450ae82fc8c482d5d96994941c40df07", - "address": "lax1hr64a8h7qz5sxcjlf5axt8frerj9npwewfscr8" - }, - { - "private_key": "e72b2c3173c574d396664f9f904caf53178b3b39c21d9c391a22eba5cb1c28a1", - "address": "lax1nmc0gr0w5l0ycvhgdv347f7gas6mgrjfrqya2s" - }, - { - "private_key": "d70010b21d38e16f26e7dc695d35a27bf01d7de7c84519f04819ef5c99e0a62b", - "address": "lax1s49nzxct2y5l2dwuapazd6wz6dksd94anlkyrq" - }, - { - "private_key": "89e2e16b7bd294dada2a31159193af036846e96d0efc60703461db66479efe5d", - "address": "lax1yte4u7raqhjfhhq6enjcyqucg84uttwwtlj8gd" - }, - { - "private_key": "a2803c28fc0b4cee3b814f4e4555f2a48811e623abed39b8605270f069bd1f05", - "address": "lax1s4svuh6w6sfftmeeessgxsy8735qkqyvjaumv7" - }, - { - "private_key": "815751c5ff8b40013e5e33513f9fc5eb49651db7f5593430572f894e38d1226c", - "address": "lax1xz5dhkwtr7clmy4lux5rfdg69u9k6mq6t2tlps" - }, - { - "private_key": "106aa8b74dd57720925ff981d05c4622c6fbf988245e06fd038d815c90533c88", - "address": "lax1qcael54m3k9r8hkrv7n4yqngthl8p4fyzvcm7y" - }, - { - "private_key": "f3041d2e2339defbf916c6e7b2559b1daae049b88877187681ced6b3abeb28b4", - "address": "lax1y3mpvy8zkf8v7ccaluz9836w4epgjesqjlzwqv" - }, - { - "private_key": "11155761a185b21eeb75477c8b63ab6159b9404acfb33e65bcd67db2d06ba36b", - "address": "lax1ymwctn9268u6jn9dl3wdhpmnuawdzcwrpjl8vf" - }, - { - "private_key": "bc007b4af47ff3ac6b32e59fc3b9b0e1dbbe81fa48a80093b0fdc4ad57169bf9", - "address": "lax10kakp5h6xxxeuvr2zjtatf4lsl7yq5lhth93xj" - }, - { - "private_key": "26b43cad5723648f7f6b0d5d038dcc45070241bd1545e08423b9240ec7aab677", - "address": "lax17x490438hy4jeqxpsfz39rzg9w5ly4tcnhw8ad" - }, - { - "private_key": "8894397b6a31361479c961b37f1d926d74cc66cff4cbfe73efa6fb2124973f4c", - "address": "lax1gyxp507xulwf3ccjg205fljy9xtdf5307d2qhr" - }, - { - "private_key": "7a05e9f0c738e359ce034415e2421c8ebc45f4dd699375165ffe62532b80a90a", - "address": "lax1tdvs8rzrtvqqft3e7uvq8w9d4kpuzfjddhc2ea" - }, - { - "private_key": "51a411086481e9acc19792b69e4d72c1f371b94ed08d03422635ecd6e1bb3229", - "address": "lax14lyx4aejl8ffqfz0h5urc2n6g6wxvwn6aad4h0" - }, - { - "private_key": "495374d2e2f35cabfcf969711a4b749ce2373ec227bfea402e60642e13cade25", - "address": "lax1tcp8f9u9jj0l42vup53xr3pg5aasdla6mfvcqw" - }, - { - "private_key": "205f2546f8d4f21fa8694582aedc64016098d8ac76b30d3b8789e8a6c5438569", - "address": "lax1lvv0yfvejuh9n7fnjksucaylgf4uw6xtyrx4lp" - }, - { - "private_key": "9d251932beafb28fb6c9ebc69610b584db0e6a72823f09e5fed6a7eb6af5df0a", - "address": "lax140989eng88nlrcc70e5qgmftsyh4y88gvk7sve" - }, - { - "private_key": "59f58c6c62814944b763fe16dc8ebae6d11e7e49a0b97621276cc01db670ba9b", - "address": "lax1nauxjef6pzme37gaeq4yf028nqd7t2zcmkrkxk" - }, - { - "private_key": "9eac02465bfd008ebb31c5241e9827188986cb5a0cc1d9b5e6453356534a44da", - "address": "lax14667zpe2kje4q4ckaufnwg86p2gvwzsyyfr9ht" - }, - { - "private_key": "b8751cc6fab3dd8a4530d769b4fb115509bb52cd23ae982e0ff10849c7eb9188", - "address": "lax12gkukday35k2p6jrjxq6upa39l6fadqs07f2ay" - }, - { - "private_key": "c66619c9b090187e634714c6ce344cdd574cea344751643d75ecc3ac3d97c5b0", - "address": "lax1h35qq90ccjf3pfx3segyhrdkpjyms7f7dg2q57" - }, - { - "private_key": "655caa1cff516be80714e6c1dc1fd8c2d9dfd900ee54df81ba920e6f6fb97af4", - "address": "lax1rglnn6tmf5wvrt4dl5vgkmrt0s3hntk7v87pz3" - }, - { - "private_key": "c5f890cecf088b6957b6e2a6d88da505b28be6dc0f2bcefd0ee7ac67d2ba008c", - "address": "lax1s0f87ytk5hrnrtqxfcsenlg5dc5crhpvkh4mp3" - }, - { - "private_key": "cb1e808cbc196743e65e40d56a2e483880e4bc1c2e31c0f481e78cb9530427e5", - "address": "lax1qhw47ps9vfnu0hqa8wr9k0x9u3lvetpcgepnsp" - }, - { - "private_key": "630c6bc068af60ce5fc81f626e9c4fd1b64c411569864665bc244e2ed9238858", - "address": "lax1c7j7hdux44me7e9xym8n24qgrx9fww94rr2eah" - }, - { - "private_key": "db07670a7a6212ade9b6675ad5aa3bcd91537bc5d519c9405342eceff5c28238", - "address": "lax1p6298f4udxz96cy9a2xcu70sf6f2ljcjx63cve" - }, - { - "private_key": "6690e2007ceb2f6e9868f2b196b65d1bd751f34b8971c094ed519d3f3eabce3f", - "address": "lax1qwllc9dt89a859zpztgcn2kg0dney259edq8av" - }, - { - "private_key": "99e2dfd2faffd7b8fdc86a47f09c3c22e1668d23b575aae487f54acb1ea5678d", - "address": "lax1vtgz7t44fl8a5hy79hchyhfta4plu2ggh23y2p" - }, - { - "private_key": "eed5cab80a8cd5f85a41ba3098e7cae5e7afc6efbe69fb69f60f7f1788ba362b", - "address": "lax163vzqut5lk8hlmgaw43xc4gp2x65ymd8k90wqn" - }, - { - "private_key": "50af1321613d518baabe3e386c502d7c36da7cc6027016ac0de3053555b71701", - "address": "lax1lg5fy3933y62pr0uzsd98k5wp29pq8w23xywqx" - }, - { - "private_key": "ba61979ec348970e490ea98ca8da248c172fddc37460310c232179005ddb2de8", - "address": "lax147k8lu2wc5em9wwd25c2qjsqwcxdsef4u70guj" - }, - { - "private_key": "01656cd58ac93a3f7ee91009ec88d832965974f7a677ac9ce35123c65dc0ba09", - "address": "lax1zzr79zzdj4ryga4476cc02z3lfqq4pk0ygc2h7" - }, - { - "private_key": "cb27b8f9b1ee6f8d5b9b2bea582ec4ec1bb2d01aadb08663408285bff83a5fe1", - "address": "lax1x74tmx8xz4la8qra0z88r4w0szaq4lred22f53" - }, - { - "private_key": "6e05ec848b58183ef86c0957b622bcec86dcdd9cfcbc9a10f3d2f86560d5a49a", - "address": "lax1dj3rvplzcvk2wx6pkqwu6vw9fep8t8x9n0m7ya" - }, - { - "private_key": "5929ba93cba636b4de4b1dd2325f7a9dbf0ad874f975ac764f6cefcb2840e823", - "address": "lax1eyleed2mmsnla2etxlhg0l38n4zf662ydcwv8e" - }, - { - "private_key": "893da09dde954487b47b4aa90d487177c395356764bc0bdf59ded81aca4b0e4b", - "address": "lax1ewvzz3lnkwvmdr5halayfl3h6kp0tqfq8gdtum" - }, - { - "private_key": "cbd49685fc5ec007cf4fe53bdfeca920cd27645369b68929af3ff00290ee0388", - "address": "lax1v8du2ykledrgzgx6yevd79vj2pnk5xfy0sesvs" - }, - { - "private_key": "c5dfa5c79cb9a2babc4b5f4ea657012636c80983920af94563da8c078ad5317c", - "address": "lax1pussk9x9ms75clf7xg8nvuvvfe9wnyerwnxcra" - }, - { - "private_key": "3181933ac8480db61a1e655af7e39cf75702a3e1ecf50053e5533f1e846dafb2", - "address": "lax1s0d3th5s6ah2pranqcrasz0xj4tan2nuy0qge7" - }, - { - "private_key": "f2f929e6ff6445d3c5fd9131bb2128ca0369da745825544e1694e54735ec2c68", - "address": "lax1ju6f8zxc8h3pfyr0e8hhztka208009ppmev4ux" - }, - { - "private_key": "0fc61469d1e78794b6f65beacae2f20505b7e242e8953eb214da9606c741e7f6", - "address": "lax17208jp726avqkn25tscfzktjjeuaz7hz43vzmr" - }, - { - "private_key": "b9632190ecb4bf3397d733aff6bd7a0de677d4b5a24b8be4ab29f1b09b716699", - "address": "lax1n8znxrwu7e5hgkr68vcjptwr6c9vvhuzp6kuz8" - }, - { - "private_key": "c055c05b70649471a9b1b20ade082af581cabecc62ae7383c922f7a442305d8a", - "address": "lax1u3l95d4p8hulnurgzx36xlytzzsle6y3gl6k62" - }, - { - "private_key": "9bf46f49b06569da95b367c15b09b6ef61f4a47ddbd395f915f5640aa33897f5", - "address": "lax1rc85q2clv8crv0lrmtelh9eafvc3e2ptrn0a3k" - }, - { - "private_key": "b65fc2e093bbc16ece88163451b6741ee4cdca970765d4feb9fc43cb1d522a17", - "address": "lax1t65jfzs9afyh77sr079jkxhy07qnu42aw22y4p" - }, - { - "private_key": "9ea5d086be8d127054d9e18314cd5cb8fffeeeced644cd1459fba6c189caefd7", - "address": "lax1m0f5hj4xz7hdk0ku9w9mukcd2vfdrvs72a70kd" - }, - { - "private_key": "b140722ad9b18281403596ff2c457e0a43074f79c94ecf9b348b435473047b8b", - "address": "lax1uvx9nesyndnghgcf8tynqjvu5hqnnyzn46knpq" - }, - { - "private_key": "c9fa3e76fb82ffc90eb286ca3b2350cc6a10ce12e0d3c53a136f33a95ab7ce99", - "address": "lax1az4nusz6q0eulrjcc6l4kv6ngmsuqepwstqmmu" - }, - { - "private_key": "b749f21dafa442cecd222a40dee990f97837aa98c4a1839d56df375f788c131e", - "address": "lax1lqx2vljkta3nl5n82hdum4knw45uxj5qzjg8zc" - }, - { - "private_key": "8e65190433ef05ef26aa8d6f7cb52b63666f3322bc4492c59c63ce03a4ba982a", - "address": "lax16a0yyx27qnfjzanu9tph2tvnkhu0dt8gczkst0" - }, - { - "private_key": "d9685155b4c7c3098c15f1175062939b5085e3685b26844c447ad847c5330256", - "address": "lax1lwmxpn6ea2zfq6qzekrspc7zhv0mv4anmzqmn0" - }, - { - "private_key": "d1f69a012f3328bcbb47f3bb239f25891e1958170086ca09b91909a89e21d3d3", - "address": "lax1f9s5h7wt2qn320jzej822pq0trly7tlqg3ap0n" - }, - { - "private_key": "a401fea2c25c755ae56cb98f1035bc75ec4da46009f13ac6cacffb6aaf2c5e60", - "address": "lax14vmznykyk2eg3v54tn0pmggvfdj2zcchkcvq6h" - }, - { - "private_key": "47b19b299f938b3f6833abb6043a0c94f6c4c7c243fec499bcd8697cdb139b9d", - "address": "lax169u0aru3c4e8ykjdayy0rhufqe58mscjtlwzgh" - }, - { - "private_key": "ffa030e13d5b8504cb8003008271076a3b6ad9182fd7e8d02c45d8e24b24c4e7", - "address": "lax1eksjhjfuzl2nkw0tjskyrywzz6yl7ymrjs73gz" - }, - { - "private_key": "231226ed9994db09af60e20e9a64d113722219f6b322e0351a934dd566c10ef5", - "address": "lax1csffudnwuzxmpphgvzf7aeyhecs5w9v5xev4yq" - }, - { - "private_key": "d5994a3545bd2042841276da3e5b641158e61c0a30812e28f0fba64f5fd276f1", - "address": "lax12vx5ve3xfwlkpgtdkevnfztn0797c6lrhjhz60" - }, - { - "private_key": "24a3f0d71542c14b3213df88270323bb19095fea216431e9a05e21464899be14", - "address": "lax1w9l5kqyvjtqqtt7e98rklwpsykkz2ups9zv0xj" - }, - { - "private_key": "a1e16408e1a6b9d0435125599b70d8625afd9c86db967c0f0c7430aa636cb8f7", - "address": "lax1l9946y9mz70jdwu4gmkhmga3f525adkvhmhrkk" - }, - { - "private_key": "2585df6b025d211bd3e9a75b75af803ef343868784b59a93482b5833a79ff45f", - "address": "lax172953ueu64f08s40f0eea7959tqtgczxvhc760" - }, - { - "private_key": "541c1ecd03b4f8e17a11771de2c25f9ac2fe1c584639cd853b59a6f83441c0ce", - "address": "lax14j9r3x77ezrvyl6k50n9us2y49z6gc8ktaxmqs" - }, - { - "private_key": "f79ebc0710d75c4d49a4b812bb0f70d0a1f829209d24a7b8be56b5e8d7c83f77", - "address": "lax1twevmzhy0mdu7c3cd4nd2hllxpngjmjnlyysyn" - }, - { - "private_key": "caf74ae634b5de0c1a49e4acf25f0b6dfeae6521f4de62056b0ecfd569b3d02e", - "address": "lax1c069dg37vm8a5387vr78mwms5ukwsnwcwunz7u" - }, - { - "private_key": "d6db8669d0e96ba78c6082289bf9c8c04029693d771a5a21992132aae0c5d688", - "address": "lax1tpjaeh0d85ddtksxryfs2jqv3nmh2ds6mfglgn" - }, - { - "private_key": "cdaf9a7bd0423912c330031bbb3989e233db77b8f0f779e7f4cf580155be13aa", - "address": "lax1kz8k5hrvfw62mxum6rjak40yjnxvxer2njjrp0" - }, - { - "private_key": "98ccab254bd6fdc685db1bcc38ddf2a4c4f15301b9b34ba5675144d2d44daf1c", - "address": "lax1a0jjyallr9935vqx0t2eslzl7rtd9wcselm3kj" - }, - { - "private_key": "afc0e4739472677e9ab3743e5979657328866a70f4c17475595303eb42bace0a", - "address": "lax1esccevmyn9z9vrtxg8xklpcletxm5gslc8y2y3" - }, - { - "private_key": "f459505e3faececb93f70ec92d2f769b43f0ce007a8479325eced7c4a846a81e", - "address": "lax12d5ztylr7q9v3vtfr0smn6lh43e9raewz992ht" - }, - { - "private_key": "90a18a284053ac44a10a30d3b2dbeb57ff2c65ccdce88275f522a969223b22c2", - "address": "lax1hnvawycd95grgq76h8sjzykzusxa4s0hqynjv7" - }, - { - "private_key": "e9db20db2049983b2a47ecc20b77ef725cae41c262c76748873460c83fe11469", - "address": "lax13ar6t63ax9j94xlytzedxqyu5cllp3n8nsgte4" - }, - { - "private_key": "359d44d1be3e53ffaca3bcde1738301668220a417a2a2b0f9a903b11b2d26444", - "address": "lax1959up07wsz4sc2xh2gm3x7hegkrunwd05lmmcf" - }, - { - "private_key": "66436843ab9507f5aa7560ea4c0f48189329d89b5bee5da3c67d384f046e3faf", - "address": "lax10um5zzjmkdddj5jmmvmm7h4wfcx2avjz5ccah8" - }, - { - "private_key": "2cbc13fb51b8e38493028b407cbe71a4649851f64520bc981afb247094a712a6", - "address": "lax17gehgsa99x3qzn37p4l70ahdm70fl8rzwavkzr" - }, - { - "private_key": "a1faa09859f55524226f33fcffcb0986e1d75244c5f2387698d7c3c02efbab1a", - "address": "lax1zf5zcaszeues90sscfz0a9tlc6rgave27pq8ru" - }, - { - "private_key": "69d56424167bc3d5533d60f561a985be7b2c0ab4830035a4718134af848de8fd", - "address": "lax1zd6tc7yxryf4ukpgngrtnv4e40svx82cxdae4q" - }, - { - "private_key": "8c1736dc10dc4fb8061e35fe2123078fae26f73f5655289bfab7c996fb814a64", - "address": "lax1pjf8c89e7j303cgp3jkadehct8mmy3p9g4ycvv" - }, - { - "private_key": "1f5478b0e1b808d104e9245a1538037a0c49c4e8d57f35668341506c7c64c307", - "address": "lax1uyplxyx6l8fn4zr0w0uwthjrju65dhwuu2utnf" - }, - { - "private_key": "8db002040f9eb2948ab22155ddce894d6e9e4413af613e2b15dfe089ea7e35b8", - "address": "lax1yqdvjspuhl99j2jgss0jylu6emm2pndcep3yr2" - }, - { - "private_key": "e26d78f502fe87bfb7b8197bf476168f4823ea55c445c0e84d7ac4e57bdeafc4", - "address": "lax132da2fa6rwqqnnnns685d903jfege4rlg3wm0l" - }, - { - "private_key": "bc985056cbae98e39c2413e6aee37f1aa5b620301f30bd8d616070048a74286a", - "address": "lax1c40slvcv372rd79hdd2wu4ey7jhqycduj5fnmg" - }, - { - "private_key": "7c60a73ddac1e3b7da5843bccf801c6a2c5d8d6978b3056465b1eddd1a517c54", - "address": "lax1nfx2rat6k6lsuld0x6t2rund7ngd068z8nrhmm" - }, - { - "private_key": "12840216cd91a9ce4d0491d6096ec14d849a6793150e24476665a9b485ac7970", - "address": "lax16w380qk9egd9hsdzgnh29c2fwcet22t9yz9q5a" - }, - { - "private_key": "3c3049192539113e55b5bc14c69f0251b94d907862d41667711d87df5422ee5d", - "address": "lax1cpncrthct58xd64sr3cuylykmj0l4uvz76pjwm" - }, - { - "private_key": "8b460dee39954d70c85fb4ee52e3f2d64d3df0a2791bf035e3b6c37fa3ba39f9", - "address": "lax1t9aw4a8h2ncrx99cexxsuf8xfda2g8t6yq0vps" - }, - { - "private_key": "22ae56c15f644de7703c55203543e2ce5004444dc8663d6c4eba601b90ee7283", - "address": "lax12fj9pfsm873nslxzsqe82uwf4qydtkq7zxuc08" - }, - { - "private_key": "bc31dad1a3a8737a687c9d25f7845cf8fa5acf206b31ef25752377700355fd21", - "address": "lax1l24amjwcjmgdq3euxyvcqhtxf2d3dgf0vs90nz" - }, - { - "private_key": "0da900050316f444f59bcbba4b1aaf4996989e65bc640b195799e15bb4015112", - "address": "lax1q9ggztfzjvkapcu2retuurhz7x269r629ra83n" - }, - { - "private_key": "dfed376a21902d1c83f2cf43bd9884178e6f76cfb250abba65cf5c45575bfbb8", - "address": "lax1xml4gyhxv0awvcvnnx7e6ys9en0qyprk4jg9xn" - }, - { - "private_key": "fd487b5c2575fd86083b934c912f29868bbd4987aba19e3a6ce034bf10989e99", - "address": "lax1kqtdxw9ruztnjcdt06dcss444ejuxcehmzwk0r" - }, - { - "private_key": "685fd5a25b7d98cc3f6685b18c813cadbb9b5d01b37e45d1dd22ba2f4f537dd6", - "address": "lax18lkwgwt3v3lyqpfe54vk29s3yda6nkkmp32yhl" - }, - { - "private_key": "8f7e58a63951ec7a3a5ec979299ed780d095549525bf6388e5237e05977521ab", - "address": "lax1sp2kdflfxys0j3p5pegehzcxaya5dsw3ma28lg" - }, - { - "private_key": "b5fa87b5f5200ca59013348acd63a750232b94f34690a098bd7d670960537c46", - "address": "lax1xzptz4gj5cghz8htpc39t9ulsnv5u2ql9pecxx" - }, - { - "private_key": "032fdf25aae70b9d1788d34e68eafbbf3f875e0d532e5177a308ab52e1f0b86b", - "address": "lax18t67txgg7utzvd00emtmygjpfcwxpg49482dnw" - }, - { - "private_key": "4b729ad835c00bc18ce501cce1a940229164b7c7f614dc09926b50e006b041ea", - "address": "lax1km0dr4xts09dlsdq7u2g24vzydh3rp9acs5keg" - }, - { - "private_key": "a9cf31c1d69b3d309a91bf21379a55b47849b6a90b129cd0858397a47ee6d6e0", - "address": "lax19u09ylq808fy485dyvyd87za4f38l2jh5v05aw" - }, - { - "private_key": "6510a46b6721d32ee660dd066ddd9eaaa29d4938702e10e5bc12ee45cb1de0b2", - "address": "lax1cpann0aa9pwpulqe3au2w972v8rvwtuldydm0a" - }, - { - "private_key": "4298d043953c7f2b91820f899345c0c1fc379fe6ed339d08912446a5bf654f8e", - "address": "lax1e0ggq6wjkskxpgtp8dgr4v56jqv2nzc8fk3ggm" - }, - { - "private_key": "40346060f52d837cb4a8a86b424a1d54eb6af57b7f9b85c7816d3617db7ed0c0", - "address": "lax16c0pln6jnxw3e68mjgagh60q7zujxjzm74sv0a" - }, - { - "private_key": "985e71d345b1262515c6b581a3452e62c58880e025c8a55fe675183df65b753f", - "address": "lax1375rh2kkvy2kqavwd2fjgrmcgl5ezfeys90ujz" - }, - { - "private_key": "9f4ba730150fe18da722abbdc35855f02813042b61fa4001804e9b7bdbdead5c", - "address": "lax1vkp4n884up8pkttytzer4du7cw49rwsvx6vdju" - }, - { - "private_key": "287b37ee89be5555764c2365c669ac4a8cf97549de7ec41d5e2745d8373436ed", - "address": "lax175m9nphk4chg6h4tjy06wxwz2dxf9h9qcxn3nx" - }, - { - "private_key": "8f41ffd02cd69f85d569365bf95e10b07e6a57707e234378cc5ea08899cfc098", - "address": "lax10v45p3e83dlnllttkqn9le4kce6d49u9ze04nr" - }, - { - "private_key": "9953ce64c1e9afea08499567af47de2629e1c4bbc4e72ac2cc4d698326f39198", - "address": "lax13nsq9nmep3gj9rr7rw8pzugqj05sel4uyvvn4n" - }, - { - "private_key": "e8362ea3cc839d76c93fefcc172a1e1fb3604918033a3a1ef043be96f1a56b74", - "address": "lax1446tt06mjy03m6qxcwrr5djkgpcx5f9dl526mf" - }, - { - "private_key": "4dae1202a1d3c5fa93b42296822e433a430bbaa426a78410b806e4476b4ebce1", - "address": "lax1tqlyaxcwsetqctt9ykvn9p2r54vf6vttqta6t6" - }, - { - "private_key": "7c6bb3637a1a2d885d7058cc5ec839725f67402e1ab241f1107a4451986fc753", - "address": "lax1t6mk0cd4ydhyzxmyagn38uavr8z6jrjh8h9mk7" - }, - { - "private_key": "d57f504712fd8c73887f8ca6bf385f7616babea84579b5bf18755e832a56b66e", - "address": "lax1wlckq65452n5rxh7q52r96dv0djc68rw0mklfz" - }, - { - "private_key": "b6dc2b40fb56f2f303e6a978e0728ab09d2029d1fcd6f3fa73ba5f2ae5cd2216", - "address": "lax130xkcdce7tvn6sd07qw0lnm6ru5wjwwa2j9w8a" - }, - { - "private_key": "89924e4b191c1404d15ab7232f094f2bd3dbcd2f5f230260131d031b6bb1be75", - "address": "lax1gxjyptmv3dc243d906yftfgrtrvduk5xfk93tk" - }, - { - "private_key": "39b639976691cf2ca8ceec1dc593b0c0e12ea095108c2a1b8e3ba2f930174ac0", - "address": "lax19snw4xhzncwt34rvg5t2pu9ye9jyw3rhnskskl" - }, - { - "private_key": "e961d9aebedbe22cec789c78838a1598ac9ce7a4139ce826c35a2566ba58c60d", - "address": "lax1r56zq28ldrw29z6udrayj26pzwvvfpvq0x3xem" - }, - { - "private_key": "beb19e44ab810406a7422112cbc2dce139c378edfa38ceb32b4a92363cfbfa70", - "address": "lax180jcqe3vteuyjc6wysdc5ve9sxy5cq70qz6kky" - }, - { - "private_key": "930f5829818508776b80056ecc4b38fee3e0d1eee11063fcbdf1ee9e9dfd70d6", - "address": "lax15567arvmssvvrnuqr8asn42ctdc6xhe2833m8v" - }, - { - "private_key": "9b56d2e9915702cddefab7b62c9f7836f63b988971624d607c63085163798fcc", - "address": "lax1m3j4wfd59t4arf76r9s89ln6eca0uuljsh44yl" - }, - { - "private_key": "c1836bffc8843631d6ef6a099c60c91b8756b1b1bd83fc14b59c11f1cb7621d9", - "address": "lax1pkydmdn6w6lhhaarta07j8wnt3mfp5x7suv5tf" - }, - { - "private_key": "6a4ebb953f13fc7440a21af8e4004569a679e3aebc6e2cebbfcc042391485ab5", - "address": "lax1pv0f9m2cnlu2gp2th0x5qmpu70wnvw9vksuh37" - }, - { - "private_key": "dae4a316e7324e32770ed61cb71ccc697c15744cbb2d793328e0aeaa7a687098", - "address": "lax1fcg2tddsyj3tqjzyh7htwe8n6s439v2akx86cn" - }, - { - "private_key": "4b1bf1109507aaff11302c8caebfb33d0284f5af0d9f8b78bc822e28d645d4f0", - "address": "lax1dzxha6hwvqvgnvwc0g4wxpg8cc2n9dexeh8v20" - }, - { - "private_key": "aa2c53799b5d77ae8ddead8513fd6d96d8559b200ab6b283ce7297ad3de85ee0", - "address": "lax1yx8k7sugurk3ugaewq9wf2ts9xyymw3lwlrhld" - }, - { - "private_key": "31f97f3b305e4f10b79a6ac179eb91318192ea5a9650c5d9f13129e3a03f503c", - "address": "lax145qf07dtwvvcen4983xxep5r6tylw3dmm8tq67" - }, - { - "private_key": "14713c3dedfca7a0593480cfd4e6e7622ae49ae8d8264f58182f7e8b499bff6a", - "address": "lax1jwtj0wglnskm4hzwn2hkp9x29yv0gftvpg3es4" - }, - { - "private_key": "4e9d7b482a68daeceec83f09b06c77f1a702807ec8feb3f2ff907c0e29129a43", - "address": "lax133paepu9s9e20y9jxepr6mwc5w2y4egy5apq9m" - }, - { - "private_key": "07b321175458ff7052bcc85adbe7b684f204be6acf8f1eacf8cd4666fc923566", - "address": "lax129mqs3j26lvj36w4qsc99ee4c57snfhkzsudmt" - }, - { - "private_key": "e3bef802963aba076b8a85e0ca879718e6e30d64f0b5f1e8e584f992e5c1f3a2", - "address": "lax1524m7k52n7xsg283z4cfq3kcd4u90d7rm3p40k" - }, - { - "private_key": "84d780ca070e1144ec89376597cbddc68b2027eea92edcb8bc61be0c2bd1e0fd", - "address": "lax15xjardm0tqh2xvkzz8x8n07d7zqf9t3nzytasj" - }, - { - "private_key": "4bdfeeaeb17c431203e60ecf3408cf92fb79777cc274ad53983049f1d6a94a74", - "address": "lax18pu4kuuv9gpelsc5lrr5xtfuwgsl6sqqk4kt9s" - }, - { - "private_key": "e1a56945153641d7e7cd482bfc98106f13b40b301ff896234d173747b553d9aa", - "address": "lax14zug8ml4pz8savsu5qgzcpj3mx0prphj59x90z" - }, - { - "private_key": "8cbb8ef846cb673f9294f926d824252456bc129fc049424ac06e5c667055f46b", - "address": "lax15agnlxuckq265n6657mlyzj3p8jvl3p9zltr9w" - }, - { - "private_key": "8010d375a72a615f38b921fd1d38ae4ba31effa652480e7fb7c83336f573696d", - "address": "lax1ckquqdz2pwg6wyvwsm3yuc24lkvfekef6dmgza" - }, - { - "private_key": "60d9ab2e07f56dc58c5dde5f4ce3fed6e1f6903569354ea371d15b32c5098288", - "address": "lax194av33zc0z7tmczttawggh5wtmzd9hmczea7gv" - }, - { - "private_key": "2a6e852d2138ab285c33d87d836779312e818bf102f1fa338fea313ab7609809", - "address": "lax1nm5h6m6qz3q5t7upsxh5rj4ql4rsumh42ef3gs" - }, - { - "private_key": "075255916995a63cb442da5b8221a465472bd471e16931f13185607f0449b993", - "address": "lax1sulsvyxuzzz27pgms6my7eakqkw8hqu7y2cfs7" - }, - { - "private_key": "674bb33ea2a6a08b68902ce9308b0f14fcfe18f2a3803f84a02fcd0bfa2a297b", - "address": "lax1jn4a35etnrlm0nuhv9vg4khfear8ssjzknj7tk" - }, - { - "private_key": "fb889c2846cd901268e7d7bc43f16f4c7fb201286315b2c0fb558f88e831ddc3", - "address": "lax1vpdyhtvd5s4szdqh39f54m5x24dn33kc8u6r66" - }, - { - "private_key": "bd722bef4d40b8c1659bbea0e0fb734b81a45a44466e15872e25569cc7477186", - "address": "lax1a9pnf0c6mc45lz3kwefp89z65dq5c3nyrfudrx" - }, - { - "private_key": "da9ad1442962bd870a4176ffe972e4161bf3c359ee8b9a99824532243c6426f0", - "address": "lax18a3tqjy5z0kjcqpu5q2ahd422tl8negexpu36u" - }, - { - "private_key": "65c2cb854a094a5d6f543432d1a7d197b60bda50be0cc6d6089c6a323ac13457", - "address": "lax1hfmyyz3z72r7zrawzg4sulrd8jwdlynku4mwpw" - }, - { - "private_key": "627f202f5f61db77f37476e29a2d2f1b9050a78f3b4a2c534e209e56a725fcae", - "address": "lax1xa53e5wwe9zaclywcr2edxmwkjja4naf9r9fxt" - }, - { - "private_key": "bb378a4b7628cfbfa2ed4fd138accd6b068d3b747ce638fd1bce09a3ce7028e9", - "address": "lax17ksrqc5svakhwuy9v0jgpc4y4y0ud2ej63676n" - }, - { - "private_key": "a2289d440059e7e92b0f8ffaae4c566f0dde501d99b8186b0d79eea547e29f1a", - "address": "lax10lgdzkgwdk50sdgg4hpjh2lrvwee26j5q8fst9" - }, - { - "private_key": "3680eaa31cfc86cda9d3e825703487b7052d7436199704f3a567843ccb15a1cf", - "address": "lax1yeazeyxe00qcxuqp58wuchlluf243ettawshex" - }, - { - "private_key": "b0176d5b5194e53509125db8e5f26abcae9af04f69d13b1643d830be8e74e3fd", - "address": "lax1m69exmve0j2d7y7c97zklwvevxs0rsc2s92du8" - }, - { - "private_key": "109cb90fcad8cc31a8ac942283e6ceb5e175a448387154e4e2a79688a7e6a4d9", - "address": "lax1hlajh72ngrnctj54jvl9rexjue347drswtyau3" - }, - { - "private_key": "da75d554a7d4dcd2a1625b9905143dc82d014ec5a516bad5e19e96cf65330e5d", - "address": "lax1afy8jvhaezgvdnszc3pyxgq88g53afpvqt3yd7" - }, - { - "private_key": "eb593498b9b7a9dd431ac8c642635a22bdf312b83dc2125cc4a120c16b20a3b5", - "address": "lax1na5x4s9glaj9su62nhwswcj39axh2jyp3c7lh2" - }, - { - "private_key": "4ac55f2d37b93704e66c2d55fa3e12fa7d90cf002dcbfdd0e7b2bd9673d42bed", - "address": "lax1zqk43wx4fupjvaca7p6xyq5rkun78j2p0yl7ns" - }, - { - "private_key": "f662b1b429d633805516504c388ce5d2eee37b3b197c6c0423d6590ea8411b67", - "address": "lax178ne9qclnx7qulvudpnsjdnuv4k62mrtzj2x6a" - }, - { - "private_key": "4ee64db5d9b920721a6a8e79be543faacc33e368e5b9399e912742a29cff6ffa", - "address": "lax10kgk8x7jj2zz6jm6en9jz88ktpe2cgvemfkgte" - }, - { - "private_key": "f14448b1aaff1db4eb50c9f72a949473a48c56112dc7b2e667dc6f2b67949c3b", - "address": "lax1ec8833qkyupwzj5rr5ezgl8q6ujte6r5c3rlnl" - }, - { - "private_key": "ddc91ded30a3bcbf73b050b1b8d0e133da7b0a0b26afb6bd0df5faec62f7accc", - "address": "lax1xuc6fxytqdyzusz9g004uj88shvlfkjc4thkm9" - }, - { - "private_key": "eb0fc9cc81e54b2faa90c07ecb2986112ab17d57fe5fe83cc8aa8345172e84cb", - "address": "lax1fyt8qf8g2sea247e57agcsj29zd4wkxzh3dvhr" - }, - { - "private_key": "50b86a4f8d00763e32af469bc667ca9be43aef301d38074896425144f10916b6", - "address": "lax1jxjrs6kgr6guc6mnt7gwus8ujrdxndkf37fgtq" - }, - { - "private_key": "fb6a8e8333d9409a7e49e802d47957660ad8fd2e103777527bc906d1e348a107", - "address": "lax1ammqttqfxnwujkevxuperm5r8gltxxvvzhq9uf" - }, - { - "private_key": "ade015c5d05a14b59d2bdb2023509954a96d50e796ebbbe39ed4c56616f06eed", - "address": "lax1647ww3mzalaf995egdker6fjulxspus0kank9w" - }, - { - "private_key": "87d2d2e8ea752d15ace4b4a50e6106175865406d226db003d1c903f246f42888", - "address": "lax12fxu8gp89m2ygghq365efuadwn88qpwrw54egy" - }, - { - "private_key": "75c120b57d46a21f09de0309513ee4ebdba7710addab8bfba5d3f1375b8edeaa", - "address": "lax1820q5lkug0xmvxjsekv2fc4n2tgthpp2ujyl4s" - }, - { - "private_key": "f8474800aa7832a4a93964d604ea1b98348d5113ad1dc2bbf7f1e9cfd3967a78", - "address": "lax1etpp4ppumvyvqef4huuaf68q4cvexf52uumlhq" - }, - { - "private_key": "b6430fbb6672e5952cb8397e6519fcc1156f3791345480d190a60bd7e4362541", - "address": "lax1whs348m640w74qptk5s5c7a0wnvengf3sacp39" - }, - { - "private_key": "33060e93f1178fcc1bdf25ec9e0c941523c39420d916eb265a32985380eaf8fb", - "address": "lax1kvj9ch7tkc0sm4reuywze575lqlx64gpv0a8kc" - }, - { - "private_key": "a3fc3993f94b06b13e9998d28402ac05c79dc032b4b810ea57003bbc2a8ac31b", - "address": "lax1c4rrdp369n4dy8dk850cnmw0ez9kvz44g4q7ck" - }, - { - "private_key": "7cf8abdeff6bac06267f2bd3d6dd62d6876668bbd1d3b67fc4e166c53744bbc0", - "address": "lax136j9reulxtx8fv80hxjj6yday6p0q50mhxgmvx" - }, - { - "private_key": "ca04ae2ad32e90352afb38d3d636893f8f504759b7e851930767a3f2ed867bd0", - "address": "lax12n6vptyvvw0wasqxx6g50tck0psdsw49aemx09" - }, - { - "private_key": "e9811fcbe8bb0719829b757e0af719f9c1b1e6a0e32977e1e4491f13f7c890e3", - "address": "lax1m5ufh36f0lnvkp0y8j8g40lywucx2ezrw3v3nw" - }, - { - "private_key": "b4f776751d878a57cde188c2f4d047586324dde4bde2523cbf452e4eb8cc49ac", - "address": "lax1txexvmpju5a243pualscrcwhrtrmwudhjejv8g" - }, - { - "private_key": "49a4f215a43b591ef1eef26b3c018813e6865f99a82c292cb22257beaa4ad805", - "address": "lax1gq6tqqa95gchfvkwdg7l04jsvw8y2ylmzf9lns" - }, - { - "private_key": "23f15d67f6fbf9a697ce2284922d992a0ec5fccc3081e90645c41e4747d501e7", - "address": "lax1a73pf3gau6fgemuwvuf5nq66feggfc7h3yj9hu" - }, - { - "private_key": "ffb9acc9cdabe32903cfc367e89b0668d162f667d7f28a075fe4b11a09326289", - "address": "lax10qlhs54vfla2mv4tnfhl80k7xwlgnznc2a9p4p" - }, - { - "private_key": "8219035d2699bbdb2cdf99485fc77efc0a8c0973f70b8df0f2301c57ea42c9dd", - "address": "lax1squ045m629nlex36p3xyyngq80cz2gwaayy8a8" - }, - { - "private_key": "b267df902fce3a75b09ae0690b1ef68e22bb52c372c6e9911f9f9a27a9fd33e0", - "address": "lax1ga954lw0d5027w4ezhesdv4esky6zk47uhngmq" - }, - { - "private_key": "3e845dfabf49fe7df86270e418d304f9f13e8d248bc7ae1c6b09902d41263f08", - "address": "lax1shthwlz3tva98u9gfefjx0c4ka3qfj60klzsc5" - }, - { - "private_key": "25a1478f5a357f650598abb34e925ea99dae8b5f9bfedb5fc36c46603a8b50ed", - "address": "lax1xju000z3r3d99g4hfe8r4hfsxzam5lkkygkzkm" - }, - { - "private_key": "d70477e9646e3cf7f9f692e6041a06d50c94cd996704d55a3476c32a44afc387", - "address": "lax13ez2vtsj9pzdc6a0cu0nx0hc7yd0p4y2x35duq" - }, - { - "private_key": "6043d349b4a6c1a00afba12005e88d53edd0b9ced6e8f0ffc855ec60b44ae34a", - "address": "lax1fm34jh325n4v20ngclumvvn0jajpqur04q9ak8" - }, - { - "private_key": "d4a4fb8cef92617655c566c81127263d8fc35ce2f5c6125fc6bbe497a6b48607", - "address": "lax1pdm2g5kvuq9l48rd3zhpxwmw770229j9c6rln7" - }, - { - "private_key": "26456203269d34bf6ad4339799cae06523f936f3e83e571629c0a1f1e034b784", - "address": "lax1sxgdr9rl4hcqamdhzx2zpprhgfpxsv2v55zhcq" - }, - { - "private_key": "b787c8ccfbc41ac9040d56619490c2d4d451d58abcdfbad426295486547e6329", - "address": "lax1g96esy0vmmjwwsan7xyjle0dr7q239zn6chfs3" - }, - { - "private_key": "597546df7a9100d08cb8a843017bd9bfe52fd89ee5e62ec39dce40fab0ec727e", - "address": "lax1jt9utdlzy7eacpkqvfau75quyy69fmh9wwnc27" - }, - { - "private_key": "a95b32546b210a08badb5fce8dc2a0a468edb274ea639a8e0a2943b7a677c341", - "address": "lax10x3nruh697qw5xch3g8nunmsqha46u2d33yynm" - }, - { - "private_key": "f0b55005234835e89dbe453415c40dfee88bd9ea31378b9c93d6ee8c70853451", - "address": "lax1fymghy8m5rah9xvs5x2qkrwkvgle85t0a7axr6" - }, - { - "private_key": "82ab858b6f8c1f95cb5020f0b02b63b95a0037f4fba90672e72dea5c6375d510", - "address": "lax154nhfxeggcfq4pplwmmaml00wxqp48u776v42m" - }, - { - "private_key": "0fd08ab8dead5c037f9de1b53660b1f8166fae057ba9110183c1ba60f1fa2486", - "address": "lax1p465r0y8xt6kwqshe0fgzzjg4zex37rgc22lvk" - }, - { - "private_key": "2a660d270568b36dd872e20b5b3846e23b9e6ee3a23b0880122e25d269f06dc1", - "address": "lax1f6g9r3r2umm7zusnsff52r9spm56gmds4f2d80" - }, - { - "private_key": "bf32403dc74098a332dd770a77a8334eefd40e4e7bc6a4e74f37e6f25b452c03", - "address": "lax1t9eg0tdw556eeq6jaw6ha0mlpzz2sxq3rhdgfc" - }, - { - "private_key": "df645a6c9cd2a09fbf1b3a85e6a4c2b50014e287a598404b9f4856550c811075", - "address": "lax1xwypcrkz2tz6the8jhss2t30zsuf3s4yr09uce" - }, - { - "private_key": "ae205311c80b7aa5014206f721ecea8dc0237bed3d54faffe46b7986e6e89e1b", - "address": "lax17v28j3r95g6pcn2y9p9re8yr0x08a7t6545ny8" - }, - { - "private_key": "8298547a4da1452390c39585e39325342c68e7a0197e199f1d1f9aa1c765467c", - "address": "lax10rx4pzh0zyp3xxxtvsmxevxu4tt6xg0ueezt3g" - }, - { - "private_key": "09012e65508bdd5ca0908a9814ffe9700c6aad1d9889c9f1426c68d258f094ef", - "address": "lax1r9n6eefekstlmnukx7d9r6sazsquyvpsce39ec" - }, - { - "private_key": "1751c7588e6dbc828046f08a1f4f153a960ca662d33c396e6c7db2177b6c1995", - "address": "lax1tv8lu2u3v44y6s58dcpkx4ku5zawew9cz8epux" - }, - { - "private_key": "4fa5fe217efa71b9c1268486af04af52871d885e484bc7160f0d5e290472c8c9", - "address": "lax1venm96l8lray3vt3222dmlvrg9ek5yqs5tg8sg" - }, - { - "private_key": "2b58a6eb5c4105ec101475730ee6eb457b5055f815e5409fc57bbf2523d0d539", - "address": "lax16cyqg887k0qyafkj3zva7vez0vzsethnnzltcw" - }, - { - "private_key": "5a823a7b2acefdedea938500ab338020b4744650a0a8cac515b213f77c310fb5", - "address": "lax1hg0hth2yaq7hewa65kcz7v4fpgvnur02flddl7" - }, - { - "private_key": "b4715817e739673c78296c1d9d1695fb4f67d27acc66bd76ff33ac357699dc17", - "address": "lax1rpx6ud00whsy9ugvfehsnstngsmv6ar935h67g" - }, - { - "private_key": "e543862dec78b79f7b7d409c9db2fb37bda04a334a724c7b1733dcc7a0b3539b", - "address": "lax1t9zjqxl9tw23e0rczad52reg2cenhw2lsmlc5g" - }, - { - "private_key": "38c8f510fb04e7d82b09230efa124b4cad18f1f1eeba3d724ec09675729df5f7", - "address": "lax12uf45749n8awy8wkhyf760sd549fzpumy734sv" - }, - { - "private_key": "fdd9a1d27be39168d0449e89bf85d7bd401fc7466731587d802f96b4912ca088", - "address": "lax1alvxv9r8dptdcn73kxdqd2wdvwr25k3c828mf0" - }, - { - "private_key": "770b76d5374eadf111342f9b9d03baf50897e3506e2968c437fc5aacdf83d167", - "address": "lax1egks6dlajm6ve2l35dkchv5fthau4yr4su8y4e" - }, - { - "private_key": "d2a6b352248b59a2f2ca613f28e83b880803b3428e4b4c729a0a1598fd18c9bd", - "address": "lax19fml3jm2jqmptf962elyspeh789dyp9pckjkcm" - }, - { - "private_key": "73198e1b2f8551c9b619b818fbfb894b45e5ddacb9127b5c79bafca179736549", - "address": "lax1m4vj6l2uckpj7nn5pzljr7y8tmwqa4qgqhk0th" - }, - { - "private_key": "865a31f97f5f90c7fc801a323f5eebd67c7a454a6e7f420bd9e7de8d7a0e7545", - "address": "lax1at4h0rm7f3fwjp7sphjrhkcqcxh8w86mm7mx4g" - }, - { - "private_key": "7efa670d2fe0080a0b0853786a6f2ed19651f33718035bdc71e3c14fc10ee18d", - "address": "lax1l820jyn9mdtn7kd2822yqstz0sy2juzrgwzsgy" - }, - { - "private_key": "a5c563a4e30006ae37e3a592910fc1c1fb35f83a55d572f07d1e82d614a87c63", - "address": "lax1selpy7qjndytq6jtwus4w2fqzp7uga8evt6u8r" - }, - { - "private_key": "8b290119a3708630acaaf718051b5645c48dc54b32137015b59c37b2e62a602b", - "address": "lax1uf68kd72xznwqdcewc7e8fe6c7x9eajayjjqad" - }, - { - "private_key": "0719bedc69aa927645c4ec4f74559f10f7fe2ea483c8698ccd23dcb07f97d935", - "address": "lax1y3dfn435futg3mr4fppp6sruhuzt8ylyep2y27" - }, - { - "private_key": "891c3cc4ea51f04f0a7b3b3bf7a1296134f07895ff8978f95ed5f5ba9dd84d68", - "address": "lax1wcgwh7mc7h6gppct2q43csa2wf68np7mfgj4ts" - }, - { - "private_key": "e6bc20d5b67e3a75515df26bcaf7644433348c269d0352236a5f131cc6cc17ed", - "address": "lax1kz3vgznu9sg44yltgxjj9xz37jvlac50qz8yxj" - }, - { - "private_key": "baa1ef20d6d722acb1e7c8e616c0c5c5b04b65eaad5972f63b21772d71207263", - "address": "lax154duymp229h9pduues78qmp7j223ykuwwccdk8" - }, - { - "private_key": "0798c3b74f6e2b2f9657afbc5548647ff32909e7f11ff2c6922e64de5f38cec5", - "address": "lax1l7dqmdvte8fq3vce90zhk6ykxctqq8txy7nlcu" - }, - { - "private_key": "6b7bf4e61708a0b94e61862d1f9c38d7b96e7e3523d98c2c42cd08081bd17a15", - "address": "lax19zzlzx5kqw9zexsmsyssarqkfu92g9hyzj6jss" - }, - { - "private_key": "4abf420c318fd79f976197493d9a87554575d446ca9dbcaa1802ba7bf3afad2a", - "address": "lax1d273uhhpkh2gv0dyfu6llnesy42mrke8j7afke" - }, - { - "private_key": "878600d41c9e34d260e8fef7604c49b87a382c099bcce16778c426a7a92e8d65", - "address": "lax1nhm4gw0wtahggexd3fa3xgjtep53kw0xg7eh6k" - }, - { - "private_key": "5bcf693bbd2df0d5d576dbe52a6c578280d1e8f90f23f266644e560657eb609b", - "address": "lax1qyupd6ukjmhjytkxkeq2rhttkq7lzfmtsfsueu" - }, - { - "private_key": "688185053729305fbf92036eef4d5ed4c2dc8a8c3d5f990a95153d861fcaf6e5", - "address": "lax14m88ut4mavcf90jd7fqek75jdx53zekfra20qs" - }, - { - "private_key": "596a994834020b8e17490394f67b2841ccb124b4d0c4fca468dedef0ad99da26", - "address": "lax1dcu7jahr9m795vrwnhjw3wkxucee0lu8vn9utu" - }, - { - "private_key": "d626d162e5fa3016d0eaea3f866384e3314fa96bc1c26f20b07dc738182b7ca1", - "address": "lax1clwlprwru3wf8gtg7g7j4cwmvgke5x5m88hmn9" - }, - { - "private_key": "c6fa57d280c497e27644df2536d4127d5e08653ea79c86488f3aae5f24547996", - "address": "lax1dnvckgz90t6ddm76w9l0j7ntgxka99uudg4tr8" - }, - { - "private_key": "4354bea1725826d9933863293445161b976622740901d009cb163cd119f8eda3", - "address": "lax1quhlglylh4punfa9mz34uume2gxydf8x0u9glt" - }, - { - "private_key": "f150debdf90d7fa56e0dcb374e8b0f3351d8f4b94d7b55dea253a78f32b7b4b0", - "address": "lax1gcclzsg3hzwx5fzzsr6pgcwy22hh98d9vaad4j" - }, - { - "private_key": "2cc83804e7a90a7d4d73a7915def82ed6cc414d23279fb5467958825706c8069", - "address": "lax1jtwnl22jgafzw68f3k7q4mjyrttc98psnfvcam" - }, - { - "private_key": "e95fc54f637b7b355b6138cb0ce687195afc7055641bcccf32ccffe4753c9b19", - "address": "lax1qunxyzkh0kept3kewnxjflg0en68ae4ftsqgvn" - }, - { - "private_key": "45fdfffb81946c3cb4839bb6b61df4091d460cbf0c73e68fcc961fc98fde7f25", - "address": "lax10yp35qdxmhm5660epyqfw8crj3ems5nphw3lpf" - }, - { - "private_key": "13cb85cfa6dbcf52d842fa5811e5eca51b2d3d0ef217704e13374b7ea7daf6df", - "address": "lax1j0vxvp4jsty2ylzq8jrpy8kzhn8h09k3yld5vx" - }, - { - "private_key": "bef001d69fe9dc78277c43d8a57360111b7cffbc30c77d9a02a14316190e482f", - "address": "lax1u4n3wvalluwrh45elgxgkwkm425gyn70t47eym" - }, - { - "private_key": "e9fbacd7963ff25c84d461803fcf2ed4e06b3ed1703a5a88723f8aa8af4c3a8f", - "address": "lax1e9kpc574r306jcjhzvu9hpsd02qfjmawq98m9z" - }, - { - "private_key": "705269ba8c1b5b83833e71858eb48f816b1ff9b6985e9fc68a2c60b81e82e4fd", - "address": "lax1gzjecvx2vn2ulagkcstw8n6d9wjtahh8xvteev" - }, - { - "private_key": "245c44787588bfd1c1a7ee6be6c6274ad407af29550841ea41fb4bf8be0fad2c", - "address": "lax12qeu0m9s6pulrn2h466rl5s597p962u03mnk9u" - }, - { - "private_key": "810fd5ed5c3f0a033c080419af9311382b163c371d1086a889b4addb7e8b334b", - "address": "lax1kaxksd0vsg6svd3zya6uzfd52xch8y9ms69d0u" - }, - { - "private_key": "99d660498a9aa15146edd1a615ae9267e8cb457cff61c4a1530bdfa8d10d1984", - "address": "lax1q4afck5zzl09397jsvedtzqmpfutj4l2plnvwl" - }, - { - "private_key": "c6b8172a40c263e1fd0b8ef929302202f75310f741a795d2f8f2083e8b27b68b", - "address": "lax1vmsnyquj4jlhuczxj30tc5nfukz8s4fruw853e" - }, - { - "private_key": "ec1509b96d3c2dac05a999799bed14e82870925b58011af1395348f4f4b157e4", - "address": "lax1g0qwptmexgcts0v8hp38mcurq6vk4vrymw6uc8" - }, - { - "private_key": "28f4faace326f210016559d46951828bd329058bd05743926cc8634e7f09bd9e", - "address": "lax1m05fm4dv6rstv4pgedm5tr3xld6u6hvqn5jv35" - }, - { - "private_key": "32916612460e601fc789b1404ad99e36433ed44205244eca42e7922bf5bd98fc", - "address": "lax1uk2g03h4f60l9cuf63l2fdlsllq4s7xs0kt6xh" - }, - { - "private_key": "f1a793e9c04f32dfce8e661f3bda42474df2caf11cacdf10375f887158b70b7d", - "address": "lax1r87l0apwep87wxlnw6n3p5z0ghtdp3s8s9vw2a" - }, - { - "private_key": "6fdc70c45f108c8aeb5ffd7d4f7f04bbe35627b5c1556f5875d41667788c6ce9", - "address": "lax18fxn70ld9dsfty30c72j92hhhcwxcl7a8k6aqu" - }, - { - "private_key": "6b1fe30dcdcc5ef3e342020bea288b3a431fa8058739e647d4c56d9fddd42206", - "address": "lax1la72c535h4n5gppaf92tlhnleqgv3ngpwykx06" - }, - { - "private_key": "14801a4e302ae98d7c663c9620d6c8da5a48e027f2909cda7d16e65f7ea5dd4e", - "address": "lax1d4nxza6fk2wv82yc4nt2wur2x4e90gn8fpy2xc" - }, - { - "private_key": "bca0ac17850609c4d6469b12af7737584b939c21d6187fe8eb541504e93ce5b4", - "address": "lax1ftl9dnnt5tvpdlvtrd57lalxe5t3r6t548kgxp" - }, - { - "private_key": "804563103473757ca77ce849fb2f2f6a137281480606961f524cf55f5872a330", - "address": "lax1hwncczz3esgk626zf7356tle8jex6hr9v9rntl" - }, - { - "private_key": "fc10f4ff8d5461a27a57f52ec6097d13f0d2877edd65ffa7f0b2eb42c6b42d29", - "address": "lax17u6dl6x9dekjx92kwcejpwhz3w68340y0944s5" - }, - { - "private_key": "6edd8bfb67858de1c353b7a6a3d7cc042c4643a4c61d3b8e2cbfb0c2bc3a6740", - "address": "lax1e0m2q8fqztem74ye42vjm3y855f6s3w6qtujtq" - }, - { - "private_key": "6518f3348fa83b469c035e0c7808ee0703786db259aab323bd09c1c42f9ea3e3", - "address": "lax1aj9zdgr60y9fx9r4rteunhvy5g8lgzy3acw3wj" - }, - { - "private_key": "b6c842d4e449b5c8b00e0888f3919bb3cb03cd313ee8a075d23d506d6b453e12", - "address": "lax1ct2q7qrv2j9v62qw9dpywlmt9dahq2aw3n4za3" - }, - { - "private_key": "0a338a78f5356cc24bae9943bf843a46a6a4ee06b0144df7d697a69999513627", - "address": "lax1usjwqd6pptekhemxqknencnenctvfl4g97fhcs" - }, - { - "private_key": "903325dc40613fa7bd7f42f036e7178243f6ab6bda679e54b82b4f0ed855f1ad", - "address": "lax1h52evtwededzymc0jepx9ydmeg0sn824r74jwu" - }, - { - "private_key": "cc016a03ca65b059cef7ca4766d38a75689c44cb9636cf86215b6abacbc9b241", - "address": "lax1tgeg3yuh02sp3zvtwg6mjzhqzhsv029m6kcspy" - }, - { - "private_key": "ce0a6036d3ccb73d028271e223ae6653c75b0e655d5d962b5d549b8e12f2d7b6", - "address": "lax10j5q20t6f5hyt70quhcvkww56vrmnt92c2lr9m" - }, - { - "private_key": "e72bc0738a08f9c6a13f108d22e95a8bed7606bf9ea99576077adcbf8208f266", - "address": "lax12efzhfwejnkdgzgl8zckl5nxs7te4w6fsjef28" - }, - { - "private_key": "38e29cc8c9a58b189a5cc402f4072c35354f2a1b81c5c957ddee36f0aae0e58a", - "address": "lax12yzj0f2pstyzxfw5umgxaq4kwkc66xd7e2hhg6" - }, - { - "private_key": "36136be149df4a758522c4a3f3aa38b1a52a3c3e2a38e97da94f123cf680fddd", - "address": "lax1w4z4dh0hnpw2a2plydh0myvfkxmc6gajak0j83" - }, - { - "private_key": "901a6dcafe5ba56dde06ec0405d50f932112f378ce180ba89ea884dfe833f577", - "address": "lax1g6k43lamflrwqtajvdkvhyh3p385twcglm2mp5" - }, - { - "private_key": "e4b76fd9f1121ba83817c885a97d8712258de7786ed28db4aea2b266a00e6f72", - "address": "lax10heznhg84g6sd7a55y820dpe784sx4v4dqf358" - }, - { - "private_key": "1433dacdc881ce8bf7dd96e65e10820acaaec88969e67839b30ad5035bf36c6b", - "address": "lax1t3ujwdu8k5v96llhy2j9xtmg6gvx07pvzmwk80" - }, - { - "private_key": "ea9c6ef946cbceb937c22099b24a6e72df3ca72b6d0e7af2ed35af033ec2b708", - "address": "lax1dx6qrwl7f7aesjlvy9wdg80tmu7mwmhc0x2txx" - }, - { - "private_key": "51c1bbc54e1499c3a5d5d688c6fd6943b6ec30452373ff383367948bd1571b20", - "address": "lax1j6s3c5d0wks6s4h6050ew24telra0chpvazkna" - }, - { - "private_key": "d99f9d5cf04e331224598bbb540774043a0fbfc9896a635639a4d311701dad17", - "address": "lax1v44psguh0ufc3wuhym0jhq99hnp389pnxjqc7j" - }, - { - "private_key": "d04666255ceab634cbdd3b764b9b937a9386cc295d7ebdd416865f71e910261f", - "address": "lax17tht7zmvpp5a9u75s4gchkk2f2nuzecs7m070t" - }, - { - "private_key": "dda484278c21d40a465e7a4b439918e3a75aa21d98c5a36b1d26ab17ccf2ee8d", - "address": "lax1l07pfgklg33fmymr6q9ncerxzw9xnu94d8dxwz" - }, - { - "private_key": "36ba3fb0f97a9933d22919b05fac63c9294e27836e7c3e8621fdf79bddb1148e", - "address": "lax1u97qv2xfn3n6j9cec9frhlnzlhh65hzud8gwrz" - }, - { - "private_key": "7a4c43e1cb4881cef34d4b941ac88983da2b8b4278cd87f5c0db6395dd36679d", - "address": "lax1eu4475h04h3r4dm23xqs37uuscfg0u8l3rjek0" - }, - { - "private_key": "aaa0230c37125ecdbefb434f05f783ccc00a45e36b0779ee49da3a58d57d863c", - "address": "lax1rrjaurgkcqzqjx0a7myxcphtruc8k8n7qnts0p" - }, - { - "private_key": "c0a8b4e882956f6dbb87fcf6682148897c744c3d1cbddbed73430db524a0d800", - "address": "lax1rxl6l8zm5jahy7wwsjknqrypggy0k5z77de047" - }, - { - "private_key": "d692529c3ca875d86c65191496b65c5b75e634c5ef15c27a5fcfa1999dab25f9", - "address": "lax1ye8mlgwq8y84us3pdvus0n5k0rnuty09fe6839" - }, - { - "private_key": "06678c90d6c29f91594c9d8ed4803961d55785433d0b3458149b63dfc33ac755", - "address": "lax14vwxhlcuzv7f3z7lj0e4x29h4vn338fwjnra2m" - }, - { - "private_key": "70aafd5f1403220bb9abc6f18f7ab81ff8819e3d3f55cada2297d236a1b93dbd", - "address": "lax1tke90jmaaddcqh35479u0dt6ndmzfpq4ef5epa" - }, - { - "private_key": "00576d51ab99719c23c43b62bb4dcd7f023d2d3043be485aa690363aac64eb1c", - "address": "lax1k9s3vd5e5nqmky26l2nkc3cp8ekwul2fpyxt9g" - }, - { - "private_key": "e6f607d0c423897ce2c4ac530cf04034408e6a40431b8f56a0ab998faa8aa6e3", - "address": "lax1u5cjf4nmh7pw5g6mmpxxx6e4r3uycyfwtc8v35" - }, - { - "private_key": "808488c0372d6fec66097fcde32377df9de13f2f60b6098248cd92ea11d6fde0", - "address": "lax16jqy39alc3fkupug5tq9wuhvjjkvzg4nlkw2ld" - }, - { - "private_key": "1a478e3e246d36c1c14ab6f5b404e79d4a9e7d185185d98fc4866e78e91e7a37", - "address": "lax10p7gyp8sak0awhnqlf84qud2qyer98mfwlrfz6" - }, - { - "private_key": "fd819b01e2aa83873692a239c4ac65fcff1a593860d8f40260d2fb75d965b5c6", - "address": "lax1sv2v6ld4puv4gg6w9jywf5kjzvpvjv46fa8c6j" - }, - { - "private_key": "929ac2ed08f2f7219fc14c38a8264207099c49917fe63f3259a21124a4c0fcca", - "address": "lax1v6c2h6s2tfgur5639lkkxf78a85fw4jjwqzlja" - }, - { - "private_key": "f7db2acf1329275d259b67f9c32eeb7002cc74949454c98b63ff94c15bb80192", - "address": "lax1kqes4mrwvxyanv5fsefqc0ldfd7qc6x83l9793" - }, - { - "private_key": "18145ee1044a006646cd358e30ca2d5870022c6174e52bb78c856ee63db8e8a8", - "address": "lax17mx49wr4n47egapc7rpttmgrauj4f9r08q7e5t" - }, - { - "private_key": "630734802ad0bda5477fbb67b32bb64130a2b511536cbd5f0fe288631ac7ceec", - "address": "lax1xuccmunfe4pa3x7sfr2zckh3g43evxp89rt4tu" - }, - { - "private_key": "cbfbbb8955628be81e993ca2204019d22194f1d59f507284c8c2ee68563f1b4e", - "address": "lax1hygk4p8maanrqa8c833f8fcjpkh4tpyz8zks6q" - }, - { - "private_key": "be9d24cc6a8a38079e359eb7fa0b31db5e1e58b416ece616b3fe054e3ad9ecb4", - "address": "lax1t3kzex9ue2dz8n9zkkwzpxgc25l36h4wjauapu" - }, - { - "private_key": "4f772f3513b5c2b870487aa114fc3872a845e67d696218cfda127eed88016ee5", - "address": "lax1ze66eawd4nzcvn0s8l5rq0phfz9gvgmerclv6h" - }, - { - "private_key": "fb30321b897e0945407da1dee63caf4430365bc05850ae0ace8028d47f6ffda0", - "address": "lax1l3gvugr40k986usflyvz07rxhjs9ck89vfg2ky" - }, - { - "private_key": "ff87696032e1d181e49b11f6aa1e3ed03e3b309cf538d69e88a5d69e872bc96c", - "address": "lax1umaf3zjsun02ugkqxeqqwj7ffmn740edlrhsln" - }, - { - "private_key": "72c566bfbfc401112d6ac0968c8f7f8b6c266013039bf8f4a7512e6ce14a83fe", - "address": "lax1jfgd84vd7c0ummmq66z35azeufk8nf6jvkvfhc" - }, - { - "private_key": "f4883c34420a70abbbc7e36da4fa9d1087befa662c0a322891abbb16d99e69db", - "address": "lax1ayd439u8swz85uj6rsmyd4u4kkny0hrvyrg0r6" - }, - { - "private_key": "5b939d68a4788e76558bb5b5b72262bea6dc326fae6df57a853f8210d287b900", - "address": "lax1g3l7n342jva3e9fumandsn9qy2qlgemt2nt4qt" - }, - { - "private_key": "217ea15fe569e52d8ff1624f6c5fed4bbd427ceaf32c076231e16c041c4561d1", - "address": "lax1xrn560lv0chgqn943cjf03twc5j8tfxy0hy3jr" - }, - { - "private_key": "66d51d80fc419566a5828e0ecca622039c025b9f9c3e3f008ec4ddb9f066da31", - "address": "lax1fgzlngpv6d45txzdgpxelslcku4krdgs5f5a69" - }, - { - "private_key": "f6d1a0a669518f8d97ef2ebce756e6e53f56fc038e5661e532b0e561e938e3ad", - "address": "lax1dcx4p50mfxq2pya5e6z0p03qak7p9ss3l6y9kj" - }, - { - "private_key": "7bc3e78a31d4fb7f855b2361c6df0add2bb03b0caab083b8c894fa014e49d41c", - "address": "lax1pgvnuv29hgtxrvxv9005s6gk6fqdkz9zx7jypl" - }, - { - "private_key": "93d7c88eb49649be2a566c62d1f724d1e4e056a97ab5daf6d56508aa334fede3", - "address": "lax1q68w0682mpg8jphe334g74fw0w638a5yku8lqw" - }, - { - "private_key": "7a3a9c39750c56d36efcf83d459105297df577ea68308cfc3fa4864bc06929fe", - "address": "lax1dz5ztxzym7whm7m7vngztkt44wm0s3fhmwjzpl" - }, - { - "private_key": "5355f44a5fb02a7d7c454ae76ce87b70654be3191de2ae018490bc475446cea4", - "address": "lax1evnma7msq55s792euzf7k7y9jju4ffcj8p06gh" - }, - { - "private_key": "3b2243b3c73c551f1ea1ff2a55f1e69d7b344d93b9a8572bc75e0d3b35d3851c", - "address": "lax1kyf7d3s7usf673u06mc2ul8d7n7mcxp0p0d970" - }, - { - "private_key": "f23a76178ab04cb19562a69b4b99d6b468284c6eba9fa25bd2ace8852f528a22", - "address": "lax1gakd3e6692sgd9yq8lpmhhhghruqqwd5jxssf0" - }, - { - "private_key": "f58ddc1cc42c43fd7df01f106ee1d13451753009a3f07e2e046a8b1319039d7c", - "address": "lax1ttgghdrr7e7evne0qtsyn4uhcz9atk7j8aefnn" - }, - { - "private_key": "d278a9b2a16059baf2d3acb7e0047cf68794c2fbe605d09e588ebb179dd9983f", - "address": "lax1vhwj7x54hp0nystqxnysk0vexkngz2sw6c4wtx" - }, - { - "private_key": "f5be6a197381c200c96cc6c3c98a39447c47d7a0a0a65feb4714fec462c526b0", - "address": "lax1ryz3guuehnw9n2kpu5q8yl2tfl6f7r7l4g87ez" - }, - { - "private_key": "7223597868eaaa00fbdebd294b815631d473ca7037a14f316527bc63255718d3", - "address": "lax16zjxz97ktqg2hc4gkkwq9drzwnpek48s37gkl4" - }, - { - "private_key": "956e708ff4935844dd35b1bfc28bbd74fe665269c42156c4ab47970f61069547", - "address": "lax1m4tvk5m0xt97gqud6wdgjddxqskpn7gp3yh4cv" - }, - { - "private_key": "e840997560d78a989dc7cdc3096b6c821a306a4ac3082ac9127b30561b2e9c67", - "address": "lax13ax6swzngmx2j0qz2cq6dws56h04364gtsgkq5" - }, - { - "private_key": "8e3cd9a0c4275b4ca32e3f6c331bd4ec9448cb385709fcbe1c175b8d6d47f950", - "address": "lax1d8c09cvqzrsdjs5764mvlqeqv4zn5cm3x9hw9q" - }, - { - "private_key": "bb3649cddb193bc66d9c893692e09b4cac85d94d427f4b577bc05b8ed8d032cd", - "address": "lax13p6ner74q83r5s3g73x43puc6053ykak9f0v05" - }, - { - "private_key": "2ed06bdefb7a82cfadc09f3376fee0f1818cc08a7334ffa8a77c56ed183bc274", - "address": "lax1wrmm70qhapdw33326vgsqvcverkk00u94zrzwn" - }, - { - "private_key": "79c496617c0d43ea07fe9b7b307a0130537c64257895a6a1847193816496ce56", - "address": "lax194nuxuhl7kfgh5vk4tkjk7cljgflh3p3v24zjp" - }, - { - "private_key": "2603c7c263254de6e3c72f059d0c2f26c41877454435f26116d95f1a710819cf", - "address": "lax1megvxwqul5pwfjs9we7337egr8l3cyf8kjzy0e" - }, - { - "private_key": "f3823ea93b6d75217d6d705e85ab2a94d9fbb8cc97636a4c7f6becad58b9c0b8", - "address": "lax1lf8kmymn9gnhtxq05k9kvwtah3rp5ru2n4vugg" - }, - { - "private_key": "f0956e89b6b0316f06fd7e1bf487efb7bcde8e2671acb7c6966d217a1765424d", - "address": "lax1z7luxrtcxccq9g5l764ptwzlrlcy6l3352h7y3" - }, - { - "private_key": "4ddefd0d52891a1bfdc8cd1e1bbd21599a074e51a98f7084e3d5f03e1f4fd4cd", - "address": "lax15ehkkgn62tpp0jxma2568dumgpyavt837zphjz" - }, - { - "private_key": "7ad31b1e9c686113c88b0956d7d34ab55be0b0870b9a33ea4152168358bd71d5", - "address": "lax1nhvw2j9tkryc0t55qvujfg25hmepzpqkpyrr40" - }, - { - "private_key": "87d8b554e79f60e1b9c7657d6c8dfbc8ef8e4e276efc9fd6eb8e7f2ab19b82cf", - "address": "lax1apg7kk89w4vf20a3f39fgcyvvr2edtgke8t2ev" - }, - { - "private_key": "de72fdd1df95f97e215e36c76798b65f2d60b7b27735827ca0b983ffae3a2518", - "address": "lax1puq7gpa9v70f56aw2ns3aumjy58j7d477zmpau" - }, - { - "private_key": "82b1c2df89f87169a9833a47c4a480f7cdb1f3ff341ef492739b02990e220d1e", - "address": "lax1nacsm6au6cpfgwnffct4y5n3h8w38rex7q8hv7" - }, - { - "private_key": "13b2d5955f2e405dff55531b8643040494296d4eb7a91b49ea9c8ac99e530dc6", - "address": "lax107x8r05zf62jz7c2r50q3egkdsx25n5nnxh6su" - }, - { - "private_key": "65596d8cd1dcaf971f00b1b7f8f9400f3eaf8a8a03f5c45e32efc2d82ddee310", - "address": "lax1xj2kvk6xur79pelc4dfamah2jz38ezgt4td0xh" - }, - { - "private_key": "9fd16176d7698060105fec20e3a3f63023c8861b850a7908ef3806c129919af0", - "address": "lax1h768lx7fz7j9y3l3vcml0mpgyszhew6wxaldhf" - }, - { - "private_key": "8499002ec6a45f76a19784e0cb3aec1fdceac71b461ae53597a60999a5de4ad4", - "address": "lax183jlsnu5zcxyascgs3j5dlguckl2pmu6p2kn3h" - }, - { - "private_key": "7760e4979a70cab6c91e49ef58923515b9626ff9cbc72bd3de98b8bfa3891178", - "address": "lax16wjp895xh7pswexw42naz80acaxxuqftft6tm3" - }, - { - "private_key": "74e7c87b576f655dcfe5d64d4658b65ace6c12c9a0da23ac9051f71996094793", - "address": "lax1hvtjcs0dhykf2wsdc4jk58lfq3lvnup4rjcs63" - }, - { - "private_key": "8ea5d49337ce68dd93eef7ac242cbb94b3504127c20c6c57a01f3e9331e21827", - "address": "lax1x5zk4mdthe7rhhlt9axmh4s3mjskcsde0yuh3s" - }, - { - "private_key": "e61d227b5067ec59ccfe456f1743b9d58d012aeeeb337b16c392decf73b14253", - "address": "lax1e3fwxrlm0z5zke95m9k9g5ektn99lm3mxqakpn" - }, - { - "private_key": "b5b343f3df2ad08a56ef537673d5515e5eaa6f684c62da24e1fd781ca46a8173", - "address": "lax16m4rdq0mv74ug3afssjq49wu93pjp3n95mld7g" - }, - { - "private_key": "2cf28262d1289bf60ee3dea5b9361f56282e5461459faf697670bda1105edcb0", - "address": "lax1n48ltura0al8rxwaqg9wxq5vfde5ldatsplw5d" - }, - { - "private_key": "496e3fdc662fc8495896ef67ac22eab2e4981a8d3667d71d6d3552d35bc1b765", - "address": "lax127j344n0226pzpyze27ju9q9ne7gvxyxmf7fal" - }, - { - "private_key": "04d8bbc1451e48a46923e9d82d61c838b17b69fada491d8eae17b9dbf3a5f84e", - "address": "lax1y2h2x9a059d25nkz5vyp0qeqq745xm8kpywzzj" - }, - { - "private_key": "1f3184da1a09b70f38fdaea81b575621086afc8fba40b1c880797f66ab798154", - "address": "lax1d8q305eklslpwt80qrxz5l7s9su2nwsegdpmwe" - }, - { - "private_key": "26d27392796dfada87b81280889ef83b82e996d7b5a33f658e702e1760c5025f", - "address": "lax1xm6arnp9e5l5yhke4500tcu5rgcn9k3kqyjxww" - }, - { - "private_key": "1cbcba39d3709aca7962600fdbf033414ed90220588cf95d6a61590c5f37924e", - "address": "lax1h4plrlztyefssqje3ve55c4lnwkls35y5vyx20" - }, - { - "private_key": "bddfa002e7e80cb61b4e60daa7c71c8d0c1c74a6a82246f9ec2cc558818c0abe", - "address": "lax1cfvudcvgawncdh7pglz0jdxd2nettf6kxzwh6v" - }, - { - "private_key": "c5ede3e4c375d55e208331fc6df88a79380c74946aa611c8f9ceb21dc375b70d", - "address": "lax1wu7prg7jz2ytkgvl4kg5vneg6mntzmpuz8h9zv" - }, - { - "private_key": "0cab5a2815e598e9e3448ef54a9d12fe22cec349f611a8196b97f2312d26c349", - "address": "lax1y3lr4n2sqz4xu66cz2z3tfr454ewzqvn8l0k7j" - }, - { - "private_key": "d7538a3367ae4acb711ebd90b927c06a81c37466b0b08baeb8f1e9f12f9a34c2", - "address": "lax1rxg6rlzyyyv893kln3t07z3mf68uklkuddfc5x" - }, - { - "private_key": "40f98203be4eb2fadfb0890bbd6478669b61afeb58d4e34dfdf6040ebc4a3ed2", - "address": "lax1dpvsvhhmzvtftcd0rhhp29z778ceyncy3hdys4" - }, - { - "private_key": "40de1b3f5ab8384ad90354ea9bc1b19487a4730d7d550c43f6e9c240072cda2d", - "address": "lax18rrr74nyjf3pkarz7krsdnlkv5hc8y4c2cvnc8" - }, - { - "private_key": "66f4f1eeb81f2aaf75b43d328a380cf6fc2ed1ffe817da79291f1534106e82a5", - "address": "lax1jckkwxwp70meyn2zne4vp4u6g6fxftpkumjkl5" - }, - { - "private_key": "38b5cb74be06b4e5f5c30fdeda7741c730be95ffe33186e76cd2896fceb295ef", - "address": "lax1xhzjp5q2djvjd89hjyjkkw6jese8dhr9rvjm8a" - }, - { - "private_key": "932aac99e2d3fd68ca5b5939b4b208d5065b0ca60f4fd9188029a3fd1a9cdf0a", - "address": "lax1k7p9jjckj3u007p46haj8rncnnvuksq8pp7scw" - }, - { - "private_key": "58fd5482bf017165e4a05fa51ddfd158c85f92b8cc4fc055f06e70298aa86bbf", - "address": "lax1aqyjvpha8rhd9wm30eqjwesdjall6h85csrkrs" - }, - { - "private_key": "7321207c6953c92155003da45f0dbd80607b8e169f6ae03cf8f6e7054a936522", - "address": "lax1mud2ww4r9qyd4mhs2m3u537tnlu8xj7m53s0p7" - }, - { - "private_key": "41da6bd27e82df38912cf5b6a54fc5483a8c0a2a84d06088b93c19c9c0800be9", - "address": "lax17u6egw5jtvtjmz9uf6h09sqjmwxu8a45r8kgct" - }, - { - "private_key": "73df26d97eb50f659b75a3a2f5ffd7564228fcabc6109559ab91163f6000c13d", - "address": "lax1tw5zpa9g0ll4tcje7mpq9t975cha6u84dcafhf" - }, - { - "private_key": "a9f8ba21391ed2eed3297e4e8c150d63626fe954e72eab2e16e867a32572cbcd", - "address": "lax1dk64fvj3jcawrsk9af9vfpppzymr8k0t8z3wt2" - }, - { - "private_key": "15713729fdac0c2e209d33657b994fdef56eef6bce462475be968c7290dc91c1", - "address": "lax1m2dp83gel8afm02l0nrvhvw4wc0swul6jsvdgj" - }, - { - "private_key": "d4d28b67aea8e69932bd77681c8b3ddba8712d4172e9303f216c731d9e1e57ea", - "address": "lax1n2k5n54wrxgxpxve8s8nxwhhggrazlq37he7mj" - }, - { - "private_key": "a15e65f743113e408fa6a61460ec394749b76f0fc4caab2c6008722cd3f86f19", - "address": "lax1w6lw09ffxhwjx64c9hxqzgu9dcgtxjvyyjpj5l" - }, - { - "private_key": "be1dca70bbdc1603f20db3fcb9c16fa8ae394222196a9855ad4b919fa67b7367", - "address": "lax1h554txectupfm555qtm00dweq59d3u0dwkvfcz" - }, - { - "private_key": "498758f2593339650738f3a09509b2fdc86cba1b261af45a8756d8b1277358b3", - "address": "lax18xr6dwhxkymdlr2sa6cwvj2dvw8klclhpgtetk" - }, - { - "private_key": "169a71d60d7fcf3db414606b15964d0eda7143f4e7b6e46175f7bbb6f121ae63", - "address": "lax1gwznfnzs3zxg3lgx0wn5udtuhpnqqs2ls3q8q0" - }, - { - "private_key": "23bc4493222a008face983ea305654d467f6f100ee7c74a7715c4cbf7cd83017", - "address": "lax1nlftn49dye7ysfx9wmmypdjpa42jj08pqm4ecy" - }, - { - "private_key": "a8fd498ffdf6de71c47e4534a659a9259684683628f789e44a91071364ce2463", - "address": "lax1wl4r9wf6c3s3k6gzkgv09krm2hzg5n5u0fgu8z" - }, - { - "private_key": "4399566b955b05600dcc7bcfe0ad285f8766dad61b334bd2058514a309d33215", - "address": "lax1na2snqfzgynf6gcmm6gz6y60jvr5mf08em22fl" - }, - { - "private_key": "2a260ec76684b9515701eeb7a849f7cac2d5e712697380fc86db00a38134d0e9", - "address": "lax1jv09vjypkvh0jpkemwt68098rdy7a7zrqst8yd" - }, - { - "private_key": "1684d53406f14c6df22603b11b3f75f02cb3fbebe65fd68ea2444e7d102c9de5", - "address": "lax1a8wgpvvqxeevys3d0u0ddku24jdfus38dxawnm" - }, - { - "private_key": "0616104e237f146f26daeacb0a062d2031ed1c356fb672193d6034cc9a227bb1", - "address": "lax1kcutgzpjsrs24k00e9a3mykn5yqm7ktny7leng" - }, - { - "private_key": "a74e1b69f978ebbd9784ea387ad49acf9169d2c547eea5cd42976bfe2fd700af", - "address": "lax1lzhj4rmtemthr0lvp7t5gtxv79emm0x0py47xp" - }, - { - "private_key": "d9ecb7fc4c0475ab204db8560975717aa79ba1f29056e660d990de0f5fc4f44e", - "address": "lax1yjs8ffkf70jukc863mk0d309m7chlxturwnhg5" - }, - { - "private_key": "c930acebc3f5b19c654fdd551440db7955b56669c112d59530e08746ac523996", - "address": "lax1d0jftagrj5ta6p9u0zgaqqln2zeh5faqw4vy26" - }, - { - "private_key": "f10ed4321663a53d5ea22b9041ba983cb38373b65b3b900b54caae7ed17ec189", - "address": "lax16hlxt4qxk2yq62nmwcnlusydqwzgw9e9z7vw75" - }, - { - "private_key": "328ce91be71dfada38486af3151ba89fd6f0c0a86b3511ccf470b0609f181896", - "address": "lax1f82nspfrq2jg32kkgdkk78wv4yn59zfedznhxm" - }, - { - "private_key": "a111cf49e8cb2b0d1355e33507aac9d520c732135ac27df380ab99ab885cedb6", - "address": "lax1nyvmfd9edjz20ny5gwcsffwcf04myp4cd5m856" - }, - { - "private_key": "4f7390584232514c31f63fe6a0db2810f6adf8c022fd90b4d9067bb44992202e", - "address": "lax1e2ru54e782r38dw48rhlq8nkfts36py8x3pfzl" - }, - { - "private_key": "c41c73ef93bea13a2ab4b0ef315971abb48157fcb8ab6917db88c922eea6bd67", - "address": "lax1ydsuv969ch67wc42cxskq7j0e0ysdx3j8kpjg6" - }, - { - "private_key": "f4ade0b466ca2c6868aedab7a146057b150eba1de78e8a836f1321c6e5fc60d6", - "address": "lax1cajj4narlkllvrumzaspznkwap5zcyht5uln0q" - }, - { - "private_key": "8a9da13addf987e06503ebbfb45b2ce0429bdd0c140fbc0af55106bde65a82be", - "address": "lax13p79ql9lktl96l99y36eqdrh03peuq28pjrz37" - }, - { - "private_key": "2bcb90528081d836354337c6f24e888b848e4ae45284b262e8bce8e982236bf2", - "address": "lax1guxx6qklgezwuukuukav9460kgqakk0e5944lx" - }, - { - "private_key": "f7e42e7974ce5d5f8df5938865261b445ff0bb347b0d651ae4972b6aeb225ce5", - "address": "lax1j25ezu6jf55j5dekzstp6g86243pzxz5vvxgn4" - }, - { - "private_key": "6ea47011d8035f75154afefbb5b707be34cae7e770999d28eb61a92fe3502255", - "address": "lax1z0wkw8ncu5zm3xs7f0hhq7lc4z6drl8k8pp5g9" - }, - { - "private_key": "94abaa60fe5692525546f9a82e8ca15c6f54e7dbe69cadf6d172ce2485edc8c8", - "address": "lax1v6lahysmep0n58jzhaz03q45f88hwmsdgpdp50" - }, - { - "private_key": "ae25ce882d21438517ed351ceead495670859bff4fe199dc9d86f9ccf72ad01c", - "address": "lax167s2e5zexzvqm7pcplh3vptc7hm5ahy9uct9pv" - }, - { - "private_key": "d2a47976e9de1ad17e86121d62633db7653019dc5991437a0b4c3a4582b6a57d", - "address": "lax1uy7hdkgaad2majqvephhtr2w7twepm99kclvr3" - }, - { - "private_key": "585fe6d528d4f864ca28c960a2ccce5d141537af1e0560f99a621dfb9a8ce72b", - "address": "lax1xvq7sxv7jh808tfn6p3n58ec6en79rh7jqjfp3" - }, - { - "private_key": "ef3110c3e3bf87198cb242b78b4f444c22369c13aaaecbd0fe132415ce751067", - "address": "lax1nz8akdh9zxg8aj3q8gne9wavcle90etm08mslt" - }, - { - "private_key": "aaa3ea4907460b0aa77ff077ca02f8e9908a1990821d7ec16fafb8863348bb9a", - "address": "lax150am4eng0l34v7yk6v8he08w42d4yg20rs8ctd" - }, - { - "private_key": "6973c8aa2a175c225022b083675665308f61936e1b7c1993207495b5dbd3dfdb", - "address": "lax1z3nk2t2wzftjmx87fcdl0yfshjjvu2xx4luvl2" - }, - { - "private_key": "7a16ba2ee96bc74893e5174b9ec1db7969f7708e887158d03c8b0e8a21ea17cd", - "address": "lax18f9p6qah03qrg8euv6fj8tce340zz0un09r43r" - }, - { - "private_key": "ec59404ab86111884f417b2aa39bac1374f6a83ffefcee3a3a6c460f6ca451c6", - "address": "lax1axewgxfahysz5tw7wkp6mn5wyxsf08d4s42rxu" - }, - { - "private_key": "026591a8a8a0ab60fae62d15f3e292b3b01b97a9aa5c6ceabd8325aa3de67539", - "address": "lax1up8mkuz3s0yz5cwu7cdd4ue0434usl8gfgw8k6" - }, - { - "private_key": "d85617129a034e6b7bd1dae7d846c6f54335b08c7bc99c26b537b175f47753c7", - "address": "lax19x6cn8q7nj2lkhhfgup8uynevjm6sntrswr39n" - }, - { - "private_key": "d531348fba0ca987d6d510709c3eaf9afc737ca183b09860935cb8ea7e249752", - "address": "lax1rn92qunz4uvyusuqrrh2nxyd5nhmfsr4tuahyy" - }, - { - "private_key": "2a264b45711dceeb4d41ac8d46c6991518b0fb892d23ac7a2c92723106848e29", - "address": "lax1t36qgngumhk63em0vc9wgwzyctn8fe0mg5g468" - }, - { - "private_key": "fabe29e01acc379c6512e9753a39b4621059b741e6403706bc9ad4765efa72b6", - "address": "lax1vfx38kprwtpywf7ajzxwg4whc7td2mwn4npgmr" - }, - { - "private_key": "799422c5c222d9316721faa4fe0762a8a1872472a4b91ed1979c1669d844362f", - "address": "lax1cewjtzn53ykleka4twvcfcllheyexcqp7lmvzh" - }, - { - "private_key": "b5eb8aa9bf3d6a8bb1808c47b95d75681c43ab9489c91cf8870442b21c5ed9eb", - "address": "lax1lhp33pl2rdv9mwp6qmk23seupz0umtk3qk2jgs" - }, - { - "private_key": "67e51932985fb701f3b43bb11ed937f4cb66c85a8695978e26800bfda89cf0c8", - "address": "lax1mazyt2zrwuy0tat34dzkeqzh9hmxcesx9s7z0l" - }, - { - "private_key": "1fa0455605556cd5e307a1488be7a3d36cb737012f2135eadaeca99d91a384f2", - "address": "lax1ayj4kxwqxyehnax4zuuv8hlc3ev7epfvhcevuf" - }, - { - "private_key": "6a6112a5502d4fbcbba3d51ad993d2d314810180cca769be3ab44eb8d85c109f", - "address": "lax1kk3qqdma5qfzya45grpyq9ehr8s9yx4k99jdlv" - }, - { - "private_key": "f6a317d384c39df548b6c95d3c179532f64c1f7b6c1d05c3caaf98631cddc629", - "address": "lax1pexqd08tz7zd0g9603dmzrjvjv045pr9h9fkvn" - }, - { - "private_key": "35b38d98097d6d153a9de46cae737afe93cf6fcc0fc1a694e7b1ddf8c574c940", - "address": "lax1ky8hqk8rx8tpf7gktc2enyhknhcwpkqy8qlyyv" - }, - { - "private_key": "0187f214139f5747f7041159dce931870651d1fee283f44e052cb8e0f86196ff", - "address": "lax10n69kxtrwt9t5j0vhmp9q5r49um6xhdzxuhgdc" - }, - { - "private_key": "6dd0a46db4fd0970d6725a1be01de66f393313b33dc2875b7d29345455fa92df", - "address": "lax1987zudqvgrlyx5dxq83yww8mmwchg66r7j9ja8" - }, - { - "private_key": "23c68013ad7a6b090f4f9fea1b956f27824f158558adc196f2abf4713bfd6f64", - "address": "lax12wxp355mjrcl9ya9vreaweeqv6n2kqhlmsm859" - }, - { - "private_key": "42ce5dfa0aa656f134786a68071f8009edf1f5db4e67b0f8284431af14c2d124", - "address": "lax14q8m0ehtla344c0u900wpk757nqc25n9cygxj8" - }, - { - "private_key": "70c175758ecf0f0aab21074f883113908113fdfe20677448498be42f13d7f638", - "address": "lax1rwktpz7rhgck36allt9mz0r3qkuzhz3svvdd2h" - }, - { - "private_key": "269363ce2daf849a55cbe19782982b2f95cbd12c5fc14e99213ad6bd69a5f0f9", - "address": "lax14k58f6kvsyqpxe9ql2fsat46lndvw0ueqqtc56" - }, - { - "private_key": "c43d913ca41594b305d72b9cd365c2353be75946456adb2a2777afcc9b6cb891", - "address": "lax1lpsjepc58sra048sl8k4j6hhwuarwzd9pslgj5" - }, - { - "private_key": "a052976d9cdbc9fa67baad96c9e6424be003197284e004bd74c5a142dde2fb20", - "address": "lax1a4mkdldmw4gmrxgp2psht3eh2kr4tds7hqka4d" - }, - { - "private_key": "a816ef02dcbb23c064590a8ac6962d623ebba2eb4bc485e1e937806a97ac8c99", - "address": "lax19fkwhxmhlccxmhdnp53cvtah2pd38c85lnhdmu" - }, - { - "private_key": "5fd418a5fb9db7085b23aae3a10f4182b3b4c9ca50bb55560f3513d41e68187c", - "address": "lax1my05fyz8fkpjv9pv6gf4g372wtn8wh3t8r23j5" - }, - { - "private_key": "ad299be3f6d43f2696be38e0140662796d048850a778491fd5f8d194c7b67e71", - "address": "lax1rwk0l9xf6mehweed2xlgj400lngc8dwsvemduf" - }, - { - "private_key": "02fe6a012f129fe74351675a24253aa4a70b4cbfedd3c8e9805f4ced1efa3929", - "address": "lax1nh9hdkkl8gug5pqeq2apkkt4d980kgklaf9qtx" - }, - { - "private_key": "1472b26b8f85bf738807560b7fdc718f3cee91c6e34d6358853821583a546000", - "address": "lax163u2tjgflvu5jj76h8gxm5z993r23mzvkwz5cv" - }, - { - "private_key": "0936130ada57e917b1657b66ca12ebb149bcc06f97cd5324ec291a79cb9d5107", - "address": "lax1ra4vu72695xcut8amzm3f6yjuxpfp94verv780" - }, - { - "private_key": "0c8ab87f28999fbb3646d584d8692f9de0a6577a97c35be1912d4680991832cd", - "address": "lax17x3qcwgxxhugk072zzv5ksa92hhdnt8xte77y5" - }, - { - "private_key": "177806c52184463631ce1cbcda5ea8eac2d91a69255a7bc8db3cdd2c794d9a89", - "address": "lax1wnus60c65zglwmmcz4psstrg63dwrehxf2w38c" - }, - { - "private_key": "f7384d4274733d5a0cdac12552bd6dea3fd6941116822fe9da4cd56998ed0f68", - "address": "lax18pt8cud9juvnw5upcgrh82tanx6ku5lv930y44" - }, - { - "private_key": "5347c50f251349b6b64286486bdafc5d9a12a8775f24149e842f62cf87779028", - "address": "lax1lsrqlkjyy80t537nn0m3tyzyj0ascpxamw7ppm" - }, - { - "private_key": "fd41eb520e2b5dff95eecff7691006c6df3df576d5c34f2df6463f5940b1bf1a", - "address": "lax10dswa5s5a0f0mzg7fdjqm6lu3pyf3f6vhuqlnu" - }, - { - "private_key": "1e4c9b68e3f052629d5bcd85e224d6f95ba478a56b4ff4366e77ffed25452eaa", - "address": "lax1lekap6tpk8s93dne00pcy3kmtll67qrn9yz3zf" - }, - { - "private_key": "64433101a0d919143df3b27cb5664a5213347fc658e19fa62ece888a38398d96", - "address": "lax1zv0etg4559xhrnx5f064mesfcz3lz0vm0a2d3p" - }, - { - "private_key": "4a53c50edfe93a31e51a1a28ff80cacf9bb08e2d3c9e7e578b5b537976aad21f", - "address": "lax10sjtf6p4gmuuhenwpvmpetekzhxzvaejuqw0gg" - }, - { - "private_key": "cf4d6dab25c23dd452e44b06b3b74418a2ae32ecdd18385cd1ef70a2f91aa439", - "address": "lax1hn4jpr3jlcmxz67llygy7xtkhtn2cmgq26ljuv" - }, - { - "private_key": "75818109b45b631abeb9e52dab545a3bf30be58386ef73de295a5bce9dea6395", - "address": "lax1vx4g9vlgy6s7959kts68vyk4g9kdap6fseysfl" - }, - { - "private_key": "45385baf043297ade20e83a302973e953aa27966fe1b5942fcfd377451106d4b", - "address": "lax1luf28z6y25jj8uk524394ryrd52t2tr3kefwgd" - }, - { - "private_key": "04e61c1fcd833d208f019b608495e1d226c6cd5ffd17ff4bb79cb4719bd2046f", - "address": "lax1vya8cp0vd69rsaddqvuaecjv4c8t5y25lsq2jw" - }, - { - "private_key": "96ba55364cbb370efcb1ff559bad16c80ac9197f42ee227141d4e64dd228c171", - "address": "lax1rr63z03xgesy4kwnsj68hdpvw63r5rhsq94wql" - }, - { - "private_key": "459da2e4d21a1925317b87e0e7709bfe6ecd6f0b05893dccfb51e4aabd1c50f5", - "address": "lax1sl6m27he7sd53mndsc8wn24v69ge38mvrzkc0v" - }, - { - "private_key": "fc2f48dc294f5461f3b4c05d60fe997b710f8e4ff6ffdd2928913952d4ff8414", - "address": "lax1dyx2uwjfmp5r7d4v9ywfknga27q2dezejy7f7f" - }, - { - "private_key": "26ba1e50d1b453fc25ddbdbe97c0952d63d19d641f00c6f28a8f5bd7e0484c18", - "address": "lax1n23j5thppxwcenvlsrp22dsyswev5th53j6qdm" - }, - { - "private_key": "78fa16a4afb15dd518b1e1681123165b3d2baf217bebb011c2d3699654dbdcb0", - "address": "lax1tmuepgmqd2vqdjjal2k2wt0uthmkx2uuy3vvt6" - }, - { - "private_key": "8191361d867a7edefa7882864e7b4436376bcc36e8414b8815a1ad1c5ff36d5d", - "address": "lax1cv5jmqjuyqu7rqvz3egkuheczqswrknprjsk5k" - }, - { - "private_key": "a85a113a9d3c1aaeee964fa07e7507ef57e20e18646947f710017a9d546cd80b", - "address": "lax10lvgazus698x78uv2tjvxyapeds9gece4yxja9" - }, - { - "private_key": "835eaa3d9be36a34821f4a973590ca063bee4911d29736983a9aa83142c007ef", - "address": "lax1gywfwgk2ykrp3zmxj6qeccqf6herr72c43ulgx" - }, - { - "private_key": "5911a840d4a21ac873adbf6811906948201374e23fecc6d5ae71d258c40eff83", - "address": "lax1nqjvu2yvr3uu3yh42fvnhya4ahvzygdtted28r" - }, - { - "private_key": "838adf1cb80539b196d651c0269cf05d1401974966bbadbf0d7588515ec830a9", - "address": "lax1wg8fukj39ex6cnxxw43qlry6hhny7278gzjqcq" - }, - { - "private_key": "e7e6f8b5ca19807107b974756b6f366ab9bae607758bbacab1ad37090d324605", - "address": "lax1f4esk4nfujqvflgr35awf33gh4yrqhnu2f3jjq" - }, - { - "private_key": "6a3b158500ee95161d6b889d539de6395750b34730c3a5c5150ed273bb0691be", - "address": "lax184ycutxlmvt7rdwq3c9jugs8vxr9570fp6hfa7" - }, - { - "private_key": "942de6509c4c7809d9ec85fe8fe2e2879f4deab093ceec6e8431f7af0ca25fc3", - "address": "lax1jdzc4dx46zu6a30qdje0ywf0f69m7m288695vn" - }, - { - "private_key": "ce2458a505a221460ee78ba41b965bccee5f1b87d07299c82d1d6bd71e808906", - "address": "lax1kqj46d059lp9n2rn3rene8wpycycu86hga83vp" - }, - { - "private_key": "302f13b16ac594b68232d41afcf7be9d0895f051443e5007dc4309a7831d2294", - "address": "lax1zru6tmkx7g3vvuqehafvcr7wstjlt66903cvtq" - }, - { - "private_key": "b5642ab78df9463cb66e257d9c2478a87b74f0ba2ed835bec060882aca66a18d", - "address": "lax1s2zp5zkuzszrjeqh7jc2kdpaggcvthnzpnl60k" - }, - { - "private_key": "84c0896271b8a1b50e11e4dd219eb4dd682d49de273f81617f8e9e50c6264555", - "address": "lax1yv2j7rf9jxktjc3qvv8nqzgx27fz475jw8dgpg" - }, - { - "private_key": "f18d4061561c461fab354fab5aa40192eb9d8a22dee69db26130b992cce96815", - "address": "lax104arvldc3d47nhakcc7e25df36w6n9ewmnk94h" - }, - { - "private_key": "36c6930794cb8a88c4c79f932467fa52bdf107bd6ecaed72b8eb9f0d95624fef", - "address": "lax1nn4rfx5w4hwxd9sv2f7p6h0pzx5htmzhtyyrxs" - }, - { - "private_key": "1da6113f015e9ad34cb6bd8e1aa08be80c05f41a756886f813243fc221c4fb72", - "address": "lax1vwae43wduet5anhrgugcmdvsu90afj3pregej6" - }, - { - "private_key": "4f7fd1ba4045a90dbe6160dfe8a8750901ccd976b25cbffd777a72f3a6d6a2b2", - "address": "lax1g8k6yhtyfl9rrh7589mv63hgfvmrnjlvrznn66" - }, - { - "private_key": "2fc648dc19294d3c63a58a870e9c6b5746948512ca09ccdd6201ef81ddd41039", - "address": "lax136l02avk70ll53dxm46u5l0xnz3t962hmclyvg" - }, - { - "private_key": "05fc3776bf10f920850cb05847aed0c15f13cb00ea167291173f16a3d4e7fd94", - "address": "lax1qfwpjvhuux778rvw4l5qxtrf6h2s285qnkkfqe" - }, - { - "private_key": "e74abeeefdd2bdc078a1072124dd5b41798fdc6fee01dce2dd3bfaa3b995f0d6", - "address": "lax10lwr5j7yyl7mu0v4gzytxjfag7kjlhawa5mxhx" - }, - { - "private_key": "8078ecd79239a3a149aa802e4725a52aad8208855d4ef08709bae460babd36ff", - "address": "lax1lzckj5f2wg0mxfr588n6w8a0qvl88dmntqj4hk" - }, - { - "private_key": "ed705385e78f7c37b198e7d6d0cce3772ff90e88e90976107ad8afe48b17247b", - "address": "lax1v2s0cx6wtwle0zk2hep6j4ghr0ws7gf9sxum0w" - }, - { - "private_key": "935ac325f9dacc03096328488b2b7ac23447494beb21bc3c3ea3b0fbaad580a6", - "address": "lax109pfpxrcr70skjj9d85d72enfka9sdn8jkq8a9" - }, - { - "private_key": "0cbb8e5f293d3a962f13f84e1bc31c5e8eaf9f7c8531d3678645888763c2cc04", - "address": "lax1f3w3a4h8gfzqf2n2uvyxp53wqcm43qzxwdz9yc" - }, - { - "private_key": "8d0564437ee4c2d5836699380a2cf8a312ddca31905179b57612de6f81b2c2ff", - "address": "lax1wuh06vupl0vnxs4frvt4lnmdy64qe6q2dk4pcx" - }, - { - "private_key": "17f93f00c63b2936c873551dadb7a604ae8a986a1e196e5e4586c55d193da0a6", - "address": "lax1qe6qde4j6dat0kptqklge29rpj4wcl4g84rjmx" - }, - { - "private_key": "6f63b5a6865ed04fdcd95a8dade3fa4b11b59eb49d4223d8f2c28317792e14c3", - "address": "lax1es42fwxye4jywx7kdwd73x9nln0a69gkdwt8hx" - }, - { - "private_key": "101b97281d78e8fc7e0a54aa37f57635b7219a10e20fb82b01a5922a3affa816", - "address": "lax1yhyu8dfvsp5xjecyhw84z2w24s6ytmwkgjp3lc" - }, - { - "private_key": "1b7ebc96f0db202968cd876f1c45b652d725f640fa5767c4569eb9d88f9441be", - "address": "lax1ru5gjf33wvg0vcm65ja4gk26c4jflvkr2xnvdw" - }, - { - "private_key": "273d6bce1811e25b13ba20d4f203a092cca65b88ec02ac5c6c935efc455d0572", - "address": "lax1rlqkxcg4hl8tzuk5xqch9za0wr4kls5cy37u7c" - }, - { - "private_key": "6d7d8d9acf54b24c69f3c53130a84b5ca2e00a332d767eee29737209ffed3884", - "address": "lax1ls9dld9l4py8sm35pyuwwkd43tud9h2npzsawe" - }, - { - "private_key": "ad7b6d7926ce9d8386a650bae91848279d7b42128d5e764775063a00993c79b0", - "address": "lax1fnts63dagnys6qy8y9fvepxc27wk3n767xxlm7" - }, - { - "private_key": "b73d015c7c62858bf2934cac7ea8bf4a4e1dcdfe12757c24297862826a65c8fd", - "address": "lax1c2ja72fgadstlex4tkgu0p9j9n5src2s3xm8hk" - }, - { - "private_key": "e562e117e14289d4d16d58333af63205b0cb1498aaa0863521c9642d1f748f92", - "address": "lax1cc2w4kp8upaxhqx2nk3qa5x8m6l79946tvfckq" - }, - { - "private_key": "e3482aa412afc8eebff4d04a32df619b15c828abe7888b13e487fa944b8eeef3", - "address": "lax1wxcc5knhl3vsvy37z3qynvltfn84e8jexsw97y" - }, - { - "private_key": "ffe1bf5bbcf87f119ea2a7cddb469c2fa3f29ff947d3c546d89232d8b63fe2c7", - "address": "lax1e632zchqk24sz7z3fpr842fj0avprjjtt5690f" - }, - { - "private_key": "9905cfb5c7a673ca977811090cc15137772e773dafd6848fb229a157c1ef29b7", - "address": "lax1kq9eudzz4syf3n0cfyq5u9gxv0tk4xz3rks2xy" - }, - { - "private_key": "54bcd793fa2a345bea3c1cd3d0c3af6ceda54b8fa18a2fff1ff59222caa7dc9a", - "address": "lax172elzw7w8dfghmm27nj2nawmv8x8289y7dvxe5" - }, - { - "private_key": "b6ee7177e57470770ceb831d64de8affd56ac68656f002fb4b0298eaa2827cde", - "address": "lax1mmv8scg6eclz63qjy7k7u7e0tgjwykefueh6kp" - }, - { - "private_key": "5b90324a4dd053b7cab06a0f775152022d423f51d8844db0d84f1e767fdc7122", - "address": "lax1f9zh2np3tzc0nqynx6mwf89fy2hfjs4rfr0p9v" - }, - { - "private_key": "217db1fcf4cf28cc37a1d5989bf946c62027e6f35b0d5a6eb87bf34ffafbf5c0", - "address": "lax1tntldg48kfxsnczy5f36exy3jpzxdyg3h2pr8j" - }, - { - "private_key": "8cdc8ac47d1f8329269204b1ef7c9aad878af231b2fc5584f522809ab1021189", - "address": "lax1r3ek0ddlrm45z0v3zlxm7ct0tlyukpygv7m5kx" - }, - { - "private_key": "23622c8371973f39d4d9a7653fc31cea607c6f4fa68728204dc3c0b5c419f0a2", - "address": "lax16pdsflyjzf8m445aspj7juull6s2xjvp5wcqhd" - }, - { - "private_key": "5a31c5169c5a72cc43dd782766f473b875d8b94c5a39eaa48437e1f1640315b5", - "address": "lax1k2njwr4wkthc4urc2f7dyxhaa6scez5ejas8mm" - }, - { - "private_key": "920423efaeed4918026422d30eb56284ce0fe92b27d429ffa0f6647a1bf9a739", - "address": "lax18z7afszl32grh78wkd27wjrzjasvj4xe9dw4kn" - }, - { - "private_key": "609cd2d4b649085e68f38030529b3ad62668b614f44d0d9d651b29e297114080", - "address": "lax166a65wghv40rpmlf2w4flp9385234wa3hka0lj" - }, - { - "private_key": "5e28816565ba29d10712a704ba5aa9214649b4fd63285008bd8ba6da6d95eaaa", - "address": "lax12vgac5sy24yn7dz7ld4wwek6gte4tta06unkm8" - }, - { - "private_key": "fc7d7bccae6336e6728a3e876df5f6cf6313c3f8621a11038e1003c6ec861959", - "address": "lax14k5r7u9ja33fle2u0m8pxktfnw7a54yjz0f82c" - }, - { - "private_key": "ec5277ba3ce74dc94bbc4234ddd5a93d6d1939ac73450d2eefa07014ecc305e5", - "address": "lax1jskgp5azsxkzf603wt9ug5vgzlfycwwv2286qz" - }, - { - "private_key": "7c5d101d1b9f39e5f02efa11b9db7a0e70b75e9739c4ba1f16a43a2463217f7e", - "address": "lax1lc37jcm2wxsys32a27n7dctqs99jfq0c6ndt8w" - }, - { - "private_key": "daaffea70ceb02e97d21f00ed6572c206be5e268019c046523630d4f5b525378", - "address": "lax1msgtm56akfcf6ejnk00y90dug7apjww769ntre" - }, - { - "private_key": "dae6f949a62d90cb681bcc9060773627abf5221762b21e7a98cf515333ab0934", - "address": "lax1xl038k9nlrfhlkp8ua3qysh6wm3ph9vm6xt8f9" - }, - { - "private_key": "5b43ee95de348f8db8d318607e60ba3f668c04e5b5e1c0dc1381605d1723f205", - "address": "lax14ad29fegg6rzj2redyujg2uyn028v95ckjvkn0" - }, - { - "private_key": "55fb57c5e9e15af11d24d39035a0af726625003466d5d1d3141b9ab95104ecbe", - "address": "lax1gvzn7dh7pwvr4enlrl40cexls7y2kgch9dhc4s" - }, - { - "private_key": "6dc497d378fb693e358d4eca9d36755c6d2ba57ee71ea478b4c052021d16c3aa", - "address": "lax10lc8hve5tjsugmcummxcuqe0y7x96zgfs4zmt8" - }, - { - "private_key": "709a29c542d72c2e15f111e750121c6c87825d6aa59f0210148b1b70c1fb4d25", - "address": "lax1yqm0zwatpcgzleye9dd6j7ueuajq533wspjfm2" - }, - { - "private_key": "9d2235972a102bf60f33f4d8310c8353d964f2ffa46d1be6863e88b8705c6736", - "address": "lax1grzzpaeqf5y6xn2q3e9gda4p29hvqpa23ue35z" - }, - { - "private_key": "a82cb1d9b3b811c991eb1e5fd87bf04b2d588a00c784c908e5e2bb720fb3ec4f", - "address": "lax1ur3e5q28cetrsxu8s2zrzqwk0s73segs2ultpu" - }, - { - "private_key": "05067bbfd039aa0ba35eadeb06697034d275c0ef9a7b853abae41f272246d57f", - "address": "lax1wdh3c2sk8jcgxyv0jzpegd44spk95lchzg5w9w" - }, - { - "private_key": "f1c7c934673d6d10bb6860848bc95649c7c07fbf89b9dbb47e4bb43d5b1107c0", - "address": "lax17yeqlscdxd04wn0tlcvfad4mutvkvfhdsngsvf" - }, - { - "private_key": "05b88e509a5341acc121fb5e273cc2305268fbc319d7f43f204255af6a652484", - "address": "lax1cqxaexswdnzrtjnqqdzwlmtrx8a3mxpx77nu8g" - }, - { - "private_key": "5e19586c24e60e44e157381fc0fe18fe7e0c9b6bb9fb8eb1138330074fc5ea87", - "address": "lax1rt5drvhq2wq6s4kzn4e2ewfape2tdg5w4snrwh" - }, - { - "private_key": "4c45791efd6a5903e3df702fb87659b542140bb0a3749034f9a975adcb0a8ec3", - "address": "lax1vk73hy6qznuy9l5h5g3w39dtvru8dda08cfdrd" - }, - { - "private_key": "7aceee53a2a84c8fe91c2f13a7b44b1c847a959914ad2c3eee5ca8ad8a3426ed", - "address": "lax18cevj3e2ds8z2lzajpv5ged50fx978nr2shpuq" - }, - { - "private_key": "3eba9b1114a08aad46eade760547fd69c7d16eb109e3c94b789173070a155e3c", - "address": "lax162lagrtpstf5jvrxv62agydqjwhxtfn92mzgng" - }, - { - "private_key": "6329585c9bd91f8bc65ccab6ff7d3af1583fd3dedd782bfa460a3b1c4f05159d", - "address": "lax18hqwmh02kfec9safcxlk37tqaz23vy6melw4v8" - }, - { - "private_key": "fbb6033ae32937532c0580c24849db57aca2cf27f87e96f1b9a2caff27ceedbb", - "address": "lax1enau7euc5x0mv2um5pn0ac6cuk0p3z39u34zrj" - }, - { - "private_key": "9155f9057da83f243d6977d261508a85a9d06ac06583bb196b7d94161f5327d7", - "address": "lax180gv8qy4v74hm6wpwsksjkckcma8vvjxhygyaa" - }, - { - "private_key": "38f6fde509f218af41df50795bd46a260f54735333ed128f18adcbc99b103915", - "address": "lax12qpe0cg0ywj4263us2lq7t6ty07rlfksxly27l" - }, - { - "private_key": "5eeffcb1003cf812b5549a7c6f7098a5329a1901661c4aedf277a5fc3458138e", - "address": "lax1g8uzvwcyvmp34wxtfkprk4768ehgudt0nj62cn" - }, - { - "private_key": "bbd60079f63966e8c79cbfafdb766d6e90bb20bcc9ff38949de087b06982bacd", - "address": "lax184l2ljrv5frgwhcw4crfax6crjfn55fy7jfl0m" - }, - { - "private_key": "6069394575584a681ef209caa9478eef427112ef1e073aafe4057689d1239926", - "address": "lax1rx2ax43sz7au6sevlxgzd3e57kqcfwxkqrevhx" - }, - { - "private_key": "7c594574364ce16ec28ded704cfe4650df8b4d47404cfa37e38daec30c11ec5e", - "address": "lax1semhr2gukymr6h3q0ek333de974g5lmervx5ek" - }, - { - "private_key": "d4cf2890c792efda9c2d3d92f5c67e46d0f0c22c9c678c5f7e814f5b6400c9ac", - "address": "lax1vhe2grun368guf5apa3nnp8vrzc2l92ry6he4t" - }, - { - "private_key": "d7274a25a6e5d64dc23dba297afcb7eb2138bfc430dd42202b26f21d95f7d003", - "address": "lax1tw0fjqpcg6suuvwh8lkjpal8r63wn6wqcvnwjq" - }, - { - "private_key": "c73f506f35958a06f1f4e2603df5f4d6a83881cf070483c1f9b98163b353f42a", - "address": "lax1406fcrzjk4wtdwawwg273x3d6vk7edrvl54jjt" - }, - { - "private_key": "4727dc54c0ff8d4850519028692e200b717d2da4d26246a9e63c7c26624448f4", - "address": "lax14ks4eq2svlvk3p8kw89r5evdf9zldd4sa5dn78" - }, - { - "private_key": "b4fd2b603d0059328ed1a1ced243564916eb2083882ed002fdb370c08f78ea62", - "address": "lax19zkqyqnudh5fa97u9cuyxj70wzadcg6qqsvt3k" - }, - { - "private_key": "c7258b214aa89e50c8e31071a0e97f2f48acd5ac41d680a8e22a70f66e97b2b5", - "address": "lax1q0pjgmsa76f8pk9z27mkpm3zaxx24mxrunssqy" - }, - { - "private_key": "2111a867cb3178e3789d812830de002b80b02cf18f8b5361d510b7710a8df431", - "address": "lax1uqr7c3nq72yc6q9q6tss2su5rynfme3ypahpz9" - }, - { - "private_key": "229a1b91246bed07ae6f1f291e7df207f64a8d01ebb6132dbc2068d3e6bb53bb", - "address": "lax1la6k473k2a4rdajmzsrsjtf0ur5gzvjg7jt6ke" - }, - { - "private_key": "c9925d54fcc6ac46d33a63ded2b317f9acd7dbe71fe483260ddb07919aee2d50", - "address": "lax155zrjcstpc7ncd87htc76ptzpnsc65q3yx6swp" - }, - { - "private_key": "f203aa9246f35c11581cf0c0d26a0c08c09493941447dcd5bd98ed0c09cc2ce0", - "address": "lax1khd74uwxv8javn8huqassrdpfad8v3hq3g2qv9" - }, - { - "private_key": "0c4708aad4267a745c04fd28be82e0a2f2778318f0025dd85d7ce269c3d7c6d5", - "address": "lax1rvtexnfnfzwz7mazdspx8dxkv5k959645lvqlx" - }, - { - "private_key": "2a4046f09d6299e29c62a40e626753d5f32f8b0770472ba09c1708afc867c6ae", - "address": "lax1kqmks88f8gz43zwsdjpq0nluz8h5lq39a0t8sr" - }, - { - "private_key": "258351cf61b247d8f0bcda06b10a7a46528f9712259e3dc638979bf4ac2c20db", - "address": "lax1qzp0k2mymzl9m37s025ma6rt5c5jqs0ps2a9uy" - }, - { - "private_key": "a41b64ae309ae1d695fb2a8bac6a4954c75e3e8924cde0caebffba8a40c4c76b", - "address": "lax1825mg3th8z84tpf8rse5crjca2mr2rd8uschd0" - }, - { - "private_key": "157cc3ceef71839e404be809f57448eae2310b2afe2b0f1f52f4f565f777bcde", - "address": "lax1z0pjw0t4v6eghkqycu36xsu0m90hayucptjm38" - }, - { - "private_key": "de0af30c0f6b75bf80b37869ce0ffc7f811cd596fbce1ebe8b84212f597d500d", - "address": "lax1jy4a2r3dqe9yq4jshu23we232x7sunfm6lwd7v" - }, - { - "private_key": "788c353ac468efaea55afbb175f7fed71d7dd7dcbcd619688669ec46c272aa3b", - "address": "lax129cx2nxl302cukypnpahgyn8s0df4rfgxgpxzs" - }, - { - "private_key": "2fae52f52181766d4820cd12c51d58aec164b712d45c6249dfa1728988d9f1d7", - "address": "lax1dmfgsffldt4k3ry47ut5yu7tq7376qp05yufw3" - }, - { - "private_key": "b9b0b3cea518a2c012b866385a4269c46ab6107f3701a74e9eb2130bbb9742a0", - "address": "lax1nlyz983hqp4fd2ejcy6e3cchz0tm23ntsre6hk" - }, - { - "private_key": "ea452fe9dafebf7145b0e69bf324199901349622acc1f6e54e6711b2d4777a1f", - "address": "lax1ypvdv292cv2l30dh42refds20gwxx8j4h8veq3" - }, - { - "private_key": "cc3fa4a5aa97dd198e51d92368314fc3a48fe9aaa1dbe460083a67874965cea0", - "address": "lax1xsvjhyq7nkc872vnpx8zg8wdcl96qugu8rnd44" - }, - { - "private_key": "0ba91633af79637c65b55d7644db86ec6e710c9c7bfa101c0c4fbe3da62c5c1f", - "address": "lax1588urutze3kd34h8cdzg9e48lg7fzja3le0rxv" - }, - { - "private_key": "e7d57acdf7b53cc128795ac171f220bed07e4a65c2c11e5c20892de5a6c71191", - "address": "lax10s4mcd9kwsuaf8e9sfxttsq6u825kt6lffy88g" - }, - { - "private_key": "c7cf8381b14679c921021935c77b8a1f8472016b5fe4ec29e1eb3d2b83728b0d", - "address": "lax1mg2a6yjz8sf809jn87g0rqxc2nhajc9yse639s" - }, - { - "private_key": "947ea679bce5b74bc5b3d55f5f2d5365fa21648f6b4678040dc92d0428e02b5d", - "address": "lax1rsx7eqt5wpc5hnfyeftk5jd4p4nu2vgxr6c284" - }, - { - "private_key": "f8c28b78a80e34147e49b8dd20fbeb7ed10dd1ba6789bdec063879e7e35b10e9", - "address": "lax1zqeykwrzukhm7kumx7wxgnvucwytrmgr9aujyc" - }, - { - "private_key": "8795f9a877c390e31a369fcf9f3048119acf0b487816b20b152bd2cb7f5c7961", - "address": "lax1fq0atn5c7gg2zlwrca2y9n7spgr2v7nrd883ms" - }, - { - "private_key": "a157bbabaef412ff1f46207ece8a657de5a65e6861e032ab2cb8a7faf34097b6", - "address": "lax1my42ratk0t7zsdglcp5nnxe5gjc9v7dq7y0jfr" - }, - { - "private_key": "8e28143835f7ae0b54d727a26f133125815711e8f879c0511377ae997ef7483c", - "address": "lax180xt769cfqzvt3mdvdugy5k6nwhv0c4ug6px5c" - }, - { - "private_key": "db94e4e704c344cf652d6c96943160f606caa26172ade50dfdf9036ccc26dc54", - "address": "lax1mywuekuk3swr0aryxtn62v2a96p2us7g9d460h" - }, - { - "private_key": "a7d52d6229a37ef23c72f756b6c42e39f17196d03f216473f68fe83a660d9548", - "address": "lax19eje2dgne993pag7mjkwzgm3czd5lpdfpl6wzj" - }, - { - "private_key": "f70347733aa43feffc46eeca5caa65aadbdc24d6077b7b32b40f4000d45dffed", - "address": "lax1ym4gratdu2h6lnprn0c559dm6nece4un679shx" - }, - { - "private_key": "23d113a26d6cc97b950fa724655b4cb348dfdc99e30f57bda36f92cf13104ad7", - "address": "lax152l9sg0uulvzxdehrncv02mgru678cdm7sds2d" - }, - { - "private_key": "0be950e7343f64972b69feced438f7de3fa4da1e317a8f8c3cbaca32e4d89131", - "address": "lax1nk78wgve0uhz3ekau9505uaevlcn8lad87wd30" - }, - { - "private_key": "bec49c4894209c43889afa18a0f4b4bec1e43173055997dddaf200f53e81475d", - "address": "lax10y5hehyta4wqkhrwr7xraldkz5q7qkk3q8376g" - }, - { - "private_key": "684c44e1d679f3f4270cd85de6a97d9b1c8ec02a52be82ee9fc0b3b8b0ad2af8", - "address": "lax1p8rqpywxf9c6zxj43ked9ytf56hy6llwmt2y69" - }, - { - "private_key": "50985b7e5f230a07d3bb5e639ebcedbb9ad07270aedb9f30f9fc17ea6793b8e1", - "address": "lax1yv3mvvnacp6kpm3a8rujcwn6pcy5tdxe7axfuy" - }, - { - "private_key": "25382afb9ab772894b246c5cfdf64f864923a643890c39dabed525c2d5353574", - "address": "lax1jkucl6a6yvy3gg74h3936j2lzme2p9dtaruvf7" - }, - { - "private_key": "301f62a976260fae1d37f1e5da3e9ce9b12d795515427e0cfc9c919b1214b5d7", - "address": "lax1nvdxnjg85u84xw0stfg389fd8wpduz559yvu3d" - }, - { - "private_key": "c35b7c3c739805f16333aa2b0ec078c36fca7f916b9349111602bb342f9351da", - "address": "lax1c3t0xy0rgl0s34n964pcl98kugtk7lful88wgm" - }, - { - "private_key": "137be00404f92a91da8caa0948f20cdc38a36ac5077626b44f79b0faa9465896", - "address": "lax1ndg0ucrqw67f6qjyahf0l3f2jsyslwnc9uczvs" - }, - { - "private_key": "c7a12b08ed9c4aa5e8c332e430c1dcd46630639e1addb5d645d0dff82022dd4a", - "address": "lax1s3dw9w7ccdmc960truf5yrv8feg4e7f522l8fd" - }, - { - "private_key": "5c900f8a0aad18fc6622de5a667b53f14b5ef97dd0b4db51318e8c5ebb89d0ab", - "address": "lax1kd6pcgyms8lwaw97nmxtp5p8zjgkdvp7v5q4jf" - }, - { - "private_key": "037dec6d2676dda7592016a1e9994bcb88a2eb270e8b7a6f5ebd47917fed5552", - "address": "lax1sjeflrhyh396ehfcuyme9qhq379gm6kwmqyrnz" - }, - { - "private_key": "d3e33c56d1d2987568fb6d14a9b41a0980412d0c0d319676e6505fe82b114224", - "address": "lax1xk6t7tsnjwqm04fwxyg2ranjgyq9rv8uwtdv9z" - }, - { - "private_key": "8ab4599c0042670d1a1749b9103ec24243395a917140dbfe8aeac1beffb0b4f2", - "address": "lax19pvwle3jmj6dwxh44tllqsqcqlsevae80y6ezc" - }, - { - "private_key": "f53b68664e4346ae6fd7a1d3c04652ec82943abbf437fa00eadf2210564a2003", - "address": "lax179y6v9aau428m2sf6grd6k6grpm2qla8kdcgzw" - }, - { - "private_key": "421dece4016441d82acbce6d32c20957c7e9f632bbbd1faecf88ba696c4594bc", - "address": "lax13ry8gturvh0ydr6v6yuzsvsqxhuz62ue4qzmf3" - }, - { - "private_key": "08f65760a482d6a6c0d87e60cba474bfd84c0df291dd99a7f253a210ec59dc2e", - "address": "lax1wzv2qn5tusws5helqem0gh5mwy6a6fvfk9t7un" - }, - { - "private_key": "81458bc34b7d62788f94950156507e633d289dcf05d2d103f84ee1da874d7075", - "address": "lax1xa4ch678plm5z0cx5hrdes0vpsz7x97m7fac0t" - }, - { - "private_key": "319fba95159ce0f5708b409a36c148057f5a95cc3ff44d5ab1b1352042133dd8", - "address": "lax1wwmxtnzydav3v7l70xlasmdrdzefk6z4ffqnnz" - }, - { - "private_key": "f894d506b55cc0f7619b178aeb18d10b96503cffaa0185a8160f66dac22494af", - "address": "lax1tgp7yvtxdn8xk4hwf9vnkechwpmf7pr0sqnmhu" - }, - { - "private_key": "18207524132f4dda8b3fa1b015c4f8e4e9d2c517bc9a57a5a708ed5cb25ab31a", - "address": "lax12ynxfpwzv46n2cm3ugdcy503spe0mgmjknv05q" - }, - { - "private_key": "fd9ef166773b4b64878427c756064ed83c60d0a466690ef3853d094999698117", - "address": "lax16psurf48e84vcp8fal4hmqm7xekf52mmva2zgh" - }, - { - "private_key": "297fe6f6a0206f2533ec59936784bdc6a51210594874e99724b6d995abf1d356", - "address": "lax1np758yrghe5hpxy544g0aqhgcrawvjshgx628r" - }, - { - "private_key": "17d21d874264f00a51aa2026c69a82ad448798f5160625b649830e7a6caff65a", - "address": "lax1djajhytj9eqesue7m70fece5fp4e6skfzyw8dt" - }, - { - "private_key": "332dc8072954560ce405528680463e40dd390811bbc7e684dd42f891303aed37", - "address": "lax1x0vzsw9q7pdlvdjnk6jarwfs2wfzz34z4sz98q" - }, - { - "private_key": "0c5ae0d5747a95c68b0a8e8b0e08d919af9eb7254d4cd647a2181f42cb061aad", - "address": "lax1ac7gw7ds4u34ynsycszp962ygq5shhvpecrfj6" - }, - { - "private_key": "d5a5332ae641cf845157828b8ea01b783b298be8858bd568cb1393564231c3fc", - "address": "lax1l0zglza5358cah8vydkh2x7r4ycs9ce2chrpq3" - }, - { - "private_key": "223df76d0119e93822d96c72a05e064974f1793bac537a588e85078f52a9f4de", - "address": "lax12l2y4q7p24qf6fekpsj97f00vq8m73l2p5tp3s" - }, - { - "private_key": "de38f885f1414c2b56c434178259b8a40fe6fba1a2143b7d55c67082272cc821", - "address": "lax1ugng23cw8yslgh94nxaenqdvwd6m77xy9q9t09" - }, - { - "private_key": "7a4c405c03bb3291ec09f137d8a69a76f822b683223253c6d02f56bc026b158c", - "address": "lax18saepxl5x9c6490q4kwrvrjxsrhutuf6vh4nk6" - }, - { - "private_key": "d2af451aae22b8645a247e4375eba412c4093a2ac874444c84544a031fd227de", - "address": "lax1m2jwrq4qxgsu4m7qq44nmy370jls646npalygd" - }, - { - "private_key": "8df6a17b0fc6f763ac0f442bb6d1ec0279f2a0cf19fec8c75df2072af3cbfce5", - "address": "lax15gjwjtdvcu694flwvpugaz5023j3s76ldsgqku" - }, - { - "private_key": "f1350cab21cabc52ea1e0b3ecd7c0b8a44366e10a6db1944ea6ebe5aa2d1f0f4", - "address": "lax12c8wahs8d8sr8wkx468xxnr3v7whepzlv08g4f" - }, - { - "private_key": "df52af3cad18d202ba4a51d49495cb0a5a33dbad156b8951e944443071e05f50", - "address": "lax18kepq58kwgp7kldufmf4yrgpnvygavexdyysne" - }, - { - "private_key": "29943580dfb336b7c23d60b4e1345747ff240b7df96832468e729a63aa8eec23", - "address": "lax193xsze20je7hymy0jau5j6at0agqcnnzktxfjn" - }, - { - "private_key": "f648725e1535a66453fa2307fbbcefecf735a57e4a97a84febba2105e21404fa", - "address": "lax1tku6nx44x0qlrq77jekf723w7mydgw8wflm28e" - }, - { - "private_key": "e16a6580a44da97397e9e96ebaed77b5710c5df4245b7e79ee592e56381d6ff9", - "address": "lax1rnwx9cz335a7t80sfdy3fkyt5ct50kcwf2cmpa" - }, - { - "private_key": "239fd3d16a07cbc0abf7c4798da0fca730f0e8031b9d408f8cf24165c047bfd4", - "address": "lax13y4cnax0fdwyr83l7lq8lfus79vh4hlhgn4qag" - }, - { - "private_key": "160bf14523d003210f5c66511c16cfc5097b13bf25066caf3769ba929a8e4998", - "address": "lax1vddnrxjtdvlxtjuhwfzj4l4yzdrmpjzkdj5m0x" - }, - { - "private_key": "e24da9c939f598a94ea29011c0d7d9a0e53ef1679e367bad325fd67730ecb0d9", - "address": "lax1epv7dy62p36zhqwyma3shgnaedq7p9tx50r6na" - }, - { - "private_key": "10c477534519f0498e4fc38cc7defe35240e6252cdbee19787aad313b8a46333", - "address": "lax13sxt59c6tlupw8xq65sw6pgu25w04dpgg8qdha" - }, - { - "private_key": "b506e14d71c0c7a3990d022fbdebe6a8bde574bd900f404e38e665718d3b53d1", - "address": "lax1s83ugjzf3mxyc5apysa3c23avvzceta2vfl0x7" - }, - { - "private_key": "dac85abc74371689a3decce7a33ce5836b9f8d538e35984c1666d846ccda6096", - "address": "lax1xsj2tk70etz9krytyuqlk9mzgyf4265jxwfpsu" - }, - { - "private_key": "8db1d278a1ff9566eeeb0ae72686bf0c4d378d2eb9a25ce20d6659f7cc776320", - "address": "lax1zu77lgsje60zdd3wnp3udc0gr7jc887wx3tfgr" - }, - { - "private_key": "1380e6a7955e9ac43c749c62658ea83d0b0b271d9cba17fefa2994e2e83d010f", - "address": "lax1vr6t6nklpcevljkt7wcl4httwc8ns8awuv0way" - }, - { - "private_key": "7b44067ca18b2b2deb46c2977e20814b0de9c4dccc6cb974b74b0abbc132459b", - "address": "lax1xdu8kksht9zq7vrdgqga5utjd4t5auadu352rj" - }, - { - "private_key": "012840d4248d59485cf733368ae7f37b5e4d27cbcc4ba05f340954acadfdefe3", - "address": "lax16ljnltf703y6gpac83vck07ff80p0qpw6hc6u3" - }, - { - "private_key": "855f1089d72a838ee201dcd0db5d87e91c0e7f1e0cd64e81183f011e716a11c5", - "address": "lax1deru4wqfuwlucayjducl2l9vcdngug6e56rh4w" - }, - { - "private_key": "b70b757763c576543abb99170c0d0a7d4d8eedb00dcf79a60aecf6c79dd3f223", - "address": "lax1nf3w7fmxra5wzeww4tu8hxa75txhcslp3e47vk" - }, - { - "private_key": "586bf370ae3f515ae20cd36db672e4fb39db8ee40610d4f84ee0c71d73bedc53", - "address": "lax1upsac36naerluydrawt2w4e4t3gwr44aduyxg2" - }, - { - "private_key": "f1ca29b86a925599a901bfe69857853e2911e6925d948842438deac89efe9d09", - "address": "lax1nrzqmdnq5lu7ketprdlxd9dtznc9mtpc38a5y4" - }, - { - "private_key": "36c25abbf645047516af63f539ad8c863991b6e21d25977e0acc53c70af81c52", - "address": "lax19c8jg2z08ulm0m9vz78czrnymrf0wq9swhtnkq" - }, - { - "private_key": "9d27cca0b2cd099688927a7bf343fba1e621dd145676f064ae77eaf0027542a5", - "address": "lax1vusjkyg95ful6ueatzzy9gp5gws5aae92ppj9h" - }, - { - "private_key": "d4822f4b11d11d036c50d0a8132e6cbee781a2d8083853b439dfe8b83d6fa950", - "address": "lax1utmx2rmefkcl9hgezkkr8afamnyqpdrkcgg68a" - }, - { - "private_key": "98f7b2bd627050d1e4220485dc4549c35d7de7c72e9724989840c2869e5547de", - "address": "lax1c7dn7ne76ph28arrpgv02ayzuhurkxrvxs2zv2" - }, - { - "private_key": "b9b3f3c6ecc0424cce06c957a9ac7cc56297cd76c3f58539ccf17f55288a35eb", - "address": "lax1wnjwnrtwuehvfara5u73hm9y2quzuqwme2aaeu" - }, - { - "private_key": "77ed041ca3f01c97e063f34fac6cbf749301def9e2e41fb0b41f96be1f408ce7", - "address": "lax1qvpsm4exnxe09gu6scder30ftv8uau479t2dwx" - }, - { - "private_key": "a36f1cebaef8ea1f45cdd26c79e4434a922c9a67c5cc978b2cc6135d0219739e", - "address": "lax1rn82ds7m68ju3z83q6eu3xxd7s6ca0jjqc4fdv" - }, - { - "private_key": "33dcb16206f30738f56e59f2e2405387ef86ccc75e78ea03f4e0037f1b3ce4fa", - "address": "lax1s5fk2jdq5j06rtkfydjplstu0w3rn078v7dft2" - }, - { - "private_key": "ff654e9e711fec75d5dba84811a31dfaa36086df31899a276d263bb10c374c45", - "address": "lax14auvzkh6fvj7dle2stdwmw6q3zs9a7zckzemcj" - }, - { - "private_key": "54b7dc40721b85e7323e3e346920a7cb7f3016063bbf8459b880145c64799979", - "address": "lax19yx0t2wtn7h79tkpgtrchd3hlg8ryt463c68vq" - }, - { - "private_key": "dde323cfa127eb4a9d2d59072164ad8939a62155e88cd78824d1abed76b1f559", - "address": "lax1mzwajerwfpsrnxwnlx49ldewdhlwmmqmyeez59" - }, - { - "private_key": "7a60c1436867b364e2406e027a90f56bbfcd7ddc821a3415ca3aa8142b26e999", - "address": "lax1mmn3hwjlakxjnffeehsmjjg8w62lj35976wh9e" - }, - { - "private_key": "8ec9e31be9ccf50340a85854a837345d102ed1d57d22b35c2c252ea314c9610e", - "address": "lax1ca47g6vhepse99m8djt2ehjkfj8zahw6yc4p3t" - }, - { - "private_key": "a6c9bb396fce7f909e8d08d803843e977b3d3bc5e5cc8d3039ba51fcd0fbc781", - "address": "lax1n46mqxlst7j96hcxjwrxllaczrdppqu4nfpj8y" - }, - { - "private_key": "275d424a79665784df38b9ae7ec4db6f8d16097b21455be23cda122259a630ed", - "address": "lax1060p23ydyvpxkx6zx0naqtwspt05vuc9lu47r6" - }, - { - "private_key": "22a5212a95c35b33beb40f1fff0ef2e52ffdf36710e07437f71fb61f3a2c9b8b", - "address": "lax1w99xqh39h2lp3unv0c6qxrnj4hlkssxr8uanwt" - }, - { - "private_key": "0473ee4308d07187e42eb626d6ed167393698cbed775a701e609b13beef17d51", - "address": "lax1xhlryn4wtnl29tpc4ny72qkcghswqzktr7f7n5" - }, - { - "private_key": "105a43fb7c71091dd28ee5cc8249f2e441395ed973a80fd33cf346c7cb232039", - "address": "lax1rv8rpdsu3v4z0yz5cu3fp8vpmruuy9wzfnccy5" - }, - { - "private_key": "f93e154c8778e5d73d65a0b18ed68a64039620639e66fc6c9ae96b85a1acf0b7", - "address": "lax1mmh37x5fm0at6khy74fu97aurz92r80jh4h9d7" - }, - { - "private_key": "00c0f53c8756d660622afe8199e1207bb4ebf055087c616c1a2dcff7c6e6cea4", - "address": "lax1uasxjsjr4nevh0ufxtf8qaa37yycyz6cls2ryz" - }, - { - "private_key": "3b3409d6a935db174fb453326237575024892f3db9d189ab771da4c9ecdde253", - "address": "lax1wensf4z2hkuwvgrc7l5gs9x3yux7egy2pe7r3z" - }, - { - "private_key": "a21d948e1ee5ac6b331ef0f7f821395d947139a48fd0c7259b70059ec755a26e", - "address": "lax1j92ad2lxtkflj42egzdu5trrtzh0h23uxa2cv6" - }, - { - "private_key": "885242e9308df6c4f9194142642193aa9305b1567c4d0b322081761a6b0bba97", - "address": "lax12g5d273wj0wtn5nz4yftjvj36pz6fyhprfp0hr" - }, - { - "private_key": "59ee03e59b52b54ebfa38126fbc51fd62f6403ca04d757a8421fd356b9435b9d", - "address": "lax1tpdvnm7lxhu4rmlcsv256jpmnjxkp3wnjhsnau" - }, - { - "private_key": "b09bb4a6e5b9bc13981109e7de5bc9ee7867d70d4bca91c9ac387a121c031333", - "address": "lax1dr2gxn2r9qh32098a84euspskyr7wqumu83jxg" - }, - { - "private_key": "dfe41eff030198f52e8a22bde5a9ff68d079617df020d86bb4c07d6ec53f5c6e", - "address": "lax1qry8qlu6rqs3shlladfzmqcpzwn49gckdyf7cn" - }, - { - "private_key": "286ca96946ededc5619f91bc1964c339937bc160911eff53b62fba725bbbd998", - "address": "lax1cxptjjvgnmashpp6wj5r4lp9srx58zy85jdk64" - }, - { - "private_key": "a980b40bd00cf8ca70bea58821e0021200c31cc4cf84d7bccb4b689f502a5fa0", - "address": "lax1v83yrw4y9kece0lmf2nl9nehendw65mpyem4gw" - }, - { - "private_key": "e32b8ea83ec28138b56cc159d9adb9b6ac8213b3b0281ca11d0478e9291c8dbf", - "address": "lax1lxmnj8zw8ly6cp7rh8w5m9m3ff857t7z97xs9h" - }, - { - "private_key": "9e9edcf8ca1cc95a9218068551a5336b62cf16b22c1b2f3670678d983a38c196", - "address": "lax15u67qjhv4wksuqmx86n6xr486eakwpp5lqj8x0" - }, - { - "private_key": "06e341f4ef873f01206aa360ca98452bf9f80245898dccf30b1196b24cd0e8dd", - "address": "lax1dz0hyc2wu28fd0vvjymrquh3etkhyyne3lsp6k" - }, - { - "private_key": "e814b624afbeb21f503a5e1d168468d53915cc8352f8762ac9f947118b12aba6", - "address": "lax1d5y279eda5rutmurn82p2tnr0a2pywmzfug3wu" - }, - { - "private_key": "7a67792f4c1f2e954299343e5eaeba46978b3b30e0d590540ce609e09cf332be", - "address": "lax1juj5a4me9t65yqt7xys26v3agt6xasduv5ey53" - }, - { - "private_key": "058e5125d8c060594ea0b711908b03deef05fcc58d0126fcba113259a50e2874", - "address": "lax1rnvxweyu2ng355kcscxj8qxta07ugw97t0dzjl" - }, - { - "private_key": "88c0cf0e2b26283cf81b2d30382fb78964e613843cb50840d58f5092c1b8684e", - "address": "lax1zjmy8x7x77kl8pl0ms80g6mfr6vl2vj74fteh9" - }, - { - "private_key": "1c0e2e4821891545e84eb273d58406cf07315cfade9a9ae0995db88cc45c59a8", - "address": "lax15u3eahn8kzjlnc4edm5xj5hjyvw7spu8h8ysfl" - }, - { - "private_key": "cec25d9596ba1a7a6b317cf25eb960613f18e483142fdd8401f405a13093462c", - "address": "lax1rvc8rr0kj7204axnj6vwzgy455mm8nl3f3x2qm" - }, - { - "private_key": "a277c4b226a8bc28e36915d8190ec688f8e1164597a15a3057b42b7759ff3392", - "address": "lax1gzzkadmnavduvjgew7fjgm0wcq78vmxdw88e05" - }, - { - "private_key": "3281099fedc319878a11db9e57798389f8483d3232898b0946756be8725f2bbc", - "address": "lax129uy28ar5hzzwqp9yxtg8st2kzsnv9pl7ahaaf" - }, - { - "private_key": "4a8e84f6febfdc3a626fc04236016301893baac54e2d2c4aebd02a6f2e0df488", - "address": "lax193kg79mgzua2cwzujg4s4rujc0rgw52x7k2g7g" - }, - { - "private_key": "23649ea07aedbd767e7aaf6449d3ce27b463ea827dbe4fa197b9ce71bcdbfb7a", - "address": "lax19u9udpu38ghzec0454ns786umjhhf7u8vzcahg" - }, - { - "private_key": "f852979f4a255170f983d0c0b9d0c8e817e1169b693dc2259b28b791575f4c60", - "address": "lax1yy7uv3039y4v9scmu6tj6txg6rxg9z0pp8kdcy" - }, - { - "private_key": "908141c862034f5f07ac5886d407dac5769566556cabe4e75782757d51d8da9e", - "address": "lax1xxg9mzua5d6q8avej9avg2eklmy8zdw5ks06a0" - }, - { - "private_key": "e087ae5a3beb322d7342bf4442c1e1c6c8a9e3d314922a04a07107d285a65d98", - "address": "lax1f5gzy5252wzpvwat984zf8mg42s6mjrey0c3lr" - }, - { - "private_key": "0f04c1e252c5f049f48d7d2b03e20a1af38a0fb255baa76c0eded256ad3e924a", - "address": "lax1tss8mhnfsstg68cnhh9k090e5cgu0q3slg0g2k" - }, - { - "private_key": "dddbd3458e115bfbaff8bcc60ba1cc98c23ba1ea2b07142a1ae1576aea94ac38", - "address": "lax19q5y6nlv8yqkv5fprutuke6tellufup34xg0zc" - }, - { - "private_key": "7968af5e234eeabc0e1d2f5fdcacd2f744b9a67e971f6e1c6f7975715ef75db5", - "address": "lax1eamej42jc5j69eclp2salqlarsgxkjszu2yxac" - }, - { - "private_key": "d4211384377f2f3a91f7eaf69449cb200a0885f7109400638e931a6b04cd082c", - "address": "lax1ekxha3vqn0ywn8d8qllqz65z9ums22uljmsjpd" - }, - { - "private_key": "a38d4716f663fa1a9a8893ce52164d16422d63496143b2fc176a44eeaa767f5f", - "address": "lax1ccfzw3wjlff2zlm245q58jcj99kyuk8kyvmpgw" - }, - { - "private_key": "e51af8b748a7fafd5ada5e4c6a90c5e19d6ea1e6865e9a5701611713c7bb0f09", - "address": "lax176cml0n0ph6gmjjwjz4t6mw0xzrjruz28lewlw" - }, - { - "private_key": "e11f5ed864ce5fd6100e6a2908004289c163dc0b94451e06d97bf24a7ca98456", - "address": "lax1jah6hsmhpv6gr8aqmyu4q5zg3kvzyef6hgseg6" - }, - { - "private_key": "47d57bca3e2f872a029f1387b605757900c0f8bacce5525cda2e2b0801f0ab56", - "address": "lax1dm6s5un675t3zf6eenexca8f8u5c8vegm95xx7" - }, - { - "private_key": "c7ef67f610b4abdf76e2bac06d7814270a945fa4c252ffc4a67dd8bf6fd0ba34", - "address": "lax1kef6a79cfdtxwyvcftm6rp7zu9pdw5e50tffwc" - }, - { - "private_key": "6c687349d2c7578c1157928d33897fd07991c3385001d42342bda0ba30b76d6f", - "address": "lax16r7f2rap77cu9v7qn5n5jeplfcu66zmudzk5zf" - }, - { - "private_key": "0d5c338f982a34820752deb20649f7f7cc619d8ec16041471c7b88c95d58566e", - "address": "lax1u4ntfq55g4fv3ctuzlzec7mvvw0humztkenwa4" - }, - { - "private_key": "62248ef55bdbd4bc124bc2ab34f2867d405b5979df6b5e4a6561438ed41198ff", - "address": "lax1wecna00xupzr7cfwcxgwej3qxguyd72k2m3xnc" - }, - { - "private_key": "5c885a4139e6e3fa02f3faa2d1ce0f4fe6b52f5cd484db031233adfc0fc597ad", - "address": "lax1wjkm3l8lx2x94tdkdqpwaydv02rfavkndq55fc" - }, - { - "private_key": "6ed25e26cb69fd34e32f55b9e678f95bb41fd2607d8868bc6c7257a370951619", - "address": "lax17kzqlxcmr4cejflmvxd2es4u5jue3j7gjx8tpj" - }, - { - "private_key": "dc4969e464e4e6545ef72d347c4171779adb26a15b7dfea8cfffd8cc1469da6b", - "address": "lax1nuqxrsvx0mg9cxf56sddy2kqyrwkfypryf2kg4" - }, - { - "private_key": "91ac7d59ba9f0954870c081549443edacbd04d6dc8db71aaf2b4451d48651f9c", - "address": "lax10ptx66edher8jwyd8e8053598sf4qq7pu5mnx9" - }, - { - "private_key": "613a98516bbc47be20c418acfba1ce0ea141513de41df05338a20e04227e41c1", - "address": "lax1yqkq37w0vxlrpukuyneuly3e4qu2325yce20wg" - }, - { - "private_key": "e9e3a5f879b701f3d668958ee7596d5458ff7ebef72cd94683a79bce2a75f52a", - "address": "lax12wd0g0e7g98ytu333ujcrjareq33zm75m7jfgn" - }, - { - "private_key": "4da1c77c58d181f33a1451ae104aa133ba6a61cf16305ba80b970cec2adc72f8", - "address": "lax18fgeldc26v36m8gk22xyxafcacc7237evrth2y" - }, - { - "private_key": "51305837eb40457b5ce7585e71b95cb4792dcf5c5d49cf6fbd072abc13578345", - "address": "lax1dyxghxq8nld5ayh6v4thc9dyexhpxpaxy52srg" - }, - { - "private_key": "45eb34ab5f1936e6e5a5abcd6480ec836b354b69f46edd2560bb55024004057c", - "address": "lax18djv2sg50p37q3u3zp6axar6xmk9cvy8wzlcer" - }, - { - "private_key": "71c7019bf205fd99f1b2d21d4b8ec5b3e79e4af37fda42075479ca78e3a8febb", - "address": "lax1d252tvf53edma7ep0c0x4x89ajdykjsc3s5q80" - }, - { - "private_key": "e303e8ce4e626a9ab5466c59c088843899f5f717e561a9a3141c9433e421d78c", - "address": "lax1ear209e808xvj5g65drh6hvy4v9rj2wvmc0h4k" - }, - { - "private_key": "1a97ab05ee0495a7d20bf3cfc2cc21af1a65f8912468b2180d5c5bb1eb7a39ee", - "address": "lax1sk9xnnxp738f4npggw3m7ezq6hyn0drpnnkg6f" - }, - { - "private_key": "1400219ada765ed91585149d42a370debe034448c520592fb1788b71b03a3388", - "address": "lax1fnwus2hxyltqs2ra546gyknq8jj7h35npnxrmq" - }, - { - "private_key": "f41f03fd5c5bca32e73fb3f1d8d791b632bce6f3da22c7b60273d862c390c575", - "address": "lax1wkyvfr3cke4whzu7dp5fksusaqgvpndgg0a20j" - }, - { - "private_key": "d203e8e3b4e0c267eef9be559d18b0d80fe5c46bcee2bd90b98b6ddb9dec04a2", - "address": "lax17hqq777hlwmeurj2673gdmnundnekyt90fgm7v" - }, - { - "private_key": "cd2e22e42b1fc1a095ddd745c95c34f5197db438d504c989af6c1f3330f555f3", - "address": "lax1zwrux982q3xusxh2xc606y0f5crnp57xlrnfey" - }, - { - "private_key": "1e4b63de090ccc22ad4133cf3e43ed91d79ffb6449a44aff00fbfa7a4bf27aa8", - "address": "lax1z8806cr0wjjxtdd95s08570936hwdfls9yzmyd" - }, - { - "private_key": "b2b3d932541e4aeb4e9b7f883a7c8e5222babf3f43033c8bd33d958e93a7c037", - "address": "lax1kt8fyz7ew0u0lk9x04qc3q4uue2fza4d4qd57x" - }, - { - "private_key": "cf87892633efecda8086d3c6c4b5993f781c62fe5dc794ca09984d59c4d36d63", - "address": "lax1wh9tymxzv5dalwnyugqd352aws889m8kdqm598" - }, - { - "private_key": "17232e3b0b8e7458133fcc9ac031e21e626aecd0559e6d9483cbf42d407768c6", - "address": "lax1rx59pah4n2wcusyhphmcjjlvtnujflpasxphn4" - }, - { - "private_key": "7024396bf0ecfdd80c8cdcabcc94d01e707b2b5f41708f0cc98e51a994ad86ad", - "address": "lax15xeext6j6fyfsketdh57246wucnw2g6kstm74p" - }, - { - "private_key": "680a680e1bb209363dce5049212de00a12da213b1f7698eea59584da82763cc1", - "address": "lax1zp3qpq896cegvthkxg5u70gq9pjsu0z56k2j6f" - }, - { - "private_key": "a397687c7970074511590985784d2d29bd247502b3cae187f3d6c2c8ce8c16f7", - "address": "lax18nn2fw729622236vrx5np9vsjkx7n7jzzlezlc" - }, - { - "private_key": "606d31d3fcdb35f0ba40d9e4a6a06c7354a73744e2c7aa85b3057c05159131d9", - "address": "lax1rjr3cw6zd7dpt8erg8gkutk8q45z3rcqx3gapz" - }, - { - "private_key": "3ad2586163d71f6628d42d91eeea74fb48d0a9170a26d5e8ea980767ef03ac64", - "address": "lax1v5htvrj526tyn9nu0494yc3k5hr35zs0qu3dy0" - }, - { - "private_key": "1b52f1b96aec48e4bebaa1d2fdd4c7356e2aeea9c9fd0f34e43f07cd9e2537aa", - "address": "lax1cmum28vmtscqhvp8a506ea276tmns86wujkxr3" - }, - { - "private_key": "71084b9f5215717f2f488a7f98e6b6ff52d0b45068abf10d77aa43cd31ac4858", - "address": "lax18j8nedm7q43dvnwj4y9jlu29m7weljhhwk6yag" - }, - { - "private_key": "68cfc0705ea24fc0c691040cda92b74b32bdd1d82a2f19961fcaf33abaf41588", - "address": "lax1rxqyjm70zmd5x4cynk37m8wzymurmnuq26w2k7" - }, - { - "private_key": "08f145f22dc176a312410ff235b1c4397d50948367d4227aba9959e8efe935e7", - "address": "lax18zylv64nhdlen0rsnvkd3gan3k84q9zuwh3vws" - }, - { - "private_key": "4faac753e84e3b6ea5a7ca1b41deb528eacffe2d8bf535d58ec275534308ef32", - "address": "lax15n36l22xhj6t06p076d8gx3m4pugfyemzts53c" - }, - { - "private_key": "6ed89891281f64baa7b1d875a4c9d402c5d550201609379f521cf095e6817ec1", - "address": "lax1dc6gnn75su0wx2mx72mvwgpjw55edu70n82pdj" - }, - { - "private_key": "c486e1336a923598525abdfa6b301ba1f471a990163527a96077a5571be997a1", - "address": "lax1k8cmynpcrfu74l5csfvpma5mvv4wxcvqsn42mj" - }, - { - "private_key": "92e51df444408553a7731bfe2968bf35920df02c457521ffa34ae70aa88c02f4", - "address": "lax1ddcust6wmzgl08yurv3pm4gzlvuf2cupq72lxq" - }, - { - "private_key": "476492a8912ce0e4ac8b770c8a04ef7f5d1fbadc1cccff826d62cfb9ffff1f45", - "address": "lax1csgg8sj0w4leakggkh9p4a2qgeqzz668pn80yr" - }, - { - "private_key": "6a9b46e7abb0310ca6f0790bfb695af68c7dccaa9a8c931b55e8347e9b85ced9", - "address": "lax1gm9l0geep32j9t8y298qrf4j8cchvnsekdxpef" - }, - { - "private_key": "793bb555f6cb2cbaa204d671dade16d86275b2b24eceeb3a60ab92b5ffd7c43d", - "address": "lax1a72yd682y8xa4vdr0g9sfwk0xyzycrwkayamza" - }, - { - "private_key": "c71a258621a951bc1479f3bd6277bbae397212e5788e9c234c7adfbbcd5958e3", - "address": "lax17vgr92e0gstk3wqqrxs3yyeaxwfulpdwa5389x" - }, - { - "private_key": "11ee428a39b5986f5ae1afcc8125dff5009a3515130f2699d21d91c1946c5441", - "address": "lax1pgntpeu3mt7nhek807940djhzs6l9ply7fmgw4" - }, - { - "private_key": "98ff4868e509bb203ee94199e200ddc53cf075a9a7f3b65679d4b76fc286eba9", - "address": "lax1qp5vghjf9zaruzvl3va8jyp4rpwfwa3nvleefl" - }, - { - "private_key": "5daf12fbb8b4ef3dae5100f9d54914fa87a47c067474ca6b3960096c83877ae2", - "address": "lax1h9umkpkl22wq255snzlgqv5quj3dwlxu3w3rnu" - }, - { - "private_key": "5d6767f2c29c4b02c4b6f86e65f9404c829457a84339ff258e9ab52d74f7233d", - "address": "lax1teux77scj5kv5ay6arhdgfjk6ypg0p6fsa96yn" - }, - { - "private_key": "43e20a36af76d3c059228d7ad48b6574d8d21346e3b97abcebff8661bd014c60", - "address": "lax1tmgkqepz6j67rxjtm9pkf2gyhpftlekr9vfcgl" - }, - { - "private_key": "5cacd30d74c33e238e2e8d352436e881b66f64346085de036da186b73b39963d", - "address": "lax1sts3eankyrzd0rx0tkncy477eyce3nk4cexwh0" - }, - { - "private_key": "e4fac2f66a1995870272d39e9a100ceca380979b4481fac69467fa8413e6292a", - "address": "lax185pfe9hguefdy5dr04amfcugrf58uresvm3k7h" - }, - { - "private_key": "cff91731f8b4960808d881c1a8b61d3e8923d49f91a2c75167008cb4906bb8c0", - "address": "lax1jdu4y8zg5fttwyca4gav4rpypum6p3fx0m3wtt" - }, - { - "private_key": "41854fc2a89f0d2c4eba2a5be7d7b82ae84ab8a223cafde4ebc34e4eb0ef574d", - "address": "lax1egyudn4nk83cgzy33xj5jxdlwe72jx0hkr0vjw" - }, - { - "private_key": "484a3b8724018a451dfe1d3eefaae75aee05b18d1d166e8caa1167369b60d5d8", - "address": "lax1fuyhfv49j82fjcm7n0wyq2gnfyryn5lw6dgt9s" - }, - { - "private_key": "7ec7fa2e85711023405a029a6e49d27ab09bfc0e4dfa906c43d02475c9050ddf", - "address": "lax1et3xeerw0e97mc25u7wyhssmp6pymy8azvjr8c" - }, - { - "private_key": "bc31787ba0829daa7a1412471fb520f65411644e1dd993bb51d7545d10c58eb4", - "address": "lax15tmm8224ypuj95s24anv6n0cd6cw2zdhepvg59" - }, - { - "private_key": "2cb9c29999393aaf901fa31021a41ce8897a05f139fa13b52aa2287a4668990b", - "address": "lax1pnqhwanhln245s024kvzl20lc6zushv53qdv72" - }, - { - "private_key": "dc8ba7a8bcd44059e5f71c20c70e3969cf76fc8e5a482e0ec4b3c3d2c2b3c8aa", - "address": "lax1een88srckplje5872llu0lkng4q0q08r6dmqll" - }, - { - "private_key": "c8dfd853af95c536e3ccd8202a9a32a1e0dbeb410b6ce6991f700e27ecc3f454", - "address": "lax1cwen60cen7vnjvcxkln8eqfu3784063juzq9tt" - }, - { - "private_key": "9cf721dc448a291f3156196946ee01d5318f53ade74be6d26e4a506f29123533", - "address": "lax1yyyaudtm22ggyut02ufqngr448qpslz97m2t88" - }, - { - "private_key": "a6e88975ca7ffd1e5dda546fdbd83d83df5f68f0386cd9ae0e0cb6aff2e5139e", - "address": "lax1xszkxq7wnqy0jmarj6fv220akhpw28vz93jdqh" - }, - { - "private_key": "c0ab37b7dbb318064722ad0a26687802e13f881a8a575d82f877d06429044300", - "address": "lax1kr6gnjsuscr8wfmp7dvc5803256tq907k8v6y6" - }, - { - "private_key": "84067cd733cd48c2f369a50cf0106113a7f03d04aa4f4ccbef623d1c1f2ccb27", - "address": "lax1fd9xmp5alcpjyxkqkfefz5vc8t8d8kwcy9ahpd" - }, - { - "private_key": "eaeac767a9ecca99a130d536c113edefd57b8f4404b2922186ebb64b03b7938f", - "address": "lax15eazm8gfn95vwvwl43t8473ypqdz7esl4flszn" - }, - { - "private_key": "815fd5641b69fa6c525698b0a7836ac2352d4e64dade28c4483739c8ea7821ac", - "address": "lax1kxmyhcq0fuv97j7zm7xjea39wq04m77hu2pr82" - }, - { - "private_key": "24b33f7f443f054cb6549705ed507006aab5321b2feebe9dcb2257fe2dbadbc7", - "address": "lax1ut6mvt956x6qx2kvltffdratne0m92l877keuf" - }, - { - "private_key": "8bed1c508aa7e63ba595d36fc44f3ff823285404c953a5e5424a8b6309f28273", - "address": "lax19azua55vv52yhjsuz0e7jngkmam0f8h4y8g7cq" - }, - { - "private_key": "61c45c376a38a6d47b0e7a86ad21ef6306449e133d3f3a4b80bc4d558d3d34d1", - "address": "lax15z8spvjvl93a2t2gnlkt30j0xp9qy0caqpn80z" - }, - { - "private_key": "286f2cf5a9ae13fe151f0ea6dddb19cd91a5b4e732c715e09b3d200f39466dba", - "address": "lax1dqf4a0fqxaw06a9nhmz7l3h4mj7tsqu0mdn2cd" - }, - { - "private_key": "3d9bac1f37fa5d2add5aad8debc7701b727ed45825326284af05bd1fdcb57700", - "address": "lax16cpjvfcfsj4cg45w0cr0y3jprj0jj6xktsfurf" - }, - { - "private_key": "fe19b61d2980fb22be0edb10d1bf2284929898f6a58bb3391cc770f94b798115", - "address": "lax1mmrr64sjnu3ctq69l5kfu7ue80kxwphzr23je6" - }, - { - "private_key": "84cefc499dd913ea96772f83fad71ef98b6076a335275a8367f4f9687fe50bce", - "address": "lax1l3mmsz6lfcc5kup2tvzurn68q3wzzglufpjvhd" - }, - { - "private_key": "d0286220dcd2ed524dc5843d75b663d2f3d4e0983ba774b2513b5a8df18a8657", - "address": "lax1ez2yzrw8ahpxkycjyrp7dn3jj50yp6ycd76e9j" - }, - { - "private_key": "f0e9acd31608c5dcf7056baa600dd6fe56d4e8acd7a3beb7868d3c23fe5ec26a", - "address": "lax12x6j4h223nkm2plhph7tmcfthncf7wglpyv9ke" - }, - { - "private_key": "a474b693e5a2e34378438189c8ac9e8128da2ff0fa7972cd3bab7ea0f5ee8433", - "address": "lax1mn8ejdd6kxja06jm09psl2yvfw4j5kdc7y9l2l" - }, - { - "private_key": "1159d41a014b58bebd5b51979b7e0102aaa3ff7d1aa09abcd99506234c673252", - "address": "lax1j27wkxtjku4qmz9z7exjv0hh9l5dysrdzgvkav" - }, - { - "private_key": "20243faa698e303a8a8093351f30fe6a4d882db1fea1a9da1c51c05af0473012", - "address": "lax14asz66k94j2yan0zlpwmksh7vtmtp3s8ky59qw" - }, - { - "private_key": "39a98126f9b97dbc190a606789ce589c4749940eadd8d1312b2179f09c5403ce", - "address": "lax19evqjrawrx9e4yglrcwc6jsjnujjspjzp0m0ek" - }, - { - "private_key": "221d3ff1d5d75542561f667a5d603d64708e101dfb20fe2b0ca21cdd47e2ae21", - "address": "lax1lcsghqq88uhnr0zcp4a2w6mk05fps5gkfwmrg5" - }, - { - "private_key": "d25863618a8e5af90efe2375785c5830fb52fd860b17336806356c6898aac2d1", - "address": "lax1t2klemr8tvyn37s55d7hvemqymmh70gjrn622v" - }, - { - "private_key": "dc50ede8c9448f6c19177227f87d4e32fe20664ab9aefaee728d9bc2be7757ec", - "address": "lax13cd282d4sjjdhlszu4889p87jf0qkspt6uq4kn" - }, - { - "private_key": "b33c0c9acf72d7cb9e270ef3455f5ca2dc4f895dca75479b7a6d8d8d82e32696", - "address": "lax10mhfu9gtgf0k086uk5dl85dex36zjmnhyqyeha" - }, - { - "private_key": "b5361bbf4ceaf747bef51473688b7d7f1e5fd8b2c1ab1043651348ce99063454", - "address": "lax1c3zrs4825qexhmfwqd60202mdaz8hh5wydanr0" - }, - { - "private_key": "c8ef7c1cdb3d99751d62e5b240a2ed939b2a0a17acba0ef2fe66e7470250da37", - "address": "lax1uuzw82n872s5jgdmcw5sae35rfdcfgey3v35qh" - }, - { - "private_key": "e9d078d2c34d1c6b7faa844ee315338c9af0ce11968c8084a4351c822fe92c2c", - "address": "lax1maq5vke6aasnrmynafjk7vfq6pfpfzx6hc2qld" - }, - { - "private_key": "486447bd82dd64775e84face8a9d5a925519a8d38bc675c3e0574bec3d83faf0", - "address": "lax12263ncy9gvrwg237u3ez8s6pler4lddq52rjrv" - }, - { - "private_key": "39aa82d41218d07a033c725d79d7c0636d2e593fc9f90d67f37bb80d07fda2fb", - "address": "lax1yvxhp8qjhzu9448ns9c0egv0mew2mrpmk6wkjn" - }, - { - "private_key": "df45d422e63d9b2b280bc98c656bac7415e5e8bcc292f695d37aa4133cdba308", - "address": "lax1lpsapr89k8k2js99lsgee0ke42p2wqrvfx3ncu" - }, - { - "private_key": "e27f1fade78543356a0abd3b80899e3011888b1be9a91a51fc9599c38cc81a08", - "address": "lax1p5use60lcn40ejr934dxqxc02vsdaqngyuw968" - }, - { - "private_key": "b1d27a5d858656cd5689366f11c2231f4f6133cfcbfa17447f5109651765b6e9", - "address": "lax13jkm5r2yadfqmpyatr84hvs7t2wxgjpf6ya0qn" - }, - { - "private_key": "9dad7f3ec3ded53c55a005d2c12c47636ed47cc1f528643f3eaac849cf6745e4", - "address": "lax12l8yfc5tyr8kaz2uxz0erm24pmkeul7qnymrkx" - }, - { - "private_key": "f4537d09e06b3747979ec61bd1a3a69f5999f161a45aac105c32b2570f6fe043", - "address": "lax1uwdcjxlkjhqhqhgtte8tj0wr967prg8sf8akre" - }, - { - "private_key": "577d315ef6142de59ecbf8557a7eada54c6c1d32cb31a6d3031f697e0796844d", - "address": "lax1p46ee87hrl2ukm4wjlzcc2etkkn3l39jm69x64" - }, - { - "private_key": "06fa8c302ddc2ee1d0f9dccad62e9a059d819c3ae4c1d24bdee446e7cc98e520", - "address": "lax1splcfynvh6qdq08rjdsmrml5eqm0v4ep6y3pc9" - }, - { - "private_key": "c08f2100b649452a7d9139a27d8ccba3354f1593fb401fd2d01e86c259d2d5b2", - "address": "lax1lycjyldy2uke23gs9j04pwkapttq7sc3gy5wkr" - }, - { - "private_key": "7b1928f509e7adb0f132cb44bd7b9057432e0fc54776e1a9cf4d9e7c25388a56", - "address": "lax1p5chnng5ehyy3ah8fwg28uduew0jn6tgu5fst5" - }, - { - "private_key": "c0c564337376716eeec66cc9154c92c61949217fcc83e79b28b2998b18c8450a", - "address": "lax1c4j8gs2y8sx8tqvzngjz7vwlh66karff8hl2y8" - }, - { - "private_key": "5522951edc84a716e214ff4e1dc0ac0cfb972219277bb2530c5423ae4e0c1263", - "address": "lax1tu7u92mr9xca38mcvs25vttpm4pj8rq5fkdp93" - }, - { - "private_key": "2ce8282c901a11be99d0fa94c1795512cb94accdb4b73d13c5d953a8bd68a460", - "address": "lax1tvpzdr5l7e3pjsewy3hx8x0n2t808s22hkf4cy" - }, - { - "private_key": "0a03643b472df547ea773e98750e77e19c6d79a890bb15c6e6846fd0c6a213b7", - "address": "lax1m7ad6qufevrnrce78hcem009lmh6t53d88lka6" - }, - { - "private_key": "0b76d1d2e8ee4a9133d2da03ac21bf6e458566eb266d38fe1787720bc2a9b5ab", - "address": "lax18smz255u8jv9gfpl323lu3waaccs4w9dh4gvwn" - }, - { - "private_key": "2adbb7b06185c094e2b5f3eefbc002a32aaaa1ba85f3c382c1159d61b5e2d84e", - "address": "lax1fpzwuadg8whrxlupfexd4t8vflweprfrj2jqvy" - }, - { - "private_key": "f34700310a79a4f39de9f89b4c146e83b00858ffaa82744406cb800e3420c6dc", - "address": "lax1kl0xghd4yy8uyrhsyc9u4wf2cd6lv7v7vqxjmp" - }, - { - "private_key": "32c0b4d7af05c48616cba974366345b598cb1f60e287ee06bfaf43757b69449d", - "address": "lax1y9tcvyzt9tj8rqh29uk3dkv4gd3djnelyujkxv" - }, - { - "private_key": "f7a783680688da344bcbff307ee225a171f16316481b74a08ea4e80f14a17ace", - "address": "lax1cjhy5qxar4w46l7vg7a9adslx887jxrx6cugff" - }, - { - "private_key": "ceb4811b5c68f1aabd2b94d2db6695aecc40fe8e92e95d83cb1d0176c2cee839", - "address": "lax1ctmvdpqwtylyrxdzec78y3299w6wwkcnc8r50z" - }, - { - "private_key": "1cce5c5cd30809b53e4998a56bc50acd3609048b50fb70937ab60e8f3d4b0218", - "address": "lax1qsmx2gnfay7hz6qxdmh5qggeht00vlcved7620" - }, - { - "private_key": "648e767fdbd09545961852c7f67e9828186375d3c1054908ec9b36d52cfa426d", - "address": "lax14vk8wkul6rj0nex62mhj6k0qgd4c3czf2seckf" - }, - { - "private_key": "19a9928e369c385d91c39859dc0b892daa229fd9cd28321b65d1ecabfd40ec53", - "address": "lax1lne3t06v79a79vv4p5s64cu4hduk86xcvhgvgp" - }, - { - "private_key": "045da61c83d207d3c8a4bb70afae43ca4297422f415c613603e28e50e4c55055", - "address": "lax14jk0nyrdwpp2usphfcx6rzjl0nnmh90aydq3hc" - }, - { - "private_key": "cb92e1bcb449d1ff39ce6edd944c9cb47d8d22fee97f70e3e2983accf44fab63", - "address": "lax1jmrav0nl4hgquar5kqjk6k47487nx7sv0g3h7w" - }, - { - "private_key": "f06772f4c6add2f6c0cbcc938b51b81a2888303a104543094dbd2c55f8d8e645", - "address": "lax1wsc7w42ml70ge8sr64jxdtslud05dy0wckfejk" - }, - { - "private_key": "ff496553bf9b36f780a19e633414351d3d2ba1b9fade1d9394abacc66fd5917b", - "address": "lax1swtpw0mympe8p8sj54p0exhxen4t5a8u6mt750" - }, - { - "private_key": "4b3b5e2771667a653fd08ac6bea4d41f654e83c2e4cf9965a57e8c2eeb1dbc09", - "address": "lax1attsmvts4nczn76l429aaq5tw7cq5zfayzqk3u" - }, - { - "private_key": "e36852c905b3f1339f9bcdf46893132443611b6dd367cf53d7f63ed431303a8a", - "address": "lax16qrf09x8n48g600qeg492e3pz2az0qmsefueqr" - }, - { - "private_key": "d9df8578f13404489a35c3a5a10386561e2488885b4285c4fedfbee2b19b1e3a", - "address": "lax1hplx6fld99vysv5668gs2syjc8j5zsqe6e98j5" - }, - { - "private_key": "2753b431efa8682b12a8a69aad1163752dceadfefec52d41c41ea2a6ab29091f", - "address": "lax19xzt7azdz24hugfxrvwvzww5tq2wskaskck0qx" - }, - { - "private_key": "8e5f9197456a8669a3f88b317bd38e945864efc35a9ea2c930c5350140ff0efa", - "address": "lax150f90yf62j5trld6hlcf5q66uwla92xq96xuff" - }, - { - "private_key": "ac2d7dc6f136d59ee7883897bee1d9028a68688793b51b86f612f1347d71a8e6", - "address": "lax174scsyf2hhfdaudjvvtpzdg80q985nr5hvz8ut" - }, - { - "private_key": "c9872ed6d5d0081b3b6993a1a5099cfe2304c21e170e009aa1cd9f8ed3d68a85", - "address": "lax1sg99njkdecagfhs6d8vyvc4z5k2x8v62wfjlca" - }, - { - "private_key": "ed3c67a6037c553fdd6e83aaf35b10936e8744e58657d824f9ceb3f43b6a0c01", - "address": "lax150qyf3fthwrjg2agvujg9khrljhnyzgd2a3lyk" - }, - { - "private_key": "304c340da6e4603d7401a3aa77bf71f347c2dacd88945df7f06bf846a0522b3f", - "address": "lax1uqvpzjc9jlh3r66jnuhfq0ztydeqd4z920lcnl" - }, - { - "private_key": "488d9c10ddc1a0430b383cea0f928c03acfe9400b1ba86281f2177ebc0681c56", - "address": "lax1ams5885ass0x7yvkt273c4xhuwfcmn636q7msq" - }, - { - "private_key": "eac4e650202e1aea643aadf725439cc0281de659694bca775cc82ff003aa205d", - "address": "lax13dt3j23zpqc7d5sul0r28ls4wevvk96p8xtsgv" - }, - { - "private_key": "98692d3b7fe14600c3ae912a17923df2fc34685464751088565ba1a47d35e24b", - "address": "lax14tcs9rk7mjwe4xvcm3xvrz6vp2ztmeucrx5xmm" - }, - { - "private_key": "898aa29bf659c9aeeaeea780ea819dfa820065e4c64411405803e8beade423be", - "address": "lax1sxwtzysrgs7txddn7jwyu6dxe983lh9apau2j8" - }, - { - "private_key": "5c4ac575925b36a99a3d97679a3b9420746b6df5cce94911b0aa9832f6751908", - "address": "lax1cax5m2tqqrtpmf6y89yx46nltk3e5dqtzpkrav" - }, - { - "private_key": "f4871e7f47f8c8deb3fe59751a220dddb0a22790b3373b1583c6d0ceb7de5d59", - "address": "lax1m67yas5a4crdru7szyzuxy42ump66e09wwrxt2" - }, - { - "private_key": "36f0e7e4361e5410533adbb3e6627e99abeb95432156e82430c75d15bfaf67f9", - "address": "lax1m8p2d4gycnp8ku9gs0fp9m45d8hpnv6l4j7gsr" - }, - { - "private_key": "014b65ef4015af99f50b2389e77f6d3c83a9ecc766207882280f53cd757bbff3", - "address": "lax14xs7wh6lqakrzy3zvlrqcp76mz40avqxcsj6ys" - }, - { - "private_key": "20a84245042aee60901cc32b114f14aaffe573a67bcc8f4d5cf1d96252a4bb6d", - "address": "lax12an4svrdhw2ul9x0x6yjstyh3ympz8e6udu3wm" - }, - { - "private_key": "9acfd558124e81e0554c23d83d7f4881b22c972357b887946ee02ebe6cc4c830", - "address": "lax1ndz2n8574sraqf8ahaukqm5kqtfmmf6m80mq7x" - }, - { - "private_key": "ad10ee3f30f06c30c65eb99896a360faf47e47f79b5c883b90e931cb8a4fd285", - "address": "lax184zr5e2w7a8s9le8n7ful9k6uqe4vanfzyzwgq" - }, - { - "private_key": "4aa0de26da163b885a3dbb315c3b99827574f017819e1075ab14340a2a882606", - "address": "lax1zxnsadf2adjkz7u4rxng6sdz0dh50cxrtpgwtm" - }, - { - "private_key": "59c6516ab9602bac1775ad3a500cf3fb347fe6c00af21d6ec2f9d95fbf2b7985", - "address": "lax1jqjzl0as2hekq8ntwecr5wy3awzpfpk0rwpkk9" - }, - { - "private_key": "ebe127a59fc070ead40b73271a93c3dd633b49c7f36b8b826dd6388bc4fd9538", - "address": "lax17hr3r3dzsh8jdcjxgepwmu46jn57ym3gga4624" - }, - { - "private_key": "0cdc4e5f0396cad47597e40b48c22977a64b914f06826641e117b1634f3e16ed", - "address": "lax1097k42jjrf8mpevg7sxgwhzyszmae6srgnfqjm" - }, - { - "private_key": "9d1dc963b8b86f3c56766dd24c962d2dc7757022370d93b589f250e57b1a28b3", - "address": "lax1wrt2ss22upqwfuk9lwpuptjm07uatfv28r9hyh" - }, - { - "private_key": "da108734b86e711c7fd75f591a772c7d979134e39fcce9b8987c384049e53e69", - "address": "lax10m4ntsw4qzu0nqaqju40k347mjrge5pssvq9rm" - }, - { - "private_key": "d08d35992df9453d3bc85cfdc1fc292913001796fc527008c18f53e55868f726", - "address": "lax1vlxxe2hlk88c0lsl7la2090p7k8wchnkv6cggt" - }, - { - "private_key": "9dd6d8c0e528e4dce0ef59898ac1b095b4a964dbcae2c507df94c3f82c870064", - "address": "lax1vae9w6gpnxmrw4c3jqeduxr3zpaej3xx3zj6ml" - }, - { - "private_key": "f2cb88dedb4f53a8418513ab035c4382ebebbc23c272244ad53cd6440ba71cc6", - "address": "lax1dv2g7gc5dqvl0508exhv58zl4wz653h6cnmhn6" - }, - { - "private_key": "3579c4cf5f6385178dee0b2fb033b2b17cdafbe7f2375114bee6c43a7547c525", - "address": "lax1pw7yw0fdquu4t0lax2zh7vm7zvu8dwq2e27yh9" - }, - { - "private_key": "74f6ce7064ecb247358b0f982fae1ad113afc20aa417051cba7c407f3289cfc2", - "address": "lax1dh0at5jh62ncj724d65emj5veu58fep3xs9cnt" - }, - { - "private_key": "662d8726ed8efe9144d715de036bd3615641ee8ecbd4419d51b0732d3e9a2412", - "address": "lax1xn7ecz3xa9dsmm65e3xtk9meyvxe6pc3hazzhj" - }, - { - "private_key": "cfea558ef16ead46800a3ce86b6dcf8fe14bc1b2b5bee6c589c8bc6a52f0cb0c", - "address": "lax1gs6uxsetd9e4d7wtp6hqdurut3xw5ngpjwhyqr" - }, - { - "private_key": "5c19a69591d57dbe5ae80566b52d14a47c4b0d98772ebbab95085fe859759b3f", - "address": "lax1x45twvlfjw8shrgfe0c24y460eg3fxjhjhy90t" - }, - { - "private_key": "8ab1c7570722e067e9e3014a86320375ca3ce3437c7b11a7338322e0d7467996", - "address": "lax1cqttgn6pndw3rguz9kzr9w742r8z5xmlqcggk0" - }, - { - "private_key": "545e99097720b1d61637ad1ad0c063e54687c9650dac693071c464a866b4b1d6", - "address": "lax1gvm6x83dlaxd6zrmenxw4ncs0ranvgt9akz6np" - }, - { - "private_key": "e2117cc5cc3b2e560197e8a30fcff520b65d7ce92104cf7e4d485c00c4ad97eb", - "address": "lax19j3mecg7jn9wyn3echfatppqrakx3lgs7wgk48" - }, - { - "private_key": "4cb842f5931b950b56114f9e39d76e0c181f8c3e0cd2ab5fa231eb91c6cabc33", - "address": "lax19us648fujje4q8s3ta43esh3fqze03u2wc22ks" - }, - { - "private_key": "d658c219b8438781824907d84c39aec0c08da3adb8b7544a49a27461208ae6a4", - "address": "lax1t0uwdqzrdqj5udugym2fcjppd83xjagg8xka6p" - }, - { - "private_key": "bf77d62615374f8abdc8fd40335238659a0e52592cc8ae50b9a612a03287018f", - "address": "lax1ldk2al8v7unwwuh9kgchqpfu2l2jxll2x6dd5y" - }, - { - "private_key": "f801d143b7cb7e9be2f911c4da3b3339ba180e149fb2bcd04ed18a3f7d793f13", - "address": "lax1qqy37v77ta54m9hcy8zv33wcpc72ukyk2q4rjx" - }, - { - "private_key": "32901467258bec83f82b1aeaf4d8de75869f4cc0d8414d0f1d65fd4d2733bb20", - "address": "lax1v0zyv6r5znrqhp8a7qj9kfxdpev8safl44ex45" - }, - { - "private_key": "931a3b062f13391a1b8b95a99d4f60e89ab98311b0492215b6b5b397de9f43f4", - "address": "lax16s8s90kgqyxwa89pdaej092uzxe2c8xf2vdnry" - }, - { - "private_key": "294c922416269bc1f6f620600d9099c51c0ae82975d07f2deff5e95c729c8a48", - "address": "lax1r5xcztp2ukskmpxwy5a3tv7lv7hhpldse4q44s" - }, - { - "private_key": "ff0b7ae6bf3d4170c0b5defd95692ba8788a9047e5e521ecf11f7f01472343be", - "address": "lax1rnw65g620adh7f9lqs7h2hqpgmwhat84cwhslt" - }, - { - "private_key": "0791765429e8d67cbdddd9a42193a1aba98fa1bf7a06917e7badd9b87c675ac1", - "address": "lax1y4mqm2dcgzk7w7929gu0fy9t57cnzuklgma8ns" - }, - { - "private_key": "34187ac6f0a9834bc647b6715d9ee302f1ae643c8fe451fffab8c14995a0f4ae", - "address": "lax1vrrn2gqfsfz95vltwjtmck5epeeauhrak9y3ax" - }, - { - "private_key": "612abe417df44dd2f6f8aa783a38cf3459e5c718e5d7cd140a48bd7fc5c20f5a", - "address": "lax178tprgr9qphlzkdd4esr672nx8yjpddvnfasjt" - }, - { - "private_key": "7765efeba186cf2549c4e69801276243fb3f18566475ee1d474affb0d4ac0c8e", - "address": "lax1u8742uagkl0f3wzfzt4kgytwesyf090u30q0c9" - }, - { - "private_key": "6f4ff1e464a21b897f19daa33bafaceb4bcec90a443530a5b949a4b74f6b6667", - "address": "lax19hx84mxsks3lewqxtj725s9u0gu2pdn4ndk0ja" - }, - { - "private_key": "07cb0a5cd5d736c2bd6e0484e4d69b3e8501788f748d44bbd0a0577198b7c26a", - "address": "lax1alsg78ulxqz5r2h4xxxvujyhcd274dfhlhzlje" - }, - { - "private_key": "39734858a2995890a9653e0edd0d32469a95e814f9eda0223d14eda2c68707e8", - "address": "lax1fmgjekx8cram5fd8vyedw2xqf48z0sv4m3drxa" - }, - { - "private_key": "8cc785f720bc638a2a03d0cc194b53c5e1e536a27d80a10a5d0bca47797f2d1b", - "address": "lax1nmcyjflswfvzgfe8jplwphux8dywq5j5e2z4zn" - }, - { - "private_key": "6076dab913398d0f6814c799f0f789c3dd544b3c6d6362321fd3341fc288634d", - "address": "lax19uxr90kmkr86p4muatfl634yk797glm6w7rm6c" - }, - { - "private_key": "5bfedb6e816bebf45f81fb424a5397bc1b4addf56ad512b7593843a8f10d1b3c", - "address": "lax1eywm2h3s6pw2u87zq3legprxedp0g3zcjjljpj" - }, - { - "private_key": "f13a759d659207b6356a2c8cdd0aac754609fdf8aa8fdb5616043708aeddf74f", - "address": "lax18gz2veupmcveesnzlmk69wm6vs3qr88t2ge6ue" - }, - { - "private_key": "6eeb9610ceba7ff0fa70dbd58632e1e3ff519a5a8d7f4d9f8b1f845f0ddd2394", - "address": "lax153cglm50rzu6ptcgykc6gmhck2ml35d77p48zf" - }, - { - "private_key": "e50a4eade2c59c31f942b9a24743e97f88e878a1f94a2f0df812bd324cbcba8a", - "address": "lax1hxrxgphsdp5dyp86z2dl3udmwcz3fkcd50np3f" - }, - { - "private_key": "f6f93f8747fc39069b0c5700ad423abbde6650518148c78fd76cb345b1d7777b", - "address": "lax1k9tjc9762tuz6hclnqmfajklxs0vkwghfm4h8a" - }, - { - "private_key": "2edf94c279e57c94943f852107585aa082522e4b11ecf97142fb78ce9d053383", - "address": "lax1pjlsgtfeq2cuv64fvp305dqt4mffruvjhaw0ks" - }, - { - "private_key": "0cd6e0a1725c75fb9a7dd4ac88910f7d797017fb9e3c08b9701349ee3bd9dbfb", - "address": "lax1m5e5lkpsrkrsh9rda8nl7448sd86rj8z2d7jn3" - }, - { - "private_key": "f4324b28865346df1a6b50e9fec524e2625397e2cec2f54773f2185dc2c595cb", - "address": "lax18a54a6d33ujayjegd8zfnjhflnm0q7ljucd5yy" - }, - { - "private_key": "1f9415d8a7db7d21a4af92b8060b142ad61cb7eb56784cdca68e1743d28b9edd", - "address": "lax14nfpya2sjmg79mz32ejdnswgvwud6kuv8jdge7" - }, - { - "private_key": "f93048aca536fc3c1874c9181a3125f4302283a83a01a660814cd64eeee2c2eb", - "address": "lax12j8r4nnnnesm3f8zs0380ujaw4cpguvvprhjqg" - }, - { - "private_key": "82c3e76d418b765151c6051b5347394fbf2e6e3efe269c839edff2bb520e7946", - "address": "lax1mfqdx8zkpaeh20c4zmgsp562a87luny9uxzgm6" - }, - { - "private_key": "bbdaee97586f28a0421cca75e9a266fe6ae3db8d3bba3d2edfbbb6fe7214addf", - "address": "lax18yw87sf0u3u0em8jakmwqjs24tzaxapla4wh6n" - }, - { - "private_key": "6090568227d33774b13512d083ad6b1d312b7140bae447fc5b80780d1888a14f", - "address": "lax1dsrnsq6erwwwtxsma00nmwt47y34xw9ls486w3" - }, - { - "private_key": "197b9547a1ad7b8d127f210d3b61d51c7cc9fc40b6f0834ac241bb6735497cae", - "address": "lax1pnm039424gmkwurcv9xds4llljq9t042wchfdw" - }, - { - "private_key": "bdecd67eecf5cacf0431937076fdceb59806bc2a8ac0b9a445af66923c2a48bd", - "address": "lax18uw6tduq8aee5eam4t3eppnnn3zmjugj6jpl3d" - }, - { - "private_key": "c703ba1078c924efe1eb8c7457ad2c487191e281a547f015fc10edbae7eb2f31", - "address": "lax1h4zc8qphn45n5ar32kcc03qkskydg22se0mews" - }, - { - "private_key": "9529434903b706f1652e52511f0127194a7ff6c80a45a37e98967ea2068f37b4", - "address": "lax13x8e3yjkh6qu7d0qqnck9tmq0ndxaewr4zcm2g" - }, - { - "private_key": "ba88b2d9d8bb4172e119f7b0e635d97d4e08f3611d3f26484790d615c5a3230b", - "address": "lax16kdu02z2z27nrkdlwna7lfa5pgsgskj0x3nj9l" - }, - { - "private_key": "5c143b261e836612bcab1a53f9ae979e8b43bd609e8c38f79cfc67557933bd69", - "address": "lax1sxpk5rt2lkcj24ztwcsc6k3ywck6g2aek25d5s" - }, - { - "private_key": "2a1b993414674f8b87a97cea483f379516041aa48cfe8b00ce23f2de8b493f99", - "address": "lax1p3xrk2fctex226m2pxcg3vh9yrsgtaxr6w5vvt" - }, - { - "private_key": "5e21cef1ea6620b39a78c441677006c6bcb94a3feb10fc1b83012d2092118540", - "address": "lax1vgrfxvr79r0vcu52lay3xv0qd5h2n9ezct5e5u" - }, - { - "private_key": "cff8d399285b9ebddfa5280aa9f68cfdb36c44644c9a0262f0c149c494ba76b5", - "address": "lax1xdgmt6afucxdj5zxsc03x4x875w40xk6caaval" - }, - { - "private_key": "a7630d2f018f99c67fd444ba876dbd9bf75dae2b007ef3cdb7d5f85603e52937", - "address": "lax10fh568mrcdt7tumefc3pm8dxkr4dxlvuxk56lc" - }, - { - "private_key": "804a66a452cd4b8b0eb53ef129b96bf3eade035386964147d3172ca432c239ac", - "address": "lax1gw62efmj3x0pfhj7knrgm5q03h6cyjsemnca2z" - }, - { - "private_key": "90642a1214f70b8979c3c3d6eaea80ae189fd3b769409ea31c4a08841c19cae2", - "address": "lax120r8adxq473s39x06vnh4apx0nmmcx0y0vtz8m" - }, - { - "private_key": "a0aced13bc61621d38d3c7900ab3fdc9cc3d4803741a25b80b02b336eb028da0", - "address": "lax1cdpnyqxzsw08hqjaze952lsvcpcqpayhc0ru9q" - }, - { - "private_key": "c9e50437e7cc8387ad85ea0936cf8525c9755d897c443dcb32ff98b210f27a03", - "address": "lax1ysn442kq7kv58gtzytzr5ghw08lrlemaglazu0" - }, - { - "private_key": "90f57a42a7527f1853443293dff6e30ca08d94f924aea6dbeb00bfda4cbee6f1", - "address": "lax12dtsflrng6nesmct3dfxmfnf44nhusgerhav74" - }, - { - "private_key": "fdfea4f2be4e218da3b4b75b8d331cd4ea9c1ed86f61fc8582c2c42d83823e78", - "address": "lax1q656epvgm9nxmz9ptkdqzsv6mtzntdn728nv8m" - }, - { - "private_key": "fb70a4e6dff86b13ec9e51c2508b95078965f152024ac5d9ef7cfa45d7c73725", - "address": "lax1lpzqjr73kmrw4xa56nyhrlmv8hrt0uv2dqhsly" - }, - { - "private_key": "7a6d2105a60b09c2b3b7811ee623a30c8f7e0d32afeeb2c308fc5496a4b7c0de", - "address": "lax1dfqg5mwhwcydw4q39tyvhlrzhrun8j2vamyu4k" - }, - { - "private_key": "7038df9311d4b689df730b5f2af1ce788480dad4935c0557f0df8837287f3b18", - "address": "lax100ps0rk8mwtawcku5wfhmkx0g9y3q5pqn5m5el" - }, - { - "private_key": "bf1dcd6cf0c09f7dde934570b62f716272df06ea16bbe77c6d73d4339401bb41", - "address": "lax1vvxk9vup69qwjskrzm4wkenjaqvx38f9g64wej" - }, - { - "private_key": "ad85962824dcbdb6ae190f81bef4f4b0d33eb923bf57df5435339042cdf90397", - "address": "lax1h32dq890gamqjn58xfxperd2vvw76erqudxuum" - }, - { - "private_key": "9e1647611ff69c0be32385df2b747b03adddb5d75cb4035056dc7133e18b4cb4", - "address": "lax15xj8zz5dmt7qa38xnhgy2ppxqy45m2jml927dw" - }, - { - "private_key": "5d2e7ecd4acc8d949d3debdcff13b9bf113981496973f25fd44673dc4a262099", - "address": "lax1vz7tykh6dygsqke2ycudd3e7kvae3n78g75fhv" - }, - { - "private_key": "c899f7259d99ed704b71f3b1d2c1fdcf1e3aec2d3f37a1a3d4c2afe48d0efa81", - "address": "lax1e070l22t8336fxeak5ca2u55yktygufecq2fmr" - }, - { - "private_key": "d8563293cc8a55b778d0ecfabfb1ad55589798ee7809959c205e82862206a01d", - "address": "lax1qd7xjhp3ysrhjm3yn4wue73xqthppwrpxvxe56" - }, - { - "private_key": "3369dee29654218feb4721951f50723428fee80375e686b560786d7ba02c3d8b", - "address": "lax1qsaamcnypjdn8cswux948kv6lqstp2903yhcde" - }, - { - "private_key": "e5c9369391cadd596b8fbc177dc77d3f95ad51ecfb063ab0632e652cc48a1055", - "address": "lax1mf5kr79l96sehqmge7uckk38uhtke4x6c3zps2" - }, - { - "private_key": "73fe1b76aaa50d599ebefd1749206602ab10f94740aa674540f5d5e98cf40364", - "address": "lax1apqgp5p3z297lr82tpcee68kznmwwpgvkpzgxk" - }, - { - "private_key": "33dc463ee17e1e8582a3460b31d77968a0a5ba2274fbcc606bae9f7b8e09c30b", - "address": "lax1gd50ctz344950xa4hkkepw0gfqxx7xljspa5zq" - }, - { - "private_key": "1a1bdabd4757828a3e4406d7ba6762b063b8857894f9a86eb5a4117067f33078", - "address": "lax15k38qdd5znek46asn39hww6umh5lr7wnw8aanh" - }, - { - "private_key": "7171041278b0beaf82a5ca462b638cf59c71277aed7e7fd86341d9a27d8cd4bf", - "address": "lax1lnm385wrcyg5de09ws38tqhwsf2fnjzxfw0h32" - }, - { - "private_key": "a5d9c2ffb882b0c10633cbd2200e68ab0e6cba389491e11ec513c702ce9291b3", - "address": "lax1scqzd4aa06y73wyfcs442gcn93dh0xpmz2pkeu" - }, - { - "private_key": "e39a1a57f609fc58b96e9a6004d931d438d9dd2602db6230cb05033bfb31c467", - "address": "lax1kralk48879l20r09lszrfgjd7l0df4z4rwyaml" - }, - { - "private_key": "8f20e082bdce7bc7da6f3bef874b8445fa6a3e5aa47816d40eaddf22cd3f3771", - "address": "lax19rpgcn0vdq90m800hzdh89g8hqhkevh6z78kpc" - }, - { - "private_key": "459dd994428274c513301dae79e565873425817a6eec996af84cf17a748ee0ba", - "address": "lax1adzzmllv2qq0n4fm0v2sqtp8eqrwrj0s8954s8" - }, - { - "private_key": "7dbd6eff5e6a4b2c0ef0a774810d0a293061e410c0f04b71439397503e0c7a0b", - "address": "lax1mek5mutlwqaugd34txmmlgqj2na8m66jx6dwch" - }, - { - "private_key": "4875ecfe8adbebf6ba09aaa7bd30468765fd6a80ee6bb8808d47921bbcf645ee", - "address": "lax1amhul9z5qzaxvghzwy6tuju6334wd0mkrukay8" - }, - { - "private_key": "0d083f03ef8b92a804bb38b41c1d595a05af8724b7df685e16fce72f62500a4c", - "address": "lax146a4k5tgcsufyd5lwru92gat9vz82pj9v59sqs" - }, - { - "private_key": "6a6d4c397980f7bbd46b42f50b289506647894dc15587954b64dd4ee0123929e", - "address": "lax1q5r8ws55r27v5us2fsxywe70sgv8rucqa6sm9q" - }, - { - "private_key": "bc212ee4e2e06f7e3c6e50229829e276444b4c2a948f839b1384f32e87bdc860", - "address": "lax1y2g40apf9l48xdr296q66zwqgmtwu89d02ndms" - }, - { - "private_key": "d165de98c2d3530e57fe584410b3e1b3b3061e4a79ab5226c8e7520a4d32e141", - "address": "lax1ensjz2qjvcnxj2208spfn77p7qk4dj5equnp60" - }, - { - "private_key": "b91fe688a8f20e7a44ccbdaa4d5d848d97f010d90926824aaa9ca8aa1f270167", - "address": "lax14ejaympfmcj3cr4eyc9kdj6en3z4qpvcp4ja5d" - }, - { - "private_key": "fe9c4ce22a78fd197b84d3d6bd9d7da34c826227d293436c2bcfd1cce7ce040d", - "address": "lax160vrys6ddarfd59gyc7p588d0pda3fq98yxrxd" - }, - { - "private_key": "4b7b9cd87df7dea15e86854edff31b2d0e4ea8a7f9e939d02568d2e2816760ab", - "address": "lax1fnvfvsf0j8t0tmg6ec78qzcernfl0f0v6nw954" - }, - { - "private_key": "7ce3d8603ce531ddcf2f058d98b0f8cfb3c4347c3747601780f8d9de959ff37b", - "address": "lax1ll29ql7tzcgtldfxakv6r8e7dhvd835pwtlcm7" - }, - { - "private_key": "839ade8a0fa9d809b579e6f80087b7aea96042e5589febfe7ae6cf2afa3474bd", - "address": "lax1s72elqglcg5xu28xh65gvyldhjk4rrluajzqq0" - }, - { - "private_key": "97416c72b6b3efbd4ab23351877dde556de7d26693a241e57fca65ed090d66be", - "address": "lax1vw5slggfy40gkhtthg0n49whv2dd2ag94p0rn5" - }, - { - "private_key": "847b7dcc2120f90671c077e28abbda4e3ea8ade1122402de3562ecd4822854d2", - "address": "lax1rdnmm5vptpa2d62gh47uquqrfdah0232enatvc" - }, - { - "private_key": "646df8749a06071ebe598f60f540cadf8771cd580eed9aafb96eba5265386f50", - "address": "lax1almhzaensxcfdl0t2kwq2esjecpydma8rkgxaz" - }, - { - "private_key": "751efa7c2424983af872e00eac8a009c4964605d9ec1f4b7949470d7ca07f069", - "address": "lax1w3kakpg0p6yyydajs6555k2adm623m4cdaknft" - }, - { - "private_key": "8a5b0712d238155131de3de9e50dbc5371656a56c1541a8d047c5acdfe654ada", - "address": "lax1jhrhqu7xaq0jcxhlmf9pl0ry39t8u8j057c5z3" - }, - { - "private_key": "53a4591b2adcce0cc0eb93104e79c14568fdb1d603015d8e55fee87ff296cf24", - "address": "lax1xmgmwessjua0xw8ke53cejma6tz25j4pup5c89" - }, - { - "private_key": "36450554934e4034c5346f2d9ca4d668fa9740ec619d7566ef92a93fb83beb8b", - "address": "lax1vpsc38dxehgxf6hukaken29td7mgwng9cg7ugz" - }, - { - "private_key": "6d8595612e0ec0a89c266615f957417a2d0b112acf761be85d04aca78a7d8300", - "address": "lax1vmhc3p22qjfuzlmyhz0e5lgnx2yz8hn4q0ysqz" - }, - { - "private_key": "641518102450c6873608f525515687deca101333a5030ecdeae2a5b7d626869e", - "address": "lax107k28crtcdjhkudzu6f3zr3vyugjxamcwfk328" - }, - { - "private_key": "da259922cf575f7a23404fc25cca795da0bb8c0153467083583215b27a8c93ee", - "address": "lax163nlku4pt023f0p6n0fmkf8uxemgmm0tdqe0mc" - }, - { - "private_key": "6dd711f1bddeee4afb14fe24941fd21a4a80d16c4bb91bfddc61da89e055b5c2", - "address": "lax1zzlnwnrphrdhx6flm6d3zk7vh8lahkahg7jdlw" - }, - { - "private_key": "53427d6ba6a8b1ceea87c021c24105c8df9df1165979adb8b205d9bbe54865e1", - "address": "lax1sdzeud54c4rdjxvx8e9axsn0eulyc3s5p98ere" - }, - { - "private_key": "56f9fc882ea542e562c3093a21f63f623073e65204c0bb67b91dad02b5d1ddba", - "address": "lax1xvd4c0te0zt60n4w2yuhy4guus72vfh8s8jmkn" - }, - { - "private_key": "4044481fcce91a95c8ceea058cef288e28c2a4e534fe08cee6d1f09d6bbd5eac", - "address": "lax1gllztaqqzsxfms0v45tyx0hzk6sypd2h6akcvr" - }, - { - "private_key": "56c66cc10c8be88f4a7ed8bc092d905cb274166378b0cf61f183a4e7213e62b3", - "address": "lax1saa8qq4zx8q5j886wfu9674d4eypwye2yrzj93" - }, - { - "private_key": "ef9772e95fa9a54392fb5b9e6c1746472580170effb3ee627bf1b44ed8f2fbca", - "address": "lax1p4u7wesd5w44cgyr4d5h49xjn525805ng69m7p" - }, - { - "private_key": "1f24fc0fb1761589e6ac02ed045bcc3e67394a01293b1c9f63b660bffc72f656", - "address": "lax12a4k07jc8u2ujlpmruqdnr46rj6xhsvyqyq2rg" - }, - { - "private_key": "57e83df619aa6903734a73af7e653921aea0c8213e59b52a21145f75b38ee817", - "address": "lax1rwh7se6w6nazy6lp5u3s7lcuvwf8q6uvtzxxr6" - }, - { - "private_key": "4433633e40f62fffd5ea2d9e7d6a94c1912e6ea8fb5df99cedc9a09a0b55fcf7", - "address": "lax196r3flk2q8q4cvp82904xxc5et89d46mh5yzsr" - }, - { - "private_key": "773c265a659886ec823593ea2f7f720b6cd1928d5623e14ca1fa6f7c5db8cd1f", - "address": "lax1l08cpcxee328zpgtqy4d79lqvf6cl7j33lpe8n" - }, - { - "private_key": "dc394bef585d93059f8941b4901355d4524a51b55ec4e594de2873ef86cd3669", - "address": "lax1unxjchfyzrm5s959x2m6ajf4qce2s3d5aeylu0" - }, - { - "private_key": "8ebb3edca2dcc5333684225bb9296204343abb305c6db7e196f0815115a5fafe", - "address": "lax16da03wsmkla4s3usasx3aya0vstaj3m2cj04zg" - }, - { - "private_key": "535ebe82c7bc7408ebc7326f40216efd2334c1c5986df727308dd4403b8062c2", - "address": "lax1fj4p8s2n274qkgeyqnz6xngnpjlct45s93yj5n" - }, - { - "private_key": "813f67cdaccb56b3a1319e62a57bb80ea3d2f3e1fee24b635de6120a086a4846", - "address": "lax1ldlqh2tyuqc7hzjtyy26melr3u7yhkpnwz5cke" - }, - { - "private_key": "bc349ac5eb58d839c86d1c7bbeaeedb2347eeaea41f144f432cba78aa57bcad6", - "address": "lax1wedutf564wz985mynk6cpg0cc8fpp3w4x7dp0n" - }, - { - "private_key": "d70de9eb2b5c3ff0e7529d31f8bf705923da67559edaed57c6b9264689f6ded6", - "address": "lax19dhau883pzdkrp0fwkzesrawu6dtwked3rwpmr" - }, - { - "private_key": "872fdc9acfb40bbe6d51a5c38ca159475aae234ef45c8ede9fd8f90cb1a783bb", - "address": "lax1qm8nufujvaxa7tffj8u4wpfvpqnjdqc38vmh4v" - }, - { - "private_key": "d360503ea453cfd008db751ed37fb689fb11ba90d6b1de7a7d32db5addc7d69e", - "address": "lax178rfamrlljgp08cep7t9zqpj7pyhrnwcezpsml" - }, - { - "private_key": "4958d955fff090b4163e94488075f4748d9fdf4f1c3483cfe091bb8f01d57be5", - "address": "lax1jgmtrfxa3m8u2434ysmz5plfgg3v2cksc9w03g" - }, - { - "private_key": "8675e3fd10bc5f755b0b75618681a05900c5a422f04ad1b4e9c8325cb11d5f8f", - "address": "lax14lr8dd0tv9ahkf936lhg7k9vewjnfwwvffnz67" - }, - { - "private_key": "f5d9539cd99509fe8c1513e5f75ac04cf971b4a395b2ae03e85a75d071d5baa2", - "address": "lax1m5p9ha05cp604hx6muck7a4tk7f999zka0yskt" - }, - { - "private_key": "17938ebec8498c2ba710792006e2937de5ddee10435499c6cc8f86df1f27e286", - "address": "lax1jznvkm896mp8f6xplkjmzzrg4l9gz5pnplsnuz" - }, - { - "private_key": "2b836e0337d75b320703b4dd36c8d8f411525405394427301a37a179d8f8f926", - "address": "lax18hzh2nt8n3vgm0xfzh9xt9tstyp2237u290fdc" - }, - { - "private_key": "a48b6dad836be54397a37e0f39e9e8cc2021761f08521b0f7f0c3dc3de193ae7", - "address": "lax1zec52hvxys43cu2p6hfjqs9uwq5j7km4zv5ah9" - }, - { - "private_key": "5bcc72c8d362e9273147a58fb1d216a1eac80f3113d682f480f6581e595e4f4c", - "address": "lax1ks26rsrllq04g0pk0nlawqel45cgtaysdz44y0" - }, - { - "private_key": "76bad3fdf3359062e061cd9ac6cc19c311f7981262a1347f7f299a1a5ac8e323", - "address": "lax19zg09w7526ss76na5d5ap3uhufmng9fcwjhgvp" - }, - { - "private_key": "58bac0ce949b541ccee682d21b640da23ebd0c285f94d0149af161662a426b41", - "address": "lax1jm736hxq5yaq04qruuh0vhcqrmqh36tlqez4tz" - }, - { - "private_key": "f17f64f59d22e0bb11a9f52707cd8b33e19bd81ad999730a231d298a4034f748", - "address": "lax1nkzatt2c676upuunjdm9dr2l4puz4fx7apt96j" - }, - { - "private_key": "9c15073376e07185d12759e91a6bf742704e32531f909b857de34cc6656826d0", - "address": "lax1ekwcfd6r96rvppq7gy3x7sp94yzjjja0ux50e7" - }, - { - "private_key": "2554957fe7a77585443f112b10d17fe44f6c106efd6bfb8882f46126d08d1111", - "address": "lax1g9k06vmdghfka9mrhuqgu7zpf2yg8fwv9yph66" - }, - { - "private_key": "b4d27cc93a8be6cd47acf77ce2caecca93123b0fa8dde6828432092624d04080", - "address": "lax12yd03k3qnjv5qfjqjwdqpes8wujlrxrryxhx7w" - }, - { - "private_key": "d41e599135c20f2ccca7b642b41fde2fd4f280d864e483590ec4c25e28e62804", - "address": "lax1dvemuq4afumtcu3ytzwswcuvu0aavkhwenj3ce" - }, - { - "private_key": "04f5de04811a9bab8cabdb69dff99841da7f4f0e0fb9bd436b7af0c64f96c7cd", - "address": "lax1jh3qml3perqlknhfjgysltmj7jre800nm9egsn" - }, - { - "private_key": "ead5fe6ce992d1cc8d67eb812d94e524809c5c6a4c7765b75bf69f8e85413da8", - "address": "lax1x00f2cwzefwm2dw64kdgunf59x66yq0x3lsqj7" - }, - { - "private_key": "d8de07835fd90600fbc51ac05cf88ee28ba0b5ba1a18e0caab9bdfb1057ab0e2", - "address": "lax1p029azqhyn7nc3x4r4tsyudxhv0fm282mn7x9a" - }, - { - "private_key": "c831d5079013ab9660c93d84c2685f45b772e41db72d6a76176b05e939448bc1", - "address": "lax1zf2ywq3xpcgc527pxnepevmflprx858lv7u0tg" - }, - { - "private_key": "58a4ada39f7fedbc90c604cad33c7cba8a1d54639447d0915d7cf9d348eb05d6", - "address": "lax10sgfkafu2vqlnrxnht0enjjustz5cgc7l38me5" - }, - { - "private_key": "055fb2de3747646f80f8212b532acac9fcedef312eebda78e4e57552b9887f20", - "address": "lax1t4ld0puhl8pf9hnc432fycew9sws6hs85n03gd" - }, - { - "private_key": "6b372dd7d92aed81f9832b4d2d17d0342217f7d0d64bb29a76ca7a4b2cd937f2", - "address": "lax1l5qhgrr3fajt6rz83ymf294g72l0zyjazsf8dh" - }, - { - "private_key": "f4b8c099b07c17d0b92e7c041509bea6bb6295996af6d83dfcd6eb2155997d88", - "address": "lax1k68pus6du595czpdnnj9s5p0ca0e8uwcpgk3la" - }, - { - "private_key": "618fb511e50a4b4b6b79004e1abdbdd7fc7049d64dd86a35a8994d41856fd64c", - "address": "lax1k500aq23svd44dkjmv3rvze5wm69yrsasmzy0k" - }, - { - "private_key": "8e1f128dc4a138dc42f27a7de5fee427f158cc60c758aab52f82df9694937c90", - "address": "lax1te9aan35t09yjedfeavdqj553swpvmwkegjhmx" - }, - { - "private_key": "d438fe8357a519bc4bb6cc49eb4161d46efd1ac833db93a36a3d09e56b21f850", - "address": "lax1n4jepu8l8l3z5zqpgclweznsysvss5wf3wxlfs" - }, - { - "private_key": "856f80cd977c024e7361615d68c1160095be6b50c50e0c5da7a78dcb161eb4e9", - "address": "lax15kpv9qy2g9fr9tp975mnrqj7g3egf83sg62svs" - }, - { - "private_key": "cc1c152eefb9f778eec445765237909946f72b04b739407ede9deb35ae62e587", - "address": "lax1sa9veul99z9yz6hp0rdccgvy47fgpe3xv38fhp" - }, - { - "private_key": "3faeedf3e59a0f93d3ade2bc641190120343118055fc97d31514eca9b15cf385", - "address": "lax1yt3u6ctn09c9ush95paakr7dulaanj6educrzf" - }, - { - "private_key": "0db6c3d5222fd65b92c7a747ca582c528c34a736789ea756251c444f4298f042", - "address": "lax13plraq2r2axgg8trhcun73yk7ag7zxxw2s2rlj" - }, - { - "private_key": "0ba4e8e9a2f767e6916a277f87f07b57d4c94b8ab0fb26f122769c5bfc49ce8b", - "address": "lax1tqfu7du9rrk2kzkuaa8wnklwh8fh0pxx5njrwn" - }, - { - "private_key": "35a14455182b81b7c1b7e5cc7ef1c7d662579153862649b1e2bcdc40095b4cf0", - "address": "lax1uw6v9a5xzr2k3xaguqe4f5nccwthewglkvx4md" - }, - { - "private_key": "397681a3fccfcd162001aa31a41fa085e497520591a6b90d26f758e711871485", - "address": "lax10u5c2vngqkd6jqnewf3a5wl6dxhlgzp0r3nxhz" - }, - { - "private_key": "69410f337176af72366eb9cc92a430df006e12701ea14a0c57e5b94d8249ef17", - "address": "lax1uv3jv7j733kzd70h8t2kh6jy3l7xpty03z32jh" - }, - { - "private_key": "bc2e5f8c490d8c6f54f182e5896534ad6abf94ef4d5a4f6badf275be8c23a6b2", - "address": "lax1elh66qc2te99d84p8dhnk2neugxjrcwruxlat5" - }, - { - "private_key": "481d4d68c41dca7bb8cc9b47e4f4366c56632c56439c71d5998fe98eadb1780d", - "address": "lax19hvzwna3sgjczqxkag6r3h5tuhy5n8j90vuxkp" - }, - { - "private_key": "aa0ace72e9dbe42229c0cdab5e133cd4c17e930a08ec0bae92d423e002524495", - "address": "lax1jmyaxzvq9nj3gy2jtrxrqtt8z94een5xnfh3zr" - }, - { - "private_key": "d779ea6a6687a32886ae8044247d1acb3f1c77ca358095f73390a74b10f6039a", - "address": "lax1hvswdya6jmt2rrd5xudd0sn3tpmxn2afepgffj" - }, - { - "private_key": "cd57ca40f5c170e749dc5a3a259c526b7f2acdba9d2426bf352c039407b30e6f", - "address": "lax14vujzdxu7m5cxg4y0uy54q2hakdxktzf5hxkqn" - }, - { - "private_key": "4b1f9916019a2eca543710fb1fbbadd6955898753c9a89f6cf7251fa6e3928ac", - "address": "lax1ugrf8jya9l74njveccw6r38srr0h5w2e63750r" - }, - { - "private_key": "5bced600e93dd304b07973290a619ad61d8140316617999d9f177bbea2fb3fbc", - "address": "lax1qpesktmxq43pc2zq64xp9l4z8kzyhdjrd3a5qn" - }, - { - "private_key": "b087740f9e9a3bf909e7e6e7c9153da7bc5324b9a030413890a8240a115ca325", - "address": "lax1h5m9f5wy332mz46ed6krfr8phufs8z5yxwv3ax" - }, - { - "private_key": "70e2f7c41985154d913835e3bb0f67b12a6058b02eb6704d3ddc0043655eab8d", - "address": "lax1zrhkhuwpng7t28hezl2r3g0dr5s9rnyed3ddcq" - }, - { - "private_key": "726d99c07ef6cccb6f4b981abf5fb0e5eeadcbb92b2d4e95c72813635923e9ce", - "address": "lax1jtkv475dtdwqq9qkg0vrd0ar0kypj8y83c8h76" - }, - { - "private_key": "3e8a189e3d28ee91ebe27f840e680b8fd4b5f58022c65548a339a2841533dcd9", - "address": "lax1ta2rxrqs4tdwfrvlhqps8msa5l2hshysy06yvl" - }, - { - "private_key": "25b32bb917b14c685e2b8a7a70864895e175650eebaa6d2392dc24c2c0a9fa57", - "address": "lax1dxawmuf9fjcgnde5qstye5arr8u4crqy9kmraa" - }, - { - "private_key": "549b8533859221bc29996e47ce94adcd00100ed16ec495b1d263de51a9cb4907", - "address": "lax1dm2qyhpdw8tny5gtg4lag4jkmhtheqygsumcr3" - }, - { - "private_key": "93a577b73a780800d6b7e0ca5badf281e239e1827120f2dccefd00b48a0d1567", - "address": "lax1llq5khjv3t3gdzay4c9nadl42cyfparx6x2sq4" - }, - { - "private_key": "144e4fa8523d857968a01a923b571e563e95c5af41ef1a89b78c35e9ceb827b5", - "address": "lax1ccchfyn4g5y96a04pq2w8chkltn9mr8mp9a9cl" - }, - { - "private_key": "6c0b125df02f04351be67f0ca6cb6d85d99014f7d707831c1e2c4f2b5f4ff859", - "address": "lax1evk3fnfrulp8j7dutyk7jpak7g48yeu9th9e57" - }, - { - "private_key": "02aeabf2d68c534e833f456446c46ef3efbb7857ec913f17bc6896831e6a32f4", - "address": "lax144hsz56qes9075thvcnw6j0sdayqvwwguqyq72" - }, - { - "private_key": "9c03d07e133499632b4767d94a0c1763a8b42e9b461e5fbeb6652b5db319819c", - "address": "lax1xc2vduphj3zgptshhzxff5fqgda7xfvlu5xehd" - }, - { - "private_key": "db676c70d6d4f8a8491e05def0b2ca3bb53153c3c8cf738e2303ec9f49ee705c", - "address": "lax1p3wlgfkzmsk97fvpfrh9cjvezz9waz9rrjwwsq" - }, - { - "private_key": "07b19da6fe2e09ecffb0e746748bc5111daee01880eb6625fe470dbfe5571c07", - "address": "lax1gqu2punc7kedyf0aljsv70scqj8lyfr8gp4ze7" - }, - { - "private_key": "af99830bae45dd032c103537862409d1aabeb6bb381113d10100dca1f86c984e", - "address": "lax1w93708vqyjavakww68753lvg3ennmhhejstdcl" - }, - { - "private_key": "107ad9cf9e64d1a9b9baf8cd5329b64974f27fd5aa205c9109e5a6d8937bd557", - "address": "lax17s2sts45ldwwfynlmvernwjxdwykkdtlu24zns" - }, - { - "private_key": "f8ee81ecbf10f5ddeb85c7a27c05c1d3f401de8244073044dad4795caebedb10", - "address": "lax1askx73w9t3ckvp5hg5jpdqnhxv85le3caefttn" - }, - { - "private_key": "6a839aba62d095d1bf1678f6a2c8f494d588549a644f87f070c59e4ac6bf295b", - "address": "lax1y35uk4qg4qsutumddlkuuya87avypuzguhgrle" - }, - { - "private_key": "ae7e89c82e72444a99501b489c91953e2d5af875be0bbf35537da0980284e775", - "address": "lax1tht8y84wtpcvmt8a6nxzhnxnm2jkhjnqv6fctr" - }, - { - "private_key": "a7024664ee92ab4c568a70829d47b4a8a9f1b7ac4de81da35fadb4ea9e832634", - "address": "lax1xf9t3nmr5rkhw768u36tmkfjwc0z0jky6ypd9w" - }, - { - "private_key": "451a0c3712d6b9c7f8fcd833dd1b7d7a5fd5a61960d9e2c38d7a5cdd8cfababf", - "address": "lax1t72ztw508gg2rsvhf7cz8252s6t8wykcuy4sz9" - }, - { - "private_key": "00db0a37f00d5bda52dcc81f107aee3048169a85cdb88e68874b3581462122c3", - "address": "lax1fecrmt6mh40rlxdnhh2e6zrhqk6jjpluegctap" - }, - { - "private_key": "b8975cfd51edd6dc873aa123705b97fb53e7195cfb4644e5b30f2e7a2b65c182", - "address": "lax1av0zsgeyzytfvh0und9y2ys77emnzmxu9lxcfu" - }, - { - "private_key": "b9107963d1d48ef158f4ce4bcd3ef6cf5984ad029368fddc5543cdf039d364cb", - "address": "lax1ysuza3ycufmtluqs0caeeqx6lxl6w947gulqd7" - }, - { - "private_key": "c5c539495ee75d52a7a0603405e34f89b1fc128e3e8ebbd630ca5032a921f467", - "address": "lax1dfgudna68dkuw7pnk0zx59dlyqz28fwvfmkl9e" - }, - { - "private_key": "29fa9ea7f4969e5e18156a54a1d6cfcffe223d843b584d8b29f818bcfb2aaf28", - "address": "lax10yjwum28k6ym5kun8uxhpxvyrj9jrtcuc4tycl" - }, - { - "private_key": "70a42e0e9a6b0a350bd84413f9930f934c28028dfe8d2ee04f003b27f7ba3cdc", - "address": "lax1c6vaf5ccnzm42xepczjq2p6uvhqgxz8k0nhjgn" - }, - { - "private_key": "707cce700d61cd98a4d7e98b609d0efa290cf8126a6f5669c83a7537701e1f00", - "address": "lax12yk0ev2dju5jnqa5e57swfvp3pcmte4qralr6p" - }, - { - "private_key": "53a79230b0340bda24454a5070dcaf693ec7eea5ff28783145892500846cda49", - "address": "lax1ta4jh2u9v5jaew3hqjzm7fp80276a3hwz9epj6" - }, - { - "private_key": "90de95d64c1be080a963cf5df729f7677109537f54a36489a58c48519c2da3ec", - "address": "lax13rfz2vyz66x4z9exyhdpk4lvk5j9d7uxrk28u9" - }, - { - "private_key": "2e0f4fe076c731ffc994a5c91886d552c542d727cefeefc3c8438cd27231af8f", - "address": "lax17chdtw3f2x87cgpqtdxrpuntf8azjs9eq2fja8" - }, - { - "private_key": "395ca351081d4a5be9c07aaa35542ed1fbf4976587ad2010ca4434d4a3e87290", - "address": "lax18d7artpmyx3fnfjt9h3m9947tjfck5xkmdafdm" - }, - { - "private_key": "84026401ab90ddf0e42df2aab7748332751194f61a709b39ce218c4388e88f89", - "address": "lax1aah5sxj9se2hku4nm5q25twrxjq9j7jfjq2j20" - }, - { - "private_key": "de7e3ad0d4fb351cbc8b5940d980a29415869cdfecdd2e224129321b2d344472", - "address": "lax129ys740rhtwcv5f0y60uy7u6p6pwl6sta7rz87" - }, - { - "private_key": "5869faea96628ea207a15e83d718108df3563a5d89b95bd869c1de9ae1e4e909", - "address": "lax1sh6wegqculg9uj7va3xx8hvp76wawyxrn98dnw" - }, - { - "private_key": "12b3742b28ded795d141e2e1f08196912a0c15b237a3d1b444a5d80d76cc9f3a", - "address": "lax10vau7s4rlkyulk9q82fvst006dsgtxl0gxl0ux" - }, - { - "private_key": "3da1016029bfc2b08d2bed99b6dc0325a3c09b1d244fc354e933040f3d285791", - "address": "lax1gawj73hvxy3c929jh2p8ufmr4x4zqhv9ydjthe" - }, - { - "private_key": "d8de441ae5d8a63b03de338983c00fadd777ec269cc960bb13db9a486faffa2b", - "address": "lax1pm6vkw24vz932ua6hu77r484v4y7ljtskenwpn" - }, - { - "private_key": "308922759c013a2f03885442b6217830cfc28dff09a5918e7aee56825e5774a8", - "address": "lax1mqasyyumnkcmwnkxcxs44j0hl8qgvfxdsm2x3h" - }, - { - "private_key": "9f42dbff57498ef7b00c6253ca6a3423696e70e0af9918233bdbab954f9f6b09", - "address": "lax1ktsw63expxttrk5g3uaexjhxqtngkc7wwce9n5" - }, - { - "private_key": "248ab0c3aedad924a5a625aa4dccda5adc17c1081e8879239be2ad36d338805d", - "address": "lax17kz0yn2mpudsv7g7f623uuk8mjwg3zl0amhzc6" - }, - { - "private_key": "fa82f965cd5eda56df8b082e93be6ae4e90370d9e5a72fee99a08371e9a7327f", - "address": "lax170s78qslwkq8ndmerd7xhjn0h24qln2urnu2ef" - }, - { - "private_key": "656b1f7c9ead63e281e8418406eb4c3069e7f2e1facb2c5fd27bdaf418b2df7c", - "address": "lax1er08k0m8mf3cwkdxszcyc0krhj27hnydnrqpj2" - }, - { - "private_key": "191aec34471afca84ebe0777a0da341c446466d89ad7bc0df419c553771977c7", - "address": "lax10znwnte7y0gcu04rme499hahlvvssqvmdjz24l" - }, - { - "private_key": "5db26ebae65e129a6df1007aba918894ef46416dbdfa8f682daa71f6c6a60767", - "address": "lax1jnykfvy757f83mnu3d5ye57dz3aqungy3xgejy" - }, - { - "private_key": "ef5cade184313bbbacbb5ca6605f660eb1c37db0754e20108d3b87eef5f121c6", - "address": "lax1rs780pxh38uww059524x7derrsc6s48amd3z0r" - }, - { - "private_key": "7677d5d408bf2b665e19b1b3b3ca758f68bb13325f0bfae7bfc97bdb9784100d", - "address": "lax1dcceqcmvel7a24fsq4y8f36ukkwvgf23977kyd" - }, - { - "private_key": "aff5c2acf8980bec9986a887b695e2b980fdde39f2a892ce44e546067461c793", - "address": "lax1f76j3vpp0e843vvjsq9gj29rkew0860l9c5pzu" - }, - { - "private_key": "a9705fed1ae40bf57984198bbd94f698a1a3db4e7d8c6bfa5c1eaa468d97b997", - "address": "lax1wkq69zs74a6zck4gx97r6fu0cax9d3ngtaas5r" - }, - { - "private_key": "e81781bc4f9be66befba0040e54fc5c7efe00dbb4c9340b0981653d148ef7805", - "address": "lax1xrmlmtrdsq084z7nvgaqv3anc6p9fskcy4mk8j" - }, - { - "private_key": "2d87d355f4efec5a25a2d34ab29a3d8045e636840d823102fee365986cf2eceb", - "address": "lax17tmgnande3gx4f3xqu643kjad8qv96lqf9fn6j" - }, - { - "private_key": "e1ed83315e049e6354de88ffd7409066b6394e0125c69dcdf58ac87e66ab115d", - "address": "lax1pdxgwhvesj2ha9wehdlywy0a9axwnnvm3mxg8r" - }, - { - "private_key": "9117bc1b5d86804369fe151130f5d076c7c7b8e153d5b908ce0fb4b5de0f367d", - "address": "lax1wwhk40mxsn4kstrmd4cm0g0g43kx8gp0ux4r89" - }, - { - "private_key": "34be94505e923cb5ccbbee1809cbb50cd53bce9a2322a766b67350f368ce577a", - "address": "lax1g9xpshfway36c6qg7a5afd786pvs5lksjhn8qr" - }, - { - "private_key": "8f5d7898c5cca46c71d80e27df60b9d91dbe22d92d7ceb64af25ff18f7148c5d", - "address": "lax1nwl0lh3s9nnmfu6exhwt3glwqwsfjn5d8aj820" - }, - { - "private_key": "717b22728854f2e721291cdac21e65b7b8e0a4c10b5e848cb08ab3e64aa4f0d4", - "address": "lax1wkrnpc5hvc238r04hn8zc4352y527szvht43c6" - }, - { - "private_key": "9f655d62f4918ff20a471d408fe393fbd154aaadaecbfe0ededf2092a866388d", - "address": "lax145mrlsmaw4g9pr227j45sch7cgsgsw5z7mgry0" - }, - { - "private_key": "f041d25b0ad535b57c1cfd3b4bdad1a029f2d4d2b40ec2726fa5c69ef9eb953a", - "address": "lax1fgls6svp6cdmzdrlyvrqjqymlh9q7euf55jaf3" - }, - { - "private_key": "8825f8a41d4ed10e971ada91d7bf50ba3115c6a177a7d2fd1bee906e703a0923", - "address": "lax1yhzrg5yn6gpz6nmx00rxejt8ggs27cd6f8hm77" - }, - { - "private_key": "768e9bd2a6930c8faebafc9c52f5f78903f34cd18b670c3e2f2323070cc07859", - "address": "lax1mrj9vq9tkzpypnnys9ldfhz880g2zmuvdmj2xm" - }, - { - "private_key": "5ae4bf6afa0170f030a7880b846fbb29212904a8078c03c5ccfba2aa2fe2a720", - "address": "lax148ru26s74jwhzxukurkdqds0unrrf6sqzq45u7" - }, - { - "private_key": "c306f5c23da1e308b33912cabecc49bdc466ebdbdee611c62ea5688603e11b98", - "address": "lax1u60fna7mt6mwgd2j7xlcp3s4czxdcgkq7562gp" - }, - { - "private_key": "c5b8a48725a4d3efd8b46ba46c0762b08bf653be6ddb8360a74e3e7806146d46", - "address": "lax18wr8p8wdgzlc2uxfsgfy59p2dq8mgukm9jk7zr" - }, - { - "private_key": "57bead389e2f6075dffa87bc9b2cddb1c8bd4e16336f0ad2cca842a7664b8f38", - "address": "lax1vxhx3r7kd69aspqxdsmp0xtwdhwfypdp998pth" - }, - { - "private_key": "4d2d938242709f23a64abf7b8528c4264a66b4a4064c56e3ea7053496b9f9e41", - "address": "lax1ajk55tvxfg9wjkkq0l5zzm0apcpkq4ta0gnhxu" - }, - { - "private_key": "f7a52053e3c3d3229b3833e27934c234ede6b50898d0931b650d383fc3ed7d39", - "address": "lax1ru3y9903ldjp0ellh0s52n905ddyk532t5qynj" - }, - { - "private_key": "f93ca52753583f4e726a8482653617479b6b8695c75e1028bcd1987805ca1bfd", - "address": "lax1kwn956fwdhv26x54my3a6yylr0wh3s5u2w8cfn" - }, - { - "private_key": "28d5e9c56a628b99e07a28ea00bde7d728370e7404bdbcd46db06768c67e624e", - "address": "lax18v2ymfxjktkp0vlhr6fuquey5xp236tgwfxrsk" - }, - { - "private_key": "e5c1583721523fa593371fc57f11052868921f0b9419503690a4bab20e29a8fe", - "address": "lax1e7e6al2q3gt56vj7sarzwdtc7s9x0asvd8ys68" - }, - { - "private_key": "525d3806b290c424d788b706c7303d53d7b5a6839cb72315e638553fbbec2ae9", - "address": "lax1sh93lhaxp97ulgqrhcp49wkduz5vj555mt88cx" - }, - { - "private_key": "78d0605fa6900e083f6135604defec9b82a2a3d6c3e310f1f5860afa0dbedea6", - "address": "lax1kd2jq8hag7vgknkz36ncwug7ayxzvuh98ns99y" - }, - { - "private_key": "9441caba25c446cb2b0e015a78a9476aa843bbe69ce3fe9f53355c00339afa36", - "address": "lax19lrgpd8cqt75vw47vkga7l6y9nsmkphjgy8x0j" - }, - { - "private_key": "e75fd1f1c88267b60fd42ade123412cf9c26d17dc083a712463236552cab75a9", - "address": "lax1n2jv6qawdr9frazmp4r024ky5kwp0g57h3r7d9" - }, - { - "private_key": "27f7ed29c1794645a478e584fc9656d076623beac89d982d6c1a4ba9e9a0713c", - "address": "lax1pc99jehh7z0xnxzle7nhtl0z4tpcftsscjttzl" - }, - { - "private_key": "53d121363df6cb1ab6167b060f7898ca28963ab09b5a33b9919e8e8239bedddc", - "address": "lax1pd0lqmgw9ad2ykcqgvp2vft9pklzlj8wjdnrlk" - }, - { - "private_key": "9fa7b64cf78fe41ca1c5d5154087a2eef6d1baa25f9334f542a3919be3036eb4", - "address": "lax19xmwguh0sx5dl3yzvq7993cv58pmmft34cmp64" - }, - { - "private_key": "faf2bf8fc8a4218ff7f9c96557eccc99bdb9362d700b15f6c864e6dbe457ad16", - "address": "lax13pnvj94gs205e0wwl8gj8xvvs99ndu98zvzz55" - }, - { - "private_key": "fb820c11355e0b2ce981be6ea8f3481d25316ed7fad74dfcc8df179a7305c9a5", - "address": "lax192wz6f4ywl52ny0x59kadf8elwuwv7k0lg3a29" - }, - { - "private_key": "dd639df87333960a1718fde34868d7fab3ddbd1927ba52599eefaffd02da2df2", - "address": "lax10dvukl2uzqv7xd34mrukrw7njl7yd00wu92pqm" - }, - { - "private_key": "6eb6d3397a3c94318a7f0170bd26319bed4398f7e51a6b52fbaa167cc09debaa", - "address": "lax1e09f6plyaslxfhtsjdwngxzyds0pppwj84l9j0" - }, - { - "private_key": "fc51d58686688d338330da495ab63ef0aef544e591a38b367edb1866aeac4b98", - "address": "lax1spgr9tye8a6y45mzvyhrxukcgjattfgy6826xp" - }, - { - "private_key": "02f600dc31a743cbea1fab7be72aa64b7ea2fac369239a642fdf797f1d540843", - "address": "lax1pryxpefp0kmkry6yzt8tvwvelde42xpzy440yv" - }, - { - "private_key": "3ca0e770d6ae1a333c3998d5c37073fe6b5843cb6edfda76e4b809e47d0c88d1", - "address": "lax1psxrxmzxv7rg0hmw92ly3qt0lum8re83vfhzt0" - }, - { - "private_key": "1a4dd2a3f0571dd2b7d3d9c18a9d1836a653fdecfb327d6f36ba0edb9236a551", - "address": "lax1ge7j4ytsqe42fqacs9kt2mx2y8j4ewxc80f354" - }, - { - "private_key": "834ab2cca07d803d5389804c27e8538c96f5539d9af9125b860abee694999638", - "address": "lax1drhll6m2krgak2njxynn9s6wpd6seyxkfzq0cp" - }, - { - "private_key": "035297edb51cd16e654f2dedc8eb7532fca069367c1d00b2589eb35268aae778", - "address": "lax17jfqyggv4k687e5xzkttu5w3aav79de93xsuwa" - }, - { - "private_key": "52d69d1acda8743b17f238530ff0b3c0be95ba6f16608d6bc8ff58647c029c26", - "address": "lax1cwjwp30ar0ec0lp0l6dklny6hg5tgnkz0uup46" - }, - { - "private_key": "0c8c9e525f48f6f52fc8ad1aa2c21962d52b94dabe6aa0bf52aebfe02ae7f6a6", - "address": "lax1ga2y46dahsfneh8hg7qw4y0emt76ypraryu7z0" - }, - { - "private_key": "14b5f6d0a75765289a4fe5ee30e144c14d7fb2bca3487deff547911de40950e1", - "address": "lax1p92vehe76vkgdndajkkw5uu7etmfkp4e0lwsgq" - }, - { - "private_key": "3d17b533fd427153e0c2efd31ba2ca2c03e36d55f004939a0d4c20b92bb1db59", - "address": "lax1ndmaturfsklykkkcjv9n2tvtxcnlll79xkpa84" - }, - { - "private_key": "6608c9354196228817dca05ea3a566182254da6f1d8baf3f7f2676c5213c6f83", - "address": "lax1mahjtflgf42yh7ygr8hdpwq8qjsa9409zzanj4" - }, - { - "private_key": "cbbfc6cd1412390461073c6d8a36a97afb589736e96aedea230cd75365134e0f", - "address": "lax17r4952cz0h5f72ck7dt9gydfn69c64mkvn7a4n" - }, - { - "private_key": "27a6d6c7169c11780c0c539413b1e042a9fc1fcea5e6678d3e316d44a6b85922", - "address": "lax1j6yhsd2uvwmrmck5l37npekff9t8kjqqp2qn3c" - }, - { - "private_key": "ab8e52302ddc35ef9f21eac339bcc6b37cd8515716e0eb170bd5b092903b0318", - "address": "lax1tnre7ege4d9facydlj5nh29du8yekzjknewk7e" - }, - { - "private_key": "51a3d02a0625d494719ace26a67a8ac79056c8742e054cf52a3fad579d5469a7", - "address": "lax1ny6su3nw2jztwaq7q5akjg6x64jqnekdmz2zvc" - }, - { - "private_key": "68616441baed4619262a4c387cc87fe8d791f86e5c2ff5b07d961831ef3b7a83", - "address": "lax1eadcawmugqjwuua7lnf89h7zarj258w8hmm3ds" - }, - { - "private_key": "a3e59e45d1c443feea5634ce865289ba6f86e462064fb7a585664c376cef9e62", - "address": "lax1xrvrhyphpguhcheu0gyv8m72g5w3s4jukcvf7e" - }, - { - "private_key": "a85c0f82e950e258fc4ec60934f1d1fbcd6b506b7349a0e64a566063a8445536", - "address": "lax147sdc3ljj59xzt8yqajaknp3pl7xn4y2t80umd" - }, - { - "private_key": "98ccfc1c2306d6dd6d5bf85dc3adac81efbc45ad7a7723c7ad22904b2144317e", - "address": "lax180zvhjyreunscjnrjhzdk02z6f8lmcy7n4lzc7" - }, - { - "private_key": "6283650d2eacbfefceec80948bbfc93ab5845ad7ed3e887f210560ef12b9c19c", - "address": "lax1h5u2nsq0pltlgc6karwnkz0q5shk64egfhr028" - }, - { - "private_key": "9ae6f3942d824b2956ce052afca6b60ddd3e1f546e0f83bc5da5b5fb52fd2b4c", - "address": "lax1k5pp5nem7k7jj95v4msscdtakdgx4fnh45gskm" - }, - { - "private_key": "a86d1568303614e2e9545f9d7bfe4019b259500e453a9d6039574d8edbba6824", - "address": "lax1zae533qv7kqxx77hkrg4xd386297wzeu2pg44u" - }, - { - "private_key": "0b0e7592be20894b74ac44e9c572651d1c6880a4120c842532d6ac3e75b7c69c", - "address": "lax1yt23xrjgx7dph3f9rcksyvzulhjy97er2fny73" - }, - { - "private_key": "af4d702db3f6356cb21972348447ab6f6bcdbc5405f16b0f78855778d479cf5e", - "address": "lax1tjgqxcyz6zhnalrj96cruqcw4ap2ea82dujhj8" - }, - { - "private_key": "fd0ac39d2b851ea63319c92f2f5c3ce1bd353e5f57ccd65b4c8cfa234cdb5319", - "address": "lax19y5ukwkd2ev4p5cu6s9fddcs6g3jx7lrtwdvgy" - }, - { - "private_key": "33b0841536006d57942536534a4ed40673cf343ef1ecf0271662e60b963f5878", - "address": "lax1gulydkmxm5v76sa7fwpkjjm7cmd736d3lcd3qf" - }, - { - "private_key": "cd6bf595ae7e10a4844d759b64df44dcdb49e9715f04be02935f0e89e11869ce", - "address": "lax1dxk2qm4tpk586sjjxwqy0jzsue48mj0vl0ge0h" - }, - { - "private_key": "81fcf7b0795f4f0f2839ad16de6ef5b9fdc17d63efcbafa1c632cfcc13a7fd63", - "address": "lax1hkatv38hfxekl95recp6nq4a6wn3t86lmhdc9t" - }, - { - "private_key": "c015432114231036bb8ecc709644b2abcea46399fe2ad1a7dd33515c165a3a6c", - "address": "lax135gc5k84wp4ltuqgvlq59zd69enuqht0klffh3" - }, - { - "private_key": "5efa8163964bafadf3c67da8665c30f20c70315685303ff9697910c6a30638f0", - "address": "lax13a38fjzkupyym4c4f44g73frell850y3fxy4n3" - }, - { - "private_key": "f8a7558c36270cf6ec490e8390625195c1e33c9aa4c89121b0743292a96647b6", - "address": "lax1x9lpk4s4e243uxfevuacn32pdkcvj9s57wyhfu" - }, - { - "private_key": "2ed7d2216d7acecc6e22ded340acfb1635283074e1296f4344dcb53c63c303f3", - "address": "lax1lnv7602nvzfcqkawgzrfe3uzskqwssvls7eyzn" - }, - { - "private_key": "3324be336de89d0a4b9dd8a73d41667d83adc79c583926efa68e68bd58b81435", - "address": "lax1rg55pmt9fa5l6cwzc00duu3uc9symy783nwwlj" - }, - { - "private_key": "2aa4c5a88ed6a1779ad3f0c80e5f9f6f552599cd6c0ca56a73f91802f9aec5b8", - "address": "lax17xt9zs8f9r84gsr3n20j2zxr9vv38aj5z9puyh" - }, - { - "private_key": "41c40ced3bcf82866e27c70c78da5191c16b867fcaa2e7c15ac1a7cb56caf58b", - "address": "lax1gl0wtzp8e4dzwc85hgz3mna3n9s4lpd06vea3u" - }, - { - "private_key": "6b3a34e333a2b483b8d40d9353127d67ff3d514d2c9bd74c06cb4d3da4430e63", - "address": "lax1dhkps5vhc24mw3r77rm9ehfm453arxfgellg6x" - }, - { - "private_key": "ae9d4bc06c5337beb1ae1f261f53b99394f1443313de33e59fec28d16d1e8eee", - "address": "lax1qefptxn4jal85q4k7ga2f0nj8p2kqyegx3q3l4" - }, - { - "private_key": "81cca28933371912c90b6fa09a0aff3cc64af3ec5568a7f323585f63db678303", - "address": "lax1s2yt7fr4rh5tmug2nnycxwdndgensly4fq4npn" - }, - { - "private_key": "be1c236e4d4466cd5d9cfac140c70755c569c8dd7e08014ee21484f4b155bd5a", - "address": "lax1qlwfx0l0zqj03haax8snhn9puqc54ev7h667pa" - }, - { - "private_key": "836a15369e6caa3adadefb77459460a0385bc690d08a12480051139940194950", - "address": "lax1ztrj0nxpyzukcd8s2uh9vrquemyu7sdxpdc4jp" - }, - { - "private_key": "733d081d4e27ed7563c75e01673664d5041a4a716f4a2660cb0c83bc13fccf98", - "address": "lax1vzspf5mpz3w9x3axluw36qu36nh0lxxqmma54e" - }, - { - "private_key": "77bd8a9a14b3d81f2efa3918ab1a474c4f209e51de38edd1c7e9b33d7f1659aa", - "address": "lax1qk2xr7lkwlluneqymw28xs8qw7xf586cj53kpx" - }, - { - "private_key": "f260aa933444b73f0b8e2e25aefd60156a58f0cb18981e4573cac8fbdea70bcf", - "address": "lax1qee80k87vtrtsqmlde5htvk7fr8egsdph4fyl3" - }, - { - "private_key": "bc6110ee8ac304b491081b6e478815473ae88bb3dd52072b8f09b973204df9f9", - "address": "lax147hh09memc820z28ljeztapakvpscw582hdx4x" - }, - { - "private_key": "1081f65421e46a59303e28781baa6998166d584515fd76740b6de3d566d56883", - "address": "lax1wk9warhr73yxu74vrgakecy5xm0qqj7t2p7wn4" - }, - { - "private_key": "c9d3b5d8385999836a7a80a952c59a0938928105aa01bf8cfa00a0c4e72fe78f", - "address": "lax1rxnpqeg63gt4q7m22uq4jrmfveqjd5hjs2u95e" - }, - { - "private_key": "e9dee4c7b15df3e03ab570021749cd3b7a09d303ff122e4074d4ce296541412c", - "address": "lax1382sglaryr38kagnxghcprwy46stk52hgj65z5" - }, - { - "private_key": "cd25e69ba5c24e89352c7801c0743598f77608dcd51b76268028ccd7a1855cf2", - "address": "lax1mteke2qmun9ju7mz8twmu37d7mw9pc32jadkz7" - }, - { - "private_key": "c258b033c063313cbcd27c99606c5669c4acc6b48d2476274e781d6fcf249e39", - "address": "lax1qe688z5z8lddynw27tqdal7aeg5cy68etr5uat" - }, - { - "private_key": "c94f97d3e3c6387aa34629703000cb2b542e45d52f350c4d6a5810683ee45b8d", - "address": "lax16lhxchrcz63k8vxvudvk9ymzvc0ge0rqpg0k2a" - }, - { - "private_key": "1d2b82ab7fdbf0974bc3b7dafef45e35ea679420189dc9195e1ef3a3745c9272", - "address": "lax145zg6fudkmdm0sr2wcgmn97nkycmsj2hs8vvf5" - }, - { - "private_key": "2b1995c324120ed73ca46d2d9e6df2a94087fa7217501960fc2973c60de4e05f", - "address": "lax19yhh8hlj945gl65fu70fh9p7gfjzs9ksp0gagz" - }, - { - "private_key": "c4d6ea39dd3d41f3693d4100d8c310b75f9e4cb94b7eed2bf0a1c0beaaeb504e", - "address": "lax1sy8l7eukvdl6udswrktljvteyxheq53qfwtgtv" - }, - { - "private_key": "5d64ac4adcb7bb65879762e5097c686cd2896bdbf072739b589103250f8a88ff", - "address": "lax1kjlcs4js44tgnfhsknmvmq7neyuj53dz2ez0at" - }, - { - "private_key": "819f64cfca333b3d84812ad9dcc040167fda247c369ed424220b9a0d278ff1e7", - "address": "lax17r0sh4h4mefak6tc4jx86u60sd8l9qcfgyf2zc" - }, - { - "private_key": "9331d5dc02f96f3edd642098f018d0ac22ed05a33cb4e73f5d5b4b9bd0315a37", - "address": "lax12t5n5ccsck58ru2jpfu9xjzldv93w094uclal2" - }, - { - "private_key": "49a89c1bc618fa9107d0677b244c8b053855e54296976c8af621a71b7e4a12c8", - "address": "lax1c9c8yg5579x2aypszc92ghuarghavrw2m8k9gg" - }, - { - "private_key": "932c29470aa15e9188cd77717860e3c421cc83bcfd9584b9e7737709fa60cd05", - "address": "lax1h0st52at4fuysx4fp5wm6detc4m77alsvcc96y" - }, - { - "private_key": "8d1be7bcf7d80afc02514bcac2aec1d981c8d892b67896d37f2344bf05f02d7d", - "address": "lax18s20yptd8tjq92z550yjehp8qm2za88xacg4fq" - }, - { - "private_key": "e4dbe730055931660e47919544937ed2d28325e6de072d820f1302a0db1a9334", - "address": "lax1ged2m3ztwu953e733zhttglrchn5cumsrc8ww5" - }, - { - "private_key": "4c923202e2e8ca576171e2a166e907794807b9096d88505edb51eeee8960b4a1", - "address": "lax186z6mk4xq5fjzmfdxfuemuu2kkyas2gxay4cu5" - }, - { - "private_key": "9f3498f64132c6e937943859befe1ca4fccd622d19d7df06a39eb85770b53d41", - "address": "lax1etv3raufz5rnxu5l0pg5wsfc569m8wdargjxax" - }, - { - "private_key": "077b8cc828fb73db9e06e9e7427d2ca74811ee69453b72bea3cf107aaea84c5f", - "address": "lax137gjmy4tm4f5hzccapd3wdwxk3nvhqq3fas06s" - }, - { - "private_key": "864eeba8e57e2128ffe5d1ee5e1a5f2441f354780de04aa7a1c30dea4fecf9c6", - "address": "lax189htpwftzfgav88fxk002mvnlzxzwwjwghfsde" - }, - { - "private_key": "20623ad25a8e2695f238d276f60cafacc18b930e52001c8754104a0027751cbf", - "address": "lax16m4ekmk5clnpg57pxhwge9x4ppgffrh64nr8wt" - }, - { - "private_key": "15aa076c276ed195048b273e6c8eb6c9178f6fd20d7fe069e16b0914440c1765", - "address": "lax1xahacanv7ck4j2q97cyuuw3z94cxr05gv8w2sw" - }, - { - "private_key": "37180714f7a0656a0bf39082a5dd0af1c97eae92ef6b419c951fc3e249de1ae1", - "address": "lax1wagr79mq6hmwrk0asdnjdmj28c78ysx674zakr" - }, - { - "private_key": "186b7094a848bac810ff17156d5e6c2669b779a4e3c149f5306b7ab1048c3dc6", - "address": "lax1d0funxrycsp5uxfv3rqpveluenryfn0n0h3azr" - }, - { - "private_key": "897ea0fb55662ff160f48c8f90392da4b11b2029db05910301aea4c2bc19042a", - "address": "lax1arq6j4k0z8sts6nsfdch4lgrmtnkupcgpqjnae" - }, - { - "private_key": "b2ba75466ac67c3ddc0d7621a88d065b770352d214951fc285f7075e6da0beb8", - "address": "lax1557dvya4p86pxdqjmug84gsgn53stcr6gv9ngl" - }, - { - "private_key": "e447ff8ef54fbe3e604e19052043d93f60e7d4ff6f5d6e7083141d92f9d81157", - "address": "lax1kertwzqqvvq666tft2mlauw8hw46tzv624c6q0" - }, - { - "private_key": "67893952b328481f8b180b7bea7b97b3ec3acf7df459264a76711571740829a7", - "address": "lax1phzxwlyyumd946jagycljjq0mu90ylu8h92r8n" - }, - { - "private_key": "3cde0724c584c21adf5010414ef5975b0aa0828338d37c01dd5c4831c7ca3f63", - "address": "lax1lp4vc4hr9lk20qaswxvnkrw74ve4mf04fa68fw" - }, - { - "private_key": "4fd75e2345b8b567d45e8cce52d41fbc8eac292776ecf45d64fdf50ea57a21c5", - "address": "lax159n2a8a9ktrnsw8jajp9rmp6ld8tnm6zx4cfpm" - }, - { - "private_key": "07a7859c4f0de1c11030920f51512358f7aab28d215920098455941ba6ed5558", - "address": "lax15r8wz0xlzqrw5kqarn0t8t2rc7zfjhdjfjj83v" - }, - { - "private_key": "7e0a3002707d342895f4356fcd6af436821c9654632fef85abb2871972e642cb", - "address": "lax15f2nkfp4t8qj9mcu9wxd9yhtw4sa3uavu52fem" - }, - { - "private_key": "9da228b21da42985bd381334d992a81a6da12760d0b1aca7081af5c006fedd75", - "address": "lax17fuwz9cvf00udsdyj7lcvmttjzt9zj03hpp0h5" - }, - { - "private_key": "dcff03557d26fb40daec22ff4c4255ddcd2e8160b891df1a5f0a09eead267deb", - "address": "lax1yzvu8r6qgw8z2c24cy9egg8ma5d7gteh0amljf" - }, - { - "private_key": "04498133dc91f0ac08073a8cfd9c9e20f23d501f5b00d4e9f274e5c5b68733a4", - "address": "lax1jwcc5alhseh6qqxadge36cqxpn4xf5der00kdw" - }, - { - "private_key": "9b27450d88ee6604855c6a9fe3ed7f23003249cbf29c60293233674dbdd8588c", - "address": "lax1u8297f6q4rcplgxj58tzjxwz7vfmh0x6cddkss" - }, - { - "private_key": "ee652d9a1578a28f018c96b01e6f87d57a5794eba441ae42135da116bf6a8473", - "address": "lax13gxcnlvtec8vna3280494gdqqacf59hkyqsgkz" - }, - { - "private_key": "f8ce9bda8e6e2d43fe7e53a4374c82857bcb66cb8a39adeb1ac0792c19727982", - "address": "lax1myr2dm8ee227spjl2znqjwt6a4rgjhjelvkqna" - }, - { - "private_key": "202443ccc98e5037a64c40f805abe4632430bdf49ed489c63c23bb227152cea1", - "address": "lax1yryatjjxgltcdjyzq098hnkps5su0krf7lxq9r" - }, - { - "private_key": "905e76a029a051158ac76ab1911e312c7903c826f75ecfafa6aad17cfb55c0f1", - "address": "lax1my5urpaah5rxuc6ksw8t87w6vtnntdyed2sq6n" - }, - { - "private_key": "1c37622e0ba9660b009043c3b3980c3d7f67de32bdb7044913b70ce013c29a76", - "address": "lax18e27rsfztqxu7e0hdgu2fkelkewq98edc9y04s" - }, - { - "private_key": "e6255f7aeae7847898b1f09bd911d12492f52f2cab9be379a23be1ce4d528ae1", - "address": "lax1k4qetu7cyxjr2fxk4sglz57th7sewcwvfteha3" - }, - { - "private_key": "06a7472d179ff1cc8229f6c5d4171f87198021c14e7cfccdefec2218f76f591e", - "address": "lax1d5uwyr2tm646e53a27xzs9x0mw9hlr8gm9nv9k" - }, - { - "private_key": "2c59ba18127ece54fc0b12646d9f461978fe9f6da4a0f3d0616fd4ac45287143", - "address": "lax1d86wcj3u30gjsr4gnrzlgkq0kk5nwegfj0gctg" - }, - { - "private_key": "9402448a11be8ed5c09bafdd896ecf84a3c5feb9ee62e71175519ce7c636b23e", - "address": "lax1qgflqmq7pqymrw6229ypcmmrc7xwksyk8lpp8r" - }, - { - "private_key": "969fbb35be6bd186d91f51a91bf665ec089d1624727ea8f43019b15fe68785bf", - "address": "lax1rmzyzkxkxlxldr6qsdr64rsnkle6myu4n2ylqd" - }, - { - "private_key": "e9cc5bc5d3a7666045f4f7db5564da669b7efabe97bf2a4491d2ab720bf2347e", - "address": "lax1dahjuy6x3yzh8d4lafg9nca6mls07k2xms2yel" - }, - { - "private_key": "59b936c73174cea2ea32f2932bab033cd8cf151aa021d7714bc227ef29378a7d", - "address": "lax17l4s20mrvmrdstmzqe4ypaaftdh9p7t68mavfy" - }, - { - "private_key": "c0e3fa3a53004e87f81ef396938c86c902aa84e56b7d9dc14f36d8ec5a538f5a", - "address": "lax1f9f4v85kj4fe9j3u3x89qtgslf0w5w5v8pqlvv" - }, - { - "private_key": "784afb56a4f8a44dd10b7c19252bc175f05b99d5103bff0bc3e01586b0004d3b", - "address": "lax1tf3c3ygv6w6500ng2hyvvx2stulv582zf9jqn5" - }, - { - "private_key": "94afbad9b275f58a371a1002df8566b707e24cd37295f43f469fd1fba8e44f97", - "address": "lax1ncsde4hm9awwzyarz9n7v4f0qma0tl78r4hac4" - }, - { - "private_key": "ca38e0fe2016de4e3e365d6679e09392aae1f682a0fcc54d4d49ad13be19406e", - "address": "lax14h4xnj7gtftyqdqyx4hxuzyzrpxauhzcppkvpa" - }, - { - "private_key": "f312d7872efb3c8b2ebd72dfb2203df4fa197af4f054f12ec1d5cef0e2231f06", - "address": "lax124h90nf7juq35gul0t5t9zt33l4ddnr2nk5ym6" - }, - { - "private_key": "ec2dd000fa7dddf45a31d606fd5fc1d8d3eae00b6855b8e2a8a75a7a7eecdb49", - "address": "lax1d39m9utws5pxgpalxm9l7mvfq9r823h5hvwanj" - }, - { - "private_key": "cb0dad5b740fcf7f407d806db74a11568038f31d0646581a7d3a87e6bc9693c6", - "address": "lax12cq56fdkddw0qgsjafu236pxvadklapy32234n" - }, - { - "private_key": "218bc862d315fbfed17fe3c5911ad018a0cbd196c77c8d61db32ad55824b84e6", - "address": "lax10lpgtd0c6yra2zzqdtcasx8k2pr3mvrq98q8jg" - }, - { - "private_key": "cba2994598bfcab7e43f0d2e849ec68992deb165c5fcc5371dcac13924b3d2df", - "address": "lax12ls4lq829j95nqtrjsa99cnjx2krsr25cfsvnq" - }, - { - "private_key": "e7bde5fc3d4cee9029d6104c41a8078079962607bfe48fa2187f7438b90fb850", - "address": "lax15nvv3u82z4pvpqku8ufthnrkuy8xf05q7zvcfr" - }, - { - "private_key": "8ca44e4241f51559ca7509f0d707973028b8605806a5bbea993f6b0b2a2f5c52", - "address": "lax1m27nc2vzc87t98smvy8w9z70sqa6ucya42mzd9" - }, - { - "private_key": "49633a559f05264fddd7149a02c5e084dc923958d782e4cd6580e8159ba73da6", - "address": "lax1mesuut84qx4jmr2pkd98085jzmhk2txlttcf8m" - }, - { - "private_key": "39efd991a4abc5448c8eebc54502ea5ff6cbf035ea30c827b9fa595ff7934a26", - "address": "lax12pgr3e5cw54wtezv4g4q3znv0wts5vneg4lj7s" - }, - { - "private_key": "532a89ce9209c13882570336b0dfbb7f9241668e7f1d4893a52a24d98e4b4e07", - "address": "lax1sye0f7kqlw90pcusuc6npdfxn3m0ksah7u7epf" - }, - { - "private_key": "f2560470fc926601c325cd1f24c3132b7345570b37b7f9516a2a2c1595dcf1af", - "address": "lax1maqhcmvdpfzf69cjnrmd8zl4fht5jxe5s027x3" - }, - { - "private_key": "a3b6208fc62b0c437b58b99d756e25f1a32a12c286e09abb2939118e609ad448", - "address": "lax1w2ryutw8p99gmc3rr8hhal4wfq8ch9qfuyth4z" - }, - { - "private_key": "2d19097a10b83c523d891278e5fc73a5034279d117341482f44d416ac3741e61", - "address": "lax16np6rrscaz3rx4hfv8wljw94x8hhcjy2szk7jk" - }, - { - "private_key": "10a6fab3d75277d359ede3bd1879952e072d01aa814e6774611e8e53f0ac96fe", - "address": "lax1tf92xz32ng2sxkrmxfxlmx5zjcs9lyg6xlfep4" - }, - { - "private_key": "80ef7e9049e5fe92f4437c071567a496dd741d46fc45a67defcb1e4f92a64769", - "address": "lax1a3jg454az99tjs6wkplaxfayqjsxtl8llrfjyn" - }, - { - "private_key": "c7518a383492a3fe69e7086da6af6b2deb2813ef8ea7dfcf56a39aef93a09b39", - "address": "lax17zmwglrm2ygydq28r86guvn7r3q2qs56kau5ak" - }, - { - "private_key": "82d9c93afdaef295c4401acfc74d5cfe683aca73554c7fbf75f3632627ec5fc8", - "address": "lax1309yf2xv84vh6tchmaxhsf0n38c5ngkxc7gn8w" - }, - { - "private_key": "fcd0e56fae14c5b839e578d957142e9f2aa32cc2e5d72e8aedeac966984ba4d6", - "address": "lax18klycy03z9hcmrudkt7reqtzxs5m9rnuh77n2f" - }, - { - "private_key": "b83f39386c3bc44ba13b8896ec867713991b2a8b56fa8fe25b68769023f2e877", - "address": "lax1wlntm5vgtkdwxq0n67md3mts90dte996k2glv7" - }, - { - "private_key": "d4962dfc44d31fff7bdbbdb1f0813b3fb0d1ab8a5ba32e5bb7b9d4b3cdd9743b", - "address": "lax1a40jaqecnkwj92jydvwdgdfhfxtgrmfcxel0xl" - }, - { - "private_key": "e5b34440d97b34048ba750af4ab85964574ee880bde1a45df665edd77b88e309", - "address": "lax1ywv70hy0cxuzjfaptqdnngmpqt29r2jkd7lpyp" - }, - { - "private_key": "d56c7a5e7e8a271c977868275a2ff21dd1f1fc6f645bc6127e680ee6eade794c", - "address": "lax1vv08pm6dee2dcvtzl8yx5c33ve43y8ejd3f2tq" - }, - { - "private_key": "cc4556ef83bc104640509114d42b6ddea3c5cca3c3295aead457b6b8f23731dc", - "address": "lax1pt7dzsgs25chzp2kd3yv799fa5s35gr4md85cj" - }, - { - "private_key": "97ccd7d77d1423d6a7d216bfce0b83900b6a3d3e88fe1ba7c7100f0f6ca641bb", - "address": "lax1stmgazpfgye5f5xzaa659at7lh4zuv2rs6t8ca" - }, - { - "private_key": "e959b887e77657a67c0d462d43124dc58ead83a3fc073792cf7534981c67d37a", - "address": "lax1hwe8a9v0w9y0027endjcg6srd3udlhftlqrzu8" - }, - { - "private_key": "cfca8623a0b59780b3c907e00f4ef6b1b209fdf0d98c76978c90c7c46b98ad93", - "address": "lax1tx3u0nv7dn2tz369jyqx5xu9x0350056fdtu3r" - }, - { - "private_key": "25cf9e0c6270287149b4859d960898b7a54d748102b643f81a141911cf2e71c9", - "address": "lax18wtv6kt7hf7zlp2vsk6a70ev686mrhw5gf0fln" - }, - { - "private_key": "ab04abe7ead3fb07a9bc9ddc78db2c7a339bf51cab2aaa0d5ea14d29b85c5288", - "address": "lax17cg45ss2vg3j7j9faf8t9ghtw8z0mx5vk8ralq" - }, - { - "private_key": "75084b5e3fe7abe97ed0b003131aae65d115032fd32f8fe93d14d04ed1610c4e", - "address": "lax1xann6gwqx2et2spzkvq0upzh2fwdglcdzdk46m" - }, - { - "private_key": "5346a2c1c4e38b24bbdeac4e2400eb70de459254e8068c89266a223f770f3e38", - "address": "lax1dzckt7235sa9xvcntddflxf5h4yuqx80gv38yp" - }, - { - "private_key": "3a7895a7ccf79857ba2b4083d4896a43992c551cb6c947ec76241502fd8e08be", - "address": "lax1fh2yfhlry9ecgm6tf35mp7j32kdruckpv76w4a" - }, - { - "private_key": "7c552342d1718bcf625e7dcb8f11760fc70186136778833a0b5d535734ae1580", - "address": "lax1rchm0y4rtv9ykezl5u34axkpx5xekzj7cqxj9j" - }, - { - "private_key": "d75c376b6ee43b5795b351d7483209278cf14c4abf683228c133b665c6cc5c7c", - "address": "lax16jk3nu6l8xvlpfm68z53c52zja3j4y9tavs54n" - }, - { - "private_key": "a59d9093c463a949b0627803d545022fb60a2f4ad9dd7a8e3d0d62cf1c781f32", - "address": "lax1387mpvxyslj2sl3k668y9hcn269z39xvyq0m0h" - }, - { - "private_key": "b11b1d48e700458f3b6d3eec3e8d2c5eece4d2a2677170013cfc1e478a1cc015", - "address": "lax1nuwnfenkqzzg4sd7jwywfuml42hv73alzs838t" - }, - { - "private_key": "6d7af05994b75ebd0bab74c8a1ce73bc861417bfe894922045579d69e96e913b", - "address": "lax1z743zdfzgvc20edsde8w5vls43d9t3apqevpf5" - }, - { - "private_key": "da1c33666de621ef0e4a3a85b907b690ae17ca25882898ec06db206c06c1e916", - "address": "lax1pm70fhh8t3l45jynye8eam7ur2tcm42dertc9p" - }, - { - "private_key": "226a22c6e8150d49189862a48180c92937c3d60bc982245939c6c3ba1d52a200", - "address": "lax145ny02dx6y7966ga9xrqws2jcxpddlygjmwnkm" - }, - { - "private_key": "1d569c6ba7b39bfdf1e51e4b93cb116f9de7c6fa89a7ee8be757351e6a570e2a", - "address": "lax1j9j9fm36pn8304y39nf3rhqzyjp9yhz5m4ve5f" - }, - { - "private_key": "44ce0ea73e3ecdd1b23f2cee2ba9ac2dd25964390b9b565247f7f0b136a871f4", - "address": "lax1kran9vmvdrl5hl700xcxdcgspe2tvplucn2ls9" - }, - { - "private_key": "cd8cbe422c61af9733ccf6015086e32bde7bf4d0e8153822936c875c3e42c6a2", - "address": "lax1k7l4nay5dcvurka04ddgc9rkcxp4fuucnn6v3s" - }, - { - "private_key": "c35913b684ee40d5a152d613f428950fe612f5375d1a2a9de44cad3178588094", - "address": "lax1azqkdarltw533xq7fd0zvwdqh44ppaxkwdmrg0" - }, - { - "private_key": "a47585284c9def807a88306ee6062d9c38b2e77e23c7dedfffacaadaff9e5060", - "address": "lax13h78mlwg5lrtwrmmrn20wyrpq5fnpdphnkzvdl" - }, - { - "private_key": "8724a43239955c32f8577d80adb100a62b6be480bbcb511c709f9598bbcb30e3", - "address": "lax18yvaax5xkz2vl3fwsn2ydtvqsu4tuxeah0qr86" - }, - { - "private_key": "c3cf9d9cbb57ab4472aa7bfb4889104962f36450520ae1be7e4b5518baeb9842", - "address": "lax18gm366xm5ctt0udqgthg68jt95x3p9v7k5vez6" - }, - { - "private_key": "0ae3792dc47ea70a90fff6469751d3642962d485be48a1fd5eb7eae9eb831e16", - "address": "lax1yffuv6ehqc3ahhq8s05fhak7pmc4f2clky7xrd" - }, - { - "private_key": "a1986cf38aab72bc2138a1ac8fd16ef8ecdf226a70c41e1255d1ce6c3b76e595", - "address": "lax176353x6dqu39uqjyz0vp8z4nvcms8c42vwhjxy" - }, - { - "private_key": "ac74b8e0387dafe5356272d41aca0745c585d2ebf119322badc5fc478c361004", - "address": "lax15rq52dlej6hg36gvzr6kus53c6xykxu2a55dp5" - }, - { - "private_key": "5589e60a95ac939cf36b9d65f924c0c5f4cc1d64d5c81adde42a07faa1c0299c", - "address": "lax12mmlwt2kpwaymmsjsuty2phjqvcvnn8sx40a09" - }, - { - "private_key": "dd9b2905501f20b66c0285c0a31ca354a33bfe54824b6cade014ab518fb869bb", - "address": "lax1ezrvrmy00gwx05530rzmgffx4d4kqd9wrfpsdc" - }, - { - "private_key": "af56a3eb76df0c6e345bc9a73c03bb2b6b6a77794aab84bf2d287d05d93e9359", - "address": "lax154k54su82lwa7q8yzsjdgkn56c0efp73w0wd72" - }, - { - "private_key": "8dc53005fcf3ec40c188a004e22ff52425be757e811ba581da459e9a39945826", - "address": "lax139tzukezkpv05tkam6fhku8sj4v5dq28ay82ur" - }, - { - "private_key": "1e3498a24d272ec310a7336e09d29056ed64a0efb441cd842c1da0cb6b3b7799", - "address": "lax10jfzvehau9rjad5tpyrwnhl7nr7qsqf80dlmfc" - }, - { - "private_key": "4ab80c5abf18dfd22134431048565a798a2458c037c697fdf7b58a3eccb0b207", - "address": "lax1pq0n2382uy8nfnsha77cntxawvqy3xunjtu9x6" - }, - { - "private_key": "7105ea3818f3046bde3740e2e31cfd1ae91acf8d32801ccc6e0d8e400d32cd75", - "address": "lax1ukqacxtam76kgx2rtf6y33f0ell9jyu2d786x2" - }, - { - "private_key": "d40721d4553afcc03645c716807a1fc3b82970524d364c9fef3930c8e8d5f31a", - "address": "lax1k3tj43hel60yry7anckk5pxjsh7vnr59jw7z08" - }, - { - "private_key": "24154995e501e2ade07100b61bb453750d043b40fb422a1b8e81543f229c531a", - "address": "lax1gtzdvmkgtptd25my7jrdnhrtmjeqh03x7n3qvv" - }, - { - "private_key": "6b08550f201d59addb5d9d934a3cf008d0781102626b2ee423e2344a94d37290", - "address": "lax1ex65mxmnlnkv9fsk29483gh0x6gerzgdsfz8nf" - }, - { - "private_key": "b21916b38156795d35c5e4aaa839ee761fdc16c05cc11d6c322b8921af888614", - "address": "lax17ln2d62fwc04n5eczhzrmayy5zc9fja3d0dyqf" - }, - { - "private_key": "7768f925564a9d70c8c8dc479d9b2f2d3c2e53815b422c61e02bf53fef9c6467", - "address": "lax19qdvq3ls87hxy7gxgtwce0yj3zkw8tzuc5gpme" - }, - { - "private_key": "889a9b16824532fbb3263f32f37cb283b8871ae9e09fcd626a87563df09d79a3", - "address": "lax1vgl6hsr04zsnnw9jvp8xvvdt5nu7futvywqxhg" - }, - { - "private_key": "b93de48f9a27ff236da493e275701982c5b361a72803b2c38a35503527206feb", - "address": "lax1yysdd7vgc3v6v99ldgn0zp237902c40s5ltc6r" - }, - { - "private_key": "75b0508f1cad408607c74b746bb8f7019422821286a4ed2442bee8311c9e59dd", - "address": "lax1k6tgws2ujrhvrcjam98a2weg3g7lyyvzmd3qst" - }, - { - "private_key": "42f669d5e9d9d61e7dbac7552b11931381bc98d3e9d7d81832d55054c2a1abff", - "address": "lax1y56ppfdc38hv3exdy9vvq2fffhjssuh5mxjvae" - }, - { - "private_key": "bd26b7ce10cdfe14ce392131b32975e2c1ac23ab843e04c0e6e8855cc8462d88", - "address": "lax1ml02p4nv5n50vzkqssuzvrt3ck609q7mj2agj4" - }, - { - "private_key": "dc321761f2ad2108a87bebb2ae8804a57744314551d24b5b2344cf03cdb712fe", - "address": "lax12jera9qdeedxelsp9cxjfpqvn4tpfemjypyz55" - }, - { - "private_key": "4671e5e8527a18c8947bae1f647a72199cf1fd4ad002604f18b5a21310b58b42", - "address": "lax1cmtmfe3g9d2d34jpfa95k399fe68h5agu4p9gl" - }, - { - "private_key": "f3b7ffd667e7188e6cf42e0d9c1c18f2114110d6e4948db6ee3886f787851fb8", - "address": "lax1u6fqtpmwmglu4lcsd23vge52h6ydfrrvcjdxh0" - }, - { - "private_key": "30ea96aa316e63ee839e07e5c1613cea385fc42f30909fdfbee816dc9df2dd90", - "address": "lax16hzs3p80rr0wv0sc89ley9y7mxpzkdjxgqwchx" - }, - { - "private_key": "14a4a4307d0005935ccf65dd9c11c415b0dc5420109f0055283f267d2b0e6400", - "address": "lax1ewwtytj2np4h6lceyecjhzsfzu5fwkxgn499pl" - }, - { - "private_key": "f8154b8c53d02ea4933003db92d19e0d69af98895070b78f7d4037583dbd0af5", - "address": "lax17mjjrle79kzywhpzca9wrcgv3w02qzwml7la8j" - }, - { - "private_key": "fafe31d03008182b020c45e88e06cba294bf514dea0830225e7f2d832c102be6", - "address": "lax1j77pmj9k2jga75hywpngmg5wmsl5c9ynqlc5v5" - }, - { - "private_key": "f611cdf38790a97a80a5083d56a2f30d8431a0ec3e8f846e3c93ded52f3fc45c", - "address": "lax1j475e63yv0dnuw2recywyrqsum0hfye45ncstk" - }, - { - "private_key": "46814e6af1a1cc6e056f51d6338facd994fb07264ee5f892259138719163449f", - "address": "lax1c4lz906yttjm9hl4a3gn35s566uhd2scc5mu74" - }, - { - "private_key": "5afe4473cdd3700492475e1f72cebe570871794c781d4e4e35328f388112706d", - "address": "lax1r48fa50q4xa5n6kyjd79usm5zuwe4wz0v9np49" - }, - { - "private_key": "6eb3aa1f56ccacfa7af83ce5adbd97652fa6be3cc795086c782270478e6f36e1", - "address": "lax1m4c52nge9y89l9vf8glnphtkszprmga0n8wnn0" - }, - { - "private_key": "dd5ef539ce9cdd2ca46ab241a0de762339ef20decb7ad3c618f37f194081ac34", - "address": "lax1a24l7m69kfattret7sylcut3f08qr5v7x38qlj" - }, - { - "private_key": "b543a58a7fa7aea0453e6d15892d76a75530d49604ec75fed8b3546f52e5a5dc", - "address": "lax1fjlwrfgxjdpcv3qz325eurvgt254jlme8t49lm" - }, - { - "private_key": "16b3a7689b504ab38857456341b7a1b4fdeb564b935ef352ebaf6bb2c295b6ec", - "address": "lax1sefjanqdpzrkuqf0cjvgqgqedq2z3v7q65chr6" - }, - { - "private_key": "c66352e11d977c62af3955e3dfc812592aaca7763e5f9a8ca1fd041c7cbed110", - "address": "lax1j62779lwj78p67m0pqrqlhepshd5ww9uw8g8jy" - }, - { - "private_key": "182afda2545d7ee32012da371674bae87db201fca4b033ff6a96989c3273575b", - "address": "lax16lk0g9z55uxdutcaltjkl7k90vlmkg8rpzhycx" - }, - { - "private_key": "fc0e449da00ff88b07464bcf05c7e4d27d294bf35b7f7f8ce12f55e604f2b436", - "address": "lax12k4zvzqq5hmgl7nr06kx46xwxw00ncqc9jhk9p" - }, - { - "private_key": "175286a35919677e244730eaece3eebf0c08906bba6a94e555b1f382ad642990", - "address": "lax1pnm3mmep8m2pkc43q6h6zffvv3llsyesr5mw8l" - }, - { - "private_key": "0a9d3af5178024d3d7a599899a587cebc293c616631f71748acc68bef1dbda21", - "address": "lax1qj8w2775j465p0tgesa87d2rnumqxmnu7f78gu" - }, - { - "private_key": "15d494ea7b13de8866019a6a9ae88e93b7864bfb4b985a40341269b5c5777b50", - "address": "lax1a0epatfqfj5f60r9mkds0f8u2ps476z597lm6d" - }, - { - "private_key": "11587751bc4bbf09fa3f555e67cd082385ae14e610745fd163835e7a5f62a07d", - "address": "lax10t29zxvpcjcfqh67n5hux2cdkhjhk0yaha0chq" - }, - { - "private_key": "a59f5d2735a57a0cd9c77a02f46f5ddf63d5e2c43b39f3b80ad72e140a130457", - "address": "lax18rftp9frcvnzgru8l68yhrufx665598ggdlf9t" - }, - { - "private_key": "04f07caafffc5f8fcd1ca1691b3444106d1d42847e71b15c351de175f9734121", - "address": "lax1rrva5hk46w2xnvc2439x3dw907j27gp2m9nr3j" - }, - { - "private_key": "7d9280530225e24474e14ea82e0e1a4fb0abde95d63326ff769722cd712836bb", - "address": "lax1hvpd9drce9cd0g0f8uy473hvpw8p0rwegw9y7c" - }, - { - "private_key": "5457f1b147447e6c494ef2d38b17d77dc45eab327a1c4cf2ea007ab50506294a", - "address": "lax1d2vat30lza47pmvn02rs7ah46uuuhpjfdjcpv9" - }, - { - "private_key": "5ee303169095adbe428a44537b2703526eaf90c96197b150ef78d41a7b52f650", - "address": "lax1wu3u5hy5wc89fsem0kzukcd8xam023h7ueagt3" - }, - { - "private_key": "2f8b3006fdddda317596d50a628b87020ff9995146a2ac2dec14bbf4d4fa3fd1", - "address": "lax1ddluy2we0jts0wh5zr7kl4ht2m739ur88t2008" - }, - { - "private_key": "a3f95a2a873c96829c3d9c1442f294a4028f0b09da87ce8f76fc27f91f09f8e2", - "address": "lax1f426arc2d523ggge4067jyajwlyeljkhz62xnh" - }, - { - "private_key": "09087c73c53c11ee1797e1a2c509486af9736e0ee7b0cbbe4a9f7ed35751b889", - "address": "lax189e7f7lc4qxh2pnu5kd4t5enhwamymw99g8lkt" - }, - { - "private_key": "d88c809ac29b3fdc7eecd84c97e847d41f3e13caeb12ee32e182a09041835879", - "address": "lax16uvc7mu49sk9uxhp062nctznmfhrl8deewaq8f" - }, - { - "private_key": "36ec7e3e395a92db5ca2329681b55e776c5d19f9f35cd06cbdd0821eb84744a7", - "address": "lax1a7qxwwqhfcndc9t90ge69jdd7xxvj2kryd3qy6" - }, - { - "private_key": "0e2ec5587e3752189e3ad7cc87bd88869561db2c770bcd202557ee0a74254b3f", - "address": "lax1kr45jqjuwhxtkdrg597msxst9zmua34cladh28" - }, - { - "private_key": "204e867affe35b6b872e9e91f12deb7e29df99b527917af13db2bd23acfe152d", - "address": "lax1ewmzd4afv4grceplx0ngcyxullqz3rt9u7lks5" - }, - { - "private_key": "1220a173ffec60b2109a6223536cbb0db7fc26e03f7a7ce931f28ab16ab87508", - "address": "lax1xag86ukndhas4a6y5n6lwhslzrfzlezjewmmhc" - }, - { - "private_key": "3284337d9cce4c4f900aece07bad13bfd2cdae40dd016390824807638937bbc2", - "address": "lax1gvvwhu8hmlcelpm86d0rzg5ja09se2temt92cq" - }, - { - "private_key": "3e3819cbc31014f4b0fb00dcea88eb6eea0d74e82ee9a3d4d91a4fef5dc622c8", - "address": "lax1m4dwmj8cz54h9ucffqr4s8h9nmtaw3ha2jxj2q" - }, - { - "private_key": "6be7274ec5fe71ddff2d0bb58358d6b085c2785dc5ba9300e5d4b5d04b6d7a72", - "address": "lax1kz34rvwt2r6fypey704hnln5vs9tdyyzwyhynm" - }, - { - "private_key": "b332a0ed87a89806c31f4e4cbe13817651e8c743899c5e5775ee88420f895c23", - "address": "lax15mglp8k3pmyk34m57t6zyrymn9tmtsu0jj8ggs" - }, - { - "private_key": "01737677a9f584df00371b5574ce4c1e43df689e7312173ab9e9f1f5795fdbd6", - "address": "lax1wqas70afp0hhvkg68f960fcy6euhgevynfukpp" - }, - { - "private_key": "9db928cf954425084cf2ce8da1bb94299d056d05474a1c68f2f3e04dc1c2e6c4", - "address": "lax1j3x4jrlp6awe0aqr6h2x2yr0p9la8qexqh7u22" - }, - { - "private_key": "65ebb65fb48da933fd998338c9b7d42cada992fe3d09be00d8e503d21d4be2a3", - "address": "lax1j379h2tvs3djeqrjp9emh3rfdn4hjhkt0wk005" - }, - { - "private_key": "66599300733eed722fe58aa50bd87b86a134253ef5f97299272a5f78d43663d9", - "address": "lax1auq5yacaesywams6h4grn3mf6a35cr939yx8gn" - }, - { - "private_key": "1450c20414e70d27ed092133bc2b51372edc041eed1bf4849f4a14c0cfa38847", - "address": "lax183vqjemndwwyum3q86xe8tnawnmw4xzskwddx2" - }, - { - "private_key": "57cf3be80faaa7ba5a59546b51a78840ff7296a49f20f4247d17809f00bcc3c8", - "address": "lax1sp94gj38vz8ek86f7e253704825l3l4rck45wk" - }, - { - "private_key": "a8ea004b4bae9b9d235280aa231d8911b905e9f0d381f717d54c9ae90587f969", - "address": "lax1q5cwajpl37g7cjcu8y09xqyv9hw5hxuz46kwfn" - }, - { - "private_key": "080fe52f32f13f4187ff162726f2e9698af03e390bdf6c441ee7ba4c533d0e4a", - "address": "lax1hted282ugrdey7g2rmt26vfx0r403kgj6ls8mm" - }, - { - "private_key": "9b1d436f26b9eb7b5508161b85847849b4d19ee997483b7fd5372ad45c3aa4e3", - "address": "lax14n2qpd424kpeazp9279dvka4fq0wvqdhp3e3d4" - }, - { - "private_key": "8523e8c892058dc943ae87a28181a051dec3041e42b5a7fefb3e6582c66f3c2a", - "address": "lax14pnaa0nd0u00czhylh758s4l3z7u3jctu63knt" - }, - { - "private_key": "fa3379f9a2e03ad8b2f38382d5024314a3731e4e3ea08d2c939d63fb94d2efe4", - "address": "lax1u7nlsk095j0ynflz6l9tg98tctugrcpdyyu4rf" - }, - { - "private_key": "6f1aed2f0c78b3c426425a770d9ef01c9060701cc900061f807dbb8e750e250a", - "address": "lax1lusldc0d24pj4u88sna43et0mkpqjcsr93kzke" - }, - { - "private_key": "3b2ddbb56a27cd7f409d18a1783a3ad879b728c7429e07fc1ff62ddbf75b2a9d", - "address": "lax1cp92yuu8f9z9ua5l8r7hx2mkrryaamjhjw6tns" - }, - { - "private_key": "a226102491ef8782fac75436b4f30ab49b470a554b7232a925791189cd85db29", - "address": "lax1g5h9dwc9xf79wah9hd93uy4xdr35ua2k9k8kl5" - }, - { - "private_key": "e4e7aac606e591b0b61b196c43dc14740ce61366c23a97609e2d756ff529803f", - "address": "lax1lhemfhp97fpr426ta06d0xjt7nsj6hz9vg3axx" - }, - { - "private_key": "77c628b525ad18655f1b53f86043c38ab4f5d9efd536894616712c0a93686c1f", - "address": "lax1gkzdvr8cszqpfp3e8m96p8ga6z7f3ut8k2te9r" - }, - { - "private_key": "5f1c7be1112024ab4901e3cd77dada6b94031a7d2362277b13d1c2cb494b2bc5", - "address": "lax1sgdpsywgnhaulau0h6c3xg0wqhwsz3u0qj78mz" - }, - { - "private_key": "e4fa8a152768adc0d602e1877b78d6e3b225b6e619a1d3e64bbec89095f96b9d", - "address": "lax1t078axx5dyr4f3dqhf6vrhrmkehv0pv6f7w8kx" - }, - { - "private_key": "aebb3ec17d42f3e648b9c8fd8c52e43fc2781b05515dd370a7225ce92be91557", - "address": "lax15wy0za429ksplr6pnw6mpkh26f7m5xaszlgheu" - }, - { - "private_key": "802477769a71328ac13c0351c1d508af60d296f601383dcdd781997f5b1e3fcc", - "address": "lax1hm4zj4zzj7p4a90tauvec7e2mxn52ar7vqqfrt" - }, - { - "private_key": "e38889d0207d830f8dcccd02a99ef13336353d6fc526dfe6812d7a6543327def", - "address": "lax1f40c4crwj2lxqxp3lrn7y5gz5papn7fgfm68gm" - }, - { - "private_key": "1766056b2ad46c30efd53c3e5a6ef16f510980ab8fe668c9c6c4f22b51725639", - "address": "lax1j2de4kg5p9jqycdmtrhtnwtyknu86kr3vx2lnp" - }, - { - "private_key": "3081227058e64280b10ab657991002bd412432305226b5d9b81ca26fadcf8d1b", - "address": "lax1nsruztz0aq653jhu99ufgwm09gtglvnuggap55" - }, - { - "private_key": "ff166fcbf7a2e7af0b6afd24c3b45f3b08ee1fc62f643a62d2dc0b5d7ac569e1", - "address": "lax194htnas85qt0a28r5tvystysuezuzezsts0te4" - }, - { - "private_key": "19a5b05494e2108187ebb607331243c34bceed57e05abc0522a1cb4068eddaf7", - "address": "lax1ga3dm0u8a6na6wtggukhwpue0k704v56l0pdu5" - }, - { - "private_key": "bb92c8c6b3a272a11c23a4d9a0913c28ad1305ae391541e40005f99e568899e9", - "address": "lax1xcyy36u4h2tqnhprzk4k7qe4a4h72kzutt9wey" - }, - { - "private_key": "49aa1549c3b084911d669968090d8eed5c82d7434494ac46f5a25e8da0e1e49f", - "address": "lax1ut05m32jrhwumgpz5v5hcvtyhhw3k3y89vygvg" - }, - { - "private_key": "ba586ed61285ac8ad7418706fabee3b4ba1752d814de6b7fe44ed627559aae74", - "address": "lax1rp4rvmgqwnr07p3f6zj2fqx2mxgcfmzny29u5m" - }, - { - "private_key": "caebbd8e72dd586c42002a5a6f6412bdd52b330a42a1de683002daa59f6904de", - "address": "lax1qrwm3hyvf8twg7f38uwyhn3qhpu7q3jymvmyla" - }, - { - "private_key": "f56c2976789b71be4aec3c7c9cd03336fc867a61680e4e092aa9f750c2d2a5f8", - "address": "lax1ttlurpae603xgdkmynczl60zsqfrgxsa63d0cz" - }, - { - "private_key": "d49e817056519779d3153498236a7083d9c646e2d718709ce5ba5169f8914fdf", - "address": "lax1rndnwxw36smnvd8fshhrvc0hdgrjg63l50pfkc" - }, - { - "private_key": "fff8f6d244ca0f4a5a03828e0d48f602f8e9490d499898139121d081747c808f", - "address": "lax1ju6tcz3gp6vvel2lvmpywe424upd3lkzpkx4rr" - }, - { - "private_key": "95000f4a400f88f9a76d5f1ff87d159a298cca2a19854c83257e03628fd36de4", - "address": "lax1cnrrktz8ldr3xj79zlhl74pk2z72chkrtammns" - }, - { - "private_key": "f28aaee52e5826f502150e03712565349861c505d40ffd482ea66785ba9833d9", - "address": "lax1xknuwpkr99a9lmkxem77qtq6wf345znzreq4d4" - }, - { - "private_key": "51e2322992c5e2fb1aaf7a33fefda8ba3e543f1dc941ac2409f66eefc84092a8", - "address": "lax1tj2nuu30phfqv0xrd76950uszusk6wu0yawh5k" - }, - { - "private_key": "383fb707c2d6095a51922c17f145589495b5b4b2dcff8f0c0ddeadc4da3ddd07", - "address": "lax18w89x88lzqpx6a9kkxrvvvteevdwr0x9rc78nf" - }, - { - "private_key": "9e1fd41e8eb56d792b583f4c636a275fb93bf395489791ef3c2b418fd6a9a894", - "address": "lax15mhy4dhzuxv5ytsz69tj2rfmqxzhuynlwt82l8" - }, - { - "private_key": "a255ac856bc263870b74cdec7fa2a62b39987d89b036e7ee2afd617e213e46ee", - "address": "lax1mpmh42x56ccu06pfeq9wcstquk5fpp6hhkcvz7" - }, - { - "private_key": "93d4a0420cbf411cf6169c91084ce69a7edb700956a352927f104db8a9d3ca08", - "address": "lax1xzvzu0xa5gmacqlfr293c665qyef3k9tpnapfe" - }, - { - "private_key": "ea13aba0926800c176610280e41b8ab535cd15ec68c3930f836a60994f82982b", - "address": "lax15un57lgwvu6gcfjc0k8mh4d47q743s0cvam3cp" - }, - { - "private_key": "01b11bed285da40e0993d0103aa3c7452b2fc9dad2059e6154444c760f52b13b", - "address": "lax19nqragprkeqqq70u9pkaktqka9ygnzk8gk80j6" - }, - { - "private_key": "b389c52039ef3dace51bb6bc89a99510f4c5ecd93dd0f2ac3129a0e22c509ad2", - "address": "lax1qtkxu867mexxs0yz648np62jfguelww2mx7sg2" - }, - { - "private_key": "2497d25600f22d6b26ebc30249ac7551263f849809dac88ae695ca1a6759686e", - "address": "lax1d6pqujxeznzc9nzt8azupker5yu8cg264sr3rl" - }, - { - "private_key": "b844a8f4358d793edb61f4e092ef2497dbc5cfeba12251e52265b2c82d352b3c", - "address": "lax160mdf56gyc6975j03y687yykdt5yny6q55fcan" - }, - { - "private_key": "b40a54e3b5b358bf09e1dc38765a7a52763be6405c83b8496bbe2df3b8f56722", - "address": "lax13msc3asjrst48kpx8weaeuv6maps2zutscmm8l" - }, - { - "private_key": "433e1446f605da97846a5e3d9ba4032819b353699978e1974950c554181d1f60", - "address": "lax15skwmqd32nj8th0s35ezca80fmj2ajrwhux0ce" - }, - { - "private_key": "cc1ea90d663782f59ede6d8076e821cf6283403d942a14a1d82b57bee5cd6da5", - "address": "lax19lxnzccnc87w25kn239gq4n5ecfdr00lpvqmgs" - }, - { - "private_key": "d188281b0c33759ee7221198035931e5087422cc41644464c05cc2022cc1178e", - "address": "lax1lns690yjwr6rys0f7wnmjmym76h0m6sgjkdmm2" - }, - { - "private_key": "e510e6cf215ab4796f734cefb06c33219391f5078ec92a397d40d1d8aee90e4d", - "address": "lax148uckvnhnqw8rrzcce2d3ufwqxhej0ax7370q6" - }, - { - "private_key": "5061ba4316a771bc1b6e0ba80d3717760f21adb306d1649248f42c9773d96d5a", - "address": "lax1028gecfqxvqsdcdvqph8dld2eaf8qy4x8dzkgz" - }, - { - "private_key": "66599a7bc1f6c35da2e764e83b53be0f9a8270f1632fbf9d44df46e936c76865", - "address": "lax1ja6tnul3jzqlmrr5kama880tl66zp7jm856l8k" - }, - { - "private_key": "3e106308ab2443f71e729e191dfc7927647063ede32268c0a41074ef738afd24", - "address": "lax1vhp0pe6gzgj42c9xmqzmrawjv6ldpctrv37ugp" - }, - { - "private_key": "faee12e6f246b207992f9d9da789698e623c51991a2ce44230895f620a1ba7f5", - "address": "lax1nx2j58e0rac76z624j5hm63w7lmxqr09fgxwll" - }, - { - "private_key": "39c898853b085025111e58e16e2a1b8e6ca2c48522227134efdeeef20563f6b5", - "address": "lax18vfac7nmh2jzv4j2qt3ywv670fxewn8q5fjr49" - }, - { - "private_key": "e2eaeb204f8223879f85d98a7f5570f745bbae84673baaa6e6976f4b37b48aed", - "address": "lax1ymmvpwsfdzwdt0wq6w6qn8mcfvrvzm7vd2k9jp" - }, - { - "private_key": "88374556415fb23f5036044d29515b2a9fecd6ed7c78fa8ba4deab57adbe0ace", - "address": "lax1rf6u4hdv2yd8w62musk0knlcu7zvurmc7exql0" - }, - { - "private_key": "da0b307c16f874b0424ea89dd9e53d34bb6ca3e06bfd17d5421ae198ce1586ff", - "address": "lax125860ef2rxdf40x46a382me8nlhgm2cad4p396" - }, - { - "private_key": "47b23156cfe5e22605f5b2586076edaaf1a1add9c518c8d4ea01e4f594713f84", - "address": "lax1ffpvgj5v7tznzc8e22ldsej5jkjajrz44p6pec" - }, - { - "private_key": "7150a39191666c18fef1462d07317accd15cefbcf353fabd9e1a54432830e0b7", - "address": "lax1253krxv3mzs08nead7zdz4dv04t28gvtn4jnlg" - }, - { - "private_key": "032c6d75ec2f6b7f1280b351659bfd313add5255d6be07a49e96cd5ce75a8627", - "address": "lax1hafcffz4lw5rsdty4sjp6e7u6kauua2qgdx5vf" - }, - { - "private_key": "f0589826126338197dc33e330676897a8946c25390f93d7ba5cb9f936613755e", - "address": "lax1kk8fxzgsfh8gz053qj4mwvtyqsuuz7l0ksd9k6" - }, - { - "private_key": "861d3da2f2f90f14db2c2523bdbec793a29fb9c759907b401d7d13d00ae9be0e", - "address": "lax1ve0a6zmusa6k4l6gps4gstr3fl3g0k8xcjgk2c" - }, - { - "private_key": "b23928b14b50a03ed4566b285388d32d1b01f5cc8ddd9e859d52ea57b783f56c", - "address": "lax1hk5p32udzhzn2c98g2qmpy4faau48ntckqp5yz" - }, - { - "private_key": "8b0e48a1ad773f3e24c61b94c27a7db78f772da5c1e7cea9c8866d7ee4fdcb01", - "address": "lax1h22xy527ultwg0ddep9rpanhxt4ak5fylwd526" - }, - { - "private_key": "cef5a8df8710494c55aa0717de251e3d206dd9d5cea4837f7efa08de993ed3ed", - "address": "lax10l77dvshs24rwkf6s928pv45ztsal0r83399c4" - }, - { - "private_key": "548f526e743e5f5d3bd129d205783e0495f24d240c36ade5a42d98f0af0e6901", - "address": "lax1wxp54r4pdypwj98gmf095kzgftv4g8u8c9gf56" - }, - { - "private_key": "55fd94eacaa9b6f2063bbfbc8066f60293a630ca325f34b37261e6e929004e3f", - "address": "lax1jn6fd64ec9hldz039jp9mkjepk4hh8uwnqgfkn" - }, - { - "private_key": "f3af71b79628e6337f70de5fd1485dd4bd215a0706f4ee231e649943dcec5d61", - "address": "lax1ynf5cpf5pu3qqdzw3t8zmmxxczp24dypyq07cc" - }, - { - "private_key": "17bab6dee7379fe6a2f19cd23ed3b4ca02f9a939aadae8ba64b94501be067c99", - "address": "lax1e6y0gty0mkg93nk9ws72ewmks2mjd7yu9n8euu" - }, - { - "private_key": "a7fe3303ee51235354f28f009b32774f802f0f78b285518d5e4cd48aad061f03", - "address": "lax1sv8ap446t39astd7er4kluml0zdyahdklrx937" - }, - { - "private_key": "77430d0aa35135556601817a531c44065067caebfa35ee9a172fd0f165995598", - "address": "lax1ufnat0698eyeyv4l4r32452237hu80q0t56pf6" - }, - { - "private_key": "93a483b0b6761587227998419dea1f11538e594aa8b0c1667ae0cc9bbae6047a", - "address": "lax1lkcty0rzmg927qvlx6adera3r0mhlzzcuupuf3" - }, - { - "private_key": "1761b90cdf55fd5497705c505d75b34eac0ce5587229198a40122fa3f5042b3a", - "address": "lax1sdrykg28tydvtyswq7yvc8ngv3fssuplx8m2nf" - }, - { - "private_key": "62378d1afd20b5d5ce4b765256a175e140ef3ca01e8acb90c2d7e82c852e7a80", - "address": "lax1dw68hg40h4zvuvh4aqgwzqz0xsr2f7u4u8er42" - }, - { - "private_key": "9ebb49914111606f3ea4ca72c323b1e62d1bdb1c92217d68ef0973e28f84198b", - "address": "lax1yhtvm5vv9ega93up52237vjnvgflsp07w9awln" - }, - { - "private_key": "1b98998d1d9dfad859a8f87bfe740945ea0af625ba3451ddea10def33542f212", - "address": "lax1ec7zyss6qffaqgdyny7keme3lf5559lyqlszkk" - }, - { - "private_key": "342b19d8aee38374dcf24789caf8e23fc4cb076539198b5520ccf3280c4c413e", - "address": "lax1g8vr5quzklf3e8d886flp57xq08gn2zv46vf4j" - }, - { - "private_key": "3f750815a59f688dc3e284700c0a625656a5e94d57464d2c4002ee5f229a0452", - "address": "lax1xha3z037sy52g4lxf7guuzru8j5rmwtkx90tjt" - }, - { - "private_key": "9e3d44d052d3a32b5ce33ffc25ba42aa1025cab4bd690331f808e813d683a19f", - "address": "lax17fgwxnv0ackjgqgmp3gw90r03a45arwvd6um6c" - }, - { - "private_key": "53a6a09c3bbe6af8e6ed6521138b0c2aee1ad4659f1858ee5c88aa5d9add15a2", - "address": "lax1mnaaru3asfyrgna4j0hks0cr3l975r25et228e" - }, - { - "private_key": "084184f8f48b88818ca719c74fc64f2eab6c58b35e5228ce80b1243f069f5d34", - "address": "lax1ak24c09lsse0tsnrlf3h03m5729x3pft6uczxg" - }, - { - "private_key": "48279246a02b9836009d44ac199fb8045b65654a0e5a4db2d2ecd0360f3309e1", - "address": "lax1lqjpxzgrkgjy8dh4qs3eydt35n3zvtyggv729j" - }, - { - "private_key": "fcec6f03f5dfdea056a76e34e06b40cd6ebbdbd48ed7e04f46aab14d547c7c48", - "address": "lax1ncnq757qy4yna8ayfknn9mm8xsutw4f6fy4474" - }, - { - "private_key": "4af8a287763500e6817850fff8743710ed45dc0b08f02093421264a5a8d5a6bf", - "address": "lax1zf5ly9ael8u9qyz8k3y67x82nvl9g6qt59u3k6" - }, - { - "private_key": "a033bfc7957b5c7f2b04d924f7cc52f3b29e57cb8207113068071c0495929cdd", - "address": "lax1zlqe8qcju64dd20p70qv0h5ryhq3qxa0twdpt9" - }, - { - "private_key": "2e9ef8e6ddc9cf42308b0b1def8de4a13c6dc888be7e64293a008da015006fed", - "address": "lax1a6kqu4lw4h8ely6yydqrhlc0yvsj3w4tdff2ma" - }, - { - "private_key": "3a649e1bfb073f1c89a1b502d11261ef3bf4e6a3a559a3b6020f00ec97409b93", - "address": "lax12x3d040rkkt6dk2qag9zw7u23n0s7yjrt9a5vh" - }, - { - "private_key": "0d3aeb90ad2642fc704fb6d0b2e19bbd26077bcbe683bde84ed8e9e5c726b659", - "address": "lax1gexpgxk2f4q2d5xwnv70asfe7k9e3h43vdv5fc" - }, - { - "private_key": "c31e6297abf2bf669b8088c4027423273c64b670d31aa3ed9c3d7b8c22be2e32", - "address": "lax1gsplvzvtf3kh8qqa4hd2zvk6cqlnz6dgp05ckg" - }, - { - "private_key": "164fc684f0765a8c59223faff770738e0b4dc0ce37c0f63778794cfcd66bfc2f", - "address": "lax12ef324r4zaagugfns02g5elgvaxleuw4dw496d" - }, - { - "private_key": "4bcb94a7851a291d19ee01467b061d8642bb37ab1aa7b7a31f5344e6785fe81d", - "address": "lax140va9czw5n5392kn77t9u2emnr4e0na4nfctdx" - }, - { - "private_key": "96adacee1781177f17012b8163b33981f203d5c46827beb04fe23549437a6cc0", - "address": "lax1faz9jtyfleadqshcrdyjpehap8887rwlg53nq5" - }, - { - "private_key": "9c6947096d7492de22a2a2b7369c1ffc741a6b06964c4b0de96720bba476b6a5", - "address": "lax147d7gak33g8hdsn0k8z697yhc4la8rwmmlf8ee" - }, - { - "private_key": "61b33cdac69c48073aaf32b67347c2f40a4d004e0599db2b41c8480013690191", - "address": "lax1ualpcs72anf0ayy070rs39hgzu0jgnw4th54ku" - }, - { - "private_key": "315e86a41e0f0e873a93fa34ce94df32b9a58e2193d787fb2a1bd6f5ad63bc97", - "address": "lax146t7hmmd5428ld5nksqywxmnu777l4vxfysqyx" - }, - { - "private_key": "3621fdaff2adc5613bcf2cb4b33e34fa96f507a483e2060001bb127a66c4a78e", - "address": "lax1dpc32m4y4vv5j43auklkm5s3ejdze79aahwpyw" - }, - { - "private_key": "56cfab1473318f0c73b59faf6e24d8da0a4a14555e47c24be1fd78ec20542d5a", - "address": "lax1ycfmd869sgzfcjahdmvv23549l5e3yddm80x3k" - }, - { - "private_key": "14a8717d672e3ba18a23c708fc1c2aaabaaa0b6cf35c1ca4155fd7e047155058", - "address": "lax142dvf79zweu7nljt03nz0kred8vvlahgrc2gtz" - }, - { - "private_key": "2ea04e225f85a36edf77566cbd62324fd1840336d32a054412fb3e77fa807bb3", - "address": "lax1gjse62rr565xlkddc7743ty59hmvqz0hgvn2de" - }, - { - "private_key": "8cc5df116bee80c283a8c71d618052715c46c8120234859ca17fede1699911a7", - "address": "lax1fxy95pkatrerlhy9rwhxue28mhcq8svw9xafnq" - }, - { - "private_key": "1288ed8a312c632a5856075a83d4caa0d6fc056e20c1f303dcb685f8ee9213dd", - "address": "lax1se7l88cq98s8ly8fgz62ql5y2d6gk978r64ecc" - }, - { - "private_key": "486b40db6f07954e1af82f3571a446ca5c745e34d0d5c6d182f9ec1987cd9152", - "address": "lax1vp2vynw7yzk2tk63macj745ktfees3t7a5damp" - }, - { - "private_key": "7ef1c5c14684b0e3ea9bd1aac439b1be8dfcfe04279bb6246229c3ead78cd445", - "address": "lax14zcsuecn92y3f2mym04f95qv0aczh546wmfrvy" - }, - { - "private_key": "2fa34bc1c8566922e2f96889e4efa06c8e22d2e4f6c7ec6ff8cb4e63070435b7", - "address": "lax1g8uny8vggvs0smwsx9pl4f3txw7cwdfpmaw8qd" - }, - { - "private_key": "ecd806a5c8f11ad243e5cd93567bf9c79f6cae56998622c56b8cdd80338f6482", - "address": "lax1dmfkgq3cwu946nm532d3vz7fxreyrr4q96jpf5" - }, - { - "private_key": "7824491d872e90d69477463a96c41aec7c8a5c02d7580d03e52e3ddd46d0955a", - "address": "lax1rnqauyll2zdgdpp2yr8nfnclcxvnxw5uz5aw8t" - }, - { - "private_key": "58450b0bcb33157387162166ac2e428b85bdcad23144afc2818096273b125e38", - "address": "lax1fnpav7gprtzzp9lrcyqq7wzncpf4wfz0vfz3g4" - }, - { - "private_key": "c95c7e491e88ffe4da2c993f84fce67bae61c5a312057d103eb74347cae1bf91", - "address": "lax1cjd86f5mwr65rgrztfezudn7ssms7r3cg56pn9" - }, - { - "private_key": "453f8cc956494cef7508ee8755801135e068b33415f7b0348e8ed7be2f7727e5", - "address": "lax12f4mwluchyugcuw6we0l9ptx64mh0s3ss6th77" - }, - { - "private_key": "76aac7f836b6131ea1c9880d9cb4b01285c5552e077eaeab0b7633609504ff81", - "address": "lax13ycfjnwqjsn8v82sxler32rk2zhpk082e33gp5" - }, - { - "private_key": "79ec2ad9979fa486fa30d3a1ce4fb90a0d6d951464c741857ab5e19bcce1f2a8", - "address": "lax1hnvvgx00zfkht2pud7f9xltmv8uc0v5u7tjs3f" - }, - { - "private_key": "36c912c49b66e5aca795b04d76a0221504dc35b75f9af957395063f28a15e776", - "address": "lax18ppfswmpynavd2my0unslgm5wkrwjwwe03vphf" - }, - { - "private_key": "bbb073fbdbb75d3e6c1810f760cddced714a01a54186497f154c403949194e79", - "address": "lax1lka47mkwwf3t3nk6ta8jq3dj5luwxz4kehjuda" - }, - { - "private_key": "1d544eab7f79e8cfd6f545d28abad19ba1e3004c2f5c288107e0175877d4bad6", - "address": "lax1qxrxcx6tnxte29a2r43c3knn85ma02le3vxs8j" - }, - { - "private_key": "e7d09e2bbbbb14c57dfef34456d45bcabec21ff876afb8b8f066822dc2420bfa", - "address": "lax1q60pcnuplfrfp9pklktujtz6nmmggaqed70gx5" - }, - { - "private_key": "830151ec84ea5c94c03186ce56f14d39c1a383b8f587fee6e0882cc05562314d", - "address": "lax155eg9jz2qheu5eqqaesjnfr4v3cj0afh3g3jxz" - }, - { - "private_key": "f7fd3153701a73453bd4ab09ae640fb98a791936206bc0bff68fd2e4104aa8a4", - "address": "lax1gpkevkfaqlqzrc2430862xt0e2elmddllwv6af" - }, - { - "private_key": "3febfa657dea2e30f6e47e75c14e954cb47cafb75c8dafa8f17d07850960ea01", - "address": "lax1t6m3nzy8tc29auz50gwy8mkk4knj8mev4m3w6t" - }, - { - "private_key": "7b8af91172bf66e46e04e7b4bfba0dcf22c30d2404575041f79a4c8e9cd9eb3b", - "address": "lax10td2skc3f2wc0m39h0h0ftuer823f7ercw0csy" - }, - { - "private_key": "16a59e5a16733136b784a8b2d68b911347d590d9d65c6892110f0d90ea07f499", - "address": "lax1rhqy2hvkgp02q96tf4eunth0u0lxtthg9ncex3" - }, - { - "private_key": "0c78fa54f3046f1591a541afb067849ba28f694d90ce4763c646cf4b7bd3023e", - "address": "lax1p3elzp07y8lg5mjaqw4swptmr52uc672vmhy7q" - }, - { - "private_key": "b45012a6722de1374f1cc251946a496c4c7628f8be6f276a40d68e369e9bb639", - "address": "lax16h8gpu96r49nqlkqrlq44lukccn9dkdrnntcfc" - }, - { - "private_key": "cb3d394ca979e526cac73dd40772f16b0dae2669221ca0a8357b37f4c294038f", - "address": "lax1a67jpm39crqnehkcrlfwjw8ys6rf28m2d67fl5" - }, - { - "private_key": "0c5aee4191bfcc1ba37cfe522f59a1913250429d1f734901361185f9bbaad0cc", - "address": "lax19knzg5xlvffjnwzw658jw0763rj8d4el5ee25a" - }, - { - "private_key": "8aa16deda974c21ce32598eb9515d02446cf99687f7cb68476dd731711fe9cbc", - "address": "lax1vzrtrpramv3euhu0pkf0surqmfl0vvdpxm9qmf" - }, - { - "private_key": "3d1daae750eafe9659122f70be606fc3403348c821b6b606c8956acdf7f59218", - "address": "lax18c4dm8rz89prd0unsnzpqpmkuds09k5qg9hdha" - }, - { - "private_key": "f629ab04b8274ebe05622c5ee342888fec4dea1f9df6b0fb9864f81da5b5a80c", - "address": "lax1npe9hl2gsd5p5ys8etzzcww53mqzxqw7s459e9" - }, - { - "private_key": "f8a25b0376c6678faf74af367488bab0ace141f9f16c883b9b676f134c6404c9", - "address": "lax120vjz0r0xj5a7ckhzvslp0t4xsrdqrazl3a0jc" - }, - { - "private_key": "867203cbbb6ac633e8f246f699233bd2e01627302d14984dcdfa195072ccb67f", - "address": "lax14mtx3v4re8ag3anfxdlnmplt0mrxz6aqf533lj" - }, - { - "private_key": "c1b6fbeedecd3df0e25c82a0ac904ea98b1fabfb9c1429c30df3188d6e240c5a", - "address": "lax1tjn3khd5ak4a5h9wdt9audvwvskduua6d8lmrk" - }, - { - "private_key": "934ce529419515962bf9c1d10f300f70363725e951f97ba70ffbf157f34dfbc7", - "address": "lax18n5rq6q8ahhpxrngjuywa4ufq55dhmdeevlrup" - }, - { - "private_key": "9cce65211576d1b8a92b2f35db477ffaf9ff3b898deca37d7f49d3ee608ad14b", - "address": "lax1jz7vhced7hspyc9nmttt0720qty6srear8zuw8" - }, - { - "private_key": "05bce1a7293520285e98fedc7346e1237727544170f8bd7e45b5a332fd7c99a9", - "address": "lax12j8wkcahe8wk08kwxspaq6qywru947500yjzln" - }, - { - "private_key": "29d577787b267dab460f037598999176343a15e3efb75202d248a613a34e863c", - "address": "lax1j9vwjr7f2a34lvxzcen6fs4jey66lmg9d3rcjd" - }, - { - "private_key": "5c0a6d5f223f2645dc733587eed64ee8949075e89561675c968efd656ff99cdf", - "address": "lax1q44dt9u0lznkthu8p32hx0j4mr3gnhv7uzh0p0" - }, - { - "private_key": "efd3891f74ec6082077fee38897520e87336426b32cde324484cabc98de18aa5", - "address": "lax1dqpvpjzma82zf5q0psmh0lerncp2wrvxqydt3a" - }, - { - "private_key": "ec93088179de2e2db4672509875ac1b30e940f447799e325897b95fdfb307172", - "address": "lax1jazsagusnjsutw4ucuwcyu9wc73kmpax0ftuh8" - }, - { - "private_key": "095f71e0330f1ddb37a633984415fe7669b2d2ce3d92e3e95cb77a664c96dc93", - "address": "lax19aqrfdhv4ws5u3mz3v7wy5j5c02nmmmtnclt5c" - }, - { - "private_key": "7864527f0a95b90be36a40dc2069feb74aeedc919ab5c5a75b9c2acfbee40a76", - "address": "lax15yek5vczqsh9x8fgcj35trvd3l3m84cxtvtr38" - }, - { - "private_key": "4c0399cf8b35b5bd20736dd755d3b6ab6b11b4b247a25e08bf366d21f88dadce", - "address": "lax15jvyw240ylldjcq5nf93fehuvqddvwxeytv5ft" - }, - { - "private_key": "b7b2596236bd23f3634c6e07580e8d2922a82bde12b6c0494453e2cfcd6c0647", - "address": "lax1pzdrueaspddnm2dawpxftr2dmhve9f2733fhsp" - }, - { - "private_key": "547e8e412d34328595803d03a3413dab728d807741488eb21f8ccb03eb5e630c", - "address": "lax1wyc79ud53ryfzzlh2rh305rp7lgv3u207c43gy" - }, - { - "private_key": "c9c6ef7080951a89ba2ae7357da2097441a3f6bfeef8b6d3f059ea59b3456340", - "address": "lax1vxd22k70unp5d5hrrqlz8zl6q4jp8ysuhs23us" - }, - { - "private_key": "fc30262fa50563a8d087362aa537d7f4e5e609af39da8bc6ea2253d6dd6d9e46", - "address": "lax1jq7l6gzejgrf38rkxzfs5krzyl48jvvzuqtx23" - }, - { - "private_key": "88823dfa9f53bfc9d652590d3b351bf7d5547ac9f06fb75961429d1a1aaf5523", - "address": "lax10hez7hj92ylj2m5vrvavugfgcz9xnsyhzf5alv" - }, - { - "private_key": "3378a5a5c101dd12ee8be4c32728192280facd56d4bf35f6acebad88bc1f9194", - "address": "lax14xl7rxdm5e35l5fwcgmmaxrap3e9qcdc5xs4sk" - }, - { - "private_key": "e1f8e32684d80d26544c7e4b4aff6a98c981b50129c39babd1f8fd8dd9695f3b", - "address": "lax1c45pd6zzwtk34e7xdgm73rhqv9gcfzw350tx33" - }, - { - "private_key": "08013774dda80f72df9a9d3f36b252aff9993ee5f8141f27e68502eb0353fd3a", - "address": "lax1hvye9hypapgxqn8ah9v5mvr6py8jq387093nn4" - }, - { - "private_key": "711991a247ce38fa1b619ef99fd13c8f975c0ce97396816ee27c9b9fb256b3b7", - "address": "lax1s4druej6pk5tku5yhyk2za2k0xcvtq075k2hvd" - }, - { - "private_key": "f239843f53faa01dc89fc6eca0bc358b84d1a0726e925bafdac82ac9fa3c4261", - "address": "lax13lw32xwrnx96fprjh0y4pu3cem70utcjmvcgvz" - }, - { - "private_key": "caf6cff3159e3a0dc77f28a78aaa9804aa471eb8b054fee2bf494fa0a64d7188", - "address": "lax1vwkgrl3962sd04zlct9pjdxafgyh782fcqu6ds" - }, - { - "private_key": "2641a36d70f330622946c4bf07686cdc9bbf9c6c9a8408e242446503271578a8", - "address": "lax1tx47npl2s8d27gnm4g6vmupy4kc32nnunqfvgt" - }, - { - "private_key": "72903a3b42a25d18710f3a78b55a74d4380a01e20a6fec46fd304d389d17cb2f", - "address": "lax1ahc8lss283cefc47xlfgw4tc97xcxggmsuq56k" - }, - { - "private_key": "951dff0043272ad08e82562579a19c21e63305ceb2f3d3a80f03c735ddf479c5", - "address": "lax1vu8wdjglp8qy86azmg8as8c4vzjr42g7ujgl6n" - }, - { - "private_key": "146c0dc4ae3eb8cc6bc96fd646e1704fe625f0916f0197710b68a03c4c67a31b", - "address": "lax1j658rrwuk7sgcla4w44zdjm5kws6nu4uxxwf72" - }, - { - "private_key": "29ee8ac75954929086a539eaad59126a64341eac53d666a92ea62f6fcd3863b6", - "address": "lax19zmse7vjv5ad7pkulws8av76x74230wfn0q3n9" - }, - { - "private_key": "c4702e1bc6ab5f3a1614256a088a2e23e1aaf92f275149040f624a5d88b6e2b9", - "address": "lax1a2xrlf4sxf0qsp8mkeh73dqxkd0dpxwuxgmz5c" - }, - { - "private_key": "d1717e6bb14952cb1958fb93b0fdbbb55a4d385ede5dc52099911f927bcc0f88", - "address": "lax1z9dl3pkntk5lgqpf80xsylst4tqu6wenhey3qm" - }, - { - "private_key": "a0b3f8a4a30d88d60c86dd2c009363d1ffde94f49476a09c4ea072627f81752c", - "address": "lax1g2g44esm3hjj96l8yg8h6a4cxfaf79ma5x8skc" - }, - { - "private_key": "ec7c56e671fec95aefd28117153585f958512dc79cb15b3a6a1518f3fe0cf716", - "address": "lax124ncur328y3ghnek8lv68l9c58ag836jr5v2eh" - }, - { - "private_key": "8a98eb7ef301fe07f80499670dccc383a125526c5a182bf09756d68b420c5b56", - "address": "lax1v0r3l08djps0qu95r55per0nzx90t2qwes88lt" - }, - { - "private_key": "7430aa9e371a20363bb832dbdffed0ec114b3976a3811c4d6d11badf1553b758", - "address": "lax1s6skxxc5yqjtyc6hvnas77epgvwy8z7dmyaxdz" - }, - { - "private_key": "460c5bf78056721ac5158eaad78dd415fc6e384f9f5bcc9049027fd595172d43", - "address": "lax1uz2q8dfc7zlz5zd2mkhttds862m8xg0y2esq70" - }, - { - "private_key": "d9d4494c70fa95334d9b0a2cff1aaea69bc8a69910b32feede20fc40346abbf8", - "address": "lax1hlrtdjn8kp9xukq7jj3k8h7y4pf0ksgp0uruyw" - }, - { - "private_key": "e4d5b07723c23b3f0e39a8a9d2634df5a2ba522fc7971ce32d30e7ad210d6e59", - "address": "lax1fujkhz7ukgdpc4rtwf666yz2xkyw0wkfud6zw7" - }, - { - "private_key": "156281c89b626460736acc06d4d50364e160d79c77efc470aa633e8b52f13926", - "address": "lax1y52trxzlllvdwc9q79jv2zudxu73qk04y25p7c" - }, - { - "private_key": "3104decdc690a9625e5e9ce33217370fec5fd176f030a14638ae598b62434ace", - "address": "lax1t3l3ns6kvrr28rtx759e4uhman4qkhgt8qkdxv" - }, - { - "private_key": "84833357c2594c82db0af4b63db06e8f674be85ebbf8ac0404cd09bfd683d03d", - "address": "lax1975yh4hu897tlscp4ysqh8re632as5m2m2dz5n" - }, - { - "private_key": "7752781b791468b1bcba3dc50a2a1ae657043053d72cb62789024000add1f866", - "address": "lax1wpusqrfaqqunmdevcqanufq4wjuz90yjpzgd0l" - }, - { - "private_key": "4993532d54836fa65e53b2e7fa6635284a597568e23c15450a602ff8be9522bb", - "address": "lax15j2uqs4a0echrl4r5wq2e4v8veeqhtg3wlkye4" - }, - { - "private_key": "61193a52fc5b98634020b412115bb45c5f3777bbcf498d218e6d87d0b6ccf3d6", - "address": "lax1327nvp2lwtsy6vvnv2yprycy8txn7yeg3pscsa" - }, - { - "private_key": "fbbb050a4b54c6b3b147b4ab3bd338bf63b39f7d1d235eb3a9d7032a56b97c14", - "address": "lax1kaq0psh7yk3pdn0vj2y8rk42pd4qygfgwdz0a2" - }, - { - "private_key": "9c67da5c446f19d6efb0d7bfaaa001448a80fa36aaf99f20d4874473998ec309", - "address": "lax1xu22gxxagrm8sxt8q8pd5tuk687x4mn8hd72p7" - }, - { - "private_key": "86633da9d76b2c95aaf3701cad56c75846e7f56639efbf8717f116dbbabb1c0b", - "address": "lax19kv0tr4t46rrzj2u3287zsd2ew38x76m8j7gs7" - }, - { - "private_key": "511e7884b6135752609dd14ff0f88f5cf64cb8013a95102d07f0e51c845b263a", - "address": "lax1089q39xn7g9zjsaeujljhklsvcy9qchtttfyk7" - }, - { - "private_key": "cafecb810823cc8432740b80817af4e98fa3af3abd3ef3e74bec6eaafff1880a", - "address": "lax1hk7ve45a7jspexvysdfj6ygjkgu3rgcuv72de4" - }, - { - "private_key": "8eed9408ff5a1b8db256a324e7f1d56be7f77bcd45052174548dd7fadb5e73ad", - "address": "lax1vnvw099huyyrw4w6vskmqfvw43p3ggcx8zxajm" - }, - { - "private_key": "0e9fa4d1a1aa07d04c7e1268f8c30fa3dd52e96f67b4267c1f0fd3d163cc4f6e", - "address": "lax16jcrfyf5ruuzcl8n0kq5r604vz9v3j2pa7uvms" - }, - { - "private_key": "8a9c127a1f0d964a24e6a6471ce23fdfba34855c737a298705427416d9f5d7cb", - "address": "lax145emwnet8c92a8cgpnuj7a5xy7nmxf2q33uqh9" - }, - { - "private_key": "5ea48d28bd13449d17adaa11b15130d94029baf3d25b920dfb697d0c67394c60", - "address": "lax1w456u4kft3rcuwk5tscd5nmw5d8lfm3qv6rynk" - }, - { - "private_key": "5afc63d96943a2cc22f041911dda7be07eaa15031a8ddfa61a38ae881ea304a7", - "address": "lax1w9kff2hlxfkd42ytwwy2kyv8uwqjy7ywzedga5" - }, - { - "private_key": "5060d9245334c04e4091d0da1e783d273618bb4a2a6eaeeb9305463670a3f35a", - "address": "lax1xw49leevf7rxegeyu3dcnku3uzz9j3mj5w5x4y" - }, - { - "private_key": "61ddefab4a2faeee6f48c67bb5a490e10c695e018fcc549e576a2d2b5111e125", - "address": "lax1wjmcyhxy06lk9df6yph0udx2qkztureu002hxx" - }, - { - "private_key": "ecdcb47ab4554698e4d25976e270c1bda9bb5f9d5c61d072ddb762b18141a680", - "address": "lax1hfxs87l9dcmah7ge6n7tdht2veuw7tqsg9duaf" - }, - { - "private_key": "d53462fcae488df300b9849abde4c2359ff5fb641095600ecf53e4bcdc0d9b8c", - "address": "lax1wrulw2t4fwa7zp7qs4dp8etzr6wajlajrkvayv" - }, - { - "private_key": "3a4139415c3aa4c7f25ca817e31026e9aa08f535b60133cd8a1053e584585d3c", - "address": "lax1e6ck4g8c2tydyercqd93uaq0d8v7rf0j4nya89" - }, - { - "private_key": "a8515d4ea5031624ee223192659e9a84c8cb3a4c442a306e6cedf364c9d4373a", - "address": "lax1j9y2j7kdj7ql9wxdr9q8wylet48txdr46qsph7" - }, - { - "private_key": "862e2a7bbe0239b336aff2a07b52e565aa7909c44228d8caa6f157eb278b5c9a", - "address": "lax163c79sgcmgmk3pp0yk602t3f0uuzjpzxzyczk7" - }, - { - "private_key": "59d1dc4c3adbcec0c882bd795966c92f3ccd395001bb3bd4159e850f9da6c745", - "address": "lax1aggl2qzr8yvdp2qvzz4l5zwu2yxj5e5zz2kh7a" - }, - { - "private_key": "51fc8c2308245ec37d964ee53a08918c1b67791c01dff4592ece9428e735dc05", - "address": "lax1qy6xeh73s5hxrr23flcfecnclcc4z5syd4cg9u" - }, - { - "private_key": "f7e0982b6cab357b01397380c4ba95bc23cd5d7322ec3f9257b785e59c9e04ed", - "address": "lax159v20lpt0yf3qyhhmquj0f6ujt7n9ncwqaars2" - }, - { - "private_key": "8805bd0f5a1854230d162756004284b7f6629f0dc0b54900b93d09b46e4bdc71", - "address": "lax1xje4c50cudruwku3539e8enuev3wm66d0ersc9" - }, - { - "private_key": "a13635d5844f1d7d2f0242e49656df7a3a564178b5a3b04a18187f31fa7336d6", - "address": "lax1ggs2zsnq9427ar6yn5qlffwdd2t6wy296s6p04" - }, - { - "private_key": "c0b9f1e2b1d216af872ea37f8fdc6b15316865ebfdfb6ceb8d78a80fd80c702b", - "address": "lax1hc0k6rrdnfnjmxt77v5js8vttuzc35vdnrhftt" - }, - { - "private_key": "fb9b99939646321478ca3c2a8b574e9f0076fd3554d9ae99bf51612cdbc61abf", - "address": "lax1av35xv4p3yu597hck37mzcn022e2y24f3w3zh2" - }, - { - "private_key": "f5a1ad87205ef20138cf29d81d778b75b66bd4f87fcb1d3f1f3b9f341bdd2522", - "address": "lax1he5wwvyjepaa24f3de67qh2wc2hnfh95fz7vkl" - }, - { - "private_key": "1b34627753af2b7c04e82b35eff0bee889f0014b4234053ffd3af50fe7bf260f", - "address": "lax165h4punwqwc8pnwulhdaaexmse8r0te6v7st2f" - }, - { - "private_key": "eabb94760f5e134cd8954ad588d84c3677b2cb7aaebeccf91239cbec71f4c0d3", - "address": "lax1nezvvr6f9qzepxvd9z9dak8zp4syseureqzzjg" - }, - { - "private_key": "70d5bbc39534e06ef64fceb7561804d57d95fb092070db2cab43ddd9b43ca2a4", - "address": "lax1ycpwu0mgz0gxkmqltqng9urmdefp2wrvfa67la" - }, - { - "private_key": "1e1d9453dd117a87517ca197bf01ec0bc91b46401b45ee0c037cbcb3e4b4cda5", - "address": "lax17445x7jefjnkdj5xfmqv9g287smhcpx6rltx64" - }, - { - "private_key": "bfeb4038e713786f95cc34c66ca6aa96b31c208863fcc9d551d7eea2ef126666", - "address": "lax1h4lawqfzw66l4snlazht6vkathqpw8av8e8v8v" - }, - { - "private_key": "967ba4806424f6fa3b5226a5137a4b07ad82a22703abc3f7ec64695aa17e41a4", - "address": "lax15n7wgzyqgkqksyry7s3np7xrvuszukkzs5vj6s" - }, - { - "private_key": "c951ee25feef522a020911aba1705a912637ba07ea242a13436ae16b2da42deb", - "address": "lax1f92w36m8kr5xj699kpgqqzu62hk8s7fd0zz6f9" - }, - { - "private_key": "018be50652f91fd5781a9e688fefc9272236057a8a8caf9c0fbeb4f988d26fbd", - "address": "lax10tsl0art02s2u3j53ur9uqyxhxf3xzw2kx0jw4" - }, - { - "private_key": "99599ad55014725aab5125f92c56ed9f0c12d1f7f1d7e8f960269851494bfb5e", - "address": "lax157jsuuhkh9eh8zwrw9m0rd0nnhq3hj66xdp2hz" - }, - { - "private_key": "201e3f23f28c9260a1abaed4216d1c29bccc0ba1059cfd1ef6e4ad696c5632fc", - "address": "lax1vspef6930fvejy8v9cwsfs5y2y4gfe6d4ly0rh" - }, - { - "private_key": "7a3cf8a9d381605cd30afec95354c7362dbd4d21ba787b7acf340e85e07eb954", - "address": "lax1xlavcqz8d95f0ar330t5m7fv3klym76h4rfa9x" - }, - { - "private_key": "e86d5abc57670349757e0422fca64677023d55daefebe2bbb875abe9897101a5", - "address": "lax19v2kn42jpr2aaskq044jjemyh0vxuge5lucu5k" - }, - { - "private_key": "28ba660382d4c4cf30160ee825401169c5387f9fab6636e080d71c770ee14e68", - "address": "lax1vkfyfmwy8dkvhfksuk00dfuzta83putp6fdkr5" - }, - { - "private_key": "b4d28349769be747cc74448a3e22b32caf7f840182eff33c76b0917c6b18d0fb", - "address": "lax1uqms7kzc0dx8yrfv6p93dehn2zkjzx2edu2exf" - }, - { - "private_key": "b2cca293c967e25348244130d5aa3440924d070b0318ec650fc0c94670340382", - "address": "lax1yp9frjexmaf0ca8sdpaj0ql9pqh3qcy9p7gwrq" - }, - { - "private_key": "3fa0c0b1c38627fa08fd20551ab34ab60b9c6f954f7fcc9de6d79230b5e022a8", - "address": "lax1k547mvgyz9ut55k5xn0c607y4mk7taug34wnsa" - }, - { - "private_key": "88ce9b64a8b5fcbc3c2212a1da4ee7c1a69bd5f713c8c7d5b638f6850299bca6", - "address": "lax1788w43gwxldzs2fgpg5zpl8ngvz2xtnsd7z2qv" - }, - { - "private_key": "889435a6bb68876fbcb2d2808861cda03ae53315d86135824809a82ee0464349", - "address": "lax1c6trj9ldr6auw8zwmcc8cddcx0tg27e9kdkuk5" - }, - { - "private_key": "9c572dcba48c657befaf6ddcada73bbb1ed84df498e3721b1e6076c6f97ee8e9", - "address": "lax1g5uz53hqlnam7d8wryy0724tqfp289nvzwal72" - }, - { - "private_key": "218de6961775e60d30b5f0273d5e3ece24e724b044deac492bdd66d655713dc6", - "address": "lax18ag2xyc06w59s0yaskjzj3jzrsgphlashaytye" - }, - { - "private_key": "68243780e3696ebb79568909864b92bc49df7c3e8de79d1ab88ed2352856b110", - "address": "lax10wda27qn59xvqwj3nuf26u3wn2nccg2yvqe9pz" - }, - { - "private_key": "24dea44dc647890f5e000744504d33ddeb38b997efca094ccc92c395e469f9f4", - "address": "lax1elhlwsqta0nz0mjaxuzhuxydluy5pwt4yzjx00" - }, - { - "private_key": "ebad782489579c453ef4723e6d9051cbc9b9f0a5bbce62bd0a36efee72eb5c84", - "address": "lax1pnfg3u2hmju4n4km4z4mfq2kedlf5vsny27g2g" - }, - { - "private_key": "d0113d74d5e3ed214ef06f7dc8191b136c1f3b05029b08e0ebefb368794887c9", - "address": "lax16sk4n5l9s6dx7t092wq75jte94smfl5r2wxy9v" - }, - { - "private_key": "4614c7f3a45920f134074c9b7b0ca41b61486a7a2856899be72644e8a0594fb4", - "address": "lax1l7yufmruaxhppdt04kf77gu7dw5g9tlg8g67w5" - }, - { - "private_key": "240b837937b3f3c9fc791c4b90975cd04067acd62bf493133d5f542bd319eed8", - "address": "lax1acdtl8vted9hjy452v5e2x4z0hv40dx7zx5x6x" - }, - { - "private_key": "1df778ffd081ed29b9d1db544a83aae61d6716229e45d077bbb25054793252c5", - "address": "lax1rps4dvtussfuwcppc3kuj66t599fphcg9kayh9" - }, - { - "private_key": "f62a90135c2a4aa164ab0ff372e3f2c5a728606b3ca34b48280c62d76c2d8b21", - "address": "lax1yl94w4jyzh7hqpvljxrsnrxap437qw093yffn4" - }, - { - "private_key": "59dd71e9e853de1f61985c79d300a14502c49613c3e62ae856fc51bbf582eac3", - "address": "lax184perrmjcathfqjxhst8tn3kk62gek0zefnjfh" - }, - { - "private_key": "4dd00a5fa9cb7406701fc7e516bfb64a1552265b822360e179fc59d2a759ea20", - "address": "lax1ak76ds5elv82jfp4apj404jaf6agka2w6ry397" - }, - { - "private_key": "4dc8a2c1eef7bc40f71a43cbe13d507ed31955cdec8c69a5cc8ec84194322878", - "address": "lax1tajecgasj60u4n6uprpzqkcldecgmx8xdqujsf" - }, - { - "private_key": "dbcb53069bcdc11c742876e4f5ddb5c084e967a55732d8217c4f552aa6a7cdde", - "address": "lax14mcsg5798qrc43xlq7cka26ldaacj4pz958ucq" - }, - { - "private_key": "37ae5e031d8a6ad871a4f99c9aaaeae18862c1e78c0bcf2f69cf54db9bb35e33", - "address": "lax1kwcc2h88wlfq309zdjl8c7wv5gtsyhv7j67t0h" - }, - { - "private_key": "5657a7d84f127b1625877e5c0704111d02eb760829ffe43854bf423d1acdec12", - "address": "lax17v60seyh4r7pqqkrrkragw4l8a0604c3cppdm3" - }, - { - "private_key": "56c144ddbc87fc0be0336b9943f4ab0fedf957b5faf71d941fd8fb4853c2dc87", - "address": "lax1w9u8wfl9lj7jtmlzsdhcn90zcfyjyva5sq7wge" - }, - { - "private_key": "adc16f5d1d636f9d01ca2fad2eb31fea1aaa36b7992de6bc1ae04d6f11176edf", - "address": "lax1g77u9phpdzjdla6km59l934rnj659zvqama5ac" - }, - { - "private_key": "c021a1c5b2c18e9bfdbed4b3f826206ae7793a96d4e2876fec33b5845fb9d437", - "address": "lax1lc5sxmw2jtrdelgrd3l3nh9e64wsjydvgfhzae" - }, - { - "private_key": "21fcfd824dc1de4ee1b01d341f2a4ed77eb81c5f8768839f2c8e87d2b1fcd4a2", - "address": "lax1kz6ug5g5ccsqwz2mqnu945vdn0pthzuqt8gy8s" - }, - { - "private_key": "0e503cf7889e041d837f5ed1fc7904705549eb1cf08c38477b8e49e3c59e16ce", - "address": "lax1y2p40edy40te074hwa2cylg6vlqh0m8wwlg8x6" - }, - { - "private_key": "7f0f219abc93bf1e568d22bf0739c9c618d6b1827a9b1c61a745c8eaaf0194e4", - "address": "lax1snpljqdxrmsy8p5urxdsp50zw84p9wraru94t3" - }, - { - "private_key": "591656461864cd1902f65b44a20c71cd21bdc9eb3463524c357a3f6c4385a347", - "address": "lax1pjrqehwnv3m7zyv6q2qfvf8g34qhnshmr8hjmm" - }, - { - "private_key": "28620259dd98e6c35a7d4d2b8a1ef63ba001b29202fce138e986d8ee4e68f071", - "address": "lax1j3j58a7yu23yzj0za4ls0d5947xasvg9marul8" - }, - { - "private_key": "69b36f3b3017b99a87ffd556c13fc164d2ed11f2e5741cafd64856daa016aa67", - "address": "lax15szhc02w4eh9wf2vztzmwgsxuperxth4v6x59y" - }, - { - "private_key": "4fb3a1ed6dd9e3c93aada6ef44d01d17abeca2c688fbef1872820c77fa0cb2c5", - "address": "lax12ns2fh6mywhql7ufsn8eeckl5aa565k9t5xugh" - }, - { - "private_key": "4995789f54b2b6a0d9cb5e7485313f2f7a48ef08dba537e5ec867a03042e1dba", - "address": "lax15xkg5d3u5rxj54m7v7yapzlpxu4mmym9wuw92c" - }, - { - "private_key": "fd7f1df0a077126c9b504f49e8c5778cc83b084bd9103009a18215260902c0bb", - "address": "lax1dzrn5ny955v5n4sfw24gt9tsj4gcxrnpx733rl" - }, - { - "private_key": "186fea7050a7102d94a9be8fad9ef5d7180a95877087aa376b2f35d759fdbae6", - "address": "lax1kw2qd2gym2wez2ga3uu3xeya2zm40670awl54j" - }, - { - "private_key": "7e986f0561498a5e80e25c86bffd76b01c13080248c6fc2a93c2fb0b8f6d1a6a", - "address": "lax1fzy7hh6mdv0m8lnkde0nvw8uvmvyme6smxu5e4" - }, - { - "private_key": "c0c1e6c141b16057e0784ddf59c67889099012f27d422d2f71398ddfb76b7d47", - "address": "lax1x7fffqt4mhwfftcznydshahlcke3frem03h7l2" - }, - { - "private_key": "76de85cdc20b8aa8bfd407c82526df00fc6093a3e345612e308c676483a57119", - "address": "lax1ffert5yuhhv9zgju5chpcw9lu02ggfrraxtu72" - }, - { - "private_key": "0198a12efb7812097c5e6deb50a44ade20aff6082413b54770d26363283be312", - "address": "lax1y7psd6k4nkw2qkv3433pwww5e5dds3sc7cmldz" - }, - { - "private_key": "0cf2f986c3b579084d7e78e18856cd8567ffbc9a8e987a15a2ddee2112324ff6", - "address": "lax14aurt3tc7fkj5933r3qfeqc34m48mfzwm7x8nj" - }, - { - "private_key": "4da1d03807c137dc99ef56860c90ee6dd45ca4945f60f6ac3bea0c116a64a4fc", - "address": "lax1tzmfwknl8r2sdsce9zc63zpfv6yzrh06a3lpum" - }, - { - "private_key": "09ce805baa5d4b954626ee93c0bddbf7b064e7e3f8a968721a438d2fc5b3fcd5", - "address": "lax1u2uy55ghkah6pengu3snajtalkyngnj9cy0khh" - }, - { - "private_key": "c50f4155994dc455e37ef191293bf75893d4b9a2cf425be1554ff2cb9e46db54", - "address": "lax1k5yx7qh0yqupndzmr7p9u2dzykjy4ksq8hszjf" - }, - { - "private_key": "9ffbaa7a6cff4922fc974cae14ba4e8c131e78d7339211f4125693ccafbe2f60", - "address": "lax176ycfx6ywzsvqf43ae3gvyc55sxxuzrj0wwfnp" - }, - { - "private_key": "725c61926b3fb53c3a1348c194cdee39a4cce29d34fd5c3fac93c6e625a37318", - "address": "lax17xq23nk7nwh8j2euvm0fm06m5ufs4jlpfldchy" - }, - { - "private_key": "5d318080b90348c97803f2b2669d6290598ceb843c704a8ca3edd33193b9f75c", - "address": "lax1lz75869l0uxdxn627mcv3xvlc56eshvv4pceuh" - }, - { - "private_key": "f06eeac83863f267dcc9ed7ec5b4e3b2ca0771c5f7122f0e0064c7be77616741", - "address": "lax15wdea9f2su5gfth8yrurvndqqsfzem7xlm9hjs" - }, - { - "private_key": "130e0d9b98da32c820edd8e7aba986a128e65e1d58d150d86615262a264787ff", - "address": "lax13ywyqr0nk98rhkujzftfpk6q37vkn43g7yeh4x" - }, - { - "private_key": "ea88816fa7962eaf082ec6f24d7a1ca12d4888636d96cc71fb91ccd69e87ab5f", - "address": "lax19kaqg86duhjemgd5m8kzmpdwynzqtm7t2tdp2q" - }, - { - "private_key": "34268db2441b91391bf500ba27e0f5bfde028b6894b6f7863bc1a3b2de80852c", - "address": "lax1yvpmgf2zefl60ty7w92sz0l0nq3cahdy226n3y" - }, - { - "private_key": "56e998578463aaef3c8f380703b65e5b1cc25d4e7ab775e09326fae36337d0c2", - "address": "lax1cundrsrcvgxym9r2t2fnr2uwt7gvdldpz5sm76" - }, - { - "private_key": "0d524122234742881154a9d22a129930b489a935a60debc2103abf3269a8a131", - "address": "lax17vm2rpvejx9k0daklwr2dnm2hecwsrnvz0jcw5" - }, - { - "private_key": "f895b6fdf0d42068a72e65f150c0350b8236ab938328f013378c585fb9f14e1a", - "address": "lax13jyt3acw48wzll9avtl793cxuycafk9rwgvdh9" - }, - { - "private_key": "e4abd24c6af917d61e219c4b16803f43d4d277420622a1f890c0d82fcdc0e8ed", - "address": "lax1w0rv8y0jzksd0azh0tkn0wxm8ze2weh2h5ql6e" - }, - { - "private_key": "80d92d773759bb39369a63e702cb2559836122c8ab9ca28f465fe6676c9bfaa2", - "address": "lax13l7089pkc3z3fll89qprfq26vap6wtcyvdwsvw" - }, - { - "private_key": "351644ee33d63c760a108080ce0ae3b8c049a533405e54293cb8673f6e1801b0", - "address": "lax1gaw6p7arnt0z887a738s80clq0qfg5854p2xkv" - }, - { - "private_key": "ba6504c387e1179fa892b7e69fcf0b27bce57599e4b41ddfb0d25ee30b663df8", - "address": "lax1v7dys9qsul9qrp5k8wgf47hap26fpffydq6e6z" - }, - { - "private_key": "65bc9698c73e206b6065ef56cbe13fb58aebfa237f15968e3dac48f840bd9649", - "address": "lax1t6wqzhkje948ytn9jzw6japr6dyzglh62lfgwa" - }, - { - "private_key": "9d8bca3380664b2b7c10160635d9278da70d11b39cfca272a0b04cc49b9304e4", - "address": "lax19v87kg339l8dvrus7j9szswa2t3r4776hqaftr" - }, - { - "private_key": "3b29d34d91aac6727abf8f76a6308df5082a92da51739deb976ece1f7293ea10", - "address": "lax175n4hxve08m63gjkk3wdc3lj3klnt9v8za50ev" - }, - { - "private_key": "46287d61e882d036a7a222ce68afa9ce37e37b381d8398f59aeb57760be046ed", - "address": "lax1c4ep63t4xdjlmy6cc6emaluxl5ewz4a6kp55g7" - }, - { - "private_key": "142956322ff46ee5ba367501e65ef334f484ae0dccc58708d5e638fd86bd4226", - "address": "lax1ay58zhd6u29x4870a4e0mtnv2dr3n8hsruf55v" - }, - { - "private_key": "f1472afcbfa55bd28e6b50560578dfab5f20b60648402f6b0d3f56c78907dd7c", - "address": "lax1807trfdue4rc8q8u2x50d5yjxx0ec2hn8yj24u" - }, - { - "private_key": "0942071efc514774bead3239892ea519e0fa1c886a12b1c314f7da561be19777", - "address": "lax1zpa80gz0xdl75phewnxzdgvnsuxa956k5hrun6" - }, - { - "private_key": "10078daf5fcd2e0b64741df13fc3872ac181a17f967ed2dc4bf21bec0aa3b96f", - "address": "lax108xhg79ysk2rma7xl0lyexzeea9u02c39z0ltr" - }, - { - "private_key": "4a487459ccfd806b7568c9a90b1526db54ee305318936ee6d5c95fa092a2689c", - "address": "lax1vxtcy3m03n3kdw2eg22t4e7dz95l3rayyw6tx3" - }, - { - "private_key": "162fee78fc1296a5fe61dbf8cff6b980b2ef61aafe27eebad8787094fc6c2fb3", - "address": "lax1hd6jyp8whda2yj4fxuz4v4q2tmzjly0afygxr4" - }, - { - "private_key": "e13cdc036c25c6e3e19f932a9e974c9ec7d3f2cd41c8031c7187b7fc33e469d7", - "address": "lax1ygzpw0lmx979pm9rh0vcydhmsl8xvzf0tv68ra" - }, - { - "private_key": "4e4579178a6af70544727b7903c8a6d6b3d2da54cc73818263b7d157aa443e77", - "address": "lax1kk250zlrm4x8a5fjfy69skp7l45xwtx4tu04sq" - }, - { - "private_key": "8327a48d73b325a8bdad147190aab61929b20e936b9987e94b64438c95163f0d", - "address": "lax1y0d3m2yjaqq8n2mjdr9sc9vz7q3pryg8srg6ga" - }, - { - "private_key": "8be74eed1d2c9e3b9b2fe8d0a3321a42984f184ce59e6c7437db6a8fbc60297d", - "address": "lax17jxff9xy6rz0zul7esmj75x2twapluardumxux" - }, - { - "private_key": "db6446737425c5f3439802f50d408c38cb204b8856207151a37bc5784079d1f9", - "address": "lax19xhwdqyrrgnwy4y2gpzwvxmgegpx9slmsr9f3e" - }, - { - "private_key": "833def781ea96bd9a8e73f3b239e5c3a70e0a8f00a9e29e9c3979f6bfd569ea6", - "address": "lax1xedxlpx0xr260qpnuy9a5lxp30vgu84ldwerdx" - }, - { - "private_key": "6841d19ffb1d1a6e8302f3091aadd8a4213258635cc29398bfa01524f6c82429", - "address": "lax1yaelza2m6jxmys9dmeeywqn7nxyc85kdpclwkq" - }, - { - "private_key": "85e31be7705547ccad2369c2a0b45b07d132bd971bbd063324c9d16e4a0fccee", - "address": "lax15qsdpcuf5rywu8tx32klv8w8u3cepftzl2vtu9" - }, - { - "private_key": "f60241505a128dc8162b1483a8d0fd6bc91432203d863783957843af68ece783", - "address": "lax183wr83a38n8zc5at7pxnu3c8462xeredp6d8j3" - }, - { - "private_key": "769eec9165a21155ca0b7519338a8dfd5da6a1bf62dbd4f1690369d0d9bc4340", - "address": "lax1hfd7h764pppyd268ywmnusk85t5ses4klcwmsc" - }, - { - "private_key": "24244f220ac74089f7b4f35948a6fe3ff43e0de2e0e1388c2c6f3739d3aff89e", - "address": "lax10tgt5e0rn00nkawjxx98y9s4gls63fw4mgerv3" - }, - { - "private_key": "08d9be9c26bc5c5909b9612b95243ff175729cd93754e30ea5d3530ba14a30a9", - "address": "lax18pnznl094l2mxagqmj3k4yg9jgplz96zztrrpu" - }, - { - "private_key": "fc242edbc64d907e7688811e9ea21cf7527641fcb92b173718ca3f473174e3a8", - "address": "lax1sa84wnvwc0whp6e6396x4lct2j4xda5t3trtf0" - }, - { - "private_key": "fa1eeae34811ee1ec80070b0d37451c97b3b34fa838c09a3ee51702fa62c867a", - "address": "lax1zdvqlmacuf84jqgtnklfqq6cdxts7dlaaxd3zh" - }, - { - "private_key": "3ed20aa8ec68a4a215c5ae6588cf8e5d025f8af246b07e0338965ca8053c2361", - "address": "lax1mehq0f72wd02rfthrrjrw8mm45r50hyswnwued" - }, - { - "private_key": "379e88a7ebbe9981c1a50a65fa3674d08607899bf8197f6d7d21269fd65a2d2d", - "address": "lax17pljm8zqtk9nvnjfr2cteh060k2zfhl2yy0kce" - }, - { - "private_key": "6ce59baf330407cd1fedd89b52dcf54ced0ecccf9a3ef3a210499a2d14bb49e4", - "address": "lax1lxhyafpyqgn0z0lw2af33m32n8q2wlrxdfx7s4" - }, - { - "private_key": "d8a179e88686a1b0a6d91c033c51991b344b2d2fffc4c3874c8badca5317da5f", - "address": "lax150a9x6lwhsnf4352ps9skj4j3cq80cga20f6g7" - }, - { - "private_key": "50110f16989280f0aed28d9eb97a538b4f2e900e655dc8d8050b4d1a2211a380", - "address": "lax18a7962pg7xnay28t5g32y6cryku6nwf9fzrkea" - }, - { - "private_key": "13598b96c2daefef309d204756523cfb66878eb792e676b8cc8fcc16c3505820", - "address": "lax103my2uj6am39gujf90mfrgdrvmuml97x7d6m9a" - }, - { - "private_key": "4b726f178977f25558822348b5f32b0f2bf26d5fcc4c056d5745e95da8cfbb3b", - "address": "lax1dx7zglhfva5avqaqzxv44x3ndrp6vkhz64m8gt" - }, - { - "private_key": "c35b12215fef800fc5a202ba8a8674addb516d4d73923277fb361b98bb6b2e3d", - "address": "lax1q746z7upag3jv8nvfnmrz4w6qq3lvuehp8e6cv" - }, - { - "private_key": "103735ca09d89c4e9c2f15f1830d46da2e06d261fd3f487219496972cbd17467", - "address": "lax1z5tx0wh2nvf79zj59hd6d52urk6ueqjksqg9gz" - }, - { - "private_key": "b7c53d66ead96ecb0daedc56fd8147325c44099638d9aee5c07eb644c3a2277e", - "address": "lax1y4uvadzt7ddwgjt67t27hernh7uyfua9wcsts4" - }, - { - "private_key": "d839f8ad743fa0a836fa8245cd839ff0a280bcc87e99777af361a08de2bfc3cb", - "address": "lax170x72743thfghm3j5uzk75kgwxeft0a0ltd52a" - }, - { - "private_key": "16f5026daca77f16d12a704638c26fd2a3cedc8ca5c005e8f200891295bb88ec", - "address": "lax1p0g6a569qe8wkwt2sjlgwh7g5z678vqassjm9d" - }, - { - "private_key": "8277830ce7de936cf7de370c1c39872454b748be8d102594d0208623d36c50c1", - "address": "lax1padxdpgugscsh0399cwz3ma3mnxz5fkmumvhku" - }, - { - "private_key": "ed6c1c1592debd74b47d3bb06b57e6a3d19c22642db576c7e44925675e2468bb", - "address": "lax10xdvcdsc7m2t6jv5u2rsh66pacnhryxthfpa8a" - }, - { - "private_key": "28df54de5451e6b98ad278eccdc5b9e4fe8dd390378b234a048c183899101aec", - "address": "lax1vzqu0djad04sg2layhkwmusy4v38c9yg0d9jmh" - }, - { - "private_key": "86ddb3d1fcf2a7d213030d411c04c0fa43a2dbacd173cae88ad596f7e8a83504", - "address": "lax1tgxha5qnsxhhdcrcdh6ea2g32pzd5kcmq9z2v5" - }, - { - "private_key": "49b950da7e47d46071bdb22eba34df72da4409caa06be0d5b4c1d788063d92cb", - "address": "lax1rh9vdxzct7g5lnkapus67wnzas028qw9pe9lzc" - }, - { - "private_key": "4e5ef0163d88d65f20a4256116c6936af932c646560e7579d4ff4faf0f991437", - "address": "lax126x22pcyq43x0mrv9ztdlgdlkfv93cj4a3n7uw" - }, - { - "private_key": "0f773d900cf960494e6c10e1089021ed92196bc14ca34e0d2aa84abf1dd631ef", - "address": "lax1ffd8tay4mw565f6yppuc5gp8pellw99vtyxvpx" - }, - { - "private_key": "e67b906fa7e907ed2335bbb98cac7b2ddb56cc36526e3d63cd76d320cb1b05cb", - "address": "lax1vrl63r7qp4zm5ryzk2pxegrujr3cxz9885zp4n" - }, - { - "private_key": "6e9e0fef242980b04d1f2190776d199a3eb75c2888e499879d21420c5f3f07d0", - "address": "lax18vv2f9m8ucss3yj5mjf5u5xvandfxlup9deanv" - }, - { - "private_key": "3eaf9139dbb2b377a73fa1442866190ec512de36a463e98740ba6ef64390c911", - "address": "lax1c7qnwacw079pq7s5n5mpclnc05ekhqlzrz3udy" - }, - { - "private_key": "f2300dc8acadc3f58ac4170234d5f1b717cc721f3465c7dd96f50c3665cc9134", - "address": "lax1cru0y38fxd7qzznzjurm0c6ahkq23fa436newq" - }, - { - "private_key": "96b98d6312b1edebe3626f0afc906323b716ddcde4953bd7a5f906c90b2486f5", - "address": "lax1lnm4rdwamxw0aus80wvaf8kfwn59eg8wnc2z22" - }, - { - "private_key": "c59fad8811e7c4c32ed8951af5b066dd7baf3ee224328dd5ab6b8acafc8c925b", - "address": "lax1a9hjy3ss8vhgpzwweq6jwggfms76zrptplq5rc" - }, - { - "private_key": "cbd78818b5dfd4ada9c3cd5e3103cf65c70b998d66ae045cb187e3f54583a47d", - "address": "lax1wytn524gwnmaqpqp93ym7x9ajgzr9fz4mppahq" - }, - { - "private_key": "83f721b7e05b3bfd7d1199a25728758c180c8d2812c9a90827de7283a22d1da7", - "address": "lax1en72v9azfa7jky7ysnt8fkryhn3e9m6lahjzvg" - }, - { - "private_key": "b3f85bec649f7dc206a4c0864dcd69fb65c7b92d7b66ccc6474996996093c0ed", - "address": "lax19z5wrqvqklhu4akkv2el8feuafem95cvdgh8q2" - }, - { - "private_key": "e6d93ef397a930b64967b7137659aca91925f21c9548937fb059047287a2bf07", - "address": "lax1p6f677rvt6rzye7qxmjxr353zcffj85ej8jp2a" - }, - { - "private_key": "3f29c45f25863c3fa0200cc4ae0b45ac8cbfc7921e9239b7648c719557dcd4bf", - "address": "lax1ta59u5hr9wccv2tunyvkf2tf973kaw4w4q78pp" - }, - { - "private_key": "95a02351557ea10e4b4969bc5801de516bcebe29527fff71d174d11113b4ec44", - "address": "lax1fmsa7n65qasgc079em3zf2jnvqsvtc69azp0jj" - }, - { - "private_key": "56f7dc6e54068ea86bf069c9704438b88a4474c19b94c2535b166de4bfe84b2a", - "address": "lax1rmeshyw4alrl2dgp64l6enhadqfvv7vfjarse2" - }, - { - "private_key": "e745d7172a4384b2ce9742c1c4e0759da69a92de9e37cf04e90b6f9562ecb65a", - "address": "lax14umlx78vj9xl0fuzcqwkzv70sac4rf66ls37ph" - }, - { - "private_key": "36c87bcf33435fa36f8afbc9d852c5901feb02400ab85a77ba74eb901539ee41", - "address": "lax1kxlf7ht58sdq2lx2jd0vtwjzwgrqyyg3kewppz" - }, - { - "private_key": "c638b8dab5e914b60d0353b3f8793d8a7c0d7f96799501449b7c43cfe420bf08", - "address": "lax1326xf7g0fyv5red6wndhez7qjvcmszufs0szrt" - }, - { - "private_key": "50010d5b6a2ea72c05753216e7cba2356262ce3695f24407bd8f1195e9e75746", - "address": "lax1mv68994tnpews77ra04v3uxe3xz2testmln2yf" - }, - { - "private_key": "77f1dfecd891ac03aa3a0116223163c4b0280b7602d4caa36ee081f2727a62a4", - "address": "lax1sxmjecxh37pp2wddfg8nuf6k4za4unehegngmm" - }, - { - "private_key": "27375472d094e1130a72c3de3a49589493ce2f08a28a20dbffd5ec38a64f878c", - "address": "lax1y2texnejjuv3u4097mr7egkgqysa4l4hqvxx65" - }, - { - "private_key": "248ea8660d1a9c0eaf2124fb1dbf4832102873da59aa3ed0256c7b0636574935", - "address": "lax1g3v6vpgeav244rg6x30kvw7qx8h7uez3xzyev4" - }, - { - "private_key": "91106c21f6062117680ed20cd4efda5ced811f0ac6ee7ce133bd06fa01151721", - "address": "lax10evg5mmfqn4neql2pvxaxh3h7xz5gupmneuvmy" - }, - { - "private_key": "bd2c4532df15d4fd94d6246a27705753bb991c9d3056470d8964568bf27a6a6c", - "address": "lax14qpg3c2hw22c8mkrqlvmve9vl8uxuwf4njena0" - }, - { - "private_key": "07d6ea7787b4da9b38bb9477c227a4447109d26d6b76490174500d01bcda639b", - "address": "lax1npqxe6ma2wh6mrdu99es6lqtqny5l4rfhsz5q4" - }, - { - "private_key": "cbf7d306ae9be67f975cdef54a06bca1d9b17fc9ebe0fa79aae076766a78d5fa", - "address": "lax17wlqazg3w75l3nr6ywu6yp26m3j367xvtmaw6s" - }, - { - "private_key": "d2719f494ebb49ff6489c1172483357fe3f2466f057fb9f2b0aa6801acad6ff1", - "address": "lax12dwdlmkql5vkdfzpemwrx8fh5und2pkg2skm93" - }, - { - "private_key": "77371480c6cdd21ec284f63671602c00359bec9aba7b082f6d8394bd68a4ac3d", - "address": "lax18u22muw755w5kq2430hqzl43cnf5xsmk242345" - }, - { - "private_key": "f85005e2e353808102904fe0a77438145bbec8326f81f4a7687288ccf5c4c4f4", - "address": "lax10w45xe9keq4vn5p7tzy0nhsu86mgld8uv5cg57" - }, - { - "private_key": "3e3c5387333e476f0ec364ff1425c95c0d83ebe2d68a4e9cf15c10c40e5886f1", - "address": "lax12w9nxsrs9zq4npavupvu7nrl0eg4c80jre66ar" - }, - { - "private_key": "a0249d951c0c009ac55abe28158693fa57bcb28fc6229be08d7ed6abe31060df", - "address": "lax1m5c8yv4qwa5lguzxdrhykc2jhyjqc8xd4886kk" - }, - { - "private_key": "c16ceccde9a0fdec7d951f5ca0b5fdc6c514acdc32cbefd9d43638633b6c0418", - "address": "lax1se0ctjus0gmep28ky60r49q3ueqhacpr73kk4e" - }, - { - "private_key": "d67a7f757936e74a437dd441f0124d98dc0263b515c3d48f956a8ef5e3fbe499", - "address": "lax1vh0xu0q7r0vla4fxp2ull9ahdd6fchxsa0m4mm" - }, - { - "private_key": "104771e64837e06bb6bf24753cfd41080f368fa86a8f6510e193221e202f2342", - "address": "lax16ucsk0kkk5dpccey3f70dzsjmpkxs7a9f5qgaq" - }, - { - "private_key": "53ff9eaf77c35885fb53dc869e88829ee67ffa8653dcecd211d1964335674777", - "address": "lax1dx5pqx4wxxx9a8ap9egqtcnzg0du73985c8fsa" - }, - { - "private_key": "32e4d53593218c21130ef5f1c9cec2fca740a590ce80846dc432e63c73095a12", - "address": "lax17p7sjpqfa8zvn593yr3pehpzv5p5sgp9gqaq9r" - }, - { - "private_key": "ead08af4851c6077965d9666fe0a02969fae165f32f8b609b0fa38d42a42aeb7", - "address": "lax1hm56wkmvx5uq7djknrcr2xpqkk2w44ymapj32g" - }, - { - "private_key": "0789d2b85ae49b1964c80da5903ab6948029ac13dd41ece0298a288a6a071996", - "address": "lax1vxc7luzxv0rdv56mfp5qv82j7nffj2w29p52zv" - }, - { - "private_key": "73fbb7cfb12d3ec60def6ce417238edb95920d32c6a59a194f56dc1eb996796b", - "address": "lax1e4k89a33h4vhpnhwcveeq9g4ffhmxpg5cxtdhs" - }, - { - "private_key": "bde9b4e969c2aa449ac5603189de4c214361d9b82c777f52722bf7b729ee341d", - "address": "lax1weujzehtnq7dwmckg4eykvg4vyglp5sz5ts8r0" - }, - { - "private_key": "7bce4c079c5eb2aac4d1eeb3d0b8bba160c597c42a430d1dd9502ce95ccf28b8", - "address": "lax1m94q02t3nkfq878sd85nrq5895s0036lk536mx" - }, - { - "private_key": "8bfb3cdad6e07c723d692e6cb294b257f7bf3b41697f76a1f27890a52de03113", - "address": "lax1s83njs6eaah5elu3xkw4lg5m3msv0l5dn8hssf" - }, - { - "private_key": "cb17e273a5b17811ddb7672d0cd04ddf3f691de86225b62085370ed1e9e69c7d", - "address": "lax12wumfyuzazeklv7vn4pd9qc76wmkerw0medggh" - }, - { - "private_key": "2125fa7a0663561cbb59ca0754b7c67ed7a1b9da49413cc59dfba61e8635d6fe", - "address": "lax1kumcjzfwdtqppt4zh52s97ny38g7mvasnvk0dl" - }, - { - "private_key": "e94377965bce4c921735b060f84b0ff0dc8d981f46efb2735d8e0be22f4fad5b", - "address": "lax1q27fy6v290mxl0fzc43jya75862fhclvs2n47p" - }, - { - "private_key": "addee19671a1bcd6639529c4f097e7254c0c96a15f9cbd63717270ccf206b96b", - "address": "lax1cczcazvxqcmqev3kx3mxyvz3y83e58qnjrlt8l" - }, - { - "private_key": "381e794db2a5e93f78913cbc73f5b24fc187ed3ad1b4270c3eaa15bc17b095b6", - "address": "lax100jm6vjrukwxhc4lnz8fshdecnm4wvpjq24atn" - }, - { - "private_key": "b0748821e1343b256027293557ce31a5145c37d704c6e918bc6ec26d4800d1ee", - "address": "lax1pjrjcs3njrwq6rxn04pn4jvhetjcc5ep93qqyx" - }, - { - "private_key": "38f20aaaf3dbdcb711fbe5c55cd34f3d0b10739cad67e63a42edfe2f2e0b899c", - "address": "lax1wpw624eav6laduacfmvlc9pnevulxu995g0j68" - }, - { - "private_key": "759a00e0b2e0ddd28348c2b0951d177545b2adb4f0217dbd9985e839636c7545", - "address": "lax1zqjnuz8m46m0f6xae3kf7qrs8e5yq9wen2e7uc" - }, - { - "private_key": "c84741e92e79b68ff877e2ecde93c2b1b3cd253b20488a147db82490b99ff702", - "address": "lax1lsj5dyr9u966p8vpuf5fp73s3t3j9nsf4scgh7" - }, - { - "private_key": "fcc142b3f80eb8bb63f6d68f912419200fa35b4ac6653f84db6a584b403b122a", - "address": "lax10dvmxeklvtn9y3jvjxr7sqemrp03ee3ra7xlyn" - }, - { - "private_key": "d2d757a2a76f121142ca8bd67a3b3287da4f8eda6ac32504f4ec74eb71ebea59", - "address": "lax1c253z2me0zhceueqkhm9xy5maccz2whqdjkum7" - }, - { - "private_key": "434d42e5a8485bdb5e4e656b3fceec781d0b61477a71655e101792f632014272", - "address": "lax1a82q8vw9h7eh2rlemwtgduku4zfaazj0kjey80" - }, - { - "private_key": "5205ebd30be8153d5be385824b775c9aebec8b4acd851932af70e25fd466ba93", - "address": "lax105460ys2r3ggy4dlqzpmrxa7r7fzp5cshcj4yt" - }, - { - "private_key": "3c2cc928570a2bc306468f65161de980b1e1f138ff1acf85910022f280334122", - "address": "lax1ra069ytp459l47q2yxlnrfngd82dnfu2ehmwth" - }, - { - "private_key": "1a6beb836ecd36dfe4aa695946fcc9129f8f91db898276b0d81b0fc3f5b3d333", - "address": "lax13sef46n04aq7tkld0msmw5fl4ffgmtdh9ztd83" - }, - { - "private_key": "213cd7934f1a66f8f655b8b25cceb8e8ed767550be54bd3cb7309e79dbe1fefb", - "address": "lax1krjwpavpyeh0mftnh459dq36z3tcxj7ryesewr" - }, - { - "private_key": "f5c2ee1f2ca6df7ff6613e51ff9ebd625156a55915101aed06e47db39118b38b", - "address": "lax14eu43r9qwqkvfrlfr2uplperhdss5uupnlnq3h" - }, - { - "private_key": "0aa5dc53e670c03f3ee5c9759e41681bb545ef9d75dc6c36fd8f37da93d49404", - "address": "lax1mlk65dgag2z4xa6vpw9jtskwdhytf7vw344c8d" - }, - { - "private_key": "241d7422eca934e16106a606520cae1d22d10787a0282b81af8aab13675678b3", - "address": "lax1y4px9694tnnzcs6er6az03ultz9wec7p63mlzd" - }, - { - "private_key": "a6f82cc83709c425b9e6de6f5354b438e860139863b4f531f28427c09fa4f377", - "address": "lax1k5gd88788lu5skvu47rcxnw0utdw5xwc85v4lp" - }, - { - "private_key": "87a6929d399184f18c6ba277322acf27af090d075f5caa13c2601d8dd85065c6", - "address": "lax1r35608avn5t0pvzhc09g8r2azgtlu350pelayd" - }, - { - "private_key": "7a61b8e78c9309216168735bae71ae89e58de09a757e7f84e1f86c08ca9a9538", - "address": "lax1ejva3c5cxsx69ljnwtnsdf2uddvzlum0c3p8xh" - }, - { - "private_key": "474802a53f97a614f3e7816b8f79a5efd97b397712551e7dbbe55e195ced3d2a", - "address": "lax1u9wkl8g6ay2wdscwyhmsxux6kdk0tem36fja78" - }, - { - "private_key": "c6598d53ca4c5a9559d611b745751d7fe63c3c0d59c50e2d631439cb505a0dac", - "address": "lax1empy2rtyllwjkds70r3e2yftr8dfshy2p35muz" - }, - { - "private_key": "0d3d8e4040639ed96bb27a4fa71298e2e5d169c8ca1334d7e35eaa7a884874f1", - "address": "lax1valgg3520greqyl0u2qn736fmled0lfhf4yl9r" - }, - { - "private_key": "f4b579cd96d45b0b1f31f57ef3ffc174dcc25586b5717396b7a2aa0c432ba82d", - "address": "lax1xp5s8f5umtuutavj5rj0fgu2cnw9d4cfkg6zv9" - }, - { - "private_key": "cff4f9a7822cd0ed51add19bd1c9220ef0be3931da1e3e37974e36b6cdde0d55", - "address": "lax1ypwl5jtla9ul3khs2cdyl7ua20ej5yymlsecap" - }, - { - "private_key": "ba2a11c48c359e1c74cee4bb9969fb12572f230d4fb6b13c8f17104e8730d3df", - "address": "lax1n9dgfsqg2rt34jmqgxeqv9llx5l3c93yrmlplz" - }, - { - "private_key": "42cb8d40e5788744d9cd76321a8b3183db1c43372ef94f7dbb8e9d787db8ba89", - "address": "lax1d73per6ftdq4kul0z48tg7tkzd5enef5wrqf4e" - }, - { - "private_key": "5f25646a7273e79369f49a63205a893625dc26bdf590c578e28df469e17cc837", - "address": "lax1u9sjmhuaxtjyjdg758anu534myqqzxvtefajy7" - }, - { - "private_key": "1177764d8ce9b8188133b385a7643c6d76467e20dbc2abe837c49ab0fcb3dc39", - "address": "lax165wkygh7l7vahn0u65y7tgaugvpxf296muvu8r" - }, - { - "private_key": "0fc2606cfa28e835e09da0711a60d277e7524a9e3c02bf70fcfe8f09fea2bd9e", - "address": "lax12v99agzgd3zhqywrqux50wcfdxlngy8y2w6ua2" - }, - { - "private_key": "9a76c77bd68573adc35e87f8c65255085ab8559d7c64519ec0a784d5aabc4725", - "address": "lax1dvnl0f38n0t7y95qspqraqy82sesudlntxsh3p" - }, - { - "private_key": "9e7409330072e2cef26058c2e65d4fa6fc6abf3649b88410d3a98356d8ab3aa2", - "address": "lax1fa7jqe5veeeuhj0yh2esn464ggc0dz9rjlsqxt" - }, - { - "private_key": "62de2337d513389bbcdec2a975f6abd76b85bb370609b3c6e27d0b38e86a136a", - "address": "lax1xqu3h3hdehu7cntyu75dfy0ml073uz2eg02mm2" - }, - { - "private_key": "f5d2bdc3f608328858b8f4ef82e82d4b81e18834ed6099d4f3b8ed2149cca43c", - "address": "lax1sqa52h4c2vu0qgkjnyzmx3q7c2cnyf094hz5wh" - }, - { - "private_key": "a0b1f0cc0fe62c55fc64bc0e534fe1e7305dac02c016238d9c446abdbfe9a5a1", - "address": "lax1htgk5veqmrkr7z7qmynervhgzl57pprm0uywle" - }, - { - "private_key": "cdb3fb69f7c1838292ee98be59da2f6b98206cceec71eb4d8383d3ea9ec20a8b", - "address": "lax14henu6tgcml5a0p52655x2nhkxsaen76m497y8" - }, - { - "private_key": "4f845fd38161ee20d8509336e93902063c56e9ced9993ff35c51dd8dec52735a", - "address": "lax1mnpcz2zstesthzay5vyt4rkwdx6rwg4p8a4wzz" - }, - { - "private_key": "33eaabf711633b8cb573f008dfc3f0861948f6fbdcc3b23afc0b93ac1abc3f25", - "address": "lax1vscnqr03l5fp733rneghy3wcvc674rqr66kz78" - }, - { - "private_key": "0002e71f8a652a46991f8dec3e78af398b2158f14c7e260b981f14c5c62886a2", - "address": "lax1r5qp3wtejnhv8sfyjm7wq5hj0633nt4frqjsd8" - }, - { - "private_key": "c0e321fd9abae0d0d397da28f8516e4b4d5f90ad1f789f3ad63eceda4dae6ae7", - "address": "lax1q46kfxwx06zuvyg5svnnp6q5yzkx7wxh0nkvhj" - }, - { - "private_key": "c90b39feb3a011c36bc0c911f98a384d26a9e944bed60cd1fe9f4acc0472464b", - "address": "lax1ace52p0jkahuc34q00rk9n72lhlq05tqu0lcjj" - }, - { - "private_key": "7ce7328549e3943e87d685f9ea4eee9e916a34b49f1fe2098e7c0785d9b2ce09", - "address": "lax1wd4fa3qrw8pqjunxgj7snca9rkm8rfxtj5x66h" - }, - { - "private_key": "8913aa91cc7d2cf2cb03fede5018b46a52bb1bf780c3eb414248aec64fb185e3", - "address": "lax15um48eggawnurqg9pxrt8jsnv7svqre8n6yu64" - }, - { - "private_key": "694aa79040ccf0937980074defeefb1e2f0e8f92cae2424a8440ec5c2d18928b", - "address": "lax140a3v244pydvfm45d2jfnwq5hqn6m5erc9vde8" - }, - { - "private_key": "5ca91bcf638c7e8e3d2761d8d1e7e9353db5dca624496f91536d60ab54945ca0", - "address": "lax1jn96wqhcanva8xfrkvym32xd4v95kpg4w846l6" - }, - { - "private_key": "d65feb1aca3d0425c979a71fe2eda1108ad73b405c768bc3a9d2d6cee3a63985", - "address": "lax19vcvjdywevvwcfrjgel9t4drzyusn44wdn75ze" - }, - { - "private_key": "0462bb075ae403c17ffae19803c96648b96ff703a39e374f362c2e8de3a1c78d", - "address": "lax1mlmp50nvsghmga5748ds6n23mr8nscr7avpct5" - }, - { - "private_key": "f57b57f361d8805abeb265bfa2df2e8d3aea9e2c9d7cd3e49d2711c58b7c7e8e", - "address": "lax18gd2ctqftvpm54rcn26gajgaq8j5wph06snfl9" - }, - { - "private_key": "dc9316ab6ded4e4c1302539dbe862b9507f4a3515ea3f15ec19f3842d5b9baea", - "address": "lax1gvv8nc8qmxuktd6upk2rq393z6khrpchx0v6s9" - }, - { - "private_key": "8d68b0c58a46d1bacdb4b9721157456fddf7d986e97b53321f2bd8729b36af66", - "address": "lax1mvrp7y8fzyr0c8qhgxjxukzqm73apmxz2ua0rx" - }, - { - "private_key": "33f244eaa95792124ce4946666588e8595b1a1d8d07c6342743920974e54c6b9", - "address": "lax1zw7c8fzls323u4nn59r9dtgy2khzh2x88ysj6d" - }, - { - "private_key": "913ac1b6372e1bb980a74d90561aac02967005bddfd449853ec14984cfde1610", - "address": "lax1nqqr8de5g66wqh5enmqxvj82hqkpaa9ut8ra09" - }, - { - "private_key": "dafd00c70127b7fb2829d5626d300b22897005df85c37286564ed2fc80e3a1f9", - "address": "lax1m4y0qxnlcazdcukgvaksklclh83alx7tdee2yv" - }, - { - "private_key": "0ab8f552b18e14ab32a916d2f0230411d51fbd60cd518bc25ab40019260fdb89", - "address": "lax1zjw7mzsafltwryp0vx3l03yt7spl62j9lm7c4k" - }, - { - "private_key": "673314ff314b6f22c1cf63cd3b3a74e9835d4038a09168c4e2b185fc740a692a", - "address": "lax19vd07rwtvspa28pgmphuzdh48feeh3l66p52sf" - }, - { - "private_key": "25466b2d629287962652db8515c99e2a3b651eb91ebbebebd2e7a05b52f2f7a4", - "address": "lax1y3wmtcm54j4xxhe04f0khha8s6lzwqylv2qmr2" - }, - { - "private_key": "309c1221432ab7f1a520659abeb69735ba48a17473b91b40c4b8acf203975929", - "address": "lax16xtpzh3s79qfdtxeqv83ztj8lqpf4fgyshafh3" - }, - { - "private_key": "508b64a86725193f89f3109ca49dc7bcc9b8018347b84d0a10fd906670c37a41", - "address": "lax180g3zzrn0cd7ngdgfh89a0jynhkgdk0emx8ku9" - }, - { - "private_key": "2e04a43b4e76b61186a95d0928889155b484408e3c14666809a7bb5ea2b9394e", - "address": "lax19948stg8a2u8pn3hpdy57zku2tkjxksytvfk7k" - }, - { - "private_key": "af553dd14a95d8ceed8e08af17b09092015d05ad42696796fdbd4c1e915a556f", - "address": "lax1lxle3h6pyewdgqgyan9yj66l5hjwlgf0npfls8" - }, - { - "private_key": "c20db2aec7a80275ba2ed64496f24f9c4d06f260c64140126926ac9388068073", - "address": "lax1w4qv2n92w43xdg9kvytad8zethqczfufmcnkhy" - }, - { - "private_key": "5175f19e6058b4c659e27c989887ccb49519eb79a323d876b7d4563a929240b3", - "address": "lax1k5kqdgmgmzarjlayuuvc8zwgzh2nydd8lkvv4g" - }, - { - "private_key": "a514e55440ff90225b9f0e2949c67697344975f1193f9ad0a3cac3721b7ee0cd", - "address": "lax1m6x2vmfyw4vtqsaauy7fl65azmzva5nz2gh5j5" - }, - { - "private_key": "a105e446ff43541f4d1695b26728dfe87f1514886fdabd4dec604396417c6c08", - "address": "lax15edumez97c5jkfsz0vrq9ngmww42alq0fy8sqx" - }, - { - "private_key": "fd5c0f37663582a6fced2fcfe79e313176b79e65b629254d264028c6047ed7a6", - "address": "lax1fz0jndk22l48e49mtwa0nsqusgggk9ehunpdgj" - }, - { - "private_key": "1beb6beab8d36869f62837c4c12526420c5c734b19ac83ecd57d2f256e118077", - "address": "lax1a5dvfxnvfpe2trq9wq70qrvv3pazx3eyxvcvn3" - }, - { - "private_key": "1341baf6793207231ba7cfdfc1fd1b5d08024281104d4c4fa73d4804aba18160", - "address": "lax1rrxuvhgqyals0auugzrr3qs0zyqwzh0p48jhe7" - }, - { - "private_key": "8bf648e02194a024e2cb71d31ff9cf01380cfa46bbe64a730f7233dcc2f06ada", - "address": "lax1klnd0g8hl3e8astf9ssgn09ny7zna8jvrvux0f" - }, - { - "private_key": "b257c01a19343d95079a5ed3a18f0f86f30804776b91c0ba7e22dccc243044f4", - "address": "lax1mgc3ker2zuwh70gy5ptz2mmcy6cjaac4l8ye2g" - }, - { - "private_key": "b0426d3758142472e755fa9ede5ccf893715ac81ce30fe4b171d3f6a0543e8ed", - "address": "lax1ahpz2jucrdhcaccj4yx22hvq5xwgv55gas3y4f" - }, - { - "private_key": "c77f20fa393f24d06ce515b02b0887a766a659053025ba6527d6e5a43aaad928", - "address": "lax1wud9vepf2ezc7jjw06ynre9xd5dy0deledgj3d" - }, - { - "private_key": "60fa5d3243f30d5ca6e4c1404c55962edbce37778acd52aca7a127202329feba", - "address": "lax127cy7spmp60zkxx3hasvkcr6tqmwt6tt3ct0wh" - }, - { - "private_key": "c4afd2901d3fedfe0e70eeac1ce543b6e86f8d2ff937624300b14b1ab49e4aa4", - "address": "lax1dclarltkvz9qu5cyy44j6ylu6whs5u2qv2g8hk" - }, - { - "private_key": "b136b9c085b79906f25d0f17d28067881c7410f05ef933329d0f51302bbbf208", - "address": "lax19x53zdpr57khcvedcnm5p4jn737h2y53lsd3de" - }, - { - "private_key": "ef45db917f2399aba02d99d192f9ae75bf5f8effd8bf27c03c125b19a8fb8d5f", - "address": "lax1knk2g4xflhpaf7kka4j6eek5g2md2xjnxvm6j7" - }, - { - "private_key": "7ae5254e23d6b01481fdd3e675d0e919d6b44967fa6bf206413dd1aaf63b38ed", - "address": "lax1qlkfkksdq6rc42lrq3w3v2z640dk908eymwhfz" - }, - { - "private_key": "1846e40f95012d35cf38cb7847d3decced881cf57b5b6984930ea910c38cc580", - "address": "lax1s33lyfujxe3vaz4uuv2jv4uq5g7vgvmq8z02sy" - }, - { - "private_key": "2a6288abf19efb204e17b5c843b6e001a7de939e2dc5e5181a958ae5e25fc64e", - "address": "lax1sgqyujxnktpqka5tdrypceje38wa0cpt0w88jm" - }, - { - "private_key": "dc28c8b4753cd131ea07afcf72260e99e08a264ac90eb5d5fa680981eee90192", - "address": "lax1mh7de7cqyyn3rer7nnj5egt8x2w8pge6prr5p7" - }, - { - "private_key": "79829712b658d76a12f141e807eef2fffa29cf20f0a65b36a55f8903abc5d485", - "address": "lax1ufcxfj2fkk3g5004w90zhf4kst2lqg9h2hf4hj" - }, - { - "private_key": "589cea84abfa60b055923b7ca2b6048c0e366f2bd863677ff2247c0d54f31b78", - "address": "lax10498kp2pv8sphhwl0jspqmaaa5cnfgj2q9t3xt" - }, - { - "private_key": "ebe845a946e52a30a5d57ff97442806133297844397aae0a50cd595c27f7dd40", - "address": "lax155nhuv57ettrvnv2tajkneu5w00hy3gzue78ff" - }, - { - "private_key": "3cc0ba65b06d74d2dc026e1796c9fa18172aebca6f8833f5169545228295658d", - "address": "lax12wr49xx8t356pmffxmc9mf2rgcjwleznlt9gfp" - }, - { - "private_key": "2138254f957a328db06b0184f0a3a473fb51732c955c2b17d2d00145a492959a", - "address": "lax1nhc902canethggy0za2c5s5t4079ulhlqz39s3" - }, - { - "private_key": "e86bad864589356dbe2ba9afe88840283b881b04e78d65482f94bf26c13d5d0a", - "address": "lax196n57va0du5r6y8f7fpph0ucy4lvv0zwyj0sp4" - }, - { - "private_key": "b2fc399ea53b116084fe87ee9f4cb3767c3fc265f14563c30bb26c78cdb48eb1", - "address": "lax12sysfvckxdy42gd74sdv2daqyycqk3dvd3ue87" - }, - { - "private_key": "7c47d4985d38f971effe1a6a3bc075bb9c578807235bc6ee7f1759485e059d0c", - "address": "lax1a570d0jzf5k496xt2gp9lex4qtr88x3aa6d2vz" - }, - { - "private_key": "747e61a987b0ca0847478831b71204c36630a4e16304760f34bb23822a82832b", - "address": "lax1tk6erpgftp6hqm35z8sgxk4qnlwaqqwjsdwpl0" - }, - { - "private_key": "9757a343ef67d95e88da70360e88c47cda3d7f37ddfc4e10d6232f73e27d6ebf", - "address": "lax1jeucp60ymguaqjx2xp5zp75t3lqev2y9umvz8m" - }, - { - "private_key": "3a47f0de5eac25241a62a881c633a14dea367a035ea846786c150baba55547e2", - "address": "lax1cts6sz4jxrucd98cuaezcca7dmd64hcuuy759m" - }, - { - "private_key": "523503b753f6c113dec4e7ed681c78cb58f3fc75b0057db0679c378a168d7a4e", - "address": "lax1u8lhx3jg6trxql7l6nksu35fmnvhhr7yhytp5j" - }, - { - "private_key": "3e96c5b7fc1b5771fce27ef05c1fed1a4010b9d487a2bd4eb141f980a1583cb6", - "address": "lax1ygudrt63wtumpvq3u2plut9dr80atz2v540nzx" - }, - { - "private_key": "c1ff67d6d0a0cc4482e54f362af97ca1ee64c5267f4ffe1579d272652771b861", - "address": "lax15y83zn8ru7jy9zy0zy4c0mus60wtzgw69j2lva" - }, - { - "private_key": "4d3520ad8f3a861b54b03702f887c2a795acffbc0389af38fab8280eddd9a15c", - "address": "lax1jd7ykljmzn6v2nnv0gtsvzww9pjzjmcw5nr7nt" - }, - { - "private_key": "13a49ccd0516e639083ad86fc288f24c249c2e5a8ddbefcfecb9b66671f5721c", - "address": "lax1lz73vc7u3w4ra8sc0s2nauc2aajq9992flwrzw" - }, - { - "private_key": "5164ca2cdef4c73ba18a696cacb8357d5e662080dc55339bd4fbe2b0f11d4393", - "address": "lax18jeqxwnrqvma7y4q0hc5x4mnah7285sp64amu8" - }, - { - "private_key": "a4b192fee1f20dff386a41daf0622bff75932d21bce57b52fe706367a45b1598", - "address": "lax179hvsu43h235jwm67mj65t4vnjszy933q4n92f" - }, - { - "private_key": "942bca2f2a5f6a23e6cf87210d333049ecb2514183c0113fe9b7a89d3cc51233", - "address": "lax1maz4509j76pcj492h9k7r7fmmwhmfnpn0509kp" - }, - { - "private_key": "5d7708d833222581641d9b316b9974fa5182eca436f17e1043b7884066e0bc3c", - "address": "lax1xcshcuy4rhrensuerjyg8jeflyyxsrl6ytxcez" - }, - { - "private_key": "bbfebdb9119d133372b819074fc8e5ee401eaafd200f4ee45856edbfea5635c2", - "address": "lax1zdrwha0h4uqe59ltaswx7avs4nvqy92vx2wx6d" - }, - { - "private_key": "fe3a92982ac71e932d3c2eba3340e222e28bdf5b778c3d7147b977e8002c0dc4", - "address": "lax1u9nylsd7urfs9lzy42rwzeerl4r9j2j84mdu35" - }, - { - "private_key": "9efc84e0590dad808e811184cea774b9f52cde740f45d76c94508dd96b369112", - "address": "lax104nmmj7sxd94hhyez8s7qdqcmcnchqgnfud20a" - }, - { - "private_key": "2dde51835a3ff70eae1dd71fbbc1968ab3f0349f53d967feef212d88bcde304f", - "address": "lax158vr9jka4hvc2dpalfppajyv479rw3uxmkkugz" - }, - { - "private_key": "303ec9842c6fea425708cc282c0abed3856161ef412b8159d6fc8d92911516e3", - "address": "lax1yg6rk5r2etumn5sttwye9438g2zjj03ec5dtuf" - }, - { - "private_key": "ba95c787b65a8a41784800ebf8bf32f1aac8b684e1da12946b63745a357cea0f", - "address": "lax159u0ykxpanvjp98dt8ahlv0w8am3dywwqysm46" - }, - { - "private_key": "bc5af7a3543c283c58f9db38e469f4469f98c2e99333f55ee83bcaf734fe6274", - "address": "lax1u7r8wqe96a8d8septjzzk0yx78pdypeygkqz8l" - }, - { - "private_key": "5be28332409034c360c3503563e86af2c8d9680f623bb6ae530497e8d745f0ee", - "address": "lax1e6gsp3f3qta4hwp46sqjc4husht0azcd4vqnxf" - }, - { - "private_key": "383555b0d72a65f2024ec7d7a4b0c8d1b775d4d4e9cb5838a8cf9dd624f3b269", - "address": "lax1ledphjawfg0ku8prkc48hrdk3mzmv2qnx7a6m4" - }, - { - "private_key": "d88fc9fa48566d7781a541778dc3aaea0cbc426754912a5585198dbfc4043298", - "address": "lax15003mthtu8allhzza29glcm37fner3gpx9qals" - }, - { - "private_key": "86304d36d061d3fa77dbc4603459648fd401fce89c81b51e58ff58dc43e4506a", - "address": "lax12sd3ep4wn744qly2wxyxnlt29ml546f0k3hhuy" - }, - { - "private_key": "1f8e89345150f959d00f7dab571efc6628d9760e8887368e8af9792d6b8dabae", - "address": "lax1wxe42acywkqjt987u6teuslqhc7f7c2mwznsx2" - }, - { - "private_key": "742976029923bcece12d9d150410da3eae5718f454e51cc2af2a44d28c1a8d58", - "address": "lax19kr7cjaq5z3zzalkx8h4w06gxcg3c0htskmqsv" - }, - { - "private_key": "6777022d516c0b014b7457f90c13e2227e6d4d655937450d58aaacdb5a1f9baf", - "address": "lax1tc0wrp5gtvguhd565t705s52arz8nc2apked2u" - }, - { - "private_key": "8a4867184f59046fbfe3b29ae339b928453fee3bfe2898a38fb8a7e647d2fd93", - "address": "lax1sw9g737sa4e9weffdvnyxlnqsejs73grmfkzr8" - }, - { - "private_key": "1318521cc147612c8b21aa5f90b9aaa15dafcc3327b274e6434c6f85f83732b0", - "address": "lax1zghywnncg5dy559pydckul7jj9sntn6jt3arx7" - }, - { - "private_key": "fd841ab68c68cb4639acda657e65bf90b0875a3d607bca9dcd66324f3b918628", - "address": "lax13dynxja2vkxtyl0zlyc99mny0an93d93guxkqg" - }, - { - "private_key": "46ffaab5e6f7090d10aeebeb3760ef4b64e822ffd7fda92435257041b834845e", - "address": "lax1sajud87v9y4na05lyskfpvrmwcfx22katp9km0" - }, - { - "private_key": "34c180279780ab724c17f47b7192ff4fcdde01761660b0bb4c3d278adc98a7aa", - "address": "lax19q73ytv4xu4sfffgvugjcquqg4sq7c5dnlr8av" - }, - { - "private_key": "653cd56356109b6da84a47c1f6990b4ff117ca18b871b7c1195e56dde911b271", - "address": "lax14g2j4rs548c88r3rd78gzh5ceek7unf4swe335" - }, - { - "private_key": "b5e8d19fca8aa4cb4887dfd72dc7657b41ca0d7696294869bb7a9b54c0b847f4", - "address": "lax1nx8f25zvc34cy3c5kpa7egj5jd0q75n8tevpn9" - }, - { - "private_key": "9a7da30d5cfb1188acc3aa0ea1408b8e3a59ae871e7a6cb5913b3efd8863f80c", - "address": "lax1qgg0vandx3kw5e0ghaeu8xhk4j92fvsrp2ltxd" - }, - { - "private_key": "d272c4803aec3a9b0a3c95ab5ca340e9b6888a439220657e46899f10f211779d", - "address": "lax14lsaepnz7a0ysqjks3rr7wlrl2cmgwp3nhausr" - }, - { - "private_key": "3d2aced41810918497f5df4c8702bb4067d000def7e61e752b71fd454c7a33e8", - "address": "lax1f8cy3j4q7jjcwamx6umeqv8cwy3k0e6la0vs8l" - }, - { - "private_key": "448d7bbf6430849293a3029adcfd8c2addf1928cf6869125c49705882fb56623", - "address": "lax1fgn67av0cqssxlmwxgfrcgua4u8ekzt75xjh4v" - }, - { - "private_key": "d4ac6aec65da06d0d233d6bc6a1b612b8e3888873a5317a55bc37252fd8e9cac", - "address": "lax1t5yyn8w0h3l94500ev9cy6slxszf7p46vtf0ds" - }, - { - "private_key": "587a1d95a8be63736f11b1d10140bca15921ebd76b31f84157273bcc4a08715a", - "address": "lax1jexq7327fuww593xc643rwmmuh7ww5c6s9f5cz" - }, - { - "private_key": "c152165db04457d223db0631bf766de90472249be6f4aa0e086616cb33505278", - "address": "lax1dkf4xd2wcl0d35xf46jd6uxcwepyappyz478jf" - }, - { - "private_key": "f668530186b36e2c3b61487bf65e5952ff5be05739bb1735d55f16763766a3d3", - "address": "lax120v2mknvezg8umv2pmmlvzvfsgmq87wc3mhc59" - }, - { - "private_key": "a741d02850863118ac971230557fdeeaa75089dbdaad2ab7cf2060d793f2e27a", - "address": "lax1lhvanf2jk8zk2qnfn9s8r3mtyhr2rr68afwprw" - }, - { - "private_key": "f0f72d0b544e2e5c4831424ea6156c895f9ea382e2233083a8ff2917495f7e82", - "address": "lax1x4cuc7xxyut23vc93mr8prm2mkzt2cpk9c7387" - }, - { - "private_key": "8802a80c942af32bf8f9e9c9ab7dd1c0cca4b85091a0b8d810f89358b45a5f19", - "address": "lax1hrqwjefcejc44h3vqvcjfenah7u849k50phnex" - }, - { - "private_key": "2f65a31ac2e98694dac3528172892f16ef2657bd6308a86470ff623e0ef56a91", - "address": "lax1m9au75yjx8lnl20jkfet73x8yhm5j0fjw9jqan" - }, - { - "private_key": "4e4e59340dfb569e8f8f7a59ef55e7e75ce6caa7659c87b9c91eae5158e555e9", - "address": "lax1m2urvc25gee585ny8ww8vvq6l56gaz3m38h45y" - }, - { - "private_key": "386ea1481a84c5f141cdfaedc695b6f50c47fb93b3d0afc5d8b97c5f11ea1031", - "address": "lax1khqevym9szy5mxnrf9mea25su73sf0aka6eteh" - }, - { - "private_key": "c682cd84a7aaa1adb59f56a595edd0ca812beacadb7db042c4b4373f90d23f64", - "address": "lax197e34m3nfpn8r0gqjeyzdtpavh8djfv3nreq20" - }, - { - "private_key": "08f56a3e3c79120e34831084102e6189aa494bb201f41af186dceb76534e2471", - "address": "lax1e5h5y937nt8gcf2ethqghyayzqh4wza7ry9dhc" - }, - { - "private_key": "ada5101928ae5e1f51407bd2b51ddcf3bf130c4648f7d76ee8df0b373cc4ec2f", - "address": "lax1td47efm2f5qdvqj34q9tfwwrqvsmrqn8klh0ck" - }, - { - "private_key": "d8e0a59bc789dc3f926bd0c278de525058cc2938e9553538ce8628b97f13c71c", - "address": "lax1j3ufu3ww39pkpfaax2m0dj49tj86z26d5fw8xl" - }, - { - "private_key": "53af9dacc82d1cce44a1dc55cc5e9967b36271587165dce03d466d12dcd334a0", - "address": "lax1dfmaudpwuwlsakcnueth366qxry8g4qem3hhum" - }, - { - "private_key": "5f229c155769d8588c7e011c26b0b9c30283b6b8e1d960fa2a7a4f11d5bff6c1", - "address": "lax1qjuzf8k3apgmuup0zxp07d7njskkavffxxwdkw" - }, - { - "private_key": "0653bdfc1bf733df29fda3c9a306e089eafc9342445c2040a11623ac442b465f", - "address": "lax1akde4pp8yjmv38e9rp5n4f7zlmd6s5sse0c3ej" - }, - { - "private_key": "0a7724e959005b88c0825002d10d33d0e740e5006ed96f9a62c0bc288dd4727e", - "address": "lax1m2vqvtjpt9gkc4qtpc6prnflrchl220c56gyzp" - }, - { - "private_key": "c5425416550cb1270da0fd9912faa67a6e3edc9bea519861402511bb8ae074ca", - "address": "lax1wvtprfsrmju0ws5prc6kr4ld9ljyrfsv8j3w2q" - }, - { - "private_key": "e49d2585d0cb01769ec6fefb3bed4e1b1b626bbb7ebbe6c2f2f7c429c7a1e117", - "address": "lax1tgcppqdaprtp4c46h37cfcrx70kd8nhgy69pn3" - }, - { - "private_key": "16a16bc4270b612d85912cd0fad90c5675e11f7d1de2406985bbea8444155ebb", - "address": "lax153jq868euv9qd8valjuwh6j4gen7ydlqkljysv" - }, - { - "private_key": "d2bb6481c183dffb44c9fffeb9f692de9a3252f7a40440ca84cbae83742cf613", - "address": "lax1tjar2frxnvzmjwcc53xh8r5rf3a0k9mzmzwhsh" - }, - { - "private_key": "dc99f5ab770186c95c79e3e61392f3d846f02df1b68f4cb9954d433be580dbb2", - "address": "lax15dck3cfgkv9hsnn2x606sjg0jsgz7xa8pe80zm" - }, - { - "private_key": "985e520fecd0bacba67182c37b2335b4b599a412843115a72041f42fb223bd98", - "address": "lax1gjfaz25ydw44yxgad0pgasymjt5x9pqlv6tfka" - }, - { - "private_key": "2d9a2100d7e6c9fadad17946301e2322e8d099e8d72b0cfe63150de313d62fd7", - "address": "lax1v5jzkjeup0erl5p6cr3y06ehcuyfxth2vjhgen" - }, - { - "private_key": "a6dd8d65f811515b6004d974b43cc4db8353b40c4b6e7dabafeae48c474fd8d3", - "address": "lax1mkmwpuuspw2jv8rghkl8dqgft65ad7xm2lswgy" - }, - { - "private_key": "325538a909e36b614a1868ffd472b1f9c96f57b56158aa6418e461014d329dfa", - "address": "lax1lmzd5s044h42wawvp2qe4kwjptcxva44vts8xa" - }, - { - "private_key": "92399fc7476d504942e3090ef7159c85128e652606cc1145126b586889779144", - "address": "lax19vl0e9dz0vx8arg333atk4lcpwxmq959ee32q0" - }, - { - "private_key": "a40bdc0f0e3e94b5f6bf6ffcdb71feee2caf785a6f4b0b0417f65afd45ab4cd5", - "address": "lax1gmd4z0mexufyfyh09xzr6s76xall2hqauenysw" - }, - { - "private_key": "b98285394264e59d3009219428b274f92abfe4ca7b994264b84720510d931da2", - "address": "lax1znttmmaelkls973mkcxpt0c0whu0znp0cjy7tl" - }, - { - "private_key": "82f16aaa0909a118612d1de88d4924a2ac2e14110e4547db74525082169af8b7", - "address": "lax1yn6sqdvy8sp28lv6sz0vx6gusezzk04jewn5nt" - }, - { - "private_key": "641f900af5a009b8ea36ed1b6ac156e46366c8fb32fa1a1d2f00a79a81a8315c", - "address": "lax14zjzhqtr5mdp0j9nmr03fkx25pvhm2j696x4qc" - }, - { - "private_key": "1638c1909245f3c2d6e4e21b4cad31d245338251ded1471b2abed728a7df374b", - "address": "lax15ckf3l2vk95qhr06v6udhgq8jdlv67ya2ajmfy" - }, - { - "private_key": "bf3037e89c9dddc253680b9ec3038ab8a30fd2cb471b135234916906d918d417", - "address": "lax1kxsz4jucrpgskjut7klnpajqk3ak99wz2gadfx" - }, - { - "private_key": "54e036ca91eab7b4388dc9c9dbcc1b32cd9918d57de62aa39c0df108fa718fa6", - "address": "lax1w8zzferfjtmfnzer3sm43hjrmfmqx4rxzcewgz" - }, - { - "private_key": "1e78e7943b3491d6088fd5f057a0157694a3ec64ba678629464b5b5689e7ceee", - "address": "lax12vqv630aqsne07khrw90cm0x0wj4a23w89njf4" - }, - { - "private_key": "65fcf8b9d6fe1793b40fabe8a73309a53a0fbe57edc4faa366076a255f600857", - "address": "lax1pl37h5md7py80z82a03q6mekf39z2vt866uay2" - }, - { - "private_key": "05c58ad77d1506fae8b39557e2fada383caf450d1362188d575a1ec0cafff701", - "address": "lax10mur5859lctlxq2h2m7sh4k5rswjz2undjvz40" - }, - { - "private_key": "446000204b181505151b08e2ddd38222458dc3da83398f0c8551009a760f750b", - "address": "lax15mr6p705y4nyer5y2wxvrmga83gkk8jvkc2shv" - }, - { - "private_key": "46d46c8852c5bbca270e02a51fd6548c263844e0e0315fc3c3a443ef03c2bc21", - "address": "lax18uvjfrjztkg6njazu3w6n59ypan7e7e76lchp8" - }, - { - "private_key": "d36831064ddd22807e8c4f41085dcca58e9e3a5a02ffb48acbfad6dd1bd3505f", - "address": "lax1h6087r7gwhaf2a8c9le6wqq3l932q4dj4su73j" - }, - { - "private_key": "f66cb37a4f57ced769ed3562c6642d2c5149643608454ce8c95fb6c86fc78310", - "address": "lax16yl72mxkqcgntsu9hclr3pl5nwtmf72v0226rn" - }, - { - "private_key": "2481b0a2f5c6a96506164a68a6a672e5c764aa0cd0eda86936ce2cf8b9290e5f", - "address": "lax1l42vvqzksjqc0fh36faalt5fwmt06zwevcztzm" - }, - { - "private_key": "cf919f34445af95306b1062c30f3e4d0b956384f4d94fa7c655fc211d22da8c3", - "address": "lax1myutrvlwlv5ln4xt5jcf0a2zjv428cegy9r6xf" - }, - { - "private_key": "3bccf72df5d282a97ca91556d7c6c46d9f3b62a2ecca744d7764450f8c24cd9a", - "address": "lax1adrnsyh5hzxhn2ntczetyzp9lenrljvag24u75" - }, - { - "private_key": "eeb7a4f08486c497910de97328eb395d60b2eefc267e30fcaf8663a06ad55bb3", - "address": "lax1es66g5a79ys636rw2wurecwmjem9ffkamzxd90" - }, - { - "private_key": "01ca598792c365c5a9195095bbb59dea2bacd610bed38c95e3d4f568abedbfc2", - "address": "lax1ktmqauzdd0jrq2vatq7mdg68tfdsmxp3x3keef" - }, - { - "private_key": "6c8c81d4164df269607ea3a5d79cf94f66d7ae7112ee03002a7e76e7bcdfdd81", - "address": "lax1fevp87yuua3553wks3etl06zn8rnm0pz5cg67d" - }, - { - "private_key": "8266cd5106c358442527437ffe38c97635a3945a73e09b525ff3faa550bf6f73", - "address": "lax1xv2pdzy57xr5ae0x2xwjpser26jcht6k0n6m5t" - }, - { - "private_key": "6596163936e3a47c4811e0d7cb4714314bcce22bbc7724880925436cc6d5201c", - "address": "lax1lv72d05gacmavervayx50h27yn4wkh0kvpsaxp" - }, - { - "private_key": "fd578b711c5d29d2e13df27f279d70d6f3abcb31365f775b103762dbc2ffcf4b", - "address": "lax13lrxcu5ldmd9ltmynr6rgugep22s680wawpwhx" - }, - { - "private_key": "35e300905084c430a844835da025a445c3792b3a87bfef5909f19f065e1de072", - "address": "lax1uxnnah4swg8t7jtpf9msn5nperzsxvmvmdmw6m" - }, - { - "private_key": "6faccbf7ff3065721c53338ccc9d40ce38289012bf14aef46482fd6d5042392f", - "address": "lax17hej73pufdvc38mmqjfr0fk84earzga4gw42ag" - }, - { - "private_key": "e38a15abdee4020d2e1d0fd89b5da406d363655270b9b079b3a255c3affacc67", - "address": "lax1elnzhfflghpf4ck5xlwpdwwhp3j0rgyvnz9q9z" - }, - { - "private_key": "c24fc4e8eea39dcf01a0163dbf5b6dc915deded8dce09fe3a864775c03561101", - "address": "lax1qlje9gnkcft3pm0vn7c4jc754g8z7hlp2fzvdm" - }, - { - "private_key": "63707a946d8ea0b203655f2dfb690d45a02b52acd000f2c2ba56cdfec28e7a4d", - "address": "lax1n9v6vcn542z65tt4uzarduckkhwjd9rynkkmhp" - }, - { - "private_key": "f8a6b73244dc78a7fc87510ecb838a31e68b621110ceef5b6981e440d02c063b", - "address": "lax1lp93ec8qr8nzygzy87uuxumf8kv6q76wat233n" - }, - { - "private_key": "c2011b0b37e0ee5f97c72b4afae9f92bf33648e33f32ce56abbd6bcf35008403", - "address": "lax14527a25ft8lck4xd766ujm3l084q9pvj64r3nq" - }, - { - "private_key": "5edb7bb91a1300a16a35fec53a9a9af6b7babfe87cab7ac103e881480489f4eb", - "address": "lax1jlr38wc7mdxlgcdeehp5rwgsgu832yz6r4gqtq" - }, - { - "private_key": "71394daa4b7a40b91e46b0d619b4e8a7a501374d917bf7ada450c0bca730026f", - "address": "lax1l2e50lgp8swr338mngqcrru4936804kycqqvkl" - }, - { - "private_key": "962c80f50755ce3b2ad11790c6a0ee950c77122f404cfe502cbe7db540099706", - "address": "lax1rzn2d64rnmyennr4akrrrdyk6xk8tz3ghg6ayk" - }, - { - "private_key": "1e98a2eb3eb98d1cdfdeaf0d5fa9d233864e626696eb87433c2742d5466faf1c", - "address": "lax13a4rckeejjxec2dkwdgnpjq4c7v390kk6tl2cf" - }, - { - "private_key": "17dfd83d2fdb3c96634bdc32410464690b09fbf87f73b256140d3547cf2a762e", - "address": "lax1s5rnrys3r6gk2807s0fny66qsgeu092lmkfdvw" - }, - { - "private_key": "6259de479dcdf7732a12dc031785fc2fede5c377744a5937505333be5e0aa9e3", - "address": "lax1ghv3kh7u39v6f6zkpgvpe7mxpu3375w2ad3hyu" - }, - { - "private_key": "8068360600f35d54dfedb201b188de104b48dee1752461571778cfc7321a01ca", - "address": "lax1q40jndh23qdj2esyal40nquuzp7dht4uamyxa3" - }, - { - "private_key": "857ff19e2c3f7a71f83338111a937c31932ba02643f168add3565a09076c5dc0", - "address": "lax1qz4arz5guaexu69eqsuj6fy2xz6js4hf9p43fh" - }, - { - "private_key": "e89d1b294f46ec2657d8ad27937f8f8e0917973e1e8e4edc0fff64422d45be8e", - "address": "lax1llgsua6z5p6wezgvzypah7vfn7rdz2waqd2967" - }, - { - "private_key": "c487f7b8875f3161dab005b7caeedac15ffd8844ad7366596f6c0a80accfd636", - "address": "lax17cyml2upngcqca3tlczl2j7zavlugdckftc5d0" - }, - { - "private_key": "672a6c6525fa51618d795cf574053a6eec7fbe02d1d7ac0e8512dd038e320a09", - "address": "lax10s0r9p8h665qjdxmjha46kj6s4ddmnrzr97nwl" - }, - { - "private_key": "5d8cbe198aa76ed4e2e504a5a36271c02a89c6adb9b8d104210d037ceb7660ad", - "address": "lax17xwxj04s98sj6p662rxxytgdscfgdtlw0lnfgr" - }, - { - "private_key": "3135b547814b5003757dfe314cea52a1408a3d3cf51b31f8670f8cc732d4a573", - "address": "lax1zeha6rx82x0eufshjvyq265cf8pu8fs0ysg8ex" - }, - { - "private_key": "d91c772c162986858c866b4fad0213b008835e7aef687c972c95773c94628174", - "address": "lax12z84q3ljs3pmjz4wv6jv5rnql3q8k5kqq6hzs6" - }, - { - "private_key": "91a0c323ba663ed415ea014dbc7ddf206416c6d73444b0be46beeb966b6544c9", - "address": "lax1tgjlau4r63vfh57hzfn30q4jqtpwg4nptquent" - }, - { - "private_key": "3f1625f42b4e194d0df24b1c5d9f6018b37ce3e341b15b63fa84a037e1627a96", - "address": "lax1ajm0llw5cw987mqnvfnjqywlqrzl9rqvpn6fkn" - }, - { - "private_key": "476ecdf3ad185d58ee04c4dba5d0b83db14bdab37a60fd9b8f45227319b9ca96", - "address": "lax1hv5g3lnpz0fuc6grnedamalxa9z6ey0526e63j" - }, - { - "private_key": "2171d0e528db3b1bc0b551f57ab05f9968420783850708df592390e813695eb6", - "address": "lax1dr6zwpygam8vhe2c3hx2s043cecgutkvhryswf" - }, - { - "private_key": "c98046506cb261eebb4be23e794115e45505028111ca8609bb1a1d9d3c08529a", - "address": "lax1948z2y3jzs3f5vp2we2jqwuha7603f44akc2kf" - }, - { - "private_key": "f1e3d067926ae6a17d154037c963fd84816041675eeceb8dd9e08e7d730776e8", - "address": "lax1txkk65m9a2z9a5yyrka3ptk4mmuy6arqr2v8lp" - }, - { - "private_key": "d2a48029c6131695fb6fba4747e52228360bfe4f0f482560ed61d3c1a4ab4607", - "address": "lax1f73mkc6g4d8rs4xkc8mahkrqjjpug8zsrrgg50" - }, - { - "private_key": "91e5fa3c6a11d273f345bd2ba33d666946cc531255837b9bc30f89e232f0c0ea", - "address": "lax1u09wq07fh0fp63mzdzs6xnnhq87xt0zpdfh9g3" - }, - { - "private_key": "cda22beccccce67ed68df31c780cdb50c37415b4a68cfc7283bfd9a56ac32646", - "address": "lax16cnswfzmxy23va5dtwcmyuvy57n5e0gprw4nvt" - }, - { - "private_key": "8939206805c61a27cda6304a3064c67513a96f35257ef1369dd30aaace477279", - "address": "lax17qd6hnjuxuettadrlc2qrd7vhxnpwqu2vdvx57" - }, - { - "private_key": "4c0de58f143044640d58ce92df8357afde4245f84e8c425d90ea2de788ea1737", - "address": "lax160glmch5x5ks9yfvcapxtte52hc6dq597h0vll" - }, - { - "private_key": "4dc9132689e701f1dc10d46271b4cd93b1850c484cbd688f8210a187db39aa70", - "address": "lax1cm7n42xswcqsvpyrmsg2hts5d67d5kdtrhsust" - }, - { - "private_key": "9dcd61f6f25ac37642f9bd1e0b6fff1f7462781fcfd7a13c3d7f94c0dfbd9f63", - "address": "lax13hppv3kxkzakvwnaakgf5z8qhu9uwn5q0g04jr" - }, - { - "private_key": "71cf78a7de4214cb9c50ab4fbb3c7501f61e2c0096abd8ad642e508dfe07da79", - "address": "lax1nqawpwxjgrg82dczhjctsn0dz4cxjgt2en7gss" - }, - { - "private_key": "0d8113dbcdbc40ed2ba7a32d682173a76ca4c033581dd7e7d850bcfb5dfd7dcd", - "address": "lax1zmcm40z2shlpqk2c5q8gr6hghd99s9dk7pk8ua" - }, - { - "private_key": "fd77ef248203d483239c92704ba0726617c29bf05884d26779dc98844a8b192e", - "address": "lax1z6kn8rmkurtdunery9j3krva720pd8mr4gpdes" - }, - { - "private_key": "42309ab906e72a45d02641fb6de199003987731f68752a544d308285b1041c8d", - "address": "lax1w8gp5yyxj3nu6ve30r2paxfp7z6h0zzuaqmtkh" - }, - { - "private_key": "ebf8a7d12fa1b01df9f1ce4c06854563f0a8118ca33c23cdd501312774d7eb0f", - "address": "lax190uy49mzgmv8j55y9gddsgg5huj9js5dnsc806" - }, - { - "private_key": "15949a1ef733cd7ab5759f4293729d4ca39ae700da4ecd427d6ff75dd22ee4c7", - "address": "lax1azfrapwljku3m9yfea9sa954ug0pm77kgwgkjs" - }, - { - "private_key": "a77a887a56011f36f66e373f9a7579cf347071892e1b346f5540cf77d53b670e", - "address": "lax13t0qdh7yg6l2v6jmcvj099phewy3q9cywy26xf" - }, - { - "private_key": "0fa20c771fca85c1d9f75ec3767f72edd3e4fdb19330fc00deeea41f6d59d995", - "address": "lax1cj883390tggf74rsr4w3tkaa2sfa9e2am4aveu" - }, - { - "private_key": "d2eee8681cf864002b6a83cac813572358cf6362aa40b2d250493f34cd9fa306", - "address": "lax1ne845xrauzky85tyc7jy7gqu67s4ell97ugmhg" - }, - { - "private_key": "e2f47299b815ac46ca20a6e5c3b2c133b69a10b2e7903034afe02683797889b1", - "address": "lax1f6qkd2mmw0wqx4s5c05l2tng7ky8nax8kp2c4q" - }, - { - "private_key": "44a314a15b6d7ffdcb0a891a64c678710238f8c179198e5d716539da46f2fcf6", - "address": "lax1hshpq9g05djvm3kutyzpa4wwcdell7g73ey8c3" - }, - { - "private_key": "24a4cc27fc86939fdff01af52ad1894ed0845598bf331d6336ffe624c9814e6b", - "address": "lax1g5c57e07edh96hh9eykpglhzkxyswdp557zmds" - }, - { - "private_key": "888872506692957f3966158fe2da4a705e2f30d243b58bd17402ae0c87f16aea", - "address": "lax175czr6l8wk77lps6cxezssa8vwzr983zcudtjw" - }, - { - "private_key": "f1ec833bb945d422562997475f793ccaeebac97b0367cff9f734fe0b9b6cc1bf", - "address": "lax1tu3kmflvvw9e77n0zcrczypdadlaw74clf5xx0" - }, - { - "private_key": "78b9cf34345ea966d2419ad1409ad6abf4b2855b46170f4f4529da31e7966c3f", - "address": "lax1qjv43x3wqtlqat5mq6g4fver83nu7fvhjqmfte" - }, - { - "private_key": "67b0a556d035231ba7c15e5e3b708edbba592b1ac7b7ddb1f799e62a779d57e1", - "address": "lax1h3avem40k4j3zyvnm4m2ywguknv4nl5mwymelj" - }, - { - "private_key": "9cfee97375c9e65494ee4bd237993cd8c752467a6db52c40c5aa2864adb6b281", - "address": "lax109fv6yy3aj0uj4f5c8s2zdvst0lsgrp47ruehc" - }, - { - "private_key": "7b4ff62311ad490f344309eb2f36d6a2f72986b5b5557ba47240068a058fb52f", - "address": "lax1ejs4q8rj8kdtafaz4xc7d4g7r7t4epqxzwhu5x" - }, - { - "private_key": "d9af0b7975e47a5414cc1f1255021c5a3c893c4d4742c425e58693d63df0d80f", - "address": "lax19z0w23adcsw97z0twh4fugc7nsh5e5q35xpxlr" - }, - { - "private_key": "f7ebba621af2f9b99a08989967e36d9e8bd7c8d1144030293b6a3a472f8573a4", - "address": "lax1x8v67hpuf3l25df9am3mq7nwm7lp9x4q4plhmz" - }, - { - "private_key": "855d152f3d850bd8e5b3e14af73549fd6957b2b78dc1ecd8a2bd6492dc7cb803", - "address": "lax1ga6h2sfyqxn5hna8pv6phcs0cu649s7ujhzx3t" - }, - { - "private_key": "22805152b97bac4985c1ccc9a7344900f762144e86454fff7dffd6f0fb5abe97", - "address": "lax1mx0ktg239xfvwah6rxg3j9fgqp54jmuzpmnyu4" - }, - { - "private_key": "c29bb571e267d455dc5777987def203743ffe04aa57addbe69cb605cbfbdc70a", - "address": "lax13anz9dvrkpg2u2p03vearrsyn7r7ru8x273m3v" - }, - { - "private_key": "370c5b11a9ea446bb3b98cb42ae0c415985cbacfe0021fbf8b9bfa985fd42165", - "address": "lax1md74ft3yk3xry6y88xns9rfnueyzu36rx73urw" - }, - { - "private_key": "5677322538c78293ba9c10ff3824c717082a72280309c3522228a104f488e75a", - "address": "lax157dx0ze2zvxpxkt4nhhhxswv0qa0nuz0z4p28a" - }, - { - "private_key": "233aec9ad2f785e8d54620c5141a3b842268d413ec8ece0d1034a881b512f30c", - "address": "lax1s55xgj8qmexyp2ty7xvnnx4tjevp6yg03srm2y" - }, - { - "private_key": "b670eebb60457a2af087b5a7fa7979193f01e4b778eeb20d0b0a90014c1eac33", - "address": "lax1sd5cqy8fnnxpmlvac8ewjcxuuw86qq5xaar88c" - }, - { - "private_key": "6d27fad8854ec4786b887ecc0105fc675c4d42df11ecd709f2a9d99a04b36cc6", - "address": "lax155aqkdqvfw7n4nce6s9na3yxfvnqfycar68w5d" - }, - { - "private_key": "7f0ade2ffe5c6076bb2b6749d57be805733169404207c4dcfec717b72adc7a4e", - "address": "lax1zh89wrrspa47ma527q6v4r3rjpcl86r25kvsxz" - }, - { - "private_key": "2aeb39836627c7774150008d7a60277783856c5969d0ec812a71821628de930c", - "address": "lax1mk88uw6ymzcy9dqmk8vxv9dy98jy7444w88l4a" - }, - { - "private_key": "ade055f294f0dbd4c401060bd936cae6e7ce51cb397c5cec0945b97124b151a1", - "address": "lax1zak4v95z9jrc00qyuhj4g4tckejmk3ncnev2wl" - }, - { - "private_key": "1295a413b66d0072011a97a32ec2587fe4246ecc1fcba322db91cf4d00f482f9", - "address": "lax1nllccz84ndvu2gnnn2z9kwcchh6phh7yuvm77s" - }, - { - "private_key": "0e67d55dd6a3842e529c0c8872dd5916efc1b8f2bd91657b9a6383907b6468f0", - "address": "lax1ls09y80lw66nz5t6rajek7adzjuqq488kst3uu" - }, - { - "private_key": "7e4d203ccf20dae4b0c48b031c40babb5589d94c058d9a77dbf35cda90f9d248", - "address": "lax1la63h0xnqfe8wjxelm99wy0tzatf52znrdvgre" - }, - { - "private_key": "ae24e80e2aa4ff85d1df3fc1c7b7fa4fc7097026b38e8544e45f5629ec2b30fc", - "address": "lax1tgyf5jj8y6kxcjw80tcatczpyw305x7ke2zr90" - }, - { - "private_key": "6c6f788e8f5db433c0479750086964b5084444487714aaa6ac9de35dc9bda72d", - "address": "lax1zku7uh77jealvlexpkpmv24txhsgfzx34f7z75" - }, - { - "private_key": "d88fefd1a25be559cf7dda70f397b75fb6b1536a7d4a730398fef2137c96732d", - "address": "lax18lp5pxcwgh4z7psetcyjpe5ds80r8d49q4yusk" - }, - { - "private_key": "8d12b1d8725d4cb38367015f09b9d5e2beabc60582ffbb45447f67fd1a4309bc", - "address": "lax1203m6eg45q37xy88ehdjvx6ddrq5znvp6elfux" - }, - { - "private_key": "12bc6573b09d20bd34aa57c86178ba38223a61972c89f4f2ec346e4b150acff8", - "address": "lax13aptp2xlr0hy9lg36ztgr3wyrp8p8cfrfkcsdz" - }, - { - "private_key": "08d7dad63db8570aec12e19e79c8e2e04276b9d5c0a1fdfa593c8a73168d44c5", - "address": "lax1wsv6sq8y370dapvtqa2a3qmpej3f23g3nsf95q" - }, - { - "private_key": "9699a2cf0226e4984fdb635f8d2b37aa8a8f3c170f7d3eeb62b2f1bca8202151", - "address": "lax164uarxlvpqf7dyq6lhs7hzhhz28y7ndnp09c8r" - }, - { - "private_key": "1179f38b9f2ea4140c2c3b026bb3c5f408763e7d24f4fd6016ec6336ba9b5161", - "address": "lax13xyxkv2ja4rwrs96jwz5wchxfu97z536uh5yr8" - }, - { - "private_key": "fceb6c909a8e2db06ac795cf681b73e50c6db1f831da4a7bdc22004e3e3f3492", - "address": "lax1rd3nncdvjszdypwjavc9jxmv0zlnpygr6kxv9p" - }, - { - "private_key": "965f30c6408c6d3ce504834ca6517ec58621be8abf37d8e9216fd13cce6efd4e", - "address": "lax19d8nd585dsvxk498a9arhj9w0yzulw0596u3lq" - }, - { - "private_key": "9f86c3aa502589f69ef2b43541611f3d7347721f342f93f2f2029e0fce4dd9f0", - "address": "lax1rgxmqphf50x4m5rnhrulm5ccjlzapt7k4t6pns" - }, - { - "private_key": "e52d7b9feef6ac840a1d6410bc1e7f46048ca279d13c076d18982e5415dfce89", - "address": "lax16yamnvumk6mlv2lw9tkxl572v5w8wvm72jk5fl" - }, - { - "private_key": "29531f77fcde5bbf2807c0a05e4d7a13fccfef1ec16f95a83fa639476042fa6a", - "address": "lax1qdqpfawydutdp7j4cwpc47kkp359x5esqzv0tx" - }, - { - "private_key": "392435d3a57321d23a01eef77fb3f69b3f957ee18294a81418aa66d51086b211", - "address": "lax1ewak424ru8346q9k0z8deuasgtaf47xpgrxujh" - }, - { - "private_key": "bd2443d0490ba1cf4fe482e784909bc672a4721f39a6e169467a42fa88eb683c", - "address": "lax1s2wh6tjclnhx4f5vay53szx4fe6l0z3qt37mv3" - }, - { - "private_key": "138c79578f50ba6768bc61f9c43579c79666575563f7d5ab6ebea6cec4da3a0e", - "address": "lax14zweuzj33er2zw3qs2w4vsjf26h2mrafq3vypa" - }, - { - "private_key": "8a5a7ab1b0eea2c5d67a1a70d75f0fe178182f0aff11194b8b0528ada629a2cb", - "address": "lax1626xjw2wcjkjrfr7hcvw8jrrjgfwqt6t6qxlg4" - }, - { - "private_key": "aab5bb1ca292ce8d034a3cecae1b43e2f0af88381b3f222132e5ca19b47153c9", - "address": "lax1qzldf3mcvt49lqxzvvnzukh3z0pdmewjmmmvrl" - }, - { - "private_key": "14f9776a56de72e484a5dc308db086098ba982c01562ab133a3b5bec249dc5f9", - "address": "lax1hgwy2vepngdl5e3gkx9cnw64qtgtf9de6huxmp" - }, - { - "private_key": "950713de3f2d801753494e52bb87bbfb71bf57955a283099cff5fa8f6fbd0722", - "address": "lax1q87pgz56mszkmzeu53jq97dqmmykkgltdalfx5" - }, - { - "private_key": "e719352d5cc72e7179e7fe78a839e17b61f4d44d5673131b8f4346d999c9342f", - "address": "lax1k9sry7vuj5qlx4ydc25nrqr0y3rwfgggrvckv3" - }, - { - "private_key": "f32615bf9a8962915ea1395e494f2b3379a2033504e2a20d0f4b4f9babfc6bfb", - "address": "lax1578p7mzyrqvfts9t3s6zz30yq4nvstjgfw555c" - }, - { - "private_key": "edf76faca2196547956c1da7fa47e8047fd0621234b672bf58c2e34296902d41", - "address": "lax1za6n8l9u665yepdq3qkjvs8npf9l5thek7x9es" - }, - { - "private_key": "20ad8aa0fee3ed6371c7a0785927f199090bbc3bd01fcd8e36e487cf6d12958d", - "address": "lax1wrdx9jpnmqvcklqxch6jfkpepj7fwuxxe7rt4r" - }, - { - "private_key": "e698ca6e0e0164a7b1d6e8b3e8ab33fd92d7d635a123cf17e528f58cb9c0b0f0", - "address": "lax187a6c406q9atmue85m83k7cy7ep6p29d0sektq" - }, - { - "private_key": "a16f2ae38d64657e8770ee0ac9349d7e9af63972bf5b1e5627c407fa9306e74d", - "address": "lax1f09qwr68tkp5x4x9zcdv2w47nkfdr7vyqzk6dq" - }, - { - "private_key": "e067ccc69dc1f16c0db02d817be54e9124cd76497c7da5045cc9bdc6891aa81d", - "address": "lax1gvukx0d7h4wmuayqe0x0ehh7t0fnxx0634rww5" - }, - { - "private_key": "c97aec16b1419586bedcf3697ca0ccd94242eb2f0cc1ad61bb6898696ad95467", - "address": "lax1vm67udwqw47dvrx3vh660s3ns4vnsvedh0pley" - }, - { - "private_key": "002cb293b57fa67a1b7fd03b002f827168a795778d43996d4a5b8e1cf21bd200", - "address": "lax1ks7j0sygcfpw5cfvjr906pp5d5m3ke0rg6rgym" - }, - { - "private_key": "dd16ace3cb70ba6665f7e628375dc0a4cf21dc58d5331a58f244d94d00990d6a", - "address": "lax16k3gkc2lmq0dyw0t9f4fn2hzgcw4xkystkam02" - }, - { - "private_key": "6991f43db061cf3b374afae93da82c4c85fd4601b957b956b4dbfe78e60ca836", - "address": "lax1xf6zlrm8yrcqdcdfk3x8t0kx04xwu67xt2w5j9" - }, - { - "private_key": "de99a0e87f02f02bc2d0dfa04107e35e9747827f473d7dba2f5891dd8b1aee70", - "address": "lax1qn3x25hjjx4a6gw0w4mlq20sjtmzvtr0c9ysh4" - }, - { - "private_key": "67800a68d64b3731b85493c5e0b6611a683ed427d5ba6a4e7202dbe3ebbcd9f3", - "address": "lax1gnnccp2ezp9yu3slues8rldg4xkt8hnkl2jrny" - }, - { - "private_key": "61c2292a52226417b88bf5259433f52af1d43d1c6ddea2ead95e21ee696ab3e2", - "address": "lax1x7sd7aumugzrhhld2dwm9wc0ase66n0rhms5ta" - }, - { - "private_key": "97467f12889714640ec0ef0f559ee6ace8265fe18ab04fe66e694290559c4008", - "address": "lax15hzs6zlk5jjr9c4z8f6efcn7qka44h27rsa8ns" - }, - { - "private_key": "d3daaf1cdd5e2b467ed4e2010cbba1cb85d065a7e7f25d6fef3d1597fd1fa9a6", - "address": "lax14d5t9cgnt28yrhnjxdtywev3n6kxh26wgxk9el" - }, - { - "private_key": "954719fbb406eaa2d1094f137586fd00bcc013d4fdc1df46836f0312a42cb511", - "address": "lax1a0p367pk3ueevh38zwwxajstjl63el3dw0rrpy" - }, - { - "private_key": "4f1d15e29304ce30588986282a74a0675e27d0e105ace0786903c655f3cbe766", - "address": "lax16hfnrhqjy3dpgz86mjt8q0r7let0x8yrpmu9hg" - }, - { - "private_key": "ac05d0dd063bf197cd03d760fd4e1c4ca8cbe0fe599d136f2a623d9145e65957", - "address": "lax1efnh7568f6zcjy85hnhezchgd25tyutgjjjejn" - }, - { - "private_key": "ce2f0a91316df56d5bb989de5512564c4de9827d0719151c8fd047d84ff24e06", - "address": "lax1saxtg97vvzyufjkstslw54mjeunfzf6306sddu" - }, - { - "private_key": "33e07dbf3f5a64db24b75423d96ff590bf5611b7cd8669e44a27f60046a20ad1", - "address": "lax1vc2v7dc6ve4yrl23y4n6h7h9tj58kn2ehq7ggj" - }, - { - "private_key": "09e481b12cb11ad14888603d608d6e458bd14448a21bfd80ddc85a174234041c", - "address": "lax1f57xym2pcgw5km85aewsln06cqd0h96xavnp0g" - }, - { - "private_key": "86bfb4a1066f3e01649f19424d576ae1dfe0e213f4ed04f4340f744b5f47c622", - "address": "lax1jjnucjgwwe06st44z9nwmarq7932atgfg5htw0" - }, - { - "private_key": "5a314546cca874d9fd1b96159b9c06484c53c5e66aa64ff24a2c2062c3f0e57d", - "address": "lax1wpya9neq0ym7gsyrhvzksywd6r0ggnlzp46sn8" - }, - { - "private_key": "6854d95550479c087e0eee3c7b73dc4efaaf4c5c253b6a03ebde1f1c1607fced", - "address": "lax1m9m4d8xkl2p6ylqxuafszg9e643u5f2c7un5gh" - }, - { - "private_key": "5784a0c8b58fa79c3b5c3a4b1642cca4db39b5cd7542f663a7f540d62037b32a", - "address": "lax1wsgrav4wp5wuxg5w7ehtxsjzcmvheqsuwunvd6" - }, - { - "private_key": "9af528132d98e3cfc6c86d615852cf74737df5a2dd57e748f05edad72eaa4200", - "address": "lax1j6rn0cwt8pxmncnx7u8f467qeqze4d4h6g35z0" - }, - { - "private_key": "5852b153f9bc19bfd0b8bdaf7586292d441285cca76a7ca003637a7050587077", - "address": "lax145wltfj5m6rqefjwak25qxvttzjyuha8v6rlvt" - }, - { - "private_key": "07a2214aec3e7410da263599fd9e1e17c5217bc9f238055883d6364cbabc85d1", - "address": "lax15qc28uj4qkm37upvnkjmyj6wptmmdd2f040jzm" - }, - { - "private_key": "0ef5e3dfec46f76a27b7315b6f8f9a6a957cbf8b82a1a2df0b531415060e4c22", - "address": "lax1wku3jxs3sclexd6ff4uc96sfl09yes7dc7l5q9" - }, - { - "private_key": "9cd4c79e7371e9724d77d96b032321ee2e194f77cd4be63fb5da034d69c054b6", - "address": "lax1xugl69uq9jqw4f20d8zj7sflj4hnsnl8zecpgw" - }, - { - "private_key": "fb56b7821f48034fd1a2bde4410f0c8a300bd3d7f59a312babfb26f0db880fbb", - "address": "lax10ptw0x6yga6xyvq6lfu2e4rknzhrd75zzh5d04" - }, - { - "private_key": "6ed4f660db9fd75911e01d6660dffb0f8b19f57c9f2ebeeb540a9ec3f085cf7b", - "address": "lax1z2ddjdp4896vf0x97t04chnzw24wdw6fuvltrs" - }, - { - "private_key": "8f1b7067cc6864f7fd7518bff9b1e166c59f56f587beff27fd4c1ee5eac19edd", - "address": "lax14sdd9054xpzh4q9c4vdwl0usf5huhk3nmkdklr" - }, - { - "private_key": "86b99a079fa8feb10e4c176a7c4160109895d4e47ef494f4cb763ec475bce226", - "address": "lax15uvklg7z904cw6hakhmttpd5garuyd55papjkc" - }, - { - "private_key": "4ed22b7990098e96a03a60e49d9f521f7bc4b0760031cbe5df1e4793f6bd9ff0", - "address": "lax18kuyumcxmaw35mrrjaqfe7t8dm2klcfzgdjpx5" - }, - { - "private_key": "c57d02bb0af459dd4b09f75fccb371759d7d12475cbb721915683a083cad2339", - "address": "lax1lg6rhqmq75xua5kkqdy28wrfs2uuv0rumu7pkq" - }, - { - "private_key": "4e2f6de12eade5b2789f60fad8037427dd2bb8bda68cb3f95b1664a6a99e846c", - "address": "lax1jmjmna8v7ahmuqnx40jj6al8p3zm9v770ax6fn" - }, - { - "private_key": "69265d383c97ecd2f77647125620bc891008729a8ca90aab636ae4a44f347b87", - "address": "lax1ldtk0gtu2xhyrjdgh43g7wnyk7fysjssy0nnxv" - }, - { - "private_key": "55330b6fedfbb3fc398a6590de1e583a89c46d8048e9f18fc479223916d7ce3c", - "address": "lax17mrfrs3qy2xkpscegtu0zluzgfpsdrppz2vyvh" - }, - { - "private_key": "8717ee79636f1b18c0ba4d7b2d15d68a3d2ce62517560c30def7e31843c20faf", - "address": "lax1njzk25g50dpc74p7q6efpnel7kwk80ufjglk9x" - }, - { - "private_key": "e0301664b4595f7305312b066c3801f87dcd593ef968bc398ba47aa53a8bb3c2", - "address": "lax12vxf48tmpytu7ws54hjcuzm9fa0c46xcjzcl80" - }, - { - "private_key": "41da780d056afae9af2d630447273747e3d51835ea7d1e58c771086b098b0f13", - "address": "lax1tnt3pcajwdx447h8kgecxhdtgcsuxw7aj9j6ax" - }, - { - "private_key": "53192819b888f57b154ecf1ad5d00fdca30a7ae59ba080eb924ce4bdae516ede", - "address": "lax1wejedppcuscfvx7dxn9k7q8chf3aa7zyfvazwr" - }, - { - "private_key": "fec37f53fe25085621ab18b023fe5e38c5d0669ed28033454bb1081dab0a7f6c", - "address": "lax1dxqv8yjvd5d9c72u8pvh66uwtgjvm98k2dvt79" - }, - { - "private_key": "88d85571ed21e1404589a650d7ddf1c0fccc16687b6a3517166f552b6dbfe1d8", - "address": "lax1wcxnx6c8e32qh3wyl9w6kknrx028em5z38xxxd" - }, - { - "private_key": "3fcd806f11b011c36c8a2853817aff25df03914655c820650fb96ca5acf3d241", - "address": "lax1u8q7hmtf3jug846avwp3klae65x5wg52xx542p" - }, - { - "private_key": "7aadb6e72e5fa3d7d87a321aacf672cefc8c700421a10fe9c2d7270e1ff76e7a", - "address": "lax1r8d8f3ak2q3kzwvps0wwutelh954x3k36jkmml" - }, - { - "private_key": "47dcef9d913a33ef8f7f39588e48bde5d7e6e241ea91e3c9ab8e488ebad33a6b", - "address": "lax12yjls9vf0he7p0mxayr5gtze67p00zaudy5y6d" - }, - { - "private_key": "ffc4de6aa27510f8f692e37795361ae235ab6d3acb9ca7659b1dda57a9d1e7da", - "address": "lax1t4p2p3ektf7esz6nzmn8tjzukt2tszxzlpjfqv" - }, - { - "private_key": "d5cb67ea42ac686fab935dd4973e8e2498e63c7367397e0db6df70d4596ad8d5", - "address": "lax1nht3hynrtpcwj8cxpxswe49p4clh7xx782k4yw" - }, - { - "private_key": "7552109842187cb22d6cde6bf8c8fe01775c29811c6dec3988f9dbf76dd14427", - "address": "lax1g28pnjvy3dd8s0s2sh4ctaytf4vdx928yp7fxk" - }, - { - "private_key": "5bd7346987647cdd1ae7a47bbc752d4a56cf3e9e27c0984e2ca1981ce2e40cc3", - "address": "lax1s5geq2nf5xzq57rq6mn5k5eyewlvj3hsra5s6z" - }, - { - "private_key": "5d614425910f74f890b0a254dd8ffdeb72881442b2825b1ba6721187807a2ed8", - "address": "lax180cp2m7kma45h5wc7y8tagzm9h0fvsdek3zazq" - }, - { - "private_key": "61dc2859506c9a7bd2b12c3057f1247643c8dce589bf722aada3800eee4bafba", - "address": "lax137zgslcag7tzt39x60hdx56ulughpcpgh7w84d" - }, - { - "private_key": "b99223ff7f282d4f79185fbebd111cf5ae2f382ca0eac495ff7bde5a6bc68552", - "address": "lax18ddn9pj0x30hzmv4d4agudp9yucmk0865f87ww" - }, - { - "private_key": "f16d7587a017c2d7f2333af2de2d1ec0204294472f68b0131bb6a10f737d7a58", - "address": "lax1ujk4lrm2we6k0kpe8mu0qf5868vpe43frz5ula" - }, - { - "private_key": "fe0fb831581bfc6a63f974deffb2701bc75518cd155a66f8a7e7b3c6efb6e9ed", - "address": "lax198rl8dmz67d6j0qzd2ua7sgy507savmfz6hsp8" - }, - { - "private_key": "3dd2221b4006bf264fcbd65b9b345beb850e27a0690566491047b51353b62b84", - "address": "lax1qulvcu4eyd04f0jdjvl5lk3v9thqnj08n7xdk6" - }, - { - "private_key": "6512b32e6a1801464fe0d90931625602f6d95f05df029d7b0b53673b9925b49b", - "address": "lax1nugagt57nvpwsersgzasdaedae6r8jl3s7qcq0" - }, - { - "private_key": "768ae223767ef3497b161b32bb19c535e6dc87c50301513dbacf56218f592222", - "address": "lax1qalkk2xw70sv323dsca4mwsyv8cs8kg73qv9qz" - }, - { - "private_key": "2bcc0e3719de24d58cdd65f9ba5bc35887aa766fd7e8be929e25a13ff8375366", - "address": "lax1ctdhnryp4dxhe4uwh2kwn6nzn5erhyy6k77fpz" - }, - { - "private_key": "3ec0edb38ff5634025cf6462083b228caff0dbb2be87ad66a82e98c2909a3706", - "address": "lax16g2pgy3d8nc0et43wl6eau08cx8q5hvfyedvpa" - }, - { - "private_key": "4eef9c896a0fc163c065579bf121be0ecbc8793e17609d8e95227719cbfd9fe6", - "address": "lax1kj9r0pejumy7f0exyrvtyxa6wgywjv2c9q3l5j" - }, - { - "private_key": "0aaea3bf4063fc6ab51e95a737a98f885f8f904e3309898422fb11274da29476", - "address": "lax1f6gg2c2x3x7spmf2435z32pdnn54fh000p5p2h" - }, - { - "private_key": "66813ce9ffa63f1144b5b40dc8f57e6c529c0c55ba5f46787a7c9ea4f81bb853", - "address": "lax19cty55cemexr5anulvkydt9dy0catgnnqm7kq6" - }, - { - "private_key": "06113723fe4e9c783632108a676393eabd0e8682395c5a0f02f27d18ca720cad", - "address": "lax1wzkrugmjjg7nwdg0gqda5cfadffz2gh6hg0akd" - }, - { - "private_key": "5b4a05f99c88e0007c8ccde983b36a1b37333e70e7a9d563924181d82d83b364", - "address": "lax1vl7wvrq7uv3nvhsv0nmumxlyknuxcsf6upwm45" - }, - { - "private_key": "e464e512b7ef2ac042a0983de43b7ff28d015743fe80bd0d8949d5b45e1a6f6a", - "address": "lax163nlupt9zkz0c0ygewywqnq0v2wfdsh5g22udv" - }, - { - "private_key": "a7817c30134ade6ff333e3e0fb3b8b9b9ac9e5375ad091e42404a6e0983c6626", - "address": "lax1pwsv4qhe42p738xdryxxf79p3j7c4sm7eprs23" - }, - { - "private_key": "7842d51f7ecae9ea1c605c7c99ba06cd24c2433b3fb0c2de043470e0cc5eb682", - "address": "lax13eqpdmsp0hmwt3y8j5z9hl95yuwye4jkuvwzyy" - }, - { - "private_key": "2dd4bfe82f0ce94ad047edc363b18b17b05b37dfb3c1aaba906bd6d9f66107e7", - "address": "lax1gp7jaa63y829t02fn8rw7npfzs62tpheheuphl" - }, - { - "private_key": "d4df74dbe96e5d22feefe04512de68618ad577d995eb4f3b51b10c5d6098e0cc", - "address": "lax19u5953n6j888ljh5w7l8zfjxxlrcydw2sv7caf" - }, - { - "private_key": "b0d4a888082be8fad2e21401d98104924ae97eedf682c164303b69077bdf2cd6", - "address": "lax134ptynljjsvvhu38ft2248ene59pyffs4gg9f4" - }, - { - "private_key": "36e085ff4874f00da5b6490d0161e610c84107e24d0314d546c6765d86fd6c45", - "address": "lax1nt9u3xqcp96jtn7wyathdcethxfd9wlxt6ycse" - }, - { - "private_key": "9848cb9469a95091380267aa8f68e2a97943dbea589c932d62ff357d233b8a4e", - "address": "lax1a3tqg8zpcwxjf5qh7ngdzjyluat2ps98wzd8l2" - }, - { - "private_key": "55691170ea177eaebacc54704228717ae3ef9edd32059b9cd382fef13b0cead0", - "address": "lax1dan5q5gfxlntykc2nsqc0q44j5w4l3dwnv64cz" - }, - { - "private_key": "48834295c08c0ce83795350b15de85aaed88f638eb29ddc33e80fec4dec8b41b", - "address": "lax15q8agvjtjalykjqawykr9kvfchj2n83zes6j3d" - }, - { - "private_key": "0a65c27373b31a1740d5d19812322ac5acbf7add34c90ae415863ccb73a12335", - "address": "lax17ca23nmmccsng80f35t0fdyr6anqa2jnwt62ct" - }, - { - "private_key": "fcb8ccaa4112c3a788c45c94b5db3d57ad87e4e45fe20b5f4ac98d6fe44ddac3", - "address": "lax1zze3fckswc20rd8ftdxk9wp88wm4uezdfy9rgh" - }, - { - "private_key": "b9fc5b83e9aa6672a2eb9e011f4259dff521273e5efa80344a87a19c101f4a93", - "address": "lax1088v9n78adhjr033yhkv66tj5vqykwjhy4wdhh" - }, - { - "private_key": "dbef536abf87824f4c863e58128a339f190b9c4982cd226808d33a2c0d75e99b", - "address": "lax1cpa4g5n2sfg3tyzm5uwmtzfvj4wgvrmkshz5ny" - }, - { - "private_key": "7896fdf86e268fe92dcaa59c4bb9fc376953ab8f537a6b051d261534f825c9d6", - "address": "lax1230d4yvqst27ppxlesy3f0xa9c54a54y06jkrq" - }, - { - "private_key": "6a0b04c810e2b0e3c4b7b626943f02174d2a4abaae743d35fbad699702ec87f2", - "address": "lax1razlv7rqzzzde37hythhkj68u4j5m4r3lhpghl" - }, - { - "private_key": "f0bfafabb64078bf398102dbc067384f3ccf11ac70ba36d6d61abbe55194d336", - "address": "lax1rd6ukjuw8nsnd9nr7yczny8964x8jjm8h5xkm6" - }, - { - "private_key": "44fae62c0df106a20fe8f3b43790f5153bde3688be0c3083ff323b27cd65db03", - "address": "lax18mhqj9x5zm3mv07jhjg0c5gcy5lachz03f6hq3" - }, - { - "private_key": "1bc4d68c1a7c51a3f29aa8ce9de0b9096b71de4f2570fd0407a79d7b43dfd8fa", - "address": "lax1ehhnunyu7d4k5l8qstzntm6jw3tp28x2jhpslh" - }, - { - "private_key": "2b1f4ac3c834e6563b79dc9594410c0b8262fd28dc31c2f4b1b3491bdff84584", - "address": "lax1zwr9syavf5n8nujxphjw8usvv0s5fv64aq7jtz" - }, - { - "private_key": "5a86806c5fc14919097ab02cd4b46d3746c212b9605f147afe315fa881b271fa", - "address": "lax1jhm3e6rchaev9xjk3qguzrc3td79j85qs7qjes" - }, - { - "private_key": "74bbf235c2a3bb54a669ecdf6815a072ed66f9d114002eba2251b94ffa8e2f83", - "address": "lax1vm5ngkcy206tyq9slwket6qastrmw2d0mcm40a" - }, - { - "private_key": "a5e301b1dac392e805e8628743d6fdbb46b67d073e47bb711b38cd330d2049ee", - "address": "lax1rw8fqfcuqt7sy6uqruxvganudgqu9yn9gn8sh7" - }, - { - "private_key": "897e4dfdf43fafa2105fe63bfc8f741c6552b0a0eeeb797eb706b1397b7dc59b", - "address": "lax16elk27qmd9p6ddqf54zua6taaqhyw4jykzyheh" - }, - { - "private_key": "7bb8159ea7c035468623cc0883ae071929d00ac25ace2d0c28dd4aa1a824f799", - "address": "lax139z8t4eufeksx5cz7q6qdgj0vc5qjfunvlkeuh" - }, - { - "private_key": "7bc7c3ab9a9794d368fd41984b95c30e8284ed7f2ecc9dd8340641b4c75bca3d", - "address": "lax1s8nm0vgfr88el03qv5c7pc2kyv8xhadcz38wxa" - }, - { - "private_key": "489e21955fc1e40b414cb3c24e0eec772e32bdb5a1f5ed926b40a3645223aef2", - "address": "lax1l4rplwtr2u73ch64tastx4qsxcgcmwwjhw3kds" - }, - { - "private_key": "14b2abaaf238940219ae0936222fe178cfdbed310bfdd22533925707a22de1cd", - "address": "lax18q3a5cx66akcm366rqh2u44ytxxk52f6ht4m8c" - }, - { - "private_key": "36a45ada815fea9649946d604abb5893b39d7934af78a792f168f3f01931c4a5", - "address": "lax1z50phjepgraq3kns3szppaysn7y72ngkc3lua5" - }, - { - "private_key": "f1daa800602a64788b4d467b7867f05712b79c4c705a93a6f2c0f6ea8c759223", - "address": "lax1yh2njxtnd399w2tw4jhmwetk76appaegguska0" - }, - { - "private_key": "36855b956dd30fb813165996e196aaf2d17b9c2eb3701ec55b9d08356f1262c6", - "address": "lax10p2q4nt3lsp4ttlhlsqzwkmx4cvzr8svezvsq9" - }, - { - "private_key": "eecbbf7f15be5a42fd5f30a05a4c595aac473f594b349d1cfae68386f348dcf8", - "address": "lax1ezrrnsjcgea0za7xhzqq7r4u7cgkqgplmecpur" - }, - { - "private_key": "81f89c3f486b53de195a2e0290d7b57f3cc9fc3416b7c3c3100d9b47fd69823b", - "address": "lax1dj2069y3uvgdtm8a8jej69r9zmsl3s0mj4a3vf" - }, - { - "private_key": "76c5c50447b3feee901aa53df74949dd002682e18d0c59edb6a7db022c211fbd", - "address": "lax1zyujtmsrkjhpwxfwq45jyhcv0zqje9r9qknqgs" - }, - { - "private_key": "f41912cabbc8d26c833096acd387589f794cb8be6929c5410675a94cf2c74f7a", - "address": "lax1nf8ju592r8l0d0wd9ssu3vfzawaqjdlk3l7cgt" - }, - { - "private_key": "8e19835c3f871625979e5c52651cb1b350d03173aeef48e5f2edf5d9f033f0b8", - "address": "lax15ds4n79qv89yxcgsjwkyx3hgpe6jmzvwl9suxu" - }, - { - "private_key": "5e12168be8b11802b0c59ae86324fd0658ce3ecce5fd21d03be07fccb2ed0d99", - "address": "lax1u92dw9p9j6j6kl0nsmpg4qwuhy0lzmuqcwc4hj" - }, - { - "private_key": "8476a9c62f3fd8551f9364bf75df34c8a73b1927c3893fdb9bb3d5f9c86dca75", - "address": "lax1dgs9hs32fvjsh89y0vslf43kx7ss962memhsxh" - }, - { - "private_key": "49519c903294961c8fc055e7b608f1f86c0785ed213936798bb66c1b69286c1f", - "address": "lax19ecmw4pfhc7lksxktljmnfsufplhpmdychsuk3" - }, - { - "private_key": "466bcdd427415eb8c55a611e41aeb34031c7838135d2c4184907a7114cda2704", - "address": "lax1p52ws79j34snvyw6xf5nn9wk3ny7jw6lm52n92" - }, - { - "private_key": "5c4ee0c781bf3c8fbbfaaa6a7761f94d0b14283fd1802f144251242af5271dc8", - "address": "lax1tc2g8cvd9w5mlu49a6z6vkzqrgrvxrmgg7ygnk" - }, - { - "private_key": "58f844c2ba4662112feae3cc9ca66474a8f58ea48caa7e0d330f373ae4cd280c", - "address": "lax1aes4assd2knrhv6rfhws745jg4fev40zyzf7pw" - }, - { - "private_key": "150a262785ea543f5b26f500717acef1ea07a477ca4d5d467d62f49d4e2fa5b8", - "address": "lax1tmr55quavg7hstlm34p3wzvmht4klxyavvvpu7" - }, - { - "private_key": "8f995ba46c7aa70681a3a889f027155623157f4051f82e299d0e72bebad03449", - "address": "lax1s25l82q7cezzpa79jz9n4spcfm7f5qvple9lv9" - }, - { - "private_key": "c247712db50541bdceae0569b93f5ad833427dc8a57276c2e91ddaa55902c2c3", - "address": "lax1l6jd2pc5nagmg4mhtv6ant854z8nrmlct8pw6n" - }, - { - "private_key": "ed3340532b945455e510c309a16c459a2ae25c1b7ff756bb59f981ba0156812b", - "address": "lax1vf2vx0q8uz2nw6kfzxp7ptsmpr3jj5es59rlve" - }, - { - "private_key": "2280ec0acdcbd358a19c67185872788fbb4670d80f7817f02d6c8e9094a3cf92", - "address": "lax1f7v0hh5mm0uf7uxpaaz7j4g8sx7352hcza9u2e" - }, - { - "private_key": "96935e3c8478fc40636842544922b91838c81790681b550f540b963c7a5c6f33", - "address": "lax16wajltq4xspazp7ptcsg0zrz0sen2nq3wccdwp" - }, - { - "private_key": "148c524fc97dd75736be1de5dff2cce56774f93153cfe35a2ccf88779c2d16ca", - "address": "lax1ntqhwnzlrn7dchwut9d73mnt5mkj9p9mm40pd6" - }, - { - "private_key": "f2ecc9a1a094923ca031a9d3eaf76197eb6834586ec3f0c1912ff8f5d0eec357", - "address": "lax10a5ut2rdmr0wnchygp8wduhzw7d7wdre3734va" - }, - { - "private_key": "d6ea1e3c78ba44ed1c982c7cc1da9aabefb463cfce43b89845659429c44276e0", - "address": "lax12rpjd6zurjm64s9c8wkhz2p9z6wdy7m2hh4k7j" - }, - { - "private_key": "f21a0f24a5c7ab35dfb11793712c550e6880ef69bfd881154eda6c1fc54a443f", - "address": "lax1v770z5f5uq9xplqqsfe8jv092rapm9mt5xgw93" - }, - { - "private_key": "fde23390529064bb323c7f4abecc8151219ff35478f47813a1223a0ba4e65269", - "address": "lax1540848jqadmqz07trw32wn60vtj9mvud78kkf0" - }, - { - "private_key": "3b0254adb8c9576c684df3150ac44adb2818b941cacad44f1da25dafee0a14e2", - "address": "lax1rh2q6hxnh8swfqpphhwstyxjg836qvlcdv7ry2" - }, - { - "private_key": "2a44851e2d004e7530257b2505645f0dd23268b5b8048b530e652d9dd4e8d1ac", - "address": "lax18dlvmzpygsnaalum86cygpr7y3j6xnp74q84ve" - }, - { - "private_key": "000274f1fcd3c4e2862ef237e313ffa27b60d963557d20792bd71604895a3066", - "address": "lax19vlq3fqg2lk589xrlsc86lgv6lssauzrhx4mx2" - }, - { - "private_key": "2d0cbbdb66d5cbfdc7be9860ff53fc3ba59eef575235750d47c64b86e0aa10a5", - "address": "lax1y3x80qkk055fhxtyxk5kp9z4e3s9a4z5z90tyl" - }, - { - "private_key": "4385e36a2fcb9bc593341174ae5264c50e9f1d09e93a0db9dcd9db5ff669cf90", - "address": "lax1rhsj8pgxv80cj77nhqk2tkqjk3nmpcqc3cjc6c" - }, - { - "private_key": "4f2c64120ff5d14fc91fb9a2ade09c5387fd4c86523b16e0d23cc255469e4f53", - "address": "lax138k2ulu8wgweg3fsq4hzkqkkajqqwy8ewd8yml" - }, - { - "private_key": "0c184887978fc6190e003010aebce83bbe81e14ee5b250b5dfe810353836de7b", - "address": "lax17nj4g8ax97368k6mm7jx2ukm0rywehy9gwl3h5" - }, - { - "private_key": "85974ee1780648ee20db8bc27a1a455a76527c90957232130abf745df4937c8c", - "address": "lax1rgwhxfsp3w80d2awjs2f2u36ve3ph7g2f24qk0" - }, - { - "private_key": "99ba5a7caaa9be48964ab523ca7ab888ae4087ee0de73e5011e905f9076d0757", - "address": "lax1smur5u3d6a3pyywp4rjfr37kduymw3ru7dvh8v" - }, - { - "private_key": "708e420f449de035da80caf93e28ae77c1ce6d524c441290491ae6d06e918e77", - "address": "lax1ev4p8ffmmmqpznv2t9rtac5kkk2u9hxmcxe07r" - }, - { - "private_key": "2f219322669807fc19b3b114a63614d9b5cfbc9a2de1c9930c4acd7aa5094830", - "address": "lax12fgxnnya0zn5zhhp57yr9v5zkvedguwf33qeql" - }, - { - "private_key": "43336860a10fcec7c2755cdd1e127f1f65034bafcd55aa8ff79fc79757414f44", - "address": "lax19ke268smth0pseqr29l36ylj5xt3e53lfwjh9c" - }, - { - "private_key": "6f256ef77001395e2a5d337c69dc328379f3a26368582add3c945ff200535e06", - "address": "lax183mtlvqrtf2v0u9l3fc75rsnrma8euxd3r6flq" - }, - { - "private_key": "d9edd387299aef361df5df220183a82b8b73e097e83096cd155dfc198f41ab8a", - "address": "lax1r27usr3qslxpypqf78cuf56gl4ycfykj73xyaw" - }, - { - "private_key": "0dfd9598268b4d42b2b09052ca0ea1210cc7d5e2cc838ec1817072d302b50382", - "address": "lax178jykt6ehampr8f3x46t4yh3svvjw0vvzlx7fz" - }, - { - "private_key": "c43aea3a2d10c176f948679320d500c47c16984f1bdd6c8fdcca4f8c9450235e", - "address": "lax1m0c3kcx0lt7e093gddmsj0sd46wvva5japwzl4" - }, - { - "private_key": "39f6a02d07abe4add99a12b3d3236a7e4c0cd04248e2fe36e0fbc8318043ac6c", - "address": "lax1tmguuacsefuw3phzs06nwqa5gs3wegrgk5v82g" - }, - { - "private_key": "233cf21442d227fd3a48b6ed3f65da02499a4fecc96fa1612b3b0d818c94704b", - "address": "lax1wsswxmxkj8drzpn6pmnc68xqwf7ctjzkc9wsvd" - }, - { - "private_key": "cbe046eb229ca26350c5c67bff17017342560b933810d11d624044485a7e2a1c", - "address": "lax15eqss08surm7lluer3egdjz2gqvelpc43tv3uw" - }, - { - "private_key": "8a0a8b6e524f78f782ee4d3d1f74e31d1f072e94fb259ecb6b81e3ee422c0484", - "address": "lax1pz6aygga07hdzl9ldqz3j69c00gxxsdz2mu3g3" - }, - { - "private_key": "9525a59e8015f4f0492e4122528181a423765eaa6a13a8f3b26e42d2b7031b75", - "address": "lax1uxuemdfx86cssaajlcpdaypnfcremh22z8mfsj" - }, - { - "private_key": "eda570f8abeabec54a3b9deed06e2a93ce782f7c69dc9c082350e42b112cc3ff", - "address": "lax1puav7gak57vy40hy76aec8gp9m9crtq5899v93" - }, - { - "private_key": "42df258363f61d452dbd90d26824b659e47cbfa33537760e82526df3af62073a", - "address": "lax1tvad65gq0lfl37y3d8stc3kl42sx6zllpyl6w7" - }, - { - "private_key": "2e0be4e796645071f6d6f076f77c72e4dfcc98563bbc21fb8140ac2b311ba92b", - "address": "lax1tndsrt27s0na8curqu3k7a2m4ckahjaf4az4ql" - }, - { - "private_key": "9bb2eea31a96bc136f8bd4fe96978ec6caf7986136b8be60546c0256eeae9d92", - "address": "lax1lzlwja66kkd08hmkracq24dsq205feex5he9vn" - }, - { - "private_key": "56fd05dc83e6f30ecf00d8a944919a8894930612384d9f3b3aff122dd399ccb9", - "address": "lax1ltxqcr92asu704q8nsmdqpu60d4z265gmvynam" - }, - { - "private_key": "e76d2bd482d08ceaf037b30dab80e90191325ebe984c5b4de4eeeba60f5a452f", - "address": "lax1sayzv8kjqtz3rj3389lnvwhjd079l9xxh0vmz7" - }, - { - "private_key": "1ac7a9d8d6adda26578c942649acb20782420eed956f1ea900dd8c7fa0cad649", - "address": "lax160zavmhsk08ygzc9y60jgh9m8du3whhuyqanar" - }, - { - "private_key": "32646a66a2c191ab64255483a6f2497161ba6f5c10f2fc1eda5a11934844c172", - "address": "lax1q42xc2jx4yf8ma6x04mv428wzsk76pul5qrmfj" - }, - { - "private_key": "9fc034ff89b45838295007abc802153d20922d31d7d9e324a7037b7f7cf5bf4e", - "address": "lax15ywn5g6s34plgy04r6qaejr3lw0az0a6vmx974" - }, - { - "private_key": "83ccc7b095ce0244cb7dd25ba915831b2e3c7a7dea9d84bb05684444aad943a6", - "address": "lax1etfq692upceylw6pdkdxuz428cp5wkxewn8akv" - }, - { - "private_key": "fcef9d221be447547d446a9f21589e92e2c18fda502265a9b120b241f689e292", - "address": "lax16mve94efxx9v3renz03mh4evmd0av3l4fq6cs0" - }, - { - "private_key": "f53b0dd26e6c1c38126d5efeda0be9e752c51524d6554c221d6f79e64e639f24", - "address": "lax198qn28plfhn2pwh04dpxxwvzanz8z6vlslstqp" - }, - { - "private_key": "c166daf677f3506996c2fec132e49b1c6e765d0b21428faf34c2d24c12995d76", - "address": "lax15mrn6jvm29p8kuz8j2y43pd7cqkcc6wktju266" - }, - { - "private_key": "6267c17cad94bd2d2c996d8697aadefced192789ab3808c04fa04dc13aff43e0", - "address": "lax1fpu3m65sdcuvaugrfh7v53pdt8fep446cy3xmk" - }, - { - "private_key": "dd717cd80e316a3cae618150d4dfb03a957003666d68837474cab105930d38fd", - "address": "lax1y0twmqlqqjxyug6lmwj64rflxf9qpfplr40nt5" - }, - { - "private_key": "3dfe74f7622abb0d5b6c6fca3dddaf734cf5b0ab26c728939356f7ed4643aa54", - "address": "lax1k4zs2am3r0fnc24pyqve4yzacjny3wxqpmsmtq" - }, - { - "private_key": "e0ebdd26cf17a1067597dcf21d6e06839dc79e3e6bb91b142185a839647a0cd8", - "address": "lax1fdx5jtext4xz6523jh0tyl0ldgmmj59qngktuy" - }, - { - "private_key": "11cc49b52f6eeeda13f2ca30a541568718226f46e26bdb39edeb857f3b22bcab", - "address": "lax10sza9235f32l7239asjwck5jrecpup0zfezv0d" - }, - { - "private_key": "ebb4186da5924bd8b9689ad90c6e47eba40dd291db575a9fa29abf2b4fb7e116", - "address": "lax1tnz9q7mmfds6wfrhz6cuagsn84tndrxxhprzqs" - }, - { - "private_key": "bbade9cec7aaf43760a7385f941e02d99e209508e421e590dd2e4b367d270281", - "address": "lax1umkfw5c7q72jsqe0f8n363yv0adgpns5gngn7c" - }, - { - "private_key": "a9b03a58cd18b20d88d4ffd35c9980e13a8595d962102e3f0c62c11a8b8ec497", - "address": "lax13cyah842w6r3edljtenxjsp6zfyh2wequ6nkld" - }, - { - "private_key": "4ead2fa3d56c1d413c26819426940756e704303f1328b4e2efe708d8c222c0e2", - "address": "lax129s76za9xkeplhenklhl9697umeq3v4jv4rjrn" - }, - { - "private_key": "9dbd5fdc42870560c4422fdf75e1c20bb560f26af4f39b94ea9d4d6271922b72", - "address": "lax18sy76k0kxqutdep3kcdl4tcx4ysl44ftdn7tdt" - }, - { - "private_key": "baf42b6a25f4217103df6b6e780cd2c627ae78b6935698ddb531e89aeba29efe", - "address": "lax1lt9s8az97hpdywz4eel9360htashdy5y8t3j30" - }, - { - "private_key": "3717110ae189e3d4525b17d17be723cb8c75470ba6cb33f15177749d38be07e3", - "address": "lax1wp2e4dwnqaqtqtl9djnurfslkuun6lgk3ukm45" - }, - { - "private_key": "3061c4d010aaaeed057efd76501294e678db725d0743a46607d2639ca0ad0094", - "address": "lax1029sk9fajexr6us40fa3zx9jsuwy52w6wvdrdg" - }, - { - "private_key": "6645e5d3109473d5f40fa9ec0851e3e772f4fe54f0e20359cf7b8814e9e88ed8", - "address": "lax10t864k5yzmracygftpsd0cq4etamzgqu3zwnkh" - }, - { - "private_key": "d2cb4d97b68372ce13de78cbb4dd03adc132c5716a9349499faad1f1d14b7a03", - "address": "lax1nls68llzj5kaagrhuak3kfgmtvkaknncf9f4zm" - }, - { - "private_key": "55ab40c2197a5298949dd572501813049c9535fb832374b42c537cd1f2d5cf2a", - "address": "lax18jydunu59r88x7v9uy2muuy58g0lt9l83vatt7" - }, - { - "private_key": "6cb107a305e741d5faa75b8a0aa4ee018a046b747db7129de8baf6a88ac9b8d4", - "address": "lax179kapqsra86astvyv52k0nwd3495cac3zucf34" - }, - { - "private_key": "d4e1cdcd675b39d0c138beba527876fa0886e8810c75872bc957d9e49c7aa7b1", - "address": "lax1vvmvzkmt2nk0rsvnx2jfqkrwdxkndcj9fkhhr8" - }, - { - "private_key": "bc5a57ce28e2aff43f562125bc3781429a52c719301a8ceaa50cfcfd7e4ccbf2", - "address": "lax1th7cl7egc6vp6x7nh32t5qd3ygqvnewmhtvk8v" - }, - { - "private_key": "dfbf04afa859dfd61925db38eb14a5e3e0596ca2b928eb25e51bcd0a47758919", - "address": "lax1wlsdcr648vrlexjnftvmy3f0xdqsfgnucenqr8" - }, - { - "private_key": "5e17b163daefcc7729c011f8179193e3e14fc6db775c842dad15b32d4de2ec66", - "address": "lax1tnk8d5fla5yxhm04qxnzfmn0w88xw8pjkxydpt" - }, - { - "private_key": "7d0df250cd33344b387d836ae9bea0a2b55350ee5b5ff6b273f6f7b9ed3ba44f", - "address": "lax1n3eeyhynqtqagvcu9yv0lfygtmyjq6zg56cs8k" - }, - { - "private_key": "449807346646cd5cfb412d5be52fc671e2d60cb4dc292cd58c2883bc784e63dc", - "address": "lax1f42ffd90prsj3kzdz0egd9g6mlcj4w6whau5ae" - }, - { - "private_key": "84d505d78c482b8854832e89347dada8f25a749b03678430c2b9fdb1e433e61b", - "address": "lax16dhenjgm5gxr5s9z5rhpjxmmtqusjcxae2kak9" - }, - { - "private_key": "9c356c160ce1af3fc5196f1708880d52c3dd723aa9f17ced7e8dc46dafa882b0", - "address": "lax1r09a5p3589nuehxf97t5sgwkmrkm4hgt22x0nh" - }, - { - "private_key": "a63ead2572523a2396b43b0dd8705161cd2e1f9297deb2e936de9e83a45ea0c0", - "address": "lax1rfgxe24l5zgsyay9t3vfdcrlwez8u8umdsja8x" - }, - { - "private_key": "b78ee03a08ddef093392974810e48540435a48c565fcd633acdca3551363a342", - "address": "lax1dvezlcy0nk2sde9yfycfwhhvzj07k9hgzzhmds" - }, - { - "private_key": "38c4e95a0936fe06422b5b96996c054166a94141aa18a6a3d772cc0880217481", - "address": "lax1kmyg43cwh9gq59fvqmnj6hy2yz3zuf0n8mevmg" - }, - { - "private_key": "4b21f5ca3b8949d4c959f5495a1735a08a996dab9fb8ec61023c2858ace403fc", - "address": "lax1ezxcmdjj4et8h6r6wnljjw4x9xzey827r5jfgq" - }, - { - "private_key": "8db9a8c7f18ce47dbee1400beb9806d24f822d7135eaa5ea2173ab35752576b5", - "address": "lax1rne4gvd9z5yvflhf4nrlyhyvv28amjywwnemnf" - }, - { - "private_key": "e0ee8d0b99f386a5593a2d3bc2e7986a26d659dac752b56d701e4c31e422557f", - "address": "lax1aedpwz8rdf938ahwwphz5pmwgahl6a86me2eef" - }, - { - "private_key": "d7da100e72c1099ec0716bd410858fe51652d3e381185845245923ec692b2b46", - "address": "lax1lghqrfnt5tjq5ts0daefgjtsgcc9teqhnq8pj2" - }, - { - "private_key": "8a25e7bf721a54d937e707116e44cde69ced7f2702f3262dfcd23edb8c9f2668", - "address": "lax1t2gjsljtq885xms3tqlrhvfg8vdp6j6eq073xl" - }, - { - "private_key": "017b09ef4446e3edabf31a3d3a344fe4402b77a2a2ce5679da57b799b9624e36", - "address": "lax1kxu5y86cj88ekxh3seszne7tczwh658a6hrmc5" - }, - { - "private_key": "583bbabc860a4612322c42680c443b69ed53bbb791e9e82b803977feaa5e41c6", - "address": "lax1dqhgh9vysqdglrk5dm56a4vd26nd4gfyk069qz" - }, - { - "private_key": "d38a29e42c9ecc782ab37e7ca9ed21e63fdee13cf04f93cd2e3b58e19817d6ff", - "address": "lax1a3lzr0z9npqg28s2ytq8wm6ys32mvwklg7ez6x" - }, - { - "private_key": "2cb74a3fb4bb3098f2c77bca78c7deb9adbf95ffefdf8650c85a3b7f4783422d", - "address": "lax17whnl4n3mw04wnvm6xaafya5v2cn095hurtvus" - }, - { - "private_key": "3ffeb4bca1a183da24f5b5b878871d912dfdfbed9f4a42ede3389bd5a4655772", - "address": "lax1ndajr9xpl4z7qqaukcuzf49y3u774a7a33vkcz" - }, - { - "private_key": "2c8283999d9752f9ea84d130e2702e08119081f2bbfd80159612c12197918e3f", - "address": "lax1nyrn8u9f53y48vjpqnucpv7ndlrretna54wc2f" - }, - { - "private_key": "daefe5471c28fbfbfc28c5ed85f15ea9f1bd931ea4cbcd47b326b3838d7823bd", - "address": "lax1j57644nz99xpj72ej0yvhjegv4es9g5y4aenmw" - }, - { - "private_key": "eb37bbd6ac0f3216472cbafd46d9c8d0f363f6f3e30bd5bc133faefce7dacafc", - "address": "lax1y3gce5604j9lycssla3ew8rkn465vk830fmn6z" - }, - { - "private_key": "27d2310fcef6aef04bf86a1db2e51c576f7324412cab4f0ca21b1ed98e668105", - "address": "lax1uxgr7k38cremsc72gx3eduqchmh284ptcefmnv" - }, - { - "private_key": "e9b0421e0540c94c8226870d04d4bce6a1978b71c95cd4b78e53272d79f10200", - "address": "lax183n30uqvustr2qht38jv7dv2untwgxn0wmjfdg" - }, - { - "private_key": "311f583d3fd315374efa34ad2c2650115f50cf5315360f41ebee597dd91b3f66", - "address": "lax1wzwy28s0kffs6eff53k5sm7kgtpq97s74mekqf" - }, - { - "private_key": "b57824d6b2181de52e7447d7c595ee9e31a07de759ca508c116c5322f1201359", - "address": "lax18p3z80s695vs2nj6xm337kp3mtfj9fnwh4d9sq" - }, - { - "private_key": "9c955485d289f467ab2368446fcbc833aa434572d8c7be5dad8f8bfd5e61983c", - "address": "lax1xntgc5p8jj5wgk9mx0r8mekcnjs8zvf9qjvazt" - }, - { - "private_key": "16b35a35a68d5fdf23cd1e51ad188abe2f6a26e2dd20b05585f59c4063ef894e", - "address": "lax1uudeafzhwu8592exepczlzpfw5l5l24tf6wf43" - }, - { - "private_key": "316488fd0d3ddc0593acc86f248a29ca37f9234f29a12259219b197d35c32703", - "address": "lax1hy3g3vjtp6rw6vegwfd6uz66z3g6hgaauepyjt" - }, - { - "private_key": "9ff2647600da416b1bfbc8f3d9a7e2eeab0137b5d15bd49e50cce72af944afe7", - "address": "lax1hvmswlltdmlkchagnre8rug7gd6vzdqsa7agv8" - }, - { - "private_key": "108e22a919c6483e50909f0b88973b919a80e64d248c741e5485235071bef854", - "address": "lax150a3evqyln87veusmtmh4z0xwfqpq659nxzec4" - }, - { - "private_key": "602f4adc087da50280e421e4aa178f617181dab2c18ca4c0e1a025916dae9f6d", - "address": "lax1q8vh8mac5c0l6jyt556kez6e9sfppflu4gl2t6" - }, - { - "private_key": "5726f432f580e5768a1a4949eac97b90139e98f3a830eb2e38015ab14e44a4aa", - "address": "lax15v8srctuprr5hmsqd7vs04dt3dhlx7ha62ysaz" - }, - { - "private_key": "f4c886197fd32e2d19c32563968f7d8ccd4139ab0f0263433738bda8cc582741", - "address": "lax1rujklec0ggy4uxt2en24auz3dmjxpedvzt2px7" - }, - { - "private_key": "a9bbf5c6e07d9e1363207b88ac64e6987d8a76d2a272af4045c1a66b529c49d8", - "address": "lax1htl5p40dwzmzrtujhr7wvwg7dql6fuzwdthfvz" - }, - { - "private_key": "6736119f79e383d2f6a873d63cfb4d3e2a01b59505cd6f63c6751622febaae3b", - "address": "lax19vgclnjwk63znlvaydth646xa88pgc8ny52d9r" - }, - { - "private_key": "0c44ced5c672b67c33ed81d3c32371d9136724bd5a0bc4621168630959846a85", - "address": "lax1rj3w46y9r2whetnwdzcyajn5vd88w4csjssg4t" - }, - { - "private_key": "3294aa07ffa27c6b6e5350040008fbe8a801cf858cd7249ea7d4f0412246abc0", - "address": "lax1wuufwc2snwy96n89z3mhnf6tuwq52eeel8xej0" - }, - { - "private_key": "f91ffbd8bef93b8473653ef1e1d9a84265df67a73e3708121db2dac061c4763b", - "address": "lax1h53p4s23j0x2ekjkx909gj7hzc4rhd2rp7gqv2" - }, - { - "private_key": "8ea2ec207842763fdce7a168bf6b83c3689a9b87044e0d5684ba963b92db9fc6", - "address": "lax1m5w4cxflq26a6upltf75cmepaexr94h45xqz67" - }, - { - "private_key": "f255de02b40e93b5190e6ac67ec6ba683d41c440bbb32972424a2ad5da9cd33c", - "address": "lax164nv56gkcwwcdhk3xat3tmy7920gpvls64anye" - }, - { - "private_key": "70a133160728e64d7c4782c8a5c66eaf4fe9afd098914fab9b9fddff1df83f23", - "address": "lax1ata4paq2jyxur0m9ghqku4qnxnjuewmlkcgl39" - }, - { - "private_key": "61850a489db59194678789ea12ec35fb537d712b7ded5e43bf5986b0f5aa371f", - "address": "lax1neujrq4cwfpdar7hzpzcm8qr9lqc7gwj496tq8" - }, - { - "private_key": "99e205efdceddde26c3f3b925863aec02fc912472f94570950d54ddfbeedbb14", - "address": "lax1p27wyn7lrug5rkl2lu2jyyfq0judncepuu6ws3" - }, - { - "private_key": "8ad62fc40d9db0f731d72c925f0eab6b915d232f890eee30da4dcce37d0a9ac0", - "address": "lax1t4dcnksqfxymzfmppm8qevyyp5puvzrs9e7a38" - }, - { - "private_key": "e344dff605db747f4b58605447d3bd8f4923cb5e0d6f442c1429c18286455140", - "address": "lax1klkvy865aleqwnxgeasemh2pelx5m06jn8qj9v" - }, - { - "private_key": "8f89de9d8d301b8abdb039cc0c439a1f8db0081c5f8ce192f4270b982d4d4451", - "address": "lax1xlwhs3p9q9qz6ewzv7a8deh5h3zf4t57e0g3le" - }, - { - "private_key": "d2caf6a7f34196eb58be593a290a08ad715bdb51ce3c9da3c5190f7f806031df", - "address": "lax1tt64quw22y9u3n6j7q2yccnz7gl04lh60y7ew2" - }, - { - "private_key": "ed6a6366736be5e46bdbb3641c25449ab9821188ff323ec4591ce1c7ca2550b4", - "address": "lax177lm4e56s8sxn8cn93sfk5ydmf7y6suaex0qn5" - }, - { - "private_key": "8ff3bd17631927728b0622d67d6f8157036aff5ca9fcba29c03f5314c3aee417", - "address": "lax1f8l39nykxqvgnzaej3xv40st3ewvg6xdlv3twd" - }, - { - "private_key": "d2b62baabaf9df0f915133127090b8a83d07e0043445e6624dc86b40dfb70ffe", - "address": "lax1dfawtvzd35zweajzrphhm9y292h7utcsg0zyhh" - }, - { - "private_key": "32b6330d658dbfd5df1d92b7643bcd9cec413a58dd150b62854b1b59dce1228c", - "address": "lax12s48nmv90ddpp2ysykzyxc9hsckgz90gqakj46" - }, - { - "private_key": "db070e6bc88086ae3168681f1f2241f4348735de033d83beae0c1bf6a3f86408", - "address": "lax1mec3ccej9wtauwmkpxck7fprycacq8tyzzh5z7" - }, - { - "private_key": "216987491bbe675835e6f620696ec3ad637067b8da1d2572aad173d47c0f657f", - "address": "lax1zvdpr6gxr5035avr9hy0z6tcxu77kxh7lj9sdy" - }, - { - "private_key": "dfbae6adaa1d0847c60b3341bf6f2d7b75dc87ccab2259d7f5d9825379ec1f1e", - "address": "lax1zdr7xy4z55sjpc52c8ltwuye7cx4warl2s6yft" - }, - { - "private_key": "665e953545d56e76438937a399658247fd577c6b3574866d0fd0748fd71313e8", - "address": "lax1sgkxt2ukck83ttljfg2k54qw8qwvzhe2jppj0d" - }, - { - "private_key": "409c854e3a59954f44ed15dbea6d5cecaa324e6f307ca1fc68199b6bdba46c75", - "address": "lax18qq4fn25kt3ql3wa5rekqu5swcuy8j5jl3kr25" - }, - { - "private_key": "9873c41ebb280e60cf4eadeb7a87158e9746739c80dece1539b5e8f59a48bd81", - "address": "lax1g4x0yynms6wz74rjw9ctktqp799lsa7jh96sgf" - }, - { - "private_key": "e30336cc6b5cfd347ef4f29be4235285865a66f64808cd41cda86b58ae5ab1e1", - "address": "lax15gujlaa9p0cvh8tzhsgd7dvzv0fdmw3tkcxdtm" - }, - { - "private_key": "1b78cf89dfdf6a6ad0a724e527d1f36043e68e622b2bf5816e35d1095e4500d1", - "address": "lax169nhpg5mx4dc5lege80myhvth0yuu0afvwn5rt" - }, - { - "private_key": "0e35827914a0efcc1c35628f6ba108bc7c8fcbbe3185797c41ad87f29c0a0c26", - "address": "lax13q0lq3e23r7gjzh8t20tewka7d8d9eh5326gm9" - }, - { - "private_key": "4bfdf6279fed8c817eb0176e7bdd640c15d0470ef25b51a79854a24ee1b63c59", - "address": "lax1m3qmvd6zdv9crpvg64sssqp97veemc6x4ws0sv" - }, - { - "private_key": "5cdf7be2e93b873425665babb65c7f0ed93e0f380687a8ffe64364a2056ed930", - "address": "lax1xqjwnmdfv2lja74s5pra2dy6gcvvuzt8rqknhh" - }, - { - "private_key": "6aea909640afb3e0e6c52a7a8883b053a7c7d36e652da501ef253f0dc2b2c7fd", - "address": "lax1eqe8xkhdedq4f3908ac777rtfs0zm7ks06pexm" - }, - { - "private_key": "5d3a3c9215ea7a6bcaa927a358945ebfb9c4f5cffdf95cba1d4cb83689c43b55", - "address": "lax1q06fermuzqydp36s2rha4ltxl72nw7cs0cue69" - }, - { - "private_key": "40b3779affc21bcb536ca592c1abe62a5531ab09c330e1e6d16ad2979b8e6abc", - "address": "lax1ethtzw5n9mj39fyl5fzp9kurtmpv47hyhq4a05" - }, - { - "private_key": "54fee39449e419cd2357fb81953e5f923d8537b5dd93fcb9c194ec55445a9dbb", - "address": "lax1kcu7ntl00tk08jm8ndk4jty3gdjee6r3p953qf" - }, - { - "private_key": "c64c2c8134c74677e47545ffd85d7a65b446016bf588b8a5650cb0e26f2b5484", - "address": "lax1qej22aztvm364hdevcm0tyvr2zun09ey8yl95t" - }, - { - "private_key": "c5dc17a4f1f52befb752775eaa52f0e4d8f81a1ab646c83dc179f81a4ff23ff5", - "address": "lax1jg4yw46xndv08ame9py9wj8580m7qqa0q3qhzy" - }, - { - "private_key": "95cf3a60341ac158f46637ab72dff7e05a22c746a85651de8aca74b5b41a047f", - "address": "lax1v5teatuxasvu67wxfr7au5c9ze04n3y3gs7r99" - }, - { - "private_key": "bc3f2f08f46866b0fbe8f2b98e24f25e8249eba9100f2f9f2fb5d03fe2ca500c", - "address": "lax1pjhf2vd2ehl3gjew26ep2j8t5gramf7jrlvd5d" - }, - { - "private_key": "6ac7276da5d38a7f3fbc91ef14be108e5d7794fa6ff3ede0f9a876322d8a62bc", - "address": "lax155qrsetayumk6mwpj5v8cxtl4nfmdn30q43tjj" - }, - { - "private_key": "b70365825302f06c4aafc1530277d647784f2a97717ab6b8544751f99ce2893e", - "address": "lax1cqqq2d2rhu7tfrcdhn6haww0pdh5dnjy5zf0kz" - }, - { - "private_key": "c7866f9f0ac6f94dbebb78be572fe2c803d1637ac0e11b532cf6c2a8a5988dd7", - "address": "lax14vz8p8xl5ernch3qrnlu2pa48c7cdu6tdv8z3c" - }, - { - "private_key": "4d58097db083b2caa9899267f952aacedc46ce1e6d3c04648a0bc6ae13f10e15", - "address": "lax1drpkn75cc2x6jluzz0l8tlquxdq03d00d7hv50" - }, - { - "private_key": "e83573f11a4e0e570272f8bd4bed6fdfec47a5ebe6a3216ff4432f0ff3df63b3", - "address": "lax1g4mc4dezhtkf8m9z4h7lewj2g68w96awdm3t9p" - }, - { - "private_key": "707e64e379c20c593831e0b37a5363138cd31f7895839a0027445a55de181410", - "address": "lax139af7e0e0334pjdj44qkd6y5uhryshyzkk4sng" - }, - { - "private_key": "83598d7fa3bb3135db655dd2a759e854088f855efa67429785e3a61aeb5f112a", - "address": "lax1jqwdh3mvcrh775eyss9xxrq7slaksewj08pkjx" - }, - { - "private_key": "35de83d51e43b7eae33af2487daeda8ae5a77ebbbe471a90d6d060dd387749a1", - "address": "lax1cehqz0e9rw5pdjnm76xqmp2l8tlayr20fyrahe" - }, - { - "private_key": "a7089bcaf1574cc090b47cd07b9dea6ba2d2549a1c8b995f3c358a0f65eebec0", - "address": "lax1he5gvvp3zk7qdejnr353yx4r68vf4w73we2y95" - }, - { - "private_key": "b1a38ae12858159259c153420f03f7c0cebf852754627f15087890f03f2704cc", - "address": "lax1nxy5wjxftucj8fekkrqrpe9kkh8xz0u7qddw6f" - }, - { - "private_key": "642a05288c4794ca1f4cdc5ce417dae0e877e8871ddc10f34f7e9657e6e0d73a", - "address": "lax1haft5kwmyqusfq0zjx7lqwtsz9skcgcqxqgw4s" - }, - { - "private_key": "9f57b0ad5ff405c1acfdf11d67c8522cf1c88afedacc31961ce71b8833a09b54", - "address": "lax1mwzy9kp52gqdkyppkdjh779qsxcscx349e3z6d" - }, - { - "private_key": "29899c3d721fedae248b8838d80b4b73175e2b60b7c715ff5b27cc6186aaea43", - "address": "lax1x8nxquxdj5zdyg44cs9xjv809ca45sh5zehykz" - }, - { - "private_key": "0cc24e7d05dce4078e126725bb7ae39e8557513a7b8bfaefb814fbfea4f3f214", - "address": "lax1c4gxdc89r06vqqq0wcluayetad86a2nr9502kj" - }, - { - "private_key": "f323d146be6febbbcd31f129a3f846f1f25ef71f3b27011a8ff2abbe288464e2", - "address": "lax1g6ggj84paepjd4gm8nukfrd94p5xztmh8sc8nz" - }, - { - "private_key": "681e6187c0b7336ecad69b19dd5ad331a616cdc749b6aaad272ccd534c3e19a4", - "address": "lax1a0nuvcs28k6dmj7h4g0ffkt8cjx6rskk4v9ag2" - }, - { - "private_key": "a3ffd63b049451c6bb5a7d2985f26707ad6688492f98d4dde40ca54e63a0822b", - "address": "lax1q99mm878xtdzhnxhsxpflp5dqer3u3l2tkjqhl" - }, - { - "private_key": "866d1c582ba4d3522bcdffd42f33f510505a792c04bcaa72ecf67fee4748ebb4", - "address": "lax1rs8xcr2lt3xu72tv03hyrzmjgp608em6hpkf2t" - }, - { - "private_key": "5eae82c2f2cd439a1b3cf687920ebcda0c692a8df6a596874acbcf481370aae8", - "address": "lax1awry698qx98z73pyyhs9e27zphf5mycusdpx3l" - }, - { - "private_key": "8c7f112ce9f66bd6adb369bc91b4d7b0e8a73d635e50b102a4dc1a7866d55678", - "address": "lax1tjdau4m0uvvep8jv5uay49a6l9cfuaate73dw3" - }, - { - "private_key": "4c8e783238c37f26dfe149c27c9ad9ff11c5758ff0d92a1f21c98fe74c924832", - "address": "lax10hd7l3cumkrcdqvrc9jnasjpqmr6g6r5z2e5sm" - }, - { - "private_key": "2f62616cd3dbf2edd5734ff53889b8a7fe6a17ac59e8d48f198e6fddfd2bda74", - "address": "lax1n3npjlhavxm8f3daxud2y880c7rsjws74sqtgn" - }, - { - "private_key": "da3d6480358433809f8e4ebf1d8a0c01836e91cc0f30f17c3d6913cd80ad6b49", - "address": "lax1adpvhp06dlxp2du7t3e0k57cnelcz6wm4snjwv" - }, - { - "private_key": "7add14fdbbd3ac1729b7dd92fcccaf86bec43dad0ebb94e681211d31dfd232a5", - "address": "lax1we6065apwra20js3ptw68cpgcukxyez35jln55" - }, - { - "private_key": "6f48e434994af3e778a36c5eae0a72e7461a760db04c079b6e059017ff3aa913", - "address": "lax1re06dluxlwhgnk9zd4nh39x5d2sfjgjl7m0lre" - }, - { - "private_key": "32f350a3ac6273cf32c5497058771c3b8fbff166c009a4617db1779abacf6d97", - "address": "lax1765u5mey8rn37kkxf8y2zzgqtlxfm2wahayl5d" - }, - { - "private_key": "22af76ef92a5f983a5462c141b08a7f749ebd43f4da3da6983e4b804b3b0a161", - "address": "lax1x4k0pv3xwhlyv4t2gn58hrmytrfzgwxpjyh99g" - }, - { - "private_key": "0c9d54cf463d642227d0fd04447d4e41f57defc721c760f3dffb1cb1f202f4bb", - "address": "lax1djamllkp708pasaydxsvrqn0lu0v0cqt7d84lp" - }, - { - "private_key": "a0148cf60d4bf2cff3354fb329869b6f9d4bc8867635141502e9a8ececf02d07", - "address": "lax18ajh2fyjv4t7w3qnt0du53d27nfcwydpsag83z" - }, - { - "private_key": "33134c5a57ed726fa3bdc4ee2ec852061154204a0f87e8341c4e2697ebe166f8", - "address": "lax1mcg0k2ryh3rdyxyghc0yl2hwqeekuh9ckslcmr" - }, - { - "private_key": "c57d192717e874dc50d4f6fa7b79393d6ba77df5288a987368f3a0c01108a04a", - "address": "lax1r59d5swuq798xztvsk2m9qvtprkwhgl7lm7umd" - }, - { - "private_key": "5338477525d1fec260c254207c51e48f90c2877d0c9b3cdbd55d11c729ccf79b", - "address": "lax1sgfcya8vqzprulhmmgzdam8pz5c0w86senx6qg" - }, - { - "private_key": "94826d2da6b56e7244df290639dc4a400030cea12aa65a81cd55fd960d668ade", - "address": "lax1eu09k6cfrtalqwkc77qwp38w9us3ggnnmgfny3" - }, - { - "private_key": "31f336f49847afa631b3326e466a3e529048ca8fa9a8e9ead60fff8e97d91ae8", - "address": "lax1lzhqv5yfcs7hathp40h953c2cv5xm9ctpw08s7" - }, - { - "private_key": "434e696498bcfb183341bd3664c6d549ba5202e0f40f118078e610279abe31e8", - "address": "lax13szktqzkeq4y3uj4reycmvdehuhy8ukzrqh93h" - }, - { - "private_key": "3fdcc6179a1c8be2556c2491fbc8a8e3b32c950838fdc5924fb113374f86b4f4", - "address": "lax1d990tta839pmksu8akxm8drakncjhcu5fj3y7l" - }, - { - "private_key": "abd5213572bf9e69b45d56d8db29985d2bec0ab2d6d23acc1d2104f011aa6906", - "address": "lax1ljt2wj36599z78enptwxtn37v47ts2ncxxw94k" - }, - { - "private_key": "899b27f71f38d61981e26d3b9b4c3ab44017f5540419293e804f7c65388d864c", - "address": "lax1mfywfdckd0qnl9dlql7v24t0rmgujxn3j27gv0" - }, - { - "private_key": "1b5915a04004ca012f857124bd38cea46b16b1f45af16970a6ec58e1df39af53", - "address": "lax1qljskq6ztfz0ghpt0zvxfg4ehuujvq7k98kd2p" - }, - { - "private_key": "9f43216c9639262fe79c8afbf33f2d446fe9f578ac5b3fdfcf25408a5e2c6e48", - "address": "lax1trh9yk5qyxem8gtk6zlqgu5d08nnz2ac34clpn" - }, - { - "private_key": "097e95b0bc85fcba940007ab9c547b623fc8ef9060e118aeba7ff781baa09812", - "address": "lax1cmwwugpmmja6qhs57xwc439ewytmzxq587kk99" - }, - { - "private_key": "b378afd6c74533c3a95ad4807ba76a8f901b724d274202b3306007a9140e4fd5", - "address": "lax1c9fy4g6u2w4an67sk4vaupa7d8yxlt59x9f5af" - }, - { - "private_key": "a9568cee03faaa084c5e41da48031b38f9c85faa0542d1184c4a75e4d796d0d5", - "address": "lax1ndvxu7ktp8376vurgu9nhvxx3ufpv08ppae9eq" - }, - { - "private_key": "7caadf89a7775a974ac224a8b45417c84dfaeff11375a074e695ae8c676d529b", - "address": "lax185qtm3w46l2qhjqsuulch6zvy2asgmhjq2532u" - }, - { - "private_key": "76e28927b9fdc7640044d81a898a5a4e0c3557604c43d56d01a04300227c56cf", - "address": "lax1wph2qqq2q3nx7yqx9r5chq2frxxktpshxe0mlm" - }, - { - "private_key": "be65b248461cd31f407bf65fd59c57964a54b51f94b2e671eda41fc52d04790f", - "address": "lax1zxf5cmdhnyzn59040lqcwj7tqxn9lz32vjyln6" - }, - { - "private_key": "9748fefc4f9249eb36e3a71ea55e42ba26912d2a039687bdb341acb275939a6c", - "address": "lax196y83hu6ln90qxmahz9vl07kyqh5s7e5lczhes" - }, - { - "private_key": "6e970cef30d28c5509857f2f27f86dae36032fb6b552baf603d9a9ef8ed900bb", - "address": "lax173e3arwzkyvspqscj9mtr9lpdg44z20h9lv2pm" - }, - { - "private_key": "753df987f57292d8783f7c0cf4d507c20ae433ce022aa60f928ca39b6e6aebad", - "address": "lax1wj0n764gf65cjfvxcspcen8xt4m0gw0x4qqseu" - }, - { - "private_key": "c33985be14ea2542ccc5c4fa78fc88a162962bf81f0823e656a32072592657d6", - "address": "lax1e5plzc6fs4an77h6f5w4tr8a805em35ws3j6qc" - }, - { - "private_key": "68f3c5b12d5bb2c9fd15bbce5876439d6c54c6d6d089447be1097e76969c39bb", - "address": "lax13tlyaf72u5xlql9thy5630vfcfres7eu5x0wg9" - }, - { - "private_key": "8918acbea7fd4b3eaa0af9825e6da07c56d7fcdcb585f2ec32550adfcd3253f3", - "address": "lax13z6ly7nwffqu0mzle6usttya3nwxcruk83jrtd" - }, - { - "private_key": "5790b7c1b3103065d3652448f9a2a91d8559a289f93ce763ea4c7e0b29dd49b5", - "address": "lax16lvzaa5pamn6k06zfegwh4867q5tqy06trx2na" - }, - { - "private_key": "c8fedc0d1b9b2ae73da04cf70216f01f310c5a4b7c9f08414546b0b10984a971", - "address": "lax1v6hhrpn2qjxm4x780ytmqr2nxj2pweakc4ssvg" - }, - { - "private_key": "bdfccb8937f2be3fcbb0a68792a65398cfe748ec32d91e9f9c23b64ec4d19de5", - "address": "lax199xpc98wz46zvjvzx4st6flt3ku0ua6264q8uj" - }, - { - "private_key": "82bf7e4a3d48149dc5b42f484a2a3de952b606648c024e83ea4c3a0e0fac1f64", - "address": "lax1mhlh30hew9az7ng25s2m2xvx9uys3laxxw6lak" - }, - { - "private_key": "8473f35e53acd32f6614cd4f9a2c1abb7fa7b57b49a3607c7b46881d50fd605e", - "address": "lax17jj4gz80adqleja846jwhzpn3r9equn6h2a87z" - }, - { - "private_key": "a7af20362376dae4c4cbc62a8c984e8b23b91d055e4a6af64d6f0a711e15f5c2", - "address": "lax1lyjyqa979v4lgdyjwm8wpy8lxu6l9nmmpt2gfj" - }, - { - "private_key": "d05227a188d3b1a4e58d28d0851f9803210b56784390eb5e92e388141fcf7590", - "address": "lax12tgys4spjzan9mkf4d32qed5gm5g4cv2p5n9zu" - }, - { - "private_key": "f55e40179671efa332b3eccd85f86ee7dfad7d78b8cd9eebd927f264d285bdac", - "address": "lax1w844yqlel6ep3am3y8hfjkvhh696uwhglcw9ff" - }, - { - "private_key": "840a6cf8d6b6455a81d4a6e54533e68411eb4bf8f61a494842ae0c61919c01f1", - "address": "lax1a5ju5wd6lzc8v6yez4pvtkkqfutcmnzzh4ayf2" - }, - { - "private_key": "0d493815434fac1bfd5deea8f89c5235b43a9e02b1a7f0fd6436bcc3f36fa838", - "address": "lax142zml3dne7akn8jum8hez8vz9sn4ym2zhrv4qs" - }, - { - "private_key": "a0181c266cace3f10e2b3a0f32f4466731c3580723c59f9a98b0052e0575aa37", - "address": "lax1alc07ppu0clfwgwjzpdwe3qps4478rg9fqa466" - }, - { - "private_key": "1efca0aff56008a1ba9393dd585e0ab6f9d240c5db1618bb7133ddda23e7977d", - "address": "lax1qrhkdvrg8hfwf6t69vzcm6cxpnm8zwkekyt8t4" - }, - { - "private_key": "3fb1b7da9ff4e1662f46f69e15857d302e97db0a34299ed8439ad44887894ddc", - "address": "lax1cepqv205l5gxt4u4w6shk2nkjdvtsq7vjy7tv8" - }, - { - "private_key": "542e25ebe9d2497b50ba449989b3cd836b520242aeb1824d678304d48570033c", - "address": "lax1xv6rppjnpenrjv24zlcq59vythtsr2nda5a6z4" - }, - { - "private_key": "964095fb45d91d15e580a784c3eed7b6baf99bb303ea0b2848490aa19a428c92", - "address": "lax1agwag5zfqh8hwksv3n4mk3ecmdn77lcv73lngw" - }, - { - "private_key": "a3a93c45b0af45c60e04ecec93c605e4b857cfa489b3356a306b3bfb65385b0e", - "address": "lax1a3f28mdq7r86wwr8ztwpgq670ps0mfl57p670e" - }, - { - "private_key": "143da1e6eb9bb85d78e33963a381b95a3bbc47296fdbb477c287025d2495d550", - "address": "lax1qjvlm6puq7l866gteftst0zs5ud2c5t0vrugrc" - }, - { - "private_key": "7524cab2eeb303ac346125c453e3f16aade1ea720963c66367763272bbbedd4b", - "address": "lax1h4vcffd3wn0ay4qtycsuuyje4vg5zgc9eq9nsr" - }, - { - "private_key": "0220fd8fe64e29cb91ca07c246f234cdff5af34ed7c3b29a8ed73c73392634a9", - "address": "lax1zmcwvyv7zac95pa6czjx7k6ha42uclkx3ggf9s" - }, - { - "private_key": "02d07079e173c5bafdf6c7288f97b1c093b78544d02cfe70279fb37c57708319", - "address": "lax1ncvwgadlgtnrurzljfn6ttkfn46mhga2kklnra" - }, - { - "private_key": "ea417bd4cd6cb6a897cfcf5c13559d535c179eead255b11e89628f0529ffd13d", - "address": "lax1a9xjqnazyhjpzeaj34a7r9ra2t35e2mvrjvy2w" - }, - { - "private_key": "8d820b52cec9ba9f546a37c17b8fa5e4eeede3f77f8494197fb83f7fa32c2424", - "address": "lax1eun8wt4wd9sqhf6nfjdjjh8y5d20pxecquyhyq" - }, - { - "private_key": "9aa00215a8963c4d6094bbd524677a16655e0e462a8a8600389cc01c68d54aa6", - "address": "lax1fjcr2t30le3aqzt8cnrzzjp3hq7xjaet0a5tk5" - }, - { - "private_key": "767da7530b933be6d7e455b1a1a87bd061db17ee0543776a83cd96cb1b40e91a", - "address": "lax1mfncpujuwheevtusc32cjtk53qpnf42amarge9" - }, - { - "private_key": "429db9a4100ddd9ebd9fb402e7e3808302772d42e5f3178fe630d4f042027b6a", - "address": "lax13gre5um8ezcy780pjpcvuun67s7r8l87dl8lyd" - }, - { - "private_key": "64fe6b3fad4e8caac28dc171545c03c905addb26ea1e199db16e2f50bbb9b7b7", - "address": "lax15fdwgsalrpgq29v9a0rf7s88jyfnw6a336n93g" - }, - { - "private_key": "ed84a8ef90fe878fbaa43abf2e29068e8f6edc7996f380de9ad1d244bb503cff", - "address": "lax1ue03gqfequud8e5ekx7p79g5kv75q9epuhlm8m" - }, - { - "private_key": "34d234cd8a7ab9b3c8dd9f1f1ccff4570428ab3342a58c745eb67a980468d37d", - "address": "lax1rnz850p2hqy24qy9g3wl5rmjn68qzkvuag8njr" - }, - { - "private_key": "9f4f2d47f4356700aec0fcf1b4346d6cc16d38f7f6e2077ce94a68fefabe205b", - "address": "lax159vw0pxdrs8pzunn68n8rnxz6e4vpffescrnlr" - }, - { - "private_key": "d67e2cfb2883552249e404e8dd83af08bd438397e5f7c9c78fb9fce4cac0e7f3", - "address": "lax15q79rguf75v8u753c30duxa5792hur78kfdrn7" - }, - { - "private_key": "1064d8fa41fe562ebe0447974068f23383c22a5ffe5ccdf737bb555f6d367773", - "address": "lax1f3k2v0946svgtkd35nky5y60qtwfzjhl9llz54" - }, - { - "private_key": "443948c81a7671cf48dbfefa0825ebd6b85fb811f87d63e6473d38b7d28637d5", - "address": "lax19ze9mz45f3vekvjtr2txvsxt0skxsatr43df29" - }, - { - "private_key": "344ecd7644d5725ee0980ad467bf958dd44ed6bb662f757c6d32c616dca2c009", - "address": "lax19rpvnc004d0njcnpcve4fsplxedqepkscgn3jw" - }, - { - "private_key": "c76db8eff22aa510a0b8813db6ab98f03b4efa8c70fe233a21e9f755673c4560", - "address": "lax1uf8m98a57fu3hwj06nmpkq9gnjzw5wuahssler" - }, - { - "private_key": "c7186975ac4f189b9f03641eca724936042505fdf3e8e01ef1065159016ec019", - "address": "lax1572zeyyrctw5t2wny4na7rdnh6e224tqyf3mk8" - }, - { - "private_key": "874c7c49623e95a4766269c0761564812d6819499fdb67f3cb752bf17b7a5c03", - "address": "lax12unlh6eu97wn9swj80dtv87dauhzvamrceuvq9" - }, - { - "private_key": "ebcdbb263f43502fcebd7de0d44410cb40d20560d67e37847960b52e48a72df3", - "address": "lax15gcn9stwmzssgllt33c8v2vjsh6k7j0sfefsn4" - }, - { - "private_key": "c2b03591cfdb48f23df8a71a49ee0287e66bf3cc3cf317cee7a9413c6b380a6e", - "address": "lax1h6jdg49scx87hde0l7sevrwe6jnl9qs889k08f" - }, - { - "private_key": "dcd4f99347d828bb29d03096e8dd1d2fe972e394390ce5de3623f219cf9e5976", - "address": "lax1383j7yj6c4g4cx7ucurtehp2m997zhf33ecpf6" - }, - { - "private_key": "60b1cf274d5c7449897ef51b97a2f7ca145650aaf631016cad95f6fdb1c30fc3", - "address": "lax1amtzsumks8keymaky64mw2wmaym4mxas70qry2" - }, - { - "private_key": "2097e1a2ff0316c2bbdd2e660812d06e8d76e24ce0202728ee8903b893565afd", - "address": "lax19v33j8yjexzpq4m9tz2n6yquen6xjuhmyjmw9d" - }, - { - "private_key": "61dcf7dcd202b6f5cecd8b0dfa853dfc2e990e261a695e9a98976fd7c7980780", - "address": "lax1uqxlja82ympc35u8n9l8gsq295zvxeah8t6r0p" - }, - { - "private_key": "c50164dc61c8824f7aa08b04d751ea526c8275d1aa3cc536b6f2a8848fbe0398", - "address": "lax1x4qkw8ken526f4qshfnkdt8aa06xpwndsgz7rn" - }, - { - "private_key": "1e59209ae619d4130673931f20054e756a1768f14311080607c34edbe92f2845", - "address": "lax1x448dp6sft3xty4pkzhysfxs5aa9x3j65lz0d8" - }, - { - "private_key": "4492b6f4d3d31a6f7c709611486270c0104a8d2856b55da7bc61dbb6cacf850d", - "address": "lax1xwuzyuu2p6nyk6nk63v79fnf7p83y6zezdr0j9" - }, - { - "private_key": "c2b86606ad48f5fa458d8877e004b335f078455da2cf779be9a7c0529f539b91", - "address": "lax1mwxz0ca00r8he6uepcd0xssmcj35nzatgpew5n" - }, - { - "private_key": "8b7957ed21b343082e046efaa6e1bd89926869f8d9ce5665390a5cfe1d3d1515", - "address": "lax1mpdhkegwuehpk0j9dhmk32j0uz620wjmp84f30" - }, - { - "private_key": "4c7330557d789189c9619733c0f3dbbf8f33761c125484603e83bd63f653e28e", - "address": "lax1vuc4agnxq928y4l28ms2ykp6hz869zucy3hsnw" - }, - { - "private_key": "6ba3a4e08d706de270faea38c6ffc58fa84a94ce7e95a66db57f6ae382426673", - "address": "lax1gj4fysdn7ps4tnys4acrzyfrp2hwphcha727dw" - }, - { - "private_key": "77b586ef39bd66b5ac051e55969a4e56538df0999f6bb58dafed139bfceb086a", - "address": "lax1kphe57ry3x0kpqlmmfzml7dpd8sqc20wc02cl3" - }, - { - "private_key": "afcfcae565fbcb9e15b101aad3b1ee63d206beb6ea93f4fcc36bd498bc48fe78", - "address": "lax1hgjq726zvyez3enwkevc8tm0pk5qq45wvy6wzt" - }, - { - "private_key": "41035f27cb842af0b0c4e52c6a8f8a5d17be43c53f33dc60afb6700e6d1b783f", - "address": "lax19amw22r7lxtvtr6zusny0vuqy08wwfpc3uv8kl" - }, - { - "private_key": "76bb50c5bbe6ae835cb1115ad024b7cdf0ed3a72915423d19dd7b904aed37214", - "address": "lax1vu4u8ryg4rjfmdr432crk3tjxn9uv8gmjrty5u" - }, - { - "private_key": "97920ffffa9596775513ed83c33755bb5fcbe82f76533aa6071ca1a0fb06bd3b", - "address": "lax1ca5qytjdhpz9fs8d4w4695saur66yc4x30kgle" - }, - { - "private_key": "6666956c13a6c47a998660f544edb7353d18d945ed38ec7aea6b1ea310da2315", - "address": "lax1pp0024ze5zj8v23q00n5zqq2l8nr8628k320rq" - }, - { - "private_key": "37b61346948a372ba10fb95d14113194c4689bf53b8e429ffa1921c29c6acd2b", - "address": "lax1nd0ynpzzrphkelxu3qj8nmx6sw2cesvrffp8hx" - }, - { - "private_key": "c8399730a9b22b229a022c1dad1c398d3e61b2a4ae2c49ee6ae5297cbdeaa9ed", - "address": "lax1s0glsnh9ggs09ljuycm3m5q4ys3vrfrycqfy8w" - }, - { - "private_key": "ef6d203abe379461abccad7894ea8c9fa74c2c6ff24575a63f58cf132d6d5f1c", - "address": "lax1sluac2hpdwnfvdh728kyvuv2qtgqp24j39067g" - }, - { - "private_key": "d516d2584c91db6339e0aec07955b6821ccf94eb973c69bc9595c0fb178b1fc2", - "address": "lax1vc4tsxmraje6srfgwxacltg223pegy4s25p2ae" - }, - { - "private_key": "ed49058b1113d3ffb325412ec1117473f4299d0040b6b5f9ae31735c8ba99c3c", - "address": "lax1jgfjuzr8dzpwhkc6z447hmfn7fmm87hvumggfg" - }, - { - "private_key": "bc4d35cfb29e66c335e65d921594b41e02ea9532189a8cfa25e520750aefbc64", - "address": "lax1vnrdvsuwtcs4cvsj6tj0ajmzfswxunpdcmwkhu" - }, - { - "private_key": "5714045e2579908a5c9d19f10c23e700222210b5b541dae17c998ac0999b049b", - "address": "lax16s5tpnvxmh8x65e88xfgdxh9ghjwmev9cq0kkh" - }, - { - "private_key": "33269f750d9abc55cbee4d29df49dcba6f656a035219597cfef8b4940099f90a", - "address": "lax157u67nnswr6e3fekcumnz66klyh0t6ejsjvp9c" - }, - { - "private_key": "48695aaf066ca80ad2f082c8c2f6cdc4d35696e8f565c856aae9ef4684262a0e", - "address": "lax1aqz3s7ppjz6sndq83uj53zktumkcpmzjwghe2w" - }, - { - "private_key": "dcc6ab8bf071a1b8c6a3f225ea6744d5b28fff2fafeca46248ef6811b6ef27a8", - "address": "lax18v50tcvec325xyca9lgg3elh755l9c5970f4qv" - }, - { - "private_key": "e6475be4eff888c88e60888f09a05fe606c21e4cf3c2c6866ba8a6c39efa3247", - "address": "lax1lkw4nnqraalvqdstfw6e8vjwqsrrd5ammjex4e" - }, - { - "private_key": "2a70781cfd5342ad9591f3b0132929e7bc8635555803a8491d95062be974780b", - "address": "lax1sngvjhdt7a3ea40qex8vvhqen0yvnur0qh3nxs" - }, - { - "private_key": "17f962c1556d9092386321cfcb01333aa769ef4da081e3e5256ff4d19a8704ee", - "address": "lax1wj5rt7hnrgm9ezq3tmaz2mjm8j9xqpzw9703xj" - }, - { - "private_key": "65f878c14dab2b352cda4644c797e0e3589b5663f211dccb4bea4bc97aa70526", - "address": "lax13z8fpc3md4z94zhd5283qle2r4p9q7w8wcxajl" - }, - { - "private_key": "ced36adf342509dfabccf7a85d202dd84182cb753095af639e6b92b8b5b7823a", - "address": "lax14gjdgxzwzghj3x85jllhc739tfyu0vrd784uqr" - }, - { - "private_key": "4829fe98d269643ae15447c293b2cfffbfb560fe77a1a9e293c646f48293dab9", - "address": "lax1225ugx9zjha94g70gyaxr0datje3r3afzpzkfw" - }, - { - "private_key": "b5ea95caadc162e8dd419986bd9865a95553ebe36aa1f581a1b3dac135353216", - "address": "lax1cc4n463h6u5zynltfy3k6q2ueggns0p6dcxj7y" - }, - { - "private_key": "4b6ab586b78cfb6c69606289e396fc11bd2a5e6b2f121b003d0abe7acd27c0cf", - "address": "lax1u2npk48nkw48wralwg35vjv6zcgzp4djyy7m9y" - }, - { - "private_key": "062c6432953e4de7202c14d9c17c0d9f7e771207bbd33cfedf7cbfedadcf9226", - "address": "lax13ldpxg7akw4x6qqw0qnytv0y7g8elm8s853gdq" - }, - { - "private_key": "de528ec22db57bc570b5d23dbde9414de73a12a740c40ef6435aa51a83fc46a7", - "address": "lax1092hhyqnps6yljkzfnaa9y7xhntlefmfucp7xv" - }, - { - "private_key": "1c5ee1ce053dd7ee4f94ce75d4e251e5ae16952abb5d9115bd6dcc9ed941a527", - "address": "lax17hke9n42647zsyfl93l025v3wghlk3x2vfaaae" - }, - { - "private_key": "04ea054987c539dc911780bf5189429df5f4834bbc753fee29ef14aec9e5f278", - "address": "lax134nd0khyr237mkd9qxykytta58djng2rfrecnq" - }, - { - "private_key": "b5839d4339467628c4cd052a92b8527eed3a0caf9e5eca71e153c305503b17ce", - "address": "lax1x0nm37yas9rfk8swkzs3f0sr73f483v7v69urz" - }, - { - "private_key": "838cbb3e7928b159cb83402ed71d92e918e40c1bade1b310382f14763d05a22e", - "address": "lax198txrsyfp4ag7kerlh298djpw8cfesd9yvlqmk" - }, - { - "private_key": "af2f44560b7fc428708a6bf95c051c4dc55b384547b2f26b2e501af786e08f26", - "address": "lax195jwptz7jk3eh0z34kknrcahejd725n6zmsynl" - }, - { - "private_key": "f1a4babdb4c824affcacd91657a14e483606135a4877ab57f7b08924d9f68427", - "address": "lax1zrk02yy5f6lnq94uwan500d79emmffryu673w9" - }, - { - "private_key": "ebc5204af4d1de8ba6ee23a6a3efe9a571038e74fef98917082a31e748095df4", - "address": "lax13x70c83p4q6m6kz6z6qj3duangx0793al5smpr" - }, - { - "private_key": "9bbcd4f1b763dfd563b1c8cad67bdb18f9ce99b0320e77ae3d1971c8b27c72fa", - "address": "lax1nx0psl4w3fujp9nua66qx6u5awmnqsqshqpds7" - }, - { - "private_key": "4439a8700e9f3978b01bbef2826f74172d5872d61e033f9527ccebf1af1d660f", - "address": "lax1axeuahnjjxtmp8senjcx3ljrj7e5pqm78uzkef" - }, - { - "private_key": "b724cb4419875cec180a1f954dbf938e3a8d66195ab3671540cd61fbbafab1e5", - "address": "lax1alkpzg8vvwnt335hguk34at2nl8qqv5an5kv5k" - }, - { - "private_key": "0c6c2f58a8bb3f595bb13fbadc8bea38837fa67412a35df99d02c7de2e085294", - "address": "lax1da3wvpqzmmcr8pgvfchulpg9u5thc8yn7jxqgr" - }, - { - "private_key": "7e37059f540540f0213b03757a712d74956b0f804e52a6ed73304b1d44fa4871", - "address": "lax1tw5dh53ra8u92n3vj09rm6qq7nze5sx47huvqz" - }, - { - "private_key": "cc1aba039bef707ecf34aa31b0f9068d3b661f6b8ed01ed8b97e3c4086191818", - "address": "lax1nzcklzkd964hnm3zrllq3a3rkqc23ev6gxn6yn" - }, - { - "private_key": "0a49ba192635cb971dfc0fb7a40f56205785477cc62dc55ed71a03747ae06544", - "address": "lax1rtxdx0c4kf39ge6jzv7uke4awhuyx996vldr6d" - }, - { - "private_key": "e2096baa4f43634ba4c83ce9ea2363fda2f71fb342d24dcd13a07fec14e3e876", - "address": "lax1x8t6zh8el5pxmfqzzxg07n3puy4phur9vzt2sj" - }, - { - "private_key": "e63712c92bdfa59a68d08998103f67d33c40c6c330a3e499b72fb9ab3ab46b8c", - "address": "lax18vgu4zp8nxx63mzfnhy7yfd2wuamlau86qj9xn" - }, - { - "private_key": "00551a07a9e8ab87db47e1064ac9933afc3c2788d049743df84dd6e7c68ce42c", - "address": "lax1ys7k7ln7720ael7nfd8ja8my9lxf93mwn5tl23" - }, - { - "private_key": "75ec6c7f09ed9a8682cd0a96bd540e74696b4f60daa69e182d938a2f4226c11a", - "address": "lax1kf7cgllldxty7vqsgd3h3gap52q4eycfyy965z" - }, - { - "private_key": "d531093f420026b407e492ab73b88239f9cca88d964ef44c42f4abcc8e716c05", - "address": "lax18q82cepd9nmxgrr6wsf3d0gwfezuqj6x0xkgjs" - }, - { - "private_key": "7ef874c5a727cd1410d3b27966120329940a9ec128bb78e4df1a7c19b23a16b8", - "address": "lax1d7ktv026vhpkajf2jamewqvm8sxen07ww9pfaa" - }, - { - "private_key": "bb8cb1cfb2a7936872a0ffaf37c16d45af4199c8da0e8d9be6bcfbefbeb8f95b", - "address": "lax1hqs2ae8xyxuz23ty4vqd6hutf5czwypemal5r5" - }, - { - "private_key": "24d21d9a46b68cc79201e17fd0a3e748cc946ff2af1000e4e221f8f7a5251628", - "address": "lax1ru02dt6u6d0ult8t6hp6ymu5wnn8rx9c7m5r0j" - }, - { - "private_key": "ed7c3d1998de1201523f726ee7d7eedf03dc555f55ca146ff477a2cd25c8b1f2", - "address": "lax13k57qkeefah73k3up0x6tcmtzpa83cy4g39rhy" - }, - { - "private_key": "bd65aa2f55af965d1772d2b9fab52cb225660b90bf08ecd6bf80cc32d10279cd", - "address": "lax1yrcdcv05cu9zma4vsklw6lns265aemmudh6wh9" - }, - { - "private_key": "2476675564554f18a5309220ead6da9f30f3330e7f277602eb837068da548b1f", - "address": "lax158a2pmh6ervmfqds8ejnff4v6gt893p3u4es7a" - }, - { - "private_key": "bcb24779e0ced5808dc7f0aa220651a786f93af8ecbdf51eca01c3c4160ce57e", - "address": "lax1r8de85jwy9ad8t568gppuz5gy4sq5supyv54sr" - }, - { - "private_key": "fbc9c1ed29da5bd97c4c52f2bf7e897861c1748038c853256d0d4019515854ef", - "address": "lax165k3zk5platdegfu0v0qaqrjgehg0mrt6dwfnh" - }, - { - "private_key": "4670bbd98ed51f0b7cd9ee86bca1ef80d00d8ccb4147c40a1452991856c04bd9", - "address": "lax1dhft72ht80z764yqmt63vx9wmeu5ju4esgxcja" - }, - { - "private_key": "af7f1f4908bb27b29fe0ae734069e51e0764436a605661319acec77d907ee449", - "address": "lax19wxpxnazrx0jqdpu6hwyzurhryluqazgfyses5" - }, - { - "private_key": "a6df2866da9d677f4bb50ba804385dbbb7e21c133850f8190762e787ceb31f34", - "address": "lax1fgdcxrdk86hegkl9fvj0ww0spzpwh3uxaxqgaf" - }, - { - "private_key": "8621857a9022ad826b3e9433b6bd6769945994ad977a8367297b0d47ff95387a", - "address": "lax1t55hz6qw2laasgpg8vxq0kdval4l9xn8hjnl2k" - }, - { - "private_key": "7de385600372b6515cb281862ea5dbb172e078836349491629f62f6f2bf0f2b4", - "address": "lax19e5x2r6paa8c00htzz4e85gysc5yfykl2ekzzh" - }, - { - "private_key": "dd68b266ac64113e0f253f99a5ddec6e491c8dea7c7421b9afd89fca6ae110e6", - "address": "lax10t76rw26ftq0kyyv33289wq342prndknpvgcl7" - }, - { - "private_key": "67674e8369065a02f417fc4a3fed8ec3c0ba5d4d2cc1c6696a657f91317fef9e", - "address": "lax19zz8vx08q86jk6dpjjksssrv8wxqtuv4hkvvx6" - }, - { - "private_key": "a4dd81786ab16715074b6842cc32c72ef122bd780ca756e3b97787584dd2e47c", - "address": "lax1rk8al686yd4eu3knnukeknvhj2usxmv6waqek7" - }, - { - "private_key": "a339876744c3c2d1b072a939787747cc9c9c2d34a0c8b76e6a83f8fa8ed858dc", - "address": "lax19dz74y7mc2eufxz2f5lwfjqcxpx5377hydg0sy" - }, - { - "private_key": "125d52a0584699aee170d5dd282e5fa62523877a0e5771395eaa4d0af699e3a5", - "address": "lax1j2u43xhm39e7e35w689jqr3hqr2vtya02krpee" - }, - { - "private_key": "34abc7be32f519365052793e8d7c787c0c958699b902fc048531d81e112c4001", - "address": "lax16xsfnq9z9qj9ac2cxkjmtqkyxksss2l2ku7645" - }, - { - "private_key": "b863f4ba279d9af86b551f520c92156056c23c5827152d266018541660b8bbc2", - "address": "lax152zts3vstnvyu836wfprt088gpcgghfn5nyzy9" - }, - { - "private_key": "c78edc3cb2a862765c391d1327d990fd1703f5dae942864c7c90669cf5e1774d", - "address": "lax1l4hn2kv2s58h08jc3zhd2dukdgngvkza66sec4" - }, - { - "private_key": "47c592579c6a8f3083c3a5d1a8c86b09e2960b734226ca15e3fd5a658cdbdcf8", - "address": "lax1kdfrqverpe3nn2qe3mmgq22cqhj7kepn8lrf93" - }, - { - "private_key": "55e227055712029c4e33dfcf9af0bb5974195616dc08ca86ae1897c0a1590435", - "address": "lax1uj7p8cqg39hvh6y5p5rg486tka4mrtphekzrfx" - }, - { - "private_key": "46db102ac8d6f7499053847251aff22e5458a147f48403b71cb7bda5d3259182", - "address": "lax1yw2ed72assjg7yd0dwk4deqs24umydal7d0vu9" - }, - { - "private_key": "139ffc1ed2e0b55e01b5a6017af4de1a5985c0dcaef22f16dfce04ea12a08449", - "address": "lax1nwauvew3dlpasac7hrv8qtj3smn74wxfdxl5wx" - }, - { - "private_key": "d4ea9c3513419680406a12e582f29556a1955daed1a2f00211838ae0e847b918", - "address": "lax1rwkycksdyzrzmfg44xgkpvvdqlgl9dv8wcx6ty" - }, - { - "private_key": "51a7737ac849522340249ec7df40b83cc867c6de3b2f61e193a96c12ed4f13b6", - "address": "lax1ftjpzc7vd9z256k93y9y6yvljh02jvlhedpm4u" - }, - { - "private_key": "54a33a6e4051c1ca9bd8337dac88687d9382dce5172cc7021276949166f49db2", - "address": "lax17fwp6s4ty60jux9ynmwk72x7jnc0p8eey9m46u" - }, - { - "private_key": "dd5f076e94b44590f7e5c8e93747f149d6952d33d6a6265a0ed34ad4c478c9b4", - "address": "lax1aengtggju64v40w2ewr937ed7usp60aaxhft8l" - }, - { - "private_key": "fae5475201b1d975d1ffc2c1eebfdcb2ea7828428644ec90bc5a6a2227eb08be", - "address": "lax1ra030ark04n9eurpzaywpdsumquk4rdmcdvdyn" - }, - { - "private_key": "370a820f9ba073e133dd069982e685666492c8d63fda2f3b6033b62b787704ce", - "address": "lax1q2c820t0ves7s4v3mch26lf4dmhqeezmsmtvef" - }, - { - "private_key": "dca2bdf0b033717a7789c34908c3a499e803bad4deaaaf058950c36d78a2e32a", - "address": "lax1e2m3l2kpdu2vkm0vzr2g4a98glkwf3p7h6d7xa" - }, - { - "private_key": "5189efe622cf2534b598f934bb44e18b9ac321de46679596d4046b610439cb7d", - "address": "lax1xlrqhpkn5urh0lr3z4469nnesd8m0lfv0vcg4m" - }, - { - "private_key": "91c6e657fa089fbcf0bb19d88457fda5dcd264a2bed42c38e450e4ed79adc792", - "address": "lax1fuxf5e23h5lxrj7uxn86p2gdghn5urzpt4t7jm" - }, - { - "private_key": "2f77fb7c8e8ca42a6a8203380281697807c9489914e2340a450fb72cbe1c8ff3", - "address": "lax120xcrt7vffks472s7evw990perhc2racc35f6k" - }, - { - "private_key": "467d31ec4e00b0f15e3861eeb23865c25da0a89267604323f824442eb1defaee", - "address": "lax18cgq8exh4t07h5gcrhx8qxgt5pmvdyatvpj54u" - }, - { - "private_key": "fc8d7ad6c86b57a69c64e06bd49f96254c56078c1c8bc88a175ee5ab8f078e33", - "address": "lax1gy8xvqh9yw3exanrdd7h7vczddllfamzek3q9p" - }, - { - "private_key": "d7100d7f2850a393e86100dae9ce07115eb64e0f1159a3d1b3f38f724c32c9d2", - "address": "lax15dy6g0r750l43zjxzcn0wl9jvh9xqld35nxnre" - }, - { - "private_key": "3f84dcaa8cb0c46c8f16961f672d3908889e1453cc1c26459fc950219f166e0c", - "address": "lax130w7z52eq7rs5zrjapddyw3y0crcjggcccdkgl" - }, - { - "private_key": "8f7ef1fd8d7fdbcff4b1d627981742a15a60d298c8224c507d47b842ecd96bb1", - "address": "lax1d6gef34sgk2929e30u3pmp0gldgxdkhaeqlrza" - }, - { - "private_key": "adc03e62316dd4b3d621f635f065ada6329e7db8aa29b31568fc594981317684", - "address": "lax1th5ejz4celgxvty9gxgvy7adekdpmu3khhgt7d" - }, - { - "private_key": "7b76b06f46c16082de1a49087398b4e8ff61bd77e4e501be5880ba5821d5a889", - "address": "lax1kqd69qn8a459ca8ck02x8h4kj3xnyw30ngd9cy" - }, - { - "private_key": "9339bf21cedb6415992eced58a5689ed3975bdf21207b9c78d70ac93616e3deb", - "address": "lax1f9cmqvrk75h8rxgq04uny60w0l0pw6tffdxj96" - }, - { - "private_key": "84a5a342f2546fb404f30558c052c03c69b1c73fd7a1750d8e2abf8717b3aada", - "address": "lax1vj27g7q7memztvh2u3d08uajpqpj50m7gm4xdl" - }, - { - "private_key": "6b1623e923dcbd841af6de149c7ef9cf2fe5f2fbe28e459638cb294f948906c3", - "address": "lax1hf27awxpc4zcr7jvds5fh7zllqyjx4cgfe732l" - }, - { - "private_key": "54773f472febe8d4ca5d536bf9dac0913522461f725ca13f8fe2c42379b0e042", - "address": "lax1h9xcskrljcggqvlaa0lvuxuked844yalhc3uk2" - }, - { - "private_key": "2a62c4793a0d361a066b42de5476f384c96c1be7df0c1388b6560d64d708413f", - "address": "lax1dcsd65vaat2zw6pf2zc29ymlcyfkguvc69599k" - }, - { - "private_key": "eea6c097d4b92533e35240fa3dab1ba732139119f50baed9491888b58bcd29d1", - "address": "lax1rcesh3wlwrs8ytcd647h6jph6tuvptq9uykum3" - }, - { - "private_key": "909f674f57c70b95690b095fbdca2dd44cb010c2762129586f5202500c309727", - "address": "lax1sn3lpfgvfphy5adxzfdzthgcjvl0pw7lj0fj0v" - }, - { - "private_key": "883bc21d117d210a39a4427d72da23decc9cbf50523062ec29700f3580a9b4cf", - "address": "lax17e29qf6wna6867exu8v0uh3zdmy4fhve3a5z06" - }, - { - "private_key": "2c108c68908e689a36e41830557bdda39dd7876498a9702f894d59971e478679", - "address": "lax1lwmeztx9kwj3xy9r40mh3yt8dnxaf8pzmsd0xa" - }, - { - "private_key": "8e531f7955b23d57581f40e5c918e73df3bd6ea7ad5b5d81c0bab77b3718fe52", - "address": "lax1nf9rvsym7va0qxw0vjut34t56p0jx37qrs642j" - }, - { - "private_key": "380dcca2c0753556d4f15c1761f941a8d1a531713d5647281d9b4e6eea461dd0", - "address": "lax1a0zh9grzl0s47rhft6trf6q2xph4yv4gekakdd" - }, - { - "private_key": "8f160b0f06b9cbb7e7b8c477cf796be55fc47b0180723c84d4e5d8c588a5f81b", - "address": "lax14xlys8f5538tuxevh8cqq0p6wpqqv8935ppwyg" - }, - { - "private_key": "28eb6445a43192d66493a58d739f84d59db745b44102bf1600ef07cb920d8774", - "address": "lax1lrktz99feh77xl8rpnzs50m0z7y8eqqyggnf3y" - }, - { - "private_key": "dd99fee405d13aa41a3092ca8de3655d8f9925002e2a170fc4c738674bac9506", - "address": "lax1ncjata02u3654hryalte2n32prtqrc60vs5ukg" - }, - { - "private_key": "e574042fd1088fa0930195ae2b5ba059ce625d9c68b8aac7fc82baebc48bb7c6", - "address": "lax1z4ya5d63pykg4yrw0pxdwnlzn6p9yq9a7ux03g" - }, - { - "private_key": "5c35bf00638bff0a8b17d5c8f8f6cf40c62a6057d3695054de9d70d1e719d2ff", - "address": "lax193352ef55wesrvxdngw509q9ndxdukxyj866qj" - }, - { - "private_key": "9c7ffd77d5929a85148a121f00e92abf8381eacf325c869bbac6a25773c7db09", - "address": "lax1q9ytn8v4c3nh4q4n9763u2uy296zcpej37yv2u" - }, - { - "private_key": "42d613525ad8cec2045679dc500fa29b8a1556c6dd226de4e2547416463ddab9", - "address": "lax19hmvcn2hajw53kzafs0jetvy95zynnluwmwk4m" - }, - { - "private_key": "04108b624aaa543fff37bb1426d9237f1d22733527d747df36ba968864452046", - "address": "lax1gr7vxavjsh3ak9r9ya2k4gsxmruhykknw86nkn" - }, - { - "private_key": "9c2b8897e98d8dad6da325202034c53f508dc3ab44fa9639c2190d7f3ef65230", - "address": "lax10rgzepln8p8d0ej0qn2cntghr9wsw6p2c4qk5k" - }, - { - "private_key": "c6d03b1aec9a6e93281f685e19a7aeb4f7628d7d77505b7a2ef34d71d4da5e81", - "address": "lax10976p8ze0vjyykthhlnnjpuxxr36zgrlqqkk4f" - }, - { - "private_key": "7bf08debc86738d2189510617c2081581b681ca8b162ab0111d20a3d6e8c7aaf", - "address": "lax1syn7d035kqpkwq8u0ekcg3ycmyehkzuk56gaqv" - }, - { - "private_key": "8ca751fb6f016f1b899e69e38dfe7f92ccd4a26a24c7fd3f12e82588da847f7d", - "address": "lax1pjt4ff6m024aqsu3l47dfndu8upvzysmyxp0xy" - }, - { - "private_key": "1b887c3dd5568ee26f5e3bcbf7e48c043b8b1729155a3213b26771f00dfd2555", - "address": "lax15claug0n52jem85ca2xlr04hwpaxt2mesn4lsq" - }, - { - "private_key": "947ae8e5a1f6fa01d84b55ff8bc05558109c1f09c186bb8332973182d4e41b51", - "address": "lax15xzgk2pwjxf0wg27rx5tf0x9eka4tx3xxyjx0s" - }, - { - "private_key": "b34d2420a0f89d2b4ee54cd4eb76b8bea7889038a682b1ecf6af3f00376cd74f", - "address": "lax19kw2u6dk2pc3p64nkla5aef3qpn0kaqxgevegd" - }, - { - "private_key": "9663f8fcee995ffa105dec37b489115ebc1eafef2a12d57b94ff3d2cfcdff423", - "address": "lax1rtmh46p8za09rsndvqe54svndrm6mtt7z5jkt6" - }, - { - "private_key": "31b335c52e6d4385a1adff8a501da13fd9dc26c3731dddc3f2743cf69208c392", - "address": "lax1jxsf45nl4y0059fryvzv250y35qe93mvjpj678" - }, - { - "private_key": "e24d6b10c8ecc081cee425d721d4439757b5724edd9132a28585f891cfdf7830", - "address": "lax12egxyafk7ekav67hfkfz672w2te64jaff2tf86" - }, - { - "private_key": "c11a605e00efe09190a5508bbce31ef1e0d22ab9adda4507494f3ca6b1f254c0", - "address": "lax1avdyp67map255wllq9tx3wt9dre8q58t54mwh4" - }, - { - "private_key": "c26df27dec59c326fc89d44c48ae19ae9da119e8302d81e1617dd5c5b2a536cf", - "address": "lax1pr7pu973pyqn37m6dzv6dnhdln62mjltandwt8" - }, - { - "private_key": "e61993f0dec1d682f2eb7dd92cd12003e31644a789264190912c8ef6f9c76bad", - "address": "lax132wyr490ztlm7danvwq6whada833yg44jccu88" - }, - { - "private_key": "4c98b1805eb1997ee19fdf1f196d732cf23b1d3dd21d13cc41215e3a095279c8", - "address": "lax142yjunktqr3dd0afqlv5rlvpwpxfc8hqv0y07h" - }, - { - "private_key": "e9657ded825238fdaeb641114ea3fda4d71d93f332458480f7e867613731c116", - "address": "lax14jxd53w2zdyxvzy5snng524a6yfss7vtwgyrff" - }, - { - "private_key": "002a902c7dd6c206c138b0321bda1ec6298e1db3aeb82247ce9e98e4aa517ba2", - "address": "lax1d35h3z5u6785kq948a0gd84d3a7u89cdtzj6xu" - }, - { - "private_key": "c00392f08191f17392f7a4a27184f2f34dfdf646023844e0bbf1c4e0780bc80e", - "address": "lax168eqf5hzss033e4xatjfpr664syrhkl2f25zc9" - }, - { - "private_key": "4ddc33758155ad449d611d6d360692f7e7a8fa018e46526b4631cde61a1837e4", - "address": "lax1auxvd72qcgcz40n6u4s32trr8hf2a8sklacsxp" - }, - { - "private_key": "cf98c49c2f1f855bd603a6662f75b0d1e0e529a72b4e32f137f44a1d00e2128b", - "address": "lax1mu4ws9tlgkhthkznv5wffsdqaxcujvelguydzf" - }, - { - "private_key": "19083383c61e13fa10ab8cdeaee18eaf40a01e15d6e1af708eeba81ff982344c", - "address": "lax1cdtl9alc389rmpx76l4xry05uul6nekayugksq" - }, - { - "private_key": "032917824bf01a0a90c0539a0d76443b722ccc83d505e61a7674b1b8f0a3eadf", - "address": "lax1smk0f8md0h0lxymkhtzl9vc8hdp2a2rrgg63gy" - }, - { - "private_key": "1447de34b1fae8d6ad08308f0fe9394ac9d69d3e348da541d32de554eac245ba", - "address": "lax1xxfg6j7hlwx4w4lkdaacu9jzz3ae6gnw8ejjjf" - }, - { - "private_key": "0272076175f867f12c6360bf5042bca558708c875fd479d5f12fb80586aa319d", - "address": "lax14d7wjazu8ck4prz0n0xxhr0l48rfmkgly4smkc" - }, - { - "private_key": "cb29145091f1c8bd3c09fec7358ca862d66677e8da906260014020c8024a33e6", - "address": "lax1t7ln6zlsxzzyuvr9wfultl6c4g4qwjjg2443dc" - }, - { - "private_key": "2c699ccff526a2b325ac3664dbdb8a9afaa5bd4c1fe2d988b19bf1bd96373a21", - "address": "lax1tn3esvlwlp4wc3eajlquevyh46039xznc362tu" - }, - { - "private_key": "a5226d8d819c8eb8f969b755b49ff42253c0bda492a1e1338c59e097dced8dee", - "address": "lax1ujyt0de4w3ujvwe3racpvx288k0djzvv6d93cc" - }, - { - "private_key": "3223a9f48cf5c886d2158a26637d0dd4e51b2da0e224d2879dd9ae4b65f6ebd5", - "address": "lax1rehp3pcel5qc4anhf9gf39uu9ku9re7tkwy6yj" - }, - { - "private_key": "d3a5133cd12f87322235c5a3b67f9c111e9d1db1226b853bd1e579c27dbf27fe", - "address": "lax1ckxymfexecg54hzyq0ezct87dht09rrpr9kwjz" - }, - { - "private_key": "4fc1be142a507a30cb70e22089e7a94d0c5bc5c98c73392a3b11a9a084170ff3", - "address": "lax1mmtdlj3ftztm3wxz5mc0hn43dv2w6qemdzqp8s" - }, - { - "private_key": "1c33105c549d9b738717259852286fe84d6245f711041fedd81581d152f53148", - "address": "lax152ac0r28p2lxjzkgmdxmf49yj8ypa5kskzgpsp" - }, - { - "private_key": "8ae256f7694db82229201305ad96528d30123471a1ecb7170eeb07f88273b9d6", - "address": "lax1nwghw3an56y0n64tzqcw3fxtupfpk87dctz35t" - }, - { - "private_key": "2fc27f657faafb33b916fbb6afae55d8bbe412fdef44140c9be70b036f0c7e5c", - "address": "lax1r8dxddtu2ngq04x966awekvzrnj9tt2efeqq72" - }, - { - "private_key": "7d9dca791a74448511994fa0ad8f02c8165289897cd2cd74a7cfda0f77da45b6", - "address": "lax1j5uu20e7x3fptksw6zrnsx2tuwehgu3g76x2ly" - }, - { - "private_key": "7791975b7a2a7553193866f8b9ae50570ec614274ccbc6df8a2339a8cae88072", - "address": "lax18d7u3t6uk6tsdqpkcka4ugxf09tlsvzcvhc9p3" - }, - { - "private_key": "ee7c5610a358d0c7a42d532b63f9af488b50995b4792dc3600972e3383cbfd9e", - "address": "lax1a2268h24xfn9q8kq6x6vrf6gykgeskdwuvejzc" - }, - { - "private_key": "37d0ebaef9eec51af369440a636db82d2adce0f3bbc8be0236b83cb9115812e1", - "address": "lax12pzmah7z3679lk5ct08m4t0jad9sgr0vwfmta9" - }, - { - "private_key": "d15a8ac19191953bc629e90e92fb05186f5eb1349a54b8ce97b17dcedeec0cb8", - "address": "lax1dv9hpnn3emm6hdngjakcre45928re0v9p8qskf" - }, - { - "private_key": "0b81eb6b66ead6ddf83acafe25c383d71de0e69af0a2bf6dbf1118c3a4102868", - "address": "lax1agwdqr9jyrv7vqmazjmyg26xl4hnek7gf7zdd4" - }, - { - "private_key": "a0e5133384e53b04340684b6f994f55f962323029c5e91a9f8d395ab2bcdcbbc", - "address": "lax1ntah4erak48x8j6pa08yvxw85z63j3gc9ppqp2" - }, - { - "private_key": "805856b29964f4621802cde7cd33966928d23f731bf6aab57b8950ef6721e5f2", - "address": "lax1c6kmfuyfa2svtssw7xm2gcehcq6f8wdft5tlwe" - }, - { - "private_key": "8c67fc928701485efbea0fefc6b0aff3953a0aae7e72ce8c89c7e84629354351", - "address": "lax1qc35utdz5gm9nqgyq09v8r73dc8526c2xg4flu" - }, - { - "private_key": "b44957bfa2535cbfe19b0cbb98207b8f4299dd708f53519f21794fc675d0464a", - "address": "lax13xtccvcvk94edkp6ruaqqp7yku5gvp7fg6s9tw" - }, - { - "private_key": "6abe15d003f043533c6be06f82cefea00e28071e0908dd741c5257b398bb6bbe", - "address": "lax172edmpgnjk9yxpda8tvkrjd2vyszvm0v0wjzlk" - }, - { - "private_key": "91ade90083e9019c5917dc9b97dd000f3b5c548bc4b25f34e97b9c7598d0d320", - "address": "lax1usrxex5n97r3fqwvnn7xkwl8cvll85yqu2havh" - }, - { - "private_key": "eec39a85f0d870628ee85d59332376c29e2d41fa4a0d2a74328c728943a658e1", - "address": "lax128f833ynpqjw7fyexfp674hsg5ckgvu9yslvaa" - }, - { - "private_key": "6b39050acbedd0c620f45d376b523cdacbe7ad49f724d3317c55fe932b6ad608", - "address": "lax1pjcjpxpup5xkxapgrmxfsyahvp0yhaugglcvc4" - }, - { - "private_key": "c440ef5d938efab2920d8ee0a732e6e07892bdddd1860a2450fcd1748863be97", - "address": "lax1yjf44derrh6h9kwx7c4e7szk27h23zpcgmn7hm" - }, - { - "private_key": "db50d487bba976379a10ee818059e2018f949386216b97641b693d83e4f297b7", - "address": "lax1m6z0n3z7dm9jn96h686avdklf44r2797q8cefg" - }, - { - "private_key": "ccfd1e4d33b41ce57e5ce346d83af25233c8c153058cef2dbbd1cb9843895590", - "address": "lax1xrmhudf4s74pgx42awj9jfrptjjzx3zh7ktcrf" - }, - { - "private_key": "a23b9700d14374156e75f6648381d2e89ab8c0edf0a23e4c5f0a8d0fb2258792", - "address": "lax1wv0c9xdaxuy7runruqhrq5vvww0f5tug3xjrlm" - }, - { - "private_key": "d677353e166f461104ca11500083e690f3ca08d047d5811be2aaf01616c6301c", - "address": "lax19z0k88fd5vy4xxxqmhs787w9a2092r7yl6w7rp" - }, - { - "private_key": "9162c08a8d36ae34eb6f1385ab70c57b6057000e2e7b29982153e45024efc852", - "address": "lax1d8dzaqsg500rkyzsuxr8vfsu0um798lj5qjegl" - }, - { - "private_key": "d24d21858f626252d53a105b1b38ed782b0b13524cdbc6956d9479d790de5b99", - "address": "lax1lyj0fngd754m7p9nayezfae9acshdc2jslrv79" - }, - { - "private_key": "02ffdfe7fe809b5e13887b7a42c7d88575ae9f463a09eac4384042d0d9ebacea", - "address": "lax1et37zk0aprusyvepy3fc69ek2e2nvqzvckfe68" - }, - { - "private_key": "2458c46394ebf98c650f833981a2f589c448ac0e18b40f47dd852fc476077ced", - "address": "lax1fsj3pym08t59z4xecku7tyfztjm02n2v24q9g0" - }, - { - "private_key": "32da234c82d8676bf248a2e898b6ab50840d61001050e127db475c5295a58bc5", - "address": "lax108hv67qrkpjg0rqrhylw66p7m8e8kuqyyemj3c" - }, - { - "private_key": "eb45607018d3d48b9cfb1732e2fd4896cd0f974d141e49071bb3e2b6245a415d", - "address": "lax1ac3ghjun2y4yr32gyjypf4c2qylwxmu0pmnwwg" - }, - { - "private_key": "333cb0aaa0abf77529c6c4652b7b07837490f1849e7a66cb858b90172f66188c", - "address": "lax1dhc7le9teyvvyete73ur3dtmtdtjv4m2mq4kq4" - }, - { - "private_key": "6853f85a52cf6ac9a82e625b33140b1d0ed60e5ade76de326c662e4820ef54af", - "address": "lax1x76auv87yrz4pzch53kksgku0635m0thgdj3u8" - }, - { - "private_key": "870402a18fd4256aad3841df3ae309b94f57ad578c31c70fd8ee530781708ae4", - "address": "lax10uwe99gqwxp9x5krusceavtz0k5vfy62l3354z" - }, - { - "private_key": "80bbecfbd213192971d02975ba0210ea3c84ac2d2c90afe9f1b6c409875860f6", - "address": "lax1rxlxunmvmjc3nc4znl9u6tj8nmj96pt7errwva" - }, - { - "private_key": "25e3203472c0c77ec001ecb1a459b8bf11f8984ededaff7857d580a2caf9eb3d", - "address": "lax177ry7uwgl4pgyvv02qlnyjgxstt9hqdg3kkax8" - }, - { - "private_key": "c8358859d15ca3498ef2496897a8657126b901d3bdd9c5be57eb2e9135e68e45", - "address": "lax1q0wwvnd2j7856634tf8m8ywqdjx23p3qkyw2x5" - }, - { - "private_key": "9a037d4b95b2cecb74d1895f2ebc92f56f72881369c150114cbce3ce0802d6e4", - "address": "lax1lykg2zrxg9r8843s6hyt35pxp08m837e4yzjnk" - }, - { - "private_key": "41ed5541f1e88049b7f129f0820783652172002b68838b7cef5903059e8b4990", - "address": "lax1k9a7vllenghtqzu9m5y30q26cku4n0harm9cga" - }, - { - "private_key": "153f564afc76011d6cc9b81407525fa007c933df9af92a0a55c1cc32fa24f61b", - "address": "lax1nrh5hnwppfjq9lq3yz4lnj3npsm4vj9mxww4zn" - }, - { - "private_key": "b449d56efbac36785589fb9f9d56fd9edc7a2aea013927cdc5c606f9555fc2dc", - "address": "lax1ypap0qajs9twv803tcqfrh9weu2w7ed3ck7wwk" - }, - { - "private_key": "d8520bbda1b3163d257c404005d6ccb8e4d961b4294f327d9df48e58a81d311e", - "address": "lax1d67usg660wxd4jtv85qjuwtln97sweyrtvqvh4" - }, - { - "private_key": "44a06a3fb18cac491c6a5098ac4184a3076648de3d33537b8538235315a23a09", - "address": "lax1mrv93yry80u6pltu8jllt0rkfnee5w4zrynd32" - }, - { - "private_key": "6402a284a2efe0974e4f40c3d951857ca246b053dacb783e169c25e687f4e464", - "address": "lax1u4rtsfa34rkxjlas4vg6csm96ecelx95jnftjs" - }, - { - "private_key": "9ff4608296d066983bf164657839f5630be5518c39f0de5beb516f96c18429b6", - "address": "lax1fput4hwtgsnwmuf36taf6kynmwvw5uqghkzaxk" - }, - { - "private_key": "38d2bbbc477ce680d5c0ba37cc278ce999dfca5d99a32cdd628db1de39a12b04", - "address": "lax18umghcv4x2crqfq5z6xpuphfk59dqdxnu9qys3" - }, - { - "private_key": "f16807c2a278b72d6c691a8ca45eebd74b726f0438b530d5e04d7d655a8c886d", - "address": "lax15u57cgtcmavch0k77n694rrq73qspdm7p4klxu" - }, - { - "private_key": "4c992bd352c11bca412760409117509325506488ebc1a74dc80b3a6514d7ba26", - "address": "lax1uhvxjd6r2wur2c44zkxmhcwmuhphranwy8q7m2" - }, - { - "private_key": "0146d24695ab02be81b08f5e6560b8965a93ff977fffd9b45f45287d6f61781f", - "address": "lax1cyxpqqq4svmy4adlesh63rsytuvg53apknn4ml" - }, - { - "private_key": "57d4ed869737c8cbdd498ac1432b380753c0f4d6c01cce9bf7a2db58dd0bf90e", - "address": "lax1q4f5j82jthxdta0fz28nk08lwdsv78s8c9n46m" - }, - { - "private_key": "dfc638f5bbae1cce3ccc341e4b809b342d5587c073e5ba542e629b32779cd781", - "address": "lax1nx0qx83jeh68uz6tj6wmcujf5zcqtw3ye5dqwv" - }, - { - "private_key": "02577f65fda183f66739a1c838e1a3c85c3231741c81290f11e7e6b23ff15d96", - "address": "lax17v2rwyf2jrkjawlmnhkewjs29346jmzmtsvmym" - }, - { - "private_key": "eafbac10b4cf1ff65d8530518e2f0838d7e73015b01446cdf292b0fc8da8f485", - "address": "lax1xc2lqc606435euecegfsfv9cs8ldrlrys4cqcq" - }, - { - "private_key": "11a88499f520718e66b66c9e24bbd725e1d7a1bdff3c419f42d55fc5f6e68440", - "address": "lax16y4atmsr7w4qhxxl2trhksnvze4k8ewzrh8kh7" - }, - { - "private_key": "1ad6cf7e2f3d14cd68ad5c7eb9f35a60274ecfff79358dac3ad071a4b407cb36", - "address": "lax1v2y0jv9kyp74yahgr2gsx3qnhtt6g2gk9z4zd8" - }, - { - "private_key": "ec0e2573a6f03c2344790e85bdaff569877b2765896795991badf4780cba1dfd", - "address": "lax1jmmn4kc4rfwpngzuqyh5ewwjpvrj5eqp9vzaaq" - }, - { - "private_key": "0729da06be46be994be457d5492758fe1974da18f58eeddc087540f6f75db680", - "address": "lax12h34vxwy0mvv3zekh92cg9zzxkd0ckx0gw8wg3" - }, - { - "private_key": "15cf3352df1fffd604fdfd5eab5c528ae06cfbffaff29650e9d7fb0e816a61ce", - "address": "lax15xta7akrdc4hzkxy4z8sa2mpydn08umy4ghd9h" - }, - { - "private_key": "8507052841f10146405f16f57a3d3b47fdd03164fd0253d29177ba98d0fe8146", - "address": "lax1hhctsl8764xx3xkn7gz72zxa3m6qtas5v2px2w" - }, - { - "private_key": "f087c2963f639dff2c3d390539e188d0ac8346d7366771176251f099023b3781", - "address": "lax10spymnhjt2jegyy3ttr88gqjct9fspv0gztcez" - }, - { - "private_key": "6560e02cb48b193fd9fe6fbab70d5a8ef88ee09138ceed2e0177a0eadcfd8318", - "address": "lax1mnxyh996lgefv3lnlle338h3zvaz4u3wukh0l4" - }, - { - "private_key": "c94481b8676fde539062a2b7b08f49258f37ddefdefbc89edf7519260a5cfd65", - "address": "lax18zelzhm2zxcz4xl5g6lvxxjtfcxg8vvk2gw3z2" - }, - { - "private_key": "9db3e8e984f23174388997c549bd2baed5d12607aec3745c015a154343c4c65f", - "address": "lax17wjp2tyxcgzgfnyf2aesqc70xng4ssuqhz797a" - }, - { - "private_key": "ff2cc0c7eb2722eb96b8cff999a77a9eb95cf4958f570442ac1b211795514679", - "address": "lax1ks6pd4876l382crevjsdyndcqct7nke4nkej7y" - }, - { - "private_key": "1717d420214f811c52645498fbde153a4bdd827d44161e729e2d3bb3f1093cb3", - "address": "lax1h83na6wh0pwuqzezykdfjpslg78al0q8xa2m70" - }, - { - "private_key": "ee517495bc1bbdf9ce10c725274f369a8a4befd47572dc9b31466e8f4fe99a61", - "address": "lax1gmhf7ch5lzpf6wae389wstfqs9l2k38xf0u43w" - }, - { - "private_key": "81b1eb4ef4438dede779fee4e5b9fe43085dc4935a22654fe0c84b3130ca98e8", - "address": "lax1q0zzjew390hd3wzfut3jznlf3ndgv2n6f32a58" - }, - { - "private_key": "d59c2534370efd8a289bf8707670919303bdc1af11684d9e90a875667b6cf103", - "address": "lax1qpt9ssqv9lk7plnpqcmwee8yp7kxq8umj6ts8l" - }, - { - "private_key": "1405378017c2c137a16c753c8a136d95c00cede7cdb99b57128d827f4ff3c7ac", - "address": "lax15ynpcdyva8hckdwjutt4ppk54dc5sdhhh35rkk" - }, - { - "private_key": "d35c8a086b33503679bdca5601762a1e91fc57d303e1b950049537e6e1074659", - "address": "lax1z85jjyg333rdp4896sl3gmufg5zuctafmjlt7z" - }, - { - "private_key": "b0519e6740d24a908ac6b4bcd99cf7cf1e82b0f4991e224655a287aed13ca4a2", - "address": "lax1r8g8y7hzrxm2f7f5m7ln2vegzg5xw7a3t3zlqa" - }, - { - "private_key": "3c7343b9959c029927f0795a772c130d6678cba0ec6955e010af79ff2088d758", - "address": "lax1jzegcqs5z23edcta69kkzxnw0dalpjr2mc0dzx" - }, - { - "private_key": "6b378ea7f63d0f6630202a322c9ff35029fa4c98479a0cc1c7cee11e0504b312", - "address": "lax15yjrcrk5dy3d736p9qkhad5y20gk0497d4mq2l" - }, - { - "private_key": "1c440fd00bbafc1fa8b275bb5c3c11afe9fb2a4a47a01ae5c6ecbc09657f627a", - "address": "lax12kat70de9g2fw0w8mhand4ua4c95mde366nya0" - }, - { - "private_key": "73d040d9f0f3809fb845f4633b86dbdc88ba2018a55d3f701564344cb0393603", - "address": "lax1dsmmvcc60n7zee7vwrk46kmexue5mvl7d8hptj" - }, - { - "private_key": "b90721266af885a8019ea1c814e1b21f9c43c11bfb4a37f08f14b359ca1f4e9d", - "address": "lax1u3al5f38upqq2etlyg6s62dptcd9u94gplmql0" - }, - { - "private_key": "0180dd674d07eda0397c58dfab8cb6086bc3111242a4f7f41c1623076a004438", - "address": "lax1wdcs3t5u9p0dfk97nl7w877hc0l5v6mzslvsmx" - }, - { - "private_key": "8a5b40a3ccd2b9733895d34584b886a6ed3a6e7ade5e418a501d858bd45c1ac3", - "address": "lax1fqnzt63regrtp6dqfmcmznxx7u27lwwc2ww6st" - }, - { - "private_key": "05ac999b49bbb53000f401040e824b86e7fe5d681b3990a4cd38ce71abe5ec27", - "address": "lax1xuw4z7842d6jt3n7vvm9nz2xwjv6ezygrpms33" - }, - { - "private_key": "2be26635db7a1e82f6d5aea6fbbbd18f05424f246fe3fc974a717662afa64cfb", - "address": "lax1562e5l576ln2du3xpyt29mz3c46kp7uz2gyft6" - }, - { - "private_key": "c24153d519065914ac26f714b780cd293ed8cccdd1dc0e37f71bbaf6904e9543", - "address": "lax1c47rucns9dum48gt4qvcuy87at58skzdx62hlq" - }, - { - "private_key": "3d44e6178b0b6ed8400cffb18e2d4871ca4eebb964f68c79731cb338aebb9006", - "address": "lax1l7xjk03xm8u46gs6h0ehcuvyjtyd673je7e98j" - }, - { - "private_key": "10a46d694cf5e3d1dab792adbfead1f92a0a1d093f8135ccb552ac2de792f84c", - "address": "lax1paasxl8rc0y9kveg7ru0pf7zjkyr7jzzp8k952" - }, - { - "private_key": "53ac550ca3e27c6305fb3c6975f76300ed0e512df064c3aabfbbfda3590343c3", - "address": "lax13u8z0lnj47vvhnfjxg3n43v8795dd05hf59w2y" - }, - { - "private_key": "f91b2850a063ffb3e88c7aaa2c0d60d25f4fd91dc6980ad0bebd71957f743145", - "address": "lax1w7hc20fpu0pt7xcqcpen2qh9jq3l0d3v6j7qms" - }, - { - "private_key": "57b356911a2518f9730c5f38d9f7daacaa23a20fb22c292e98ff701ba90f6275", - "address": "lax1u9uzm54qe8eg4dd5fta00uvdpkpdxlyrmuhgvz" - }, - { - "private_key": "324cac10e123a22eaa4cdf5949e6cf292f7277f6e32ad304a73b63bbdc793656", - "address": "lax1p8qm4d8m2qk46v57t5jvjsfa2d45a4ferfw5y2" - }, - { - "private_key": "dba106d663f985b99d4f7248854b439b3d6798776f13381993a46d9992b7cb6f", - "address": "lax17tn643qww0hhx2m6x56g454prtwwm7c2unk6ru" - }, - { - "private_key": "68b557856dc6345b3e49f4061850d36e233fae679c437d3e86c19b5423adc0b2", - "address": "lax10d2u5dqeg8lerc28edvh7xdz9easp0mgk2f823" - }, - { - "private_key": "8d240d3fdd957d9f6c692526a52427631f1a513c53f462a3ed1cbdf308c97c59", - "address": "lax1e5xt8038hhr6jzmxfkhh9xq4e9xv4jvlwvpt3c" - }, - { - "private_key": "3ef6b899c88ef057daf2c575214a550fb8566c3ce0c1c2679e356e91f9c60189", - "address": "lax1sng3e04mj0s8k7m63uumwmsgztj4x6yqzusq9q" - }, - { - "private_key": "387b9fca5a225640147dd3b307d66e4942ebf7f3a9b0f88c4669f7eaa510cdf8", - "address": "lax1h8gkm97qph5vhgctjc6wghaytpnnspedudwam5" - }, - { - "private_key": "8a827a9ea3f31957b6423bad21aca9138689ace31b15752aa245e6c8d5259322", - "address": "lax17fzy77klx4jhckknfhkxjmqwksayagf9shzl58" - }, - { - "private_key": "293a6a687282a43d718f12f90118f4f749254f590072d540380f7223facea28b", - "address": "lax1srwunkk63r8cfwp3227sekhquaqww9983jllq8" - }, - { - "private_key": "828c820a3b927c9c8dfa62418924411cd8eb6df64b0027fcb0ac09395bcfc33f", - "address": "lax1wm833mn230vp6jprr2x77wka3ukh0e2h952rfz" - }, - { - "private_key": "1d497c1474c550fc64a94d6832c1c528c12b7337e7cc1ca1aceb81c2cf1ede99", - "address": "lax1gkx38gr784z8784agyxq3yxaksun3gceha43e0" - }, - { - "private_key": "1814d4c110da9618c52cdbbcfcbb0959267e715ac6658be3f5187f6944f4eaa6", - "address": "lax1v0wfat9kxgy52k9mf7uu5peztxhn2pp7hzwydu" - }, - { - "private_key": "318c40613c02c8b14006ea3678d8a64523a67cacbfeb8212f85d711d3645e6ce", - "address": "lax1gz8e98zyruct8ft3hakgwxjvf7mnyuxxhwjyud" - }, - { - "private_key": "f08a2bae51914ff8482021b4e9639e69355c50c69e94792c2b56f71d3bd87a84", - "address": "lax1yzvxcnf6q4ltq9dasy7r037gywrzvg8twmse47" - }, - { - "private_key": "da5fba44bb142a58c67fdb3592ad678d796bbc767a915644cf0ca09e4608d425", - "address": "lax1z6sgwrkgj3y08fey6l2w9fujn35j27rp709l7a" - }, - { - "private_key": "329dd40a7fa7452e798c9308994ecf293b2caadfd1926573f7c6b8d8ff2cfb52", - "address": "lax1q9vfdd06m9jd6tp8263s6dqe8pvem38z683pj0" - }, - { - "private_key": "560b47ac96fc08b947aee807251af4a4e545f8698a3ae75a1a9947079117fa40", - "address": "lax16rke9aqnnl9lrewxv05ty2zdslm0xtvdz07ew6" - }, - { - "private_key": "8b6e61469c680526dfaaef840fd83122c8ede6a6b62cd6663b49830041b23487", - "address": "lax1q7egs5w20ks99dw3gzu58wzgwat7d5rxlw9rtk" - }, - { - "private_key": "31dbfe16590a8612de78d1ff9854ec82e99fe67cd8a71bf05882d8432c100c61", - "address": "lax1eehl48q7vdpejp770yd6dsqcdt6sxecvy4dkul" - }, - { - "private_key": "2903167338841fbac2478ffa6ee20f00c7d7a893387d11ef1ed333f7f228a4c6", - "address": "lax145lsk0tj2j0vu3wyv6p9zpnm6stcn9xpft9au0" - }, - { - "private_key": "8b735206e601f5820f53b0b630088005ab1e66a9f11e586208c3df04a684a3a7", - "address": "lax19sxvtsv639s6jncl20jzjwl4mgjees42djuetf" - }, - { - "private_key": "374577cd01c772de0f1919e3fc88d6a1cfe804a05434b19344738095f3302a2e", - "address": "lax1gswkskx663qhhnn9c7erd3pm2lhr2nczx5e6vh" - }, - { - "private_key": "1bf16ee74bc5ce4423c30e580a8d493fd39a43ceb3a5e3dc89eecf77419d56a7", - "address": "lax16uxk0s4t42cw03lczu2y9t2ayydduwzltmk5hg" - }, - { - "private_key": "a6e32dc44ef20929776a9e3efdbc0eb151e4b6d65008b9905a87004488cf375d", - "address": "lax1s7wttugaqc07ujlgrjw5g26n0mqj2c5ql2yzc0" - }, - { - "private_key": "749d1f016a55b7db8c79497c606cb5e0c44b2ddd7553c8195e0acd5fe7122968", - "address": "lax1t2eyc58g6r6n4mrpnufrwty73d4s7mfsaqrgtw" - }, - { - "private_key": "3a73746044a5fb22d9eba359ae68a1939cb79956598015bb92dd1855b44c6da4", - "address": "lax12flpsg489yfu8ctzkqtv9ws76pp39avcun4eyk" - }, - { - "private_key": "f4a856500b6400694b547341f8bd4d94449ace9d0973a48afffddee03b52efde", - "address": "lax1kp2zyyc79yx6kq53p450tt44pgpvm4f3lx09h0" - }, - { - "private_key": "c985db1103d7d294aadbd14d57dd5643d40ee9001ef67ff0ee9940ba2aa0cecd", - "address": "lax1snduakx2mhyqvqurwtp5kzuv0rnaa68v86rwf8" - }, - { - "private_key": "38ca43515673ec011bb1e549f1d0bc0a27d6ff8f7587e0d618e680c879707918", - "address": "lax1f6v8866v97s934arfeedrxkqqplythxmwvaysa" - }, - { - "private_key": "a5417529bd31017943749ba893bcd8b126a609c01254cc0486292ce2eb566722", - "address": "lax18zvt8ufjtfv3nmqpr3n7tjl9xvlnkxav9ff2an" - }, - { - "private_key": "a6ec073501bb1e2a869ed97380422757287e6a12c69461b9cd1a81a891b856e9", - "address": "lax157gyz696z7wstx9cts0e75k3slm5p8g9z9mpdy" - }, - { - "private_key": "3cd94408baf7bbd000045647bf35bb044d051b36618311d82f9c55b99de3940a", - "address": "lax1eyd9dkh6j75tuge92k8hg5yqpxs740ysm6jd3l" - }, - { - "private_key": "8fc382179cfa6725da90816c349b4674a12a1ab8a9e979663dd73a66e81b1785", - "address": "lax1x3e25k0yncrzwy7latvdnrt94dapxa0a57cxws" - }, - { - "private_key": "b6b107846e632d30907fa53d03d535b286a37b606b234852a7ac2d93f8dcafa8", - "address": "lax1w6926p2saglleg4ev6j2y8rxvwjlecjegy9exm" - }, - { - "private_key": "8aad432863ec5f3a563ed3a71adf0c2c6b2847f492432912d4f48ffeb65bdcde", - "address": "lax1uwk0n85x7rx6ncdfuxfafkhdxmhkdersyxrcek" - }, - { - "private_key": "ed56f4eb26ac4722c5e4a80217e32ca1f3e07ecee83f9af492e5118604a52805", - "address": "lax1cvj0ynwluz2grfjkc6pgrsys6d9l8a9006agvg" - }, - { - "private_key": "b8d038c3042fc3d3b3e77265a806da5e41103c78fb52fe3a19b4ccbe3b014a9f", - "address": "lax1zzgejuycz3yl2s2wsu37xjt5x4nuf8ceqdfgge" - }, - { - "private_key": "be10b172a847333f90edd85c3d0303c5d76e904a7177925af4ec9d7bafa09757", - "address": "lax1rm36xajjmr0kgxtcahxnxkayrp4vv8dl2kez2w" - }, - { - "private_key": "96066f61ac45294b7b00b4138c7b817de36f93240b7a0fea33a3012dac51f5a8", - "address": "lax1ux5a9f0rr3kys98ms7l8lfkmctj36fajt846c8" - }, - { - "private_key": "a3deccdba77b03663790e1ae4a83a422c586cb052f15e090a16ebbb685f1fa78", - "address": "lax1p7c8q2mcyt44njy4t6xj7mdxcsshvnja4zalyp" - }, - { - "private_key": "5d23f2fd1092ecb2eea89425cee040db88796df998b10a268daab460f9c64da5", - "address": "lax1rhlz99c68k6usjujchue59jsc586629mrwwt07" - }, - { - "private_key": "cf2f7df801d78e54b20662af254258d54a02f1c7c833ad398b3872454b0cb26b", - "address": "lax1theglt7canp3u6aqujfwmyvs8sgtpmyntddwgu" - }, - { - "private_key": "0f8866f9db7efb7fcf6719949bae090ec5a37bfd56b968253fd0c50e73c84703", - "address": "lax16dtdnlpszdpnqyz0gy7y76v5qqwttmu0cvca5e" - }, - { - "private_key": "988b5d8de60a62cb7e2c99992262be26d4899c77044ede27e4647abb0fa88db2", - "address": "lax183kg3skhs9m9p5uaahzmvy2rpy6085t5xqwlvy" - }, - { - "private_key": "aad106895feb1f6e1f57777b30458b81049d0edaacc2238214397e5df2ffc373", - "address": "lax1uj982qaq4v5dxy5rwfwn3pyfn4p7klv0v98pr6" - }, - { - "private_key": "9574f40bb5ed373165ec5cb27147ba82b1fcfe597c293508f241523020dbddf3", - "address": "lax1uhyej5mrl5sy9sy4pksc5598ewh2glwdrpe76h" - }, - { - "private_key": "b86342803d65d0cc844ebf66625b3a10a4ee081b64ecbc438e6de706d4c1b7c1", - "address": "lax1nfdj68jgs96240u9w3ltyj07zpjvyqavqnhx49" - }, - { - "private_key": "d321b035d8d18f80af632fc76fd987dd0b6e450f34387051bbb783d6effe96fa", - "address": "lax1phcrex9pq4pzv73uxtek6qydt7sgcx3em6mj4x" - }, - { - "private_key": "55aafacfd0ba065b67919006a05529b5c1ee3949d9733aeb3a5306d890a6728f", - "address": "lax1z6ekavuuxsj0w8d0vdgfhkxrnur52ft6nvctnn" - }, - { - "private_key": "a9d898e6b0e750f9141ac54a90041fa37f7052fce0f50c923a59dea0a968e543", - "address": "lax17gg6u7md6v5leax3gq7kj66duhqh5gyqddelym" - }, - { - "private_key": "74091233b83f723ac6f3bc825fbcc605672f5a2e23b6fae35e32cd055b15a6fd", - "address": "lax1w0gtf0fd6wquuurpqwp0zsctmq8llxw4zggjmt" - }, - { - "private_key": "1ae077d74c679525bec861335551bceb44274f19a4060897cc9afe44e387f1e8", - "address": "lax1rw69heq43gesr2478zq2u0r8lhdvmj8kts3e8q" - }, - { - "private_key": "0c1f4f37be9c1a8fdb1a5442205f3b388dedf6253a4594fae1de4a815c121f57", - "address": "lax1pd373ghaavmzrvk2sfa7j79346348s854xtuya" - }, - { - "private_key": "91ce442289988ce94d969c03d2571c6e6c511bc3aabdc9198b1dff56f3c71d9c", - "address": "lax1erxrpne3mzdavhcxfulm24zzgfkpgw0dutm92r" - }, - { - "private_key": "71d607aa0eb0bfcd5cedf0077429e70167bfde65467e5167bfb75a1f57a8da2d", - "address": "lax1rlcedhqdj8zgqfq42a7hq362qn07t7mcfgy8nx" - }, - { - "private_key": "743332e253269a4240f83dd6cbb4e27b983d128da9f5895890e95d1e989696df", - "address": "lax1k3c0lchg5cm4ys5x8q7347ut393pl9sxgphh07" - }, - { - "private_key": "4217668386720756134e13a9b4ed107dff7e2f97605c07f0c0df801837f05526", - "address": "lax1s3tre3enrju4zwtd342jrm8k6fpdt7uz6drq88" - }, - { - "private_key": "3de5ca535968768f53fec621a0976e8bd726eb011b6dede7c72ad227d724242a", - "address": "lax19d209s2dvaeuya7qs4guw2yt3vt4nqgl9ksp73" - }, - { - "private_key": "307eb8f924d397b917992e6ddc875d3db3d402ec9e92281a3edb8e4658c9eb9d", - "address": "lax15wcktyhd8qgx86d2453cvdkmqhmzpy3w4zlw5a" - }, - { - "private_key": "122a6e6854bcf216009516b5af7e6ba75a4dc89aa7a43d91ce71b59b7e967d32", - "address": "lax1l2rkxjk6758psylwmcwfqj6wvt8xs9a8w4uned" - }, - { - "private_key": "0924e935ac329bfff9118c18f69e74ebee0eeaa5fdf2ded6dcf82c1b67327da0", - "address": "lax1ww4f934jghn3d46r5ew5chszgx5q0kjz4gl5an" - }, - { - "private_key": "6a76a258a2a4338a2a0c585bc3a260d12417ac3d619810a4be7ef0b3bc6b23bf", - "address": "lax1h30rpvp7g87kr4tv0aasghe3tpten2tu0e2jpf" - }, - { - "private_key": "8663014a74510593e535335b59963b8ee2f1c89228319ee2dc9891cfdd7cc7bc", - "address": "lax170lre7zn299xdp8sluenrt8ks0j28uc26ptlkr" - }, - { - "private_key": "5a2592280e1b8b81ddad3362fb38f36d979cd1be58135be93305f7bc3e8021e4", - "address": "lax18ndjpthaa0snkxm6dxm6agzqvelh7fd8352n36" - }, - { - "private_key": "dc69fa4ade8823fbc41f532a6657edfe856450c623a4766e586249c068fe5554", - "address": "lax1c06sv9d6slfrrqy49eh2aqh0yenxyuscu944v0" - }, - { - "private_key": "a515fe45c31c3cac7fcfc0523d9d4d38492f14f6c0fcaa405cf6df89a7ae19e6", - "address": "lax1qlr39vq56z3vzenpxe9v25xkh80xyyzpsnjyhk" - }, - { - "private_key": "b36130fd117c6ee72f8b5300653c8bc8d58a52439b150691217729cf485cb1c5", - "address": "lax1am0sn2ml7h5zd03adl4sdt46cnmjcmtccqxa3z" - }, - { - "private_key": "b5fd8a6d20f19b29a3b8a5350a03a7e91b0974ab737699391155b3b85d543777", - "address": "lax1mzru40gcf25xhypfj9ckprq9anjjnmvhm5td77" - }, - { - "private_key": "9aae0612a92b61b4acb48a96bad3baf5ee4f1a779295f02585a4385cbae05eed", - "address": "lax1luwpsf4jzf86d6y9gpq959f3s2dyf3djv2mgch" - }, - { - "private_key": "e34ee83b40b5c965c36ae6e7f98267731ee8bb4bba80c66cdf3eb5430345be15", - "address": "lax1epuudpgewpqrvg3q3fyk00nwzfdxn3kgwegtr9" - }, - { - "private_key": "bd65f7965930316a0d2fa5d32bb9477611fa4033a59c4fb4a203a2ccfab1699d", - "address": "lax1m6upym86d4qxuk6cttf4jskkd9efpk595yhy74" - }, - { - "private_key": "176d3025225615f0dc20211e924ebe09e6e2cb880270f866da227486b5f7143e", - "address": "lax1075gees8w3x2jpzq02c5lauj48jh8nxxseh8l5" - }, - { - "private_key": "eadc9ca272434d72d7cbffb6b1b373380210b64ae14789649e1ab10b2ac68acf", - "address": "lax1d6fsqm9z49jt5wa9xsl3klpk3lch4tqgnad0vx" - }, - { - "private_key": "088b06c76cd8e8e8ed9afc3895a60aa3ebf618f9de74908953a61676b6b748be", - "address": "lax1wzzx02znarx7yqv65ae4rr2gwm8leg9jvwjzug" - }, - { - "private_key": "cdf5af6bf614658e107b2ad0e6c91fb5ccb1d6769c285023328136c8a9028843", - "address": "lax19vqxakemln3z855kwhxramu209anf452mwvrlm" - }, - { - "private_key": "a2e23ecfcdcab64221678c88d9066b7954c9d1726a56c336585107bad51cd6ae", - "address": "lax1qethwfrwaxvc46e68l8uwqufxme57jzv85vug7" - }, - { - "private_key": "34a313246621c2c64f2f276f455b739ebc827074301cad13bead88be8a6ef134", - "address": "lax1se6hr92zz2jhgtawwd3vqfl6hlahzpw9dqxu0n" - }, - { - "private_key": "aad2f2414be12c17f2cc9ebe0c6c1f0135238d5dfa6d22635653b94fbcdbb327", - "address": "lax17ujuah33pq9xp78z6jw9zync3wj3kqunmzg5jk" - }, - { - "private_key": "44843472e132049e8bbea9dc55633c6e5a158813a285e290238e307f222bdbee", - "address": "lax1rjrkc556unxaj3anja9urwvqy2e9cv57yyjjuw" - }, - { - "private_key": "5d49e632b6e70f76d4b6a13012412d44f28d206594cc0bf7c9aa5370cae90c44", - "address": "lax1ajd6l34jyjn5nk9l5sqqgc762pmz4u9zqqhw58" - }, - { - "private_key": "ad6e800e90302033fab9bff681089cf7ef642a51bcb406a47ae0896b29bb7a90", - "address": "lax180l5nwgvxs47qunw6a366gpcnalp27kqgap4wz" - }, - { - "private_key": "de8911af5e09490a008267c8bcd26e7c8642f29080e9a94bc9319a746f5c05b3", - "address": "lax1l7ehr0q69cama8cjmyvtt7fdmdr6k7jxxaqn6c" - }, - { - "private_key": "661651213467900b5a0d33ce8bac91f661027b63c49c8559f38a7822755ed67e", - "address": "lax1rgcqhqagaxdz7njlnj3knxrk29fahkthwnedd2" - }, - { - "private_key": "aac14b2c374f32756321893d2ed04beaf1ddf67ade54ce979b351b8347fc0300", - "address": "lax1m08z8hj5u0v5d4e5z079y29nstrvvshyrtp73g" - }, - { - "private_key": "65b6a5f9fdfc517ec70d55e3219388c147c2b2ace5d41668ed278437b4dc2216", - "address": "lax130zaj9ezrmrks3k9wef8cm33d9pr942kk38fgq" - }, - { - "private_key": "5f05aa4c863a6ab16e1458bc3e4b65c8e46850a2a89ec9bff119eec5db2cee50", - "address": "lax1vfugf96dxv760r2lz2rthcfctgytnqm4sfq63m" - }, - { - "private_key": "1ec6435be1fe396d22bc3e184e7154fc1b81290a9e73e98f831d5c58be762ee5", - "address": "lax16kdq6wfp5pgqz260rvyzskdh6tk7c9d224mgzz" - }, - { - "private_key": "bc19836d49a874646371697fbfd3abfd1033dac3c7c488f59221d5bc4d92a90f", - "address": "lax18m5qsnscl95qg3eyetxjudgg3durag75edms9u" - }, - { - "private_key": "5cfb990c448fdf52866e5c535ed7e49ffbf0ceadc1bb56f9b17535caa2e9b0f7", - "address": "lax164a5y708pys4u3z8943jl9mkcdn2zvcu40tkwe" - }, - { - "private_key": "ca0e9e7e748eb3cb30a2826ca1c0500721ce7469b9a07fe5e5ab5338c6d91a92", - "address": "lax1paug7c2ypgpggvrzdlklvgnm7ts0z4yqntsryz" - }, - { - "private_key": "30157a12198e63d3a7d0bd539aad50e84e4a604a5a985583a6cb4effe6e94282", - "address": "lax1hmjcejmd4pna6acax3juatvuedpmz00x72w40p" - }, - { - "private_key": "66f1bb31b8cf5a3a7f74db6532e4091bcff23a5562a8bf9cd969d66aec993ce4", - "address": "lax1h3stez7y6m29cn90nggy5p3x236y0ks2dy55jf" - }, - { - "private_key": "fbca6a9e64a52306628fb1791111a21904ac2f0e3fd8cdbb118688db5c89c220", - "address": "lax1c7lcak0dw9fjtx5sy47dwssll9my79f956rr46" - }, - { - "private_key": "93bad16e8e9797376d23c39658799410174d645e342fb2301d5b3bda0c9390f7", - "address": "lax188tghu7dupunwqe620efflvekjh3j95g6zkkjd" - }, - { - "private_key": "e868c74c9df5701730a90d31596e1ae3f07c1f3bfebbdbd23763fc0dacf4f8e8", - "address": "lax1hzsepu5448p20u9rkqk48kx5guh5aht5ytdxm0" - }, - { - "private_key": "b0081c0c3a93952c4738fd04aa04f18c185f36f27332911dcb863df4e7bf67ba", - "address": "lax1ws0wafrfk22ucyssyhm8v5v9uy97yvt34ctx39" - }, - { - "private_key": "e32a1dfd91d7a3c3f0e643193e2a2bb3be8b6a16ed981935e59bdc0dd1978e06", - "address": "lax15m8qucl0ty2tv2d7yatn6vcz0k6287j8dhjpfz" - }, - { - "private_key": "91f9bb8c415b914577354b096eee757188de6016e8b858d5c3fce3c5c0aca40a", - "address": "lax1r9zxeyszme2mchg8awwkev9kuqeq6vzy8crh4u" - }, - { - "private_key": "92f72109c98be68f03831d0a542e3df5817a1980506a50c7913a390d0bf269c1", - "address": "lax1jc7xzhpy20lh8f4wrf4ss686u5s98d8gtlkjm3" - }, - { - "private_key": "c4861c027775c7cd12e186d4508df988691dded1cf26250b7925abbd93e7d3e7", - "address": "lax1xcrrm093fehgu9w3uz5d8rvxsplg7pak90usjl" - }, - { - "private_key": "218b50ced71dcbe4cf7a035d65e134080f35a312e1000875f2e4c9c2c1a6b74f", - "address": "lax1xu3wdylmfwcepjx5s86jyt3rf6yzl2lmcwpzcw" - }, - { - "private_key": "c19a0a6f50172b8f7377ae4ad62396e8098ddc4b2786cec801337b031747755f", - "address": "lax1535z4vgcmdpdkvryhcgkpe6s57rz6wsgsyghu2" - }, - { - "private_key": "716af4db1319c43c3ed5c15543bd5005039193034be3ca5861abde6132e0fba7", - "address": "lax1ff079k9kmaf694jrrawdhf7zpjwuqtwg0puxnd" - }, - { - "private_key": "3caea7d349099417e9467a95371fd02573aebfdd5a304a2e207ea1b32e3cd3da", - "address": "lax18d8vdamq6rl7d0g7rxg540yvsm2zuthu9pr40j" - }, - { - "private_key": "4900fc913b18521f45925fbc853a684c236d886cc8e1c83ef8d52be8530e8a6d", - "address": "lax16xzvs20x04690cxcgddf27m5527fvfduhrvl74" - }, - { - "private_key": "28442d57d223b7d927de0731e40843a75fbab7e5b5d0ab974c829fd23741afa1", - "address": "lax1kt23ecukyf3d3wt6jtxg6rk69w636v52kmj7ac" - }, - { - "private_key": "bb774bd708bfc0a980e68a0da8c567d2a56541a0ad614db3271e4a2558b31e65", - "address": "lax14898qn63ph4tk58ww50uvy5kqwyzavkr6m84sc" - }, - { - "private_key": "444ed952de4b6591babb3e54480012433ffe5f17e83f9832f37aab8488e6ae1f", - "address": "lax172gr408umwamsr9mc3yn26c9wfxk2u8c5m777f" - }, - { - "private_key": "d63166e3ce1cacf4dc9abece995f0fbf1149092a6537ade2b41453151cf84a7e", - "address": "lax1rgcwz3n0xazjrnkpkrcumrgdxmkqjnhv2r0a83" - }, - { - "private_key": "fe750022b5367f00adb710e8673e1c367c5831ecb59a5d9f71206570a24391cc", - "address": "lax1w5psyldvw5gxa7j6vswasjt5wzhcm3havyy98k" - }, - { - "private_key": "7f2e3ff8d5a0e16df4068e7c8feafe6001ec28ed6f84432fb6bba1448b4ede5a", - "address": "lax1zkjs3xl6339ffphm4ynpd332q809yc8ngpa2w4" - }, - { - "private_key": "22f42bf86003c285cfb9a2d6bbf3f0dfecaefa044b716b791d408e71bfb16a4d", - "address": "lax1yjrz064g8hs3am0nz2zkgyx9zqnm7jx748hm7d" - }, - { - "private_key": "842c8531f7a852c864d88e7f2c67bc0eba85cf1485a3c222dda219e0eded2ba8", - "address": "lax1m0v22l5qlf7mavcd2llg06cz33mz5spl6lnqzg" - }, - { - "private_key": "5a70ddb5a3d06d87b9c6cbe83ab3920cbf1c56a42707ef173a328e9050f3946f", - "address": "lax1gcyyhg8us5c5fturxtfmpauwtqy83vgulx2x2y" - }, - { - "private_key": "fdc7c8a931863595bb267f2059b8f8f0bbb0819374fc54371f87652e7b16fdab", - "address": "lax173kjgm4f57pc2lluxp4s8cav0rrv24f7c7ua30" - }, - { - "private_key": "9ed2bd88f399a615235391c015d2ea7987b275bcd86f0f1457873f4fa013e981", - "address": "lax1yw89uvtzkskjlrrcwqfaevujwuf7rmnrxmgslg" - }, - { - "private_key": "b2c61b386acfef1cd028b30cfed880a12d98da802359b58574333593e58504d2", - "address": "lax14gprlxwyxu696q5unjy7xxyphgcrdzgth4s28f" - }, - { - "private_key": "8ba67090336472b4a616df55993daf9d3ebdeaf80f89650bf64b411b13f18270", - "address": "lax15agqxcvahpp2ettk08ryt86kjtfjdrntzd4kcr" - }, - { - "private_key": "241f5ed0cce80f130703fdf66eaaff189b42751a91503cfc0f832f66822d47c8", - "address": "lax1m0r9254g0ymfa2mfa85ypphgmhngvz2p3kdgn8" - }, - { - "private_key": "7e6e81ce0c083cab89757a5aba25ecdad6a4e8cd3ccbb91071fdf5add4bfe506", - "address": "lax1cfzy5wqsqkth8lfc4qgpnp6m2xnnqxpjylwth9" - }, - { - "private_key": "c78d11313cfbcd63a0cd1171b11f649e96c2089dff86cda563554c52a5dda061", - "address": "lax1d8tf64sjpaenhd47m34qks0adlmckmqftrcqwl" - }, - { - "private_key": "8c40f87ae8ab225e18fdd6fe1bb6157811af86226023fc844740a3fce5fe3998", - "address": "lax1a382ae3u3xd9upchkz4urqayrcnn0h8ml6hnjt" - }, - { - "private_key": "6edada84c0ee5c8f66a6de5a2ebab86e1a78877e668e6bf7a735f9fcb6aceadc", - "address": "lax15a6xzwwd7rlqz0kzp5fvywz0hv7hm9mstp07ty" - }, - { - "private_key": "43e19898dfcd22d664f397aa442cf1eaad3a6503292dc107bb8d27c34cd0dbaa", - "address": "lax15h4f24c8yv4pjxuz79x0r4juvnav3ymjtl0mux" - }, - { - "private_key": "841720a27048ffdad1f5e714ce07f4f845f58b98e7e62bb86c6f9ab52282d1af", - "address": "lax1ffhs7vyhz2dft3sdsyu8r3reyvyqmjc4wzx9ve" - }, - { - "private_key": "b5e870063bf885b2c515081a1fed899ad046fe8eb2f474d6737a31ffc816e076", - "address": "lax1ynh70jku9zv39xpulfs6an5mss3vpyfaesjy8k" - }, - { - "private_key": "b6483037d2e9a41565bd2ea9414596dffc173bd311214d5a2cf351ec91b388e3", - "address": "lax1hkhg82g7r7u9zkx9rgxs5s2p82udgmyhpved2q" - }, - { - "private_key": "7e4f6880fd7982918472040791e8c53169b87a2931fe4aa8a55b386e41d9265e", - "address": "lax1k26uzapesq0qd4mrt6sgnw6vk8krcjxvcw5c45" - }, - { - "private_key": "99728d0a09ca6a9dff03e1e96dea67187f98c5efb3ea0914abed2ff8942740cb", - "address": "lax1c3uaj9w8ytx7sxgheq9ngt5q576fqn395url0e" - }, - { - "private_key": "ae1af48c7c03cf14edad2b17559dccce22de559e2e09781d3b5b61dc4bd6970d", - "address": "lax1m2pqx04cg7y553hl94c4nal4texpkg4hsjx7qd" - }, - { - "private_key": "5601309144ae7ae8b2d2a00af1f933a8f47ffffdd72db864e7721a713ea1112c", - "address": "lax1870rfs4x9h2z72psyh3t2ut60artks0waqjrpf" - }, - { - "private_key": "ba9267c8e86fd3b5513158510b5eb7aa0bdbeffb9bdef8e5621d0405d876fb4c", - "address": "lax1pt794gdx4xncl6srypelg6l7guhsu8zaex9f0y" - }, - { - "private_key": "490e3b1236202ad9f81271b0de944129cabfe8f16122fa131a64f416878498c1", - "address": "lax1fjpzlru6g4w4vf8lv7fv4l0mf8j30g5fxynxtv" - }, - { - "private_key": "840394e38df39af1838c508620852b25cb7fa17ca75797fc18135ccb587b0b19", - "address": "lax1df6zquutglgkrrsh40hcgz5znym7q6cgy3grpz" - }, - { - "private_key": "755123934afa1869b4b44c58a353b3281f3d1cb0513af3c4fa1ec508930a5f46", - "address": "lax1y2803fquea0ahas7ncqtka0tennl7cgd25rxe2" - }, - { - "private_key": "99d91e4665d6c489e5db9fd8fd4aa5ef30f8adba38239ca3f805efc9aa61f6f4", - "address": "lax1ygu30crvxt99ds3008eqera5aj2x77249cmupq" - }, - { - "private_key": "f60f649c1dc18ba25d4d50ec080ac235a17bcb49c158252827fea4a5abe63130", - "address": "lax1ydmr2k0jnprs0f08csa64hr90hkhp93ed4zpmn" - }, - { - "private_key": "490bec7754ca16488d5975b2f5653ca1c6c8d3725a92ddf7eb61284f0c2f6271", - "address": "lax16wq839duwl4l5g23eepkpcjp39nz7cd9a3dqlr" - }, - { - "private_key": "0df7bd041055f7d86dc04dbf92791e2d4afc7da12226d64d993bab94cc1bc35c", - "address": "lax1956uz2glwe99j7zwa297pseatgvqfzd6k32yeg" - }, - { - "private_key": "c3c671ef6f1084b2ef537d586ee514744f99ebd31dc8878366e4d732895e637c", - "address": "lax1l58ffzaa74kh0s6x9ungpvhk927rsrjw5m7rsn" - }, - { - "private_key": "824cbe4650dd74d3464c59f5074ad2886fa64456a635a0b0c2007e172515a6d4", - "address": "lax1gc9u2guks450xh6yzm0ewvkxmuefen03yvtdzu" - }, - { - "private_key": "82cce31ea896cc442b37046887d88420a225c262cbef71943028b6a565e64bd8", - "address": "lax16elwysyr02gpnqzyz87dfs0n65jewvezalnwsm" - }, - { - "private_key": "f8ba6be718daa59dff7b30443ed92d3438da09e7469a55160237960860212a59", - "address": "lax1k6a3nv0420j6uycevfd2aj7p9z4mklx4lzfne6" - }, - { - "private_key": "984580a7cd35ffce5428c73f5edfb062c780ba8ce51fd2ede31aa1e51aaf4cb1", - "address": "lax17qpsn2cv5z0jv6vl3elgylzd9pa7ksdpeetxu7" - }, - { - "private_key": "bd0bc1be749a147652d12a7dfda4fd898fa031b85b2ce894934528c7818fbf27", - "address": "lax1cr2332e7pvg64vf66wqu3g0sx3v468mfgd8cuw" - }, - { - "private_key": "6fdd617a8701ffd7d763614111d0f0224dcb743cc6e046b61a3c8d3a32c23fea", - "address": "lax1l0jdx4cpk9dm4zmzn2u2jdf4dp8ck55mklyvmc" - }, - { - "private_key": "5dc436e937d3176928ea359e196c1614435a5660103f5885bc59e99a902ea18b", - "address": "lax1vgydlmpmr603vtawyce5q2r5tq0zqrqr6kar0u" - }, - { - "private_key": "98db3b06863bd5ec6dbcaaae1b9fdf40fe5739f01f6bb3ffedfeefa64682042d", - "address": "lax1xssd5hpel0cqqgwsyv3mah2wxychusughuv9ds" - }, - { - "private_key": "9c5e59a8835fb0fb46ee6e3b8273567120ad5a29900438d91a665ed2bc89c5e2", - "address": "lax1ntf648xkzn3xc8aqhtcccl2tn6cxvvnm00n3zj" - }, - { - "private_key": "113f3d36718cb78ea8c59c23f9f58a9e51cf32a3d1eb794f4fbf7d87f80f54b8", - "address": "lax15setstwre02dnx5gsnj06z92lplu37jglsf733" - }, - { - "private_key": "e3f5514183ceca0a506e3e561d20e58a471206712f5fd0f4950402a6250cd5cf", - "address": "lax1f9mhwc0jn2lzuftv9yx3mmpxw73yjkscakc4wa" - }, - { - "private_key": "c82734066578a1026de8b6a0a987b9399765f5c255edd462a01c941b5ced5e2c", - "address": "lax1gfjqn8l0hwf6py7uxcg53vhsj2f8dtdhd09nsh" - }, - { - "private_key": "3bb2e160eaa898f4f97ead1c7fce79b929047751160e132487c39b5b6ab1c085", - "address": "lax1qg94y77hcyzm0tqjyc6z9jspvd6gspjr05x2q7" - }, - { - "private_key": "d38610b986ed93b2a7d66c66aeebbea2ec88def80a510e7cadfc7cc17763bbc6", - "address": "lax1kqfj57q46uhmujrkppdzekqc04hf2wpype6dzd" - }, - { - "private_key": "2b3469807fe17a0a2b023840f4d1efeb6aeb36f841966919ffbb09aee7634dec", - "address": "lax1ycf8ys2v6w2peemfpmak88lckd5tknz9jemrhn" - }, - { - "private_key": "785876e2b5a48a5239fe967265ee560638ba0f36adee5ff4d3c2a7050a66bee7", - "address": "lax1ts7khr5y2nzv4uku40ne0t43yh3smvgk7hfu8x" - }, - { - "private_key": "e5ba5a0215010712fa75924354c8df3754980898ddaeaddd8953152217e28069", - "address": "lax1usjdpqwe3e3csaj0k6a8z44e0j8lyq4tuqvtqh" - }, - { - "private_key": "277ef4f6e31862373b3e375c2d856c8a957ba25f5efc1f230a49c14939a0fc92", - "address": "lax14fhwmghqefqhd4qlll3htwcv6g0fp0r3hw3qkt" - }, - { - "private_key": "ff7299e346d2f556445c79d36020751b2f9be2a1d49819a16d676ea95feee379", - "address": "lax1yhs9cdqn89mwse2lzj6jjlxk3hu4klnvj93ee5" - }, - { - "private_key": "426dbd73f7ae480d1884898c170324d5f313b19cb82b5d498e30d5c62113994f", - "address": "lax155hrlymxv7qphsawdc4njz7gc25f8p0yh26083" - }, - { - "private_key": "ddbad9ebf7ad26f751898c2e09416a0ebee928719f82fe11e5689dccf6d0dfd4", - "address": "lax12fuhznm32f6xrun6n68gnpcwud7kr8f8mvqzwg" - }, - { - "private_key": "21b1321fea92b4a6cadd6d6099083de089ae837dce21620d71140a573810f0aa", - "address": "lax1zeeut9trjlg82e68qjxx82ufj9umt7sjpdvlcg" - }, - { - "private_key": "fd64c798d640dfa087bb01630343fb2781b8d2132e4ffa6aa8d08ade06680be4", - "address": "lax15vsjmx9k6t8hm9qs27n7jyj5yz9mkvha6ncfer" - }, - { - "private_key": "8a4d89192285c8d1e445d719134113ebff77370b6869d55124e269a479993f8a", - "address": "lax1f46v535r3fkdmtzqssd9gpjcjglurs2vumn777" - }, - { - "private_key": "92db74b3d10cb17392f653027f5467db682796a874d5c9f56df8ec3dab4f1525", - "address": "lax1fw7lupu36q7m37yhqh7ltcuag68e95u8zla0sh" - }, - { - "private_key": "a0e850011431c72f8d5433927d52de8ffe0baafc7d50aeb87235ddb9fc06779a", - "address": "lax1neftrd009chg5czkk6cecn94egrcjuwxwujm0k" - }, - { - "private_key": "94347f906d1674debdaefe99fc5f3acbda4f612e015a2adf420e4266b5bac54a", - "address": "lax1ctmczvmt4a9ec90356cztd4qhuem883zdk9k2t" - }, - { - "private_key": "200bdc8fc7b44c0c8cf43d26dad613340319fa7d34b98d5b8adfaaf1f0c9d2dc", - "address": "lax1fegzt3vag3ta9f5ssnazvyyp6tat8nj43kq29t" - }, - { - "private_key": "381765651baf068633a5b4e6d46a4e62a71d1156f89eec9ba3c77f02b53053bd", - "address": "lax1q76zpvf0mplvfut2m9g8gkxssvdg3kdlum9z0h" - }, - { - "private_key": "edb6af2ea892c1e4843dc90161b3ecaef330c6753e3e0b7d4c93ca82828e57e9", - "address": "lax1h6mwnf0j7kmjfy5nnyf0ys95xxsuzf04c20pzl" - }, - { - "private_key": "c362e6289c824d289311becc1cc33f97e76277038562496570f68792404485b1", - "address": "lax1tvrf9cks232jqtsqwuw43ggr944lfh63n66x68" - }, - { - "private_key": "70567d83d578af4c4e57b533d189e5493dc41d485fb40e1984f190e85921f895", - "address": "lax1jxfykr9a5rj98fmezcxql6mz7pwteu7c3nukcg" - }, - { - "private_key": "35bd7d6782aeb09cd7c8ba430447e8b3e85bdd31dd4246650a23423d52b1338a", - "address": "lax15x5f27ksdpl7k5sls2kct3kjzr0d2g7dgvvwfj" - }, - { - "private_key": "0c62980885fdccc9b9fe093a460f25316174f8bcac0f3b7340087707022f366e", - "address": "lax1k7r629rqj4e2crwv4rzd44h0fm3c9ymcgwel2n" - }, - { - "private_key": "481be90a1d5cd80cee2b6ff70db767285ab4c7b131811c9a2e9ed52dcb1a73d4", - "address": "lax1q5qtenye7jjgj2gm90umgja6gdlu0rt97wps56" - }, - { - "private_key": "3f593d3b5a583d0e56832f6ae4ee2ea39b494f62e72e91623ac9dd9cc5304d3a", - "address": "lax1ljfwp9ukerz9y254t2lh7g7rqhgfwcccxnsm26" - }, - { - "private_key": "05116677b2470b1b202f81e8fe8d92015f400da0d66645373aeadb49f4b50220", - "address": "lax19sjjat6404v0ml0muhxnxpxvprmzc0w73d6uvj" - }, - { - "private_key": "448d67f90a0236bf2cb585f8143f572c3d6613bb5fc9e1dfcbb36dc830a9fee1", - "address": "lax1hj04anftzf44zddajdaa7ehrmrzsrwe6mux4xd" - }, - { - "private_key": "7fab91b98a6919582fbbeb3a371d280664b40c80e048b97882faf42d3ebcbc1e", - "address": "lax1s7kr97nfap0vsxl30rshpdcrlnqz47hdv2ludn" - }, - { - "private_key": "5113ea3ed7474cce8330661a8c4b6cee6268956c225f783c50f10106664648af", - "address": "lax1r2zsuqys6jkztarekxrr7pg2mdfq6a6wuqspy7" - }, - { - "private_key": "1f110a2afc17015c494185be115f338d449c8c5fdd161d69dcaea9ca458971c8", - "address": "lax19uhveda8a3a3kpj0rvnu9z0eyffac7p79up8dp" - }, - { - "private_key": "e7b36cfd46f7548fdd83c1085fc6db091134d9a97954748f1900f87013bdd4e0", - "address": "lax17r67t2my98g4xvkw0gz349qmjhg2zm4rvycaej" - }, - { - "private_key": "1dea32905099fb409453461461b0990d27d576bc79f88704d42eabb55d68c69e", - "address": "lax1tu6qyhxntjhwjwtjmwdhrx36eyur7hjc4dxa6h" - }, - { - "private_key": "a8fe0dc786440c8c95c07b08b0278b7646d77dd645466ecf4b8b1f6e7f28f692", - "address": "lax1jkxu2esj57jfefwfav352y58xn4983vf7v3r00" - }, - { - "private_key": "172be4115966594d566af088187a0054a4b79856cc70f48194d551278474a529", - "address": "lax1fqs0kq6vqsuqrx9lfjszv8p9lxdgrm2t4ns55h" - }, - { - "private_key": "e5d87230e9ad7407c9a71907cd0eae20a19c1efcd52377a0fc303db5609cc857", - "address": "lax1cjkaz6lzss2zk6dsahfx37u8tm4k5apd0vj590" - }, - { - "private_key": "bf85a4829715c492aef6deec05ed37c1f2932ccd357ec6201b219964993cd4f7", - "address": "lax1cmwe5udht68clu4ej2klk6qejpp997c3yculym" - }, - { - "private_key": "e81511cd55ddc9602606f0f30d186c14c5055ce398df9bb1f0a23a450727d13e", - "address": "lax1usuz6unvutlve68af2j8xv4uhd3vr6juk50sn7" - }, - { - "private_key": "fc7646099d1baa24087fb85319eb2c02cbc43d94efc6f57dfea0160955c6d7b9", - "address": "lax12n7wtqherdr838zuw2j0lv7fzm9e59vclcw0et" - }, - { - "private_key": "1e4c16aa2bb8767c9333c7a1143b084e4ad89fb98e68468b8e0965792b0a8bbf", - "address": "lax1lftm6an06f0ecy53mr0ncr4nn63f8mra3zwzg4" - }, - { - "private_key": "c3f65398b1804f05521b432913edd92899f0f592ec0015abd17524f60b720ca7", - "address": "lax1se99q7hcjalhlu42gjn0t6e5gx7pnd73tv6cn7" - }, - { - "private_key": "b4fbfa30cc4074e2bda9536ab626f1411317ee89efd66cd88710b6227bae524a", - "address": "lax188yg65els6ckpvdlsqdm78vm4ymru5ac24xvdz" - }, - { - "private_key": "470181a049e9d1749484756f711c5bd24d78e2da0842d044834ae18b64c72cdc", - "address": "lax12juwkl2zajkf659erxup7ppwe2rzv837ynj8ej" - }, - { - "private_key": "33fe506c797fdaea6886af7c1ff71003d308d667166acafb9310f9f2ecc4a608", - "address": "lax1upghx3tjhy830m0mflyxxex5qfk38ju5hgeulk" - }, - { - "private_key": "bfa521bfd21069bca7534877b19d747c40be6d7915a999caf63119711fee4a4c", - "address": "lax1sgg2wycmg83e54pz0c3nprguux6ft9ahxhq955" - }, - { - "private_key": "e6ad9ccb5610fb07f514ea8f0af2e88727f59ac750a7bbe6f50b49dc3c0410e1", - "address": "lax1mdfg8vth44gnvw73n0ttkju8dzzteahre7ewuh" - }, - { - "private_key": "6c89f6f2112e801d44b2521e241ea46e8e1e67986b70a3aea7ae1a988f1a2f1c", - "address": "lax1cgkku2ld9jac7qvgl8uym4v2yfyzkucytzewdm" - }, - { - "private_key": "4021c81060a532a8579350c45a8357d8f9633ffc9f3b211bec41c943ee6d1e87", - "address": "lax1wusu93a4y22g35t76a56kqtgnrrvq06ent9pe0" - }, - { - "private_key": "07935db61fd9e0db14c93d9c53857a4efec4ed339063458d6685c75db0b1b4d7", - "address": "lax13n0gn98pdfn43vxp9yj04g6ax5zps68qsuz03k" - }, - { - "private_key": "aa8bdbe5d7e99c252c3d44df4a89565df10433ecb9e45e6c63325de92959e64f", - "address": "lax1g9z27984pye9sgk8spstqwkfd6m78q43phee5x" - }, - { - "private_key": "29da16f201498bcb5b5819775c000151c7124340cb3d58190b81150a11a318bf", - "address": "lax1kh28twzp64p6pfsh88jvcfyjhtxljapdzc07vw" - }, - { - "private_key": "6e7bb380907032a84cdab87f41da8ceabbdaa742bc34a800006f1d34496aee6e", - "address": "lax14mtp46yu462j2twwhv3gaqfy35tulj4hvecfms" - }, - { - "private_key": "a9af54ddac2af5f54e71b968151672e7f0a239068dcf49bbd202684a60cecad4", - "address": "lax15afxmgvad7wgk7fxn60y5eqqwpt0a4ltmrkafl" - }, - { - "private_key": "13659ad2cef4c90d4e556654c5cd8d13f933994a4fa333194f14375913feb83b", - "address": "lax1wgydwv4gg9ylhk576w0vpd8zsagz0ddz5s4p03" - }, - { - "private_key": "128e72a5e3a8122a724c3f09a590b3f8e67063416b5c1606b72fb6f2eaecaee7", - "address": "lax1nkufl74q8vc7wna4fvxs9lp56ya998xsprz5vx" - }, - { - "private_key": "02b3574f99a52ad26a4f0cdf417514f597888e5200ea816431ea25cc1ff2cf19", - "address": "lax16zs926msnnt3kzuph2qyv433nk7c4dq8wusye8" - }, - { - "private_key": "d14c1ca9ac4d4d9340dd638e30fd811bcf4d8667748e49cda91a0886e0ecdbc7", - "address": "lax1achc4jgluh3zpsg3x60tah67t6a5suk9swf2ww" - }, - { - "private_key": "7d61b50665a06371c6959f09c9bc492ece2aa2b9fbc7ebd7f3974e80c7a45042", - "address": "lax1jhkms8lyuwfd8jv69e3g437rcpr2fgg5sw3rjx" - }, - { - "private_key": "8698fe6c237339b665b9b16ab3c095d1ba2004dc7184f58d0dd44f5aac04c369", - "address": "lax1kmns8fe02z9g23ya09g6uptr0g7nezt3hfxy7c" - }, - { - "private_key": "3178a5f3364f69a208b2689a512a294c432273a17cb678ed693cbcc9ad58dd27", - "address": "lax16q6xtr69rpluqxu30mnw2f30kz2z4guwm4gt9t" - }, - { - "private_key": "a5f706f93b785d1e754dc247a62810d04cf99dbbcd25bb1311c4710191b7651d", - "address": "lax18y2azsj9f4wj33gdjzacpqqjhhxhht5hj6stgl" - }, - { - "private_key": "561b89fd005c7933144d598919b2aeea596da44cf2c909be5373d11d07907b23", - "address": "lax14veuscr65dpw5mqlf4mkdyfqya5nly384vg8q5" - }, - { - "private_key": "27dafab4af8cb7019d277f75e5a9dffd63f3f68b38024d1f548e0c7df5af9ee4", - "address": "lax14awv9kyj4w3zkkceg9uzuqe0xzhwfwkljdhug9" - }, - { - "private_key": "d0a7601e5ab7818648332eb7b31b5da57e162d85d34975d13b69b7ba2c092b3c", - "address": "lax183mt6kuucgdecxpgsjmhwnx25fgh2z9afkkx9k" - }, - { - "private_key": "cd15ba2a0735fa3a99372c964d11fcb065ca55843b6ac6c4708d88a797cb4089", - "address": "lax1hh28h5qas2vamc93jem46y0x5ck3xjq9kgzuqd" - }, - { - "private_key": "c9518d8cfeccbaa2c95ac144b1ed6dee2aa69acb353d2980eb9a212c41ea060e", - "address": "lax19f40e84u2n5lj6yyn4yhjph3vhf55ydk9nt7qq" - }, - { - "private_key": "1ae393dd8b9d4b15e42e01b94af7e11b836dd2c347699526a6dbfc28e905bd2e", - "address": "lax1ygv236s9ytx2dehdf4z3gj67jst357yvj4lh6p" - }, - { - "private_key": "55fb21f45649f73393de09bf0868b40cc2060f2033f829b5f46bac4ec8f2dfed", - "address": "lax15f8gk07ud0x0zsnvcjla7df2d4ulc77lumh7d7" - }, - { - "private_key": "55c5edd85a14a25318c5aaff39a8655d5bfa562c16e2090a3f8196e3b4f2773a", - "address": "lax17703jfr8086v35atdskgtalnq474fgf3s2tthq" - }, - { - "private_key": "86c031d8b895af4be054ecf1ab292c99b304029c0f768960c9d1d99c33ab8b14", - "address": "lax1l8gu79nvvdcg97m4z3cj4p783gn0438y8ljujz" - }, - { - "private_key": "638b08726f4b5f9df75d9a7a51507e0e660353d397f43b46dba9eb61c02907a1", - "address": "lax1auq4vwn3npvhx674y3xzatx37jr4qacujp5xe5" - }, - { - "private_key": "2befff462a1a8e6aa350a63627cc1c93a6001c20a04dacf42af0daf8755ba05a", - "address": "lax1mg7xvatyaewlac2y47wm88paa7uckv5ryjmy06" - }, - { - "private_key": "65278945b6db2d18b37120b3ae249eb62fb7512fc8049de337f4c923e888979a", - "address": "lax1k4w96axdqrk8e0wrsyr3ruaryfd73efhrva5sk" - }, - { - "private_key": "7455dd862ba859d08521d73f3a87c39aeb2fd6b363636f870f8987fae74152d8", - "address": "lax1d0htrq3d3qacgs9c9g7q7ph3vhx275a3teq955" - }, - { - "private_key": "1454c795821f3ecb565da3bbd3f9fd764667def286a5ba3c94c7138cd31b5a2e", - "address": "lax1ly5ln9k82g40elxj6g9vxph9g8zknpatl8lu3w" - }, - { - "private_key": "f6c22157e7bcad7b52a48a0e03be79b8cb00c3ec91714f9349a19d76142b46e5", - "address": "lax1cky3vpkp8v33gpdrrdmdprfzy8wv7s944dqked" - }, - { - "private_key": "bfac654e2d738a15a4d3473becca4d4bb6647109e6987306f1dce92a3fe576e0", - "address": "lax1n5ffa7cx4278rmteay4jlsdrjevez5s7ac6scu" - }, - { - "private_key": "87cb099133a05580e5790606e0ea8d5ba2938c12714d5d356b856138eb7b15de", - "address": "lax14k249umkadgywq6ee6v4cdkh62d98fqsyygrxk" - }, - { - "private_key": "e92da46f7dc984ad9d60a8a7f4d5c9d74044f798c2fecf0886567069a8feee32", - "address": "lax15uzjyfpvax2sqext289j3vgw4tprn57ty5ns0n" - }, - { - "private_key": "b4cc46751772a5633ff8913dbe631fd4cc3e180e6b0dfb4d4b11502c19cd70f1", - "address": "lax142w4py6hqvhnecagjlrkuad93e62lfs3ya2a7f" - }, - { - "private_key": "a8dc419abd04670150948f514622cae1260cefa63d7f89b622fdd25f97a7cbc0", - "address": "lax1nq88l6qwudedg7r76kq53gl78ju8ml0l89pfmq" - }, - { - "private_key": "cd9df27f7aeb61c50626f20c48447f93a71bb62185b93795cd47b8a18916cbe7", - "address": "lax1duwwqpuksqk0py29my5wlhrchl2uduzp0yvcss" - }, - { - "private_key": "a83ed8ecf6bddbb4861fc90325a69f2e557dd10bd7d17c6a7eaf95db82ce1713", - "address": "lax138u90gde2cuwtwjc03yfd8hvw32kjnmj3tt92c" - }, - { - "private_key": "36c0d351e9b57857bb241abec82041cdb4d87c526e55fbc2ceb7fdbdd6a91520", - "address": "lax1g5kh0pt5xy8x8lf4wtpk9f2g2q5jjsfpgft5dd" - }, - { - "private_key": "f9fd19d6880b13e29e3516eca7ef703e947d5fc3901b8fc628c2f38e1c0d839f", - "address": "lax14lvqlna7wmulnk5aux00a5h4f5yfd5rk42mtry" - }, - { - "private_key": "53532ce09fa6349b9729f5c35464d0bdb5efa0b78e01ca2171b8867e97b4a933", - "address": "lax1270p6felktg6sv3478969j3tkrujpdqk38n2ws" - }, - { - "private_key": "3da6e2f52599d2466ff096348193c9ac25404e8259cb377111bbdcd348fb4140", - "address": "lax17jc2p4v9wccps64600m6g3rk0fdrh9vjw8f64r" - }, - { - "private_key": "00d6aa1d57d84ecddf56fc8f5a7c831c088d5fc64c4ec183a5074b8da273a0de", - "address": "lax1xrzzq7l87wlpmck3wc3fs959t8j3juydtuvp4k" - }, - { - "private_key": "066b38fb0259df332e9f8dc095361dad0f7c40d3e2cd2f9a455a39df81a0af6f", - "address": "lax124ark2ztptmevv3yql86revnd8ef0uj5ud6drw" - }, - { - "private_key": "59cad1590f5c07e8d209b452d19e7f4eb4024fa078adb80a4bd6ad7d971258d8", - "address": "lax1qw2g9a4sj5vw6e3ltkjts9g2c374se4q30nrer" - }, - { - "private_key": "2e162e9afd4e5e6e5e3d902a400676e00544875f677659e856dfc3b26a3f933c", - "address": "lax1fsjendu7yvxy7ncg9q2n380q78rmdqelmqw98l" - }, - { - "private_key": "f136db213d99712b4b7d62ec49ca76f282fc83ccb7acf02bfd032a6ff87b2436", - "address": "lax1p3fkqrsv8atjug3lpa07ecj7shvzm2h2x37ylq" - }, - { - "private_key": "de6227a21a44ee17b5b69b9e4177b7559b07e54b290c50f796a25eb16c0bcb1b", - "address": "lax1km98efqjyg2f3z4k0q6lxw90s0x3qzzgxk2xc4" - }, - { - "private_key": "88a732532b79a2610190a1a49274c18ed96fe136d576c7a97e141a0901b30f46", - "address": "lax19xurw9z3ue4500j4lek7lsczvy9q6s9pc0e7lr" - }, - { - "private_key": "63232fd3f6632e8a2d0673d136461224480b6ecee0d989e65708b2181ecb6108", - "address": "lax1h9hwr4wcpg6su7am2ujmg2wdvxx438m74uqpgp" - }, - { - "private_key": "5875b26c0ad66964afc18f40aa60e51a29f345bdb75f061043d8bbe81821607a", - "address": "lax1kjg4pp9ykn4slxagrgmendy3mxsmr3kxqdr4rv" - }, - { - "private_key": "38d2faec00bec880a8a5912c806de13c4baec5a72081982074c84c5be9f00fac", - "address": "lax1st7d9zyusfklgxajujueqk7s3yynasy3qlp2rh" - }, - { - "private_key": "1090743e7352f2de3ddd6bd30d88af01399683d0a7837efa32967fa32a9e8e33", - "address": "lax1cxf7wed69hyq5dw6mkk2xudawperh74r6teg05" - }, - { - "private_key": "73ac912209d119d134f874d574c7d71347e4c3ceb34aed14b45804d4e3f8bd36", - "address": "lax1jrplhvjt7ttk7mc4kjz9z0sqz2ktaets7cctmy" - }, - { - "private_key": "11bc3d4dccb63e85adcb92d2c7d5460e5a10f53262045b403c2db63c5b24e3dc", - "address": "lax1k763fy5e8rq06ch8a9pn55qpyakt56gkgtkcus" - }, - { - "private_key": "2f39e4fb734eb5249dea32f606d2cb4ed1c34e61f421c575ab6db6b66c89decc", - "address": "lax15nshzteuct282uzyxvhnyemxag7qdjjxe992hf" - }, - { - "private_key": "50baea4851cb9a6699b39ab8d75e87e41d8bc987c21667d49c5a1c6086fbb6c4", - "address": "lax1sk5kzn2ru7e9da90x8ygqtn7h5t49p59veuhkt" - }, - { - "private_key": "12bf129c33771b2d401e7bd4b00e6082e9c98818c3852e3098f79b91dcd9ce42", - "address": "lax1fgsx7rklmm2lsz59m928u04duhugv077qnpxzh" - }, - { - "private_key": "ca7d9349ab1c38fab69e924c6f783242ddecbf82582bfee23021594e430b111e", - "address": "lax1hpnxunvf3j75tkp7cnu9qskdwvxq8rzdhvd35f" - }, - { - "private_key": "eb9d6d602dc4ffc77c07ecda5d43e0ab3a944eb8f4a121620aac8d8fc913f499", - "address": "lax13qzt8dn8nx9xzamflus0gl6ts8yc4ykzu8g2w5" - }, - { - "private_key": "959b0d5d60799dec77f27aa009abae20cb25d8459045fada6a21604ad533f768", - "address": "lax1ja2swm8mn5racwzk39hcsqul55mahe8099twwl" - }, - { - "private_key": "037674592cbac714c9bb950839781db2f0b9319b430b6ff1132acdf79e3781cf", - "address": "lax1gq8as6w6sscfzhx45uctrmlyqj5ycgv3drk0v2" - }, - { - "private_key": "7e08021aeda659cefecc490358c2581f62067bd639e9d2a53e76b59628f2ce1a", - "address": "lax1wmzdmf8sthhnn0glmu4e463mfsnk7yjcameqdc" - }, - { - "private_key": "1012975cc9d64d349d720ce8926f8eef147faac671dc2140d26812e23ebea381", - "address": "lax1k2dpv8xdxfcgly826q9h3glp6869d6lzz6rcp7" - }, - { - "private_key": "a3bc6f02ab9cc098606dd80b10f7198d517a0717cb103aa3a20b7e9d8c6d1e83", - "address": "lax16r57ka0az97ea4xuzkdmw6xrpjefuujeyw85qt" - }, - { - "private_key": "540ffaa1f6508b7123d65c82dca2e337a63795b76386a6b56b9055eab5fe0d97", - "address": "lax12483l9rptlphk20hcljepltzag7w8eunw22d5e" - }, - { - "private_key": "ea15f0024f73f1692fc33a48d0fcad14962011a62cb4f9c351809c0df529725d", - "address": "lax18wsx7ev636kmc4l373ye22nsf3cmfy6d0vsesw" - }, - { - "private_key": "17f6727769e5dc5498391366bd13f4af377af0a381972bb7119621da48c62b02", - "address": "lax1fh0wgjflenze43lhgpwcd78la9pss4ugpcw3nr" - }, - { - "private_key": "b8106147bb4ceaa8e27b43884485b595c7d8e16a490fffd880e2f5c064c131fa", - "address": "lax15953zsemxcwpcr9h025mxwss8nq3v0pcwz94lx" - }, - { - "private_key": "8523394cc9f9ccd308dd836b4d29937750c484ec851c50aaa58b732dd451bb0e", - "address": "lax1znaqmg6sy5frx6yn59tkaa3vj64873ph9ddc7x" - }, - { - "private_key": "c06855aa803a43e524f9dae99c0b1506b8e9f5982157326db223e13d005c9de0", - "address": "lax1k2mpvp2j4c36k6tpesfj6ycddhuxl4h5pwvum5" - }, - { - "private_key": "ebef6cd4b68c14a524814430c9844bbc21fc5a040a369718a4bbefb10b0618d1", - "address": "lax1deqcp66vf9wqw0q32yfvnmu2szft9w8zv72gpu" - }, - { - "private_key": "59090fd4fd864e506012eecc176ac394594d5e021a9c94db781b488468a41d3a", - "address": "lax1f7hg6uy52y766x25ke9mrhgysn9gft6efk4e3m" - }, - { - "private_key": "0d1bcf869175b32ce04f2161a8932cb9592939a01b11f610310f11198d32b08e", - "address": "lax1y7z48eygn7htxy95q25kqkh6j6kn0x0ql03xd3" - }, - { - "private_key": "7bb5fbb0966122deacab8a4628beb6dbbedc6fd19e9a918f2a77e2b16becfcff", - "address": "lax1k3373l2pvlsut68ahhgzkfxmswrp8cyjc2qn0f" - }, - { - "private_key": "d31f3633c8b31a07adee099439de5bce98db76e928773b8e4a04c5993680a066", - "address": "lax194sp7tj6ge7j47uc88dxps2c993pl03cefamxk" - }, - { - "private_key": "415124fbc156316aae4c3056320c94d80097323de475efe6eafe2a76505c56cb", - "address": "lax12y9zp0ax0jqe9txlv5xnzpz5wp6gvw3p3xmzzh" - }, - { - "private_key": "773eccf1db142e01d4d1f5f036ada38b7476730a16cd4eb025ad0cb770704772", - "address": "lax1hu5pwz3cd2shu23qpd02g9wxxxj2t8nug40atn" - }, - { - "private_key": "59a29cc05a34769dc76b1f120c31cf9b17e1bd0e55340a3bf005997f7bdb8d9f", - "address": "lax1rxzqhvjfgdgdsemrhjgmy7jjn3hnth6zf4ch3j" - }, - { - "private_key": "40e18b2c5c72a5fe3c597ba9a74b81ec8b28b56cdf060bc81d32de7d2f9581f9", - "address": "lax1hwcn79lzskqhku5pwv3h53y343pgst789mu9ym" - }, - { - "private_key": "5ec93b8e21deaa1ece7d9b105503c7177c612fd795da84e2b0493a6e66c3a558", - "address": "lax1n7jtq67np0ggztwk5g2cysjy2fgh5evycdyrvg" - }, - { - "private_key": "d602a94b09d1012d9a23fc67d1e7c0d22be3f4c7eeffdd43d1f43277de875c7e", - "address": "lax13n0463lfmn42d74hsvn7p48eumhecyakzzz9dm" - }, - { - "private_key": "81d8fc530a0757881265cd751c5ec650043c87aa0d86738ab154e55c1ec132fb", - "address": "lax1ttdyxvszxzamhv4r2p2gffyalgpwnlf86j2dq2" - }, - { - "private_key": "d590de831107ad58dd7ae7597a2c4b1461571e8c4dfed2220135859a9541c557", - "address": "lax1ygau0ptqesg4evqmg24qvce72mtmrucetjvx04" - }, - { - "private_key": "96033fb2bce37f74becde585dbca97c850bcc4efdef2a517a30789e7f8123abd", - "address": "lax1rmmajap2kdklhav2wtqvj9qtakgkvy37mhrhkx" - }, - { - "private_key": "217014b752c1fb4772af5c2583857fce824e30ca90c620df0b390c68ca492183", - "address": "lax1q3w690fkt5sayx3380su0e5qelup9xptpwnd4w" - }, - { - "private_key": "c8f6314742303d426e9463eea05b953f481349ff008916e7eaa5a4506e00e403", - "address": "lax1ln0ja3d223aj3kxvc88rksw7u3kjt3rm9m8tnm" - }, - { - "private_key": "8d1c339c5cafe3cc781a7665d7a793cff40f93ca1f0072be26f6b187ef590e19", - "address": "lax1vty5tvekytszrcmcry0q3w50x67na3c45p9afr" - }, - { - "private_key": "304035c94a2902d57be5db187a10394bccadd1f0fd85a6c607aad86f80f42f57", - "address": "lax1ra5leuxp6nmd5u0phexc269nl7zvfqletaxa4k" - }, - { - "private_key": "8456e65510912036411fc9999659e424d4bab88a6ea305bb6663f67ee8a05316", - "address": "lax1rqymx8vc920yj6tg59ujwzemhgq56tjhs7f3mn" - }, - { - "private_key": "2d141b39c20539b81df07af9674aba04fd6f2eaea31240e8e16713d3e62d373e", - "address": "lax13gk7uf98ffc0jcg52uzm3g8ke7hczqt0r5pcf6" - }, - { - "private_key": "1472f00a212cc8263897a312d34174bb9e8e2377cdc4eea8ae754680f03283b6", - "address": "lax1xsj2cysptrus5ncm8c9wgh8kxz5w4858zd765m" - }, - { - "private_key": "0640bc3e6b7358ae6b5207840eaffb7aa68d9bc1d26182ab485ff6eb6538d0f0", - "address": "lax17nfku5eg8k5artdrz8wnaxtcyj7hpm2dc26ye6" - }, - { - "private_key": "b755980bce33f7911b7264bfbcfb18a83452412f54922d95372b5ee4e5a68d35", - "address": "lax19rrkfxp64ttd43c3g2htus3vlh5e6grastpjpk" - }, - { - "private_key": "e3ba85da66fadd51f8b4f0439c1aa71be85d3b3c2bab2092eac1250a9bddbb24", - "address": "lax1fla2f52ru4vlg9w8cx8509yaa0qwj98k4qsxzz" - }, - { - "private_key": "f99e430c1e550e34a6bf253c0665344eccc89effa697e216020f1d628df0086f", - "address": "lax10n2fctkmyk9qp96ms0h9pvlsgd2t6vsl2y8l67" - }, - { - "private_key": "906fe387433ab65f83d35be27ba6c85c0a5bdec6f3e0e00c829e0a5be5ccbffa", - "address": "lax1fh9q25cyqhmn5v8uzdx8gfc8ur840hznvun7v4" - }, - { - "private_key": "c6ab159ddc57fa0840f03b2f3a29a6f6a836d3664f5d9117b26b66c1117bc940", - "address": "lax1q0lsmmlsrc4rczj3rng5t2mqxyvx0g6legemc0" - }, - { - "private_key": "a3a0dff33589e51e582e8b28e6727d4b8b6e8713fdfc4c1c7a2c942a35315a21", - "address": "lax1me2sjgzhrepg4sl2q936svq4usmsgdytt976k6" - }, - { - "private_key": "d39b110b3d0d4fd02de2752ce57735b36f0e9e5a89c7404389cc9d1356fc6326", - "address": "lax1h5dt966mt96c4yamjs4t9lkxu036fjm8aeyket" - }, - { - "private_key": "792a6e077b1f5e40ca4dd4d243c471ae117dce8f1b173f46f54a024c0076bd81", - "address": "lax1hkttd834xcve7rt2vdny9j08cfq73g0c6a3ya5" - }, - { - "private_key": "cf78e719a62a3e8d668d388d643602b504372bfe722ae6fc1ca4ba1efca3da69", - "address": "lax106hr2qghh0xp7lgjj82un3trw5k3ul0yru0avp" - }, - { - "private_key": "9a5323022767902e7f2100eac379b76c29a29c496626140b32ede5d1b991764f", - "address": "lax1fpaugtylkj2mcnwml4dltunczt0ycl7tfde4pu" - }, - { - "private_key": "76e2be3878ba33277615c2911252f8d4c86bf0798734064494f1be75f1aad789", - "address": "lax1xpe4w629rmzny3zc6tsw4s4xuhtf2a70z2nc9x" - }, - { - "private_key": "105c31e47190b5b7d7275133420584f4c1e8803bc265f0b97176576b804aa28a", - "address": "lax1vtvku3vxt348us0kgqv9xzl4z3adywsv4s4mcq" - }, - { - "private_key": "1b56d13cd11a4833962f4fa4efdd5bfa6d610be66b21cded30d0e6bf79079fe2", - "address": "lax10jvf3k8wlqw5g7f0mx32mx03qr92jdkk9ec8pj" - }, - { - "private_key": "f97d65f48416a8716aeeb85a270b13f0f216f3044c1c0f47901d6824edd368e4", - "address": "lax1pwmj0qes5rxk3tgpjcqwd0drsry0k0kxd348ud" - }, - { - "private_key": "fdd3c4af707f09ae305af20cfa2aa958bd4eb7be8003e0bb7bd806f0cf854cdd", - "address": "lax1kjuc7w86g29unhh5g509t78lv4jyn0gawtn0lw" - }, - { - "private_key": "220e84c7434913b1e88849cc586f4c8b7ea9d3418166f1434f6b1ceba61275ec", - "address": "lax19p2ql8qmhr6zy7yeskxzr7slmfgkf73jqwhnrj" - }, - { - "private_key": "8be041efd52b28af5f69056449bee298cf4f1c1fe5ef641f6a3bb8726f31b2d7", - "address": "lax1ya5vargewu0klsrcqu6e5tpctknrvac4lu3tey" - }, - { - "private_key": "722d967f0c9f8890b28660842d919b1d26089464373d6a7b48e29f98defeec30", - "address": "lax1y6x93c4ylw4ckg78hlefeug5tqgtkcn5wrufmf" - }, - { - "private_key": "3b5d5aba4ce68689cc0495a81136cf304801b502b7af5106d5d0cd428c99d4a1", - "address": "lax109u6emw2cn6wnypqq5qwmw0m7e97qvwlnl26gc" - }, - { - "private_key": "3209a7efb815ccff8bd9c73a131dc12b854ccd20a033097701003bab451e547d", - "address": "lax1duzhznugkmrpcmha4q3htwu4e479jagakklvnv" - }, - { - "private_key": "1f0a6911de9309f01c3b2297f1905251f140ce126e128392d55637369a6d1bf1", - "address": "lax1np93nvphu4n7dykjzvdxegwadv47p0ngl65u0s" - }, - { - "private_key": "b396816c68165bd68efe5da8217900a690660d60153afe1d0512b74c5ae26f2b", - "address": "lax12v5q763lcjuc8nmhae827jvuz3a7z07ywt46rf" - }, - { - "private_key": "e5f786fd9bb792c780a7d0f9b4ec6ff54e06e25c604e60b5e618432d078ccad1", - "address": "lax184kquuc8hmtzx63hmvlft62a9ewpjz8qchdwvg" - }, - { - "private_key": "0fbf537536023f12c4bfad94e0cffafe3011696c6bff7e1f12f5b9cd42feee40", - "address": "lax10uzgf9u9ld0gnuns2m24ayevnemd5338qaslta" - }, - { - "private_key": "9b427d3c38c6297c98db3bcb35ce5f493d4df975ac76af8fd836486b98b2a7d3", - "address": "lax1l82vpt05nkt3pcl9d4qs5xu6rz2l8chpqes59h" - }, - { - "private_key": "51e6ed644e5a58575947c530942708ed12f8ba06661f727610f757153ed08c4a", - "address": "lax1g53np3ucxl3n0lrp2u076clwgmepeg2k6xqw66" - }, - { - "private_key": "42a9f588bde26e6086c0575a664bfad696491d24d0e1ed4540fe943ef9847331", - "address": "lax19h03kadd4j69azjwd938ktryuqterpn3cflswg" - }, - { - "private_key": "0b46e56bd03bbfb5752a500e64b2d8012eed19a34a61cb3cd2c11cb6a8083480", - "address": "lax1f22a26f200khpn6vhju9xlqgx06a5ceg80fc32" - }, - { - "private_key": "62c53d49e31de404bfcbbf0f6bb0e09d0f1b08f5853c4961673dc4d2bde0d651", - "address": "lax194tn6nmare4fjekhag36stpjc564aqsn4jrt5u" - }, - { - "private_key": "06f7f0f37ef605105561be1bb67b13827c56d9c388066a3e676f32b8bee1fb79", - "address": "lax1u8gjezswckjyt8lzckavkkyehslzc23gm9d5uj" - }, - { - "private_key": "0cd599ce3972a69d1ecb55b4b1ab764d92976b4cdf0669be5db852a86fdaf52b", - "address": "lax1a62wc5utg8ftsdmhp4cqru9mfwx5sg26426975" - }, - { - "private_key": "18dd7d0fd606d7748641c63dc09069ee3904a8d690b3efe62dc922938dc9d547", - "address": "lax1zvfc7uac2azndrwszrqvhfhqhvtzd4levt6wmm" - }, - { - "private_key": "e6f48c220a46d1808e7532c9f8c685386228ae868f2cb9f3eaa696061712a134", - "address": "lax1u2t7yx46mc2exfxalk7vm3n6taluph0c227463" - }, - { - "private_key": "db590f55a4bdf40678f3c281c6ef5533484e610e4810283db667a0b6a80c2f5c", - "address": "lax1tenpz6fsh0pd2n0pqsh5grmt2vxfmdd2np2vwd" - }, - { - "private_key": "20adfb2a3dab0244d6dab4daabf05313b24844796b81e61dae0c3a1b5c4d272a", - "address": "lax1zft2fz6535qhkk37nz62amad4vwz5wfw9jsuxa" - }, - { - "private_key": "65e4360c4fca593c68810036ff39cab0ccba4ff2add7d39e0a7898ed666ba321", - "address": "lax10m5u6x09fgcm564wj86qyjgye3yjwgtstlkgus" - }, - { - "private_key": "79aefbdaf2ba821f6ac1b3e96c35e051804e23021c615ede0cc57220e20b577a", - "address": "lax139xhc4ejau44asuddgydy3tyzzxckznuzhxum0" - }, - { - "private_key": "7fc82aca1a3fc113f8c65381e93eadaad53305fbf408684848a3a544ef95e672", - "address": "lax1a3rsc2ysw24svkwqdeut3gv2gjzc0ql42yj2mm" - }, - { - "private_key": "5ecf6dd967cce1b49340687fc6859e192d8c56bfdb8b18023c52f381fd9ee863", - "address": "lax1fngdvhykrlx8dyncfc7ukg8hz0uu2tnrldnnc6" - }, - { - "private_key": "7d0acd2c91d7ab618b92a9394a3bf19a134e97e5103bf18d7a0ddc13ba94a501", - "address": "lax1pm20xu90fpefgf5yjvhpemhmf0cm3rrr6042gx" - }, - { - "private_key": "3d5cec2a36f01bedede7c36b7c1d77eb8edc39748e22ab2fea89cc4ecb846a1c", - "address": "lax1vat6d8qkynyhztpw8c75rl3qt0y5z8mkcvpmzy" - }, - { - "private_key": "ad4af669f7472a04bda5b98940e187c25a244a3a0b09455039f7236341765952", - "address": "lax1ffxmfceauc5njlyyy9lawuam7ly7sfaq7cphn9" - }, - { - "private_key": "406d9d570ef7814ecf58a530b65623cb80d1b15a58f9ebc36ee866cb3fac8c0b", - "address": "lax1pwrh4z9a0ze5wug4v85j8l7f0zu6d8ttdx9ak4" - }, - { - "private_key": "2304f7b2e86b753174c1c8da0e61acb7b8d6f3cca11237fb73d80963e37e69fa", - "address": "lax1hvvcj5wdsfw2kv84d5mc3ldwdaep9clrclxc4h" - }, - { - "private_key": "663eca74899964b67c32ee4af2610a58a3e29e9f8e6be906d24025b2543ccbc8", - "address": "lax17vmllldam0a3n9kkt3f4hewx87pdstryxm0njf" - }, - { - "private_key": "3056de268981c476fd5aacd7aa95f46192772a71bebb68b3ceb95d11893e983b", - "address": "lax1s9858p08vwmrnastca3jkxpvcpf03az9m9qz8s" - }, - { - "private_key": "82b4b5bbbcaef11aacdad035d318ba7e039d41a6b12e0931a8a512654d259967", - "address": "lax1hs6wuwdzqre2jrhfe4kn8va8vs2ag94ngsm2el" - }, - { - "private_key": "cdb8d27f4d8b287a5cdfbf9e83e536551c9a28c86db8d8ed6bf16d16ad7157b9", - "address": "lax1k8mhsps38dkylu35rpx76qa3cup3slwa22me5l" - }, - { - "private_key": "1f793b37203a26158c5906e5759641405daabfac62d05923f7df1d487a8945f2", - "address": "lax1hkskps2s6shpwr2kq4cp4cm79dm8m5apugp6yr" - }, - { - "private_key": "e13e6c24d1e1d014094c979f89d36d49d55122cae099273e48101f4e4e8e16d0", - "address": "lax1gluzxt85mw6ymhl5t36gnuahfsswfcxp9j2pwp" - }, - { - "private_key": "4e9c177ca3131191b3e5e10c6ca5a79b6538966c6b0833927252f9fe323d31f1", - "address": "lax15y0833xncwumccpwmes4ae2xvfkp7y3c62vzdq" - }, - { - "private_key": "6fbe56494f94ca4dcd706f48553e852d0c609b7357946fdd4a26ce5cd987b762", - "address": "lax1wdwptqdwq25c7cawff5sjdhgh6yh3nten6h7hw" - }, - { - "private_key": "c995551c40e166d1cda6f0f98200604dd476a090750990361d622051db34a128", - "address": "lax1mwleveyh78d0m36jz3y4d6a85wwwcfctdmqwns" - }, - { - "private_key": "4bb6a145c1418198f89ffbd3717796bed6cd8a53a65a77106fbfc0cda28641db", - "address": "lax1yfmccgm7pyzh60cf0gnkyegu5rykcp0mr2fz7x" - }, - { - "private_key": "f6d714250ff03a33dcf87f392fe6fd9e23d2fcd0cf2064b1040ebac34969929d", - "address": "lax1yapc5qkmvyv8vx7sfzhaty0j688e9vkfsz0lxa" - }, - { - "private_key": "e7716449542b2f0ac13e388221206fd70f0031a984bc6d14ff3129a8e973cff2", - "address": "lax1cvpmt0ccfmmenz8pp44w2wwvccdz9gft8q5kgf" - }, - { - "private_key": "d5c2bf3ed49cd1f8d030a551e21aad6d1f45d5d4e2eda6bbaf2a665e787038bf", - "address": "lax1xktc24vwacjwafyck3c7njmpw9jffn47ajfpt2" - }, - { - "private_key": "e788cf0c201655249fafe06e3c26eb0f9db30f0ff6a272d3ba66de56a8b65103", - "address": "lax1kvtum3dc526ck8tx2vxhd88xyf72cqnw9vt6j2" - }, - { - "private_key": "9af7457408a1eadefeaf06eea8e24d22260702e1bdbea260e5fa01b929882d43", - "address": "lax1kt7vvsl2axce2clysx3vvht7u7dndx8kzu70ru" - }, - { - "private_key": "4b9222f81fdac8242e636deb150456216298b542cdc89b5f17a27d8809718fa5", - "address": "lax1paq4xpv6ycvz5lg6uqfjm4nkgrsuva0wpw5jtd" - }, - { - "private_key": "b4f44142e3edf64600b5d656275b064bbcb620e4dea15d6ed8fe85fe68904c94", - "address": "lax1353ck3c6sxve9qwcmg43nd3anm33cl662fc8j8" - }, - { - "private_key": "31e7da2ba0e576f20c8ea67be424168fbc33b6db7999a3f01f71121971055e31", - "address": "lax1fulefyuwsf4325mkc2qkyz7rs9nu6swxcjhfa2" - }, - { - "private_key": "3fea45528fa1a7ae016d3a5c02167f9491da0c65b6c7cbf74b715e47c45997c6", - "address": "lax1t8ptwearxjkpp7y8qmmrxe8prnpj8yt5tey29e" - }, - { - "private_key": "9f29034c5be19be1f2fdfc2b199065e615605ed38b0ee0ed8bd9ab89b7e90b00", - "address": "lax1qkeuwxu022e3v8c5uju2420z2p02hl6r83ll3c" - }, - { - "private_key": "0ab1bd24a1499fe32f38da4d10f9bd916156213d57424c8624673390851ce358", - "address": "lax1hd0c6l3pqgqa8llm4jddu8gw227gd95srj2r89" - }, - { - "private_key": "588b4bc9f239079977b602aed24ec4a4fc9b85f9e45c39e9c0f17306f128d734", - "address": "lax1ttxwnxg9g72g0snvesyc23s9zhxv2hzk0ygsnf" - }, - { - "private_key": "13dbe2044379a815564e06ccd8305128841f6db3a5607850128dfc665d107804", - "address": "lax137t0uyy82w27l7w6tsr3ertzddzxqysjz2082p" - }, - { - "private_key": "2ee35c09aff4683bbbaa75a5b1e8ff7bb32930bed8deb3e1d788519e3dc02311", - "address": "lax1k9dt4cw7f7lwg6zxwrtt79e4ujqs0yalarl05r" - }, - { - "private_key": "1c1bafa9337be8a0b3c9c1c27e738f0e6bd158e4ca43283f5aca2b45cb4d4a27", - "address": "lax1jnzx0wqdceeqptvsz926fe7y8ratyk58v3myfp" - }, - { - "private_key": "8c58c5ddea2dc0f90ea327078bab517038508a74f5b7b9df967efee322d3f1c3", - "address": "lax1hjyv2mp4fmkh9zs4e82ldwgjs8cyy6e858232m" - }, - { - "private_key": "fcb1b079f77530524a58d8cc0878046b193d8ab4cb9a64ce96249eb5190e9015", - "address": "lax108ekt6g89rvykuyghe7kth7ry5y73mzdmkc5dz" - }, - { - "private_key": "bfc96b4804bfa702c6667a71a7cceecb64b657373534f735a8589f267cbd2438", - "address": "lax1wmmg6p74w5677pfycchx9v5qn7lv5099x7cxjf" - }, - { - "private_key": "c7b8c69f12e46fb7d288a16caa5716ffa9da8b2cd46d4bf240012af676c95f2e", - "address": "lax1hf4wrzpufgtxhrr9zda0dc0tkvrgekdh53f4ux" - }, - { - "private_key": "d96c5f95ef78909e9caa4fa0ef7ff83cc15b20c85e4ae4f802943e1b873d874f", - "address": "lax1pxjf83nsxlcd5my2mh7r56nata6r5v39zhmwxw" - }, - { - "private_key": "9db7bda7052c2319e27cef1c51471afbb91aaba4178e05c127578c64d1eb2c06", - "address": "lax17aaxduh6xrg7ryr48txnjmtjk3x0mm9dfv6far" - }, - { - "private_key": "6946262fe94ed51368c82fa953f66f296fb072c0a9d014a6ea20711f8f89d678", - "address": "lax1s7pfh889c0h95zrlj69nx5u6wmpxhn8n8xtz8w" - }, - { - "private_key": "a51d3f582d33e08cc10ff64b11b1bdfd99e3ff147b152f71d22d326dbd03edd6", - "address": "lax1mr32k2gzuva2h8s6r60f23przelmnlrrrmg34x" - }, - { - "private_key": "2ef0964f887014d99c47e0ac239ecc3cd43e15169f2f53dd04dac6efe3ed405c", - "address": "lax1h29tvykh6zcds6t8hqgkc79wwf66c6jye77r7v" - }, - { - "private_key": "0233961debf43f9b8211eed3a04c0d079edd1124c34704a6366ffb46cd0b298d", - "address": "lax1pnaufmqv6zclamxxeqgnp65hfpx4xvxt8hy8s5" - }, - { - "private_key": "cba0d34d11ad7dec9c16f43edea8b282a52ea9b757dffbec6b8be3e4896910fe", - "address": "lax1eavvm276dvz4axlng3dsrjv43hth8y4rdvcs2m" - }, - { - "private_key": "c22724699fcba23b7d24730e189787a0f38767453c3f9ab36c5f81d35ccedf16", - "address": "lax1tgx34jucw9zexuh5x5h9s3weq5fxl3w4atnp96" - }, - { - "private_key": "aaf42f55e2dde272f83715dfc5dfedac617e53990338a5f2c72e131d7baf5ce4", - "address": "lax1jhnu8q655gq4zurtre98vy980v7vvshamfwhj2" - }, - { - "private_key": "aba064403633c88f81f13c85b7f62d9c66efa48504c924ca1583ed59c3c1af0c", - "address": "lax1d6stcxp6wrh3qzcer3gqd7qezeqjykmfwsmq3n" - }, - { - "private_key": "3088c7c7039d1622b0202e1fac627cae6ecfa6ed69bfe55436943d39d09ad5c3", - "address": "lax1qfgx68uvnk5rkyacud5p3ua30pkpntlqv9q6jl" - }, - { - "private_key": "c1e95758eb54e1045ff0f674713113910deeadeb0ad752d16e1130f0953f970b", - "address": "lax1t70pzsfst7t9d29y09c8rmq0x5a9dfnm3a4n35" - }, - { - "private_key": "a1e2865de6a5d63f21b26a2533b7beb99ca024dcee59cf7324e2f57cd6bd9392", - "address": "lax1l0gs2m24lfe7wh50rmq7a7yv23nv02hkr7mnl4" - }, - { - "private_key": "4fe5f2e8b06e6a452757217028e56afa387a4ef1056d2d6f0e4c581528f0e77f", - "address": "lax1r4fl8rckdxq0hmj793jk2j4l8hhwls4d6v9p4s" - }, - { - "private_key": "6cfe19cf4803432a1b57a3770024d48092d42d92ef3a3b6552b5350d2e7146ce", - "address": "lax1jgl227ms6cydhgyl6fw44nn7vdfprpr6a2snam" - }, - { - "private_key": "db4689201f34bc64785020e6be3b98ecbf8f5dff26c3d1455c14b1810c642195", - "address": "lax1ehjlzeufctudm4w5ycne49j0j7k5yvddlg00u5" - }, - { - "private_key": "ce41a116fc6b86ad71404c1207f378798e78faeb50a1f8df513442c15ceaf049", - "address": "lax19frh3phygcayx2rawufuek6qw4nj5uwjq5q0g6" - }, - { - "private_key": "359c5c8f3042abd164513badbd93dc313cff921ea24ee37b7d1ecb4916204f50", - "address": "lax1frnruprzxtn2dr24zwfn26zacjyclrnsa07dar" - }, - { - "private_key": "55513b9956e89e4091973097ffff000b06416d62e598a37b4ca83ba999ded480", - "address": "lax1ckx70gmzvtrznhazqnwss0pvxdxhfsq4glxf93" - }, - { - "private_key": "f06a0348894db18052377eda36db733dfdff640ac18aeaafadc8c3df491679d1", - "address": "lax15vkvdfmlwsx4uxfcyn094l2zx38f98q0ucwxx4" - }, - { - "private_key": "6f69412e7f6b740989f6a3efbc5e994dcc67bf7cdd80b01df3209b2d8ade8804", - "address": "lax168u6fwupe207mwaq2djzqx8avkrgj6l539czwn" - }, - { - "private_key": "cbfae6b22174885b345308bc55260bbcf5082ed5cb2c7a7950108683b9159fb4", - "address": "lax18rueyp8ags4t7jkp9s26e0x49nxgytdvjpgt2k" - }, - { - "private_key": "5e85fbbd3b47957c782d78c691acfb03707bfaf87beb57f4de2bb7e28c3d6f3d", - "address": "lax1f2gt4rjwx2h5gphz84mkgz0k7pnhqqv4xrm3mf" - }, - { - "private_key": "601342e0bbb8ef43b184f485645f34fc48c4bae58e5edede26cfc9534f2a5fee", - "address": "lax153hpxt72xt6pk29jgg5p8x9093hqgrxp93acjg" - }, - { - "private_key": "00d79db6cf508cac8e6af03b2e27bf9a4ac256d30faddcb3dc79883f7950349e", - "address": "lax1znnzjp44805f3tqfdrc8mexgjnjt6mgmvyztvs" - }, - { - "private_key": "64a882972c90c93183a41bc3d04102f56da7b0b13b82255d1ae27f51d1fe344d", - "address": "lax1wzvjy7s7f9p5lw4jtrfwv7vafg7cpt3a70rmjz" - }, - { - "private_key": "ca406ed1e6621d8aea74459b618595f621e693dc1c31feedf4b426606c95a056", - "address": "lax1dgeewl8y64pmc8a427pprz5aq3wahx4y43nk48" - }, - { - "private_key": "4fa8c75eaf1d8c19fe46d76e62dc660f36061e6fcd13e2bd285cceae6514b79d", - "address": "lax1c9q7vgsfw755ukr4ycuccx9ch73mcqadvhny2n" - }, - { - "private_key": "e4319c22e315d81b9c618daf807b07d2519d1258270252fe98ad230c7fc8b3a8", - "address": "lax1wq9p2a92hh40lhftmp99ranmgc4qq5dqh4r3cy" - }, - { - "private_key": "f7087d30a915923bbc759e637dff53804537be09b5a398b6eb9f3739c486d75b", - "address": "lax1krhl309sxc7vtqljp4v6j48vc9g2n4sf3h0laz" - }, - { - "private_key": "298014181ce28510390989e0b6cbf09c0544a6544ef499862697bbc07c5750cb", - "address": "lax1wc7df0j6gy8x42ux3m5340n6svfwe49th5sfg5" - }, - { - "private_key": "ddb0d13c276892498e8a5a81c276fafede72c16e832eddc02018d211e025d24e", - "address": "lax1yuvr5nzw9r9stz43snpvuxj8eklh29ycw457hr" - }, - { - "private_key": "a361441d9d1083d01d5b0f664e27bd69a8cd5a09ad17926d2ca55daa27115db2", - "address": "lax14x66t0e2adgy8xt9dygdp6yx9j9ud39a65w0ut" - }, - { - "private_key": "25dee7a5f26eaa172d157cf83bb1f2eaed569d67ac118cc5437eab4470fe7694", - "address": "lax1e994tj0y3fnaq0ymurpckv9zdkk5l2s3smdqdf" - }, - { - "private_key": "ae0c5075c03453854c5cd9389d6ec561ddd53602810cbb0c4e60745d4705ebac", - "address": "lax17cpl26alwjv7sc040s8sxla4cty9hestplwdx6" - }, - { - "private_key": "6ab6bddb17c8a2b7bef33e83fd5c758f8d9f30914819314c75a9fe8a25484c6d", - "address": "lax1wkk9zn02mqd0d42vv0vzm3hdjn79w66twle0za" - }, - { - "private_key": "f6a0c215ee7819f8c84787e6c92cb271c7f199813ec37ed19d43d4ed7f5328a6", - "address": "lax1lht2t98re8ug6u9kh2dvzfu7cjfd67wh0qwqdx" - }, - { - "private_key": "28a193dc377ae6e60e09fd92021ed6fd3ad4ff29933d57e2fc43892eff070b08", - "address": "lax1rvahqmafrw026eyy9kdx5c9r3qp0wdyr5ululx" - }, - { - "private_key": "23be26c921762eeb7343d9f25e8faeef6f7c761a70190ca39553a6fed6aeba5f", - "address": "lax16mpznarpwrlteyf88mh3sxhpm705q5j9kuenja" - }, - { - "private_key": "3f87373b5824095e410e4b5841569b9ea181c6f8a7a926f55193f223d9f4b956", - "address": "lax1q6ykjtx6gn4k7qs2zkah2u70dqn9mwsw8dtn8d" - }, - { - "private_key": "3078900e05185488cf7c8b88d965928a28da72746093b5b9f0dd7fe3fa897920", - "address": "lax1ve7gs5auhwux7t3mt9skungmskx5fee04kmx4d" - }, - { - "private_key": "6ef12790cb43c46f1a59ddd0ecebc1a681e4bc35a81a2ebc69ec088dfa37eb2a", - "address": "lax15f7tumclc76zfdh54zkw8qqmu607hhmdaum6v7" - }, - { - "private_key": "e8bd00b2750cccf17368fdb65e463d1c7051baee392c9034fc5318fe81cfe804", - "address": "lax1l3w4jxkm4llfdkt6vztfm70al6hnvrds7lzgcq" - }, - { - "private_key": "7e407eef2e6ce10d6aaffb50d01c58eafd73279e233cbaa155d5b6afd7a4b411", - "address": "lax1x6zu032u4hdrr2yf2jzr5zhfv5tzwnfdadaen0" - }, - { - "private_key": "705f7ed71297fd74f49fc2c75e1469d5bd0ac27dfeb9b040d4c31d7872530a50", - "address": "lax1ny0c96vpjmwclp59afq4dfymenm5rqr465ts96" - }, - { - "private_key": "7456fb6ac58ef2c08ecc1515b51317ddd76e49f9d020aee1cf5a59667759f40e", - "address": "lax1djjaprpm80dnpfrpw82vm2np4rpyjxq6pvghly" - }, - { - "private_key": "d1d2d2446371693fdf29e6fcac5553c7b6c0571848a417cae3ac1ec4a289a683", - "address": "lax1f374u3r04ghvjjttvjjq7zwa889rsjffgz0kcv" - }, - { - "private_key": "483b30a8be18329c7a1098eedc8dc35b278bd4a6a72f91956f87638a970c8e42", - "address": "lax14jj38evcw683vnm2ee3umftzd5teegjpvayjp3" - }, - { - "private_key": "eff71aec42aeb6428e1cf7a15f6930e2e098477be8ad479dbc751332f5fba487", - "address": "lax1g8wzqc7xc7we5x2s6mfw7n2n4tkqdd3ewgkml7" - }, - { - "private_key": "9a2b8809734b2292f71830659bed11b2db01aed28d1cac123de93bcb34a4fc69", - "address": "lax1awkfkdasnda7rljq4r99y2jk4ah7pphd8m4s0v" - }, - { - "private_key": "0a65cc58d76c669c2c7e4ddc51861260c1986aae10e73433cac7c42cb6d54222", - "address": "lax1u0k5hpqeca2y79rr8a50383qgnt4g33yt9rp4h" - }, - { - "private_key": "e3c9afe93b40fbd0021c988b33035ed168e2f7600d03d66ed35528e90e1ce64d", - "address": "lax14evxp3k72h7qf2edp33e0fqje984chlh9mq7zk" - }, - { - "private_key": "1b3ca1c367c9466616fd5437a7f8baa234d0b3787eb6b635d7410d6d6f0f1cee", - "address": "lax1g5e24czk02nlchxf5r9ze2h7x6lz82da2pp0zv" - }, - { - "private_key": "f83b5265bb543b2642edbf45163a142190918b1f0ac84576276059185df9bb84", - "address": "lax1w9avccj72gkt79wxvla2um6jv8u9rxt607u3kp" - }, - { - "private_key": "16a9923e0ba91445df0a3ffccf9fd5cdabf67e4dcde9b60d5aed8ac274dc997f", - "address": "lax1xg4eypzdk9nqhsf2dxkd4j7lpmps3dqk2js8hq" - }, - { - "private_key": "29064c2bde05a041ac5e6a26c5b389ef894d823f53d2774c837a94b53165a3da", - "address": "lax1pgh49vzesf0wavkgtsk5repn6rxpa08x7x84z8" - }, - { - "private_key": "9baa9ae13e7efa2fd566acdbd8aef900b63c72c49271f5b97dfa8bc652decb71", - "address": "lax1gl6xqd77jv2gers2qpff4xe2wsx380wg4r3c8q" - }, - { - "private_key": "3e5518133fecd5fe01728d65d11d3d0e6bd8f375356d9c04c213c4c6f8f4053b", - "address": "lax1322yes6z38rx4gmcjlrl424ayxl37x6s6yzfqd" - }, - { - "private_key": "831115a2d58ee92569371d4ac55976306f0c87d24d5bbc9dcc7dbd94f0d62a74", - "address": "lax1vwlnt2kke6z0rty642806zyc7p5vqa3v78pqja" - }, - { - "private_key": "e976cf22411e86b4b0bc336a53881299349e906c2b28cd864e889c015cef90c1", - "address": "lax1mv2yu3u0cpglz78z0cqmcnntd4tev4wgup98mm" - }, - { - "private_key": "e6931906cee2028aa7a49676561f2eb51f8d471d2bd3a4b22928de1714466e05", - "address": "lax13r3ca0dm898azwctf04tc5p32d3ccn4g24usc4" - }, - { - "private_key": "21acdc4d923ab97be541cde05ee58f14ea70a8c1db135c4101364e26a390d287", - "address": "lax1fwcehc9vvxjazq5dzaa5xclkgw8pzly0j99jwc" - }, - { - "private_key": "92afe7967bcc61db058c27e26d46a8ead212e4737190403e40a93e55689ac1ef", - "address": "lax13ql8559hkv0zh6xj430l00lwc3uexf4p4599kx" - }, - { - "private_key": "5cd8b4ae2cefcfcd8fe6decdde8314675a74fafd42183a58a1fa9c9a7ff593e0", - "address": "lax14aywh3awmrda5y3dsgs3vtwwqdgh277ngv58m6" - }, - { - "private_key": "6f23e97386fa7c7e6f38a653ac3b19c123fd5a272dc80ee4018ffd216892dfaf", - "address": "lax1nydhfmnr5srsg7jxs956m0vyl6jr3zfr8lwqy7" - }, - { - "private_key": "ab0e81b3bfe975eec1fb03047425400b48b870130b47399048cd0c0fb0f3269c", - "address": "lax1n0hfvd8maev3jcrfe36nfy0y2ghhtx60tj00vt" - }, - { - "private_key": "8cdcecabcbd1208d2c4a56e2021eae6c95c5690905b3cc8ef76a551857ee8bc5", - "address": "lax1qvgzdjnp2pga660t8xrl6cwk7ej56wa0qdfsnl" - }, - { - "private_key": "2c1c2b2ecc301a139e6b43e1fa6a52b27aac1251a8245bf1e53ce8a22882632a", - "address": "lax1e6z0q2yzr732sthg0ewr3ml7zcx07669pc6xzs" - }, - { - "private_key": "b5744fc9f7f47e9420dcd9455cdfd86c22b7bc0f2b074d5e3542e02cb87988ce", - "address": "lax1wyfqjly0x88h5jx6x866mn8lvctences8cd6n5" - }, - { - "private_key": "bde72040435d1f49707a054760ad543b5edbe832c49a1d316310fc44cbe1b4c9", - "address": "lax1c7csc7qrrkp3x8j2mugff4xce06clnjxp8uujy" - }, - { - "private_key": "504619901f298f70ac52336501cce3084d9d2bd88c92aa36000c98903ff2d73a", - "address": "lax1dwjnju7eh4dcx42635h4f0l3s3x6kjkldtsl4l" - }, - { - "private_key": "28333bf83364d10db9e9cedfe34e95db46340965ac9592a8252f982d6d5aee21", - "address": "lax1t6v7tvmn6upfagfynrwxe9yyz3u0q9gjxn8z6k" - }, - { - "private_key": "d7ff1309ef96e281917822632d03ffd06da9768b18cd3c1e37a410a5f310ee4b", - "address": "lax1kvhllpnyx4fqhjpe5t799n889kexfckvkvr284" - }, - { - "private_key": "ab426f4cb95a92604367737d00ec0f4e9ecd5a0a650943f98c5dfbe73dd95e0b", - "address": "lax1chenkauc2rhp3g2zn5er5t77ertznffcw89xh2" - }, - { - "private_key": "529d151512ad3102e64cd44ac24a8955d3850f91f60511bf79d398b334ac093e", - "address": "lax10lyp3px5jpkedxtq87lv4m0we4np7xzu59lsq6" - }, - { - "private_key": "7d9cef5ed286c97519ef7e90e02760ee50d7d7301b9be97a23223eee366d5768", - "address": "lax1jjegjcage8p87g5eswfw98fxy24nx0khkhf3h9" - }, - { - "private_key": "df5ac73058adf21a5ba706fc2eb1b5742fb6a43920d6a4364a06aef6c0d47e81", - "address": "lax1txq0nd2ns8jq09us2652l35kp633s2sq82n44g" - }, - { - "private_key": "a4501c200e1aa6a93840af48c6b109b0a553a6bab7f5e0186642c2dc8e35e6aa", - "address": "lax1r3pujmz3gvk8z679xf8tf6ecjfgz65gk9yzwtr" - }, - { - "private_key": "8dc1fd6b04104e3d58a8e5277c1ec7764cdf91cdf90e7a5b5d1dcb86c248f1a8", - "address": "lax1flqlsj3gqxvs2cp8jyzanevxuaacxwmhnkz0mp" - }, - { - "private_key": "b49c747fce6bfd76da36f59d32c40622f6716d9d48149525ba577e2530b474b3", - "address": "lax1agq89dgduax388f9ycf4fz0sn6euuw72ucyv82" - }, - { - "private_key": "1fa726e858b5ad2004eae03791b8aae5d333771e3d5b29d1ce2ecfcbe282a926", - "address": "lax1q35hkraprtwynajje8dglh59g24yv0r38m020z" - }, - { - "private_key": "7e4753c032da2d847445cd153e61d081bc93fe42687068ebe98648edc22cfbd1", - "address": "lax1lpa409hqd585lz943clkra6c5uwmqzgk3ec59d" - }, - { - "private_key": "24889e5921803d1fda13635885fecaf6e639b8396c3626797c3d6fe369dd737e", - "address": "lax1ddad75dy9zxtwxjhu2wfuzjqp4j3us7c6wev32" - }, - { - "private_key": "c07a7bd327ce334590261090b0ebd0df6be9ce2378f31d46ffcc3b31d42eb220", - "address": "lax13p0rchcgk8mm2dsewwe5rlg9z74mt2lkfrah6l" - }, - { - "private_key": "dedcd4d710beb30e5d24f7b3dce0a5ae67f7ae4beee959835e08502384c338ab", - "address": "lax1t3nusp9l68usrtqrr3sdccn5lvg329mpk3xj0a" - }, - { - "private_key": "90ad5794c21aac6a3ed8daac7e485d8de2bab586999098cc60fbef507310412f", - "address": "lax1up8xl3dyldn9y4lenjr9mykxu4ehzc2c65z32z" - }, - { - "private_key": "35a4c0d8e01a9596528390c76fc42dc3548639351759ab66ebcb34aef08f389c", - "address": "lax1ejjz5yy5567txq68eyllhwg4mve5ypstwy8mvy" - }, - { - "private_key": "0b6a833cf91bb5cbd72c4b3264318e9e7329211db0296fb78149eb69e2538560", - "address": "lax1060htvzfatx7p59a63eflvgec8t3vhr5ce6xeh" - }, - { - "private_key": "d31460719d847e162a58591b82eba61d948142900c00bb5de665c182a759ba00", - "address": "lax1m772gzdln6cj3hthgr8fa7xanz4q5mx3azylc8" - }, - { - "private_key": "4c11b086905bce45016e40054eb82f3fefca3dfca33e5dea2332841bc1ec2bf6", - "address": "lax1rt6v777sxtzyp2ec473azr06uc8cusjmr88zcu" - }, - { - "private_key": "4bb0fab8dcbee3b0dd22fb3bb75e586f84c8a7059287de8b46aa5010f0d56553", - "address": "lax1fqag2te0098yu39rz0aghw756dvm2l5lf388l6" - }, - { - "private_key": "fcb4df797b18c8b1625de920e44a8f78a7e00bdd6a87f9f3e1b762281203cea7", - "address": "lax1e2jvygsqkl2jgvt5et3ngqy7kc7zk3h8v2tlf6" - }, - { - "private_key": "6bf724501d4c3470807cbbcaa3a6d6b4fbe2f7c7779cc5557c9a37a8b69ad2db", - "address": "lax1jj8snzlea6cf57kj9g8pq2vz2cyue7un554cae" - }, - { - "private_key": "174519ed98ae7d037c453ce321ce81c45dc35575825cdd73c457bee1b8c5189d", - "address": "lax1p9l0pm5etxfpufpxh8cmuj7pnclqz4m2f6ndn4" - }, - { - "private_key": "b2c9daa3d13784dc4424dcee2ffb049c5c15d1921615475aca964d5707eb3ae1", - "address": "lax1xhzmmeqgjvfycr6qtf6qtmuuq6nfxw9h24e3t5" - }, - { - "private_key": "c72fd8d3ce6311c4d6c2b266b80104cb421fb53e6cd443836f2641d2c06eda76", - "address": "lax1u64u8wetqsesh8hj0dm6pp0r08zgkffeq8df6f" - }, - { - "private_key": "5da93283d66c4533be0a7547a451546af69225cdd19566584f32919cf1bb8d16", - "address": "lax1jdtlcc7q7dsr68yp7p6y09p5pugp5w5j6s4syu" - }, - { - "private_key": "7f927f030593fd90616788d0f481165e372e7876829a75fa4f534c27ca08b410", - "address": "lax1y4mtdkr37gg3emwjsphx7vdrwx2n2vke845pl8" - }, - { - "private_key": "497d7c229e941c9939780aac4462cf59f73b6ac4b23a2a01d0cf23f18d3952a8", - "address": "lax1a0ffnws486wc67522t6xcq9kv8wuylk935spry" - }, - { - "private_key": "b07921b853d9dbf5554295579f8837b8efb28dd4466efd0a5acd8e5f70e23ad9", - "address": "lax1xtdstdx8hy6perc9z0fpy0tavquqzxrd87cx94" - }, - { - "private_key": "4f3ba18f935ee864ddda3c026e316aa42fcdcef35cb3a538041631300f66ef65", - "address": "lax1j7l3lrdf0wdzdn7r4vzxhmj0auw8m0c5xvvwgf" - }, - { - "private_key": "4da20c2b3a7a310ba80ee23d403085c2071cabc694ad9ff74718ed048ed45fd9", - "address": "lax17h6wy6tllecj27k4wutqdw6hfe96tcm58l5es0" - }, - { - "private_key": "ae9cdf2a613e2fc44884b148b00f1fe468d30c72d40fd036cc3ae7b771b80b1c", - "address": "lax19a3mc8skr2ahs39alx9zesacdkpm362vqd8hg8" - }, - { - "private_key": "09f3ccc53d3d25fae5f3dc4e99975de69dbb2c934db4610fc59a05f3763c1dea", - "address": "lax1rw6gqa7pfpukrj994a2vrwnken8g4079h4myyg" - }, - { - "private_key": "6c0f72a82709c6a615c9fcbb3f7514a6b51b8e1e4e02b0eb46694a1fe0aa5695", - "address": "lax1c9t4qnuk5w2z8plthgm65p3dmruhmpy3spfgmt" - }, - { - "private_key": "77ad4196a062867cbf7ce6eaaa236f1ff9d22dda67c1fc4c57be8d9e91b00912", - "address": "lax1txp7rlf5nktfk2wuzke7fvdjc4ljh38lcla92q" - }, - { - "private_key": "4849a07bbf6a34cf4e24672f839340832db07eaa57017f5e53840910f7358fe7", - "address": "lax1dk6ul6j2z7js6vkc27zsu92s9e3ph54nr07vds" - }, - { - "private_key": "1ba7a52db2539128049f2294b25f73b40c10cefc1077d46d663c61cdb46355f5", - "address": "lax1a2gwnjzae340ffdgfjx58eeunkmnw62fyjzfpd" - }, - { - "private_key": "a592732c21e0c5c260e6ec08a75c098fd3e926858a3a3200dd6ae8d5ee3f3c60", - "address": "lax1p7raxtth8eets05e36wpw3za83kj6er0wxw798" - }, - { - "private_key": "74e163e53c738466c1f0e631ab246caf6078843468c794294b1fd0163b689fc7", - "address": "lax1zgtjz3dl874zczx2gddrd3w43ya0ujswafwg5e" - }, - { - "private_key": "3385c1702363811127f3430038bc63584e58bd286a8cfffab6041acd0c5c60e4", - "address": "lax10th8z27kp5vqdfn7curg9xy8fkqfz38t4hs64c" - }, - { - "private_key": "fc477e2cdecd01662e94c56fdc703fceae77e04ccc65cfe78064891b77b72b25", - "address": "lax1gkc38e8r4t7yaha4pnxlf97lsvx2ugdfysu45d" - }, - { - "private_key": "7693e13692dd14607c7f2008eaa5584c5260a604875cf9e68c5bbbd60e115b4b", - "address": "lax1nvv388ps4d9t28m0d4vqs5snu4ntczh590y7jc" - }, - { - "private_key": "426caea51dc1654b7340d7d1ecf87af371c1cd89639b00c465ecfe1f8258447a", - "address": "lax1s4xryc52lcfm5le6uyqqtf6j4ydu95sj9mzn5g" - }, - { - "private_key": "762eb9e7c42af45c66d1ca023e8c8e47167f05f9d9faa760aa2db08aea803be9", - "address": "lax1f9wk4vlrjlv9k8n3yju4e5gxtsjcdmkn6cudl3" - }, - { - "private_key": "ff6b88c585f8d7c874ed847717aefe501739d95e3e0ca420db0815306244b386", - "address": "lax1ker9hvfxr94f5e78ct4vx3vxm2sxpm847wkd0h" - }, - { - "private_key": "b1750668d768ae6d47bd85d93a8618cfc2ff195819f8ffbc596bfbe053532f64", - "address": "lax1fe3gtkdj90xv00ym79z7gef787xztc3lk2js9q" - }, - { - "private_key": "49d1b2d8b227e9a87e26ad146e05734fd91efc92a38ad7e5cb1692dc407cd98d", - "address": "lax1glujc5kdnhl090fe0tjnlx5d7s78efrhxpua2y" - }, - { - "private_key": "49d431863123fa93f09ec1368e44dd89f9a6ddae0361b7383e6fbafc345382b5", - "address": "lax1v999gxwan3fegk93kwxvqfvqfuztskc3600w35" - }, - { - "private_key": "40bde7d0bb88e93c6017bed966ec6628492acb55476386dd2e52ff5cce48f7d0", - "address": "lax1hc55n9z0daxk69xcp7xlj5m029mg4un7j0as5s" - }, - { - "private_key": "101caf7ceb664f814ac330047defbaf3e9781e9df474ef7842a54018cbfd7137", - "address": "lax1zxgwwvhscuewgcjlg5uv35ncjnefhmazwjh3ll" - }, - { - "private_key": "26260d26026f0ad48798f1384496ac15d79d42e47dbcbfe72932dfeb91f4e48b", - "address": "lax1yhnp4y9wy94e4r6gkz83agn9t5zupm32ptzu0t" - }, - { - "private_key": "f0b9bf2331d6cffe2caac1e5e8df63307f9a8fb8d36df910d114206ab4af5f18", - "address": "lax1a8zwtkmk8tjzc98thprjj48c90v3mu5eesam8m" - }, - { - "private_key": "5db5bce0518353a294001ccc31ee280752433bc2c9327a586814dc62c4f8a7b9", - "address": "lax1dqjayh86m9pkc6g3mnlu6u3qn6mafmvwze03zj" - }, - { - "private_key": "080c8385bd9e7b931fcf6aa1ef566b70ae7e8c85a7b532553fc1ed2d817c505f", - "address": "lax1qc2u0l50sc840pqun625mdgquq45mg8vpjqn5j" - }, - { - "private_key": "c487463b945b59ff28bf24ea52320a9f725fd07a8acf595edc29846419be0fdb", - "address": "lax187ts6lsunhfmhpd7uyuj8kdzx3cmsgacmaf8yq" - }, - { - "private_key": "c136ae9f1fccc0ae210b0ffaeddb22eb9d1aac9d066c4ff143e394aa5c7c18a2", - "address": "lax1uhnw3wfegukazvv7xrrjclh0jce2phxwcgawnh" - }, - { - "private_key": "2da6facaafb3a94739502d6178aa0492efa15de4330b368c97a66404a7551113", - "address": "lax13u0rdr53auvc8jknz6glrhcwxvlf66pd2rtdvp" - }, - { - "private_key": "789d1cd018dee07e84fa1ea9e87a0e7bc58bd93262a4266e2ecba4bacde8dd64", - "address": "lax1mxkh8mln828c4y88g5h5y088sed437qgjhl64q" - }, - { - "private_key": "d2e03141098fe1a69cb4992f3c591d55680fa6a4d71369295b878a2ae409e19c", - "address": "lax10xgk6p8ew9rn03u4867h3h47xdf5ecau9h7gmc" - }, - { - "private_key": "57c528801aef61605a6e81f7db55cfcaa9b380791cfa91bb9b9a7bbb9041075c", - "address": "lax1kcp89xda2rk74nkl0dv8yj3h8njexztrnmxchh" - }, - { - "private_key": "ab7f6c3be4acaeff6c6d793a268a71140f0fcd601bc62a30fccefaf76612e797", - "address": "lax1dksmhl0quxyvwndetzlpxfk68ddet7yg73l3yt" - }, - { - "private_key": "01bf16caada127b4b63b855cabe009b235e6b3772ef7b24ca586d4f03288e67a", - "address": "lax17uqgta87tzf5ze22dnypva6ca3yvyvha2gsn95" - }, - { - "private_key": "bee33461d78269ac796faaac590d2c44043bcd2750f48886ba303f6814985e65", - "address": "lax1xyl3rr902rq2w9ke2dl56es6glfs5h6gnc485a" - }, - { - "private_key": "87fb4f2fbec8cd6c410d53548260be36b24ac3f16db61defce3a655592eab711", - "address": "lax1390npsq7l8g9thhz65h4n2p9hwq042exmpeg59" - }, - { - "private_key": "62e570b834ba2105b376f24e8db822fb7f18b7d8ce1c113368d9d4091b4c8c16", - "address": "lax1v0t38zr4q0df5mpxjtjnk39f5rw3fqak2l4xd7" - }, - { - "private_key": "460aad183234f2703725163e776378869eb616d87357e22088f1f21f7561c169", - "address": "lax12dlad56kd2xcxw7zj6vj67ll58au5tz2denw7z" - }, - { - "private_key": "3efa00b729dbbd10a3706b0cd1d1ad50aef922dade27451ccfbae9d3b19397cf", - "address": "lax18a8940s5wf3sps2u0063tug7llt0zzlzsm7zzg" - }, - { - "private_key": "a39016efc16577cecde748692aa0204a4defc7d01bfbc0acb37c066b2c1c750f", - "address": "lax1gm377sv5y9agyr9zrc270c3gn2xaym4rvcfgr8" - }, - { - "private_key": "6021d52140719ad17fdea386d57e1840900d63e0649d6989d8c7bf0eb09a81dd", - "address": "lax1ah98068ftxegg7wl95g9594uzngth6q948gdft" - }, - { - "private_key": "826e903bbb59815542b4f5930b92a115624d02478f7df1cb3b8bea86bf78a090", - "address": "lax1ekmehzrrgc22x3fyq3jrs7pq5a94jlzzneuw5y" - }, - { - "private_key": "a6349919edd6d9475efb2bf1fe5dc2845eb36b3a56b285845bac9ec2b40af373", - "address": "lax1cz8cxczq69z0vd5cfcjdun88fvwt7sjy06qcxs" - }, - { - "private_key": "1f5e60b1de703cecabf8375d6abc3c2ff44ca7d78cd1011ee89ad58b776378f5", - "address": "lax1add7uvhwtrqpantvrqj894485mgcv4fmuwzhgz" - }, - { - "private_key": "b86a669a834eab1e30091f97e74afbea45ed4b344147e42e26e1b02b882056c4", - "address": "lax1ryefa94dcaz3rs6chn3tz7t69tsdw3ehl3yyqm" - }, - { - "private_key": "159596a8f1ea29b12f854dcc56bf6dffcdfb0566f1c5edf30ffa179388957fe0", - "address": "lax1yzz0n738gaeulu9n50yyhf85t66exuvdv25ecx" - }, - { - "private_key": "796ccb2e7eaeb2b0dc884f1cb1d0ee06f522a32a594904616280ebc78182e85c", - "address": "lax1wu6ac63zm9kvar086zqnd2dk9l0tzx6hefsz46" - }, - { - "private_key": "0b046383ca1a5711d170066f8d5566f4d4fd6d0a1b8e8c233e6d8eaef8687868", - "address": "lax1f97d4qx7w5v5s9vr8ux2kpnz3z3kq6skpzp3e6" - }, - { - "private_key": "3fc2b54807899236a0b634dd99d042f8f6cf73b75f21d6f18b26b42bba74f371", - "address": "lax1fr972m0q8k4acn98ddtldlrdujvl46pm2fuj25" - }, - { - "private_key": "a954c663ece20c4537ce125ed08aa3032a0ed7102cf637e7faaa6f0490ad0e65", - "address": "lax14qdxgkcu0zcetlxs286pgskqv4gk92ktjr9tzc" - }, - { - "private_key": "ad2b4ba8d5cf1a244501cbf1e3e5338b46de480ed1fb17ccdbdd86b8caa29e5a", - "address": "lax1l5psgwezex32pytnzvr965afj8ucakdrt8dm3p" - }, - { - "private_key": "a24011d1538bace3167ca058a24b2dbd797445a35ebebfe503c5e78a94f23804", - "address": "lax1a8cll3q73v4s32vqxvnq8tpkzwf9j9022wwl5j" - }, - { - "private_key": "13825de0d826672340830857275e09bf348ba12a8b73ad1b1ca8dbed21ef845e", - "address": "lax1g8mgzkk9xqlsk4qlgzrgg54gqnjkqhdpp67a0q" - }, - { - "private_key": "b746d820237a04074a405945c0822fb245eaeffa65c7be417b50eb3405aebdce", - "address": "lax1gpr2xay0sdmsg7pkqj0nm7tr765ca2ftp6tg2x" - }, - { - "private_key": "1fe2934035e24177a760772d452cae5a81de9e2ca4730e9a7705e853bb1ef932", - "address": "lax1jvs44fdx45s6cavmszlpd50eyh3xdhxvwea56k" - }, - { - "private_key": "a40c8fb54272efbdbe7ec3610e2ff3185107cf3e7ebd448a99bf9ba9e9243b11", - "address": "lax1lyyhv3a7k757y5mu6ymdxes9p8kpl6u792mzy3" - }, - { - "private_key": "eab2e61631a373edd1ff028ada82a5bd3f67e5671741653ba8ddfdfefdc2d471", - "address": "lax1amd82d4xx7vhz8rx5qday2pgf5nl975pnlzf79" - }, - { - "private_key": "0bd45763d0044faf62f814ac0361d288384a52c2fad07d48081c6345498fafb8", - "address": "lax18esxxlpelfff2nmrq3t44zawds00kxzd7mp0u9" - }, - { - "private_key": "48bfb988d1c6b9b0b63fa57a94efbc3d424b6bd7740e7e4a8f050b55f6b99574", - "address": "lax1zffjter0wame8z5c5yu9mf2e0xzzeyw58ps5ru" - }, - { - "private_key": "509edf76eed3bdb9b19a94856463baa687308898aa5f7e9afc0c7636b80aea86", - "address": "lax1cp9tpxxuchhudw6k32g7empygr0eustwarnyvd" - }, - { - "private_key": "6fe11ca0c614e3ff1cfae99e2a40cf1177bee5908f89dfb787c37b625ba220be", - "address": "lax1cn8uvgvmtgrxapslgfqc37pvajg4elhdlxu9xc" - }, - { - "private_key": "3d6451740855d35201f698c69a4d0c328084bc9f643fa20e918b48665b616e0d", - "address": "lax1sr7pqyfk6z37rvd33a9kdw54jkys73gecn3gu5" - }, - { - "private_key": "9b63d4bdb9d31479e691f2c4eef087059898724b8250636a48a7cba53ec7ce97", - "address": "lax17ellw9pxn6jhkg5x08p2ufdpqzsgt37dm393ze" - }, - { - "private_key": "38a9fbdae9370d5a55eb381ce7fd70358888c3f7a555a1a90ccc184acc4e7e21", - "address": "lax1q70rqkujdnhaaarpmudnx7wfth2ch07l7ux9ye" - }, - { - "private_key": "6ae9c1ba755b34e88691c436f1f3fd9ea78495e048d2ec11ea67fd9e66a3887d", - "address": "lax1y5w78r8c6j2ltychk0qg5kjckgpt6v26f23k2j" - }, - { - "private_key": "37b3abcfbf28103b26993fdb82a7996679723c2b369c5a8f3726046ef64a5733", - "address": "lax1r0ynr7yuhaqxclzk8avhkysxn8lm9qrsdqpm9x" - }, - { - "private_key": "d8eed2d7b5d10cd37789ebe9e9e4c343b54d7eb9797392d4628cfdd4d75f712d", - "address": "lax1pval05s97ghe0v96qen6xg7a3a2ewd4hsxystm" - }, - { - "private_key": "79c19f1e7ae6f1f31b4d7ef3710642978409d660d6d9bb87b91be5f09245b90e", - "address": "lax1vgq05ncksmwyprlm75pkzrpq9q29swl7f7y9y0" - }, - { - "private_key": "09e86816d16cca8b1ce98b1f6197331aa4dcdac042467038085455fce187a6c3", - "address": "lax186grchl6v4zv3hjgapdlzegjv0anqp5k95c4ga" - }, - { - "private_key": "ab36f97e8ce3077ce77621e0bfdb8d5d52ed95cfe11a7cf577f73c6192aaa4c0", - "address": "lax1c3uezhufjqfan8lw2uq40cwkmjz6jcskk9z3y6" - }, - { - "private_key": "319eff965c15fc806b70dacd66d482e6cbdd6498786b685a4243087600d5e437", - "address": "lax1zapt8p703r2cgcr2m3zrhss03f3lm7av3a7z2q" - }, - { - "private_key": "8a85148c0ba692f8050e24607ac7f6a87b0f9c9309c3ad04fd99695387c56d10", - "address": "lax1r64myq5tphp0nuvcj8lkkvxl8xapcsjqvj3e4q" - }, - { - "private_key": "c67b94471860f5618c67ef1d150fcc48b9508cbb40ede54cfd27f22ada291711", - "address": "lax16ztup43fjqg3fuecdw3vexz5qgau6208fqtylv" - }, - { - "private_key": "ab598c03ef0fb35bbd37687d543a05112444459678fd8c9840d9c2d870c1277a", - "address": "lax1q2whzhrpyhftp3t68l8c8duvgmvjq9qteytfy8" - }, - { - "private_key": "3555fcd2acbe11a2c8f947e870cc0365723778e6a85964210f1e6f6c60e62267", - "address": "lax16pw97mk62qqaenl6nc5wcdkys849kjr7u0eqz0" - }, - { - "private_key": "4f4672894d83eb277af460b4f2f2437b83d12446f65b7cd3a59d5ad1ea098f84", - "address": "lax1ktn5gzamanest384ek5kcjrpjsyqpgkk5l5fll" - }, - { - "private_key": "b229d58c95a0154a5f888ce47da5ee8bbb0bc589a9530016744c8e02d24bb091", - "address": "lax1ffe75p855uhaxmuglnxln7t79tqsqrhfwfvpxm" - }, - { - "private_key": "4d51572c6d4b871674dc6efce2e26114f47db2302e93e7025d974e9173ad386d", - "address": "lax1qmgk03mupvwryqkd2e3vhusksqmk8s6epcys5g" - }, - { - "private_key": "cf4c03fc704a2ef9dc25030c71d361214187892d0b11ea8373da132ec6d09577", - "address": "lax1v69nctr2r23qvwg7htzkl37fe7j8hyt0v9jmsr" - }, - { - "private_key": "924f3fefee2a4fbf39a9d286c67ca79a7e19b09ccd36fb425c7e1ab9e262098e", - "address": "lax15kfw79tzj3sq5aavcs4j0m9m8g8atayrqud9rm" - }, - { - "private_key": "d5d9c9a486d0039b3a1a6c31f5b45ba2511ea2b4a8be415f78ab90e8e2508b15", - "address": "lax1xt5j90rhqpuk7nvqrjpl5ltufzlnjhcgtre3zp" - }, - { - "private_key": "7b3c1105157be3c6c9990bf70a25ffb90cb3fa60bef2ac8c58532f556e10a564", - "address": "lax18v3llycelz5dxxczyxtaax94n3vf924wngs5qz" - }, - { - "private_key": "6627808814ed2c0c2d31df6c2b01e8f64a3574e3c5c8014385fa87f8811e5e09", - "address": "lax1ww2plkpg6f4hamhve8tm0mulctekkkvs406zgu" - }, - { - "private_key": "bc8565ef635216758b131285e5960a0f139fa1d57119554c23f7b5b2a6dba7d3", - "address": "lax12wcc27v0dfa8z95ac39l4dm9xt5ddlvavn550x" - }, - { - "private_key": "4bc727b861cb4950d3b1b1d636009cb032348270c0dca378295f817bd38379de", - "address": "lax1rcnxtevceaglc370paw978qp946q9kqsjrsykn" - }, - { - "private_key": "bf6d993033930fb86388c5f0ea28b0800b32c2ad7f4e13a5cce374352d4e1121", - "address": "lax13v5jmd26lh02mvthlduqppxtwlsuze324z6s52" - }, - { - "private_key": "ecc900b7ab6a45ffda305c797a663607ed83d6f31c6945e15e7b945537027c45", - "address": "lax1e66r29ygaaj3urm0cqthgp88tfl5k7grt6na0f" - }, - { - "private_key": "14208bdf2d63525d7eb122a469968369d324e55cc30da9247d2eae6be2437135", - "address": "lax1j8z2jru7lupwwy0tvsentr2hy6swp78wqmh0gt" - }, - { - "private_key": "401da8fffacd82e675f3601cbd1cc296a37173fae3953b7e88125e8930c16877", - "address": "lax18srnmya9e2f7pwe5t9rkpck0mzn4vsnf849yvy" - }, - { - "private_key": "9b3da588189f4127f977770fda66ca60095ebe07b4f7c69258304b536a5c6791", - "address": "lax1m3wstuaufrlr0h4s8z29sn47dqly7af7tlw48e" - }, - { - "private_key": "c0bfa1e70c3760bd7b9177e68c4234e42aade48db06bcc178f4364bbe2716568", - "address": "lax1sylnyqytmw70ygcgh83az3rs8l2nlwc5jf4xsk" - }, - { - "private_key": "f9643b90766030a4ee4b07f01bdc3847cedf5cf0e2d8d01b5a2432337442b9d4", - "address": "lax1263thzx603z0mwzkxpl82k4w9ljtw4f6fuperl" - }, - { - "private_key": "a05191924f83bb9c9428393e2761cbd59da59ce6a9ec8e9e261e8d4d547feb83", - "address": "lax1pv6qgar39vh55ds8vdtlkya4vdc2jpmtpmc5e3" - }, - { - "private_key": "504da81e1faa12604d47c608fa703db67baef41f3764927c01a5a610a6b77a15", - "address": "lax1q63pwsj9m5gsms49cegqg9xs0au9mywvj9uwq5" - }, - { - "private_key": "89fd75a9d39d29d02b18a1ac5fd141e5e4ca164badc53dc5a1310401f407c508", - "address": "lax1h92vr6zepdrvu65uceg0thgj8s0n5y3kmrazwh" - }, - { - "private_key": "3de246d0435008001a5b31287a17960e0f1bd15945bfc20a035f4eb23fe84bae", - "address": "lax1sgm339r58ljny8e5yuyyz9kj8fzyud6e992p0w" - }, - { - "private_key": "aa9f6a2fd343ef3a3c58f8ae77f812155dff5a87446a6f736abb0114001ae879", - "address": "lax1xjt2qk3klltvjlw9jf646ult790y0d94dx883v" - }, - { - "private_key": "4403d6ebf53de8555b414991fd266585037874c7e59433ed01792db87a72fba6", - "address": "lax1ts32su5taa7vna7ensh6qcqnqf9s0f524fpxfj" - }, - { - "private_key": "112aea92e05ee3e057eb7213bdb19431be0d764c26f3a31a0ec7852e014314fe", - "address": "lax100wpyeeaujf3vw02vcf3v3qmrmg4nvj8wq2ugd" - }, - { - "private_key": "1ba5977d9407d62ec4a553a91d2066d694f6e4c6dcc4a7af81bc22590e7ccef3", - "address": "lax1jtr6ld95xdgg4tsd0gfe780flpvauuk26gyqt5" - }, - { - "private_key": "4bf0642b0bc9224e6f82a320af59e8ace613a721a9a8ede2bc2dfe9e6918a318", - "address": "lax1qu7kqgaftwpcwck9l68wajvmzkxa2qeppy6dzu" - }, - { - "private_key": "c6fa75db2504ad60d169d90c121c50d267573bac3d205d6bdb56a9be25a29e69", - "address": "lax1lz82ulq4yh0laxq788rpefxn8edc7wf7fvxttt" - }, - { - "private_key": "a050cae76d59f7b732cba7b0b81502d7f4383842667e962b4fb72f151d94943f", - "address": "lax1t4tjp9m8arj50mud8la52q0kmahjha57kx50p3" - }, - { - "private_key": "3deae254a266646bdc9283a57a48f9a6e3172e11300f910aaa79f7fc281ca075", - "address": "lax1j75upfz58ag4zq353v0uwvdqrk0a506nzds6xv" - }, - { - "private_key": "99be00de4bd199728399f9dba23bc15f020a9f31953f18166e6310518fc4f93b", - "address": "lax1lq82z3pmgvuh8c5u0exsa6fqsqtu8qulp9vvsd" - }, - { - "private_key": "489b4aabec5f7f7deef7ca238e5df4106c2aca1a22faa9354f71c19e2f1f77c8", - "address": "lax1m73dnnjtddfyap6dwc9k384zmkmjcs6pg0hvtf" - }, - { - "private_key": "e0ac89c84f321bafa2dfe7d6a7eb2a6a11f9c2478cd232b7be3fea129edc5e8e", - "address": "lax196jpnpt95ct2a4p88almaxc60cs5wcn0rg38mj" - }, - { - "private_key": "ba1a1b31d19288f56a1766f53f9230d31d5f4e540248c0e840d1d7c78b05f0fa", - "address": "lax1urjf9qd6mz32n4xd9leurdr64smx8h98fq7a0s" - }, - { - "private_key": "a903f0c26d03a665a5528f9c025889c5562b2a7fda08912b1518f4ee42482bd7", - "address": "lax13ga0ajt8t4gvysjur77sar5s2y7ya2jakhk5um" - }, - { - "private_key": "2a3c7229e83bfed124324e37e7d5d6528d794e1dfce110f06f823ba175be0796", - "address": "lax13vjr38sj40p0wdr89lrpfwvnjvzc6juqymr0m8" - }, - { - "private_key": "7715ec60f03ff887d0bc4259b6cc23db2a5749398c3d48640b9eeb3b673514b8", - "address": "lax1flyc7504wrczmtmcvh87n68mjxp393e7kap5q4" - }, - { - "private_key": "ee9c48d20d2a9facacb28d66142ffb845901e7e5829af2702eb05736c483ed55", - "address": "lax14aeyv274xzl8qa4nuzxsle24z78rgjm9fh5l30" - }, - { - "private_key": "63723818f46309d0a7d8ad239c6c50b0f09932880be6923c4f92d517a79d73e6", - "address": "lax1d27hvrudhqnh8j3cwa2zqhaxg568jj2aplpwj7" - }, - { - "private_key": "ba2f006ba1cd6d62d88df07c17b22e637ec6f09b2dc58f0690b66c67ed97ac4e", - "address": "lax13vlhxy706dnkw5qyt822yehctle2eydaceys0s" - }, - { - "private_key": "efdae9dae7b03649d7291f31f4649c46cd0ef28b86d642a9b929bb92cc853a29", - "address": "lax15fcrnm2gnl3yupary289v4pzxvk6patmcwkhqa" - }, - { - "private_key": "34eb9a76aa4575e8bade81325252ef9368cc0e80823ef833fbeeed01c040bd67", - "address": "lax1su09c286stzq2l7x4htsp8wk0zjwt4n5leasx6" - }, - { - "private_key": "3e526bd9e924d050f5769b09429ec2fbf3c13b039f758e887e73c1fe86505625", - "address": "lax19x8avea976f09hl3jglhmpa5f4gn5cy3etz6c4" - }, - { - "private_key": "ab3b0d7ac704a06c47a85c0c63ad8a76ec8246adbf5ec4b7a84740b8a5ff00b1", - "address": "lax1txy6hxt5l87mx02s9enqgh27nxqvrsxfzjkhvq" - }, - { - "private_key": "8fc98343d0a433a3bbb8c513266b31ac1f1effd2f79a7d375fc89aa0a3b0306a", - "address": "lax1xpygypru46ja6qhvnyqartcte7yt602a9phwas" - }, - { - "private_key": "88c69eb7c590af43554a1567ed0b90818c9a9d952fc74f32c47aa235a7c5c8d2", - "address": "lax1c8kvl9ht4ngymr3pjh5qf3asvuvp5n6xg2sp4n" - }, - { - "private_key": "d1c0be59edb00520f72d8f393ff9f1c55b9b786d1fea8e8365b0afb6d20d93c5", - "address": "lax1pm4s7qwag6jufgpkap65yh8ugd8uts7caygwkw" - }, - { - "private_key": "60337aeeb0cd2392ba61cd802145aecd911eec75510c2516c5140be716a412af", - "address": "lax1pd5maj27kav0vxmf9629xs0cmer5hycwhcn0xa" - }, - { - "private_key": "b2838b8955e3bae9b21b6a2d113235ba8ac14750d562cb499d2908a85edd2279", - "address": "lax1gtdqjmfhakvjjkaxx4lxqry2q5tzmjrkqvx8zz" - }, - { - "private_key": "54be61b0a4315523898854f8a46088dc62ddfcfced9f41b4dcdc991af7ec8393", - "address": "lax1gckalhz8xnlns2a8cyqnp5szugl30jrzfy5ga2" - }, - { - "private_key": "296ea51956087b02dc9f069322fdc890150a5d45eaae290bbbd09e8308b46021", - "address": "lax14nw9snh02u44f0ud4tycf5lnuh4fxzus3tvkcq" - }, - { - "private_key": "08586673800e00a7b260f95309f77f0d095b03861302f036566820df5aaf0ec5", - "address": "lax1kxkhpr9477jejqp5ym77yzm00l2ns274wagpqn" - }, - { - "private_key": "222a935fda8cb7cb823118cb7225f1de78a56fc3a0f7f40cff97654630eb950a", - "address": "lax1hl37qsxx99qmy8gnruegh2upjrng877az55uhl" - }, - { - "private_key": "8c7c7ed3db9c1c3124ff7a2aca2b17c6e8c54d308802d6590bfe4d7b9b990800", - "address": "lax1qfqfpkmdarjh3qq6ewxlw9seylcj7lha6qjz5t" - }, - { - "private_key": "73a38715128f1cbf44a7a840346fd5872a3c264a3e45b25992bdd0c79ef6cf11", - "address": "lax18za7k8yr0v2vv9fe22nsf5ezxfq9nyucxz8eep" - }, - { - "private_key": "f154ce5943c95ab5c4be465835c4f24ad5fa6dc411276445c98f6fee7124f847", - "address": "lax16r4gyj9saresdk4dl8sz7dd6teezdw80n450hx" - }, - { - "private_key": "ec7d7f50f8aa2ffccff2a6c98847955fc658f3700f20fcdf992217f211a6bab7", - "address": "lax1ekyyfn64wy0p56q85exyxnl5kkwxxawt27vzs2" - }, - { - "private_key": "f57522ed73b08959c2e2db002473ef030a54be64e8efc724a92eb16e40a8b627", - "address": "lax1fdhc8n7ml00l6xajwj2u3pawvmcv2t5hcpg90t" - }, - { - "private_key": "eabbe1d002575eef457b49b510fbc70fb70cc26e7fa722a1b8e0e1610e76f49f", - "address": "lax1crl2rn0kys7u6kfwdjj893yvzwzmq26r9zx496" - }, - { - "private_key": "19e43bd04016473e5e1d0e06c19476ada30e192f733c068b5e3a8e65ac6edf07", - "address": "lax1gjvzmmn8mu53dszq6rjmjlrc4qmkzxqfgy0rd5" - }, - { - "private_key": "51a7292e2027c55c063981c30288639ca724757c32ba1482bba0b1bf1c441b8b", - "address": "lax1htwxeje02d56yaddr9ajw86qrf79mw6k9lmnh3" - }, - { - "private_key": "a0277b4ca2fb3945232035f9298d1526021fc7f7e3bf87a1c12a4003c978b53d", - "address": "lax18u8zusgz07tk5f59cnldqjyq5nyxy0et3zq6x4" - }, - { - "private_key": "e2f59594b10eb5443e6eae7c2a1251de2544420c1af88e533a7771db3cbeceea", - "address": "lax1hh3gjm0m3vwlt952zapt4xldmymcsrrhxjj33p" - }, - { - "private_key": "afb262ca811f19570515e1dc8307c84e6a01fbbb19e28a0cb999ced02365ce40", - "address": "lax1suewc7sykfydmylgr3tkc8u6xchfcrdvp2ujrf" - }, - { - "private_key": "35dfd56fdb62d272b7dbd5e6f899e3de49c5268188ccacf1210c3458e4dfcf15", - "address": "lax1xns2j2gq7mrgpx2s0veygxclasnfqxlwhtl49x" - }, - { - "private_key": "354958496d4277d25a5f26a333104a657bacb983a6947f4e239e44a191686c08", - "address": "lax1gpwzmxqxc63vzs7ugs6wehdqh4nku272zzcp9c" - }, - { - "private_key": "2c7a6c8e9d490e1c364dc58d96d3799ff94d4fd3b07bdd6c4ab1c9859a543c91", - "address": "lax1xzznnf0ntv0eqh0jwm3tc2kfc5vndf03wtz65v" - }, - { - "private_key": "b9aba466629a222b1e113ba36f285341f30c27bb6a0354c9297d658f69a48a0f", - "address": "lax1fvgtmlenh5wsmr7w0yz4cz9hczn0w4qkmlxcht" - }, - { - "private_key": "3d3ce8a5d1e8e085f956345ee24c75fc57a62c0241c30734aea39a4303afab7f", - "address": "lax1a2ueu0z8sv5rs6kh3ughrwqx5c56n654le8kwy" - }, - { - "private_key": "4e7f526645f37672c26411b163e164198d753c384e7c7d1054ee9218c3e2f92d", - "address": "lax1a7xpjtvdpv5dkwj89jnw892pfksdpy9pj0mncf" - }, - { - "private_key": "00a3183966f5f3917ece5bee1ce48a30ebe92b312da8a54b6485d48dcd6b517c", - "address": "lax1rzs32tmj0mu7nn6jpz5v6sh8s4v5g0esx38nd4" - }, - { - "private_key": "d6d2796ae662533cf5f7dd90d7d492680e2f4baaae2c815dd8e19892eeee6195", - "address": "lax17y2qt2c7k944fkfqluwkpgec227lmtzhl6quna" - }, - { - "private_key": "5adab78921101f4d2a7c7176ef238f54988ccf8e596b3ac6b60b092e2e7b4472", - "address": "lax165za8ans99874xm6vjarfc0k667eav6vnnjjmf" - }, - { - "private_key": "2d78964dada058568c067104f582198343a323377b0549e173d81f21d2e1b4f1", - "address": "lax1cv457fzzlsk0zlz7tv3j6ntne3635eqmrqms6k" - }, - { - "private_key": "133556823aa2cacc5eb0c6841c84cb3b797435aa4c2908ce5270c45553ad091b", - "address": "lax1lz2drztgd8uv5q7q07eaxypglljcge5e4eaf0g" - }, - { - "private_key": "5246b756e7015bd96b5882535e0b8b0c5b29d6009200218ced584fdb2057c797", - "address": "lax1r2zl2ke6w7f93phchpezj04vh8uwd5nwtjaw8w" - }, - { - "private_key": "c244508f6ebf2671bea577e9b1b8d9933dace3ea5e304e9f61f683d1be04a603", - "address": "lax1249f2x05ltfcuym2nqw3gueyj8gs60jj77n3az" - }, - { - "private_key": "6ee83e521ac36711a95fc5ef5cdf6bcd425d793a9df2e3457428d8cc495608a7", - "address": "lax1ly6gngx48f3nkrl3pyw478uhn2ze35zkst3a3q" - }, - { - "private_key": "f9a5656edcccf2d3be1a8c17bb010462070f67ae33c186172e97a085dfb3785a", - "address": "lax1r57yxzze9een7ytt9gp2pjsddys0lww4rjnf0f" - }, - { - "private_key": "699f2b92dd97cb2c318761844c1693527509a80ad406ab066a9ae5b351b26b12", - "address": "lax1n6edytx6zgnavepz0p0tmc7hvxxjw53lcul66j" - }, - { - "private_key": "e2e71cd7e0e475d9da23a8a5f1c9b9a5edf6cf3b417088aed77157e363b6fb87", - "address": "lax1vnl3v6ep4en6ltrjhykyxeetd7gmneqx357ccc" - }, - { - "private_key": "6b51ddd72075de288391685c63a698720ce2c0924064298d81a53b32d08e9ce5", - "address": "lax1zqqqwvydf7fzzz77w9vw5lh3pfmj6tnhzvd766" - }, - { - "private_key": "da3551ac64fd617c368fba05834f29dd5f85096ebfeca0ff7680d4a1b5869eca", - "address": "lax100neywaapkdas7stjn4sxe7aatr376z8cd60xl" - }, - { - "private_key": "3de50ad7c2b6e39ea6b1f4f0447dcf1683e4d9aa5ac5f547603de82960fe7415", - "address": "lax184sun4ak8ansr8l52nyfhgmh8n5w2nfpyhfngh" - }, - { - "private_key": "6d5df8a4ac18056c0b000682a7c53a7e27906351be557204b2000fa3204cd5a1", - "address": "lax1vxjkys726dylczpwdug4lfh23cy3nkzn4dc9vh" - }, - { - "private_key": "58d5abafc8a3b1cc03aa9e342df919ebca4afe7ab586f194f0d15f22b365a0d1", - "address": "lax18wa6k4tck6vuz3c5lczcld9efhgg9942syyufn" - }, - { - "private_key": "114eaaf9d7cab224648ea073af1106bf286bc983b8d0fcd28eb055ffb75f63a8", - "address": "lax1qmzlm6wadhftx8aaprayt40qyxf9uw3aszvcdw" - }, - { - "private_key": "b0e3958cb9eb111ef9dc186df9f1d4e1643813f7a496c02d60505d67942b37f7", - "address": "lax10dru544qwaxpnp0muk4s5zcsvg9s5y4v0t45ng" - }, - { - "private_key": "d8b8a6afd7b0ffd1d8e75eb1d274a1d084487d8f6e357c12a7062ce680a55ac9", - "address": "lax166h3p0n9ms4ep4hz20p2jkmgvaa9v67fywnenn" - }, - { - "private_key": "c5e9b9ed74c80695b5935f1888da90e07f3d0d4f2bb9d6d9b8156e38008d7192", - "address": "lax1d872hyga6fah8gudtd76yzxdr0qtpakujjjttv" - }, - { - "private_key": "acbfaf3f08f669200705cad71c99d0a2aaae4ceb1a72aefe42288b73c4b07fd0", - "address": "lax10tradwe3c6dhw6g99jdh6qgu0zhsklc27zkaf3" - }, - { - "private_key": "2a9d42cee86e79a3b6806001dadf208b1b6dace679b4daf12ea29d8bfcedaa5c", - "address": "lax1w6978env4tcftre45e9a9e9qaa9xnzvfe5mdaa" - }, - { - "private_key": "097f3f1cb6d68a94328ef13b9c482e303fa70973d7f0f103e2a14b9c30b3cdf5", - "address": "lax18u5mydd704vw97e83e2ff8egs6duz5fay3s0zh" - }, - { - "private_key": "c5db98e544482cbde1109748ff7d2953f12caa2fb044f8d0be8c3c79aa311356", - "address": "lax19f30n725py64txf4a97lhrgr2lmg7l0ghzqn49" - }, - { - "private_key": "450c98e71dcb268b1f2db5532eff530afb3d1003189425a33e7c0ff8c0089bac", - "address": "lax1sv6vyydnv7sdl8w0je7v9ma26adtdjv35p49d7" - }, - { - "private_key": "9b990449c28b7792ec65649394a49ef148961ef4cf151d35de3d90e2eff2bd9e", - "address": "lax1gcxlv6jq2930mzaw3ttewlgywqamhhda6n0gk0" - }, - { - "private_key": "5c26823f24df1479550f5f5f89ad188de131c8e9ce800017a0c4e2967b5331e1", - "address": "lax1pdhzdw4fldvdz2rxdyy7cu6u0kmvcsz29hfs39" - }, - { - "private_key": "f147a70f2f2b518c0c72f21d0d2b3061573e7c78d7e6af78cd49a8bb06be8d90", - "address": "lax13us6qqv9qamzq7a4jw7wrmt4cs29lgq8nqvwva" - }, - { - "private_key": "519d035f10e9e350d4a88ffa9a0c5509831d010ca09b3c2e6e0d5df92cbbfcb6", - "address": "lax1sf356xurzw76l3dxrtzwmsan2ytsk98y95dsfp" - }, - { - "private_key": "9669592c1d749a244cb361ceffd6efdb69914c8d44d4e14c8691b015d57fc31b", - "address": "lax17k2fff03w5zx9066lc7c8qlkzf54m9pumhmw23" - }, - { - "private_key": "1eb72c823911c4ae8cbe4463dc424e7f1b6f29836723364d9a9457df6c5b649c", - "address": "lax1pk72xtqda5jlxaxexypkt8sdmt9z5xxygknyqj" - }, - { - "private_key": "a801a84e2d333d4aeba19a6530d415957608afa21d2d998f1b1191d5ea2d6c47", - "address": "lax13aa993mndnkg8mctfu4fe9s66kd8p2cmpjp3dy" - }, - { - "private_key": "a58bc7feebdcce7242caf4ace5b83cc089bca355da8a70151dc11ecaeb8dd8db", - "address": "lax1j8ayqn7fxplntdaz48cmrdtqhc0agshyqh695e" - }, - { - "private_key": "4dfb83c0a3bab8e734b1e42dd0b17098478a06612f8b085ea4bcfc2e35105b0b", - "address": "lax1mx5lv2lc96cnmjjs06wy6tq2g9ngg9mvq97fr5" - }, - { - "private_key": "e3973920124d74e1bb0df5b34843f2496a1560c0cd03f5590dd2dc2ee52e739c", - "address": "lax1e8lu0ukvgm66scj7sa5u26jsm3ctmyp5gqpxaf" - }, - { - "private_key": "eeb8244598a197711648a350960ded5011eb63ffd2ea0b34a3dc6d5b9906ebb7", - "address": "lax1e2ezrc87hjmaa6mrcp3cpnw6hepec6e3c8y786" - }, - { - "private_key": "3331497ed1cafba4578fa053cc080f73e037de91ffec89351bc90577b64b4a0c", - "address": "lax1lrpl2jf7tlhl7m9q408ac3nasnhcsjvelavgtq" - }, - { - "private_key": "071176dbf4b628880b782027ddaa6ea3522b43d1eda43f858bae91b3b7d4eeb3", - "address": "lax1v9dq4a508vxl0cx46h5kp8hd05sj8aux9kctsq" - }, - { - "private_key": "6d7ddfaf7ca9e8e0ff2191035984884cf553b6dc7999864982fddbd16855862e", - "address": "lax1cgnmmqgunhyqyfq7r5978rfly934mmfzuqs0qq" - }, - { - "private_key": "aad9087f676bfcd0ee5be4928823e2579a5485f75b63d0354dc0ab9a3bdfdbdc", - "address": "lax1pe8teh5cr93clc5awjcpf2saucrxyvtly73thp" - }, - { - "private_key": "282c6675e2f16a54322337d556c85c457703a560b97edba3db9637e70816228b", - "address": "lax1knt4dw39n0augnjh0ft9d0atcmgummdkl3d86p" - }, - { - "private_key": "41fc054c0d2ee9485ffa8de166807901dee5cea53bccedead2d9bbee357fdbe7", - "address": "lax1u2mqjan3x5ztywjsgnvmjlxcz4xsmla6y9fwft" - }, - { - "private_key": "01b5acd846fdba6a90cfe31b779e77d025414c058872d2e2395a383488723e24", - "address": "lax1wyuemw87xqun3ua559mcypvacsk2q73ale5ufr" - }, - { - "private_key": "a52d5b895ea093003465e1da3b6ebf710b313d81193ee151059b416818a45eaa", - "address": "lax1wjprd4c7fcqg6c66h26659c9twx6stmmecp5xu" - }, - { - "private_key": "91b4bd3320a04281db0728561cc740bd1181cfdc4abf23639a71c91d49375430", - "address": "lax1uywya5qyr7dskefxf32futur8ttyqzlm9l5uww" - }, - { - "private_key": "106bee01d493277b6eb7ba6e3113c0c3c48fd442e27a36438812d9c0ecb17bae", - "address": "lax1khca9ngxqpk2pk5x7nz7sv5kkl3kcu72fk5qyp" - }, - { - "private_key": "b460157feded8d051e4fd533c10335f6325883b2b4ee9155fc8a5298641b3542", - "address": "lax1u3jtwdcfgch5ydmrd0tre4n2xje3g0u6lxyxwd" - }, - { - "private_key": "6feded059c341f04d72f4b23357b2e32cd5b57c713a5b4151f20d5be1f924241", - "address": "lax1qp8yjjeh9dfpd4ck07hrrxzugfas5f6j7kcwen" - }, - { - "private_key": "8d558f7681493ab1c54df32eb8354d2bc797963d2ec235db1a949a9e0eb1704e", - "address": "lax18vk5emhmgj8f679x788hswrdqc44rjs4tvd7pq" - }, - { - "private_key": "94da73fc893d70a55e06c0964c8fd9c35dfa9bbec0ceb863c908f9c56c815ef4", - "address": "lax1jsnf33s2tuulz3plcl3ktd4s7rcr6nlrdwcu42" - }, - { - "private_key": "37881d221db28065cb30cae9216ce0ceaa1310f49d4596d063cc3a7151833514", - "address": "lax12kz2clnl0jwfp5sh4jpcujl55rev608nhkf80l" - }, - { - "private_key": "d29d264afe7ed467e3513839e1c3e5fb14b075646fe30d7144090e24ada1018d", - "address": "lax1unt7v0cs9gpk8ygvyl0pra9jw4vcutxrnx3945" - }, - { - "private_key": "1e1a240b7290bf2e714d7bb4d8de1d34fe6f47ebf3e9e6737bb2e83694079f42", - "address": "lax16dwavcdp8ynm9yxnfvgjnk8jep32jptsndes37" - }, - { - "private_key": "c7a8fd340c0440e864cac25f265eec121c348662375bb7fc3a5894917a79051c", - "address": "lax1y55z3ykyqkzr232q50gv5atsmgtmpnpdkksv0q" - }, - { - "private_key": "b627da2bc15f7b41c651669c0e7b12ca876ae9f277ab476b2c01371c4069f2ec", - "address": "lax1f8antkn33v9km50zchf49cn7x2g2vfnvsgvuu5" - }, - { - "private_key": "83e9fdc1aace7a36339bb9eed07b3567e9e56ef88c3346bfa1eb24cf63ec93fc", - "address": "lax10mtj9dz8jzz8mn7wds6qjpu94tj5u4mxnqpsqd" - }, - { - "private_key": "0fcc4bf52096208512deda909fdcaede6dea2519e1bb2674033487e355c44e89", - "address": "lax1evdv2q3rxy078ncwhfumh8cnenkq3dl9hwghh9" - }, - { - "private_key": "91bb179a428cfaa933a3d994def3bbc9d91975ab0b9dd9e3769e796d3dcab40d", - "address": "lax19thtk0u370z6caesrqrj3we9dvpml6w9a6zmd2" - }, - { - "private_key": "ed6959c7febfd28418e50761e0b36d110c4ca99697821b375472caa39b025dad", - "address": "lax1c04tk5p3u9g6g4vaet2vm47krz3g7jr33wrkw4" - }, - { - "private_key": "753ed05050330207ec50a4cc6f0be6554d0eaaee381b29776dfd89474da7cd90", - "address": "lax1z5zc57q7vg7c5udqcvuxvqc5y068ucaw0kwwdc" - }, - { - "private_key": "6c43d4e21ee05c8e2f4f207310f2838327b1acf19f6c83f2e5aaf160f64e21af", - "address": "lax16pqnce5l3nzp59egftkuwksycagw25h3sc6vcr" - }, - { - "private_key": "264f7ef97a02b641fec38850a6e8d0894c9ae6462600b582ee360e9b0118223d", - "address": "lax16v6qt4qnh9gcv5vr5wckc2hgmtuzllsr8t3r3x" - }, - { - "private_key": "8a7b2606f8dbd6f52981c53e6b97b617f759793bd689b75e29ce4944d28bc7d1", - "address": "lax14ltj5vsleyzf5kadr5axylgmjev4hdhvj7zc26" - }, - { - "private_key": "5fd47d0f0433458b430711ed86e7e655d081bdda27881cafb9481ec48c066561", - "address": "lax1fxgmk7x0k05psn2y3jmje4r2ukgsj0vy046ycu" - }, - { - "private_key": "814ae67ece8033d18a8817dbe1a0f3c1008093910dc80bf8ec6dc50dc8b5f307", - "address": "lax1g52qudqqpus6d72a276jkeand97w7anhdf2uz9" - }, - { - "private_key": "3a90a52225871f4a72a47ea4780f06aab47158d724a36de349ab83f3ebf231d6", - "address": "lax1xktlzvrrp3gktus99zz6qswwg0psngxntkaee3" - }, - { - "private_key": "48e6b22f4fdfa12899bb2445bbc7e5f0f9cdcd58a5c7aa5ec76370261fe4669d", - "address": "lax1htmuk5jdtuxq6gvemxshk9fg4t625hmvlsmxtd" - }, - { - "private_key": "3aedf62923c63cbfbd8eeeb0cd393b803c0715bc04f9e4662070475bfe84f6fc", - "address": "lax1j7zv737zvgq2tdlrm9vt5jfmay0r65j9sgdng3" - }, - { - "private_key": "25a07051ba84b46d78643a7bde70d0bd8c905ad726f29ce79f8781e068471929", - "address": "lax1msw238vqxtnfknmc4z9a7ynhj0qvm9mwz5z3g3" - }, - { - "private_key": "c6fc03cb0b112f505527bbf76e721d30511fffd94b1ccade717c8722f04ffbf6", - "address": "lax1mzu9u6tvryp2zkud3d6h967af4z2nhwc7cptln" - }, - { - "private_key": "ae1bd93b927478fb5c2d3c216e52258bac1c3b0d8743461c7ee50bdc1b37f1d0", - "address": "lax1n7erdk4tmcsjqn8gf9ytc58txrkzxh8d0lu0wm" - }, - { - "private_key": "dcf5834f5b92efd052717f0ed816b0f0c263cc47c54759d271f88a4e53482080", - "address": "lax1y6ve5p0kjtl703c7mlcl5tjayvyq54y6qxsurw" - }, - { - "private_key": "2085d553f4658635dc7ebe99a7d497406d96ac864f02f9dccd8d23aba028ebb0", - "address": "lax13xsjc8qn3nct54rcmcsmgp94e497drzzg5ar4v" - }, - { - "private_key": "223babd4f59e642acedfce58449a33574088537191c8720cc72f6d88ae6ad865", - "address": "lax13xdc77rhncd8ztys8dva684cd85dku2d0cznzm" - }, - { - "private_key": "137d94ac034bef97a7f3b5915ed66f21c9cc773c765aa6d420818805cb28cc11", - "address": "lax1lh78czdvs0wwd6uh57dm666z0nlmv97dsxe2dz" - }, - { - "private_key": "9473396d31b388b0e836b15d6b3c04e839e50474ea8f13fef097a90b0fd193de", - "address": "lax14czmv60ymyng0evathay86mfrktg6y3x0qymmn" - }, - { - "private_key": "387d23abaa9698bfe82d7cfff3a0f6f40d2f786fee57733f7489a4eae78bd1d0", - "address": "lax1wn7yw0ngwhsfhufz5kzjlvhv7n8dlv8x89s22z" - }, - { - "private_key": "c2cf7439aa85c1df37d040b05c8888f9abb5577d399df61c677b74397150387e", - "address": "lax1r2yuql24jlwml06l594tazneth6v5n4ax3zzg8" - }, - { - "private_key": "4f72562f6871663273dbce597d401121355139244a45f7294512b6d8d9d48dfb", - "address": "lax1d2znk4slu9srnlkz6ew87qvfvjaexekew0ql4m" - }, - { - "private_key": "42609da562170bce288882ba1366c6b8149be6f4a89a1f44bddbadb0ffc5390d", - "address": "lax1grtfy54grlgskvezthulglul583xjtvgv9m62l" - }, - { - "private_key": "3c9b2729a34d771b84f01f02a443aa72b048027c93b632c7b6e69fdd11cd9dfb", - "address": "lax1e685nvp6eqye7e5ralykpgmgjaxufe730zyh0s" - }, - { - "private_key": "7f7788a1d82a984592d23f50eb673c5a9897c178e5baa5e3e987439d16501d2e", - "address": "lax1m7sa32fwtxak78wv0ku5sq09ww93mygqdpg5yq" - }, - { - "private_key": "468257eb75f317c88adfb239562b55690dda0e645f3a69c9da9588d9cca557e3", - "address": "lax1napmrjmruc4x4mxc6n0z9ksyygs7wqfwn9we8f" - }, - { - "private_key": "2e7d57a48bf92fcb7c1e2900206eba0b7de6884446ad450c96f3aaf585da36a9", - "address": "lax1cwqpvm9lszzny64mhwl8m7m37p2yywhth4dy6m" - }, - { - "private_key": "dd076c1fec0d3ac0cee62ac9f84f9f4ac04728d1b8c00d30d0a79af4ce4e09b7", - "address": "lax1l88uuvl0yn9d6npx7gquthtgamfaarvc7jp6jv" - }, - { - "private_key": "886fb91d0403a4cf4e25564b1ad8c6b1c26bfa77f53127c05d620ff43fdddbc4", - "address": "lax1rffzmapclcnn0ye9umdultny4zn7vj0lwcfh5u" - }, - { - "private_key": "703c988a78ad8880b7ba913e5073aec475e2f15e84f56c56183491720413a1a0", - "address": "lax1ymg785mel7qy8r4hgaujrsjplvtu92nx24pt36" - }, - { - "private_key": "582d6c8d1d78dff4a5f577770849754e89860b72b4dccd2d2be87053c2ab616c", - "address": "lax1k0cvywl2atvykp9t5n2nx9uwvky9p07udrl55p" - }, - { - "private_key": "919a51d3d7c101a1393e9f49322363e89194aeae154f0fe80335c8249e74c2c5", - "address": "lax1laqvqd7fye24d69fgkee6fs00rc2m6cj6ne3q4" - }, - { - "private_key": "24a5eb8b1bc50449ae3bd16efd9d9a1be0be6b013f7103a3aef3e17046521913", - "address": "lax1jeggtq3f4ufx78mgst099y69h7h6h92u0tgej0" - }, - { - "private_key": "caa2b7be7528235c1ed4087f916e3e221372d799ed3e0c46e5eb7e831235f562", - "address": "lax1twydjhutrfd95u0lfqpazl3x0ul9revy7gr05j" - }, - { - "private_key": "903d45790dbd290b0c2f05cb993c2a1f89d97fa721dba2d76ebc6bcb4a397629", - "address": "lax1305ppse03q0t68djea6pt9tpsf5rj4yqw7d68m" - }, - { - "private_key": "245c022dca0c10ae2b6dff0954160185985d34b9db74505d6c69741a6fee45ff", - "address": "lax1ndquhtn2rkj49z8yp68sqrhfw249rggmvch3ph" - }, - { - "private_key": "8b2bcbee829968a785b37162ad0ff0736bc0dfcecf909784f12aeb93032d4326", - "address": "lax18j54ew63vv3wwjequ6p6k9s2t9pa6xt8cm0gnf" - }, - { - "private_key": "c7e59b2dbbc6a811937925e2dbeceb57835f07fff72ec1936cfa7e90c3fff017", - "address": "lax1ezwcl8e6xjdzlzs0uqtw53nhjm4f7xpfavkmc2" - }, - { - "private_key": "73aaf8f82be70bd607283306f476b8e6559adf9692e021c31baff59c1c9fae02", - "address": "lax1n3cdgrjk462vq3gymx8sp03f98ykfcq2fy3jvd" - }, - { - "private_key": "f84223d1fe0506509bf75f923280826eaffca2c47b607dea64928c7b7a067fd4", - "address": "lax1nxu57q45029ugs0p0pem3d8puv6xyswnmkxvk9" - }, - { - "private_key": "2c44edea9402349a5aac33a5e38d91b24671a030b2d11220a0cc98d188f92279", - "address": "lax1y89sdkymklq8y7wggma5wkl3qed4x5ufskd2un" - }, - { - "private_key": "f267eb7109cc1d91cc05d92ad145aa060e5ec6e42a74dc68f2aff754bd3c1f91", - "address": "lax1vp0kfyu8dzn8yqt6nt8gnjfwyph08naskfnf7r" - }, - { - "private_key": "44aced0e33b120a4936c7f46b0ea1c102d1d5042afa65d45e2ebea49b56a5b1a", - "address": "lax192fn3mvhdu245l0q9wcjk4h9y2d43smgu08z8m" - }, - { - "private_key": "36b3afd7bfa23a49ddffa4d3adc10727880aabb0d8acbff68449cd3aba53bfc6", - "address": "lax1vnd8ejlfrt5xfrgpr5lt7vp3tm323ppzrf3sjd" - }, - { - "private_key": "d2972ccf6ea57578c021312f71bd4c45b1a1f557ec5b1484fe07aac687d4ca95", - "address": "lax1upy74q8sw75c52u37g6ceczz8sgt0swff7pff9" - }, - { - "private_key": "d441432edb103a8e7be7ae2d5a6bfb8451e3ecd7ffe840839bd267ae407a7f5b", - "address": "lax1scl52tgtj4lqrm85yjmsuq2ey857jwjjnuv250" - }, - { - "private_key": "529ac56db5bf9d2a6a69d62f6569dbaa80dd76151fabfd0dc92d70edfb1f41b6", - "address": "lax1c33kyww4ehpa6kujw24cttrlt8h69a8gww7xxs" - }, - { - "private_key": "0114310b107f7dfc370c58dfa315d4898b150fb5aa2d5d6dac3a48bb43ec9fe7", - "address": "lax1tlf77v4m9q00tr37aggnhd45g6566uvzfd7rt7" - }, - { - "private_key": "11610a7cc5bda25ebf8e78a48dece047822e2204f2a34766304644a63a4533d4", - "address": "lax12pwzekjx578dtqars5k6we94r4ahzk5l8dvu74" - }, - { - "private_key": "4d589cd2ffd6de3dbf6d43f17f4e131d3467fdfa64f2060b69dce5abfb5a3ed0", - "address": "lax1wgk4lwl7529rupl3j0wueemvg8lu9fsr53gv5x" - }, - { - "private_key": "c6e7b6997f02b703039865492955bafec3275cdb140306be677f0d4b01269bfb", - "address": "lax12hqleqlrmpjnhrz8fjg0xxwxtnngsgyp8yvrcw" - }, - { - "private_key": "650d31582967901215ea36d9237cd5bce3d09b73c82d50c43085179ef6b9e4ac", - "address": "lax1jljwrl2zxaqdlfr7kskguvzzxm6kzpeedmw7vq" - }, - { - "private_key": "ad2014b8927da6a1012ac5722087dba9bf4f25a0948b40c956df2ffbcea6bbdb", - "address": "lax1lex24kw3v7mu7mfu8hum3v2g9qvlmtzr3nawcf" - }, - { - "private_key": "3c503b0f657ca065b2bdd51fa2fa99f74f065b5138a5144e58218c50347c633c", - "address": "lax1q9s6p6uffq9gfj6tmkk7rv65zuga4j27ntml40" - }, - { - "private_key": "4fad221400ed12af9b2c80b7feeea1742256248e2fee1a4146ece9ac03496dfc", - "address": "lax1dx7v9qppkxa3a66qfmnyrlxk5u6e8g2rzakp2r" - }, - { - "private_key": "bf92de4497ea09f68ccbbd620164c7827c6deca23cd9ca7e263be66f2224797e", - "address": "lax1g7cskae39fexw2k6377h5ag2vse6y40zg8vn93" - }, - { - "private_key": "a379a9a4902aeedd6156d9500076cc279ff1b5f94cfe63f5f83096cc574c0792", - "address": "lax120huy832fkk60dl8x8tl5fl4s6fteexlr9qypl" - }, - { - "private_key": "b8e215a8275fbe6f0e9e4049d28d3063337d24d7a3d5f417701a0ab54f0c9ac1", - "address": "lax1v6lkcjzy2604ncql3mqtnyvmgceatdh6ntn6du" - }, - { - "private_key": "a7906109a8b1b34adb1748228d8a572e618ad56d8f8c5abb2ccfc41cdb8e3edd", - "address": "lax1al7tdmj7z7tufwyhuhu5u25lp94pxcntwhx7mt" - }, - { - "private_key": "96bc02a60d6050d8c32a63725c1286c92fb9c97f3d43efd4142e9c0041e9f7e5", - "address": "lax1g9ky2m49m2g26rqqrp595phhtaugqg220xka2q" - }, - { - "private_key": "4b7ffc0a291f244c1d46827f7d8aba4751b572025aa40f132ed94e245b989ebb", - "address": "lax15zlf6c79xk04a4usaqnkz27hx66gzcl4zwny8z" - }, - { - "private_key": "7e3ddacc11dd6332bffb0218f2b707e62fe543d55b84f4cbb7719361915e9361", - "address": "lax14244emdxvxpwedta06d4qk5sexcmuekq7ru8we" - }, - { - "private_key": "4a36ded4d603c144ee77f80b9dc492f094290441e542dadd9b60e4e07f37c040", - "address": "lax1ul7mqy52evmhqpwnn5p3ewh7un2h2we6guzy4c" - }, - { - "private_key": "35e690e769974eb39c48c85e32de54c2cc394a83bb976b34e674018c2c5d1954", - "address": "lax1w993klc8h9nuegq2avyahqysvd7077ykuc0cfj" - }, - { - "private_key": "f5e076240e46f52c5d9c38b62f222b9e2a33f957c9930950fd3456d2c162deaa", - "address": "lax1sd97tfwl2r4mnll366hl5hrmc3u9vx9en3n90x" - }, - { - "private_key": "0dbf2fccf8c9df923a45bd981d97e2b00ed122fa0f0fd581e15421658a5da520", - "address": "lax1eaay5fzkr20tg8ve55vpvn8f4yguccgj460dj3" - }, - { - "private_key": "e56006f8325ad6e951ba01ef9776ff9d615f9c74cbe01360912fa3e6a8abe57c", - "address": "lax1h4f4dkwfuauwcml2j5qazejgrmasw6gvcjw7ek" - }, - { - "private_key": "258a9493eab06afd02973497fe7d06438347c33cb31ede9b2224278dbc64330a", - "address": "lax1rqna7wasltpsdsq44qvnhhvfrdxnj00krvfakq" - }, - { - "private_key": "e7b08d05c29ef811a47039d3d1d25974cd5eb76c5c89dd7600257a5b2296ac55", - "address": "lax1zn366mvm3psghs73d5v2xd0e9x42zraaqtpypp" - }, - { - "private_key": "16f38c04551ff6224548913e49218573996306fba690dd4ac135e5413bbac1fd", - "address": "lax13rdh8p7vlnw7ng3zugryumeqsgw0zr79jumvgh" - }, - { - "private_key": "ea3a055812d0cb5550902894a305745d93ee6f33c839f3eb51149dc7711a4663", - "address": "lax17edp76qjymglr7e2jvqacge38qss4vtc95u2me" - }, - { - "private_key": "76c0df9119b7d30dc2b5f2b3a0220a8c013a0afcf152a6efaa4db97609c454d9", - "address": "lax1u5j0wmka4a0qg0x74ps0x9pym7ystszum7sd6u" - }, - { - "private_key": "db0be678e9ea755c54e0fb178e31544b9867d7716d5f7a1512ee03fb1fd61dec", - "address": "lax1hlmrqje2yn078mastv6rlc36uf3y353rpxw5eh" - }, - { - "private_key": "7a4e97d5fdb397e468f1178bd1d47a65cf351fa0c3f238bb304bf9475c31dd68", - "address": "lax1ztgsv08vy07y7kt2dc757syjtj0tucvn49need" - }, - { - "private_key": "2069714a662dc6b7bcc8bdeb1925ba63fd7a59c89c915be93a99de2493c7d9d3", - "address": "lax1v009gyqvtmgpzc2e082pf86x8j89thdlxt3zkj" - }, - { - "private_key": "43f44aa074cc2ced733054be22a9a932e4f1631986750bb232783494703c9f60", - "address": "lax1gs6jdquatmsmql98xsqrkusugsjka0pksrct4s" - }, - { - "private_key": "a64d7f4e54019341d3f27eb48b29755dab34ac86830903f5a8cc9791964a12e2", - "address": "lax1zplctwsyd0r3rl2cqe7q99z4sq2a0jh4qewhna" - }, - { - "private_key": "6097ac6a486315d57c5f9c6e00c886b3c5205f65865ab2152ea4f927ae70be53", - "address": "lax1xphmacqf6xkfva9shm55ptn0zrcgg3a5hgr579" - }, - { - "private_key": "a9c0e16cba902c97dd3b162971b66eb1d77027d2930e150999120fe76f4599c5", - "address": "lax1ufvpulryrc6wc2r2f2vp7lrltknwdem7mvysdr" - }, - { - "private_key": "0a333a54e00553275d6d23f95c09b8406e3497c72a7dcbbc49465535b74c131a", - "address": "lax16jp7wptu3n27t82uz5rq8qh3sn78ycsakupguu" - }, - { - "private_key": "259b5ddb8b0dc54b774e181c7ef3bda5691387a52755eb760a535e5288ddf157", - "address": "lax13d3n2cw0myjw9y5jy2dtxwezglvg9fsejy9fks" - }, - { - "private_key": "0f94e47cdd00df8a2cd1eed4483f839ecdb0acbb810dd98aefa0e7fe951c8d02", - "address": "lax17vv33hadwdnf2nrkdnxl5jnhc3vvn08guk9n60" - }, - { - "private_key": "9d6f2139d2f6c3b4542579b6db2c2c5fcfd025f53339337b229e02b72b4c06ba", - "address": "lax1d6g2m5r3vm9agd5l77csw0t4r6e9kkrwg6j4ew" - }, - { - "private_key": "de7b579248e5005577447275851e761685802fb42a52f2e47ffa13a4d5bbe748", - "address": "lax15zyer2jwaq6a6s273ar0xwhdp3887wf92a7r7f" - }, - { - "private_key": "24449fb9cfdca413e697451fdd8ae4da52ae4e51d256d7f84dd7b2717ce9e222", - "address": "lax13szu6r03rn6v6tg4x8z3zzma3h3n3l50h97p8e" - }, - { - "private_key": "3fbbf13a3ce750bbcee5c9e266e1355a72eac7fc76d11090c6f7c7d1217ca34f", - "address": "lax1yasceshkvv6pgux5c7t0qj8zua08e40gucw88c" - }, - { - "private_key": "77affcb3212355ceeaf5bbafce784a99c661fcade5e93c972037a9a737c9d665", - "address": "lax1wtz7grhpaunkgwdyefrgh7cvs5v0h3nug6urvq" - }, - { - "private_key": "a8754b8e38ddb306fe8845fdf1cf6acac5e96f5c8134c3d2af9b7c2f92dcfb87", - "address": "lax1flcau33f8e7vamsyxau73hjtmll8wxgw006gec" - }, - { - "private_key": "1b81bb4014b05661866fe68ed362a3eb00f65171e318ba5e40d50003bacd12e1", - "address": "lax1qk4247enz9ymj6r79a3qjrrmn64hmsyz8va0kn" - }, - { - "private_key": "b5630203435572c31186669a03b24ec1c3c23d3d685ab91754f3008949bac9a6", - "address": "lax1jmxdmkss9ztx6t4sczxfnhjh9tt3qsnfgmhw3j" - }, - { - "private_key": "f1243a064630614ab23063e6c370b8c1b78bbd57e53b8b7e58cde2a69c467909", - "address": "lax13ftfluy6f5v2wyn2dd82e4vmn6zu8usdesz624" - }, - { - "private_key": "fc52e5186f3f5e5117916f96cf17c78e6211fbf116c9048b8a9b147b7fa54fa0", - "address": "lax1z5uqh6sya0rkslqm38gtc7fe90h0jr9skywphy" - }, - { - "private_key": "eb2a2fa9172abcd0c7542fc5387343913e52f8853ed02cfb51c84f88c90fa464", - "address": "lax1se8ympxkdagmdxv4kz3panqd4q2ex3drxv9j2a" - }, - { - "private_key": "4cdabf11db24cfe551ca5a9b3e5e9d120643b27f961ed9064d11e5256d45826e", - "address": "lax1g2nvjk85r0sal2w525mlqh2rw7h749khj2004g" - }, - { - "private_key": "6abc1b28223588d659d088221d1db14405c7df5e15965a4083a5a4187d4e4571", - "address": "lax1cqwkzq92clv8dw0h6n0d4vt26xyc2t0a7qtan2" - }, - { - "private_key": "05a55ba12f0c40981b13a57f7c458c999ff5ec5b1faeeda73057674e28da1035", - "address": "lax1wuw9eh25w5uzqqckzrh2dujme3u3cv8uvwunal" - }, - { - "private_key": "22429d5dddcf4a4d20fe23ccb34e79d912f3f402ea54f9a521e2b8ff93a94d20", - "address": "lax1l0dmlp8nymrc3duxmsn893llezg6rjfzgxa7l2" - }, - { - "private_key": "5d3623a1465fee2a6d73f2e70090405d257c391164f332229fe8896661303f84", - "address": "lax1d9uc0qt65529h9m557re35l5mepqnl8neyp0ts" - }, - { - "private_key": "7db0fe70c04899c45c67e86afdaef541bf3b5bab5399c1db67d487221efb175c", - "address": "lax14ul5k77a643c6vj7f92m5frzpptsxggctnw7lc" - }, - { - "private_key": "7db88bc2667d748d9e63d15d846e024f38485c66487b3203be66387ee14ca777", - "address": "lax1g6jw5gqn78gt25nukjrmnjtqrleqzks9lkfcse" - }, - { - "private_key": "67cb5840346d332fff9da3bde8eb696b3d2ecd5616983508b8387dc1ee7083aa", - "address": "lax1jx2446mauv8v46x76kh40zw50s9jrm0jnzqcry" - }, - { - "private_key": "659d3d9eed4353b6c1ef82532746cb0f45a36789531fc8f30051db11923f120d", - "address": "lax16jc94yq3glj49kp4jg2055aehugcr835ex0zmc" - }, - { - "private_key": "20a3abf92e197e6f66da8406690cc745f455b831a612d8af498c724e878771ed", - "address": "lax1c02zyaahq09x7txmqyc3xj2m944urrv0nltvxr" - }, - { - "private_key": "dc4b5e4da479cedea86a3951c3e979d37cf648b0d494a19a20a67133083dcc6b", - "address": "lax124e0dm3r8nka055s53409uz9ga36rrqcytjes7" - }, - { - "private_key": "b8bd885fb62b3ad72068231c637ba12753d4e5c5c92699447f39bb5368687fa0", - "address": "lax1sagzqcvvs477lck3e4us8p2r6jsrjrckuu3jz7" - }, - { - "private_key": "ff34be3483c252efae954b813cd9ae777171886df4b00577580ee8a135e4e739", - "address": "lax1atc9j7fpjk46yyg6kc4xg0zjk7ju2v6ua52rl8" - }, - { - "private_key": "177d45c01a54cf8b9ff7a1c0fce5eb334a017305bf1eadbba5d0149c10a8c6ce", - "address": "lax1067puz5j84yssphavamvddws8n6qttgww8sjuk" - }, - { - "private_key": "06d8b183a1263331d241809f8a79eaed9bd0027a50cb42cb6f7b85cc27cc6261", - "address": "lax1pqu249t8m4ws9mpjkf7fm04mw5yjhzv69yyyuc" - }, - { - "private_key": "848847ba32fc5be6699fcf1acfb8e80972e3aa8038abab38e346450865729185", - "address": "lax1snqjj4l096cewy86xvcddums9v898f65tcpuv8" - }, - { - "private_key": "385008ee1be70d855373ff5b660995666b0678018c5eea6ac1e2a6453870d84d", - "address": "lax1eqqjhwuxwpffm3p7quj2yscm63tgjqzay4j0lz" - }, - { - "private_key": "2d27f1be4255462fed34edea411c8374b6f13d3d16d66200b8bef3d06b50299a", - "address": "lax1xhkx58nsnwczv66t5440dvhqfl8ysqdw6azx4c" - }, - { - "private_key": "363671c0ba31f6525dd37d91fc0bce4f86b4210e22b22d61bbc5e4be994f325e", - "address": "lax1v2p77phw7rcxeq902u7gysceae5s4hq8ytzlkn" - }, - { - "private_key": "9c44b0c254825da84f542d2fb9a9b505be40a5a9ccbcc94c1c045ec2cbaa1158", - "address": "lax1rk4ulrxvwk4glvdk0zg5cqh25f756avu4yry6c" - }, - { - "private_key": "3321a10456388eeadd2def519fefe81f8979eda933a5578f4ec806ccd3c58747", - "address": "lax1s3ymf7xczyjlcdrlxxtfyqla8hvs2pf5dhf9t2" - }, - { - "private_key": "ea0e3fd86a0fe7375e9e4a1a72908e23b49e4bdd5b939c6641e1f8c69fa8a80b", - "address": "lax1x9uqkhn2sy280auft68yzygutaudqfdjslk6jm" - }, - { - "private_key": "6f8ae07513f677933df9ea26370cfda5ca3719a7d35ab3f0b416b4f78f8c186c", - "address": "lax1ysrzenlzcvmzrxhtjrk0wwtc7nra63w5xzxm7a" - }, - { - "private_key": "db4b5cf24459cc429c6eb952124a5691d6b0db5d022e1f8e953268fa28342801", - "address": "lax1k6qjduv40mkharzku3zvmhlz2gpkdckzw996kw" - }, - { - "private_key": "3acf44d500a4c13106432d24ac1130ef2c3edcf42d2c79ee643628e3af00e204", - "address": "lax1t69yq5sh72j32e7sscalex4t5sngtxjz3lhuth" - }, - { - "private_key": "aa77a53ab6dff85659e67d3dea00be3eedd7767f5367e08f2e2e886810dc2da4", - "address": "lax174duswu5j2f53dm89exuj8cfzjpfcwd5drtjaa" - }, - { - "private_key": "ee78ff1785ddbc20bab11dfbadb51fb3fe22b325cb414a01b947d85dfbad4372", - "address": "lax16qmxu8gttytv97qsdjus3fct785z96nm9mfm5f" - }, - { - "private_key": "f6c08d0d384eaeca89ff50b16ffb088e2f56ceef9c20183522ea5b256232a7a8", - "address": "lax1svdl2dm2lflwxfkvmzhpc6mng93qdagscf6cme" - }, - { - "private_key": "7ab1567facbf45b4f068aa830540723e3fff9669b4d56f9676a5c071b529397b", - "address": "lax1ysw3phntwrrujxzva7rreraltacffaesf68j03" - }, - { - "private_key": "629aa1f49e6ca83209e65e878cd467d9c12702b45d8dd00c94910e2e1ff95455", - "address": "lax1u5lftxx69z22wu4yvsqwt9qnm5sf3hv7k9gw0p" - }, - { - "private_key": "d4857319c752230a7c9cb59ea9d36e8431d2176daf1c2ad358d2528c54249e05", - "address": "lax1nck4capmlg8wxr8dvx2ak732cjhjd8rwfsdfqh" - }, - { - "private_key": "539ff9cf35e0d8bf126dfe2536bf3a399b1949c2a2dd39b96c974f33efdbed73", - "address": "lax1uxed3zu0msr3krpgn9d43m2lkwx6lgdeaxg62s" - }, - { - "private_key": "b3d33a10b8663eb8778a77f949408daf370d8267eb62e8eab7383a1cf4d9c1f6", - "address": "lax1l96fj3yucdyq09a9wfy4eyfw6vte4pctn4zl7s" - }, - { - "private_key": "d47ff8523694492d699f948236316a97bf94d42ced61c06cb57782809279f7d0", - "address": "lax13053359p7hvgjkwpuyx9dzxf3k3lgshfva8stx" - }, - { - "private_key": "c3003a3c549c1c7c8777f004ed9ce0cfc9bbb5d0814e5c261447d77bb19c6a68", - "address": "lax15rldhmvkuumsrkl27xfunu3xantgee7jktqv7x" - }, - { - "private_key": "5f7dbfb5c8ecce2666fe5eac7a53e61fe6031024a258efea00672f30c7c6cfe3", - "address": "lax1l0t7jdn4j336fx0pdctpv3c7plkr70f7cfkhdr" - }, - { - "private_key": "3153ee354db65473d9e199f957e6cf242dde881cbc9fb3921b700388844848a3", - "address": "lax1hrmcnsjy7ya4gm4z4eqfpsrtmrglcjqx6jkezt" - }, - { - "private_key": "e6140130abfea536c0a92426cc320ece3c61a40cfb507a50e9f3752f7392135b", - "address": "lax1q48tuf0ua4cpachagwk3r2pp3vxtl36z9pjm00" - }, - { - "private_key": "98460eeab28a0333d67edc1142e9e643dcd532ea55bcf8a5c96fa35829f0fb38", - "address": "lax1usrsdsdct5qfsy2v6mvlc4eg4lzcglydm4kkew" - }, - { - "private_key": "75e515ed5142cf3f79b41c513882ae4e832c3a3ef981e29b89e4c74cf04ecd51", - "address": "lax1qdpn2eafpv7jw2g2awcv6dmdycqx37qm0dju9x" - }, - { - "private_key": "f616127eaa99422de3b139fbf8e72ba9a07830c02fb33e4c32e686099ff5e3f6", - "address": "lax1exvf3cdjj5wq07scghxxxn7h64qmzhq7epafpd" - }, - { - "private_key": "704874899ffc628e224e825cd5c2137f3f6b47a49729989905d8bee62cfca999", - "address": "lax1excx2erpjm2cs6kg52699avlsz229y3wvu46q3" - }, - { - "private_key": "07f400e26e02cd9befce873a5b261ffe1c041a0f7340e307634299cf8be37c52", - "address": "lax1p7802ygna4ygptyysxujqlclswpzh7lrjv2wk5" - }, - { - "private_key": "b70573038393d3de4d46523a310a1ec6395e84bb033c01e60ffbcc792d9a41ef", - "address": "lax1le5ee6gw6n3q357md2ve8dm7w8mw2wsx933alk" - }, - { - "private_key": "99b6466e535f27e07a8e9825913fcafde06b1b8b4c9fc60f40ef58b17d4c3a85", - "address": "lax1g296znmt9z4n8u6866yrl42v3wgrskt3svdj3y" - }, - { - "private_key": "8cd6091d2143137c659ff5c165eb460b11f5568d907584f54822b0c04dba1bff", - "address": "lax15fp3a9pthghp6k0dstp0ld9rwz52gqt25ed375" - }, - { - "private_key": "eb7203562ea2ed7b4234dfa9d8c726a483b2bdc9f3816a43a624cbc35f6e78e2", - "address": "lax1st0fz4mn7c8zzz9y9ar9dzzaehsvfeaz6pmgpe" - }, - { - "private_key": "af8e33c8264fd581ae35709b1b861f5561b17496f8f71013dec7142a0a25f3f9", - "address": "lax18mjf50uc260jhr2nxr5gu28eknfvc2z6xnvtyh" - }, - { - "private_key": "1b9674b2fc687d16a44bc9d1344cfa3d15185381ef6edab403e9aeacc209dc2f", - "address": "lax1nvryeyxvzfjdaj5a44lzua638y0j24n8x58def" - }, - { - "private_key": "170b51564d58926348ebb0d6621695cba5c4da22a7942e471f48fa85befe9271", - "address": "lax1r7gt7yp87mcc4lrzwplnlqr4rzxmmmqnzjfrc0" - }, - { - "private_key": "a4efb40d2b365336adcfbd3c91ef59abc02636cb2ee236f916ad5c477a31ec60", - "address": "lax1cu6fxm3wwpp4vm6m7wqtg4j8rq3pj68hnqmluv" - }, - { - "private_key": "ce13d758ea85f03c701d9c0f18465d42a520a2c10cc308655e4230be36d4f62b", - "address": "lax1sg3v5ms5vgenzsuk9z2cehh5ef3asfskamycfw" - }, - { - "private_key": "1f1be53bc5ed3f46afc55ee4ff7448aa7c4d4fe6fb0a2392aececaf363469209", - "address": "lax1d3qds0vwnwcehfd008hkp3xd9v7p4danmvys0k" - }, - { - "private_key": "830d3326f77f898bc2a0fa2d6954b6759119b031f81f4149dbc8c8f11ab4bd61", - "address": "lax1pkfqwqf99776nrj7vqyl7h9h08hqgw7pjlmyur" - }, - { - "private_key": "64f750e4717dd43049b3e3f678e786a60f27f86bdca7a5e556f7329a87bd2995", - "address": "lax1lmw3x7tzy27ttx5g75z5axy2vsmu9cnptwztve" - }, - { - "private_key": "69254eaf923aea8c62bd0a715f5d5896ab715f12c47c06f2ae64cf5ca74ce8cf", - "address": "lax1ha767d8e6e7c264zd5nywudks3smda0l7jyjd3" - }, - { - "private_key": "125f6c7f13f3195151017da033227a7f669f25c159869bde7d48c176ccaf0823", - "address": "lax1v36fkc3zc440enxvf5cqr6ktcxqmaun3knm7gj" - }, - { - "private_key": "f036ba62e0c266d678728b86fd0b0e414d777ba278d97decd31e99d39fe0dff5", - "address": "lax1z66nmyvsc63sfe5hcdn3yey55ratynggjk0yv3" - }, - { - "private_key": "a5d3328ed1674e315261ccd6c649c7ee1a74be32c40be7d3199173c4258c7bed", - "address": "lax10qkt36dnj95pky7kt3vf6747r2rrkl3qw6utky" - }, - { - "private_key": "0b486e229c7d30faabd4175d9135899f35f4a9333825c8b98d30c8cfed7d9d62", - "address": "lax12lpj6jvns3uz8s43cek5ayxl4054lxcaqv8un2" - }, - { - "private_key": "173e48fc53579220c4329bbb873f23f024544bf5f8eb9c74804c99dfc8717243", - "address": "lax18t8vqa69sre4vz3epsyt6frmzvrphkkh26xr2k" - }, - { - "private_key": "6e8993ebb385f11fd95eb6baa5a363030a334afe3fa0679a82e783bdf00d2bda", - "address": "lax13av2c6nd97tn9lfughwyamgwane08jz3veta2g" - }, - { - "private_key": "96a2a113db2c842e5f861b83811f7346102ade3884e81491940a3089cb8dca05", - "address": "lax1vf8umx5m7wvtrlqarkc6t377mdtw369gkrz9ch" - }, - { - "private_key": "4f87e2741603947501042603a3cccb851cf776a5eb51ad098123c8ee28cd673e", - "address": "lax136zc5qmexxarkavma9q5zp0v5a6m38nhpdu9j6" - }, - { - "private_key": "ef335d71048abfd8deee5edad89db47a9d6caaeba28b3cec4114a6d04f0da8c6", - "address": "lax14whxqpqstgk077gpr888lfk2vr9ntypmdh63hf" - }, - { - "private_key": "46560c91db5c3d6ddce35940f0ce35d97bcbb026b18cf3ef88e61cd960c8e98b", - "address": "lax1hjcmkgj0m6atuw0ue8rx34jrkuxum6wddlwjat" - }, - { - "private_key": "238bed310e0dd16cfb3417d8b03c2c3e59c032d6b957b0a6e4f17917ef3f45eb", - "address": "lax17cwu87q7ndq62jyvyn34e5pnn0w8q3pg2s6ws0" - }, - { - "private_key": "f70d56d0acff150e37576871a4a58688765e21d4ff0ff22eec94e22e3e627ad4", - "address": "lax1pxegs5awxclp49f23sh5v6gp6dqh3e4zsqrhkp" - }, - { - "private_key": "21adbc85634236f24ec24a47db4cb0d77a60577ee93eaa08cd00fae343c6c164", - "address": "lax1hlpzmue79qhvxvcgym7zn0zxuax59pcgpysxt2" - }, - { - "private_key": "568e101b07a366821d34c186cdbab6d63762ee065d08adb0de0f75bc969e6d0d", - "address": "lax1qyk49ctuk52xsu76slegf20xgp5atalt4rpnqx" - }, - { - "private_key": "154d874905d1ad98c7e618938a853555b310e3cfc8f37d137deb0fe1d97f5bd4", - "address": "lax1d45wm0cj5xul3nnsmp9vl76elegvexe7acletc" - }, - { - "private_key": "3604f6a3ed392f98cf4733d9bd0fdcd6788d1fae7657c28dbd0c8af5cd85b58b", - "address": "lax1tevk752rx9efxc3gv9aly7k2gzd4rw50xggqqd" - }, - { - "private_key": "a84d71e066512a1b27d95bb6eb5d5b43f55058074082e92ad5bf292b9eeb2667", - "address": "lax1dzqq8vd0dzjar2ah9xptf0lqs83fz7mp8s8c05" - }, - { - "private_key": "0d7cfab437f7d9cf830b2c3a6549721d4fada8af6b9649b34f7c042fda845eb2", - "address": "lax1kqf4aanegj3ggg93et44nh3y3kwhj4cmje7cx0" - }, - { - "private_key": "f20466c946a0af4273af487bf39d10d6c2a5f397686d98d5c5c6b0b27d4ff65a", - "address": "lax1677rqt3evq77n75tw8yyt53fmy2jq5ct0c6tqy" - }, - { - "private_key": "e85075d4b11b2cfb270a1bd7cfa46060d23f71a8304a79c892b620a1f81a3160", - "address": "lax1hcjm5zu77xehjal2epx3d28g3mugg4qyq4jczn" - }, - { - "private_key": "5752e89a6515208de02d32853979ae2480c8879cac04b8c47be63957b8830f2f", - "address": "lax1mc7a76nz02jjas2mg62hjyy25enzw0vay6ck7a" - }, - { - "private_key": "95dd6aa10443fdc7139a30e53e2508dab5d12b97e3ef02ee4c6d16800a94ef93", - "address": "lax1auzud8j250v8frpn5a5lr77g0a732l0un6740e" - }, - { - "private_key": "2514b9c7a88c9b7f4123a45d9abebcf1686b52eefc84551b823860e3dd20ac0b", - "address": "lax1t60cyfnwagnysmu573au5u3ry3zllykg4qylnf" - }, - { - "private_key": "a6b794f9e6203946f53bd310261438f4664e8fb3a24534cafefdf6f47ed9dbe3", - "address": "lax1nsd0mq2nfvhpzfzzky3t80kvmla8nep9j0pqzs" - }, - { - "private_key": "3a839b0bcfba466333c75266c681413906fc780deda6ce4758c3d2e93f5e8830", - "address": "lax1dw5dlhr0k6jeje3vfze2lk5egwn5pggcsued6h" - }, - { - "private_key": "c4a9c3a78e04588e3fe88e5a06552190658469150ccc9949da1a7918b648388f", - "address": "lax1ccy2nm92tausguus2zl6mp26u5p2r34g8la8xa" - }, - { - "private_key": "7de08e1c4f59f773014bcf1381ea2f252ee8ff62309c7c685a18ba92e3f8cb80", - "address": "lax1t03c57z7kfduuhznempth934utjf8sllz9zl07" - }, - { - "private_key": "2468b9b944ba92a89a0102e1753992ebaec9c38be3139889706031098fec929c", - "address": "lax1uh46qunem8exsuzdhell3nt9hzthwj7ye5xfpz" - }, - { - "private_key": "53d23c2eb3e9a8298b644dc96e48ec2167473eada5068ff215d02b63c6f00bdb", - "address": "lax1gc3e04cd68pqynmvdpvszcyasgjaajapvh8kl2" - }, - { - "private_key": "753a269b206ee1d0f8fb090acb72fab9f278e88f6a218879e07ae61ae15d5ff7", - "address": "lax16m6pfwt0gjca83fw4ymtx8xfyfdwfuylylfzyl" - }, - { - "private_key": "82cb2f3827254840836e66a5aed844e3ef431af6e96e459d177570b29a0e029e", - "address": "lax1kavtk58qagasc6qq87qulcwrwz3sf87f23uf6f" - }, - { - "private_key": "a4ec94c4811a84493bbc240087d8c02b60317949022c94fcbdb7142b84a7daef", - "address": "lax1wy8q8cyxtw4fe33snnjvvgdakq9030jq8y3acw" - }, - { - "private_key": "5327b9d0fcc00d2f912db65341e21e3512340d4cc0e49cb154003e822e4aa84a", - "address": "lax1adtcr2hm8kwrcthwd0sncr3knvlyt9cspwklqe" - }, - { - "private_key": "c706c2cab4816fef72b75c43b41cc3d1d0daa3fb82696198f31753e5c20ab7e2", - "address": "lax1jdc49k4n2kusyg5anqxggz9vrd7pg6kpjq4500" - }, - { - "private_key": "f96c41c7a72b942f6c1f8b596910efec56af8b519b024a6a5b97757203e6e3ee", - "address": "lax1nvmj0prl5u7g3g3zylcf84q4gdmlle8dlpqt3m" - }, - { - "private_key": "901d1ee0bc188cb5dda61994d096dd319c2d582b6d206c9c4c3b6f1fb747c298", - "address": "lax1ktkhcvjlzyjskmlcsalqfcsdsufvwal4qgmavl" - }, - { - "private_key": "c6bad1ebf5d73ee1638c2c1aa88db42c1c2d13bcd539c7b54e967dc24e7eeb9b", - "address": "lax1ev0xpzt2lnc8tn9kf7dyh5795mcad4e4vawnej" - }, - { - "private_key": "d7ff40a646d29ef27a3507c7ed7b407f924998ccfed94c7fb961d5fcbf0c5bf3", - "address": "lax128s4rd9wec2gsmn2uwzndjuwl7pycpvyx52m49" - }, - { - "private_key": "1db2c8fc06d50f3646233c8937642104a58ff11dc32930439cb2d66b3bec7a41", - "address": "lax154p3g2tqqjcl4msnq6naanvms5ut9v7ump9nu9" - }, - { - "private_key": "f3aa73d5dbe0be092a7edb475dd522f3b84e63a5d0eaae115b80a031571e649a", - "address": "lax1m48psx80een2gx5z9s5gq93v48z3wpmgsvlfcz" - }, - { - "private_key": "5c5687f6cfb47d7c966707bc09968daddc7a14470a88836819a12a2f7ae98a1d", - "address": "lax1suq7y7r99hdx0z8xmrra0cya6wwcvqehukeymx" - }, - { - "private_key": "186ffc89bec2339cd1b53fb93cd5e98d236715a5f4e12216c45207d65d4cd8df", - "address": "lax1utv248v92m5vk2f47uxhjkakh5hxrsvrah0m72" - }, - { - "private_key": "85d03a17d8b877b93c83dc2725305a019dbf6ec2916ff07f6ee4998ca53de56f", - "address": "lax18mw66yn955n8c7d2ka2x30hgvp4c2mm3u3haqs" - }, - { - "private_key": "78d38e81e45bfdb4018f93901baddc5626ece91172c714b1d81549cd3b504a2a", - "address": "lax1u0kkgd5uqyz48a27cl0ltsy83dfs4l3f8mcxs5" - }, - { - "private_key": "fa8c6e3d02a23e20621b505bfd489c5e05b81cc4cc7b84ee3cd34a21f1de2ba7", - "address": "lax1phl5p7vcqqcrzexfs4w6stevfax3qsf4nptnns" - }, - { - "private_key": "af780766a5a679571b5dba36606ed800e67c27455fb31ef09182dc4fb737b522", - "address": "lax1sxghj9065e8m920rsszwfqu7rks73k3jkxpd9j" - }, - { - "private_key": "0d6e7144eff8bed0937da999978eab88681ac6c47fa6f2bc143f88430fee8296", - "address": "lax1cmmlxde7svdmulgl6n2egjkx6avg5zxwkjwj3y" - }, - { - "private_key": "5e8c39d29c481b0f87bdf5b8b7718fe45799f943d8b79d30c9b3027d58613928", - "address": "lax1sevura8fryq73qt6g3f4tk46xl56a27g8ruzap" - }, - { - "private_key": "ec69ef8e4b37a356320734cfbd07a65c449b19db7eccd07b44c535e54c5e57f7", - "address": "lax1fq9hjgufhaemhc4jqewl7uvlyhk3a4cfufnxqc" - }, - { - "private_key": "760a11eeddd965c92ed6216bb729958f60d170c5649d5b37085b7233182388c8", - "address": "lax1fq7x4lx2hsh3zvz5pgf3z7heslr33rek0kn6ll" - }, - { - "private_key": "d86896002673a7afc5426d196c1a451457d6d7c284cfd2089713b686e82bebe5", - "address": "lax108kzsqme7jp2rx5z6n0l7yyseskfxsx5e5ep0r" - }, - { - "private_key": "4f97c2e4ef0022f8fed49067a39e24bd6c4f1a0b671da06a3f1f409d5d2f0125", - "address": "lax1mw7nrnw6sz82d6pyz3vnrdxgcwyf979hjtarty" - }, - { - "private_key": "585660f619f8444c8357f04cf4c107800df96f26c561d7012d323ad524785a62", - "address": "lax15s2xf48cpru80c5lrnn5r247aa3yft8pqlnq5c" - }, - { - "private_key": "e50725f0e32bf64bab9e42eb19eecd09edbddb90a3763d7fa383f1888b855195", - "address": "lax1dg4a7adhlgt5kukn6vus9srddyqudqjyqj86yq" - }, - { - "private_key": "00d44aebebdd93030110b689b254f3abaef3c3a28fd49c36fe03083b3d62fd79", - "address": "lax17mqd4jj8y3jpctrsk4gd4fra9atkpq96lscznc" - }, - { - "private_key": "981ebb57067df5d45bc99a62c7732794c08eb68e7cf869979b78460c4e90003e", - "address": "lax17t70mhwjcjfrl7wus6yyhah23x7xpe8jdx77h0" - }, - { - "private_key": "79ea8191c6d81c552b349ba3c2e6c7a9f16210dcaed97eb3114d60371dc4f6e5", - "address": "lax1lrxgua22leh72kq64zex8ectq8vug5n87aggwh" - }, - { - "private_key": "29f1b57576d7255ed8f093ed9d21136ae2421976d08fd92cf200234ea56b5d75", - "address": "lax1kfa7mvdz3xmgcl35ma77ay43regdnljtp5fygf" - }, - { - "private_key": "8c02548495580e672a053e139b223c10bc2ebcd4b24e3ce20fa37a93275afeae", - "address": "lax1mm5ea8yc9ea22t7adqcfpqt9vgl8w6hysnkg9u" - }, - { - "private_key": "8b24d87728d87220195bd412de788a510724c6e429640ea78f603cb6edc06a06", - "address": "lax1xj6prdknzzd26n5m4ytequqsp9cdxsjxrqkgr0" - }, - { - "private_key": "a50343d0d487452264dcd2cf05f74f39dc9f5d187f159e4c80a82104baf1c688", - "address": "lax1ut7jlc697qlpy4xje3tvm7zk6drxuwrq8l399y" - }, - { - "private_key": "cc03fa930bdcb7228ef1c814df0b86200c98ea0f198de08851ffbc58e29dd14d", - "address": "lax1pwy5mfxhfy3jnte0w526np83cs4e5d48kc6qq3" - }, - { - "private_key": "443f0897523946539f5394834f8fc7fa4e3b6cabddfc388dc5e4cd7217e74f5c", - "address": "lax1lmdf5twfwn0rngy4afhcpsmp9f5rdwkynndfll" - }, - { - "private_key": "97d69fc4e2c8cbec3a841885da48880ad766aaa7d5c5724b8715d68a21bb4400", - "address": "lax182e59mjqw06zrkgavt2z24j3g4kzrsuzz9d2cj" - }, - { - "private_key": "7dae3f74484988e81f8305f45855f3a3edbe69af6cecb5fca30fc91196348f57", - "address": "lax18kj0fvqans2tvmjgvsg9kp04puj6fkwn4grqg0" - }, - { - "private_key": "5636dd6904443fa2a3e5eac38537ada2ee333ccfada4fcfb8341e8cab4c6cc25", - "address": "lax1w8txyzq7wnw8ar9hns8uh2425p29xw0q62k8rc" - }, - { - "private_key": "26d485a095d1bcd962c1694204f050ab2c4607b926269231b915279eebb61119", - "address": "lax1jjcuuhhqq8tsxw60vy6ltpguel7p7znwsgcjq8" - }, - { - "private_key": "5fd06a5cf649a0b3c8d1bd7418d97531adef5352862a5a616556eae8bfeb39c0", - "address": "lax1ve6gdmq9zprn7pd5qzuj32y5eewrvqgsgul5wa" - }, - { - "private_key": "890eb758c64febcae9907a1529870c4713cee63cfaf002b19fcc15e0beb6039c", - "address": "lax1z5y4dnnutgtxz573g78z66tlx46h0z9hp7zey5" - }, - { - "private_key": "4d9cdb2c1b632c1b657f7b6c94457ec7e3df9c68ae2a1943b9b892a38f2778c0", - "address": "lax1w70uqnryh8nz63fhc3s2p05k9eankrmqmha4m3" - }, - { - "private_key": "d94e86458095789a9c6a5dd684aef04988d1af000cf19f4ed5e79f79faa9d97a", - "address": "lax1cn2n9nlx9n3u4s9r4pp3uy7dlpdyyukteq9nhu" - }, - { - "private_key": "923598510656c5624a63e0adceb7db0ba19e15259e41b4739b9bd8acbc5c3e4c", - "address": "lax1yccydxgssukm6yq6yjv5lm8wpvqr2dd387phdy" - }, - { - "private_key": "0e5014502b92862c315a3811a8a3a3a8447cb9ac2df07bcb34aaf183a51a3fb6", - "address": "lax12azr3d94nva0c95m54u0m3gs5fuknqzv92ppn4" - }, - { - "private_key": "3108374115f5ab6e791ed29173ed6c682f65f36649b5bce6938db10054762c49", - "address": "lax1r0fwwxmpde4nt58wlhmqvs6tu2v0km4y654s7x" - }, - { - "private_key": "d915ab241ebbc8be67822429892d242d1cd98b7c1e4e80d23bae2a06da1b3e23", - "address": "lax1fyuu89tncdjvwqsqcys25uwjdrdvhyu4p8l4vt" - }, - { - "private_key": "c8cb7399c3ce932717e794ad0f168a8318589f8a96bde12053fb7313cc01a702", - "address": "lax1l2k9usq8dsk5mgv9pmz405hap2s8yut4fcnhv7" - }, - { - "private_key": "839268edaaac6947fdd37d7dea42dd0d0c7419aaab5b3217820651e13b3cf635", - "address": "lax1hxa4cxfccawrcfuy9lzcrl9glufztm20gm20u2" - }, - { - "private_key": "84f72f3ab906140f1f9d58aebefe22b2b4bc5750a98cb5a20f34503a7edd972c", - "address": "lax1wlkq90lwpn6t8urs9we02l2n68edwrcz4vlq33" - }, - { - "private_key": "a05cd6dc7d724b2fda7f7360bcf5c9b45946a735f110e6c72195215830d334e8", - "address": "lax18rnrc3mp5wf4glef8qgfyvhdq4usutjd97rvy8" - }, - { - "private_key": "deb8905e7fc4580ad4eca86b87fb3340d2c0d23756574c0b2e3f41e7a1ba36d0", - "address": "lax10wj3e6hftyacwlkk9svjyle8pvnhp8weuvewwk" - }, - { - "private_key": "59ba647a630edf3d1d733645bd55df2386588f5353ecbf0ac64024dacfed964f", - "address": "lax1f9pzwdrplklxv2egzqk0ffpa0374y8nqa820ca" - }, - { - "private_key": "288db3adb147e708bee63ed433910d544eca0e88795f90428e15fd40704f9b18", - "address": "lax174g34rhsm26enlajdjh3jp0r2y4d5usx7dhghl" - }, - { - "private_key": "c8481bd547a4dd50b9eca945ed2af1964b5e1af62ceb07bcd7c472c47986cae5", - "address": "lax1rkzy3atnc7v9khq2l8sy39z3ff5acqy3mggd2l" - }, - { - "private_key": "34828c4066913870a2874f87b7460242566861675e4bec2505d84fc0b049499b", - "address": "lax1czrj8l8u0gtskzurlc0gr6zhas4unn5p06t2q5" - }, - { - "private_key": "7f4191d3f89be9600603af30aa914b26adc4b01aaddc204983f61f092a34f36d", - "address": "lax1vq6rwecedtrukepfa347s5u0qsws6tag9l8vh5" - }, - { - "private_key": "952fab2c094b3ffac24cb6803ce848fbbb65c3129da54e3104e838ca134583bc", - "address": "lax10lwz862qku074dqr5q0ykdl6knc55zsdryace6" - }, - { - "private_key": "da6912753a6cf67f4f56d094b372f14131d76f8a4fad0cdf5bd2448157b39cc3", - "address": "lax1excfslns7em0rn6335epjkd0klptprq80sg2va" - }, - { - "private_key": "ca40b555de1691e92e27d3209be30d0c43c6efdbdbdbaafc8c10c5249e73f88c", - "address": "lax1kfdwqgafc5lvv57h5j2kp3mqzsnfuywjeht2vp" - }, - { - "private_key": "f5c169786a06153619258319f9ca4bbeefe1cb5f473802018610205c327408fb", - "address": "lax1jzp5efuw4dlm25a6cfkfpnjc62l4pfq0hqt8xs" - }, - { - "private_key": "4d183ef08c094a585005fefa81d08c750a7f543cf12a39a52b90416bb31df26c", - "address": "lax1emml684jytvmdjzjexy94xvgg66ruwjpr29afm" - }, - { - "private_key": "d6a4c8923aaa31d17b016d8bf3c41f66335f2b8d572b4c13c00e08aec15da1d3", - "address": "lax1rf8y62dc9f8gzypmqg3rfrz3jccjzmpak4h0c9" - }, - { - "private_key": "7120dc717ee5656c68fad0de5ff91972a0d5e634c89e7f4f57a5152bcebf25e2", - "address": "lax198flq24ftqdq8y23v5qh32r5sv7wy0z86nhk0l" - }, - { - "private_key": "4d1ffc28fb6bb96a5bafd94ae5201427ec8f0f6e501bcca29d5a4bf5cf1d6f73", - "address": "lax1eexvddstq95fv8w8x8klugu5ccrj4urnd7l28s" - }, - { - "private_key": "07c10fcfb9d06820efaf6251aa3fa4723fa52c1029676e4591ad3077cc1df827", - "address": "lax1pazkdf7lncf3m9jna6rq79j4uanhjmavfuyaj9" - }, - { - "private_key": "e7eacb029da12687432f1db437f430c818428577df9f5e2007a9100cd27a66e8", - "address": "lax1l7pv0y5pgkucsvkln7e4pkefrd8v7p63ku08mx" - }, - { - "private_key": "6c66f0c860e66f3b09b7364d77b5e810d82630c2e57a994c843a776435046cc4", - "address": "lax1dauf0sujk765uyw6tg8m8rwq3lkqj5qclhhnxc" - }, - { - "private_key": "41dbb13e8605faf9fb889fab8e4b042f5c600efda660045d992a388c8d4ebae5", - "address": "lax1fc4tnkft572jr4ttsg4ca5tc2gvl8ex9w6wjcc" - }, - { - "private_key": "b6c090b0b1d612f843be0be62e4c64409412cb1ba4066072ac5ed4dbc7a2395b", - "address": "lax1qkgzs9vhkfy760x8vpv3wkjn52mcdmruvhlhfy" - }, - { - "private_key": "e37ee719dc94011026581c27712b0902716ed569cd29cdb100c17288dd21dc46", - "address": "lax1rnh0jung3acudkefhpgs5g3tq0v4qtet6qj5n4" - }, - { - "private_key": "7a8348cd4c9ff81cb8f2a22461abdd47825562d6181ac0d8819bffe9c2ef123d", - "address": "lax1lkz23nfcf29nsruqf46ph5prsz0njdkzcfz8jq" - }, - { - "private_key": "9579b73f9026ebf73b706e8e8696be725a705d896f01ce3cf4c5d7e02d6edb46", - "address": "lax1lwyhlq29fd6l983ng9v5rapzsyj3ctcefr8vuq" - }, - { - "private_key": "25b60af7758c7fb32a5524b2c47dbefaf3ef75a157402c0bf0f496db4e2178d7", - "address": "lax18nyuytkm3g94u6mfjuhedgusfxt2c6cx9kkwfe" - }, - { - "private_key": "07231203dd2849f43da8e437048c3e527c3a0181c25b77788880ebad41ce860f", - "address": "lax1zr2pqxm88jdqztwsah76rv2uhkmhst0ty37wul" - }, - { - "private_key": "7868ec24909584347127ffcf46a23583cea3022f57c13f825cad1eca05cec0c0", - "address": "lax140mjnfqryq0p4rhzy057s4d4zmv3lk67xzfw6s" - }, - { - "private_key": "eba5c909731bd09239e307069e2b35d613dda15cbc3de99a736db46d5aeac1fa", - "address": "lax1l5t6d4hgj2hjw8m6cqfc6evl8tkar3wv5qugvh" - }, - { - "private_key": "1021996e4c3243a7ee282c448f06efabcf2175d8dfc2b3c968953c607ed338d3", - "address": "lax1rx5y7679uv5kpmpcfs34myt3m5fcjnukjar8v0" - }, - { - "private_key": "c714ba7c14a9d02bb48221fa14ed33eba3545d6b48d44f9bf09af827c2cff703", - "address": "lax1rfw2ttgvz9vycjxym5vza6338qgj9yerl53ctx" - }, - { - "private_key": "77c8a6a864f9bcf3829ee2bbebec329a53eefd6ea57a6e76735ab5d97d429a42", - "address": "lax1xp9rptm7jnzkv6yvh9zvpjyzym57w89mud5aw6" - }, - { - "private_key": "868f671bc0c8f73afd52d49f78bfa7f541dc5cb3e391e7fb5516e942873790bb", - "address": "lax12wrzlr8u6syc5y5j8r2q767qkcg04vruve4386" - }, - { - "private_key": "a15ba068a8978ee2f0c13689b83e694fac06fa03e377ac80a6087111aeb2b67f", - "address": "lax14f46acsr24555dxcd23k9kq7flcusnkds72pjh" - }, - { - "private_key": "7a6f25691badb01ca87d8a8102314781f6f4b1f1c614b2c425b421cc6f5233b5", - "address": "lax1a8ht748spld84a2ker22jv4xpeyppc6n2eqqt9" - }, - { - "private_key": "c485f4641823736ab707b0e975b4ea34971ec322c62536698ba85f3b2228bb4d", - "address": "lax19jtwru7qw8e8wftxc5xxjq4sn48u0g39yhf575" - }, - { - "private_key": "a73ce9cb5f8adec4219e9e392bb8d31b682fc043f159937b4d0197b2ce77aeba", - "address": "lax185dqgsm9s2u4mfdkjymrsyh9uh4d02mz4qpu5p" - }, - { - "private_key": "0265c969315ce0c25ffd058515755fe0eef45993d6fd411ab1374cff6071d5e7", - "address": "lax199j3h89243dqr2l2peychadtmfu5tfadgfpx8c" - }, - { - "private_key": "78d4073bb07b497b5c77d9fe09a59a51c69eae8ea3fd618b352afff2361ed1b3", - "address": "lax107umkz88l4vmh7phjqgt6xgj0v47k63tj3gywr" - }, - { - "private_key": "6a385565c2208415a7cda723f264cda4d643882d52cc782bbeaa9407d88b45d3", - "address": "lax1wkjn2xj3j9sn2sgl8x0z5hvyy2w6uau6qwmxp3" - }, - { - "private_key": "252123c9d0cb533b01c56d2adc64f695bd24db8b22a44748aa72869aac87677d", - "address": "lax1swd2agevyshqqq32ns6etkqmpfgxd4tkhswzq7" - }, - { - "private_key": "9ea87b476d6ab5a0d1a70f71b30ea2ef3b294eff46006db47861882e074b2192", - "address": "lax1lpjrm0xlwyx6aku3aheqlect2ysp6d83qgs2hr" - }, - { - "private_key": "30f4ff3a2883cfa92ff7c87e077be1ef3ea39353235129c3533b8584656800ef", - "address": "lax1p6urshmpfpw2fg3r5qy5v8p4fvvftudycc47d3" - }, - { - "private_key": "a52fd95b9190b97864905e393fe8c6d056966bc5abea4245fe2cf0577a8c5a6d", - "address": "lax1ra8fyj3f577m4yexrdjjccvrlctgfcv252mr7t" - }, - { - "private_key": "c16ead3ef2a40de28f84fe8669cb963225d08cf0fb54768b7aba28dc1d6bcb38", - "address": "lax1w0px50t4sxh2ltmu97frgur9f6nkn9eynljxru" - }, - { - "private_key": "f2a03227ab98ceb41bdf5110cd06050d8181e1fb682e3d6eed1141559baced7b", - "address": "lax1fz6mf6jd20z52cguq9pelj4vk50envzvzcllyt" - }, - { - "private_key": "990860df805fe21690c1fa57b6d4386e9caa6c839f3bce55bafeb8ca031c1752", - "address": "lax1wlv56gwdp6c8cwegpzs4xc4sft9lpwn4rx5myc" - }, - { - "private_key": "acdffee85aa6bb589e388d896d834a47979a36c0159d304c9eea089bb6afddb4", - "address": "lax164xecf34rdy3uzwlec9jll4dpgf7lnzvs7408x" - }, - { - "private_key": "8bc44bba0fd8c1e2ec2059ade7082242c7bba9172de00a17613ac742df3baf1e", - "address": "lax1hxcc5fyqsh9q9k7fg2ycqcwj0vpelmkygez92u" - }, - { - "private_key": "7bd813cbc13c963520760bdc1716357441c6114bc9a7a8fdb96493a3821cbf7c", - "address": "lax1raq88g5mt6lc9rkatn5u3fhrr0ywchj747nmm6" - }, - { - "private_key": "5ace3c8c8e12da562279f5bba537b67394343045ad6c9c9d69e7ff2ad98d7ebf", - "address": "lax1lfd4y8d06hzqeq9xu69ht50df95tu07y9c38c7" - }, - { - "private_key": "27797466b0af87d8962600ff11e0c9b9b3325f562c1bd6b786a1f8fe1a5c38a5", - "address": "lax1dkaezwkt7cdxsxax8k7natjzhqv3mhm6nkjqe3" - }, - { - "private_key": "2b2f3eaeddde20f4ae50a3c60076cf62d450c52276494e6c22d8a7237c7a69c1", - "address": "lax1rqzex65t296c5zmcszk4m2ckk4zrs0avlrre07" - }, - { - "private_key": "9994128de321e3ec6f90ac0da535275c85e311443a3d782cb8f764333aebdb14", - "address": "lax1dqth4eaaj3jvjmmr3jmcd07rux86lqf5ufyntr" - }, - { - "private_key": "bea845b68fd994afde4fece0b8b8d3a6dd25d514b289408f517aae3bd49665de", - "address": "lax17z6rk9fkecl0qvwfcrky82etyeqkun73e7fl68" - }, - { - "private_key": "db3051b90ba047bfd2789f37dc1819d345a59b275a10f3bf00fe54440101767c", - "address": "lax15v3js6dnndcr8sjfs8atkyfufw0jd643rptvn2" - }, - { - "private_key": "1dac077bfa06813ba1cf7a9e029e6e84f97f59731a47ab3d5d685c6f6cbf99b8", - "address": "lax1cgraclr9g49v43pxakrcr6pgrwk9uvxvtrfev4" - }, - { - "private_key": "c1b12f226604f313a2847758c2698ecf7527d5af19f36c26af71e56a1bed184e", - "address": "lax1z8ntlg0q7srdph3kqt34exjctkp6a75rqugsqz" - }, - { - "private_key": "24e879dfe4cb73ed6d387d4ffa847b678d2e597dc9eba31c127a9268c9b519c9", - "address": "lax1wknjn0vf4ts4n3p9p8fgm0swrez5c8whjne0pu" - }, - { - "private_key": "59f3289e5a3378f7806a4395400d843b5e6ad75365d978f17a8e1cc3791f5a6f", - "address": "lax1uzvxqnqsuc7x79467m0vmf4m8z2a2nnajmrmg4" - }, - { - "private_key": "8a1e7a073b20d4414b3dd6cf2cb80425cac0764379910313e2ba078f3e850cc3", - "address": "lax1cccznpn3kf4ds7rcjmxd0m27qky62tsp6tx2yz" - }, - { - "private_key": "91726d7443550179401c1fc825b3cd34d8e409825299d7aabe951d76de0443d3", - "address": "lax13dtzvv8tst72g6v5v0ue4vx8g075le0v8rmlzg" - }, - { - "private_key": "3fc4d30e72708aa29c59360cc1979ce320d49ed8dcee45700be43a29f930c822", - "address": "lax1gegazes8msr6wftddvf0ny8h72t6j7c35gr3hw" - }, - { - "private_key": "8c20153ffadb3a1f4fc8d24bc04620bbeb65b6097574913d1061b2633c4c6a57", - "address": "lax1mtvrdpy99kawdaxdgmfjwr2e5su2zkurce879x" - }, - { - "private_key": "22579ce9e07a84128a5afe42597b43160cf64bb7c73a1981385d6ac853354d94", - "address": "lax1dk5kn9fldegqsqepc2vy7h5nmpxcjkulxyc7ya" - }, - { - "private_key": "d47dccc26a89b795b16807f2c6d4f320a95d00c888ce2fe0a9a04cc69a6c05b4", - "address": "lax1fysxxfa3gjcmzlzcl5ry9r28g8uvzz04rnvxh9" - }, - { - "private_key": "20ecc1d15b15f4caeb722acaee77ecb2aacdec46ae43680159fa38f41c823dc0", - "address": "lax1ungwd897dp8wyczre6apm2zpjc8evlzd4eckdw" - }, - { - "private_key": "b145e0e05ab6326e38dc8d76495db97f4b8b6773f512bbd1dd551547bd4674bd", - "address": "lax1d7xhvvveudn2uyfntvjpcsudqmy8eat7pdwdsx" - }, - { - "private_key": "a9976a68ef2371268ebb274cc3724b22077873f86d3e921b870227401e05a984", - "address": "lax1deqp36ta83ypty045dv3jqallv285ysre04w0c" - }, - { - "private_key": "2238154763cfa205804f4e3ab5d822da00e4f5673c8358361b54ab8ed4be7961", - "address": "lax1q3vv8spstgxh8q973zypu07x9qh3erprjgl38s" - }, - { - "private_key": "b6e1f933c2fde4fe526e366596e1b7bf65cbb91431eb3a7dae2ea604e890044f", - "address": "lax1accwue7wmeru5taax0mpp9ggfyly2kgzfq7nkl" - }, - { - "private_key": "e1884825a09ad25cdafb0ed568f6c573138a2070b8a8382c5e8bf3cabe1d115e", - "address": "lax1j7v8s0g2gkcteg5fue9dz5p0wnvhn9c8cxt4vz" - }, - { - "private_key": "eb1863127eeb5e13fa30c6118f5f661a725147b01cd0edfc241781b45b5f6052", - "address": "lax1kfzp4vz5lr8cwsh6r20h5jq3ykamx2mxc3wh4q" - }, - { - "private_key": "45bcc420a89c1c67222ef3a21923d23b135c717453413ad2263100fedec7c0c9", - "address": "lax16hh79gdhg6gw7rrf35y6menqah34j7k4ndmmme" - }, - { - "private_key": "bde2d7e5445c616762a1ab3789df063d634758ae918291ca230f3b001c040095", - "address": "lax1gmreamgehtx87t3qh3yxqm72evg5e4vs3v8u9g" - }, - { - "private_key": "97315452c0786fd53bdf8f444dcf166f138f8455586c256c508d2eaee4608e36", - "address": "lax1tpr7j60dfwy88mwwrtzlnne3nart97jflpgvgg" - }, - { - "private_key": "d04aa05fac32d3a09971e0d866d4b129509926706b335b8f2991ef8d803ffc39", - "address": "lax1xpae2ngryezqx2jmn88ss3zvrn70wxl9rmkzws" - }, - { - "private_key": "cd2b730552ddd7737858219b0bd4e01dc077d09506112e8ebf6ed9862fbb99f2", - "address": "lax1hm060kzraea8w4l6jspmwu7pte6dazzp2re0u4" - }, - { - "private_key": "c988d4f67425ddefd0bb69f2a0b7c0b4da03bbd1d785f10038e3e08dc28ec48d", - "address": "lax1vcgqvp407y466aart65m0zv923p0j8aappdnja" - }, - { - "private_key": "ae6ca817e745531c1494ae8a2f690615dccd48c9acae5f49b5df4b2e57c972b7", - "address": "lax1v3gmmq0qec29mkptms252f2ele2tgs9tvrr9el" - }, - { - "private_key": "6fe8d4b625285761a1e1ede41a925017022e733118cd3bba71c2e2c2926a617c", - "address": "lax196g0u6up9ympqwktjtjnkal8nzu0xyevzew67e" - }, - { - "private_key": "602fcefbca20a5d25dbc7d41333fce23c2880cd66bf5ad8863095e5f592fe2fb", - "address": "lax1r88z5crn8hck8k7ue7je0mrln7gpg07xswl5wk" - }, - { - "private_key": "f6f9f1bc46025dff69c92bcc6c1004dbba843696dffa86c963f65eabab7314f5", - "address": "lax1f9naca54v5h8dj6k5zf4ug7y9gwlk072wx4fwe" - }, - { - "private_key": "1f2c84e22f8bd4af1f2812809f67580b2416645ab06ca36898cfe7ee8de21b80", - "address": "lax1k6z4e6d87tlljdcwm98vx2efj4v749q8jewexy" - }, - { - "private_key": "44d21f025c4b14d4f214d13697332c04d5001639483f1710072427ed1bb7a0bf", - "address": "lax1mxaed0u9e4lpq8mfdjhk88ttgdseua7jm5flvk" - }, - { - "private_key": "b22ac42fa9a73ecf063cfeab50d9f0e7ca3ea03ee81275b3230280db3369a7e7", - "address": "lax1yra4j5fghzavgd5rq8p708xll5stuky0ns6gvg" - }, - { - "private_key": "7c4adc2b3323f889604dbdbbfc2675ab6b21db84521ed9f00e9e5be8c82f9e8a", - "address": "lax1asw4adxd9umxwjzlskczma7r9jsgn68dslz9ts" - }, - { - "private_key": "f83f2103130cc0a0c2dad07d144a9c2bdf3bc5fd961c0b574ae62edd7b9b7c04", - "address": "lax1ca2uv45tnlacfkv6w33gp3dkl0f5hqtywd3f78" - }, - { - "private_key": "848ad093eb220d02f91e4d467930dd445d6704cc60e421c945ee69b4da2fedab", - "address": "lax1zu8vzrae2g2vjg57kltgp0dyv56mddd4gdd0x5" - }, - { - "private_key": "0dde0ba3fe1b31d95b0135e5465d39f996c03e048c33d6080bd59bf34b64d3c8", - "address": "lax1j5pqzwg8szl3z7ua02dakapx8u3wv2tv7vnpef" - }, - { - "private_key": "a55a32a2a10dcdd641fa90b8e5c7908ebee06bdef68c5d70217de80271645310", - "address": "lax1r9gkxl7jfwp6d37rg870eep2hhnxn4s68shxl5" - }, - { - "private_key": "7afae8ff65320363aacec3e2ffba7478cb75b8affc27def42fecf80cd4a7cfd1", - "address": "lax15k35zwyq4r53wgldg4rpekhvs565fs5tze2yek" - }, - { - "private_key": "74b7d0bb19d226c829eacbe7a03bea7768c8918c2783a354b5c179246102c1c2", - "address": "lax1lxurck5pykadgqaymrnvku96n9m04xav25j6mt" - }, - { - "private_key": "7eca3423e53abe0cf6732bd8a5398d3b04ffe913611679e03321b47a631bbd03", - "address": "lax1qqjatzn6kpgrjv2j0jhd8f4d7scwpzq8cf2rc7" - }, - { - "private_key": "9af74148fe31ff26ab88660661bf24f25c9b65645d939337354209cc324c2f39", - "address": "lax19gggedyw9h4g9xp94e5yeuekvw5vhfltq3lvl6" - }, - { - "private_key": "9283be593a7d5da2f7a5c87dcf807caf2a522b89571cdad36464bc65e1e10ebe", - "address": "lax1wm9nwhcs7rt5mk4eq3h7dtqmsag7afx8vxryar" - }, - { - "private_key": "ca1f1860c687af022a4f54def4a9b1394f77ba08c4ba15e33ca5ed9f3d2c79fb", - "address": "lax1syuefzxrjw5kmzjxmzmsfglnzfq7t5pkemr6cg" - }, - { - "private_key": "cdba1d369c85cc8ae2d45d3418602a90a54b2b5452b2068c1e6d1d4bcdf702fe", - "address": "lax13qpmnd0lw88uhehygvgtmedwsp6aauvmc405ca" - }, - { - "private_key": "1b4d01c83c175ad24fa083f49b06d9af78a2164266676b0f5aee3a140b0e78b6", - "address": "lax1lj5prhpjsp53276nfdruf3nwedcemcy9kz6dn6" - }, - { - "private_key": "c55cf9fad806aa23884314b3a6defaabf4f5db5ed46f1d0da25eb52e7ac3064a", - "address": "lax1vul7wjj9ae5sy7lrlvcqu5tswy5rzuu67p06kt" - }, - { - "private_key": "5ba22682a7d120636eabd1b6ed735659eee07f52834ca4e57787654b5e4531ad", - "address": "lax1l9pg6x0ae5qrzeprq6wjckq9qj43jehyev4gf8" - }, - { - "private_key": "d54a530c53f2948e670f1708ca2b2fbdf98a27e28fdd472d701175cc8de69f9d", - "address": "lax1g40c7meqx3c3m378xk740n0tatj3cytymqeu5w" - }, - { - "private_key": "038177ae2f1061d1043d0a930daa9ac30edf8bdded54f44594f5927789f30f08", - "address": "lax10nteakawdfxmcf36tchmj56cug296muj97yhq5" - }, - { - "private_key": "f9b87ce71b66b392deba952d58d834ca86e7c0923908a3f27c44589c55ac8cde", - "address": "lax156vyl04lvy3a7yy4hlafcqewx3e5mncmex93mx" - }, - { - "private_key": "7a598a74cd0211878896d2a5a26c1b7cedfac7edfe6aad5f3261373b50c3f571", - "address": "lax1ly5reh3geg4nsc0j9yqu3h03fpsl0syusf79yr" - }, - { - "private_key": "23105a39caa274f4e9c31f3e56e03d20a760b2e5ce0c15db38fe8c75c9367ff1", - "address": "lax1j8hxmhn59zqkf74m7fcmc7mpawghuc7pqzktm6" - }, - { - "private_key": "b58de102ca193629308ac1a6a473b04e49be082a4a7d2734ad56b4828e841b97", - "address": "lax1kju50mah6xnkajwrcm2dlr6uq8nvwshg0qsxvh" - }, - { - "private_key": "368c554b454c08aadf3e8d9efe1adc8163cbef1a14aceb50b3ebcc804c74437e", - "address": "lax1sse7je5enp3jv5yazts7l5rfn3q2xt59364knu" - }, - { - "private_key": "a6ceb7048ce52ee749492355ac6fbfd5ac9cf4a54c2d710e7daf6a5b8b4f66de", - "address": "lax1ga5ecdat3ydv7s060f49cqz0u2jn3vcm4tfsvz" - }, - { - "private_key": "605983f36af2daf40da1cec6c4adfc60155837ced3ca111b259842d9c3d42d76", - "address": "lax1pu70lwzkdct73d49zvrune5zy4lv2tlj5m5vju" - }, - { - "private_key": "01e198c1a42b098ef7a5d158c9fb446cfa23185bd3a2d4791096f48e095dcc4a", - "address": "lax1resyce772k0ftg95t2zymsren2lu240n28txpa" - }, - { - "private_key": "843099980f4fe178d40c4c920cc2858d934aeb65d48e838f4c53bcd195672145", - "address": "lax1ph8lruhjy4484thjcq0fawrqy6gc5d857jnvs4" - }, - { - "private_key": "2a71260e4505dd71fdb3c9dd865589091ac18fe730f6cc5770714721de2d12e3", - "address": "lax1m7jyuyarkhnaunzlpzwhmlgm6qe3w2u9sc6un7" - }, - { - "private_key": "a6ec663e94866f9b01e6f9453eab4e7967c1902e7452ecdaf5f3771341e48e5b", - "address": "lax1c3vmm0g0qeuu22pty8ma63vyd4w37jqk2ckvzp" - }, - { - "private_key": "0d6e5547790aa3de32252c4403f3f99ba9e94abb5c5be6db54c72f4841c50892", - "address": "lax1pq2rh3mwwseu5w6nra79g8869cf3xv8em6jzyw" - }, - { - "private_key": "c0f2fea72e72c24a0009163a677254317fb0c5dd6aca61161b0b85e9c11ec19a", - "address": "lax1e7xjy4fltlqustyluxn8z0r952vfjvn6sf6ydy" - }, - { - "private_key": "4531bd8037082339736e9047e9598d6be4cd154c4128c58b4d32e92b6aa8df4a", - "address": "lax1wptvey6vxrf0crev4602l0yv3gs6yzrve6pmc9" - }, - { - "private_key": "23a72ae64f2b7136212abe6b966501d9e3c1179c93de225b414d2c3b77f634a0", - "address": "lax1jqe6trzpjhh6yavhrqmxmaaq2eq9cnmsasuetv" - }, - { - "private_key": "88ae39d87c080612c381002526c577e305776d9022d58ffa5fe2d5445cbd350e", - "address": "lax196pq6584qmek4x8qh4wy5g8alzf4mqdg28qtzq" - }, - { - "private_key": "461eb4b494fb8febb7ff8bef6b7d76b3a27d9c36d657e8527c10ecc5694c4c8b", - "address": "lax1jkrppyephh9qh0c9r0qx3wckkkxvsahj5fdm02" - }, - { - "private_key": "18d97903e4059996e011bb96479760beaa5ccd35421b6df20f1bec01a58e5fd2", - "address": "lax14td8y8qxyv2myyvfxka5y2kqlg5wmv3au42yqt" - }, - { - "private_key": "599677a249c1068fc96fb7f9f375c79a80ed009890a60ef8ec41bba9d6b72c5a", - "address": "lax1w8cm3q9q6rh6lrfk65allmkhh2gskm6tns76sr" - }, - { - "private_key": "fa404349410879fc51e657254b43cc55970c1cd05bcc211adb827161203a3c87", - "address": "lax16h3cx8la5p8h6tst9f8h5qnaz7emk2guzu5jz4" - }, - { - "private_key": "56c6c5a895f6b8a32c17232a0b68891aa081f9a0a6ff52676fa94d30706bcf0c", - "address": "lax1vf8zx9rwklfdvvpvn7qqulh6wwqvt7cnmc449q" - }, - { - "private_key": "013b06d1710790b6fdf57d46bccdce6da10f652fa50103d37fa29f0e88b39453", - "address": "lax160xgz7eg7cjkjv5tfsclkgt88mhwppra3cs828" - }, - { - "private_key": "bd860ce233889fe369bc53fbd4166e1c8bce1adf96c3bc3c3f0e0499bd58a71c", - "address": "lax1y9atcq4ty65v4chvmvtgk70n552kvpgzlcf4hv" - }, - { - "private_key": "0cfc0a9c6e8654fa80a3a117543962112ac65b2bd3456b0a1b0f4af560efefb7", - "address": "lax1nr44zs9n5sg0c3rst4mhdknd0esvg3rzprqydj" - }, - { - "private_key": "fbc80a21e1eefe0c5f929300e5bf3f1fbe270d29ea2d4e44a8dd8a49bc5f322f", - "address": "lax1wcc74hf7fl2dfe3sneeyh4sutj983je8nkln8z" - }, - { - "private_key": "cc527e611259c983acc03066a12bbc755eb8151f4a526c8492523be95a7ffee9", - "address": "lax1j2002g2zte8avpa9c8zqapzlf9uve2jlpa3w9q" - }, - { - "private_key": "21ddc12feba934c6b832c49cf0698cd1a26a6fbc6df0bd2542d534e80e723426", - "address": "lax14vg0k7gmlksf3qgmaenr6g35ke3h6xr0puaeg7" - }, - { - "private_key": "13b2e5aaaa84cdf5a2754a5c71f887a3c6ab0b4b38ad9ba3395406966851cf5d", - "address": "lax1y2mm7wuarnu0wnsfeta3kugue3a0v97ar7tnhd" - }, - { - "private_key": "b3cf9b94d1ccf708510db7732178cac8b16f1fbfd3e7317fcb663474dd5fcaa2", - "address": "lax1nlpym8heefwffy7fkfxkanzpywvmej5jm8c96g" - }, - { - "private_key": "5ec4518c5d1a2dfdf4cff7314504c4d2ac41b1d9d53c98b6c3efcb8a2c2ffb4e", - "address": "lax1tp4ew65glg4ywmd06ts4q3w4cfjvc4k04p2prj" - }, - { - "private_key": "2ee9e86c6cebd9986fa0cd418b68792c9c0f306ef1b31a145392166154607b00", - "address": "lax1x5cztjun5zvrkmdw02zvad66ds7npzmesmaa2p" - }, - { - "private_key": "4228f093d36776506e0b4804db03d02fa7912442bfeaa5061996b438fc596b5d", - "address": "lax1kunkn5pmzz99w6gpgdl0s4zelw83s404evl7qv" - }, - { - "private_key": "8abf7870614657b5c17fc1675948bb696f11b6a99f220680996e3ed3647725c7", - "address": "lax10r9scfn676j0jzlw08l66dnkc5e87cs7lgfvrn" - }, - { - "private_key": "ea04b0a837b78cc889697dcfabd0b7a16d1e1e92c463a947c7c02ac09c62ba3a", - "address": "lax12kyjz4k8sgkldyzsgvmnnj6wmtrmknz2knyn7a" - }, - { - "private_key": "8b1f2a7ddc1b6012fcbe48ba1d867f000b1c3f17ffe38a2ab169064159a7b810", - "address": "lax1pmhz8uvjxemqdcr0mtwu2ffas4mtl6veldlj62" - }, - { - "private_key": "d91e8c22812fd3f263bb3e4d21e858d7d0e36f4f10f0b3c5a98c141bfcc36a2c", - "address": "lax18rpgf5u3pcjucsegga0fzhmpkclcre74ylq60n" - }, - { - "private_key": "ae5aa1e2d54a29e3fec9db193fb88f40266806723a00c1db6a102fbcfd3c1215", - "address": "lax1hpr5qy7gdszufyxsvv4ua6zxxmglq9wcc9za3x" - }, - { - "private_key": "65450bfda26343943a8b46edd0d2684d2d5c4ace9a0dac74291644623159d7a9", - "address": "lax1vn37h2sf2v8vhr06ze8tychc92x06ffmfykwev" - }, - { - "private_key": "0c396eef1a51daa765906f460fdd585dee0ff0707dd7f9ffbe2db87ff614667b", - "address": "lax1xw6ql8ysewqr6tl50rzk90ct6sdd0gwx6l4dxp" - }, - { - "private_key": "520ea1b36d6a6e616dc6da9352508c459acff9fa3cc539f1c418b3090a279d79", - "address": "lax14e80k090dx65wm0m8z7g0vf8gh5xuc78ce0amk" - }, - { - "private_key": "c893a377b6841dfec4408a65302ed3ee6903a69b36127007c93b26a1cae02f56", - "address": "lax186m9y37u5ymeapwq4agd3uxehwl8uhhhx2cuww" - }, - { - "private_key": "40d33c70a42687a08682a0f1f6a07e7e5418f77126cc3cf1e0404c9c445d4d93", - "address": "lax1ym99w42c5ta7mzg8j0uwx8j0n3lqhl5j6nzycs" - }, - { - "private_key": "6edd5d0fb86faab128a6be1925d36b828dd9f3a0bdb39e72fece81acd4a135d2", - "address": "lax19v0fy8yh8qnqvjatf9yaq3m2g9w8f8ct2k7yde" - }, - { - "private_key": "07df9232d4f437f4421e927cc8a24c68a2ae90000b7cb63dde8ec61034c75f43", - "address": "lax19tueqcxvn76njxnvm73whc5q42t8wd7fpzwnj7" - }, - { - "private_key": "5d080a60c579d0fab4e80f92969d1cc6b57e08509513e2b27b3b545a55f4a064", - "address": "lax1a67fh47q3vwpqw35rds8ahywse6z29zhu4hgmw" - }, - { - "private_key": "cd707c0a57a75fdb6aae455b0521fce144594400ec522b7cca573e35763d3ed1", - "address": "lax12aha02fk9hvr8usgnrwuxngwftgsgpmqre7k84" - }, - { - "private_key": "b2ed698084eeb897c393e0c68e7ef62bcdd1e5c61d078d9d9a99033ee3a9b95b", - "address": "lax1rxpgl857p4h682q6ftlm26yggux62a6q77jsnz" - }, - { - "private_key": "10045022d656bbd18a983fdcc50d4283d51daf86a3d4ec08cb197c4838447a2d", - "address": "lax1z2rtq6l8cdarzyw6dlhx9nljw76lw7cx9lz7an" - }, - { - "private_key": "46a7ab832e4d66a5e4e94087ce2389337f0ec1609d2559774cb2e4d0060236e8", - "address": "lax1j6uje6r2ahjtkmdln932ze2yq3psrldcdv04mr" - }, - { - "private_key": "7537bf463c5b509721df701dd48a1199447ef7b1a26fa870b6f86f34a0f6aef6", - "address": "lax16mw9aw5yqvn6nqsv9fu9lkwfy7uzl4q9v8885a" - }, - { - "private_key": "4815570e75110dbb7560510337004588e5682ac6b2daaa08f1a15317c3e637b2", - "address": "lax10vdaktgre6skzfawscck3yzamrx588tpvc7slp" - }, - { - "private_key": "a3c7989c09479a59c4aa3a3cd3887b3961572b2ffd5509586dc0aa5ecf8cde98", - "address": "lax1nhtyaf7kpnak5kxxqrjzuy3sz4kwnz5jhxy97j" - }, - { - "private_key": "c1eb5d0cf40599f722ffd3e1de70326c9d64f49dbc586c114d8a375866d57dc6", - "address": "lax1smjv5y48w8du8k2zfj67wrf7hyar4jm9kkfqlp" - }, - { - "private_key": "93e897c845ffd76b2cc270f1a7e75255ed708ce65e51ff104dfef1442c440c50", - "address": "lax12trldcuwqkl7yy4rmr4pm0weq764a2fanuh9jh" - }, - { - "private_key": "1dbc22f129a6ec5530238ffa7f43235df57dfe9c898f0372e228f43be854d9f5", - "address": "lax16uprf7s4m4ttycmcpf9wajnf9xpgy2ljeylax8" - }, - { - "private_key": "9e98f4fe204dfa538ec535edd0133369ec4f9c9235cff1d6291a9629f29e24fd", - "address": "lax1mjhn78rvujv3r3ekpamcgwlev0e6rtm4glv7e3" - }, - { - "private_key": "99b2c459425db4e30ed95398866910c53009d70248c5645934527df0cae88981", - "address": "lax1a7nf5jjzpcjrws5vk58566p3wzw2s0sheghm0c" - }, - { - "private_key": "2375aafdc7cde318108353f3fab589789eca25f003c9375d42f3fdf4447e0604", - "address": "lax175lfr8jdx57fkusn6z78evp9rp8n8cgklf5x84" - }, - { - "private_key": "4648cb6cff1098ef2d4ae86aeace545cbb4c3ff6cfb2af8fbcddb56da2e0e32d", - "address": "lax1yv7tmkvfmga29ypejlqj2ed6qdk5tvakfget66" - }, - { - "private_key": "6fc75d8ae8bbb691767037ca2c4dc5d36d185a1b6745a7afe8b35083dc0b09f8", - "address": "lax1hak8wqdklpd5zjjjtklnvhp3z3j2p302vft7ga" - }, - { - "private_key": "c10fc8e221cac51022733b4b3a55e6d91677433d965ec9573c40207cb37ced98", - "address": "lax1thvlurdc4qlgekttfv2tsmsmss2kdttcpd8wqv" - }, - { - "private_key": "336f1de26a33a0205f3f2ecc1290d3edfc313919e1711dbcddeb8e180a9bb2d5", - "address": "lax1xg923rg48q5r5tq6k3vylfqadcltdyzksydfvw" - }, - { - "private_key": "188cc2f45758ca25cf5c5ed9fa712107ea37d244a0663223fa9a8abcf0a0aec2", - "address": "lax1lwyjhnqe95eelpnwhpkl76z73rd7z7xg9m3ed0" - }, - { - "private_key": "cc515ed838c1acb649ef56f01d53eb297b9698f17314d2738d30233783a656d7", - "address": "lax1pnwcke9zfwga7vdslr2m56h5q5e8vwev3k5evn" - }, - { - "private_key": "a5f6cd29c5b45df2ad28231b7d7a4b8cf788234ceb13104bba3690008bf1be51", - "address": "lax14puw5h3my52qh5enytlvqhz0dh3p6f6sdqe5xl" - }, - { - "private_key": "12fbfdfa3457ba256cc31198e152ca5f137522a9902bbd6101586cd7dfb4e693", - "address": "lax1m263t03dtt8s8g2usph42js6mfjul24wuf8lw6" - }, - { - "private_key": "1f41d9723ca68b4acd56356d81ee79f2c9670e162cfa7ffa352abcfae07b66a6", - "address": "lax1nhhz7sfn6qx676w8ncfsfke9s9hav5280rx3hk" - }, - { - "private_key": "0436635be51541a3b5e9688dbe45ebea14755122b24de9434152b1d6e0fe301d", - "address": "lax1xxlkz8gqqypejwxg3mqe2cm60tzfs97qdr8kp2" - }, - { - "private_key": "fa2dc50d4d4203cbde679192571c5340c5fbeaf9848652a167627c4c188e9eb9", - "address": "lax1lnz2cs5mlf6tvud66yga7c0pnxw2un92lmy92g" - }, - { - "private_key": "afb882fe71948da57d7655d6790382fa5df9f5c117ae19879f44183c339185af", - "address": "lax1u3vkrvgsvqckl6mekmw7amseyyjdlmctmm4h0g" - }, - { - "private_key": "7733fab59281618ebbe38f754342b687e2342bdf66d0cbb2f0f3781fba9d9a41", - "address": "lax15h9dswhnquhtn2thq7rwwd50cr503875w0ek3a" - }, - { - "private_key": "2b9ba4a16aa73edd8cc891271caf550f40a01e5112e3895f9552e12b6282cbc1", - "address": "lax1vt65t3tshmkwuusgnm0zms6tt2k5f5q3m79uea" - }, - { - "private_key": "c4bacbb48bfcc7db16bf0b278b7e6faca128268d7f49118fae282f27c955fd7d", - "address": "lax1usfnjpr6shd8waf6mph3mkjmw24s20np693spk" - }, - { - "private_key": "e986b876ce237d2da7c202855316bf0b475c2baab948331a3e2eba0ab092af29", - "address": "lax166tnp2r8t7thm7ktgrrd2lg8pg47ldal2atsvc" - }, - { - "private_key": "169be6f16e1d3f8b998ed87ebb0399c023490ed8f527c3a68291e4daa25d092b", - "address": "lax18j480r2fqz25953fg2jwfm0kwfta2r9pslx6a9" - }, - { - "private_key": "d9e27fcff112a2d520b64ce2feac000b8f074df7ea40e5adc4920137861136b7", - "address": "lax1sjurgmsk5eh9c7vzc6a52ge0tt4d6eq2prep29" - }, - { - "private_key": "22e102d686087b1ac39b933f5135dfbeea5d74f64e63896fb02f6795c2d68649", - "address": "lax1y4r4g9rp40phltu569hnfaek5cg6dnmpdrn50q" - }, - { - "private_key": "c6aafc2a0862140adc807acafef0a291f28a933d0a0a00ea16fc7d156924e638", - "address": "lax15ddx564s2qvdx4tcdx02je76rr4dj34wl358w4" - }, - { - "private_key": "e1c0229755160e38a088c2e221223a98aed25bba98313b656b12d228c14790ee", - "address": "lax1u2wacftkz0rpajpvyg9v7c8l2fm7n20cc7n5fc" - }, - { - "private_key": "8481eab037bd329b13f6b4f588934e0127b5491f3e578855b6ece661e920f8eb", - "address": "lax1jm3gx7ehevcrljgyl78jlawmaqdycgy4azkaq6" - }, - { - "private_key": "ac2eda41507e1e9f74ad524d6c43302873340ba06f9064027a33e2ab44b249b3", - "address": "lax1v6dsdvv9cqljee5v9j0gmtzarm2smxkt49857v" - }, - { - "private_key": "3bdf1aaad685b5e608e9027a1ddde3b8afbe4bd964181c0066bcf822f213625f", - "address": "lax12t9fe8x4046tlwmmrwc6680sfle2qfgx0zqrqv" - }, - { - "private_key": "12058c5bbbb240ebbd86ef1f19dab382466e9687d39925f1c8290f7d85ce88a4", - "address": "lax19srxxmgr5aekv638dgv4crztwu8hwgvfqc4vj2" - }, - { - "private_key": "ded26fb18270692dcde7c83e63d3165a7cf270c2cf67a5edf37209a7d7407b70", - "address": "lax19uqrw3r3mthyzrktdypmvsdr5ymz4dzssrm63r" - }, - { - "private_key": "b05b081bfb29393b781be2d3c60b9535b3d31b858d0d178be259fd3b34b8d6df", - "address": "lax1gn7aedvlft7895th4kwp6wk4rj0kmn9xhuf97j" - }, - { - "private_key": "70ee97054da4df6b606a6547f69b460dc1bdb0fa72d1ae375db345051834f913", - "address": "lax1wwvlqkgyqaj8su7uzavxnpsh5vsn9l3dqafwmr" - }, - { - "private_key": "e8c91475f8a109722ea8f6cd61d3c544a32094ee6def873f82d7d5650690c667", - "address": "lax1kqu7ecewqyz55guqw7tx9ekatta3x3tguy00t2" - }, - { - "private_key": "6ae06954a91b0ce2ead15f57223c0c91935fcd126784839638514c0f1323916d", - "address": "lax10pcddqmt4n0fh273jnf4yr982tfxnn2cm50pwf" - }, - { - "private_key": "7e0547dc9eb80b364176923c75af4b2c14f3845caa1961e0a93a449812430e85", - "address": "lax1phjf2yn0pjpjyk43xyg8t0vgd80jpyytkxuc39" - }, - { - "private_key": "67ea0a68d83fb1f2e70d4f9194a1eacb30a44096bf2f2c93b646969ffd613437", - "address": "lax1azunqnmdpgkw3dd8mnrl4kad6t8hhvs926cljc" - }, - { - "private_key": "dd0874f6696b29cd4a35c635b54849a266fbbef19037218114f519b82edb2f98", - "address": "lax1kkcc9e3weyx8mh2caqwjw4wlfn4522awddmfkl" - }, - { - "private_key": "bf53d5737a14f4e39965e55c4ad4e380e60d9e353578ba07a921b6f64e7567dc", - "address": "lax1tfml2947ultxyztrjhjcplldncaddfznfu6tly" - }, - { - "private_key": "449a1687ea7fce951a71ec9ebbf18875a81ca3db562f57ddfa1ee65833e4208a", - "address": "lax1fyhe00rf0xd8z5lz2ajccn7va0zgm0yw3p3ylp" - }, - { - "private_key": "41aa22820812713106bac09b54f61ed468adc37100ae47db683ea8fb0fb5282c", - "address": "lax1mrauqsxgmvd9jrvxk8khy64d0hnp9zv7v7yret" - }, - { - "private_key": "01badc23d2b4953c102445d630f33ff3ee0bb9a0e1354c2aa2fe981fa9c19acd", - "address": "lax1tdajp4mugyulnme0c2sesndy43sswrrh0deh6j" - }, - { - "private_key": "a73f892168edd98649f2e9bb312ba8d8551fd4e4f893e7435c970f09f77d7576", - "address": "lax1w04fhkgjpphrwenhu3qydu2tpusq2a5cndj7u9" - }, - { - "private_key": "9457286fc4841143526ad99f2723d19da346bea99c547c29918d72cb9d7b0418", - "address": "lax18lwhhyj2ux0cnhzt4uzz23vktkvqdr3xymcg8a" - }, - { - "private_key": "6d16d940d931a7fbcb9ae17217ad607c00abd366b57a83925d5c4d29a3ee124c", - "address": "lax1w4fc588z277mhmgvx9dya77ansp2qs3ug668u0" - }, - { - "private_key": "a68cabd6273188da15b0b8b13cb8c042798d898d63b7f75ca9a49f189f608dc6", - "address": "lax16xpvyzgdj2n8vlln2psdu736vyv6ausg5xr2p6" - }, - { - "private_key": "7cb5fcee66f81825f317d7b0302a4db4424c185afaa307ef61199e1ebe7b89f8", - "address": "lax1mqnazvcx9re7mncx8z87tg9s6wycg2pp4q2zc6" - }, - { - "private_key": "2aa50264960c3b5be8bed691f3446f3234d89be75eb659d05a7348149ffb6a88", - "address": "lax1zh6g3ge2lm0qkyvw4lr3yp8u49yq60fmnc2304" - }, - { - "private_key": "e8ee8b770846f1a96c0978533038726a67e3db582ae6f54ab7bdd90fb829f763", - "address": "lax15qy5fr9dgjmwu4c30uf0tr5r9335rkmyg3d670" - }, - { - "private_key": "2cce0f099c3c4c9ae71282289f5b3bd1c14103cbe520c3257433b47845b208d4", - "address": "lax1v3vstnkgazzgek6s7jfjgrg4kea9m7ualjxh8g" - }, - { - "private_key": "0dd863f2da36505477789c60ef089a93a06ae2805c1c81a01a203051432cada0", - "address": "lax190syy2acrzme2rjqxmm8eluv294cn8g4cpugf9" - }, - { - "private_key": "0d8048c8741b9a92c3986321feff18b0531205e49f6b4970d3720fc3d91ba81c", - "address": "lax1egr4ys04ehpcfl4u786ddxxh4j0yrc8fz7k0rd" - }, - { - "private_key": "cfcd95d5f7759afd67f267183d5d099ef4759dc1015093b6cf2f0883ff1be8ba", - "address": "lax14h02swkf65e908vjldrerexy0g9c33um6c86hd" - }, - { - "private_key": "bbef0acfa637d1555f2806e25323627d4c621465bf6cf328c27f13031c82c372", - "address": "lax1g0slhav0whe2qv64p00a6ehs4qn2tfgcz3kfqm" - }, - { - "private_key": "6b71195e62ae11407afa8bf7d612c61efde85b12363e5ee541e513451b299647", - "address": "lax1ldgqxaqtw4ypdrs5cqy8epzp5s7484hhj54cqf" - }, - { - "private_key": "a11c711efb8f04932b1c25ec8fbad811137b8005b9cd1cfa4cf88644c0b72f2f", - "address": "lax1vqhn2y0vzv959ayqd3x0nt756qzr569u7wyuau" - }, - { - "private_key": "679a6add0fce74f4e34582f7afce06db2e7f207c1e0127745cbd274c34b33b00", - "address": "lax1hqsnh6j9ylwrxn5gy9mrysrwuzqud0h6hd4wmv" - }, - { - "private_key": "94bf58825ab3614103765c75e16fd621110c01d2214d424e8a2fdce07f042cd0", - "address": "lax1lr8536t56pvd8kq6xvree03sgrtvh8ujyz09ry" - }, - { - "private_key": "9a6e1fc673f9f2fc02d481d058d671187507276d04c571850bb3f88ed25d4cfb", - "address": "lax1xqdy2se4upf4z0t66h8hppyfqud96w5yc6v26x" - }, - { - "private_key": "230a44cd136ea4c518485ca89afdf1649bffaa73bf59a28b2d074493b42fe0b8", - "address": "lax12ju9cxwhsg9knmzt6v6y690nszzn96g44jscpe" - }, - { - "private_key": "86e6a671aa31801460c038c09f8aad5682117beecbecf4ff8f8fe297962ffbc4", - "address": "lax1je5g0hvnqmlatnu4sycgjrmw9nlm497d2gak6s" - }, - { - "private_key": "d327a71b24ecea9fe3e3fa5f1d8c660a19ebce07336d166e0d56c313be0fa315", - "address": "lax1sw3ayt9jayruyu29edccznl7mskyagtdc980th" - }, - { - "private_key": "9ef8bfb34f31249f9ea3ba8584c522a461216f78d86b8696e0e4222119638edd", - "address": "lax1vvpdpecmvggjvryqu64zvhhvt5y9z07dma5flc" - }, - { - "private_key": "4196c8040054d4002119dd7abcc964131d159909e28951a2f399436e5a4665f4", - "address": "lax1vemh6kerfal7ee9m7h8aawjrxcdcj00lupgem3" - }, - { - "private_key": "69a7bb2e3dbc09a6cfeda37c7c69ef5df5aae26623bf1c485e52439eee7b2f7f", - "address": "lax1aqv2y8enl2zqls8de58edg2wqdwv90pl9u924y" - }, - { - "private_key": "f0bcc188feba88bb1433452972f8b5f221067c48387c84bd5b68f9dfa2c7f3eb", - "address": "lax1eqf8sklj6yqk7cuczvgncs0y4csxn25vr5gtsk" - }, - { - "private_key": "aff336780ebefdf08349a2580251c1ae73228c7945649e627843e8566ff5d9f2", - "address": "lax14e4q4t6atsanp7q032jqv34jq2u87c0nafxm2r" - }, - { - "private_key": "9fce2d50937e9060bba3ebf332fb2209a50b4668204e682d965b151c1393f011", - "address": "lax17y0mc76qejyy5qph7sfp64swl67sxqyyznva6n" - }, - { - "private_key": "62ebfc162e555c5f1ff2e1deb8d0fdd3ae94c5bab86a7a230263f7e88d1acafe", - "address": "lax1ammdddaxn8n2sjkmuq62evwxj02fkk08n9tzjz" - }, - { - "private_key": "da0ac1d476ed073df9d085704aadd793e7b7f2065e60bebf2d910c06e128b853", - "address": "lax1a7jtqeqlc8qg0rdlutldvp6xtm0vylem78dz5c" - }, - { - "private_key": "9f30b35b30f314c007db01205367a36ffe7eebc9d006ee39f0d4b7440b6e3bb6", - "address": "lax14ljvuun59jyut5tu7yhxyahhs4y37n4cy64nth" - }, - { - "private_key": "8db8ababa7a4e83e3bf8343856a993f1985d6f086fb74de868e455f41db8d96a", - "address": "lax1xhqln2vxpz9xts0x7esmxp8w90xgw864hf9fs8" - }, - { - "private_key": "90d81172375a40a088622ae6ffa953546b27fda9ce348120a0431b39b5970aca", - "address": "lax1ggjc75u48ckh5nakly80aygl535vw7nflr4xu3" - }, - { - "private_key": "edc21683297095e967e53d9094c1f5acb47d50a113a2112d0fe03f9607ccb2d8", - "address": "lax17p292u8zl97ddxzl3975d5pxmuam58flfqewsk" - }, - { - "private_key": "e5d9b272cfaa3d49871488bf5eb1fefa42e7db5d5910b1e6e956e52e5a2a5d0e", - "address": "lax1zundggvkw2wlg3c8xm09x09lfhq5959q9xlefk" - }, - { - "private_key": "a26b20b3457c70602a7feff502cbb25c8132b419bc867f5f5977425492d8cd66", - "address": "lax1dvvgnx82ne77y4tcp8zgpvel0hj08yd0uh069s" - }, - { - "private_key": "cc044b76fafbbed8b5fa12ecdc29be19acdcf4b254c4bec6113c5acad33100fb", - "address": "lax1mkqn5lu9yj9zx2drk438sqjg97lrpqu8gdlyte" - }, - { - "private_key": "d0ede329e6d896236e7d514f8745e0173f61558526fd768971eefc903caeffec", - "address": "lax1fv9r5wt9haferrwflv6akxv7ujwvchjx3r4ujl" - }, - { - "private_key": "13c296cfd65474d3d33a947044d78905206ba2bba03f0c27ad625ff7e2fc45cb", - "address": "lax12myvccfattmmu8kza00g7jkw9082ah5mgjshst" - }, - { - "private_key": "9f56c58f9127ef80f28c7ff10aa569d8ddd5746be6a8947bf032e972879c6e9f", - "address": "lax1uptngehd2pscklpp3f25czpphd7n4ysxzh2gt9" - }, - { - "private_key": "153eb4377ff2a66ecd543cc6c2ab2993ed77a6ed36fc555245ed227e316e01c8", - "address": "lax14k4wzdjnl8xy59ra6htp4py7uyf9vxud03qdtn" - }, - { - "private_key": "e1211057b5ed4206b6f67faa3ea1295d4762ecd7d44c83f96cb3465313e72485", - "address": "lax1nn9ejedgh68mp5ghdeax3sjqm2sw6kzakfsgtt" - }, - { - "private_key": "c3541f03c4e1d429062454661cdd1624b8541f7b9fca054078cd95d50ba0d051", - "address": "lax1wvl5q2fjyumc03g966p3hxuy0ry6jkmcswfvt9" - }, - { - "private_key": "f2bf5fc858863a2ba6ab49f77cd3ca91d756cf6676163efe5476b6f44202bb4a", - "address": "lax1yngefegdachnthjyp7nefsy9zgq3t8024wugmg" - }, - { - "private_key": "c1336e19539ef0a0c4a6c50d510cc807bfb4b6e6636d39686f6b81b930157d5e", - "address": "lax1xceu4cwl7x4m0963yez48nnestfr5a8s60hpp6" - }, - { - "private_key": "ff29d0e10c73630f5c4a0bba3cb9b8a5712ad858f455b23aebed1f3d27b71b47", - "address": "lax172u74q3t964vszve59aj6xeley76ey7tamduv8" - }, - { - "private_key": "b83fe9fb667537a82c310eda0d26c0444a3f6b0e1b4b121918460bc115c04c49", - "address": "lax1hjj2l5tk5evagk2gvfh9rqw2zsh4ahfa6chqv3" - }, - { - "private_key": "1394aa1e36c2050b5e05ce56edbf9280a1522c56491aeb3abe3cb5e0eebcf141", - "address": "lax14y3v2qp9mte2dky5cpp2cg0d08wmcmgjgrhtcv" - }, - { - "private_key": "a98376e3cf01e4f3845edff456d7f541c9abf68e3b79abc8bf77d6336b849fab", - "address": "lax1eqf8mrk2kr83z2yrlrrx28e0ksvqpg5jucj865" - }, - { - "private_key": "8ba8354d6adf1c6c78c377edcef313bc819a3fbf1819c98be041620f92437d8e", - "address": "lax13eqe49g857v8haesz87uqkn9hnncpn8gyavr3p" - }, - { - "private_key": "6ad2c92c7a4fb2bbf5f4574ca52a1ecc135f2b6ee2a3a10c575cedbac93f52aa", - "address": "lax1ynkjqaajz9hafksfdf5vd3h5llw5m28g7vyylz" - }, - { - "private_key": "98b2fe42b9ec68c11052fd8044f1a39f05b0bee7025d546fba488dceea3e9a30", - "address": "lax1mwdys4slkdm3ng567488dtads83jshuqcy8wqs" - }, - { - "private_key": "86a0a31d90dd06e3c05a40279f4d5f373ba02b5211d50526d26b3dba6ba9b1b3", - "address": "lax1kkadjnl2du8a6rk39nnu06kdchxhf4v9qt0zvj" - }, - { - "private_key": "4ec91837615a0d89a692e66897a9eb25249e52cdd40aabbb06d9c3b5e4d6674c", - "address": "lax1a46t6tlde9ccvzazw29enkc9zdvg8rrhu8kdev" - }, - { - "private_key": "b4195d2bb42229ab19736af2dd33ee73a066a7d5a8641bdb444584737b152ec9", - "address": "lax1rtnfkkpuwwy60t7f7nm2k0zl7japrd2pxt3m0k" - }, - { - "private_key": "abef837ca4301fa7097bfbe556a3b92fcb6439a46719367a9e1b342bdb0bbec2", - "address": "lax1x7tcvayl0euyfj8mc0xvvjrrcsl7l9sln9gu50" - }, - { - "private_key": "cc5bb7f4ceada09d865b32ccb34b80239184ad0dd945b30377b840e4b23e5c50", - "address": "lax1xylpj62fmze37k3fnlgcee54yldxt6ghcy5whc" - }, - { - "private_key": "6001c0297e37c71031e825ddfa304a25eb217128d087b24f315390a53ac9400d", - "address": "lax1yyvxmm60hu95zquyvyma2533v470gsp8ed389a" - }, - { - "private_key": "07cb6542cd550792cee3e060b7c467ffafd46fb8fda277cd9c5d68911d1e1f8b", - "address": "lax1f5xhvqlzanxnkx3yk5e5frk4nla2mxhkg83czl" - }, - { - "private_key": "8a10b80a68abed5130e79a011f0d756618c461a7db57dd305c2f809a013b0e60", - "address": "lax1x4ukdup06xjgejj4qxqd64sg35jq0z4dz2l0az" - }, - { - "private_key": "f3083845de48eeafa8525637e88a3d3f6ba077d11bd43e9dbfdfa49bdfbe783c", - "address": "lax1jkq4nqul3k3nqz445wnr773rzxrwk53xngfk8w" - }, - { - "private_key": "0089d5ced3f715337a0fc0f0786477fa069c2f38bf8bb9d70e389f684237e27f", - "address": "lax1uh7s8mqhafk8curhpkfcyqkmgteqqy8x7srjp4" - }, - { - "private_key": "08fe51f2576ff7df8121a2e11bcc8cfb68136abdb05b24e83cfc3277c9aa08d3", - "address": "lax173k7at56n4r3yspmf5rsyk544whcy79gshv2hv" - }, - { - "private_key": "d5f2e4f3dbeaa9680b92a487e6711fcc3b9b536faea1b1bd54a2d5165688b8e0", - "address": "lax1ufuqvyr2vaepekr69v94xs6p8exhu0w9l2zg4r" - }, - { - "private_key": "ef94be602fdee33512a9a645d1da9f6f4fc71491539f5dafa5ae28511cc3dcc7", - "address": "lax12pwdt88alx4hzs9m5fezfr658r4zya7tldmqr6" - }, - { - "private_key": "760bb720eb479b1596b286b8a675041e1e2420f09fd040fac9f03e4cfc50822e", - "address": "lax16az6flfu3kuk4n3mh7zc558rdhrhu702lrr448" - }, - { - "private_key": "7fea54efd8a2fadea38c7f4fe0a5790fd5e176e626ed8b785d52160f060873e1", - "address": "lax1hw7zkgc4tzd52vd9glfrg3twp89lxu8n4tq86f" - }, - { - "private_key": "a22fe970fbc33565b3bad52a6bb4b4894153b30667399faffbcc6054b4545b4e", - "address": "lax1nrnqg64ppjz3tw8dshu53nq3gs8yt6zzueucqf" - }, - { - "private_key": "b31b73db6f335392c3743dd75ffc2e344875e9febf6b11f1291d0b8ec3ba4b88", - "address": "lax1uwan2xzmafrv774xa49j0r39972ps6ycqskesd" - }, - { - "private_key": "ec701f8523a58fd991b3fba2a3591b67fa376db8da5c5841724e3721535a87f1", - "address": "lax1qfl95z7ckfgjd9ws4ungqyx32g76j90lm8w8nh" - }, - { - "private_key": "0f7a887bf037b3048ac50c79ee9ed88bdcbde24c96c6b6a392d0df6b9edc7c75", - "address": "lax1zzagl9dd3dua75n2jdkcu6vm67te8vxf860see" - }, - { - "private_key": "206988514b8ea205fe0983aee73f524915a8e675a526efd58e0abde0d06e71c9", - "address": "lax1u2ncwm33ynp3mvtf096whztwwwas2aq9wjd7wh" - }, - { - "private_key": "b3d31123a7d4ed21fdadcff1efed7ed490207aa193d31dcb01b2968d95baf7c0", - "address": "lax1zjxqgg8y33xrgr29lhwxhzrte99uz2snf08wd7" - }, - { - "private_key": "4b682e2d8a828ba93ce531c40243718f03b1fc7bdae1e2b14059f2760b77aefa", - "address": "lax156t9geq9d6zk89chcvppc7xxu3wc3hle3g0txq" - }, - { - "private_key": "346625cc63e7bd719e93bff6c29442c11b164c8d923463254ebb42f8ddac93b9", - "address": "lax1ja0t6m6e4mtn963w7nyz4zrcp7fs90k6lqqcj9" - }, - { - "private_key": "22132a4f1d16cbb51e9e308f6b02240de3e1aa98c0acbc015732cca2cd5ff228", - "address": "lax1zkdae03pjuvpg0r0redqef4e66z4xknrx7z2ha" - }, - { - "private_key": "85e6af7247a19de236ef76c5d29dd8b8712f0bc2892d9b92e5e3503261c23af6", - "address": "lax1k6zppxdcpj88zmzceqqua2yjvnvymk3585rzrm" - }, - { - "private_key": "ca5e572c1ccc5e7f3995060f240864e23d6bfa6a61ea2c8b18e439369310969b", - "address": "lax16enzqwvdlfr9nuq9xmymlg25zka3fe955r2cjk" - }, - { - "private_key": "3110cc7b617b627ee689e27af6fbeecfc6799faf4a75af765ecda4ce68feb782", - "address": "lax1z27kxn7qppgrxn4mg8wnc5phmk0q0caakk7r95" - }, - { - "private_key": "2ca197dc1c18ae1408182bc84baf9519fa5424ed0888de54060cda7461c72bdb", - "address": "lax1626zaye3dqdysj5jsgnxt47pwh093tk87m48dx" - }, - { - "private_key": "3c2790e9fcac2009c3a3cff0ca5156d5bbc93150341ec8f3db13db9214e5f903", - "address": "lax109lj0cyy8h290emv9mquvsa0ycjw9kqzjhge8u" - }, - { - "private_key": "c523c4baec51b7767e31b4437f08138096b1e576788615bdce88a3db2ce6b1fb", - "address": "lax17nuxdwu0u9guphcfm5kkvxn20xys94l0vk68md" - }, - { - "private_key": "619c94a9a78b39571b82883a2325f79616dd4695a620d68e7fe312bfbe19b182", - "address": "lax1l3e94rphh3pcuumylg5tjhp33zkd8nk3k27gya" - }, - { - "private_key": "8161a7fc8eb0e61cd3e9b1b31e3af51510e3b78347fa1959469b38b250be0e29", - "address": "lax10tmp4z6q4h85a5m9y2udm6al33rv5tk3rqrv4g" - }, - { - "private_key": "00ec33ed3b717ba8b704279e2169096eb6cfe7900093eea622f0387bf19ada19", - "address": "lax1usl5dnzl8ldss6amaa52jwhz84g0vnnj9h8zpq" - }, - { - "private_key": "d2f8962c91dd233a65bd0ffdd18480444c33fb1c71c8f7634ac9debba1b3fdec", - "address": "lax1ft8a75kt9fc0wzxrtrhz03k8pg3esmlts2msmv" - }, - { - "private_key": "5fa89d4aa08ac9f22b76ff042a695b596ae990470a60c1009ff78aab7fb50b4f", - "address": "lax1fmk0qc4hz833d22qlf279xvg9ryjqmlmll4jvh" - }, - { - "private_key": "b92fa16c10f729113c8c633a744963b6b5a91baedb8a1bb881e64b744569988a", - "address": "lax1hxnpdcrsksd5fm5swse2x7lpfkd2504gdjkgrf" - }, - { - "private_key": "6731d86946345ac64cd37a8499c4735670460a2d2762822575e17db833fa242c", - "address": "lax157j8s78fhwz62mpe987tueswmtdephk9mxy053" - }, - { - "private_key": "1b41a3d0d75ff17b712c152ff0694b86dc16a5abbb7be4cf7bcafe2949076444", - "address": "lax13kg2hknnz7s50wlt508vqd3zah3ajfuqt7kq0d" - }, - { - "private_key": "9662ca16b2da36c7f383a72f48eb61a97d64a0cffcc07bd5656c3a8d148411f5", - "address": "lax1gzlk5a4yre2lat4xu93lh0hwjm6rkhenkx4f07" - }, - { - "private_key": "5bf94ade18913df861a17f97d98e2cf13785995e7198346fe4c911336069832d", - "address": "lax1xdau8psssmyeq87ktrqd7rrxsul8a92tw57ykw" - }, - { - "private_key": "9d7b1071a1a5ce2a64cd270a441af60ce0296d3721c297d01b1c0d63c3c2f97d", - "address": "lax1ptzu0chxym4tqkt54kygjw09p8s0mxu9u86q54" - }, - { - "private_key": "6055e97b886a6b56a0b0d2cae353f5d551636016be41697f28b844c67a652754", - "address": "lax1ramgxvx0m6tlnz2qjrm832dy24m8zw4wq7nsyp" - }, - { - "private_key": "0715c4ffb4ccf7d589525b44d0159dcb04831fd5c047e0eb7e57b832e3da52b9", - "address": "lax1zzpfjxj5ghp0j9mly89xnczv4g2v6yz8m4rdtk" - }, - { - "private_key": "33aecad69e3f28127c6587ac5d0d265ba003f4d72c8e2df13d99b0122d0d99e1", - "address": "lax1p3erq32y4wmw7aqwj99kc803gqva6puxde9nn0" - }, - { - "private_key": "dea7aebc7206d84f3b926d69c7a00b529ad7303112db7c6614dbfc2b76a10ce9", - "address": "lax1mjf5ka2pxzhgdwcflsy9pz33uylg9nmdpgppy3" - }, - { - "private_key": "c8979252e679261c06631a4e983bf76ab5b846f38db47554831c2c99bf29ea85", - "address": "lax1r3z9mqwya85qj22cd2v55zx79z9e5m85n0fm5a" - }, - { - "private_key": "1bca28eb2522e29f54eb1aed451376e64c3f08fbba9798ed3c9fcbedbada8d45", - "address": "lax1ptl8ugx9hdc5qkm8ax843pcgwyzssq0zu0jz3r" - }, - { - "private_key": "5a6cd9b61c9bd446c6334868ae382fa0b5a67cab2fe862c485af7587f8772b04", - "address": "lax1y7dnqyzngmn45lms6e7yjdud8s4rsvsr9umf5z" - }, - { - "private_key": "03fdcf8d0d805b1f40dd01b3c92d18800d98c4abf7922db2896c3e4e79234324", - "address": "lax10ahd6sr3tuew69evspztqemuskld32h7jawfxc" - }, - { - "private_key": "3a71163aa218338f13f26a72c1121e84a5d7d0b276ac2a36dbe96f6b8ad68e3d", - "address": "lax18x3jx50fydxrlacu00jfzpxy3f4u3n00ha2hvu" - }, - { - "private_key": "d9b56426cc557165901cf75d7f9fac3d1cf40b5b64534bea6f827f5bf9837128", - "address": "lax1z8yd9pgd6g2t3gva3hr9ds0nd2d2ns87680eqf" - }, - { - "private_key": "7ee952a679ed1e2c03947a1b038a87a776a525c208e0483bb7865840b135c2e9", - "address": "lax1cpr7z8sfattcse4csthf3twd393e4hlumckt4r" - }, - { - "private_key": "6f0016eeb4c458c677ab685211f6f4455009131d080ff57c8e2cc601394b1253", - "address": "lax1rqy6re3ds6a6kdj9ya5w4f79384t5lgw6lwu9r" - }, - { - "private_key": "ed9ceef7ac7b2f538a17d81ea0315178041c28f95d47a9abf6192b92a2a53ebe", - "address": "lax152j8r087h7fzj5h592ud94p3c09m3czkqmn8y8" - }, - { - "private_key": "c6d8d4618688ba3253ba0c7eb522fb0b51cf1c60a89e51d56765391bc046f69e", - "address": "lax1a3t43g373h2exr3sdqezc4xfc8tjh9ru4c6p4v" - }, - { - "private_key": "d5d8c9ad3530ac216c2e9edc33d6b27d34117462e2126abc1fe4e739cf00ac54", - "address": "lax1jw2gqkcl6vc6wsgnsyxvdk69hpnquvl5nxx5pp" - }, - { - "private_key": "d7a63f2f8042e70b384c474ec3357c6a7226bdac0faab8f107c4f21c659f8907", - "address": "lax107qkpc8vu6jjwfxqgmjms8ty0zxln9sxuufjus" - }, - { - "private_key": "190f86db37a3a942b3c9c126860a6b2572d4e6640f3d69347144a2c676e1c56e", - "address": "lax1fylygv6ja3tthua6mvmjc2jtmjgkzpeq29my0r" - }, - { - "private_key": "c55ff3cdbf8261a5965be217fd77235c4b3348f50272749600c3c383bac47dfb", - "address": "lax1dx5nyx860lx03nmlxvwwfpw8695gxc04jdjkyz" - }, - { - "private_key": "34e89c43fd75665dd2490dc4d07f202364653eecffead9308b7343965b8843b1", - "address": "lax10rzpnmfa42yzytuu7kxx5239ea77pjedd40skr" - }, - { - "private_key": "295a9fcc00ea5df36e313b9015b85b085523c975475cfccfbf77c5b2571f088b", - "address": "lax1dalgf22ux098s6dyqmsl2dxzaenujh2unet7xf" - }, - { - "private_key": "40b03a5319018bcac4dcc2e5ac23a41efab213b613c095d4b701e345dcb9a3d1", - "address": "lax1p9ugaxpkn8t5yxwkahfp3srng6aszy4m66yyj8" - }, - { - "private_key": "ea28ecb5f0a22f27595f3276f5fb522dfc6c5c58b9f717d41886d3bf14793f84", - "address": "lax1r7s2zuq9fj3pxtft9acwnjpnkhru9sx8d2hr6k" - }, - { - "private_key": "0b547abb07961cd9fdf0f080e84866bd42d160059b63fac19c199abdc61051ac", - "address": "lax1r26c20gwfhwljqreu73rxsaam39vu0aup94pn6" - }, - { - "private_key": "512bc1929a79166c14d608d28e583917627b5dbeb5f8d9ee812deba82ac3b5b8", - "address": "lax1hachu37xejygf2k59x79mux9zhjhvtr9c6erzq" - }, - { - "private_key": "1683c65d4dea8fd7b454d2960fb22f271c91f88048c42f3a4350868082cc6b8f", - "address": "lax1u39luk6eu7t33rusdmk06jmwvf08wlvfxen9k4" - }, - { - "private_key": "8fa886445f3e093dddf51be30401c44e5ceebf519208080610f0e8ed4a205ce8", - "address": "lax19uaaklehahh0u6mqlmct2uvkr4ap0qzm74c3js" - }, - { - "private_key": "7574bebd9ed16fcc9690501f5812eefdd985dae9f1ba7da91e5a4c3deb379349", - "address": "lax1jwj4695r944z7vmrlm56m7prhwqsclav306sh4" - }, - { - "private_key": "7774c5d78719be44849f5984d539a812b037640f9c93fe05440075a41baf6ad9", - "address": "lax1wqlu35uqrs6fcxpag5kjz8d2l3jf482hqtnmmg" - }, - { - "private_key": "a4269fd432dcb4e1666b480baffaac4bb812dbf58578ce83cfd4d1bca1646d42", - "address": "lax124jn9yss9tapn8py8msvtqnamy602u3wze8udk" - }, - { - "private_key": "70cd32302189fd09bcb96ff31fce09f87c2a5a03a28c69128644a2e52f9d6fbc", - "address": "lax1xua5a6rfsfrjlg7uu5demtsg3yzyt2mfj3t709" - }, - { - "private_key": "5d7e26966b319dbf02c37032e7a5e413e2077f46df7cf38980222ca18048da7b", - "address": "lax1309tdrlpl63zlemrg5frkg5rhlq74yc6pz5dvv" - }, - { - "private_key": "fe01bb869e491337fd4a6869dcca69baa435cdccf521f92aa1a376d948cbb113", - "address": "lax1n946gmrat96d76rne4u2cd544ls4j8e2830sls" - }, - { - "private_key": "cfa6522f8827569f00417d3622569210b0b231051c5d7b79a0676264397ba65c", - "address": "lax18laj44n2uxt9zdw0ennl62zul4dq6ndsmfyga6" - }, - { - "private_key": "9d93c77e3ab4170ee3140a138252c74ddeca02a9a0024c46d181c7a35640f3ee", - "address": "lax1ywz04krwh55ydqa0ygvvvgna3yc0en54xfqg44" - }, - { - "private_key": "627724319ffd3ac9983800c45b59048c136cb0619bc2f069b04fbd11ddec5c4e", - "address": "lax15fe9sdarft9uyksdzr5qveypcraph8gx988dtm" - }, - { - "private_key": "79ce47eaf53a8e139bd091147338d3036e7d78cba8b89fa10421ee0f1da8fe61", - "address": "lax1wm5seltsymay6z0445sl3nrx3ut6ggwvtwax6f" - }, - { - "private_key": "18c9e31ff12ea18e0b7ee33eeb58fd7fc9ba701de93ede5fc995cfa5afe87c0b", - "address": "lax1j5sy37y77dx6g99t8qql3vw0w32m55s8lwlck0" - }, - { - "private_key": "aa43f2c5bd7733d4372497a9fda2f21a42954e0d87e92c434924da3372745538", - "address": "lax1rhvq53pl9yt2lt5qwvwyymzsfrc8fhjvdd5tce" - }, - { - "private_key": "6d375b63f820c69a68c2ca871f6e31ea1c316b1247cdb38c44b98e83a9f0bde6", - "address": "lax1xtfvg8vk4epuzre0qmgzhenvjgth9exgkflp7p" - }, - { - "private_key": "ae362b602ae8543dd7544ba1032a054470e5fce140506416680b4d59e4dac207", - "address": "lax1has54krfy9mhxl9pznrhl3425azvmk6jpj5eag" - }, - { - "private_key": "4dc1b9f3e794ef5e2307e1d40a713a1bb38c6da924455a7b580f58a616464a90", - "address": "lax1mcnkt4nx083gkaah7gu4zlvfuhgz9sksyvzd3s" - }, - { - "private_key": "6b5ee48c57671e9b5d6c83849cd13c2dd381cd6bce7fbe46b4a556f3c33d8d58", - "address": "lax14zhx4z6dk9xlmh03nt9rqvv5hxt8u60h5hpwpx" - }, - { - "private_key": "07b923ff7feb058cd5eeb66c6255ed7e1c6ce3ec523a1d121c9b7378b35b6a67", - "address": "lax16aflhqrf3hgh4mhmvcdnv5nwqm6c7h03f2xg0g" - }, - { - "private_key": "de9ebf8880fef9d022582f05168e3756a2d64683ac2b88e605087272c2621c86", - "address": "lax1vnen3vxufyfw7la4u8h8suq9dvuktvqkmara84" - }, - { - "private_key": "b19130bd47fef3d9d717e55733473b817ea3a374127d41283e640e585cc30a1b", - "address": "lax1clpuwe4u2ukelsv8ua3hsyqttz80746lrwsdur" - }, - { - "private_key": "2ddfb6e529cac6f095a9f78fb9c3f3be0b945f76d4a6f5bdb2c6d11531f074d3", - "address": "lax17xk49kjlg63nv2j66ufcg3fg64htvsxk6pjnfv" - }, - { - "private_key": "355bb853417c5549067d29e1bf10ab259c9a9a5b65f86a4e9dccf3a115028e01", - "address": "lax18rwf6m8zsr9u503hf9au3jzk7kwccg7fw39pe8" - }, - { - "private_key": "d3891e19895920766f988ce1b633434c7ff31615ea8c3d1c4dbb4a90cc5e87d5", - "address": "lax147tu3thd62tqajgxy8j2z9qghsdms7x6juy5gw" - }, - { - "private_key": "4cafdc922560037b9a5796a7b9af4390c2f0f29cd6723d3e846be28ef52d3f10", - "address": "lax1w2fypju4c05hwkk39zk55ndkpw3dz0ugepae03" - }, - { - "private_key": "e1aad9f0370deb1f2598b187b757d8c5a4ff5b9c217b8c87f9edf7667c5b0d33", - "address": "lax169f9p0z5376drstj56hn9zdxk9yesmechrsqna" - }, - { - "private_key": "0eb5ba6bd5afb32356c74c4fc85bb3e346487a6640fbf23fe25d24c1a9f5a338", - "address": "lax15e79fenwq7q4akcvf9c4lzyvexwg9657cld647" - }, - { - "private_key": "841638b8948e17536a996dd065207c24a2d5d077b75bd33e88d74ece03194567", - "address": "lax1ma45nvd284tajderhfa74vtx9tegs6xdl92dg8" - }, - { - "private_key": "3c1c23beec5d6619f7fa5e16403859c164b774cd0de8f38f78fd1149ea72a3d3", - "address": "lax1aper0put6zl23f6lywv7wpy0clzcucac5nvdvg" - }, - { - "private_key": "fe30c615ae6b19af57b493210df3dee43d24a01aaf1e64c6b304676f6b61027f", - "address": "lax1qhn32emm0pfcycl702ekgrz8euraqawrw0x5pv" - }, - { - "private_key": "7e01d54d6a85ec4b239c6da29c16d1e50c5d879aac51ecce801b5d102b3d11c0", - "address": "lax1p6xhtkcdpaq4mr2keu0cm8674f4j2ac3qn68pk" - }, - { - "private_key": "b1ee03e9cd91246b51c09af17d38df9ae35f281bba75bb063307803c0dd0871e", - "address": "lax15c3dsc202xpfmmaw8xjz3yrg4t4ph7aud5ldee" - }, - { - "private_key": "ad1a47a9fc18a9a2a426a67f682f88c61711481b3cf7540ada6794cf120558c7", - "address": "lax1jq5w6wpsmvafne356rph92std2xlx5csscgd8a" - }, - { - "private_key": "8e78293d58b40dd32cc105e4ad76790c6306771d46c98481f7da7ec31a118d02", - "address": "lax1y28ndgah5h2jw07vzdv3d870qw0z38wtaprt3n" - }, - { - "private_key": "e3fedf747e3f8d3b1a8bca3e2fca5f2d85cf69f583529b000f02e3f285ce1cff", - "address": "lax1jyccyrqsnjp5f9lxe4p82hu8v5yxxtftd5l9hv" - }, - { - "private_key": "02713ae04a2762a8e3cbf6f15ba8faf9d8f40b347a81697b8a25b249f80726b5", - "address": "lax1c2vwv0c5a64e06e87jdusek92wfveaypcmvlzh" - }, - { - "private_key": "046f2eee32acf653a517eeba6f9e7b7827431e0723a9dba746d1b5fa895a8ef4", - "address": "lax1z6sd5h0g33j9zmaur72sd764w7djw968a4nvum" - }, - { - "private_key": "9fbeea80274b8ff343f36a938709af6d31d93dcd3bfd4dbbff39bb53c2e3daf0", - "address": "lax170pmu502638vkd0tklrtnudwm465zdufup37t6" - }, - { - "private_key": "60899abea2ec54731068b86b86ec833a2bdbfc24e180522dabbbc3594b9b5b46", - "address": "lax1364ns9fp3lw8kdr5qhduy7xjctz6pzuks9rs7h" - }, - { - "private_key": "54cf98b6fcac9319c274c0cbe00f4944edafe1eee563770a3aa80d4a4c52fe99", - "address": "lax1zp86petsjszk6lmsxv7l0vl925uq422858vhcu" - }, - { - "private_key": "f5dfd03d23f3c491af339827eb4eb7051dac49e26dbf465f55bd2e4578085179", - "address": "lax1yclxa5hz0ep968xdlrw6j50sul20jyxrwp2ak0" - }, - { - "private_key": "056c1bf9a13a82aee4057a64edaf0b5f69ed4a244d384e3da869a319de076f66", - "address": "lax1lefec8qc9sjq7uw2d225z7pppzr9k97g6c8039" - }, - { - "private_key": "87f854c63dce91f6b522eef9bed23f6c3b73ccc16463c7e206f544130941736c", - "address": "lax1x47z2z24l9wg2z3va45sh8g89n7s89gcffh70t" - }, - { - "private_key": "5eacee816fddb1a02827f49c402f5c35359fd21fee4d7082515bf47f88269dac", - "address": "lax1rapxuzmzeqs5vhl5h4sqw0zavlkf4e4xtqvdjf" - }, - { - "private_key": "b61c15c1abc1ffbe35ebd4a255ca17710c8d8378670bd4974d2b9046dfefee18", - "address": "lax167pzm8fz7w7vgye0c5dcejgpmnhtwt4hrmqasf" - }, - { - "private_key": "dba339ecebb30cbaf3d96418a5fa268541cb8401f38dd720e2e73744d4c3d61f", - "address": "lax10r0h2w0ry7hpzsuj4e3lzcz37d47h6rqy0a6yx" - }, - { - "private_key": "2b30b538697ecb6e76728a8360f0903d40961bcc02d9ffd31e22a9c182180795", - "address": "lax1aqhr8nfvnva3s5g67n48pukvjyzscnv4x3h79g" - }, - { - "private_key": "2d187e5ebda213bb808e453ae9c4cc74a2031db8ba15401efd48cfa7f9810512", - "address": "lax15tmn5rae92crv32uut2m3sprxzj424z5w33s20" - }, - { - "private_key": "bc53417bd0e46388b33c20d41032714ebc6758c9e460a0ed4897d6ae13e04de0", - "address": "lax1lpdz7uj3qp9aqmk7h8weegh48v3c7dggrja9k7" - }, - { - "private_key": "10b1cf6a4952cb7b2a2969e5bbb258a76860eef6e6228155b86217eb4899c9f0", - "address": "lax1pphe7u5g6vc0xaj2spda7dlxtyzs9n82swct3q" - }, - { - "private_key": "0420c8f79459486b1d33cd693acc5049cbe450f1a783ca97799a9967c90ab2f2", - "address": "lax12lzvq7xvtlysx300eqqxldu5he335zdyyw74jg" - }, - { - "private_key": "231a8df1037186bc98011084c626c6bc542c9934249979c01cdd44f180a541d6", - "address": "lax13mk86alece5tp6cv3uct6d7qpjvkye0uhh9uet" - }, - { - "private_key": "15516fdfe5273a6ef9629f02972a5ba6df13465fc3696ec30b0ee019a6127c21", - "address": "lax1gxlhehvd2hp3jvj3s2qvzj8zhzjnc8fzpkrpwj" - }, - { - "private_key": "0f5da825550124aba56aad20ad9ca100e423fa4c5f6fbe7c62579a0a9528a9a4", - "address": "lax1jsdqzm0n2ml0f554r6wnaegqer58c3yhvaxwyv" - }, - { - "private_key": "90c20baad58a72445843da3cf8ee714191c6b10e79df3264d0b6be34b7ed031b", - "address": "lax1wqpgqltqvsdfzfrrrpvkpxqs07ml3wta6wchlp" - }, - { - "private_key": "cf928d2554b86de890afd237d2cf7c7972459b5c6f1916c722e8aad41b8958c1", - "address": "lax19unyyzv0hpjwwszy8frahnz9hk23yd6fa0653r" - }, - { - "private_key": "f7657323aa09726008659b5bec0fadcb6f6f4ab2470a5810c0c4539f4bffefdb", - "address": "lax1fjpdhu4urxcpx2sjk68fpjv95hcmv5m6ehrs3p" - }, - { - "private_key": "e78843e08afd1acdc7241bcfc24e08d14eb7272cf57b0906fbaec701d5e51585", - "address": "lax1y3hfjc6prnj3ea254m03898yz4pk77gl0w2gfz" - }, - { - "private_key": "0c4d78469afc4b729bc84acb06ba8c1249f029a20aa27e292a3e82d1ac724da3", - "address": "lax1ld72vjzg9lknsg2azjmm40vmf4dvegrgwu9hla" - }, - { - "private_key": "e2ad042493d0268a68a73ef20b6b61fbafaa6753de4aff334aca6ebfb262f265", - "address": "lax10rylrc4awkmyqp7yx4wgcczg89yggzt4qsg6tt" - }, - { - "private_key": "ee22d46da184ff42114d8a9814f18b2d64550952e01cf16d2692a9691d04cd8c", - "address": "lax1gxj9096tf4kc9ghu8m7dzrlad6r2ctqrdwaxsk" - }, - { - "private_key": "6e7ef45990aeb8420f2a89835073995fb9c4ba3f954e8888e3fe8153130c14b9", - "address": "lax1s5qf5z8u9lkynckwvp93su4jxaxx02z7f6lwzf" - }, - { - "private_key": "4e1462a343f922be5be947cd6046e86862ab87adaf6b3ee0a6f8e347d4778e52", - "address": "lax13tc9muygklx6kmn4dd2f2s0wvfzgtpcxpvdn7m" - }, - { - "private_key": "b423060ee20a64e86da49787b19af2056056bb815c5c852c4fe31739fe780e04", - "address": "lax1392g40ulnec6z92sh9dpyv763fs0840xkgtj42" - }, - { - "private_key": "539c3b87645600c0db14b2f175ca0c678f5f33cd43c990d284872671714de289", - "address": "lax1swpwkym7eagz3m6lcl4ksrpsgtf7ec74u2tm6q" - }, - { - "private_key": "3a1a281642bb65db95e104824e2015066a60b7fb61b16d96629c3dd0e83b304a", - "address": "lax1uc58gpxgll2u2fs8j86vqajj8p0479je0y0we8" - }, - { - "private_key": "116e0cdd198671a79aa69db42776d95315f10e7ed95e037d981d407891d2b10b", - "address": "lax1d3f23dkyk4xkkfxn5ymggef0uen93k7m0549el" - }, - { - "private_key": "aaab07e4539f99a65de5021529bfb706ec63c65c4883bf594a7e6be5fefc3256", - "address": "lax1eu7lpswn99u7rr6ctqamz2vneljmjg2dawntvz" - }, - { - "private_key": "857f6df0960c150b83c760f2063fc95e059684319f31cff1671028e21c6a7045", - "address": "lax1ev59y0ms0n9gw87rus6a4tg62rtpcf4v8fv7n5" - }, - { - "private_key": "43ae6e529942b72d74ea820bf0625e07d9bca8640670a4ece43b88139714e48e", - "address": "lax169yatm3psrq8d7mta7kjczlecrnc4pkwmk5uyl" - }, - { - "private_key": "97a50cddc6e30e60183150b322e6ceb733b94b13a33672a3dfc5fee4ffebf3d0", - "address": "lax1nn07vvas9ra8jdu8598wh4aauuv6ht7mewlhwx" - }, - { - "private_key": "e6a0f97659873eaf1aacd6cd1711af5d3a8074fc7590f45296905297b367c157", - "address": "lax1t9pj583gmzaw7nyrz97a8pmv5z8jfkda57tl50" - }, - { - "private_key": "4ecb4a2399e116afa4298e3f2fe0063061a76e139e26daf2b7a8e0f959ea6c4b", - "address": "lax1sggmf65u794z7r0yu9fcw58p6rqe6wktu730vm" - }, - { - "private_key": "fb973770134f79315d41519e0589c4335a81a1bb3f7cf9e7cf187179b67c98b6", - "address": "lax1trhzlt89ngxcdzrjzww8kwswxgatlvgc24830g" - }, - { - "private_key": "d1984365c7e0eafec954017cd90be42e2f65bb751ad8e0289cbf20643ce4d21a", - "address": "lax1g4ccku2mezpjmkhfa8xj3pa2pn87wave7szujy" - }, - { - "private_key": "0c9614378a73dcdc8c0b924148dccdd27c8ae3c85824251112cb6b41d16fa39f", - "address": "lax1ul0vx44cm5jyc9mpugeql3dzmjzyjagydu4csw" - }, - { - "private_key": "bbd17b9673b32af77111caf6325fd1c105681db38c1f2ad810f561dda4624b10", - "address": "lax1hwcjj2g7rlgy5wan3x4lemypuzllppe5e6vdas" - }, - { - "private_key": "0d16c51665242fd50668e582be5729f2261116008ca4198db5a15875f7b7e625", - "address": "lax1gevf63am489u4aw8pcd4eqmx5a0xpe9qflnx47" - }, - { - "private_key": "3bb1a90d31b76a0aecd017e5c658d167ba1a75c38ac9bb63fadc36c3a9c9603d", - "address": "lax15tk8pmk86lhhjej909mrsgv29ms3j400c8wdvl" - }, - { - "private_key": "e16b4ba19fd50173f33ca81a085641cfba67108a5edce8d99d33f63a33f5fdb6", - "address": "lax136vf5ya07ttmeqr4jf6vamyd3yscwmy09tgpqg" - }, - { - "private_key": "4f921d727027ffdd06e5231ab332c7fa37f2e654cb358b1e8b97a8b88fde15c9", - "address": "lax1pzewnal5r2nen7j0nrs3zk9fgtxf3st7447yan" - }, - { - "private_key": "ab7bbe02446eb41e73c32d1855084cae2b9e47a8eceaa0391c8873815f5909b3", - "address": "lax1sxjty9u9z3tufhrca9qwqs2vj2leh3cgj034zn" - }, - { - "private_key": "30496d4ee3b0315a124ed735b7f0c450d88c1937fa5f62d066734f1e7fe603d7", - "address": "lax1ns4nkfp5ul6v4dkv87dl422a5kskjkr0hckmuu" - }, - { - "private_key": "f9db5654de844b475569941659fb6455981712a839da97833d4cff4a83fc70dd", - "address": "lax1td5uduemfaa297082juqlaxluxtdcrvwduufg2" - }, - { - "private_key": "51fcf37f5a3becf7c8e9af37857ae09d790fa06ca27a49480ecc104a6dcc89f2", - "address": "lax1w5c39thhpzc0v92200wupjaqxvq3rtsrx8essw" - }, - { - "private_key": "9e3bd05ece93f95f42bbcbffcb9acf85883267c2a15bbd53378283f76ab9f050", - "address": "lax1r35xccaff3xg3je9xjvvgmdf3dxckecj859z4q" - }, - { - "private_key": "e814542f7e431687aa5aa1975b4bb98f23f0a1268ef440df66d06399b6c11bc3", - "address": "lax1pg5ghjrape0xsa8r2nfxc3u6fa963ey2d6wnqu" - }, - { - "private_key": "59fcf031a9aa49e643d1c56cc3e490f9c2e445be7a09872f33e2103db4bd5d09", - "address": "lax1n5ldwqwf5pxw9qm44mhlvwdtevgwszwg9sncgq" - }, - { - "private_key": "ed6820e483363de926873c15b94827d8add4ac8a89b9e5a2ad7b30ef75c002c7", - "address": "lax1gn8ac0elvzk8w9qyvtz9gxlgqy06vhy9muxhdl" - }, - { - "private_key": "b08ca2d91054594c36d272648fd1f5e0993e77f2b785bfbb9f9d9d0dddfdfb14", - "address": "lax1hkn502dwn2xackthh5kgdpa5h35ajklnxjms7e" - }, - { - "private_key": "4a927547524b99c5127af7ec9947018da35155e5df00e72f9cb2f9b959fb4c5c", - "address": "lax1kx5lw70ycqvextuqz3xgx4ntcaku253yy073je" - }, - { - "private_key": "581134017f2061b9ed95566d479ed2f8521438cbf23ff76ca661eafa2303d016", - "address": "lax1cdyqnsvfhjwlc3sv50kzt2x5w2kxllddlspmjl" - }, - { - "private_key": "8bb6587940890b812f27d59c6b30bb95fa5168a5998ad801b382971944c9b2ff", - "address": "lax1rjc93c8kjkx2u6s7hnjp3m4xe967uqpzwaflfp" - }, - { - "private_key": "feb2182fc055a9f74a02e0f9426b069f81e64cc77e696d8c075462672af9cf54", - "address": "lax1l5ewax9ha0y8k8famepkxtfxwha2hvqc79xwyg" - }, - { - "private_key": "f6d04ffe47d44af94a031d677587c7a1632bba5b708763bb252c3a4186bef47c", - "address": "lax14sn4tj4ea4acgftzxmgxpkgkmjlysmtflmjny4" - }, - { - "private_key": "a55a6bb462d5b574791d376cd3fc5def5eae1fb892fc51a82d4c81b7c18be3b1", - "address": "lax1fctexrae7dhex5hc658624jff3aehchmd77vvk" - }, - { - "private_key": "aa8c7c4a1f20f6f9c4d257ed1574995ce83bf4174ee6084019159a2dd878fe6e", - "address": "lax1pmnrvnwutv6x8w6sk28ethnrmnyt7s2kxzewh4" - }, - { - "private_key": "01c3fa1bf018edca2dd9157e14b4752eaf29f48d3c61aff5df4c71950601222e", - "address": "lax1ansuy6642y44ra5hfuklsm7q64lyqhju5gy552" - }, - { - "private_key": "6b879dbebb67469792b6157af3c8529ffc15016bde5bb7270dfd944735a2d977", - "address": "lax1qftww58j403wxh6j2vh33xxntruu43jwpv5gan" - }, - { - "private_key": "a7d8ff8ec4faa20bcf8ca52499a10fed4c3ae9cca87cc90a8ad741cbb5f183c9", - "address": "lax13xaa3e963kg5xvpjleyshgyvv8h6py0jj4c7ny" - }, - { - "private_key": "b39c9ee8a782299f7e9e6829a07f9ec1cd1cc499b17cded66ff2ba874f4bbeaf", - "address": "lax1mtjyudr457rl9s3aku6xdyxcj7y9epmwxxfhf0" - }, - { - "private_key": "6bd491f375350b356a8555caf640047d502248a018c9f62e7e0a1df877676327", - "address": "lax1myyvg32zsrufnaaqrf6wjhh3w438gjqm73p7j3" - }, - { - "private_key": "0cc1d31c0fe61f8531bb067e7d04051586d2362f18d660b39e86cea5743415eb", - "address": "lax1xjddex3v4fjpfuwtvjzccejeecggqj0z0sm9zu" - }, - { - "private_key": "93cd078ab38e8728d6446ca215f9c3125c996318d0868f4b9e3b037325153071", - "address": "lax16zehy0zlt8a7e7lufyp42gjsd589x6l79sm7tz" - }, - { - "private_key": "870402651eb69e8611acb2f2b6163bfdcaca66754ce968d72dfb6fc6d56539d0", - "address": "lax150qtr9lr5403lsqtyrxt6ga382vs0qh5wa9uuj" - }, - { - "private_key": "1581fb4a67833a7c7e3a88b87f8bf35e5c2ed097332a038fd0e1475f3279eb89", - "address": "lax1lnpn6mgym9x9ad6zrwg2clqdknzg7e94am4f9a" - }, - { - "private_key": "fc692adcc48a3c4bd7d9087310f4a7e76c3ecbf82570df7b1b0b7abe1cb2fc07", - "address": "lax1faw64l5lupmct885fp3rwqs32mqd8aq52w0u44" - }, - { - "private_key": "fb17de75717faf343b8b0e9a6c8244fd1eb1c0b6c012f5024a4b83b018ed3855", - "address": "lax1k3cntf7m3w0yld3p0azv34jv96l3y32rj6ejnm" - }, - { - "private_key": "d0d29618f7d00ac1d89fda266e4b162b6f177b1bc81e0c5c45ac8822508fdb04", - "address": "lax1sretf76tjlz7t5p8hktzf4eda7duh62y08zq8y" - }, - { - "private_key": "48c4301e9ec3d73c0299b04ec03a75afdbe2bb9c7aef5ce256a484a722db4f57", - "address": "lax1s35mepwhem6w7529vyyd0cagkadlnlwg9qttd7" - }, - { - "private_key": "a3e3012eebf5b7501b8527caf65aceeb5aee98179c53da700bc7bdc32c73aeeb", - "address": "lax1gzlyfws0ar8e5lm363u2f7qp3xdajj5sv0al63" - }, - { - "private_key": "4b13329edf5bfdc2b02cebbb370b38b55fa1e5542b5dd93b776c4f8e4b031f8c", - "address": "lax1xvma3l79f42zydzhllrunl2ev5te9enrdn29ke" - }, - { - "private_key": "9b3c3ce82c87e1e6d48d0bd8fc42a539fb7f6808758cc2d1eeee941739de9a11", - "address": "lax17kef5shhxaw9f3za8gzqwk47ty555nc8ttzm0k" - }, - { - "private_key": "e60d1eb1be20bd94fe04256f296ca816b35adc55d80bd8bab1ecb1872fc2e4e6", - "address": "lax1emzax6vvdh3dsyjz89svufkkd704etgg4zey4g" - }, - { - "private_key": "f64bb7fa7d0612e711cda3ba41e79f7cf8419e851ee23ae21044639c2ac544de", - "address": "lax1upnhjju6swscl5ut4pa4wfc56nee3stx5avryg" - }, - { - "private_key": "515e93b3bbc54df120d01d5f8baf2ea3a8f04784196b9d3fc7bc78f532723766", - "address": "lax1gwrknq8sc36h0ur5j5vnp4vhpqq2dflnng6nmg" - }, - { - "private_key": "8eca1aa95235d279d0967a134aaf47cbde39094ddc9494eb3ca2b1472133263e", - "address": "lax1zg3v3hvxemhaadj4xx8m4q0rq6hqfd7hds6ezp" - }, - { - "private_key": "9b7bfb218e4d3bda62b527f9b480ba5c04fbefc9133637c7445cce8411d037c4", - "address": "lax1vscqnpll6rkl3zkrew7yd7lhr9zdntcxwnk5k7" - }, - { - "private_key": "302d3d3c43b1f440da74dfa34ae61337277682d31981794eb10df9f263ad4456", - "address": "lax1twpwrm8hdpxaqtx9hdgufv9k3jpzfkaqknkxhm" - }, - { - "private_key": "399d36e56f15be19988724fdf7dc44eabbc4a8a237e5b0fe8efb50b6ced1d725", - "address": "lax1mhe5fpcc5n59gllxn4zjwxnl6dqtsl4uzurupf" - }, - { - "private_key": "a4c804907eb79141e2d8bc356988353fcaf37a41d59d370a9a2c5c5a19bb7c6f", - "address": "lax1spcwt9y8cefu8jl90yxuvpryqa7lakcpdef7x2" - }, - { - "private_key": "b1a0b2cb32535553eddcc53b9b50754e3fcaf9a7378e56b7068010b45e0e4aa0", - "address": "lax1pdeytm0pljltupzjsvmcd2725utg6g2myjaasw" - }, - { - "private_key": "e8e7448c9e154204a82c2eebee063455503f8993b30b71b4f566a4280569f174", - "address": "lax1ccqtuz0fj6a0lwedy6hp9skny9vf4ce2qfp637" - }, - { - "private_key": "52146bd52ce78c80b5a0a7dd0f7155225bfe856def9ac308c89f065031a2591d", - "address": "lax1qyvax5xwy4jh53h05psdtyapkarkf3z6sg334q" - }, - { - "private_key": "f925e62cda49fc583cd4235318409152536585ce9c7cd9eb4ffa73d74fca8027", - "address": "lax1k2ccuek3qs45d265c0mqkmpfraqkrjfu5vl7jl" - }, - { - "private_key": "2b5d318f30dadf182fe4e26037c4bee8e0b0e8ed337ba52400612e5a5f7d62a4", - "address": "lax15j89x3245f5nprqgkkqg93zzrdjyadluq8qhsz" - }, - { - "private_key": "c08bb6595bcada6c9ef574d25503f1213fee9155425068664568b278b774b1f7", - "address": "lax15rjn5lelch72vw6fd5hk5rqnearjtdlernlfz7" - }, - { - "private_key": "56f0d3f9ed8daa1671ea5e705f4e759a43b9276d582da9c9862d299e4b0e9d3e", - "address": "lax13whu6l5wvf54rgdjkh57qlr8h9ldsncrkn0hfv" - }, - { - "private_key": "5984e7165d453e3583c1dfa69dd2ed433ef28697b54fb3b1eb38ba52ce1b29e6", - "address": "lax13eajy3r8achj6q2xqtgpdj57g36tud8ak6jatm" - }, - { - "private_key": "52673d2d5eef02dfe5b480db4443bb39ec8b2ae780f73531b9dbfb676b4fd141", - "address": "lax1vgng674d7h0th98x7c4e58kgf6zs723aja5ldd" - }, - { - "private_key": "e7a45ee8830fb33bcdd03c3a4489d18d2d43c57489118858ff19ad5d64e9a0b2", - "address": "lax1387ptem9zgalk4vkp2d7vhea0kwwc984w43wmf" - }, - { - "private_key": "67c6e57e926bb0ebfef512ff91f315e3629c02b64ed22b9b4092967a1003a9a6", - "address": "lax1tay8nzulmlt7fh80vcaanxgk95vggx7frlaeu9" - }, - { - "private_key": "64ed4b1558449297623c947eb40facbe8e3e7e6d2d691b701c545c4d7004c508", - "address": "lax1sagrmtpz5etc3rvtu32ypu884806862ylrfmu6" - }, - { - "private_key": "7146ce5f4fa489b9d2af2ff0561d10cdbba4cbde1ac0f9c3213877472b697cbf", - "address": "lax1devpwgkwvnq8nsr04uhv3zffl0nw9tyn5a7sg2" - }, - { - "private_key": "efd2271a3a28b27561a9a19a8f31ff301890e5351d3db36704b5822755eab1bf", - "address": "lax1au236uuct3ftsacmjzw2syelp44x2kharhk5cn" - }, - { - "private_key": "f0634a052b2abc3f29ade9207ab55918f407ec64243911ec0a19d5bd09b9d0ae", - "address": "lax12g98kk379h3fya6e27uny9dlfywh0mt4prcu7e" - }, - { - "private_key": "1998839725cb2b7c26a9e3488d1e7b9890ce41e165c9673555a07a0bef2407cb", - "address": "lax1ne09rqu9r6v2qrv7hu6rkwh9twhr5c0hvvftkq" - }, - { - "private_key": "3a0f98eea392e5a899271e703e97fc14020a09696ddbc30b8b1135a353e0f8ad", - "address": "lax1qs95lw5cywucl6hhw5ltd2w00fgd4e6vzmgmv9" - }, - { - "private_key": "415415ea92e24324df937da23adcdcffd19f15c886f86917f9a39f7fd69db3b6", - "address": "lax13exvp4sksn0p455cf2e8hpngd0tsfgelts5r37" - }, - { - "private_key": "b74aa3406b7c5bd6846971b73b3e3b7be2db4a6783373585e6cdbb08539fcaf7", - "address": "lax1qjns0vczd6cm6mv7ce5zw0fw9cekskwzgpcawk" - }, - { - "private_key": "2aa9647c72fede4896cf035e9c06af248af7dd752800916ccd757aacad574157", - "address": "lax1jl2a8cc4zmmlxmjvc66kct6cf8yam8wk6djmyt" - }, - { - "private_key": "f07799069046abc2fc9d9c0f0eacadcb6d1dd93475e18dce45b68254fae5df16", - "address": "lax1q6xg93f97am6e5x7waydhgplwsc0y6ldhl6hwv" - }, - { - "private_key": "88d7d3fba3fdb2da0bf41393dd5819e678996b3235432fe3b90429cc00c60c88", - "address": "lax1wcu4stsrqe2m0cgr2k29wqpdywdz54l7lad75t" - }, - { - "private_key": "3ac07c1bb2326bbdfaa8103622023c8576d9ba9c1f217cc8504a4d3d27c7a978", - "address": "lax1z7zymzsejpzjgjl3w0dfrkp9uz690hfc2s4n6f" - }, - { - "private_key": "a1e5573872f3e70c696ca87224c14cb12602f1d00e613c75bd46e6040c6b8d59", - "address": "lax1mjt6pryeuzkwkl7ket20m0fjuk6jf9l37t3cs4" - }, - { - "private_key": "13ee1f457b8bc713ea553663d5b90fdbcc4e49e88e4c281c1faf48fa84df4215", - "address": "lax1vtsm78d59jzfpu8hwk6u4fryu7cwkhjq44x60j" - }, - { - "private_key": "289c2c9868e200c9232b6134eb5d4f9afac5b7188abde35e476c52f174bd47d2", - "address": "lax14j64vkucnztwyjqcky7lw42ag07fhtuvplgcu7" - }, - { - "private_key": "5acf77116f4d7f71c806d427c8fa40f73351d79306bd84e4777a403fd0d556db", - "address": "lax1g9fdt36hjq9f29ctzhv57g5ypxtts8xnu5fkyl" - }, - { - "private_key": "3026d94c33f297d1c8d497dae57e4e0bd3b8120ca9f0ee5fbc94b625307701ce", - "address": "lax15zhn7qq2fr8kzk0cslmcpyvpcqz6mmqg8kxgp9" - }, - { - "private_key": "cdb4cb812d595f43ca430b662a7454a4d654324c6935e1b296fe94cffd31fe97", - "address": "lax13a3e2wr9q5yurz23t52vv47rz79f55gx5zd2zf" - }, - { - "private_key": "46f31eb736a4227221634f8a6d2d969d6ab7dc1fe232a5a905cb9c31b1e4d88f", - "address": "lax1frjq4l6wlvv9kk3mvkyqhgnq0fxjpe3fkmmplm" - }, - { - "private_key": "800ac986b9411012f30f2e463f598476a3bb9f06bff64b35aff9c527f3e231a5", - "address": "lax12lpcshsr4vf66madz526u837ugmu7x3mapnwla" - }, - { - "private_key": "d0b44ed19b42a80fbfcb7bb3c5f63cf2b65be2656f7dc279dbcf2388ff482993", - "address": "lax1fzh58taeq35mt9ldh3n4upy3mfcxmnjgs7kw5s" - }, - { - "private_key": "809bda89b0fec32d86cabd68ae466a951ff929a4c1a65597118bfda04b0fd9d1", - "address": "lax103928jpkhnxnar9lnz22drekwa2fg6kjefk08g" - }, - { - "private_key": "dcbe198084d53300faff4ce940baa645e94037f3d38fb1242e3311360f365827", - "address": "lax1vpff0km9mt049twyflx3vxug7gq5xd2slkdx8u" - }, - { - "private_key": "37c1a220992aa33c01b99154cee181eb3a29e1491e99ef0b897613ced85b68f3", - "address": "lax1422kz2vwnz3g4cyhvze22dpvldphj9q65kcv2f" - }, - { - "private_key": "0561ded3adbc6a079a0b920576d1d30a60af992a1f57d217336dcd15080e9d04", - "address": "lax1gl66snvz2wv2rxvqfe0e7rpayx794c0rwfxv8d" - }, - { - "private_key": "7a15d2fba831f552f758982258ec9d4560f77a3255db2dc6998ae539ed77fb69", - "address": "lax1kzm6vncxh4gk3jn3qdmhl6cfmwayctq7l3nnle" - }, - { - "private_key": "492a174b028500f21b937be39e52da6b5396dfdea62c4c21e8f68e4de4ee622a", - "address": "lax132pr0fs3ds37dlqxyfqxstw3gx9awycavhed7c" - }, - { - "private_key": "126efd5ed6d3a6eb6bd315a76fd6a7271131bf79ae2eb8bbcc4a8ababc7de6fa", - "address": "lax19ytltzf97gg42hnag2hg4vgs76885cn6g3t6t6" - }, - { - "private_key": "f5e7f54927fe572a00a1a113fd8dc2b5045c910c027d2f589d6fc02c91e5dd72", - "address": "lax1f9afjhudc2p3k27x5p83zp9eczf3mmgcj3wa7j" - }, - { - "private_key": "1fde5aa2d546bb108ee537437f2852604dc5235a7e3b7bc95ac2a7dd625965ea", - "address": "lax1kd8v8jffsr3fruxmm5gtwu6h4xr6wv8j4dusak" - }, - { - "private_key": "58ab622a2030c0c1eb0d344bc4a0d9dcde06c26fead294daf9fbf66e44285792", - "address": "lax1726f9shklvsw0j3qt45422t9hsj5vfqrq5mka6" - }, - { - "private_key": "68674ede16901969da7f9a12738784bdc88e7e79f1bbd6871882158345b15f1a", - "address": "lax1w27shnnan9c4rj2trv78c4uu9l3v0vda9fgu3q" - }, - { - "private_key": "45b9c0de917656f989ad80fd0a6b1761f38f731eb1651d0d1039f4873c1a0acb", - "address": "lax15tw3h7dqud090shmryqxx72f8f7z8px5zghmtc" - }, - { - "private_key": "253420ae88e6a97cae0869c10759a7e58b17a559466de19c0e34943c0f8d3f81", - "address": "lax1f0ps2hv74jlvp4rgtdckwf9aq94awhgdlrn46m" - }, - { - "private_key": "362ded21ef0985c695795fd44f56ca487ef11207e401eb664e436a6d68d45287", - "address": "lax19ga7xdwqny8e02tauqw30duw200l72aykyl7th" - }, - { - "private_key": "321134a2b290426a53aeccb1d70048d9e3a5083f1f486ab0756ab40246e0a37a", - "address": "lax1lgsgpzh4gtgj3eas3epf32f3dg58a3c4k00lhs" - }, - { - "private_key": "dd6c9d1253904df41fc6d9a44b965405d5b7bbe30603d2a43730e169966e5aa9", - "address": "lax1y0833ls8zwc6usm4qcu43mzdmt72069wknlljw" - }, - { - "private_key": "13e550202f91078190de39a18c5a1cc50f519b61b61dfc20687ef43163db98ae", - "address": "lax1rdjt7uz4ltvpqq5q7ku3p36rntq0we9kfmfkyv" - }, - { - "private_key": "82a7cbeb1d77160d799cb2624bf061335e0be1d0eda234bc9160e754a02b797a", - "address": "lax1frw5pxt0l250nw2ptllw3stluj6fsw9p4q7qat" - }, - { - "private_key": "75b69f8547e12f8363a4eba15712db6950086f55f96f130b750073081f153848", - "address": "lax174xll7yuw2nuu2k06he2vtzw8rccd6sj4fmhmp" - }, - { - "private_key": "36b9e32b679839c75d60f012a3d1c2241d56876541ae391811215c56e091a283", - "address": "lax13s5k7en4yzjkyua6p05r24py63jwgnzjggs29z" - }, - { - "private_key": "47953f047abb51482255d458d710df30ac418b5fb5de4048a736f81f7c0160a8", - "address": "lax1qmhmh055cpjt2rwxrwkefwurhyfyjm8nq6txcm" - }, - { - "private_key": "5219226dd213533e32bc51aa116630aae8d108fd202398444d6613f995793367", - "address": "lax1yswc7x9f45zry0d240la7w7zznv0whvan52va5" - }, - { - "private_key": "298d856644e0cd0bb0849d445c48de77c16cf8089f6aac03550785f9e5c9cdca", - "address": "lax1twvye32wz7up0t6qteqc46useyws4dhl4xejs5" - }, - { - "private_key": "eb5a383471aaedf4a5ca46466b94c57753b21e692108633266147d404c31e563", - "address": "lax1t4jcykj9l53mwyqe74jdzuxht2cwvr5nn5rzve" - }, - { - "private_key": "1cd61284e34965424c6a040d64edd550399c781dcde83ad5a095368175da64f7", - "address": "lax1evm6vyeyqv8a4hg0pd9j33qh3sqhkjp4aans8q" - }, - { - "private_key": "5845549343a4dd24416d8fb4d7c3ab9e6dcb5d64a5eb45b6c7c456572164d713", - "address": "lax1sep54rmf54zmz9d0929q9cv3tj24p50wu74vrq" - }, - { - "private_key": "3b4f878eae61c9477bc440f6d049f242a1f51551b9d44fcc37c3045df1a736b4", - "address": "lax1wdyrjjgshp02je98wrvslc5ulldmvnwja4rgpn" - }, - { - "private_key": "683f93b5024a8bb0410b8904832b14d79d6e9869769357b5a1038766a0c5f2f1", - "address": "lax1cvxylkhj8xds7pceedn8hnm0nvsyquqn8pmz0a" - }, - { - "private_key": "f460c31df0642594b71d25d46b548779894b0f232a6aa98b2efd0a60ec05ad46", - "address": "lax1zlcc0r9q9kupsjy0q29zcqqdpksc6amp9gqa3h" - }, - { - "private_key": "4d75740332c410b8983d80bda70e09f8390cf0ea6f4dc21d462c4749315b41d9", - "address": "lax15qwwdsg0xpqw5ctxr3zxxyjezt3pmptcwlh3c2" - }, - { - "private_key": "6dc122c258c3117ae43636a719a238dd8f8ee247226dae91b90f307c68ea34be", - "address": "lax1lxyhgks45652ax7rt63ee0tpcywz6snkpnq89k" - }, - { - "private_key": "019a4220c822cf6810c73a9caa51cea08a068a1f2068b575a081971b43c03e59", - "address": "lax12c7urj8uu08njma0pmgmf9uzzaq45wzthnd9rg" - }, - { - "private_key": "b7e509c32c6d85ff0cdd34453b41f72fcae60d6bac7ce631379b8dc3c856ce5a", - "address": "lax1txfgahu8e9nv34lnta70ex220ax0hakqnc032u" - }, - { - "private_key": "f5cd64f5bd29d2f42e2f0df94fb18f103185484b4b7dc871f733490e48172bc2", - "address": "lax1a8v09uxnffk2577r5anuhl5cstvg9p6h4y5quy" - }, - { - "private_key": "fcfad191c42d1e5e3791d860b508545f6e4ad6372e5a8d6a045736465a6c7e7a", - "address": "lax196wc6gehmtt3ktxdac4c6s6z6cpccy7kgwdvhe" - }, - { - "private_key": "f90c9f8bc1744b951bbfc5e691b0cc6798c55695c022f5a74895c8e569c6ae44", - "address": "lax1yx0mlfqwme7sjfcw0ggckvevdgpvmfp7n978nh" - }, - { - "private_key": "892c83e9a7fb8743fecbe700c56accce38e465c038ede7fa214e1b6fc32a4e6d", - "address": "lax1l72ct9ra7845kekvr9hfwyfrrtfajt0ufj7dah" - }, - { - "private_key": "1a4552e66baa51b7675b835e37fc5e30765eca05897f1ecff6793da2b3bd42a9", - "address": "lax18xfq0mhqg39vyyvz5e0mecv3wz8z5h0lr2dm82" - }, - { - "private_key": "55cf3fb582ba759e88132e08848da52e8d100cf6c44f49e10fa62cab38d00457", - "address": "lax180hzyx52fhef3khg794k727sklkfkhc0l6mz2y" - }, - { - "private_key": "d43c3f7a1f71c1671ce7ae4a2280ab60034364263ed81b104897b26efd1062e0", - "address": "lax15p9rmjz3fhs909pway5heamuxnz4eam59zzs2g" - }, - { - "private_key": "83c7131648ea42c8d2ca2747422a506b78c44b51950fd173d5b035936ee12589", - "address": "lax18qunlkkr48e6vju8d4tncdwp3jp79u9huh0u8m" - }, - { - "private_key": "f19982ed959eb65ee472b3d9ab8485286081750082607c6776f9cb249ca87800", - "address": "lax1v7h8e0a0fynxe0u3tk6g4nmpntcpxgej5kt8lk" - }, - { - "private_key": "dc511b5fc94d24666c3fdaf4e7fa3969bb0fb7d8e00b19ea15472bcb99b6a126", - "address": "lax1xl89rscuj5kpw5wjxqxt8vd0y3lk9mkpjxf4hs" - }, - { - "private_key": "62e994239ca7792b06922cc85fdb2b8f3087213ac6f2cfda118891ab72467c3c", - "address": "lax1urtwph4fwhl2ve0j0ys9mw9cg8eqg7exggfmwr" - }, - { - "private_key": "281b51ccbc33a3c33b4cbd27cda37214e8cf3594396458a3341378585a80481f", - "address": "lax1s2f2rshdh9lpmt6rwhnfvwwfx8x5dmyvh9gkev" - }, - { - "private_key": "7fa5b242b03ccb2938abc20731ae5ef150956c42f5f544c5e30f2ecc8c166ef2", - "address": "lax1gpnk4u8gg3t4kurre3auudu02gel40g6xtz38t" - }, - { - "private_key": "415439a48817f79d6fcdd0a1fd976c2426d3fc9727e8e8c9ee1297a299de1113", - "address": "lax1njsgqy4uggl6ln6rt8duvg9jsf80639vmuddhj" - }, - { - "private_key": "0b90fb616feec8c7dfac52bb985822aead740c9e393d2c4510d9dcc2205c5665", - "address": "lax1e88qadeu5c56ccq4hlresve30sndczp42mnhzk" - }, - { - "private_key": "e744dbae877efbeca08788721c4d4006a4e4a236efd085c527bc4b9161a3904f", - "address": "lax1ecdpw43g9sr5w6w6te2zmztxqy7a07j8suh06p" - }, - { - "private_key": "bad453fb66f2251f6fcf4fd3ca147c34b203d419925e56cb879dc862cf053808", - "address": "lax19005dvzae9nvs5ttr5d6v6p6tlrkk3l60nth7u" - }, - { - "private_key": "dbb3269fd1e96736d849b1acc51b18d6238951f4085178fa193669233a531ecb", - "address": "lax1q5ttylqftz7l8kfeyrfy8tsuc85xj86unx203r" - }, - { - "private_key": "fd11cbc1b19e3827af69cdccf63a0a37f35c1cd6f7698a1d0da012bc70f2313e", - "address": "lax1qry34hkjcm40u6qf5mdr6njct6hdeptqam6m5s" - }, - { - "private_key": "9a3884d1b39015224cac6d8c9420dbf7d50fdafbf7b3d35bff6a72d7d613c2fc", - "address": "lax1ele2d3auqh9gwd8zkqh0e0edt6yj9x4wsveqq3" - }, - { - "private_key": "83d9b31128db7cf4768f593bc30a17ad516857fabd32fa8f843bc6531b33e30f", - "address": "lax1z2zvtulr2pgzdumjz0w8lj2tlk6v6necahtdvl" - }, - { - "private_key": "d4951b3906f8ba18124b61d317a1dfb4fce034adf1a067b9e374d1918b6dd663", - "address": "lax12jlmjj8g8jxuphrykap0dhy8kax5gtzfmm5x7g" - }, - { - "private_key": "cf2fae4ac56ed11c4ebd517ce78c94fd5718cd142582299ba8762bc947cb519d", - "address": "lax1ds4eqjzs96y9r6xzw7m70hlphxjzd6matmywwv" - }, - { - "private_key": "16bccfb9b097b687729db2073f9f6a66f6aa00b251594104f3702ca553ab1398", - "address": "lax1dszhxqhfl2ewelqx6wqu9flmqkjugt5cj3869d" - }, - { - "private_key": "e1644404ca7464e04b422696a9eecc7f2da100d32dfffc4d306095d652a029a1", - "address": "lax1tamrn0p759snanw4gegxqf7xh07f3yt48k5y6l" - }, - { - "private_key": "51151251ba540d9ca4dd239a190d2fa11a81ae7a134a4536376c750863cdecaf", - "address": "lax16vqxvp70dpwer7ayvv3262gnrhhj6ufxzfjel6" - }, - { - "private_key": "08fd41fae03b27383cabc95de6b7bce920771b74ecdfb21c525cbdd18d3e8e22", - "address": "lax1m0mvpznp76jzugpgcluq4lmc92csl0ndrv4dwm" - }, - { - "private_key": "f38f087df630173cfe95a8965427e36e6c545308570095ca4ea4453243cf2234", - "address": "lax1uduw35etr0td77t35qkm5xqn747ff7ttys55n3" - }, - { - "private_key": "b3d27bb551242a69672b402ecabab03fb912dd977f309489e6265b85870c3333", - "address": "lax1c7feqs2qjea07y98jpxku7frdzad9az8e6yhay" - }, - { - "private_key": "c3763c43f9b7d8620329c823a2ee519eead98fe97027a0709492d0d1a73828d5", - "address": "lax1uw6gv9sy7a6adlf90llhhcgmjqgmeuwdz2pkjx" - }, - { - "private_key": "ca8ffd6c3c7587f832dd83462e71dc441c0110d99a9e5763322c300ab126484b", - "address": "lax1gey7zlrv0zjcezdc0l6cygsl8ezu47sraltze3" - }, - { - "private_key": "36c7e24f4b4d15261706351073d9ccdd2198a41a15517bec4c66f062b23ecbef", - "address": "lax1fpa7657ugvrxym303q2t84ehcxzm03zeymg4ks" - }, - { - "private_key": "f4c8b1cbec887f21c9fbabd1b962c55bf348722ce8835df54d6d69c17dd04af8", - "address": "lax1f4ndf0dj30nnl4942xyjv89tj8wfupwf9hzfce" - }, - { - "private_key": "667167175d390b7b1ca1da6f285a834535f48e0d0b0f5cdc9574629364575d34", - "address": "lax1r99af28klf0yg0kwp3ps658zvjy347nsqukksw" - }, - { - "private_key": "d2575a6ea0b651830b1f476fa96bb2ccd0e7bd7fc724bdc861952c2f3d0434c9", - "address": "lax1c7qnh9xzu2w7vaw8xct54w4n5dn7cha4cuwlva" - }, - { - "private_key": "9738ee725d321bea488a0b9ca4cdda49756109aded5f5364a2a963556a097030", - "address": "lax17gn36m7kzc0a4eu4chpr80074p3qe9prd0dcka" - }, - { - "private_key": "6f99607ca9a08587beda6c2ae89b33a1ea9170284b6375928fe32db1cb44b111", - "address": "lax1hgnccdcl3vhmact3zv8wq2rmmjye8vruu2zfql" - }, - { - "private_key": "1253e873a7272a53f6fbaa86d8083d7f58cf0b0698ab89c0e927c940d00fbbfc", - "address": "lax17x6qctl00pwpr950gy54wh23u9s7yxyrhxuusr" - }, - { - "private_key": "58b6c400aef3d35fd8eb4c4a0ed3988afe05f00293d8683784a1d649bbe03ab8", - "address": "lax1j9ka2549kp3x887em5yzcr3k7rn5p306kvxj3x" - }, - { - "private_key": "4b43324aa9914f38316e64955cfbdc09965766cf41ff6fb12ab11b2bbf5d92d3", - "address": "lax17zxw4n9ut2ff5vzn0c45asfzv7x6m5awuxl0sk" - }, - { - "private_key": "24d383bb9a722ce2efe72f09715632ad0245e937f25322911db1b2eb85672c77", - "address": "lax1kkzg5aetmlkjqg6cz02dqvc942ynxpe6upe9v0" - }, - { - "private_key": "82302434e1d4c617cd3e603a0bbfe66f0264a24ed683ce272fb39cd4a9f28634", - "address": "lax1wrxymk8tzaqctyy54w4w5apshmpwz5dgln2zv2" - }, - { - "private_key": "a092d2650794435b10d85d050211cda009138e3618731bad542fac04aaedd220", - "address": "lax1hj06e5qs2ufxa0x694gt0ugqruxw56tvfvanml" - }, - { - "private_key": "66f3b2120813a78f502f2af6446a016971df574f13215f3206f2c16158df6ebf", - "address": "lax1rverp2q8av3wvvctujj5zks9ux38zma5aj9vet" - }, - { - "private_key": "703f7b03f4a49ee2b5853fb8b0bcb90fcc138d03cc32b6ea9d511edd9a7dffc2", - "address": "lax1agwpqwgajwvkkkcj4m6vjcjqls2zzcjkh6avmd" - }, - { - "private_key": "043f464fd9a651bcb0086b1f5ef17c6a056fb74eab70edbe0854512d76114d59", - "address": "lax1ehl6a0nuuhn24d0d5gc0fq8t9ugypazx0hsjuu" - }, - { - "private_key": "3e03a0cf384ae73716788088b860569cb45ee071a89078817042c0e6306a4212", - "address": "lax17medpt5ph9mhqhpvu8e35p8cqdyrjrjv0x2q33" - }, - { - "private_key": "d61dc8a7d63baf9dc060afe919cbf76a1df6bf2c6b46397f629303784c16ee07", - "address": "lax1chepe75cyxu7smx4aszzksdwcagcr8hyp2h6fh" - }, - { - "private_key": "0185ba17c28b0c39af6f93eca8f950e049fa425ba2f92f8b40b4c43758030f38", - "address": "lax1hjtvnhps7mw756fhqu8penxm73v6w7vrae5056" - }, - { - "private_key": "4b27c4eaf4e40ff4cbb2221b139b3deca9430f7e22bed71eabd9c574201a5987", - "address": "lax1v034l8wtjpmgtrwf8sdyzm3w9ln860kcl3gkj9" - }, - { - "private_key": "b4e08bf41563ff82936bc6edca8441be92ecbfc7364d9d43f2b6bd0ffa9a10d1", - "address": "lax1r2q50sttzz5ywl0h4m7uwf39udp3k293p0d327" - }, - { - "private_key": "e6220111e77ef3190470b42968922f8c65a880cd9d35fcf4338ab4b51f702be7", - "address": "lax1jd2ys7rhqmuz5nt7vnus6lg9xtuwk62ec2tch5" - }, - { - "private_key": "77a112f30dc5db0e0425169c5c780b7e5609745725ee0c014aff40c7a18ef081", - "address": "lax1q5lpche74xcqlxc3twwt5fksnpt90a0fwmv0m8" - }, - { - "private_key": "0e08d474ee944e58c24babd3f56fd73a9e6a072a525060a59294bd67da323426", - "address": "lax16c4xn2v7y9csu0cgxsewv8f296l28slfguta8z" - }, - { - "private_key": "63c8682eccc7bf7b2e38001c0b70276086b899310344ea2f1a6a4452e1c26d94", - "address": "lax1ds28qll0dagr8t2hfsfkmmtt43wucrkp3dzrh5" - }, - { - "private_key": "29d77a55db497a3f43e8d96ad0c85336b0a84fd5974286ed3967e78adb7aadb4", - "address": "lax1xdr3lwr85dg8cjj7ss064q3vyu5tp8khngrm7m" - }, - { - "private_key": "a874507170f0beacc8705f93d14f2237ecd295fe32d6b5ab65a5ff2a072a3454", - "address": "lax1m53fu2exdudvkmpune9fhpqwg0shsknvdgz9qt" - }, - { - "private_key": "acf6ef00dde86849df9fdf301ea6eb699e557852d97c4fcc9cc6355392c1b344", - "address": "lax18srxqzk2fjs8mqfr3mmpme2sesz4x364ky2mm0" - }, - { - "private_key": "bb2c2639e2e22122cb9b745d358ad9100e734dee38afcfa1a3a554aa1c4eb351", - "address": "lax1gca55xgwl6mg45d6w034nh2q4ce69vf08dy6xe" - }, - { - "private_key": "688257cbd7edbcd0a5407514202515bd3699133ef18f7f71ec6c4d2e0143ae2c", - "address": "lax1ph7ukmp7wa60px6ulywj9jfkdl5gltnzjusqwm" - }, - { - "private_key": "f86071c0374846c7cb4dd9b568b71abf001dc935837d3f12c10c6243418d8d74", - "address": "lax13mmqqclnsuhc6jshvxcretaakyyu8nn6t8ncl3" - }, - { - "private_key": "2cd16b39a5357ecc89dfc6fe78e88b653e330d9077a63307f747ecb54fda4424", - "address": "lax1d7r478x2ll4lkpzneq52ag9nnurt3umjrqgezd" - }, - { - "private_key": "8f97c357a2eff4f09f1573d06d909bc6af5ef2828b065e9ac813f47f2e6d85b4", - "address": "lax1cvw92lkps83tsw0f2rufxznj37y9qsj8z49jy4" - }, - { - "private_key": "825768a802f73005bb081028f08fb09de1fe691b1ac3336317aa8fb88544f345", - "address": "lax1h22x8vkuqwvjznu47qkezu3h3p22ft5a90w7m6" - }, - { - "private_key": "d24cd08d803ac1d953d325a47ee07a2d5783d5a2d54f15e3e381bef46e35f2e7", - "address": "lax1srmzh2n638pr8eqgt9hwpt368hq86mut8j2r6f" - }, - { - "private_key": "48e4028b237637b128fe3b313b7913fc587fc0b653d78c70ecedd62ac4cb9905", - "address": "lax1rex7ksae74gg5wwg5zkeclf2t04tc5fpgn9utn" - }, - { - "private_key": "7c3c38216d043944300f0588b796cbfa848eb81741523c9a72b3fb04ba4cdf14", - "address": "lax1s679ce7hzxdt28jdtvxk7g8hmr95zs83k4tth4" - }, - { - "private_key": "a3cf21e46e695ec50781020aceecf763d5f09593a04d9e7015731902f8e2efb2", - "address": "lax1592z07nkdum25y5a8rtulkad8cz2qzr86h4ms3" - }, - { - "private_key": "5ce5c9d605e31381d6f5b4c4bae7b5b6ea4d1ce6d7152f0b136357dad91d43c2", - "address": "lax17mcqwfutf027rvtvqggr8ass2aaw8equddl5s7" - }, - { - "private_key": "f843bb7c3ca6c830b534492fbb09af0e52673d2c7d310e8042534fda30bf0078", - "address": "lax1q5p0n9a56n5ssg472dgzgra2q405wxmmyhudmr" - }, - { - "private_key": "0c09b895fe6a3d458474db0df98cc1e597590323447d6330228120b4d1cf2f2f", - "address": "lax10c7g7dlxjjysjhpf53syk2yu2pegexsspyhhny" - }, - { - "private_key": "a942ee1a5803129e4b686a6938cbdc1b4258d41dc52fa90501da12791f48c23c", - "address": "lax1cwumlvljl5xmt2pf9afsee758xscpjz4yw5wuf" - }, - { - "private_key": "2dc2baac6cfccae7b7f213f3bc65176431cd01b3299fe9e10c6daec3190c8c19", - "address": "lax1tdyudd5mqy9mn7sxruzprfvja4v8x8sdskvkp6" - }, - { - "private_key": "ac48a7816e597b8904758edba81fb268af902e6db6ed26f3a59dc283d1705228", - "address": "lax1ghqjufjyw8ra4xg9k0vu6dzgllamkeygfpgr45" - }, - { - "private_key": "d3b456878ce60fc8575507561cdf69de98703dcdb25f973bfb6e81d596cfa3d3", - "address": "lax1xd0gguw9xuvrnya33nf6skgn26qu9tla47q6k3" - }, - { - "private_key": "94d57748878ef8a9746234185c5e8a8a858f5d69b80d7c58ccdf7d85007be2db", - "address": "lax1v8wfffpq607hh0e04842f2sg874k72cf30na4z" - }, - { - "private_key": "0abdf275de6bea3a0d0c610e150d1149f1572545ee185ef87c53bda49710b596", - "address": "lax12rguqkkj6flfyspjyxucffjy4e9570q7v6wwgn" - }, - { - "private_key": "dc56663ebd27a718446d81c1e6b67c59cbafcbf9933df8af4e575072d4ec60ef", - "address": "lax1jx4ezjnnn8wfgxdldv8qj7nmk6zkf58wg2yh24" - }, - { - "private_key": "5dda9d92389cb42eea3d422bc2b3eaea14048c7aa154cc7a752f2b75ddd2909c", - "address": "lax1j8hgkqnjc9d8nh22hqavp7qqrk6k0q6xefwe2c" - }, - { - "private_key": "6c751d585ba902fdfe73379062604534a1befe71a8f0b777df1d77ad5ff9f2dd", - "address": "lax1434pkuc9mru4y092n0gjjgek8l5j8mjglff5gv" - }, - { - "private_key": "6f545e91941fc86d8f19a3821a77d2ed89e725e89f436e5b094b7edea6b02e82", - "address": "lax15at77efvwh9gju3s58cv6z5ykmh9z58jjgf9s8" - }, - { - "private_key": "4932b4ae066adf47d0a4b63b0159089db25ccbcccd31844716fcdbc242d4d41b", - "address": "lax1v8f9uyfww6d8zdcqfsqtldqhqcvfsrlzlvyp8t" - }, - { - "private_key": "e1b4bb14ded0ca852a26dc095160b1d7e03dead502788a941224321f20ec27f5", - "address": "lax142ajdulqw5cmylkzxu4809lfz6c6ut5xt3vj9f" - }, - { - "private_key": "1036259e4595d711417ba9278015dab90e4d02146ee35425deb4a6191aa14c5a", - "address": "lax1gvx64dphzxky8e2ma8pwdvclfgkt6fp80l87y9" - }, - { - "private_key": "b5b577bdc8873673316f8dea7a3e6c03bf5e13fce7cd55a4bd2dd127c2bbcffa", - "address": "lax189ep8g83n90lelymzlla4ehl3kxxlyvva427jt" - }, - { - "private_key": "462c6f7b8fd834d9583533855a931c66c61ce0246af75bd730ae2a8445271ad2", - "address": "lax126wm8fpnm6prp7l5z3wqcxunaq24yc5888lzqk" - }, - { - "private_key": "0b859e46e6a2d6eba411db5a3da731da36895c77cf14a563d9d7582c8fede81e", - "address": "lax1wh7y2pq42hnu9cnackhyq2dnjgpnm79r7ka5sn" - }, - { - "private_key": "0c0f13691eb9746cc4390276e867750f36412b2d79e4e59b04d1963022e6b581", - "address": "lax1dhw0rexleh0tjtrjqmgktn6xgqr8ptc3y54gvh" - }, - { - "private_key": "9b8a7125b0fe2c294948f943662c169bf1251967e3c10b55e2044e217e652dd8", - "address": "lax1e7jmyk97ljdhtncctxdl3lt0lv66y6vunz98fl" - }, - { - "private_key": "2026c2843a20af200ab62f2324c20cfe7136e1a28ec060d982437b5c14ac33c7", - "address": "lax145mrf6hr6s637a378nqf3u9xv0s9w9pj8c50t5" - }, - { - "private_key": "106df9620e12bba7e307927cf7c98179a77281e3accb8cb29b3102562473a088", - "address": "lax1kqck4w0ydenmz4x7ah8xwukctc55jrts72h0vx" - }, - { - "private_key": "c2e3587e18404582e38485372754cb9788818139141124a11d3dc05893dfb66a", - "address": "lax1cl2n2ryaugn3jlr0e3mdfey6x4q234lz4rapt8" - }, - { - "private_key": "db030d137b385bb32a79edc79b56cc22cdca003283827cc9117e2f1099a8d8c8", - "address": "lax17aesn2ztpgpzk2ewr66wr5fyr2uusa46d9qxdn" - }, - { - "private_key": "75edc9274939157f40fbc167dabb0435199e8d04093c7702475a050c8b11341e", - "address": "lax1vyd6xyyychlf8sk7z44dtfxapparujm4km3j6l" - }, - { - "private_key": "c84eaa6df050cd5af44e0ee1ac85acc16b2b5880ef1f293c3ded23395eeb5407", - "address": "lax1d0gu7rf3ngtvn4mu3dvfpc00k9uvt0n8d9nz9p" - }, - { - "private_key": "90bf928a072704ea213a40a9042847106c3f8ae9118db09e4909001b4d923379", - "address": "lax1mdm70l3a4fh67v4sjjjr7valnpk8u5j7zslyhl" - }, - { - "private_key": "23df0a9f7cb94836f3bdfd788bc9f45ffd152d1a2bfcc8d7ee7517da76694b96", - "address": "lax18vl0p4j8fft69cks0np97atl8aykrc05v62d6n" - }, - { - "private_key": "a6468038fb87bfe1c5fa5cc7239bb2c821ac9b81c40f899a6943fbcd382cefbe", - "address": "lax16qdqa9nny9mcdxdz5u50vn4c67ld0p729r2x8v" - }, - { - "private_key": "8f5f5921a918ac94df048470a2289288c6c2e21060dd2346203eb64b16bcd8da", - "address": "lax1hsppwh8yu3mc7qqj6ev7xnxc76gjykzxnqf0xt" - }, - { - "private_key": "d7127d9a8846884e1803ce5f7c3575ec5c6bf823b4508942a19798fe617681b1", - "address": "lax14v6uchlru9ryhyrnyzaz47e99uvqz3u2nd35pf" - }, - { - "private_key": "519d3e127a4f562727649160ac939f7ed4863b5abb47571beb4633f78778bb3e", - "address": "lax1a6frewyydzax68s0zj82md46p6twmzagct0j5g" - }, - { - "private_key": "5f7ef9e35e13be417d83282b029237779b825fbdbdb26bd0144c429d622768c4", - "address": "lax1wgt5rnvryy85pq6j30r5nlz8f6qyvxn3w4kv8a" - }, - { - "private_key": "8d1937ece3e994c09094ceb31482c8cdc27e6ae3806b2b3350f93342f66990eb", - "address": "lax10vplvrp2ql7yjgrd0p5e0lp2mzqm2skn4dk5em" - }, - { - "private_key": "13d6f24ae460d3ebf76bdd92bdace3062423e5e77fda93fc28895564fb51a4ad", - "address": "lax1n6u9wep8vxgqk0rjmc076j7rz75nevqt9cpt0h" - }, - { - "private_key": "708ee3500a9e949a5e81593dd3ed22f8a971f148ac770f5edb46c1f4111a4aaf", - "address": "lax1mtp7fw9d5kk7wda3fxh7a7mtzkr9vzqupj99pa" - }, - { - "private_key": "bf52faf2d2b5b0b820a0fe3a3c8e49681457cceb5d3b63fe269b88cfea7235e0", - "address": "lax1j74vjm2mfca3sn83q3k3y5q0sfgnejp4erpl9y" - }, - { - "private_key": "211c9286c6641a0992afff1b6ef80f2537f5c4981d950f3330b252dbc78d592a", - "address": "lax1jvu24qan0hy33hc6paqlecevsjw2mrexwa8xjp" - }, - { - "private_key": "50604ddb4353cdcb85c9ef2e7538d2fe860bb193f0cf9dd8a26ec19f78ca00c6", - "address": "lax1f58g0fsjs2zexq7qnts03d3laapf4yq649xm5a" - }, - { - "private_key": "0358e7a3af39e78ac4c25c7a1916a40e5f2254ff64c1ac629378c60c6200d005", - "address": "lax12jya4qt4qv4gxl3zf4dhv43dwxw9cv3hlhr83l" - }, - { - "private_key": "b7ec1013852ec876ef1a10cb249dc597557df3892828b68f4a7e5cf937d830e3", - "address": "lax136l2qu0l554qcq77fk7hkxdfj4j5de3dfan4xm" - }, - { - "private_key": "59af528a76bdd53746ed70626e56278cdf0783fa0c27375c28216302a4808083", - "address": "lax1p6dpq5nry9ywa8yqdpymsgdt2etglgj6jyd482" - }, - { - "private_key": "3eefe74bea08110225c65a9f5a90f91ed987f592a8ee74d6bfa62e7eed7168b2", - "address": "lax1aths6v4gh06wgd5myz0n3lzlcm08p2hp70k2fr" - }, - { - "private_key": "6b26b3997d1aaf5fc37678123049c6fab59b96aa558cf5e68e0344a2917e60f3", - "address": "lax150gecfl23vd7ws6q8nlkfwcratupyd7tmy0kuf" - }, - { - "private_key": "ce77c9219711a2ed9bc10400a4b7918320434d4401a8c27f0cd716b562608095", - "address": "lax1ex0lfhehwws0u3da7pwm6mef06zdg83lwt4vhw" - }, - { - "private_key": "78ca592760c35102706c7ed098ba2b4223707335aa7fe9afb736b54a5348292d", - "address": "lax16fczs4f83vranpnmkn60pgwf36r6k89nxw3ze2" - }, - { - "private_key": "2ffb9cad28263a3a50c52cf460d72db8959db0a5a6057f32ff37b056705340e4", - "address": "lax1kcvrmu4p9lq6smuwm05xm0yjuyxmkm9mfcv045" - }, - { - "private_key": "380f041b970c37153df2b5d3baa50e2ae8c724b03c1448cb4c7b27e7aed50a65", - "address": "lax12hgzsydar9s459dm56p5gvlz0m28r9aagc8smu" - }, - { - "private_key": "6ccae4cd753553f04247a0b95fb3b3e598f4c1849531d6374dd3a0d17a28554f", - "address": "lax1zsed0sqgu2e6jr7z3jpsn3c7ca4ymrehd0dkpk" - }, - { - "private_key": "7301318c1aba766fab43a46b8eac911ccde7a33bd3b994a48fcdace17956cc32", - "address": "lax1f7pjt5pnzkaaqvadva7g8lw9eg7sex8q72t9wr" - }, - { - "private_key": "2d4cd13a1d304afb5a667b129a1c2f6fed8bbf7573c445661692217d11cf350e", - "address": "lax1f5sla87ge0plauu06qe754yx3d2cc973f0xxm6" - }, - { - "private_key": "5a49f557a48b0231aa7407c5583a66cd12d4dcb4c6d124af16be77d198df7246", - "address": "lax1v3vg6trqjl3zalqsg82hrtk570gga7xtx6hyfg" - }, - { - "private_key": "2ebcfd6e993127329e11c255126447114850489fb65d814982ab9e2b18f8d41d", - "address": "lax1jfmaz0z20mxye7v9kmh6vwdphmvsdp6ud3xpvf" - }, - { - "private_key": "5f9ec1c8eec498c1ff30d6cf5899dce9f76392b69b748e8bb74f78f108fec102", - "address": "lax16ek9exuszu0lhw07c3r8sfzmx6fkpfftggq936" - }, - { - "private_key": "b9367d01f27c40ffebf6e1208a635814e17728cd6561d8969cdbae3b5a6fcd5f", - "address": "lax1wvle5drz7q9prkqdcqwhs3ar8eytmqm8ylhzz3" - }, - { - "private_key": "53d900698f19148604f7e0db765e300b7eba265a9da8251f42b5f2f352414950", - "address": "lax1fjww80smtn8natp5nth6v3vgjpc8uh0xzt79v9" - }, - { - "private_key": "6e98ced27aea2ccb240b66c00917cb85780cdd8fc3745a41d4fa6305cd6e0f92", - "address": "lax1pm05npvx79250n76d056k6ndcm4625naudrs2y" - }, - { - "private_key": "d6210507023368aa566fa089695a5b8f583343bcc8c9c31c4a6fe612880d3cad", - "address": "lax1jju46y3utr3l48gjx6qqj4ntnwsm07edzz4mha" - }, - { - "private_key": "93b7700a88e2f0363d1705c4c80357e1332819985266434a0854011f03954196", - "address": "lax1qzg729xkys2sykf25qaadset7l356qzsh3dl3p" - }, - { - "private_key": "fe1675d9c545bd5a6d6d2b992b6a923cc2dd5abd3f5cece7acbfbff84728be12", - "address": "lax1v4ndvg4s38gv5ty94ap9fhse9e9jtx8eqnt0uf" - }, - { - "private_key": "cc1d3fb913b9be5ac6cc494a08922e1d12b8662bfbdec5d6e26f862baa20635d", - "address": "lax15wqmwj8qdm9use5kg6thde4ap5msujz203qref" - }, - { - "private_key": "7310eefd17fc436238b4c68dae10a00f091be033a61f22b03fe7b4e5dd191cd1", - "address": "lax1lp8rsuqfuu5f5l6qqmmmxthgw3p566csqcanwy" - }, - { - "private_key": "29c0983f19d7fb185ae9fbae1598a94ee73ccac1d658617b706bebe7514ea662", - "address": "lax1edfclru8dtv5u38246q7nry70ajetqxtxe7eyt" - }, - { - "private_key": "21988f7123b6fdefb647b78fe878b907dfa385da285a767c4a15fdcddb12369f", - "address": "lax1tf7emzvhcla6jlyampe4ju9l3e9csmrrt4q2l3" - }, - { - "private_key": "97965c33ab1073b15c1970d412ef4fb03405250aa35991bf0ee5efbf92f789be", - "address": "lax1zymhmnahqjqtfygrfn3qjftpjeumv957s3f80a" - }, - { - "private_key": "e11f5ce19a90080696d49653ea1ba95eb49a4442ccd6ddfb3c295e785ceaeba1", - "address": "lax13924kvprjcfgyzfysh6lmxfa6e5ukptxgnf3km" - }, - { - "private_key": "48cd5369a452fa4908c1b371b98c41a4f383ec9192bfef4949276d24a4ebb04b", - "address": "lax1l3k3sjl6rt4h8r28xpaq4gzse38usvgu7ka39j" - }, - { - "private_key": "4ad434ef18557674671a6bd4526476c6ced6b3affc5e99a6230bb49128a83cca", - "address": "lax1394eyrxqqjfkskj0gupdkz49j5p8k3mjuady6h" - }, - { - "private_key": "c872fdaa1f511a2f459251dea6b499a8552567af778026d7c0780c41bf756839", - "address": "lax1eaxg44kl9g45s5ydsywksyqsft93juf99zv22u" - }, - { - "private_key": "9dbce5d8ca69f5c375681bb187e2d832d8c9407e0bc8f48e5d570b235c3e4c77", - "address": "lax1ce4wknpaycklsq2wzeevauaw4cpxaq5zncp0ht" - }, - { - "private_key": "0d317346874a145613dc8312ee07cd6705700cf4021f90794b556d595d04175a", - "address": "lax17y8uce29hmhwt49p4trzwk27je26tghxx80vzh" - }, - { - "private_key": "96847576aaec158a65b8f6064f75cbf536dc3433e61437d52d5442485f9b11ad", - "address": "lax1lljcurfd9e9pg3mlaud4klt6j5tsvfyqn5ffh7" - }, - { - "private_key": "c73d554ea82532c09b33e4ab41607787f17a2d123b9a0bf7249319ef83d1adc5", - "address": "lax1r37v45xrhesqpksnsdt7rfkte7lfsss9r7p8t0" - }, - { - "private_key": "d8c16f9da34b737cf46b9cb59b63ec59829cc1e8917394fafe3499b95e742020", - "address": "lax1h3s5ef7xlrumznx4lpeg0u20mkkgd0jpdyqra4" - }, - { - "private_key": "dc2fadd4276545459ead7621cc3a120d1227641317351f8e1c7d9c410a90032c", - "address": "lax144rsm8slj0ztx6wjyvyum84wxgfuqhlzqed03a" - }, - { - "private_key": "7c2a0f36d6c4f494dc15b5cd76a302959901ec46a8d30036986a254ee08f178c", - "address": "lax1t9g9pn3rf79nsx4zxh73p5a4frh2xg5fqd5hf6" - }, - { - "private_key": "2cad226e3bbd5c84df4b086c9066c85376cb2115e6e62a9fb4ee50c762b42622", - "address": "lax15sypkqd22426tamq2catq6x04xvwpvml72069q" - }, - { - "private_key": "82513ca1ad48fce1569725012fb60068d1e2a7f17132a1af884309f14f7dfa13", - "address": "lax18dhj90u5h2arx9lc8lj2v82fumseh2fgpde6p2" - }, - { - "private_key": "5be4381c0796b9db6d2c8ef0bf6d26b656f2dfa7463c97660edae437f9f7477c", - "address": "lax13hvntln5696jehkt9zpmsr7v50tv30t29a9wya" - }, - { - "private_key": "cd78b4941f6de288c4043a55d2b18112de7acd089a3d5473073192a228004eae", - "address": "lax1tym8f39hasf5y7lw64fc2wsk60l3kfz2xgnrmu" - }, - { - "private_key": "78bdb7e54627f08edd97c8912d6e7eb66c624de5c6e97230187f8ea95a044eec", - "address": "lax1dffjmrmtlxaul8pvxr926qtxzyryhmer7dl5sw" - }, - { - "private_key": "9930d0fd981465ececb4f1743d1677ea280b5576bd86aa366192418b4357d654", - "address": "lax1chxzpy65m8r4r8uw9657ethpzxvdqyz5q0duh8" - }, - { - "private_key": "dfeb5a065ceb566ca317fe2309f6d71cd2739be2f7b4ed8f6072a226af1e839b", - "address": "lax192fglc2xhlmzzpglg4g9elsct66x4m8fw5hfzd" - }, - { - "private_key": "2cea136b778a3e262a4bdfe07cc0c2aa104ccff4b12959ec6f9fd61113d521f3", - "address": "lax1ur2z4kclp2e3lmyyfnt83pukg862hcrd2xkxtp" - }, - { - "private_key": "60f9a476388eebd0e79db8c228d4ac89a64ac253189319e497dc41d76193b650", - "address": "lax195pl4scdsda28a2w2wsk5m4ed0247e6frl43z7" - }, - { - "private_key": "d523e3c4c4ac36e0866ab77ce45e243bd5a08bd13b051012693d379baa69d8c5", - "address": "lax1cz3qy96k4ah66c06sekfhdmxmtsxuwcev8q0ql" - }, - { - "private_key": "91fd9a8b966b060c9aa98dfe6cc69ff9e162280e669b67439a500e9235cdca4d", - "address": "lax14twzklqn7e6g83un96plf0nl52jfnv2kjg58k0" - }, - { - "private_key": "1617467d1ef9d9a1e744f96be8fe3fa13f900f3f97e007e0efa01faeabb972cf", - "address": "lax1wq8v44l5ujxvagtzdn9uy84s54uuexxpptzcdn" - }, - { - "private_key": "edc95cab7597389cd86168e250cbad91818419426adc9ee4059a7c1ed87f9377", - "address": "lax1dt2esd9xtjmj60v68lhty5w4zx3690wgkqyxk6" - }, - { - "private_key": "4c313713e3c0672032c17d4a0cd35a7dcb69b06340a40807965553470b9af12f", - "address": "lax1hh6hq92rek6yp3aujqgjwst8lkf6teytd9sxln" - }, - { - "private_key": "9d072844bea0303e71e3e4978321347be3c12acfa6f65f86298f2f9b3454e3a8", - "address": "lax19t3xv6rty624s604t4tr76u80quz7ua55sj8c2" - }, - { - "private_key": "90c7626758f3482a6754e910c681be1a445c4e6b6ec8b3c9eb7ba112a7321ead", - "address": "lax1zd5pfh3nscg6n0lwqxwts65j9cnma42fuugrgv" - }, - { - "private_key": "2dc8e116f532f3e6c76246bdbce8e37e52f4aa0b0a749e0a4ad4eea45e989685", - "address": "lax1flrk960t0uk9gjct3hahd4m3mkxez6qvd6m5xd" - }, - { - "private_key": "9387b32a0d07a9f3f7a6b4934da1f0c8b68f0b84c5a3a95bc80b5a65ba4885b3", - "address": "lax1yggc6txq4rd5g7tvsj4cv3qfu3m4p9sadgvk7a" - }, - { - "private_key": "dd380c830636ade6f8ee5fe58e5e960adf5283d1208771292eb9a0a6b95d6bb6", - "address": "lax15dv5ftena8qyll25wysdn0sg9fcag7ew988cwc" - }, - { - "private_key": "6c49024f8c83b26400409eef75f64b8217cff06846eb7c8a07d380d73fbbf570", - "address": "lax1r8mp9ge0qc6tlj2r2mpkjlx9net73uhk947gr7" - }, - { - "private_key": "317f92f0d36446a58cc6432ff88a214b5de80ff5a1b172b68e12ad24c6b55ca3", - "address": "lax1sysyjjvc36em8qqg93wxfsrjlpxy8kmv838yr6" - }, - { - "private_key": "805913d3fb73ad8d8898d586f5428430f88f068c04c8dc0a13b82a8251c50dfa", - "address": "lax1qdtrctg3vlmxnrr6stzh6rzd9avu5l85dvgtmq" - }, - { - "private_key": "086824221dd0779d449fd64e7ef794c969f5a96ded166730807a213c30837df3", - "address": "lax1dv0yjhng5k0f5q9afndgu4l6u862hg6sz49z5r" - }, - { - "private_key": "0b52e1b4790e0fc463c4f6e64ed97baee376c9b5173dde874e855addf0aaf340", - "address": "lax1l04mqx4c2h3gnscgppfxl2axw5x3yff6hnxgnv" - }, - { - "private_key": "37a2424991b9159eb6b370e2f04a6577fe32c8cb245bdbc4f47361f77aa80227", - "address": "lax1wndav2g203vt9u8hu0pkcsapjr2skecntu5a8c" - }, - { - "private_key": "85114775d957ea28f71d424ccdeb29d4ea36b0eaf7ef562e0ba652226c6e8152", - "address": "lax1vm3yz5qjvd4al2ymhghf3f98wkg8xtvperdrw9" - }, - { - "private_key": "00cc370c4039ac309fc83a127a827cc3d99593d5106c282e82858a2b66967be1", - "address": "lax14szkwd5ars56m0l48y3fnhrtggp87pzqy4q4wq" - }, - { - "private_key": "857a34f78111e40c9ae6eb61cd0c1ed464e4726daf375f9e4e74b20f10838d43", - "address": "lax1rdfdp3gcahxtjczfnd53rmduy3u7xmhpfdqtx4" - }, - { - "private_key": "49c8d75a8d0949209322d34580e860023cc1e85b99c0cb91a5c99676c0d40f46", - "address": "lax1m6fj9760lxdeqhqv9e2atq882cattxnp3z0gse" - }, - { - "private_key": "39ce192e5826bedd097e33243df93c1ffa1242c49d2cdf2983de6a7a284e1cba", - "address": "lax1g4s6mqa9aaxw49fyx6nj96c7p06ddl7pyxqda3" - }, - { - "private_key": "4e3f57f247569738a8a6cbfa48581191675483a87b0d99c2747315197df79f9c", - "address": "lax194sr5989nayw34qcmergyjvfyzk7lqeug7p4fu" - }, - { - "private_key": "35e44fc3bd1069c7881d75814fb98d714009bcd4634d0212a0c129a793297c3f", - "address": "lax10mcrqfy4598xnzf4c8ley2y57snu3u30fa6g0s" - }, - { - "private_key": "9dd28b606c1d379dd3e362eedc211b1baed80c617cddbdac4186747e83bef006", - "address": "lax1nf0mmd4tprwzvkqppc9d60npuf3xca4w37m38x" - }, - { - "private_key": "5c41accf724abe1bcb34138c25571940e9feac19341c0f54a837f966c4b93a5b", - "address": "lax17egfaqlpkuf0w494a60vw6ea2lgngh866lc8sr" - }, - { - "private_key": "3511e9fa743424c11772404f97aaae345f412acfc9a703d94602920061b5b5b6", - "address": "lax1juutp7m85q6qkqlpt2s8d4aac84vrs6z5t6y3f" - }, - { - "private_key": "5bc683c0acac5f1e1273605bd2b4a3da258382f76d56d3cdea68cfddf5a45185", - "address": "lax1shny7ctaqtk22w3rcj0kumgcytkt8nglmd832v" - }, - { - "private_key": "28ebe1e792114fd7b5e3854688250ab553fc4c58a11753bcdb3a43bf675f70e9", - "address": "lax1cw35zlqamzzmqpj0rqugw6mlchfc4hux5xkkqs" - }, - { - "private_key": "487e13b33241b461bcbc92df82e69d604b0d5e432de3017f85ed0acd23a75627", - "address": "lax1a0x80ycch98v40zrxedcavmarlh0ey6qujskts" - }, - { - "private_key": "ec379fb14cacd4b114de0210309ddf1716dc5400ffd3ecd357600511ea5ccaa2", - "address": "lax1y247e5zus08he9a07hq4jp4tamyw6xs0py4zad" - }, - { - "private_key": "4dcda00ffc78fe4ded8f2d655b7adad0b469d105c419b1ca69e91297f773c2b9", - "address": "lax1pzgsjefhe0zwxgdskfumqfzslyf45ggmnz3rnf" - }, - { - "private_key": "039007097715083b13dfb7e3f2fe77afdd22ed69c4cd263ad9e3b9d353119e9b", - "address": "lax1vcptszfv9hnh262cmjuhsul5mzqjkjxvs3fvww" - }, - { - "private_key": "1a9630a3ef2e0c1717631414ad6370b5501800b2625a72a6ba1ba73bad6bf522", - "address": "lax1jmfn0rupd46269hyar6vsugmhn5zeh93y3d2uh" - }, - { - "private_key": "7bd5ee1ffedeed00b6307ba771e2aa44c574e43d1274c84328a7750b22671185", - "address": "lax19rngj73h728a6ydh7ljuxndfth4qaa2k9e8j7g" - }, - { - "private_key": "ddc5b7038ef4077f7160b02a1b42827fe44ab6d4ed5f6fac5b922082e40e18e6", - "address": "lax1jw8egn3znednp90thdfwcp6t5lan53rhs6j4qm" - }, - { - "private_key": "642a3a2ea61215e2ef54aa7d8b89d771125f148aad3e35012e1f075e53125a28", - "address": "lax1eu42sjcayl72q2aaglnlk8gdc2muznx88ujr99" - }, - { - "private_key": "b01ffb9a6dc710b9665c95c4ab97c53bf192ff57ff2aa57897c6fe7845403baa", - "address": "lax1peg5r437n5usckjxk6j934cfqwvhy6w6up8lyn" - }, - { - "private_key": "ce31bd2207ee06512071f3a415b03a0acfa63834fc94af8c42634bec60144938", - "address": "lax1t0u6hk7z5ythkxqw2tajtflqzkjahh7c55kyqc" - }, - { - "private_key": "c0f59b8a568acdaf85bd9027799c6d72ad4b00f43a195f9968fdbbf7b5559c6c", - "address": "lax165jfytr8n52tjehxwautg4kmhez4fy2jdal2cm" - }, - { - "private_key": "cfbbfde3736f2eef041c0da4bbcc982706ae0d5b7806d4e9c649762f8c7beab9", - "address": "lax1vdzk6mtnvnk5ahz4dmlnrz3ddnhudk94u0yf4l" - }, - { - "private_key": "bdf9676ee7386651057734f815e559846de395b214c7056b8fd7789e58cb2e14", - "address": "lax1apquyj2v03jkqayuyhchpxykefv6cs3xtmqtrw" - }, - { - "private_key": "0b51d2da1f6336a5fb97723e1087307609fd637acea1480d995832db2b5afc52", - "address": "lax14wahn3e89dlhvh05nyjp6y7jd3k7hcew4v6dq5" - }, - { - "private_key": "0f4065bf8e90612710b3cb1c03a214f08016b9d91d5c8858db940645e3c8fcf5", - "address": "lax1hf3p9gacddfpvsm5rfy5nrgmmz98qwetwtrqc0" - }, - { - "private_key": "912f1e0e71b46ce114d18b5b16f421a44fb3eda00f17092ca2d59d454176cb21", - "address": "lax1p2n8ktsaetn7q8lzqjgnd4vrc7f0j4qtf2fs09" - }, - { - "private_key": "e8144446975ed50ecfc9d31e5e56a6b3f9df0dae2704dbe370263113205922a9", - "address": "lax14r6fhc6tvjfz3xl4c6nvs5nrsjhgfwv7mltpqh" - }, - { - "private_key": "61c7aa187be1a8cadc6627b81a7102d5b92495e7537044e6c0d4cc57b5941fab", - "address": "lax167va0djjx2rpywx20y72fdfxc0dryg2nrjtgfc" - }, - { - "private_key": "d6cf468e4fef7f8077c6d0b11b727074fcdfaedb482f01c2d42c48b0b17d8070", - "address": "lax1lu3t6zkweye42dvhwd53urrc9z2v35pf9q7nq5" - }, - { - "private_key": "553d85f0cc7d679fcfad19ee084486d7eefa36ae13b66098308fa1638b2b7ce7", - "address": "lax18rjqttw5jk9pw0tz5nlua5dhsck2h3na30qtqe" - }, - { - "private_key": "5e1a2dfbfff9f37eed93da95e050991686e761bb3fb668d11e202edc0787887c", - "address": "lax176dy4g2u57mvf9umlxx30ccpxdqh8xlr0h5v83" - }, - { - "private_key": "4f83bcac034f8ba5d932f4fcd1126747b88c23a510e283f0c6592324e57cdb30", - "address": "lax1205ee0cktsqsuev8vdazq56p3cgt6f5ta78zd8" - }, - { - "private_key": "a8544daea9d72c4af3a2bd2496edbc7a3247eddb9cf4dcb8518758ba4de86ce5", - "address": "lax18fef5cyughvtzqpqz7hjyhlf4nld3myl8cvj5k" - }, - { - "private_key": "d7a3d390857f38a655c4dfcf61b78be0d8261edfdb2b0ede5ef4b41f36328efe", - "address": "lax1luc700ajert8rk8cw0z70vlmfryw27ermnw4xh" - }, - { - "private_key": "c391dc2fcc46608264f1cf6f9012a2b89d0d8ba69cc0bccda86bc3922b74f599", - "address": "lax1m5scq7vts77gx9wqgfuylm83dw7wuqyxafd26y" - }, - { - "private_key": "2226268272cd148f7c5f4665c49c55c6b9c683ebfa0afb83b002617132eabbb7", - "address": "lax1nyff2qfgmwdwul04d0zhf9l30rsxe5tqs4pkkn" - }, - { - "private_key": "a88b54c0fe5196432853a0852a5e80e7384bd084919c533cd7ae46908775482e", - "address": "lax1gy0xsxyhpve0j69m42rjvsmfezjg2uz6p9xj09" - }, - { - "private_key": "5d700ee0478e2c9d3ad871e43438c6a119994152fb47992464f34606ace1c287", - "address": "lax1fztp9nfvt68vtl59axhwru03uuuputvhxj48fm" - }, - { - "private_key": "9c593db61e9ea5b59f9a2ed27b50e177871ca3f40941e609ceb9a619afa57d96", - "address": "lax1jxnuvg4auxl2vudux5g95lacn7wd30grh44mz8" - }, - { - "private_key": "0b2b67a54c2a7e9b660697aac4956ba02d3584eb264fc83a53fc3f9c7491e349", - "address": "lax1ajf7xttd9p7hjede9uzj20kkjwfzlavrahytsr" - }, - { - "private_key": "fbe6c6fc730b15973ef3fa2dba1b1a5df7fe5f8e3cd7219133ec37a9a3ac2dd7", - "address": "lax1qu4634ej72nw929yqncwep22xwn5qhk93k3c5a" - }, - { - "private_key": "f69aad4d79c4651d2550ccb9135fddd0c63c8bbe7105ab66e6f2c13df071058b", - "address": "lax1w6nv8nfjwuxcsnafjf9qsmj9na3x4llhw9472a" - }, - { - "private_key": "03782bfd3d0042daebb2604f7e10eb307dfb3804bfb130c668832b4c468d4e2f", - "address": "lax1d6u4q3mttuskeuw22c8dqsykfn3st7u29s6qq3" - }, - { - "private_key": "c31fea66dd3f135e70cfaae7b7e11ed803aba6979dcdbf7221162f8f6f01c105", - "address": "lax1p0jssce5w8hcgsl7mm4nxwaxjyqhfqgtc72ay3" - }, - { - "private_key": "d46f78ce4c5125fa9c30f7ff619e13c00472a3df56cde8e101ce3baca2836bb9", - "address": "lax1re6zt9hm85al7fep0e0k2v8wg332fk3f49lh54" - }, - { - "private_key": "31b7146557f7bfe514a2b10a038925a9a6d1db27e0013e1c5041c88386ef0958", - "address": "lax13w59qcnxlmsp8pth9st8gpuy2vsrw3s0yfq2ct" - }, - { - "private_key": "e8b9f01be44f2e731b4b161ea9a09c772b604469c310c1122d2c4aa4a56df008", - "address": "lax1s7pr4dm9reg49kml4wldz7z74r4nylau4ylera" - }, - { - "private_key": "bd3c16552f1c402bba49fa338c693710755997bd7946d8095565d8d8dcd5192c", - "address": "lax1m50k8p7sgne30jjwd4jlguvf36hzu5eyjth8r7" - }, - { - "private_key": "7831b9e3ba3e07b2b46b8d013fb1e4d94f55cb7a9c6846726b6dc8036c48a77d", - "address": "lax1y5suwewuh337dg9wfsc2zhwjy0zu3hy307xrg2" - }, - { - "private_key": "ffeb80f3cf398a1ba342b316dc2a6b813f3d06464988fbf2a0fc2f9891922a4a", - "address": "lax1t65qcsnz06fau4ufuq40vu67azdp4e699w4xg9" - }, - { - "private_key": "14815604f8ac7ec51989ec02f2fc5e814d3e89dc329f1ca168f1cbc8affff230", - "address": "lax1yf9vp54wcd9vtf3aleej76a2swpval4r9gzhqq" - }, - { - "private_key": "c25fbf4da8758fa5b8895ebfd0d836d54d84a5c5b06ac2559ba68f68749d8e5e", - "address": "lax19g4j4umnst9k43vkxlpvzev8wppc8werp82xpg" - }, - { - "private_key": "bb6ad82eba97689ad031278db2e85efda645fe214ec7dba4371132219fc6f72e", - "address": "lax1n5kxdd6vk8vymxnxlsyg2wx0ap6xg7dje3pn69" - }, - { - "private_key": "63f0ef60718390a3c623a83b88938018dddef77f6bd095ceb8a14a01ad5cf17c", - "address": "lax12vz6dgm838vskyy84m6yup47huv5fwadejed7e" - }, - { - "private_key": "aed777a0ad9c387ae860721c8a766b75f44e2543afb7610098e7753fe19a8371", - "address": "lax16wd5efaf7h77ynzrhnw2vjhhnrh9anst7t65u7" - }, - { - "private_key": "3c3d9957925d9722f7f20939f0965b5a375af7171e93d78b17dc72f760603792", - "address": "lax1guvwja0jagrmyu5ztvj5pxd45r7n66cknu70j7" - }, - { - "private_key": "5559dd1ce4c50e1ddb3e927f60d3d2be2bdd01d7a3592299112fa8aae793966c", - "address": "lax15lh2jsknem80tq8d95x6dtve9fr47lfrzjgqa5" - }, - { - "private_key": "4e576c2b29b46642be31c0ce057f52842f56bd1ccccd57ef33cebea43e1f5e7f", - "address": "lax1ll5yhzgzy2qxngp6jrm9cwvgmne9mpfgz0n7tv" - }, - { - "private_key": "bfc21b68b726c280d2629fd64cffb6da71351350e13e8d2150ee5bca796bd523", - "address": "lax1sxdvx9gerwq2zd4dz5ra092lsj8c4vja69j5xv" - }, - { - "private_key": "e5ae0fabfd1c86cfdb1af66860d6cdbeeed73caf369cf8aba448eeeecb5e86b9", - "address": "lax1mx4fzjykd0g8m9pckku980jxthc7cc57elmdrs" - }, - { - "private_key": "1e11a3991ca5e9121d5a875601d3077c5dd4012168896ed61be00e6d2d5d7c56", - "address": "lax1qky7mqq3dnm9sud40fnuwdpce7lxelxvcp5d56" - }, - { - "private_key": "ef792faf07a5b8917f5ab2e967e9d8ccf0817539b0580005ded2b4f38f897089", - "address": "lax1hllftupd7vysggtusxq7d2veyrmpfp4npvnlt9" - }, - { - "private_key": "2d0e3e236272c6eb2738bfdf7568e409e66832afd79ae89d53fa04061c6809d0", - "address": "lax1e0vwfw7u0npwujs6r3dvnsfuszj2fwpc49edp6" - }, - { - "private_key": "2fb89353e3f1eba03004ce0819d63f6e8d3d3ce5454c61f927761f17b2f82aef", - "address": "lax1yk63xzcj7q5hl0mcareun4plm2cwpjrt0q0tv7" - }, - { - "private_key": "cfc4ab0516adadb10123447d8f62f737fc1c38827890653f438ee3735389d33b", - "address": "lax134c2f3cuxapwks2m5x5qvxc8d4rggsg9ygq697" - }, - { - "private_key": "b1bbb3f50d45ef596fa0c2261e2003f41e6e92e690b22542255fcd7364253612", - "address": "lax1z5gzxl6l58cxzrusywcyhkl0xxew7gg0k0mrxz" - }, - { - "private_key": "95610141b40dc48cbaafc001906c4682235bbdfd464d7efc15e5af0a4d8b11a7", - "address": "lax1kapwxjnkchuhvd7x78autj78anpvj2m8ef7knn" - }, - { - "private_key": "d2e6733e13973b2319564295d99778b0023d0f9c2b1ec2c46ddbda349c650a46", - "address": "lax10h536gry3pwdafl2ywet03rvtv3jx6ekadrxcs" - }, - { - "private_key": "ff7cd68f8019f75aac2e44f3485f17ecd78fd79e05188451eb5c67c2b537a5dd", - "address": "lax1q9ztly5fzerwqxryq3vyckvxl3k78ew0vq365m" - }, - { - "private_key": "b5ef98f6fd4be0657b4f209273991788a815d230f11c36014ee0178cd5587b00", - "address": "lax1sd5z2lg5rsm065pnl2tfwcqvcxsaud9wh7wwee" - }, - { - "private_key": "0c259e6615f4e0183f9d1e0bfe65a3f725fe8ba8edda12c24d0ffc0cd60e9f02", - "address": "lax1mgc2jvataeyalczqzgppclenxkm8gkq742m30y" - }, - { - "private_key": "8ad33aa12aaa005edae65867c2419931de782e7a7ba5dfd60f07e8f9a7660bd1", - "address": "lax1fxztt5zlpqyda6lpzpndrywecu74x0anz95n7e" - }, - { - "private_key": "136833df97336639fab5ff04d9c3cecc24b223fe56b2bffb0c02a75f32e6a5ae", - "address": "lax1w0zz7d782wp2x98zhkx9hxzxhvcj4llpd5644x" - }, - { - "private_key": "6af9c6e0fb3804231a0f5ba62a30ad197027124e7a54cbe4d72edaa38e714900", - "address": "lax17cnpamu3xlydz696k6tzfvj2f4gtqfv383m6zy" - }, - { - "private_key": "12086dd17e02595b04c270d85222a2dbcb2a97cf6c824615832932d2cb4e5522", - "address": "lax1c7pyut92kkucv3ndqdrkvd4u4wt3jrsr2eu364" - }, - { - "private_key": "e6cf781c5ee0dcb09df164fafb8a34f301dc3ecf935a4072879b520e78365a57", - "address": "lax17st67z0rhvz62mv35wjz6j8kzx4qtmp420jjq7" - }, - { - "private_key": "fe14a154f3ea69b3f55dfd27d7003b495fb2657d09cf23309cfe0995356ec0fa", - "address": "lax1dkdsvsqsjdexf3h4mggg4dc2qt64kcpndt0hmj" - }, - { - "private_key": "15aa029444e129b36dd4ac09c98fb8b10fdbfd788331a8efc09937c789c39dca", - "address": "lax1ym7zt284fq90e929k5x2c8n44lzdmd5yg0g4mu" - }, - { - "private_key": "a478e754a97b47c9681eba6d80b02797bd223fc806aac3eb64b5e847e04f2ccb", - "address": "lax1rsjmys72aea5nucanzhy8j36jnj3d7uw63rnrs" - }, - { - "private_key": "e986599fcef7ced0ece8a9a75ed463a40f3f19e0390b53ab1f6189bbc98f3c88", - "address": "lax1lyklf7l4fncrn4yefjcqye4gf60d7zccsf06ss" - }, - { - "private_key": "becec48708b7328a8fae1a0eb54f09a43c7100f068af736b62cb8b597e8c85ae", - "address": "lax17ke6r7egz6n6fumdpc9hanmv9mlc8sendcqrfw" - }, - { - "private_key": "8e11c0e87a05f340b660a1b114ec29181a3250d0d97c12c0d5bb4e97850371fd", - "address": "lax1crv0tcf5mwnenayysnt7ewr96r5mt4ky2l4z7q" - }, - { - "private_key": "e449a8dde6b8d9ae35c8b2fa0ced02f4f2b4641aec003ebd9f2bdea990ad88fa", - "address": "lax1kzzwl5ff38ses0fee0zpy8u5fc823y7qg5j6as" - }, - { - "private_key": "3e28c23ba2dea04d62713c79be63dcbfd5a103c364fd0d0c9568577b4e30681c", - "address": "lax1kepqqhszpxum8npwr43merwucvhcyxhrkzmzz5" - }, - { - "private_key": "398178a01f5da5c3c1169a086f3f0a726ba01bb9512c48fe33fe3293cbe63e8a", - "address": "lax1ly3khxe6djwlj7y39jlghcaueexs9djx57h5r6" - }, - { - "private_key": "b61143901dc46dac1dd7a1c022e55a05ea78325cf1f0eeb1ac41a482da8f8349", - "address": "lax1a45gxqz9l4g5rzsn3r8mnzeudfz7stqave0e2d" - }, - { - "private_key": "3268fd66eb8fe20848088443028b35d1476194f48c17576494214e4c240fb618", - "address": "lax1yck33g9lrlmvpptyr94r72v2pdfu9ag4hw5j9e" - }, - { - "private_key": "70733af2dd2beac2c76ef2933859057909736a06ec1e309616cd41fd304efbf3", - "address": "lax1mkwxf6rmsv8q49xpjdprkxxfle7clgae5fqgdd" - }, - { - "private_key": "55ba6cc5471322b53ef448aed86ab2f21ee8b3b8017faa0f1759ec1b3292dc07", - "address": "lax12x6u4ydtkj58f6p7267hqhvg4gvwyeptzkhrgz" - }, - { - "private_key": "129d11dca0a371d650ea657c29e9c5caca630d637b947130ea21f9e87c5d5054", - "address": "lax10ua7cn7f9f44agz20g70yd7zztv5rtz75yvhkd" - }, - { - "private_key": "011414a176cf7a224c01df5e62d5d73138f7bd5bcc61da49b62271561a32b483", - "address": "lax1de0e05x4f2ckg0lexvgmn8t4cuqpahplpl2a77" - }, - { - "private_key": "49b809ae96c4e62e86f62b88a521136408c3b42986e4b7b78780574e5fd1b38e", - "address": "lax1qvk5u90ef02h0pr3r80p7jnzam3gfnszueh95y" - }, - { - "private_key": "7846178ab84317fd64f5d0feb61a4574209cce0513fa009fa7935778dbc24923", - "address": "lax1t8zpt640glhzjmnrvncpaxl7ywhnqatk9snmmj" - }, - { - "private_key": "a42c50f67df3484b38d702aa4cc0d2f144788bbf39b98b81c5b5a6cec56834e4", - "address": "lax1r482e9du2asjst3h7t3cqny9pswpps3u2wsg94" - }, - { - "private_key": "2ea28330de487b047052372f27a09589d1312b678fd406380560ff42cab8d0f9", - "address": "lax1uh6n9vdp8lv99u2ag3dsluppkxdtvemqnnkw3v" - }, - { - "private_key": "982b46aa7e018b7fa12e3d466b8183762d3c08b9d42716e367dffd9cddb143d7", - "address": "lax14tpry9sv7x6f7t5lwmlggkmheya2kkyjmpa8kh" - }, - { - "private_key": "82dd2cf2ba998a843d04639a860e77464461eb7da946e16fdaf0daf06a31d31d", - "address": "lax1ux62652xn28ddt67j7he8njhdcewn747wj4vdk" - }, - { - "private_key": "a2231c197d95bdde595cfe6cd3b1c33080d587b8820bac402c0ed3c9167a5d64", - "address": "lax1ctxweeme4fvvcag0r5l8tez5mrepxcg50tzudq" - }, - { - "private_key": "a246cffb5de1ea883ae91490f5094ae6810e6616619974d60706c563c54d6867", - "address": "lax1hlunns29qyfc675sknyvgjen0z7wp588e6w2nf" - }, - { - "private_key": "30f886511e34eee019dd9287148cea448496c49e5f41d0ad80e250a17a0a34de", - "address": "lax1es52x54g534grfyh0gvarar8qjhke9egsajda5" - }, - { - "private_key": "13df5794879f3dd6dfff118b914cc6808037e0228d8e3936b6defa2e567f2786", - "address": "lax1vv6s36glsw3zjw83mzv0xwhtrl9vtvhfnutdve" - }, - { - "private_key": "95f3fc04c99b4e0fabef12cd7b3f09ee653e7187183913f891340d8c5e569f5e", - "address": "lax1e55jwxyphcuchtvs3qc38cfgjj8n2xcl7ud567" - }, - { - "private_key": "eadba9d851759dce1732063d60b69ce05a77083dd74ee45a186c78a668ee4996", - "address": "lax1kuzjqn20xk5ha3fljqf3xkamr2280l3dk38ua3" - }, - { - "private_key": "d35f7c7e2e42f1817764cd1b18fc11fdfe4b88d7501bd6d83f5606d8344775bf", - "address": "lax1d7x7vdy2gxjtm3n9ezw6m25lhu75nm9duqwaah" - }, - { - "private_key": "4f6ac13b85c69632c55105fa02d384ca7da2dbbc103ada21267ed4c17f898581", - "address": "lax1r9dadnkshwprrfew0v5yny2tf6xjjtuae4hjew" - }, - { - "private_key": "a4be8e5138b173c495c0aac22a8908edbd1fcba8e0575fd47bb7ad2fab1d6ed8", - "address": "lax147kqn5pdqnht2pvslh0e2thumthttk204fqrpz" - }, - { - "private_key": "ff2a61762f814d217eb6cbc45696716ae88168e4e53c503ff232c9eda85580e2", - "address": "lax1xnk98k9elgl2ecvzvm2pq3ycsgxj2c8f87jptp" - }, - { - "private_key": "abd2c38f9a7524e3ceb986d0024a2a94f79ec0f649a83640a6e73953330c0125", - "address": "lax1yhcp5kw4qz698wg5yhz964r085jv3tpwlytddd" - }, - { - "private_key": "a20dd8ec542f85a9544a84e427852c2e9971d10f04240159b31b49e62c5434d5", - "address": "lax1crckf50ngu8ce0k7wm2cd8kcgh6ve88yhqcy3p" - }, - { - "private_key": "46146010a75f4318de30b930fe654156b6667c356d45b3c1775383cfbe54bea6", - "address": "lax1vmanzgjld42mlan69uzprr9hpq90z07vu8x00u" - }, - { - "private_key": "66c7945fefef8b42dfd7f92b3e96eca655abbe6f0224387fb7dec007bca0b3aa", - "address": "lax1nfsnl4435x2vkzcfq2aafg8ftdfutel93ccx5r" - }, - { - "private_key": "277333841df2485498201c9ff1c765f1aec91cc573ad02007ed3cb7dd2f71e86", - "address": "lax1r5fuu20v4n9mzhc2wskutk7fkhu2tz54a9ra7r" - }, - { - "private_key": "0c6e2e0882042d2efbb6d82f89485e9830eeaef367c178093c0fb8a3e6f85b65", - "address": "lax1y028pxzhgwhj6kn0kxz7h6rfrw0p6zfzzn5l4n" - }, - { - "private_key": "8d1dcf6686cc3c730deb42890c7d585f97786ea14a18bd05c05ab6a839e5ae02", - "address": "lax1wz4ehu5456yg9025n2ggll9lkp9mpmunzwg7yy" - }, - { - "private_key": "18da9263b7b1984794348d266ecb4c5f99ccf03df18a3d0cafc9863fbcdddc5c", - "address": "lax1tzujlc7kmal53h2latkgpfyzqsn0vt3q07mvga" - }, - { - "private_key": "0cffc8f4adc3f5bf7a710b736721b7d2ad6f4979185df6e6f59fd798ae3865e9", - "address": "lax18tege8cm23hyvanu368mamaw6wf4qndd9khecp" - }, - { - "private_key": "fbb4332e1b913cc298f7e0d3dd3395d4031f6804e2def75402a46a3fd64d6b12", - "address": "lax15z0yv5jrvscy50qw9nkx39znvxqdgtstkjda7q" - }, - { - "private_key": "4f515ace17444428f0ec5a46abce72f24bab4d8e2a0dbecb48065f86298ee6f2", - "address": "lax1maklxarv3a4l4ucgjwzfn92ngeut07gups7kh8" - }, - { - "private_key": "53eeba8af933af9b68e8c339d21038751f8056bea0b088e986cc2ae315d1d28f", - "address": "lax1xw40w82nnn9yegahnr08kas77tunu2559qjsny" - }, - { - "private_key": "6b860923f9651a1994ac3b928a73732d8360e3a36769c0cfb844973667409137", - "address": "lax1vqhlm322l8qxcrny9mlnye7qvjysdn90c6wtry" - }, - { - "private_key": "c1ce1fc9a58306c5bd2af2c9a9a6ef718fe9fb913a262d6b13441623edec061f", - "address": "lax1averkxt23727dv6c6zh3njx4xy5ceqzgkqgvgy" - }, - { - "private_key": "aa40011cb4c30b14ac93f050fc0bb745fefe6da43a66cec267d7ace3432c395c", - "address": "lax1c0h07mug0p2ujqcjnzpdfmjwwvgttc90dwmrv3" - }, - { - "private_key": "488014c6fc24c4006e69e75d5aa5d1ad7ec5e00ed325a036bf7ef1976e194b34", - "address": "lax12a9zgxdprve0qvh5w7ap6fn80vplnhe9qv2xuk" - }, - { - "private_key": "cf4122fc8dc05b4069c0f9979d3230788a8093e763ae57f8a06c563eca6cde90", - "address": "lax1v9madzdal4uwl6pk0q734y8ycsmug9c0urddhe" - }, - { - "private_key": "a7eb05ce561ea5436f52f0b7080252c5eac12c8aeaa21100d8c995e530b5e334", - "address": "lax1ww0rg5d5pkryy7qwhrmv09unjtcjxxmkv0jz5v" - }, - { - "private_key": "71393578d13b544be1d21b3381a84fa252f7b2752d2d2ce87d99314d7f2483a1", - "address": "lax12zxlw5tjt8hwhnlxkuruzk8st6gkhlrnt8vtg5" - }, - { - "private_key": "7214426051ea616b66c7fee6ed0a17812bac277872c7161ae598e8738dff83d9", - "address": "lax14zc98e073mvxcg79r6j5uw0l9sm3wxxhkprqxs" - }, - { - "private_key": "d575f4566e9e68323534d8912f7c45336cb7355977a27949857b14faca083c0c", - "address": "lax1v7nuw0d80xfpqh4acn0svp85xr49dz3rqryr7h" - }, - { - "private_key": "f8b5778f8dd57fa12b807bb9b848aa4d5bf26d1c79045e0c19ccd2d4d1546f35", - "address": "lax1lpzw23tp7nhct4hdk9ymkv6xsnqwg3hzufjf24" - }, - { - "private_key": "73f17ce70472e195cf3fec705a92083a9122097c273ceb192c2149a00004bc8c", - "address": "lax10ep5c4zhyldyak5vlk9mmrxfxrlx6n6gkd7lp2" - }, - { - "private_key": "a7efa2e9b0fbdc19cbcfaba2189065708a72694332053f042b58b9596fb0d23e", - "address": "lax1phe03zu97jv009fx8uflsh379u0f9mpujhx4xu" - }, - { - "private_key": "db0cc612cab182cf0922ea04884fd7a87aeab49a0ceb7902e0a96b42c07952a0", - "address": "lax1ngs7qdfyxdwah3mqxg6mf9ey5g5yemtxsxwgn7" - }, - { - "private_key": "5a64ae51b197ac58f0feec4edcf7492402270931cf6e98ed4fd148c9f41c0ef3", - "address": "lax1g50mcsruunt4a5e46zsqhvxss00ccssxwe0hkc" - }, - { - "private_key": "d50bfd3dbdc0ea63cf6b13192b834bba4c07d8e8be445d43755902c9832ee5d1", - "address": "lax1q2v76nquu04ay04lrka8jjsznp5zvm4255enq5" - }, - { - "private_key": "12542e70227daec6b5f31e48e93aad8e985f335096e3800c457700bb29ea81aa", - "address": "lax1wh7ew69vhgdu5lym0ql95dey9xk36ajksepkna" - }, - { - "private_key": "a40cd1722fbd075cc97be9b5bb24baff5e723de4db00099caaf26100fba444b6", - "address": "lax1yud9yd5s3jvqv8vj2s5w03sxdh0qkjegk03nf9" - }, - { - "private_key": "a70e0679241b1204d9cb8dd9ee41b8277e3c593efc2116d8ae38438a39b58309", - "address": "lax1u7z7v3cafaf37jgdhs6cefvn0jvyfzp7l03a3v" - }, - { - "private_key": "68b4244754ae9ef2acdd8eda39eb21bf21348cdabf44fface38b0b652d892370", - "address": "lax1cjg62rd57344ssg4hujyw3fxtwys3k8xntfngc" - }, - { - "private_key": "d0fd1fe1180b47c28e12ff929d6edda337034ec6f1be8c02369a2ae93a10bc8c", - "address": "lax17g7xcg3sudqdrv6wdlge2cwd92qc5vxp9v80ju" - }, - { - "private_key": "020e93a34139591efcfa94d505089d8e43d7b60076c87224ea79223b5cb65c6f", - "address": "lax125f3w5gpx83dg4vmgucyychfh9ct033s76ndfh" - }, - { - "private_key": "40f9102eacc8b36762631ded0b8ce8ced640ad1401ede2e79bfe6430cd83e72b", - "address": "lax154pa3zchsa7qpppc5rj0pkdfuew9zu853ltenw" - }, - { - "private_key": "f65f1479728eca8602f8fe381fefb73aafcc1ee088d4e8affbec1be1a578c835", - "address": "lax17d0nu686elf8wjdf9cuzv0c29rxapgngve7atp" - }, - { - "private_key": "4049f99628fde639d19875543b4f30689fb6ab49a5d0efbac6fac7c3eb72c6a2", - "address": "lax1aj33pcxysxt6ahna7hrrnv0nu609pfa3x3h7t7" - }, - { - "private_key": "b46206d60292b3e94d887f22e4c91792d1ed49c017ab55b3fb8975aca26deb27", - "address": "lax1d0qkzpcjp9c4wy03rgv9xuq45lz55rd20f7yku" - }, - { - "private_key": "e6d9b0a3b3947d3012fa3e8bd8da38729aa88e214cb6f5b5bd697ef4da655867", - "address": "lax1xnx0vynlhga2urulg6a07k79mc20v7t4qam8l3" - }, - { - "private_key": "51cea84051cbd3f9dc58c56fe06cf0caa40e63c1159a0b0bbf10ff2f12a1856b", - "address": "lax1q92c0urgd22vhpezrdy488qzxegtxgp7t7p482" - }, - { - "private_key": "894aef9215f979f7e5953549fa96a8c86c95672dbc2ca0c227797e9d1b2fde7c", - "address": "lax1a9q3gxqaeftcf226nznm9ghqwcf4u7p7tvrhrh" - }, - { - "private_key": "5018ced4d64691137448744a424f352698101cea5e5f93c07fc3cedd723cb85f", - "address": "lax1kx68tjwj74v3jllgg5epvemqgwu2repjhkfk7j" - }, - { - "private_key": "37f4dc8dbf908f29e8494194f753b25081a2a9e5cafaa4dc90e998399bdb67f8", - "address": "lax1tpt0exsmt3h5cu8crxdt6lpydwdq9hx35py2l3" - }, - { - "private_key": "77323c2483c67157ceb2c96cb3d00588d97a23bff51bcab14f07688451cd35b3", - "address": "lax155gqxyta485ffj8jwkmh53y8crntw5dxkn3etx" - }, - { - "private_key": "f380eedbf6495931cd13479bc2e9394b76a40cfdf417baf39f24bf1dbe7594bb", - "address": "lax10pwjs3493zgmzxhcfume374k9260u4qm3gmgal" - }, - { - "private_key": "6bc42cef5ae3a6b32945cc6a7773d7f88272105b47fc505a138009656804af46", - "address": "lax1y9gssr3grz835mvuxkv9d44u6c05clwexddfpq" - }, - { - "private_key": "0a58beb7170de282a4b9eb4c9126cd909511a88521057836610991dd15f7f365", - "address": "lax17zpkxljymgdlw8pa98dwee49fny5pj9vx6c404" - }, - { - "private_key": "f0e1d3cf6de5999133321c27f2cc171c4f45adf3138aaf62987ef18edb7e8259", - "address": "lax1dc9efav92reufdh94zfhn6h4uhjgsjdpy5td9p" - }, - { - "private_key": "13acd8368fcc0b5b71d4eaf629dc7933017ab164134aa7fff27c00979446a05a", - "address": "lax1arcw7aghm2jrqny7rkd0tw55gz74a9gmh20rr6" - }, - { - "private_key": "973e92735afeb6056be71d95bef8dece6e2e720456f246481a850f9a4677a69b", - "address": "lax1v6qngqrlc8annnypz2xna7uj6qvcc4plwhc448" - }, - { - "private_key": "8cd3085d2db9f8c58bc76d1ada9edc8c3f2d7262fb714c45f5a0aa91e3a17bab", - "address": "lax179x8axxgsaurrfwvle78t398n2m8jhgec7227u" - }, - { - "private_key": "95a070f7b59a8efb544131d6a9bf99ed26a1813b204a3ae3af55e9a00da61c92", - "address": "lax18w2csravdk3aucn8yperfn5xye0net8eat82rs" - }, - { - "private_key": "a8f0a94188190c194bec304091ba05069d178161246cfc97013224e9c7c3b38c", - "address": "lax12aanxekk694c5h6prava3ku3swnn847k35c5c9" - }, - { - "private_key": "d418ea2e1729850cb1eda8d58ce2e3a2596237771a1bbc1e5481fcb1377f2bbd", - "address": "lax1u3euahjmg3qrem4rv2jmzkk0cpqa7k4hmk4q7f" - }, - { - "private_key": "12659f94c4acd0eb1caa9831691e42e81e6f9c7bd941398813f1771fda8a044a", - "address": "lax1lhvj35fd76q4cahjqd2y7la8lyzh5gvq8266mp" - }, - { - "private_key": "29270054a3176ba44ca1356b3f1c62c49962b425fe20adcc237549c1431a3132", - "address": "lax147t7u6vvuzl7h5uws8wszncwl2lw0akmp8rk7z" - }, - { - "private_key": "74c7c81b536f32bf53096ada89906b76e3f3e2e47ac2fcdd93eff43b7eeaa1c1", - "address": "lax1ps3nucjvapvfmngjrrmhdfyqdrrjcuvdudwy96" - }, - { - "private_key": "d5847b97208b9f610ba0006b6651244c888f0b1ec6622b6ea2feb9f7fcac5f51", - "address": "lax1t5pk8rewv20egcajm8qemedl0r6s050e9pkj8l" - }, - { - "private_key": "c08688e5a983aab993bfd82cd591b2305e5d7ae4ed49a5ed15d278709db4fb15", - "address": "lax13flt5pz5ym5svr2afts4qqp7hznj0jppuyyj27" - }, - { - "private_key": "02c728ccb9cebfd87863cd464b7271e15ec1ecd4ce925274d684bf4fc48f0d85", - "address": "lax1kua506ccg09a7l7qmu73ewh7hzz4zj86rp0m2u" - }, - { - "private_key": "ead1fba2f866899de2df11d3dbf98c3d257b3f27484e301e9ee006670352767d", - "address": "lax122fg0jxslh5hxwkfu6g2pmjvw6qdrw9ta7rjz3" - }, - { - "private_key": "2ae2c8f3475122332111c61f365f0a05c9dab3b4239bc8e424bf4ca5a4953768", - "address": "lax1lg0dyrm5a9kngdv2tq2zm6ssku6xy734a2nr3j" - }, - { - "private_key": "148870e9c8384cdf6cddf21826ce6bb3729e5a5fdd9304cc5b1d38bb85fc4e90", - "address": "lax1m27fr382m2ecamdf2vl9gsk5dme843vdau9ca8" - }, - { - "private_key": "b1d97c4995c7300b6a6edae10d32bf990f0ac1f45ad4d283391df9cd5a08e621", - "address": "lax1xy6snjhmh57lvnkn8fj2u962j6v8culse4w0e8" - }, - { - "private_key": "c4a8a2f3b0eb0ea31a3b7e14978edb84fbc3cb9d058fe2db9fdc73fa85eea2ec", - "address": "lax1xntp3a2ev7k28yhgca49ft0f37etydvkcgdsqw" - }, - { - "private_key": "e0b8efe425be6acbfc530339582ceed6d130fa0b9c7be7c668124674f141fb51", - "address": "lax1a90yvtnpee94nant5swdw3ljvnrscgay3k95yc" - }, - { - "private_key": "95bc0daa0508c0b213a924fc0126fd29d03e5d86441be722c56c2c50381b607f", - "address": "lax193utljj8tk254gncc7mzpssfd6z770tmkq0xf0" - }, - { - "private_key": "c670c475ff9721319c6a78c7ed8d472dcb526b566fb5153f6a199b70f3687801", - "address": "lax16argepuzqedrruuwflxsrjde577vns4jr7wx9x" - }, - { - "private_key": "d7b2d7ef2fd2f176d4b9479abdb2b42ef317292d2b768d3b8d9aa4942198eae4", - "address": "lax17el645nh567dtmf8h2dc4zze5r4wtu7y9j0gdw" - }, - { - "private_key": "4f173f3853bb4890370834d9cfb0141150a819dbd7c3748b5cd7dec466c69708", - "address": "lax1pla2jrflqz5rpjf5v87sxqxyr03n8g8ltxqk29" - }, - { - "private_key": "a9292c329ddd37cf4b0ed9ecc073d70a6cb0a1362b08644f4c7241473d3710aa", - "address": "lax14enm30p7s4455efj7huasalunauuvnfvh4t9j5" - }, - { - "private_key": "7a0283c58617e3f34fbe57cd8d1731ffe6f4037c165f1da232bcd975077ef4db", - "address": "lax15m7xxcs7526ndjxw8qz2ee9rtgr7d8nqu3w9a9" - }, - { - "private_key": "56b86d5224ef7a7baaaca14cd43cf8ff2545a04e2e1e797b430f35118e3ca13e", - "address": "lax1kgq6lty3gcyacfht30gu4v8qcu2qyd0m9222m4" - }, - { - "private_key": "79c829ec4d997f30514554e3226b23da89c6dd92c3cefd8b62702adc200c034c", - "address": "lax17xnnsxj0q5ytynqze6jvjkyz69ng6czvnea965" - }, - { - "private_key": "a4ac5d7039055930f302208014959632af4d2f7538c628ff7f4fd949ead73a7a", - "address": "lax1eee04vxgpnt450e2plha0dndt8xhwy4gt5m00w" - }, - { - "private_key": "7eb45c3980e3df3ae831a8ea601f3dcb858cb25f95d9566a7f7220de3e1ae1d8", - "address": "lax13yfgxtxzawk4fym2ta42lg3m87dhm2z3d5wud8" - }, - { - "private_key": "764c4792b63facababc8389b88a1509c3177016f1352c431dc5f1dcf7a1353d9", - "address": "lax1wzuxa6ah5e4y5dn32pd04p924aka3w6k8epjte" - }, - { - "private_key": "24c7d0ca8cd8bab5c1a37f17daf9a16bedfc53159b0b26dae4394314ee22c6d4", - "address": "lax13kax6m0wr4jwpcrp68f5uszmp5dqdlh5g0z07y" - }, - { - "private_key": "9eee3c5ebe105e19c89338f346f496e675ccf96a04760f1ea6fd9de7b40e5524", - "address": "lax13w4fm39m89f0h908cz4xwqxfv5qcft8rxhlyll" - }, - { - "private_key": "64b39729fdcd900642577d0d4de0e42b29657ab2b63c70d9e7c2a4b528c5c16c", - "address": "lax1czu8d7y60kkv892ejzzc0rg4qlgcrpdnn6vxdk" - }, - { - "private_key": "ae4435278085459ae64a740b286dd7dd8f257b1b705395c095cdf327518b2b2b", - "address": "lax1lx5tkp9awnhmg3suhgw5cfv0pq6eznlupn9v5a" - }, - { - "private_key": "7e6942904797065bc4d199da9cfb48076c4c14af2ecaaeba34210d421e99a4b4", - "address": "lax1c430qswj9nw3lgwcsjwgpty4em9trdqjfng7ha" - }, - { - "private_key": "fe8122cee333d0933fa57266bfb2971054d99af45cb69b65dc5d68a71d93b5f2", - "address": "lax1njy4ll09d6tru9j779dl29th9u7usqzvfqsrwu" - }, - { - "private_key": "c842dd3d68c3c78710bc7c03eac871bb8302fbc6eb6c0a4f348825c45e2f8d28", - "address": "lax18uj3czeq9frzp6ypafgq6zzfsad5n7y4rc2av3" - }, - { - "private_key": "e2a3d79d88dadae4b361a13f5a1798225b8c8737a9ee105b39de9bcff8660a53", - "address": "lax1qwm8ucdq20fta5vyh6cdp4nkessgc5d9c8mkrd" - }, - { - "private_key": "0bac9426265104f060191c47ed0b3781135fe4ca7b47d867772a7b82b1de840c", - "address": "lax180q874jhc7jp0a3f85cgdh9frerhe240nfun3d" - }, - { - "private_key": "bc2ddc91b0f705310fa6e1e9af8b579d343b50a721fdac15fddc0aab05a9b406", - "address": "lax1csx97dl82zgye2dfe768pj4t8faa49h990ke2u" - }, - { - "private_key": "ae86b70a4c1afa8d9a8f6aaf96f19a3f4708c0fe20a2569aebb7c3e770f62480", - "address": "lax1gs373se2v5h88asfv377q9klapkq097wmkuv64" - }, - { - "private_key": "f64ed5a1a6473d3dd8961081cb3784af24eb7db37b3a281bd011e8080f7ee620", - "address": "lax1h6zn86uh60328mjc5535r6r5s535h8ltckeyu6" - }, - { - "private_key": "f8b2cd56c0792047539ec67b0219e8895bae561c1ccff2a1191aaf47b6396b97", - "address": "lax1k0e369f06akessxrt0am99l66twp3havnz3jps" - }, - { - "private_key": "9076463eb1a1fd0e33cf344cd91e129e23a2af496842715f26e73aa26620243a", - "address": "lax1967s8cf59p67nu7apusxxgaa5mzghl9l4cqsw8" - }, - { - "private_key": "a47ada2bbefaee336df8c4a203221744e0695d4fdcccecc85a898bff2d7b0dc2", - "address": "lax10sq58m059j77jse8qwadx2kcy2nqq6xer2tna9" - }, - { - "private_key": "625dbf723786cd47b4179b3078bd059c0036039bb936c32bd9f2401beb3405ab", - "address": "lax1x3fj9h9fhktjanhkq5nu4yw4pp5hva2r7kteuz" - }, - { - "private_key": "f71fc3e295860f4cba575eaf954e806ed3ad1fd2578f409940e57dc5ee906099", - "address": "lax17tgtngeazgfusrc2nwfcpw0agn6exs88spzlcp" - }, - { - "private_key": "408f65bb1ee5ee97154163df6690a8cb694164908e3147ed2f769166d91666f2", - "address": "lax154zr442g0alc6e5law5lqdtfrkmzhynt97endj" - }, - { - "private_key": "5cc07abadcbef2cd96b4c494a2c6b5bec8f76a83050e9222bc95a29e6b75ebf8", - "address": "lax1uwtfrq0ja28gph2lcse2yf3hzt4gefmc9dgna5" - }, - { - "private_key": "973dc1ea29c993b76d27a90bcc5045f2b8e7df20d6a0b1ab00da29723819387b", - "address": "lax1g73rf99ne3s4mxffprglmme299msy68k8mxpne" - }, - { - "private_key": "45610d0ee61a72a2e2a910618035b8c4be4dc9744dc893ac35ed284fa62ca8f8", - "address": "lax1nmcdf89myf9aa0h6huv6a727prm6g8xjaf3wn3" - }, - { - "private_key": "c29b660b8ce4d80ef527541b77f57d63ce61ab3a2c266d4f5687a281e154f49a", - "address": "lax1yeuzlf3sr7xwx398e2z2q7vkpdzjhntfr8f5m3" - }, - { - "private_key": "e2f7e5a2c12f3e23ba3294f5a61a1627fece8b38b5188d8c309c572f3de98199", - "address": "lax15zqx3w59qul6sfsn3rpdxrnetuhe9l5dpvjlcp" - }, - { - "private_key": "a5929121e17929cc5994179017d00a81d7fbd2f51006e83d9bbe83861b6c3a7f", - "address": "lax10zswg4s8rvxf9098cwqqs6hzmtjvsxy0ucmyq2" - }, - { - "private_key": "458ec921ad758202cbb8dc778e0cf74a6cc239fb644204e9e1425c9e5963e985", - "address": "lax1klez4zp50863taexd3lrpclfqc3tkktszzu4dl" - }, - { - "private_key": "7631211b1a124c29bc85f5a4ac6cd15a8925b76816ec173da804ed481c58fa23", - "address": "lax1xkx9s4uycyymrgtlq738n26m29jg45farg4g59" - }, - { - "private_key": "4e822120ed2763af6d0a5c03d7bdc26d928b600bc117b135621fc3d5a0431738", - "address": "lax1tx3ggjzns8xdtgrd4s405vkxq534p7y27zfjnk" - }, - { - "private_key": "3762204d23f476eb88b94f5914f7287d3b68971c4604cbb339caf90d140523be", - "address": "lax1kjgf23gksu80vcnwuf82n5z8d9e9kcyn8fcpne" - }, - { - "private_key": "c911a09d694a20586a70da26dbcf8875402fb7511d701f536440cd69d09c109d", - "address": "lax1v0vkqa4ys0n8julsfrccwa3qcuqe684wzmw2yj" - }, - { - "private_key": "a0f3e6313f709ac3bb49c1b23b955fc81b3c96fbab31a645803a0be3bfe503ac", - "address": "lax1ej5p7ld0xcnmzlq3hjnlg5hf0hze8r9uxznam9" - }, - { - "private_key": "faa35ac50c7f646be865a1b05bfb29c39bc965c2cefd62ec37180f38702fb871", - "address": "lax1jpkjrr5s00k35vrhdcp9vrx74f9ypya4yx60kk" - }, - { - "private_key": "975da3ed28e8f1429f62cbf651b878a555c8351f73a38f8cfdf45d4c439a717c", - "address": "lax1z0xq7dpvxr7hkvxmgaaxv4gjlqwhzfduqn4yhk" - }, - { - "private_key": "87775217532804f378b4741b57dc6aa84c87a694fe7efed611009e772ff26b70", - "address": "lax1ps7agvztff4ck3axanj4fljutdmlnegcz3ljje" - }, - { - "private_key": "01807d2206c5112765b011d755830b774f757327d0fe0a354385c6d1b99e292b", - "address": "lax16g606cqee3hx9jjgrkhnu2ruar9rczsq9wnsem" - }, - { - "private_key": "7fe1ff2cccdded36e6db8d8967ebecd9a12deeffb183c59f78b7cdc6297c24ab", - "address": "lax1fpfau4qsmvj5mq8yvzrr7zkkfcg3jlcmz4fmgl" - }, - { - "private_key": "5d6d2f272ce60d6ed8cef98e9c6ddd5f3091b54eec775ca322dabbbb7a4638a6", - "address": "lax162m7uyhlf9asa5h24wtdegxru5cl0tqkhw7vwc" - }, - { - "private_key": "a7ff3247bd951d35ca67754537e7736fbea6214a3da382f15f7977691641ad29", - "address": "lax144c8pkly36aa39kyrngwgs2fnxpk5dcgl2l79s" - }, - { - "private_key": "8ac6101cd180896be8581baddbc1ca5cc47336f1990f2a9b1d074e6a33ee8f60", - "address": "lax1ztxqgw3jy0czzkpkah2930n6ekrhwdck2rt9rk" - }, - { - "private_key": "ab30f8be49847713a1746a3fe9191f59c5f2e716d58c577149d9323a4d6d8780", - "address": "lax10028yu8j26hxe3glv58sq7c5wmlnpq0qp7x44u" - }, - { - "private_key": "96d1c5584349fd6168ddd2048e0a6ce42aa8df8d1b414bc997ac467e21904408", - "address": "lax1sxzjk2y8j0pqcfu8jpnfx53w878zha9devq28t" - }, - { - "private_key": "da0b32940d433ddc222cdbf854add25d5f660fe178d85435661a58ddf536a97c", - "address": "lax12p6qsu9gs9nf88kk4t6l28x2xfwjs72en62s3d" - }, - { - "private_key": "6c8eaf56279924a6cb392324ee5b9d0e2ead1c7f9783a8477b8c082a113c874c", - "address": "lax1zqdf0rlvy6zlnx5d0lju665a2xkqst9t60jmdt" - }, - { - "private_key": "f9942bb9dd83fb50fa295c29c616b7d8fad54a55a34b8da4dbd4aa01fde52434", - "address": "lax14j5sq6xdll4s7zvz3azxt7dgf95ju3euu4g5yh" - }, - { - "private_key": "c31892ce6c2e3832e2c4227a3422180826f09198d80113b2da30ec3ab9e18991", - "address": "lax16l98tn5ee98g6hh68xkdtk4l9yg9w42wxgw5an" - }, - { - "private_key": "f3e23ab84b72e47418d1223d624bc39f2d8d39df4aa70b2ed1dc9dee7c1a5118", - "address": "lax1eqpv7g5mqjhkgu28erfwvt25fsa2ms8zpnmvux" - }, - { - "private_key": "eb1a335a8beaa108db899a8b405a043ec720cf4b91fc26d2da54326a8e93a379", - "address": "lax104thl9nzs9nrllelhua408d0fdf9wu4dftug4t" - }, - { - "private_key": "7bcd58fb0ab46a5cdcdb9d0a610b454759de1de36e59de47eac51ee352cbf6d5", - "address": "lax169vyedqylgm5etnmhds85ceeupwnhep25tj5nr" - }, - { - "private_key": "c4049d8f3b639b6829e8d45c043bf9cf5a0b553914268c554efdcf3bc43b88b6", - "address": "lax1rq0hnhs23ujy2sjh8mcyw4jsrqr3d4tegzwrjp" - }, - { - "private_key": "577d836cbf97d06ba571e0d79c60d4fde744763a7dfca6481e80adbc5f8675f3", - "address": "lax1uy7q7zytw36h7fhksm58ncn8kykka53jtny07w" - }, - { - "private_key": "d0fb4003d429a6ebc19156c056004e90d95a9762d59b70f6f12b1439a445f9d0", - "address": "lax1agmgq9py4d6uu9ljlqu2d3wjfech8g462p9zjg" - }, - { - "private_key": "5b05d566e9012f6893c39ec452696a0af868a54456e1c2ac5a54727cf5fcf24f", - "address": "lax1jd7mpnajj2aqjxpzqq967un57fwevp2t4k9yk7" - }, - { - "private_key": "d5360de84e6f7bc9179e74799208008c1e1f4acdf6cdefdcb9a58a9c11abc38d", - "address": "lax1tzrpx9e3p8nxx9566h6wak288hpdxkkmmjn5ha" - }, - { - "private_key": "5c25ea62051a71efaa00af9c0c95dc262b04832c3ac066ab18d4342139d2c130", - "address": "lax1kl5ne2zyl2rhec2xnw04qqwt2d3an0vv7668w8" - }, - { - "private_key": "f3056bfecd160a1dc331b67db2b73a6c2309f5bd5e9f6df76ee65810c2f71551", - "address": "lax10v0gtx56pkcpevn99e89sggukvqa5p82kys48z" - }, - { - "private_key": "ded55757c590d86033ce0bca58571e482423ac02b6338b4841e2fee72bb622ad", - "address": "lax13z4zeacheu7pjcj9sfd9hetecc7c8gf6rm5pjz" - }, - { - "private_key": "07c9a38508e52ec043379a5c1aa1b31a3fd4fc725de499e5f2ad169db0960500", - "address": "lax1k5snux9e2yw3xndch5qksfjt8zexpsv2x3y9g0" - }, - { - "private_key": "b36c4725926a4fe71c77513f9bc605ffd04c8c12a09c21d6c3a5ad65a5baf3aa", - "address": "lax1v0qjsq89tll3wh8zl7rc3u7spxe79d9hfkvnss" - }, - { - "private_key": "2c356b3878a139b608eb6c645a882ac71089b9257431403fd9028ce59cb9f4cd", - "address": "lax1vx2yhv7nsf75ph967mtxvg2j6xwnu5qrrq4nak" - }, - { - "private_key": "e01f993f37277cc3dd603f155ced8b18245b527d97831388f617c75895f4e656", - "address": "lax104fxss7kj68xv4vuvd3lkr2gwm8d7m9xru6kdm" - }, - { - "private_key": "dbb072560b403c8017648613b824311c13c15d563df6b511cf943cf429a5c6e4", - "address": "lax1s2nktt3krsxxwcp47cf48wkhyah8tdmk3fvtep" - }, - { - "private_key": "be7f20f8059b97159d403010885c4aff6f0af49f7aaba73fa15068879791f229", - "address": "lax1f5rvk9205adrgne67um5y57tsl7vjzwlmkfsep" - }, - { - "private_key": "d08d027dea006ca37f3aa69e43b7567ce5bb8170b03229ca2a7b8d00858b040b", - "address": "lax1nxkh98vc9gtk85q5sa68sj8hjs6f8cnuyhlue4" - }, - { - "private_key": "b75bc427cd2725b498e0622eaa98dbc46751d44c7013ff2597406beb2e27ee34", - "address": "lax1eg6twwkpva7m07w6nfh29250ug4fcz9z43um5z" - }, - { - "private_key": "2369492d9a84b9f6e839dceb757b597eba591e21d8efcd576d510d2762dfb755", - "address": "lax1k73y3j8x9000jg0jjjmhn8s66e9dmkpj9539v9" - }, - { - "private_key": "fb314fcc247eb67cda3a45a3283d195f08e621317ac7bd4d729264221de11b81", - "address": "lax15d5yl63k9azqz86z5hdsd8zsrw0s8kz586ezkh" - }, - { - "private_key": "5246b93744a97b1a64862527d92cad157cece6d84cc91f2b3e68a2299e1aab82", - "address": "lax1dpgtgtrhamnus3a53tehnjdygv48spnn0j9g4t" - }, - { - "private_key": "8b22d0ec60e53e4ef09200d7de796836fc7ffb0242bb9700b10d1f18c9209b8a", - "address": "lax1gsw9veufu4eqr3cdudtffq835awvv8ygrtedwl" - }, - { - "private_key": "78a2f8f77ba6ddff06ef961afb38689118ff25ff3c7f7699e5fd22ef7586e0c8", - "address": "lax1ym6fld3yk29jy022nfzt0tc3y6vn8mwcs4dtm2" - }, - { - "private_key": "2420a1486f8ea1e190f00bf147baaf93b8f5a9a92f273ecde444c1fe4c881121", - "address": "lax1vrdhw7zx6uqwpsxkqrzf40un22aarwxkyd77j0" - }, - { - "private_key": "2d8c2abe454369b16dca8db440ff4ef73a7694042de14bc761d085ebe77b076d", - "address": "lax1hnfjxe90x6zt2xtyuu5khjalh2kyxx6kmqpdjt" - }, - { - "private_key": "7eb7236dc793e7c8ba5794f981d71f243da0ef77f4f228844a3524b9bfabf5c9", - "address": "lax15mwe395z472l3495ecjswvknaf66xxqzm0dw4q" - }, - { - "private_key": "a72cec6149f01d21cd68a722e6c928904b839c9da68a951f1b1d06466525a89f", - "address": "lax1sjz6klatpef4m8yxxrs5tnc6awtr0npwxghavm" - }, - { - "private_key": "2e8658bdc0e08e4340c37b14a44a49f207f063bd900a5846ffb1b59913067e46", - "address": "lax17kdnyhpdnwrttx994g49vz8gwevcsrsux3kvmv" - }, - { - "private_key": "ba520f5047a18361e929dcf792891d1aa4dba0839ea8ad586e52c0c016b787c2", - "address": "lax1uexgnfqa3qdcgl45jeq0dvpfdjw923fe4r2k23" - }, - { - "private_key": "b87abc3d95e75106a5d55a56e160175e2b494eeb88352b18496d651900980aed", - "address": "lax1gjm48tq90xjwjdd8zvfndhca2jnj7rk6ncftjh" - }, - { - "private_key": "d40b2cca6f1a928951ab45d9318eae41af336ffb1a096ad8176a5c89b7af5dd2", - "address": "lax1vhty5s6ztk07ny66pskp8l25lhxcy8qyy9wajn" - }, - { - "private_key": "47bbf040b285cd1cc067b8d415a5184dcbc4fe803d3b547571db4c2387ca3f81", - "address": "lax12juzjskenrmxctm8qksvt027ncfarzwymxesu7" - }, - { - "private_key": "0d1df701bde44dae5cd713e4ca8386b9304393af250bb89f77b973355ba7b50c", - "address": "lax16qswht04vkyl9gjvlm23guuhwwfxra6xn9zpyv" - }, - { - "private_key": "01452f62a0e7c628a1fce8b78251758bf5cbe626b55f25a8a7ce61b456314172", - "address": "lax1hxydatdpamtav8tvt55a8ht0a43lcpwxralkfz" - }, - { - "private_key": "f5ce91dad8d310518191d664e24cc2c575ab2182d8e7650541ea46a81d7f9e97", - "address": "lax1vj4d30zwd8eg6mc4luwadgmvesfes3g6p0a0gc" - }, - { - "private_key": "966bd8ce0807b5abd75687929a485774e973431522033061d274417313acad51", - "address": "lax1whpr5vlc5cuy5rqhflxfg7xgn84s7zc552z3pf" - }, - { - "private_key": "c357ace353ff346782e408e399e9b460dd86f06684425f3cc2b5bc811462c644", - "address": "lax10ksmuw0fmrjz7nhmplv0q8ktxvpyjwv0pjyqep" - }, - { - "private_key": "ac5f6d2056da0b076fcc8f14316064543e0835145bf159dda2ad4d54c8c30429", - "address": "lax19leqk60zq32r2gy88rg3k4wmdsdcwc0952mqn0" - }, - { - "private_key": "71a3a222960da1810c2603ec1328e58663a06b4d9fb5156b352af19c54966106", - "address": "lax1gep34xm34ava3lfrhky5syvtavhpf7wjep8ws5" - }, - { - "private_key": "6e94a4865057b5ba687c699924443605587c4b2d905232745fe51318ee7a370a", - "address": "lax1nhzsznq4hlq5kc28w5knyfy0fvjg2505k6fvky" - }, - { - "private_key": "fd009df0d0c1c7f8cb68477a1f78351bb2b565848c6582da56c7306dcd01b832", - "address": "lax1gceamkkhdkun93eah73ngv9x0g92cg6m63d3w3" - }, - { - "private_key": "1ec96ebce386ebf74e763c0362e70e6536557bdddf6c9d7420c8bebc15fb1e6e", - "address": "lax1su62je9h6x3rz8cxuedtx3sj4z3a4fe0f38t8x" - }, - { - "private_key": "eb09c21b9687ff2e2c2b387c8e05e361422d88060ac2b5cefee348b8aa385a58", - "address": "lax1nga54t77s5wshvv2ju0wcvh4lrzzs7wjm0283e" - }, - { - "private_key": "4e55b76f4beb98c053611bc45ceddc9a55ea33c4b3453057479a810005110872", - "address": "lax10xtcs5jpuwdc0dv3l9gge5ats35ws0svcayjlw" - }, - { - "private_key": "3fc77e1822651453fe95952c8ab941b7ab00d2952aeef90bf80d0596a40bc321", - "address": "lax1gxjnwrt07nzf6reeajgjppta9a47s6xy73kaka" - }, - { - "private_key": "9de8ae36a7836bd0393637565bf69089e77913b6c00e3b9ae4dc5722ed02e99d", - "address": "lax1pqdl2hgnngnzm7vn5zkccd7kztm00k2v2f9agc" - }, - { - "private_key": "8b00e55b8b510cbed28e4e125e2b35ccb4af1b3ebad6b215a48abed4625a9f55", - "address": "lax14cku3pfdfx067rrjle9y9vvm6plm3ksq73tqz5" - }, - { - "private_key": "e69a87780235873d2818dee257c154890dae77158e3c524f6a98dad5474bb4e4", - "address": "lax14kaddvdq3x4uwd9fpf80ylj3ee5ccz4n80mdmp" - }, - { - "private_key": "6e70c2bc907f4838f3e2218be3095fc3c4f7de832c5792e686325c82106b26e6", - "address": "lax1zc7ssx3dc0e3s78k0aj6edlzltf0rvp6eauzcd" - }, - { - "private_key": "48b505d6bd0b213c8ea01fc472c2f12de5392d0edcb1fdc01ba00c3828209455", - "address": "lax17aurts5drrps33mcxq002ka3a8e2z4nracx90y" - }, - { - "private_key": "bbffff98c972bd6d859fc306d6c1174665e258ac8ec13f1addf7542c6cb54a9a", - "address": "lax1mvddv4hxac2ag0mxftst5qfgw9juavm52tepzy" - }, - { - "private_key": "4dfd2528dbec3961f38db885b969e52f84a097c65f879541131570a364bc7717", - "address": "lax10krwh59l96dwnf6gx5gyq72zsvhuh5ugn22ngv" - }, - { - "private_key": "65ca7e021c1f1b259bcd5d11ca6c7d02ef023a457ee3c67ee3c13a987cf5363a", - "address": "lax162trhxdkrepg9l0v5nt7z7jrwaw55f6wqw9m55" - }, - { - "private_key": "b37a0390faa7819d108034928f1f44af1a78afe078e7f0e7744a693747bdfb92", - "address": "lax1elha5r3j9ltx5682ca85falwqevrz0vtdz8ufz" - }, - { - "private_key": "5a52be36c6cfe6f92bf26e5f08d823dd460fd01007ecf4b38d7becf593eee01e", - "address": "lax18dpl8gqgq42jcqg8vnhk9j2pk3y4hxg9etdyd8" - }, - { - "private_key": "3a0c432eab2a57177bd8d971f476f018abb912385f4435f9d44d914fc093f695", - "address": "lax1dj4a67ee2dg5m7zyt73rsrsyherlg9h6a8vchg" - }, - { - "private_key": "43536bfb68b7c1803a40bd4da14e0bdb51caaf36bad0fc6c65850b0b718a1fa8", - "address": "lax1g9ymjqz0v0yqznannrpzd8nzduejc56k5n8k5g" - }, - { - "private_key": "5db69540de0f16c6e0c2f62dfdff844c4c51fd18707d9a8ad38345278cec8f9f", - "address": "lax1elfpy0umsya89nvghz7pz509e303ded9p24xtq" - }, - { - "private_key": "1566c7446b3d51ca5cdd13c66cf4ea2db9fe546607ceb7c615a9eed1ec99a07c", - "address": "lax1lxyp9knvk2xw08z3rafu8hn9ct62446n2gj9fa" - }, - { - "private_key": "ea2bb98e1ed16f91dd1cdcf8c043287e88173777920b78c0fc4b4923d3cacd5b", - "address": "lax1zcfl4fpckkxvw8l42lhm9t506qe3777yp7znu3" - }, - { - "private_key": "07f070881acf2448deb1459028402025cc610773bad7e7a3dcc25c24d5026350", - "address": "lax126fd3kpsvztxja9s9yy8gf5r6ae3yhzqv4n3zg" - }, - { - "private_key": "f1b32e28e07f81a1fd413b773531df954b2ecd33cf3d37189c4b9ff420f04ce0", - "address": "lax1rsypqdear6rk8a8d0dwscz977uv5r9j9h3mpjv" - }, - { - "private_key": "3e064d5b9e24124324ba69ee154ed865d3051c75aba8cfee40f25ab957ec5292", - "address": "lax1v2lsap727vk26dfhm3l7zlm3y4yyvcvw4zudfv" - }, - { - "private_key": "298e3e73847975d74a3f1cb3adaedba9d84aa1e60e736c2c6ca1ab3a2bbeb4b5", - "address": "lax12cxxcjxlwy7y0h2g6e6yjrdyavjaync3pkex9k" - }, - { - "private_key": "d23d8295fce282d913e477cb1f9b0e60e41d777037d31cd9129e24cd7387a9f5", - "address": "lax18476l2tgn9wfzlzfrzg8xuhn9envdgcewpdkz9" - }, - { - "private_key": "974e8e3269eead839713fbe67e88f1b208c0934e65eaac4c6024276c0dd5f346", - "address": "lax1gcz9mmmmcjkd6nehksg59m7sk5pnuvza9zjqf2" - }, - { - "private_key": "3f6e91552bfb963dfe9b9fc40d56111fd46f6b56a112780db0846510c756a2d7", - "address": "lax15nhc7stxsyql5rsl7jtr9d9ceklr8muqeet5fl" - }, - { - "private_key": "11e4cf60a9ea25ee4f56b99a47d23f52d9d307793ea3c4e63547a843f867ff64", - "address": "lax1c5w55qflw2dtcq5he554m3qj4jp6wad4gngjky" - }, - { - "private_key": "75963bd11df2bbfcad86a219ffe9122fa27d403a40a71abcd5472d3ea6428b4f", - "address": "lax16prfm6fys2z576tarh2mgcnupkz674th3hmzvt" - }, - { - "private_key": "aa866940015c82bdd4531ea32e7be789464fa64308ec449cc39e422eec0f7ff0", - "address": "lax1c7arnzumpqkgsqr3ysgy2ex8t0kmck8a0n8tqy" - }, - { - "private_key": "659c0d076318056e118cf5cce9d0876eb3a9b110db0412a5e832a0e80228526f", - "address": "lax1w59a5fwc3euagaca6hrt0hkphg3mnehhuwcwzc" - }, - { - "private_key": "af24680295a60a3bf123cf5658b76f27d88116531963a3ced90d58175a2731e8", - "address": "lax1avm0tpa3k08l8000ve8nczru5a2cj0kfyyfl4x" - }, - { - "private_key": "63397f0758676b142c9e869521b8c84867e733f0f8381b11427cf0ed3d36b9b2", - "address": "lax18dmz7eqsd0u8jww2d23vuycq2gh8zrzv2gehmp" - }, - { - "private_key": "0155eb1d32fb16b2b31ce26719fd27338823d1e8337b13643e2171ee06b4ba1c", - "address": "lax197cankshpv8zntmne2d7jjlq8cjd5scq52re0u" - }, - { - "private_key": "e07c2f03b58f0b577fb92504e946efd3d56b202bba414c76d52feffe75b4329b", - "address": "lax1fwusn23qtl6kkppln9g6f6tyvg8vgg6xdc2py8" - }, - { - "private_key": "fe1d21cf05baf8daf9565a5c2e82d627c04874470a560a057e3fa55404b34cc2", - "address": "lax17jhnx6682hu8auglpvkmls28p76r9ge8am3ald" - }, - { - "private_key": "7079571e779678d3577703a45a733e15115a087f46250eb3dda1473767e99028", - "address": "lax19fl5xpnhn0mzmp4kdqf7yk008u4v8pytjtgvag" - }, - { - "private_key": "70274cee60c848cfe26ee9274a80f8eb7da56be67520e5f845299e9861518403", - "address": "lax1n55ckw0ghtmsm8d8dundpmr79e4p0hhvj3ks8j" - }, - { - "private_key": "5ec3d503faf5dfb66b8a6097baee822c675346027532ee0965270a65ab656b15", - "address": "lax1r8m0n54s23c03gmdgselvvjftfse2fs44l6chc" - }, - { - "private_key": "cd5cad42a857f86e6634f60805cef3337b1e3f769fc60874cc063ee6f8b569d0", - "address": "lax13az2rmwrf8shr2pzglpyyx8s8fgjkfyq4p4f45" - }, - { - "private_key": "5ea2292bc8e8174db2ddd2200506728d2090a2e46d0ca51e33bdd61696629f8b", - "address": "lax1rsdhjrmvhj7nml8pn9fmdd4d0k8024g5whdzxv" - }, - { - "private_key": "1c2f207018458202dbf185b911f0b2e1b71dc4d4c08a920e4e1f96640183a6ad", - "address": "lax1y0v4xtyp2xlmlkt5whgru9qh8xdl33800efsth" - }, - { - "private_key": "4908750c87f4d9657f655d2f4f690ffebf7a7afa835367764ff3856c8701a201", - "address": "lax1yj3vr4py529zzxamnzccusgvh5ek6k4szgk257" - }, - { - "private_key": "5d03606dcc3ff3dc35edc42f9cdfc9668b1811597f4c64f15f18f69193194f3e", - "address": "lax1z27xhwxmftnat0tpgg0zk4v9edlqyrek539jnf" - }, - { - "private_key": "bb9296dd072e91800e4e4a8cda0eac23e984f8d4ca7bc34c792becc7586e5887", - "address": "lax19a3yvgml43m2fp48rlvekvu22fn3v7gqkp9l34" - }, - { - "private_key": "85fc735c065d32ec1153644ffed7678b17c2c0caf4c7dc806ad77deffa379d07", - "address": "lax1gyv67p000wgghvxcxjzl9wdjlkz0yhup0esa0n" - }, - { - "private_key": "63227d9d69d3a164b7295a49bc21dd4aa01e87ad19ba6be60a05be80b70e2d7f", - "address": "lax1lt8hcvrqvw24vgge34f0svzud3m4qpq8qqkr5k" - }, - { - "private_key": "ba25fdac9e089fdbfa0e8adfc7e74798ca8e9779af57cba676c5c97c85073c8f", - "address": "lax1esdy709dpf28ggw38p9a52m9mn4n8jugwmt3p6" - }, - { - "private_key": "583e1001b2b4a8e51dd6fd9c27e6c199aea582a0ff07d7147ead473214b731e4", - "address": "lax1ual79uhgxtdyext8ffxx9wdl8wznty9fznjurp" - }, - { - "private_key": "67519a6f57b4afbedf7178bb13716b05746cd4ed8f675708c1c40cab5054e325", - "address": "lax14hssw4fn0a943q6xgt3wfkjx0stayswl97ly0n" - }, - { - "private_key": "b45735878966d7e09521eee40e0fbc1fb41984f6ed4a48e0de49fed0fc22fdcf", - "address": "lax18ztk7lnc29evzp5lh3envvyqg33suudfat5qw8" - }, - { - "private_key": "28519e3e688be2824e5afaeea07d3d429f695d38d680c870260925723a95faac", - "address": "lax1wcm7q324r7ndr0977zggmwa2ktfqk04tz66pc6" - }, - { - "private_key": "ca5d2c2e5a57277c0db39f25c4c0232b0a114ffc0ffc9be9addb412bb700c761", - "address": "lax13jks0j7tchuhtjc2tmdexht62a6a3audm5rcm0" - }, - { - "private_key": "1eb7e79e8e41a40b8a7e88a77825e24c3e1311c8abbdef5d20365788812da23e", - "address": "lax17hmtuzeq4c4tacjtvk6urury8t5mpr75wm224v" - }, - { - "private_key": "eb141097370665be3c651a803b93bbcfa7334cdf8424426bb6b2d46ed807aa29", - "address": "lax1hfmp43fdlkatc6w6h9rdf924hk2mqc3yjkl2mk" - }, - { - "private_key": "83599cf30001d78fba8c370daae88b42da45bf4816603378602febba95be3446", - "address": "lax1tqef49qf8rwyrdzher3jd9vaxg0hk640xpjftg" - }, - { - "private_key": "9befd0d1f92f0d8f51cebb2adcaad1efdc1282166a563c200e8a275316fc7e87", - "address": "lax1vuy3zr07ptryvl7da9gnst8q7qyu238dglt82l" - }, - { - "private_key": "03ec03de78fafdfc0d43ae046066a6b912efcd0c8a5b9c4c0647cfdf5b8469eb", - "address": "lax1l29m50p5vzat2drk32etdted02avh0209dvr0g" - }, - { - "private_key": "e1bddb21acf7baf1e6bc7c0cbd8f58a8b0bd117e52de1b44b6259882f545e91d", - "address": "lax1439fa75ynjcxcv3cmv0x54r6n7q4vglu0p09el" - }, - { - "private_key": "d7d8025dfd6eec0603d8770ece068095c64e03ff0e7187e20e735c4cdd0a9f14", - "address": "lax1ud7d2kypkzxqmrdtd6lyf54r5jy0kw0ylqjevz" - }, - { - "private_key": "6d904e0cbf70eba644f060f1f3cb0cc2d0aecb39dde7b42174a686cd20d0e067", - "address": "lax1phngjts90mq520rfdsjjc5gdaslvmh99y4rfp4" - }, - { - "private_key": "c21749723d4302ebb31bdec3dfd8defad53f13e658fe9af0b264687cfbc11ae5", - "address": "lax1r66w2mfdm3p3rht86al8sargjdw950ekvaqder" - }, - { - "private_key": "b70daddb1a5d6359ca57df6b5dabb45ee731f932bdf7ddc2ac522b02370dccf7", - "address": "lax1caqtqz0jr70a6wpjw7x7juvz0rhq7w475jjyda" - }, - { - "private_key": "bb908ff1947a9429076232a9504ec048894a8f2d843295f3519a57898de65727", - "address": "lax1cgg8pav35666u9egeuj8690qt32n8cr2gxsyyg" - }, - { - "private_key": "9220fe17b421f66572fc8d03a1f67b765a0f705ce0ba4c833832628eed152a30", - "address": "lax190f2dq564hc3wa7zr4qu3cacwrqvh97r3mmavz" - }, - { - "private_key": "8e6055b618ef2caec9a549b192af246a0dfacd7541b21f92d6c30c927c80be90", - "address": "lax1mzshsyvhv43z2pg2wax8k53f2pgk5juppgjcef" - }, - { - "private_key": "7f647118b379f464efcda9f64421d20ec15cbad06b7967afb9db6e3ae566699e", - "address": "lax12kzkhj2qvjn890uk8pp2r0vqzltkrz8qn9vway" - }, - { - "private_key": "a9113faf0da1d8dd86cf4fbb8dea962d599aa6cf4b0740502b21715805cf76e7", - "address": "lax1qkxxs5d8hex4avkmer6h0lmmgta6ak8maca76z" - }, - { - "private_key": "1707357b4358b99f3b815d9d17023ea58857e1d41ab4b0b33997b393dd1aa98d", - "address": "lax1aaszs4sr8fm6lujmpv48m4p4y8s57gsmvz2gp3" - }, - { - "private_key": "bb6843e747aaeafeb0330e4a45846bb9e7cb89ffaadd06ece6255cb03aae6017", - "address": "lax1lxxg8zec9fz4y7ul5972s5swgk0nga7x74lreh" - }, - { - "private_key": "6105b0a3be66c64330b03470174829be4271331f8f851d4563e5d09ac132ccba", - "address": "lax1zudlw38q8rrehmm5c2hzs7f3kx9306s2utnvsa" - }, - { - "private_key": "feb08e870ffe512a97ecf07c74f0da1165b2c6e2671e3bc81dae9bb1392a9da9", - "address": "lax1pdmweaknsxp6ml7w7fc2dhrvcl4zpjyk2c2wgf" - }, - { - "private_key": "9e1424703626e85dad28b1b6e6655727cc5de6a0b994f19a0b4bb3cdbc12707d", - "address": "lax1dqxk85lsdvenduz7uq8p2ljx2qhtnwvrfry9ct" - }, - { - "private_key": "ca7280cc0d0a93fd6cbead6c2451d4af4ebca82ccd9808f694159ad852c35e36", - "address": "lax13cgj36tgwtwm3vtsk2q95dx6qm3f742h653ggm" - }, - { - "private_key": "d2b86a381ce622a3bbc93353a37431dab4a51d6941bf40fcfb575ac5950514cf", - "address": "lax15k00mrzt8rl644d5ezl9fvzlscfx8yt6y95lfh" - }, - { - "private_key": "9ecf6b825fcc4f43e73d73ca15dcd02e213d83fb63b2e28b1d29e956409acacf", - "address": "lax1ghaeggmz3xwggja9atz6rpgdqteuz94juzgcxp" - }, - { - "private_key": "a8e44b068fa409e73866a7f4aa4ab0dbda44aedfcd208241f363d012d72a7cb3", - "address": "lax1g7dfz2cpv4wufyk8ens8868pvt4mnzxsyw6h6d" - }, - { - "private_key": "1898c0cf7a4f401a4c4579f3d8ef0baeb73171cc48dc37fc07157f6280ca8cf5", - "address": "lax19fpf6jhgqz26424hfazld2fy09nxwm7dhy0fdt" - }, - { - "private_key": "8446ab5ac1e1dda806e06822be9983bed0677906e0467c7297ea79800aee1ea3", - "address": "lax1klnk29z48k2pjwq2e0xepdptsrs5xdgytkk9gj" - }, - { - "private_key": "dbf98f06b4dad37ce3344bd58970029e5c1935916fa698ecd67c29307299fcee", - "address": "lax1d4alp8arva88q4czxn9cmepxf37rd5tamdg8ul" - }, - { - "private_key": "e9d5c890314b61e0a9ff76dc69f50968928dfe6ff1d753d57db28a76b02ed46c", - "address": "lax1as9cffhytlrwf4xqqtr60ycmzrs5n97gjzjayl" - }, - { - "private_key": "46bcd82e313bad37962499675274a26e9a2825196c9c2eff3e46208439f97331", - "address": "lax187u3th683rka2q42y98vmtpav7e085fwrdfdzt" - }, - { - "private_key": "06d1d698723a8d14a441bdaef5b04abbbadf9773a22fd45af671eaeb27778a86", - "address": "lax1n4y6srvut0tgv5d7addtjtdr9jjt7xc4qzjl4g" - }, - { - "private_key": "016114ae7cef25268ba3f2006d48b31ff31c02ac8c5976b19bdfb4d4ce87c6a1", - "address": "lax1vkk7gramu9fxahjl92fekvxkl0s4es0c9s6nvj" - }, - { - "private_key": "7bf727fb571cb24787b622f2dc3ea4f900f63d0155b08771ace75ab6b861024f", - "address": "lax17xypxqry49ek7ygfcs420tykzydcpuzcs9wedf" - }, - { - "private_key": "2cbaa2e1ccf0c69c10302705692da871da5163462a543709bfbdc5689bbbd73f", - "address": "lax1tywqym8xkw2enuvja25j7fhmkfckn4uuaxv5w8" - }, - { - "private_key": "8761af5af97477757ae7d977fc23c92b3860faee3b03c8e2fa26a7ac75a0e66b", - "address": "lax184uyw9cl74g0wg73gv0w7mxjmmm3c5xy0qa85l" - }, - { - "private_key": "865c97de295b1f68b75cf8fff7d77ab4321e129ecc3b302ee5e75a5281407361", - "address": "lax1xzcnr0a39u686avhkte2rr44uwvahxsaj0kya9" - }, - { - "private_key": "e091def361601f45d40b5d8c3e939800b632094144bc7372edf930d469d7267c", - "address": "lax1v6wemaxvyav3gc0lsjkgkacj9tumjz27kucxes" - }, - { - "private_key": "230b772794c496377f44db25db9d9faebcd72cfeb31e59d54e56106c3c14e580", - "address": "lax1ezxn337nmge0pkv8gjvzzlrw8jhhfuxahll9ww" - }, - { - "private_key": "fe1a2470aded6a8e31947ea5854e9e989e32ee756b06feaae5a8f972050564c1", - "address": "lax1r7l549a0xhfml2hy6erq2xdc02n8gp47n237fx" - }, - { - "private_key": "e2681d75be362343d8ce363aa5a172bf31ce858270bf3d31f7c09d29ca1c67fc", - "address": "lax1nvht7r42qxve3fxml6uurfkrz0vhrta63u586r" - }, - { - "private_key": "adf4c2d0985f137979e7858e56446826239033dcaabdb1a193332c2b5a479fc6", - "address": "lax16xu75g5aaqkpsaqg57wsg5597uee0kdfjwwg8w" - }, - { - "private_key": "382c05645f5e9b3fdc606c5a05c8bcbf030591e1fc6d28087f2984a69580500a", - "address": "lax1d2fwghp2r4pa0ywrczt09x2jjguwucyvz86vys" - }, - { - "private_key": "8500ca3092a79824e8d4bd51e804a77221538299974c65de2382212d0e777270", - "address": "lax1u689lj3v86nrskwuampx2vezeng55xsxqfg9j7" - }, - { - "private_key": "db06e30a559af7157bac56c3db17f24fd2918d4aba4bf452de20a309889d999f", - "address": "lax1e9ngvkwed4pvycf2ewsg2qvas08czwde4mqjy2" - }, - { - "private_key": "1d38cff6c2299d0d2bf7508e40362d4f1e18f4d3206705a3022e2c8967dfc2c7", - "address": "lax19xvkskvdrpvf54qhval5huvt82nt6zjv6vm9nz" - }, - { - "private_key": "bcc01e2c7ff5584dc3e6e4a075dd39fc05fdac810221d33b2961a1c8fa33a16c", - "address": "lax1crcekrf7az6hg9pmkj7hme0swfuf8dhg9rglyj" - }, - { - "private_key": "733a5d4adb13f60fc83bcd778bf74df009b54caf2364e7370bdf3e317c391835", - "address": "lax18g0cv38t7sdn9rcn9a08flzyrnufrzf3cxwcjq" - }, - { - "private_key": "07371fbb4f82d99a78589a44419ce075b69d4a15f9ce49a0bd16f2150c9a54b6", - "address": "lax1nfm4evmqsd2qullfjemwgleg823r27nf7mtals" - }, - { - "private_key": "ab9fdad3c0e01f72e860b99faf2116338e11977fada3ea8d161bf28b1d8b3b2d", - "address": "lax1t7kysq79zddqfw72wqg4jec56hmyat2g4gduhf" - }, - { - "private_key": "8a13c41503f0ebc628ebd00cde219f9c16dc486b24b051bfd4a28fde18b21eb0", - "address": "lax1mfp3pmxwl7n6gg4q92p3wql3f4uh7pkwdata2e" - }, - { - "private_key": "e6c0daa67cd0c6b3431b9997a821693ddc1325b8072a3c755e9d09b84379b454", - "address": "lax158ad9qawrxhhte9s85aj3ftwspmp5ya6pyss88" - }, - { - "private_key": "4e6dde8dc5d346c9fc7e066ba8e103c030f9c8db7af5153865f1ba58b2c6c102", - "address": "lax105z8pz5ue987v6lehtc5mk4wh23pfnvhrjfu9w" - }, - { - "private_key": "297ca65a0969f10e18e0565de2457957cfab2c90230945948680e9e53dfdecd7", - "address": "lax13q76grwayh7qgesaf5rtfgn8p6dnxte42k3ued" - }, - { - "private_key": "d8c20844b9a6d28ccc7d34c1686e6e9b506f45e63219ea02daa0fd211eb6fd9d", - "address": "lax1vak8ec8eh3w29agwczt9clep2wd0u9kv7ac3ud" - }, - { - "private_key": "198c97486b7eadc7e823eca25545018830570f59c47c37f28872a10c8c7d1b86", - "address": "lax1h0jpu0s32xekt7u8jxqf2f4kd59efem4fdu6w6" - }, - { - "private_key": "b0481e03424dfed97bd2a82fafe85a3bfe4adf5ff95363e4962bb7b90ec29c4c", - "address": "lax1yhyar6fs7skd5ypsg8ja8y0ycxdgmnkatkcz6u" - }, - { - "private_key": "3dbe6412ca76bc0a07a93758f8ec63250237da41f15b5f02ab68c6a482bc2e57", - "address": "lax1ep75dm47ez5jpk587x6eg5z0cj50wekr9ewgq9" - }, - { - "private_key": "d40b96b472fe10dbe38b6a2eca8d174d16aac16ae26bb64b0e8261ac6c5321c9", - "address": "lax1ylqpdtwv65zk6xvj3x57vnxkap2t5xdvg5edmu" - }, - { - "private_key": "23cef0bbd9504158eca1861eb9725a94d2d2a04dc617de4cce4994f76b1e360f", - "address": "lax1ffhf428hmxtssnjlgewda5e74mpjsj0n4270fp" - }, - { - "private_key": "ec4ba6193ec611e3a6a992fda7d37cd4e5b739f4f1c6d6bd35f1a2b103d53442", - "address": "lax1urla7h7zah2d2cg2lt3uw9wkt9zucrw9f3gatu" - }, - { - "private_key": "262d463cf225591a666ab672e9254958f4fa481fe9550feb79d9920b43babba8", - "address": "lax14wct50mmfax9mc6mruvr5v3v35uvey84cd4p39" - }, - { - "private_key": "201f07c48d8b3bcd1b56dcb877a12690a573b48e84b9dd74f66695fdbc220fb6", - "address": "lax1tngwfgt0f36gen6pyst3uuv8ak3nga8nttupzm" - }, - { - "private_key": "5f4b4bbea1b42ff09c77c4767eed724b57ed9203195464bd7ef74646ea656bf0", - "address": "lax1pmxgyq0w8m84dknhssgu9nh566vrpsxuznrujx" - }, - { - "private_key": "7c9880462b1babddc2a97b1b1127d44b563f364a78879ece1adeeb0921d888b8", - "address": "lax1q8qr440gzd9gky6d8m0nd9ks7kwrqjwx6apcdz" - }, - { - "private_key": "14a7170669bda709505a230cca0ca72badb5f082f72587a3fc218b49f56479ab", - "address": "lax1m6fzttsy7kjhkpmw5na9g2yly6jqpm3znmvg9p" - }, - { - "private_key": "4ace7531fbff228b522f3a82b93a55d38962809c6f4154a199269fecc2693851", - "address": "lax1sjxv8ln72lll4erg0uh3yuqhtm4pyjxdswmg8c" - }, - { - "private_key": "c4ba850e314aaca20a145fcf87f7beac99c3267b1a540d7fc1286a44bf6031e5", - "address": "lax1kdc4x6dur5lfxlea6r3yg6avxspt3yjvgtp2mq" - }, - { - "private_key": "49776db7b996b7971836c66a69ca70c8e9f64bfab2e232a619a56770d1379c0f", - "address": "lax1wund2cpu9dgn50353h0rza7j5cdw93vafuek07" - }, - { - "private_key": "abe2219b02d76828cfd0c0b1e6c56f57c7164d8d13f8c41f1b46014772cc4177", - "address": "lax15944ajr2x5m96lfx9knjgt8pn24mm7rac62vqe" - }, - { - "private_key": "47a2208a6f93f9664c5e41bd96673338831eb8e434073aab24afbe29bbd80632", - "address": "lax1vxyh5myy7gr2vkgjmlzhp6f5cqj787adtzwsgy" - }, - { - "private_key": "a3b2b6e10ad57b93a6ab09de644b282e1feed57a7a2dc465eca4221df17ec3c1", - "address": "lax1uwugrcpqmpfq3yemft0mzeumw3gp9en092540u" - }, - { - "private_key": "e9c48273697e37ecb1d2609ae24ae878d38882af5b279ba3acd07db6ff69dcaf", - "address": "lax1c6vjaz2477yc8reg0u46ah8xdh8wr32mfx55vp" - }, - { - "private_key": "91e218659666424399b2019423030460c062abd22a5930c1985b3638dfe601de", - "address": "lax16x9lvdlrwkhg2ctfxt960ejpjgzaq983f0hc6d" - }, - { - "private_key": "43286bed9fd7bd8dace3c245cf21c784426afbcf2b33f1db73a90e4bb93c4f6f", - "address": "lax16lzspqdu96p0qze8fmd5ezh0pzqye393m5p2nf" - }, - { - "private_key": "2c996fc72cc009a4a951a4816736a71dc3a5fc2edd4989e2f0c4a4f9daad2ca4", - "address": "lax1j2l7xdrk87fanm3usffvhnv7me4tcza6dvlg0e" - }, - { - "private_key": "5d955f0d2e11fc8e60016035cd0c07be83fb9c226d6f3b713e050435da8edccf", - "address": "lax1fvjm5xlkpatkqzg8d3rs6ksm72uvkzkl7fltxx" - }, - { - "private_key": "a97fc9a1115d273019318e82746de546a5b03847b2048ce62f2d4fd50e2d72df", - "address": "lax1r0ysysaalz3a2q34vnhdzy7xenlfyhrzr6fxzv" - }, - { - "private_key": "9eba0843e253e9ea5c6ad3e88a8a687c5cf45e15a96b805176bb8f4de5254757", - "address": "lax1ll2dfppna37lcnxqfse9s4epp2wrlr7u2nrkc2" - }, - { - "private_key": "ac298863b698162a16a5a47ce9860f8069d202bcb3b29e466313665d2aee7a19", - "address": "lax1e4394n4wpvf5cfpp5c267ha99k3wuqsgpsvlw5" - }, - { - "private_key": "c822b3d18dc95d8b9ae5ea25787c5a58c0a3dd7cf4d574e901c0fd9d8e75d46f", - "address": "lax1luf8h0qyk0cusvza8qgd0s46fwlr5vaa4alp5d" - }, - { - "private_key": "041f9e2bb683bd760b086609da7eb68969b33f61d9eb476c9beebee64a0a68b0", - "address": "lax1aphu0y44s0p679ygvgu8h0run3d3c7xdcumpr7" - }, - { - "private_key": "3a558a6216af65b3ae4c82c0c618b571e791ae8e9a4224f52f7c85be5638a3ff", - "address": "lax18x6hcdk48q2pdf50gushp6nlqf025dxm9fpshe" - }, - { - "private_key": "22b9c075a68fcdfd1be5b6a3fad69f616f3b6c4c0d521c35947e483bd8995ac5", - "address": "lax1fr7562h9q9aul8t4lnrf24ffd58qf04shw0pkr" - }, - { - "private_key": "cb2cc54e99bdc0d5df2981cfa9dea21153b8e9e3f1ae92af6260c8e986e3e0d6", - "address": "lax1mmj0pjxtzp5lhth088797yfc6jrv94xe00k6pk" - }, - { - "private_key": "d49e1c82085cd3e326c9217a4f28cc4e0dd0d4069fcd9848066678b96129ba70", - "address": "lax138cgpp8y3an69wfufspfzt86x9p8s8ad6l9n6t" - }, - { - "private_key": "ab810ed7a181e858e0a6bbc1469523036ca87d5725fd93f07abce162314e5852", - "address": "lax1f93dj6yasuy4ngsaqux4upehcvk3ws7w85n3yc" - }, - { - "private_key": "ff3e64a85aa382512aafb080ff4ae0bb2198429394136dfe9405d26e16d78d97", - "address": "lax1y5k36dhfmvcxrpe4fnn6qcjvr7pj0nnue8z88k" - }, - { - "private_key": "a8362eae44ada768beb2b070073016730762f2ec5e0eb76b8564372fd71cddc8", - "address": "lax1a5c039x7f4etm5pwlkq5sjgledqqacx4sjy47g" - }, - { - "private_key": "ee21f2560b42c955aa47375469a08b3594da82cd9328841c68768fe0f8300aac", - "address": "lax1fv55scc0crz47rg0l7ga77rdwdghq2gf7850k6" - }, - { - "private_key": "3184333c8270369c82cb26ed6eb74691dfbbd30020401a15f5f36512d3db4cb2", - "address": "lax1ak37tg24sq8q9tlj0ypdwwpj9njj3z8wpyp9vj" - }, - { - "private_key": "f6abce8011f8d477f18b310a2d0a8142b7b6596efaa784a6c1ccc881c165aaa7", - "address": "lax1lapfjvl560qrfdhpxhkf4zuttxmulxx9qwyzmq" - }, - { - "private_key": "1fb3e293121ab226bbb663cdef34c4872a3a24d734d3dca1a9945e17f4a7a530", - "address": "lax1qx705g6yem7s7r47jlfrupygcl7jxmr5h9dduu" - }, - { - "private_key": "9e8ea3d7f8b22781eba62d58a2d77568317be2cd728a200006e52f67f3e20cbe", - "address": "lax13e092aktrgt889qn002lm3hv8vskuw56qzndlf" - }, - { - "private_key": "e316d5e472f367f72823fe6d6798c1663577e8ce616953acf3087679b845d73a", - "address": "lax1faz58288cx3tka4mvvgc2w62zq5vfu2f069v6q" - }, - { - "private_key": "b16de6056021336684c808f3022367ce96aafdfad28fd8a11db057358dba6a11", - "address": "lax1jg2j7f3u29wm2965rdm4nr64me6s4eu2gcnrfs" - }, - { - "private_key": "c8d140263caa7b6065daeaaedcc80c9a6bb4724f934054d3f68234c231e9d208", - "address": "lax10p77a5danf4jmjcu7rfqhfhrkhh2pfe3duquat" - }, - { - "private_key": "353856bde9c8a3eb64430e30ec621694332aa759a1399371231ea647dfdb952f", - "address": "lax1r0dg9qff6d3nkc84g4u3w8n36hq8x32g4sd6j9" - }, - { - "private_key": "56b7c75767e7f5075423614a42402eeec61f10e41d0ac96e65ba08f2e75588c4", - "address": "lax1fpl3hhr6fp8axd6rm9vtevuzmw9ht6n0fnlfwu" - }, - { - "private_key": "5e1947ae20098be812113fadaefce53dd7ec41ff8ec18617c5615376c1de571d", - "address": "lax1g2gpjuz92de6rfj5ylqlx9zvxtv6japa6q3rev" - }, - { - "private_key": "929ebe76aceeee8203596a521945aa308d6bbbd6e69ad0545d5bedd1311a76b4", - "address": "lax1gmmatt73dfdarx3kqnd3p7z2qa0uhzee0tcczc" - }, - { - "private_key": "126a8e29382c11b8ce4867601f467de42404d722fb3f1b7ac7302e8da381e7ee", - "address": "lax10ekdy0czddrllh87n2nr3573etzt87uulu0det" - }, - { - "private_key": "90ef704e86d425ed8bdc0562182732b9acfa3b29597bd0a46bba7c7ae62e8353", - "address": "lax156wkghgs3xskn40gas0q52x7njrq6xpqrn2p63" - }, - { - "private_key": "e73e5564db3b8c2c240e7fe3274ab8dab4688244693e3e78ac490478ccd3c2e0", - "address": "lax1z9q696t89q8hunrrh5vtjegv63ntmqvlfwt6p4" - }, - { - "private_key": "a5014831c8cb70bb7715f0ea547eef8383b9baef4d72cda26758533fa8be81d8", - "address": "lax1hrvr48633zvrq7ukacm3rvmg3l7plfhqqj4296" - }, - { - "private_key": "aae72fae25597c9cb7c5e993f28e00ed6f23121f5e794166e301c181dd0c2b37", - "address": "lax1u0eaf37zuzzfxgrexhwz9uffy326lkztpkefrq" - }, - { - "private_key": "65e8f197737085ad6e28b80722b0f7b676e651c96eccc4a6c06440800547776a", - "address": "lax1jyyq7d0337n0qpqw070tqy3qdc285gk3ueg6er" - }, - { - "private_key": "e9918b48ee08c72773f1c4b55cae33da91b74863374d43c0e46cfcb101de8bcd", - "address": "lax1w2clwq2mu0d4pwg4zeyaxlj4xnpu55ngg0axzd" - }, - { - "private_key": "5a44f39936d81f6c8c68020b4f6cf74ec4f70f1b910c9011266e8b495528c782", - "address": "lax1cf3enj4f20pjvg584xhf5rh589nl304v0nmyjy" - }, - { - "private_key": "b9c2fb2e533e1edcaa1c7c9be2776c0141477014802c3ebb63a9286a1b2260ed", - "address": "lax1zzftq8fhq8fwt3dg8na86d4w2dudcaddzyq9v0" - }, - { - "private_key": "6e566fba698ecfd8e5996f4f126a34054c52c58642ec47084f70699010e3ca8b", - "address": "lax1me2cgsdlsufyjprsetxvv8ja30htfmw2a0urkx" - }, - { - "private_key": "7311dae0d318ae53e447eee374c468413c3e2bc3e9da38f34351b77b140a0743", - "address": "lax1zpcfz6mgtx7k5y5eqj0arp5q48xc2acjek3haa" - }, - { - "private_key": "b46b7e540dafc8f77acb841f1e9916ca1fa5ba3fbd23ba6d78a03fe1d79238ee", - "address": "lax173m6s3968r920p5shsdw2jd42674w8zfrylhh6" - }, - { - "private_key": "4f3d87f71e503c460447aba0f992091f6cbe67b97ee4fd5e26f4df4a6a716ed1", - "address": "lax12phu2qtg6trkgz7gzmtty5980cr448sg5hx4kl" - }, - { - "private_key": "488dc0ab18a761e23a12058908dc3cafacabd1aa3d61a48a3854c3b0ff147e00", - "address": "lax154sgk09sk49q0x275ccvtl9rjk3x6z8ldud20k" - }, - { - "private_key": "cad4862da2dc0da92549a5b9f2f07742b26bd90123fb4f54384ab52c0644f6d6", - "address": "lax1g7dnjjuxlewyt4y49dwk25wqsh6f93dg74j327" - }, - { - "private_key": "03202e76c44cf0da5614679fb2fc579c4a70609a496f4b16d07ae064dd5c74a3", - "address": "lax1x834xv93j3u7p6d0pck3grwluzs22m5e78xvl5" - }, - { - "private_key": "92e6fe2202896634d3440d987b8c7211b538d8c892940a6d4122ccb478d95cb6", - "address": "lax1lpf67vcfay2m22pl3rdqzrehh247u5hfgt9rlr" - }, - { - "private_key": "516ef24b9687eb93965f808af9a6ddec5c7467411e51e34770873340d73d2307", - "address": "lax14kq4z928clqsnkmw0qdtnr83uuljajk5jndwln" - }, - { - "private_key": "a70489fc15f0b293ee578a6ae6c2639e86dab6b0aede44d5ac11b80174946e7d", - "address": "lax1dsc79wffwm9aetd88m5scthu4t2swdv22p0wzt" - }, - { - "private_key": "090c6ff160aff6e8f193b6b243d8175627d8fc51c16c7205da36d1f04488b7b2", - "address": "lax1qxu0gpet3svwfe75wlenrpwau2g45ml2uk2qzk" - }, - { - "private_key": "2cb8a360b1b56855f9aa2bc7b6a058ddf10464d454e3fb64c89f4ea2bd5485d4", - "address": "lax13my2euxqjalkuscau4ddlljk4vc42g07kjctfd" - }, - { - "private_key": "8679809803acbdd6468ad223908ff3c3228a78e76bd93524d82496c1d883d0f8", - "address": "lax1wyplvzhrr2v057qhxepx6ltjcu79frw5s96ee0" - }, - { - "private_key": "82e3d9da87c230d06425cc16a6926b2dbefc2a3ed05f9ec1c2c78bcc2b576a1b", - "address": "lax1pyv94nakqydnv4en2jgdj7qev8nag7gy3lajd8" - }, - { - "private_key": "f57e1bc1c316471c95556fc871cb64cd7fdf3007bef23c7d8bf898110db3f4fa", - "address": "lax1p4dcw5fv8cma2dxxfgt4l8ymhjmwvv9zxeuvjh" - }, - { - "private_key": "96105d61c7a1647d05f16a8084eadd903432d3ed53b036ffa4b616198c3fc51c", - "address": "lax1aym0gpm6q4n00mdknwm0n59pcsl7a0qknqhx0h" - }, - { - "private_key": "ed4131f557982b9eded3b04ab3113508a7cddebb3fa0b93fd2c149fe36b00165", - "address": "lax1puu2jp8crqf4ndn3eshgqyghge5z46w5evvs0c" - }, - { - "private_key": "080bf420cf21025be1846435562f3ce7f9b41f3923df59c7467ab4f08bbf5a75", - "address": "lax1h48r9k6aargrkxl8my7du6jd347ngv2lgrdgjv" - }, - { - "private_key": "63b3458b155b0230a2ac8eb2a866e4d72926b68fbc8d3735d8ae21f361d163d1", - "address": "lax14d6pew6le4navnsw7mfeqkv2l57qeepgrl0rrj" - }, - { - "private_key": "2caad5a9d8fc9fef9fc2156bd86bf62c0ef848fe85047a5f1e60e45f7aae2605", - "address": "lax13upeae9lsafxr35rlz6auc4y050dpyf0rj9fwp" - }, - { - "private_key": "6c3b0d04a73ad26cad78623b134159e5a62cf53b3f7e52eb2c96abb9be75b347", - "address": "lax1jrcdf0jclpp4e90tul3tpavyphup67tf442ptl" - }, - { - "private_key": "3429d30d1f6dacb1a4f17a55a5f73dd6290a7ec9415414e5762bae22c01a4b10", - "address": "lax1h4g5sty6nlu9mpzpfp5mmtwv0985ffnkf26x2f" - }, - { - "private_key": "40f71e194a29edf159b01c6a24e66bf4f00c38aee5c94810fb5a6487b637d8a9", - "address": "lax1afnydqqtmu9fwj2v0xj4lwv8puxp8c777n8jgy" - }, - { - "private_key": "8201b76fd77c5a9276aa068e7fc248d7a78d7cb6248b1c0dcc32fa8c234a9384", - "address": "lax1t4yz5s25hr27zysepet6gdstp0cq4tqh3ea736" - }, - { - "private_key": "e7bb00b9607695d0d45513d5e9f9cf2f96f6bab2b5b2e1aa3f6251c94afad17b", - "address": "lax1g6ntdzy8l7fj45cw47nuvygh5nfxf5nv5wjvmp" - }, - { - "private_key": "9a31d0a055a53b53a4ff71981c4f41c8e0d2ea28ed947975970b7de8686bcd52", - "address": "lax1r3m8rjfa8gstgj5z6zctjlmv232j0826tfjh9x" - }, - { - "private_key": "076680caf648708248b0490de4f12b8a28caa5cedd683aaeb8f87e7919cce180", - "address": "lax1n3rljnnlp29n4j04ek8ekyh2c8zw5lf4s3clyl" - }, - { - "private_key": "56b14418356c165d7f8f215be09cc780b4789321e13f8f6d926be729a407ee17", - "address": "lax1r2z04r4jflp0zvxnuyrlcnj284js9fyduhv0q7" - }, - { - "private_key": "8ba2015694da1b0f4f80221f7d3e7da9c7e18a7bee6de93269e73335cf60b813", - "address": "lax1dn69vy6eacauygaqra4ssfxw4a0gjerf5hh759" - }, - { - "private_key": "b3e80b9b61753cd6355c2507d8cc9c7d8b28c2453c6038dd3010ff096b036eeb", - "address": "lax12xx203u6jp6vyeqfseg353n69vsg7a0grhy5qc" - }, - { - "private_key": "9af4efaac722b06f387500b33c6a8390526f1af7a79af4c1770ba2820c356048", - "address": "lax1wc96rsdp9kkklslm6pyp5krj8sl202ez67uf5u" - }, - { - "private_key": "ae31c34c4d8323fac301b77902a9702751ecf96c2702d158bdeec7ea640a95fd", - "address": "lax1nkdsm392l0gywwlkqasemm5zlyt7zr7nr0s0xn" - }, - { - "private_key": "9e52676a86754198bce81f5a902421f990331d8c3860fa3bafdf30771d0e7a0e", - "address": "lax1g2kj9xwlagc0wujz26sx0zjtqrrpp9n33ux5ku" - }, - { - "private_key": "92329b7770e45200731f1723d52fec041cf6ee0c5e5b32c4b86bb1a298791509", - "address": "lax1xzak3p2qkgtfvvvj44p0xx8ttja40a7qzen4lz" - }, - { - "private_key": "7375fe5bf6904eb5a171894c8d9615271cb415ef76ce4c31db37e3e4b3f6cba0", - "address": "lax1w87du4chytjslwz4quzv7nrhslncweufc92jne" - }, - { - "private_key": "2e7447e750d6ebf7e6324c18f95d94b034dbda8cfb131c0326e7e54aa93ee2a7", - "address": "lax17gkxrdnsda2zjz7zzmm2kyakk5xwdru75avx5a" - }, - { - "private_key": "d45c68e4038b467f25a481cdc4fe0be9eb166bad5ba46a74d97b8959e71b723d", - "address": "lax1zvpcpvtdpaqmc9y7rzwuqdhfd4qa90tj2us00h" - }, - { - "private_key": "082590b858d33567792efea70715fd693674e529ab88aacca6467c8cf0d84c00", - "address": "lax1s93kq4f4hx86h6htq2zfkk8al2ms0fc640hxdj" - }, - { - "private_key": "ced65e7e1bb74522b83d08cea394c14e0817d8a50431d4e2f84579b55c88866d", - "address": "lax1ch8g2kd92pkdhajqa75v4r9dq2yc32v3gfe72r" - }, - { - "private_key": "dfc76a1663358bfb9921cb70c192a1dd838c6d0e2b5b2800b54a5584c803b810", - "address": "lax1uyayu9mjjn4muw0c9cklwy358kqw3xgfcssxv2" - }, - { - "private_key": "257f91b5100ed844974f74d51120fb1654ef1e4fa255770c476fb30cccd64c28", - "address": "lax12w2lswzw8tvwnfuaaflgd2vtk6938wkfw4wkx2" - }, - { - "private_key": "e618f936c253e91e8108d1164c3627ac2f9bb2a18e5dc0688d8742363ec51aff", - "address": "lax1zq4ffrwnr6y36ptnq0zl7z4euqflutxqr6xxl6" - }, - { - "private_key": "45627591a9d3e4de7f5dad0f93b9195ce6958d1095d0ff08bc1a10441ab11caf", - "address": "lax1j5a672x4wyxj4h3790d0k6rkgusz8gffz708aa" - }, - { - "private_key": "e10d86ce666e45d403a925e113dbfba9709f8bfbfadf33f8a5844996d0c71050", - "address": "lax1d663mk7dd4a20ypcyw48lycafhxkuevrflkedm" - }, - { - "private_key": "7f0f8d1d9bbe42cd78f2807537455a3b4994d8d69449cdd1651b22c9524684fa", - "address": "lax1343gz0uplcjg48ngps72j02y7qh7vkd9ns7rvg" - }, - { - "private_key": "33fbf454b9916d6e7e6ff59668fd80c2b21e1ba816d97e36dce5f1a211799389", - "address": "lax1eczz6x60ms2sylx5592v4e44rspqrx8pdfpe2s" - }, - { - "private_key": "4ed9ffb99884bfc509345c65a14650cdeeca7597dfd0988198f525aa0fb31613", - "address": "lax134trcehunfref03pajyywkasl7s5n9k7jwepek" - }, - { - "private_key": "7cc93b73d8578a92344814d2bb9fab7345f52fe357e79cc08ead3c38893e0c1e", - "address": "lax1ysemnszmxu8vwj588pvwvsefl377y6rt9wnqck" - }, - { - "private_key": "b6c2358bf2a22d3ff2e549ffcfd2a7cd168c4a3cd48bd4cf4409c4440bb62236", - "address": "lax15dgyw3rssda37034t3dueffuphdmyknja307a4" - }, - { - "private_key": "8d09be1db840b4132aefb97e923727564a321d0aafed85f90a1f1449076ce6f7", - "address": "lax16545e4sun0htcs42m7082tudr4gcx835v2juzc" - }, - { - "private_key": "2e5bafeb390aa577d14d137999915004372c39f3ae04108a72a435aeae62243a", - "address": "lax176fly7pncgmtnruvd68gyn3eqs75zehsz08h0k" - }, - { - "private_key": "b13c5d5998dc9e12041f7e0ef63b1e792f68c028dd7853043cef78ea4d8ddb10", - "address": "lax1tmrmvayq38vl40uzrjqsqpn9kk7yd8jasn08hp" - }, - { - "private_key": "8c9a30784da862cc5be29da400eee5d14e59c1606725bdb714cf989bdd4f144c", - "address": "lax1rj4vqcfax6f46j5xz7kwmz32u6fp6dg49lr75k" - }, - { - "private_key": "43b2509a97309b9c34ffa3f4595e5965d919b612a9aa455607ab5b82770f281b", - "address": "lax12kytv6qzypkywnsnyh7560d38r0wk9s8r0qsag" - }, - { - "private_key": "ed28a6dccbe5acb26bde84014a1813d1d6ea24def54caae9f0f8c8d8491782a2", - "address": "lax1tw0tzn3z8dlr4nmug5plj27lh7q8qdu6u9vpnh" - }, - { - "private_key": "270bca824b4c0730727101d949f583152895badd9f6cca816232806371300095", - "address": "lax1m6nhrvd49tzkp9r2vq2kh2fc075yv890egyvuf" - }, - { - "private_key": "9e841d275b294b2d437f3ba967b2d7c629046e171a83fa9f354c9f4c77e19ef7", - "address": "lax1l5y23ldl8kr8f4ne2yrjauducs03jusl5p7ck0" - }, - { - "private_key": "fa18891b550b07aa57c5f6b792ce6f217af66d87de4ed63fe377d3d99d4420a9", - "address": "lax1f2vchsqnew2jeyq786enr2sxka65wnqudusmhh" - }, - { - "private_key": "13601a4b5c1351aa0c60bdcf63416da836dea811713d27d36a390a2a39a64d28", - "address": "lax14h6jsve8hqqdvh9whq468v5qazmz7e2kcal9ze" - }, - { - "private_key": "5c8ebfda14548af3ef07ed1e8fb4f786fd696762442f830e7210b1a82baf15d4", - "address": "lax1fzkpzsuam0d9yxxr85f880dxus3cshqqmmxurd" - }, - { - "private_key": "eedd3f44184e74edf8171dbc9fa3e93db11c98f344ba06ecf9f4ab063056611f", - "address": "lax1aejqfc5jkpts4ra62a0uu22efe2d730nw62nfa" - }, - { - "private_key": "c05983f7266fd8634ac44f401d028f1089faf069ea6a72d6f68e485eafd70b6c", - "address": "lax162ytrngdupy930yvmg00m3d0c8d7hcl7pnu77m" - }, - { - "private_key": "c9226bc9e4952c09af2789d16636aa9b56ae286e2bec8e63c92c2d23d1a43611", - "address": "lax1m2nsusg25fpuz9j56pu4vaszsd9s3sejkcceg3" - }, - { - "private_key": "533f703926f835d1ee590ac37e8ef113f5a8f8e66bb544644ea049a38521f47a", - "address": "lax1yw7gqq52uttqf9pya3d43ukjn8kgt3jytrl995" - }, - { - "private_key": "3cf9f62490913d58fadb941c8349e870e7eb8294a24c3da247cb11173049ed40", - "address": "lax1w4wf9xjpzg47z6jzdx5w9s8x95rpjgqtnx47nr" - }, - { - "private_key": "09e8910976083b7f78d44e451b116c734eef4958da8157017ba5cd7f010ca132", - "address": "lax1rg9v7m9h5wetde2tglpsrz4xty3nz7kq6f63hp" - }, - { - "private_key": "a813e3b61706784658be1a7a4f9523d0dc3ef06c45bed4759c16c15c1fa8f28e", - "address": "lax1j36tplncxcc0enwazz94nngstx7ahg0mgt8d8e" - }, - { - "private_key": "2d6636730bf31122bb946c0e3c35d92601f248d49240b231123c0bb7e3fc59ef", - "address": "lax1mhkj7xm3znlgvzgtpyy236up58xacfqh6yyr3a" - }, - { - "private_key": "d4a45d1d60568038608277d1ff9540dbdbd5fa567782f8c42c47e98d218dbbb7", - "address": "lax1uf6ttxpqcy7906fwtuh94353jdw7cqn09wj0l5" - }, - { - "private_key": "413c1610446db596eb4e121d97e2e0a82d246cab0d95c12eb63606827d4d7e5f", - "address": "lax1ty4nysnume4dgduxuwv8xmhm9se6xhpjaskrsy" - }, - { - "private_key": "d554b939ec69d2de96c357404d3e50245a093beaf689662adbfe4128a80639ae", - "address": "lax1mta87defpee74fumv9wnzm3gqsnln2zu86cm6j" - }, - { - "private_key": "4d1d4bd6f88ffb818be31cdb7b48209169f80bf3672e280fb2d21a7724c3bf26", - "address": "lax1993vv6hq6a4p87xjyax2j6es8jjsjz9fpge26j" - }, - { - "private_key": "fd38eea0a723364e668183a68cbe7f72c6a9f809501a5b91bce89c2ab9064e8e", - "address": "lax13y8s6nxlupvp9ygehza5pk5npj4fnvtvu0qu9j" - }, - { - "private_key": "d143f49b6122b97c5990436acd8d43f411fa3fc2f708a27f7168c6e6b2622e17", - "address": "lax1xq2ec3jprnm2u37r2d3f7l8yk78ztsf5pxp48p" - }, - { - "private_key": "7a2e78e180a44f1027b34de39a756e56b6905ab5296fc3cb7c2b324ff86a2447", - "address": "lax1yedz7jmts0nqpjd4lgg9wshsnuclfegn6r4h0u" - }, - { - "private_key": "66a6a4d08290d2dc7e23c3a1e4fd611dbbf64be5ad2a1ba633724a28381edc13", - "address": "lax1g7ymuzq56cfffr3a365p93q79p33mj2e7tahk3" - }, - { - "private_key": "cf71429ea7c004d103f822f2a5545a08fcc819766796c281ebe8498e76d9e480", - "address": "lax13sxgma3n928fgsxxdlz5cmyae5ttgkm4nu0jh3" - }, - { - "private_key": "4456f310580f1fefaac02444cf699bf29dfde7a4e2597cff9d461acffc68fdad", - "address": "lax18mjen46nrqy9hd2e8vfnl8ekf448ggeav3ygz3" - }, - { - "private_key": "4f4ab1ea9494380b2cdd94bbd3010b15ddcca117782fce1b687a9c6c13685d1a", - "address": "lax1mfvha8lqqp97z65qkuqhqq2lghum35z4dggwm4" - }, - { - "private_key": "0c2a812dc58f53943d19964d34c9fa2ae083ea747a0c75760a520cc60151b2c8", - "address": "lax1y8q6zdrqyp3s2ldr0yr0dqhseftmp6plcy4ncg" - }, - { - "private_key": "4b9bda8799d10810ccc9aa05e8cd9630935916847ecbfcac873723b68eb52588", - "address": "lax1748wm3lzxm3n9c0sxdzv7ujhm59t6fdgxpw4hk" - }, - { - "private_key": "a97ed9c7eea5d5840bd222ec1b64fe71761b863c39255ed298e8e3685a3ebe93", - "address": "lax18e3j7s0fedd995mg2ssgwu8aa6prydwnv67qj3" - }, - { - "private_key": "2a7f297c4d7e74ad0a0dfa225341af9c3e2137eaa226669dd7fd5846b7f23c20", - "address": "lax1t9lypxkwak3mhw90ay3j56qf0xqed4g97kx628" - }, - { - "private_key": "1f9f048036af3a6248a9803ed2b55b8a7e3b3bf1543ea7ffd0fa922e71cb364c", - "address": "lax10hlvy58envcavrvh074dttnydud5k2vd47xgqr" - }, - { - "private_key": "3464d671eef6feb7f1a7abd313a522e03a9a6aba8f2ef07ec088b19b022a03b7", - "address": "lax1zm9w7s3d07c45j574ngw4pjd9ra8tpf8zlemmd" - }, - { - "private_key": "4c4493fdb26088d54066c06699fcf9abfe47b961751cfccb2befa96941a3c285", - "address": "lax184f4wrpe06u4n9hj74dlvps4xe5wcsjkc3pajp" - }, - { - "private_key": "773f316b421790d3245b79d4fb691e67455d7e802c094f5989bf64102419928f", - "address": "lax1h55aada6m8q8mt678ncrj9yw766392pdfyekls" - }, - { - "private_key": "598e2ce5c1704a5127511fc6b82dbbcb34bbea761edca3eabdc46555edcb77b7", - "address": "lax14wfk5hd7v943aly82xsh9hy4hu3g505xdgy9ve" - }, - { - "private_key": "b58b82d720f8b1080d2d1a215d9902e1d61fa862d74268964adf7ff730b2f262", - "address": "lax128vysdpy54zxktthtqcnus6ccf7t6fj9n9g6f8" - }, - { - "private_key": "4938f57bb35bde4664d611e35cf7ad1bccce239272955ed8cb1dd0fc3885faa4", - "address": "lax1djjckwh63qc758vujxav9z7slk7cmjjjppaq03" - }, - { - "private_key": "b9a711d8e4de418cddd04af952cfd8176c2868b76a23f2afdfe3d2f27ab11a9d", - "address": "lax1nt65vtfp6qzf2scn8n9zsu0jc3u4qm3gzpv6vp" - }, - { - "private_key": "cd560e12a238a35d44e6bd9f7c4f3aea2b3fdf62d92f5e264117c748578f6a59", - "address": "lax1k8xtmztdah8vmvdazyc9pqpqt3kff6jw0fv4j7" - }, - { - "private_key": "144ea07cce02cec4fd07462aa39007d5f6f9bdd4bdbef0984a6952ed489b654c", - "address": "lax190ru4nmxu4xv4jrhg5rq34fsmkhsn4csqaptmj" - }, - { - "private_key": "4c6834137424d01b46a5f046e49d4c65cae12017f9b08a002f998a052c73f8c9", - "address": "lax1ltshh40njulka3665tg0gsg8kf4908rd58ec0e" - }, - { - "private_key": "735bdd9bedd23dae0c7b390d50c7ce5a0aaf6e508cef29462ba53085ad9b99ae", - "address": "lax1ae8xqnyqcvr7rq3shs7zul3wgw6ptpuznp2alp" - }, - { - "private_key": "1215fbc652bfdec2e10690ba486db03016dbf443e7c763f968cfc425d891d991", - "address": "lax10l6yzj7mkgg6sz239y48uz52hsy783pn5w7c4q" - }, - { - "private_key": "7a7e77a4e5ca89b0eca11a98d360746807d87a8d81eb466b2602c86645a7b12f", - "address": "lax1w48h3znr7gf0v5pz873vyj9n3xt05rcz3nmm4c" - }, - { - "private_key": "a0037262b7ae2eef768ca9c1a561b60255a1a7d1ef338742fc6917b140ae787a", - "address": "lax10xsy6zg0zsex4lt7fcqyvt3f73nvhsl5vdq6ls" - }, - { - "private_key": "e986343d7b443fb2b72aad14b867e7f25480f91cd636b21f884fc1deb3d9ac32", - "address": "lax1rwuql9azgwm7mnkfs0dt2j450hyhv5n7telxc4" - }, - { - "private_key": "fda2983c51713cd8fbdac397aabf262066eb4ff6ca3570e7830753de6c481186", - "address": "lax1rq0qlhvje543klnaj5ghhh7at7xg3qsywccz5z" - }, - { - "private_key": "c09c78e301b56040cb7ec0366861cd2b9b370539d32b86193e4d714f04583a84", - "address": "lax1se7mxa7f0sad7xvu6xzm7jcnj8m37nquqjerd4" - }, - { - "private_key": "8d4d369c3e7f26f29c4e217704e9808bb1fb8b78bbcd4d0e323978111286e44e", - "address": "lax1kunvvljukhajeqpjy6d4fhclpnscqs9g75u3pu" - }, - { - "private_key": "8a0f3af10b58d435e21721986437345c31bde36f901dd0728964aa0a42e24d0c", - "address": "lax1ycayuqy9zzxugn7f3tawrja6ns02sqmuj95m9w" - }, - { - "private_key": "7b5dd05fba22728928ff6a3113c2e15be6bbce0d255f2faa3dfafab109c0b697", - "address": "lax1fvkar9sppvnhmsc32x562htt6khljqrhsuejvv" - }, - { - "private_key": "65356edc0c00a310dfffb6a4a5818c8833a533a80e2465d27422b47521c8ccec", - "address": "lax1lzq5yvmtzaad50lj28kamfks9nkvtszl79xacn" - }, - { - "private_key": "0960b5df1d3f43238968cf5bb4d0eef961b55dcd05e32081c77c912e03bbdb27", - "address": "lax1nyuk38nnxp3q2tutzzfmvcw2la20mlehnfjvln" - }, - { - "private_key": "fc2a28cd986061727766fb30756bbb048b04875fe03d99f501625b960a5c2617", - "address": "lax17sutuewz7gzshvx0kkcnwlv670jdlgvhc94nv7" - }, - { - "private_key": "1bf0800d3328099b9bc05995c78e46d3e057c5da75e487c41b0680494af221d6", - "address": "lax1j7r3ul2ktjt8ag2uvcmgjvvvp5uc22phz0t6vp" - }, - { - "private_key": "ea61442717798123ac5e9a6acdaeb58265c74ca91b31477f79772d9f776fb594", - "address": "lax1gw22qprczcacu9tdmhv47n92ca8zs8lw9sv0ll" - }, - { - "private_key": "549d253a26484d87a750c5d19e17e7af286a87a7f83387c1fd672b22f69afc6d", - "address": "lax1avy4y6a43l2utmyekcx7544ma0z2c72z8clkmc" - }, - { - "private_key": "325351d1b5327f419a8e079b83a7e0d1fabccf95ca890eef3a663de73afdf7fd", - "address": "lax1rgefcgrrc5p54mkcuznncvncrkj3t6advtax7l" - }, - { - "private_key": "5adf3331d01a0c245ab9e37f1b8e004c61a124443271fcaaeed82e90495f8db3", - "address": "lax1r8a0fz6zzl2kyftvp3zmd2l3akh2qjqv5kpc4s" - }, - { - "private_key": "08e36b8921e5f304979709f1059951c5f9ee35198fd8f3033361563581679e95", - "address": "lax1catc7q2ytcgene9w9rh20d5grqeh3md7tz54am" - }, - { - "private_key": "9d106e28af1b9be3424a2522b3d0f5120f1e0c16c343624758c28db4f1a6d29b", - "address": "lax180pf6g54ug8jalp4u7m4vaja07kmfztlpra7ty" - }, - { - "private_key": "01d4a880eb33be42c142c42299eea9d56d7eb9877083f949171798333491cbba", - "address": "lax1wq033cs6d6zmgevcjd6j04r9ux5e8glgsgype6" - }, - { - "private_key": "cff4d92533a87e1ef79e3640656ba25c0e79f7c6b794b2033e3c9e0da65ede2f", - "address": "lax19keqvqrhn38s70ahsh96qm3vrcg0u2kzf4a528" - }, - { - "private_key": "dc5896d6b62e2db4e3c7cc4ae80bb5f92873a9b82e434502a39de66cc1dfd99b", - "address": "lax1c90nz6rrvqlkfl67lry6jnhewg9ej7z8kewhsc" - }, - { - "private_key": "226ac0dcaee442e3e4e60fa5759bb6fec1c6475df24fef2c651054ba73a2fb09", - "address": "lax1vzteyc4rfrsxduq6kqupkql9tnqtec9kay9a2z" - }, - { - "private_key": "bb6a20ad5436f8e8d09dbe0cccb4285488a724904e6f70660fce80410575f97a", - "address": "lax13z7lad7j6uv0l2nncnyh6uxzcuzrep90ycsjmu" - }, - { - "private_key": "4c0033a199663c701e6d3b0b44de769f451e3795f1b03d72fee4efdf95878b1e", - "address": "lax15apw6npja302dthdmux5qsgu844y5ymq6pvlrq" - }, - { - "private_key": "5827ac31bd596a6bf11a3a968ec83de17b057a9ee906724795e4a363b919817c", - "address": "lax1vm43nm8sf5mc708wefw3kc93fvf09pw7m7vf4u" - }, - { - "private_key": "87beaf8b5b135758c1008c94080520f7bb633c22e57405825e111866f4a6b034", - "address": "lax1ddjx79m43e7xexzvvjkhz9aggv6kfjltrqn7x7" - }, - { - "private_key": "60c5658b2aca2bf9a91c311daa8634e280e711a3b81e598295cfb6d97bd0975c", - "address": "lax1jwwjlklff043k6lvmyfl9lnxzl0u4dkhq9wzaw" - }, - { - "private_key": "db75a3bb65c96579bb718e792ca36d5e98a93487404418e2bbe38fd8f3a55e70", - "address": "lax1rct7dcvuz3vn207lpahujwyt9whwjzuektwqxq" - }, - { - "private_key": "1f7fbb5d05b00f518737ba7daa48c5a2fa880555af7f9b3946697fddf2e414f0", - "address": "lax10cea373svh3fg8nf30se9288ppuan44fcdgfgg" - }, - { - "private_key": "28d563fe21d12cafed827bb34ee82591f80186391caf5e4bd5e2dba2f251426b", - "address": "lax1wxlvq7lvhcjyjvewnczw0uh0vrnqz0tlnll5ut" - }, - { - "private_key": "45dfe8b883657529c2bb623701d7850254cede1994ee0b1831a531598debd37f", - "address": "lax1uc999kv6mthwy8sj7j84u6gcetv9he7wldwep7" - }, - { - "private_key": "299cc85f84b468af36d3f02855865964148b9ca02a3fad4af51e8586022f7b0a", - "address": "lax1vq78cs7m30qmma3xxy8ct0qsy2zqahwywmuyfr" - }, - { - "private_key": "b2f7611f3ec47ccd6586d8306bbf4c44c5be87e45a9550e3a389b910090e3ad0", - "address": "lax1j9uc7zx799hhwn6e4gufdk5p7zk0nrqejhg7ad" - }, - { - "private_key": "a765baf1a6918286a6e4307672216fde0b440c57fe7a492fe2fff0698e23a2ff", - "address": "lax1mmtnjjjkjgm7g2fy7fcj0y532wr54uy8vvgs4r" - }, - { - "private_key": "aa00741d4c743dee4edb95692bd03be4adffd0210f4f85f5fa4e900ca638401c", - "address": "lax18s35f3wl73znuw9d5tx0wtu0e6w6dx7hpt3vun" - }, - { - "private_key": "7ae5824efc0ec944a7e35b51a05f9a06ad5ee62f68cf0a1f40c19469173627c9", - "address": "lax1f066cmw82mgfutzrnj4jn472z43j8cg3faylj2" - }, - { - "private_key": "e06206975418f779e5055ff12bb4a0452dd4c3cff1065561a8a2b5a2f1ebbbaf", - "address": "lax1euasl8qdxj3wsgjd4kt4nu2epcvce3z6uwae0l" - }, - { - "private_key": "a1e2f37a79630940ee6bf9df40109fcaaf0bc0d356396770f2d0f42697cdbd50", - "address": "lax1p8suqv4kpd8xaxfdqfgyzpkq08myr9p49kp6lk" - }, - { - "private_key": "6e5913e49f117e337e1983958318be58d4c88d313ade8270773f6ef524f9dba2", - "address": "lax1vzxf4020n9rtw5dalwqeg7zrva5vk9lwkfkflp" - }, - { - "private_key": "3865c98ae514c112e9b338efc4ebf84630a1801db6bcdca7bb83c963dc3ef575", - "address": "lax1xzdlazfhclg4yvzyhe0jckfnvjr46tzwn8t34j" - }, - { - "private_key": "5c75f0fe20b42b19e6d668bfb4bd6174859a9a0ed3c13d229f42da9b3e889ddf", - "address": "lax1na9859ugu4vsfchxzqzycrf03ud3ylw9lfllvq" - }, - { - "private_key": "47b88ed9622da445c5be9ccd832a4a8cdd91ce2808236675bd7bfd1767fe2c89", - "address": "lax1fc73rpej9spjpfdnpdc3adfhprkzp933p7u82j" - }, - { - "private_key": "240d706267e34a13678406cb73122260c64fb621425e75b727d003af19e02b11", - "address": "lax14fsff68rmpc32vwqdtn82g9mzfwdmgvg4m8sg8" - }, - { - "private_key": "8fe3f2366b4ee24e144370fd2d73570b6dc551a026f3a1000d370f4dff5d3cdb", - "address": "lax1d4jljnleqjrcr9r9qq98g5q7z200z3ka63ql6r" - }, - { - "private_key": "824ae3438ad968d8c1be16a04d6b34fcb6e04e960a9e9460d4f6cb84b18f2e43", - "address": "lax1zyqy8u9emx7qqfux3khgtudl7dgt23r5kj6alg" - }, - { - "private_key": "04d016c8bb1cd3e2d976fedbd7dc8cdefb6f91ece3d817e75de483395be9ac0e", - "address": "lax1t3h8nej0a5f9wvzaxkhh87kksx87hka40trnvk" - }, - { - "private_key": "fe03c23c2a66bff1ff74903d120f2357ad1e272513193d31ee42d3ebc6ad14c2", - "address": "lax1u983s67xprkhfua55z2swtvy48mc3s03hhq6n2" - }, - { - "private_key": "3d626f3a9fb7a2465c8af21e8cbdfcc87285243459ae13f1e47ed149cccf2aa7", - "address": "lax1daw8l8ceex993vjtraz2acz2wpy5q5rhjw6kqt" - }, - { - "private_key": "d0e57cd97b1c7701e12cae25ff82466aa5e763fdc5f2ec9892399c3a430602f1", - "address": "lax1srmetwzgx39agh45w5tvhsruqvhpdfh69g2kkk" - }, - { - "private_key": "ecece57c1943f90fc7c55c1c824d419c459fdd47f15ecb6a2a765b836fe876bc", - "address": "lax1n3fwugtp5unrt23wd2rdzngmhcethdwyn4akzn" - }, - { - "private_key": "065e873fcb6468005553a94ee0bf8209ae4fb3a8809beed751e815a4800b5038", - "address": "lax13xm3z58ep5gtzxq4pq2lpfu0zj00n0spvjhkfv" - }, - { - "private_key": "4bb71d5d5537a01bebd0818d580547ff33d61c3441b54935f643b9744b9a66f4", - "address": "lax1jat3032ts0ywlmjjjcr7dw2hln7sfsaxc5tf29" - }, - { - "private_key": "eee402aa69a86fd8091829d6eb8c4f5054636b857fb00828512c6bc05e75604a", - "address": "lax1t94y8c457992upq0l2psta30gra2q5zgeay544" - }, - { - "private_key": "7c00f4eed69b6788d92490c54f674161d9cca0c8324d326be3c48a5d7709b7e9", - "address": "lax10w98hf9c3u7x6qs5e0gp8f85m9ejqvlc8tk0ap" - }, - { - "private_key": "11ceed8ee4ebc9e13c1a8cd0593ca09d01bc99fd2f3f0513e108ede9cb661c3e", - "address": "lax19c39v7nj0rxsrhaesfv44whf8rwsransm2pn5f" - }, - { - "private_key": "792d3aa31bb261e77c3e6611dbaea5331982a153d651c34547b6501c5fcc8345", - "address": "lax1rhcu8vl5t3feazjkzszquqexgwnkwv980gwggj" - }, - { - "private_key": "c15749b848b7cfcaacd4b92b97e9ba5e7ad5ebdb091f3f8812b1d0e567b859f5", - "address": "lax1ag8sgvlt2fkcsexszqtrj4f7l8ef6yn0zv093c" - }, - { - "private_key": "6d41a4e0acd32c32e05ad6ed50e3dfc7670b110fa3a6b2a8ffeae8ba212bf96a", - "address": "lax18yek64dvrnsu3372cj6tccmukhry7wlkwaaxq7" - }, - { - "private_key": "73fc7c133029ff4553e7060509bb1e3b1031615dee49676e4c7c4a2f9cc25bc0", - "address": "lax1g5zepgqgf54nwpmswedehwz2flnc9cr5s7g9qm" - }, - { - "private_key": "8f658d5bef2b9d8a1e10f403060243f4688184e8ac0c54d5112d7c49dfddd747", - "address": "lax1mjh4cqvtfrteh0vfpxhn4spk4wwatp209fvk8e" - }, - { - "private_key": "5fc60228948a7df72ff78c4ddd9b8c840c17dfaa44109fda425c21626d02cc7f", - "address": "lax1tpulkcjttxdfaq9ztq4pxrflervmczyp7evas6" - }, - { - "private_key": "1bc4a31d7c4857ff689bbf31895859ec0c111fd62aa8003efd8874050efbaa3b", - "address": "lax153yc6x28h9aq2xvm0rkm0emsl8eycyz7pt2apa" - }, - { - "private_key": "0f2778c799eac814df8a32c14bf804cccf6c908971887ac952decfe100f77872", - "address": "lax16e3gjv793g3jv5rkdx4lthqmpvwel3kh06ndhl" - }, - { - "private_key": "eb8b2dc4753b95cc399a2abda3a219bc2cc1ad4a5f10ef9a63f432cd32e75f5c", - "address": "lax1jy88mjpuued47dfhm0g2k68krl4v5qkrjcp0yt" - }, - { - "private_key": "84dc461de10605b1b811edfb02d8518e265c206bb15e161db0786421e9e1d344", - "address": "lax1dnrllp8y4h9v8qejvnkc9pllww29zauyzj86fg" - }, - { - "private_key": "54111b72ef70ff8dacdd380587ff867b2db938ca13c7f595599398d648b9e712", - "address": "lax1kqh702js8zx8fpe5eajalqvjty2s0vp4xnvx8g" - }, - { - "private_key": "219a79d45e7b6dfbf183e3d7754af33d7ce8e22ab3446c96e5c7ea9c14f3afad", - "address": "lax12wvz5waxr0kejz5d8tq8w5862egk5t4ufq8avt" - }, - { - "private_key": "244eff1e4d74c9bc4e2ce21c3dbf3ee047dbbb7fc8047d151c4046d8f26b718d", - "address": "lax1gh4tpq70dxj9sch8xn26fmuhjgl7d8me30lwfz" - }, - { - "private_key": "74a27b8803dc0baabb4862335b50fb789dbfe240fcb7bca04a771f4c531402ff", - "address": "lax1sn9t39x0f459duqqt3a320jn707np0lmukx8ya" - }, - { - "private_key": "35ccc682a66959b6cd876f8450f71670b22808a8f3e538187472b7147c62c23c", - "address": "lax12rn2kaq8phmey8pu5qg73tyc0g9aug67l2p7ek" - }, - { - "private_key": "65adb3d1e9ad49f696132523877f141c4fd12051c1795271c92639c1c42446c8", - "address": "lax1j6svcy667wx0lmq4xuyfk2dz69mlaevgfk6dwd" - }, - { - "private_key": "d68a9fe9071ac6c9a5272fd0869466f36435ff208cdb2c97bec60c64b1ffcb77", - "address": "lax1znm79pj2nkjegpcmltp03hgjzfrqxm653avhxg" - }, - { - "private_key": "282102014a95dd2351d35cfd3bee245bbdffe78b6d46185c3fe76f196ffff255", - "address": "lax1j66dwvpr9efssmfx54n4vnptr07v9engpp6m25" - }, - { - "private_key": "04b89c61a0e03351ca1b7eb58bafe41c04b17202debb9afc21f1e3d47499a024", - "address": "lax1gkgu3jszuqmuhjdmzqq8w4a0f0dy295mggvrcd" - }, - { - "private_key": "4b0460b3e4c09284b2c94e8bc45d25870bf3343ea31d8fde4cc57061694d671a", - "address": "lax1ejafkxmmwdh4cmtwae8tv2rjmwc3fjk7v4mgy7" - }, - { - "private_key": "1993d04a1f918fec349e643934ca778d5699cd542aa69ff03fca54d97ce4cfe6", - "address": "lax1mfw0l90pg65nevj88d95yeyg52mg7dh6qtg6kx" - }, - { - "private_key": "108c95854a34226121d7a1b2504c789609b6d780a70dc8f2c64a2eb9c5dfdabf", - "address": "lax1ym6vhxmagp44ltn876mvgc4jnqr5ekwk6mq9sp" - }, - { - "private_key": "1944823536213c41efdfe77af7be8b21fd39a8ef91de8521de4c76318db4b8d3", - "address": "lax1h6u22nkdq66qq9s0eeqzkzrgkhk0w2xgy62mql" - }, - { - "private_key": "60d9df9459ebd1810afa50cb1b2120d06dbab142f55ccc9897dbcac61a7cf0e1", - "address": "lax1s2e5udmaenc54vu09l2rqyt4yuuwan2vxqg37a" - }, - { - "private_key": "07ba2b79e58853762b789ef061a8bdb453efdc32de0abc775a1b397c0b62b6bd", - "address": "lax14xa4y9nykuke6dgd32yng9utknkwmjxzgstm9z" - }, - { - "private_key": "73973eba010d7eaa970149e5d44bedd17e7fd0a802a379bd9839bcff6abe3d9b", - "address": "lax1xk3nxxw8z7jaftps5ju7hslaphhx87lhhwgmvf" - }, - { - "private_key": "b49332892f8814d37fbe7fcb4d46071356b489dc83a811880170daf140da63e6", - "address": "lax1yjxqeukudt4mlxw6dtgecn0h2sz40jxnfcdh7r" - }, - { - "private_key": "b7a64707361dc1bfaf23363ce66613c83d4a8404928963327160e2a02c6753ee", - "address": "lax1n5hr4rrd0tew8lgqunueknmx0h8f0p6x92jtd8" - }, - { - "private_key": "e0992eadb01f0824c67398a52f49b95d6aa557e89ad4e6320aed56bb2db5f288", - "address": "lax14at3dh5g4ua9z36wqg2jx6rk2a30vgt6sdw369" - }, - { - "private_key": "2a21e4e4e1a1a20e8b3c12ee0e98e2700e4b73419ffef00a27af30a8d70e631d", - "address": "lax1kg90h6dakz67cvf02zfswwf56j5dyj5y3wyf7n" - }, - { - "private_key": "c57637b18e496267fab2f52cdf1c645c7822adff38f6a5b7fe600d0150e7e7bb", - "address": "lax1z0u08vxqsqx9shf7w75guj5qj4r6c2uytg9e6q" - }, - { - "private_key": "620e272ce281c6128c939a6a32c9ab52c54af2ae80a5a1979209b6c5c803c9f5", - "address": "lax1pqgezfn05cdeggq55ay95ukp2sjchjxd64lruw" - }, - { - "private_key": "a7b4b45ba9a6485a7e93b1a6ad04cced924df0f0e25350cdd37d9341e5ceaeaa", - "address": "lax1nnltkdma2lkfaa2rcu58jk0u0kwskq3ysjju5q" - }, - { - "private_key": "2ec1479a7c0cc223c7b0125c78bd49eb284c7246603fdcb2a785736ab1752a2d", - "address": "lax1szf7uawzksn590ezx55w6vu6efzn7chp933gk2" - }, - { - "private_key": "cb0290f650e844e073d9cfcd778c4eb763907ecf778a22ae0a4c0dbefd01e705", - "address": "lax1shf2zuyxkuh8plg6ca7hyvjfzkcycav9jkd8de" - }, - { - "private_key": "e1878c7c3f93eff8612158436d0a33e8bcbbb0b766641a8dd1ef55bb1ada57d7", - "address": "lax178gqg2lfshwuwgcqtee50qvf432w3dl84p0fvk" - }, - { - "private_key": "08bfeef86954d8d99cd35a66aa2e7494d7a14ebf58e03d06d63334cfb2271fbb", - "address": "lax1jsvyfr7ucg4zzv8ndg6vggj63mwt5nv464exqa" - }, - { - "private_key": "1b6c158597776e36be52d8143821352a3d43e7de5ca919b8c026a35c8b9f1e6f", - "address": "lax1x2frchm4jssvnm7ka8d9sda7mt4srhnf7r6ele" - }, - { - "private_key": "bdf9ef8d773c779bb435aac87fa703ac5beb80ce4ddbc3739e34733387c7802e", - "address": "lax1ds2hxjymxqe08nx8zltt7z7wvzerr4f6gfsvev" - }, - { - "private_key": "08e2bc8b22877f77771c265833e07b58ac03fd771a8ee323beffeb79a6d4bb01", - "address": "lax1nkua2dpjrmhs3j5w36ch4e0s6pfeqenchar8x9" - }, - { - "private_key": "7d693205230f8d9b6e12348e19f670046480851f867c4aaab04d0a069ef8fe59", - "address": "lax1aqc4gu5sgej4q28v9y988jwy79ajd7v3epqqm0" - }, - { - "private_key": "dba350c40108f362b47b1f722ca5c5b56fbad4ecfd24f016dcee38b67fa2ac28", - "address": "lax198dsu4mgkyd3rm88qr5n0jw7jt5qnz7gqzgt4n" - }, - { - "private_key": "bd988f40f969566e4df67f0fae1f9d897d9c3fdb2936920904770b3f9e70bfd9", - "address": "lax1lh0dt5yg3slqhmh0cp0pydavvrnaw5llqd2umm" - }, - { - "private_key": "e034d72cd8671289938e830e11dde1da41cd991ea5f822766fc2c417272da683", - "address": "lax1zkqmj6yrk0rjdc2jrxu8t9ut9pumcufpf47xhq" - }, - { - "private_key": "270051c98bdc3f5b649d2c80943b96d0899d186feb8bc343568ebe88b5424d1b", - "address": "lax1wsl7pw5222zvxs0qr46nem7g72tdw26vmc0s9g" - }, - { - "private_key": "69e2a9510df90a4fcd5e689a8fa252c71dd0518bfcb4ec1a9633af696e07ac15", - "address": "lax1hzhmdnjuu6w5p0gp08ff0pf70cncqudxvv3gma" - }, - { - "private_key": "942da4d8af918704e6a48796ff849bcb79bd943f85998685d5e22778515cf0b7", - "address": "lax1e5fd0tz4g25fls4e5tepufj9n2czavykagfzcy" - }, - { - "private_key": "f8ef600845ef18ab8663abd7044f5ec3b8dac517cb933002e39a3f295c671cd8", - "address": "lax1a6k76qx2phd3379220j62upp2ts6v6q947wdqx" - }, - { - "private_key": "58b54d5b390b765067edbaaada055a5e5ab1da56f4840c26b4f13e3d73e18c15", - "address": "lax12gqfw86e5f5s3uyhzf8km9xdjcjlvt06pr8xwg" - }, - { - "private_key": "8afc46c615fee30713259e8395ff49d6ba332d9d0a354b8f516316fb38bac54c", - "address": "lax1auj5kmsdfexqrmw7v7qvz42tmhzczecp9la4g9" - }, - { - "private_key": "db1d452851fd06da0f375ee0dc0a46f0698de21492b3a844c1ce27adb64e0e4b", - "address": "lax1fgvanvsrfucnlhz4nczrjj5s8fx23gx2hfpw0v" - }, - { - "private_key": "ad1ed4236f3887e035138c612bbf7cbd24bd714bbb88d04e9fcd8d1a0b2913f4", - "address": "lax1683m629esqwzpqkj6vqc6jvcn8ppyr6pczfj9w" - }, - { - "private_key": "3ea7ad2c4df687965b59ae2cf1eb15d33ad30b63f1243663ec1ada396cbc38c7", - "address": "lax13zmy3uca34eugzn68flzzjfrmr7my8ujdvwlw5" - }, - { - "private_key": "a71844f736aab9e7010484a12368000672e5ef1590e767b0890a9eb892a78ce2", - "address": "lax1ydccchtjlzw0gdrg0g6jvj0yc0fcz9zxmhkrm8" - }, - { - "private_key": "7a4bad22773d076a2f0d03ecf2b14bb6e2f48b92bdbbd6f5ae5fe66f02329d72", - "address": "lax13ss0u2cee3dys063zt2qxjk9rn09y8fzn0e6u4" - }, - { - "private_key": "04518578ad9d9394e448a6c39a616770629defe2da990a8f16c40c25d0d91026", - "address": "lax15jum87mvwfzc8vfsh4hjcqgk95dq0658wmf5cv" - }, - { - "private_key": "5894f48412d758610d85144858803f634a048b67947eca62f0aaec4334e00304", - "address": "lax1rec5c8v9m3kl0aa97fv4u9fneh2ggqj2ytkev7" - }, - { - "private_key": "310f59060f2a9ba2a89286c44147a95d41bae1b53e36d6ac71356b7aac24e9e0", - "address": "lax1znqg93x9ankanwakhsev49u649f04u8tnzpzh9" - }, - { - "private_key": "3dc456cfcd383814835e3558336773a0932173cd15cea422e1fc7c07478cfac8", - "address": "lax1k2e6vdtqxpg54uwevq6acdsmj0s9dg79nxayhl" - }, - { - "private_key": "0c3ca1e8e47130296ddbf4741bed9a1936a438a56a367a4264d7137b8a8dffb8", - "address": "lax1eujgnqkkwqp2vvxc6dwqgwwxh3jwxysr9as0q5" - }, - { - "private_key": "894d784399a0f1589cf77044ad980c9e5325c5fbc8d30cc7a9f8186ac8817d78", - "address": "lax19gt9v6cr50lk2l39r8qtjsvyk086ptvpjsu00v" - }, - { - "private_key": "0fcf663086ee97e872ab85283ef9a01fd58dffda34ac7c4824df851fcf468392", - "address": "lax1t2hx8xf0g0vm29wxkdknvatudxspkj88673jcz" - }, - { - "private_key": "bf4d47c1eec6034eb7ed1e062875749f92e8cd6799c5c9133a8d60360831c58b", - "address": "lax14j2rkfypxgh3sc8ay6dtmveph763f340verkd5" - }, - { - "private_key": "f0749fa94a550ae0cfeadd475c6d88387595d53659923520487f02511def583d", - "address": "lax1znt9xehmz8nsgyss8e46qp9mpw2342rqykh9zv" - }, - { - "private_key": "76aa4aec1ec44c86d7ead1ee4fcafd3fc450f9b31ea1f6e4388a259a8dd78709", - "address": "lax1tvt759czq0h49s9kq6vf98crjrtghguvjfaujd" - }, - { - "private_key": "fb49f84076313718e28a2280e3fe3bbfdd70d1febfe4fcbbcd6f15aea27e4f91", - "address": "lax1w8u8m4d0kjxcss2j2aetnc43rr0xgldslrz6p6" - }, - { - "private_key": "9279b66278aa9fca3de2664d8ca6a834a2c4feb6118f0e28f5067ab4513c9b58", - "address": "lax1thqgvtjnmq3runal3g38u62xhmnah90xfg65gd" - }, - { - "private_key": "15797c8385e0630cda6617d03c439083fac8a9f3aa095b0576c86a289c5666ec", - "address": "lax14yuk9p2sgva2u5qy2ft9ne2fc9t2e0ld69majs" - }, - { - "private_key": "2d674651ad3066f97f5ed02a679b9f584225d427cbb32e8bb25493b80346b184", - "address": "lax19vggy7kqunhgzft20fxnqae45kzfn6qxmxt4ka" - }, - { - "private_key": "ac40fae396de1529824c2d6ce8e45d419e6bcbce5854139c77a8a9d322b8ce14", - "address": "lax1ntj9a2xarntgxnd70cp99tkfxg7gq33fu53mup" - }, - { - "private_key": "b1a94f8c38b83589e5e9a1a5ea2641bd912578b6f0ea992db1ef228db05ed435", - "address": "lax1s9px9alrdtdfdu55v8ngd58x6mnhg4v3qgqtwf" - }, - { - "private_key": "1db6d52202fe7d3b64fb4729f7b8b82bff6f0bb15d33ad7dc36ea5378f8fd56b", - "address": "lax1zxst486g4e54a9l8ptv35md8j3j7t8fd4etvuj" - }, - { - "private_key": "e87002078e84410d92cacf0070cd38075dd771f47f14bfec83993b0b22c9e297", - "address": "lax1cerqphatntgm29n85gvx27lyc6jkt5nrcu80ts" - }, - { - "private_key": "72ffe7cad6f4be645296e9a7efcabf1ff00db1d31ef999ad02afd8ce94219073", - "address": "lax1rwys3nu23fz2uxkq6l5vkv94q4f0ytf2wcjr4d" - }, - { - "private_key": "bba96d8dbdcc67bbc36f8421e4e4109942258231882d3642c4571bbb967c5725", - "address": "lax1uv2nj55vwwyzep4dm7rtmngznc05zpyptfkd8k" - }, - { - "private_key": "ef732be5b3d6d106ee20a78794dc4522e28abc9d3ee36a69366fa4e00e1a6a5c", - "address": "lax1enw47tkscasvzh77ytmaqz9u2z3hcts8cpmdgg" - }, - { - "private_key": "ebf0a9ce4283f3660148b65ac9ed471642ab0d85c7b10e169140a4136418f577", - "address": "lax1nxfe43hhvs0cehyzhts4a5z0jud8nwk0x4u0uw" - }, - { - "private_key": "4ea70f504b24a4f5c5ddda2cc2829b2db84589fa8c654898197db65897f36331", - "address": "lax1g8lhzmjdusjt5g0dq4xegsq47lqzeu9zj5740n" - }, - { - "private_key": "f84ce11e380b9212b5391cf3eb1dbf0cc5c252bcb23a6aafed95348d43beded0", - "address": "lax1nace7wtc7737qmf3hz4h69cr0qwv4cy2qkjs4m" - }, - { - "private_key": "6318664a8d47c053fc153874ccb53740b767fead79cc71d010892ee582050fd4", - "address": "lax1d39he2l73uujn094qsmx63fyvg0mqsjq4wjske" - }, - { - "private_key": "a4b3fe30fbb98703cf95d6bdfdf484f1cc2c709a31f65c8f23f744d75c3aa750", - "address": "lax1de9gc00dqag9wwz0qzue29ma87ceykskh874c7" - }, - { - "private_key": "a38622a454685bfcb279cc737fca84841f42624ebd8b61376250575a40391806", - "address": "lax12anzhkx9hlylqjd5d9q58v2yp2n4782k790grs" - }, - { - "private_key": "8977463920bfb1c251281c2b99220b756dcd5555206c8dfa40df14a0a7d6bbc7", - "address": "lax15l3e9art3hlslgwdy5u8382p375a2enspt6uk6" - }, - { - "private_key": "d40fdb8bedb8cd3375a56e5b28bedc3fe23f85300a5802c4192aa8682db0a176", - "address": "lax1yf4ell9yjwnec2yck6zl3me4vfgqqxv4l0nx0w" - }, - { - "private_key": "26e8576305aff599bf90ac1609c4c535b951e03687261831b70a4af273d76996", - "address": "lax1ae4vfpenvew4a6vv4ms3df0vcaxypzyd3jy0j5" - }, - { - "private_key": "86e436c16c2b3aaafb1c7dc5c1bb2e452d4efeb15b489cb85aeea3446e82d62e", - "address": "lax1e6v9w37u8uwnswdcyq9rlpnwzqpc0zr55cmdpl" - }, - { - "private_key": "2153b6303e61b1f99837dc938a17edb5693009cb45c0b79ebc90c08fc23abd77", - "address": "lax1f9aq7rr5xvsu63c3y8ed5w4e04v4kf8rp9kwvd" - }, - { - "private_key": "166b65b871886717dfcce4a2586b27d50f6574ce62f376517f84d6e746931510", - "address": "lax1mks8adsyulrmf585a2mye5ukeqqqmqx2akmc4p" - }, - { - "private_key": "8a54ed4b4fd03544f054e9779ab9f6fac36cb7e7bf192a2a3db5933b72294a4f", - "address": "lax1aeusruka2ve3khv2xd32ap4ctfhyx6fhas6e3l" - }, - { - "private_key": "b0fa45679c5b77a05d297c671377aa877788ba8f6014aaf2a21cfe4729541c0e", - "address": "lax1y95svj58x3y70423nn96xvja2p4p43hqqvkayy" - }, - { - "private_key": "ee48f56bff272775796b445941421e978e1cc96b8b5b4ecb7f6cd09117d97c0f", - "address": "lax1lg95q98gvmhq6tqu6tmgdg6qmv8ntztnsmxahx" - }, - { - "private_key": "23ae00c06cd80e719f997f2793b4081f622a7099354f6d2e04aac1a66565e888", - "address": "lax1uds2urzydn5drcafqq568hl90zyurhv4aetrj3" - }, - { - "private_key": "16363b770a3e59687bed9a485efd59cee368fd70c4ec6d53f7a8b08d46beea21", - "address": "lax1fqut8cazm2kpzmdj9334exf0ckj9v02tlrk4mk" - }, - { - "private_key": "3b0dc4ff6c227ba83adc0a1962452688fbb3dad52e66ea605f8e0994bcdd6e54", - "address": "lax1zejpeg5q9wd0rwe48cd6cz8meggnmnvha9ew6l" - }, - { - "private_key": "0ffd7b4cfc4646414c95034bfc58817e974b5bbf898aa8b7966ba472b520d94d", - "address": "lax1vc3qremwcuzd5fk5e6z5cyj5n7hw80mcaf9unj" - }, - { - "private_key": "aaec587ae8d90d250a38817e0847b8e5d474d93fec4b83f530e57ca308ed1138", - "address": "lax100lj22ueqsyc7ty7spf3j0jxaw69wm6973yg5v" - }, - { - "private_key": "fcbfbefaa1460f0e1a695fe1ef294796fcf2ec30eb26cd41c98c9532ee396a5c", - "address": "lax15va76q6zd6f3yv2ktqdycqr4j679cv5zft5maf" - }, - { - "private_key": "193f9fd8b7cd2859a89270eb82a9981909e95d8416c997fd1e93f58bab40a1c7", - "address": "lax1xgh06tvp38nd795q8ar3nt3823uvqcjy3m95wx" - }, - { - "private_key": "183fc6f1e23ee1ac53272c12c68dca9dd3cdb27824dddf5b7828c4d87e26c95d", - "address": "lax1zd7629wzf8t7t9phex3dzuufyswh4uza0l02wl" - }, - { - "private_key": "37a150d03cbef97f4b0e84b9fb0c8461921ac37acc09d6e526a8e60e97bfd80a", - "address": "lax1uku8dvxunrpf6zn46a5wjkd7679plnhdktex0s" - }, - { - "private_key": "ee5ca453dbc31883b587372ac0261d206f3c1de8f65557b3ea60e7f240aa1c0d", - "address": "lax1ew0w6u9e3x2qhq7nezq7f7f94mrhdksh7qh8tw" - }, - { - "private_key": "2e94ab5541c6369334d60c70265da0be67a9d1b5d06a9ea22f7c55405fc27ad6", - "address": "lax18wqm3ny92q45ywrr5e5a3mqrgfs8m5yszn8mn9" - }, - { - "private_key": "8748095bf5a8d9d489e74790f2fa40cc646187a7ebe70653fdb33f815b90c0e6", - "address": "lax1h6l3uxqd8t84eufvtzplu979rr690d2hkkqmm6" - }, - { - "private_key": "c7721902705a60de278478eccb60028169105948eb6866028a9f7543e3347848", - "address": "lax1xfrtz8muqwx7vm5c9smrs7q3fynxv0ecykhctj" - }, - { - "private_key": "f3aa117983050fae65ceacea1b2ac74a97fc9dbef19766813115500dbc02300c", - "address": "lax1nuwrylekr76atzlplkukje0m0lkkv0y22gg57m" - }, - { - "private_key": "2956beed36056cfbc2f93d9730c778a9f3f87355ad3064a774614da8f8ad870b", - "address": "lax1e382hhlaztfvtaqfyvz3ggdmx9sqs6z787q53l" - }, - { - "private_key": "3b9d51cc94884c42ae43026e7668f2f1626c3f1d9549ec3d7ceeb14321844ae7", - "address": "lax1lp8fa4frwa7fqnjzyvfya0dvgw45x6rxclvscm" - }, - { - "private_key": "52a5990fe55983752c61ec3fd8d5121d01abd2da79f3ea7fb474d0bb2d18284f", - "address": "lax1c3a4wnftavvfcg6xvgp6kqd52yakspzz8thj8e" - }, - { - "private_key": "fd88edaa4f4a6e5b63c77fb87c18f64070e643ffa5d8172a63307f23c3eb7e16", - "address": "lax1md2hwlcs8wgd3dlluqmjk309720r6uxncd2re3" - }, - { - "private_key": "56770293d0a7dd68fcee214abace3c54def749966eaec3e1b0d69885e8b6752a", - "address": "lax10nq2vrjx5vwjkxj0af9yengwkgzrjteh3zs7wc" - }, - { - "private_key": "f136c43ab9db43617b99b7eaa82056f6e22f308b04f25c6749fbee02f975fe84", - "address": "lax1wq8gtagxwrgjs0g3rzjsqm6qxstnzrsnq9mzsq" - }, - { - "private_key": "1704c600c5a7f2c28014c2cf32847ac0ed9d1d069630f1b0f5001ed076bff18e", - "address": "lax177f9569xe5v3zxyu9a2qtl7hr2k8a0wdh7z8ut" - }, - { - "private_key": "9682d0f501132e52e263f9bb554b28e6a9d0647266ad3580f4ae698c4f1cbb1b", - "address": "lax1w3veduwvlswcj3vtm0mht3gqnnerjzsf5cx5um" - }, - { - "private_key": "9567ace45f5ff61906b104a450f5fbddb78c0b043227efd44bc355642cb45ce4", - "address": "lax16c5dagflkn72fptynq6hjr75cedv3nkwv5ke93" - }, - { - "private_key": "2e8420c6095dab9cf75f79f81b38957649054218b40d67e414e7d852e370a039", - "address": "lax1laanqp0gtldk2x47wq0jyzs9z0yrw67xfmls74" - }, - { - "private_key": "8c5448fa297ced975f70de316c062b905095552a4f3fe2b4d4506e0a8fadf7be", - "address": "lax1yxc6xmy2jan4x65p9z7jlwgrr02580c6lh33cn" - }, - { - "private_key": "81455a44d035dde39239fe7a1097a256fa9065d5b298c5f94e597681f66bb78b", - "address": "lax1t5a8le0q2mtlkryy8ju5enhs7a0xmuqdccr2ph" - }, - { - "private_key": "1302626fec047221c529db4250b95373bf8968809f7948645e77e79c3f4421fb", - "address": "lax1xnqjyqvrp4u624rupzrdwxf82ljg2evxa3pxvk" - }, - { - "private_key": "c224c38970744fd9a0ef177bf1b424c79ca1926433263d12900bf255e5e59d11", - "address": "lax1k7a6yp5sqf4ck7fnlc86j5q8c0sylc7sdktd3r" - }, - { - "private_key": "994bb50e1627c6ae597380530e3bd15852e9c6bcfe84851c363f38a19c39922a", - "address": "lax1txn6209ruwt5q9gtc7uasqmqg4za54y8s9yxwq" - }, - { - "private_key": "7901c207842f99b2adbc69e3164c6ba34f87c80d6654ec814b06617db887f0b4", - "address": "lax10hql6vtnqdjmmgsk9jnssp5yfrr874g98s7q2y" - }, - { - "private_key": "d04fee1aa8e5fd1485d4dc1520b1747de4c0ca4585c851a18d049d33db95d27b", - "address": "lax1sejj7y63llvm7ralaqxnfy7phvskw73vfsqwh0" - }, - { - "private_key": "13e633ffcaf1cdb0de540f69116597eda66cdd9553730fc39f659670ef6caf14", - "address": "lax1nc4xflsu6fzavunx3wwfxy6hgk6dxkat0hdh8a" - }, - { - "private_key": "deaeb161b878ac0a704ace19c93c5355a60d2306b691ffb1ea70f9653e6f654a", - "address": "lax1nw8ju0y6ly5zjv3tr4aaa5rpgs3lz2t7ynzcw0" - }, - { - "private_key": "4e80606cdc0427f184d532483b5ec9b5dacbaa5081d8c4d988ad345f9fa1b78f", - "address": "lax1tg99caddqhuuual02g2m9wvaamkpxe53q9x0h0" - }, - { - "private_key": "6af8a74b7876943c802b4be652b5137640e6c55c9ff27bba9bd7f6645591e565", - "address": "lax1x7jj0wts9frzn2gl5fn0xf7g30ls70sple6tpx" - }, - { - "private_key": "a6eaaf430ca781ab6bd2ed23971cb9d6807dc9bc05595e20988669a43cfefaf5", - "address": "lax1d9lsl82s6ujet55x34qutgpgd9ckzgz6jqzgun" - }, - { - "private_key": "077857f9033bdf87bc49d9e07d6159b9a964294a56acb00264be44566ff4a189", - "address": "lax1a8r4cpcdc7um3apvm50fnk9vw9nx6pa3jz072w" - }, - { - "private_key": "34c6ed50d5428b79f328095bc23b5b9e9896770a56a59f90dc24381d7d323e8e", - "address": "lax13trx3nu09cyy0g2y2t8x50sw26ttcwt827m42e" - }, - { - "private_key": "57d8a4673efd499365c55eeafb360859d71172a4a3e89be292469ae1471cd54b", - "address": "lax1y0c3p4jj74jzekycehkgfp3lgw4nugfawevn27" - }, - { - "private_key": "ce0bb4deccb5c5eb970dfb0ff9c81f4ee71dcd7ebc060448ab14acdd234b819c", - "address": "lax1x8t79u4xen5nk8eyvsa6rdv8v86x0j4mfqhzpw" - }, - { - "private_key": "233ff267da4d7ae8dbc72c06c6d2ea7c5d63afc204a952afa383b17cc2099d2a", - "address": "lax1477lwqsgu86w27lvag058c5qp6jakkff2v3ktt" - }, - { - "private_key": "00c7d3ee9b779ea48ad7ca94bf8abd8d41b109ee2df16e469ac41a2bc327eb05", - "address": "lax1z546ryhyqnd264q5y9h5lpxl09n3ftfmjvj0ep" - }, - { - "private_key": "4c8ee2862277b00ebefbb1fb339c7e72b26dcbfe66d97da8f85d315383acba43", - "address": "lax1kfd3rtw2rwh8n8ce4rvc6k99dvqyznwszengav" - }, - { - "private_key": "ede724a78259e2b17c92800bb2650746926398a7d2fc4b2eadca23035596ba7f", - "address": "lax1z06y6z0rygr800k5e0mm6cweymjm54n84dd4k4" - }, - { - "private_key": "5d4399b1b18335edcd92b59846f9f4c6a042a48ffed71036860a99f6eb17cc1b", - "address": "lax1pcqjyp27ydxj7f0egecjy909l5ljjzy5zhk3dz" - }, - { - "private_key": "3091e5e3ad2b3fa78cc02741745d3b448ea36f33814ef5e20ee699afa5709124", - "address": "lax1yzzlwcs8ccmdkacvwqvj0edlwgskrjzt6l68xv" - }, - { - "private_key": "0ac6a36277f6f1032e51176157b6e4ad9e9bc0ffe0c4036588c253460f70af65", - "address": "lax1jp7mm526e7jh2a9h5w5upx577gds90n2u422cp" - }, - { - "private_key": "31e37fca92eff9062c0581ab875dd4df13780c85a5dd9182327dd1f6a20cba45", - "address": "lax1anuw2jhs35le3vhecjccnx45nnpgnah4ujntcr" - }, - { - "private_key": "54065ab655f47b221ffb6987a627ca17b8317d626094635e6f166b9af11d3027", - "address": "lax14k0ehw6xwcmqtsxahy0wqqrgvnqjyqf5yef7pc" - }, - { - "private_key": "2b5e58d2489cd8c106a552d7d89d01f08610466c98d85b1af863f0c35de192db", - "address": "lax1aht9q2lc3vnsn7ruw4ax3h3ynmdrusaj733spg" - }, - { - "private_key": "d81fdc22a9b1a4f6d0f466b281225eff097655011a797cb6f5a27a9c605b00e4", - "address": "lax1ngdpn3tzw2s5cujk9xgpv0s395u4g32wwzm3u8" - }, - { - "private_key": "a74c6e0bb425ceb432959c59a7740108d42ad1987ca039ca668a97b411c1b7ff", - "address": "lax17rv8mtup9t3tzanqmkaau7ehxruqyunexq9upk" - }, - { - "private_key": "2a26af7fa64a0de498986a772818b8240918abdc0544927904cba8dfe127953c", - "address": "lax1aam97wrskkcrlnhee568qn7svp2ft8lj80tdsp" - }, - { - "private_key": "df0b50ec4bf3b89ac5f46544b8a6cc912271f89b6a72269dd8762113cb123d69", - "address": "lax1rplhl2sf0r39xjlrvta7eghu4acfdga4gelv6h" - }, - { - "private_key": "b89ca786de2fdb0c5b35bf90bc88484818c6b73e847c0139c2eeadc0870a47c2", - "address": "lax1u8qpes0xv79qf99n8tva06ynpz89gu72u7gu20" - }, - { - "private_key": "9a04f7ddce50c739295b6c1688ba5b18feac68f02e34c0f101e35797adc6e7b3", - "address": "lax179tk8xwugh46ye9jha8anflmsrekhnldlrsqee" - }, - { - "private_key": "8268a28c15a533a6b10c227b67304c104fe8f7a2104bc7fa7252b2800559319b", - "address": "lax18md3hhkzyk498pzkmznwsp6va50k2f45mxtfsd" - }, - { - "private_key": "c8329bcb1e5845acf910a503c62c64e115657e904eb0d441315ff3cc541bde69", - "address": "lax1wswd7raq8ujx2rrpr9gucxus5y2xfvnnp0kenv" - }, - { - "private_key": "67fb8a05d1a380d28c687b936ed16f2072cc92154ebd23aa97a9b87a0cf61b98", - "address": "lax14388yra7y6t8n2kd5yncwxmnxhn80v644k7dd5" - }, - { - "private_key": "d6d0527ee43d575b58051a1e8b5e33f34467cf3acd8aaf05aebc4e5be07fbf1e", - "address": "lax105ypx8tpy0z233gh9d6kkdefzwtzkwrkp64wlx" - }, - { - "private_key": "e72a5720b252f1048291877882145739165842a43940d7c41156f92ee97ab06b", - "address": "lax1w30sh4kawgwhn96ujgqhyehug00z7a5zy9t62q" - }, - { - "private_key": "34dc336200a0e4604382e6e4e0446f11348cd59b137087e1d75e663829df0366", - "address": "lax1z065cz8j29lcwsrvr5js5fks7sk5hnpgjzjz9l" - }, - { - "private_key": "7c6a411f6f53358c3074f3d2fc1c74316687c4e6e243152f925844dabe933b53", - "address": "lax1jayl0fwz5s7fm0cy8wm23pw98axts0rcckey4e" - }, - { - "private_key": "92beca25efceebe08707082d34937b1875ff457dfc64ba011058c302e1a72995", - "address": "lax1ghvu3cpjx79hxzjrss8mrhp2j50tg0ujs40y28" - }, - { - "private_key": "3e2c7ab1ea797b1d66dbce211d3f92f1d722e63d12b31052cbb175e0564e9965", - "address": "lax18elgprpl4vmlh8cz6u2fus0lgl5crzlxq3yf6h" - }, - { - "private_key": "de9a68c1d30c492b3382b25006a8a63244087b00b56ad488fc5e7615c5be283f", - "address": "lax1eehlprj7ses0vqkptal2hff38zc2v9dwq4d2fe" - }, - { - "private_key": "1d35e77149a6e516a2221e4ab2529c85566af6be52ca3af0adcb30d31b50e6b5", - "address": "lax1mjt757lssu7e55m7waqdvjg2xeuz35fjyxhch0" - }, - { - "private_key": "40661cab50f7aa9419511d382e61d0a8517f66d1881b8e26b87cccaad19812f4", - "address": "lax13rl8r46l9n439urf776ugdmc9dt4y6ke5raygw" - }, - { - "private_key": "946d1358d7c301595665aed491f599ee6865806650e1facd57c0c771641bbe8a", - "address": "lax1yar6czc3fl7rmlrgdn43nw38rvtxkur9z8ewuw" - }, - { - "private_key": "14b6aedaf889c8d092b9141aeafc4b9118217920afe0ee6c8837c8e4050a670c", - "address": "lax1nd89umyktua089gv7rn20xk0hlzy5dq2vdvss2" - }, - { - "private_key": "ce4ed9d387a91ef6927a9224c8e63565ddc95d10faeb219af1ed124e8139dfb1", - "address": "lax1cr7nvz0rl38ees89dfvz0ndvwmg63dh82swx6a" - }, - { - "private_key": "69f4d2b33c803913a2e63f11655c1d5eb72326a9af07855b4846c50a2fbe9579", - "address": "lax16se9q60f7ph7p0xurdshqwl85w66w39kha9ts5" - }, - { - "private_key": "dda63c1ce933bf8cc061ccc6dc175544aedc969ff514aac2359756086ad44090", - "address": "lax1qtgpq34ggyxw9ad4trpekncn64dzxkqvceudqd" - }, - { - "private_key": "1487cd2427e727f873e2dfc7daf9155c2925d299df5f99a9a7b0a578805d9852", - "address": "lax1c452k0l5q3vc3j32lk8x3m63zfqzcke95skyk8" - }, - { - "private_key": "5639f89e6bcc94bd426432e4bcebe1f467711862aa09e2b6b5e54f9df7febc5f", - "address": "lax1w2z47nvrf7h8q6vxqtc80gjvvnjh4kmlqugljm" - }, - { - "private_key": "fbc468cde6a61e2d65e7bbb0ee7c700d4d725d03d2c1e3dc4598749a8aba39f1", - "address": "lax1y4mj3y3j26g7k90whuzrqyfy464fgyqzpuqa4h" - }, - { - "private_key": "5784a5f08fd381c45dcff4ea15d2193ca4a1d6b71978c7149db40a33ee7103b0", - "address": "lax16jnas4flz95l7scm6semuvgy66crqwxj8jxj8z" - }, - { - "private_key": "a0f86b925bcfa275352db6ca2a50313e9a5b57b2a109c09d7b252aeef47e97e5", - "address": "lax1qy284yaqdfujslc0f8wuzeetmfathxur6p7ega" - }, - { - "private_key": "0a85c89c7d77a338754ef20bf21bd556accaa064725b55efc7b2763bffad26d9", - "address": "lax1yyq9qw8remrzjm8n3py8d5h4uwlk28ttzlmjze" - }, - { - "private_key": "5c091eeca218d82afdcd9b5b78cd1b0c444bda64d4331574dba86c57bde40df2", - "address": "lax1qfav6rz84ta0w2xav3h8tfjjfsc3m29np4dmme" - }, - { - "private_key": "0d73cbb04734be4ea3cd37ee227078c16a18cbaa6ef2002fe07c5bb86f00abe0", - "address": "lax1ryw37dust94at8vwzwwzwdnw2f69zlv2vcaps3" - }, - { - "private_key": "c17115d71c355eec2c573c3e125a78b157ae608b5d415bfb4cec5523f218fa60", - "address": "lax1cq9l4yrfk63hng4spwjgqenvvf8l534lcym6ql" - }, - { - "private_key": "70b1bd7093f2e75706b978ae2e9749b998ca43564cafa14bdae3c5f7eae7f68b", - "address": "lax1d847p5mh3he50l58h5p4ka3jc0u8zvhreqawjz" - }, - { - "private_key": "d567bc8bd4ba89d07ed1e23b4da7fe1d607c794811fdf45893d0c4f2be1f5013", - "address": "lax1dzcu90sx2vp2duzs3czzek9u6a6uf0fahkwukw" - }, - { - "private_key": "93e02d616480e05082f12a5158db80c0f176b60732295924cea763178f300a20", - "address": "lax1y6xgakn6suln6tk3hwwegc2leaa0s76hdzzmh6" - }, - { - "private_key": "8fb0eb8ac6b4b69b3cb1aea12408802102ae1613339c54b682c82ba4cb368e64", - "address": "lax1xcnescxv4r9lzf2qjjxmtq6ynceh8dq73ru2fr" - }, - { - "private_key": "787ab139ca957604f3cfe5e1368dc9e640b196cb07c73b19bac721a319134bdc", - "address": "lax16rmlcluput0480egzr8a8fd75xpry6l0nlv9sa" - }, - { - "private_key": "37feab9407ca2e4dfee321cbc198b04a66ff03849594edda5a662d0f7a548c21", - "address": "lax1qe9cnmuhk2arkuk4hnut6jlq2p5r6kgjptan3e" - }, - { - "private_key": "c3b0866db52d0ddaa9ba084cf513fb645409b1ded8ce4e8b003e322ba49c1479", - "address": "lax1dla5den5x7lc9f44r8856c44qahtaddcc9d9xg" - }, - { - "private_key": "d30e5751677f92d0541fa7cfd58341eb6c7f7b23f6a9bfbb6b6de1a65e1523e9", - "address": "lax1ahg5gstucea72k9jcjw8f80zl8w2df0py7v6hy" - }, - { - "private_key": "bf6c6fe8b9a2e8b2d961a8395aa01a573f41f1e6126455e110b55a37118f5a26", - "address": "lax1xmaq3n5x4gnz35u3s8dyys5ugr72d6dvzk2gkg" - }, - { - "private_key": "a1ec6142da3d0cf10ab66d79a8285afada4ebcd0ea6d10456e08a9c27f365bbe", - "address": "lax1vgqhn9s6myy2xtj92vhgexel5xh286uyau640w" - }, - { - "private_key": "934c831d7179e83d15bc2b873d1e1fb609897e1edfe9fdcf048947bcadb90680", - "address": "lax1whsmwa83edguvyuzq976h653ma3k0f8etffc62" - }, - { - "private_key": "ee2174a6b3c4ec2f83b466c080ad9538b28e5acd16bb775b28dd9307264390fb", - "address": "lax1quzzmz5slpvhsp5tfruumznvvcak85dzm3pssl" - }, - { - "private_key": "7c5e8cfc069e7c70c40a783a001917c18cb3e1589e3bf9ffba13e7c0dc050ce5", - "address": "lax176al6sl8cl4uf3nrkjrltmctnn497x33dmtgfn" - }, - { - "private_key": "0f8afc0680dc71174f7c09746c6acc299f1d43c14bd89dea778013323befabc8", - "address": "lax1azzm5kxn67a8898gky8ylvheh46dwgrhrnm4q5" - }, - { - "private_key": "897447e8d5c203fbc8dda27d251d40d844abaccb20df7538f5bbad5e464108d8", - "address": "lax1lmfrnexrr3qyws85tsqzdvdshe8hqyfee4y858" - }, - { - "private_key": "ce8744fb92167d67e6ab83df1d391b51d67a25ba16683be3fb5ae864a6001568", - "address": "lax10kcnnvdg0qaw4amayhmfcw7mchycq7npps8hvn" - }, - { - "private_key": "fa62eb797f82bbadb3579daeaa9a08670a46d54a374858377fedb26f397ea530", - "address": "lax1h0q2h0tu669h99n04rhrxtw7ht3ytusw80nxlv" - }, - { - "private_key": "7866d114ca02c698f9ccc7b9d5c8056262ac979f8d61b4197d3079ba02e4b98e", - "address": "lax1t2g3f53ctlpnmu5s02tesfh42a7p89t94kecuh" - }, - { - "private_key": "fa174d955f6544093bbb178bed6b98963786781cfbd05065fda314b3f5f2375d", - "address": "lax1pyj4ujn6zcc8ftfv9cmy97qwd3m2g49myn5hmp" - }, - { - "private_key": "bdcf4d96e55342389f066275b630e01c7f83feddc45a907fefa5518e33913e8e", - "address": "lax18x46up00le7vfjzq6e3p9pz9ctnqced7lanlpa" - }, - { - "private_key": "297fcd344fe4721a12232a3884a01675823618ab1034c1eccc538786d607ba11", - "address": "lax1qwguy3w8udk9t0w5v7c0t8ej7379xlhljclgds" - }, - { - "private_key": "4155149be0004a14d74823104fcbe7eebcfca0882ff6a9ce498b0aae1908bb57", - "address": "lax1k8klvdvzm3fglx37x9kgqks7pdgj7pa8aleh56" - }, - { - "private_key": "ca1d64e53e31f2dff81980019a51d21f2e70a7bf62fa602c1cdafb09817f7aef", - "address": "lax1mkl2pr9auwjzsgwy57zdwgdz0jf2mxnzdyc08n" - }, - { - "private_key": "bf542ddd5cf875109119e10a795f33bdea60443a5258a542fafa0d165d865338", - "address": "lax1utjap6fpppzuwj9yv5wukfvwmkaf8qpsh3lx5x" - }, - { - "private_key": "d32ed4a33f332b2dafcc5461fbd46916c869635b5f7b1c9e1a55529209bf1b8c", - "address": "lax1gx3pwx9d8dvwd3sx69lm6xr49224tsqygsdl4h" - }, - { - "private_key": "d9ea19d586251316859e3647f65b81524ba50edb4ec09e99ae004954fdc84d3b", - "address": "lax16gncdxjwze5aa8p97a8ft428pw6z549xm60rmz" - }, - { - "private_key": "395e5a82c62012d95c17dcda629fd9781c529ed0f7caa06d022ab16820b30d52", - "address": "lax1ye2h5nmpmdpqm8ut724cpvx28wcx67x02nru6w" - }, - { - "private_key": "f2af612a551d0c1f1da10cc9f91a4f1a5df037feef4105cfc9163e445e6ecb98", - "address": "lax10ra7v0w8gzfvcxzvzp6hffa7v0w4e42utaypae" - }, - { - "private_key": "3ee3f4a9f62fa47e9743983733086ad55b261f461e6d99f70b9e963d6b33e70c", - "address": "lax1sneqyr772m9k4d6hpn7utq7q8gu0ynqfx2lkla" - }, - { - "private_key": "5bc1c4f32c68f6fb5418aee493d8ef19a9229de94ae71113608fc6101e6a17c2", - "address": "lax18qf83skwse7pwuhevuaf82lr0mggxmm37c4c0r" - }, - { - "private_key": "20a3d8070786d46a7502a1719ae05a703d34ba9264e325153de6a680ea2a3d5b", - "address": "lax1qj5yvklyxa2zlpeja6h5prpau2g3jt8cvaju3y" - }, - { - "private_key": "1d69df94d15d2209259bfa971f00fe957819f421eedc4361c69ae55ff6f72de3", - "address": "lax17rhm6vm2su7fpx22vuqaxulgexy7v9gczvqc4n" - }, - { - "private_key": "5837186cac8e8637cff2c445e97de070224b27259437addfabc342fbbc6280fd", - "address": "lax1k96y40sfvdaty2552rs2lm3fnv2ea6wm9veauq" - }, - { - "private_key": "b792dd53bf0c7ad749b1dc0f06552d798a1beec773cce052f96ec27007b795a2", - "address": "lax13594kw2w8838wxax8hrmyxj2f7t5frr5fqc6ga" - }, - { - "private_key": "b1f75051670f2c015dd35c53989c12ed4939ff7fc19c00c03d1c86028cc0d328", - "address": "lax1w7ujpld0p0zpavr5ms7ec39zev25dv3nxyjdc4" - }, - { - "private_key": "b969be7cd647f520c9bce7b50415af54f30d34218766651f06b13bf6d122a91f", - "address": "lax10e2ltlq9yrdu9w9xuy8ywpwv8z5pg9j9ncgfx6" - }, - { - "private_key": "92f5ed7b5526a27e4ab1b1a43037036ffb684f06b1d8a41331d7156b912cd3ab", - "address": "lax10xyx2hl3zdggx4y9undc6vx64r9u32s5nhaqqp" - }, - { - "private_key": "11ab8745c54728c3452a9eeaa52f070f18703dc53a12cb33b34660d0c233159b", - "address": "lax1ugc7krdr2j96fpjy97uh97kvsq5gwwz8zl0nty" - }, - { - "private_key": "7e9d482f9b72ab2b28b4ee6d8af5b57900b2b719dfd208d1011d97db71ee3d79", - "address": "lax1k89eqylcxddmzg2r7vgxpjl58qm4shnkjcfzpn" - }, - { - "private_key": "32faa70550fb7d35c2ccd32d0e032ba316d6b0474ff20b7652d56cdb3336ef28", - "address": "lax13cyzhvds00mz8s04uhzzw50sylgguycq0xey8h" - }, - { - "private_key": "d7cc32e6e194942f4b94a56a62ea37c0c0f85001c5880225a43c766f0a7cc518", - "address": "lax17pdnv0dvkscj96fl82c9z03d7njwv7rctjzjwc" - }, - { - "private_key": "7a0df2971b7b91d02ce82c8e3a340e8ba637db587028f8892857272568410f7d", - "address": "lax1p3semvv9jy5z6uvkf9en572vazmukm2j6fftyq" - }, - { - "private_key": "62046b8913d7e21d150ab05d0719b9d6f331a81780bc362f1aaac80b20ef939b", - "address": "lax1crpqmlje4yk342vulk0e0g8h203c2f9y36063g" - }, - { - "private_key": "5767f6662787d631c727711bdafc0a085c2b4093d0d792d1d549380ba568726b", - "address": "lax1t4px4fqzwpmcqq2af5zfnu2j63vl2xn79aqwjz" - }, - { - "private_key": "9729d2e4f7eddc6204e06426e771f4a26de38ac39da4fd50871ee9b28c40fcd6", - "address": "lax14dpdgqfe3ewu545atw33waml9kjvlyedvwl752" - }, - { - "private_key": "e497907f995360e956b475ae9e3789050b3c3433feecf32c54fd48b4a86b33ba", - "address": "lax16ck3u8zeefar5l6ddzfck42cd373zqqrkhymqk" - }, - { - "private_key": "b3e345b149b5c9b7163aed1158d51fa8f26879220f276cf093914ad631e49fe8", - "address": "lax15c3rah0sfypa8zy3gkv8e4pl7hpm4c74x55jtv" - }, - { - "private_key": "46314248720686274edd92a604e0d66a13da7e01bbb296c34a747cf43982e674", - "address": "lax1kj4nlln9u3xkyezc52wa5x09p5rawctqkp85ta" - }, - { - "private_key": "57ed2d1580a042f3601e932ed145bd54047a4596db2eda682e020640edced658", - "address": "lax159kmcg732zyntr2gv2rs86zhy4xfjrve0ejwfr" - }, - { - "private_key": "65d71cc85935622b409d1b319aa0dd18e75c47acd64fdc725b54eca6c44a93ed", - "address": "lax1u68qy3qjhqdvezndk8zz2a2ce7taekxug0r4zh" - }, - { - "private_key": "43cc5df697ca0cb949d25a6d142a9591c4dbdbf4d99bf65ecf008d8b8204f2ba", - "address": "lax1m2yvk02dc8mdl0ndddnprhd7xnlmv59k74vr9r" - }, - { - "private_key": "b6b548e0001c3425adee2675f6232351d50fdbd7d0d0979c68c80b48a7edf45e", - "address": "lax1ye0rly06fkuetej8385ayt9r9d8kqyha4gs9up" - }, - { - "private_key": "a9075787efbefeaa7b6a51f31f6e97b1b974590d8c4a94a744db770aa0e9a5d1", - "address": "lax1cdkwz9hn4kqugukl02uraq09akh2g6l86zcyky" - }, - { - "private_key": "8d7dd0a9331cf5c6288bee7954bea7bfcc147d184e9b4b8cb76d0c418e1f27c8", - "address": "lax1whkgaxr7flkyn5lz3xhq97c8085ua0gf6kmgv5" - }, - { - "private_key": "a9858691520d3d7c3611ec5b056c9e80e5eb9588f2fef47d1808261037ebbfb1", - "address": "lax1xnf4qsa0wzhx69hk9t00pwzgfewqra30z87kxk" - }, - { - "private_key": "27ca9129d06e75d462e325c64be16ab6988c9ca1d13645f3f8d7d25a9bc5aff3", - "address": "lax1rxemfczupq3mez5hk9lxty2qwqf4unhjmkm48s" - }, - { - "private_key": "10e870533f104d632bf83a39e209298ed562b5411b2ea90eaab1f1fdc1fe1a5e", - "address": "lax1xp2kfeqg8lefjrd6rfjn7la7rhnuwgx9gjs4h9" - }, - { - "private_key": "8d57d498f78b160812d426a66169d43c822f5b50cb5e69f421392f70ab448d0d", - "address": "lax108jh9mcpkm9c4pn00tczatfp53c28pjaxgwlwt" - }, - { - "private_key": "deb7f389608448f91a62ae7a181fa9aa58c080773cee2fe28e473fe303927332", - "address": "lax1zrqmvslv7njskgxkwylg694t5l97wlq262e967" - }, - { - "private_key": "4c54faa5adb9b7351237e2b07f2c51f1b5c878b10f9b16de0e614cc2a9887bd7", - "address": "lax1mc3la05g4lgaee449rta3ve74xwdker7jr9kkw" - }, - { - "private_key": "8c6b4edaabd7b1aa31cf0768af82d8fd26bb8b705cf5197969167ba7829a6630", - "address": "lax13qv86vax02cvchs0zmf4ptlvsddkrwtq20g25t" - }, - { - "private_key": "ddc21af32713d63677797c2032fb385d4861227aaf5c2f3cb9332d5b2b8e4d60", - "address": "lax1t8evgy3npea3wy9kuzrl98q6vxx3ylhxkqnw43" - }, - { - "private_key": "cc094714b13753976b298482d3f3460421264a041394c311fc14710922f5dd90", - "address": "lax16s9ppraz2e9wqre835r8vys8dqd863jtnrx6j6" - }, - { - "private_key": "47e78eae374755ef79e449b4fef023148ee681d162eb0b1e44d8dcfcd0212168", - "address": "lax15fq66g54w43j9w8atmw3u56dvwchdvem6e6uwg" - }, - { - "private_key": "6c6aeb9601c606e5f7f53ce98f1ad2e46a5bdfd51936e404ee5745a8b8d36856", - "address": "lax1fzhmugg6yhe287eaymegt8759hrh3ywj9crgvn" - }, - { - "private_key": "79487586f98a2c003295d4b606b8be53fbbaaf51aea9689308d30eba81c9a4b2", - "address": "lax17322dcsnuzs36fp773udlfme60pu63y4cjkp7l" - }, - { - "private_key": "ce700bf510f0d3b83633eb5c9bdc64795deb871426b7c20da90bbaf1a7d38b51", - "address": "lax18r5dscrl0myz3cncr36vetcg8vwgf5ea89nc7p" - }, - { - "private_key": "248a37a264449272804ad634a9b460c03260c29a6812799314c2d71fe0715e57", - "address": "lax1nhg768nqyqs7ltqzkfyp38f6snn4ppwskhgkkd" - }, - { - "private_key": "fb36bbcc40e493a1bfc241d15b3b5f919339832fe4fdb129546a92474fe09012", - "address": "lax1z8x5p74nkhpaxpf3aedfn8mlrlzqrh0z602030" - }, - { - "private_key": "efcf01ad591bffe7b5de1fbc30bea1f1af3dd7cf1d7cb46b54e8db406215af34", - "address": "lax10hm8xjgtxeth0zk66ccq8zh8ef8gzhcu33n8wk" - }, - { - "private_key": "221a9cafaa6030c82536c03f1cacd49c5448a57c5abca200e70ee3f06660e02c", - "address": "lax1uvr4cp3kpze3hc5k4urkea7na6zc49ynkmua53" - }, - { - "private_key": "305f4320a872053efcdbf63a7c721089c23c3ef16f0d1f6835cba48d20ae9bfb", - "address": "lax17ue45x46kg7a384yr9ccf79usmu30srjly84fk" - }, - { - "private_key": "766fd60185080a6a16bc35bd1c576752bb3de5b765cede4995f7b523692e9bc3", - "address": "lax1dz4l9jggzgf4qpeevh6zlqu9tmyrt8ew4n4tyv" - }, - { - "private_key": "61a629e0bbaf07b381a03bfff09231529e8f5ab8693beaaff54710b66cb8b701", - "address": "lax1duzdnz3qq6u3kcp8n83p86awgx26tcfxetmja0" - }, - { - "private_key": "27ca640e6a46eb074d7edb6fd4faa0179cf2ef8b4c124451520fedabeee26f07", - "address": "lax1qluupjaw2x5w5xhr0wgqlpg6purlcdf0ja8sr5" - }, - { - "private_key": "f7ae294aa2f78c4caaef8ddcd13974d7f8d668ec5cab1f7aecd80956e8a7f492", - "address": "lax1eejhaanrmgazj29vf3zfzd8tq082suwdc276yd" - }, - { - "private_key": "7ce2d80c8d0b64d5f6f22fef64aa8587921d655dba164468edfdfd149308a7c6", - "address": "lax15uskenr9t9fnpy9dvzpn4mkt9yvpremce8xenw" - }, - { - "private_key": "ce07cb7bd4d85a7ecd242dccf11cd8a8eb4d597e58fbd5f61551a35aeab888ef", - "address": "lax106jk9sw6d3axx8xcd2smln0rn5dqsgx90ga8xa" - }, - { - "private_key": "15ee7cfa503a95264fa4ffe9ecd1afda8212160f51f8cee1237746d72463f1ee", - "address": "lax1scmpfx6t0lzz90jr238tmfrz5p8q6ktautarqg" - }, - { - "private_key": "2b259b65f41b3b4c4f7e7342a1cffb7a0788abe5521f1e122b7c4baacd34b9c5", - "address": "lax197ghydw7lzhgcc0fn3wc3hf40p6arjptpcfpas" - }, - { - "private_key": "d2d4e3514982687a93e612c2d75ee127fe45f2342e93711256175861133cdd1c", - "address": "lax1q677kstr4vqg7aw46rsugjcr7w5m029nsmlur4" - }, - { - "private_key": "40b70e2da24193bed4d5e277654dd09d7521dea6086450a14f8dffd274c13892", - "address": "lax16fq4f2tfaxkp60wefk3retk5xr24kxnzmkxwy2" - }, - { - "private_key": "59381e603e11bd17c2665bae1578e52fa3eb06ea5e59402289ab5911b3c7b652", - "address": "lax1s70zwmen9h08f4qp7qquzt4e6tt979p7hy0k7u" - }, - { - "private_key": "c38ac7297f5461f19533ecec8283dda86197a09d2ff7ef1c4c4d26f1e4561cff", - "address": "lax1qlxeyhezw3d52mdngsjkyle95kqtmntmxwklsc" - }, - { - "private_key": "6ff2f6a0832d5ea34110719c0b404c46ad1ae11c227fec8f0c923151661f04f1", - "address": "lax1v9gdgvk3e5mv2766fuzy5l5lu5d2vm0ew708r4" - }, - { - "private_key": "e77512d827865825573f2d3a626dcb50bc48fdf366817c1aa13026477cf3caea", - "address": "lax122wsc83k3d2mk0xy024e3422euqm8s79smlrjx" - }, - { - "private_key": "7ca68190d57aaacd59775c62ea2291189d77fdd9b1e44d1e66eb3d1f96db7353", - "address": "lax1ahks9jeve8xr7pqul22rwn0ueq8lakshr4wvdq" - }, - { - "private_key": "181bad5042d8671625886df54b2c5d59f00685498d580d807e2bd3dfacf6186d", - "address": "lax1fzxsga8d0z2dlx3ylnlvw0v0d4pqf0r2thvjnl" - }, - { - "private_key": "00aaf99fad8ba775ac8fd1f83c77b898ce340f6f8970f215c4ee33295266bb9b", - "address": "lax15xq5j8uadqun9w7kky9d3vv8j0vnd3zwafg5pe" - }, - { - "private_key": "0a8a1744e1167b02ff68e69838825b3af87db2be072ad2bfbbdb0efef571d752", - "address": "lax1yu605ysa5x3c84tv6ndv6jqqgu004434cwcep5" - }, - { - "private_key": "0dcbc9bc24206b566b8950840f620702e9b1cd767d62cdcb9f2a15614621c252", - "address": "lax1hcg7zfvzlclv5h66pj8jclpj646gvf6a84x57e" - }, - { - "private_key": "bbb9b92b814d8bbaab2dddeb4a86f610c06740b9a7e2c1d9d7358f34b80afbde", - "address": "lax1zft3gp4gryql3pyczp9099cghkn3q3l9ejpq6q" - }, - { - "private_key": "0fe3a7b06caab8b0c9fa862eaf27a28858e543da0f79bebd65d47b36d29d5746", - "address": "lax1n4axse3zjxgju7duudez5zk39tn85ufea59dc6" - }, - { - "private_key": "5cfc911ae10830fef2e2f35d6c28e61dd56dec78e5e852b534c0000770b8cbf7", - "address": "lax1cm5ku9sekfvycwmf5e00jyj4dgnnzdsywewavl" - }, - { - "private_key": "e18694b5c5c1a73dfe37a2dad6b213a41858534d0e03c9773322d5960988d8d2", - "address": "lax17xusanweg6xudss8nmn9wd5qfrkgspy4z9gea0" - }, - { - "private_key": "7355ba37b8a1a71a3a62366dcbeb8491f3233147282dcc4c983fc27ff3b0f0b9", - "address": "lax1ce7ez6pk9mmutshg2tsmxrndwqlt60f37z6pg4" - }, - { - "private_key": "6bcc3916d8ea426dae95fe6cbca1075f4d83552636539042e3c3069727aca8ed", - "address": "lax1cyywec97hzm67el4r4p86slpqrkas5y555pvhu" - }, - { - "private_key": "6c9ba3a15aa6aa81b1d3a0a2bab054202123f59500638f74c67577d42ea06f92", - "address": "lax13d5j2x0d0hd3s994a73laqeva2et8e59xddglz" - }, - { - "private_key": "b38106463a980b261f7a47cd7d901124278425290af947ef69e0586cdf7c417f", - "address": "lax12acyg7km84c5d2l3g2xq8lvcp3z6l3hvgffwp3" - }, - { - "private_key": "afc68a09051817644e4dc132b978fc541ee37436f056c55951f909ef5c29687f", - "address": "lax1jafr9j7t4nph77060hv02kew7fnkpslyfkhchn" - }, - { - "private_key": "f0d3ef83521ba1247a53afc2ce1554ba9597acc881516247e8739f56f609f115", - "address": "lax13d56ecyz7txea4k0agf3yp8hczwq9j99dsxf8a" - }, - { - "private_key": "5ad6208ec512abb6e66d65577979bf003135697206528118d192041a05284158", - "address": "lax1x30704faqq4vp4xmgy3q83lm8pku6e0fefwukn" - }, - { - "private_key": "5964d296701bd4348e7337c28221ce1d857261f54857f4ac711b8ca1d78e3de0", - "address": "lax1zdgu6jkj2447f7yhk5vsxad7svg2pxlw37zyk5" - }, - { - "private_key": "4f3c9a9914e01e972189e1eaa2a2d9b99551390f704b01289c7b2b05ff65d2a9", - "address": "lax1k06t3ma64mfagakyg8tggcnfzzw2wz3dfv2xym" - }, - { - "private_key": "486100ee3f88a07877fabfe5c534a91e6fff4f54ea0c0a130d3502bf503df254", - "address": "lax17x6t0vxrtup0404gzyrsknew59j2py5halstr0" - }, - { - "private_key": "0431563ef50d59ce6a010a8731a927d2ed6d5e40a403addb052c6d466a6ecf65", - "address": "lax10ehkjvzq8rmsthvfdz78wpljd3qr8v6c5vas63" - }, - { - "private_key": "f9c4f3355c99836ea7f14beeaa66befb3b849676eb10321bbe4b745c67e9b6ab", - "address": "lax1rtv22avg02wt3vhv75mn8wgpg7fu843es2nt84" - }, - { - "private_key": "23e45dfdb6c8fffa6ebe778706ddb4dc5d6a3f9450c17e6e6ec22958267dec1f", - "address": "lax1kt88xwt0angqypht48zr58stc2tc8llyj4vnll" - }, - { - "private_key": "c19ee8fd7571e459e0e4f8df646cba40efd0884f577808ca6d744d4455c57147", - "address": "lax1xsm8rvnzl4nf3sqg4gnwr92yfh8khjcvds3keg" - }, - { - "private_key": "412ffad53e6eb02b3aec211bba687c9c9b5c39f7e9e4321d9542129b81f82e48", - "address": "lax1fx0rxvtt333y6svvnzkeeq7yuycgntk2gjma4h" - }, - { - "private_key": "8af76b1007711011f2a8df91b943b0355c360a1cc247cee4df3f4b6940610e9f", - "address": "lax1nwhl9xj7w3avw4lmsxwxjqfjx7ym3uwkf3968s" - }, - { - "private_key": "e7e36f04ee207a9a5749d792f8a919e064fae7a9907d5ab585f58fa6c274ddea", - "address": "lax13tvgz0j7r2v9qlcrjpnkerfn6cvyfmcmrmnel0" - }, - { - "private_key": "ddb68e60d111b5ea08281c8e1496307d341ed9a24074e992df56db86b9e20533", - "address": "lax1n2fk0w9q4stz7rl43834gdhhpxdrhthzrd85c2" - }, - { - "private_key": "f9b51ed0628a68cf219943594aa8baa5c6156a47432bacec54aa54e27f92bc92", - "address": "lax1gys7umdf48762k0u99jqjk4nr3vvcec3ufycj8" - }, - { - "private_key": "e20181b5781e72549cc931c72f0d5ece196cc80a356e61a104afa73cb424c4fe", - "address": "lax1g3fkqu60mdqnydhql6k695fl84ef6lgvgqt8rp" - }, - { - "private_key": "f41b5716955a2931e3d46ae48bce1873e2d9d97332f37f95ff0d9e8bf4a8894b", - "address": "lax10nfh6av9gkunsqr2hfvv3h5hj3eyvfyjgfnvxq" - }, - { - "private_key": "168f3ea723eeb03d208b54d76f765745bec94a2642f36b3dc0517d792c0456ac", - "address": "lax1sq87wph5rcas4edz4uz0umnhr4apfhg9prp6jp" - }, - { - "private_key": "700fa3ec4d71df137a24426e0723a4c888e3a0c7b3078af1e082ced20bce6a19", - "address": "lax1cpew9xthnfwaqmvyktjvjvs0y6c2zzd5rnpfnr" - }, - { - "private_key": "e46421afe84fd1e012ca62049ddab6bfcfd6b7505c8bee01f692f885c412a138", - "address": "lax1f005q7sahn4huxrvjynw5wqmvruae55md0ke62" - }, - { - "private_key": "2f10e9675690748aba84bc3d0edb24d87f54fdb96d9f8ca9fa8cd2c763066c43", - "address": "lax19p2qes8f5f5rlmlmcrkmz5048ua08j0gwy9ckz" - }, - { - "private_key": "0524538bd7ca5ec135f75f6ac62eaeccc7add2904edbf2a6c91e62d3ba510359", - "address": "lax1qj2hmq5cru0rkfs39me4hzvunhal4a22xykgnc" - }, - { - "private_key": "9164609a69e9ebece9846e2cb25c57646db0322f9149d47185c364e28de1b300", - "address": "lax14l30034jujsuvuf73mf8kn90hw3ctnxgj8scm4" - }, - { - "private_key": "803bc3d6a948c96256bb5b55b292532a6d554f0c46be24367eaae11187ae9d97", - "address": "lax1qekw78wftfszffwuy4xwrxtpenu0qlsdzgsej4" - }, - { - "private_key": "5a14f2d7eae703667fa8641a89fb954e092165fe1d66d104ae42ebcc3e48b8aa", - "address": "lax1w5xf5trz6nheze6m67asd5ychzc0uwj2kwmcpg" - }, - { - "private_key": "26fac25d4bbb9d7fb8cee5cee21a69aab40c219857b786696cf9481ac27a0be1", - "address": "lax1z5fts5dxjmyxwy2wt4gmze8krqs2kur3qttwfk" - }, - { - "private_key": "e8f38bc0fd905c052c459d49552450b9fd14f9afcf1baa4a280b70e70e530cc6", - "address": "lax1989fellp9pft47s6u48dx2efl22amnhkg2a26h" - }, - { - "private_key": "c90328e2530718c148d41ccf4c7249e3a473eb617c6e9695604712d9281cd926", - "address": "lax1vlpfcxgh7wn9rmz8smaw8a7cvda3psq3qsjv44" - }, - { - "private_key": "05ad48fb63fdda894e90b9617a86ae8b4226767cb3478e4633315fd8d8284b89", - "address": "lax15qermwlx3083fxf98t00s3nc78yml8kmg69e2n" - }, - { - "private_key": "3e2461ad02eeac582715fe5aa96dce46d6854bc23eb8075994698202c5e75955", - "address": "lax1n2qfg8ydwxztg0er22vhd8kguwdxtyu5ctmavh" - }, - { - "private_key": "92f47d919f7469e006f2e0f95aec8fcd5ad417b1974283243515fbf1202decd7", - "address": "lax17nqwyhyd4dzq47sw949el28rnm6ukc5xmh4fgx" - }, - { - "private_key": "4a00ddf248455358e36791624b5b90ac58a71062a5664bd908da6d75dae2747d", - "address": "lax16c5eyrl2tlk8vnptlqmq0yjdaxg9fwqzxv5h7d" - }, - { - "private_key": "c46aeb438cc9829fb72a376ed6973a2ac9fb7740523850299ac60f98be9bc0bd", - "address": "lax1tgsfv9jmvd0pv64rgnvvssyq86z0f4qyl39472" - }, - { - "private_key": "303c39f4e4d9d32e629019c630543ea31247a7f648635423256116cc1fe6788d", - "address": "lax12ksxvyeq72v2gdexzveva5l6cyj7950tqnyjj3" - }, - { - "private_key": "48e79cb80cff53d8d2080e62b4cb7642709af368fec3573b41d64c03e76f9c06", - "address": "lax18kdgj6hldhp7h6aqxykxt69cezlqg2zfs64n2l" - }, - { - "private_key": "d7f1a88e5e1c9ce3b083b9f7a17ccbb59e055dcc26001d1a77194025f68266af", - "address": "lax1fawae0rhahaewlgmu0y0c93hh6w9m5rpjajfup" - }, - { - "private_key": "fc54206733a4a574518552006484ca368e7acc231e1540caf6b4e064ebf55b8b", - "address": "lax13rn7h8r70wex9zjdz2s0dzgxv3yppd4g38ttx6" - }, - { - "private_key": "430f113a91aba1962e41c5883c237e9a9bc20ea92f0c94ab83607481603122cc", - "address": "lax1lz498phjrxcfv9kv6s42wszvhnej9v2vycswdf" - }, - { - "private_key": "cd790d4d7e2b390b0a5d8d41c8401f3fc3c5ca73df088559cf6b8fbb52771ca6", - "address": "lax1wgyqk7279dep4ffjyarfsn99fk57z7l8v4jk7l" - }, - { - "private_key": "09c08533c84d8c073b658411a470596f5112c5c4a0e8980d5c17cd8bb4ca7375", - "address": "lax1pp844r2ctjty5gyz00trzeujgjd7r343jj79ge" - }, - { - "private_key": "443f42c40df2a176f0a90794906cf7d617e70b2b67364e307e1fe89e9d4c1695", - "address": "lax1qp9xk4xck4nxh9gdvjp8pus6sjrwrry9mzvthe" - }, - { - "private_key": "80427aa43457e66030a67a635ed901919374cc3299444f94db171381af6d27e7", - "address": "lax1zhet0q62937ymmd57xv8yunzhqypd95yu0khdj" - }, - { - "private_key": "cff0b673f5fc34dcc3f5922939e007cc64a8a4ff57d71fb13e2b8760cfe9f0b4", - "address": "lax1syh30pud3de44rfjnjpwhhhfapv7y9g3suh3kp" - }, - { - "private_key": "3f56b1548e8ad2187ea517990cbba0849d073f6fd5705dbfe4f5d954cb38308a", - "address": "lax1e6gwecsm3p2sfed5sjzqnlq24vafrt7wuwvuhp" - }, - { - "private_key": "b72f28aa303359eb1dd8c087a3c0d5a6623907997389bf2725090ada70202f5a", - "address": "lax1nzsptnjusuk4x4xawpg55trfaxqz896gyuwruw" - }, - { - "private_key": "abb55868439026062c54a66ed93a961d83473c6f4b024cea45f73c36f715aeb7", - "address": "lax1ffa4vkgtun8k6xs0mp2t6uhksw3ad96qs96yq7" - }, - { - "private_key": "c99b4958ec8360cbfcd1b439f0232055a7cf51570869e026d6005d71d0655635", - "address": "lax12h33f3q8g6wnlsfuszz32msdwfxz7kvqjz96uv" - }, - { - "private_key": "2eef558c714c45e5a8a39eebaca11fecbe460aecda272f9dafa6583d9089feb8", - "address": "lax1xu7ddcezqjzqzqp3mxdz88ayz5dmdnvg9qa048" - }, - { - "private_key": "8aa6027fdf4302a24fc9c7868dfdd95335ee4e0582880e04a048d8f149cd3db7", - "address": "lax15sqpq9v7tg8w5uhy6vfmh4x7hgxnsrk39gjulq" - }, - { - "private_key": "4ab831392885c7ede5f849ab389693236d0f845c6e4b30813d62775c18fc186e", - "address": "lax1h8wprjz33kekqrr4aa53vhg6k4kewt3zcd3q0q" - }, - { - "private_key": "9ef8994883c31b59b4973bf43755ee9c22aa42f927afed73eef3677f7cd4e8ce", - "address": "lax1rknmjj7uvfd8kud3r23r23gravr2ar4tep3q8q" - }, - { - "private_key": "13dd6624756a5637c4aac78404d9689a2d55f0dc716163b951a2ea332cb63211", - "address": "lax1qqjrf4c2vslchfmul74rtg2y2chx6jxwwzh05j" - }, - { - "private_key": "3c6acce15278a8cffa5e089d7582d4425c2446175d53b0c77863ecd66d166c06", - "address": "lax1dd4a6evt8wrjcd2jumwph6l2v04g7qu20n5umu" - }, - { - "private_key": "f079f34215d37b2b89e439d45b7f0fde4a4077d06a102edb48edc8f21aa71c86", - "address": "lax1n9hddptj5qmg2pmxykwhe4a74szd8f7mlkauej" - }, - { - "private_key": "30e727d4b8e78442dfd1bdd574a1f0d3add81e1d6765a27e955bab327e11fa87", - "address": "lax1xyfqjjn3aq3e408m74dmsyegtyu74mgwdenaxh" - }, - { - "private_key": "28d097da69a55aa0cee07368887b3c5183254880beeac00f06416761294c256c", - "address": "lax169spjuzmv5snhs2aqhrzfjklnctw9afvktq07t" - }, - { - "private_key": "10b824b1aa9fd8bd72b66c9469d22a4de8ecb663cb07b5157c51b57acc516e09", - "address": "lax1a4s9jlks6hxxvp23f44sr4z7qd43qy28g3c8yr" - }, - { - "private_key": "d28fda6e3e3c2d2564bb30d4d6dd3598e8a5f1469e91f16a78223ecffd01660b", - "address": "lax12krh4thnc6gt52r9etu2xlkzh3cwr84wj697kw" - }, - { - "private_key": "a521c8279a9ca524ae6e2a454cad800b06bbe8132330805c6cb0271c5a562df9", - "address": "lax1y9gngp73z9l85n5hhj9r9fekftv0pl6fss4as4" - }, - { - "private_key": "b9206a783288ca1c1340b86ada8e4a96b92cf8cb25375fbc5a51d0d5429522af", - "address": "lax1lmqpxzjjxh4t03khjqcxnjzcdh34fjeza5kwk4" - }, - { - "private_key": "3dbd955d429f34a4c83d64e46955074a4ea5390e68dd4285582b083f4c3aa6c1", - "address": "lax17l35jakjfauczfwfgvsr2f72grjhrs50wjm5sa" - }, - { - "private_key": "7eb58d6837df52138c0fabb9f7ea0e544f7f95c0b4c0c52b5e2991b970e8d23d", - "address": "lax16yqxh3sv8uswzuvsl0nxu09d8yxmu0zlrtj99c" - }, - { - "private_key": "a2274162ac86cbe23a21f00a35db5121cc145d11b7249457f76634bd186c98c2", - "address": "lax18gm2pkzyrs0z6md6kmrx2nf5v2rmpnunxjam02" - }, - { - "private_key": "01577542c5266ee227918cc0f0696707ab7e12ee8ca895b8e1cad26aa3f093e5", - "address": "lax1rr7yehw4e8lsj6gnyznxpp9ncv0805qttytkqd" - }, - { - "private_key": "24a56da2a3b46643cb7cca25ee879edaa759f4f9493ab631f71ca33eaef0d7cb", - "address": "lax1vcv6wvwg9jzjd78s0dwg7dr0vf6r8el65jykau" - }, - { - "private_key": "c733696bdb67d80ce7152c4f91ff5dde4beef6d6906882e8932afcc6146ec296", - "address": "lax13n7ph27g5lp5stxmw02dvwely34zralanrtx89" - }, - { - "private_key": "21e4eb8ef06bd5a0e6e1a21958f2f655378198691dc0896df7a10da3fdcdadee", - "address": "lax1dsh4qt2tk286nya7nkwzfu4n8hlk2dajxya8zc" - }, - { - "private_key": "d93d7b1abca616201a8de85641a72f18655eb79c7c4ada95b4148f6442e59ac4", - "address": "lax14c4uydg9kc40s0jfe0p6kv5vs5w2pq67wdvgy9" - }, - { - "private_key": "af96be499e73cc302333bcd64f7eb2a3eeff22c8d49bc86082d8877a1e2c06c7", - "address": "lax1v3ru3e0htcflh42382rha0f2kqwprw4sh59xnr" - }, - { - "private_key": "d5f3657d3905ad1f6c451d440471269a751132564a44a61e6426c18d5fd7bb07", - "address": "lax12sua9qdxw5c34ea6hnfl68cpw0m62dp6he88tr" - }, - { - "private_key": "89f98bc56dd77c44a84cbc7b1e88e248c1e415fc1de15feb104025c3a59a3624", - "address": "lax10y5dre7ns368nw7wufhjztz9m9hz640w76ftq9" - }, - { - "private_key": "aca89bbdf64e8f4d63b1d628cd262df4b8f1a3970057f295e243ec1dd39c7971", - "address": "lax1jdas66kgen052j47p23f2qvmy0pt4x6gmfnega" - }, - { - "private_key": "b08ff4d3dd0d2a789a75928c2b6f167661767c8cba98757df920411999601bc4", - "address": "lax1rxsj95e8j4q4gqwgwuutxl5umgu5c36df505um" - }, - { - "private_key": "e7adc6dec0c502bbbf5a5c15b19a02ca73485237e76109ba495513a22683aba5", - "address": "lax1q2fgrw6092gxnkp503wf23g4h2gyyad8nqxa6z" - }, - { - "private_key": "9e46da915ecdafeb10467b4a06bbb575a17b0db6904102bd43ea08ffcc24184a", - "address": "lax1f30qlcz8tcd9rp0xdga9daql0jtqveq2wd4ygz" - }, - { - "private_key": "630c27ced5294a0b8c85bf82b969606eeae397a85fb7b9eb3e78bb939e1cb061", - "address": "lax19mnr9lspur9actf6jxcdn3vxkx0l9mrkf3fqcc" - }, - { - "private_key": "cf3b776ab413bfe8610d0c65e05ee59c4d3b1a9add87e61cfb065557e179c95b", - "address": "lax1tgu36aalxz7xek6w2anm0f8npgfwlr2vg0ztkk" - }, - { - "private_key": "21661c87d7b1fd44ab3daba76de281a366e0bc399ba1ec9dbfb99f5d89732ec9", - "address": "lax1zjd2qdt78pmcpeqg4ztvczpz6k8mjqgqarfnm0" - }, - { - "private_key": "641f1b871348ad1106f5a3f44cb7098cfd21b0abb852ad2010200a5119cd563f", - "address": "lax1054cwfnlavts984u6m9nhue0nd0a34dg2za54a" - }, - { - "private_key": "6d54c0275940d335509e63a05df9cde22a078b73105805a0f69a55cfb4ecf9bb", - "address": "lax180qzadzuk2jjasdh56fyvkyp8ex4pmseeqv4vn" - }, - { - "private_key": "956240757195dea6f9adde2bf669491d38ec8a05c415fdf94ce5211955ebf8c8", - "address": "lax1eakxewzp4rcjgwv2h9ywchec9m3uutu0mjvk73" - }, - { - "private_key": "009fc35bbfd31f691b49a75e258fff633b95fdbc185596d9bb62149b1fe0f2af", - "address": "lax1sgftcgckehxegp549rsvelxa3p2yyejaavjktv" - }, - { - "private_key": "77b3fb64936c730f13bd3df4ece52ba0e67886edf71ebc1b768374ac7432ffe2", - "address": "lax16jhnw5mhd99upjgsxymzdgr4hnzmxrh30q5m8s" - }, - { - "private_key": "71286739841ff0f495131980553ce1bb93e719f35c4abd1dceef8cb9a2ed0767", - "address": "lax1jqz35k79tdjt44v9l7gdjfq47t97s3dqesfdxp" - }, - { - "private_key": "823524f94a6b22724733b653b85aa894b9dea084287098bb6ff7a98d1d57a23e", - "address": "lax1dp6nhlykr2uyk4hsyehk6y4u8t3rgrvwkq622j" - }, - { - "private_key": "8b81fb5c4fe6a80bb74becc848b639d74e0c057f876b5b1e4717cda94313d0b4", - "address": "lax1ch4pm7xv84zqh5tswn0dlvkml0mprp67agycv6" - }, - { - "private_key": "68abf20279a76433181f288ccd471e00ac53b369c89635d9600c780de72067a3", - "address": "lax1djd84exx4kjq7v9c96ug7qu7m0ucdnaw8hpx2m" - }, - { - "private_key": "3961d4d9af38a537ed7c0992b56229b1ad74f319a024278e7921a354a3f3a17e", - "address": "lax1ceytcrjwtpv62wssut2a84tuu4qv4ugeruvxld" - }, - { - "private_key": "215523750fbcc9620eb4abb30a0acb69a3b7f3de9cd730a83d32200754e9e9ea", - "address": "lax1gmwcxdekxavnrva6gwsp8ltd88zp0yrexcksu5" - }, - { - "private_key": "86003529bf69651d0bf04bad170416837149d651281d1b2d59d6007c0161877e", - "address": "lax1v3csw4esccrs0j6rputl3z4yvuq47xa89av5km" - }, - { - "private_key": "9103941dff51809954c0ad252eea9400d2f3c3dad5e4ec35a7d8f7cd0cbe1e6b", - "address": "lax1dgvqlsa422twm0paxaef6r0a2ck28svhekduet" - }, - { - "private_key": "bcc55236f1b232dde8289c9102d79cff087ab4860277e4758c3a5c2e8f02e3f1", - "address": "lax16dq4u559s7pzzakv6yh4v9se42uvjz0790rt6v" - }, - { - "private_key": "d43517540f8417df103644fd757671ccd3373162bc24b9442a40bf193a39ce87", - "address": "lax1p3h9c28ztk45h446y5yk06x5s42n2ewxlwfg5m" - }, - { - "private_key": "238ab0e0bddbaf2e9466c70ce49f480c00c5746cfd964bcb41027f771f8686f9", - "address": "lax1npw3euv6pnuqyvn2kz8as07lasl4flvuuf6rcq" - }, - { - "private_key": "05fd63feca2295397202753fc69423d31b0ab598c4741f9279f3d5310a20200c", - "address": "lax1pvnl553w7xyn3z8jt7k8r4kd5wyf5rlf0qtc43" - }, - { - "private_key": "3293861d3052f59dc0817c14a834e50774e02fe1b488686d6944f8627b6cd63e", - "address": "lax1vtzd5dz3e7m5lems93vy52hfd76708p69c4w8p" - }, - { - "private_key": "d55343acc18548c3b268e3ea746dc32c73617ebd898c5acd4ac1fc92fa830e05", - "address": "lax1mge53vczalv4k0s2a3sgx6xqe8g6zhmuf35c0l" - }, - { - "private_key": "109eb21c946485d8953e2d4905356e8e81e1f751e33cebae08bd90e503f6e4a6", - "address": "lax1scyth6xdj4n0j2hmvnv9q3duz6as0e0jqetpm7" - }, - { - "private_key": "0cf24643fa931aa9d4a387b0a3fdd1e7e6f7641ec331eba3bea59a5ea806aa83", - "address": "lax1kp3whc05684dn7rdd2u9y6zzkceux6m4fu50q9" - }, - { - "private_key": "1f4c1a05f59331f41a069ae45694c8456cffba92d8a745c2521e6df63b5f52ab", - "address": "lax1drhdrjex7erwupdwezurc6qgs8gtuf8sd93ruc" - }, - { - "private_key": "45feffd2aa8440d7f2db297b151089f8d96a748836b6b4e4f77191c722d8340b", - "address": "lax1legu4tk3kw3876pjwp2x6cuwru02a6rcr0tjwx" - }, - { - "private_key": "24b6cfe97f1ddf246b2f486a2600d7d0b52270f883c90226da78eeab1289e599", - "address": "lax1rd0qsylhzsnqjpj9m56kmejzuwn5s7djmd47lz" - }, - { - "private_key": "27fc1e65855c61142b85032c75c70af1a6bf2893c7b6491eb5fa52eb9220ecb9", - "address": "lax1cw5p89etxmzjhe268q0x45d5ycyt5v9jxgq96u" - }, - { - "private_key": "17c05c15851747914db885ca035a73dd7486e4a3c6b67b830b75a25cbf15fa19", - "address": "lax1xna66wkx99g3lpelthm379c2acjlmrk7s7ef2k" - }, - { - "private_key": "60be8088f4b7b12ff6bddf450bf1b507239a524a251005c97c19879498dc5d3a", - "address": "lax1uhscle5ngc702fnxg4zlqgap906ddxpppltt67" - }, - { - "private_key": "6614e06cc17a333032fda03dbb7b38ab3802128a11fab6d38d6a4b82af481332", - "address": "lax1uch33ehpn6qgywd052skfxhejcltp68hxeue8y" - }, - { - "private_key": "b6a18dac9177fdc970e0c05ed34966e43ca229910c1532298576a4e6df83ccdc", - "address": "lax1p909lvpnvvqlc893etv3vlt5mwvmku6gdfjle6" - }, - { - "private_key": "a42683fc5724010ff6e9b9729d9e2ff3f2aa7f5d5c3efb57ff91a1a732b3fbbd", - "address": "lax1rg6x6upsfphm47xgqm7qn4sen30kk4l3ehl5q4" - }, - { - "private_key": "d66298d18cb7e33656b3958950bb30ce917e2023511d76282e00c0f49391d1b9", - "address": "lax15y4jkwtlsarxz2tyf8d5w97sc9m2ru0824n2cq" - }, - { - "private_key": "418ed4206490545fc9b902976ad46b8e53be1cfc2dc3aa6d0aac23d87bbc72e5", - "address": "lax1xqzgd2rxtkmjmwu0mtqqkzawa3n2mnulhpwqqd" - }, - { - "private_key": "5e2988a1eb549a9b9b5ee99ee4ccb223edbe8ec8ec5d0f395b749eb5b91f39bd", - "address": "lax1u7khl3t6ns04v9m87zuu0krqdecy6lhz9rw4vw" - }, - { - "private_key": "3d6b15e4c330abfa228371f24c5f2271b223ad393727d514627e981eefa000d2", - "address": "lax1nq4qs4xclprumq9rsxz87k4v8ldlhsrd3v3x04" - }, - { - "private_key": "401dfe6c4439a4d9e1d3fddba3b42397908bbb4a4ae13a052fdec04fae061b8f", - "address": "lax1xwmmgqf22449x42vhg4aeej7zqvkek5mczvyr0" - }, - { - "private_key": "3d681c0d0beb8c72cde6fa59b53180556a9c9f498c38483a472a16def77e2e79", - "address": "lax1u7drzy2j74hhfnnp6alsqlec7tayt9ur5g6qst" - }, - { - "private_key": "dac840a3f50654b4fb2bb9addf7563582094f4fb90d0b3b4358a3730eaeace1f", - "address": "lax1fe5le35hmf3f5p9wdq2ptp89dz50edz9c6s4jk" - }, - { - "private_key": "18911f0853a62d9545f8df5b91e596cc974b747a1729062588b39a70c95cd5df", - "address": "lax1svzn8tzt3cmkjz67e7ps5cd3tns5s9qz8xlc3y" - }, - { - "private_key": "67d7b85346f82f0a22092dd9efb9e3b29eb00a578eb98e60ff24273438b437ef", - "address": "lax1er74w8q7x0epvmls3grcwr9tgaxdnrqg0qn8eq" - }, - { - "private_key": "3a73a428772c2207056cfa739eb20d8ea6a7c872f2b776ab0d653184b6b8a2e0", - "address": "lax1s6u2hpxl3zhl9dklvl472yd7aarddjguvaj6z4" - }, - { - "private_key": "48a2bde4bd5d0718a51fbf005f2842d7eb02ab3e78a747f8bece74ae449d0a0b", - "address": "lax1w8juunspdw3wul2um7lcwhf5ecx84c5p2dwjuy" - }, - { - "private_key": "595364fd303c8b73232be59837b977a9bc24b08400c7859cd4d9166e3c1b33bf", - "address": "lax1ufsqxf5457dfggducme4v77zarwnqgzcyw8cs9" - }, - { - "private_key": "feac9e75ac0938d2f341ef5426406a4d80a1cade8096af27fa7b246881ce4728", - "address": "lax15kjcnhynqnl0t4857t2njple7efr8p9dyen0v6" - }, - { - "private_key": "888dd4732e2021a560e7573b0aa3e830e1489245a266ed5b85cfbbe2f3018261", - "address": "lax1wsz2xpnlnpen85040zegy3vn3tynj3tfaq8z65" - }, - { - "private_key": "9d6ec6c54e4a1b1b1b0c28f87b5c6fe6a3cb41a6a87a1e2ac51b15ce68505d4b", - "address": "lax1tn7q4qpdtrw4vj4tmgsxathkhzve5ckx2uhuqd" - }, - { - "private_key": "532839d0170245e5315b8477f34ea8450d3eaccbc72dc9edfc4db46cf53dd909", - "address": "lax1wvyphcmyzlf2e620klkrcprptfkqy2j30s6pmq" - }, - { - "private_key": "4290f85e338616e7fb79435104e6251e5aef08fd4de9cd6e8507017e3e6c0c9f", - "address": "lax1q224k5nhc7npl95zleuat2k3saljj6rujyw8en" - }, - { - "private_key": "732252dc86de39593e25ee4dad5e198f5ebaa6bb723f4dcbefb6f1493e1716ec", - "address": "lax16tlhstpdmpvjpfqhhqy2hw7qryjfmaxzyegxss" - }, - { - "private_key": "937179d3a0d845f4d9116cd77dc47d21570b783647470aaadc50a5c37a2c9d23", - "address": "lax1704dp5saqyztvgp08mwv4qgvm45z3rym3kv0vl" - }, - { - "private_key": "e2fc64b80e9046912d97c7eacbd8db556645a8c3a764a3d1e47ca61b762a017f", - "address": "lax1yfw3tkjy24wdzy7vu0pw9fdd47kxn0w0sguah5" - }, - { - "private_key": "16294f2168cb09ede35994c235bfd413c2813f6cc397485fe11157bc6aa46b33", - "address": "lax144x253gxfz8wetym2qem6klkuuus9d746v6vy9" - }, - { - "private_key": "cb8abfd3bdd6a408ea99f0fc12b70e7bcfeebf255936a6090f096db676051379", - "address": "lax190fd3dz5vzuhfvt7470fv5a0mrumar5mv32vth" - }, - { - "private_key": "04e5e35d194148baef0e7cc34bb8a7a5e02b7883db3b6beab98c8591574f42ee", - "address": "lax1zz53jd5skcmpdgs38w46jqhxlkn0f53m9rpp5m" - }, - { - "private_key": "df7034d7ce7d51e8307e18425950e59185b4e65e74e18bf874104dd5dbbc75c4", - "address": "lax1x0cec9e97dv0d3k77wzfk4kcgxathn8wr59tlu" - }, - { - "private_key": "14dc884536feb5ac2a69edf107bd836a0630790d1cf1151c6b051389aec9278b", - "address": "lax17ws2ah85r38m0xc0c36xjlvdqr0hc7xykgpgfa" - }, - { - "private_key": "95cb16e6e06faf902e0015160e02fce6584d9e1ab6e821e689980303cea5f98e", - "address": "lax19hk4269z0v7c990qsj7uy9rdy8veum758gawuv" - }, - { - "private_key": "6bcd2ef5064b7ea9525c93f2cecf58ef78eb72b66368b81a33bfea7b2cb4b4df", - "address": "lax1ykeyfhg49aphuh0umd8xjnch4wc9lj7t48s9k9" - }, - { - "private_key": "36c558e8e774786d9624ed1b8061db494fad51d287d04737d0214fb31553df70", - "address": "lax1nxhwlg6ufrym9e4nj5aevc6w8jtcudps3xtxxz" - }, - { - "private_key": "77352bab317577b2ee217c2b036c95c1f97e8f7bff319d20a610297605c1b4d2", - "address": "lax185vn65jectl4jtgdsnp6tacf6fcpnwpzwg449v" - }, - { - "private_key": "148fcc29a2b7260ab991d93cc91b8dbed3ffa35c5c1468d64ce3caf26a18d5a2", - "address": "lax1l0x3xp9hnpx4lzuzg96pjtz54udglwj99906ve" - }, - { - "private_key": "913ce05d3d4af2662f9cfd382267de218b999aecdc56c725c83a7bcdab00ebc1", - "address": "lax1vgsgujved4xgm0pyfe2y7hyp8j90zgp6kgj7hs" - }, - { - "private_key": "072aae2e6862d92c9491f8c5a1906ba8038d75c6a3a3750a80d2dc5aae925e08", - "address": "lax1j046m27mfxl6ztjxhje3rfaye003mcafx0s5jw" - }, - { - "private_key": "ceef05b427949779fe77dbb56b24980708471ad092d96384b1e3ffbc133bd59a", - "address": "lax1x92ele7gwal6pvpd7alrra6fat4g57z5hh27ld" - }, - { - "private_key": "e43a47fd90a3da130bb45e692932fcbb55dffa041e4c038cd5065c8b014b3cc2", - "address": "lax1q295xmm4mdcq5wvdhu9ye8grq27wwq43aqzqjs" - }, - { - "private_key": "adb01c66e632ede48d0f36bf341d636ec9e9d0241eb464633bc3a5a2820e2a22", - "address": "lax13ajslpxn233s4nq78z3ds3nf3h7ghw5ansqqym" - }, - { - "private_key": "11d7aa204dfa2d4cc2cc06d5c5ce1c27b4bb5283d5bfbe22cf78d9be8428cce6", - "address": "lax1k93svu2q5eug7yng7m7kmrq6h2kuhym4wrfdk3" - }, - { - "private_key": "9f7732a90fae0291a063726c70feea47fbd6d9b0c6ecd99fcec33b4ded1d4704", - "address": "lax1t5hqmja0st0ca5je7elwzgy49md4ejsr9e0tjg" - }, - { - "private_key": "0d5bab8e51788937f9004b385d7ba584f9207ef584b4932129b730a13c1f888a", - "address": "lax19j6tv8fy0ry5tt3qzdjmcg4p69p769v8l30zcz" - }, - { - "private_key": "44c45dc95bd098117a5d25dbd735154aa37dabbd332a9d3c79b91cd04ec80862", - "address": "lax1lq9cl0p2qvkes90detcujgq5g8m5zc5znyugz2" - }, - { - "private_key": "4276fd06c33e3442029af141a2e429a610306845c64ef1280a1c73299218a225", - "address": "lax1q8yypwn5c7trwdq07cam632n8p8a4mrqxz0zad" - }, - { - "private_key": "d5ba7bfb01e76a5c753fdffe59477265ebdfdeaf900d0905760ae0fad5e33d1b", - "address": "lax1nt0f7c2cj64vyuvlfvu23rrhm004s7pldd8vsx" - }, - { - "private_key": "1cb8c7258828e2d62fa8553a4b60fd7af9c1d267bf716f8bc943dcbb9f29e3fd", - "address": "lax1tf7r485xmz5r4rk42r7qcrwx44rtsyeufkr9e5" - }, - { - "private_key": "5bf49f0a79c50e2a34156be64587338a20bf60349f90e1d86119ae07bafb10ca", - "address": "lax13m7md60cjgehyh9p8we4f0peywgqjv4u0krmps" - }, - { - "private_key": "5db5ebafb3e619a148bba37bf23eef723bc2cc821f78a25896f6eda6294fecda", - "address": "lax12m0dfdz87twjt4hxucts77nhus8jfykkehn3u4" - }, - { - "private_key": "6344d080d9f4b435863357e21811f9a835b47c1449d5b436c2eb97ad24b73817", - "address": "lax1sy67yl325c5kj2ql33rxagxdw697z3myreshyz" - }, - { - "private_key": "45e84e1f7792cafed49ca8e3d09f9333adac2c560143bf1e20141698848d33c2", - "address": "lax1689q3um88llyk5a5x67m7f3pv3e2wtpp9wkryk" - }, - { - "private_key": "e024032cd673e69190e955121d7353fc359ce9f400cf674e2aa9d04b06a6d9df", - "address": "lax1f7cs9rf88nmv4xjarzzzg0wycct5n2f00qql7l" - }, - { - "private_key": "6e03ad2cb719bc5684c89beeeb1a663c46b5c237c89da778b65357443b2aad63", - "address": "lax18j5a6reacx2lmh0v2y8hx2v0nr8jka92h57r50" - }, - { - "private_key": "a506a628b37d61fe21f343550b49171e0844883d2f18cbecf000a53b4b9cf709", - "address": "lax136za946pg390jkhaxpas0hrczyz4hymk4e4sk7" - }, - { - "private_key": "f8b4df17e75b7192421d86edbe94747f4371000b694278ef6feb6bd112e7bb65", - "address": "lax18ppzztymws83ws5duv6ckyck0r37xurj33ggq9" - }, - { - "private_key": "4aff07ae25a85f1a479b51ea2aca152f05f9e0762963ec330d6a1e4c76075b9c", - "address": "lax18eq3h54n6vavprk4lamgf6ywewehz7z6kp7xnn" - }, - { - "private_key": "649e1c539e8b1cc1a4dc2bbdf0a5c46ccb2cde0f0c3b31833dcef5479a1ef58b", - "address": "lax1sskfgl37z3p7dxafgn3dasdw0jh370k4g6v7rp" - }, - { - "private_key": "6e13a85e896b71e01ca69fac79c929d817f8d44236a2068fbe3cec0a3e6e2d6e", - "address": "lax10xh6kn6r44vrmsx42rrmhk47tfe8fgn892chv5" - }, - { - "private_key": "cd14c0c48673b2da79ce5eb6b13ce5efbf73f745f6e8ed9c79b8c0ba5d9176d7", - "address": "lax1dnyssypdrnxe2qa7twr5957sdmk78t0phw49d0" - }, - { - "private_key": "de1b704f2dab446d5d6b5febb109b0138f49aa9bcc844d475e1e53ac86b7f6b2", - "address": "lax12w4typwgzq740zpcfnck3du5d75rftpvpz0h4u" - }, - { - "private_key": "26333d96c911470816a4c0598f214d9ba8dc5a9c8a893894fb62e8ef21240ba1", - "address": "lax1z8cnp5852w8sfh49lld930asfx8nsmgjc7frcg" - }, - { - "private_key": "0dc338949c488ee42cf53595bd48249978507cb85091d99e3214a03062302cfb", - "address": "lax1h3tfrj9z5xuneq3r32399j64h6r680x7gyxjp8" - }, - { - "private_key": "86f37d0027d0b839628f1dca185c55befc8d87892ee8e575a5aa338922cc6309", - "address": "lax1eswzhqc5p8n6nn7nswxxdnz63ngqfr2jvanttz" - }, - { - "private_key": "9ae5c34e0627b4439334a9b74386a1cbc4cda5b6581a87ff97e39a57cc5de6e3", - "address": "lax13ctrnkxfv70mze04gdcwk4crk8wy6fhsjtdw6u" - }, - { - "private_key": "f50ed31c3d9fcb5d7a8e64a452ab9f5f14e8b9ada2eeaf155f54434ab7507956", - "address": "lax1n6v95ds5j0n6h962mlv2mlacxcgpkgspmq67yg" - }, - { - "private_key": "25152d152219ca63eaed679bf0e821618102bf43211655a18717fa492da9e6b0", - "address": "lax1dyqx3pxh4ucn5g0qnjgr0xj08909257jgyltdt" - }, - { - "private_key": "d082335cb267fa8c969b1724d471587eb7d6a15a8827652bf5a98f234ca40a14", - "address": "lax18eylxx5cu0lvy76pg5sq0mu5hseh4hyydjvzxj" - }, - { - "private_key": "f8c60abeadb4f83bdf0e945afec1cc6fe5c2cb37aeb8dca32b8338f26d73c217", - "address": "lax1c5gf4dmqr79xqu3g599qj6x4gg6nfswy929mce" - }, - { - "private_key": "ba93a6aecde4b745fad8153ecae8437a4e28929f3d5aeb0c2f5ca3e8ba9d18cf", - "address": "lax17w27lz85gn7a3447knpvdln8j278k8uq3gl0re" - }, - { - "private_key": "ef35286c6ae903832aa883794de099b0951b33d5c53225e37a2d56dad6c2ba87", - "address": "lax1vzejd5tp9chqk9f4q6m94y4033fy7nrhw9a3ca" - }, - { - "private_key": "bedfacddbc7c51d9ac4fe63ce0d25df2c1b7ac596b5346362e1a6aacab7cc5fd", - "address": "lax1e738zlhsa06q5mpuhndw6nlzgg5cpwtklqkf4w" - }, - { - "private_key": "926ae1c51fef1452735ee6375e8f3fe5d5351423c695c9cd8414356159572fec", - "address": "lax104y83qz27ym2x3lc2jsgf52vyzqzssx6j0a76y" - }, - { - "private_key": "0fa596c6573ac8ca3183355bcddd38f16cf662a660b0925d455521c7f31ad3b2", - "address": "lax19x8swhte8fkrc8ltemngpf485dmx0ht3py0a9w" - }, - { - "private_key": "63d17959cd313e6c4a991c8cd1f1890a7371169320e2aa16086f7df043f97a5d", - "address": "lax1fsn8dpcpu897yy76x0v55yl6muzcxwzjj0ud83" - }, - { - "private_key": "d69e358dee474f2509b3e00b6d5bd9e726049f39156dde825b11f8e647fd19ac", - "address": "lax19xn674g4pr5592ldk47kpcqpg30h795xadtk3z" - }, - { - "private_key": "c3e6fbba221d693b45b7cd5fb1f62a599a607dd5becb1e6d6ff7d52c7979bfe8", - "address": "lax1uaev5yfn2hktngl7xjlehvh3gkk2v87nmjv6xq" - }, - { - "private_key": "3dc1785e22ec338a0836e61e5ba067a7195fdf42ed3b65f90d30b24e12dc8d4e", - "address": "lax1s0tgs90m52hevtwymfn8ez692njs637kx7rnr9" - }, - { - "private_key": "bec222e6f4d42d73de6efe42e67e5bae76c62c8f58a0ed500af7f4f3e4fb1d72", - "address": "lax1wcve9cdt29suzhj57ujnlqydzta9qtnfgmm28h" - }, - { - "private_key": "cd49c79903c5ceaad874821fd0c9fb68ff34f564363131358e067a463f1c40a6", - "address": "lax1j8lqju76hkhfq4499lyqymx0rnpuzzk825sgwx" - }, - { - "private_key": "3a48842d0104f2df4531d8babe4a74dc39faead1b96dcaebf8a7937a5fbea586", - "address": "lax1tqnag7ec2wx5833t9jt3l8mvywxvgy3w0zmwtd" - }, - { - "private_key": "6974fb6e14a2921f9cc8057ae97f65051e3699cb5562051d36483acc823e024f", - "address": "lax1qja5c9n5v5zqx8s73xfxspj5xec2zvn9zqpjc4" - }, - { - "private_key": "672bea40a25f26020462aa66d6b48c062126d52d5485b7395d560715c28d6508", - "address": "lax15kaydkeu78z2vcegnqt5uddeeyhwsv9ap3axwz" - }, - { - "private_key": "2cf23d2db820544e8b60641cf0c62be5d43deab585c61c05a6766862141682a8", - "address": "lax1gmjuj745xp6w22aczaxjv8ksvmycgmzx8p97g4" - }, - { - "private_key": "2b622b284e2f50aa90e26ad42fcf49426c2725f29c55d3f22ea7e910dae36106", - "address": "lax1ypa07tesn5xjav6maejp9n6ucwcgk4cwqltp5a" - }, - { - "private_key": "9836b9d1a4ea8a36df8ae70017dacc63ea626ca1e40785791e1657d3346a8d3c", - "address": "lax1ugdvwsgtlfdyqk2guy87p45st20ets9v3k5hwy" - }, - { - "private_key": "dc37a3640e1ac7431c0f5402bb34226027beb9aae9d6bda8af47e3ef9ddcb95a", - "address": "lax1wv247eed3xgkxfp3x69a5dd7eqjuatg32jsvca" - }, - { - "private_key": "2497f556127cad950c9c47571e644f12826f43e0441c1af578c6e98b1b5d2424", - "address": "lax10vxx3aj4srz48zu6r2pnyrmxfqr0qs3zuc958q" - }, - { - "private_key": "d9f9fefd79348ee4d7ba4db7ec10f73bad62e0f3893188312d6665f7564a1196", - "address": "lax1mpatkr3kjds38z5tluhm2h9e2t0d3z8hdaqjgc" - }, - { - "private_key": "4a5d2f9b495ef201762724ffe40b197cc2067c7754fe867f0b7f19a37d7ff097", - "address": "lax1ev8u8zx0cfzh4qe94n9568nrztkhvx6ecymnuc" - }, - { - "private_key": "f9cb065ba634623018a191c8024844727afe0879b8f4952eaf0d204918e6ffb1", - "address": "lax1zp4llv95je56un3tlv9xgv2qvex3ah6e4q2dmq" - }, - { - "private_key": "bb40b5b2305201a87703ac4c1ff05f1876b5cda9240532e97c35d01063aa8c21", - "address": "lax1svp7kgslzvxgavddzn9su4kvuh4c08n66zxqma" - }, - { - "private_key": "e9f699e29dd922129a3457d8991a0d4564d4371a538effd34f7a173ada9aa198", - "address": "lax17tegj680lpf82m4ul94fnh0mrzs7he09amr74r" - }, - { - "private_key": "6e6ed8eb121e0c467b2a590efdaae1e12edb3abc4eea14e844855cd61eccaf54", - "address": "lax1s8ka3ufn38qcarqpcvdh0rks0wmwqfxy37mkwh" - }, - { - "private_key": "ea3cbd64460d0ef81ef6a4122d8b02f93a66cf628fcfe7112616c41e0d1e4776", - "address": "lax149gd6kgsr7h0claxzw2kfxc6quslpr39ecsq7a" - }, - { - "private_key": "77278c35762f0802074a2b5f07f725fc92accf0b68f7a8e30ee2cdb180ee7c4c", - "address": "lax1xekmeppy3ydrmv8rzgpffh8m0ylxnqen0r92qc" - }, - { - "private_key": "d3e2ea24fd57eb67d8e8478a5a2796c225fe2f6a6b98f07b5609d7cb9cf2e01e", - "address": "lax17q799ra5prm8kn0steaa04hxj832lcaxljrcjn" - }, - { - "private_key": "fa175514486fc11a51449c314cfe72453a83c4d969e231ed7bd62c949111f1ca", - "address": "lax1qe6hkegxpcum6h0e5xfn6ejy02vn7z83w2juz3" - }, - { - "private_key": "a0462f3f39413410f36455ee0f0c635f9f5942cc3f04e3c3fbebfd5ad03009d2", - "address": "lax10teydnldkj7hxpas6dupj8fazev05z6txzjg9c" - }, - { - "private_key": "e5055f2aa54535bbc406937c96a308b551cef25646a3c895f56723608de8fb66", - "address": "lax13s54yjfz97h4lll4s5j2qyuaqrm30gkll5am3a" - }, - { - "private_key": "a1b0bcdfd4cbf259c7719bdf19a7f7055c3c76076a375acb7c2cda34c3bc6b24", - "address": "lax1l4wplrkdhu0pncg750pyfczxccrtzqtzk8wrzx" - }, - { - "private_key": "1aba7af092563df4aaf45a130c96819f3e2a4c935a07585293adae319c972967", - "address": "lax1pesxl3eth5y4zz40jyaa2pxk8jcmv0zrxt9dcu" - }, - { - "private_key": "7d10ca3d38bd86d138377bed77b08de5a264c34cf842fedc5dab4c56c847550e", - "address": "lax1x3c6qq6gmq2z8eslf9ds93zlzhqd8ldn62x62d" - }, - { - "private_key": "e633c4e4dc05b367e0ee0f5ca16ad051bb471bf4a17d7a8563a25c80ba97e9b6", - "address": "lax10srukg7nyemhdz2dqf37sjm3zkltu8mv64nrah" - }, - { - "private_key": "e5a8898479b2d0db922c2e05a85b8ab789b02a862f23a5f7d3b5534e0fdfd330", - "address": "lax17zt6cm4l3cw8a8x0k95j50p77ra4hw09x8yaj2" - }, - { - "private_key": "c3ecc10981fe5fcbfd2e6a9cffa190cb55bcc4366defd2d603c5b027875f4ecf", - "address": "lax1p6zsqk9ncdenmwzdc9erfj69q775pf2feqqt93" - }, - { - "private_key": "382fababcffc8ff3d765ea70016181c3db67c1a216a25a54b2c8baa6429d40af", - "address": "lax14kdd7ggew6pu9nnag6n55zmg5k0j0getmj7cyk" - }, - { - "private_key": "fe50689094cdc6b7fdfa37813a73ae17bc5a5c83a751eabbb12b7ef1b02c1767", - "address": "lax1j5jm7gzjwfttgxaazen5j6q2pxendkmg0hvx0m" - }, - { - "private_key": "d87ba5657a597b8c5be7524e0972b2fe28351d0ba232ef84776a5d1f88c993f4", - "address": "lax1gm8a3x2pl82snr67q3thz0a7p54uh9z0ee3vev" - }, - { - "private_key": "417eceb9cd818f605daa60a7a3b68ab6ce1c27c1e8872c672a072b7c12901973", - "address": "lax178wq58k739c5szny5yac4m8ge58j48j3ucs7kq" - }, - { - "private_key": "904c84535424265703e4d883310a7da3db2ee5f299b2c8d68b7f7d9e00248dd5", - "address": "lax1sqmzh26tplhpzknhsyrt7vjhvhyd6x5ggyfwjj" - }, - { - "private_key": "584541cbd5edf579f01a53e0d411aba9a8b6103adc7b24a15d67a7776a1407d3", - "address": "lax1q5sglx0j5sdq3h34f7d4dg0mggnentg9uupapg" - }, - { - "private_key": "9a52828e4d5100209e2f5762c6fe1637b2795ed8dd69843ffee09c356ca2a0d7", - "address": "lax1y77sp274dk8hm6p6qm6v8ps0vl9l0gqcnesdgn" - }, - { - "private_key": "e41692d94c0ac991379676552679f91b32de00592c8ba97e0d9a20d20e80b810", - "address": "lax1377azfw2t3aqdpsc2cqfdewd5tlgkdkkewzr0c" - }, - { - "private_key": "0df9d5490f2ddebd3186ee7259e4f59574092e458fdf0940123712c6aeec1639", - "address": "lax1ftagfa0qlpxvwf3lvv4lu9zl6fzrj9h5lxasd9" - }, - { - "private_key": "2a6bc245a59a0fecc8a0c71bdbcf1fe85b0861a7f690fb77d201ca8df3e8a802", - "address": "lax1aravx3n0gd7yg3gzm49uzn3suae6hxhsnmddgx" - }, - { - "private_key": "8bcd6ca2d201a65e59ce9bcf9b63e4485407135aceb956b50430c5470bd4f8ff", - "address": "lax13gye5w6lu25a6etfqzu6nskwzlln9tzrkmy22t" - }, - { - "private_key": "ee0d4ebee95a394da0355f4f352666b3006ecea378cdc0a3b24776060378f58d", - "address": "lax1cyegtdp4rfnam9fp2ekrplzv2lh3jl30vqj6hm" - }, - { - "private_key": "4e8115fcb8e1a0158779faf2eeb2c2cd1b9a07161d915810743fa508a9a77eec", - "address": "lax1g47x5awy5h2n543fv43pv56ewzzy8pdz7ykneu" - }, - { - "private_key": "82c95bb1f693f4abe97c579b8e722fe79c87fe8fd4cd8ae593aba076c7c6c373", - "address": "lax13khfygm0tmzh4kdvm9gqtpzj60jg3fuz2wfce8" - }, - { - "private_key": "95cd959d1950ac8e16a0224681300909926fe24f5e2c8860bb585499f20eb27c", - "address": "lax1jdry0axkuwa6ckegrqaz2lygvy8j8eysy0m4j3" - }, - { - "private_key": "261d683456201c7822e985205bb2ea4ed3c6387d3407455ce3c3d7bc8c94aed4", - "address": "lax1hkk6clcxkltyxdgsz2afdxfq6jx36hnjkscllk" - }, - { - "private_key": "a6600f1cd50c8b80af28bfb6486420430e6e54ceb43053bff6f8d89856c01dc0", - "address": "lax1fhm9c4dtz70jq44lzjc0fyyjewdmx50qs22krx" - }, - { - "private_key": "eb0e9f36ae8fabe45692408b18b10c1a3615584a145af8ef4ada510ab33a7244", - "address": "lax1ttlh0j93z0neduhrar62utkt448nsk9s9hv9se" - }, - { - "private_key": "b63d27a1e6cb669bb769b0cb239b547f55554a0e4e6ced778637f46395edf6e3", - "address": "lax132kau0876cs7jjg7pdua336urdy7x24468h2jj" - }, - { - "private_key": "ff2230e82c1bc6dadace1659b02154285e5f9f88120150e0ca178a20873de244", - "address": "lax1hz9ar55urz9w637hgxcppdf34guv9pu0qv9frp" - }, - { - "private_key": "1d00e50ae96cdfdb2f053562340b1f738d961043d4fed8b505c0e25e3f73aa7a", - "address": "lax1cuk0ghgjyt8q7a4ymra230te8cc44x3j4m4kz3" - }, - { - "private_key": "2fd578889cd301847d895479b7941daf4058b48e3cf8acbe44b08bdd523abaa7", - "address": "lax1uk40s95ckn6arylpffa2gefx9wygr4jnpa5qju" - }, - { - "private_key": "8ab65977fdc9f27a2131ec19f3c4ac19dd19a3303da9714f3a4a9a81b24e11dd", - "address": "lax1xsqaxrsdu2x30snh2n7wzrzh32qmc9flwn9jft" - }, - { - "private_key": "d93ea86c1beb316baf59ca915b7bdd482c49c5fad2ca2c550193c5e299e5bf0f", - "address": "lax14d0w596pwpqhhjc70wnrhhdh2y4d5apc3hlpeh" - }, - { - "private_key": "e3ce009453067f887dbc87cb0feacd8771adbd45b294964b5c7e47edcd598b00", - "address": "lax1kexg2shkyv7tlyl29u3wf2l8a5uanhg0pn3qxm" - }, - { - "private_key": "cef659db958582155c0281caebb1eedbf7ff35f6dbd3c11e7050ebf306e40a29", - "address": "lax1peh9p5nk3pxvy43mwez86v0anp7pssjaeeh05w" - }, - { - "private_key": "95fa78004fb3fd156e8a7bd0af269291fa92ae8cec8a074bd8a1ac9fb69b100b", - "address": "lax1h3hzl692m9z72yetq7sxsyatc37zat9u2c9fmz" - }, - { - "private_key": "8b3a19e55939fd574f1ac65af8aa6ae628141ce21f8b6d301e9db6ec01a2e4ed", - "address": "lax18um7pa6j9yaz2f8jdhvu7q62ljzp3cxzrc8lxp" - }, - { - "private_key": "96dbe50c7d7383951c37b64590f8548e83cea720f30ff83a7e8a0f9bf78c0c10", - "address": "lax1wv4zyjmjp08ew65jm7anlt4k2kswfu0j545dfg" - }, - { - "private_key": "15faf74a1eb4efc584e0055e21894d217fb7b5abba2a917000d8c78aecaf03e5", - "address": "lax1gnkv7lnt9crsk3zxq9c34q2y5965wyxh2s0pn4" - }, - { - "private_key": "c7d7a76d97b829343f53381e3d72d3ed218ba5a975cd0838d4dea6d000d5b990", - "address": "lax187r97s8xnaztymmq339zwyz9gjzgvx2edjc3px" - }, - { - "private_key": "b7384daa5ed9bf1a19973b810ca767fbbf6a407a4ffa46179bc5735e7528be9a", - "address": "lax1sczmuen83j0tvu7alxhwucxvxqts7rdarf9flp" - }, - { - "private_key": "11eae6413dd8af0dd1484ec65eb60188192ebc26585b95a1f3c9734deb09eb7c", - "address": "lax1t6fdnk45j66t0enru4h0pwc3dr54p9eez8g30d" - }, - { - "private_key": "8bdef141b1f2b526a059c6bb6cef85d8c087f942bc810de21cad70c352de79e4", - "address": "lax1xe8hy7x83mdchw38es5l6rl2uxm7ar44a0m9hz" - }, - { - "private_key": "a74efdf8fc057d1a9471d047720b817fcb19ae767ef7bcdcab2fb54e0610fdb3", - "address": "lax140hve2mes554hmdvqzgw5frz9qp5ms0347h5ju" - }, - { - "private_key": "be2bb75458d59f8d6e944a855bfb4bf4a0eb093e900b5c019d88f6a79c728b07", - "address": "lax1xqpmv4pjw02wwf0gwyn75c24a3tsyvx0nps3aw" - }, - { - "private_key": "a0e4fe43550dddcb545f7e9d4f3190abcea5ddad2888043acc64ee66cc5bda4d", - "address": "lax167pjx9thmgjysp4vvwlzzz4qdu6m9w8lfzj3t0" - }, - { - "private_key": "b10713f86d14101be9d16928b818ad2703a756720bf5dc75523daebe2a1ca554", - "address": "lax1gd388nnr6lxmnqqunsvhzkuvfwwxpqdrwv0739" - }, - { - "private_key": "83f031ef2bbc1b6ab41fb36d3bf435f3dea6cedb6e245810b4ec32a1d929b464", - "address": "lax18s8764a8pq8kmxumk0g293pmcdq4jxj5gykcyz" - }, - { - "private_key": "90830aa946a3248948789ec446a44ea6a529db46febd61969f2779b2d9e5d297", - "address": "lax1x49myyzcgcfcawc8ypc2t00400yhnlheeug84r" - }, - { - "private_key": "414f04dae354c8920ae6da0d60f6522aa51c422c639d0fa7c024a90716c1e562", - "address": "lax1a4qcpmvktf4tgfprq7389xgc9tpxw4yy0gz0nl" - }, - { - "private_key": "4e98599efacd86113d607aad2d95615cceaa6d36ea95e320edbb1c867a226753", - "address": "lax1dn6p9q2fxk630rkaragffhz4wsvuae7w5qf0ed" - }, - { - "private_key": "7341aafb017bbd03bf304f1ae515f5da8de3692fb7a621e8f05ca35ce8e14545", - "address": "lax1mexhz7vpnq9zf57z855uq0gvtwksudhxgxr6ha" - }, - { - "private_key": "892ffe053bfb8c4619be6ca3445113423b32c3a0bc170d9d9f132c095fc17c05", - "address": "lax176cl5rxels8j6pe7ehky6e039ryakmjc74rrze" - }, - { - "private_key": "c8204d9fc7b84d6d5dfb1bbaa5aeeaf76cf74bc9540f581cd724efa46a530ee9", - "address": "lax1elh59segd9n5eu6mqg250rqzcpr4ykwxyzy0de" - }, - { - "private_key": "f99c12ea4228ad523eb3352f2c5bae828d50a0907a1bbbb1b6cecfd4dee9f01c", - "address": "lax1myjgtu7g2frd4k62n7rn8ngu0s853hr6weyuzd" - }, - { - "private_key": "a664322939d8aab7089d9b3bc6529560c698f7ff3ae8b8763af9cfb14841b8be", - "address": "lax16csa0hnmyvwsxc5pn6ea0gap95008ttw3t9wh0" - }, - { - "private_key": "2150c0263aeb87256995cae5a40aba1067e86579c424f98a21ea4f15d717cbd7", - "address": "lax1q0msu42x2j7js7wuvzw0s7l7mmg5wvjcvh6x0n" - }, - { - "private_key": "eb6835108f4e4b3733472ec2238c2920a6ce6fa9ad3f9a28334ffd229560a462", - "address": "lax1vhk0zwl05h0d8tmcvfsqnydyhhj5xd4zl2rrdg" - }, - { - "private_key": "494385c22f51397fc82a417b6cc6e51a42b7c1a96011bbcbc32797cb2d43b639", - "address": "lax17wpvcyq6aszqze6yluk4gtkaml9c2lmylqs0gd" - }, - { - "private_key": "efb348e36f2d004b3da180faa8e1cd330f898a7a12dc58309ad6b46f913bac36", - "address": "lax1dcuf7tqn7frhcamdql4gac34e4vhus2qe529ew" - }, - { - "private_key": "9dbaa310fc3585880b11cdc081b29c5cf3351fd4de2ac92a722eceb9f2a4241c", - "address": "lax1rarflngdssvq0k9ym2xk2whe3g429v5lwa3cpj" - }, - { - "private_key": "62997b4b86f78cf0d9958bea504b738eadd3cf4125362c2f1d71c18d6bcd8996", - "address": "lax1dt3hmr5l07fjx8vk9rc09m34zd07hycnytfcc8" - }, - { - "private_key": "adda7b13035e1a7fd61edeb9ae4be3be103b9ae78a8c84194b0f47119d854cca", - "address": "lax1e383anvw2akvam4rp2mywh2rcacu7hyywzsfru" - }, - { - "private_key": "23debed0bc3e9104c446c22173ccdf02d5c6875fc632df1d2847c69f409f8ef5", - "address": "lax1hgqlv267lt6a43ah76cdnmzvndj7f76g3gwtql" - }, - { - "private_key": "0cd7ede38523b2dc676ae7696553dd6a5e2710719f8af66e6951845e855f196f", - "address": "lax130t8gcj4er5ga8neja0hegg50ppt500nr0qu6t" - }, - { - "private_key": "dc9f10913605af7fdc22706d76626d8b7c1c3d4d2e3f4484d40032a769f038b6", - "address": "lax15cjlh5l4jnpqfgasfc3qfv3xh7t3zdeava3xws" - }, - { - "private_key": "1bff949a8fd637a170e2f2391d54d3b84c81d40ad6bd9ac4bdd99860308b3ce5", - "address": "lax1mxfegun7manf7ky5ne2yq97gp95z0pzy5upl93" - }, - { - "private_key": "914194bbe16253ad2f10701a9b58f61cfc532e7abb9c5ed1f6502ba8658562cb", - "address": "lax1zjjcs2sp64zp3r46hhv3xkgr8xk7xwpnht8v90" - }, - { - "private_key": "287f51900b12ccad5b9668d292a791af7c894fbea468270ebf6448c847e29875", - "address": "lax1x0jc8nsrd35458tpjlp8hjhv9y4xnv9z6uww7f" - }, - { - "private_key": "235ac30fc4f49e548431ca26b1c6b967d713381c661b32adec079b79815bd8d3", - "address": "lax14j3yxw02g733vmpqpplc4q4cqyrw80m0erl59s" - }, - { - "private_key": "ccf045df4bbbbe15ff7e9b9bcef38bff09b120d8f17d11d0740a305cef29a690", - "address": "lax10lrcvlmh0q7xw5rvpc9c4u6jlpdcsmq2uve35s" - }, - { - "private_key": "9d3c317e01931714d16db7ffa42207ab84a8a99cde1dd9cd7987a1b7e0351f99", - "address": "lax16vfwjkfjg7pu4kqqrhxnvsuc8s49dztqz6tcdm" - }, - { - "private_key": "dfc4cfc951c15456182097c90217f98bb2999f983f24a72a54ecebea25d405f9", - "address": "lax1ljdujaxmugl0qccxx4u9fv6pnfrec5uy6eh6nh" - }, - { - "private_key": "03319af6483c37c82721f057a1a480aef06333d2aa31c559d1f385229b1c3d98", - "address": "lax1phd5zjgj6ljdpuqcfe0p5mrz57nylsx0hkkk0e" - }, - { - "private_key": "2cb4aa823e8f3e5c17653a14353ea69e9612377c2cdbaaa267756dd37fe75c09", - "address": "lax1ge6xkufl3qa0nw9eldwc3mn2pnrxeqpf23mld3" - }, - { - "private_key": "f7b8e1cc6a20931ebed85639ac25f3eb5faa84f017a8966a8399311a2d603a51", - "address": "lax134z4yz2hjmy9ypuq7upku6p37uefquknh7za2y" - }, - { - "private_key": "bb889a61ab7e9cd826d57ae7507d3756a50aa798d4fd2c6a28f6676aaf7c60dd", - "address": "lax177zy4tw8p7am54har9j2jmcsc7rpdxyz8whc5n" - }, - { - "private_key": "baa0fa2675bf2a8327b1da8bc3b55bf68c5cdd6c9b8dc41eb2571ae0de8b41fa", - "address": "lax13hlhm948dml66wg0w69v2v5he9nm67dzcz9eyw" - }, - { - "private_key": "b339c8679d01a4ecf04ee669f53ade4c5a3de9fb67cb2d6fcbb5230ae1a05a27", - "address": "lax1hy5j7zxv8vf7tmg5z7y2qwazp3k0hqmswsqxrx" - }, - { - "private_key": "f880bc0da022c5231b34ae475f7922da8c33b413ba742cfb389b261f0a6331be", - "address": "lax17w2ehlkfhsc92gx8y57jw7wamtvfw4k033gnvv" - }, - { - "private_key": "317e89b0da903b2b33c891e388370eefc0bf6de6de2db21f371df3af55b6bb65", - "address": "lax109m8gtgevtveezh9adlhusp0pa7un00r6zg4vr" - }, - { - "private_key": "b81bd1c32ebd26fc77618cd42ffe716d455f3b483441c149af8d6e687f7db442", - "address": "lax1d4uxumjw7yngm63qqkptu7hnt85rmyc336ecsv" - }, - { - "private_key": "05fdc45bad014c313e5021e715746a1dfdb6c48328f2e4de37df0da8f7395b53", - "address": "lax1xfzwxrq9hc0a0eg4wmwwqtynpgtg9gfctvpu7a" - }, - { - "private_key": "50553935983f0092730cea42c5d93783b20d0d74170fb5567a83f3315dfc3572", - "address": "lax17vzm483ndwwqfzrj29zkaqj54n46p3pqcmjd0c" - }, - { - "private_key": "e7cf8e96c032f9896fbecb719be7929a41721abb9e88a97e50562bcf6e45cd65", - "address": "lax1qegp7ycrldv5pqqj5a7kmglucs52kdj4gr9ge3" - }, - { - "private_key": "9dcc7f7927542a8ba60900df046744b1ce0bfd060e52511e7715e8d47fb3d23a", - "address": "lax1ulxe28wvvg4lqk0hv60ty2k5ttm04lquufgr46" - }, - { - "private_key": "b3b175f46ac4a84b0425eb0b009d69ab46b1a7557670dffd2a1c0ad0afa6fb27", - "address": "lax1jp5g7e23r38fgjx2dxf0g5jsjr74mc9t0gj6de" - }, - { - "private_key": "2a2630c883b4784e42858b83100c48c4fead6e302d2ab9ffba457144226c1836", - "address": "lax17t3qvjmdk4yvd8k5zttq7pc3prszdma3rua7qd" - }, - { - "private_key": "fe48e8c655ef53670f074c5f40b0002a0a02a36b1e60bb8db9edbf04c30e0b9b", - "address": "lax196kgfm7fm0ryqma4ql709eape0gvwfe9yqz6h9" - }, - { - "private_key": "dd917266cf45136086e67a3a56c8e748ba834027b172edfa9cc3949f2cfb9303", - "address": "lax1rprvumj4spqekeyg90gyvnkk6nr5dmyzh045mv" - }, - { - "private_key": "a4817c9ac9c4f80214a36f4ad33908aa593e9bdfd89ed2cdac4918d827e3f25f", - "address": "lax1kv4murg4zxmlgzz68hs60cc7u9zk28fyzpykwk" - }, - { - "private_key": "c719b1458d7ff42fcda060c5c41c1cb8ac1c0d5fba9a5a4c4593f8b428b7dad4", - "address": "lax1aq9jhlnusk0224tm574wv9r0j7u357st02utg8" - }, - { - "private_key": "ac220d48e3facc6135af17193e45089fe8feb8b6ceecec1fd7ba433fe9d33e85", - "address": "lax1jy9n8uql5magwysum0y7hc4g3twsucjnj2le6r" - }, - { - "private_key": "01c7d15f330eef569a23341b7f3c95b14c5458c440d8f6bd1c06108516da7b90", - "address": "lax12ssml5lsnuz9u9mqkd5hyqfyck0jue2gtgeqvz" - }, - { - "private_key": "afbc02d5a0784b7bcf256cdd7fa7f90d8713e1f9557fdade8c1a24f9aa24e982", - "address": "lax1y6zjyxqy4ls5jw85443mma774swn7p38hrnnt3" - }, - { - "private_key": "8864d3788d5300fe4932415ccad4c012f6dee7b83511149c65c1907d29bac152", - "address": "lax1yd8xxpeugxylrqa5egmvfgtq94cvpsnpulvvlp" - }, - { - "private_key": "5edcb4f6ad07d8d7d3d6b76457fe084636237c07ac663cf4e58e37d6f2fec8d0", - "address": "lax1v04xmr4v6lf0yw4cn5xmcapuzugfz6cr6m970e" - }, - { - "private_key": "4a0deb49e1c772277541ca077bd5d0a9c96bd5c5f8b2be8fbf9f0ec274497ee7", - "address": "lax1kh502a90f2nnt8lgmjsw3zeuha9y5dlv600vu8" - }, - { - "private_key": "50360740e122fe3fa2b35998486877f463f5b9d4579c824cdeb82eed5733d371", - "address": "lax13649fj8md0cshg5kevrj9sum2jlk399zjkj807" - }, - { - "private_key": "800c851736c2be4738edabd91d86ef25983ddd08d754c363b55c5a1bf3fbcc05", - "address": "lax1xxmwe5n4u3f93z9z67859374gt08mfgzuvw70v" - }, - { - "private_key": "80523c2a487c5fabb47089d8891ff4f1a318616220980ca0097f15488f85f0d2", - "address": "lax1wjcudkywulxlf7jxhuzmgc98mfp3k3qr8pu4wu" - }, - { - "private_key": "6951ace8265d8fad3b30e35b2bd378bec79b0c4ae61f1eee2c1cd083feb3143d", - "address": "lax1ryqlj9pyws093xal9p3chpjm5eteknwnfkead2" - }, - { - "private_key": "0878fd60edc1cc4ead8dacd005d3cb2de824d15bbcf5c2b4535cd12503998824", - "address": "lax1wvjvk76cgg8s92sn7u9hxmlqpce8d78esw8tsq" - }, - { - "private_key": "dd1e1e1622296898820810e6037409e17741ecb72b74924ccdab100807cb01e6", - "address": "lax1vj36ruwjuadaqu8r7l4ef8jjv8l0llyx6m966r" - }, - { - "private_key": "0e08dae8d1370a43932a7ec2bf3f1f1ef70dc1c104ab92fc4ca183f15b9e8bfb", - "address": "lax17faq9adje27arncewcq7mhtth3x5ehnu648luf" - }, - { - "private_key": "5deb7e1920c35676b88810a9374ac78e95ef4591e673eb90b3ce13de751b1a0c", - "address": "lax1xj249dnqpw6nxx5uy98y0qyluh5594tjxd88dj" - }, - { - "private_key": "022348eb3e85481e8c78eab2db0ffabad042d2e5f17e71a34f4e393371b7b945", - "address": "lax15fs9sq7397lczcsxpfmt627mu3u7h2vksmz6pl" - }, - { - "private_key": "51989a5a3aef6bbc383acaa28c444143114353a88da10edab56a1d48ff38505a", - "address": "lax1lq6w2zekrv5s9tfgt96w9eect55nf0dnjrychc" - }, - { - "private_key": "b201060613402c6924dbb221cf96fa85fa6fcee51c8af5a8c4e12371d2486a53", - "address": "lax10q6mntyankxyq9frmls4elv0fwp8hlhd3lrg2u" - }, - { - "private_key": "5a84eed4c60501fdad35d091b01daa4835df714ab48ada560043ef9a672b9f16", - "address": "lax14ded9pdpeszwauqym4nm50hmkrgc9fjv8knm60" - }, - { - "private_key": "154af4c7ad15f359888a280e9cd94ba7775cca4f1b0d730db81cc28558c58d21", - "address": "lax154a6wmgxwl8rqrh5v0hjtg3fcpff32eqrj7xmd" - }, - { - "private_key": "1178e3ca376943ad7715efe2eca294db5d7edd39c0af55f2f2e8062756be4034", - "address": "lax184crufmrhw4rcc32tm7xs0ssq05p0jhjfeexwl" - }, - { - "private_key": "c812db81181dc93d39610d1350fcd6d38bf7ed67caf6ee0057458215b2455fd9", - "address": "lax1uv2a9sz4qsjulzp7yhnr8h67uyl7u00dsxp7h0" - }, - { - "private_key": "0d3aeee1f3e4aec60fa1a4ac3f1a6fbea199d7f20e6b9932a85eb563a42d0985", - "address": "lax1zlr0npu4vn7m2kx9jkgnpgmaf73rvgqcvv692m" - }, - { - "private_key": "8330e4280486876106d6854f21c7757fe0bdc3860f93e344e2d957ec6938da8e", - "address": "lax1fxml83grhw77fskyz35k2lfgmd7h6s25v42g6c" - }, - { - "private_key": "eaf2849f873321da2abc8b14a30251be5890e8d244369e2af2f0d30b48c2658c", - "address": "lax1yk268ad9hhdzcz3lsq4jrqcu9tt9akvt0j05fk" - }, - { - "private_key": "7d0fe8dfb0c72ad76ea3eda5bebb82e04569eab8aa24aef5939e0f6fda63ddc1", - "address": "lax1q0lusvaxahzy0m06nj9w38wcp0gsftnf742wf9" - }, - { - "private_key": "9c2a94ab0f0c6e6cafa69f685771624a831d5e2fea2e0fc33289436c3515cd77", - "address": "lax1lptwltnsz7y8edztsgz2qmmckul66pe9yc50k5" - }, - { - "private_key": "5e74d7a45b395fd3ab943e2ede18d0fa4c0e62c36db7b917642446ef3bac909b", - "address": "lax1w8tfm34022nv3uecz0nat4tzzkzs7ng5n8r0n9" - }, - { - "private_key": "ec4147e4b70f6d24a580dab251aa3cc9515e12ead9cf8e38fdaa84490ae85f05", - "address": "lax1w03f7qfg3857ts75aunl4ta9x9rm8uxg27vkcp" - }, - { - "private_key": "cc981ee62d3d570bd5dfb05797f0b46a4643ae693a2b0a4c27682df52f0896c6", - "address": "lax1mvx36kvzg5jazveuzy57llgh5j5ctyw9sdpuwz" - }, - { - "private_key": "2f3172e2d3fe70fcbf1e5a0d111cc88276c1e3589234a96e62eb6746563e0f02", - "address": "lax1grk6h9smaslscw0mep982ay0tgyrqaav8lk6sw" - }, - { - "private_key": "1cbed7ec3793116a79ebc9a5997f20098280445e17a4ca926e733075f21e165b", - "address": "lax1ez4emjx7rwczwaqnjhw9da64mvtdjrj6qsx6p4" - }, - { - "private_key": "597b83cb693ee9a63ba6a95ee53b36940b18bc24bb18b29fe543cc4bbabcc482", - "address": "lax1nwtya2hg4hcluvxdvmxxa9uwrds7fvpx7nfa50" - }, - { - "private_key": "04c1f7a5672b8220b92ad466e5974bc6931d7ebf394af970e11d6f678ca9f34d", - "address": "lax12prtlfeqtnlzk8yxl97ylg2m8d52rwgldtgfra" - }, - { - "private_key": "acfa1e51a57935cdf92b107b37aee142e7689474a93579262208d7c58636a3aa", - "address": "lax12y3ktm0xcdh67qnr9jm72386wgtmuu063nujqw" - }, - { - "private_key": "033ba60e0d9dad85ee8f9599567d9ee4bf61216ee3e36042293cf03248cac1e9", - "address": "lax1luuh5m8cy797wk3y3l2khesvz50d6ydhf74k4q" - }, - { - "private_key": "4ad78c99814bbd6f1fdb5c41bbe0a4fb4db165ae30e6104046e8399980deab7c", - "address": "lax1w9wg34qs0g2vf29g9cxrzz42mzl66tv8cjzhcf" - }, - { - "private_key": "5713002e51bb1b743d2c0d52dded630b93c56d38077a65c3b7e60f167e06bffe", - "address": "lax167quhw33vg3hhwshkcrd64a8f2x499322uwmd9" - }, - { - "private_key": "388d871d6a858b8c10b6ae55f6bf776c083d65592dfe160fab7c58675445ebb0", - "address": "lax12qcllwrwe4jzgh58nwgxr5e8es40xxkzsh8mkh" - }, - { - "private_key": "0475881df1fc4b6d26a2648951704fdc7b2427e6133a74d70758aea75804c1c7", - "address": "lax1285wluhua65803u23kntjefpu92f5v7xu8karn" - }, - { - "private_key": "06bc11b905c75b69fc1ad9616372e77d1517036d14fe0a7753357ed4b9f651ad", - "address": "lax1e5msyw2e8daev55crzw8vw88ldlgh0qldy4rez" - }, - { - "private_key": "cb42405c56436a846ca866a7a47d2984f041c7376078bca67fb25f9f9b391916", - "address": "lax144eeqfzrgrhtrn73rkwsuke3484kq57zwsl4ns" - }, - { - "private_key": "39c64cadc30ba6dc39b927c5b5e30db218bcfe601b640375dd0f5f1343a40001", - "address": "lax1tts4zlkpc08gzkpl5da4642yg7x2sy05q9f5pm" - }, - { - "private_key": "19ebee006425bd07e2f1d7ff0a35a3223cb20683d2547ac617f917ffa09593f4", - "address": "lax1hvtwys3ts0h0v07p549a64x8wkc37wyepmxw48" - }, - { - "private_key": "cfb90ca5cb1a77df4d2e457af04dbc10547caa0365e99443d9ee0b067e23a4f8", - "address": "lax1lj3c9h6f4udrtf0xe550jxfenk67vwefexyp2p" - }, - { - "private_key": "bdfb2382ae667668bd1b6b468e90d65326c6b90c060dc5392d374b0350b5f68e", - "address": "lax10kea9p0hh4c7y3wnr2sex2kyj2qjd3z7gz8fzc" - }, - { - "private_key": "82ac1929825fdb5f26fce53de9e9582930a5798f26ed8940285c425c83c77d0b", - "address": "lax17u4jcjlucx5pfewyc0lgxhtn57577gp32qnsg7" - }, - { - "private_key": "260165845072541de3fda3b82d5f0b969c1ff626f6e5456356a2203b87951459", - "address": "lax1ycr4hjls9apcu09x52ks9clr2ynv7lhy2gxh8k" - }, - { - "private_key": "ad76a1a7d6655f10b91e2aed38f2bda63a187875250dbab03f99d7771a06abc1", - "address": "lax1nmftx27uauks5nmtclueuw0qapt4cq2te88tp6" - }, - { - "private_key": "01fa82126c72669d234131f1ef7d5e23031405f760d0efc8a8e979151aa1ddf0", - "address": "lax1u6qh2nevzm2et7a4wu6nxnprdpchv9wkra760u" - }, - { - "private_key": "21b1fd6f12a1f6bf929cf4933ba9192976d6b2238c50eda39efe2ee804240de5", - "address": "lax1hzvprf230t5fjrsqwl5ltcstdr5nv0k63lm9ts" - }, - { - "private_key": "a8915e85efd1c60e6601e706e7deda42b9f1aa4e2b83aa918bfc0aed62ae5953", - "address": "lax1ekrmkhz0wascczms2z4tmqpjzrxmheh5npttdf" - }, - { - "private_key": "e47f72e5c9e41707f42557fd3cb56f7f3aa5344b528acb8080a4839228a38c1e", - "address": "lax10fy3jhht0du3makxx5ykl6he5n7r8wejeev56e" - }, - { - "private_key": "01fecc852921d997a9dfab858b345e26cc0d9566a661711986f3dbed02d5dc03", - "address": "lax15umtr7rzyra92m7uhxar93dapmm07h5ymgzq3c" - }, - { - "private_key": "208bf431c336c34d4901d862682f9b87dcddb408e13d1864899ac83f3c0814d7", - "address": "lax1xwhtl6g7xlgfn0g55eqqdn45rt8f09700jm4pz" - }, - { - "private_key": "c5e615c767f9dc8c4beddae980f1152e82894ac3648f228e56c7f523c49e87b3", - "address": "lax1d2qtqmly2tekkcjqe4q8g24tgyafulxles5pg7" - }, - { - "private_key": "6efb828418e20b8c6e4cec9813a1ed0f0471d16b62c34e00292430340924f946", - "address": "lax1wxnn0cjhelxzslgx9ueke43yff24f4l3hkn6gk" - }, - { - "private_key": "d26f41b3d1e22936b601d2033173fb8268d89c919e75b714b329ef612c8c1d5f", - "address": "lax15tdxqtfqyje5jpsuca4u4j2l3arwfsase70ftf" - }, - { - "private_key": "b746f2bf1e6f62dfffbc7b41e3784f55d8b946b6fd56aa685585cc92a638110b", - "address": "lax1uv5gk3aln6f58s67pzqd607z8ddjhk3jmsujc4" - }, - { - "private_key": "83d71571d326c626880175e1e27a5df3edd06e580e3fd6bb963319e3f5e239fc", - "address": "lax13ewul7l4u4h4enaczthu4e9z60chtca6vyytr5" - }, - { - "private_key": "b02571c64ffe68da33131900a9ed3ca6e8fba3c9de7ecd2a69841d25c7f0e03d", - "address": "lax1a36hlcl3scr6rw3gm9zn2lhs4rh6nthp4f2gns" - }, - { - "private_key": "e28e9a50eff73ac0fd9016af77bf73fdce8f1bfc20e8915a6f161096f0f4e2f6", - "address": "lax1xtte7lfjn4dp5c9krh2vk5l4tym0cwsxf58ff7" - }, - { - "private_key": "58bbfd9f250218eb0458769949fbbc497a17da49407ba48779379e91a7a5f0af", - "address": "lax10cjphgv5wxpy73ycdf98aq85k54mkxxhj9yefl" - }, - { - "private_key": "cc3120148c28a34798d9fd950efb0432a8890b4ead4502deafb868f154b1fd2e", - "address": "lax1d8ghccl6qdvtwdene26zp8q0kqrqgpqlr8ztg4" - }, - { - "private_key": "b2046adc53645dd02dfb9abebbdd4d6205d0fbc1ec834d3fbf3b6124a0918521", - "address": "lax16rz23xfnrfl77gakfa4z9ss3zjvhr897499mxj" - }, - { - "private_key": "4be2edfbbc606b246675126364662e825b0a2319c90b3feaf89f2102585d5757", - "address": "lax1k4whwlsclv7a8pckck30892utqymhngkrhf08u" - }, - { - "private_key": "19de10375dc20af2e19c4e5a8abe997cfb7b476694a569a5a1dc4a94bbc4a303", - "address": "lax1qrwldxrlqcfl8hm6a046j56gl3xkr3tnady49d" - }, - { - "private_key": "77c80d9b2ec559557baacb5dc6285f6d68dab472d67caf88d94d6ff63221901d", - "address": "lax15kz3jy8sqqcv9zntpqyn5zy0vk6zws6ju6dg30" - }, - { - "private_key": "c51226938104e211754ee144e64ac4dd141b9c9c77fb9894c97da5ce2beaee6a", - "address": "lax1ps7qzv7cljygffe4jtyywzvca7nm2lnaepfhre" - }, - { - "private_key": "c3c2cd5284caeda6de3d89804a02d3977c45f63f8500e2b0eca39e4fa4df637a", - "address": "lax14fsh6m8tgtdddvms7ny6vqp6dn2356zn3zue7u" - }, - { - "private_key": "c7b2070ed01f092fa91f9dc27ba25915723dce34800e7adfa7339b40f3b00cc6", - "address": "lax1um9qw3kdwkj9c4j9rjq9jd2azaxaw6vljcdun0" - }, - { - "private_key": "5fd70114228f59c74cc64d850f93c137654800a232c25d9ea707f77c65d64cbd", - "address": "lax1sp9aq9jg6faxej5sfw8s9945nx63755j6g2s83" - }, - { - "private_key": "f14f9b9aad00a3cf25e06c07d4120bb03aa3147c53c2ee5b1f5822732df856d8", - "address": "lax18j7snmt7fx3h7vgm2zgrytdv0rd4rrqh7krtgz" - }, - { - "private_key": "fb7598889b9321ee378dbc582e9a5117655d32c80dff2f88d6ee03b9bbc87b1d", - "address": "lax14x2sjrttxhv9vdnm2wuvq95rfvhzyujl0tyryt" - }, - { - "private_key": "fdc2bc1d1bd4a24797a33f7dcc006686b5abb3467657d97c87d110b76946d342", - "address": "lax1zpn7d2qhg4k5hw7arxc3lvl8rczwqqydjymaag" - }, - { - "private_key": "2c08b654ef96d4f3eb472fc3fd2e387d5ecaef1c270278d68ffbbac4e955f2bd", - "address": "lax16ca3tydcpy7vncmvfls7cerw4447aex852xy9v" - }, - { - "private_key": "50fa87fb82ad6a59ac88b00aa326c2eac7a03f3a8a30e098ce19748ec5c74e7d", - "address": "lax1rarjkca6ekx0at2fqy09ke9lwtcxpsjqg5srj6" - }, - { - "private_key": "067d441f799e9188c9bdba8ac29ae9730ed2887744b5063debcdc31d818adf92", - "address": "lax1ex66hm2pzcgdmctypg72v27r2a9xd3qsapwa6k" - }, - { - "private_key": "ad83634d486810bd1ad49c6021a7c68c30b16bc3f8e7de7ac53f8017cdcf8b69", - "address": "lax1t08u6fcsm7z63cejpcueazl6geh2kz469xyy6q" - }, - { - "private_key": "75c847118eb684f3bb84c642b1b5ba435fa499c2f7324fd5da805a569aae26f9", - "address": "lax1rqeqth0qzxczxwrwl4rj58272f5g8283fnwmap" - }, - { - "private_key": "12beec08cddbfbb4f3726dc861c1280c0f9066e606527fa9f4929a05d1ede48b", - "address": "lax1nuqew24muaxllyt0pgvemjqy5n32ex6x844cgz" - }, - { - "private_key": "accd6176975660e462e914b5ead0f90448a5d36caaa69bff93c4bba5927df7b8", - "address": "lax14whn9v0gtu9z0fwh44mvzy2ryv32j95kdwjkjm" - }, - { - "private_key": "3b1557ad3a54939f66f2bc9353663694966284c8e46216f41dff18df5b568d97", - "address": "lax136g0xvmrkcqrv4rcedvmek9ja93evth8zcdpdw" - }, - { - "private_key": "f2285854f2e2b20cdbce70bc30000cbb13f4a2c11e66c807498ab1c4d997b969", - "address": "lax1xeh4zyvmzlt0cfpwezjk5eqgr2ekczy79ryjxg" - }, - { - "private_key": "6c4781d60a7ffc71faaec301b6cf27538493beb20c53aa34c678530e006de7bf", - "address": "lax1qekkqdtr20upknxu5advtp8aym5unnewx7dvxy" - }, - { - "private_key": "077005e4fc1365794091baa39b6865132b8323bafeae5fca5acaba02bad29565", - "address": "lax1cwzupg3ys60jggy3jdx3atugp57ne3ttec4vz3" - }, - { - "private_key": "a1de8558522bbc824976ddf1e5ef29b3822091f15331d4fb27d1a428fcab11c7", - "address": "lax1fye9lffxeg5t5lfjm664gemqflgxekuqec46f3" - }, - { - "private_key": "36a689aac711e49df7affb9dca2b9284c1c14d20da8bc7ab80cdb2bb711deebd", - "address": "lax1yn6zj7fw97z4y3jgk3smd9ve6wjdn02xn9hn3g" - }, - { - "private_key": "7939e25edc5c1747390ccbaa5ffcb077a9a6da34961f28b2ab1bedb76ec7fb52", - "address": "lax1c9tf7gyjhr92f7nxv5ucykrwht55s8u83fcjcf" - }, - { - "private_key": "fa59a83970a64232a8c85175f1c445d66b3aa667811aa48ada2860b0658ba39c", - "address": "lax1tsf557qzhu66jx3j0k9cdft0mxm6qhsvggu5m5" - }, - { - "private_key": "cf9f976808dadd494231664a4aa4d5c90547054befd4bae7cde09b2d274f79f1", - "address": "lax14y4a6z7rvt94usvuly6907frfl52y2dkne4wat" - }, - { - "private_key": "47ebb9691bad0d98cd1cfa440fed1d38fc9c5e2b663da4f7c18fc34f0d58251b", - "address": "lax1txke8d72mjr5qn87fwqwlhp74els7wsu9s8e0s" - }, - { - "private_key": "091fe84f07035d445918cdd8e2bc16e4c6e04ab659d70bffd70945c1ef55ba07", - "address": "lax1a6y9q8zts504dctr4h5727m60339c5wwnfeedk" - }, - { - "private_key": "4a825ed32fd3c5c88b56612aaedb6121a7730aca1eda695995f84cfecf21319d", - "address": "lax1nu29r84lhmcyezrvne8hecejlj8hh6tum8sjjm" - }, - { - "private_key": "1806bbcfcf5d2803fa02a230a932ae3dec78abbc57a318d352d5e03f3ecdcd53", - "address": "lax1qlxm5t0z48w0x5w5x5emly8z07z694raejxs20" - }, - { - "private_key": "f3bcccb2f6f1b8d1f9cff4483d5989c3fbdad3870538186ca2e85250963f34b9", - "address": "lax1ch5tepdxj0np8g62r59j5e2j2jnsdtp4c4fqmq" - }, - { - "private_key": "98dc61ee12bf0d39bee20a076acbfe7b7ead52f630359c26a9527966a2f28fb1", - "address": "lax1dcq0ng9sjer8y5808yuu59tvvuy29hr5kjw4du" - }, - { - "private_key": "019b01a95047a5c32593ccae53002d63ff4bef4872bc4afbba380d104560bfab", - "address": "lax17ytrppwnwfxl9mn29ny5ss9knfc8rk60w2560s" - }, - { - "private_key": "9cd0c5535e9898ff2b9a8fdc15a784b399161635ad0f59478b7387bf69a553fe", - "address": "lax102cnrwlrjd444lg9msrg24mr7x0nmu6lctrp8p" - }, - { - "private_key": "6e6d795addae69755f04e07830d807019fde19ff03580fd68bb0bb06e7da94a6", - "address": "lax1xrpkgegn0vtm88j79hwhdd4jky9m7l5fw3nwty" - }, - { - "private_key": "6d88b963d6b54b4ad7b8a12a29b834bddc20981d0fc1721deb37bfd2a8c092cd", - "address": "lax1h3zvz2x3dj7507q649e5gd5weeqhc0vxzxd2pt" - }, - { - "private_key": "2ddff0b1a263ab504d66dbc012481bc8e9c5d8d5316e818fbf5c0f32215c5eba", - "address": "lax18yucag48ew7d2zf83gmpurv08nxlc2mgmqxgle" - }, - { - "private_key": "147ccd07974506e2c198441853708e99c7a39967be8493cc1074f73d494f0b87", - "address": "lax1y0fc5757l0t7x5s6v2y70la3eurkuderckully" - }, - { - "private_key": "2f47dbfc939e0d36c80a76b0338624abc73eb6c9bb8c35a4151e072888ae1150", - "address": "lax1kgw8sgnvc58m6kwmqw5tmha5n6569m4h2vu03n" - }, - { - "private_key": "305dc070c61686589d22939a6a81e776a45936c27b61a3752bd1c4f34acf17bc", - "address": "lax1cupxq6aqmllsj26v972tm09n3l742a7hxhgywl" - }, - { - "private_key": "7aeec0121e7ef6b92c3af8bbe2e1d8eb3ba270451664dba1452307d4460d39a4", - "address": "lax1ue5faymqvy28td6un05ynjsmxq9sdaqs6fdz84" - }, - { - "private_key": "8b8adc18b3b9e11ac8c99b07425f22a223a45031dc2a420078ed0a1168c29aa0", - "address": "lax1edyxzx8976qdrt5tn6nat6zvx9t8m9309fghzv" - }, - { - "private_key": "a797f32ccc6e9921aab403028b6515685f8360af6e1bf2df36c8c6401b58e3b7", - "address": "lax1h23lcdfhahrv3348838fddelhj8cguxwf9jwsf" - }, - { - "private_key": "4157cb9f6a56227bfc7d01a69354a279530e80305c16acb3f3cdf12704d3ff69", - "address": "lax1tqshvercefk6q38cheqm7xp9g8txqgs9a5ltvj" - }, - { - "private_key": "39b9b82c9fc59a8e6454d53f13cfbce05e05f21168b80ba5c5e4b8a8c1a2854f", - "address": "lax1ay66mpz26eugvzc4uwu8x96rhxa99ll8rrzue6" - }, - { - "private_key": "5c7faa06ae3451bd7187fd694556789d03a2cc32976c63ec37e8ad5febc436e6", - "address": "lax1flzls97tja0wcjk6w26kc5vnsy7ytpalgcqyys" - }, - { - "private_key": "0819a78d6f893e07d320193ba94b06f5707ee712a1c39a6610f30459a0da493d", - "address": "lax1cl86awaucrzt5ne394enuk5lwf0268gnlzn5z8" - }, - { - "private_key": "0fc96471f64ce4f4f08554409cf24d7d0071233c93ca16c1b8a6d49d7c73d5a1", - "address": "lax17hp7vjuprlke6vvcfgdv7uxammt3m74283a46z" - }, - { - "private_key": "b7b4c786f0cfc5d145008ee22307ad3908ed353d823b1d8dd839992c84cdc5fd", - "address": "lax14jh3r08gchf4728e66ygvgrv22jf439aqq0f38" - }, - { - "private_key": "ce8873d8ff12b5c149f1e9a5de95b1e28402949a135c428010a6ba5eff2e2ec2", - "address": "lax1zhvtfysff6fqwytgjg6n9rs8dyj6eehe8uueuk" - }, - { - "private_key": "1e57f87b4676edcfaea0dbf74cc7b2a19299f9f8c84cf135af760bff6b6ec77c", - "address": "lax1e63rswspahqqy9hjhn4f7zt0tsmvg432spny9z" - }, - { - "private_key": "a40bc3df97458a0c18af3124ede97e7a5ca5d86c8b846aa725e21b7f2faf0494", - "address": "lax1qmh35xn0z9824ywjfmcqcu9a74wdq5lk4424cj" - }, - { - "private_key": "cb99df77cc719f36d24edec2525583c95139b76c748bc65caf6b65a823c168fe", - "address": "lax1jkpy837hmh2xjzkw9yeck8rxamq2k5dqrf2cjc" - }, - { - "private_key": "9196a941a3fcfeac8511b1d4336e61efeb779fc9a2e26ffafc562bfd05ff16ba", - "address": "lax1adv0mc707vpmu7new5udk9prndl5x4szs42pq0" - }, - { - "private_key": "4ed866defc0b32dd8e0da13779480da9c48dc033275fb3a4e9f0ef04c93034f0", - "address": "lax1nkrqkr5txrs0tvtgclpy3mnfkx4dy6ysljnkkp" - }, - { - "private_key": "7ddca9f4b172ae0c8cd3ce8bcf4c14c6b14f16641a466c6d85db3a953ec6c16b", - "address": "lax1tcdrls25v3dgx6qd72gher7634v59v7ymd5m34" - }, - { - "private_key": "86e9d3f65c0b47fb6b7831b5e67f47e61f2aaa2f80cbda26c96b1098ea9b0c36", - "address": "lax1gmyd9tkq3fn4nnwl743ptuz25yxnq2hyspj54u" - }, - { - "private_key": "370eaa12619b5a804a59cb2d251c17eb0af6c7bc8fbcfec686fc8f49f8ca56a7", - "address": "lax1ch20wev6lqrcwepc9kawhcqpkln3v7yrflxff2" - }, - { - "private_key": "e3f078c2a7d6e6fa212e3ff8c4120d14a8f19ade0cf38135fcf17d4c92b675c2", - "address": "lax16v3map7y50kvn7vq6sydjk5grnpwrhfsdhaqjf" - }, - { - "private_key": "1c623920d42696ed596b8c1992ca553994160ed8a463c2a1cf520528fd298427", - "address": "lax10kzxuzdp4knvsux4ru7ta24q8jecjwln8qku4f" - }, - { - "private_key": "6c9abad8f58963a7dfc2f7594a0d1721492fb334829b3964b7162ce309b07507", - "address": "lax18knz0fnrvtd4ky9y4le2y8j3ctzpm4sk9und0f" - }, - { - "private_key": "095521c1210f287bd97a4c96eb1469d4f667545f486b520b9cf9cdde1fb6c876", - "address": "lax1vr3lyndl6e53lludhvn93ymc9rpgj8m2uz9xzx" - }, - { - "private_key": "d14a2a5ee7ead5938924983b27960ffc4cccee071c8fc7a7e9fbf0f7b4f477bc", - "address": "lax1a0srhphkjcfyn3m95ecd6r4e7gxdj8ndg7yqxt" - }, - { - "private_key": "a15b086eba65e18466651fddbb56d1bcaaa1d5018814c84b54fbade6834055e7", - "address": "lax1f8kneej0rrmxtngkapat9wpxvhn0l66pw64dyq" - }, - { - "private_key": "b8f17aa4d1f01ceb40b8a2d0d1c7e3579dab14fb1493589dcf1a1628e2c89c27", - "address": "lax1297p6mclf546s7hdrsdvv3fy6nmlzpl0m3epwm" - }, - { - "private_key": "2a35ab9964a8127dd43f0ee9d2a6bfcb98fee19224fb8c7f05cfbbd595f84f70", - "address": "lax1fmyrpnwy3qje7jnpxlu9p473fdgr9vgue6r23t" - }, - { - "private_key": "9194cfcfc486294328ed1506ea6cd1b1f2d8b4fddc59625f1e30b07c6abca875", - "address": "lax190cyhcx9ddvff4mnt4m77x4mpz9x0nuqjufrfa" - }, - { - "private_key": "ac27bcd339a213c7c53b4101cd45630fa39cf9c5b4f5be63e7e731be25cef0c8", - "address": "lax1r7wwt255txhct6ckqsc6r673z0l4ag4rtyl3m5" - }, - { - "private_key": "0f5e0547a25690a122786df81e85ef05f31ff32db3655e5eba9b8f7d536643ab", - "address": "lax1cvjn6vz52xgl6g0f62ucflugz69m7vekf3hhj5" - }, - { - "private_key": "22f3968ca0d21a6a9bff5ba37f16c3a5c1cd344a9b7cf8e2124cbfb7fafad85d", - "address": "lax1mtnylnrjq4quv95zt3p9e5admxgg45d3cxp57l" - }, - { - "private_key": "c461c07523fcbe873faed2c30f9b77b79b178716673664c6536e65a36c493362", - "address": "lax1955480fhuaq0rzmuzv6hq0mhw4lua5k5qmnaga" - }, - { - "private_key": "8796e66ae1c34f106efad095908ec6cfe6daafd7af78167f23654411fb9a382b", - "address": "lax1xewx07rchf774gxteg0gdtmg9u95c8erpmcj2e" - }, - { - "private_key": "939382f993354694e4a72c5cca4e9ce81e6ee6898b45d377cf4f6438e3194685", - "address": "lax1y67hjze3g00wlfz0l5qapgmcageg0shs8upn9p" - }, - { - "private_key": "5d2d06572adabaae6b8539624138cf6ed8b5e4727213c3b9e6907850a8585490", - "address": "lax1pmkwy4k26clf60k8huf8fzzxm0zf5cz7rdfw5v" - }, - { - "private_key": "42915d8b9a15ba82e02078692a62270df9277685417b56580dc450ce98039519", - "address": "lax1a865lje78hn2e0avqjjcm87es0rvkdhv7n3xjn" - }, - { - "private_key": "dc6d349ef510c8656f3bb4f191540ab99e2b49f1f5245843c9cf5c62933db37e", - "address": "lax1sxgk0n5fuwq53dqpknhy0ladyxwwezzwekatq6" - }, - { - "private_key": "453574c7867be26a4763e81bcec741287fdaa267556a9634f5908cfbf7cd648e", - "address": "lax1w8nupamks8n3snln4glqhem3cajfx74t2ew4nq" - }, - { - "private_key": "651f5a7e2350cdac7d4a81246b7f4196a33ee5a90736da3f6f07e11dbfa9b7bf", - "address": "lax1amszhvk70w3044732mmd679j9j7675p770tp0m" - }, - { - "private_key": "320b64e2364b433daf5042f4f9a8c77b8838e14350814519ddad27e2e17f3b02", - "address": "lax160pferw34cf4jh5ctkxy4ndxyk08jkxaqxxk7p" - }, - { - "private_key": "8d3119c20b4029ddfc99159bc6a395852039d19e6849a81d71342df783c3378a", - "address": "lax13twka8ws6m8jrf8gcdclgrasz8rz5h4mnwkxzm" - }, - { - "private_key": "4d796d7beac3d757541f99a4d8a415e60908f17470da441f6975a997820cb8b7", - "address": "lax1gmr9mjxa78l0amjjmfz7w5m3v4vd99v89yla5r" - }, - { - "private_key": "1766c192c12cb239063d1bf178540ffaf631f784ceed63dc38a0040a12fff77f", - "address": "lax1eyl529tjafugn9mfk3axfl7k380qqp7gvj7tdt" - }, - { - "private_key": "7234b637489c7a5606bb67d96990de80105c83488e56a780647a7803823e9634", - "address": "lax1u89jv77rx7j5ytu5x0m2fpd55zldkqj0fykegu" - }, - { - "private_key": "43ffe3f752785fa697e1d563133761de87b1691d326f090b2506f6cd9c425ffc", - "address": "lax199h39mw2lqep5m7m5855na7y5g62snrd37hmzy" - }, - { - "private_key": "31c68722fda4296da713e2483d36a9e8f622375e6b58cd85a648ea958f20ea92", - "address": "lax19x6azfmxtvt5z4337zsk793mlla5xjl9wq5ul7" - }, - { - "private_key": "515a56e5109d42395ae37c0f7526345752da1aa2f98bb1412d9aaab5a28f1ebe", - "address": "lax1qapgvytqm6a9r2x2pclc2y2x6m7sgakfunq363" - }, - { - "private_key": "34ab02426005e558c99d797bc3b83a0b1890a167649b47c90dc86b8a913060ba", - "address": "lax1lz6tehm3s6n3lgsctdqqwtee4d39u782qs7gpg" - }, - { - "private_key": "ece5794ce3b16607b3b185a841feb98ccb8a0782a881a4865b054f0da39671b1", - "address": "lax19jj5vc8w4gan3drheg703zkguevv649ry0pjgu" - }, - { - "private_key": "8a1f202a6893d190f5ad20f89fbd4526068503ce406c294cdb8d5defd82e9c3a", - "address": "lax1eft9zjyalm7z2pg3pv96r7tn956fntn6xxsujn" - }, - { - "private_key": "92e5bf62e6352d2b727a8cb5a04e9ad384e751f1a2d8d12f520902f169435b78", - "address": "lax1t6rz86ncwntlu9htktcrrep24tag28ull23trl" - }, - { - "private_key": "4f0b73ff1f3f50bccc4ec8f6864aae8950218af395c5a296909604e6d027b4bf", - "address": "lax19rnzkg548vrraz2mrazzg3tjfr06ma2hn0lwqw" - }, - { - "private_key": "1a01cd4a1d29e4192a74483e99c7deb39eea5de04f289c3bad7463fd1b8b7716", - "address": "lax1mewefqdgkzka4gds743hpcsyedmyhku7ln9nxd" - }, - { - "private_key": "8f0daeaffa21541571520cda3419c4824bb7866a7c855420543a54777149cddd", - "address": "lax1ydl9asf65s06sx88nef3vhgr4scvqwa34s8teg" - }, - { - "private_key": "a2f1aca9e48b7c16ebe47ce804200f52aff68d18b0f6be5893ab3645633557e8", - "address": "lax1j0mudlszpr3suggr6g0erj2psdexap9v5hrvtm" - }, - { - "private_key": "202d154f2b8bcd140a9373d7c9e87973dfbc11f83460089eaf046b8c3cf02318", - "address": "lax1qadx8x6eg02grcgeqlrnknqt4mc6qsj8zd92u2" - }, - { - "private_key": "a5177628c8692c03df7cdaae9198d815e830074f53a72fb0833440bd43c247fb", - "address": "lax1nhu9rg5vy0zcxaumrkat06tjy3ggdn90zs4ujj" - }, - { - "private_key": "d2ce5a165a9796e60ec8a36572aeaf0d78ea9ea42041fb7a08508918cc18633f", - "address": "lax1q77u3xvr54xg8s5dc7sy3etuvfq6c8vkmmf0gx" - }, - { - "private_key": "5faed2ad4c73482e1fa30e84e8860a2bb2441b27c0cf1c1cd33f7c1f184f3cae", - "address": "lax15uquqexwct9q5wl9gwe7jws2zxhz9seyafzajp" - }, - { - "private_key": "153e48020c9f0f78e8c7f060d4ff186f33feb979bfe5a5ecc88c5f16f6113b06", - "address": "lax1xx46ultrayq5xp753wd8pnd28we5xnkaezj7j0" - }, - { - "private_key": "c72822eb67254a44ab862a198b5eaf97a6ff9af0cc2c56c4d8828393f2733d77", - "address": "lax1ly3n48d4ncemfyznazvyhrjq9ettgqxvjj4g66" - }, - { - "private_key": "5ae951904c50f16a0796ed2ad170c42ea36cc87f52d44286925d9aaec04d1388", - "address": "lax1wzcvpccq4pav7z376jrtd73w7pq4z2sj9nya00" - }, - { - "private_key": "54b93fc2c0c765b0cc2282a46efbe4d62a6d6f78f467b6913e864a087f03f7ef", - "address": "lax1y4fj5z6p6rvk4qeqz05hgacdfrdl64zhgaafup" - }, - { - "private_key": "613879103b18e784a5a48271561655012f29a48f871aefd1c7e272e4ef07fe26", - "address": "lax18jhsyukyzdchv3pm4pkdzpcuasarujh6me52uw" - }, - { - "private_key": "71b67246da25299fc252f3a576caaed71e2954392211b8c26b3259ce87156023", - "address": "lax12v86nl6ngf46j4jxgaw9vpg4pfjdj7gwc2js05" - }, - { - "private_key": "1032908f6848400d9f96f92621372c9ab23fa065e4ae1f91418a9a18608b6efb", - "address": "lax1xch7qvja5k53uy0w83cxx5dnmwm33kpaj6mzd5" - }, - { - "private_key": "e94c28f38e81834525c1e0bcf50205f0016c4d0fdd21b218c25b5e30b1d2a549", - "address": "lax1ngthpwadm3rrrq5ydaw7r0s2vgwspv8cr6yxn0" - }, - { - "private_key": "03113a4cc50b1ec9d9a41df460d2b864a22c540581da975af26d40c88905c0e6", - "address": "lax17qxkujj7a0m6nzmms78j44rjg7ge94rxewdv44" - }, - { - "private_key": "9922aac125ad38d082fb4265a9c40aa3d3013164e7bee3d4aef89d890adeee62", - "address": "lax1qczqgr0r8fsq83ggs0adrzdsf5zat8m2h5gx5j" - }, - { - "private_key": "f85cc77b6cdd053d472faca7f8bb93833b5ccdc7fd0ab1a30e1e1f4687c606d7", - "address": "lax1ezq74mylqzdu39a29rgumsm0l98w85t03p78m4" - }, - { - "private_key": "35f59d6640d4ed2ed0c62b540a2da24ba96c4e2905f72852e7815dff3d21bfe9", - "address": "lax12kn7ul0gscwqhsl2jte04jt0z4tufk55mtuymk" - }, - { - "private_key": "5fac6f92a8bad47831775c5c470511337d0d42252bcedfcd72e0bb34c47ecc70", - "address": "lax19uqzp7yp98zk6vh6c22utxjtcc4cwwep3ll2cw" - }, - { - "private_key": "118e176708cba732d6f55fecbbb62b3a2a4cb6544d6a2c4309ed11e0c3032563", - "address": "lax1q8w4c5l8ku6jtwaprtk7zrcw0kxa99c06c5mms" - }, - { - "private_key": "640c05351a41adc4b94bf8e9292480baf1de30b97ed32f512323f9d1878bcfa7", - "address": "lax17ctq3t2hdl69gr9qxzxewpg2altw0uk856th4p" - }, - { - "private_key": "4ba061b62851d6c9de427b671353184aa7320035cf8eecab16999a6988e85079", - "address": "lax1qfu5ausxn5fyrjsnt6pw332hsgwssj4spx343k" - }, - { - "private_key": "08f499492e0de645c6e000997a9135d84fd59a222c806b9e29468b54da899344", - "address": "lax1ql9x8zuwjwyhgzkrfecsyy8nprhuqe4wyklj2g" - }, - { - "private_key": "cfaf19bda067e08e89891e100c63a43dfa19efa1a2cd7a8244bca796694ffeac", - "address": "lax1n42xmf0m8h30gnqfraza5sj7kcdnvm0y9glu4a" - }, - { - "private_key": "0d03a0c53168cbdc9431c46e92a35fde567a72aaa43a38422990ad701aa42982", - "address": "lax1z5gtgpf8s4l8rvu9va3609ly6sy98mjrmyuh50" - }, - { - "private_key": "8793f323c788a81b1040f373e8c470cdc7e2a009dc3c55920d63320b6c408e15", - "address": "lax1hx5f6slplw6jnjv8dl8r022sl6xgv8aqlszx5e" - }, - { - "private_key": "bc7342e7d8b158b0923e5333e4785ddfa0d8c90975936576de8447e1c022a1cc", - "address": "lax10f2x2agkec0fa99qta5wm90wvxkfvl8w2mvxfs" - }, - { - "private_key": "3662b10cabd7cb0551897794fb5b2664599ef068b1d846372d113949b2a9a10f", - "address": "lax1f3ksmcfg5096j08d6whlpdjm58eavrgytajjhl" - }, - { - "private_key": "a563039fd3f245d5e4ace017950b8d46fcafdcb48b9975769aa1442735afbbd5", - "address": "lax1eqj49gfc07p0t44ggvg734cu9jv2qtzs88prgs" - }, - { - "private_key": "950378302513f275dcb7d48b49c0cd589996932bed044422cc254bbd06752eb1", - "address": "lax10c6js3ml0y4slsh93238s7ldu9ygz6xh6280c6" - }, - { - "private_key": "8679f667f010df0e6930aab9432e64557c0891f6c5255a0f4a334b630a79b023", - "address": "lax1cpgn5pfud2qz0e89kqlf9ks9a3mrpueueq49jw" - }, - { - "private_key": "0e92e5ef8b33a233b15812d28491ebece1d5f6d44a36d471c64497361af297dc", - "address": "lax1jlrx939j2u3jfj6cxjlf76hcwuc0m397hma8l3" - }, - { - "private_key": "ef48a083669c89eb1105a3d5b30d86612c71d83d02d23c2c3e42becf8b9cf6bc", - "address": "lax1vxfv4vn2hm9yceshu4aagclgmtxjgaepyv4kga" - }, - { - "private_key": "6a5ace11a50b2cc2d80a1188e938cc808f88fb326c66b839bf915b7acb75d8c6", - "address": "lax12pvcv5x6ls8tgvrlzl65088l97c550utaxrwql" - }, - { - "private_key": "a36882e5e6164130320ad171d7f78ca7d66d2709b62880eac3a82acc415b8f21", - "address": "lax17slg7q6yhluly78dezt6zn4cxtelhp9x4f3c32" - }, - { - "private_key": "9611f41d79f7aedf7ec830bf681259beedb5e0ffaa4fba929d9c433af9ac135f", - "address": "lax18dmhagg89u5fxp9apvhfrvtpthwte8lwa4k5xx" - }, - { - "private_key": "409b0d797abf5130f9d50e2f05330a9f0aedabae01f679712abd4872713a42ef", - "address": "lax19y2ak97l9c0rpa4x6kns97z4kv7alwh524m22z" - }, - { - "private_key": "ac9dda4da0ab0e9d55656a28cdc40c9acfd8428c8eddd7426e797f538a115ee6", - "address": "lax1gjn388wh7vluah4p4h4x47hymluq5ry47rdk64" - }, - { - "private_key": "372d64783dd5be54e7efcbf96b63f651734b6bfb650cdbee20db3ad436142f11", - "address": "lax132kfkdgkrddcck93ga5v9lr3awcrqle35hqxk7" - }, - { - "private_key": "ac3f0028236e965f309adda5a7a0c56e24aa436e4c51aecb0ce899879979d995", - "address": "lax18szq5afn7d7kkcm7vh2ghvlutzs4gjff07s80p" - }, - { - "private_key": "fa23031624bd7168533d51b1bacf9bff3e1034a6d83ad23ac02c1000e0084ef0", - "address": "lax1y4wmnvwmfs0e9906tm9mrhaxt50jv20y7kjxzt" - }, - { - "private_key": "8360c2b35f4c6351c12cdc16298dc7995dfa41f2eb3830851e6972dc4bb7e340", - "address": "lax1a90esc0rzhnu7fr5hj5n6kj66vkx3e40jl2ay0" - }, - { - "private_key": "cc77e52a4b3d33f60b684f167bd207e15c042db9396c49c3fcac5ff1f587b94f", - "address": "lax159p3au7v24s3ds9xh7cmjf0gy2c2ls2xntuvj7" - }, - { - "private_key": "492e83b2de7482d004254f5e433ccad57322556a7a95c0504f1accf272a4549d", - "address": "lax198gfu79ue5ywx4p2rzwgw5f6ay7dmett3xvgx5" - }, - { - "private_key": "2e7b551e63b59b7c5dad9a6db4989a500b7e7be13c47e1dad2c0feb88beccbbf", - "address": "lax137cupz95rue6yruqrd2zhgcpt7l3ynsnezhktc" - }, - { - "private_key": "0bc04a9a48529d10cb341c539f0d3c055e7a2d3d9901e68f35f0e02f53c54bf9", - "address": "lax1gsdrcw8wrf8s38wl20wuecrjpdvzvf7x9h2w4k" - }, - { - "private_key": "d9b5f53dc4df6e93531b80203d8886f14e4a49ecb4f3aa6a0ac4bcbc3f1c8659", - "address": "lax13svda6a6077nnmnaxqnu8t3l6flthaafd9kpl4" - }, - { - "private_key": "4104ab4d7fdb77d34fa4f48a8dd010e887fb98113f7258810d573804cf128490", - "address": "lax12ttewp432zy00rj5mlftza4n5k3z7808ldjmuk" - }, - { - "private_key": "63189b79d8e40868f70fef8bcafe28e0a4e9147c4c7842413723df778d17b0ad", - "address": "lax15ynmzk7tntp4c5xyaecu86x4j6j64q4lqjn4qz" - }, - { - "private_key": "1886fcaafc48fe0b21b93528e561f1cae074535471a0cc21bf5bf78f6f1cec5a", - "address": "lax1vzdwspc8s72y2wp5yafgfdcqgljl6trzvgre80" - }, - { - "private_key": "1f8329cf1afcfae404d845eaa6b35a8a8b214d009e7eff81281ae617bbdb7c2f", - "address": "lax1dlrghtsn2tp7xxkg70tlc8m20lgc7gv7x5a0ps" - }, - { - "private_key": "cd58e28deb478942023ffacabd0d637d9e665f4b206dd2d146c1fbfbd178d164", - "address": "lax1zp56wxfauylx955fdl4zzfwsfgc9rkp6r0yh6c" - }, - { - "private_key": "8b293af2540ea48d6f3d0dc4ac586d31782b1fc49cf12623a4e8d07e61fa3490", - "address": "lax1j73xd9vzvlp7p0wt8xuxmeg4e73saug7gg3q9h" - }, - { - "private_key": "153b03d4c767ee71eb02e44502eb4708434d3b950531d1bb20c51190973546ea", - "address": "lax1u50crcrwkwtw5hj5sr746ecr66wgqcy95pjqgz" - }, - { - "private_key": "9cc8b79efdada63b257bfa0448986c4799676bcf830fa4f38e4f32fd6874352f", - "address": "lax10dsaj4w998wf3dzmrh9kpmxxc4lnewyeqgfgtq" - }, - { - "private_key": "636bc9318ec3b174767929a72d88c5e39d9b50dfef3220f1156ec530d09fd626", - "address": "lax139ha83gqlrlp9jqgvl7rsu3a02jc909ka28j2m" - }, - { - "private_key": "45d10aaed2ef955b4034a2dbf17a91330fcac7ca9ac7ab9259bef890f33c1e61", - "address": "lax17ymj7j3y3xx4rr2g2xwzpulmtwyza2kx99264r" - }, - { - "private_key": "04688590d0f8b657dfdc021b5e72eb17c7be1f89a70fbb2098f39dd33a251b82", - "address": "lax1h25j6k3eyvlmj9dkf0ha4j24wucg5cr82ds8ld" - }, - { - "private_key": "db09d6f19dc99c12bc34475d281b5a190c8de0b6f362796ccd1ba5272a04fcff", - "address": "lax13hhh6n8ctlxtdkv9h6ujw0sf2jtf6436hd2mdk" - }, - { - "private_key": "de95a00390a6f74e9dbf753d5bd50fff69148380060cbf38dc556bc0cee8a46f", - "address": "lax172lfzfqhx45qvtqkfv6dt7y2w6kmhsw6x0rlx3" - }, - { - "private_key": "950abc95e1979fcc7bbbf6e872f8398dd971523a87bf7e2cf6a904b64ed6b3b0", - "address": "lax1qgjnr69naqd9gfucyujmz4nnvm67z4ljgq30x3" - }, - { - "private_key": "847c9d050649fa81abb7299a11d6835a006118d1d863a8e846770dfb7c0e2d93", - "address": "lax1jrxm9ju20mn6gq6j44k5v9msuxuqh2ly8s8qds" - }, - { - "private_key": "485ee61bbb285be353f69055e782bcfe767cc26f7a48a6a2ad94a75c69b5e4a7", - "address": "lax15g6r3mwwd45akvdfem2tn6qrwnjragywhj9gj2" - }, - { - "private_key": "b858e6ccb264d550f57344c490d1e4d0de740ad089803289a42c904c5c644832", - "address": "lax1ryg9wt6crprmk79yvjj6qnhypdpknx6czaw04w" - }, - { - "private_key": "cb2f158d0be267b33936239c1bebaf7a3558b151999faea6439acf4df7e7e84b", - "address": "lax17s954460truap0l0kaq0zgx4e80j9epc85x43c" - }, - { - "private_key": "ecba58bfddfa23607e46d22c0032bdf0722ab441d1ed1edecf54d8c3d8eace55", - "address": "lax1qwc3kywu9fnuwght8ttwj8c6zrs2q3uma665vy" - }, - { - "private_key": "9f0de14e12a59d0665247f8670f085f90e27ac3d26256f49e20a38df09f43b85", - "address": "lax1ut78945xsj753vu9s5uvun5r5lnthcfvzu28k0" - }, - { - "private_key": "a47b468b008fb39da72b53f6392c6a45473d26ee39fe1a4afe66d30a5f6521ec", - "address": "lax1q56y8jymwgxjfzpem50h0rc9usrcxmg8maur8h" - }, - { - "private_key": "9a0099afa6212231803f22a6d15fb43488f3a9d214bfcfcbe392ccb4fd25b93e", - "address": "lax16zmqz2usnegjrnpcly80xsd629zqq9lxqpv3ja" - }, - { - "private_key": "9396f48aae5f982bd16ae8787240dc46e893b59a4ce79c8d5c79a1043e80b465", - "address": "lax16zt4g2c24xltee58wctqw7vds2er7dhaccfnc8" - }, - { - "private_key": "28a95b48b686cdaaa8e06c47809c14329cc3b94d3b08b638d4fd444b69957743", - "address": "lax1smd923vhk2ap84kdewvjyxlm33pt7sjlyw8kkl" - }, - { - "private_key": "648ca6e8b55a3570a6d8fcaf09658d223114146f9886067e7e0e8598781dcbf0", - "address": "lax1ktam57q420tlzkd0nsjpz77knckgmegv7zkqwh" - }, - { - "private_key": "d2738bdf73ddf7969719d900d22736cce35c008f486377d71908ba1c1a57cde3", - "address": "lax1usjfnv0gnkhj0689sk97cppmupq8vxs589a0j6" - }, - { - "private_key": "a1d6c9334b9f410696c739c47bda91da0f5fe424cf2fe18c02ff5ff8201736e6", - "address": "lax1gr0fzksqc7szws57k7usnag46p4lk47tec2wem" - }, - { - "private_key": "db712cb6be3ff033c679e2df6a30472cfd42c380574bddfd53460dcb4c35d89f", - "address": "lax1lcv8w3u8zkz2clpjz6ud6yy4tnv65ay8veqm5f" - }, - { - "private_key": "1517aeb5cffdb07b5bae44d87c727fd5bcfc95118f5862586d15e5906db83a8b", - "address": "lax1zw6m32r7xr6msqsaxj3an8q7atk5dkx5kj9ndq" - }, - { - "private_key": "7fede86446d860a867fd49623cbd68b45f83be910beda140a402b333b0ad877d", - "address": "lax195gpve944yga5ppscxce52dj88kmrvex3vhaez" - }, - { - "private_key": "6dbf643256a737feb42f2dda22b519cd6eba9c851b362d91610a76694300ebdc", - "address": "lax1fejxr2z8chswjz52ffakvahmtdx2u0hw3zqs3x" - }, - { - "private_key": "5c44e60f5351fb0b04c2f7126fae60e7828930dcec14a7d8d56835269c9a6fae", - "address": "lax1u4vx6pw56rgu8dmhsln3gqnn4dpyd53qlpxy2s" - }, - { - "private_key": "8fc8ca707ef556a8ea618a64f42be5be34c09ca1565832d84d27ed32d4ae5018", - "address": "lax1ua7wy6ah4n46zh2f4l3w509ff0jyuhq6mg86un" - }, - { - "private_key": "84ec66ab9a73549ec3e812281d789ad0b359aee73e0da9df7542179f34443403", - "address": "lax146lg8ffzly9twaa7nuklrllel2p285rdhmmf0z" - }, - { - "private_key": "be908d8b2c8fc4b3ee58059c10284269bc7eda96d08699a216be9e7f7b008fc3", - "address": "lax1ze32yv2d2me4xr9wr67r95jvykcua84syalk4k" - }, - { - "private_key": "d8a06852cd8628ef7ef9805c0fe5790e8a5290aea20799c3dabf29a20b30c648", - "address": "lax17zwhfxdxrkyzxh6tkgktehcxc7v0yeyccmus7c" - }, - { - "private_key": "161b43d92bbc07f2b4e0c8c830cba850a28b1b04bd7cf784ae194b3c927dab73", - "address": "lax1kn7rhplw3gashp8n884273pnvnnydavvaspt0e" - }, - { - "private_key": "00c16d5e4e08d210c1bfe0156f49ba76785184c7dcc8e8ca899572b1964ae491", - "address": "lax15hny5pdkspdmxh7pn2clge4m6cshlfw5es4hrv" - }, - { - "private_key": "dd1b11c7078db61b2f41e338c9258bd1c6c8f3303635d86d142679759b38dd65", - "address": "lax1jj5sks4wg7v6fdm9cv3m03kkrv5dafzh7xls7g" - }, - { - "private_key": "f1edfec12dd8d9db0645ac85e0b9a6b372c2290b4b908a842137dffb6b35d721", - "address": "lax1kqgrrpnxswtvejksj0vqnpwld40kryrwuvkcdr" - }, - { - "private_key": "2d80e36e7f4ad0184f38be50a7f565691b82c6c1b95764643b7ddb2d76429b43", - "address": "lax1s65d0z4p78eq3jemjd4f2gzv0accswzfnlwj76" - }, - { - "private_key": "4a01bca82b132293b7b4a9c84efc185cfdb9ac63983d2e0e93f9fb22243fcc33", - "address": "lax1qnws4vqgrv7tlw8ynzgkf69v5euw6gdjf2p88r" - }, - { - "private_key": "93aa5416c769d75c39e42f104e084e65b688e5880a08d9ccc6a26477ed066370", - "address": "lax12lv454zv48mdsgtac3edm2c9xuapylqr43ds0p" - }, - { - "private_key": "9cc392ea517b616de14e0aced0d0005b7edf12768418b8bd8ff09340a6b629a7", - "address": "lax1c9mrhszhspxef5n3ajg7rlxj6qef67k0lmje6q" - }, - { - "private_key": "a0fe4d5ed4aa62b1268551641514f49f3b617097467c528c0fcfe123b3277bee", - "address": "lax1t7kmj8gaynq39e3ap3e3wfwjzn66469n3uf2nu" - }, - { - "private_key": "b60b5ec1a4d722d3aa2cd2337fcca50302da7ed940962fa92520c65d48b7b215", - "address": "lax1nsu65ewg8y5hsfdet4elr2gk63lsh8mdntru5n" - }, - { - "private_key": "d6ee278b689b7b6f0cf70d158607b683cb4408b359b5db1693463baf951206f3", - "address": "lax1xad6jv3f3xdc86nl99qvhd62t5gae8m8k4dmmn" - }, - { - "private_key": "e08e5991121063aa30c59fc85242e0f05b95da0094854faad5ae3671949b1859", - "address": "lax1x0rvja32f4t3df2ftz5cygzj2wmw00euthssyv" - }, - { - "private_key": "3facf9b2f9bc4f0f39dea80d716ac9ea84cc55941710c432fa08a42bb46d7a3d", - "address": "lax1ll73ncr3yt3tfmvjn80c5504vnx5qn6q6y5tt5" - }, - { - "private_key": "6a02efaad12efb879c4964713702dde3c4e501cad5b88b91b7208ac0b837ea8f", - "address": "lax1874syn5mrs0z8em580wunau8d29p252mgskyqg" - }, - { - "private_key": "d64ede8c52532d86519919d88a68592b649ccec36769823346088eb3a05549e9", - "address": "lax128wkt90p6h7jtaln9rqxsjf2xqnjdkpqv66mls" - }, - { - "private_key": "3781fb5bff0f1c2a1cfde6512ade417e49bd5f65c91b3d883cbe88f029ab5e91", - "address": "lax1k5gljunsu22thxvueuf24epra2lrvglkrjjc9c" - }, - { - "private_key": "085d1d53fca9465c7f76037b6012dfe0ae66cd9bab055f43abc34e01f410f8c8", - "address": "lax18gptp8dtmq8avhhc9fx62ex2k52y05e30l007m" - }, - { - "private_key": "df94e77772020fa2558a973d6164b98532e0ac863f1f9fe04176cd79611dacf3", - "address": "lax1lqqrdf7y53pt706cw6v3wqrduwrfylnn7gghtv" - }, - { - "private_key": "383081c038d8f1dddd51182e88a22f030d03dde81010f830dce63ad1f2ad3e97", - "address": "lax1zx5jqla4qq5kl9tal7xu5ywpt4lqpv598dfu28" - }, - { - "private_key": "ada7e53eea6ecd3c262095f698919841ce1c0e88114f8e635f646164825859e4", - "address": "lax136h3wjscdheljr0n0hl5deyjtyhsc49lyrtldr" - }, - { - "private_key": "e9d07bdf9561c9707b58f0db5e614dc4bdb9f8198fb1e4d980a70933c905550c", - "address": "lax1mu6q9wx2zqlusdgmst2r93rqa3fs2e4yfrpjyh" - }, - { - "private_key": "8dd5deee43f255c1c160b135ea789c230fb19965e97b9627b742fc121bc84c9c", - "address": "lax1g9ym2hu3q7xfcx40tkzlnqvxt5gj20tar3kvn2" - }, - { - "private_key": "493cebfc5524076f4bae93e6b4ad2ac36951a76cb969aed523002dad74ed12d7", - "address": "lax16euglupvg9gmq08ax74rn9lh70quvsqsps8pjs" - }, - { - "private_key": "2fc5b731f565dd51d6be4f2c207891355011fa30357a02ec06a9eedaaed346e5", - "address": "lax160cv7p42q3g737glfzu4pq0fa6qw3yaa98w4xm" - }, - { - "private_key": "3f94c9ac5a60516cec3147403d70bd57caab40568370fc3e3ef4d0501f9a15c0", - "address": "lax12xwrewcf7qxtw34y7e844g4wz8sv6tk6p957za" - }, - { - "private_key": "07e3785b070df216d578fa5055091114646dcb41c66f8fe47e010d2582f63aef", - "address": "lax1mf94uwlyd8k5rt9p3t8eg0q9puk3ql2s8qz9dq" - }, - { - "private_key": "2c25c7624ddab8d1a7a65219b028f222f3a6ff101bb6f7e11083d1e57067e9b1", - "address": "lax17zm6a9z474gkswypnj07mxhvn6l5gkqz97rf0g" - }, - { - "private_key": "1ce2a74a84977a9520797a4bd3f3d0754356e2206334f354f20911ce2baacb29", - "address": "lax1se870mpqe8t2yxltapyqehmt4s2ykwtekw4mth" - }, - { - "private_key": "2eaea1cd38460907823e624df7d645fd3ec8955e9d9ea6efbb4cfcbf94c3f5a0", - "address": "lax1dg9hfdde6nmwh4rpyfrslvdv8hyls2u6x7w00s" - }, - { - "private_key": "72d4bc95ccfb68d6df33ec5909e26e2b102fdd09f6e56ac9b61e384a1752577e", - "address": "lax18rgzkyq2vtxmlf9s9cfq6v2w40jqkj6exag09r" - }, - { - "private_key": "7b2d00aec2f8ca54f734813e108365940f3d8855c05754c213784e2bb046bad8", - "address": "lax1m3k0gsp6gt7qzk7zrsqfr4k4yf97vcx7t3jg24" - }, - { - "private_key": "f189fea8e864ca50cf245ac3c0d9ba10ff8a50ebe30427b002cc8830477f98e8", - "address": "lax1vuyx6gg34tesvv700lvvt3qdmwx0ek4h2qfy55" - }, - { - "private_key": "1f36025fa728901421c7c1b583a12583de87bbea2ed33a0d58febb0494d3260c", - "address": "lax14wgenvv4m9vpgamu3zq2ge0m6mt0xld0tyrr6v" - }, - { - "private_key": "6001309f1974cb34158ccbaf74a26feb08b564a90084cb4e89fb8a07f55027c9", - "address": "lax1f873heatsst0rydvhqg93egwds43ewhqmz4zs7" - }, - { - "private_key": "d1f52d29c1d0902c2da1b03e8a9db26f4b02005bffe302c098646ed7f0f9d7a2", - "address": "lax1rzedlnrrza4lgw7hgw0tsfd5ss6spl04kr9j89" - }, - { - "private_key": "1c3f13dd090819f39c4c80d7a61fe53f0db56f2490fd9d4b3ac9ad19b27eb2c7", - "address": "lax1hjetk4fyvskj3kl226a36ha7d65qpvrj320h87" - }, - { - "private_key": "998fcff7dcb3e4f2afbc2c214e7df3b8b048947cbdfe6fdee0da085e88784c7b", - "address": "lax1fq379etzwcjqcjzyta4lq86n3dl6h04xd6kptf" - }, - { - "private_key": "0340140668e7c6d983d0cbc2667a2dca3d3350ccec1cf79354f0fc6e981ac178", - "address": "lax16qfqeqs200tf9sg8g42sq3tmwtvz3g8lud6cm7" - }, - { - "private_key": "0c83bf04d4a0f90e61482233903c8b87d116d9b86ff21eb796351308487960b5", - "address": "lax1lk002ma6tz0jlhgrn87jkqqaptr9gund8xpqzj" - }, - { - "private_key": "cd46960e532cf32ab7b4ea5eeb0f7460f56190fcea0c36804ac8a32943e45ff2", - "address": "lax1zwesvtqvmcewff0vnf6dnqdp04ct8c0w9efkvr" - }, - { - "private_key": "1ee995f8a322424da529fb4d26d55db66d156fde4ba1b63b659176e51e336ded", - "address": "lax1g9ml4dtj2avsuz23tgl0gm8ra4jmu0azv6f8rh" - }, - { - "private_key": "a6b492020119af78e399ba1502322dc43efe353196319b8eb8b1f10e4d83ff62", - "address": "lax1d0gudac0lxjd43tdu6xn7t9uheyp4ml9drqyvm" - }, - { - "private_key": "d77e72c8f27ba0670891f34b6ca830692b361c789c6f5a1429750c94e32302e3", - "address": "lax1fp5u68jtj4mu34d2u3rmmpzmtgrpcj90kwx3ka" - }, - { - "private_key": "59c27e46bd35b072005411937a36ac92a1c323ff3c0c1aa1b9754625686890c5", - "address": "lax12s0yh9ux3vktrq7l7c37ul2ts8x357n5xgrp4n" - }, - { - "private_key": "f1fafb7bf75ae95225d951b04b8a2f098ece342a1244518d037f8e948ac13885", - "address": "lax1kktycq5cxke5a5ecc97zw9d9a202ueeacvgxde" - }, - { - "private_key": "b516a5e6433ac1ea389069d0b7a3977b0064574257a0daf7dff9001f6f10ed46", - "address": "lax1780djarw29etfrs27hyzftca3q9tyag80vzwcr" - }, - { - "private_key": "5508d5475a7d649ab629f28da3946aeb67429a3e5c9682dc886629629ed6ace6", - "address": "lax1yaqwkf988z4g74h3k2hdg6nryd9ychvc2xgecy" - }, - { - "private_key": "a6dbd4c81f8090a62cae6192161cea4dbc749c7f94ffacac6a1786ea6fc678a3", - "address": "lax10smkgt9dpa0m2f8tddrxzcpl5xfznq07fg8427" - }, - { - "private_key": "36ed179f6b751942613ec7e1383873e666d5ecb0427dd7ee2bf3c78c17c5eb06", - "address": "lax1tfaw0egxpazdn4vlnxwgxdl8lfen3ugfa6mc95" - }, - { - "private_key": "93e432c329d69843e25b7315d948218ac04951187435626962b52b3680c44edc", - "address": "lax13z2f2u2recfr8vye7hq0hs63awg5u9kjdt3p32" - }, - { - "private_key": "a5a1a06d176f551957e8d049778aace1fd58dd8255e472e26822ab81fa10e81f", - "address": "lax1e3wuc5am72c4j4hd8d9cvtggg737xg95urs7h0" - }, - { - "private_key": "dd12c72a05b731fdf3d089b6af0fd0862ffc287b4e42748cdcf50cca0d09c2a2", - "address": "lax1h6al7c6rf7g2e0k7mnz0sntd5rwjlm6pg5vhf8" - }, - { - "private_key": "8b87d0076e19fcb321bca963388c8e1a092523478d7ad85952080ccc94c395e2", - "address": "lax1tdqplnp3t3333fczmxjg66xpexyma5utweurm5" - }, - { - "private_key": "fb6ad3668e42d1d0be25b09831edf81b6ddfb3082c23b4380d19b7edcf3918be", - "address": "lax13p76pn6qs8rxx0n2tfn7prgevxgjhjwx269v39" - }, - { - "private_key": "7f6d1776d01e6fe5f8d696c28ab065446d6cbaf057b0d9643e6ad6bb76aac270", - "address": "lax1jwpg3tu6tkkwnj4h5kwrqnw7kqzefg0r803m8w" - }, - { - "private_key": "7697291a32e0c2e91bf8be449be53285bd06b48720fe19c1122e376d72853e20", - "address": "lax1aqsyf5vu6qwtekvx3euq4mmmf9klm8cmqyhw9f" - }, - { - "private_key": "1ac116a9f506efefec365e1967c0ebd564f89222d84daae2d69cba98964c03f4", - "address": "lax13emm0va95p3vdx7xu7826g6xu7pfju5rzaghyy" - }, - { - "private_key": "0b0bee9bf9dadb311b57db9bb8199c1ece21fd2360f6b5a0a6613d794f68c01c", - "address": "lax130w2uk5fx9f8jq3k6k52xp3qmnm5jj7ex7zky4" - }, - { - "private_key": "ce5fa2827e855c2601e0a918dced36511b45e83504c3625f5f466b19191a8305", - "address": "lax15gw2zlfxzmnlkd4k0y7gzavqm0arnrlfv72cv9" - }, - { - "private_key": "77a916d0e92dd6e2dfe8441c166ed347e705ca50907ccbfbea8615370e22203a", - "address": "lax1wcchg4ezw6vnfy4qtnnck5g6z5tfpmmqnugnfh" - }, - { - "private_key": "bbf4eab82d2df5c8d2db76a23df5615a36eeebb1d3c684441bd0fb1202b042d1", - "address": "lax1g6dm3v0pcgp0p6z0ap7c84mx2ykxjp24y5rhm6" - }, - { - "private_key": "da301e6dd765d9364dbb3af85856dda63c18a5e122ffc84b83cf03df213dbba3", - "address": "lax1apvs928u4ahrrjrhnapy78zf4jwg5fk8su2are" - }, - { - "private_key": "9e5974b87125d459d054b5f1bdf6c3fa6c01fe690f5289b2d9450fab961f0b13", - "address": "lax13z8tgyqg0067s2qm0j43mve6axz37q05w43wvf" - }, - { - "private_key": "5f3c7bc6c424d4f654d5553a46b377d058138081572bc34474cce641349e3eff", - "address": "lax144j95lphdsfm7f5rln8kytfcmrzssnz0p9ant0" - }, - { - "private_key": "58de0cd9b280fd9b9c2f9b2a9559d226fefcfbd1ff10ae6aef6518b107ce3e7d", - "address": "lax17mtp3xtaespvjjlngqwferazgxxxraju3rcgvt" - }, - { - "private_key": "67e6f13477f25040ad5b2024e5c58f4c3fd5edabba9fb344817e7273cc9e46da", - "address": "lax1sqygypt8xr3mt3t2n94sql3lgz2n4ckdnnthst" - }, - { - "private_key": "942b73df2281f465fd355fce3cfa5014e9cd01a3368fbd6d6707bd8ece24458e", - "address": "lax1uf67p6wv0d6r0q4x0z7uapw7vudsk5e80n56ck" - }, - { - "private_key": "279190559c5699cf05a2151a434792dab7a3ffd2c9096c9ca4bdfe93e9cf5d8a", - "address": "lax1gm8h543ehsq0cqvlaa85jktfh2ylcshvznussc" - }, - { - "private_key": "02502488013405f9a097bb7aa294c516de74f327aa93fa89a2581ee5caa402d6", - "address": "lax1j3y4mvgnxqs44ynapk0ehz4lcgcflknzegdee2" - }, - { - "private_key": "cc3eb45fe9c63d14b1a64edf6dcbfdb08099cb86043a0d13de22fe78356fe758", - "address": "lax1374yp6wu0e5yc8uexvyyccae62lhmvm7km8afg" - }, - { - "private_key": "23078aacf43a5d3e58123f3db08ba3cb4e33d76992b7faac72f6de7017dd3fa5", - "address": "lax16fxxezrd904ufxzxx2c004srlgavam42pwymtk" - }, - { - "private_key": "9b63371e13648ae646c924134770711f24700d22377312747d73ac32ba17fc5e", - "address": "lax1zmktklr7ex5et5s6m2f3ew6c4yw9erxxgrs4e4" - }, - { - "private_key": "7c8054db1bd9800a0e2c57bfd9228ae3a227f96f5c48cf7312b10cf1a951120d", - "address": "lax1wkjjarwrjjv4kvw7rdy7fawvswsy54ws5w8pyq" - }, - { - "private_key": "dfd57464aa0e1f0cae8401cbb4cff5bccba629a90ad7fb5b9147c2b5b5d06111", - "address": "lax17jdgjnpynux4fd3xnp860v6f3npjagcrgfwvl4" - }, - { - "private_key": "2bbca6c1ab0770a81dcf686339fa88872446db85c50949d49c8b70734413ff8f", - "address": "lax1kur0lx5wxww768de2t4y30ggksuxhre0umyd4x" - }, - { - "private_key": "a6fd58d08404dba9cc28193b2e71420c9376732aa750bb1fc3377d8be2bff6ab", - "address": "lax1pnyvtccq7c7qyrs24zlsj729czcvch89fghc82" - }, - { - "private_key": "608d982546e2dd0fc9056d4029c5acd780a92b578e7c3cb9e73996e800beadce", - "address": "lax1mqym9slquda269hc3l7hv7sppumkn2ve7a93q9" - }, - { - "private_key": "05fb9e4633b0724366c6ffd94ca7ba52cffc4bad18ca5059f8f4ac14cc1e31e1", - "address": "lax1wm7p63e3dhkt3ev7vqlgpfvpw8v6zyzdqwlgq9" - }, - { - "private_key": "bd88f86e112111c9d6993e8674e017877d2d304bb2cd0edc380559b314a8a13c", - "address": "lax15vcgzuy6w9shre9yvzl92gc2cc8pq9dgu48ccd" - }, - { - "private_key": "0149548f69189f1156e6a55ed0019e11c04ce08e6f8070340b178c0d663887ad", - "address": "lax1atef9d9ujr3prqwyl7h4zkqpqupqw5v7g2ut8a" - }, - { - "private_key": "674b81470258f87c3e3080ee13d265405be4836d3730e7faf101cb7d215e6c49", - "address": "lax1rl78ehaxvw7mkgjnq2m59q9fkszkkaj59taqq4" - }, - { - "private_key": "3550407ae580328a234656f0fb1abe992bab6d46988a916a1ff6d9d3187b06b8", - "address": "lax1r8a8rx8vemwnsj24vx7j3n6qzf087ppeushnfq" - }, - { - "private_key": "b18106612019be0be831dc3e2aeabd4825c70137e25eb3d860d372f6131c728d", - "address": "lax19943z7xdaee07ve5mdwz74gyj8c4mxsmwjmhk8" - }, - { - "private_key": "3d898f4e6496cb8013cf10a0f4cea20314f64cef5887dbffdc2c92e8e9efc04c", - "address": "lax1huqyumwxgqkf7fz73jdfnt0u98u7msh4qmlax2" - }, - { - "private_key": "391cd39f037642207b4b5ed0dce3ebe1f2b8eb2a9b97e074686f6a7b9b206d6a", - "address": "lax1l0aqvpv6r036ct447x0ldvw4c93ms2zrt9nrze" - }, - { - "private_key": "ae6867ee60bbbb2cdd1a198bbd5bb226b781f4750ae3fc9002dd6a428b0a5edf", - "address": "lax1t5rqc5fn7yxzwk5mk5rfaqwyxxld9d0mvmkn73" - }, - { - "private_key": "f57f51b679a6d6cd9551e635609c689bf3185d856ea6de8a2dd388de1087dac4", - "address": "lax1rcvf4sd3y5j47fxas48nxvszstl4aqnc2690nr" - }, - { - "private_key": "1d305c6a6b0852710ac286b8a9334ba9d34248faa147c45bf00f608cc755f65b", - "address": "lax1mjw243v3s25yrwp6rcjj92g6r4zluzr95g6wdx" - }, - { - "private_key": "bc7c9d00e020a9d128452174867fa625bcfe7a757de0e764ce9e2b49d0e86244", - "address": "lax1n7uh9jvg420m65n497na4tdmsjvuln2tr9mraw" - }, - { - "private_key": "333e41598db185060fb967a006a5c07ad2327aecdb28221352a26388bdf94c30", - "address": "lax1zfhdzvccu09qe6x8udhu7d0s6yp8lp9n3jge8x" - }, - { - "private_key": "da0119b5e9c2de16ed9ff0d824ec95f732a33fd9acc935a818e3630120333191", - "address": "lax1uj5236n7xa5ytfuyy7sdkwpky26haqs69mtel2" - }, - { - "private_key": "649e2aec297b12676038b0ee0d054662c381dc8f087670d3c89de6cbfda2ae56", - "address": "lax1axc35n90q32p58lgyl8my82tez90g8qn9fnyyy" - }, - { - "private_key": "9d2a89435b07d5e6802440b98a1d3816fdae2f297a29010137751fac1669e888", - "address": "lax1kr7ecp47t77e6g6uj0f9jm9ac39rkt8009guvq" - }, - { - "private_key": "8ebdc42cf9af69bfca7b2ce74d6b8fb9079d88f99cb6319e3638915371935b24", - "address": "lax16u6zwg87ckhhfw7ntgmeyuh5yqk9qfzgy82fsh" - }, - { - "private_key": "fdc06572549496b0ddac161112b89d42a468a223c9576f9114a9420263224511", - "address": "lax156e80at2kpkfg37vxzaqu62ratmfe3ghpxcgss" - }, - { - "private_key": "b9b910d12515b6d78221672db8715bd9aaa890409afb2fb55df5f428929ca6fa", - "address": "lax1nttcyp09slc33sknd0e0z3hsz86nc6v2tkryrr" - }, - { - "private_key": "dc233ff44eaf416d0300e2b162b9b08510fa9400c47ba01ccad8fa6e0dbd40df", - "address": "lax1mcfk647nfenmcc6p2xp42a42wg7s28t0ppxsjg" - }, - { - "private_key": "cf6f07793b6197ff8517c86682508077efb664cf6fc822412be86b9d064ca406", - "address": "lax1zzlkzxuat99m0gqw4pje95leu2nha3w9wk5m4y" - }, - { - "private_key": "676b2149d92574c8a9bb7d3102f7e83d8071ad64d5d996c95a7371c6ebee9659", - "address": "lax17sq5yjlx7q0m7p2g8emjaqdfr2dtjlq6mj3t4q" - }, - { - "private_key": "90ac8b5dfaf3b024c0a4554bba01cc1838aeaf1e6735e61fcdef4ac36b73e5a7", - "address": "lax1wshhgd8wrn0vd5d2yhg2jtck4r3n89vh2x3t09" - }, - { - "private_key": "043b31fed22e242fb36fca5554571136b32b6345d4fb78c2593e225b71e1590c", - "address": "lax15ngy5zkvfttpjhxwg0ds9z6gzd0djgxwxunhv7" - }, - { - "private_key": "7953bbf19d1910bae913193ce4ac2c06231c354012c219c0cb8a187ac1503f2a", - "address": "lax145kz5xl8mfht203ynh6j5cwlkjw3xf4c6fqg4x" - }, - { - "private_key": "191a0a84c2492c1ae57cce2e7371a8f9fa19b42522d24d4bed571febcb95535c", - "address": "lax10l8darewpufmtnc4e0jn7qskpv94vhyh6l2zh8" - }, - { - "private_key": "6ed95e16341af5100559572f6f69b9aa773132d77dfcb9abd8267af9dde48ed0", - "address": "lax1a6nrqug7vvy6r4j2a37g294ankzfna2k85r4m8" - }, - { - "private_key": "20041bfb0ff2cd8dea3bec4d468caf6b5c98b763239e80e1baa87b7244320bbc", - "address": "lax1ynyvq8fjk9lrdgze29zve42ylnhfmz3n29xgj0" - }, - { - "private_key": "59cacd41ff29621e1083b709cafca613c061519abca5d1b5e4ca99af0c044910", - "address": "lax16gczc286rgmhwsxeun48mqg2haxlp0tae99mfs" - }, - { - "private_key": "415622633bff1ee0e00475b11cda9761f50573773b88a7fc33c8762a6af31950", - "address": "lax1t7aseafu0thhve7ghmncdusg6hazk333h8z7ak" - }, - { - "private_key": "bbe5c427d4d1b502eac782455f4ea9ef3fdfcd058aed0abeb8e07ca54282ee6c", - "address": "lax1qr96uck244hc6lyd2x0fcq5w3xzvtljfwcc3hl" - }, - { - "private_key": "bf5f1c080aad86db4f01339b58188630da2b1779a4c6739515def0bec20911b4", - "address": "lax13t7ludq0dvy3nz488p8fmrgwzhl344aav2vhpj" - }, - { - "private_key": "4ce099710020687f02a6fc87f77a00f9eebfd5e63eac0a667a6c6f090e2c2cd8", - "address": "lax1jhq446f2nkumzfvlhs4l3kdwzz482a7deequ0r" - }, - { - "private_key": "09aaa1d2d3e6c42de11257997c31ae24edd8ff491bd6cacb00ed792381a6797e", - "address": "lax1cjuruakxr3jqdtpn0kpl7zcmer9un4r0ldjg84" - }, - { - "private_key": "1f58d8b10720fcaf4a5df938af7fb6254fa2e2a4cbe7e7f29af8faf4cf92b1c0", - "address": "lax1tntwl67vfuvs074hkruycanqu5l3kkwhg80u8h" - }, - { - "private_key": "b217b02cc00856401821d6b22135fb5c5a3ed9cd955db7ba0878784cf68f83c5", - "address": "lax150h80hc7etq808qfx3kehnny0j35acnw6prd8s" - }, - { - "private_key": "a44b444f1f107596e35c6d38ed155755910b2a40edadcf55657430b4421a4dea", - "address": "lax152s4qvyhjxrpmnmt7q64fsdkg3hw5kpvttd32l" - }, - { - "private_key": "0bb02b88b7f7638085bf18561ef0a5f637ebb490685dcbb363ba5014a23e14f4", - "address": "lax1q2r5nk9drtgeqd0fdxkxuhv9yz8r4006f6nh0v" - }, - { - "private_key": "75cf651bef80161f10d84ea3b4cb7b2e8758c4e9bd12d647eded99809800be7c", - "address": "lax172zn9a9q3lhzprepvd5euj2tvc73yq8cygvp04" - }, - { - "private_key": "ec4dc8defb8cfb28ed2cbff7f34467f2c00364a55ff778c4f86acc426228aeac", - "address": "lax15sn73w7pcz5t2ttglm8l2g5yvrrgyyezkep58t" - }, - { - "private_key": "e790a4795a33e4931aebb57f374baae6dfcbdc2f9b4e2feefe79b480aa589af3", - "address": "lax1388d50yxshlprelctwrm0pphrvccem5wx3xdwv" - }, - { - "private_key": "dad26104ffa8e6748b5da996b08ba0a5dd8ceef57dbdbe1824923a7bcca43126", - "address": "lax18lqlqd2dm5gdd7qajphr9z3gzgfkssy90jt9jv" - }, - { - "private_key": "7d0928931287b79cf71e482dfee8dc7ca921cf013fb13497366c497d6a12a554", - "address": "lax15pa3ueh5w6nw4d957swmks3j0jnvk2hn2twsec" - }, - { - "private_key": "3c8b2fcca148042b320063d6024d1f9ee5743e2da66e36d098a198c620a79591", - "address": "lax135kz0cqa7jwr3mrqev6259w6xtdnw29utxrvx3" - }, - { - "private_key": "7e7a9b04261e1ac8b295a31403c8d7ae5a6597e9a020ff86b46cae7bbda35fbd", - "address": "lax17j067vdrlgpsl5m49avhfq3lq8vry5906rgw0q" - }, - { - "private_key": "3dfa8aae724d0332ba03d30b6f29102c3e3891dbd6fd5e47e026e53ae55e9158", - "address": "lax1zxj8jk8zt6k4trrtky0375v32vp3qnr7h3480j" - }, - { - "private_key": "db12fc5bc60bf8f462f46fab0e85a2ea4bab7b9ceae6042ae4688e69a1312f61", - "address": "lax1uz6rmea2nnxwk043phu8xp7jxleuq4nre84hqx" - }, - { - "private_key": "57017f6992bfffa4dec820255ef039105d096c6ef3281f27f30ee7d0b85df2c3", - "address": "lax1ykdcua75ggxhzsy7nsd89d7uulzejlz5mjyysp" - }, - { - "private_key": "665b0f68068b8657b24f87dba8622741d2995ac67bf887d26aec47542d7ab860", - "address": "lax1wc03ec0l2u2nul9px45lvmjpdsaje72twadz36" - }, - { - "private_key": "0d43445efb7e2f47b849870448bd6355e001f69a76e08a6b3e813127ae02e570", - "address": "lax1mnw3cpm8j8cvhtplt9v6c4yl9xsrlnmh44523y" - }, - { - "private_key": "759640451b135d849e8c959710afa71e2af9685366459df6d2e107e89ac9b391", - "address": "lax18dlq4e36mvytwh5ppavhuf3apl6rrtm9q97sfh" - }, - { - "private_key": "0a9f43a8491c55db8b717d71b8bde1f7e83fe9fc8cf8179a064667011c0a6d47", - "address": "lax1m3wsy2sa7utagax37lnsc7fxtpvyr0ztce3qyq" - }, - { - "private_key": "4e2068ac300a5079e21033c0ecad0527c3b69f7e0ecf1f4147367cfc1f467ca5", - "address": "lax15s3lrac4xpjksvklltv3vg5zz8yf0gwtuwgaw4" - }, - { - "private_key": "7d3de8432fb6612dcffd76170ef4831ce999f7f482c8ffa6210619639eb65eab", - "address": "lax17wzuzt4498fpht49vgtzzwsrhpj30pl7553g4h" - }, - { - "private_key": "43278da4138d3c08f0c4223b856a9f12b620c8d6fe1708a3f1e128c2cc2e0276", - "address": "lax1yzdd6yph9044s4k28mtrryytvms0vxfap3zap6" - }, - { - "private_key": "c9f9bd9ab44cd5a2fb4c5c8e862831ecd85bdc77dc2f343808768310c8c78a43", - "address": "lax1qa26nad0m4wgxdf8208kge98sfftdhhedg69g9" - }, - { - "private_key": "f24ffcb4587f872617bcf482614ae59ae59cba6eea52e45de35ee3f9ad677dc9", - "address": "lax14xkpznke50hxr097ux4092xr9xyu006r26ax73" - }, - { - "private_key": "4febcb5668d3b147cd37299de9e1947333c6d2253de72bd8e21ebd78d2cd8e2d", - "address": "lax18pssrhg0q2w29l60cxd06td0upjwh8t6mwk5vq" - }, - { - "private_key": "28814359db137d705cc2f3481e9bfddebc704e6df9c15e9b4a3eaffd0a990828", - "address": "lax1kd8dtp85403ysmat0w6wzph5cpyq4nvhahklww" - }, - { - "private_key": "4ae528bef154993e009efd843595dc3ee02331457316322a03fe14f1128c0278", - "address": "lax1afcp7cnyq8pq2q4nwtd66w0u0kan753enxwmf2" - }, - { - "private_key": "40784305de9f08984b8d926c0b0e3afe49b1fd723d1ddb576b8f3bf7e8e0ccd5", - "address": "lax1xwn5cepe8k5syjagcygrzwyp52uy9ek0xdk6pt" - }, - { - "private_key": "1dbd9d264551712d19e283639f031f4289797a486b967ac97139e0b5064eb08e", - "address": "lax1kx824y4kf06u8ehnjwzsgcyg9z9df4ve3ty4yg" - }, - { - "private_key": "54eb641cd687a8cece5178a7070c8f761adb96677dbf0de6291742b4278d5283", - "address": "lax1a7mw6kts5d78y5cn6sql7lh0ak8whsnphme8ks" - }, - { - "private_key": "746779c1b6a3ee8866597ab1797315faac4c8e1d4ef85bb78c6540398c0db2db", - "address": "lax19y2ptfftxhhncqzxc7yd60uw63g95w9vqaamu7" - }, - { - "private_key": "1ac4254d7f8b6a1a6327d647373ce5d3c51850d54b236fb61c3db98c04e08cdf", - "address": "lax13638zuv3c9kyk348cw4jla38q57j8wjd6758cl" - }, - { - "private_key": "f3490dec2d9ef49f83f88f0294de8725db8b9ee298b2c18a533cbc4de6f9f859", - "address": "lax1stmnzyqeryue0n4j7xtcr9nspt2macfeznu9jm" - }, - { - "private_key": "c3f358bc718d3fa4ed8a4165428a32cf63077d07d8484b8fb38b112092802b2e", - "address": "lax1uzk4gxek0npn5q2ecnjc5sd8n9axhuquwlk3fk" - }, - { - "private_key": "84ac25347f6150d8e197445fa68bbd25f67338b98afed82a6021025392b1ea6f", - "address": "lax1gs2j9q5g6wk293tfnyprxwrwzxrpf2yevvtv97" - }, - { - "private_key": "bf3110759188930e9357ebdfafd75ee3dbd94d677d6059a4395426c751cbb3d8", - "address": "lax1kglf9r4aljnqsvhw7zhulyhyutk2fuehhzzf9a" - }, - { - "private_key": "edd5dc3e50151a1c98cbd4fd4a37871f6ad9edb98139cee9df0e7ae9dc9de33b", - "address": "lax1vdzjjj2lfct4cu5crgvhpsalhd0tk0yezqnjd5" - }, - { - "private_key": "dc7e4722d309d9e4598010110062455fbd52f6944bd28c4550fff031b1cb9145", - "address": "lax1x5wj8027kluf6jecatredmjh7fjn7zmlwdnrrr" - }, - { - "private_key": "d3340e01371d3c570ffba52f9b5807918545104b69c943ad918cd136d010786c", - "address": "lax19jxpghp69ee0c5yznrek5w3dwm8rxtg7kd8v7r" - }, - { - "private_key": "ecc4b6c094e2290a046856142c89c2d9bb264f4a707d4e2544e62c315473cd2e", - "address": "lax13hdc8g76c958fh6lssfhvmyhsw2hhcq09zm06a" - }, - { - "private_key": "76ffcfb787678b4594c0d8b54e69bfa9c217ca582681112c2bcd0a00914fc867", - "address": "lax1hkavsp8y52a2lan973agcuf9z9jsu96zx3eyte" - }, - { - "private_key": "02f26b0e39fad4b7b156d95184c3afdb8c449644cc507b39103d6bdfd2c25196", - "address": "lax1wpkd48n8rtlmmz8qwqe2hm7tdmgegals3r2vnx" - }, - { - "private_key": "c1fdc42a3e5adb57c1861e5cf3abce860a8ee505adce9f278d20519d7528a44a", - "address": "lax1pjt4j5lqmun2ycm4jhh7lkneutgxamc76d0k5y" - }, - { - "private_key": "d01e718277000e9bae88682d9abbf839cfe87e15c9865189ca28c9403a3d3b0f", - "address": "lax1jm6cjrapmc8vfmlse04ufd4h4u7cqgv3pty36k" - }, - { - "private_key": "f91cbc5c2f777d3206d45aefc675ba3dbde235d96a98aaadb1b9e235aa216245", - "address": "lax1sspezp6n5wk77aqejehtr02ztmmny9xankcya8" - }, - { - "private_key": "30c42c7cad559e9b26ac976e3ead84175777d3dcbd34790c71b0040c8025b49e", - "address": "lax1j662ylpn7v48jztkeur3lh6gzs4t78mlknsgql" - }, - { - "private_key": "6e5ab105f36dcc9fd1dc674e25d717f71a244312e0b78c96555e105ae56358e3", - "address": "lax16jdezkqy8hh5j2jdcc2grwqnv2drsfwm2y3y6q" - }, - { - "private_key": "9de75d449a81610496d2071e62460001536f421f7892eb3266d34f18aeb355e3", - "address": "lax1a8m2hhfr5ah98ypj0xz6umrthhjpmuwk9ugeav" - }, - { - "private_key": "0c811df3b54e3f88a5adf09f91b080e5c789efef8b75168e9a80702eef5ed8e2", - "address": "lax1qftz8u9gckh896hkg8650vdkds8xzxd5reqzph" - }, - { - "private_key": "b5692a810e494a58684a973ed29d01c8a2c919a49d87366ea80d37281d031c4b", - "address": "lax1ta404lnran0270d06jz5eppvjcl8plnarzhhjs" - }, - { - "private_key": "d1c5295bc45845163c8e26034eee137ad1ce08b7886fca34ce63f90b0996534b", - "address": "lax1pptcygelpqrefjp6zttzvehe75maz89v5c97m8" - }, - { - "private_key": "aa26825bdfccc04012d2867edd1c973236da79c74f75badc67f93a3bfd96642a", - "address": "lax1d7et3knhfef3gus6qrr686qaxnvt2a6re7uxlj" - }, - { - "private_key": "ce45478584d04fb37ce45622a33d6276eb1b617fd76d919da6130e6a1f29d9ed", - "address": "lax1mnl6gdkkzj6hz49l3d9vxvgdw9lwk87dvl35wp" - }, - { - "private_key": "22a390c87282406931776c1704464832dd83aa02a64b143ae0c28f4d0228c48f", - "address": "lax1a3494uy7jqgpm2j7tpqznp5284sz9vcz6jntn9" - }, - { - "private_key": "9a69594b748513ab610cbf850224456506da1339ac4b001c97e32ac89ffc6363", - "address": "lax1fr3t4jq55703l4n4sawudz4zu32zm3dx5telph" - }, - { - "private_key": "43106b753a8a61309632e5c4c9f0e28a328fb6496b19f6631ea30c5f36f4cf22", - "address": "lax1y2x407u059el2uzpu0gpryzzcg33r0wqtg8dlx" - }, - { - "private_key": "f498e125cb3a4e72991e9755f3ad5bb5de26a992c2d4b8e3a9ccd1b75e76d762", - "address": "lax16v657way9txjsed88he0gnumn5syt7zthmum3s" - }, - { - "private_key": "f3b6f16b86df1da75a9489daa07710daf5b03e75097812ab0800ef0690c6689f", - "address": "lax13ckv7lc8vjnxzn604gj0y9jczusyr0kcy3h5hh" - }, - { - "private_key": "576e3bf774953cb018214269d4c4c7d574c35d4648b5f8e7ab211f0f8d932a14", - "address": "lax192fmmgtxsae9z0av597q8gre92snlml0j5rxd9" - }, - { - "private_key": "324a7d654f036fc940803f6857824dfbf748733a32205b480562895cfe09645a", - "address": "lax1yw02e229r4ynjw0lymvjglmee52nzls4fry8e5" - }, - { - "private_key": "cb27c30249cf591b53ec3e564ee246fe67a3766c1d862f8e35078396fbfc8ee7", - "address": "lax1j0s0tq03fwwxgvxcjk2yyf720g0h550kdep4ex" - }, - { - "private_key": "e48ca69283edf3a8b4c368a9ac645c267ff2b6e2163bf450b4aa7c3270031636", - "address": "lax1elj9leu97knza28lqugq2y5lkt3tpmq7wc5qma" - }, - { - "private_key": "164b719c4f0f81b60a5920075b12c142a5701b857dde4c90a03d2b50dc6565c1", - "address": "lax1ux4h9muqqh5phdyf9075aq6c0qzv7fg3tn75e6" - }, - { - "private_key": "7bf3d15dd50646b5a499388f3ade8178106f6814e3e235c09c061a54b650bbe4", - "address": "lax15s5lsswq6w5np47rnv8mxfj4kekx7r94lzu3vf" - }, - { - "private_key": "f05de5dbc4a6e3027aec184ae9ed2fdec63b38500c79eae9c30fd0151d1d96f0", - "address": "lax1ym7sxplt9k5j3vwq8jsetjs9w0z5yqjncrnktu" - }, - { - "private_key": "4c6ec75eb131196497cff1d1f4efa881b445cb8ff92201edab1cdfbc0ff0dbb3", - "address": "lax132whpjy086zplfceawznlqqd0mznjgc482xgac" - }, - { - "private_key": "973fc4b70dbfe786598b6837eb3daa84c9f8a749d8dce3d7da3ab1d44afd118c", - "address": "lax1ngl407qhydkhamurdnldaaedvj64v79n8ghm7h" - }, - { - "private_key": "660f1f5a33ed9ee11f02413ca3c9744235eedd989d7ea6ee17a24f55ae8aea3b", - "address": "lax1z7ar7fjp608r8u4d7vv7js2wecemhmp8sn4a72" - }, - { - "private_key": "c1f14e69e72bc76047b0c512d1399c5e168b24bb7acebc9da4481b5f601661b9", - "address": "lax1hmzvvcpsldfcslm2c0mxdtwcfq7vvx9vxu6f8j" - }, - { - "private_key": "5b7da080552a883a8bad59dbfd09596b0986bcf84289252d12a64790003025a2", - "address": "lax18g2s8j9gyxl6drd8hl4fq80xlut05djyd6lh8f" - }, - { - "private_key": "c41b822f84d6a7977c6b7c18ed99f20721c12efef0118603a4cceb9b8fc38334", - "address": "lax15qtkq05sj3j53luscq2k8fq0h86vf6a6zmw893" - }, - { - "private_key": "edc7ccc3d406137fefb69a48d941f922f2f1a338b01d7ef62e24971a51b14763", - "address": "lax16hn5tudjdmffeayezgkmkd0e3hcuxjrhg7c57t" - }, - { - "private_key": "1d2520bf879d45d21a0b6450b9f4e0b2f97d106a21560cc2b98ef229d1b2ad56", - "address": "lax133yxl2aj3qjdsr3wcw0x4u77w8a93qptuf35h5" - }, - { - "private_key": "57dfd138b5e3028533c5e5f62f4038f4f9d3b36e2cf848d0943968a5384e90f2", - "address": "lax17m6kna5nyxlx03qpfpl6fk3kz8jhcxve34jenl" - }, - { - "private_key": "79183cb35eadd02e979f2b1a22095610e278b67eae0f8b1c9909b4bba386783a", - "address": "lax1jrjp96hcacgd4eyqzulchymwp72um65ufwpapw" - }, - { - "private_key": "784a123f61a0c125a33e622f8a264a8b53ec6f9a9a6db2cc2d1df6df0f82f9a2", - "address": "lax1fe052arnrah5cqcehuzn7z6cu6dey2hafm5sgf" - }, - { - "private_key": "1a028e12b67d38351aa5e39838c59f477423a842fc58814d3ccc333a6924c956", - "address": "lax12q6qlmfw8xnsqpa50tq089mge3k4d3w6ctjwt4" - }, - { - "private_key": "87ef5cc7387c491cf0e5eaab2df6664abccdef8102a649b6ff2319a3bbd7a7fe", - "address": "lax1rk30dqph4z4q3skk2pdau5g2md5qrl85eaxjd5" - }, - { - "private_key": "6348e4b2cdaf3922fd2e03ab2981b07f6223c1504da425a9ffdb33925bbc0256", - "address": "lax12fg2qknux93g488ke7zaayyu8ku5ajp78aa2sk" - }, - { - "private_key": "ec9c3662cc2c3139823ef76802c6a02d0f6e03509a97044840d9fb44869d0389", - "address": "lax1766jjh97d7senlsanrrkp2j4p2dxfs76zj82jv" - }, - { - "private_key": "15eb30844d50939563e4d9bc41632eab73222de21dbea30528066e44912d6cd6", - "address": "lax1h6mgh4hqgrfre5923nng0lhcuekwzncr3sshg2" - }, - { - "private_key": "38ab4eca13f1c367d06bed3c43028fbc529a14b89e87a79fa3a2fc66e55c6ca9", - "address": "lax1q5pf3yutrm9l5zmp6exw9w6wlmjemw4w3nwlen" - }, - { - "private_key": "3c4dee3a8569cf2acd5962e0dad7abec25ddc4a35e99d630a34c9a46596eaafb", - "address": "lax1tdk6p7w4etvyg6tzghwmx8wq2ffm9ncckcrs2p" - }, - { - "private_key": "348e4f8e27aa2340dadec0363a29abb0a74d2dc9a474efb99889963508ac32a1", - "address": "lax1rkszkvdvpcx7snupr2pw800n3tj2j8ucqnze0v" - }, - { - "private_key": "688c504b83a4cce1f95b0c5d09af70534f41abad8d2c957d621955dcf410542e", - "address": "lax1ae0nfc0vcvltq2sh0nr80l7y4rvwemmmaqs82f" - }, - { - "private_key": "3745fc7da2ac72b69f17632f64a9075569f0ffa6f84da73a225e980056c5cd63", - "address": "lax1uz0jsq09u25madf6qa4stmuqed0jcn4jv7qegt" - }, - { - "private_key": "353d6c3e52127445fca8cf94b6c225afdaf1493c13b84bbf511afdaaa1598355", - "address": "lax1c4xpjvzpwyq68pyzuwkz3q3tvgercwtvsva8fu" - }, - { - "private_key": "6a6f1c278fb32dfa4ea93946aa1abe052976d2c71c0cd2176a3e5ab51014536d", - "address": "lax1vseghfy9uukfjtn29qa0dln5t2vmk9dyt3kgxy" - }, - { - "private_key": "54ea6ddb2d3a9bf27bfa71ac18a0694c1c08f4987e77e777af11a0ea7fb89310", - "address": "lax1mgt90ysj9p872ysp3lyjt7hxcfvaxhah4etjak" - }, - { - "private_key": "581b7517c2d94480d3d7a70960df1b91216bc10aa3b614adc5e647f500829122", - "address": "lax1hsk87lmek5xsfjrl3ucpgcqhw7upd8hye8rg7c" - }, - { - "private_key": "d518a3d008e479e2222768c881f88a8e0836981b9868b80eff48ffea30fa1810", - "address": "lax1k2hs7x4c45gtfrwhmrfc4t97led3y75h6we2cx" - }, - { - "private_key": "ef0577625ea1b149ef2dd3543876da8a9e6e2cd110d3ed5d65bc408c3315aee7", - "address": "lax1stllzpvp6km3xkkql7acz22xheth7mm04gnagh" - }, - { - "private_key": "86a0def58b242b25765dd6b590e746141f1d2f8bdc7c99cae836f5ec544e91e6", - "address": "lax1x93thmey7jhe7ljec0a5jxmpm4nspefrl6t3hp" - }, - { - "private_key": "d1124c3ed865a22c662495190b0a855097f7c44e41849002de94f3920234dec0", - "address": "lax10dr9ca80psajpvqshtnvslxhqg8cxe664uvx29" - }, - { - "private_key": "3be3f94a9d8010acd56e4c037d13ca6dae04edefbcbbaabd88d71915e51a6b2c", - "address": "lax1ruyc6xk8selnvzxskhe77gwsr688d80rh2des5" - }, - { - "private_key": "7c2e8e2cbb36d02119b37e1d57da7b821b9f3a415b0f2ef355e4a78ee7e219ba", - "address": "lax129qhtsdgpsehsy82v6l7jmd6q4k0fmp6nfw4c3" - }, - { - "private_key": "d365558b2375df53205f2e32bfc5c9efa4e544e75181a2c311676c71aa7fe024", - "address": "lax1vu5l7408emphy3ggkjh3hlgeapjz6g2s3825nx" - }, - { - "private_key": "220e7b2fdfc5555b950a96487ebdba1c58f41a2b6238709630e209fa1445199f", - "address": "lax1xykr9usqcjg9qw9xf64e8x9pssnqxq4hak09z0" - }, - { - "private_key": "657f1385b69ea80edf7904ae3940df3b890549a78d4c06c4dde480f25aa6d065", - "address": "lax1uh6zh29kar2klu6v8qj9xn7nf6u4zhyrtdmgrl" - }, - { - "private_key": "4698e83f4df822024f2a4f1bf0d413fd2d303d0986dc67a046e79c37118e31f4", - "address": "lax17mexrr3wpc74csk8kgucggnajhur6rpq3urktl" - }, - { - "private_key": "9320d8437e5a594237dae2eaee406607d2c534b286eff1287aba78c67b3af4f0", - "address": "lax10p5572ta6yttm9473anhf9q0lujr65s30a06tw" - }, - { - "private_key": "54be657cdcf34d7e179b84f5c491ac4a52b7859e156b82352a76071456a63fe7", - "address": "lax13tzz0scmuruhpynexk6cgshutz4hkmwznjjfwx" - }, - { - "private_key": "a47f5e0663e42d07ca87fd1f4560d38c5b59b950b0743b379337e4a14246f2a8", - "address": "lax15pee0ne98dum2ds3ylppw8qyhgw9tcn8ulhweh" - }, - { - "private_key": "79ebb185fb8c89a0231712ae8ae4515cb4c29ec523e244df98b40e2819cf5ce4", - "address": "lax16c0pyj3qrlegmcaz3nn3sq69ujz9td5ehrd7au" - }, - { - "private_key": "35dcd7ec1b34c56a17584093f7188942bf8c63b914529d2336d270765c7c4779", - "address": "lax1w7dgs2mk0awyzxph39t7fvqgztf50grmxsscsc" - }, - { - "private_key": "1e64554f50e5b6a32b13726691b6cb9dfdeb1225b73b68b32c399a557bb0ae9d", - "address": "lax13ehy8radtraw7e66hq3ptvstl0pe8xtn9qd5es" - }, - { - "private_key": "ee6a9ce29bb7796e3a721af61613a7ddab8c89a6f2fc24c561299cb586c1fe7c", - "address": "lax17xkh2gl8xdapev8lff93xcjvepxad7x70k53ls" - }, - { - "private_key": "8f1208e048240c4199822f44dd25aedeb2b02c655fe6669815c2a6a200a90962", - "address": "lax132ztcefk4dgmyjcc2mjygj8tjvczdrjzqwsjnh" - }, - { - "private_key": "968ad5991f591243ac1f8ba68fcdac2776333993331a09043b423bdcc34bb846", - "address": "lax1ss7q8f8j429pmz5duq06nhu7ka9da369v3h672" - }, - { - "private_key": "d4b2124fe9391ed87e8d7e813abe6fa75f7d78e6603b95b5ea73e67eea79b2a6", - "address": "lax109dq88vy0qdau98vd58yh2y8glse5ectrye0dr" - }, - { - "private_key": "e8a2e37aee31ef3e2e2ef5b89c55a16a8f3f8b9222469874443315cf69628c8b", - "address": "lax1c0fugxdr9mug3lj4dd5fpkfsff2z9n2jwm9qcm" - }, - { - "private_key": "846ca62bff8063deb59421427994f3dd0fbb8eca01c36cf21ca1091f5333882a", - "address": "lax1f8j7uuy0ama2accu9hlcmr0euj6jpduqldeful" - }, - { - "private_key": "0dc27462e9614cf071a2f888bcceeb357c1fb06e1d87f40ccae7ae858ce4f371", - "address": "lax1xu98fca03x4mxqmtadhvd8skmyvuha4p29krdq" - }, - { - "private_key": "cf938ea118df54207adf75338625f5acb2d4d3787fba1e105f74c5d939104401", - "address": "lax1lgmx93ghlqdv5upgxr94nalvgeyyl3d3v6t6gg" - }, - { - "private_key": "2df7a9db1f4f10d8830b18f9c48ad1265376dae63679ff460a94eb59f858d124", - "address": "lax1dxdukqn2ytyszf2egu4hg8tl0wxm7xz25cyqx0" - }, - { - "private_key": "70a970881b5da99cebb2aae35f3432ce75a328fd3301026abcb04aa60620de43", - "address": "lax1ukcecwqzeh3tnd7taqkehe0jvfzhtzydxkj0qk" - }, - { - "private_key": "719fe11c6967ec18a3875352702c13cbc65c3bb11c9f65fd40b24ea87cec05c4", - "address": "lax18cw7ph85vd5ekkndrl9mk9aarjx6xdwch2mcsj" - }, - { - "private_key": "765b332ae78649670d3ce06835ef45f66e3efd74e19bfc50d840fcd605339b99", - "address": "lax12wglqnzrsur85ddd7mrqdrya9kxm3t0us3srh5" - }, - { - "private_key": "87df6847fca6749390b64043524bdbe336addf2ce6169b5f62a1c5de1cc6082c", - "address": "lax1qcgt3c3h0ymmtjsnksmcghud47f23e2tsdaqdp" - }, - { - "private_key": "f9c22c6601bbe2338f8ce872f907b99ae04ef2b3bdfcab8a92ea41bc1ddfbb43", - "address": "lax1u4g9uwnyxk3gcnhdm0skjj2chdmc80q8jchf5d" - }, - { - "private_key": "7a7cdd0d56bc12987a0886469fac378cf66bbf31d55906cfffeb81e51546e119", - "address": "lax10kyzuv4w3xaxve87vw0edmlqfhxzp75jz0vz3s" - }, - { - "private_key": "026856aaf5362059282adfeb2850ad3ff5b2f3cf573f8527afa289f64714e3a9", - "address": "lax17k0zu2achqpewkp9rq65khugs24ku6jftdq8e7" - }, - { - "private_key": "a4e3cb16eed62450c5144c11da5fbcb594fc9a9922f944bf7db210b038c562a3", - "address": "lax10xzgqvl8qqgdwdzmkpm5stj4k8muhv9zh5shn8" - }, - { - "private_key": "2ad599277689ef0f8e4ff679737d3d0b82500d970995343166b431050e70174d", - "address": "lax1tu4n9t5l5ra6q9f6u5kfyhl2sd7pfyavcsm87q" - }, - { - "private_key": "34e27adbe7c4e80c3e15193c6362c97122b8f93afcf502ea9fa9ecad6cd3dda0", - "address": "lax142ph5fz2z6yx39juj4kcwhg25vzpnzja2eqxas" - }, - { - "private_key": "7d2be2ee38d013d490e61cb1ab8867fe09bc3e8162746eb779cbe53ae393c2c5", - "address": "lax18exqhpt3exvs9ez4gsy7tp9800kff92pzccwl0" - }, - { - "private_key": "325b3a1e1b8627146909d6ba78dc66af7726f1aca654865caf9520ee2ac11bfe", - "address": "lax1hqcptnucnu8el8leprvtm0gzu2t3vrlulaxyt4" - }, - { - "private_key": "ea09a81f8bf259c2de6f54f7aa553a6b56d39832a3ad49f6ac010aa6bad130db", - "address": "lax1zup96qzg0kej5er4xu8zgr638z69mjqlu2qnh6" - }, - { - "private_key": "9b02ed545a13ae61748fd54e2f02a11d2337ef6474acbe42c67bddd7378b013a", - "address": "lax13zm9lteahg359l5n4xn2kx2x9cq7apavtplrc8" - }, - { - "private_key": "b2ba668b30964e9989f573dc323a90d6cd3aae397377a58ff685c94cc38ecc6c", - "address": "lax1ktjfygjh9p28g7ttaxm3qctpz9dz3l8aaducj7" - }, - { - "private_key": "69c3d346acdfe1e251953b2d6561f3a43c1429905f378fbba859ec29e4e690ba", - "address": "lax1xfua03wnvv7vcmxxedndpq9pfskj0uln0hxmz7" - }, - { - "private_key": "a84cfd810ed1ba6c194cde038ccdd4b4ab13621df572faee07adc8d729d018d4", - "address": "lax1stfecaf5zereq6v7z9074gg9zxauf70m3pjhq3" - }, - { - "private_key": "7937b1992731da32b38ce20ce510dc6cef570def77a75f085230e9440f457a27", - "address": "lax1sl7m0empgnccn56vp5a7p3eucvwtjhyyf7pgq3" - }, - { - "private_key": "d4b6e4c45fcc5e2a90e3d6b25556517010d07af59154f5fa6f5ad9e6362d7e42", - "address": "lax1gpssjsfev4kcyth2cyl683ezg6eexulv6yysqv" - }, - { - "private_key": "ba949053ab296f715b336690fa8abfbebb829977e8c310f3046ee6a7a5264365", - "address": "lax1vz6l327rzwwc228qvyalghevd8n3andzckfs6c" - }, - { - "private_key": "edbf455c09fdbb986fa9c05e49e2746583df21824a1c71d82f28dc81751410bb", - "address": "lax1jrnk8jkqpeje79gcay0n7vpcwfvqq3vy4rp5t7" - }, - { - "private_key": "b013085e9e072e26fe14fc08740f830e582f7e7d679f562e6b96e88935f97e12", - "address": "lax1sqf0hsku5pkfp9kjncxcct7je8mv9y8aycntjy" - }, - { - "private_key": "56fb87e1fc2bbde37a39fa3a0d2195663df678fc1c1cbd49a04232a75581f16c", - "address": "lax1wryudaaflccwg4n50e3jxhsn3d49r29yp4ye4a" - }, - { - "private_key": "ba69f2cdda090fd7c158534c47949d6ab1a72f072bf84ffcd58ac8522f6fb277", - "address": "lax1haepujxgr93dnat334vwt78zz0cndvzww9efsd" - }, - { - "private_key": "72a081f64d9e775ddad8d8796cfeb48bb9c7a9f078bdff2a394c3a26122f0ad1", - "address": "lax1ve5fgf3t5kc9jasx6dv0g4zudh8elkl47d05m2" - }, - { - "private_key": "357f35399a14f10205786a4446b9267548d61967ba887bd4ae51a27f7eecfb0b", - "address": "lax1pfhzpr8kt7g2c9h093yvqtm948vga8gsdyhc79" - }, - { - "private_key": "dffa9d3cea7ebc666cfae5775c89808c03b9b6fd2b7e0ee0155efd98b66b06e3", - "address": "lax18ltlzv0c6de7hxwy8nat9kftjpq4j4jy5ujd99" - }, - { - "private_key": "4bc56579080830b85d8d5023c7bdf312f9bba8f5e3e2421aefe62183b8e0b9db", - "address": "lax15al6jh8h04zpygnd4qsv564xm3202png2htkma" - }, - { - "private_key": "2ca5410e27456d051974073b7b132f20592968b51180ee80670519c815e7f2c4", - "address": "lax19ewjurq9zj37l56xv9ywdsga9s4qnfysxlz89c" - }, - { - "private_key": "57ceeedc13a9ef8525d7d396b69646748862d58251649fe7b750d697dc4e93c6", - "address": "lax16a5znka84agqhatgddfushxku5jfc66dgtzh4y" - }, - { - "private_key": "49bfb5ab96357c55ec6e64254c649ae64327759aa55b53fbcc280de1ea2bcb48", - "address": "lax1c3zsr5g2pwqkfcz0n9tynhp4mz2wl077uvpavt" - }, - { - "private_key": "5d3aea0d6ce723cdb72038909a89864c4918fca90c5c925819b660ea3951c2e8", - "address": "lax158svzs4hq88g34mj7zzmc24dl06q2e0fk8rwra" - }, - { - "private_key": "7b18acc2846b2db122450ea1c9c1193876c6ce045f0e6ec2a314a0c96bda8c20", - "address": "lax1hrkncz9s67dttqjd2cg4jk65nm32v6y6k3njdt" - }, - { - "private_key": "78e53be5f61405d83312f9886107cdb1e487145cf34df994d849c4dc44a69d52", - "address": "lax1uca794av8p4sasa8fn353hh62vstwwxh7u9emm" - }, - { - "private_key": "75f020a4bca6b96ffee11c100aa21c43c99f72b22ddc28d6d743bec8ccfed267", - "address": "lax1vr9xadpkn8evnaunejtmwxpzcnc57zpgeglej6" - }, - { - "private_key": "a3f125ad54d746c3e59ad3b8f6967439d456a99d4a6338c862b14d935f0643b9", - "address": "lax1q3j76v8wac4shwlzaw7yrqdc94ylwnlrsw46z2" - }, - { - "private_key": "1f9e81de3897ec0123dad3d9c15d92773c0d47f10417c1758e8aa75b391ca543", - "address": "lax1sjwa2uxhsqcx525hvf6l4a2l8vf8gv0wf53med" - }, - { - "private_key": "f991808e89f391043b1a498b3a22edfca741e39d0643881352c8efb4b41c231c", - "address": "lax1u0h9uff94qflmamw280zc8etfzzsk6p09grgf8" - }, - { - "private_key": "d1def3cbe196c4cf544e11883ef4d6d4657343640ec8eb9164431a6f03d81826", - "address": "lax1zdthdlgcrjqanrfvg85vpalqtuqkvqrnv4fldw" - }, - { - "private_key": "0d2f86ad500e8e3c0cc12e315d856ec835a9cadfad3808f5ca77c99efa16b66b", - "address": "lax1nsl255hzd3r9sh9lt0nveyrkthqkgcp2z3fmk3" - }, - { - "private_key": "ceeeb478e459da39c8dea1c8173e80e55a3d9d08f61338b0cb2bf8c0d548b938", - "address": "lax1yp52ua4x03v3twdxreuxgvhr5jptvacfqkrpt5" - }, - { - "private_key": "f7942f080165889925b3de1adecd67552068f6da8079f231ae1c50cdf2069758", - "address": "lax1hl6q30gc98r5nmx2pnllycnwy0pwu69mv8kqjt" - }, - { - "private_key": "80504d698b6d0ea0dafde471319495677cd2b7fd360608e653a54562b099d361", - "address": "lax1wxvxpylvutlf3mk6zujgupqhj4j7er4ekelhhw" - }, - { - "private_key": "64a2f8191a1cf77bf8bb6cc9e7d91a221133a0debd84ee7922d27dc934cd930a", - "address": "lax1xdgl5s8fsffv9tw64kmwv35tcgls44qvl80zfp" - }, - { - "private_key": "f4b36683937f1e9f5de3863605d785ded07f07d57078ab7971f236efe48f8ae8", - "address": "lax1e6qwuljaxl4gl6qnlf4d4upwyuf87582vqe2g0" - }, - { - "private_key": "d73f6e4048a7aa4c5157ef5c4c6d0975e6a1ac4535a2abce00f967fef4801bb8", - "address": "lax1zhhl6fxcn7ynp4253hvqhqkkkc3hx277u97sqv" - }, - { - "private_key": "26de7227c93e125c9a3a7f8624b05faece17d91bfb31b37fe41d10d1bb3195fe", - "address": "lax1de8y6c656fwjjug9l0ftee4jshywfhpc3j8lyj" - }, - { - "private_key": "5472cb20dd2331d838a89a77bcdc6da79021f608a9e894640ea55536853b6c1e", - "address": "lax1q58aqalut64lwgkfhmutu3hj835yz4g4wnzjm3" - }, - { - "private_key": "37753fafaa1f8cd3889dfd40165dd71f5ef33075acfca30b397635370ed4e3ef", - "address": "lax13x67ekqc32evmgsufqapjxahlgx5uyf6uyne9g" - }, - { - "private_key": "de8311499b2600b798e811730e7904e9a4e856cf5cd7864d451c4850b7ee5c92", - "address": "lax1p07v39x5vf48ekalrqsmc8rdklwcjnnzl0hxr9" - }, - { - "private_key": "8a5d5431221641061247ef9bcd8d7b85f9990ecb10c0a6d85ace7fd33556b152", - "address": "lax1v4y2cmdvuy8mf02wfs29qggtp5540jh4hckk34" - }, - { - "private_key": "2166227af074660b210d09d8813223bd09c48d4047f176ead9ebbde51c4b1bcc", - "address": "lax138g8wfgpm4aku8desakrdhkfp4tavkrauggn0k" - }, - { - "private_key": "85087825c5787206bf1effcbd2c05c34bce17b23567e350c52bc3cefc1e61455", - "address": "lax13k5s66l9m54s98nqa8tfk2hurnzhj69mnk726v" - }, - { - "private_key": "e07f7f14e97ed48687b7e1cf959e48d26ff26c96ff65c2a53e50122950be7a77", - "address": "lax1nlxftny8svz7wz2gz368j3z3qx8mnxu2lvnwrw" - }, - { - "private_key": "15f5dbb3b5048e50fa08a1f102ba4dbd269f1fee35154f4e76d4367f02c9ded8", - "address": "lax1a3quzcwyp674460883lrwa4rdeld6twvkr3vkw" - }, - { - "private_key": "c3233c7972742f88c3d5b419de4d45474a871eab8f1602aa49d3c4c833a2fd99", - "address": "lax1m08xqlrdclcxwr8fazhntar7tm2cv7z28xukje" - }, - { - "private_key": "9589f17f9e4ce394b3e5a2ee5532d094bb4642d664a95689bb25afe1b9bd8ecd", - "address": "lax19797exej0tavcsya6k8v77yrjtvmu70y7jz5dx" - }, - { - "private_key": "4567041030bb91f22e453a840da48b0ccad5ad6a4ea56138384a473bfcde9ca4", - "address": "lax10xrwjeyn7q3qpk6uqfjvhnmemq56v0q5q6phdl" - }, - { - "private_key": "702879bd143f45860071d153bbcd29b42b3e7ce5461695d703f347a88eed3cfd", - "address": "lax1y6h8jsg8dm63rurv5xttjprjcwmmjdut6nnlsc" - }, - { - "private_key": "d9b68548839533a6ece0c56469a9cc387c618d4d5c56ef529d89aca0cf4e05f4", - "address": "lax1dshwz4dtq0qjsncelmx409p6tpdxjvzqtqnr2q" - }, - { - "private_key": "6217d4255a393e300b768b0727a2ad312b2eafc1200bb6ef8fbe6cdf93d52654", - "address": "lax1jqyfz5v0my0cw400zxs9d9zy9t94kst229kgp7" - }, - { - "private_key": "0a8a37b3126c36156255ac30fee67a43f1454a564d3fef7c8d223cd8b378be35", - "address": "lax13dej68mdqc2a5z7gd74ww7yyng3ys7q3s8jhra" - }, - { - "private_key": "c75d14bc5be126732f830c8a746076bcda346c2e6b27fae6f70196adb1fa43a7", - "address": "lax1y7c9ku6gn0fn2aw437lf7xa8yl2mq08acfaqev" - }, - { - "private_key": "98a8a88d701e77649f102bcb848ac3790294665c80fb6fcf093fa4aad276e245", - "address": "lax1843xtn6zra5l56ugtfr66cr2lqhrk0ptpe945m" - }, - { - "private_key": "7785b5109390c41e16bfbfed16f53f7b577f1c9d79d355ad53ec9ace87ee5907", - "address": "lax1pwgmwvdslsfxnm9cfyf3m5s4xrueugye5qqcev" - }, - { - "private_key": "b61d65e68c43e2da3d2070187f423e4ac0b60cb6bac9c455a41f36d7908d6d72", - "address": "lax1cn86xt6t0h8fjt67peuyhne7x2l0jpzyqe8fpe" - }, - { - "private_key": "8b7caa6fd88625d5a90730dca60e0bd0690da4f3c3d789e18c559d897563d1af", - "address": "lax1q9jm35u049d7y5w6z5xhwfkfct2er9vavzt9s5" - }, - { - "private_key": "113d19d54b3f1abc06c2b0dfe341f71f5884b8c3d0570ab6ab3f9f8c3a9ce351", - "address": "lax1ntqxufhddv3c3w0gqxyw4952txa0qkdp2qtll8" - }, - { - "private_key": "1de972cb749b2f78c6aeea6a8e7966dc69a81f492e815c3803c4624d48d9e485", - "address": "lax1ry0g9hfeaymwgrwqfgs2pwujpl3p75j6wkv3h0" - }, - { - "private_key": "a931b8a056472c96b12cb5a71cf5468a68d6e555ac3df8612c3dc64fa13dbe3b", - "address": "lax1ahcf7faf06zpteukm8dmyj6mnjltv03gsfj86q" - }, - { - "private_key": "34dec2863c3b47f6966136343caecfb8f836b16776a061aaee6ffc034e3fe832", - "address": "lax1lhl4r8e5vdneuvmej00lmpeufnxc0tuw36502w" - }, - { - "private_key": "cc93640b79c18fc626e80c5d7f2ac8fc7e54f74a3a48531a2678c996e5e48231", - "address": "lax1sc2k3kwwzjy7acuhkagf693urkfyy0q6uhjtce" - }, - { - "private_key": "008a7473d9231a5745b9ae8cb376755b2ca867daf5777c20c41f6609d3c0bc84", - "address": "lax1dcphjpe274lcfgh8j3hqpz4mxf35nmnxx2nfa0" - }, - { - "private_key": "a2ca03e0497629d032bccbc2b806aee269e0f47147de39555923cea2a3d07f5b", - "address": "lax16tajpydcq9frzxqa904522pzr03vam9fjf2cs5" - }, - { - "private_key": "95371e8354e6e8bd7b29d637d41ce55795ae98032770979867b7821ee6587388", - "address": "lax1y7qy3nc522kh45k27lz3ps96mdfyzey87ef6th" - }, - { - "private_key": "316152e90250116895f8bad5e9b2a9b08f4b8314931d82d000942e85ae1794b7", - "address": "lax1hgfzc58sqt9du20uweantzpdhjdfm2yesnq999" - }, - { - "private_key": "db48aef43bb623eddceb88d7333a639772e40007d261dd12b1ecdaf735356e7e", - "address": "lax1vt4n8sup7scx6j7x38s9gy7sv2hntk7tqh5h8y" - }, - { - "private_key": "f9ab34d9b50791e4ad69e21d71075eadde3d2ad96a67e75b7ce3bf3e754e12dd", - "address": "lax1uw8p2p766rqq2zq832lywvgqvpxavw6gc7jtk0" - }, - { - "private_key": "8def4f68a210f1d01b991a308afe6f4605c4ce243a585cbb60b6abd2cfe61470", - "address": "lax1mzx5a4td7xjavyeq7ljelw40xdazmg2gzepmzq" - }, - { - "private_key": "445453c15bbc6f8706e09c831738861a28cbf564808e0fb661c51cd916ff1690", - "address": "lax1ge60gssnpdxxtfmt2uj5qqexzlqzfajz30rh5h" - }, - { - "private_key": "df2d2eb2b5e09085a278682ea78ad572ec1133d8663ea7f6dea7682a91df2e1b", - "address": "lax1yyr928y27z0s5xas2m768gf3vhxhakspulc52a" - }, - { - "private_key": "14dcb5be3e02e4a1f6aa3bd8f89923db6562a59bd7a36ae7c9eb8028d39144c5", - "address": "lax145g78u60ekcg3czngejs7m08r3fu8a0mt29gg4" - }, - { - "private_key": "7f0a68b881103600edb9e86d7fafdeeb7de89704042111b3e69eff31ffc6326e", - "address": "lax1gjdtkqmvr6th89agjrqtn3wurl7wk43ukp2tzz" - }, - { - "private_key": "710061c1cb1ff969c16f546bc075fba18a61bd1c8b9fc84f70a19980c53dc546", - "address": "lax1atgqk97fmkyht543tz3rdx708825m6qqnwvhw6" - }, - { - "private_key": "0b8aede0902752555d7168ef75146baeea73b6be504591aba321628184500ebc", - "address": "lax147g4ge93emkpxxprz0l5j3q488tj34sdrwsm2p" - }, - { - "private_key": "51b82ac23c48402e756be0c3c3ced3bf6d74126c648c0df5823e6a8bd86d5f00", - "address": "lax10mpqg46m8lmdyc740gexssh28w6xvu2aach7lc" - }, - { - "private_key": "931a16627a20ea70da6ad697d231e11b8d8cd0e8a576d8fbbeb96dff43280e21", - "address": "lax1nuspp3hfpcfty9umcjxyhdpajapwcufyhqmxu3" - }, - { - "private_key": "47650f6fc3508ffb5f6e8094c12600e947a48a2391ee19ecc8506ef7711388b3", - "address": "lax13cj8yvpwgjs4ncqu3v3yq9ky34yh86x0pt6ln9" - }, - { - "private_key": "5c32de5f9edb0181a9bbb6fc0a952600e78b95d8d5de4102f74745494f366f4b", - "address": "lax1ymawsjcnpeytndqy8ksyswnzand3laz46ghwp5" - }, - { - "private_key": "084122e13a43150aa92dbe177469ca3cf04d6e4bbb238d6030c4acb1338e0a52", - "address": "lax1rc32jtxrkm2chmyvr38djtxpc9dgq9xd296dtx" - }, - { - "private_key": "eb6f61eeb8e5e9f7c6993cb106c8f338107c68d20f29f3435b6f1be99ea24f96", - "address": "lax1yp2ux64u5wfxqhz5fqaprdvhvx6l6vd8vc5u48" - }, - { - "private_key": "b437a8b1c917e211b070d770c7b1178f87698264c0a5d966b6256e37575fe9df", - "address": "lax108y5kvyy6kvnha39sfwsd3h98t04rfhd9s94zs" - }, - { - "private_key": "1359522679137802fc8029eaa3715d0ff34adb92e5056b7a7809e304f39378bb", - "address": "lax1g05ux2ckw88psy5ralflyxjgeln2k4y23py7yd" - }, - { - "private_key": "112e6a8e4e9a068f969996ae62e37f350a3e8291991cc9a70a943f8f2660eab5", - "address": "lax1e2yeuyvn0n9alk55wc289s0hdvtryx0c0nxpk8" - }, - { - "private_key": "41c7154470792ae2a4ae7326651c68d0e5b45fdff6953972b2e227e6fd09ab61", - "address": "lax1r272znpw7hs5tmfg6vdcfzyaarjswtdrglgfey" - }, - { - "private_key": "882f06effb66928ae6c1a482e0690af040aa4c105c492b69f46efff8a03bf757", - "address": "lax1l9j58gzx8d73f67pu7p7x5ty6hf3yhc0rr2yxf" - }, - { - "private_key": "58afb8f0dbff5b63dbae61271aa5d71528eaef3902d75ce36a344f07bfcbc655", - "address": "lax1e94sjydm5xfdaxr2wplepdmhq3qlkrva2vysv4" - }, - { - "private_key": "656aa6ea265bb0ca02d047c442966e430b54d2d26f0b9f9cd81c20b8b36db73e", - "address": "lax14ndzmrurnq80xm4ml9mgtdpnvyj3pl7qmj7xdf" - }, - { - "private_key": "05fa44d6ab93d2c79883fcc4fbfee05ffe5e80858f001fa3d8095ed638f00aa7", - "address": "lax1qwlxet5x4cmhlne0srg946ufcap67t4k0mdxqf" - }, - { - "private_key": "1777ab27c139680cadc0f773f634efb58eb9638f077fc6a7d5a1c1cb86962d08", - "address": "lax1vxrldw02ary7ffh2e5e9d0yxftd5tq79ua9rq3" - }, - { - "private_key": "404821384cdb99c6182ee7ceb38da286634a8b585b2fbd514ceeccf14fe49188", - "address": "lax1z4e0mqf43lcvkq3kzswy2kj9zgumhrxx4er534" - }, - { - "private_key": "57ba45406f8ad22bbd3def3a87bd1d7a8dc30536dd61a7edab32a490db25ea52", - "address": "lax1gk5tl5py5ydkgyktx8zdndcz773nq3whhszr2p" - }, - { - "private_key": "82cf6e7cab8cfccf22aa60619249dbe931b861f6c55dbb8866886ce0c0c44722", - "address": "lax1syajcmd55vdl2m2k59zsr2mnd69lxch3k8wxz6" - }, - { - "private_key": "ba4f001b22d1f446845f887340e60fa145536c9911927b99f981e3eb17239607", - "address": "lax1etwxpcnjr9rg9qxl4qtm3f7g0p6hfhfdgxn9ke" - }, - { - "private_key": "e9ea8c929d90dd560f291c8e677b45c970d21301cfa423741f681d22cd35a404", - "address": "lax10nuwpyfz6spqtd4z9rzrsxcn3lmw6grv0qhjzw" - }, - { - "private_key": "96b39bc4b31967953be4b22692349b6dca3d46acabb59f2818b7537c4157aecf", - "address": "lax1rkc8wc3c2ta2nfze2glunn9a89vnl6nkusnevl" - }, - { - "private_key": "39deda1830a6560e4c805de2b241da4d524cdebe945ec976980523f4b578df51", - "address": "lax1rkhgxykcss7eyhhue4x3juj3t8hg2qvdk737vz" - }, - { - "private_key": "3046f74ecb6e0b9777de78861d38e13039431527bf0694e6d78b690c57ea3f98", - "address": "lax1vuux4g3gafh5k8j0gaql6amn7q0k02d55dnmrm" - }, - { - "private_key": "1139aceb89eba2f98fad1d38ba00b107757c0857824662fd3987e53601e0c8ad", - "address": "lax1wkdnf7wu65ulxxrluwrxpayzx2gyqykfn6swjx" - }, - { - "private_key": "a24a71419a34e50b715abe3798d16aa12d3bd13acb9031380be38100c75470fe", - "address": "lax1fs4vlf4e09mhl579q2paq4dgj52a794zv6utu2" - }, - { - "private_key": "d24b1a2da19fa14ae2de4e2f166e09e16a7f17fb707985ad8865df22c3f58fdc", - "address": "lax1uq0tmts3weks5psuxekj0fzp6vmdzlsrrc8vmq" - }, - { - "private_key": "9194154167e8a7273f0ae4dcf3b5e6e2e0e30abd57c7971dc40d0b94bc82dd2b", - "address": "lax1y04kq54m3gqwl64tkywed92mr5he88qdwzj599" - }, - { - "private_key": "7b6f4f9d723efa56f752adc9eec348865b9fdd2773d51ef454f4647f8a49e756", - "address": "lax15pan97l8f5gjwtqdg233yfz5kau99aj3vy69ap" - }, - { - "private_key": "aeda1e1396fd5f3f1fdaca4d43832f8293aef6ddf7c2bcb2d126610cbb00cce7", - "address": "lax1aum0z48epexg0jr567lrmkkzau6n8dal85lafh" - }, - { - "private_key": "51ab5ade14e011edd8d2a199d7d82360b5065256e6bf7377e4d6ad696fc0bd27", - "address": "lax1c8346cc7xadnl9km37hj0czadekz33ay4h3egy" - }, - { - "private_key": "551d599542a690591868f086c300b5759600bf97405a6753a5941999afdb5159", - "address": "lax1wukz7kttgu4wt9raj5kqvcuqaxwyh8cz2dfecc" - }, - { - "private_key": "bed3ecef8c6a9106e890303aa4b75c0b079bfeabbe0c92e184dc4ff13f32ef07", - "address": "lax1y2xqgzaj3t5rx5v53ux97gk9kwrqp4j882lwns" - }, - { - "private_key": "b4ed1d4922cd2d2f4ab4ec659cd6a3ef8771208650254f2320d6fcfb9ad55b3d", - "address": "lax10vmv3z3xm2f6x0205rjvspd0nrek0l8rguhwk5" - }, - { - "private_key": "b7eaa4125ad105f818e5e1e2f3df35aba61660d8b4f3e012efc6f8bd412301aa", - "address": "lax1h2qr33v8q5xxnsjee9r7hkyevuggprnzsudutc" - }, - { - "private_key": "dea946e4cd66bcd1b4913cd7105f6fc257f059bb70ee0251b31ae68effd4809c", - "address": "lax1fn42gn32qw8d38cdq3623w9wlytryt37mdhykz" - }, - { - "private_key": "ba8ac4e1dc05fc866f4e6614ab65c43ff9883648401eb881bdbb92e729fe1491", - "address": "lax1m8805q5hh2y8pv2q0rt9n0up7j4tdz5sfc4d92" - }, - { - "private_key": "1303ff9518547db045e04669eecc653020a81cbfd6ad747ee2ce5a884b22c749", - "address": "lax1ecym2erpwt7rxwfhqjawdfcp7sqe4gkcze5jv3" - }, - { - "private_key": "e3c362d79ad4ecea71544ac871fc2c78d030d04d4b609b34a2e524f4c74da9ef", - "address": "lax1f5qqscw9pzrve755y0yfk9mhtq6429zqegrac4" - }, - { - "private_key": "862c60bbc2e849bb46a21355f9c41ec0728d72079b054f5e861e73396a774b67", - "address": "lax1vf7w8mn89pjfwec9cl7hk5anh5fpxmjlw79kjh" - }, - { - "private_key": "68ac2b946e0a65d1232a9be0acfb3c0cf4ec301f6fdcbe9745075f6cc0b248d4", - "address": "lax195s8puu38rz5azsawgxnjag2ah88lz8vr5ygwq" - }, - { - "private_key": "3b11e5de48d1f2126ac5a578bcc193a64fe56f8e1039fc9c1debf49d08393803", - "address": "lax10mcz0hd03yvkv6emc9s70d69cc6wre4nx2ah78" - }, - { - "private_key": "6fedbbb74b4f6f590578eff573f9d6a8c78e1e59c8e22b3b480cd9f9d6e9037a", - "address": "lax1ffprwcv4sm3g0r0w83ffsrxga36dmzasuckkff" - }, - { - "private_key": "63f4fa2860badbed4e7d2c5d8effa4d561c4bc7d6f6964824bb518843712c7ee", - "address": "lax1et20fy3sh47z92e8suwx3av0mp5hlm4gml5s8j" - }, - { - "private_key": "6ebd250cba98733e185b12e9c673490b814ff9aceb56d3cfdf9b051ae991320e", - "address": "lax142nlf7rvq04sx2ldgeszpl7z053dqly9m9qr0r" - }, - { - "private_key": "ac15c14d25a75dfc883365b7584a48da3baf740ae78f4a0b2b20c558744d4eab", - "address": "lax157mxmx6m8mjlpaxj2jfsseflwr6zs8n0y6fv0k" - }, - { - "private_key": "2e72956e076f76f30a00fc7c5c38091f8043ee248f27bd50d55b1a6536ce5fcd", - "address": "lax17034vcynx542p6f80wxm6flq8wudpghp6d8xmy" - }, - { - "private_key": "116226329098b6606d0effd28d71e9766f18cc621bfc4735dc02d09fc8686469", - "address": "lax1xp90mqq8jdwfhjmewqerapce4mfzzc72sudmny" - }, - { - "private_key": "c6abdb857ad2aacc7d6858fed89b4a2fd1c0659152662ac9c3c183b2d3759d73", - "address": "lax14h8t9ycsh35rt424n364t245cvlrrk3f3j5myt" - }, - { - "private_key": "b5a9ee421e7f6f6a846cf6f8b94f48cbf920f181f7bb8e70baa71e177b3ccc64", - "address": "lax1cxtpk952k8c4yrledf9g30kmyylzy9fqzyh7hj" - }, - { - "private_key": "938af187fa0218f3a81623ef56b7418f6b8805914310549e011ef4ed16468908", - "address": "lax1d3agukt0ls77468mnnvr66uuzde2amlrdzy3s5" - }, - { - "private_key": "5ae1c37a77bfba0b0a7e1a14d45958e53006cf5f5ac22a09164df39ca9a36892", - "address": "lax19f25u7chfdnv56zmn4cdhmyqy05mfurjq0w3jv" - }, - { - "private_key": "147babbc2fc632179ac287fdbc8f8684d19035cfddb013902e834a86232b2d7d", - "address": "lax1qg2ny24pgw4d05zx83rkzsa4mterurxjwh80rj" - }, - { - "private_key": "84d0bc5834c0a8207c451c257160d3c1087539d4fe7f79574acf2e64736941a7", - "address": "lax177e5tmqesd0f3j0mhpujay87t5s7lrm0amrjjd" - }, - { - "private_key": "853fafd3481695f29a90d1cd402a9415d997b37b2067a3b8196d9c23a15ee5d2", - "address": "lax14rsg2chzq4z8eqgww06xrt4kdh9jdwl0d095f6" - }, - { - "private_key": "c7e6f63ee43090aaf5809c3356e240f9bba38c00b2ef1dbe0a041c9d853bb0b7", - "address": "lax15v82t9gkjezthar763pz9erymp97kwg8dn042z" - }, - { - "private_key": "058a5a0ba6b715363c0c076b499f561979c9114ed974858c09b4f7bc8cdf2504", - "address": "lax1v3c0zxlxselv08k0wzfl8xasejhjgvemqtguwm" - }, - { - "private_key": "15d57353d55e779e65a3294aff903f98af5e1e815d0abd240eeb33f8653d5577", - "address": "lax1x5t8qtmjclfuln82yhpq7mc6xqunkjcr6ngpr9" - }, - { - "private_key": "b3b46a884aa02fc8090a43e3de5d328101d366b65835376c0656ea2d37cd35ae", - "address": "lax180xh8ezvugd0u67e28daylu6nezettl0rf9wu9" - }, - { - "private_key": "5b3a9cfde61d765a510d07081defdb34d308a871dd4f0810bd139ed251b47ede", - "address": "lax18f70r9cavn6ujughvcdh23ezjysdulm28ak5de" - }, - { - "private_key": "d7351443c9423516389186476cdc95febf6f16a7bf645b6235cbd7592cce6f20", - "address": "lax1f680rsw360vc0krgcqgt6ywxhvgtjymxngkjls" - }, - { - "private_key": "bdc27d55b29eb3b969fa095b11a8fbbc3ea1dbc4ad104e87894de4acbb5ffee7", - "address": "lax1qsfsys5uzjxhlrkzhn8hlax4pl2hmw36w8pcwl" - }, - { - "private_key": "da3ca1abde058bfe496191cd75031c65c3f7524ce58092fcd066b7ac65d01a8c", - "address": "lax1cgc0cguq5a8j4r9zfssyfhm5fxq6w0urlkvder" - }, - { - "private_key": "6fb746b8bb24a3d72878ba96d2e9b8fd3e3a5fedee5714cf986d9b83abc77c16", - "address": "lax16j0r507ujacy279vddtk76df73h6mxpdyxa30p" - }, - { - "private_key": "8f767308bc2bef3f88b60449c160d6a749d91a2726f065c189dc66ef75d9a006", - "address": "lax1r595n9eg8zguanag2tej4yk5sktl69zhalaxcg" - }, - { - "private_key": "c959068e9bd4fb725edc57f397139ef8d6ffc6df102baf3baacbe136632618bc", - "address": "lax1xe0dmfcawq3mrn3s2zmd2dvsq0rj379wevn4j2" - }, - { - "private_key": "447813c2e9ea5b6a2e4d3252299d9017e821f3400d9539e7abb28052a0717d5f", - "address": "lax1j660audpsfafnexuqmy934vln7nklay423pyux" - }, - { - "private_key": "7a42f49a4ed2fdc8d5d37603adabf1fc425c44c7b8b432a7c5ee486ff27a864f", - "address": "lax13h6qzrqnwsa4xwl5x49hvjz25kdgkpvegswpru" - }, - { - "private_key": "3eba448864055f0b8c570419ae3ec27f248a20d9891cce261fefb059a53896c1", - "address": "lax1nk2dqksrfg32cp5useur3q2xstnue86p032333" - }, - { - "private_key": "4c37f4cc2960bcd7929ec7ff478a612db0c231e71a848af5773d6acf0e8bcb2a", - "address": "lax1jxvcgc5adaq7kz3w6r3nzj9dy9zt08h80hpvrf" - }, - { - "private_key": "3d19d559a5fa67a1484d052e22f57c40e2a263f6004eb3fea41c688e6a98ee51", - "address": "lax18htkxymhehmch7ytsjjega9jqhphq2ce6ngjxn" - }, - { - "private_key": "5038322ba3d9543720124ee9807a99ff54ed9518e2eadadef5b2ede9ad2906f1", - "address": "lax1y4xz3k2d6p2sgdu2t4queqkeuvvzqzqlqydsg2" - }, - { - "private_key": "0579c88e77c15cb1a09e6a03375c2e2212e93cfcf518d6aeb73d7cefc2dc90c7", - "address": "lax1xspgfyuey7rkhg5my2ynp29x60k6nsdclc6cwm" - }, - { - "private_key": "9bf3a97979d1e7e8c9308f8b6e0c4ec9458e60bc087346496d2216a91ce8ca98", - "address": "lax1jjzkkydkl333an6p636u7pwd3axzncxcgjk7up" - }, - { - "private_key": "8037af01742e941bcf39dde74dfc32df5ea29106823739d9d87917fc0cabaf1b", - "address": "lax15y6arn2xylrsxq4schmzynn4h9glvwm8rstqw5" - }, - { - "private_key": "313188febad7e69873f391b21a9e4ab27dd7d2c8c6c652561088d3474cf3d867", - "address": "lax1wj2grn9mpq89jvyshwvrkzgy0ltgd2xkal0lv0" - }, - { - "private_key": "2e41042ce35032baf121a800028bd81a165cd50ea2defed19c75f19f737e70d1", - "address": "lax1ketd880lk2yfrvg3pv552pqluhs2v55ncyv0nl" - }, - { - "private_key": "0a3873536038734e029db6822ab409fb4799da9132fadfe8dc9945c34e6da9e5", - "address": "lax19gw4sku6ggl59ldg88qracl38x9jret6zng4l5" - }, - { - "private_key": "5ff450aa8ba2d913558e55d320bcc1df4159ffa3f9cc481f4c174f00dce1311e", - "address": "lax1kt6hak8ytkezd8zm2zmu4cdr8gl2szr2txcpuu" - }, - { - "private_key": "402646cb3909cfd8db70398d5cecd35552620652fd2c84dbe2451e4c45009f96", - "address": "lax1afwru7v2zn7h70ftcgrduwwdpumvl5pw69ml7r" - }, - { - "private_key": "eb6114afb80a4e8c4b753eda92e1a1be33ae72cb926066c1f8f7cd185f6fb485", - "address": "lax1l4g54nckd970dtd9zefs3vky00qd5kmt2dgmma" - }, - { - "private_key": "e96572f0f3a39feb74e55529fcd387ce850e3c1d0e25e65172d3e41d42415c25", - "address": "lax1l0hq4tsz9n65l6dgffugxdyqk5v9kcj58dqlyg" - }, - { - "private_key": "0522a04b07c2c9f6b786f0d95c843450b30ffe9d8dd110ad3ef4032c3a380829", - "address": "lax1f0zvfgsnxwmvr04m5m2h53qfqm4dnksv3f2nfe" - }, - { - "private_key": "ba5da1fb457141833b5040ee44a59562fdc14e6f0ee566fc7c50ddd5003185e7", - "address": "lax1ap6f0zkw09cdx2nfecap2xsrpy2qcue3xtyx7n" - }, - { - "private_key": "d5abb06f694031f24ff90074537144fa6e04a1dfc832a53e8ebc6f3c2ba93073", - "address": "lax1ut3nyq4yzt4gd34x6zsz97z5gpj8zz63l6jnq5" - }, - { - "private_key": "6e279a79b9de6e364d3d8b3d896a23029f0cdea551aaa86c548fb3e0905bb174", - "address": "lax15x97erhn8904apzwm5pf3ar0jemmzmq6936xpf" - }, - { - "private_key": "253acf62e724c1f07eaa29c3ef25b288abf3af140113c2c6d2fdacd4da318822", - "address": "lax10xzx7l5age53c0a7g8tky9vd2vpv6lkdwpcmwg" - }, - { - "private_key": "b97a94eb0c9653eab9d250239563ad979c7f152ef6ce3cc3bbe614573e71b926", - "address": "lax17n75z0uy77ae6wke6dafwzrms4zaxmar6j9t7n" - }, - { - "private_key": "01436081931a961d4404519ff6f947f7ec88adf2455d48f6d600d4f4159b3f33", - "address": "lax1m4v6jp00rwp9xs4kz0qux6gvy623p47707c9hh" - }, - { - "private_key": "9f262a7fef0e2bc00c3e25bde972b9beb921b6810c5c5c4b1f12653feb89cddc", - "address": "lax18wzejylzm8q2q4zaz6n0378748aujp67wkssgn" - }, - { - "private_key": "2bc4731928edc3ebb562863b21838494c34d56f28fa790fc4a59c611a2eac25c", - "address": "lax1wwttzlxyj88txmnr3c5pzxurc58nxffxuxgp8z" - }, - { - "private_key": "e8819e16a65b99d7058b6655f6e6659685f5745d4fe2e195eee046c678aef5e6", - "address": "lax15005tpntnue3es6nxqp668pa56ah5nk3gj9lpc" - }, - { - "private_key": "eb75f824fca5c5da0cc6305366ce87cad96acd15fc3e0111e103e495883816b7", - "address": "lax1zst8dnx82at5evhf464du6wn083t8xqpce2qms" - }, - { - "private_key": "a37575cb49640152b29ac58ccd814045b5b7d7c72a21543b6abf8f6026b8a834", - "address": "lax1kw0v8ak867gkrr7rlmrgx0f745wxf0eudwae5l" - }, - { - "private_key": "b7f90373b94bb2a134b1bce043ddc89bc61c5128574f4ccf4e21d5150123cb55", - "address": "lax1xvklvf55q5rt9de9k5cjfqun83g4k6uwzjq88g" - }, - { - "private_key": "8713e7e6ddecaecfb2ef1ef3b90cfb363afaa50cecb2434d42f7dad961fd9322", - "address": "lax1lunl7dkfuywrxp9mkffq6d7jga2wp8y9nfxprd" - }, - { - "private_key": "b539ace97c467fa799f6b10f7a05fe739c215c4c32d8c642f39413f6a1f00573", - "address": "lax13u9xlwarznfulrdkrj07xhpnsf88nafhux0qkg" - }, - { - "private_key": "beff1ef58d27cf6cdbff47bd1ea1cc043562ab967a3668d7db7139b6b648e4ea", - "address": "lax1krt6a0q0e6wahp6vukt9u09rq9jcscd6nd7kuc" - }, - { - "private_key": "1312a3cefce25de250c1d6bb04854a544cae9211fa4c1a8aeeed416db2105435", - "address": "lax17kev07z6509jn8e3rdk2e6epcdynel64vt3zaa" - }, - { - "private_key": "d350058e5eb9ef4169fb2703951d997a5208ae3c0ce2acfc17fcb0504ed52c5a", - "address": "lax12ehxmt03j7azk08xhuul087nrvqrnqwlxmhe7r" - }, - { - "private_key": "8126e68858ae9ce17cace8042932c7ce042261693a8c7ec61ed18eff4449e611", - "address": "lax1449wap0alw5g3alykzwr0mcrgev7k84hwcd39c" - }, - { - "private_key": "f1ea6a0d8c39f8a26ce20b1072b742627ad271a5b80e5611a90bf208be92f3aa", - "address": "lax1fptj6342a058evwp4v3gxjecpyh7fv6an6l83a" - }, - { - "private_key": "f9ddc37e2e7c2337e45def48997fd8a601de083fb6ca3492a0602bce768b5a15", - "address": "lax1sshthxsyc2vx2hmstrd2g2wjals2m6phxxk5u3" - }, - { - "private_key": "0936d9e4d23ee0cdbceb073802f172afbd4325c6c78aa8113eba87b2e572e8c7", - "address": "lax1p8ypp29r5gugk0w6jwqu5kr77mq8873j0ar7ww" - }, - { - "private_key": "1cc0284d16c0296530aab14ccb6bfbe798f9ea0c2247bcfe9161c1a195666afa", - "address": "lax13hjs94dk26lwaduglx4qjnsa3dq0clwerw7myt" - }, - { - "private_key": "f6b4b6ff8101ae177007ed85ee9090f9c353f52c7e4154d43009f2ec093dccc4", - "address": "lax1hedtje4f8hem00nvd2m5hh99qq5smvpkq7eh6s" - }, - { - "private_key": "96ccc7926d11168dfc2302164165d385f14098e5a10845a3355b8ffc1500707e", - "address": "lax1n65mpr4gsycx3cm8wgqslzcukrjfcrqy3gheca" - }, - { - "private_key": "35831a14e257a983f209436cf785a63bf05d7cf9eac86c7fd7abb711b114e6c4", - "address": "lax1evrncqqaymsjcsc4nn03je4xnzr5qe2zllxval" - }, - { - "private_key": "469e1e67925f6bb4b3d69790c8815b9e589a49b5496c4f7ecd3b9c25679167f1", - "address": "lax12x3s8v6cl7qs98deml87jlm87jjz2p0lrs63rx" - }, - { - "private_key": "fd5b4da0964d5e1bf6a0eb15a4e6483404d9a8cbc2629902382168894e9aa3b8", - "address": "lax1eqmzfaqvwahp5rw90d96urxa5fr2c6gd0tqsmh" - }, - { - "private_key": "eaedf4119abb034dd9bc6f1bfe7defa087a23b82efbe171a4cfac5f85c7a6c6e", - "address": "lax15tth3eynup9x8k9nq0h55jfzrcnn0j83ekspca" - }, - { - "private_key": "cd948b2242c29df4cc41cecabf2d50840235c9553d60df79decf536de43c8fd2", - "address": "lax15yk2jh2mmh4ydzqrl7efctk2v6268xuqrmjtjz" - }, - { - "private_key": "fa3592554f6f4b5e63356e075a017982b9a50484ad75ae09e842503f23001ec1", - "address": "lax1csaczygf00ytefgwy3cv6usm2lz4j2f9n5y6j2" - }, - { - "private_key": "16f570d1e88c56836d33f9ec113b978e3748b6d06f197fd3792454eed9669fe9", - "address": "lax1pg5c0ph6zz3hcyrdfqw5znrmdrwj7s69c7j0k5" - }, - { - "private_key": "834dde03fe362e3de8f224be9257341a39b3dd9c216533bec3adf0c8d930551a", - "address": "lax1kw7rgyz6g588qp2skedzecw2e3ykljr64m4px2" - }, - { - "private_key": "6af4054e2f5c6fffe4c2f2898c1c71f7a6af0fc990c3b26fc0b20e30f5c26e2e", - "address": "lax1wzkny8vwv6eexwkwz6w2kfshp4vpauutl80hr5" - }, - { - "private_key": "e8f7414284d329de7001efad497228c92de0cb0f35446a853098237363d60b41", - "address": "lax1c9jeeu9s6afu5tyvj863d5x9ytjzkklx5fp07e" - }, - { - "private_key": "ffb6436f67849b04bdd58f5afefa70d40122567fa1aa6107a39c997274782ff3", - "address": "lax1yjz75qhz4fllpy0wpsjd604w90j03dj3hvplxn" - }, - { - "private_key": "7388c85ab963947659580646c1fc1e9ae920e323c3af5cb02852b7e8dcc0f78e", - "address": "lax1svqke5tszj8k9ytlnc0g562csv8c7r690zv0rx" - }, - { - "private_key": "ee793177df0a9a52fb856c6d79fd33c5918c8a1605e189ff0745d0b0ef025c5f", - "address": "lax10d2ssj06ld58exh58quvr8up89x3ue9rxw9ddy" - }, - { - "private_key": "b8e1783386d31ec8dd1aa208fb5bf7df8dfc12c0d75986e2a74744ab2edc09ce", - "address": "lax1qylnz4chxk82lxa3gwxc766mn74la9v7ee6ugt" - }, - { - "private_key": "afa925ef732ba6786feb8684392308313cc116b21daaa51aee1a5757725325b8", - "address": "lax1hruaz2qnjy7dkn67cj3akw4kf7v78x5mw227qc" - }, - { - "private_key": "d8497dbb4989ec8e38f98ec7e34f86e76273fcdc4e3cff4b3fa6583530da93df", - "address": "lax1a7pl7ehkrjahqr0wguszqd82t76zry4l98xl53" - }, - { - "private_key": "b6f9a069b2f0ac37823951605474d3c909d1c2ecb5b7bc3ee24156f21b3fe4b4", - "address": "lax134qqju8ekjlf3u5n3th8crdsynkj7p234qma3g" - }, - { - "private_key": "1dd608b53eff5a46845a55011a845d6ba0838f2d00cecd68a4b87c52520cb2e6", - "address": "lax16eec2ta7cklx48sr58d3rn2yskqg62kun7c0ma" - }, - { - "private_key": "9a918563693468bdb3603dcda5852b8a64a0c5e54c5a8727069323452d545ac8", - "address": "lax1mcvy3wmt4zvzxlh0haa8ar8488240tt2gtk3v7" - }, - { - "private_key": "e2abe576874e62fc7189ed113038b202edb651ac3823e3d37da0f2a1e8bfcc99", - "address": "lax18dwm9y2nmlrltjhspr8c24myjna94hs3cj6va4" - }, - { - "private_key": "d3d961028fa8bceafecb84f52ef69df09aa5a2cc0db7c07e65041b506eab8cfb", - "address": "lax15jdstsh9htkpfuaks5ffzp9xwpjnhte8pj5tfs" - }, - { - "private_key": "4792800ab7e706c6315a6417dca449e7e549db022521c6a534b338e8632708ab", - "address": "lax1t2yrw462w89y4uv2jsdgt5wk4fh2uu0t64ke74" - }, - { - "private_key": "2b1b9de065ce8d538dc447727e4b9abdd9fd3f48b00b0c5ca68317d6a276ec6e", - "address": "lax1rjgkx0hu33xh625gak5y33xejla9sywyupsaje" - }, - { - "private_key": "cd3a35faa982c6f3b256e27df3b38d452afe06c2d6f0e200926ee3bf1e36c75f", - "address": "lax1dx7kk8v03hp4cmz4292grra48fzc4mg5huq8kv" - }, - { - "private_key": "ab972f01f738426e8d6c28ca8fb6be22b7b656024876a364a8560aa8dbb8932b", - "address": "lax1fpn88szwmdhdepl4tkffy7lf3ncvxt8se7y5jw" - }, - { - "private_key": "f3e29a8b83adaaee2054ceb929aebd491ad149dcbacb12744d694f3b3c41d350", - "address": "lax1r8e38q7jg6fwfy5amsmv5hy9xzcmfkyz4rlq5z" - }, - { - "private_key": "9903b769a8ef2edfda84a62a847ddcbd79eeeaa292f9b06a9ca0d8981581ee4a", - "address": "lax1t9g4ldvmphnqfyslsjrkruz0ghpgvvkj49un9u" - }, - { - "private_key": "5c59f41cd529f6d69d31c9daa15940f9a3b544234f55c3814c5e6dd2b3338d12", - "address": "lax1f46yzcmphxmuum9f0ycxgawhswnv9mh640v992" - }, - { - "private_key": "e5274279e7c7c51b2f86a5ff3a6e8b8d2a81b09379e8f5a7306a78ccba128f6c", - "address": "lax1qtnfa830lcjay6mlezn20aj7aeuukez0su734w" - }, - { - "private_key": "79bdcae1ac1e902a31dee84d3582e75ffcf4e7d46dabdd8e6ed9979541318c37", - "address": "lax1m4uyj2qw32jk68zjq8ttcywa4xk377kdrqgex9" - }, - { - "private_key": "4c6467a679b212df5cbffe2570db46d5d3e0eb3d4cdcc0e7b30416b840c07acc", - "address": "lax1fs6wkqktzw5p7ad9xmakr9c5y2jlxl4srkhm09" - }, - { - "private_key": "108c22a17955419899479556ac7d8ab796bc84a73b50e584569ecec4ecdc7dbd", - "address": "lax1h87dy8kt08794v6myck7erhs0rkwaq60hfxzyq" - }, - { - "private_key": "2f3a4ac41315ae86c1d0339f2486591f6472fd4d023936fd9d064bba33d7e336", - "address": "lax1qyss6f3gny28qazqdaj68el0ppfks99v3kuk89" - }, - { - "private_key": "f0c1b435f6142a178f9b946e9ae6c578590c2c6dfe6854b67824e6c4eba5358d", - "address": "lax1fkc98pgvppcu4npwa7z65aj977mntwnjledecg" - }, - { - "private_key": "7fd3ec4a8cfd6031d3b760f7dcbd605790ac056e8d0169699ebd6f524661f7a3", - "address": "lax1vkey3zs0dqln3x9p9fn7v4x6una5jmruy3jy87" - }, - { - "private_key": "1ca3128b236db50203df7f028c33bad949b69826df91bf8a6273faff65b78567", - "address": "lax13vcpsmw9999wgjnv27p5ddszrgp57wuf9vsc48" - }, - { - "private_key": "eed1f40d69f5017593a7d0ee98ebf39fbbc3a84616339e283258e021b7e0503f", - "address": "lax1wxg2ks5vst9e888m2gqpt5vfveh07ltzrfffyx" - }, - { - "private_key": "ee4612be5f1cfca8f6869047faa018304a5f07f0a33deed38536a092bab03947", - "address": "lax1943t6grfj36aqqty7wejvcahs9cya9wllfpejj" - }, - { - "private_key": "42d459fe42ac88d69f0f49694f5f64a583f3ff7f296f240101819e945f3e8c2a", - "address": "lax1kfeeddv5ngmz0ykh5zucy9d4ls6rl2czd8p2ap" - }, - { - "private_key": "011d1b940ce7153164aa4c4cb5c5d046183ea5bd1fd88e07f038b41f559a3656", - "address": "lax1l6hjm72vydrrj6yq5us5z46lnrjgrc7luwnvuq" - }, - { - "private_key": "bd1538ecd0f7c526ca4ba9f06ef85446892cda765acb4a521fb0353eec2bbcf9", - "address": "lax1nram4fhtlmnaptmlwx4edp24tdfwh0hxq392j7" - }, - { - "private_key": "630e41b2a5c037e31673fbf2a51639158d22a3e225890f659a9b58a43e4998cd", - "address": "lax1ekw65thlr55rvnufcgxvmz24efqsz3alx5s5zs" - }, - { - "private_key": "ece57dc163c85b3a540acad19cb2f72831d8a271fe20714960a351a9e8d2686b", - "address": "lax1n4zs0plkhyv4djna6pv7edvfsdephthcfgy0qy" - }, - { - "private_key": "0414ee21b95e64e30bc340a6580bbfa5d584064cbd256c6fcd66e13ba7158535", - "address": "lax10ycttc2dk4tmyg65fyq3pje2rct9fvhtkc8s3f" - }, - { - "private_key": "6815d961ec52b7f804a022222324ab7e68a900d85af96855b9d3fe52e93cefc8", - "address": "lax15602xwvarnhklqw33yfse3lm5ehuq8n0n6xnwq" - }, - { - "private_key": "3090ab85e0b72108657c8ed865d3f85fa22c31b9ab59808745e8904d67698bc0", - "address": "lax176n5yezpeaclv5htqjep7c0qdj6w30qpkjhg9u" - }, - { - "private_key": "d2318be24e1f1aee3bee182cc02d3e891ce9333f5b94426c53b570b47b7d6712", - "address": "lax1n5fvxtes8f5dkxsgkcjc0rrld770sn4mgthlpv" - }, - { - "private_key": "3459d48613f192b7a8e1514d38f6596711a6394c279d6b5a32e1d4b763ddcea4", - "address": "lax1d7mp4d5uk6sms9y2pe0za7ehy4plpc0eycwgkk" - }, - { - "private_key": "3d0f86c065060e5d70bc2f461d414d2b349da2165a64acdf3cd2c90cd5c0e1d0", - "address": "lax1amthey9mljjnkr96rnpj20a59um9x67aaj2x20" - }, - { - "private_key": "673486bd4cba7b625676dc8ce5dcc72dbac86ae44c2a135e0e0bb1ea69db68f4", - "address": "lax1ru6hy0x5m3qcxnh948k5gk0p8l9ncgq5fuh9qc" - }, - { - "private_key": "9087a628409cfc3fd54a79de5f666bec4e5ccb742c2e5e071c4c723959ad5807", - "address": "lax14cc9apkd3hyxn29ycl9ehd5xcgx8q3eaefgmzz" - }, - { - "private_key": "35a052207921d171b8a8a67f67367b1bc972422aff57c0e51328ee9c542d77fc", - "address": "lax1l2ykc0p4wgue2y4lcqulh4wdeek2nf98d4xf5s" - }, - { - "private_key": "e0a688e74e8a54f7981fdd2b293775ce1ee6e966dceb0981461f65383d7d6b9b", - "address": "lax1gkz355rssr3uh9ac7kr382jrqnqm7906lkj8ug" - }, - { - "private_key": "2e719c4d965de91874debc28b57cdc3209aae1defa85b3c2e3247f31a3c72ef9", - "address": "lax1vnx9gy4fqlexwg4qp9lf2y8gufh8rcwww4xupw" - }, - { - "private_key": "9f498f36a2d9338659e834b8df51ac8f13972d387f552b885b7a4e1b4da8a693", - "address": "lax107tgffm7xujplgcrvjaq9gyrvuzrz2cdh5g7wh" - }, - { - "private_key": "7f4dc3b87aa309f28f3408fcba98effa4cf81e333c923534699a25dd91459a7f", - "address": "lax14yrll6527nkz9zqj5sp89fwn0pks473dklvgzk" - }, - { - "private_key": "5ff51b5133b5109ba5ac14a72b314127f2594c085f1a1abebe37b04ed396d3bd", - "address": "lax176e8dp70r2wprwh2jcy6s5tzksz4vn6797w4at" - }, - { - "private_key": "6c7245217baab4deca0c7935ab0adfe2c331d7fb7627d38cb67ba4016354c89a", - "address": "lax1wyv68dly35xcu6gxwfkaeslgj3qdffjqk3w2fa" - }, - { - "private_key": "4818d98b8c401021b681882f007d909d388dc7db4e23e8ac96867fa8876d3b23", - "address": "lax1qxymawl3c3w6n96sht4pyn5xm20j0jahc3rjzj" - }, - { - "private_key": "a173285f5b479d56f2f3000f8cf75228a3846ecb97d212614f7cbfae72a9b55d", - "address": "lax1xg4vw0lh40ffcemmnemmlgs0dm78crdeacnaq5" - }, - { - "private_key": "986d5b14b5ed0ebf2d44ee8c8833ea274adb710544dbd0f70aa2aca50d31c8d9", - "address": "lax1a92lpzf54m0hf8fpk3ys0dzpvdungcxhcfjrns" - }, - { - "private_key": "6d148852285ded562ab11f43c71d6bd05a246f3d6e9ae2134af50203b449579a", - "address": "lax1c9yaw7w4amv8qzw8prhd7j8hmhsv8rqhjn0q60" - }, - { - "private_key": "3014560c651e6686384546322f642f37c70159ef574d025aebc6b2e2a7114a29", - "address": "lax10kw4pxq9wruewuuqqr62gsdr4py49547un5ghz" - }, - { - "private_key": "d1fa39709aae304481e767b5e5ee8d6c3c682e11ee3f2ad2b7d93632eba97c56", - "address": "lax1tt5fcu9w26cq2rs03gzr4rhgsdwpc62ur6jzre" - }, - { - "private_key": "dfbf0ca85ef0a088cb0a717996406a8a72c7c62a3eef7d4512f209a7ed6bc3c7", - "address": "lax1qrffj7ye623s4lz669f7zy78nqz3rsymklr4hr" - }, - { - "private_key": "89177434f766267c204830bb4afee6d6c7fad8823db701258761626b44210c02", - "address": "lax13y56m40pqqprrqjlce95fr7kwx5uaql7uf28sk" - }, - { - "private_key": "a89c7a9180fa3cdd6124550ea37c54dcf554d44523bf4773c746cc81249d50e1", - "address": "lax1xuu69whymt66u5ka9zws8xrlqjermzd5gwpj35" - }, - { - "private_key": "c81cac3fe3f37e3235e8c4018a4f64de393275eb5298f87915124581dc687c21", - "address": "lax1w4ww2dmp42z43v7gpgnll3e6ge2quvqjfv230r" - }, - { - "private_key": "530d1f1fd9ceda62d8c7d529cdaaac388463297dab66002028839b2556a7487b", - "address": "lax1dnvq89rvh0hrglp23sq3pl8pd6jsjxys72qpn5" - }, - { - "private_key": "03cd8917dc49a0bf22f58631252a8e6543d7e4212fcf0c77acdc033a8f822c44", - "address": "lax12fwfm3tkzzer55cq4xcuxy4x48aar45qe7xwne" - }, - { - "private_key": "c0940bd4d2e5c97cc7bdab6afaccebb2ef7c25e60a40a674d201186fa7c9e188", - "address": "lax1meuuahzfnvpzgvs4xj0s86n2zpa453fxdxdv6e" - }, - { - "private_key": "89e5bb51c9c88a2d54b6915fe3990f6f934cfd96f7a62279bd77bdf969238a12", - "address": "lax106slxuauny6a2rqqcx07taqm935tz7pv8zvqj2" - }, - { - "private_key": "8440901c4faa5caa1c7328aa60b215fc1c679d625a80425c91ef35eb6fff2f5f", - "address": "lax1euxh4uc49clmvkwqeazhjra8e3qtjqnwaeu5wf" - }, - { - "private_key": "c9cd1c7408005bae24f44eaa50395ef53ab278589954d55d92e8feaa1dc8b214", - "address": "lax1ynwhl454alaqmv7uq4tuewdxxc957qqc6sze63" - }, - { - "private_key": "0ac276d71e0e6c42e74fa5c3aa62b9d9a6e66a6083a9576249f2b5b169629a32", - "address": "lax17xtr765zkcqqj09w6cdcw44wahwazeh7t0qnnn" - }, - { - "private_key": "c22937f4170c8155d3ccc68670214fb9527d3d06dc2dced04b29b561863995d4", - "address": "lax1j3755uag5r7za6ycnseft8n6t0r6rvfc7xl53k" - }, - { - "private_key": "62d4953c1a76bd33f97fab0138208c117ef96183a56da66d26859e1a95c6e5d2", - "address": "lax17n7cehzts0sduvuxxsr97s30ya2dfsge5spurw" - }, - { - "private_key": "5410dd57a978f1cd57c62e0ee2857045ed52c6467059721273185113c980b9cf", - "address": "lax1lsgaa4gpsxqezfrnd3tu73zv5evr3736ev6rfa" - }, - { - "private_key": "1a990e5fb45fcae81362bcf88d0692acbd849254475c7f8c5c51c21aec84479a", - "address": "lax1kwrxlxlkxd3zhz9nlqllzcwwmy0rfkezddstjk" - }, - { - "private_key": "acd36180a2b75ae641e918fc7770538db7139a5be85f57b6815b628fb410bad6", - "address": "lax1ge5r77ql0kengu2jlsrnj3m02hrggefxzcr6z0" - }, - { - "private_key": "3f285e63c427168ed41128f1de45d24e309383165bc01cba627b89ec824f8367", - "address": "lax1xh03h4qrg0w9ndhzm336v6kn2gyk6any8w3jdf" - }, - { - "private_key": "50fa1257ffa160cdd592246c718b976e29358030c33976b8ea9e4631dd6757b7", - "address": "lax1zsghnhez9qjqfnkhacwv3qw6x0vyy9y4rt49v2" - }, - { - "private_key": "95b20e79c8b151f0247589796ed858e1a1e12069c268c3fb03e7f0a769873a7e", - "address": "lax12h4tsyqk9kpp7t2dnczvje8qq9y94fhkqmtvfg" - }, - { - "private_key": "da802ca61dfd4d1fef1cffeca5c6034b7d68f601eca99c65d31ce3e0a588b7fa", - "address": "lax1lfja3w3g3790d7er7a3dthavkp6u9mvdpnceft" - }, - { - "private_key": "0645456756a036e2f4e25304a29faff64c6bcbb15f160c7b1216165b0327166a", - "address": "lax1fn9n6m2rnvg3npdr5lshqsa7epv5kq5207x2fc" - }, - { - "private_key": "3de0e4a9974b63ac966ab8f45575e84195ca9c71b4b6519726637fbd20aa0c3b", - "address": "lax1y7znpxmrcmylzacme0ryl0alvuqvvrv6pxggpf" - }, - { - "private_key": "b7d45965e90cfeb7a751509a3729a45376e6ab73db737621d7f666a9acc87a72", - "address": "lax1g2u3zzf0sxjery5meg4dfdclcgkeavnr69u8el" - }, - { - "private_key": "5f449ddb28ed4d3e625e4aa6563f8095d00b3956b14ffb3ff8396f2b2f98a324", - "address": "lax1cx4ldmg9klt6ayvzkxxuj4dcr27v6wn9l53w0m" - }, - { - "private_key": "afbe6749e562223ad05e05653048b9e991c51d535ac934d5c0de8e30ae386794", - "address": "lax1kkynzqxawfx6cwwl7vt5mq7qrh96nzggchzmpy" - }, - { - "private_key": "f3def5092cd25f1200107e4fe030400a4fb5eb4d7a38e7175087e1ba9c741e16", - "address": "lax13m8ahfy57tj5pk4yclgdr4jhfv04r6f8aln02m" - }, - { - "private_key": "c741b57c6895f5d5d8ac43895a53df5268f495d9f255fb84c3ad61ca7f782e52", - "address": "lax139juy6xs7y0hxdg08rxvycvv26v42h5hahgc3m" - }, - { - "private_key": "4731371571b510522180839abc0a4e0dc124f3c2d17fa6bd8aa3b4388d6a9475", - "address": "lax1y37malspz2apny57h7seh5qv7j05h3kn3spj6f" - }, - { - "private_key": "a49a037e5cee284af9ece4f17bea864e06c67be4296013a04c874e9b266b1af3", - "address": "lax17gnrv87u8v55qjzylaugpljgpff6dcyy2ae3zc" - }, - { - "private_key": "682af73d07d7317d8c846e7503b4f1b65261659ddef7ae50e7589042aa62ade5", - "address": "lax1zu5tmkf0mcnz9ke9drwen7qttq5mtsctypdc5p" - }, - { - "private_key": "bd868e802bf6ae4a1e0601eb342a52e4377bf625ba83f05ceb1fd49e3fa02a76", - "address": "lax1qaetlcef3tp7cfsqxeh8nlsu0a8vg2e6v4zfwk" - }, - { - "private_key": "06d62d7d7906cda3ccb3d110aa0ef0306761b91522b70ae3122e8ad0a8bee59f", - "address": "lax1q7u2d3v3wpd683qj6kxvprsx264kj52e60mhjr" - }, - { - "private_key": "68d341953cd5f2e478d1db9f64aa994836675c3cb054ae4a6a496814048994d5", - "address": "lax1sqygc9xftcsld3gr4a7dl2s96ttd7n5nsmmpmu" - }, - { - "private_key": "53a397435e9b8891ed77120cacebbdbdc7e6c31a3b6538029da6bc89fcc082f2", - "address": "lax1m94f4scadw7why45w957m76wesvg4zu7ewmsnn" - }, - { - "private_key": "082ce10e52c4279370331c06795ea01e65364c298e8653047b35f815baaa7b1b", - "address": "lax1wyqeqxxyeylp0yne4wljszvt3sa4tq96xut0n3" - }, - { - "private_key": "d8add7dafd393827072ba81b17787fe06db5dc3a73bea99e1885cf0d77d7d2ad", - "address": "lax1p60t9gh3ud88arwaxdgwlgazlr0lgr8jmzmxre" - }, - { - "private_key": "5c136a309d18e0ded915b74f0a28abf92f67ee27f883b5a70ccf1683470c6730", - "address": "lax1096ay7jdnvlhsm7efa75efkv0vp6t23awu5lqn" - }, - { - "private_key": "ce24df43de26c56e689bbeed10981716234d8cd66bddbe3c8a8c1e816ca315a0", - "address": "lax19jqd4wju5z82ashe4g2e42ehp758uf6e76ra2m" - }, - { - "private_key": "ee3f43cafe7173372ded46a2b602ecc5d9bce90465c6b43937703a953e7209d0", - "address": "lax14nrlv9358al9nv3ywk0jxq0m22ncfrg43yudd3" - }, - { - "private_key": "56c999104d8dd5b7fe9e67aa5fe829feb0178dc48f6dc66dea43948426fa639b", - "address": "lax19pajglrluj8gnt4qn3phgasd2fl5z6l9y25kze" - }, - { - "private_key": "74bef21611bf1d55b7d937fd66c52acaecad294cc42ca9b7607edc2bbb889845", - "address": "lax1jlz3a8jfk42ke8p28uxj2js33zgghvucc2uw9s" - }, - { - "private_key": "dd78d455ebb4dc9b3466ebed991c84a7a7657b2627e96f3c9beb7f542e81c5dc", - "address": "lax1smj247cx3lt2yaw6f0se9t089v956mcpuz0y55" - }, - { - "private_key": "64b643ccd6c5012833295847bf4844c4bcdedce306b5736bb2e8b6790662ee6d", - "address": "lax1gc9ds3c2ahh9g0fktd58l56lgucra8d344erp3" - }, - { - "private_key": "5c777c9717f1e52aef9d33e6cc9eee1708e74524fbaeb9b6bb867623321e41d0", - "address": "lax1vwju0tetnyama37wp2e84tt6f6x9j6rx8y56az" - }, - { - "private_key": "b64ac19fb733af108c017706548d358cbef97fe94b3349e929909511fab3d4b8", - "address": "lax12yj8vj7cwuuuxkxngtthmykczhz2uppycwu8qk" - }, - { - "private_key": "6b966ff22a72c8ba3e7fc7b048748e564c60f465c040f85f6495e5480016e1b3", - "address": "lax12a9eevmydhfst8jjfsrsm635ngyx73aux7kdun" - }, - { - "private_key": "ba7462a7af133097e749772230da09c4607b6126a2dfd45d79b0d2eb401c9705", - "address": "lax1sxau5wrltfylvfyej3phuc9eeeyh5hz4k7tld5" - }, - { - "private_key": "86ca526881308decb0324a4a02bbee85bb5126358f9ad518a095352e5c9dc5bc", - "address": "lax1w0pq7zefrvwcmg8h600jdly29n9h3vlld5hc8n" - }, - { - "private_key": "2fc0d938b270373ca0ac293d29e334c64d04d2d990c701f9c1ce45337a3e04fe", - "address": "lax18s57sy3qluez6z3u7rsuwgrl3sn8lydfu6hv4c" - }, - { - "private_key": "8d1046b8f3309c487a8fe4d91b9a4a53e5e3857f0dca0cef993fe97e64755652", - "address": "lax1rg55f5rql5mnjfk2pdvcj69p0pmeqv7mcml8fe" - }, - { - "private_key": "5be1cd23e6d52d6b4d8bd4c98595709607d8d85f1ff2542307160bb72703e2da", - "address": "lax1fcnaus7nl3vu5mgnf7ljea382zry5hu82rvdl8" - }, - { - "private_key": "5a721ffb5f3ff9168ad262a6acb72585f371158af3d242558aaffb6fbdcbe043", - "address": "lax1ls9k0ggq4rgl3wtr0eaxgpkqrzln9je4qgpzul" - }, - { - "private_key": "cdf1f240d66f27d647efc5bf4d3bdb80cff3c5cbf3bea2a749f621d022dee3de", - "address": "lax13acusq6f6nguwunuh3xgjalqlvuascl3p2lwlg" - }, - { - "private_key": "9141dd2ae316fd22a38adf02c9113437a7b30ec0a17327fb2548a8cf78865340", - "address": "lax12amlk63p6xfjnmhyl89q9lxhqdvmvzh7ufe4s7" - }, - { - "private_key": "9ecb46f33d088a1ff6d996ce76c88b92590a848dd188f6d85e26ffe632a5a6a6", - "address": "lax1jnpct77n7f3xttk35xuxe8a07dk5ggpuusm2vw" - }, - { - "private_key": "d4151ed83a5d6b0fd8b17bc98678d27d259fb1e02c578ee282a0a1cb2915a0d1", - "address": "lax1fgfcz740nr2wxtp9smw058f6tq5a3rmcecl39h" - }, - { - "private_key": "fa264174e34cb3759e2a4e9f9f324f30ac3c0fa406bf4ff7d4523226debf7d39", - "address": "lax1mmplx570yw336f5nlumk43glgdxjv0aqm3m63j" - }, - { - "private_key": "bbbaa489ba42a97d7a74b0b056b7face18966aa5a686f9b9798be6b3c6dc2738", - "address": "lax1gr5eypg9fw2m7ljr4yvrhhfrtne90umazf9g9x" - }, - { - "private_key": "5277480449ea515d9fa4044ea77e068ee0c386c746241bf127405f9867715378", - "address": "lax1mjjdls0mt94qu3qpq4wvv78xh6mqpgpfq57fkv" - }, - { - "private_key": "083edfa8b301d99377ecfcfa7bc4c8f941c786a7ff21f54762f56e09c672d819", - "address": "lax17kl39dewxh5qfhkqzt2a7yf8eawmptalx33lsm" - }, - { - "private_key": "79d1a6ad110a2c9db23ca9adb7c792e53f2cc3bfdc0a8336a6f4709bc0f2bc40", - "address": "lax1cz6v9rjuvu05t8p57agyrmgl9q5hgg0lhqgws7" - }, - { - "private_key": "c4fd289dd2e11e3e87bada40bbd6cd5c31c3fca5059e007aabbc9084a06bde42", - "address": "lax1zmvh86c4fkvja5lrwlmkt2u64sekdpk7cdg43f" - }, - { - "private_key": "510a5c8a9c14633a6166cd366b9629702c214665dae8d3992c6a05a6512de66c", - "address": "lax1hxjmt4k9rcmls4lhv8484jaq8sn0kfzsqtkmvh" - }, - { - "private_key": "238d03a2b298db6d28e7aac2a666114d86e6a8713f81240a58504998970174d9", - "address": "lax1h3vezzvx4njp6v2w8ms9fhyqs3xe33p07r0f87" - }, - { - "private_key": "9539fa205fe11492af07f4d16cb8b6df147342e05eaa1018310fb787ff7aa92f", - "address": "lax1wkx3v4a8m3pyk4wt3kcpqgw4apdsudffmhdfrg" - }, - { - "private_key": "062116c97eaf6c9c292d7fa248c330e0712f84b1e2583c7fe1257e4516a52330", - "address": "lax1knwejes6esnu3v9zrgk0yzt9auy260p728def6" - }, - { - "private_key": "9da9b0cafa1ce5a3b4906be2f1954f8ba0839661efde82d45e8a6fdb1e88322e", - "address": "lax1xmh6q6vn04068vyeae9fqkjaz7das7alkxtu9s" - }, - { - "private_key": "386e6d9b1152ed2ed6f3b703728ecfacb4c966f4ea03a8b789d8560450925886", - "address": "lax1tcywmgcen7x2j257yj8az2g7kek5ru4347tz9p" - }, - { - "private_key": "0b0be71f4b7e0cf4d1d45b28af04df876251b056ad0a2237d0956cdcf5ece1e5", - "address": "lax1kzaxznmx7ddg2t5r3qjwp4yt68tc5qf08umu5p" - }, - { - "private_key": "3690f02a6917aa22013170d1897012838bba22e8f8e10a1c8af93ed04b3238e1", - "address": "lax1mz90lxewzacjm20y3fn5lhwmcl55xpn9hyxd93" - }, - { - "private_key": "583638abdc85a23979d5edc157e81fe77f79a80d99a8c6a4b9eca07307749f79", - "address": "lax1mdydc475qgg7fcd7h8frxtl3s3yyrhpxuu0h39" - }, - { - "private_key": "3366823f7cd85fe2c069cc784a283497c760a5c14ae465a0bb7e13060e1be3a7", - "address": "lax1gqeg8fcscjl7u3tf4eshn4rhr8hwcrxxmpuyyy" - }, - { - "private_key": "6ccbda49c0063ad98cff6b3eccabeead8b921010aa62b0095e88422256bcc35c", - "address": "lax1wlastnsx47mu7s34tdp2lkw5zx9jg7npzlu9y8" - }, - { - "private_key": "a807e414e22ede8b525874370869624673f797c79b5df30da8cc550206a18e49", - "address": "lax1twrxwdkfmaxsff4vu8z9rynqt39lphewxnxek6" - }, - { - "private_key": "14d7020ee6ab2312553ffb3930d4188074bb86567f6544c06409f2e410fac3c2", - "address": "lax1r5z3hmrl74ecunlg8fcmj0vy9fuyvtkfnrps65" - }, - { - "private_key": "5b5e72415a8cee881ed55110a1b9d6e9ef34918b2b69e884829b218f8e7664b3", - "address": "lax1uedglp5p0f7zlf2m29pj8hvmy7e27vn2zhu2c0" - }, - { - "private_key": "27d0ec022043de4d8ef4135d45e289881326ef08401ed221b2fa8b81b7f8682f", - "address": "lax10vgvnyvs4ssh0kxyqm7za69g0ca6rw75fdduu4" - }, - { - "private_key": "d54e9c65cf3269a892e829790d951e627c53a5558dc421b1824973b8347c2c4e", - "address": "lax1mcgjxpepfnqzuwywpsy635dhxkgzy0kardyv0r" - }, - { - "private_key": "e64aacd2dfe9dd75e2f81be15168beed817210ea1b1df24d38d2b87b6d0d8b6d", - "address": "lax15j7c9jzmucp63k8z09dv4xk8ga8jnjrs2g0a3s" - }, - { - "private_key": "2df307f13e53a2410443cf73b82d25cbe7c49efd2523b73b8673e5049c6cc096", - "address": "lax16xlgpakm0ktknnl9vjh4j8pmxuqsa8myfr6zk2" - }, - { - "private_key": "5f967a189f749ca30c051f7e7f79b771a199d6b6b1a61ef24af96360edcf185b", - "address": "lax1avcasd9dgt94tjgha8g0xd9j749q54jm6hf23a" - }, - { - "private_key": "c58ca2e4e46b802b2f72bb01adc872d090fc00df46f51a256841df8d547a3bc5", - "address": "lax1xaqxtr45y6zv4tm4hg9zrrq2dqqd73xkvveqdr" - }, - { - "private_key": "e7c2bc6d8e6d11f2212958ac00d7ba2ec6cdbc2ad76d6e569ce1e840c60edcb0", - "address": "lax1kqx7jx78dl2hk88rfggw2l3pqr2pyv040jy7dx" - }, - { - "private_key": "b3264e4706050a67afbe79434843498ea371a7906eac0157b6cdabd55246e739", - "address": "lax10sgv0ucwpa9gntf5yl7482qwajjqehqsra2v5m" - }, - { - "private_key": "d88fc640188681752de7610b8f95009c0a0f8bed83862aa0769f2f78053a4cc4", - "address": "lax1y6l54mmgtq553are72kqx2m8mu785q8e458k00" - }, - { - "private_key": "9393303aab0000694b3dbbb43584939e19786bad180b51a84264ead89a9dc657", - "address": "lax10yn4az3vkf0lzzv6vm34t6mka3jq8a24pfzzvm" - }, - { - "private_key": "eb37b3891fb618ed21cc86da26c62e10e62ee1c943830e1d346b1d00614dcefe", - "address": "lax1jutlsmlxa0p4rj2nkcfmtdzlvmjjk8lp6qz99p" - }, - { - "private_key": "71e06d4e9ee2a78f5a276b95bb46c84dccf262b1098c75caf2bc25b0fde79f5a", - "address": "lax105ca5vdrxudygfprydjn0u79ae0qa7l8944eae" - }, - { - "private_key": "46ab27652e8f4674758d3c44669e9babee0fc8f4c40363f7e6177ed28919d4ec", - "address": "lax1ejrfx6rfqhkhzcqqx765jt3sauyylay8m849c5" - }, - { - "private_key": "5ac37aa3078c94d1d24bf0a8cee890bd34ed5390ccecb8d5adb455497d1b486b", - "address": "lax1vvt9hr3gd3469sh4uzmpmmwyj8c8z3y2thmvye" - }, - { - "private_key": "09f8e49c913e718a5ddd4167073e6decd4302d2d3eb3b650635b965dbc1f9b72", - "address": "lax1kkj3s4zd2hajke2zyweshp88ahrhtqksnzszze" - }, - { - "private_key": "d3fd88093ed022a0548da63baf4387b9bae2b400f7376f944f6b14b769606d96", - "address": "lax1wrw4x977274747pc0xr2yxyfgj23ut2aw3qgsv" - }, - { - "private_key": "3f23d7b7873354a5f66ac38f3f5d89ff1d0a3ea90fee0220101db966d9ca1569", - "address": "lax1xxk29ekx6gl62xp378fu523v7fpnladx78mqy9" - }, - { - "private_key": "621d6c5b470585bf894acba64e88b41a4c0679823df3273b7fd488c550b63f75", - "address": "lax1j8s7cwwmfhwpamvuyek0wlrpzyujqvnqryrp9a" - }, - { - "private_key": "edd4ad2e4b6d17b28b543d62e51374fb968ebce07f1053ae4fab665728c8ddbd", - "address": "lax17xvt8relx9kqne55x95n5tlnwluwuttaa0m368" - }, - { - "private_key": "4cd380b60aa49f933a39055deb2b97cf1982432e554af9b1b539bdddf0d95d14", - "address": "lax1lqdgyhfj2hy4rmn2ve7z2w79fg3ewggqmrqvrz" - }, - { - "private_key": "1c21c9b3fc45ab50383b357ae6aa03c2bbc20ab6e56ac227632786bc802fa293", - "address": "lax19fkadwqsltgqv0qq6qwhu8s6k4f3lz465gg5a6" - }, - { - "private_key": "8a9b967a574fefa677ff5d605f21b61a74dc80f830b56a4ab427d162464e7aac", - "address": "lax1ft7chg6shmdacf6j4k85qvvvdrdrl6wyvmfark" - }, - { - "private_key": "4f2c9b3bc9f01dc51a07bd38d3a1ff5947feca79747cdf4e7a92cd0bd9f2a567", - "address": "lax17pgkxp8s6670wqvzvtzy4x6s3hjka9vtu6sh35" - }, - { - "private_key": "965ca53185cb1e427186c510718078e0ff6ccb57c5e3a41b50c782992829ec74", - "address": "lax1uvsxgnjtqze6aghalpgkmejmz5afgh3cm4up4d" - }, - { - "private_key": "8b69dc59efadcf729cac313b4be1d5408ae1c8a3f65338474afb835a29d998e5", - "address": "lax1x68elvnsjdy8t5qfrxc033dstq63ec6ecfmv0f" - }, - { - "private_key": "2fd8aab9942cd35ab084b56c06071cb280c96d600c577be66672407ffb2c5ebd", - "address": "lax12qkcut6gpaxrn0adpn69phsnpn6gtcwenyv7dx" - }, - { - "private_key": "d3a793e7ee8f2750d302a243684e6162723baa0b2bbedf574f2903312099f89b", - "address": "lax1nndfxuzppmj4te3g2ksfs474vcup9pa0gjsxeh" - }, - { - "private_key": "6feefa002452c89feeca351c90d6bffe50ea82bd9deb0d3f987234ea168271a3", - "address": "lax1dpz4xa4zhl3nq3trq9psathput2wy29s8d2dmc" - }, - { - "private_key": "43ceb353f81902ef511b5c40f3136ac363d5e6a4284db1478336f4c48e3e39c6", - "address": "lax1gspdzz5xxc2azlavt347n54sf58rscpm7hw7ea" - }, - { - "private_key": "a7b81d2224234834c3c9df4d968c3081b897ba773e7e1285b8df63c7eeebb495", - "address": "lax1nngz2kxh4dtsa7schemlz7nw9gt5jwnckm7vn8" - }, - { - "private_key": "d1329b5b8e069ef5de4c3a8dcb08e550a843bede74735eddc30b34be40eeb141", - "address": "lax1zrdggf99q06gxrhydattn33d9vw20h7rgxv9r5" - }, - { - "private_key": "86273323b9b6b6554f16d6a24410a33b22f23a4b3d1941ae3d8f293b09f62763", - "address": "lax10p8nc24rjc2yn7trj756ft0a696qk7vsnlf2r0" - }, - { - "private_key": "a0a2dde1d1f1b0cf26029a481f7014acfb2a174e7ebfafc3efddc8d331445137", - "address": "lax1gxdzae7pv8eq50v0rw6hglfvv0y0vq0cvl6ts8" - }, - { - "private_key": "fadba60652893b4275e9c400cffd4df15bf66ba2633d900ad9b098fd1d289fe2", - "address": "lax1m4x3aw3lzunglw7ms9s2e7n0e92ztqw54vxyug" - }, - { - "private_key": "7d2376dbf6705912a1d4027d65ad6d92c8ae15237724297581b1290cea64c0c9", - "address": "lax1dc3epdkc8d0xc5mmny7mna6xze6jew979yec0s" - }, - { - "private_key": "f30117bcf19d4d9fc088e3d8a3b9b4d808bf7fec5dcac62dd75b3afe5f4f6812", - "address": "lax1xvys44qfhcmtpnfdrejkyvvnuyxymyr9r2szh8" - }, - { - "private_key": "f5e5f58f1a83878f96a7bea89584087fe8506d281da181984d9aecd0b4f48ac1", - "address": "lax1uxza7ay4y6ylelgn8k3tu576tzl52pf4xp6w8p" - }, - { - "private_key": "b70854b8abfd69eddc72ae4e3dfbc555e2b8acb1ce6d81b4feb093811ad3b74a", - "address": "lax1eax6myvrl672zu7w5z6d2hz2p3ftxf55s0uhwd" - }, - { - "private_key": "502184fea33e031e36d679650708526ddbb9d2ab5c3e85b60519224fc9c8f672", - "address": "lax1uqhqqa05xtws3u69dspw9yxhnqrv7tr6facn57" - }, - { - "private_key": "6b426e873eb9776a6308faaffd8c856df2cda4d492a47091a0f4dcbee465618f", - "address": "lax1qhv3vzmjnrwa2p80v6qrferrv6dt4qelqfdxet" - }, - { - "private_key": "a607da4f2f8d74f2ba0eb7c0ae2c4f087a0a05d9c829f4727bed07ca77a312dd", - "address": "lax1lcjevzvgm8tnn52csf022qeyztxjm64nf3jkfc" - }, - { - "private_key": "c4b57c9ad6323773f4d8f656c04016ea15ece8b8e8d57646568b866c9874e90e", - "address": "lax1mgxz0hs57j2ntu8n0nnmcacxw28ws3y7vv7smq" - }, - { - "private_key": "bee5596fd2c4de3b1865cad7964fb7122c63a3d91a654e148bb2ddc59ddb6edf", - "address": "lax1nl6f8ujzsf64r6cwwuw3790l863nesl8t0v9lp" - }, - { - "private_key": "bed4afd3ced7f610e6ee96d323a6e1fe68d80d95d27240abea50eb3cfdc0afdc", - "address": "lax17a6msh46fzmmav4rfaffhcgleyfvmuv6x9wj99" - }, - { - "private_key": "b841328b61b0099d7770baf57b1bfa838619e42fa2dbf5ee6b08dc26a4822a68", - "address": "lax18ay0yx39wwvwvvlyukvq4408fvrla4w6qyxt2m" - }, - { - "private_key": "a79da94c3c4c821d07748d7501176142fc85a82c032c35f71d92bf932c880c90", - "address": "lax1xlcq8jng9w56p0pztamnkse6r7zzu8stelzu8s" - }, - { - "private_key": "44bcbdedea3de406fc1d984e64bc9d6843d7b717c1a1206788ae15a376be7135", - "address": "lax1tdxrhq42s0spyu82u7fa224v7xjym8fjzhdvqr" - }, - { - "private_key": "e35b8eac8fed51810885f41e4bad113cee21c054d7cbeee60149b33ca169d519", - "address": "lax1nudcs23g8c8cxqewlqq8hl53m9sxsgfj2w9kfh" - }, - { - "private_key": "9a42599977da8ab56117f557ec0b6fa546e6c84e7262cca539b87a374df57a94", - "address": "lax1u39qx6kvn3da4sz8tsel6k74vwwvk2lvxnqrcj" - }, - { - "private_key": "c37193137456d65a4fc57cf2862f74be4099efa8787848289dcc545dcafb81c3", - "address": "lax1sf75xj4vgetez7fryvll3rvuq57kaynfekquaz" - }, - { - "private_key": "6da719fe221f9463242710bed4d52fa967ebcb624a5c727c0c470f57cb21d8d0", - "address": "lax18s9yjzx7lwkxtjqltdlqv88gthhlqu8xklck5n" - }, - { - "private_key": "7439cba3a6a2843f67c774f6389bc4d4a14143b88d074287f515f9408892cee9", - "address": "lax1muh3mtfp792cat5s24rcad0t497l89hed35lef" - }, - { - "private_key": "afdf1df5a2b8bc4bc6e5963f23acc04ab5f7974e2c8ff149bc7281569dae223f", - "address": "lax1upd20a0ezyfqjk7h7x52723mdvc4dtujum3vxp" - }, - { - "private_key": "c98f52617ff05cfc43de663878b9e657b5716278b0f06fed1bd919de25b2970d", - "address": "lax1rakapt7tw8g7xyfqajwcf4gef5p4k9lhgm70x7" - }, - { - "private_key": "c89a25df10c87c51150f81c2889439847a1dce388bbd911da8b267ce5989dd33", - "address": "lax1z5ft7tafpkyh3kjmzetayvpprtcnwdjujmqmka" - }, - { - "private_key": "ba34ef6d2cf3d883b316a2f923ade702d9c09710914f2595dc3422bc8fe30b64", - "address": "lax1585cy39m2rrgmuk4y20yzecg5a3k8xxjz9097a" - }, - { - "private_key": "bbb48a4de3d25ec8cb9ea39e9b94856dcc5ecec01a98dc2b89792b77c9ada3ac", - "address": "lax1qrddfr4uh7jvr00te5duvjjxtvuekwgjfphmtx" - }, - { - "private_key": "ab751102c0dd4e79068e90374b1b7eb4c2749c901ea3b4de46771d48137ecc70", - "address": "lax1wl8lkrynnc38ldcqnpt8m0urskehcm4kzsc4lv" - }, - { - "private_key": "92ed610276fd1ade0af1e80ff6ad8809b5911bb04d17c32a9a87530fbcbc6ff0", - "address": "lax1x3mwlrcv0epjmmr9hdxf3qz4flwvq40lf55l0m" - }, - { - "private_key": "11d5ae1954572d745a790060bcc39e737bb323ad486c9dca270763f43a58a62c", - "address": "lax1krrsk669qqcwq59r87cn84y0ew635kkmedgeen" - }, - { - "private_key": "80eb595d0b3dab58025d09f340c7f432fdf7f5c13abcae4a0e6524d904b45996", - "address": "lax1ycun5k9dj9ehnw47h5fsy06ac8c8ltr9rrf9fd" - }, - { - "private_key": "ecad67eaf26efc6cc42ea36725b97ea137a89c4ec2d9f6eae593d7942b457c7e", - "address": "lax19lkjhkh34rnv9v6vhgal9shdqvhdn87cyt602v" - }, - { - "private_key": "5f6f1540a8c0ab3a3f7220ab1e4823e74ff82ce07b0a6428a85787bfc01eea21", - "address": "lax1a2qwjwu85n62uqu80jf2jyxdfz2v0papesnfzk" - }, - { - "private_key": "9d8bdfe5f98da448dd50dc2b52f6b749f4db416ccf8b51755a571be21370c12f", - "address": "lax14p0spfce5yg7ghhcacg6j577rgs5p3z0ukp7e5" - }, - { - "private_key": "e3b20f32ba707c8159210af021b35ab35faae6aa47fecb1ebaad1ce41c2b8ffd", - "address": "lax1c4mfh8rj2zsz3m6cyy3ggf0t9gs0cpkmhepsdc" - }, - { - "private_key": "0daf31dc5a51d3c648136427e3d1decf1e8d4c68e0e06f2f452730bb06403544", - "address": "lax1a48kqt272uwl73ufx4use8qvl3dsrve9jt5jte" - }, - { - "private_key": "08d94d54b2dfea963c1dffcec6787851518c304882dfd3f389520475985912f8", - "address": "lax1qmxuxlmkgzu4g7e2yn686vahjjxl4un9pqxl8n" - }, - { - "private_key": "4f879adb423fd6da60284c5b98849732e7f0425b7b5c73c22209901466b8ed2b", - "address": "lax1a578ltncwzgdqsvv0ydsuk9k0lt7ctzf2cd8st" - }, - { - "private_key": "3db89f3f814660addc8ce1614eb5e33e38c63b608390c1c4c7a81391e156a2cf", - "address": "lax1uxs4navjfjay2x64k9jgk7zqt5nhtep3qcgqlw" - }, - { - "private_key": "c8f60136e7c31c5040b5b931820d36be24c5217434223d6d0ed52e895f2dc750", - "address": "lax1sg9mawvgujjd2cht8uvjfzxvzx202jf8me7k3g" - }, - { - "private_key": "9f7c2972c93ab147582118cf35786667e12d503488c1ed6eccfa5a8a3aadff23", - "address": "lax1uu7zl323447xnc8gag367zwx2hldyneh9hy866" - }, - { - "private_key": "0b6971285aed705b86bb2302e81910245e9e6dc77a282cc6d0bd4e43512835ac", - "address": "lax1k6kfnydslkc9taq0y3e4s85xw5lzk6h0xh7srp" - }, - { - "private_key": "3b86df8775c629e305770c760a29fcdf489d9be8496d0d378795256f7ea3b8a4", - "address": "lax1tj5fu698t7uew50fqg6f8k2ppcqf7ajfgz5xf7" - }, - { - "private_key": "a846d7724c8c9afb428161dab90a41345e7050a31eb2bc7626e409cfec78c54a", - "address": "lax1alqjfqa6kj4ufwxrsyusdqt8rqlyfswru44gzt" - }, - { - "private_key": "2884f035a7bbff1f037882b098802aa136de3da3924b356b0322cd932ab61b97", - "address": "lax1qkhf34kpwmqhqukfw8wlu0m8zmxzp6tszaqhrp" - }, - { - "private_key": "55a3e155fe18f66861c7f34c82d256b6791878447e4cd81a250dbf7cab5ad6bc", - "address": "lax1walj922y7jfc23xkcgys6ktfuk7w45remv9drc" - }, - { - "private_key": "e8d8d3e052e8b493ac9a40b038833288cb3574206793f259f9b8de4f1879be5e", - "address": "lax129jvrtsd6zn8jktwgcud3975pncl4h5ykke0wh" - }, - { - "private_key": "3c46c1243e17df99a6c9037cfc52cde04f8eb2f0b60507a9daa0e39199d8aeaa", - "address": "lax1z270dje3vmaney4zsemyt7uj5x0ewf2x6udjh3" - }, - { - "private_key": "43f60dc340c3c28e1695aec28b70d1170fe668f1f24cac38d00830aae6d71247", - "address": "lax1h36ry48mk5tj90jfekyq692dwx59qtesdw9jyp" - }, - { - "private_key": "9019042709f71a71a1a27158ecf79b93f4a6701611ab4c915b74d0828d82f3c7", - "address": "lax1ytw69qgspmkv8twve2wtugleprqurjsx2xsjng" - }, - { - "private_key": "f4b44ff20ae789d1d19c3d0fc70c69654fb0419c3013c21c134753119b7957cd", - "address": "lax1fxvevcetzmsxz57pk7c9n7qgqy5radf987d7sc" - }, - { - "private_key": "1a4d7bec69a0c4ca9741645786eead685a9721fb940c051e4d32ca294e8a957f", - "address": "lax12dxthkrkec6etz2khxglzc0ddqcn7k6rcya86t" - }, - { - "private_key": "7d261111559ca1f492d502e6558c6623af73e3f80b2ebfd9348f4e80d2a1c4c5", - "address": "lax13we24pmqpslqm66mk6zj0vxyh6mw8sf4f9rtnc" - }, - { - "private_key": "6a6471824510664bde806ed39975077199e0165c66b6ebf38c58087b14d72b8c", - "address": "lax15pnk87v702kdpmcfx2a38k6ek8nqv3tdvav8wk" - }, - { - "private_key": "593e010e8a0850a7f4dac614c55c07ee7900c1aef85c21926fe802b1d848b465", - "address": "lax1myzwj02jsf6fepmwhx2yppd583lhtylclp23tz" - }, - { - "private_key": "a6ee715580b65e2c830788fc646fca97ca78408067bd26ed76ae6afd9325a0dd", - "address": "lax1sdf77kg8yatyjdk9jllp7plygayce3425gsu8g" - }, - { - "private_key": "eb5c4550c08ee07a782f5c9b5776071c47e4defd2bbae050e26827fbc341d712", - "address": "lax1us77n3pm30y4c2tfyahglfgtlqtap29aykh74v" - }, - { - "private_key": "8ddc7cecd63e5aa5822946755dea5f13e88c2ab4b01c46992f8fa794c00975d5", - "address": "lax1f07t3yn90zd7ad5ghujun73729vpzk3ywsge2u" - }, - { - "private_key": "3ef8e144a0701cd0eddf76a1cf12833cb600e6e67890e6f5349b0fad710acebf", - "address": "lax1ud7j6x7f946r5dw7745l9mk4gux6atkp3vp6ep" - }, - { - "private_key": "f2c038375db79f679c6688d57b2ed8360b27098bef74b93ce599f3e0cffb775b", - "address": "lax1qu6klu49ncelfhwram9084hxfyr56pkfju4cnc" - }, - { - "private_key": "c154e480c034eb06cbb53a6cf89df222627bdf1cbb6ab4a1cb8a28f5a75d9cfd", - "address": "lax13edxwa8nxza75hf5rr3fpecdv6f5j84k2fsmca" - }, - { - "private_key": "b040bedb7de04d4370a50f5fffbd5f6eb037f04a9f0030d3c2d700a9d7d88858", - "address": "lax1u9z5mgjzrk0rjczdq3h56wrjupa2drgghj2skt" - }, - { - "private_key": "379b7b815049c6b5c194ad07fb23f87a978506fb9ae05aee36756b89cabb21d4", - "address": "lax1wa2syxqk3wdgp9szt0zykshgsytlqaz7ldvqyr" - }, - { - "private_key": "cb0fb5df064d9babfad02b3626626fe2bbafbcf78bea24fb3a35852f890d4c24", - "address": "lax1hqml3n4ce6nkarxw28pvcc6emu0trj9r29kfzw" - }, - { - "private_key": "925f6c72c3cd783206f71b142097e9fcc967dce3b25bcbb4ff8ce97783c1966a", - "address": "lax1kq3srf3w66r2wwy66lfw5euat34c8p4e7yce9v" - }, - { - "private_key": "2b24eb25426218d1d1dca19d0e679fe74eff6d445a12495754909f7f616e9686", - "address": "lax1f2y66k475s3yun57eajfeyuuzcu5sfed4a2ukq" - }, - { - "private_key": "c1b68ee6e979009bb3cfee4f50ef62b4a574d66640c97673e840846c27af153c", - "address": "lax1enf465e6z5scvanet4c0tqgrnvtak740e22660" - }, - { - "private_key": "fb89fa347cecf26032b46891fb83a532ce76d1b6f5acd0bf166d86394a590aa6", - "address": "lax1tndytpz67gek590k46hwmax8takfn204mvg47q" - }, - { - "private_key": "82b1c3100339969644dfd9ab15fd81781154d082f5b83130e393bcf7d0aca39f", - "address": "lax1xs770xpps04e5vszduuay4efxl7mnhqkw2vq0w" - }, - { - "private_key": "078ad46c5ba5fcf22d596f847053b1efd0eb39992f0ef0d64528c035ccc9037d", - "address": "lax1hsdyl0jwtewpatph8d6z3y77x0dscg5ateudu5" - }, - { - "private_key": "e9dc672a28a3f16584f7ef71f811858f4c01cb07d1aaebf89135030bf9e4d5ac", - "address": "lax1jkmsfujwc4apxmjta3wts8xlaxm353t8sv3sjk" - }, - { - "private_key": "99aeeb4a3a1bb3c4cedeb50f9968ce95c7157a2fab9cbf520abb15bb198b0fec", - "address": "lax1yn52mtu4a4py6407cq8wu64e8lws8qey4sl0fv" - }, - { - "private_key": "9b4c745761d3415bff51c2d2907127e68ef80a51b25eeaf2908c36200c0a6b15", - "address": "lax1w6xvdfnj5ack4u79dlalzj92e5q2henkjqxfnu" - }, - { - "private_key": "0368539dea49ac5f1ebac5642cc3edbc3f5846f1a6d329464537d795ac13502b", - "address": "lax159jr6jug3ukjf3cndsazr4hkcxz0yczgzqrjgh" - }, - { - "private_key": "849b55a5ba35136d0a470a52e158a50f26fb94c9964f3f5187f9b799b8bf29a2", - "address": "lax15dft79wrq6t9yu8xmatvtfjjt3933cqvhejx2q" - }, - { - "private_key": "a4d47c499e0d95da7f641c4e6b39cae3a4b588cdaa4b0069b350c82c58fee112", - "address": "lax19zfngwj2fn2may03k6tgc8krrw7c3e2jpahuck" - }, - { - "private_key": "5e502703351e20927a24512ecb0bc2002720372d5cbd605116b8f9f148784ee5", - "address": "lax16egj6287s3qfew4fcupjleu64pv2f0twc63me3" - }, - { - "private_key": "7407faf630521cfee912c2d8e5f26f64aa870ed81c9398c04710d5d3bc6bcaab", - "address": "lax1cvqprp9vwh63vdxxez8mzl5eyat8y8xvj5vlvu" - }, - { - "private_key": "cec16e0db74c847848024a094361a5ff6d93b1b0b8ca3f1b9cae3c574364e770", - "address": "lax1gx2444rn5g86afha50zdy9cg0whvqecyy82dg0" - }, - { - "private_key": "c6315334f8f8d9a980e7481fc825dffbfc7ac0ab3aa8c14517e10114c2f105d2", - "address": "lax1sdrek7npxtzmyzqxytsad46fpaajaj58ju722k" - }, - { - "private_key": "78f911d71b35b090010f748ab1bccf550c10e0b34c96daf42ad4ce5db97f4a87", - "address": "lax1k3r5repesvm5scjy6gkh7l6l50y834ekp4u6wx" - }, - { - "private_key": "5c9d2aee422c9073c1877a5eb098c2a1528903899292e7230d5ab338fdc8afaf", - "address": "lax1s3a2yvy7xh6r2w50caqpl93pfp3skfly5m43ag" - }, - { - "private_key": "a27b010af19cc478b13a79a0a5f1776f744739db3ef100155f7bcecb0d17de79", - "address": "lax1ftup7r04p2j764grl78ng3cmu3f0z2084a32p0" - }, - { - "private_key": "14ebd31dbbfd54c33001242a78ea051f98393f1c943dfea911116a54d3bf8534", - "address": "lax19xs3e7pgkg80zlawcfggjnjpgsyek9jrky4fjx" - }, - { - "private_key": "4a26fddfdd9bbc94c8be06a27020f6fe8d2ed75acf2077a1523421166e083fa0", - "address": "lax1z3ls6j3yn4mj8fqqkemfwzdslqwhqx5kj89djq" - }, - { - "private_key": "f9fb5ba0b8c7fdb77d6065c2c1534fe0fa69658282792106346cb1209c4064b1", - "address": "lax1axpqe3caw9s96qlzw79ltye49eq384hjy5m33n" - }, - { - "private_key": "5143cab796192cd391389b9413c322eab41e10fd5a98d185acd51fc0f52a16d3", - "address": "lax1qfaxm8qclgak48wj6fz7v9az9c36azwzdfyl62" - }, - { - "private_key": "a0179544dbaaeaef934d9ae1fe5edb9eb5a0e9aa55927264a6358fd4d1f592f1", - "address": "lax1dh0s82s3pc2gplr94my9t43cgdhngtxay7xhnx" - }, - { - "private_key": "1a83e81ddc69d3135c1e0a8ec10afdf9a57c4129e3033041ad95e83476c01c55", - "address": "lax1dyvvef0wpw29ymntrrxne6c6e0mztq7yxkwtey" - }, - { - "private_key": "7df97501e3a95c11d5f477ed1cc5507e1113cd088ec3ff4c354bd498be1da9cb", - "address": "lax1l3ztnkgq54rs9gk0ngfuantxrg80ek5lpcc39m" - }, - { - "private_key": "4ec23422bb94806cb198322b889bc50e5e40b946adc007d44013df38e4b80263", - "address": "lax17kf28vs98tq9q7772me6nhntexpfcll77kjzc5" - }, - { - "private_key": "7fec93fff32cf7cf18652acc3a4f6b84b677c06e2be0745ff91975f8e299e219", - "address": "lax1dawz9cwj6rqepcakr5dlzwe73n3gshl8k8v3ea" - }, - { - "private_key": "a2c0a850cc74e3f8d82e22e540d86dede2ee4e07b9e268509db400d7eb59af47", - "address": "lax1r0tcc94fq6vnpgeplxq6lht6fcstf9k9v7mksm" - }, - { - "private_key": "21206af47e1e0a675b774c1b868fd8e7e001ba0f07dc04db9ec1aee3ac23ac6a", - "address": "lax1pphjvamvlsufstr3ynt06a892fvzapc4q2qra3" - }, - { - "private_key": "a2204074a144746f8782ab9760f9e33ab6543dd5935bb1f77677cd92edbb7b95", - "address": "lax1wt3qf25me4zfzawkqkpe6d8hy5s7kvvsw0kq96" - }, - { - "private_key": "81b645786fd726c9f4229b7a2376a2b738be80e2126ea4e85f6defaff8aefb60", - "address": "lax16ddf6hc3p3gc3yy2vje5gfupcu6m29jt8cfxhy" - }, - { - "private_key": "40cf2050a684c93432afc23ba4b0cd7435ec6eb2538f8e30b310c1e97f1ef735", - "address": "lax10wrjf0jsk6jynr2fr2sry4zh983qzhnpenfwpe" - }, - { - "private_key": "37ce22c06847c85e031ecbbb583326f367159f1ac43a8087e5afb8f7996a2df9", - "address": "lax123crq3cgrx3rjz0dwx2fa0j9wwwmhmxfnvuda4" - }, - { - "private_key": "1265f087c364d56830ac3c335a0a6394c07254d2f8090180dabd597088413dab", - "address": "lax1ua9ytgdhq3xrx9ry0gal5afvall8zqsdnt0f5r" - }, - { - "private_key": "4086c9217f6c8e461b08d5211110dd8b8bf4d5d4e015bef8dac558b9ad93a3ca", - "address": "lax13ld7f323a0uf9ljhupq29h5z4fev720qepfhpq" - }, - { - "private_key": "727308b52fcbd59ff500e244419cf535a5f1f808b07a4ff18fe3907f360ac0b5", - "address": "lax1av0k3jch0jkqq5m9q3uzaf9pma2cwxtepgp20m" - }, - { - "private_key": "31dad057f102d97453019db31196e7b784b8105089479b7ed14faf021c4bacdb", - "address": "lax10p99eefsh2djxuguygtpylndy3a42xygejasw5" - }, - { - "private_key": "2fecaae8c54d3c4b4ae513b524a9890a65fa6cab46b3dc6eb134d956156ea43b", - "address": "lax18zwtnzecdtugzyeskukcc6ck8q64t8e996qm5t" - }, - { - "private_key": "7c170556f418708ae3e6d8cb544b9b70786caa6882476536258026543f56842c", - "address": "lax1agrf9kna8a5s374q0r5rz65mkndanfss7dht2p" - }, - { - "private_key": "2961206c7edf7a34921050f57062d0ec0d0fb7d8bd8f03305e3f3a020e8c6d3b", - "address": "lax1gm2quyp2zunlp3wdhhq6zqwgzxva04al6pgxzh" - }, - { - "private_key": "55c032ba9c46e1cd2e58d8225700f453f60eeaec7566bc7a07d4bf688677a6d3", - "address": "lax1rcpm8cl844a8cz69y94cyn8rp9sdpknrnx8vse" - }, - { - "private_key": "68b83220e67567e4474ae8e8fb2469ae0bbe2d6103c4fd850db33393666dbcc0", - "address": "lax19x3wv5smk8w0amwdlfu2ql6gef6m3wzgpesfvt" - }, - { - "private_key": "aef80cf2aae56ab3816df9b4da9c5a6ba7e5ec77df0cb2a1ebdb647a00aa61df", - "address": "lax17wmlyxc5h7374tzjh5hrfx0xa0jqvvhly9xe36" - }, - { - "private_key": "89190260d7786c07a757543d7ae4377c327bea392c318c535a1022b038888304", - "address": "lax1wm5kxvdfwenyew5hnd9ryr3neeyzs9ph4n63zq" - }, - { - "private_key": "d98dadc913fdc00de22c092f6a35679461c88178ff92e743bee10d3b39a81224", - "address": "lax12ep4mccg3acuefgyqh0dnj8lnlqvf5sp2dy0sp" - }, - { - "private_key": "0ec3cf07bf673954ccb1c9849acb17b7547352b410b918501de6280149315b71", - "address": "lax1wpj7qedhffva2c6pek4gj2zzjsnuhflz7cyjkz" - }, - { - "private_key": "377d8b34f3d0b254641c71911072809c389391783a4c8003d3544c0d74d4152b", - "address": "lax1x40cktzet7hl2hmyup4lk7tcfhlytr80ncayvr" - }, - { - "private_key": "a00332654c18087e9082c4b347fc7b27c8977fc9b18f3f4c074f956ee441120d", - "address": "lax1lmxurv5c5tnhh3w6klqff66qcxkcd5tesugtat" - }, - { - "private_key": "a1f673edffc7e37cc7b9c0ffd2c5e07fdea9199a9e29177dfe40c4ee655c5bbf", - "address": "lax1p7hyumgy302gktknet74parc5805nd9szhemrp" - }, - { - "private_key": "1c0b82727517dd623dbfe3553dac16cd8e8ae764f67b5e240062d085c77b6d41", - "address": "lax14re433vf5ggssqa0q89upzczqxp2hwqssefwug" - }, - { - "private_key": "80cb2befa8bc5eefa7a68a16f71b736ab9b9d6d14b620d0dcb79401ab69a170b", - "address": "lax1g03hf8ff76n9e4f5m5yks00uzrmd94snrjtqrf" - }, - { - "private_key": "34950b076b9154211edab191a0c50f472c8d0a59de4dcd7f12743e5f0c1c01f7", - "address": "lax19cen728f6k42lsmgvmr5mrgdlshwhrc7aru3t4" - }, - { - "private_key": "bb596a84a492011213566224e7d1bcdb291d6e081f2407782b5a32cdd6a7d715", - "address": "lax1085ls6nadd8ktrfxlfcrrzlytkz422qpg8n4m7" - }, - { - "private_key": "1211e7bfc9933e48af2ae4d910f9b2cadaa0a0867610184d2d54754048ec79c9", - "address": "lax17q3wcuj6n5fert2hr2ws626xlf0e3c5qtq5pqq" - }, - { - "private_key": "7be5f77801427faff23cc13a41d5bab2a9fe4a0d9b3208e2e4cfacfe17073ef1", - "address": "lax15u5zh0d3lwutxcr8ml8xmueg58m652lprgqh9v" - }, - { - "private_key": "67d340908f304962b7eb46049c6c766fa0c85a66cc542fd7de220b5b4da72aa3", - "address": "lax1qygarltmn5f32symgqx8qmd9a2y78hk2e4gmdy" - }, - { - "private_key": "8af82068867a0fa3288aa7549e1a7cddfd66774d926624b0605f0b45558ff75c", - "address": "lax1llzcpg8qfe4a2kll5j85vg6atghjltx24a9tve" - }, - { - "private_key": "fc5980bc8252d545921a74d05e2da64b4a23346616f4b64f486b45b029eae2fd", - "address": "lax1q6vlvtlyt2atdm65e67nzla0wm5kslj33n6yw2" - }, - { - "private_key": "64e592e37b889bdd5059044f612e1e400806c2e8f73425b5f35a3814107deb1b", - "address": "lax168erj9ywp44prkdu95n6wgnn7nqw3ydzdyywp2" - }, - { - "private_key": "7d6af50059ddad4a133feb7f45e590e7f93d62feb6713d94e012762935db9a33", - "address": "lax1cywzkch9t0xad0as2ny6wu053qgxvatdtyh85d" - }, - { - "private_key": "12266ab9354522786ddb42c269a8e5605477f46083e10dbb68273eb3eeb2f050", - "address": "lax17ryv337dywel3tyvxjzvuufc4l9krv6u5mfxcm" - }, - { - "private_key": "5164883ebcad040781efa710af85401af218c57da43a27db01b058335c802cce", - "address": "lax1as3vt0fg528u5urrmuwcmfcx0he4h9y0uqsme9" - }, - { - "private_key": "96baec1215d3c07950a4e59a37d9f111ee01e101e67988b5c94001b72bbae5f4", - "address": "lax1eqngcp7e7fwlvr49vlzujjv5nn069c7a6q2xym" - }, - { - "private_key": "166f225a8215d07ba4bf18e8912fd8d37399e7ccb92f1851e506bd7f1e986c28", - "address": "lax1ghpw680h0ksw7zm50wwzymrfk6z6mwc4qtn9qt" - }, - { - "private_key": "4724f9442bb2245cd26dac81571e366836e523bb9e8c4738fe9b355d48208490", - "address": "lax13kk8ujqcf85kfdze5y4l62wjuyr2gcj0yt6z2u" - }, - { - "private_key": "fc0503efd9e59a299a34e5858afbd418b752ba6cdffcbd9f4ae497a75de6adc0", - "address": "lax13v58cdcfn4d0xh0vvmcr82x60qck2mupkjqxnt" - }, - { - "private_key": "0d279bfade456533f508ddd33b9af3fb927e9a2b99b6de9c4527c97c8c9c84ea", - "address": "lax1rfe3yf5kpr5p47nd2lmrmqe8z94gpnswqrcs6n" - }, - { - "private_key": "d550aee431abd4c8c7c1d28a94aab4c49ef5555ec7408e544f26d5690b21195f", - "address": "lax1y6nawg8re5cj6uh3s5aw5psyjw5ag3244cldyc" - }, - { - "private_key": "b6f5ba62366fe60309b6a841f7a84ac2b862e58ccce200fa42110a7ad6e9103f", - "address": "lax1sh7xecqzlwa2dnrhwn6arvaze5443ypeg0l53y" - }, - { - "private_key": "8d336885716f45a1cf0b15ba599c01229f0257dde0a582d7471fa27415cd4151", - "address": "lax1nshcgpmy8pqvdswy00zsewfxna93kmy36tgrjm" - }, - { - "private_key": "43994bc615f233d35bc9d6f83c5ba665a334c650478bb9a9746e4e532dc07df8", - "address": "lax14p8xxdmm7qhrzkgq6cp5z784kfh35ze9mt38uh" - }, - { - "private_key": "3c838316f7c927382398e89222548fc24cb8812a55cbdb21339d9ed7ee5c6801", - "address": "lax1phz5evrnxy9pnp89vjd9fgqnf4np9tyucgxd06" - }, - { - "private_key": "436038c85d4349230ddaf35b8b106ac6b0573f91dc932f312d937fa8c1e78685", - "address": "lax1k774gfdedh5dlrm62ctntmw93jdgg8580as3e4" - }, - { - "private_key": "e337c51dd5244464eabc4b78aff6edf006534a470b9129bcaccddbb784f93308", - "address": "lax1f6al0kzr25xazstkgjs4wmvgnz598gghdnyfk2" - }, - { - "private_key": "2f115cb755cef269316196c9c19fe17cfc9d0fe119daf233c89ef88660b54dd1", - "address": "lax1qflchq27nmyneqrxr0jfl4fduna4sar95c6pq6" - }, - { - "private_key": "0d609307c1292e5dbbdc42e9d13199eeb13855ef2039f86c72438681b0152ac4", - "address": "lax18rxk5nd8qyt856u6q3vex65azef2442kcd87a9" - }, - { - "private_key": "7c28cb1d3539aefcc8cbd04bbaa4b7ac89b56913d6092a85b12aa1925ab401fa", - "address": "lax1ua4t0yw04z7jccysn2p4s46y2fm5aam6mj8ytr" - }, - { - "private_key": "ce7dbaa49f28c43ef49290a265daae7633dc9aa903934becbc54ec427d4aa9b9", - "address": "lax10gqxpk33u0pwc4eymrq9269g2zf6qgleldu6fx" - }, - { - "private_key": "114046553d5a5a86dfc669b2a25389ee8fd700f17b7843074cdb6f6c0b7a44e2", - "address": "lax12cpa56ev7ue4zrywmaqvu83gnlhrla30xk09za" - }, - { - "private_key": "7acd2d33e4d8df682f8b1faed48189db2caeb6359553c0ce8b1410463b6c514b", - "address": "lax143vvynmyuzp0mwr2s99z4ajl62pp6lxz63ryh2" - }, - { - "private_key": "76578d7f01c1ab92a7e4655eb6043f5129166b0f9eddb694dd8a4deaefe0f794", - "address": "lax16nd4x03kznyfjnx8junnf20musnu07pestk5wm" - }, - { - "private_key": "45ff285c32ef86b692411f87bdae30d5091730bdb4d506746a8f5969c388edc1", - "address": "lax16wwyz9rfmy9jgtqgjk3wlnk3ph2g5pf8lelcmd" - }, - { - "private_key": "6ef333aed1c5d4737040eb848544d9f2325358b05426104b300d8564d8b6af98", - "address": "lax1ffm5q2kx2hyn2vf2j5n9mjjrw473hywuxqazd3" - }, - { - "private_key": "8a0d7044c47b86217a6bcbacc57ecc79650bb8ca885f7cdb67c4efb573fe4a1a", - "address": "lax1gxdf8mnq3y6lupzvuhzs55x8ky6hlccv6m9mxn" - }, - { - "private_key": "4ffbdda95ae776a6cbb4614c96a7ce2c17493d13a18565449bb4f7e974cd850f", - "address": "lax12hv9kqrnqevghz5u9ndmexpz82g9kw3vvk8msh" - }, - { - "private_key": "18575effea16d87103cef782fc014dcac897c26fe6617a213d319e7d5c755fe8", - "address": "lax186h6rzygr58pyldsd0lnf8skrex6qrwrj8jq79" - }, - { - "private_key": "c6854768971b26195bc69ab0b664f5302e7674a940dc94908f07305391dc38ec", - "address": "lax1nlfztzekalhqyvca24hehq4yygx746wswt9k2n" - }, - { - "private_key": "de4c7553efcebd27cdbee3319dc48cddd5c5ee0670c49c83442146c5074c3d6c", - "address": "lax1qt0y8xr25c4pxtyn2s3nt62qghkaztlgrwqdz0" - }, - { - "private_key": "ce8e9463df984973dfcd6f8c4aae674bcaab9480d1af130fe8a251bc2d1c80aa", - "address": "lax1l6j2pdr3uurt259nrwgjt7ff083t6aj88h0de8" - }, - { - "private_key": "daa31401ee2cbdf71a04881a39e7f171ff66c58fa7404fbb98b0377806917c22", - "address": "lax1nx4vw4s5slrnd6fkm5pfxh4a2xz9cj7eaj07pj" - }, - { - "private_key": "9374db827af59dad4f631fbdcf0d0e8783f2f469b99775895522dc4b451f2f44", - "address": "lax166ry2j20wwxus965pv9uhtd6ygfvjekpfdrq89" - }, - { - "private_key": "6d965752a064ab0092ad8ae884327a32863918cf403e59345e6f3de8de96d86b", - "address": "lax19s4j54nkmqj7yvj2zufm8w63r30ul2eu2e3kyn" - }, - { - "private_key": "bc3e54caaa8ed70dbf9836703cc29525721965567cc693dae2827b5bb7da7f52", - "address": "lax1a66m2spfn4m35fpv3md9qcn74pahpprq9cj5m6" - }, - { - "private_key": "c42c04b0e37a05ef69d20c39c0a83175ec9bd1312033be16b198a7a2d622fd07", - "address": "lax1ka2xjuthqwjxsxxv3gtvc79v49sclnfy6rth3q" - }, - { - "private_key": "a6ae81af7a64b636188e2e67cf527d7706236b89d84d52668452565932b4887e", - "address": "lax1egs5fg8e42zs9yt59zl2zxnqcse0jcmrrztgzp" - }, - { - "private_key": "ea0a55671646ce08a6d940e43095fe77364d06da2edeedcfe330256e4e215dc2", - "address": "lax1pc7t5rt8g6yhranavpgjkd047g4y0ct4tert49" - }, - { - "private_key": "7b48a23d407e43b801c40458904b9a43b088544887e23b8d8625f64990c5ea92", - "address": "lax12lys9cpsykyrksfvtge29uqnk9xdd9jz87yufn" - }, - { - "private_key": "37a3db2bcaf8c1fc79371d798d5d08c386708719c7a890b20e41b3e8c8d5b8ea", - "address": "lax1kt5l0n0lxw3j5um290xztwufamt9huc4du550e" - }, - { - "private_key": "d37a7fec7228bd53feded51ffcfdcc3122173e1fd1bfba561a7630227b01f16b", - "address": "lax1ejtd7v5kyeljg2pdwdffauqpjrlj5d6cw84hhr" - }, - { - "private_key": "d4b6d527b876b753c92659f2f1d90f9a83703e2ff15c876ff2423b962c4a8006", - "address": "lax1ucd5t8tpedarg34cygtpfj4wwazsx3f3646prt" - }, - { - "private_key": "91f47f7f9a49a21defac2ecdad1fd786d624c3be6baa4ffc376d8790869d4539", - "address": "lax1pk2u3t8ayewnv836w2skrjfmwmk07203g73uwp" - }, - { - "private_key": "de01801c486e4eaf2e57eb3b9280e33ae622cfd4b2d9d452457751b6efc8163a", - "address": "lax1lu97jrnwcxycx98q5l7h7xvhkzccx35wwa0her" - }, - { - "private_key": "cf2d039ddc3cb81b36727f048f40ccc2aa33b9af84140b3d1efe79744c0b7992", - "address": "lax19af033tmxgk9l4dtn7mtd6at5jzg8k3z2fs0nf" - }, - { - "private_key": "f14ca42deea0de49057d069882906366f79c6d4279293cc9ff86201913ec2eb2", - "address": "lax1nz9ur3ztgu74vcfrnlwj72khsspsvc7wu0fr0v" - }, - { - "private_key": "2b5841c47566f6bd52b805a4ba80ccf5e1fba7a16ccfd17ce7cb94e77eeedfa2", - "address": "lax16dpls9exe9cg7hmwmwe457qlgspeck02g0ym00" - }, - { - "private_key": "0189756fd9c107fb68bcd00ced72bcb34a710007105c7f02049f84810ae32db7", - "address": "lax1vu4cavh8znykvcendc5hpfgsa3va3yjy85dppx" - }, - { - "private_key": "df03cd83360342b3cdbfffddeb2bd9be7f5d5f4034268eeda1d1ba5eed773c68", - "address": "lax1wm8ryjys06jsd9cntqwnwg0dswth3zrp7uqyuh" - }, - { - "private_key": "7a131d867fe23b49df022974d7aa44346c234cbcd053a1778fc08b9f00e67a5b", - "address": "lax1hykdu42cf7f2nqqrutgl5xz89yk0j8x6nvvvaw" - }, - { - "private_key": "ce0cd7ead6c724da8e0db422413dfd513c6725773e7e82d1cf4c3d14ee71871f", - "address": "lax1j9swuv869ylpzpz836npxrahe77pa657edv8mj" - }, - { - "private_key": "0d1bdb04370984f694ed6112e81acacb057266327a6503d0c9384fac23edff61", - "address": "lax1zkj8kznd886ys34925evhq5fvwytqu8czaujay" - }, - { - "private_key": "8a16975b8d08693c578be078394f2dae2a99365ea6a5fc2bd0ab3118c66e0aad", - "address": "lax1llqrar5ltqdq478426g7mxl6eggdvknm8dljme" - }, - { - "private_key": "200ec01c9b575a2fb8de183d91e836da49e86e050ecda5b2278aaf5843ae1b89", - "address": "lax1cc96z2xqdkkq3pgg75f7ad3ksat97aatv90lhh" - }, - { - "private_key": "9993d883e2630b81a76d6e540f68092aa1006528edb588dd736cba9a5e2f1c53", - "address": "lax1wc4jm9kkdxz0me3ucx5yv7neyyhs9fg98gduy9" - }, - { - "private_key": "eb329192fd4bd51c6776a913e6c26dbf460ebdc70cf1f75dc206fffd9ebb74ad", - "address": "lax183qvj3unqgqtrg7jvn2cnhevwedkw8je2q9m0t" - }, - { - "private_key": "59701249338d4ff701bf4f4ccf233ea86be63d1eab8e98706dbaf1a6f2386076", - "address": "lax1xq052u9y2hfr3ylajv9vq5245t6etpmhv5jjfl" - }, - { - "private_key": "492bd31378d3456e941e69d1e7f6823f9b4951d6292c14ca059822b3799e5e9e", - "address": "lax1wjxchynuffpuzsapjekwkj333nk2s8nye3ue88" - }, - { - "private_key": "5df396d8fc8fc898f427c636b4e08208b035c0ea6697b6f7cdb0c07ad8259158", - "address": "lax19n3aujkyzvzvkvsjph6tp2t6k8dnurvm7n9088" - }, - { - "private_key": "5a6d8304d175a0d16f2209a736cf38b38ae757a49493128b0f2da80459ae6b29", - "address": "lax1mz099raufc5y7nwwucdw6z6rkc0g7j8es0zs8u" - }, - { - "private_key": "cbc29ac55b3019a31b755f64888871acfce83408d124468d7a30a77ed0b49479", - "address": "lax1l6z7z3dcemhk744aujcxhsaw3fuxq3j6kk4nxw" - }, - { - "private_key": "f81d2b9e91ab8c18f5ee83b77e878610765d65d7411ae113c1d8de65aa714b6e", - "address": "lax1fpxzqcvj8ydajt2aq3cyx6ws0ypzyuujujjwdn" - }, - { - "private_key": "923bcbbde9b5704091049f29a7ff331ce82c392dd199be21ebb9b266f31ec42c", - "address": "lax1dcdn4n749tp4vpjyvqr26n7glvt0ehrfgn64d7" - }, - { - "private_key": "7983b37afd16d5e109778ef2fcb162cdab34d7e48caeda50aad7e25848b1b022", - "address": "lax1myuhyhxkvnqwv6xmss5msfsrc7wye563u4297g" - }, - { - "private_key": "546015950dbaa97892dee88564da992a78f6c21c5d4fa3921dec989c86a5d2b7", - "address": "lax13zf03jd5xzs7qahse2vhnlpg4d2szncdr0at0h" - }, - { - "private_key": "e8f429d7b01bda33bb69d17e6fe2c55bbd1d6fe72ba1f38f72c271133ec75e42", - "address": "lax1fmgmt72mw08drc9h77nj6lc5y86de5hq3tunfs" - }, - { - "private_key": "2517ef4b342d4bf4ab7c35315556ab8a27d78ad7c186aafba38b0980d3c7be25", - "address": "lax17n3ezd95mk2d6andpq85cuznh2uya8pf6qapm4" - }, - { - "private_key": "ef5f5eff387dc860ef7c3c2899c1e5dcb7bb85bc3e5ae74a56b0365e9c46ac0a", - "address": "lax1xngg7fwdw4llq7ds72jf78kgnm56pp050swajs" - }, - { - "private_key": "34c36036b7548f6c2b77c3252dd22f725034073eb814e413e6a2d614d3920dee", - "address": "lax1z3m5rf9c3pf74zand3hqrg5fqn6glv5a4st62z" - }, - { - "private_key": "97a576d843efadf7e04c528f6b4ca454ba9999a8316b9b671c7c2987fda632c5", - "address": "lax1464zjzxvp6plq7xvxgsd3r9sxy6skt99jqn9h2" - }, - { - "private_key": "9e36304dc874c4b8c0050393d25ed3e92d69a0c9dea6474f1913b04a1ff415e8", - "address": "lax1azt7nw4y924tt2zzp3hadav2z0m3hqhp47pnae" - }, - { - "private_key": "404b5946db1c611648adc1bb4cbb66ecb5a4c33e73bfd96a103326c5df46908d", - "address": "lax1qsqrdynnldzlkxdra9mpsv8yghps94l5a0h4x8" - }, - { - "private_key": "e7c324924491ab326fec63abea22329fdf26aa731185b3be3b49d578f8a55c70", - "address": "lax17tawt7spcqlyjn0xwk6mw2wajt203x4knwjcyl" - }, - { - "private_key": "109551f3f2b1ec786432ae7f60e1d0cd7b9437e9398c26708a321542f98d1c5a", - "address": "lax15f7xmcv0sa00vku82659rvdzseua73nhgnwef5" - }, - { - "private_key": "353f13ff7a2553de28a72f4b4a628a8f8395960f6919454752f680b3b64a581a", - "address": "lax1k6y0p0keqk6kkj5j45cm3a9us8tne2pnhxft7u" - }, - { - "private_key": "e6cc958e139419d9b6963aaa5f114ce23d058fcf61497710297af1083397c580", - "address": "lax1m8wn4xtvetvcrjw0lgsmknfp3xpz2rlwgvcndv" - }, - { - "private_key": "d83d3d8fb54bd167c1667460e63dfc1522770639bc52b5ae90721ed811a080f7", - "address": "lax1k9ctcmqchd539spqehadmhl7jv7trp6d54888f" - }, - { - "private_key": "8a300b04828621f4e7e210f64bb70eb09c8eedb79d1473cd36db2f0b79a52637", - "address": "lax12fq2utasyn8u6e60w4keu67wn08c72xcc94g8p" - }, - { - "private_key": "2811ffc7cb6329bcfbe7d31b0978a2abfc9ce2078597d3b6b7d6aad105c08dcc", - "address": "lax1tfrx6e7sssmmvf7d7nh2wdmh4lkl5p3gayahn2" - }, - { - "private_key": "39516839273c341e3f567b9c77e1c2c794d6f91970bfbd9feec183058beec67e", - "address": "lax1efcm6afu09hkkw87fqzca9p6xtt995327lfvw4" - }, - { - "private_key": "25489a8791155b82710e429c2ac8cbc16567b7e6bd7982b4259bba449b622477", - "address": "lax1mv692jk43wxjxr6550kh90pqevcetd6av8tcdy" - }, - { - "private_key": "8ae5319c6b7862c001c743c7e4a65397475bd50af3a99729331aa4f454c0c131", - "address": "lax1j74a7jl2hjz62hwftdg0g2myu3heud3v6zpaga" - }, - { - "private_key": "6331b0c3c844f1bbcb2350021629ce37c0a347428eba8199f76fa6019ba0e1a7", - "address": "lax1al8jzzlhk7d63lnwe5tvpgpednfvjr0xh3m495" - }, - { - "private_key": "3f9cd06d0fd7746c9a15e38fe8fe8695750b2efe9b3b3d41a7092df2a217ee6f", - "address": "lax1djysxknkslkhqcvuthzuynzv22k4dmftngykfj" - }, - { - "private_key": "64b292f6503c6b16ce3d316fd7b85203c74bea770af1a6db187c0c4f884e21b5", - "address": "lax17lpe07kjty0w368z9rzhjl2hew58fgvzuletm6" - }, - { - "private_key": "0282f2c9091b2d771f0807b5dd425240b61e1cf439609a171a00208b32c79f76", - "address": "lax1u62h3wa3yryej6xm74snz9r2uc0gk5qk9egj03" - }, - { - "private_key": "b948130b8d79f3e0534461bf22661824af07097445874ff78846a079e119d000", - "address": "lax1v748de7x7p4lwwmw5cqz9uwav07wpq4v6s297d" - }, - { - "private_key": "01fc7826723b8a2d79191506d3dff8c4f613c122c8fdb3fc1d146438ecf727d0", - "address": "lax1s9tt9g5wyq2t2yxpjyct9s8kkvdd0kwvn5p0t3" - }, - { - "private_key": "cfc4ce993368b7d91abd309cce23010e60c8809a7a4dad62c8d76f6d6628236f", - "address": "lax17keesj3e3e59tv5wgd7fm3f4gaxk0t4daenuyx" - }, - { - "private_key": "185eb929de629988fc0517822162ff11a6326a88583877eb4e70db83d6b22d8c", - "address": "lax1236w5df2vtzfg8ymaunfgf6zgm6hclmhfct9wz" - }, - { - "private_key": "dbbe52f44f9601b1bc5bf9db11f9bf9622bc42e47d8cdfab288187f229f42336", - "address": "lax1fv6sge6la09nza3rhku0tua2rqkpv7jgredekx" - }, - { - "private_key": "90286c5bcb3727bd33bbdb68f2c79e8afb51eff73609c07fba266765dfa9e673", - "address": "lax1nu6fm8pgu2npjz25ylnep744yg3vjt73armyv2" - }, - { - "private_key": "bf4593856be4d05649581c3917df3caa2aed775188d722b435aa86b29d10bf67", - "address": "lax1hv4ndmgx8dpqwzlxy8kwtuhhd5rn57q2l3tgrh" - }, - { - "private_key": "df82ad38f13a47c369ceca35edd5625c7a293b45a8dc3ac0499eb4edacbe14a9", - "address": "lax1rmsny2kmtf82w34k4uyaxmtvkxghuf8v45ludz" - }, - { - "private_key": "82181fdf046584fde5309d4f4d19e2c2958df350f9f13f0a530c0f7cdf3f7337", - "address": "lax1urvnv7rxfm4rpr7mynfj5j9uj8z63u4eddmcuz" - }, - { - "private_key": "cca85e8aa873c9edbeeae8269967a5f53b7e2b8026f71466c06c1db470a80f6f", - "address": "lax1uwxadkghw9mc3segdy8pwny5ev07entx7z020g" - }, - { - "private_key": "03ddbdf1e312c890a829bb1410e6a2475b888c0d37c359e819ef5466c519016b", - "address": "lax1wuynmum96y2a9x4g2h53w2mas48g93aeqke6wh" - }, - { - "private_key": "c93c5007f004b22b4054388c9658d8f4ddfc0073dacf1fb7b8f0aa848e1b0911", - "address": "lax1geyun2qemzp0u9eacd4v0p278aryr7wd4eakez" - }, - { - "private_key": "d507a86f0b8389fcf790b6a8baab3d84b4a7c6de8f3561f2389d004a9e75bba1", - "address": "lax1q2ycksjyhmryjze3xydawscvzmvzqcz3npkdf4" - }, - { - "private_key": "f1f322770dc8a37a3f2bc8404efde65ee6f81c5536656da0c0a72037cd10e63e", - "address": "lax1caz4nf5weupuclredktc2t0kyr72zfh9jy6222" - }, - { - "private_key": "96834eac6fe0b83d599a8568c6f5fe15c3274f6c3e24584dccb95dc2624b25f3", - "address": "lax1zanwlgh6qmdsx6kgerkyu0w2zyzxt588s55ktq" - }, - { - "private_key": "ffd7bf6f093b070436058dc8c32174542215fc408969a6443b879e61c6c6581b", - "address": "lax125su83g7897m7vedgmgd3pm5hxj6mfp3kq7vys" - }, - { - "private_key": "6f53ffa54c47e2ab8cd28889921733aa88efc7c762d1a98067f4011e9e542a7c", - "address": "lax1kdky5aew5gntlstuuufwjyecvnd3xl8ff0t0lc" - }, - { - "private_key": "e7ee44c37ccd117294e2132f680e59cd642a4a1e3b5445570a0567669a7ef589", - "address": "lax1y4jrmwpz8n2da9uh6w2vg83l3ftpmfkmn895kz" - }, - { - "private_key": "c3ffe5d4e7137377f3117a9d0cc8def591be785369aae26ec33e6fa3f8b88761", - "address": "lax1luu2f6xj6pqg38d2afqfj9k0ttz8ntf2a496t3" - }, - { - "private_key": "40b36306c7cc3a2f10dc60a56275f59c58c94b5afac1c67b0638b06eca8d7480", - "address": "lax1tj8s5wvd47mjw5eaqs44lfp7vnv087mwemjagq" - }, - { - "private_key": "8df8abd91364e50c9ee9c60a98b4aedc04d278a476066fe205af5c5e5579d557", - "address": "lax1h7x7sflg87weehq4lhcqsd63azrz62ea7knzqz" - }, - { - "private_key": "0eba5291d7f82957bc80a9d88c53df9546c8c54e16607b0aa85fbd877abf1950", - "address": "lax1rzd78xcghzh9gm5h8z9j7gc4msj072rrmh45tt" - }, - { - "private_key": "a862b272958b869b175836f314ddb0681f55d57d0b1d8a88cc826eaa0c571aca", - "address": "lax1xxutd2wrx84nrr4k02ahzxq0hafdql7t64t8yf" - }, - { - "private_key": "52c190bcf7c3bb360c2654b35658d088366822399574927a636320144050f4b7", - "address": "lax1q78quhszfkv0pk97twu6r6fd9t8drp3p7d0alh" - }, - { - "private_key": "8db4562d9ed970c106ad8fb1c2eaba90798ed521919f4f7d93846d5b16f04e3e", - "address": "lax10ymd3dggmvck3duuqx3rdnsqk2v9gdxmemq0ea" - }, - { - "private_key": "7384588350aec54e64c8c13e15290777b71092f81b55ab43f927b23d43b8799e", - "address": "lax1a0822qpgs92vjulfqfcr0c3pun42as2zgk7muy" - }, - { - "private_key": "d2403082a5e62b6f446f733ff1136ddc85e8b5f15c0e9a60c96ccdd5a095cbef", - "address": "lax1w5xp8g4s2mycxgyqs6dc3hnyksnpwlgkznxcgz" - }, - { - "private_key": "90e3710fc4a0483b19cbc2ac82f1289c29223a754e2acdd3364b9de271c35278", - "address": "lax1f8nnmzfzmsvad59tz9kuhmag88hmf5yy9te9nl" - }, - { - "private_key": "0a64778b842c077d046cd5244b0086ba217252e60a4e9f0b7da69a2766e1467d", - "address": "lax1vdsymtpvfk9vwpsyy0e5a2aeudug2qfd5gcgu3" - }, - { - "private_key": "58ac8f9e2a36a5325cb51ed7f2ef8dbcabcb41f3aaec941c9ebea883a5fd5bc5", - "address": "lax1jeucmfg576q04v4ll8yvfdsep8dfcesr7kpxgq" - }, - { - "private_key": "54e026ba9e3ef79bb307f90b946fa02370f8a8423e1b7bff72a24edeefe9738c", - "address": "lax1fqukdms49le4kcxvd7j9zsh6ea2hhgcz99x42g" - }, - { - "private_key": "9013172002866262eaf5dd09f9daa1a1ff3a6c10cfc096b9dfaec80ce19e6e1a", - "address": "lax1wmyt45m7efmdr6q29rrgm9hhu5gzzss7xrl2v6" - }, - { - "private_key": "e28db3dfa7ccc765ed532bfc4df273a251671143d03ea47b2cc3948fc4b9911e", - "address": "lax1a0z9yhyuwd800w7zm8k4evcrl7gw5vgmntmjzs" - }, - { - "private_key": "8646ef19a892c6410b3f2fe396973c2807207ea9fe09995dfdc1b835ad1955b3", - "address": "lax1vqpc75kvz80lfvttd35uwn4n8e8w3rwy5hzuxh" - }, - { - "private_key": "ff54f6a1f950d7d5b6a9881fc1642a4c6194f9c85ae223a8b14f4f147e97ab19", - "address": "lax17fvk6kcya4s66fx9p4gr9lxvtqj3l2m027wamw" - }, - { - "private_key": "87301e6729fae64b088f96625a81c357e9d6403da77d9f0be13c47a8880763db", - "address": "lax1u7xhs2fu9vqr6mr2sddvn578kcrmjpsmdzgp72" - }, - { - "private_key": "6123e6849ad4c9d5c899d3f632968fea155f4709159622e3e6f4366a8def6dba", - "address": "lax12jcy2xqxccgg3wtjz66tef2u4q7gl4acn4qkqc" - }, - { - "private_key": "3c994a2f405e622e911eab10aac3daec638128e7847e38f2c2007f94a3ba56c4", - "address": "lax176j06p2umcxeptcd00hghyy8xvt4hvc43p6pw2" - }, - { - "private_key": "e684e6850883ef7cf51347a0e9e2e8a695588a047caa5af27aa85e66e5960fbf", - "address": "lax16gqw4qzx5qw0nt9kzekfl2p23uftmy422wdfa9" - }, - { - "private_key": "4bdb9e478be6ffa60624edbcbfd65c1037a07091b6fdeee7086960c8c9239c1a", - "address": "lax1ar4tg53j8pkl9tkg8w5952vftg08xhjmdfc89n" - }, - { - "private_key": "5d6d4be8664ae03ea675a09ecb3966a0fc24e186fae266983cf234c282a4027b", - "address": "lax1d8fsssz26e78g0nupq59sk8n6n8e5mgy790kuq" - }, - { - "private_key": "97fbea497068166de8d0a320ea804df83b01365b51711d459f4b5c7d41179957", - "address": "lax1aa7yeuwepcy0lwrjcqhx8m9xa5szlu9w6m98vn" - }, - { - "private_key": "964d728cc4f55d94c65ebdbb09424eec05b93f07e3c55777e9e11fe2481d4630", - "address": "lax1gkklgcqtqk7a0m5cx7pujz3fnwd65xnuv8wxf6" - }, - { - "private_key": "c22b860afa3ed557d4b3705193ed81ba1ba8ef353e6b280a785efcbaa992718f", - "address": "lax1vlag87qzpmad2guk6vnj7pmk85md2pzskuhx3u" - }, - { - "private_key": "0693184b347b072a5c48ea477ce561d3c0915c3feb96e45a3db1083c393dd727", - "address": "lax1qwn77yjjzfk3curerd6l2zkws74rdtvlu3wgr2" - }, - { - "private_key": "7d019829b1bbc9e9476d7d0fba742ab69fcb872fa3deec7052d67760d7bca825", - "address": "lax16a65sah8d6auwl09ma603h3fnd49spnn44s4a0" - }, - { - "private_key": "c82b3b28e4e721356cba113a2c01431f6ecb76ad3426a9d3656bf4c00ff7c054", - "address": "lax1yvpmwat4kf63n2yw90ge26wssutvex9zca575v" - }, - { - "private_key": "6f062cdcf48e4956d23aa2294d79572ef872c67ca061aa0be253da795b3cca4f", - "address": "lax183rwrmlrwzvjgayrtyqxa36qze0pqw300qdnln" - }, - { - "private_key": "6fb877e835ec6359ab4c361d93d6ca1fc200840f625c90ffe7215f38586bdb6b", - "address": "lax1f8pa9mfaave2rhrvaa6pmffhjq2hthphcsjqth" - }, - { - "private_key": "98f507a55727cb9e6f9ca41478b3a0d4273f6774ed1de469b930115fd99284a0", - "address": "lax1ufnlypxfv48gjszgfc5l4gf7tg20znj92cswns" - }, - { - "private_key": "630731fc1e48ba6909535ef6a8ce89e4cf50fc74cdeb0283fee6c6b8bcc9230c", - "address": "lax1pryfsxvlnvnv9m4u3aupycs44dr7rve8hqa5qn" - }, - { - "private_key": "8ddb9547fee4a643eec494312f3aa602611616700a0056188f7bd447a4d62d9a", - "address": "lax1ed7lpt8lr4sqwdz5pup5y34j37qa9dctexlmy9" - }, - { - "private_key": "b821e8874f21c53a84ebdc363dbb8fccea8bb6c5947351bd63df70b469a98584", - "address": "lax1tf96mke88l25ggxhku9any9js68frdesyyxppp" - }, - { - "private_key": "e0b8e5d4adc8f629640927a6767c36b1f875353fcb4ac257f1f478338fcc5bc4", - "address": "lax1qvt09gfnzwe86rn8ql6xjqvzafqh96lkexgqqy" - }, - { - "private_key": "a2c24084541e2674cc1cf47762bf60ecb41e660c4ed4aa248c6966c8a0a900e7", - "address": "lax1e9e6p5n2aw3gj388fw4sffv4w7yj6g6ar9yf9n" - }, - { - "private_key": "d8bb4437b422e8d189c5a489ea2918a5bd78982f59d816aae37a9c971c7e3797", - "address": "lax143vhk4csgm0z9anm39ffa33w4nm3yhl3tnrpzf" - }, - { - "private_key": "24a1f3f35bb9575141db7d87b0601bc874756b7e3883285061587bbd97681fb8", - "address": "lax1yuv5yqn34wclzjzjxfney5j0tsha5p8xzvw9vq" - }, - { - "private_key": "9c352dcc88e85f618bfe5e766a515833ee230e5e6fdfd7a4c04f4bd73b4d7e6a", - "address": "lax10kp9sz02gycfg0ka58e5e2gvdxfcwqn4rxx3e8" - }, - { - "private_key": "2b72012a415c20aca6f5e515a485d2bbb43314b0f5e655d52608f7b10071f8c4", - "address": "lax18h7tnqgkxrurf6ujmhsy9ewq37vutwuyzf0p9w" - }, - { - "private_key": "375d0424d4cd9dd0c012c42b19e51004b41189d637bd0228a624065d91c8a827", - "address": "lax1pvuwrjy0k08uk7vn0p9c5cd9m0y2ntd2j6a8r9" - }, - { - "private_key": "45946bbc8e5be9dda2b8421456ebcbe2eea52aee3e98fdab7db26e2d15da3db3", - "address": "lax1nr9gpfn4pajcwu7ggnwkzkjyxyhzrm2tm845nr" - }, - { - "private_key": "4c6754cfc901863caafac4c228e3eb2bae051beb4f7b2c1109432738afb32c5e", - "address": "lax12jzag29rt2f32q3as90ft9ddpgqrhxwrvsh2c8" - }, - { - "private_key": "684f3654aece6754ac34bbb982fa032ea2cfa4dc9059489b0e33c91e5636dd5e", - "address": "lax1c55etu7702hgyy0pve3eg2x3s3v0jxhhe5ge5d" - }, - { - "private_key": "0afdae94713d44096bd55b3758039720e62cf7bc5c47882675b779ea906a88ae", - "address": "lax1x0a5620jkn895fnf0t4ewejur9svc94z0670v9" - }, - { - "private_key": "cc91db42d3267fe14879140a8c4916bb058138ea76d3bc9f22f1f439d8b62ed9", - "address": "lax1cv2qul986mlmrd89nckl5vqdjg8xupudd39kaz" - }, - { - "private_key": "e28fc429d37c459a4dc91bfc0d6c020d257d996d9510499c292ff221333960ad", - "address": "lax1ca2kwjuapgr7ts55tlpt4zymp43wd8zk77grnq" - }, - { - "private_key": "41f46fd4a99e90729f761ee04e90b72171026cd18867b1844109b633f687e064", - "address": "lax1eg954e7hz37hkpn8msf3u2j6hnq3kq096p2glg" - }, - { - "private_key": "5d9634cc6f31810672ee690679ba82a635af5698046bf968bd2ed07f63e0e2d8", - "address": "lax12y5vgv6dw6v8834ymtgq3s8mc2s95y93g73aah" - }, - { - "private_key": "52dd08b1936cd4d8c51e6d434f0612d937f642adf0c87afaea42a27711f836b6", - "address": "lax1pcr00usxtv9683vtnjplrmp0ghssr7ns3cws9m" - }, - { - "private_key": "2c9dd4d43977548fdc158a955686831e2e05a9ac86e01cccfe7e051d5dd09276", - "address": "lax13dgrw2leczxxkh5wcjj4emwy9k6kk56jr75xe9" - }, - { - "private_key": "e6e92f800059d24008b915bfa5f6e15ac15bae610918575e3576080a4d5ce122", - "address": "lax1y4ppxf0ewhd5lz4kugs0pv0t6ul4p3cx8kllfv" - }, - { - "private_key": "447cc40416156ae1724b473915e3e6a85973937b4dcc17d4e6708ab585497a4e", - "address": "lax18v3yjx67rjcj69d3l8vw4tesa3pw59ml9n0jvu" - }, - { - "private_key": "e678559d561d753b8e45de6834ff1c3dc479dcd0bdb999b105854d74d61dc9f9", - "address": "lax19j6m8dryzs98mvs4jvg24xms9y4k673cxhsvqu" - }, - { - "private_key": "774fc51613ceba2e9eeb645dc8b76f94c9cef52c32d015ac8c9287afa7c3b0d8", - "address": "lax1kyrthvngnf3clee8xx9cgkzw3y54hpm0k5z3qr" - }, - { - "private_key": "3e01836028ea76acb490d5edabe25b669ba68900ad7d4b5ccbe096969fac805d", - "address": "lax1r280phywe37e7766u82xjp6s60rltmvdznfk67" - }, - { - "private_key": "ca147b42ad8bf716db3601968c4bae2b96541842be02ccc37d18dc572078a0eb", - "address": "lax1sru0pg0uthdlmly4ezxvxr8kes9xy65459z9gj" - }, - { - "private_key": "a5b4a15790d7c62d9b25a254f29b4a350d6da8cbd8ec621621296fd979d7e379", - "address": "lax1srfrr7zwpgper9pecpjx3pde5ckrr3zt0qvffs" - }, - { - "private_key": "a5b1473c4b89c6d12757bc85b42004714c6be7aaf2f4e6b56d50107b76acf457", - "address": "lax1rvekzt05zvnq8sxkf3eympqza62d8ds62rpcnp" - }, - { - "private_key": "8fa404ea52dab472019d503cef4096426787ab318dc6fadb7db63c2d4b8aea56", - "address": "lax1wpashjsv4vl5nwgc74du3hltc5h9292mn6gwn0" - }, - { - "private_key": "d54d4e0660970cbb670288bfa3220daa827e35520c15b991322e1df22efa4c64", - "address": "lax1cdwtd065a73chjscc3n0ym6ypn854cr2ll3uae" - }, - { - "private_key": "a70c3df1349a278fab350ae368008d5ef0f16b89890545d90bb2fb8b568f55a5", - "address": "lax1tk0yn5lx22jvxvhzd0v2dxz9gn4nguwyyfvf64" - }, - { - "private_key": "780cfa44135855a55827ad6e5dd27f1b2ed7190f7a649f2924fe031f73042f67", - "address": "lax1nv9ampugn6ljrfxum5x0e5j8ncq6qpuuk68je7" - }, - { - "private_key": "43e31ba0e45c1ab00dc1954a423c7cb13b6d2749663b84b0b3ba5bbed734a7a1", - "address": "lax1erdjjp0rp802ldlva9tzhm0q830hvslgf6zmu6" - }, - { - "private_key": "7065110ca892c8633929379c905e2f1b130c8fe993698e168b0aadbfe2403bde", - "address": "lax1l3w2g0v34ca83v8vcryey5vu37l5hv426tgp0y" - }, - { - "private_key": "dd0750f36df7e377f2ca48018a8ae0e41b66d80df487bf5fb4ee4c26be2194a3", - "address": "lax1xl8w0za0c0gnxjqrg5cxns5kv8nqnverzv7h25" - }, - { - "private_key": "f1e39b60427917b0c2b064bff1e7ea4e9dcf413e3973fb2a599e0384c08bdf20", - "address": "lax1fgduetwq6j65wnclkamqs5wzmjfdgvd0xpw8n9" - }, - { - "private_key": "58d42b9de39583e8567f3edf02bd2d72da0dc0a3ad8544e2ef340380540ab74d", - "address": "lax1t9cn9xmswh7gnjy7kd26z23gmlq6kpzm8tm7mf" - }, - { - "private_key": "d6f77b305df87a52276ba32a6a09a1b7aa450b19612f4784069b53e6829b0512", - "address": "lax13qgxtt7yx5kxlrkl75ck8eug2u4q5jprytj0tn" - }, - { - "private_key": "c733872eec79b14c73c7f962eac56126b3f8cab067dc240923756c9ddcb4235a", - "address": "lax13m8qxv3pgexr0h0fxq38tc72a4q73ww9cfe52p" - }, - { - "private_key": "0cb43b20aa9ca0a03cb0fea0c48418bc42d65991d70bba0d9c8bb7e7be4ad1d1", - "address": "lax10dzjsmq9hd2ypjafruakp2ayvm4da35ra8y7ct" - }, - { - "private_key": "343d079108393f9edd48668de26bb7e1de2762f57f15a8cf27a3cafd3d77f9ee", - "address": "lax1tz37fuha0ucdpe368sdyjqyzz8kjzewpz52yuq" - }, - { - "private_key": "a30f50fbdbac496360bdb16d2e874918367e979f0e25fd83abcc8345a5fbbf55", - "address": "lax1gy47nakwuc5kg55pft4e7wynu7uf5sgx55sucr" - }, - { - "private_key": "ef930555d78b78a3482b3d80b8956112cc64dee9c1131d9c997fe8bf1799f725", - "address": "lax1wu5judlnkry5n6um0gycc6x8utdnwg53fljjy6" - }, - { - "private_key": "362b6759eb66ee23b4dc98d7c456211136655ab91519cbbacb3170ff4249c077", - "address": "lax1gn6rcjmh4yd6mwnhsgyvm2r8m39q0kgp3fgx9p" - }, - { - "private_key": "6cf334636b864148765692364c625f6dfc05ef6fb88aa6ad3edf59c0b3c5a3c8", - "address": "lax127jxx7fsdf5fz6kma340gl4q7nh69mpdgyk3z0" - }, - { - "private_key": "53a0a630e238e3a2c016e53ed4b0bb160b68448da01a4da6b817877f12095932", - "address": "lax1s3w33yulmpwffkpxrnjvgh2l72n6pfdl429sxg" - }, - { - "private_key": "dd92005203fa24ef6f811df32af3db73c37042d098fa5251e6d181ffc534fc01", - "address": "lax1upfw72x7ks0apt2hpeggu704n0mfwyh4h6nd5m" - }, - { - "private_key": "bbb793e228b166b004673b09181fc498b8982b966766572580c1197c5344855b", - "address": "lax1d9saqhnmzdudzjsh7ctgm22pelvzpsrzpr8q80" - }, - { - "private_key": "6ad875899fbe79157aef9ceb5376b7a142cb51d87a5055a50e1acb861d26a024", - "address": "lax1tvm2l7fla2mz4lc3d4c8uyvad90scmqvuyfcp6" - }, - { - "private_key": "99498a50b2d8d4f6da42515644e5c76e12b73308a929a3594d33089a7147fdff", - "address": "lax1426qcsy984fm090pv6yv4e5qd5vtvtr764jsa0" - }, - { - "private_key": "d0b3a5bfa70678bbf34bdc6ab77b30ac895efa5d6b905b6469bcaa171ea652b8", - "address": "lax10mwkwuutcyyx3ye3zphg7rslpq9yrxeyc67ra9" - }, - { - "private_key": "9574697aefc86744c3553e7beb5f32f05952a308baf990a24d5c1f7e52cf450e", - "address": "lax1m0ag827f8dlhqfa4hhnyl8tt20r5acsh8dz594" - }, - { - "private_key": "09d65a30a891667b035b2a70b53b5e3e3ca7a1aec3b5f60021f1c7296fa73c06", - "address": "lax1yhq9mmur4uva25cslzkp089vzf26jqz2xwulsn" - }, - { - "private_key": "1afb76fba17e1e67e8b5f680923fe8568f179b6fb124ad62e2ef230d31616294", - "address": "lax1et0cqlf95mfjw7zamhhncnc7ya9kva8td4x496" - }, - { - "private_key": "00be1eaa3f66919eb72918e14587fc16d4c49f37cfaec98d9f631c78c1401be1", - "address": "lax13e7ylmr25qqxvj88acuj23rk854d53p09fnljn" - }, - { - "private_key": "03cc788a9d800ecb9e7302e0400fc20dec7266b91b316620e32091577ead05bd", - "address": "lax1wdyr2mvwhxm7rm0lg5w039l0hjt9gylnammdw5" - }, - { - "private_key": "6c25398bd2b24181c9f1e754b0c13f30153e12d418a176ac7fbe58ed81f8f39f", - "address": "lax1tgapuxnqz2fwau76d2wtlqnymt8pgtn68uyzqv" - }, - { - "private_key": "b39754b707b91b30b12b6ed0ebbec3dae353656bcafeacc4faaf808ad48e2f8c", - "address": "lax1u6r9tm8m5he2v603phdg243neg7q0tyc2ytz9p" - }, - { - "private_key": "782f67f3e19b1f9b221d1e608d7982f2b1adcd117a8e6beb58f306647a365124", - "address": "lax13ajkuvp5ex9sw7ejwug3elrth4gghq5q5vhvzz" - }, - { - "private_key": "fca4073e3c714deda508969d0d456e4d0fc8deffd6935948f2504d68cd70faf6", - "address": "lax1dxudapms7p9mkycvpu2wmw6k3zrdc4wzyjwszp" - }, - { - "private_key": "5cf393b348a44e7d7fb3d107b07e0edb74d136dbda030da8ed0cc35b47b61fd1", - "address": "lax147sczxfel53evnqpu3ff8yljrr2wy9ez58preu" - }, - { - "private_key": "eece76580f8f5b90a92b07ef6b3c1654cf7f7d76e5f52661e87fe44d9b6520a3", - "address": "lax1d5qh2gh8pg656j2j97z50xk9m7wumuxh9wgqtr" - }, - { - "private_key": "5083e2bd94c397d5fe319405588de5c12951841f6c7c23b276a1fcd76352a542", - "address": "lax1cprv6qj8ama8prgjyg4akg9m803ew8gpkum673" - }, - { - "private_key": "2e329d95ec33d658242f6a2786d1a304d1674ffb46fe129cc50369fb5f887592", - "address": "lax1u87hezm3umgretuluhtgjrntjg888mvelavsmf" - }, - { - "private_key": "43cea57d5caf97ea695bc81e4ace327068c3c1f4f50d4ec164cda0eba0fb67ad", - "address": "lax1pz6qzpkua7m0m95n37lkc6svl2ns4antn9lfeh" - }, - { - "private_key": "da0399b15d7fca40466d9898c83ab77a08da5ea0853f91d47aa00a02d77984a8", - "address": "lax13t52yrlazvvnu8e9p9urukxylwsg6ga9a7kwzp" - }, - { - "private_key": "8694f84a95b5644320d2bb20c51a333829d17b19bb9a1974909c60ddc46aa4f0", - "address": "lax1n2nat93e3cdqyz4uzt8lsyphegnuyn88vgn6al" - }, - { - "private_key": "49590d32fa1ca5f18bf055a24c1d1b51fc100e2da65407b494d721cd6e357676", - "address": "lax1gmpwu93s8rgd5rsnkapkqhlnty4yfcn5p47mz8" - }, - { - "private_key": "d427a8f04101d077225102f33458db0739589e08425eaa4a1a6d568cd3d35e82", - "address": "lax1ttyr9jqye3xwmjnhmlepegewa8kjlcufu48a3r" - }, - { - "private_key": "b3de9b17fb4a055965d34c83857f867929e70c65d23071caa21d29023467f5c3", - "address": "lax1sq3aay7cphkfhntdez7y6x9pzlavrz0x6nw9y3" - }, - { - "private_key": "ae3a805c68da7263d4038ba54161ec3b4d9580b34f229d9afa448a3ca5a049cf", - "address": "lax1umml79fs6jl8u8lkqd22leh6pd7s6wtzntus70" - }, - { - "private_key": "81ac95e7325b9acfa49f39f87008847f9ee0109b2e70543fba2e754773372032", - "address": "lax140fk3p49whfd39qxw8enhcnxe3z2vyd7mwgk7m" - }, - { - "private_key": "328aea0f9e78db0bbb8383479aa16bfee423c8f395215ae076cd4a55c9813376", - "address": "lax1477cxg939wv3snahrt33ed40206hm5rcdz7ghv" - }, - { - "private_key": "64e6851c2f437a8ab00edd3195d2ead5e08920c909f526867855f491a26718c1", - "address": "lax1cyq2f52rlhfupxsr0qvd3zv7u9al4xt2fy2lpw" - }, - { - "private_key": "3c8d044c1dbaf6b3b5705a64dc1bc05ac916fbc7366cafdc9604679a658b6edc", - "address": "lax1zv2uxeuw8sfahs204f9qqk8g0x58evw8hqywsu" - }, - { - "private_key": "3f6415da4a9bce50d7806e776e3af7cf4ad7f7697feec4fdc52a2fc5922eefe3", - "address": "lax1yrx6exwuwrhtv7pax3lau0wkuwtqh5xgl53qa7" - }, - { - "private_key": "1b4351d376e72d03ae651018486bc8efb3baad93b83b9ba2a72aff9d7426f9fe", - "address": "lax1d43q4srss0l45lu80zqwtt4d4jczw9qvjueuqv" - }, - { - "private_key": "1de34da34a68c5972fb4c58927f5515e545cbae4f655770b10032e7f0fe66d0a", - "address": "lax1mxu8lpd4sv458y594sr0wwlfl589u234de9ry4" - }, - { - "private_key": "1596cd76237c20100c44c3715ab06c30492e5c11bf5650d54ba4e4907a5e3580", - "address": "lax16265k3uywj02v8lq4tsj7v8sk82l03dzac0a3n" - }, - { - "private_key": "d1c84b7f8a04f427b5a9899e6b6cdd1308c8da662ec32aa9a6dfbbe4e73ee229", - "address": "lax13mandky9r09fgvryqjwwnuexsja9cgm5ptt47a" - }, - { - "private_key": "372b4c3bacd3c49e9774688e9b1d35f30de3372cded09097b9a19591da77fae3", - "address": "lax1mtp4vfj0msgvlmcwx9j292sncdndp88a6demfn" - }, - { - "private_key": "cbf97162456d43638ab731a0aba66c0f16e440b4c38382ea672531741a0fc71a", - "address": "lax1cgkkqylkngfhu3kyukfdrpypjz6dym6v8522dy" - }, - { - "private_key": "26c6a2f4d2c778a3e9257aa594c3e79067796d548b8b26c2d3130864a99fbf63", - "address": "lax1c45525g96vydrl2gqh0ktrphxp38rmsyuf3nav" - }, - { - "private_key": "a00c09e13610293695dc5cf4a7c55f9f39fee937d28ed6e0613d1f9296909f47", - "address": "lax1yrfvqequ73r0cg8sfklqxe90x0kjlq8039lnkq" - }, - { - "private_key": "66917794551c9035ea44317f67c11d1f820f18cffb155145d616b05c4506f100", - "address": "lax1yk96e2xxq6rqhrvaq2g8c8wzput4jkhpgzfvtv" - }, - { - "private_key": "10d06dd4fe84a0583768adc9d17fc565721b02296514739d27cc195cbd572c93", - "address": "lax18pzj9hcg2uvkp9cct4rhapzrewxawgspaay0yf" - }, - { - "private_key": "1d73857568e7076e64e0b229e0a9165a2d2079263d1cf01f9fb080a58b3197a0", - "address": "lax18mavt0zeqdspp0j66glzwlezygdva6pqgpe4sn" - }, - { - "private_key": "e48123ea87c5e21c52c6330b19a3c9c700b3d7233a405988a7936cc73143e926", - "address": "lax12hshl8034h8e863rq55jaunxv2wlu78m2jr68h" - }, - { - "private_key": "edc10dbd06d9a324cbde3791d09a87cab9edaaa325573a7798ef408161bdad27", - "address": "lax1y2lucyq35mf4czr2l543lys5q4akpswy32h6fp" - }, - { - "private_key": "6213becb5b39d7dae268b1eedf421bebf5414c9f230ec62db1f2fe664a67d607", - "address": "lax1k3xd8fpq7lzl2yzlmhk9lp59g5txv8wd0zvc99" - }, - { - "private_key": "5cb65f8954e71da17efa7910e0e843d1cf57a729ac323c34ccd55a90e1f6fe79", - "address": "lax1d9nn5rc7q5wyp0wkm4wfdtuw03z3jgfpkjphw9" - }, - { - "private_key": "6c80336a314f10f744eaa54fce67ded0273d3467c2644b2b1b6eaa9d3b6f59d1", - "address": "lax1g976ycdhqmrcrhazvtl0945r8c4c8pjp86jqa7" - }, - { - "private_key": "7880a0432610ded48b608691473cf238472cf4afbc6907e7c807d9c307aeeb66", - "address": "lax1s0nw830pu4c2m8hecvzwmyhrdklk59yvkyqa5r" - }, - { - "private_key": "cff993cd0df7cf67866df12ba8ca74e7e41ce723f0dbfd82b4bf991a0469e5d5", - "address": "lax163du7qs66hn39hfzzajx76x4u08ngjn5e3dtfk" - }, - { - "private_key": "7d15324f6e2d9f27df9f7d4490f0de9584d85f58ce49a17fb610621acb66c0b2", - "address": "lax1vc6lk2n9778l0qulph98vq34s9dfur2mhurf0x" - }, - { - "private_key": "b2b6ef2cfb8a4c792a859ac5e7cdd0f82a25653fa497b490ce05351f867fab76", - "address": "lax1c0l69cunw6mmwuh865c6skxdgwpvxyp0lp8kh5" - }, - { - "private_key": "f04931341898aae3133d5c4dac6325d93cb2ae5283976ab3170109f421b2bf94", - "address": "lax1hm48sq64qhkyqcy4dj3e6hzzveczz0c04q3fn2" - }, - { - "private_key": "a7b6465bc94643adafe80a32e8167e3ed209c31b903f40ba4884c8c5c0fbcfa2", - "address": "lax1c9fy77eveja5uawz706wcwztae955najs3rsq2" - }, - { - "private_key": "858996538365d520fb1a7b58ecc2baa5615249a4c8f66c75641a646899198b0c", - "address": "lax10ypt47xfek7zt377gkn65kuanqk8mypcfcw6v4" - }, - { - "private_key": "0edbf36d1dd82bc1ae4d7ed7b8b323ecaabb6399b6b88632f72e84ffb4258956", - "address": "lax1c83cs987v50eqs7l0r5snlqfyu4jgzgu45pvjh" - }, - { - "private_key": "f190b59ad02c61d3d8cd75bfe3ab8889e97f37f2107ae77490b09b0e0a7499b9", - "address": "lax1ul6vrds32lacrmys8q89zu5jh4gl2fkm447scu" - }, - { - "private_key": "05e09d9b4b81db87dc84dfddc0c4cfc800ec634a500284002066229922ded119", - "address": "lax19hy3h3uy2lu5jzy00ygsrggl7cxklwr5y8g0c3" - }, - { - "private_key": "4be68a7e5b5e441b9e4eb5e9fa93b2a4b4740e6604772ad73b06128f4832db36", - "address": "lax1k7d700ppwam4m67hd0sq5ujqcl7gqvlgvrwxkk" - }, - { - "private_key": "b65b5980f63b8b45b350031b06c08bae453a2c2fff9557298434c4aacc51ed58", - "address": "lax1n2waemdwaa3k22pllq5vfkwd752scmgv6wtszd" - }, - { - "private_key": "6dc3a7751acddf608e481f240c24838cce88c803e39d6bb1457ff57c017ee9c5", - "address": "lax1q5vnztua3wlgcehh7n6e6ut6mu9lx7nth0rju5" - }, - { - "private_key": "454f8deb2b4abd23f83f764c30aa2feae1f5cc2fb711f24b026665ca4b28e676", - "address": "lax1mxmuakh4vtrphzsmpmjjn6lg63xpx3lkrh5ll2" - }, - { - "private_key": "f63a7b0995c75d1cb7083a51930c67798cb3e084cd3b5c0b3c30fe89e2419d5b", - "address": "lax1t34lxh6n5yv5vckessa2swsj8ntnn9ygj44e34" - }, - { - "private_key": "cd566a41902b7695aed54b500f446ad5b900665f69993beabab990c21da863a2", - "address": "lax1n9fqr4d0un3prstuhpzr3vud36gqenf3y6hwgt" - }, - { - "private_key": "dbdcbcbcd2112d381eff0d88f6b52090157b77cd134fa2897340f98ae0d2866e", - "address": "lax1h38zuldrlwtx6dg9apwtksdtuqm5xjm9exxjw6" - }, - { - "private_key": "a7fada2ec78d9994c3b7b3bbf06a1ea0c7c174d2a816f059793464c6b5122cc9", - "address": "lax13lwsh5ynyjlz0j32z7xwdcnlr2q5n2slw9pxzn" - }, - { - "private_key": "440d43471bdefbadec82aae217ff37286f87688215942629938334dd08662429", - "address": "lax1tf8e3dmh9l9tdyy0nq0628pjwtaj9t86wy6rzs" - }, - { - "private_key": "f9352fab3f1b3e0f3e660e78b1319916b66f1b06a31512ce2a34acd991043bdc", - "address": "lax1nna26w9t266hrwgxj8areqpf4a3n5dh0ywwsct" - }, - { - "private_key": "b9804a0e37f1644b3c04a8f6da947979103143a4843fe4887722feb55a0b71d4", - "address": "lax1p4gljj76kg9nzrpy3j6qvz8wu57gst6qx6v8hw" - }, - { - "private_key": "382f1439549a3f0659f9a228d8c46eaadc469b2a1ea8400d415d20674cc5316a", - "address": "lax1jx9g6dmgn9vd23a95m5mmymk5lyynjat42kk5t" - }, - { - "private_key": "131ec5169c8e6f235a0a7ca56d70b9f9a205b0e4be1e5bf26257b312e508804c", - "address": "lax1a8ka3pqasr3p9zlwt68p2v652umfh3tr2prlzt" - }, - { - "private_key": "89810825b036632eb3c3be85dcb514837bd4eb5ca8441f18246c999b2569c769", - "address": "lax1c2s3kksm8p3r9h0q9lel3f7hesenge5g7qw980" - }, - { - "private_key": "3c89c5bace9c48352a223fc338fede3dbb259efbd673e46295babf06bd0ea54e", - "address": "lax1rx2slvn4wz3xkecgfcvea2wekmxruc7y3pgs33" - }, - { - "private_key": "a1be63e826b13204b9dfaf248b1584e47eb4b6867bbe65dd26a5f2149f8e65a1", - "address": "lax1tdt2xtnqpdugy9ghcp45w90gy2xa2qeutc7fj0" - }, - { - "private_key": "abbeb7f8750339e5773eec2379fb7c0cfa3a477e5c61f65a9108358a2e63c5e5", - "address": "lax1frqzcnjhrwzur7x2skksqyw3znvqghmcka48aa" - }, - { - "private_key": "2b25fd1b2495b7e902033d1c679c1c447d936fb2230e60bd0c4e799df5c37510", - "address": "lax1zkk9g4lgdsptrp7resexnem3m296d3g7srmj6f" - }, - { - "private_key": "ae288514d0dd23a2689774409fe5571c61e4a696bd6b53ca8019be0363a9039d", - "address": "lax14n8xwzny0pqhrq8fjpydwjy9zdwkdv99427vs4" - }, - { - "private_key": "f1d40e3d21abc63297392dc7178a066df2fbb9b7324e296fa5e77b6fca4d8eb5", - "address": "lax1t564mrpwrzvmwtdh2fgduhw35aapnumw9rzrc0" - }, - { - "private_key": "2ed44fc2cf2c73e2cced5ddc6335e0be76d65bf403b9455d898cf8cd58ae15ee", - "address": "lax15spdqgtmj3xlvx9wlvzh2ce9hc58ypz9yy7e6j" - }, - { - "private_key": "a5b9628598c599436ee77fa7d6c7b8ca3c7687e3c8711a773548a7d73c6fa7f5", - "address": "lax16fl05r6g6x9pljr0tmvqqrm0tqk3hhprczntrm" - }, - { - "private_key": "c24fecc3a8e122d0499ae20f2529099455ce210b7f2c885be1e316a2bdadbecc", - "address": "lax14el7yy5y35lec9dvk0xe0cp46rykqv2thltsmc" - }, - { - "private_key": "a3d7e991c7c7221418bab98abd0d906e7985a473db73065ff7bcc5f9e891e899", - "address": "lax1ce9ucuttr32npucvarkau5xlfgmdk950atjtsk" - }, - { - "private_key": "7a7699a7794a2818439580b3143b1e226077ed1e65eaf9453a2822c197eb3a6f", - "address": "lax1jsel7prf3raqre6uws83ydall7j8fygc40tsea" - }, - { - "private_key": "bdf2f63fa93f8a380766e748f6375cd82e7baa0bb55c14f424af477c1e0008f3", - "address": "lax1hts4nett6ryll3vg5skkhhs4es0j0kej7syqkh" - }, - { - "private_key": "3bfd12d5cc7d011cc10c5a09aea3ea17003947574d484d6e162a4affd89b0b53", - "address": "lax1vykumd85tlm7slm7a0d7yj3wydss90t23ga4lp" - }, - { - "private_key": "d048ba3de60248e1d7edaf4c91e8b771c3e5d0ecf419684791cdd357c0086c9e", - "address": "lax1r0yqkrz5wd8vk0mmz24dmvyd4ghs70aet9v38l" - }, - { - "private_key": "81db1431a1a0087d1fc143512052100baa9bd111d6591f150ee9b91a61f4afdf", - "address": "lax1w793zjl2ertz6l4gnzx7q0p203kjg3pa25n76v" - }, - { - "private_key": "86cb4f7b1a12e9a139bd299e37195fde56be99486b6b1c2e4a973895375711a6", - "address": "lax1pdqzq0g2cv5vwcmc2p5c76utnte4gphjernk4r" - }, - { - "private_key": "6fa15b592259b81a143655ef91bb4c7466613052071628fc26153d5d379252d5", - "address": "lax1dq69tycngtgn34qh67dxskp3n9wd86jnd0qv8q" - }, - { - "private_key": "92acdbed0219f42cd303098b529dced3b72487c95f4d7548d70ff5e69bf8f23d", - "address": "lax1g85554cjp3war8cp7c6tgqykq6n2d5u6fhvus6" - }, - { - "private_key": "cf19864fa7b34a62ea0649a453894e22526afe50f3ba8d7526a5d50d26518fcf", - "address": "lax1s2l3xne9y7m09lk2yyzsnfjwcx0f8fx573tkz5" - }, - { - "private_key": "c326696532b861f6fa25b4b3e8d4bc74bcc23e49b9c35312c4bf7c054e2d5b49", - "address": "lax1ppdxute8l7tk47jdptyw4vnd805x0lqckmmzjz" - }, - { - "private_key": "d745fc55d738046b23daac25f781a6914f4f683b096ee8879de100fc8d5db77f", - "address": "lax1dsl6m5j7me8x6c4zsv4pfm005ffkvf46dkdfwr" - }, - { - "private_key": "091c3c0100bad9f5da4a161a79bf6a5b2a40bc80d28ac18baa96d5b4bdadfece", - "address": "lax1pqahajkfm3753wqy9m3xa4t0vsutam2rhm7qmt" - }, - { - "private_key": "9ac7981212cccc965abd6385abc0445e7fbe8eb25140a3535b8c9656e6dd3a85", - "address": "lax1xwejc7uqrt5uu6fth3n5knp00aqa7wcd8e8gcd" - }, - { - "private_key": "8592d7166efe1512080cde50d6e8ff31a2a41b4fd64490ceeb1f19a9803cf5db", - "address": "lax1p6rg6cmmtt5l43kcsqr729dqhgjtv9qgkscusf" - }, - { - "private_key": "2a06c6c932005495e77816ea4821f4724513a40174e842850ee44547ce2a8fe0", - "address": "lax1ezq7akxlysyj8tyx8z86rcwz5aq3x8s52wqjyt" - }, - { - "private_key": "79a24f7c30ec9c61b951943e8034f5dcb538b29b52def82ec6523072a99fc167", - "address": "lax1lywzh9gf5wll0erernprttkltml9t4fefskdjh" - }, - { - "private_key": "1f61f7fb6baccfe1ae9c2cea750fe4d5a35817409b0e907a2d6c21e6e179dbfa", - "address": "lax1uwclqw208yztmp7mt7dnjhjl8r2uz3t8jmnhpu" - }, - { - "private_key": "6b297999dc5eb9e973b755dacb04c9c5f921c09c30363028dbdef258f59c9706", - "address": "lax1lymhqk78aek80h9d0zq2vv9jpa6jmahv5kzphz" - }, - { - "private_key": "bf7238e16537e7ac0e9e3f597c0ec05ef1bb5a05b6bb632334393a802d4017ec", - "address": "lax1lz860yh5nyekfjm0h6hlkv0ma3l5rs43s35hwn" - }, - { - "private_key": "a08f35e67a0bd5fe6b08eda7344b7bea2c374e8a24f12fa434d591d377b3d70b", - "address": "lax19t05hnvcfrcskcrkq4v0pewwl8h3ztqya2n5vf" - }, - { - "private_key": "2cec6ced2f1753081c78016bc890d97e0dfd3d3faa3a571c49ec9757d0f90961", - "address": "lax1vdzypkgskkswg9eejppgha34nt0lslnsqtfuk8" - }, - { - "private_key": "83cea1f33149931631268b2354e801cd78cb45984c62416ce8355c2c5d011231", - "address": "lax1pgajlsnfwcg0z8stlrpqn02spkul9sm52ttupm" - }, - { - "private_key": "948ba5139d8940f8f9d6507e725f33c5397db0f07d1fc1ba14cfcfbd0acd52b6", - "address": "lax1hl8m3ggjdsak3ucrea72tfmwhqttk7gne2d4ud" - }, - { - "private_key": "b96f0a897c164cf9f4e94915c16069fada9d6d8c2484e38554edadfdfbb242c6", - "address": "lax1m3c4kklaurrehjz6xzn8vexhcgex2mf69xjanx" - }, - { - "private_key": "c66f64696584d7da7837773213f1db98a19b720090990c7adf350c53ddc22cd2", - "address": "lax1dxuyrxvu29pf89psj5ajkvruknfpek8zgd0w9m" - }, - { - "private_key": "a1ad20afa16060283b2295b9f98227245ae42584431bc7a0ba8ec9301f67411c", - "address": "lax13edut9cl6avxw7ys0l00y9yt6yn8kgzw4v4ptz" - }, - { - "private_key": "63e30183b335a56b9e61f82f1bf07195e9f5fab5e10a44f91b3e4f286d18ea6f", - "address": "lax13z53nvsngkl8t8ue4qaccwm38p4pxxzhq8cssa" - }, - { - "private_key": "3e9f7099bb727042fc45d475bda2687a97b77aff3bbcf3da045ac1ac13073463", - "address": "lax1lgx5tqhj6ua3hdc453rkv2hsm6dp69smjz4yq4" - }, - { - "private_key": "e2cac70959e1e8b170b5e22e9d5766c0a0153b718023641391c17e5edb66e123", - "address": "lax10mpd7p5ue58wgdjd2jx42j5ymtta6guuahqm37" - }, - { - "private_key": "1a189db1409d95aa049dac53af710718a6dfd399c938c12944cc218456601582", - "address": "lax18rlxuetep06yvaqrkjmnrdlm2jflnp0u55ar0d" - }, - { - "private_key": "915316648da891f502c9ef57c52ca0dfedf0146147a7291d709bd28d65a0015f", - "address": "lax16sqwy2zx33grrffu9e7nd0w45vrlg0d34cgtjy" - }, - { - "private_key": "92bdd33d591833fb6296b87de9e83441554eed3ec9f34fa8b9072b4ce07e904f", - "address": "lax165cv8rc799e9scyuyugakkcmcj6tkrq323nee2" - }, - { - "private_key": "78c43bb2872c874f15f7f1caaa39a61f7bc1f0d8fed327a552972cb4a33a0dd3", - "address": "lax17gz3wqq7d4ql22yprsva6hrr3x88z4rhc2l64q" - }, - { - "private_key": "9cb01b19aef997a7d4bba0a1eb04334761708068aa36b26954b45174a2fe9abe", - "address": "lax1rcf6y7gr0c2qzzxzv8mvgnvg5whl62zcvrvfgp" - }, - { - "private_key": "aeb6f8069df39e210d8a4701683a40b84b3d065decf3a2296c3fed445574e2ed", - "address": "lax1v08vn98mkpg88p73fyhf8y7cud000k4lgx5xqv" - }, - { - "private_key": "c094218b8ea52ccb1e07472c12f99b3379bb0d8b3c9dbe13b076be9591f7746a", - "address": "lax19rnz9leswhcdveavzrjv2skq9nzv6sxa69048c" - }, - { - "private_key": "1cc97260e8e7d07651518e29f99d99d9d14e038417f356d3177d4e4659990eb8", - "address": "lax1rh2u47ygem60tmh3pmjdahnt6tgxd5hwwu9kwn" - }, - { - "private_key": "b9ecc4ef5df5efe8ebe68a724583dda1c5fdefc63154ed43ae3b15e19b385675", - "address": "lax160kkr7mzyusvwretmn0ugyyk904y6prhhdw326" - }, - { - "private_key": "77a4ccbd10295fb4175f81c056dc7430e10612124efc40feabc27b59ccf7c2b2", - "address": "lax1kmug9y2ec00nx37tkx0l8k7jq5cz9xlhhkts3r" - }, - { - "private_key": "7c3be3dd552cdb76ac8d7263d80b284cc5d51e489cd24b5a454335dea72b19d3", - "address": "lax1yvhjm5msmvfkut8ze50fvavltkj48wkq5y8xmz" - }, - { - "private_key": "36ff1e133542ffd228cda35f7e5284212258b6181860fb3585ebcddf975ce169", - "address": "lax1ff6echust2epx8g7ndge72jkjjhkx8z3c2v7wr" - }, - { - "private_key": "5a32d340e37e10b875b3585fa83e50a787c8cf97d705ba352839b8882b0434cd", - "address": "lax1rkzannvj93jxeqmuz4325lke6rfun0kzvdlqsx" - }, - { - "private_key": "7a2c1d15cf96841a9cd97c6a30f4817da8324c6b80d4910454355877db8d0069", - "address": "lax1lxqa4dztksc5merqjz85qwuqr3mthaxjfd9yzp" - }, - { - "private_key": "5e96978d1d9a96cf3a6fe5c9bedcb70a67bbb67552b80515e713ddfe5e7197d6", - "address": "lax1zvjmkq44jcyacsaf0spfk0e49dkhe7xyjwkmc0" - }, - { - "private_key": "81e0c205e362b56ae93022d9f91092e2be324e01021d3a08e27d8e0c9b148377", - "address": "lax1uzffkd4mgu8xfcvt3g3tqv97afmly6wh5ej7ef" - }, - { - "private_key": "dc48cd37eb76491fac94a292c6fb7f23ee772129131ada5d923a6fa696bdf25a", - "address": "lax1tgtptdlsjd9fvmnga8de9ealgdfcmduauzdp83" - }, - { - "private_key": "be712da620c3f7dcd19d1bf26f4031cc138fb5ef091c7fc4f8a86e8463a809f2", - "address": "lax1zrjq68m8femtmkg2l5atwucztl2xkyuh9e8pny" - }, - { - "private_key": "05c40c43dfd0340f273fd5f31c926f73c5adfc323fa9e29cdf323ab92f6cd227", - "address": "lax1juyfh0ym5jzhhqljw0x963dlgydn5lvghty02m" - }, - { - "private_key": "55a5be99c88e4cf90d7258144fc8a679433e223fd0b591ad64f9cf8e1104880d", - "address": "lax1dg8uny7w7e0szyrm8cjyqxhlell83n5e7g4at3" - }, - { - "private_key": "b0f753fa3b70c68ba18437c7d646ff5a9bc2127d428664b22f0d895977af9558", - "address": "lax1vklwv88ppsgkq4qkycxtzkmgxsnfr7ejju28u4" - }, - { - "private_key": "2d4908a81e10d56fc33ef0b2e1a764049811deb6b864c96176253979d55817a9", - "address": "lax19qc0xmprk352zkdj5pcfzs6w8jyen29ml7t3k4" - }, - { - "private_key": "a65cf514e61e517166740907bf95c67ef5e314626c5cd6240825a21df13d6211", - "address": "lax1cr8cvmyfq3ptzpjn7hq4pcfndt7evvm92qljrp" - }, - { - "private_key": "d9d06ad0fe7b62ca65d47ee78874ad0aceda0308c71e72bcc60ef126ef15648f", - "address": "lax15tpnwj0vqj39ewgs2ty445qpnhd0zlyx0nl6va" - }, - { - "private_key": "05acf604833e06195a047f3a2aab0b75a24ee413b534d5c93b52212e930cc916", - "address": "lax1a08p26v8af83a80hlhuuuuzx00s9w0pjtcu28f" - }, - { - "private_key": "591b36dc72182c41c210370148a6fffc84ae80a2e7e59a8c96ce4b16cfb46fa7", - "address": "lax1ptlpugukfggpplm9htkftqmyea8wy6yxqg7y4t" - }, - { - "private_key": "1827eed1cb072ee187f175fc0a7e2acb10897c5037ba0980a4d9defa18807b99", - "address": "lax1yd3nq0th2c422e7r4y2fkrgsglfqssk89fzypn" - }, - { - "private_key": "6708f63343f197f69792af3b1e4b88cfd7ecc67b15699a7cfc6d18a3f5800f57", - "address": "lax1txrqew6wp6097qc9zthlxxgjuhf5zk964a7vmz" - }, - { - "private_key": "7b9326a40751d48af43e1f50b829cea7b1aa47a8d37ee7ea21b8db3dc4651d70", - "address": "lax1u3xm7fye6wf98pv38fjnxwdwxy48uet55f4tkg" - }, - { - "private_key": "eb26b003726ea85b9cf94a931597835b2beb0da079108de8344ca88489f28bb9", - "address": "lax1nvq2u5z7g20af0p8v9n8azlmc6zkpppf2u449d" - }, - { - "private_key": "1a709ef065595f47799fd46e413886f5407f147636926f7a64a78a3eb4201582", - "address": "lax1s6hmzm2avalh8zxeyzfd9w7rvpuadcw99n83zy" - }, - { - "private_key": "800f93fc56a98423bdfeab2706748ebdb5d6a4a8ea43aa9075e1c77868e9d689", - "address": "lax1uwzvnwg70wrfmyqnhg39yfadskfzmrswrksk7y" - }, - { - "private_key": "207550985383f513b4b6b708908fb7c0ecb74fd5a00460942dc33524cda2b359", - "address": "lax1cye3mfdrxr6gs3v76u4d8ttetxzwswh2ps99gh" - }, - { - "private_key": "d73bd3c2871680107307cb2dc078f8b8db282b59ee68bc33e39f899bcbd7b8aa", - "address": "lax1679hpn20r9seh6cptzpv0nz4ax3l75sd09s9yt" - }, - { - "private_key": "53bc69bd6e9821848fc5c27cc50556fb877a8ea17eefe9fa6068c9826e167012", - "address": "lax1sxtv6w8p9cktts8jv0jf8xc99agd0d2avjl8qt" - }, - { - "private_key": "b64e9ddf242fb8f50721c87e812d98eca2e7290c20a269bee18f418a0f18f331", - "address": "lax1kjz5wrplskq5tjg90mtskc2fhru3s8k4pfymd2" - }, - { - "private_key": "7caac9399ef5c0fdf58cd1489badf8b4991326c80e2252edf9d181c19b55c52d", - "address": "lax10vnlr80m5za6kshnqleq44q354sdyjrrh0zfl4" - }, - { - "private_key": "d5571bfed85ce3152475850722176a22c03d1f9019eb25dd098cd552f5626319", - "address": "lax1dva6rw597vr3908vzqhda9mhpplfmpcf2m7mn0" - }, - { - "private_key": "2e8ce5723bc9a9ce1c39866dd2746b91c4eb20dba8e0936a9f1aed1a37c24600", - "address": "lax1k6rxug36qprgc06lvs3tcxhnj82kh0aptunqen" - }, - { - "private_key": "ab1148a7c2461cc6ce0804c04a162544823adcaca9cf27b53fd7c332e937af98", - "address": "lax16eca3vpp0kakacxj2dgg9nf27ygz06f78dsr67" - }, - { - "private_key": "fe63b4e82c10fb51017605f3c1a7561121929de2616047ba42b48bdbfd3b3e3a", - "address": "lax1h5ynpu9knq5x8432ksrdzxuvg2lgvpkzvcvhtf" - }, - { - "private_key": "9fa2a5efe34cda3d8829f465b5c3e461be9881da4d0de8022f98941fa0555f4b", - "address": "lax1ukxxq75p949ff0jhng26sugnwhr7z4urautklv" - }, - { - "private_key": "2e8e2bca30c3182e9165e495c9c37f103ee04400e3996f79327973122976da6c", - "address": "lax1detm5rrmsxnxc4y3932qk36yh4cjgwqpykm56v" - }, - { - "private_key": "042d53ed2441d9512f375ed3b378252451399fc241ddabffbb68fa544911fb89", - "address": "lax1as8mffud76hdj8mk2p203a5p0dtq4jcsh90ne0" - }, - { - "private_key": "720460dce8a43fdc80dca8440bd4ff9e755c1b25b9e9b7201bf23fb4366e5974", - "address": "lax1vfge2fsra45k6ddw3sadr54fm5jsmpyhmurhxj" - }, - { - "private_key": "ac1056085e544582dd293830d7829d96111bca4210ebab5e48c8e764c0469853", - "address": "lax1wgrpcxztd9cj4vhq5x0sumf2v0dl9n6tld5jax" - }, - { - "private_key": "685a296c636d731b6c8ee557aeab6fc2c921f456c80b6bb9bd90e18470bdeab2", - "address": "lax1j69xzhj7wvr4gt7zxwj3u8lm7kh03yts50wgqg" - }, - { - "private_key": "82a092dcf0b23e3a685ccd9b0156b56a8606a4a0632ad2a662881226a467f7d9", - "address": "lax1ztyastyd47q795mc7hl5v83a7ru8q5p8yjnnzv" - }, - { - "private_key": "59f70266675dc25dcae847c019c42dd1a86f9d3b6aec45846aadf0dabe6f17c0", - "address": "lax1jz3w9s9ugpve73mjuzjf2qaxlhll4p47hreqz0" - }, - { - "private_key": "60ffca284f4b06597167028d369320a89550959fa101baf3619e706ad2512705", - "address": "lax1d2w3pf0zasfuug2gmaj3zq2vh9ufre3mfuu3lx" - }, - { - "private_key": "69662557b60cc4b37f63caf88f8db7935bf9bfe67ba9ccc6e6b09acab8e4883d", - "address": "lax173crsynzg6qwq38rn7jp024w9zvdk0l05a5zf3" - }, - { - "private_key": "a39be404f5cbfb92f3a76edb523e0d1180b33bf0824a6c1498fb4e346c5f0dda", - "address": "lax1d2d6y4s8hmlfjxarlu5rn2stcl55r34gg6z9ag" - }, - { - "private_key": "4e524d8b557c742f865128df7a662ac85dd6737e636bda398d1bbd5318e60193", - "address": "lax1fglkye760syjag7dhjrv2at44pu2z67pk6e5vq" - }, - { - "private_key": "c2b98f978479117a538182ef0317277fb9f71ecaa9845edbef759705a9949fdd", - "address": "lax1ztl92rxetx59ru9f9jkcgjcgx7v7vvl8xm7vy8" - }, - { - "private_key": "51fb741f84bae89dfad57ef1c617281def7e9a30dee09a473414962adf1df3c9", - "address": "lax19t9rzv744jklruwh670ph89wrff8e4eadym7t7" - }, - { - "private_key": "415cf4b2ea5673ca9707744b39896b5fb947ea4d00141ce4d421731bdaa290dd", - "address": "lax16ry9twesclfkkkjlda4k472am0aghv89r3navm" - }, - { - "private_key": "d420684ff3454ace6284dcdd8b0e3dc47fe66b91fa725b72b9ca6565fcd42df5", - "address": "lax1ekfzvg5p6nyk73ha888a59ka5u0n8uc4724vsz" - }, - { - "private_key": "027184499d6de30392b118c8cff39bd88b48821e542be12d4fb61aeab2d37642", - "address": "lax13nmpq4xhutzusz0epucuh755y8pkpnuq9hdpwx" - }, - { - "private_key": "331c4fa78d8e01c62574f0f44e312bdf5ca0330d527c113d083d91708132a31e", - "address": "lax13zecsgrseujl4mmqtjqpfxyytxdkcuwwjcw3xh" - }, - { - "private_key": "30439bcbb0d65d873ff46fb713893371d9ae13574c8744a269cc7b9345d0eb84", - "address": "lax1wpqm4h8qk4339avas053k8qzx2melq67vzl6tl" - }, - { - "private_key": "e9b644581a4f76c1aae2f9462ccf5b523bf18ffa97c6f27f9af6695b001cc5de", - "address": "lax1cs8huh9f6nz8ef8dq5v4drjf0jqefkxewrhtjv" - }, - { - "private_key": "ff8daea1b66613662ca53013d71deedaaceb9ae03fd95d1d9bf4f9f28b9ebea6", - "address": "lax1tvctf9wg0f4rvm32uy6fefpvng6mw4nywv2sw5" - }, - { - "private_key": "bfcef9939e2e99e011e8d5f2471bb7db9fa19894679b2cb5412dccdbef0dd78a", - "address": "lax1ylxmntz0d9gts5kq549f50cn06c2svr0rwsd5p" - }, - { - "private_key": "a7c56fdd1f4c3ccc0e5a67bd378a26e41e15c882bcd7e407c3d57c75667af364", - "address": "lax1q22fgqvrh95kj0lx9w5ne8dzemj89xxd7e7fdw" - }, - { - "private_key": "705d7b429d676ead63c509ef8fe5abf7c4f0e9278ca71eff66efec1f6046a45a", - "address": "lax1fqy5mc48ucrg8mhf79x05cuxy32ct80awu5sa7" - }, - { - "private_key": "4510e6b2c5f79ddfd0c8d4c752141f655534235905b3b55baf1341813d596c20", - "address": "lax1umknma0gkkzua0lhr7u6mp3jdna9pyp4q2atdg" - }, - { - "private_key": "0114030f8285374356d4e85dd86d4a465c5033fbccd1b9aa4e939ee7620a0dea", - "address": "lax1648au4taetfyn49hz2g8ezwmp549xayndj9v5h" - }, - { - "private_key": "37a5ce8a20875e360af829815de18d1bdbe413f971183de63bd3ff527accaf7d", - "address": "lax1n4u0u0nunndyyhxhy7kh90t85w5ufu3fta5mlf" - }, - { - "private_key": "1a61e32c6c322b69f6acaf4ed0517a12febf64820dc91b464b766c5fca0c1f89", - "address": "lax1ce2vc0tu4tkfrys2c086mtkqem7tvj4els7nz2" - }, - { - "private_key": "30fd10b040ab4f22a65909760dff8cea77c75cce9ed25f7b5a8b438e88286212", - "address": "lax1g3t5syvs8yrw2sv98v9ymfuw0udgdghc7pkhym" - }, - { - "private_key": "b11ea288813ee8b31d2af1fc9d76d2f00c2b0192f290cd268c78e987261f8c5a", - "address": "lax14xhfr9mxytl7gy48u47cdt0mfeqleezgzcfwhh" - }, - { - "private_key": "55e5e071d0056c8eb76d9a7500474518ff3682b8db540ab87cb8c510d132c8db", - "address": "lax1zkqekqgx9g8e2veuf5keel0gw009q4qrhadvcq" - }, - { - "private_key": "78aa78f80a14387df8d66536bf8fbc034db3dbe0a287f15b64c581ee206e5083", - "address": "lax1ude9prpzks4c9zryp58yqld0chk28fhpskjrmj" - }, - { - "private_key": "d8847f7edebcaa74f4bdd07658151c004e426a8f3e2f7cbba9d073de674ca2e7", - "address": "lax1vxvummcy0uckpnlvays87n43r6nskq3cm8nxr0" - }, - { - "private_key": "af23c585b3ae157c1a1340a3236bfbb1f7f12e21ac9ab79d2b3ac385cfccd933", - "address": "lax1u6wep92gg7uuytpy55rjjwmrxtg2ghp34v9n0c" - }, - { - "private_key": "3dc1c3669c593a67ee9f81887e11d5b16392befc8f2a865e27fec1e3023dcc2e", - "address": "lax1u5adntaguwd76ldqfd780azjta96qzn3hjgh74" - }, - { - "private_key": "6f499fbc6d0bb5ff018101bd15bbdfad47bbd8725d2c9d0ad6a670feb106dcda", - "address": "lax14q4e48p6pqg3l09yhuxhe06mplgzv9q85llhup" - }, - { - "private_key": "37ab2bd8679d727c7db719b902c425e5a8c76339cf69ee212de0107e43c20dc3", - "address": "lax1krzygq8ata0a99jt0pvweg3ky4f75pgtjdklma" - }, - { - "private_key": "9429a752cbdc34632140b08b63763695971d33373fe399c34272156c21aedcd7", - "address": "lax1r0w9dk4syt4ajf06hw3glapa6dpl8dd9wln2zp" - }, - { - "private_key": "ca17fe15530db0f3caea0a3c6a4dc03ab4f93fe8670d1533279b353ce4079002", - "address": "lax1jk48jxm4dcplz7dcu9rvk6q02sru8ukhpksv2y" - }, - { - "private_key": "af37d9396a5887ec52905ad1e090e90a45c923df567569270dcd14c33c1e35e4", - "address": "lax1pamlnkss5lgfket9jevf458cmj9as6xhq3dmxj" - }, - { - "private_key": "e355cc84d5839277779b3d5c07f588a751510462011e8840ae4b27ab21340654", - "address": "lax1eq0jaktmhx7h7gz3vu4sxuyrkez6gj2mefd92q" - }, - { - "private_key": "0d2d5bb015fd56d225c9bbb5bacacb1dfe63b643e372209cae625f488fc77098", - "address": "lax136s3ejklkys5phad5kht3xqe8mjpxz9ywq502n" - }, - { - "private_key": "d77405d21c99e20e0b182b027dbf408a07af864a531838e806b183a2abca009a", - "address": "lax10hglrzhawc35t2nrrnqyqtkzrjx50g6sv5xgj0" - }, - { - "private_key": "0d2db0b425497c2c37efbf3118ee66cca90ff5582a66caa0c92b82772d7858c1", - "address": "lax1xjsdjuhqmgzs5set60y6z5hgrf5zxhyz2xlrln" - }, - { - "private_key": "d44f2a78301276bfd889bec070ad4d1aeb1e1ddba1a74236200b15a65110e7bc", - "address": "lax1vqv826fteewxgmnhuqj764krnde0l0llg4tyq7" - }, - { - "private_key": "fb752691bf99a6af25791d02859b34297b3e6b8255625def25e7d5501714caae", - "address": "lax1rwczg4kutpacrxw9fw6j9j3zyef2qkzsrg3zrl" - }, - { - "private_key": "aeb796f613600792081abb7c62999789b9d4b92071f10c8b693449e22ca50b08", - "address": "lax1ua8sh6r4qdp3l9evsuvrw5lgums43k7m38sr73" - }, - { - "private_key": "50c37e025cc92a11bd80f7b755c6aa7244dd2ee8079a7bf93bc0545ee1244ef6", - "address": "lax1r0mxgu98j9yf5ll2hv0cjszndcnmy2tq80qpw9" - }, - { - "private_key": "7fb0b1da9d453b3a9a0b2754c9801fa3cac7745931f222a9e18a74a5492d5a24", - "address": "lax18gwjc7d56h0gqrsrhcctj002jmeaghageeuh3z" - }, - { - "private_key": "21490b4cecdc61754ffa9ea80b673d6a7ca97bcc5aafadeb881a0f56a4d1e86d", - "address": "lax1ht9qlup4sryjdn9suvyuyh52r6k0chchnvj00t" - }, - { - "private_key": "3280c725267d14cbc8f186e5409f199bc5af7b9451ad4e733303e5c7d5c034e2", - "address": "lax1ru3f8m4dt9h88xeaf43rgsk93xym03yzhjm749" - }, - { - "private_key": "617f6a42a98d0e57daa1d0c814a42919fc7351b4e319e2435062278c8cc310eb", - "address": "lax1ynnzzppvsf4pmmvwnm49yqmnrcn9keemrkz0rd" - }, - { - "private_key": "7c54a2666c6d2f8d20b8f077ba1098840d326c74551e9f8159fcde14fa5bdd56", - "address": "lax1m3ptd2drs2pptfwzvds5hv6gjtcfncl620jyps" - }, - { - "private_key": "968be04accdb33388feb5355e5123f42d424994e12f85e1830cfd7001992e001", - "address": "lax1a6h9zp86zjqgjn5zd5tj329y6ktynfjvkelr8n" - }, - { - "private_key": "0d8371a6bed8ab40d8aa13384defd655e76f3be235b4d3473868fb1aad6b312c", - "address": "lax1leh4qp73xlvcagvfzpzfc2r2hfy49l4fj7x52n" - }, - { - "private_key": "8a6b4371f99f9ec4161a57aa4fb7f23a7ebf95a87b0018c050547a7bc31058ea", - "address": "lax1x6n2vk57nnhghugpp72ds7jnau4x80zvd7592z" - }, - { - "private_key": "b89db8ea40ab1bc8c1a202cbe3f66a8ebdb0e10ae9f3d12c3bf84707824f7348", - "address": "lax1ge2trkx2r9pummjk8xt4w8wm8pshvg05runpyk" - }, - { - "private_key": "58c7304352baddd8dfa7970d6050057c88835a5e64ccd7c89bbeff297d952edf", - "address": "lax16wepw5apg7emf860n40xhh5ta7hv40swxynccn" - }, - { - "private_key": "efe61116b573f65973d64f56f5cd05b9784694a8b4b8541f1e79be000cec0500", - "address": "lax14zn8znh4zthz2g2kf49pgtwpvnw2s2xmthnx3w" - }, - { - "private_key": "ab004810ddd6688e474af8c5efeb3201f28863d3d7cb424770fe24893e188355", - "address": "lax1h4u9d6eq5m4yt2mvm2fh4e2wkkr9u97vdxc2vl" - }, - { - "private_key": "770fb70e42bc24412057d67d3b8110faa5b7ffe9b77c7806bc864dbc65fc2cbc", - "address": "lax1cmeypsrpdc57dsd9nlfgxjv7ve9qzf2t0lquv0" - }, - { - "private_key": "acfd98dbd9ee09298fde43138f3481d13676b008231a188d19024358b8eaa774", - "address": "lax1j57ttrlqtnrdnnmg77at47hn65vhd7hql2ez75" - }, - { - "private_key": "59ae489c757a5b319ef18a145fb7475a0fadb186deba5ffa6a2d4a46899e8425", - "address": "lax1de5phehw43a0727jkw2h2crmds67jm3huvje5r" - }, - { - "private_key": "08ff8bdab7dec6acab6306117b7283360be342bd86cabf5965f8681934cc3fe9", - "address": "lax1cj7hcqjl88xeea0h6jvu2wm2d8q9eevknd0w4u" - }, - { - "private_key": "b001ba43fce358a63a30a6edfbd72daabc4a73b63674d1b6f01c1ecfe1b05696", - "address": "lax15xjq466nz33djkzz38yu2xfedp5t9yafn3rcpj" - }, - { - "private_key": "1ab5f80333c5f6a046697c22f63cdcf49c4f36b7abac414f06673611049177b2", - "address": "lax1stmt350nkrlacqhqlsumc6rzxal4djstqe0mz0" - }, - { - "private_key": "e45a943d61a45589b7c29eae82907315bb506310c5aafe4d09983e5ed9683d3c", - "address": "lax1dxkpyfklnd4pyntn98gw5tahg6055x2srzxyrg" - }, - { - "private_key": "465da8bf52d0603b3061473f906f85dc6f801509aaaa8d5912c6dea664498894", - "address": "lax1ukmr0ezpxkap4wszlax8u5fx3gevzxxqf8r0rr" - }, - { - "private_key": "b6de1efb2d8a74de66a7500fc657a88b7dd99308fdc234fde5188c6d30069d01", - "address": "lax18qcx4vzu5kuffty5zsvz56x6xym08vng6elnqn" - }, - { - "private_key": "ed1b54293e78b727d3be9039d4f3b895a93474671ab2c190568402065dedcb7d", - "address": "lax14yxxakl4s2q30kh8fyw23lgfc6njyqh4jd7ktu" - }, - { - "private_key": "0460be8e8c0e0534d785979c32620166980210ee4e3e6d853ce2164ea5feaee4", - "address": "lax1l09uwrem3gunf5p9vj0edhsf7xc8klup6lm9hs" - }, - { - "private_key": "779f48c5d38845213afd9bafd0d338d248f97715f0a3163b5349752eb4f3f545", - "address": "lax126mkk07svx09mpch9zdr7nnzxhneym7fp4rxey" - }, - { - "private_key": "f06ed03ee34fd8918327ab538bd0341760bd5e2527dc60e04a1e166325a34b4e", - "address": "lax1nfvht2ad8wenyrfcytnnyanrsnh5lkxc349sx5" - }, - { - "private_key": "14213ecb18980035687c916bf206521bbd441f61cf05289f89acc3f42b82ce6c", - "address": "lax13l9hlu9ajvkjhwyze4v2cdtw6tf99964pywymj" - }, - { - "private_key": "e61df6e45309ada5819e98776467a6f6917e021b94b8094c26a5a76a7dd12fd0", - "address": "lax1gg9z735sjx7hn9wana2kj7880h5g43hsrq9pqt" - }, - { - "private_key": "eb924a6de85c9467fa4ceb1c9ff32bd154180d1e01d40a06060cb3778719dbf6", - "address": "lax1nphhkeu9nqdnskluvmpje58768jrq570htjmhm" - }, - { - "private_key": "e89f80f7b14921039156ad3adac173ddec7c4958a7643ca89b164f0261664e3a", - "address": "lax1rcj45mt43kv27evm3m9t4jq9xhdqhmy9vw2ttg" - }, - { - "private_key": "801b2bb7c6d1a68942a8c8bd56d7b44686061ff14d60805ee311dad885ee56af", - "address": "lax1zk2r4zy2ngynxwwla2lgyp5u39cgn7yzxdql9j" - }, - { - "private_key": "2a3012a168006b6078676f3dadc0ab7b3d398112e1870f3b83af2b69dcdee64b", - "address": "lax1lkg5tw93l5vullecgpvykrr7lhrvn0q79ekw53" - }, - { - "private_key": "c6a365d52b22b0a593eaaa34edf44e9ccda6a8e63fa362e7787c363c844fae62", - "address": "lax1t6e9nlsy55rg6wnrvflpsumgu6qpd09fcx3dzu" - }, - { - "private_key": "30568d05b95a4cb1abb954b5375d3ed511cbdeab4636e59792da854240e80b88", - "address": "lax1fxl5q29nuf3x3s930n4g5m5rc3gvzatp404um4" - }, - { - "private_key": "1925769dd52ddd506ecaa7f4bd48b7c6a8779a4dbb4a93fed72f3f523add4cf8", - "address": "lax1zj3crhqr4r7tpcgx642xe4v6wysvfyqt40y9vr" - }, - { - "private_key": "844e5186a96411c6921000b9c253b187e4df39092a23d76840ebb3e19d65ee6e", - "address": "lax13vlujjw0scpwruvdqs9g5nvjnpv3leawh4kuxt" - }, - { - "private_key": "4d10890011fabf32f0e24612d2f36a5126b84cfa82884acdfe59f82a7d2461c6", - "address": "lax17vteczzdlpwrhpnf794ahzq0xavaery4k393nq" - }, - { - "private_key": "88817e15659966f1f7ead57a6515bad4a7337c382b1488ef66cbfdbdf7aea030", - "address": "lax1ehrwdncfvyutux4769ypkxq9w4kqhgs4acm7mr" - }, - { - "private_key": "91a09151d2c5f5d3019b0b34b0d94b61a84628c88a57066aec5fcfb532aecace", - "address": "lax1ghfkcr9q8m3mj9k4ufer3nwnknpven6p55s9cl" - }, - { - "private_key": "fccfca06626e96c2f5ece5930d36b99cde92859f9b7b1121e80794302e15d687", - "address": "lax1x7e6m7dr9pxvtlvhpkm52n4kjr0g07npd3y3k6" - }, - { - "private_key": "463bc5814e507a2d6c5708e2daa2dbc0d62ded187a16e70f04ede689347a1644", - "address": "lax17w65wyudm0hm4zhqxrc9sn43nnt27dtd8v5pq7" - }, - { - "private_key": "5c54782db62d865eecf263928cf749a32d3f61e6354ed856e47bb964e9383f00", - "address": "lax1tysz5agjalwqmpes8544yung8v62tr8skm2xwu" - }, - { - "private_key": "07218a012ec46bf0c9c4610cac5ae7bb44e83e0f419561b1f0eb2e50f8a7b508", - "address": "lax1hffxa3xk05d5vnmcgzw6vgy4w4pkgwrrgnd3qz" - }, - { - "private_key": "6a1fbf051de22b43d276d17dfd09fadadd13d9413fd35abfa2d1064c95a9f55e", - "address": "lax13lrnl3x47l6z8ewt46las6mzh9smlpqgkw99vn" - }, - { - "private_key": "7446dc869844e3f2d562dd32e7134d7628d04178f05aa6559b9498d8d2d6ec26", - "address": "lax15edfll40uhk479cqg9v68g45t740mnszwqdt53" - }, - { - "private_key": "c4ca25bb161bd3e0df074734fc23d42a839311cdb488a1d3203e4138f0d4bb5f", - "address": "lax1n0mgnh9g3jcfv7w8fxz9hlcq3dremnqwl96m2m" - }, - { - "private_key": "163194c1e55022614a5256af70f712071e6de143ffc10cd99be71e267fcb34d6", - "address": "lax1jrlyj38nfmv88sjl39xpc0hkm8tlxlwur7rvvq" - }, - { - "private_key": "d7085d3bc3171ea05b07c59f4ebfa23e4b97573561d0a83392971348c7c4df36", - "address": "lax1vcldttkepplmkfqr54cuwrsgl2lmpjy5mgdc7y" - }, - { - "private_key": "b24a58eee84d489f784973d3f0cdaf5917cfcefe73aabcbfa49edbedeebd3b56", - "address": "lax15jqjduus7xrsvp7akg9y8yu36f4h9gcq980tr4" - }, - { - "private_key": "467d662e2562ebc4ceb99dbe93063ef1cf8e449478b719a913fae720b40f32b2", - "address": "lax1uz2h0k5trz9lduyuevekc36mjfu006zexl4pza" - }, - { - "private_key": "7863ccc1a0ac569a13c0dbd9260c6835241dfc47e5bbf06e208504ac5703aa45", - "address": "lax1sf39mmfjdc7u2kw823k7p0zh7fp2k0vgg33x0f" - }, - { - "private_key": "c0177264454bfa2f0f9252a397d67e94b886ac9a8e1c0dbb13e740189058f0b0", - "address": "lax1fjmj92hpytstkpc37ez37ejvlwpp9ksndauq48" - }, - { - "private_key": "d581e74e9b58f4455ad479028739f75a34fa5bc49ea0ce9979248180f9360c20", - "address": "lax1lqfz3rw3n7gkcjmys3r58ln2l6vqfjvfrkd2t8" - }, - { - "private_key": "ec3b34ad1664044c6c76158008147dd627e2f46ea985f16b1071b3b36231fb87", - "address": "lax1uauxd74r2950x5l3ndxn28dws5mhqnz5lsawga" - }, - { - "private_key": "9d2a749955df2883449bc76f72bc9ee62ba2bd964833f5e6a5a476188b01a02e", - "address": "lax1wsvrfyh8wm56paur3eteen7yujyn9gtu0k5xte" - }, - { - "private_key": "d6270eca54caa316c7a63012173a74abbb9c77f5a29fc3c5028f3b525e40c62a", - "address": "lax1q2xw0xcm09sk39j7jj2uem64fj4dr358fpn4ha" - }, - { - "private_key": "12f965d68b18c7c798c0c58b3b888708858bf54c47e20a9865f2ab76412297e6", - "address": "lax16m3vk9s2ugzkpugjvumj28quyx480skrfjw030" - }, - { - "private_key": "801978257d358c0d5f04bfaa2a457d7f834a665b99c8c96c77a8cc2b5ed40a46", - "address": "lax1sgr7zxfrf335y4lm4shct2fmaw4sjjp6sfkay3" - }, - { - "private_key": "c99a470d976575f4d346300971594f65cdeccdffc91ea5d05a140176b9b34acf", - "address": "lax1yvh9850wnmvt7ft506yshatk4mr3ec55uy7ya4" - }, - { - "private_key": "eb9bc613ae1bb3e0337554371f9e6af4200131333f3e5539d55c9d7d3672a09f", - "address": "lax1wcagxudhgp2yzysyn945zx8rgeq4d97xgqg33n" - }, - { - "private_key": "ec3550c21c103ccfe75a54f2816b75a5cb43dc98954548b06a2d0e0c0e1c8858", - "address": "lax1wxl06mmgc5du4f862tjjq6sv5m3xr7hh5a9qc2" - }, - { - "private_key": "27e8c1a34703182708ea9acb8d14f71597d10464763cd36eff571739a88b25eb", - "address": "lax1zmnysfdg90d6hsgs462ermjd4gzyxe8tjr0dge" - }, - { - "private_key": "1d9c45af4ffcf8c0160f02e2bed29fa91631d4aa4dbea7ede4f0446eb3df2669", - "address": "lax1tgjz94fcnxv3s8px77e6ms86rfrzw2kfm6xxtu" - }, - { - "private_key": "3460740347498a3c628eae40b8503d381f4789a66b59a75a1df01332f4771e0d", - "address": "lax1tent6r9sz6gch6ehfyv8zm20ymn9ax0f2smzce" - }, - { - "private_key": "b40a8aff75373f907b944b49800d3b9bc9d0d6da432e093b4074b59edb03ea67", - "address": "lax1s7ssgvc0nth0e0desqkgzdmzhtp7cz77qm3ley" - }, - { - "private_key": "d99778bff6c9d1250d98ba1c57bcc0ddf7cfc13a96db08407e71b34d9cb5c1df", - "address": "lax1ka3hgfz9yumvvzag78u9chdt7lul9v46xg75fv" - }, - { - "private_key": "e377d2f857f74b9980f99414b0b2f21a8199bbb419e9a8b1c30597d1afde4f6a", - "address": "lax1gkrta058amwagf5d7dalyte0et7fff0merz0h9" - }, - { - "private_key": "247f304e3d4888049613e41765003630f79a4ef70cc638a3abb0e73bd65714f9", - "address": "lax1njymj5x79qtjwsyq0p0v2uekdnz0dma3rh3xww" - }, - { - "private_key": "1365f2d98387063e9429a9652ea1b63ad5be6555c12128bcc8b39969bf8c6b33", - "address": "lax1w62q8dlk3ex3kdjv584qv629mrq8e0c7s9jtsg" - }, - { - "private_key": "3d483193ceed8d4512d00fb9a8ab78cb0be07a6fb8ecf8763b6a30967edf20c1", - "address": "lax1usyhn3gqvzrnyyycfe4plfxf7ws2mevmqzvetm" - }, - { - "private_key": "471702c7d9d847a3b7ddc51b93c1369829ea3da6e273a8974fa1aa64d651137f", - "address": "lax10ulh9uy606t70kmg273gxlrm2n7g8wnpdwad9z" - }, - { - "private_key": "7e3be95aee13d62128d8e498bcb24b57d4e02a5627b68ec8aa2355f615ca1495", - "address": "lax1rews35p8heprz8pvjw4nwem923f3pe4xymm5sz" - }, - { - "private_key": "76323284494c14f9a99c32ef55da9723174677cd534973ab826d2727f66559fa", - "address": "lax1ycuwc8cg6uc65e8lye8h086j4nlndh47yx0q2g" - }, - { - "private_key": "a1cd78ec8ce285cc272aa98c99cafaf946e72f8aaf59e49cb4404ef65d5da00d", - "address": "lax18gqtez8gs9dl465308wvz2p6waau2tnewgvxzm" - }, - { - "private_key": "5e707c052cfb31e02b8258b61b9f3fd064b899fba7d7bd9180f530dbd065c37b", - "address": "lax1kfjlnw0fvkj23cgn9qxwzcnwj4sdhjn9kg5apz" - }, - { - "private_key": "81db7cbe435f96555b027c09c133c0b24dc9b001fa5c27b0af939d7bd875a0b9", - "address": "lax13k9ww4h72dd9lngtvv63wwuwfhat67t9juldmp" - }, - { - "private_key": "3b1855e1cbd000092524b079bf0b4a832ee3f5090be9cefd5f92d8620cd35b44", - "address": "lax1dx7kwq7a9ynws2kju9llsz0e4jjlcr2vjz4w9f" - }, - { - "private_key": "d682c6051dd4870f52ce686bf7d35fac21f74d611fdbe479248e435d3bab37c4", - "address": "lax1ggvd50xaqlzqklfgp46yml0v89sv6wndmynkga" - }, - { - "private_key": "81f5a9d5a218a3ac2135b3612281789a9b89e8a734b4086249177973e7d4c8fa", - "address": "lax1jf5cmle5f0wmm98rpww4e4qvhu8eml323nxs4f" - }, - { - "private_key": "a8f9156ab7bb0a64b310b56c6f04c409cb220f29d273c5dd2523d5185a143ca4", - "address": "lax1a9tg09kzejvqxvajv0dp3p9ufmc6tan3adxdtl" - }, - { - "private_key": "e22b4e5816cd6d2dff26d938b5d5bbb1a51fc29312c25cff97f677c8dadcd472", - "address": "lax10ymaz2g7mq7ccwdd7hdrygjm06rsyqjm43yrwg" - }, - { - "private_key": "43d8e93b2383dd63329e003609a79253d94713231b601fc5597dbbff1856bcea", - "address": "lax16nrw2lc00lvfaxxwdx5pgqd5jvm48am9gx2fkk" - }, - { - "private_key": "c38997d59b20e20ec55b57c535bb41cb1d2d7a349946edef57fbbb2c04e8b3ee", - "address": "lax18fseeu9wl7s6xlhx8f6hxagfethvyhhsqad3xd" - }, - { - "private_key": "0ba1506f50f324312965db7de20b65684e792683cdf07069f7223e668d8cc8a4", - "address": "lax1xv3t85vy4qgauscgu3u5w86dg67d2kwg959nha" - }, - { - "private_key": "8cfc33a0f67d10eadbb20c2b7ff799a27ec2681f912f865159f09d32301b770c", - "address": "lax14487jsrfj83dl3rnr633lzqvydyzwxkye7e96d" - }, - { - "private_key": "38a414d1ed480256c7b98c60b3b189e73510e6217f009616735bfc001adb0ceb", - "address": "lax1p6yuc40w4g6q0z32vu7r8x6dmzx2pszmskcpgy" - }, - { - "private_key": "7c06cc6c9d4a84b9598b08b2de16ba9bdd78c9878d9abf7581127b202b99ccf3", - "address": "lax10p39vud8v0ggsdsfz6vhv94a2alha8tsl0y9v3" - }, - { - "private_key": "40f6e14d2f4e9b28143c7484387aec536bab762d260b640e8bb9e289e04e59c5", - "address": "lax1gkfrgmej49uvugj8p3cswaveptsns7lwws98c0" - }, - { - "private_key": "0e4eabe59f59314eb29c78ca93bb1a15e9bc34fb17134edf6432da0166798ea8", - "address": "lax1us8q6sv9mmfvuamz2fwt5u3yzslzvfn0mg7xsy" - }, - { - "private_key": "e52cb2a425e78339cda2d755376012bd38d15cf775df07eb838e305bc5adf40a", - "address": "lax1euz6mzslqprkur7pxwrmkf0mlvz2r7nf59jmkt" - }, - { - "private_key": "5d3ee0d142834aa73eb8654116af87fc2bf2e927c4599131004c277d65745169", - "address": "lax1luj0fmcutw4gl2efcdwmpk58xaghayftj4zyhy" - }, - { - "private_key": "a3d4bf60aca64e3474e05f0ec1f89fcacc8660cfd1624bf6a7973629b28999da", - "address": "lax177vl5c4hgp2ex4d5cmc3mker5q9zhz748m30u3" - }, - { - "private_key": "b1909885b225ba64c35cee931b92b0d828158d269223a300ec2708577260136b", - "address": "lax17yffwg4zrnnz5zl9hr8mf2k4fqpxmzw3qpz3nc" - }, - { - "private_key": "41740bf335eaed7cba921c1096142045ba81953dd388ea74d4ce66b8a674555a", - "address": "lax12ay7qcs57p0w925x052l2tac5n7zfpcx93p8qp" - }, - { - "private_key": "f007b6fca09dec4e0bc5baeab83fcdd4f547eea005eefe7b99d19f253e147a53", - "address": "lax1qrfq427rvex8yp7jwl9dhpetnrnn6ah9m9ymvn" - }, - { - "private_key": "a4b95b4e7beca8cdab3a41500e7d1b9e498089fb0df9e0330a7be3277b01e076", - "address": "lax1cu67c04l4lh7pzznrxm3q7f0zkdtj7hsnczayt" - }, - { - "private_key": "ea691db374a29b63ab09ddafacee20fe63f0e3a149ab33e5d4b718fb06d2e945", - "address": "lax1cmknxv835ndhfk07cu85rr0y5830ntt78lspw9" - }, - { - "private_key": "bd12d9a4bcc6d81e1da0a359b1d4edb237a392c8586c38bf2bffbe57c8f30aac", - "address": "lax1kxwgacewszelwmxmz3u2xwusnq04vevd28aad7" - }, - { - "private_key": "2b24db9260e94b17dcd81be7b082f5e3808d6921518efaceb7e657b54a28ad2d", - "address": "lax1qat5p6dk6t7ap6ekxgsg2nk6c7eq50u69tnmq4" - }, - { - "private_key": "47d3c0176d2f4f3a96a581664693f7e3251ed4a16c2f9ba641430bc3a287b782", - "address": "lax1sskdhflf7fu8x9t43vsq4ca4zf36g4sqk3yd3h" - }, - { - "private_key": "88d645ab38ac5baf68b55604b86f1bd63c3d8c4057db4f8cdff22deb12bd27fa", - "address": "lax15l9xtca4jfvl0fm03j63yr6j6hmcuu3hlc4r4s" - }, - { - "private_key": "ba3b5fb0b9ab43da5a2961b85c9b8adea3cfe36c65d7ea1610ad4ba8398c99c7", - "address": "lax1cana9drsmsm56c50360wvh2vwklvzs4ld294fz" - }, - { - "private_key": "162d81ba3fa46e1c376b30ab11c2848494f1af01a0be6204ad3586d82a41ec64", - "address": "lax1r5detw650vs0hamev7q37nx5upv77p3qcslmrs" - }, - { - "private_key": "187419123c0ccb185ed28ecb4ca7d4aad325835e0542d7fb93d91fe0902a7331", - "address": "lax1yyekw5q27h936u4wxkvuyz0asdrk9ctg2uyn3y" - }, - { - "private_key": "30406bf474675338c4cd5a73a3545cecb72091946a02f6c0204002009479dc70", - "address": "lax104spzl2k4dj9vz27u759f7kh620uvg9d3rfpn3" - }, - { - "private_key": "c30c8e149e002313523c964ee87a73d3fc9468d0c6ebdd77ff459d40b9402fae", - "address": "lax1zcn2n3wjdxasnjwkchhlrcle8kngfj3mjay8vh" - }, - { - "private_key": "f406407e10359e0f3d6520b99c1ceed5274a44c1dbd2b7a775955ac5232a710b", - "address": "lax1h44ftwc7us0knqg4ttnp02c6j0p9a4xxg80k6c" - }, - { - "private_key": "994f0c5fd70d13246baa27b06f479c9bd829b87ebc04ee1493c4226a9523bb73", - "address": "lax1mh57mmsx35wrnhp8w7eq747pfjf904uzd47www" - }, - { - "private_key": "542671c3b434f90833616fe52f6baefdff9d21ed18d2d93ec3aca0960e535775", - "address": "lax1zruhy7x5u8fsnha70dmyjfsa62jww58e4kzng2" - }, - { - "private_key": "973243a425d54319a2b1b702feaebbd577a899f429cbf417ca69c5c3871d3ece", - "address": "lax12ztgjlj204vf2xz3rtvce7gs00gyfpgs7ddwvs" - }, - { - "private_key": "7f151d6db002c62c4107934edc6bd757daadc73ae95e2e60fde3c680f26cfc85", - "address": "lax13ufe6lkkqe05hn7wt7tqxqfawgcy3gannyt5uc" - }, - { - "private_key": "5f5d261369a72eb3e52c411a6ce9868c7c01d561d2c8dbfec6cf11e0802fc3d5", - "address": "lax1n2u39rdk0u89rj77umxswxdl3jk0nclzr3f70h" - }, - { - "private_key": "d6a4029c0ae1c28d51f41298c44db8cb2c3a250c3deb3e5f6bdd0870ebf37457", - "address": "lax15gxauckyms29tqhkrlhn3j0jevpndfrmhk8v9r" - }, - { - "private_key": "4f031129383042f5267ec458d4641e106998fc5fee07a26d9e0bfefb2d47cf16", - "address": "lax125ut2v40qu6nl2pxjl4qr35uyhpsxph9x3n95c" - }, - { - "private_key": "480a1d7c931c088c1a32e48641e5315c7823360147686f3dd9ec82a328e26c21", - "address": "lax19z4yr29rqx0ku6h3x0lmpcm5j8y58jr8j5c6er" - }, - { - "private_key": "e5a9ea809e43ee0d662d63dde61f9b9089142319fbede8666730dde4b2cd2986", - "address": "lax15c8uarwjfwkle8uq33ue3sumcg4f4jfvvxy756" - }, - { - "private_key": "947d239ee7e5d9ee65d2aa019d40c2afbdcd3da143ea7a605f0c4846438fe7e1", - "address": "lax1qqcv3rxmwqaujd924rnuqu7fc5t0ukrfaawagq" - }, - { - "private_key": "cf758fad332efa65f2bf1b1e25af379aa4b855a27514bd3e7d85163ff421c64e", - "address": "lax1ku52u25fvg2uwx8j0wspcgg5egaxj4emefu7hf" - }, - { - "private_key": "20ceccb60e546c7f7bdeaf958f5c311c08f5437dee2e2bd2ffb0713fd33cd000", - "address": "lax1p2jlttx9xa0xaclcm46f8da0jmwmk57yjkjvn0" - }, - { - "private_key": "75d2e422dd5405f74843624599d327b0d0da63605871b6d9c7817fe61e4431d6", - "address": "lax1dtvdzkfdl3zremesjrgmj5m3kwe7tsz4sxrhsh" - }, - { - "private_key": "64fe454153a7852759673f82656b81b5a2bbb672033c542f20b1dd0ed51606b3", - "address": "lax1mnhverxlu08yxryrzx0xg0p0vgxld8nfldfl7c" - }, - { - "private_key": "6c0cd785bd3da63e55182427370f609fc85472d1218c5a7b7ace1053d7b5fb49", - "address": "lax1r8rucm28tsn8l6sjx2rmntzfr3f70dnuvsv77h" - }, - { - "private_key": "ba79551ac0048fecb149fe024eee164e41bafcda63a4aeafc41f0f250b690a90", - "address": "lax1xhe6xer7gpk3c4admr56v2n7qw6rqpq0spfxwq" - }, - { - "private_key": "570b0c4ac95a59f350a16cc074932ac4dbdef4f8a72c4af369dc372595da5124", - "address": "lax1cnlry6gn9j0l6aktvsyzr9xjjwv5yujpfmm5y0" - }, - { - "private_key": "b32dc1c2a067e1e9e6efc5cdab6c874ec76b090706056beae73e6434a8686c15", - "address": "lax14vst3jz3zf99hzjjnzaa38vxxv4nnqcju392t4" - }, - { - "private_key": "2cdecc2bd784d6465a1a220eaedf395aaed98faa02c190a63b9005019d0141ed", - "address": "lax1v2yp0596h7p70r5gcfdg7xqye7xm35dylrmqmg" - }, - { - "private_key": "35a0a5e42d0c3fa2af758492f496d253058b814895f4aaec2c69c18aac7ef5fc", - "address": "lax1tkctuza67svvfw2h8622v6r7c8ff04aefd70rp" - }, - { - "private_key": "0f2eccdd5c234733ed663742a6163a563a76cc6137d9f418c7328f6132174c0d", - "address": "lax1pm5rxxqv93u2nh3dnpgyhcsan83szeazjupe8x" - }, - { - "private_key": "aee4fb83e11c5726b445e8870b94bf79669ae8cc36f6d679b4071dc5f094f96c", - "address": "lax1q9zzqdxnj6y0tl42u64jpj7zppjgre3fkzprxr" - }, - { - "private_key": "12322b322c0ecde810cc1eedfdfa039a94190cd6cfdc9f750a6f9c5bca4d8889", - "address": "lax12ztsfkjlnqnhwglnwy22ttqvtpc6v5aad6k06w" - }, - { - "private_key": "b28dab3008c3f88e9da133d6cb1f2afc71be5b0ea0a696754efd6eaed19222e2", - "address": "lax15adarqr9uxrsla0zeggwgyqfwjv8meglsje7gf" - }, - { - "private_key": "e90462f3d7237f60b42dcdb4a20438611796cbbcebd9a3b47a60bd74bba4e765", - "address": "lax1a7tklkpp7pf4v9xqch7qc92rfcj220e3qwdj2v" - }, - { - "private_key": "e3e867e4217e867ec6fcab7752a93d76dd9c67d952d2f4211ec707a5449aa881", - "address": "lax1uthzfwm35szs2jeuea4qc4y652jy8ff4ptym98" - }, - { - "private_key": "9d590d844296b4cae1a084e2670205838fa636b57478df0c7081f5a5bc569e7e", - "address": "lax1gdacklkkllgv8ux2hel7kwzspmxdf9fw722pkc" - }, - { - "private_key": "17b05005c074b9880ac49ce5d6d95e6234f201537516412d6c8391120bc1d2d5", - "address": "lax1cyfh27uyu96p3c9rrgxtmwzscj5a2zhtny2dqn" - }, - { - "private_key": "9dcd73145f9bbbffe896ce7e0bc9459f4b21e560d1d185853bc2263622993912", - "address": "lax1rey2u7l28s3n76mdj85mf5g9ufudukgugh90em" - }, - { - "private_key": "136dc9c1bb9e4376d14f5c68b3385254938fd002cee620b571802c643ad1052c", - "address": "lax1d7wxak5yes873hj4hfc2gxm42s0sj0djrkye7w" - }, - { - "private_key": "afabf93e6053652473174b8891ab6765ddfc2e6829836758e37dc2843152235a", - "address": "lax1fkf8ly2kek9n9a35pcj9xyx9wu7hjechsk9sn3" - }, - { - "private_key": "93248d0d6f11fb0da5a87041967a222a908843c683406dcab9f4570416af33d4", - "address": "lax1wu7ytx9p7lemdd0ztercc0u6e9w4pz3u9up6wa" - }, - { - "private_key": "63ca92120c64d8200d75089c09a7bd641227f4477c098c63f0f5279029e9fe56", - "address": "lax1e6l6j5y86depgdqhfaksepje5kmd7yg0x2zprv" - }, - { - "private_key": "c3e240c4478710fa3e6f7cedf3d57e872f001fd489799dd48b417333bcf40bd8", - "address": "lax18dadmtckmx7h32fen68l8pkqkantlkjm38mukg" - }, - { - "private_key": "b48b730d1a742a6290aabd8cd38627f97046eca992b68a04e4d9dc1d4d803346", - "address": "lax12c6h3y44kh9rzn92ve9fkdwsat88tw6z2azdwj" - }, - { - "private_key": "72c4eb156d7d348d4faafa63c29d0b67e33233360e1995a7eef2fd87128c9ff6", - "address": "lax1hysxerjzh6x9eyptd3m8h4a8uupmdxy94gxdmm" - }, - { - "private_key": "83c89744b29b02b34446bccff92e0a42cc519919cf8d66351f559a63327ae9b4", - "address": "lax1xm6czm0u3gcp6hce4h6xgr85p0l39e4xe655ay" - }, - { - "private_key": "5e5c0fd285677591d2c086c60185f68d523217f1fef43ff098658164b64a7ef3", - "address": "lax1s70etxqltevyp4rme96lzurleracw56ugjkqm8" - }, - { - "private_key": "736cd3ffd6172a254b4cf2f22a0c4ed67021db73737f86b81b6552311d881dcc", - "address": "lax1htvkjhty77p7un878s60cc8p4u2xfjrfy4r462" - }, - { - "private_key": "b8fd02390a32717b9b03a6a2b1ae4ff4875f78c03e51671d1c9dfca7f122fed4", - "address": "lax1jy7clp9dpczkcp2zcjururp7g8yuhj0vc7x8x3" - }, - { - "private_key": "e248f07cc566d9954969ba69cb35bda00702bbab4ebd14050693748e3d4b6f0e", - "address": "lax1c7ugr43pa726vegz6z83y792m0xe46nvzus9dk" - }, - { - "private_key": "620e28c995184f2a9ed1b508a8de71ec75f9ca49b0ad44cd97dc64221f88c7cc", - "address": "lax17ta60cs6pcv5a23geu9htv9mpftd49myhqrej8" - }, - { - "private_key": "9eea7d5ac51f3a7501fce4bcc772bcc53afe772a6bbb59f0be1dccbf18d528d1", - "address": "lax1rcq29z9xml72w6v08h482k6w8976hmhjnfhzre" - }, - { - "private_key": "ad681cc928fd1c9308e2f9d6bf2ff9d2a16db2c50abdd7ae0688c25b8047c135", - "address": "lax1a0nf95vj2kghaddahkcjp5keyarjvke924ahg5" - }, - { - "private_key": "f37c43c1df1783fc89e623f614ce69eca5b3c7f72fb47ae8f18e4aff63852dc2", - "address": "lax1llz8mlhxkkefea8kr9vtl5lku8j3fa8mls0r6y" - }, - { - "private_key": "91e162de8c00693b52f95d19848720283af79d0c77139fb6662619e5f20c58d5", - "address": "lax1a23q85ts0zx93q6gfq2da9jtxcvjz4rvz7lwfd" - }, - { - "private_key": "33159c5dd5d61cf7ad90f601e22ac4e37bdbde61fc6808ad47924dc04e9b5e46", - "address": "lax1v9psndguca2hqfzsff6kky0l4lzllzy6rgc7es" - }, - { - "private_key": "37ff96cbe4ccc611cab18cfd3e2b23ebacfd6ef7776173a37a6d9b616a5bb40c", - "address": "lax18cfskev7qqtzzmec5w8tkz6ea8xm9yu9mkxwf4" - }, - { - "private_key": "d6e8f6b4856025c7dda38c0257971ec689b83fbd729f176916f1bff762ed6a30", - "address": "lax1mlzz8mq372p747hmdwq2c84kyanp5v99g26wwv" - }, - { - "private_key": "8d871075fc6e297367e31d2ef1114bc9add4fe94e81cbf19cc265a1a1e217de6", - "address": "lax1gv9yxky27ddu6lepkrxssccqnqzptqq7rhc38m" - }, - { - "private_key": "30a4fe6a69886fc0a70263f4de25d0e46bcaca1843af9ae3e0ecbaeba702f922", - "address": "lax1utatzwxh6575lw8shere4gu50sp8l3x244l9zk" - }, - { - "private_key": "6f0a23c6033c5c2fe83e89049d43d1b84c8a682964a4b08a5057f88659e9bef8", - "address": "lax1dtjk62n6lr3rfgsv62v9kfj7gae78juvjyh69q" - }, - { - "private_key": "5d7a1f97395f19aae3a40db30dfd3e18b02c350df9a4843b91823293787f1651", - "address": "lax1w82rzfta05d5c3n85qfs980q576xd5gdpuy5mr" - }, - { - "private_key": "98191172403f41b847122dddd165c95161cb57d05c2699d615ba73178faa3679", - "address": "lax1vsvsy5glsgmcavcsvzr73fxt96pgq3f5rvlqhr" - }, - { - "private_key": "ac5368fca99affe46e54034d746016edfd75011e6ae37d6b331c6243e67f5511", - "address": "lax1kqm59h96mh0c230t96e0ranmc4w5sxh3tk4ryj" - }, - { - "private_key": "6c939e3ec7a737c61e7ee8c7d43a39d3ef83aae4de7f1b259e1fdc25e9202a89", - "address": "lax178zzfrzscnklztzlzn3xrs5nuvc5a5sdd2hy0f" - }, - { - "private_key": "671559f176cf45fc2644ae857e820d541ea92901592b3208553d292547c7382e", - "address": "lax1uuxva5ewaljgnxz0kz2pkn9qfgllltvdrkzmzt" - }, - { - "private_key": "a42f87f94fb7d273bba40fe9d8ca9a7d24917ea305a7aaa86f1e0bef1ee30579", - "address": "lax13rrcanvw9vv3kdwfsq0f0ysfslgvt5ys3xpcne" - }, - { - "private_key": "f1e73f768768a52752f09310887b072fe45bdd7c0844c6ddc5ad1c7e174c4276", - "address": "lax1jtqej9nvkmnly7wmhjv6aym5hf592lvh4ju2w4" - }, - { - "private_key": "f3e64477bffd7d50596ffd4cbf6f0e55b56bf455c4b923ac327375a04c64ae6d", - "address": "lax12ydswmcg4ug3xvda7vt87ejl6nuhvt7s4yfgf3" - }, - { - "private_key": "e694124965badd3a653c387d57dc66c2e2ebd402a6e0bea2ddc6a4673cfba440", - "address": "lax1rt6eh3m4a8zvp370ywq7v3sr0nu8s58y43f894" - }, - { - "private_key": "feadedfd9f0fd53ce56fcf9fb03d6d6d644a5cf1fd771a7ef224436a8a9befd8", - "address": "lax1pja9c4zqa7al50efydrn9w3akx9qkf97pd93jn" - }, - { - "private_key": "2b1d1cac1addb94dd24002f3d1530784c3934562efd6b055d4e00241c81940b9", - "address": "lax175z63jrkw2thny3hzsmpuudl08xkty6lv4qyfh" - }, - { - "private_key": "8317d1c79b4dbaff1637ada64a42e238eba9887de94dcf2ac73a6af9379c5c4e", - "address": "lax1uughhkd7vyvcxx0hug5pll62cmpkmsf4lvj086" - }, - { - "private_key": "805c42ae3d11fcafb271b533e96f8814c36113286708dd4fa401d24b113b1c89", - "address": "lax1t5z3d0m36y0cf86gchculfsw8gq76ttrp3mjzy" - }, - { - "private_key": "c5745cfb52cad34993bd27a95bd0dc1ac192a5b160a1e26c83b08bd45c739f28", - "address": "lax1z8wm9jv5mnvcgmjhlksj72acnsy2zh3m8x9fnx" - }, - { - "private_key": "4603cf2bddd29299563765255d6d019971456b5680bda5a3b58739c4abc0ae0f", - "address": "lax10gxwx4jhayf7lvcqghy48fx07u78nvxwkvxp03" - }, - { - "private_key": "def13de4e340ea561260c55c0e7d9a635ae0d219e826a3288df32a8220eea0c0", - "address": "lax1mtzw3hc34q95a5w9nejyzqjf7c8aad5rseetwa" - }, - { - "private_key": "635a02c50cd7bf96c74b26f8837986ee0f3212458b18f5c1d370bd4f25725058", - "address": "lax1tsmzgulmt5qkzw296czgs65pr4w4pt8uynj9v0" - }, - { - "private_key": "bf8f886cc9507497c9fead912bfd978c4185c43ce5671943ff60238a5055a8a6", - "address": "lax1patfxmtw54afya79dclckm34aw88pkea4qhrdy" - }, - { - "private_key": "c8a18479bfc8c86e8bd2147eab83d7b4f8fdffb3fbc04cb1060ce266fa17669c", - "address": "lax1ltrmlnlttemp9x0x5n2fykltq59zhjyev5cd2g" - }, - { - "private_key": "c89c440a77bcc5e4a383e7aff11e00f793ae6a0f5bc336f5556832be5731c2a7", - "address": "lax167c3daztn679l92jfh6j0hjwunx7gmlcrz869n" - }, - { - "private_key": "607509a9b9e13c7ed096ed5cf17dd7c96a30c5bad25793b7cbabfda8d9806c3a", - "address": "lax1dyrvzs4nfepa98k749ck9zrh2ngnnyd6t7uute" - }, - { - "private_key": "77d74bfca5c4e60c38d33c50dc3ccea16cffde5e85b626094c93bdff3b8a6108", - "address": "lax1lfzzrsvnh4wd7zyfvv9exds7gcxkw40nwg7zma" - }, - { - "private_key": "463f04e1b111c5a7a0adeb01181d2fd8d5092a9407d3ba010a773342057c36c3", - "address": "lax12yqet76gzl3uktgp0rxhxa7y5f3ezkmx0svhvt" - }, - { - "private_key": "ddbadcf33c361a0340fb3c1a70c4e9ecd305fe33991c3e4cc108790d678597f0", - "address": "lax1v93nzeaettp8vsddtzcypumwxcgqzpcx9txrws" - }, - { - "private_key": "ca6800d11e84bc3bce595e366b8aefadb61f0faa4ea1b33b698856650955a444", - "address": "lax1dapyma2c9djzkm29074ns0x82zdmk05uxv0clt" - }, - { - "private_key": "ecb4717a98117a129d116778701d5df41f2e820bff5bc3f7a4605ddf32c0418a", - "address": "lax1c896l5vp7mje64gavz37fpyeyp9h20a5he7j7d" - }, - { - "private_key": "23a411f177e5955e1931e1e0bd15158d5bfc568cc5aff1bb0eff30e8fb4bc6c0", - "address": "lax1f28qh689fphgddwhsj0w98em27lntj67fzwt4n" - }, - { - "private_key": "3b14073fca6f2ced33c02fed784e7e9ba5ac28c7026baec18eda4eba10002424", - "address": "lax1afd9jyq6gafu8axtllvgurgqskyzy9e8rqly9a" - }, - { - "private_key": "a1f9538e13b2cdf3c9155c3d0165c25b106dae7abde7f7e78e0b2d290e243e98", - "address": "lax1d6kc5h5tkc4phggwgnln4jpytfer0xzrjkwv5x" - }, - { - "private_key": "30856605c3c3490bfbc8c175a179ea81b0134deb5c26d4239d06de2f53669367", - "address": "lax1fdxqdz5cxa78q6zwwtz5qu099aurwxda8dw2uy" - }, - { - "private_key": "12de38727d50c1e24e41c3f84a823eca0c038c6be9d40282d7fe88975518c344", - "address": "lax1lytnt2wpadm85jwzdl3etktknw09mwre47q0js" - }, - { - "private_key": "f5ae2c8d0d1658bfad8abbb82cbb0bbe710bd7a85d9d7c4e77645bdb3c815df0", - "address": "lax1g2nypuq5e5cr5nfmhz2xyglnvk5qj0r64efhn7" - }, - { - "private_key": "c3313529853fe825cdb55dbc89545ddc4a297f3ac924a61d521c9e577fe0e23b", - "address": "lax19l3nu7tjpfyn45qpagyc6s490hx75m06u68f4w" - }, - { - "private_key": "6182e8384f0dd72f71793b53026670785076a98f43224df77d96b255aad04b64", - "address": "lax1u3a5mulcs8rwf620ryzhuhvng3wpe5w08z50hh" - }, - { - "private_key": "68a022bbc3797219741733fcbe5cdbe59e215ba850fa10d2f39039c51a959d1a", - "address": "lax1ekjxq0hpzcxp2wekyj49xgwx8xg95jdw0fmpmf" - }, - { - "private_key": "ffb8eaa14c2be40a4e8f43bc8ea536cd66dec824862a69eeffbb4c6fcee3e120", - "address": "lax13zrmfa32mfaveqz0reca67tlnzdqgsu7r99t0h" - }, - { - "private_key": "a6b3b3440bf7f9dd355c0936fa9ae8af29d68f2a182a173e84a4278ec1fcec7d", - "address": "lax1vtw0m4v9hm2l05yrdx6t7lrdudlqwne7ds4z5c" - }, - { - "private_key": "34126795e2e0ff3124b1ebfc3d493ca3afb6b3958f7b0c8a5aeae6230410999c", - "address": "lax1j28c9tqy26mcxtm3kkyaycpq5909muwajpet2d" - }, - { - "private_key": "da0ec623f3ed11f6482dcb20bd84e7291f38ac785784427e2c0fc3483886c14a", - "address": "lax12aud3zgrfjmgdzgpewuq6zaqr9zv29nm42nhp3" - }, - { - "private_key": "09abe49a984424de26f30664096b70ad80e7539ad54fbf503b3981986c99e10c", - "address": "lax1zhuglcezyxl26akmrkeaehk3fwwgg0qvvdvsfj" - }, - { - "private_key": "17808dcf3915f1906459ce02a568a5b7a607f67a80935fe1ef6751336d6dcb01", - "address": "lax165nkm8z0cw8w85rv822d5ulzzc332mm2wctskw" - }, - { - "private_key": "3d43cb5069fe9b43d26d175f024d17884549d03122dcc80d7ae4591faf062690", - "address": "lax1k634lapr0lqaelcaj7q4pwlu3zncf0r3v48ueq" - }, - { - "private_key": "2e722ffb2a297fa70ea3db880bd6524c78093f0409c62955476ec4c2b81833df", - "address": "lax14aaatxtls7uxvgsztn8gdstfdyahgq9m7qp4dm" - }, - { - "private_key": "81aab8d04f825b77b1b8e6d1ca4ab948f6923c52bd901c9e489ec83aacef5739", - "address": "lax1upkvv59tq32t9avgkv7g36and6gj3655c6da5q" - }, - { - "private_key": "468a17a47523bd0f8c9825a93131bd7110f0ff1891628e75f4c391a71caf09f3", - "address": "lax1wxct0vwvtuv0usydn8r7a2cuwz6s3nujf8yt60" - }, - { - "private_key": "bad3c30a8fea47c4814785569d35206096932f4a866a1cd71a1edbd476b35186", - "address": "lax1s9dp8ggn3cggf0urq2hqpd9pkzhe2aeth77xq2" - }, - { - "private_key": "66ae8ce3c146403745a6c2c21ec9c6684973dac61299d403f30ecceb01e11e6f", - "address": "lax14k50my6543kz9z7ha36sgw4dqcplyp3h7hmdd7" - }, - { - "private_key": "08c766f0f99bfd0522f7a1286235b70c797770fdf7dc61cee8a20c20561adadc", - "address": "lax1jzum5c5xarycax775xsae5tk0lg38kh0h6e7q5" - }, - { - "private_key": "90f8f4a9fa25ef3a30e5ccea692e6c5063f52fa863cd681377271dc0e90b609b", - "address": "lax16upxcskrahwxw8zxqdtjjxfsen60n03ccwyh6z" - }, - { - "private_key": "012d1737adc6f8120c7a04ce6641c17cf64e5be6a74054512752f14f2689195e", - "address": "lax1nzunw20zcn9efxrlvga5wyjsf869uj0y90alur" - }, - { - "private_key": "ae94723c04f21be32adccebc9b9029c3480ca95537c51eb22712836556613e9d", - "address": "lax1vguxxkzyrk0tflwypgj8dgvrre9sp2lrsgadqk" - }, - { - "private_key": "e99764431e829f8648a06f79cccd673ea69f640cb9232a967412df07d8543ef2", - "address": "lax1thacsvdumxh2c4yujzhj792m8e44x6a3psy5t7" - }, - { - "private_key": "5a9118335d5ca6083657634514386c1433f9518938fbf59717be722a1567ef95", - "address": "lax1m7vnac3fnld6j0plzrgmfx73xt53s8xsx8yvju" - }, - { - "private_key": "83b931180f08be92ed53c2905b51701c5a5279fdedee5c7243fb61bdf577e646", - "address": "lax1v962ggz7ssrujr43zswfvnkyw89cslacym684m" - }, - { - "private_key": "ed49ba3a2a0d58c52cdfd69c241b363b27ac57d2ca47fdaf076ce6fc07d096fe", - "address": "lax1pxqc20q78zht7velgu5p2wark260szuzcf7sln" - }, - { - "private_key": "8016c3a7ec53bbafced4674ba49e2ddd7ebd7682ed241be4f1c539447eae5421", - "address": "lax16270mn9mx2c3wzjmp98xqejqzucenp70k8sdkn" - }, - { - "private_key": "81c311e476611cd39b26dc114a48ff1e5739424345c3dec99a3ebb99c80872b7", - "address": "lax1rdn223uncxrmud2na4mlrw9vl4u8k8cu763rrp" - }, - { - "private_key": "18721e35fb6a444fb09bf575227921a0e7fd2610265eabed4238e3882b5dfdd5", - "address": "lax19pscr32eyxqwlhv0mkr3hlcxjae9freel88dwy" - }, - { - "private_key": "10af7c863d79c6f0376ef7e118b52c81186c4431119c7824d2f259035bb8bc8f", - "address": "lax1vt2u57d887dqlx238xt6gjwcnkt7555xfgl0qq" - }, - { - "private_key": "e3a93a7f7b3951feb5ec4b3e66977c75a044654e330213489b64fa461643cc31", - "address": "lax1xy8cn5e0n7gec7506uyxuss4h5w8vhn5c7qdmw" - }, - { - "private_key": "c20700fc016173d5d196157c09847dabf899a7c62d8710895e4d97ba1eb20e5b", - "address": "lax10mlatat4ua4lud8uv78cg375h734r73yzudnls" - }, - { - "private_key": "103c23ce31f3891d5a5e70bd0105b896b4b9bb834825a51c72a9f6dbda6ecb70", - "address": "lax1ezcr0rpuqje250wgkudshtue6vhfyu83k4sd3j" - }, - { - "private_key": "c84e1a745eed9d82051b546a9fa79ff961b4aa78c357e02eac771ecb87a19313", - "address": "lax1npl38g087tu3k7mtkr7l2yakas3f9drq9cmuz9" - }, - { - "private_key": "74b311b9226c165b329093a56cde4a75ae0f5a8f515232568b479ebef92c65c7", - "address": "lax1aszymexlytc4l593z0mw9yn5datj8dz9369ht6" - }, - { - "private_key": "3e63c0f6ec3ae444c562ffffb77f5791b7a8f7b6e27e148b264d327371403731", - "address": "lax14c50ntlurhptjy2mnsq6jvwaqz6gq82knqe05d" - }, - { - "private_key": "58f9039746a3fc07d19f6a0f1b08cb710269bfbb6215cb489172b176ada27055", - "address": "lax1enzrxp0es59cx4ntx2c3s8e6735f3n62n0kakt" - }, - { - "private_key": "de735264c8c41e4be8492758f1b8d873401b762200042188ffe0c8b3a207aef3", - "address": "lax1gj6qvtzpvhsg3nkd29aku3hdgcval778uetgdm" - }, - { - "private_key": "3c5c199cb7174b5d21a5a101f4e1d64df01a081d8014a7d62a8d2e9ea03b9b89", - "address": "lax1fhryynu073sdprhnvqgs5peq5yt8h96m6hys79" - }, - { - "private_key": "4a743480a6127f0a0b349ea94005c0891c68ffa4224c3ad6aca20e07277356d4", - "address": "lax1ppchp5fwkm0estd5vqfp22384kycv4xahuqmrn" - }, - { - "private_key": "dc96a359cf3780a0afaa3eba35e9d952b158c1b83a8a1e97b1d94b297a2ba4fa", - "address": "lax1znra7tznfg894aar4634e7rp2w7z6cdjqkx6tt" - }, - { - "private_key": "bdc4476ceeb2996bedabc6f6f475404f882efdad5f1351a35a71ed4b9d1c47da", - "address": "lax173d7qmj76hy76429hvynqm4v35zlvrxugf9w2m" - }, - { - "private_key": "804203f22fcb5b895e38b992e394799ba9895074e0aa857fb4667a4156fdd7e1", - "address": "lax19yjtv520jg337sy030337jp0daaj8y0hw6nurs" - }, - { - "private_key": "5f66a20ea51d95548d500fcb4b1219488fe33e407bd81b03ef5de189c6c7a060", - "address": "lax1tn2ythkp56xgkvr48nfmtzdc2sn5ertcyyxree" - }, - { - "private_key": "9404851b92e32e3b1374a333f49ac496717e7d089ed3a204b6cbc15f16824026", - "address": "lax1peef3gwzsfn5pvw9nxdkfxpvn9hqmzm08gefnj" - }, - { - "private_key": "011293a0486f1a4abd8cfa246dfc36021fdff4574e60282ba2328a8c97420aa5", - "address": "lax16yyumumum827265zmna8ddvcc6q2nvflgkq392" - }, - { - "private_key": "94ddbc8d02f4455fc6e5f991c9008b8fff3fff607e6a0826202d77035b4de925", - "address": "lax198gff4t4q5n4ycrfjq3pknpr80u5vcuajtuc2l" - }, - { - "private_key": "7300ed40e81c2bb1836e73dea675625f47c46710096bc40193554432d1c82ab3", - "address": "lax1gvpkzr4z0huv09a75k3hfvush6q7p479c7g70g" - }, - { - "private_key": "b31cff468411cd91ff534452f8c05bf1554bc1feaad07b2c181a99d2e1332528", - "address": "lax1a4s4hmx8tp5fpsh7wmvwur25en508xwfd49lk5" - }, - { - "private_key": "8fa42592f798ad6548df0dc1fb0079c14683a82d6aae603d1f0438e4586cce77", - "address": "lax1tlacfvkg3znjdl8uar2xh5ytjzy8xxfdzyew9z" - }, - { - "private_key": "82bc2c3fa55c725e6ac9be4e0bcac4a8a8e2e80db0cc62107bf152fe20080df4", - "address": "lax1zmqz4yp6pxrjqy0cvnc4kan85xj64kkgd345vv" - }, - { - "private_key": "1555652a82c534fad6742bd79ea7f725bcf2e75b63e101168835d9127f51d200", - "address": "lax1nv0zrtqevqx4hxm3l84h4fzn90zsfcqm5k77wx" - }, - { - "private_key": "8c55233ece1024d91756320c50ca85b91ae859d6a0eb48475726ecf136930e06", - "address": "lax1lmsxr7au7hpr72a3lhep28k64ltqz7c3u3zgxw" - }, - { - "private_key": "fac2d607773f314a3bb9d7f23c33f01ef4e97df66d921399949c9bcefb655ede", - "address": "lax1yzjuwprh2gz6etgvxd9dyq8lgjuzfy4ed8zr8r" - }, - { - "private_key": "47ab367b937bbebb77d9aaf02ec2002ffb1295f457ee78f8688caad86f98fafd", - "address": "lax1fevsu05axagufpsz0g97j0fxmwu4394zf8k4nu" - }, - { - "private_key": "d31e38b693e452bfe1df951478809dc0b507bb004fb4c2053bb0959973550454", - "address": "lax1fk5gtztuuynrgn0rfveyvf2vt6hsu9qs6fyq4k" - }, - { - "private_key": "b3fac24a7a07cf45f6bc0d3ab1afcbd5679e7cf34465bdab5d9fc12d9f43b0b7", - "address": "lax1s83yq2a2f6nsmnr73l7za2zy2ue55x00aj54ns" - }, - { - "private_key": "84acf104ebd686115c3d35f9d86eb64f7cc185b6ca6ec340099a1eeddf2e4ac4", - "address": "lax1vhrr7t806ukedrnexftqlzyn50cz004cv40dwq" - }, - { - "private_key": "9ad2eb4d6f728fac8625d8f804d2f206ea886a9a9ef42d061141140759ac51cd", - "address": "lax162qxtf929tvl02cwthcg2035tfqnn62az5caut" - }, - { - "private_key": "e772c334e4657993da15e01d0c8517fcbb34f4bab3532d4e73dc88d7fdbabcaa", - "address": "lax1wpmjnenajq2rrvuw5l0q6tg3xcrumda8w9g33z" - }, - { - "private_key": "e0d53b3105919a02953285607c1780435564eb2847d5e253ff42b523be8c5aeb", - "address": "lax1hsv4dzxqyypqf2lqesrvpnxj0cj444srue5dfy" - }, - { - "private_key": "303be4b563f796a9849a054a387cec98851bf11e68dd1467a47bc7fdcfe76c55", - "address": "lax1pyxgk39ghjrsj7wvz23rgqpnjzey5n2pzx2gnv" - }, - { - "private_key": "02a360c7c1bad59261666cebbf09e3795f8088fe363f31cfe265574827df54ba", - "address": "lax18pnvv7evm4nsk360kgktzl9w7u2xmzdv52ajq0" - }, - { - "private_key": "a89913f433e4d07af25c3a9726094d352d428771b7fcdc2df05524119218bf38", - "address": "lax1ehg29vxeyctzej7dhch9gzm680e49pkmt5szv2" - }, - { - "private_key": "2910ee2e8b6f5e94224d9ca69d0788a514920fc52ae9919ec3c74beb8ee8fdfd", - "address": "lax1yy0cjxdwvmwe5qnvktcradzcgw6vjkggnntxgg" - }, - { - "private_key": "963b4c222e3c1b66812bed9f5e234208a1807cdb034098ce78e88a9c29f793b7", - "address": "lax1xpfrudmx6cf4cpe8dpkfj5wkjga7xwaqr22cpu" - }, - { - "private_key": "d8f4fd80a33ab5bdffb3289c871b4d5b5d2ba23f9f51258f2e5d705f380fff29", - "address": "lax18ake2s4pemccgpkgshgwgqppkh6v509tmyy8yy" - }, - { - "private_key": "56ccd1030fba5ac3a78046f4fb4d4d271d77f85e0ff0170365a1b1ad4623bf63", - "address": "lax1dtgec62eym675hxkuy9emuw603dtvkluejp897" - }, - { - "private_key": "3242a75768895f3bfd9bafdd1b4c2c85b94ce8e9b1c2140f3d70911d49c5e04d", - "address": "lax1t9mk0pmysr7tw3z586ljt0uf02s6ap5ajtjk0l" - }, - { - "private_key": "e9a0e00b1f1d373f001145285019b743d3886093af39029a0112f426cd9f6996", - "address": "lax1xzv6rmsxtrfm8jg9qxl5al5w8natlseshxqmp4" - }, - { - "private_key": "a13b755e06e0cd9245a7d63f12f7862ee621456b784c90cfdcba64743b628404", - "address": "lax1m47a9kxtp5gj36qer08y9680jm8rwayt7fp5pj" - }, - { - "private_key": "8672f1206e4a0b73ed6c875710e71362c272092b9734e9531ee6872fb4fe7cc3", - "address": "lax15c6ur2q8c637j9lqrwylp7z2q077hkdtur5y0x" - }, - { - "private_key": "cf5f2272776620bc6703b0eb2a01d1bfd453e00167c8bf3c03fb327450ec9ed5", - "address": "lax1as20k0r95hdpdkhve2ddjmd8eglxmvat5kx7lq" - }, - { - "private_key": "8037d334e6163dca0c522c357766b92890dd7984e72aadfb6524219c705e4b21", - "address": "lax15vtf5cat6u06qwdr0zrqydjftkpee27q3stdn4" - }, - { - "private_key": "56d43f9a90c14502541b3a98b4145163c75c952cf4182f4d7af058954acc960b", - "address": "lax1mlkzvjpvuf2tmg2g7upkrt65lm6dt6yzvluyq9" - }, - { - "private_key": "198f4d02a7b7bb1a5c628806377bbd6e58d42a6788c735914defc1cbae5f5394", - "address": "lax14seveasf8624knya8pgvnuvhgpru38kc4u5gh5" - }, - { - "private_key": "d918c4474a70a0eaa9b217a43142717bcc642d095462e1cbdd9ca105c58605db", - "address": "lax14dhx2qcpwukcqhvlu0wsmfxxp8lupmnmqxmd04" - }, - { - "private_key": "af12477f20b9201d0ba970537d750c4f995b66ecb55e891f07e5d9d1fe0c6633", - "address": "lax1z3qcduah2njug8hxg8gsfujeravszsuq0ajymu" - }, - { - "private_key": "0928dace72da7f65197b9c54dd3424e4350d60531f0118aab7483a633561e18f", - "address": "lax1zs2vjv2hkufmtxudmeqvxzfs7lyyctj4f9707r" - }, - { - "private_key": "389716b2c274db6f4e4edee592848a71b07751cfbab02777a39fa2ff5c8c328e", - "address": "lax1g2z889swpzjmjcjg5tcym7kmyrrzlv028cp4tq" - }, - { - "private_key": "fcbad330914877b0251e9faca66ad7c8a5fa0eccda61ae85c39c3c27eef27ee8", - "address": "lax1fwppevrd8pmfxlcd0vrmvaek597zyetred9xx0" - }, - { - "private_key": "9e29165af689f089473d6afa404fba47d12b6f562e340f874c641eeb943e4efc", - "address": "lax1x7rmzttaa2p67lkdwkmy9reagtpn0cdpc67g3t" - }, - { - "private_key": "1b59adecc89c4199566041c8d8643c8849ee1e24b3fbc871fd908512f7ca605c", - "address": "lax18u9sqc3vkczml79h9evgjt77tevaevpe32acth" - }, - { - "private_key": "0b20617a653145720e086b0bc5ef8187e865c2042dc3af5b81b4abbd96414f1e", - "address": "lax13y9rpw7m9tu78hsu2uuwcusm0duh4cugtahw4m" - }, - { - "private_key": "c552143c148ed7e688abf7e4e5377a839bda5cc404fb7448959704248a0a287a", - "address": "lax1rzf02yahnc3w8hdggqjdqj7muplfgjr333e0xf" - }, - { - "private_key": "c10f6dc1a3b0be454df0055ae036fd58f02ec89ba949a4438ed0f6a8cbbb1662", - "address": "lax1gged8d7xt5l7f4d39estu2zc78zhj8dzwt7v2r" - }, - { - "private_key": "f6fa13689bef8d52fdaa7457d4dccad210b73fcc8c75d06ff2f45d34f9016275", - "address": "lax16ppwm6drt09dyu5hyjzc9ajrwehzqffre36zjy" - }, - { - "private_key": "aa28963786ccf6231ba1078666f8aa09b7fd02a053f04ce15477e0a7a22bef8b", - "address": "lax1was4e96jmjufca26tj4w5faedat27eauu94st7" - }, - { - "private_key": "88124a6a5aa1ee117b87e558d86268004dce8f21c3b4a9f4f12540d9d67a3f7c", - "address": "lax1mznk53h8h29p9uxce7k63aay22n8gum6ac793p" - }, - { - "private_key": "eabaf2f6deffed316b1f9069397457a72c881dcf27c052784031ca0db6192a2c", - "address": "lax1f4ndtv3gl6jla7yajymfqafgesg2u8cumhw2n2" - }, - { - "private_key": "991025129994124af817077d8a7135d800addbf62706b0df6d72d1effcf466cc", - "address": "lax1ccg30c8qshsvchzy3aeuknvh6s5yvj9sm9fppl" - }, - { - "private_key": "cbf47edcd657812b26260a034ea7de72e8f31e99b525c0d93021d3f0a0b88936", - "address": "lax1g7ayp6c2t5vue59d0atlzv9q4nwlghju8qrgz7" - }, - { - "private_key": "0ff1f2a939bbc77ccc404facb15fb913702be6f93b09f8eb78fb2fddb70465b3", - "address": "lax1ytmyprk6xdv3vkug976uet725yzptk806kdzvp" - }, - { - "private_key": "e8275e3f522b52cb26ba6967215cd208a2d7bf4ef065d3f901f0f1290a468c64", - "address": "lax1u9nl6xx5qe28jtf9mg0hph6zd3c0zvqal3wvjz" - }, - { - "private_key": "2de091ddd69019262ddc79de7a901a1fc3531a202240f45669aa7911bdb7a648", - "address": "lax1q7q6h5jrughuw2epqjn4wy5yzf7h44anzu0v23" - }, - { - "private_key": "36bd558e48094b6120e0404c65f1da9a23a36c1ac696dd186a30f96ad1c5c172", - "address": "lax1tjx5pxt2f4zw0zplxg85m3jseu66cygz79ec3q" - }, - { - "private_key": "387e40c048373ed0708f8792860d40dff2355708f9f017eb1e0f8b9ff6ee9bca", - "address": "lax12nldzg97qpa2mhmc2n352ad34s0px8yvy9c839" - }, - { - "private_key": "6b2151d93d47b0d4f1cd357e6450f607e82d8cc2e61b8259eedf7407af7ba805", - "address": "lax143xq223l2u2kqxw520pp3m6py78nx2uzhnr7lh" - }, - { - "private_key": "61db5226106bfcb027065693f1c72a6e12ce985e19da5a90ad2c4ab4c2f7e529", - "address": "lax1a2fhlnzaqn2s3leph2qjz58uaztzt79fq6fvl3" - }, - { - "private_key": "7047505809018652110d1b596ca4840260a31f0394d74b180fe2415d24697b97", - "address": "lax1fdgq6jsymu4pxnlh4ytuuujvvvx2r7uqv6ucle" - }, - { - "private_key": "a5d7c44c77b3765b24a07b25deb9f9b1e6b4b0b41815c59d18b9c62a36438ed5", - "address": "lax1r337efl8tecptlhvgsdp2sqzewhh2ep79sjqv4" - }, - { - "private_key": "cd373c1c8ee2506bc1570c1e088db70bc56b12bc726a69712ec4651268d8fded", - "address": "lax1u76v3543j2rw9stekl0t4pkn4l04whxcxcj73p" - }, - { - "private_key": "dda51405af646193eba0cbe5e0b7e5ffa1b03987b8f3ab66935182ca7044bdeb", - "address": "lax14quredd4vu2hlsqt2hse95k07622cca9td8ruh" - }, - { - "private_key": "555b733ca7137cf6f5f0e0d8bdff6aa294b7b0119d7838f58d5d041ccf3cf0a6", - "address": "lax1w2xwfmnw6m4cjd8hqt8cjj6lmlpwexp29sjc6m" - }, - { - "private_key": "3c2c59cf645f7a149203d0bb27cb06367780404dd19b27cbf67d078ef26ad171", - "address": "lax19rqzplppmj6v0djp0zl6tjszxejp2w59ra4smv" - }, - { - "private_key": "48413f50b4589b22d1b022a736c80908d8081547e9792679c538cdbd611d659d", - "address": "lax1u4zekefnnps08qn2xhvdxavh59j8tmqnxk07rn" - }, - { - "private_key": "11bbbd7383f1e1c68c7cee0aa6e319f96e08b41eb5cc6a8dea09798f7068b099", - "address": "lax1w68atdf9z7hfjreafmt5kfzuqstseu4sg3d5l0" - }, - { - "private_key": "ab587dbd78ec080e648acd3d5c22c5acf01f9064cb719898bd66cba6a0febd40", - "address": "lax1qzgthc3dsr2r8ntnhwq2765ql4peezkag2vf54" - }, - { - "private_key": "d015e0618a91c266529421fc4c6f768dfc5729102c2c79288a87cdb85d7ae17e", - "address": "lax1jh4tlxc3qjmtswm9n8wxyvcrftax7zjx6zalm3" - }, - { - "private_key": "b8c08b50b4c05c6eb252802ddc914c69f96df37e2c69acc5d1d7351a3e95ccf7", - "address": "lax1xq53kyk28glal397x7ny4uv0qrnchfssyrsmgg" - }, - { - "private_key": "a5183501405a0d08d2f1d26691866de964ca1eeb0006f7835978209af8983870", - "address": "lax10d0z5gaj47xn8wkzz0wys6w9u92gwgnty9zygz" - }, - { - "private_key": "8530d787d498bc4198d26819c0948248252713c33834ae72cc737ddf3fef1464", - "address": "lax18dqy9zu7jnlkw30mnkm0untnkkwmyfq7tfavxm" - }, - { - "private_key": "1d261cbbad078265f30f301927224d016b3a5532c7add3eefb8bad1247aa165e", - "address": "lax1cnw60xh9gc5slg47dkvkxvc3njzl283s9ckn8c" - }, - { - "private_key": "d569c52e6e520911339cbe59477616b492addcbe3edbebbe039cc94f7662ddd7", - "address": "lax1v9j7qamh5030dawzsv59fhamwxpa5whu8xh70k" - }, - { - "private_key": "27621162babea63838a674e0943c2a21a568057b038f64ad908d033e70b7d135", - "address": "lax1ynvmawna2nf6wy5rerngs2e0s6z8g5x8ycvj3c" - }, - { - "private_key": "13df18fdd7e349095bc56eb8e0153ddac4c09f0d3dc5faf0f7c30902ea6bc54d", - "address": "lax10c6gtdr63xehqprypsl4kzgjlx29jw7cs7s24y" - }, - { - "private_key": "2daa980d94ceb647639cebbe90e3b8ff31d77e70553c9fa2e51d194495f5c26c", - "address": "lax1fms80yacpl2x36vh7j348aa79sjpac7l7skng8" - }, - { - "private_key": "3245672024589477c8ef2ae9e818c95bfdc61f07121caf170c930e4c06bb174a", - "address": "lax18zzp8mdfstpfhx0nex627qwaqcmecnr3pc872z" - }, - { - "private_key": "329980c3615d3a7b330f36ffdfa463b7e1c612466a0aa05ec9caaa2ce739668f", - "address": "lax1rkd88vvfte7u07xcd9qtj3vwdarkxvk6ln89vh" - }, - { - "private_key": "8c9bc6d4ff00ec3b9d8e24c83adeac534658c2c4e07fe2f8d79c6c0a8dd4aecb", - "address": "lax1447h7ta0qd8hpuetlsp9nt4zurjhat9fuykedg" - }, - { - "private_key": "6cd972d0c251112654925164e6487088029e8fcf598ce77b6fa791f34ed72b38", - "address": "lax1ftj2djsmgdg5p76u3l59ljp0467yezkvjg5suj" - }, - { - "private_key": "bdf67366ca0f09861447ba611a9c6fa232994002631b5028e34d8cff5a128202", - "address": "lax176jclfc5ahmf4jw6qxp86gheacxcn2cnt0fukh" - }, - { - "private_key": "f5d2db96dcfb68f64f6f4de84465aee62e9c52753d1606886b02abb9af86bd51", - "address": "lax19z5afjvrl509xcugh9f3e8snhap99yu7lecdpr" - }, - { - "private_key": "4585226745f52124cbd7652cd2cec9ca0b72e6e146f2fa0184ca287792217ec7", - "address": "lax1cjxn9a4khrrpv9ssu8c33xa8688h7pv8xwzwjc" - }, - { - "private_key": "0a361f4d7ca180bf1b459538499a2e83e5788f4ce203a32d7d0ee03dd9c387a7", - "address": "lax1k47kz34z6cyr7memwd0dyvk6ncpmstz9h2x358" - }, - { - "private_key": "c0c6d97f8a73b3e0b2e2e898585e5b591c7c5edacd12ecf705ec70746d15e01c", - "address": "lax1kcxcwh3l358axje3xk8a2qu495e7r8vaxmqvn3" - }, - { - "private_key": "afa8258c8eea126db8d11667519ad83e6e36331720fa3cba547738681a835145", - "address": "lax1ml5030ltk0qj0hvlxa5xzyrz07v6jtr3lz03cw" - }, - { - "private_key": "c73cea58281a765e824e687b70804424b6d682f3bf2d74c91e46f558ff1f7bc6", - "address": "lax1dgmp0hym05jpem6vd4egfln7uplp6lc2g5ywd3" - }, - { - "private_key": "972a0a6f8e02829d49bf2164961c269e8b83fbded1f773331872079009509028", - "address": "lax18d5rctnajl3l9uhhyaglnlw4g6g8dh4ez0dedp" - }, - { - "private_key": "17c9f8eff8ce213d9ba5b60c393697d0f09d4910d282b74f3f776471410ae464", - "address": "lax12lk8j9nny7t0dhzmzceeg9hjyfzyw998nkd8ls" - }, - { - "private_key": "857526665d101cda1798c8d235e35459352ee3e9d432ad4a6cafb665d305f111", - "address": "lax1dwcxgjyf2kgdgj0dkjhugjn30ezdzxqh2hg927" - }, - { - "private_key": "389b1c3616543bdcc338225727e5daa791a68cbb546cc1c7fc72997e77c1e4ad", - "address": "lax1tz62h76gcp70e80cwmsdfcvmgx90kl0dju75pz" - }, - { - "private_key": "e8dbe1722a0bf5d4ef4840059ed0312b610438015d05ef9f2cfc3c1dbe7786be", - "address": "lax1wyarkmj7x00h3sddr7u933p5kev99x7fasxe5x" - }, - { - "private_key": "ac14760d3f8641986a5b3f4adbc00008448d0d99affcf2b3f251cb4d5a9c94c4", - "address": "lax12smycy8n7s8pas9munvv0sk75qvn870lpxf64v" - }, - { - "private_key": "bfff344b4bb1c635b3c2c7e33bf8477e8f595039f99bdf2797acdcd5d7b3920a", - "address": "lax16fll7v3l0knulxjqxwa4f890aakpvgwya23qj5" - }, - { - "private_key": "55d7336c9edf00de9364a88b3e54464b5b8b88f974833250f517152f1b3baaff", - "address": "lax16pza37t45p29klapuqzm7ekwvy7rl4ca7lsf5q" - }, - { - "private_key": "5cb5ee5a48dd0bdaf39f8f80d389c6a566c7c7a0566b5d06e1a916a02f77224a", - "address": "lax1552vcvp6w8zra0fydf9yrh7yfxq8xz8n0jnae7" - }, - { - "private_key": "fa53811130a3dfc730be47b8669a56785dceae2e49bbd6cbb3ae88775c9b74d6", - "address": "lax1elddut3wm5xs9tqwana89892m6mds94kqmrjkk" - }, - { - "private_key": "0a1c20434a0ffd8ed560455a45647769b84ceac8b6abe1588d4e84eac9e08a36", - "address": "lax1yc7vgkp5mktju3lwwd9jvdn5ztndx7pfz5dt0g" - }, - { - "private_key": "962bc7d6034096486e963996f7cc977ce6cdb5d0f68b6c9caee64af731c1f754", - "address": "lax1p0tytj6z5lfwlzh7l9d89jhj4nfmf4gp4ax3kk" - }, - { - "private_key": "080b9eba594a82737bb91383af0ad8e6f41807769cd20716cd1ca2343a1424a4", - "address": "lax190hlkd98nlzp47wg9ff7c3adtzwluldncxtpq6" - }, - { - "private_key": "25954a90ed3614ef2dc40f19fa3354c13775bb3ce288e2e88e0caf7ddccf5d21", - "address": "lax12s4ckw0rfumargcxxtcuf73zzc0j8tny3fmj0m" - }, - { - "private_key": "05771ab55a0b33188eccfd6e78a441d8e334a79c0e3eae40ec9291268a12483a", - "address": "lax1879ane0jdw66xvye7tng3rld40qrjvuftnmpfn" - }, - { - "private_key": "a0d2065ba36e0d99bf7affe0c21fcfec2600597a9600e258c0b1cd9d18daca8b", - "address": "lax14q990erwemkpzuleykzmcavu9v8xnl036vaekv" - }, - { - "private_key": "5ed46c674adf8971b1fd07c4c3ef2909da946551e267535fead8a9177df1a17f", - "address": "lax1stx2mtzm46uaa9ud7wgrnldlwx48msrgs83ama" - }, - { - "private_key": "c2bb89d3122043ae0ec7d253be3051553198ae732dc8a659ee5a60f0106450d4", - "address": "lax1qs90w4h3u2pjxde6h6npyfnuqs2enrnkq9farc" - }, - { - "private_key": "27fe68f11064eac460e488e6fb125a822e66391561bdbfe794c00dcb52fcd524", - "address": "lax192js27sdwj4nuks94j4zqmjzx3tv5khnsxewls" - }, - { - "private_key": "77d4b80faa333661d48952fa1090a99edb7ed2e4aea87272549c15765390e5c1", - "address": "lax1cwss7h6ax5c5z74cu76lpxedgsmv0qjfm0ztcw" - }, - { - "private_key": "bdc23f760c4f953437b7357387c717dc3c37db3e55e67b6d0cad62ad02b88b68", - "address": "lax1mmem4wnuvp2ukv05ln6tcnxp3ltm0edylzv6ap" - }, - { - "private_key": "207ff54e4a1c84cb06db705c00bb49d93c3a8149ffbaf55efdb789c9a9221635", - "address": "lax19gec2936ejqxpy5vvv9xx25zq0y8e8738se6aw" - }, - { - "private_key": "1d5e60d3ad4d9717745c163a642680af959abfd5a29d6ad3fe80c91dd56e51e9", - "address": "lax1adrludtldjjve099nke9pkyckthck9ftmnspfa" - }, - { - "private_key": "93193a887f0dd7b5debe55b85e268fac18cf4e7a6349c8681e464b5bf49d51c0", - "address": "lax1qhf5lrktxhhagsshnj6q0fnuwq5q92239c6a6n" - }, - { - "private_key": "1410c47758d56ddabd4afdef2b7742c523dbf38a2481c62bfda94fda2305cc5d", - "address": "lax16ev8u29g24sy089ytp3yr48gaqcd8678w7erju" - }, - { - "private_key": "f2dfc048b289a914acf819958eb3b46e9b47f41b51ea65f8e42cb6bc49c24cc2", - "address": "lax1g5zheqt04fas4j8yprg2rcsrn83w2yspncxk29" - }, - { - "private_key": "dbb978679c0fe611ce66686a13476f74ac12634cc7e0738e5441551b7f1a7173", - "address": "lax1qlrgqz0yuhafcmpw337ukvt5qn333t9hntj5k7" - }, - { - "private_key": "b4ad49fa14cbd8bf814c198701092d8fbd1bba27b87cdeb35419692c318964af", - "address": "lax1s7z35xf559jtydjc4vrrrqz5nurxq39csyx9gl" - }, - { - "private_key": "c9ae4bfea8257a3e07ec5706479158174e9eb124b66e67a81a03f6c5f4f4e34b", - "address": "lax13qcawaphu26t889uc8thvqxz4s2wj34jvdmagc" - }, - { - "private_key": "b7da4bb2ac2a851681363e2a625e298f6f19ccf410edcfafecea47d8695f53ed", - "address": "lax1twpnzlsuusq3rh2m2afy0t48nckvvf02vhapqp" - }, - { - "private_key": "877f7a5bf3b0bd91c73fc80420c860b75c9851604233d65c73958ec28b8a422a", - "address": "lax19qgs6rrptakewgkjcfuc9ccg3glf22k485qh4f" - }, - { - "private_key": "24574e1dceef0beacda4385d62a59ba73a3ef127c5138a006560f61b45feb5a3", - "address": "lax16sdlsj0w2hh2ega7jwdk5pgunpr4nv2ee74t4w" - }, - { - "private_key": "c692cf4491ee31afbc4285a1454ef59a72aaccd8855ac3aec99deb6c7d9afd44", - "address": "lax1rwk6hdy7mcda6sppy7tdgsht03u9hj8cd6q228" - }, - { - "private_key": "7103b74ae8d30824b1a801fcb500bab4d9249796bbd5b796275978ecef7bf7e7", - "address": "lax170rxmf4wwmdhprrvrdtfdfqquc3ddkt0njyykj" - }, - { - "private_key": "38e31a9525724f221c5f56749bcdb498def7fbca96e0be0bae74a3d8b8ac7bf6", - "address": "lax1uuqy429vs0ldwwh7jxxum4ajjguu7zxefxk260" - }, - { - "private_key": "60837675d6187785a6b8bd09acdb2a38aba12d7a0863bdae99060ce9b81938a7", - "address": "lax1y40ruywn5jaa4eqec5uegsl60uzdmrgk3ap3td" - }, - { - "private_key": "23b06bfea221c3f1c3d42757cd91fdafba323a0d8d974d080899d39083e9afb2", - "address": "lax1p8t6usm9ke37xzfz8d4ngygyw4p52zvsh6t7cq" - }, - { - "private_key": "ddd895445bd5197dfb1f4ba1893a158c1f79f4b52fc842a08ae4f8232a44d519", - "address": "lax1y20lwvzywc7t9sw8j3ppvlw3enepnzq09crfrv" - }, - { - "private_key": "4408f45020547c6b8e0b916f9f08a7cc1910abbfb003168ce8f3ddb294f6b9dd", - "address": "lax1959f3aymhzm56rpny9qww68d2wz5wx7hkgpk0r" - }, - { - "private_key": "773a506299efb8d37397ff66ce5d7455777a1542bc596f347e3aa8431a9be39c", - "address": "lax1mrlz853fkfnqeq95a3c2eesfzl4g3m7v89ege7" - }, - { - "private_key": "6a986883621f5a832f9dc087f908f3a46120296b683bf794cad544c33e2d591e", - "address": "lax14ejv57v7ajcath6ctx0nqh6ua2jxm28x0lrjn9" - }, - { - "private_key": "a680c52eea9db188f71fdb2c2715af787d7b9ad9af48d451b8e34305980f86f1", - "address": "lax1hp9ra6exvkey7qjk744765ul3fn870hlgvmqfp" - }, - { - "private_key": "39a6d1060c0c4dc6e9f9c009c80917d34b7971acad872bc7b2093886bbc0ebc7", - "address": "lax1ln7ey03uss9r588v8uqnndx3dpg5pnsqlqdx50" - }, - { - "private_key": "04741223dd5f7970b65ad15dcf6894fc87a077ac9648b6ac72dc9823284a3c97", - "address": "lax1ryayahma7jad36ewkyetfdj2uqlqlmql75mk7r" - }, - { - "private_key": "5d36d88c0388e63ac243e27c3533f646dd5f641227c8ac4872385703f1edb28e", - "address": "lax1w859saajfnd7e5lf4adv2t3j3597hytqjdzgmh" - }, - { - "private_key": "2a19e0cc162b7c022ca6b2bf8d626f95abfe48c9a80e01c218e252ceb09f9709", - "address": "lax1vkxlt08vdlj6hea8d9qyzzhd6ekqeh5ptm9q0w" - }, - { - "private_key": "4808d948e86026f6c094b4e0be1f570ca66d40027b8359e6ec47d4e138c3dd3c", - "address": "lax1j750fx9q8fgc5nemxxpvhx366cyqhz7y48lxh3" - }, - { - "private_key": "67c63083b172ccd7f9dc0d1da4f3e129ec1704dfbdaa7ce160d0239d87e86c83", - "address": "lax1zl7nt7202tvanc806yecjerp53y03u2aazjkrm" - }, - { - "private_key": "1b38a8b1d07d0843b674bb715ef686fffa91b4e2d58169beb3b5b22929c088ad", - "address": "lax1kcsq387y36hq0yw824vdwlqe4rpz0yrcgmqwrz" - }, - { - "private_key": "c89ff7eb282732667869d6a6a3721728f9172c885fe66d47a14bdb14549ae106", - "address": "lax1w9epe0tzxuums6lmw9vdtnmqg24apsy9zn79mc" - }, - { - "private_key": "3453603533b6cfb0fecfaf98ddbab44d61760e92b1b79735d8c7a3413cc89599", - "address": "lax1sa3l2nmz6cczzagde04fwvwpql9988gm0jg54h" - }, - { - "private_key": "b153019f59b01ca70222d4fc8fc3958b9635b8d4f433233d8908e6055ba66dd5", - "address": "lax1h2anmfljtm04q4ktwn7qcv2r9znhnxvcx4wkdr" - }, - { - "private_key": "f21960b0479d8ca081bbf1fb798801358b1a56a4c249cb04f9da65377fb3cc76", - "address": "lax1n9xkpj73caclrxnwrqfg6nnezs45q5h3k6huxy" - }, - { - "private_key": "6f129c2cf744480efa4c782911b0f0e5d68cf9b18839eee2eda99fe144eefb29", - "address": "lax16vng53num4slz07tcyfl2r3jnm3avgvvx22hyp" - }, - { - "private_key": "41b390054bc5be28006dc90b87e03563540c74d039a98d6f154a2c23e20a827d", - "address": "lax14j9dq0yh2lt2g24hrkrsyfl2yxym3tzluhj4rp" - }, - { - "private_key": "ab426a7d8a642ee92afd827dc72d94ac88fc13c80307748c6f8755448f793fb5", - "address": "lax1p304fz25wfx40mpqcqrpca042rc6tgmgyhgfa7" - }, - { - "private_key": "3d5da6045a7af25d571c88c12b14ffd6e579b237f49c4fd53f9251300c9a1f4d", - "address": "lax1cx0u3cpdsz9ckkf6qxmvm4579uer7zv6l9ukq7" - }, - { - "private_key": "4d25fd174ceecdcfe9501170ec46bb347d90cb63b459241388627b0e0d037e8f", - "address": "lax1ew9e30tpwmra7p3fudjdk3jywup4dk0m0j7ltc" - }, - { - "private_key": "6b1b1430f5242b0df59d06d274b8673704a0c797a6e41bb4c5e975019353c94b", - "address": "lax1dx295jx8slqa6u64lvqyrrxk9qc7xcc6ac0u50" - }, - { - "private_key": "bb83633d68f2c6e54f49706d2e3b28488e47ae38e231933575a4efe1f798d284", - "address": "lax1uc0kvrf2eja7ynpt7plr0vdvsu2zeujca50v4c" - }, - { - "private_key": "20109717c9da61f70600c5a9b1d2c0bc78a9e81238cf9e4eb5754adb60629157", - "address": "lax16wuwxhezhqrnjr4r00p7nm5h99x044m493vhpc" - }, - { - "private_key": "302cfa7c871f6e65d4b5e94a7838b1bb60bbaa588b0780bcddf16f49b09a443f", - "address": "lax1eqev5nw9k5yucazz04nk6urvqqgk2r5gswy2lc" - }, - { - "private_key": "f378ac9cbedc299cce61307d28d6917ede7f361d82ee96870b1c616ab9af13e2", - "address": "lax165s30grrvy5vmjvjzyjl8xjcl09k08cuf0ku8w" - }, - { - "private_key": "b0d470ede20c465a520d19dcf461832d2de66ccdfc5fcffe71ab8826f49b3990", - "address": "lax16zu8ymttvv3402yh7jvxc5r6m6x94rffq8qruj" - }, - { - "private_key": "4116e4bfb045bad588bda855b226b940649e8d7d1a6f2072b65f25166ca1a02f", - "address": "lax1ugu5fw3czakgck6k3qswtshre40l63k342nm4r" - }, - { - "private_key": "58c3a8871bcf932b3ae7ea393c5fd20e8f5afe2977fe31b47c24d7759c2279d3", - "address": "lax1nm5vrz6sqh3crf4v44jnj0kxsl8qvdnw9nnwtp" - }, - { - "private_key": "cfddb08297aacaa8c39db776b714d3db0c1b0a4e584476bf3c62fddb9c7d80e2", - "address": "lax1jxre503sfu2trfzkkeqptwcg9h59wuddpy3q5t" - }, - { - "private_key": "8bd7a4a6f607d73472bd06d603d823ef1d5d9cb5b4c27ce0c68dd9c4bc86451a", - "address": "lax10kyake4t0q5svhp3m7hu4pgn0glgk408sfma42" - }, - { - "private_key": "ea5730640c629284c94ebdbc7e219a90df6cb53cb2d39cf5b1eb23212dc55f2a", - "address": "lax164ggk8x6gefw4n2jx7xptp9sjz75pawa265wke" - }, - { - "private_key": "a6c45549bcec79badee94f552c5605989d16b5fcf167a45cf1dd19f89cc8201a", - "address": "lax1hmg0vmn7tpk2txn5hewhrtmj89cfpge5xmm3yk" - }, - { - "private_key": "52c54026b1ecd572658312fc96a2dbf850d55378e01fa174a28d8393d23acebf", - "address": "lax1k25rln4rwankmjreh5ey3v3gmc04c228h6np2f" - }, - { - "private_key": "b5e3c3d44e55f7cf4e13d9fa42ae1f468313917280c2171a9df207760528fd93", - "address": "lax1ulcluufv8aw6fks45yvdtz9a62pg3rse4akaas" - }, - { - "private_key": "9b37e1c3c1b1f9f437761cd3a8007e8ce288819e07301103e9fadf0663741382", - "address": "lax1rnmjxe6ht6rj37vhlsly33pd4h0727j3ryxxgz" - }, - { - "private_key": "c8f09313ff02f4f4352a64a7eb25a55416676d211f67c4a65076f08f96e0262f", - "address": "lax1pht5yep6vjd5x3u4eg2c8sxu5tdms6nmpdtqyz" - }, - { - "private_key": "5da5583e31ac6d9e996ca06547dcf5b04b8523693531da0777f06d5898e9586e", - "address": "lax16fu35yvkm9jq7rrnsfdhk5y2chr7cspss37jmj" - }, - { - "private_key": "2b3ad0e41f640bda59f8b2b59014a095328bc7788c080ba05e140eed01f9588b", - "address": "lax1k00f5kzxvy5s9jjsxlv47c4ythvtlu49z92a7w" - }, - { - "private_key": "4dd7afc624364a085fe46f62e95c80cd7b5f35c7af40607f9a0d62122fb25e41", - "address": "lax1ty7ywvd0dy6l9lvhvux8wm5scdrwxph0fq03uy" - }, - { - "private_key": "b848a9f5a1b0ac70780714935f9c41429d07ec240c2a30af81b9b3426bab7e56", - "address": "lax1ce2vy02z79k89vw588t5cjc6jv6vlrxd6sp5ef" - }, - { - "private_key": "f78b608fecf1c14ee7d6c3c0ea156b42d179a9405cf34ec5f51243c2adaef221", - "address": "lax1x40yt0muhmgl73r25haj0mnwks4h04yz6gnpx6" - }, - { - "private_key": "6f33fb96cfa4fb0f20637f93e10cd577ac6c2b9c5c333523bb955878daf06ac7", - "address": "lax1y7pyp5zejgtkzgtxt5mll0gtezvc686fj30spc" - }, - { - "private_key": "e008b6f0275023ef0debe188a5a2169b3e3fba5e454aed7e5b5091756b965203", - "address": "lax1qgsez589alh69tgj06hcnslrnqtzrtk7gaklgx" - }, - { - "private_key": "90037461503ee38246a4969cfeadb1e77916d18dbdc85606bec63f64577fdc74", - "address": "lax1qxk6a8uzecfdfu6ju6wmrqdnuyzjy9z62r4xsj" - }, - { - "private_key": "09176d4cdd5860aa35159f15ce3d553a935d4d6fafa1cab64d25421df9569fe5", - "address": "lax1dl6gx35dddl8n4j7wac2xxdcjvtay33jlzlyuv" - }, - { - "private_key": "31e98e753069ff5bab9b5c3de13dd1fec874025514b556a2f22722dc6140f730", - "address": "lax1x64smch292yuyd022455qzn6rfgzve6m57e8ak" - }, - { - "private_key": "af1f51aea94e33a674156c471bcb8d8e94badd38cdfac367e5616b484c473f4b", - "address": "lax1uq9s85vda4azxesflulh3nfa794c9mrmcl5sl3" - }, - { - "private_key": "3513e03c6efd74d193bd366c00ed205b71ed6637f40796447479368f82105d4e", - "address": "lax1fc9l06t5m57wf9dkpmja6kacwtr7e7xgr049dc" - }, - { - "private_key": "af0c92a35e09f2d799506734148ce070bedfc5aabf7b8b1424c34458e6405a77", - "address": "lax1dce5sl6s5e3y6yc8d72l4ramcsux8r0frllqer" - }, - { - "private_key": "bb0daa8acb7f61fd2ef446e770a160a2d892d22a276a899a98ad795d1b102632", - "address": "lax14ttgk7n2lfkkppl52822kk5zjzps0qhxc8maja" - }, - { - "private_key": "c6a1c2631d7b9094b764f95a084b24ee202949ed7a90f45dc79adc8efe4c23e3", - "address": "lax1wc9ukmnruxwezk73lsfahteujv0hh7pfx7hn78" - }, - { - "private_key": "8908c43fe7ddad82edab2adc06793b6e35831fcffd80cb936abec24c9288ba03", - "address": "lax15acfywlat5tlkjulaeh38y64va6h9dj472skfz" - }, - { - "private_key": "87b83a753aafa11963e64bebf9b8670e937d3b0fb5284225c67cdaef5b5be9c5", - "address": "lax199mcyergn04uelza6e9um26fwygqhfxqacc3mn" - }, - { - "private_key": "341567ddfe26d934a2d03446a8a1442c285837c5559f44a31bca012d0457fcb8", - "address": "lax1nllwn472t2p0zqg0acnarfplxan7kfxln3d8t4" - }, - { - "private_key": "fb1aea722e20b13132dc942af0f4d1a8519d1832a45a674674ba27b9af0f3362", - "address": "lax1lrtm30u5p65fq0jswd74hgw322uvjwd2rtdn3c" - }, - { - "private_key": "777dc95d27c4ecc8727466662347b8643417e1a02999bdeae9eee6955ffd47b1", - "address": "lax1263f4m5lc8p3m705u8ua8mgfjv0le8sc59qp0v" - }, - { - "private_key": "23367b7f981bb7c8182c8e108ed8c7574f85242e5aa7305db0f34a075a4473a5", - "address": "lax14xnj75tr3mcdcva9x3nvh8acfesp4n4tcw4ke5" - }, - { - "private_key": "9816a69f240ab10a26dfd8a0b1570631bacf3fdb5ae46e34e5ded7b4253b19fc", - "address": "lax15a4mz7va57cr5llr0jkylx94d4tl9spfq9k0zn" - }, - { - "private_key": "167d31d23c1977988231f675699615acc769d873e4d54ccefac8bbca2764d33b", - "address": "lax15xjh8vww97dv4fm8wmvpmatym769hg2c4gcqqn" - }, - { - "private_key": "86f0e16967cb3f08e182c03e010c995dfe4694f9a807eceae6c1fa98f9dbb922", - "address": "lax1nhyy3hzqfhcmcvedl3ep6x77d2qv847su3kssk" - }, - { - "private_key": "a65cdeca16175d9cd3fa19695fabef9f5e2fee51645539da925ff610b9eb61dd", - "address": "lax18tcd6w06z254rzpn8xzl3yedmmlgtnj0maffvu" - }, - { - "private_key": "688db22bb9726235f498e7c7933f101c53549fbf7e4c7985ac7052d242622cdc", - "address": "lax1hmam2klq5d8vm4vumxs5lvcxasr68y7m9w0w50" - }, - { - "private_key": "23a5a0b4860b46342d42abd447af1eb3f7f512c780f497e944a7706970def893", - "address": "lax1xe62vknmqg63n47h6c4j6clfnvcl4jatyt082n" - }, - { - "private_key": "1e8f79840f4199b23f031fc989f2824f2a472488c9fa1317b4ceb3f76ce243a8", - "address": "lax1l6x4csasqqpf9w9q4rfswpqa05qd9xsekecu2t" - }, - { - "private_key": "c60bbfdd3e412f051ec96e236a3d2aaf344dfe5601045efafd8cfe07cbe37d41", - "address": "lax1raa5gnv7mmkz6yzxh04j5xwkje0cc7607m2esh" - }, - { - "private_key": "c41ea9f4035d69bdfeb75c1926362878d26ca3ae143ec41d2d62cf9eaabb8174", - "address": "lax1m2pcxxc5s6qv07z0np7rh97f4pjfjxced35k7l" - }, - { - "private_key": "a0c893d55d1c864a922238019aa24a24672e3d36a0d592bc0939e2292825a8ec", - "address": "lax1ka4udprexf7mpvj5unzrwjwxx9fqv7relcauah" - }, - { - "private_key": "2776b88f69338c05b4fde6f3acfe20e4596e54fff8b6ebb4aa6cf008c66305f0", - "address": "lax16yr2tdhm5s8z5xfx90cx9h6g254j4r47l3s7rv" - }, - { - "private_key": "603e1970a49f5c967bb3166cd81e2a4295874fd6599cd7caa69bcaeb991f4607", - "address": "lax1qpspxdg2x26wqf4plxp836htfnzgg0gsrdu4u8" - }, - { - "private_key": "c35b4005135a379739d08f6a3b4f0700c151c67dc05a36808ca9e424cc39c889", - "address": "lax106g0jgngr9w50jeak6zfa3uqjlfxlhuly8kuwt" - }, - { - "private_key": "086ec2fc405e4c99541b5e87461c6565d14547fadb2f0092913fa5675dad6b72", - "address": "lax1656v225a6n9vtny3jevlsj8melt8x7m0m6u86l" - }, - { - "private_key": "1aaa44fd11085e93aae576b4205baa69ebf5314ce5bc64d9377954448531ca69", - "address": "lax1zlldunsdy5lh9fxr6mv2kt6rgwm7cajp44d2da" - }, - { - "private_key": "23aa60ac01ee127f795ea6723d18c3727bf804c7e2818072a3365dfd3b1a0687", - "address": "lax1xmfxne5qq08ftyhnwc9culp5ffv2jr5x8ya2t7" - }, - { - "private_key": "3f414932e869422ddd0cecfbc5cdfd98108241eacaf7c618897bc1127036f605", - "address": "lax1p34sp5h8yxe4p0xqqgne7hza5uyngcw5unu0l4" - }, - { - "private_key": "c300664be83207cc98074b309125c8f77b00f13ac91f11817665ee9ddc3a4a0b", - "address": "lax1glrjqcdu28gs7nhl46qf5ddscqwlj7n34weqcp" - }, - { - "private_key": "6c439acc2f088f3d10ef40508121e1ea571deac9b79964ccd9b997ed04a7e2ea", - "address": "lax1zjdhx84r4tegxhyf6rsmupv3pep6za2wjxpezn" - }, - { - "private_key": "a081edfcf2d22aaf06a2140d69f98c1fcd4d59b96b20d9e6bc20d79717763450", - "address": "lax1zq4xer7tktcw4wz3k2586nsfku65jacpnmmjxj" - }, - { - "private_key": "1287b5b1b3f4fb53dc2cbc4f8aced425e26b4386a4131f72159c44ebaeb0dcd9", - "address": "lax1zpyy2pxugk94m5d037tazry5lc08g28kjp902k" - }, - { - "private_key": "b54fbab02908dd1462e69e2dab8ca1fbb17446aff90651ba806a1b7cb31cfd92", - "address": "lax1x0n3lcgy9dtckn97umwkhqh98ggy3cm8jtanal" - }, - { - "private_key": "4dfc08ba3f383ba783f1a0f1a39f9100aac67b35b5e97da1d3b108528cf92e7d", - "address": "lax1yppn9sxawwlzdgt9k73yc3jfn47hdc47ecqgv8" - }, - { - "private_key": "c47bb5beee7f6b39be27776216538807b75c280e8a5ee155cca8287a3677b8b5", - "address": "lax1tsqjqq5w7dyzgy6uwaudzc0pmd5scnfqx73sd2" - }, - { - "private_key": "6bcaaf9e6b498b612e605bd5c2e602a092474ed86ab132c4a58638be7a5880f2", - "address": "lax12jkdqhnqtetftnup2zd3cjcn0e5y7hvv55f4ng" - }, - { - "private_key": "d6fec6fa696140dc9d60c88edf3881b6a79d444902a3cc94d5d0fb7a4c0aee4d", - "address": "lax1xs6xsl0m43kleuuhdfvfkx9h02cgl3ayfg87uf" - }, - { - "private_key": "929b5e4769086824e7782be0187e4dda97cef4a0752bfa7a017d69a70fbff7e2", - "address": "lax13kahh9ukdyyflhaz0v433wxh45nmyk393xcsru" - }, - { - "private_key": "8a4f3eca85258cf28f9aa991acfde687c3b6125a71cd76714ddd88da50c7ec86", - "address": "lax1e0ewrs92qhpx75wjqh0q6pzade8n05vzdmqftg" - }, - { - "private_key": "eb0b057af7f8a4bbfd11cc4e10ab6133df5361bd3c60df684b5d3225ebaebed1", - "address": "lax1qemadwklm9n7kc3vzr4uj3468lswvh2tjetqg2" - }, - { - "private_key": "aa761122e30f8f14fa58d4522774eadf9f1d47e40298a6ba22dac00987a5b225", - "address": "lax1q88tk3a2g9tmvjnd0qee0tlkav4zp5srgdyv2y" - }, - { - "private_key": "b6fc5b02d059bf02fdb79005d626952ce32f34bca83fa4f5360e96802c977cde", - "address": "lax1s8g8a04fnr405uhm97y95ak5669stujrx7ns8m" - }, - { - "private_key": "7afa743e43d6f2e906f8c8ad5b2a45d8b238d13c373d229a5f554b997942f46d", - "address": "lax1vyslpn8ddajgetkcnv5uyqw7rwtzgnt8ewcj9y" - }, - { - "private_key": "57626526c0441c51941f57eb65a9ceb56a1b0f652e00cfb60c360216148358db", - "address": "lax14uxkutpdlz95y264jfhky9tt494lm4rjcycluc" - }, - { - "private_key": "4adf70bbc47862de0ad0eee6f6f9e30f17fb615a67d4f3af4d5a1e466f82a819", - "address": "lax1u667lajkrpuwapy648agdrltt8tm2e63s9vhpe" - }, - { - "private_key": "0b5a53cd9081f188a0f1925655c59b92ffaca4316cad7e0383d4f92b15c54f09", - "address": "lax1ew5k0d47ll3g9wr37de92hqhdljde6ha8vh0k4" - }, - { - "private_key": "9cdf6283a8ac631230ec60494e16e8e1922062b251d6bc205eb2d203e44dbf40", - "address": "lax1usdwzyl3h422zhwzk6qre4v2esgmertsh7aut2" - }, - { - "private_key": "301797638a93923b427ccd8e501b8a921bd7b66ec81d963014c237864260e88d", - "address": "lax1d6tpgk8ett46rdlhqeznmf8df4h2sqlkrmmjvy" - }, - { - "private_key": "70a5046d9da9c352cb73e76f6c7527146f32e5f380c8c0ebe98e93728df1e930", - "address": "lax1w7erf3dn6ejk9vudqff3qdvg9pxvg0wyfa44t3" - }, - { - "private_key": "5679cc8e6e730df353aadda67d7ca190fb1963a8c30adef7ec556f7dd2a3ce60", - "address": "lax1hzvpp0a6lcq7y8gl0kthfp2rs4zef7kyuldu7z" - }, - { - "private_key": "bbf0322b5fe1de143279a3398726d224b91368c9d304d0e8a28868721f5fc16f", - "address": "lax1wylcng82ljjf4edm6997m9tllevf7nc30va2su" - }, - { - "private_key": "ae797a95d24aa57b991407ffe677998548500dbfec65d89cb6caedd4116c20a1", - "address": "lax1yf3dfze2v7k6tuktr3rf8xs93wuzysvst9h0dv" - }, - { - "private_key": "83b06562030ddb5cd021df813fb8242cb327bd26bbe612633f5bc40fd1c594f9", - "address": "lax1u6q6t3waqv5jlfx0qapz7c59y02l3vcus9e2v2" - }, - { - "private_key": "e342c21fce3a16ea1e867bc7f762a107011fd4f5df48b949a7a2ff416ca866b2", - "address": "lax1w72gy9n2a2sqhwy4dce0rhqdr2na95mf5jwuvq" - }, - { - "private_key": "8a7cf34816237a725f3d6fc0206fbd895f4581ae0e2501fd2720f8038ebdad6d", - "address": "lax12eg5qxjg30c47j9yalhdznhkdjxtwsmwpf977w" - }, - { - "private_key": "bbcd4aeafe96181a75949580864188316a32250978a8625c480409d082cd41ec", - "address": "lax18m38s4tzawl277c7v4vnjm84pk3mhnmgft3q4y" - }, - { - "private_key": "9fe3796dffe24fa86c0b040dea551ceb74337cf30d850fe5ed0b0099bceec693", - "address": "lax1rnsfrgudh2gf5n597dd8ak8z97vntg98ewmvme" - }, - { - "private_key": "6238103d8ba0cc71ec6bd9cf72420689f1ad619572e00bab067a42bf8f5cf514", - "address": "lax14u7tdwz4gav2uvlq4zw5z64rwdaywc5gg9w8a5" - }, - { - "private_key": "6768c8542594f77548c54ed5d1ca88a1765eb5dd1939556ec9165e839cc08f8d", - "address": "lax1ap4m3c9csgd3xx2qmd9wefqt5egus8fe4tu3h8" - }, - { - "private_key": "5fb1bd6a868adf98be6bb8894c364507b31e6e7d4b99d24c2b2171176bfcb042", - "address": "lax1770c38kj0ych85az84e7turp3gjmnsswy0mncx" - }, - { - "private_key": "95b2ff072aecd3990b6bfb9b6f534d241ff4ac52563faf9ec6cf1b5808d78bda", - "address": "lax1tsl982k3e0yzc0a4j605hcc9w3cdzm5x0jwak3" - }, - { - "private_key": "9525e11c2481e8f488b6603c95648786dc7ae697310e9cacd9380361d7b9d7f0", - "address": "lax1xm0y83ame4d66pz4gcftdcusujmayccqurze2z" - }, - { - "private_key": "c150ebbb11b995486278f00b0e0af951254090f52b6ec7efcc1f3bb637d9664d", - "address": "lax1a3w32uncsvykrurjzfa9cm35ug2p5mgdhmvr2x" - }, - { - "private_key": "2344bb8a6cb9680be536fda009892dd562be5396f632ecaa884fd92ad08a80fb", - "address": "lax1k74qr8dqh8d3s3qy02yh8ty79k9fs2ph9dg2hw" - }, - { - "private_key": "ee685f4fa095b480453bd064618adb382598a1ca3ad82b960953385f12957c0c", - "address": "lax16tetu0rcxkcl0lewrh6wc0q98u6xrrn8cxjgax" - }, - { - "private_key": "7b9ff7fe1ee537355969d22c27da02dd940519868abad8d8c2930bd940f72b2e", - "address": "lax1awcghyxfhfmhz6z2cdnp7y5w4uwrs9a7kthh4m" - }, - { - "private_key": "dee71179251750efd2d2f2193c058e988f5d4e1b40eb82fa8ebe60325409e24a", - "address": "lax1t3aa3lh487570hhmj09wpm02z2vmxaj6kk84um" - }, - { - "private_key": "6a855d000d58b5c5f72ac71673274280c074dc9194190d3b9c65f349db866446", - "address": "lax1zq8js20c5rl7vfcexfwqmr4g36u63fduuwrxrq" - }, - { - "private_key": "5445471dcb9258fc7092624af7a55c607dfbb9b556bb6e0602e53018220cf84a", - "address": "lax1adcd9mrgth4sfzswhtwz7l22ypaz86fa2qlghw" - }, - { - "private_key": "eb9c52e82687d719fe5224d18e06e3bbb7f835ce1fcf8b932d0f3dd761b406ef", - "address": "lax1z9m9fu35uzw5z9lucwc8jrk3y7v2er905zsh32" - }, - { - "private_key": "bb191271cf7b3eb1d2f4907760fa5531f7a579241fd6735b09463315398f2375", - "address": "lax1lf7r3m7fvrlpasnf00f538le66egsryjganvq7" - }, - { - "private_key": "cf9005125d9cdad432bfde83b577a6c172381166569ac4834a95280ce0f35c4d", - "address": "lax1xkrvuart2prdt2dhwq7v0xctzvnus04caqptc6" - }, - { - "private_key": "92cb7e222517640f43fa2004092658e36a1284ad78f1e3a6a5c5434ceb027092", - "address": "lax18l45fugcy6tjhs7kue2d553ddld0wwsnrl9l39" - }, - { - "private_key": "3af7ba7fac8eb222dd963a4987e95595aea6f7fd287499f933b6aff7d15f5545", - "address": "lax1gdt3nrx7jp4ns8m7jdjtqdhnjenczvycwfar6k" - }, - { - "private_key": "61f44b35c42c06f5b244c6737111157d44076a1a888b7673df88637d76aef004", - "address": "lax1uctpj8aja3haxhcmvmht575uwsc9ucdjyvfvwn" - }, - { - "private_key": "e4bc620b1565268c0f5d46312ef43f7d4170a47d17c6f35fd72a2a1880077e53", - "address": "lax12qmq2esn76yaz4e69mpwewdnwf0tpvrpad3v8f" - }, - { - "private_key": "daac37dc4fc3298aad14a288d430ee8d3245f5cdc4e2c54eda72aee7dba94d03", - "address": "lax1w0t665nzk4glp30mpy88hun6qmffs2pmnvu9l3" - }, - { - "private_key": "45c5a647a9c53d72c59dba8656cfef7049d4c23c9094a13915b4fdf8b27e56c3", - "address": "lax12rqwlchs0pkrxh8xap4av5xkda28hse0xjadpc" - }, - { - "private_key": "d49c9e8f50ee67a4bcca1d042c2438587e9f8bd6bfc3634449c7dbf2ca18b8a3", - "address": "lax1skgk0lhca4lc75et9reas3pdr7x3hx9npfhkkk" - }, - { - "private_key": "a5d9aba6319be043227855aedbb887b27b907774ce15c7910d288b2f589ce792", - "address": "lax1nu6psvvyhcvjdrfk3uqlmrf5kzdn844yhd74l3" - }, - { - "private_key": "fff2bab9b2030478291fdb90735affae9bb178bc6c27e7c4d7d2ed83016a4dd7", - "address": "lax13g7kjnfck9d9ddejfaa5n3cj3n245crw7gv6ym" - }, - { - "private_key": "7df007f9b968782e2c5b6a7aa57fb29272ab0fb5386b565361d0432fadf8a5d2", - "address": "lax1c7ytknur00qgn2s0yj7y0z02kpcu7w8357rely" - }, - { - "private_key": "2b2c482a0e20575058dd45c3c2a08d78c136242de259f3f6d5d6df0b60d2a31b", - "address": "lax1ljm76eg3hw40ag88782yfala9lwaw6fz03v2z0" - }, - { - "private_key": "e8becc5fc9419261e26662db1863a586061dae41596d694b6596f881b574801e", - "address": "lax1kxv5sawaf8q780kj7sjcez3w0wpgmqtqj0f5c3" - }, - { - "private_key": "426b71c655659068ce5c2f3dec67737cc0ca98dfcdc19a317a51793fc4b12fd6", - "address": "lax164mtfmk24y6048d6s30fhv8lv2rqda47xdwc8h" - }, - { - "private_key": "9135b783b39a4fac4b719702fd215fee5dba684f22626e451dfa390c0fb7513b", - "address": "lax1mlsm5069phpuqhhr5t9p7690g7a604lar07gmm" - }, - { - "private_key": "067711d8f1aced419386d8e66ea440bf22c2b1a8c4dcae0075bf0dbd89c381c1", - "address": "lax1l0fl4jqnhnhl0vnakyxdyk95fsaewqae9ccn2g" - }, - { - "private_key": "98d9d3c2e0b4ac5dc9e32bf198889a14a278f956096c0525105d8035e56eed6b", - "address": "lax133grrugrq0tqws7ne5hfwvjh7l3kejdm8tnn9x" - }, - { - "private_key": "135c9c0f9c4c09764c4610ed5e3b8f8a1971b72265e6c17e7e1c74ffdf016701", - "address": "lax1j5muhum82sjvkgysl4g84cytzsy789cq46u8rt" - }, - { - "private_key": "b0b13780cde05905b2abbc0c069b15f2fb19913c3b92f7dd50b549d8cad955be", - "address": "lax17jque0m237rdlvv2wl68zre442wpnyaa5uugfk" - }, - { - "private_key": "430d254e68532e15db8813078ada39a8a44ed39f10e8d4d646aad0b827c4e4d7", - "address": "lax15vsppy6nfcwmfe0h0tqhl8k3kvjsme2dy0kk2f" - }, - { - "private_key": "9ba30b36579a4b9d39ca5e43e6d1414a61478998fe800f36898a5edca4cd5dca", - "address": "lax1ehxvsnx4xjezaaw56zj5s4ts60l7ln6j92svev" - }, - { - "private_key": "8cf1464e4287c38c8f54f66064f39ef9f6faddfc5eaec03bfd5964f38aa3d79d", - "address": "lax1x2p4g2d3d0vzxu4htgaksstcd02yu9sc3vpgcp" - }, - { - "private_key": "a1c0d8b1522f025aae6d9122bbe9000bc02e485c08ab096a909ce88320bc037d", - "address": "lax103zl0d0jdmh548d3xav8zrcedkfkvskrrmg2xh" - }, - { - "private_key": "9e36befa2851ba11da60fc85e01939c3214067822b9062a98518086b2b0778f5", - "address": "lax1w0a8gs85zxd9qe3mcz7lmwyyzljwgcqcpk0s65" - }, - { - "private_key": "94973846bfc8c4b4c2f395d7a4b220a6ff9692a3d526aef083cd5f4df4127433", - "address": "lax1s8c8auce4yszflehn56qp8dkkftqed0xj09ewf" - }, - { - "private_key": "4c6e28dfce4c69649fb877d56ea0731d6b1107fae7ba0678b3c152b1eccd091e", - "address": "lax1z0tvwxtd9yyme7tjcqkm5tq23nenxrpr4gqlcv" - }, - { - "private_key": "a7b76213c0d3db4edb879ef89969437560c74a412a3df3bbf90e0f1a51db1258", - "address": "lax1vragj608dqgyuq6u890n48vpufp7rxhfxx36t3" - }, - { - "private_key": "d66cf927777bb4f81d2b295351a89e6324f353ece44cf2aff02d0993b6682161", - "address": "lax17vzcagqrze4hfmygnqsh98qgzmljfwyst327n4" - }, - { - "private_key": "81cdcf2120cdf31d96545cf44e2c3807713d916e38442cc0aa02e8a433cfe4ec", - "address": "lax16kmyfk2g0tr9rz665tpusky2rtsrhhlnhnr7p6" - }, - { - "private_key": "1229bca2d3c951eaafc149d11cbffa05b8bb8d5efab41b54f2a313800fb7963d", - "address": "lax1zpfx7afhpeetjv6mkdveem9ay5lck7mjlg9nwl" - }, - { - "private_key": "d2576c6f8f9bca924cdfccaecb9398d08d8d3531e3724bf2dc4fb5757c2176ae", - "address": "lax1mj8d698k2cdcqj7gz5re34884f3rj3t5pc0enm" - }, - { - "private_key": "a22e620c92911a374da8f0812d3cb8f2d8ad3f0e0e50846c1a1a0a61a3dae4b6", - "address": "lax1waym5rud6mj2l4njsustma6qhkv55hche98f04" - }, - { - "private_key": "c17313e0adbc87cdcd21f51f447d4634323b6cc059522e6919d0d804ae41649e", - "address": "lax1wdgnsh6q80sldpjwlt9arx2pucmmdnx3yrcmcd" - }, - { - "private_key": "56c85d848662ed1412645e3f52d3d897c51bd7ae8bb0c67dc2f230f453aa5a26", - "address": "lax137qgjlc952qqkgfnhgry32ywwmljwg8u30snxd" - }, - { - "private_key": "5ececaafac18b265a9683cc535a12d18cc1d176cc1e6b1a646f53f5b7636e1ca", - "address": "lax1y5s75xdlgue3j46qaner0nllz95s08gckm2a97" - }, - { - "private_key": "7716d526ec67eb647b15a66583b3ca6ea3f3a6a2d89076c999773389161a68c3", - "address": "lax1vd0km9200kj5k5hx2kp54dlrzyrnns93c6tjsq" - }, - { - "private_key": "8ce39ca30e1e36c7bf81e273e6305d46985f2597611dcade1fc981a4c6107959", - "address": "lax1275djdtz7kh8wr7tchc62zajll0c9phd09ue5u" - }, - { - "private_key": "83bfa5833d922c66eb93451973773c7dbf8d561cd59fe3a050e4f27623a4adc4", - "address": "lax1tvlg2p9khk96dv22rjhgydwuqweswvx8wr7zv7" - }, - { - "private_key": "a97803b467afc229e68b9ea690b4d741d411a9b0b3073b6f8aee09cfbea464d6", - "address": "lax1n5hhgxraaeuymnw6u280uj6vtu0rhc7wchwasm" - }, - { - "private_key": "d5266ef21a5186c29a10b9e464b9a923a7aad00a2a7a355a7bef88ecc1d46769", - "address": "lax19a0va4klemjj4cx4aggw9gu62ntdn6plzc3fxs" - }, - { - "private_key": "7abac784b1345fc7a021eb8805d2e7122ddc0248a28e1d381e7dddb7b50d78c5", - "address": "lax1409htd0xatrmgqtdfdjhtqus8jvhv2ydyhq7e9" - }, - { - "private_key": "717c0ed1e31cc6990d39070a220d10a24400bfff5719440feb4599c00c0f9024", - "address": "lax1ulw52pvehu0x9qa92jdlwlece3r9a3p3f5h67l" - }, - { - "private_key": "0241f58c80c634d7c2527d8861dc2ff73fd8e06ac94d97b5cf137a6a49866a53", - "address": "lax1l7ctejakls0hvefju0wncs4tl2e80gcl3a6mgk" - }, - { - "private_key": "41b32bbaf4fe3e48e0fd9c8fc860e2df52ba348aec7af85691d07558869c6148", - "address": "lax1rz30cg5xzaz94jjp36w2v88frzkwl79t8ffwfv" - }, - { - "private_key": "cb91b05970d7915e9a12879f3725e912d691da205eafbab55475d105100604da", - "address": "lax109npvz0tz8fhtyzm5yfslqcjazja2w5xpcxz7c" - }, - { - "private_key": "02fc8567932c6c286fe31a490f0d46457ee0d3e909a8d096b1d6da1f5eae5a11", - "address": "lax1l8s36qlxklwde5avdyx50nfv899ytwsw4ew4zq" - }, - { - "private_key": "e7498d083ce143abf6b54c36af5804577fc4b90ed1b0d438414076beccbed28f", - "address": "lax17kj0umpe8e9kev4dufala9s3qk07dk826fknna" - }, - { - "private_key": "506690212440f2cb44a69f83330d02ab82306624dd26d60af648aa3a34a4c957", - "address": "lax1lvjfqrp6p7zqussj436qg6txmhamu6cgq32qcn" - }, - { - "private_key": "bb8e83c789d62e238754aa65a449c9bf64113707ef750c188cf4ae01db6fded1", - "address": "lax18m93xmz32ka9jjpdreq6hvh9t8kkjdyhu2ssaf" - }, - { - "private_key": "4f0238ae4590a1ecdc8caff2db88d28b034575d5eb75ad151c35e06ee9ed5c9b", - "address": "lax1vs3wv7y62ru2ppuz7zfhtyaq6chvl0uxjnycdg" - }, - { - "private_key": "795c40ab1107a842809788df15642465cd5b166fd1d1373f43bd32c42a0e1eb8", - "address": "lax17ad4avwhpvr27q84wpxtjgvem43w6jhyeaehja" - }, - { - "private_key": "2ae82dea74fa1ff648d4d59aac50dd597da7c164c2e7f7d757a3a9dfc232f659", - "address": "lax1j4qtnn0w3uavarjkyvtf30qu025kalau37uuug" - }, - { - "private_key": "3cf0053031493cc3a68de5ebb369b679cc935314c381bb347237b2bd6db0b863", - "address": "lax104lwgc78dduwyfl2hv2hj8dqvw4vjxlw5alf7w" - }, - { - "private_key": "c6fb9b0701acd3bafd851c81a215cc7a6cacf8ea4fdd50b327c3f525c059aa7d", - "address": "lax1jddx8rmxr62hll2amppx0vwp6a4efd3k3u3dju" - }, - { - "private_key": "84ae563586893e0c3279a371bc7a30a0db17b3405625af5b1fcc2e1aabb114ed", - "address": "lax1nyqvmc4wdl9tycqfmt8lnwrewujp7jjsrxl3yr" - }, - { - "private_key": "af0b0b1e6874ec120853238131982585b144b4b827a69e9521a5334c38d0e6e3", - "address": "lax12klvkr994em8g4vx99eln92x69vpv36k7wuftj" - }, - { - "private_key": "f0411f3319e56d57ced5d6246120221cc29d494e04e2a538291652b47d751322", - "address": "lax1z0hcyf2zx2rse30ujnk9xgc5syyxelk92jrj09" - }, - { - "private_key": "2833c588990cf92cf80866ced35220a43167af9997e3b0e5d87df2522ad220ad", - "address": "lax1asf39ypt3x2tj4mgxjhsrd5qqqgajcud0x5sq8" - }, - { - "private_key": "2319936c092d6b89cb6ae595a9cbe8db18d9038a5cb9d3fb5a0385297ed5f173", - "address": "lax1djs2pzxa2gltzcg0uye4ycrza7lwprjpyj6ltc" - }, - { - "private_key": "48260702d0da8a30b8b6f2b29c4861f89564c9cee75d72d8245613a20b487787", - "address": "lax1eedvhcntssjy4xevdjzy7r3plpl49h5l739hkf" - }, - { - "private_key": "4006463f4b1becebd16a88f483cb9a1af07c0e2027341db10dcd736e61906d84", - "address": "lax1yxxamj8xayvfl4c4pdcaqvyqvv5ns79j37zs6a" - }, - { - "private_key": "072084ef8c9279903d2b8ba31fa1b064c79d8883f6d02c238ae9a0227093a2db", - "address": "lax1cwf7wx5t4s4tuakkawju67sn0a0xs3ez5v7fz5" - }, - { - "private_key": "9ec4024ddb3237b2aff21d443b2e8dd2baacd1b855822618fd268ff37a8e9907", - "address": "lax1cr76f494x4aadly6wcs8wa2yh6s36p8pgx5z06" - }, - { - "private_key": "bcce100d76435b74d3a18e456cdb0e6339c7b7db1e80e7bc66ddc880aa39deea", - "address": "lax1v8f4jnthphvacgc4uvu90clpv8uaz72z7pxt90" - }, - { - "private_key": "a50565678ef22eaeb32c98bf242f380dc46123443a61120a553906dc59a9364f", - "address": "lax14znjclrxls908j4p6q7hqkrtnh7gay59f7p2sf" - }, - { - "private_key": "c11d2068d4dc533fadb247fd17da02d082fbbdecc4cd56c425e525a9e90147a4", - "address": "lax1lexfsml79c9cknwmfywtpcn3939rfaqkhq0lry" - }, - { - "private_key": "433aabb358990ca7ff5403b18781f906a99b1ef79cf0fac394fe4c506d889f84", - "address": "lax13ujrcewud6vr2722ny5zr4r8hjs678yww32med" - }, - { - "private_key": "43191f6b5e283fef361cc35320b6b579f4d46b02a14e78b26aba33924db668fa", - "address": "lax17hwwarktl5j0qlqgt9d4kewte5p2psljwwpvtw" - }, - { - "private_key": "30fe266e9e750b05609cd1323e3d2700130e6b41425f95601d6b226da79f3978", - "address": "lax1tlqjtrn0cyl8jeqkwwema6jnaljdgxs828pd6v" - }, - { - "private_key": "12093e4b9df6246e81b32aa46514bbc84a9c08d2f7ef9c817b838ac2b3eed0b5", - "address": "lax1nf6mv8ecmnqlsrqy8kus0ru5vp8ddr3rqa565k" - }, - { - "private_key": "75b5be66166b83161b5e40f7cdd5d16f157ff9e7e1a6bffac92edf8120aa4b85", - "address": "lax16rtthnsj57u7g7kvs9y7sg03z796w4yxng45m4" - }, - { - "private_key": "3fa95ff14d10d3512aa50fe0a3c59758715f3d2559002c9d861373863c96094a", - "address": "lax16dmn2t532hapm87raujdsf034fdfkc6vfnfmwj" - }, - { - "private_key": "351e58e7d258e35f4c07fe437948cf3673630717784fb7c3eb580cd8e7e33e01", - "address": "lax125z906k5hxka95x6fc7277hdtymsjw4a6sgw83" - }, - { - "private_key": "73108ae2fd9135151b06f6b378de3864ee4a863759a0a701deea79187ee00a28", - "address": "lax15z4fv6mh5aa40edyvm9x2g246ak82uacvs8dws" - }, - { - "private_key": "b7a3d2f54e12b9993c7480f88cab01729a0ae2d294ebfb7e1c91bd775c024ebc", - "address": "lax1u2l8yaqez62z5ml307rjad0xj7k0wn4jqkjegk" - }, - { - "private_key": "a77605ba93452371e58033c443b6036136a380226babf47c2b5d0830e4dcd5c1", - "address": "lax19trsafg0l55szjxv6r72g2g9z36pdctg9h74mh" - }, - { - "private_key": "807aeffb6be7292b2ac176d93cc6d299164c055f1415255796d8c4950bae9069", - "address": "lax1a6lhx0xqwmdktlvfaksyzf966jdxkjjw8nafua" - }, - { - "private_key": "9fe993b682073a6e94220899f699d789ebb7af7ba5726c907bddd4c7bed7f19a", - "address": "lax1788luztc37wl8ps6fayxv66g0gezpw0szndtqa" - }, - { - "private_key": "e962bba3a46fa016b7749c71a2eacd7fde65d3672d7beb5b46a4a943d761ddfa", - "address": "lax1fl5sqtkv0yzjk8kxqsl6dt455r82p5pz5sun0e" - }, - { - "private_key": "6b9cea3bc6bd7b9e1371a8b0febfac8f28c663693824f6cc758f763a111b03f9", - "address": "lax1kayfemr6rxj9mvrd9mw4k8z6vrc2wckmwx8muf" - }, - { - "private_key": "521a822ed4bae1cac18444006e024b28e1b4e48ef8dde6709b9208fa41340190", - "address": "lax1n9hs2vjk4w298dm5fdxj8v60y0kw4ur3a0dy25" - }, - { - "private_key": "67d2b0bb349faea74a0e9f87d891b16dbffc6bbf52fdaabad0c461d34558f21f", - "address": "lax15jq2spyq3846mr89y8clpfwmngwghvhdlxj5cf" - }, - { - "private_key": "3c9b2a9500c826cfd137290f4344733121b2a253534b773c33b38730aca98309", - "address": "lax1gz2wlvg437737f9df4glt0l6dcdr4q92hg56yu" - }, - { - "private_key": "6d95702d049472b754d203e3d494ae876a3519c13d2b7d795cdcc1bd31e67ae5", - "address": "lax1f7yaagrph49h9v464u40z5ccm9chdghk0kgflq" - }, - { - "private_key": "76f062858d55ed8e686d36418f239d0a55aa76bcd2e910ab895a038f15e16853", - "address": "lax1qgcj3vh44a8p00w3zq3zv7q2hv9kj2pymw604v" - }, - { - "private_key": "202b745c14ceb9d273ef74357e33c4c663880a0c66d93bb146654232d050fd95", - "address": "lax1me86uaqujt8hwvyx8zjnj70tpzwkx7g7f8nxqz" - }, - { - "private_key": "6fdedcdbe10df6d44a2b7e0154643c4e75859d030d8784a773c48f38de0b5577", - "address": "lax18u5yylr0qkteqe0zu0v2kh05dpxtpen2zjzeqm" - }, - { - "private_key": "fb8196a6366c17183f671fe53a972d123bd622362d6e1d3fba5b17a836cb23c0", - "address": "lax1w2fr0m0gsma9edym875p87jj9fsa7wmmwkeqc6" - }, - { - "private_key": "a84c5b122d04ea800e5ed4d8a95f24516cd2f2ac32290d9578191cd5d73e3363", - "address": "lax1wc2pqer932eht67djmphv8s3f4z9lv5zmg86gv" - }, - { - "private_key": "2a6ec5b9a260404d47cd31c5dccba80fc3acbdcdbaeef2b8983b80ef3306bc4e", - "address": "lax1jqqdpse6qckr238wc0ln5unn02lvn0pcfn6w5k" - }, - { - "private_key": "cec9935a672cd28c852a6815034c51f9d0e02ff8464407c6cb31cc1a3a9f95d7", - "address": "lax1aeajtxmp7jjf4gavk38gmsp3gy0xqcn4cjlaat" - }, - { - "private_key": "228706548984b6149f2820c09bb9aec756e45043fef634df162524b37c365712", - "address": "lax1aect9ulvgpmuq7ymqnenk96hm9gt2zj9aa5q2x" - }, - { - "private_key": "de190fe296d03b88e1e905c40ccfb89d5c9ee34cc6c7cdad581c3e124786e568", - "address": "lax1xrvm5mkwgcw6s5539w7up428td9ntfz3h5j38g" - }, - { - "private_key": "79143ec6856a2f9a720a1675ebf0369d1ae98067d65ffae8db7b9584557db426", - "address": "lax19u3acsqt058ypz2tttd0k2lpc3hl6ugfsr98w0" - }, - { - "private_key": "8094a7c660b4300647174d7ffb88b80080662c2a830e9f69f64c13bc44550d02", - "address": "lax13s57qesm5u0hhcu6xs3wx2mk4538qnpfqca2n2" - }, - { - "private_key": "4329b2f144f8bb3194fb4524fba5620ab943b08b35647738e768ec038d84cb80", - "address": "lax1x7ntqee0vpkwg49nq40etrea2shxxlnne0e30y" - }, - { - "private_key": "9fc5a72ae3962f6bac7e937d6b22b2d442faf9d24288ca07dc3ada13ff58e400", - "address": "lax182ndpmlced0paxn570q6397w0gpt4jy6mk68cl" - }, - { - "private_key": "dad26b2727787cf5f070aa8a8511b1ed47b4f881d24c21ca72801d11e41bfde6", - "address": "lax1rxc0yd3wnr8tv58ccwp69m4atjl4mjlpyuhmzp" - }, - { - "private_key": "d28571fabba5f8b90adb42aee5b48f4c8074d7825fdc679d0d9632e088c4e9b2", - "address": "lax1d70p5fer0ka5vny7mpu5jfca3pzctp4xwlsw6t" - }, - { - "private_key": "569b8e0e8955c414e37cc55bdd3733f9f17ebb94469615e53bbd58b7c3b1b246", - "address": "lax19azxukf5vr3t2mdl29h7uh8l9wdfy2f33d873d" - }, - { - "private_key": "ecb09361a322582dcff3fcd02ba88573a0a0cb2ff963cacc5ee0b25cad419353", - "address": "lax1c2euhrg84qzum5sjwel47c54cuj0psnagf8j4v" - }, - { - "private_key": "a1211467b8c7f824deac4af01800ccaf74fed1c4a952f3f19344b5c6a1022d82", - "address": "lax1fu4c42q6vxpz5evcxuy0t4p8zm8ajve02gp392" - }, - { - "private_key": "54150133739d068eb6f77cadf81b7133a3dd19fcfdca88e014fd34274fc1dfb3", - "address": "lax1e3tmtay35q6mtnwv80sllcelu38lg0ftcs8q0p" - }, - { - "private_key": "9457bcf5f3f326dddc297582d4fd2aa0a0546b3a87e76583798e3b5bdb3db8d6", - "address": "lax16lf200whmh9ncmge4qjmldmc7uad7xwzfs8a0w" - }, - { - "private_key": "d6e44fc90bd37ac168cb700d30745e452bd8cc8b1c411793b5aa360b6bf953f8", - "address": "lax1eya0thazcl0a5kzjgmck34f9zslpvm48par35c" - }, - { - "private_key": "71493fdc815f4725748878a4dfd2e79d33ca72c249112c7e88de36cb2879e457", - "address": "lax1rsrwqp2hf8dc3lnennvkzqrwvk5gnhzc5ywjhx" - }, - { - "private_key": "5bd8f7f48818c9f197887344a23bd039f16ae6239ea3a254ebe371e59749f2a7", - "address": "lax1huulex46nwflwczrgvhx9cj7n3ku7lktv24vvl" - }, - { - "private_key": "71f2d24338d3963e6e45c6ca172a3d5953b420d26d41f6f9e1e401b384eb7b98", - "address": "lax12v8rqsfjmns0x42stcpqqmyz8608902qg6zwpr" - }, - { - "private_key": "c91afacce832972a9a29cf5ba7d5348a1ecac97ed042f03dd2d2ea0476674153", - "address": "lax1w0mtxaft94pntfqsuys953k4urk3yy8d7jew67" - }, - { - "private_key": "98a0d89dd1d7ba55406fc22cf3f7d7592f9afecba73c3bcd37d98211f2552805", - "address": "lax1k27twru4hwfh38avappjq0e0f9sjlg5fcugpun" - }, - { - "private_key": "990e118226337bd678d0b520af3aa12ba95f73de28ab540a0f12c33967efaabd", - "address": "lax1vw7flrfcxnr02mrs0mjzt4k9r20xehx4ym3m47" - }, - { - "private_key": "659c9922189a9032c8cdc090aab2d1f96e8fa52c78d8dbccc3aee555db5f8330", - "address": "lax1qz3p9pymhqqz2c0l23q6jpsmj5npe2un34d9vk" - }, - { - "private_key": "3233e42a7b730c2e130a7b4aa5e072f34e359ff63de5c9035994e5c934031851", - "address": "lax1elsx8pk6w97599mkj2805w2qh8frsrffqqesep" - }, - { - "private_key": "a219fffa04ae1f907525b0ce14527ecd85d4687071fad966373f23401fe70217", - "address": "lax1jn4q38jpuhdxz76enhjmx4fnal8qac563anqlu" - }, - { - "private_key": "d323b3fae9553749511109d616785ace4a4387ada0e44223e8a07980592f7994", - "address": "lax1rzjla9cewu8h4th06efa2jdj9pauwft3h6fpla" - }, - { - "private_key": "cdc0d14527a293199b461e79a16412b26aba70031269fdf3e463e1517f4d7daa", - "address": "lax1werpave047qd7elr70c2j4h90qx47qvfmrpv03" - }, - { - "private_key": "f3e446576940fe645e7b9010ba6aa0bbdf2233f8c4fcf2c18ea6718f52994aae", - "address": "lax1dr6krsr4jhk8vcr436j8279c7jql5ej2347u34" - }, - { - "private_key": "4dca969c065d3ceba02a812eacded44e652e7413dd021154578c200161349a4e", - "address": "lax1sjcjq39n4wmrydu0748cf7ywnne95xd5mh0ej4" - }, - { - "private_key": "24eafa73e6b1aca69992324d2be8ae3dce1a225d7a708ab7dd790be159d48f41", - "address": "lax15nfzcau0fc5u6p4xrwr0nj7nhp20ydc22shqte" - }, - { - "private_key": "38e3cc4a51a2122e48f58459d4150bedc1fd04c9c4a52ed6c22ca135101cbdd9", - "address": "lax1a62khmnrye5hfqea9w6rftsagrexwutkl7wewu" - }, - { - "private_key": "418b7665ef7ccc9f2585637de7c5ee4a861940ed0377f89a40ee885180137128", - "address": "lax1ek6a058jmh4m3a5pxjwkd78zw2ue2vvccha43f" - }, - { - "private_key": "f78594ecf10e524a60b09546e6bc01757b069288d01efdbe460c652acac13839", - "address": "lax1zu082ytxas5xpc48k6wa9028tv9w6gwa8xr8ze" - }, - { - "private_key": "0ff89ceb999fadfb21534d596e464a9ea15e98e9259819fc2a55a580e391f50a", - "address": "lax15yamedhnm59h3tql33t077a79d8xkwl2rsjtxx" - }, - { - "private_key": "7732a85c388fc2073d0e29ac2251c36eaeaf89060502ac12c38c8400eb24cd4c", - "address": "lax1087fd7n9fk2j5j3vlnkxv0yvzvx75zc2ftxxed" - }, - { - "private_key": "2e0d1efdf1ab13bb3ce034506739cfb91b41d32d46fb43fdd596c6d4fb7fcda4", - "address": "lax18macjncyg5l5yl860jqf909t49295vgnujchlw" - }, - { - "private_key": "aa4628649b54dd592c1c4ae0c86f27cabc87320f2224eb3da8035abc3efde542", - "address": "lax1zdxmvs825pl6kta4nh6z4fjhn7km9l5dvxnse5" - }, - { - "private_key": "cfbb0220f17bae7b9776b8387f2b4ffdceb96aa0749b6d5e74f8931dd8842014", - "address": "lax14w3svv3lhyemygx453wly0gakkghxgvwdjnr3a" - }, - { - "private_key": "ecc0bbc4e477644a576b7b020120b86d444f535578604e883e27c781cad50760", - "address": "lax17ux6pkxkz3pkawju0vdnzwj5hus5xmyp2c30eu" - }, - { - "private_key": "af334b8998b1cd6c93c1f3d326758ee383029c403016e05a4491869a15a2d28b", - "address": "lax1kzu4cjmqvw3004vdnulmprf3tmjah65es7lngf" - }, - { - "private_key": "b0bc9085c544aaafc27a7ef5d9bc2d238719f5d21ee722061b4e25dbf0ff7dc8", - "address": "lax1zquw0cagapjfjgrvkr54n28z2rye9c7c4lp90v" - }, - { - "private_key": "576c11f35cb3c4526424e2568884e8ec5c13c1c2c67cf61e9d1bf25958707d17", - "address": "lax1d5rw5mgslc9xepurf9zypug2v9cff9g6da8all" - }, - { - "private_key": "000eff384bc1e460aceb3281780fa7a54f5869427223e98619ad78c1a2ae42bf", - "address": "lax1vjz5h8a75tdeuwde23gfel87pdqxx68n8s5h48" - }, - { - "private_key": "27c57e921a9e28201aa8ace77ceac469487f683da6be6830a86ab37e1b399ed8", - "address": "lax1lm9dnnyzjy3hdx36w63fqth39hg094gjj0d84u" - }, - { - "private_key": "9bc7c55b4beabc5d254915b72a3e57e2c67ddb9725472112df687334831f1464", - "address": "lax1uew0d507ng8usq8n3x0343frmr0rzsq3ntjv0q" - }, - { - "private_key": "a523083487e84062c305cbf728145420bd90d3d626bd980127fe41bd427ab10a", - "address": "lax1rlyayp0nvujsdg6w0d0j38u2gq2686ph9lnkc5" - }, - { - "private_key": "56e6f2d335193ab2fd4e77e46bd62778befa608dad4c61ee94f459ce6269faa3", - "address": "lax1ejzahze29jzd6u0r8dulxsng0gynemhp98nwg9" - }, - { - "private_key": "f5a0ec9fb5237ea0eeec96bc7eb77a6c739427d42d2b35c5772f8b48fcc64041", - "address": "lax1ycupmzfgq6wzr5cj02p8ufyym39tlcafh4ufsg" - }, - { - "private_key": "630d612162e3d49f6a0ee4fbd9fd5b89fe0ee451df0b338c66742c2022f6e0b9", - "address": "lax1jwwdmj7lrjyfpvphjnxyq8f47t7ztkcesa6zue" - }, - { - "private_key": "f7ca26e3829403e561c1a669f34a99edc28c251d1c2056d7410c179911443757", - "address": "lax1s7qgzkg0qsp5ztkjturplhr8929smehl2mt4rh" - }, - { - "private_key": "aff8fc37f19cc93834383f84846b81de8a9ce562ca8a1a2b8b6cbf1759335b69", - "address": "lax1dmw445efply9jfgjpj3fnxpn7k5525we3x447u" - }, - { - "private_key": "caeed15d8fc2a5e9c4a5214f80f728dc90f553cc7776512f245aaf7ca3281fc9", - "address": "lax1dtn8w0nxkfauey5a4544zdwn7h8g2gug5ucux2" - }, - { - "private_key": "43f2769caa30c9b8817e9da89276ef6074cafff3f30df711458f84832ec83331", - "address": "lax1a0ct72q95vj04v70ndkmp5cdf47vg2lgkus4px" - }, - { - "private_key": "9380751b94237af5150e5a11c3ae6fcae5fcdf79d16831db935909e816b4b3c0", - "address": "lax13dy3rm58s2gyn6q9nkvkce72s8m7tncty9dds0" - }, - { - "private_key": "91f022a418c074920bc5dd3fb10086719bf37b8780b1d86f8e25b9762e989e91", - "address": "lax1u66p0thha8lejdfwwczfd9wraa66q8y64fmjsx" - }, - { - "private_key": "54916a392ddb69b67f817f130bdc8af809eea051a17dd4c581617be8547c66c1", - "address": "lax1nfgfllj04r05sxhqy3snu7wsepud8fecf9s20x" - }, - { - "private_key": "22791d5be7b96cca696e32a58e9029ee41278596ffb79fb4323be1265ef3a581", - "address": "lax196g8m0tg0t6t57vq25perunj7xe9qhytvq982x" - }, - { - "private_key": "a6862d4e90a4ea54c4e705201c1d6f48e2852a13d91797bff3b33cbe12846ad4", - "address": "lax1472hr42z0zx0ygx62gwyssy0dw7x9gzcfxm7ky" - }, - { - "private_key": "d8e5301b2864d5e23a2250a6aa8a69e36ef2e54413a169169794829c3c6d8db8", - "address": "lax18e4k06dt6t4etuljjqkgdcts4dqnmw95vcm50j" - }, - { - "private_key": "b429c789c269c0d3b7766bbfcfabfcc748d20189c959eb0e8019eb984be4047f", - "address": "lax1h79v70kje3z8ntlyafxj68j38w5gvz339w7j63" - }, - { - "private_key": "d1c51bf9b0b3213c8058b087dda860010433145df40f5aa2a26f69c97a072966", - "address": "lax1m0y40wj89s89ypsxrmlm50avw4ty4n2xk7pztu" - }, - { - "private_key": "7e5ad5c835e47101857602e769c3502775670fccf0ca5d2a42bf1d82ee5b91d5", - "address": "lax1m3cn4keulepa9a3vsxq8344s0tqc52hz2jezn2" - }, - { - "private_key": "266e1e7367a3bac4a2381f50c153dcefa9d874a95a0db1e01e64d7cf8466975d", - "address": "lax16fg8tzxx4sfjffge8skf308v5lf2r4fd3x84c9" - }, - { - "private_key": "500006dd083139e858ca1dc663f17ac5f7a59c3cd9f189f0d93c4e2dbcf3075c", - "address": "lax1z7shzavhduceq3rphsac8y3ucthpgk5dxghuh8" - }, - { - "private_key": "3cfe36d6c5f70031e7cac54394c7a65c66cbc10df8cd3e73c4f11a81ebb4a6bd", - "address": "lax1nvd3w5mhw5zsmk8pc80u8z9qc6tz794nrprfd7" - }, - { - "private_key": "94c39e2cb3766745007162d644844e41e19a308e161a5b15f744d8055cff8cfb", - "address": "lax1k7uc9svgk6um6rx3gze8k7xn6xnphsgnslwj5r" - }, - { - "private_key": "8a273af8d6558a842ca2789b3f75178226c94ffa12ee96afac6ea3ff6acf98a2", - "address": "lax1xfmstd4rkhwd034c299r8kzdhjv4vun4nyckl3" - }, - { - "private_key": "b4ec2f20ddb7de6acd8e78c33a533769ff44e3a08a8969974455b681f047d5bd", - "address": "lax1u9ltvn3wkqfahkajnavupfzl9v20attl7djhsz" - }, - { - "private_key": "83eed6a445ee365125249266b7f50fbfa871a3197b34b776cb08b2f98430f43f", - "address": "lax139k0pclw6q0kpantf0jrckntfkmh8n82j8zqxm" - }, - { - "private_key": "1da47152e6e9f2327abb8d67a8c18007704eebb389626dffff712cfa39aed5de", - "address": "lax1exnrrx48syuv9a0nl36jx2wpvdr5cp7umf2eqe" - }, - { - "private_key": "a59ee90e5fc8335bf69c0ffc08dfb60c5dc04bbabfed28f93befc47a5894ff31", - "address": "lax1epx6sse26hg84phg7vme65ua0jedfn58pg0utg" - }, - { - "private_key": "ddcf33ee8eefb7a1f4d17c7b93c1da9c9596edf6c7c0f1c1496b8195fba645aa", - "address": "lax16es43l5rt004v8vx3lrpg9uqhav4v2sq5mcjaa" - }, - { - "private_key": "b5181f9ee7a8857528b937937e53f6834b87512f30aec32e91935f8b8b9ed077", - "address": "lax1f4cexs7vrvpuyh6uzaqd7er880a04fawvz8w9n" - }, - { - "private_key": "631a7d55c4ea18092c18bde2ba552e20f273cda5ef0b285728a786bc8565d5e1", - "address": "lax133pcgug022qvlqllakmuhlquhjdnuu83eh28ql" - }, - { - "private_key": "eddad3ece1cbf88d4a82431ec8eccaa8f1efc7ebcbf0fafaa844694f4930b5dc", - "address": "lax1u6p9fkccyszjt7lu7dtwemnlkc389zcjd22epn" - }, - { - "private_key": "c539e3d7b1203594656a412921070d5497766e6d4256b751a4260419ca271742", - "address": "lax1e4e5xyrvncs54x84tqull94jlgr750g6ezw0q9" - }, - { - "private_key": "dcabe3a7f771aed7c1359716bdc4aa985c60c7f7b61b89a103580d71c68a5dfc", - "address": "lax12huxfz7fsfvwjnc2fuacnc2cs385wke7ys4haq" - }, - { - "private_key": "823151290cad2ae5080f030a52dbb998a50304acd7b07516e32dce9116b0f901", - "address": "lax1k4a72dk6v38fud04ltmtg34uajdkwyxnylxkhg" - }, - { - "private_key": "0ff52c8af3b49224a773cdfe70fdd69c91e8205426ddbc85aff7cb6fdf1a2468", - "address": "lax1qk3ds2uxmcn8rl6ws368tm63acf2p9j6dfd9kq" - }, - { - "private_key": "7762e934ce7d6551694692b160eab7fb3efb837cb994734276c2bc302cfae141", - "address": "lax1htt67cxq4vna9ne7hv9z2n7z8ef4l5scz99yff" - }, - { - "private_key": "6a7a046a4817fc72eeb71dbf68d1c1f2762535dcc3a04dad9d1d09bb4d784052", - "address": "lax1xtxd48p7d5urgy4fx29a78a42r3kegk7pgxenz" - }, - { - "private_key": "81352a71f439a1ae906239fd66f4e2aedeeaef8bd0daa0df89f8b4ad01baaa52", - "address": "lax1460wv2vuu47ecw3cgl8vdcqq2t76a25aqhz4v8" - }, - { - "private_key": "5dae5985f6c9d6406836a24ae6c0314232e94175c805c9e55ce78de7dc26ad3d", - "address": "lax130fg7d726hn3swkku8guh9nlefmmpxspyh0ku2" - }, - { - "private_key": "a3824d3f6098ec95bf110826684293548d4635af8326ad80487483676c763a70", - "address": "lax1720w8ljyu9x9qyycjjllvhqqsde4dgzzvw6qnl" - }, - { - "private_key": "15a3687c204fd499137806e8fdb9e38b59f2a48d2f9bf3c8d3941f0b241e829e", - "address": "lax14kv2dwcg3058uy5s3f2q4fmz52rmplzul63096" - }, - { - "private_key": "483f5ebc772be88af4905dba3392a88f50d94eef140f2a07e6d9297db2dcbcbc", - "address": "lax198talqr7ckgrwn63md9qfx0csvejrr3rnz5sjs" - }, - { - "private_key": "0d0629c843ed0c1937cb94b50c3d9dadba899081d07562499a59826d27e638e3", - "address": "lax1qzngfe5ddw9xc8l3cfzm9kgkuyqnxxrlvzmamj" - }, - { - "private_key": "49a0bc8c642bd3ffe573809eab6a8a3ac4a86ed07140cc2179079f3b5785d814", - "address": "lax1nywrl476vqew6vf6zcwf7zxe3v2aanh69t3lre" - }, - { - "private_key": "87432f040fa4e94a0dbc56373fa2e8391f3a2e50ac5156fe3d698d8eb86cba27", - "address": "lax19ld3c7jy8fer5mumdmc2l5dx5tufahqsgac5tn" - }, - { - "private_key": "517893c2f101641835b8a634f7f39adb95936d7da840e7307657375c83f5bcff", - "address": "lax1gxsmjv7z80tuk2tcs9s5y0j0vxcq44c5aac0rl" - }, - { - "private_key": "5afb70957e944bdc1ec118e2ce87d547470ca892738197a990e5e91ac3e1908b", - "address": "lax1m08h2g3djfhjtk7uqgqwse7a4z904kzjs9y3aa" - }, - { - "private_key": "4a9f356d5c8bb77926af67970cf8df5fb6380706acfe6d1857597873a2cbeb1a", - "address": "lax1vyr5ek0hkxdlrtjfwhuha266mmnxlgj4kj504u" - }, - { - "private_key": "f8ddd527abd9b27f92221c832aac450996abcc784d61e9026ed16883f9cb019d", - "address": "lax1f587y98d7tmcp0ewfygh7cqdwp843xlqyarwjs" - }, - { - "private_key": "d4ba4a27d2512d60e14638826c2bed8f299335903f0b6394906b1545779d2d67", - "address": "lax1vwg9tft6t7xy8kmv4d8zftmdxl6vl5echs7rp0" - }, - { - "private_key": "f45e131a49b3ecba3795d7e29ee4173028e6608bfa779c6cfd90c111a6089ae3", - "address": "lax1mtvh96l9hypk5d7swhmwec8w3g7qzsfraj6vp4" - }, - { - "private_key": "f6528d04379e7908c632be86d0ce6a250826de6058b8a9a5fc0d58e817132427", - "address": "lax16vk47qfvsjk9r0cn7v8lmjanh26e7rglrdqz94" - }, - { - "private_key": "e70b71f76bd611d921accc0848a4a5615f8779ebbc8f9f077301e342fe1aa625", - "address": "lax1u6xvfwkckkkvhx46nz0245lymv3f5j4n9dd6pj" - }, - { - "private_key": "3ac2edc6bc8600a14bce18df087aa18b854f349eee9ec1b37bee99cbda94fc68", - "address": "lax16uma398hv6m2e9ve83kgmwnp479qdql2tq4ncm" - }, - { - "private_key": "e738af6a92ad3a6f8ec7b98e3b9f02da4c6e509a2837eb66789de3464da05d0f", - "address": "lax1x2l7zapd003l88xkxdnspprj585n07yp5pjqf6" - }, - { - "private_key": "0027d0d8d69efea8734d72753b906269c7d6b59c446e09d6dbeed2824ee17587", - "address": "lax1agmxy24trv0322vlf4ufmx5xgwv0sttdessv3e" - }, - { - "private_key": "99d96c3381ae37ee1b8571f1a7d3e7f376bf9488e991885786378e79f22955e0", - "address": "lax1s4ufjpyz7hjhymg2vfnefwdsgqsrgef0tcyf9t" - }, - { - "private_key": "320508e0b1ca5d8398d92fd112b637103f16ec3920232f6a77f223dc769a0615", - "address": "lax1u4qdmdwmncw8clxjex2cqw0xwkzmvnrpxhdcvc" - }, - { - "private_key": "97595b0a5e82b46d4d52acfbbc667bc36797b297d5a087f96505ad30646dc1d5", - "address": "lax1qppn4tyajghh5j3qp6qwgj5zaa4sa2f9mr80vn" - }, - { - "private_key": "50ff1fb1232cbae6d2b425f7a0a2c60730448683036c724eb95f3bfa45fdcbb2", - "address": "lax1k7z45rv2lkgxpvvkztcmj3zkp2a580y7kymz9n" - }, - { - "private_key": "eb18f668b8ed554e2c52b3fb9ff22d7c52cb866cde8006a36bddebbd4ff18812", - "address": "lax1y62vmkrahg93837vjdw989ln9w84r7rqvyxjar" - }, - { - "private_key": "897472778bc64b0011a0cdcc962e3d814978e8202180229b40d999ee4c24da32", - "address": "lax1vw6k3r0nn3syttz7stu2rsgjn2cy6c28x0s53s" - }, - { - "private_key": "aa40a0c1d35d7e6994b8b1a6e5b3d2ac5e1d6caa01b9b9d6889898ffecdc7cf2", - "address": "lax19au79rkp94a6wykjllz2klghaw2jhc60c7qfhq" - }, - { - "private_key": "14046a1da495eedbf6099bfebfef374589f4396ac6d87f1abd7b9d0a7cdbfb48", - "address": "lax16fm068adrhphx96ufa287779qyhchsll93ntku" - }, - { - "private_key": "b6497c04f092951465909c02d9ee136e02e1c5c8e0dcfcd39d794f3e349abd17", - "address": "lax1njaamf3k9zu2gy2r5jme953ra457dqcy4hkhpj" - }, - { - "private_key": "58e6fa4a23124f1881810ef31e658a3c4a56c4b002c4c7c1d5d921ce029b6721", - "address": "lax1f5kjyxp6fy08sufgds8yhqz35snpz2cjq46yyr" - }, - { - "private_key": "72b769054b198175265201a97a96efc406a4595513a7c643b9055b77f499a109", - "address": "lax14m9g42mmyhh4u99ksvh2y860fyx2c6atwrq33d" - }, - { - "private_key": "8aca2157d75d53310248f3f7d1bc5f90c76ee5cfba3ceb549d2b2bc14f62d1b3", - "address": "lax1c40n4pu6wlhury3n8t45ev89tyrjekcse934h2" - }, - { - "private_key": "28238ba28b7851ac823a66fd038dc0cdb3ed0b1563ddc81646d703577121eb14", - "address": "lax155w4wuc03kq76vs59kaf9uesg8lq50pva8x82p" - }, - { - "private_key": "5c39f8f89c7500b0ebe4ac4d94624219f04b325015a559f386bb5ab9bc1bbafa", - "address": "lax13t4frrtnl6s6xxgftpp3wm9rmrqf4eccw2jdpy" - }, - { - "private_key": "2fd14b351683639e304e6283dbc4da9e9cce872ebbc132f63b9de1871bbec2ad", - "address": "lax1xselgzyjsnpmrcvs3wm4y5eurm3e9cu2wxn3qg" - }, - { - "private_key": "8e700e3b652a8428afdfec946c33753542a504ea5719c7f2df78c0c0c5a8246f", - "address": "lax1yy4wtsvvac0zc3t4pcrd8nu4edqw5y5ldv738c" - }, - { - "private_key": "bf66dcea8e9b4c3cbf2c6c0c512ac7d10af1efc6f6b2dd9d7c154b11bcfed08d", - "address": "lax1yrxzl8qg5w9gmfau4sqgqn2d5ry43tfd2ftntj" - }, - { - "private_key": "40c05682733a2eac096b078651716c8a3f2b5bc5197c5fd4c576ef2076227c4b", - "address": "lax1gk2kzqvzdp4yy59eyrl9zyvwrhaswnerclxfz9" - }, - { - "private_key": "836b61eba7f31fadc3798a599d3fb68bc1eec2f108cf5c6efef76ce5295a9c47", - "address": "lax15hkpc9c47d6w5hyzqguc2e2c9lgal73ng6n9nd" - }, - { - "private_key": "790cea6dd6b71152abf5be4efc014fa43f94370bc38238a793fdfcd09719f267", - "address": "lax1fcz65v7w5mwpm7k0ccp5f3d0qzt8ttjhvv26lz" - }, - { - "private_key": "8aa5974d02158751e57e555e170fbc64a13c5955c3bea8de46b634ea1319fc82", - "address": "lax1kkmqjlvyc52dc8zkmllp9zk76rgk8rsen8fasl" - }, - { - "private_key": "da50cc9002e095fbd7849b8aca1100abe6b0cb9e0e16912cce6d0c8d05d5ab34", - "address": "lax1e35zekvzz66xrwj07hq93wf8ylep9mv5amqfwv" - }, - { - "private_key": "7b5de91cc4279c318926307679ac366b255eb45c8e3bd48beb95920d602689bc", - "address": "lax105ftwd7ftzxmelxmhem9gpzatddq8gqgwa5ykz" - }, - { - "private_key": "986d08419e44b7c96e9b8781e71f12db3b1569339205fdaf390fb0355d97b5a2", - "address": "lax1crwgjxy9mcf44y3d5qmty0p0402xsjx9wk994v" - }, - { - "private_key": "a5914cd6b42f120a1eae9a37010f9e31ea84cd0ca6ca9ebd0dcf33f7a19fb74c", - "address": "lax1g2xupfxe7a3v9fh7tcm9c2st03tduzdljw8wq2" - }, - { - "private_key": "22f7b7bd0b98b5c2a8dfcd32af3f619c3934ad3b31f2ff9f31c859a7c2bf3172", - "address": "lax1vn7x4cysvf6xrqayzdxmxjjdt64gd6tfpr67fv" - }, - { - "private_key": "33a799851bc736deff2c10d1dd59e174f526715889e07c40f58fe2a27e002eea", - "address": "lax15uv7vnfrk0649cencwevlepjewncxar0z3mvjz" - }, - { - "private_key": "14783d5b3212aab8dfe8c04f06e859d8f2cc86bf16df86c308ec2713c27f9560", - "address": "lax14hg74ehtjx29dxaq8tqmruemvpdj8rvgmd77ap" - }, - { - "private_key": "e1219862858177490c0c4b64b555d6e96eab4396fabbafc84586d805309bd205", - "address": "lax1gls0vwltqlmh2nugupw5c99hdx8q4ntmq2v4c6" - }, - { - "private_key": "dfce7df6fbb256f443dac5fc4f789103e0f3aad2759918417a968f7e7facabc8", - "address": "lax1yprzz643daayswfw5w3kqapxtvfjz0xaeczysa" - }, - { - "private_key": "cccbc01df4d21fc3433ff1a44a73f540ac2e9a11e52e2ee28d92e469a9fe3694", - "address": "lax1xy7rqmvtfeerkmnmd0dnk992jfc704sxmazvun" - }, - { - "private_key": "52529c223dfe1fcc5ecf426e1386e03aae12549f901ff3932a225df99ab41d72", - "address": "lax1ep9vmzd29f6qvevfrhnw3uj82sq5myngezn5rl" - }, - { - "private_key": "3c0122d592ca4c6c3addbc4410de74855f5b47d9a6fca492dbdfee99ba559528", - "address": "lax13ft2jgq2wecsqmkjgzrcrknsnuxz4t5cz6hw22" - }, - { - "private_key": "e28dd3049d47296ad22728c911e31b8f44d41722b0dbaf1054e7d76cb5eb1688", - "address": "lax1zga70pkul2wm2apmxhw09hersvsd2hsejdk65q" - }, - { - "private_key": "3c7a4329dd17de10122a2fd6fa497ff3f75cfbd9539aee63c75e4defb04701a5", - "address": "lax1rsrud9d0wcewdrgkldwf7s5pak8qv5gt4zug8h" - }, - { - "private_key": "e671f0aaf34c250d1e61155721afa7b3d17d64bf7591f4f9fbbdf3e0150216ce", - "address": "lax1anzc6xaeapcd8mhr6xg44zl3h6zrp27qqkm4p6" - }, - { - "private_key": "bb7cf595a10fc76029a2777fe0d46af6b18cae9ca368c7c29245c3b746cf180a", - "address": "lax1xlltrtt3lygqq7sxnqmfwfgn5ht9x6e0xmhe4w" - }, - { - "private_key": "219f3ac0993761022d7a0c88d89c9999f4903689c23ff9d07247eee543c18065", - "address": "lax1y3j4cm0lp5e3lkcghf3f3lyy6ye9lgfpzesx0z" - }, - { - "private_key": "93ae1f6b65ba653e19cc0deab40619bfc2f735a7118559c2cac38ebf0b673dd3", - "address": "lax1ug5lv8a3urq2npjta6fd2k0njfy5e4jq73ah0p" - }, - { - "private_key": "ee52137db5954ae9f37116a2498c57decee13e286165e560900e0dccca438d6a", - "address": "lax1m8d4h9rq2rzhtutkssd936hvrdt5z24udj3vp2" - }, - { - "private_key": "f4e344ec5fa8013279e8f418d82b976085b8361c04f3762cb1785a03f2d7dc35", - "address": "lax1tcujpzzzm77g6hxxggcm4h65808e4kq9u006w3" - }, - { - "private_key": "89dc3c02fd13e90121a4f94ae69aa527302e179a9f4f962bea15141ad520c214", - "address": "lax10xyjekpjyw8n2yhxkytw579ffpdtwv59p7tysm" - }, - { - "private_key": "4840d23b8f3ed228ce23522759a9c6e8477d88ee972d70528c6ffa336dbd6623", - "address": "lax1kwugz874705csdg97cmwywy6tvtrq3ys3jp6rv" - }, - { - "private_key": "f5fa2da9a832f93e3a2fe7be963af40ab72931e9cd562cfcb5e919e3552cc95d", - "address": "lax1hekctq2ed6cmz3e8hhrxqqxu6nk02nssxrw7f9" - }, - { - "private_key": "8be2ee8df4b99c8b6d586eb8b7eeb13dc590061c8f425d72e13931cb4d716583", - "address": "lax1ukhwnkjjsxapv8xnqjpxlzgwvmlavpqnmz0ul4" - }, - { - "private_key": "46baf4fb927c37e49c58a468b7c61d048f44f72d4b1e4505a63f6b11c673bd83", - "address": "lax14flcggpvqzas8dym2vuf0veu7md3hf53z2hlm0" - }, - { - "private_key": "95fd66035d3cf629b03f673d9ecc7c535b75012fd93d3216ae0087810b6ea39a", - "address": "lax1wmasx6znpw3zr39ulqjmtq54nvgt8lwn5exgqh" - }, - { - "private_key": "9a361a88da4f42c109bf0a7b684e93553ea216307f2bd9769d9608bc9ed203eb", - "address": "lax1yxq4ahr2ck7tvca5tz2rlccygngwk6reqpym9u" - }, - { - "private_key": "1aa0ec5ab93d70f0efb1e35e036dbb3b45c752864a155aa435e2d95c437d33ad", - "address": "lax1hzshg87jwush60nfylxsx2ll5eml626w9yqhy4" - }, - { - "private_key": "be1ec78997c796748ff3d864d486b4a45707e28b45ebe51f59b6229fb8b5b563", - "address": "lax1k9adypmydhp4qjzwpzug6g24mfqc736yy0fln8" - }, - { - "private_key": "3e12c5982451aaa9b84fe6d0f482b2a89624580bdc9e3afb772fc241efbdc095", - "address": "lax13muh35hnrn09gqefe255cjwzdl7sx8z4gss6kd" - }, - { - "private_key": "8d59b81c0dba2724ffb95b3c8914ee284af32cf94cb4bffb83e158445f0ed482", - "address": "lax15g7s5ujrnqzj50dvymq3xc2knjrwe4pefhmqa9" - }, - { - "private_key": "804fea4f7312706dbcae948f2e262afd619ffc152e4e95b6f89a827069382eae", - "address": "lax1lcykn2tduw3kjsdfv33vlp8s6mwk6wkdy9fltf" - }, - { - "private_key": "1ab8eeed166a59d66f887319ded4218b54720572baf530a69fa585cbe5c46370", - "address": "lax154r9cjarx9sy5d9pvy5ecmjhvu32a7w53nwjqv" - }, - { - "private_key": "c8c582794294886941addeadbc91ac6e404928ea23d19d18c9f8feb373853110", - "address": "lax1r98vk0ryv8ptpescw9e6jlg3s5k5ehf6nwlmyh" - }, - { - "private_key": "807a262a1c5488a5ad6283a406bd55007f4198c1b2f3529ec2ee356ff6c6540e", - "address": "lax1mc3gfev6dp60905qzq88h2tyamnwqud4xyl0q7" - }, - { - "private_key": "b4b75da38db25143b12cbc683a877500d5f7a77465dca8686492e0edd92b0d09", - "address": "lax1mq77hh7a8r5t5agczykxvvmkff85dea5jtrw67" - }, - { - "private_key": "38791d17b44bf672696a8b631edad40badad4bc34c1984373f4e92637c986540", - "address": "lax1y5sqap8gfklhsc2pm2fdp2zdu754rv8ku42sgy" - }, - { - "private_key": "c52aee7d067d45a1b05671fa39a0af025558adb7f56e2fcb56261c0380fcdbed", - "address": "lax1yq0lus8fuv8n7caa2mgtatmve4ajawmfc4eq9h" - }, - { - "private_key": "668976df721eae3bbe062e97b5c696d4aef7e5ac3eaeb1dee8fdbab83c810ea4", - "address": "lax1v5ncvfs8lg5du744shwvg8dlpk8ry8fc28ggx3" - }, - { - "private_key": "1098de301b06456971bab9643fc72ae4bfcd2db454be422ab3ccaa2f08ee1268", - "address": "lax1krv937jh6rhztgakstj8zcaqusw4pc0x0xjs7t" - }, - { - "private_key": "723ad10d30a98c64f861fd36b6b581aafd645d9e1822d1f137ef66e25255481f", - "address": "lax1dzpcajstfjugqj0n5l3yu8x8p78xtlh86wjwgj" - }, - { - "private_key": "3bd59adc54ca72bf6d495f93797843490976aca32dae2d7c5ce2a2ea32474bee", - "address": "lax15gnm034d82ckydyn67n2pnrhsytv2x9u5skvrm" - }, - { - "private_key": "268e191ab58c4d840e0ca85959322edf5a2b90fae04965482f068610dc6c4923", - "address": "lax19x4kaa2l7q7mml5h3vv46xklhlf22smdcclual" - }, - { - "private_key": "38809184beba62f297606702a8557d7c9319ccb35fbc555e27c6224d92c7c98b", - "address": "lax1pstnmcapeuhmr0f79uk6dnprg8x5f6ddj7d2fu" - }, - { - "private_key": "66558af87338915c5b0ccf594e13d57132bdccee17eda28b292e089d253e9d96", - "address": "lax1cleg0lf09ux87emlupaus0jvzr3dvhywx7z0z8" - }, - { - "private_key": "fc883eda2b1d5972de7ee0425e01f437f6dbffa7f7f1706c9963dedaa52b717a", - "address": "lax10r3czl5rakq9g5skpdu9yv0js7uc5m08u4jmfp" - }, - { - "private_key": "506938e646d802cd2ffeff41a90a3428d96b8ee88ab90568977d1232104914de", - "address": "lax18a4ntxwt7zrjaw59yarzrkgde99gkpqrs3fvgk" - }, - { - "private_key": "1f89e013e65e03ad9dd52bd86a1604c1a6cbdbb0520d48a6ea1f2725d1bece27", - "address": "lax1wy4xl6rxnmnl8et3n7kvy4ax4twh5s63h6xwlk" - }, - { - "private_key": "5c66bbee1eac6c89269ae17367e32b19a930bb1ebf91411b02b152d94f4d35c5", - "address": "lax1y7lf3zzp3naxlw9hgc9hwpwzqg660lugheegts" - }, - { - "private_key": "377398780febd3ff9606149fb69cec79a3fd2245a788b9a8acf876546e153639", - "address": "lax1k7cce74na04hng5cpd45dul82u36frd3pexf9e" - }, - { - "private_key": "7c6c86e4b2834ee3c597ae93a5d4ddbeef59745e71a5734b346e4eb464094d41", - "address": "lax1fe8pl9znyr5rmr6kcfyp4krp2s5ce23qyuhcqj" - }, - { - "private_key": "2fa96147bb509dd2f2206e596ced497e6b7a56165abdce13a0ec327927d93b9f", - "address": "lax1grqfqjual7lzqm4q4z34czh4q2fxg57wys4uwc" - }, - { - "private_key": "3f0e704d95cdb5aad647897efe597ec8d9b44cf69ca0a055d76ea3e2d02cb32c", - "address": "lax1hxzdknwmme0nakkzptrxqje8gve8q0vd6hz0vu" - }, - { - "private_key": "4f3c12aa1dde5b2c87e057cea17a7b0a4d6231bb569ab564d92b3304b3e0142a", - "address": "lax102j8ws6w87wvph3pdlfrhafhakdvsvkcwzqff0" - }, - { - "private_key": "6804dcf77a4c2d1d4d9e0c36e2df64cc566c21234c20412bd3cf64600fd7c944", - "address": "lax1ltwuvaazf6dycav4kckc2emdez9au55kafls6n" - }, - { - "private_key": "6be31e9ce2d26aa99b789bf43285ca3e97c9528a797529dd6fba297c85d67971", - "address": "lax13jt6sxdqf3elzfqknqcvw22gemtsw755ydl9mf" - }, - { - "private_key": "51efacb6bbae4a5da1b861a8177df1afc3306b646232746bc47613420e91c4f9", - "address": "lax10sxkng7hftu8q2nh9xc4fp6emwvxwd3ech47kr" - }, - { - "private_key": "9f779ddf430c09e41c0968d8725713d622838d1684e2f9e3ec8909b9c7fab8bf", - "address": "lax17sgl3cvm3gn2fhdlz4qrt543g69cnwws4m5s2n" - }, - { - "private_key": "f7869fccc9b9ac994f3e750ece6ed399bdba2c84e36436147d18cb62f091c577", - "address": "lax1mcdlgly6ucwlxwylj7fw0hm3cuec2q30s86g5x" - }, - { - "private_key": "f9457cc64e5402ed323d772c3572b85915564ab2459ba078914411663ab7354c", - "address": "lax1afwu8d2vapl2ndv7hz26z2639g37vp5fxr0zvv" - }, - { - "private_key": "5872d8aeb1b46ec0cbafa6ff869c5d8da7c9db9055dca7f223c5b9830919c613", - "address": "lax1la62vszc2vvs2d6nvy3uf2ceyt7q7zrrjf2nwp" - }, - { - "private_key": "4db40df8c7b242c1122e71ac9c47809a39d8dc9dc18546b46fd1974efc010573", - "address": "lax1wuvwut9nnqkr2cp3tarzdhk7vk5af9j7qv5xqe" - }, - { - "private_key": "09a710c70dca5207ce19c7d2fea7e8251293f2846acb9826dd654543188ad737", - "address": "lax149q7hm4vqz6hj5zsshd5r6mxm76slg2f4mt6c4" - }, - { - "private_key": "5629c58d947532dd8de92fc0f338245bf250a72d3a04f1b022298e81b8b55123", - "address": "lax10l56gyatqjthwkta4qmq88xkg98tq9d2z58edp" - }, - { - "private_key": "c856639d025253910d9bc254cd9d0bf9349a2eab52b0d82c8913d98e1195d733", - "address": "lax1ww7xhx86npnn9czfdux2v8zjhct0qtlj77cgvn" - }, - { - "private_key": "e6f9aa6fdc21c19b2fed8dfa4a15253be82f8d96b236d2e33d268318ed3db4f7", - "address": "lax1u3fadu22g20u9wc8gyj90ex0eavjcwn3vtqaan" - }, - { - "private_key": "3c79e7e539b16073e8fc71155cca711286267b34d4e1571a693743044f3f12a2", - "address": "lax1rkqsc99kmuanwmjcxssjvfjmsek7u8csymkvqu" - }, - { - "private_key": "970174b0ab796c9810b95267ae31ee47c43921e06fcc343b0426cf8ec29279a0", - "address": "lax1nkmlsgmyn9uam6d5nlgw3gvceax573d88ft7zn" - }, - { - "private_key": "545fe7f30b31fd8515cfa4f69d5bba233cc84f00ab64b9bf924df3d7f36b76fb", - "address": "lax1y0g2hx99rvxcsx2dms4xu3k0z85vlmrgqrtxag" - }, - { - "private_key": "6bb3a6d6a43c7dceb3898f1be5fa7405f0cabc7f881797bf5c4ce33188f9fb43", - "address": "lax1r3le5uhfgjlwanxpxgmzeumd500cuvnpltfya7" - }, - { - "private_key": "81ffcccf7f5d61f1d97f42b36cd8b20f9bcd0773886eabf101e6cc86f45c90a9", - "address": "lax16uw3p9p4qt27styqj3efcgqr6hgzaqd8m59uut" - }, - { - "private_key": "3c196df49db22419132d61c4df604beefa500741ae563bf3f1f37526a3c2340d", - "address": "lax1nq30x55hs5en5ugh0zwlvfyreu2t64qjdcv79k" - }, - { - "private_key": "bbcdcf2d3f1b9be5410d837682aaad27b38376b12af5b8c865e694a47f416e5c", - "address": "lax1wrkl3662w39ta9rz4elaj76x33edv586uwp5g2" - }, - { - "private_key": "df36a6c62a5877ccfa76d0e5c1317f7f8262411a3cc758f646f3dc0b9e9d27ff", - "address": "lax15qmgmze2j2ay9cugz30wgserp2t5dymsv9tpw4" - }, - { - "private_key": "613dcb71beb69486468561105cb6a14783947abba99a4688a10b35ec38ecc8a5", - "address": "lax16rpqznwhhpx2ehku5834egmvjfnufj2z334f60" - }, - { - "private_key": "7af7217db845855cfa5b6bc51f12a0fa3709e5b493c63be37f053805d0758776", - "address": "lax15svu9e7vd0mkpluyyumax4v3ff24szqa7grl5r" - }, - { - "private_key": "fb9beba37ee04f6b264dbe90ebad555810b4653173f68dcbd31d5bc47c8c335c", - "address": "lax1zewmajzxglqeez96gncj542kk79wge9h4ckh5w" - }, - { - "private_key": "56ef1c8d577ee0835c8dae703aac2f1c6f6d8a2f914809ecfc1976d39bc428fb", - "address": "lax1ljtz5zz5cuf59q6xll5r8vl8sckdcvtxqcuwec" - }, - { - "private_key": "2e15dbe46f7cb7e6546c0447830fff0c3b890c08a8bb64f11e225f3e2312b29c", - "address": "lax1pxk9rufwnf6m4xz9jewk8a9el6t9tff5ehle6c" - }, - { - "private_key": "50abef0c631a1485184199ae5648a2ce4a415ad9604f2695f3e9cd57bf1388e6", - "address": "lax1fhs8nmgxvuh9l4tyjdqvx93g7tfs2jyleycvyf" - }, - { - "private_key": "733d9a4dfdf117783b4d888ebd1c97d429cfe401df23976542807b8e52a16d6b", - "address": "lax17wk0jh8kwmjjclt09nu0ungmy8t9zymq2ee339" - }, - { - "private_key": "f4e6a61836cac85df712664c5c0035f21c169bb0ad1a6ec239953d5ba55e9f94", - "address": "lax10px08rn4seuatrqw45hqxs47n3j563shaj9q4x" - }, - { - "private_key": "45dcf90ee859ccbcfda30db29956cc063205f714bec2265f1b01ae5b310da07d", - "address": "lax1esvlad4rl6678sv98dc0mj935lhxs6lkvudvaj" - }, - { - "private_key": "15f0dec3a1a47eeebff79edf97eba1ed6fb3a71c5d22dcf43492b0b37902e93d", - "address": "lax1vs8lvmyr3v3dj44rwdvrl472mw4d8e2g46856x" - }, - { - "private_key": "c8b8f693edaffb0f75c8907b710c1d49f18a8512176d16dc29671557df251ce8", - "address": "lax15jqy9un2htkgtffkfe96pc3kcsj2dqn0wrd0st" - }, - { - "private_key": "2724a49a7a48c54f7864a000272f4e4a74ded0c1a7fce50cd789a185a9051e3b", - "address": "lax16eddhcsxysrykwgr45qhesezyvm7gdxy9l5xsq" - }, - { - "private_key": "33433524a80c015cf3175891b00f9c3f182d156d2578b64081d41403bac8d12d", - "address": "lax1qxgkruvaujgj7xg7c62almgw20wkuve8cl48nm" - }, - { - "private_key": "5923f1fd6ddc7f2c28427465e2cb746359cadf11703b211ff1269d9364b55fa2", - "address": "lax1spm4c9upackj4clwzfu5ggsl9s0cdl4wjchr95" - }, - { - "private_key": "bdb58deca71bb133513667f5ea18737beb93be1601507bf3146db580b7a217cd", - "address": "lax1dz3flxe8v2kgjg7v2xl3uhu86jlxmcdyj3nnv8" - }, - { - "private_key": "308c8c83af35d0db458f97b544d8070413ed30eb346312af4a0fa801926bfb91", - "address": "lax16zeqtzpulpz94r5kjsjdmsrjfryshpery22mcu" - }, - { - "private_key": "26b3c0885e38edfdc7d6eb64e6d4714b84a38bfe95a1aae4c30ccdf311b09498", - "address": "lax1dpd0fthx9fg4ul5jgkfdz7u672vdh8karzcf30" - }, - { - "private_key": "2aa484facffaa73237b7deb6eed06f0b0f75cc686d32bfd9b62de2669f92f3c1", - "address": "lax12x0w8tkldcez4gh0xhd54wd6x5qz8g8dnhyc2z" - }, - { - "private_key": "6b5dd8e4611f19444815804a9a291c88fa4fd05c1aed73837fb4e3f0bdaf0810", - "address": "lax1x27h5uet2g0yxp328jy8awa3a7a0uls4tycj04" - }, - { - "private_key": "fc398f4bf9efb5c57c81c4cd2fb61d1dd4312ba5460e5e344d45c3b2bfbe0a9e", - "address": "lax1yk0cpjn9x4xdg32zpczdkacljxvced9fspt7e7" - }, - { - "private_key": "c62311a25005c3181106dca720a820a05f6ef4abb910daaa0376dadb5aa8ffc8", - "address": "lax1q5xtgft02z0agmpux4fhtrkygc34e408m6dqp6" - }, - { - "private_key": "4e2324ea99a36f05244ca5f1195a003356b2d89fbd7825b1250c75bd9ff7b682", - "address": "lax1d9mj0hwhj74044gug9qu03gc4kc9esz07wr765" - }, - { - "private_key": "906da586b74f1ad94ad440c20b084e75240527abc180fd26e2eae6601ace065a", - "address": "lax1f5dhxfxxupcfyndpxcj9dqzeazfa5fa0ajpmuk" - }, - { - "private_key": "9e4e43b30ca34668a3a925bf1c3c849415595b4ee0ca64c8c5cbd7ce6a7d9748", - "address": "lax1f5vrhr3gazkaqgyde3ytu6ud4nyrvu9ng02cq0" - }, - { - "private_key": "2b42ac4de25953f099f1c5ba6beb9630a6e051e8df27d25aee6fdefe1c0d1bc0", - "address": "lax19j3scpfss20qhlr2fxqpjqemkr9qcg9em3jp6u" - }, - { - "private_key": "786e8607af5bebecb376735b25d308422122507f299e92c6b2ff3990c826a8c3", - "address": "lax17gtet00njstdv9vzu3y6vj67575d3vw3qzvz38" - }, - { - "private_key": "b1cdc80d859e6d833bc66caf89a97feb95baea504552dd9a4272b4c169ae902e", - "address": "lax1tqplylxq555lq43ym45v40ylqn5r4lup6jxc4j" - }, - { - "private_key": "34e0ccd99a525bd8a1b0dc288e329ab4feb501c02c87b4e7d3b21d85b39bd402", - "address": "lax124c30ye23lex79vqgw9d9k6ytcszktl6fyllw5" - }, - { - "private_key": "8b2c92c87728a59a4b3773b02a01152c17ee0c10df62f720aad7d7d1b3314340", - "address": "lax17y5zx97jv58lg9cggyt5fkw76ksqnp5kan04rt" - }, - { - "private_key": "650cb3d632da8d29a6ccb1be3c34ed6e787fbccdb5ef8d6ef8195bdd32a8efd7", - "address": "lax1a7wm0x4vj0nwy9uk3lutk0wgsnw6uaspcvk6vj" - }, - { - "private_key": "a37defc0e5b8aa41375fb706cfba3295f31db703e5ff3b385ef65a63beb189b5", - "address": "lax1cjfzmcjj0c90e538rufye5wrnfus2l3nhy46r2" - }, - { - "private_key": "de4816631a2ae629a79ab8c4386d7d2c85aee042d52cd6cc601cdd1121543666", - "address": "lax1r5fjsy98d85mvvwf4qmdu2tp9h7y6xam4p3ked" - }, - { - "private_key": "aca43d825d343764de3158ca0d7017e04378d4b2d8455895db13cd0a8c163a53", - "address": "lax1ynpe5ajkq96xazhd8f8k9t8z72w69jrn96x4tr" - }, - { - "private_key": "c5f4ff101e12919c6ec6f8389939a147e62ef89f22e68fa22b4da92e1713a8c7", - "address": "lax17702a3mqm977cd67vc0z3ggdzujks389epqxv5" - }, - { - "private_key": "75f3cde79095f1bed102a2d8f54c91ea26ed90966fb7a52d1072db03af62b68a", - "address": "lax1vt5xhlzjqf5u92mxenna8trdwrmqtcnm3ym3ar" - }, - { - "private_key": "36180ee4c966f01d89194567123a3b05d2dce618531c4c5a82812a6ddb8dbf7c", - "address": "lax1n24zn2rf4xtuz623l208mafkn4lwdgm96zg9l4" - }, - { - "private_key": "13d30dea7590223ab47c3c6fca404cfb06fff2b9f5e3caa8846b212b9626c31b", - "address": "lax19jgg7s67u5tfjl04j6u6zczdwkwsswz4nvjdke" - }, - { - "private_key": "90e5b3dd7f66a33cbc1ad29978799275a41810f5bc7f497cc7de87e706f080c0", - "address": "lax10a44eymeqt56el0qdmdnqlqvy7he44x4wc642a" - }, - { - "private_key": "b3e4eaabe03fb4681d917433c38c378f6912ce76ccb6abc1f8d1f5119eca10ec", - "address": "lax1tnddgla837jw7wkpphzj5lehn6rldzt7ncqy2q" - }, - { - "private_key": "8ebc8a88541ded4634379b2097c88dc29c7cb10b9b64447ba2fc88d05bb49b84", - "address": "lax13z7twp93wenwujarcwdxwfe3q73r4zjvucv530" - }, - { - "private_key": "8aeb87ef6b71e23e017d7bca4c22f1ea0d46003929de9c4164b31c509942f12a", - "address": "lax1q3jngyez82cr9z5udf0skychjky0g3ntru8y9s" - }, - { - "private_key": "0743667040520e606495d416497b763f15b2d00df49fba4796256664a78233c2", - "address": "lax1356ndumcpy630vjc5ae8gdspcpljxf0209n3lf" - }, - { - "private_key": "c5040480c8e6162866ee5f12df4f2de1b35ded64a421a6a8408e54163ba76718", - "address": "lax1t6plwculcqqpnerm0m2ksgpsp758kymy6d9xvv" - }, - { - "private_key": "40fc8664248500c816e6b09978293c772245e3db5e8867c8bf397c569c7f0818", - "address": "lax1gcfw9tzgq2auaspd3myngkyc2vepuxagu5vpny" - }, - { - "private_key": "150d383a280ef7992510c8334b561cf179390562697eea1e68e68fd5eec40850", - "address": "lax1zvjj0ugh4f6dp2swlqhnptq6ew5d46xaml5pph" - }, - { - "private_key": "ce43b6407560aec48ba0ff68760c4819350ef07d29d635ec8d3607f45715d6d6", - "address": "lax1x7fqkckh40haxely6pe8vtqfxeep3v893dm6zy" - }, - { - "private_key": "36678f67eb208b3c53b41f57395f4091c9b08b55d507a51d7fb41670c9bec4b9", - "address": "lax1knpk32jss2yr8mf89e3qh9rskfwtn67y0w3fcf" - }, - { - "private_key": "153aed8a56168605601f6bd620744ac1ac1a20d9b1ca8961d4e7d56406d5300e", - "address": "lax18jn8lnjznqaznzcvnz92us4j4vgpzjf82gtly7" - }, - { - "private_key": "5ddeb17cfa6941a5cce331674e9e4cf1aeff8e179992c6f208cdd10f3c627241", - "address": "lax1sj0mmwprpsccfqyx3npgnk4eper8ghqtxrk3gt" - }, - { - "private_key": "e943fb4d4c1f397befec59c9b4b941eb47e20564fd52e941d25278536270baba", - "address": "lax1srs4nrpg4tztz068t0y5fdvpjgw7wx8ls96lgj" - }, - { - "private_key": "fc73572601bae863a2332e0bcd06c0efba64721eb01de9a0f5068bd76698c3b9", - "address": "lax1wk05cccqfjmllswfwz99pdjqsurvksnadc8kzf" - }, - { - "private_key": "826e852e3fb9370a4db1a5a8f41ede4f1bbf7fbe35d85aae3528f711ea67cbba", - "address": "lax1uetraps3gwqgg6qzhqhtgnqmccw9rg62pdpln8" - }, - { - "private_key": "e6dab351b141a38d4bd09485dd3997c8361cb5d68e6a80e9c04cb744c85f8c78", - "address": "lax1jg34mf6yjmccv62qdmzpnqa23m5gwwj9zpx6av" - }, - { - "private_key": "06933f48f2368545043dc7ffd05f10e190dadfc9a9aa59eef969dd3f27fee23c", - "address": "lax18l43dlyrvg4c23jyz5crnuaw0thfgej3ylmu20" - }, - { - "private_key": "977dc41732d98b597e5fa89c52c5dd8db5d2f9a1e563505e974bea5170bd0df1", - "address": "lax1ru80qsm00sj0y8rku7v07fwsqjfdgy7xm9nyf3" - }, - { - "private_key": "00903dae2a0d0fd7370cd72d63604eca471935b9a79a807e959a0261f272c46e", - "address": "lax1whuuxemvgp7y0w8nnr62mm387geatc8rq6gtpq" - }, - { - "private_key": "b1f6043cb53048d2a548aa87d72be131cd15dfe10ba7126235c1139908af2e05", - "address": "lax1pepq2gpl5wdddf8cexdpcz4dyv0cmkyqupfcdm" - }, - { - "private_key": "f57da0a2477eb1534f7a7706ce4fe233321581811ae1416bcc1cea84eadb7e92", - "address": "lax1ewp29wj9ddgh94nhm7vsdfux492nw2nc8tlacs" - }, - { - "private_key": "71956ab375893352a38615a049901270e3d1eee6f923a4a5871418d30ccc7549", - "address": "lax1zq9w73gf2tvx8pw9puf6fmy9d8arrwxfwelhw6" - }, - { - "private_key": "757b3fb6767a41a47e4c8dbe1b75e80312d1a5fcdf2a3d808c2a61e1367bebfd", - "address": "lax1y79evchglsmn9cug8p4yk7959q2y7qry2d8zqp" - }, - { - "private_key": "d1aaf1d5b99547512b38bee0b5b90f8b6d16558a63a2c09cc2fee595ceaabc8d", - "address": "lax13czff39ts9gjq5ln4mm8y2k0xk02k8a9td8l2w" - }, - { - "private_key": "2d085485a8e2cb1680676a30e98b881ebf09e80171c87979d4124ce6c33a8609", - "address": "lax13vxr05t4qmykqfsfatcnw4wwfv2suyk546yl75" - }, - { - "private_key": "739f65a43182cd4936e67c1070a7975d5eab7df77a45648a5137d06cd1482fd8", - "address": "lax1lwcjckuzq30c63zwr5a5tlalrl4czp362k4st4" - }, - { - "private_key": "850806e05987533148e88e32c1dd67c5ac66894d7888afbb83a36cdaf09db6c1", - "address": "lax15kmhrx2zh33v3xzjuhy7hw7f68y6nqzy20m4ru" - }, - { - "private_key": "d3c929b91420774b660ae078ab7e14a63115c97d9a7893815e894bcefe20b4ac", - "address": "lax12rcmsc2fuczxpz8fumjf3hjc8gdlv5m5mhrfvy" - }, - { - "private_key": "328f35d91adc95e8bb233a40ec6c3e36d09596e03f3cc4aa0cf2387fc3a2ab58", - "address": "lax16393qfa4st3grhv8s6djv9smyf776aphgts7te" - }, - { - "private_key": "a0e4b60da1375c01be09a046d2189e5888aec9e5eb585616e8ed9cb185d21a56", - "address": "lax178uc76rx27fewazmw8vlvf7m466vswkkxagq35" - }, - { - "private_key": "7a09f54ef69e3f0808cbdc39fefb2f566530e56b1f2886ddccc3b96e12a9d70a", - "address": "lax19vaa2enew89prff2p62k6yazzkpxlxv0v2gqtg" - }, - { - "private_key": "101741cf5c3840c2d8a04a1f29d9bb55eb198b490154e244bfcfeb2f6328a0e6", - "address": "lax18velhj7chpg0k7cyxlxvhm0xhfvzwmry8xmmm6" - }, - { - "private_key": "ae70de8bc9c57aa2b12d254dd541ec4b9845b1331ea6a6abd95272cab2dc9524", - "address": "lax10a4w38c3z6nfs6hkg0udd8e76avpchdgyslt0x" - }, - { - "private_key": "2dff46ad8976fe461488671c3d96ae27520bc9ab4acd5194c547cc750823b172", - "address": "lax17a384a939sawg9w6a2w0e8j8027vgnndygyn88" - }, - { - "private_key": "381a81f9c9859904bc1e3c63c2f591f767942861a6d42b67a62947382e77d29e", - "address": "lax16ajdjupc0refn63hjw6a7napl9dqg5v6f88auw" - }, - { - "private_key": "e04079f843110e133c3ce0ee7794300eebcb009221a65ea2104e0e50fb5657fb", - "address": "lax1s8h6pue86csua977vqvj5j60hadl9xrv37excx" - }, - { - "private_key": "857eb4788abd23c49f35351567c2c4779dcc1040e6898021d247548c1c15b9d3", - "address": "lax136ztq57vwg38zar4m8fvgs3s4swqhl7a3gtq5s" - }, - { - "private_key": "72008a699095c68c7ed55c6d1fafd1018b69f65a2f46b6a92d58405cda275ab9", - "address": "lax1f67q3rtlykjj7q9y2jd6p8wdy2e8arka40prq3" - }, - { - "private_key": "597bc6526a97da8bb9fa12ed7071d9afc70c6fb3fb30808197ec76415c95fd55", - "address": "lax130yjfxjx3wesxfj7q7m97lmayu4w92tl4xtvdc" - }, - { - "private_key": "ffd28c41fad93a7f65b3cf3b17c048f35cdfcbaaa30b86857f05315b35e027e0", - "address": "lax10uj9qeukhyjwl22gcysx0ne75rdvpjcegcl2nn" - }, - { - "private_key": "474e102d00ae200be956bcc740ba67fb4c3314db71a47e2c9eb1d53359233570", - "address": "lax10u644p042nyj3kh0q89t2avq0xadjzz3vdl96a" - }, - { - "private_key": "43c9919c8d81b6a2c5950a78a95ba6a7a6e9066940b3c291aade270e1bc2bc81", - "address": "lax1j8afu2048cg6fcuf8c4lqsv5dhasrww6zsc648" - }, - { - "private_key": "09bb9b15500e6c008e46e0cac4e15b0c8a106e4897058b76b284c52ba6041233", - "address": "lax1rg5hwfxk3r4wqv4vm7dddfl4j4qtnxvd4ln7zs" - }, - { - "private_key": "399040ffffd26731282b374af13f92df5ed0df0436aa187e2d9cc623f4173391", - "address": "lax1xcjavy6erzqrggktyuvsw2as2cjtn3gcnaws9k" - }, - { - "private_key": "b433b76905e5a08c212672370af7242268e5db79304b1a539d87a107fb8548e2", - "address": "lax1shd0mwmmwqtfdjav2n59p2nt2tsfsh6nuzd2xc" - }, - { - "private_key": "3d74f553feb5b22db0535ff98a866a114d8cb8f96f58159f0f69808c946b2f16", - "address": "lax19anxxp9r5wm77dxu4caa7pd63nfvhzzuhma77k" - }, - { - "private_key": "8e02e3e9065c29e3467d79be456932a65e3d84e2b94e028f1d4226922e553455", - "address": "lax15cza98crn0rjk8cpxfj9maa3gxg2xy7tshznu7" - }, - { - "private_key": "6c767ecd6a827dcae3ff5b0902142d158f64edda0fa33470bb92941453df01ca", - "address": "lax16s7gjemehwzzr2cmx0skll9rcnuk96t4dmzlq3" - }, - { - "private_key": "168b4210d274d99b86c7ea8b76a8168c8d99fda2f293c2f0cf5b10ef8c6a6428", - "address": "lax10h70dasyks8q5s6jtnnqt02waxwlxaeu9ceds2" - }, - { - "private_key": "16c27e7d71201e92afcf5bc4e182899b187ec4147a793825d25f5cef1a487b08", - "address": "lax1mdr67zpp4rqregwyc2wcxqdd5443xnksrafy2t" - }, - { - "private_key": "ab52bd95ad5a36eacf8e359663dd1d4cbe83c2b6939701054bf76ac182fe9767", - "address": "lax1l8xnxqxkhcsefyz99sghljgg5rhglcpntzvw3z" - }, - { - "private_key": "33f186aa46e42a9053efee059487afc6baa375aa47e4ecfc27b6bd89abf41106", - "address": "lax1xgsg3fus04dg6fqpvmnwv07q95r9wttckc58ym" - }, - { - "private_key": "02271db327b540142f42ec0293393ccc8108e98b43c8f76b6052632a73fc12d9", - "address": "lax14y0zns60vd32m9ah8dvuss7tsng0hmsxagkf6s" - }, - { - "private_key": "a8d559c183d3fb1cee660eb1c6591748b57951a0f523ff14e672fb8ebc01b324", - "address": "lax1y6v30qjw9ck5vx4002n2cwv2d3zxva89zke8w8" - }, - { - "private_key": "05274a23ea4458a6ee5946a355774a11a54234768eb3b320ae2108928a62b948", - "address": "lax1s5l02ca9v275j4xug5kzpe6w4lr9xj0en5c3hq" - }, - { - "private_key": "7cc8172eccbc7bcefd360a9198435ec5890f90d6b6dcb0fc1bb441082b89ee7c", - "address": "lax15zzhkd8cf59sln9m0znphhq5cuqxlx3xpd64hq" - }, - { - "private_key": "f3f40508c68f0063a18dfad28609802a45c6b7563298eb28b2b1fbe6f3b66ed5", - "address": "lax12vdf0fm7nzqedhx4jm64l8tmyyx6awacxsmpvf" - }, - { - "private_key": "c68f7c87488d8887dbdf83402a345f6951caef6618ece41991934699867813f1", - "address": "lax1sfyd9fp68rzapns0zmysyavux0c2cym0swsje5" - }, - { - "private_key": "d00f45bd3c1ec76a4ef7d7fa50920421e87e0430129a84225fef5521f67fff9d", - "address": "lax1q9n2ctjd7msugjfqmwcka9cxefxenjccqjjhm3" - }, - { - "private_key": "0c82522f21d7ca722c16b2a6436fd51c71a42f76d0e61bbe5b677f83d32424da", - "address": "lax17dt9gn86lnj9kvrvvjxw3t8yx9ae4hpx2jzl9n" - }, - { - "private_key": "0ccdc78b3136074585cc3929beff9f28d4970a8f3626316cb02e06d7650c6e1f", - "address": "lax1drfewgxkyvwfv7d2nlq0fa7htvaat5jcyqxm3x" - }, - { - "private_key": "d0b8e9d507309a7646799e8f708cff7d9e34a9645205fe64b84503f11cce5407", - "address": "lax1ayezqatv59rl90ml7r2rwdzyrwsm00qheaq3qs" - }, - { - "private_key": "82e788ef1a1626ec93d8471f384bb22a9e186efb88763563a8df93fc8380ae5d", - "address": "lax1eswjszsnraza2gzkqhkcwega70qktgc4wurye4" - }, - { - "private_key": "64efd2607563b6b95408486e1110ac969e36d7dd5a23aa8b263160fe6479319f", - "address": "lax164guv92rp5rjdjy6whmg59a3vennuu9m6n0r24" - }, - { - "private_key": "0032601f73142beb7c4953fecad6d610b77ed3e65367a2fe16da1750ed67f2b4", - "address": "lax15hrap75udvfs4swevatz3ay4ruullfzzqgpngt" - }, - { - "private_key": "bac73ded7cfed631fe8974336918bcfa5b3af38be927859a40d9c8c346bd527d", - "address": "lax1r786qmhnq0eqnuqrsjxyvt8h3wsde3wy2296cy" - }, - { - "private_key": "b1315ea428835323d9c7a6c27d8841fa334eb18d4402eafa96863b1b757d8e82", - "address": "lax1lkfzamhqsr0g0p73xqyzzz855m9r3dnz4jcla9" - }, - { - "private_key": "79a8b93a9c40cb2bbc06c070d117cad1ad4a35aa8effe9651c157c41d2c92a96", - "address": "lax1muxcfdw8r7822h54vazgcgvlfr8r22du45vyp5" - }, - { - "private_key": "e43ea4b7bb69bbae3dbfd2c5a0f7e7a1ec8cea947e21bd3e264cd8ed978c7a2b", - "address": "lax10gfhdfp9vreea827wm8rxgrh0mu0c26x2qv3nx" - }, - { - "private_key": "0047a73b189e6b382f1e702f5ede897027d94465ec5ed24e09e426256522ee34", - "address": "lax1ff7a99r2smvajuzazq0lppwxaahtelxw37zqhv" - }, - { - "private_key": "f791a53f4a0d8f58b3fbe7c4e3fa0f1fe7506cf6762185c32bf149be60e7cc12", - "address": "lax1m8kmqvclmphcls0nxlsl4z0l8lj50hdn9pjlp7" - }, - { - "private_key": "230b49ee6323e6547b064b62e4bd69b13f063e38027ab4b6a671a57301efe7ca", - "address": "lax1elk8d85j5zc0dwteztfhr9utzd9l3hrd0m3ftm" - }, - { - "private_key": "b0cd5b22a417665619707c1cb7a596cc8d2d797367563ef8cec144522f49deff", - "address": "lax1epsk2pjgawkdjkl6qvc92z0pawkw7e5h0c0en0" - }, - { - "private_key": "1edebca714b833819902a3d7d081bd2182b42f0877485e3568ff6310a915f6a1", - "address": "lax1942y8sv5rmfl5gwq56t9cexp922q9st3ehgct8" - }, - { - "private_key": "5f551161cfd919bf07300f63a1415c75bee64608d7885de81528a924c10c557d", - "address": "lax1m5yulpy0yy73zwgfkkhm2wl48nur4zcs0aryvw" - }, - { - "private_key": "1a0067ef2150e35a33da3da348efbec4d6f2138a558130bdb404108181e32ff1", - "address": "lax1cu2lv3xnswns0nhvu9sv8h2djqnz8g4h92x8pv" - }, - { - "private_key": "34f5a1b0c270b962149d59b0ffbf778c0097ab1071081e64c33bd0eb9a9df06b", - "address": "lax1grn3t785tf92n2e8f6dgpnenhm5rrvmwm8rr36" - }, - { - "private_key": "f16db014dc5a184b937d1d0ef043b67823bca56aa610e6cd0d548b6279ef9416", - "address": "lax1w3s8t76v3e46h330786t7meuk5s6t4sgkh3x9k" - }, - { - "private_key": "2f28a5d20701b8726fbc6efa5ee32bab8bd91fd2f9b0df4be8a77c8702b0676a", - "address": "lax1r53p6gjgg63f2tq0qgdks2uf3x68280qhzrwvd" - }, - { - "private_key": "77e779359530898f0a6ee7404f1af6302855c931c65ee9b8940fbd304022b92b", - "address": "lax1rq4zt3uj6hk93fz8jcky6ul35cwxksw7tpwsx3" - }, - { - "private_key": "d1204af458773d1d33830287ad6e4720e3b9df2fc1cd30d46d2c4778c5e963d9", - "address": "lax1y6f3wal8sfws94elsuw2y7d8tp9n9c575ev7sk" - }, - { - "private_key": "00e9e703e86a77f30acf5d58ec4fb9914bd23ca4e9caa34f803d1664ce308e4f", - "address": "lax17hakjgkcv52xhenke90aqcezuk4nvncngvfcfg" - }, - { - "private_key": "71e4df2fb9faf5c64d2bab536c5c0e86b88479fe757d690676d321703215e65d", - "address": "lax1lsc2wdk4t4vy0prz7rhh3qh8ngrfvrl5jwth9e" - }, - { - "private_key": "962f2e3bb48e78843945feded8d71135b5bf44727cd880d83ed058be4d760f6b", - "address": "lax17kuncq77rvdw8sqrtatm9q59k6gdswhtyvgq4f" - }, - { - "private_key": "524b95f7ca631a7c4712153665e72b3129e1280911d10edcde3e69df51be07ae", - "address": "lax17jyxm794gscjtdunz7wxd878z5mml8nmewgu0q" - }, - { - "private_key": "940265da2502f75411cc54afbfc5013cd306caaefffb12fc448adac21bd28074", - "address": "lax1hsx4whms93vv0aty4xc770rrysctgjn8zhuj9m" - }, - { - "private_key": "2f77334392d8ba4eb029c61bc1f8952b1535b307ccdce33a1257b1a7c7794451", - "address": "lax1cdrdkg8f73yxdm2dgs8z2l7qm39fd7ra5t6z4h" - }, - { - "private_key": "efec87dca95cb104e5304ba558e02842a03466d34d4a71423e39fc5ffd6ab7a2", - "address": "lax1r9d5w0aees5r85t89vnqp5u4ug9jrdw8sr2m32" - }, - { - "private_key": "803d308d811c0b4e7947a792bbe4c0b92659ab583b789698cd7a8ae060bf83c3", - "address": "lax12qz84w39fdl82aevnug7apvsm4effdp6za42jn" - }, - { - "private_key": "90a98ac95ad92a2bd1664b1331104f85c5c9d37ce23dbdb1b4bb9364c64bc51c", - "address": "lax1gmu9a58g4njfapfmnnun090utng0rg6tg49d8n" - }, - { - "private_key": "78fdb22882e0fde3a6c2e4202db13e6b904043ecd5288ba3d6078f8d8882bc44", - "address": "lax1q78wza3qd6z62wmch8qsplkud2musx9wnukj03" - }, - { - "private_key": "970ac4a423ff205daee69953c51f8a524a3e0d3b0191302936675fbcdc6efc75", - "address": "lax1neypkzjlaph39zwndkuqgwyxrkhgemtjcrlffr" - }, - { - "private_key": "704de755af52a795045dd66a75c32ff8c439af7d1ec1705080b4aee75dbb7976", - "address": "lax1q464ldrsr4pyhsl8wpju742plvzpdedm83qgk3" - }, - { - "private_key": "6ea9788e9a1686a26ac0227ec9af90bd75c60f859b3f1a5f5a574dd1908b7d4b", - "address": "lax19vx3ngexclu2xe3q8yhz9vr47yasv45x3rk4dt" - }, - { - "private_key": "7c157e48820318524c03284f3b3e8fe47d1a02affb735c96c9d773abb1781316", - "address": "lax18evqh5mmmkmfnzvwnlaa254gja0j09e4ewv4y0" - }, - { - "private_key": "1846d7f298f07244a6569d1153e9f0150b7e31b19f949e40f6ec115fc0ff8fd8", - "address": "lax1spz34ynf4tsm43cfzxereffl5x0pdkkxnnc0wl" - }, - { - "private_key": "0f157f9230edcfdc758d6e9aed27d1f05f0f49a10423e9bbf080ff7a3eff59da", - "address": "lax1aylsuxkacmfd5znxg2s8myahs6hw04fqalw05k" - }, - { - "private_key": "b26ac925916b51b422fb9a91551b58edcecb311fc7b592de3367d9caa3ba302e", - "address": "lax1273nq082qkp0m3c4rvgatjff03gw0yeca2ap05" - }, - { - "private_key": "fa399d44e01c9805ed5c7ccfaaad07b1aa3d72a345b948df32b4c184a855c011", - "address": "lax1gerc78eq95m3f4c3edfqqjrz6mf69ydn48l442" - }, - { - "private_key": "778954c9f5e3454ecfe355f1d946ab1a1c1d2d71c6c3c458ee43fa6d069f7142", - "address": "lax17aw273d5atmrl32yxdtlh6nyaa50s5ehl53y57" - }, - { - "private_key": "64851bf5783bbd37021ee4c1b149ab5903753070abf7a4f6a99766e78c0422fb", - "address": "lax1lj9lyywn96jfmvv0a9z9lfsl5g7ew6285vjq6h" - }, - { - "private_key": "e1bdd759f9c0abd0df69bac57a6e97d821fbdf52b21391cd66da97f87886fc93", - "address": "lax1eg48df234vq4kmdlz6mqy3vy4pu45r5lpvdqu8" - }, - { - "private_key": "cb6e1304d29f11762b550d39bc5ecfe4147dd3ac3bcd8ad83ed8c77cb883b034", - "address": "lax12y76v8gpne5wnkyc954k4hayrryg0yk5hezj25" - }, - { - "private_key": "71be1686b6eb7f9e702d7cadc1b69c6af7aad0f3b869f58651d3a7a2e968d99e", - "address": "lax1wshm986qwhwla5qlth2zdtr54j2ne04xppy963" - }, - { - "private_key": "2058775dd255d24de68f0e5da42aaf69e16349acc791a90b22f57343ba0ab670", - "address": "lax1zfac997f7qrfwwhfwfpaj7ss5glgznpws2sn59" - }, - { - "private_key": "f114947a9c4c4b8a7bfaea7c6b10bc232e05c1ee6c3b8c0bfadd36d5600ca45d", - "address": "lax1myfcv3tnjrfmccw6k3djmsfsd4n0upptvqck3t" - }, - { - "private_key": "f8f9035ca2e944145907952b54dfbf47d8c7a834fdd12b61e9b31cbd4362a3d2", - "address": "lax1mrjalq5aa4wfn6dtn7aj6evc7vafmcykxvn8dt" - }, - { - "private_key": "d983726eed5240c6c730e0405d52bf82a5bd2d0dfd1671b959c36447a6c10119", - "address": "lax132jh94tq6kjaevfmyfnulwz0s029qecvtan3rx" - }, - { - "private_key": "317b80eee4a37f6ba00c3bc10004ead36b93be0edabf1370993dcfa3a342ea8f", - "address": "lax136sqr4xfd4k65v4svssw84dlx4qny4pja3sjv6" - }, - { - "private_key": "2823bf343dd6184f18e65a4ac8d19f10525ebf70103d410471d0ce97c7c19b41", - "address": "lax1ztxck6zpve3p7u3x3gn60pyfnjr2rnhy8t5jl4" - }, - { - "private_key": "4b1803bfd30d98e168b457d829476baecd124e9b032ef827942c81035469cadb", - "address": "lax1667djrew5pjdk08r2d7t6950g38v507080jl7e" - }, - { - "private_key": "e6032d5440bf01adee143ec032fb4da2bfb0683ffadad8d149b934267c7d3087", - "address": "lax1tsp5grzxrplhhylz68uzezfxrhfdj4eun63kp6" - }, - { - "private_key": "da23914393569b63e61868a6efac0b226489dd1723dde84f008af7854e87cf75", - "address": "lax1njvqttq79larmvt49rg830zeka9ekkmnu68qtm" - }, - { - "private_key": "c21051d8fc5091efbb5950bf2fe1bba7480ad417a642996fda23622f2def215e", - "address": "lax1euszsc5x5pnr60ndlypj9w4zthmhc082yk6nkm" - }, - { - "private_key": "1d38deb8fb63bf78f2d366628b84e1e8cdebd1bf1bce7892c8f8fa434bf84dd4", - "address": "lax1mkh8vgspse87vtrwr523sscmv82x044ddmpazl" - }, - { - "private_key": "28339363ae432fee8ac039711a6410c798b63d2376988358ed26496042084390", - "address": "lax13quq90xhlkr5pt6rdpmjayw4zl2fvjnr7enctw" - }, - { - "private_key": "4e480355be52e66a356693349ec3414f3aabe69fc1725f8a207745ebb4f54220", - "address": "lax133nze7m80qf7dj0sn5khafxjh5jvs0dr3cmysx" - }, - { - "private_key": "4b7b448131c7a0bec3c898b0b47f8a1d5817b393d0f0e500a91da05dd8570301", - "address": "lax1msq7fcwdy73lyjcj35q7y6ug672cwzfkvf3yku" - }, - { - "private_key": "ba25929d8dae82cf5aa49e6329cfb5137ce40dfaefb57d69ecb8384e34ebbfe3", - "address": "lax1jn5p0n6t6n258d9mj2q7hgr8vj9yh0cg58gsxs" - }, - { - "private_key": "d2858bd7ae4d4526337c2d44ad534c7b27fa5748407922b1738cf8eb87a251a5", - "address": "lax12dxla904xmlfhp9xf4jqt9qfsqs7e60099k38k" - }, - { - "private_key": "04be4f3f71dcb7c964a3f3beb3abaa8bb2b3a13d98706aced17c1aeb53af86d3", - "address": "lax1amaqmdm23maylpjpjldywnm8p72e3fyuuhfc4c" - }, - { - "private_key": "2eca3a96463cfe4f0146edde723b30bb62b26f1391aa9c2178e8bfb9e2ae4814", - "address": "lax1x9rrtwnua0gkhc89c42u5llreds6zhz4muvuwf" - }, - { - "private_key": "1bab61cfc634517a5d3a1d341e81d403cdb130b9757a371dcc3823c5dcee4374", - "address": "lax13kgx95s9s426sqjx6x9tuy9j37nrepd9yqm9je" - }, - { - "private_key": "80ae9c00caf3504ca6df74306dff99a69cb6649e881316012723896b967f836c", - "address": "lax1j5lypj28yrfg38wp94afvjydzu5r4rg28kmkd3" - }, - { - "private_key": "52d0b7842947f66c27cb7f82fa2c1d94964fce4668a803c0f2cb34e1d44cbc87", - "address": "lax1gsrrp95va3mjxqq9guqfu02lv6ta3ky8q5k0px" - }, - { - "private_key": "d5a594e20757ee37ace4a3f93d11d51bfca92905aa32a030b24e7a439940d0db", - "address": "lax1ek39plu57kzda4uf2vkx2ztd9sl64rx46vxgkw" - }, - { - "private_key": "4191bb940879228e760c66d26f19ec09c1913bbaf528df3b36131cd8e1647613", - "address": "lax1wjlgk6z20vxlq7c6pxhul38s5ju5nxcsnn9qpf" - }, - { - "private_key": "5ef69b384a09dff6da1d2f1376a7882856f5bd002f63254d3dfe2908e619c4b3", - "address": "lax196d5p62c6hars7hzhryggdn4x5cj0n2lky2ldn" - }, - { - "private_key": "662108494cfbdd038e0d4c97e459280e94cacfa08ba14406c226d98939c2ded2", - "address": "lax1pk0tavpt976acaufvkh3umfzkpd0tr94dhrska" - }, - { - "private_key": "b3854ebda300a16129eaac43eff1d2f63e9d613ba862c02336fb1d874b459938", - "address": "lax14kjzjrcukhkww22w0pmy77nmwqrrt5wmdhasxv" - }, - { - "private_key": "2c8af734537d63624818e250078eb7bc828ea3c12f54888177a17951da1c4667", - "address": "lax1fk23qcmrmz44kf98wnyek2v3srz8xsurfhzc90" - }, - { - "private_key": "b7f3ee32cde28f6f7cfcf37184e2996ae5d5d941044ce9c77f85ebc773b374ce", - "address": "lax1pcl7pxcfxhuvygxkqnma2q3j8muy92eaf2ecp8" - }, - { - "private_key": "d8611fa2f6809c97e30a27b357c38f307ea9534eb68106d59291be33e0bdc8f4", - "address": "lax1ncxgzft0tvmkyqh2t4mce5rw4pl37vhsu2relp" - }, - { - "private_key": "b87a09cc8a284d0529b59944ca3f963d35431ef9cd997a49c61f3b0511b2aa3f", - "address": "lax1u9gt6lx76vpme7y9rcmw4w72zkhapw0z7yn0sn" - }, - { - "private_key": "917e7a3785d61d9d50c96c3820945f1e2c9e2103c62a61fd4c486844158790ec", - "address": "lax18yvv4dff8zxkeqmyf06sg8mz3cl25rg2cz060h" - }, - { - "private_key": "786d1645c18bf91347cc8f5a4923b6a017bc5f2e2d9dc2cf34ee56d2e32af461", - "address": "lax16vh7uxtqpghhjpc3ualcvp7enl0wrut9253h46" - }, - { - "private_key": "43a3f86099cbd45e33a39a74873c0fd95f99fd51f85f181f265ed80fb745dc27", - "address": "lax1tldp5pn8rm6p579qs9y9k89nad4paxu3l6cws7" - }, - { - "private_key": "e750fb271350822b5f3206d0e501d5219ec3f7feeea93f8ebb9127c126e594db", - "address": "lax1x4gskyd7rqnawy2ys3npdgjgqtl6sv2rqxrpjv" - }, - { - "private_key": "c703ff48f705a56f67f74df7842c224d459e1986ccf33a830b7079a959722582", - "address": "lax1prasjdtktxpvae5raue7kamerv8xjxdvyph5hx" - }, - { - "private_key": "7a2c665753216a43a919965d38bae52b960fb575f268b504337a86134d200746", - "address": "lax1cmcre7dtjn7pwdxltqphqeyq98z8zmh5564ame" - }, - { - "private_key": "390970a57992e1c158a41e5d1d390bbba6c3026adf7cb22302f4360f11ed499e", - "address": "lax1hlch63v9g85vzmr54kcw4x46s2ldahz0qx6avr" - }, - { - "private_key": "cdb557f9b9f4478772284ecf85e83bf7ae35381cc0c3f4e276c1e22171cb6121", - "address": "lax1cc58s0jly6rxz53m786puqyd22azf5ejsp9jhq" - }, - { - "private_key": "85b6050f699325cd09c5c5bf1d560a66d68c28a8fb7130740592324c7e9bc03a", - "address": "lax1gh34893dp72dg2ghfwznpk50kh004ahcpn7jpf" - }, - { - "private_key": "20079c8edf9dbb69b879aab7d102e74347327e4d70d0431d1ec92f44510a225e", - "address": "lax1eh53pdtt7xrq7m57sqsxnp6gkypp4zx3g75wrx" - }, - { - "private_key": "a5a80cce423617db0019f5eabcce0342c8461240944cc021dd745523e2cf2e2e", - "address": "lax12tqf66euju3vpmtu9lu6jpzlegxgmk3zu2tplc" - }, - { - "private_key": "71f023031e45aa9171d1037f60facdb696305f0ce93f3c3cf61d01b55c5b1003", - "address": "lax1m9hnr8mx6ndd4h2mxa9q5ccczr3f7mm5hv5dv9" - }, - { - "private_key": "0e4d57b272a117b054a4b065ff1312d6261b15e3b1e8dbf96bd4de9fe2362e56", - "address": "lax1fhmvj6a945lrdk2h453uukxdr06hmqvs5ftwsz" - }, - { - "private_key": "799b8c9a30b378235f38f4706ecc704c8cfa57d4adf537e71f9003976310023e", - "address": "lax16et5fn332fw0qrt8qzt3hc9el6hy0tjv0vyv6m" - }, - { - "private_key": "223f25ea63c8df6e681bd463edea8f0aa73bac20e6030cf92621b224c8860d81", - "address": "lax1w2m0egu3htgfudc7p3cqv6kyzsaqx5zs63nl3w" - }, - { - "private_key": "0ddc842264510e412be5cb155523b4d14c1e00741ffb7e546825d2423e35c986", - "address": "lax1d7slz50skp98y5ez4s03qk6gvqgzqtagsv66gx" - }, - { - "private_key": "b9b072e9d2706141d6fcc1372564649f33a622f7879ea7dde68616704c58ef7b", - "address": "lax1fts48n3uxrg3u692lqzju734dp2kkak5n28q5f" - }, - { - "private_key": "e72b03c161e7be3d74c9a2dd396877559d8c54715f2f5f9610f2b3b3435e8ed6", - "address": "lax10g7ywnzx8w6pq0e90vjdsvfssr9aez3jvyn5cw" - }, - { - "private_key": "69da28129cf3e2d3cf1b8f2a0f577f7abd04377ff4042a154ae1fcaadd68ae70", - "address": "lax1z25sp8v8hu28zsne6e05m473x3nkh4rgszq03x" - }, - { - "private_key": "dacea4ae55ae4eb1d278976da8a89c234b968b8e61da75d112151fab688d768e", - "address": "lax1xgh84gu8n97rz5gvnnngnfscakra0ygnq5lu55" - }, - { - "private_key": "63f6bcd5048e24dc18213d313096fa06e826aec7af3c7679a1b3da2c71f301cb", - "address": "lax1e2fwj7tfwpkxd4y2xjh8lmeamp0rp3ewsee9lr" - }, - { - "private_key": "10d1d7d7503921099ceb99bf2cf51dc08aba86591172774ccd66895e19a29ba1", - "address": "lax1tncrtlhwlzryaargmzv56vwq2hrl8q8a05gq92" - }, - { - "private_key": "30bce136b0ddb22885d291d88db4f1ead4665164b0069f17cb101877f97cb793", - "address": "lax1tzul8gq8ve359vd8mgnh738y94yn36jvrrz96c" - }, - { - "private_key": "e2d6c654159236ce5498c031251d5b69aebff993c603ca80dd6eb6a689489737", - "address": "lax1awaj8zu7946ej9p8gm92u673maa372yvud6079" - }, - { - "private_key": "5d39e068f6757a1270dc3fe6af16076239ac7847538f8e4ddf9ca7b55ea81676", - "address": "lax1rdaqy3l5dasyra8ha0tplrpveftczhrxeg8pc2" - }, - { - "private_key": "396b17cfcf6be5b5dbc4ffa8d2edf1262f70506acbb6f3c24dde0ed79942d590", - "address": "lax1lxnayx5m72k65maft33v764e3l8hd8s6jwmrgk" - }, - { - "private_key": "6729847b89646a5f880abe07cdd0ae298f3df2b079ae3f1b02bb6764bbb79942", - "address": "lax19zcsfjkfmnycahw6nz8880y6rfcg29cqkcg4fv" - }, - { - "private_key": "ba5f78d398eeff2e2abd392d86379291510f63387227e7ef949947b83202bf0a", - "address": "lax1pzlruvndm6gujtzq2y0jc8lycs423ucznazg3k" - }, - { - "private_key": "f68b3f7b608ce9a81d98979586fbc4aea59feb8d69d3b0db0487c20cb74f570a", - "address": "lax154euhy6wcp6smdy67mgucleee2gcd69sjmtu5f" - }, - { - "private_key": "1d3d7553218d66c7014370236a2abe849afc5145903d34e46a2e81d8e7a91074", - "address": "lax1gtry2yqccx6cnu758ta3p3alnmwurm8p2r0sz7" - }, - { - "private_key": "5405edc53155eb3f69b6cbbf7b16327b145e37a72ffd2146f3d15f998c062ee2", - "address": "lax1hkchn60d87m777s43pswxpc5n8klxkgm6n2v4z" - }, - { - "private_key": "b0eb30b2344f014ad7ea300e9871a971c7f864f8d5da59313f32d74a2677ed72", - "address": "lax1j7sh2jrkmpdf8x3p8dwgyrz9tapp9wwspsw5yj" - }, - { - "private_key": "07404d0f445d1a0fd495f34e194bd4a40cc40eee57f6491e9b17599d9b2385b1", - "address": "lax1rwe8tqft4zmpy3kngfkhdf4c3e5kzjx5vsaumv" - }, - { - "private_key": "c2d96d4c2f459452b5819b5bcdc26df3a64a7634352d1851af0487e5899d44ae", - "address": "lax1jz69vke5dqp0ltek4tuaalrpez0sww0mm0wjcg" - }, - { - "private_key": "1397a481cf05e8ffba8d551874ece2bac0e6d1bd4c8a15373158dc1e1c3a7ade", - "address": "lax154mhx4kp8z4mql93eghx6us939h554waprvgc6" - }, - { - "private_key": "92a074356eca4204c03779e674e24e485b3a1e46e625eecb88cc0838376daa76", - "address": "lax1mx9twtkfhfl3fxr4tu0eye7gfalvdt8xunsjpm" - }, - { - "private_key": "616b5cf444abd24b9767629b739c9da1de6f92cb81e1fdafa217a454b01fe7a3", - "address": "lax1k4nfskuww4ql07vrx066krqjg0uzagmmkhls4m" - }, - { - "private_key": "d257dc9fef5229675e0039d5ccc8612b5a481907156f52b04065fdbb3b27d315", - "address": "lax1rvd26uz6wkwpvhrce80v2f52qa7k20cdql0ks3" - }, - { - "private_key": "4756bdce8cc95e2f3dbf966c1baf31118079faae8ce3c92479afb7c4151f1572", - "address": "lax1jw8qktvp00gt82z7ua9nyg588c0t54yd70g5rw" - }, - { - "private_key": "8025eb378b7b536a59f3486cb91599250dcf340630e6327bbcd4d2e143751410", - "address": "lax125axw4zkg6w8u9qull8lknw0nfgujn5ph2m54e" - }, - { - "private_key": "58e11a571db0fe5ad7d101342cbadd6765e1d801f45e1e95e5bde34f2d1e12f2", - "address": "lax1j23g3hl7jqnqupzmxuf3wkdkh7zs95yk3j4vqk" - }, - { - "private_key": "b5fd316a0a4d4cb37e9b08ba375be76663f9e92584873db593295c4560a27027", - "address": "lax1zaht4y33du409y9ase52qf27gurpcf0ud4e8td" - }, - { - "private_key": "b53abd512c40b229b40844b55b45d02cca4f29b1d9fb9e366c00cc6a81a1c4c5", - "address": "lax12lwl89482yan9nn8qfyxswcd2wrjrlf4hgp4dn" - }, - { - "private_key": "e5def22670dc1a6df469c4602a42fee0c11e3aac93f4ca864170b8d8c588115c", - "address": "lax1dgakxwr56wh9cv6x5ssu2a5taaqdpnn2r96ndx" - }, - { - "private_key": "2c087d9dc167fb4be3311f7af1046ace5f1f306a76f42fc8024b8a1abc323b8d", - "address": "lax1yef2x4pxm5rex9g026skdn4qtzs7u9r6380hq3" - }, - { - "private_key": "bc6fb8703dfc58293d218c0a2a86128b7ca89f52f04c277c8c7661c93c14c063", - "address": "lax1d965466ehdcxglsyudjazl8az6udtndvcg9jwf" - }, - { - "private_key": "9c661c466f129f3303b6016ee17c0849b9ba2d2b703a8ca7bafb683db525ddd6", - "address": "lax1rkffv935egn8479c4sy7400emr2jr5fj9rqqfc" - }, - { - "private_key": "df0b846cc2841b459882d7a61528f3576a45e508c7cd61b70fc7a1674669280a", - "address": "lax1q80v65tw8ckdcmvcc2gldxdha5xt0frxgrggqp" - }, - { - "private_key": "0d3674664a4f88a7a906cfb8577bf57fbc0f1e639326f805662cda089bbf4f62", - "address": "lax1lnsrgcx27jhcqr20ue25xrvmgktsemzvpqkvw5" - }, - { - "private_key": "2ab40f1898b11eaf78d47c7cef96e864271b72359ae9cb56c1debe551773e53d", - "address": "lax1qn2mp6gjrdd2sqdyu4x547qj3j9p7s9faps293" - }, - { - "private_key": "7540044c0fe61de0f37ea50c702d4d3970c48db557c179dafe1047ebe50c0717", - "address": "lax1j7zr9cy3vmdmpezcgel0gwjs874ucp287srnqr" - }, - { - "private_key": "e349af7366c2b6c750ef88c8392e430ae76e687e3e539003c120499a5de0a42e", - "address": "lax1la6kqhsa97aq4k43r70z62r6am0hajsujjalml" - }, - { - "private_key": "e8965178de60cd336a2e1e0cde3107b5dc27aa47c60b3abfb6fa5c47d3f22517", - "address": "lax1mqpqqtgxjpta3wepaze43ewtyk8whv6y0chhje" - }, - { - "private_key": "844eb7928a2a721f9a600f1d7f76d5275b145e30da322f90a95359fefaa4d3d6", - "address": "lax1yalvz835w3ujamfy2zsmjuq65u9ed8420299qv" - }, - { - "private_key": "554cc511d59823e5c5bcf24af349921e7c32f2d69757f5ce08dabea35c182f9c", - "address": "lax1t29yf0hnaw6xqld9q06rrh3k32uu8pykdyux6n" - }, - { - "private_key": "9165c37c9f57b2d520795bbb83e4bf26de23dd7e7946bbd0cc0d43e8b1d4f0d1", - "address": "lax1un7pgy6hfplm0anqez5k22k92cnvn4nu52cen4" - }, - { - "private_key": "5ca56d3ee1ab168679c1bdf41c2488ba74b1d05c01a4d626d92abaaf398f270b", - "address": "lax1al29dqsedjkxpvx228jtmhd9430ae4rylvgqxj" - }, - { - "private_key": "c17f54ae915ed5fb578cd621b22379fe92c0811b060c0febb2c8029dcd8f6254", - "address": "lax1pyrssdpqrepuscjj0a3j2xl92a7qnfc2gs4u95" - }, - { - "private_key": "10b7208ab0c458db7c3b033d26b78ecd142e9cd13e7e490d082f516ed67aa88c", - "address": "lax1t5ls2xxqevllgvu8sw74acxfrq2nz2hczzcstm" - }, - { - "private_key": "5decce0b3c037fd2937da3af947084f409a8426a3d350deeea2579ada1ce5ba7", - "address": "lax1d4238a43mrae3uy8unht4rj4dmdtvtm2tdha5d" - }, - { - "private_key": "eb0f7a3d7fe83b86a57b2a3f746e7ab70a547670e866291b6a4009ad10d2b74f", - "address": "lax18chy3lr4n40fvt0gn9zp77ptuh4y3d2397jz2g" - }, - { - "private_key": "37ba6597bf07878942aa4ba1cc5d2ff85390a79009367c2f8c74fe873f6f3cd9", - "address": "lax1nv987sdk059ffm0za6wa7770k40r3wk7993unz" - }, - { - "private_key": "284dfe1015085b2b35059ce1d09cb715d4ccc9107310d2c04472ea168b7fecc2", - "address": "lax1p9v509f8kk4mdmp3wtr8n0rw0eqqhn2sjhlqqr" - }, - { - "private_key": "6172c5afb9b3fda628b0b83db9e645e082cc024fac7099926ac67c82afae7692", - "address": "lax1mquy2npjw7f4fezczfmrx6wcvq9xlcjd505e3g" - }, - { - "private_key": "1cadaf9c9ac361fa27d1a69678cfa20dfe74bd64bb87ee0aa7be86b846a08b82", - "address": "lax1nphe4mcfuj6krvqv03g7guakr4mkdy2jy4tjfx" - }, - { - "private_key": "42afc15645dc65c486d7204de6489cf04c6f784fc054ff0fdf72b9af73c6dbd8", - "address": "lax18yv90aesvectreym3jyy6nvcprk99je0jst6py" - }, - { - "private_key": "7e1f31118032900c6349912a1df8b93d4e8b1dc9d6e8a3ec80fd161e58ca0235", - "address": "lax10vmupf4ddpwyy4lrsk57k9zk5elkmz5frvnuzf" - }, - { - "private_key": "7d03c68ee4456bb16ceb0947408c5a084bd3a0dd5799a05b9269501488bc1191", - "address": "lax1y5aud6txghpuszkg0003la7pnprcjsxlkypqs5" - }, - { - "private_key": "b108e0204d09b67db583c7e09f2888cf26106e7450386ce8213b269438df9b1e", - "address": "lax1kasv4xztt7axqymjfwr2knc4gtcx0tc6yg596k" - }, - { - "private_key": "464ffb2052660ab30569a9374c8ac32d8f1ba9cbe9e83624f11e55865b7e3b13", - "address": "lax1ekmurndzp588l8x8wgc3lgekyz8ynkky5k69xh" - }, - { - "private_key": "a20ecc8e1f6eb8f5007eca2b009389f7059af838cf65f34632c4ed76f28ef00f", - "address": "lax17fwjj9cnsc0rt4l23q0unf40gd4j085xcxwnde" - }, - { - "private_key": "a121bfcf569bff98c9d4637e26ca0b815cf7cf393b7c1e6eb8be1a93c38d62ee", - "address": "lax1fs0tr0phvrlrjsk4rc62awujt25sxcwx59vdnv" - }, - { - "private_key": "207790d0132148a474cd59d68fb49e880f8382295a0f661ec6566c1e6d82efc7", - "address": "lax18j3u9gd38k6ycu874w8yy2veu2dx78nx02ad8q" - }, - { - "private_key": "f1e0112777dd96d0bb89224e18e12d6f6f7b0a1c1b39a55d2e36243677cc260a", - "address": "lax13dyv48x6k5q0hsvdh4zq6yqszavkq2anfwger0" - }, - { - "private_key": "c48977de83d650cc3c27642d452ca9a96b13ce2d671442b3d87359f125ba363b", - "address": "lax1s26hd8y7elpr8ra29h7ys3m3r3whzq4cxmulqc" - }, - { - "private_key": "4dd2e8c9a0b272594a51cc379c273431b95a9e42acd8dec0b801189d33e44d3d", - "address": "lax1y0smhxpe4dghzv04qnrrakdjk3kuavzxz56nxe" - }, - { - "private_key": "f05dfb9d8dad1043b77431175332fb3ba8627938a1b79aae6172eabc8fe96406", - "address": "lax12as225u33497e9gktm2qpg3l7e4q9su8u892ls" - }, - { - "private_key": "5abbcd6f7c8ca9cda1ed78e404566400d07db75c15bd61afd5846b664f39343b", - "address": "lax149h6xzmn7mrq3607ad2xrmr23drc52vrk0r2d6" - }, - { - "private_key": "f86d6a30335084d0cf249cdcd49ab4901fe41fa4efdcde223d8d8ca1a31d7c56", - "address": "lax1fs7ejltl6zkf8wrxn87fprapa2e57yyxl2m9l7" - }, - { - "private_key": "cfa260706f5b698ce9092da9362940f8717f15751c737a0357550c8c5664258b", - "address": "lax1tuatj5pfjs026na060fyl2kwun53qlq7nxqgy6" - }, - { - "private_key": "749734fbf3eb7e86a36d60cc10af02e6df0d0b5bbeb68d4212e09b8916b54689", - "address": "lax19gzguvnpadgnw6z097ezfue30ulu0dwsurpqn5" - }, - { - "private_key": "8abab4029ca5723b594a2ac6b4b463472ad86d7adbbfbcd91d125391a58b3ceb", - "address": "lax1gr354l8pfkcm0u990c98na804cud0ut7fu3uwn" - }, - { - "private_key": "305b72ff80bf1be7cdaed950760ce508c09dd0168bea6049d4d9f2c7e2fbbd2b", - "address": "lax170u4h835d24hc8tw6ma5e8lr0uj0y95kzyq48f" - }, - { - "private_key": "40db709aa0aeef2ec0d8735c2970097b5110130755ecc217a5f695906a2bc482", - "address": "lax1ypylfamsx3gzmdxhc5knd9nhumg032gjqf0a8z" - }, - { - "private_key": "98b21e14eaad3489a3d8b892107380e52ac67820d6533ff0c2b3c1024961331e", - "address": "lax1vfueg89897u0xduecqsx78ftlpuajle8qhpppu" - }, - { - "private_key": "1b0975b94887b2546343650d76fa62068fecda3f45ed7076c26000e7562df9da", - "address": "lax18mxx8cek5rwyxyzsl46yq4ve3y5jtpdl42fsae" - }, - { - "private_key": "f45bb32a7fd6f2b7543c1e7412cc1dd4498617ca6c624ee4bea2ce8718940cfb", - "address": "lax1wtajx49wjn6dpdt96ycl5zgesgr6unzhm9rwu5" - }, - { - "private_key": "e6d19a5170af3d29f17f621f10ca1563eb124497d92b2f321a48598b8cefb1b4", - "address": "lax1g7exxtuz9ht32rz3q8pywxxqxdwt3scyrvefm2" - }, - { - "private_key": "6ae805da10dbb250d21a9b7a39b99bea833b90b27453c9d4f7c4cf35934f2c14", - "address": "lax1mst834hv0s5v5qcqjwaqpn4g3gprvl4yts3lqk" - }, - { - "private_key": "99828a43101b6bc3243611e83b482221a080fe88138b5c38b1e236793f723884", - "address": "lax1f59p6guhqty2trfs4hmv4yqwyydjysz75eqrw8" - }, - { - "private_key": "ae58ec5c47a920d2665e4d4ff6c5b0541ae8ae0e7c791b862fbd613309b311b0", - "address": "lax1hmwjtdm99ypgdjevq7smsx4e6l0chynuhxssjq" - }, - { - "private_key": "65cfe8ff745a9b85ba516096851198fce281cc80a34f4613584952e6e8cee83d", - "address": "lax1lnc9wtf6uhsvjhkmsc724znlsltznenwqpyj5q" - }, - { - "private_key": "7371218f943ca61b9d6f974e22e79fa95f5b6477032c730f85f7145958ba1b37", - "address": "lax1g8td9u2k89ejcensuhwth3gp4pkuhady9hd4te" - }, - { - "private_key": "71d14792f8acb3f50ca1c766ceff53394ffdf7f96fffb131483ab146396c6318", - "address": "lax1jqg6hlm3p7rkzxmwn2wc8qt25mxtmce0g9wg2r" - }, - { - "private_key": "bef35c699ecaeb67dbbd8cc447955bc65b32e30355b7dbafd95272d6898bdd46", - "address": "lax1awhrmtqc3aknjlf5g9asjarjpgfsuafkjxv0gd" - }, - { - "private_key": "593f6ce43cdc4fa073a29db68bed057ca7fd2437d81365a99ca08438940e06aa", - "address": "lax12we9kyuwthzc4xw0zjajffy7l4avgyx2535j39" - }, - { - "private_key": "4dc28617c20efb57546d9408fafa51708828a51218d5ebbc6648f852e93d5902", - "address": "lax1tkp24p8qymc2d7j9gmnv6lnmfetnv03p3y2rpz" - }, - { - "private_key": "dddd7d18ce65b4b08487901fd99d3b958aa4b83f1e5120719cbcb99e2fa0326c", - "address": "lax1hcjpgqlhndu85cspsth9y62fsym8pjwkgvhcgu" - }, - { - "private_key": "fe7d9212d18d2cedc3c90b1f264e8ee1dba53dc6935d2dfc12f7f8d12051ca78", - "address": "lax1emxgns4kpvfr58j0dfavxq3ew0f6y5cge70yhv" - }, - { - "private_key": "c861f9e6ea947a8e60130205a276dd355e7339f50fe9c6a39841153f52ede3df", - "address": "lax1fgfente6d25qe03xnfqpc3tpzszj3jvvgmlp70" - }, - { - "private_key": "349b6f68f599fd4fe92b2a699c9020e873c5a3ba43dc703a4ba12b88b75bd5c5", - "address": "lax1ghdw2t45ljjzwpsdep6dzltmayzc6q0sekdh43" - }, - { - "private_key": "ff53f507abd3a7dda22769b1a9173b2da9f8dbcfb95ec3ebb559c65887bac7a3", - "address": "lax19m7j3sqyn6az6sr9pugkd2nf0xj9px8amhw5kw" - }, - { - "private_key": "02f029615b15dc96ce58f633bfbc51264257bc6f7aa92e06aa94136155806bae", - "address": "lax1d6t3zuwd6drvz5eza3ty9l079gth2fschgenva" - }, - { - "private_key": "d5f8f858f138ad8bf9c81e9eb42d341f3bd9631c0c060680aa58b6746ed0d0ae", - "address": "lax1ltfme6ht0sslj6fnkgs9x3zmftamattzrpph8v" - }, - { - "private_key": "af22fdb41db47ecfbd47e75d2a267c505b2c881e005869649bbef4bcccbe2de6", - "address": "lax1uqrscppa7wv7qtsa3cr5fku6huxwkyps5khc3k" - }, - { - "private_key": "8b5b879f52ac9617bdbee08b75c5e30ec98fa0de63804c65405bb8ceca129b12", - "address": "lax1ykf5um3tf79ss2c77d9d4ar27nl3rzzjzt5zuk" - }, - { - "private_key": "c210dd39e67f89b2d00008a8b26d588369721aaf19e14782c15220fd67072ed3", - "address": "lax1r4rvp5un9mufq8zx8yt9apa53d9ef59ugrwmq6" - }, - { - "private_key": "e3484cbea1f9b86647c087d4c64d30e7037e83a70b673593da8456040d5019db", - "address": "lax16zjjdzma64fwq83xmhetxepyrxd96vgyj6xwmw" - }, - { - "private_key": "176637f5788af8d5853a5a88ab5d327ec15267f89b4805aafa5218385166c994", - "address": "lax1vwurgz347h53ctdkxa0xrz5sjskqh6v3dylsjy" - }, - { - "private_key": "ad94fbe3a15013b3dff83990a1cf71f2d5ce8f85d639e1ba1ddcb085558926aa", - "address": "lax13vscazv0y5n8kyvkm3hcs2padxg28t3sh523cd" - }, - { - "private_key": "23c61fe71b1e147019dcf69b7a2b94fe7fc7c57cdf4bec760184064273b2a684", - "address": "lax1tna8hphgw2ed8a8guh64v5e5yst9a6pj04qxn7" - }, - { - "private_key": "65b9bd132bd4ef669132219ccfc587e376f6728798f378260571c05db607ca13", - "address": "lax19rhlmfq3czftxmjm3f5p6phh98usw6klna0aln" - }, - { - "private_key": "a2461699da7a47f61e84fdb4c2526f2b2885c8036e9b59a407add6271bf9eee9", - "address": "lax1kusk8lnut00k77a3pgwjyrs6cnj3e4ppd4d7n9" - }, - { - "private_key": "76cfe53c9a529a1d9b081a44e18a90466f69a289205275e48973159b0c32d5b3", - "address": "lax19tnf2luh47rxn6kkzca323h7zecquj66hhlft5" - }, - { - "private_key": "775f4d421e1e5c7110f5650abd30d7675f80bbd525235e395c1f49b3a2c26c72", - "address": "lax1a70tnjp2vzpxn34lwfyaazrfjyqxqzmy0tcaj6" - }, - { - "private_key": "2e1a9512fc1c3bbc0da9dea6d45e6a05c0792651ea20869ed0ab6fa21527f5df", - "address": "lax1fsclmp6v8xgfcf7ay5u9pcrezc43qm25xwvf5y" - }, - { - "private_key": "393da24a42d5750d7e7965724ba0db59dd12d7b7d9d53a5a99b8c001c9bbb5e7", - "address": "lax1t8hc0ypk0lnj47hfmdayjksmvtr6vjp9uu2t3w" - }, - { - "private_key": "4b3f2d8d0bff758226c5f4746c47a7d01dd309453fb91d8a9620628beb0524e9", - "address": "lax14xap3kkuq0fadsrrp5vcsg29wl0n0dglx5vxtd" - }, - { - "private_key": "4f0ea91e0e764a1ff184b149cba503905803aa642e535971568e55edfa1c2c77", - "address": "lax13pxwat7k7qexxjgj2szv2eg4573scct8rf0vvn" - }, - { - "private_key": "3eccfa9c61dcbac02c222d012ede824869a3b98b36554a3e4bc47c946ca124e9", - "address": "lax1y94syl6wf5r6msljgr4vlnrj0sn7wuy8cvt57m" - }, - { - "private_key": "7b9112c777af4abecfda1fa10a197f7228dc59a0d6f945e2af167369c0df1d3c", - "address": "lax1n6vfut85fwh6rf7l5cng643wsn869drgvq52k8" - }, - { - "private_key": "0cdc07bc355d252d4e2d63280fe0425953ba9d10530e316b2444824003d84f17", - "address": "lax13km0npff70mcm69k2s4l3smu5f6h7n54hnvw5n" - }, - { - "private_key": "547d54a71eac8a02a71779ce672f34d1a77d214e9b53ee1920fdf0aa300b7a31", - "address": "lax134gqnzan60anvtdrd23ve9mu8myxunydyrlfwc" - }, - { - "private_key": "96ee738db0aa5f64cdfd95f32693359b084db11c4edbaece29d368955d252c15", - "address": "lax1rhqr4axecpq8ck2ks9sjnn73dsml2um24zr3jh" - }, - { - "private_key": "ceb3851ef5775451d3573c1c8bb0f0a3f896a94affaf39f272a352400feea105", - "address": "lax1u5eadak5rcyga82d2jf436866swd07zfagwrcr" - }, - { - "private_key": "4622ae8bce9042097369530efabd95016c1bc47db3cf5adae596a90dd6a1b99f", - "address": "lax1phgpqt05jucn9qpc0r6traypdwax9wxsnwz6rc" - }, - { - "private_key": "201f5316fb4ad8f6d59d51d0ed125a7525ebd08cd39064a9c235458ec1056188", - "address": "lax1zaynh86fwxry22vwg9ksn5ekhvaamsu7rlsj2n" - }, - { - "private_key": "ef33553aadd6f9ca6d905ce2f21e444a941913f370337396c2771996de71640d", - "address": "lax1gyd56cksf8a0er0k6706u53lvkdh3z72dxf8yg" - }, - { - "private_key": "19ed76fd36b80b624bad8a1fd8f9bba9d621434640abfabba83018c95c18bf42", - "address": "lax1g9pdlwynljnnxyev34pqzqm0lj0zprc399dmny" - }, - { - "private_key": "d17eb76286599ef4e5b5cab2eb1b1f6265a0f42236b24e55eeb50c8a61542ca0", - "address": "lax1e20ak0t5ltgyaq774zm3d7ycevwne04mqrumv3" - }, - { - "private_key": "0817a2961ddf2ca224619e0d643f26d010ef44c7a4c7714a6f84a749ca307f39", - "address": "lax1zhka5rv250es6lqd6gqjvlrhwzg3778lhcya92" - }, - { - "private_key": "44634a71adf6d80c71e3497a200e1f57b10cfe5bbadfc1490bfd02d5e6ca9232", - "address": "lax1creg6pc30trru27k8q3ghw5jcxkg8hudlvexg4" - }, - { - "private_key": "bb697906d2ea786f0f9febe5432a62cfcea58f20cadbe6cbae6a7a904284d5a5", - "address": "lax1v6cyn8attuc4rpu05a9z8rrg4xke4f5pfd9a4h" - }, - { - "private_key": "931788c768401ebde0ebb208724264a52f7c7d3313148c3b5059f6b214750997", - "address": "lax1twl3fpnmgn4cw3vj4sgwsfcal2ynuzy364gpxk" - }, - { - "private_key": "8ddbcaf14c78f137342a33e298192ac0da9985c4defcba305df48bdc30e12a6c", - "address": "lax1yd5m9mxnc4aq82k6ved8nxdzzc60t5s8ggresy" - }, - { - "private_key": "5c52dbbe50a91bd24e75ac1cba0363c4811177d4d2285d2530069e9c284cc8e7", - "address": "lax1dnkzkrp2adnh4dgt7h06gqs7zdtwyrnqe2xpvp" - }, - { - "private_key": "b555fafe41880334092dbbac7f0213c9a759907a0d061dafe037814cb2a990a7", - "address": "lax1u4ers2a8yfx3ucnfn894p0m2de9v3lcdkfcnla" - }, - { - "private_key": "8446ea8a0ff3112cfc4199b9567e764fc7f7d608389494fa555631ca0de36c2e", - "address": "lax1cadxlakzvdwkuzk5m66hmm7nmr9nan0mrvl4wg" - }, - { - "private_key": "2355a0c580a0fc1a2f10228c4ec5f14316847fbe399a3598853b8445f2bca6d2", - "address": "lax1rltv06m0m3l808v3wqg08hwguq2dx87r2t9989" - }, - { - "private_key": "053b1c02bb99d0ee8704a9bc728a7429717ca1fa2591a34926729076a4615f91", - "address": "lax1aqm5yrzpnng20y6xtfp408furjhc07g7avmsq9" - }, - { - "private_key": "e0d5cc33bf663e214376094c9121b823fa83bfda3ea236285af83b4842085198", - "address": "lax1ucpskc09qy4nz5a5e37wqgmkh3qgghvzj5dpfv" - }, - { - "private_key": "b6d24725fbf94222a818634d4d20a31bf15f64db7caf940d066dcd5c86b8dec1", - "address": "lax1lr63s0zw3hj48yr4yfaqxax436z0mnu97gh52g" - }, - { - "private_key": "fc163c9b1ff9033774917966a0be7a6638cbfb8e4f6f7ff1f8ab36ac6d225b9d", - "address": "lax1t963rx5lhmf89yl0qtyc9g3amdq6zwv7t00hy8" - }, - { - "private_key": "7456f8fc0623fbf4fe19b38ab7f9eafad29608082b2bb405749b0c127af5e710", - "address": "lax16y93qratx5pjxw82l8pallc8y4u9t00zmveayw" - }, - { - "private_key": "6b6746a0ab83833ef6746752948f21316db85a16f442bec5e06b5275d7007f20", - "address": "lax1yd35nseu35etq0ddgw0s56d26xgcgg5ralx27c" - }, - { - "private_key": "db3c5d1bb098d1810cf63e89fcddd09faeffa397ec41cf63290d0d93ddf5bbc5", - "address": "lax1nwqg2yj4m3phvfl9ngr46egxxat2hwzecul0tt" - }, - { - "private_key": "38bd18d499736dda3c5ee514f280bd6ce63ef2d45c7dfd09c09de457aa20676e", - "address": "lax1escwlxmd97fwrgmn9pvyl67u0z30xqpxh8ckke" - }, - { - "private_key": "47f311f8c6c43c640e09778601574f1847956f91b18b44b4712f55d77485bd43", - "address": "lax19fqthlfs353xkpm9jcy03x4mdzs0ks7ftqtq7d" - }, - { - "private_key": "d3ce964ff5ff1533b7b69531b0565e99b93f29c3f324e45d9d7d64ea0953754f", - "address": "lax1v9487q5rarf34qz057hc4lth20h2kcv87v7yjr" - }, - { - "private_key": "5b025e3bf6031e0232eb6ba8d3fcdb48ffdfd4b18538abdb11bbbbf94a6d1cd8", - "address": "lax19gt2flktkckx5rx34h8j6rjdna6uyrn223vc27" - }, - { - "private_key": "14a3c3fc4d404f3b437a7cf6a3f26105139ee6d45bc5082f4ebe3096ff1e69c0", - "address": "lax19xymu3k3dlatw7kp4s30wd86qwngdd6k7rkael" - }, - { - "private_key": "9e17e2e6a03b2334edbfa414bd14eb275ac3d4333fe6ee5a3fe135d2fc4cfaa5", - "address": "lax1nr6wkcy86vps7qgj6csewcu875tc9c4ruzgchg" - }, - { - "private_key": "a8b079dd9b66ca41815c2279fa1de7eac673e5c58c8e5683a430d5419738531c", - "address": "lax1gz2ud4gkxx52jfewzjjqw76698ekg7cuzfwj2t" - }, - { - "private_key": "151c38658c1a06518944dd736f810617453c80250874f1ca9c4e3f8741fd1f32", - "address": "lax1td2avqtpze8pz4nhzvvgdcn50tp3u88hfaeev2" - }, - { - "private_key": "14113cc19145bc27867c6dd43465957eda4ac14559c21cfdb2cc98f90a223f96", - "address": "lax13s0knn8t9c02xyvw9s90u2spptktcdke9t6p5g" - }, - { - "private_key": "898059107aef310704199e215cfcaf55232b7e560a1b09430816b4459c85614b", - "address": "lax1uuk5rwhckvpaquslf3zf7kmq3e7lha34rn3n72" - }, - { - "private_key": "41ea1e9d2eb8e624796544ca94e43ffb6307503b13469242d501467b815ed3c5", - "address": "lax1zjxyukk63d82m6jtpw5076amss8p52gu5q5rhv" - }, - { - "private_key": "cced3d15e659c2a55e63ea3a37f3e7258f341b7e8fd197761f82afdb4528c82f", - "address": "lax1vcjcyt75gxly55xzg8lrfr9kpe97gvnc8gg4xe" - }, - { - "private_key": "5e37275db0c7d96e2d052c6a36f6309f31befd7ceda33082648afa4518756e32", - "address": "lax1ddlnejmcwmwc0lc57ycj43rdzk7lchzhhn9fcu" - }, - { - "private_key": "b4d64fdd793836a29bfabfd3b0635869b763261d4ac9b7fd7ddc7453d69209c1", - "address": "lax1ywjp4hhk7nanfdnsfvr60vqqg7ptdmytfpuz95" - }, - { - "private_key": "251c5b2138ec6caef58f9e0564c25b43e7d6255c5f2deb4c19f564c753e65445", - "address": "lax19fva6hystk6pepx47uhefk2943a7uscv5w6xh2" - }, - { - "private_key": "96539952ff04f2ba7807ea8f07ffa06d47f0e479ae696ef7d49f7b90d29640c5", - "address": "lax1wks50mkghq8573dsut20vrr632jvuhn2wh396h" - }, - { - "private_key": "0f140334ff087e4c8eceed1960072e74d5da2c13b4d2a78a10ccab004f856bcc", - "address": "lax1das5207e9meax6769j496hqpnxerg6wkl0dqkq" - }, - { - "private_key": "ba556dbd45a646a3c18077ca533e0ab81eea4f7a36929e00094530e18f01210f", - "address": "lax1u3kvjyum777sktzttv0e0zqmfl50n48nh4whyt" - }, - { - "private_key": "5ea3b663123d8fd0cc866997c8a403a611ffef7859b660b38f10fbc18b6a1061", - "address": "lax1zrwxtz3d3cc8d38njavw9gz98hw5qw8c4r0m02" - }, - { - "private_key": "53050ee78d39b2d0d2dc2934bf07f38c403889e849a173590b0624021b04fc15", - "address": "lax1tk449sj40kcuvfta7jq3xdtmc628xnqmdepvru" - }, - { - "private_key": "d23247dc35eb0a5e08e74b636f75c8e4737e8bef3f243bdab71e45f64e2dcf3a", - "address": "lax16fmz6q7zk877cg4z2jcc0yhk705hyur28lrdq3" - }, - { - "private_key": "86cad0aad2374f796333251965791440426fa3a564c7362b9ffe48d9827ef341", - "address": "lax1r33rvdkrgcfghythkazml89lclrhd0tc9aeegn" - }, - { - "private_key": "3e743e618274e1a5dcd8ffe01f6d751afc048e2a23b8d59d8534e909bf6c2370", - "address": "lax1mm6n2na75e36detawja6hp748s298ldy24nkkx" - }, - { - "private_key": "eba46b8bc753d1af4872358b555fe5311538e7530b89b3eee45f798b12878de1", - "address": "lax1r76ww09m87c408rq4cjr6ykgxdml97zgwew8mz" - }, - { - "private_key": "3d202b0961be5bfe9ed11b73d01adf2287d915c75d9b1f7cc01a7d22b3ff756c", - "address": "lax18hh5mglls6t66wqrsxkf9cddgcs20mm8zflyk9" - }, - { - "private_key": "f7d8f6aa95f0fa7d52172788e944be05c85b39adc07935a212dc4de5c3b63733", - "address": "lax1qdxe7qtzgw29ln8lgvahzv9l27gzxukgw3nmdd" - }, - { - "private_key": "8f4a230e216e87fd5efe1916b2f8a97d12ff5823a71b8ff292aab8f587e302e7", - "address": "lax1lerdwqc5af0nyucfzgg4c0a28svl0v25ug06ml" - }, - { - "private_key": "9365e920ad1dfb1dc4956ac68c21b8d61ea2445f3aaa26bb81dce3aad98ebce9", - "address": "lax1ajz7ww5efdvww5wsxd227fcza4we2y0034nghk" - }, - { - "private_key": "6bcc245c03be815c56c0bf7b2868374441bfe65c7c97992e7048f50041d24b2d", - "address": "lax1924w8ys7cp2talkeyykp7hpp7ddkp0nu6jqvgh" - }, - { - "private_key": "e3b56912f53e6202e17b5fb9e5afa609629382a52934c550284130f49baf6121", - "address": "lax1ev745nmdkvrf76z5r9zfgcge3gcde9hv00v96n" - }, - { - "private_key": "55a8d9b90ee950aadf8a9b6074b719f3e320e524df04da8aaace510a23bc19ad", - "address": "lax1zeaa63pxua7zg0qzg4p87ns8ym22fmnmvpql6m" - }, - { - "private_key": "dec935df6287c8f138a96ef48ab55c8fe6cce735eabec337e42a368957ff74bf", - "address": "lax1542t304w5efgume6lmdy99g7kn2zk5cr9jyekm" - }, - { - "private_key": "a9e002b706ce61386870d49716763f5cf2fefaa88f66520c4e9c130ee38ac689", - "address": "lax1pp8jl0lsaena80v45r57jntmadp0ee3dt7sgn3" - }, - { - "private_key": "40ae7551833dc6dbe5a644cb7bdfab510815a4d4f34146894b86b28509a9687d", - "address": "lax1wm60sza24cqw34j5j6dwyl9fe2vzrmfu7pqywl" - }, - { - "private_key": "ed4b3a24e01e079230c65010dc537f81118278877dd96d7e3aa2ad2211430022", - "address": "lax1nt5dcadkwk2vfs5vxgvu66k7xf4sxt8shv9ecd" - }, - { - "private_key": "551c74e9a64f94df94005dd3fffed29244c5d63301886224434b1628107a924d", - "address": "lax1zl9l5nj54pwzc7greqa43taw0aa84r3zredwjv" - }, - { - "private_key": "7c28608c48c750a28bb63438a670d48e1cbd175b5946721e1feb7ebb23bf8952", - "address": "lax1djatrx6xv48rg4p29ekqlxld3zq83fc3ftcdj4" - }, - { - "private_key": "5f33883046c48b62fe6cb361e1188e8c809e79d54f9ee36bd64a9075f30d9ff0", - "address": "lax1w9drl5ucm5jyhg5u8hn9p60x7apnz3jmldskzw" - }, - { - "private_key": "b92c09b7d3fc3e8c39e2c2a2e1e1fbbef5d81d6eaa66b8a40c4ec692daffdcfd", - "address": "lax1qents0zu66sjyru7592rpqazf34xxqtudwmpze" - }, - { - "private_key": "9e6bf3d0eeddfeaa0c6e3a6c8d6e0f176be33395188c1d9114f2ec19fdbc2b14", - "address": "lax154ldxdd9k04ejfarfnrfnjnt0zvwyfh0gg8vnk" - }, - { - "private_key": "ec6b4406c56ce06f1118a01abe93267b165bb5a543c76b89925d6aa32a767107", - "address": "lax12z80cckawp4vhey63nh73unk5fnrzx52gasgqt" - }, - { - "private_key": "977099546b7b64e6e6860c1599881069a52d5dffbee3e4ecfb5445f83cfa80a7", - "address": "lax13mhe8yvydf28yutpx54h4pqvugx36ku6vvwd4m" - }, - { - "private_key": "4851c809c4e630890c04c8568cf2f67621203e51373ffed753298a17bedddd4c", - "address": "lax1ptpk3gdf7tlc25xym2q53ncz3xft828x4f84x0" - }, - { - "private_key": "26f402ea4cf2620e2f1107718571ac9e7db92ea62fd606f097e98876aad8fa39", - "address": "lax145cf3h90yrgjmhracqkv3ayglqpjssj90geu6f" - }, - { - "private_key": "60156a271c709a69034b948494a58bcb935bfce91bcfbcd9a9d7602d8b306e10", - "address": "lax1a02dvpkz3e5j650rmhm4szdtl3d0sy8scnt6ew" - }, - { - "private_key": "814fbb644eb31cd4bcc9ec24cb5bf5598e7017ca1b8c510923c04efe30c3cf1a", - "address": "lax1k997lzezgm8rhglq6umxrjq45armeuwnqc6yws" - }, - { - "private_key": "6eba79eb96a8948921ede6bb860d37a39909d21a8ed7a18b4b7d370df19a96d6", - "address": "lax1fawg73epa8vx6f06wt6x7mkknyqum8ckgnwcwe" - }, - { - "private_key": "429135f1ac27d17909904883bd68e0cf1b17e651a0c1b50ed887610b16af50e5", - "address": "lax1j0frj5v7pheq3xqf45jy5m4wey0jg6ucyu8yun" - }, - { - "private_key": "2d01e6b5831fbb5c4d6dac24c9d370fab294500b5a13ab517c398bce1201b2bf", - "address": "lax1xvr3umwactgg9p6tk6rz7x4pf0kp250ss3glpa" - }, - { - "private_key": "18ca62430905581813529644beca2b18b1611a2852b412a97aac21c070926f4c", - "address": "lax18q6k56rp4rpq3mq2lp7hftf4vjzcfrq9u8zlyd" - }, - { - "private_key": "04f5766c8ee6034902108e925ca815b21bbe56fe994e828ff5a9c7577c256d4d", - "address": "lax1wd3za77yjtgtuflp09laqfxrvzmgjwxesjsjr5" - }, - { - "private_key": "e57ee3e90bc4bc703379cc91258e974a6fc2b9f3fa2fad7c3cb449cc5136b8a7", - "address": "lax1c4wnm5w5ywh5es7x5a7hzpve0alcfyffkt0nky" - }, - { - "private_key": "5a09265f36826a7b509634428739450400bc3b309f544d5e06e16907f759c978", - "address": "lax1nuanpyk4nf0svvapslfgu99g38wv2dlvkydqkx" - }, - { - "private_key": "fe6a310dfdeccbec98ca351001bb42fd1f3d136d3c499b721574a64d60212a74", - "address": "lax1q0rh27aznwkldkugr4xkurc6zwlfxtrl42f2fg" - }, - { - "private_key": "cd75d352d152c6286773b0fe6dec92f1c0e1d8ca95bf29c8ef3d23f33bdfc8b2", - "address": "lax12nn9pzs48mmfg8ae88zmhkm7w8sq277gftawtu" - }, - { - "private_key": "d0ec9ce7b858db5421ee0cb7a9fcb2204a3cdc47562369208601f063074d3b57", - "address": "lax1hv0ycqk5w9mx8yfux84re0l68u98hau6y58hff" - }, - { - "private_key": "82a09f625308fcae123482b5200e336dcde2834903f53f49785d508716e62cab", - "address": "lax1l7r329lt7ev6gpr2sfrjt0g0s0kg93mq9lcqp9" - }, - { - "private_key": "0b126a4f35eda0b31a672992a7ad732fe5be731989ced534c5b48d721359979f", - "address": "lax1lz7g4t8cew3769qa990gk88gwhsxuh5yuxuugq" - }, - { - "private_key": "ff736ea61ddfa54cffe777bbb89be5e3f7b6be67be223ad1c043ced330168944", - "address": "lax12sg0gyksc57w5ks58sfuldtyndtsuj4jc0c5fz" - }, - { - "private_key": "f5776acbfd71ed2867ccd2796dd235a0cecb997f06f9f8430899a7bd180ad53f", - "address": "lax1pv6dq6m3hlnleg20f4dvevslp5zajtzlnm6gsa" - }, - { - "private_key": "5a9e74e3ab525e5cc797a9496cc48f47e86a6bf68bd8098e1861bf4a9e8d7fc2", - "address": "lax18vpdc6a6xq5vrrd9datg5dnem29me65pw355qy" - }, - { - "private_key": "49806ede44607880e0da5a28e60d430e89855f9a12329b474030b5494e139924", - "address": "lax1dkrd00ulfz73ve0qeeez2c5vmzwa4nderg475h" - }, - { - "private_key": "f1adeaddc9dbda0408c9a222d1de16756a0a98384dad13640019bf917bd76364", - "address": "lax17pgp07gjk92v9pmd8lt63nv8dcteq69w5maqrl" - }, - { - "private_key": "fd329329638d5e28ff565ee21dd338449f762c4a81bd45055d51e32ccfd5ec71", - "address": "lax1ax0rr92annv0flxfsf64p4z9fk25lhs7vcc8dj" - }, - { - "private_key": "b0e954ec8039539d0507f98e474b728428dd83fef53f0c2ddefcc9065ac6cd98", - "address": "lax1gcj6kn0hcp8vdzveu3rwsq5r5l82gzxjss9ql3" - }, - { - "private_key": "d5ae6b317e28920d2d14312956628261a1c300dc0e8e63f80d20973eb05c5e87", - "address": "lax1g44g2hnnfgfvpnjca434py0zspxlqjf9xvensv" - }, - { - "private_key": "83b482292dc9f924783a80915ae07b72373e2ef229099aa6f63c533676421c66", - "address": "lax1lc25tyv5a297h7fdrqvajs4a5cul9v436630t0" - }, - { - "private_key": "96774a44498cd7d6cbc0e97bb7762997d5e8a1b7c52f5e85bb6987abd863c148", - "address": "lax1sn09azv39dd58zd5md06unh9dazdadc3tqtsuz" - }, - { - "private_key": "0c8387d08d3ea6bf528c5e80f75a8eeee4d3a633c46fe55b8903be0adc77beaa", - "address": "lax18qe7fnfnaazd54dzucqgnxzr90u8vnn87yq25e" - }, - { - "private_key": "dedba34f23703134baa5fb0c6317b91532b89fde8bbcee7b5dbb82ee7a5648cb", - "address": "lax17aczlmrlmu7kvtzgewue0eytl9s2gg0saxqc5q" - }, - { - "private_key": "33134a6604c0e0aa6f28439c7062c1d1f347a5c027469f1a76662a458521fb2e", - "address": "lax1rvyrzzfwtr0vxuq4aklf4vg4frj9f633q9e75m" - }, - { - "private_key": "2608a1dffbc5042552dc32a2ccaed1e43516577874aff626b15b30f01aeeaf43", - "address": "lax1me9zq436k5zqrlpean7ywj22ncw0z8909udllx" - }, - { - "private_key": "50fa640ea570ec171f7a55d6564df6297ae754a09877194952a2bb1d826a757c", - "address": "lax1c3l9za3xvngj3padhulfl84rf538fg9465uhyk" - }, - { - "private_key": "6bdd4d8a0c77e81536bf1be41ed3761d52f36c429caf7fa9864f76de15a8c37b", - "address": "lax19exqy36uru6x38gndgk6q0ndawkhvqfzsrz3rk" - }, - { - "private_key": "e225ea00d029b5028d2f808c89a5aee699967959dbb03ed0b1975ad7282deea7", - "address": "lax18jpqhjldz3wfwkldexctnrrhuhexwmuv630dmf" - }, - { - "private_key": "1efd0f097b3b5c07fa34b06a16524665329f17ee1a35bc80181ca779767f120c", - "address": "lax1fyk0vvl43vxnzxj52t60m2ahgana6zl5cmq059" - }, - { - "private_key": "e1130ca594dbeaac61fa0b3d15529e74b7a58b59f1973c2574f90c13518ac5df", - "address": "lax1ht274g7u76f9ymuypawka2hm0uuamezqms6dxn" - }, - { - "private_key": "eda6b8e3527d1648caab04f579c422e5a34266da623b79577db4309f093b723a", - "address": "lax1uga6zwynezg7cxtjwmd7zjvvkh4rzqmydnuvl9" - }, - { - "private_key": "8bedf7a854f8764c8d4694b8c056bf67b6e6c65d790ecf8915c855c2e042181c", - "address": "lax1l3fka7fc2vnjcqevhql9emswmdgnyzcaphhlvc" - }, - { - "private_key": "e37cbdf2b68a9bd50aaee46dff5a09870218411ab1b6afd2b0834fe22e47db53", - "address": "lax1qfsylve7l0wc4kg5xcrlygc0rzjlc4tycewtd0" - }, - { - "private_key": "92a630cbfe5af0cb4dcd5d5a91534fd1cb6d0385af3bcdb4d6b1c7c2c80acee6", - "address": "lax1hm6k89yln7pjqqrk06u5h3n0hz8ettrqsy7hy7" - }, - { - "private_key": "ba8f28d9593181a36a0e009dc3326a79ac6bff24cdecfaa138182c6f394f0e57", - "address": "lax1ymnhy2caq5lleh2hwl2pzt7whxez5f2hzx6azq" - }, - { - "private_key": "8e785d1a78633051b54a70c0c2a816f6fa4613f64477dbd015d75ffcad1a2041", - "address": "lax1gjjv76yaxeev46cygxflyw675r7pwp6we0tn6y" - }, - { - "private_key": "76777734ac069037179fb63d9499ef1d53000d2ae76ae08fe271d14f9ca155d6", - "address": "lax1vkwmm4ytdt8mr7zrqahypq52tpmlujulk9cmyq" - }, - { - "private_key": "56f5e12ece5d9b5065dccc62e6465b93f7021767a185c5f2a5ddd178ccd4dee7", - "address": "lax16zt59vc8geel62l30lpn2unr295077m8e7ar8f" - }, - { - "private_key": "7594647213071db0c4d220132312222a709d612604204ee6ce72cbeff97aae0e", - "address": "lax1uqjvdmqwdgw40rmfawm35ut365u804l5f7aj6k" - }, - { - "private_key": "4115f9be2395f6d9933d57015abdd89504f2146f7e247b128b426a49e8d19bdc", - "address": "lax1emjehh8kutx4wnjwzrlg7uvr47q56swl8s3cpg" - }, - { - "private_key": "55a86c03800f85ded1fc003343a12a3365b3462823bc1e32a64fda4f743d8313", - "address": "lax1uyh9x9ujqdq6fkdupdvjte2khjqjfs34ur8782" - }, - { - "private_key": "058ba5772ce86fb003075bac5f6e4a04daef2a0e29939b74a8c790c96857ca6c", - "address": "lax1ule8k2ep4jqsmh6vrjwwjynw0kelpe9n7ux0gp" - }, - { - "private_key": "1963e1149caff12ab4f7fed6753eb37392a2eadbd6d4e596f9893b80964f38d4", - "address": "lax1ertapmdk5lcnjgy9w5vnn33plf0y5nnfyzdeca" - }, - { - "private_key": "b9926a58770dc0fffb1030e83f324034fa4b0873d08a8c15362e977989635f27", - "address": "lax18ke42gugja8gyg4hpdu9sjad5sqgevauuvx86v" - }, - { - "private_key": "3d54ae29e33c3de7a7197a6eeb3cd65cc79ca9be7d6c5a007091678e9317b1eb", - "address": "lax1ad8nvdqqtdy5za4d46r3r3daefagc3k5hjugh7" - }, - { - "private_key": "7d25428e36f13ec92aa1eae69a63b82dff004c017da60fadd1e6756209f41b79", - "address": "lax1q2k3p7jcnncxash42nz3xrrh7garckf8srgu8f" - }, - { - "private_key": "3b70b8cf892b628329ec15521a242c6fdafc1145718c26bf72f5a07d84b04cbd", - "address": "lax1lru2c739hexmf8v73hnnxx9awyrtst0wnullsh" - }, - { - "private_key": "3a134c3944989c93f2aad6e1d9770cb04404211bbddf5b98150e4d94dc600d74", - "address": "lax18ad5ffgq97c8hf073h60qkr4ush6qmj8kcd25w" - }, - { - "private_key": "8c18de09c49c437d6ff323f07b1f791a4d9c7d6ef5476677ab6238a9e5dd3b84", - "address": "lax1uwdt8xfdx7dldz350zjl6seqgcrwlk25krcfuz" - }, - { - "private_key": "a6665c8b4e23bfc62a7e3fa07aa3a12533793b3f11fb4b79b669243e77a164f9", - "address": "lax1rr37xlrazn7ycjse8ev9dx74qexqkyl79v09rq" - }, - { - "private_key": "377ced259ec33e30fb8584339661b3d642d5c551bf9548710a977299098bcda6", - "address": "lax15fy36hgafulvnld6tr9l2jkez8y25ackecyptd" - }, - { - "private_key": "f5e6e0cd6e108a55e146b0134f6d3a76d6c2574a1bf5cbd9fd3d7436ff1ecce6", - "address": "lax17ngxl3v5uttjqhywmnwed4pz2wsdww8uescdf9" - }, - { - "private_key": "1b28dcfcafcc227928c0725197fa4a42fea90d1cf48c980c095a5ddbe7efc807", - "address": "lax1akeyd2a9fdfv4slf0mu7fmnsaw8ygn7hz88ulp" - }, - { - "private_key": "5412b899bd976e34fe9b820ed7c868c8956a1794ea1c302156ef5ea493878228", - "address": "lax1hy7md59xysfal9775vgtj4gum0ylnt4zxt0nng" - }, - { - "private_key": "a3308bd4fb7ffa0f379c83dec883366d541d0635a9723f3fc10d3358eaab860b", - "address": "lax1n3e8erf9stwexq7myh0h4huntjnx4lak6kmwcu" - }, - { - "private_key": "2f9d00b16696e09bccb0d9c12e4be5b704a1b9e6dea772e85b7880d3e1b02efe", - "address": "lax19kre462jjudf4rm8pkdkqrhkvhwyymc8eckmtu" - }, - { - "private_key": "8e6dc35bd440af7e942bc35d4981dae0e33c4629e71ad45281446b634ce120a1", - "address": "lax13wk0spjceappre0q9heve7zkcmtgawtntckg2c" - }, - { - "private_key": "1723de75beffad51ca6e9af0920797885f152b00fe2d9f40d3d01fce185a46cf", - "address": "lax1gqrzxmjj8a2yjzzcanhew3ql74nxfnz6n8xnr2" - }, - { - "private_key": "41d8842e65d26bfe809d60b1d7bab30f24ebd2e6e033fac8425c1655e306d019", - "address": "lax17trjcwha788fz6l5jnc8zf54lc6cqtnzlj4n73" - }, - { - "private_key": "5ea0571458de678587751098aa325a805e8f031876952ac4385982d02f2f2a97", - "address": "lax1908sgzuxcxx0jvmtq5n7jgmn8dvuex4rw0vrj3" - }, - { - "private_key": "2226c0a4c158b829ceddc62c1f80b04bbd38aebe47cb1df47d60bb50fe5250a2", - "address": "lax1fspacc3ylnjjgh2m2w8tsfqmdshqc6rv4m6aq2" - }, - { - "private_key": "661168d33f0183d75bdfe3da0f12d766b87347a336c3057d2ad3ea4d11b5a6cd", - "address": "lax172z25ja39dj3nkc8lc7939q8mwpq7gup4l0kgm" - }, - { - "private_key": "27535cd59ee1c1612c994d2683a6e37d5ed5fea979d525b258b88655fb1d68e8", - "address": "lax1hlxafpdr2pys240e2mgsj98lv9hg3460dsjv7d" - }, - { - "private_key": "1d6e05f7e5e27931f26abcd3d920e46fa3dbe1e996b13d1a158a7817d7e04053", - "address": "lax12sznfrj22e9hg906ye5yp6wx0mlwr69shla4mm" - }, - { - "private_key": "982dcb04a84ea8dd7665a67718a0c5c641cd38d88608836bbeefc6436e5be6e4", - "address": "lax1s2ytlt2yxntqc02puux6h2qhmuyypysvcn9jqz" - }, - { - "private_key": "4f0b7bfa56cd223f40e588acb45ffa7bb7c4595d7522ce7d1a8895670a1790a2", - "address": "lax10v9r0v25fk8x9902m7xy6g0yj3tj6ns7j3ud4q" - }, - { - "private_key": "e0cc73506bcc0f4eb8607bc92aed4e9ecefaddd488fc8239fe23b9f47311313d", - "address": "lax1aqx54sc0dgdaznqg57vnkmznukxkwklnaqs5sy" - }, - { - "private_key": "97ee9f3e9e4f072b348a51184007b2961abdb0c556b81ef31a642b96b3ffe3f9", - "address": "lax1a3qaftnh6wuw0n9hk8p9rmrr4vyzrpcc6jf6dn" - }, - { - "private_key": "21ba813764b0fea67f8633990e7f29b0e30f509db6053f7edd2aebf80949f91c", - "address": "lax1ahhhrp5llhkdquts7c8w45d69e2p6e4ehf2qu9" - }, - { - "private_key": "509dea80e1c85a684701742a9d5ce4c957198cd7533cdee71da71ad10d934b9e", - "address": "lax1x28w9fzsw4k44quxe68ttrm74uzaa745qja7qa" - }, - { - "private_key": "61e9d96b59dfeebcfec69a7e7d55234777ca9439d56ff03c3d49cf052f47340a", - "address": "lax1p0g4820mv8xxc8y44ac4zz2rd6jmp0snx3sskp" - }, - { - "private_key": "fe4d296f471c18ea7d19b7d45e8112b174017ae734d134a47c1e5e3c3ae32dbc", - "address": "lax1crx9d0jqyws643tfna63tg5hlknr75lwr5243w" - }, - { - "private_key": "271929760186b62059b84b35a7366893273d871c171d5c9185da09b582830e30", - "address": "lax1t5t3e4aakdzawmjvdl8n00xa76t0gcq53cq0af" - }, - { - "private_key": "285c54d165f1e7d288a80f44f959ce0f7528ceef488f23000744e1fe1b414ace", - "address": "lax1vdtrkl3wlwm6nmrg6rnw7ckqapqpdg98wcxnq6" - }, - { - "private_key": "77a23fd21007d9886679bf5c8ca159568a1323a1cc71a1dcfbd028b347ad0cd6", - "address": "lax105p47922fljuucewh7hdm9mlgfnxdfnu6a0yys" - }, - { - "private_key": "484b84d7577c8c4eae82386d50f8fe30793d20b355a91551fe4778ac24909f3d", - "address": "lax1sykagxmmp90tycrte8ftg597a0ytmh0sh2x34q" - }, - { - "private_key": "2e0fb214c3c494c13975abdac0d2de3a2c4ae861805096eecd2847cd7f7e12ea", - "address": "lax10hzpyk4637qx2767yga5t2ygq8tu9r88h8sslc" - }, - { - "private_key": "b2b5786a3823fb3f23a1e8cb7f43ac1c51cbe3f6ad00035640fef10f5ea20108", - "address": "lax1fpne928ec9hjlxx3yg0p0mq5jzvzl8f48s33n4" - }, - { - "private_key": "e009281e5ec74dc88f5e0e0fb78e975385d44a8d9e55e7f5d748bda1868e7e17", - "address": "lax18gkqa0gzjurswqcq8uu58g53tl8txn94qlztzr" - }, - { - "private_key": "315243db524f2b51ab47d528a1d3835a4e6f4d9131cc19c69604fa1ae69b1f33", - "address": "lax1aamg045k2ksgaac0xf47g8svl40v2jdpn2le9p" - }, - { - "private_key": "44dc171d661dd74ca3c9ce740a987caab0bae12b3f7827f9e891437fc87fa65b", - "address": "lax1ptw9pxfygd2afpelfgu0gcnlms6vu7zjq9z0w0" - }, - { - "private_key": "28904d2ddc4b254c3d130636f3f816531684f591038b55f72ad12d1464ab06a5", - "address": "lax1flnpssdlw8pzuaayk2236jm2r8f9md2xapr2q2" - }, - { - "private_key": "08c6153bd7f7ffb9ec3bfd5d278b0fbc1c28df6fca00d8947c6a6d51933a154a", - "address": "lax16waq47p5gkuttpv7j3tq95p6u597ypjv8e9hf9" - }, - { - "private_key": "75b38a3827e04290bb80ccde80a1f84ede10afc89befd39521452152f10ee9e7", - "address": "lax1f5yrrtch93w7z20r6t5tej4re9teq9dw3zvg7z" - }, - { - "private_key": "25d11919258fc4dcd2bca67d23d55b88900f21802142a7d754a10c04e36ac3af", - "address": "lax1r6n282zn3h94n7jp7w9v5nr83zmrwygsxkqvlp" - }, - { - "private_key": "b1194976365b960274e2488c260dc14c739e6e74dbf8269146b4d78df59db0b2", - "address": "lax1nnffcyw6jjamdafwpshyklawhhrn2r2pnzxlce" - }, - { - "private_key": "98ba90faa48142dad2e5ce396af90e51370cddef572da0c3134e674fb8d0ffcd", - "address": "lax1pr0cc0rzk30yhs0ez2qg3g43jjvfhmt9m0wnkd" - }, - { - "private_key": "9204ec159a6865b6c4ae71b77547462d89147a425659fc43966bfce9bf879264", - "address": "lax12qdjqm6y24fz5hn0ztz06d3qzf89gfltkvdfz5" - }, - { - "private_key": "6474e37d7375f79a05ed11b36703196d269aa48ca065613d5936245049b9fb88", - "address": "lax1t88a43h6k9hmj8ganupg7s4zv2443e9dxchwus" - }, - { - "private_key": "2afe35ce24cf401dca063dfb8bf97f3a757f7745544c480c34eeca5b47cdce4e", - "address": "lax1z78mvuye9uqr46reu0ejyznyqy0ndwgvt7fumg" - }, - { - "private_key": "8ce07bb0964e35cf3fb7216ccadb157528e78d47dea109dd63e7bc85a06b3587", - "address": "lax1ntr05hr72aysh4jlyk7z6gnzenz6szjryvj6pt" - }, - { - "private_key": "e977a94c95e8ae516eb0a9d95c67540d659cb6a25d910a1121069282350b7897", - "address": "lax178lp0hwfv98werru5c4m8j0tmhy9geupfcs5r9" - }, - { - "private_key": "2c1295ab434004393d82d7df50116a540e754c38264d1ae1c512a36db383055b", - "address": "lax1acjve54ytr2ljfypww4pj9yuclnsdqm9he52aj" - }, - { - "private_key": "cc637c7b045813b788aaae99883babf2257e4ad0e722b5544a18f1f188a2b40c", - "address": "lax13lw46dl2rnvzzsnmk6tc22ds3ktlzejwljjmpf" - }, - { - "private_key": "2a9b67557bfe5cbac68b9f43bab34531be11ae3ab7d47be2f17a0763a1ee6a39", - "address": "lax1tnx6h6w2pz2uccj2nm6n5t75ufn5cgpcvl4xfg" - }, - { - "private_key": "6396317e26e662c2dd08d36e4c1fdcd2de50c4d6290bfb4ca93b291e7c8adaf5", - "address": "lax1va4dv9mz7jasml6hvktm4gl9gpdkerdhfszfug" - }, - { - "private_key": "a03cc6f2bc6af6ebe4935f77626edefdf83e55076526cd474c5089563578d6b0", - "address": "lax14dzkf0rsqh3wayj29m6xr47hrvex5ljm00ynqa" - }, - { - "private_key": "8040f089c25e75d9e14af27c34a29032c9bb49bbfe3a54e6c64cace36f0f1e2b", - "address": "lax18582tc2yvxy29rulvquhzelzdgle5up46t2csj" - }, - { - "private_key": "029179f51b0980e0eb067b49f183affba2b63a95c56b47050ae1483e08f9e372", - "address": "lax1s5xyhwzvgcn2ww5zefpjmju4yahc6ucv7v9fkl" - }, - { - "private_key": "7cc0b625aefdd18569650092bf3fb76fee201829b65d40f04583720e322c5409", - "address": "lax177558vyhu06epvw3qwghnyrxypfuylc5xs6nd3" - }, - { - "private_key": "267dbcb760400ca1bf5a745318b53d61ee632fa2ded83f0c2d3e88b299062728", - "address": "lax1wgd6dvs9ccnxzr7w99aqwgkrqda07trnyhvzh7" - }, - { - "private_key": "cf911bf474eef37616bc2ce91362f6226853f13a07801214042ad173715eb592", - "address": "lax1e8rccr9y8lck82kes0crm5jjc693ktxqle4syy" - }, - { - "private_key": "a102d3f385d8493b001a679d4970049eb0398c683f0a9e1290f1fe01bf7ca9d5", - "address": "lax1tt6526zxrves7jshcpc00yqaf6tf3gv449xenc" - }, - { - "private_key": "532b755d828162b893711b5e3428575a68648534b39b2fdc755ff43bb539ae02", - "address": "lax1cazzea8v3d09twq3hwqtg66p5t6qkw24j3900u" - }, - { - "private_key": "15518dc1e0fd39d5a1526f992e4ef986e89c54a70c7a9202243fe1e95bc663c2", - "address": "lax1k55u779nxw79gev27tuch8pyquqmw4ssme0cut" - }, - { - "private_key": "febd1a3621563399399fb3f95a10a81eb877eec35a11f4e70ba7acaa357a948d", - "address": "lax1qjrj9ds6yfpwkpngtxvvzupynv4gshgyqheyu2" - }, - { - "private_key": "0092962ae32f69087ebb1058f9e425c25acd1c5ae63fe79429e5ed99b3b04a32", - "address": "lax135ug2swwdjrvuff6jj50tc5q8aknutlpf85gyf" - }, - { - "private_key": "5926c2e741f4e0ac352edd8ee55a99f087604e5c425e3bed38d44f51a32e3a9a", - "address": "lax1gpnlz593zhjgtwjdsq64q4uautfjnzue3cfpql" - }, - { - "private_key": "f7350aa240797cced02d70c0868d10a777432760a220ee78bb15437413078163", - "address": "lax1uf0mvl2vgjdlrkr9qjkl2l37jnn4tklxrawure" - }, - { - "private_key": "737d07ed1a92e4d541e4a05696e23193c7d3a68e6e1658c6ab2c9d5c50d33f53", - "address": "lax1fzzq9llqjawx46gs574n96q4k35rl8tlyt6a0p" - }, - { - "private_key": "0d0c6d224bf837eef0e9e5db48f70669521d6ce8aea4c0ef44f0a00893b2b6da", - "address": "lax1n9ww3evxe69m4yk85exa5a8xqnqz6wjqmv9gyy" - }, - { - "private_key": "7a4c08324bafc6a68331e492d4b8a4225b0f41a990fa2d63f66328a1c7a9f5b9", - "address": "lax1c53643hlvztkcp2rtqld7yltn92f6z8xu3q446" - }, - { - "private_key": "e1d78736f4d4f629f757121a75544714f82396f570ce14d1cd2954b7bf86279d", - "address": "lax1aku49973l7t35ghecdl25hl7rj0nuvamxqcnkt" - }, - { - "private_key": "267680e214294ca54eb0f23c28a2b97d5d1fca6fbe5b47bc5ddb5fbeacd5c86c", - "address": "lax18m0nqtqkdam5uz2hprt3qdnet06z6njmy4qg6v" - }, - { - "private_key": "22aae209ac6032238d6f46f62a17cb90d6fb909e3572e415b4cda1f22af42253", - "address": "lax1wulzpdfn2l4p2cn2zeg7j39h9866xnae5fsvh9" - }, - { - "private_key": "970d8b16af350897bd89896ea45c123077468d7a4b2a545d1ef95ce40b3a2f9b", - "address": "lax1ntttzs4wmcdv00ytng220sy8czuhn6xlmhglnu" - }, - { - "private_key": "437c62f2801ee61989d492d8213c61d9956da78722b20807df9047c3b2e9e9cb", - "address": "lax1zz5q6qnlwsgujy52mxypewyntwnd65hwxndz20" - }, - { - "private_key": "47054ccc6cb6595025fb19cb7db9e2c7c3c3b1d55c938919dc7a3d3261e3032d", - "address": "lax1nlskhp6m0jwhy43snj5926wlksmm6f5cqwkkqp" - }, - { - "private_key": "239f91cc51a59bf3004be0afbac3adacb62e8ba1bea6f082484ef49bd4a701b1", - "address": "lax1nhzgcaw7eptk6gfrcdmfm75jffl7mq5dd5kxeu" - }, - { - "private_key": "6e198ba05b95fde642dc38fe46bfab8b2fe2a20036f358891819c434c66f2a33", - "address": "lax1xrat8pv86kcapuh6v0w6drr0cry76pjg80mdg6" - }, - { - "private_key": "4b4a6bfaddb180246d68618d3832cc8234dcf05ff9cb4bfa530eb7b216f06c0c", - "address": "lax1n97j48w8xqzlcg378nrwer7x5qe848lxmssnfm" - }, - { - "private_key": "0e3cdd78e4f871b58bec48f0219d020e4f5f1161082d31b5cc430d52785150a5", - "address": "lax1ekgjwvzxf54xpwlx300z2zyxmtem9z9w8ayc86" - }, - { - "private_key": "c33e47cd9355a6696c354530cffce62a8e7706a39b2d01c522f0576bc592a5c4", - "address": "lax1n7wl0djwthk62p03n5q7cz8ph5kyy0yx8eqn4p" - }, - { - "private_key": "cdae7a5368bbe9caf77aa5376a2ad6bc19c1c5c1c00368ffcf9cc0c9327a3cdb", - "address": "lax1sswtevyguavxl7qmmvzenfeqs0vvu3q2dasf8k" - }, - { - "private_key": "82786d1b628d6188afcc3d0a45fb18b74f556cccc24396e1838906f5c73ea79c", - "address": "lax1f3p8fwhuk2fru46p2xacqqe74nu6nnrt57wwyd" - }, - { - "private_key": "661bdf56de0798c2a85da2951bd75d2827988b8458924d97e9554ee2a87d4fd5", - "address": "lax16j0dfd2z86erayqkkp6mnx9htvjx70qn77zrl5" - }, - { - "private_key": "9d47e23cb209a66b0560b7010a8e5ebe95bf2e9e77cb7044da614ef1bea3e1c5", - "address": "lax1tn2xpztmxjgsztukfwvfvhsxn4s99vrccl2ln4" - }, - { - "private_key": "5ead5a4fbce32df39a99543d45ee6b063352c3cd10f3a2fb48c959ae1b2794e3", - "address": "lax1c5zll5uaaysru486sv07lrufqhf2fnj8urhvmj" - }, - { - "private_key": "c326e608fdc4f6e3cd7e581a086fdd43db84f2f8018c37331297ecd168009f94", - "address": "lax1pyn47dh27uu33pj2g0w3cv8qwpjt56lmesq8qj" - }, - { - "private_key": "73494cbeacfaaf08283997e041acaaee6868e98996c3bb50c4415e0b80029d3c", - "address": "lax1le954u283jr0xfnxarfy04u4xwjmxf7yqjeqek" - }, - { - "private_key": "ba0b371fd42d5d9893fab25e157866921658e3f4ac420ac2afa3af48ff8240ae", - "address": "lax1r86nk0mnq5q7j75lvs8nxnr3ynepfrxnezrfjx" - }, - { - "private_key": "64d653bc4d4603634a58fb280917875a864884178fe96ab3b5f4757f7becdba1", - "address": "lax1alwavew0zmg2pe5rew0027pe2gqjh6wlvtwrl8" - }, - { - "private_key": "b1e5062f48c63a8dcd74c1ff31112567603f116d9eaf5813b9a8d40923b02c76", - "address": "lax10muedx9xqeunnqwqyzhasg2a4g7kfysexw5rts" - }, - { - "private_key": "a430e5c07e5d7e8bcf376989c3355c5b5ddd8431d77e8a84b1cc6b5118811058", - "address": "lax1jy4gvha44hcmwt9skasxlj6ftca35nmxe5g8eq" - }, - { - "private_key": "60e4b88c6dcbb0cf9442a00ff32feb62fc73a6b6c23c27edfbdb3f4fd87e5dd1", - "address": "lax1wtujdsy5zmtf750eyny9h8mjvqacr4vc0w6lmr" - }, - { - "private_key": "2e5a95b72ce0f88640d667ebe50f9bfbb5655584a46f3e7ca5fa335b6e33d22d", - "address": "lax15gzn7df2th0z3xdvw7v9yknl6y54ac28j4htxn" - }, - { - "private_key": "234299f57f4eb27222c86294ced63d9a206bb03f626717e8736ab3b67987e2fb", - "address": "lax15xhwjysttvkq24qtfqjvpxhh05z0ffwvcxcn05" - }, - { - "private_key": "18d177f6b9b2700ffa6f8a2d026f6f9c3030ed54c65cc6048b622d0f8519762e", - "address": "lax1ycxywsmfd8s9w20u2cpvgyq77g0e0ch9lav2z3" - }, - { - "private_key": "8934a792b0dece92844f6c065053618163161f114fbb1682282ea7c26c584157", - "address": "lax1wfmvn3mzdt3uqf73zzdvcgqrxrl8fzappvgg9z" - }, - { - "private_key": "4dc2b36a7e6f79626fab72e1dc67106f7c2d25f2d76a756fd8f0a4549609ae09", - "address": "lax1k2tq4ddekgrkpzmdz7upx6s4q6wynmm3xpc2jh" - }, - { - "private_key": "6b7d3788830deeab89b73703344c1d2195c6092ac72005447f033ca7b4fe2e30", - "address": "lax1sjuzhe9h4jg5rkxwnev65kczc5a85qt6ajdxag" - }, - { - "private_key": "6a3a29314c3a87c08b81d758bb7a1dad4e2b18d5d0c01ed666c56bf84ccece5b", - "address": "lax1u645trds44hwc8s3grwpajevr4q4pfesc73waf" - }, - { - "private_key": "c2635ce1732b054d8cd57bbe3b15d384f7ac6e8ec2204fedb7338faf77eeb3b9", - "address": "lax10jp5wcz9vcyqm9zlmtha5fnpjjdk6j7v807ujq" - }, - { - "private_key": "13ec90f8adde39adbb6ff7975389ad71a0daf18d94c755c659efefe5819f1054", - "address": "lax1pv6q5e26c7uwl3l7q4msdamdhsf36v3ckr5wtp" - }, - { - "private_key": "84f52de2da2e30008bc039550d8fb66718fc2fe17a865a8dbbe06130e48539ef", - "address": "lax13ee6vjgdpzrxce4xcc2ytj9mafft2qqfx93995" - }, - { - "private_key": "49d73b6d43dc1342b9a5ec1af2aa03f5d192f0bb90b7c208ee5101f5d19fbecd", - "address": "lax1lf9887rzwspapzmfyxue9269wfwetqjdhaxz0v" - }, - { - "private_key": "8bce0a1e58effa275f46f5b15369d85912d9cba2aa056271ae65f0106a7c0086", - "address": "lax1uvzg56gkh2htynt9v6vjz8ah7ahvzqv5vajwnm" - }, - { - "private_key": "2b25ebc3f017be4f9fe8c22ba8b82cb347c78681a3bd13276531fb2ff0110e44", - "address": "lax1p237jhasraaghwl2hwu4f84d7707tmtejxw5y5" - }, - { - "private_key": "3bda64cd04939ea7c330dc3a7b5064b90af3f6da6f39eb357be86240d1077ccb", - "address": "lax1fjszecn7pv62cjr6qpry6v7mhkf0r6gxwwx8xh" - }, - { - "private_key": "1e5318777d4119a48609f49d5522d0fa64fa5b36ad94f52406e061f23dc9d2f5", - "address": "lax130punls6l63wt73gtuw75jtf7vr5a7737d9clk" - }, - { - "private_key": "935dd3c196650ea1342d6650a0f0f080bdd4ca0757ec2c0b2534d35a877bb0aa", - "address": "lax1anzqj9sxdsxs0cs69mtgfy70dsqc3947aew7y9" - }, - { - "private_key": "b9e4729c32b33d6ce6bb44cd4f52c2879df2cb7db0870e0c785ced17a6bd04fe", - "address": "lax1a5emh007yx6g73f3xuyg4473wpefmh7q9wfvap" - }, - { - "private_key": "1d93b3698bb3e82055bc79a60ac6b6f35c737fc7d31381bd0d02adb2c8f16759", - "address": "lax1m4hfa6hm8e0l76cug52dlnurenghdaxy8x2xxa" - }, - { - "private_key": "91c20791229240ba030e59f0f034f97fd86b62313d8323d54cf32db9f31b00f0", - "address": "lax19xxku3j3fkxlsjckjslq3smq6gdcyzw94lq8mq" - }, - { - "private_key": "b2d53501f41002a6c3d81d9717923a7a219b0704cd50fd50656bb1117f7e0d66", - "address": "lax17gd9sewz7e67r0k7qg8akqyuy3altkzjccrk4f" - }, - { - "private_key": "5a09f44f41237d60bb826ba8a766a1740d5396a9ef481ea2f51806876278451a", - "address": "lax1d0rxq9ltulylfrcyuvckemncxc5c08v4htpflc" - }, - { - "private_key": "670801d43acd74923030147d12c627d276892dd4be8e20525d416afb1ea462af", - "address": "lax120t550627n7np80a0997hxxh3f7un5lzgd2cva" - }, - { - "private_key": "adaa58ccdaf8489c9a288a6f7a0a597d498c1ac804e882aecdc821ad2efaa458", - "address": "lax1kg5dchq5ysu5u4fkfrsz62v9mrrz7z5xp5t02r" - }, - { - "private_key": "0128fd446551cfa553b62a5c2ae6e2160e286238f1f5e1fe36373f2bf18c811a", - "address": "lax1ga06sz0lmzl8knpdkkjg6ujsc6tevg8msue65u" - }, - { - "private_key": "c606975dc741a1ff442a3d9efa98c43d21c54bb4bc71c631af159f008916dd3b", - "address": "lax1ze42exurmtq23muz0x3kzxcecptya5grqajdmz" - }, - { - "private_key": "7d55d4551a00943653a01613fd3ab4c39eb385a25315cb1dacaa82a645afed46", - "address": "lax1zrhjlxggykp3zaf8ek80d4gvnxe9ewdnq4vege" - }, - { - "private_key": "77c0935f09008b784ef5f6b474a0078caa0c9c136a5e9b180371342189069fc7", - "address": "lax1pyfsyk0f9deq6tndwj6lx43g5ns27ne0qmw8l3" - }, - { - "private_key": "6fbfa47b3b14c974c66aee6329ecfdb9420c4c0e106ccca3fcc7a35b9970b723", - "address": "lax106nrnjym954dp3ndz3wpy0g52wxesqkwu6fw25" - }, - { - "private_key": "958219bc221768e16cec33724e15bc0d0405931b09be6279815a6c00ac3c338c", - "address": "lax1mvcsza33cap4j27lm5xzw8lr6w8n8lrpq3m7vv" - }, - { - "private_key": "b17471beedaaf7cddfc7b236c6a0fb004b6faead9e15962968d244616d82456b", - "address": "lax1tj0h78jxxqtk6atun66r9hurch6zqvrj4s6kql" - }, - { - "private_key": "88a2e5c457c009a745085229daa487c1d04c3bd87fa25cfc3175cb9220f0bc9c", - "address": "lax1maydzgglzrzww83cenx2nlj9zhfm8ygd6rqxtg" - }, - { - "private_key": "3e5610e86f1ae8eb51d4283c07f92a343b69283679da68aaa62a291884472248", - "address": "lax177ja42zhnv3s0wkl49gf7vnzszhx0s4r335w29" - }, - { - "private_key": "cc95e7617599adf1e4c6511ee7e249ed54557d80aa0c65ec5c39f9f727084003", - "address": "lax1fjd9lfkwerylh8tzh5wfldntz5gzqg0q89uhl6" - }, - { - "private_key": "ae418a8537b06c7c582797737176b433a39290e7ae2f1ec1fc126a3dbe1173c7", - "address": "lax1hn6lh4zynmcq4cgrqjjs02ejwpc2tppgfrepl0" - }, - { - "private_key": "b5f52b8a2d75e745c1d395ebff0a60f782c42743dcc6bea8c03e14f02f66c6e3", - "address": "lax1jls9tzt8kjys0txvfrqw5u85jrlqsjt0wh58h6" - }, - { - "private_key": "b39ce8427765fda3d863cc3418860ed153232de137a5631f99e9e8e66f94989e", - "address": "lax195e98y6sjws7v4r69rsqvhgs7gs2mqt6s04yde" - }, - { - "private_key": "8fe05c0b1d43deff2a9b8d468aa3efd05193b7b3b2a80b29a9ff101ae1f523da", - "address": "lax1edu8u0rdfes3lm4vhes9zhs86ljdcat4wu3m2c" - }, - { - "private_key": "4c0a6868a5e52093389f25dfc63a12d1ded4c3180d70bd1b0279f5e2f91e8e92", - "address": "lax1pfyzcucdgeqlwxuw65k6vlfs8fetj2clsqqd5j" - }, - { - "private_key": "5a686b4a4c71507c1a0a536d77bbef560ae0acbd03abc51957035f35719a6c9e", - "address": "lax1nspspxkxgqaeu8vc822tc0nx62hayk5gy3k9yw" - }, - { - "private_key": "dd31336b9af628c9742ea46daad7b0cba8c6cd5174ef3ee2f56bb2edb5a3b738", - "address": "lax1j0ck5cukk8nud4tp9yynn8fm37f67jq3mhd2kd" - }, - { - "private_key": "9eb75fa6a57e16b5f8e6c1eec8bae4516b231242a35fad519cc4808a84cfe999", - "address": "lax1grvdu9465wlq6qwaa9pgw2660a5k874fczlm7p" - }, - { - "private_key": "c888000f5a14adb46fa32d7f5f577f426cb97219bad27cb0fe0d24df0036d507", - "address": "lax1ufjx8xhdmtza7pna8h0zlu227u4p9fdcyw9l88" - }, - { - "private_key": "d27062e377f2f0779c42d28f66c08bb025f6bbdfc5eb5f666ea085feede33e00", - "address": "lax1l7xfx5w9qxf9mpg5mczec7zfrvqur6wqx7x7w5" - }, - { - "private_key": "961d3777d5f7f87403c75fc8fdf6262671e397a6c84c360309b52eebe146d5d3", - "address": "lax1dyc4r0j70kwagdsepluuqa8tkuyknrf06tjlnz" - }, - { - "private_key": "9de450dbbc049298335cf9428f9e8e156093491e80a3423525e79045931f1a22", - "address": "lax149f8vm2x9ms60mepl9fvwdf5yekp7kcdy8dd8t" - }, - { - "private_key": "1f40dd320d4eb75c08c114742ee903164bda7e955b6091dbe82dd1f257d6e221", - "address": "lax186ve89vxaepp6zvtzqa4vhk0meyd2cm0mnwujm" - }, - { - "private_key": "59dd8dc99a903da68dac86ff103ba4d4e2e20801591fc4bee4141c07afd85096", - "address": "lax1tjr6mzz5qjle0g5ggzj98pavzezq24mtpmrzpa" - }, - { - "private_key": "7e9489f5abcf8954a6b59b9bfec05a4bda2f912cf66fb44f2c03cbccf5be73ef", - "address": "lax176lk00g9rewm66xgrwpe2ts6wv036wfvw2p8yp" - }, - { - "private_key": "a52ca3a45cdc385e674879321bb809f3ed3a102879964e43f55953cc9599b770", - "address": "lax15ylnpm7g50007hjpd9judr2nejw0al83uxyqhm" - }, - { - "private_key": "bec6d94fa2370945f6a1ce447556ffcbb100a3d13db9d03623a551411891a1ef", - "address": "lax18p4xcq98lxtj3esu9ustn7ljfkprnjw23ld5y8" - }, - { - "private_key": "eda4a7dca25872953774bfe734d2c1281435b2dd536daa07d45fcb636d430d00", - "address": "lax1lysq8r4g0kd86lc77xs8udhpdcyxllzjt2542r" - }, - { - "private_key": "142e3b899b90c3aaffc67fb3671528d230996620136ae4c7a51896172827f43b", - "address": "lax1chddyrq9vwmuyt492scjan8q5ydzh6ngn68m2j" - }, - { - "private_key": "a1f0b50e18aca0c306a2381431f23797581a437c28040c8a85e2b71f95026a08", - "address": "lax1m0mlzj8vl0s7yxngk9gwyl38s8w0hr9yaggpdm" - }, - { - "private_key": "7544dda837f6c00d93991e8b66e254654ef6f6d3841fb4a38fa0bcb09ce75359", - "address": "lax1ud7wrfnkvt7zyqeddzx2emk5jf4458v4kc0d4a" - }, - { - "private_key": "e3f324a249e3c3d033ccae6fdb143bbb7f0d5499ca41e6f32a5666016782d350", - "address": "lax1xgzuaelpt73v6myslhnh7q00yd9qkvjtlkcu0r" - }, - { - "private_key": "61801874a839930b6516e4434c5c88b6f2989b3c2f4bb9cf308c0c14a467b0fe", - "address": "lax10mnl3eu9rg95ccqrl3uzuskxxsh9p34g075dnw" - }, - { - "private_key": "a6b88e84a12ad57374e32e6c919327c4f529fb4f5dab5b8831ba9b84efd173c4", - "address": "lax17ex7mjtspywk7p2396hc9ssekqj5gajcz23j2f" - }, - { - "private_key": "1aa7d256dbd874ffed95786a661fd2752b016aba9d824dbbbd12f8f34910b509", - "address": "lax1h6jd9ug7clnelcffrndruq8y3dtt0t68hjmehc" - }, - { - "private_key": "fefe02d8cfbc23ad7d3f77e3fd5c71555e0a69948746c94e3f2d962bc868f83c", - "address": "lax15pft59ef90k66p20xvd8tsg7pdx07tsh2fe408" - }, - { - "private_key": "2cbab02d30a0dc00e243093edea45f83c28a20263ddf935ac8475849f160bcde", - "address": "lax1uhff5fnmyarv5q3e79axg9k2dn6qy3rkyaj80l" - }, - { - "private_key": "210cd201be0d00999170cc2a5440d89276aa22e6b67707b3c05bf95bc350d15c", - "address": "lax1m82d4st3sqasxccymp2k46uvd0efrn3tgumdf3" - }, - { - "private_key": "dd40776c437043c0d2b84d417c614ebd13aad8bccad9f6c60fd176c57a7af96d", - "address": "lax197unp4jjusvdwt2xaesxzw6hr0p7hdcgfxpfgg" - }, - { - "private_key": "e2630e8fa5c22a80d167e0f3e181f6005ca58c36739ac1bff98c63670d057710", - "address": "lax1j3rwlg2llpec8m53qrff3x3nsfj4r7dzhkuv86" - }, - { - "private_key": "efcc5a41b768ffe5f97b312ac631ce64bb1e042f3810a18087d65148e024e7c1", - "address": "lax1dlz4mc78w64xlel67z0p4lm6nznzvp4kjmnmvt" - }, - { - "private_key": "bfce2b00923a9ed17a1e77892d0755a8a06698f76c52b2f39bdee5952f6eaf06", - "address": "lax1ues8xw55gz4n99vswct9vnqg2m5hzajmh2r0vz" - }, - { - "private_key": "bb3c0ff3811f646504371ebd150ddeb40746fd9f7a41c5c3178ac5a8eb64e32d", - "address": "lax13p3lvc0tlmw83u37xwhjt9zzjf75hrsazxh3kg" - }, - { - "private_key": "290dc9237224a080ba0503672cd0cc617f5bb302b86e9a78538b15ef667f7d01", - "address": "lax1h0tdmpf6phd29k8g5dm0mlk8x6dmgjlt9ny6f8" - }, - { - "private_key": "319f60b01adefc9f1dec9879b95cb7abb533920bb152e9826a9802df90ff73a1", - "address": "lax1zhhsqfu6y2q947z76rrjt38fgz9c4eqf3czvk8" - }, - { - "private_key": "d019a20b5caca7715a9b7cb8e10ba882158b553804d0241cf8070797e31ab154", - "address": "lax1slh5u9d5zf3je49je0nzrj05p2g96wg7pwxnxx" - }, - { - "private_key": "ee3ae04bb955ef8380509f29b32e3161f358459d39ffca6ac4249af2ace39749", - "address": "lax1r8a3udfmmakcmj8hly8ygddfvknnh79lpc90d2" - }, - { - "private_key": "b7d192f6c46d8a8a0b10a812dde94b13a255065f525a9a8632553c567f0481b5", - "address": "lax1gsupljlsq37tpv5ydyr8lklnccrqc998m4szvh" - }, - { - "private_key": "89a783e661e4a5d761b8458b49b772964d39282c6f33899bbb2c5e2cd089909e", - "address": "lax10yt5pyyml0p883u5gxyu0p0y33h9r5e0ktk0kv" - }, - { - "private_key": "3b8389e5d7193a1bf58665e02b48cdc2700e50fa8f8a6d16043bed119f072b57", - "address": "lax1yqv6mp4s4amswya8s2lwgc0kluj33z3833v5y3" - }, - { - "private_key": "21f83f9755b430c26e793dd6775df71728e922987d029948de50b04435d75df9", - "address": "lax1ld2h87xsdsnth04j9atl3afmtf0j3q3ngxguqw" - }, - { - "private_key": "49a14aed298e698452e17cf999637d638c9fc840236902058cf6ecb2f42faedf", - "address": "lax1rl2wrysz7an4glxcyu2j6ch9q3g5yjjfddzun8" - }, - { - "private_key": "5f023a2d07f83c09879cfc81e6032ac95add077d2599efb80a6dc7646cc7ad87", - "address": "lax123dtnxm3ak9xwlnthyqj06mzewrh0ld8375wgc" - }, - { - "private_key": "48f7f5d6c98b46f0b622b72ef524bb52ee2d998a0037833f527e4909d56e585d", - "address": "lax1xka8jvd87vyweg3j5qsckffwhrpdl804cqpuhg" - }, - { - "private_key": "e85e3878b91680ef912a6efcb4ef9413fe3a86ad35ee222f3d400065d1577ae0", - "address": "lax1geplmpv9222an5hcqz2c538plkzd9qvsy76x44" - }, - { - "private_key": "e56faf48061456f1ffa5ef5a4134eb90468f9b2693ccfdcac1643bc6e5b29de9", - "address": "lax1p9n62h5437j97lshgdnvtvkdr446lcctsjlhtp" - }, - { - "private_key": "a732a3120997ab88717aa23a56d5d41f8dbb77cc5dcf976cd07727983bdcc301", - "address": "lax1uclpmfnwhs82d9zr5zlljvdt98z6cdcd35h9m6" - }, - { - "private_key": "677f2330ee560c09fc2c011a234f856663db39f16125e6552c9c1c580a41ac34", - "address": "lax1wwmrzjk4qh6k2nnzqm2lywagk3yy8m96zaldvp" - }, - { - "private_key": "aba2df96da42245893673ee37cae1d310930db5a7cdb8165dad3a04f7b5ca9f5", - "address": "lax13yaqtedy5kd4my2ymlfrdpp59pn3ez9anl4c2n" - }, - { - "private_key": "b9409601848911c9189cbf252e082fb906831b483b8a27342bf88b63b274caab", - "address": "lax1eup76j2zquyua8u0ll0gepuep9juay98ymphf8" - }, - { - "private_key": "05e033d498ba26bb60306f781c277abf0b5e5b724f240f324b6077cd4763412d", - "address": "lax1gsan09c4xfh7qe7wjrk3w0ktsjlykzcz4ghdva" - }, - { - "private_key": "c0467c3702800be645599b8cfc22f9e5edf90d4fef3f7ca5072e1e5320764a58", - "address": "lax1h4vrwk4dezw5lgza7f6kyrlq3r94ggtnvxf6pe" - }, - { - "private_key": "38aa583a83a17715a2bb8832e516beafe5dfcbd147c8bd12fd9b008a7ee7aee6", - "address": "lax1x2vfp4qmv8yh6pmc59fkx3q9jrrezuph7l2jzr" - }, - { - "private_key": "524ce8c10b1818e61452887bb9a3706938c9e97be328f3369d1f5fca77dfada2", - "address": "lax1tg4heu4xr0l2er0v3w9jdt0dr6h4la389myujg" - }, - { - "private_key": "a56aea443922edea559b35540eed16c795e0bf6e52df9e0891168f5feef64b65", - "address": "lax1q76dw6lq5srpx4zyqmlmmqqu87h8ms3fwlf55m" - }, - { - "private_key": "b56ccdef9800e3ed2eeb1f216a62f2cc9cd869b93fe857b538206f6b498b0e51", - "address": "lax1yc703a235tls8med2jjejgev350l3x33vzs20w" - }, - { - "private_key": "1cf0dc3b21f3409443caa0e77eb85485afd9c4c8f765141b8d4a430656204108", - "address": "lax1cnc9dfyw22mk49vs9ychrfmqwpg85u4298pgec" - }, - { - "private_key": "ca9a5c0fbe447af6dd56e818a37ca993d0a62a03369b3ae7a5646ddb76d71169", - "address": "lax15uckchcum44xascjw5fw8tt8q8sxxkr3kq59hn" - }, - { - "private_key": "fb300484e225e4675487b9fbdc30d57eea98c8cf1d24c8b7cb602242e0904a8b", - "address": "lax1c6r2gsn60q3elvm32rdv42lcjy2gzdhdqlxvqh" - }, - { - "private_key": "16e4d905663c073b07b9b4dc51f7275c602051da4c53770c958be1b68fc86b8e", - "address": "lax1s7jlx28rkyarqsw8c59t26yvs8s5z2fyudhsd3" - }, - { - "private_key": "911fa717b359abdd5b75dfa2055973d1f31a86d036a7900774678e375f0df43e", - "address": "lax10s6q0e98qza6ps2fqqu0wp6v0dr37kpwfvqruk" - }, - { - "private_key": "b8cd863704e71dbc6c3e78d5363a978620ca9c0a4296933adb8cc3db1e439bbe", - "address": "lax1sdl78uth30npv4nm4nrtdzrl7gvdncn9x7n6k6" - }, - { - "private_key": "3479aaf03a05e3290a4f20de269671381608d7daa08a761c4dc70c0ae72d7fa5", - "address": "lax1uyjxhyzh25ja9usf79aljvl0hpkctzvp9qdf9e" - }, - { - "private_key": "599403d69c3bb52f6c2817416900e19137f3f6a758a2ab19bb8ff108a2c38586", - "address": "lax1hc5pczws6fapy69hapst89grtnnpjys2a0a0jw" - }, - { - "private_key": "3dbd0aaa27bf0123dcb423fd0b730cad14681a95caedbb44873959a4f9202f6c", - "address": "lax1m9zp9yp669qjgxj5fe2k0z0ylq648x3e5mgehq" - }, - { - "private_key": "3565c43557efd6ab12ffe6961009969a179e81bf86c966d8f690fa0944b2592c", - "address": "lax14fny9hxqwyd3d3n903a8ctfvwpnemzq77z2dep" - }, - { - "private_key": "f9c5337d724778fc3e24094358830f33e2fb21ab87108021892c94a8ec5cc297", - "address": "lax1gnraq95ju7hw2zdqrhuq4t8l7xmrpz9msjdela" - }, - { - "private_key": "d294e82e27257ce8afeef98e127881f5840c3e8b6f2f92eb7165178638dd01bf", - "address": "lax1znrlh5nwun5dkly4hqnqj558q3xle23jcdlfvv" - }, - { - "private_key": "d3c26d8fdbf5671ca8717cb8cabd584e474253c95a3285ccd005c6247c33fffe", - "address": "lax120l3vgtswhm3gzaem2g0t9ancek42gspyqtmh0" - }, - { - "private_key": "dcc8d58d9c336d671b44aa8bc43f7e1323244b31171133e4d876abbc6909172a", - "address": "lax1qjvnepyfn5sr4pe42yrza7cncuepu5v8grchwh" - }, - { - "private_key": "7f1e9f9a2ef95807ccd4a771ade724e97967e4f9d0b653dc81690e9f0cdee17f", - "address": "lax1w5cp5480nfc39ep9a5xhdegz8sc4tkpgzqzlse" - }, - { - "private_key": "451b58cbd26ec732d5bb2707ed3c19b2196490d208732dc024a1747f6cb35083", - "address": "lax17meaeceruf0r469d9yxe9wj9uqqcj9nd3cmdcw" - }, - { - "private_key": "1809ebe0450cb341e9c95c97b282c79e893d58a39eeb2eb0ef9f31af0adecfe6", - "address": "lax1mq93ym8vcyyjltafh7w8ulsxh2n4psxsskzqf4" - }, - { - "private_key": "86f10161bb6dfabcd3c995f8b96e102b17274df69b2caeb01f8b8a08acc76b6a", - "address": "lax1j6at3pv3zuf9yxt9d23phrez0jrsc9mvvf2r4v" - }, - { - "private_key": "d5d0d47124b4a418d3e9ea1744178e4e9778cd16e819d889eee02b1fe991738d", - "address": "lax1tt8d20jleapvfy6y9y59ts96sfgqe6svzhy9w9" - }, - { - "private_key": "76a7b0474b536632208211fe84f61b9e33c769e3e51123d2bae39eb462e25655", - "address": "lax1dtpugyvlmddf64p985ncr3y8egpy0xe77jnmur" - }, - { - "private_key": "80448c58e2bfb04867788fd6011edeb091ed32afb4885e71353e7cd79e5a6268", - "address": "lax1f3sz8x8hwka4u05qtjtrv7xz2jzvylptctm5fn" - }, - { - "private_key": "3d3e6a09a621df1716b6145a58c3c909863ba1bf1601ec671d0c09baea721521", - "address": "lax1c33s5l64cjvw988nrh3dy5r9j7wus4r4cwjjvj" - }, - { - "private_key": "9415f2617a11b99d2862781e2c8dc4ce08bfb6380026bdb0ba724eb248b0a99b", - "address": "lax1zygne62pc8nttcu60u9zp8ydz4rpha099f3upq" - }, - { - "private_key": "002ba0ef60ba5045243e195e46925cfcd05a4e5bb91b132b39aa51b172083436", - "address": "lax1hhhalg5zwkqvhsl7ac5hax3wtgk2723lhev6d3" - }, - { - "private_key": "4a4b806372c7fd04b2c87e033ff7b5d9ca67de385bd69897304d668feaa015d8", - "address": "lax1fjusj3dxzhp76gu74mqfk6g4rgldk680p5a9vs" - }, - { - "private_key": "12ecada8aa21f621fb7263d7751cd3dba14f49be3c440bb301142d09dd4cbe2e", - "address": "lax1kprgn5jagxw84m2thpqv7su8reeml45v7xxmcr" - }, - { - "private_key": "7742a274f1337cb20aa578af664e19d95a868e6fb8f228f8d2ff6a360a55f5f4", - "address": "lax13uvnn924s5tkncd6ud49ded0sjfet3jpu530jd" - }, - { - "private_key": "295ab51bdce6115e53994bccae04f87f0486fb1537443cfb9b0634a233e2838d", - "address": "lax1q80uxgzpzrjag5pv3th4t7pf2ezrp6aa72kc0y" - }, - { - "private_key": "62c0b45ef7ba4965adb1fb2a2f0e065da6bd7857ce117df552004d0002d3f948", - "address": "lax19dtqsd89ftmz8eu6ctll6utle5y89dls9egc9f" - }, - { - "private_key": "dcfb7d0babf20d4ecec0ddd140aa138a81224c66f38867a18c7b8b740314b864", - "address": "lax1rgglwsva9f4r97jfmc96zzu57kzlgm7j0yrcym" - }, - { - "private_key": "7e12e03a6bf89bd5b467ad9cb50f9467f32d74547ed23d4a888ff064caaa4162", - "address": "lax1lypas7420pse6ulqfvzkznmffrz4hv6y0epxtx" - }, - { - "private_key": "18b264c4e41c8354968dbbc287fc6d00580568712ad5976a99c24fdf8770b8e8", - "address": "lax18n7pn8xwfq5aktdwstagaw5ptgz9fvmg6t4fwh" - }, - { - "private_key": "96bf130ca6c954e1cd49ff66f4f15b546da0a832f47678d7a22e2c7e928ce95f", - "address": "lax104sske4wtz64fekuz4r2drkn4u5768e9gcnlkq" - }, - { - "private_key": "1dbc520243bc78712c1f8ee946df1cde7283981db07c04f3e8a8a558348ba341", - "address": "lax1k03f636mpmy0kx46q7pmy6hr9vvf72wun5jyhg" - }, - { - "private_key": "df24d3305ef89a7e43aa63d4d7fedc08b7d2c7ec6356020c239676b6e617a82f", - "address": "lax1lwpang0jw6en4epnn77swt4vpwn5qhc80pareg" - }, - { - "private_key": "febaf4dab747732dff2dd6f2925cf5f96e9256af150f4d899b99e08f8e12ef8b", - "address": "lax19t25777unzaxrwd95a5y42nlkkwma0dvzuxhex" - } -] \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/logback.xml b/cases/ContractsAutoTests/src/test/resources/logback.xml deleted file mode 100644 index 1432fa0bf2..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/logback.xml +++ /dev/null @@ -1,49 +0,0 @@ - - - - - - - - - - ${APP_NAME} - - - - - ${ENCODER_PATTERN} - - - INFO - - - - - - false - - DEBUG - - - - logs/%d{yyyy-MM-dd}.log - - 7 - - - ${ENCODER_PATTERN} - UTF-8 - - - - - - - - - - - - - \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/newaddress.md b/cases/ContractsAutoTests/src/test/resources/newaddress.md deleted file mode 100644 index 2d6d58ac22..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/newaddress.md +++ /dev/null @@ -1,3 +0,0 @@ -0x7E4980211c513aE0f5ABDCfcD509Ae7B27b862DF -lax10eycqggu2yawpadtmn7d2zdw0vnmscklynzq8x -lat10eycqggu2yawpadtmn7d2zdw0vnmsckltks0ff \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/plan.xml b/cases/ContractsAutoTests/src/test/resources/plan.xml deleted file mode 100644 index d902b405cd..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/plan.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/cases/ContractsAutoTests/src/test/resources/test.properties b/cases/ContractsAutoTests/src/test/resources/test.properties deleted file mode 100644 index 507486a14c..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/test.properties +++ /dev/null @@ -1,20 +0,0 @@ -project = ContractsTests -runner = qcxiao -projectDir = src/test/java/ -sourcesDir = src/test/resources/ -templatesDir = src/main/resources/templates/ -logDir = autotest_log/ -dbLogUrl = http://localhost:8080/AutoTestPlats/logtest/ -runId=buildId:0:buildTaskId:0:buildTestSuiteId:0 -testSuiteType= -logType= -suiteMerged=true -logLevel= -encode=utf-8 -reportZip=true -casePriority= -caseRerunNum=0 -caseRunNum= -caseAssert=Y -plan= -website=TEST \ No newline at end of file diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/AutoTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/AutoTypeTest/test.xls deleted file mode 100644 index b2dd6a6e3f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/AutoTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/BasicDataIntegerTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/BasicDataIntegerTypeTest/test.xls deleted file mode 100644 index fa7583a9a1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/BasicDataIntegerTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/BasicDataTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/BasicDataTypeTest/test.xls deleted file mode 100644 index 6bf8bedea9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/BasicDataTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/BindFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/BindFunctionTest/test.xls deleted file mode 100644 index a214abdb46..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/BindFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/CallValueFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/CallValueFunctionTest/test.xls deleted file mode 100644 index 91edf3db13..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/CallValueFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/CallerFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/CallerFunctionTest/test.xls deleted file mode 100644 index 2bb478e351..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/CallerFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/CoinbaseFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/CoinbaseFunctionTest/test.xls deleted file mode 100644 index 82f2078365..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/CoinbaseFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ComputeDateTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ComputeDateTest/test.xls deleted file mode 100644 index 86631be3ae..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ComputeDateTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractAssertTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractAssertTest/test.xls deleted file mode 100644 index ad8143edad..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractAssertTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractBridgeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractBridgeTest/test.xls deleted file mode 100644 index e4669d46f2..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractBridgeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCheckStatusTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractCheckStatusTest/test.xls deleted file mode 100644 index 23634de062..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCheckStatusTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallBalanceTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallBalanceTest/test.xls deleted file mode 100644 index 1c040982e2..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallBalanceTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallFlagByRetTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallFlagByRetTest/test.xls deleted file mode 100644 index ff0a140e15..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallFlagByRetTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallOriginTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallOriginTypeTest/test.xls deleted file mode 100644 index 20e07165e8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallOriginTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallPPOSTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallPPOSTest/test.xls deleted file mode 100644 index b348854816..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallPPOSTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallPrecompileContractsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallPrecompileContractsTest/test.xls deleted file mode 100644 index 4ebb819309..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallPrecompileContractsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallStorageStrTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallStorageStrTest/test.xls deleted file mode 100644 index ed1717d27f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallStorageStrTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallStorageVecTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallStorageVecTest/test.xls deleted file mode 100644 index 7186dd7d03..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCrossCallStorageVecTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCypherBankTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractCypherBankTest/test.xls deleted file mode 100644 index 3b33ad8d43..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractCypherBankTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallFlagByRetTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallFlagByRetTest/test.xls deleted file mode 100644 index b145a78d1f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallFlagByRetTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallOriginTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallOriginTypeTest/test.xls deleted file mode 100644 index afba90f258..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallOriginTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallPPOSTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallPPOSTest/test.xls deleted file mode 100644 index b3d958068e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallPPOSTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallStorageStrTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallStorageStrTest/test.xls deleted file mode 100644 index 30ab4ac296..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallStorageStrTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallStorageVecTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallStorageVecTest/test.xls deleted file mode 100644 index ff5d252464..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDelegateCallStorageVecTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDistoryCheckBalanceTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractDistoryCheckBalanceTest/test.xls deleted file mode 100644 index e0b3e6286d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDistoryCheckBalanceTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDistoryTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractDistoryTest/test.xls deleted file mode 100644 index 8162205271..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDistoryTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDistoryTransferBalanceTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractDistoryTransferBalanceTest/test.xls deleted file mode 100644 index 3bd7029935..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDistoryTransferBalanceTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDistoryWithPermissionCheckTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractDistoryWithPermissionCheckTest/test.xls deleted file mode 100644 index 87a8921606..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractDistoryWithPermissionCheckTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent1ComplexParamTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent1ComplexParamTest/test.xls deleted file mode 100644 index fbf45f53ae..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent1ComplexParamTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent1Test/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent1Test/test.xls deleted file mode 100644 index 23f4bc1d5c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent1Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent2Test/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent2Test/test.xls deleted file mode 100644 index e8d3098615..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent2Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent3Test/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent3Test/test.xls deleted file mode 100644 index 60c7213c8d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent3Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent4Test/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent4Test/test.xls deleted file mode 100644 index c9ad5a454d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEvent4Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEventTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEventTest/test.xls deleted file mode 100644 index df3d99a06f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEventTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEventWithArrayTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEventWithArrayTest/test.xls deleted file mode 100644 index a1176d881f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractEmitEventWithArrayTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractFibonacciTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractFibonacciTest/test.xls deleted file mode 100644 index 69caf3a12e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractFibonacciTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractInnerFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractInnerFunctionTest/test.xls deleted file mode 100644 index 8b9a0f9738..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractInnerFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractInterfaceTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractInterfaceTest/test.xls deleted file mode 100644 index e4e895b35b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractInterfaceTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractLATTokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractLATTokenTest/test.xls deleted file mode 100644 index ec7e3ac14f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractLATTokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateBalanceTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateBalanceTest/test.xls deleted file mode 100644 index b97e8f2dc6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateBalanceTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateTypesTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateTypesTest/test.xls deleted file mode 100644 index b97e8f2dc6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateTypesTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateV1Test/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateV1Test/test.xls deleted file mode 100644 index 06fa850e40..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateV1Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateV2Test/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateV2Test/test.xls deleted file mode 100644 index ab031ff5c1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateV2Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateVariableTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateVariableTest/test.xls deleted file mode 100644 index b97e8f2dc6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractMigrateVariableTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractPanicTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractPanicTest/test.xls deleted file mode 100644 index 4072ec3bc0..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractPanicTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractPanicWithSmalllGasTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractPanicWithSmalllGasTest/test.xls deleted file mode 100644 index a8679d8a7d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractPanicWithSmalllGasTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractSimpleStorageTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractSimpleStorageTest/test.xls deleted file mode 100644 index 9ae988bea3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractSimpleStorageTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractTerminationTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractTerminationTest/test.xls deleted file mode 100644 index 702c8220f6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractTerminationTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractTimeoutTerminationTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractTimeoutTerminationTest/test.xls deleted file mode 100644 index d07daa8da3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractTimeoutTerminationTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractTweetAccountTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractTweetAccountTest/test.xls deleted file mode 100644 index eab6cf1e6f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractTweetAccountTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractTweetRegistryTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractTweetRegistryTest/test.xls deleted file mode 100644 index 717ddbd71e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractTweetRegistryTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ContractVIDTokenTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ContractVIDTokenTest/test.xls deleted file mode 100644 index 622f6f51e7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ContractVIDTokenTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/CreateContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/CreateContractTest/test.xls deleted file mode 100644 index 1dda4ba744..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/CreateContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/CrowdFundingTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/CrowdFundingTest/test.xls deleted file mode 100644 index 2769db9b03..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/CrowdFundingTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/CryptographicFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/CryptographicFunctionTest/test.xls deleted file mode 100644 index 2610ac0364..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/CryptographicFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/DonateTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/DonateTest/test.xls deleted file mode 100644 index 28ee5772a4..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/DonateTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/FunctionTemplateTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/FunctionTemplateTest/test.xls deleted file mode 100644 index 15221bdc86..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/FunctionTemplateTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/GasPriceTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/GasPriceTest/test.xls deleted file mode 100644 index 9110fb3ba6..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/GasPriceTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/GuessingWasmTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/GuessingWasmTest/test.xls deleted file mode 100644 index 40d24f5778..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/GuessingWasmTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/InitOverloadTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/InitOverloadTest/test.xls deleted file mode 100644 index 56a095cb30..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/InitOverloadTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/InitOverloadWithErrorBinaryTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/InitOverloadWithErrorBinaryTest/test.xls deleted file mode 100644 index 3d4df28b92..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/InitOverloadWithErrorBinaryTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/InitOverloadWithStringTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/InitOverloadWithStringTest/test.xls deleted file mode 100644 index 745fb159cb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/InitOverloadWithStringTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithArrayParamsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/InitWithArrayParamsTest/test.xls deleted file mode 100644 index 57470c6ca8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithArrayParamsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithListParamsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/InitWithListParamsTest/test.xls deleted file mode 100644 index 45db96c8a8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithListParamsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithMapParamsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/InitWithMapParamsTest/test.xls deleted file mode 100644 index ff6606f3b8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithMapParamsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithMapTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/InitWithMapTest/test.xls deleted file mode 100644 index 6ee598d0b2..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithMapTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithObjectParamsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/InitWithObjectParamsTest/test.xls deleted file mode 100644 index 60898e6bcc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithObjectParamsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithParamsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/InitWithParamsTest/test.xls deleted file mode 100644 index 95ac4b31c8..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithParamsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithSetParamsTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/InitWithSetParamsTest/test.xls deleted file mode 100644 index b8dbf3db87..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithSetParamsTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithStructTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/InitWithStructTest/test.xls deleted file mode 100644 index 826a35d507..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithStructTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithVectorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/InitWithVectorTest/test.xls deleted file mode 100644 index 3f12f0e075..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/InitWithVectorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/IntegerDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/IntegerDataTypeContractTest/test.xls deleted file mode 100644 index f01cd8a414..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/IntegerDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/MemoryCallocIntTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/MemoryCallocIntTest/test.xls deleted file mode 100644 index 252c62364a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/MemoryCallocIntTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/MemoryFunctionIntTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/MemoryFunctionIntTest/test.xls deleted file mode 100644 index cbd0baeef5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/MemoryFunctionIntTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/MemoryFunction_1Test/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/MemoryFunction_1Test/test.xls deleted file mode 100644 index a99375cbc1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/MemoryFunction_1Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/MemoryFunction_2Test/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/MemoryFunction_2Test/test.xls deleted file mode 100644 index 3b1b793e1c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/MemoryFunction_2Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/MemoryFunction_3Test/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/MemoryFunction_3Test/test.xls deleted file mode 100644 index 4062c882f4..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/MemoryFunction_3Test/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/MemoryReallocIntTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/MemoryReallocIntTest/test.xls deleted file mode 100644 index bde2a4c5eb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/MemoryReallocIntTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/MultiIndexContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/MultiIndexContractTest/test.xls deleted file mode 100644 index eed422cfea..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/MultiIndexContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/MultiSigWalletTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/MultiSigWalletTest/test.xls deleted file mode 100644 index a86a8bac0d..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/MultiSigWalletTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/NullPtrAndForTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/NullPtrAndForTest/test.xls deleted file mode 100644 index 59f3add3ef..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/NullPtrAndForTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/OOMExceptionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/OOMExceptionTest/test.xls deleted file mode 100644 index 396c5afbf9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/OOMExceptionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/OneInheritTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/OneInheritTest/test.xls deleted file mode 100644 index 943c6362e3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/OneInheritTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/OneInheritWithMultiDataTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/OneInheritWithMultiDataTypeTest/test.xls deleted file mode 100644 index 8205e7702c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/OneInheritWithMultiDataTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/OriginFunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/OriginFunctionTest/test.xls deleted file mode 100644 index 82b345989b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/OriginFunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/OverrideContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/OverrideContractTest/test.xls deleted file mode 100644 index 9ae940ed19..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/OverrideContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/PagingQueryTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/PagingQueryTest/test.xls deleted file mode 100644 index 387ee3a15e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/PagingQueryTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeArrayFuncTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeArrayFuncTest/test.xls deleted file mode 100644 index 6ed0b66249..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeArrayFuncTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeArrayTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeArrayTest/test.xls deleted file mode 100644 index f8c94a838b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeArrayTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeComplexContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeComplexContractTest/test.xls deleted file mode 100644 index 30dc8f48c4..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeComplexContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeContractTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeContractTest/test.xls deleted file mode 100644 index 34c5a55800..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeContractTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeLinklistTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeLinklistTest/test.xls deleted file mode 100644 index b556f0f6ed..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeLinklistTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeMapFuncTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeMapFuncTest/test.xls deleted file mode 100644 index 250a55f32a..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeMapFuncTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeMapTypeTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeMapTypeTest/test.xls deleted file mode 100644 index 3a49fbf9a4..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeMapTypeTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeSetTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeSetTest/test.xls deleted file mode 100644 index f2442682e3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeSetTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeStructMultipleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeStructMultipleTest/test.xls deleted file mode 100644 index 717c11b867..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeStructMultipleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeStructTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeStructTest/test.xls deleted file mode 100644 index 61f3168424..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeStructTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeTupleTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeTupleTest/test.xls deleted file mode 100644 index 57d2da84dc..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeTupleTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeVectorFuncTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeVectorFuncTest/test.xls deleted file mode 100644 index c4e5346172..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeVectorFuncTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeVectorTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeVectorTest/test.xls deleted file mode 100644 index abc0defc2e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ReferenceDataTypeVectorTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/Sha3FunctionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/Sha3FunctionTest/test.xls deleted file mode 100644 index 0dcfe7f7c1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/Sha3FunctionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/SolSimulationTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/SolSimulationTest/test.xls deleted file mode 100644 index 99ca15a15b..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/SolSimulationTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/SpecialFunctionsATest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/SpecialFunctionsATest/test.xls deleted file mode 100644 index a72d0c5ef9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/SpecialFunctionsATest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/SpecialFunctionsBTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/SpecialFunctionsBTest/test.xls deleted file mode 100644 index cd106774a9..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/SpecialFunctionsBTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/ThreeInheritTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/ThreeInheritTest/test.xls deleted file mode 100644 index da14d1b0e1..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/ThreeInheritTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/TwoInheritTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/TwoInheritTest/test.xls deleted file mode 100644 index 150b0cc4fe..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/TwoInheritTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/TypeConversionTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/TypeConversionTest/test.xls deleted file mode 100644 index 76b2d057a7..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/TypeConversionTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/WASMBubbleSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/WASMBubbleSortTest/test.xls deleted file mode 100644 index 435641f614..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/WASMBubbleSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/WASMGeneratorPreTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/WASMGeneratorPreTest/test.xls deleted file mode 100644 index 823f8738e5..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/WASMGeneratorPreTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/WASMHeapSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/WASMHeapSortTest/test.xls deleted file mode 100644 index f5e25b4292..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/WASMHeapSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/WASMInsertSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/WASMInsertSortTest/test.xls deleted file mode 100644 index a0cb47158f..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/WASMInsertSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/WASMLoopCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/WASMLoopCallTest/test.xls deleted file mode 100644 index 15a2ae38b3..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/WASMLoopCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/WASMMergeSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/WASMMergeSortTest/test.xls deleted file mode 100644 index 31429193cb..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/WASMMergeSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/WASMQuickSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/WASMQuickSortTest/test.xls deleted file mode 100644 index dc1815f61c..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/WASMQuickSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/WASMRadixSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/WASMRadixSortTest/test.xls deleted file mode 100644 index 19424ada37..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/WASMRadixSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/WASMRecursionCallTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/WASMRecursionCallTest/test.xls deleted file mode 100644 index 680bd38233..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/WASMRecursionCallTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/wasm/WASMShellSortTest/test.xls b/cases/ContractsAutoTests/src/test/resources/wasm/WASMShellSortTest/test.xls deleted file mode 100644 index 9c1a2c2c3e..0000000000 Binary files a/cases/ContractsAutoTests/src/test/resources/wasm/WASMShellSortTest/test.xls and /dev/null differ diff --git a/cases/ContractsAutoTests/src/test/resources/website.properties b/cases/ContractsAutoTests/src/test/resources/website.properties deleted file mode 100644 index f6415dfc15..0000000000 --- a/cases/ContractsAutoTests/src/test/resources/website.properties +++ /dev/null @@ -1,110 +0,0 @@ - -#TEST.nodeUrl=http://10.1.1.1:8801 -#TEST.privateKey=e13ebe4242500201e1bbfcd3372176e05f282595326727c8d4dcfc83daeb40fe -#TEST.chainId=100 -#TEST.address=0x54a7a3c6822eb222c53F76443772a60b0f9A8bab - - -# 平行测试网EVM回归 -#TEST.nodeUrl=http://10.10.8.199:6789 -#TEST.privateKey=c60d1b853806d75d3a1c53243e818458038234cd2b58f3ddd5edc2ef09f75635 -#TEST.chainId=299 -#TEST.address=0x79dAA881CAb1f73B3ceef5dB1869231B416D6dD9 - - -# release0.8.0 -#TEST.nodeUrl=http://10.1.1.1:8801 -#TEST.privateKey=c60d1b853806d75d3a1c53243e818458038234cd2b58f3ddd5edc2ef09f75635 -#TEST.chainId=100 -#TEST.address=0x79dAA881CAb1f73B3ceef5dB1869231B416D6dD9 - -# WASM双虚拟机版本 -#TEST.nodeUrl=http://10.1.1.6:8806 -#TEST.privateKey=c60d1b853806d75d3a1c53243e818458038234cd2b58f3ddd5edc2ef09f75635 -#TEST.chainId=100 -#TEST.address=0x79dAA881CAb1f73B3ceef5dB1869231B416D6dD9 - -# 4.1 平行测试网 -# TEST.nodeUrl=http://10.10.8.199:6789 -# TEST.privateKey=c60d1b853806d75d3a1c53243e818458038234cd2b58f3ddd5edc2ef09f75635 -# TEST.chainId=299 -# TEST.address=0x79dAA881CAb1f73B3ceef5dB1869231B416D6dD9 - - -# 4.23 平行测试网 -# TEST.nodeUrl=http://10.10.8.191:6789 -# TEST.privateKey=c60d1b853806d75d3a1c53243e818458038234cd2b58f3ddd5edc2ef09f75635 -# TEST.chainId=298 -# TEST.address=0x79dAA881CAb1f73B3ceef5dB1869231B416D6dD9 - -# 7.1 平行测试网 -#TEST.nodeUrl=http://10.10.8.191:6789 -#TEST.privateKey=0x983759fe9aac227c535b21d78792d79c2f399b1d43db46ae6d50a33875301557 -#TEST.chainId=298 -#TEST.address=lax1uqug0zq7rcxddndleq4ux2ft3tv6dqljphydrl - -# 7.8 -#TEST.nodeUrl=http://192.168.10.221:6789 -#TEST.privateKey=0x94afa3c5a96c90f662e82dbeab7629a312eb7b524b7238f068dbc13824a4d8c1 -#TEST.chainId=101 -#TEST.address=lax1k3tsuuhe8wc5kuev3u65c59gku8us0lj7rra93 - - -# 联盟链4节点 -# TEST.nodeUrl=http://10.1.1.5:6789 -# TEST.privateKey=0xb7a7372e78160f71a1a75e03c4aa72705806a05cf14ef39c87fdee93d108588c -# TEST.chainId=200 -# TEST.address=lax1yjjzvjph3tw4h2quw6mse25y492xy7fzwdtqja - -# 4.28并行交易 -#TEST.nodeUrl=http://10.1.1.25:8801 -#TEST.privateKey=c60d1b853806d75d3a1c53243e818458038234cd2b58f3ddd5edc2ef09f75635 -#TEST.chainId=100 -#TEST.address=0x79dAA881CAb1f73B3ceef5dB1869231B416D6dD9 - -# 0.13.1 -#TEST.nodeUrl=http://10.1.1.2:6789 -#TEST.privateKey=0x983759fe9aac227c535b21d78792d79c2f399b1d43db46ae6d50a33875301557 -#TEST.chainId=102 -#TEST.address=lax1uqug0zq7rcxddndleq4ux2ft3tv6dqljphydrl - -#TEST.nodeUrl=http://192.168.10.221:6789 -#TEST.privateKey=b0eb30b2344f014ad7ea300e9871a971c7f864f8d5da59313f32d74a2677ed72 -#TEST.chainId=101 -#TEST.address=lax1j7sh2jrkmpdf8x3p8dwgyrz9tapp9wwspsw5yj - -# TEST.nodeUrl= http://10.1.1.11:7008 -# TEST.privateKey=c60d1b853806d75d3a1c53243e818458038234cd2b58f3ddd5edc2ef09f75635 -# TEST.chainId=100 -# TEST.address=0x79dAA881CAb1f73B3ceef5dB1869231B416D6dD9 - - -# TEST.nodeUrl=http://10.1.1.1:8801 -# TEST.privateKey=f7b60fce6ae799ed1fe1e698d384bc59c9e5d36784dc69c6aacb61148bb9d193 -# TEST.chainId=100 -# TEST.address=0x7E4980211c513aE0f5ABDCfcD509Ae7B27b862DF - - -# 3.26、3.31回归 -#TEST.nodeUrl=http://10.10.8.200:6789 -#TEST.privateKey=e13ebe4242500201e1bbfcd3372176e05f282595326727c8d4dcfc83daeb40fe -#TEST.chainId=100 -#TEST.address=0x54a7a3c6822eb222c53F76443772a60b0f9A8bab - -#TEST.nodeUrl=http://10.1.1.11:7008 -#TEST.privateKey=f7b60fce6ae799ed1fe1e698d384bc59c9e5d36784dc69c6aacb61148bb9d193 -#TEST.chainId=100 -#TEST.address=0x7E4980211c513aE0f5ABDCfcD509Ae7B27b862DF - - -# WASM回归2.27、3.14 -#TEST.nodeUrl=http://192.168.120.121:6789 -#TEST.privateKey=e13ebe4242500201e1bbfcd3372176e05f282595326727c8d4dcfc83daeb40fe -#TEST.chainId=100 -#TEST.address=0x54a7a3c6822eb222c53F76443772a60b0f9A8bab - -#0.13.2alaya -TEST.nodeUrl=http://192.168.9.222:6789 -TEST.privateKey=0xf51ca759562e1daf9e5302d121f933a8152915d34fcbc27e542baf256b5e4b74 -TEST.chainId=201030 -TEST.address=atx1zkrxx6rf358jcvr7nruhyvr9hxpwv9unj58er9 diff --git "a/cases/ContractsAutoTests/\345\205\270\345\236\213\345\234\272\346\231\257\346\265\213\350\257\225.md" "b/cases/ContractsAutoTests/\345\205\270\345\236\213\345\234\272\346\231\257\346\265\213\350\257\225.md" deleted file mode 100644 index d877fb2b62..0000000000 --- "a/cases/ContractsAutoTests/\345\205\270\345\236\213\345\234\272\346\231\257\346\265\213\350\257\225.md" +++ /dev/null @@ -1,35 +0,0 @@ -# 典型场景测试 -> 前提:gasLimit设置为默认的4712388 - -## 1 简单循环调用场景 -### 1.1 源码 -```solidity -pragma solidity ^0.5.13; -contract LoopCall { - uint sum; - function loopCallTest(uint n) public { - for(uint i=0;i int: - if not os.path.exists(file): - raise Exception("file is not exists") - return int(os.path.getctime(file)) - - -def calc_hash(file): - with open(file, 'rb') as f: - sha1obj = hashlib.sha1() - sha1obj.update(f.read()) - result_hash = sha1obj.hexdigest() - return result_hash - - -if __name__ == "__main__": - calc_hash(r"D:\python\PlatON-Tests\deploy\bin\platon") diff --git a/cases/common/log.py b/cases/common/log.py deleted file mode 100644 index c3bdc9c3f0..0000000000 --- a/cases/common/log.py +++ /dev/null @@ -1,38 +0,0 @@ -import logging -import os -import time -from logging import handlers - -from conf.settings import BASE_DIR, RUN_LOG_LEVEL - - -class Logger(object): - level_relations = { - 'debug': logging.DEBUG, - 'info': logging.INFO, - 'warning': logging.WARNING, - 'error': logging.ERROR, - 'crit': logging.CRITICAL - } - - def __init__(self, filename, level='info', fmt="[%(asctime)s]-%(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s"): - self.logger = logging.getLogger(filename) - log_format = logging.Formatter(fmt) - self.logger.setLevel(self.level_relations.get(level)) - sh = logging.StreamHandler() - sh.setFormatter(log_format) - file = handlers.WatchedFileHandler(filename, encoding='UTF-8') - file.setFormatter(log_format) - self.logger.addHandler(sh) - self.logger.addHandler(file) - - -def setup_logger(logfile, loglevel): - log = Logger(logfile, level=loglevel) - return log - - -if not os.path.exists('{}/log'.format(BASE_DIR)): - os.makedirs('{}/log'.format(BASE_DIR)) -log = setup_logger('{}/log/{}.log'.format(BASE_DIR, str( - time.strftime("%Y-%m-%d", time.localtime()))), RUN_LOG_LEVEL).logger diff --git a/cases/conf/__init__.py b/cases/conf/__init__.py deleted file mode 100644 index 40a96afc6f..0000000000 --- a/cases/conf/__init__.py +++ /dev/null @@ -1 +0,0 @@ -# -*- coding: utf-8 -*- diff --git a/cases/conf/settings.py b/cases/conf/settings.py deleted file mode 100644 index ddd56324aa..0000000000 --- a/cases/conf/settings.py +++ /dev/null @@ -1,49 +0,0 @@ -import os - -# PlatON-Tests path -BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) - -# server deployment node path -DEPLOY_PATH = r"trantor_test" - -# script run log level -RUN_LOG_LEVEL = "info" - -# local must file -PLATON_BIN_FILE = os.path.abspath(os.path.join(BASE_DIR, "deploy/bin/platon")) -GENESIS_FILE = os.path.abspath(os.path.join(BASE_DIR, "deploy/template/genesis_template.json")) -CONFIG_JSON_FILE = os.path.abspath(os.path.join(BASE_DIR, "deploy/template/config_template.json")) -STATIC_NODE_FILE = os.path.abspath(os.path.join(BASE_DIR, 'deploy/template/static-nodes.json')) -SUPERVISOR_FILE = os.path.abspath(os.path.join(BASE_DIR, "deploy/template/supervisor_template.conf")) -ADDRESS_FILE = os.path.abspath( - os.path.join(BASE_DIR, 'deploy/template/UTC--2019-08-23T12-33-18.192329788Z--2e95e3ce0a54951eb9a99152a6d5827872dfb4fd')) -ACCOUNT_FILE = os.path.abspath(os.path.join(BASE_DIR, "deploy/accounts.yml")) -LOG_FILE = os.path.abspath(os.path.join(BASE_DIR, "deploy/tmp/platon.log")) - -# cache file root directory -LOCAL_TMP_FILE_ROOT_DIR = os.path.abspath(os.path.join(BASE_DIR, "deploy/tmp")) -# LOCAL_TMP_FILE_FOR_NODE = os.path.abspath(os.path.join(LOCAL_TMP_FILE_ROOT_DIR, "node")) -# LOCAL_TMP_FILE_FOR_SERVER = os.path.abspath(os.path.join(LOCAL_TMP_FILE_ROOT_DIR, "server")) -# LOCAL_TMP_FILE_FOR_ENV = os.path.abspath(os.path.join(LOCAL_TMP_FILE_ROOT_DIR, "env")) -# LOCAL_TMP_FILE_FOR_GNENESIS = os.path.abspath(os.path.join(LOCAL_TMP_FILE_ROOT_DIR, "genesis.json")) - - -# cache directory configuration -class ConfTmpDir: - def __init__(self, dir): - self.dir = dir - self.tmp_root_path = os.path.abspath(os.path.join(LOCAL_TMP_FILE_ROOT_DIR, dir)) - if not os.path.exists(self.tmp_root_path): - os.makedirs(self.tmp_root_path) - self.GENESIS_FILE = os.path.abspath(os.path.join(self.tmp_root_path, "genesis.json")) - self.CONFIG_JSON_FILE = os.path.abspath(os.path.join(self.tmp_root_path, "config.json")) - self.STATIC_NODE_FILE = os.path.abspath(os.path.join(self.tmp_root_path, 'static-nodes.json')) - self.LOCAL_TMP_FILE_FOR_NODE = os.path.abspath(os.path.join(self.tmp_root_path, 'node')) - self.LOCAL_TMP_FILE_FOR_SERVER = os.path.abspath(os.path.join(self.tmp_root_path, 'server')) - self.LOCAL_TMP_FILE_FOR_ENV = os.path.abspath(os.path.join(self.tmp_root_path, 'env')) - - -# directory cache configuration -DEFAULT_CONF_TMP_DIR = ConfTmpDir("global") - -NODE_FILE = os.path.abspath(os.path.join(BASE_DIR, "deploy/node/ppos_4_4_wyq1.yml")) diff --git a/cases/conftest.py b/cases/conftest.py deleted file mode 100644 index 0e85bc288a..0000000000 --- a/cases/conftest.py +++ /dev/null @@ -1,133 +0,0 @@ -import pytest -import socket -import allure -import os -import sys -from common import download -from environment.env import create_env -from common.log import log - -""" -Download platon bin, this file cannot be imported as a package -""" -if len(sys.argv) > 1 and ("--platonUrl" in sys.argv or "--platonUrl=" in "".join(sys.argv)): - i = 0 - url = None - for arg in sys.argv: - if "--platonUrl" == arg: - url = sys.argv[i + 1] - break - elif "--platonUrl=" in arg: - url = arg.split("=")[1] - break - i += 1 - if url is None: - raise Exception("URL IS NONE") - download.download_platon(url) - - -def set_report_env(allure_dir, env): - node = env.get_rand_node() - version_info_list = node.run_ssh("{} version".format(node.remote_bin_file)) - version_info = "".join(version_info_list).replace(" ", "").replace("Platon\n", "") - allure_dir_env = os.path.join(allure_dir, "environment.properties") - consensus_node = "ConsensusNodes:{}\n".format("|><|".join([node.node_mark for node in env.consensus_node_list])) - normal_node = "NormalNodes:{}\n".format("|><|".join([node.node_mark for node in env.normal_node_list])) - env_id = "TestEnvironmentID:{}\n".format(env.cfg.env_id) - with open(allure_dir_env, "w", encoding="UTF-8")as f: - f.write(version_info) - f.write(consensus_node) - f.write(normal_node) - f.write(env_id) - - -@pytest.fixture(scope="module") -def consensus_test_env(global_test_env): - with open("/etc/passwd") as f: - yield f.readlines() - - -def pytest_addoption(parser): - parser.addoption("--job", action="store", help="job: ci run job id") - parser.addoption("--tmpDir", action="store", help="tmpDir: tmp dir, default in deploy/tmp/global") - parser.addoption("--platonUrl", action="store", help="platonUrl: url to download platon bin") - parser.addoption("--nodeFile", action="store", help="nodeFile: the node config file") - parser.addoption("--accountFile", action="store", help="accountFile: the accounts file") - parser.addoption("--initChain", action="store_true", default=True, dest="initChain", help="nodeConfig: default to init chain data") - parser.addoption("--installDependency", action="store_true", default=False, dest="installDependency", help="installDependency: default do not install dependencies") - parser.addoption("--installSupervisor", action="store_true", default=False, dest="installSuperVisor", help="installSupervisor: default do not install supervisor service") - parser.addoption("--cantDeploy", action="store_true", default=False, dest="cantDeploy", help="deploy switch default to can deploy") - -# pytest 'tests/example/test_step.py' --nodeFile "deploy/node/debug_4_4.yml" --accountFile "deploy/accounts.yml" --alluredir="report/allure" -# --reruns 3 -@pytest.fixture(scope="session", autouse=False) -def global_test_env(request, worker_id): - log.info("start global_test_env>>>>>>>>>>>>>>") - tmp_dir = request.config.getoption("--tmpDir") - node_file = request.config.getoption("--nodeFile") - account_file = request.config.getoption("--accountFile") - init_chain = request.config.getoption("--initChain") - install_dependency = request.config.getoption("--installDependency") - install_supervisor = request.config.getoption("--installSupervisor") - cant_deploy = request.config.getoption("--cantDeploy") - # platon_url = request.config.getoption("--platonUrl") - allure_dir = request.config.getoption("--alluredir") - log.info(node_file) - if worker_id != "master": - if not node_file: - raise Exception("The number of configuration files must be equal to the number of threads") - node_file_list = node_file.split(",") - for i in range(len(node_file_list)): - if str(i) in worker_id: - node_file = node_file_list[i] - log.info("Session with nodeFile:{}".format(node_file_list[i])) - tmp_dir = str(tmp_dir) + worker_id - # if platon_url: - # download.download_platon(platon_url) - env = create_env(tmp_dir, node_file, account_file, init_chain, install_dependency, install_supervisor, can_deploy=not cant_deploy) - # Must choose one, don't use both - env.deploy_all() - # env.prepare_all() - yield env - - if allure_dir: - set_report_env(allure_dir, env) - - # delete env and close env - # env.shutdown() - - -@pytest.hookimpl(tryfirst=True, hookwrapper=True) -def pytest_runtest_makereport(item, call): - # execute all other hooks to obtain the report object - outcome = yield - rep = outcome.get_result() - # we only look at actual failing test calls, not setup/teardown - if rep.when == "call" and not rep.passed: - - if 'global_test_env' in item.fixturenames: - # download log in here - try: - log_name = item.funcargs["global_test_env"].backup_all_logs(item.name) - job = item.funcargs["request"].config.getoption("--job") - if job is None: - log_url = os.path.join(item.funcargs["global_test_env"].cfg.bug_log, log_name) - else: - log_url = "http://{}:8080/job/PlatON/job/run/{}/artifact/logs/{}".format(socket.gethostbyname(socket.gethostname()), job, log_name) - allure.attach('{}'.format(log_url), 'env log', allure.attachment_type.URI_LIST) - except Exception as e: - log.info("exception:{}".format(e)) - # Record block number - try: - if item.funcargs["global_test_env"].running: - env_status = "node blocks:{}".format(item.funcargs["global_test_env"].block_numbers()) - - else: - env_status = "node runnings:{}".format(["{}:{}".format(node.node_mark, node.running) for node in - item.funcargs["global_test_env"].get_all_nodes()]) - log.info(env_status) - allure.attach(env_status, "env status", allure.attachment_type.TEXT) - except Exception as e: - log.info("get block exception:{}".format(e)) - else: - log.error("This case does not use global_test_env") diff --git a/cases/deploy/README.md b/cases/deploy/README.md deleted file mode 100644 index 57bb497063..0000000000 --- a/cases/deploy/README.md +++ /dev/null @@ -1,48 +0,0 @@ -# deploy - -部署节点的相关依赖 - -### 1.node:用于存放部署节点的配置文件,格式说明如下 - -```yml -consensus: # 共识节点,有时必填 -- host: 10.10.8.236 # 节点ip,必填 - username: juzhen # 节点机器账户,必填 - password: Platon123! # 节点机器密码,必填 - id: 5b068ef1cfeef626d9ad131d08b889002a2f5c7306ff34c3032ad04fcc92fd234d0c7272014068eb998dae2abfe9f10271ed6731963b1cf22ec944abd8fb0f9e # 节点公钥,非必填,最好不填 - nodekey: 3314532da43158885d8db07e0b25dc0c194c8382c4fa5ce8c28a0b7c86cdec16 # 节点私钥,非必填,最好不填,需要与公钥对应 - blspubkey: e3797fad1041ecbd0b91b444de1f063ab74849a0fffa9fa9565ca2b0f78a1420a036d529be9f81576bcb836653436ac0e6eb91143b2e04cb1b0dc93da3ddf893 # bls公钥,必填 - blsprikey: e4c7bb7918e474bff76b07361ec44b2d613fb9cfb58a296a90bcfbf7bace491f # bls私钥,必填 - port: 16789 # p2p端口,非必填,最好填 - rpcport: 6789 # rpc端口,非必填,最好填 - url: http://10.10.8.236:6789 # rpc url,非必填,最好不填 - wsport: 6790 # ws端口,非必填,填了才会开ws - wsurl: ws://10.10.8.236:6790 # ws url,非必填,与wsport匹配,最好不填 -- host: 10.10.8.237 - username: - password: - id: - nodekey: - port: - rpcport: - url: -noconsensus: # 非共识节点,有时必填 -- host: 10.10.8.239 - username: - password: - protocol: - id: - nodekey: - port: - rpcport: - url: - ``` - - -### 2.bin:platon二进制文件,有改动时需要更新。 - -### 3.template:文件模板。 - -### 4.tmp:用于存放测试过程中新生成的文件。 - - diff --git a/cases/deploy/accounts.yml b/cases/deploy/accounts.yml deleted file mode 100644 index 55ee1c2d19..0000000000 --- a/cases/deploy/accounts.yml +++ /dev/null @@ -1,15 +0,0 @@ -- id: 1 - address: atx1zkrxx6rf358jcvr7nruhyvr9hxpwv9unj58er9 - prikey: f51ca759562e1daf9e5302d121f933a8152915d34fcbc27e542baf256b5e4b74 - nonce: 1 - balance: 100000000000000000000000000 -- id: 2 - address: atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr75cqxf - prikey: 6382b6fc972ae9c22a2d8913dace308d09e406d118efddb702a7ea9e505cc823 - nonce: 0 - balance: 2000000000000000000000000 -- id: 3 - address: atx1ur2hg0u9wt5qenmkcxlp7ysvaw6yupt4xerq62 - prikey: 64bc85af4fa0e165a1753b762b1f45017dd66955e2f8eea00333db352198b77e - nonce: 0 - balance: 0 \ No newline at end of file diff --git a/cases/deploy/key.pri b/cases/deploy/key.pri deleted file mode 100644 index 9d4192b119..0000000000 --- a/cases/deploy/key.pri +++ /dev/null @@ -1 +0,0 @@ -864131ab44e095ee455735dfed32f815d2259be6a54533c99afffde05b949421 \ No newline at end of file diff --git a/cases/deploy/key.pri_2 b/cases/deploy/key.pri_2 deleted file mode 100644 index 7fb1f67af1..0000000000 --- a/cases/deploy/key.pri_2 +++ /dev/null @@ -1 +0,0 @@ -648ee7ceed5ca4dda23aa19d6d1d11f532ee789351c923d9a673425573cfac4a \ No newline at end of file diff --git a/cases/deploy/key.pri_3 b/cases/deploy/key.pri_3 deleted file mode 100644 index 1435df838e..0000000000 --- a/cases/deploy/key.pri_3 +++ /dev/null @@ -1 +0,0 @@ -b2e5b14929c8c4938c8626c8d17c20b0e1419cdc504ffc3ab192fbebf38d478e \ No newline at end of file diff --git a/cases/deploy/key.pri_4 b/cases/deploy/key.pri_4 deleted file mode 100644 index 29580c68d7..0000000000 --- a/cases/deploy/key.pri_4 +++ /dev/null @@ -1 +0,0 @@ -879c6e187eea55241a5f9790bd0329c0e285aaee002df8d08ab8470d7cc0885f \ No newline at end of file diff --git a/cases/deploy/keystore/UTC--2019-10-15T10-27-31.520865283Z--c198603d3793c11e5362c8564a65d3880bae341b b/cases/deploy/keystore/UTC--2019-10-15T10-27-31.520865283Z--c198603d3793c11e5362c8564a65d3880bae341b deleted file mode 100644 index db04f006e9..0000000000 --- a/cases/deploy/keystore/UTC--2019-10-15T10-27-31.520865283Z--c198603d3793c11e5362c8564a65d3880bae341b +++ /dev/null @@ -1 +0,0 @@ -{"address":{"mainnet":"atp1zkrxx6rf358jcvr7nruhyvr9hxpwv9uncjmns0","testnet":"atx1zkrxx6rf358jcvr7nruhyvr9hxpwv9unj58er9"},"id":"52c37321-f094-4763-b393-b85b51f1b70f","version":3,"crypto":{"cipher":"aes-128-ctr","ciphertext":"8f857d6634f48abc9bda771f9fbdb289aa00fb60352f907fb1b7ef408a9982af","cipherparams":{"iv":"36623975d10cc11d0fec275542b6807c"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":16384,"p":1,"r":8,"salt":"417e64e6e850fffa1ff2e7154788415567f4a1a7db4f1d031bd38217751aa138"},"mac":"afa9b8ed12ae8958132bc88dba05dd8a34996fce1e7e7491574660d7d3cc1942"}} \ No newline at end of file diff --git a/cases/deploy/keystore/password.txt b/cases/deploy/keystore/password.txt deleted file mode 100644 index 384a89f1f1..0000000000 --- a/cases/deploy/keystore/password.txt +++ /dev/null @@ -1 +0,0 @@ -88888888 \ No newline at end of file diff --git a/cases/deploy/template/UTC--2019-08-23T12-33-18.192329788Z--2e95e3ce0a54951eb9a99152a6d5827872dfb4fd b/cases/deploy/template/UTC--2019-08-23T12-33-18.192329788Z--2e95e3ce0a54951eb9a99152a6d5827872dfb4fd deleted file mode 100644 index db04f006e9..0000000000 --- a/cases/deploy/template/UTC--2019-08-23T12-33-18.192329788Z--2e95e3ce0a54951eb9a99152a6d5827872dfb4fd +++ /dev/null @@ -1 +0,0 @@ -{"address":{"mainnet":"atp1zkrxx6rf358jcvr7nruhyvr9hxpwv9uncjmns0","testnet":"atx1zkrxx6rf358jcvr7nruhyvr9hxpwv9unj58er9"},"id":"52c37321-f094-4763-b393-b85b51f1b70f","version":3,"crypto":{"cipher":"aes-128-ctr","ciphertext":"8f857d6634f48abc9bda771f9fbdb289aa00fb60352f907fb1b7ef408a9982af","cipherparams":{"iv":"36623975d10cc11d0fec275542b6807c"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":16384,"p":1,"r":8,"salt":"417e64e6e850fffa1ff2e7154788415567f4a1a7db4f1d031bd38217751aa138"},"mac":"afa9b8ed12ae8958132bc88dba05dd8a34996fce1e7e7491574660d7d3cc1942"}} \ No newline at end of file diff --git a/cases/deploy/template/UTC--2019-10-15T10-27-31.520865283Z--c198603d3793c11e5362c8564a65d3880bae341b b/cases/deploy/template/UTC--2019-10-15T10-27-31.520865283Z--c198603d3793c11e5362c8564a65d3880bae341b deleted file mode 100644 index 279dbc40f3..0000000000 --- a/cases/deploy/template/UTC--2019-10-15T10-27-31.520865283Z--c198603d3793c11e5362c8564a65d3880bae341b +++ /dev/null @@ -1 +0,0 @@ -{"address": {"mainnet": "lat1785psd0qs0g8p79j54mnewh0ndwcvqq680rcfc", "testnet": "lax1785psd0qs0g8p79j54mnewh0ndwcvqq6g23h8h"}, "crypto": {"cipher": "aes-128-ctr", "cipherparams": {"iv": "48e3f9a33ad6de9c06152359e1be7d42"}, "ciphertext": "9e6750370ce0a94ecceb841c8d64267e4f9ca22dfecdc518f1f9e0af63716f76", "kdf": "scrypt", "kdfparams": {"dklen": 32, "n": 262144, "r": 1, "p": 8, "salt": "7d222d34fbcfcd3457235478a91042b5"}, "mac": "3f20356364e7f7b37d007b8d65875dab86358197384875a2c3d530b5ec595442"}, "id": "7675b604-8cce-4e88-a01e-d8c64a90bae5", "version": 3} \ No newline at end of file diff --git a/cases/deploy/template/config_template.json b/cases/deploy/template/config_template.json deleted file mode 100644 index f3659c2e55..0000000000 --- a/cases/deploy/template/config_template.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "eth":{ - "SyncMode": "full", - "NetworkId": 1, - "LightServ": 0, - "LightPeers": 100, - "SkipBcVersionCheck":false, - "DatabaseHandles": 0, - "DatabaseCache": 768, - "NoPruning": false, - "TrieCache": 256, - "TrieTimeout": 3600000000000, - "BodyCacheLimit": 256, - "BlockCacheLimit": 256, - "MaxFutureBlocks": 256, - "BadBlockLimit": 10, - "TriesInMemory": 128, - "BlockChainVersion": 3, - "SoftResponseLimit": 2097152, - "EstHeaderRlpSize": 500, - "DefaultTxsCacheSize":20, - "DefaultBroadcastInterval":100000000, - "MinerGasPrice": 100000000, - "MinerRecommit": 3000000000, - "MinerNoverify": false, - "MiningLogAtDepth": 7, - "TxChanSize": 4096, - "ChainHeadChanSize": 10, - "ChainSideChanSize": 10, - "ResultQueueSize": 10, - "ResubmitAdjustChanSize": 10, - "MinRecommitInterval": 1000000, - "MaxRecommitInterval": 15000000, - "IntervalAdjustRatio": 0.1, - "IntervalAdjustBias": 200000000.0, - "StaleThreshold": 7, - "DefaultCommitRatio": 0.95, - "TxPool":{ - "NoLocals": false, - "Journal": "transactions.rlp", - "Rejournal": 3600000000000, - "PriceLimit": 1, - "PriceBump": 10, - "AccountSlots": 16, - "GlobalSlots": 4096, - "AccountQueue": 64, - "GlobalQueue": 1024, - "GlobalTxCount": 3000, - "Lifetime": 10800000000000, - "ChainHeadChanSize": 250, - "TxExtBufferSize": 4096 - }, - "GPO":{ - "Blocks": 20, - "Percentile": 60, - "Default": 100000000, - "MaxPrice": 500000000000 - }, - "EnablePreimageRecording":false, - "DocRoot": "", - "EWASMInterpreter": "", - "EVMInterpreter": "", - "Debug": false - }, - "shh":{ - "MaxMessageSize": 1048576, - "MinimumAcceptedPOW": 0.2, - "RestrictConnectionBetweenLightClients": true - }, - "node":{ - "Name": "platon", - "UserIdent": "", - "Version": "0.7.0-stable", - "DataDir": "", - "KeyStoreDir": "", - "UseLightweightKDF":false, - "NoUSB": false, - "IPCPath": "platon.ipc", - "HTTPHost": "", - "HTTPPort": 6789, - "HTTPCors": [], - "HTTPModules": ["net","web3","eth","ssh"], - "HTTPVirtualHosts": ["localhost"], - "HTTPTimeouts": { - "ReadTimeout": 30000000000, - "WriteTimeout": 30000000000, - "IdleTimeout": 120000000000 - }, - "WSHost": "", - "WSPort": 6790, - "WSOrigins": [], - "WSExposeAll": false, - "WSModules": ["net","web3","eth","ssh"], - "P2P":{ - "MaxPeers": 50, - "MaxConsensusPeers": 75, - "MaxPendingPeers":0, - "DialRatio": 0, - "NoDiscovery": false, - "DiscoveryV5": false, - "Name": "", - "BootstrapNodes":[], - "BootstrapNodesV5":[], - "StaticNodes":[], - "TrustedNodes":[], - "NodeDatabase": "", - "ListenAddr": "16789", - "NoDial": false, - "EnableMsgEvents": false - } - }, - "Ethstats":{ - "URL":"" - }, - "Dashboard":{ - "Host": "localhost", - "Port": 8080, - "Refresh": 5000000000 - } -} \ No newline at end of file diff --git a/cases/deploy/template/genesis_template.json b/cases/deploy/template/genesis_template.json deleted file mode 100644 index 201dc07a5b..0000000000 --- a/cases/deploy/template/genesis_template.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "config": { - "chainId": 201030, - "eip155Block": 3, - "cbft": { - "initialNodes": [ - ], - "amount": 10, - "period": 10000, - "validatorMode": "ppos" - }, - "genesisVersion": 3584 - }, - "economicModel": { - "common": { - "maxEpochMinutes": 3, - "maxConsensusVals": 4, - "additionalCycleTime": 28 - }, - "staking": { - "stakeThreshold": 10000000000000000000000, - "operatingThreshold": 1000000000000000000, - "maxValidators": 5, - "unStakeFreezeDuration": 2, - "rewardPerMaxChangeRange": 1000, - "rewardPerChangeInterval": 2 - }, - "slashing": { - "slashFractionDuplicateSign": 100, - "duplicateSignReportReward": 50, - "slashBlocksReward": 5, - "maxEvidenceAge": 1, - "zeroProduceCumulativeTime": 1, - "zeroProduceNumberThreshold": 1, - "zeroProduceFreezeDuration":1 - }, - "gov": { - "versionProposalVoteDurationSeconds": 1600, - "versionProposalSupportRate": 6670, - "textProposalVoteDurationSeconds": 160, - "textProposalVoteRate": 5000, - "textProposalSupportRate": 6670, - "cancelProposalVoteRate": 5000, - "cancelProposalSupportRate": 6670, - "paramProposalVoteDurationSeconds": 160, - "paramProposalVoteRate": 5000, - "paramProposalSupportRate": 6670 - }, - "reward": { - "newBlockRate": 50, - "platONFoundationYear": 2, - "increaseIssuanceRatio": 500 - }, - "restricting": { - "minimum_release": 80000000000000000000 - }, - "innerAcc": { - "platonFundAccount": "atx1m6n2wj6cmnnqnmhhaytyf6x75607t7rhszeuhk", - "platonFundBalance": 2500000000000000000000000, - "cdfAccount": "atx1ur2hg0u9wt5qenmkcxlp7ysvaw6yupt4xerq62", - "cdfBalance": 500000000000000000000000 - } - }, - "nonce": "0x0376e56dffd12ab53bb149bda4e0cbce2b6aabe4cccc0df0b5a39e12977a2fcd23", - "timestamp": "0x175301efa90", - "extraData": "0xd782070186706c61746f6e86676f312e3131856c696e757800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "gasLimit": "9424776", - "alloc": { - - }, - "number": "0x0", - "gasUsed": "0x0", - "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000" -} \ No newline at end of file diff --git a/cases/deploy/template/password.txt b/cases/deploy/template/password.txt deleted file mode 100644 index 384a89f1f1..0000000000 --- a/cases/deploy/template/password.txt +++ /dev/null @@ -1 +0,0 @@ -88888888 \ No newline at end of file diff --git a/cases/deploy/template/supervisor_template.conf b/cases/deploy/template/supervisor_template.conf deleted file mode 100644 index c46bbe7153..0000000000 --- a/cases/deploy/template/supervisor_template.conf +++ /dev/null @@ -1,28 +0,0 @@ -; supervisor config file - -[inet_http_server] -port=127.0.0.1:9001 - -[supervisord] -logfile=/var/log/supervisor/supervisord.log ; (main log file;default $CWD/supervisord.log) -pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid) -childlogdir=/var/log/supervisor ; ('AUTO' child log dir, default $TEMP) - -; the below section must remain in the config file for RPC -; (supervisorctl/web interface) to work, additional interfaces may be -; added by defining them in separate rpcinterface: sections -[rpcinterface:supervisor] -supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface - -[supervisorctl] -serverurl=http://localhost:9001 - - -; The [include] section can just contain the "files" setting. This -; setting can list multiple files (separated by whitespace or -; newlines). It can also contain wildcards. The filenames are -; interpreted as relative to this file. Included files *cannot* -; include files themselves. - -[include] -files = /etc/supervisor/conf.d/*.conf diff --git a/cases/docs/README.md b/cases/docs/README.md deleted file mode 100644 index 74a29cabf6..0000000000 --- a/cases/docs/README.md +++ /dev/null @@ -1,85 +0,0 @@ -# PlatON-Tests - -### Test execution - -1. Dependent installation - -```js -pip install -r requirements.txt -``` - -2. Execute the test - -Follow the pytest command to execute, add a new parameter reference[conftest.py](../conftest.py)。 - -example: - -```js -py.test 'tests/chain/test_chain_deploy.py' --nodeFile "deploy/node/test_chaininfo.yml" --accountFile "deploy/accounts.yml" -``` - -More please check[readme](../README.md) - -Remarks: -There are many combinations of project management and execution test commands. -You need to input a large number of commands and consider introducing a Makefile. - -### Project structure description - -1. Root directory: - -+ pytest.ini pytestTest the configuration file. For details, please refer to the official file. -[pytest.ini](https://docs.pytest.org/en/latest/reference.html#configuration-options)。 - -+ conftest.py-pytestPlug-ins, mainly including the introduction of command line parameters, -test environment generation, test failure use case log download and other functions. - -2.common: - -+ Project public methods, including logging, configuration file reading, connecting to linux server, -establishing web3 connection, binary package download, etc. - -3.conf: - -+ Local file path configuration when deploying the environment, please see the file notes for details. - -4.deploy: - -+ Deployment file storage path, used with conf - -5.environment: - -+ Deployment environment script, consisting of five classes: TestConfig, TestEnvironment, Account, Server, Node。 -+ TestConfig: Deployment environment configuration, test environment global configuration。 -+ Account: Test account management class for testing, account generation, transfer, etc.。 -+ Server: Server management class for deployment, management server dependencies, and compressed file management. -+ TestEnvironment: Test environment class, used to manage the test environment, start the node, close the node, restart the node, get the node, get the account, and so on. -+ Node: Node class, used to manage nodes, with basic node information, node connections, node running status, node start and stop, and so on. - -6.tests: - -+ Use case storage directory - -7.tests/lib: - -+ Utils: use case public method -+ Configuration: StakingConfig, pledge basic configuration; PipConfig, pip basic configuration; DefaultEconomicConfig economic model basic configuration -+ genesi:Genesis Genesis.json file convertible object -+ The rest of the classes are secondary packages for sdk - - -### Example - -[staking example](../tests/example/test_staking.py) - -[Custom node deployment](../tests/example/test_customize_deploy.py) - -### Feature description - -+ Abandon the deployment form in the old framework, introduce test environment objects and node objects, used to manage the test environment and nodes, including a large number of node attributes in the node, eliminating the need to retrieve a large number of node information - -+ The w3 connection establishment introduces a timeout mechanism to avoid the problem that the node just starts to connect and causes an error. - -+ Remove the setup, introduce the fixture, design the use case, the common steps need to be designed as a step method, remove the duplicate step code - -+ Deployment optimization, sacrificing environment preparation time, and greatly improving the speed of secondary deployment \ No newline at end of file diff --git a/cases/environment/__init__.py b/cases/environment/__init__.py deleted file mode 100644 index 54fb2d7861..0000000000 --- a/cases/environment/__init__.py +++ /dev/null @@ -1,6 +0,0 @@ -# -*- coding: utf-8 -*- -from environment.env import TestEnvironment, TestConfig -from environment.server import Server -from environment.node import Node -from environment.account import Account -from environment.env import create_env diff --git a/cases/environment/account.py b/cases/environment/account.py deleted file mode 100644 index 1f5bb86d61..0000000000 --- a/cases/environment/account.py +++ /dev/null @@ -1,151 +0,0 @@ -from common.load_file import LoadFile -from alaya.eth import Eth -from alaya.personal import Personal -from hexbytes import HexBytes -import random -import rlp -import os - - -class Account: - def __init__(self, accountFile, chainId): - """ - accounts 包含的属性: address,prikey,nonce,balance,node_id,passwd - :param accountFile: - :param chainId: - """ - self.accounts = {} - self.raw_accounts = LoadFile(accountFile).get_data() - # log.info(self.raw_accounts) - self.chain_id = chainId - self.account_with_money = self.raw_accounts[0] - self.reset() - # for account in self.raw_accounts: - # self.accounts[account['address']] = account - - def reset(self): - self.accounts = {} - for account in self.raw_accounts: - self.accounts[account['address']] = account - - def get_all_accounts(self): - accounts = [] - for account in self.accounts.values(): - accounts.append(account) - return accounts - - def get_rand_account(self): - # todo 实现随机 - # for account in self.accounts.values(): - # return account - return random.choice(list(self.accounts.values())) - - def sendTransaction(self, connect, data, from_address, to_address, gasPrice, gas, value, check_address=True): - platon = Eth(connect) - account = self.accounts[from_address] - nonce = platon.getTransactionCount(from_address) - transaction_dict = { - "to": to_address, - "gasPrice": gasPrice, - "gas": gas, - "nonce": nonce, - "data": data, - "chainId": self.chain_id, - "value": value, - } - - signedTransactionDict = platon.account.signTransaction( - transaction_dict, account['prikey'] - ) - - data = signedTransactionDict.rawTransaction - result = HexBytes(platon.sendRawTransaction(data)).hex() - # log.debug("result:::::::{}".format(result)) - res = platon.waitForTransactionReceipt(result) - account['nonce'] = nonce + 1 - self.accounts[from_address] = account - return res - - def generate_account_in_node(self, node, passwd, balance=0): - personal = Personal(node.web3) - address = personal.newAccount(passwd) - # log.debug(address) - if balance > 0: - self.sendTransaction(node.web3, '', self.account_with_money['address'], address, node.eth.gasPrice, 40000, balance) - account = { - "node_id": node.node_id, - "address": address, - "nonce": 0, - "balance": balance, - "prikey": '', - 'passwd': passwd - } - self.accounts[address] = account - return address - - def unlock_account(self, node, address): - account = self.accounts[address] - personal = Personal(node.web3) - personal.unlockAccount(account['address'], account['passwd']) - - def get_rand_account_in_node(self, node): - for account in self.accounts.values(): - if account['node_id'] == node.id: - return account - self.generate_account_in_node(node, '123456') - - def create_restricting_plan(self, connect, receive_address, plan, from_address, gasPrice=None, gas=None): - ''' - 创建锁仓计划 - :param account: 20bytes - :param plan: []RestrictingPlan - :param from_address: - :param gasPrice: - :param gas: - :return: - ''' - to_address = "0x1000000000000000000000000000000000000001" - if receive_address[:2] == '0x': - receive_address = receive_address[2:] - plan_list = [] - for dict_ in plan: - v = [dict_[k] for k in dict_] - plan_list.append(v) - rlp_list = rlp.encode(plan_list) - data = rlp.encode([rlp.encode(int(4000)), - rlp.encode(bytes.fromhex(receive_address)), - rlp_list]) - # print ("len:", len (data)) - # l = [hex (int (i)) for i in data] - # print (" ".join (l)) - result = self.sendTransaction(connect, data, from_address, to_address, gasPrice, gas, 0) - return result - - def generate_account(self, web3, balance=0): - platon = Eth(web3) - account = platon.account.create(net_type=web3.net_type) - address = account.address - - prikey = account.privateKey.hex()[2:] - if balance != 0: - self.sendTransaction(web3, '', self.account_with_money['address'], address, web3.platon.gasPrice, 21000, balance) - account = { - "address": address, - "nonce": 0, - "balance": balance, - "prikey": prikey, - } - self.accounts[address] = account - # todo delete debug - - def debug(): - from conf.settings import BASE_DIR - from ruamel import yaml - accounts = list(self.accounts.values()) - with open(os.path.join(BASE_DIR, "deploy/tmp/accounts.yml"), mode="w", encoding="UTF-8") as f: - yaml.dump(accounts, f, Dumper=yaml.RoundTripDumper) - debug() - return address, prikey - - def find_pri_key(self, address): - return self.accounts[address]["prikey"] diff --git a/cases/environment/config.py b/cases/environment/config.py deleted file mode 100644 index e51c4b4e79..0000000000 --- a/cases/environment/config.py +++ /dev/null @@ -1,52 +0,0 @@ -from common.abspath import abspath -from conf import settings as conf -from conf.settings import ConfTmpDir - - -class TestConfig: - def __init__(self, conf_tmp: ConfTmpDir, install_supervisor=True, install_dependency=True, init_chain=True, is_need_static=True, can_deploy=True): - self.can_deploy = can_deploy - # local must file - self.platon_bin_file = conf.PLATON_BIN_FILE - self.genesis_file = conf.GENESIS_FILE - self.supervisor_file = conf.SUPERVISOR_FILE - self.node_file = conf.NODE_FILE - self.address_file = conf.ADDRESS_FILE - self.account_file = conf.ACCOUNT_FILE - self.config_json_file = conf.CONFIG_JSON_FILE - # local cache directory - self.root_tmp = conf_tmp.tmp_root_path - self.node_tmp = conf_tmp.LOCAL_TMP_FILE_FOR_NODE - self.server_tmp = conf_tmp.LOCAL_TMP_FILE_FOR_SERVER - self.env_tmp = conf_tmp.LOCAL_TMP_FILE_FOR_ENV - self.genesis_tmp = conf_tmp.GENESIS_FILE - self.static_node_tmp = conf_tmp.STATIC_NODE_FILE - self.config_json_tmp = conf_tmp.CONFIG_JSON_FILE - - # server dependent installation - self.install_supervisor = install_supervisor - self.install_dependency = install_dependency - - # chain deployment customization - self.init_chain = init_chain - self.is_need_static = is_need_static - self.log_level = 5 - self.syncmode = "full" - self.append_cmd = "" - - # maximum number of threads - self.max_worker = 30 - - # environment id - self.env_id = None - - # server remote directory - self.deploy_path = conf.DEPLOY_PATH - self.remote_supervisor_tmp = "{}/tmp/supervisor_{}/".format(self.deploy_path, conf_tmp.dir) - self.remote_compression_tmp_path = "{}/tmp/env_{}/".format(self.deploy_path, conf_tmp.dir) - - - # log related - self.bug_log = abspath("./bug_log") - self.tmp_log = abspath("./tmp_log") - diff --git a/cases/environment/env.py b/cases/environment/env.py deleted file mode 100644 index 684a62f962..0000000000 --- a/cases/environment/env.py +++ /dev/null @@ -1,792 +0,0 @@ -import json -import os -import time -import random -import shutil -import tarfile -from concurrent.futures import ThreadPoolExecutor, wait, ALL_COMPLETED -import copy -from common.load_file import get_f -from ruamel import yaml -from environment.node import Node -from environment.server import Server -from common.abspath import abspath -from common.key import generate_key, generate_blskey -from common.load_file import LoadFile, calc_hash -from common.log import log -from environment.account import Account -from environment.config import TestConfig -from conf.settings import DEFAULT_CONF_TMP_DIR, ConfTmpDir -from typing import List - - -def check_file_exists(*args): - """ - Check if local files exist - :param args: - """ - for arg in args: - if not os.path.exists(os.path.abspath(arg)): - raise Exception("file:{} does not exist".format(arg)) - - -class TestEnvironment: - def __init__(self, cfg: TestConfig): - # env config - self.cfg = cfg - - # these file must be exist - check_file_exists(self.cfg.platon_bin_file, self.cfg.genesis_file, self.cfg.supervisor_file, - self.cfg.node_file, self.cfg.address_file) - if not os.path.exists(self.cfg.root_tmp): - os.mkdir(self.cfg.root_tmp) - - # node config - self.__is_update_node_file = False - self.node_config = LoadFile(self.cfg.node_file).get_data() - self.consensus_node_config_list = self.node_config.get("consensus", []) - self.noconsensus_node_config_list = self.node_config.get("noconsensus", []) - self.node_config_list = self.consensus_node_config_list + self.noconsensus_node_config_list - self.__rewrite_node_file() - - # node obj list - self.__consensus_node_list = [] - self.__normal_node_list = [] - - # env info - self.cfg.env_id = self.__reset_env() - - # genesis - self.genesis_config = LoadFile(self.cfg.genesis_file).get_data() - - # servers - self.server_list = self.__parse_servers() - - # node - self.__parse_node() - - # accounts - self.account = Account(self.cfg.account_file, self.genesis_config["config"]["chainId"]) - - self.rewrite_genesis_file() - - @property - def consensus_node_list(self) -> List[Node]: - return self.__consensus_node_list - - @property - def normal_node_list(self) -> List[Node]: - return self.__normal_node_list - - @property - def chain_id(self): - return self.genesis_config["config"]["chainId"] - - @property - def amount(self): - return self.genesis_config["config"]["cbft"]["amount"] - - @property - def period(self): - return self.genesis_config["config"]["cbft"]["period"] - - @property - def validatorMode(self): - return self.genesis_config["config"]["cbft"]["validatorMode"] - - @property - def version(self): - return "0.13.2" - - @property - def running(self) -> bool: - """ - Determine if all nodes are running - :return: bool - """ - for node in self.get_all_nodes(): - if not node.running: - return False - return True - - @property - def max_byzantium(self) -> int: - """ - Maximum number of Byzantine nodes - """ - return get_f(self.consensus_node_config_list) - - @property - def block_interval(self) -> int: - """ - Block interval - """ - period = self.genesis_config["config"]["cbft"].get("period") - amount = self.genesis_config["config"]["cbft"].get("amount") - return int(period / 1000 / amount) - - def consensus_node_id_list(self) -> List[str]: - return [node.node_id for node in self.consensus_node_list] - - def find_node_by_node_id(self, node_id): - for node in self.get_all_nodes(): - if node_id == node.node_id: - return node - raise Exception("can't find node") - - def copy_env(self): - """ - Copy environment - """ - return copy.copy(self) - - def set_cfg(self, cfg: TestConfig): - """ - Set the configuration file and modify the node's cfg - :param cfg: - """ - self.cfg = cfg - genesis_config = LoadFile(self.cfg.genesis_file).get_data() - self.rewrite_genesis_file() - self.set_genesis(genesis_config) - for node in self.get_all_nodes(): - node.cfg = cfg - - def set_genesis(self, genesis_config: dict): - """ - Set the genesis and modify the genesis of the node. - :param genesis_config: - """ - self.genesis_config = genesis_config - self.account.chain_id = self.chain_id - for node in self.get_all_nodes(): - node.chain_id = self.chain_id - - def __reset_env(self) -> str: - """ - Determine whether you need to re-create a new environment - based on the platon binary information and the node configuration file. - :return: env_id - """ - env_tmp_file = os.path.join(self.cfg.env_tmp, "env.yml") - if os.path.exists(self.cfg.env_tmp): - if os.path.exists(env_tmp_file): - env_data = LoadFile(env_tmp_file).get_data() - if env_data["bin_hash"] == calc_hash(self.cfg.platon_bin_file) \ - and env_data["node_hash"] == calc_hash(self.cfg.node_file): - return env_data["env_id"] - - shutil.rmtree(self.cfg.env_tmp) - os.makedirs(self.cfg.env_tmp) - new_env_data = {"bin_hash": calc_hash(self.cfg.platon_bin_file), "node_hash": calc_hash(self.cfg.node_file)} - env_id = new_env_data["bin_hash"] + new_env_data["node_hash"] - new_env_data["env_id"] = env_id - with open(env_tmp_file, "w", encoding="utf-8") as f: - yaml.dump(new_env_data, f, Dumper=yaml.RoundTripDumper) - return env_id - - def get_init_nodes(self) -> List[dict]: - """ - Get the list of init nodes - :return: list - """ - init_node_list = [] - for node in self.consensus_node_list: - init_node_list.append({"node": node.enode, "blsPubKey": node.blspubkey}) - return init_node_list - - def get_static_nodes(self) -> list: - """ - Get static node enode list - :return: list - """ - static_node_list = [] - for node in self.get_all_nodes(): - static_node_list.append(node.enode) - return static_node_list - - def get_all_nodes(self) -> List[Node]: - """ - Get all node objects - :return: Node object - """ - return self.__consensus_node_list + self.__normal_node_list - - def get_rand_node(self) -> Node: - """ - Randomly obtain a consensus node - :return: Node object - """ - return random.choice(self.consensus_node_list) - - def get_consensus_node_by_index(self, index) -> Node: - """ - Get a consensus node based on the index - :param index: - :return: Node object - """ - return self.__consensus_node_list[index] - - def get_normal_node_by_index(self, index) -> Node: - """ - Get a normal node based on the index - :param index: - :return: Node object - """ - return self.__normal_node_list[index] - - def get_a_normal_node(self) -> Node: - """ - Get the first normal node - :return: Node object - """ - return self.__normal_node_list[0] - - def executor(self, func, data_list, *args) -> bool: - with ThreadPoolExecutor(max_workers=self.cfg.max_worker) as exe: - futures = [exe.submit(func, pair, *args) for pair in data_list] - done, unfinished = wait(futures, timeout=30, return_when=ALL_COMPLETED) - result = [] - for d in done: - is_success, msg = d.result() - if not is_success: - result.append(msg) - if len(result) > 0: - raise Exception("executor {} failed:{}".format(func.__name__, result)) - return True - - def deploy_all(self, genesis_file=None): - """ - Deploy all nodes and start - :param genesis_file: Specify genesis, do not pass the default generated using tmp - """ - self.account.reset() - self.prepare_all() - if genesis_file is None: - genesis_file = self.cfg.genesis_tmp - log.info("deploy all node") - self.deploy_nodes(self.get_all_nodes(), genesis_file) - log.info("deploy success") - - def prepare_all(self): - """ - Prepare environmental data - """ - self.rewrite_genesis_file() - self.rewrite_static_nodes() - self.rewrite_config_json() - self.__compression() - if self.cfg.install_supervisor: - self.install_all_supervisor() - self.cfg.install_supervisor = False - if self.cfg.install_dependency: - self.install_all_dependency() - self.cfg.install_dependency = False - self.put_all_compression() - - def start_all(self): - """ - Start all nodes, judge whether to initialize according to the value of cfg init_chain - """ - log.info("start all node") - self.start_nodes(self.get_all_nodes(), self.cfg.init_chain) - - def stop_all(self): - """ - Stop all nodes - """ - log.info("stop all node") - self.stop_nodes(self.get_all_nodes()) - - def reset_all(self): - """ - Restart all nodes - """ - log.info("restart all node") - self.reset_nodes(self.get_all_nodes()) - - def clean_all(self): - """ - Close all nodes and delete the directory of the deployment node - """ - log.info("clean all node") - self.clean_nodes(self.get_all_nodes()) - - def clean_db_all(self): - """ - Close all nodes and delete the database - """ - log.info("clean db all node") - self.clean_db_nodes(self.get_all_nodes()) - - def shutdown(self): - """ - Close all nodes and delete the node deployment directory, supervisor node configuration - """ - log.info("shutdown and clean all nodes") - - def close(node: Node): - return node.close() - - return self.executor(close, self.get_all_nodes()) - - def clean_supervisor_confs(self): - def clean(server: Server): - return server.clean_supervisor_conf() - - return self.executor(clean, self.server_list) - - def start_nodes(self, node_list: List[Node], init_chain=True): - """ - Boot node - :param node_list: - :param init_chain: - """ - - def start(node: Node, need_init_chain): - return node.start(need_init_chain) - - return self.executor(start, node_list, init_chain) - - def deploy_nodes(self, node_list: List[Node], genesis_file): - """ - Deployment node - Choose whether to empty the environment depending on whether initialization is required - Upload all node files - :param node_list: - :param genesis_file: - """ - log.info("deploy node") - if self.cfg.init_chain: - self.clean_nodes(node_list) - - self.put_file_nodes(node_list, genesis_file) - return self.start_nodes(node_list, self.cfg.init_chain) - - def put_file_nodes(self, node_list: List[Node], genesis_file): - """ - Upload all files - :param node_list: - :param genesis_file: - """ - - def prepare(node: Node): - return node.put_all_file(genesis_file) - - return self.executor(prepare, node_list) - - def stop_nodes(self, node_list: List[Node]): - """ - Close node - :param node_list: - """ - - def stop(node: Node): - return node.stop() - - return self.executor(stop, node_list) - - def reset_nodes(self, node_list: List[Node]): - """ - Restart node - :param node_list: - """ - - def restart(node: Node): - return node.restart() - - return self.executor(restart, node_list) - - def clean_nodes(self, node_list: List[Node]): - """ - Close the node and delete the node data - :param node_list: - :return: - """ - - def clean(node: Node): - return node.clean() - - return self.executor(clean, node_list) - - def clean_db_nodes(self, node_list: List[Node]): - """ - Close the node and clear the node database - :param node_list: - """ - - def clean_db(node: Node): - return node.clean_db() - - return self.executor(clean_db, node_list) - - def __parse_node(self): - """ - Instantiate all nodes - """ - - def init(node_config): - return Node(node_config, self.cfg, self.chain_id) - - log.info("parse node to node object") - with ThreadPoolExecutor(max_workers=self.cfg.max_worker) as executor: - futures = [executor.submit(init, pair) for pair in self.consensus_node_config_list] - done, unfinished = wait(futures, timeout=30, return_when=ALL_COMPLETED) - for do in done: - self.__consensus_node_list.append(do.result()) - - if self.noconsensus_node_config_list: - with ThreadPoolExecutor(max_workers=self.cfg.max_worker) as executor: - futures = [executor.submit(init, pair) for pair in self.noconsensus_node_config_list] - done, unfinished = wait(futures, timeout=30, return_when=ALL_COMPLETED) - for do in done: - self.__normal_node_list.append(do.result()) - - def put_all_compression(self): - """ - Upload compressed file - """ - log.info("upload compression") - - def uploads(server: Server): - return server.put_compression() - - return self.executor(uploads, self.server_list) - - def install_all_dependency(self): - """ - Installation dependence - """ - log.info("install rely") - - def install(server: Server): - return server.install_dependency() - - return self.executor(install, self.server_list) - - def install_all_supervisor(self): - """ - Install supervisor - """ - log.info("install supervisor") - - def install(server: Server): - return server.install_supervisor() - - return self.executor(install, self.server_list) - - def __parse_servers(self) -> List[Server]: - """ - Instantiate all servers - """ - server_config_list, server_list = [], [] - - def check_in(_ip, nodes): - for n in nodes: - if _ip == n["host"]: - return True - return False - - for node_config in self.node_config_list: - ip = node_config["host"] - if check_in(ip, server_config_list): - continue - server_config_list.append(node_config) - - def init(config): - return Server(config, self.cfg) - - with ThreadPoolExecutor(max_workers=self.cfg.max_worker) as executor: - futures = [executor.submit(init, pair) for pair in server_config_list] - done, unfinished = wait(futures, timeout=30, return_when=ALL_COMPLETED) - for do in done: - server_list.append(do.result()) - return server_list - - def block_numbers(self, node_list: List[Node] = None) -> dict: - """ - Get the block height of the incoming node - :param node_list: - """ - if node_list is None: - node_list = self.get_all_nodes() - result = {} - for node in node_list: - result[node.node_mark] = node.block_number - return result - - def check_block(self, need_number=10, multiple=3, node_list: List[Node] = None): - """ - Verify the highest block in the current chain - :param need_number: - :param multiple: - :param node_list: - """ - if node_list is None: - node_list = self.get_all_nodes() - use_time = int(need_number * self.block_interval * multiple) - while use_time: - if max(self.block_numbers(node_list).values()) < need_number: - time.sleep(1) - use_time -= 1 - continue - return - raise Exception("The environment is not working properly") - - def backup_all_logs(self, case_name: str): - """ - Download all node logs - """ - return self.backup_logs(self.get_all_nodes(), case_name) - - def backup_logs(self, node_list: List[Node], case_name): - """ - Backup log - :param node_list: - :param case_name: - """ - self.__check_log_path() - - def backup(node: Node): - return node.backup_log() - - self.executor(backup, node_list) - return self.__zip_all_log(case_name) - - def __check_log_path(self): - if not os.path.exists(self.cfg.tmp_log): - os.mkdir(self.cfg.tmp_log) - else: - shutil.rmtree(self.cfg.tmp_log) - os.mkdir(self.cfg.tmp_log) - if not os.path.exists(self.cfg.bug_log): - os.mkdir(self.cfg.bug_log) - - def __zip_all_log(self, case_name): - log.info("Start compressing.....") - t = time.strftime("%Y%m%d%H%M%S", time.localtime()) - tar_name = "{}/{}_{}.tar.gz".format(self.cfg.bug_log, case_name, t) - tar = tarfile.open(tar_name, "w:gz") - tar.add(self.cfg.tmp_log, arcname=os.path.basename(self.cfg.tmp_log)) - tar.close() - log.info("Compression completed") - log.info("Start deleting the cache.....") - shutil.rmtree(self.cfg.tmp_log) - log.info("Delete cache complete") - return os.path.basename(tar_name) - - def rewrite_genesis_file(self): - """ - Rewrite genesis - """ - log.info("rewrite genesis.json") - self.genesis_config['config']['cbft']["initialNodes"] = self.get_init_nodes() - # with open(self.cfg.address_file, "r", encoding="UTF-8") as f: - # key_dict = json.load(f) - # account = key_dict["address"] - # self.genesis_config['alloc'][account] = {"balance": str(99999999999999999999999999)} - accounts = self.account.get_all_accounts() - for account in accounts: - if account.get('id') == 3: - continue - self.genesis_config['alloc'][account['address']] = {"balance": str(account['balance'])} - with open(self.cfg.genesis_tmp, 'w', encoding='utf-8') as f: - f.write(json.dumps(self.genesis_config, indent=4)) - - def rewrite_static_nodes(self): - """ - Rewrite static - """ - log.info("rewrite static-nodes.json") - static_nodes = self.get_static_nodes() - with open(self.cfg.static_node_tmp, 'w', encoding='utf-8') as f: - f.write(json.dumps(static_nodes, indent=4)) - - def rewrite_config_json(self): - """ - Rewrite config - :return: - """ - log.info("rewrite config.json") - config_data = LoadFile(self.cfg.config_json_file).get_data() - # config_data['node']['P2P']["BootstrapNodes"] = self.get_static_nodes() - with open(self.cfg.config_json_tmp, 'w', encoding='utf-8') as f: - f.write(json.dumps(config_data, indent=4)) - - def __fill_node_config(self, node_config: dict): - """ - Fill in the node file with some necessary values - :param node_config: - """ - if not node_config.get("id") or not node_config.get("nodekey"): - self.__is_update_node_file = True - node_config["nodekey"], node_config["id"] = generate_key() - if not node_config.get("blsprikey") or not node_config.get("blspubkey"): - self.__is_update_node_file = True - node_config["blsprikey"], node_config["blspubkey"] = generate_blskey() - if not node_config.get("port"): - self.__is_update_node_file = True - node_config["port"] = 16789 - if not node_config.get("rpcport"): - self.__is_update_node_file = True - node_config["rpcport"] = 6789 - if not node_config.get("url"): - self.__is_update_node_file = True - node_config["url"] = "http://{}:{}".format(node_config["host"], node_config["rpcport"]) - if node_config.get("wsport"): - self.__is_update_node_file = True - node_config["wsurl"] = "ws://{}:{}".format(node_config["host"], node_config["wsport"]) - return node_config - - def __rewrite_node_file(self): - log.info("rewrite node file") - result, result_consensus_list, result_noconsensus_list = {}, [], [] - if len(self.consensus_node_config_list) >= 1: - for node_config in self.consensus_node_config_list: - result_consensus_list.append(self.__fill_node_config(node_config)) - result["consensus"] = result_consensus_list - if self.noconsensus_node_config_list and len(self.noconsensus_node_config_list) >= 1: - for node_config in self.noconsensus_node_config_list: - result_noconsensus_list.append(self.__fill_node_config(node_config)) - result["noconsensus"] = result_noconsensus_list - if self.__is_update_node_file: - self.consensus_node_config_list = result_consensus_list - self.noconsensus_node_config_list = result_noconsensus_list - with open(self.cfg.node_file, encoding="utf-8", mode="w") as f: - yaml.dump(result, f, Dumper=yaml.RoundTripDumper) - - def __compression(self): - """ - Compressed file - """ - log.info("compression data") - env_gz = os.path.join(self.cfg.env_tmp, self.cfg.env_id) - if os.path.exists(env_gz): - return - os.makedirs(env_gz) - data_dir = os.path.join(env_gz, "data") - os.makedirs(data_dir) - keystore_dir = os.path.join(data_dir, "keystore") - os.makedirs(keystore_dir) - keystore = os.path.join(keystore_dir, os.path.basename(self.cfg.address_file)) - shutil.copyfile(self.cfg.address_file, keystore) - shutil.copyfile(self.cfg.platon_bin_file, os.path.join(env_gz, "platon")) - shutil.copyfile(self.cfg.config_json_tmp, os.path.join(env_gz, "config.json")) - t = tarfile.open(env_gz + ".tar.gz", "w:gz") - t.add(env_gz, arcname=os.path.basename(env_gz)) - t.close() - - -def create_env(conf_tmp=None, node_file=None, account_file=None, init_chain=True, - install_dependency=False, install_supervisor=False, can_deploy=True) -> TestEnvironment: - if not conf_tmp: - conf_tmp = DEFAULT_CONF_TMP_DIR - else: - conf_tmp = ConfTmpDir(conf_tmp) - cfg = TestConfig(conf_tmp=conf_tmp, install_supervisor=install_supervisor, install_dependency=install_dependency, init_chain=init_chain, - can_deploy=can_deploy) - if node_file: - cfg.node_file = node_file - if account_file: - cfg.account_file = account_file - return TestEnvironment(cfg) - - -if __name__ == "__main__": - from tests.lib import get_no_pledge_node, get_no_pledge_node_list, get_pledge_list, check_node_in_list - - node_filename = abspath("deploy/node/debug_4_4.yml") - env = create_env(node_file=node_filename) - env.shutdown() - exit(0) - # print(os.path.getctime(env.cfg.platon_bin_file)) - # new_cfg = copy.copy(env.cfg) - # new_cfg.syncmode = "fast" - # print(env.cfg.syncmode) - log.info("测试部署") - env.cfg.syncmode = "fast" - # env.deploy_all(abspath("deploy/tmp/genesis_0.8.0.json")) - for node in env.get_all_nodes(): - node.admin.addPeer( - "enode://d203e37d86f1757ee4bbeafd7a0b0b6f7d4f22afaad3c63337e92d9056251dcca95515cb23d5a040e3416e1ebbb303aa52ea535103b9b8c8c2adc98ea3b41c01@10.10.8.195:16789") - print(node.web3.net.peerCount) - print(node.ppos.getCandidateList()) - # env.deploy_all(abspath("deploy/tmp/genesis_0.8.0.json")) - # env.shutdown() - # stop_nodes = env.consensus_node_list[:2] - # for node in stop_nodes: - # print(node.url) - # time.sleep(50) - # print(env.consensus_node_list[3].url) - # env.stop_nodes(stop_nodes) - # node = env.get_consensus_node_by_index(0) - # print(node.debug.economicConfig()) - # print(type(node.debug.economicConfig())) - # print(node.node_mark) - # address, prikey = env.account.generate_account(node.web3, 10**18*100000000000) - # transaction_cfg = {"gasPrice": 3000000000000000, "gas": 1000000} - # # print(node.pip.submitParam(node.node_id, "ddd", "Slashing", "SlashBlockReward", "1000", prikey, transaction_cfg)) - # print(node.pip.getGovernParamValue("Slashing", "SlashBlockReward", address)) - # print(node.pip.listGovernParam("Staking")) - # from tests.lib.genesis import Genesis - # from dacite import from_dict - # genesis = from_dict(data_class=Genesis, data=env.genesis_config) - # print(genesis.EconomicModel.Slashing.MaxEvidenceAge) - # env.account.generate_account(env.get_a_normal_node().web3, 0) - # log.info("account:{}".format(env.account.accounts)) - # env.deploy_all() - # log.info("account:{}".format(env.account.accounts)) - # node = env.get_rand_node() - # print(node.node_id) - # print(env.normal_node_list[1].node_id) - # print(env.get_normal_node_by_index(1).node_id) - # print(get_no_pledge_node(env.get_all_nodes())) - # print(get_no_pledge_node_list(env.get_all_nodes())) - # print(get_pledge_list(node.ppos.getVerifierList)) - # print(check_node_in_list(node.node_id, node.ppos.getVerifierList)) - # print(env.block_numbers(env.normal_node_list)) - # print(env.block_numbers()) - # for node in env.consensus_node_list: - # print(node.node_id) - # time.sleep(3000) - # env.deploy_all() - # d = env.block_numbers() - # print(d) - # node = env.get_rand_node() - # node.create_keystore() - # print(node.node_mark) - # time.sleep(80) - # log.info("测试关闭") - # env.stop_all() - # time.sleep(30) - # log.info("测试不初始化启动") - # env.cfg.init_chain = False - # env.start_all() - # time.sleep(60) - # d = env.block_numbers() - # print(d) - # log.info("测试重启") - # env.reset_all() - # time.sleep(60) - # d = env.block_numbers() - # print(d) - # log.info("测试删除数据库") - # env.clean_db_all() - # log.info("删除数据库成功") - # time.sleep(60) - # env.cfg.init_chain = True - # env.start_all() - # time.sleep(30) - # d = env.block_numbers() - # print(d) - # log.info("测试删除所有数据") - # env.clean_all() - # log.info("删除数据成功") - # log.info("重新部署") - # env.deploy_all() - # d = env.block_numbers() - # print(d) - # time.sleep(60) - # d = env.block_numbers() - # print(d) - # env.shutdown() diff --git a/cases/environment/mock.py b/cases/environment/mock.py deleted file mode 100644 index 466b954d9e..0000000000 --- a/cases/environment/mock.py +++ /dev/null @@ -1,49 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- -#   @Time    : 2019/12/30 20:19 -#   @Author  : PlatON-Developer -#   @Site    : https://github.com/PlatONnetwork/ - -from common.log import log - -class MockSftp: - def put(self, a, b): - pass - - def get(self, a, b): - pass - - -class MockSsh: - def exec_command(self, cmd): - return MockStdin(), MockStdout(cmd), MockStderr() - - -class MockStdin: - - def write(self, cmd): - pass - - -class MockStdout: - def __init__(self, cmd): - self.cmd = cmd - - def readlines(self): - if "init" in self.cmd: - return [] - return [""] - - -class MockStderr: - pass - - -class MockT: - def close(self): - pass - - -def mock_connect_linux(): - log.info("mock server connect linux") - return MockSsh(), MockSftp(), MockT() diff --git a/cases/environment/node.py b/cases/environment/node.py deleted file mode 100644 index 640e70e8dc..0000000000 --- a/cases/environment/node.py +++ /dev/null @@ -1,577 +0,0 @@ -import os -import json -from alaya import Web3 -from alaya.admin import Admin -from alaya.debug import Debug -from alaya.eth import Eth -from alaya.personal import Personal -from alaya.ppos import Ppos -from alaya.pip import Pip - -from common.connect import run_ssh, connect_linux, wait_connect_web3 -from common.load_file import LoadFile -from environment.config import TestConfig -from environment.mock import mock_connect_linux -from common.log import log - - -failed_msg = "Node-{} do {} failed:{}" -success_msg = "Node-{} do {} success" - - -class Node: - def __init__(self, node_conf, cfg: TestConfig, chain_id): - self.cfg = cfg - # node identity parameter - self.blspubkey = node_conf["blspubkey"] - self.blsprikey = node_conf["blsprikey"] - self.node_id = node_conf["id"] - self.nodekey = node_conf["nodekey"] - # node startup necessary parameters - self.p2p_port = str(node_conf["port"]) - self.rpc_port = str(node_conf["rpcport"]) - # node starts non essential parameters - self.wsport = node_conf.get("wsport") - self.wsurl = node_conf.get("wsurl") - self.pprofport = node_conf.get("pprofport") - self.fail_point = node_conf.get("fail_point") - # node server information - self.host = node_conf["host"] - self.username = node_conf["username"] - self.password = node_conf["password"] - self.ssh_port = node_conf.get("sshport", 22) - if self.cfg.can_deploy: - self.ssh, self.sftp, self.t = connect_linux(self.host, self.username, self.password, self.ssh_port) - else: - self.ssh, self.sftp, self.t = mock_connect_linux() - # node identification information - self.url = node_conf["url"] - self.node_name = "node-" + self.p2p_port - self.node_mark = self.host + ":" + self.p2p_port - # node remote directory information - if os.path.isabs(self.cfg.deploy_path): - self.remote_node_path = "{}/{}".format(self.cfg.deploy_path, self.node_name) - else: - self.remote_node_path = "{}/{}/{}".format(self.pwd, self.cfg.deploy_path, self.node_name) - - self.remote_log_dir = '{}/log'.format(self.remote_node_path) - self.remote_bin_file = self.remote_node_path + "/platon" - self.remote_genesis_file = self.remote_node_path + "/genesis.json" - self.remote_config_file = self.remote_node_path + "/config.json" - self.remote_data_dir = self.remote_node_path + "/data" - - self.remote_blskey_file = '{}/blskey'.format(self.remote_data_dir) - self.remote_nodekey_file = '{}/nodekey'.format(self.remote_data_dir) - self.remote_keystore_dir = '{}/keystore'.format(self.remote_data_dir) - self.remote_static_nodes_file = '{}/static-nodes.json'.format(self.remote_data_dir) - self.remote_db_dir = '{}/platon'.format(self.remote_data_dir) - - self.remote_supervisor_node_file = '{}/{}.conf'.format(self.cfg.remote_supervisor_tmp, self.node_name) - - # RPC connection - self.__is_connected = False - self.__rpc = None - - self.__is_connected_ppos = False - self.__ppos = None - - self.__is_connected_pip = False - self.__pip = None - - self.__is_ws_connected = False - self.__ws_rpc = None - - # remote directory - self.make_remote_dir() - - # node local tmp - self.local_node_tmp = self.gen_node_tmp() - - # self.genesis_config = LoadFile(self.cfg.genesis_file).get_data() - self.chain_id = chain_id - - @property - def pwd(self): - pwd_list = self.run_ssh("pwd") - pwd = pwd_list[0].strip("\r\n") - return pwd - - def make_remote_dir(self): - self.run_ssh("mkdir -p {}".format(self.remote_node_path)) - self.run_ssh('mkdir -p {}/log'.format(self.remote_node_path)) - self.run_ssh("mkdir -p {}".format(self.remote_data_dir)) - self.run_ssh('mkdir -p {}'.format(self.remote_keystore_dir)) - - def gen_node_tmp(self): - """ - generate local node cache directory - :return: - """ - tmp = os.path.join(self.cfg.node_tmp, self.host + "_" + self.p2p_port) - if not os.path.exists(tmp): - os.makedirs(tmp) - return tmp - - @property - def enode(self): - return r"enode://" + self.node_id + "@" + self.host + ":" + self.p2p_port - - def try_do(self, func): - try: - func() - except Exception as e: - raise Exception(failed_msg.format(self.node_mark, func.__name__, e)) - - def try_do_resturn(self, func): - try: - func() - except Exception as e: - return False, failed_msg.format(self.node_mark, func.__name__, e) - return True, success_msg.format(self.node_mark, func.__name__) - - def init(self): - """ - Initialize - :return: - """ - def __init(): - cmd = '{} --datadir {} init {}'.format(self.remote_bin_file, self.remote_data_dir, self.remote_genesis_file) - result = self.run_ssh(cmd) - # todo :fix init complete - # Adding a query here can only alleviate the problem of starting deployment without initialization. - self.run_ssh("ls {}".format(self.remote_data_dir)) - if len(result) > 0: - log.error(failed_msg.format(self.node_mark, "init", result[0])) - raise Exception("Init failed:{}".format(result[0])) - log.debug("node-{} init success".format(self.node_mark)) - self.try_do(__init) - - def run_ssh(self, cmd, need_password=False): - if need_password: - return run_ssh(self.ssh, cmd, self.password) - return run_ssh(self.ssh, cmd) - - def clean(self): - """ - clear node data - :return: - """ - log.debug("Clean node:{}".format(self.node_mark)) - - def __clean(): - is_success = self.stop() - if not is_success: - raise Exception("Stop failed") - self.run_ssh("sudo -S -p '' rm -rf {};mkdir -p {}".format(self.remote_node_path, self.remote_node_path), - True) - self.run_ssh("ls {}".format(self.remote_node_path)) - return self.try_do_resturn(__clean) - - def clean_db(self): - """ - clear the node database - :return: - """ - def __clean_db(): - is_success = self.stop() - if not is_success: - raise Exception("Stop failed") - self.run_ssh("sudo -S -p '' rm -rf {}".format(self.remote_db_dir), True) - return self.try_do_resturn(__clean_db) - - def clean_log(self): - """ - clear node log - :return: - """ - def __clean_log(): - is_success = self.stop() - if not is_success: - raise Exception("Stop failed") - self.run_ssh("rm -rf {}".format(self.remote_log_dir)) - self.append_log_file() - self.try_do(__clean_log) - - def append_log_file(self): - """ - append log id - :return: - """ - def __append_log_file(): - self.run_ssh("mkdir -p {};echo {} >> {}/platon.log".format(self.remote_log_dir, self.cfg.env_id, - self.remote_log_dir)) - self.try_do(__append_log_file) - - def stop(self): - """ - close node - :return: - """ - log.debug("Stop node:{}".format(self.node_mark)) - - def __stop(): - self.__is_connected = False - self.__is_ws_connected = False - if not self.running: - return True, "{}-node is not running".format(self.node_mark) - self.run_ssh("sudo -S -p '' supervisorctl stop {}".format(self.node_name), True) - return self.try_do_resturn(__stop) - - def start(self, is_init=False) -> tuple: - """ - boot node - :param is_init: - :return: - """ - log.info("Start node:{}".format(self.node_mark)) - - def __start(): - is_success = self.stop() - if not is_success: - raise Exception("Stop failed") - if is_init: - self.init() - self.append_log_file() - result = self.run_ssh("sudo -S -p '' supervisorctl start " + self.node_name, True) - for r in result: - if "ERROR" in r or "Command 'supervisorctl' not found" in r: - raise Exception("Start failed:{}".format(r.strip("\n"))) - - return self.try_do_resturn(__start) - - def restart(self) -> tuple: - """ - restart node - :return: - """ - def __restart(): - self.append_log_file() - result = self.run_ssh("sudo -S -p '' supervisorctl restart " + self.node_name, True) - for r in result: - if "ERROR" in r: - raise Exception("restart failed:{}".format(r.strip("\n"))) - return self.try_do_resturn(__restart) - - def update(self) -> tuple: - """ - update node - :return: - """ - def __update(): - # todo fix me - self.stop() - self.put_bin() - self.start() - return self.try_do_resturn(__update) - - def close(self): - """ - Close the node, delete the node data, - delete the node supervisor configuration - :return: - """ - is_success = True - msg = "close success" - try: - self.clean() - self.run_ssh("sudo -S -p '' rm -rf /etc/supervisor/conf.d/{}.conf".format(self.node_name), True) - except Exception as e: - is_success = False - msg = "{}-close failed:{}".format(self.node_mark, e) - finally: - self.t.close() - return is_success, msg - - def put_bin(self): - """ - upload binary package - :return: - """ - def __put_bin(): - self.run_ssh("rm -rf {}".format(self.remote_bin_file)) - self.sftp.put(self.cfg.platon_bin_file, self.remote_node_path) - self.run_ssh('chmod +x {}'.format(self.remote_bin_file)) - self.try_do(__put_bin) - - def put_nodekey(self): - """ - upload nodekey - :return: - """ - def __put_nodekey(): - nodekey_file = os.path.join(self.local_node_tmp, "nodekey") - with open(nodekey_file, 'w', encoding="utf-8") as f: - f.write(self.nodekey) - self.run_ssh('mkdir -p {}'.format(self.remote_data_dir)) - self.sftp.put(nodekey_file, self.remote_nodekey_file) - self.try_do(__put_nodekey) - - def put_blskey(self): - """ - upload blskey - :return: - """ - def __put_blskey(): - blskey_file = os.path.join(self.local_node_tmp, "blskey") - with open(blskey_file, 'w', encoding="utf-8") as f: - f.write(self.blsprikey) - self.run_ssh('mkdir -p {}'.format(self.remote_data_dir)) - self.sftp.put(blskey_file, self.remote_blskey_file) - self.try_do(__put_blskey) - - def create_keystore(self, password="88888888"): - """ - create a wallet - :param password: - :return: - """ - def __create_keystore(): - cmd = "{} account new --datadir {}".format(self.remote_bin_file, self.remote_data_dir) - stdin, stdout, _ = self.ssh.exec_command("source /etc/profile;%s" % cmd) - stdin.write(str(password) + "\n") - stdin.write(str(password) + "\n") - self.try_do(__create_keystore) - - def put_genesis(self, genesis_file): - """ - upload genesis - :param genesis_file: - :return: - """ - def __put_genesis(): - self.run_ssh("rm -rf {}".format(self.remote_genesis_file)) - self.sftp.put(genesis_file, self.remote_genesis_file) - self.try_do(__put_genesis) - - def put_config(self): - """ - upload config - :return: - """ - def __put_config(): - self.run_ssh("rm -rf {}".format(self.remote_config_file)) - self.sftp.put(self.cfg.config_json_tmp, self.remote_config_file) - self.try_do(__put_config) - - def put_static(self): - """ - upload static - :return: - """ - def __put_static(): - self.sftp.put(self.cfg.static_node_tmp, self.remote_static_nodes_file) - self.try_do(__put_static) - - def put_deploy_conf(self): - """ - upload node deployment supervisor configuration - :return: - """ - def __put_deploy_conf(): - log.debug("{}-generate supervisor deploy conf...".format(self.node_mark)) - supervisor_tmp_file = os.path.join(self.local_node_tmp, "{}.conf".format(self.node_name)) - self.__gen_deploy_conf(supervisor_tmp_file) - log.debug("{}-upload supervisor deploy conf...".format(self.node_mark)) - self.run_ssh("rm -rf {}".format(self.remote_supervisor_node_file)) - self.run_ssh("mkdir -p {}".format(self.cfg.remote_supervisor_tmp)) - self.sftp.put(supervisor_tmp_file, self.remote_supervisor_node_file) - self.run_ssh("sudo -S -p '' cp {} /etc/supervisor/conf.d".format(self.remote_supervisor_node_file), True) - self.try_do(__put_deploy_conf) - - def upload_file(self, local_file, remote_file): - if local_file and os.path.exists(local_file): - self.sftp.put(local_file, remote_file) - else: - log.info("file: {} not found".format(local_file)) - - def __gen_deploy_conf(self, sup_tmp_file): - """ - Generate a supervisor configuration for node deployment - :param sup_tmp_file: - :return: - """ - with open(sup_tmp_file, "w") as fp: - fp.write("[program:" + self.node_name + "]\n") - go_fail_point = "" - if self.fail_point: - go_fail_point = " GO_FAILPOINTS='{}' ".format(self.fail_point) - cmd = "{} --identity platon --datadir".format(self.remote_bin_file) - cmd = cmd + " {} --port ".format(self.remote_data_dir) + self.p2p_port - cmd = cmd + " --db.nogc" - cmd = cmd + " --nodekey " + self.remote_nodekey_file - cmd = cmd + " --cbft.blskey " + self.remote_blskey_file - cmd = cmd + " --config " + self.remote_config_file - cmd = cmd + " --syncmode '{}'".format(self.cfg.syncmode) - cmd = cmd + " --debug --verbosity {}".format(self.cfg.log_level) - if self.pprofport: - cmd = cmd + " --pprof --pprofaddr 0.0.0.0 --pprofport " + str(self.pprofport) - if self.wsport: - cmd = cmd + " --ws --wsorigins '*' --wsaddr 0.0.0.0 --wsport " + str(self.wsport) - cmd = cmd + " --wsapi platon,debug,personal,admin,net,web3" - cmd = cmd + " --rpc --rpcaddr 0.0.0.0 --rpcport " + str(self.rpc_port) - cmd = cmd + " --rpcapi platon,debug,personal,admin,net,web3,txpool" - cmd = cmd + " --txpool.nolocals" - if self.cfg.append_cmd: - cmd = cmd + " " + self.cfg.append_cmd - fp.write("command=" + cmd + "\n") - if go_fail_point: - fp.write("environment={}\n".format(go_fail_point)) - supervisor_default_conf = "numprocs=1\n" + "autostart=false\n" + "startsecs=1\n" + "startretries=3\n" + \ - "autorestart=unexpected\n" + "exitcode=0\n" + "stopsignal=TERM\n" + \ - "stopwaitsecs=10\n" + "redirect_stderr=true\n" + \ - "stdout_logfile_maxbytes=200MB\n" + "stdout_logfile_backups=20\n" - fp.write(supervisor_default_conf) - fp.write("stdout_logfile={}/platon.log\n".format(self.remote_log_dir)) - - def deploy_me(self, genesis_file) -> tuple: - """ - deploy this node - 1. Empty environmental data - 2. According to the node server to determine whether it is necessary to upload files - 3. Determine whether to initialize, choose to upload genesis - 4. Upload the node key file - 5. Upload the inter-node supervisor configuration - 6. Start the node - :param genesis_file: - :return: - """ - log.debug("{}-clean node path...".format(self.node_mark)) - is_success, msg = self.clean() - if not is_success: - return is_success, msg - self.clean_log() - is_success, msg = self.put_all_file(genesis_file) - if not is_success: - return is_success, msg - return self.start(self.cfg.init_chain) - - def put_all_file(self, genesis_file): - """ - upload or copy the base file - :param genesis_file: - :return: - """ - def __pre_env(): - ls = self.run_ssh("cd {};ls".format(self.cfg.remote_compression_tmp_path)) - if self.cfg.env_id and (self.cfg.env_id + ".tar.gz\n") in ls: - log.debug("{}-copy bin...".format(self.remote_node_path)) - cmd = "cp -r {}/{}/* {}".format(self.cfg.remote_compression_tmp_path, self.cfg.env_id, - self.remote_node_path) - self.run_ssh(cmd) - self.run_ssh("chmod +x {};mkdir {}".format(self.remote_bin_file, self.remote_log_dir)) - else: - self.put_bin() - self.put_config() - # self.put_static() - self.create_keystore() - if self.cfg.init_chain: - log.debug("{}-upload genesis...".format(self.node_mark)) - self.put_genesis(genesis_file) - if self.cfg.is_need_static: - self.put_static() - log.debug("{}-upload blskey...".format(self.node_mark)) - self.put_blskey() - log.debug("{}-upload nodekey...".format(self.node_mark)) - self.put_nodekey() - self.put_deploy_conf() - self.run_ssh("sudo -S -p '' supervisorctl update " + self.node_name, True) - return self.try_do_resturn(__pre_env) - - def backup_log(self): - """ - download log - :return: - """ - def __backup_log(): - self.run_ssh("cd {};tar zcvf log.tar.gz ./log".format(self.remote_node_path)) - self.sftp.get("{}/log.tar.gz".format(self.remote_node_path), - "{}/{}_{}.tar.gz".format(self.cfg.tmp_log, self.host, self.p2p_port)) - self.run_ssh("cd {};rm -rf ./log.tar.gz".format(self.remote_node_path)) - return self.try_do_resturn(__backup_log) - - @property - def running(self) -> bool: - p_id = self.run_ssh("ps -ef|grep platon|grep port|grep %s|grep -v grep|awk {'print $2'}" % self.p2p_port) - if len(p_id) == 0: - return False - return True - - @property - def web3(self) -> Web3: - if not self.__is_connected: - self.__rpc = wait_connect_web3(self.url, self.chain_id) - self.__is_connected = True - return self.__rpc - - @property - def ws_web3(self) -> Web3: - if not self.__is_ws_connected: - self.__ws_rpc = wait_connect_web3(self.wsurl, self.chain_id) - self.__is_ws_connected = True - return self.__ws_rpc - - @property - def eth(self) -> Eth: - return Eth(self.web3) - - @property - def admin(self) -> Admin: - return Admin(self.web3) - - @property - def debug(self) -> Debug: - return Debug(self.web3) - - @property - def personal(self) -> Personal: - return Personal(self.web3) - - @property - def ppos(self) -> Ppos: - if not self.__is_connected_ppos: - self.__ppos = Ppos(self.web3) - self.__is_connected_ppos = True - return self.__ppos - - @property - def pip(self) -> Pip: - if not self.__is_connected_pip: - self.__pip = Pip(self.web3) - self.__is_connected_pip = True - return self.__pip - - @property - def block_number(self) -> int: - return self.eth.blockNumber - - @property - def program_version(self): - return self.admin.getProgramVersion()['Version'] - - @property - def program_version_sign(self): - return self.admin.getProgramVersion()['Sign'] - - @property - def schnorr_NIZK_prove(self): - return self.admin.getSchnorrNIZKProve() - - @property - def staking_address(self): - """ - staking wallet address - """ - result = self.ppos.getCandidateInfo(self.node_id) - candidate_info = result.get('Ret', {}) - address = candidate_info.get('StakingAddress') - return self.web3.toChecksumAddress(address) - - @property - def benifit_address(self): - """ - staking wallet address - """ - result = self.ppos.getCandidateInfo(self.node_id) - candidate_info = result.get('Ret', {}) - address = candidate_info.get('BenefitAddress') - return self.web3.toChecksumAddress(address) diff --git a/cases/environment/server.py b/cases/environment/server.py deleted file mode 100644 index 9ccac08bf5..0000000000 --- a/cases/environment/server.py +++ /dev/null @@ -1,101 +0,0 @@ -import configparser -import os - -from common.connect import run_ssh, connect_linux -from environment.config import TestConfig -from common.log import log -from environment.mock import mock_connect_linux - - -class Server: - def __init__(self, server_conf, cfg: TestConfig): - self.cfg = cfg - self.host = server_conf["host"] - self.username = server_conf["username"] - self.password = server_conf["password"] - self.ssh_port = server_conf.get("sshport", 22) - if self.cfg.can_deploy: - self.ssh, self.sftp, self.t = connect_linux(self.host, self.username, self.password, self.ssh_port) - else: - self.ssh, self.sftp, self.t = mock_connect_linux() - self.remote_supervisor_conf = "{}/supervisord.conf".format(self.cfg.remote_supervisor_tmp) - - def run_ssh(self, cmd, need_password=False): - if need_password: - return run_ssh(self.ssh, cmd, self.password) - return run_ssh(self.ssh, cmd) - - def clean_supervisor_conf(self): - self.run_ssh("sudo -S -p '' rm -rf /etc/supervisor/conf.d/node-*", True) - - def put_compression(self): - try: - ls = self.run_ssh("cd {};ls".format(self.cfg.remote_compression_tmp_path)) - gz_name = self.cfg.env_id + ".tar.gz" - local_gz = os.path.join(self.cfg.env_tmp, gz_name) - if (gz_name + "\n") in ls: - return True, "need not upload" - self.run_ssh("rm -rf {};mkdir -p {}".format(self.cfg.remote_compression_tmp_path, - self.cfg.remote_compression_tmp_path)) - self.sftp.put(local_gz, self.cfg.remote_compression_tmp_path + "/" + os.path.basename(local_gz)) - self.run_ssh("tar -zxvf {}/{}.tar.gz -C {}".format(self.cfg.remote_compression_tmp_path, self.cfg.env_id, - self.cfg.remote_compression_tmp_path)) - except Exception as e: - return False, "{}-upload compression failed:{}".format(self.host, e) - return True, "upload compression success" - - def install_dependency(self): - try: - self.run_ssh("sudo -S -p '' ntpdate 0.centos.pool.ntp.org", True) - self.run_ssh("sudo -S -p '' apt install llvm g++ libgmp-dev libssl-dev -y", True) - except Exception as e: - return False, "{}-install dependency failed:{}".format(self.host, e) - return True, "install dependency success" - - def install_supervisor(self): - try: - test_name = "test-node" - result = self.run_ssh("sudo -S -p '' supervisorctl stop {}".format(test_name), True) - if len(result) == 0 or test_name not in result[0]: - tmp_dir = os.path.join(self.cfg.server_tmp, self.host) - if not os.path.exists(tmp_dir): - os.makedirs(tmp_dir) - tmp = os.path.join(tmp_dir, "supervisord.conf") - self.__rewrite_supervisor_conf(tmp) - self.run_ssh("mkdir -p {}".format(self.cfg.remote_supervisor_tmp)) - self.sftp.put(tmp, self.remote_supervisor_conf) - supervisor_pid_str = self.run_ssh("ps -ef|grep supervisord|grep -v grep|awk {'print $2'}") - if len(supervisor_pid_str) > 0: - self.__reload_supervisor(supervisor_pid_str) - else: - self.run_ssh("sudo -S -p '' apt update", True) - self.run_ssh("sudo -S -p '' apt install -y supervisor", True) - self.run_ssh("sudo -S -p '' cp {} /etc/supervisor/".format(self.remote_supervisor_conf), True) - supervisor_pid_str = self.run_ssh("ps -ef|grep supervisord|grep -v grep|awk {'print $2'}") - if len(supervisor_pid_str) > 0: - self.__reload_supervisor(supervisor_pid_str) - else: - self.run_ssh("sudo -S -p '' /etc/init.d/supervisor start", True) - except Exception as e: - return False, "{}-install supervisor failed:{}".format(self.host, e) - return True, "install supervisor success" - - def __reload_supervisor(self, supervisor_pid_str): - supervisor_pid = supervisor_pid_str[0].strip("\n") - self.run_ssh("sudo -S -p '' kill {}".format(supervisor_pid), True) - self.run_ssh("sudo -S -p '' killall supervisord", True) - self.run_ssh("sudo -S -p '' sudo apt remove supervisor -y", True) - self.run_ssh("sudo -S -p '' apt update", True) - self.run_ssh("sudo -S -p '' apt install -y supervisor", True) - self.run_ssh("sudo -S -p '' cp {} /etc/supervisor/".format(self.remote_supervisor_conf), True) - self.run_ssh("sudo -S -p '' /etc/init.d/supervisor start", True) - - def __rewrite_supervisor_conf(self, sup_tmp): - con = configparser.ConfigParser() - con.read(self.cfg.supervisor_file) - con.set("inet_http_server", "username", self.username) - con.set("inet_http_server", "password", self.password) - con.set("supervisorctl", "username", self.username) - con.set("supervisorctl", "password", self.password) - with open(sup_tmp, "w") as file: - con.write(file) diff --git a/cases/pytest.ini b/cases/pytest.ini deleted file mode 100644 index fa921f1bd1..0000000000 --- a/cases/pytest.ini +++ /dev/null @@ -1,13 +0,0 @@ -[pytest] -markers = - P0: marks tests as slow (deselect with '-m "not slow"') - P1: P1 - P2: P2 - P3: P3 - P4: P4 - compatibility:compatibility - -addopts= --durations 10 --showlocals -s -v --disable-warnings --show-capture=no -log_format = [%(asctime)s]-%(filename)s-[line:%(lineno)d]: %(message)s -log_date_format = %Y-%m-%d %H:%M:%S - diff --git a/cases/requirements.txt b/cases/requirements.txt deleted file mode 100644 index b6a505f9a3..0000000000 --- a/cases/requirements.txt +++ /dev/null @@ -1,90 +0,0 @@ -allure-pytest==2.8.6 -allure-python-commons==2.8.6 -apipkg==1.5 -asn1crypto==1.3.0 -astroid==2.3.3 -atomicwrites==1.3.0 -attrdict==2.0.1 -attrs==19.3.0 -bcrypt==3.1.7 -certifi==2019.11.28 -cffi==1.12.3 -chardet==3.0.4 -client-sdk-python==0.7.0 -colorama==0.4.3 -cryptography==2.4.2 -cytoolz==0.10.1 -dacite==1.0.2 -docopt==0.6.2 -entrypoints==0.3 -eth-abi==1.3.0 -eth-account==0.3.0 -eth-hash==0.2.0 -eth-keyfile==0.5.1 -eth-keys==0.2.4 -eth-rlp==0.1.2 -eth-typing==2.2.1 -eth-utils==1.6.0 -execnet==1.7.1 -fabric==2.5.0 -flake8==3.7.9 -hexbytes==0.1.0 -idna==2.7 -importlib-metadata==1.5.0 -invoke==1.4.1 -isort==4.3.21 -lazy-object-proxy==1.4.3 -loguru==0.5.1 -lru-dict==1.1.6 -mccabe==0.6.1 -more-itertools==8.2.0 -packaging==20.3 -paramiko==2.4.2 -parsimonious==0.8.1 -pathtools==0.1.2 -platon-account==0.1.2 -platon-keyfile==0.1.0 -platon-keys==0.1.1 -pluggy==0.13.1 -py==1.8.1 -pyasn1==0.4.8 -pycodestyle==2.5.0 -pycparser==2.20 -pycryptodome==3.9.7 -pyflakes==2.1.1 -pylint==2.4.4 -PyMySQL==0.9.3 -PyNaCl==1.3.0 -pypandoc==1.5 -pyparsing==2.4.6 -pypiwin32==223 -pysha3==1.0.2 -pytest==4.6.6 -pytest-dependency==0.5.1 -pytest-forked==0.2 -pytest-html==1.19.0 -pytest-metadata==1.7.0 -pytest-repeat==0.8.0 -pytest-rerunfailures==7.0 -pytest-watch==4.2.0 -pytest-xdist==1.24.0 -pywin32==227 -PyYAML==4.2b4 -qrcode==6.1 -requests==2.20.0 -rlp==1.1.0 -ruamel.yaml==0.15.91 -scp==0.13.2 -selenium==3.141.0 -setuptools-markdown==0.4.1 -six==1.14.0 -toolz==0.10.0 -typed-ast==1.4.1 -urllib3==1.24.3 -watchdog==0.10.2 -wcwidth==0.1.8 -websockets==6.0 -win32-setctime==1.0.1 -wrapt==1.11.2 -yapf==0.30.0 -zipp==3.1.0 diff --git a/cases/tests/Monitor.py b/cases/tests/Monitor.py deleted file mode 100644 index 5292df5684..0000000000 --- a/cases/tests/Monitor.py +++ /dev/null @@ -1,305 +0,0 @@ -import time - -import rlp -import json -import os -from alaya import HTTPProvider, Web3, WebsocketProvider -from alaya.eth import Eth -from alaya.middleware import geth_poa_middleware -from hexbytes import HexBytes -from smtplib import SMTP_SSL -from email.mime.text import MIMEText - -config = { - "url": "http://149.129.129.122:6789", - "stak_address": "0x48c867ddBF22062704D6c81d3FA256bc6fc8b6bC", - "stak_pri": "96f1f76c45bc2dd9c0f84a11da4ec104ae95661871284a29413a454a70b15307", - "benifit_address": "0xCeCA295e1471B3008D20b017c7Df7d4F338A7FbA", - "benifit_pri": "9614c2b32f2d5d3421591ab3ffc03ac66c831fb6807b532f6e3a8e7aac31f1d9", - "node_pri": "71f7bc4797db4b7eb65c7e8648a11c0f45a1b2abbd0eb2ef309374aaa4f80297", - "node_pub": "c7d843e4317a749071433ac021c7ec407bae2c61291b55986b0bc02e779ad154171db11d4236ae23b3cf4cdf064b3879c0ec0fed629234e88fad60fa816c6957", - "bls_pri": "826e0495b92229f215064915ede29209253bd25135b96646d5d6f976e3b0584b", - "bls_pub": "6cd1875fec5662384313702b7dc174234042417ea565993d29b4aa78e94629e99965b7332d684bdbecfb0201a1bf6013984048a223514adecc4d565ce0934c4f0494daf450c018761ded3602ab3a39238bcf988a5f5e4bd1635bdb1977954288", - "ip": "13.54.77.34", - "p2pport": "16798", - "node_id": "c7d843e4317a749071433ac021c7ec407bae2c61291b55986b0bc02e779ad154171db11d4236ae23b3cf4cdf064b3879c0ec0fed629234e88fad60fa816c6957", - "externalId": "111111", - "nodeName": "starry_sky", - "website": "https://www.test.network", - "details": "supper node", - "email_user": "230469827@qq.com", - "email_authorization_code": "skeshksdjmsgcbbb" -} - - -def connect_web3(url): - ''' - 连接web3服务,增加区块查询中间件,用于实现eth_getBlockByHash,eth_getBlockByNumber等方法 - ''' - if "ws" in url: - w3 = Web3(WebsocketProvider(url)) - else: - w3 = Web3(HTTPProvider(url)) - w3.middleware_stack.inject(geth_poa_middleware, layer=0) - - return w3 - - -class Ppos: - def __init__(self, url, address, privatekey, chainid=101): - self.web3 = connect_web3(url) - if not self.web3.isConnected(): - raise Exception("node connection failed") - self.eth = Eth(self.web3) - self.address = Web3.toChecksumAddress(address) - self.privatekey = privatekey - self.gasPrice = 1000000000 - self.gas = "0x6fffff" - self.chainid = chainid - - def get_result(self, tx_hash): - result = self.eth.waitForTransactionReceipt(tx_hash) - """查看eventData""" - data = result['logs'][0]['data'] - if data[:2] == '0x': - data = data[2:] - data_bytes = rlp.decode(bytes.fromhex(data))[0] - event_data = bytes.decode(data_bytes) - event_data = json.loads(event_data) - print(event_data) - return event_data - - def send_raw_transaction(self, data, from_address, to_address, gasPrice, gas, value, privatekey=None): - nonce = self.eth.getTransactionCount(from_address) - print('nonce: ', nonce) - if not privatekey: - privatekey = self.privatekey - if value > 0: - transaction_dict = { - "to": to_address, - "gasPrice": gasPrice, - "gas": gas, - "nonce": nonce, - "data": data, - "chainId": self.chainid, - "value": self.web3.toWei(value, "ether") - } - else: - transaction_dict = { - "to": to_address, - "gasPrice": gasPrice, - "gas": gas, - "nonce": nonce, - "data": data, - "chainId": self.chainid - } - signedTransactionDict = self.eth.account.signTransaction( - transaction_dict, privatekey - ) - data = signedTransactionDict.rawTransaction - result = HexBytes(self.eth.sendRawTransaction(data)).hex() - return result - - def createStaking(self, typ, benifitAddress, nodeId, externalId, nodeName, website, details, amount, programVersion, - programVersionSign, blsPubKey, blsProof, privatekey=None, from_address=None, gasPrice=None, - gas=None): - to_address = "0x1000000000000000000000000000000000000002" - if benifitAddress[:2] == '0x': - benifitAddress = benifitAddress[2:] - if programVersionSign[:2] == '0x': - programVersionSign = programVersionSign[2:] - data = HexBytes(rlp.encode([rlp.encode(int(1000)), - rlp.encode(int(typ)), - rlp.encode(bytes.fromhex(benifitAddress)), - rlp.encode(bytes.fromhex(nodeId)), - rlp.encode(externalId), rlp.encode(nodeName), rlp.encode(website), - rlp.encode(details), rlp.encode(self.web3.toWei(amount, 'ether')), - rlp.encode(programVersion), - rlp.encode(bytes.fromhex(programVersionSign)), - rlp.encode(bytes.fromhex(blsPubKey)), - rlp.encode(bytes.fromhex(blsProof))])).hex() - if not privatekey: - privatekey = self.privatekey - if not from_address: - from_address = self.address - if not gasPrice: - gasPrice = self.gasPrice - if not gas: - # transactiondict = {"to": to_address, "data": data} - gas = self.gas - result = self.send_raw_transaction(data, from_address, to_address, gasPrice, gas, 0, privatekey) - return self.get_result(result) - - def apply_delegate(self, typ, nodeId, amount, privatekey=None, from_address=None, gasPrice=None, gas=None): - to_address = "0x1000000000000000000000000000000000000002" - data = rlp.encode([rlp.encode(int(1004)), - rlp.encode(int(typ)), - rlp.encode(bytes.fromhex(nodeId)), - rlp.encode(self.web3.toWei(amount, 'ether'))]) - if not privatekey: - privatekey = self.privatekey - if not from_address: - from_address = self.address - if not gasPrice: - gasPrice = self.gasPrice - if not gas: - transactiondict = {"to": to_address, "data": data} - gas = self.eth.estimateGas(transactiondict) - result = self.send_raw_transaction(data, from_address, to_address, gasPrice, gas, 0, privatekey) - return self.get_result(result) - - def getCandidateInfo(self, nodeId): - data = rlp.encode([rlp.encode(int(1105)), rlp.encode(bytes.fromhex(nodeId))]) - to_address = "0x1000000000000000000000000000000000000002" - raw_data = self.eth.call({ - "from": self.address, - "to": to_address, - "data": data - }) - parse = str(raw_data, encoding="utf8").replace('\\', '').replace('"{', '{').replace('}"', '}') - receive = json.loads(parse) - try: - raw_data_dict = receive["Ret"] - raw_data_dict["Shares"] = int(raw_data_dict["Shares"], 16) - raw_data_dict["Released"] = int(raw_data_dict["Released"], 16) - raw_data_dict["ReleasedHes"] = int(raw_data_dict["ReleasedHes"], 16) - raw_data_dict["RestrictingPlan"] = int(raw_data_dict["RestrictingPlan"], 16) - raw_data_dict["RestrictingPlanHes"] = int(raw_data_dict["RestrictingPlanHes"], 16) - raw_data_dict["DelegateRewardTotal"] = int(raw_data_dict["DelegateRewardTotal"], 16) - raw_data_dict["DelegateTotal"] = int(raw_data_dict["DelegateTotal"], 16) - raw_data_dict["DelegateTotalHes"] = int(raw_data_dict["DelegateTotalHes"], 16) - receive["Ret"] = raw_data_dict - except: - ... - return receive - - def getCandidateList(self): - """ - Query all real-time candidate lists - :param from_address: Used to call the rpc call method - :return: - todo fill - """ - data = rlp.encode([rlp.encode(int(1102))]) - raw_data = self.eth.call({ - "from": self.address, - "to": '0x1000000000000000000000000000000000000002', - "data": data - }) - parse = str(raw_data, encoding="utf8").replace('\\', '').replace('"{', '{').replace('}"', '}') - try: - raw_data = parse["Ret"] - for i in raw_data: - i["Shares"] = int(i["Shares"], 16) - i["Released"] = int(i["Released"], 16) - i["ReleasedHes"] = int(i["ReleasedHes"], 16) - i["RestrictingPlan"] = int(i["RestrictingPlan"], 16) - i["RestrictingPlanHes"] = int(i["RestrictingPlanHes"], 16) - except:... - return parse - - def getVerifierList(self): - """ - Query the certified queue for the current billing cycle - :param from_address: Used to call the rpc call method - :return: - todo fill - """ - data = rlp.encode([rlp.encode(int(1100))]) - raw_data = self.eth.call({ - "from": self.address, - "to": '0x1000000000000000000000000000000000000002', - "data": data - }) - parse = str(raw_data, encoding="utf8").replace('\\', '').replace('"{', '{').replace('}"', '}') - try: - raw_data = parse["Ret"] - for i in raw_data: - i["Shares"] = int(i["Shares"], 16) - except:... - return parse - -def get_staking_program(w3): - """ - 根据rpc获取发质押的4个参数 - """ - msg = w3.admin.getProgramVersion() - proof = w3.admin.getSchnorrNIZKProve() - ProgramVersionSign = msg["Sign"] - ProgramVersion = msg["Version"] - return ProgramVersion, ProgramVersionSign, proof - - -def automatically_send_alert_emails(user, authorization_code): - with SMTP_SSL(host="smtp.qq.com") as smtp: - smtp.login(user=user, password=authorization_code) - msg = MIMEText("The node has stopped exporting, please inform the relevant personnel to check", _charset="utf8") - msg["Subject"] = "Monitoring node status is abnormal - alarm!!!" - msg["from"] = user - msg["to"] = user - - smtp.sendmail(from_addr=user, to_addrs=user, msg=msg.as_string()) - - -def check_if_you_need_to_restart_node(): - """ - Check node status and whether the height of the block is normal - :return: - """ - - last_query_block_height = 0 - ppos = Ppos(config['url'], config['stak_address'], config['stak_pri']) - while True: - pid = os.popen("ps -ef|grep platon|grep port|grep %s|grep -v grep|awk {'print $2'}") - print('pid: ', pid.read()) - if pid is None: - os.popen("nohup platon --identity 'platon' --datadir ./data --port 16798 --rpcport 6789 --verbosity 1 --rpcapi 'platon,web3,admin' --rpc --nodekey ./data/nodekey --cbft.blskey ./data/nodeblskey >> platon.log 2>&1 &") - else: - print("Current process: running normally PID: ", pid.read()) - current_query_block_height = ppos.eth.blockNumber - print('current query block height: ', current_query_block_height) - if last_query_block_height == current_query_block_height: - automatically_send_alert_emails(config['email_user'], config['email_authorization_code']) - last_query_block_height = current_query_block_height - # Automatic delegation - node_revenue_amount = ppos.eth.getBalance(ppos.web3.toChecksumAddress(config['benifit_address'])) - print('Current income address balance: ', node_revenue_amount) - if node_revenue_amount > ppos.web3.toWei(100, 'ether'): - amount = node_revenue_amount - ppos.web3.toWei(1, 'ether') - print('Application entrustment amount: ', amount) - ppos.apply_delegate(0, config['node_id'], amount, config['benifit_pri'], config['benifit_pri']) - time.sleep(5) - - -def automatic_account_entrustment(amount=None): - ppos = Ppos(config['url'], config['stak_address'], config['stak_pri']) - if amount is None: - node_revenue_amount = ppos.eth.getBalance(ppos.web3.toChecksumAddress(config['benifit_address'])) - print('Current income address balance: ', node_revenue_amount) - if node_revenue_amount > ppos.web3.toWei(100, 'ether'): - amount = node_revenue_amount - ppos.web3.toWei(1, 'ether') - print('Application entrustment amount: ', amount) - ppos.apply_delegate(0, config['node_id'], amount, config['benifit_pri'], config['benifit_pri']) - -def gettttt(nodeid): - ppos = Ppos(config['url'], config['stak_address'], config['stak_pri']) - result = ppos.getCandidateInfo(nodeid) - print(result) - -def getsssss(): - ppos = Ppos(config['url'], config['stak_address'], config['stak_pri']) - result = ppos.getCandidateList() - print(result) - -def getaaaa(): - ppos = Ppos(config['url'], config['stak_address'], config['stak_pri']) - result = ppos.getVerifierList() - print(result) - -if __name__ == '__main__': - # automatically_send_alert_emails('230469827@qq.com','skeshksdjmsgcbbb') - # check_if_you_need_to_restart_node() - # automatic_account_entrustment() - gettttt('df672cbf413dc740036ef5bf2545180fe9309561189b22f220b77beae7fce61cba7faee821433eab0fce29b3a564288629cff5dee314195c33f601c165d1949a') - # getsssss() - # getaaaa() \ No newline at end of file diff --git a/cases/tests/__init__.py b/cases/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/cases/tests/blockchain/__init__.py b/cases/tests/blockchain/__init__.py deleted file mode 100644 index dc9d48e635..0000000000 --- a/cases/tests/blockchain/__init__.py +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- -#   @Time    : 2020/1/8 12:00 -#   @Author  : PlatON-Developer -#   @Site    : https://github.com/PlatONnetwork/ - diff --git a/cases/tests/blockchain/chain/test_buildchain.py b/cases/tests/blockchain/chain/test_buildchain.py deleted file mode 100644 index f38550b4ba..0000000000 --- a/cases/tests/blockchain/chain/test_buildchain.py +++ /dev/null @@ -1,79 +0,0 @@ -import pytest -import allure -from copy import copy -import time -from common.log import log -from tests.lib import Genesis -from dacite import from_dict - - -@pytest.fixture(scope="function", autouse=True) -def stop_env(global_test_env): - global_test_env.stop_all() - - -@pytest.fixture(scope="module", autouse=True) -def reset_env(global_test_env): - cfg = copy(global_test_env.cfg) - yield - log.info("reset deploy.................") - global_test_env.cfg = cfg - global_test_env.deploy_all() - - -@allure.title("Node interconnects that do not initialize boot nodes and different creation files") -@pytest.mark.P0 -def test_CH_IN_006(global_test_env): - pass - # global_test_env.deploy_all() - # test_node = copy(global_test_env.get_a_normal_node()) - # test_node.clean() - # new_cfg = copy(global_test_env.cfg) - # new_cfg.init_chain = False - # new_cfg.append_cmd = "--nodiscover" - # test_node.cfg = new_cfg - # log.info("start deploy {}".format(test_node.node_mark)) - # log.info("is init:{}".format(test_node.cfg.init_chain)) - # test_node.deploy_me(genesis_file=None) - # log.info("deploy end") - # test_node.admin.addPeer(global_test_env.get_rand_node().enode) - # time.sleep(5) - # assert test_node.web3.net.peerCount == 0, "the number of connected nodes has increased" - - -@allure.title("Test deployment of a single-node private chain, synchronization of single-node blocks") -@pytest.mark.P0 -def test_CH_IN_005(global_test_env): - test_node = copy(global_test_env.get_a_normal_node()) - log.info("test node :{}".format(test_node.node_mark)) - genesis_data = global_test_env.genesis_config - genesis = from_dict(data_class=Genesis, data=genesis_data) - genesis.config.cbft.initialNodes = [{"node": test_node.enode, "blsPubKey": test_node.blspubkey}] - file = test_node.local_node_tmp + "/genesis_0.13.0.json" - genesis.to_file(file) - test_node.deploy_me(file) - time.sleep(5) - assert test_node.block_number > 0, "block height has not increased" - join_node = copy(global_test_env.get_rand_node()) - log.info("join node:{}".format(join_node.node_mark)) - join_node.deploy_me(file) - join_node.admin.addPeer(test_node.enode) - time.sleep(5) - assert join_node.block_number > 0, "block height has not increased" - - -@allure.title("Test node interconnections between different initnode founding files") -@pytest.mark.P0 -def test_CH_IN_009(global_test_env): - global_test_env.deploy_all() - test_node = copy(global_test_env.get_a_normal_node()) - log.info("test node :{}".format(test_node.node_mark)) - genesis = from_dict(data_class=Genesis, data=global_test_env.genesis_config) - genesis.config.cbft.initialNodes = [{"node": test_node.enode, "blsPubKey": test_node.blspubkey}] - file = test_node.local_node_tmp + "/genesis_0.13.0.json" - genesis.to_file(file) - test_node.deploy_me(file) - log.info(test_node.running) - test_node.admin.addPeer(global_test_env.get_rand_node().enode) - time.sleep(5) - assert test_node.web3.net.peerCount == 0 diff --git a/cases/tests/blockchain/chain/test_chain_deploy.py b/cases/tests/blockchain/chain/test_chain_deploy.py deleted file mode 100644 index 97163e2ed0..0000000000 --- a/cases/tests/blockchain/chain/test_chain_deploy.py +++ /dev/null @@ -1,202 +0,0 @@ -import time - -import allure -import pytest -from copy import copy -from common.log import log - - -@pytest.fixture(scope="function", autouse=True) -def stop_env(global_test_env): - global_test_env.stop_all() - - -@pytest.fixture(scope="module", autouse=True) -def reset_env(global_test_env): - cfg = copy(global_test_env.cfg) - yield - log.info("reset deploy.................") - global_test_env.cfg = cfg - global_test_env.deploy_all() - - -@allure.title("start all nodes normally") -@pytest.mark.P0 -def test_SC_ST_001(global_test_env): - """ - Used to test the start of all consensus nodes, check out the block situation - """ - log.info("Deploy {} node".format(len(global_test_env.consensus_node_config_list))) - global_test_env.deploy_all() - global_test_env.check_block() - - -@allure.title("Start consensus node 2f+1 starts to block") -@pytest.mark.P0 -def test_SC_ST_002(global_test_env): - """ - When the test start consensus node reaches the minimum consensus node number, it starts to pop out. - """ - num = int(2 * global_test_env.max_byzantium + 1) - log.info("Deploy {} nodes".format(num)) - global_test_env.deploy_nodes(global_test_env.consensus_node_list[0:num], genesis_file=global_test_env.cfg.genesis_tmp) - global_test_env.check_block(multiple=num, node_list=global_test_env.consensus_node_list[0:num]) - - -@allure.title("Start all nodes normally, and gradually close f") -@pytest.mark.P0 -def test_SC_CL_001(global_test_env): - """ - After starting n nodes, gradually close f, then the window of the closed node does not come out. - """ - global_test_env.deploy_all() - global_test_env.check_block() - close_nodes = global_test_env.get_all_nodes()[0:global_test_env.max_byzantium] - global_test_env.stop_nodes(close_nodes) - global_test_env.check_block(need_number=30, multiple=2, - node_list=global_test_env.get_all_nodes()[global_test_env.max_byzantium:]) - - -@allure.title("Start 2f+1 nodes normally, start one after 50 seconds") -@pytest.mark.P2 -def test_SC_IV_001(global_test_env): - """ - Start 2f+1 first, start one after 50 seconds - """ - num = int(2 * global_test_env.max_byzantium + 1) - log.info("Deploy {} nodes".format(num)) - test_nodes = global_test_env.consensus_node_list[0:num] - global_test_env.deploy_nodes(node_list=test_nodes, genesis_file=global_test_env.cfg.genesis_tmp) - time.sleep(50) - start = max(global_test_env.block_numbers(node_list=test_nodes).values()) - global_test_env.deploy_nodes(global_test_env.consensus_node_list[num:num + 1], genesis_file=global_test_env.cfg.genesis_tmp) - global_test_env.check_block(need_number=start + 10, multiple=2, node_list=global_test_env.consensus_node_list[0:num + 1]) - - -@allure.title("Only start 2f nodes") -@pytest.mark.P0 -def test_SC_ST_003(global_test_env): - """ - Start 2f nodes - """ - num = int(2 * global_test_env.max_byzantium) - log.info("Deploy {} nodes".format(num)) - test_nodes = global_test_env.consensus_node_list[0:num] - global_test_env.deploy_nodes(test_nodes, genesis_file=global_test_env.cfg.genesis_tmp) - time.sleep(10) - block = max([node.block_number for node in test_nodes]) - assert block == 0 - - -@allure.title("Start all nodes normally and gradually close f+1") -@pytest.mark.P0 -def test_SC_CL_002(global_test_env): - """ - After starting all nodes, gradually close f+1, then it will not be blocked after closing. - """ - global_test_env.deploy_all() - test_nodes = global_test_env.consensus_node_list[:global_test_env.max_byzantium + 1] - global_test_env.stop_nodes(test_nodes) - running_node = global_test_env.consensus_node_list[global_test_env.max_byzantium + 1:] - time.sleep(5) - start = max(global_test_env.block_numbers(running_node).values()) - time.sleep(5) - end = max(global_test_env.block_numbers(running_node).values()) - assert start == end - - -@allure.title("Start 2f nodes first, then start one after {t} seconds") -@pytest.mark.P2 -@pytest.mark.parametrize('t', [50, 150]) -def test_SC_IV_002_to_003(t, global_test_env): - """ - Start 2f nodes first, then start a node after a certain interval to see the block situation. - """ - num = int(2 * global_test_env.max_byzantium) - log.info("Start {} nodes first".format(num)) - test_nodes = global_test_env.consensus_node_list[0:num + 1] - global_test_env.deploy_nodes(global_test_env.consensus_node_list[0:num], genesis_file=global_test_env.cfg.genesis_tmp) - time.sleep(t) - global_test_env.deploy_nodes(global_test_env.consensus_node_list[num:num + 1], genesis_file=global_test_env.cfg.genesis_tmp) - global_test_env.check_block(node_list=test_nodes, multiple=num) - - -@allure.title("Start 2f nodes first, start all nodes after {t} seconds") -@pytest.mark.P2 -@pytest.mark.parametrize('t', [50, 150]) -def test_SC_IV_004_to_005(t, global_test_env): - """ - Start 2f nodes first, and then start all the consensus nodes that are not - started after a certain interval, and check the block status. - """ - num = int(2 * global_test_env.max_byzantium) - log.info("Start {} nodes first".format(num)) - global_test_env.deploy_nodes(global_test_env.consensus_node_list[0:num], genesis_file=global_test_env.cfg.genesis_tmp) - time.sleep(int(t)) - log.info("Start all other consensus nodes") - global_test_env.deploy_nodes(global_test_env.consensus_node_list[num:], genesis_file=global_test_env.cfg.genesis_tmp) - global_test_env.check_block(node_list=global_test_env.consensus_node_list, multiple=5) - - -@allure.title("Start 2f nodes first, and restart other nodes within 30 seconds") -@pytest.mark.P2 -def test_SC_IR_001(global_test_env): - num = int(2 * global_test_env.max_byzantium) - log.info("Start {} nodes first".format(num)) - global_test_env.deploy_nodes(global_test_env.consensus_node_list[0:num], genesis_file=global_test_env.cfg.genesis_tmp) - i = 0 - global_test_env.deploy_nodes(global_test_env.consensus_node_list[num:], genesis_file=global_test_env.cfg.genesis_tmp) - while i <= 30: - global_test_env.reset_nodes(global_test_env.consensus_node_list[num:]) - i += 1 - global_test_env.check_block(node_list=global_test_env.consensus_node_list) - - -@allure.title("Start all nodes normally, gradually close f+1, and then start all gradually") -@pytest.mark.P0 -def test_SC_IR_002(global_test_env): - """ - After starting all nodes, gradually close f+1, then there will - be no block after closing, waiting for the block to be restarted. - """ - global_test_env.deploy_all() - test_nodes = global_test_env.consensus_node_list[0:global_test_env.max_byzantium + 1] - global_test_env.stop_nodes(test_nodes) - global_test_env.start_nodes(test_nodes, False) - global_test_env.check_block(need_number=20, multiple=2) - - -@allure.title("Start all nodes normally, gradually close f+1, and then start one step by step.") -@pytest.mark.P0 -def test_SC_RC_001(global_test_env): - """ - After starting all nodes, gradually close f+1, then there will be no - block after closing, waiting for the block to be restarted. - """ - global_test_env.deploy_all() - test_nodes = global_test_env.consensus_node_list[0:global_test_env.max_byzantium + 1] - global_test_env.stop_nodes(test_nodes) - global_test_env.start_nodes(test_nodes[global_test_env.max_byzantium:global_test_env.max_byzantium + 1], False) - global_test_env.check_block(multiple=5, node_list=global_test_env.consensus_node_list[global_test_env.max_byzantium:]) - - -@allure.title("Start all nodes normally, wait for a block of time, close one, and delete the database, start with fast mode") -@pytest.mark.P0 -def test_SC_FT_001(global_test_env): - """ - Start all nodes normally, wait for a block of time, close one, and delete the database, start with fast mode - """ - global_test_env.deploy_all() - time.sleep(100) - test_node = copy(global_test_env.get_rand_node()) - test_node.stop() - test_node.clean() - test_node.run_ssh("cd {};ls".format(test_node.remote_node_path)) - new_cfg = copy(global_test_env.cfg) - new_cfg.syncmode = "fast" - test_node.cfg = new_cfg - is_success, msg = test_node.deploy_me(genesis_file=new_cfg.genesis_tmp) - if not is_success: - raise Exception(msg) - time.sleep(100) - assert test_node.block_number > 100 diff --git a/cases/tests/blockchain/chain/test_chaininfo.py b/cases/tests/blockchain/chain/test_chaininfo.py deleted file mode 100644 index b406c3ad54..0000000000 --- a/cases/tests/blockchain/chain/test_chaininfo.py +++ /dev/null @@ -1,109 +0,0 @@ -import pytest -import allure -from environment.env import TestEnvironment -from copy import copy -from hexbytes import HexBytes -import time -from common.log import log - - -@pytest.fixture(scope="function", autouse=True) -def restart_env(global_test_env): - if not global_test_env.running: - global_test_env.deploy_all() - global_test_env.check_block(multiple=3) - - -@allure.title("Whether the block information is consistent") -def test_CH_IN_021(global_test_env): - """ - Test whether all node block information is consistent - """ - nodes = global_test_env.get_all_nodes() - rand_node = global_test_env.get_rand_node() - block_number = min(global_test_env.block_numbers().values()) - block_info = rand_node.eth.getBlock(block_number) - for node in nodes: - assert block_info == node.eth.getBlock(block_number), "The same block height information of different nodes is inconsistent, block number: {}".format( - block_number) - - -@allure.title("Block continuity, verify hash") -def test_CH_IN_020(global_test_env): - """ - Test block continuity, verify a certain number of blocks, block hash must be continuous - """ - global_test_env.check_block(100, 2) - node = global_test_env.get_rand_node() - block_hash = HexBytes(node.eth.getBlock(1).get("hash")).hex() - for i in range(2, 100): - block = node.eth.getBlock(i) - parent_hash = HexBytes(block.get("parentHash")).hex() - assert block_hash == parent_hash, "Parent block hash value error" - block_hash = HexBytes(block.get("hash")).hex() - - -@allure.title("Test the version number of the platon file") -@pytest.mark.P3 -def test_platon_versions(global_test_env): - node = global_test_env.get_rand_node() - cmd_list = node.run_ssh("{} version".format(node.remote_bin_file)) - assert global_test_env.version in cmd_list[1], "The version number is incorrect" - - -@allure.title("Test restart all consensus nodes") -@pytest.mark.P0 -def test_CH_IN_019_SC_RC_003(global_test_env): - current_block = max(global_test_env.block_numbers().values()) - log.info("Block height before restart:{}".format(current_block)) - global_test_env.reset_all() - log.info("Restart all consensus nodes successfully") - time.sleep(20) - after_block = max(global_test_env.block_numbers().values()) - log.info("After restarting, the block height is: {}".format(after_block)) - assert after_block - current_block > 0, "After the restart, the block did not grow normally." - - -@allure.title("Test fast mode synchronization") -@pytest.mark.P2 -def test_CH_IN_017(global_test_env): - test_node = copy(global_test_env.get_a_normal_node()) - test_node.clean() - new_cfg = copy(global_test_env.cfg) - new_cfg.syncmode = "fast" - test_node.cfg = new_cfg - log.info(global_test_env.cfg.syncmode) - test_node.deploy_me(global_test_env.cfg.genesis_tmp) - test_node.admin.addPeer(global_test_env.get_rand_node().enode) - time.sleep(5) - log.info("{}".format(test_node.web3.net.peerCount)) - assert test_node.web3.net.peerCount > 0, "Joining the chain failed" - global_test_env.check_block(200, 2) - time.sleep(5) - assert test_node.eth.blockNumber >= 200, "Block sync failed, current block is high{}".format(test_node.eth.blockNumber) - - -@allure.title("Test block synchronization") -@pytest.mark.P0 -def test_CH_IN_018_CH_IN_007_CMD_039(global_test_env): - """ - Non-consensus node block high synchronization - """ - test_node = global_test_env.get_a_normal_node() - test_node.clean() - new_cfg = global_test_env.cfg - new_cfg.syncmode = "full" - test_node.cfg = new_cfg - test_node.deploy_me(global_test_env.cfg.genesis_tmp) - test_node.admin.addPeer(global_test_env.get_rand_node().enode) - time.sleep(5) - assert test_node.web3.net.peerCount > 0, "Joining the chain failed" - global_test_env.check_block() - assert test_node.block_number > 0, "Non-consensus node sync block failed, block height: {}".format(test_node.block_number) - - -@allure.title("Test node interconnection between identical founding files") -@pytest.mark.P0 -def test_CH_IN_008_CH_IN_011(global_test_env): - test_node = global_test_env.normal_node_list[0] - assert test_node.web3.net.peerCount > 0, "Joining the chain failed" diff --git a/cases/tests/blockchain/chain/test_testnet.py b/cases/tests/blockchain/chain/test_testnet.py deleted file mode 100644 index 01e8a9f1df..0000000000 --- a/cases/tests/blockchain/chain/test_testnet.py +++ /dev/null @@ -1,98 +0,0 @@ -import time -from copy import copy - -import pytest -from alaya.eth import PlatON -from hexbytes import HexBytes - -from common.log import log - - -# @pytest.mark.skip("Test case process is random and needs to be executed multiple times manually") -def test_mainnet_fast(global_test_env): - test_node = copy(global_test_env.get_a_normal_node()) - test_node.clean() - new_cfg = copy(global_test_env.cfg) - new_cfg.init_chain = False - new_cfg.append_cmd = "--alaya" - new_cfg.syncmode = "fast" - test_node.cfg = new_cfg - log.info("start deploy {}".format(test_node.node_mark)) - log.info("is init:{}".format(test_node.cfg.init_chain)) - test_node.deploy_me(genesis_file=None) - log.info("deploy end") - time.sleep(5) - assert test_node.web3.net.peerCount == 0 - - -# @pytest.mark.skip("Test case process is random and needs to be executed multiple times manually") -def test_testnet_fast(global_test_env): - test_node = copy(global_test_env.get_a_normal_node()) - test_node.clean() - new_cfg = copy(global_test_env.cfg) - new_cfg.init_chain = False - new_cfg.append_cmd = "--alayatestnet" - new_cfg.syncmode = "fast" - test_node.cfg = new_cfg - log.info("start deploy {}".format(test_node.node_mark)) - log.info("is init:{}".format(test_node.cfg.init_chain)) - test_node.deploy_me(genesis_file=None) - log.info("deploy end") - time.sleep(5) - # assert test_node.web3.net.peerCount > 1 - time.sleep(10) - t = 2000 - while t: - print(test_node.block_number) - time.sleep(10) - t -= 10 - assert test_node.block_number >= 1000000 - -@pytest.mark.skip("Test case process is random and needs to be executed multiple times manually") -def test_testnet_full(global_test_env): - test_node = copy(global_test_env.get_a_normal_node()) - test_node.clean() - new_cfg = copy(global_test_env.cfg) - new_cfg.init_chain = False - new_cfg.append_cmd = "--testnet" - test_node.cfg = new_cfg - log.info("start deploy {}".format(test_node.node_mark)) - log.info("is init:{}".format(test_node.cfg.init_chain)) - test_node.deploy_me(genesis_file=None) - log.info("deploy end") - time.sleep(5) - assert test_node.web3.net.peerCount > 1 - time.sleep(10) - t = 18000 - while t: - print(test_node.block_number) - time.sleep(10) - t -= 10 - assert test_node.block_number >= 1000000 - - -def sendTransaction(w3, nonce, from_address): - # print(nonce) - to_address = w3.toChecksumAddress( - "0x54a7a3c6822eb222c53F76443772a60b0f9A8bab") - tmp_from_address = w3.toChecksumAddress(from_address) - platon = PlatON(w3) - transaction_dict = { - "to": to_address, - "gasPrice": platon.gasPrice, - "gas": 21000, - "nonce": nonce, - "data": "", - "chainId": 100, - "value": 1000, - 'from': tmp_from_address, - } - - signedTransactionDict = platon.account.signTransaction( - transaction_dict, "a689f0879f53710e9e0c1025af410a530d6381eebb5916773195326e123b822b" - ) - - # log.debug("signedTransactionDict:::::::{},nonce::::::::::{}".format(signedTransactionDict, nonce)) - - data = signedTransactionDict.rawTransaction - return HexBytes(platon.sendRawTransaction(data)).hex() \ No newline at end of file diff --git a/cases/tests/blockchain/chain/test_transaction.py b/cases/tests/blockchain/chain/test_transaction.py deleted file mode 100644 index ec5e085fe8..0000000000 --- a/cases/tests/blockchain/chain/test_transaction.py +++ /dev/null @@ -1,164 +0,0 @@ -import allure -import pytest - -from common.log import log - - -def transaction(w3, from_address, to_address=None, value=1000000000000000000000, gas=91000000, gasPrice=9000000000): - params = { - 'to': to_address, - 'from': from_address, - 'gas': gas, - 'gasPrice': gasPrice, - 'value': value - } - tx_hash = w3.eth.sendTransaction(params) - return tx_hash - - -def test_transac(global_running_env): - """废弃,其他用例覆盖""" - pass - # w3 = global_running_env.get_rand_node().eth - # w3.sendRawTransaction("0xf867058405f5e100825208940fc888cb0269f243bb4531edcb80ed5d39cc260d830186a08081eda06b2cd17a039d9cb8dec9a7881e681d00e708d8e07914bcd13f91566ffcbd0b6ba07628b5646c2e413ef0be79aba8edc51435c2435b032c86b4af38873a21a93635") - # - - -@allure.title("signed transaction") -@pytest.mark.P0 -@pytest.mark.compatibility -def test_TR_TX_001(global_running_env): - """ - Test signature transfer transaction - """ - node = global_running_env.get_rand_node() - value = 100000 - address, _ = global_running_env.account.generate_account(node.web3, value) - assert value == node.eth.getBalance(address) - - -@allure.title("new account singed transaction") -@pytest.mark.P0 -def test_TR_TX_006(global_running_env): - """ - After the new account has a balance, transfer it to another account. - """ - node = global_running_env.get_rand_node() - value = 10 ** 18 - address, _ = global_running_env.account.generate_account(node.web3, value) - assert value == node.eth.getBalance(address) - to_address, _ = global_running_env.account.generate_account(node.web3) - new_value = 1000 - global_running_env.account.sendTransaction(node.web3, "", address, to_address, node.eth.gasPrice, 21000, new_value) - assert new_value == node.eth.getBalance(to_address) - - -@allure.title("unlock sendtransaction") -@pytest.mark.P1 -@pytest.mark.parametrize("node_type", ["consensus", "normal"]) -def test_TR_TX_004_to_005(global_running_env, node_type): - """ - Node unlock transfer - """ - if node_type == "consensus": - node = global_running_env.get_rand_node() - else: - node = global_running_env.get_a_normal_node() - account = global_running_env.account - address = account.generate_account_in_node(node, "88888888", 10 ** 18) - account.unlock_account(node, address) - to_address, _ = account.generate_account(node.web3) - value = 1000 - tx_hash = transaction(node.web3, address, to_address, value, 21000, node.eth.gasPrice) - node.eth.waitForTransactionReceipt(tx_hash) - assert value == node.eth.getBalance(to_address) - - -@allure.title("money negative transaction") -@pytest.mark.P1 -def test_TR_TX_008(global_running_env): - """ - The transfer amount is negative - """ - node = global_running_env.get_rand_node() - account = global_running_env.account - status = 0 - try: - account.generate_account(node.web3, -1000) - status = 1 - except Exception as e: - log.info("transaction error:{}".format(e)) - assert status == 0 - - -@allure.title("balance insufficient transaction") -@pytest.mark.P2 -@pytest.mark.parametrize("balance", [0, 100, 1000]) -def test_TR_TX_002_to_003_and_007(global_running_env, balance): - """ - Balance is 0 transfer - Insufficient balance transfer - """ - node = global_running_env.get_rand_node() - account = global_running_env.account - address, _ = account.generate_account(node.web3, balance) - to_address, _ = account.generate_account(node.web3) - value = 1000 - status = 0 - try: - tx_res = account.sendTransaction(node.web3, "", address, to_address, node.eth.gasPrice, 21000, value) - status = 1 - except Exception as e: - log.info("transaction error:{}".format(e)) - assert status == 0 - - -@allure.title("gas too low") -@pytest.mark.P2 -def test_TR_TX_010(global_running_env): - """ - Gas is too low - """ - node = global_running_env.get_rand_node() - account = global_running_env.account - address = account.account_with_money["address"] - to_address, _ = account.generate_account(node.web3) - value = 1000 - status = 0 - try: - tx_res = account.sendTransaction(node.web3, "", address, to_address, node.eth.gasPrice, 210, value) - status = 1 - except Exception as e: - log.info("transaction error:{}".format(e)) - assert status == 0 - - -@allure.title("wallet non local") -@pytest.mark.P3 -def test_TR_TX_011(global_running_env): - """ - Transfer to a non-local wallet - """ - node = global_running_env.get_rand_node() - value = 100000 - address, _ = global_running_env.account.generate_account(node.web3, value) - assert value == node.eth.getBalance(address) - - -@allure.title("to account abnormal") -@pytest.mark.P3 -@pytest.mark.parametrize("to_address", ["", "abcdefghigk"]) -def test_TR_TX_012_to_013(global_running_env, to_address): - """ - To address abnormal - """ - node = global_running_env.get_rand_node() - account = global_running_env.account - from_address = account.account_with_money["address"] - status = 0 - try: - tx_res = account.sendTransaction(node.web3, "", from_address, to_address, node.eth.gasPrice, 21000, 100, False) - status = 1 - except Exception as e: - log.info("transaction error:{}".format(e)) - assert status == 0 diff --git a/cases/tests/blockchain/cmd/__init__.py b/cases/tests/blockchain/cmd/__init__.py deleted file mode 100644 index e2c7bb7a63..0000000000 --- a/cases/tests/blockchain/cmd/__init__.py +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- -#   @Time    : 2019/11/19 19:51 -#   @Author  : PlatON-Developer -#   @Site    : https://github.com/PlatONnetwork/ diff --git a/cases/tests/blockchain/cmd/test_account.py b/cases/tests/blockchain/cmd/test_account.py deleted file mode 100644 index 1716fefb51..0000000000 --- a/cases/tests/blockchain/cmd/test_account.py +++ /dev/null @@ -1,463 +0,0 @@ -import time - -import allure -import pytest -from alaya.eth import Eth -from eth_utils import is_integer - -from common.log import log -from common.connect import run_ssh_cmd -from alaya.admin import Admin - -from conf.settings import NODE_FILE -# from environment import t1est_env_impl - - -# py.test tests/cmd/account/t1est_account.py -s --nodeFile "deploy/4_node.yml" --accountFile "deploy/accounts.yml" --initChain --startAll -from environment import Node - - -class AccountEnv: - __slots__ = ('remote_pwd_file', 'remote_account_address', 'remote_account_file', 'remote_key_file') - - -@pytest.fixture(scope='module', autouse=False) -def account_env(global_test_env) -> (Node, AccountEnv): - log.info("module account begin.................................") - - env = global_test_env - node = env.get_rand_node() - log.info("Node::::::::::::::::::::::::::::::{}:{}".format(node.host, node.p2p_port)) - - remote_pwd_file = node.remote_node_path + "/password.txt" - node.upload_file("./deploy/keystore/password.txt", remote_pwd_file) - - remote_account_file = node.remote_keystore_dir + "/UTC--2019-08-23T12-33-18.192329788Z--2e95e3ce0a54951eb9a99152a6d5827872dfb4fd" - # node.upload_file("./deploy/keystore/UTC--2019-10-15T10-27-31.520865283Z--c198603d3793c11e5362c8564a65d3880bae341b", remote_account_file) - - remote_key_file = node.remote_keystore_dir + "/key.pri" - node.upload_file("./deploy/key.pri", remote_key_file) - - account_env = AccountEnv() - account_env.remote_pwd_file = remote_pwd_file - account_env.remote_account_file = remote_account_file - account_env.remote_key_file = remote_key_file - account_env.remote_account_address = "atx1zkrxx6rf358jcvr7nruhyvr9hxpwv9unj58er9" - - yield node, account_env - - log.info("module account end.................................") - # node.deleteRemoteFile(remote_pwd_file) - # node.deleteRemoteFile(remote_pwd_file) - # node.deleteRemoteFile(remote_pwd_file) - - -@allure.title("Specify the datadir and keystore paths and create a new account by entering a password.") -@pytest.mark.P1 -@pytest.mark.SYNC -def test_CMD_002(account_env): - node, env = account_env - return_list = run_ssh_cmd(node.ssh, "{} account list --datadir {}".format(node.remote_bin_file, node.remote_data_dir)) - old_counts = len(return_list) - 1 - - run_ssh_cmd(node.ssh, "{} account new --datadir {} --keystore {}".format(node.remote_bin_file, node.remote_data_dir, node.remote_keystore_dir), "88888888", "88888888") - time.sleep(0.2) - return_list2 = run_ssh_cmd(node.ssh, "{} account list --datadir {}".format(node.remote_bin_file, node.remote_data_dir)) - new_counts = len(return_list2) - 1 - assert old_counts + 1 == new_counts - - -@allure.title("Specify datadir. In the default datadir/keystore, create a new account by entering a password.") -@pytest.mark.P1 -@pytest.mark.SYNC -def test_CMD_003(account_env): - node, env = account_env - return_list = run_ssh_cmd(node.ssh, "{} account list --datadir {}".format(node.remote_bin_file, node.remote_data_dir)) - old_counts = len(return_list) - 1 - - run_ssh_cmd(node.ssh, "{} account new --datadir {}".format(node.remote_bin_file, node.remote_data_dir), "88888888", "88888888") - time.sleep(0.2) - return_list2 = run_ssh_cmd(node.ssh, "{} account list --datadir {}".format(node.remote_bin_file, node.remote_data_dir)) - new_counts = len(return_list2) - 1 - assert old_counts + 1 == new_counts - - -@allure.title("Specify a keystore and create a new account by entering a password.") -@pytest.mark.P1 -@pytest.mark.SYNC -def test_CMD_004(account_env): - node, env = account_env - return_list = run_ssh_cmd(node.ssh, "{} account list --keystore {}".format(node.remote_bin_file, node.remote_keystore_dir)) - old_counts = len(return_list) - 1 - - run_ssh_cmd(node.ssh, "{} account new --keystore {}".format(node.remote_bin_file, node.remote_keystore_dir), "88888888", "88888888") - time.sleep(0.2) - return_list2 = run_ssh_cmd(node.ssh, "{} account list --keystore {}".format(node.remote_bin_file, node.remote_keystore_dir)) - new_counts = len(return_list2) - 1 - assert old_counts + 1 == new_counts - - -@allure.title("Specify the datadir and keystore paths to create a new account with a password file.") -@pytest.mark.P1 -@pytest.mark.SYNC -def test_CMD_001(account_env): - node, env = account_env - return_list = run_ssh_cmd(node.ssh, "{} account list --datadir {}".format(node.remote_bin_file, node.remote_data_dir)) - old_counts = len(return_list) - 1 - - run_ssh_cmd(node.ssh, "{} account new --datadir {} --keystore {} --password {}".format(node.remote_bin_file, - node.remote_data_dir, - node.remote_keystore_dir, - env.remote_pwd_file)) - time.sleep(0.2) - return_list2 = run_ssh_cmd(node.ssh, "{} account list --datadir {}".format(node.remote_bin_file, node.remote_data_dir)) - new_counts = len(return_list2) - 1 - assert old_counts + 1 == new_counts - - -@allure.title("Specify datadir, create a new account with the password file in the default datadir/keystore") -@pytest.mark.P1 -@pytest.mark.SYNC -def test_CMD_003_2(account_env): - node, env = account_env - return_list = run_ssh_cmd(node.ssh, "{} account list --datadir {}".format(node.remote_bin_file, node.remote_data_dir)) - old_counts = len(return_list) - 1 - - run_ssh_cmd(node.ssh, "{} account new --datadir {} --password {}".format(node.remote_bin_file, - node.remote_data_dir, - env.remote_pwd_file)) - time.sleep(0.2) - return_list2 = run_ssh_cmd(node.ssh, "{} account list --datadir {}".format(node.remote_bin_file, node.remote_data_dir)) - new_counts = len(return_list2) - 1 - assert old_counts + 1 == new_counts - - -@allure.title("Specify a keystore and create a new account by entering a password.") -@pytest.mark.P1 -@pytest.mark.SYNC -def test_CMD_004_2(account_env): - node, env = account_env - return_list = run_ssh_cmd(node.ssh, "{} account list --keystore {}".format(node.remote_bin_file, node.remote_keystore_dir)) - old_counts = len(return_list) - 1 - - run_ssh_cmd(node.ssh, "{} account new --keystore {} --password {}".format(node.remote_bin_file, node.remote_keystore_dir, env.remote_pwd_file)) - time.sleep(0.2) - return_list2 = run_ssh_cmd(node.ssh, "{} account list --keystore {}".format(node.remote_bin_file, node.remote_keystore_dir)) - new_counts = len(return_list2) - 1 - assert old_counts + 1 == new_counts - - -@allure.title("Change account password, specify datadir") -@pytest.mark.P1 -@pytest.mark.SYNC -def test_CMD_005(account_env): - node, env = account_env - returnList = run_ssh_cmd(node.ssh, "{} account update {} --datadir {}".format(node.remote_bin_file, env.remote_account_address, node.remote_data_dir), "88888888", "88888888", "88888888") - log.info(f'returnList is {returnList}') - assert len(returnList) == 6 - assert returnList[5].strip() == "Repeat passphrase:" - - -@allure.title("Change account password, specify keystore") -@pytest.mark.P1 -@pytest.mark.SYNC -def test_CMD_006(account_env): - node, env = account_env - returnList = run_ssh_cmd(node.ssh, "{} account update {} --keystore {}".format(node.remote_bin_file, env.remote_account_address, node.remote_keystore_dir), "88888888", "88888888", "88888888") - - assert len(returnList) == 6 - assert returnList[5].strip() == "Repeat passphrase:" - - -@allure.title("Import account, do not specify password file, specify datadir") -@pytest.mark.P1 -@pytest.mark.SYNC -def test_CMD_007(account_env): - node, env = account_env - log.info(node.node_mark) - return_list = run_ssh_cmd(node.ssh, "{} account list --datadir {}".format(node.remote_bin_file, node.remote_data_dir)) - old_counts = len(return_list) - 1 - - remote_key_file = node.remote_keystore_dir + "/key.pri" - node.upload_file("./deploy/key.pri", remote_key_file) - - run_ssh_cmd(node.ssh, "{} account import {} --datadir {}".format(node.remote_bin_file, remote_key_file, node.remote_data_dir), "88888888", "88888888") - time.sleep(2) - return_list2 = run_ssh_cmd(node.ssh, "{} account list --datadir {}".format(node.remote_bin_file, node.remote_data_dir)) - - new_counts = len(return_list2) - 1 - - assert old_counts + 1 == new_counts - - -@allure.title("Import account, do not specify password file, specify keystore") -@pytest.mark.P1 -@pytest.mark.SYNC -def test_CMD_010_CMD_034(account_env): - node, env = account_env - - return_list = run_ssh_cmd(node.ssh, "{} account list --keystore {}".format(node.remote_bin_file, node.remote_keystore_dir)) - old_counts = len(return_list) - 1 - - remote_key_file = node.remote_keystore_dir + "/key.pri_2" - node.upload_file("./deploy/key.pri_2", remote_key_file) - - run_ssh_cmd(node.ssh, "{} account import {} --keystore {}".format(node.remote_bin_file, remote_key_file, node.remote_keystore_dir), "88888888", "88888888") - time.sleep(0.2) - return_list2 = run_ssh_cmd(node.ssh, "{} account list --keystore {}".format(node.remote_bin_file, node.remote_keystore_dir)) - - new_counts = len(return_list2) - 1 - - assert old_counts + 1 == new_counts - - -@allure.title("Import account, specify password file, specify datadir") -@pytest.mark.P1 -@pytest.mark.SYNC -def test_CMD_009(account_env): - node, env = account_env - - return_list = run_ssh_cmd(node.ssh, "{} account list --datadir {}".format(node.remote_bin_file, node.remote_data_dir)) - old_counts = len(return_list) - 1 - - remote_key_file = node.remote_keystore_dir + "/key.pri_3" - node.upload_file("./deploy/key.pri_3", remote_key_file) - - run_ssh_cmd(node.ssh, "{} account import {} --datadir {} --password {}".format(node.remote_bin_file, remote_key_file, node.remote_data_dir, env.remote_pwd_file)) - time.sleep(0.2) - return_list2 = run_ssh_cmd(node.ssh, "{} account list --datadir {}".format(node.remote_bin_file, node.remote_data_dir)) - - new_counts = len(return_list2) - 1 - - assert old_counts + 1 == new_counts - - -@allure.title("Import account, specify password file, specify keystore") -@pytest.mark.P1 -@pytest.mark.SYNC -def test_CMD_008(account_env): - node, env = account_env - - return_list = run_ssh_cmd(node.ssh, "{} account list --keystore {}".format(node.remote_bin_file, node.remote_keystore_dir)) - old_counts = len(return_list) - 1 - - remote_key_file = node.remote_keystore_dir + "/key.pri_4" - node.upload_file("./deploy/key.pri_4", remote_key_file) - - run_ssh_cmd(node.ssh, "{} account import {} --keystore {} --password {}".format(node.remote_bin_file, remote_key_file, node.remote_keystore_dir, env.remote_pwd_file)) - time.sleep(0.2) - return_list2 = run_ssh_cmd(node.ssh, "{} account list --keystore {}".format(node.remote_bin_file, node.remote_keystore_dir)) - - new_counts = len(return_list2) - 1 - - assert old_counts + 1 == new_counts - - -@allure.title("List account") -@pytest.mark.P1 -@pytest.mark.SYNC -def test_CMD_011(account_env): - node, env = account_env - - return_list1 = run_ssh_cmd(node.ssh, "{} account list --datadir {}".format(node.remote_bin_file, node.remote_data_dir)) - - counts1 = len(return_list1) - 1 - - return_list2 = run_ssh_cmd(node.ssh, "{} account list --keystore {}".format(node.remote_bin_file, node.remote_keystore_dir)) - counts2 = len(return_list2) - 1 - - assert counts1 == counts2 - - -''' -platon attach http / ws -''' - - -@allure.title("Connect the node and open the js interactive console") -@pytest.mark.P3 -def test_CMD_015(account_env): - node, env = account_env - - print("node.remote_bin_file:::", node.remote_bin_file) - print("node.url:::", node.url) - - blockNumber = node.run_ssh("{} attach {} --exec platon.blockNumber".format(node.remote_bin_file, node.url)) - - bn = int(blockNumber[0]) - - assert is_integer(bn) - assert bn > 0 - - -''' -platon attach http / ws -''' -@allure.title("Copy chain data") -@pytest.mark.P3 -def test_CMD_016(global_test_env): - global_env = global_test_env - - node = global_env.consensus_node_list[0] - - log.info("test copydb on host: {}".format(node.host)) - - node.stop() - - # copy deploy data to bak - bakremote_data_dir = node.remote_node_path + "/data_bak" - - run_ssh_cmd(node.ssh, "sudo -S -p '' cp -r {} {}".format(node.remote_data_dir, bakremote_data_dir), node.password) - - run_ssh_cmd(node.ssh, "sudo -S -p '' rm -rf {}/platon".format(node.remote_data_dir), node.password) - # run_ssh_cmd(node.ssh, "sudo -S -p '' rm -rf {}/platon/chaindata".format(node.remote_data_dir), node.password) - - # re-init - run_ssh_cmd(node.ssh, "sudo -S -p '' {} init {} --datadir {}".format(node.remote_bin_file, node.remote_genesis_file, node.remote_data_dir), node.password) - - time.sleep(10) - - # copyDb from bak - run_ssh_cmd(node.ssh, "sudo -S -p '' {} copydb {}/platon/chaindata/ {}/platon/snapshotdb/ --datadir {}".format(node.remote_bin_file, bakremote_data_dir, bakremote_data_dir, node.remote_data_dir), node.password) - time.sleep(10) - - node.start(False) - - time.sleep(5) - - blockNumber = node.run_ssh("{} attach {} --exec platon.blockNumber".format(node.remote_bin_file, node.url)) - - for i in range(len(blockNumber)): - print("Serial number:{}".format(i), "result:{}".format(blockNumber[i])) - - bn = int(blockNumber[0]) - - assert is_integer(bn) - assert bn > 0 - # pass - - -@allure.title("Analyze a specific block") -@pytest.mark.P3 -def test_CMD_017(global_test_env): - global_env = global_test_env - - node = global_env.consensus_node_list[0] - node.stop() - - # dump - return_list = run_ssh_cmd(node.ssh, "sudo -S -p '' {} --datadir {} dump 0".format(node.remote_bin_file, node.remote_data_dir), node.password) - - node.start(False) - - assert len(return_list) > 0 and "root" in return_list[1] - - -@allure.title("Display configuration values(you can view the default configuration information of the node)") -@pytest.mark.P3 -def test_CMD_018(global_test_env): - global_env = global_test_env - - node = global_env.consensus_node_list[0] - # dump - returnList = run_ssh_cmd(node.ssh, "{} --nodekey {} --cbft.blskey {} dumpconfig".format(node.remote_bin_file, node.remote_nodekey_file, node.remote_blskey_file)) - assert returnList[0].strip() == '[Eth]' - - -@allure.title("Modify the exported value when exporting") -@pytest.mark.P3 -def test_CMD_019(global_test_env): - global_env = global_test_env - - node = global_env.consensus_node_list[0] - # dump - return_list = run_ssh_cmd(node.ssh, "{} --nodekey {} --cbft.blskey {} dumpconfig --networkid 1500".format(node.remote_bin_file, node.remote_nodekey_file, node.remote_blskey_file)) - - assert return_list[1].strip() == 'NetworkId = 1500' - - -@allure.title("Import blocks from the hash image file") -@pytest.mark.P3 -def test_CMD_025(global_test_env): - global_env = global_test_env - - node = global_env.consensus_node_list[0] - node.stop() - - # dump - export_list = run_ssh_cmd(node.ssh, "sudo -S -p '' {} export-preimages exportPreImage --datadir {}".format(node.remote_bin_file, node.remote_data_dir), node.password) - for i in range(len(export_list)): - log.info("Serial number:{} result:{}".format(i, export_list[i])) - - time.sleep(1) - - import_list = run_ssh_cmd(node.ssh, "sudo -S -p '' {} import-preimages exportPreImage --datadir {}".format(node.remote_bin_file, node.remote_data_dir), node.password) - node.start(False) - - for i in range(len(import_list)): - log.info("Serial number:{} result:{}".format(i, import_list[i])) - - assert len(export_list) == 1 - assert len(import_list) == 1 - - -@allure.title("Display version information") -@pytest.mark.P3 -def test_CMD_026(global_test_env): - global_env = global_test_env - - node = global_env.consensus_node_list[0] - - return_list = run_ssh_cmd(node.ssh, "{} license".format(node.remote_bin_file)) - # for i in range(len(returnList)): - # log.info("Serial number:{} result:{}".format(i, returnList[i])) - - assert return_list[0].strip() == "platon is free software: you can redistribute it and/or modify" - - -@allure.title("Display chain version") -@pytest.mark.P3 -def test_CMD_029(global_test_env): - global_env = global_test_env - - node = global_env.consensus_node_list[0] - - return_list = run_ssh_cmd(node.ssh, "{} version".format(node.remote_bin_file)) - # for i in range(len(returnList)): - # log.info("Serial number:{} Result: {}".format(i, returnList[i])) - - assert return_list[0].strip() == "PlatON" - assert "Version:" in return_list[1] - - -@allure.title("Load configuration file") -@pytest.mark.P3 -def test_CMD_033_CMD_034(global_test_env): - global_env = global_test_env - - node = global_env.consensus_node_list[0] - node.stop() - - run_ssh_cmd(node.ssh, "sed -i 's/\"NetworkId\": 1/\"NetworkId\": 111/g' {}".format(node.remote_config_file)) - - node.start(False) - - time.sleep(2) - - ret = node.admin.nodeInfo - # print(ret) - assert ret["protocols"]["platon"]["network"] == 111 - -# Todo: use case without assertion -# def no_t1est_removedb(global_test_env): -# globalEnv = global_test_env -# -# node = globalEnv.consensus_node_list[0] -# node.stop() -# -# returnList = run_ssh_cmd(node.ssh, "{} removedb --datadir {}".format(node.remote_bin_file, node.remote_data_dir, "y", "y")) -# for i in range(len(returnList)): -# log.info("Serial number:{} result".format(i, returnList[i])) -# -# node.start(False) - #assert returnList[0].strip()=="platon is free software: you can redistribute it and/or modify" diff --git a/cases/tests/blockchain/cmd/test_param.py b/cases/tests/blockchain/cmd/test_param.py deleted file mode 100644 index 754abf1705..0000000000 --- a/cases/tests/blockchain/cmd/test_param.py +++ /dev/null @@ -1,176 +0,0 @@ -import socket -import time -from copy import copy -import pytest -import allure - -from common.connect import connect_web3, run_ssh - - -def isConnection(ip, port): - """ - Checks whether the specified port is open - :param ip: ip address - :param port: port - :return: boole - """ - s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - try: - s.connect((ip, port)) - s.shutdown(2) - return True - except BaseException: - return False - - -def file_is_exist(ssh, path, file_name): - cmd_list = run_ssh( - ssh, "find {} -name {}".format(path, file_name)) - if len(cmd_list) > 0: - return file_name in cmd_list[0] - return False - - -def append_cmd_restart(global_test_env, cmd, node=None): - if node is None: - node = global_test_env.get_rand_node() - test_node = copy(node) - test_node.clean() - new_cfg = copy(global_test_env.cfg) - new_cfg.append_cmd = cmd - test_node.cfg = new_cfg - test_node.deploy_me(genesis_file=new_cfg.genesis_tmp) - return test_node - - -class TestStartParam(object): - - @pytest.mark.compatibility - @allure.title("Test access rpcapi") - @pytest.mark.P3 - def test_CMD_077(self, global_test_env): - env = global_test_env - node = env.get_rand_node() - modules = node.web3.manager.request_blocking("rpc_modules", []) - api_method = "debug" - assert modules.get(api_method) is not None - - @pytest.mark.compatibility - @allure.title("Test to enable ws function") - @pytest.mark.P3 - def test_CMD_078_CMD_081(self, global_test_env): - env = global_test_env - node = env.get_rand_node() - ws_url = "ws://{}:".format(node.host) - ws_port = node.wsport - if ws_port is None: - ws_port = 16000 - node.wsport = ws_port - node.wsurl = "{}{}".format(ws_url, ws_port) - append_cmd_restart(global_test_env, None, node) - assert node.ws_web3.isConnected() - - @allure.title("Test to enable wsapi function") - @pytest.mark.P3 - def test_CMD_082(self, global_test_env): - env = global_test_env - node = env.get_rand_node() - if node.wsport is None: - node.wsport = 16000 - node.wsurl = "ws://{}:{}".format(node.host, node.wsport) - append_cmd_restart(global_test_env, None, node) - modules = node.ws_web3.manager.request_blocking("rpc_modules", []) - api_method = "debug" - assert modules.get(api_method) is not None - - @allure.title("Test to enable ipc function") - @pytest.mark.P3 - @pytest.mark.compatibility - def test_enable_ipc(self, global_test_env): - env = global_test_env - node = env.get_rand_node() - assert file_is_exist(node.ssh, node.remote_data_dir, "platon.ipc") - - @allure.title("Test off ipc function") - @pytest.mark.P3 - def test_CMD_085(self, global_test_env): - test_node = append_cmd_restart(global_test_env, "--ipcdisable") - assert bool(1 - file_is_exist(test_node.ssh, test_node.remote_data_dir, "platon.ipc")) - - @allure.title("Test configuration ipc file name") - @pytest.mark.P3 - def test_CMD_086(self, global_test_env): - test_node = append_cmd_restart(global_test_env, "--ipcpath platon_test.ipc") - time.sleep(10) - assert file_is_exist(test_node.ssh, test_node.remote_data_dir, "platon_test.ipc") - - @pytest.mark.compatibility - @allure.title("Test enable seed node") - @pytest.mark.P3 - def test_CMD_089(self, global_test_env): - global_test_env.deploy_all() - env = global_test_env - normal_node = env.get_a_normal_node() - collusion_node = env.get_rand_node() - new_cfg = copy(env.cfg) - test_node = copy(normal_node) - test_node.clean() - new_cfg.is_need_static = False - new_cfg.append_cmd = "--bootnodes \"{}\"".format(collusion_node.enode) - test_node.cfg = new_cfg - test_node.deploy_me(genesis_file=new_cfg.genesis_tmp) - time.sleep(20) - node_peers = test_node.admin.peers - assert len(node_peers) == 1 - assert node_peers[0]["id"] == collusion_node.node_id - - @pytest.mark.compatibility - @allure.title("Test open p2p port") - @pytest.mark.P3 - def test_CMD_090(self, global_test_env): - env = global_test_env - node = env.get_rand_node() - assert isConnection(node.host, int(node.p2p_port)) - - @pytest.mark.compatibility - @allure.title("Test to enable the discovery function") - @pytest.mark.P3 - def test_CMD_097(self, global_test_env): - env = global_test_env - node = env.get_rand_node() - node_info = node.admin.nodeInfo - discovery = node_info["ports"]["discovery"] - assert discovery != 0 - - @allure.title("Test off the discovery function") - @pytest.mark.P3 - def test_CMD_098(self, global_test_env): - test_node = append_cmd_restart(global_test_env, "--nodiscover") - node_info = test_node.admin.nodeInfo - discovery = node_info["ports"]["discovery"] - assert discovery == 0 - - @allure.title("Test to enable pprof function") - @pytest.mark.P3 - def test_CMD_115(self, global_test_env): - test_node = global_test_env.get_rand_node() - pprof = 6060 - test_node = append_cmd_restart(global_test_env, - "--pprof --pprofaddr {} --pprofport {}".format(test_node.host, pprof), test_node) - assert isConnection(test_node.host, pprof) - - @allure.title("Test to enable trace information file output") - @pytest.mark.P3 - def test_CMD_119(self, global_test_env): - test_node = global_test_env.get_rand_node() - append_cmd_restart(global_test_env, "--trace {}/tracefile".format(test_node.remote_node_path), test_node) - time.sleep(10) - assert file_is_exist(test_node.ssh, test_node.remote_node_path, "tracefile") - - @allure.title("Test open output cpufile content") - @pytest.mark.P3 - def test_CMD_118(self, global_test_env): - test_node = global_test_env.get_rand_node() - append_cmd_restart(global_test_env, "--cpuprofile {}/cpufile".format(test_node.remote_node_path), test_node) - time.sleep(10) - assert file_is_exist(test_node.ssh, test_node.remote_node_path, "cpufile") diff --git a/cases/tests/blockchain/initialize/test_initialize.py b/cases/tests/blockchain/initialize/test_initialize.py deleted file mode 100644 index 2dd714bd6b..0000000000 --- a/cases/tests/blockchain/initialize/test_initialize.py +++ /dev/null @@ -1,126 +0,0 @@ -import os -import pytest -import json -import allure -from tests.lib.genesis import to_genesis -from common.log import log - - -@pytest.fixture(scope="function", autouse=True) -def restart_env(global_test_env): - if not global_test_env.running: - global_test_env.deploy_all() - global_test_env.check_block(multiple=3) - - -@allure.title("View Creation Account") -@pytest.mark.P1 -def test_CH_IN_012(global_test_env): - """ - View the creation account created in the genesis_0.13.0.json file - """ - log.info("View the creation account created in the genesis_0.13.0.json file") - w3_list = [one_node.web3 for one_node in global_test_env.consensus_node_list] - for w3 in w3_list: - for one_address in global_test_env.genesis_config['alloc']: - balance = w3.eth.getBalance(w3.toChecksumAddress(one_address)) - assert balance >= 0, "初始化账户错误" - - -@allure.title("Economic model parameters, governance parameters, penalty parameters, reward parameters") -@pytest.mark.P1 -def test_CH_IN_015(global_test_env): - """ - View economic model parameters, governance parameters, penalty parameters, and whether the reward parameters are correctly configured parameters - """ - log.info("View economic model parameters, governance parameters, penalty parameters, and whether the reward parameters are correctly configured parameters") - # economic_info = global_test_env.genesis_config['EconomicModel'] - if not global_test_env.running: - global_test_env.deploy_all() - genesis = to_genesis(global_test_env.genesis_config) - w3_list = [one_node.web3 for one_node in global_test_env.consensus_node_list] - for w3 in w3_list: - info = w3.debug.economicConfig() - assert info['common']['maxEpochMinutes'] == genesis.economicModel.common.maxEpochMinutes - assert info['common']['maxConsensusVals'] == genesis.economicModel.common.maxConsensusVals - assert info["common"]["additionalCycleTime"] == genesis.economicModel.common.additionalCycleTime - - assert info['staking']['stakeThreshold'] == genesis.economicModel.staking.stakeThreshold - assert info['staking']['operatingThreshold'] == genesis.economicModel.staking.operatingThreshold - assert info['staking']['maxValidators'] == genesis.economicModel.staking.maxValidators - # assert info['staking']['hesitateRatio'] == genesis.economicModel.staking.hesitateRatio - assert info['staking']['unStakeFreezeDuration'] == genesis.economicModel.staking.unStakeFreezeDuration - - assert info['slashing']['slashFractionDuplicateSign'] == genesis.economicModel.slashing.slashFractionDuplicateSign - assert info['slashing']['duplicateSignReportReward'] == genesis.economicModel.slashing.duplicateSignReportReward - assert info['slashing']['slashBlocksReward'] == genesis.economicModel.slashing.slashBlocksReward - assert info['slashing']['maxEvidenceAge'] == genesis.economicModel.slashing.maxEvidenceAge - - assert info['gov']['versionProposalVoteDurationSeconds'] == genesis.economicModel.gov.versionProposalVoteDurationSeconds - assert info['gov']['versionProposalSupportRate'] == genesis.economicModel.gov.versionProposalSupportRate - assert info['gov']['textProposalVoteDurationSeconds'] == genesis.economicModel.gov.textProposalVoteDurationSeconds - assert info['gov']['textProposalVoteRate'] == genesis.economicModel.gov.textProposalVoteRate - assert info['gov']['textProposalSupportRate'] == genesis.economicModel.gov.textProposalSupportRate - assert info['gov']['cancelProposalVoteRate'] == genesis.economicModel.gov.cancelProposalVoteRate - assert info['gov']['cancelProposalSupportRate'] == genesis.economicModel.gov.cancelProposalSupportRate - assert info['gov']['paramProposalVoteDurationSeconds'] == genesis.economicModel.gov.paramProposalVoteDurationSeconds - assert info['gov']['paramProposalVoteRate'] == genesis.economicModel.gov.paramProposalVoteRate - assert info['gov']['paramProposalSupportRate'] == genesis.economicModel.gov.paramProposalSupportRate - - assert info['reward']['newBlockRate'] == genesis.economicModel.reward.newBlockRate - assert info['reward']['platonFoundationYear'] == genesis.economicModel.reward.platONFoundationYear - - assert w3.toChecksumAddress(info['innerAcc']['platonFundAccount']) == w3.toChecksumAddress(genesis.economicModel.innerAcc.platonFundAccount) - assert info['innerAcc']['platonFundBalance'] == genesis.economicModel.innerAcc.platonFundBalance - assert w3.toChecksumAddress(info['innerAcc']['cdfAccount']) == w3.toChecksumAddress(genesis.economicModel.innerAcc.cdfAccount) - assert info['innerAcc']['cdfBalance'] == genesis.economicModel.innerAcc.cdfBalance - - -@allure.title("Foundation lock warehouse plan inquiry") -@pytest.mark.P1 -def test_CH_IN_014(global_test_env): - """ - View the foundation lock warehouse plan query - """ - log.info("View the foundation lock warehouse plan query") - w3_list = [one_node.web3 for one_node in global_test_env.consensus_node_list] - for w3 in w3_list: - info = w3.eth.call({"to": "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpd3er4y", "data": "0xda8382100495941000000000000000000000000000000000000003"}, 0) - recive = json.loads(str(info, encoding="ISO-8859-1")) - pass - # move for 0.7.5 - # plans = recive['Ret']['plans'] - # assert(8 == len(plans)) - # for i in range(len(plans)): - # if 1600 == plans[i]['blockNumber']: - # assert plans[i]['amount'] == "0x2e4b34f3fb9ea4f3f80000" - # if 3200 == plans[i]['blockNumber']: - # assert plans[i]['amount'] == "0x28fea171d6cdd2a4900000" - # if 4800 == plans[i]['blockNumber']: - # assert plans[i]['amount'] == "0x239023dcb60bdb30380000" - # if 6400 == plans[i]['blockNumber']: - # assert plans[i]['amount'] == "0x1dfee325efc6d87ee00000" - # if 8000 == plans[i]['blockNumber']: - # assert plans[i]['amount'] == "0x184a00c53258036e040000" - # if 9600 == plans[i]['blockNumber']: - # assert plans[i]['amount'] == "0x127098c664ba6778100000" - # if 11200 == plans[i]['blockNumber']: - # assert plans[i]['amount'] == "0xc71c15aa0d54579400000" - # if 12800 == plans[i]['blockNumber']: - # assert plans[i]['amount'] == "0x64c8af3f4e97afe680000" - - -@allure.title("Consensus parameter") -@pytest.mark.P1 -def test_CH_IN_016(global_test_env): - """ - View the number of blocks of each consensus node of the consensus - """ - log.info("View the number of outbound blocks of each consensus node and the total number of consensus nodes") - amount = global_test_env.genesis_config['config']['cbft']['amount'] - w3_list = [one_node.web3 for one_node in global_test_env.consensus_node_list] - for w3 in w3_list: - info = w3.eth.getPrepareQC(amount) - assert info['viewNumber'] == 0 - info = w3.eth.getPrepareQC(amount + 1) - assert info['viewNumber'] == 1 diff --git a/cases/tests/blockchain/p2p/test_p2p.py b/cases/tests/blockchain/p2p/test_p2p.py deleted file mode 100644 index 3c5093b9bf..0000000000 --- a/cases/tests/blockchain/p2p/test_p2p.py +++ /dev/null @@ -1,183 +0,0 @@ -import os -import pytest -import json -import allure -from common.log import log -from concurrent.futures import ThreadPoolExecutor, wait, ALL_COMPLETED -from common.load_file import LoadFile -from common.connect import run_ssh_cmd - - -def one_put_config_task(node): - try: - node.put_config() - except Exception as e: - return False, "{} upload config file failed:{}".format(node.node_mark, e) - return True, "{} upload config file success".format(node.node_mark) - - -def one_put_static_task(node): - try: - node.put_static() - except Exception as e: - return False, "{} upload static file failed:{}".format(node.node_mark, e) - return True, "{} upload static file success".format(node.node_mark) - - -def one_put_genesis_task(node, genesis_file): - try: - node.put_genesis(genesis_file) - except Exception as e: - return False, "{} upload genesis file failed:{}".format(node.node_mark, e) - return True, "{} upload genesis file success".format(node.node_mark) - - -@pytest.fixture(scope="module", autouse=True) -def reset_config(global_test_env): - yield - config_data = LoadFile(global_test_env.cfg.config_json_tmp).get_data() - with open(global_test_env.cfg.config_json_tmp, 'w', encoding='utf-8') as f: - f.write(json.dumps(config_data, indent=4)) - global_test_env.deploy_all() - - -@allure.title("Node maximum link quantity test") -@pytest.mark.P1 -def test_NE_P2P_001(global_test_env): - log.info("Node maximum link quantity test") - all_node = global_test_env.get_all_nodes() - - # stop node - if global_test_env.running: - global_test_env.stop_all() - - # modify config file - config_data = LoadFile(global_test_env.cfg.config_json_tmp).get_data() - config_data['node']['P2P']['MaxPeers'] = 2 - with open(global_test_env.cfg.config_json_tmp, 'w', encoding='utf-8') as f: - f.write(json.dumps(config_data, indent=4)) - - # upload config file - global_test_env.executor(one_put_config_task, all_node) - - # start node - global_test_env.cfg.init_chain = False - global_test_env.start_all() - - # run ssh - static_number = len(global_test_env.get_static_nodes()) - for node in all_node: - cmd_list = run_ssh_cmd(node.ssh, "netstat -an | grep 16789 | grep ESTABLISHED |wc -l") - assert int(cmd_list[0][0]) <= 2 + static_number - - -@allure.title("Automatic discovery configuration test") -@pytest.mark.P1 -def test_NE_P2P_002(global_test_env): - log.info("Automatic discovery configuration test") - all_node = global_test_env.get_all_nodes() - - # stop node - if global_test_env.running: - global_test_env.stop_all() - - # modify config file - config_data = LoadFile(global_test_env.cfg.config_json_tmp).get_data() - config_data['node']['P2P']['NoDiscovery'] = True - with open(global_test_env.cfg.config_json_tmp, 'w', encoding='utf-8') as f: - f.write(json.dumps(config_data, indent=4)) - all_node = global_test_env.get_all_nodes() - - # upload config file - global_test_env.executor(one_put_config_task, all_node) - - # start node - global_test_env.cfg.init_chain = False - global_test_env.start_all() - - # run ssh - for node in all_node: - cmd_list = run_ssh_cmd(node.ssh, "netstat -unlp | grep 16789 |wc -l") - assert 0 == int(cmd_list[0][0]) - - -@allure.title("Static node configuration test") -@pytest.mark.P1 -def test_NE_P2P_003(global_test_env): - log.info("Static node configuration test") - all_node = global_test_env.get_all_nodes() - - # stop node - if global_test_env.running: - global_test_env.stop_all() - - # modify config file - config_data = LoadFile(global_test_env.cfg.config_json_tmp).get_data() - config_data['node']['P2P']['MaxPeers'] = 50 - config_data['node']['P2P']['NoDiscovery'] = True - config_data['node']['P2P']["BootstrapNodes"] = [] - with open(global_test_env.cfg.config_json_tmp, 'w', encoding='utf-8') as f: - f.write(json.dumps(config_data, indent=4)) - all_node = global_test_env.get_all_nodes() - - # upload config file - global_test_env.executor(one_put_config_task, all_node) - - # start node - global_test_env.cfg.init_chain = False - global_test_env.start_all() - - # run ssh - static_number = len(global_test_env.get_static_nodes()) - for node in all_node: - # cmd_list = run_ssh_cmd(node.ssh, "netstat -an | grep 16789 | grep ESTABLISHED |wc -l") - # log.info(node.web3.net.peerCount) - # assert int(cmd_list[0][0]) <= static_number - assert node.web3.net.peerCount <= static_number - - -@allure.title("Exception can not be out of the block test") -@pytest.mark.P1 -def test_NE_P2P_004(global_test_env): - log.info("Exception can not be out of the block test") - # stop node - if global_test_env.running: - global_test_env.stop_all() - - # modify config file - config_data = LoadFile(global_test_env.cfg.config_json_tmp).get_data() - config_data['node']['P2P']['MaxPeers'] = 50 - config_data['node']['P2P']['NoDiscovery'] = True - config_data['node']['P2P']["BootstrapNodes"] = [] - with open(global_test_env.cfg.config_json_tmp, 'w', encoding='utf-8') as f: - f.write(json.dumps(config_data, indent=4)) - all_node = global_test_env.get_all_nodes() - - # upload config file - global_test_env.executor(one_put_config_task, all_node) - - # modify static file - with open(global_test_env.cfg.static_node_tmp, 'w', encoding='utf-8') as f: - f.write(json.dumps([], indent=4)) - - # upload static file - global_test_env.executor(one_put_static_task, all_node) - - # modify genesis file - global_test_env.genesis_config['config']['cbft']["initialNodes"] = [] - with open(global_test_env.cfg.genesis_tmp, 'w', encoding='utf-8') as f: - f.write(json.dumps(global_test_env.genesis_config, indent=4)) - - # upload genesis file - global_test_env.executor(one_put_genesis_task, all_node, global_test_env.cfg.genesis_tmp) - - # start node - global_test_env.cfg.init_chain = False - global_test_env.start_all() - - # check - try: - global_test_env.check_block() - except Exception as e: - log.error("check block has except:{}".format(e)) - assert 0 == 0 diff --git a/cases/tests/blockchain/rpc/__init__.py b/cases/tests/blockchain/rpc/__init__.py deleted file mode 100644 index fc59fe1b27..0000000000 --- a/cases/tests/blockchain/rpc/__init__.py +++ /dev/null @@ -1,6 +0,0 @@ -# -*- coding: utf-8 -*- -""" -@Author: luodahui -@Date: 2019/10/05 -@Description: -""" diff --git a/cases/tests/blockchain/rpc/test_platon.py b/cases/tests/blockchain/rpc/test_platon.py deleted file mode 100644 index 7ed6ef5fdf..0000000000 --- a/cases/tests/blockchain/rpc/test_platon.py +++ /dev/null @@ -1,818 +0,0 @@ -import pytest -from alaya.eth import Eth -import allure - -from eth_utils import ( - is_boolean, - is_bytes, - is_checksum_address, - is_dict, - is_integer, - is_list_like, - is_same_address, - is_string, -) -from hexbytes import HexBytes -from alaya.exceptions import ( - InvalidAddress, -) - -from common.log import log -import time - -UNKNOWN_ADDRESS = '0xdEADBEeF00000000000000000000000000000000' -UNKNOWN_HASH = '0xdeadbeef00000000000000000000000000000000000000000000000000000000' -COMMON_ADDRESS = '0x55bfd49472fd41211545b01713a9c3a97af78b05' -ADDRESS = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpd3er4y" - - -@pytest.fixture(scope="module") -def unlocked_account(global_test_env): - env = global_test_env - node = env.get_rand_node() - address = env.account.generate_account_in_node(node, '123456', 100000000000000000000000) - env.account.unlock_account(node, address) - return { - 'address': address, - 'node': node - } - - -@pytest.fixture(scope="module") -def platon_connect(global_test_env): - env = global_test_env - node = env.get_rand_node() - yield node.eth - - -@pytest.fixture(scope="module") -def block_with_txn(global_test_env): - env = global_test_env - node = env.get_rand_node() - account = env.account.account_with_money - res = env.account.sendTransaction(node.web3, '', account['address'], account['address'], node.eth.gasPrice, 21000, 10000) - platon = Eth(node.web3) - return platon.getBlock(res['blockNumber']) - - -@pytest.fixture(scope="module") -def empty_block(platon_connect): - return platon_connect.getBlock(3) - - -# return block with contract_address -@pytest.fixture(scope="module") -def block_with_txn_with_log(global_test_env): - env = global_test_env - node = env.get_rand_node() - plan = [{"Epoch": 1, "Amount": 1000000}] - res = env.account.create_restricting_plan(node.web3, COMMON_ADDRESS, plan, env.account.account_with_money['address'], node.eth.gasPrice * 2, 300000) - platon = Eth(node.web3) - return platon.getBlock(res['blockNumber']) - - -class TestPlaton(): - - @pytest.mark.P1 - def test_getbalance(self, global_test_env, platon_connect): - env = global_test_env - account = env.account.get_rand_account() - balance = platon_connect.getBalance(account['address']) - assert balance >= 0, 'The balance of the account is equal' - - @pytest.mark.P1 - def test_getbalance_without_money(self, global_test_env): - node = global_test_env.get_rand_node() - address = global_test_env.account.generate_account_in_node(node, "123456") - balance = node.eth.getBalance(address) - assert balance == 0, 'The balance of the account is equal' - - @allure.title("Get block number") - @pytest.mark.P1 - def test_BlockNumber(self, platon_connect): - """ - test platon.getBlockNumber() - """ - block_number = platon_connect.blockNumber - assert is_integer(block_number) - assert block_number >= 0 - - @allure.title("Get protocol version") - @pytest.mark.P1 - def test_ProtocolVersion(self, platon_connect): - protocol_version = platon_connect.protocolVersion - assert is_string(protocol_version) - assert protocol_version.isdigit() - - @allure.title("Get synchronization status") - @pytest.mark.P1 - def test_syncing(self, platon_connect): - syncing = platon_connect.syncing - assert is_boolean(syncing) or is_dict(syncing) - if is_boolean(syncing): - assert syncing is False - elif is_dict(syncing): - assert 'startingBlock' in syncing - assert 'currentBlock' in syncing - assert 'highestBlock' in syncing - - assert is_integer(syncing['startingBlock']) - assert is_integer(syncing['currentBlock']) - assert is_integer(syncing['highestBlock']) - - @allure.title("Get gas price") - @pytest.mark.P1 - def test_gasPrice(self, platon_connect): - gas_price = platon_connect.gasPrice - assert is_integer(gas_price) - assert gas_price > 0 - - @allure.title("Get the number of node accounts") - @pytest.mark.P1 - def test_accounts(self, global_test_env): - env = global_test_env - node = env.get_rand_node() - - platon = Eth(node.web3) - - accounts_before = platon.accounts - i = 0 - while i < 10: - env.account.generate_account_in_node(node, '123456') - i += 1 - accounts_after = platon.accounts - - assert is_list_like(accounts_after) - assert len(accounts_after) == len(accounts_before) + 10 - assert all(( - account - for account - in accounts_after - )) - - # @allure.title(get storage") - # @pytest.mark.P1 - # def test_getStorageAt(self, global_test_env): - # env = global_test_env - # node = env.get_rand_node() - # account = env.account.get_rand_account() - # platon = Eth(node.web3) - # - # storage = platon.getStorageAt(account['address'], 0) - # assert isinstance(storage, HexBytes) - - # @allure.title("get storage with a nonexistent address") - # @pytest.mark.P1 - # def test_getStorageAt_invalid_address(self, platon_connect): - # with pytest.raises(InvalidAddress): - # platon_connect.getStorageAt(UNKNOWN_ADDRESS.lower(), 0) - - @allure.title("Get transaction count") - @pytest.mark.P1 - def test_getTransactionCount(self, global_test_env): - env = global_test_env - node = env.get_rand_node() - platon = Eth(node.web3) - transaction_count = platon.getTransactionCount(env.account.get_rand_account()['address']) - assert is_integer(transaction_count) - assert transaction_count >= 0 - - @allure.title("Get the number of transactions using a nonexistent account") - @pytest.mark.P1 - def test_getTransactionCount_invalid_address(self, platon_connect): - with pytest.raises(ValueError): - platon_connect.getTransactionCount(UNKNOWN_ADDRESS.lower()) - - @allure.title("Get the number of empty block transactions using hash") - @pytest.mark.P1 - def test_getBlockTransactionCountByHash_empty_block(self, platon_connect, empty_block): - transaction_count = platon_connect.getBlockTransactionCount(empty_block['hash']) - assert is_integer(transaction_count) - assert transaction_count == 0 - - @allure.title("Get the number of empty block transactions using block number") - @pytest.mark.P1 - def test_platon_getBlockTransactionCountByNumber_empty_block(self, platon_connect, empty_block): - transaction_count = platon_connect.getBlockTransactionCount(empty_block['number']) - assert is_integer(transaction_count) - assert transaction_count == 0 - - @pytest.mark.P1 - def test_platon_getBlockTransactionCountByHash_block_with_txn(self, platon_connect, block_with_txn): - transaction_count = platon_connect.getBlockTransactionCount(block_with_txn['hash']) - assert is_integer(transaction_count) - assert transaction_count >= 1 - - @pytest.mark.P1 - def test_platon_getBlockTransactionCountByNumber_block_with_txn(self, platon_connect, block_with_txn): - transaction_count = platon_connect.getBlockTransactionCount(block_with_txn['number']) - assert is_integer(transaction_count) - assert transaction_count >= 1 - - # def test_eth_getCode(self, global_test_env): - # # Todo: create a contract - # env = global_test_env - # node = env.get_rand_node() - # platon = Eth(node.connect_node()) - # - # account = env.aacount.get_rand_account() - # - # code = platon.getCode(account) - # assert isinstance(code, HexBytes) - # assert len(code) > 0 - - # def test_eth_getCode_invalid_address(self, global_test_env): - # env = global_test_env - # node = env.get_rand_node() - # platon = Eth(node.connect_node()) - # with pytest.raises(InvalidAddress): - # platon.getCode(UNKNOWN_ADDRESS) - # - # def test_eth_getCode_with_block_identifier(self, global_test_env): - # #code = web3.eth.getCode(emitter_contract.address, block_identifier=web3.eth.blockNumber) - # assert isinstance(code, HexBytes) - # assert len(code) > 0 - - @pytest.mark.P1 - def test_platon_sign(self, unlocked_account): - - platon = Eth(unlocked_account['node'].web3) - - signature = platon.sign( - unlocked_account['address'], text='Message tö sign. Longer than hash!' - ) - assert is_bytes(signature) - assert len(signature) == 32 + 32 + 1 - - # test other formats - hexsign = platon.sign( - unlocked_account['address'], - hexstr='0x4d6573736167652074c3b6207369676e2e204c6f6e676572207468616e206861736821' - ) - assert hexsign == signature - - intsign = platon.sign( - unlocked_account['address'], - 0x4d6573736167652074c3b6207369676e2e204c6f6e676572207468616e206861736821 - ) - assert intsign == signature - - bytessign = platon.sign( - unlocked_account['address'], b'Message t\xc3\xb6 sign. Longer than hash!' - ) - assert bytessign == signature - - new_signature = platon.sign( - unlocked_account['address'], text='different message is different' - ) - assert new_signature != signature - - @pytest.mark.P1 - def test_platon_sendTransaction_addr_checksum_required(self, unlocked_account): - - platon = Eth(unlocked_account['node'].web3) - - address = unlocked_account['address'].lower() - txn_params = { - 'from': address, - 'to': address, - 'value': 1, - 'gas': 21000, - 'gasPrice': platon.gasPrice, - } - with pytest.raises(ValueError): - invalid_params = dict(txn_params, **{'from': UNKNOWN_ADDRESS}) - platon.sendTransaction(invalid_params) - - with pytest.raises(ValueError): - invalid_params = dict(txn_params, **{'to': UNKNOWN_ADDRESS}) - platon.sendTransaction(invalid_params) - - @pytest.mark.P1 - def test_platon_sendTransaction(self, unlocked_account): - - platon = Eth(unlocked_account['node'].web3) - - txn_params = { - 'from': unlocked_account['address'], - 'to': unlocked_account['address'], - 'value': 1, - 'gas': 21000, - 'gasPrice': platon.gasPrice, - } - txn_hash = platon.sendTransaction(txn_params) - txn = platon.getTransaction(txn_hash) - - assert txn['from'] == txn_params['from'] - assert txn['to'] == txn_params['to'] - assert txn['value'] == 1 - assert txn['gas'] == 21000 - assert txn['gasPrice'] == txn_params['gasPrice'] - - @pytest.mark.P1 - def test_platon_sendTransaction_withWrongAddress(self, unlocked_account): - - platon = Eth(unlocked_account['node'].web3) - - txn_params = { - 'from': UNKNOWN_ADDRESS, - 'to': unlocked_account['address'], - 'value': 1, - 'gas': 21000, - 'gasPrice': platon.gasPrice, - } - with pytest.raises(ValueError): - platon.sendTransaction(txn_params) - - @pytest.mark.P1 - def test_platon_sendTransaction_withoutUnlock(self, global_test_env, platon_connect): - account = global_test_env.account.get_rand_account() - txn_params = { - 'from': account['address'], - 'to': account['address'], - 'value': 1, - 'gas': 21000, - 'gasPrice': platon_connect.gasPrice, - } - with pytest.raises(ValueError): - platon_connect.sendTransaction(txn_params) - - @pytest.mark.P1 - def test_platon_sendTransaction_with_nonce(self, unlocked_account): - - platon = Eth(unlocked_account['node'].web3) - txn_params = { - 'from': unlocked_account['address'], - 'to': unlocked_account['address'], - 'value': 1, - 'gas': 21000, - # Increased gas price to ensure transaction hash different from other tests - 'gasPrice': platon.gasPrice * 2, - 'nonce': platon.getTransactionCount(unlocked_account['address']), - } - txn_hash = platon.sendTransaction(txn_params) - txn = platon.getTransaction(txn_hash) - - assert txn['from'] == txn_params['from'] - assert txn['to'] == txn_params['to'] - assert txn['value'] == 1 - assert txn['gas'] == 21000 - assert txn['gasPrice'] == txn_params['gasPrice'] - # assert txn['nonce'] == txn_params['nonce'] - - @pytest.mark.P1 - def test_platon_replaceTransaction(self, unlocked_account): - platon = Eth(unlocked_account['node'].web3) - txn_params = { - 'from': unlocked_account['address'], - 'to': unlocked_account['address'], - 'value': 3, - 'gas': 21000, - 'gasPrice': platon.gasPrice, - 'nonce': 1000, - } - txn_hash = platon.sendTransaction(txn_params) - txn_params['gasPrice'] = platon.gasPrice * 2 - replace_txn_hash = platon.replaceTransaction(txn_hash, txn_params) - replace_txn = platon.getTransaction(replace_txn_hash) - - assert replace_txn['from'] == txn_params['from'] - assert replace_txn['to'] == txn_params['to'] - assert replace_txn['value'] == 3 - assert replace_txn['gas'] == 21000 - assert replace_txn['gasPrice'] == txn_params['gasPrice'] - - @pytest.mark.P1 - def test_platon_replaceTransaction_non_existing_transaction(self, unlocked_account): - platon = Eth(unlocked_account['node'].web3) - - txn_params = { - 'from': unlocked_account['address'], - 'to': unlocked_account['address'], - 'value': 1, - 'gas': 21000, - 'gasPrice': platon.gasPrice, - } - with pytest.raises(ValueError): - platon.replaceTransaction( - '0x98e8cc09b311583c5079fa600f6c2a3bea8611af168c52e4b60b5b243a441997', - txn_params - ) - - # auto mine is enabled for this test - @pytest.mark.P1 - def test_platon_replaceTransaction_already_mined(self, unlocked_account): - - platon = Eth(unlocked_account['node'].web3) - address = unlocked_account['address'] - - txn_params = { - 'from': address, - 'to': address, - 'value': 76, - 'gas': 21000, - 'gasPrice': platon.gasPrice * 4, - } - txn_hash = platon.sendTransaction(txn_params) - txn_params['gasPrice'] = platon.gasPrice * 5 - platon.waitForTransactionReceipt(txn_hash) - with pytest.raises(ValueError): - platon.replaceTransaction(txn_hash, txn_params) - - @pytest.mark.P1 - def test_platon_replaceTransaction_incorrect_nonce(self, unlocked_account): - platon = Eth(unlocked_account['node'].web3) - address = unlocked_account['address'] - txn_params = { - 'from': address, - 'to': address, - 'value': 1, - 'gas': 21000, - 'gasPrice': platon.gasPrice, - } - txn_hash = platon.sendTransaction(txn_params) - txn = platon.getTransaction(txn_hash) - - txn_params['gasPrice'] = platon.gasPrice * 2 - txn_params['nonce'] = int(txn['nonce'], 16) + 1 - with pytest.raises(ValueError): - platon.replaceTransaction(txn_hash, txn_params) - - @pytest.mark.P1 - def test_platon_replaceTransaction_gas_price_too_low(self, unlocked_account): - platon = Eth(unlocked_account['node'].web3) - address = unlocked_account['address'] - txn_params = { - 'from': address, - 'to': address, - 'value': 1, - 'gas': 21000, - 'gasPrice': platon.gasPrice, - } - txn_hash = platon.sendTransaction(txn_params) - - txn_params['gasPrice'] = 9 - with pytest.raises(ValueError): - platon.replaceTransaction(txn_hash, txn_params) - - @pytest.mark.P1 - def test_platon_replaceTransaction_gas_price_defaulting_minimum(self, unlocked_account): - platon = Eth(unlocked_account['node'].web3) - address = unlocked_account['address'] - txn_params = { - 'from': address, - 'to': address, - 'value': 1, - 'gas': 21000, - 'gasPrice': platon.gasPrice, - } - txn_hash = platon.sendTransaction(txn_params) - - txn_params.pop('gasPrice') - replace_txn_hash = platon.replaceTransaction(txn_hash, txn_params) - replace_txn = platon.getTransaction(replace_txn_hash) - - # Todo: minimum gas price is what - assert replace_txn['gasPrice'] == 110000000 - - @pytest.mark.P1 - def test_platon_replaceTransaction_gas_price_defaulting_strategy_higher(self, unlocked_account): - node = unlocked_account['node'] - platon = Eth(node.web3) - price = platon.gasPrice - - txn_params = { - 'from': unlocked_account['address'], - 'to': ADDRESS, - 'value': 1, - 'gas': 21000, - 'gasPrice': price * 10, - 'nonce': 1000, - } - - txn_hash = platon.sendTransaction(txn_params) - - def higher_gas_price_strategy(web3, txn): - return price * 20 - - platon.setGasPriceStrategy(higher_gas_price_strategy) - node.web3.eth = platon - - txn_params.pop('gasPrice') - - replace_txn_hash = platon.replaceTransaction(txn_hash, txn_params) - replace_txn = platon.getTransaction(replace_txn_hash) - log.info(replace_txn) - assert replace_txn['gasPrice'] == price * 20 # Strategy provides higher gas price - - @pytest.mark.P1 - def test_platon_replaceTransaction_gas_price_defaulting_strategy_lower(self, unlocked_account): - - node = unlocked_account['node'] - platon = Eth(node.web3) - price = platon.gasPrice - txn_params = { - 'from': unlocked_account['address'], - 'to': unlocked_account['address'], - 'value': 3, - 'gas': 21000, - 'gasPrice': price * 2, - 'nonce': 3000, - } - - txn_hash = platon.sendTransaction(txn_params) - - def lower_gas_price_strategy(web3, txn): - return price - - platon.setGasPriceStrategy(lower_gas_price_strategy) - - node.web3.eth = platon - - txn_params.pop('gasPrice') - replace_txn_hash = platon.replaceTransaction(txn_hash, txn_params) - - replace_txn = platon.getTransaction(replace_txn_hash) - - # Strategy provices lower gas price - minimum preferred - assert replace_txn['gasPrice'] == int(price * 2 * 1.1) - # Todo: Need an environment with slow speed of out block - # def test_platon_modifyTransaction(self, unlocked_account): - # node = unlocked_account['node'] - # platon = Eth(node.web3) - # txn_params = { - # 'from': unlocked_account['address'], - # 'to': unlocked_account['address'], - # 'value': 1, - # 'gas': 21000, - # 'gasPrice': platon.gasPrice, - # 'nonce': platon.getTransactionCount(unlocked_account['address']) - # } - # txn_hash = platon.sendTransaction(txn_params) - # - # modified_txn_hash =platon.modifyTransaction( - # txn_hash, gasPrice=(txn_params['gasPrice'] * 2), value=2 - # ) - # modified_txn = platon.getTransaction(modified_txn_hash) - # - # assert is_same_address(modified_txn['from'], txn_params['from']) - # assert is_same_address(modified_txn['to'], txn_params['to']) - # assert modified_txn['value'] == 2 - # assert modified_txn['gas'] == 21000 - # assert modified_txn['gasPrice'] == txn_params['gasPrice'] * 2 - - @pytest.mark.P1 - @pytest.mark.compatibility - def test_platon_sendRawTransaction(self, global_test_env): - env = global_test_env - node = env.get_rand_node() - account = env.account.account_with_money - platon = Eth(node.web3) - - transaction_dict = { - "to": account['address'], - "gasPrice": platon.gasPrice, - "gas": 21000, - "nonce": account['nonce'], - "data": '', - "chainId": global_test_env.account.chain_id, - "value": '0x10' - } - signedTransactionDict = platon.account.signTransaction( - transaction_dict, account['prikey'] - ) - - data = signedTransactionDict.rawTransaction - - txn_hash = platon.sendRawTransaction(data) - - assert txn_hash == signedTransactionDict.hash - - # Todo: Call the contract - # def test_platon_call(self, web3, math_contract): - # coinbase = web3.eth.coinbase - # txn_params = math_contract._prepare_transaction( - # fn_name='add', - # fn_args=(7, 11), - # transaction={'from': coinbase, 'to': math_contract.address}, - # ) - # call_result = web3.eth.call(txn_params) - # assert is_string(call_result) - # result = decode_single('uint256', call_result) - # assert result == 18 - - # def test_eth_call_with_0_result(self, web3, math_contract): - # coinbase = web3.eth.coinbase - # txn_params = math_contract._prepare_transaction( - # fn_name='add', - # fn_args=(0, 0), - # transaction={'from': coinbase, 'to': math_contract.address}, - # ) - # call_result = web3.eth.call(txn_params) - # assert is_string(call_result) - # result = decode_single('uint256', call_result) - # assert result == 0 - - @pytest.mark.P1 - def test_platon_estimateGas(self, unlocked_account): - node = unlocked_account['node'] - platon = Eth(node.web3) - - gas_estimate = platon.estimateGas({ - 'from': unlocked_account['address'], - 'to': unlocked_account['address'], - 'value': 1, - }) - assert is_integer(gas_estimate) - assert gas_estimate > 0 - - hash = platon.sendTransaction({ - 'from': unlocked_account['address'], - 'to': unlocked_account['address'], - 'value': 1, - 'gas': gas_estimate, - }) - res = platon.waitForTransactionReceipt(hash) - assert res['blockNumber'] != 0 - - def test_platon_estimateGas_high(self, unlocked_account): - node = unlocked_account['node'] - platon = Eth(node.web3) - - gas_estimate = platon.estimateGas({ - 'from': unlocked_account['address'], - 'to': unlocked_account['address'], - 'value': 1, - }) - assert is_integer(gas_estimate) - assert gas_estimate > 0 - - hash = platon.sendTransaction({ - 'from': unlocked_account['address'], - 'to': unlocked_account['address'], - 'value': 1, - 'gas': gas_estimate + 2000, - }) - res = platon.waitForTransactionReceipt(hash) - assert res['blockNumber'] != 0 - - def test_platon_estimateGas_low(self, unlocked_account): - node = unlocked_account['node'] - platon = Eth(node.web3) - - gas_estimate = platon.estimateGas({ - 'from': unlocked_account['address'], - 'to': unlocked_account['address'], - 'value': 1, - }) - assert is_integer(gas_estimate) - assert gas_estimate > 0 - status = True - try: - platon.sendTransaction({ - 'from': unlocked_account['address'], - 'to': unlocked_account['address'], - 'value': 1, - 'gas': gas_estimate - 2000, - }) - status = False - except BaseException: - ... - assert status - - @pytest.mark.P1 - def test_platon_getBlockByHash(self, platon_connect): - empty_block = platon_connect.getBlock(1) - - block = platon_connect.getBlock(empty_block['hash']) - assert block['hash'] == empty_block['hash'] - - @pytest.mark.P1 - def test_platon_getBlockByHash_not_found(self, platon_connect): - block = platon_connect.getBlock(UNKNOWN_HASH) - assert block is None - - @pytest.mark.P1 - def test_platon_getBlockByNumber_with_integer(self, platon_connect): - block = platon_connect.getBlock(1) - assert block['number'] == 1 - - @pytest.mark.P1 - def test_platon_getBlockByNumber_latest(self, platon_connect): - block = platon_connect.getBlock('latest') - assert block['number'] > 0 - - @pytest.mark.P1 - def test_platon_getBlockByNumber_not_found(self, platon_connect): - block = platon_connect.getBlock(123456789) - assert block is None - - @pytest.mark.P1 - def test_platon_getBlockByNumber_pending(self, platon_connect): - block = platon_connect.getBlock('pending') - latest = platon_connect.getBlock('latest') - - assert block['number'] == latest['number'] + 2 - - @pytest.mark.P1 - def test_platon_getBlockByNumber_earliest(self, platon_connect): - genesis_block = platon_connect.getBlock(0) - block = platon_connect.getBlock('earliest') - assert block['number'] == 0 - assert block['hash'] == genesis_block['hash'] - - @pytest.mark.P1 - def test_platon_getBlockByNumber_full_transactions(self, platon_connect, block_with_txn): - block = platon_connect.getBlock(block_with_txn['number'], True) - transaction = block['transactions'][0] - assert transaction['hash'] == block_with_txn['transactions'][0] - - @pytest.mark.P1 - def test_platon_getTransactionByHash(self, block_with_txn, platon_connect): - - transaction = platon_connect.getTransaction(block_with_txn['transactions'][0]) - assert is_dict(transaction) - assert transaction['hash'] == block_with_txn['transactions'][0] - - def test_platon_getTransactionByHash_notfound(self, platon_connect): - transaction = platon_connect.getTransaction(UNKNOWN_HASH) - assert transaction is None - - # def test_platon_getTransactionByHash_contract_creation(self, - # web3, - # math_contract_deploy_txn_hash): - # transaction = web3.eth.getTransaction(math_contract_deploy_txn_hash) - # assert is_dict(transaction) - # assert transaction['to'] is None, "to field is %r" % transaction['to'] - - @pytest.mark.P1 - def test_platon_getTransactionFromBlockHashAndIndex(self, platon_connect, block_with_txn): - transaction = platon_connect.getTransactionFromBlock(block_with_txn['hash'], 0) - assert is_dict(transaction) - assert transaction['hash'] == HexBytes(block_with_txn['transactions'][0]) - - @pytest.mark.P1 - def test_platon_getTransactionFromBlockHashAndIndex_withwrongindex(self, platon_connect, block_with_txn): - transaction = platon_connect.getTransactionFromBlock(block_with_txn['hash'], 1000) - assert transaction is None - - @pytest.mark.P1 - def test_platon_getTransactionFromBlockHashAndIndex_withwrongHash(self, platon_connect, block_with_txn): - transaction = platon_connect.getTransactionFromBlock(UNKNOWN_HASH, 0) - assert transaction is None - - @pytest.mark.P1 - def test_platon_getTransactionFromBlockNumberAndIndex(self, platon_connect, block_with_txn): - transaction = platon_connect.getTransactionFromBlock(block_with_txn['number'], 0) - assert is_dict(transaction) - assert transaction['hash'] == HexBytes(block_with_txn['transactions'][0]) - transaction = platon_connect.getTransactionFromBlock(block_with_txn['number'], 200) - assert is_dict(transaction) == False - - def test_platon_getTransactionFromBlockNumberAndIndex_with_wrong_index(self, platon_connect): - with pytest.raises(ValueError): - platon_connect.getTransactionFromBlock(UNKNOWN_ADDRESS, 100) - - @pytest.mark.P1 - def test_platon_getTransactionReceipt_mined(self, platon_connect, block_with_txn): - receipt = platon_connect.getTransactionReceipt(block_with_txn['transactions'][0]) - assert is_dict(receipt) - assert receipt['blockNumber'] == block_with_txn['number'] - assert receipt['blockHash'] == block_with_txn['hash'] - assert receipt['transactionIndex'] == 0 - assert receipt['transactionHash'] == HexBytes(block_with_txn['transactions'][0]) - - @pytest.mark.P1 - def test_platon_getTransactionReceipt_unmined(self, unlocked_account): - - platon = Eth(unlocked_account['node'].web3) - - txn_hash = platon.sendTransaction({ - 'from': unlocked_account['address'], - 'to': unlocked_account['address'], - 'value': 1, - 'gas': 21000, - 'gasPrice': platon.gasPrice, - }) - receipt = platon.getTransactionReceipt(txn_hash) - assert receipt is None - - @pytest.mark.P1 - def test_platon_getTransactionReceipt_with_log_entry(self, platon_connect, block_with_txn_with_log): - receipt = platon_connect.getTransactionReceipt(block_with_txn_with_log['transactions'][0]) - log.info(receipt) - assert is_dict(receipt) - assert receipt['blockNumber'] == block_with_txn_with_log['number'] - assert receipt['blockHash'] == block_with_txn_with_log['hash'] - assert receipt['transactionIndex'] == 0 - # assert receipt['transactionHash'] == HexBytes(block_with_txn_with_log['receiptsRoot']) - - assert len(receipt['logs']) == 1 - log_entry = receipt['logs'][0] - - assert log_entry['blockNumber'] == block_with_txn_with_log['number'] - assert log_entry['blockHash'] == block_with_txn_with_log['hash'] - assert log_entry['logIndex'] == 0 - # assert is_same_address(log_entry['address'], block_with_txn_with_log['contract_address']) - assert log_entry['transactionIndex'] == 0 - # assert log_entry['transactionHash'] == HexBytes(block_with_txn_with_log['transactionsRoot']) diff --git a/cases/tests/blockchain/rpc/test_rpc_admin.py b/cases/tests/blockchain/rpc/test_rpc_admin.py deleted file mode 100644 index 375e4b7625..0000000000 --- a/cases/tests/blockchain/rpc/test_rpc_admin.py +++ /dev/null @@ -1,151 +0,0 @@ -# -*- coding: utf-8 -*- -''' -@Description: rpc用例 -''' - -import allure -import pytest -from hexbytes import HexBytes - -startApi = "eth,web3,net,txpool,platon,admin,personal" - - -@allure.title("Get current process datadir") -@pytest.mark.P1 -def test_admin_datadir(global_running_env): - node = global_running_env.get_rand_node() - dataDir = node.remote_data_dir - assert node.admin.datadir == dataDir - - -@allure.title("Get program version") -@pytest.mark.P1 -def test_admin_getProgramVersion(global_running_env): - node = global_running_env.get_rand_node() - msg = node.admin.getProgramVersion() - ProgramVersionSign = msg["Sign"] - ProgramVersion = msg["Version"] - assert len(ProgramVersionSign) == 132 - assert ProgramVersion >= 1794 - - -@allure.title("Get schnorrNIZKProve") -@pytest.mark.P1 -def test_admin_getSchnorrNIZKProve(global_running_env): - node = global_running_env.get_rand_node() - blsproof = node.admin.getSchnorrNIZKProve() - assert len(blsproof) == 128 - - -@allure.title("get node info") -@pytest.mark.P1 -def test_admin_nodeInfo(global_running_env): - node = global_running_env.get_rand_node() - genHash = HexBytes(node.eth.getBlock(0)["hash"]).hex() - nodeInfo = node.admin.nodeInfo - - # config - config = nodeInfo["protocols"]["platon"]["config"] - - # node id - assert node.node_id == nodeInfo["id"] - # listen port - assert node.p2p_port == str(nodeInfo["ports"]["listener"]) - # discovery port - assert node.p2p_port == str(nodeInfo["ports"]["discovery"]) - - assert global_running_env.amount == config["cbft"]["amount"] - assert global_running_env.period == config["cbft"]["period"] - assert global_running_env.validatorMode == config["cbft"]["validatorMode"] - - assert global_running_env.chain_id == config["chainId"] - assert genHash == nodeInfo["protocols"]["platon"]["genesis"] - - -@allure.title("get node peers") -@pytest.mark.P1 -def test_admin_peers(global_running_env): - node = global_running_env.get_rand_node() - lenPeers = len(node.admin.peers) - assert lenPeers >= 0 - - -@allure.title("export chain") -@pytest.mark.P1 -@pytest.fixture() -def test_admin_exportChain(global_running_env): - node = global_running_env.get_rand_node() - filePath = node.admin.datadir + "chainData.txt" - assert True == node.admin.exportChain(filePath) - yield node - - -@allure.title("import chain") -@pytest.mark.P1 -def test_admin_importChain(test_admin_exportChain): - filePath = test_admin_exportChain.admin.datadir + "chainData.txt" - assert True == test_admin_exportChain.admin.importChain(filePath), "import chain failed!" - - -@allure.title("remove peer") -@pytest.mark.P1 -def test_admin_removePeer(global_running_env): - node = global_running_env.get_rand_node() - peers = node.admin.peers - if len(peers) > 0: - node_url = "enode://" + peers[0]["id"] + "@" + peers[0]["network"]["remoteAddress"] - assert True == node.admin.removePeer(node_url) - - -@allure.title("stop websocket rpc service") -@pytest.fixture() -def admin_stopWS(global_running_env): - node = global_running_env.get_rand_node() - try: - ws = node.ws_web3 - assert True == ws.admin.stopWS() - except Exception as e: - print("websocket service not started===================>") - - yield node - - -@allure.title("Start websocket rpc service") -@pytest.mark.P1 -@pytest.fixture() -def test_admin_startWS(admin_stopWS): - node = admin_stopWS - if None == node.wsport: - node.wsport = 5789 - if None == node.wsurl: - node.wsurl = "ws://" + str(node.host) + ":" + str(node.wsport) - assert True == node.admin.startWS(node.host, int(node.wsport), "*", startApi) - - ws = node.ws_web3 - assert ws.eth.blockNumber >= 0 - - -@allure.title("stop http rpc service") -@pytest.fixture() -def admin_stopRPC(global_running_env): - node = global_running_env.get_rand_node() - try: - ws = node.ws_web3 - assert True == ws.admin.stopRPC() - except Exception as e: - pass - - yield node - - -''' -@allure.title("start http rpc service") -@pytest.mark.P0 -def test_admin_startRPC(admin_stopRPC): - node = admin_stopRPC - ws = node.ws_web3 - assert True == ws.admin.startRPC(admin_stopRPC.host, int(admin_stopRPC.rpc_port)) -''' - -if __name__ == '__main__': - pytest.main(['-v', 'test_rpc_admin.py']) diff --git a/cases/tests/blockchain/rpc/test_rpc_personal.py b/cases/tests/blockchain/rpc/test_rpc_personal.py deleted file mode 100644 index ea39e3a30e..0000000000 --- a/cases/tests/blockchain/rpc/test_rpc_personal.py +++ /dev/null @@ -1,296 +0,0 @@ -# -*- coding: utf-8 -*- -''' -@Description: rpc cases -''' -import time - -import allure -import pytest -from alaya import Web3 -from alaya.eth import Eth -from hexbytes import HexBytes - -from common.log import log - -password = "88888888" -to_address = "atx1nssezvh4cljl5emq3a244j53xeg0kery423jja" -g_txHash = None - - -@allure.title("List all account addresses") -@pytest.mark.P1 -@pytest.mark.compatibility -def test_personal_listAccounts(global_running_env): - node = global_running_env.get_rand_node() - assert len(node.personal.listAccounts) >= 0 - - -@allure.title("List all wallet information") -@pytest.mark.P1 -@pytest.mark.compatibility -def test_personal_listWallets(global_running_env): - node = global_running_env.get_rand_node() - listWallets = node.personal.listWallets - assert len(listWallets) >= 0 - - -@allure.title("Create a new account") -@pytest.mark.P1 -@pytest.mark.compatibility -@pytest.fixture() -def test_personal_newAccount(global_running_env): - node = global_running_env.get_rand_node() - before = len(node.eth.accounts) - new_account = node.personal.newAccount(password) - time.sleep(2) - to_account = Web3.toChecksumAddress(new_account) - after = len(node.eth.accounts) - assert len(to_account) == 42 - assert after == (before + 1) - yield node - - -@allure.title("Open a wallet") -@pytest.mark.P1 -@pytest.mark.compatibility -def test_personal_openWallet(global_running_env): - node = global_running_env.get_rand_node() - listWallet = node.personal.listWallets - if len(listWallet) > 0: - assert None == node.personal.openWallet(listWallet[0]["url"], password) - - -@allure.title("Unlock account") -@pytest.mark.P1 -@pytest.mark.compatibility -def test_personal_unlockAccount(test_personal_newAccount): - listWallet = test_personal_newAccount.personal.listWallets - if len(listWallet) > 0: - addr1 = Web3.toChecksumAddress(listWallet[0]["accounts"][0]["address"]) - assert True == test_personal_newAccount.personal.unlockAccount(addr1, password) - listWallet = test_personal_newAccount.personal.listWallets - assert "Unlocked" == listWallet[0]["status"] - - -@allure.title("Lock account") -@pytest.mark.P1 -@pytest.mark.compatibility -def test_personal_lockAccount(test_personal_newAccount): - listWallet = test_personal_newAccount.personal.listWallets - addr1 = Web3.toChecksumAddress(listWallet[0]["accounts"][0]["address"]) - assert True == test_personal_newAccount.personal.lockAccount(addr1) - listWallet = test_personal_newAccount.personal.listWallets - assert "Locked" == listWallet[0]["status"] - - -@allure.title("Import raw key") -@pytest.mark.P1 -@pytest.mark.compatibility -@pytest.fixture() -def test_personal_importRawKey(global_running_env): - node = global_running_env.get_rand_node() - account = global_running_env.account.get_rand_account() - prikey = account["prikey"] - addr = node.personal.importRawKey(prikey, password) - assert 42 == len(addr) - yield node - - -@allure.title("data sign and ecRecover") -@pytest.mark.P1 -@pytest.mark.compatibility -def test_personal_sign_ecRecover(global_running_env): - node = global_running_env.get_rand_node() - test_data = "0x11" - signer = Web3.toChecksumAddress(node.eth.accounts[0]) - sign_data = node.personal.sign(test_data, signer, password) - assert len(sign_data) == 132 - assert Web3.toChecksumAddress(node.personal.ecRecover(test_data, sign_data)) == signer - - -@allure.title("Sign transaction") -@pytest.mark.P1 -@pytest.mark.compatibility -def test_personal_signTransaction(global_running_env): - node = global_running_env.get_rand_node() - account = global_running_env.account - platon = Eth(node.web3) - addr = account.account_with_money["address"] - - nonce = hex(platon.getTransactionCount(Web3.toChecksumAddress(addr))) - transaction_dict = { - "from": Web3.toChecksumAddress(addr), - "to": Web3.toChecksumAddress(to_address), - "value": "0x10000000000000", - "data": "0x11", - "gasPrice": "0x8250de00", - "gas": "0x6fffffff", - "nonce": nonce, - } - ret = node.personal.signTransaction(transaction_dict, password) - assert ret is not None - - -def transaction_func(node, from_addr="", to_addr=to_address, value=1000, data='', gasPrice='100000000', - gas='21068', nonce=0, password=password): - transaction_dict = { - "from": Web3.toChecksumAddress(from_addr), - "to": Web3.toChecksumAddress(to_addr), - "value": value, - "data": data, - "gasPrice": gasPrice, - "nonce": nonce, - } - if gas == '': - gas = node.eth.estimateGas(transaction_dict) - return gas - transaction_dict["gas"] = gas - global g_txHash - g_txHash = node.personal.sendTransaction(transaction_dict, password) - return g_txHash - - -# GetTransactionByHash -# GetRawTransactionByHash -# GetTransactionReceipt -@allure.title("Get raw transaction") -@pytest.mark.P1 -def test_platon_getTransaction(global_running_env): - node = global_running_env.get_rand_node() - ret = node.eth.getTransaction("0x1111111111111111111111111111111111111111111111111111111111111111") - assert ret is None - print("check succeed: getTransaction by not exist hash!,ret:{}".format(ret)) - ret = node.eth.getRawTransaction( - HexBytes("0x1111111111111111111111111111111111111111111111111111111111111111").hex()) - assert ret == "0x" - - -@allure.title("Send transaction based on gasprice's recommendations") -@pytest.mark.P1 -def test_platon_gasPrice(global_running_env): - node = global_running_env.get_rand_node() - platon = Eth(node.web3) - account = global_running_env.account - from_address = account.account_with_money["address"] - - nCount = platon.getTransactionCount(Web3.toChecksumAddress(from_address)) - nonce = hex(nCount) - gasprice = node.eth.gasPrice - tx_hash = transaction_func(node=node, from_addr=from_address, to_addr=to_address, nonce=nonce, gasPrice=gasprice) - assert len(tx_hash) == 32 - - gasprice = node.eth.gasPrice * 2 - nCount = nCount + 1 - nonce = hex(nCount) - tx_hash = transaction_func(node=node, from_addr=from_address, to_addr=to_address, nonce=nonce, gasPrice=gasprice) - assert len(tx_hash) == 32 - - gasprice = int(node.eth.gasPrice / 2) - nCount = nCount + 1 - nonce = hex(nCount) - - status = 0 - try: - transaction_func(node=node, from_addr=from_address, to_addr=to_address, nonce=nonce, gasPrice=gasprice) - status = 1 - except Exception as e: - print("\nUse less than the recommended gasprice:{}, nonce:{}, Send transaction failed,error message:{}".format(gasprice, nonce, e)) - assert status == 0 - - -@allure.title("Get the block based on block number and block hash") -@pytest.mark.P1 -def test_platon_GetBlock(global_running_env): - node = global_running_env.get_rand_node() - account = global_running_env.account - platon = Eth(node.web3) - address = account.account_with_money["address"] - nCount = platon.getTransactionCount(Web3.toChecksumAddress(address)) - nonce = hex(nCount) - - log.info(f'node: {node.host} {node.p2p_port}, address: {address}') - - gasprice = node.eth.gasPrice - # send transaction - if g_txHash is None: - tx_hash = transaction_func(node=node, from_addr=address, to_addr=to_address, nonce=nonce, gasPrice=gasprice) - else: - tx_hash = g_txHash - - assert len(tx_hash) == 32 - tx_hash = HexBytes(tx_hash).hex() - print("\ntransaction hash:{}".format(tx_hash)) - # Waiting for transaction on the chain - result = node.eth.waitForTransactionReceipt(tx_hash) - assert None != result - # get block info by transaction receipt - blockHash = result["blockHash"] - blockNumber = result["blockNumber"] - assert len(blockHash) == 32 - blockHash = HexBytes(blockHash).hex() - # get block by blockHash - # fullTx:Flase - blockInfo = node.eth.getBlock(blockHash, False) - blockHash = blockInfo['hash'] - blockNumber = blockInfo['number'] - assert len(blockHash) == 32 - assert blockNumber > 0 - fullTransaction = blockInfo["transactions"] - assert len(fullTransaction) > 0 - # fullTx:True - blockInfo = node.eth.getBlock(blockHash, True) - blockHash = blockInfo['hash'] - assert len(blockHash) == 32 - fullTransaction = blockInfo["transactions"] - assert len(fullTransaction) > 0 - # get block by blockNumber - # fullTx:Flase - blockInfo = node.eth.getBlock(blockNumber, False) - blockHash = blockInfo['hash'] - assert len(blockHash) == 32 - fullTransaction = blockInfo["transactions"] - assert len(fullTransaction) > 0 - # fullTx:True - blockInfo = node.eth.getBlock(blockNumber, True) - blockHash = blockInfo['hash'] - assert len(blockHash) == 32 - fullTransaction = blockInfo["transactions"] - assert len(fullTransaction) > 0 - - -@allure.title("Send the trade based on the gas estimate") -@pytest.mark.P1 -def test_platon_estimateGas(global_running_env): - node = global_running_env.get_rand_node() - account = global_running_env.account - platon = Eth(node.web3) - address = account.account_with_money["address"] - - nCount = platon.getTransactionCount(Web3.toChecksumAddress(address)) - nonce = hex(nCount) - estimateGas = transaction_func(node=node, from_addr=address, to_addr=to_address, nonce=nonce, gas='') - gas = estimateGas - - tx_hash = transaction_func(node=node, from_addr=address, to_addr=to_address, nonce=nonce, gas=gas) - assert len(tx_hash) == 32 - nCount = nCount + 1 - nonce = hex(nCount) - - gas = int(estimateGas * 2) - tx_hash = transaction_func(node=node, from_addr=address, to_addr=to_address, nonce=nonce, gas=gas) - assert len(tx_hash) == 32 - nCount = nCount + 1 - nonce = hex(nCount) - - gas = int(estimateGas / 2) - status = 0 - try: - transaction_func(node=node, from_addr=address, to_addr=to_address, nonce=nonce, gas=gas) - status = 1 - except Exception as e: - print("\nUse less gas than expected:【{}】,Send transaction failed,error message:{}".format(gas, e)) - assert status == 0 - - -if __name__ == '__main__': - pytest.main(['-v', 'test_rpc_personal.py']) diff --git a/cases/tests/blockchain/rpc/test_rpc_platon.py b/cases/tests/blockchain/rpc/test_rpc_platon.py deleted file mode 100644 index f2315949eb..0000000000 --- a/cases/tests/blockchain/rpc/test_rpc_platon.py +++ /dev/null @@ -1,93 +0,0 @@ -# -*- coding: utf-8 -*- -''' -@Description: rpc用例 -''' -import json - -import allure -import pytest -import rlp -from alaya import Web3 -from alaya.eth import Eth - - -@allure.title("Check if the version of the protocol is 63") -@pytest.mark.P1 -def test_platon_protocolVersion(global_running_env): - node = global_running_env.get_rand_node() - assert node.eth.protocolVersion == '63' - - -@allure.title("Get the amount of the account") -@pytest.mark.P1 -def test_platon_GetBalance(global_running_env): - node = global_running_env.get_rand_node() - platon = Eth(node.web3) - account = global_running_env.account - addr = account.account_with_money["address"] - from_addr = Web3.toChecksumAddress(addr) - # balance = platon.getBalance(from_addr) - balance = platon.getBalance(node.web3.pipAddress) - assert balance == 0 - - -def platon_call(platon, from_addr, to_addr="0x1000000000000000000000000000000000000002", data=""): - recive = platon.call({ - "from": from_addr, - "to": to_addr, - "data": data - }) - recive = str(recive, encoding="utf8") - recive = recive.replace('\\', '').replace('"[', '[').replace(']"', ']') - recive = json.loads(recive) - return recive - - -@allure.title("Call the built-in contract interface with platon.call") -@pytest.mark.P1 -def test_platon_call(global_running_env): - node = global_running_env.get_rand_node() - platon = Eth(node.web3) - account = global_running_env.account - addr = account.account_with_money["address"] - from_addr = Web3.toChecksumAddress(addr) - - to_addr = node.web3.stakingAddress - data = rlp.encode([rlp.encode(int(1100))]) - recive = platon_call(platon, from_addr, to_addr, data) - assert recive != "0x" - # not exist interface on staking contract - data = rlp.encode([rlp.encode(int(2222))]) - - status = 0 - try: - recive = platon_call(platon, from_addr, to_addr, data) - assert recive == "0x" - status = 1 - except Exception as e: - print("\nQuery the built-in contract interface that does not exist and return an exception.:{}".format(e)) - assert status == 0 - - -@allure.title("Get node double-sign evidence") -@pytest.mark.P1 -def test_platon_evidences(global_running_env): - node = global_running_env.get_rand_node() - platon = Eth(node.web3) - ret = platon.evidences - assert ret is not None - - -@allure.title("Get the aggregate signature of any block") -@pytest.mark.P1 -@pytest.mark.compatibility -def test_platon_getPrepareQC(global_running_env): - node = global_running_env.get_rand_node() - platon = Eth(node.web3) - blockNumber = platon.blockNumber - qc = platon.getPrepareQC(blockNumber) - assert qc is not None - - -if __name__ == '__main__': - pytest.main(['-v', 'test_rpc_platon.py']) diff --git a/cases/tests/conftest.py b/cases/tests/conftest.py deleted file mode 100644 index 417e839fd9..0000000000 --- a/cases/tests/conftest.py +++ /dev/null @@ -1,298 +0,0 @@ -import time -from typing import List -import pytest -from copy import copy -from tests.lib import StakingConfig -from common.log import log -from tests.lib.client import Client, get_client_by_nodeid, get_clients_by_nodeid -from tests.lib.utils import get_pledge_list, wait_block_number, assert_code, upload_platon - - -@pytest.fixture() -def global_running_env(global_test_env): - cfg = global_test_env.cfg - genesis = global_test_env.genesis_config - backup_cfg = copy(cfg) - id_cfg = id(cfg) - if not global_test_env.running: - log.info("The environment is not running, redeploying the environment") - global_test_env.deploy_all() - yield global_test_env - if id_cfg != id(global_test_env.cfg) or id(genesis) != id(global_test_env.genesis_config): - log.info("Environment configuration changes, restore configuration files and redeploy") - global_test_env.set_cfg(backup_cfg) - global_test_env.deploy_all() - - -@pytest.fixture() -def staking_cfg(): - cfg = StakingConfig("externalId", "nodeName", "website", "details") - return cfg - - -def get_clients(env, cfg=None): - if cfg is None: - cfg = StakingConfig("externalId", "nodeName", "website", "details") - all_clients = [] - all_nodes = env.get_all_nodes() - for node_obj in all_nodes: - all_clients.append(Client(env, node_obj, cfg)) - return all_clients - - -@pytest.fixture() -def all_clients(global_running_env, staking_cfg) -> List[Client]: - """ - Get all node Node object list - """ - return get_clients(global_running_env, staking_cfg) - - -def get_consensus_clients(env, cfg): - clients_consensus = [] - consensus_nodes = env.consensus_node_list - for node in consensus_nodes: - clients_consensus.append(Client(env, node, cfg)) - return clients_consensus - - -@pytest.fixture() -def clients_consensus(global_running_env, staking_cfg) -> List[Client]: - """ - Get all consensus node Client object list - """ - return get_consensus_clients(global_running_env, staking_cfg) - - -def get_clients_noconsensus(env, cfg): - client_noconsensus = [] - noconsensus_nodes = env.normal_node_list - for node_obj in noconsensus_nodes: - client_noconsensus.append(Client(env, node_obj, cfg)) - return client_noconsensus - - -@pytest.fixture() -def clients_noconsensus(global_running_env, staking_cfg) -> List[Client]: - """ - Get all noconsensus node Client object list - """ - return get_clients_noconsensus(global_running_env, staking_cfg) - - -def get_client_consensus(env, cfg): - consensus_node = env.get_rand_node() - client_consensus = Client(env, consensus_node, cfg) - return client_consensus - - -@pytest.fixture() -def client_consensus(global_running_env, staking_cfg) -> Client: - """ - Get a consensus node Client object - """ - return get_client_consensus(global_running_env, staking_cfg) - - -@pytest.fixture() -def client_noconsensus(global_running_env, staking_cfg) -> Client: - """ - Get a noconsensus node Client object - """ - noconsensus_node = global_running_env.get_a_normal_node() - client_noconsensus = Client(global_running_env, noconsensus_node, staking_cfg) - return client_noconsensus - - -@pytest.fixture() -def client_verifier(global_running_env, staking_cfg) -> Client: - """ - Get a verifier node Client object - """ - all_clients = get_clients(global_running_env, staking_cfg) - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifierlist{}'.format(verifier_list)) - for client in all_clients: - if client.node.node_id in verifier_list: - return client - raise Exception('Get a verifier node Client object ') - - -@pytest.fixture() -def clients_verifier(global_running_env, staking_cfg) -> List[Client]: - """ - Get verifier node Client object list - """ - all_clients = get_clients(global_running_env, staking_cfg) - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifierlist{}'.format(verifier_list)) - return get_clients_by_nodeid(verifier_list, all_clients) - - -@pytest.fixture() -def client_new_node(global_running_env, staking_cfg) -> Client: - """ - Get a new node Client object list - """ - normal_node = global_running_env.get_a_normal_node() - for noconsensus_node in global_running_env.normal_node_list: - msg = noconsensus_node.ppos.getCandidateInfo(noconsensus_node.node_id) - log.info(msg) - if msg["Code"] == 301204: - log.info("Current linked node: {}".format(noconsensus_node.node_mark)) - return Client(global_running_env, noconsensus_node, staking_cfg) - log.info('noconsensus node has been staked, restart the chain') - global_running_env.deploy_all() - log.info("Current linked node: {}".format(normal_node.node_mark)) - return Client(global_running_env, normal_node, staking_cfg) - - -@pytest.fixture() -def clients_new_node(global_test_env, staking_cfg) -> List[Client]: - """ - Get new node Client object list - """ - global_test_env.deploy_all() - return get_clients_noconsensus(global_test_env, staking_cfg) - - -@pytest.fixture() -def client_candidate(global_running_env, staking_cfg): - """ - Get a candidate node Client object - """ - client_consensus = get_client_consensus(global_running_env, staking_cfg) - all_clients = get_clients(global_running_env, staking_cfg) - clients_noconsensus = get_clients_noconsensus(global_running_env, staking_cfg) - if not client_consensus.staking.get_candidate_list_not_verifier(): - log.info('There is no candidate, node stake') - candidate_list = get_pledge_list(client_consensus.node.ppos.getCandidateList) - for client in clients_noconsensus: - if client.node.node_id not in candidate_list: - if client.node.program_version != client.pip.cfg.version0: - upload_platon(client.node, client.pip.cfg.PLATON_NEW_BIN0) - client.node.restart() - log.info('Node {} staking'.format(client.node.node_id)) - address, _ = client.economic.account.generate_account(client.node.web3, client.economic.create_staking_limit * 5) - result = client.staking.create_staking(0, address, address) - log.info('Node {} staking result :{}'.format(client.node.node_id, result)) - assert_code(result, 0) - client_consensus.economic.wait_settlement(client_consensus.node) - node_id_list = client_consensus.staking.get_candidate_list_not_verifier() - log.info('Get candidate list no verifier {}'.format(node_id_list)) - if len(node_id_list) == 0: - raise Exception('Get candidate list no verifier failed') - return get_client_by_nodeid(node_id_list[0], all_clients) - - -@pytest.fixture() -def reset_environment(global_test_env): - log.info("case execution completed") - yield - global_test_env.deploy_all() - - -@pytest.fixture() -def new_genesis_env(global_test_env): - cfg = copy(global_test_env.cfg) - yield global_test_env - log.info("reset deploy.................") - global_test_env.set_cfg(cfg) - global_test_env.deploy_all() - - -def param_governance_verify(client, module, name, newvalue, effectiveflag=True): - """ - effectiveflag indicates whether it takes effect - """ - if isinstance(client, Client): - pip = client.pip - else: - raise Exception("client must Client class") - if pip.is_exist_effective_proposal_for_vote(pip.cfg.param_proposal) or \ - pip.is_exist_effective_proposal_for_vote(pip.cfg.version_proposal): - raise Exception('There is effective param proposal or version proposal') - result = pip.submitParam(pip.node.node_id, str(time.time()), module, name, newvalue, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('submit param proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('param proposalinfo : {}'.format(proposalinfo)) - all_clients = [] - for node_obj in pip.economic.env.get_all_nodes(): - all_clients.append(Client(pip.economic.env, node_obj, - StakingConfig("externalId", "nodeName", "website", "details"))) - client = get_client_by_nodeid(pip.node.node_id, all_clients) - verifier_list = get_pledge_list(client.ppos.getVerifierList) - log.info('verifierlist : {}'.format(verifier_list)) - clients_verifier = get_clients_by_nodeid(verifier_list, all_clients) - if effectiveflag: - blocknum = 0 - for client in clients_verifier: - if client.node.block_number < blocknum and blocknum != 0: - wait_block_number(client.node, blocknum) - result = client.pip.vote(client.node.node_id, proposalinfo.get('ProposalID'), - client.pip.cfg.vote_option_yeas, - client.node.staking_address, transaction_cfg=client.pip.cfg.transaction_cfg) - log.info('Node {} vote proposal result : {}'.format(client.node.node_id, result)) - blocknum = client.node.block_number - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - if effectiveflag: - assert pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 2 - log.info("blockNumber {}, the {} has become {}".format(proposalinfo.get('EndVotingBlock'), name, newvalue)) - else: - assert pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 3 - log.info("{} retains the original value".format(name)) - - -def param_governance_verify_before_endblock(client, module, name, newvalue, effectiveflag=True): - """ - effectiveflag indicates whether it takes effect - :param client_obj: - :param module: - :param name: - :param newvalue: - :param effectiveflag: - :return: the EndVotingBlock of the param proposal - """ - if isinstance(client, Client): - pip = client.pip - else: - raise Exception("client must Client class") - if pip.is_exist_effective_proposal_for_vote(pip.cfg.param_proposal) or \ - pip.is_exist_effective_proposal_for_vote(pip.cfg.version_proposal): - raise Exception('There is effective param proposal or version proposal') - result = pip.submitParam(pip.node.node_id, str(time.time()), module, name, newvalue, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('submit param proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('param proposalinfo : {}'.format(proposalinfo)) - all_clients = [] - for node in pip.economic.env.get_all_nodes(): - all_clients.append(Client(pip.economic.env, node, - StakingConfig("externalId", "nodeName", "website", "details"))) - client = get_client_by_nodeid(pip.node.node_id, all_clients) - verifier_list = get_pledge_list(client.ppos.getVerifierList) - log.info('verifierlist : {}'.format(verifier_list)) - clients_verifier = get_clients_by_nodeid(verifier_list, all_clients) - if effectiveflag: - blocknum = 0 - for client in clients_verifier: - if not client.node.running: - continue - if client.node.block_number < blocknum and blocknum != 0: - wait_block_number(client.node, blocknum) - result = client.pip.vote(client.node.node_id, proposalinfo.get('ProposalID'), - client.pip.cfg.vote_option_yeas, - client.node.staking_address, transaction_cfg=client.pip.cfg.transaction_cfg) - log.info('Node {} vote proposal result : {}'.format(client.node.node_id, result)) - blocknum = client.node.block_number - log.info('The proposal endvoting block is {}'.format(proposalinfo.get('EndVotingBlock'))) - return proposalinfo.get('EndVotingBlock') - - - - - - diff --git a/cases/tests/govern/__init__.py b/cases/tests/govern/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/cases/tests/govern/conftest.py b/cases/tests/govern/conftest.py deleted file mode 100644 index 09fc33b28e..0000000000 --- a/cases/tests/govern/conftest.py +++ /dev/null @@ -1,311 +0,0 @@ -import pytest -from common.log import log -import time -import math -from tests.lib.client import get_client_by_nodeid, get_clients_by_nodeid, Client -from tests.conftest import get_clients -from tests.lib.utils import get_pledge_list, upload_platon, wait_block_number, assert_code, get_governable_parameter_value -from typing import List -from tests.lib import Pip - - -def get_refund_to_account_block(pip, blocknumber=None): - ''' - Get refund to account block - :param pip: - :return: - ''' - if blocknumber is None: - blocknumber = pip.node.block_number - return math.ceil(blocknumber / pip.economic.settlement_size + pip.economic.unstaking_freeze_ratio - ) * pip.economic.settlement_size - - -def version_proposal_vote(pip, vote_option=None): - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Version proposalinfo: {}'.format(proposalinfo)) - if not proposalinfo: - raise Exception('there is no voting version proposal') - if proposalinfo.get('NewVersion') == pip.cfg.version5: - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN) - log.info('Replace the node {} version to {}'.format(pip.node.node_id, pip.cfg.version5)) - elif proposalinfo.get('NewVersion') == pip.cfg.version8: - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN8) - log.info('Replace the node {} version to {}'.format(pip.node.node_id, pip.cfg.version8)) - elif proposalinfo.get('NewVersion') == pip.cfg.version9: - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN9) - log.info('Replace the node {} version to {}'.format(pip.node.node_id, pip.cfg.version9)) - else: - raise Exception('The new version of the proposal is{}'.format(proposalinfo.get('NewVersion'))) - pip.node.restart() - log.info('Restart the node {}'.format(pip.node.node_id)) - if not vote_option: - vote_option = pip.cfg.vote_option_yeas - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), vote_option, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('The node {} vote result {}'.format(pip.node.node_id, result)) - return result - - -def proposal_vote(pip, vote_option=None, proposaltype=3): - if vote_option is None: - vote_option = pip.cfg.vote_option_yeas - proposalinfo = pip.get_effect_proposal_info_of_vote(proposaltype) - log.info('proposalinfo: {}'.format(proposalinfo)) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), vote_option, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} vote param proposal result {}'.format(pip.node.node_id, result)) - return result - - -def verifier_node_version(obj, version=None): - if not isinstance(obj, Client): - obj = get_client_by_nodeid(obj.node.node_id, get_clients(obj.economic.env)) - node_version = obj.staking.get_version() - log.info('Node {} version is {}'.format(obj.node.node_id, node_version)) - if version is None: - return node_version - else: - assert_code(node_version, version) - - -@pytest.fixture() -def no_vp_proposal(global_test_env, client_verifier): - pip = client_verifier.pip - if pip.is_exist_effective_proposal() or pip.chain_version != pip.cfg.version0 \ - or pip.is_exist_effective_proposal_for_vote(pip.cfg.param_proposal): - log.info('There is effective proposal,restart the chain') - global_test_env.deploy_all() - return pip - - -@pytest.fixture() -def submit_version(no_vp_proposal): - pip = no_vp_proposal - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 10, - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('submit version result : {}'.format(result)) - assert_code(result, 0) - return pip - - -@pytest.fixture() -def submit_param(no_vp_proposal, all_clients): - pip = no_vp_proposal - client = get_client_by_nodeid(pip.node.node_id, all_clients) - newvalue = '1' - if int(get_governable_parameter_value(client, 'slashBlocksReward')) == 1: - newvalue = '2' - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', newvalue, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('submit param proposal result : {}'.format(result)) - assert_code(result, 0) - return pip - - -@pytest.fixture() -def submit_cancel(submit_version): - pip = submit_version - propolsalinfo = pip.get_effect_proposal_info_of_vote() - log.info('get voting version proposal info :{}'.format(propolsalinfo)) - result = pip.submitCancel(pip.node.node_id, str(time.time()), 2, propolsalinfo.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - return pip - - -@pytest.fixture() -def submit_cancel_param(submit_param): - pip = submit_param - propolsalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get voting param proposal info :{}'.format(propolsalinfo)) - result = pip.submitCancel(pip.node.node_id, str(time.time()), 2, propolsalinfo.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - return pip - - -@pytest.fixture() -def submit_text(client_verifier): - pip = client_verifier.pip - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('submit text result:'.format(result)) - assert_code(result, 0) - return pip - - -@pytest.fixture() -def new_node_has_proposal(client_new_node, client_verifier, client_noconsensus): - pip = client_verifier.pip - if pip.chain_version != pip.cfg.version0 or pip.is_exist_effective_proposal(pip.cfg.param_proposal): - client_new_node.economic.env.deploy_all() - if pip.is_exist_effective_proposal(): - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information {}'.format(proposalinfo)) - if proposalinfo.get('EndVotingBlock') - pip.node.block_number < 2 * pip.economic.consensus_size: - client_new_node.economic.env.deploy_all() - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 5, - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - return client_noconsensus.pip - else: - return client_new_node.pip - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 5, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - return client_new_node.pip - - -@pytest.fixture() -def candidate_has_proposal(clients_noconsensus, all_clients): - clients_noconsensus[0].economic.env.deploy_all() - for client in clients_noconsensus: - address, _ = client.economic.account.generate_account(client.node.web3, 10 ** 18 * 10000000) - log.info('Node {} staking'.format(client.node.node_id)) - result = client.staking.create_staking(0, address, address) - log.info('Node {} staking result: {}'.format(client.node.node_id, result)) - assert_code(result, 0) - client.economic.wait_settlement(client.node) - node_id_list = client.pip.get_candidate_list_not_verifier() - if not node_id_list: - raise Exception('Get candidate list') - verifiers = get_pledge_list(client.ppos.getVerifierList) - log.info('Verifier list : {}'.format(verifiers)) - pip = get_client_by_nodeid(verifiers[0], all_clients).pip - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 5, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - return get_client_by_nodeid(node_id_list[0], all_clients).pip - - -@pytest.fixture() -def noproposal_pips(all_clients) -> List[Pip]: - ''' - Get candidate Client object list - :param global_test_env: - :return: - ''' - if all_clients[0].pip.is_exist_effective_proposal() or all_clients[0].pip.chain_version != \ - all_clients[0].pip.cfg.version0: - log.info('There is effective proposal, Restart the chain') - all_clients[0].economic.env.deploy_all() - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifierlist{}'.format(verifier_list)) - clients = get_clients_by_nodeid(verifier_list, all_clients) - return [client.pip for client in clients] - - -@pytest.fixture() -def noproposal_candidate_pips(all_clients) -> List[Pip]: - ''' - Get verifier Client object list - :param global_test_env: - :return: - ''' - if all_clients[0].pip.is_exist_effective_proposal() or all_clients[0].pip.chain_version != \ - all_clients[0].pip.cfg.version0: - log.info('There is effective proposal, Restart the chain') - all_clients[0].economic.env.deploy_all() - nodeid_list = all_clients[0].pip.get_candidate_list_not_verifier() - log.info('candidate not verifier list {}'.format(nodeid_list)) - if not nodeid_list: - candidate_list = get_pledge_list(all_clients[0].ppos.getCandidateList) - log.info('candidate_list{}'.format(candidate_list)) - for client in all_clients: - if client.node.node_id not in candidate_list: - address, _ = client.economic.account.generate_account(client.node.web3, 10**18 * 10000000) - result = client.staking.create_staking(0, address, address) - log.info('node {} staking result {}'.format(client.node.node_id, result)) - client.economic.wait_settlement(client.node) - nodeid_list = all_clients[0].pip.get_candidate_list_not_verifier() - if not nodeid_list: - raise Exception('get candidate not verifier failed') - clients_candidate = get_clients_by_nodeid(nodeid_list, all_clients) - return [client_candidate.pip for client_candidate in clients_candidate] - - -@pytest.fixture() -def proposal_pips(all_clients): - ''' - get verifier Client object list - :param global_test_env: - :return: - ''' - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - pip = get_client_by_nodeid(verifier_list[0], all_clients).pip - if pip.chain_version != pip.cfg.version0: - pip.economic.env.deploy_all() - if pip.is_exist_effective_proposal(): - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('proprosalinfo : {}'.format(proposalinfo)) - if proposalinfo.get('EndVotingBlock') - pip.node.block_number > 2 * pip.economic.consensus_size \ - and proposalinfo.get('NewVersion') == pip.cfg.version5: - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifierlist{}'.format(verifier_list)) - clients_verifier = get_clients_by_nodeid(verifier_list, all_clients) - return [client.pip for client in clients_verifier] - else: - pip.economic.env.deploy_all() - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 10, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('version proposal result :{}'.format(result)) - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifierlist{}'.format(verifier_list)) - clients_verifier = get_clients_by_nodeid(verifier_list, all_clients) - return [client.pip for client in clients_verifier] - - -@pytest.fixture() -def preactive_proposal_pips(all_clients): - if all_clients[0].pip.is_exist_effective_proposal() or all_clients[0].pip.chain_version != \ - all_clients[0].pip.cfg.version0 or all_clients[0].pip.is_exist_effective_proposal_for_vote( - all_clients[0].pip.cfg.param_proposal - ): - log.info('There is effective version proposal, restart the chain') - all_clients[0].economic.env.deploy_all() - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifierlist :{}'.format(verifier_list)) - client_verifiers = get_clients_by_nodeid(verifier_list, all_clients) - pips = [client_verifier.pip for client_verifier in client_verifiers] - result = pips[0].submitVersion(pips[0].node.node_id, str(time.time()), - pips[0].cfg.version5, 4, pips[0].node.staking_address, - transaction_cfg=pips[0].cfg.transaction_cfg) - log.info('submit version proposal, result : {}'.format(result)) - proposalinfo = pips[0].get_effect_proposal_info_of_vote() - log.info('Version proposalinfo: {}'.format(proposalinfo)) - for pip in pips: - result = version_proposal_vote(pip) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 4 - return pips - - -@pytest.fixture() -def preactive_large_version_proposal_pips(all_clients): - if all_clients[0].pip.is_exist_effective_proposal() or all_clients[0].pip.chain_version != \ - all_clients[0].pip.cfg.version0: - log.info('There is effective version proposal, restart the chain') - all_clients[0].economic.env.deploy_all() - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifierlist :{}'.format(verifier_list)) - client_verifiers = get_clients_by_nodeid(verifier_list, all_clients) - pips = [client.pip for client in client_verifiers] - result = pips[0].submitVersion(pips[0].node.node_id, str(time.time()), - pips[0].cfg.version8, 3, pips[0].node.staking_address, - transaction_cfg=pips[0].cfg.transaction_cfg) - log.info('submit version proposal, result : {}'.format(result)) - proposalinfo = pips[0].get_effect_proposal_info_of_vote() - log.info('Version proposalinfo: {}'.format(proposalinfo)) - for pip in pips: - result = version_proposal_vote(pip) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 4 - return pips diff --git a/cases/tests/govern/test_declare_version.py b/cases/tests/govern/test_declare_version.py deleted file mode 100644 index 499a7524c7..0000000000 --- a/cases/tests/govern/test_declare_version.py +++ /dev/null @@ -1,1705 +0,0 @@ -from common.log import log -from tests.lib.utils import upload_platon, assert_code, wait_block_number, get_pledge_list -import pytest -import allure -import time, struct -from tests.govern.test_voting_statistics import submitvpandvote, createstaking, version_proposal_vote -from tests.lib import Genesis -from tests.lib.client import get_client_by_nodeid, get_clients_by_nodeid -from dacite import from_dict -from tests.govern.conftest import verifier_node_version - - -@pytest.fixture() -def large_version_proposal_pips(all_clients): - ''' - get verifier Client object list - :param global_test_env: - :return: - ''' - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifier list {}'.format(verifier_list)) - pip = get_client_by_nodeid(verifier_list[0], all_clients).pip - if pip.chain_version != pip.cfg.version0: - pip.economic.env.deploy_all() - if pip.is_exist_effective_proposal(): - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('proprosalinfo : {}'.format(proposalinfo)) - if proposalinfo.get('EndVotingBlock') - pip.node.block_number > 2 * pip.economic.consensus_size \ - and proposalinfo.get('NewVersion') == pip.cfg.version8: - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifierlist{}'.format(verifier_list)) - clients = get_clients_by_nodeid(verifier_list, all_clients) - return [client.pip for client in clients] - else: - pip.economic.env.deploy_all() - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version8, 10, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('version proposal result :{}'.format(result)) - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifierlist{}'.format(verifier_list)) - clients = get_clients_by_nodeid(verifier_list, all_clients) - return [client.pip for client in clients] - - -@pytest.fixture() -def proposal_candidate_pips(all_clients): - ''' - There is voting stage proposal, get candidate list pip object - :param global_test_env: - :return: - ''' - pip = all_clients[0].pip - if pip.chain_version != pip.cfg.version0 or (pip.is_exist_effective_proposal() - and not pip.is_exist_effective_proposal_for_vote()): - log.info('The chain has been upgraded or there is preactive proposal,restart!') - pip.economic.env.deploy_all() - nodeid_list = pip.get_candidate_list_not_verifier() - if nodeid_list: - if pip.get_effect_proposal_info_of_vote(): - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('get version proposalinfo : {}'.format(proposalinfo)) - if proposalinfo.get('NewVersion') == pip.cfg.version8: - pip.economic.env.deploy_all() - else: - if proposalinfo.get('EndVotingBlock') - pip.node.block_number > pip.economic.consensus_size: - client_candidates = get_clients_by_nodeid(nodeid_list, all_clients) - return [client.pip for client in client_candidates] - - candidate_list = get_pledge_list(all_clients[0].ppos.getCandidateList) - log.info('candidate_list{}'.format(candidate_list)) - for client in all_clients: - if client.node.node_id not in candidate_list: - address, _ = client.economic.account.generate_account(client.node.web3, 10**18 * 10000000) - result = client.staking.create_staking(0, address, address) - log.info('node {} staking result {}'.format(client.node.node_id, result)) - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('Verifier list {}'.format(verifier_list)) - verifier_pip = get_client_by_nodeid(verifier_list[0], all_clients).pip - result = verifier_pip.submitVersion(verifier_pip.node.node_id, str(time.time()), verifier_pip.cfg.version5, - 10, verifier_pip.node.staking_address, - transaction_cfg=verifier_pip.cfg.transaction_cfg) - log.info('Submit version proposal result {}'.format(result)) - assert_code(result, 0) - nodeid_list = all_clients[0].pip.get_candidate_list_not_verifier() - if not nodeid_list: - raise Exception('get candidate not verifier failed') - client_candiates = get_clients_by_nodeid(nodeid_list, all_clients) - return [client_candiate.pip for client_candiate in client_candiates] - - -@pytest.fixture() -def large_version_proposal_candidate_pips(all_clients): - ''' - There is voting stage proposal, get candidate list pip object - :param global_test_env: - :return: - ''' - pip = all_clients[0].pip - if pip.chain_version != pip.cfg.version0 or (pip.is_exist_effective_proposal() - and not pip.is_exist_effective_proposal_for_vote()): - log.info('The chain has been upgraded or there is preactive proposal,restart!') - pip.economic.env.deploy_all() - nodeid_list = pip.get_candidate_list_not_verifier() - if nodeid_list: - if pip.get_effect_proposal_info_of_vote(): - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('get version proposalinfo : {}'.format(proposalinfo)) - if proposalinfo.get('NewVersion') == pip.cfg.version5: - pip.economic.env.deploy_all() - else: - if proposalinfo.get('EndVotingBlock') - pip.node.block_number > pip.economic.consensus_size: - client_candiates = get_clients_by_nodeid(nodeid_list, all_clients) - return [client.pip for client in client_candiates] - - candidate_list = get_pledge_list(all_clients[0].ppos.getCandidateList) - log.info('candidate_list{}'.format(candidate_list)) - for client in all_clients: - if client.node.node_id not in candidate_list: - address, _ = client.economic.account.generate_account(client.node.web3, 10**18 * 10000000) - result = client.staking.create_staking(0, address, address) - log.info('node {} staking result {}'.format(client.node.node_id, result)) - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('Verifier list {}'.format(verifier_list)) - verifier_pip = get_client_by_nodeid(verifier_list[0], all_clients).pip - result = verifier_pip.submitVersion(verifier_pip.node.node_id, str(time.time()), - verifier_pip.cfg.version8, - 10, verifier_pip.node.staking_address, - transaction_cfg=verifier_pip.cfg.transaction_cfg) - log.info('Submit version proposal result {}'.format(result)) - assert_code(result, 0) - nodeid_list = all_clients[0].pip.get_candidate_list_not_verifier() - if not nodeid_list: - raise Exception('get candidate not verifier failed') - client_candidates = get_clients_by_nodeid(nodeid_list, all_clients) - return [client_candidate.pip for client_candidate in client_candidates] - - -@pytest.fixture() -def proposal_voted_pips(all_clients): - ''' - get verifier Client object list - :param global_test_env: - :return: - ''' - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifier list {}'.format(verifier_list)) - pip = get_client_by_nodeid(verifier_list[0], all_clients).pip - pip.economic.env.deploy_all() - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 10, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('version proposal result :{}'.format(result)) - assert_code(result, 0) - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifierlist{}'.format(verifier_list)) - clients_verifier = get_clients_by_nodeid(verifier_list, all_clients) - result = version_proposal_vote(clients_verifier[0].pip) - assert_code(result, 0) - return [client.pip for client in clients_verifier] - - -@pytest.fixture() -def large_version_proposal_voted_pips(all_clients): - ''' - get verifier Client object list - :param global_test_env: - :return: - ''' - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifier list {}'.format(verifier_list)) - pip = get_client_by_nodeid(verifier_list[0], all_clients).pip - pip.economic.env.deploy_all() - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version8, 10, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('version proposal result :{}'.format(result)) - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifierlist{}'.format(verifier_list)) - clients_verifier = get_clients_by_nodeid(verifier_list, all_clients) - result = version_proposal_vote(clients_verifier[0].pip) - assert_code(result, 0) - return [client.pip for client in clients_verifier] - - -def replace_version_declare(pip, platon_bin, versiontag): - upload_platon(pip.node, platon_bin) - log.info('Replace the platon of the node {} version{}'.format(pip.node.node_id, versiontag)) - pip.node.restart() - log.info('Restart the node{}'.format(pip.node.node_id)) - assert pip.node.program_version == versiontag - log.info('assert the version of the node is {}'.format(versiontag)) - log.info("staking: {}".format(pip.node.staking_address)) - log.info("account:{}".format(pip.economic.account.accounts)) - result = pip.declareVersion(pip.node.node_id, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('declareversion {} result: {}'.format(pip.node.program_version, result)) - return result - - -def wrong_verisonsign_declare(pip, pip_test): - result = pip.declareVersion(pip.node.node_id, pip.node.staking_address, - version_sign=pip_test.node.program_version_sign, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('wrong program version sign, declareVersion result : {}'.format(result)) - return result - - -def wrong_verison_declare(pip, version=None): - if not version: - proposalinfo = pip.get_effect_proposal_info_of_vote() - version = proposalinfo.get('NewVersion') - log.info('The new version of the proposal: {}'.format(version)) - result = pip.declareVersion(pip.node.node_id, pip.node.staking_address, - program_version=version, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('wrong program version, declareVersion: {} result : {}'.format(version, result)) - return result - - -@pytest.mark.P0 -@allure.title('Not staking address declare version') -def test_DE_DE_001(client_verifier): - pip = client_verifier.pip - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000) - result = pip.declareVersion(pip.node.node_id, address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('declareVersion result: {}'.format(result)) - assert_code(result, 302021) - - -class TestNoProposalVE: - @pytest.mark.P0 - @pytest.mark.compatibility - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_001(self, noproposal_pips): - pip = noproposal_pips[0] - verison = struct.pack('>I', pip.chain_version) - if verison[3] != 0: - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN2, pip.cfg.version2) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version2) - - result = wrong_verisonsign_declare(pip, noproposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P3 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_002(self, noproposal_pips, all_clients): - pip = noproposal_pips[0] - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN1, pip.cfg.version1) - assert_code(result, 302028) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, noproposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P0 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_004(self, noproposal_pips): - pip = noproposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN3, pip.cfg.version3) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version3) - - result = wrong_verisonsign_declare(pip, noproposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_005(self, noproposal_pips): - pip = noproposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, noproposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_006(self, noproposal_pips): - pip = noproposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN8, pip.cfg.version8) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, noproposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P0 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_007(self, noproposal_pips): - pip = noproposal_pips[0] - verison = struct.pack('>I', pip.chain_version) - if verison[3] != 0: - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version0) - - result = wrong_verisonsign_declare(pip, noproposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version3) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version2) - assert_code(result, 302024) - - -class TestVotingProposalVE: - @pytest.mark.P0 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_008(self, proposal_pips): - pip = proposal_pips[0] - verison = struct.pack('>I', pip.chain_version) - if verison[3] != 0: - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN2, pip.cfg.version2) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version2) - - result = wrong_verisonsign_declare(pip, proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_010(self, proposal_pips): - pip = proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN1, pip.cfg.version1) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_014(self, large_version_proposal_pips): - pip = large_version_proposal_pips[0] - verison = struct.pack('>I', pip.chain_version) - if verison[3] != 0: - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN2, pip.cfg.version2) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version2) - - result = wrong_verisonsign_declare(pip, large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_025(self, large_version_proposal_pips): - pip = large_version_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN1, pip.cfg.version1) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - @pytest.mark.P0 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_032(self, proposal_pips): - pip = proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version0) - - result = wrong_verisonsign_declare(pip, proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_034(self, large_version_proposal_pips): - pip = large_version_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version0) - - result = wrong_verisonsign_declare(pip, large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_036(self, proposal_pips): - pip = proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN3, pip.cfg.version3) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version3) - - result = wrong_verisonsign_declare(pip, proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_038(self, proposal_pips, all_clients): - pip = proposal_pips[0] - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN3, pip.cfg.version3) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_040(self, proposal_pips): - pip = proposal_pips[0] - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN4, pip.cfg.version4) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_042(self, proposal_pips): - pip = proposal_pips[0] - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN6, pip.cfg.version6) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_044(self, proposal_pips): - pip = proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN8, pip.cfg.version8) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_046(self, large_version_proposal_pips): - pip = large_version_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN3, pip.cfg.version3) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version3) - - result = wrong_verisonsign_declare(pip, large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_048(self, large_version_proposal_pips): - pip = large_version_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_050(self, large_version_proposal_pips): - pip = large_version_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN4, pip.cfg.version4) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_052(self, large_version_proposal_pips): - pip = large_version_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN6, pip.cfg.version6) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, verifier declare version') - def test_DE_VE_054(self, large_version_proposal_pips): - pip = large_version_proposal_pips[0] - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN8, pip.cfg.version8) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - -class TestVotingProposlaVotedVE: - @pytest.mark.P2 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_009(self, proposal_voted_pips): - pip = proposal_voted_pips[0] - verison = struct.pack('>I', pip.chain_version) - if verison[3] != 0: - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN2, pip.cfg.version2) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_011(self, proposal_voted_pips): - pip = proposal_voted_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN1, pip.cfg.version1) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_021(self, large_version_proposal_voted_pips): - pip = large_version_proposal_voted_pips[0] - verison = struct.pack('>I', pip.chain_version) - if verison[3] != 0: - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN2, pip.cfg.version2) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, large_version_proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_026(self, large_version_proposal_voted_pips): - pip = large_version_proposal_voted_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN1, pip.cfg.version1) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, large_version_proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_033(self, proposal_voted_pips): - pip = proposal_voted_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_035(self, large_version_proposal_voted_pips): - pip = large_version_proposal_voted_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, large_version_proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_037(self, proposal_voted_pips): - pip = proposal_voted_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN3, pip.cfg.version3) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_039(self, proposal_voted_pips): - pip = proposal_voted_pips[0] - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version4) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_041(self, proposal_voted_pips): - pip = proposal_voted_pips[0] - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN4, pip.cfg.version4) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_043(self, proposal_voted_pips): - pip = proposal_voted_pips[0] - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN6, pip.cfg.version6) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_045(self, proposal_voted_pips): - pip = proposal_voted_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN8, pip.cfg.version8) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_047(self, large_version_proposal_voted_pips): - pip = large_version_proposal_voted_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN3, pip.cfg.version3) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, large_version_proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_049(self, large_version_proposal_voted_pips): - pip = large_version_proposal_voted_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, large_version_proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version8) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_051(self, large_version_proposal_voted_pips): - pip = large_version_proposal_voted_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN4, pip.cfg.version4) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, large_version_proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version8) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_053(self, large_version_proposal_voted_pips): - pip = large_version_proposal_voted_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN6, pip.cfg.version6) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, large_version_proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version8) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a proposal in voting stage, verifier declare version') - def test_DE_VE_055(self, large_version_proposal_voted_pips): - pip = large_version_proposal_voted_pips[0] - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN8, pip.cfg.version8) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, large_version_proposal_voted_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - -class TestPreactiveProposalVE: - @pytest.mark.P2 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_056(self, preactive_proposal_pips): - pip = preactive_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN2, pip.cfg.version2) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, preactive_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_057(self, preactive_proposal_pips): - pip = preactive_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN1, pip.cfg.version1) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, preactive_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_059(self, preactive_proposal_pips): - pip = preactive_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN2, pip.cfg.version2) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, preactive_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_060(self, preactive_large_version_proposal_pips): - pip = preactive_large_version_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN1, pip.cfg.version1) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, preactive_large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version8) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_062(self, preactive_proposal_pips): - pip = preactive_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, preactive_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_063(self, preactive_large_version_proposal_pips): - pip = preactive_large_version_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, preactive_large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version8) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_064(self, preactive_proposal_pips): - pip = preactive_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN3, pip.cfg.version3) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, preactive_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_065(self, preactive_proposal_pips): - pip = preactive_proposal_pips[0] - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, preactive_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version0) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_066(self, preactive_proposal_pips): - pip = preactive_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN4, pip.cfg.version4) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version4) - - result = wrong_verisonsign_declare(pip, preactive_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_067(self, preactive_proposal_pips): - pip = preactive_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN6, pip.cfg.version6) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version6) - - result = wrong_verisonsign_declare(pip, preactive_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_068(self, preactive_proposal_pips): - pip = preactive_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN8, pip.cfg.version8) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, preactive_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_069(self, preactive_large_version_proposal_pips): - pip = preactive_large_version_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN3, pip.cfg.version3) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, preactive_large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version8) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_070(self, preactive_large_version_proposal_pips): - pip = preactive_large_version_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, preactive_large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version8) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_071(self, preactive_large_version_proposal_pips): - pip = preactive_large_version_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN4, pip.cfg.version4) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, preactive_large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version8) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_072(self, preactive_large_version_proposal_pips): - pip = preactive_large_version_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN6, pip.cfg.version6) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, preactive_large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version8) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('There is a preactive proposal, verifier declare version') - def test_DE_VE_073(self, preactive_large_version_proposal_pips): - pip = preactive_large_version_proposal_pips[0] - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN8, pip.cfg.version8) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version8) - - result = wrong_verisonsign_declare(pip, preactive_large_version_proposal_pips[1]) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version0) - assert_code(result, 302024) - - -class TestNoProposalCA: - @pytest.mark.P0 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_001(self, noproposal_candidate_pips, client_verifier): - pip = noproposal_candidate_pips[0] - verison = struct.pack('>I', pip.chain_version) - if verison[3] != 0: - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN2, pip.cfg.version2) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version2) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P3 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_002(self, noproposal_candidate_pips, client_verifier): - pip = noproposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN1, pip.cfg.version1) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P0 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_004(self, noproposal_candidate_pips, client_verifier): - pip = noproposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN3, pip.cfg.version3) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version3) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_005(self, noproposal_candidate_pips, client_verifier): - pip = noproposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_006(self, noproposal_candidate_pips, client_verifier): - pip = noproposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN8, pip.cfg.version8) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P0 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_007(self, noproposal_candidate_pips, client_verifier): - pip = noproposal_candidate_pips[0] - verison = struct.pack('>I', pip.chain_version) - if verison[3] != 0: - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version0) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version2) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version3) - assert_code(result, 302024) - - @pytest.mark.P0 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_008(self, proposal_candidate_pips, client_verifier): - pip = proposal_candidate_pips[0] - verison = struct.pack('>I', pip.chain_version) - if verison[3] != 0: - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN2, pip.cfg.version2) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version2) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_010(self, proposal_candidate_pips, client_verifier): - pip = proposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN1, pip.cfg.version1) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_014(self, large_version_proposal_candidate_pips, client_verifier): - pip = large_version_proposal_candidate_pips[0] - verison = struct.pack('>I', pip.chain_version) - if verison[3] != 0: - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN2, pip.cfg.version2) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version2) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_025(self, large_version_proposal_candidate_pips, client_verifier): - pip = large_version_proposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN1, pip.cfg.version1) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P0 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_032(self, proposal_candidate_pips, client_verifier): - pip = proposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version0) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_034(self, large_version_proposal_candidate_pips, client_verifier): - pip = large_version_proposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version0) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_036(self, proposal_candidate_pips, client_verifier): - pip = proposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN3, pip.cfg.version3) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version3) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_038(self, proposal_candidate_pips, client_verifier): - pip = proposal_candidate_pips[0] - - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_040(self, proposal_candidate_pips, client_verifier): - pip = proposal_candidate_pips[0] - - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN4, pip.cfg.version4) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_042(self, proposal_candidate_pips, client_verifier): - pip = proposal_candidate_pips[0] - - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN6, pip.cfg.version6) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_044(self, proposal_candidate_pips, client_verifier): - pip = proposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN8, pip.cfg.version8) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_046(self, large_version_proposal_candidate_pips, client_verifier): - pip = large_version_proposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN3, pip.cfg.version3) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version3) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_048(self, large_version_proposal_candidate_pips, client_verifier): - pip = large_version_proposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_050(self, large_version_proposal_candidate_pips, client_verifier): - pip = large_version_proposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN4, pip.cfg.version4) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P1 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_052(self, large_version_proposal_candidate_pips, client_verifier): - pip = large_version_proposal_candidate_pips[0] - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN6, pip.cfg.version6) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('No effective proposal, candiate declare version') - def test_DE_CA_054(self, large_version_proposal_candidate_pips, client_verifier): - pip = large_version_proposal_candidate_pips[0] - - node_version = verifier_node_version(pip) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN8, pip.cfg.version8) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = wrong_verisonsign_declare(pip, client_verifier.pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - -class TestNewNodeDeclareVersion: - @pytest.mark.P1 - @allure.title('New node declare version') - def test_DE_NN_001_to_003(self, new_genesis_env, clients_consensus, clients_noconsensus): - new_genesis_env.deploy_all() - pip = clients_noconsensus[0].pip - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000000) - result = pip.declareVersion(pip.node.node_id, address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('New node declare version result : {}'.format(result)) - assert_code(result, 302023) - - submitvpandvote(clients_consensus) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo)) - result = pip.declareVersion(pip.node.node_id, address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('New node declare version result : {}'.format(result)) - assert_code(result, 302023) - - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 4) - wait_block_number(pip.node, proposalinfo.get('ActiveBlock')) - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 5) - - result = pip.declareVersion(pip.node.node_id, address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('New node declare version result : {}'.format(result)) - assert_code(result, 302023) - - -class TestDV: - @pytest.mark.P3 - @allure.title('Declare version') - def test_DE_VE_003_DE_VE_012_DE_VE_027_DE_CA_003_DE_CA_012_DE_VE_061_DE_CA_027(self, new_genesis_env, - clients_consensus): - new_genesis_env.deploy_all() - pip_ca = clients_consensus[-1].pip - pip_ve = clients_consensus[0].pip - submitvpandvote(clients_consensus[0:3], votingrounds=3, version=pip_ca.cfg.version9) - proposalinfo = pip_ca.get_effect_proposal_info_of_vote() - log.info("Get version proposal information : {}".format(proposalinfo)) - wait_block_number(pip_ca.node, proposalinfo.get('EndVotingBlock')) - assert_code(pip_ca.get_status_of_proposal(proposalinfo.get('ProposalID')), 4) - wait_block_number(pip_ca.node, proposalinfo.get('ActiveBlock')) - assert_code(pip_ca.get_status_of_proposal(proposalinfo.get('ProposalID')), 5) - assert pip_ca.cfg.version9 == pip_ca.chain_version - - verifier_list = get_pledge_list(clients_consensus[0].ppos.getVerifierList) - log.info('verifier list : {}'.format(verifier_list)) - assert pip_ca.node not in verifier_list - - result = replace_version_declare(pip_ve, pip_ve.cfg.PLATON_NEW_BIN0, pip_ve.cfg.version0) - assert_code(result, 302028) - result = pip_ca.declareVersion(pip_ca.node.node_id, pip_ca.node.staking_address, - transaction_cfg=pip_ca.cfg.transaction_cfg) - log.info('Node {} declare version result {}'.format(pip_ca.node.node_id, result)) - assert_code(result, 302028) - result = clients_consensus[1].pip.submitVersion(clients_consensus[1].node.node_id, str(time.time()), - pip_ca.cfg.version8, 4, - clients_consensus[1].node.staking_address, - transaction_cfg=pip_ca.cfg.transaction_cfg) - log.info('Node {} submit version proposal result : {}'.format(clients_consensus[1].node.node_id, result)) - assert_code(result, 0) - result = replace_version_declare(pip_ve, pip_ve.cfg.PLATON_NEW_BIN0, versiontag=pip_ve.cfg.version0) - assert_code(result, 302028) - - result = replace_version_declare(pip_ca, pip_ve.cfg.PLATON_NEW_BIN0, versiontag=pip_ve.cfg.version0) - assert_code(result, 302028) - - for client in clients_consensus[:3]: - version_proposal_vote(client.pip) - proposalinfo = pip_ve.get_effect_proposal_info_of_vote() - log.info('Get proposal information : {}'.format(proposalinfo)) - wait_block_number(pip_ve.node, proposalinfo.get('EndVotingBlock')) - assert_code(pip_ve.get_status_of_proposal(proposalinfo.get('ProposalID')), 4) - wait_block_number(pip_ve.node, proposalinfo.get('ActiveBlock')) - assert_code(pip_ve.get_status_of_proposal(proposalinfo.get('ProposalID')), 5) - - result = replace_version_declare(pip_ve, pip_ve.cfg.PLATON_NEW_BIN0, versiontag=pip_ve.cfg.version0) - assert_code(result, 302028) - - -class TestVotedCADV: - def get_candidate_no_verifier(self, client_list): - verifier_list = get_pledge_list(client_list[0].ppos.getVerifierList) - log.info('verifier list : {}'.format(verifier_list)) - candidate_list = get_pledge_list(client_list[0].ppos.getCandidateList) - log.info('candidate list : {}'.format(candidate_list)) - for nodeid in candidate_list: - if nodeid not in verifier_list: - return get_client_by_nodeid(nodeid, client_list) - raise Exception('There is not candidate no verifier node') - - @pytest.mark.P2 - @allure.title('Voted candidate, Declare version') - def test_DE_CA_009_011_033_037_039_041_043_045(self, new_genesis_env, clients_consensus, clients_noconsensus, - all_clients): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.versionProposalVoteDurationSeconds = 2000 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - submitvpandvote(clients_consensus, votingrounds=40) - createstaking(clients_noconsensus) - clients_consensus[0].economic.wait_settlement(clients_consensus[0].node) - client = self.get_candidate_no_verifier(all_clients) - pip = client.pip - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN1, pip.cfg.version1) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN2, pip.cfg.version2) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN3, pip.cfg.version3) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - assert_code(result, 0) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN4, pip.cfg.version4) - assert_code(result, 0) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN6, pip.cfg.version6) - assert_code(result, 0) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN8, pip.cfg.version8) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('Voted candidate, Declare version') - def test_DE_CA_021_026_035_047_049_051_053_055(self, new_genesis_env, clients_consensus, clients_noconsensus, - all_clients): - verison = struct.pack('>I', clients_consensus[0].pip.chain_version) - if verison[3] != 0: - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.versionProposalVoteDurationSeconds = 2000 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - submitvpandvote(clients_consensus, votingrounds=40, version=clients_noconsensus[0].pip.cfg.version8) - createstaking(clients_noconsensus) - clients_consensus[0].economic.wait_settlement(clients_consensus[0].node) - client = self.get_candidate_no_verifier(all_clients) - pip = client.pip - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN2, pip.cfg.version2) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.chain_version) - assert_code(result, 302024) - - result = wrong_verison_declare(pip, pip.cfg.version5) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN1, pip.cfg.version1) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN3, pip.cfg.version3) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN4, pip.cfg.version4) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN6, pip.cfg.version6) - assert_code(result, 302028) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN8, pip.cfg.version8) - assert_code(result, 0) - - result = wrong_verisonsign_declare(pip, clients_noconsensus[0].pip) - assert_code(result, 302024) - - -@pytest.mark.P2 -@allure.title('Voted verifier, replace the platon bin and declare version') -def test_DE_VE_074(no_vp_proposal, client_verifier): - pip = client_verifier.pip - submitvpandvote([client_verifier], votingrounds=2) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get proposal information : {}'.format(proposalinfo)) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 3) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 0) diff --git a/cases/tests/govern/test_edit_nodeinfo.py b/cases/tests/govern/test_edit_nodeinfo.py deleted file mode 100644 index 7abf7297c9..0000000000 --- a/cases/tests/govern/test_edit_nodeinfo.py +++ /dev/null @@ -1,209 +0,0 @@ -import pytest, time -from tests.conftest import param_governance_verify_before_endblock -from tests.lib.client import get_client_by_nodeid -from tests.lib.utils import get_governable_parameter_value, assert_code, wait_block_number -from common.log import log -from dacite import from_dict -from tests.lib.genesis import Genesis - -@pytest.mark.P2 -def test_UP_RE_005_012_013(new_genesis_env, client_noconsensus, client_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.rewardPerChangeInterval = 2 - genesis.economicModel.staking.rewardPerMaxChangeRange = 10 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = client_noconsensus - client_2 = client_consensus - address, _ = client.economic.account.generate_account(client.node.web3, 10**18*10000000) - result = client.staking.create_staking(0, address, address, reward_per=100) - log.info('nodeid {} staking result : {}'.format(client.node.node_id, result)) - assert_code(result, 0) - result = client_2.staking.edit_candidate(client_2.node.staking_address, address, reward_per=1) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301008) - - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=101) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301008) - - client.economic.wait_settlement(client.node, 1) - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=109) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - result = client_2.staking.edit_candidate(client_2.node.staking_address, address, reward_per=9) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - - client.economic.wait_settlement(client.node, 1) - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=100) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - result = client_2.staking.edit_candidate(client_2.node.staking_address, address, reward_per=0) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - -@pytest.mark.P2 -def test_UP_RE_002_004(new_genesis_env, clients_consensus, client_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.rewardPerChangeInterval = 2 - genesis.economicModel.staking.rewardPerMaxChangeRange = 10 - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = client_noconsensus - client_2 = clients_consensus[0] - address, _ = client.economic.account.generate_account(client.node.web3, 10**18*10000000) - result = client.staking.create_staking(0, address, address, reward_per=100) - log.info('nodeid {} staking result : {}'.format(client.node.node_id, result)) - assert_code(result, 0) - result = client_2.staking.edit_candidate(client_2.node.staking_address, address, reward_per=0) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - - param_governance_verify_before_endblock(client_2, 'staking', 'rewardPerMaxChangeRange', '11') - client_2.economic.wait_settlement(client_2.node, 1) - assert '11' == get_governable_parameter_value(client_2, 'rewardPerMaxChangeRange') - result = client_2.staking.edit_candidate(client_2.node.staking_address, address, reward_per=12) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301009) - - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=88) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301009) - - result = client_2.staking.edit_candidate(client_2.node.staking_address, address, reward_per=11) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=89) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - - param_governance_verify_before_endblock(client_2, 'staking', 'rewardPerMaxChangeRange', '10') - client_2.economic.wait_settlement(client_2.node, 1) - assert '10' == get_governable_parameter_value(client_2, 'rewardPerMaxChangeRange') - result = client_2.staking.edit_candidate(client_2.node.staking_address, address, reward_per=22) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301009) - - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=78) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301009) - - result = client_2.staking.edit_candidate(client_2.node.staking_address, address, reward_per=21) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=79) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - -@pytest.mark.P2 -def test_UP_RE_007_009(new_genesis_env, client_noconsensus, client_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.rewardPerChangeInterval = 2 - genesis.economicModel.staking.rewardPerMaxChangeRange = 10 - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = client_noconsensus - client_2 = client_consensus - address, _ = client.economic.account.generate_account(client.node.web3, 10**18*10000000) - result = client.staking.create_staking(0, address, address, reward_per=100) - log.info('nodeid {} staking result : {}'.format(client.node.node_id, result)) - assert_code(result, 0) - - result = client_2.staking.edit_candidate(client_2.node.staking_address, address, reward_per=2) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301008) - - param_governance_verify_before_endblock(client_2, 'staking', 'rewardPerChangeInterval', '3') - client_2.economic.wait_settlement(client_2.node) - assert 3 == int(get_governable_parameter_value(client_2, 'rewardPerChangeInterval')) - - result = client_2.staking.edit_candidate(client_2.node.staking_address, address, reward_per=2) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301008) - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=99) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301008) - client_2.economic.wait_settlement(client_2.node) - result = client_2.staking.edit_candidate(client_2.node.staking_address, address, reward_per=2) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=99) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301008) - - client.economic.wait_settlement(client.node) - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=99) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - - param_governance_verify_before_endblock(client_2, 'staking', 'rewardPerChangeInterval', '2') - client_2.economic.wait_settlement(client_2.node) - assert 2 == int(get_governable_parameter_value(client_2, 'rewardPerChangeInterval')) - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=98) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301008) - - client.economic.wait_settlement(client.node) - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=98) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - -@pytest.mark.P2 -def test_UP_RE_001_003_006_008_010_UP_RE_011(new_genesis_env, client_noconsensus, client_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.rewardPerChangeInterval = 2 - genesis.economicModel.staking.rewardPerMaxChangeRange = 10 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = client_noconsensus - client_2 = client_consensus - address, _ = client.economic.account.generate_account(client.node.web3, 10**18*10000000) - result = client.staking.create_staking(0, address, address, reward_per=100) - log.info('nodeid {} staking result : {}'.format(client.node.node_id, result)) - assert_code(result, 0) - - wait_block_number(client.node, 2 * client.economic.settlement_size) - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=111) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301009) - - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=89) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301009) - - address, _ = client.economic.account.generate_account(client.node.web3, 10**18*10) - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=110) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - - wait_block_number(client.node, 2 * client.economic.settlement_size) - address, _ = client.economic.account.generate_account(client.node.web3, 10**18*10) - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=100) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - - wait_block_number(client.node, 2*client.economic.settlement_size - 10) - result = client.staking.edit_candidate(client.node.staking_address, address, reward_per=111) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301008) - - log.info('node {} candidate info {}'.format(client_2.node.node_id, client_2.ppos.getCandidateInfo( - client_2.node.node_id))) - - result = client_2.staking.edit_candidate(client_2.node.staking_address, address, reward_per=10) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 0) - - result = client_2.staking.edit_candidate(client_2.node.staking_address, address, reward_per=31) - log.info('edit nodeinfo result : {}'.format(result)) - assert_code(result, 301008) - - - - - diff --git a/cases/tests/govern/test_interface.py b/cases/tests/govern/test_interface.py deleted file mode 100644 index 77f28424e5..0000000000 --- a/cases/tests/govern/test_interface.py +++ /dev/null @@ -1,736 +0,0 @@ -from common.log import log -from tests.lib.utils import assert_code, wait_block_number, get_blockhash, get_the_dynamic_parameter_gas_fee -from dacite import from_dict -from tests.lib import Genesis -from common.key import mock_duplicate_sign -from tests.govern.test_voting_statistics import submitppandvote, submitcvpandvote, submitvpandvote, submittpandvote, submitcppandvote - -import time -import math -import rlp -import pytest -import allure -from tests.govern.conftest import version_proposal_vote - -cancelby = "0x0000000000000000000000000000000000000000000000000000000000000000" - - -class TestgetProposal: - - @pytest.mark.P0 - @allure.title('Interface getProposal function verification--cancel proposal') - def test_GP_IF_001(self, submit_cancel_param): - pip = submit_cancel_param - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal information : {}'.format(proposalinfo)) - result = pip.pip.getProposal(proposalinfo.get('ProposalID')) - log.info('Interface getProposal result : {}'.format(result)) - assert result.get('Ret').get('Proposer') == pip.node.node_id - assert result.get('Ret').get('ProposalType') == pip.cfg.cancel_proposal - assert result.get('Ret').get('PIPID') == proposalinfo.get('PIPID') - assert result.get('Ret').get('SubmitBlock') == proposalinfo.get('SubmitBlock') - assert result.get('Ret').get('EndVotingBlock') == proposalinfo.get('EndVotingBlock') - - @pytest.mark.P0 - @allure.title('Interface getProposal function verification--parammeter proposal') - def test_GP_IF_002(self, submit_param): - pip = submit_param - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Param proposal information : {}'.format(proposalinfo)) - result = pip.pip.getProposal(proposalinfo.get('ProposalID')) - log.info('Interface getProposal result : {}'.format(result)) - assert result.get('Ret').get('Proposer') == pip.node.node_id - assert result.get('Ret').get('ProposalType') == pip.cfg.param_proposal - assert result.get('Ret').get('PIPID') == proposalinfo.get('PIPID') - assert result.get('Ret').get('SubmitBlock') == proposalinfo.get('SubmitBlock') - assert result.get('Ret').get('EndVotingBlock') == proposalinfo.get('EndVotingBlock') - - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Interface getProposal function verification--version proposal') - def test_PR_IN_001_002(self, no_vp_proposal): - pip = no_vp_proposal - pip_id = str(time.time()) - result = pip.submitVersion(pip.node.node_id, pip_id, pip.cfg.version8, 3, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_version = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Get version proposal information : {}'.format(proposalinfo_version)) - pip_id_cancel = str(time.time()) - result = pip.submitCancel(pip.node.node_id, pip_id_cancel, 1, proposalinfo_version.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip .cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information : {}'.format(proposalinfo_cancel)) - - result_version = pip.pip.getProposal(proposalinfo_version.get('ProposalID')) - log.info('Interface getProposal-version result : {}'.format(result_version)) - - result_cancel = pip.pip.getProposal(proposalinfo_cancel.get('ProposalID')) - log.info('Interface getProposal-cancel result : {}'.format(result_cancel)) - - assert result_version.get('Ret').get('Proposer') == pip.node.node_id - assert result_version.get('Ret').get('ProposalType') == pip.cfg.version_proposal - assert result_version.get('Ret').get('PIPID') == pip_id - assert result_version.get('Ret').get('SubmitBlock') == proposalinfo_version.get('SubmitBlock') - caculated_endvotingblock = math.ceil(proposalinfo_version.get('SubmitBlock') / pip.economic.consensus_size - + 3) * pip.economic.consensus_size - 20 - assert result_version.get('Ret').get('EndVotingBlock') == caculated_endvotingblock - - assert result_cancel.get('Ret').get('Proposer') == pip.node.node_id - assert result_cancel.get('Ret').get('ProposalType') == pip.cfg.cancel_proposal - assert result_cancel.get('Ret').get('PIPID') == pip_id_cancel - assert result_cancel.get('Ret').get('SubmitBlock') == proposalinfo_cancel.get('SubmitBlock') - caculated_endvotingblock = math.ceil(proposalinfo_cancel.get('SubmitBlock') / pip.economic.consensus_size) * \ - pip.economic.consensus_size + 20 - assert result_cancel.get('Ret').get('EndVotingBlock') == caculated_endvotingblock - - @pytest.mark.P0 - @allure.title('Interface getProposal function verification--text proposal') - def test_PR_IN_003(self, client_verifier): - pip = client_verifier.pip - pip_id = str(time.time()) - result = pip.submitText(pip.node.node_id, pip_id, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information : {}'.format(proposalinfo_text)) - - result_text = pip.pip.getProposal(proposalinfo_text.get('ProposalID')) - log.info('Interface getProposal-text result : {}'.format(result_text)) - - assert result_text.get('Ret').get('Proposer') == pip.node.node_id - assert result_text.get('Ret').get('ProposalType') == pip.cfg.text_proposal - assert result_text.get('Ret').get('PIPID') == pip_id - assert result_text.get('Ret').get('SubmitBlock') == proposalinfo_text.get('SubmitBlock') - log.info(pip.economic.tp_vote_settlement_wheel) - caculated_endvotingblock = math.ceil(proposalinfo_text.get('SubmitBlock') / pip.economic.consensus_size - + pip.economic.tp_vote_settlement_wheel) * pip.economic.consensus_size - 20 - assert result_text.get('Ret').get('EndVotingBlock') == caculated_endvotingblock - - @pytest.mark.P1 - @allure.title('Interface getProposal function verification--ineffective proposal id') - def test_PR_IN_004(self, client_noconsensus): - pip = client_noconsensus.pip - result = pip.pip.getProposal('0xa89162be0bd0d081c50a5160f412c4926b3ae9ea96cf792935564357ddd11111') - log.info('Interface getProposal-version result : {}'.format(result)) - assert_code(result, 302006) - - -class TestgetTallyResult: - @pytest.mark.P0 - @allure.title('Interface getTallyResult function verification--cancel version proposal') - def test_TR_IN_002_TR_IN_003(self, no_vp_proposal, clients_verifier): - pip = no_vp_proposal - submitcvpandvote(clients_verifier, 1, 1, 1, 2) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_version = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Version proposal information {}'.format(proposalinfo_version)) - wait_block_number(pip.node, proposalinfo_version.get('EndVotingBlock')) - assert pip.get_canceledby_of_proposal(proposalinfo_cancel.get('ProposalID')) == cancelby - assert pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')) == 2 - assert pip.get_yeas_of_proposal(proposalinfo_cancel.get('ProposalID')) == 3 - assert pip.get_nays_of_proposal(proposalinfo_cancel.get('ProposalID')) == 1 - assert pip.get_abstentions_of_proposal(proposalinfo_cancel.get('ProposalID')) == 0 - assert pip.get_accu_verifiers_of_proposal(proposalinfo_cancel.get('ProposalID')) == len(clients_verifier) - - assert pip.get_canceledby_of_proposal(proposalinfo_version.get('ProposalID')) == proposalinfo_cancel.get('ProposalID') - assert pip.get_status_of_proposal(proposalinfo_version.get('ProposalID')) == 6 - assert pip.get_yeas_of_proposal(proposalinfo_version.get('ProposalID')) == 0 - assert pip.get_nays_of_proposal(proposalinfo_version.get('ProposalID')) == 0 - assert pip.get_abstentions_of_proposal(proposalinfo_version.get('ProposalID')) == 0 - assert pip.get_accu_verifiers_of_proposal(proposalinfo_version.get('ProposalID')) == len(clients_verifier) - - @pytest.mark.P0 - @pytest.mark.compatibility - @allure.title('Interface getTallyResult function verification--cancel version proposal') - def test_TR_IN_001(self, no_vp_proposal, clients_verifier): - pip = no_vp_proposal - submitcvpandvote(clients_verifier, 1, 2, 3, 3) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_version = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Version proposal information {}'.format(proposalinfo_version)) - wait_block_number(pip.node, proposalinfo_version.get('EndVotingBlock')) - assert pip.get_canceledby_of_proposal(proposalinfo_cancel.get('ProposalID')) == cancelby - assert pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')) == 3 - assert pip.get_yeas_of_proposal(proposalinfo_cancel.get('ProposalID')) == 1 - assert pip.get_nays_of_proposal(proposalinfo_cancel.get('ProposalID')) == 1 - assert pip.get_abstentions_of_proposal(proposalinfo_cancel.get('ProposalID')) == 2 - assert pip.get_accu_verifiers_of_proposal(proposalinfo_cancel.get('ProposalID')) == len(clients_verifier) - - assert pip.get_canceledby_of_proposal(proposalinfo_version.get('ProposalID')) == cancelby - assert pip.get_status_of_proposal(proposalinfo_version.get('ProposalID')) == 3 - assert pip.get_yeas_of_proposal(proposalinfo_version.get('ProposalID')) == 0 - assert pip.get_nays_of_proposal(proposalinfo_version.get('ProposalID')) == 0 - assert pip.get_abstentions_of_proposal(proposalinfo_version.get('ProposalID')) == 0 - assert pip.get_accu_verifiers_of_proposal(proposalinfo_version.get('ProposalID')) == len(clients_verifier) - - @pytest.mark.P0 - @allure.title('Interface getTallyResult function verification--parammeter proposal') - def test_TR_IN_010_005(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - submitppandvote(clients_consensus[0:-1], 1, 2, 3) - proposalinfo = clients_consensus[0].pip.get_effect_proposal_info_of_vote(clients_consensus[0].pip.cfg.param_proposal) - log.info('Param proposal information {}'.format(proposalinfo)) - log.info('listparam {}'.format(clients_consensus[0].pip.pip.listGovernParam())) - result = pip.pip.getTallyResult(proposalinfo.get('ProposalID')) - log.info('Interface getTallyResult info : {}'.format(result)) - assert_code(result, 302030) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - - assert pip.get_canceledby_of_proposal(proposalinfo.get('ProposalID')) == cancelby - assert pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 3 - assert pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 1 - assert pip.get_nays_of_proposal(proposalinfo.get('ProposalID')) == 1 - assert pip.get_abstentions_of_proposal(proposalinfo.get('ProposalID')) == 1 - assert pip.get_accu_verifiers_of_proposal(proposalinfo.get('ProposalID')) == len(clients_consensus) - - @pytest.mark.P0 - @allure.title('Interface getTallyResult function verification--cancel parammeter proposal') - def test_TR_IN_011_TR_IN_012(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - submitcppandvote(clients_consensus, [1, 1, 1, 3]) - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Param proposal information {}'.format(proposalinfo_param)) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal information {}'.format(proposalinfo_cancel)) - - wait_block_number(pip.node, proposalinfo_cancel.get('EndVotingBlock')) - - assert pip.get_canceledby_of_proposal(proposalinfo_cancel.get('ProposalID')) == cancelby - assert pip.get_canceledby_of_proposal(proposalinfo_param.get('ProposalID')) == proposalinfo_cancel.get('ProposalID') - - assert pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')) == 2 - assert pip.get_yeas_of_proposal(proposalinfo_cancel.get('ProposalID')) == 3 - assert pip.get_nays_of_proposal(proposalinfo_cancel.get('ProposalID')) == 0 - assert pip.get_abstentions_of_proposal(proposalinfo_cancel.get('ProposalID')) == 1 - assert pip.get_accu_verifiers_of_proposal(proposalinfo_cancel.get('ProposalID')) == len(clients_consensus) - - assert pip.get_status_of_proposal(proposalinfo_param.get('ProposalID')) == 6 - assert pip.get_yeas_of_proposal(proposalinfo_param.get('ProposalID')) == 0 - assert pip.get_nays_of_proposal(proposalinfo_param.get('ProposalID')) == 0 - assert pip.get_abstentions_of_proposal(proposalinfo_param.get('ProposalID')) == 0 - assert pip.get_accu_verifiers_of_proposal(proposalinfo_param.get('ProposalID')) == len(clients_consensus) - - @pytest.mark.P1 - @allure.title('Interface getTallyResult function verification--ineffective proposal id') - def test_TR_IN_006(self, client_verifier): - pip = client_verifier.pip - result = pip.pip.getTallyResult('0x9992d1f843fe8f376884d871f87605dda02da0722fd6b350bbf683518f73f111') - log.info('Ineffective proposalID, interface getTallyResult return : {}'.format(result)) - assert_code(result, 302030) - - -class TestgetAccuVerifiersCount: - @pytest.mark.P0 - @allure.title('Interface getTallyResult function verification--ineffective proposal id') - def test_AC_IN_018_to_025(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - pip_test = clients_consensus[-1].pip - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '999', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node submit param proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information : {}'.format(proposalinfo_param)) - result = pip.submitCancel(pip.node.node_id, str(time.time()), 3, proposalinfo_param.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node submit cancel proposal result : {}'.format(result)) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information : {}'.format(proposalinfo_cancel)) - for index in range(3): - client = clients_consensus[index] - result = client.pip.vote(client.node.node_id, proposalinfo_param.get('ProposalID'), index + 1, - client.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} vote param proposal result : {}'.format(client.node.node_id, result)) - assert_code(result, 0) - result = client.pip.vote(client.node.node_id, proposalinfo_cancel.get('ProposalID'), index + 1, - client.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} vote cancel proposal result : {}'.format(client.node.node_id, result)) - assert_code(result, 0) - assert pip.get_accuverifiers_count(proposalinfo_param.get('ProposalID')) == [4, 1, 1, 1] - assert pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 1, 1] - log.info('Stop the node {}'.format(pip.node.node_id)) - pip.node.stop() - pip_test.economic.wait_consensus(pip_test.node, 2) - assert pip_test.get_accuverifiers_count(proposalinfo_param.get('ProposalID')) == [4, 1, 1, 1] - assert pip_test.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 1, 1] - - report_information = mock_duplicate_sign(1, clients_consensus[1].node.nodekey, - clients_consensus[1].node.blsprikey, 41) - log.info("Report information: {}".format(report_information)) - address, _ = pip_test.economic.account.generate_account(pip_test.node.web3, 10 ** 18 * 1000) - result = clients_consensus[-1].duplicatesign.reportDuplicateSign(1, report_information, address) - log.info('Node duplicate block result : {}'.format(result)) - assert_code(result, 0) - time.sleep(2) - assert pip_test.get_accuverifiers_count(proposalinfo_param.get('ProposalID')) == [4, 1, 0, 1] - assert pip_test.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 0, 1] - - report_information = mock_duplicate_sign(2, clients_consensus[2].node.nodekey, - clients_consensus[2].node.blsprikey, 41) - log.info("Report information: {}".format(report_information)) - address, _ = pip_test.economic.account.generate_account(pip_test.node.web3, 10 ** 18 * 1000) - result = clients_consensus[-1].duplicatesign.reportDuplicateSign(2, report_information, address) - log.info('Node duplicate block result : {}'.format(result)) - assert_code(result, 0) - assert pip_test.get_accuverifiers_count(proposalinfo_param.get('ProposalID')) == [4, 1, 0, 0] - assert pip_test.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 0, 0] - - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Interface getAccuVerifiersCount function verification') - def test_AC_IN_001_002_004_to_006_012_to_014(self, new_genesis_env, clients_consensus): - # genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - # genesis.economicModel.slashing.maxEvidenceAge = 1 - # new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[-1].pip - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 12, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_version = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo_version)) - - result = pip.submitCancel(pip.node.node_id, str(time.time()), 10, proposalinfo_version.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information : {}'.format(proposalinfo_version)) - - for index in range(3): - log.info(f'index == {index}') - client = clients_consensus[index] - result = version_proposal_vote(client.pip) - assert_code(result, 0) - result = client.pip.vote(client.node.node_id, proposalinfo_cancel.get('ProposalID'), index + 1, - client.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} vote cancel proposal result : {}'.format(client.node.node_id, result)) - assert_code(result, 0) - log.info(f'blocknumber0000 == {pip.node.block_number}') - log.info(f'getCandidateList == {pip.node.ppos.getCandidateList()}') - assert pip.get_accuverifiers_count(proposalinfo_version.get('ProposalID')) == [4, 3, 0, 0] - assert pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 1, 1] - log.info('Stop the node {}'.format(clients_consensus[0].node.node_id)) - clients_consensus[0].node.stop() - pip.economic.wait_consensus(pip.node, 2) - log.info(pip.node.debug.getWaitSlashingNodeList()) - log.info(pip.pip.listGovernParam()) - log.info(clients_consensus[1].ppos.getCandidateInfo(pip.node.node_id, pip.node.staking_address)) - assert pip.get_accuverifiers_count(proposalinfo_version.get('ProposalID')) == [4, 3, 0, 0] - assert pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 1, 1] - - log.info(f'blocknumber1111 == {pip.node.block_number}') - report_information = mock_duplicate_sign(1, clients_consensus[1].node.nodekey, - clients_consensus[1].node.blsprikey, 41) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10 ** 18 * 1000) - result = clients_consensus[-1].duplicatesign.reportDuplicateSign(1, report_information, address) - log.info('Node duplicate block result : {}'.format(result)) - assert_code(result, 0) - log.info(f'blocknumber2222 == {pip.node.block_number}') - assert pip.get_accuverifiers_count(proposalinfo_version.get('ProposalID')) == [4, 2, 0, 0] - assert pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 0, 1] - - report_information = mock_duplicate_sign(2, clients_consensus[2].node.nodekey, - clients_consensus[2].node.blsprikey, 41) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10 ** 18 * 1000) - result = clients_consensus[-1].duplicatesign.reportDuplicateSign(2, report_information, address) - log.info('Node duplicate block result : {}'.format(result)) - assert_code(result, 0) - assert pip.get_accuverifiers_count(proposalinfo_version.get('ProposalID')) == [4, 1, 0, 0] - assert pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 0, 0] - - @pytest.mark.P0 - @allure.title('Interface getAccuVerifiersCount function verification') - def test_AC_IN_003_008_010(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.textProposalVoteDurationSeconds = 120 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[-1].pip - submittpandvote(clients_consensus, 1, 2, 3, 1) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information : {}'.format(proposalinfo)) - assert pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 2, 1, 1] - log.info('Stop the node {}'.format(clients_consensus[0].node.node_id)) - clients_consensus[0].node.stop() - pip.economic.wait_consensus(pip.node, 2) - assert pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 2, 1, 1] - - report_information = mock_duplicate_sign(1, clients_consensus[1].node.nodekey, - clients_consensus[1].node.blsprikey, 41) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10 ** 18 * 1000) - result = clients_consensus[-1].duplicatesign.reportDuplicateSign(1, report_information, address) - log.info('Node duplicate block result : {}'.format(result)) - assert_code(result, 0) - assert pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 2, 0, 1] - - report_information = mock_duplicate_sign(2, clients_consensus[2].node.nodekey, - clients_consensus[2].node.blsprikey, 41) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10 ** 18 * 1000) - result = clients_consensus[-1].duplicatesign.reportDuplicateSign(2, report_information, address) - log.info('Node duplicate block result : {}'.format(result)) - assert_code(result, 0) - assert pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 2, 0, 0] - - @pytest.mark.P2 - @allure.title('Interface getAccuVerifiersCount function verification') - def test_AC_IN_016_to_018(self, client_verifier): - pip = client_verifier.pip - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information : {}'.format(proposalinfo)) - result = pip.pip.getAccuVerifiersCount('0x0c04f578466ead2208dbb15b927ecb27041881e8c16c17cd0db6b3df422e1111', - block_hash=get_blockhash(pip.node)) - log.info('Interface getAccuVerifiersCount result : {}'.format(result)) - assert_code(result, 302006) - log.info('{}'.format(get_blockhash(pip.node))) - - result = pip.pip.getAccuVerifiersCount(proposalinfo.get('ProposalID'), block_hash='') - log.info('Interface getAccuVerifiersCount result : {}'.format(result)) - assert_code(result, 3) - - result = pip.pip.getAccuVerifiersCount(proposalinfo.get('ProposalID'), - block_hash='0x5941605fe43ab32fbaf9c6e08dc0970eae50efb7da4248a9a8941f0e50711111') - log.info('Interface getAccuVerifiersCount result : {}'.format(result)) - assert_code(result, 0) - - -class TestListGovernParam: - def get_govern_param(self, client, module=None): - result = client.pip.pip.listGovernParam(module) - log.info('Interface listGovernParam result {}'.format(result)) - assert_code(result, 0) - resultinfo = result.get('Ret') - module = [] - name = [] - for param in resultinfo: - module.append(param.get('ParamItem').get('Module')) - name.append(param.get('ParamItem').get('Name')) - return name, module - - @pytest.mark.P0 - @allure.title('Interface listGovernParam function verification') - def test_IN_LG_001(self, client_noconsensus): - name, module = self.get_govern_param(client_noconsensus) - assert set(name) == {'maxValidators', 'unStakeFreezeDuration', 'operatingThreshold', 'slashBlocksReward', - 'stakeThreshold', 'maxBlockGasLimit', 'duplicateSignReportReward', 'maxEvidenceAge', - 'slashFractionDuplicateSign', 'zeroProduceCumulativeTime', 'zeroProduceNumberThreshold', - 'rewardPerMaxChangeRange', 'rewardPerChangeInterval', 'increaseIssuanceRatio', 'zeroProduceFreezeDuration'} - assert set(module) == {'block', 'slashing', 'staking', 'reward'} - - @pytest.mark.P2 - @allure.title('Interface listGovernParam function verification') - def test_IN_LG_002(self, client_noconsensus): - name, module = self.get_govern_param(client_noconsensus, 'staking') - assert set(name) == {'maxValidators', 'unStakeFreezeDuration', 'operatingThreshold', 'stakeThreshold', - 'rewardPerMaxChangeRange', 'rewardPerChangeInterval'} - assert set(module) == {'staking'} - - @pytest.mark.P2 - @allure.title('Interface listGovernParam function verification') - def test_IN_LG_003(self, client_noconsensus): - name, module = self.get_govern_param(client_noconsensus, 'slashing') - assert set(name) == {'slashBlocksReward', 'duplicateSignReportReward', 'maxEvidenceAge', - 'slashFractionDuplicateSign', 'zeroProduceCumulativeTime', 'zeroProduceNumberThreshold', 'zeroProduceFreezeDuration'} - assert set(module) == {'slashing'} - - @pytest.mark.P2 - @allure.title('Interface listGovernParam function verification') - def test_IN_LG_004(self, client_noconsensus): - name, module = self.get_govern_param(client_noconsensus, 'block') - assert set(name) == {'maxBlockGasLimit'} - assert set(module) == {'block'} - - name, module = self.get_govern_param(client_noconsensus, 'reward') - assert set(name) == {'increaseIssuanceRatio'} - assert set(module) == {'reward'} - - - @pytest.mark.P2 - @allure.title('Interface listGovernParam function verification') - def test_IN_LG_005(self, client_noconsensus): - result = client_noconsensus.pip.pip.listGovernParam('txpool') - log.info('Interface listGovernParam result {}'.format(result)) - assert_code(result, 2) - assert result.get('Ret') == "Object not found" - - -class TestGetGovernParam: - @pytest.mark.P0 - @allure.title('Interface getGovernParamValue function verification') - def test_IN_GG_001(self, client_noconsensus): - client_noconsensus.economic.env.deploy_all() - genesis = from_dict(data_class=Genesis, data=client_noconsensus.economic.env.genesis_config) - pip = client_noconsensus.pip.pip - result = pip.getGovernParamValue('slashing', 'slashBlocksReward') - log.info('Interface getGovernParamValue result : {}'.format(result)) - assert genesis.economicModel.slashing.slashBlocksReward == int(result.get('Ret')) - - result = pip.getGovernParamValue('slashing', 'maxEvidenceAge') - log.info('Interface getGovernParamValue result : {}'.format(result)) - assert genesis.economicModel.slashing.maxEvidenceAge == int(result.get('Ret')) - - result = pip.getGovernParamValue('slashing', 'slashFractionDuplicateSign') - log.info('Interface getGovernParamValue result : {}'.format(result)) - assert genesis.economicModel.slashing.slashFractionDuplicateSign == int(result.get('Ret')) - - result = pip.getGovernParamValue('slashing', 'duplicateSignReportReward') - log.info('Interface getGovernParamValue result : {}'.format(result)) - assert genesis.economicModel.slashing.duplicateSignReportReward == int(result.get('Ret')) - - result = pip.getGovernParamValue('slashing', 'zeroProduceFreezeDuration') - log.info('Interface getGovernParamValue result : {}'.format(result)) - assert genesis.economicModel.slashing.zeroProduceFreezeDuration == int(result.get('Ret')) - - result = pip.getGovernParamValue('staking', 'stakeThreshold') - log.info('Interface getGovernParamValue result : {}'.format(result)) - assert genesis.economicModel.staking.stakeThreshold == int(result.get('Ret')) - - result = pip.getGovernParamValue('staking', 'operatingThreshold') - log.info('Interface getGovernParamValue result : {}'.format(result)) - assert genesis.economicModel.staking.operatingThreshold == int(result.get('Ret')) - - result = pip.getGovernParamValue('staking', 'unStakeFreezeDuration') - log.info('Interface getGovernParamValue result : {}'.format(result)) - assert genesis.economicModel.staking.unStakeFreezeDuration == int(result.get('Ret')) - - result = pip.getGovernParamValue('staking', 'maxValidators') - log.info('Interface getGovernParamValue result : {}'.format(result)) - assert genesis.economicModel.staking.maxValidators == int(result.get('Ret')) - - result = pip.getGovernParamValue('block', 'maxBlockGasLimit') - log.info('Interface getGovernParamValue result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P2 - @allure.title('Interface getGovernParamValue function verification') - def test_IN_GG_002(self, client_noconsensus): - pip = client_noconsensus.pip.pip - result = pip.getGovernParamValue('Staking', 'maxValidators') - assert_code(result, 302031) - pip = client_noconsensus.pip.pip - result = pip.getGovernParamValue('Slashing', 'slashBlocksReward') - assert_code(result, 302031) - pip = client_noconsensus.pip.pip - result = pip.getGovernParamValue('Block', 'maxBlockGasLimit') - assert_code(result, 302031) - - @pytest.mark.P2 - @allure.title('Interface getGovernParamValue function verification') - def test_IN_GG_003(self, client_noconsensus): - pip = client_noconsensus.pip.pip - result = pip.getGovernParamValue('staking', 'MaxValidators') - assert_code(result, 302031) - pip = client_noconsensus.pip.pip - result = pip.getGovernParamValue('slashing', 'SlashBlocksReward') - assert_code(result, 302031) - pip = client_noconsensus.pip.pip - result = pip.getGovernParamValue('block', 'MaxValidators') - assert_code(result, 302031) - - -class TestGetActiveVersion: - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Interface getActiveVersion function verification') - def test_AV_IN_001(self, no_vp_proposal): - assert_code(no_vp_proposal.chain_version, no_vp_proposal.cfg.version0) - - @pytest.mark.P0 - @allure.title('Interface getActiveVersion function verification') - def test_AV_IN_002_003(self, clients_verifier): - pip = clients_verifier[0].pip - submitvpandvote(clients_verifier) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Version proposal information : {}'.format(proposalinfo)) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 4) - assert_code(pip.chain_version, pip.cfg.version0) - wait_block_number(pip.node, proposalinfo.get('ActiveBlock')) - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 5) - assert_code(pip.chain_version, pip.cfg.version5) - - -class TestListProposal: - @pytest.mark.P1 - @allure.title('Interface listProposal function verification') - def test_LP_IN_001_002(self, no_vp_proposal): - pip = no_vp_proposal - pip_id = str(time.time()) - result = pip.submitParam(pip.node.node_id, pip_id, 'slashing', 'slashBlocksReward', '456', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information : {}'.format(proposalinfo)) - assert proposalinfo.get('Proposer') == pip.node.node_id - assert proposalinfo.get('ProposalType') == pip.cfg.param_proposal - log.info('{}'.format(pip.economic.pp_vote_settlement_wheel)) - calculated_endvotingblock = math.ceil(proposalinfo.get('SubmitBlock') / pip.economic.settlement_size - + pip.economic.pp_vote_settlement_wheel) * pip.economic.settlement_size - assert proposalinfo.get('EndVotingBlock') == calculated_endvotingblock - - pip_id = str(time.time()) - result = pip.submitCancel(pip.node.node_id, pip_id, 1, proposalinfo.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information : {}'.format(proposalinfo_cancel)) - - assert proposalinfo_cancel.get('Proposer') == pip.node.node_id - assert proposalinfo_cancel.get('ProposalType') == pip.cfg.cancel_proposal - log.info('{}'.format(pip.economic.pp_vote_settlement_wheel)) - calculated_endvotingblock = math.ceil(proposalinfo_cancel.get('SubmitBlock') / pip.economic.consensus_size - + 1) * pip.economic.consensus_size - 20 - assert proposalinfo_cancel.get('EndVotingBlock') == calculated_endvotingblock - - @pytest.mark.P1 - @allure.title('Interface listProposal function verification') - def test_LP_IN_003(self, client_consensus): - client_consensus.economic.env.deploy_all() - result = client_consensus.pip.pip.listProposal() - log.info('There is no proposal, interface listProposal return : {}'.format(result)) - assert_code(result, 2) - assert result.get('Ret') == "Object not found" - - -class TestGasUse: - def get_balance(self, pip): - balance = pip.node.eth.getBalance(pip.node.staking_address) - log.info('address balance : {}'.format(balance)) - return balance - - @pytest.mark.P2 - @allure.title('Verify gas --submittext and vote') - def test_TP_GA_001(self, client_verifier): - pip = client_verifier.pip - pip_id = str(time.time()) - data = rlp.encode([rlp.encode(int(2000)), rlp.encode(bytes.fromhex(pip.node.node_id)), rlp.encode(pip_id)]) - balance_before = self.get_balance(pip) - result = pip.submitText(pip.node.node_id, pip_id, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information : {}'.format(proposalinfo)) - balance_after = self.get_balance(pip) - gas = get_the_dynamic_parameter_gas_fee(data) - log.info('Calculated gas : {}'.format(gas)) - assert_code(balance_before - balance_after, (gas + 350000) * pip.cfg.transaction_cfg.get('gasPrice')) - - proposal_id = proposalinfo.get('ProposalID')[2:] - version_sign = pip.node.program_version_sign[2:] - data = rlp.encode([rlp.encode(int(2003)), rlp.encode(bytes.fromhex(pip.node.node_id)), - rlp.encode(bytes.fromhex(proposal_id)), - rlp.encode(pip.cfg.vote_option_yeas), rlp.encode(int(pip.node.program_version)), - rlp.encode(bytes.fromhex(version_sign))]) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Vote reuslt : {}'.format(result)) - assert_code(result, 0) - balance_after_vote = pip.node.eth.getBalance(pip.node.staking_address) - log.info('After vote text proposal, the address balance : {}'.format(balance_after_vote)) - gas = get_the_dynamic_parameter_gas_fee(data) - log.info('Calculated gas : {}'.format(gas)) - assert_code(balance_after - balance_after_vote, (gas + 32000) * pip.cfg.transaction_cfg.get('gasPrice')) - - @pytest.mark.P2 - @allure.title('Verify gas --submitversion') - def test_VP_GA_001(self, no_vp_proposal): - pip = no_vp_proposal - pip_id = str(time.time()) - balance_before = self.get_balance(pip) - result = pip.submitVersion(pip.node.node_id, pip_id, pip.cfg.version5, 1, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - balance_after = self.get_balance(pip) - data = rlp.encode([rlp.encode(int(2001)), rlp.encode(bytes.fromhex(pip.node.node_id)), rlp.encode(pip_id), - rlp.encode(int(pip.cfg.version5)), rlp.encode(int(1))]) - gas = get_the_dynamic_parameter_gas_fee(data) - log.info('Calculated gas : {}'.format(gas)) - assert_code(balance_before - balance_after, (gas + 480000) * pip.cfg.transaction_cfg.get('gasPrice')) - - @pytest.mark.P2 - @allure.title('Verify gas --submitparam_and_cancel') - def test_PP_GA_001_CP_GA_001(self, no_vp_proposal): - pip = no_vp_proposal - pip_id = str(time.time()) - balance_before = self.get_balance(pip) - result = pip.submitParam(pip.node.node_id, pip_id, 'slashing', 'slashBlocksReward', '123', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfor_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information : {}'.format(proposalinfor_param)) - balance_after = self.get_balance(pip) - data = rlp.encode([rlp.encode(int(2002)), rlp.encode(bytes.fromhex(pip.node.node_id)), - rlp.encode(pip_id), rlp.encode('slashing'), rlp.encode('slashBlocksReward'), - rlp.encode('123')]) - gas = get_the_dynamic_parameter_gas_fee(data) - log.info('Calculated gas : {}'.format(gas)) - assert_code(balance_before - balance_after, (gas + 530000) * pip.cfg.transaction_cfg.get('gasPrice')) - - pip_id = str(time.time()) - result = pip.submitCancel(pip.node.node_id, pip_id, 1, proposalinfor_param.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - assert_code(balance_before - balance_after, (gas + 530000) * pip.cfg.transaction_cfg.get('gasPrice')) - balance_after_cancel = pip.node.eth.getBalance(pip.node.staking_address) - log.info('After submitting cancel proposal, the address balance : {}'.format(balance_after_cancel)) - tobe_canceled_proposal_id = proposalinfor_param.get('ProposalID')[2:] - data = rlp.encode([rlp.encode(int(2005)), rlp.encode(bytes.fromhex(pip.node.node_id)), rlp.encode(pip_id), - rlp.encode(int(1)), rlp.encode(bytes.fromhex(tobe_canceled_proposal_id))]) - gas = get_the_dynamic_parameter_gas_fee(data) - log.info('Calculated gas : {}'.format(gas)) - assert_code(balance_after - balance_after_cancel, (gas + 530000) * pip.cfg.transaction_cfg.get('gasPrice')) - - @pytest.mark.P2 - @allure.title('Verify gas --declare version') - def test_declareversion(self, client_verifier): - pip = client_verifier.pip - balance_before = self.get_balance(pip) - result = pip.declareVersion(pip.node.node_id, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Declare version result : {}'.format(result)) - assert_code(result, 0) - version_sign = pip.node.program_version_sign[2:] - data = rlp.encode([rlp.encode(int(2004)), rlp.encode(bytes.fromhex(pip.node.node_id)), - rlp.encode(int(pip.node.program_version)), rlp.encode(bytes.fromhex(version_sign))]) - gas = get_the_dynamic_parameter_gas_fee(data) - log.info('Calculated gas : {}'.format(gas)) - balance_after = self.get_balance(pip) - assert_code(balance_before - balance_after, (gas + 33000) * pip.cfg.transaction_cfg.get('gasPrice')) - -if __name__ == '__main__': - pytest.main(['./tests/govern/', '-s', '-q', '--alluredir', './report/report']) diff --git a/cases/tests/govern/test_platon_version.py b/cases/tests/govern/test_platon_version.py deleted file mode 100644 index 92070bc44c..0000000000 --- a/cases/tests/govern/test_platon_version.py +++ /dev/null @@ -1,448 +0,0 @@ -from dacite import from_dict -from tests.lib import Genesis -from tests.lib.utils import assert_code, wait_block_number, upload_platon, get_pledge_list -from tests.lib.client import get_client_by_nodeid -import pytest -import time, os -from tests.govern.test_voting_statistics import submitvpandvote -from common.log import log -from hexbytes import HexBytes -from common.connect import connect_web3 - - -class TestPlatonVersion: - @pytest.mark.P2 - def test_VE_DE_001(self, new_genesis_env, client_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.config.genesisVersion = client_noconsensus.pip.cfg.version2 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = client_noconsensus - address, _ = client.economic.account.generate_account(client.node.web3, 10 ** 18 * 10000000) - result = client.staking.create_staking(0, address, address) - assert_code(result, 0) - - @pytest.mark.P2 - def test_VE_DE_002(self, new_genesis_env, client_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.config.genesisVersion = client_noconsensus.pip.cfg.version1 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = client_noconsensus - address, _ = client.economic.account.generate_account(client.node.web3, 10 ** 18 * 10000000) - result = client.staking.create_staking(0, address, address) - assert_code(result, 301005) - - @pytest.mark.P2 - def test_VE_DE_004_VE_DE_011(self, new_genesis_env, client_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.config.genesisVersion = client_noconsensus.pip.cfg.version3 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = client_noconsensus - address, _ = client.economic.account.generate_account(client.node.web3, 10 ** 18 * 10000000) - result = client.staking.create_staking(0, address, address) - assert_code(result, 0) - - @pytest.mark.P2 - def test_VE_DE_005(self, new_genesis_env, client_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.config.genesisVersion = client_noconsensus.pip.cfg.version7 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = client_noconsensus - address, _ = client.economic.account.generate_account(client.node.web3, 10 ** 18 * 10000000) - result = client.staking.create_staking(0, address, address) - assert_code(result, 301004) - - @pytest.mark.P2 - def test_VE_DE_006(self, new_genesis_env, client_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.config.genesisVersion = client_noconsensus.pip.cfg.version8 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = client_noconsensus - address, _ = client.economic.account.generate_account(client.node.web3, 10 ** 18 * 10000000) - result = client.staking.create_staking(0, address, address) - assert_code(result, 301004) - - @pytest.mark.P2 - def test_VE_DE_007(self, new_genesis_env): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.zeroProduceCumulativeTime = 5 - new_genesis_env.set_genesis(genesis.to_dict()) - try: - new_genesis_env.deploy_all() - except Exception as e: - log.info('Deploy failed error measage {}'.format(e.args[0])) - index = e.args[0].find('ZeroProduceCumulativeTime') - assert e.args[0][index:index + 40] == r'ZeroProduceCumulativeTime must be [1, 4]' - - @pytest.mark.P2 - def test_VE_DE_008_VE_DE_009(self, new_genesis_env, client_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.zeroProduceCumulativeTime = 4 - genesis.economicModel.slashing.zeroProduceNumberThreshold = 4 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - time.sleep(3) - assert client_noconsensus.node.block_number > 0 - - @pytest.mark.P2 - def test_VE_DE_008_VE_DE_009(self, new_genesis_env, client_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.zeroProduceCumulativeTime = 4 - genesis.economicModel.slashing.zeroProduceNumberThreshold = 4 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - time.sleep(10) - assert client_noconsensus.node.block_number > 0 - - @pytest.mark.P2 - def test_VE_DE_010(self, new_genesis_env): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.zeroProduceCumulativeTime = 3 - genesis.economicModel.slashing.zeroProduceNumberThreshold = 4 - new_genesis_env.set_genesis(genesis.to_dict()) - try: - new_genesis_env.deploy_all() - except Exception as e: - log.info('Deploy failed error measage {}'.format(e.args[0])) - index = e.args[0].find('ZeroProduceNumberThreshold') - - assert e.args[0][index:index + 41] == r'ZeroProduceNumberThreshold must be [1, 3]' - - @pytest.mark.P2 - def test_VE_DE_010(self, new_genesis_env): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.zeroProduceNumberThreshold = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - try: - new_genesis_env.deploy_all() - except Exception as e: - log.info('Deploy failed error measage {}'.format(e.args[0])) - index = e.args[0].find('ZeroProduceNumberThreshold') - assert e.args[0][index:index + 41] == r'ZeroProduceNumberThreshold must be [1, 1]' - - @pytest.mark.P2 - def test_VE_DE_014_017(self, new_genesis_env): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.rewardPerMaxChangeRange = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - try: - new_genesis_env.deploy_all() - except Exception as e: - log.info('Deploy failed error measage {}'.format(e.args[0])) - index = e.args[0].find('RewardPerMaxChangeRange') - assert e.args[0][index:index + 41] == r'RewardPerMaxChangeRange must be [1, 2000]' - - genesis.economicModel.staking.rewardPerMaxChangeRange = 2001 - new_genesis_env.set_genesis(genesis.to_dict()) - try: - new_genesis_env.deploy_all() - except Exception as e: - log.info('Deploy failed error measage {}'.format(e.args[0])) - index = e.args[0].find('RewardPerMaxChangeRange') - assert e.args[0][index:index + 41] == r'RewardPerMaxChangeRange must be [1, 2000]' - - @pytest.mark.P2 - def test_VE_DE_015_016(self, new_genesis_env, client_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.rewardPerMaxChangeRange = 1 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - time.sleep(5) - assert client_consensus.node.block_number != 0 - - genesis.economicModel.staking.rewardPerMaxChangeRange = 2000 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - time.sleep(5) - assert client_consensus.node.block_number != 0 - - @pytest.mark.P2 - def test_VE_DE_018_021(self, new_genesis_env): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.rewardPerChangeInterval = 1 - new_genesis_env.set_genesis(genesis.to_dict()) - try: - new_genesis_env.deploy_all() - except Exception as e: - log.info(type(e.args[0]), 'Deploy failed error measage {}'.format(e.args[0])) - index = e.args[0].find('RewardPerChangeInterval must be [2, 28]') - assert index != -1 - - genesis.economicModel.staking.rewardPerMaxChangeRange = 2001 - new_genesis_env.set_genesis(genesis.to_dict()) - try: - new_genesis_env.deploy_all() - except Exception as e: - log.info('Deploy failed error measage {}'.format(e.args[0])) - index = e.args[0].find('RewardPerMaxChangeRange must be [1, 2000]') - assert index != -1 - - @pytest.mark.P2 - def test_VE_DE_019_020(self, new_genesis_env, client_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.rewardPerChangeInterval = 2 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - time.sleep(5) - assert client_consensus.node.block_number != 0 - - settlement_count = client_consensus.economic.additional_cycle_time * 60//( - client_consensus.economic.settlement_size * client_consensus.economic.interval) - genesis.economicModel.staking.rewardPerChangeInterval = settlement_count - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - time.sleep(5) - assert client_consensus.node.block_number != 0 - - @pytest.mark.P2 - def test_VE_AD_002(self, new_genesis_env): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.config.genesisVersion = 1796 - file = os.path.join(os.path.dirname(new_genesis_env.cfg.genesis_tmp), 'genesis_tmp2.json') - genesis.to_file(file) - consensus_node = new_genesis_env.get_rand_node() - test_node = new_genesis_env.get_a_normal_node() - test_node.clean() - test_node.deploy_me(file) - test_node.admin.addPeer(consensus_node.enode) - time.sleep(5) - assert test_node.web3.net.peerCount == 0 - assert test_node.block_number == 0 - - @pytest.mark.P2 - def test_VE_AD_001(self, new_genesis_env, all_clients): - consensus_node = new_genesis_env.get_rand_node() - test_node = new_genesis_env.get_a_normal_node() - test_node.clean() - test_node.deploy_me(new_genesis_env.cfg.genesis_tmp) - test_node.admin.addPeer(consensus_node.enode) - time.sleep(5) - assert test_node.web3.net.peerCount > 0, 'Join the chain failed' - assert test_node.block_number > 0, "Non-consensus node sync block failed, block height: {}".format(test_node.block_number) - time.sleep(5) - client = get_client_by_nodeid(test_node.node_id, all_clients) - address, _ = client.economic.account.generate_account(client.node.web3, 10**18 * 10000000) - result = client.staking.create_staking(0, address, address) - assert_code(result, 0) - - @pytest.mark.P2 - def test_VE_AD_004(self, new_genesis_env, clients_consensus): - submitvpandvote(clients_consensus) - proposalinfo = clients_consensus[0].pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo)) - wait_block_number(clients_consensus[0].node, proposalinfo.get('ActiveBlock')) - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.config.genesisVersion = 2049 - file = os.path.join(os.path.dirname(new_genesis_env.cfg.genesis_tmp), 'genesis_tmp2.json') - genesis.to_file(file) - consensus_node = new_genesis_env.get_rand_node() - test_node = new_genesis_env.get_a_normal_node() - test_node.clean() - test_node.deploy_me(file) - test_node.admin.addPeer(consensus_node.enode) - time.sleep(5) - assert test_node.web3.net.peerCount == 0 - assert test_node.block_number == 0 - - @pytest.mark.P2 - def test_VE_AD_003(self, new_genesis_env, clients_consensus, all_clients): - submitvpandvote(clients_consensus) - proposalinfo = clients_consensus[0].pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo)) - wait_block_number(clients_consensus[0].node, proposalinfo.get('ActiveBlock')) - consensus_node = new_genesis_env.get_rand_node() - test_node = new_genesis_env.get_a_normal_node() - test_node.clean() - test_node.deploy_me(new_genesis_env.cfg.genesis_tmp) - test_node.admin.addPeer(consensus_node.enode) - time.sleep(5) - assert test_node.web3.net.peerCount > 0, 'Join the chain failed' - assert test_node.block_number > 0, "Non-consensus node sync block failed, block height: {}".format(test_node.block_number) - time.sleep(5) - client = get_client_by_nodeid(test_node.node_id, all_clients) - address, _ = client.economic.account.generate_account(client.node.web3, 10**18 * 10000000) - result = client.staking.create_staking(0, address, address) - assert_code(result, 301004) - upload_platon(test_node, client.pip.cfg.PLATON_NEW_BIN) - test_node.restart() - result = client.staking.create_staking(0, address, address) - assert_code(result, 0) - -class TestInit: - @pytest.mark.P2 - def test_HA_IN_001(self, new_genesis_env, client_consensus): - blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash : {}'.format(blockhash)) - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.stakeThreshold = 2*client_consensus.economic.genesis.economicModel.staking.stakeThreshold - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - stakingThreshold_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash stakingThreshold_blockhash : {}'.format(stakingThreshold_blockhash)) - assert blockhash != stakingThreshold_blockhash - - genesis.economicModel.staking.operatingThreshold = 2*client_consensus.economic.genesis.economicModel.staking.operatingThreshold - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - operatingThreshold_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash operatingThreshold_blockhash : {}'.format(operatingThreshold_blockhash)) - assert stakingThreshold_blockhash != operatingThreshold_blockhash - - genesis.economicModel.staking.maxValidators = client_consensus.economic.genesis.economicModel.staking.maxValidators + 1 - genesis.economicModel.common.maxEpochMinutes = 4 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - maxValidators_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash maxValidators_blockhash : {}'.format(maxValidators_blockhash)) - assert operatingThreshold_blockhash != maxValidators_blockhash - - genesis.economicModel.staking.unStakeFreezeDuration = 2*client_consensus.economic.genesis.economicModel.staking.unStakeFreezeDuration - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - unStakeFreezeDuration_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash unStakeFreezeDuration_blockhash : {}'.format(unStakeFreezeDuration_blockhash)) - assert maxValidators_blockhash != unStakeFreezeDuration_blockhash - - genesis.economicModel.slashing.slashBlocksReward = 2*client_consensus.economic.genesis.economicModel.slashing.slashBlocksReward - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - slashBlocksReward_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash slashBlocksReward_blockhash : {}'.format(slashBlocksReward_blockhash)) - assert unStakeFreezeDuration_blockhash != slashBlocksReward_blockhash - - genesis.economicModel.slashing.slashFractionDuplicateSign = client_consensus.economic.genesis.economicModel.slashing.slashFractionDuplicateSign - 10 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - slashFractionDuplicateSign_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash slashFractionDuplicateSign_blockhash : {}'.format(slashFractionDuplicateSign_blockhash)) - assert slashBlocksReward_blockhash != slashFractionDuplicateSign_blockhash - - genesis.economicModel.slashing.duplicateSignReportReward = client_consensus.economic.genesis.economicModel.slashing.duplicateSignReportReward + 10 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - duplicateSignReportReward_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash duplicateSignReportReward_blockhash : {}'.format(duplicateSignReportReward_blockhash)) - assert slashFractionDuplicateSign_blockhash != duplicateSignReportReward_blockhash - - genesis.economicModel.slashing.maxEvidenceAge = client_consensus.economic.genesis.economicModel.slashing.maxEvidenceAge + 1 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - maxEvidenceAge_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash maxEvidenceAge_blockhash : {}'.format(maxEvidenceAge_blockhash)) - assert duplicateSignReportReward_blockhash != maxEvidenceAge_blockhash - - genesis.gasLimit = str(int(client_consensus.economic.genesis.gasLimit) + 100) - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - maxBlockGasLimit_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash maxBlockGasLimit_blockhash : {}'.format(maxBlockGasLimit_blockhash)) - assert maxEvidenceAge_blockhash != maxBlockGasLimit_blockhash - - genesis.economicModel.gov.versionProposalVoteDurationSeconds = genesis.economicModel.gov.versionProposalVoteDurationSeconds + 100 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - versionProposalVoteDurationSeconds_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash versionProposalVoteDurationSeconds_blockhash : {}'.format( - versionProposalVoteDurationSeconds_blockhash)) - assert maxBlockGasLimit_blockhash != versionProposalVoteDurationSeconds_blockhash - - genesis.economicModel.gov.versionProposalSupportRate = genesis.economicModel.gov.versionProposalSupportRate + 100 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - versionProposalSupportRate_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash versionProposalSupportRate_blockhash : {}'.format( - versionProposalSupportRate_blockhash)) - assert versionProposalVoteDurationSeconds_blockhash != versionProposalSupportRate_blockhash - - genesis.economicModel.gov.textProposalVoteDurationSeconds = genesis.economicModel.gov.textProposalVoteDurationSeconds + 100 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - textProposalVoteDurationSeconds_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash textProposalVoteDurationSeconds_blockhash : {}'.format( - textProposalVoteDurationSeconds_blockhash)) - assert versionProposalSupportRate_blockhash != textProposalVoteDurationSeconds_blockhash - - genesis.economicModel.gov.textProposalVoteRate = genesis.economicModel.gov.textProposalVoteRate + 100 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - textProposalVoteRate_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash textProposalVoteRate_blockhash : {}'.format( - textProposalVoteRate_blockhash)) - assert textProposalVoteDurationSeconds_blockhash != textProposalVoteRate_blockhash - - genesis.economicModel.gov.textProposalSupportRate = genesis.economicModel.gov.textProposalSupportRate + 100 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - textProposalSupportRate_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash textProposalSupportRate_blockhash : {}'.format( - textProposalSupportRate_blockhash)) - assert textProposalVoteRate_blockhash != textProposalSupportRate_blockhash - - genesis.economicModel.gov.cancelProposalVoteRate = genesis.economicModel.gov.cancelProposalVoteRate + 100 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - cancelProposalVoteRate_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash cancelProposalVoteRate_blockhash : {}'.format( - cancelProposalVoteRate_blockhash)) - assert textProposalSupportRate_blockhash != cancelProposalVoteRate_blockhash - - genesis.economicModel.gov.cancelProposalSupportRate = genesis.economicModel.gov.cancelProposalSupportRate + 100 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - cancelProposalSupportRate_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash cancelProposalSupportRate_blockhash : {}'.format( - cancelProposalSupportRate_blockhash)) - assert cancelProposalVoteRate_blockhash != cancelProposalSupportRate_blockhash - - genesis.economicModel.gov.paramProposalVoteDurationSeconds = genesis.economicModel.gov.paramProposalVoteDurationSeconds + 100 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - paramProposalVoteDurationSeconds_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash paramProposalVoteDurationSeconds_blockhash : {}'.format( - paramProposalVoteDurationSeconds_blockhash)) - assert cancelProposalSupportRate_blockhash != paramProposalVoteDurationSeconds_blockhash - - genesis.economicModel.gov.paramProposalVoteRate = genesis.economicModel.gov.paramProposalVoteRate + 100 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - paramProposalVoteRate_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash paramProposalVoteRate_blockhash : {}'.format( - paramProposalVoteRate_blockhash)) - assert paramProposalVoteDurationSeconds_blockhash != paramProposalVoteRate_blockhash - - genesis.economicModel.gov.paramProposalSupportRate = genesis.economicModel.gov.paramProposalSupportRate + 100 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - paramProposalSupportRate_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash paramProposalSupportRate_blockhash : {}'.format( - paramProposalSupportRate_blockhash)) - assert paramProposalVoteRate_blockhash != paramProposalSupportRate_blockhash - - genesis.economicModel.reward.newBlockRate = genesis.economicModel.reward.newBlockRate + 1 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - newBlockRate_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - log.info('init block hash newBlockRate_blockhash : {}'.format( - newBlockRate_blockhash)) - assert paramProposalSupportRate_blockhash != newBlockRate_blockhash - - # genesis.config.chainId = genesis.config.chainId + 1 - # new_genesis_env.set_genesis(genesis.to_dict()) - # new_genesis_env.deploy_all() - # chainId_blockhash = HexBytes(client_consensus.node.eth.getBlock(0).get('hash')).hex() - # log.info('init block hash chainId_blockhash : {}'.format( - # chainId_blockhash)) - # assert newBlockRate_blockhash == chainId_blockhash - - - - - - - - - diff --git a/cases/tests/govern/test_slashing.py b/cases/tests/govern/test_slashing.py deleted file mode 100644 index 3936513f9f..0000000000 --- a/cases/tests/govern/test_slashing.py +++ /dev/null @@ -1,503 +0,0 @@ -import time -from typing import List -import pytest -from common.log import log -from tests.lib import check_node_in_list, upload_platon, wait_block_number -from tests.lib.genesis import to_genesis -from tests.ppos.test_general_punishment import verify_low_block_rate_penalty, get_out_block_penalty_parameters -from tests.lib.client import Client -from tests.lib.config import PipConfig - - -@pytest.fixture() -def verifiers(clients_consensus, new_genesis_env): - yield clients_consensus - - -def get_pips(clients: List[Client]): - return [c.pip for c in clients] - - -def version_proposal(pip, to_version, voting_rounds): - result = pip.submitVersion(pip.node.node_id, str(time.time()), to_version, voting_rounds, - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('submit version proposal result : {}'.format(result)) - return get_proposal_result(pip, pip.cfg.version_proposal, result) - - -def param_proposal(pip, module, name, value): - result = pip.submitParam(pip.node.node_id, str(time.time()), module, name, value, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('submit param proposal result : {}'.format(result)) - return get_proposal_result(pip, pip.cfg.param_proposal, result) - - -def text_proposal(pip): - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('submit text proposal result:'.format(result)) - return get_proposal_result(pip, pip.cfg.text_proposal, result) - - -def cancel_proposal(pip, pip_id, voting_rounds): - result = pip.submitCancel(pip.node.node_id, str(time.time()), voting_rounds, pip_id, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('submit cancel proposal result : {}'.format(result)) - return get_proposal_result(pip, pip.cfg.cancel_proposal, result) - - -def get_proposal_result(pip, proposal_type, code): - if code == 0: - pip_info = pip.get_effect_proposal_info_of_vote(proposal_type) - log.info(f"proposal id is {pip_info['ProposalID']}") - return pip_info['ProposalID'] - log.info(f'proposal return an exception code {code}') - return code - - -def vote(pip, pip_id, vote_option=PipConfig.vote_option_yeas): - result = pip.vote(pip.node.node_id, pip_id, vote_option, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info(f'Node {pip.node.node_id} vote param proposal result {result}') - return result - - -def votes(pip_id, pips, vote_options): - assert len(pips) == len(vote_options) - for pip, vote_option in zip(pips, vote_options): - assert vote(pip, pip_id, vote_option) == 0 - return True - - -def version_declare(pip): - version = pip.node.program_version - version_sign = pip.node.program_version_sign - result = pip.declareVersion(pip.node.node_id, pip.node.staking_address, version, version_sign, - transaction_cfg=pip.cfg.transaction_cfg) - log.info(f'Node {pip.node.node_id} declare version result {result}') - return result - - -def wait_proposal_active(pip, pip_id): - res = pip.pip.getProposal(pip_id) - end_block = res['Ret']['EndVotingBlock'] - end_block = pip.economic.get_consensus_switchpoint(end_block) - log.info(f'wait proposal active block : {end_block}') - wait_block_number(pip.node, end_block) - return - - -def make_0mb_slash(slash_client, check_client): - """ - 构造零出块处罚场景 - """ - slash_node = slash_client.node - pledge_amount, block_reward, slash_blocks = get_out_block_penalty_parameters(slash_client, slash_node, 'Released') - log.info(f'slashing param : pledge_amount ({pledge_amount}), block_reward ({block_reward}), slash_blocks ({slash_blocks})') - log.info("make zero produce block") - start_num, end_num = verify_low_block_rate_penalty(slash_client, check_client, block_reward, slash_blocks, pledge_amount, 'Released') - log.info('check Verifier Lists') - assert check_node_in_list(slash_node.node_id, check_client.ppos.getCandidateList) is False - assert check_node_in_list(slash_node.node_id, check_client.ppos.getVerifierList) is False - assert check_node_in_list(slash_node.node_id, check_client.ppos.getValidatorList) is False - slash_client.node.start() - return start_num, end_num - - -class TestSlashing: - - @pytest.mark.P1 - def test_0mb_freeze_after_version_vote(self, verifiers): - """ - @describe: 版本升级提案投票后,节点零出块冻结,投票有效,提案可正常生效 - @step: - - 1. 提交版本提案并进行投票 - - 2. 停止节点,等待节点被零出块处罚 - - 3. 检查提案和投票信息是否正确 - @expect: - - 1. 节点被处罚后,投票有效,累积验证人含被处罚节点 - - 2. 节点被处罚后,提案可正常生效 - - 3. 所有相关查询接口,返回提案信息正确 - """ - # step1:提交版本提案并进行投票 - pips = get_pips(verifiers) - pip = pips[0] - pip_id = version_proposal(pip, pip.cfg.version5, 5) - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN) - vote(pip, pip_id) - # step2:停止节点,等待节点被零出块处罚 - make_0mb_slash(verifiers[0], verifiers[1]) - # step3:检查提案和投票信息是否正确 - pip = pips[1] - vote_info = pip.get_accuverifiers_count(pip_id) - assert vote_info[0] == 4 # all verifiers - assert vote_info[1] == 1 # all yeas vote - - @pytest.mark.P1 - def test_0mb_freeze_after_param_vote(self, verifiers, new_genesis_env): - """ - @describe: 参数提案投票后,节点零出块冻结,投票有效,提案可正常生效 - @step: - - 1. 提交参数提案并进行投票 - - 2. 停止节点,等待节点被零出块处罚 - - 3. 检查提案和投票信息是否正确 - @expect: - - 1. 节点被处罚后,投票有效,累积验证人含被处罚节点 - - 2. 节点被处罚后,提案可正常生效 - - 3. 所有相关查询接口,返回提案信息正确 - """ - # init: 修改依赖参数的值,并重新部署环境 - genesis = to_genesis(new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 10 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - # step1:提交参数提案并进行投票 - pips = get_pips(verifiers) - pip = pips[0] - pip_id = param_proposal(pip, 'slashing', 'zeroProduceFreezeDuration', '5') - vote(pip, pip_id) - # step2:停止节点,等待节点被零出块处罚 - make_0mb_slash(verifiers[0], verifiers[1]) - # step3:检查提案和投票信息是否正确 - pip = pips[1] - vote_info = pip.get_accuverifiers_count(pip_id) - assert vote_info[0] == 4 # all verifiers - assert vote_info[1] == 1 # all yeas vote - - @pytest.mark.P1 - def test_0mb_freeze_after_text_vote(self, verifiers): - """ - @describe: 文本提案投票后,节点零出块冻结,投票有效,提案可正常生效 - @step: - - 1. 提交文本提案并进行投票 - - 2. 停止节点,等待节点被零出块处罚 - - 3. 检查提案和投票信息是否正确 - @expect: - - 1. 节点被处罚后,投票有效,累积验证人含被处罚节点 - - 2. 节点被处罚后,提案可正常生效 - - 3. 所有相关查询接口,返回提案信息正确 - """ - # step1:提交文本提案并进行投票 - pips = get_pips(verifiers) - pip = pips[0] - pip_id = text_proposal(pip) - vote(pip, pip_id) - # step2:停止节点,等待节点被零出块处罚 - make_0mb_slash(verifiers[0], verifiers[1]) - # step3:检查提案和投票信息是否正确 - pip = pips[1] - vote_info = pip.get_accuverifiers_count(pip_id) - assert vote_info[0] == 4 # all verifiers - assert vote_info[1] == 1 # all yeas vote - - @pytest.mark.P1 - def test_0mb_freeze_after_cancel_vote(self, verifiers): - """ - @describe: 取消提案投票后,节点零出块冻结,投票有效,提案可正常生效 - @step: - - 1. 提交取消提案并进行投票 - - 2. 停止节点,等待节点被零出块处罚 - - 3. 检查提案和投票信息是否正确 - @expect: - - 1. 节点被处罚后,投票有效,累积验证人含被处罚节点 - - 2. 节点被处罚后,提案可正常生效 - - 3. 所有相关查询接口,返回提案信息正确 - """ - # step1:提交版本提案并进行投票 - pips = get_pips(verifiers) - pip = pips[0] - pip_id = version_proposal(pip, pip.cfg.version5, 5) - pip_id = cancel_proposal(pip, pip_id, 2) - vote(pip, pip_id) - # step2:停止节点,等待节点被零出块处罚 - make_0mb_slash(verifiers[0], verifiers[1]) - # step3:检查提案和投票信息是否正确 - pip = pips[1] - vote_info = pip.get_accuverifiers_count(pip_id) - assert vote_info[0] == 4 # all verifiers - assert vote_info[1] == 1 # all yeas vote - - @pytest.mark.P1 - def test_submit_proposal_at_0mb_freezing(self, verifiers): - """ - @describe: 节点零出块冻结期内,进行提案,提案失败 - @step: - - 1. 节点零出块被冻结处罚 - - 2. 冻结期内发送各种提案,提案失败 - @expect: - - 1. 节点被处罚冻结期内,提案失败 - - 2. 查询未新增提案信息 - """ - # step1:停止节点,等待节点被零出块处罚 - pips = get_pips(verifiers) - pip = pips[0] - make_0mb_slash(verifiers[0], verifiers[1]) - # step2:提交各类提案,提案失败 - assert version_proposal(pip, pip.cfg.version5, 5) == 302022 - assert param_proposal(pip, 'slashing', 'slashBlocksReward', '10') == 302022 - assert text_proposal(pip) == 302022 - pip_id = version_proposal(pips[1], pips[1].cfg.version5, 5) - bn = pip.node.eth.blockNumber - wait_block_number(pip.node, bn + 5) - assert cancel_proposal(pip, pip_id, 2) == 302022 - - @pytest.mark.P1 - def test_version_vote_at_0mb_freezing(self, verifiers): - """ - @describe: 节点零出块冻结期内,进行版本升级提案投票,投票失败 - @step: - - 1. 节点零出块被冻结处罚 - - 2. 冻结期内进行版本升级提案投票,投票失败 - @expect: - - 1. 节点被处罚冻结期内,投票失败 - - 2. 提案投票信息查询正确 - - 3. 可投票验证人统计中,不包含被处罚节点 - """ - # step1:提交版本提案 - pips = get_pips(verifiers) - pip = pips[0] - pip_id = version_proposal(pip, pip.cfg.version5, 5) - # step2:停止节点,等待节点被零出块处罚 - pip = pips[1] - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN) - make_0mb_slash(verifiers[1], verifiers[0]) - assert vote(pip, pip_id) == 302022 - # step3:检查提案和投票信息是否正确 - # pip = pips[1] - # all_verifiers = pip.get_accu_verifiers_of_proposal(pip_id) - # all_yeas = pip.get_yeas_of_proposal(pip_id) - # assert all_verifiers == 1 - # assert all_yeas == 1 - - @pytest.mark.P1 - def test_param_vote_at_0mb_freezing(self, verifiers): - """ - @describe: 节点零出块冻结期内,进行参数提案投票,投票失败 - @step: - - 1. 节点零出块被冻结处罚 - - 2. 冻结期内进行参数提案投票,投票失败 - @expect: - - 1. 节点被处罚冻结期内,投票失败 - - 2. 提案投票信息查询正确 - - 3. 可投票验证人统计中,不包含被处罚节点 - """ - # step1:提交参数提案 - pips = get_pips(verifiers) - pip = pips[0] - pip_id = param_proposal(pip, 'slashing', 'slashBlocksReward', '10') - # step2:停止节点,等待节点被零出块处罚 - pip = pips[1] - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN) - make_0mb_slash(verifiers[1], verifiers[0]) - assert vote(pip, pip_id) == 302022 - - @pytest.mark.P1 - def test_txt_vote_at_0mb_freezing(self, verifiers): - """ - @describe: 节点零出块冻结期内,进行文本提案投票,投票失败 - @step: - - 1. 节点零出块被冻结处罚 - - 2. 冻结期内进行文本提案投票,投票失败 - @expect: - - 1. 节点被处罚冻结期内,投票失败 - - 2. 提案投票信息查询正确 - - 3. 可投票验证人统计中,不包含被处罚节点 - """ - # step1:提交参数提案 - pips = get_pips(verifiers) - pip = pips[0] - pip_id = text_proposal(pip) - # step2:停止节点,等待节点被零出块处罚 - pip = pips[1] - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN) - make_0mb_slash(verifiers[1], verifiers[0]) - assert vote(pip, pip_id) == 302022 - - @pytest.mark.P1 - def test_cancel_vote_at_0mb_freezing(self, verifiers): - """ - @describe: 节点零出块冻结期内,进行取消提案投票,投票失败 - @step: - - 1. 节点零出块被冻结处罚 - - 2. 冻结期内进行文本提案投票,投票失败 - @expect: - - 1. 节点被处罚冻结期内,投票失败 - - 2. 提案投票信息查询正确 - - 3. 可投票验证人统计中,不包含被处罚节点 - """ - # step1:提交取消提案 - pips = get_pips(verifiers) - pip = pips[0] - pip_id = version_proposal(pip, pip.cfg.version5, 5) - pip_id = cancel_proposal(pip, pip_id, 2) - # step2:停止节点,等待节点被零出块处罚 - pip = pips[1] - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN) - make_0mb_slash(verifiers[1], verifiers[0]) - assert vote(pip, pip_id) == 302022 - - @pytest.mark.P1 - def test_submit_declare_at_0mb_freezing(self, verifiers, new_genesis_env): - """ - @describe: 节点零出块冻结期内,进行版本声明 - @step: - - 1. 节点零出块被冻结处罚 - - 2. 冻结期内进行版本声明 - @expect: - - 1. 节点被处罚冻结期内,可以进行版本声明 - - 2. 冻结期内,已发送版本声明,也不会被选举 - """ - # init: 修改依赖参数的值,并重新部署环境 - genesis = to_genesis(new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - # step1:提交版本升级提案 - pips = get_pips(verifiers) - pip = pips[0] - pip_id = version_proposal(pip, pip.cfg.version5, 5) - # setp2:使用其他节点,对提案进行投票,使提案通过 - upload_platon(pips[1].node, pips[1].cfg.PLATON_NEW_BIN) - upload_platon(pips[2].node, pips[2].cfg.PLATON_NEW_BIN) - upload_platon(pips[3].node, pips[3].cfg.PLATON_NEW_BIN) - vote(pips[1], pip_id) - vote(pips[2], pip_id) - vote(pips[3], pip_id) - # setp3: 在投票期内,构造节点零出块,并等待提案通过 - start_block, end_block = make_0mb_slash(verifiers[0], verifiers[1]) - wait_proposal_active(pip, pip_id) - # step4:更新零出块节点二进制,进行版本声明 - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN) - assert version_declare(pip) == 302023 - # step5: 等待零出块冻结结束,进行版本声明 - wait_block_number(pip.node, end_block) - assert version_declare(pip) == 0 - - @pytest.mark.P1 - def test_proposal_multiple_voting(self, verifiers, new_genesis_env): - """ - @describe: 同一提案,节点处罚前已经投票,处罚完成后再次投票 - @step: - - 1. 提交版本提案并进行投票 - - 2. 停止节点,等待节点被零出块处罚 - - 3. 处罚完成后,再次进行投票 - @expect: - - 1. 节点重复投票失败,提案未统计重复投票信息 - """ - # init: 修改依赖参数的值,并重新部署环境 - genesis = to_genesis(new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - # step1: - pips = get_pips(verifiers) - pip = pips[0] - pip_id = version_proposal(pip, pip.cfg.version5, 10) - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN) - vote(pip, pip_id) - # step2:停止节点,等待节点被零出块处罚 - start_block, end_block = make_0mb_slash(verifiers[0], verifiers[1]) - wait_block_number(pip.node, end_block) - # step3:检查提案和投票信息是否正确 - assert vote(pip, pip_id) == 302027 - vote_info = pip.get_accuverifiers_count(pip_id) - assert vote_info[0] == 4 # all verifiers - assert vote_info[1] == 1 # all yeas vote - - @pytest.mark.P1 - @pytest.mark.parametrize('value', ['1', '3']) - def test_modify_param_of_0mb_freeze_duration(self, verifiers, new_genesis_env, value): - """ - @describe: 参数提案修改‘zeroProduceFreezeDuration’的值-正常 - @step: - - 1. 提交参数提案,修改‘zeroProduceFreezeDuration’的值为正常值 - - 2. 检查参数生效值和效果 - @expect: - - 1. 提案生效后查询该参数,返回正确 - - 2. 参数在链上生效,影响零出块冻结持续时长 - """ - # init: 修改依赖参数的值,并重新部署环境 - genesis = to_genesis(new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 4 - genesis.economicModel.slashing.zeroProduceFreezeDuration = 2 - genesis.economicModel.slashing.slashBlocksReward = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - # step1: 发起参数提案,投票使提案生效 - pips = get_pips(verifiers) - pip = pips[0] - pip_id = param_proposal(pip, 'slashing', 'zeroProduceFreezeDuration', value) - votes(pip_id, pips, [1, 1, 1, 1]) - wait_proposal_active(pip, pip_id) - # step2: 检查参数生效值和效果 - res = pip.pip.getGovernParamValue('slashing', 'zeroProduceFreezeDuration') - assert res['Ret'] == value - start_block, end_block = make_0mb_slash(verifiers[0], verifiers[1]) - wait_block_number(pip.node, end_block) - assert check_node_in_list(pip.node.node_id, pip.node.ppos.getCandidateList) is True - node_info = pip.node.ppos.getCandidateInfo(pip.node.node_id) - assert node_info['Ret']['Status'] == 0 - - @pytest.mark.P1 - @pytest.mark.parametrize('value, code', [('2', 302034), ('0', 3), ('4', 3), ('', 3), ('T', 3)]) - def test_modify_param_fail_of_0mb_freeze_duration(self, verifiers, new_genesis_env, value, code): - """ - @describe: 参数提案修改‘zeroProduceFreezeDuration’的值-异常 - @step: - - 1. 提交参数提案,修改‘zeroProduceFreezeDuration’的值为异常值 - - 2. 检查提案异常返回的code - @expect: - - 1. 提案返回错误码正确 - """ - # init: 修改依赖参数的值,并重新部署环境 - genesis = to_genesis(new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 4 - genesis.economicModel.slashing.zeroProduceFreezeDuration = 2 - genesis.economicModel.slashing.slashBlocksReward = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - # step1: 发起参数提案,投票使提案生效 - pips = get_pips(verifiers) - pip = pips[0] - assert param_proposal(pip, 'slashing', 'zeroProduceFreezeDuration', value) == code - - @pytest.mark.P1 - def test_all_process_of_pip_after_slashed(self, verifiers, new_genesis_env): - """ - @describe: 在处罚结束之后,执行pip所有流程 - @step: - - 1. 节点在零出块处罚结束后发起提案 - - 2. 节点在零出块处罚结束后进行投票 - - 3. 节点在零出块处罚结束后进行版本声明 - @expect: - - 1. pip流程未受到处罚影响 - """ - # init: 修改依赖参数的值,并重新部署环境 - genesis = to_genesis(new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - # step1: 构造零出块处罚,并在处罚结束后发起提案 - pips = get_pips(verifiers) - pip = pips[0] - _, end_block = make_0mb_slash(verifiers[0], verifiers[1]) - wait_block_number(pip.node, end_block) - assert check_node_in_list(pip.node.node_id, pip.node.ppos.getCandidateList) is True - pip.economic.wait_settlement(pip.node) - assert check_node_in_list(pip.node.node_id, pip.node.ppos.getValidatorList) is True - assert check_node_in_list(pip.node.node_id, pip.node.ppos.getVerifierList) is True - # step2: 构造零出块处罚,并在处罚结束后进行投票 - pip_id = version_proposal(pip, pip.cfg.version5, 10) - _, end_block = make_0mb_slash(verifiers[1], verifiers[0]) - wait_block_number(pip.node, end_block) - upload_platon(pips[1].node, pip.cfg.PLATON_NEW_BIN) - upload_platon(pips[2].node, pip.cfg.PLATON_NEW_BIN) - upload_platon(pips[3].node, pip.cfg.PLATON_NEW_BIN) - assert vote(pips[1], pip_id, pips[1].cfg.vote_option_yeas) == 0 - assert vote(pips[2], pip_id, pips[2].cfg.vote_option_yeas) == 0 - assert vote(pips[3], pip_id, pips[3].cfg.vote_option_yeas) == 0 - # step3: 在提案生效后进行版本声明 - wait_proposal_active(pip, pip_id) - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN) - assert version_declare(pip) == 0 diff --git a/cases/tests/govern/test_staking_and_unstaking.py b/cases/tests/govern/test_staking_and_unstaking.py deleted file mode 100644 index 88e1362faa..0000000000 --- a/cases/tests/govern/test_staking_and_unstaking.py +++ /dev/null @@ -1,1048 +0,0 @@ -from tests.lib.utils import upload_platon, assert_code, get_pledge_list, wait_block_number -from common.log import log -from tests.lib.client import Client, get_client_by_nodeid, get_clients_by_nodeid, StakingConfig -import pytest -import allure -import time -import math -from tests.govern.conftest import version_proposal_vote, proposal_vote -from tests.lib import Genesis, PipConfig -from dacite import from_dict -from tests.govern.test_voting_statistics import submitcvpandvote, submitcppandvote, submittpandvote, \ - submitvpandvote, submitppandvote -from common.key import mock_duplicate_sign - - -def create_lockup_plan(client): - address, _ = client.pip.economic.account.generate_account(client.node.web3, - 3 * client.economic.genesis.economicModel.staking.stakeThreshold) - plan = [{'Epoch': 20, 'Amount': 2 * client.economic.genesis.economicModel.staking.stakeThreshold}] - result = client.restricting.createRestrictingPlan(address, plan, address, - transaction_cfg=client.pip.cfg.transaction_cfg) - log.info('CreateRestrictingPlan result : {}'.format(result)) - assert_code(result, 0) - result = client.staking.create_staking(1, address, address, - amount=int(client.economic.genesis.economicModel.staking.stakeThreshold), - transaction_cfg=client.pip.cfg.transaction_cfg) - log.info('Create staking result : {}'.format(result)) - assert_code(result, 0) - client.economic.wait_settlement(client.node) - - -@pytest.fixture() -def new_node_no_proposal(no_vp_proposal, clients_noconsensus, all_clients): - pip = no_vp_proposal - client = get_client_by_nodeid(pip.node.node_id, all_clients) - candidate_list = get_pledge_list(client.ppos.getCandidateList) - log.info('candidate_list: {}'.format(candidate_list)) - for client in clients_noconsensus: - if client.node.node_id not in candidate_list: - return client.pip - log.info('All nodes are staked, restart the chain') - pip.economic.env.deploy_all() - return clients_noconsensus[0].pip - - -def replace_platon_and_staking(pip, platon_bin): - all_nodes = pip.economic.env.get_all_nodes() - all_clients = [] - for node in all_nodes: - all_clients.append(Client(pip.economic.env, node, StakingConfig("externalId", "nodeName", "website", - "details"))) - client = get_client_by_nodeid(pip.node.node_id, all_clients) - upload_platon(pip.node, platon_bin) - log.info('Replace the platon of the node {}'.format(pip.node.node_id)) - pip.node.restart() - log.info('Restart the node {}'.format(pip.node.node_id)) - address, _ = pip.economic.account.generate_account(pip.node.web3, - 10 * pip.economic.genesis.economicModel.staking.stakeThreshold) - result = client.staking.create_staking(0, address, address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} staking result {}'.format(pip.node.node_id, result)) - return result - - -class TestVotingProposalStaking: - @pytest.mark.P1 - @allure.title('Verify stake function') - @pytest.mark.parametrize('platon_bin', [getattr(PipConfig(), 'PLATON_NEW_BIN2'), - getattr(PipConfig(), 'PLATON_NEW_BIN1'), - getattr(PipConfig(), 'PLATON_NEW_BIN0'), - getattr(PipConfig(), 'PLATON_NEW_BIN3'), - getattr(PipConfig(), 'PLATON_NEW_BIN')]) - def test_ST_VS_001_to_005(self, new_node_has_proposal, platon_bin): - pip = new_node_has_proposal - result = replace_platon_and_staking(pip, platon_bin) - if platon_bin != pip.cfg.PLATON_NEW_BIN1: - assert_code(result, 0) - else: - assert_code(result, 301004) - - -class TestNoProposalStaking: - @pytest.mark.P1 - @allure.title('No proposal, verify stake function') - def test_ST_NO_001(self, new_node_no_proposal): - pip = new_node_no_proposal - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN2) - assert_code(result, 0) - - @pytest.mark.P1 - @allure.title('No proposal, verify stake function') - def test_ST_NO_002(self, new_node_no_proposal): - pip = new_node_no_proposal - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN1) - assert_code(result, 301004) - - @pytest.mark.P1 - @allure.title('No proposal, verify stake function') - def test_ST_NO_003(self, new_node_no_proposal): - pip = new_node_no_proposal - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN0) - assert_code(result, 0) - - @pytest.mark.P1 - def test_ST_NO_004(self, new_node_no_proposal): - pip = new_node_no_proposal - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN3) - assert_code(result, 0) - - @pytest.mark.P1 - @allure.title('No proposal, verify stake function') - def test_ST_NO_005(self, new_node_no_proposal): - pip = new_node_no_proposal - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN) - assert_code(result, 301005) - - -class TestPreactiveProposalStaking: - def preactive_proposal(self, all_clients): - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifierlist :{}'.format(verifier_list)) - client_verifiers = get_clients_by_nodeid(verifier_list, all_clients) - pips = [client.pip for client in client_verifiers] - result = pips[0].submitVersion(pips[0].node.node_id, str(time.time()), - pips[0].cfg.version5, 3, pips[0].node.staking_address, - transaction_cfg=pips[0].cfg.transaction_cfg) - log.info('submit version proposal, result : {}'.format(result)) - proposalinfo = pips[0].get_effect_proposal_info_of_vote() - log.info('Version proposalinfo: {}'.format(proposalinfo)) - - # pip_id= proposalinfo['ProposalID'] - # TallyResult = pips[0].pip.getTallyResult(pip_id) - # log.info(f'TallyResult == {TallyResult}') - - for pip in pips: - result = version_proposal_vote(pip) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 4 - - @pytest.mark.P1 - @allure.title('There is preactive proposal, verify stake function') - def test_ST_PR_001(self, new_genesis_env, new_node_no_proposal, all_clients): - pip = new_node_no_proposal - self.preactive_proposal(all_clients) - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN2) - assert_code(result, 301004) - - @pytest.mark.P1 - @allure.title('There is preactive proposal, verify stake function') - def test_ST_PR_002(self, new_genesis_env, new_node_no_proposal, all_clients): - pip = new_node_no_proposal - self.preactive_proposal(all_clients) - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN1) - assert_code(result, 301004) - - @pytest.mark.P1 - @allure.title('There is preactive proposal, verify stake function') - def test_ST_PR_003(self, new_genesis_env, new_node_no_proposal, all_clients): - pip = new_node_no_proposal - self.preactive_proposal(all_clients) - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN0) - assert_code(result, 301004) - - @pytest.mark.P1 - @allure.title('There is preactive proposal, verify stake function') - def test_ST_PR_004(self, new_genesis_env, new_node_no_proposal, all_clients): - pip = new_node_no_proposal - self.preactive_proposal(all_clients) - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN3) - assert_code(result, 301004) - - @pytest.mark.P1 - @allure.title('There is preactive proposal, verify stake function') - def test_ST_PR_005(self, new_genesis_env, new_node_no_proposal, all_clients): - pip = new_node_no_proposal - self.preactive_proposal(all_clients) - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN) - assert_code(result, 0) - - @pytest.mark.P1 - @allure.title('There is preactive proposal, verify stake function') - def test_ST_PR_006(self, new_genesis_env, new_node_no_proposal, all_clients): - pip = new_node_no_proposal - self.preactive_proposal(all_clients) - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN8) - assert_code(result, 301005) - - -class TestUpgradedProposalStaking: - def upgraded_proposal(self, all_clients): - verifier_list = get_pledge_list(all_clients[0].ppos.getVerifierList) - log.info('verifierlist :{}'.format(verifier_list)) - client_verifiers = get_clients_by_nodeid(verifier_list, all_clients) - pips = [client.pip for client in client_verifiers] - result = pips[0].submitVersion(pips[0].node.node_id, str(time.time()), - pips[0].cfg.version5, 2, pips[0].node.staking_address, - transaction_cfg=pips[0].cfg.transaction_cfg) - log.info('submit version proposal, result : {}'.format(result)) - proposalinfo = pips[0].get_effect_proposal_info_of_vote() - log.info('Version proposalinfo: {}'.format(proposalinfo)) - for pip in pips: - result = version_proposal_vote(pip) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 4 - wait_block_number(pip.node, proposalinfo.get('ActiveBlock')) - assert pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 5 - - @pytest.mark.P2 - @allure.title('Chain upgrade completed, verify stake function') - def test_ST_UPG_001(self, new_genesis_env, new_node_no_proposal, all_clients): - pip = new_node_no_proposal - self.upgraded_proposal(all_clients) - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN4) - assert_code(result, 0) - - @pytest.mark.P2 - @allure.title('Chain upgrade completed, verify stake function') - def test_ST_UPG_002(self, new_genesis_env, new_node_no_proposal, all_clients): - pip = new_node_no_proposal - self.upgraded_proposal(all_clients) - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN0) - assert_code(result, 301004) - - @pytest.mark.P2 - @allure.title('Chain upgrade completed, verify stake function') - def test_ST_UPG_003(self, new_genesis_env, new_node_no_proposal, all_clients): - pip = new_node_no_proposal - self.upgraded_proposal(all_clients) - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN) - assert_code(result, 0) - - @pytest.mark.P2 - @allure.title('Chain upgrade completed, verify stake function') - def test_ST_UPG_004(self, new_genesis_env, new_node_no_proposal, all_clients): - pip = new_node_no_proposal - self.upgraded_proposal(all_clients) - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN6) - assert_code(result, 0) - - @pytest.mark.P2 - @allure.title('Chain upgrade completed, verify stake function') - def test_ST_UPG_005(self, new_genesis_env, new_node_no_proposal, all_clients): - pip = new_node_no_proposal - self.upgraded_proposal(all_clients) - result = replace_platon_and_staking(pip, pip.cfg.PLATON_NEW_BIN7) - assert_code(result, 301005) - - -class TestUnstaking: - @pytest.mark.P1 - @allure.title('Verify unstake function') - def test_UNS_AM_003_007(self, new_genesis_env, client_verifier): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = client_verifier.pip - address = pip.node.staking_address - submitcvpandvote([client_verifier], 1) - result = version_proposal_vote(pip) - assert_code(result, 0) - shares = client_verifier.staking.get_staking_amount(pip.node) - result = client_verifier.staking.withdrew_staking(address) - log.info('Node withdrew staking result : {}'.format(result)) - assert_code(result, 0) - calculated_block = 480 - wait_block_number(pip.node, calculated_block) - balance_before = pip.node.eth.getBalance(address, calculated_block - 1) - log.info('Block bumber {} staking address balance {}'.format(calculated_block - 1, balance_before)) - balance_after = pip.node.eth.getBalance(address, calculated_block) - log.info('Block bumber {} staking address balance {}'.format(calculated_block, balance_after)) - log.info('{}'.format(pip.economic.get_current_year_reward(pip.node))) - assert balance_after - balance_before == shares - - @pytest.mark.P1 - @allure.title('Verify unstake function') - def test_UNS_AM_005(self, new_genesis_env, client_verifier): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = client_verifier.pip - address = pip.node.staking_address - result = pip.submitText(pip.node.node_id, str(time.time()), address, transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - - submitcppandvote([client_verifier], [1]) - result = proposal_vote(pip, proposaltype=pip.cfg.text_proposal) - assert_code(result, 0) - shares = client_verifier.staking.get_staking_amount(pip.node) - result = client_verifier.staking.withdrew_staking(address) - log.info('Node withdrew staking result : {}'.format(result)) - assert_code(result, 0) - calculated_block = 480 - wait_block_number(pip.node, calculated_block) - balance_before = pip.node.eth.getBalance(address, calculated_block - 1) - log.info('Block bumber {} staking address balance {}'.format(calculated_block - 1, balance_before)) - balance_after = pip.node.eth.getBalance(address, calculated_block) - log.info('Block bumber {} staking address balance {}'.format(calculated_block, balance_after)) - assert balance_after - balance_before == shares - - @pytest.mark.P1 - @allure.title('Verify unstake function') - def test_UNS_AM_004_006_008(self, new_genesis_env, clients_verifier): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - genesis.economicModel.gov.versionProposalVoteDurationSeconds = 1000 - genesis.economicModel.gov.textProposalVoteDurationSeconds = 840 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip_one = clients_verifier[0].pip - pip_two = clients_verifier[1].pip - pip_three = clients_verifier[2].pip - address = pip_one.node.staking_address - result = pip_one.submitVersion(pip_one.node.node_id, str(time.time()), pip_one.cfg.version5, 17, address, - transaction_cfg=pip_one.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - proposalinfo_version = pip_one.get_effect_proposal_info_of_vote(pip_one.cfg.version_proposal) - log.info('Version proposal information : {}'.format(proposalinfo_version)) - - result = pip_one.submitCancel(pip_one.node.node_id, str(time.time()), 13, proposalinfo_version.get('ProposalID'), - address, transaction_cfg=pip_one.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - result_text = pip_one.submitText(pip_one.node.node_id, str(time.time()), address, - transaction_cfg=pip_one.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result_text)) - result = proposal_vote(pip_one, proposaltype=pip_one.cfg.cancel_proposal) - assert_code(result, 0) - result = version_proposal_vote(pip_two) - assert_code(result, 0) - result = proposal_vote(pip_three, proposaltype=pip_three.cfg.text_proposal) - assert_code(result, 0) - proposalinfo_cancel = pip_one.get_effect_proposal_info_of_vote(pip_one.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip_one.get_effect_proposal_info_of_vote(pip_one.cfg.text_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_text)) - shares_one = clients_verifier[0].staking.get_staking_amount(pip_one.node) - shares_two = clients_verifier[1].staking.get_staking_amount(pip_two.node) - shares_three = clients_verifier[2].staking.get_staking_amount(pip_three.node) - result = clients_verifier[0].staking.withdrew_staking(address) - log.info('Node {} withdrew staking result : {}'.format(pip_one.node.node_id, result)) - assert_code(result, 0) - - result = clients_verifier[1].staking.withdrew_staking(address) - log.info('Node {} withdrew staking result : {}'.format(pip_two.node.node_id, result)) - assert_code(result, 0) - - result = clients_verifier[2].staking.withdrew_staking(address) - log.info('Node {} withdrew staking result : {}'.format(pip_three.node.node_id, result)) - assert_code(result, 0) - calculated_block = 480 - wait_block_number(pip_one.node, calculated_block) - balance_before = pip_one.node.eth.getBalance(address, calculated_block - 1) - log.info('Block bumber {} staking address balance {}'.format(calculated_block - 1, balance_before)) - balance_after = pip_one.node.eth.getBalance(address, calculated_block) - log.info('Block bumber {} staking address balance {}'.format(calculated_block, balance_after)) - assert balance_after == balance_before - - blocknumber = math.ceil(proposalinfo_cancel.get('EndVotingBlock') / pip_one.economic.settlement_size - ) * pip_one.economic.settlement_size - wait_block_number(pip_one.node, blocknumber) - balance_before = pip_one.node.eth.getBalance(address, blocknumber - 1) - log.info('Block bumber {} staking address balance {}'.format(blocknumber - 1, balance_before)) - balance_after = pip_one.node.eth.getBalance(address, blocknumber) - log.info('Block bumber {} staking address balance {}'.format(blocknumber, balance_after)) - assert balance_after - balance_before == shares_one - - blocknumber = math.ceil(proposalinfo_version.get('EndVotingBlock') / pip_one.economic.settlement_size - ) * pip_one.economic.settlement_size - wait_block_number(pip_one.node, blocknumber) - balance_before = pip_one.node.eth.getBalance(address, blocknumber - 1) - log.info('Block bumber {} staking address balance {}'.format(blocknumber - 1, balance_before)) - balance_after = pip_one.node.eth.getBalance(address, blocknumber) - log.info('Block bumber {} staking address balance {}'.format(blocknumber, balance_after)) - assert balance_after - balance_before == shares_two - - blocknumber = math.ceil(proposalinfo_text.get('EndVotingBlock') / pip_one.economic.settlement_size - ) * pip_one.economic.settlement_size - wait_block_number(pip_one.node, blocknumber) - balance_before = pip_one.node.eth.getBalance(address, blocknumber - 1) - log.info('Block bumber {} staking address balance {}'.format(blocknumber - 1, balance_before)) - balance_after = pip_one.node.eth.getBalance(address, blocknumber) - log.info('Block bumber {} staking address balance {}'.format(blocknumber, balance_after)) - assert balance_after - balance_before == shares_three - - @pytest.mark.P2 - @allure.title('Verify unstake function') - def test_UNS_AM_009_011_013(self, new_genesis_env, clients_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - genesis.economicModel.gov.versionProposalVoteDurationSeconds = 1000 - genesis.economicModel.gov.textProposalVoteDurationSeconds = 200 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip_test = clients_noconsensus[0].pip - address, _ = pip_test.economic.account.generate_account(pip_test.node.web3, 10**18 * 20000000) - plan = [{'Epoch': 20, 'Amount': 10**18 * 2000000}] - result = clients_noconsensus[0].restricting.createRestrictingPlan(address, plan, address, - transaction_cfg=pip_test.cfg.transaction_cfg) - log.info('CreateRestrictingPlan result : {}'.format(result)) - assert_code(result, 0) - result = clients_noconsensus[0].staking.create_staking(1, address, address, - transaction_cfg=pip_test.cfg.transaction_cfg) - log.info('Create staking result : {}'.format(result)) - assert_code(result, 0) - pip_test.economic.wait_settlement(pip_test.node) - result = pip_test.submitVersion(pip_test.node.node_id, str(time.time()), pip_test.cfg.version5, - 4, pip_test.node.staking_address, transaction_cfg=pip_test.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - result = pip_test.submitText(pip_test.node.node_id, str(time.time()), pip_test.node.staking_address, - transaction_cfg=pip_test.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - - proposalinfo_version = pip_test.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo_version)) - result = pip_test.submitCancel(pip_test.node.node_id, str(time.time()), 2, proposalinfo_version.get('ProposalID'), - pip_test.node.staking_address, transaction_cfg=pip_test.cfg.transaction_cfg) - log.info('Submit cancel result : {}'.format(result)) - assert_code(result, 0) - result = version_proposal_vote(pip_test) - assert_code(result, 0) - result = proposal_vote(pip_test, proposaltype=pip_test.cfg.text_proposal) - assert_code(result, 0) - result = proposal_vote(pip_test, proposaltype=pip_test.cfg.cancel_proposal) - assert_code(result, 0) - proposalinfo_cancel = pip_test.get_effect_proposal_info_of_vote(pip_test.cfg.cancel_proposal) - log.info('Get cancel proposal information : {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip_test.get_effect_proposal_info_of_vote(pip_test.cfg.text_proposal) - log.info('Get text proposal information : {}'.format(proposalinfo_text)) - - shares = clients_noconsensus[0].staking.get_staking_amount(pip_test.node) - result = clients_noconsensus[0].staking.withdrew_staking(address) - log.info('Node withdrew result : {}'.format(result)) - assert_code(result, 0) - - wait_block_number(pip_test.node, 4 * pip_test.economic.settlement_size) - balance_before = pip_test.node.eth.getBalance(address, 4 * pip_test.economic.settlement_size - 1) - log.info('Block bumber {} staking address balance {}'.format(4 * pip_test.economic.settlement_size - 1, balance_before)) - balance_before_lockup = pip_test.node.eth.getBalance(pip_test.cfg.FOUNDATION_LOCKUP_ADDRESS, - 4 * pip_test.economic.settlement_size - 1) - log.info('Block bumber {} FOUNDATION_LOCKUP_ADDRESS balance {}'.format(4 * pip_test.economic.settlement_size - 1, - balance_before_lockup)) - balance_after = pip_test.node.eth.getBalance(address, 4 * pip_test.economic.settlement_size) - balance_after_lockup = pip_test.node.eth.getBalance(pip_test.cfg.FOUNDATION_LOCKUP_ADDRESS, - 4 * pip_test.economic.settlement_size) - log.info('Block bumber {} staking address balance {}'.format(4 * pip_test.economic.settlement_size, balance_after)) - log.info('Block bumber {} FOUNDATION_LOCKUP_ADDRESS balance {}'.format(4 * pip_test.economic.settlement_size, - balance_after_lockup)) - assert balance_after_lockup - balance_before_lockup == shares - - @pytest.mark.P2 - @allure.title('Verify unstake function') - def test_UNS_AM_010_012_014(self, new_genesis_env, clients_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 640 - genesis.economicModel.gov.textProposalVoteDurationSeconds = 840 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - for client in clients_noconsensus: - pip = client.pip - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 20000000) - plan = [{'Epoch': 20, 'Amount': 10**18 * 2000000}] - result = client.restricting.createRestrictingPlan(address, plan, address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('CreateRestrictingPlan result : {}'.format(result)) - assert_code(result, 0) - result = client.staking.create_staking(1, address, address, amount=10**18 * 1800000, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Create staking result : {}'.format(result)) - assert_code(result, 0) - pip.economic.wait_settlement(pip.node) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', - '1116', address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information : {}'.format(proposalinfo_param)) - result = pip.submitCancel(pip.node.node_id, str(time.time()), 14, proposalinfo_param.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel result : {}'.format(result)) - assert_code(result, 0) - result = proposal_vote(clients_noconsensus[0].pip, proposaltype=pip.cfg.param_proposal) - assert_code(result, 0) - result = proposal_vote(clients_noconsensus[1].pip, proposaltype=pip.cfg.text_proposal) - assert_code(result, 0) - result = proposal_vote(clients_noconsensus[2].pip, proposaltype=pip.cfg.cancel_proposal) - assert_code(result, 0) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information : {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information : {}'.format(proposalinfo_text)) - - shares0 = clients_noconsensus[0].staking.get_staking_amount(clients_noconsensus[0].node) - shares1 = clients_noconsensus[1].staking.get_staking_amount(clients_noconsensus[1].node) - shares2 = clients_noconsensus[2].staking.get_staking_amount(clients_noconsensus[2].node) - address0 = clients_noconsensus[0].node.staking_address - address1 = clients_noconsensus[1].node.staking_address - address2 = clients_noconsensus[2].node.staking_address - result = clients_noconsensus[0].staking.withdrew_staking(address0) - log.info('Node {} withdrew result : {}'.format(clients_noconsensus[0].node.node_id, result)) - assert_code(result, 0) - result = clients_noconsensus[1].staking.withdrew_staking(address1) - log.info('Node {} withdrew result : {}'.format(clients_noconsensus[0].node.node_id, result)) - assert_code(result, 0) - result = clients_noconsensus[2].staking.withdrew_staking(address2) - log.info('Node {} withdrew result : {}'.format(clients_noconsensus[0].node.node_id, result)) - assert_code(result, 0) - wait_block_number(pip.node, 4 * pip.economic.settlement_size) - balance_before_lockup = pip.node.eth.getBalance(pip.cfg.FOUNDATION_LOCKUP_ADDRESS, - 4 * pip.economic.settlement_size - 1) - log.info('Block bumber {} FOUNDATION_LOCKUP_ADDRESS balance {}'.format(4 * pip.economic.settlement_size - 1, - balance_before_lockup)) - balance_after_lockup = pip.node.eth.getBalance(pip.cfg.FOUNDATION_LOCKUP_ADDRESS, - 4 * pip.economic.settlement_size) - log.info('Block bumber {} FOUNDATION_LOCKUP_ADDRESS balance {}'.format(4 * pip.economic.settlement_size, - balance_after_lockup)) - assert balance_after_lockup == balance_before_lockup - - wait_block_number(pip.node, 5 * pip.economic.settlement_size) - balance_before = pip.node.eth.getBalance(address2, 5 * pip.economic.settlement_size - 1) - balance_before_lockup = pip.node.eth.getBalance(pip.cfg.FOUNDATION_LOCKUP_ADDRESS, - 5 * pip.economic.settlement_size - 1) - log.info('Block bumber {} staking address balance {}'.format(5 * pip.economic.settlement_size - 1, balance_before)) - log.info('Block bumber {} FOUNDATION_LOCKUP_ADDRESS balance {}'.format(5 * pip.economic.settlement_size - 1, - balance_before_lockup)) - balance_after = pip.node.eth.getBalance(address2, 5 * pip.economic.settlement_size) - balance_after_lockup = pip.node.eth.getBalance(pip.cfg.FOUNDATION_LOCKUP_ADDRESS, - 5 * pip.economic.settlement_size) - log.info('Block bumber {} staking address balance {}'.format(5 * pip.economic.settlement_size, balance_after)) - log.info('Block bumber {} FOUNDATION_LOCKUP_ADDRESS balance {}'.format(5 * pip.economic.settlement_size, - balance_after_lockup)) - assert balance_after == balance_before - assert balance_after_lockup - balance_before_lockup == shares2 - - wait_block_number(pip.node, 6 * pip.economic.settlement_size) - balance_before = pip.node.eth.getBalance(address0, 6 * pip.economic.settlement_size - 1) - balance_before_lockup = pip.node.eth.getBalance(pip.cfg.FOUNDATION_LOCKUP_ADDRESS, - 6 * pip.economic.settlement_size - 1) - log.info('Block bumber {} staking address balance {}'.format(6 * pip.economic.settlement_size - 1, balance_before)) - log.info('Block bumber {} FOUNDATION_LOCKUP_ADDRESS balance {}'.format(6 * pip.economic.settlement_size - 1, - balance_before_lockup)) - balance_after = pip.node.eth.getBalance(address0, 6 * pip.economic.settlement_size) - balance_after_lockup = pip.node.eth.getBalance(pip.cfg.FOUNDATION_LOCKUP_ADDRESS, - 6 * pip.economic.settlement_size) - log.info('Block bumber {} staking address balance {}'.format(6 * pip.economic.settlement_size, balance_after)) - log.info('Block bumber {} FOUNDATION_LOCKUP_ADDRESS balance {}'.format(6 * pip.economic.settlement_size, balance_after_lockup)) - - assert balance_after == balance_before - assert balance_after_lockup - balance_before_lockup == shares0 - - wait_block_number(pip.node, 7 * pip.economic.settlement_size) - balance_before = pip.node.eth.getBalance(address1, 7 * pip.economic.settlement_size - 1) - balance_before_lockup = pip.node.eth.getBalance(pip.cfg.FOUNDATION_LOCKUP_ADDRESS, - 7 * pip.economic.settlement_size - 1) - log.info('Block bumber {} staking address balance {}'.format(7 * pip.economic.settlement_size - 1, - balance_before)) - log.info('Block bumber {} FOUNDATION_LOCKUP_ADDRESS balance {}'.format(7 * pip.economic.settlement_size - 1, - balance_before_lockup)) - balance_after = pip.node.eth.getBalance(address1, 7 * pip.economic.settlement_size) - balance_after_lockup = pip.node.eth.getBalance(pip.cfg.FOUNDATION_LOCKUP_ADDRESS, - 7 * pip.economic.settlement_size) - log.info('Block bumber {} staking address balance {}'.format(7 * pip.economic.settlement_size, balance_after)) - log.info('Block bumber {} FOUNDATION_LOCKUP_ADDRESS balance {}'.format(7 * pip.economic.settlement_size, - balance_after_lockup)) - - assert balance_after == balance_before - assert balance_after_lockup - balance_before_lockup == shares1 - - -class TestSlashing: - @pytest.mark.P1 - @allure.title('Node be slashed, verify unstake function') - def test_UNS_PU_003_005_007_017(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 200 - genesis.economicModel.gov.textProposalVoteDurationSeconds = 200 - genesis.economicModel.slashing.slashBlocksReward = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - pip_test = clients_consensus[1].pip - address = pip.node.staking_address - balance_init = pip.node.eth.getBalance(address) - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 1, - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_version = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo_version)) - result = version_proposal_vote(pip) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo_version.get('EndVotingBlock')) - submittpandvote([clients_consensus[0]], 3) - submitcppandvote([clients_consensus[0]], [2]) - result = proposal_vote(pip, proposaltype=pip.cfg.param_proposal) - assert_code(result, 0) - log.info('Stop the node {}'.format(pip.node.node_id)) - shares = clients_consensus[1].staking.get_staking_amount(pip_test.node) - pip.node.stop() - wait_block_number(pip_test.node, 3 * pip_test.economic.settlement_size) - balance_before = pip_test.node.eth.getBalance(address, 3 * pip_test.economic.settlement_size - 1) - log.info('Block bumber {} staking address balance {}'.format(3 * pip_test.economic.settlement_size - 1, - balance_before)) - balance_after = pip_test.node.eth.getBalance(address, 3 * pip_test.economic.settlement_size) - log.info('Block bumber {} staking address balance {}'.format(3 * pip_test.economic.settlement_size, - balance_after)) - assert balance_after == balance_before - - @pytest.mark.P2 - @allure.title('Node be slashed, verify unstake function') - def test_UNS_PU_016(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 640 - genesis.economicModel.gov.textProposalVoteDurationSeconds = 200 - genesis.economicModel.slashing.slashBlocksReward = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - pip_test = clients_consensus[1].pip - address = pip.node.staking_address - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', - '1116', address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information : {}'.format(proposalinfo_param)) - result = pip.submitCancel(pip.node.node_id, str(time.time()), 14, proposalinfo_param.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel result : {}'.format(result)) - assert_code(result, 0) - result = proposal_vote(pip, proposaltype=pip.cfg.param_proposal) - assert_code(result, 0) - result = proposal_vote(pip, proposaltype=pip.cfg.text_proposal) - assert_code(result, 0) - result = proposal_vote(pip, proposaltype=pip.cfg.cancel_proposal) - assert_code(result, 0) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information : {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information : {}'.format(proposalinfo_text)) - - shares0 = clients_consensus[0].staking.get_staking_amount(clients_consensus[0].node) - log.info('Stop node {}'.format(pip.node.node_id)) - pip.node.stop() - wait_block_number(pip_test.node, 3 * pip_test.economic.settlement_size) - balance_before = pip_test.node.eth.getBalance(address, 3 * pip_test.economic.settlement_size - 1) - log.info('Block bumber {} staking address balance {}'.format(3 * pip_test.economic.settlement_size - 1, - balance_before)) - balance_after = pip_test.node.eth.getBalance(address, 3 * pip_test.economic.settlement_size) - - log.info('Block bumber {} staking address balance {}'.format(3 * pip_test.economic.settlement_size, - balance_after)) - assert balance_after == balance_before - - wait_block_number(pip_test.node, 5 * pip_test.economic.settlement_size) - balance_before = pip_test.node.eth.getBalance(address, 5 * pip_test.economic.settlement_size - 1) - log.info('Block bumber {} staking address balance {}'.format(5 * pip_test.economic.settlement_size - 1, - balance_before)) - balance_after = pip_test.node.eth.getBalance(address, 5 * pip_test.economic.settlement_size) - - log.info('Block bumber {} staking address balance {}'.format(5 * pip_test.economic.settlement_size, - balance_after)) - assert balance_after == balance_before - - @pytest.mark.P1 - @allure.title('Node be slashed, verify unstake function') - def test_UNS_PU_004(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - genesis.economicModel.gov.versionProposalVoteDurationSeconds = 1000 - genesis.economicModel.gov.textProposalVoteDurationSeconds = 200 - genesis.economicModel.slashing.slashBlocksReward = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - pip_test = clients_consensus[1].pip - address = pip.node.staking_address - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 13, address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - - proposalinfo_version = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Get version proposal information : {}'.format(proposalinfo_version)) - result = version_proposal_vote(pip) - assert_code(result, 0) - result = proposal_vote(pip, proposaltype=pip.cfg.text_proposal) - assert_code(result, 0) - - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information : {}'.format(proposalinfo_text)) - - shares0 = clients_consensus[0].staking.get_staking_amount(clients_consensus[0].node) - log.info('Stop node {}'.format(pip.node.node_id)) - pip.node.stop() - wait_block_number(pip_test.node, 3 * pip_test.economic.settlement_size) - balance_before = pip_test.node.eth.getBalance(address, 3 * pip_test.economic.settlement_size - 1) - log.info('Block bumber {} staking address balance {}'.format(3 * pip_test.economic.settlement_size - 1, - balance_before)) - balance_after = pip_test.node.eth.getBalance(address, 3 * pip_test.economic.settlement_size) - - log.info('Block bumber {} staking address balance {}'.format(3 * pip_test.economic.settlement_size, - balance_after)) - assert balance_after == balance_before - - wait_block_number(pip_test.node, 4 * pip_test.economic.settlement_size) - balance_before = pip_test.node.eth.getBalance(address, 4 * pip_test.economic.settlement_size - 1) - log.info('Block bumber {} staking address balance {}'.format(4 * pip_test.economic.settlement_size - 1, - balance_before)) - balance_after = pip_test.node.eth.getBalance(address, 4 * pip_test.economic.settlement_size) - - log.info('Block bumber {} staking address balance {}'.format(4 * pip_test.economic.settlement_size, - balance_after)) - assert balance_after == balance_before - - @pytest.mark.P1 - @allure.title('Node be slashed, verify unstake function') - def test_UNS_PU_006(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - genesis.economicModel.gov.textProposalVoteDurationSeconds = 520 - genesis.economicModel.slashing.slashBlocksReward = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - pip_test = clients_consensus[1].pip - address = pip.node.staking_address - - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - - result = proposal_vote(pip, proposaltype=pip.cfg.text_proposal) - assert_code(result, 0) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information : {}'.format(proposalinfo_text)) - - shares0 = clients_consensus[0].staking.get_staking_amount(clients_consensus[0].node) - log.info('Stop node {}'.format(pip.node.node_id)) - pip.node.stop() - wait_block_number(pip_test.node, 3 * pip_test.economic.settlement_size) - balance_before = pip_test.node.eth.getBalance(address, 3 * pip_test.economic.settlement_size - 1) - log.info('Block bumber {} staking address balance {}'.format(3 * pip_test.economic.settlement_size - 1, - balance_before)) - balance_after = pip_test.node.eth.getBalance(address, 3 * pip_test.economic.settlement_size) - - log.info('Block bumber {} staking address balance {}'.format(3 * pip_test.economic.settlement_size, - balance_after)) - assert balance_after == balance_before - - wait_block_number(pip_test.node, 4 * pip_test.economic.settlement_size) - balance_before = pip_test.node.eth.getBalance(address, 4 * pip_test.economic.settlement_size - 1) - log.info('Block bumber {} staking address balance {}'.format(4 * pip_test.economic.settlement_size - 1, - balance_before)) - balance_after = pip_test.node.eth.getBalance(address, 4 * pip_test.economic.settlement_size) - - log.info('Block bumber {} staking address balance {}'.format(4 * pip_test.economic.settlement_size, - balance_after)) - assert balance_after == balance_before - - @pytest.mark.P2 - @allure.title('Node be slashed, verify unstake function') - def test_UNS_PU_008(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 700 - genesis.economicModel.slashing.slashBlocksReward = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - pip_test = clients_consensus[1].pip - address = pip.node.staking_address - balance_before = pip.node.eth.getBalance(address) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', - '1', address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - result = proposal_vote(pip, proposaltype=pip.cfg.param_proposal) - assert_code(result, 0) - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information : {}'.format(proposalinfo_param)) - - result = pip.submitCancel(pip.node.node_id, str(time.time()), 14, proposalinfo_param.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel result : {}'.format(result)) - assert_code(result, 0) - result = proposal_vote(pip, proposaltype=pip.cfg.cancel_proposal) - assert_code(result, 0) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information : {}'.format(proposalinfo_cancel)) - - shares0 = clients_consensus[0].staking.get_staking_amount(clients_consensus[0].node) - log.info('get staking amount {}'.format(shares0)) - log.info('Stop node {}'.format(pip.node.node_id)) - pip.node.stop() - - # wait_block_number(pip_test.node, 3 * pip_test.economic.settlement_size) - # balance_before = pip_test.node.eth.getBalance(address, 3 * pip_test.economic.settlement_size - 1) - # log.info('Block bumber {} staking address balance {}'.format(3 * pip_test.economic.settlement_size - 1, - # balance_before)) - # balance_after = pip_test.node.eth.getBalance(address, 3 * pip_test.economic.settlement_size) - # log.info('Block bumber {} staking address balance {}'.format(3 * pip_test.economic.settlement_size, - # balance_after)) - # assert balance_after == balance_before - - wait_block_number(pip_test.node, 4 * pip_test.economic.settlement_size) - balance_before = pip_test.node.eth.getBalance(address, 4 * pip_test.economic.settlement_size - 1) - log.info('Block bumber {} staking address balance {}'.format(4 * pip_test.economic.settlement_size - 1, - balance_before)) - wait_block_number(pip_test.node, 8 * pip_test.economic.settlement_size) - balance_after = pip_test.node.eth.getBalance(address, 8 * pip_test.economic.settlement_size + 1) - log.info('Block bumber {} staking address balance {}'.format(8 * pip_test.economic.settlement_size, - balance_after)) - assert balance_after == balance_before - - @pytest.mark.P2 - @allure.title('Node be slashed, verify unstake function') - def test_UNS_PU_009_011_013_019(self, new_genesis_env, clients_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 300 - genesis.economicModel.slashing.slashBlocksReward = 10 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_noconsensus[0].pip - pip_test = clients_noconsensus[1].pip - - create_lockup_plan(clients_noconsensus[0]) - address = pip.node.staking_address - submitvpandvote([clients_noconsensus[0]], votingrounds=2) - proposalinfo_version = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo_version)) - wait_block_number(pip.node, proposalinfo_version.get('EndVotingBlock')) - submitcppandvote([clients_noconsensus[0]], [1]) - submittpandvote([clients_noconsensus[0]], 1) - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information : {}'.format(proposalinfo_param)) - proposal_vote(pip, proposaltype=pip.cfg.param_proposal) - log.info('Stop the node {}'.format(pip.node.node_id)) - shares = clients_noconsensus[0].staking.get_staking_amount() - log.info('Node staking amount : {}'.format(shares)) - pip.node.stop() - block_reward, _ = pip_test.economic.get_current_year_reward(pip_test.node, 5) - slashing_amount = block_reward * genesis.economicModel.slashing.slashBlocksReward - amount = shares - slashing_amount - self.verify_amount_block(pip_test, address, amount, value=5) - - @pytest.mark.P2 - @allure.title('Node be slashed, verify unstake function') - def test_UNS_PU_010(self, new_genesis_env, clients_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - genesis.economicModel.gov.versionProposalVoteDurationSeconds = 2000 - genesis.economicModel.slashing.slashBlocksReward = 10 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_noconsensus[0].pip - pip_test = clients_noconsensus[1].pip - - create_lockup_plan(clients_noconsensus[0]) - address = pip.node.staking_address - submitvpandvote([clients_noconsensus[0]], votingrounds=4) - shares = clients_noconsensus[0].staking.get_staking_amount() - log.info('Node staking amount : {}'.format(shares)) - pip.node.stop() - log.info('Stop the node {} {}'.format(pip.node.host, pip.node.p2p_port)) - block_reward, _ = pip_test.economic.get_current_year_reward(pip_test.node, 5) - slashing_amount = block_reward * genesis.economicModel.slashing.slashBlocksReward - amount = shares - slashing_amount - self.verify_amount_block(pip_test, address, amount, value=4, tag=True) - - @pytest.mark.P2 - @allure.title('Node be slashed, verify unstake function') - def test_UNS_PU_012(self, new_genesis_env, clients_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - genesis.economicModel.gov.textProposalVoteDurationSeconds = 480 - genesis.economicModel.slashing.slashBlocksReward = 10 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_noconsensus[0].pip - pip_test = clients_noconsensus[1].pip - - create_lockup_plan(clients_noconsensus[0]) - address = pip.node.staking_address - submittpandvote([clients_noconsensus[0]], 1) - shares = clients_noconsensus[0].staking.get_staking_amount() - log.info('Node staking amount : {}'.format(shares)) - pip.node.stop() - block_reward, _ = pip_test.economic.get_current_year_reward(pip_test.node, 5) - slashing_amount = block_reward * genesis.economicModel.slashing.slashBlocksReward - amount = shares - slashing_amount - self.verify_amount_block(pip_test, address, amount, value=5) - - @pytest.mark.P2 - @allure.title('Node be slashed, verify unstake function') - def test_UNS_PU_014(self, new_genesis_env, clients_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 640 - genesis.economicModel.slashing.slashBlocksReward = 10 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_noconsensus[0].pip - pip_test = clients_noconsensus[1].pip - - create_lockup_plan(clients_noconsensus[0]) - address = pip.node.staking_address - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '1116', - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information : {}'.format(proposalinfo_param)) - result = pip.submitCancel(pip.node.node_id, str(time.time()), 13, proposalinfo_param.get('ProposalID'), - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - result = proposal_vote(pip, proposaltype=pip.cfg.cancel_proposal) - assert_code(result, 0) - shares = clients_noconsensus[0].staking.get_staking_amount() - log.info('Node staking amount : {}'.format(shares)) - pip.node.stop() - block_reward, _ = pip_test.economic.get_current_year_reward(pip_test.node, 5) - slashing_amount = block_reward * genesis.economicModel.slashing.slashBlocksReward - amount = shares - slashing_amount - self.verify_amount_block(pip_test, address, amount, value=5, tag=True) - - @pytest.mark.P2 - @allure.title('Node be slashed, verify unstake function') - def test_UNS_PU_020(self, new_genesis_env, clients_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 2 - genesis.economicModel.slashing.maxEvidenceAge = 1 - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 480 - genesis.economicModel.slashing.slashBlocksReward = 10 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_noconsensus[0].pip - pip_test = clients_noconsensus[1].pip - - create_lockup_plan(clients_noconsensus[0]) - address = pip.node.staking_address - submitppandvote([clients_noconsensus[0]], 3) - shares = clients_noconsensus[0].staking.get_staking_amount() - log.info('Node staking amount : {}'.format(shares)) - pip.node.stop() - block_reward, _ = pip_test.economic.get_current_year_reward(pip_test.node, 5) - slashing_amount = block_reward * genesis.economicModel.slashing.slashBlocksReward - amount = shares - slashing_amount - self.verify_amount_block(pip_test, address, amount, value=5, tag=True) - - def verify_amount(self, pip, address, shares): - self.verify_amount_block(pip, address, shares, value=4, tag=False) - self.verify_amount_block(pip, address, shares, value=5) - - def verify_amount_block(self, pip, address, shares, value, tag=True): - wait_block_number(pip.node, value * pip.economic.settlement_size) - balance_before = pip.node.eth.getBalance(address, value * pip.economic.settlement_size - 1) - balance_before_lockup = pip.node.eth.getBalance(pip.cfg.FOUNDATION_LOCKUP_ADDRESS, - value * pip.economic.settlement_size - 1) - log.info('Block bumber {} staking address balance {}'.format(value * pip.economic.settlement_size - 1, - balance_before)) - log.info('Block bumber {} FOUNDATION_LOCKUP_ADDRESS balance {}'.format(value * pip.economic.settlement_size - 1, - balance_before_lockup)) - balance_after = pip.node.eth.getBalance(address, value * pip.economic.settlement_size) - balance_after_lockup = pip.node.eth.getBalance(pip.cfg.FOUNDATION_LOCKUP_ADDRESS, - value * pip.economic.settlement_size) - log.info('Block bumber {} staking address balance {}'.format(value * pip.economic.settlement_size, - balance_after)) - log.info('Block bumber {} FOUNDATION_LOCKUP_ADDRESS balance {}'.format(value * pip.economic.settlement_size, - balance_after_lockup)) - assert balance_after == balance_before - if tag: - assert balance_after_lockup - balance_before_lockup == shares - else: - assert balance_after_lockup == balance_before_lockup - -# def test_fixbug(new_genesis_env, clients_consensus): -# genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) -# genesis.economicModel.gov.versionProposalVoteDurationSeconds = 1000 -# new_genesis_env.set_genesis(genesis.to_dict()) -# new_genesis_env.deploy_all() -# pip_stop = clients_consensus[0].pip -# pip = clients_consensus[1].pip -# submitvpandvote(clients_consensus, votingrounds=15) -# proprosalinfo = pip.get_effect_proposal_info_of_vote() -# log.info('Proposalinfo : {}'.format(proprosalinfo)) -# log.info('Stop node {}'.format(pip_stop.node.node_id)) -# log.info('stop node nodeid {}'.format(pip_stop.node.node_id)) -# pip_stop.node.stop() -# pip.economic.wait_settlement(pip.node) -# pip.economic.wait_consensus(pip.node, 1) -# verifier_list = get_pledge_list(clients_consensus[1].ppos.getVerifierList) -# log.info('Verifier list : {}'.format(verifier_list)) -# validator_list = get_pledge_list(clients_consensus[1].ppos.getValidatorList) -# log.info('Validator list : {}'.format(validator_list)) -# assert pip_stop.node.node_id not in verifier_list -# assert pip_stop.node.node_id not in validator_list -# wait_block_number(pip.node, proprosalinfo.get('ActiveBlock')) -# assert pip.chain_version == proprosalinfo.get('NewVersion') -# verifier_list = get_pledge_list(clients_consensus[1].ppos.getVerifierList) -# log.info('Verifier list : {}'.format(verifier_list)) -# validator_list = get_pledge_list(clients_consensus[1].ppos.getValidatorList) -# log.info('Validator list : {}'.format(validator_list)) -# assert pip_stop.node.node_id not in verifier_list -# assert pip_stop.node.node_id not in validator_list -# result = clients_consensus[1].ppos.getCandidateInfo(pip_stop.node.node_id) -# log.info('Get nodeid {} candidate infor {}'.format(pip_stop.node.node_id, result)) -# assert_code(result, 301204) -# assert result.get('Ret') == 'Query candidate info failed:Candidate info is not found' - - - diff --git a/cases/tests/govern/test_submit_proposal.py b/cases/tests/govern/test_submit_proposal.py deleted file mode 100644 index dd356d7191..0000000000 --- a/cases/tests/govern/test_submit_proposal.py +++ /dev/null @@ -1,1964 +0,0 @@ -from common.log import log -from dacite import from_dict -from tests.lib import Genesis -import pytest, allure -from tests.lib.utils import wait_block_number, assert_code, get_governable_parameter_value -from tests.lib.client import get_client_by_nodeid -import time -import math -from tests.govern.test_voting_statistics import submitcppandvote, submitcvpandvote, submitppandvote - - -@pytest.mark.P0 -@pytest.mark.compatibility -@allure.title('Submit version proposal function verification') -def test_VP_SU_001(submit_version): - pip = submit_version - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo)) - endvotingblock_count = math.ceil(proposalinfo.get('SubmitBlock') / pip.economic.consensus_size + - proposalinfo.get('EndVotingRounds') - ) * pip.economic.consensus_size - 20 - log.info('Calculated endvoting block{},interface returned endvoting block{}'.format(endvotingblock_count, - proposalinfo.get('EndVotingBlock'))) - assert int(endvotingblock_count) == proposalinfo.get('EndVotingBlock') - assert int(endvotingblock_count) + 21 == proposalinfo.get('ActiveBlock') - - -@pytest.mark.P0 -@pytest.mark.compatibility -@allure.title('Submit cancel proposal function verification') -def test_CP_SU_001_CP_UN_001(submit_cancel): - pip = submit_cancel - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('cancel proposalinfo : {}'.format(proposalinfo)) - endvotingblock_count = math.ceil(proposalinfo.get('SubmitBlock') / pip.economic.consensus_size + - proposalinfo.get('EndVotingRounds') - ) * pip.economic.consensus_size - 20 - log.info('Calculated endvoting block{},interface returned endvoting block{}'.format(endvotingblock_count, - proposalinfo.get('EndVotingBlock'))) - assert int(endvotingblock_count) == proposalinfo.get('EndVotingBlock') - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, proposalinfo.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 302014) - - -class TestsubmitCP: - @pytest.mark.P0 - @allure.title('Submit param proposal function verification') - def test_CP_SU_002_CP_SU_003(self, submit_param): - pip = submit_param - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('param proposalinfo : {}'.format(proposalinfo)) - endvotingrounds_count = (proposalinfo.get('EndVotingBlock') - - math.ceil(pip.node.block_number/pip.economic.consensus_size) * - pip.economic.consensus_size) / pip.economic.consensus_size - log.info('caculated endvoting rounds is {}'.format(endvotingrounds_count)) - result = pip.submitCancel(pip.node.node_id, str(time.time()), endvotingrounds_count + 1, proposalinfo.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 302010) - result = pip.submitCancel(pip.node.node_id, str(time.time()), endvotingrounds_count, proposalinfo.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit cancel param proposal function verification') - def test_CP_SU_002_CP_UN_002(self, submit_cancel_param): - pip = submit_cancel_param - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('cancel proposalinfo : {}'.format(proposalinfo)) - endvotingblock_count = math.ceil(proposalinfo.get('SubmitBlock') / pip.economic.consensus_size + - proposalinfo.get('EndVotingRounds') - ) * pip.economic.consensus_size - 20 - log.info('Calculated endvoting block{},interface returned endvoting block{}'.format(endvotingblock_count, - proposalinfo.get('EndVotingBlock'))) - assert int(endvotingblock_count) == proposalinfo.get('EndVotingBlock') - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, proposalinfo.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 302014) - - -@pytest.mark.P0 -@pytest.mark.compatibility -@allure.title('Submit param proposal function verification') -def test_PP_SU_001_PP_UN_001_VP_UN_003(submit_param): - pip = submit_param - log.info('test chain version : {}'.format(pip.chain_version)) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('param proposalinfo : {}'.format(proposalinfo)) - endvotingblock_count = math.ceil(proposalinfo.get('SubmitBlock') / pip.economic.settlement_size + - pip.economic.pp_vote_settlement_wheel - ) * pip.economic.settlement_size - log.info('Calculated endvoting block {},interface returned endvoting block {}'.format(endvotingblock_count, - proposalinfo.get('EndVotingBlock'))) - assert int(endvotingblock_count) == proposalinfo.get('EndVotingBlock') - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '22', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('There is a voting param proposal,submit param proposal result : {}'.format(result)) - assert_code(result, 302032) - - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 1, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('There is a voting param proposal,submit version proposal result : {}'.format(result)) - assert_code(result, 302032) - -@pytest.mark.P2 -def test_PP_SU_021(new_genesis_env, client_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.config.cbft.period = 1000 * 2 * genesis.config.cbft.amount - genesis.economicModel.common.maxEpochMinutes = 6 - genesis.economicModel.gov.textProposalVoteDurationSeconds = 161 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = client_consensus.pip - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'maxValidators', '99', pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Param proposal information : {}'.format(proposalinfo)) - endvotingblock_count = math.ceil(proposalinfo.get('SubmitBlock') / pip.economic.settlement_size + - pip.economic.pp_vote_settlement_wheel - ) * pip.economic.settlement_size - log.info('Calculated endvoting block {},interface returned endvoting block {}'.format(endvotingblock_count, - proposalinfo.get( - 'EndVotingBlock'))) - assert int(endvotingblock_count) == proposalinfo.get('EndVotingBlock') - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information :{}'.format(proposalinfo)) - endvotingblock_count = math.ceil(proposalinfo.get('SubmitBlock') / pip.economic.consensus_size + 4 - ) * pip.economic.consensus_size - 20 - log.info('calcuted endvoting block {},interface returns {}'.format(endvotingblock_count, - proposalinfo.get('EndVotingBlock'))) - assert int(endvotingblock_count) == proposalinfo.get('EndVotingBlock') - - - -@pytest.mark.P0 -@allure.title('Submit version proposal function verification') -def test_VP_VE_001_to_VP_VE_005(no_vp_proposal): - pip_tmp = no_vp_proposal - result = pip_tmp.submitVersion(pip_tmp.node.node_id, str(time.time()), pip_tmp.cfg.version1, 1, - pip_tmp.node.staking_address, transaction_cfg=pip_tmp.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 302011) - - result = pip_tmp.submitVersion(pip_tmp.node.node_id, str(time.time()), pip_tmp.cfg.version2, 1, - pip_tmp.node.staking_address, transaction_cfg=pip_tmp.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 302011) - - result = pip_tmp.submitVersion(pip_tmp.node.node_id, str(time.time()), pip_tmp.cfg.version3, 1, - pip_tmp.node.staking_address, transaction_cfg=pip_tmp.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 302011) - - result = pip_tmp.submitVersion(pip_tmp.node.node_id, str(time.time()), pip_tmp.chain_version, 1, - pip_tmp.node.staking_address, transaction_cfg=pip_tmp.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 302011) - - result = pip_tmp.submitVersion(pip_tmp.node.node_id, str(time.time()), pip_tmp.cfg.version8, 1, - pip_tmp.node.staking_address, transaction_cfg=pip_tmp.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - - -@pytest.mark.P2 -@allure.title('Nostaking address, submit version proposal function verification') -def test_VP_WA_001(no_vp_proposal): - pip_tmp = no_vp_proposal - address, _ = pip_tmp.economic.account.generate_account(pip_tmp.node.web3, 10**18 * 10000000) - result = pip_tmp.submitVersion(pip_tmp.node.node_id, str(time.time()), pip_tmp.cfg.version5, 1, - address, transaction_cfg=pip_tmp.cfg.transaction_cfg) - log.info('Submit version proposal reuslt : {}'.format(result)) - assert_code(result, 302021) - - -@pytest.mark.P2 -@allure.title('Nostaking address, submit text proposal function verification') -def test_TP_WA_001(client_verifier): - pip = client_verifier.pip - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000000) - result = pip.submitText(pip.node.node_id, str(time.time()), address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal reuslt : {}'.format(result)) - assert_code(result, 302021) - - -@pytest.mark.P0 -@allure.title('submit text proposal function verification') -def test_TP_UN_001(submit_text): - pip = submit_text - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('There is voting text proposal, submit text proposal result : {}'.format(result)) - assert_code(result, 0) - - -@pytest.mark.P0 -@pytest.mark.compatibility -@allure.title('Submit version proposal function verification') -def test_VP_SU_001_VP_UN_001(submit_version): - pip = submit_version - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 1, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('There is voting version proposal, submit version proposal result : {}'.format(result)) - assert_code(result, 302012) - - -@pytest.mark.P0 -@allure.title('There is preactive proposal, submit proposal function verification') -def test_VP_UN_002_CP_ID_002(preactive_proposal_pips, new_genesis_env): - pip = preactive_proposal_pips[0] - proposalinfo = pip.get_effect_proposal_info_of_preactive() - log.info('Get preactive proposal info: {}'.format(proposalinfo)) - - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 1, - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('There is preactive version proposal, submit version proposal result : {}'.format(result)) - assert_code(result, 302013) - - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, proposalinfo.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('there is preactive version proposal, submit cancel proposal result: {}'.format(result)) - assert_code(result, 302017) - - -@pytest.mark.P0 -@allure.title('There is preactive proposal, submit cancel parammeter proposal function verification') -def test_PP_UN_003(preactive_proposal_pips, new_genesis_env): - pip = preactive_proposal_pips[0] - proposalinfo = pip.get_effect_proposal_info_of_preactive() - log.info('Get preactive proposal info: {}'.format(proposalinfo)) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', - '84', pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('there is preactive version proposal, submit cancel param proposal result: {}'.format(result)) - assert_code(result, 302013) - - -class TestEndVotingRounds: - def update_setting(self, new_genesis_env, pip, value=0): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.versionProposalVoteDurationSeconds = 2 * pip.economic.consensus_size + value - genesis.economicModel.gov.textProposalVoteDurationSeconds = 2 * pip.economic.consensus_size + value - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - - @pytest.mark.P1 - @allure.title('Submit version and text proposal function verification--endvoting rounds') - def test_VP_CR_001_VP_CR_002_VP_CR_007_TP_TE_002(self, new_genesis_env, client_verifier): - ''' - Proposal vote duration set consensus size's accompanying number +1 - :param pip_env: - :param pip: - :return: - ''' - pip = client_verifier.pip - self.update_setting(new_genesis_env, pip, value=1) - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 3, - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('endvoting rounds is three, subtmit version proposal result : {}'.format(result)) - assert_code(result, 302010) - - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 0, - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('endvoting rounds is zero, subtmit version proposal result : {}'.format(result)) - assert_code(result, 302009) - - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 2, - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('endvoting rounds is two, subtmit version proposal result : {}'.format(result)) - assert_code(result, 0) - - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information :{}'.format(proposalinfo)) - endvotingblock_count = math.ceil(proposalinfo.get('SubmitBlock') / pip.economic.consensus_size + 2 - ) * pip.economic.consensus_size - 20 - log.info('calcuted endvoting block {},interface returns {}'.format(endvotingblock_count, - proposalinfo.get('EndVotingBlock'))) - assert int(endvotingblock_count) == proposalinfo.get('EndVotingBlock') - - @pytest.mark.P1 - @allure.title('Submit version and text proposal function verification--endvoting rounds') - def test_VP_CR_003_VP_CR_004_VP_CR_007_TP_TE_003(self, new_genesis_env, client_verifier): - pip = client_verifier.pip - self.update_setting(new_genesis_env, pip, value=-1) - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 2, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('endvoting rounds is two, subtmit version proposal result : {}'.format(result)) - assert_code(result, 302010) - - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 0, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Endvoting rounds is zero, subtmit version proposal result : {}'.format(result)) - assert_code(result, 302009) - - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 1, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Endvoting rounds is one, subtmit version proposal result : {}'.format(result)) - assert_code(result, 0) - - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information : {}'.format(proposalinfo)) - endvotingblock_count = math.ceil(proposalinfo.get('SubmitBlock') / pip.economic.consensus_size + 1 - ) * pip.economic.consensus_size - 20 - log.info('Calcuted endvoting block {},interface return {}'.format(endvotingblock_count, - proposalinfo.get('EndVotingBlock'))) - assert int(endvotingblock_count) == proposalinfo.get('EndVotingBlock') - - @pytest.mark.P1 - @pytest.mark.compatibility - @allure.title('Submit version and text proposal function verification--endvoting rounds') - def test_VP_CR_005_VP_CR_006_TP_TE_001(self, new_genesis_env, client_verifier): - pip = client_verifier.pip - self.update_setting(new_genesis_env, pip) - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 3, - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Endvoting rounds is three, subtmit version proposal result : {}'.format(result)) - assert_code(result, 302010) - - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 0, - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Endvoting rounds is zero, subtmit version proposal result : {}'.format(result)) - assert_code(result, 302009) - - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 2, - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Endvoting rounds is two, subtmit version proposal result : {}'.format(result)) - assert_code(result, 0) - - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo)) - endvotingblock_count = math.ceil(proposalinfo.get('SubmitBlock') / pip.economic.consensus_size + 2 - ) * pip.economic.consensus_size - 20 - log.info('calcuted endvoting block {},interface return {}'.format(endvotingblock_count, - proposalinfo.get('EndVotingBlock'))) - assert int(endvotingblock_count) == proposalinfo.get('EndVotingBlock') - - proosalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('text proposalinfo: {}'.format(proosalinfo)) - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, proosalinfo.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('submit cancel result: {}'.format(result)) - assert_code(result, 302016) - - -class TestNoVerifierSubmitProposal: - @pytest.mark.P0 - @allure.title('New node submit version and text proposal function verification') - def test_VP_PR_002_TP_PR_002(self, no_vp_proposal, client_new_node): - pip = client_new_node.pip - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000000) - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 1, address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('New node submit version proposal : {}'.format(result)) - assert_code(result, 302022) - - result = pip.submitText(pip.node.node_id, str(time.time()), address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('New node submit text proposal : {}'.format(result)) - assert_code(result, 302022) - - @pytest.mark.P0 - @allure.title('Candidate node submit version and text proposal function verification') - def test_VP_PR_001_TP_PR_001(self, client_candidate): - pip = client_candidate.pip - result = pip.submitVersion(pip.node.node_id, str(time.time()), - pip.cfg.version5, 1, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Candidate node {} submit version proposal result : {}'.format(pip.node.node_id, result)) - assert_code(result, 302022) - - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('candidate node {} submit text proposal result : {}'.format(pip.node.node_id, result)) - assert_code(result, 302022) - - @pytest.mark.P2 - @allure.title('Abnormal node submit proposal') - def test_VP_PR_003_VP_PR_004_TP_PR_003_TP_PR_004(self, client_verifier): - address = client_verifier.node.staking_address - result = client_verifier.staking.withdrew_staking(address) - log.info('Node {} withdrew staking result : {}'.format(client_verifier.node.node_id, result)) - assert_code(result, 0) - result = client_verifier.pip.submitVersion(client_verifier.node.node_id, str(time.time()), - client_verifier.pip.cfg.version5, 1, address, - transaction_cfg=client_verifier.pip.cfg.transaction_cfg) - log.info('Node exiting submit version proposal :{}'.format(result)) - assert_code(result, 302020) - - result = client_verifier.pip.submitText(client_verifier.node.node_id, str(time.time()), address, - transaction_cfg=client_verifier.pip.cfg.transaction_cfg) - log.info('Node exiting submit text proposal : {}'.format(result)) - assert_code(result, 302020) - - client_verifier.economic.wait_settlement(client_verifier.node, - client_verifier.economic.unstaking_freeze_ratio) - result = client_verifier.pip.submitVersion(client_verifier.node.node_id, str(time.time()), - client_verifier.pip.cfg.version5, 1, address, - transaction_cfg=client_verifier.pip.cfg.transaction_cfg) - log.info('Node exited submit version proposal : {}'.format(result)) - assert_code(result, 302022) - - client_verifier.economic.wait_settlement(client_verifier.node, - client_verifier.economic.unstaking_freeze_ratio) - result = client_verifier.pip.submitText(client_verifier.node.node_id, str(time.time()), address, - transaction_cfg=client_verifier.pip.cfg.transaction_cfg) - log.info('Node exited submit text proposal : {}'.format(result)) - assert_code(result, 302022) - - -class TestSubmitCancel: - @pytest.mark.P0 - @allure.title('Nostaking address submit cancel proposal') - def test_CP_WA_001(self, submit_version): - pip = submit_version - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo)) - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, proposalinfo.get('ProposalID'), - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 302021) - - @pytest.mark.P0 - @allure.title('New node submit cancel proposal') - def test_CP_PR_001(self, new_node_has_proposal): - pip = new_node_has_proposal - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo)) - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, - proposalinfo.get('ProposalID'), - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal resullt : {}'.format(result)) - assert_code(result, 302022) - - @pytest.mark.P0 - @allure.title('Candidate node submit cancel proposal') - def test_CP_PR_002(self, candidate_has_proposal): - pip = candidate_has_proposal - proposalinfo = pip.get_effect_proposal_info_of_vote() - if not proposalinfo: - time.sleep(10) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get proposal information {}'.format(proposalinfo)) - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, - proposalinfo.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Candidate submit cancel proposal result : {}'.format(result)) - assert_code(result, 302022) - - @pytest.mark.P2 - @allure.title('Abnormal node submit cancel proposal') - def test_CP_PR_003_CP_PR_004(self, new_genesis_env, client_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.versionProposalVoteDurationSeconds = 10000 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = client_consensus.pip - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 20, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('proposalinfo: {}'.format(proposalinfo)) - client = client_consensus - address = pip.node.staking_address - result = client.staking.withdrew_staking(address) - log.info('nodeid: {} withdrewstaking result: {}'.format(client.node.node_id, result)) - assert_code(result, 0) - result = client.pip.submitCancel(client.node.node_id, str(time.time()), 1, - proposalinfo.get('ProposalID'), address, - transaction_cfg=client.pip.cfg.transaction_cfg) - log.info('node exiting,cancel proposal result: {}'.format(result)) - assert_code(result, 302020) - - client.economic.wait_settlement(client.node, client.economic.unstaking_freeze_ratio) - result = client.pip.submitCancel(client.node.node_id, str(time.time()), 1, - proposalinfo.get('ProposalID'), address, - transaction_cfg=client.pip.cfg.transaction_cfg) - log.info('exited node,cancel proposal result: {}'.format(result)) - assert_code(result, 302022) - - @pytest.mark.P0 - @allure.title('Submit version proposal function verification--endvoting rounds') - def test_CP_CR_001_CP_CR_002(self, submit_version): - pip = submit_version - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('proposalinfo: {}'.format(proposalinfo)) - endvoting_rounds = (proposalinfo.get('EndVotingBlock') + 20 - math.ceil( - pip.node.block_number / pip.economic.consensus_size) * pip.economic.consensus_size - ) / pip.economic.consensus_size - result = pip.submitCancel(pip.node.node_id, str(time.time()), endvoting_rounds, - proposalinfo.get('ProposalID'), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('endvoting_rounds:{}, cancel proposal result:{}'.format(endvoting_rounds, result)) - assert_code(result, 302010) - - result = pip.submitCancel(pip.node.node_id, str(time.time()), endvoting_rounds + 1, - proposalinfo.get('ProposalID'), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('endvoting_rounds:{}, cancel proposal result:{}'.format(endvoting_rounds + 1, result)) - assert_code(result, 302010) - - @pytest.mark.P0 - @allure.title('Submit cancel proposal function verification--ineffective proposal id') - def test_CP_ID_001(self, no_vp_proposal): - pip = no_vp_proposal - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, - '0x49b83cfc4b99462f7131d14d80c73b6657237753cd1e878e8d62dc2e9f574123', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('cancel proposal result: {}'.format(result)) - assert_code(result, 302015) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_CP_ID_004_CP_ID_003(self, new_genesis_env, client_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = client_consensus.pip - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '123', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit parameter proposal result : {}'.format(result)) - assert_code(result, 0) - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get parameter proposal information : {}'.format(proposalinfo_param)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information : {}'.format(proposalinfo_text)) - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, proposalinfo_text.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - wait_block_number(pip.node, proposalinfo_param.get('EndVotingBlock')) - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, proposalinfo_param.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 302017) - - -class TestPP: - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_001_PP_SU_002(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - client = get_client_by_nodeid(pip.node.node_id, all_clients) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '1.1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '-1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '50000', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', 1, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '1000000', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', - str(get_governable_parameter_value(client, 'slashBlocksReward')), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302034) - - if pip.economic.slash_blocks_reward != 0: - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '0', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_002(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - if str(get_governable_parameter_value(all_clients[0], 'slashBlocksReward')) != 49999: - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '49999', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_003_PP_SU_004(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - client = get_client_by_nodeid(pip.node.node_id, all_clients) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'maxEvidenceAge', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'maxEvidenceAge', '1.1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'maxEvidenceAge', '-1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'maxEvidenceAge', '0', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'maxEvidenceAge', 1, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'maxEvidenceAge', - str(get_governable_parameter_value(client, 'maxEvidenceAge')), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302034) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'maxEvidenceAge', - str(get_governable_parameter_value(client, 'unStakeFreezeDuration')), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - if int(get_governable_parameter_value(client, 'maxEvidenceAge')) != 1: - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'maxEvidenceAge', '1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_004(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - if str(get_governable_parameter_value(all_clients[0], 'maxEvidenceAge')) != str( - pip.economic.unstaking_freeze_ratio - 1) and str(pip.economic.unstaking_freeze_ratio - 1) <= str( - get_governable_parameter_value(all_clients[0], 'unStakeFreezeDuration')): - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'maxEvidenceAge', - str(pip.economic.unstaking_freeze_ratio - 1), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_005_PP_SU_006(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - client = get_client_by_nodeid(pip.node.node_id, all_clients) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashFractionDuplicateSign', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashFractionDuplicateSign', '1.1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashFractionDuplicateSign', '-1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashFractionDuplicateSign', '0', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashFractionDuplicateSign', 1, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashFractionDuplicateSign', - '10001', pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashFractionDuplicateSign', - str(get_governable_parameter_value(client, 'slashFractionDuplicateSign')), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302034) - - if int(get_governable_parameter_value(client, 'maxEvidenceAge')) != 1: - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashFractionDuplicateSign', '1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_006(self, no_vp_proposal): - pip = no_vp_proposal - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashFractionDuplicateSign', '10000', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_007_PP_SU_008(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - client = get_client_by_nodeid(pip.node.node_id, all_clients) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'duplicateSignReportReward', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'duplicateSignReportReward', '1.1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'duplicateSignReportReward', '-1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'duplicateSignReportReward', '0', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'duplicateSignReportReward', 1, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'duplicateSignReportReward', - '81', pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'duplicateSignReportReward', - str(get_governable_parameter_value(client, 'duplicateSignReportReward')), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302034) - - if int(get_governable_parameter_value(client, 'duplicateSignReportReward')) != 1: - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'duplicateSignReportReward', '1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_008(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - if int(get_governable_parameter_value(all_clients[0], 'duplicateSignReportReward')) != 80: - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'duplicateSignReportReward', - '80', pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_009_PP_SU_010(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - client = get_client_by_nodeid(pip.node.node_id, all_clients) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'stakeThreshold', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - value = 10**18 * 10000 + 0.1 - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'stakeThreshold', str(value), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - value = -10**18 * 10000 - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'stakeThreshold', str(value), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'stakeThreshold', '0', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'stakeThreshold', 10**18 * 10000, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - value = 10**18 * 10000 - 1 - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'stakeThreshold', - str(value), pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - value = 10**18 * 1000000 + 1 - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'stakeThreshold', - str(value), pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'stakeThreshold', - str(get_governable_parameter_value(client, 'stakeThreshold')), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302034) - - if int(get_governable_parameter_value(client, 'stakeThreshold')) != 10**18 * 10000: - value = 10**18 * 10000 - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'stakeThreshold', str(value), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_010(self, no_vp_proposal): - pip = no_vp_proposal - value = 10**18 * 100000 - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'stakeThreshold', - str(value), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_011_PP_SU_012(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - client = get_client_by_nodeid(pip.node.node_id, all_clients) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'operatingThreshold', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - value = 10**18 * 1 + 0.5 - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'operatingThreshold', str(value), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - value = -10**18 * 1 - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'operatingThreshold', str(value), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'operatingThreshold', '0', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'operatingThreshold', '0.1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - value = 10**18 * 1 - 1 - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'operatingThreshold', - str(value), pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - value = 10**18 * 10000 + 1 - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'operatingThreshold', - str(value), pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'operatingThreshold', - str(get_governable_parameter_value(client, 'operatingThreshold')), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302034) - - if int(get_governable_parameter_value(client, 'operatingThreshold')) != 10**18 * 1: - value = 10**18 * 1 - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'operatingThreshold', str(value), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_012(self, no_vp_proposal): - pip = no_vp_proposal - value = 10**18 * 10000 - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'operatingThreshold', - str(value), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_013_PP_SU_014(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - client = get_client_by_nodeid(pip.node.node_id, all_clients) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'unStakeFreezeDuration', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'unStakeFreezeDuration', '10.5', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'unStakeFreezeDuration', '-100', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'unStakeFreezeDuration', '0', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'unStakeFreezeDuration', 11, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'unStakeFreezeDuration', - '1113', pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'unStakeFreezeDuration', - str(get_governable_parameter_value(client, 'unStakeFreezeDuration')), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302034) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'unStakeFreezeDuration', - str(get_governable_parameter_value(client, 'maxEvidenceAge')), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - if int(get_governable_parameter_value(client, 'unStakeFreezeDuration')) != 112: - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'unStakeFreezeDuration', '112', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test__PP_SU_014(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - if int(get_governable_parameter_value(all_clients[0], 'unStakeFreezeDuration')) != str( - int(get_governable_parameter_value(all_clients[0], 'maxEvidenceAge')) - 1): - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'unStakeFreezeDuration', - str(int(get_governable_parameter_value(all_clients[0], 'maxEvidenceAge')) + 5), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_015_PP_SU_016(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - client = get_client_by_nodeid(pip.node.node_id, all_clients) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'maxValidators', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'maxValidators', '30.5', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'maxValidators', '-100', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'maxValidators', '0', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'maxValidators', 25, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'maxValidators', - '3', pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'maxValidators', - '202', pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'maxValidators', - str(get_governable_parameter_value(client, 'maxValidators')), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302034) - - if int(get_governable_parameter_value(client, 'maxValidators')) != 4: - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'maxValidators', '4', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_016(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - if int(get_governable_parameter_value(all_clients[0], 'maxValidators')) != 201: - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'maxValidators', '201', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_016(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - client = get_client_by_nodeid(pip.node.node_id, all_clients) - if int(get_governable_parameter_value(client, 'maxValidators')) != 201: - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'maxValidators', '201', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_017_PP_SU_018(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - client = get_client_by_nodeid(pip.node.node_id, all_clients) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'block', 'maxBlockGasLimit', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'block', 'maxBlockGasLimit', '9424776.5', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'block', 'maxBlockGasLimit', '-9424776', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'block', 'maxBlockGasLimit', '0', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'block', 'maxBlockGasLimit', 9424776, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'block', 'maxBlockGasLimit', - '4712387', pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'block', 'maxBlockGasLimit', - '630000001', pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'block', 'maxBlockGasLimit', - str(get_governable_parameter_value(client, 'maxBlockGasLimit')), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302034) - - if int(get_governable_parameter_value(client, 'maxBlockGasLimit')) != 9424776: - result = pip.submitParam(pip.node.node_id, str(time.time()), 'block', 'maxBlockGasLimit', '9424776', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_018(self, no_vp_proposal): - pip = no_vp_proposal - result = pip.submitParam(pip.node.node_id, str(time.time()), 'block', 'maxBlockGasLimit', '210000000', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_022(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.zeroProduceNumberThreshold = 2 - genesis.economicModel.slashing.zeroProduceCumulativeTime = 3 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = clients_consensus[0] - pip = client.pip - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceCumulativeTime', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceCumulativeTime', '1.1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceCumulativeTime', '-1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceCumulativeTime', '0', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceCumulativeTime', 4, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceCumulativeTime', - str(pip.economic.consensus_wheel + 1), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceCumulativeTime', - str(int(get_governable_parameter_value(client, 'zeroProduceNumberThreshold')) - 1), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceCumulativeTime', - str(pip.economic.consensus_wheel), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_023(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.zeroProduceNumberThreshold = 2 - genesis.economicModel.slashing.zeroProduceCumulativeTime = 3 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = clients_consensus[0] - pip = client.pip - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceNumberThreshold', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceNumberThreshold', '1.1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceNumberThreshold', '-2', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceNumberThreshold', '0', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceNumberThreshold', 1, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceNumberThreshold', - str(int(get_governable_parameter_value(client, 'zeroProduceCumulativeTime')) + 1), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceNumberThreshold', - str(get_governable_parameter_value(client, 'zeroProduceCumulativeTime')), - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_023_2(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.zeroProduceNumberThreshold = 2 - genesis.economicModel.slashing.zeroProduceCumulativeTime = 3 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = clients_consensus[0] - pip = client.pip - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceNumberThreshold', - '1', pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_026(self, no_vp_proposal, client_consensus): - pip = no_vp_proposal - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerMaxChangeRange', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerMaxChangeRange', '1.1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerMaxChangeRange', '-2', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerMaxChangeRange', '0', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerMaxChangeRange', 6, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerMaxChangeRange', - '2001', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerMaxChangeRange', - '2000', - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_026_2(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.rewardPerMaxChangeRange = 2 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = clients_consensus[0] - pip = client.pip - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerMaxChangeRange', - '2', pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 302034) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerMaxChangeRange', - '1', pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_027(self, no_vp_proposal, client_consensus): - pip = no_vp_proposal - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerChangeInterval', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerChangeInterval', '1.1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerChangeInterval', '-2', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerChangeInterval', '1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerChangeInterval', '0', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerChangeInterval', 6, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerChangeInterval', - str(pip.economic.additional_cycle_time * 60 //( - pip.economic.settlement_size * pip.economic.interval) + 1), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerChangeInterval', - str(pip.economic.additional_cycle_time * 60 //( - pip.economic.settlement_size * pip.economic.interval)), - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302032) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_027_2(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.rewardPerChangeInterval = 3 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = clients_consensus[0] - pip = client.pip - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerChangeInterval', - '3', pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 302034) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'staking', 'rewardPerChangeInterval', - '2', pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_028(self, no_vp_proposal, client_consensus): - pip = no_vp_proposal - result = pip.submitParam(pip.node.node_id, str(time.time()), 'reward', 'increaseIssuanceRatio', '', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'reward', 'increaseIssuanceRatio', '1.1', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'reward', 'increaseIssuanceRatio', '-2', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'reward', 'increaseIssuanceRatio', '2001', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'reward', 'increaseIssuanceRatio', 6, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 3) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'reward', 'increaseIssuanceRatio', '2000', - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_028_2(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.reward.increaseIssuanceRatio = 3 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = clients_consensus[0] - pip = client.pip - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'reward', 'increaseIssuanceRatio', - '3', pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 302034) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'reward', 'increaseIssuanceRatio', - '0', pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - - @pytest.mark.P2 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_024_UP_PA_008_PP_VO_004(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = clients_consensus[0] - pip = client.pip - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceNumberThreshold', - '4',pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('zeroProduceNumberThreshold {} submit param proposal result :{}'.format(4, result)) - assert_code(result, 3) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceCumulativeTime', - '4', pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - proposal_info = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Param praposal info : {}'.format(proposal_info)) - for client in clients_consensus: - pip = client.pip - result = pip.vote(pip.node.node_id, proposal_info.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address) - log.info('node {} vote result {}'.format(pip.node.node_id, result)) - assert_code(result, 0) - wait_block_number(pip.node, proposal_info.get('EndVotingBlock')) - value = client.pip.pip.getGovernParamValue('slashing', 'zeroProduceCumulativeTime').get('Ret') - log.info('zeroProduceCumulativeTime new value : {}'.format(value)) - assert int(value) == 4 - - value, oldvalue = get_governable_parameter_value(client, 'zeroProduceCumulativeTime', flag=1) - assert value == 4 - assert oldvalue == 1 - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceNumberThreshold', - '4', pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - - @pytest.mark.P2 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_025_UP_PA_009_PP_VO_005(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 0 - genesis.economicModel.slashing.zeroProduceNumberThreshold = 2 - genesis.economicModel.slashing.zeroProduceCumulativeTime = 3 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = clients_consensus[0] - pip = client.pip - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceCumulativeTime', - '1',pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('zeroProduceCumulativeTime {} submit param proposal result :{}'.format(1, result)) - assert_code(result, 3) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceNumberThreshold', - '1', pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - proposal_info = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Param praposal info : {}'.format(proposal_info)) - for client in clients_consensus: - pip = client.pip - result = pip.vote(pip.node.node_id, proposal_info.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address) - log.info('node {} vote result {}'.format(pip.node.node_id, result)) - assert_code(result, 0) - wait_block_number(pip.node, proposal_info.get('EndVotingBlock')) - value = client.pip.pip.getGovernParamValue('slashing', 'zeroProduceNumberThreshold').get('Ret') - log.info('zeroProduceNumberThreshold new value : {}'.format(value)) - assert int(value) == 1 - value, oldvalue = get_governable_parameter_value(client, 'zeroProduceNumberThreshold', flag=1) - assert value == 1 - assert oldvalue == 2 - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'zeroProduceCumulativeTime', - '1', pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_019(self, no_vp_proposal): - pip = no_vp_proposal - result = pip.submitParam(pip.node.node_id, str(time.time()), 'block', '', '1', - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302031) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'block', 'unStakeFreezeDuration', '100', - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302031) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'SlashBlocksReward', '100', - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302031) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slash BlocksReward', '100', - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302031) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocks./,.Reward', '100', - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302031) - - @pytest.mark.P0 - @allure.title('Submit parammeter proposal function verification') - def test_PP_SU_020(self, no_vp_proposal): - pip = no_vp_proposal - result = pip.submitParam(pip.node.node_id, str(time.time()), '', 'slashBlocksReward', '100', - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302031) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'Slashing', 'slashBlocksReward', '100', - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302031) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'sLashing', 'SlashBlocksReward', '100', - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302031) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing123', 'slash BlocksReward', '100', - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302031) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 's lashing', 'slashBlocks./,.Reward', '100', - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302031) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 's.,.lashing', 'slashBlocks./,.Reward', '100', - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 302031) - - -class TestSubmitPPAbnormal: - @pytest.mark.P0 - @allure.title('New node submit parammeter proposal function verification') - def test_PP_PR_002(self, no_vp_proposal, client_new_node): - pip = client_new_node.pip - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '88', - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('new node submit param proposal result : {}'.format(result)) - assert_code(result, 302022) - - @pytest.mark.P0 - @allure.title('Candidate submit parammeter proposal function verification') - def test_PP_PR_001(self, no_vp_proposal, client_candidate): - pip = client_candidate.pip - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '87', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('candidate submit param proposal result :{}'.format(result)) - assert_code(result, 302022) - - @pytest.mark.P0 - @allure.title('There is a voting version proposal, submit parammeter proposal function verification') - def test_PP_UN_002(self, submit_version): - pip = submit_version - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '99', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('There is voting version proposal, submit a param proposal : {}'.format(result)) - assert_code(result, 302012) - - @pytest.mark.P2 - @allure.title('Abnormal submit parammeter proposal function verification') - def test_PP_PR_003_PP_PR_004(self, no_vp_proposal, all_clients): - pip = no_vp_proposal - client = get_client_by_nodeid(pip.node.node_id, all_clients) - address = pip.node.staking_address - result = client.staking.withdrew_staking(address) - log.info('nodeid: {} withdrewstaking result: {}'.format(client.node.node_id, result)) - assert_code(result, 0) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', - '86', address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('node exiting,param proposal result: {}'.format(result)) - assert_code(result, 302020) - - client.economic.wait_settlement(client.node, - client.economic.unstaking_freeze_ratio) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', - '86', address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('exited node,cancel proposal result: {}'.format(result)) - assert_code(result, 302022) - - @pytest.mark.P2 - @allure.title('Not staking address submit parammeter proposal function verification') - def test_PP_WA_001(self, no_vp_proposal): - pip = no_vp_proposal - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000) - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '87', - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('candidate submit param proposal result :{}'.format(result)) - assert_code(result, 302021) - -class TestSubmitAgain: - @pytest.mark.P2 - @allure.title('Submit parammeter proposal function verification') - def test_PP_TI_001_002(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - submitcppandvote(clients_consensus[:3], [1, 1, 1]) - pip = clients_consensus[0].pip - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Param proposal information : {}'.format(proposalinfo_param)) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal information : {}'.format(proposalinfo_cancel)) - wait_block_number(pip.node, proposalinfo_cancel.get('EndVotingBlock')) - assert_code(pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 2) - assert_code(pip.get_status_of_proposal(proposalinfo_param.get('ProposalID')), 6) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '998', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Param proposal information : {}'.format(proposalinfo_param)) - wait_block_number(pip.node, proposalinfo_param.get('EndVotingBlock')) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '998', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P2 - @allure.title('Submit parammeter proposal function verification') - def test_VP_TI_001_002(self, no_vp_proposal, clients_verifier): - submitcvpandvote(clients_verifier[:3], 1, 1, 1) - pip = clients_verifier[0].pip - proposalinfo_version = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Version proposal information : {}'.format(proposalinfo_version)) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal information : {}'.format(proposalinfo_cancel)) - wait_block_number(pip.node, proposalinfo_cancel.get('EndVotingBlock')) - assert_code(pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 2) - assert_code(pip.get_status_of_proposal(proposalinfo_version.get('ProposalID')), 6) - - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 1, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_version = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Version proposal information : {}'.format(proposalinfo_version)) - wait_block_number(pip.node, proposalinfo_version.get('EndVotingBlock')) - - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 1, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - - -class TestPIPVerify: - @pytest.mark.P0 - @allure.title('Submit proposal function verification---PIPID') - def test_VP_PIP_001_003_TP_PI_001_003_CP_PI_001_003_CP_PI_001_003(self, no_vp_proposal): - pip = no_vp_proposal - pip_id_text = str(time.time()) - result = pip.submitText(pip.node.node_id, pip_id_text, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - - result = pip.submitVersion(pip.node.node_id, pip_id_text, pip.cfg.version5, 1, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same PIPID, submit version proposal result : {}'.format(result)) - assert_code(result, 302008) - - result = pip.submitText(pip.node.node_id, pip_id_text, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same PIPID, submit text proposal result : {}'.format(result)) - assert_code(result, 302008) - - result = pip.submitParam(pip.node.node_id, pip_id_text, 'slashing', 'slashBlocksReward', '889', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same PIPID, submit param proposal result : {}'.format(result)) - assert_code(result, 302008) - - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 3, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Differ PIPID, submit version proposal result : {}'.format(result)) - assert_code(result, 0) - - proposalinfo_version = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Version proposal information : {}'.format(proposalinfo_version)) - pip_id_version = proposalinfo_version.get('PIPID') - - result = pip.submitCancel(pip.node.node_id, pip_id_text, 1, proposalinfo_version.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same PIPID, submit cancel proposal result : {}'.format(result)) - assert_code(result, 302008) - - result = pip.submitCancel(pip.node.node_id, pip_id_version, 1, proposalinfo_version.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same PIPID, submit cancel proposal result : {}'.format(result)) - assert_code(result, 302008) - - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, proposalinfo_version.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Differ PIPID, submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Version proposal information : {}'.format(proposalinfo_cancel)) - pip_id_cancel = proposalinfo_cancel.get('PIPID') - - result = pip.submitText(pip.node.node_id, pip_id_version, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same PIPID, submit text proposal result : {}'.format(result)) - assert_code(result, 302008) - - result = pip.submitText(pip.node.node_id, pip_id_cancel, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same PIPID, submit text proposal result : {}'.format(result)) - assert_code(result, 302008) - - wait_block_number(pip.node, proposalinfo_version.get('EndVotingBlock')) - result = pip.submitVersion(pip.node.node_id, pip_id_version, pip.cfg.version5, 1, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same PIPID, submit version proposal result : {}'.format(result)) - assert_code(result, 0) - - proposalinfo_version = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Version proposal information : {}'.format(proposalinfo_version)) - wait_block_number(pip.node, proposalinfo_version.get('EndVotingBlock')) - result = pip.submitParam(pip.node.node_id, pip_id_version, 'slashing', 'slashBlocksReward', '889', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Differ PIPID, submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Param proposal information : {}'.format(proposalinfo_param)) - - result = pip.submitCancel(pip.node.node_id, pip_id_cancel, 1, proposalinfo_param.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same PIPID, submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal information : {}'.format(proposalinfo_cancel)) - - wait_block_number(pip.node, proposalinfo_cancel.get('EndVotingBlock')) - result = pip.submitText(pip.node.node_id, pip_id_cancel, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same PIPID, submit text proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P0 - @allure.title('Submit proposal function verification---PIPID') - def test_VP_PIP_002_TP_PI_002_CP_PI_002_CP_PI_002(self, no_vp_proposal, clients_verifier): - pip = clients_verifier[0].pip - submitcvpandvote(clients_verifier, 1, 1, 1, 1) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - pip_id = proposalinfo.get('PIPID') - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 2) - result = pip.submitText(pip.node.node_id, pip_id, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same pipid, submit text proposal result : {}'.format(result)) - assert_code(result, 302008) - result = pip.submitVersion(pip.node.node_id, pip_id, pip.cfg.version5, 1, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same pipid, submit text proposal result : {}'.format(result)) - assert_code(result, 302008) - - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 2, - pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Differ pipid, submit version proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_version = pip.get_effect_proposal_info_of_vote() - log.info('Proposal information : {}'.format(proposalinfo_version)) - result = pip.submitCancel(pip.node.node_id, pip_id, 1, proposalinfo_version.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same pipid, submit cancel proposal result : {}'.format(result)) - assert_code(result, 302008) - - wait_block_number(pip.node, proposalinfo_version.get('EndVotingBlock')) - result = pip.submitParam(pip.node.node_id, pip_id, 'slashing', 'slashBlocksReward', '19', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same pipid, submit param proposal result : {}'.format(result)) - assert_code(result, 302008) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '19', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Differ pipid, submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information : {}'.format(proposalinfo_param)) - - result = pip.submitCancel(pip.node.node_id, pip_id, 1, proposalinfo_param.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Same pipid, submit cancel proposal result : {}'.format(result)) - assert_code(result, 302008) - - -@pytest.mark.P0 -@allure.title('Submit cancel proposal function verification---endvoting rounds') -def test_CP_CR_003_CP_CR_004(submit_param): - pip = submit_param - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('proposalinfo: {}'.format(proposalinfo)) - endvoting_rounds = (proposalinfo.get('EndVotingBlock') - math.ceil( - pip.node.block_number / pip.economic.consensus_size) * pip.economic.consensus_size - ) / pip.economic.consensus_size - result = pip.submitCancel(pip.node.node_id, str(time.time()), endvoting_rounds + 1, - proposalinfo.get('ProposalID'), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('endvoting_rounds:{}, cancel proposal result:{}'.format(endvoting_rounds, result)) - assert_code(result, 302010) - - result = pip.submitCancel(pip.node.node_id, str(time.time()), endvoting_rounds, - proposalinfo.get('ProposalID'), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('endvoting_rounds:{}, cancel proposal result:{}'.format(endvoting_rounds + 1, result)) - assert_code(result, 0) - - -class TestGas: - @pytest.mark.P2 - @allure.title('Submit version proposal function verification---gasprice') - def test_VP_GP_001_VP_GP_002(self, no_vp_proposal): - pip = no_vp_proposal - transaction_cfg = {"gasPrice": 2100000000000000 - 1} - try: - pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 1, - pip.node.staking_address, transaction_cfg=transaction_cfg) - except ValueError as e: - assert e.args[0].get('message') == "the tx data is invalid: Invalid parameter:gas price is lower than minimum" - - transaction_cfg = {"gasPrice": 2100000000000000} - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 1, - pip.node.staking_address, transaction_cfg=transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P2 - @allure.title('Submit param proposal function verification---gasprice') - def test_PP_GP_001_PP_GP_002(self, no_vp_proposal): - pip = no_vp_proposal - transaction_cfg = {"gasPrice": 2000000000000000 - 1} - try: - pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '123', - pip.node.staking_address, transaction_cfg=transaction_cfg) - except ValueError as e: - assert e.args[0].get('message') == "the tx data is invalid: Invalid parameter:gas price is lower than minimum" - - transaction_cfg = {"gasPrice": 2000000000000000} - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '123', - pip.node.staking_address, transaction_cfg=transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P2 - @allure.title('Submit text proposal function verification---gasprice') - def test_TP_GP_001_TP_GP_002(self, client_verifier): - pip = client_verifier.pip - transaction_cfg = {"gasPrice": 1500000000000000 - 1} - try: - pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=transaction_cfg) - except ValueError as e: - assert e.args[0].get('message') == "the tx data is invalid: Invalid parameter:gas price is lower than minimum" - - transaction_cfg = {"gasPrice": 1500000000000000} - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P2 - @allure.title('Submit cancel proposal function verification---gas') - def test_CP_GP_001_CP_GP_002(self, no_vp_proposal): - pip = no_vp_proposal - transaction_cfg = {"gasPrice": 3000000000000000 - 1, "gas": 100000} - try: - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 3, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get proposal information {}'.format(proposalinfo)) - pip.submitCancel(pip.node.node_id, str(time.time()), 1, proposalinfo.get('ProposalID'), - pip.node.staking_address, transaction_cfg=transaction_cfg) - except ValueError as e: - assert e.args[0].get('message') == "the tx data is invalid: Invalid parameter:gas price is lower than minimum" - transaction_cfg = {"gasPrice": 3000000000000000} - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, proposalinfo.get('ProposalID'), - pip.node.staking_address, transaction_cfg=transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - - -def TP_TE_004(new_genesis_env, client_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.textProposalVoteDurationSeconds = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client = client_consensus - consensus_size = client.economic.consensus_size - log.info(consensus_size) - while True: - if client.node.block_number % consensus_size > consensus_size - 20: - log.info(client.node.block_number) - result = client.pip.submitText(client.node.node_id, str(time.time()), client.node.staking_address, - transaction_cfg=client.pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - log.info(client.pip.pip.listProposal()) - assert_code(result, 1) - break - -if __name__ == '__main__': - pytest.main(['./tests/govern/', '-s', '-q', '--alluredir', './report/report']) diff --git a/cases/tests/govern/test_upgrade.py b/cases/tests/govern/test_upgrade.py deleted file mode 100644 index ee277a7c9d..0000000000 --- a/cases/tests/govern/test_upgrade.py +++ /dev/null @@ -1,533 +0,0 @@ -from common.log import log -from tests.lib.utils import assert_code, wait_block_number, upload_platon, get_pledge_list, get_block_count_number -from tests.lib import Genesis -from dacite import from_dict -from tests.govern.test_voting_statistics import submittpandvote, submitcppandvote, \ - submitppandvote, submitcvpandvote, submitvpandvote -import time -from tests.govern.conftest import verifier_node_version -import pytest -import allure -from tests.govern.test_declare_version import replace_version_declare - - -def verify_proposal_status(clients, proposaltype, status): - pip = clients[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(proposaltype) - log.info('Get proposal information {}'.format(proposalinfo)) - assert pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 1, 1, 1] - wait_block_number(clients[1].node, proposalinfo.get('EndVotingBlock')) - assert_code(pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')), 1) - assert_code(pip.get_nays_of_proposal(proposalinfo.get('ProposalID')), 1) - assert_code(pip.get_abstentions_of_proposal(proposalinfo.get('ProposalID')), 1) - assert_code(pip.get_accu_verifiers_of_proposal(proposalinfo.get('ProposalID')), len(clients)) - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), status) - - -def update_setting_rate(new_genesis_env, proposaltype, *args): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - if proposaltype == 3: - genesis.economicModel.gov.paramProposalVoteDurationSeconds = args[0] - genesis.economicModel.gov.paramProposalSupportRate = args[1] - genesis.economicModel.gov.paramProposalVoteRate = args[2] - - elif proposaltype == 4: - genesis.economicModel.gov.cancelProposalSupportRate = args[0] - genesis.economicModel.gov.cancelProposalVoteRate = args[1] - - elif proposaltype == 1: - genesis.economicModel.gov.textProposalVoteDurationSeconds = args[0] - genesis.economicModel.gov.textProposalSupportRate = args[1] - genesis.economicModel.gov.textProposalVoteRate = args[2] - - elif proposaltype == 2: - genesis.economicModel.gov.versionProposalSupportRate = args[0] - genesis.economicModel.slashing.slashBlocksReward = 0 - else: - raise ValueError('Prposal type error') - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - - -class TestSupportRateVoteRatePP: - @pytest.mark.P0 - @pytest.mark.compatibility - @allure.title('Parameter proposal statistical function verification') - def test_UP_PA_001_VS_EP_002(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 3, 0, 3320, 7510) - submitppandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=3, status=3) - - @pytest.mark.P1 - @allure.title('Parameter proposal statistical function verification') - def test_UP_PA_002(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 3, 0, 3340, 7490) - submitppandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=3, status=3) - - @pytest.mark.P1 - @allure.title('Parameter proposal statistical function verification') - def test_UP_PA_003(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 3, 0, 3330, 7510) - submitppandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=3, status=3) - - @pytest.mark.P1 - @allure.title('Parameter proposal statistical function verification') - def test_UP_PA_004(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 3, 0, 3340, 7500) - submitppandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=3, status=3) - - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Parameter proposal statistical function verification') - def test_UP_PA_005(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 3, 0, 3320, 7490) - submitppandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=3, status=2) - - @pytest.mark.P1 - @allure.title('Parameter proposal statistical function verification') - def test_UP_PA_006(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 3, 0, 3330, 7490) - submitppandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=3, status=2) - - @pytest.mark.P1 - @allure.title('Parameter proposal statistical function verification') - def test_UP_PA_007(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 3, 0, 3320, 7500) - submitppandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=3, status=3) - - -class TestSupportRateVoteRateCPP: - @pytest.mark.P1 - @allure.title('Cancel parameter proposal statistical function verification') - def test_UC_CP_001(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3320, 7510) - submitcppandvote(clients_consensus[:3], [1, 2, 3]) - verify_proposal_status(clients_consensus, proposaltype=4, status=3) - - @pytest.mark.P1 - @allure.title('Cancel parameter proposal statistical function verification') - def test_UC_CP_002(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3340, 7490) - submitcppandvote(clients_consensus[:3], [1, 2, 3]) - verify_proposal_status(clients_consensus, proposaltype=4, status=3) - - @pytest.mark.P1 - @allure.title('Cancel parameter proposal statistical function verification') - def test_UC_CP_003(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3330, 7510) - submitcppandvote(clients_consensus[:3], [1, 2, 3]) - verify_proposal_status(clients_consensus, proposaltype=4, status=3) - - @pytest.mark.P1 - @allure.title('Cancel parameter proposal statistical function verification') - def test_UC_CP_004(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3340, 7500) - submitcppandvote(clients_consensus[:3], [1, 2, 3]) - verify_proposal_status(clients_consensus, proposaltype=4, status=3) - - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Cancel parameter proposal statistical function verification') - def test_UC_CP_005(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3320, 7490) - submitcppandvote(clients_consensus[:3], [1, 2, 3]) - verify_proposal_status(clients_consensus, proposaltype=4, status=2) - - @pytest.mark.P1 - @allure.title('Cancel parameter proposal statistical function verification') - def test_UC_CP_006(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3330, 7490) - submitcppandvote(clients_consensus[:3], [1, 2, 3]) - verify_proposal_status(clients_consensus, proposaltype=4, status=2) - - @pytest.mark.P1 - @allure.title('Cancel parameter proposal statistical function verification') - def test_UC_CP_007(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3320, 7500) - submitcppandvote(clients_consensus[:3], [1, 2, 3]) - verify_proposal_status(clients_consensus, proposaltype=4, status=3) - - -class TestSupportRateVoteRateCVP: - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Cancel version proposal statistical function verification') - def test_UP_CA_001_VS_BL_2(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3320, 7510) - submitcvpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=4, status=3) - - @pytest.mark.P1 - @allure.title('Cancel version proposal statistical function verification') - def test_UP_CA_002(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3340, 7490) - submitcvpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=4, status=3) - - @pytest.mark.P1 - @allure.title('Cancel version proposal statistical function verification') - def test_UP_CA_003(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3330, 7510) - submitcvpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=4, status=3) - - @pytest.mark.P1 - @allure.title('Cancel version proposal statistical function verification') - def test_UP_CA_004(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3340, 7500) - submitcvpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=4, status=3) - - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Cancel version proposal statistical function verification') - def test_UP_CA_005(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3320, 7490) - submitcvpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=4, status=2) - - @pytest.mark.P1 - @allure.title('Cancel version proposal statistical function verification') - def test_UP_CA_006(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3330, 7490) - submitcvpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=4, status=2) - - @pytest.mark.P1 - @allure.title('Cancel version proposal statistical function verification') - def test_UP_CA_007(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 4, 3320, 7500) - submitcvpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=4, status=3) - - -class TestSupportRateVoteRateTP: - @pytest.mark.compatibility - @pytest.mark.P1 - @allure.title('Text proposal statistical function verification') - def test_UP_TE_001_VS_BL_3(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 1, 40, 3320, 7500) - submittpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=1, status=3) - - @pytest.mark.P1 - @allure.title('Text proposal statistical function verification') - def test_UP_TE_002(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 1, 40, 3340, 7490) - submittpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=1, status=3) - - @pytest.mark.P1 - @allure.title('Text proposal statistical function verification') - def test_UP_TE_003(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 1, 40, 3330, 7510) - submittpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=1, status=3) - - @pytest.mark.P1 - @allure.title('Text proposal statistical function verification') - def test_UP_TE_004(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 1, 40, 3340, 7500) - submittpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=1, status=3) - - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Text proposal statistical function verification') - def test_UP_TE_005(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 1, 40, 3320, 7490) - submittpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=1, status=2) - - @pytest.mark.P1 - @allure.title('Text proposal statistical function verification') - def test_UP_TE_006(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 1, 40, 3330, 7490) - submittpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=1, status=2) - - @pytest.mark.P1 - @allure.title('Text proposal statistical function verification') - def test_UP_TE_007(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 1, 40, 3330, 7500) - submittpandvote(clients_consensus[:3], 1, 2, 3) - verify_proposal_status(clients_consensus, proposaltype=1, status=3) - - -class TestUpgradedST: - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Chain upgrade completed, transaction function verification') - def test_UV_TR_001_004_to_008_011_to_017_VS_EP_001(self, new_genesis_env, clients_consensus): - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - submitvpandvote(clients_consensus[:3]) - proposalinfo_version = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information {}'.format(proposalinfo_version)) - wait_block_number(pip.node, proposalinfo_version.get('ActiveBlock')) - assert pip.get_status_of_proposal(proposalinfo_version.get('ProposalID')) == 5 - assert pip.chain_version == pip.cfg.version5 - assert pip.get_accuverifiers_count(proposalinfo_version.get('ProposalID')) == [4, 3, 0, 0] - submittpandvote(clients_consensus[:2], 1, 2) - submitcppandvote(clients_consensus[:2], [1, 2]) - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo_param)) - result = pip.vote(pip.node.node_id, proposalinfo_param.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Vote param proposal result : {}'.format(result)) - assert_code(result, 0) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) - assert_code(result, 302028) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version5) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN4, pip.cfg.version4) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version4) - result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN6, pip.cfg.version6) - assert_code(result, 0) - verifier_node_version(pip, pip.cfg.version6) - result = pip.pip.listProposal() - log.info('Interface listProposal result : {}'.format(result)) - assert_code(result, 0) - result = pip.pip.getProposal(proposalinfo_version.get('ProposalID')) - log.info('Interface getProposal result : {}'.format(result)) - assert_code(result, 0) - - @pytest.mark.P2 - @allure.title('Chain upgrade completed, transaction function verification') - def test_UV_TR_002_003_009_010(self, new_genesis_env, clients_consensus): - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - submitvpandvote(clients_consensus[:3]) - proposalinfo_version = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information {}'.format(proposalinfo_version)) - wait_block_number(pip.node, proposalinfo_version.get('ActiveBlock')) - assert pip.get_status_of_proposal(proposalinfo_version.get('ProposalID')) == 5 - assert pip.chain_version == pip.cfg.version5 - assert pip.get_accuverifiers_count(proposalinfo_version.get('ProposalID')) - - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version8, 3, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_version = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo_version)) - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, proposalinfo_version.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get version proposal information : {}'.format(proposalinfo_cancel)) - - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN8) - pip.node.restart() - - result = pip.vote(pip.node.node_id, proposalinfo_version.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Vote result : {}'.format(result)) - assert_code(result, 0) - result = pip.vote(pip.node.node_id, proposalinfo_cancel.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 0) - log.info('Node {} vote result : {}'.format(pip.node.node_id, result)) - - -class TestUpgradeVP: - def calculate_version(self, version): - ver_byte = (version).to_bytes(length=4, byteorder='big', signed=False) - new_ver3 = (0).to_bytes(length=1, byteorder='big', signed=False) - new_version_byte = ver_byte[0:3] + new_ver3 - return int.from_bytes(new_version_byte, byteorder='big', signed=False) - - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Version proposal statistical function verification') - def test_UV_UPG_1_UV_UPG_2(self, new_genesis_env, clients_consensus, client_noconsensus): - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - pip_test = client_noconsensus.pip - address, _ = pip_test.economic.account.generate_account(pip_test.node.web3, 10**18 * 10000000) - result = client_noconsensus.staking.create_staking(0, address, address, amount=10 ** 18 * 2000000, - transaction_cfg=pip_test.cfg.transaction_cfg) - log.info('Node {} staking result : {}'.format(pip_test.node.node_id, result)) - programversion = client_noconsensus.staking.get_version() - assert_code(programversion, pip.cfg.version0) - pip_test.economic.wait_settlement(pip_test.node) - - verifier_list = get_pledge_list(clients_consensus[0].ppos.getVerifierList) - log.info('Get verifier list : {}'.format(verifier_list)) - assert pip_test.node.node_id in verifier_list - - submitvpandvote(clients_consensus, 3) - programversion = clients_consensus[0].staking.get_version() - assert_code(programversion, pip.cfg.version0) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo)) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock') - 1) - validator_list = get_pledge_list(clients_consensus[0].ppos.getValidatorList) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 4) - validator_list = get_pledge_list(clients_consensus[0].ppos.getValidatorList) - log.info('Validator list : {}'.format(validator_list)) - wait_block_number(pip.node, proposalinfo.get('ActiveBlock')) - validator_list = get_pledge_list(clients_consensus[0].ppos.getValidatorList) - log.info('Validator list : {}'.format(validator_list)) - assert pip_test.node.node_id not in validator_list - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 5) - block_reward, staking_reward = pip_test.economic.get_current_year_reward(pip_test.node, verifier_num=5) - pip.economic.wait_settlement(client_noconsensus.node) - - count = get_block_count_number(client_noconsensus.node, 320) - validator_list = get_pledge_list(clients_consensus[0].ppos.getValidatorList) - log.info('Validator list : {}'.format(validator_list)) - assert pip_test.node.node_id not in validator_list - verifier_list = get_pledge_list(clients_consensus[0].ppos.getVerifierList) - log.info('Get verifier list : {}'.format(verifier_list)) - assert pip_test.node.node_id not in verifier_list - - block_reward, staking_reward = pip.economic.get_current_year_reward(pip.node, 5) - log.info(f'block_reward == {block_reward}, staking_reward == {staking_reward}') - balance_before = pip.node.eth.getBalance(address, 2 * pip.economic.settlement_size - 1) - log.info('Block number {} address balace {}'.format(2 * pip.economic.settlement_size - 1, balance_before)) - pip.economic.wait_consensus(pip.node) - balance_after = pip.node.eth.getBalance(address, 2 * pip.economic.settlement_size) - log.info('Block number {} address balace {}'.format(2 * pip.economic.settlement_size, balance_after)) - log.info('Staking reward : {}'.format(staking_reward)) - assert balance_after - balance_before == staking_reward - - @pytest.mark.P0 - def test_UV_UPG_2(self, new_genesis_env, clients_consensus, client_noconsensus): - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - pip_test = client_noconsensus.pip - address, _ = pip_test.economic.account.generate_account(pip_test.node.web3, pip.economic.create_staking_limit * 3) - result = client_noconsensus.staking.create_staking(0, address, address, amount=pip.economic.create_staking_limit * 2, - transaction_cfg=pip_test.cfg.transaction_cfg) - log.info('Node {} staking result : {}'.format(pip_test.node.node_id, result)) - programversion = client_noconsensus.staking.get_version() - assert_code(programversion, pip.cfg.version0) - pip_test.economic.wait_settlement(pip_test.node) - verifier_list = get_pledge_list(clients_consensus[0].ppos.getVerifierList) - log.info('Get verifier list : {}'.format(verifier_list)) - assert pip_test.node.node_id in verifier_list - - submitvpandvote(clients_consensus, 5) - programversion = clients_consensus[0].staking.get_version() - assert_code(programversion, pip.cfg.version0) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo)) - replace_version_declare(pip_test, pip_test.cfg.PLATON_NEW_BIN, pip_test.cfg.version5) - assert_code(result, 0) - programversion = client_noconsensus.staking.get_version() - assert_code(programversion, pip.cfg.version0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - verifier_node_version(pip, proposalinfo.get('NewVersion')) - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 4) - validator_list = get_pledge_list(clients_consensus[0].ppos.getValidatorList) - log.info('Validator list : {}'.format(validator_list)) - wait_block_number(pip.node, proposalinfo.get('ActiveBlock')) - - validator_list = get_pledge_list(clients_consensus[0].ppos.getValidatorList) - log.info('Validator list : {}'.format(validator_list)) - assert pip_test.node.node_id in validator_list - - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 5) - pip.economic.wait_settlement(pip.node) - validator_list = get_pledge_list(clients_consensus[0].ppos.getValidatorList) - log.info('Validator list : {}'.format(validator_list)) - assert pip_test.node.node_id in validator_list - verifier_list = get_pledge_list(clients_consensus[0].ppos.getVerifierList) - log.info('Get verifier list : {}'.format(verifier_list)) - assert pip_test.node.node_id in verifier_list - programversion = clients_consensus[0].staking.get_version() - assert_code(programversion, pip.cfg.version5) - programversion = client_noconsensus.staking.get_version() - assert_code(programversion, pip_test.cfg.version5) - - @pytest.mark.P1 - @allure.title('Version proposal statistical function verification') - def test_UV_NO_1(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 2, 2501) - pip = clients_consensus[0].pip - submitvpandvote([clients_consensus[0]]) - node_version = verifier_node_version(pip) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal infomation {}'.format(proposalinfo)) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - verifier_node_version(pip, node_version) - assert pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 1, 0, 0] - assert pip.get_accu_verifiers_of_proposal(proposalinfo.get('ProposalID')) == len(clients_consensus) - assert pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 1 - assert pip.get_nays_of_proposal(proposalinfo.get('ProposalID')) == 0 - assert pip.get_abstentions_of_proposal(proposalinfo.get('ProposalID')) == 0 - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 3) - - @pytest.mark.P1 - @allure.title('Version proposal statistical function verification') - def test_UV_UP_1(self, new_genesis_env, clients_consensus): - update_setting_rate(new_genesis_env, 2, 2500) - pip = clients_consensus[0].pip - submitvpandvote([clients_consensus[0]]) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal infomation {}'.format(proposalinfo)) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - verifier_node_version(pip, proposalinfo.get('NewVersion')) - assert pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 1, 0, 0] - assert pip.get_accu_verifiers_of_proposal(proposalinfo.get('ProposalID')) == len(clients_consensus) - assert pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 1 - assert pip.get_nays_of_proposal(proposalinfo.get('ProposalID')) == 0 - assert pip.get_abstentions_of_proposal(proposalinfo.get('ProposalID')) == 0 - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 4) - wait_block_number(pip.node, proposalinfo.get('ActiveBlock')) - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 5) - - # def test_1(self, new_genesis_env, clients_consensus): - # pip = clients_consensus[-1].pip - # submitvpandvote(clients_consensus[0:2]) - # replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - # proposalinfo = pip.get_effect_proposal_info_of_vote() - # wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - # submitvpandvote(clients_consensus[:3]) - # proposalinfo = pip.get_effect_proposal_info_of_vote() - # wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - # verifier_list = get_pledge_list(clients_consensus[0].ppos.getVerifierList) - # log.info(verifier_list) - # assert pip.node.node_id in verifier_list - # - # def test_2(self, new_genesis_env, clients_consensus): - # new_genesis_env.deploy_all() - # pip = clients_consensus[0].pip - # submitvpandvote(clients_consensus[0:2]) - # # replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) - # proposalinfo = pip.get_effect_proposal_info_of_vote() - # wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - # assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 3) - # submitvpandvote(clients_consensus[1:4]) - # proposalinfo = pip.get_effect_proposal_info_of_vote() - # wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - # assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 4) - # pip.economic.wait_consensus(pip.node) - # validator = get_pledge_list(clients_consensus[0].ppos.getValidatorList) - # log.info(validator) - # assert pip.node.node_id not in validator - # programversion = clients_consensus[0].staking.get_version() - # log.info(programversion) - # - # programversion = clients_consensus[1].staking.get_version() - # log.info(programversion) - # - # programversion = clients_consensus[2].staking.get_version() - # log.info(programversion) - # - # programversion = clients_consensus[3].staking.get_version() - # log.info(programversion) - # - # verifier_list = get_pledge_list(clients_consensus[0].ppos.getVerifierList) - # log.info(verifier_list) diff --git a/cases/tests/govern/test_vote.py b/cases/tests/govern/test_vote.py deleted file mode 100644 index 9833153d8f..0000000000 --- a/cases/tests/govern/test_vote.py +++ /dev/null @@ -1,704 +0,0 @@ -import pytest -import allure -from common.log import log -import time -from tests.lib.utils import assert_code, wait_block_number, upload_platon -from tests.lib.client import get_client_by_nodeid -from tests.govern.conftest import version_proposal_vote, get_refund_to_account_block, proposal_vote, verifier_node_version -from dacite import from_dict -from tests.lib.genesis import Genesis -from tests.govern.test_voting_statistics import submitvpandvote, submittpandvote, submitcppandvote - - -def replace_platon_vote(pip, bin=None, program_version=None, version_sign=None): - ''' - Replace the bin package of the node, restart the node - :param pip: - :param bin: - :return: - ''' - if bin: - upload_platon(pip.node, bin) - pip.node.restart() - if program_version is None: - program_version = pip.node.program_version - if version_sign is None: - version_sign = pip.node.program_version_sign - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information {}'.format(proposalinfo)) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address, program_version=program_version, version_sign=version_sign, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} vote result : {}'.format(pip.node.node_id, result)) - return result - - -@pytest.fixture() -def voting_version_proposal_verifier_pip(client_verifier): - pip = client_verifier.pip - if pip.chain_version != pip.cfg.version0: - log.info('The chain has been upgraded,restart!') - client_verifier.economic.env.deploy_all() - if pip.is_exist_effective_proposal: - if pip.is_exist_effective_proposal_for_vote(): - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('get version proposalinfo : {}'.format(proposalinfo)) - if proposalinfo.get('EndVotingBlock') - pip.node.block_number > pip.economic.consensus_size * 2: - return pip - client_verifier.economic.env.deploy_all() - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 10, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('node {} submit version proposal {}'.format(pip.node.node_id, result)) - assert_code(result, 0) - return pip - - -@pytest.fixture() -def voting_text_proposal_verifier_pip(client_verifier): - pip = client_verifier.pip - if pip.is_exist_effective_proposal_for_vote(pip.cfg.text_proposal): - proposalinfo = pip.get_effect_proposal_info_of_vote() - if proposalinfo.get('EndVotingBlock') - pip.node.eth.blockNumber > 2 * pip.economic.consensus_size: - return pip - else: - client_verifier.economic.env.deploy_all() - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result {}'.format(result)) - assert_code(result, 0) - return pip - - -class TestVoteVP: - @pytest.mark.P1 - @allure.title('Version proposal voting function verification--voting stage') - def test_V_STA_2_to_5(self, no_vp_proposal, clients_verifier): - pip = no_vp_proposal - value = len(clients_verifier) - 2 - submitvpandvote(clients_verifier[:value], votingrounds=4) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposal information : {}'.format(proposalinfo)) - result = version_proposal_vote(clients_verifier[-2].pip) - log.info('Node {} vote proposal result : {}'.format(clients_verifier[-1].node.node_id, result)) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - log.info('{}'.format(pip.pip.getTallyResult(proposalinfo.get('ProposalID')))) - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 4) - - pip = clients_verifier[-1].pip - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN) - pip.node.restart() - log.info('Replace the platon bin and restart the node {}'.format(pip.node.node_id)) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} vote proposal result : {}'.format(clients_verifier[-1].node.node_id, result)) - assert_code(result, 302026) - log.info('{}'.format(pip.pip.getTallyResult(proposalinfo.get('ProposalID')))) - - if pip.node.eth.blockNumber < pip.get_status_of_proposal(proposalinfo.get('ProposalID')): - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 4) - assert pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 4 or 5 - - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} vote proposal result : {}'.format(clients_verifier[-1].node.node_id, result)) - assert_code(result, 302026) - wait_block_number(pip.node, proposalinfo.get('ActiveBlock')) - assert_code(pip.get_status_of_proposal(proposalinfo.get('ProposalID')), 5) - - -@pytest.mark.compatibility -@pytest.mark.P0 -@allure.title('Version proposal voting function verification') -def test_VO_VO_001_V0_RE_001_V0_WA_001_V_STA_1_VO_OP_001_VO_OP_002(no_vp_proposal): - pip = no_vp_proposal - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version8, 2, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Get version proposalinfo {}'.format(proposalinfo)) - - upload_platon(pip.node, pip.cfg.PLATON_NEW_BIN) - log.info('Replace the node platon package to {}'.format(pip.cfg.version5)) - pip.node.restart() - log.info('Restart the node {}'.format(pip.node.node_id)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_yeas, - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Not staking address vote result : {}'.format(result)) - assert_code(result, 302021) - - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_nays, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('vote option {} result {}'.format(pip.cfg.vote_option_nays, result)) - assert_code(result, 302002) - - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_Abstentions, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('vote option {} result {}'.format(pip.cfg.vote_option_Abstentions, result)) - assert_code(result, 302002) - - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), 0, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('vote option {} result {}'.format(0, result)) - assert_code(result, 302002) - - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), 'a', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('vote option {} result {}'.format(pip.cfg.vote_option_nays, result)) - assert_code(result, 302002) - - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_yeas, - address, transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 302021) - - node_version = verifier_node_version(pip) - result = version_proposal_vote(pip) - assert_code(result, 0) - verifier_node_version(pip, node_version) - - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('vote duplicated result: {}'.format(result)) - assert_code(result, 302027) - - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('endblock vote result: {}'.format(result)) - assert_code(result, 302026) - - -@pytest.mark.P0 -@allure.title('Text proposal voting function verification') -def test_VO_VO_003_V_STA_9_V_STA_10_V_STA_11_V0_WA_003_V0_RE_003(voting_text_proposal_verifier_pip, clients_verifier): - pip = voting_text_proposal_verifier_pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_yeas, address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Not staking address vote result {}'.format(result)) - assert_code(result, 302021) - - result = proposal_vote(pip, proposaltype=pip.cfg.text_proposal) - log.info('vote result {}'.format(result)) - assert_code(result, 0) - - result = proposal_vote(pip, proposaltype=pip.cfg.text_proposal) - log.info('Repeat vote result {}'.format(result)) - assert_code(result, 302027) - for client in clients_verifier: - if client.node.node_id != pip.node.node_id: - pip_test = client.pip - break - - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock') - 10) - result = proposal_vote(pip_test, proposaltype=pip.cfg.text_proposal) - log.info('Node {} vote result {}'.format(pip_test.node.node_id, result)) - assert_code(result, 0) - - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_nays, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Endvoting block vote result {}'.format(result)) - assert_code(result, 302026) - - -class TestVoteNodeException: - @pytest.mark.P0 - @allure.title('Voting function verification---Abnormal node') - def test_VO_TE_001_002_PP_VO_009_010_PP_VO_011_012_PP_VO_014_VO_TER_008_VO_TER_006(self, new_genesis_env, - clients_consensus, - client_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 640 - genesis.economicModel.staking.unStakeFreezeDuration = 2 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal information : {}'.format(result)) - assert_code(result, 0) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information : {}'.format(proposalinfo_text)) - - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', - '123', pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal information : {}'.format(result)) - assert_code(result, 0) - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information : {}'.format(proposalinfo_param)) - - result = pip.submitCancel(pip.node.node_id, str(time.time()), 10, proposalinfo_param.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal information : {}'.format(result)) - assert_code(result, 0) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information : {}'.format(proposalinfo_cancel)) - - result = clients_consensus[0].staking.withdrew_staking(clients_consensus[0].node.staking_address) - log.info('Node {} withdrew staking result {}'.format(clients_consensus[0].node.node_id, result)) - assert_code(result, 0) - address = clients_consensus[0].node.staking_address - - result = proposal_vote(pip, proposaltype=pip.cfg.text_proposal) - log.info('node vote text proposal result {}'.format(result)) - assert_code(result, 302020) - - result = proposal_vote(pip) - log.info('node vote param proposal result {}'.format(result)) - assert_code(result, 302020) - - result = proposal_vote(pip, proposaltype=pip.cfg.cancel_proposal) - log.info('node vote cancel proposal result {}'.format(result)) - assert_code(result, 302020) - - address_test, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000) - result = client_noconsensus.pip.vote(client_noconsensus.node.node_id, proposalinfo_text.get('ProposalID'), - pip.cfg.vote_option_yeas, address_test, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('node {} vote text proposal result {}'.format(client_noconsensus.node.node_id, result)) - assert_code(result, 302022) - - result = client_noconsensus.pip.vote(client_noconsensus.node.node_id, proposalinfo_param.get('ProposalID'), - pip.cfg.vote_option_yeas, address_test, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('node {} vote param proposal result {}'.format(client_noconsensus.node.node_id, result)) - assert_code(result, 302022) - - result = client_noconsensus.pip.vote(client_noconsensus.node.node_id, proposalinfo_cancel.get('ProposalID'), - pip.cfg.vote_option_yeas, address_test, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('node {} vote cancel proposal result {}'.format(client_noconsensus.node.node_id, result)) - assert_code(result, 302022) - - pip.economic.wait_settlement(pip.node, pip.economic.unstaking_freeze_ratio) - result = pip.vote(pip.node.node_id, proposalinfo_text.get('ProposalID'), pip.cfg.vote_option_nays, - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Exited node vote text proposal result {}'.format(result)) - assert_code(result, 302022) - - result = pip.vote(pip.node.node_id, proposalinfo_param.get('ProposalID'), pip.cfg.vote_option_nays, - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Exited node vote param proposal result {}'.format(result)) - assert_code(result, 302022) - - result = pip.vote(pip.node.node_id, proposalinfo_cancel.get('ProposalID'), pip.cfg.vote_option_nays, - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Exited node vote cancel proposal result {}'.format(result)) - assert_code(result, 302022) - - @pytest.mark.P0 - @allure.title('Voting function verification---Abnormal node') - def test_VO_VE_001_002_VO_CA_001_002_VO_TER_002_VO_TER_004(self, new_genesis_env, clients_consensus, - client_noconsensus): - pip = clients_consensus[0].pip - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.versionProposalVoteDurationSeconds = 3200 - genesis.economicModel.staking.unStakeFreezeDuration = 2 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 20, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal information : {}'.format(result)) - assert_code(result, 0) - proposalinfo_version = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Get param proposal information : {}'.format(proposalinfo_version)) - - result = pip.submitCancel(pip.node.node_id, str(time.time()), 10, proposalinfo_version.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal information : {}'.format(result)) - assert_code(result, 0) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information : {}'.format(proposalinfo_cancel)) - - result = clients_consensus[0].staking.withdrew_staking(clients_consensus[0].node.staking_address) - log.info('Node {} withdrew staking result {}'.format(clients_consensus[0].node.node_id, result)) - assert_code(result, 0) - address = clients_consensus[0].node.staking_address - - result = version_proposal_vote(pip) - log.info('node vote version proposal result {}'.format(result)) - assert_code(result, 302020) - - result = proposal_vote(pip, proposaltype=pip.cfg.cancel_proposal) - log.info('node vote cancel proposal result {}'.format(result)) - assert_code(result, 302020) - - address_test, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 100000) - result = client_noconsensus.pip.vote(client_noconsensus.node.node_id, proposalinfo_version.get('ProposalID'), - pip.cfg.vote_option_yeas, address_test, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('node {} vote param proposal result {}'.format(client_noconsensus.node.node_id, result)) - assert_code(result, 302022) - - result = client_noconsensus.pip.vote(client_noconsensus.node.node_id, proposalinfo_cancel.get('ProposalID'), - pip.cfg.vote_option_yeas, address_test, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('node {} vote cancel proposal result {}'.format(client_noconsensus.node.node_id, result)) - assert_code(result, 302022) - - pip.economic.wait_settlement(pip.node, pip.economic.unstaking_freeze_ratio) - result = pip.vote(pip.node.node_id, proposalinfo_version.get('ProposalID'), pip.cfg.vote_option_yeas, - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Exited node vote version proposal result {}'.format(result)) - assert_code(result, 302022) - - result = pip.vote(pip.node.node_id, proposalinfo_cancel.get('ProposalID'), pip.cfg.vote_option_nays, - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Exited node vote cancel proposal result {}'.format(result)) - assert_code(result, 302022) - - @pytest.mark.P1 - @allure.title('Voting function verification---Abnormal node') - def test_VO_TER_002_004(self, no_vp_proposal, client_candidate, clients_verifier): - pip = client_candidate.pip - ver_pip = clients_verifier[0].pip - result = ver_pip.submitParam(ver_pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', - '111', ver_pip.node.staking_address, - transaction_cfg=ver_pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = ver_pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information : {}'.format(proposalinfo)) - result = ver_pip.submitCancel(ver_pip.node.node_id, str(time.time()), 2, proposalinfo.get('ProposalID'), - ver_pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - result = proposal_vote(pip) - log.info('Candidate node {} vote param proposal result : {}'.format(pip.node.node_id, result)) - assert_code(result, 302022) - - result = proposal_vote(pip, proposaltype=pip.cfg.cancel_proposal) - log.info('Candidate node {} vote cancel proposal result : {}'.format(pip.node.node_id, result)) - assert_code(result, 302022) - - @pytest.mark.P1 - @allure.title('Voting function verification') - def test_VO_TER_001_003_005(self, candidate_has_proposal, client_verifier): - pip = candidate_has_proposal - pip_test = client_verifier.pip - proposalinfo_version = pip_test.get_effect_proposal_info_of_vote() - log.info('Get proposal information :{}'.format(proposalinfo_version)) - result = pip_test.submitCancel(pip_test.node.node_id, str(time.time()), 1, proposalinfo_version.get('ProposalID'), - pip_test.node.staking_address, transaction_cfg=pip_test.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - result = pip_test.submitText(pip_test.node.node_id, str(time.time()), pip_test.node.staking_address, - transaction_cfg=pip_test.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - result = version_proposal_vote(pip) - log.info('Candidate node {} vote version proposal result : {}'.format(pip.node.node_id, result)) - assert_code(result, 302022) - - result = proposal_vote(pip, proposaltype=pip.cfg.cancel_proposal) - log.info('Candidate node {} vote cancel proposal result : {}'.format(pip.node.node_id, result)) - assert_code(result, 302022) - - result = proposal_vote(pip, proposaltype=pip.cfg.text_proposal) - log.info('Candidate node {} vote text proposal result : {}'.format(pip.node.node_id, result)) - assert_code(result, 302022) - - -class TestVoteCancelVersion: - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Cancel proposal voting function verification') - def test_VO_VO_002_V0_WA_002_V0_RE_002_V_STA_8(self, submit_cancel): - pip = submit_cancel - address, _ = pip.economic.account.generate_account(pip.node.web3, 10 ** 18 * 10000) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal info : {}'.format(proposalinfo)) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_Abstentions, - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Not staking address , node {}, vote cancel proposal result {}'.format(pip.node.node_id, result)) - assert_code(result, 302021) - result = proposal_vote(pip, proposaltype=pip.cfg.cancel_proposal) - assert_code(result, 0) - result = proposal_vote(pip, proposaltype=pip.cfg.cancel_proposal) - assert_code(result, 302027) - - @pytest.mark.P1 - @allure.title('Cancel proposal voting function verification--candidate') - def test_V_STA_6_7(self, submit_cancel, clients_verifier): - pip = submit_cancel - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal info : {}'.format(proposalinfo)) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock') - 10) - result = proposal_vote(pip, proposaltype=pip.cfg.cancel_proposal) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - for client in clients_verifier: - if client.node.node_id != pip.node.node_id: - pip_test = client.pip - break - result = pip_test.vote(pip_test.node.node_id, proposalinfo.get('ProposalID'), pip_test.cfg.vote_option_Abstentions, - pip_test.node.staking_address, transaction_cfg=pip_test.cfg.transaction_cfg) - log.info('Node {} vote result {}'.format(pip_test.node.node_id, result)) - assert_code(result, 302026) - - -class TestVoteCancelParam: - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Cancel proposal voting function verification') - def test_PP_VO_001_PP_VO_005_PP_VO_015_PP_VO_017(self, submit_cancel_param): - pip = submit_cancel_param - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal info : {}'.format(proposalinfo)) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_Abstentions, - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Not staking address , node {}, vote cancel proposal result {}'.format(pip.node.node_id, result)) - assert_code(result, 302021) - result = proposal_vote(pip, proposaltype=pip.cfg.cancel_proposal) - assert_code(result, 0) - result = proposal_vote(pip, proposaltype=pip.cfg.cancel_proposal) - assert_code(result, 302027) - - -class TestVoteParam: - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Param proposal voting function verification') - def test_PP_VO_002_PP_VO_008_PP_VO_018_PP_VO_016(self, submit_param): - pip = submit_param - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 10000) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('param proposal info : {}'.format(proposalinfo)) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_Abstentions, - address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Not staking address , node {}, vote param proposal result {}'.format(pip.node.node_id, result)) - assert_code(result, 302021) - result = proposal_vote(pip) - assert_code(result, 0) - result = proposal_vote(pip) - assert_code(result, 302027) - - @pytest.mark.P2 - @allure.title('voting function verification') - def test_PP_VO_009_PP_VO_010_V0_TE_001_V0_TE_002(self, submit_param, all_clients): - pip = submit_param - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - address = pip.node.staking_address - client = get_client_by_nodeid(pip.node.node_id, all_clients) - result = client.staking.withdrew_staking(pip.node.staking_address) - endblock = get_refund_to_account_block(pip) - log.info('Node {} withdrew staking result {}'.format(pip.node.node_id, result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Cancel proposal info : {}'.format(proposalinfo)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Text proposal info : {}'.format(proposalinfo_text)) - result = proposal_vote(pip) - assert_code(result, 302020) - result = proposal_vote(pip, proposaltype=pip.cfg.text_proposal) - assert_code(result, 302020) - wait_block_number(pip.node, endblock) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_nays, address, - transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 302022) - result = pip.vote(pip.node.node_id, proposalinfo_text.get('ProposalID'), pip.cfg.vote_option_yeas, - address, transaction_cfg=pip.cfg.transaction_cfg) - assert_code(result, 302022) - - -@pytest.mark.compatibility -@pytest.mark.P0 -@allure.title('Param proposal voting function verification') -def test_PP_VO_003_PP_VO_004_VS_EP_002_VS_EP_003(new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 0 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '123', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('param proposal info {}'.format(proposalinfo)) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock') - 10) - result = proposal_vote(pip) - assert_code(result, 0) - result = pip.pip.getTallyResult(proposalinfo.get('ProposalID')) - log.info('Interface getTallyResult result is {}'.format(result)) - assert_code(result, 302030) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} vote param proposal result : {}'.format(pip.node.node_id, result)) - result = pip.pip.getTallyResult(proposalinfo.get('ProposalID')) - log.info('Interface getTallyResult result is {}'.format(result)) - assert_code(result, 0) - - -@pytest.mark.P0 -@allure.title('Cancel proposal voting function verification') -def test_PP_VO_001_PP_VO_006_PP_VO_007_VS_EP_001(submit_cancel_param): - pip = submit_cancel_param - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('cancel proposal info {}'.format(proposalinfo)) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock') - 8) - result = proposal_vote(pip, proposaltype=pip.cfg.cancel_proposal) - assert_code(result, 0) - result = pip.pip.getTallyResult(proposalinfo.get('ProposalID')) - log.info('Interface getTallyResult result is {}'.format(result)) - assert_code(result, 302030) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} vote cancel proposal result : {}'.format(pip.node.node_id, result)) - result = pip.pip.getTallyResult(proposalinfo.get('ProposalID')) - log.info('Interface getTallyResult result is {}'.format(result)) - assert_code(result, 0) - - -class TestVoteVPVerify: - def vote_wrong_version(self, pip, proposaltype): - proposalinfo = pip.get_effect_proposal_info_of_vote(proposaltype) - log.info('Get proposal information : {}'.format(proposalinfo)) - program_version = pip.cfg.version1 - if pip.node.program_version == pip.cfg.version1: - program_version = pip.cfg.version2 - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address, program_version=program_version, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Wrong program version vote result : {}'.format(result)) - return result - - def vote_wrong_versionsign(self, pip, proposaltype): - proposalinfo = pip.get_effect_proposal_info_of_vote(proposaltype) - log.info('Get proposal information : {}'.format(proposalinfo)) - version_sign = pip.node.program_version_sign - version_sign = version_sign.replace(version_sign[2:4], '11') - result = pip.vote(pip.node.node_id, proposalinfo.get('ProposalID'), pip.cfg.vote_option_yeas, - pip.node.staking_address, version_sign=version_sign, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Wrong version sign vote result : {}'.format(result)) - return result - - @pytest.mark.P1 - @allure.title('Version proposal voting function verification--platon version') - def test_VO_VER_001_003_VO_SI_001_V_UP_1(self, submit_version): - pip = submit_version - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN1) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN2) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN0) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN3) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN4) - assert_code(result, 302025) - version_sign = pip.node.program_version_sign - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN, version_sign=version_sign) - assert_code(result, 302024) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN6) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN7) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN8) - assert_code(result, 302025) - - @pytest.mark.P1 - @allure.title('Version proposal voting function verification--platon version') - def test_VO_VER_002_004_VO_SI_002(self, no_vp_proposal): - pip = no_vp_proposal - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version9, 6, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} submit version proposal result : {}'.format(pip.node.node_id, result)) - assert_code(result, 0) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN0) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN1) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN2) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN3) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN4) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN6) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN7) - assert_code(result, 302025) - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN8) - assert_code(result, 302025) - version_sign = pip.node.program_version_sign - result = replace_platon_vote(pip, bin=pip.cfg.PLATON_NEW_BIN9, version_sign=version_sign) - assert_code(result, 302024) - - @pytest.mark.P2 - @allure.title('Text proposal voting function verification') - def test_VO_SI_011_012(self, clients_verifier): - pip = clients_verifier[0].pip - pip_two = clients_verifier[1].pip - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - result = self.vote_wrong_version(pip, pip.cfg.text_proposal) - assert_code(result, 0) - result = self.vote_wrong_versionsign(pip_two, pip.cfg.text_proposal) - assert_code(result, 0) - - @pytest.mark.P2 - @allure.title('Cancel proposal voting function verification') - def test_VO_SI_013_VO_SI_014_VO_SI_015_VO_SI_016(self, submit_cancel_param, clients_verifier): - pip = submit_cancel_param - for client in clients_verifier: - if pip.node.node_id != client.node.node_id: - pip_two = client.pip - break - result = self.vote_wrong_version(pip, pip.cfg.param_proposal) - assert_code(result, 0) - result = self.vote_wrong_versionsign(pip_two, pip.cfg.param_proposal) - assert_code(result, 0) - - result = self.vote_wrong_version(pip, pip.cfg.cancel_proposal) - assert_code(result, 0) - result = self.vote_wrong_versionsign(pip_two, pip.cfg.cancel_proposal) - assert_code(result, 0) - - @pytest.mark.P2 - @allure.title('Voting function verification--effective proposal id') - def test_V0_POI_001(self, client_verifier): - pip = client_verifier.pip - result = pip.vote(pip.node.node_id, '0x29b553fb979855751890aecf3e105948a11a21f121cad11f9e455c1f01b12345', - pip.cfg.vote_option_yeas, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Ineffective proposalid, vote result : {}'.format(result)) - assert_code(result, 302006) - - -class TestCadidateVote: - @pytest.mark.P1 - @allure.title('Voting function verification--candidate') - def test_VO_TER_003_VO_TER_007_VO_TER_005_PP_VO_013(self, no_vp_proposal, client_candidate, client_verifier): - ca_pip = client_candidate.pip - ve_pip = client_verifier.pip - submittpandvote([client_verifier], 2) - submitvpandvote([client_verifier], votingrounds=1) - proposalinfo_version = ve_pip.get_effect_proposal_info_of_vote() - log.info('Version proposal information {}'.format(proposalinfo_version)) - result = version_proposal_vote(ca_pip) - assert_code(result, 302022) - result = proposal_vote(ca_pip, proposaltype=ca_pip.cfg.text_proposal) - assert_code(result, 302022) - wait_block_number(ca_pip.node, proposalinfo_version.get('EndVotingBlock')) - submitcppandvote([client_verifier], [2]) - result = proposal_vote(ca_pip, proposaltype=ca_pip.cfg.param_proposal) - assert_code(result, 302022) - result = proposal_vote(ca_pip, proposaltype=ca_pip.cfg.cancel_proposal) - assert_code(result, 302022) diff --git a/cases/tests/govern/test_voting_statistics.py b/cases/tests/govern/test_voting_statistics.py deleted file mode 100644 index b2d4f7e8da..0000000000 --- a/cases/tests/govern/test_voting_statistics.py +++ /dev/null @@ -1,1063 +0,0 @@ -import pytest -import allure -from common.log import log -from common.key import mock_duplicate_sign -import time -from tests.lib.utils import assert_code, wait_block_number, upload_platon -from tests.lib.client import Client -from tests.lib import Genesis -from dacite import from_dict -from tests.govern.conftest import proposal_vote, version_proposal_vote - - -def submitvpandvote(clients, votingrounds=4, version=None): - pip = clients[0].pip - if version is None: - version = pip.cfg.version5 - result = pip.submitVersion(pip.node.node_id, str(time.time()), version, votingrounds, pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote() - log.info('Version proposal info {}'.format(proposalinfo)) - for index in range(len(clients)): - pip = clients[index].pip - result = version_proposal_vote(pip, vote_option=pip.cfg.vote_option_yeas) - log.info('Node {} vote result {}'.format(pip.node.node_id, result)) - assert_code(result, 0) - - -def createstaking(obj, platon_bin=None, reward_per=0): - if isinstance(obj, Client): - objs = [] - objs.append(obj) - obj = objs - for client in obj: - if platon_bin: - log.info('Need replace the platon of the node') - upload_platon(client.node, platon_bin) - client.node.restart() - - address, _ = client.economic.account.generate_account(client.node.web3, 10 ** 18 * 10000000) - result = client.staking.create_staking(0, address, address, amount=10 ** 18 * 2000000, - transaction_cfg=client.pip.cfg.transaction_cfg, reward_per=reward_per) - log.info('Node {} staking result : {}'.format(client.node.node_id, result)) - assert_code(result, 0) - - -def submitppandvote(clients, *args): - pip = clients[0].pip - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '83', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Param proposal info {}'.format(proposalinfo)) - for index in range(len(clients)): - pip = clients[index].pip - log.info('{}'.format(args[index])) - result = proposal_vote(pip, vote_option=args[index]) - assert_code(result, 0) - - -def submitcppandvote(clients, list, voting_rounds=2): - pip = clients[0].pip - result = pip.submitParam(pip.node.node_id, str(time.time()), 'slashing', 'slashBlocksReward', '83', - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit param proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Param proposal info {}'.format(proposalinfo_param)) - - result = pip.submitCancel(pip.node.node_id, str(time.time()), voting_rounds, proposalinfo_param.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal info {}'.format(proposalinfo_cancel)) - for index in range(len(clients)): - pip = clients[index].pip - log.info('Vote option {}'.format(list[index])) - result = pip.vote(pip.node.node_id, proposalinfo_cancel.get('ProposalID'), list[index], - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} vote cancel proposal result : {}'.format(pip.node.node_id, result)) - assert_code(result, 0) - - -def submitcvpandvote(clients, *args): - pip = clients[0].pip - result = pip.submitVersion(pip.node.node_id, str(time.time()), pip.cfg.version5, 3, - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit version proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_version = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Version proposal info {}'.format(proposalinfo_version)) - - result = pip.submitCancel(pip.node.node_id, str(time.time()), 1, proposalinfo_version.get('ProposalID'), - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit cancel proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal info {}'.format(proposalinfo_cancel)) - for index in range(len(clients)): - pip = clients[index].pip - log.info('{}'.format(args[index])) - result = pip.vote(pip.node.node_id, proposalinfo_cancel.get('ProposalID'), args[index], - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} vote cancel proposal result : {}'.format(pip.node.node_id, result)) - assert_code(result, 0) - - -def submittpandvote(clients, *args): - pip = clients[0].pip - result = pip.submitText(pip.node.node_id, str(time.time()), pip.node.staking_address, - transaction_cfg=pip.cfg.transaction_cfg) - log.info('Submit text proposal result : {}'.format(result)) - assert_code(result, 0) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Text proposal info {}'.format(proposalinfo_text)) - result = pip.pip.listProposal() - print(result) - for index in range(len(clients)): - pip = clients[index].pip - log.info('{}'.format(args[index])) - result = pip.vote(pip.node.node_id, proposalinfo_text.get('ProposalID'), args[index], - pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) - log.info('Node {} vote text proposal result : {}'.format(pip.node.node_id, result)) - assert_code(result, 0) - - -class TestVotingStatisticsVP: - @pytest.mark.compatibility - @pytest.mark.P0 - @allure.title('Version proposal statistics function verification') - def test_VS_EXV_001_VS_BL_1(self, new_genesis_env, clients_consensus, clients_noconsensus): - new_genesis_env.deploy_all() - submitvpandvote(clients_consensus[0:-1], 5) - proposalinfo = clients_consensus[0].pip.get_effect_proposal_info_of_vote(clients_consensus[0].pip.cfg.version_proposal) - log.info('Version proposal information {}'.format(proposalinfo)) - createstaking(clients_noconsensus[:3]) - wait_block_number(clients_consensus[0].node, proposalinfo.get('EndVotingBlock')) - result = clients_consensus[0].pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result)) - assert result == [7, 3, 0, 0] - assert clients_consensus[0].pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 3 - assert clients_consensus[0].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 3 - assert clients_consensus[0].pip.get_nays_of_proposal(proposalinfo.get('ProposalID')) == 0 - assert clients_consensus[0].pip.get_abstentions_of_proposal(proposalinfo.get('ProposalID')) == 0 - assert clients_consensus[0].pip.get_accu_verifiers_of_proposal(proposalinfo.get('ProposalID')) == 7 - - @pytest.mark.P1 - @allure.title('Version proposal statistics function verification') - def test_VS_EXV_002(self, new_genesis_env, clients_consensus, clients_noconsensus): - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - submitvpandvote(clients_consensus[:2], votingrounds=5) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Version proposal info {}'.format(proposalinfo)) - log.info('{}'.format(clients_consensus[:2])) - createstaking(clients_noconsensus[:2]) - pip.economic.wait_settlement(pip.node) - result = pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result)) - assert result == [6, 2, 0, 0] - - result = version_proposal_vote(clients_consensus[2].pip) - assert_code(result, 0) - createstaking(clients_noconsensus[2]) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - result = pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result)) - assert result == [6, 3, 0, 0] - assert clients_consensus[0].pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 3 - assert clients_consensus[0].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 3 - assert clients_consensus[0].pip.get_nays_of_proposal(proposalinfo.get('ProposalID')) == 0 - assert clients_consensus[0].pip.get_abstentions_of_proposal(proposalinfo.get('ProposalID')) == 0 - assert clients_consensus[0].pip.get_accu_verifiers_of_proposal(proposalinfo.get('ProposalID')) == 6 - - @pytest.mark.P2 - @allure.title('Version proposal statistics function verification') - def test_VS_EXV_003(self, new_genesis_env, clients_consensus, clients_noconsensus): - new_genesis_env.deploy_all() - submitvpandvote(clients_consensus[:1], votingrounds=9) - proposalinfo = clients_consensus[0].pip.get_effect_proposal_info_of_vote(clients_consensus[0].pip.cfg.version_proposal) - log.info('Version proposal info {}'.format(proposalinfo)) - createstaking(clients_noconsensus[0]) - clients_consensus[0].pip.economic.wait_settlement(clients_consensus[0].pip.node) - result = clients_consensus[0].pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result)) - assert result == [5, 1, 0, 0] - - result = version_proposal_vote(clients_consensus[1].pip, clients_consensus[0].pip.cfg.vote_option_yeas) - assert_code(result, 0) - createstaking(clients_noconsensus[1]) - clients_consensus[0].pip.economic.wait_settlement(clients_consensus[0].pip.node) - result = clients_consensus[0].pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result)) - assert result == [6, 2, 0, 0] - - result = version_proposal_vote(clients_consensus[2].pip, clients_consensus[0].pip.cfg.vote_option_yeas) - assert_code(result, 0) - createstaking(clients_noconsensus[2]) - wait_block_number(clients_consensus[0].pip.node, proposalinfo.get('EndVotingBlock')) - - result = clients_consensus[0].pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result)) - assert result == [6, 3, 0, 0] - assert clients_consensus[0].pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 3 - assert clients_consensus[0].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 3 - assert clients_consensus[0].pip.get_nays_of_proposal(proposalinfo.get('ProposalID')) == 0 - assert clients_consensus[0].pip.get_abstentions_of_proposal(proposalinfo.get('ProposalID')) == 0 - assert clients_consensus[0].pip.get_accu_verifiers_of_proposal(proposalinfo.get('ProposalID')) == 6 - - @pytest.mark.P2 - @allure.title('Version proposal statistics function verification') - def test_VS_EXV_004(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.versionProposalSupportRate = 2500 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - submitvpandvote(clients_consensus[:2]) - proposalinfo = clients_consensus[0].pip.get_effect_proposal_info_of_vote(clients_consensus[0].pip.cfg.version_proposal) - log.info('Get version proposal information {}'.format(proposalinfo)) - result = clients_consensus[0].staking.withdrew_staking(clients_consensus[0].node.staking_address) - log.info('Node {} withdrew staking result {}'.format(clients_consensus[0].node.node_id, result)) - assert_code(result, 0) - wait_block_number(clients_consensus[0].node, proposalinfo.get('EndVotingBlock')) - result = clients_consensus[0].pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result)) - assert result == [4, 2, 0, 0] - assert clients_consensus[0].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 2 - assert clients_consensus[0].pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 4 - - @pytest.mark.P2 - @allure.title('Version proposal statistics function verification') - def test_VS_EXV_005(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.versionProposalSupportRate = 5000 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - submitvpandvote(clients_consensus[:2]) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Get version proposal information {}'.format(proposalinfo)) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - report_information = mock_duplicate_sign(1, pip.node.nodekey, pip.node.blsprikey, - proposalinfo.get('EndVotingBlock') - 10) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(1, report_information, address) - assert_code(result, 0) - assert clients_consensus[1].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 2 - - @pytest.mark.P2 - @allure.title('Version proposal statistics function verification') - def test_VS_EXV_006(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.versionProposalSupportRate = 5000 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - submitvpandvote(clients_consensus[:2]) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Get version proposal information {}'.format(proposalinfo)) - wait_block_number(pip.node, 80) - report_information = mock_duplicate_sign(1, pip.node.nodekey, pip.node.blsprikey, 70) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(1, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert clients_consensus[0].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 1 - assert clients_consensus[0].pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 3 - - @pytest.mark.P2 - @allure.title('Version proposal statistics function verification') - def test_VS_EXV_007(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.versionProposalSupportRate = 5000 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - submitvpandvote(clients_consensus[:2]) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Get version proposal information {}'.format(proposalinfo)) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - report_information = mock_duplicate_sign(2, pip.node.nodekey, pip.node.blsprikey, - proposalinfo.get('EndVotingBlock') - 10) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(2, report_information, address) - assert_code(result, 0) - assert clients_consensus[1].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 2 - - @pytest.mark.P2 - @allure.title('Version proposal statistics function verification') - def test_VS_EXV_008(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.versionProposalSupportRate = 5000 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - submitvpandvote(clients_consensus[:2]) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Get version proposal information {}'.format(proposalinfo)) - wait_block_number(pip.node, 80) - report_information = mock_duplicate_sign(2, pip.node.nodekey, pip.node.blsprikey, 70) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(2, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert clients_consensus[0].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 1 - assert clients_consensus[0].pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 3 - - @pytest.mark.P2 - @allure.title('Version proposal statistics function verification') - def test_VS_EXV_009(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.versionProposalSupportRate = 5000 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - submitvpandvote(clients_consensus[:2], votingrounds=3) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Get version proposal information {}'.format(proposalinfo)) - assert pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 2, 0, 0] - log.info('Stop the node {}'.format(pip.node.node_id)) - pip.node.stop() - wait_block_number(clients_consensus[1].node, proposalinfo.get('EndVotingBlock')) - assert clients_consensus[1].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 2 - assert clients_consensus[1].pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 4 - - @pytest.mark.P2 - @allure.title('Version proposal statistics function verification') - def test_VS_EXV_010(self, new_genesis_env, clients_consensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.versionProposalSupportRate = 5000 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - submitvpandvote(clients_consensus[:2], votingrounds=3) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.version_proposal) - log.info('Get version proposal information {}'.format(proposalinfo)) - assert pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 2, 0, 0] - log.info('Stop the node {}'.format(pip.node.node_id)) - wait_block_number(clients_consensus[1].node, proposalinfo.get('EndVotingBlock') - 10) - pip.node.stop() - wait_block_number(clients_consensus[1].node, proposalinfo.get('EndVotingBlock')) - assert clients_consensus[1].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 2 - assert clients_consensus[1].pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == 4 - - -class TestVotingStatisticsTPCP: - @pytest.mark.P1 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_001_VS_EXC_001(self, new_genesis_env, clients_consensus, clients_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.textProposalVoteDurationSeconds = 120 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - submittpandvote(clients_consensus[0:-1], 1, 2, 3) - submitcppandvote(clients_consensus[0:-1], [1, 2, 3]) - proposalinfo_text = clients_consensus[0].pip.get_effect_proposal_info_of_vote( - clients_consensus[0].pip.cfg.text_proposal) - log.info('Text proposal information {}'.format(proposalinfo_text)) - proposalinfo_cancel = clients_consensus[0].pip.get_effect_proposal_info_of_vote( - clients_consensus[0].pip.cfg.cancel_proposal) - log.info('Cancel proposal information {}'.format(proposalinfo_cancel)) - createstaking(clients_noconsensus[:3]) - result_text = clients_consensus[0].pip.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) - log.info('Get text proposal vote infomation {}'.format(result_text)) - result_cancel = clients_consensus[0].pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) - log.info('Get cancel proposal vote infomation {}'.format(result_cancel)) - assert result_text == [4, 1, 1, 1] - assert result_cancel == [4, 1, 1, 1] - - @pytest.mark.P1 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_002_VS_EXC_002(self, new_genesis_env, clients_consensus, clients_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.textProposalVoteDurationSeconds = 200 - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 1000 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - submittpandvote(clients_consensus[:2], 1, 2) - submitcppandvote(clients_consensus[:2], [1, 2], voting_rounds=5) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Text proposal info {}'.format(proposalinfo_text)) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal info {}'.format(proposalinfo_cancel)) - createstaking(clients_noconsensus[:2]) - pip.economic.wait_settlement(pip.node) - result_text = pip.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) - log.info('Get text proposal vote infomation {}'.format(result_text)) - result_cancel = pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) - log.info('Get cancel proposal vote infomation {}'.format(result_cancel)) - assert result_text == [6, 1, 1, 0] - assert result_cancel == [6, 1, 1, 0] - - result_cancel = proposal_vote(clients_consensus[2].pip, vote_option=pip.cfg.vote_option_Abstentions, - proposaltype=pip.cfg.cancel_proposal) - assert_code(result_cancel, 0) - result_text = proposal_vote(clients_consensus[2].pip, vote_option=pip.cfg.vote_option_Abstentions, - proposaltype=pip.cfg.text_proposal) - assert_code(result_text, 0) - createstaking(clients_noconsensus[2]) - wait_block_number(pip.node, proposalinfo_text.get('EndVotingBlock')) - - result_cancel = pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result_cancel)) - result_text = pip.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result_text)) - - assert result_text == [6, 1, 1, 1] - assert result_cancel == [6, 1, 1, 1] - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_003_VS_EXC_003(self, new_genesis_env, clients_consensus, clients_noconsensus): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.textProposalVoteDurationSeconds = 360 - genesis.economicModel.gov.paramProposalVoteDurationSeconds = 600 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - pip = clients_consensus[0].pip - submittpandvote(clients_consensus[:1], 1) - submitcppandvote(clients_consensus[:1], [1], voting_rounds=9) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Text proposal info {}'.format(proposalinfo_text)) - - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Cancel proposal info {}'.format(proposalinfo_cancel)) - createstaking(clients_noconsensus[0]) - pip.economic.wait_settlement(pip.node) - result_text = pip.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result_text)) - result_cancel = pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result_cancel)) - assert result_text == [5, 1, 0, 0] - assert result_cancel == [5, 1, 0, 0] - - result = proposal_vote(clients_consensus[1].pip, vote_option=pip.cfg.vote_option_nays, - proposaltype=pip.cfg.cancel_proposal) - assert_code(result, 0) - result = proposal_vote(clients_consensus[1].pip, vote_option=pip.cfg.vote_option_nays, - proposaltype=pip.cfg.text_proposal) - assert_code(result, 0) - createstaking(clients_noconsensus[1]) - pip.economic.wait_settlement(pip.node) - result_cancel = pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result_cancel)) - result_text = pip.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result_text)) - assert result_text == [6, 1, 1, 0] - assert result_cancel == [6, 1, 1, 0] - - result = proposal_vote(clients_consensus[2].pip, vote_option=pip.cfg.vote_option_Abstentions, - proposaltype=pip.cfg.text_proposal) - assert_code(result, 0) - result = proposal_vote(clients_consensus[2].pip, vote_option=pip.cfg.vote_option_Abstentions, - proposaltype=pip.cfg.cancel_proposal) - assert_code(result, 0) - createstaking(clients_noconsensus[2]) - # wait_block_number(clients_consensus[0].pip.node, proposalinfo.get('EndVotingBlock')) - - result_text = clients_consensus[0].pip.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result_text)) - result_cancel = clients_consensus[0].pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result_cancel)) - assert result_cancel == [6, 1, 1, 1] - assert result_text == [6, 1, 1, 1] - - def get_block(self, proposalinfo_text, proposalinfo_cancel): - block1 = proposalinfo_cancel.get('EndVotingBlock') - block2 = proposalinfo_text.get('EndVotingBlock') - if block1 > block2: - return block1 - else: - return block2 - - def update_setting(self, new_genesis_env, *args): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.gov.paramProposalVoteDurationSeconds = args[0] - genesis.economicModel.gov.textProposalVoteDurationSeconds = args[1] - genesis.economicModel.gov.textProposalSupportRate = args[2] - genesis.economicModel.gov.textProposalVoteRate = args[3] - genesis.economicModel.gov.cancelProposalSupportRate = args[4] - genesis.economicModel.gov.cancelProposalVoteRate = args[5] - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_004_VS_EXC_004(self, new_genesis_env, clients_consensus): - self.update_setting(new_genesis_env, 500, 80, 10000, 4990, 10000, 4990) - pip = clients_consensus[0].pip - submittpandvote(clients_consensus[:2], 1, 1) - submitcppandvote(clients_consensus[:2], [1, 1]) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo_text)) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - result = clients_consensus[0].staking.withdrew_staking(clients_consensus[0].node.staking_address) - log.info('Node {} withdrew staking result {}'.format(clients_consensus[0].node.node_id, result)) - assert_code(result, 0) - wait_block_number(clients_consensus[0].node, self.get_block(proposalinfo_cancel, proposalinfo_text)) - assert_code(pip.get_yeas_of_proposal(proposalinfo_text.get('ProposalID')), 2) - assert_code(pip.get_status_of_proposal(proposalinfo_text.get('ProposalID')), 2) - assert_code(pip.get_yeas_of_proposal(proposalinfo_cancel.get('ProposalID')), 2) - assert_code(pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 2) - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_005_VS_EXC_005(self, new_genesis_env, clients_consensus): - self.update_setting(new_genesis_env, 500, 80, 10000, 4990, 10000, 4990) - pip = clients_consensus[0].pip - submittpandvote(clients_consensus[:2], 1, 1) - submitcppandvote(clients_consensus[:2], [1, 1]) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo_text)) - wait_block_number(pip.node, self.get_block(proposalinfo_text, proposalinfo_cancel)) - report_information = mock_duplicate_sign(1, pip.node.nodekey, pip.node.blsprikey, - proposalinfo_cancel.get('EndVotingBlock') - 10) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10 ** 18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(1, report_information, address) - assert_code(result, 0) - assert_code(pip.get_yeas_of_proposal(proposalinfo_cancel.get('ProposalID')), 2) - assert_code(pip.get_yeas_of_proposal(proposalinfo_text.get('ProposalID')), 2) - assert_code(pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 2) - assert_code(pip.get_status_of_proposal(proposalinfo_text.get('ProposalID')), 2) - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_006_VS_EXC_006(self, new_genesis_env, clients_consensus): - self.update_setting(new_genesis_env, 500, 80, 10000, 4990, 10000, 4990) - pip = clients_consensus[0].pip - submittpandvote(clients_consensus[:2], 1, 1) - submitcppandvote(clients_consensus[:2], [1, 1]) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo_text)) - wait_block_number(pip.node, 50) - report_information = mock_duplicate_sign(1, pip.node.nodekey, pip.node.blsprikey, 45) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10 ** 18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(1, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, self.get_block(proposalinfo_cancel, proposalinfo_text)) - assert_code(pip.get_yeas_of_proposal(proposalinfo_cancel.get('ProposalID')), 1) - assert_code(pip.get_yeas_of_proposal(proposalinfo_text.get('ProposalID')), 1) - assert_code(pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 3) - assert_code(pip.get_status_of_proposal(proposalinfo_text.get('ProposalID')), 3) - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_007_VS_EXC_007(self, new_genesis_env, clients_consensus): - self.update_setting(new_genesis_env, 500, 80, 10000, 2490, 10000, 2490) - pip = clients_consensus[0].pip - submittpandvote(clients_consensus[:2], 2, 1) - submitcppandvote(clients_consensus[:2], [2, 1]) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo_text)) - wait_block_number(pip.node, 50) - report_information = mock_duplicate_sign(1, pip.node.nodekey, pip.node.blsprikey, 45) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10 ** 18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(1, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, self.get_block(proposalinfo_cancel, proposalinfo_text)) - assert pip.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) == [4, 1, 0, 0] - assert pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 0, 0] - assert_code(pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 2) - assert_code(pip.get_status_of_proposal(proposalinfo_text.get('ProposalID')), 2) - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_008_VS_EXC_008(self, new_genesis_env, clients_consensus): - self.update_setting(new_genesis_env, 500, 80, 10000, 2490, 10000, 2490) - pip = clients_consensus[0].pip - submittpandvote(clients_consensus[:2], 3, 1) - submitcppandvote(clients_consensus[:2], [3, 1]) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo_text)) - wait_block_number(pip.node, 50) - report_information = mock_duplicate_sign(1, pip.node.nodekey, pip.node.blsprikey, 45) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10 ** 18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(1, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, self.get_block(proposalinfo_cancel, proposalinfo_text)) - assert pip.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) == [4, 1, 0, 0] - assert pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 0, 0] - assert_code(pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 2) - assert_code(pip.get_status_of_proposal(proposalinfo_text.get('ProposalID')), 2) - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_009_VS_EXC_009(self, new_genesis_env, clients_consensus): - self.update_setting(new_genesis_env, 500, 80, 10000, 2490, 10000, 2490) - pip = clients_consensus[0].pip - submittpandvote(clients_consensus[:2], 2, 1) - submitcppandvote(clients_consensus[:2], [2, 1]) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo_text)) - wait_block_number(pip.node, self.get_block(proposalinfo_cancel, proposalinfo_text)) - report_information = mock_duplicate_sign(1, pip.node.nodekey, pip.node.blsprikey, 45) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10 ** 18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(1, report_information, address) - assert_code(result, 0) - assert pip.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) == [4, 1, 1, 0] - assert pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 1, 0] - assert_code(pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 3) - assert_code(pip.get_status_of_proposal(proposalinfo_text.get('ProposalID')), 3) - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_010_VS_EXC_010(self, new_genesis_env, clients_consensus): - self.update_setting(new_genesis_env, 500, 80, 10000, 4990, 10000, 4990) - pip = clients_consensus[0].pip - submittpandvote(clients_consensus[:2], 1, 1) - submitcppandvote(clients_consensus[:2], [1, 1]) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo_text)) - wait_block_number(pip.node, 50) - report_information = mock_duplicate_sign(2, pip.node.nodekey, pip.node.blsprikey, 45) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10 ** 18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(2, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, self.get_block(proposalinfo_cancel, proposalinfo_text)) - assert pip.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) == [4, 1, 0, 0] - assert pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 0, 0] - assert_code(pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 3) - assert_code(pip.get_status_of_proposal(proposalinfo_text.get('ProposalID')), 3) - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_011_VS_EXC_011(self, new_genesis_env, clients_consensus): - self.update_setting(new_genesis_env, 500, 80, 10000, 2499, 10000, 2499) - pip = clients_consensus[0].pip - submittpandvote(clients_consensus[:2], 2, 1) - submitcppandvote(clients_consensus[:2], [2, 1]) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo_text)) - wait_block_number(pip.node, 50) - report_information = mock_duplicate_sign(2, pip.node.nodekey, pip.node.blsprikey, 45) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10 ** 18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(2, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, self.get_block(proposalinfo_cancel, proposalinfo_text)) - assert pip.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) == [4, 1, 0, 0] - assert pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 0, 0] - assert_code(pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 2) - assert_code(pip.get_status_of_proposal(proposalinfo_text.get('ProposalID')), 2) - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_012_VS_EXC_012(self, new_genesis_env, clients_consensus): - self.update_setting(new_genesis_env, 500, 80, 10000, 2499, 10000, 2499) - pip = clients_consensus[0].pip - submittpandvote(clients_consensus[:2], 3, 1) - submitcppandvote(clients_consensus[:2], [3, 1]) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo_text)) - wait_block_number(pip.node, 50) - report_information = mock_duplicate_sign(2, pip.node.nodekey, pip.node.blsprikey, 45) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10 ** 18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(2, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, self.get_block(proposalinfo_cancel, proposalinfo_text)) - assert pip.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) == [4, 1, 0, 0] - assert pip.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 0, 0] - assert_code(pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 2) - assert_code(pip.get_status_of_proposal(proposalinfo_text.get('ProposalID')), 2) - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_013_VS_EXC_013(self, new_genesis_env, clients_consensus): - self.update_setting(new_genesis_env, 500, 120, 10000, 4999, 10000, 4999) - pip = clients_consensus[0].pip - pip_test = clients_consensus[1].pip - submittpandvote(clients_consensus[:2], 1, 1) - submitcppandvote(clients_consensus[:2], [1, 1], voting_rounds=3) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo_text)) - pip.node.stop() - wait_block_number(pip_test.node, self.get_block(proposalinfo_cancel, proposalinfo_text)) - assert pip_test.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) == [4, 2, 0, 0] - assert pip_test.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 2, 0, 0] - assert_code(pip_test.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 2) - assert_code(pip_test.get_status_of_proposal(proposalinfo_text.get('ProposalID')), 2) - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_014_VS_EXC_014(self, new_genesis_env, clients_consensus): - self.update_setting(new_genesis_env, 500, 120, 10000, 4999, 10000, 4999) - pip = clients_consensus[0].pip - pip_test = clients_consensus[1].pip - submittpandvote(clients_consensus[:2], 2, 1) - submitcppandvote(clients_consensus[:2], [2, 1], voting_rounds=3) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo_text)) - pip.node.stop() - wait_block_number(pip_test.node, self.get_block(proposalinfo_cancel, proposalinfo_text)) - assert pip_test.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) == [4, 1, 1, 0] - assert pip_test.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 1, 0] - assert_code(pip_test.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 3) - assert_code(pip_test.get_status_of_proposal(proposalinfo_text.get('ProposalID')), 3) - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_015_VS_EXC_015(self, new_genesis_env, clients_consensus): - self.update_setting(new_genesis_env, 500, 120, 10000, 4999, 10000, 4999) - pip = clients_consensus[0].pip - pip_test = clients_consensus[1].pip - submittpandvote(clients_consensus[:2], 3, 1) - submitcppandvote(clients_consensus[:2], [3, 1], voting_rounds=3) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo_text)) - pip.node.stop() - wait_block_number(pip_test.node, self.get_block(proposalinfo_cancel, proposalinfo_text)) - assert pip_test.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) == [4, 1, 0, 1] - assert pip_test.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 1, 0, 1] - assert_code(pip_test.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 3) - assert_code(pip_test.get_status_of_proposal(proposalinfo_text.get('ProposalID')), 3) - - @pytest.mark.P2 - @allure.title('Cancel proposal and text proposal statistics function verification') - def test_VS_EXT_016_VS_EXC_016(self, new_genesis_env, clients_consensus): - self.update_setting(new_genesis_env, 500, 80, 10000, 4999, 10000, 4999) - pip = clients_consensus[0].pip - pip_test = clients_consensus[1].pip - submittpandvote(clients_consensus[:2], 1, 1) - submitcppandvote(clients_consensus[:2], [1, 1], voting_rounds=2) - proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) - log.info('Get cancel proposal information {}'.format(proposalinfo_cancel)) - proposalinfo_text = pip.get_effect_proposal_info_of_vote(pip.cfg.text_proposal) - log.info('Get text proposal information {}'.format(proposalinfo_text)) - wait_block_number(pip_test.node, self.get_block(proposalinfo_cancel, proposalinfo_text)) - pip.node.stop() - assert pip_test.get_accuverifiers_count(proposalinfo_text.get('ProposalID')) == [4, 2, 0, 0] - assert pip_test.get_accuverifiers_count(proposalinfo_cancel.get('ProposalID')) == [4, 2, 0, 0] - assert_code(pip_test.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')), 2) - assert_code(pip_test.get_status_of_proposal(proposalinfo_text.get('ProposalID')), 2) - - -class TestVotingStatisticsPP: - def update_setting_param(self, new_genesis_env, *args): - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - if len(args) == 1: - genesis.economicModel.gov.paramProposalVoteDurationSeconds = args[0] - elif len(args) == 3: - genesis.economicModel.gov.paramProposalVoteDurationSeconds = args[0] - genesis.economicModel.gov.paramProposalSupportRate = args[1] - genesis.economicModel.gov.paramProposalVoteRate = args[2] - else: - raise ValueError('args error') - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - - def assert_proposal_result(self, pip, proposalinfo, tally_result): - assert pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == tally_result[0] - assert pip.get_nays_of_proposal(proposalinfo.get('ProposalID')) == tally_result[1] - assert pip.get_abstentions_of_proposal(proposalinfo.get('ProposalID')) == tally_result[2] - assert pip.get_status_of_proposal(proposalinfo.get('ProposalID')) == tally_result[3] - - def assert_accuverifiers_count(self, pip, proposalinfo, accuverifiers_result): - result = pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) - log.info('Get proposal vote infomation {}'.format(result)) - assert result == accuverifiers_result - - @pytest.mark.P1 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_004(self, new_genesis_env, clients_consensus, clients_noconsensus): - self.update_setting_param(new_genesis_env, 0) - submitppandvote(clients_consensus[0:-1], 1, 2, 3) - proposalinfo = clients_consensus[0].pip.get_effect_proposal_info_of_vote(clients_consensus[0].pip.cfg.param_proposal) - log.info('Param proposal information {}'.format(proposalinfo)) - createstaking(clients_noconsensus[:3]) - self.assert_accuverifiers_count(clients_consensus[0].pip, proposalinfo, [4, 1, 1, 1]) - - @pytest.mark.P1 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_005(self, new_genesis_env, clients_consensus, clients_noconsensus): - self.update_setting_param(new_genesis_env, 160) - pip = clients_consensus[0].pip - submitppandvote(clients_consensus[:2], 1, 2) - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Param proposal info {}'.format(proposalinfo)) - log.info('{}'.format(clients_consensus[:2])) - createstaking(clients_noconsensus[:2]) - pip.economic.wait_settlement(pip.node) - self.assert_accuverifiers_count(pip, proposalinfo, [6, 1, 1, 0]) - - result = proposal_vote(clients_noconsensus[0].pip, vote_option=pip.cfg.vote_option_Abstentions) - assert_code(result, 0) - log.info('{}'.format(clients_consensus[2])) - createstaking(clients_noconsensus[2]) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - - self.assert_accuverifiers_count(pip, proposalinfo, [6, 1, 1, 1]) - - @pytest.mark.P2 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_006(self, new_genesis_env, clients_consensus, clients_noconsensus): - self.update_setting_param(new_genesis_env, 320) - submitppandvote(clients_consensus[:1], 1) - proposalinfo = clients_consensus[0].pip.get_effect_proposal_info_of_vote(clients_consensus[0].pip.cfg.param_proposal) - log.info('Param proposal info {}'.format(proposalinfo)) - createstaking(clients_noconsensus[0]) - clients_consensus[0].pip.economic.wait_settlement(clients_consensus[0].pip.node) - self.assert_accuverifiers_count(clients_consensus[0].pip, proposalinfo, [5, 1, 0, 0]) - - result = proposal_vote(clients_consensus[1].pip, vote_option=clients_consensus[0].pip.cfg.vote_option_nays) - assert_code(result, 0) - createstaking(clients_noconsensus[1]) - clients_consensus[0].pip.economic.wait_settlement(clients_consensus[0].pip.node) - self.assert_accuverifiers_count(clients_consensus[0].pip, proposalinfo, [6, 1, 1, 0]) - - result = proposal_vote(clients_consensus[2].pip, vote_option=clients_consensus[0].pip.cfg.vote_option_Abstentions) - assert_code(result, 0) - createstaking(clients_noconsensus[2]) - wait_block_number(clients_consensus[0].pip.node, proposalinfo.get('EndVotingBlock')) - - self.assert_accuverifiers_count(clients_consensus[0].pip, proposalinfo, [6, 1, 1, 1]) - - @pytest.mark.P0 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_007_VS_EP_003(self, new_genesis_env, clients_consensus): - self.update_setting_param(new_genesis_env, 0, 10000, 4900) - submitppandvote(clients_consensus[:2], 1, 1) - proposalinfo = clients_consensus[0].pip.get_effect_proposal_info_of_vote(clients_consensus[0].pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo)) - result = clients_consensus[0].staking.withdrew_staking(clients_consensus[0].node.staking_address) - log.info('Node {} withdrew staking result {}'.format(clients_consensus[0].node.node_id, result)) - assert_code(result, 0) - result = clients_consensus[0].pip.pip.getTallyResult(proposalinfo.get('ProposalID')) - log.info('Before endvoting block, get Tally resul of the parameter proposal result : {}'.format(result)) - assert_code(result, 302030) - wait_block_number(clients_consensus[0].node, proposalinfo.get('EndVotingBlock')) - self.assert_proposal_result(clients_consensus[0].pip, proposalinfo, [2, 0, 0, 2]) - - @pytest.mark.P2 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_008(self, new_genesis_env, clients_consensus): - self.update_setting_param(new_genesis_env, 0, 5000, 5000) - submitppandvote(clients_consensus[:2], 1, 1) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo)) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - report_information = mock_duplicate_sign(1, pip.node.nodekey, pip.node.blsprikey, - proposalinfo.get('EndVotingBlock') - 10) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(1, report_information, address) - assert_code(result, 0) - assert clients_consensus[1].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 2 - - @pytest.mark.P2 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_009(self, new_genesis_env, clients_consensus): - self.update_setting_param(new_genesis_env, 0, 5000, 5000) - submitppandvote(clients_consensus[:2], 1, 1) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo)) - wait_block_number(pip.node, 80) - report_information = mock_duplicate_sign(1, pip.node.nodekey, pip.node.blsprikey, 70) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(1, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert clients_consensus[1].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 1 - - @pytest.mark.P2 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_010(self, new_genesis_env, clients_consensus): - self.update_setting_param(new_genesis_env, 0, 5000, 5000) - submitppandvote(clients_consensus[:2], 2, 2) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo)) - wait_block_number(pip.node, 80) - report_information = mock_duplicate_sign(1, pip.node.nodekey, pip.node.blsprikey, 70) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(1, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert clients_consensus[1].pip.get_nays_of_proposal(proposalinfo.get('ProposalID')) == 1 - - @pytest.mark.P2 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_011(self, new_genesis_env, clients_consensus): - self.update_setting_param(new_genesis_env, 0, 5000, 5000) - submitppandvote(clients_consensus[:2], 3, 3) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo)) - wait_block_number(pip.node, 80) - report_information = mock_duplicate_sign(1, pip.node.nodekey, pip.node.blsprikey, 70) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(1, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert clients_consensus[1].pip.get_abstentions_of_proposal(proposalinfo.get('ProposalID')) == 1 - - @pytest.mark.P2 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_012(self, new_genesis_env, clients_consensus): - self.update_setting_param(new_genesis_env, 0, 5000, 5000) - submitppandvote(clients_consensus[:2], 1, 1) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo)) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - report_information = mock_duplicate_sign(2, pip.node.nodekey, pip.node.blsprikey, - proposalinfo.get('EndVotingBlock') - 10) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(2, report_information, address) - assert_code(result, 0) - assert clients_consensus[1].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 2 - - @pytest.mark.P2 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_013(self, new_genesis_env, clients_consensus): - self.update_setting_param(new_genesis_env, 0, 5000, 5000) - submitppandvote(clients_consensus[:2], 1, 1) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo)) - wait_block_number(pip.node, 80) - report_information = mock_duplicate_sign(2, pip.node.nodekey, pip.node.blsprikey, 70) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(2, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert clients_consensus[1].pip.get_yeas_of_proposal(proposalinfo.get('ProposalID')) == 1 - - @pytest.mark.P2 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_014(self, new_genesis_env, clients_consensus): - self.update_setting_param(new_genesis_env, 0, 5000, 5000) - submitppandvote(clients_consensus[:2], 2, 2) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo)) - wait_block_number(pip.node, 80) - report_information = mock_duplicate_sign(2, pip.node.nodekey, pip.node.blsprikey, 70) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(2, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert clients_consensus[1].pip.get_nays_of_proposal(proposalinfo.get('ProposalID')) == 1 - - @pytest.mark.P2 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_015(self, new_genesis_env, clients_consensus): - self.update_setting_param(new_genesis_env, 0, 5000, 5000) - submitppandvote(clients_consensus[:2], 3, 3) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo)) - wait_block_number(pip.node, 80) - report_information = mock_duplicate_sign(2, pip.node.nodekey, pip.node.blsprikey, 70) - log.info("Report information: {}".format(report_information)) - address, _ = pip.economic.account.generate_account(pip.node.web3, 10**18 * 1000) - result = clients_consensus[0].duplicatesign.reportDuplicateSign(2, report_information, address) - assert_code(result, 0) - wait_block_number(pip.node, proposalinfo.get('EndVotingBlock')) - assert clients_consensus[1].pip.get_abstentions_of_proposal(proposalinfo.get('ProposalID')) == 1 - - @pytest.mark.P2 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_016(self, new_genesis_env, clients_consensus): - self.update_setting_param(new_genesis_env, 0, 10000, 2490) - submitppandvote(clients_consensus[:2], 1, 1) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo)) - assert pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 2, 0, 0] - log.info('Stop the node {}'.format(pip.node.node_id)) - pip.node.stop() - wait_block_number(clients_consensus[1].node, proposalinfo.get('EndVotingBlock')) - self.assert_proposal_result(clients_consensus[1].pip, proposalinfo, [2, 0, 0, 2]) - - @pytest.mark.P2 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_017(self, new_genesis_env, clients_consensus): - self.update_setting_param(new_genesis_env, 0, 10000, 2490) - submitppandvote(clients_consensus[:2], 2, 1) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo)) - assert pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 1, 1, 0] - log.info('Stop the node {}'.format(pip.node.node_id)) - pip.node.stop() - wait_block_number(clients_consensus[1].node, proposalinfo.get('EndVotingBlock')) - self.assert_proposal_result(clients_consensus[1].pip, proposalinfo, [1, 1, 0, 3]) - - @pytest.mark.P2 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_018(self, new_genesis_env, clients_consensus): - self.update_setting_param(new_genesis_env, 0, 10000, 2490) - submitppandvote(clients_consensus[:2], 3, 1) - pip = clients_consensus[0].pip - print(f'listGovernParam = {len(clients_consensus)}, {pip.pip.listGovernParam()}') - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo)) - assert pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 1, 0, 1] - log.info('Stop the node {}'.format(pip.node.node_id)) - pip.node.stop() - wait_block_number(clients_consensus[1].node, proposalinfo.get('EndVotingBlock')) - self.assert_proposal_result(clients_consensus[1].pip, proposalinfo, [1, 0, 1, 3]) - - @pytest.mark.P2 - @allure.title('Parammeter proposal statistics function verification') - def test_VS_EP_019(self, new_genesis_env, clients_consensus): - self.update_setting_param(new_genesis_env, 0, 9900, 2500) - submitppandvote(clients_consensus[:3], 1, 2, 3) - pip = clients_consensus[0].pip - proposalinfo = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) - log.info('Get param proposal information {}'.format(proposalinfo)) - assert pip.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 1, 1, 1] - wait_block_number(clients_consensus[1].node, proposalinfo.get('EndVotingBlock')) - self.assert_proposal_result(clients_consensus[1].pip, proposalinfo, [1, 1, 1, 3]) - log.info('Stop the node {}'.format(pip.node.node_id)) - pip.node.stop() - wait_block_number(clients_consensus[1].node, proposalinfo.get('EndVotingBlock') - + clients_consensus[1].economic.consensus_size) - self.assert_proposal_result(clients_consensus[1].pip, proposalinfo, [1, 1, 1, 3]) diff --git a/cases/tests/lib/__init__.py b/cases/tests/lib/__init__.py deleted file mode 100644 index a19ae2d748..0000000000 --- a/cases/tests/lib/__init__.py +++ /dev/null @@ -1,10 +0,0 @@ -from .config import PipConfig, StakingConfig, EconomicConfig -from .pip import Pip -from .delegate import Delegate -from .genesis import Genesis -from .staking import Staking -from .duplicate_sign import DuplicateSign -from .restricting import Restricting -from .utils import * -from .client import Client -from .economic import Economic diff --git a/cases/tests/lib/client.py b/cases/tests/lib/client.py deleted file mode 100644 index 961422acbe..0000000000 --- a/cases/tests/lib/client.py +++ /dev/null @@ -1,62 +0,0 @@ -from environment.env import TestEnvironment -from environment.node import Node -from .config import StakingConfig -from .economic import Economic -from .restricting import Restricting -from .delegate import Delegate -from .staking import Staking -from .pip import Pip -from .duplicate_sign import DuplicateSign -from typing import List - - -class Client: - """ - Test client, the interface call method required for the collection test - example: - >>>cfg = StakingConfig("1111","test-node","http://test-node.com","I'm tester") - >>>client = Client(env, node, cfg) - >>>client.staking.create_staking(...) - """ - - def __init__(self, env: TestEnvironment, node: Node, cfg: StakingConfig): - self.node = node - self.economic = Economic(env) - self.staking = Staking(env, node, cfg) - self.restricting = Restricting(env, node) - self.delegate = Delegate(env, node) - self.pip = Pip(env, node) - self.duplicatesign = DuplicateSign(env, node) - - @property - def ppos(self): - """ - use sdk ppos object - :return: - """ - return self.node.ppos - - -def get_client_by_nodeid(nodeid, client_obj_list: List[Client]) -> Client: - """ - Get the client object according to the node id - :param nodeid: - :param client_obj_list: - :return: - """ - for client_obj in client_obj_list: - if nodeid == client_obj.node.node_id: - return client_obj - - -def get_clients_by_nodeid(nodeid_list, client_obj_list: List[Client]) -> List[Client]: - """ - Get the client object list according to the node id list - :param nodeid_list: - :param client_obj_list: - :return: - """ - new_client_obj_list = [] - for nodeid in nodeid_list: - new_client_obj_list.append(get_client_by_nodeid(nodeid, client_obj_list)) - return new_client_obj_list diff --git a/cases/tests/lib/config.py b/cases/tests/lib/config.py deleted file mode 100644 index a26ea5b441..0000000000 --- a/cases/tests/lib/config.py +++ /dev/null @@ -1,75 +0,0 @@ -import os -from conf.settings import BASE_DIR - - -class StakingConfig: - def __init__(self, external_id, node_name, website, details): - self.external_id = external_id - self.node_name = node_name - self.website = website - self.details = details - - -class PipConfig: - PLATON_NEW_BIN = os.path.abspath(os.path.join(BASE_DIR, "deploy/bin/newpackage/platon")) - PLATON_NEW_BIN1 = os.path.abspath(os.path.join(BASE_DIR, "deploy/bin/newpackage/version1/platon")) - PLATON_NEW_BIN2 = os.path.abspath(os.path.join(BASE_DIR, "deploy/bin/newpackage/version2/platon")) - PLATON_NEW_BIN3 = os.path.abspath(os.path.join(BASE_DIR, "deploy/bin/newpackage/version3/platon")) - PLATON_NEW_BIN4 = os.path.abspath(os.path.join(BASE_DIR, "deploy/bin/newpackage/version4/platon")) - PLATON_NEW_BIN8 = os.path.abspath(os.path.join(BASE_DIR, "deploy/bin/newpackage/version8/platon")) - PLATON_NEW_BIN9 = os.path.abspath(os.path.join(BASE_DIR, "deploy/bin/newpackage/version9/platon")) - PLATON_NEW_BIN6 = os.path.abspath(os.path.join(BASE_DIR, "deploy/bin/newpackage/version6/platon")) - PLATON_NEW_BIN7 = os.path.abspath(os.path.join(BASE_DIR, "deploy/bin/newpackage/version7/platon")) - PLATON_NEW_BIN0 = os.path.abspath(os.path.join(BASE_DIR, "deploy/bin/platon")) - PLATON_NEW_BIN120 = os.path.abspath(os.path.join(BASE_DIR, "deploy/bin/newpackage/diffcodeversion/platon")) - text_proposal = 1 - cancel_proposal = 4 - version_proposal = 2 - param_proposal = 3 - vote_option_yeas = 1 - vote_option_nays = 2 - vote_option_Abstentions = 3 - version1 = 1537 - version2 = 3584 - version3 = 3593 - version4 = 3840 - version5 = 3841 - version6 = 3849 - version7 = 4096 - version8 = 591617 - version9 = 526081 - version0 = 3584 - transaction_cfg = {"gasPrice": 3000000000000000, "gas": 1000000} - # Lock account account address - FOUNDATION_LOCKUP_ADDRESS = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpd3er4y" - - -class EconomicConfig: - # Year zero lock_pu release amount - RELEASE_ZERO = 62215742.48691650 - # Year zero Initial issue - TOKEN_TOTAL = 10250000000000000000000000000 - # Built in node Amount of pledge - DEVELOPER_STAKING_AMOUNT = 1500000000000000000000000 - # PlatON Foundation Address - FOUNDATION_ADDRESS = "atx1m6n2wj6cmnnqnmhhaytyf6x75607t7rhszeuhk" - # Lock account account address - FOUNDATION_LOCKUP_ADDRESS = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpd3er4y" - # Pledged contract address - STAKING_ADDRESS = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzrzv4mm" - # PlatON incentive pool account - INCENTIVEPOOL_ADDRESS = "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr75cqxf" - # Remaining total account - REMAIN_ACCOUNT_ADDRESS = "atx1zkrxx6rf358jcvr7nruhyvr9hxpwv9unj58er9" - # Developer Foundation Account - DEVELOPER_FOUNDATAION_ADDRESS = 'atx1ur2hg0u9wt5qenmkcxlp7ysvaw6yupt4xerq62' - - release_info = [{"blockNumber": 1600, "amount": 55965742000000000000000000}, - {"blockNumber": 3200, "amount": 49559492000000000000000000}, - {"blockNumber": 4800, "amount": 42993086000000000000000000}, - {"blockNumber": 6400, "amount": 36262520000000000000000000}, - {"blockNumber": 8000, "amount": 29363689000000000000000000}, - {"blockNumber": 9600, "amount": 22292388000000000000000000}, - {"blockNumber": 11200, "amount": 15044304000000000000000000}, - {"blockNumber": 12800, "amount": 7615018000000000000000000} - ] diff --git a/cases/tests/lib/delegate.py b/cases/tests/lib/delegate.py deleted file mode 100644 index f73ca997e4..0000000000 --- a/cases/tests/lib/delegate.py +++ /dev/null @@ -1,96 +0,0 @@ -from environment.env import TestEnvironment -from environment.node import Node -from .economic import Economic - - -class Delegate: - """ - Used to initiate a delegate transaction, - if you need to use the call method, please call ppos - example: - >>>delegate=Delegate(env, node) - >>>delegate.ppos.getDelegateInfo(...) - """ - - def __init__(self, env: TestEnvironment, node: Node): - self.node = node - self.economic = Economic(env) - - @property - def ppos(self): - """ - use sdk ppos object - :return: - """ - return self.node.ppos - - def delegate(self, typ, from_address, node_id=None, amount=None, tansaction_cfg=None): - """ - Initiate delegate - :param typ: Amount type - :param from_address: Initiating a delegate account - :param node_id: The id of the delegate node - :param amount: delegate amount - :param tansaction_cfg: - :return: - """ - if node_id is None: - node_id = self.node.node_id - if amount is None: - amount = self.economic.delegate_limit - pri_key = self.economic.account.find_pri_key(from_address) - return self.ppos.delegate(typ, node_id, amount, pri_key, transaction_cfg=tansaction_cfg) - - def withdrew_delegate(self, staking_blocknum, from_address, node_id=None, amount=None, transaction_cfg=None): - """ - Release delegate - :param staking_blocknum: staking block height - :param from_address: Initiating a delegate account - :param node_id: The id of the delegate node - :param amount: Release delegate amount - :param transaction_cfg: - :return: - """ - if node_id is None: - node_id = self.node.node_id - if amount is None: - amount = self.economic.delegate_limit - pri_key = self.economic.account.find_pri_key(from_address) - return self.ppos.withdrewDelegate(staking_blocknum, node_id, amount, pri_key, transaction_cfg) - - def withdraw_delegate_reward(self, from_address, transaction_cfg=None): - pri_key = self.economic.account.find_pri_key(from_address) - return self.ppos.withdrawDelegateReward(pri_key, transaction_cfg) - - def get_delegate_reward_by_nodeid(self, from_address, node_ids=[]): - reward = 0 - data = self.ppos.getDelegateReward(from_address, node_ids) - if len(node_ids) == 1: - return data.get('Ret')[0].get('reward') - - elif len(node_ids) == 0: - for rewardinfo in data.get('Ret'): - reward += rewardinfo.get('reward') - else: - for rewardinfo in data.get('Ret'): - if rewardinfo.get('nodeID') in node_ids: - reward += rewardinfo.get('reward') - return reward - - def get_staking_num_by_nodeid(self, from_address, node_ids=None): - if node_ids is None: - node_ids = [] - else: - node_ids = [node_ids] - data = self.ppos.getDelegateReward(from_address, node_ids) - if data.get('Code') != 0: - raise Exception('address {} no reward information'.format(from_address)) - for rewardinfo in data.get('Ret'): - if node_ids[0] == rewardinfo.get('nodeID'): - return rewardinfo.get('stakingNum') - raise Exception('Address {} no reward inforamtion about nodeid {}'.format( - from_address, node_ids[0] - )) - - - diff --git a/cases/tests/lib/duplicate_sign.py b/cases/tests/lib/duplicate_sign.py deleted file mode 100644 index 8389b1c656..0000000000 --- a/cases/tests/lib/duplicate_sign.py +++ /dev/null @@ -1,25 +0,0 @@ -from environment.env import TestEnvironment -from environment.node import Node -from .economic import Economic - - -class DuplicateSign: - def __init__(self, env: TestEnvironment, node: Node): - self.node = node - self.economic = Economic(env) - - def reportDuplicateSign(self, typ, data, from_address, transaction_cfg=None): - """ - Report duplicate sign - :param typ: Represents duplicate sign type, 1:prepareBlock, 2: prepareVote, 3:viewChange - :param data: Json value of single evidence, format reference RPC interface Evidences - :param from_address: address for transaction - :param transaction_cfg: - :return: - """ - pri_key = self.economic.account.find_pri_key(from_address) - return self.ppos.reportDuplicateSign(typ, data, pri_key, transaction_cfg) - - @property - def ppos(self): - return self.node.ppos diff --git a/cases/tests/lib/economic.py b/cases/tests/lib/economic.py deleted file mode 100644 index e2bd61d4d8..0000000000 --- a/cases/tests/lib/economic.py +++ /dev/null @@ -1,272 +0,0 @@ -from decimal import Decimal - -from dacite import from_dict -from .utils import wait_block_number, get_pledge_list -from environment.node import Node -from .genesis import Genesis -from common.key import get_pub_key -import math -from .config import EconomicConfig -from environment.env import TestEnvironment - - -class Economic: - cfg = EconomicConfig - - def __init__(self, env: TestEnvironment): - self.env = env - - self.genesis = from_dict(data_class=Genesis, data=self.env.genesis_config) - - # Block rate parameter - self.per_round_blocks = self.genesis.config.cbft.amount - self.interval = int((self.genesis.config.cbft.period / self.per_round_blocks) / 1000) - - # Length of additional issuance cycle - self.additional_cycle_time = self.genesis.economicModel.common.additionalCycleTime - - # Number of verification - self.validator_count = self.genesis.economicModel.common.maxConsensusVals - - # Billing related - # Billing cycle - self.expected_minutes = self.genesis.economicModel.common.maxEpochMinutes - # Consensus rounds - # self.consensus_wheel = (self.expected_minutes * 60) // ( - # self.interval * self.per_round_blocks * self.validator_count) - # Number of settlement periods - # self.settlement_size = self.consensus_wheel * (self.interval * self.per_round_blocks * self.validator_count) - # Consensus round number - # self.consensus_size = self.per_round_blocks * self.validator_count - - # Minimum amount limit - self.create_staking_limit = self.genesis.economicModel.staking.stakeThreshold - # Minimum deposit amount - # Minimum holding amount - self.add_staking_limit = self.genesis.economicModel.staking.operatingThreshold - # Minimum commission amount - self.delegate_limit = self.add_staking_limit - # unstaking freeze duration - self.unstaking_freeze_ratio = self.genesis.economicModel.staking.unStakeFreezeDuration - # ParamProposalVote_DurationSeconds - self.pp_vote_settlement_wheel = self.genesis.economicModel.gov.paramProposalVoteDurationSeconds // self.settlement_size - # slash blocks reward - self.slash_blocks_reward = self.genesis.economicModel.slashing.slashBlocksReward - # text proposal vote duration senconds - self.tp_vote_settlement_wheel = self.genesis.economicModel.gov.textProposalVoteDurationSeconds // ( - self.interval * self.per_round_blocks * self.validator_count) - - @property - def consensus_wheel(self): - return (self.expected_minutes * 60) // ( - self.interval * self.per_round_blocks * self.validator_count) - - @property - def consensus_size(self): - return self.per_round_blocks * self.validator_count - - @property - def settlement_size(self): - return self.consensus_wheel * (self.interval * self.per_round_blocks * self.validator_count) - - - @property - def account(self): - return self.env.account - - def get_block_count_number(self, node: Node, current_block=None, roundnum=1): - """ - Get the number of blocks out of the verification node - """ - if current_block is None: - current_block = node.eth.blockNumber - block_namber = self.consensus_size * roundnum - count = 0 - for i in range(block_namber): - if current_block > 0: - node_id = node.eth.ecrecover(current_block) - # node_id = get_pub_key(node.url, current_block) - current_block = current_block - 1 - if node_id == node.node_id: - count = count + 1 - else: - break - return count - - def get_number_blocks_in_interval(self, node: Node, roundnum=1): - """ - Get the number of blocks produced by the specified interval of the node - """ - tmp_current_block = node.eth.blockNumber - last_end_block = int(tmp_current_block / self.settlement_size) * self.settlement_size - block_number = self.settlement_size * roundnum - count = 0 - for i in range(block_number): - node_id = node.eth.ecrecover(last_end_block) - # node_id = get_pub_key(node.url, last_end_block) - last_end_block = last_end_block - 1 - if node_id == node.node_id: - count = count + 1 - return count - - def calculate_delegate_reward(self, node, block_reward, staking_reward, reward=None): - block_number = self.get_number_blocks_in_interval(node) - if reward is None: - reward = node.ppos.getCandidateInfo(node.node_id)["Ret"]["RewardPer"] - return int(Decimal(str(staking_reward))*Decimal(str(reward))/Decimal(str(10000)) + Decimal(str(int(Decimal(str(block_reward))*Decimal(str(reward))/Decimal(str(10000))))) * Decimal(str(block_number))) - - def delegate_cumulative_income(self, node, block_reward, staking_reward, delegate_total_amount, delegate_amount, reward=None): - entrusted_income = self.calculate_delegate_reward(node, block_reward, staking_reward, reward) - print("entrusted_income: ", entrusted_income) - # unit_commission_award = math.floor(Decimal(str(entrusted_income)) / int((Decimal(str(delegate_total_amount)) / (10 ** 9)))) - # print("unit_commission_award: ", unit_commission_award) - # current_commission_award = int((Decimal(str(delegate_amount)) / (10 ** 9)) * Decimal(str(unit_commission_award))) - # print("current_commission_award: ", current_commission_award) - current_commission_award = math.floor(Decimal(str(entrusted_income)) * Decimal(str(delegate_amount)) / Decimal(str(delegate_total_amount))) - print("current_commission_award: ", current_commission_award) - return current_commission_award - - def delegate_dividend_income(self, delegate_reward_total, delegate_total_amount, delegate_amount): - # unit_commission_award = math.floor(Decimal(str(delegate_reward_total)) / int((Decimal(str(delegate_total_amount)) / (10 ** 9)))) - # print("unit_commission_award: ", unit_commission_award) - # current_commission_award = int((Decimal(str(delegate_amount)) / (10 ** 9)) * Decimal(str(unit_commission_award))) - # print("current_commission_award: ", current_commission_award) - # return current_commission_award - current_commission_award = math.floor(Decimal(str(delegate_reward_total)) * Decimal(str(delegate_amount)) / Decimal(str(delegate_total_amount))) - print("current_commission_award: ", current_commission_award) - return current_commission_award - - def get_current_year_reward(self, node: Node, verifier_num=None): - """ - Get the first year of the block reward, pledge reward - :return: - """ - # if new_block_rate is None: - # new_block_rate = self.genesis.economicModel.reward.newBlockRate - # # current_block = node.eth.blockNumber - # annualcycle = (self.additional_cycle_time * 60) // self.settlement_size - # annual_size = annualcycle * self.settlement_size - # # starting_block_height = math.floor(current_block / annual_size) * annual_size - if verifier_num is None: - verifier_list = get_pledge_list(node.ppos.getVerifierList) - verifier_num = len(verifier_list) - # # amount = node.eth.getBalance(self.cfg.INCENTIVEPOOL_ADDRESS, starting_block_height) - # if amount is None: - # amount = 262215742000000000000000000 - # block_proportion = str(new_block_rate / 100) - # staking_proportion = str(1 - new_block_rate / 100) - # block_reward = int(Decimal(str(amount)) * Decimal(str(block_proportion)) / Decimal(str(annual_size))) - node.web3.toWei(1 , 'ether') - # staking_reward = int( - # Decimal(str(amount)) * Decimal(str(staking_proportion)) / Decimal(str(annualcycle)) / Decimal( - # str(verifier_num))) - # # staking_reward = amount - block_reward - result = node.ppos.getPackageReward() - block_reward = result['Ret'] - result = node.ppos.getStakingReward() - staking_reward = int(Decimal(str(result['Ret'])) / Decimal(str(verifier_num))) - return block_reward, staking_reward - - def get_switchpoint_by_settlement(self, node: Node, number=0): - """ - Get the last block of the current billing cycle -        :param node: node object -        :param number: number of billing cycles - :return: - """ - block_number = self.settlement_size * number - tmp_current_block = node.eth.blockNumber - current_end_block = math.ceil(tmp_current_block / self.settlement_size) * self.settlement_size + block_number - return current_end_block - - def get_settlement_switchpoint(self, block_number: int): - if block_number == 0: - return 1 * self.settlement_size - return math.ceil(block_number / self.settlement_size) * self.settlement_size - - def get_front_settlement_switchpoint(self, node: Node, number=0): - """ - Get a block height before the current billing cycle -        :param node: node object -        :param number: number of billing cycles - :return: - """ - block_num = self.settlement_size * (number + 1) - current_end_block = self.get_switchpoint_by_settlement(node) - history_block = current_end_block - block_num + 1 - return history_block - - def wait_settlement(self, node: Node, settlement=0): - """ - Waiting for a billing cycle to settle -        :param node: -        :param number: number of billing cycles - :return: - """ - end_block = self.get_switchpoint_by_settlement(node, settlement) - wait_block_number(node, end_block, self.interval) - - def get_switchpoint_by_annual(self, node: Node): - """ - Get the number of annual settlement cycles - """ - annual_cycle = (self.additional_cycle_time * 60) // self.settlement_size - annualsize = annual_cycle * self.settlement_size - current_block = node.eth.blockNumber - current_end_block = math.ceil(current_block / annualsize) * annualsize - return annual_cycle, annualsize, current_end_block - - def get_annual_switchpoint(self, block_number: int): - annual_cycle = (self.additional_cycle_time * 60) // self.settlement_size - annual_size = annual_cycle * self.settlement_size - return math.ceil(block_number / annual_size) * annual_size - - def wait_annual(self, node: Node): - """ - Waiting for the end of the annual block high - """ - annualcycle, annualsize, current_end_block = self.get_switchpoint_by_annual(node) - current_block = node.eth.blockNumber - differ_block = annualsize - (current_block % annualsize) - annual_end_block = current_block + differ_block - wait_block_number(node, annual_end_block, self.interval) - - def wait_consensus(self, node: Node, consensus=0): - """ - Waiting for a consensus round to end - """ - end_block = self.get_switchpoint_by_consensus(node, consensus) - wait_block_number(node, end_block, self.interval) - - def get_switchpoint_by_consensus(self, node: Node, consensus=0): - """ - Get the specified consensus round high - """ - block_number = self.consensus_size * consensus - current_block = node.eth.blockNumber - current_end_block = math.ceil(current_block / self.consensus_size) * self.consensus_size + block_number - return current_end_block - - def get_consensus_switchpoint(self, block_number): - if block_number == 0: - return 1 * self.consensus_size - return math.ceil(block_number / self.consensus_size) * self.consensus_size - - def get_report_reward(self, amount, penalty_ratio=None, proportion_ratio=None): - """ - Gain income from double sign whistleblower and incentive pool - :param node: - :return: - """ - if penalty_ratio is None: - penalty_ratio = self.genesis.economicModel.slashing.slashFractionDuplicateSign - if proportion_ratio is None: - proportion_ratio = self.genesis.economicModel.slashing.duplicateSignReportReward - penalty_reward = int(Decimal(str(amount)) * Decimal(str(penalty_ratio / 10000))) - proportion_reward = int(Decimal(str(penalty_reward)) * Decimal(str(proportion_ratio / 100))) - incentive_pool_reward = penalty_reward - proportion_reward - return proportion_reward, incentive_pool_reward - - -if __name__ == '__main__': - a = Economic() - a.get_current_year_reward() diff --git a/cases/tests/lib/genesis.py b/cases/tests/lib/genesis.py deleted file mode 100644 index a411bb02e2..0000000000 --- a/cases/tests/lib/genesis.py +++ /dev/null @@ -1,144 +0,0 @@ -from dataclasses import dataclass -from dacite import from_dict -from typing import Optional -import json - - -@dataclass -class Cbft: - initialNodes: list - amount: int - validatorMode: str - period: int - - -@dataclass -class Config: - chainId: int - eip155Block: int - cbft: Cbft - genesisVersion: int - - -@dataclass -class Common: - maxEpochMinutes: int - maxConsensusVals: int - additionalCycleTime: int - - -@dataclass -class Staking: - stakeThreshold: int - operatingThreshold: int - maxValidators: int - unStakeFreezeDuration: int - rewardPerMaxChangeRange: int - rewardPerChangeInterval: int - - -@dataclass -class Slashing: - slashFractionDuplicateSign: int - duplicateSignReportReward: int - slashBlocksReward: int - maxEvidenceAge: int - zeroProduceCumulativeTime: int - zeroProduceNumberThreshold: int - zeroProduceFreezeDuration: int - - -@dataclass -class Gov: - versionProposalVoteDurationSeconds: int - versionProposalSupportRate: int - textProposalVoteDurationSeconds: int - textProposalVoteRate: int - textProposalSupportRate: int - cancelProposalVoteRate: int - cancelProposalSupportRate: int - paramProposalVoteDurationSeconds: int - paramProposalVoteRate: int - paramProposalSupportRate: int - - -@dataclass -class Reward: - newBlockRate: int - platONFoundationYear: int - increaseIssuanceRatio: int - - -@dataclass -class Restricting: - minimum_release: int - - -@dataclass -class InnerAcc: - platonFundAccount: str - platonFundBalance: int - cdfAccount: str - cdfBalance: int - - -@dataclass -class EconomicModel: - common: Common - staking: Staking - slashing: Slashing - gov: Gov - reward: Reward - restricting: Restricting - innerAcc: InnerAcc - - -@dataclass -class Genesis: - config: Config - economicModel: EconomicModel - nonce: str - timestamp: str - extraData: str - gasLimit: str - alloc: dict - number: str - gasUsed: str - parentHash: str - - def to_dict(self): - from copy import copy - data = copy(self.__dict__) - data["config"] = copy(self.config.__dict__) - data["config"]["cbft"] = copy(self.config.cbft.__dict__) - data["economicModel"] = copy(self.economicModel.__dict__) - data["economicModel"]["common"] = copy(self.economicModel.common.__dict__) - data["economicModel"]["staking"] = copy(self.economicModel.staking.__dict__) - data["economicModel"]["slashing"] = copy(self.economicModel.slashing.__dict__) - data["economicModel"]["gov"] = copy(self.economicModel.gov.__dict__) - data["economicModel"]["reward"] = copy(self.economicModel.reward.__dict__) - data["economicModel"]["restricting"] = copy(self.economicModel.restricting.__dict__) - data["economicModel"]["innerAcc"] = copy(self.economicModel.innerAcc.__dict__) - return data - - def to_file(self, file): - data = self.to_dict() - with open(file, "w") as f: - f.write(json.dumps(data, indent=4)) - - -def to_genesis(genesis_conf) -> Genesis: - return from_dict(Genesis, genesis_conf) - - -if __name__ == "__main__": - # from common.load_file import LoadFile - # from conf.settings import GENESIS_FILE - # import json - # genesis_data = LoadFile(GENESIS_FILE).get_data() - # genesis = from_dict(data_class=Genesis, data=genesis_data) - # genesis.config.chainId = 1 - # # print(genesis_to_dict(genesis)) - # print(genesis.to_dict()) - - pass diff --git a/cases/tests/lib/pip.py b/cases/tests/lib/pip.py deleted file mode 100644 index c19e69f4a2..0000000000 --- a/cases/tests/lib/pip.py +++ /dev/null @@ -1,496 +0,0 @@ -from loguru import logger - -from environment.env import TestEnvironment -from environment.node import Node -from .config import PipConfig -from .economic import Economic -from .utils import int_to_bytes, get_blockhash, proposal_list_effective, proposal_effective, find_proposal -from typing import List -import time - - -class Pip: - """ - Used to initiate a pip transaction, - if you need to use the call method, please call pip - example: - >>>pip=Pip(env, node) - >>>pip.pip.getActiveVersion(...) - """ - cfg = PipConfig - - def __init__(self, env: TestEnvironment, node: Node): - self.node = node - self.economic = Economic(env) - - def submitText(self, verifier, pip_id, from_address, transaction_cfg=None): - """ - Submit a text proposal - :param verifier: The certified submitting the proposal - :param pip_id: PIPID - :param from_address: address for transaction - :param transaction_cfg: Transaction basic configuration - type: dict - example:cfg = { - "gas":100000000, - "gasPrice":2000000000000, - "nonce":1, - } - :return: if is need analyze return transaction result dict - if is not need analyze return transaction hash - """ - pri_key = self.economic.account.find_pri_key(from_address) - return self.pip.submitText(verifier, pip_id, pri_key, transaction_cfg) - - def submitVersion(self, verifier, pip_id, new_version, end_voting_rounds, from_address, transaction_cfg=None): - """ - Submit an upgrade proposal - :param verifier: The certified submitting the proposal - :param pip_id: PIPID - :param new_version: upgraded version - :param end_voting_rounds: The number of voting consensus rounds. - Explanation: Assume that the transaction submitted by the proposal is rounded when the consensus round - number of the package is packed into the block, then the proposal voting block is high, - which is the 230th block height of the round of the round1 + endVotingRounds - (assuming a consensus round out of block 250, ppos The list is 20 blocks high in advance, - 250, 20 are configurable), where 0 < endVotingRounds <= 4840 (about 2 weeks, the actual discussion - can be calculated according to the configuration), and is an integer) - :param from_address: address for transaction - :param transaction_cfg: Transaction basic configuration - type: dict - example:cfg = { - "gas":100000000, - "gasPrice":2000000000000, - "nonce":1, - } - :return: if is need analyze return transaction result dict - if is not need analyze return transaction hash - """ - pri_key = self.economic.account.find_pri_key(from_address) - return self.pip.submitVersion(verifier, pip_id, new_version, end_voting_rounds, pri_key, transaction_cfg) - - def submitParam(self, verifier, pip_id, module, name, new_value, from_address, transaction_cfg=None): - """ - Submit an param proposal - :param verifier: The certified submitting the proposal - :param pip_id: PIPID - :param module: parameter module - :param name: parameter name - :param new_value: New parameter value - :param from_address: address for transaction - :param transaction_cfg: Transaction basic configuration - type: dict - example:cfg = { - "gas":100000000, - "gasPrice":2000000000000, - "nonce":1, - } - :return: if is need analyze return transaction result dict - if is not need analyze return transaction hash - """ - pri_key = self.economic.account.find_pri_key(from_address) - return self.pip.submitParam(verifier, pip_id, module, name, new_value, pri_key, transaction_cfg) - - def submitCancel(self, verifier, pip_id, end_voting_rounds, tobe_canceled_proposal_id, from_address, transaction_cfg=None): - """ - Submit cancellation proposal - :param verifier: The certified submitting the proposal - :param pip_id: PIPID - :param end_voting_rounds: - The number of voting consensus rounds. Refer to the instructions for submitting the upgrade proposal. - At the same time, the value of this parameter in this interface - cannot be greater than the value in the corresponding upgrade proposal. - :param tobe_canceled_proposal_id: Upgrade proposal ID to be cancelled - :param from_address: address for transaction - :param transaction_cfg: Transaction basic configuration - type: dict - example:cfg = { - "gas":100000000, - "gasPrice":2000000000000, - "nonce":1, - } - :return: if is need analyze return transaction result dict - if is not need analyze return transaction hash - """ - pri_key = self.economic.account.find_pri_key(from_address) - return self.pip.submitCancel(verifier, pip_id, end_voting_rounds, tobe_canceled_proposal_id, pri_key, transaction_cfg) - - def vote(self, verifier, proposal_id, option, from_address, program_version=None, version_sign=None, transaction_cfg=None): - """ - Vote for proposal - :param verifier: The certified submitting the proposal - :param proposal_id: Proposal ID - :param option: Voting option - :param program_version: Node code version, obtained by rpc getProgramVersion interface - :param version_sign: Code version signature, obtained by rpc getProgramVersion interface - :param from_address: address for transaction - :param transaction_cfg: Transaction basic configuration - type: dict - example:cfg = { - "gas":100000000, - "gasPrice":2000000000000, - "nonce":1, - } - :return: if is need analyze return transaction result dict - if is not need analyze return transaction hash - """ - pri_key = self.economic.account.find_pri_key(from_address) - if program_version is None: - program_version = self.node.program_version - if version_sign is None: - version_sign = self.node.program_version_sign - return self.pip.vote(verifier, proposal_id, option, program_version, version_sign, pri_key, transaction_cfg) - - def declareVersion(self, active_node, from_address, program_version=None, version_sign=None, transaction_cfg=None): - """ - Version statement - :param active_node: The declared node can only be a verifier/candidate - :param program_version: The declared version, obtained by rpc's getProgramVersion interface - :param version_sign: The signed version signature, obtained by rpc's getProgramVersion interface - :param from_address: address transaction - :param transaction_cfg: Transaction basic configuration - type: dict - example:cfg = { - "gas":100000000, - "gasPrice":2000000000000, - "nonce":1, - } - :return: if is need analyze return transaction result dict - if is not need analyze return transaction hash - """ - pri_key = self.economic.account.find_pri_key(from_address) - if program_version is None: - program_version = self.node.program_version - if version_sign is None: - version_sign = self.node.program_version_sign - return self.pip.declareVersion(active_node, program_version, version_sign, pri_key, transaction_cfg) - - @property - def pip(self): - """ - use sdk pip - :return: - """ - return self.node.pip - - def get_status_of_proposal(self, proposal_id): - """ - Get proposal voting results - :param proposal_id: - :return: - """ - result = self.pip.getTallyResult(proposal_id) - logger.info(f'getTallyResult result == {result}') - data = result.get('Ret') - # data = json.loads(data) - if not data: - raise Exception('Failed to query proposal result based on given proposal id') - return data.get('status') - - def get_accu_verifiers_of_proposal(self, proposal_id): - """ - Get the total number of certifiers who have voted for the entire voting period - :param proposal_id: - :return: - """ - result = self.pip.getTallyResult(proposal_id) - resultinfo = result.get('Ret') - # resultinfo = json.loads(resultinfo) - if not resultinfo: - raise Exception('Failed to query proposal result based on given proposal id') - return resultinfo.get('accuVerifiers') - - def get_yeas_of_proposal(self, proposal_id): - """ - Get the number of people who voted for the entire voting period - :param proposal_id: - :return: - """ - result = self.pip.getTallyResult(proposal_id) - data = result.get('Ret') - # data = json.loads(data) - if not data: - raise Exception('Failed to query proposal result based on given proposal id') - return data.get('yeas') - - def get_nays_of_proposal(self, proposal_id): - """ - Get the number of votes against the entire voting period - :param proposal_id: - :return: - """ - result = self.pip.getTallyResult(proposal_id) - data = result.get('Ret') - # data = json.loads(data) - if not data: - raise Exception('Failed to query proposal result based on given proposal id') - return data.get('nays') - - def get_abstentions_of_proposal(self, proposal_id): - """ - Obtain the number of abstentions during the entire voting period - :param proposal_id: - :return: - """ - result = self.pip.getTallyResult(proposal_id) - data = result.get('Ret') - # data = json.loads(data) - if not data: - raise Exception('Failed to query proposal result based on given proposal id') - return data.get('abstentions') - - def get_canceledby_of_proposal(self, proposal_id): - """ - Obtain the number of abstentions during the entire voting period - :param proposal_id: - :return: - """ - result = self.pip.getTallyResult(proposal_id) - data = result.get('Ret') - # data = json.loads(data) - if not data: - raise Exception('Failed to query proposal result based on given proposal id') - return data.get('canceledBy') - - @property - def chain_version(self): - """ - Get the version number on the chain - :return: - """ - result = self.pip.getActiveVersion() - return int(result.get('Ret')) - - def get_version_small_version(self, flag=3): - """ - Determine if the minor version of the incoming version number is 0 - :param flag: - :return: - """ - flag = int(flag) - if flag > 3 or flag < 1: - raise Exception("Incorrect parameters passed in") - version = int(self.chain_version) - version_byte = int_to_bytes(version) - return version_byte[flag] - - def get_accuverifiers_count(self, proposal_id, blocknumber=None): - """ - Get proposal real-time votes - :param proposal_id: - :param blocknumber: - :return: - """ - if blocknumber is None: - blocknumber = self.node.block_number - blockhash = get_blockhash(self.node, blocknumber) - result = self.pip.getAccuVerifiersCount(proposal_id, blockhash) - voteinfo = result.get('Ret') - # vote_result = eval(voteinfo) - return voteinfo - - def get_rate_of_voting(self, proposal_id): - """ - Calculate the voting rate of the upgrade proposal - :param proposal_id: - :return: - """ - result = self.pip.getTallyResult(proposal_id).get('Ret') - # result = json.loads(result) - if not result: - raise Exception('Failed to query proposal result based on given proposal id') - yeas = result.get('yeas') - accu_verifiers = result.get('accuVerifiers') - return yeas / accu_verifiers - - def get_effect_proposal_info_of_preactive(self): - """ - Get pre-valid proposal information on the chain - :return: - """ - result = self.pip.listProposal().get('Ret') - logger.info(f'result == {result}') - # result = json.loads(result) - for pid_list in result: - if pid_list.get('ProposalType') == 2: - if self.get_status_of_proposal(pid_list.get('ProposalID')) == 4: - return pid_list - raise Exception('There is no pre-validation upgrade proposal') - - def get_effect_proposal_info_of_vote(self, proposaltype=cfg.version_proposal): - """ - Get pre-valid proposal information on the chain - :return: - """ - if not self.is_exist_effective_proposal_for_vote(self.cfg.text_proposal) and proposaltype == self.cfg.text_proposal: - return None - - if not self.is_exist_effective_proposal_for_vote(self.cfg.version_proposal) and proposaltype == self.cfg.version_proposal: - return None - - if not self.is_exist_effective_proposal_for_vote(self.cfg.cancel_proposal) and proposaltype == self.cfg.cancel_proposal: - return None - - if not self.is_exist_effective_proposal_for_vote(self.cfg.param_proposal) and proposaltype == self.cfg.param_proposal: - return None - - proposal_info = self.pip.listProposal().get('Ret') - logger.info(f'proposal_info ==== {proposal_info}') - # proposal_info = json.loads(proposal_info) - proposal_list_text = [] - proposal_list_version = [] - proposal_list_param = [] - proposal_list_cancel = [] - for pid_list in proposal_info: - if pid_list.get('ProposalType') == self.cfg.text_proposal: - proposal_list_text.append(pid_list) - - elif pid_list.get('ProposalType') == self.cfg.version_proposal: - proposal_list_version.append(pid_list) - - elif pid_list.get('ProposalType') == self.cfg.cancel_proposal: - proposal_list_cancel.append(pid_list) - - elif pid_list.get('ProposalType') == self.cfg.param_proposal: - proposal_list_param.append(pid_list) - else: - raise Exception("Unknown proposal type") - # Current block height - block_number = self.node.eth.blockNumber - if proposaltype == self.cfg.text_proposal: - return find_proposal(proposal_list_text, block_number) - - elif proposaltype == self.cfg.version_proposal: - return find_proposal(proposal_list_version, block_number) - - elif proposaltype == self.cfg.cancel_proposal: - return find_proposal(proposal_list_cancel, block_number) - - elif proposaltype == self.cfg.param_proposal: - return find_proposal(proposal_list_param, block_number) - else: - raise Exception("listProposal interface gets the wrong proposal type") - - def get_proposal_info_list(self): - """ - Get a list of proposals - :return: - """ - proposal_info_list = self.pip.listProposal().get('Ret') - version_proposal_list, text_proposal_list, cancel_proposal_list, param_proposal_list = [], [], [], [] - if proposal_info_list != 'Object not found': - # proposal_info_list = json.loads(proposal_info_list) - for proposal_info in proposal_info_list: - if proposal_info.get('ProposalType') == self.cfg.version_proposal: - version_proposal_list.append(proposal_info) - elif proposal_info.get('ProposalType') == self.cfg.text_proposal: - text_proposal_list.append(proposal_info) - elif proposal_info.get('ProposalType') == self.cfg.cancel_proposal: - cancel_proposal_list.append(proposal_info) - elif proposal_info.get('ProposalType') == self.cfg.param_proposal: - param_proposal_list.append(proposal_info) - else: - raise Exception('listProposal interface gets the wrong proposal type') - return version_proposal_list, text_proposal_list, cancel_proposal_list, param_proposal_list - - def is_exist_effective_proposal(self, proposal_type=None): - """ - Determine if there is a valid upgrade proposal on the chain - to determine if a proposal can be initiated -    :param proposal_type: 2 is the upgrade proposal 1. Text proposal 4. Cancel the proposal -    :return: - """ - if proposal_type is None: - proposal_type = self.cfg.version_proposal - version_proposal_list, text_proposal_list, cancel_proposal_list, param_proposal_list = self.get_proposal_info_list() - block_number = self.node.eth.blockNumber - if proposal_type == self.cfg.version_proposal: - for version_proposal in version_proposal_list: - if proposal_effective(version_proposal, block_number): - return True - else: - status = self.get_status_of_proposal(version_proposal["ProposalID"].strip()) - if status == 4: - return True - - elif proposal_type == self.cfg.text_proposal: - return proposal_list_effective(text_proposal_list, block_number) - - elif proposal_type == self.cfg.cancel_proposal: - return proposal_list_effective(cancel_proposal_list, block_number) - - elif proposal_type == self.cfg.param_proposal: - return proposal_list_effective(param_proposal_list, block_number) - else: - raise Exception("Incoming type error") - return False - - def is_exist_effective_proposal_for_vote(self, proposal_type=None): - """ - Is there a valid proposal for voting? - :param proposal_type: - :return: - """ - if proposal_type is None: - proposal_type = self.cfg.version_proposal - version_proposal_list, text_proposal_list, cancel_proposal_list, param_proposal_list = self.get_proposal_info_list() - block_number = self.node.eth.blockNumber - if proposal_type == self.cfg.version_proposal: - return proposal_list_effective(version_proposal_list, block_number) - - elif proposal_type == self.cfg.text_proposal: - return proposal_list_effective(text_proposal_list, block_number) - - elif proposal_type == self.cfg.cancel_proposal: - return proposal_list_effective(cancel_proposal_list, block_number) - - elif proposal_type == self.cfg.param_proposal: - return proposal_list_effective(param_proposal_list, block_number) - else: - raise Exception("Incoming type error") - - def get_candidate_list_not_verifier(self): - """ - 获取当前结算周期非验证人的候选人列表 - :return: - """ - candidate_list = self.node.ppos.getCandidateList().get('Ret') - verifier_list = self.node.ppos.getVerifierList().get('Ret') - if verifier_list == "Getting verifierList is failed:The validator is not exist" or verifier_list == []: - time.sleep(10) - verifier_list = self.node.ppos.getVerifierList().get('Ret') - candidate_no_verify_list = [] - verifier_node_list = [node_info.get("NodeId") for node_info in verifier_list] - for node_info in candidate_list: - node_id = node_info.get("NodeId") - if node_id not in verifier_node_list: - candidate_no_verify_list.append(node_id) - return candidate_no_verify_list - - def get_version(self, version=None): - # todo implement - pass - - -def get_pip_obj(nodeid, pip_obj_list: List[Pip]) -> Pip: - """ - Get the pip object according to the node id - :param nodeid: - :param pip_obj_list: - :return: - """ - for pip_obj in pip_obj_list: - if nodeid == pip_obj.node.node_id: - return pip_obj - - -def get_pip_obj_list(nodeid_list, pip_obj_list: List[Pip]) -> List[Pip]: - """ - Get a list of pip objects based on the node id list - :param nodeid_list: - :param pip_obj_list: - :return: - """ - new_pip_obj_list = [] - for nodeid in nodeid_list: - new_pip_obj_list.append(get_pip_obj(nodeid, pip_obj_list)) - return new_pip_obj_list diff --git a/cases/tests/lib/restricting.py b/cases/tests/lib/restricting.py deleted file mode 100644 index 8d5939af76..0000000000 --- a/cases/tests/lib/restricting.py +++ /dev/null @@ -1,50 +0,0 @@ -from environment.env import TestEnvironment -from environment.node import Node -from .economic import Economic - - -class Restricting: - """ - Used to initiate a Restricting transaction, - if you need to use the call method, please call ppos - example: - >>>res=Restricting(env, node) - >>>res.ppos.getRestrictingInfo(...) - """ - - def __init__(self, env: TestEnvironment, node: Node): - self.node = node - self.economic = Economic(env) - - def createRestrictingPlan(self, account, plan, from_address, transaction_cfg=None): - """ - Create a lockout plan - :param account: Locked account release account - :param plan: - An is a list of RestrictingPlan types (array), and RestrictingPlan is defined as follows: - type RestrictingPlan struct { - Epoch uint64 - Amount *big.Int - } - where Epoch: represents a multiple of the billing period. - The product of the number of blocks per billing cycle indicates that the locked fund - s are released at the target block height. Epoch * The number of blocks per cycle is - at least greater than the maximum irreversible block height. - Amount: indicates the amount to be released on the target block. - :param from_address: address for transaction - :param transaction_cfg: Transaction basic configuration - type: dict - example:cfg = { - "gas":100000000, - "gasPrice":2000000000000, - "nonce":1, - } - :return: if is need analyze return transaction result dict - if is not need analyze return transaction hash - """ - pri_key = self.economic.account.find_pri_key(from_address) - return self.ppos.createRestrictingPlan(account, plan, pri_key, transaction_cfg) - - @property - def ppos(self): - return self.node.ppos diff --git a/cases/tests/lib/staking.py b/cases/tests/lib/staking.py deleted file mode 100644 index 565e0ebcb6..0000000000 --- a/cases/tests/lib/staking.py +++ /dev/null @@ -1,214 +0,0 @@ -from environment.env import TestEnvironment -from environment.node import Node -from .config import StakingConfig -from .economic import Economic -import time - - -class Staking: - """ - Used to initiate a Staking transaction, - if you need to use the call method, please call ppos - example: - >>>staking=Staking(env, node) - >>>staking.ppos.getValidatorList() - """ - - def __init__(self, env: TestEnvironment, node: Node, cfg: StakingConfig): - self.cfg = cfg - self.node = node - self.economic = Economic(env) - - @property - def ppos(self): - return self.node.ppos - - def create_staking(self, typ, benifit_address, from_address, node_id=None, amount=None, program_version=None, - program_version_sign=None, bls_pubkey=None, bls_proof=None, transaction_cfg=None, reward_per=0): - """ - Initiate Staking - :param typ: Indicates whether the account free amount or the account's lock amount is used for staking, 0: free amount; 1: lock amount - :param benifit_address: Income account for accepting block rewards and staking rewards - :param node_id: The idled node Id (also called the candidate's node Id) - :param amount: staking von (unit:von, 1LAT = 10**18 von) - :param program_version: The real version of the program, admin_getProgramVersion - :param program_version_sign: The real version of the program is signed, admin_getProgramVersion - :param bls_pubkey: Bls public key - :param bls_proof: Proof of bls, obtained by pulling the proof interface, admin_getSchnorrNIZKProve - :param from_address: address for transaction - :param transaction_cfg: Transaction basic configuration - type: dict - example:cfg = { - "gas":100000000, - "gasPrice":2000000000000, - "nonce":1, - } - :param reward_per: Proportion of the reward share obtained from the commission, using BasePoint 1BP = 0.01% - :return: if is need analyze return transaction result dict - if is not need analyze return transaction hash - """ - if node_id is None: - node_id = self.node.node_id - if amount is None: - amount = self.economic.create_staking_limit - if program_version is None: - program_version = self.node.program_version - if program_version_sign is None: - program_version_sign = self.node.program_version_sign - if bls_pubkey is None: - bls_pubkey = self.node.blspubkey - if bls_proof is None: - bls_proof = self.node.schnorr_NIZK_prove - pri_key = self.economic.account.find_pri_key(from_address) - return self.ppos.createStaking(typ, benifit_address, node_id, self.cfg.external_id, self.cfg.node_name, - self.cfg.website, self.cfg.details, amount, program_version, program_version_sign, - bls_pubkey, bls_proof, pri_key, reward_per, transaction_cfg=transaction_cfg) - - def edit_candidate(self, from_address, benifit_address, node_id=None, transaction_cfg=None, reward_per=0): - """ - Modify staking information - :param benifit_address: Income account for accepting block rewards and staking rewards - :param node_id: The idled node Id (also called the candidate's node Id) - :param from_address: address for transaction - :param transaction_cfg: Transaction basic configuration - type: dict - example:cfg = { - "gas":100000000, - "gasPrice":2000000000000, - "nonce":1, - } - :param reward_per: Proportion of the reward share obtained from the commission, using BasePoint 1BP = 0.01% - :return: if is need analyze return transaction result dict - if is not need analyze return transaction hash - """ - if node_id is None: - node_id = self.node.node_id - pri_key = self.economic.account.find_pri_key(from_address) - return self.ppos.editCandidate(benifit_address, node_id, self.cfg.external_id, self.cfg.node_name, self.cfg.website, self.cfg.details, - pri_key, reward_per, transaction_cfg=transaction_cfg) - - def increase_staking(self, typ, from_address, node_id=None, amount=None, transaction_cfg=None): - """ - Increase staking - :param typ: Indicates whether the account free amount or the account's lock amount is used for staking, 0: free amount; 1: lock amount - :param node_id: The idled node Id (also called the candidate's node Id) - :param amount: staking von (unit:von, 1LAT = 10**18 von) - :param from_address: address for transaction - :param transaction_cfg: Transaction basic configuration - type: dict - example:cfg = { - "gas":100000000, - "gasPrice":2000000000000, - "nonce":1, - } - :return: if is need analyze return transaction result dict - if is not need analyze return transaction hash - """ - if node_id is None: - node_id = self.node.node_id - if amount is None: - amount = self.economic.add_staking_limit - pri_key = self.economic.account.find_pri_key(from_address) - return self.ppos.increaseStaking(typ, node_id, amount, pri_key, transaction_cfg=transaction_cfg) - - def withdrew_staking(self, from_address, node_id=None, transaction_cfg=None): - """ - Withdrawal of staking (one-time initiation of all cancellations, multiple arrivals) - :param node_id: The idled node Id (also called the candidate's node Id) - :param from_address: address for transaction - :param transaction_cfg: Transaction basic configuration - type: dict - example:cfg = { - "gas":100000000, - "gasPrice":2000000000000, - "nonce":1, - } - :return: if is need analyze return transaction result dict - if is not need analyze return transaction hash - """ - if node_id is None: - node_id = self.node.node_id - pri_key = self.economic.account.find_pri_key(from_address) - return self.ppos.withdrewStaking(node_id, pri_key, transaction_cfg=transaction_cfg) - - def get_staking_address(self): - """ - Get the pledge wallet address - """ - result = self.ppos.getCandidateInfo(self.node.node_id) - candidate_info = result.get('Ret') - address = candidate_info.get('StakingAddress') - return self.node.web3.toChecksumAddress(address) - - def get_candidate_list_not_verifier(self): - """ - Get a list of candidates for non-verifiers for the current billing cycle - """ - candidate_list = self.ppos.getCandidateList().get('Ret') - verifier_list = self.ppos.getVerifierList().get('Ret') - if verifier_list == "Getting verifierList is failed:The validator is not exist": - time.sleep(10) - verifier_list = self.ppos.getVerifierList().get('Ret') - candidate_no_verify_list = [] - verifier_node_list = [node_info.get("NodeId") for node_info in verifier_list] - for node_info in candidate_list: - node_id = node_info.get("NodeId") - if node_id not in verifier_node_list: - candidate_no_verify_list.append(node_id) - return candidate_no_verify_list - - def get_staking_amount(self, node=None, flag=0): - """ - According to the node to obtain the amount of the deposit - """ - if node is None: - node = self.node - flag = int(flag) - stakinginfo = node.ppos.getCandidateInfo(node.node_id) - staking_data = stakinginfo.get('Ret') - shares = int(staking_data.get('Shares')) - released = int(staking_data.get('Released')) - restrictingplan = int(staking_data.get('RestrictingPlan')) - return [shares, released, restrictingplan][flag] - - def get_rewardper(self, node=None, isnext=False): - ''' - According to the node to obtain the reward percent - :param node: - :param isnext: - :return: - ''' - if node is None: - node = self.node - stakinginfo = node.ppos.getCandidateInfo(node.node_id) - print(stakinginfo) - staking_data = stakinginfo.get('Ret') - rewardper = int(staking_data.get('RewardPer')) - nextrewardper = int(staking_data.get('NextRewardPer')) - if isnext: - return nextrewardper - else: - return rewardper - - - def get_version(self, node=None): - """ - According to the node to obtain the amount of the deposit - """ - if node is None: - node = self.node - stakinginfo = node.ppos.getCandidateInfo(node.node_id) - staking_data = stakinginfo.get('Ret') - programversion = staking_data.get('ProgramVersion') - return programversion - - def get_stakingblocknum(self, node=None): - """ - According to the node to obtain the amount of the deposit - """ - if node is None: - node = self.node - stakinginfo = node.ppos.getCandidateInfo(node.node_id) - staking_data = stakinginfo.get('Ret') - stakingblocknum = staking_data.get('StakingBlockNum') - return int(stakingblocknum) diff --git a/cases/tests/lib/utils.py b/cases/tests/lib/utils.py deleted file mode 100644 index 3501103368..0000000000 --- a/cases/tests/lib/utils.py +++ /dev/null @@ -1,407 +0,0 @@ -# -*- coding: utf-8 -*- -import json, rlp -import time -import random -import string -from decimal import Decimal - -from hexbytes import HexBytes -from environment.node import Node -from common.log import log -from common.key import get_pub_key -from typing import List - - -def decorator_sleep(func): - def wrap(): - result = func() - if result is None: - time.sleep(5) - result = func() - return result - return wrap - - -def find_proposal(proposal_list, block_number): - for proposal in proposal_list: - if proposal_effective(proposal, block_number): - return proposal - - -def proposal_list_effective(proposal_list, block_number): - """ - Determine if there is a proposal in the voting period - :param proposal_list: - :param block_number: - :return: - """ - for proposal in proposal_list: - if proposal_effective(proposal, block_number): - return True - return False - - -def proposal_effective(proposal, block_number): - """ - Determine if the proposal is in the voting period - :param proposal: - :param block_number: - :return: - """ - if proposal["EndVotingBlock"] > block_number: - return True - return False - - -def upload_platon(node: Node, platon_bin): - """ - Upload a binary file to the specified node - :param node: - :param platon_bin: - :return: - """ - node.run_ssh("rm -rf {}".format(node.remote_bin_file)) - node.upload_file(platon_bin, node.remote_bin_file) - node.run_ssh("chmod +x {}".format(node.remote_bin_file)) - - node.restart() - -def get_blockhash(node, blocknumber=None): - """ - Get block hash based on block height - :param node: - :param blocknumber: - :return: - """ - if not blocknumber: - blocknumber = node.block_number - blockinfo = node.eth.getBlock(blocknumber) - blockhash = blockinfo.get('hash') - blockhash = HexBytes(blockhash).hex() - return blockhash - - -def int_to_bytes(value): - return int(value).to_bytes(length=4, byteorder='big', signed=False) - - -def int16_to_bytes(value): - return int(value).to_bytes(length=1, byteorder='big', signed=False) - - -def bytes_to_int(value): - return int.from_bytes(value, byteorder='big', signed=False) - - -def compare_two_dict(dict1, dict2, key_list=None): - """ - Compare two dictionary values - :param dict1: - :param dict2: - :param key_list: Align dictionary key list - :return: - """ - if key_list is None: - key_list = ['blockNumber', 'amount'] - flag = True - keys1 = dict1.keys() - keys2 = dict2.keys() - if len(key_list) != 0: - for key in key_list: - if key in keys1 and key in keys2: - if dict1[key] == dict2[key]: - flag = True - else: - flag = False - else: - raise Exception('key_list contains error key') - else: - raise Exception('key_list is null') - return flag - - -def get_no_pledge_node(node_list) -> Node: - """ - Get nodes that are not pledged - :param node_list: Node list - :return: - """ - for node in node_list: - result = node.ppos.getCandidateInfo(node.node_id) - if result['Code'] == 301204: - return node - return None - - -def get_no_pledge_node_list(node_list: List[Node]) -> List[Node]: - """ - Get all the nodes that can be pledged - :param node_list: Node list - :return: - """ - no_pledge_node_list = [] - for node in node_list: - result = node.ppos.getCandidateInfo(node.node_id) - if result['Code'] == 301204: - no_pledge_node_list.append(node) - return no_pledge_node_list - - -def get_pledge_list(func, nodeid=None) -> list: - """ - View the list of specified node IDs - :param func: Query method, 1. List of current pledge nodes 2, - the current consensus node list 3, real-time certifier list - :return: - """ - validator_info = func().get('Ret') - if validator_info == "Getting verifierList is failed:The validator is not exist": - time.sleep(10) - validator_info = func().get('Ret') - if validator_info == "Getting candidateList is failed:CandidateList info is not found": - time.sleep(10) - validator_info == func().get('Ret') - if not nodeid: - validator_list = [] - for info in validator_info: - validator_list.append(info.get('NodeId')) - return validator_list - else: - for info in validator_info: - if nodeid == info.get('NodeId'): - return info.get('RewardPer'), info.get('NextRewardPer') - raise Exception('Nodeid {} not in the list'.format(nodeid)) - - -def check_node_in_list(nodeid, func) -> bool: - """ - Check if the node is in the specified list - :param nodeid: Node id - :param func: Query method, 1. List of current pledge nodes 2, - the current consensus node list 3, real-time certifier list - :return: - """ - data_dict = func() - for data in data_dict["Ret"]: - if data["NodeId"] == nodeid: - return True - return False - - -def get_param_by_dict(data, *args): - """ - Query parameter values​based on json data - :param data: dictionary - :param args: Key - :return: - """ - i = 0 - if isinstance(data, dict): - for key in args: - data = data.get(key) - i = i + 1 - if isinstance(data, dict) and i > len(args): - raise Exception("The parameters entered are incorrect.") - return data - elif isinstance(data, str): - data = json.loads(data) - for key in args: - data = data.get(key) - i = i + 1 - if isinstance(data, dict) and i > len(args): - raise Exception("The parameters entered are incorrect.") - return data - - raise Exception("Data format error") - - -def update_param_by_dict(data, key1, key2, key3, value): - """ - Modify the json parameter - :param data: - :param key1: - :param key2: - :param key3: - :param value: - :return: - """ - if isinstance(data, dict): - if key3 is None: - data[key1][key2] = value - else: - data[key1][key2][key3] = value - return data - elif isinstance(data, str): - jsoninfo = json.loads(data) - if key3 is None: - jsoninfo[key1][key2] = value - else: - jsoninfo[key1][key2][key3] = value - jsondata = json.dumps(jsoninfo) - return jsondata - raise Exception("Data format error") - - -def wait_block_number(node, block, interval=1): - """ - Waiting until the specified block height - :param node: Node - :param block: Block height - :param interval: Block interval, default is 1s - :return: - """ - current_block = node.block_number - if 0 < block - current_block <= 10: - timeout = 10 + int(time.time()) + 50 - elif block - current_block > 10: - timeout = int((block - current_block) * interval * 1.5) + int(time.time()) + 50 - else: - log.info('current block {} is greater than block {}'.format(node.block_number, block)) - return - print_t = 0 - while int(time.time()) < timeout: - print_t += 1 - if print_t == 10: - # Print once every 10 seconds to avoid printing too often - log.info('The current block height is {}, waiting until {}'.format(node.block_number, block)) - print_t = 0 - if node.block_number > block: - return - time.sleep(1) - raise Exception("Unable to pop out the block normally, the " - "current block height is: {}, the target block height is: {}".format(node.block_number, block)) - - -def get_validator_term(node): - """ - Get the nodeID with the highest term - """ - msg = node.ppos.getValidatorList() - term_list = [] - nodeid_list = [] - for i in msg["Ret"]: - term_list.append(i["ValidatorTerm"]) - nodeid_list.append(i["NodeId"]) - - max_term = (max(term_list)) - log.info("Maximum tenure{}".format(max_term)) - term_nodeid_dict = dict(zip(nodeid_list, term_list)) - - max_term_nodeid = [] - - for key in term_nodeid_dict: - value = term_nodeid_dict[key] - if value == max_term: - max_term_nodeid.append(key) - return max_term_nodeid - - -def get_max_staking_tx_index(node): - """ - Get the nodeID of the largest transaction index - """ - msg = node.ppos.getValidatorList() - staking_tx_index_list = [] - nodeid = [] - for i in msg["Ret"]: - staking_tx_index_list.append(i["StakingTxIndex"]) - nodeid.append(i["NodeId"]) - max_staking_tx_index = (max(staking_tx_index_list)) - term_nodeid_dict = dict(zip(staking_tx_index_list, nodeid)) - return term_nodeid_dict[max_staking_tx_index] - - -def get_block_count_number(node, number): - """ - Get the number of verifier blocks - :param url: node url - :param cycle: Consensus cycle - :return: - """ - current_block = node.block_number - count = 0 - for i in range(number - 1): - nodeid = node.eth.ecrecover(current_block) - current_block = current_block - 1 - if nodeid == node.node_id: - count = count + 1 - return count - - -def random_string(length=10) -> str: - """ - Randomly generate a string of letters and numbers of a specified length - :param length: - :return: - """ - return ''.join( - random.choice( - string.ascii_lowercase - + string.ascii_uppercase - + string.digits - ) for _ in range(length) - ) - - -def assert_code(result, code): - ''' - assert the ErrorCode - :param result: - :param code: - :return: - ''' - if isinstance(result, int): - assert result == code, "code error,expect:{},actually:{}".format(code, result) - else: - assert result.get('Code') == code, "code error,expect:{},actually:{}".format(code, result) - - -def von_amount(amonut, base): - """ - Get von amount - :param amonut: - :param base: - :return: - """ - return int(Decimal(str(amonut)) * Decimal(str(base))) - - -def get_governable_parameter_value(client_obj, parameter, flag=None): - """ - Get governable parameter value - :return: - """ - # Get governable parameters - govern_param = client_obj.pip.pip.listGovernParam() - parameter_information = govern_param['Ret'] - for i in parameter_information: - if i['ParamItem']['Name'] == parameter: - log.info("{} ParamValue: {}".format(parameter, i['ParamValue']['Value'])) - log.info("{} Param old Value: {}".format(parameter, i['ParamValue']['StaleValue'])) - if not flag: - return i['ParamValue']['Value'] - else: - return int(i['ParamValue']['Value']), int(i['ParamValue']['StaleValue']) - - -def get_the_dynamic_parameter_gas_fee(data): - """ - Get the dynamic parameter gas consumption cost - :return: - """ - zero_number = 0 - byte_group_length = len(data) - for i in data: - if i == 0: - zero_number = zero_number + 1 - non_zero_number = byte_group_length - zero_number - dynamic_gas = non_zero_number * 16 + zero_number * 4 - return dynamic_gas - - -def get_getDelegateReward_gas_fee(client, staking_num, uncalcwheels, gasprice=None): - data = rlp.encode([rlp.encode(int(5000))]) - if gasprice is None: - gasprice = client.node.eth.gasPrice - gas = get_the_dynamic_parameter_gas_fee(data) + 8000 + 3000 + 21000 + staking_num * 1000 + uncalcwheels * 100 - return gas * gasprice diff --git a/cases/tests/ppos/Incentive_for_additional_issuance.py b/cases/tests/ppos/Incentive_for_additional_issuance.py deleted file mode 100644 index e3864a8e03..0000000000 --- a/cases/tests/ppos/Incentive_for_additional_issuance.py +++ /dev/null @@ -1,379 +0,0 @@ -import math -import time - -import pytest -from dacite import from_dict -from common.log import log -from alaya import Web3 -from decimal import Decimal -from tests.conftest import get_client_consensus -from tests.lib import EconomicConfig, Genesis, assert_code, von_amount, Client - - -@pytest.mark.P1 -def test_AL_FI_001_to_003(new_genesis_env, staking_cfg): - """ - AL_FI_001:查看每年释放补贴激励池变化 - AL_FI_002:查看每年固定增发变化 - AL_FI_003:第十年固定增发token分配 - :param new_genesis_env: - :return: - """ - # Initialization genesis file Initial amount - node_count = len(new_genesis_env.consensus_node_list) - default_pledge_amount = Web3.toWei(node_count * 10500, 'ether') - node = new_genesis_env.get_rand_node() - community_amount = Web3.toWei(500000, 'ether') - platon_fund = Web3.toWei(2500000, 'ether') - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.innerAcc.cdfBalance = community_amount - surplus_amount = str(Web3.toWei(105000000, 'ether') - community_amount - platon_fund - Web3.toWei(2000000, 'ether')) - genesis.alloc = { - "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr75cqxf": { - "balance": "2000000000000000000000000" - }, - "atx1zkrxx6rf358jcvr7nruhyvr9hxpwv9unj58er9": { - "balance": surplus_amount - } - } - new_file = new_genesis_env.cfg.env_tmp + "/alaya_genesis_0.13.2.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - client = get_client_consensus(new_genesis_env, staking_cfg) - economic = client.economic - node = client.node - # Query the initial amount of incentive pool - current_incentive_pool = Web3.toWei(2000000, 'ether') - # Query the initial amount of a warehouse lock plan - init_foundationlockup = 0 - # Issued token amount - init_token = Web3.toWei(100000000, 'ether') - # Query developer foundation initial amount - developer_foundation = community_amount - default_pledge_amount - # Query the initial amount of the foundation - foundation_balance = Web3.toWei(2500000, 'ether') - # Additional amount - total_amount_of_issuance = 0 - remaining_settlement_cycle = 0 - end_cycle_timestamp = None - # Annual issuance - for i in range(10): - if i == 0: - incentive_pool = current_incentive_pool - log.info("Amount of initial incentive pool: {}".format(incentive_pool)) - foundation_lock_up = init_foundationlockup - log.info("Initial Lockup Plan Amount: {}".format(foundation_lock_up)) - total_amount_of_issuance = int(init_token + Decimal(str(init_token)) / Decimal(str(20))) - log.info("Current year Total amount of issuance: {}".format(total_amount_of_issuance)) - # Query the current annual incentive pool amount - current_annual_incentive_pool_amount = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS, 0) - # Query current annual developer foundation amount - DEVELOPER_FOUNDATAION_ADDRESS = node.web3.toChecksumAddress(EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS) - current_annual_developer_foundation_amount = node.eth.getBalance(DEVELOPER_FOUNDATAION_ADDRESS, 0) - # Query current annual fund amount - FOUNDATION_ADDRESS = node.web3.toChecksumAddress(EconomicConfig.FOUNDATION_ADDRESS) - current_annual_foundation_amount = node.eth.getBalance(FOUNDATION_ADDRESS, 0) - log.info( - "{} Year Incentive Pool Address: {} Balance: {}".format(i + 1, EconomicConfig.INCENTIVEPOOL_ADDRESS, - incentive_pool)) - log.info('{} Year Foundation Address: {} Balance: {}'.format(i + 1, EconomicConfig.FOUNDATION_ADDRESS, - foundation_balance)) - log.info("{} Year Developer Foundation Address:{} Balance:{}".format(i + 1, - EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS, - developer_foundation)) - log.info("{} Year Foundation Locking Address: {} Balance: {}".format(i + 1, - EconomicConfig.FOUNDATION_LOCKUP_ADDRESS, - foundation_lock_up)) - assert current_annual_incentive_pool_amount == incentive_pool, "{} Year Incentive Pool Address: {} Balance: {}".format( - i + 1, EconomicConfig.INCENTIVEPOOL_ADDRESS, incentive_pool) - assert current_annual_developer_foundation_amount == developer_foundation, "{} Year Developer Foundation Address:{} Balance:{}".format( - i + 1, - EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS, - developer_foundation) - assert current_annual_foundation_amount == foundation_balance, "{} Year Developer Foundation Address:{} Balance:{}".format( - i + 1, - EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS, - developer_foundation) - # log.info("{} Year additional Balance:{}".format(i + 1, total_amount_of_issuance)) - time.sleep(5) - economic.wait_settlement(node) - while remaining_settlement_cycle != 1: - tmp_current_block = node.eth.blockNumber - if tmp_current_block % economic.settlement_size == 0: - time.sleep(1) - block_info = node.eth.getBlock(1) - log.info("block_info:{}".format(block_info)) - first_timestamp = block_info['timestamp'] - log.info("First block timestamp: {}".format(first_timestamp)) - end_cycle_timestamp = first_timestamp + (economic.additional_cycle_time * 60000) - log.info("End time stamp of current issue cycle: {}".format(end_cycle_timestamp)) - - last_settlement_block = (math.ceil(tmp_current_block / economic.settlement_size) - 1) * economic.settlement_size - log.info("The last block height of the previous settlement period: {}".format(last_settlement_block)) - settlement_block_info = node.eth.getBlock(last_settlement_block) - settlement_timestamp = settlement_block_info['timestamp'] - log.info("High block timestamp at the end settlement cycle: {}".format(settlement_timestamp)) - remaining_additional_time = end_cycle_timestamp - settlement_timestamp - log.info("Remaining time of current issuance cycle: {}".format(remaining_additional_time)) - average_interval = (settlement_timestamp - first_timestamp) // (last_settlement_block - 1) - log.info("Block interval in the last settlement cycle: {}".format(average_interval)) - number_of_remaining_blocks = math.ceil(remaining_additional_time / average_interval) - log.info("Remaining block height of current issuance cycle: {}".format(number_of_remaining_blocks)) - remaining_settlement_cycle = math.ceil(number_of_remaining_blocks / economic.settlement_size) - log.info( - "remaining settlement cycles in the current issuance cycle: {}".format(remaining_settlement_cycle)) - economic.wait_settlement(node) - - elif i > 0: - annual_last_block = (math.ceil(node.eth.blockNumber / economic.settlement_size) - 1) * economic.settlement_size - log.info("The last block height in the last issue cycle: {}".format(annual_last_block)) - # Current annual total issuance - additional_amount = int(Decimal(str(total_amount_of_issuance)) / Decimal(str(20))) - log.info("Current annual quota: {}".format(additional_amount)) - # Incentive pool additional amount - incentive_pool_additional_amount = int(Decimal(str(additional_amount)) * Decimal(str((40 / 100)))) - log.info("Additional quota for the current annual incentive pool: {}".format(incentive_pool_additional_amount)) - # developer foundation s additional amount - developer_foundation_s_additional_amount = int(Decimal(str(additional_amount)) * Decimal(str((10 / 100)))) - log.info("Current annual developer foundation additional quota: {}".format(developer_foundation_s_additional_amount)) - - foundation_additional_amount = additional_amount - incentive_pool_additional_amount - developer_foundation_s_additional_amount - log.info("Current annual foundation amount quota: {}".format(foundation_additional_amount)) - # Total amount of additional issuance - total_amount_of_issuance = total_amount_of_issuance + additional_amount - log.info("Total current hairstyle:{}".format(total_amount_of_issuance)) - # Current annual incentive pool amount - current_incentive_pool = current_incentive_pool + incentive_pool_additional_amount - log.info("Balance to be allocated for the current annual incentive pool:{}".format(current_incentive_pool)) - # Current annual Developer Fund Amount - developer_foundation = developer_foundation + developer_foundation_s_additional_amount - log.info("Current Annual Developer Foundation Total: {}".format(developer_foundation)) - foundation_balance = foundation_balance + foundation_additional_amount - # Query the current annual incentive pool amount - current_annual_incentive_pool_amount = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS, annual_last_block) - # Query current annual developer foundation amount - DEVELOPER_FOUNDATAION_ADDRESS = node.web3.toChecksumAddress(EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS) - current_annual_developer_foundation_amount = node.eth.getBalance(DEVELOPER_FOUNDATAION_ADDRESS, annual_last_block) - # Query current annual fund amount - FOUNDATION_ADDRESS = node.web3.toChecksumAddress(EconomicConfig.FOUNDATION_ADDRESS) - current_annual_foundation_amount = node.eth.getBalance(FOUNDATION_ADDRESS, annual_last_block) - log.info("{} year initialization incentive pool address: {} balance: {}".format(i + 1, - EconomicConfig.INCENTIVEPOOL_ADDRESS, - current_incentive_pool)) - log.info('{} Year Initialization Foundation Address: {} balance: {}'.format(i + 1, - EconomicConfig.FOUNDATION_ADDRESS, - foundation_balance)) - log.info("{} Year Developer Fund Address: {} balance: {}".format(i + 1, - EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS, - developer_foundation)) - log.info("{} Year additional balance:{}".format(i + 1, additional_amount)) - assert current_annual_incentive_pool_amount == current_incentive_pool, "{} year initialization incentive pool address: {} balance: {}".format( - i + 1, EconomicConfig.INCENTIVEPOOL_ADDRESS, current_incentive_pool) - assert current_annual_developer_foundation_amount == developer_foundation, "{} Year Developer Fund Address: {} balance: {}".format( - i + 1, EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS, developer_foundation) - assert current_annual_foundation_amount == foundation_balance, '{} Year Initialization Foundation Address: {} balance: {}'.format( - i + 1, EconomicConfig.FOUNDATION_ADDRESS, foundation_balance) - # Waiting for the end of the annual issuance cycle - end_cycle_timestamp = end_cycle_timestamp + (economic.additional_cycle_time * 60000) - log.info("End time stamp of current issue cycle: {}".format(end_cycle_timestamp)) - settlement_block_info = node.eth.getBlock(annual_last_block) - settlement_timestamp = settlement_block_info['timestamp'] - log.info("High block timestamp at the end of settlement cycle: {}".format(settlement_timestamp)) - remaining_additional_time = end_cycle_timestamp - settlement_timestamp - log.info("Remaining time of current issuance cycle: {}".format(remaining_additional_time)) - result = client.ppos.getAvgPackTime() - average_interval = result['Ret'] - log.info("Block interval on the chain:{}".format(average_interval)) - log.info("Block interval on the chain:{}".format(average_interval)) - number_of_remaining_blocks = math.ceil(remaining_additional_time / average_interval) - log.info("Remaining block height of current issuance cycle: {}".format(number_of_remaining_blocks)) - remaining_settlement_cycle = math.ceil(number_of_remaining_blocks / economic.settlement_size) - log.info("remaining settlement cycles issuance cycle: {}".format(remaining_settlement_cycle)) - while remaining_settlement_cycle != 1: - tmp_current_block = node.eth.blockNumber - if tmp_current_block % economic.settlement_size == 0: - time.sleep(economic.interval) - tmp_current_block = node.eth.blockNumber - last_settlement_block = (math.ceil( - tmp_current_block / economic.settlement_size) - 1) * economic.settlement_size - log.info("The last block height of the previous settlement period: {}".format(last_settlement_block)) - settlement_block_info = node.eth.getBlock(last_settlement_block) - settlement_timestamp = settlement_block_info['timestamp'] - log.info("High block timestamp at the end of settlement cycle: {}".format(settlement_timestamp)) - remaining_additional_time = end_cycle_timestamp - settlement_timestamp - log.info("Remaining time of current issuance cycle: {}".format(remaining_additional_time)) - result = client.ppos.getAvgPackTime() - average_interval = result['Ret'] - log.info("Block interval on the chain:{}".format(average_interval)) - number_of_remaining_blocks = math.ceil(remaining_additional_time / average_interval) - log.info("Remaining block height of current issuance cycle: {}".format(number_of_remaining_blocks)) - remaining_settlement_cycle = math.ceil(number_of_remaining_blocks / economic.settlement_size) - log.info("remaining settlement cycles issuance cycle: {}".format(remaining_settlement_cycle)) - economic.wait_settlement(node) - # else: - # annual_last_block = (math.ceil(node.eth.blockNumber / economic.settlement_size) - 1) * economic.settlement_size - # # Current annual total issuance - # additional_amount = int(Decimal(str(total_amount_of_issuance)) / Decimal(str(40))) - # # Incentive pool additional amount - # incentive_pool_additional_amount = int(Decimal(str(additional_amount)) * Decimal(str((80 / 100)))) - # # developer foundation s additional amount - # developer_foundation_s_additional_amount = int( - # Decimal(str(additional_amount - incentive_pool_additional_amount)) * Decimal(str((50 / 100)))) - # # Foundation grant additional amount - # foundation_grant_amount = additional_amount - incentive_pool_additional_amount - developer_foundation_s_additional_amount - # # Total amount of additional issuance - # total_amount_of_issuance = total_amount_of_issuance + additional_amount - # # Current annual incentive pool amount - # current_incentive_pool = current_incentive_pool + incentive_pool_additional_amount - # # Current annual Developer Fund Amount - # developer_foundation = developer_foundation + developer_foundation_s_additional_amount - # # Current annual fund amount - # foundation_balance = foundation_balance + foundation_grant_amount - # # Query the current annual incentive pool amount - # current_annual_incentive_pool_amount = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS, annual_last_block) - # # Query current annual developer foundation amount - # DEVELOPER_FOUNDATAION_ADDRESS = node.web3.toChecksumAddress(EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS) - # current_annual_developer_foundation_amount = node.eth.getBalance(DEVELOPER_FOUNDATAION_ADDRESS, annual_last_block) - # # Query current annual fund amount - # FOUNDATION_ADDRESS = node.web3.toChecksumAddress(EconomicConfig.FOUNDATION_ADDRESS) - # current_annual_foundation_amount = node.eth.getBalance(FOUNDATION_ADDRESS, annual_last_block) - # log.info("{} year initialization incentive pool address: {} balance: {}".format(i + 1, - # EconomicConfig.INCENTIVEPOOL_ADDRESS, - # current_incentive_pool)) - # log.info('{} Year Initialization Foundation Address: {} balance: {}'.format(i + 1, - # EconomicConfig.FOUNDATION_ADDRESS, - # foundation_balance)) - # log.info("{} Year Developer Fund Address: {} balance: {}".format(i + 1, - # EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS, - # developer_foundation)) - # log.info("{} Year additional balance:{}".format(i + 1, additional_amount)) - # assert current_annual_incentive_pool_amount == current_incentive_pool, "{} year initialization incentive pool address: {} balance: {}".format( - # i + 1, EconomicConfig.INCENTIVEPOOL_ADDRESS, current_incentive_pool) - # assert current_annual_developer_foundation_amount == developer_foundation, "{} Year Developer Fund Address: {} balance: {}".format( - # i + 1, EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS, developer_foundation) - # assert current_annual_foundation_amount == foundation_balance, '{} Year Initialization Foundation Address: {} balance: {}'.format( - # i + 1, EconomicConfig.FOUNDATION_ADDRESS, foundation_balance) - - -@pytest.mark.p1 -def test_AL_FI_004_005(new_genesis_env, staking_cfg): - """ - AL_FI_004:查看每年区块奖励变化 - AL_FI_005:查看每年质押奖励变化 - :param new_genesis_env: - :param staking_cfg: - :return: - """ - # Initialization genesis file Initial amount - node_count = len(new_genesis_env.consensus_node_list) - default_pledge_amount = Web3.toWei(node_count * 10500, 'ether') - # node = new_genesis_env.get_rand_node() - community_amount = Web3.toWei(1000000, 'ether') - platon_fund = Web3.toWei(2000000, 'ether') - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - print(genesis) - genesis.economicModel.innerAcc.cdfBalance = community_amount - surplus_amount = str(Web3.toWei(105000000, 'ether') - community_amount - platon_fund - Web3.toWei(2000000, 'ether')) - genesis.alloc = { - "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr75cqxf": { - "balance": "2000000000000000000000000" - }, - "atx1zkrxx6rf358jcvr7nruhyvr9hxpwv9unj58er9": { - "balance": surplus_amount - } - } - new_file = new_genesis_env.cfg.env_tmp + "/alaya_genesis_0.13.2.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - normal_node = new_genesis_env.get_a_normal_node() - client = Client(new_genesis_env, normal_node, staking_cfg) - economic = client.economic - node = client.node - log.info("Current connection node:{}".format(node.node_mark)) - log.info("Current connection nodeid:{}".format(node.node_id)) - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - log.info("address: {}".format(address)) - address1, _ = economic.account.generate_account(node.web3, 0) - log.info("address1: {}".format(address1)) - end_cycle_timestamp = None - for i in range(10): - result = client.staking.create_staking(0, address1, address) - assert_code(result, 0) - # view account amount - benifit_balance = node.eth.getBalance(address1) - log.info("benifit_balance: {}".format(benifit_balance)) - # Wait for the settlement round to end - economic.wait_settlement(node) - # 获取当前结算周期验证人 - verifier_list = node.ppos.getVerifierList() - log.info("verifier_list: {}".format(verifier_list)) - # view block_reward - block_reward, staking_reward = economic.get_current_year_reward(node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # withdrew of pledge - result = client.staking.withdrew_staking(address) - assert_code(result, 0) - # wait settlement block - economic.wait_settlement(node) - # wait consensus block - economic.wait_consensus(node) - # count the number of blocks - blocknumber = economic.get_block_count_number(node, roundnum=6) - log.info("blocknumber: {}".format(blocknumber)) - # view account amount again - # block_high = economic.get_switchpoint_by_settlement(node) - economic.settlement_size - benifit_balance1 = node.eth.getBalance(address1) - log.info("benifit_balance: {}".format(benifit_balance1)) - reward = int(blocknumber * Decimal(str(block_reward))) - assert benifit_balance1 == benifit_balance + staking_reward + reward, "ErrMsg:benifit_balance: {}".format( - benifit_balance1) - if i == 0: - block_info = node.eth.getBlock(1) - log.info("block_info:{}".format(block_info)) - first_timestamp = block_info['timestamp'] - log.info("First block timestamp: {}".format(first_timestamp)) - end_cycle_timestamp = first_timestamp + (economic.additional_cycle_time * 60000) - log.info("End time stamp of current issue cycle: {}".format(end_cycle_timestamp)) - else: - # Waiting for the end of the annual issuance cycle - end_cycle_timestamp = end_cycle_timestamp + (economic.additional_cycle_time * 60000) - log.info("End time stamp of current issue cycle: {}".format(end_cycle_timestamp)) - annual_last_block = (math.ceil(node.eth.blockNumber / economic.settlement_size) - 1) * economic.settlement_size - log.info("The last block height in the last issue cycle: {}".format(annual_last_block)) - settlement_block_info = node.eth.getBlock(annual_last_block) - settlement_timestamp = settlement_block_info['timestamp'] - log.info("High block timestamp at the end of settlement cycle: {}".format(settlement_timestamp)) - remaining_additional_time = end_cycle_timestamp - settlement_timestamp - log.info("Remaining time of current issuance cycle: {}".format(remaining_additional_time)) - result = client.ppos.getAvgPackTime() - average_interval = result['Ret'] - log.info("Block interval on the chain:{}".format(average_interval)) - log.info("Block interval on the chain:{}".format(average_interval)) - number_of_remaining_blocks = math.ceil(remaining_additional_time / average_interval) - log.info("Remaining block height of current issuance cycle: {}".format(number_of_remaining_blocks)) - remaining_settlement_cycle = math.ceil(number_of_remaining_blocks / economic.settlement_size) - log.info("remaining settlement cycles issuance cycle: {}".format(remaining_settlement_cycle)) - while remaining_settlement_cycle != 1: - tmp_current_block = node.eth.blockNumber - if tmp_current_block % economic.settlement_size == 0: - time.sleep(economic.interval) - tmp_current_block = node.eth.blockNumber - last_settlement_block = (math.ceil( - tmp_current_block / economic.settlement_size) - 1) * economic.settlement_size - log.info("The last block height of the previous settlement period: {}".format(last_settlement_block)) - settlement_block_info = node.eth.getBlock(last_settlement_block) - settlement_timestamp = settlement_block_info['timestamp'] - log.info("High block timestamp at the end of settlement cycle: {}".format(settlement_timestamp)) - remaining_additional_time = end_cycle_timestamp - settlement_timestamp - log.info("Remaining time of current issuance cycle: {}".format(remaining_additional_time)) - result = client.ppos.getAvgPackTime() - average_interval = result['Ret'] - log.info("Block interval on the chain:{}".format(average_interval)) - number_of_remaining_blocks = math.ceil(remaining_additional_time / average_interval) - log.info("Remaining block height of current issuance cycle: {}".format(number_of_remaining_blocks)) - remaining_settlement_cycle = math.ceil(number_of_remaining_blocks / economic.settlement_size) - log.info("remaining settlement cycles issuance cycle: {}".format(remaining_settlement_cycle)) - economic.wait_settlement(node) - diff --git a/cases/tests/ppos/Zero_out_penalty.py b/cases/tests/ppos/Zero_out_penalty.py deleted file mode 100644 index b30bab2cb7..0000000000 --- a/cases/tests/ppos/Zero_out_penalty.py +++ /dev/null @@ -1,1866 +0,0 @@ -import time -from decimal import Decimal - -from dacite import from_dict -from dacite import from_dict -import copy -from common.key import mock_duplicate_sign -from common.log import log -from tests.conftest import param_governance_verify_before_endblock, param_governance_verify -from tests.lib import Genesis, check_node_in_list, assert_code, von_amount, get_pledge_list, wait_block_number - - -def update_zero_produce(new_genesis_env, cumulativetime=4, numberthreshold=3): - global pri_key - pri_key = new_genesis_env.account.account_with_money["prikey"] - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.zeroProduceCumulativeTime = cumulativetime - genesis.economicModel.slashing.zeroProduceNumberThreshold = numberthreshold - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - -def assert_slashing(candidate_info, staking_amount): - ret = candidate_info["Ret"] - assert ret["Status"] != 0 - assert ret["Released"] < staking_amount - - -def assert_not_slashing(candidate_info, staking_amount): - ret = candidate_info["Ret"] - assert ret["Status"] == 0 - assert ret["Released"] == staking_amount - - -def assert_set_validator_list(node, validator_list): - global pri_key - result = node.debug.setValidatorList(validator_list, pri_key) - if result: - raise Exception("setValidatorList:{}".format(result)) - - -def get_slash_count(wait_slashing_node_list, node_id): - for slashing in wait_slashing_node_list: - if slashing["NodeId"] == node_id: - return slashing["CountBit"] - return 0 - - -def gen_validator_list(initial_validator, slashing_node_id): - slashing_node_list = [node_id for node_id in initial_validator] - slashing_node_list.append(slashing_node_id) - slashing_node_list.pop(0) - return initial_validator, slashing_node_list - - -def to_int(value): - return int(str(value), 2) - - -def set_slashing(initial_validator_list, contain_slashing_list, node, economic, status): - do = { - "1": contain_slashing_list, - "0": initial_validator_list - } - status = str(status) - for state in status: - assert_set_validator_list(node, do[state]) - economic.wait_consensus(node) - - -def create_pledge_node_information(client): - log.info("Current connection node:{}".format(client.node.node_mark)) - log.info("Start creating a pledge account Pledge_address") - staking_amount = von_amount(client.economic.create_staking_limit, 2) - staking_address, pri_key = client.economic.account.generate_account(client.node.web3, staking_amount) - log.info("Created, account address: {} Amount: {}".format(staking_address, staking_amount)) - log.info("Start applying for a pledge node") - result = client.staking.create_staking(0, staking_address, staking_address) - assert_code(result, 0) - client.economic.wait_settlement(client.node) - log.info("Current block height: {}".format(client.node.eth.blockNumber)) - result = client.node.ppos.getVerifierList() - log.info("current Verifier List:{}".format(result)) - return staking_address, pri_key - - -def test_ZB_NP_01(new_genesis_env, client_noconsensus): - """ - 节点未被选中验证人列表查询零出块记录表 - """ - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.maxValidators = 4 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - # start execution use case - create_pledge_node_information(client_noconsensus) - # view the zero out block record table - wait_slashing_list = client_noconsensus.node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - - -def test_ZB_NP_02(client_noconsensus): - """ - 节点未被选中共识验证人列表查询零出块记录表(不存在零出块记录) - """ - # start execution use case - create_pledge_node_information(client_noconsensus) - result = check_node_in_list(client_noconsensus.node.node_id, client_noconsensus.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result is False: - # view the zero out block record table - wait_slashing_list = client_noconsensus.node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - else: - client_noconsensus.economic.wait_consensus(client_noconsensus.node) - - -def test_ZB_NP_03(new_genesis_env, client_noconsensus): - """ - 节点未被选中共识验证人列表查询零出块记录表(存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - # start execution use case - create_pledge_node_information(client_noconsensus) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(slashing_node_list)) - assert_set_validator_list(node, slashing_node_list) - # stop node - client_noconsensus.node.stop() - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, initial_validator) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert_set_validator_list(node, initial_validator) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert_set_validator_list(node, initial_validator) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert_set_validator_list(node, initial_validator) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1) - - -def test_ZB_NP_04(client_noconsensus): - """ - 节点被选中共识验证人查询零出块记录表(不存在零出块记录) - """ - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - create_pledge_node_information(client_noconsensus) - for i in range(4): - result = check_node_in_list(client_noconsensus.node.node_id, node.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # view the zero out block record table - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - break - else: - economic.wait_consensus(node) - - -def test_ZB_NP_05(new_genesis_env, client_noconsensus): - """ - 节点被选中共识验证人查询零出块记录表(存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(slashing_node_list)) - assert_set_validator_list(node, slashing_node_list) - client_noconsensus.node.stop() - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, slashing_node_list) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - client_noconsensus.node.start(False) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_06_07(new_genesis_env, client_noconsensus): - """ - ZB_NP_06:节点被选中共识验证人未出块查询零出块记录表(不存在零出块记录) - ZB_NP_07:节点被选中共识验证人未出块查询零出块记录表(存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(slashing_node_list)) - assert_set_validator_list(node, slashing_node_list) - client_noconsensus.node.stop() - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - - -def test_ZB_NP_08(new_genesis_env, client_noconsensus): - """ - 节点达到共识轮阈值,未达到累计次数被选中共识验证人未出块 - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(slashing_node_list)) - assert_set_validator_list(node, slashing_node_list) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "1001") - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1001) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_09(new_genesis_env, client_noconsensus): - """ - 节点先双签被举报再触发零出块 - """ - # update_zero_produce(new_genesis_env, 1, 1) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - create_pledge_node_information(client_noconsensus) - result = node.ppos.getCandidateInfo(client_noconsensus.node.node_id) - log.info("Candidate Info:{}".format(result)) - amount_of_pledge = result['Ret']['Released'] - block_reward, staking_reward = economic.get_current_year_reward(node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - report_information = mock_duplicate_sign(1, client_noconsensus.node.nodekey, client_noconsensus.node.blsprikey, node.eth.blockNumber) - log.info("Report information: {}".format(report_information)) - result = client_noconsensus.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - client_noconsensus.node.stop() - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - penalty_for_double_signing = int(Decimal(str(amount_of_pledge)) * Decimal(str(economic.genesis.economicModel.slashing.slashFractionDuplicateSign / 10000))) - log.info("penalty_for_double_signing: {}".format(penalty_for_double_signing)) - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - result = node.ppos.getCandidateInfo(client_noconsensus.node.node_id) - log.info("Candidate Info:{}".format(result)) - punishment_amonut = int(Decimal(str(block_reward)) * int(Decimal(str(economic.genesis.economicModel.slashing.slashBlocksReward)))) - log.info("punishment_amonut:{}".format(punishment_amonut)) - assert result['Ret']['Released'] == amount_of_pledge - penalty_for_double_signing - punishment_amonut - - - -def test_ZB_NP_10(new_genesis_env, clients_noconsensus): - """ - 节点触发零出块再双签被举报 - """ - update_zero_produce(new_genesis_env) - economic = clients_noconsensus[0].economic - second_client = clients_noconsensus[1] - node = economic.env.get_consensus_node_by_index(0) - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - create_pledge_node_information(clients_noconsensus[0]) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), clients_noconsensus[0].node.node_id) - log.info("verifier nodeid list: {}".format(slashing_node_list)) - assert_set_validator_list(node, slashing_node_list) - clients_noconsensus[0].node.stop() - - economic.wait_consensus(node) - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, clients_noconsensus[0].node.node_id) == 0 - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, clients_noconsensus[0].node.node_id) == to_int(1) - report_information = mock_duplicate_sign(1, clients_noconsensus[0].node.nodekey, clients_noconsensus[0].node.blsprikey, current_block) - log.info("Report information: {}".format(report_information)) - result = second_client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - result = check_node_in_list(clients_noconsensus[0].node.node_id, node.ppos.getVerifierList) - log.info("Current node in consensus list status:{}".format(result)) - assert result is False - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, clients_noconsensus[0].node.node_id) == to_int(11) - assert_slashing(node.ppos.getCandidateInfo(clients_noconsensus[0].node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_31(new_genesis_env, client_consensus, client_noconsensus): - """ - 治理提案投票未通过,节点零出块率处罚(不存在零出块记录) - """ - update_zero_produce(new_genesis_env, 3) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - # Voting failed and expired - param_governance_verify(client_consensus, 'slashing', 'zeroProduceCumulativeTime', '4', False) - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(slashing_node_list)) - # assert_set_validator_list(node, slashing_node_list) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "111") - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, slashing_node_list) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_32(new_genesis_env, client_consensus, client_noconsensus): - """ - 治理提案投票未通过,节点零出块率处罚(存在零出块记录) - """ - update_zero_produce(new_genesis_env, 3) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceCumulativeTime', '4', False) - # Start execution use case - create_pledge_node_information(client_noconsensus) - log.info("Current block height: {}".format(node.eth.blockNumber)) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - set_slashing(initial_validator, slashing_node_list, node, economic, "0111") - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, slashing_node_list) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_33(new_genesis_env,client_consensus, client_noconsensus): - """ - 共识轮阈值小值变大值提案未生效时,节点零出块率处罚(不存在零出块记录) - """ - update_zero_produce(new_genesis_env, 3) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - create_pledge_node_information(client_noconsensus) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceCumulativeTime', '4', True) - - # Start execution use case - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "111") - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, slashing_node_list) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_34(new_genesis_env, client_consensus, client_noconsensus): - """ - 共识轮阈值小值变大值提案未生效时,节点零出块率处罚(存在零出块记录) - """ - update_zero_produce(new_genesis_env, 3) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - create_pledge_node_information(client_noconsensus) - - # Start execution use case - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - assert_set_validator_list(node, slashing_node_list) - client_noconsensus.node.stop() - - economic.wait_consensus(node) - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, slashing_node_list) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1) - # Voting failed and expired - print(client_consensus.node.node_mark) - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceCumulativeTime', '4', True) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_35(new_genesis_env, client_consensus, client_noconsensus): - """ - 共识轮阈值大值变小值提案未生效时,节点零出块率处罚(不存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - create_pledge_node_information(client_noconsensus) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceCumulativeTime', '3', True) - - # Start execution use case - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "1101") - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_36(new_genesis_env, client_consensus, client_noconsensus): - """ - 共识轮阈值大值变小值提案未生效时,节点零出块率处罚(存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - create_pledge_node_information(client_noconsensus) - - # Start execution use case - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - assert_set_validator_list(node, slashing_node_list) - client_noconsensus.node.stop() - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, slashing_node_list) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, initial_validator) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, slashing_node_list) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1) - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceCumulativeTime', '3', True) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_37(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数大值变小值提案未生效时,节点零出块率处罚(不存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - create_pledge_node_information(client_noconsensus) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '2', True) - - # Start execution use case - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "1011") - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_38(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数大值变小值提案未生效时,节点零出块率处罚(存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - create_pledge_node_information(client_noconsensus) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "11") - # Voting failed and expired - assert_set_validator_list(node, initial_validator) - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '2', True) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_39(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数小值变大值提案未生效时,节点零出块率处罚(不存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - create_pledge_node_information(client_noconsensus) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '4', True) - - # Start execution use case - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "1110") - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_40(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数小值变大值提案未生效时,节点零出块率处罚(存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - create_pledge_node_information(client_noconsensus) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "11") - # Voting failed and expired - assert_set_validator_list(node, initial_validator) - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '4', True) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_41_42(new_genesis_env, client_consensus, client_noconsensus): - """ - ZB_NP_41:共识轮阈值小值变大值提案生效,未到新共识轮位数(不存在零出块记录) - ZB_NP_42:共识轮阈值小值变大值提案生效,等待共识轮且不当选共识验证人(不存在零出块记录) - """ - update_zero_produce(new_genesis_env, 3) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify(client_consensus, 'slashing', 'zeroProduceCumulativeTime', '4', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "111") - assert_set_validator_list(node, initial_validator) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(111) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_43_44(new_genesis_env, client_consensus, client_noconsensus): - """ - ZB_NP_43:共识轮阈值小值变大值提案生效,未到新共识轮位数(存在零出块记录) - ZB_NP_44:共识轮阈值小值变大值提案生效,等待共识轮且不当选共识验证人(存在零出块记录) - """ - update_zero_produce(new_genesis_env, 3) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceCumulativeTime', '4', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "0111") - assert_set_validator_list(node, initial_validator) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(111) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_45(new_genesis_env, client_consensus, client_noconsensus): - """ - 共识轮阈值大值变小值提案生效,节点达到零出块率次数,(不存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify(client_consensus, 'slashing', 'zeroProduceCumulativeTime', '3', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "111") - assert_set_validator_list(node, initial_validator) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_47(new_genesis_env, client_consensus, client_noconsensus): - """ - 共识轮阈值大值变小值提案生效,节点达到零出块率次数(存在零出块记录)(一) - """ - update_zero_produce(new_genesis_env, 4, 3) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceCumulativeTime', '3', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "011") - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_48(new_genesis_env, client_consensus, client_noconsensus): - """ - 共识轮阈值大值变小值提案生效,节点达到零出块率次数(存在零出块记录)(二) - """ - update_zero_produce(new_genesis_env, 4, 2) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceCumulativeTime', '3', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "011") - assert_set_validator_list(node, initial_validator) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_49(new_genesis_env, client_consensus, client_noconsensus): - """ - 共识轮阈值大值变小值提案生效,节点未达到零出块率次数(存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceCumulativeTime', '3', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "010") - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(101) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_50(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数大值变小值提案生效,未到达共识轮位数(不存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '2', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "101") - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(101) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_51(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数大值变小值提案生效,到达共识轮位数,未达到零出块率次数不处罚(不存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '2', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "1000") - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_52(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数大值变小值提案生效,到达共识轮位数,达到零出块率次数处罚(不存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '2', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "1010") - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_53(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数大值变小值提案生效,未到达共识轮位数(存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '2', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "010") - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(101) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_54(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数大值变小值提案生效,到达共识轮位数,未达到零出块率次数不处罚(存在零出块记录) - """ - - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '2', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "100") - assert_set_validator_list(node, initial_validator) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_55(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数大值变小值提案生效,到达共识轮位数,达到零出块率次数(存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '2', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "100") - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_56(new_genesis_env, client_consensus, client_noconsensus): - """ - ZB_NP_56:零出块率次数小值变大值提案生效,未到达共识轮位数,达到零出块率次数(不存在零出块记录) - ZB_NP_57:零出块率次数小值变大值提案生效,未到达共识轮位数,达到零出块率次数,等待下共识轮且不当选共识验证人(不存在零出块记录) - """ - update_zero_produce(new_genesis_env, 4, 2) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '3', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "111") - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(111) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_58(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数小值变大值提案生效,未到达共识轮位数,未达到零出块率次数,等待下共识轮且不当选共识验证人(不存在零出块记录) - """ - update_zero_produce(new_genesis_env, 4, 2) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '3', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "101") - assert_set_validator_list(node, initial_validator) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(101) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(101) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_59(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数小值变大值提案生效,未到达共识轮位数,未达到零出块率次数,等待共识轮且当选共识验证人出块不处罚(不存在零出块记录) - """ - update_zero_produce(new_genesis_env, 4, 2) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '3', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "101") - client_noconsensus.node.start(False) - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_60(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数小值变大值提案生效,未到达共识轮位数,未达到零出块率次数,等待下共识轮且当选共识验证人未出块(不存在零出块记录) - """ - update_zero_produce(new_genesis_env, 4, 2) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '3', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "101") - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(101) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_61(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数小值变大值提案生效,达到共识轮位数,未达到零出块率次数(不存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '4', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "1101") - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(1011) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_62_63(new_genesis_env, client_consensus, client_noconsensus): - """ - ZB_NP_62:零出块率次数小值变大值提案生效,达到共识轮位数,未达到零出块率次数(存在零出块记录) - ZB_NP_63:零出块率次数小值变大值提案生效,未到达共识轮位数,等待下共识轮且不当选共识验证人达到零出块率次数(存在零出块记录) - """ - update_zero_produce(new_genesis_env, 4, 2) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '3', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "011") - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, initial_validator) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(111) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_64(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数小值变大值提案生效,未到达共识轮位数,等待下共识轮且不当选共识验证人未达到零出块率次数(存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '4', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "011") - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, initial_validator) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(111) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(111) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_65(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数小值变大值提案生效,未到达共识轮位数,等待下共识轮且当选共识验证人出块(存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '4', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "011") - assert_set_validator_list(node, slashing_node_list) - client_noconsensus.node.start(False) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert_set_validator_list(node, initial_validator) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_66(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数小值变大值提案生效,未到达共识轮位数,等待下共识轮且当选共识验证人未出块未达到零出块率次数(存在零出块记录) - """ - update_zero_produce(new_genesis_env, 4, 2) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '3', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "0110") - assert_set_validator_list(node, slashing_node_list) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(11) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == 0 - assert_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_67(new_genesis_env, client_consensus, client_noconsensus): - """ - 零出块率次数小值变大值提案生效,达到共识轮位数,未达到零出块率次数(存在零出块记录) - """ - update_zero_produce(new_genesis_env) - economic = client_noconsensus.economic - node = economic.env.get_consensus_node_by_index(0) - - # Voting failed and expired - param_governance_verify_before_endblock(client_consensus, 'slashing', 'zeroProduceNumberThreshold', '4', True) - - # Start execution use case - create_pledge_node_information(client_noconsensus) - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) - log.info("verifier nodeid list: {}".format(initial_validator)) - client_noconsensus.node.stop() - - set_slashing(initial_validator, slashing_node_list, node, economic, "111") - assert_set_validator_list(node, initial_validator) - - economic.wait_consensus(node, 1) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(111) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - economic.wait_consensus(node) - log.info("Current block height: {}".format(node.eth.blockNumber)) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, client_noconsensus.node.node_id) == to_int(111) - assert_not_slashing(node.ppos.getCandidateInfo(client_noconsensus.node.node_id), economic.create_staking_limit) - - -def test_ZB_NP_68(new_genesis_env, clients_consensus): - """ - 当前触发共识轮230块前出块,不零出块处罚 - """ - update_zero_produce(new_genesis_env, 2, 2) - economic = clients_consensus[0].economic - first_node = economic.env.get_consensus_node_by_index(0) - log.info("first_node id :{}".format(first_node.node_id)) - second_node = economic.env.get_consensus_node_by_index(1) - log.info("first_node id :{}".format(second_node.node_id)) - - # Start execution use case - current_validator = get_pledge_list(first_node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - time.sleep(2) - log.info("Current block height: {}".format(first_node.eth.blockNumber)) - second_node.stop() - economic.wait_consensus(first_node, 1) - log.info("Current block height: {}".format(first_node.eth.blockNumber)) - wait_slashing_list = first_node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, second_node.node_id) == to_int(1) - assert_not_slashing(first_node.ppos.getCandidateInfo(second_node.node_id), 1500000000000000000000000) - second_node.start(False) - wait_block_number(first_node, 111) - wait_slashing_list = first_node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, second_node.node_id) == 0 - assert_not_slashing(first_node.ppos.getCandidateInfo(second_node.node_id), 1500000000000000000000000) - - -def test_ZB_NP_69(new_genesis_env, clients_consensus): - """ - 当前触发共识轮230块后出块,零出块处罚 - """ - update_zero_produce(new_genesis_env, 2, 2) - economic = clients_consensus[0].economic - first_node = economic.env.get_consensus_node_by_index(0) - log.info("first_node id :{}".format(first_node.node_id)) - second_node = economic.env.get_consensus_node_by_index(3) - log.info("second_node id :{}".format(second_node.node_id)) - - # Start execution use case - current_validator = get_pledge_list(first_node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - time.sleep(2) - log.info("Current block height: {}".format(first_node.eth.blockNumber)) - second_node.stop() - economic.wait_consensus(first_node, 1) - log.info("Current block height: {}".format(first_node.eth.blockNumber)) - current_validator = get_pledge_list(first_node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - wait_slashing_list = first_node.debug.getWaitSlashingNodeList() - log.info("Zero block record table:{}".format(wait_slashing_list)) - assert get_slash_count(wait_slashing_list, second_node.node_id) == to_int(1) - assert_not_slashing(first_node.ppos.getCandidateInfo(second_node.node_id), 1500000000000000000000000) - wait_block_number(first_node, 100) - second_node.start(False) - wait_slashing_list = first_node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, second_node.node_id) == 0 - assert_slashing(first_node.ppos.getCandidateInfo(second_node.node_id), 1500000000000000000000000) - - -# def test_ZB_NP_70(new_genesis_env, clients_noconsensus): -# """ -# 同时触发多个节点零出块 -# """ -# genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) -# genesis.economicModel.common.maxEpochMinutes = 5 -# genesis.economicModel.common.maxConsensusVals = 7 -# genesis.economicModel.staking.maxValidators = 7 -# genesis.economicModel.slashing.zeroProduceNumberThreshold = 2 -# genesis.economicModel.slashing.zeroProduceCumulativeTime = 4 -# new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" -# genesis.to_file(new_file) -# new_genesis_env.deploy_all(new_file) -# economic_old = clients_noconsensus[0].economic -# economic = copy.copy(economic_old) -# economic.validator_count = 7 -# economic.expected_minutes = 5 -# node = economic.env.get_consensus_node_by_index(0) -# # Start execution use case -# for i in range(len(clients_noconsensus)): -# client = clients_noconsensus[i] -# log.info("Current connection node:{}".format(client.node.node_mark)) -# log.info("Start creating a pledge account Pledge_address") -# staking_amount = von_amount(client.economic.create_staking_limit, 2) -# staking_address, pri_key = client.economic.account.generate_account(client.node.web3, staking_amount) -# log.info("Created, account address: {} Amount: {}".format(staking_address, staking_amount)) -# log.info("Start applying for a pledge node") -# result = client.staking.create_staking(0, staking_address, staking_address) -# assert_code(result, 0) -# result = client.node.ppos.getCandidateInfo(client.node.node_id) -# log.info("Candidate Info:{}".format(result)) - # economic.wait_settlement(node) - # log.info("Current block height: {}".format(node.eth.blockNumber)) - # result = node.ppos.getValidatorList() - # log.info("current Validator List:{}".format(result)) - # clients_noconsensus[1].node.stop() - # clients_noconsensus[2].node.stop() - # - # economic.wait_consensus(node) - # log.info("Current block height: {}".format(node.eth.blockNumber)) - # log.info("Validator List:{}".format(node.ppos.getValidatorList())) - # wait_slashing_list = node.debug.getWaitSlashingNodeList() - # log.info("Zero block record table:{}".format(wait_slashing_list)) - # assert get_slash_count(wait_slashing_list, clients_noconsensus[1].node.node_id) == 0 - # assert get_slash_count(wait_slashing_list, clients_noconsensus[2].node.node_id) == 0 - # - # economic.wait_consensus(node) - # log.info("Current block height: {}".format(node.eth.blockNumber)) - # log.info("Validator List:{}".format(node.ppos.getValidatorList())) - # wait_slashing_list = node.debug.getWaitSlashingNodeList() - # log.info("Zero block record table:{}".format(wait_slashing_list)) - # assert get_slash_count(wait_slashing_list, clients_noconsensus[1].node.node_id) == 0 - # assert get_slash_count(wait_slashing_list, clients_noconsensus[2].node.node_id) == 0 - # - # economic.wait_consensus(node) - # log.info("Current block height: {}".format(node.eth.blockNumber)) - # log.info("Validator List:{}".format(node.ppos.getValidatorList())) - # wait_slashing_list = node.debug.getWaitSlashingNodeList() - # log.info("Zero block record table:{}".format(wait_slashing_list)) - # assert get_slash_count(wait_slashing_list, clients_noconsensus[1].node.node_id) == to_int(1) - # assert get_slash_count(wait_slashing_list, clients_noconsensus[2].node.node_id) == to_int(1) - # - # economic.wait_consensus(node) - # log.info("Current block height: {}".format(node.eth.blockNumber)) - # log.info("Validator List:{}".format(node.ppos.getValidatorList())) - # wait_slashing_list = node.debug.getWaitSlashingNodeList() - # log.info("Zero block record table:{}".format(wait_slashing_list)) - # assert get_slash_count(wait_slashing_list, clients_noconsensus[1].node.node_id) == to_int(11) - # assert get_slash_count(wait_slashing_list, clients_noconsensus[2].node.node_id) == to_int(11) - # - # economic.wait_consensus(node) - # log.info("Current block height: {}".format(node.eth.blockNumber)) - # log.info("Validator List:{}".format(node.ppos.getValidatorList())) - # wait_slashing_list = node.debug.getWaitSlashingNodeList() - # log.info("Zero block record table:{}".format(wait_slashing_list)) - # assert get_slash_count(wait_slashing_list, clients_noconsensus[1].node.node_id) == to_int(111) - # assert get_slash_count(wait_slashing_list, clients_noconsensus[2].node.node_id) == to_int(111) - # - # economic.wait_consensus(node) - # log.info("Current block height: {}".format(node.eth.blockNumber)) - # log.info("Validator List:{}".format(node.ppos.getValidatorList())) - # wait_slashing_list = node.debug.getWaitSlashingNodeList() - # log.info("Zero block record table:{}".format(wait_slashing_list)) - # assert get_slash_count(wait_slashing_list, clients_noconsensus[1].node.node_id) == 0 - # assert get_slash_count(wait_slashing_list, clients_noconsensus[2].node.node_id) == 0 - # assert_slashing(node.ppos.getCandidateInfo(clients_noconsensus[1].node.node_id), economic.create_staking_limit) - # assert_slashing(node.ppos.getCandidateInfo(clients_noconsensus[2].node.node_id), economic.create_staking_limit) - # economic.wait_consensus(node) - # log.info("Current block height: {}".format(node.eth.blockNumber)) - # economic.wait_consensus(node) - # log.info("Current block height: {}".format(node.eth.blockNumber)) - -# -# def test_71(new_genesis_env, clients_consensus, clients_noconsensus): -# """ -# 随机生成零出块 -# """ -# genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) -# genesis.economicModel.staking.maxValidators = 7 -# genesis.economicModel.slashing.zeroProduceNumberThreshold = 3 -# genesis.economicModel.slashing.zeroProduceCumulativeTime = 4 -# new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" -# genesis.to_file(new_file) -# new_genesis_env.deploy_all(new_file) -# economic = clients_consensus[0].economic -# node = economic.env.get_consensus_node_by_index(0) -# -# # Start execution use case -# for i in range(len(clients_noconsensus)): -# client = clients_noconsensus[i] -# log.info("Current connection node:{}".format(client.node.node_mark)) -# log.info("Start creating a pledge account Pledge_address") -# staking_amount = von_amount(client.economic.create_staking_limit, 6) -# staking_address, pri_key = client.economic.account.generate_account(client.node.web3, staking_amount) -# log.info("Created, account address: {} Amount: {}".format(staking_address, staking_amount)) -# log.info("Start applying for a pledge node") -# result = client.staking.create_staking(0, staking_address, staking_address, amount=von_amount(economic.create_staking_limit, 2)) -# assert_code(result, 0) -# result = client.node.ppos.getCandidateInfo(client.node.node_id) -# log.info("Candidate Info:{}".format(result)) -# economic.wait_settlement(node) -# log.info("Current block height: {}".format(node.eth.blockNumber)) -# # initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_noconsensus.node.node_id) -# # log.info("verifier nodeid list: {}".format(initial_validator)) -# clients_consensus[2].node.stop() -# clients_noconsensus[1].node.stop() -# -# # economic.wait_consensus(node, 1) -# # log.info("Current block height: {}".format(node.eth.blockNumber)) -# # client_noconsensus.node.start(False) -# -# for i in range(8): -# economic.wait_consensus(node) -# log.info("Current block height: {}".format(node.eth.blockNumber)) -# current_validator = node.ppos.getValidatorList() -# log.info("current validator: {}".format(current_validator)) -# wait_slashing_list = node.debug.getWaitSlashingNodeList() -# log.info("Zero block record table:{}".format(wait_slashing_list)) -# result = node.ppos.getCandidateInfo(clients_consensus[2].node.node_id) -# log.info("Candidate Info:{}".format(result)) -# result = node.ppos.getCandidateInfo(clients_noconsensus[1].node.node_id) -# log.info("Candidate Info:{}".format(result)) diff --git a/cases/tests/ppos/__init__.py b/cases/tests/ppos/__init__.py deleted file mode 100644 index e6fd86d90e..0000000000 --- a/cases/tests/ppos/__init__.py +++ /dev/null @@ -1,6 +0,0 @@ -# -*- coding: utf-8 -*- -""" -@Author: wuyiqin -@Date: 2019/11/9 10:45 -@Description: -""" diff --git a/cases/tests/ppos/conftest.py b/cases/tests/ppos/conftest.py deleted file mode 100644 index f449191b2d..0000000000 --- a/cases/tests/ppos/conftest.py +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- -#   @Time    : 2020/1/2 18:06 -#   @Author  : PlatON-Developer -#   @Site    : https://github.com/PlatONnetwork/ - -import pytest -from decimal import Decimal -from tests.lib.utils import assert_code - - -def calculate(big_int, mul): - return int(Decimal(str(big_int)) * Decimal(mul)) - - -def create_stakings(clients, reward): - for client in clients: - create_staking(client, reward) - - -def create_staking(client, reward): - amount = calculate(client.economic.create_staking_limit, 5) - staking_amount = calculate(client.economic.create_staking_limit, 2) - staking_address, _ = client.economic.account.generate_account(client.node.web3, amount) - delegate_address, _ = client.economic.account.generate_account(client.node.web3, client.economic.add_staking_limit * 5) - result = client.staking.create_staking(0, staking_address, staking_address, amount=staking_amount, reward_per=reward) - assert_code(result, 0) - setattr(client, "staking_amount", staking_amount) - return staking_address, delegate_address - - -@pytest.fixture() -def staking_node_client(client_new_node): - reward = 2000 - staking_address, delegate_address = create_staking(client_new_node, reward) - setattr(client_new_node, "staking_address", staking_address) - setattr(client_new_node, "delegate_address", delegate_address) - setattr(client_new_node, "reward", reward) - yield client_new_node - client_new_node.economic.env.deploy_all() - - -@pytest.fixture() -def delegate_node_client(client_new_node): - reward = 1000 - staking_address, delegate_address = create_staking(client_new_node, reward) - result = client_new_node.delegate.delegate(0, delegate_address, amount=client_new_node.economic.add_staking_limit * 2) - assert_code(result, 0) - setattr(client_new_node, "staking_address", staking_address) - setattr(client_new_node, "delegate_address", delegate_address) - setattr(client_new_node, "reward", reward) - yield client_new_node - client_new_node.economic.env.deploy_all() \ No newline at end of file diff --git a/cases/tests/ppos/slashing_zero.py b/cases/tests/ppos/slashing_zero.py deleted file mode 100644 index e41ffd8b99..0000000000 --- a/cases/tests/ppos/slashing_zero.py +++ /dev/null @@ -1,499 +0,0 @@ -import time -import pytest -from dacite import from_dict -from common.log import log -from tests.lib.utils import assert_code -from tests.lib.utils import wait_block_number, get_pledge_list -from tests.ppos.conftest import create_staking -from tests.ppos.conftest import calculate -from tests.lib.genesis import Genesis - -pri_key = "" - - -def assert_slashing(candidate_info, staking_amount): - ret = candidate_info["Ret"] - assert ret["Status"] != 0 - assert ret["Released"] < staking_amount - - -def assert_not_slashing(candidate_info, staking_amount): - ret = candidate_info["Ret"] - assert ret["Status"] == 0 - assert ret["Released"] == staking_amount - - -def assert_set_validator_list(node, validator_list): - global pri_key - result = node.debug.setValidatorList(validator_list, pri_key) - if result: - raise Exception("setValidatorList:{}".format(result)) - - -def get_slash_count(wait_slashing_node_list, node_id): - for slashing in wait_slashing_node_list: - if slashing["NodeId"] == node_id: - return slashing["CountBit"] - return 0 - - -def gen_validator_list(initial_validator, slashing_node_id): - slashing_node_list = [node_id for node_id in initial_validator] - slashing_node_list.append(slashing_node_id) - slashing_node_list.pop(0) - return initial_validator, slashing_node_list - - -def to_int(value): - return int(str(value), 2) - - -def set_slashing(initial_validator_list, contain_slashing_list, node, economic, status): - do = { - "1": contain_slashing_list, - "0": initial_validator_list - } - status = str(status) - for state in status: - assert_set_validator_list(node, do[state]) - economic.wait_consensus(node) - - -@pytest.fixture() -def update_zero_produce_env(global_test_env): - global pri_key - pri_key = global_test_env.account.account_with_money["prikey"] - genesis_config = global_test_env.genesis_config - genesis = from_dict(data_class=Genesis, data=genesis_config) - genesis.economicModel.slashing.zeroProduceCumulativeTime = 4 - genesis.economicModel.slashing.zeroProduceNumberThreshold = 3 - genesis_path = global_test_env.cfg.env_tmp + "/genesis_0.13.0.json" - - genesis.to_file(genesis_path) - - global_test_env.deploy_all(genesis_path) - yield global_test_env - global_test_env.deploy_all() - - -@pytest.fixture() -def new_validator_client(update_zero_produce_env, client_noconsensus): - staking_address, _ = create_staking(client_noconsensus, 10) - log.info("use node: {} node id: {}".format(client_noconsensus.node.url, client_noconsensus.node.node_id)) - setattr(client_noconsensus, "staking_address", staking_address) - client_noconsensus.economic.wait_settlement(client_noconsensus.node) - yield client_noconsensus - - -# def test_case(new_validator_client): -# new_validator_client.node.stop() -# economic = new_validator_client.economic -# node = economic.env.get_consensus_node_by_index(0) -# -# def slashing(candidate_info): -# ret = candidate_info["Ret"] -# if ret["Status"] == 0 and ret["Released"] == new_validator_client.staking_amount: -# return False -# return True -# -# for i in range(1000): -# if i/2 == 0 and not new_validator_client.node.running: -# new_validator_client.node.start(False) -# economic.wait_consensus(node) -# new_validator_client.node.stop() -# else: -# economic.wait_consensus(node) -# print(i, get_slash_count(node.debug.getWaitSlashingNodeList(), new_validator_client.node.node_id)) -# if slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id)): -# print("slashing") -# break - - -def test_ZB_NP_11(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - pri = economic.env.account.find_pri_key(new_validator_client.staking_address) - node.ppos.withdrewStaking(new_validator_client.node.node_id, pri) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "111") - economic.wait_consensus(node, 1) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(111) - - log.info("current validator: {}".format(get_pledge_list(node.ppos.getValidatorList))) - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert len(wait_slashing_list) == 0 - assert_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_12(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - pri = economic.env.account.find_pri_key(new_validator_client.staking_address) - node.ppos.withdrewStaking(new_validator_client.node.node_id, pri) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "1") - economic.wait_consensus(node, 1) - - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(1) - assert node.ppos.getCandidateInfo(new_validator_client.node.node_id)["Ret"]["Released"] == new_validator_client.staking_amount - - -def test_ZB_NP_13(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "111") - economic.wait_consensus(node, 1) - - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(111) - pri = economic.env.account.find_pri_key(new_validator_client.staking_address) - node.ppos.withdrewStaking(new_validator_client.node.node_id, pri) - log.info("current validator: {}".format(get_pledge_list(node.ppos.getValidatorList))) - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert len(wait_slashing_list) == 0 - assert_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_14_15(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - assert_set_validator_list(node, slashing_node_list) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert len(wait_slashing_list) == 0 - assert_set_validator_list(node, initial_validator) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - assert new_validator_client.node.node_id in current_validator - economic.wait_consensus(node) - # 需要在等一个共识轮才能查看到待处罚信息 - assert_set_validator_list(node, slashing_node_list) - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(1) - - assert_set_validator_list(node, initial_validator) - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(1) - - assert_set_validator_list(node, initial_validator) - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(101) - - assert_set_validator_list(node, initial_validator) - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(101) - - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(1) - assert_not_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_16(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "111") - economic.wait_consensus(node, 1) - - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(111) - assert_not_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_17_20(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "1000") - - assert_set_validator_list(node, initial_validator) - economic.wait_consensus(node, 1) - - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(1) - - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert len(wait_slashing_list) == 0 - assert_not_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_18(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "1000") - assert_set_validator_list(node, slashing_node_list) - economic.wait_consensus(node, 1) - - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(1) - - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(1) - assert_not_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_19(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "1000") - assert_set_validator_list(node, slashing_node_list) - economic.wait_consensus(node) - new_validator_client.node.start(False) - economic.wait_consensus(node) - - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(1) - - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert len(wait_slashing_list) == 0 - assert_not_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_21_22(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "1001") - assert_set_validator_list(node, slashing_node_list) - economic.wait_consensus(node, 1) - - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(1001) - - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(11) - assert_not_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_23(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "1001") - assert_set_validator_list(node, slashing_node_list) - economic.wait_consensus(node) - new_validator_client.node.start(False) - economic.wait_consensus(node) - - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(1001) - - economic.wait_consensus(node) - print(new_validator_client.node.block_number) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert len(wait_slashing_list) == 0 - assert_not_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_24(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "1001") - assert_set_validator_list(node, initial_validator) - economic.wait_consensus(node, 1) - - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(1001) - - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(1) - assert_not_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_25(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "111") - assert_set_validator_list(node, economic.env.consensus_node_id_list()) - economic.wait_consensus(node, 1) - - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(111) - - economic.wait_consensus(node, 1) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert len(wait_slashing_list) == 0 - assert_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_26(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "111") - assert_set_validator_list(node, slashing_node_list) - economic.wait_consensus(node, 1) - - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(111) - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert len(wait_slashing_list) == 0 - assert_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_27(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "101") - assert_set_validator_list(node, slashing_node_list) - economic.wait_consensus(node, 1) - - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(101) - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert len(wait_slashing_list) == 0 - assert_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_28(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - set_slashing(initial_validator, slashing_node_list, node, economic, "110") - assert_set_validator_list(node, slashing_node_list) - economic.wait_consensus(node, 1) - - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, new_validator_client.node.node_id) == to_int(11) - - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert len(wait_slashing_list) == 0 - assert_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - - -def test_ZB_NP_29(update_zero_produce_env, clients_noconsensus): - client_a = clients_noconsensus[0] - client_b = clients_noconsensus[1] - amount = calculate(client_a.economic.create_staking_limit, 5) - staking_amount_a = calculate(client_a.economic.create_staking_limit, 1) - staking_amount_b = calculate(client_a.economic.create_staking_limit, 2) - staking_address, _ = client_a.economic.account.generate_account(client_a.node.web3, amount) - result = client_a.staking.create_staking(0, staking_address, staking_address, amount=staking_amount_a, reward_per=10) - assert_code(result, 0) - economic = client_b.economic - economic.wait_settlement(client_b.node) - client_a.node.stop() - - economic = client_b.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), client_a.node.node_id) - - assert_set_validator_list(node, initial_validator) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - economic.wait_consensus(node, 1) - result = client_b.staking.create_staking(0, staking_address, staking_address, amount=staking_amount_b, reward_per=10) - assert_code(result, 0) - assert_set_validator_list(node, slashing_node_list) - economic.wait_consensus(node) - assert_set_validator_list(node, initial_validator) - economic.wait_consensus(node) - economic.wait_consensus(node, 3) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert get_slash_count(wait_slashing_list, client_a.node.node_id) == to_int(1) - - economic.wait_consensus(node) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert len(wait_slashing_list) == 0 - assert_not_slashing(node.ppos.getCandidateInfo(client_a.node.node_id), staking_amount_a) - - -def test_ZB_NP_30(new_validator_client): - new_validator_client.node.stop() - economic = new_validator_client.economic - node = economic.env.get_consensus_node_by_index(0) - - initial_validator, slashing_node_list = gen_validator_list(economic.env.consensus_node_id_list(), new_validator_client.node.node_id) - - assert_set_validator_list(node, slashing_node_list) - current_validator = get_pledge_list(node.ppos.getValidatorList) - log.info("current validator: {}".format(current_validator)) - economic.wait_consensus(node) - - assert_set_validator_list(node, slashing_node_list) - economic.wait_consensus(node) - num = economic.get_switchpoint_by_consensus(node, 1) - while node.block_number < num: - new_validator_client.node.start(False) - time.sleep(4) - print(new_validator_client.node.block_number, node.block_number) - new_validator_client.node.stop() - time.sleep(2) - wait_slashing_list = node.debug.getWaitSlashingNodeList() - assert len(wait_slashing_list) == 0 - assert_not_slashing(node.ppos.getCandidateInfo(new_validator_client.node.node_id), new_validator_client.staking_amount) - diff --git a/cases/tests/ppos/test.py b/cases/tests/ppos/test.py deleted file mode 100644 index b5cdccf687..0000000000 --- a/cases/tests/ppos/test.py +++ /dev/null @@ -1,257 +0,0 @@ -from alaya import HTTPProvider, Web3, WebsocketProvider -from alaya.eth import Eth -from alaya.middleware import geth_poa_middleware -from alaya.ppos import Ppos -from hexbytes import HexBytes - -# from conf.settings import TMP_ADDRES, ACCOUNT_FILE, BASE_DIR - -accounts = {} - - -def connect_web3(url, chain_id=201018): - if "ws" in url: - w3 = Web3(WebsocketProvider(url), chain_id=chain_id) - else: - w3 = Web3(HTTPProvider(url), chain_id=chain_id) - w3.middleware_stack.inject(geth_poa_middleware, layer=0) - return w3 - - -def createRestrictingPlan(url, account, plan, pri_key): - web3 = connect_web3(url) - ppos = Ppos(web3) - result = ppos.createRestrictingPlan(account, plan, pri_key) - print(result) - - -# def createstaking(url, typ, benifit_address, node_id, pri_key, amount): -# web3 = connect_web3(url) -# ppos = Ppos(web3) -# external_id = None -# node_name = None -# website = None -# details = None -# result = ppos.createStaking(typ, benifit_address, node_id, external_id, node_name, website, details, amount, -# program_version, program_version_sign, bls_pubkey, bls_proof, pri_key, reward_per, transaction_cfg=None) -# print(result) - - -def increase_staking(url, type, node_id, amount, pri_key): - web3 = connect_web3(url) - ppos = Ppos(web3) - result = ppos.increaseStaking(type, node_id, amount, pri_key) - print(result) - - -def withdrewStaking(url, node_id, pri_key): - web3 = connect_web3(url) - ppos = Ppos(web3) - result = ppos.withdrewStaking(node_id, pri_key) - print(result) - - -def delegate(url, typ, node_id, amount, pri_key): - web3 = connect_web3(url) - ppos = Ppos(web3) - result = ppos.delegate(typ, node_id, amount, pri_key) - print(result) - - -def sendTransaction(url, from_address, prikey, to_address, value, chain_id): - web3 = connect_web3(url) - platon = Eth(web3) - nonce = platon.getTransactionCount(from_address) - gasPrice = platon.gasPrice - transaction_dict = { - "to": to_address, - "gasPrice": gasPrice, - "gas": 21000, - "nonce": nonce, - "data": '', - "chainId": chain_id, - "value": value, - } - - signedTransactionDict = platon.account.signTransaction( - transaction_dict, prikey - ) - - data = signedTransactionDict.rawTransaction - result = HexBytes(platon.sendRawTransaction(data)).hex() - # print(result) - # log.debug("result:::::::{}".format(result)) - res = platon.waitForTransactionReceipt(result) - print(res) - - -def get_candidatelist(url): - web3 = connect_web3(url) - ppos = Ppos(web3) - result = ppos.getCandidateList() - print(result) - - -def get_VerifierList(url): - web3 = connect_web3(url) - ppos = Ppos(web3) - result = ppos.getVerifierList() - print(result) - - -def get_candinfo(url, node_id): - web3 = connect_web3(url) - ppos = Ppos(web3) - result = ppos.getCandidateInfo(node_id) - print(result) - - -def get_RestrictingPlan(url, address): - web3 = connect_web3(url) - ppos = Ppos(web3) - result = ppos.getRestrictingInfo(address) - print(result) - - -# def get_listGovernParam(url, module=None, from_address=None): -# web3 = connect_web3(url) -# ppos = Ppos(web3) -# # ppos.web3.platon -# if module is None: -# module = "" -# data = rlp.encode([rlp.encode(int(2106)), rlp.encode(module)]) -# raw_data = ppos.call_obj(ppos, from_address, Web3.pipAddress, data) -# data = str(raw_data, encoding="utf-8") -# if data == "": -# return "" -# print(json.loads(data)) - - # - # def create_address(url): - # """ - # 创建新钱包地址 - # """ - # web3 = connect_web3(url) - # platon = Eth(web3) - # account = platon.account.create(net_type=web3.net_type) - # address = account.address - # prikey = account.privateKey.hex()[2:] - # account = { - # "address": address, - # "nonce": 0, - # "balance": 0, - # "prikey": prikey, - # } - # accounts = {} - # raw_accounts = LoadFile(ACCOUNT_FILE).get_data() - # print(raw_accounts) - # for account1 in raw_accounts: - # accounts[account1['address']] = account1 - # print(accounts) - # accounts[address] = account - # # todo delete debug - # accounts = list(accounts.values()) - # with open(os.path.join(BASE_DIR, "deploy/tmp/accounts.yml"), mode="w", encoding="UTF-8") as f: - # yaml.dump(accounts, f, Dumper=yaml.RoundTripDumper) - # - # - # def cycle_sendTransaction(url): - # """ - # - # """ - # - # with open(TMP_ADDRES, 'a', encoding='utf-8') as f: - # f.write("2") - - -def fff(url, from_address=None): - web3 = connect_web3(url) - platon = Eth(web3) - # print(platon.g) - # result = platon.getTransactionCount(from_address) - # result = platon.getBalance(from_address) - # print(platon.blockNumber) - # print(result) - - -if __name__ == '__main__': - # url = 'http://192.168.10.221:6789' - # url = 'http://10.1.1.51:6789' - # url = 'http://10.0.0.44:6789' - # url = 'http:// 47.241.4.217:6789' - url = 'http://154.85.35.163:80' - account = 'atx1nqee6ze7flv6hunuajqt7el70u7dp49758fxch' - pri_key = 'f51ca759562e1daf9e5302d121f933a8152915d34fcbc27e542baf256b5e4b74' - pri_key1 = '6558c64ea9b14a069b42148e373616c834ed75828b456ea001390996d7e206a2' - from_address = 'atx1zkrxx6rf358jcvr7nruhyvr9hxpwv9unj58er9' - epoch1 = 10 - epoch2 = 20 - # amount = Web3.toWei(1, 'ether') - amount1 = Web3.toWei(833, 'ether') - amount2 = Web3.toWei(837, 'ether') - # list = ['atx1r8pvmt7hk6lk8uk7dtnfyrpcy9l8rfjry34uq9', - # 'atx1nccsq48wery09qlma3rapree588cafwlpll8cr', - # 'atx14w3m34dmx5xjr7wc5yhg6xtp59j3qy4m77t4vl', - # 'atx10u83ynv0sdjrjg4na66pg3fqyx8uc89g7zvnyu', - # 'atx13e2hlak7jytcdlv47vmqa2hkaeyv62ggv3hymk', - # 'atx1z4e77tam2lv8vsrzkazz659avlvx3v8jyh0ywt', - # 'atx1pvd37yxnmdtdujaf3dwc4xpcukdzsf5q2hyc9a', - # 'atx17rf2ylcauvse5sxsvnn05c30zscey0zwzhs5wp', - # 'atx1cux96yve5d335hqt3a7pdjygpj77pny3xqq7qu', - # 'atx1s9qht6yzg6f53u26fe69vl4qrt6fs0sphth3ez', - # 'atx1ckxg24sa4clv239y93talm79h7ac8r20t4dl8e', - # 'atx19qtc92y2s9a6dyvuqxrqwpsaztz95mel4xuhkv'] - # ac = 'atx1r8pvmt7hk6lk8uk7dtnfyrpcy9l8rfjry34uq9' - list = ['atx1y2pejagyaj2s8jzrcrtrc2xl3x5l5r3hxfu8z3', - 'atx1n39fsmhhleyrru6smcy9m9q4w6t4mxz5439tc8', - 'atx124u7787cqrsclat26jv2vtph29slanruhsz95j', - 'atx1jnh4qfvuvam86hfhy08daw5ahsnmryjcuyzlx8', - 'atx1quxk2dju0774w65lu4dzuhac28q8c5ak8lk46e', - 'atx1j89t4zw9znq7582yf8ut99a8ynz8tp0m75ksj6', - 'atx1lr0tn4c7q37y2yjfe5a6vks7trjgznr3t7yy3h', - 'atx1we7rgld9n8att6l9tw5m5lpkqfa5y3dedk7yuk', - 'atx12mevpl56jz07wu0lk4hmlmqwmcfwhukxqxejmy', - 'atx1wjk3qwhmvg3e5chnk5k8kxp23cyjh3e4np4xwx', - 'atx1740vqwuaxetpeym6j7kvp6w0c28r4vyz4m5znr', - 'atx1wuth2jvd98dfaw40dg294xzj8hlhq3s3r69v39', - 'atx1sg03frnmah7rxahaxphklfxl5aug37ytgayfu7', - 'atx1nyzkjzy8lgmmswpyvpw6dfe9hw9krkhm8gzdue', - 'atx10sccfk6v8rmv35xh9fhaaxchw48u2xggt3vamv'] - # plan = [{'Epoch': epoch, 'Amount': amount}] - # createRestrictingPlan(url, account, plan, pri_key) - # delegate(url, 0, nodeid, amount, pri_key) - plan = [{'Epoch': 10, 'Amount': amount1}, - {'Epoch': 20, 'Amount': amount1}, - {'Epoch': 30, 'Amount': amount1}, - {'Epoch': 40, 'Amount': amount1}, - {'Epoch': 50, 'Amount': amount1}, - {'Epoch': 60, 'Amount': amount1}, - {'Epoch': 70, 'Amount': amount1}, - {'Epoch': 80, 'Amount': amount1}, - {'Epoch': 90, 'Amount': amount1}, - {'Epoch': 100, 'Amount': amount1}, - {'Epoch': 110, 'Amount': amount1}, - {'Epoch': 120, 'Amount': amount2}] - # address = 'atx1r8pvmt7hk6lk8uk7dtnfyrpcy9l8rfjry34uq9' - node_id = 'eac3b0c6569786ca0b6acaa5c80ee71854a00b6e3a53852dfdefe2ea1c6f1ada7eca7208ce942bbb5357adb16b1efe499b91e90655b3a05cc23603c6c421d4e9' - - # node_id = '71bc24068d1f1f65331ad7573806bf58186375ef993dddf3ea51c8d0da162c801689aed5aa9e809396cd60273af1d2826d918e36ce4d003c578371a7b3b8b429' - # pri_key1 = 'd357920de1df4ecb00cbce60ded2d73f3f51fd1e9fb79b08f366e301e849bd9d' - # for i in list: - # print(i) - # # increase_staking(url, 0, node_id, amount, pri_key1) - # createRestrictingPlan(url, i, plan, pri_key) - # get_RestrictingPlan(url, account) - # fff(url) - # sendTransaction(url, from_address, pri_key, i, amount, 201030) - - # withdrewStaking(url, node_id, pri_key1) - # node_id = 'b53a0dde131a938ee6f98ee42f88b294897fbce32a028292feadda042ecf56d4b9f54f82407a45d64dbfa00ea450faad383dd7fd117c645c7dea0b16cf35c020' - # get_VerifierList(url) - get_candidatelist(url) - # get_candinfo(url, node_id) - # get_candidatelist(url) - # addresss = 'lat13l39glde394a6kkrm5aenj4ty7m7565x8sgtrf' - # get_RestrictingPlan(url, account) - # fff() - # get_listGovernParam(url) diff --git a/cases/tests/ppos/test_configuration_verification.py b/cases/tests/ppos/test_configuration_verification.py deleted file mode 100644 index 3cbb1a955b..0000000000 --- a/cases/tests/ppos/test_configuration_verification.py +++ /dev/null @@ -1,355 +0,0 @@ -import time -import json -from copy import copy - -import pytest -from dacite import from_dict -from alaya import Web3 -from tests.lib.genesis import Genesis -from environment.node import Node - - -def assert_error_deploy(env: Node, genesis_file, msg="Error config"): - env.clean_db() - is_success, err_msg = env.deploy_me(genesis_file) - print(is_success) - assert not is_success, "{}-{}".format(msg, err_msg) - - -@pytest.fixture(scope="module", autouse=True) -def stop(global_test_env): - global_test_env.stop_all() - yield - # global_test_env.deploy_all() - - -@pytest.fixture() -def reset_cfg_env_node(global_test_env): - new_env_node = copy(global_test_env.get_rand_node()) - cfg = global_test_env.cfg - genesis_config = global_test_env.genesis_config - backup_cfg = copy(cfg) - genesis = from_dict(data_class=Genesis, data=genesis_config) - id_cfg = id(cfg) - setattr(new_env_node, "genesis", genesis) - setattr(new_env_node, "genesis_path", global_test_env.cfg.env_tmp + "/genesis_0.13.0.json") - yield new_env_node - new_env_node.stop() - if id_cfg != id(global_test_env.cfg) or id(genesis_config) != id(global_test_env.genesis_config): - global_test_env.set_cfg(backup_cfg) - - -@pytest.mark.P2 -@pytest.mark.parametrize('value', [2, 8, ""]) -def test_IP_PR_001_to_012(value, reset_cfg_env_node): - """ - IP_PR_001:校验结算周期是共识周期的倍数<4 - IP_PR_002:增发周期是结算周期的倍数<4 - """ - genesis = reset_cfg_env_node.genesis - genesis.economicModel.common.maxEpochMinutes = value - genesis.to_file(reset_cfg_env_node.genesis_path) - assert_error_deploy(reset_cfg_env_node, reset_cfg_env_node.genesis_path, "Multiple of abnormal billing cycle") - - -@pytest.mark.P2 -def test_IP_PR_003(reset_cfg_env_node): - """ - IP_PR_003:备选验证人节点数小于验证节点数 - """ - genesis = reset_cfg_env_node.genesis - genesis.economicModel.staking.maxValidators = 3 - genesis.to_file(reset_cfg_env_node.genesis_path) - msg = "The number of alternate verifier nodes is less than the number of verified nodes" - assert_error_deploy(reset_cfg_env_node, reset_cfg_env_node.genesis_path, msg) - - -@pytest.mark.P2 -def test_IP_PR_004(reset_cfg_env_node): - """ - 正常范围内的质押Token数 - """ - value = Web3.toWei(1000000, "ether") - genesis = reset_cfg_env_node.genesis - genesis.economicModel.staking.stakeThreshold = value - genesis.to_file(reset_cfg_env_node.genesis_path) - reset_cfg_env_node.deploy_me(reset_cfg_env_node.genesis_path) - config = reset_cfg_env_node.debug.economicConfig() - assert value == config["staking"]["stakeThreshold"], "Inconsistent with the genesis file configuration amount" - - -@pytest.mark.P2 -@pytest.mark.parametrize('value', [9, 0]) -def test_IP_PR_004_005(value, reset_cfg_env_node): - """ - Abnormal pledge Token number - 1、创建验证人最低的质押Token数<10 * 10^18 von - 2、创建验证人最低的质押Token数 = 0 - """ - value = Web3.toWei(value, "ether") - genesis = reset_cfg_env_node.genesis - genesis.economicModel.staking.stakeThreshold = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - assert_error_deploy(reset_cfg_env_node, new_file, "Abnormal pledge Token number") - - -@pytest.mark.P2 -def test_IP_PR_006_1(reset_cfg_env_node): - value = Web3.toWei(100, 'ether') - genesis = reset_cfg_env_node.genesis - genesis.economicModel.staking.operatingThreshold = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - reset_cfg_env_node.deploy_me(new_file) - config = reset_cfg_env_node.debug.economicConfig() - assert value == config["staking"]["operatingThreshold"] - - -@pytest.mark.P2 -@pytest.mark.parametrize('value', [0.9, 0]) -def test_IP_PR_006_2(value, reset_cfg_env_node): - """ - 修改每次委托及赎回的最低Token数 - 1、委托人每次委托及赎回的最低Token数<10 * 10^18 von - 2、委托人每次委托及赎回的最低Token数 = 0 - """ - value = Web3.toWei(value, 'ether') - genesis = reset_cfg_env_node.genesis - genesis.economicModel.staking.operatingThreshold = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - assert_error_deploy(reset_cfg_env_node, new_file, "The abnormal redemption amount") - - -# @pytest.mark.P2 -# def test_IP_PR_007_1(reset_cfg_env_node): -# """ -# 正常范围内的犹豫期(多少个结算周期) -# """ -# value = 3 -# genesis = reset_cfg_env_node.genesis -# genesis.economicModel.staking.hesitateRatio = value -# new_file = reset_cfg_env_node.genesis_path -# genesis.to_file(new_file) -# reset_cfg_env_node.deploy_me(new_file) -# config = reset_cfg_env_node.debug.economicConfig() -# assert value == config["staking"]["hesitateRatio"] - - -# @pytest.mark.P2 -# @pytest.mark.parametrize('value', [-1, 0, ""]) -# def test_IP_PR_007(value, reset_cfg_env_node): -# """ -# 修改犹豫期(多少个结算周期) -# 1、犹豫期(多少个结算周期)<=0 -# 2、犹豫期(多少个结算周期)=0 -# """ -# genesis = reset_cfg_env_node.genesis -# genesis.economicModel.staking.hesitateRatio = value -# new_file = reset_cfg_env_node.genesis_path -# genesis.to_file(new_file) -# assert_error_deploy(reset_cfg_env_node, new_file, "An abnormal billing cycle") - - -@pytest.mark.P2 -def test_IP_PR_008_1(reset_cfg_env_node): - """ - 正常范围内的节点质押退回锁定周期 - """ - value = 3 - genesis = reset_cfg_env_node.genesis - genesis.economicModel.staking.unStakeFreezeDuration = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - reset_cfg_env_node.deploy_me(new_file) - config = reset_cfg_env_node.debug.economicConfig() - assert value == config["staking"]["unStakeFreezeDuration"] - - -@pytest.mark.P2 -@pytest.mark.parametrize('value', [-1, 0, ""]) -def test_IP_PR_008_2(value, reset_cfg_env_node): - """ - 修改点质押退回锁定周期 - 1、节点质押退回锁定周期<0 - 2、节点质押退回锁定周期=0 - """ - genesis = reset_cfg_env_node.genesis - genesis.economicModel.staking.unStakeFreezeDuration = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - assert_error_deploy(reset_cfg_env_node, new_file, "Abnormal pledge return lock cycle") - - -@pytest.mark.P2 -def test_IP_PR_009_1(reset_cfg_env_node): - """ - 正常范围内的基金会分配年 - """ - value = 3 - genesis = reset_cfg_env_node.genesis - genesis.economicModel.reward.platONFoundationYear = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - reset_cfg_env_node.deploy_me(new_file) - config = reset_cfg_env_node.debug.economicConfig() - assert value == config["reward"]["platonFoundationYear"] - - -@pytest.mark.P2 -@pytest.mark.parametrize('value', [-1, 0, ""]) -def test_IP_PR_009(value, reset_cfg_env_node): - """ - 修改基金会分配年 - 1、基金会分配年<0 - 2、基金会分配年=0 - """ - genesis = reset_cfg_env_node.genesis - genesis.economicModel.reward.platONFoundationYear = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - assert_error_deploy(reset_cfg_env_node, new_file, "Abnormal fund allocation year") - - -@pytest.mark.P2 -@pytest.mark.parametrize('value', [40, 0, 100]) -def test_IP_PR_011(reset_cfg_env_node, value): - """ - 正常范围内的奖励池分配给出块奖励的比例 - IP_PR_011:奖励池分配给出块奖励的比例=0 - IP_PR_013:奖励池分配给出块奖励的比例=100 - """ - genesis = reset_cfg_env_node.genesis - genesis.economicModel.reward.newBlockRate = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - reset_cfg_env_node.deploy_me(new_file) - config = reset_cfg_env_node.debug.economicConfig() - assert value == config["reward"]["newBlockRate"] - - -@pytest.mark.P2 -@pytest.mark.parametrize('value', [-1, 110, ""]) -def test_IP_PR_010_012(reset_cfg_env_node, value): - """ - IP_PR_010:奖励池分配给出块奖励的比例<0 - IP_PR_012:奖励池分配给出块奖励的比例>100 - """ - genesis = reset_cfg_env_node.genesis - genesis.economicModel.reward.newBlockRate = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - assert_error_deploy(reset_cfg_env_node, new_file, "Abnormal reward pool allocation") - - -@pytest.mark.P2 -@pytest.mark.parametrize('value', ["ss", ""]) -def test_IP_CP_001(value, reset_cfg_env_node): - """ - 创世文件链参数验证 - 修改eip155Block参数字符串 - 修改eip155Block参数空值 - """ - genesis = reset_cfg_env_node.genesis - genesis.config.eip155Block = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - assert_error_deploy(reset_cfg_env_node, new_file, "Abnormal eip155Block") - - -@pytest.mark.P2 -@pytest.mark.parametrize('value', ["ss", ""]) -def test_IP_CP_002_amount(reset_cfg_env_node, value): - """ - 创世文件共识参数验证 - :return: - """ - genesis = reset_cfg_env_node.genesis - genesis.config.cbft.amount = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - assert_error_deploy(reset_cfg_env_node, new_file, "Abnormal amount") - - -@pytest.mark.P2 -@pytest.mark.parametrize('value', [0.1, "ss", ""]) -def test_IP_CP_002_validator_mode(reset_cfg_env_node, value): - """ - 创世文件共识参数验证 - :return: - """ - if value == "": - genesis = reset_cfg_env_node.genesis - genesis.config.cbft.validatorMode = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - reset_cfg_env_node.deploy_me(new_file) - else: - genesis = reset_cfg_env_node.genesis - genesis.config.cbft.validatorMode = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - assert_error_deploy(reset_cfg_env_node, new_file, "Abnormal validatorMode") - - -@pytest.mark.P2 -@pytest.mark.parametrize('value', [0.1, "ss", ""]) -def test_IP_CP_002_period(reset_cfg_env_node, value): - """ - 创世文件共识参数验证 - :return: - """ - genesis = reset_cfg_env_node.genesis - genesis.config.cbft.period = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - assert_error_deploy(reset_cfg_env_node, new_file, "Abnormal validatorMode") - - -def test_IP_CP_003_1(reset_cfg_env_node): - """ - 创世文件经济参数验证 - """ - genesis = reset_cfg_env_node.genesis - genesis.economicModel.common.additionalCycleTime = "" - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - assert_error_deploy(reset_cfg_env_node, new_file, "Abnormal economicModel") - - -@pytest.mark.P2 -def test_IP_CP_003_2(reset_cfg_env_node): - genesis = reset_cfg_env_node.genesis - genesis.economicModel.innerAcc.cdfAccount = "" - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - assert_error_deploy(reset_cfg_env_node, new_file, "Abnormal economicModel") - - -@pytest.mark.P2 -@pytest.mark.parametrize("key", ["slashFractionDuplicateSign", "duplicateSignReportReward", "slashBlocksReward", "maxEvidenceAge"]) -def test_IP_CP_004(reset_cfg_env_node, key): - """ - 创世文件处罚参数验证 - :return: - """ - genesis = reset_cfg_env_node.genesis - setattr(genesis.economicModel.slashing, key, "") - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - assert_error_deploy(reset_cfg_env_node, new_file, "Abnormal Slashing") - - -@pytest.mark.P2 -@pytest.mark.parametrize('value', [0.1, "ss", ""]) -def test_IP_CP_005(reset_cfg_env_node, value): - """ - 创世文件共识参数验证 - :return: - """ - genesis = reset_cfg_env_node.genesis - genesis.config.chainId = value - new_file = reset_cfg_env_node.genesis_path - genesis.to_file(new_file) - assert_error_deploy(reset_cfg_env_node, new_file, "Abnormal chain id") diff --git a/cases/tests/ppos/test_entrusted_income.py b/cases/tests/ppos/test_entrusted_income.py deleted file mode 100644 index aa475552d3..0000000000 --- a/cases/tests/ppos/test_entrusted_income.py +++ /dev/null @@ -1,3645 +0,0 @@ -import math -import time -import pytest -import allure -import rlp -from alaya.utils.transactions import send_obj_transaction -from dacite import from_dict -from common.key import get_pub_key, mock_duplicate_sign -from common.log import log -from alaya import Web3 -from decimal import Decimal -from tests.lib import EconomicConfig, Genesis, StakingConfig, Staking, check_node_in_list, assert_code, von_amount, \ - get_governable_parameter_value, get_the_dynamic_parameter_gas_fee, get_getDelegateReward_gas_fee, \ - get_block_count_number - - -def create_staking_node(client): - """ - 创建一个自由质押节点 - :param client: - :return: - """ - economic = client.economic - node = client.node - staking_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - benifit_address, _ = economic.account.generate_account(node.web3) - result = client.staking.create_staking(0, staking_address, staking_address, - amount=von_amount(economic.create_staking_limit, 2), reward_per=1000) - assert_code(result, 0) - return staking_address - - -def create_stakings_node(clients): - """ - 创建多个自由质押节点 - :param clients: - :return: - """ - first_client = clients[0] - second_client = clients[1] - first_economic = first_client.economic - first_node = first_client.node - second_economic = second_client.economic - second_node = second_client.node - first_staking_address, _ = first_economic.account.generate_account(first_node.web3, - von_amount(first_economic.create_staking_limit, - 3)) - first_benifit_address, _ = first_economic.account.generate_account(first_node.web3) - result = first_client.staking.create_staking(0, first_benifit_address, first_staking_address, - amount=von_amount(first_economic.create_staking_limit, 2), - reward_per=1000) - assert_code(result, 0) - second_staking_address, _ = second_economic.account.generate_account(second_node.web3, von_amount( - second_economic.create_staking_limit, 3)) - second_benifit_address, _ = second_economic.account.generate_account(second_node.web3) - result = second_client.staking.create_staking(0, second_benifit_address, second_staking_address, - amount=von_amount(second_economic.create_staking_limit, 2), - reward_per=2000) - assert_code(result, 0) - - -def create_restricting_plan(client): - economic = client.economic - node = client.node - # create restricting plan - address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 10) - benifit_address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit) - plan = [{'Epoch': 5, 'Amount': client.node.web3.toWei(1000, 'ether')}] - result = client.restricting.createRestrictingPlan(benifit_address, plan, address) - assert_code(result, 0) - return benifit_address - - -def get_dividend_information(client, node_id, address): - """ - 获取分红信息 - :param client: - :return: - """ - result = client.ppos.getCandidateInfo(node_id) - print(result) - blocknum = result['Ret']['StakingBlockNum'] - print(blocknum) - result = client.ppos.getDelegateInfo(blocknum, address, node_id) - log.info("Commission information:{}".format(result)) - info = result['Ret'] - delegate_epoch = info['DelegateEpoch'] - cumulative_income = info['CumulativeIncome'] - return delegate_epoch, cumulative_income - - -def get_delegate_relevant_amount_and_epoch(client, node_id): - result = client.ppos.getCandidateInfo(node_id) - log.info(result) - log.info('Current pledged node pledge information:{}'.format(result)) - last_delegate_epoch = result['Ret']['DelegateEpoch'] - delegate_total = result['Ret']['DelegateTotal'] - delegate_total_hes = result['Ret']['DelegateTotalHes'] - delegate_reward_total = result['Ret']['DelegateRewardTotal'] - return last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total - - -@pytest.mark.P1 -def test_EI_BC_001_005_009_015_051_057(client_new_node): - """ - 自由金额首次委托,验证待领取的委托收益(未生效期N) - 锁仓金额首次委托,验证待领取的委托收益(未生效期N) - 自由金额首次部分赎回,验证待领取的委托收益(未生效期N) - 锁仓金额首次部分赎回,验证待领取的委托收益(未生效期N) - 自由金额委托首次领取分红,验证待领取的委托收益(未生效期N) - 锁仓金额委托首次领取分红,验证待领取的委托收益(未生效期N) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - delegate_address, _ = economic.account.generate_account(node.web3, von_amount(economic.delegate_limit, 10)) - log.info("Create delegate account:{}".format(delegate_address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - - # initiate a commission - result = client.delegate.delegate(0, delegate_address, amount=von_amount(economic.delegate_limit, 5)) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, delegate_address) - assert delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - economic.wait_consensus(node) - # initiate redemption - result = client.ppos.getCandidateInfo(client.node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, delegate_address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, delegate_address) - assert delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - time.sleep(3) - - # receive dividends - result = client.ppos.getDelegateReward(delegate_address) - log.info("result:{}".format(result)) - assert result['Ret'][0]['reward'] == 0, "ErrMsg: Withdraw commission award {}".format(result['Ret'][0]['reward']) - result = client.delegate.withdraw_delegate_reward(delegate_address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, delegate_address) - assert delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_002_006(clients_new_node, delegate_type): - """ - 自由金额首次委托,验证待领取的委托收益(多节点) - 锁仓金额首次委托,验证待领取的委托收益(多节点) - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_node = second_client.node - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - first_economic.wait_consensus(first_node) - # initiate a commission - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - time.sleep(5) - result = first_client.delegate.delegate(delegate_type, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert first_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(first_cumulative_income) - assert second_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(second_cumulative_income) - - # initiate redemption - result = first_client.ppos.getCandidateInfo(first_node.node_id) - first_blocknum = result['Ret']['StakingBlockNum'] - result = first_client.delegate.withdrew_delegate(first_blocknum, address) - assert_code(result, 0) - result = second_client.ppos.getCandidateInfo(second_node.node_id) - second_blocknum = result['Ret']['StakingBlockNum'] - result = first_client.delegate.withdrew_delegate(second_blocknum, address, node_id=second_node.node_id) - assert_code(result, 0) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert first_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(first_cumulative_income) - assert second_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(second_cumulative_income) - - # receive dividends - result = first_client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg: Withdraw commission award {}".format(result['Ret'][0]['reward']) - result = first_client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert first_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(first_cumulative_income) - assert second_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(second_cumulative_income) - - -@pytest.mark.P0 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_003_007(client_new_node, delegate_type, reset_environment): - """ - 自由金额跨周期追加委托,验证待领取的委托收益(单节点) - 锁仓金额跨周期追加委托,验证待领取的委托收益(单节点) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format(delegate_total) - assert delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(von_amount(delegate_amount, 2))) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - block_reward, staking_reward = economic.get_current_year_reward(node) - log.info("The current node block reward: {} Pledge reward: {}".format(block_reward, staking_reward)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - commission_award = economic.calculate_delegate_reward(node, block_reward, staking_reward) - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, delegate_amount, - delegate_amount) - result = client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(von_amount(economic.delegate_limit, 2))) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == current_commission_award, "ErrMsg: Last time cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 2), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_004_008(clients_new_node, delegate_type, reset_environment): - """ - 自由金额跨周期追加委托,验证待领取的委托收益(多节点) - 锁仓金额跨周期追加委托,验证待领取的委托收益(多节点) - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_economic = second_client.economic - second_node = second_client.node - first_economic.env.deploy_all() - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(first_economic.delegate_limit)) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount, node_id=second_node.node_id) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(second_economic.delegate_limit)) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert first_delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(first_cumulative_income) - assert second_delegate_epoch == 1, "ErrMsg: Last time second delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == 0, "ErrMsg: Last time second cumulative income {}".format( - second_cumulative_income) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert first_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - assert second_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(first_economic.delegate_limit)) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount, node_id=second_node.node_id) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(second_economic.delegate_limit)) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert first_delegate_epoch == 2, "ErrMsg: Last time first delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(first_cumulative_income) - assert second_delegate_epoch == 2, "ErrMsg: Last time second delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == 0, "ErrMsg: Last time second cumulative income {}".format( - second_cumulative_income) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert first_last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - assert second_last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - block_reward, staking_reward = first_economic.get_current_year_reward(first_node) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - first_commission_award = first_economic.calculate_delegate_reward(first_node, block_reward, staking_reward) - first_current_commission_award = first_economic.delegate_cumulative_income(first_node, block_reward, staking_reward, - delegate_amount, delegate_amount) - second_commission_award = second_economic.calculate_delegate_reward(second_node, block_reward, staking_reward) - second_current_commission_award = first_economic.delegate_cumulative_income(second_node, block_reward, - staking_reward, delegate_amount, - delegate_amount) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(first_economic.delegate_limit)) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount, node_id=second_node.node_id) - assert_code(result, 0) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert first_delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == first_current_commission_award, "ErrMsg: Last time first cumulative income {}".format( - first_cumulative_income) - assert second_delegate_epoch == 3, "ErrMsg: Last time second delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == second_current_commission_award, "ErrMsg: Last time second cumulative income {}".format( - second_cumulative_income) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert first_last_delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == von_amount(delegate_amount, - 2), "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == first_commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - assert second_last_delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == von_amount(delegate_amount, - 2), "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == second_commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - - -@pytest.mark.P0 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_010_016(client_new_node, delegate_type, reset_environment): - """ - 自由金额首次部分赎回,验证待领取的委托收益(生效期N) - 锁仓金额首次部分赎回,验证待领取的委托收益(生效期N) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current block height:{}".format(node.eth.blockNumber)) - result = client.ppos.getCandidateInfo(client.node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - log.info("commission information:{}".format(result)) - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 2, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount - economic.delegate_limit, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - - -@pytest.mark.P0 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_011_074(client_new_node, delegate_type, reset_environment): - """ - 自由金额跨结算周期首次部分赎回,验证待领取的委托收益(生效期N) - 锁仓金额跨结算周期首次部分赎回,验证待领取的委托收益(生效期N) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current block height:{}".format(node.eth.blockNumber)) - commission_award = economic.calculate_delegate_reward(node, block_reward, staking_reward) - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, delegate_amount, - delegate_amount) - result = client.ppos.getCandidateInfo(client.node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == current_commission_award, "ErrMsg: Last time first cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount - economic.delegate_limit, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == current_commission_award - - -@pytest.mark.P0 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_012_017(client_new_node, delegate_type, reset_environment): - """ - 自由金额多次部分赎回,验证待领取的委托收益(单节点) - 锁仓金额多次部分赎回,验证待领取的委托收益(单节点) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == delegate_amount - economic.delegate_limit, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - economic.wait_settlement(node) - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 2, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount - von_amount(economic.delegate_limit, - 2), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_amount_total = delegate_amount - von_amount(economic.delegate_limit, 2) - commission_total_reward = economic.calculate_delegate_reward(node, block_reward, staking_reward) - current_commission_reward = economic.delegate_cumulative_income(node, block_reward, staking_reward, - delegate_amount_total, delegate_amount_total) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == current_commission_reward, "ErrMsg: Last time first cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount - von_amount(economic.delegate_limit, - 3), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == commission_total_reward, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - log.info("Dividend information currently available:{}".format(result)) - assert result['Ret'][0][ - 'reward'] == current_commission_reward, "ErrMsg:Delegate rewards currently available {}".format( - result['Ret'][0]['reward']) - - -@pytest.mark.P0 -def test_EI_BC_013(client_new_node, reset_environment): - """ - 节点被多账户委托,跨结算周期部分赎回,验证待领取的委托收益(生效期N) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - first_address, _ = economic.account.generate_account(node.web3, von_amount(economic.delegate_limit, 100)) - second_address, _ = economic.account.generate_account(node.web3, von_amount(economic.delegate_limit, 1000)) - log.info("Create delegate account:{}".format(first_address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, first_address, amount=delegate_amount) - assert_code(result, 0) - result = client.delegate.delegate(0, second_address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current block height:{}".format(node.eth.blockNumber)) - commission_total_reward = economic.calculate_delegate_reward(node, block_reward, staking_reward) - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - von_amount(delegate_amount, 2), delegate_amount) - result = client.ppos.getCandidateInfo(client.node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, first_address) - assert_code(result, 0) - first_delegate_epoch, first_cumulative_income = get_dividend_information(client, node.node_id, first_address) - assert first_delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == current_commission_award, "ErrMsg: Last time first cumulative income {}".format( - first_cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 2) - economic.delegate_limit, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == commission_total_reward, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(first_address) - withdrawal_commission = result['Ret'][0]['reward'] - log.info("{} Dividends can be collected in the current settlement period: {}".format(first_address, - withdrawal_commission)) - assert withdrawal_commission == current_commission_award, "ErrMsg: Dividends currently available {}".format( - withdrawal_commission) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_014_018(client_new_node, delegate_type, reset_environment): - """ - 自由金额赎回全部委托,验证待领取的委托收益(未生效期) - 锁仓金额赎回全部委托,验证待领取的委托收益(未生效期) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, address, amount=delegate_amount) - assert_code(result, 0) - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - assert_code(result, 301205) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_019_023(clients_new_node, delegate_type, reset_environment): - """ - 自由金额首次部分赎回,验证待领取的委托收益(多节点) - 锁仓金额首次部分赎回,验证待领取的委托收益(多节点) - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_economic = second_client.economic - second_node = second_client.node - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.delegate(delegate_type, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.ppos.getCandidateInfo(first_node.node_id) - first_blocknum = result['Ret']['StakingBlockNum'] - result = second_client.ppos.getCandidateInfo(second_node.node_id) - second_blocknum = result['Ret']['StakingBlockNum'] - result = first_client.delegate.withdrew_delegate(first_blocknum, address) - assert_code(result, 0) - result = first_client.delegate.withdrew_delegate(second_blocknum, address, node_id=second_node.node_id) - assert_code(result, 0) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - assert first_delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - first_cumulative_income) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert second_delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - second_cumulative_income) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - assert first_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == delegate_amount - first_economic.delegate_limit, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert second_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == delegate_amount - second_economic.delegate_limit, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_020_24(clients_new_node, delegate_type, reset_environment): - """ - 自由金额多次部分赎回,验证待领取的委托收益(多节点) - 锁仓金额多次部分赎回,验证待领取的委托收益(多节点) - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_economic = second_client.economic - second_node = second_client.node - first_economic.env.deploy_all() - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.delegate(delegate_type, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.ppos.getCandidateInfo(first_node.node_id) - first_blocknum = result['Ret']['StakingBlockNum'] - result = second_client.ppos.getCandidateInfo(second_node.node_id) - second_blocknum = result['Ret']['StakingBlockNum'] - result = first_client.delegate.withdrew_delegate(first_blocknum, address) - assert_code(result, 0) - result = first_client.delegate.withdrew_delegate(second_blocknum, address, node_id=second_node.node_id) - assert_code(result, 0) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - assert first_delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - first_cumulative_income) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert second_delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - second_cumulative_income) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - assert first_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == delegate_amount - first_economic.delegate_limit, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert second_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == delegate_amount - second_economic.delegate_limit, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - result = first_client.delegate.withdrew_delegate(first_blocknum, address) - assert_code(result, 0) - result = first_client.delegate.withdrew_delegate(second_blocknum, address, node_id=second_node.node_id) - assert_code(result, 0) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - assert first_delegate_epoch == 2, "ErrMsg: Last time first delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - first_cumulative_income) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert second_delegate_epoch == 2, "ErrMsg: Last time first delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - second_cumulative_income) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - assert first_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == delegate_amount - von_amount(first_economic.delegate_limit, - 2), "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert second_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == delegate_amount - von_amount(second_economic.delegate_limit, - 2), "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - block_reward, staking_reward = first_economic.get_current_year_reward(first_node) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - delegate_amount_total = delegate_amount - von_amount(first_economic.delegate_limit, 2) - first_commission_award = first_economic.calculate_delegate_reward(first_node, block_reward, staking_reward) - first_current_commission_award = first_economic.delegate_cumulative_income(first_node, block_reward, staking_reward, - delegate_amount_total, - delegate_amount_total) - second_commission_award = second_economic.calculate_delegate_reward(second_node, block_reward, staking_reward) - second_current_commission_award = second_economic.delegate_cumulative_income(second_node, block_reward, - staking_reward, delegate_amount_total, - delegate_amount_total) - result = first_client.delegate.withdrew_delegate(first_blocknum, address) - assert_code(result, 0) - result = first_client.delegate.withdrew_delegate(second_blocknum, address, node_id=second_node.node_id) - assert_code(result, 0) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - assert first_delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == first_current_commission_award, "ErrMsg: Last time first cumulative income {}".format( - first_cumulative_income) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert second_delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == second_current_commission_award, "ErrMsg: Last time first cumulative income {}".format( - second_cumulative_income) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - assert first_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == delegate_amount - von_amount(first_economic.delegate_limit, - 3), "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == first_commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert second_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == delegate_amount - von_amount(second_economic.delegate_limit, - 3), "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == second_commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - result = first_client.ppos.getDelegateReward(address, node_ids=[first_node.node_id]) - withdrawal_commission = result['Ret'][0]['reward'] - log.info( - "{} Dividends can be collected in the current settlement period: {}".format(address, withdrawal_commission)) - assert withdrawal_commission == first_current_commission_award, "ErrMsg: Dividends currently available {}".format( - withdrawal_commission) - result = first_client.ppos.getDelegateReward(address, node_ids=[second_node.node_id]) - withdrawal_commission = result['Ret'][0]['reward'] - log.info( - "{} Dividends can be collected in the current settlement period: {}".format(address, withdrawal_commission)) - assert withdrawal_commission == second_current_commission_award, "ErrMsg: Dividends currently available {}".format( - withdrawal_commission) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_021_25(clients_new_node, delegate_type, reset_environment): - """ - 未生效期N自由金额赎回全部委托,验证待领取的委托收益(多节点) - 未生效期N锁仓金额赎回全部委托,验证待领取的委托收益(多节点) - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_node = second_client.node - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.delegate(delegate_type, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.ppos.getCandidateInfo(first_node.node_id) - first_blocknum = result['Ret']['StakingBlockNum'] - result = second_client.ppos.getCandidateInfo(second_node.node_id) - second_blocknum = result['Ret']['StakingBlockNum'] - result = first_client.delegate.withdrew_delegate(first_blocknum, address, amount=delegate_amount) - assert_code(result, 0) - result = first_client.delegate.withdrew_delegate(second_blocknum, address, node_id=second_node.node_id, - amount=delegate_amount) - assert_code(result, 0) - result = first_client.ppos.getDelegateInfo(first_blocknum, address, first_node.node_id) - assert_code(result, 301205) - result = second_client.ppos.getDelegateInfo(first_blocknum, address, second_node.node_id) - assert_code(result, 301205) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - assert first_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert second_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_022_026(clients_new_node, delegate_type, reset_environment): - """ - 生效期N自由金额赎回全部委托,验证待领取的委托收益(多节点) - 生效期N锁仓金额赎回全部委托,验证待领取的委托收益(多节点) - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_economic = second_client.economic - second_node = second_client.node - first_economic.env.deploy_all() - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.delegate(delegate_type, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - block_reward, staking_reward = first_economic.get_current_year_reward(first_node) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - result = first_client.ppos.getCandidateInfo(first_node.node_id) - first_blocknum = result['Ret']['StakingBlockNum'] - result = second_client.ppos.getCandidateInfo(second_node.node_id) - second_blocknum = result['Ret']['StakingBlockNum'] - first_delegate_balance = first_node.eth.getBalance(address) - log.info("Entrusted account balance:{}".format(first_delegate_balance)) - first_commission_award = first_economic.calculate_delegate_reward(first_node, block_reward, staking_reward) - first_current_commission_award = first_economic.delegate_cumulative_income(first_node, block_reward, staking_reward, - delegate_amount, delegate_amount) - second_commission_award = second_economic.calculate_delegate_reward(second_node, block_reward, staking_reward) - second_current_commission_award = first_economic.delegate_cumulative_income(first_node, block_reward, - staking_reward, delegate_amount, - delegate_amount) - first_delegate_balance = first_node.eth.getBalance(address) - log.info("Entrusted account balance:{}".format(first_delegate_balance)) - result = first_client.delegate.withdrew_delegate(first_blocknum, address, amount=delegate_amount) - assert_code(result, 0) - result = first_client.delegate.withdrew_delegate(second_blocknum, address, node_id=second_node.node_id, - amount=delegate_amount) - assert_code(result, 0) - second_delegate_balance = first_node.eth.getBalance(address) - log.info("Entrusted account balance:{}".format(second_delegate_balance)) - result = first_client.ppos.getDelegateInfo(first_blocknum, address, first_node.node_id) - assert_code(result, 301205) - result = second_client.ppos.getDelegateInfo(first_blocknum, address, second_node.node_id) - assert_code(result, 301205) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - assert first_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == first_commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert second_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == second_commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - result = first_client.ppos.getDelegateReward(address, node_ids=[first_node.node_id]) - log.info("Dividend reward information currently available:{}".format(result)) - assert_code(result, 305001) - result = first_client.ppos.getDelegateReward(address, node_ids=[second_node.node_id]) - log.info("Dividend reward information currently available:{}".format(result)) - assert_code(result, 305001) - assert first_delegate_balance + first_current_commission_award + second_current_commission_award - second_delegate_balance < first_node.web3.toWei( - 1, 'ether'), "ErrMsg: 账户余额 {}".format(second_delegate_balance) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_027_029(client_new_node, delegate_type, reset_environment): - """ - 跨结算期赎回全部自由委托(生效期N赎回) - 跨结算期赎回全部锁仓委托(生效期N赎回) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, address, amount=delegate_amount) - assert_code(result, 0) - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - assert_code(result, 301205) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert_code(result, 305001) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_028_030(client_new_node, delegate_type, reset_environment): - """ - 跨结算期赎回全部自由委托(生效期N+1赎回) - 跨结算期赎回全部锁仓委托(生效期N+1赎回) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - first_delegate_balance = node.eth.getBalance(address) - log.info("Entrusted account balance: {}".format(first_delegate_balance)) - commission_award = economic.calculate_delegate_reward(node, block_reward, staking_reward) - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, delegate_amount, - delegate_amount) - result = client.delegate.withdrew_delegate(blocknum, address, amount=delegate_amount) - assert_code(result, 0) - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - assert_code(result, 301205) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert_code(result, 305001) - second_delegate_balance = node.eth.getBalance(address) - log.info("Entrusted account balance: {}".format(second_delegate_balance)) - assert first_delegate_balance + current_commission_award - second_delegate_balance < node.web3.toWei(1, - 'ether'), "ErrMsg:账户余额 {}".format( - second_delegate_balance) - - -@pytest.mark.P1 -@pytest.mark.parametrize('amount', [1, 3, 4]) -def test_EI_BC_031_032_033(client_new_node, amount, reset_environment): - """ - 生效期N自由金额再委托,赎回部分委托,赎回委托金额<生效期N自由金额(自由首次委托) - 生效期N自由金额再委托,赎回部分委托,赎回委托金额=生效期N自由金额(自由首次委托) - 生效期N自由金额再委托,赎回部分委托,赎回委托金额大于生效期N自由金额(自由首次委托) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = economic.delegate_limit * 3 - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - result = client.ppos.getCandidateInfo(node.node_id) - print(result) - blocknum = result['Ret']['StakingBlockNum'] - print("DelegateInfo: ", client.node.ppos.getDelegateInfo(blocknum, address, node.node_id)) - redemption_amount = node.web3.toWei(amount, 'ether') - result = client.delegate.withdrew_delegate(blocknum, address, amount=redemption_amount) - assert_code(result, 0) - block_reward, staking_reward = economic.get_current_year_reward(node) - print("DelegateInfo: ", client.node.ppos.getDelegateInfo(blocknum, address, node.node_id)) - economic.wait_settlement(node) - log.info("Current block height:{}".format(node.eth.blockNumber)) - current_delegate_amount = von_amount(delegate_amount, 2) - redemption_amount - if current_delegate_amount < delegate_amount: - current_delegate_amount = current_delegate_amount - else: - current_delegate_amount = delegate_amount - commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward) - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - current_delegate_amount, current_delegate_amount) - result = client.ppos.getCandidateInfo(client.node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == current_commission_award, "ErrMsg: Last time first cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - # assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format(delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == commission_award_total, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == current_commission_award, "ErrMsg:Dividends are currently available {}".format( - result['Ret'][0]['reward']) - - -@pytest.mark.P1 -@pytest.mark.parametrize('first_type,second_type', [(0, 1), (1, 0)]) -def test_EI_BC_036_037(client_new_node, first_type, second_type, reset_environment): - """ - 生效期N自由金额再委托,赎回部分委托(自由首次委托) - 生效期N自由金额再委托,赎回部分委托(锁仓首次委托) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(first_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.delegate(second_type, address, amount=delegate_amount) - assert_code(result, 0) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - redemption_amount = von_amount(economic.delegate_limit, 15) - result = client.delegate.withdrew_delegate(blocknum, address, amount=redemption_amount) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 2, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 2) - redemption_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - - -@pytest.mark.P1 -def test_EI_BC_038(client_new_node, reset_environment): - """ - 自由、锁仓金额同时委托,赎回部分委托 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - result = client.delegate.delegate(1, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - redemption_amount = von_amount(economic.delegate_limit, 15) - result = client.delegate.withdrew_delegate(blocknum, address, amount=redemption_amount) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 2, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 2) - redemption_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - - -@pytest.mark.P1 -def test_EI_BC_039(client_new_node, reset_environment): - """ - 自由、锁仓金额同时委托,生效期再委托,赎回部分委托 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - result = client.delegate.delegate(1, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - result = client.delegate.delegate(1, address, amount=delegate_amount) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 2, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 2), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == von_amount(delegate_amount, - 2), "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - delegate_amount_total = von_amount(delegate_amount, 2) - commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward) - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - delegate_amount_total, delegate_amount_total) - redemption_amount = von_amount(economic.delegate_limit, 35) - result = client.delegate.withdrew_delegate(blocknum, address, amount=redemption_amount) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == current_commission_award, "ErrMsg: Last time first cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 4) - redemption_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == commission_award_total, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_040_041(client_new_node, delegate_type, reset_environment): - """ - 生效期N自由金额再委托,赎回全部委托(自由首次委托) - 生效期N锁仓金额再委托,赎回全部委托(锁仓首次委托) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, address, amount=von_amount(delegate_amount, 2)) - assert_code(result, 0) - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - assert_code(result, 301205) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - assert_code(result, 301205) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - - -@pytest.mark.P1 -@pytest.mark.parametrize('first_type,second_type', [(0, 1), (1, 0)]) -def test_EI_BC_042_043(client_new_node, first_type, second_type, reset_environment): - """ - 生效期N锁仓锁仓委托,赎回全部委托(自由首次委托) - 生效期N自由锁仓委托,赎回全部委托(锁仓首次委托) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(first_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.delegate(second_type, address, amount=delegate_amount) - assert_code(result, 0) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, address, amount=von_amount(delegate_amount, 2)) - assert_code(result, 0) - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - assert_code(result, 301205) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - assert_code(result, 301205) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - - -@pytest.mark.P1 -def test_EI_BC_044(clients_new_node, reset_environment): - """ - 连续赎回不同节点委托,验证待领取的委托收益 - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_node = second_client.node - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.delegate(0, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - result = first_client.ppos.getCandidateInfo(first_node.node_id) - first_blocknum = result['Ret']['StakingBlockNum'] - result = first_client.delegate.withdrew_delegate(first_blocknum, address) - assert_code(result, 0) - result = second_client.ppos.getCandidateInfo(second_node.node_id) - second_blocknum = result['Ret']['StakingBlockNum'] - result = first_client.delegate.withdrew_delegate(second_blocknum, address, node_id=second_node.node_id) - assert_code(result, 0) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert first_delegate_epoch == 2, "ErrMsg: Last time first delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(first_cumulative_income) - assert second_delegate_epoch == 2, "ErrMsg: Last time first delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - second_cumulative_income) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert first_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == delegate_amount - first_economic.delegate_limit, "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - result = first_client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - assert second_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == delegate_amount - first_economic.delegate_limit, "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - result = second_client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - - -@pytest.mark.P1 -def test_EI_BC_045(client_new_node, reset_environment): - """ - 跨结算周期赎回委托,验证待领取的委托收益 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format(delegate_total) - assert delegate_total_hes == delegate_amount - economic.delegate_limit, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - current_delegate_amount = delegate_amount - economic.delegate_limit - commission_award = economic.calculate_delegate_reward(node, block_reward, staking_reward) - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - current_delegate_amount, current_delegate_amount) - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == current_commission_award, "ErrMsg: Last time first cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount - von_amount(economic.delegate_limit, - 2), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - - -@pytest.mark.P1 -def test_EI_BC_046(client_new_node, reset_environment): - """ - 节点退出中赎回部分委托,验证待领取的委托收益 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - staking_address = create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.staking.withdrew_staking(staking_address) - assert_code(result, 0) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 2, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount - economic.delegate_limit, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - currrent_delegate_amount = delegate_amount - economic.delegate_limit - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - currrent_delegate_amount, currrent_delegate_amount) - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - delegate_reward = economic.calculate_delegate_reward(node, block_reward, staking_reward) - assert delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == current_commission_award, "ErrMsg: Last time first cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount - economic.delegate_limit - economic.delegate_limit, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == delegate_reward, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == current_commission_award - - -@pytest.mark.P1 -def test_EI_BC_047(client_new_node, reset_environment): - """ - 节点退出中赎回全部委托,验证待领取的委托收益 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - staking_address = create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - - result = client.staking.withdrew_staking(staking_address) - assert_code(result, 0) - first_balance = node.eth.getBalance(address) - log.info("Entrusted account balance:{}".format(first_balance)) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, address, amount=delegate_amount) - assert_code(result, 0) - commission_award = economic.calculate_delegate_reward(node, block_reward, staking_reward) - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, delegate_amount, - delegate_amount) - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - assert_code(result, 301205) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert_code(result, 305001) - second_balance = node.eth.getBalance(address) - log.info("Entrusted account balance:{}".format(second_balance)) - assert (first_balance + current_commission_award) - second_balance < node.web3.toWei(1, - 'ether'), "ErrMsg: Account Balance {}".format( - second_balance) - - -@pytest.mark.P1 -def test_EI_BC_048(client_new_node, reset_environment): - """ - 节点已退出质押赎回部分委托,验证待领取的委托收益 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - staking_address = create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.staking.withdrew_staking(staking_address) - assert_code(result, 0) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, delegate_amount, - delegate_amount) - - economic.wait_settlement(node, 2) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - first_commission_balance = node.eth.getBalance(address) - log.info("Account balance before receiving dividends: {}".format(first_commission_balance)) - - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - log.info("Commission information:{}".format(result)) - info = result['Ret'] - delegate_epoch = info['DelegateEpoch'] - cumulative_income = info['CumulativeIncome'] - - assert delegate_epoch == 6, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == current_commission_award, "ErrMsg: Last time first cumulative income {}".format( - cumulative_income) - result = client.ppos.getCandidateInfo(node.node_id) - assert_code(result, 301204) - second_commission_balance = node.eth.getBalance(address) - log.info("Account balance before receiving dividends: {}".format(second_commission_balance)) - assert second_commission_balance == first_commission_balance, "ErrMsg: Account Balance {}".format( - second_commission_balance) - - -@pytest.mark.P1 -def test_EI_BC_049(client_new_node, reset_environment): - """ - 节点已退出质押赎回全部委托,验证待领取的委托收益 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - staking_address = create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.staking.withdrew_staking(staking_address) - assert_code(result, 0) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, delegate_amount, - delegate_amount) - - first_commission_balance = node.eth.getBalance(address) - log.info("Account balance before receiving dividends: {}".format(first_commission_balance)) - - economic.wait_settlement(node, 2) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.withdrew_delegate(blocknum, address, amount=delegate_amount) - assert_code(result, 0) - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - assert_code(result, 301205) - result = client.ppos.getCandidateInfo(node.node_id) - assert_code(result, 301204) - result = client.ppos.getDelegateReward(address) - assert_code(result, 305001) - second_commission_balance = node.eth.getBalance(address) - log.info("Account balance before receiving dividends: {}".format(second_commission_balance)) - assert (first_commission_balance + current_commission_award) - second_commission_balance < node.web3.toWei(1, - 'ether'), "ErrMsg: Account Balance {}".format( - second_commission_balance) - - -@pytest.mark.P1 -def test_EI_BC_050(client_new_node, reset_environment): - """ - 节点被惩罚赎回委托,验证待领取的委托收益 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # view Current block - current_block = client_new_node.node.eth.blockNumber - log.info("Current block: {}".format(current_block)) - # Report prepareblock signature - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, current_block) - log.info("Report information: {}".format(report_information)) - result = client_new_node.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 2, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount - economic.delegate_limit, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount - von_amount(economic.delegate_limit, - 2), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_055_058(client_new_node, delegate_type, reset_environment): - """ - 自由金额委托首次领取分红(生效期N) - 锁仓金额委托首次领取分红(生效期N) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format(delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_056_059(client_new_node, delegate_type, reset_environment): - """ - 跨结算期自由金额委托首次领取分红 - 跨结算期锁仓金额委托首次领取分红 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - commission_award = economic.calculate_delegate_reward(node, block_reward, staking_reward) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - - -@pytest.mark.P1 -def test_EI_BC_060(client_new_node, reset_environment): - """ - 自由、锁仓金额同时委托首次领取分红(未生效期N) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - result = client.delegate.delegate(1, address, amount=delegate_amount) - assert_code(result, 0) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == von_amount(delegate_amount, - 2), "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - - -@pytest.mark.P1 -def test_EI_BC_061(client_new_node, reset_environment): - """ - 自由、锁仓金额同时委托首次领取分红(生效期N) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - result = client.delegate.delegate(1, address, amount=delegate_amount) - assert_code(result, 0) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 2), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - - -@pytest.mark.P1 -def test_EI_BC_062(client_new_node, reset_environment): - """ - 跨结算期自由、锁仓金额同时委托首次领取分红 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - result = client.delegate.delegate(1, address, amount=delegate_amount) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == von_amount(delegate_amount, - 2), "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 2), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - commission_award = economic.calculate_delegate_reward(node, block_reward, staking_reward) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 2), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_063_064(clients_new_node, delegate_type, reset_environment): - """ - 自由金额多节点被委托,领取单个节点分红(未生效期N) - 锁仓金额多节点被委托,领取单个节点分红(未生效期N) - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_node = second_client.node - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.delegate(delegate_type, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert first_delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(first_cumulative_income) - assert second_delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - second_cumulative_income) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert first_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - result = first_client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - assert second_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - result = second_client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_065_066(clients_new_node, delegate_type, reset_environment): - """ - 自由金额多节点被委托,领取分红(生效期N) - 锁仓金额多节点被委托,领取分红(生效期N) - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_node = second_client.node - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.delegate(delegate_type, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - result = first_client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert first_delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(first_cumulative_income) - assert second_delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - second_cumulative_income) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert first_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - result = first_client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - assert second_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - result = second_client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - - -@pytest.mark.P1 -@pytest.mark.parametrize('delegate_type', [0, 1]) -def test_EI_BC_067_068(clients_new_node, delegate_type, reset_environment): - """ - 自由金额跨结算期多节点被委托,领取分红 - 锁仓金额跨结算期多节点被委托,领取分红 - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_economic = second_client.economic - second_node = second_client.node - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(delegate_type, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.delegate(delegate_type, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - block_reward, staking_reward = first_economic.get_current_year_reward(first_node) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - first_commission_award = first_economic.calculate_delegate_reward(first_node, block_reward, staking_reward) - second_commission_award = second_economic.calculate_delegate_reward(second_node, block_reward, staking_reward) - result = first_client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - first_delegate_epoch, first_cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert first_delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(first_delegate_epoch) - assert first_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(first_cumulative_income) - assert second_delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - second_cumulative_income) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert first_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == first_commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - result = first_client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - assert second_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == second_commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - result = second_client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - - -@pytest.mark.P1 -def test_EI_BC_069(client_new_node, reset_environment): - """ - 节点退出中领取分红,验证待领取的委托收益 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - staking_address = create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.staking.withdrew_staking(staking_address) - assert_code(result, 0) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - commission_award = economic.calculate_delegate_reward(node, block_reward, staking_reward) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == commission_award, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - - -@pytest.mark.P2 -def test_EI_BC_070(client_new_node, reset_environment): - """ - 节点已退出质押领取分红,验证待领取的委托收益 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - staking_address = create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - candadite_info = node.ppos.getCandidateInfo(node.node_id) - staking_num = candadite_info['Ret']['StakingBlockNum'] - - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.staking.withdrew_staking(staking_address) - assert_code(result, 0) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - # block_reward, staking_reward = economic.get_current_year_reward(node) - - # economic.wait_settlement(node) - # log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - - economic.wait_settlement(node, 2) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - delegate_balance = node.eth.getBalance(address) - log.info("Entrusted account balance: {}".format(delegate_balance)) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - - result = client.ppos.getDelegateInfo(staking_num, address, node.node_id) - delegate_epoch = result['Ret']['DelegateEpoch'] - cumulative_income = result['Ret']['CumulativeIncome'] - - assert delegate_epoch == 5, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - result = client.ppos.getCandidateInfo(node.node_id) - assert_code(result, 301204) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - - -@pytest.mark.P1 -def test_EI_BC_071(client_new_node, reset_environment): - """ - 节点被惩罚领取分红,验证待领取的委托收益 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # view Current block - current_block = client_new_node.node.eth.blockNumber - log.info("Current block: {}".format(current_block)) - # Report prepareblock signature - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, current_block) - log.info("Report information: {}".format(report_information)) - result = client_new_node.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - commission_award = economic.calculate_delegate_reward(node, block_reward, staking_reward) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg:Receive dividends {}".format(result['Ret'][0]['reward']) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P1 -def test_EI_BC_072(client_new_node, reset_environment): - """ - 同个生效期N二次委托、赎回部分委托、领取分红 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == delegate_amount - economic.delegate_limit, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == delegate_amount - economic.delegate_limit, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - - -@pytest.mark.P0 -def test_EI_BC_073(client_new_node, reset_environment): - """ - 不同生效期N二次委托、赎回部分委托、领取分红 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == 0, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward) - third_current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - delegate_amount, delegate_amount) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == third_current_commission_award, "ErrMsg: Last time cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 2) - economic.delegate_limit, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == commission_award_total, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - block_reward, staking_reward = economic.get_current_year_reward(node) - first_balance = node.eth.getBalance(address) - log.info("Entrusted account balance: {}".format(first_balance)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward) - current_delegate_amount = von_amount(delegate_amount, 2) - economic.delegate_limit - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - current_delegate_amount, current_delegate_amount) - result = client.ppos.getDelegateReward(address) - log.info("Receive dividends:{}".format(result)) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - time.sleep(2) - second_balance = node.eth.getBalance(address) - log.info("Entrusted account balance: {}".format(second_balance)) - gas = get_getDelegateReward_gas_fee(client, 1, 1) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 4, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 2) - economic.delegate_limit, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == von_amount(commission_award_total, - 2), "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg: Dividends currently available {}".format( - result['Ret'][0]['reward']) - assert first_balance + third_current_commission_award + current_commission_award - gas == second_balance - - -@pytest.mark.P1 -def test_EI_BC_075(clients_new_node, reset_environment): - """ - 委托多节点,生效期+1赎回单个节点全部委托 - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_economic = second_client.economic - second_node = second_client.node - first_economic.env.deploy_all() - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.delegate(0, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - result = first_client.ppos.getCandidateInfo(first_node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - block_reward, staking_reward = first_economic.get_current_year_reward(first_node) - first_balance = first_node.eth.getBalance(address) - log.info("Entrusted account balance: {}".format(first_balance)) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - first_award_total = first_economic.calculate_delegate_reward(first_node, block_reward, staking_reward) - first_current_commission_award = first_economic.delegate_cumulative_income(first_node, block_reward, staking_reward, - delegate_amount, delegate_amount) - second_award_total = second_economic.calculate_delegate_reward(second_node, block_reward, staking_reward) - second_current_commission_award = first_economic.delegate_cumulative_income(second_node, block_reward, - staking_reward, delegate_amount, - delegate_amount) - result = first_client.delegate.withdrew_delegate(blocknum, address, amount=delegate_amount, - node_id=first_node.node_id) - assert_code(result, 0) - second_balance = first_node.eth.getBalance(address) - log.info("Entrusted account balance: {}".format(second_balance)) - result = first_client.ppos.getDelegateInfo(blocknum, address, node_id=first_node.node_id) - assert_code(result, 301205) - second_delegate_epoch, second_cumulative_income = get_dividend_information(first_client, second_node.node_id, - address) - assert second_delegate_epoch == 1, "ErrMsg: Last time first delegate epoch {}".format(second_delegate_epoch) - assert second_cumulative_income == 0, "ErrMsg: Last time first cumulative income {}".format( - second_cumulative_income) - first_last_delegate_epoch, first_delegate_total, first_delegate_total_hes, first_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, first_node.node_id) - second_last_delegate_epoch, second_delegate_total, second_delegate_total_hes, second_delegate_reward_total = get_delegate_relevant_amount_and_epoch( - first_client, second_node.node_id) - assert first_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(first_last_delegate_epoch) - assert first_delegate_total == 0, "The total number of effective commissioned nodes: {}".format( - first_delegate_total) - assert first_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - first_delegate_total_hes) - assert first_delegate_reward_total == first_award_total, "Total delegated rewards currently issued by the candidate: {}".format( - first_delegate_reward_total) - result = first_client.ppos.getDelegateReward(address, node_ids=[first_node.node_id]) - assert_code(result, 305001) - assert first_balance + first_current_commission_award - second_balance < first_node.web3.toWei(1, 'ether') - assert second_last_delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(second_last_delegate_epoch) - assert second_delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - second_delegate_total) - assert second_delegate_total_hes == 0, "The total number of inactive nodes commissioned: {}".format( - second_delegate_total_hes) - assert second_delegate_reward_total == second_award_total, "Total delegated rewards currently issued by the candidate: {}".format( - second_delegate_reward_total) - result = second_client.ppos.getDelegateReward(address, node_ids=[second_node.node_id]) - assert result['Ret'][0]['reward'] == second_current_commission_award, "ErrMsg:Receive dividends {}".format( - result['Ret'][0]['reward']) - - -@pytest.mark.P1 -def test_EI_BC_076(client_new_node, reset_environment): - """ - 调整分红比例,查询账户在各节点未提取委托奖励 - :param client_new_node: - :param reset_environment: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - staking_address = create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node, 1) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - log.info("staking_address {} balance: {}".format(staking_address, node.eth.getBalance(staking_address))) - result = client.staking.edit_candidate(staking_address, staking_address, reward_per=1500) - assert_code(result, 0) - block_reward, staking_reward = economic.get_current_year_reward(node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward, reward=1000) - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, delegate_amount, - delegate_amount, reward=1000) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 4, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == von_amount(current_commission_award, - 2), "ErrMsg: Last time cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 4, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == von_amount(commission_award_total, - 2), "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0]['reward'] == von_amount(commission_award_total, - 2), "ErrMsg: Dividends currently available {}".format( - result['Ret'][0]['reward']) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - second_commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward) - second_current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - delegate_amount, - delegate_amount) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 5, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == von_amount(current_commission_award, - 2) + second_current_commission_award, "ErrMsg: Last time cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 5, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 2), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == von_amount(commission_award_total, - 2) + second_commission_award_total, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(address) - assert result['Ret'][0][ - 'reward'] == von_amount(current_commission_award, - 2) + second_current_commission_award, "ErrMsg: Dividends currently available {}".format( - result['Ret'][0]['reward']) - - -@pytest.mark.P2 -def test_EI_BC_077(client_new_node, reset_environment): - """ - 调整分红比例,查询账户在各节点未提取委托奖励(多个委托) - :param client_new_node: - :param reset_environment: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - first_address = create_restricting_plan(client) - second_address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(first_address)) - log.info("Create delegate account:{}".format(second_address)) - staking_address = create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, first_address, amount=delegate_amount) - assert_code(result, 0) - result = client.delegate.delegate(0, second_address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node, 1) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.staking.edit_candidate(staking_address, staking_address, reward_per=2000) - assert_code(result, 0) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward, reward=1000) - current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - von_amount(delegate_amount, 2), delegate_amount, - reward=1000) - result = client.delegate.delegate(0, first_address, amount=delegate_amount) - assert_code(result, 0) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.delegate(0, second_address, amount=delegate_amount) - assert_code(result, 0) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, first_address) - assert delegate_epoch == 4, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == von_amount(current_commission_award, - 2), "ErrMsg: Last time cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 4, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 2), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == von_amount(delegate_amount, - 2), "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == von_amount(commission_award_total, - 2), "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(first_address) - assert result['Ret'][0]['reward'] == von_amount(current_commission_award, - 2), "ErrMsg: Dividends currently available {}".format( - result['Ret'][0]['reward']) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - second_commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward) - second_current_commission_award = economic.delegate_dividend_income(second_commission_award_total, - von_amount(delegate_amount, 2), - delegate_amount) - result = client.delegate.delegate(0, first_address, amount=delegate_amount) - assert_code(result, 0) - result = client.delegate.delegate(0, second_address, amount=delegate_amount) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, first_address) - assert delegate_epoch == 5, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == von_amount(current_commission_award, - 2) + second_current_commission_award, "ErrMsg: Last time cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 5, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, - 4), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == von_amount(delegate_amount, - 2), "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == von_amount(commission_award_total, - 2) + second_commission_award_total, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(first_address) - assert result['Ret'][0][ - 'reward'] == von_amount(current_commission_award, - 2) + second_current_commission_award, "ErrMsg: Dividends currently available {}".format( - result['Ret'][0]['reward']) - - -@pytest.mark.P1 -def test_EI_BC_078(client_new_node, reset_environment): - """ - 多账户委托,其中一个节点赎回 - :param client_new_node: - :param reset_environment: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - first_address = create_restricting_plan(client) - second_address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(first_address)) - log.info("Create delegate account:{}".format(second_address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.node_id)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, first_address, amount=delegate_amount) - assert_code(result, 0) - result = client.delegate.delegate(0, second_address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, first_address) - assert_code(result, 0) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - delegate_amount_total = von_amount(delegate_amount, 2) - economic.delegate_limit - commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward) - first_current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - delegate_amount_total, - delegate_amount - economic.delegate_limit) - second_current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - delegate_amount_total, - delegate_amount) - - result = client.delegate.delegate(0, first_address, amount=delegate_amount) - assert_code(result, 0) - - result = client.delegate.withdrew_delegate(blocknum, second_address) - assert_code(result, 0) - - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, first_address) - assert delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == first_current_commission_award, "ErrMsg: Last time cumulative income {}".format( - cumulative_income) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, second_address) - assert delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == second_current_commission_award, "ErrMsg: Last time cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == delegate_amount_total - economic.delegate_limit, "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == commission_award_total, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(first_address) - assert result['Ret'][0][ - 'reward'] == first_current_commission_award, "ErrMsg: Dividends currently available {}".format( - result['Ret'][0]['reward']) - result = client.ppos.getDelegateReward(second_address) - assert result['Ret'][0][ - 'reward'] == second_current_commission_award, "ErrMsg: Dividends currently available {}".format( - result['Ret'][0]['reward']) - - -@pytest.mark.P1 -def test_EI_BC_079(client_new_node, reset_environment): - """ - 多账户委托,不同结算期操作 - :param client_new_node: - :param reset_environment: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - first_address = create_restricting_plan(client) - second_address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(first_address)) - log.info("Create delegate account:{}".format(second_address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.url)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, first_address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.delegate(0, second_address, amount=delegate_amount) - assert_code(result, 0) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.delegate.withdrew_delegate(blocknum, first_address) - assert_code(result, 0) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - delegate_amount_total = delegate_amount - economic.delegate_limit - first_commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward) - first_current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - delegate_amount_total, - delegate_amount_total) - result = client.delegate.delegate(0, first_address, amount=delegate_amount) - assert_code(result, 0) - - result = client.delegate.withdrew_delegate(blocknum, second_address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, first_address) - assert delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == first_current_commission_award, "ErrMsg: Last time cumulative income {}".format( - cumulative_income) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, second_address) - assert delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, 2) - von_amount(economic.delegate_limit, - 2), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == first_commission_award_total, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(first_address) - assert result['Ret'][0][ - 'reward'] == first_current_commission_award, "ErrMsg: Dividends currently available {}".format( - result['Ret'][0]['reward']) - result = client.ppos.getDelegateReward(second_address) - assert result['Ret'][0][ - 'reward'] == 0, "ErrMsg: Dividends currently available {}".format( - result['Ret'][0]['reward']) - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - delegate_amount_total = von_amount(delegate_amount, 2) - von_amount(economic.delegate_limit, 2) - second_commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward) - second_current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - delegate_amount_total, - delegate_amount - economic.delegate_limit) - result = client.delegate.withdraw_delegate_reward(first_address) - assert_code(result, 0) - result = client.delegate.delegate(0, second_address, amount=delegate_amount) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, first_address) - assert delegate_epoch == 4, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format( - cumulative_income) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, second_address) - assert delegate_epoch == 4, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == second_current_commission_award, "ErrMsg: Last time cumulative income {}".format( - cumulative_income) - last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( - client, node.node_id) - assert last_delegate_epoch == 4, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) - assert delegate_total == von_amount(delegate_amount, 3) - von_amount(economic.delegate_limit, - 2), "The total number of effective commissioned nodes: {}".format( - delegate_total) - assert delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( - delegate_total_hes) - assert delegate_reward_total == first_commission_award_total + second_commission_award_total, "Total delegated rewards currently issued by the candidate: {}".format( - delegate_reward_total) - result = client.ppos.getDelegateReward(first_address) - assert result['Ret'][0]['reward'] == 0, "ErrMsg: Dividends currently available {}".format( - result['Ret'][0]['reward']) - result = client.ppos.getDelegateReward(second_address) - assert result['Ret'][0][ - 'reward'] == second_current_commission_award, "ErrMsg: Dividends currently available {}".format( - result['Ret'][0]['reward']) - - -# -# @pytest.mark.P2 -# def test_EI_BC_080(client_new_node, reset_environment): -# client = client_new_node -# economic = client.economic -# node = client.node -# address = create_restricting_plan(client) -# log.info("Create delegate account:{}".format(address)) -# staking_address = create_staking_node(client) -# log.info("Create pledge node id :{}".format(node.node_id)) -# delegate_amount = von_amount(economic.delegate_limit, 10) -# result = client.delegate.delegate(0, address, amount=delegate_amount) -# assert_code(result, 0) -# log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) -# economic.wait_settlement(node) -# log.info("Current settlement block height:{}".format(node.eth.blockNumber)) -# block_reward, staking_reward = economic.get_current_year_reward(node) -# log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) -# economic.wait_settlement(node) -# log.info("Current settlement block height:{}".format(node.eth.blockNumber)) -# commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward, reward=1000) -# current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, delegate_amount, -# delegate_amount, reward=1000) -# result = client.delegate.delegate(0, address, amount=delegate_amount) -# assert_code(result, 0) -# delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) -# assert delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) -# assert cumulative_income == current_commission_award, "ErrMsg: Last time cumulative income {}".format( -# cumulative_income) -# last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( -# client, node.node_id) -# assert last_delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) -# assert delegate_total == delegate_amount, "The total number of effective commissioned nodes: {}".format( -# delegate_total) -# assert delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( -# delegate_total_hes) -# assert delegate_reward_total == commission_award_total, "Total delegated rewards currently issued by the candidate: {}".format( -# delegate_reward_total) -# result = client.ppos.getDelegateReward(address) -# assert result['Ret'][0]['reward'] == current_commission_award, "ErrMsg: Dividends currently available {}".format( -# result['Ret'][0]['reward']) -# block_reward, staking_reward = economic.get_current_year_reward(node) -# economic.wait_settlement(node) -# log.info("Current settlement block height:{}".format(node.eth.blockNumber)) -# second_commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward) -# second_current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, -# delegate_amount, -# delegate_amount) -# result = client.delegate.delegate(0, address, amount=delegate_amount) -# assert_code(result, 0) -# delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) -# assert delegate_epoch == 4, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) -# assert cumulative_income == current_commission_award + second_current_commission_award, "ErrMsg: Last time cumulative income {}".format( -# cumulative_income) -# last_delegate_epoch, delegate_total, delegate_total_hes, delegate_reward_total = get_delegate_relevant_amount_and_epoch( -# client, node.node_id) -# assert last_delegate_epoch == 4, "ErrMsg: Last time delegate epoch {}".format(last_delegate_epoch) -# assert delegate_total == von_amount(delegate_amount, -# 2), "The total number of effective commissioned nodes: {}".format( -# delegate_total) -# assert delegate_total_hes == delegate_amount, "The total number of inactive nodes commissioned: {}".format( -# delegate_total_hes) -# assert delegate_reward_total == commission_award_total + second_commission_award_total, "Total delegated rewards currently issued by the candidate: {}".format( -# delegate_reward_total) -# result = client.ppos.getDelegateReward(address) -# assert result['Ret'][0][ -# 'reward'] == current_commission_award + second_current_commission_award, "ErrMsg: Dividends currently available {}".format( -# result['Ret'][0]['reward']) - - -@pytest.mark.P1 -def test_EI_BC_081(clients_new_node, reset_environment): - """ - 委托多节点,委托犹豫期多次领取 - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_economic = second_client.economic - second_node = second_client.node - first_economic.env.deploy_all() - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.delegate(0, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - first_balance = first_client.node.eth.getBalance(address) - log.info("delegate account balance:{}".format(first_balance)) - first_client.economic.wait_consensus(first_node) - log.info("Current block height:{}".format(first_node.eth.blockNumber)) - result = first_client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - second_balance = first_client.node.eth.getBalance(address) - log.info("delegate account balance:{}".format(second_balance)) - gas = get_getDelegateReward_gas_fee(first_client, 2, 0) - assert first_balance - gas == second_balance, "ErrMsg:delegate account balance {}".format(second_balance) - result = first_client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - time.sleep(2) - third_balance = first_client.node.eth.getBalance(address) - gas = get_getDelegateReward_gas_fee(first_client, 2, 0) - assert second_balance - gas == third_balance, "ErrMsg:delegate account balance {}".format(third_balance) - - -@pytest.mark.P1 -def test_EI_BC_082(clients_new_node, reset_environment): - """ - 委托多节点,委托锁定期多次领取 - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_economic = second_client.economic - second_node = second_client.node - first_economic.env.deploy_all() - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.delegate(0, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - first_balance = first_client.node.eth.getBalance(address) - log.info("delegate account balance:{}".format(first_balance)) - first_client.economic.wait_settlement(first_node) - log.info("Current block height:{}".format(first_node.eth.blockNumber)) - result = first_client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - result = first_client.ppos.getCandidateInfo(first_node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = first_client.ppos.getDelegateInfo(blocknum, address, first_node.node_id) - log.info("Commission information:{}".format(result)) - delegate_epoch, cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - delegate_epoch, cumulative_income = get_dividend_information(second_client, second_node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - second_balance = first_client.node.eth.getBalance(address) - log.info("delegate account balance:{}".format(second_balance)) - gas = get_getDelegateReward_gas_fee(first_client, 2, 0) - assert first_balance - gas == second_balance, "ErrMsg:delegate account balance {}".format(second_balance) - result = first_client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - time.sleep(2) - third_balance = first_client.node.eth.getBalance(address) - gas = get_getDelegateReward_gas_fee(first_client, 2, 0) - assert second_balance - gas == third_balance, "ErrMsg:delegate account balance {}".format(third_balance) - first_current_block = first_node.eth.blockNumber - log.info("Current block height:{}".format(first_current_block)) - first_client.economic.wait_settlement(first_node) - second_current_block = first_node.eth.blockNumber - log.info("Current block height:{}".format(second_current_block)) - assert second_current_block > first_current_block - - -@pytest.mark.P1 -def test_EI_BC_083(clients_new_node, reset_environment): - """ - 委托多节点,委托跨结算期多次领取 - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_economic = second_client.economic - second_node = second_client.node - first_economic.env.deploy_all() - address = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.delegate(0, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - first_client.economic.wait_settlement(first_node) - log.info("Current block height:{}".format(first_node.eth.blockNumber)) - block_reward, staking_reward = first_economic.get_current_year_reward(first_node) - first_balance = first_node.eth.getBalance(address) - log.info("Entrusted account balance: {}".format(first_balance)) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - first_award_total = first_economic.calculate_delegate_reward(first_node, block_reward, staking_reward) - first_current_commission_award = first_economic.delegate_cumulative_income(first_node, block_reward, staking_reward, - delegate_amount, delegate_amount) - second_award_total = first_economic.calculate_delegate_reward(second_node, block_reward, staking_reward) - second_current_commission_award = second_economic.delegate_cumulative_income(second_node, block_reward, - staking_reward, - delegate_amount, delegate_amount) - result = first_client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - delegate_epoch, cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - delegate_epoch, cumulative_income = get_dividend_information(second_client, second_node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - time.sleep(2) - second_balance = first_client.node.eth.getBalance(address) - log.info("delegate1 account balance:{}".format(second_balance)) - gas = get_getDelegateReward_gas_fee(first_client, 2, 2) - log.info("gas:{}".format(gas)) - assert first_balance + first_current_commission_award + second_current_commission_award - gas == second_balance, "ErrMsg:delegate account balance {}".format( - second_balance) - result = first_client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - third_balance = first_client.node.eth.getBalance(address) - gas = get_getDelegateReward_gas_fee(first_client, 2, 0) - log.info("gas:{}".format(gas)) - assert second_balance - gas == third_balance, "ErrMsg:delegate account balance {}".format(third_balance) - - -@pytest.mark.P1 -def test_EI_BC_084(clients_new_node, reset_environment): - """ - 多账户委托多节点,委托跨结算期多次领取 - :param clients_new_node: - :return: - """ - first_client = clients_new_node[0] - second_client = clients_new_node[1] - first_economic = first_client.economic - first_node = first_client.node - second_economic = second_client.economic - second_node = second_client.node - first_economic.env.deploy_all() - address = create_restricting_plan(first_client) - address2 = create_restricting_plan(first_client) - log.info("Create delegate account:{}".format(address)) - create_stakings_node(clients_new_node) - log.info("Create first pledge node id :{}".format(first_node.node_id)) - log.info("Create second pledge node id :{}".format(second_node.node_id)) - delegate_amount = von_amount(first_economic.delegate_limit, 10) - result = first_client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - result = first_client.delegate.delegate(0, address, node_id=second_node.node_id, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(delegate_amount)) - first_client.economic.wait_settlement(first_node) - log.info("Current block height:{}".format(first_node.eth.blockNumber)) - result = first_client.delegate.delegate(0, address2, amount=delegate_amount) - assert_code(result, 0) - block_reward, staking_reward = first_economic.get_current_year_reward(first_node) - first_balance = first_node.eth.getBalance(address2) - log.info("Entrusted account balance: {}".format(first_balance)) - first_economic.wait_settlement(first_node) - log.info("Current settlement block height:{}".format(first_node.eth.blockNumber)) - first_award_total = first_economic.calculate_delegate_reward(first_node, block_reward, staking_reward) - first_current_commission_award = first_economic.delegate_cumulative_income(first_node, block_reward, staking_reward, - delegate_amount, delegate_amount) - result = first_client.delegate.withdraw_delegate_reward(address2) - assert_code(result, 0) - time.sleep(2) - delegate_epoch, cumulative_income = get_dividend_information(first_client, first_node.node_id, address) - assert delegate_epoch == 1, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - delegate_epoch, cumulative_income = get_dividend_information(first_client, first_node.node_id, address2) - assert delegate_epoch == 2, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format(cumulative_income) - second_balance = first_client.node.eth.getBalance(address2) - log.info("delegate1 account balance:{}".format(second_balance)) - gas = get_getDelegateReward_gas_fee(first_client, 1, 0) - assert first_balance - gas == second_balance, "ErrMsg:delegate account balance {}".format(second_balance) - result = first_client.delegate.withdraw_delegate_reward(address2) - assert_code(result, 0) - third_balance = first_client.node.eth.getBalance(address2) - gas = get_getDelegateReward_gas_fee(first_client, 1, 0) - assert second_balance - gas == third_balance, "ErrMsg:delegate account balance {}".format(third_balance) - - -@pytest.mark.P1 -def test_EI_BC_085(client_new_node, reset_environment): - """ - 不同结算期委托,多次领取 - :param client_new_node: - :param reset_environment: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.url)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - log.info("Commission information:{}".format(result)) - info = result['Ret'] - assert info['ReleasedHes'] == delegate_amount - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - first_commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward) - first_current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - delegate_amount, - delegate_amount) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - log.info("Commission information:{}".format(result)) - first_balance = node.eth.getBalance(address) - log.info("delegate amount balance: {}".format(first_balance)) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - time.sleep(2) - delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - assert delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format( - cumulative_income) - second_balance = node.eth.getBalance(address) - log.info("delegate amount balance: {}".format(second_balance)) - gas = get_getDelegateReward_gas_fee(client, 1, 0) - assert first_balance + first_current_commission_award - gas == second_balance - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - third_balance = node.eth.getBalance(address) - log.info("delegate amount balance: {}".format(third_balance)) - assert second_balance - gas == third_balance - - -@pytest.mark.P1 -def test_EI_BC_086(client_new_node, reset_environment): - """ - 账号全部赎回后再次领取 - :param client_new_node: - :param reset_environment: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address = create_restricting_plan(client) - log.info("Create delegate account:{}".format(address)) - create_staking_node(client) - log.info("Create pledge node id :{}".format(node.url)) - delegate_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - log.info("Commissioned successfully, commissioned amount:{}".format(economic.delegate_limit)) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - result = client.ppos.getCandidateInfo(node.node_id) - blocknum = result['Ret']['StakingBlockNum'] - result = client.ppos.getDelegateInfo(blocknum, address, node.node_id) - log.info("Commission information:{}".format(result)) - info = result['Ret'] - # assert info['ReleasedHes'] == delegate_amount - block_reward, staking_reward = economic.get_current_year_reward(node) - economic.wait_settlement(node) - log.info("Current settlement block height:{}".format(node.eth.blockNumber)) - first_commission_award_total = economic.calculate_delegate_reward(node, block_reward, staking_reward) - first_current_commission_award = economic.delegate_cumulative_income(node, block_reward, staking_reward, - delegate_amount, - delegate_amount) - result = client.delegate.withdrew_delegate(blocknum, address, amount=delegate_amount) - assert_code(result, 0) - first_balance = node.eth.getBalance(address) - log.info("delegate amount balance: {}".format(first_balance)) - # delegate_epoch, cumulative_income = get_dividend_information(client, node.node_id, address) - # assert delegate_epoch == 3, "ErrMsg: Last time delegate epoch {}".format(delegate_epoch) - # assert cumulative_income == 0, "ErrMsg: Last time cumulative income {}".format( - # cumulative_income) - second_balance = node.eth.getBalance(address) - log.info("delegate amount balance: {}".format(second_balance)) - # assert first_balance + first_current_commission_award - second_balance < client.node.web3.toWei(1, 'ether') - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 305001) - - -# def test_sss(client_new_node): -# """ -# -# """ -# client = client_new_node -# economic = client.economic -# node = client.node -# address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 3) -# benifit_address, _ = economic.account.generate_account(node.web3, 0) -# delegate_address, _ = economic.account.generate_account(node.web3, von_amount(economic.delegate_limit, 2)) -# result = client.staking.create_staking(0, benifit_address, address, amount=economic.create_staking_limit * 2, -# reward_per=1000) -# assert_code(result, 0) -# result = client.delegate.delegate(0, delegate_address) -# assert_code(result, 0) -# economic.wait_settlement(node) -# economic.wait_consensus(node) -# result = client.staking.withdrew_staking(address) -# assert_code(result, 0) -# block_reward, staking_reward = economic.get_current_year_reward(node) -# print(block_reward, staking_reward) -# economic.wait_settlement(node) -# settlement_block = economic.get_switchpoint_by_settlement(node) - economic.settlement_size -# blocknum = economic.get_block_count_number(node, settlement_block, 10) -# block_reward_total = math.ceil(Decimal(str(block_reward)) * blocknum) -# delegate_block_reward = 0 -# for i in range(blocknum): -# delegate_block = int(Decimal(str(block_reward)) * Decimal(str(10 / 100))) -# delegate_block_reward = delegate_block_reward + delegate_block -# node_block_reward = block_reward_total - delegate_block_reward -# print('node_block_reward', node_block_reward) -# reward_total = block_reward_total + staking_reward -# # delegate_block_reward = int(Decimal(str(block_reward_total)) * Decimal(str(10 / 100))) -# delegate_staking_reward = int(Decimal(str(staking_reward)) * Decimal(str(10 / 100))) -# delegate_reward_total = delegate_block_reward + delegate_staking_reward -# # node_block_reward = int(Decimal(str(block_reward_total)) * Decimal(str(90 / 100))) -# node_staking_reward = math.ceil(Decimal(str(staking_reward)) * Decimal(str(90 / 100))) -# print('node_staking_reward ', node_staking_reward) -# node_reward_total = node_staking_reward + node_block_reward -# log.info("reward_total {}".format(reward_total)) -# log.info("delegate_reward {}".format(delegate_reward_total)) -# log.info("node_reward {}".format(node_reward_total)) -# print(delegate_reward_total + node_reward_total) -# result = node.ppos.getDelegateReward(delegate_address) -# print("getDelegateReward", result) -# balance = node.eth.getBalance(benifit_address, settlement_block) -# print("benifit_balance", balance) - - -def test_EI_BC_088(clients_noconsensus): - """ - 委托节点数>20,则只领取前20个节点的委托收益 - """ - client = clients_noconsensus[0] - economic = client.economic - node = client.node - node_length = len(economic.env.noconsensus_node_config_list) - delegate_address, _ = economic.account.generate_account(node.web3, von_amount(economic.delegate_limit, 2)) - for i in range(node_length): - address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - result = client.staking.create_staking(0, address, address, amount=economic.create_staking_limit, reward_per=1000) - assert_code(result, 0) - - - - - - diff --git a/cases/tests/ppos/test_general_punishment.py b/cases/tests/ppos/test_general_punishment.py deleted file mode 100644 index 8d49c461be..0000000000 --- a/cases/tests/ppos/test_general_punishment.py +++ /dev/null @@ -1,1513 +0,0 @@ -import time -from decimal import Decimal - -import pytest -from dacite import from_dict - -from common.key import mock_duplicate_sign -from common.log import log -from tests.conftest import get_clients_noconsensus, clients_consensus, get_consensus_clients -from tests.lib import Genesis, check_node_in_list, assert_code, von_amount, \ - get_governable_parameter_value, get_getDelegateReward_gas_fee - - -def get_out_block_penalty_parameters(client, node, amount_type): - # view Consensus Amount of pledge - candidate_info = client.ppos.getCandidateInfo(node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - pledge_amount1 = candidate_info['Ret'][amount_type] - # view block_reward - log.info("Current block height: {}".format(node.eth.blockNumber)) - block_reward, staking_reward = client.economic.get_current_year_reward(node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # Get governable parameters - slash_blocks = get_governable_parameter_value(client, 'slashBlocksReward') - return pledge_amount1, block_reward, slash_blocks - - -def penalty_proportion_and_income(client): - # view Pledge amount - candidate_info1 = client.ppos.getCandidateInfo(client.node.node_id) - pledge_amount1 = candidate_info1['Ret']['Released'] - # view Parameter value before treatment - penalty_ratio = get_governable_parameter_value(client, 'slashFractionDuplicateSign') - proportion_ratio = get_governable_parameter_value(client, 'duplicateSignReportReward') - return pledge_amount1, int(penalty_ratio), int(proportion_ratio) - - -@pytest.fixture() -def client_new_node_obj_list_reset(global_test_env, staking_cfg): - """ - Get new node Client object list - """ - global_test_env.deploy_all() - yield get_clients_noconsensus(global_test_env, staking_cfg) - # global_test_env.deploy_all() - - -@pytest.fixture() -def client_consensus_obj_list_reset(global_test_env, staking_cfg): - """ - Get new node Client object list - """ - global_test_env.deploy_all() - yield get_consensus_clients(global_test_env, staking_cfg) - global_test_env.deploy_all() - - -def verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount, type): - log.info("Start stopping the current node :{} process".format(first_client.node.url)) - first_client.node.stop() - start_num = second_client.economic.get_switchpoint_by_consensus(second_client.node, 3) - log.info("Start waiting for the end of the three consensus rounds") - second_client.economic.wait_consensus(second_client.node, 3) - freeze_duration = second_client.pip.pip.getGovernParamValue('slashing', 'zeroProduceFreezeDuration') - settlement_size = second_client.economic.settlement_size - num = start_num + (int(freeze_duration['Ret']) * settlement_size) - end_num = second_client.economic.get_settlement_switchpoint(num) - log.info(f"slashing info start_num: {start_num}, freeze_duration: {freeze_duration}, end_num: {end_num}") - log.info("Current block height: {}".format(second_client.node.eth.blockNumber)) - verifier_list = second_client.ppos.getVerifierList() - log.info("Current billing cycle certifier list: {}".format(verifier_list)) - candidate_info = second_client.ppos.getCandidateInfo(first_client.node.node_id) - log.info("stopped pledge node information: {}".format(candidate_info)) - amount_after_punishment = candidate_info['Ret'][type] - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("Low block rate penalty amount: {}".format(punishment_amonut)) - if punishment_amonut < pledge_amount: - assert (amount_after_punishment == pledge_amount - punishment_amonut), "ErrMsg:The pledge node is penalized after the amount {} is incorrect".format( - amount_after_punishment) - else: - assert amount_after_punishment == 0, "ErrMsg:The pledge node is penalized after the amount {} is incorrect".format( - amount_after_punishment) - return start_num, end_num - - -def VP_GPFV_001_002(client_new_node_obj_list_reset): - """ - VP_GPFV_001:共识轮里一个节点出块两次,第一次出够10个块,第二次只出2个块 - VP_GPFV_002:出块数大于0小于每轮出块数 - :param client_new_node_obj_list_reset: - :return: - """ - first_client = client_new_node_obj_list_reset[0] - log.info("Current connection node:{}".format(first_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - log.info("Start creating a pledge account Pledge_address") - Pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - log.info("Created, account address: {} Amount: {}".format(Pledge_address, von_amount(economic.create_staking_limit, 2))) - log.info("Start applying for a pledge node") - result = first_client.staking.create_staking(0, Pledge_address, Pledge_address) - assert_code(result, 0) - log.info("Apply for pledge node completion") - log.info("Waiting for the current billing cycle to end") - economic.wait_settlement(node) - for i in range(4): - result = check_node_in_list(node.node_id, first_client.ppos.getValidatorList) - log.info("View current node in consensus list status:{}".format(result)) - if result: - log.info("Current block height: {}".format(first_client.node.eth.blockNumber)) - economic.wait_consensus(node, 3) - log.info("Waiting for the end of 3 consensus rounds") - block_num = economic.get_block_count_number(node, 5) - log.info("Get the number of outbound blocks in the 5 consensus rounds of the current pledge node:{}".format( - block_num)) - candidate_info = first_client.ppos.getCandidateInfo(node.node_id) - log.info("Pledged node information:{}".format(candidate_info)) - info = candidate_info['Ret'] - assert info['Released'] == economic.create_staking_limit, "ErrMsg:Pledged Amount {}".format( - info['Released']) - validator_list = first_client.ppos.getValidatorList() - log.info("validator_list: {}".format(validator_list)) - assert len(validator_list['Ret']) == 4, "ErrMsg: Number of verification {}".format(len(validator_list)) - else: - log.info("Waiting for the current consensus round of settlement") - economic.wait_consensus(node) - - -@pytest.mark.p0 -def test_internal_node_zero_out_block_Y(client_consensus_obj_list_reset): - """ - 1、内置节点(无替换节点)零出块处罚一次、大于质押金额且恢复节点后重新加入候选人列表,验证人列表,共识验证人列表 - """ - first_client = client_consensus_obj_list_reset[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = client_consensus_obj_list_reset[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - time.sleep(5) - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(first_client, node, 'Released') - verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount1, 'Released') - first_client.node.start() - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result is False, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result is False, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node not kicked out ValidatorList" - node_released1 = second_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Released'] - economic.wait_consensus(second_client.node) - print(first_client.node.ppos.getValidatorList()) - node_released2 = second_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Released'] - assert node_released1 == node_released2 - economic.wait_consensus(second_client.node) - print(first_client.node.ppos.getValidatorList()) - node_released3 = second_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Released'] - assert node_released2 == node_released3 - second_client.economic.wait_settlement(second_client.node) - print(first_client.node.ppos.getValidatorList()) - first_client.economic.wait_consensus(first_client.node) - print(first_client.node.ppos.getValidatorList()) - node_status = first_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Status'] - assert node_status == 0 - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result, "error: Node kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result, "error: Node kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result, "error: Node kicked out ValidatorList" - - -def test_internal_node_zero_out_block_N(new_genesis_env, clients_consensus): - """ - 3、内置节点(无替换节点)零出块处罚一次,小于质押金额且恢复节点后被剔除候选人列表,验证人列表,共识验证人列表 - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 50 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - first_client = clients_consensus[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = clients_consensus[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - time.sleep(5) - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(first_client, node, 'Released') - verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount1, 'Released') - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result is False, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result is False, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node not kicked out ValidatorList" - log.info("candidate info".format(second_client.node.ppos.getCandidateInfo(first_client.node.node_id))) - first_client.node.start() - second_client.economic.wait_settlement(second_client.node) - first_client.economic.wait_consensus(first_client.node) - node_status = first_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Status'] - assert node_status == 7 - assert result is False, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result is False, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node not kicked out ValidatorList" - second_client.economic.wait_settlement(second_client.node, 1) - result = second_client.node.ppos.getCandidateInfo(first_client.node.node_id) - assert_code(result, 301204) - - -def test_internal_node_more_zero_out_block_Y(new_genesis_env, clients_consensus): - """ - 2、内置节点(无替换节点)零出块处罚多次,大于质押金额且恢复节点后重新加入候选人列表,验证人列表,共识验证人列表 - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 1 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - first_client = clients_consensus[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = clients_consensus[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - time.sleep(5) - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(first_client, node, 'Released') - verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount1, 'Released') - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result is False, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result is False, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node not kicked out ValidatorList" - log.info("candidate info".format(second_client.node.ppos.getCandidateInfo(first_client.node.node_id))) - second_client.economic.wait_settlement(second_client.node) - second_client.economic.wait_consensus(second_client.node) - node_status = second_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Status'] - assert node_status == 0 - # view Consensus Amount of pledge - candidate_info = second_client.ppos.getCandidateInfo(first_client.node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - pledge_amount2 = candidate_info['Ret']['Released'] - # view block_reward - log.info("Current block height: {}".format(second_client.node.eth.blockNumber)) - block_reward, staking_reward = second_client.economic.get_current_year_reward(second_client.node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # Get governable parameters - slash_blocks = get_governable_parameter_value(second_client, 'slashBlocksReward') - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result, "error: Node kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result, "error: Node kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result, "error: Node kicked out ValidatorList" - second_client.economic.wait_consensus(second_client.node, 3) - log.info("Current block height: {}".format(second_client.node.eth.blockNumber)) - candidate_info = second_client.ppos.getCandidateInfo(first_client.node.node_id) - log.info("stopped pledge node information: {}".format(candidate_info)) - amount_after_punishment = candidate_info['Ret']['Released'] - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("Low block rate penalty amount: {}".format(punishment_amonut)) - assert amount_after_punishment == pledge_amount2 - punishment_amonut, "ErrMsg:The pledge node is penalized after the amount {} is incorrect".format( - amount_after_punishment) - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result is False, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result is False, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node not kicked out ValidatorList" - log.info("candidate info".format(second_client.node.ppos.getCandidateInfo(first_client.node.node_id))) - second_client.economic.wait_settlement(second_client.node) - second_client.economic.wait_consensus(second_client.node) - node_status = second_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Status'] - assert node_status == 0 - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result, "error: Node not kicked out ValidatorList" - - -def test_internal_node_more_zero_out_block_N(new_genesis_env, client_consensus_obj_list_reset): - """ - 4、内置节点(无替换节点)零出块处罚多次,小于质押金额且恢复节点后被剔除候选人列表,验证人列表,共识验证人列表 - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 30 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - first_client = client_consensus_obj_list_reset[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = client_consensus_obj_list_reset[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - # economic = first_client.economic - node = first_client.node - time.sleep(5) - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(first_client, node, 'Released') - verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount1, 'Released') - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result is False, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result is False, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node not kicked out ValidatorList" - log.info("candidate info:{}".format(second_client.node.ppos.getCandidateInfo(first_client.node.node_id))) - second_client.economic.wait_settlement(second_client.node) - node_status = second_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Status'] - assert node_status == 0 - print(second_client.node.ppos.getCandidateInfo(first_client.node.node_id)) - second_client.economic.wait_consensus(second_client.node) - print(second_client.node.ppos.getCandidateInfo(first_client.node.node_id)) - node_status = second_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Status'] - assert node_status == 0 - # view Consensus Amount of pledge - candidate_info = second_client.ppos.getCandidateInfo(first_client.node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - pledge_amount2 = candidate_info['Ret']['Released'] - # view block_reward - log.info("Current block height: {}".format(second_client.node.eth.blockNumber)) - block_reward, staking_reward = second_client.economic.get_current_year_reward(second_client.node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # Get governable parameters - slash_blocks = get_governable_parameter_value(second_client, 'slashBlocksReward') - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result, "error: Node kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result, "error: Node kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result, "error: Node kicked out ValidatorList" - second_client.economic.wait_consensus(second_client.node, 3) - log.info("Current block height: {}".format(second_client.node.eth.blockNumber)) - verifier_list = second_client.ppos.getVerifierList() - log.info("Current billing cycle certifier list: {}".format(verifier_list)) - candidate_info = second_client.ppos.getCandidateInfo(first_client.node.node_id) - log.info("stopped pledge node information: {}".format(candidate_info)) - amount_after_punishment = candidate_info['Ret']['Released'] - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("Low block rate penalty amount: {}".format(punishment_amonut)) - assert amount_after_punishment == pledge_amount2 - punishment_amonut, "ErrMsg:The pledge node is penalized after the amount {} is incorrect".format( - amount_after_punishment) - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result is False, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result is False, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node not kicked out ValidatorList" - log.info("candidate info {}".format(second_client.node.ppos.getCandidateInfo(first_client.node.node_id))) - node_status = second_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Status'] - assert node_status == 7 - second_client.economic.wait_settlement(second_client.node) - second_client.economic.wait_consensus(second_client.node) - node_status = second_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Status'] - assert node_status == 7 - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result is False, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result is False, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node not kicked out ValidatorList" - second_client.economic.wait_settlement(second_client.node, 1) - result = second_client.node.ppos.getCandidateInfo(first_client.node.node_id) - assert_code(result, 301204) - - -def test_zero_out_block_Y(client_new_node_obj_list_reset): - """ - 5、非内置节点(有替换节点)零出块处罚一次、大于质押金额且恢复节点后重新加入候选人列表,验证人列表,共识验证人列表 - """ - first_client = client_new_node_obj_list_reset[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = client_new_node_obj_list_reset[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - log.info("Start creating a pledge account address") - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - log.info("Start applying for a pledge node") - result = first_client.staking.create_staking(0, address, address, amount=von_amount(economic.create_staking_limit, 1.5)) - assert_code(result, 0) - log.info("Pledge completed, waiting for the end of the current billing cycle") - economic.wait_settlement(node) - log.info("Get the current pledge node amount and the low block rate penalty block number and the block reward") - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(first_client, node, 'Released') - log.info("deposit amount: {} block reward: {} block rate penalty block: {}".format(pledge_amount1, block_reward, slash_blocks)) - log.info("Current block height: {}".format(first_client.node.eth.blockNumber)) - log.info("Start verification penalty amount") - verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount1, 'Released') - log.info("Check amount completed") - result = second_client.ppos.getCandidateInfo(first_client.node.node_id) - log.info("Candidate Info:{}".format(result)) - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result is False, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result is False, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node not kicked out ValidatorList" - first_client.node.start() - second_client.economic.wait_settlement(second_client.node) - log.info("Current settlement cycle block height: {}".format(second_client.node.eth.blockNumber)) - node_status = second_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Status'] - assert node_status == 0 - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result, "error: Node kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result, "error: Node kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node kicked out ValidatorList" - first_client.economic.wait_consensus(first_client.node) - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node kicked out ValidatorList" - - -def test_more_zero_out_block_N(new_genesis_env, clients_noconsensus): - """ - 6.非内置节点(有替换节点)零出块处罚多次,大于质押金额且恢复节点后重新加入候选人列表,验证人列表,共识验证人列表 - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 1 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - first_client = clients_noconsensus[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = clients_noconsensus[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - log.info("Start creating a pledge account address") - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - log.info("Start applying for a pledge node") - result = first_client.staking.create_staking(0, address, address, amount=von_amount(economic.create_staking_limit, 1.5)) - assert_code(result, 0) - log.info("Pledge completed, waiting for the end of the current billing cycle") - economic.wait_settlement(node) - log.info("Get the current pledge node amount and the low block rate penalty block number and the block reward") - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(first_client, node, 'Released') - log.info("deposit amount: {} block reward: {} block rate penalty block: {}".format(pledge_amount1, block_reward, slash_blocks)) - log.info("Current block height: {}".format(first_client.node.eth.blockNumber)) - log.info("Start verification penalty amount") - verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount1, 'Released') - log.info("Check amount completed") - result = second_client.ppos.getCandidateInfo(first_client.node.node_id) - log.info("Candidate Info:{}".format(result)) - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result is False, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result is False, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node not kicked out ValidatorList" - second_client.economic.wait_settlement(second_client.node) - log.info("Current settlement cycle block height: {}".format(second_client.node.eth.blockNumber)) - node_status = second_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Status'] - assert node_status == 0 - # view Consensus Amount of pledge - candidate_info = second_client.ppos.getCandidateInfo(first_client.node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - pledge_amount2 = candidate_info['Ret']['Released'] - # view block_reward - log.info("Current block height: {}".format(second_client.node.eth.blockNumber)) - block_reward, staking_reward = second_client.economic.get_current_year_reward(second_client.node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # Get governable parameters - slash_blocks = get_governable_parameter_value(second_client, 'slashBlocksReward') - second_client.economic.wait_consensus(second_client.node, 3) - log.info("Current block height: {}".format(second_client.node.eth.blockNumber)) - candidate_info = second_client.ppos.getCandidateInfo(first_client.node.node_id) - log.info("stopped pledge node information: {}".format(candidate_info)) - amount_after_punishment = candidate_info['Ret']['Released'] - assert candidate_info['Ret']['Status'] == 3 - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("Low block rate penalty amount: {}".format(punishment_amonut)) - assert amount_after_punishment == pledge_amount2 - punishment_amonut, "ErrMsg:The pledge node is penalized after the amount {} is incorrect".format( - amount_after_punishment) - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result is False, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result is False, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node not kicked out ValidatorList" - log.info("candidate info".format(second_client.node.ppos.getCandidateInfo(first_client.node.node_id))) - second_client.economic.wait_settlement(second_client.node) - node_status = second_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Status'] - assert node_status == 0 - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result, "error: Node not kicked out VerifierList" - - -def test_zero_out_block_N(new_genesis_env, clients_noconsensus): - """ - 7、非内置节点(有替换节点)零出块处罚一次,小于质押金额且恢复节点后被剔除候选人列表,验证人列表,共识验证人列表 - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 30 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.2.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - first_client = clients_noconsensus[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = clients_noconsensus[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - log.info("Start creating a pledge account address") - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - log.info("Start applying for a pledge node") - result = first_client.staking.create_staking(0, address, address, amount=von_amount(economic.create_staking_limit, 1.5)) - assert_code(result, 0) - log.info("Pledge completed, waiting for the end of the current billing cycle") - economic.wait_settlement(node) - log.info("Get the current pledge node amount and the low block rate penalty block number and the block reward") - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(first_client, node, 'Released') - log.info("deposit amount: {} block reward: {} block rate penalty block: {}".format(pledge_amount1, block_reward, slash_blocks)) - log.info("Current block height: {}".format(first_client.node.eth.blockNumber)) - log.info("Start verification penalty amount") - verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount1, 'Released') - log.info("Check amount completed") - result = second_client.ppos.getCandidateInfo(first_client.node.node_id) - log.info("Candidate Info:{}".format(result)) - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result is False, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result is False, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node not kicked out ValidatorList" - first_client.node.start() - second_client.economic.wait_settlement(second_client.node) - log.info("Current settlement cycle block height: {}".format(second_client.node.eth.blockNumber)) - node_status = second_client.node.ppos.getCandidateInfo(first_client.node.node_id)['Ret']['Status'] - assert node_status == 7 - first_client.economic.wait_settlement(first_client.node, 1) - result = second_client.node.ppos.getCandidateInfo(first_client.node.node_id) - assert_code(result, 301204) - - - - - -@pytest.mark.P0 -@pytest.mark.compatibility -def test_VP_GPFV_003(client_new_node_obj_list_reset): - """ - 低出快率最高处罚标准 - :param client_new_node_obj_list_reset: - :return: - """ - first_client = client_new_node_obj_list_reset[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = client_new_node_obj_list_reset[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - log.info("Start creating a pledge account address") - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - log.info("Start applying for a pledge node") - result = first_client.staking.create_staking(0, address, address) - assert_code(result, 0) - log.info("Pledge completed, waiting for the end of the current billing cycle") - economic.wait_settlement(node) - log.info("Get the current pledge node amount and the low block rate penalty block number and the block reward") - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(first_client, node, 'Released') - log.info( - "Current node deposit amount: {} Current year block reward: {} Current low block rate penalty block: {}".format( - pledge_amount1, block_reward, slash_blocks)) - log.info("Current block height: {}".format(first_client.node.eth.blockNumber)) - log.info("Start verification penalty amount") - verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount1, 'Released') - log.info("Check amount completed") - result = second_client.ppos.getCandidateInfo(first_client.node.node_id) - log.info("Candidate Info:{}".format(result)) - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getCandidateList) - assert result is False, "error: Node not kicked out CandidateList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getVerifierList) - assert result is False, "error: Node not kicked out VerifierList" - result = check_node_in_list(first_client.node.node_id, second_client.ppos.getValidatorList) - assert result is False, "error: Node not kicked out ValidatorList" - - - -@pytest.mark.P0 -def test_VP_GPFV_004(client_new_node_obj_list_reset): - """ - 锁仓质押被惩罚最高处罚标准 - :param client_new_node_obj_list_reset: - :return: - """ - first_client = client_new_node_obj_list_reset[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = client_new_node_obj_list_reset[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create Restricting Plan - amount = von_amount(economic.create_staking_limit, 1) - plan = [{'Epoch': 2, 'Amount': amount}] - result = first_client.restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 0) - # create staking - result = first_client.staking.create_staking(1, address, address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - # get pledge amount1 and block reward - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(first_client, node, 'RestrictingPlan') - log.info("Current block height: {}".format(first_client.node.eth.blockNumber)) - verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount1, - 'RestrictingPlan') - log.info("Check amount completed") - economic.wait_settlement(second_client.node, 1) - - - -@pytest.mark.P2 -def test_VP_GPFV_005(client_new_node_obj_list_reset): - """ - 锁仓增持/委托后被惩罚 - :param client_new_node_obj_list_reset: - :return: - """ - first_client = client_new_node_obj_list_reset[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = client_new_node_obj_list_reset[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - # create account - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create account - entrust_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 1)) - # create Restricting Plan - amount1 = von_amount(economic.create_staking_limit, 2) - plan = [{'Epoch': 1, 'Amount': amount1}] - result = first_client.restricting.createRestrictingPlan(pledge_address, plan, pledge_address) - assert_code(result, 0) - # create Restricting Plan - amount2 = von_amount(economic.delegate_limit, 100) - plan = [{'Epoch': 1, 'Amount': amount2}] - result = first_client.restricting.createRestrictingPlan(entrust_address, plan, entrust_address) - assert_code(result, 0) - # create staking - result = first_client.staking.create_staking(1, pledge_address, pledge_address) - assert_code(result, 0) - # increase staking - result = first_client.staking.increase_staking(1, pledge_address) - assert_code(result, 0) - # Additional pledge - result = first_client.delegate.delegate(1, entrust_address, amount=von_amount(economic.delegate_limit, 100)) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - # get pledge amount1 and block reward - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(first_client, node, 'RestrictingPlan') - log.info("Current block height: {}".format(first_client.node.eth.blockNumber)) - verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount1, - 'RestrictingPlan') - log.info("Check amount completed") - - -@pytest.mark.P2 -def test_VP_GPFV_006(client_new_node_obj_list_reset): - """ - 自由金额增持/委托后被惩罚 - :param client_new_node_obj_list_reset: - :return: - """ - first_client = client_new_node_obj_list_reset[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = client_new_node_obj_list_reset[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create account - address2, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 1)) - # create staking - result = first_client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - # increase staking - result = first_client.staking.increase_staking(0, address1) - assert_code(result, 0) - # Additional pledge - result = first_client.delegate.delegate(0, address2, amount=von_amount(economic.delegate_limit, 100)) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - # get pledge amount1 and block reward - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(first_client, node, 'Released') - log.info("Current block height: {}".format(first_client.node.eth.blockNumber)) - verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount1, 'Released') - log.info("Check amount completed") - - -@pytest.mark.P2 -def test_VP_GPFV_007(client_new_node_obj_list_reset): - """ - 在被惩罚前退出质押 - :param client_new_node_obj_list_reset: - :return: - """ - first_client = client_new_node_obj_list_reset[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = client_new_node_obj_list_reset[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create staking - result = first_client.staking.create_staking(0, address, address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - economic.wait_consensus(node) - # get pledge amount1 and block reward - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(first_client, node, 'Released') - log.info("Current block height: {}".format(first_client.node.eth.blockNumber)) - result = first_client.staking.withdrew_staking(address) - assert_code(result, 0) - time.sleep(3) - verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount1, 'Released') - log.info("Check amount completed") - - -@pytest.mark.P2 -def test_VP_GPFV_008(client_new_node_obj_list_reset): - """ - 被处罚前进行增持 - :param client_new_node_obj_list_reset: - :return: - """ - first_client = client_new_node_obj_list_reset[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = client_new_node_obj_list_reset[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create staking - result = first_client.staking.create_staking(0, address, address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - # get pledge amount1 and block reward - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(first_client, node, 'Released') - log.info("Current block height: {}".format(first_client.node.eth.blockNumber)) - verify_low_block_rate_penalty(first_client, second_client, block_reward, slash_blocks, pledge_amount1, 'Released') - log.info("Check amount completed") - - -@pytest.mark.P2 -def test_VP_GPFV_009(client_new_node_obj_list_reset): - """ - 节点被处罚后马上重新质押(高惩罚) - :param client_new_node_obj_list_reset: - :return: - """ - first_client = client_new_node_obj_list_reset[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = client_new_node_obj_list_reset[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - program_version = node.program_version - program_version_sign = node.program_version_sign - bls_pubkey = node.blspubkey - bls_proof = node.schnorr_NIZK_prove - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create staking - result = first_client.staking.create_staking(0, address, address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - log.info("Current block height: {}".format(first_client.node.eth.blockNumber)) - # stop node - node.stop() - # Waiting for a settlement round - second_client.economic.wait_consensus(second_client.node, 3) - log.info("Current block height: {}".format(second_client.node.eth.blockNumber)) - # create staking again - result = second_client.staking.create_staking(0, address, address, node_id=node.node_id, - program_version=program_version, - program_version_sign=program_version_sign, bls_pubkey=bls_pubkey, - bls_proof=bls_proof) - assert_code(result, 301101) - - -@pytest.mark.P2 -def test_VP_GPFV_010(client_new_node_obj_list_reset): - """ - 节点被处罚后马上重新增持质押(高惩罚) - :param client_new_node_obj_list_reset: - :return: - """ - client1 = client_new_node_obj_list_reset[0] - log.info("Current connection node1: {}".format(client1.node.node_mark)) - client2 = client_new_node_obj_list_reset[1] - log.info("Current connection node2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create staking - result = client1.staking.create_staking(0, address, address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - # stop node - client1.node.stop() - # Waiting for a settlement round - client2.economic.wait_consensus(client2.node, 3) - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # Additional pledge - result = client2.staking.increase_staking(0, address, node_id=node.node_id) - assert_code(result, 301103) - - -@pytest.mark.P2 -def test_VP_GPFV_011(client_new_node_obj_list_reset): - """ - 先低出块率再双签 - :param client_new_node_obj_list_reset: - :return: - """ - client1 = client_new_node_obj_list_reset[0] - log.info("Current connection node1: {}".format(client1.node.node_mark)) - client2 = client_new_node_obj_list_reset[1] - log.info("Current connection node2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create account - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = client1.staking.create_staking(0, address, address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - # get pledge amount1 and block reward - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(client1, node, 'Released') - for i in range(4): - result = check_node_in_list(node.node_id, client2.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # stop node - client1.node.stop() - report_block = client2.node.eth.blockNumber - log.info("Current block height: {}".format(report_block)) - # view Parameter value before treatment - penalty_ratio = get_governable_parameter_value(client2, 'slashFractionDuplicateSign') - proportion_ratio = get_governable_parameter_value(client2, 'duplicateSignReportReward') - # view Amount of penalty - proportion_reward, incentive_pool_reward = economic.get_report_reward(pledge_amount1, int(penalty_ratio), - int(proportion_ratio)) - # Obtain evidence of violation - report_information = mock_duplicate_sign(1, client1.node.nodekey, client1.node.blsprikey, report_block) - log.info("Report information: {}".format(report_information)) - result = client2.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - # Query pledge node information: - candidate_info = client2.ppos.getCandidateInfo(node.node_id) - log.info("pledge node information: {}".format(candidate_info)) - info = candidate_info['Ret'] - # block_penalty = Decimal(str(block_reward)) * Decimal(str(slash_blocks)) - duplicateSign_penalty = proportion_reward + incentive_pool_reward - # total_punish = block_penalty + duplicateSign_penalty - assert info['Released'] == pledge_amount1 - duplicateSign_penalty, "ErrMsg:pledge node account {}".format( - info['Released']) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P2 -def test_VP_GPFV_012(client_new_node_obj_list_reset): - """ - 先双签再低出块率 - :param client_new_node_obj_list_reset: - :return: - """ - first_client = client_new_node_obj_list_reset[0] - log.info("Current connection node1: {}".format(first_client.node.node_mark)) - second_client = client_new_node_obj_list_reset[1] - log.info("Current connection node2: {}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - # create account1 - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create account2 - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = first_client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - for i in range(4): - result = check_node_in_list(node.node_id, first_client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # Query current block height - report_block = first_client.node.eth.blockNumber - log.info("Current block height: {}".format(report_block)) - # Obtain penalty proportion and income - pledge_amount1, penalty_ratio, proportion_ratio = penalty_proportion_and_income(first_client) - # view Amount of penalty - proportion_reward, incentive_pool_reward = economic.get_report_reward(pledge_amount1, penalty_ratio, - proportion_ratio) - # Obtain evidence of violation - report_information = mock_duplicate_sign(1, first_client.node.nodekey, first_client.node.blsprikey, - report_block) - log.info("Report information: {}".format(report_information)) - result = second_client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - # Waiting for a consensus round - second_client.economic.wait_consensus(second_client.node) - # stop node - first_client.node.stop() - # Waiting for 2 consensus round - second_client.economic.wait_consensus(second_client.node, 3) - # view block_reward - block_reward, staking_reward = second_client.economic.get_current_year_reward(second_client.node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # Query pledge node information: - candidate_info = second_client.ppos.getCandidateInfo(node.node_id) - log.info("pledge node information: {}".format(candidate_info)) - info = candidate_info['Ret'] - duplicateSign_penalty = proportion_reward + incentive_pool_reward - assert info['Released'] == pledge_amount1 - duplicateSign_penalty, "ErrMsg:pledge node account {}".format( - info['Released']) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P2 -def test_VP_GPFV_013(new_genesis_env, clients_consensus): - """ - 验证人被处罚后质押金=>创建验证人的最小质押门槛金额K - :param new_genesis_env: - :param new_genesis_env: - :return: - """ - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 5 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - client1 = clients_consensus[0] - log.info("Current connection node1: {}".format(client1.node.node_mark)) - client2 = clients_consensus[1] - log.info("Current connection node2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # Wait for the consensus round to end - economic.wait_consensus(node, 1) - # get pledge amount1 and block reward - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(client1, node, 'Released') - log.info("Current block height: {}".format(client1.node.eth.blockNumber)) - # stop node - client1.node.stop() - # Waiting for a 3 consensus round - client2.economic.wait_consensus(client2.node) - print(client2.node.debug.getWaitSlashingNodeList()) - client2.economic.wait_consensus(client2.node) - print(client2.node.debug.getWaitSlashingNodeList()) - client2.economic.wait_consensus(client2.node) - print(client2.node.debug.getWaitSlashingNodeList()) - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # view verifier list - verifier_list = client2.ppos.getVerifierList() - log.info("verifier_list: {}".format(verifier_list)) - candidate_info = client2.ppos.getCandidateInfo(client1.node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - pledge_amount2 = candidate_info['Ret']['Released'] - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("punishment_amonut: {}".format(punishment_amonut)) - assert pledge_amount2 == pledge_amount1 - punishment_amonut, "ErrMsg:Consensus Amount of pledge {}".format( - pledge_amount2) - - -@pytest.mark.P2 -def test_VP_GPFV_014(new_genesis_env, clients_noconsensus): - """ - 低出块率被最高处罚金低于质押金额(自由金额质押) - :param new_genesis_env: - :param new_genesis_env: - :return: - """ - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 5 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - client1 = clients_noconsensus[0] - log.info("Current connection node1: {}".format(client1.node.node_mark)) - client2 = clients_noconsensus[1] - log.info("Current connection node2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create Restricting Plan - amount = economic.create_staking_limit - plan = [{'Epoch': 1, 'Amount': amount}] - result = client1.restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 0) - # create staking - result = client1.staking.create_staking(0, address, address) - assert_code(result, 0) - # increase staking - increase_amount = von_amount(economic.create_staking_limit, 0.5) - result = client1.staking.increase_staking(1, address, amount=increase_amount) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - # get pledge amount1 and block reward - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(client1, node, 'Released') - log.info("Current block height: {}".format(client1.node.eth.blockNumber)) - # stop node - client1.node.stop() - # Waiting for a settlement round - client2.economic.wait_consensus(client2.node, 3) - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - result = client2.node.debug.getWaitSlashingNodeList() - log.info("Wait Slashing Node List:{}".format(result)) - # view verifier list - verifier_list = client2.ppos.getVerifierList() - log.info("verifier_list: {}".format(verifier_list)) - candidate_info = client2.ppos.getCandidateInfo(client1.node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - info = candidate_info['Ret'] - pledge_amount2 = info['Released'] - pledge_amount3 = info['RestrictingPlan'] - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("punishment_amonut: {}".format(punishment_amonut)) - assert (pledge_amount2 == pledge_amount1 - punishment_amonut * 2) or ( - pledge_amount2 == pledge_amount1 - punishment_amonut), "ErrMsg:Pledge Released {}".format( - pledge_amount2) - assert pledge_amount3 == increase_amount, "ErrMsg:Pledge RestrictingPlan {}".format(pledge_amount3) - - -# @pytest.mark.P2 -# def test_VP_GPFV_015(new_genesis_env, clients_noconsensus): -# """ -# 低出块率被最高处罚金等于于自由处罚金(自由金额质押) -# :param new_genesis_env: -# :return: -# """ -# # Change configuration parameters -# genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) -# genesis.economicModel.slashing.slashBlocksReward = 13 -# new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" -# genesis.to_file(new_file) -# new_genesis_env.deploy_all(new_file) -# -# client1 = clients_noconsensus[0] -# log.info("Current connection node1: {}".format(client1.node.node_mark)) -# client2 = clients_noconsensus[1] -# log.info("Current connection node2: {}".format(client2.node.node_mark)) -# economic = client1.economic -# node = client1.node -# # create account -# address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 4)) -# # create Restricting Plan -# amount = economic.create_staking_limit -# plan = [{'Epoch': 1, 'Amount': amount}] -# result = client1.restricting.createRestrictingPlan(address, plan, address) -# assert_code(result, 0) -# # view block_reward -# block_reward, staking_reward = client1.economic.get_current_year_reward(node) -# log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) -# # Get governable parameters -# slash_blocks = get_governable_parameter_value(client1, 'slashBlocksReward') -# # create staking -# staking_amount = int(Decimal(str(block_reward)) * Decimal(slash_blocks)) -# result = client1.staking.create_staking(0, address, address, amount=staking_amount * 2) -# assert_code(result, 0) -# # increase staking -# increase_amount = von_amount(economic.create_staking_limit, 0.5) -# result = client1.staking.increase_staking(1, address, amount=increase_amount) -# assert_code(result, 0) -# # Wait for the settlement round to end -# economic.wait_settlement(node) -# # view Consensus Amount of pledge -# candidate_info = client1.ppos.getCandidateInfo(node.node_id) -# log.info("Pledge node information: {}".format(candidate_info)) -# pledge_amount1 = candidate_info['Ret']['Released'] -# log.info("Current block height: {}".format(client1.node.eth.blockNumber)) -# # stop node -# client1.node.stop() -# # Waiting for a settlement round -# client2.economic.wait_consensus(client2.node, 3) -# log.info("Current block height: {}".format(client2.node.eth.blockNumber)) -# # view verifier list -# verifier_list = client2.ppos.getVerifierList() -# log.info("verifier_list: {}".format(verifier_list)) -# candidate_info = client2.ppos.getCandidateInfo(client1.node.node_id) -# log.info("Pledge node information: {}".format(candidate_info)) -# info = candidate_info['Ret'] -# pledge_amount2 = info['Released'] -# pledge_amount3 = info['RestrictingPlan'] -# punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) -# assert pledge_amount2 == pledge_amount1 - punishment_amonut * 2, "ErrMsg:Pledge Released {}".format( -# pledge_amount2) -# assert pledge_amount3 == increase_amount, "ErrMsg:Pledge RestrictingPlan {}".format(pledge_amount3) - -@pytest.mark.P2 -def test_VP_GPFV_016(new_genesis_env, clients_noconsensus): - """ - 低出块率被最高处罚金大于自由处罚金(自由金额质押) - :param new_genesis_env: - :return: - """ - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 120 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.2.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - client1 = clients_noconsensus[0] - log.info("Current connection node1: {}".format(client1.node.node_mark)) - client2 = clients_noconsensus[1] - log.info("Current connection node2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 4)) - # create Restricting Plan - amount = economic.create_staking_limit - plan = [{'Epoch': 1, 'Amount': amount}] - result = client1.restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 0) - # Get governable parameters - slash_blocks = get_governable_parameter_value(client1, 'slashBlocksReward') - # create staking - staking_amount = von_amount(economic.create_staking_limit, 2) - result = client1.staking.create_staking(0, address, address, amount=staking_amount) - assert_code(result, 0) - # increase staking - increase_amount = von_amount(economic.create_staking_limit, 0.5) - result = client1.staking.increase_staking(1, address, amount=increase_amount) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - # view Consensus Amount of pledge - candidate_info = client1.ppos.getCandidateInfo(node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - # view block_reward - block_reward, staking_reward = client1.economic.get_current_year_reward(node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - pledge_amount1 = candidate_info['Ret']['Released'] - log.info("Current block height: {}".format(client1.node.eth.blockNumber)) - # stop node - client1.node.stop() - # Waiting for a settlement round - client2.economic.wait_consensus(client2.node, 4) - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # view verifier list - verifier_list = client2.ppos.getVerifierList() - log.info("verifier_list: {}".format(verifier_list)) - candidate_info = client2.ppos.getCandidateInfo(client1.node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - info = candidate_info['Ret'] - pledge_amount2 = info['Released'] - pledge_amount3 = info['RestrictingPlan'] - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("punishment_amonut: {}".format(punishment_amonut)) - assert pledge_amount2 == 0, "ErrMsg:Pledge Released {}".format(pledge_amount2) - assert pledge_amount3 == increase_amount - (punishment_amonut - pledge_amount1), "ErrMsg:Pledge RestrictingPlan {}".format(pledge_amount3) - - -@pytest.mark.P2 -def test_VP_GPFV_017(new_genesis_env, clients_noconsensus): - """ - 低出块率被最高处罚金低于质押金额(锁仓金额质押) - :param new_genesis_env: - :return: - """ - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 60 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - client1 = clients_noconsensus[0] - log.info("Current connection node1: {}".format(client1.node.node_mark)) - client2 = clients_noconsensus[1] - log.info("Current connection node2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create Restricting Plan - amount = economic.create_staking_limit - plan = [{'Epoch': 1, 'Amount': amount}] - result = client1.restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 0) - # create staking - result = client1.staking.create_staking(1, address, address) - assert_code(result, 0) - # increase staking - increase_amount = von_amount(economic.create_staking_limit, 0.5) - result = client1.staking.increase_staking(0, address, amount=increase_amount) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - # get pledge amount1 and block reward - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(client1, node, 'Released') - log.info("Current block height: {}".format(client1.node.eth.blockNumber)) - # stop node - client1.node.stop() - # Waiting for a settlement round - client2.economic.wait_consensus(client2.node, 3) - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # view verifier list - verifier_list = client2.ppos.getVerifierList() - log.info("verifier_list: {}".format(verifier_list)) - candidate_info = client2.ppos.getCandidateInfo(client1.node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - info = candidate_info['Ret'] - pledge_amount2 = info['Released'] - pledge_amount3 = info['RestrictingPlan'] - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("punishment_amonut: {}".format(punishment_amonut)) - assert pledge_amount2 == 0, "ErrMsg:Pledge Released {}".format(pledge_amount2) - assert pledge_amount3 == economic.create_staking_limit - (punishment_amonut - increase_amount), "ErrMsg:Pledge RestrictingPlan {}".format(pledge_amount3) - - -# -# @pytest.mark.P2 -# def test_VP_GPFV_018(new_genesis_env, clients_noconsensus): -# """ -# 低出块率被最高处罚金等于质押金额(锁仓金额质押) -# :param new_genesis_env: -# :return: -# """ -# # Change configuration parameters -# genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) -# genesis.economicModel.slashing.slashBlocksReward = 13 -# new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" -# genesis.to_file(new_file) -# new_genesis_env.deploy_all(new_file) -# -# client1 = clients_noconsensus[0] -# log.info("Current connection node1: {}".format(client1.node.node_mark)) -# client2 = clients_noconsensus[1] -# log.info("Current connection node2: {}".format(client2.node.node_mark)) -# economic = client1.economic -# node = client1.node -# # create account -# address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 4)) -# # create Restricting Plan -# amount = von_amount(economic.create_staking_limit, 3) -# plan = [{'Epoch': 1, 'Amount': amount}] -# result = client1.restricting.createRestrictingPlan(address, plan, address) -# assert_code(result, 0) -# # view block_reward -# block_reward, staking_reward = client1.economic.get_current_year_reward(node) -# log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) -# # Get governable parameters -# slash_blocks = get_governable_parameter_value(client1, 'slashBlocksReward') -# # create staking -# staking_amount = von_amount(block_reward, 26) -# log.info("staking_amount: {}".format(staking_amount)) -# result = client1.staking.create_staking(1, address, address, amount=staking_amount) -# assert_code(result, 0) -# # increase staking -# increase_amount = von_amount(economic.create_staking_limit, 0.5) -# result = client1.staking.increase_staking(0, address, amount=increase_amount) -# assert_code(result, 0) -# # Wait for the settlement round to end -# economic.wait_settlement(node) -# # view Consensus Amount of pledge -# candidate_info = client1.ppos.getCandidateInfo(node.node_id) -# log.info("Pledge node information: {}".format(candidate_info)) -# pledge_amount1 = candidate_info['Ret']['Released'] -# log.info("Current block height: {}".format(client1.node.eth.blockNumber)) -# # stop node -# client1.node.stop() -# # Waiting for a settlement round -# client2.economic.wait_consensus(client2.node, 3) -# log.info("Current block height: {}".format(client2.node.eth.blockNumber)) -# # view verifier list -# verifier_list = client2.ppos.getVerifierList() -# log.info("verifier_list: {}".format(verifier_list)) -# candidate_info = client2.ppos.getCandidateInfo(client1.node.node_id) -# log.info("Pledge node information: {}".format(candidate_info)) -# info = candidate_info['Ret'] -# pledge_amount2 = info['Released'] -# pledge_amount3 = info['RestrictingPlan'] -# punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) -# log.info("punishment_amonut: {}".format(punishment_amonut)) -# assert pledge_amount2 == 0, "ErrMsg:Pledge Released {}".format(pledge_amount2) -# assert (pledge_amount3 == staking_amount - (von_amount(punishment_amonut, 2) - increase_amount)) or ( -# pledge_amount3 == staking_amount - ( -# punishment_amonut - increase_amount)), "ErrMsg:Pledge RestrictingPlan {}".format(pledge_amount3) - - -@pytest.mark.P2 -def test_VP_GPFV_019(new_genesis_env, clients_noconsensus): - """ - 低出块率被最高处罚金大于质押金额(锁仓金额质押) - :param new_genesis_env: - :param clients_noconsensus: - :return: - """ - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 30 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - client1 = clients_noconsensus[0] - log.info("Current connection node1: {}".format(client1.node.node_mark)) - client2 = clients_noconsensus[1] - log.info("Current connection node2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 4)) - # create Restricting Plan - amount = von_amount(economic.create_staking_limit, 2) - plan = [{'Epoch': 1, 'Amount': amount}] - result = client1.restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 0) - # Get governable parameters - slash_blocks = get_governable_parameter_value(client1, 'slashBlocksReward') - # create staking - result = client1.staking.create_staking(1, address, address, amount=amount) - assert_code(result, 0) - # increase staking - increase_amount = von_amount(economic.create_staking_limit, 0.5) - result = client1.staking.increase_staking(0, address, amount=increase_amount) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - # view Consensus Amount of pledge - candidate_info = client1.ppos.getCandidateInfo(node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - pledge_amount1 = candidate_info['Ret']['Released'] - log.info("Current block height: {}".format(client1.node.eth.blockNumber)) - # view block_reward - block_reward, staking_reward = client1.economic.get_current_year_reward(node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # stop node - client1.node.stop() - # Waiting for a settlement round - client2.economic.wait_consensus(client2.node, 3) - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # view verifier list - verifier_list = client2.ppos.getVerifierList() - log.info("verifier_list: {}".format(verifier_list)) - candidate_info = client2.ppos.getCandidateInfo(client1.node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - info = candidate_info['Ret'] - pledge_amount2 = info['Released'] - pledge_amount3 = info['RestrictingPlan'] - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("punishment_amonut: {}".format(punishment_amonut)) - assert pledge_amount2 == 0, "ErrMsg:Pledge Released {}".format(pledge_amount2) - assert pledge_amount3 == amount - (punishment_amonut - pledge_amount1), "ErrMsg:Pledge RestrictingPlan {}".format(pledge_amount3) - - -@pytest.mark.P2 -def test_VP_GPFV_020(new_genesis_env, clients_noconsensus): - """ - 移出PlatON验证人与候选人名单,(扣除以后剩余自有质押金),未申请退回质押金 - :param clients_noconsensus: - :return: - """ - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 5 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - client1 = clients_noconsensus[0] - log.info("Current connection node1: {}".format(client1.node.node_mark)) - client2 = clients_noconsensus[1] - log.info("Current connection node2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - address1, _ = economic.account.generate_account(node.web3, 0) - # create staking - result = client1.staking.create_staking(0, address1, address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - # get pledge amount1 and block reward - pledge_amount1, block_reward, slash_blocks = get_out_block_penalty_parameters(client1, node, 'Released') - log.info("Current block height: {}".format(client1.node.eth.blockNumber)) - # stop node - client1.node.stop() - # Waiting for a settlement round - client2.economic.wait_consensus(client2.node, 4) - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # view verifier list - verifier_list = client2.ppos.getVerifierList() - log.info("verifier_list: {}".format(verifier_list)) - candidate_info = client2.ppos.getCandidateInfo(client1.node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("punishment_amonut: {}".format(punishment_amonut)) - # Query pledge account balance - balance1 = client2.node.eth.getBalance(address) - log.info("pledge account balance: {}".format(balance1)) - # Wait for the 2 settlement round to end - economic.wait_settlement(client2.node, 2) - # Query pledge account balance - balance2 = client2.node.eth.getBalance(address) - log.info("pledge account balance: {}".format(balance2)) - assert balance2 == balance1 + (pledge_amount1 - punishment_amonut), "ErrMsg:pledge account balance {}".format( - balance2) - - -@pytest.mark.P2 -def test_VP_GPFV_021(client_new_node_obj_list_reset): - """ - 移出PlatON验证人与候选人名单,委托人可在处罚所在结算周期,申请赎回全部委托金 - :param client_new_node_obj_list_reset: - :return: - """ - client1 = client_new_node_obj_list_reset[0] - log.info("Current connection node1: {}".format(client1.node.node_mark)) - client2 = client_new_node_obj_list_reset[1] - log.info("Current connection node2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # create pledge address - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create report address - delegate_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = client1.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Additional pledge - result = client1.delegate.delegate(0, delegate_address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - # stop node - client1.node.stop() - # Waiting for a settlement round - client2.economic.wait_consensus(client2.node, 3) - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # view verifier list - verifier_list = client2.ppos.getVerifierList() - log.info("verifier_list: {}".format(verifier_list)) - candidate_info = client2.ppos.getCandidateInfo(client1.node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - time.sleep(3) - # Access to pledge information - candidate_info = client2.ppos.getCandidateInfo(node.node_id) - info = candidate_info['Ret'] - staking_blocknum = info['StakingBlockNum'] - # To view the entrusted account balance - delegate_balance = client2.node.eth.getBalance(delegate_address) - log.info("report address balance: {}".format(delegate_balance)) - # withdrew delegate - result = client2.delegate.withdrew_delegate(staking_blocknum, delegate_address, node_id=node.node_id) - assert_code(result, 0) - # To view the entrusted account balance - delegate_balance1 = client2.node.eth.getBalance(delegate_address) - log.info("report address balance: {}".format(delegate_balance1)) - assert delegate_balance + economic.delegate_limit - delegate_balance1 < client2.node.web3.toWei(1, - 'ether'), "ErrMsg:Ireport balance {}".format( - delegate_balance1) - - -def test_test_VP_GPFV_003_01(clients_consensus): - """ - 废弃 - """ - pass - # client = clients_consensus[0] - # client1 = clients_consensus[1] - # economic = client.economic - # node = client.node - # print('node', node.node_mark) - # log.info("balance: {}".format(node.eth.getBalance('lax12jn6835z96ez93flwezrwu4xpv8e4zatc4kfru'))) - # node.stop() - # economic.wait_settlement(client1.node, 3) - # result = client1.node.ppos.getCandidateInfo(node.node_id) - # print(result) - # log.info("balance: {}".format(client1.node.eth.getBalance('lax12jn6835z96ez93flwezrwu4xpv8e4zatc4kfru'))) diff --git a/cases/tests/ppos/test_governance_penalty_parameters.py b/cases/tests/ppos/test_governance_penalty_parameters.py deleted file mode 100644 index adb0232f41..0000000000 --- a/cases/tests/ppos/test_governance_penalty_parameters.py +++ /dev/null @@ -1,805 +0,0 @@ -import pytest -from dacite import from_dict -from common.key import mock_duplicate_sign -from common.log import log -from decimal import Decimal -from tests.conftest import (param_governance_verify, - param_governance_verify_before_endblock, - get_client_consensus, - staking_cfg - ) -from tests.lib import (EconomicConfig, - Genesis, check_node_in_list, - assert_code, get_governable_parameter_value, - wait_block_number, von_amount - ) - - -def pledge_punishment(clients): - """ - :return: - """ - first_index = 0 - second_index = 1 - first_client = clients[first_index] - second_client = clients[second_index] - log.info("Current block height: {}".format(first_client.node.eth.blockNumber)) - # stop node - first_client.node.stop() - # Waiting for a settlement round - second_client.economic.wait_consensus(second_client.node, 4) - log.info("Current block height: {}".format(second_client.node.eth.blockNumber)) - # view verifier list - verifier_list = second_client.ppos.getVerifierList() - log.info("verifier_list: {}".format(verifier_list)) - candidate_info = second_client.ppos.getCandidateInfo(first_client.node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - return candidate_info - - -def information_before_slash_blocks(client): - node = client.node - # view Consensus Amount of pledge - first_candidate_info = client.ppos.getCandidateInfo(node.node_id) - first_pledge_amount = first_candidate_info['Ret']['Released'] - # view block_reward - log.info("block: {}".format(node.eth.blockNumber)) - block_reward, staking_reward = client.economic.get_current_year_reward(node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # Get governable parameters - first_slash_blocks = get_governable_parameter_value(client, 'slashBlocksReward') - return first_pledge_amount, block_reward, first_slash_blocks - - -def verify_changed_parameters(clients, first_pledge_amount, block_reward, slash_blocks): - # Verify changed parameters - candidate_info = pledge_punishment(clients) - second_pledge_amount = candidate_info['Ret']['Released'] - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - if punishment_amonut < first_pledge_amount: - assert (second_pledge_amount == first_pledge_amount - punishment_amonut) or (second_pledge_amount == first_pledge_amount - punishment_amonut * 2), "ErrMsg:Consensus Amount of pledge {}".format( - second_pledge_amount) - else: - assert second_pledge_amount == 0, "ErrMsg:Consensus Amount of pledge {}".format(second_pledge_amount) - - -@pytest.mark.P1 -@pytest.mark.parametrize('mark', [False, True]) -def test_PIP_PVF_001_002(clients_consensus, mark, reset_environment): - """ - PIP_PVF_001:治理修改低0出块率扣除验证人自有质押金块数投票失败 - PIP_PVF_002:理修改低0出块率扣除验证人自有质押金块数成功处于未生效期 - :param clients_consensus: - :return: - """ - index = 0 - first_client = clients_consensus[index] - # get pledge amount1 and block reward - first_pledge_amount, block_reward, first_slash_blocks = information_before_slash_blocks(first_client) - # create Parametric proposal - param_governance_verify_before_endblock(first_client, 'slashing', 'slashBlocksReward', '0', mark) - # Get governable parameters again - second_slash_blocks = get_governable_parameter_value(first_client, 'slashBlocksReward') - assert first_slash_blocks == second_slash_blocks, "ErrMsg:slash blocks {}".format(second_slash_blocks) - # Verify changed parameters - verify_changed_parameters(clients_consensus, first_pledge_amount, block_reward, first_slash_blocks) - - -@pytest.mark.P1 -def test_PIP_PVF_003(clients_consensus, reset_environment): - """ - 治理修改低0出块率扣除验证人自有质押金块数成功处于已生效期 - :param clients_consensus: - :param reset_environment: - :return: - """ - first_index = 0 - first_client = clients_consensus[first_index] - log.info("当前连接节点:{}".format(first_client.node.node_mark)) - node = first_client.node - # get pledge amount1 and block reward - first_pledge_amount, block_reward, first_slash_blocks = information_before_slash_blocks(first_client) - # create Parametric proposal - param_governance_verify(first_client, 'slashing', 'slashBlocksReward', '0') - log.info("Current block height: {}".format(node.eth.blockNumber)) - # Get governable parameters again - second_slash_blocks = get_governable_parameter_value(first_client, 'slashBlocksReward') - assert second_slash_blocks == '0', "ErrMsg:Change parameters {}".format(second_slash_blocks) - # Verify changed parameters - verify_changed_parameters(clients_consensus, first_pledge_amount, block_reward, second_slash_blocks) - - -@pytest.mark.P1 -def test_PIP_PVF_004(client_consensus, clients_noconsensus, reset_environment): - """ - 治理修改低0出块率扣除验证人自有质押金块数成功扣除区块奖励块数49999-自由金额质押 - :param client_consensus: - :param clients_noconsensus: - :param reset_environment: - :return: - """ - consensus_client = client_consensus - log.info("Current connection consensus node".format(consensus_client.node.node_mark)) - first_index = 0 - first_client = clients_noconsensus[first_index] - log.info("Current connection non-consensus node:{}".format(first_client.node.node_mark)) - economic = consensus_client.economic - node = consensus_client.node - change_parameter_value = '49999' - # get pledge amount1 and block reward - consensus_pledge_amount, block_reward, first_slash_blocks = information_before_slash_blocks(consensus_client) - # create Parametric proposal - param_governance_verify(consensus_client, 'slashing', 'slashBlocksReward', change_parameter_value) - log.info("Current block height: {}".format(node.eth.blockNumber)) - # Get governable parameters again - second_slash_blocks = get_governable_parameter_value(consensus_client, 'slashBlocksReward') - assert second_slash_blocks == change_parameter_value, "ErrMsg:Change parameters {}".format(second_slash_blocks) - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create staking - result = first_client.staking.create_staking(0, address, address) - assert_code(result, 0) - # wait settlement block - economic.wait_settlement(node) - candidate_info = consensus_client.ppos.getCandidateInfo(first_client.node.node_id) - first_pledge_amount = candidate_info['Ret']['Released'] - log.info("Current pledge node amount:{}".format(first_pledge_amount)) - for i in range(4): - result = check_node_in_list(node.node_id, consensus_client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # Verify changed parameters - verify_changed_parameters(clients_noconsensus, first_pledge_amount, block_reward, second_slash_blocks) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P1 -def test_PIP_PVF_005(client_consensus, clients_noconsensus, reset_environment): - """ - 治理修改低出块率扣除验证人自有质押金比例扣除区块奖励块数49999-锁仓金额质押 - :param client_consensus: - :param clients_noconsensus: - :param reset_environment: - :return: - """ - consensus_client = client_consensus - log.info("Current connection consensus node".format(consensus_client.node.node_mark)) - first_index = 0 - first_client = clients_noconsensus[first_index] - log.info("Current connection non-consensus node:{}".format(first_client.node.node_mark)) - economic = consensus_client.economic - node = consensus_client.node - change_parameter_value = '4999' - # get pledge amount1 and block reward - consensus_pledge_amount, block_reward, first_slash_blocks = information_before_slash_blocks(consensus_client) - # create Parametric proposal - param_governance_verify(consensus_client, 'slashing', 'slashBlocksReward', change_parameter_value) - log.info("Current block height: {}".format(node.eth.blockNumber)) - # Get governable parameters - second_slash_blocks = get_governable_parameter_value(consensus_client, 'slashBlocksReward') - assert second_slash_blocks == change_parameter_value, "ErrMsg:Change parameters {}".format(second_slash_blocks) - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - address1, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Create restricting plan - plan = [{'Epoch': 1, 'Amount': economic.create_staking_limit}] - result = consensus_client.restricting.createRestrictingPlan(address1, plan, address) - assert_code(result, 0) - # create staking - result = first_client.staking.create_staking(1, address1, address1) - assert_code(result, 0) - # wait settlement block - economic.wait_settlement(node) - candidate_info = consensus_client.ppos.getCandidateInfo(first_client.node.node_id) - first_pledge_amount = candidate_info['Ret']['RestrictingPlan'] - log.info("Current pledge node amount:{}".format(first_pledge_amount)) - for i in range(4): - result = check_node_in_list(node.node_id, consensus_client.ppos.getValidatorList) - # log.info("Current node in consensus list status:{}".format(result)) - if result: - # Verify changed parameters - verify_changed_parameters(clients_noconsensus, first_pledge_amount, block_reward, second_slash_blocks) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -def adjust_initial_parameters(new_genesis_env): - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 3 - genesis.economicModel.slashing.maxEvidenceAge = 2 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.14.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - -@pytest.mark.P1 -@pytest.mark.parametrize('mark', [False, True]) -def test_PIP_PVF_006_007(new_genesis_env, mark): - """ - 治理修改区块双签-证据有效期投票失败 - :param new_genesis_env: - :return: - """ - # Change configuration parameters - adjust_initial_parameters(new_genesis_env) - first_client = get_client_consensus(new_genesis_env, staking_cfg) - log.info("Current connection non-consensus node:{}".format(first_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - # view Parameter value before treatment - first_slash_blocks = get_governable_parameter_value(first_client, 'maxEvidenceAge') - # create Parametric proposal - param_governance_verify_before_endblock(first_client, 'slashing', 'maxEvidenceAge', '1', mark) - # view Parameter value before treatment again - second_slash_blocks = get_governable_parameter_value(first_client, 'maxEvidenceAge') - assert second_slash_blocks == first_slash_blocks, "ErrMsg:Parameter value after treatment {}".format( - second_slash_blocks) - report_address, _ = first_client.economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # wait consensus block - economic.wait_consensus(node) - # Verify changed parameters - effective_block = economic.get_front_settlement_switchpoint(node, 2) - if effective_block < economic.consensus_size: - log.info("Current block: {}".format(node.eth.blockNumber)) - effective_block = economic.consensus_size + 1 - log.info("Effective block height: {}".format(effective_block)) - # Report prepareblock signature - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, effective_block) - log.info("Report information: {}".format(report_information)) - result = first_client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - - -@pytest.mark.P1 -def test_PIP_PVF_008(new_genesis_env): - """ - 治理修改区块双签-证据有效期处于已生效期 - :param new_genesis_env: - :return: - """ - # Change configuration parameters - adjust_initial_parameters(new_genesis_env) - first_client = get_client_consensus(new_genesis_env, staking_cfg) - log.info("Current connection non-consensus node:{}".format(first_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - change_parameter_value = '1' - # view Parameter value before treatment - first_slash_blocks = get_governable_parameter_value(first_client, 'maxEvidenceAge') - # create Parametric proposal - param_governance_verify(first_client, 'slashing', 'maxEvidenceAge', change_parameter_value) - # view Parameter value before treatment again - second_slash_blocks = get_governable_parameter_value(first_client, 'maxEvidenceAge') - assert second_slash_blocks != first_slash_blocks, "ErrMsg:Parameter value after treatment {}".format( - second_slash_blocks) - assert second_slash_blocks == change_parameter_value, "ErrMsg:Parameter value after treatment {}".format( - second_slash_blocks) - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # wait consensus block - economic.wait_consensus(node) - # Verify changed parameters - effective_block = economic.get_front_settlement_switchpoint(node, int(second_slash_blocks)) - log.info("effective_block block height: {}".format(effective_block)) - # wait consensus block - economic.wait_consensus(node) - # first Report prepareblock signature - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, economic.consensus_size + 1) - log.info("Report information: {}".format(report_information)) - result = first_client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 303003) - # second Report prepareblock signature - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, effective_block) - log.info("Report information: {}".format(report_information)) - result = first_client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - - -@pytest.mark.P1 -def test_PIP_PVF_009(new_genesis_env): - """ - 治理修改区块双签-证据有效期(节点质押退回锁定周期-1) - :param new_genesis_env: - :return: - """ - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.unStakeFreezeDuration = 3 - genesis.economicModel.slashing.maxEvidenceAge = 1 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - first_client = get_client_consensus(new_genesis_env, staking_cfg) - log.info("Current connection non-consensus node:{}".format(first_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - change_parameter_value = '2' - # view Parameter value before treatment - first_slash_blocks = get_governable_parameter_value(first_client, 'maxEvidenceAge') - # create Parametric proposal - param_governance_verify(first_client, 'slashing', 'maxEvidenceAge', change_parameter_value) - # view Parameter value before treatment again - second_slash_blocks = get_governable_parameter_value(first_client, 'maxEvidenceAge') - assert second_slash_blocks != first_slash_blocks, "ErrMsg:Parameter value after treatment {}".format( - second_slash_blocks) - assert second_slash_blocks == change_parameter_value, "ErrMsg:Parameter value after treatment {}".format( - second_slash_blocks) - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # wait consensus block - economic.wait_consensus(node) - # Verify changed parameters - first_effective_block = economic.get_front_settlement_switchpoint(node, int(first_slash_blocks)) - log.info("first effective block height: {}".format(first_effective_block)) - second_effective_block = economic.get_front_settlement_switchpoint(node, int(second_slash_blocks)) - log.info("second effective block height: {}".format(second_effective_block)) - # first Report prepareblock signature - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, first_effective_block) - log.info("Report information: {}".format(report_information)) - result = first_client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - # second Report prepareblock signature - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, second_effective_block) - log.info("Report information: {}".format(report_information)) - result = first_client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 303000) - - -@pytest.mark.P1 -def test_PIP_PVF_010(new_genesis_env, clients_consensus): - """ - 治理修改区块双签-证据有效期(超出有效期) - :param new_genesis_env: - :return: - """ - # Change configuration parameters - adjust_initial_parameters(new_genesis_env) - - first_client = get_client_consensus(new_genesis_env, staking_cfg) - log.info("Current connection non-consensus node:{}".format(first_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - change_parameter_value = '1' - # view Parameter value before treatment - first_slash_blocks = get_governable_parameter_value(first_client, 'maxEvidenceAge') - assert first_slash_blocks == '2', "ErrMsg:Parameter value before treatment {}".format(first_slash_blocks) - # create Parametric proposal - param_governance_verify(first_client, 'slashing', 'maxEvidenceAge', change_parameter_value) - # view Parameter value before treatment again - second_slash_blocks = get_governable_parameter_value(first_client, 'maxEvidenceAge') - assert second_slash_blocks == change_parameter_value, "ErrMsg:Parameter value after treatment {}".format( - second_slash_blocks) - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # wait consensus block - economic.wait_consensus(node) - # Verify changed parameters - effective_block = economic.get_front_settlement_switchpoint(node, int(first_slash_blocks)) - log.info("Effective1 block height: {}".format(effective_block)) - # Report1 prepareblock signature - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, effective_block) - log.info("Report information: {}".format(report_information)) - result = first_client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 303003) - - -def information_before_penalty_ratio(client): - # view Pledge amount - first_candidate_info = client.ppos.getCandidateInfo(client.node.node_id) - first_pledge_amount = first_candidate_info['Ret']['Released'] - # view Parameter value before treatment - first_penalty_ratio = get_governable_parameter_value(client, 'slashFractionDuplicateSign') - return first_pledge_amount, first_penalty_ratio - - -def duplicate_sign(client, report_address, report_block): - if report_block <= client.economic.consensus_size: - report_block = client.economic.consensus_size + 1 - # Report1 prepareblock signature - report_information = mock_duplicate_sign(1, client.node.nodekey, client.node.blsprikey, report_block) - log.info("Report information: {}".format(report_information)) - result = client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - - -def assret_penalty_amount(clients, first_pledge_amount, penalty_ratio=None): - # view Pledge amount after punishment - proportion_reward, incentive_pool_reward = clients[1].economic.get_report_reward(first_pledge_amount, penalty_ratio) - log.info("Whistleblower benefits:{} Incentive pool income:{}".format(proportion_reward, incentive_pool_reward)) - # view Pledge amount again - candidate_info = clients[1].ppos.getCandidateInfo(clients[0].node.node_id) - second_pledge_amount = candidate_info['Ret']['Released'] - assert second_pledge_amount == first_pledge_amount - proportion_reward - incentive_pool_reward, "ErrMsg:Pledge amount {}".format( - second_pledge_amount) - - -@pytest.mark.P1 -@pytest.mark.parametrize('mark', [False, True]) -def test_PIP_PVF_011_012(clients_consensus, mark, reset_environment): - """ - 治理修改区块双签-最高处罚比例投票失败 - :param clients_consensus: - :param mark: - :param reset_environment: - :return: - """ - first_index = 0 - first_client = clients_consensus[first_index] - log.info("Current connection non-consensus node:{}".format(first_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - change_parameter_value = '1000' - # view Pledge amount and Parameter value before treatment - first_pledge_amount, first_penalty_ratio = information_before_penalty_ratio(first_client) - # create Parametric proposal - param_governance_verify_before_endblock(first_client, 'slashing', 'slashFractionDuplicateSign', - change_parameter_value, mark) - # view Parameter value after treatment again - second_penalty_ratio = get_governable_parameter_value(first_client, 'slashFractionDuplicateSign') - assert second_penalty_ratio == first_penalty_ratio, "ErrMsg:Parameter value after treatment {}".format( - second_penalty_ratio) - # wait consensus block - economic.wait_consensus(node) - # create account - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Verify changed parameters - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Verify changed parameters report - duplicate_sign(first_client, report_address, current_block) - # assret penalty amount - assret_penalty_amount(clients_consensus, first_pledge_amount) - - -@pytest.mark.P1 -def test_PIP_PVF_013(clients_consensus, reset_environment): - """ - 治理修改区块双签-最高处罚比例处于已生效期 - :param clients_consensus: - :param reset_environment: - :return: - """ - first_index = 0 - first_client = clients_consensus[first_index] - log.info("Current connection non-consensus node:{}".format(first_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - change_parameter_value = '1000' - # view Pledge amount and Parameter value before treatment - first_pledge_amount, first_penalty_ratio = information_before_penalty_ratio(first_client) - # create Parametric proposal - param_governance_verify(first_client, 'slashing', 'slashFractionDuplicateSign', change_parameter_value) - # view Parameter value before treatment again - second_penalty_ratio = get_governable_parameter_value(first_client, 'slashFractionDuplicateSign') - assert second_penalty_ratio == change_parameter_value, "ErrMsg:Parameter value after treatment {}".format( - second_penalty_ratio) - # create account - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Verify changed parameters - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Verify changed parameters report - duplicate_sign(first_client, report_address, current_block) - # assret penalty amount - assret_penalty_amount(clients_consensus, first_pledge_amount, int(change_parameter_value)) - - -@pytest.mark.P1 -def test_PIP_PVF_014(clients_consensus, reset_environment): - """ - 治理修改区块双签-最高处罚比例为10000‱ - :param clients_consensus: - :param reset_environment: - :return: - """ - first_index = 0 - first_client = clients_consensus[first_index] - log.info("Current connection non-consensus node:{}".format(first_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - change_parameter_value = '10000' - # view Pledge amount and Parameter value before treatment - first_pledge_amount, first_penalty_ratio = information_before_penalty_ratio(first_client) - # create Parametric proposal - param_governance_verify(first_client, 'slashing', 'slashFractionDuplicateSign', change_parameter_value) - # view Parameter value before treatment again - second_penalty_ratio = get_governable_parameter_value(first_client, 'slashFractionDuplicateSign') - assert second_penalty_ratio == change_parameter_value, "ErrMsg:Parameter value after treatment {}".format( - second_penalty_ratio) - # create account - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Verify changed parameters - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Verify changed parameters report - duplicate_sign(first_client, report_address, current_block) - # assret penalty amount - assret_penalty_amount(clients_consensus, first_pledge_amount, int(change_parameter_value)) - - -@pytest.mark.P1 -def test_PIP_PVF_015(clients_consensus, reset_environment): - """ - 治理修改区块双签-最高处罚比例为1‱ - :param clients_consensus: - :param reset_environment: - :return: - """ - first_index = 0 - first_client = clients_consensus[first_index] - log.info("Current connection non-consensus node:{}".format(first_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - change_parameter_value = '1' - # view Pledge amount and Parameter value before treatment - first_pledge_amount, first_penalty_ratio = information_before_penalty_ratio(first_client) - # create Parametric proposal - param_governance_verify(first_client, 'slashing', 'slashFractionDuplicateSign', change_parameter_value) - # view Parameter value before treatment again - second_penalty_ratio = get_governable_parameter_value(first_client, 'slashFractionDuplicateSign') - assert second_penalty_ratio == change_parameter_value, "ErrMsg:Parameter value after treatment {}".format( - second_penalty_ratio) - # create account - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Verify changed parameters - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Verify changed parameters report - duplicate_sign(first_client, report_address, current_block) - # assret penalty amount - assret_penalty_amount(clients_consensus, first_pledge_amount, int(change_parameter_value)) - - -def information_before_report_reward(client): - # view Pledge amount - first_candidate_info = client.ppos.getCandidateInfo(client.node.node_id) - first_pledge_amount = first_candidate_info['Ret']['Released'] - # view Parameter value before treatment - first_report_reward = get_governable_parameter_value(client, 'duplicateSignReportReward') - return first_pledge_amount, first_report_reward - - -def get_account_amount(client): - # create report account - report_address, _ = client.economic.account.generate_account(client.node.web3, client.node.web3.toWei( - 1000, 'ether')) - # view report amount - first_report_amount = client.node.eth.getBalance(report_address) - # view Incentive pool account - first_incentive_pool_account = client.node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - return report_address, first_report_amount, first_incentive_pool_account - - -def asster_income_account_amount(client, first_report_amount, first_incentive_pool_account, report_address, - proportion_reward, - incentive_pool_reward): - # view report amount - second_report_amount = client.node.eth.getBalance(report_address) - # view Incentive pool account - second_incentive_pool_account = client.node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - # asster amount reward - log.info("first_report_amount {} ,proportion_reward {} , second_report_amount {}".format(first_report_amount, - proportion_reward, - second_report_amount)) - assert first_report_amount + proportion_reward - second_report_amount < client.node.web3.toWei(1, - 'ether'), "ErrMsg:report amount {}".format( - second_report_amount) - log.info("second_incentive_pool_account {} ,first_incentive_pool_account {} , incentive_pool_reward {}".format( - second_incentive_pool_account, first_incentive_pool_account, incentive_pool_reward)) - assert second_incentive_pool_account == first_incentive_pool_account + incentive_pool_reward + ( - first_report_amount + proportion_reward - second_report_amount), "ErrMsg:Incentive pool account {}".format( - second_incentive_pool_account) - - -@pytest.mark.P1 -@pytest.mark.parametrize('mark', [False, True]) -def test_PIP_PVF_016_017(clients_consensus, mark, reset_environment): - """ - PIP_PVF_016:治理修改区块双签-举报奖励比例投票失败 - PIP_PVF_017:治理修改区块双签-举报奖励比例处于未生效期 - :param clients_consensus: - :param reset_environment: - :return: - """ - first_index = 0 - second_index = 1 - first_client = clients_consensus[first_index] - log.info("Current connection non-consensus first node:{}".format(first_client.node.node_mark)) - second_client = clients_consensus[second_index] - log.info("Current connection non-consensus second node:{}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - change_parameter_value = '60' - first_pledge_amount, first_report_reward = information_before_report_reward(first_client) - # create Parametric proposal - param_governance_verify_before_endblock(first_client, 'slashing', 'duplicateSignReportReward', change_parameter_value, mark) - # view Parameter value after treatment - second_report_reward = get_governable_parameter_value(first_client, 'duplicateSignReportReward') - assert first_report_reward == second_report_reward, "ErrMsg:Parameter value after treatment {}".format(second_report_reward) - # wait consensus block - economic.wait_consensus(node) - # get account amount - report_address, first_report_amount, first_incentive_pool_account = get_account_amount(first_client) - # Verify changed parameters - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Verify changed parameters report - duplicate_sign(first_client, report_address, current_block) - # view Pledge amount after punishment - proportion_reward, incentive_pool_reward = economic.get_report_reward(first_pledge_amount) - log.info("Whistleblower benefits:{} Incentive pool income:{}".format(proportion_reward, incentive_pool_reward)) - # asster account amount - asster_income_account_amount(second_client, first_report_amount, first_incentive_pool_account, - report_address, proportion_reward, incentive_pool_reward) - - -@pytest.mark.P1 -def testt(client_consensus): - a = client_consensus.node.eth.getTransactionCount(client_consensus.economic.account.account_with_money['address']) - print(a) - - -@pytest.mark.P1 -def test_PIP_PVF_018(clients_consensus, reset_environment): - """ - 治理修改区块双签-举报奖励比例处于已生效期 - :param clients_consensus: - :param reset_environment: - :return: - """ - first_index = 0 - second_index = 1 - first_client = clients_consensus[first_index] - log.info("Current connection non-consensus first node:{}".format(first_client.node.node_mark)) - second_client = clients_consensus[second_index] - log.info("Current connection non-consensus second node:{}".format(second_client.node.node_mark)) - node = first_client.node - change_parameter_value = '60' - # get first_pledge_amount first_report_amount first_incentive_pool_account first_report_reward - first_pledge_amount, first_report_reward = information_before_report_reward(first_client) - # create Parametric proposal - param_governance_verify(first_client, 'slashing', 'duplicateSignReportReward', change_parameter_value) - # view Parameter value after treatment - second_report_reward = get_governable_parameter_value(first_client, 'duplicateSignReportReward') - assert second_report_reward == change_parameter_value, "ErrMsg:Parameter value after treatment {}".format(second_report_reward) - # get account amount - report_address, first_report_amount, first_incentive_pool_account = get_account_amount(first_client) - # Verify changed parameters - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Verify changed parameters report - duplicate_sign(first_client, report_address, current_block) - # view Pledge amount after punishment - proportion_reward, incentive_pool_reward = second_client.economic.get_report_reward(first_pledge_amount, None, int(change_parameter_value)) - log.info("Whistleblower benefits:{} Incentive pool income:{}".format(proportion_reward, incentive_pool_reward)) - # asster account amount - asster_income_account_amount(second_client, first_report_amount, first_incentive_pool_account, - report_address, proportion_reward, incentive_pool_reward) - - -@pytest.mark.P1 -def test_PIP_PVF_019(clients_consensus, reset_environment): - """ - 治理修改区块双签-举报奖励比例为80% - :param clients_consensus: - :param reset_environment: - :return: - """ - first_index = 0 - second_index = 1 - first_client = clients_consensus[first_index] - log.info("Current connection non-consensus first node:{}".format(first_client.node.node_mark)) - second_client = clients_consensus[second_index] - log.info("Current connection non-consensus second node:{}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - change_parameter_value = '80' - # get first_pledge_amount first_report_reward - first_pledge_amount, first_report_reward = information_before_report_reward(first_client) - # create Parametric proposal - param_governance_verify(first_client, 'slashing', 'duplicateSignReportReward', change_parameter_value) - # view Parameter value after treatment - second_report_reward = get_governable_parameter_value(first_client, 'duplicateSignReportReward') - assert second_report_reward == change_parameter_value, "ErrMsg:Parameter value after treatment {}".format(second_report_reward) - # get account amount - report_address, first_report_amount, first_incentive_pool_account = get_account_amount(first_client) - # Verify changed parameters - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Verify changed parameters report - duplicate_sign(first_client, report_address, current_block) - # view Pledge amount after punishment - proportion_reward, incentive_pool_reward = economic.get_report_reward(first_pledge_amount, None, int(change_parameter_value)) - log.info("Whistleblower benefits:{} Incentive pool income:{}".format(proportion_reward, incentive_pool_reward)) - # asster account amount - asster_income_account_amount(second_client, first_report_amount, first_incentive_pool_account, - report_address, proportion_reward, incentive_pool_reward) - - -@pytest.mark.P1 -def test_PIP_PVF_020(clients_consensus, reset_environment): - """ - 治理修改区块双签-举报奖励比例为1% - :param clients_consensus: - :param reset_environment: - :return: - """ - first_index = 0 - second_index = 1 - first_client = clients_consensus[first_index] - log.info("Current connection non-consensus first node:{}".format(first_client.node.node_mark)) - second_client = clients_consensus[second_index] - log.info("Current connection non-consensus second node:{}".format(second_client.node.node_mark)) - economic = first_client.economic - node = first_client.node - change_parameter_value = '1' - # get first_pledge_amount first_report_reward - first_pledge_amount, first_report_reward = information_before_report_reward(first_client) - # create Parametric proposal - param_governance_verify(first_client, 'slashing', 'duplicateSignReportReward', change_parameter_value) - # view Parameter value after treatment - second_report_reward = get_governable_parameter_value(first_client, 'duplicateSignReportReward') - assert second_report_reward == change_parameter_value, "ErrMsg:Parameter value after treatment {}".format(second_report_reward) - # get account amount - report_address, first_report_amount, first_incentive_pool_account = get_account_amount(first_client) - # Verify changed parameters - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Verify changed parameters report - duplicate_sign(first_client, report_address, current_block) - # view Pledge amount after punishment - proportion_reward, incentive_pool_reward = economic.get_report_reward(first_pledge_amount, None, int(change_parameter_value)) - log.info("Whistleblower benefits:{} Incentive pool income:{}".format(proportion_reward, incentive_pool_reward)) - # asster account amount - asster_income_account_amount(second_client, first_report_amount, first_incentive_pool_account, - report_address, proportion_reward, incentive_pool_reward) - - -@pytest.mark.parametrize('mark', [False, True]) -@pytest.mark.P1 -def test_PIP_MG_001_002(client_consensus, mark, reset_environment): - """ - PIP_MG_001:治理修改默认每个区块的最大Gas 投票失败 - PIP_MG_002:治理修改默认每个区块的最大Gas 处于未生效期 - :param client_consensus: - :param reset_environment: - :return: - """ - first_client = client_consensus - log.info("Current connection non-consensus first node:{}".format(first_client.node.node_mark)) - node = first_client.node - # view Parameter value before treatment - first_max_gas_limit = get_governable_parameter_value(first_client, 'maxBlockGasLimit') - # create Parametric proposal - block = param_governance_verify_before_endblock(first_client, 'block', 'maxBlockGasLimit', '9424776', mark) - # view Parameter value after treatment - second_max_gas_limit = get_governable_parameter_value(first_client, 'maxBlockGasLimit') - # wait block - wait_block_number(node, block) - assert second_max_gas_limit == first_max_gas_limit, "ErrMsg:Parameter value after treatment {}".format(second_max_gas_limit) - - -@pytest.mark.P1 -def test_PIP_MG_003(client_consensus, reset_environment): - """ - 治理修改默认每个区块的最大Gas 处于已生效期 - :param client_consensus: - :param reset_environment: - :return: - """ - first_client = client_consensus - log.info("Current connection non-consensus first node:{}".format(first_client.node.node_mark)) - node = first_client.node - change_parameter_value = '10000000' - # view Parameter value before treatment - first_max_gas_limit = get_governable_parameter_value(first_client, 'maxBlockGasLimit') - # create Parametric proposal - param_governance_verify(first_client, 'block', 'maxBlockGasLimit', change_parameter_value) - # view Parameter value after treatment - second_max_gas_limit = get_governable_parameter_value(first_client, 'maxBlockGasLimit') - assert second_max_gas_limit != first_max_gas_limit, "ErrMsg:Parameter value after treatment {}".format(second_max_gas_limit) - assert second_max_gas_limit == change_parameter_value, "ErrMsg:Parameter value after treatment {}".format(second_max_gas_limit) diff --git a/cases/tests/ppos/test_locked_position.py b/cases/tests/ppos/test_locked_position.py deleted file mode 100644 index 34887a2b53..0000000000 --- a/cases/tests/ppos/test_locked_position.py +++ /dev/null @@ -1,2405 +0,0 @@ -import time -import pytest -import allure -import rlp -from alaya.utils.transactions import send_obj_transaction -from dacite import from_dict -from alaya.packages.platon_account.internal.transactions import bech32_address_bytes - -from common.key import get_pub_key, mock_duplicate_sign -from common.log import log -from alaya import Web3 -from decimal import Decimal -from tests.lib import EconomicConfig, Genesis, StakingConfig, Staking, check_node_in_list, assert_code, von_amount, \ - get_governable_parameter_value, get_the_dynamic_parameter_gas_fee - - -@pytest.mark.P0 -@pytest.mark.compatibility -def test_LS_FV_001(client_consensus): - """ - 查看锁仓账户计划 - :param client_consensus: - :return: - """ - # Reset environment - client_consensus.economic.env.deploy_all() - # view Lock in contract amount - lock_up_amount = client_consensus.node.eth.getBalance(EconomicConfig.FOUNDATION_LOCKUP_ADDRESS) - log.info("Lock in contract amount: {}".format(lock_up_amount)) - # view Lockup plan - result = client_consensus.ppos.getRestrictingInfo(EconomicConfig.INCENTIVEPOOL_ADDRESS) - assert_code(result, 304005) - # release_plans_list = result['Ret']['plans'] - # assert_code(result, 0) - # log.info("Lockup plan information: {}".format(result)) - # # assert louck up amount - # for i in range(len(release_plans_list)): - # assert release_plans_list[i] == EconomicConfig.release_info[ - # i], "Year {} Height of block to be released: {} Release amount: {}".format(i + 1, release_plans_list[i][ - # 'blockNumber'], release_plans_list[i]['amount']) - - -def create_restrictingplan(client, epoch, amount, multiple=2): - # create restricting plan - address, _ = client.economic.account.generate_account(client.node.web3, - client.economic.create_staking_limit * multiple) - benifit_address, _ = client.economic.account.generate_account(client.node.web3, - client.node.web3.toWei(1000000, - 'ether')) - plan = [{'Epoch': epoch, 'Amount': client.node.web3.toWei(amount, 'ether')}] - result = client.restricting.createRestrictingPlan(benifit_address, plan, address) - return result, address, benifit_address - - -@pytest.mark.P1 -@pytest.mark.compatibility -def test_LS_UPV_001(client_new_node): - """ - 锁仓参数的有效性验证: - None, - "" - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - status = True - # create restricting plan - address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit) - plan = [{'Epoch': 1, 'Amount': ""}] - result = client.restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 304011) - - # create restricting plan - address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit) - plan = [{'Epoch': 1, 'Amount': None}] - try: - client.restricting.createRestrictingPlan(address, plan, address) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg: create restricting result {}".format(status) - - -@pytest.mark.P2 -def test_LS_UPV_002_1(client_new_node): - """ - 创建锁仓计划Gas费- 单个解锁次数 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan - address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit) - lock_amount = node.web3.toWei(1000, 'ether') - plan = [{'Epoch': 1, 'Amount': lock_amount}] - account = bech32_address_bytes(address) - plan_list = [] - for dict_ in plan: - v = [dict_[k] for k in dict_] - plan_list.append(v) - rlp_list = rlp.encode(plan_list) - data = rlp.encode([rlp.encode(int(4000)), rlp.encode(account), rlp_list]) - transaction_data = {"to": address, "data": data} - aa = node.eth.estimateGas(transaction_data) - dynamic_gas = get_the_dynamic_parameter_gas_fee(data) - gas_total = 21000 + 18000 + 8000 + 21000 + dynamic_gas - log.info("gas_total: {}".format(gas_total)) - balance = node.eth.getBalance(address) - # Create a lockout plan - result = client.restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 0) - balance1 = node.eth.getBalance(address) - transaction_fees = gas_total * node.eth.gasPrice - assert balance - balance1 - lock_amount == transaction_fees, "ErrMsg: transaction fees {}".format(transaction_fees) - - -@pytest.mark.P2 -def test_LS_UPV_002_2(client_new_node): - """ - 创建锁仓计划Gas费 - 多个解锁次数 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan - address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit) - lock_amount = node.web3.toWei(1000, 'ether') - plan = [{'Epoch': 1, 'Amount': lock_amount}, {'Epoch': 2, 'Amount': lock_amount}] - account = bech32_address_bytes(address) - plan_list = [] - for dict_ in plan: - v = [dict_[k] for k in dict_] - plan_list.append(v) - rlp_list = rlp.encode(plan_list) - data = rlp.encode([rlp.encode(int(4000)), rlp.encode(account), rlp_list]) - dynamic_gas = get_the_dynamic_parameter_gas_fee(data) - gas_total = 21000 + 18000 + 8000 + 21000 * 2 + dynamic_gas - log.info("gas_total: {}".format(gas_total)) - balance = node.eth.getBalance(address) - # Create a lockout plan - result = client.restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 0) - balance1 = node.eth.getBalance(address) - transaction_fees = gas_total * node.eth.gasPrice - assert balance - balance1 - lock_amount * 2 == transaction_fees, "ErrMsg: transaction fees {}".format( - transaction_fees) - - -@pytest.mark.P1 -@pytest.mark.compatibility -def test_LS_UPV_003(client_new_node): - """ - 正常创建锁仓计划 - :param client_new_node: - :return: - """ - result, address, benifit_address = create_restrictingplan(client_new_node, 1, 1000) - assert_code(result, 0) - restricting_info = client_new_node.ppos.getRestrictingInfo(benifit_address) - assert_code(restricting_info, 0) - assert restricting_info['Ret']['balance'] == client_new_node.node.web3.toWei(1000, 'ether') - - -@pytest.mark.P1 -def test_LS_UPV_004_1(client_new_node): - """ - 锁仓参数的有效性验证:number 1, amount 0.1 - number 0.1, amount 10 - :param client_new_node: - :return: - """ - status = True - # number 1, amount 0.1 - result, address, benifit_address = create_restrictingplan(client_new_node, 1, 0.1) - log.info('result: {}'.format(result)) - assert_code(result, 304014) - # number 0.1, amount 10 - try: - result = create_restrictingplan(client_new_node, 0.1, 10) - log.info('result: {}'.format(result)) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg: create restricting result {}".format(status) - - -@pytest.mark.parametrize('epoch, amount', [(-1, 10), (1, -10)]) -@pytest.mark.P1 -def test_LS_UPV_004_2(client_new_node, epoch, amount): - """ - 锁仓参数的有效性验证:epoch -1, amount 10 - epoch 1, amount -10 - :param client_new_node: - :return: - """ - status = True - # create restricting plan - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - client_new_node.economic.create_staking_limit) - plan = [{'Epoch': epoch, 'Amount': amount}] - try: - client_new_node.restricting.createRestrictingPlan(address, plan, address) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg: create restricting result {}".format(status) - - -@pytest.mark.P1 -def test_LS_UPV_005(client_new_node): - """ - 锁仓参数的有效性验证:epoch 0, amount 10 - :param client_new_node: - :return: - """ - result, address, benifit_address = create_restrictingplan(client_new_node, 0, 10) - assert_code(result, 304001) - - -@pytest.mark.P1 -@pytest.mark.parametrize('number', [1, 5, 36]) -def test_LS_UPV_006(client_new_node, number): - """ - 创建锁仓计划1<= 释放计划个数N <=36 - :param client_new_node: - :return: - """ - # create restricting plan - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - client_new_node.economic.create_staking_limit) - plan = [] - for i in range(number): - plan.append({'Epoch': i + 1, 'Amount': client_new_node.economic.delegate_limit * 100}) - log.info("Create lock plan parameters:{}".format(plan)) - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 0) - - -@pytest.mark.P1 -def test_LS_UPV_007(client_new_node): - """ - 创建锁仓计划-释放计划的锁定期个数 > 36 - :param client_new_node: - :return: - """ - # create restricting plan - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - client_new_node.economic.create_staking_limit) - plan = [] - for i in range(37): - plan.append({'Epoch': i + 1, 'Amount': client_new_node.node.web3.toWei(10, 'ether')}) - log.info("Create lock plan parameters:{}".format(plan)) - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 304002) - - -@pytest.mark.P1 -def test_LS_UPV_008(client_new_node): - """ - 锁仓参数的有效性验证:epoch 1, amount 0 - :param client_new_node: - :return: - """ - # create restricting plan - result, address, benifit_address = create_restrictingplan(client_new_node, 1, 0) - assert_code(result, 304011) - - -@pytest.mark.P2 -def test_LS_UPV_009(client_new_node): - """ - 创建锁仓计划-锁仓金额中文、特殊字符字符测试 - :param client_new_node: - :return: - """ - # create restricting plan - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - client_new_node.economic.create_staking_limit) - plan = [{'Epoch': 1, 'Amount': '测试 @!'}] - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 304004) - - -@pytest.mark.P1 -def test_LS_RV_001(client_new_node): - """ - 创建锁仓计划-单个释放锁定期金额大于账户金额 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan - address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - plan = [{'Epoch': 1, 'Amount': node.web3.toWei(1001, 'ether')}] - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 304004) - - -@pytest.mark.P1 -@pytest.mark.parametrize('balance1, balance2', [(0, 0), (300, 300), (500, 500), (500, 600)]) -def test_LS_RV_002(client_new_node, balance1, balance2): - """ - 创建锁仓计划-多个释放锁定期合计金额大于账户金额 - :param client_new_node: - :return: - """ - # create restricting plan - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - client_new_node.node.web3.toWei(1000, - 'ether')) - lock_up_balance1 = client_new_node.node.web3.toWei(balance1, 'ether') - lock_up_balance2 = client_new_node.node.web3.toWei(balance2, 'ether') - plan = [{'Epoch': 1, 'Amount': lock_up_balance1}, {'Epoch': 2, 'Amount': lock_up_balance2}] - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - if 0 < balance1 + balance2 < 1000: - assert_code(result, 0) - elif 1000 <= balance1 + balance2: - assert_code(result, 304004) - else: - assert_code(result, 304011) - - -def create_restricting_plan(client, plan, benifit_address, address): - """ - create restricting plan - :param client: - :param plan: - :param benifit_address: - :param address: - :return: - """ - # create restricting - result = client.restricting.createRestrictingPlan(benifit_address, plan, address) - assert_code(result, 0) - # view restricting plan - restricting_info = client.ppos.getRestrictingInfo(benifit_address) - log.info("Restricting information: {}".format(restricting_info)) - assert_code(restricting_info, 0) - return restricting_info - - -@pytest.mark.P1 -def test_LS_RV_003(client_new_node): - """ - 创建锁仓计划-锁仓计划里两个锁仓计划的解锁期相同 - :param client_new_node: - :return: - """ - # create account - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - client_new_node.node.web3.toWei(1000, - 'ether')) - louk_up_balace = client_new_node.node.web3.toWei(100, 'ether') - plan = [{'Epoch': 1, 'Amount': louk_up_balace}, {'Epoch': 1, 'Amount': louk_up_balace}] - # create restricting plan - restricting_info = create_restricting_plan(client_new_node, plan, address, address) - # assert restricting plan - assert restricting_info['Ret']['balance'] == louk_up_balace * 2, "ErrMsg:Restricting balance:{}".format( - restricting_info['Ret']['balance']) - assert restricting_info['Ret']['plans'][0][ - 'blockNumber'] == client_new_node.economic.get_switchpoint_by_settlement( - client_new_node.node), "ErrMsg:Restricting blockNumber {}".format( - restricting_info['Ret']['plans'][0]['blockNumber']) - assert restricting_info['Ret']['plans'][0][ - 'amount'] == louk_up_balace * 2, "ErrMsg:Restricting amount {}".format( - restricting_info['Ret']['plans'][0]['amount']) - - -@pytest.mark.P1 -def test_LS_RV_004(client_new_node): - """ - 创建锁仓计划-新建锁仓计划里两个锁仓计划的解锁期不同 - :param client_new_node: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - client_new_node.node.web3.toWei(1000, - 'ether')) - - louk_up_balace = client_new_node.node.web3.toWei(100, 'ether') - plan = [{'Epoch': 1, 'Amount': louk_up_balace}, {'Epoch': 2, 'Amount': louk_up_balace}] - # create restricting plan - restricting_info = create_restricting_plan(client_new_node, plan, address, address) - # assert restricting plan - assert restricting_info['Ret']['balance'] == louk_up_balace * 2, "ErrMsg:Restricting balance:{}".format( - restricting_info['Ret']['balance']) - assert restricting_info['Ret']['plans'][0][ - 'blockNumber'] == client_new_node.economic.get_switchpoint_by_settlement( - client_new_node.node), "ErrMsg:Restricting blockNumber {}".format( - restricting_info['Ret']['plans'][0]['blockNumber']) - assert restricting_info['Ret']['plans'][0][ - 'amount'] == louk_up_balace, "ErrMsg:Restricting amount {}".format( - restricting_info['Ret']['plans'][0]['amount']) - assert restricting_info['Ret']['plans'][1][ - 'amount'] == louk_up_balace, "ErrMsg:Restricting amount {}".format( - restricting_info['Ret']['plans'][1]['amount']) - - -@pytest.mark.P1 -def test_LS_RV_005(client_new_node): - """ - 创建锁仓计划-创建不同锁仓计划里2个相同解锁期 - :param client_new_node: - :return: - """ - # create account - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - client_new_node.node.web3.toWei(1000, - 'ether')) - - louk_up_balace = client_new_node.node.web3.toWei(100, 'ether') - plan = [{'Epoch': 1, 'Amount': louk_up_balace}] - # create restricting plan - restricting_info = create_restricting_plan(client_new_node, plan, address, address) - # create restricting plan - restricting_info = create_restricting_plan(client_new_node, plan, address, address) - # assert restricting plan - assert restricting_info['Ret']['balance'] == louk_up_balace * 2, "ErrMsg:Restricting balance:{}".format( - restricting_info['Ret']['balance']) - assert restricting_info['Ret']['plans'][0][ - 'blockNumber'] == client_new_node.economic.get_switchpoint_by_settlement( - client_new_node.node), "ErrMsg:Restricting blockNumber {}".format( - restricting_info['Ret']['plans'][0]['blockNumber']) - assert restricting_info['Ret']['plans'][0][ - 'amount'] == louk_up_balace * 2, "ErrMsg:Restricting amount {}".format( - restricting_info['Ret']['plans'][0]['amount']) - - -def create_lock_release_amount(client, first_amount, second_amount): - # create first_address - first_address, _ = client.economic.account.generate_account(client.node.web3, first_amount) - # create second_address - second_address, _ = client.economic.account.generate_account(client.node.web3, second_amount) - return first_address, second_address - - -@pytest.mark.P1 -def test_LS_RV_006(client_new_node): - """ - 创建锁仓计划-不同个账户创建不同锁仓计划里有相同解锁期 - :param client_new_node: - :return: - """ - # create account - amount1 = client_new_node.node.web3.toWei(1000, 'ether') - amount2 = client_new_node.node.web3.toWei(1000, 'ether') - address1, address2 = create_lock_release_amount(client_new_node, amount1, amount2) - louk_up_balace = client_new_node.node.web3.toWei(100, 'ether') - plan = [{'Epoch': 1, 'Amount': louk_up_balace}, {'Epoch': 2, 'Amount': louk_up_balace}] - # create restricting plan1 - restricting_info = create_restricting_plan(client_new_node, plan, address1, address1) - # create restricting plan2 - restricting_info = create_restricting_plan(client_new_node, plan, address1, address2) - # assert restricting plan1 - time.sleep(1) - assert restricting_info['Ret']['balance'] == louk_up_balace * 4, "ErrMsg:Restricting balance:{}".format( - restricting_info['Ret']['balance']) - assert restricting_info['Ret']['plans'][0][ - 'blockNumber'] == client_new_node.economic.get_switchpoint_by_settlement( - client_new_node.node), "ErrMsg:Restricting blockNumber {}".format( - restricting_info['Ret']['plans'][0]['blockNumber']) - assert restricting_info['Ret']['plans'][0][ - 'amount'] == louk_up_balace * 2, "ErrMsg:Restricting amount {}".format( - restricting_info['Ret']['plans'][0]['amount']) - assert restricting_info['Ret']['plans'][1][ - 'amount'] == louk_up_balace * 2, "ErrMsg:Restricting amount {}".format( - restricting_info['Ret']['plans'][1]['amount']) - - -@pytest.mark.P1 -def test_LS_RV_007(client_new_node): - """ - 创建锁仓计划-不同账户创建不同锁仓计划里有不相同解锁期 - :param client_new_node: - :return: - """ - # create account - amount1 = client_new_node.node.web3.toWei(1000, 'ether') - amount2 = client_new_node.node.web3.toWei(1000, 'ether') - address1, address2 = create_lock_release_amount(client_new_node, amount1, amount2) - louk_up_balace = client_new_node.node.web3.toWei(100, 'ether') - plan1 = [{'Epoch': 1, 'Amount': louk_up_balace}, {'Epoch': 2, 'Amount': louk_up_balace}] - plan2 = [{'Epoch': 1, 'Amount': louk_up_balace}, {'Epoch': 3, 'Amount': louk_up_balace}] - # create restricting plan1 - restricting_info = create_restricting_plan(client_new_node, plan1, address1, address1) - # create restricting plan2 - restricting_info = create_restricting_plan(client_new_node, plan2, address1, address2) - # assert restricting plan1 - assert restricting_info['Ret']['balance'] == louk_up_balace * 4, "ErrMsg:Restricting balance:{}".format( - restricting_info['Ret']['balance']) - assert restricting_info['Ret']['plans'][0][ - 'blockNumber'] == client_new_node.economic.get_switchpoint_by_settlement( - client_new_node.node), "ErrMsg:Restricting blockNumber {}".format( - restricting_info['Ret']['plans'][0]['blockNumber']) - assert restricting_info['Ret']['plans'][0][ - 'amount'] == louk_up_balace * 2, "ErrMsg:Restricting amount {}".format( - restricting_info['Ret']['plans'][0]['amount']) - assert restricting_info['Ret']['plans'][1][ - 'amount'] == louk_up_balace, "ErrMsg:Restricting amount {}".format( - restricting_info['Ret']['plans'][1]['amount']) - assert restricting_info['Ret']['plans'][2][ - 'amount'] == louk_up_balace, "ErrMsg:Restricting amount {}".format( - restricting_info['Ret']['plans'][2]['amount']) - - -def create_restricting_plan_and_staking(client, economic, node): - # create account - amount1 = von_amount(economic.create_staking_limit, 4) - amount2 = client.node.web3.toWei(1000, 'ether') - address1, address2 = create_lock_release_amount(client, amount1, amount2) - # create Restricting Plan - plan = [{'Epoch': 1, 'Amount': economic.create_staking_limit}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(1, address2, address2) - assert_code(result, 0) - # view Restricting Plan - restricting_info1 = client.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info1)) - assert_code(restricting_info1, 0) - info = restricting_info1['Ret'] - assert info['Pledge'] == economic.create_staking_limit, 'ErrMsg: restricting Pledge amount {}'.format( - info['Pledge']) - # wait settlement block - economic.wait_settlement(node) - restricting_info2 = client.ppos.getRestrictingInfo(address2) - log.info("current block: {}".format(node.block_number)) - log.info("restricting info: {}".format(restricting_info2)) - info = restricting_info2['Ret'] - assert info['debt'] == economic.create_staking_limit, 'ErrMsg: restricting debt amount {}'.format( - info['debt']) - return address1, address2 - - -@pytest.mark.P1 -def test_LS_RV_008(client_new_node): - """ - 创建锁仓计划-锁仓欠释放金额<新增锁仓计划总金额 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address1, address2 = create_restricting_plan_and_staking(client, economic, node) - # create Restricting Plan again - plan = [{'Epoch': 1, 'Amount': von_amount(economic.create_staking_limit, 2)}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # view Restricting Plan - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info)) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['debt'] == 0, "rrMsg: restricting debt amount {}".format(info['debt']) - - -@pytest.mark.P1 -def test_LS_RV_009(client_new_node): - """ - 创建锁仓计划-锁仓欠释放金额>新增锁仓计划总金额 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address1, address2 = create_restricting_plan_and_staking(client, economic, node) - # create Restricting Plan again - plan = [{'Epoch': 1, 'Amount': von_amount(economic.create_staking_limit, 0.8)}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # view Restricting Plan - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info)) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['debt'] == economic.create_staking_limit - von_amount(economic.create_staking_limit, - 0.8), "rrMsg: restricting debt amount {}".format( - info['debt']) - - -@pytest.mark.P1 -def test_LS_RV_010(client_new_node): - """ - 创建锁仓计划-锁仓欠释放金额=新增锁仓计划总金额 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address1, address2 = create_restricting_plan_and_staking(client, economic, node) - # create Restricting Plan again - plan = [{'Epoch': 1, 'Amount': von_amount(economic.create_staking_limit, 1)}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # view Restricting Plan - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info)) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['debt'] == 0, "rrMsg: restricting debt amount {}".format(info['debt']) - - -def create_restricting_plan_and_entrust(client, node, economic): - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = client.node.web3.toWei(1000, 'ether') - address1, address2 = create_lock_release_amount(client, amount1, amount2) - # create Restricting Plan - plan = [{'Epoch': 1, 'Amount': economic.delegate_limit * 100}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - # Application for Commission - result = client.delegate.delegate(1, address2) - assert_code(result, 0) - # view Restricting Plan - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info)) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['Pledge'] == economic.delegate_limit, 'ErrMsg: restricting Pledge amount {}'.format( - info['Pledge']) - # wait settlement block - economic.wait_settlement(node) - log.info("current block: {}".format(node.block_number)) - # view Restricting Plan - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info)) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['debt'] == economic.delegate_limit, 'ErrMsg: restricting debt amount {}'.format( - info['debt']) - return address1, address2 - - -@pytest.mark.P1 -def test_LS_RV_011(client_new_node): - """ - 创建锁仓计划-锁仓委托释放后再次创建锁仓计划 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address1, address2 = create_restricting_plan_and_entrust(client, node, economic) - # create Restricting Plan again - plan = [{'Epoch': 1, 'Amount': economic.delegate_limit * 100}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # view Restricting Plan - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info)) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['debt'] == 0, "rrMsg: restricting debt amount {}".format(info['debt']) - - -@pytest.mark.P1 -def test_LS_RV_012(new_genesis_env, clients_new_node): - """ - 创建锁仓计划-锁仓质押释放后被处罚再次创建锁仓计划(处罚金额大于质押金额) - :param:client_new_node: - :return: - """ - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 60 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.14.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - client1 = clients_new_node[0] - log.info("Current linked client1: {}".format(client1.node.node_mark)) - client2 = clients_new_node[1] - log.info("Current linked client2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # create restricting plan and staking - address1, address2 = create_restricting_plan_and_staking(client1, economic, node) - # view - candidate_info = client1.ppos.getCandidateInfo(node.node_id) - pledge_amount = candidate_info['Ret']['Shares'] - log.info("pledge_amount: {}".format(pledge_amount)) - # Obtain pledge reward and block out reward - block_reward, staking_reward = client1.economic.get_current_year_reward(node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # Get 0 block rate penalties - slash_blocks = get_governable_parameter_value(client1, 'slashBlocksReward') - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # stop node - node.stop() - # Waiting 2 consensus block - client2.economic.wait_consensus(client2.node, 3) - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # view verifier list - verifier_list = client2.ppos.getVerifierList() - log.info("Current settlement cycle verifier list: {}".format(verifier_list)) - # Amount of penalty - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("punishment_amonut: {}".format(punishment_amonut)) - # view Restricting Plan - restricting_info = client2.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info)) - assert_code(restricting_info, 304005) - - -@pytest.mark.P1 -def test_LS_RV_019(new_genesis_env, clients_noconsensus): - """ - 创建锁仓计划-锁仓质押释放后被处罚再次创建锁仓计划 - :param new_genesis_env: - :return: - """ - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 5 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - client1 = clients_noconsensus[0] - log.info("Current linked client1: {}".format(client1.node.node_mark)) - client2 = clients_noconsensus[1] - log.info("Current linked client2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # create restricting plan and staking - address1, address2 = create_restricting_plan_and_staking(client1, economic, node) - # view - candidate_info = client1.ppos.getCandidateInfo(node.node_id) - pledge_amount = candidate_info['Ret']['Shares'] - log.info("pledge_amount: {}".format(pledge_amount)) - # Obtain pledge reward and block out reward - block_reward, staking_reward = client1.economic.get_current_year_reward(node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # Get 0 block rate penalties - slash_blocks = get_governable_parameter_value(client1, 'slashBlocksReward') - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # stop node - node.stop() - # Waiting 2 consensus block - client2.economic.wait_consensus(client2.node, 3) - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # view verifier list - verifier_list = client2.ppos.getVerifierList() - log.info("Current settlement cycle verifier list: {}".format(verifier_list)) - # Amount of penalty - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("punishment_amonut: {}".format(punishment_amonut)) - # view Restricting Plan - restricting_info = client2.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert (info['Pledge'] == pledge_amount - punishment_amonut * 2) or (info['Pledge'] == pledge_amount - punishment_amonut), 'ErrMsg: restricting Pledge amount {}'.format( - info['Pledge']) - assert (info['balance'] == pledge_amount - punishment_amonut * 2) or (info['balance'] == pledge_amount - punishment_amonut), 'ErrMsg: restricting balance amount {}'.format( - info['balance']) - # create Restricting Plan again - staking_amount = von_amount(economic.create_staking_limit, 2) - plan = [{'Epoch': 1, 'Amount': staking_amount}] - result = client2.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # view Restricting Plan - restricting_info3 = client2.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info3)) - assert_code(restricting_info3, 0) - info2 = restricting_info3['Ret'] - assert info2['balance'] == staking_amount + info['balance'] - info[ - 'debt'], "rrMsg: restricting balance amount {}".format(info2['balance']) - assert info2['debt'] == 0, "rrMsg: restricting debt amount {}".format(info2['debt']) - assert info2['plans'][0]['amount'] == staking_amount, "rrMsg: restricting plans amount {}".format( - info2['plans'][0]['amount']) - assert info2['Pledge'] == info['Pledge'], "rrMsg: restricting Pledge amount {}".format(info['Pledge']) - # Waiting for the end of the 2 settlement - client2.economic.wait_settlement(client2.node, 2) - # view Restricting Plan - restricting_info3 = client2.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info3)) - assert_code(restricting_info3, 304005) - - -@pytest.mark.P1 -def test_LS_RV_013(client_new_node): - """ - 同个账号锁仓给多个人 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account - address1, _ = economic.account.generate_account(node.web3, economic.create_staking_limit) - address2, _ = economic.account.generate_account(node.web3, 0) - address3, _ = economic.account.generate_account(node.web3, 0) - # create Restricting Plan1 - plan = [{'Epoch': 1, 'Amount': economic.delegate_limit * 100}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - restricting_info = client.ppos.getRestrictingInfo(address2) - assert_code(restricting_info, 0) - # create Restricting Plan1 - plan = [{'Epoch': 1, 'Amount': economic.delegate_limit * 100}] - result = client.restricting.createRestrictingPlan(address3, plan, address1) - assert_code(result, 0) - restricting_info = client.ppos.getRestrictingInfo(address3) - assert_code(restricting_info, 0) - - -def create_a_multiplayer_lockout_plan(client): - economic = client.economic - node = client.node - # create account - first_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - second_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - locked_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create Restricting Plan1 - plan = [{'Epoch': 1, 'Amount': economic.create_staking_limit}] - result = client.restricting.createRestrictingPlan(locked_address, plan, first_address) - assert_code(result, 0) - restricting_info = client.ppos.getRestrictingInfo(locked_address) - assert_code(restricting_info, 0) - # create Restricting Plan1 - plan = [{'Epoch': 1, 'Amount': economic.create_staking_limit}] - result = client.restricting.createRestrictingPlan(locked_address, plan, second_address) - assert_code(result, 0) - restricting_info = client.ppos.getRestrictingInfo(locked_address) - return locked_address, restricting_info - - -@pytest.mark.P1 -def test_LS_RV_014(client_new_node): - """ - 同个账号被多个人锁仓 - :param client_new_node: - :return: - """ - client = client_new_node - locked_address, restricting_info = create_a_multiplayer_lockout_plan(client) - assert_code(restricting_info, 0) - - -@pytest.mark.P1 -def test_LS_RV_015(client_new_node): - """ - 使用多人锁仓金额质押 - :param client_new_node: - :return: - """ - client = client_new_node - locked_address, restricting_info = create_a_multiplayer_lockout_plan(client) - # create staking - result = client.staking.create_staking(1, locked_address, locked_address) - assert_code(result, 0) - - -@pytest.mark.P1 -def test_LS_RV_016(client_new_node): - """ - 使用多人锁仓金额委托 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - locked_address, restricting_info = create_a_multiplayer_lockout_plan(client) - # create account - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Application for Commission - result = client.delegate.delegate(1, locked_address, amount=economic.create_staking_limit) - assert_code(result, 0) - - -@pytest.mark.P1 -def test_LS_RV_017(client_new_node): - """ - 使用多人锁仓金额增持 - :param client_new_node: - :return: - """ - client = client_new_node - locked_address, restricting_info = create_a_multiplayer_lockout_plan(client) - # create staking - result = client.staking.create_staking(1, locked_address, locked_address) - assert_code(result, 0) - # Apply for additional pledge - result = client.staking.increase_staking(1, locked_address) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_LS_RV_018(clients_new_node, reset_environment): - """ - 验证人非正常状态下创建锁仓计划(节点退出创建锁仓) - :param clients_new_node: - :return: - """ - client1 = clients_new_node[0] - log.info("Current linked client1: {}".format(client1.node.node_mark)) - client2 = clients_new_node[1] - log.info("Current linked client2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create staking - result = client1.staking.create_staking(0, address1, address1) - assert_code(result, 0) - # Waiting settlement block - client1.economic.wait_settlement(client1.node) - # stop node - client1.node.stop() - # Waiting 2 consensus block - client2.economic.wait_consensus(client2.node, 2) - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # create Restricting Plan1 - plan = [{'Epoch': 1, 'Amount': economic.delegate_limit}] - result = client2.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - - -def create_account_restricting_plan(client, economic, node): - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - address2, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create Restricting Plan - amount = economic.create_staking_limit - plan = [{'Epoch': 1, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # view restricting info - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info)) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['balance'] == amount, 'ErrMsg: restricting balance amount {}'.format(info['balance']) - assert info['Pledge'] == 0, 'ErrMsg: restricting Pledge amount {}'.format(info['Pledge']) - return address2 - - -@pytest.mark.P1 -@pytest.mark.compatibility -def test_LS_PV_001(client_new_node): - """ - 锁仓账户质押正常节点 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account restricting plan - address2 = create_account_restricting_plan(client, economic, node) - # create staking - result = client.staking.create_staking(1, address2, address2) - assert_code(result, 0) - # view restricting info - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info)) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['Pledge'] == economic.create_staking_limit, 'ErrMsg: restricting Pledge amount {}'.format( - info['Pledge']) - - -@pytest.mark.P1 -def test_LS_PV_002(client_new_node): - """ - 创建计划质押-未找到锁仓信息 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - address2, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = client.staking.create_staking(1, address2, address2) - assert_code(result, 304005) - - -@pytest.mark.P1 -@pytest.mark.compatibility -def test_LS_PV_003(client_new_node): - """ - 创建计划质押-锁仓计划质押金额<0 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - status = True - # create account restricting plan - address2 = create_account_restricting_plan(client, economic, node) - try: - # create staking - client.staking.create_staking(1, address2, address2, amount=-1) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg: create restricting result {}".format(status) - - -@pytest.mark.P1 -def test_LS_PV_004(client_new_node): - """ - 创建计划质押-锁仓计划质押金额=0 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account restricting plan - address2 = create_account_restricting_plan(client, economic, node) - # create staking - result = client.staking.create_staking(1, address2, address2, amount=0) - assert_code(result, 301100) - - -@pytest.mark.P1 -def test_LS_PV_005(client_new_node): - """ - 创建计划质押-锁仓计划质押金额小于最低门槛 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account restricting plan - address2 = create_account_restricting_plan(client, economic, node) - # create staking - staking_amount = von_amount(economic.create_staking_limit, 0.8) - result = client.staking.create_staking(1, address2, address2, amount=staking_amount) - assert_code(result, 301100) - - -@pytest.mark.P2 -def test_LS_PV_006(client_new_node): - """ - 创建计划质押-锁仓账户余额为0的情况下申请质押 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - status = True - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - address2, _ = economic.account.generate_account(node.web3, 0) - # create Restricting Plan - amount = economic.create_staking_limit - plan = [{'Epoch': 1, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - try: - # create staking - client.staking.create_staking(1, address2, address2) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg: create restricting result {}".format(status) - - -@pytest.mark.P1 -def test_LS_PV_007(clients_new_node): - """ - 创建计划退回质押-退回质押金额>锁仓质押金额 - :param clients_new_node: - :return: - """ - client1 = clients_new_node[0] - log.info("Current linked client1: {}".format(client1.node.node_mark)) - client2 = clients_new_node[1] - log.info("Current linked client2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = von_amount(economic.create_staking_limit, 2) - address1, address2 = create_lock_release_amount(client1, amount1, amount2) - # create Restricting Plan - plan = [{'Epoch': 1, 'Amount': economic.create_staking_limit}] - result = client1.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # create Restricting amount staking - result = client1.staking.create_staking(1, address2, address2) - assert_code(result, 0) - time.sleep(3) - # create Free amount staking - result = client2.staking.create_staking(0, address2, address2) - assert_code(result, 0) - # withdrew staking - result = client2.staking.withdrew_staking(address2) - assert_code(result, 0) - - -@pytest.mark.P1 -def test_LS_PV_008(client_new_node): - """ - 创建计划退回质押-欠释放金额=回退金额 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan and staking - address1, address2 = create_restricting_plan_and_staking(client, economic, node) - # withdrew staking - result = client.staking.withdrew_staking(address2) - assert_code(result, 0) - - -@pytest.mark.P1 -def test_LS_PV_009(client_new_node): - """ - 创建计划退回质押-欠释放金额<回退金额 - :param client_new_node: - :return: - """ - client1 = client_new_node - log.info("Current linked client1: {}".format(client1.node.node_mark)) - economic = client1.economic - node = client1.node - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = von_amount(economic.create_staking_limit, 2) - address1, address2 = create_lock_release_amount(client1, amount1, amount2) - # create Restricting Plan - plan = [{'Epoch': 1, 'Amount': economic.create_staking_limit}] - result = client1.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # create Restricting amount staking - result = client1.staking.create_staking(1, address2, address2) - assert_code(result, 0) - # wait settlement block - economic.wait_settlement(node) - # view restricting info - restricting_info = client1.ppos.getRestrictingInfo(address2) - info = restricting_info['Ret'] - assert info['debt'] == economic.create_staking_limit, "rrMsg: restricting debt amount {}".format(info['debt']) - # create Free amount staking - result = client1.staking.increase_staking(0, address2) - assert_code(result, 0) - # withdrew staking - result = client1.staking.withdrew_staking(address2) - assert_code(result, 0) - # view Restricting plan - restricting_info = client1.ppos.getRestrictingInfo(address2) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['debt'] == economic.create_staking_limit, "errMsg: restricting debt amount {}".format(info['debt']) - - -@pytest.mark.P2 -def test_LS_PV_010(client_new_node): - """ - 创建计划退回质押-锁仓账户余额不足的情况下申请退回质押 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - status = True - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = node.web3.toWei(0.000009, 'ether') - address1, address2 = create_lock_release_amount(client, amount1, amount2) - # create Restricting Plan - plan = [{'Epoch': 1, 'Amount': economic.create_staking_limit}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # create Restricting amount staking - result = client.staking.create_staking(1, address2, address2) - assert_code(result, 0) - log.info("address amount: {}".format(node.eth.getBalance(address2))) - try: - # withdrew staking - client.staking.withdrew_staking(address2) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg: create restricting result {}".format(status) - - -@pytest.mark.P2 -def test_LS_PV_011(client_new_node): - """ - 锁仓账户退回质押金中,申请质押节点 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan and staking - address1, address2 = create_restricting_plan_and_staking(client, economic, node) - # withdrew staking - result = client.staking.withdrew_staking(address2) - assert_code(result, 0) - # create Restricting amount staking - result = client.staking.create_staking(1, address2, address2) - assert_code(result, 301101) - - -@pytest.mark.P2 -def test_LS_PV_012(client_new_node): - """ - 锁仓账户申请完质押后又退回质押金(犹豫期) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account restricting plan - address2 = create_account_restricting_plan(client, economic, node) - # create staking - result = client.staking.create_staking(1, address2, address2) - assert_code(result, 0) - # withdrew staking - result = client.staking.withdrew_staking(address2) - assert_code(result, 0) - - -@pytest.mark.P1 -def test_LS_PV_013(client_new_node): - """ - 锁仓账户申请完质押后又退回质押金(锁定期) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account restricting plan - address2 = create_account_restricting_plan(client, economic, node) - # create staking - result = client.staking.create_staking(1, address2, address2) - assert_code(result, 0) - # wait settlement block - economic.wait_settlement(node) - # withdrew staking - result = client.staking.withdrew_staking(address2) - assert_code(result, 0) - # wait settlement block - economic.wait_settlement(node, 2) - # view restricting info - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info)) - assert_code(restricting_info, 304005) - - -def create_free_pledge(client, economic): - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = client.node.web3.toWei(1000, 'ether') - address1, address2 = create_lock_release_amount(client, amount1, amount2) - # create Restricting Plan - plan = [{'Epoch': 1, 'Amount': economic.delegate_limit * 100}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # view Restricting Plan informtion - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("Restricting Plan informtion: {}".format(restricting_info)) - # create staking - result = client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - return address2 - - -@pytest.mark.P1 -def test_LS_EV_001(client_new_node): - """ - 创建计划委托-委托正常节点 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - address2 = create_free_pledge(client, economic) - # Application for Commission - result = client.delegate.delegate(1, address2) - assert_code(result, 0) - # view Restricting Plan - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting info: {}".format(restricting_info)) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['Pledge'] == economic.delegate_limit, 'ErrMsg: restricting Pledge amount {}'.format( - info['Pledge']) - - -@pytest.mark.P1 -def test_LS_EV_002(client_new_node): - """ - 创建计划委托-未找到锁仓信息 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = client.node.web3.toWei(1000, 'ether') - address1, address2 = create_lock_release_amount(client, amount1, amount2) - # create staking - result = client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - # Application for Commission - result = client.delegate.delegate(1, address2) - assert_code(result, 304005) - - -@pytest.mark.P1 -def test_LS_EV_003(client_new_node, client_consensus): - """ - 锁仓账户委托基金会节点 - :param client_new_node: - :param client_consensus: - :return: - """ - client = client_new_node - economic = client.economic - address2 = create_free_pledge(client, economic) - # Application for Commission - result = client_consensus.delegate.delegate(1, address2) - assert_code(result, 301107) - - -@pytest.mark.P1 -def test_LS_EV_004(client_new_node): - """ - 锁仓账户委托非候选节点(锁定期) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account - pledge_acount = von_amount(economic.create_staking_limit, 2) - lock_acount = node.web3.toWei(1000, 'ether') - pledge_address, lock_address = create_lock_release_amount(client, pledge_acount, lock_acount) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Waiting for the end of the settlement - economic.wait_settlement(node) - # create Restricting Plan - plan = [{'Epoch': 1, 'Amount': economic.delegate_limit * 100}] - result = client.restricting.createRestrictingPlan(lock_address, plan, pledge_address) - assert_code(result, 0) - # Application for Commission - result = client.delegate.delegate(1, lock_address) - assert_code(result, 0) - # view Restricting Plan - restricting_info = client.ppos.getRestrictingInfo(lock_address) - log.info("restricting info: {}".format(restricting_info)) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['Pledge'] == economic.delegate_limit, 'ErrMsg: restricting Pledge amount {}'.format( - info['Pledge']) - - -@pytest.mark.P1 -def test_LS_EV_005(client_new_node): - """ - 锁仓账户委托金额小于最低委托金 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - address2 = create_free_pledge(client, economic) - # Application for Commission - delegate_amount = von_amount(economic.delegate_limit, 0.8) - result = client.delegate.delegate(1, address2, amount=delegate_amount) - assert_code(result, 301105) - - -@pytest.mark.P1 -def test_LS_EV_006(client_new_node): - """ - 有锁仓可用金额,但是账户余额为0的情况下申请委托 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - status = True - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - address1, address2 = create_lock_release_amount(client, amount1, 0) - # create Restricting Plan - plan = [{'Epoch': 1, 'Amount': economic.delegate_limit * 100}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - try: - # Application for Commission - client.delegate.delegate(1, address2) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg:Transfer result {}".format(status) - - -@pytest.mark.P1 -def test_LS_EV_007(client_new_node): - """ - 创建计划委托-锁仓计划委托金额<0 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - address2 = create_free_pledge(client, economic) - status = True - try: - # Application for Commission - # delegate_amount = von_amount(economic.delegate_limit, -8) - result = client.delegate.delegate(1, address2, amount=-8) - log.info("result: {}".format(result)) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg:Transfer result {}".format(status) - - -@pytest.mark.P1 -def test_LS_EV_008(client_new_node): - """ - 创建计划委托-锁仓计划委托金额=0 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - address2 = create_free_pledge(client, economic) - # Application for Commission - result = client.delegate.delegate(1, address2, amount=0) - assert_code(result, 301105) - - -def create_delegation_information(client, economic, node, base): - address2 = create_free_pledge(client, economic) - # Application for Commission - delegate_amount = von_amount(economic.delegate_limit, base) - result = client.delegate.delegate(1, address2, amount=delegate_amount) - assert_code(result, 0) - # view restricting info - restricting_info = client.ppos.getRestrictingInfo(address2) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['Pledge'] == delegate_amount, 'ErrMsg: restricting Pledge amount {}'.format(info['Pledge']) - # get Pledge node information - candidate_info = client.ppos.getCandidateInfo(node.node_id) - info = candidate_info['Ret'] - staking_blocknum = info['StakingBlockNum'] - return address2, delegate_amount, staking_blocknum - - -@pytest.mark.P2 -def test_LS_EV_009(client_new_node): - """ - 锁仓账户发起委托之后赎回部分委托验证(犹豫期) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create delegation information - address2, delegate_amount, staking_blocknum = create_delegation_information(client, economic, node, 10) - # withdrew delegate - redemption_amount = von_amount(economic.delegate_limit, 5) - result = client.delegate.withdrew_delegate(staking_blocknum, address2, amount=redemption_amount) - assert_code(result, 0) - # view restricting info again - restricting_info = client.ppos.getRestrictingInfo(address2) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['Pledge'] == delegate_amount - redemption_amount, 'ErrMsg: restricting Pledge amount {}'.format( - info['Pledge']) - - -@pytest.mark.P2 -def test_LS_EV_010(client_new_node): - """ - 锁仓账户发起委托之后赎回全部委托验证(犹豫期) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create delegation information - address2, delegate_amount, staking_blocknum = create_delegation_information(client, economic, node, 10) - # withdrew delegate - redemption_amount = von_amount(economic.delegate_limit, 10) - client.delegate.withdrew_delegate(staking_blocknum, address2, amount=redemption_amount) - # view restricting info again - restricting_info = client.ppos.getRestrictingInfo(address2) - assert_code(restricting_info, 0) - info = restricting_info['Ret'] - assert info['Pledge'] == delegate_amount - redemption_amount, 'ErrMsg: restricting Pledge amount {}'.format( - info['Pledge']) - - -@pytest.mark.P2 -def test_LS_EV_011(client_new_node): - """ - 锁仓账户发起委托之后赎回委托验证(锁定期) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create delegation information - address2, delegate_amount, staking_blocknum = create_delegation_information(client, economic, node, 10) - # Waiting for the end of the settlement cycle - economic.wait_settlement(node) - # withdrew delegate - redemption_amount = von_amount(economic.delegate_limit, 10) - client.delegate.withdrew_delegate(staking_blocknum, address2, amount=redemption_amount) - # view restricting info again - restricting_info = client.ppos.getRestrictingInfo(address2) - assert_code(restricting_info, 304005) - - -@pytest.mark.P1 -def test_LS_EV_012(client_new_node): - """ - 锁仓赎回委托金额小于委托最低门槛 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create delegation information - address2, delegate_amount, staking_blocknum = create_delegation_information(client, economic, node, 10) - # withdrew delegate - redemption_amount = von_amount(economic.delegate_limit, 0.8) - result = client.delegate.withdrew_delegate(staking_blocknum, address2, amount=redemption_amount) - assert_code(result, 301108) - - -@pytest.mark.P1 -def test_LS_EV_013(client_new_node): - """ - 锁仓赎回委托后剩余委托小于委托最低门槛 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create delegation information - address2, delegate_amount, staking_blocknum = create_delegation_information(client, economic, node, 2) - # view restricting plan information - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan information: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['Pledge'] == von_amount(economic.delegate_limit, 2), 'ErrMsg: restricting Pledge amount {}'.format( - info['Pledge']) - # withdrew delegate - redemption_amount = von_amount(economic.delegate_limit, 1.5) - result = client.delegate.withdrew_delegate(staking_blocknum, address2, amount=redemption_amount) - assert_code(result, 0) - # view restricting plan information again - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan information: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['Pledge'] == 0, 'ErrMsg: restricting Pledge amount {}'.format(info['Pledge']) - - -@pytest.mark.P2 -def test_LS_EV_014(clients_new_node, reset_environment): - """ - 锁仓账户委托节点状态异常验证人(节点已挂) - :param clients_new_node: - :param reset_environment: - :return: - """ - client1 = clients_new_node[0] - log.info("Current linked client1: {}".format(client1.node.node_mark)) - client2 = clients_new_node[1] - log.info("Current linked client2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # create free pledge - address2 = create_free_pledge(client1, economic) - # stop pledge node - node.stop() - # Wait for the consensus round to end - client2.economic.wait_consensus(client2.node) - # Application for Commission - result = client2.delegate.delegate(1, address2, node_id=node.node_id) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_LS_EV_015(client_new_node): - """ - 创建计划委托-锁仓账户余额为0的情况下申请委托 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - status = True - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - address1, address2 = create_lock_release_amount(client, amount1, 0) - # create Restricting Plan - plan = [{'Epoch': 1, 'Amount': economic.delegate_limit * 100}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - try: - # Application for Commission - client.delegate.delegate(1, address2) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg:Transfer result {}".format(status) - - -@pytest.mark.P1 -def test_LS_EV_016(client_new_node): - """ - 创建计划退回委托-锁仓计划退回委托金额<0 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - status = True - # create delegation information - address2, delegate_amount, staking_blocknum = create_delegation_information(client, economic, node, 10) - try: - # withdrew delegate - client.delegate.withdrew_delegate(staking_blocknum, address2, amount=-100) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg:Transfer result {}".format(status) - - -@pytest.mark.P1 -def test_LS_EV_017(client_new_node): - """ - 创建计划退回委托-锁仓计划退回委托金额=0 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create delegation information - address2, delegate_amount, staking_blocknum = create_delegation_information(client, economic, node, 10) - # withdrew delegate - result = client.delegate.withdrew_delegate(staking_blocknum, address2, amount=0) - assert_code(result, 301108) - - -@pytest.mark.P1 -def test_LS_EV_018(client_new_node): - """ - 创建计划退回委托-锁仓计划退回委托金额>锁仓委托金额 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create delegation information - address2, delegate_amount, staking_blocknum = create_delegation_information(client, economic, node, 10) - # withdrew delegate - redemption_amount = von_amount(economic.delegate_limit, 11) - result = client.delegate.withdrew_delegate(staking_blocknum, address2, amount=redemption_amount) - assert_code(result, 301113) - - -@pytest.mark.P1 -def test_LS_EV_019(client_new_node): - """ - 创建计划退回委托-欠释放金额>赎回委托金额 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address2, delegate_amount, staking_blocknum = create_delegation_information(client, economic, node, 10) - # Waiting for the end of the settlement cycle - economic.wait_settlement(node) - # view restricting plan informtion - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == von_amount(economic.delegate_limit, 10), "rrMsg: restricting debt amount {}".format( - info['debt']) - # withdrew delegate - redemption_amount = von_amount(economic.delegate_limit, 5) - result = client.delegate.withdrew_delegate(staking_blocknum, address2, amount=redemption_amount) - assert_code(result, 0) - # view restricting plan informtion again - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == von_amount(economic.delegate_limit, - 10) - redemption_amount, "rrMsg: restricting debt amount {}".format(info['debt']) - - -@pytest.mark.P1 -def test_LS_EV_020(client_new_node): - """ - 创建计划退回委托-欠释放金额=撤销委托金额 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address2, delegate_amount, staking_blocknum = create_delegation_information(client, economic, node, 10) - # Waiting for the end of the settlement cycle - economic.wait_settlement(node) - # view restricting plan informtion - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == von_amount(economic.delegate_limit, 10), "rrMsg: restricting debt amount {}".format( - info['debt']) - # withdrew delegate - redemption_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.withdrew_delegate(staking_blocknum, address2, amount=redemption_amount) - assert_code(result, 0) - # view restricting plan informtion again - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan informtion: {}".format(restricting_info)) - assert_code(restricting_info, 304005) - - -@pytest.mark.P1 -def test_LS_EV_021(client_new_node): - """ - 创建计划退回委托-欠释放金额<撤销委托金额 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address2, delegate_amount, staking_blocknum = create_delegation_information(client, economic, node, 5) - # Waiting for the end of the settlement cycle - economic.wait_settlement(node) - # view restricting plan informtion - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == von_amount(economic.delegate_limit, 5), "rrMsg: restricting debt amount {}".format( - info['debt']) - # Application for Commission - delegate_amount2 = von_amount(economic.delegate_limit, 5) - result = client.delegate.delegate(0, address2, amount=delegate_amount2) - assert_code(result, 0) - # withdrew delegate - redemption_amount = von_amount(economic.delegate_limit, 10) - result = client.delegate.withdrew_delegate(staking_blocknum, address2, amount=redemption_amount) - assert_code(result, 0) - # view restricting plan informtion again - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan informtion: {}".format(restricting_info)) - assert_code(restricting_info, 304005) - - -@pytest.mark.P1 -def test_LS_EV_022(client_new_node): - """ - 创建计划退回委托-锁仓账户余额不足的情况下申请退回委托 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - status = True - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = node.web3.toWei(0.000006, 'ether') - address1, address2 = create_lock_release_amount(client, amount1, amount2) - # create Restricting Plan - plan = [{'Epoch': 1, 'Amount': economic.delegate_limit * 100}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - # Application for Commission - result = client.delegate.delegate(1, address2) - assert_code(result, 0) - try: - # get Pledge node information - candidate_info = client.ppos.getCandidateInfo(node.node_id) - info = candidate_info['Ret'] - staking_blocknum = info['StakingBlockNum'] - # withdrew delegate - client.delegate.withdrew_delegate(staking_blocknum, address2) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg:Transfer result {}".format(status) - - -def create_restricting_increase_staking(client, economic, node): - # create account - address1, _ = economic.account.generate_account(node.web3, economic.create_staking_limit) - address2, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create Restricting Plan1 - # add_staking_amount = von_amount(economic.add_staking_limit, 10) - plan = [{'Epoch': 1, 'Amount': economic.add_staking_limit * 100}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan informtion: {}".format(restricting_info)) - # create staking - result = client.staking.create_staking(0, address2, address2) - assert_code(result, 0) - return address2 - - -@pytest.mark.P1 -def test_LS_IV_001(client_new_node): - """ - 锁仓账户申请质押后用锁仓余额进行增持质押 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address2 = create_restricting_increase_staking(client, economic, node) - # Create pledge of increasing holding - result = client.staking.increase_staking(1, address2) - assert_code(result, 0) - - -@pytest.mark.P1 -def test_LS_IV_002(client_new_node): - """ - 有锁仓可用金额,但是账户gas不足的情况下申请增持 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - status = True - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - address2, _ = economic.account.generate_account(node.web3, - economic.create_staking_limit + node.web3.toWei(0.000009, 'ether')) - # create Restricting Plan - # add_staking_amount = von_amount(economic.add_staking_limit, 10) - plan = [{'Epoch': 1, 'Amount': economic.add_staking_limit * 100}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan informtion: {}".format(restricting_info)) - # create staking - result = client.staking.create_staking(0, address2, address2) - assert_code(result, 0) - try: - # Create pledge of increasing holding - client.staking.increase_staking(1, address2) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg:Transfer result {}".format(status) - - -@pytest.mark.P1 -def test_LS_IV_003(clients_new_node, reset_environment): - """ - 锁仓账户增持状态异常验证人(节点已挂) - :param clients_new_node: - :param reset_environment: - :return: - """ - client1 = clients_new_node[0] - log.info("Current linked client1: {}".format(client1.node.node_mark)) - client2 = clients_new_node[1] - log.info("Current linked client2: {}".format(client2.node.node_mark)) - economic = client1.economic - node = client1.node - # Create restricting plan and free pledge - address2 = create_restricting_increase_staking(client1, economic, node) - # stop pledge node - node.stop() - # Wait for the consensus round to end - client2.economic.wait_consensus(client2.node) - # Create pledge of increasing holding - result = client2.staking.increase_staking(1, address2, node_id=node.node_id) - assert_code(result, 0) - - -def restricting_plan_verification_pledge(client, economic, node): - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create Restricting Plan - amount = economic.create_staking_limit - plan = [{'Epoch': 1, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - return address1 - - -@pytest.mark.P2 -def test_LS_CSV_001(client_new_node): - """ - 创建计划质押-锁仓账户和释放账户是同一个账户账户进行质押(质押金额小于锁仓金额) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # Create restricting plan - address1 = restricting_plan_verification_pledge(client, economic, node) - # create staking - staking_amount = economic.create_staking_limit - result = client.staking.create_staking(1, address1, address1, amount=staking_amount) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_LS_CSV_002(client_new_node): - """ - 创建计划质押-锁仓账户和释放账户是同一个账户账户进行质押(质押金额大于锁仓金额) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # Create restricting plan - address1 = restricting_plan_verification_pledge(client, economic, node) - # create staking - staking_amount = von_amount(economic.create_staking_limit, 2) - result = client.staking.create_staking(0, address1, address1, amount=staking_amount) - assert_code(result, 301111) - - -def restricting_plan_verification_pledge2(client, economic, node): - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - address2, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create Restricting Plan - amount = economic.create_staking_limit - plan = [{'Epoch': 1, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - return address2 - - -@pytest.mark.P2 -def test_LS_CSV_003(client_new_node): - """ - 创建计划质押-锁仓账户和释放账户不同时进行质押(质押金额小于等于锁仓金额) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # Create restricting plan - address2 = restricting_plan_verification_pledge2(client, economic, node) - # create staking - staking_amount = economic.create_staking_limit - result = client.staking.create_staking(1, address2, address2, amount=staking_amount) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_LS_CSV_004(client_new_node): - """ - 创建计划质押-锁仓账户和释放账户不同时进行质押(质押金额大于锁仓金额) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # Create restricting plan - address2 = restricting_plan_verification_pledge2(client, economic, node) - # create staking - staking_amount = von_amount(economic.create_staking_limit, 2) - result = client.staking.create_staking(1, address2, address2, amount=staking_amount) - assert_code(result, 304013) - - -def restricting_plan_verification_add_staking(client, economic, node): - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create Restricting Plan - amount = von_amount(economic.create_staking_limit, 2) - plan = [{'Epoch': 1, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(1, address1, address1) - assert_code(result, 0) - return address1 - - -@pytest.mark.P2 -def test_LS_CSV_005(client_new_node): - """ - 锁仓账户和释放账户是同一个账户账户进行增持质押(质押金额小于锁仓金额) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan staking - address1 = restricting_plan_verification_add_staking(client, economic, node) - # Additional pledge - increase_amount = von_amount(economic.delegate_limit, 5) - result = client.staking.increase_staking(1, address1, amount=increase_amount) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_LS_CSV_006(client_new_node): - """ - 锁仓账户和释放账户是同一个账户账户进行增持质押(质押金额大于锁仓金额) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan staking - address1 = restricting_plan_verification_add_staking(client, economic, node) - # Additional pledge - increase_amount = von_amount(economic.create_staking_limit, 2) - result = client.staking.increase_staking(1, address1, amount=increase_amount) - assert_code(result, 304013) - - -def restricting_plan_verification_add_staking2(client, economic, node): - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - address2, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create Restricting Plan - amount = von_amount(economic.add_staking_limit, 10) - plan = [{'Epoch': 1, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(0, address2, address2) - assert_code(result, 0) - return address2 - - -@pytest.mark.P2 -def test_LS_CSV_007(client_new_node): - """ - 锁仓账户和释放账户不同时进行质押(增持质押金额小于锁仓金额) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan staking - address2 = restricting_plan_verification_add_staking2(client, economic, node) - # Additional pledge - increase_amount = von_amount(economic.add_staking_limit, 5) - result = client.staking.increase_staking(1, address2, amount=increase_amount) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_LS_CSV_008(client_new_node): - """ - 锁仓账户和释放账户不同时进行质押(增持质押金额大于锁仓金额) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan staking - address2 = restricting_plan_verification_add_staking2(client, economic, node) - # Additional pledge - increase_amount = von_amount(economic.add_staking_limit, 15) - result = client.staking.increase_staking(1, address2, amount=increase_amount) - assert_code(result, 304013) - - -def restricting_plan_verification_delegate(client, economic, node): - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - address2, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create Restricting Plan - amount = von_amount(economic.delegate_limit, 10) - plan = [{'Epoch': 1, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address2, plan, address1) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - return address2 - - -@pytest.mark.P2 -def test_LS_CSV_009(client_new_node): - """ - 锁仓账户和释放账户不是同一个账号进行委托(委托金额小于锁仓金额) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan staking - address2 = restricting_plan_verification_delegate(client, economic, node) - # Additional pledge - delegate_amount = von_amount(economic.delegate_limit, 5) - result = client.delegate.delegate(1, address2, amount=delegate_amount) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_LS_CSV_010(client_new_node): - """ - 锁仓账户和释放账户不是同一个账号进行委托(委托金额大于锁仓金额) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan staking - address2 = restricting_plan_verification_delegate(client, economic, node) - # Additional pledge - delegate_amount = von_amount(economic.delegate_limit, 15) - result = client.delegate.delegate(1, address2, amount=delegate_amount) - assert_code(result, 304013) - - -@pytest.mark.P2 -def test_LS_CSV_011(client_new_node): - """ - 锁仓账号在犹豫期申请质押后,在锁定期申请增持后,在申请退回质押金 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create Restricting Plan - amount = von_amount(economic.create_staking_limit, 2) - plan = [{'Epoch': 2, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(1, address1, address1) - assert_code(result, 0) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # Additional pledge - result = client.staking.increase_staking(1, address1) - assert_code(result, 0) - balance = node.eth.getBalance(address1) - log.info("Account address: {} balance: {}".format(address1, balance)) - # Application for return of pledge - result = client.staking.withdrew_staking(address1) - assert_code(result, 0) - balance1 = node.eth.getBalance(address1) - log.info("Account address: {} balance: {}".format(address1, balance1)) - # Waiting for the end of the 2 settlement period - economic.wait_settlement(node, 2) - balance2 = node.eth.getBalance(address1) - log.info("Account address: {} balance: {}".format(address1, balance2)) - assert balance2 - balance1 > economic.create_staking_limit, "errMsg: Account address: {} balance: {}".format( - address1, balance2) - - -@pytest.mark.P2 -def test_LS_CSV_012(client_new_node): - """ - 锁仓账户退回质押金中,申请委托节点 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan staking - address1 = restricting_plan_verification_pledge(client, economic, node) - # create staking - result = client.staking.create_staking(1, address1, address1) - assert_code(result, 0) - # create account - address2, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # Application for return of pledge - result = client.staking.withdrew_staking(address1) - assert_code(result, 0) - # create Restricting Plan - amount = von_amount(economic.delegate_limit, 10) - plan = [{'Epoch': 1, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address2, plan, address2) - assert_code(result, 0) - # Free amount Entrust node - result = client.delegate.delegate(0, address2) - assert_code(result, 301103) - # Restricting amount Entrust node - result = client.delegate.delegate(1, address2) - assert_code(result, 301103) - - -@pytest.mark.P2 -def test_LS_CSV_013(client_new_node): - """ - 锁仓账户退回质押金中,申请增持质押 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan staking - address1 = restricting_plan_verification_add_staking(client, economic, node) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # Application for return of pledge - result = client.staking.withdrew_staking(address1) - assert_code(result, 0) - # create Restricting Plan - amount = von_amount(economic.add_staking_limit, 5) - plan = [{'Epoch': 1, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - # Restricting amount Additional pledge - result = client.staking.increase_staking(1, address1) - assert_code(result, 301103) - # Free amount Additional pledge - result = client.staking.increase_staking(0, address1) - assert_code(result, 301103) - - -def steps_of_returning_pledge(client, economic, node): - # create restricting plan staking - address1 = restricting_plan_verification_pledge(client, economic, node) - # create staking - result = client.staking.create_staking(1, address1, address1) - assert_code(result, 0) - # create account - address2, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # Application for return of pledge - result = client.staking.withdrew_staking(address1) - assert_code(result, 0) - # Waiting for the end of the 2 settlement period - economic.wait_settlement(node, 2) - log.info("Pledge node information: {}".format(client.ppos.getCandidateInfo(node.node_id))) - return address1, address2 - - -@pytest.mark.P2 -def test_LS_CSV_014(client_new_node): - """ - 锁仓账户退回质押金后,重新申请质押节点 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # After returning the deposit - address1, address2 = steps_of_returning_pledge(client, economic, node) - # create Restricting Plan - amount = economic.create_staking_limit - plan = [{'Epoch': 1, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - restricting_info = client.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - # create staking - result = client.staking.create_staking(1, address1, address1) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_LS_CSV_015(client_new_node): - """ - 锁仓账户退回质押金后,重新申请委托节点 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # After returning the deposit - address1, address2 = steps_of_returning_pledge(client, economic, node) - # create Restricting Plan - amount = von_amount(economic.delegate_limit, 10) - plan = [{'Epoch': 1, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address2, plan, address2) - assert_code(result, 0) - # Free amount Entrust node - result = client.delegate.delegate(0, address2) - assert_code(result, 301102) - # Restricting amount Entrust node - result = client.delegate.delegate(1, address2) - assert_code(result, 301102) - - -@pytest.mark.P2 -def test_LS_CSV_016(client_new_node): - """ - 锁仓账户退回质押金后,重新申请增持质押 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # After returning the deposit - address1, address2 = steps_of_returning_pledge(client, economic, node) - # create Restricting Plan - amount = von_amount(economic.add_staking_limit, 5) - plan = [{'Epoch': 1, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - # Restricting amount Additional pledge - result = client.staking.increase_staking(1, address1) - assert_code(result, 301102) - # Free amount Additional pledge - result = client.staking.increase_staking(0, address1) - assert_code(result, 301102) - - -@pytest.mark.P1 -@pytest.mark.parametrize('amount', [79, 80, 100]) -def test_LS_UPV_020(client_new_node, amount): - """ - 锁仓参数的有效性验证:epoch 1, amount 80 - :param client_new_node: - :return: - """ - clinet = client_new_node - economic = clinet.economic - node = clinet.economic - minimum_release = economic.genesis.economicModel.restricting.minimum_release - lock_amount = Web3.toWei(amount, 'ether') - result, address, benifit_address = create_restrictingplan(client_new_node, 1, amount) - if lock_amount < minimum_release: - assert_code(result, 304014) - else: - assert_code(result, 0) diff --git a/cases/tests/ppos/test_punishment_related.py b/cases/tests/ppos/test_punishment_related.py deleted file mode 100644 index c8dad99a87..0000000000 --- a/cases/tests/ppos/test_punishment_related.py +++ /dev/null @@ -1,1225 +0,0 @@ -import time -import pytest -import rlp - -from common.key import mock_duplicate_sign, generate_key -from common.log import log -from tests.lib import ( - EconomicConfig, - StakingConfig, - check_node_in_list, - assert_code, von_amount, - get_governable_parameter_value, - Client, - update_param_by_dict, - get_param_by_dict, - get_the_dynamic_parameter_gas_fee - ) - - -def penalty_proportion_and_income(client): - # view Pledge amount - candidate_info1 = client.ppos.getCandidateInfo(client.node.node_id) - pledge_amount1 = candidate_info1['Ret']['Released'] - # view Parameter value before treatment - penalty_ratio = get_governable_parameter_value(client, 'slashFractionDuplicateSign') - proportion_ratio = get_governable_parameter_value(client, 'duplicateSignReportReward') - return pledge_amount1, int(penalty_ratio), int(proportion_ratio) - - -def verification_duplicate_sign(client, evidence_type, reporting_type, report_address, report_block): - if report_block < 41: - report_block = 41 - # Obtain evidence of violation - report_information = mock_duplicate_sign(evidence_type, client.node.nodekey, - client.node.blsprikey, - report_block) - log.info("Report information: {}".format(report_information)) - result = client.duplicatesign.reportDuplicateSign(reporting_type, report_information, report_address) - return result - - -@pytest.mark.P0 -@pytest.mark.parametrize('repor_type', [1, 2, 3]) -def test_VP_PV_001_to_003(client_consensus, repor_type, reset_environment): - """ - 举报验证人区块双签:VP_PV_001 prepareBlock类型 - VP_PV_002 prepareVote类型 - VP_PV_003 viewChange类型 - :param client_consensus: - :param repor_type: - :param reset_environment: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - client.economic.env.deploy_all() - # Obtain penalty proportion and income - pledge_amount1, penalty_ratio, proportion_ratio = penalty_proportion_and_income(client) - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # view report amount - report_amount1 = node.eth.getBalance(report_address) - log.info("report account amount:{} ".format(report_amount1)) - # view Incentive pool account - incentive_pool_account1 = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("incentive pool account1 amount:{} ".format(incentive_pool_account1)) - # Wait for the consensus round to end - economic.wait_consensus(node) - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - result = verification_duplicate_sign(client, repor_type, repor_type, report_address, current_block) - assert_code(result, 0) - # view Amount of penalty - proportion_reward, incentive_pool_reward = economic.get_report_reward(pledge_amount1, penalty_ratio, - proportion_ratio) - # view report amount again - report_amount2 = node.eth.getBalance(report_address) - log.info("report account amount:{} ".format(report_amount2)) - # view Incentive pool account again - incentive_pool_account2 = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("incentive pool account1 amount:{} ".format(incentive_pool_account2)) - # assert account reward - assert report_amount1 + proportion_reward - report_amount2 < node.web3.toWei(1,'ether'), "ErrMsg:report amount {}".format( - report_amount2) - assert incentive_pool_account2 == incentive_pool_account1 + incentive_pool_reward + (report_amount1 + proportion_reward - report_amount2), "ErrMsg:Incentive pool account {}".format( - incentive_pool_account2) - - -@pytest.fixture(scope='class') -def initial_report(global_test_env): - """ - Report a non consensus node prepareBlock - :param global_test_env: - :return: - """ - cfg = StakingConfig("11111", "faker", "www.baidu.com", "how much") - clients_consensus = [] - consensus_node_obj_list = global_test_env.consensus_node_list - for node_obj in consensus_node_obj_list: - clients_consensus.append(Client(global_test_env, node_obj, cfg)) - client = clients_consensus[0] - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Wait for the consensus round to end - economic.wait_consensus(node, 2) - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - result = verification_duplicate_sign(client, 1, 1, report_address, current_block) - assert_code(result, 0) - yield clients_consensus, economic, node, report_address, current_block - log.info("case execution completed") - global_test_env.deploy_all() - time.sleep(3) - - -class TestMultipleReports: - @pytest.mark.P1 - def test_VP_PV_004(self, initial_report): - """ - 举报双签-同一验证人同一块高不同类型 - :param initial_report: - :return: - """ - clients_consensus, economic, node, report_address, current_block = initial_report - # duplicate sign - result = verification_duplicate_sign(clients_consensus[0], 2, 2, report_address, current_block) - assert_code(result, 0) - - @pytest.mark.P1 - def test_VP_PV_005(self, initial_report): - """ - 举报双签-同一验证人不同块高同一类型 - :param initial_report: - :return: - """ - clients_consensus, economic, node, report_address, current_block = initial_report - # duplicate sign - result = verification_duplicate_sign(clients_consensus[0], 1, 1, report_address, current_block - 1) - assert_code(result, 0) - - @pytest.mark.P1 - def test_VP_PV_006(self, initial_report): - """ - 举报双签-同一验证人不同块高不同类型 - :param initial_report: - :return: - """ - clients_consensus, economic, node, report_address, current_block = initial_report - # duplicate sign - result = verification_duplicate_sign(clients_consensus[0], 2, 2, report_address, current_block - 1) - assert_code(result, 0) - - @pytest.mark.P1 - def test_VP_PV_007(self, initial_report): - """ - 举报双签-不同验证人同一块高同一类型 - :param initial_report: - :return: - """ - clients_consensus, economic, node, report_address, current_block = initial_report - # create account - report_address2, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # duplicate sign - result = verification_duplicate_sign(clients_consensus[1], 1, 1, report_address, current_block) - assert_code(result, 0) - - @pytest.mark.P1 - def test_VP_PV_008(self, initial_report): - """ - 举报双签-不同验证人同一块高不同类型 - :param initial_report: - :return: - """ - clients_consensus, economic, node, report_address, current_block = initial_report - # create account - report_address2, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # duplicate sign - result = verification_duplicate_sign(clients_consensus[1], 2, 2, report_address, current_block) - assert_code(result, 0) - - @pytest.mark.P1 - def test_VP_PV_009(self, initial_report): - """ - 举报双签-不同验证人不同块高不同类型 - :param initial_report: - :return: - """ - clients_consensus, economic, node, report_address, current_block = initial_report - # create account - report_address2, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # duplicate sign - result = verification_duplicate_sign(clients_consensus[1], 2, 2, report_address, current_block - 1) - assert_code(result, 0) - - @pytest.mark.P1 - def test_VP_PR_001(self, initial_report): - """ - 重复举报-同一举报人 - :param initial_report: - :return: - """ - clients_consensus, economic, node, report_address, current_block = initial_report - # duplicate sign - result = verification_duplicate_sign(clients_consensus[0], 1, 1, report_address, current_block) - assert_code(result, 303001) - - @pytest.mark.P1 - def test_VP_PR_002(self, initial_report): - """ - 重复举报 - 不同举报人 - :param initial_report: - :return: - """ - clients_consensus, economic, node, report_address, current_block = initial_report - # create account - report_address2, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # duplicate sign - result = verification_duplicate_sign(clients_consensus[0], 1, 1, report_address2, current_block) - assert_code(result, 303001) - - -def obtaining_evidence_information(economic, node): - # Wait for the consensus round to end - economic.wait_consensus(node, 1) - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - if current_block < 41: - current_block = 41 - # Obtain evidence of violation - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, current_block) - log.info("Report information: {}".format(report_information)) - return report_information, current_block - - -@pytest.mark.P1 -@pytest.mark.parametrize('first_key, second_key, value', - [('epoch', None, 1), ('viewNumber', None, 1), ('blockIndex', None, 1), - ('validateNode', 'index', 1)]) -def test_VP_PV_010_011_014_015(client_consensus, first_key, second_key, value): - """ - VP_PV_010:举报双签-双签证据epoch不一致 - VP_PV_011:举报双签-双签证据view_number不一致 - VP_PV_014:举报双签-双签证据block_index不一致 - VP_PV_015:举报双签-双签证据validate_node-index不一致 - :param client_consensus: - :param first_key: - :param second_key: - :param value: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Obtain information of report evidence - report_information, current_block = obtaining_evidence_information(economic, node) - # Modification of evidence - jsondata = update_param_by_dict(report_information, 'prepareA', first_key, second_key, value) - log.info("Evidence information: {}".format(jsondata)) - # Report verifier Duplicate Sign - result = client.duplicatesign.reportDuplicateSign(1, jsondata, report_address) - return result - - -@pytest.mark.P1 -def test_VP_PV_012(client_consensus): - """ - 举报双签-双签证据block_number不一致 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Obtain information of report evidence - report_information, current_block = obtaining_evidence_information(economic, node) - # Modification of evidence - jsondata = update_param_by_dict(report_information, 'prepareA', 'blockNumber', None, current_block - 1) - log.info("Evidence information: {}".format(jsondata)) - # Report verifier Duplicate Sign - result = client.duplicatesign.reportDuplicateSign(1, jsondata, report_address) - assert_code(result, 303000) - - -@pytest.mark.P1 -def test_VP_PV_013(client_consensus): - """ - 举报双签-双签证据block_hash一致 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Obtain information of report evidence - report_information, current_block = obtaining_evidence_information(economic, node) - # Modification of evidence - evidence_parameter = get_param_by_dict(report_information, 'prepareB', 'blockHash') - jsondata = update_param_by_dict(report_information, 'prepareA', 'blockHash', None, evidence_parameter) - log.info("Evidence information: {}".format(jsondata)) - # Report verifier Duplicate Sign - result = client.duplicatesign.reportDuplicateSign(1, jsondata, report_address) - assert_code(result, 303000) - - -@pytest.mark.P1 -def test_VP_PV_016(client_consensus): - """ - 举报双签-双签证据address不一致 - :param client_consensus: - :return: - """ - pass -# client = client_consensus -# economic = client.economic -# node = client.node -# # create report address -# report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) -# # Obtain information of report evidence -# report_information, current_block = obtaining_evidence_information(economic, node) -# # Modification of evidence -# jsondata = update_param_by_dict(report_information, 'prepareA', 'validateNode', 'address', -# economic.account.account_with_money['address']) -# log.info("Evidence information: {}".format(jsondata)) -# # Report verifier Duplicate Sign -# result = client.duplicatesign.reportDuplicateSign(1, jsondata, report_address) -# assert_code(result, 303000) - - -@pytest.mark.P1 -def test_VP_PV_017(clients_consensus): - """ - 举报双签-NodeID不一致举报双签 - :param clients_consensus: - :return: - """ - client = clients_consensus[0] - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Obtain information of report evidence - report_information, current_block = obtaining_evidence_information(economic, node) - # Modification of evidence - jsondata = update_param_by_dict(report_information, 'prepareA', 'validateNode', 'nodeId', - clients_consensus[1].node.node_id) - log.info("Evidence information: {}".format(jsondata)) - # Report verifier Duplicate Sign - result = client.duplicatesign.reportDuplicateSign(1, jsondata, report_address) - assert_code(result, 303000) - - -@pytest.mark.P1 -def test_VP_PV_018(clients_consensus): - """ - 举报双签-blsPubKey不一致举报双签 - :param clients_consensus: - :return: - """ - client = clients_consensus[0] - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Obtain information of report evidence - report_information, current_block = obtaining_evidence_information(economic, node) - # Modification of evidence - jsondata = update_param_by_dict(report_information, 'prepareA', 'validateNode', 'blsPubKey', - clients_consensus[1].node.blspubkey) - log.info("Evidence information: {}".format(jsondata)) - # Report verifier Duplicate Sign - result = client.duplicatesign.reportDuplicateSign(1, jsondata, report_address) - assert_code(result, 303000) - - -@pytest.mark.P1 -def test_VP_PV_019(clients_consensus): - """ - 举报双签-signature一致举报双签 - :param clients_consensus: - :return: - """ - client = clients_consensus[0] - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Obtain information of report evidence - report_information, current_block = obtaining_evidence_information(economic, node) - # Modification of evidence - evidence_parameter = get_param_by_dict(report_information, 'prepareB', 'signature') - jsondata = update_param_by_dict(report_information, 'prepareA', 'signature', None, evidence_parameter) - log.info("Evidence information: {}".format(jsondata)) - # Report verifier Duplicate Sign - result = client.duplicatesign.reportDuplicateSign(1, jsondata, report_address) - assert_code(result, 303000) - - -@pytest.mark.P1 -@pytest.mark.parametrize("value", [{"epoch": 1}, {"view_number": 1}, {"block_index": 1}, {"index": 1}]) -def test_VP_PV_020_to_023(clients_consensus, value): - """ - VP_PV_020:举报双签-伪造合法signature情况下伪造epoch - VP_PV_021:举报双签-伪造合法signature情况下伪造viewNumber - VP_PV_022:举报双签-伪造合法signature情况下伪造blockIndex - VP_PV_023:举报双签-伪造合法signature情况下伪造index - :param clients_consensus: - :return: - """ - client = clients_consensus[0] - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Obtain information of report evidence - report_information, current_block = obtaining_evidence_information(economic, node) - # Obtain evidence of violation - report_information1 = mock_duplicate_sign(1, node.nodekey, node.blsprikey, current_block, **value) - log.info("Report information: {}".format(report_information)) - # Modification of evidence - evidence_parameter = get_param_by_dict(report_information1, 'prepareB', 'signature') - jsondata = update_param_by_dict(report_information, 'prepareA', 'signature', None, evidence_parameter) - log.info("Evidence information: {}".format(jsondata)) - # Report verifier Duplicate Sign - result = client.duplicatesign.reportDuplicateSign(1, jsondata, report_address) - assert_code(result, 303000) - - -@pytest.mark.P1 -def test_VP_PV_024(clients_consensus): - """ - 举报双签-伪造合法signature情况下伪造blockNumber - :param clients_consensus: - :return: - """ - client = clients_consensus[0] - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Obtain information of report evidence - report_information, current_block = obtaining_evidence_information(economic, node) - # Obtain evidence of violation - report_information1 = mock_duplicate_sign(1, node.nodekey, node.blsprikey, current_block + 1) - log.info("Report information: {}".format(report_information)) - # Modification of evidence - evidence_parameter = get_param_by_dict(report_information1, 'prepareB', 'signature') - jsondata = update_param_by_dict(report_information, 'prepareA', 'signature', None, evidence_parameter) - log.info("Evidence information: {}".format(jsondata)) - # Report verifier Duplicate Sign - result = client.duplicatesign.reportDuplicateSign(1, jsondata, report_address) - assert_code(result, 303000) - - -@pytest.mark.P1 -def test_VP_PV_025(client_consensus): - """ - 举报接口参数测试:举报人账户错误 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create nodekey - privatekey, _ = generate_key() - # Wait for the consensus round to end - economic.wait_consensus(node, 1) - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Obtain evidence of violation - report_information = mock_duplicate_sign(1, privatekey, node.blsprikey, current_block) - log.info("Report information: {}".format(report_information)) - # Report verifier Duplicate Sign - result = client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 303004) - - -@pytest.mark.P1 -def test_VP_PV_026(clients_consensus): - """ - 链存在的id,blskey不匹配 - :param clients_consensus: - :return: - """ - client = clients_consensus[0] - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Wait for the consensus round to end - economic.wait_consensus(node, 1) - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Obtain evidence of violation - report_information = mock_duplicate_sign(1, node.nodekey, clients_consensus[1].node.blsprikey, current_block) - log.info("Report information: {}".format(report_information)) - # Report verifier Duplicate Sign - result = client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 303007) - - -@pytest.mark.P1 -def test_VP_PV_027(client_new_node): - """ - 举报候选人 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create pledge address - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if not result: - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Report verifier Duplicate Sign - result = verification_duplicate_sign(client, 1, 1, report_address, current_block) - assert_code(result, 303009) - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P1 -def test_VP_PV_028(client_consensus): - """ - 举报有效期之前的双签行为 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Waiting for the end of the settlement cycle - economic.wait_settlement(node, 1) - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Obtain evidence of violation - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, 41) - log.info("Report information: {}".format(report_information)) - # Report verifier Duplicate Sign - result = client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 303003) - - -@pytest.mark.P1 -def test_VP_PV_028(client_consensus): - """ - 举报有效期之后的双签行为 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Obtain evidence of violation - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, 1000000) - log.info("Report information: {}".format(report_information)) - # Report verifier Duplicate Sign - result = client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 303002) - - -@pytest.mark.P2 -def test_VP_PV_030(client_consensus, reset_environment): - """ - 举报签名Gas费 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - client.economic.env.deploy_all() - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Obtain information of report evidence - report_information, current_block = obtaining_evidence_information(economic, node) - # Obtain penalty proportion and income - pledge_amount1, penalty_ratio, proportion_ratio = penalty_proportion_and_income(client) - # view Amount of penalty - proportion_reward, incentive_pool_reward = economic.get_report_reward(pledge_amount1, penalty_ratio, - proportion_ratio) - data = rlp.encode([rlp.encode(int(3000)), rlp.encode(1), rlp.encode(report_information)]) - dynamic_gas = get_the_dynamic_parameter_gas_fee(data) - gas_total = 21000 + 21000 + 21000 + 21000 + dynamic_gas - log.info("Call contract to create a lockout plan consumption contract:{}".format(gas_total)) - balance = node.eth.getBalance(report_address) - log.info("balance: {}".format(balance)) - # Report verifier - result = client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - balance1 = node.eth.getBalance(report_address) - log.info("balance1: {}".format(balance1)) - log.info("proportion reward: {}".format(proportion_reward)) - transaction_fees = gas_total * node.eth.gasPrice - assert balance + proportion_reward - balance1 == transaction_fees, "ErrMsg:transaction fees {}".format( - transaction_fees) - - -@pytest.mark.P1 -def test_VP_PV_031(client_consensus): - """ - 举报的gas费不足 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - status = True - # create report address - report_address, _ = economic.account.generate_account(node.web3, 0) - # Obtain information of report evidence - report_information, current_block = obtaining_evidence_information(economic, node) - try: - # Report verifier Duplicate Sign - result = client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - log.info("result: {}".format(result)) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg:Report verifier status {}".format(status) - - -@pytest.mark.P1 -def test_VP_PR_003(client_new_node, reset_environment): - """ - 举报被处罚退出状态中的验证人 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create pledge address - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # view Pledge node information - candidate_info = client.ppos.getCandidateInfo(node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - # Wait for the settlement round to end - economic.wait_settlement(node) - # Obtain penalty proportion and income - pledge_amount1, penalty_ratio, proportion_ratio = penalty_proportion_and_income(client) - # view Amount of penalty - proportion_reward, incentive_pool_reward = economic.get_report_reward(pledge_amount1, penalty_ratio, - proportion_ratio) - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # Application for return of pledge - result = client.staking.withdrew_staking(pledge_address) - assert_code(result, 0) - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Report verifier Duplicate Sign - result = verification_duplicate_sign(client, 1, 1, report_address, current_block) - assert_code(result, 0) - # view Pledge node information - candidate_info = client.ppos.getCandidateInfo(node.node_id) - log.info("Pledge node information: {}".format(candidate_info)) - log.info("Pledge node amount: {}".format(pledge_amount1)) - log.info("proportion_reward + incentive_pool_reward: {}".format(proportion_reward + incentive_pool_reward)) - info = candidate_info['Ret'] - assert info['Released'] == pledge_amount1 - ( - proportion_reward + incentive_pool_reward), "ErrMsg:Pledge amount {}".format( - info['Released']) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P1 -def test_VP_PR_004(client_new_node): - """ - 举报已完成退出的验证人 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create pledge address - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # Application for return of pledge - result = client.staking.withdrew_staking(pledge_address) - assert_code(result, 0) - # Waiting for the end of the 2 settlement cycle - economic.wait_settlement(node, 2) - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Report verifier Duplicate Sign - result = verification_duplicate_sign(client, 1, 1, report_address, current_block) - assert_code(result, 303004) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P1 -def test_VP_PR_005(client_new_node, reset_environment): - """ - 举报人和被举报人为同一个人 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create pledge address - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # Application for return of pledge - result = client.staking.withdrew_staking(pledge_address) - assert_code(result, 0) - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Report verifier Duplicate Sign - result = verification_duplicate_sign(client, 1, 1, pledge_address, current_block) - assert_code(result, 303010) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P1 -def test_VP_PVF_001(client_consensus, reset_environment): - """ - 查询已成功的举报 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Wait for the consensus round to end - economic.wait_consensus(node, 1) - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Obtain evidence of violation - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, current_block) - log.info("Report information: {}".format(report_information)) - result = client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - # Query and report violation records - evidence_parameter = get_param_by_dict(report_information, 'prepareA', 'validateNode', 'nodeId') - result = client.ppos.checkDuplicateSign(1, evidence_parameter, current_block) - assert_code(result, 0) - assert result['Ret'] is not None, "ErrMsg:Query results {}".format(result['Ret']) - - -@pytest.mark.P1 -def test_VP_PVF_002(client_consensus): - """ - 查询未成功的举报记录 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Wait for the consensus round to end - economic.wait_consensus(node, 1) - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Obtain evidence of violation - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, 100000) - log.info("Report information: {}".format(report_information)) - result = client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 303002) - # create account - report_address2, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # Query and report violation records - evidence_parameter = get_param_by_dict(report_information, 'prepareA', 'validateNode', 'nodeId') - result = client.ppos.checkDuplicateSign(1, evidence_parameter, current_block) - assert_code(result, 0) - assert result['Ret'] == "", "ErrMsg:Query results {}".format(result['Ret']) - - -@pytest.mark.P1 -def test_VP_PVF_003(client_new_node, reset_environment): - """ - 被系统剔除出验证人与候选人名单,节点可继续完成轮的出块及验证工作 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - time.sleep(5) - # create pledge address - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Report verifier Duplicate Sign - result = verification_duplicate_sign(client, 1, 1, report_address, current_block) - assert_code(result, 0) - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - assert result, "ErrMsg:Node current status {}".format(result) - # Wait for the settlement round to end - economic.wait_consensus(node, 2) - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - assert not result, "ErrMsg:Node current status {}".format(result) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P1 -def test_VP_PVF_004(client_new_node, reset_environment): - """ - 验证人在共识轮第230区块前被举报并被处罚 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create pledge address - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - endtime = int(time.time()) + 120 - while int(time.time()) < endtime: - time.sleep(1) - current_block = node.eth.blockNumber - log.info("current block: {}".format(current_block)) - block = current_block % economic.consensus_size - log.info("block: {}".format(block)) - log.info("Current block height: {}, block of current consensus round: {}".format(current_block, block)) - if block < 20: - break - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Report verifier Duplicate Sign - result = verification_duplicate_sign(client, 1, 1, report_address, current_block) - assert_code(result, 0) - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - assert result, "ErrMsg:Node current status {}".format(result) - # Wait for the settlement round to end - economic.wait_consensus(node) - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - assert not result, "ErrMsg:Node current status {}".format(result) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P1 -def test_VP_PVF_005(client_new_node, reset_environment): - """ - 验证人在共识轮第230区块后举报并被处罚 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create pledge address - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - endtime = int(time.time()) + 120 - while int(time.time()) < endtime: - time.sleep(1) - current_block = node.eth.blockNumber - log.info("current block: {}".format(current_block)) - block = current_block % economic.consensus_size - log.info("block: {}".format(block)) - log.info("Current block height: {}, block of current consensus round: {}".format(current_block, block)) - if block > 19: - break - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Report verifier Duplicate Sign - result = verification_duplicate_sign(client, 1, 1, report_address, current_block) - assert_code(result, 0) - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - assert result, "ErrMsg:Node current status {}".format(result) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P2 -def test_VP_PVF_006(client_new_node, reset_environment): - """ - 移出PlatON验证人与候选人名单,验证人申请退回质押金 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create pledge address - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Report verifier Duplicate Sign - result = verification_duplicate_sign(client, 1, 1, report_address, current_block) - assert_code(result, 0) - # Application for return of pledge - result = client.staking.withdrew_staking(pledge_address) - assert_code(result, 301103) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P2 -def test_VP_PVF_007(client_new_node, reset_environment): - """ - 节点被处罚后马上重新质押(双签) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create pledge address - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Report verifier Duplicate Sign - result = verification_duplicate_sign(client, 1, 1, report_address, current_block) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 301101) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P2 -def test_VP_PVF_008(client_new_node, reset_environment): - """ - 节点被处罚后马上重新增持质押(双签) - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create pledge address - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Report verifier Duplicate Sign - result = verification_duplicate_sign(client, 1, 1, report_address, current_block) - assert_code(result, 0) - # increase staking - result = client.staking.increase_staking(0, pledge_address) - assert_code(result, 301103) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P2 -def test_VP_PVF_009(client_new_node, reset_environment): - """ - 移出PlatON验证人与候选人名单,委托人可在处罚所在结算周期,申请赎回全部委托金 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create pledge address - pledge_address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 3)) - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - result = client.staking.create_staking(0, pledge_address, pledge_address) - assert_code(result, 0) - # Additional pledge - result = client.delegate.delegate(0, report_address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - # Report verifier Duplicate Sign - result = verification_duplicate_sign(client, 1, 1, report_address, current_block) - assert_code(result, 0) - time.sleep(3) - # Access to pledge information - candidate_info = client.ppos.getCandidateInfo(node.node_id) - info = candidate_info['Ret'] - staking_blocknum = info['StakingBlockNum'] - # To view the entrusted account balance - report_balance = node.eth.getBalance(report_address) - log.info("report address balance: {}".format(report_balance)) - # withdrew delegate - result = client.delegate.withdrew_delegate(staking_blocknum, report_address) - assert_code(result, 0) - # To view the entrusted account balance - report_balance1 = node.eth.getBalance(report_address) - log.info("report address balance: {}".format(report_balance1)) - assert report_balance + economic.delegate_limit - report_balance1 < node.web3.toWei(1, - 'ether'), "ErrMsg:Ireport balance {}".format( - report_balance1) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -def test_VP_PVF_010(client_consensus): - """ - - """ - client = client_consensus - economic = client.economic - node = client.node - client.economic.env.deploy_all() - # Obtain penalty proportion and income - pledge_amount1, penalty_ratio, proportion_ratio = penalty_proportion_and_income(client) - # create report address - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # view report amount - report_amount1 = node.eth.getBalance(report_address) - log.info("report account amount:{} ".format(report_amount1)) - # view Incentive pool account - incentive_pool_account1 = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("incentive pool account1 amount:{} ".format(incentive_pool_account1)) - # Wait for the consensus round to end - economic.wait_consensus(node) - # Get current block height - current_block = node.eth.blockNumber - log.info("Current block height: {}".format(current_block)) - result = verification_duplicate_sign(client, 1, 1, report_address, current_block) - assert_code(result, 0) - # view Amount of penalty - proportion_reward, incentive_pool_reward = economic.get_report_reward(pledge_amount1, penalty_ratio, - proportion_ratio) - # view report amount again - report_amount2 = node.eth.getBalance(report_address) - log.info("report account amount:{} ".format(report_amount2)) - # view Incentive pool account again - incentive_pool_account2 = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("incentive pool account1 amount:{} ".format(incentive_pool_account2)) - # assert account reward - assert report_amount1 + proportion_reward - report_amount2 < node.web3.toWei(1,'ether'), "ErrMsg:report amount {}".format( - report_amount2) - assert incentive_pool_account2 == incentive_pool_account1 + incentive_pool_reward + (report_amount1 + proportion_reward - report_amount2), "ErrMsg:Incentive pool account {}".format( - incentive_pool_account2) - - result = node.ppos.getCandidateInfo(node.node_id) - log.info("Candidate Info:{} ".format(result)) - pledge_amount2 = result['Ret']['Released'] - result = verification_duplicate_sign(client, 1, 1, report_address, current_block + 1) - assert_code(result, 0) - - # view Amount of penalty - proportion_reward2, incentive_pool_reward2 = economic.get_report_reward(pledge_amount2, penalty_ratio, - proportion_ratio) - - # view report amount again - report_amount3 = node.eth.getBalance(report_address) - log.info("report account amount:{} ".format(report_amount3)) - - # view Incentive pool account again - incentive_pool_account3 = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("incentive pool account1 amount:{} ".format(incentive_pool_account3)) - # assert account reward - assert report_amount2 + proportion_reward2 - report_amount3 < node.web3.toWei(1, 'ether'), "ErrMsg:report amount {}".format( - report_amount2 + proportion_reward2 - report_amount3) - assert incentive_pool_account3 == incentive_pool_account2 + incentive_pool_reward2 + (report_amount2 + proportion_reward2 - report_amount3), "ErrMsg:Incentive pool account {}".format( - incentive_pool_account2) \ No newline at end of file diff --git a/cases/tests/ppos/test_rewards_interface.py b/cases/tests/ppos/test_rewards_interface.py deleted file mode 100644 index 34048e213a..0000000000 --- a/cases/tests/ppos/test_rewards_interface.py +++ /dev/null @@ -1,1700 +0,0 @@ -from common.log import log -from tests.lib import EconomicConfig -from tests.lib.utils import assert_code, get_pledge_list -from common.key import mock_duplicate_sign -from tests.lib.utils import wait_block_number, get_the_dynamic_parameter_gas_fee, get_getDelegateReward_gas_fee -import rlp -from typing import List -import time, math, pytest -from tests.govern.test_voting_statistics import createstaking -from copy import copy -from conf import settings as conf - -delegate_amount = 10 ** 18 * 1000 -init_amount = 10 ** 18 * 10000 - - -def get_new_value(value): - if value == 10000: - return value - 1 - else: - return value + 1 - - -def assert_cumulativeIncome_delegateepoch(client, address, delegateepoch=None): - stakingnum = client.staking.get_stakingblocknum() - delegateinfo = client.ppos.getDelegateInfo(stakingnum, address, client.node.node_id) - log.info('Address {} delegate information {}'.format(address, delegateinfo)) - assert delegateinfo.get('Ret').get('CumulativeIncome') == 0 - if delegateepoch: - assert delegateinfo.get('Ret').get('DelegateEpoch') == delegateepoch - - -def staking_and_delegate(clients, address, amount=delegate_amount): - createstaking(clients, reward_per=1000) - if isinstance(clients, List): - clients = clients[0] - result = clients.delegate.delegate(0, address, amount=amount) - assert_code(result, 0) - result = clients.ppos.getCandidateInfo(clients.node.node_id) - assert result.get('Ret').get('DelegateRewardTotal') == 0 - - -class TestCreateStaking: - def assert_rewardsper_staking(self, client, nextrewardsper): - assert_code(client.staking.get_rewardper(client.node), nextrewardsper) - assert_code(client.staking.get_rewardper(client.node, isnext=True), nextrewardsper) - value, nextvalue = get_pledge_list(client.ppos.getCandidateList, client.node.node_id) - assert_code(value, nextrewardsper) - assert_code(nextvalue, nextrewardsper) - - @pytest.mark.P0 - def test_IV_032_IV_033_IV_037(self, client_new_node): - staking = client_new_node.staking - address, _ = staking.economic.account.generate_account(staking.node.web3, - 3 * staking.economic.genesis.economicModel.staking.stakeThreshold) - result = staking.create_staking(0, address, address, node_id=staking.node.node_id, - amount=2 * staking.economic.genesis.economicModel.staking.stakeThreshold, - reward_per=1) - assert_code(result, 0) - assert_code(staking.get_rewardper(staking.node), 1) - assert_code(staking.get_rewardper(staking.node, isnext=True), 1) - result = staking.create_staking(0, address, address, node_id=staking.node.node_id, - amount=2 * staking.economic.genesis.economicModel.staking.stakeThreshold, - reward_per=1) - log.info('Repeat create staking result : {}'.format(result)) - assert_code(result, 301101) - self.assert_rewardsper_staking(client_new_node, 1) - - def test_IV_043(self, client_new_node): - staking = client_new_node.staking - address, _ = staking.economic.account.generate_account(staking.node.web3, 10 ** 18 * 30000000) - plan = [{'Epoch': 20, 'Amount': 10 ** 18 * 2000000}] - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - log.info('CreateRestrictingPlan result : {}'.format(result)) - assert_code(result, 0) - result = staking.create_staking(1, address, address, node_id=staking.node.node_id, - amount=2 * staking.economic.genesis.economicModel.staking.stakeThreshold, - reward_per=1155) - assert_code(result, 0) - self.assert_rewardsper_staking(client_new_node, 1155) - - def test_IV_036(self, client_new_node): - staking = client_new_node.staking - address, _ = staking.economic.account.generate_account(staking.node.web3, - 3 * staking.economic.genesis.economicModel.staking.stakeThreshold) - result = staking.create_staking(0, address, address, node_id=staking.node.node_id, - amount=2 * staking.economic.genesis.economicModel.staking.stakeThreshold, - reward_per=0) - assert_code(result, 0) - self.assert_rewardsper_staking(client_new_node, 0) - - def test_IV_038_IV_039_IV_044_IV_040_IV_041(self, client_new_node): - staking = client_new_node.staking - address, _ = staking.economic.account.generate_account(staking.node.web3, - 3 * staking.economic.genesis.economicModel.staking.stakeThreshold) - try: - staking.create_staking(0, address, address, node_id=staking.node.node_id, - amount=2 * staking.economic.genesis.economicModel.staking.stakeThreshold, - reward_per=100000) - except ValueError as e: - assert e.args[0].get('message') == "gas required exceeds allowance or always failing transaction" - - try: - staking.create_staking(0, address, address, node_id=staking.node.node_id, - amount=2 * staking.economic.genesis.economicModel.staking.stakeThreshold, - reward_per=-1) - except TypeError as e: - assert str(e) == "Did not find sedes handling type int" - try: - staking.create_staking(0, address, address, node_id=staking.node.node_id, - amount=2 * staking.economic.genesis.economicModel.staking.stakeThreshold, - reward_per=1.1) - except TypeError as e: - assert str(e) == "Did not find sedes handling type float" - - result = staking.create_staking(0, address, address, node_id=staking.node.node_id, - amount=2 * staking.economic.genesis.economicModel.staking.stakeThreshold, - reward_per=10001) - assert_code(result, 301007) - try: - - staking.create_staking(0, address, address, node_id=staking.node.node_id, - amount=2 * staking.economic.genesis.economicModel.staking.stakeThreshold, - reward_per='1000') - except ValueError as e: - assert e.args[0].get('message') == "gas required exceeds allowance or always failing transaction" - - result = staking.create_staking(0, address, address, node_id=staking.node.node_id, - amount=2 * staking.economic.genesis.economicModel.staking.stakeThreshold, - reward_per=10000) - assert_code(result, 0) - self.assert_rewardsper_staking(client_new_node, 10000) - - @pytest.mark.P2 - def test_IV_034(self, new_genesis_env, client_verifier): - client = client_verifier - value = client.staking.get_rewardper(client.node) - value = get_new_value(value) - result = client.staking.withdrew_staking(client.node.staking_address) - assert_code(result, 0) - client.economic.wait_settlement(client.node, 2) - address, _ = client.economic.account.generate_account(client.node.web3, 10 ** 18 * 10000000) - result = client.staking.create_staking(0, address, address, reward_per=value) - assert_code(result, 0) - self.assert_rewardsper_staking(client, value) - - @pytest.mark.P2 - def test_IV_035(self, new_genesis_env, clients_consensus): - new_genesis_env.deploy_all() - client = clients_consensus[0] - value = client.staking.get_rewardper(client.node) - value = get_new_value(value) - wait_block_number(client.node, 50) - report_information = mock_duplicate_sign(1, clients_consensus[1].node.nodekey, - clients_consensus[1].node.blsprikey, 41) - log.info("Report information: {}".format(report_information)) - address, _ = client.economic.account.generate_account(client.node.web3, 10 ** 18 * 1000) - result = client.duplicatesign.reportDuplicateSign(1, report_information, address) - log.info('Node duplicate block result : {}'.format(result)) - assert_code(result, 0) - verifier_list = get_pledge_list(client.ppos.getVerifierList) - assert clients_consensus[1].node.node_id not in verifier_list - client.economic.wait_settlement(client.node, 2) - candidate_info = clients_consensus[1].ppos.getCandidateInfo(clients_consensus[1].node.node_id) - log.info(candidate_info) - address, _ = client.economic.account.generate_account(client.node.web3, 10 ** 18 * 10000000) - result = clients_consensus[1].staking.create_staking(0, address, address, reward_per=value) - assert_code(result, 0) - self.assert_rewardsper_staking(clients_consensus[1], value) - - -class TestEditCandidate: - def assert_rewardsper(self, client, rewardsper, nextrewardsper): - assert_code(client.staking.get_rewardper(client.node), rewardsper) - assert_code(client.staking.get_rewardper(client.node, isnext=True), nextrewardsper) - value, nextvalue = get_pledge_list(client.ppos.getCandidateList, client.node.node_id) - assert_code(value, rewardsper) - assert_code(nextvalue, nextrewardsper) - value, nextvalue = get_pledge_list(client.ppos.getVerifierList, client.node.node_id) - assert_code(value, rewardsper) - assert_code(nextvalue, nextrewardsper) - value, nextvalue = get_pledge_list(client.ppos.getValidatorList, client.node.node_id) - assert_code(value, rewardsper) - assert_code(nextvalue, nextrewardsper) - - @pytest.mark.P0 - def test_MPI_018_to_027(self, client_verifier): - client = client_verifier - value = client.staking.get_rewardper(client.node) - newvalue = get_new_value(value) - print(value, newvalue) - # client.economic.wait_settlement(client.node, 1) - # result = client.staking.edit_candidate(client.node.staking_address, client.node.staking_address, - # reward_per=newvalue) - # assert_code(result, 0) - # self.assert_rewardsper(client, value, newvalue) - # client.economic.wait_settlement(client.node, 1) - # result = client.staking.edit_candidate(client.node.staking_address, client.node.staking_address, - # reward_per=0) - # print(result) - # assert_code(result, 0) - # self.assert_rewardsper(client, 1, 0) - # - # client.economic.wait_settlement(client.node, 1) - # result = client.staking.edit_candidate(client.node.staking_address, client.node.staking_address, - # reward_per=10000) - # assert_code(result, 301009) - # - # client.economic.wait_settlement(client.node, 1) - # result = client.staking.edit_candidate(client.node.staking_address, client.node.staking_address, - # reward_per=10001) - # log.info('Edit candidate information reward percent is 10001, result : {}'.format(result)) - # assert_code(result, 301007) - # - # try: - # client.staking.edit_candidate(client.node.staking_address, client.node.staking_address, - # reward_per=-1) - # except TypeError as e: - # str(e) == 'Did not find sedes handling type int' - # - # result = client.staking.edit_candidate(client.node.staking_address, client.node.staking_address, - # reward_per='2') - # log.info('Edit candidate information reward percent is string, result : {}'.format(result)) - # assert_code(result, 0) - - # client.economic.wait_settlement(client.node, 1) - # result = client.staking.edit_candidate(client.node.staking_address, client.node.staking_address, - # reward_per=10000000000000000000000000000000000000000000000) - # assert_code(result, 301007) - - @pytest.mark.P2 - def test_MPI_028_MPI_030_MPI_032(self, client_new_node): - client = client_new_node - address, _ = client.economic.account.generate_account(client.node.web3, 10 ** 18 * 10000000) - result = client.staking.create_staking(0, address, address, - amount=2 * client.economic.genesis.economicModel.staking.stakeThreshold, - reward_per=100) - assert_code(result, 0) - client.economic.wait_settlement(client.node, 1) - verifier_list = get_pledge_list(client.ppos.getVerifierList) - assert client.node.node_id in verifier_list - address_delegate, _ = client.economic.account.generate_account(client.node.web3, init_amount) - result = client.delegate.delegate(0, address_delegate, amount=10 ** 18 * 1000) - assert_code(result, 0) - result = client.staking.edit_candidate(address, address, reward_per=101) - - assert_code(result, 0) - assert_code(100, client.staking.get_rewardper()) - assert_code(101, client.staking.get_rewardper(isnext=True)) - vaule, newvalue = get_pledge_list(client.ppos.getCandidateList, nodeid=client.node.node_id) - assert_code(vaule, 100) - assert_code(newvalue, 101) - - client.economic.wait_settlement(client.node, 1) - result = client.staking.edit_candidate(address, address, reward_per=99) - - assert_code(result, 0) - assert_code(101, client.staking.get_rewardper()) - assert_code(99, client.staking.get_rewardper(isnext=True)) - vaule, newvalue = get_pledge_list(client.ppos.getCandidateList, nodeid=client.node.node_id) - assert_code(vaule, 101) - assert_code(newvalue, 99) - - client.economic.wait_settlement(client.node, 1) - result = client.staking.edit_candidate(address, address, reward_per=9999) - assert_code(result, 301009) - - @pytest.mark.P2 - def test_MPI_033(self, new_genesis_env, clients_verifier): - client0 = clients_verifier[0] - client1 = clients_verifier[1] - wait_block_number(client1.node, client0.node.block_number + 40) - report_information = mock_duplicate_sign(1, client0.node.nodekey, - client0.node.blsprikey, client0.node.block_number) - log.info("Report information: {}".format(report_information)) - address1, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - result = client1.duplicatesign.reportDuplicateSign(1, report_information, address1) - log.info('Node duplicate block result : {}'.format(result)) - assert_code(result, 0) - value = client1.staking.get_rewardper(client1.node) - newvalue = get_new_value(value) - result = client0.staking.edit_candidate(client0.node.staking_address, client0.node.benifit_address, - reward_per=newvalue) - log.info('result {}'.format(result)) - assert_code(result, 301103) - assert_code(value, client1.staking.get_rewardper()) - assert_code(value, client1.staking.get_rewardper(isnext=True)) - vaule_per, newvalue_per = get_pledge_list(client1.ppos.getCandidateList, nodeid=client1.node.node_id) - assert_code(vaule_per, value) - assert_code(newvalue_per, value) - - @pytest.mark.P2 - def test_MPI_034(self, client_new_node): - client = client_new_node - address, _ = client.economic.account.generate_account(client.node.web3, 10 ** 18 * 10000000) - result = client.staking.create_staking(0, address, address, reward_per=100) - assert_code(result, 0) - - client.economic.wait_settlement(client.node, 1) - result = client.staking.edit_candidate(address, address, reward_per=101) - assert_code(result, 0) - assert_code(100, client.staking.get_rewardper()) - assert_code(101, client.staking.get_rewardper(isnext=True)) - vaule, newvalue = get_pledge_list(client.ppos.getCandidateList, nodeid=client.node.node_id) - assert_code(vaule, 100) - assert_code(newvalue, 101) - - @pytest.mark.P2 - def test_MPI_035(self, new_genesis_env, client_verifier): - client = client_verifier - value, nextvalue = get_pledge_list(client.ppos.getVerifierList, nodeid=client.node.node_id) - newvalue = get_new_value(value) - result = client.staking.withdrew_staking(client.node.staking_address) - assert_code(result, 0) - result = client.staking.edit_candidate(client.node.staking_address, client.node.benifit_address, - reward_per=newvalue) - log.info('Edit exiting candidate information result : {}'.format(result)) - assert_code(result, 301103) - assert_code(client.staking.get_rewardper(client.node), value) - assert_code(client.staking.get_rewardper(client.node, isnext=True), nextvalue) - candidates = get_pledge_list(client.ppos.getCandidateList) - verifiers = get_pledge_list(client.ppos.getVerifierList) - validators = get_pledge_list(client.ppos.getVerifierList) - assert client.node.node_id not in candidates - assert client.node.node_id in verifiers - assert client.node.node_id in validators - value_exiting, nextvalue_exiting = get_pledge_list(client.ppos.getVerifierList, client.node.node_id) - assert_code(value, value_exiting) - assert_code(nextvalue, nextvalue_exiting) - - @pytest.mark.P2 - def test_MPI_036(self, client_verifier): - client = client_verifier - value, nextvalue = get_pledge_list(client.ppos.getVerifierList, client.node.node_id) - newvalue = get_new_value(value) - client.economic.wait_settlement(client.node, 1) - result = client.staking.edit_candidate(client.node.staking_address, client.node.staking_address, - reward_per=newvalue) - assert_code(result, 0) - self.assert_rewardsper(client, value, newvalue) - verifier_info = client.ppos.getVerifierList() - log.info('nodeid {} verifier_info : {}'.format(client.node.node_id, verifier_info)) - result = client.staking.withdrew_staking(client.node.staking_address) - assert_code(result, 0) - assert_code(client.staking.get_rewardper(client.node), value) - assert_code(client.staking.get_rewardper(client.node, isnext=True), newvalue) - verifiers = get_pledge_list(client.ppos.getVerifierList) - candidates = get_pledge_list(client.ppos.getCandidateList) - validators = get_pledge_list(client.ppos.getVerifierList) - assert client.node.node_id not in candidates - assert client.node.node_id in verifiers - assert client.node.node_id in validators - verifier_info = client.ppos.getVerifierList() - log.info('nodeid {} verifier_info : {}'.format(client.node.node_id, verifier_info)) - value_exiting, nextvalue_exiting = get_pledge_list(client.ppos.getVerifierList, client.node.node_id) - assert_code(value, value_exiting) - assert_code(newvalue, nextvalue_exiting) - - -class TestgetDelegateReward: - @pytest.mark.P0 - def test_IN_GR_001_IN_GR_002_IN_GR_004_IN_GR_005_IN_GR_006_IN_DR_018_IN_DR_019(self, clients_new_node): - client0 = clients_new_node[0] - client1 = clients_new_node[1] - delegate_address, _ = client0.economic.account.generate_account(client0.node.web3, init_amount) - staking_and_delegate(client0, delegate_address) - staking_and_delegate(client1, delegate_address) - staking_num0 = client0.staking.get_stakingblocknum(client0.node) - staking_num1 = client1.staking.get_stakingblocknum(client1.node) - result = client1.ppos.getDelegateInfo(staking_num1, delegate_address, client1.node.node_id) - log.info(result) - assert_code(result, 0) - result = client0.ppos.getDelegateInfo(staking_num0, delegate_address, client0.node.node_id) - log.info(result) - assert_code(result, 0) - client0.economic.wait_settlement(client0.node) - verifier_list = get_pledge_list(client0.ppos.getVerifierList) - assert client0.node.node_id in verifier_list - assert client1.node.node_id in verifier_list - - nodeid = 'a128496e6d88a3c231ceda1c095b3cc51a9b25ea14b8d1c8839e5cce65888' \ - 'f68e41231e7ebec710e41bcd5c53a704da4ded75a1398762d4c01a165897c911111' - result = client0.ppos.getDelegateReward(delegate_address, node_ids=[nodeid]) - assert_code(result, 305001) - - result = client0.ppos.getDelegateReward(delegate_address, node_ids=[nodeid, client0.node.node_id]) - assert_code(result, 0) - assert len(result.get('Ret')) == 1 - assert result.get('Ret')[0].get('nodeID') == client0.node.node_id - assert result.get('Ret')[0].get('stakingNum') == staking_num0 - - result = client0.ppos.getDelegateReward(delegate_address) - log.info('Do not given nodeid, get address delegate reward : {}'.format(result)) - assert_code(result, 0) - assert len(result.get('Ret')) == 2 - for rewardinfo in result.get('Ret'): - if client0.node.node_id == rewardinfo.get('nodeID'): - rewardinfo.get('reward') == 0 - rewardinfo.get('stakingNum') == staking_num0 - else: - rewardinfo.get('reward') == 0 - rewardinfo.get('stakingNum') == staking_num1 - result = client0.ppos.getDelegateReward(delegate_address, node_ids=[client0.node.node_id]) - log.info('Get address delegate nodeid {} reward : {}'.format(client0.node.node_id, result)) - assert_code(result, 0) - assert result.get('Ret')[0].get('nodeID') == client0.node.node_id - assert result.get('Ret')[0].get('stakingNum') == staking_num0 - - result = client0.ppos.getDelegateReward(delegate_address, node_ids=[client1.node.node_id]) - log.info('Get address delegate nodeid {} reward : {}'.format(client1.node.node_id, result)) - assert_code(result, 0) - assert result.get('Ret')[0].get('nodeID') == client1.node.node_id - assert result.get('Ret')[0].get('stakingNum') == staking_num1 - - result = client0.ppos.getDelegateReward(delegate_address, node_ids=[client0.node.node_id, client1.node.node_id]) - log.info('Get address delegate nodeid {},{} reward : {}'.format(client1.node.node_id, - client1.node.node_id, result)) - assert_code(result, 0) - assert len(result.get('Ret')) == 2 - for rewardinfo in result.get('Ret'): - if client0.node.node_id == rewardinfo.get('nodeID'): - rewardinfo.get('reward') == 0 - rewardinfo.get('stakingNum') == staking_num0 - else: - rewardinfo.get('reward') == 0 - rewardinfo.get('stakingNum') == staking_num1 - client0.economic.wait_settlement(client0.node) - - reward = client0.delegate.get_delegate_reward_by_nodeid(delegate_address) - log.info('Address {} reward : {}'.format(delegate_address, reward)) - assert reward > 0 - balance_before = client0.node.eth.getBalance(delegate_address) - log.info('Before delegate address balance : {}'.format(balance_before)) - - gas = get_getDelegateReward_gas_fee(client0, 2, 2) - - log.info('Calculated gas : {}'.format(gas)) - result = client0.delegate.withdraw_delegate_reward(delegate_address) - assert_code(result, 0) - client1.economic.wait_consensus(client0.node) - balance_after = client0.node.eth.getBalance(delegate_address) - log.info('After withdraw reward, address balance : {}'.format(balance_after)) - assert balance_before + reward - gas == balance_after - result = client0.delegate.withdraw_delegate_reward(delegate_address) - assert_code(result, 0) - assert_cumulativeIncome_delegateepoch(client0, delegate_address, delegateepoch=math.ceil( - client0.node.block_number / client0.economic.settlement_size)) - assert_cumulativeIncome_delegateepoch(client1, delegate_address, delegateepoch=math.ceil( - client0.node.block_number / client0.economic.settlement_size)) - balance_after_1 = client0.node.eth.getBalance(delegate_address) - log.info('After repeat withdraw reward address balance : {}'.format(balance_after_1)) - gas = get_getDelegateReward_gas_fee(client0, 2, 0) - assert balance_after - gas == balance_after_1 - client0.economic.wait_settlement(client0.node) - reward = client0.delegate.get_delegate_reward_by_nodeid(delegate_address) - assert reward > 0 - result = client0.delegate.withdraw_delegate_reward(delegate_address) - assert_code(result, 0) - balance_after_2 = client0.node.eth.getBalance(delegate_address) - log.info('After {} withdraw reward address balance : {}'.format(delegate_address, balance_after_2)) - assert_cumulativeIncome_delegateepoch(client0, delegate_address, delegateepoch=math.ceil( - client0.node.block_number / client0.economic.settlement_size)) - assert_cumulativeIncome_delegateepoch(client1, delegate_address, delegateepoch=math.ceil( - client0.node.block_number / client0.economic.settlement_size)) - gas = get_getDelegateReward_gas_fee(client1, 2, 2) - assert balance_after_1 - gas + reward == balance_after_2 - - @pytest.mark.P2 - def test_IN_GR_008(self, client_verifier): - client = client_verifier - address, _ = client.economic.account.generate_account(client.node.web3, init_amount) - try: - client.ppos.getDelegateReward(address, node_ids=client.node.node_id) - except ValueError as e: - str(e) == 'non-hexadecimal number found in fromhex() arg at position 1' - - @pytest.mark.P2 - def test_IN_GR_010_IN_GR_012(self, client_new_node): - client = client_new_node - address, _ = client.economic.account.generate_account(client.node.web3, init_amount) - epoch = math.ceil(client.node.block_number / client.economic.settlement_size) - staking_and_delegate(client, address) - staking_blocknum = client.staking.get_stakingblocknum() - client.economic.wait_settlement(client.node) - verifier_list = get_pledge_list(client.ppos.getVerifierList) - assert client.node.node_id in verifier_list - rewardinfo = client.ppos.getDelegateReward(address) - log.info('Get address {} reward information : {}'.format(address, rewardinfo)) - assert len(rewardinfo.get('Ret')) == 1 - assert rewardinfo.get('Ret')[0].get('stakingNum') == staking_blocknum - assert rewardinfo.get('Ret')[0].get('reward') == 0 - client.economic.wait_settlement(client.node) - delegate_info = client.ppos.getDelegateInfo(staking_blocknum, address, client.node.node_id) - log.info('Address {} delegate information : {}'.format(address, delegate_info)) - assert_code(delegate_info, 0) - assert delegate_info.get('Ret').get('DelegateEpoch') == epoch - rewardinfo = client.ppos.getDelegateReward(address) - log.info('Get address {} reward information : {}'.format(address, rewardinfo)) - reward = rewardinfo.get('Ret')[0].get('reward') - assert reward > 0 - client.staking.withdrew_staking(client.node.staking_address) - reward1 = client.delegate.get_delegate_reward_by_nodeid(address) - assert reward == reward1 - - before_withdraw_balance = client.node.eth.getBalance(address) - log.info('Address {} before withdraw {}'.format(address, before_withdraw_balance)) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - after_withdraw_balance = client.node.eth.getBalance(address) - log.info('Address {} before withdraw {}'.format(address, after_withdraw_balance)) - gas = get_getDelegateReward_gas_fee(client, 1, 1) - assert before_withdraw_balance - gas + reward1 == after_withdraw_balance - - @pytest.mark.P2 - def test_IN_GR_011_IN_GR_012(self, client_new_node, client_verifier): - client = client_new_node - address, _ = client.economic.account.generate_account(client.node.web3, init_amount) - staking_and_delegate(client_new_node, address) - staking_blocknum = client.staking.get_stakingblocknum() - client.economic.wait_settlement(client.node) - verifier_list = get_pledge_list(client.ppos.getVerifierList) - assert client.node.node_id in verifier_list - rewardinfo = client.ppos.getDelegateReward(address) - log.info('Get address {} reward information : {}'.format(address, rewardinfo)) - assert rewardinfo.get('Ret')[0].get('stakingNum') == staking_blocknum - client.economic.wait_settlement(client.node) - staking_info = client.ppos.getCandidateInfo(client.node.node_id) - log.info('Node {} candidate information : {}'.format(client.node.node_id, staking_info)) - delegate_info = client.ppos.getDelegateInfo(staking_blocknum, address, client.node.node_id) - log.info('Address {} delegate information : {}'.format(address, delegate_info)) - rewardinfo = client.ppos.getDelegateReward(address) - log.info('Get address {} reward information : {}'.format(address, rewardinfo)) - reward = rewardinfo.get('Ret')[0].get('reward') - assert reward > 0 - report_information = mock_duplicate_sign(1, client.node.nodekey, - client.node.blsprikey, client.node.block_number - 10) - log.info("Report information: {}".format(report_information)) - address1, _ = client_verifier.economic.account.generate_account(client_verifier.node.web3, init_amount) - result = client_verifier.duplicatesign.reportDuplicateSign(1, report_information, address1) - log.info('Node duplicate block result : {}'.format(result)) - assert_code(result, 0) - verifier_list = get_pledge_list(client_verifier.ppos.getVerifierList) - assert client.node.node_id not in verifier_list - rewardinfo = client.ppos.getDelegateReward(address) - assert reward == rewardinfo.get('Ret')[0].get('reward') - client.economic.wait_settlement(client.node, - client.economic.genesis.economicModel.staking.unStakeFreezeDuration) - - rewardinfo = client.ppos.getDelegateReward(address) - assert reward == rewardinfo.get('Ret')[0].get('reward') - before_balance = client.node.eth.getBalance(address) - log.info('Before withdraw address {} balance {}'.format(address, before_balance)) - reward = client.delegate.get_delegate_reward_by_nodeid(address) - log.info('Address {} reward {}'.format(address, reward)) - gas = get_getDelegateReward_gas_fee(client, 1, 1) - result = client.delegate.withdraw_delegate_reward(address) - assert_code(result, 0) - after_balance = client.node.eth.getBalance(address) - log.info('After withdraw address {} balance {}'.format(address, after_balance)) - assert before_balance + reward - gas == after_balance - - @pytest.mark.P2 - def test_IN_GR_013(self, client_new_node): - client = client_new_node - address, _ = client.economic.account.generate_account(client.node.web3, init_amount) - result = client.ppos.getDelegateReward(address, [client.node.node_id]) - assert_code(result, 305001) - - @pytest.mark.P2 - def test_IN_GR_014(self, client_new_node, client_consensus): - client = client_new_node - address, _ = client.economic.account.generate_account(client.node.web3, init_amount) - result = client.ppos.getDelegateReward(address, [client_consensus.node.node_id]) - assert_code(result, 305001) - - @pytest.mark.P2 - def test_IN_GR_015_to_IN_GR_018(self, clients_new_node): - client1 = clients_new_node[0] - client2 = clients_new_node[1] - address1, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - address2, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - address3, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - staking_and_delegate(client1, address1) - staking_and_delegate(client2, address2) - staking_num1 = client1.staking.get_stakingblocknum() - log.info('Node {} staking block num : {}'.format(client1.node.node_id, staking_num1)) - staking_num2 = client2.staking.get_stakingblocknum() - log.info('Node {} staking block num : {}'.format(client2.node.node_id, staking_num2)) - client2.delegate.delegate(0, address1, amount=10 ** 18 * 1000) - client1.economic.wait_settlement(client1.node, 1) - reward_info_address1_1 = client1.ppos.getDelegateReward(address1) - log.info('Not incoming nodeid, Address {} reward information : {}'.format(address1, reward_info_address1_1)) - assert_code(reward_info_address1_1, 0) - assert_code(len(reward_info_address1_1.get('Ret')), 2) - assert client1.delegate.get_staking_num_by_nodeid(address1, client1.node.node_id) == staking_num1 - assert client2.delegate.get_staking_num_by_nodeid(address1, client2.node.node_id) == staking_num2 - assert reward_info_address1_1.get('Ret')[0].get('reward') > 0 - assert reward_info_address1_1.get('Ret')[0].get('reward') != reward_info_address1_1.get('Ret')[1].get('reward') - - reward_info_address1_2 = client1.ppos.getDelegateReward(address1, node_ids=[client1.node.node_id]) - log.info('incoming nodeid {}, Address {} reward information : {}'.format(client1.node.node_id, - address1, reward_info_address1_2)) - assert_code(reward_info_address1_2, 0) - assert_code(len(reward_info_address1_2.get('Ret')), 1) - assert client2.delegate.get_staking_num_by_nodeid(address1, client1.node.node_id) == staking_num1 - assert reward_info_address1_2.get('Ret')[0].get('reward') != 0 - - reward_info_address1_3 = client1.ppos.getDelegateReward(address1, node_ids=[client2.node.node_id]) - log.info('incoming nodeid {}, Address {} reward information : {}'.format(client2.node.node_id, - address1, reward_info_address1_3)) - assert_code(reward_info_address1_3, 0) - assert_code(len(reward_info_address1_3.get('Ret')), 1) - assert client2.delegate.get_staking_num_by_nodeid(address1, client2.node.node_id) == staking_num2 - assert reward_info_address1_3.get('Ret')[0].get('reward') != 0 - reward_info_address2_1 = client2.ppos.getDelegateReward(address2, node_ids=[client2.node.node_id]) - log.info('incoming nodeid {}, address {}, reward information : {}'.format( - client2.node.node_id, address2, reward_info_address2_1 - )) - assert_code(reward_info_address2_1, 0) - assert_code(len(reward_info_address2_1.get('Ret')), 1) - assert client2.delegate.get_staking_num_by_nodeid(address2, client2.node.node_id) == staking_num2 - assert reward_info_address2_1.get('Ret')[0].get('reward') != 0 - reward_info_address2_2 = client2.ppos.getDelegateReward(address2) - log.info('Not incoming nodeid {}, address {}, reward information : {}'.format( - client2.node.node_id, address2, reward_info_address2_2 - )) - assert_code(reward_info_address2_2, 0) - assert_code(len(reward_info_address2_2.get('Ret')), 1) - assert client2.delegate.get_staking_num_by_nodeid(address2, client2.node.node_id) == staking_num2 - assert reward_info_address2_2.get('Ret')[0].get('reward') != 0 - reward_info_address2_3 = client2.ppos.getDelegateReward(address2, [client1.node.node_id]) - log.info('Not incoming nodeid {}, address {}, reward information : {}'.format( - client2.node.node_id, address2, reward_info_address2_3 - )) - assert_code(reward_info_address2_3, 305001) - reward_info_address2_4 = client2.ppos.getDelegateReward(address2, [client1.node.node_id, client2.node.node_id]) - log.info('Incoming nodeid {},{}, address {}, reward information : {}'.format(client1.node.node_id, - client2.node.node_id, address2, - reward_info_address2_4 - )) - assert_code(reward_info_address2_2, 0) - assert_code(len(reward_info_address2_2.get('Ret')), 1) - assert client2.delegate.get_staking_num_by_nodeid(address2, client2.node.node_id) == staking_num2 - assert reward_info_address2_2.get('Ret')[0].get('reward') != 0 - - reward_info_address3_1 = client1.ppos.getDelegateReward(address3) - assert_code(reward_info_address3_1, 305001) - reward_info_address3_2 = client1.ppos.getDelegateReward(address3, node_ids=[client1.node.node_id]) - assert_code(reward_info_address3_2, 305001) - reward_info_address3_3 = client1.ppos.getDelegateReward(address3, node_ids=[client2.node.node_id]) - assert_code(reward_info_address3_3, 305001) - address1_balance_before = client1.node.eth.getBalance(address1) - log.info('Before getDelegateReward, the address {} balance: {}'.format(address1, address1_balance_before)) - reward_address1 = client1.delegate.get_delegate_reward_by_nodeid(address1, node_ids=[client1.node.node_id]) - log.info('Address {} delegate node {} reward : {}'.format(address1, client1.node.node_id, reward_address1)) - result = client1.delegate.withdrew_delegate(staking_num1, address1, node_id=client1.node.node_id, - amount=10 ** 18 * 1000, - transaction_cfg=client1.pip.cfg.transaction_cfg) - assert_code(result, 0) - reward_info_address1 = client1.ppos.getDelegateReward(address1, node_ids=[client1.node.node_id]) - assert_code(reward_info_address1, 305001) - address1_balance_after = client1.node.eth.getBalance(address1) - log.info('Before getDelegateReward, the address {} balance: {}'.format(address1, address1_balance_after)) - data = rlp.encode( - [rlp.encode(int(1005)), rlp.encode(staking_num1), rlp.encode(bytes.fromhex(client1.node.node_id)), - rlp.encode(10 ** 18 * 1000)]) - connt = get_the_dynamic_parameter_gas_fee(data) - gas = (21000 + 6000 + 8000 + 100 + connt) * client1.pip.cfg.transaction_cfg.get('gasPrice') - assert address1_balance_before + reward_address1 - gas + 10 ** 18 * 1000 == address1_balance_after - - @pytest.mark.P2 - def test_IN_GR_019(self, clients_new_node): - client1 = clients_new_node[0] - client2 = clients_new_node[1] - address, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - staking_and_delegate(client1, address) - stakingnum = client1.staking.get_stakingblocknum() - result = client1.ppos.getDelegateReward(address, [client1.node.node_id, client2.node.node_id]) - assert len(result.get('Ret')) == 1 - assert result.get('Ret')[0].get('nodeID') == client1.node.node_id - assert result.get('Ret')[0].get('reward') == 0 - assert result.get('Ret')[0].get('stakingNum') == stakingnum - nodeid = 'ad5ef1acceadfb7f2c434e4451dbb8dd02f866d4344495f01908093d40cbe5a61a03' \ - '93eb09ec53abd7d270111f43f4a74c40e8c8680d3c47e1f190b5af991111' - result = client1.ppos.getDelegateReward(address, [client1.node.node_id, nodeid]) - assert len(result.get('Ret')) == 1 - assert result.get('Ret')[0].get('nodeID') == client1.node.node_id - assert result.get('Ret')[0].get('reward') == 0 - assert result.get('Ret')[0].get('stakingNum') == stakingnum - - client1.economic.wait_settlement(client1.node) - wait_block_number(client1.node, client1.node.block_number + 80) - verifier_list = get_pledge_list(client1.ppos.getVerifierList) - assert client1.node.node_id in verifier_list - balance_before_withdraw = client1.node.eth.getBalance(address) - log.info('Address {} before withdraw balance : {}'.format(address, balance_before_withdraw)) - result = client1.delegate.withdrew_delegate(stakingnum, address, amount=delegate_amount) - assert_code(result, 0) - data = rlp.encode([rlp.encode(int(1005)), rlp.encode(stakingnum), - rlp.encode(bytes.fromhex(client1.node.node_id)), rlp.encode(delegate_amount)]) - gas = (21000 + 6000 + 8000 + get_the_dynamic_parameter_gas_fee(data)) * client1.node.eth.gasPrice - balance_after_withdraw = client1.node.eth.getBalance(address) - log.info('Address {} after withdraw balance : {}'.format(address, balance_after_withdraw)) - assert balance_before_withdraw - gas + delegate_amount == balance_after_withdraw - - -class TestwithdrawDelegateReward(): - @pytest.mark.P0 - def test_IN_GR_020_IN_GR_021_IN_GR_022_IN_GR_023(self, client_new_node): - client = client_new_node - address, _ = client.economic.account.generate_account(client.node.web3, init_amount) - staking_and_delegate(client, address) - assert client.staking.get_rewardper() == 1000 - result = client.ppos.getDelegateReward(address) - log.info('Address {} delegate reward information : {}'.format(address, result)) - assert_code(result, 0) - balance_before_withdraw = client.node.eth.getBalance(address) - log.info('Address {} before withdraw reward balance : {}'.format(address, balance_before_withdraw)) - result = client.delegate.withdraw_delegate_reward(address) - log.info('Address {} withdraw delegate reward result : {}'.format(address, result)) - assert_code(result, 0) - client.economic.wait_consensus(client.node) - balance_after_withdraw = client.node.eth.getBalance(address) - log.info('Address {} after withdraw reward balance : {}'.format(address, balance_after_withdraw)) - gas = get_getDelegateReward_gas_fee(client, 1, 0) - assert balance_before_withdraw - gas == balance_after_withdraw - client.economic.wait_settlement(client.node) - blocknum = client.node.block_number - log.info('Block number : {}'.format(blocknum)) - verifier_list = get_pledge_list(client.ppos.getVerifierList) - assert client.node.node_id in verifier_list - - result = client.ppos.getDelegateReward(address) - log.info('Address {} delegate reward information : {}'.format(address, result)) - assert_code(result, 0) - assert result.get('Ret')[0].get('reward') == 0 - result = client.delegate.withdraw_delegate_reward(address) - log.info('Address {} withdraw delegate reward result : {}'.format(address, result)) - assert_code(result, 0) - balance_after_withdraw2 = client.node.eth.getBalance(address) - log.info('Address {} after withdraw reward balance : {}'.format(address, balance_after_withdraw2)) - gas = get_getDelegateReward_gas_fee(client, 1, 0) - assert balance_after_withdraw - gas == balance_after_withdraw2 - wait_block_number(client.node, math.ceil(blocknum / client.economic.settlement_size - ) * client.economic.settlement_size - 10) - result = client.ppos.getDelegateReward(address) - log.info('Address {} delegate reward information : {}'.format(address, result)) - assert_code(result, 0) - assert result.get('Ret')[0].get('reward') == 0 - wait_block_number(client.node, math.ceil(blocknum / client.economic.settlement_size - ) * client.economic.settlement_size) - log.info('blocknumber : {}'.format(client.node.block_number)) - result = client.ppos.getDelegateReward(address) - log.info('Address {} delegate reward information : {}'.format(address, result)) - assert_code(result, 0) - delegate_info = client.ppos.getDelegateInfo(client.staking.get_stakingblocknum(), address, - client.node.node_id) - log.info('Address delegate information : {}'.format(delegate_info)) - candidate_info = client.ppos.getCandidateInfo(client.node.node_id) - log.info('nodeid {} candidate information : {}'.format(client.node.node_id, candidate_info)) - reward = client.delegate.get_delegate_reward_by_nodeid(address, [client.node.node_id]) - log.info('Address {} reward : {}'.format(address, reward)) - assert reward != 0 - result = client.delegate.withdraw_delegate_reward(address) - log.info('Address {} withdraw delegate reward result : {}'.format(address, result)) - assert_code(result, 0) - balance_after_withdraw3 = client.node.eth.getBalance(address) - log.info('Address {} after withdraw reward balance : {}'.format(address, balance_after_withdraw3)) - gas = get_getDelegateReward_gas_fee(client, 1, 1) - assert balance_after_withdraw2 + reward - gas == balance_after_withdraw3 - - @pytest.mark.P2 - def test_IN_GR_024_IN_DR_002_IN_DR_003(self, clients_new_node): - client0 = clients_new_node[0] - client1 = clients_new_node[1] - address0, _ = client0.economic.account.generate_account(client0.node.web3, init_amount) - address1, _ = client0.economic.account.generate_account(client0.node.web3, init_amount) - address2, _ = client0.economic.account.generate_account(client0.node.web3, init_amount) - staking_and_delegate(client0, address0) - staking_and_delegate(client1, address1) - - stakingnum0 = client0.staking.get_stakingblocknum(client0.node) - stakingnum1 = client1.staking.get_stakingblocknum(client1.node) - - client0.economic.wait_settlement(client0.node) - result = client1.delegate.delegate(0, address0, amount=delegate_amount) - assert_code(result, 0) - client0.economic.wait_settlement(client0.node, 1) - balance_before_withdraw0 = client0.node.eth.getBalance(address0) - log.info('Address {} before withdraw balance : {}'.format(address0, balance_before_withdraw0)) - balance_before_withdraw1 = client0.node.eth.getBalance(address1) - log.info('Address {} before withdraw balance : {}'.format(address0, balance_before_withdraw1)) - rewards0 = client0.delegate.get_delegate_reward_by_nodeid(address0) - log.info('Address rewards : {}'.format(rewards0)) - rewards1 = client1.delegate.get_delegate_reward_by_nodeid(address1) - log.info('Address rewards : {}'.format(rewards1)) - result = client0.ppos.getDelegateReward(address2) - assert_code(result, 305001) - delegate_info0 = client0.ppos.getDelegateInfo(stakingnum0, address0, client0.node.node_id) - log.info('Address delegate nodeid {} information : {}'.format(client0.node.node_id, delegate_info0)) - delegate_info1 = client1.ppos.getDelegateInfo(stakingnum1, address0, client1.node.node_id) - log.info('Address delegate nodeid {} information : {}'.format(client1.node.node_id, delegate_info1)) - gas0 = get_getDelegateReward_gas_fee(client0, 2, 3) - gas1 = get_getDelegateReward_gas_fee(client1, 1, 2) - result = client0.delegate.withdraw_delegate_reward(address0) - assert_code(result, 0) - result = client1.delegate.withdraw_delegate_reward(address1) - assert_code(result, 0) - epoch0 = math.ceil(client0.node.block_number / client0.economic.settlement_size) - assert_cumulativeIncome_delegateepoch(client0, address0, delegateepoch=epoch0) - assert_cumulativeIncome_delegateepoch(client1, address0, delegateepoch=epoch0) - balance_after_withdraw0 = client0.node.eth.getBalance(address0) - log.info('After withdraw address {} balance : {}'.format(address0, balance_after_withdraw0)) - balance_after_withdraw1 = client0.node.eth.getBalance(address1) - log.info('After withdraw address {} balance : {}'.format(address1, balance_after_withdraw1)) - assert balance_before_withdraw0 - gas0 + rewards0 == balance_after_withdraw0 - assert balance_before_withdraw1 - gas1 + rewards1 == balance_after_withdraw1 - - @pytest.mark.P2 - def test_IN_DR_004_IN_DR_014(self, clients_new_node, reset_environment): - client0 = clients_new_node[0] - client1 = clients_new_node[1] - address0, _ = client0.economic.account.generate_account(client0.node.web3, init_amount) - address1, _ = client0.economic.account.generate_account(client0.node.web3, init_amount) - staking_and_delegate(client0, address0) - staking_and_delegate(client1, address1) - staking_num0 = client0.staking.get_stakingblocknum() - staking_num1 = client1.staking.get_stakingblocknum() - result = client1.delegate.delegate(0, address1, node_id=client0.node.node_id, amount=delegate_amount) - assert_code(result, 0) - epoch = math.ceil(client0.node.block_number / client0.economic.settlement_size) - client0.economic.wait_settlement(client0.node, 1) - rewards0 = client0.delegate.get_delegate_reward_by_nodeid(address0) - log.info('Address {} delegate rewards : {}'.format(address0, rewards0)) - rewards1 = client1.delegate.get_delegate_reward_by_nodeid(address1) - log.info('Address {} delegate rewards : {}'.format(address1, rewards1)) - rewards1_node0 = client1.delegate.get_delegate_reward_by_nodeid(address1, node_ids=[client0.node.node_id]) - log.info('Address {} delegate nodeid {} rewards : {}'.format(address1, client0.node.node_id, rewards1_node0)) - - balance_before0 = client0.node.eth.getBalance(address0) - log.info('Address {} before withdraw delegate balance : {}'.format(address0, balance_before0)) - balance_before1 = client1.node.eth.getBalance(address1) - log.info('Address {} before withdraw delegate balance : {}'.format(address0, balance_before1)) - result = client0.delegate.withdrew_delegate(staking_num0, address0, amount=delegate_amount) - assert_code(result, 0) - result = client0.delegate.withdrew_delegate(staking_num0, address1, amount=delegate_amount) - assert_code(result, 0) - - assert_cumulativeIncome_delegateepoch(client1, address1, delegateepoch=epoch) - data0 = rlp.encode([rlp.encode(int(1005)), rlp.encode(staking_num0), rlp.encode(bytes.fromhex( - client0.node.node_id)), rlp.encode(delegate_amount)]) - log.info('data {}'.format(data0)) - data1 = rlp.encode([rlp.encode(int(1005)), rlp.encode(staking_num1), rlp.encode(bytes.fromhex( - client1.node.node_id)), rlp.encode(delegate_amount)]) - gas0 = (21000 + 6000 + 8000 + 100 + get_the_dynamic_parameter_gas_fee(data0)) * client0.node.eth.gasPrice - gas1 = (21000 + 6000 + 8000 + 100 + get_the_dynamic_parameter_gas_fee(data1)) * client0.node.eth.gasPrice - print(gas0) - print(get_the_dynamic_parameter_gas_fee(data0)) - balance_after0 = client0.node.eth.getBalance(address0) - log.info('Address {} before withdraw delegate balance : {}'.format(address0, balance_after0)) - balance_after1 = client0.node.eth.getBalance(address1) - log.info('Address {} before withdraw delegate balance : {}'.format(address0, balance_after1)) - assert balance_before0 - gas0 + rewards0 + delegate_amount == balance_after0 - assert balance_before1 - gas1 + rewards1_node0 + delegate_amount == balance_after1 - - @pytest.mark.P2 - def test_withdraw_rewards_gas(self, clients_new_node, reset_environment): - client0 = clients_new_node[0] - # client1 = clients_new_node[1] - address0, _ = client0.economic.account.generate_account(client0.node.web3, init_amount) - address1, _ = client0.economic.account.generate_account(client0.node.web3, init_amount) - staking_and_delegate(client0, address0) - # staking_and_delegate(client1, address1) - staking_num0 = client0.staking.get_stakingblocknum() - # staking_num1 = client1.staking.get_stakingblocknum() - client0.economic.wait_settlement(client0.node) - result = client0.delegate.delegate(0, address1, node_id=client0.node.node_id, amount=delegate_amount) - assert_code(result, 0) - # epoch = math.ceil(client0.node.block_number/client0.economic.settlement_size) - client0.economic.wait_settlement(client0.node, 1) - rewards0 = client0.delegate.get_delegate_reward_by_nodeid(address0) - log.info('Address {} delegate rewards : {}'.format(address0, rewards0)) - rewards1 = client0.delegate.get_delegate_reward_by_nodeid(address1) - log.info('Address {} delegate rewards : {}'.format(address1, rewards1)) - - balance_before0 = client0.node.eth.getBalance(address0) - log.info('Address {} before withdraw delegate balance : {}'.format(address0, balance_before0)) - balance_before1 = client0.node.eth.getBalance(address1) - log.info('Address {} before withdraw delegate balance : {}'.format(address0, balance_before1)) - result = client0.delegate.withdraw_delegate_reward(address1) - assert_code(result, 0) - result = client0.delegate.withdraw_delegate_reward(address0) - assert_code(result, 0) - - balance_after0 = client0.node.eth.getBalance(address0) - log.info('Address {} before withdraw delegate balance : {}'.format(address0, balance_after0)) - balance_after1 = client0.node.eth.getBalance(address1) - log.info('Address {} before withdraw delegate balance : {}'.format(address0, balance_after1)) - gas0 = get_getDelegateReward_gas_fee(client0, 1, 2) - gas1 = get_getDelegateReward_gas_fee(client0, 1, 1) - assert balance_before0 - gas0 + rewards0 == balance_after0 - assert balance_before1 - gas1 + rewards1 == balance_after1 - - @pytest.mark.P2 - def test_IN_DR_005_IN_DR_015(self, clients_new_node, reset_environment): - client0 = clients_new_node[0] - client1 = clients_new_node[1] - address0, _ = client0.economic.account.generate_account(client0.node.web3, init_amount) - address1, _ = client0.economic.account.generate_account(client0.node.web3, init_amount) - staking_and_delegate(client0, address0) - staking_and_delegate(client1, address1) - staking_num0 = client0.staking.get_stakingblocknum() - staking_num1 = client1.staking.get_stakingblocknum() - result = client1.delegate.delegate(0, address1, node_id=client0.node.node_id, amount=delegate_amount) - assert_code(result, 0) - client0.economic.wait_settlement(client0.node, 1) - rewards0 = client0.delegate.get_delegate_reward_by_nodeid(address0) - log.info('Address {} delegate rewards : {}'.format(address0, rewards0)) - assert rewards0 > 0 - rewards1 = client1.delegate.get_delegate_reward_by_nodeid(address1) - log.info('Address {} delegate rewards : {}'.format(address1, rewards1)) - assert rewards1 > 0 - balance_before0 = client0.node.eth.getBalance(address0) - log.info('Address {} before withdraw delegate balance : {}'.format(address0, balance_before0)) - balance_before1 = client1.node.eth.getBalance(address1) - log.info('Address {} before withdraw delegate balance : {}'.format(address0, balance_before1)) - result = client0.delegate.withdrew_delegate(staking_num0, address0, amount=int(delegate_amount / 2)) - assert_code(result, 0) - result = client0.delegate.withdrew_delegate(staking_num0, address1, amount=int(delegate_amount / 2)) - assert_code(result, 0) - - data0 = rlp.encode([rlp.encode(int(1005)), rlp.encode(staking_num0), rlp.encode(bytes.fromhex( - client0.node.node_id)), rlp.encode(int(delegate_amount / 2))]) - data1 = rlp.encode([rlp.encode(int(1005)), rlp.encode(staking_num1), rlp.encode(bytes.fromhex( - client1.node.node_id)), rlp.encode(int(delegate_amount / 2))]) - gas0 = (21000 + 6000 + 8000 + 100 + get_the_dynamic_parameter_gas_fee(data0)) * client0.node.eth.gasPrice - gas1 = (21000 + 6000 + 8000 + 100 + get_the_dynamic_parameter_gas_fee(data1)) * client0.node.eth.gasPrice - balance_after0 = client0.node.eth.getBalance(address0) - log.info('Address {} before withdraw delegate balance : {}'.format(address0, balance_after0)) - balance_after1 = client0.node.eth.getBalance(address1) - log.info('Address {} before withdraw delegate balance : {}'.format(address0, balance_after1)) - - rewards0_after = client0.delegate.get_delegate_reward_by_nodeid(address0) - log.info('Address {} delegate rewards : {}'.format(address0, rewards0)) - rewards1_after = client0.delegate.get_delegate_reward_by_nodeid(address1) - log.info('Address {} delegate rewards : {}'.format(address1, rewards1)) - assert rewards0 == rewards0_after - assert rewards1 == rewards1_after - assert balance_before0 - gas0 + int(delegate_amount / 2) == balance_after0 - assert balance_before1 - gas1 + int(delegate_amount / 2) == balance_after1 - - result = client0.delegate.withdraw_delegate_reward(address0) - assert_code(result, 0) - result = client0.delegate.withdraw_delegate_reward(address1) - assert_code(result, 0) - balance_after0_withdraw = client0.node.eth.getBalance(address0) - log.info('Address after withdraw rewards balance : {}'.format(balance_after0_withdraw)) - balance_after1_withdraw = client0.node.eth.getBalance(address1) - log.info('Address after withdraw rewards balance : {}'.format(balance_after1_withdraw)) - gas0 = get_getDelegateReward_gas_fee(client0, 1, 0) - gas1 = get_getDelegateReward_gas_fee(client0, 2, 1) - assert balance_after0 - gas0 + rewards0 == balance_after0_withdraw - assert balance_after1 - gas1 + rewards1 == balance_after1_withdraw - - @pytest.mark.P0 - def test_IN_DR_001_IN_DR_002_IN_DR_016_IN_DR_017(self, clients_new_node): - client1 = clients_new_node[0] - client2 = clients_new_node[1] - address1, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - address2, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - result = client1.delegate.withdraw_delegate_reward(address1) - assert_code(result, 305001) - gas = get_getDelegateReward_gas_fee(client1, 0, 0) - client1.economic.wait_consensus(client1.node) - balance_after_withdraw_reward = client1.node.eth.getBalance(address1) - log.info('Address {} after withdraw reward balance {}'.format(address1, balance_after_withdraw_reward)) - assert init_amount - gas == balance_after_withdraw_reward - staking_and_delegate(client1, address1) - staking_and_delegate(client2, address1) - result = client2.delegate.delegate(0, address2, amount=10 ** 18 * 1000) - assert_code(result, 0) - - client1.economic.wait_settlement(client1.node, 1) - reward_address1 = client1.delegate.get_delegate_reward_by_nodeid(address1) - log.info('Address {} reward : {}'.format(address1, reward_address1)) - assert reward_address1 > 0 - reward_address2 = client1.delegate.get_delegate_reward_by_nodeid(address2) - log.info('Address {} reward : {}'.format(address2, reward_address2)) - assert reward_address2 > 0 - balance_before_address1 = client1.node.eth.getBalance(address1) - log.info('Before withdraw reward Address {} balance : {}'.format(address1, balance_before_address1)) - balance_before_address2 = client1.node.eth.getBalance(address2) - log.info('Before withdraw reward Address {} balance : {}'.format(address2, balance_before_address2)) - result = client1.delegate.withdraw_delegate_reward(address1) - assert_code(result, 0) - result = client1.delegate.withdraw_delegate_reward(address2) - assert_code(result, 0) - gas_address1 = get_getDelegateReward_gas_fee(client1, 2, 2) - log.info('Withdraw reward address gas : {}'.format(gas_address1)) - gas_address2 = get_getDelegateReward_gas_fee(client1, 1, 1) - log.info('Withdraw reward address gas : {}'.format(gas_address2)) - - balance_after_address1 = client1.node.eth.getBalance(address1) - log.info('After withdraw reward Address {} balance : {}'.format(address1, balance_after_address1)) - balance_after_address2 = client1.node.eth.getBalance(address2) - log.info('After withdraw reward Address {} balance : {}'.format(address2, balance_after_address2)) - - assert balance_before_address1 + reward_address1 - gas_address1 == balance_after_address1 - assert balance_before_address2 + reward_address2 - gas_address2 == balance_after_address2 - - client1.economic.wait_settlement(client1.node) - reward_address1 = client1.delegate.get_delegate_reward_by_nodeid(address1) - log.info('Address {} reward : {}'.format(address1, reward_address1)) - assert reward_address1 != 0 - reward_address2 = client1.delegate.get_delegate_reward_by_nodeid(address2) - log.info('Address {} reward : {}'.format(address2, reward_address2)) - assert reward_address2 != 0 - - result = client1.delegate.withdraw_delegate_reward(address1) - assert_code(result, 0) - result = client1.delegate.withdraw_delegate_reward(address2) - assert_code(result, 0) - gas_address1 = get_getDelegateReward_gas_fee(client1, 2, 2) - log.info('Withdraw reward address gas : {}'.format(gas_address1)) - gas_address2 = get_getDelegateReward_gas_fee(client1, 1, 1) - log.info('Withdraw reward address gas : {}'.format(gas_address2)) - - balance_after_address1_1 = client1.node.eth.getBalance(address1) - log.info('After withdraw reward Address {} balance : {}'.format(address1, balance_after_address1_1)) - balance_after_address2_1 = client1.node.eth.getBalance(address2) - log.info('After withdraw reward Address {} balance : {}'.format(address2, balance_after_address2_1)) - - assert balance_after_address1 + reward_address1 - gas_address1 == balance_after_address1_1 - assert balance_after_address2 + reward_address2 - gas_address2 == balance_after_address2_1 - - @pytest.mark.P2 - def test_IN_DR_006(self, clients_new_node): - client1 = clients_new_node[0] - client2 = clients_new_node[1] - address1, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - address2, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - staking_and_delegate(client1, address1) - staking_and_delegate(client2, address1) - result = client2.delegate.delegate(0, address2, amount=10 ** 18 * 1000) - assert_code(result, 0) - wait_block_number(client1.node, 2 * client1.economic.settlement_size - 40) - result = client1.staking.withdrew_staking(client1.node.staking_address, client1.node.node_id) - assert_code(result, 0) - candidate_info = client1.ppos.getCandidateInfo(client1.node.node_id) - log.info('Nodeid {} candiate information : {}'.format(client1.node.node_id, candidate_info)) - wait_block_number(client1.node, 2 * client1.economic.settlement_size) - candidate_info = client1.ppos.getCandidateInfo(client1.node.node_id) - log.info('Nodeid {} candiate information : {}'.format(client1.node.node_id, candidate_info)) - reward_address1_node1 = client1.delegate.get_delegate_reward_by_nodeid(address1, [client1.node.node_id]) - log.info('Address {} delegate node {} reward {}'.format(address1, client1.node.node_id, reward_address1_node1)) - assert reward_address1_node1 != 0 - reward_address1_node2 = client1.delegate.get_delegate_reward_by_nodeid(address1, [client2.node.node_id]) - log.info('Address {} delegate node {} reward {}'.format(address1, client2.node.node_id, reward_address1_node2)) - assert reward_address1_node2 != 0 - reward_address2 = client1.delegate.get_delegate_reward_by_nodeid(address2) - log.info('Address {} delegate reward : {}'.format(address2, reward_address2)) - assert reward_address2 != 0 - balance_before_address1 = client1.node.eth.getBalance(address1) - log.info('Before withdraw reward, address {} balance {}'.format(address1, balance_before_address1)) - balance_before_address2 = client1.node.eth.getBalance(address2) - log.info('Before withdraw reward, address {} balance {}'.format(address2, balance_before_address2)) - result = client1.delegate.withdraw_delegate_reward(address1) - assert_code(result, 0) - result = client1.delegate.withdraw_delegate_reward(address2) - assert_code(result, 0) - gas_address1 = get_getDelegateReward_gas_fee(client1, 2, 2) - gas_address2 = get_getDelegateReward_gas_fee(client1, 1, 1) - balance_after_address1 = client1.node.eth.getBalance(address1) - log.info('Address {} balance : {}'.format(address1, balance_after_address1)) - balance_after_address2 = client1.node.eth.getBalance(address2) - log.info('Address {} balance : {}'.format(address2, balance_after_address2)) - assert balance_before_address1 + reward_address1_node1 + reward_address1_node2 - gas_address1 == balance_after_address1 - assert balance_before_address2 + reward_address2 - gas_address2 == balance_after_address2 - - @pytest.mark.P2 - def test_IN_DR_007(self, clients_new_node): - client1 = clients_new_node[0] - client2 = clients_new_node[1] - address1, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - address2, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - staking_and_delegate(client1, address1) - staking_and_delegate(client2, address1) - result = client2.delegate.delegate(0, address2, amount=10 ** 18 * 1000) - assert_code(result, 0) - wait_block_number(client1.node, 2 * client1.economic.settlement_size - 40) - result = client1.staking.withdrew_staking(client1.node.staking_address, client1.node.node_id) - assert_code(result, 0) - wait_block_number(client1.node, 2 * client1.economic.settlement_size) - reward_address1_node1 = client1.delegate.get_delegate_reward_by_nodeid(address1, [client1.node.node_id]) - log.info('Address {} delegate node {} reward {}'.format(address1, client1.node.node_id, reward_address1_node1)) - assert reward_address1_node1 != 0 - reward_address1_node2 = client1.delegate.get_delegate_reward_by_nodeid(address1, [client2.node.node_id]) - log.info('Address {} delegate node {} reward {}'.format(address1, client2.node.node_id, reward_address1_node2)) - assert reward_address1_node2 != 0 - reward_address2 = client1.delegate.get_delegate_reward_by_nodeid(address2) - log.info('Address {} delegate reward : {}'.format(address2, reward_address2)) - assert reward_address2 != 0 - wait_block_number(client1.node, ( - 2 + client1.economic.genesis.economicModel.staking.unStakeFreezeDuration) * client1.economic.settlement_size) - balance_before_address1 = client1.node.eth.getBalance(address1) - log.info('Before withdraw reward, address {} balance {}'.format(address1, balance_before_address1)) - balance_before_address2 = client1.node.eth.getBalance(address2) - log.info('Before withdraw reward, address {} balance {}'.format(address2, balance_before_address2)) - - reward_address1_node1_2 = client1.delegate.get_delegate_reward_by_nodeid(address1, [client1.node.node_id]) - log.info( - 'Address {} delegate node {} reward {}'.format(address1, client1.node.node_id, reward_address1_node1_2)) - assert reward_address1_node1 == reward_address1_node1_2 - reward_address1_node2_2 = client1.delegate.get_delegate_reward_by_nodeid(address1, [client2.node.node_id]) - log.info( - 'Address {} delegate node {} reward {}'.format(address1, client2.node.node_id, reward_address1_node2_2)) - assert reward_address1_node2 < reward_address1_node2_2 - reward_address2_2 = client1.delegate.get_delegate_reward_by_nodeid(address2) - log.info('Address {} delegate node {} reward {}'.format(address2, client2.node.node_id, reward_address2_2)) - assert reward_address2 < reward_address2_2 - - result = client1.delegate.withdraw_delegate_reward(address1) - assert_code(result, 0) - result = client1.delegate.withdraw_delegate_reward(address2) - assert_code(result, 0) - gas_address1 = get_getDelegateReward_gas_fee(client1, 2, 4) - gas_address2 = get_getDelegateReward_gas_fee(client1, 1, 3) - balance_after_address1 = client1.node.eth.getBalance(address1) - log.info('Address {} balance : {}'.format(address1, balance_after_address1)) - balance_after_address2 = client1.node.eth.getBalance(address2) - log.info('Address {} balance : {}'.format(address2, balance_after_address2)) - - assert balance_before_address1 + reward_address1_node1_2 + reward_address1_node2_2 - gas_address1 == balance_after_address1 - assert balance_before_address2 + reward_address2_2 - gas_address2 == balance_after_address2 - - @pytest.mark.P2 - def test_IN_DR_008(self, clients_new_node): - client1 = clients_new_node[0] - client2 = clients_new_node[1] - address1, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - address2, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - staking_and_delegate(client1, address1) - staking_and_delegate(client2, address1) - result = client1.delegate.delegate(0, address2, amount=10 ** 18 * 1000) - assert_code(result, 0) - wait_block_number(client1.node, 2 * client1.economic.settlement_size - 40) - report_information = mock_duplicate_sign(1, client1.node.nodekey, client1.node.blsprikey, - 2 * client1.economic.settlement_size - 50) - log.info("Report information: {}".format(report_information)) - address, _ = client1.economic.account.generate_account(client1.node.web3, 10 ** 18 * 1000) - result = client2.duplicatesign.reportDuplicateSign(1, report_information, address) - log.info('Node duplicate block result : {}'.format(result)) - assert_code(result, 0) - wait_block_number(client2.node, 2 * client1.economic.settlement_size) - reward_address1_node1 = client2.delegate.get_delegate_reward_by_nodeid(address1, [client1.node.node_id]) - log.info( - 'Address {} delegate node {} reward is {}'.format(address1, client1.node.node_id, reward_address1_node1)) - assert reward_address1_node1 == 0 - reward_address1_node2 = client2.delegate.get_delegate_reward_by_nodeid(address1, [client2.node.node_id]) - log.info( - 'Address {} delegate node {} reward is {}'.format(address1, client2.node.node_id, reward_address1_node2)) - assert reward_address1_node2 > 0 - reward_address2 = client2.delegate.get_delegate_reward_by_nodeid(address2) - log.info('Address {} reward is {}'.format(address2, reward_address2)) - assert reward_address2 == 0 - balance_address1_before_withdraw = client1.node.eth.getBalance(address1) - log.info('Address {} before withdraw balance {}'.format(address1, balance_address1_before_withdraw)) - balance_address2_before_withdraw = client1.node.eth.getBalance(address2) - log.info('Address {} before withdraw balance {}'.format(address2, balance_address2_before_withdraw)) - result = client1.delegate.withdraw_delegate_reward(address1) - assert_code(result, 0) - result = client1.delegate.withdraw_delegate_reward(address2) - assert_code(result, 0) - gas1 = get_getDelegateReward_gas_fee(client1, 2, 1) - gas2 = get_getDelegateReward_gas_fee(client2, 1, 0) - balance_address1_after_withdraw = client1.node.eth.getBalance(address1) - log.info('Address {} before withdraw balance {}'.format(address1, balance_address1_after_withdraw)) - balance_address2_after_withdraw = client1.node.eth.getBalance(address2) - log.info('Address {} before withdraw balance {}'.format(address2, balance_address2_after_withdraw)) - assert balance_address1_before_withdraw - gas1 + reward_address1_node2 == balance_address1_after_withdraw - assert balance_address2_before_withdraw - gas2 == balance_address2_after_withdraw - - @pytest.mark.P2 - def test_IN_DR_010(self, clients_new_node): - client1 = clients_new_node[0] - client2 = clients_new_node[1] - address1, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - address2, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - staking_and_delegate(client1, address1) - staking_and_delegate(client2, address1) - stakingnum1 = client1.staking.get_stakingblocknum(client1.node) - result = client1.delegate.delegate(0, address2, amount=10 ** 18 * 1000) - assert_code(result, 0) - client1.economic.wait_settlement(client1.node) - verifier_list = get_pledge_list(client1.ppos.getVerifierList) - assert client1.node.node_id in verifier_list - assert client2.node.node_id in verifier_list - wait_block_number(client1.node, 2 * client1.economic.settlement_size - 40) - - result = client1.delegate.withdrew_delegate(stakingnum1, address1, amount=10 ** 18 * 1000) - assert_code(result, 0) - result = client1.delegate.withdrew_delegate(stakingnum1, address2, amount=10 ** 18 * 500) - assert_code(result, 0) - result = client1.ppos.getDelegateReward(address1, [client1.node.node_id]) - log.info('Address {} delegate nodeid {} reward {}'.format(address1, client1.node.node_id, result)) - assert_code(result, 305001) - result = client1.ppos.getDelegateReward(address1, [client2.node.node_id]) - log.info( - 'Address {} delegate nodeid {} reward {}'.format(address1, client1.node.node_id, result)) - assert_code(result, 0) - assert result.get('Ret')[0].get('reward') == 0 - delegateinfo_address2 = client1.ppos.getDelegateInfo(stakingnum1, address2, client1.node.node_id) - log.info('Address {} delegate information : {}'.format(address2, delegateinfo_address2)) - result = client1.ppos.getDelegateReward(address2) - assert_code(result, 0) - assert result.get('Ret')[0].get('reward') == 0 - - client1.economic.wait_settlement(client1.node) - - result = client1.ppos.getDelegateReward(address1, [client1.node.node_id]) - log.info('Address {} delegate nodeid {} reward {}'.format(address1, client1.node.node_id, result)) - assert_code(result, 305001) - result = client1.ppos.getDelegateReward(address1, [client2.node.node_id]) - log.info( - 'Address {} delegate nodeid {} reward {}'.format(address1, client1.node.node_id, result)) - assert_code(result, 0) - assert result.get('Ret')[0].get('reward') > 0 - result = client1.ppos.getDelegateReward(address2) - log.info('Address {} delegate nodeid {} reward {}'.format(address2, client1.node.node_id, result)) - assert_code(result, 0) - assert result.get('Ret')[0].get('reward') > 0 - - @pytest.mark.P2 - def test_IN_DR_012(self, clients_new_node): - client1 = clients_new_node[0] - client2 = clients_new_node[1] - address1, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - address2, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - staking_and_delegate(client1, address1) - staking_and_delegate(client2, address1) - result = client1.delegate.delegate(0, address2, amount=10 ** 18 * 1000) - assert_code(result, 0) - client1.economic.wait_settlement(client1.node) - verifier_list = get_pledge_list(client1.ppos.getVerifierList) - assert client1.node.node_id in verifier_list - assert client2.node.node_id in verifier_list - wait_block_number(client1.node, 2 * client1.economic.settlement_size - 40) - result = client1.delegate.delegate(0, address1, amount=10 ** 18 * 1000) - assert_code(result, 0) - - result = client1.delegate.delegate(0, address2, amount=10 ** 18 * 1000) - assert_code(result, 0) - client1.economic.wait_settlement(client1.node) - - reward_address1_node1 = client1.delegate.get_delegate_reward_by_nodeid(address1, [client1.node.node_id]) - log.info( - 'Address {} delegate nodeid {} reward {}'.format(address1, client1.node.node_id, reward_address1_node1)) - assert reward_address1_node1 > 0 - reward_address1_node2 = client1.delegate.get_delegate_reward_by_nodeid(address1, [client2.node.node_id]) - log.info( - 'Address {} delegate nodeid {} reward {}'.format(address1, client2.node.node_id, reward_address1_node2)) - assert reward_address1_node2 > 0 - reward_address2 = client1.delegate.get_delegate_reward_by_nodeid(address2, [client1.node.node_id]) - log.info( - 'Address {} delegate nodeid {} reward {}'.format(address2, client1.node.node_id, reward_address2)) - assert reward_address2 > 0 - - balance_address1_before_withdraw = client1.node.eth.getBalance(address1) - log.info('Address {} before withdraw balance {}'.format(address1, balance_address1_before_withdraw)) - result = client1.delegate.withdraw_delegate_reward(address1) - assert_code(result, 0) - balance_address1 = client1.node.eth.getBalance(address1) - log.info('Address {} after withdraw balance {}'.format(address1, balance_address1)) - gas = get_getDelegateReward_gas_fee(client1, 2, 2) - assert balance_address1_before_withdraw - gas + reward_address1_node1 + reward_address1_node2 == balance_address1 - - balance_address2_before_withdraw = client1.node.eth.getBalance(address2) - log.info('Address {} before withdraw balance {}'.format(address2, balance_address2_before_withdraw)) - result = client1.delegate.withdraw_delegate_reward(address2) - assert_code(result, 0) - balance_address2 = client1.node.eth.getBalance(address2) - log.info('Address {} after withdraw balance {}'.format(address2, balance_address2)) - gas = get_getDelegateReward_gas_fee(client1, 1, 1) - assert balance_address2_before_withdraw - gas + reward_address2 == balance_address2 - - @pytest.mark.P2 - def test_IN_DR_013(self, clients_new_node): - client1 = clients_new_node[0] - client2 = clients_new_node[1] - address1, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - address2, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - staking_and_delegate(client1, address1) - staking_and_delegate(client2, address1) - result = client1.delegate.delegate(0, address2, amount=10 ** 18 * 1000) - assert_code(result, 0) - client1.economic.wait_settlement(client1.node) - verifier_list = get_pledge_list(client1.ppos.getVerifierList) - assert client1.node.node_id in verifier_list - assert client2.node.node_id in verifier_list - wait_block_number(client1.node, 2 * client1.economic.settlement_size - 40) - - client1.economic.wait_settlement(client1.node) - - reward_address1_node1 = client1.delegate.get_delegate_reward_by_nodeid(address1, [client1.node.node_id]) - log.info( - 'Address {} delegate nodeid {} reward {}'.format(address1, client1.node.node_id, reward_address1_node1)) - assert reward_address1_node1 > 0 - reward_address1_node2 = client1.delegate.get_delegate_reward_by_nodeid(address1, [client2.node.node_id]) - log.info( - 'Address {} delegate nodeid {} reward {}'.format(address1, client2.node.node_id, reward_address1_node2)) - assert reward_address1_node2 > 0 - reward_address2 = client1.delegate.get_delegate_reward_by_nodeid(address2, [client1.node.node_id]) - log.info( - 'Address {} delegate nodeid {} reward {}'.format(address2, client1.node.node_id, reward_address2)) - assert reward_address2 > 0 - - balance_address1_before_withdraw = client1.node.eth.getBalance(address1) - log.info('Address {} before withdraw balance {}'.format(address1, balance_address1_before_withdraw)) - result = client1.delegate.withdraw_delegate_reward(address1) - assert_code(result, 0) - balance_address1 = client1.node.eth.getBalance(address1) - log.info('Address {} after withdraw balance {}'.format(address1, balance_address1)) - gas = get_getDelegateReward_gas_fee(client1, 2, 2) - assert balance_address1_before_withdraw - gas + reward_address1_node1 + reward_address1_node2 == balance_address1 - - balance_address2_before_withdraw = client1.node.eth.getBalance(address2) - log.info('Address {} before withdraw balance {}'.format(address2, balance_address2_before_withdraw)) - result = client1.delegate.withdraw_delegate_reward(address2) - assert_code(result, 0) - balance_address2 = client1.node.eth.getBalance(address2) - log.info('Address {} after withdraw balance {}'.format(address2, balance_address2)) - gas = get_getDelegateReward_gas_fee(client1, 1, 1) - assert balance_address2_before_withdraw - gas + reward_address2 == balance_address2 - - -class TestGas: - @pytest.mark.P1 - def test_IN_GA_001_IN_GA_002(self, clients_new_node, reset_environment): - client1 = clients_new_node[0] - client2 = clients_new_node[1] - address1, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - address2, _ = client1.economic.account.generate_account(client1.node.web3, init_amount) - balance = client1.node.eth.getBalance(address1) - log.info('Address {} balance : {}'.format(address1, balance)) - staking_and_delegate(client1, address1) - client1.economic.wait_consensus(client1.node) - stakingnum = client1.staking.get_stakingblocknum() - balance_address1 = client1.node.eth.getBalance(address1) - log.info('Address {} balance : {}'.format(address1, balance_address1)) - data = rlp.encode([rlp.encode(int(1004)), rlp.encode(0), rlp.encode(bytes.fromhex(client1.node.node_id)), - rlp.encode(10 ** 18 * 1000)]) - gas = (21000 + 6000 + 16000 + get_the_dynamic_parameter_gas_fee(data)) * client1.node.eth.gasPrice - assert balance - delegate_amount - gas == balance_address1 - time.sleep(10) - - balance_address1 = client2.node.eth.getBalance(address1) - print('balance_address1: {}'.format(balance_address1)) - staking_and_delegate(client2, address1) - time.sleep(2) - balance_address1_1 = client2.node.eth.getBalance(address1) - log.info('Address {} balance : {}'.format(address1, balance_address1_1)) - data = rlp.encode([rlp.encode(int(1004)), rlp.encode(0), rlp.encode(bytes.fromhex(client1.node.node_id)), - rlp.encode(10 ** 18 * 1000)]) - gas = (21000 + 6000 + 16000 + get_the_dynamic_parameter_gas_fee(data)) * client1.node.eth.gasPrice - transaction_data = {"to": EconomicConfig.STAKING_ADDRESS, "data": data, "from": address1} - estimated_gas = client1.node.eth.estimateGas(transaction_data) - print(gas, estimated_gas) - assert balance_address1 - gas - delegate_amount == balance_address1_1 - - client1.delegate.withdrew_delegate(stakingnum, address1, amount=10 ** 18 * 100) - banlance_address1_after_withdraw = client1.node.eth.getBalance(address1) - log.info('Address {} after withdraw balance : {}'.format(address1, banlance_address1_after_withdraw)) - data = rlp.encode( - [rlp.encode(int(1005)), rlp.encode(stakingnum), rlp.encode(bytes.fromhex(client1.node.node_id)), - rlp.encode(10 ** 18 * 100)]) - gas = (21000 + 6000 + 8000 + get_the_dynamic_parameter_gas_fee(data)) * client1.node.eth.gasPrice - assert balance_address1_1 - gas + 10 ** 18 * 100 == banlance_address1_after_withdraw - - result = client1.delegate.delegate(0, address2, amount=10 ** 18 * 1000) - assert_code(result, 0) - balance_address2 = client1.node.eth.getBalance(address2) - log.info('Address {} balance : {}'.format(address2, balance_address2)) - data = rlp.encode([rlp.encode(int(1004)), rlp.encode(0), rlp.encode(bytes.fromhex(client1.node.node_id)), - rlp.encode(10 ** 18 * 1000)]) - gas = (21000 + 6000 + 16000 + get_the_dynamic_parameter_gas_fee(data)) * client1.node.eth.gasPrice - assert 10 ** 18 * 9000 - gas == balance_address1 - client1.economic.wait_settlement(client1.node) - verifier_list = get_pledge_list(client1.ppos.getVerifierList) - assert client1.node.node_id in verifier_list - assert client2.node.node_id in verifier_list - wait_block_number(client1.node, 2 * client1.economic.settlement_size - 40) - result = client1.delegate.delegate(0, address1, amount=10 ** 18 * 1000) - assert_code(result, 0) - balance_address1_2 = client1.node.eth.getBalance(address1) - log.info('Address {} balance {}'.format(address1, balance_address2)) - assert banlance_address1_after_withdraw - gas - 10 ** 18 * 1000 == balance_address1_2 - - result = client1.delegate.withdrew_delegate(stakingnum, address1, amount=10 ** 18 * 100) - assert_code(result, 0) - banlance_address1_after_withdraw_1 = client1.node.eth.getBalance(address1) - log.info('Address {} after withdraw balance : {}'.format(address1, banlance_address1_after_withdraw)) - data = rlp.encode( - [rlp.encode(int(1005)), rlp.encode(stakingnum), rlp.encode(bytes.fromhex(client1.node.node_id)), - rlp.encode(10 ** 18 * 100)]) - gas = (21000 + 6000 + 8000 + get_the_dynamic_parameter_gas_fee(data)) * client1.node.eth.gasPrice - assert balance_address1_2 + 10 ** 18 * 100 - gas == banlance_address1_after_withdraw_1 - client1.economic.wait_settlement(client1.node) - - result = client1.delegate.delegate(0, address1, amount=10 ** 18 * 1000) - assert_code(result, 0) - balance_address1_3 = client1.node.eth.getBalance(address1) - log.info('Address {} balance : {}'.format(address1, balance_address1_3)) - data = rlp.encode([rlp.encode(int(1004)), rlp.encode(0), rlp.encode(bytes.fromhex(client1.node.node_id)), - rlp.encode(10 ** 18 * 1000)]) - gas = (21000 + 6000 + 16000 + get_the_dynamic_parameter_gas_fee(data) + 100) * client1.node.eth.gasPrice - assert banlance_address1_after_withdraw_1 - 10 ** 18 * 1000 - gas == balance_address1_3 - - result = client1.delegate.withdrew_delegate(stakingnum, address1, amount=10 ** 18 * 100) - assert_code(result, 0) - balance_address1_4 = client1.node.eth.getBalance(address1) - data = rlp.encode( - [rlp.encode(int(1005)), rlp.encode(stakingnum), rlp.encode(bytes.fromhex(client1.node.node_id)), - rlp.encode(10 ** 18 * 100)]) - gas = (21000 + 6000 + 8000 + get_the_dynamic_parameter_gas_fee(data)) * client1.node.eth.gasPrice - assert balance_address1_3 + 10 ** 18 * 100 - gas == balance_address1_4 - - client1.economic.wait_settlement(client1.node) - - result = client1.delegate.delegate(0, address1, amount=10 ** 18 * 100) - assert_code(result, 0) - balance_address1_5 = client1.node.eth.getBalance(address1) - data = rlp.encode([rlp.encode(int(1004)), rlp.encode(0), rlp.encode(bytes.fromhex(client1.node.node_id)), - rlp.encode(10 ** 18 * 100)]) - gas = (21000 + 6000 + 16000 + get_the_dynamic_parameter_gas_fee(data) + 100) * client1.node.eth.gasPrice - assert balance_address1_4 - 10 ** 18 * 100 - gas == balance_address1_5 - - result = client1.delegate.withdrew_delegate(stakingnum, address1, amount=10 ** 18 * 100) - assert_code(result, 0) - balance_address1_6 = client1.node.eth.getBalance(address1) - data = rlp.encode( - [rlp.encode(int(1005)), rlp.encode(stakingnum), rlp.encode(bytes.fromhex(client1.node.node_id)), - rlp.encode(10 ** 18 * 100)]) - gas = (21000 + 6000 + 8000 + get_the_dynamic_parameter_gas_fee(data)) * client1.node.eth.gasPrice - assert balance_address1_5 + 10 ** 18 * 100 - gas == balance_address1_6 - - @pytest.mark.P2 - def test_IN_GA_003_IN_GA_004(self, client_new_node): - client = client_new_node - address, _ = client.economic.account.generate_account(client.node.web3, init_amount) - staking_and_delegate(client, address) - stakingnum = client.staking.get_stakingblocknum() - balance_address = client.node.eth.getBalance(address) - log.info('Address {} balance : {}'.format(address, balance_address)) - data = rlp.encode([rlp.encode(int(1004)), rlp.encode(0), rlp.encode(bytes.fromhex(client.node.node_id)), - rlp.encode(10 ** 18 * 1000)]) - gas = (21000 + 6000 + 16000 + get_the_dynamic_parameter_gas_fee(data)) * client.node.eth.gasPrice - assert 10 ** 18 * 9000 - gas == balance_address - - client.economic.wait_settlement(client.node, 2) - - result = client.delegate.withdrew_delegate(stakingnum, address, amount=10 ** 18 * 900) - assert_code(result, 0) - balance_address_1 = client.node.eth.getBalance(address) - log.info('Address {} balance : {}'.format(address, balance_address_1)) - data = rlp.encode( - [rlp.encode(int(1005)), rlp.encode(stakingnum), rlp.encode(bytes.fromhex(client.node.node_id)), - rlp.encode(10 ** 18 * 900)]) - gas = (21000 + 6000 + 8000 + get_the_dynamic_parameter_gas_fee(data) + 200) * client.node.eth.gasPrice - assert balance_address - gas + 10 ** 18 * 900 == balance_address_1 - - @pytest.mark.P2 - def test_IN_GA_005_IN_GA_006(self, client_new_node): - client = client_new_node - address, _ = client.economic.account.generate_account(client.node.web3, init_amount) - staking_and_delegate(client, address) - stakingnum = client.staking.get_stakingblocknum() - balance_address = client.node.eth.getBalance(address) - log.info('Address {} balance : {}'.format(address, balance_address)) - data = rlp.encode([rlp.encode(int(1004)), rlp.encode(0), rlp.encode(bytes.fromhex(client.node.node_id)), - rlp.encode(10 ** 18 * 1000)]) - gas = (21000 + 6000 + 16000 + get_the_dynamic_parameter_gas_fee(data)) * client.node.eth.gasPrice - assert 10 ** 18 * 9000 - gas == balance_address - - client.economic.wait_settlement(client.node, 3) - reward = client.delegate.get_delegate_reward_by_nodeid(address) - log.info('Address {} delegate reward {}'.format(address, reward)) - - result = client.delegate.withdrew_delegate(stakingnum, address, amount=10 ** 18 * 1000) - assert_code(result, 0) - balance_address_1 = client.node.eth.getBalance(address) - log.info('Address {} balance : {}'.format(address, balance_address_1)) - data = rlp.encode( - [rlp.encode(int(1005)), rlp.encode(stakingnum), rlp.encode(bytes.fromhex(client.node.node_id)), - rlp.encode(10 ** 18 * 1000)]) - gas = (21000 + 6000 + 8000 + get_the_dynamic_parameter_gas_fee(data) + 300) * client.node.eth.gasPrice - assert balance_address - gas + 10 ** 18 * 1000 + reward == balance_address_1 - - @pytest.mark.P2 - def test_IN_GA_007_IN_GA_008(self, client_new_node, reset_environment): - client = client_new_node - address, _ = client.economic.account.generate_account(client.node.web3, init_amount) - staking_and_delegate(client, address) - stakingnum = client.staking.get_stakingblocknum() - balance_address = client.node.eth.getBalance(address) - log.info('Address {} balance : {}'.format(address, balance_address)) - data = rlp.encode([rlp.encode(int(1004)), rlp.encode(0), rlp.encode(bytes.fromhex(client.node.node_id)), - rlp.encode(10 ** 18 * 1000)]) - gas = (21000 + 6000 + 16000 + get_the_dynamic_parameter_gas_fee(data)) * client.node.eth.gasPrice - assert 10 ** 18 * 9000 - gas == balance_address - - client.economic.wait_settlement(client.node, 2) - - data = rlp.encode( - [rlp.encode(int(1005)), rlp.encode(stakingnum), rlp.encode(bytes.fromhex(client.node.node_id)), - rlp.encode(10 ** 18 * 900)]) - gas = 21000 + 6000 + 8000 + get_the_dynamic_parameter_gas_fee(data) + 99 - - try: - client.delegate.withdrew_delegate(stakingnum, address, amount=10 ** 18 * 900, - transaction_cfg={'gas': gas}) - except IndexError as e: - assert str(e) == "list index out of range" - - gas = 21000 + get_the_dynamic_parameter_gas_fee(data) - try: - client.delegate.withdrew_delegate(stakingnum, address, amount=10 ** 18 * 900, - transaction_cfg={'gas': gas}) - except IndexError as e: - assert str(e) == "list index out of range" - - gas = 21000 + get_the_dynamic_parameter_gas_fee(data) - 1 - try: - client.delegate.withdrew_delegate(stakingnum, address, amount=10 ** 18 * 900, - transaction_cfg={'gas': gas}) - except ValueError as e: - assert e.args[0].get('message') == "intrinsic gas too low" - - @pytest.mark.P2 - def test_IN_GA_009_IN_GA_010(self, client_new_node, reset_environment): - client = client_new_node - a = get_getDelegateReward_gas_fee(client, 1, 1) - log.info(a) - log.info(client.node.eth.gasPrice) - address, _ = client.economic.account.generate_account(client.node.web3, init_amount) - data = rlp.encode([rlp.encode(int(5000))]) - - gas = 21000 + get_the_dynamic_parameter_gas_fee(data) - 1 - try: - client.delegate.withdraw_delegate_reward(address, transaction_cfg={'gas': gas}) - except ValueError as e: - assert e.args[0].get('message') == "intrinsic gas too low" - gas = 21000 + get_the_dynamic_parameter_gas_fee(data) - try: - client.delegate.withdraw_delegate_reward(address, transaction_cfg={'gas': gas}) - except IndexError as e: - assert str(e) == "list index out of range" - - gas = 21000 + 3000 + 8000 + get_the_dynamic_parameter_gas_fee(data) - 1 - try: - client.delegate.withdraw_delegate_reward(address, transaction_cfg={'gas': gas}) - except IndexError as e: - assert str(e) == "list index out of range" - - result = client.delegate.withdraw_delegate_reward(address, transaction_cfg={'gas': gas + 1}) - assert_code(result, 305001) - - staking_and_delegate(client, address) - gas = 21000 + 3000 + 8000 + get_the_dynamic_parameter_gas_fee(data) + 1000 - balance_before_fail = client.node.eth.getBalance(address) - log.info('Before withdraw reward--fail address balance : {}'.format(balance_before_fail)) - try: - client.delegate.withdraw_delegate_reward(address, transaction_cfg={'gas': gas - 1}) - except IndexError as e: - assert str(e) == "list index out of range" - balance_before = client.node.eth.getBalance(address) - log.info('Before withdraw reward address balance : {}'.format(balance_before)) - assert balance_before_fail - (gas - 1) * client.node.eth.gasPrice == balance_before - result = client.delegate.withdraw_delegate_reward(address, transaction_cfg={'gas': gas}) - assert_code(result, 0) - - balance_after = client.node.eth.getBalance(address) - log.info('After withdraw reward address balance : {}'.format(balance_after)) - assert balance_before - gas * client.node.eth.gasPrice == balance_after - - @pytest.mark.P2 - def test_IN_GA_011_IN_GA_012(self, clients_new_node): - client0 = clients_new_node[0] - client1 = clients_new_node[1] - address0, _ = client0.economic.account.generate_account(client0.node.web3, init_amount) - address1, _ = client0.economic.account.generate_account(client0.node.web3, init_amount) - staking_and_delegate(client0, address0) - staking_and_delegate(client1, address1) - staking_num0 = client0.staking.get_stakingblocknum(client0.node) - staking_num1 = client1.staking.get_stakingblocknum(client1.node) - client0.economic.wait_settlement(client0.node, 2) - balance_before_withdraw0 = client0.node.eth.getBalance(address0) - log.info('Before withdraw address {} balance {}'.format(address0, balance_before_withdraw0)) - balance_before_withdraw1 = client0.node.eth.getBalance(address1) - log.info('Before withdraw address {} balance {}'.format(address1, balance_before_withdraw1)) - result = client0.delegate.withdrew_delegate(staking_num0, address0, amount=int(delegate_amount / 2)) - assert_code(result, 0) - rewards = client1.delegate.get_delegate_reward_by_nodeid(address1) - log.info('Address {} rewards {}'.format(address1, rewards)) - assert rewards > 0 - result = client1.delegate.withdrew_delegate(staking_num1, address1, amount=delegate_amount) - assert_code(result, 0) - data0 = rlp.encode([rlp.encode(int(1005)), rlp.encode(staking_num0), rlp.encode(bytes.fromhex( - client0.node.node_id)), rlp.encode(int(delegate_amount / 2))]) - data1 = rlp.encode([rlp.encode(int(1005)), rlp.encode(staking_num1), rlp.encode(bytes.fromhex( - client1.node.node_id)), rlp.encode(delegate_amount)]) - gas0 = (21000 + 8000 + 6000 + get_the_dynamic_parameter_gas_fee(data0) + 200) * client0.node.eth.gasPrice - gas1 = (21000 + 8000 + 6000 + get_the_dynamic_parameter_gas_fee(data1) + 200) * client0.node.eth.gasPrice - balance_after_withdraw0 = client0.node.eth.getBalance(address0) - log.info('After withdraw address {} balance {}'.format(address0, balance_after_withdraw0)) - balance_after_withdraw1 = client0.node.eth.getBalance(address1) - log.info('After withdraw address {} balance {}'.format(address1, balance_after_withdraw1)) - assert balance_before_withdraw0 - gas0 + int(delegate_amount / 2) == balance_after_withdraw0 - assert balance_before_withdraw1 - gas1 + delegate_amount + rewards == balance_after_withdraw1 - - -class TestNet: - def deploy_me(self, global_test_env, net): - global_test_env.deploy_all() - node = global_test_env.get_a_normal_node() - log.info('Node id {}'.format(node.node_id)) - test_node = copy(node) - test_node.clean() - new_cfg = copy(global_test_env.cfg) - new_cfg.init_chain = False - if net == 'main': - new_cfg.append_cmd = "--alaya" - elif net == 'alayatestnet': - new_cfg.append_cmd = "--alayatestnet" - elif net == 'rallynet': - new_cfg.append_cmd = "--rallynet" - elif net == 'uatnet': - new_cfg.append_cmd = "--uatnet" - elif net == 'demonet': - new_cfg.append_cmd = "--demonet" - else: - raise Exception('No {} net'.format(net)) - test_node.cfg = new_cfg - log.info("start deploy {}".format(test_node.node_mark)) - log.info("is init:{}".format(test_node.cfg.init_chain)) - test_node.deploy_me(genesis_file=None) - log.info("deploy end") - return test_node - - # @pytest.mark.P2 - # def test_DD_NE_001(self, global_test_env): - # test_node = self.deploy_me(global_test_env, 'main') - # try: - # log.info(test_node.admin.nodeInfo) - # except Exception as e: - # e == "20 seconds" - # log_file = "/home/platon/trantor_test/node-{}/log/platon.log".format(test_node.p2p_port) - # test_node.sftp.get(log_file, conf.LOG_FILE) - # with open(conf.LOG_FILE, 'r') as f: - # info = f.readlines() - # log.info(info[-1]) - # assert info[-1].strip() == "Fatal: Error starting protocol stack: EconomicModel config is nil" - - @pytest.mark.P2 - def test_DD_NE_002(self, global_test_env): - test_node = self.deploy_me(global_test_env, 'alayatestnet') - assert test_node.admin.nodeInfo.get('protocols').get('platon').get('config').get('chainId') == 201030 - assert test_node.admin.nodeInfo.get('protocols').get('platon').get('network') == 1 - - @pytest.mark.P2 - def test_DD_NE_003(self, global_test_env): - pass - # test_node = self.deploy_me(global_test_env, 'rallynet') - # assert test_node.admin.nodeInfo.get('protocols').get('platon').get('config').get('chainId') == 94 - # assert test_node.admin.nodeInfo.get('protocols').get('platon').get('network') == 3000 - - @pytest.mark.P2 - def test_DD_NE_004(self, global_test_env): - pass - # delete for 0.8.0 - # test_node = self.deploy_me(global_test_env, 'uatnet') - # assert test_node.admin.nodeInfo.get('protocols').get('platon').get('config').get('chainId') == 299 - # assert test_node.admin.nodeInfo.get('protocols').get('platon').get('network') == 4000 - - @pytest.mark.P2 - def test_DD_NE_005(self, global_test_env): - """ - alaya网络该启动模式不支持 - """ - pass - # test_node = self.deploy_me(global_test_env, 'demonet') - # try: - # log.info(test_node.admin.nodeInfo) - # except Exception as e: - # e == "20 seconds" - # log_file = "/home/platon/trantor_test/node-{}/log/platon.log".format(test_node.p2p_port) - # test_node.sftp.get(log_file, conf.LOG_FILE) - # with open(conf.LOG_FILE, 'r') as f: - # info = f.readlines() - # log.info(info[-1]) - # assert info[-1].strip() == "Fatal: Error starting protocol stack: genesis has no chain configuration" diff --git a/cases/tests/ppos/test_token_init.py b/cases/tests/ppos/test_token_init.py deleted file mode 100644 index 23c474a852..0000000000 --- a/cases/tests/ppos/test_token_init.py +++ /dev/null @@ -1,2081 +0,0 @@ -import math -import time -from decimal import Decimal - -import allure -import pytest -from alaya import Web3 -from dacite import from_dict -from alaya.packages.platon_account.internal.transactions import bech32_address_bytes - -from common.key import get_pub_key, mock_duplicate_sign -from common.log import log -from tests.conftest import get_clients_noconsensus -from tests.lib import (EconomicConfig, - Genesis, - check_node_in_list, - assert_code, - von_amount, - get_governable_parameter_value, - get_pledge_list, HexBytes, - wait_block_number, rlp) - - -@pytest.mark.P0 -def test_IT_IA_002_to_007(new_genesis_env): - """ - IT_IA_002:链初始化-查看token发行总量账户初始值 - IT_IA_003:链初始化-查看platON基金会账户初始值 - IT_IA_004:链初始化-查看激励池账户 - IT_IA_005:链初始化-查看剩余总账户 - IT_IA_006:链初始化-查看锁仓账户余额 - IT_IA_007:链初始化-查看质押账户余额 - :return:验证链初始化后token各内置账户初始值 - """ - # Initialization genesis file Initial amount - node_count = len(new_genesis_env.consensus_node_list) - default_pledge_amount = Web3.toWei(node_count * 10500, 'ether') - node = new_genesis_env.get_rand_node() - community_amount = Web3.toWei(500000, 'ether') - platon_fund = Web3.toWei(2500000, 'ether') - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.innerAcc.cdfBalance = community_amount - surplus_amount = str(Web3.toWei(105000000, 'ether') - community_amount - platon_fund - Web3.toWei(2000000, 'ether')) - genesis.alloc = { - "atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr75cqxf": { - "balance": "2000000000000000000000000" - }, - "atx1zkrxx6rf358jcvr7nruhyvr9hxpwv9unj58er9": { - "balance": surplus_amount - } - } - new_file = new_genesis_env.cfg.env_tmp + "/alaya_genesis_0.13.2.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - # Verify the amount of each built-in account - foundation_louckup = node.eth.getBalance(EconomicConfig.FOUNDATION_LOCKUP_ADDRESS, 0) - log.info('Initial lock up contract address: {} amount:{}'.format(EconomicConfig.FOUNDATION_LOCKUP_ADDRESS, - foundation_louckup)) - incentive_pool = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS, 0) - log.info('Incentive pool address:{} amount:{}'.format(EconomicConfig.INCENTIVEPOOL_ADDRESS, incentive_pool)) - staking = node.eth.getBalance(EconomicConfig.STAKING_ADDRESS, 0) - log.info('Address of pledge contract:{} amount:{}'.format(EconomicConfig.STAKING_ADDRESS, staking)) - foundation = node.eth.getBalance(EconomicConfig.FOUNDATION_ADDRESS, 0) - log.info('PlatON Foundation address:{} amount:{}'.format(EconomicConfig.FOUNDATION_ADDRESS, foundation)) - remain = node.eth.getBalance(EconomicConfig.REMAIN_ACCOUNT_ADDRESS, 0) - log.info('Remaining total account address:{} amount:{}'.format(EconomicConfig.REMAIN_ACCOUNT_ADDRESS, remain)) - develop = node.eth.getBalance(EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS, 0) - log.info('Community developer foundation address:{} amount:{}'.format(EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS, - develop)) - reality_total = foundation_louckup + incentive_pool + staking + foundation + remain + develop - log.info("Total issuance of Chuangshi block:{}".format(reality_total)) - log.info("--------------Dividing line---------------") - assert foundation == Web3.toWei(2500000, 'ether'), "ErrMsg:Initial amount of foundation {}".format(foundation) - assert foundation_louckup == 0, "ErrMsg:Initial lock up amount of foundation {}".format( - foundation_louckup) - assert staking == default_pledge_amount, "ErrMsg:Amount of initial pledge account: {}".format(staking) - assert incentive_pool == Web3.toWei(2000000, 'ether'), "ErrMsg:Initial amount of incentive pool {}".format( - incentive_pool) - assert remain == int(surplus_amount), "ErrMsg:Initial amount of remaining total account {}".format(remain) - assert develop == community_amount - default_pledge_amount, "ErrMsg:Community developer foundation account amount {}".format( - develop) - assert reality_total == Web3.toWei(105000000, 'ether'), "ErrMsg:Initialize release value {}".format(reality_total) - - -@allure.title("Two distribution-Transfer amount:{value}") -@pytest.mark.P0 -@pytest.mark.parametrize('value', [0, 1000, 0.000000000000000001, 10000000]) -def test_IT_SD_004_to_006(client_consensus, value): - """ - IT_SD_006:二次分配:普通钱包转keyshard钱包 - IT_SD_004:二次分配:转账金额为1von - IT_SD_005:二次分配:转账金额为1亿LAT - :param client_consensus: - :param value: - :return: - """ - value = client_consensus.node.web3.toWei(value, 'ether') - address, _ = client_consensus.economic.account.generate_account(client_consensus.node.web3, value) - balance = client_consensus.node.eth.getBalance(address) - log.info("transaction address:{},account:{}".format(address, balance)) - assert balance == value, "ErrMsg:Transfer amount {}".format(balance) - - -@pytest.mark.P1 -@pytest.mark.parametrize('value', [2000, 1000]) -def test_IT_SD_002_003(global_test_env, value): - """ - IT_SD_002:二次分配:账户余额不足 - IT_SD_003:二次分配:转账手续费不足 - :param global_test_env: - :param value: - :return: - """ - node = global_test_env.get_rand_node() - address, _ = global_test_env.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - status = True - # Account balance insufficient transfer - try: - address1, _ = global_test_env.account.generate_account(node.web3, 0) - transfer_amount = node.web3.toWei(value, 'ether') - result = global_test_env.account.sendTransaction(node.web3, '', address, address1, node.web3.platon.gasPrice, - 21000, transfer_amount) - log.info("result: {}".format(result)) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg:Transfer result {}".format(status) - - -@pytest.mark.P1 -def test_IT_SD_011(global_test_env): - """ - 账户转账校验:转账gas费不足 - :param global_test_env: - :return: - """ - node = global_test_env.get_rand_node() - address, _ = global_test_env.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - status = True - # Insufficient gas fee for transfer - try: - address1, _ = global_test_env.account.generate_account(node.web3, 0) - global_test_env.account.sendTransaction(node.web3, '', address, - address1, - node.web3.platon.gasPrice, 2100, 500) - status = False - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - assert status, "ErrMsg:Transfer result {}".format(status) - - -@pytest.mark.P2 -def test_IT_SD_007(global_test_env): - """ - 账户转账校验:本账户转本账户 - :return: - """ - node = global_test_env.get_rand_node() - value = node.web3.toWei(1000, 'ether') - address, _ = global_test_env.account.generate_account(node.web3, value) - balance = node.eth.getBalance(address) - log.info("Account balance before transfer:{}".format(balance)) - result = global_test_env.account.sendTransaction(node.web3, '', address, address, node.eth.gasPrice, 21000, 100) - assert result is not None, "ErrMsg:Transfer result {}".format(result) - balance1 = node.eth.getBalance(address) - log.info("Account balance after transfer: {}".format(balance1)) - log.info("Transaction fee: {}".format(node.web3.platon.gasPrice * 21000)) - assert balance == balance1 + node.web3.platon.gasPrice * 21000, "ErrMsg:Account balance after transfer:{}".format( - balance1) - - -@pytest.mark.P0 -def test_IT_SD_008(global_test_env): - """ - 二次分配:普通账户转platON基金会账户 - :return: - """ - node = global_test_env.get_rand_node() - value = node.web3.toWei(1000, 'ether') - address, _ = global_test_env.account.generate_account(node.web3, value) - balance = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - result = global_test_env.account.sendTransaction(node.web3, '', address, EconomicConfig.INCENTIVEPOOL_ADDRESS, - node.eth.gasPrice, 21000, node.web3.toWei(100, 'ether')) - assert result is not None, "ErrMsg:Transfer result {}".format(result) - balance1 = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("Account balance after transfer: {}".format(balance1)) - log.info("Transaction fee: {}".format(node.web3.platon.gasPrice * 21000)) - assert balance1 == balance + node.web3.toWei(100, - 'ether') + node.web3.platon.gasPrice * 21000, "ErrMsg:Account balance after transfer:{}".format( - balance1) - - -@pytest.mark.P1 -def test_IT_SD_008_001(client_new_node): - client = client_new_node - economic = client.economic - node = client.node - log.info("Node ID:{}".format(node.node_id)) - log.info("Current connection node: {}".format(node.node_mark)) - address, _ = client.economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 4)) - address_balance = node.eth.getBalance(address) - print("Account {} balance:{}".format(address, address_balance)) - first_balance1 = node.eth.getBalance('atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpd3er4y') - first_balance2 = node.eth.getBalance('atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzrzv4mm') - first_balance4 = node.eth.getBalance('atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqyld0s8v') - first_balance5 = node.eth.getBalance('atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq9zmm967') - first_balance6 = node.eth.getBalance('atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqxvgwn5p') - log.info("Balance of Restriction plan : {}".format(first_balance1)) - log.info("Balance of Staking : {}".format(first_balance2)) - log.info("Balance of punishment : {}".format(first_balance4)) - log.info("Balance of pip : {}".format(first_balance5)) - log.info("Balance of Entrust reward pool : {}".format(first_balance6)) - # Transfer to the incentive pool - log.info("Transfer amount:{}".format(node.web3.toWei(1000, 'ether'))) - result = client.economic.account.sendTransaction(node.web3, '', address, - 'atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpd3er4y', - node.eth.gasPrice, 21000, node.web3.toWei(1000, 'ether')) - assert result is not None, "ErrMsg:Transfer result {}".format(result) - result = client.economic.account.sendTransaction(node.web3, '', address, - 'atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzrzv4mm', - node.eth.gasPrice, 21000, node.web3.toWei(1000, 'ether')) - assert result is not None, "ErrMsg:Transfer result {}".format(result) - result = client.economic.account.sendTransaction(node.web3, '', address, - 'atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqyld0s8v', - node.eth.gasPrice, 21000, node.web3.toWei(1000, 'ether')) - assert result is not None, "ErrMsg:Transfer result {}".format(result) - result = client.economic.account.sendTransaction(node.web3, '', address, - 'atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq9zmm967', - node.eth.gasPrice, 21000, node.web3.toWei(1000, 'ether')) - assert result is not None, "ErrMsg:Transfer result {}".format(result) - result = client.economic.account.sendTransaction(node.web3, '', address, - 'atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqxvgwn5p', - node.eth.gasPrice, 21000, node.web3.toWei(1000, 'ether')) - assert result is not None, "ErrMsg:Transfer result {}".format(result) - second_balance1 = node.eth.getBalance('atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpd3er4y') - second_balance2 = node.eth.getBalance('atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzrzv4mm') - second_balance4 = node.eth.getBalance('atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqyld0s8v') - second_balance5 = node.eth.getBalance('atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq9zmm967') - second_balance6 = node.eth.getBalance('atx1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqxvgwn5p') - log.info("Balance of Restriction plan : {}".format(second_balance1)) - log.info("Balance of Staking : {}".format(second_balance2)) - log.info("Balance of punishment : {}".format(second_balance4)) - log.info("Balance of pip : {}".format(second_balance5)) - log.info("Balance of Entrust reward pool : {}".format(second_balance6)) - assert second_balance1 - first_balance1 == node.web3.toWei(1000, 'ether') - assert second_balance2 - first_balance2 == node.web3.toWei(1000, 'ether') - assert second_balance4 - first_balance4 == node.web3.toWei(1000, 'ether') - assert second_balance5 - first_balance5 == node.web3.toWei(1000, 'ether') - assert second_balance6 - first_balance6 == node.web3.toWei(1000, 'ether') - - -@pytest.mark.P1 -def test_IT_SD_008_002(client_new_node): - client = client_new_node - economic = client.economic - node = client.node - log.info("Current connection node: {}".format(node.node_mark)) - balance = node.eth.getBalance(EconomicConfig.STAKING_ADDRESS) - log.info("Pledge contract address balance:{}".format(balance)) - address, _ = client.economic.account.generate_account(node.web3, economic.create_staking_limit) - client.economic.account.sendTransaction(node.web3, '', address, '0x1000000000000000000000000000000000000002', - node.eth.gasPrice, 21000, node.web3.toWei(1000, 'ether')) - time.sleep(1) - balance1 = node.eth.getBalance(EconomicConfig.STAKING_ADDRESS) - log.info("Pledge contract address balance1:{}".format(balance)) - assert balance1 == balance + node.web3.toWei(1000, 'ether') - - -def sendTransaction_input_nonce(client, data, from_address, to_address, gasPrice, gas, value, nonce, - check_address=True): - node = client.node - account = client.economic.account.accounts[from_address] - if check_address: - to_address = Web3.toChecksumAddress(to_address) - - transaction_dict = { - "to": to_address, - "gasPrice": gasPrice, - "gas": gas, - "nonce": nonce, - "data": data, - "chainId": client.economic.account.chain_id, - "value": value - } - signedTransactionDict = node.eth.account.signTransaction( - transaction_dict, account['prikey'] - ) - data = signedTransactionDict.rawTransaction - result = HexBytes(node.eth.sendRawTransaction(data)).hex() - return result - # res = node.eth.waitForTransactionReceipt(result) - # - # return res - - -@pytest.mark.P2 -def test_test_IT_SD_008_002(client_new_node): - """ - 同时转账和质押节点 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - benifit_address, _ = economic.account.generate_account(node.web3, 0) - first_staking_balance = node.eth.getBalance(node.web3.stakingAddress) - log.info("first_staking_balance : {}".format(first_staking_balance)) - program_version_sign = node.program_version_sign - program_version = node.program_version - bls_pubkey = node.blspubkey - bls_proof = node.schnorr_NIZK_prove - benifit_address = bech32_address_bytes(benifit_address) - if program_version_sign[:2] == '0x': - program_version_sign = program_version_sign[2:] - data = HexBytes(rlp.encode([rlp.encode(int(1000)), rlp.encode(0), rlp.encode(benifit_address), - rlp.encode(bytes.fromhex(node.node_id)), rlp.encode("platon"), rlp.encode("platon1"), - rlp.encode("http://www.platon.network"), rlp.encode("The PlatON Node"), - rlp.encode(economic.create_staking_limit), rlp.encode(0), rlp.encode(program_version), - rlp.encode(bytes.fromhex(program_version_sign)), rlp.encode(bytes.fromhex(bls_pubkey)), - rlp.encode(bytes.fromhex(bls_proof))])).hex() - transaction_data = {"to": EconomicConfig.STAKING_ADDRESS, "data": data, "from": address} - gas = node.eth.estimateGas(transaction_data) - log.info("gas: {}".format(gas)) - resutl = economic.account.sendTransaction(node.web3, data, address, EconomicConfig.STAKING_ADDRESS, - node.eth.gasPrice, gas, node.web3.toWei(1000, 'ether')) - print(resutl) - resutl = node.eth.analyzeReceipt(resutl) - assert_code(resutl, 0) - second_staking_balance = node.eth.getBalance(node.web3.stakingAddress) - log.info("second_staking_balance : {}".format(second_staking_balance)) - assert first_staking_balance + node.web3.toWei(1000, - 'ether') == second_staking_balance - economic.create_staking_limit - - -# @pytest.mark.P2 -# def test_test_IT_SD_008_003(client_new_node): -# client = client_new_node -# economic = client.economic -# node = client.node - - -@pytest.mark.P2 -def test_IT_SD_009(client_consensus): - """ - 同一时间多次转账 - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - economic.env.deploy_all() - address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - address1, _ = economic.account.generate_account(node.web3, 0) - nonce = node.eth.getTransactionCount(address) - print('nonce: ', nonce) - balance = node.eth.getBalance(address1) - log.info("balance: {}".format(balance)) - sendTransaction_input_nonce(client, '', address, address1, node.eth.gasPrice, 21000, node.web3.toWei(100, 'ether'), - nonce) - sendTransaction_input_nonce(client, '', address, address1, node.eth.gasPrice, 21000, node.web3.toWei(100, 'ether'), - nonce + 1) - time.sleep(3) - balance1 = node.eth.getBalance(address1) - log.info("Account balance after transfer: {}".format(balance1)) - assert balance1 == balance + node.web3.toWei(200, 'ether'), "ErrMsg:Account balance after transfer:{}".format( - balance1) - - -@pytest.mark.P2 -def test_IT_SD_010(client_consensus): - """ - 同一时间多次转账,余额不足 - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - economic.env.deploy_all() - address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - address1, _ = economic.account.generate_account(node.web3, 0) - balance = node.eth.getBalance(address1) - log.info("balance: {}".format(balance)) - try: - nonce = node.eth.getTransactionCount(address) - log.info('nonce: {}'.format(nonce)) - sendTransaction_input_nonce(client, '', address, address1, node.eth.gasPrice, 21000, - node.web3.toWei(500, 'ether'), nonce) - sendTransaction_input_nonce(client, '', address, address1, node.eth.gasPrice, 21000, - node.web3.toWei(600, 'ether'), nonce + 1) - except Exception as e: - log.info("Use case success, exception information:{} ".format(str(e))) - time.sleep(3) - balance1 = node.eth.getBalance(address1) - log.info("Account balance after transfer: {}".format(balance1)) - assert balance1 == balance + node.web3.toWei(500, 'ether'), "ErrMsg:Account balance after transfer:{}".format( - balance1) - - -def consensus_node_pledge_award_assertion(client, address): - """ - 内置节点质押奖励断言 - :param client: - :param address: - :return: - """ - blockNumber = client.node.eth.blockNumber - log.info("Current block height:{}".format(blockNumber)) - incentive_pool_balance = client.node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("Balance of incentive pool:{}".format(incentive_pool_balance)) - CandidateInfo = client.ppos.getCandidateInfo(client.node.node_id) - log.info("Pledgor node information:{}".format(CandidateInfo)) - - # wait settlement block - client.economic.wait_settlement(client.node) - time.sleep(5) - VerifierList = client.ppos.getVerifierList() - log.info("Current settlement cycle verifier list:{}".format(VerifierList)) - ValidatorList = client.ppos.getValidatorList() - log.info("Current consensus cycle verifier list:{}".format(ValidatorList)) - # Application for withdrew staking - result = client.staking.withdrew_staking(address) - assert_code(result, 0) - # wait settlement block - client.economic.wait_settlement(client.node) - # view incentive pool amonut - incentive_pool_balance2 = client.node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info( - "incentive pool address:{} amount:{}".format(EconomicConfig.INCENTIVEPOOL_ADDRESS, incentive_pool_balance2)) - assert incentive_pool_balance2 - incentive_pool_balance < client.node.web3.toWei(1, - 'ether'), "ErrMsg:Balance of incentive pool:{}".format( - incentive_pool_balance2) - - -def no_consensus_node_pledge_award_assertion(client, benifit_address, from_address): - """ - 非内置节点质押奖励断言 - :param client: - :param benifit_address: - :param from_address: - :return: - """ - CandidateInfo = client.ppos.getCandidateInfo(client.node.node_id) - log.info("Pledgor node information:{}".format(CandidateInfo)) - balance = client.node.eth.getBalance(benifit_address) - log.info("benifit address:{} amount: {}".format(benifit_address, balance)) - - # wait settlement block - client.economic.wait_settlement(client.node) - time.sleep(5) - VerifierList = client.ppos.getVerifierList() - log.info("Current settlement cycle verifier list:{}".format(VerifierList)) - ValidatorList = client.ppos.getValidatorList() - log.info("Current consensus cycle verifier list:{}".format(ValidatorList)) - block_reward, staking_reward = client.economic.get_current_year_reward(client.node) - for i in range(4): - result = check_node_in_list(client.node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # wait consensus block - client.economic.wait_consensus(client.node) - # Application for withdrew staking - result = client.staking.withdrew_staking(from_address) - assert_code(result, 0) - incentive_pool_balance1 = client.node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("incentive pool amount:{}".format(incentive_pool_balance1)) - # wait settlement block - client.economic.wait_settlement(client.node) - # Count the number of blocks out of pledge node - blocknumber = client.economic.get_block_count_number(client.node, 5) - log.info("blocknumber: {}".format(blocknumber)) - balance1 = client.node.eth.getBalance(benifit_address) - log.info("benifit address:{} amount:{}".format(benifit_address, balance1)) - - # Verify block rewards - log.info("Expected bonus:{}".format(Decimal(str(block_reward)) * blocknumber)) - assert balance + Decimal(str(block_reward)) * blocknumber - balance1 < client.node.web3.toWei( - 1, 'ether'), "ErrMsg:benifit address:{} amount:{}".format( - benifit_address, balance1) - break - else: - # wait consensus block - client.economic.wait_consensus(client.node) - - -@pytest.mark.p1 -def test_AL_IE_001(client_consensus): - """ - 查看初始激励池总额 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - # 初始化环境 - client.economic.env.deploy_all() - # 查询激励池初始金额 - incentive_pool = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS, 0) - assert incentive_pool == Web3.toWei(1000000, 'ether'), "ErrMsg:Initial amount of incentive pool {}".format( - incentive_pool) - - -@pytest.mark.P2 -def test_AL_IE_002(clients_new_node): - """ - 转账到激励池 - :param clients_new_node: - :return: - """ - client1 = clients_new_node[0] - client2 = clients_new_node[1] - economic = client1.economic - node = client1.node - log.info("Node ID:{}".format(node.node_id)) - log.info("Current connection node: {}".format(node.node_mark)) - address, _ = client1.economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 4)) - address1, _ = client1.economic.account.generate_account(node.web3, 0) - address2, _ = client1.economic.account.generate_account(node.web3, 0) - log.info("staking address: {}".format(address)) - # Free amount application pledge node - result = client1.staking.create_staking(0, address1, address) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(node) - # 获取当前结算周期验证人 - verifier_list = node.ppos.getVerifierList() - log.info("verifier_list: {}".format(verifier_list)) - # view block_reward - block_reward, staking_reward = economic.get_current_year_reward(node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # view account amount - benifit_balance = node.eth.getBalance(address1) - log.info("benifit_balance: {}".format(benifit_balance)) - # view benifit reward - blocknumber = view_benifit_reward(client1, address) - # view account amount again - benifit_balance1 = node.eth.getBalance(address1) - log.info("benifit_balance: {}".format(benifit_balance1)) - reward = int(blocknumber * Decimal(str(block_reward))) - assert benifit_balance1 == staking_reward + reward, "ErrMsg:benifit_balance: {}".format(benifit_balance1) - # Transfer to the incentive pool - result = client1.economic.account.sendTransaction(node.web3, '', address, EconomicConfig.INCENTIVEPOOL_ADDRESS, - node.eth.gasPrice, 21000, node.web3.toWei(1000, 'ether')) - assert result is not None, "ErrMsg:Transfer result {}".format(result) - time.sleep(5) - # Free amount application pledge node - result = client2.staking.create_staking(0, address2, address, amount=von_amount(economic.create_staking_limit, 2)) - assert_code(result, 0) - # Wait for the settlement round to end - economic.wait_settlement(client2.node) - # view account amount - benifit_balance2 = client2.node.eth.getBalance(address2) - log.info("benifit_balance: {}".format(benifit_balance2)) - # view benifit reward - blocknumber = view_benifit_reward(client2, address) - # view account amount again - benifit_balance3 = client2.node.eth.getBalance(address2) - log.info("benifit_balance: {}".format(benifit_balance3)) - reward = int(blocknumber * Decimal(str(block_reward))) - assert benifit_balance3 == staking_reward + reward, "ErrMsg:benifit_balance: {}".format(benifit_balance3) - - -@pytest.mark.P1 -def test_AL_IE_003(clients_new_node): - """ - 自由账户创建质押节点且收益地址为激励池 - :param clients_new_node: - :return: - """ - log.info("Node ID:{}".format(clients_new_node[0].node.node_id)) - address, _ = clients_new_node[0].economic.account.generate_account(clients_new_node[0].node.web3, - clients_new_node[ - 0].economic.create_staking_limit * 2) - log.info("staking address: {}".format(address)) - # Free amount application pledge node - result = clients_new_node[0].staking.create_staking(0, EconomicConfig.INCENTIVEPOOL_ADDRESS, address) - assert_code(result, 0) - consensus_node_pledge_award_assertion(clients_new_node[0], address) - - -@pytest.mark.P1 -def test_AL_IE_004(clients_new_node): - """ - 锁仓账户创建质押节点且收益地址为激励池 - :param clients_new_node: - :return: - """ - log.info("Node ID:{}".format(clients_new_node[1].node.node_id)) - address, _ = clients_new_node[1].economic.account.generate_account(clients_new_node[1].node.web3, - clients_new_node[ - 1].economic.create_staking_limit * 2) - log.info("staking address: {}".format(address)) - # Create restricting plan - staking_amount = clients_new_node[1].economic.create_staking_limit - log.info("staking amonut:{}".format(staking_amount)) - plan = [{'Epoch': 1, 'Amount': staking_amount}] - result = clients_new_node[1].restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 0) - # Lock in amount application pledge node - result = clients_new_node[1].staking.create_staking(1, EconomicConfig.INCENTIVEPOOL_ADDRESS, address) - assert_code(result, 0) - consensus_node_pledge_award_assertion(clients_new_node[1], address) - - -@pytest.mark.P1 -def test_AL_BI_001(client_consensus): - """ - 出块手续费奖励(内置验证人) - :param client_consensus: - :return: - """ - incentive_pool_balance = client_consensus.node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("incentive_pool_balance: {}".format(incentive_pool_balance)) - # create account - address1, _ = client_consensus.economic.account.generate_account(client_consensus.node.web3, 100) - # view incentive account - incentive_pool_balance1 = client_consensus.node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("incentive_pool_balance: {}".format(incentive_pool_balance1)) - assert incentive_pool_balance1 == incentive_pool_balance + 21000 * client_consensus.node.eth.gasPrice, "ErrMsg:incentive_pool balance: {}".format( - incentive_pool_balance1) - - -@pytest.mark.P1 -def test_AL_BI_002(new_genesis_env, staking_cfg): - """ - 节点出块率为0被处罚,激励池金额增加 - :param new_genesis_env: - :param staking_cfg: - :return: - """ - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 5 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.2.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - client_noc_list_obj = get_clients_noconsensus(new_genesis_env, staking_cfg) - client1 = client_noc_list_obj[0] - client2 = client_noc_list_obj[1] - economic = client1.economic - node = client1.node - log.info("nodeid: {}".format(node.node_id)) - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create staking - result = client1.staking.create_staking(0, address, address) - assert_code(result, 0) - # Waiting for a settlement round - client2.economic.wait_settlement(client2.node) - # view incentive account - incentive_pool_balance = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("incentive_pool_balance: {}".format(incentive_pool_balance)) - # view block_reward - block_reward, staking_reward = economic.get_current_year_reward(node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # stop node - node.stop() - # Waiting for 2 consensus round - client2.economic.wait_consensus(client2.node, 3) - # view verifier list - verifier_list = client2.ppos.getVerifierList() - log.info("verifier_list: {}".format(verifier_list)) - result = client2.ppos.getCandidateInfo(client1.node.node_id) - log.info("CandidateInfo:{}".format(result)) - slash_blocks = get_governable_parameter_value(client2, 'slashBlocksReward') - log.info("slash_blocks".format(slash_blocks)) - # Get the penalty amount - penalty_amount = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("penalty_amount: {}".format(penalty_amount)) - # view incentive account again - incentive_pool_balance1 = client2.node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("incentive_pool_balance1: {}".format(incentive_pool_balance1)) - assert incentive_pool_balance1 == incentive_pool_balance + penalty_amount, "ErrMsg: incentive_pool_balance: {}".format( - incentive_pool_balance1) - - -@pytest.mark.P1 -def test_AL_BI_003(client_consensus): - """ - 初始内置账户没有基金会Staking奖励和出块奖励 - :param client_consensus: - :return: - """ - # view incentive account - incentive_pool_balance = client_consensus.node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("incentive_pool_balance: {}".format(incentive_pool_balance)) - - # wait settlement block - client_consensus.economic.wait_settlement(client_consensus.node) - - # view incentive account again - incentive_pool_balance1 = client_consensus.node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS) - log.info("incentive_pool_balance: {}".format(incentive_pool_balance1)) - - assert incentive_pool_balance1 == incentive_pool_balance, "ErrMsg: incentive account: {}".format( - incentive_pool_balance1) - - -@pytest.mark.P1 -def test_AL_BI_004(client_consensus): - """ - 初始验证人退出后重新质押进来 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - # Reset environment - economic.env.deploy_all() - # Query Developer Fund Amount - log.info("nodeid: {}".format(node.node_id)) - developer_foundation_balance = node.eth.getBalance(EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS) - log.info("incentive_pool_balance: {}".format(developer_foundation_balance)) - staking_balance = client_consensus.node.eth.getBalance(EconomicConfig.STAKING_ADDRESS) - log.info("staking_balance: {}".format(staking_balance)) - # Built in node return pledge - result = client.staking.withdrew_staking(EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS) - assert_code(result, 0) - # Waiting for the end of the 2 settlement - economic.wait_settlement(node, 2) - # create account - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - address1, _ = economic.account.generate_account(node.web3, 0) - # Check account balance - balance = node.eth.getBalance(address1) - log.info("Account Balance: {}".format(balance)) - # Node pledge again - result = client.staking.create_staking(0, address1, address) - assert_code(result, 0) - # Waiting for the end of the settlement - economic.wait_settlement(node) - # view block_reward - block_reward, staking_reward = economic.get_current_year_reward(node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # withdrew of pledge - result = client.staking.withdrew_staking(address) - assert_code(result, 0) - # wait settlement block - client.economic.wait_settlement(client.node) - # wait consensus block - client.economic.wait_consensus(client.node) - # count the number of blocks - blocknumber = client.economic.get_block_count_number(client.node, roundnum=10) - log.info("blocknumber: {}".format(blocknumber)) - # Check account balance again - balance1 = node.eth.getBalance(address1) - log.info("Account Balance: {}".format(balance1)) - # Pledged income account to get the bonus amount - total_reward = int(Decimal(str(block_reward)) * blocknumber) + staking_reward - assert balance1 == balance + total_reward, "ErrMsg:benifit_balance: {}".format(balance1) - - -def create_pledge_node(client, base, multiple=2): - """ - create pledge node return benifit balance - :param client: - :param base: - :param multiple: - :return: - """ - log.info("Transfer accounts: {}".format(client.economic.create_staking_limit * multiple)) - account_balance = client.node.eth.getBalance( - client.economic.account.account_with_money['address']) - log.info("address: {} accounts: {}".format(client.economic.account.account_with_money['address'], - account_balance)) - # create account - address, _ = client.economic.account.generate_account(client.node.web3, - client.economic.create_staking_limit * multiple) - - log.info("address: {} ,amount: {}".format(address, client.node.eth.getBalance(address))) - benifit_address, _ = client.economic.account.generate_account(client.node.web3, 0) - log.info( - "address: {} ,amount: {}".format(benifit_address, client.node.eth.getBalance(benifit_address))) - # create staking - staking_amount = von_amount(client.economic.create_staking_limit, base) - result = client.staking.create_staking(0, benifit_address, address, amount=staking_amount) - assert_code(result, 0) - log.info("Pledge node information: {}".format( - client.ppos.getCandidateInfo(client.node.node_id))) - return address, benifit_address - - -@pytest.mark.P1 -def test_AL_NBI_001_to_003(client_new_node): - """ - AL_NBI_001:非内置验证人Staking奖励(犹豫期) - AL_NBI_002:非内置验证人出块奖励(犹豫期) - AL_NBI_003:非内置验证人区块手续费奖励(犹豫期) - :param client_new_node: - :return: - """ - # create pledge node - address, benifit_address = create_pledge_node(client_new_node, 1) - # view account amount - benifit_balance = client_new_node.node.eth.getBalance(benifit_address) - log.info("benifit_balance: {}".format(benifit_balance)) - # wait consensus block - client_new_node.economic.wait_consensus(client_new_node.node) - # view account amount again - benifit_balance1 = client_new_node.node.eth.getBalance(benifit_address) - log.info("benifit_balance: {}".format(benifit_balance1)) - assert benifit_balance1 == benifit_balance, "ErrMsg:benifit_balance: {}".format( - benifit_balance1) - - -@pytest.mark.P1 -def test_AL_NBI_004_to_006(new_genesis_env, client_new_node, reset_environment): - """ - AL_NBI_004:非内置验证人Staking奖励(候选人) - AL_NBI_005:非内置验证人出块奖励(候选人) - AL_NBI_006:非内置验证人手续费奖励(候选人) - :param new_genesis_env: - :return: - """ - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.maxValidators = 4 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.2.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - # create pledge node - address, benifit_address = create_pledge_node(client_new_node, 1) - # view account amount - benifit_balance = client_new_node.node.eth.getBalance(benifit_address) - log.info("benifit_balance: {}".format(benifit_balance)) - # wait settlement block - client_new_node.economic.wait_settlement(client_new_node.node, 1) - # view account amount again - benifit_balance1 = client_new_node.node.eth.getBalance(benifit_address) - log.info("benifit_balance: {}".format(benifit_balance1)) - assert benifit_balance1 == benifit_balance, "ErrMsg: benifit_balance: {}".format( - benifit_balance1) - - -def view_benifit_reward(client, address): - """ - withdrew pledge return benifit balance and Number of blocks - :param client: - :param address: - :return: - """ - # withdrew of pledge - result = client.staking.withdrew_staking(address) - assert_code(result, 0) - # wait settlement block - client.economic.wait_settlement(client.node) - # wait consensus block - client.economic.wait_consensus(client.node) - # count the number of blocks - blocknumber = client.economic.get_block_count_number(client.node, roundnum=10) - log.info("blocknumber: {}".format(blocknumber)) - return blocknumber - - -@pytest.mark.P1 -@pytest.mark.compatibility -def test_AL_NBI_007_to_009(client_new_node): - """ - AL_NBI_007:非内置验证人Staking奖励(验证人) - AL_NBI_008:非内置验证人出块奖励(验证人) - AL_NBI_009:非内置验证人手续费奖励(验证人) - :param client_new_node: - :return: - """ - # create pledge node - address, benifit_address = create_pledge_node(client_new_node, 1.1) - # view account amount - benifit_balance = client_new_node.node.eth.getBalance(benifit_address) - log.info("benifit_balance: {}".format(benifit_balance)) - # wait settlement block - client_new_node.economic.wait_settlement(client_new_node.node) - # view block_reward - block_reward, staking_reward = client_new_node.economic.get_current_year_reward( - client_new_node.node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - for i in range(4): - result = check_node_in_list(client_new_node.node.node_id, client_new_node.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if not result: - # view benifit reward - blocknumber = view_benifit_reward(client_new_node, address) - # view account amount again - benifit_balance1 = client_new_node.node.eth.getBalance(benifit_address) - log.info("benifit_balance: {}".format(benifit_balance1)) - assert benifit_balance + staking_reward + blocknumber * Decimal( - str(block_reward)) - benifit_balance1 < client_new_node.node.web3.toWei(1, - 'ether'), "ErrMsg:benifit_balance: {}".format( - benifit_balance1) - break - else: - # wait consensus block - client_new_node.economic.wait_consensus(client_new_node.node) - - -def assert_benifit_reward(client, benifit_address, address): - """ - assert Amount of income address - :param client: - :param benifit_address: - :param address: - :return: - """ - # view account amount - benifit_balance = client.node.eth.getBalance(benifit_address) - log.info("benifit_balance: {}".format(benifit_balance)) - # wait settlement block - client.economic.wait_settlement(client.node) - # view block_reward - block_reward, staking_reward = client.economic.get_current_year_reward( - client.node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - for i in range(4): - result = check_node_in_list(client.node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # view benifit reward - blocknumber = view_benifit_reward(client, address) - # view account amount again - benifit_balance1 = client.node.eth.getBalance(benifit_address) - log.info("benifit_balance: {}".format(benifit_balance1)) - assert benifit_balance + staking_reward + blocknumber * Decimal( - str(block_reward)) - benifit_balance1 < client.node.web3.toWei(1, - 'ether'), "ErrMsg:benifit_balance: {}".format( - benifit_balance1) - break - else: - # wait consensus block - client.economic.wait_consensus(client.node) - - -@pytest.mark.P1 -def test_AL_NBI_010_to_012(client_new_node): - """ - AL_NBI_010:非内置验证人Staking奖励(共识验证人) - AL_NBI_011:非内置验证人出块奖励(共识验证人) - AL_NBI_012:非内置验证人手续费出块奖励(共识验证人) - :param client_new_node: - :return: - """ - # create pledge node - address, benifit_address = create_pledge_node(client_new_node, 1.2) - # assert benifit reward - assert_benifit_reward(client_new_node, benifit_address, address) - - -@pytest.mark.P1 -def test_AL_NBI_013(client_new_node): - """ - 修改节点质押收益地址查看收益变更 - :param client_new_node: - :return: - """ - # create pledge node - address, benifit_address = create_pledge_node(client_new_node, 1.3) - # create account - benifit_address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, 0) - # change benifit address - result = client_new_node.staking.edit_candidate(address, benifit_address1) - assert_code(result, 0) - # assert benifit reward - assert_benifit_reward(client_new_node, benifit_address1, address) - - -def query_ccount_amount(client, address): - balance = client.node.eth.getBalance(address) - log.info("balance: {}".format(balance)) - return balance - - -@pytest.mark.P1 -def test_AL_NBI_014(client_new_node): - """ - 修改节点质押收益地址查看收益变更(正在出块中) - :param client_new_node: - :return: - """ - # create pledge node - address, benifit_address = create_pledge_node(client_new_node, 1.4) - # wait settlement block - client_new_node.economic.wait_settlement(client_new_node.node) - # view block_reward - block_reward, staking_reward = client_new_node.economic.get_current_year_reward( - client_new_node.node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # view benifit_address amount again - benifit_balance = query_ccount_amount(client_new_node, benifit_address) - # change benifit address - for i in range(4): - result = check_node_in_list(client_new_node.node.node_id, client_new_node.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - current_block = client_new_node.node.eth.blockNumber - log.info("Current block:{}".format(current_block)) - for i in range(40): - nodeid = get_pub_key(client_new_node.node.url, current_block) - current_block = client_new_node.node.eth.blockNumber - log.info("当前块高:{}".format(current_block)) - time.sleep(3) - if nodeid == client_new_node.node.node_id: - break - # create account - benifit_address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, 0) - # change benifit address - result = client_new_node.staking.edit_candidate(address, benifit_address1) - assert_code(result, 0) - # view benifit reward - blocknumber = view_benifit_reward(client_new_node, address) - - # view benifit_address1 amount - benifit_balance1 = query_ccount_amount(client_new_node, benifit_address1) - assert benifit_balance + benifit_balance1 == int(Decimal(str( - block_reward)) * blocknumber) + staking_reward, "ErrMsg:benifit_balance + benifit_balance1: {}".format( - benifit_balance + benifit_balance1) - - -@pytest.mark.P1 -def test_AL_NBI_015(client_new_node): - """ - 退回质押金并处于锁定期 - :param client_new_node: - :return: - """ - # create pledge node - address, benifit_address = create_pledge_node(client_new_node, 1.5) - # wait settlement block - client_new_node.economic.wait_settlement(client_new_node.node) - # view account amount - benifit_balance = query_ccount_amount(client_new_node, benifit_address) - for i in range(4): - result = check_node_in_list(client_new_node.node.node_id, client_new_node.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # withdrew of pledge - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - log.info("Current settlement cycle verifier list:{}".format(client_new_node.ppos.getVerifierList())) - for i in range(40): - client_new_node.economic.account.sendTransaction(client_new_node.node.web3, '', - client_new_node.economic.account.account_with_money[ - 'address'], address, - client_new_node.node.web3.platon.gasPrice, - 21000, 100) - time.sleep(1) - # view account amount again - benifit_balance1 = query_ccount_amount(client_new_node, benifit_address) - assert benifit_balance1 > benifit_balance, "ErrMsg: {} > {}".format(benifit_balance1, benifit_balance) - break - else: - # wait consensus block - client_new_node.economic.wait_consensus(client_new_node.node) - - -@pytest.mark.P2 -@pytest.mark.compatibility -def test_AL_NBI_016(client_new_node, reset_environment): - """ - 被双签处罚槛剔除验证人列表 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - client.economic.env.deploy_all() - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - address2, _ = economic.account.generate_account(node.web3, 0) - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - # create staking - staking_amount = von_amount(economic.create_staking_limit, 1.6) - result = client_new_node.staking.create_staking(0, address2, address1, amount=staking_amount) - assert_code(result, 0) - # wait settlement block - economic.wait_settlement(node) - # Check account balance - balance = node.eth.getBalance(address2) - log.info("Account Balance:{}".format(balance)) - # view block_reward - block_reward, staking_reward = economic.get_current_year_reward(node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - for i in range(4): - result = check_node_in_list(client_new_node.node.node_id, client_new_node.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # view Current block - current_block = client_new_node.node.eth.blockNumber - log.info("Current block: {}".format(current_block)) - # Report prepareblock signature - report_information = mock_duplicate_sign(1, client_new_node.node.nodekey, client_new_node.node.blsprikey, - current_block) - log.info("Report information: {}".format(report_information)) - result = client_new_node.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - # wait settlement block - economic.wait_settlement(node) - # Check account balance again - balance1 = node.eth.getBalance(address2) - log.info("Account Balance:{}".format(balance1)) - # count the number of blocks - blocknumber = client_new_node.economic.get_block_count_number(node, roundnum=10) - log.info("blocknumber: {}".format(blocknumber)) - total_block_reward = int(Decimal(str(block_reward)) * Decimal(str(blocknumber))) - log.info("total_block_reward: {}".format(total_block_reward)) - assert balance1 == balance + total_block_reward, "ErrMsg:benifit_balance1:{}".format(balance1) - break - else: - # wait consensus block - economic.wait_consensus(node) - - -@pytest.mark.P2 -@pytest.mark.compatibility -def test_AL_NBI_017(clients_new_node): - """ - 0出块率剔除验证人列表 - :param clients_new_node: - :return: - """ - clients_new_node[0].economic.env.deploy_all() - # create pledge node - address, benifit_address = create_pledge_node(clients_new_node[0], 1.6) - # wait settlement block - clients_new_node[0].economic.wait_settlement(clients_new_node[0].node) - log.info("Current settlement cycle verifier list:{}".format(clients_new_node[0].ppos.getVerifierList())) - # view block_reward - block_reward, staking_reward = clients_new_node[0].economic.get_current_year_reward( - clients_new_node[0].node) - log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # view account amount - benifit_balance = query_ccount_amount(clients_new_node[0], benifit_address) - for i in range(4): - result = check_node_in_list(clients_new_node[0].node.node_id, clients_new_node[0].ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # stop node - clients_new_node[0].node.stop() - log.info("Current settlement cycle verifier list:{}".format(clients_new_node[1].ppos.getVerifierList())) - # wait settlement block - clients_new_node[1].economic.wait_settlement(clients_new_node[1].node) - # view account amount again - benifit_balance1 = query_ccount_amount(clients_new_node[1], benifit_address) - # count the number of blocks - blocknumber = clients_new_node[1].economic.get_block_count_number(clients_new_node[1].node, 5) - log.info("blocknumber: {}".format(blocknumber)) - assert benifit_balance1 == benifit_balance + int( - Decimal(str(block_reward)) * blocknumber), "ErrMsg:benifit_balance1:{}".format(benifit_balance1) - break - else: - # wait consensus block - clients_new_node[0].economic.wait_consensus(clients_new_node[0].node) - - -@pytest.mark.P1 -def test_AL_NBI_018(new_genesis_env, client_new_node): - """ - 调整质押和出块奖励比例 - :param client_new_node: - :return: - """ - # Change configuration parameters - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.reward.newBlockRate = 60 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - client = client_new_node - economic = client.economic - node = client.node - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - address2, _ = economic.account.generate_account(node.web3, 0) - # create pledge - result = client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - # Waiting for the end of the settlement - economic.wait_settlement(node) - # Check account balance - balance = node.eth.getBalance(address1) - log.info("Account Balance: {}".format(balance)) - block_reward, staking_reward = economic.get_current_year_reward(node) - # # Get the number of certifiers in the billing cycle list - # verifier_list = get_pledge_list(node.ppos.getVerifierList) - # verifier_num = len(verifier_list) - # # Get block_reward And pledge rewards - # amount = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS, 0) - # block_proportion = str(60 / 100) - # staking_proportion = str(1 - 60 / 100) - # block_reward = int(Decimal(str(amount)) * Decimal(str(block_proportion)) / Decimal(str(1600))) - # staking_reward = int(Decimal(str(amount)) * Decimal(str(staking_proportion)) / Decimal(str(10)) / Decimal( - # str(verifier_num))) - # log.info("block_reward: {} staking_reward: {}".format(block_reward, staking_reward)) - # withdrew of pledge - result = client.staking.withdrew_staking(address1) - assert_code(result, 0) - # wait settlement block - client.economic.wait_settlement(client.node) - # wait consensus block - client.economic.wait_consensus(client.node) - # count the number of blocks - blocknumber = client.economic.get_block_count_number(client.node, 10) - log.info("blocknumber: {}".format(blocknumber)) - # Check account balance again - balance1 = node.eth.getBalance(address1) - log.info("Account Balance: {}".format(balance1)) - # Pledged income account to get the bonus amount - total_reward = int(Decimal(str(block_reward)) * blocknumber) + staking_reward - log.info("total:{}".format(balance + total_reward)) - assert balance + total_reward - balance1 < node.web3.toWei(1, 'ether'), "ErrMsg:benifit_balance: {}".format( - balance1) - - # # create pledge node - # address, benifit_address = create_pledge_node(client_new_node, 1.2) - # # assert benifit reward - # assert_benifit_reward(client_new_node, benifit_address, address) - - -def calculate_block_rewards_and_pledge_rewards(client, incentive_pool_amount, annualcycle): - new_block_rate = client.economic.genesis.economicModel.reward.newBlockRate - block_proportion = str(new_block_rate / 100) - log.info("Get incentive pool to allocate block reward ratio: {}".format(block_proportion)) - verifier_list = get_pledge_list(client.node.ppos.getVerifierList) - verifier_num = len(verifier_list) - log.info("Number of verification nodes in the current settlement cycle: {}".format(verifier_num)) - amount_per_settlement = int(Decimal(str(incentive_pool_amount)) / Decimal(str(annualcycle))) - total_block_rewards = int(Decimal(str(amount_per_settlement)) * Decimal(str(block_proportion))) - per_block_reward = int(Decimal(str(total_block_rewards)) / Decimal(str(client.economic.settlement_size))) - log.info("Total block rewards: {} Each block reward: {}".format(total_block_rewards, per_block_reward)) - staking_reward_total = amount_per_settlement - total_block_rewards - staking_reward = int(Decimal(str(staking_reward_total)) / Decimal(str(verifier_num))) - log.info("Total pledged rewards: {} Amount of pledged rewards in current settlement cycle: {}".format( - staking_reward_total, staking_reward)) - return per_block_reward, staking_reward - - -def test_AL_NBI_019(client_consensus): - """ - 验证第一个结算周期区块奖励和质押奖励 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - log.info("Start resetting the chain") - economic.env.deploy_all() - time.sleep(5) - incentive_pool_balance = Web3.toWei(1000000, 'ether') - log.info("Get the initial value of the incentive pool:{}".format(incentive_pool_balance)) - annualcycle = math.ceil((economic.additional_cycle_time * 60) / economic.settlement_size) - log.info("Number of current additional settlement cycles:{}".format(annualcycle)) - annual_size = annualcycle * economic.settlement_size - log.info("Block height of current issuance cycle: {}".format(annual_size)) - per_block_reward, staking_reward = calculate_block_rewards_and_pledge_rewards(client, incentive_pool_balance, - annualcycle) - chain_block_reward, chain_staking_reward = economic.get_current_year_reward(node) - log.info("Block rewards on the chain: {}".format(chain_block_reward)) - log.info("Pledge rewards on the chain:{}".format(chain_staking_reward)) - assert per_block_reward == chain_block_reward, "ErrMsg:Block reward for the first settlement cycle {}".format( - per_block_reward) - assert staking_reward == chain_staking_reward, "ErrMsg:Pledge rewards for the first settlement cycle {}".format( - staking_reward) - - -def test_AL_NBI_020(client_consensus): - """ - 调整出块间隔,查看第二个结算周期出块奖励和质押奖励 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - economic.env.deploy_all() - economic.wait_consensus(node) - log.info("Start adjusting the block interval") - for i in range(3): - economic.env.stop_all() - time.sleep(2) - economic.env.start_nodes(economic.env.get_all_nodes(), False) - time.sleep(5) - current_settlement_block_height = economic.get_switchpoint_by_settlement(node) - log.info("Block height of current settlement cycle: {}".format(current_settlement_block_height)) - wait_block_number(node, current_settlement_block_height) - annualcycle = math.ceil((economic.additional_cycle_time * 60) / economic.settlement_size) - log.info("Number of current additional settlement cycles:{}".format(annualcycle)) - incentive_pool_balance = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS, 0) - remaining_incentive_pool_amount = incentive_pool_balance - int( - Decimal(str(incentive_pool_balance)) / Decimal(str(annualcycle))) - log.info("Settlement block high incentive pool balance: {}".format(remaining_incentive_pool_amount)) - block_info = node.eth.getBlock(1) - first_timestamp = block_info['timestamp'] - log.info("First block timestamp: {}".format(first_timestamp)) - settlement_block_info = node.eth.getBlock(current_settlement_block_height) - settlement_timestamp = settlement_block_info['timestamp'] - log.info("High block timestamp at the end of the current settlement cycle: {}".format(settlement_timestamp)) - issuing_cycle_timestamp = first_timestamp + (economic.additional_cycle_time * 60000) - log.info("End time stamp of current issue cycle: {}".format(issuing_cycle_timestamp)) - remaining_additional_time = issuing_cycle_timestamp - settlement_timestamp - log.info("Remaining time of current issuance cycle: {}".format(remaining_additional_time)) - average_interval = (settlement_timestamp - first_timestamp) // (economic.settlement_size - 1) - log.info("Block interval in the last settlement cycle: {}".format(average_interval)) - number_of_remaining_blocks = math.ceil(remaining_additional_time / average_interval) - log.info("Remaining block height of current issuance cycle: {}".format(number_of_remaining_blocks)) - remaining_settlement_cycle = math.ceil(number_of_remaining_blocks / economic.settlement_size) - log.info("remaining settlement cycles in the current issuance cycle: {}".format(remaining_settlement_cycle)) - per_block_reward, staking_reward = calculate_block_rewards_and_pledge_rewards(client, - remaining_incentive_pool_amount, - remaining_settlement_cycle) - chain_block_reward, chain_staking_reward = economic.get_current_year_reward(node) - log.info("Block rewards on the chain: {}".format(chain_block_reward)) - log.info("Pledge rewards on the chain:{}".format(chain_staking_reward)) - result = client.ppos.getAvgPackTime() - chain_time_interval = result['Ret'] - log.info("Block interval on the chain:{}".format(chain_time_interval)) - assert per_block_reward == chain_block_reward, "ErrMsg:Block rewards for the current settlement cycle {}".format( - per_block_reward) - assert staking_reward == chain_staking_reward, "ErrMsg:Pledge rewards for the current settlement cycle {}".format( - staking_reward) - assert average_interval == chain_time_interval, "ErrMsg:Block interval in the last settlement cycle {}".format( - average_interval) - - -def test_AL_FI_006(client_consensus): - """ - 增发周期动态调整 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - economic.env.deploy_all() - log.info("Chain reset completed") - economic.wait_consensus(node) - log.info("Start adjusting the block interval") - for i in range(3): - economic.env.stop_all() - time.sleep(2) - economic.env.start_nodes(economic.env.get_all_nodes(), False) - time.sleep(5) - remaining_settlement_cycle = (economic.additional_cycle_time * 60) // economic.settlement_size - annual_size = remaining_settlement_cycle * economic.settlement_size - log.info("Additional issue settlement period:{} Block height of current issuance cycle: {}".format( - remaining_settlement_cycle, annual_size)) - economic.wait_settlement(node) - while remaining_settlement_cycle != 1: - block_info = node.eth.getBlock(1) - first_timestamp = block_info['timestamp'] - log.info("First block timestamp: {}".format(first_timestamp)) - tmp_current_block = node.eth.blockNumber - if tmp_current_block % economic.settlement_size == 0: - time.sleep(1) - last_settlement_block = (math.ceil(tmp_current_block / economic.settlement_size) - 1) * economic.settlement_size - log.info("The last block height of the previous settlement period: {}".format(last_settlement_block)) - settlement_block_info = node.eth.getBlock(last_settlement_block) - settlement_timestamp = settlement_block_info['timestamp'] - log.info("High block timestamp at the end of the current settlement cycle: {}".format(settlement_timestamp)) - issuing_cycle_timestamp = first_timestamp + (economic.additional_cycle_time * 60) * 1000 - log.info("End time stamp of current issue cycle: {}".format(issuing_cycle_timestamp)) - remaining_additional_time = issuing_cycle_timestamp - settlement_timestamp - log.info("Remaining time of current issuance cycle: {}".format(remaining_additional_time)) - average_interval = (settlement_timestamp - first_timestamp) // (last_settlement_block - 1) - log.info("Block interval in the last settlement cycle: {}".format(average_interval)) - number_of_remaining_blocks = math.ceil(remaining_additional_time / average_interval) - log.info("Remaining block height of current issuance cycle: {}".format(number_of_remaining_blocks)) - remaining_settlement_cycle = math.ceil(number_of_remaining_blocks / economic.settlement_size) - log.info("remaining settlement cycles in the current issuance cycle: {}".format(remaining_settlement_cycle)) - consensus_verification_list = node.ppos.getVerifierList() - log.info("List of consensus validators in the current settlement cycle: {}".format(consensus_verification_list)) - economic.wait_settlement(node) - plan_incentive_pool_amount = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS, annual_size) - annual_last_block = (math.ceil(node.eth.blockNumber / economic.settlement_size) - 1) * economic.settlement_size - # current_increase_last_block = economic.get_settlement_switchpoint(node) - # log.info("The current issue cycle is high: {}".format(current_increase_last_block)) - actual_incentive_pool_amount = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS, annual_last_block) - log.info("Incentive pool actual amount: {}".format(actual_incentive_pool_amount)) - assert actual_incentive_pool_amount > plan_incentive_pool_amount, "ErrMsg:Incentive pool balance {}".format( - actual_incentive_pool_amount) - - -def test_AL_FI_007(client_consensus): - """ - 验证增发第一年出块奖励和质押奖励 - :param client_consensus: - :return: - """ - client = client_consensus - economic = client.economic - node = client.node - economic.env.deploy_all() - log.info("Chain reset completed") - economic.wait_consensus(node) - log.info("Start adjusting the block interval") - for i in range(3): - economic.env.stop_all() - time.sleep(2) - economic.env.start_nodes(economic.env.get_all_nodes(), False) - time.sleep(5) - remaining_settlement_cycle = (economic.additional_cycle_time * 60) // economic.settlement_size - annual_size = remaining_settlement_cycle * economic.settlement_size - log.info("Additional issue settlement period:{} Block height of current issuance cycle: {}".format( - remaining_settlement_cycle, annual_size)) - economic.wait_settlement(node) - block_info = node.eth.getBlock(1) - first_timestamp = block_info['timestamp'] - log.info("First block timestamp: {}".format(first_timestamp)) - issuing_cycle_timestamp = None - while remaining_settlement_cycle != 1: - tmp_current_block = node.eth.blockNumber - if tmp_current_block % economic.settlement_size == 0: - time.sleep(1) - last_settlement_block = (math.ceil(tmp_current_block / economic.settlement_size) - 1) * economic.settlement_size - log.info("The last block height of the previous settlement period: {}".format(last_settlement_block)) - settlement_block_info = node.eth.getBlock(last_settlement_block) - settlement_timestamp = settlement_block_info['timestamp'] - log.info("High block timestamp at the end of the current settlement cycle: {}".format(settlement_timestamp)) - issuing_cycle_timestamp = first_timestamp + (economic.additional_cycle_time * 60000) - log.info("End time stamp of current issue cycle: {}".format(issuing_cycle_timestamp)) - remaining_additional_time = issuing_cycle_timestamp - settlement_timestamp - log.info("Remaining time of current issuance cycle: {}".format(remaining_additional_time)) - average_interval = (settlement_timestamp - first_timestamp) // (last_settlement_block - 1) - log.info("Block interval in the last settlement cycle: {}".format(average_interval)) - number_of_remaining_blocks = math.ceil(remaining_additional_time / average_interval) - log.info("Remaining block height of current issuance cycle: {}".format(number_of_remaining_blocks)) - remaining_settlement_cycle = math.ceil(number_of_remaining_blocks / economic.settlement_size) - log.info("remaining settlement cycles in the current issuance cycle: {}".format(remaining_settlement_cycle)) - consensus_verification_list = node.ppos.getVerifierList() - log.info("List of consensus validators in the current settlement cycle: {}".format(consensus_verification_list)) - economic.wait_settlement(node) - annual_last_block = (math.ceil(node.eth.blockNumber / economic.settlement_size) - 1) * economic.settlement_size - log.info("Last block height of last year:{}".format(annual_last_block)) - settlement_block_info = node.eth.getBlock(annual_last_block) - settlement_timestamp = settlement_block_info['timestamp'] - log.info("Second High block timestamp at the end of the current settlement cycle:{}".format(settlement_timestamp)) - second_issuing_cycle_timestamp = issuing_cycle_timestamp + (economic.additional_cycle_time * 60000) - log.info("Second end time stamp of current issue cycle: {}".format(second_issuing_cycle_timestamp)) - remaining_additional_time = second_issuing_cycle_timestamp - settlement_timestamp - log.info("Second Remaining time of current issuance cycle: {}".format(remaining_additional_time)) - average_interval = (settlement_timestamp - first_timestamp) // (annual_last_block - 1) - log.info("Second Block interval in the last settlement cycle: {}".format(average_interval)) - number_of_remaining_blocks = math.ceil(remaining_additional_time / average_interval) - log.info("Second Remaining block height of current issuance cycle: {}".format(number_of_remaining_blocks)) - remaining_settlement_cycle = math.ceil(number_of_remaining_blocks / economic.settlement_size) - log.info("The additional settlement cycle in the second year: {}".format(number_of_remaining_blocks)) - actual_incentive_pool_amount = node.eth.getBalance(EconomicConfig.INCENTIVEPOOL_ADDRESS, annual_last_block) - log.info("Incentive pool actual amount: {}".format(actual_incentive_pool_amount)) - per_block_reward, staking_reward = calculate_block_rewards_and_pledge_rewards(client, actual_incentive_pool_amount, - remaining_settlement_cycle) - chain_block_reward, chain_staking_reward = economic.get_current_year_reward(node) - log.info("Block rewards on the chain: {}".format(chain_block_reward)) - log.info("Pledge rewards on the chain:{}".format(chain_staking_reward)) - result = client.ppos.getAvgPackTime() - chain_time_interval = result['Ret'] - log.info("Block interval on the chain:{}".format(chain_time_interval)) - assert per_block_reward == chain_block_reward, "ErrMsg:Block rewards for the current settlement cycle {}".format( - per_block_reward) - assert staking_reward == chain_staking_reward, "ErrMsg:Pledge rewards for the current settlement cycle {}".format( - staking_reward) - assert average_interval == chain_time_interval, "ErrMsg:Block interval in the last settlement cycle {}".format( - average_interval) - economic.wait_settlement(node) - - amount_per_settlement = int(Decimal(str(actual_incentive_pool_amount)) / Decimal(str(remaining_settlement_cycle))) - remaining_incentive_pool_balance = actual_incentive_pool_amount - amount_per_settlement - log.info("Amount of remaining incentive pool: {}".format(remaining_incentive_pool_balance)) - first_settlement_cycle = annual_last_block / economic.settlement_size - log.info("Number of first additional issue settlement cycles: {}".format(first_settlement_cycle)) - current_last_block = (math.ceil(node.eth.blockNumber / economic.settlement_size) - 1) * economic.settlement_size - log.info("Current settlement block height: {}".format(current_last_block)) - current_settlement_cycle = current_last_block / economic.settlement_size - log.info("Current latest settlement cycles: {}".format(current_settlement_cycle)) - number = current_settlement_cycle - first_settlement_cycle - log.info("Phase difference period: {}".format(number)) - second_start_info = node.eth.getBlock( - int((first_settlement_cycle - (first_settlement_cycle - number)) * economic.settlement_size)) - second_start_timestamp = second_start_info['timestamp'] - log.info("second start timestamp : {}".format(second_start_timestamp)) - second_end_info = node.eth.getBlock(current_last_block) - second_end_timestamp = second_end_info['timestamp'] - log.info("second end timestamp : {}".format(second_end_timestamp)) - average_interval = (second_end_timestamp - second_start_timestamp) // (annual_last_block - 1) - log.info("Second Block interval in the last settlement cycle: {}".format(average_interval)) - - remaining_additional_time = second_issuing_cycle_timestamp - second_end_timestamp - log.info("Second Remaining time of current issuance cycle: {}".format(remaining_additional_time)) - number_of_remaining_blocks = math.ceil(remaining_additional_time / average_interval) - log.info("Second Remaining block height of current issuance cycle: {}".format(number_of_remaining_blocks)) - remaining_settlement_cycle = math.ceil(number_of_remaining_blocks / economic.settlement_size) - log.info("The additional settlement cycle in the second year: {}".format(number_of_remaining_blocks)) - per_block_reward, staking_reward = calculate_block_rewards_and_pledge_rewards(client, - remaining_incentive_pool_balance, - remaining_settlement_cycle) - chain_block_reward, chain_staking_reward = economic.get_current_year_reward(node) - log.info("Block rewards on the chain: {}".format(chain_block_reward)) - log.info("Pledge rewards on the chain:{}".format(chain_staking_reward)) - result = client.ppos.getAvgPackTime() - chain_time_interval = result['Ret'] - log.info("Block interval on the chain:{}".format(chain_time_interval)) - assert per_block_reward == chain_block_reward, "ErrMsg:Block rewards for the current settlement cycle {}".format( - per_block_reward) - assert staking_reward == chain_staking_reward, "ErrMsg:Pledge rewards for the current settlement cycle {}".format( - staking_reward) - assert average_interval == chain_time_interval, "ErrMsg:Block interval in the last settlement cycle {}".format( - average_interval) - - -def send_batch_transactions(obj, transaction_list): - """ - - """ - hx_list = [] - for transactions_dict in transaction_list: - from_address = transactions_dict['from'] - to_address = transactions_dict['to'] - data = transactions_dict['data'] - gasPrice = obj.node.web3.platon.gasPrice - if transactions_dict['amount'] is not None: - value = obj.node.web3.toWei(transactions_dict['amount'], 'ether') - else: - value = '' - if transactions_dict['data'] is not None: - transaction_data = {"to": to_address, "data": transactions_dict['data'], "from": from_address} - gas = obj.node.web3.platon.estimateGas(transaction_data) - else: - gas = 21000 - if transactions_dict['nonce'] is None: - nonce = obj.node.eth.getTransactionCount(from_address) - else: - nonce = transactions_dict['nonce'] - result = sendTransaction_input_nonce(obj, data, from_address, to_address, gasPrice, gas, value, nonce) - print(result) - hx_list.append(result) - return hx_list - - -def test_PT_AC_001(client_consensus): - """ - 非关联性转账交易 - """ - client = client_consensus - economic = client.economic - node = client.node - transaction_list = [] - print(node.node_mark) - # nonce = 0 - for i in range(10): - addres1, private_key1 = economic.account.generate_account(node.web3, node.web3.toWei(100, 'ether')) - addres2, private_key2 = economic.account.generate_account(node.web3, node.web3.toWei(0, 'ether')) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': None, 'data': ''} - # nonce = nonce + 1 - transaction_list.append(transaction_dict) - send_batch_transactions(client, transaction_list) - time.sleep(5) - for addreslist in transaction_list: - balance = node.eth.getBalance(addreslist['to']) - print(addreslist['to'], balance) - - -def test_PT_AC_002(client_consensus): - """ - 关联性转账交易(一) - """ - client = client_consensus - economic = client.economic - node = client.node - transaction_list = [] - addres1, private_key1 = economic.account.generate_account(node.web3, node.web3.toWei(110, 'ether')) - nonce = node.eth.getTransactionCount(addres1) - for i in range(10): - addres2, private_key2 = economic.account.generate_account(node.web3, 0) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': nonce, 'data': ''} - transaction_list.append(transaction_dict) - nonce = nonce + 1 - print(transaction_list) - send_batch_transactions(client, transaction_list) - time.sleep(5) - for addreslist in transaction_list: - balance = node.eth.getBalance(addreslist['to']) - print(addreslist['to'], balance) - - -def test_PT_AC_003(client_consensus): - """ - 关联性转账交易(二) - """ - client = client_consensus - economic = client.economic - node = client.node - transaction_list = [] - for i in range(10): - addres1, private_key1 = economic.account.generate_account(node.web3, node.web3.toWei(11, 'ether')) - addres2, private_key2 = economic.account.generate_account(node.web3, node.web3.toWei(11, 'ether')) - # nonce1 = node.eth.getTransactionCount(addres1) - # nonce2 = node.eth.getTransactionCount(addres2) - transaction_dict1 = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': None, 'data': ''} - transaction_dict2 = {'from': addres2, 'from_private': private_key2, 'to': addres1, 'to_private': private_key1, - 'amount': 10, 'nonce': None, 'data': ''} - transaction_list.append(transaction_dict1) - transaction_list.append(transaction_dict2) - print(transaction_list) - - for list1 in transaction_list: - balance1 = node.eth.getBalance(list1['to']) - print(list1['to'], balance1) - - send_batch_transactions(client, transaction_list) - time.sleep(5) - for addreslist in transaction_list: - balance = node.eth.getBalance(addreslist['to']) - print(addreslist['to'], balance) - - -def test_PT_AC_004(client_consensus): - """ - 关联性转账交易(三) - """ - client = client_consensus - economic = client.economic - node = client.node - transaction_list = [] - addres1, private_key1 = economic.account.generate_account(node.web3, node.web3.toWei(101, 'ether')) - addres2, private_key2 = economic.account.generate_account(node.web3, node.web3.toWei(0, 'ether')) - nonce = node.eth.getTransactionCount(addres1) - for i in range(10): - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': nonce, 'data': ''} - transaction_list.append(transaction_dict) - nonce = nonce + 1 - print(transaction_list) - send_batch_transactions(client, transaction_list) - time.sleep(5) - balance = node.eth.getBalance(transaction_list[0]['to']) - print(balance) - - -def PT_AC_005(client_consensus): - """ - 非关联性转账交易nonce重复 - """ - client = client_consensus - economic = client.economic - node = client.node - transaction_list = [] - addres1, private_key1 = economic.account.generate_account(node.web3, node.web3.toWei(100, 'ether')) - addres2, private_key2 = economic.account.generate_account(node.web3, node.web3.toWei(0, 'ether')) - nonce = node.eth.getTransactionCount(addres1) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': nonce, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': nonce + 1, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': nonce + 2, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': nonce + 2, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': nonce + 3, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': nonce + 4, 'data': ''} - transaction_list.append(transaction_dict) - print(transaction_list) - send_batch_transactions(client, transaction_list) - time.sleep(5) - balance = node.eth.getBalance(transaction_list[0]['to']) - print(balance) - - -def PT_AC_006(client_consensus): - """ - 非关联性转账交易nonce不连续 - """ - client = client_consensus - economic = client.economic - node = client.node - transaction_list = [] - addres1, private_key1 = economic.account.generate_account(node.web3, node.web3.toWei(100, 'ether')) - addres2, private_key2 = economic.account.generate_account(node.web3, node.web3.toWei(0, 'ether')) - nonce = client_consensus.node.web3.platon.getTransactionCount(addres1) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': nonce, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': nonce + 1, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': nonce + 3, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': nonce + 4, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 10, 'nonce': nonce + 5, 'data': ''} - transaction_list.append(transaction_dict) - print(transaction_list) - send_batch_transactions(client, transaction_list) - time.sleep(5) - balance = node.eth.getBalance(transaction_list[0]['to']) - print(balance) - - -def test_PT_AC_007(client_consensus): - """ - 向合约地址转账(不同地址转入) - """ - client = client_consensus - economic = client.economic - node = client.node - transaction_list = [] - balance = node.eth.getBalance(EconomicConfig.STAKING_ADDRESS) - print(balance) - for i in range(10): - addres1, private_key1 = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': EconomicConfig.STAKING_ADDRESS, - 'to_private': None, 'amount': 10, 'nonce': None, 'data': ''} - transaction_list.append(transaction_dict) - print(transaction_list) - send_batch_transactions(client, transaction_list) - time.sleep(5) - balance = node.eth.getBalance(transaction_list[0]['to']) - print(balance) - - -def test_PT_AC_008(client_consensus): - """ - 向合约地址转账(同地址转入) - """ - client = client_consensus - economic = client.economic - node = client.node - transaction_list = [] - addres1, private_key1 = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - balance = node.eth.getBalance(EconomicConfig.STAKING_ADDRESS) - print(balance) - nonce = node.eth.getTransactionCount(addres1) - for i in range(10): - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': EconomicConfig.STAKING_ADDRESS, - 'to_private': None, 'amount': 10, 'nonce': nonce, 'data': ''} - transaction_list.append(transaction_dict) - nonce = nonce + 1 - print(transaction_list) - send_batch_transactions(client, transaction_list) - time.sleep(5) - balance = node.eth.getBalance(transaction_list[0]['to']) - print(balance) - - -def PT_AC_009(client_consensus): - """ - gas和余额不足(一) - """ - client = client_consensus - economic = client.economic - node = client.node - transaction_list = [] - addres1, private_key1 = economic.account.generate_account(node.web3, node.web3.toWei(10, 'ether')) - addres2, private_key2 = economic.account.generate_account(node.web3, node.web3.toWei(1, 'ether')) - addres3, private_key3 = economic.account.generate_account(node.web3, node.web3.toWei(6, 'ether')) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 5, 'nonce': None, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = {'from': addres2, 'from_private': private_key2, 'to': addres3, 'to_private': private_key3, - 'amount': 5, 'nonce': None, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = {'from': addres3, 'from_private': private_key3, 'to': addres1, 'to_private': private_key1, - 'amount': 10, 'nonce': None, 'data': ''} - transaction_list.append(transaction_dict) - print(transaction_list) - send_batch_transactions(client, transaction_list) - - -def PT_AC_010(client_consensus): - """ - gas和余额不足(二) - """ - client = client_consensus - economic = client.economic - node = client.node - transaction_list = [] - addres1, private_key1 = economic.account.generate_account(node.web3, node.web3.toWei(10, 'ether')) - addres2, private_key2 = economic.account.generate_account(node.web3, node.web3.toWei(10, 'ether')) - addres3, private_key3 = economic.account.generate_account(node.web3, node.web3.toWei(10, 'ether')) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, - 'amount': 5, 'nonce': None, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = {'from': addres3, 'from_private': private_key2, 'to': addres1, 'to_private': private_key3, - 'amount': 10, 'nonce': None, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = {'from': addres2, 'from_private': private_key3, 'to': addres3, 'to_private': private_key1, - 'amount': 5, 'nonce': None, 'data': ''} - transaction_list.append(transaction_dict) - print(transaction_list) - send_batch_transactions(client, transaction_list) - - -# -# def test_PT_AC_013(client_consensus): -# """ -# 并发交易数大于线程数 -# """ -# client = client_consensus -# economic = client.economic -# node = client.node -# transaction_list = [] -# for i in range(10): -# addres1, private_key1 = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) -# addres2, private_key2 = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) -# transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres2, 'to_private': private_key2, 'amount': 10, 'nonce': None} -# transaction_list.append(transaction_dict) -# print(transaction_list) -# send_batch_transactions(client, transaction_list) - - -def create_staking(client): - economic = client.economic - node = client.node - address, private_key = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - benifit_address, _ = economic.account.generate_account(node.web3, 0) - program_version_sign = node.program_version_sign - program_version = node.program_version - bls_pubkey = node.blspubkey - bls_proof = node.schnorr_NIZK_prove - benifit_address = bech32_address_bytes(benifit_address) - if program_version_sign[:2] == '0x': - program_version_sign = program_version_sign[2:] - data = HexBytes(rlp.encode([rlp.encode(int(1000)), rlp.encode(0), rlp.encode(benifit_address), - rlp.encode(bytes.fromhex(node.node_id)), rlp.encode("platon"), rlp.encode("platon1"), - rlp.encode("http://www.platon.network"), rlp.encode("The PlatON Node"), - rlp.encode(economic.create_staking_limit), rlp.encode(0), rlp.encode(program_version), - rlp.encode(bytes.fromhex(program_version_sign)), rlp.encode(bytes.fromhex(bls_pubkey)), - rlp.encode(bytes.fromhex(bls_proof))])).hex() - transaction_dict = {'from': address, 'from_private': private_key, 'to': EconomicConfig.STAKING_ADDRESS, - 'to_private': None, 'data': data, 'amount': 10, 'nonce': None} - return transaction_dict - - -def test_PT_AC_014(client_consensus): - """ - 质押并行交易(一) - """ - client = client_consensus - economic = client.economic - node = client.node - transaction_list = [] - for i in range(3): - addres1, private_key1 = economic.account.generate_account(node.web3, node.web3.toWei(1000, 'ether')) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': addres1, 'to_private': private_key1, - 'amount': 10, 'nonce': None, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = create_staking(client) - transaction_list.append(transaction_dict) - print(transaction_list) - hx_list = send_batch_transactions(client, transaction_list) - time.sleep(5) - print(hx_list) - result = node.eth.analyzeReceiptByHash(hx_list[5]) - print(result) - - -def test_PT_AC_015(client_consensus): - """ - 质押并行交易(二) - """ - client = client_consensus - economic = client.economic - node = client.node - transaction_list = [] - for i in range(2): - addres3, private_key4 = economic.account.generate_account(node.web3, node.web3.toWei(100, 'ether')) - addres5, private_key6 = economic.account.generate_account(node.web3, node.web3.toWei(0, 'ether')) - transaction_dict = {'from': addres3, 'from_private': private_key4, 'to': addres5, 'to_private': private_key6, - 'amount': 10, 'nonce': None, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = create_staking(client) - transaction_list.append(transaction_dict) - for i in range(3): - addres3, private_key4 = economic.account.generate_account(node.web3, node.web3.toWei(100, 'ether')) - addres5, private_key6 = economic.account.generate_account(node.web3, node.web3.toWei(0, 'ether')) - transaction_dict = {'from': addres3, 'from_private': private_key4, 'to': addres5, 'to_private': private_key6, - 'amount': 10, 'nonce': None, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = create_staking(client) - transaction_list.append(transaction_dict) - for i in range(3): - addres3, private_key4 = economic.account.generate_account(node.web3, node.web3.toWei(100, 'ether')) - addres5, private_key6 = economic.account.generate_account(node.web3, node.web3.toWei(0, 'ether')) - transaction_dict = {'from': addres3, 'from_private': private_key4, 'to': addres5, 'to_private': private_key6, - 'amount': 10, 'nonce': None, 'data': ''} - transaction_list.append(transaction_dict) - transaction_dict = create_staking(client) - transaction_list.append(transaction_dict) - print(transaction_list) - hx_list = send_batch_transactions(client, transaction_list) - time.sleep(5) - print(hx_list) - result = node.eth.analyzeReceiptByHash(hx_list[-1]) - print(result) - - -def test_PT_AC_016(client_consensus): - client = client_consensus - economic = client.economic - node = client.node - transaction_list = [] - transaction_dict = create_staking(client) - data = transaction_dict['data'] - print(data) - for i in range(5): - addres1, private_key1 = economic.account.generate_account(node.web3, node.web3.toWei(100, 'ether')) - addres2, private_key2 = economic.account.generate_account(node.web3, node.web3.toWei(0, 'ether')) - transaction_dict = {'from': addres1, 'from_private': private_key1, 'to': EconomicConfig.STAKING_ADDRESS, - 'to_private': private_key2, 'amount': 0, 'nonce': None, 'data': data} - transaction_list.append(transaction_dict) - print(transaction_list) - send_batch_transactions(client, transaction_list) - time.sleep(5) - for addreslist in transaction_list: - balance1 = node.eth.getBalance(addreslist['from']) - balance2 = node.eth.getBalance(addreslist['to']) - print("from", addreslist['from'], balance1) - print("to", addreslist['to'], balance2) - - -def RO_T_001(new_genesis_env, client_noconsensus): - """ - 同个块高里重复质押、委托、解质押 - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.config.cbft.period = 30000 - genesis.economicModel.common.maxEpochMinutes = 9 - genesis.economicModel.common.additionalCycleTime = 40 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - client = client_noconsensus - economic = client.economic - node = client.node - log.info("node ip : {}".format(node.node_mark)) - node.ppos.need_analyze = False - staking_addres, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - entrust_addres, _ = economic.account.generate_account(node.web3, economic.create_staking_limit) - log.info("entrust_addres: {}".format(entrust_addres)) - entrust_addres2, _ = economic.account.generate_account(node.web3, economic.create_staking_limit) - log.info("entrust_addres2: {}".format(entrust_addres2)) - nonce1 = node.eth.getTransactionCount(Web3.toChecksumAddress(staking_addres)) - nonce2 = node.eth.getTransactionCount(Web3.toChecksumAddress(entrust_addres)) - nonce3 = node.eth.getTransactionCount(Web3.toChecksumAddress(staking_addres)) - # nonce4 = node.eth.getTransactionCount(Web3.toChecksumAddress(entrust_addres2)) - # cfg4 = {"gasPrice": 1700000000000, "nonce": nonce4} - gasPrice = 2000000000000 - number = 0 - cfg1 = {"gasPrice": gasPrice, "nonce": nonce1} - cfg2 = {"gasPrice": gasPrice, "nonce": nonce2} - cfg3 = {"gasPrice": gasPrice, "nonce": nonce3} - for i in range(3): - cfg1['gasPrice'] = gasPrice - log.info("cfg1 gasPrice:{}".format(cfg1['gasPrice'])) - client.staking.create_staking(0, staking_addres, staking_addres, transaction_cfg=cfg1) - cfg3['nonce'] = cfg1['nonce'] + 1 - gasPrice = gasPrice - 1 - cfg2['gasPrice'] = gasPrice - log.info("cfg2 gasPrice:{}".format(cfg2['gasPrice'])) - client.delegate.delegate(0, entrust_addres, tansaction_cfg=cfg2) - client.delegate.delegate(0, entrust_addres2, tansaction_cfg=cfg2) - number = number + 2 - gasPrice = gasPrice - 1 - cfg2['nonce'] = cfg2['nonce'] + 1 - cfg3['gasPrice'] = gasPrice - log.info("cfg3 gasPrice:{}".format(cfg3['gasPrice'])) - client.staking.withdrew_staking(staking_addres, transaction_cfg=cfg3) - gasPrice = gasPrice - 1 - cfg1['nonce'] = cfg3['nonce'] + 1 - # cfg4['nonce'] = cfg4['nonce'] + 1 - # client.delegate.withdrew_delegate(current_block, entrust_addres2, transaction_cfg=cfg4) - # cfg4['nonce'] = cfg4['nonce'] + 1 - if i == 2: - client.staking.create_staking(0, staking_addres, staking_addres, transaction_cfg=cfg1) - cfg3['nonce'] = cfg1['nonce'] + 1 - gasPrice = gasPrice - 1 - cfg2['gasPrice'] = gasPrice - log.info("cfg2 gasPrice:{}".format(cfg2['gasPrice'])) - time.sleep(1) - for i in range(2): - client.delegate.delegate(0, entrust_addres, tansaction_cfg=cfg2) - client.delegate.delegate(0, entrust_addres2, tansaction_cfg=cfg2) - gasPrice = gasPrice - 1 - cfg2['nonce'] = cfg2['nonce'] + 1 - cfg3['gasPrice'] = gasPrice - log.info("cfg3 gasPrice:{}".format(cfg3['gasPrice'])) - client.staking.withdrew_staking(staking_addres, transaction_cfg=cfg3) - gasPrice = gasPrice - 1 - cfg1['nonce'] = cfg3['nonce'] + 1 - cfg1['gasPrice'] = gasPrice - log.info("cfg1 gasPrice:{}".format(cfg1['gasPrice'])) - client.staking.create_staking(0, staking_addres, staking_addres, transaction_cfg=cfg1) - cfg3['nonce'] = cfg1['nonce'] + 1 - gasPrice = gasPrice - 1 - cfg2['gasPrice'] = gasPrice - log.info("cfg2 gasPrice:{}".format(cfg2['gasPrice'])) - - time.sleep(10) - candidate_info1 = node.ppos.getCandidateInfo(node.node_id) - log.info("Candidate_information:{}".format(candidate_info1)) - assert candidate_info1['Ret']['Shares'] == economic.create_staking_limit - assert candidate_info1['Ret']['DelegateTotalHes'] == 0 - - result = node.ppos.getDelegateInfo(candidate_info1['Ret']['StakingBlockNum'], entrust_addres, node.node_id) - log.info("entrust_addres commission_information1:{}".format(result)) - assert_code(result, 301205) - result = node.ppos.getDelegateInfo(11, entrust_addres, node.node_id) - log.info("entrust_addres commission_information2:{}".format(result)) - assert result['Ret']['ReleasedHes'] == economic.delegate_limit - - result = node.ppos.getDelegateInfo(candidate_info1['Ret']['StakingBlockNum'], entrust_addres2, node.node_id) - log.info("entrust_addres2 commission_information1:{}".format(result)) - assert_code(result, 301205) - result = node.ppos.getDelegateInfo(11, entrust_addres2, node.node_id) - log.info("entrust_addres2 commission_information2:{}".format(result)) - assert result['Ret']['ReleasedHes'] == economic.delegate_limit - - node.ppos.need_analyze = True - economic.wait_settlement(node, 1) - - -def test2223(client_new_node): - """ - 调试脚本使用 - """ - client = client_new_node - economic = client.economic - node = client.node - # address = 'atx1r8pvmt7hk6lk8uk7dtnfyrpcy9l8rfjry34uq9' - # node_id = '6cda52721a11a5034ae0dfc03ebe0a60a797e0240f9bba427957abeeb2e367c09ed099c6871bf17158c5d694c4d5ccad363b38055e345898ff02a88e17d66149' - # - print(client.node.ppos.getCandidateList()) - # # create account - # address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # address2, _ = economic.account.generate_account(node.web3, 0) - # # create pledge - # result = client.staking.create_staking(0, address1, address1, reward_per=80) - # assert_code(result, 0) - # economic.wait_settlement(node, 1) - # time.sleep(1) - # result = client.staking.edit_candidate(address1, address1, reward_per=580) - # print(result) - # print(client.ppos.getCandidateInfo(node.node_id)) - # economic.wait_consensus(node, 4) - # for i in range(160): - # result = client.staking.edit_candidate(address1, address1, reward_per=1080) - # print(result) - # time.sleep(1) - # print(client.ppos.getCandidateInfo(node.node_id)) - # # client.staking.edit_candidate(address1, address1, reward_per=1080) - # # economic.wait_settlement(node) - # time.sleep(1) - # print(client.ppos.getCandidateInfo(node.node_id)) - # result = client.staking.increase_staking(0, address, node_id=node_id) - # assert_code(result, 0) - # print("getCandidateList", client.ppos.getCandidateList()) - # print("getVerifierList", client.ppos.getVerifierList()) - # print("getValidatorList", client.ppos.getValidatorList()) - # print(client.node.web3.toWei(500000, 'ether')) - # staking_addres, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # client.staking.create_staking(0,staking_addres,staking_addres,transaction_cfg=) -# hx = '0xd7d479481b480b149339908d2e267a03b02396d9a84d6774c7d5d76f3434cf80' - # result = client.node.eth.analyzeReceiptByHash(hx) - # result = client.ppos.getCandidateList() - # print(result) - # client.economic.env.deploy_all() diff --git a/cases/tests/ppos/test_total_reward.py b/cases/tests/ppos/test_total_reward.py deleted file mode 100644 index 70d938709d..0000000000 --- a/cases/tests/ppos/test_total_reward.py +++ /dev/null @@ -1,1373 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- -#   @Time    : 2020/1/2 10:41 -#   @Author  : PlatON-Developer -#   @Site    : https://github.com/PlatONnetwork/ -import os -import time -import pytest -from decimal import Decimal - -from common.log import log -from common.key import mock_duplicate_sign -from tests.lib.genesis import to_genesis -from tests.lib.client import Client -from tests.lib.utils import assert_code, get_pledge_list, von_amount -from tests.ppos.conftest import create_staking, calculate - - -def calculate_switch_block(node, economic): - block_number = node.block_number - return int(block_number / economic.settlement_size) * economic.settlement_size - - -def calculate_reward(block_reward, staking_reward, block_num, reward): - delegate_reward = int(Decimal(str(staking_reward))*Decimal(str(reward))/Decimal(str(10000)) + Decimal(str(int(Decimal(str(block_reward))*Decimal(str(reward))/Decimal(str(10000))))) * Decimal(str(block_num))) - total_reward = int(Decimal(str(staking_reward)) + Decimal(str(block_reward)) * Decimal(str(block_num))) - return total_reward, delegate_reward - - -def calculate_pool_balance(node, economic): - return node.eth.getBalance(node.web3.delegateRewardAddress, calculate_switch_block(node, economic)) - - -def get_ben_balance(node, economic, ben_address): - return node.eth.getBalance(ben_address, calculate_switch_block(node, economic)) - - -def assert_reward_total(candidate_info, *args): - for value in args: - assert candidate_info["Ret"]["DelegateRewardTotal"] == value - - -def assert_reward_per(candidate_info, reward): - assert candidate_info["Ret"]["RewardPer"] == reward - - -def assert_next_reward_per(candidate_info, next_reward): - assert candidate_info["Ret"]["NextRewardPer"] == next_reward - - -@pytest.mark.P0 -def test_DG_TR_001(client_consensus, reset_environment): - """ - Adjust the dividend ratio of the built-in nodes and verify the total commission rewards generated by the nodes - :param client_consensus: - :return: - """ - reward = 500 - economic = client_consensus.economic - node = client_consensus.node - candidate_info = client_consensus.ppos.getCandidateInfo(node.node_id) - log.info("first candidate info:{}".format(candidate_info)) - assert_reward_per(candidate_info, 0) - economic.wait_settlement(node, 1) - result = client_consensus.staking.edit_candidate(economic.cfg.DEVELOPER_FOUNDATAION_ADDRESS, economic.cfg.INCENTIVEPOOL_ADDRESS, reward_per=reward) - assert_code(result, 0) - candidate_info = client_consensus.ppos.getCandidateInfo(node.node_id) - log.info("second candidate info:{}".format(candidate_info)) - assert_reward_per(candidate_info, 0) - edit_after_balance = node.eth.getBalance(economic.cfg.INCENTIVEPOOL_ADDRESS) - log.info("Get the balance before editing:{}".format(edit_after_balance)) - client_consensus.economic.wait_settlement(node) - candidate_info = client_consensus.ppos.getCandidateInfo(node.node_id) - log.info("last candidate info:{}".format(candidate_info)) - assert_reward_total(candidate_info, 0, calculate_pool_balance(node, economic)) - assert node.eth.getBalance(economic.cfg.INCENTIVEPOOL_ADDRESS) - edit_after_balance == 0 - - -@pytest.mark.P0 -def test_DG_TR_002(client_consensus, reset_environment): - """ - Adjust the built-in node income address and dividend ratio, and verify the total commission rewards generated by the node - :param client_consensus: - :return: - """ - reward = 500 - economic = client_consensus.economic - node = client_consensus.node - candidate_info = client_consensus.ppos.getCandidateInfo(node.node_id) - log.info("View built-in node information:{}".format(candidate_info)) - assert candidate_info["Ret"]["RewardPer"] == 0 - log.info("editing built in nodes") - economic.wait_settlement(node, 1) - result = client_consensus.staking.edit_candidate(economic.cfg.DEVELOPER_FOUNDATAION_ADDRESS, economic.cfg.INCENTIVEPOOL_ADDRESS, - reward_per=reward) - assert_code(result, 0) - candidate_info = client_consensus.ppos.getCandidateInfo(node.node_id) - log.info("Verify the modification") - assert_reward_per(candidate_info, 0) - assert candidate_info["Ret"]["BenefitAddress"] == economic.cfg.INCENTIVEPOOL_ADDRESS - log.info("waiting for a settlement cycle") - economic.wait_settlement(node) - candidate_info = client_consensus.ppos.getCandidateInfo(node.node_id) - log.info("querying node information:{}".format(candidate_info)) - assert_reward_total(candidate_info, 0, calculate_pool_balance(node, economic)) - - -@pytest.mark.P1 -def test_DG_TR_003(staking_node_client): - """ - 调整非内置节点分红比例,验证节点产生的总委托奖励 - :param staking_node_client: - :return: - """ - economic = staking_node_client.economic - node = staking_node_client.node - result = staking_node_client.delegate.delegate(0, staking_node_client.delegate_address) - assert_code(result, 0) - reward = 2000 - log.info("modify node dividend ratio") - economic.wait_settlement(node, 1) - result = staking_node_client.staking.edit_candidate(staking_node_client.staking_address, - staking_node_client.staking_address, reward_per=reward) - assert_code(result, 0) - candidate_info = staking_node_client.ppos.getCandidateInfo(node.node_id) - log.info("querying node information:{}".format(candidate_info)) - log.info("check dividend ratio") - assert_reward_per(candidate_info, staking_node_client.reward) - assert_next_reward_per(candidate_info, reward) - log.info("waiting for a settlement cycle") - economic.wait_settlement(node) - block_reward, staking_reward = economic.get_current_year_reward(node) - log.info("query block reward and pledge reward:{},{}".format(block_reward, staking_reward)) - economic.wait_settlement(node) - candidate_info = staking_node_client.ppos.getCandidateInfo(node.node_id) - log.info("querying node information:{}".format(candidate_info)) - assert_reward_per(candidate_info, reward) - delegate_reward = economic.calculate_delegate_reward(node, block_reward, staking_reward) - log.info("the total commission reward is:{}".format(delegate_reward)) - assert_reward_total(candidate_info, von_amount(delegate_reward, 3), calculate_pool_balance(node, economic)) - - -@pytest.mark.P1 -@pytest.mark.parametrize('value', [0, 499, 500]) -def test_DG_TR_003_01(client_noconsensus, value): - """ - 增加非内置节点分红比例rewardPerMaxChangeRange值 - :param staking_node_client: - :return: - """ - economic = staking_node_client.economic - node = staking_node_client.node - result = staking_node_client.delegate.delegate(0, staking_node_client.delegate_address) - assert_code(result, 0) - addition_reward = 2000 + economic.genesis.economicModel.staking.rewardPerMaxChangeRange + 1 - log.info("modify node dividend ratio") - economic.wait_settlement(node, 1) - result = staking_node_client.staking.edit_candidate(staking_node_client.staking_address, - staking_node_client.staking_address, reward_per=addition_reward) - assert_code(result, 301009) - - reduce_reward = 2000 - (economic.genesis.economicModel.staking.rewardPerMaxChangeRange + 1) - log.info("modify node dividend ratio") - result = staking_node_client.staking.edit_candidate(staking_node_client.staking_address, - staking_node_client.staking_address, reward_per=reduce_reward) - assert_code(result, 301009) - - -@pytest.mark.P1 -def test_DG_TR_003_04(client_noconsensus, reset_environment): - """ - 调整非内置节点分红比例超过万分比 - :param staking_node_client: - :return: - """ - economic = client_noconsensus.economic - node = client_noconsensus.node - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - result = client_noconsensus.staking.create_staking(0, address, address,reward_per=9600) - assert_code(result, 0) - economic.wait_settlement(node, 1) - addition_reward = 9600 + economic.genesis.economicModel.staking.rewardPerMaxChangeRange - log.info("modify node dividend ratio") - result = client_noconsensus.staking.edit_candidate(address, address, reward_per=addition_reward) - assert_code(result, 301007) - - -@pytest.mark.P1 -def DG_TR_003_05(client_noconsensus): - """ - 调整非内置节点分红比例负 - :param client_noconsensus: - :return: - """ - economic = client_noconsensus.economic - node = client_noconsensus.node - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - result = client_noconsensus.staking.create_staking(0, address, address,reward_per=400) - assert_code(result, 0) - economic.wait_settlement(node, 1) - addition_reward = 400 - economic.genesis.economicModel.staking.rewardPerMaxChangeRange - log.info("modify node dividend ratio") - result = client_noconsensus.staking.edit_candidate(address, address, reward_per=addition_reward) - # assert_code(result, 301007) - log.info("nodeinfo: {}".format(client_noconsensus.ppos.getCandidateInfo(node.node_id))) - - -@pytest.mark.P1 -def test_DG_TR_003_06(client_noconsensus): - """ - 调整非内置节点分红比例时限 - :param staking_node_client: - :return: - """ - economic = client_noconsensus.economic - node = client_noconsensus.node - address, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - result = client_noconsensus.staking.create_staking(0, address, address, reward_per=1000) - assert_code(result, 0) - addition_reward = 1000 + economic.genesis.economicModel.staking.rewardPerMaxChangeRange - log.info("modify node dividend ratio") - result = client_noconsensus.staking.edit_candidate(address, address, reward_per=addition_reward) - assert_code(result, 301008) - economic.wait_settlement(node, 1) - result = client_noconsensus.staking.edit_candidate(address, address, reward_per=addition_reward) - assert_code(result, 0) - economic.wait_settlement(node) - candidate_info = client_noconsensus.ppos.getCandidateInfo(node.node_id) - log.info("querying node information:{}".format(candidate_info)) - assert_reward_per(candidate_info, addition_reward) - addition_reward = addition_reward + economic.genesis.economicModel.staking.rewardPerMaxChangeRange - result = client_noconsensus.staking.edit_candidate(address, address, reward_per=addition_reward) - assert_code(result, 301008) - - -@pytest.mark.P1 -def test_DG_TR_004(staking_node_client): - """ - When the node has no commission, verify the total commission reward generated by the node (hesitation period) - :param staking_node_client: - :return: - """ - node = staking_node_client.node - candidate_info = staking_node_client.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0) - - -@pytest.mark.P1 -def test_DG_TR_005(global_test_env, reset_environment, staking_cfg): - """ - When the node has no commission, verify the total commission reward (candidate) generated by the node - :param global_test_env: - :param reset_environment: - :param staking_cfg: - :return: - """ - log.info("modify verification number") - genesis_cfg = global_test_env.genesis_config - genesis = to_genesis(genesis_cfg) - genesis.economicModel.staking.maxValidators = 4 - genesis_file = os.path.join(global_test_env.cfg.env_tmp, "dg_tr_005_genesis.json") - genesis.to_file(genesis_file) - global_test_env.deploy_all(genesis_file) - node = global_test_env.get_a_normal_node() - client = Client(global_test_env, node, staking_cfg) - log.info("pledge a node") - create_staking(client, reward=1000) - client.economic.wait_settlement(node) - candidate_info = client.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0) - - -@pytest.mark.P0 -def test_DG_TR_006(staking_node_client): - """ - When the node has no delegation, the total delegation reward generated by the verification node (validator) - :param staking_node_client: - :return: - """ - economic = staking_node_client.economic - node = staking_node_client.node - economic.wait_settlement(node) - start_balance = get_ben_balance(node, economic, staking_node_client.staking_address) - log.info("starting amount:{}".format(start_balance)) - block_reward, staking_reward = economic.get_current_year_reward(node) - log.info("query block reward and pledge reward:{},{}".format(block_reward, staking_reward)) - economic.wait_settlement(node) - end_balance = get_ben_balance(node, economic, staking_node_client.staking_address) - log.info("end balance:{}".format(end_balance)) - block_num = economic.get_number_blocks_in_interval(node) - log.info("This node generates blocks in this settlement cycle:{}".format(block_num)) - total_reward, delegate_reward = calculate_reward(block_reward, staking_reward, block_num, reward=0) - assert total_reward == end_balance - start_balance - - -@pytest.mark.P2 -def test_DG_TR_007(delegate_node_client): - """ - When the node has a commission, verify the total commission reward generated by the node (hesitation period) - :param delegate_node_client: - :return: - """ - node = delegate_node_client.node - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0) - delegate_info = node.ppos.getDelegateInfo(candidate_info["Ret"]["StakingBlockNum"], delegate_node_client.delegate_address, node.node_id) - assert delegate_info["Ret"]["CumulativeIncome"] == 0 - - -@pytest.mark.P2 -def test_DG_TR_008(global_test_env, reset_environment, staking_cfg): - """ - When a node has a commission, verify the total commission reward (candidate) generated by the node - :param global_test_env: - :param reset_environment: - :param staking_cfg: - :return: - """ - log.info("modify verification number") - genesis_cfg = global_test_env.genesis_config - genesis = to_genesis(genesis_cfg) - genesis.economicModel.staking.maxValidators = 4 - genesis_file = os.path.join(global_test_env.cfg.env_tmp, "dg_tr_005_genesis.json") - genesis.to_file(genesis_file) - global_test_env.deploy_all(genesis_file) - node = global_test_env.get_a_normal_node() - client = Client(global_test_env, node, staking_cfg) - log.info("pledge a node") - staking_address, delegate_address = create_staking(client, reward=1000) - result = client.delegate.delegate(0, delegate_address) - assert_code(result, 0) - client.economic.wait_settlement(node) - candidate_info = client.ppos.getCandidateInfo(node.node_id) - log.info("candidate info:{}".format(candidate_info)) - assert_reward_total(candidate_info, 0) - delegate_info = node.ppos.getDelegateInfo(candidate_info["Ret"]["StakingBlockNum"], delegate_address, node.node_id) - log.info("delegate info:{}".format(delegate_info)) - assert delegate_info["Ret"]["CumulativeIncome"] == 0 - - -@pytest.mark.P0 -def test_DG_TR_009(delegate_node_client): - """ - When the node has a commission, the total commission reward (validator) generated by the verification node - :param delegate_node_client: - :return: - """ - node = delegate_node_client.node - economic = delegate_node_client.economic - - economic.wait_settlement(node) - start_balance = get_ben_balance(node, economic, delegate_node_client.staking_address) - log.info("Pledged balance at the end of the first settlement cycle:{}".format(start_balance)) - block_reward, staking_reward = economic.get_current_year_reward(node) - log.info("in the second settlement cycle staking reward:{} block reward:{}".format(staking_reward, block_reward)) - - economic.wait_settlement(node) - end_balance = get_ben_balance(node, economic, delegate_node_client.staking_address) - log.info("Pledged balance at the end of the second settlement cycle:{}".format(end_balance)) - block_num = economic.get_number_blocks_in_interval(node) - total_reward, delegate_reward = calculate_reward(block_reward, staking_reward, block_num, delegate_node_client.reward) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - log.info("candidate info:{}".format(candidate_info)) - assert_reward_total(candidate_info, delegate_reward, calculate_pool_balance(node, economic)) - assert_reward_per(candidate_info, delegate_node_client.reward) - assert end_balance - start_balance == total_reward - delegate_reward - - -@pytest.mark.P0 -def test_DG_TR_010(client_new_node, reset_environment): - """ - Verify that the dividend payout ratio of the node is set to 0 ‱, verify the dividend payout pool and node revenue - :param client_new_node: - :param reset_environment: - :return: - """ - reward = 0 - node = client_new_node.node - economic = client_new_node.economic - staking_address, delegate_address = create_staking(client_new_node, reward) - result = client_new_node.delegate.delegate(0, delegate_address) - assert_code(result, 0) - - economic.wait_settlement(node) - switch_block = calculate_switch_block(node, economic) - start_balance = node.eth.getBalance(staking_address, switch_block) - log.info("Pledged balance at the end of the first settlement cycle:{}".format(start_balance)) - block_reward, staking_reward = economic.get_current_year_reward(node) - log.info("in the second settlement cycle staking reward:{} block reward:{}".format(staking_reward, block_reward)) - - economic.wait_settlement(node) - block_num = economic.get_number_blocks_in_interval(node) - switch_block = calculate_switch_block(node, economic) - end_balance = node.eth.getBalance(staking_address, switch_block) - log.info("Pledged balance at the end of the second settlement cycle:{}".format(end_balance)) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - log.info("candidate info:{}".format(candidate_info)) - assert_reward_total(candidate_info, 0, calculate_pool_balance(node, economic)) - total_reward, delegate_reward = calculate_reward(block_reward, staking_reward, block_num, reward) - assert end_balance - start_balance == total_reward - - -def create_staking_dif_ben(client, reward): - amount = calculate(client.economic.create_staking_limit, 5) - staking_amount = calculate(client.economic.create_staking_limit, 2) - staking_address, _ = client.economic.account.generate_account(client.node.web3, amount) - ben_address, _ = client.economic.account.generate_account(client.node.web3, 0) - delegate_address, _ = client.economic.account.generate_account(client.node.web3, client.economic.add_staking_limit * 5) - result = client.staking.create_staking(0, ben_address, staking_address, amount=staking_amount, reward_per=reward) - assert_code(result, 0) - return staking_address, delegate_address, ben_address - - -@pytest.mark.P2 -def test_DG_TR_011(client_new_node, reset_environment): - """ - Adjust the dividend ratio after commissioning to verify the dividend pool and node income - :param client_new_node: - :return: - """ - reward = 1000 - node = client_new_node.node - economic = client_new_node.economic - staking_address, delegate_address, ben_address = create_staking_dif_ben(client_new_node, 0) - - economic.wait_settlement(node) - result = client_new_node.delegate.delegate(0, delegate_address) - assert_code(result, 0) - - economic.wait_settlement(node) - block_reward, staking_reward = economic.get_current_year_reward(node) - switch_block = calculate_switch_block(node, economic) - start_balance = node.eth.getBalance(ben_address, switch_block) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0) - result = client_new_node.staking.edit_candidate(staking_address, ben_address, reward_per=reward) - assert_code(result, 0) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_next_reward_per(candidate_info, reward) - - economic.wait_settlement(node) - block_num = economic.get_number_blocks_in_interval(node) - total_reward, delegate_reward = calculate_reward(block_reward, staking_reward, block_num, reward) - end_balance = node.eth.getBalance(ben_address, switch_block + economic.settlement_size) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0, calculate_pool_balance(node, economic)) - assert_reward_per(candidate_info, reward) - assert end_balance - start_balance >= total_reward - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - block_num = economic.get_number_blocks_in_interval(node) - total_reward, delegate_reward = calculate_reward(block_reward, staking_reward, block_num, reward) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - - assert_reward_total(candidate_info, delegate_reward, calculate_pool_balance(node, economic)) - end_balance_two = node.eth.getBalance(ben_address, switch_block + economic.settlement_size + economic.settlement_size) - assert end_balance_two - end_balance == total_reward - delegate_reward - - -@pytest.mark.P2 -def test_DG_TR_012(client_new_node, reset_environment): - """ - Adjust the dividend ratio after redeeming part of the commission, verify the dividend pool and node income - :param client_new_node: - :return: - """ - reward = 1000 - update_reward = 2000 - node = client_new_node.node - economic = client_new_node.economic - staking_address, delegate_address, ben_address = create_staking_dif_ben(client_new_node, reward) - - economic.wait_settlement(node) - result = client_new_node.delegate.delegate(0, delegate_address, amount=economic.delegate_limit * 2) - assert_code(result, 0) - - economic.wait_settlement(node) - block_reward, staking_reward = economic.get_current_year_reward(node) - switch_block = calculate_switch_block(node, economic) - start_balance = node.eth.getBalance(ben_address, switch_block) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0, calculate_pool_balance(node, economic)) - result = client_new_node.staking.edit_candidate(staking_address, ben_address, reward_per=update_reward) - assert_code(result, 0) - result = client_new_node.delegate.withdrew_delegate(candidate_info["Ret"]["StakingBlockNum"], delegate_address) - assert_code(result, 0) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_next_reward_per(candidate_info, update_reward) - - economic.wait_settlement(node) - block_num = economic.get_number_blocks_in_interval(node) - total_reward, delegate_reward = calculate_reward(block_reward, staking_reward, block_num, reward) - end_balance = node.eth.getBalance(ben_address, switch_block + economic.settlement_size) - assert end_balance - start_balance >= total_reward - delegate_reward - block_reward, staking_reward = economic.get_current_year_reward(node) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, delegate_reward, calculate_pool_balance(node, economic)) - assert node.eth.getBalance(node.web3.delegateRewardAddress, calculate_switch_block(node, economic)) == delegate_reward - - economic.wait_settlement(node) - block_num = economic.get_number_blocks_in_interval(node) - total_reward, delegate_reward_two = calculate_reward(block_reward, staking_reward, block_num, update_reward) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, delegate_reward + delegate_reward_two, calculate_pool_balance(node, economic)) - - end_balance_two = node.eth.getBalance(ben_address, switch_block + economic.settlement_size + economic.settlement_size) - assert end_balance_two - end_balance == total_reward - delegate_reward_two - - -@pytest.mark.P2 -def test_DG_TR_013(client_new_node, reset_environment): - """ - Adjust the dividend ratio after redeeming all commissions to verify the dividend pool and node income - :param client_new_node: - :return: - """ - reward = 1000 - update_reward = 2000 - node = client_new_node.node - economic = client_new_node.economic - staking_address, delegate_address, ben_address = create_staking_dif_ben(client_new_node, reward) - - economic.wait_settlement(node) - result = client_new_node.delegate.delegate(0, delegate_address) - assert_code(result, 0) - - economic.wait_settlement(node) - block_reward, staking_reward = economic.get_current_year_reward(node) - switch_block = calculate_switch_block(node, economic) - start_balance = node.eth.getBalance(ben_address, switch_block) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - result = client_new_node.staking.edit_candidate(staking_address, ben_address, reward_per=update_reward) - assert_code(result, 0) - result = client_new_node.delegate.withdrew_delegate(candidate_info["Ret"]["StakingBlockNum"], delegate_address) - assert_code(result, 0) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_next_reward_per(candidate_info, update_reward) - - economic.wait_settlement(node) - block_num = economic.get_number_blocks_in_interval(node) - total_reward, delegate_reward = calculate_reward(block_reward, staking_reward, block_num, 0) - end_balance = node.eth.getBalance(ben_address, switch_block + economic.settlement_size) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0, calculate_pool_balance(node, economic)) - assert end_balance - start_balance >= total_reward - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - switch_block = calculate_switch_block(node, economic) - assert node.eth.getBalance(node.web3.delegateRewardAddress, switch_block) == 0 - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0, calculate_pool_balance(node, economic)) - end_balance_two = node.eth.getBalance(ben_address, switch_block) - block_num = economic.get_number_blocks_in_interval(node) - total_reward, delegate_reward = calculate_reward(block_reward, staking_reward, block_num, update_reward) - assert end_balance_two - end_balance == total_reward - - -@pytest.mark.P2 -def test_DG_TR_013_2(client_new_node, reset_environment): - """ - Adjust the dividend ratio after redeeming all commissions to verify the dividend pool and node income - :param client_new_node: - :return: - """ - reward = 1000 - update_reward = 2000 - node = client_new_node.node - economic = client_new_node.economic - staking_address, delegate_address, ben_address = create_staking_dif_ben(client_new_node, reward) - result = client_new_node.delegate.delegate(0, delegate_address) - assert_code(result, 0) - - economic.wait_settlement(node) - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - block_num = economic.get_number_blocks_in_interval(node) - total_reward, delegate_reward_one = calculate_reward(block_reward, staking_reward, block_num, reward) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, calculate_pool_balance(node, economic), delegate_reward_one) - switch_block = calculate_switch_block(node, economic) - start_balance = node.eth.getBalance(ben_address, switch_block) - result = client_new_node.delegate.withdrew_delegate(candidate_info["Ret"]["StakingBlockNum"], delegate_address) - assert_code(result, 0) - result = client_new_node.staking.edit_candidate(staking_address, ben_address, reward_per=update_reward) - assert_code(result, 0) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_next_reward_per(candidate_info, update_reward) - block_reward, staking_reward = economic.get_current_year_reward(node) - # balance_pool = int(Decimal(str(calculate_pool_balance(node, economic))) % Decimal(str(10**10))) - - economic.wait_settlement(node) - switch_block = calculate_switch_block(node, economic) - block_num = economic.get_number_blocks_in_interval(node) - total_reward, delegate_reward_two = calculate_reward(block_reward, staking_reward, block_num, reward) - end_balance = node.eth.getBalance(ben_address, switch_block) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_reward_per(candidate_info, update_reward) - assert_reward_total(candidate_info, delegate_reward_one) - assert calculate_pool_balance(node, economic) == 0 - assert end_balance - start_balance >= total_reward - - -@pytest.mark.P2 -def test_DG_TR_014(client_new_node, reset_environment): - """ - Adjust the dividend ratio after receiving dividends to verify the dividend pool and node income - :param client_new_node: - :return: - """ - reward = 1000 - update_reward = 2000 - node = client_new_node.node - economic = client_new_node.economic - staking_address, delegate_address, ben_address = create_staking_dif_ben(client_new_node, reward) - result = client_new_node.delegate.delegate(0, delegate_address) - assert_code(result, 0) - - economic.wait_settlement(node) - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - block_num = economic.get_number_blocks_in_interval(node) - total_reward, delegate_reward_one = calculate_reward(block_reward, staking_reward, block_num, reward) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, calculate_pool_balance(node, economic), delegate_reward_one) - switch_block = calculate_switch_block(node, economic) - start_balance = node.eth.getBalance(ben_address, switch_block) - result = client_new_node.delegate.withdraw_delegate_reward(delegate_address) - assert_code(result, 0) - result = client_new_node.staking.edit_candidate(staking_address, ben_address, reward_per=update_reward) - assert_code(result, 0) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_next_reward_per(candidate_info, update_reward) - block_reward, staking_reward = economic.get_current_year_reward(node) - # balance_pool = int(Decimal(str(calculate_pool_balance(node, economic))) % Decimal(str(10**10))) - economic.wait_settlement(node) - switch_block = calculate_switch_block(node, economic) - block_num = economic.get_number_blocks_in_interval(node) - total_reward, delegate_reward_two = calculate_reward(block_reward, staking_reward, block_num, reward) - end_balance = node.eth.getBalance(ben_address, switch_block) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - total_delegate_reward = delegate_reward_two + delegate_reward_one - assert_reward_total(candidate_info, total_delegate_reward) - assert calculate_pool_balance(node, economic) == delegate_reward_two - assert end_balance - start_balance >= total_reward - delegate_reward_two - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - switch_block = calculate_switch_block(node, economic) - total_reward, delegate_reward_thr = calculate_reward(block_reward, staking_reward, block_num, update_reward) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, delegate_reward_one + delegate_reward_two + delegate_reward_thr) - assert calculate_pool_balance(node, economic) == delegate_reward_two + delegate_reward_thr - end_balance_two = node.eth.getBalance(ben_address, switch_block) - assert end_balance_two - end_balance == total_reward - delegate_reward_thr - - -@pytest.mark.P0 -def test_DG_TR_015(client_new_node, reset_environment): - """ - Verify that the dividend payout ratio of the node is set to 10000 ‱, verify the dividend payout pool and node revenue - :param client_new_node: - :param reset_environment: - :return: - """ - reward = 10000 - node = client_new_node.node - economic = client_new_node.economic - staking_address, delegate_address = create_staking(client_new_node, reward) - result = client_new_node.delegate.delegate(0, delegate_address) - assert_code(result, 0) - - economic.wait_settlement(node) - switch_block = calculate_switch_block(node, economic) - start_balance = node.eth.getBalance(staking_address, switch_block) - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - switch_block = calculate_switch_block(node, economic) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_reward_per(candidate_info, reward) - block_num = economic.get_number_blocks_in_interval(node) - total_reward, delegate_reward = calculate_reward(block_reward, staking_reward, block_num, reward) - delegate_info = node.ppos.getDelegateInfo(candidate_info["Ret"]["StakingBlockNum"], delegate_address, node.node_id) - assert delegate_info["Ret"]["CumulativeIncome"] == 0 - assert_reward_total(candidate_info, delegate_reward, total_reward, calculate_pool_balance(node, economic)) - end_balance = node.eth.getBalance(staking_address, switch_block) - assert end_balance - start_balance == 0 - - -@pytest.mark.P0 -def test_DG_TR_016(client_new_node, reset_environment): - """ - Verify the adjustment of the dividend ratio of the nodes, verify the dividend pool and node revenue - :param client_new_node: - :return: - """ - delegate_node_client = client_new_node - reward = 1000 - update_reward = 1500 - node = delegate_node_client.node - economic = delegate_node_client.economic - staking_address, delegate_address, ben_address = create_staking_dif_ben(delegate_node_client, reward=reward) - result = delegate_node_client.delegate.delegate(0, delegate_address) - assert_code(result, 0) - economic.wait_settlement(node, 1) - switch_block = calculate_switch_block(node, economic) - start_balance = node.eth.getBalance(ben_address, switch_block) - block_reward, staking_reward = economic.get_current_year_reward(node) - result = delegate_node_client.staking.edit_candidate(staking_address, ben_address, reward_per=update_reward) - assert_code(result, 0) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - assert_reward_per(candidate_info, reward) - assert_next_reward_per(candidate_info, update_reward) - - economic.wait_settlement(node) - - block_num = economic.get_number_blocks_in_interval(node) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - total_reward_one, delegate_reward_one = calculate_reward(block_reward, staking_reward, block_num, reward) - assert_reward_total(candidate_info, von_amount(delegate_reward_one, 2), calculate_pool_balance(node, economic)) - assert_reward_per(candidate_info, update_reward) - switch_block = calculate_switch_block(node, economic) - end_balance_one = node.eth.getBalance(ben_address, switch_block) - assert end_balance_one - start_balance >= total_reward_one - delegate_reward_one - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - time.sleep(5) - switch_block = calculate_switch_block(node, economic) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - assert candidate_info["Ret"]["RewardPer"] == update_reward - block_num = economic.get_number_blocks_in_interval(node) - total_reward_two, delegate_reward_two = calculate_reward(block_reward, staking_reward, block_num, update_reward) - assert_reward_total(candidate_info, von_amount(delegate_reward_one, 2) + delegate_reward_two, calculate_pool_balance(node, economic)) - end_balance_two = node.eth.getBalance(ben_address, switch_block) - assert end_balance_two - end_balance_one == total_reward_two - delegate_reward_two - - -@pytest.mark.P2 -def test_DG_TR_017(delegate_node_client): - """ - When the verification node has a commission, exit and re-pledge - :param delegate_node_client: - :return: - """ - reward = 2000 - node = delegate_node_client.node - economic = delegate_node_client.economic - - economic.wait_settlement(node) - delegate_node_client.staking.withdrew_staking(delegate_node_client.staking_address) - - economic.wait_settlement(node, 2) - staking_address, delegate_address = create_staking(delegate_node_client, reward) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - assert_reward_per(candidate_info, reward) - assert_next_reward_per(candidate_info, reward) - result = delegate_node_client.delegate.delegate(0, delegate_address) - assert_code(result, 0) - - economic.wait_settlement(node) - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - delegate_reward = economic.calculate_delegate_reward(node, block_reward, staking_reward) - assert_reward_total(candidate_info, delegate_reward) - - -@pytest.mark.P2 -def test_DG_TR_018(delegate_node_client): - """ - After the entrusted node is punished by double signing, verify the total entrusted reward generated by the current node - :param delegate_node_client: - :return: - """ - node = delegate_node_client.node - economic = delegate_node_client.economic - - economic.wait_settlement(node) - switch_block = calculate_switch_block(node, economic) - start_balance = node.eth.getBalance(delegate_node_client.staking_address, switch_block) - block_reward, staking_reward = economic.get_current_year_reward(node) - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1, "ether")) - for i in range(economic.consensus_wheel): - verfiers = get_pledge_list(node.ppos.getValidatorList) - if node.node_id in verfiers: - break - economic.wait_consensus(node) - else: - assert False, "node cannot enter consensus round" - data = mock_duplicate_sign(1, node.nodekey, node.blsprikey, node.block_number) - result = delegate_node_client.duplicatesign.reportDuplicateSign(1, data, report_address) - assert_code(result, 0) - result = get_pledge_list(node.ppos.getVerifierList) - assert node.node_id not in result - - economic.wait_settlement(node) - switch_block = calculate_switch_block(node, economic) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0, calculate_pool_balance(node, economic)) - block_num = economic.get_number_blocks_in_interval(node) - end_balance = node.eth.getBalance(delegate_node_client.staking_address, switch_block) - total_reward, delegate_reward = calculate_reward(block_reward, staking_reward, block_num, 0) - assert end_balance - start_balance == total_reward - staking_reward - - -@pytest.mark.P2 -def test_DG_TR_018_2(delegate_node_client, reset_environment): - """ - After the entrusted node is punished by double signing, verify the total entrusted reward generated by the current node - :param delegate_node_client: - :return: - """ - node = delegate_node_client.node - economic = delegate_node_client.economic - - economic.wait_settlement(node) - start_balance = get_ben_balance(node, economic, delegate_node_client.staking_address) - block_reward_1, staking_reward_1 = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - block_reward_2, staking_reward_2 = economic.get_current_year_reward(node) - block_num = economic.get_number_blocks_in_interval(node) - total_reward_one, delegate_reward_one = calculate_reward(block_reward_1, staking_reward_1, block_num, delegate_node_client.reward) - delegate_reward_one = economic.calculate_delegate_reward(node, block_reward_1, staking_reward_1, delegate_node_client.reward) - report_address, _ = economic.account.generate_account(node.web3, node.web3.toWei(1, "ether")) - - for i in range(economic.consensus_wheel): - verfiers = get_pledge_list(node.ppos.getValidatorList) - if node.node_id in verfiers: - break - economic.wait_consensus(node) - else: - assert False, "node cannot enter consensus round" - data = mock_duplicate_sign(1, node.nodekey, node.blsprikey, node.block_number) - result = delegate_node_client.duplicatesign.reportDuplicateSign(1, data, report_address) - assert_code(result, 0) - result = get_pledge_list(node.ppos.getVerifierList) - assert node.node_id not in result - - economic.wait_settlement(node) - switch_block = calculate_switch_block(node, economic) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, delegate_reward_one, calculate_pool_balance(node, economic)) - block_num_2 = economic.get_number_blocks_in_interval(node) - end_balance = node.eth.getBalance(delegate_node_client.staking_address, switch_block) - total_reward_2, delegate_reward_2 = calculate_reward(block_reward_2, staking_reward_2, block_num_2, 0) - total = total_reward_one + total_reward_2 - delegate_reward_one - staking_reward_2 - assert end_balance - start_balance == total - - -@pytest.mark.P2 -def test_DG_TR_019(client_new_node, reset_environment): - """ - After the commissioning node exits, verify the total commissioning rewards generated by the current node - :param client_new_node: - :return: - """ - reward = 1000 - node = client_new_node.node - economic = client_new_node.economic - staking_address, delegate_address, ben_address = create_staking_dif_ben(client_new_node, reward) - result = client_new_node.delegate.delegate(0, delegate_address) - assert_code(result, 0) - - economic.wait_settlement(node) - switch_block = calculate_switch_block(node, economic) - start_balance = node.eth.getBalance(ben_address, switch_block) - client_new_node.staking.withdrew_staking(staking_address) - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - end_balance = node.eth.getBalance(ben_address, switch_block + economic.settlement_size) - block_num = economic.get_number_blocks_in_interval(node) - total_reward, delegate_reward = calculate_reward(block_reward, staking_reward, block_num, reward) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, delegate_reward, calculate_pool_balance(node, economic)) - assert end_balance - start_balance == total_reward - delegate_reward - - -@pytest.mark.P1 -def test_DG_TR_020(delegate_node_client): - """ - Redeem part of the commission and verify the total commission rewards generated by the current node - :param delegate_node_client: - :return: - """ - node = delegate_node_client.node - economic = delegate_node_client.economic - - economic.wait_settlement(node) - block_reward, staking_reward = economic.get_current_year_reward(node) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - delegate_node_client.delegate.withdrew_delegate(candidate_info["Ret"]["StakingBlockNum"], - delegate_node_client.delegate_address, amount=delegate_node_client.economic.add_staking_limit) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0, calculate_pool_balance(node, economic)) - - economic.wait_settlement(node) - block_num = economic.get_number_blocks_in_interval(node) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - total_reward, delegate_reward = calculate_reward(block_reward, staking_reward, block_num, delegate_node_client.reward) - assert_reward_total(candidate_info, delegate_reward, calculate_pool_balance(node, economic)) - - -@pytest.mark.P1 -def test_DG_TR_021(delegate_node_client): - """ - Redeem all commissions and verify the total commission rewards generated by the current node - :param delegate_node_client: - :return: - """ - node = delegate_node_client.node - economic = delegate_node_client.economic - - economic.wait_settlement(node) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - delegate_node_client.delegate.withdrew_delegate(candidate_info["Ret"]["StakingBlockNum"], - delegate_node_client.delegate_address, - amount=delegate_node_client.economic.add_staking_limit * 2) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0, calculate_pool_balance(node, economic)) - - economic.wait_settlement(node) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0, calculate_pool_balance(node, economic)) - - -@pytest.mark.P1 -def test_DG_TR_022(delegate_node_client): - """ - Nodes have been commissioned multiple times to verify the total commission rewards generated by the current node (same settlement period) - :param delegate_node_client: - :return: - """ - node = delegate_node_client.node - economic = delegate_node_client.economic - result = delegate_node_client.delegate.delegate(0, delegate_node_client.delegate_address) - assert_code(result, 0) - - economic.wait_settlement(node) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0, calculate_pool_balance(node, economic)) - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - delegate_reward = economic.calculate_delegate_reward(node, block_reward, staking_reward) - assert_reward_total(candidate_info, delegate_reward, calculate_pool_balance(node, economic)) - - -@pytest.mark.P1 -def test_DG_TR_023(delegate_node_client): - """ - Nodes have been commissioned multiple times to verify the total commission rewards generated by the current node (across settlement periods) - :param delegate_node_client: - :return: - """ - node = delegate_node_client.node - economic = delegate_node_client.economic - - economic.wait_settlement(node) - block_reward, staking_reward = economic.get_current_year_reward(node) - result = delegate_node_client.delegate.delegate(0, delegate_node_client.delegate_address) - assert_code(result, 0) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, 0, calculate_pool_balance(node, economic)) - - economic.wait_settlement(node) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - reward_total_one = economic.calculate_delegate_reward(node, block_reward, staking_reward) - assert_reward_total(candidate_info, reward_total_one, calculate_pool_balance(node, economic)) - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - candidate_info = delegate_node_client.ppos.getCandidateInfo(node.node_id) - reward_total_two = economic.calculate_delegate_reward(node, block_reward, staking_reward) - assert_reward_total(candidate_info, reward_total_one + reward_total_two, calculate_pool_balance(node, economic)) - - -@pytest.mark.P2 -def test_DG_TR_024(client_new_node, reset_environment): - """ - Nodes are commissioned by multiple accounts to verify the total commission rewards generated by the current node (same settlement period) - :return: - """ - reward = 1000 - node = client_new_node.node - economic = client_new_node.economic - create_staking(client_new_node, reward) - delegate_address_1, _ = economic.account.generate_account(node.web3, economic.delegate_limit * 4) - delegate_address_2, _ = economic.account.generate_account(node.web3, economic.delegate_limit * 4) - result = client_new_node.delegate.delegate(0, delegate_address_1) - assert_code(result, 0) - result = client_new_node.delegate.delegate(0, delegate_address_2) - assert_code(result, 0) - - economic.wait_settlement(node) - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - reward_total = economic.calculate_delegate_reward(node, block_reward, staking_reward) - assert_reward_total(candidate_info, reward_total, calculate_pool_balance(node, economic)) - - -@pytest.mark.P2 -def test_DG_TR_025(client_new_node, reset_environment): - """ - Nodes are commissioned by multiple accounts to verify the total commission rewards generated by the current node (across settlement periods) - :return: - """ - reward = 1000 - node = client_new_node.node - economic = client_new_node.economic - create_staking(client_new_node, reward) - delegate_address_1, _ = economic.account.generate_account(node.web3, economic.delegate_limit * 4) - delegate_address_2, _ = economic.account.generate_account(node.web3, economic.delegate_limit * 4) - result = client_new_node.delegate.delegate(0, delegate_address_1) - assert_code(result, 0) - result = client_new_node.delegate.delegate(0, delegate_address_2) - assert_code(result, 0) - - economic.wait_settlement(node) - block_reward, staking_reward = economic.get_current_year_reward(node) - result = client_new_node.delegate.delegate(0, delegate_address_1) - assert_code(result, 0) - result = client_new_node.delegate.delegate(0, delegate_address_2) - assert_code(result, 0) - - economic.wait_settlement(node) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - reward_total_one = economic.calculate_delegate_reward(node, block_reward, staking_reward) - assert_reward_total(candidate_info, reward_total_one, calculate_pool_balance(node, economic)) - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - candidate_info = client_new_node.ppos.getCandidateInfo(node.node_id) - reward_total_two = economic.calculate_delegate_reward(node, block_reward, staking_reward) - assert_reward_total(candidate_info, reward_total_one + reward_total_two, calculate_pool_balance(node, economic)) - - -@pytest.mark.P2 -def test_DG_TR_026(clients_noconsensus, reset_environment): - """ - Entrust multiple verification nodes to verify the total entrusted rewards generated by the current node (same settlement period) - :return: - """ - client_1 = clients_noconsensus[0] - client_2 = clients_noconsensus[1] - reward_1 = 1000 - reward_2 = 2000 - node_1 = client_1.node - node_2 = client_2.node - economic_1 = client_1.economic - economic_2 = client_2.economic - create_staking(client_1, reward_1) - time.sleep(2) - create_staking(client_2, reward_2) - delegate_address_1, _ = economic_1.account.generate_account(node_1.web3, economic_1.delegate_limit * 4) - result = client_1.delegate.delegate(0, delegate_address_1) - assert_code(result, 0) - result = client_1.delegate.delegate(0, delegate_address_1, node_id=node_2.node_id) - assert_code(result, 0) - - economic_1.wait_settlement(node_1) - block_reward, staking_reward = economic_1.get_current_year_reward(node_1) - - economic_1.wait_settlement(node_1) - candidate_info_1 = client_1.ppos.getCandidateInfo(node_1.node_id) - reward_total_1 = economic_1.calculate_delegate_reward(node_1, block_reward, staking_reward) - assert_reward_total(candidate_info_1, reward_total_1) - reward_total_2 = economic_2.calculate_delegate_reward(node_2, block_reward, staking_reward) - candidate_info_2 = client_2.ppos.getCandidateInfo(node_2.node_id) - assert_reward_total(candidate_info_2, reward_total_2) - assert calculate_pool_balance(node_1, economic_1) == reward_total_1 + reward_total_2 - - -@pytest.mark.P2 -def test_DG_TR_027(clients_noconsensus, reset_environment): - """ - Delegate multiple verification nodes to verify the total entrusted rewards generated by the current node (cross settlement period) - :return: - """ - client_1 = clients_noconsensus[0] - client_2 = clients_noconsensus[1] - reward_1 = 1000 - reward_2 = 2000 - node_1 = client_1.node - node_2 = client_2.node - economic_1 = client_1.economic - economic_2 = client_2.economic - create_staking(client_1, reward_1) - time.sleep(2) - create_staking(client_2, reward_2) - delegate_address_1, _ = economic_1.account.generate_account(node_1.web3, economic_1.delegate_limit * 6) - result = client_1.delegate.delegate(0, delegate_address_1) - assert_code(result, 0) - result = client_1.delegate.delegate(0, delegate_address_1, node_id=node_2.node_id) - assert_code(result, 0) - - economic_1.wait_settlement(node_1) - block_reward, staking_reward = economic_1.get_current_year_reward(node_1) - result = client_1.delegate.delegate(0, delegate_address_1) - assert_code(result, 0) - result = client_1.delegate.delegate(0, delegate_address_1, node_id=node_2.node_id) - assert_code(result, 0) - - economic_1.wait_settlement(node_1) - candidate_info_1 = client_1.ppos.getCandidateInfo(node_1.node_id) - reward_total_1_one = economic_1.calculate_delegate_reward(node_1, block_reward, staking_reward) - assert candidate_info_1["Ret"]["DelegateRewardTotal"] == reward_total_1_one - reward_total_2_one = economic_2.calculate_delegate_reward(node_2, block_reward, staking_reward) - candidate_info_2 = client_2.ppos.getCandidateInfo(node_2.node_id) - assert candidate_info_2["Ret"]["DelegateRewardTotal"] == reward_total_2_one - block_reward, staking_reward = economic_1.get_current_year_reward(node_1) - assert calculate_pool_balance(node_1, economic_1) == reward_total_1_one + reward_total_2_one - - economic_1.wait_settlement(node_1) - candidate_info_1 = client_1.ppos.getCandidateInfo(node_1.node_id) - reward_total_1_two = economic_1.calculate_delegate_reward(node_1, block_reward, staking_reward) - assert candidate_info_1["Ret"]["DelegateRewardTotal"] == reward_total_1_one + reward_total_1_two - reward_total_2_two = economic_2.calculate_delegate_reward(node_2, block_reward, staking_reward) - candidate_info_2 = client_2.ppos.getCandidateInfo(node_2.node_id) - assert candidate_info_2["Ret"]["DelegateRewardTotal"] == reward_total_2_one + reward_total_2_two - assert calculate_pool_balance(node_1, economic_1) == reward_total_1_one + reward_total_1_two + reward_total_2_one + reward_total_2_two - - -@pytest.mark.P2 -def test_DG_TR_028(clients_noconsensus, reset_environment): - """ - Multiple accounts commission multiple nodes to verify the total commission rewards generated by the current node (same settlement period) - :return: - """ - client_1 = clients_noconsensus[0] - client_2 = clients_noconsensus[1] - reward_1 = 1000 - reward_2 = 2000 - node_1 = client_1.node - node_2 = client_2.node - economic_1 = client_1.economic - economic_2 = client_2.economic - create_staking(client_1, reward_1) - time.sleep(2) - create_staking(client_2, reward_2) - delegate_address_1, _ = economic_1.account.generate_account(node_1.web3, economic_1.delegate_limit * 4) - delegate_address_2, _ = economic_1.account.generate_account(node_1.web3, economic_1.delegate_limit * 4) - result = client_1.delegate.delegate(0, delegate_address_1) - assert_code(result, 0) - result = client_1.delegate.delegate(0, delegate_address_1, node_id=node_2.node_id) - assert_code(result, 0) - result = client_1.delegate.delegate(0, delegate_address_2) - assert_code(result, 0) - result = client_1.delegate.delegate(0, delegate_address_2, node_id=node_2.node_id) - assert_code(result, 0) - - economic_1.wait_settlement(node_1) - block_reward, staking_reward = economic_1.get_current_year_reward(node_1) - - economic_1.wait_settlement(node_1) - candidate_info_1 = client_1.ppos.getCandidateInfo(node_1.node_id) - reward_total_1 = economic_1.calculate_delegate_reward(node_1, block_reward, staking_reward) - assert candidate_info_1["Ret"]["DelegateRewardTotal"] == reward_total_1 - reward_total_2 = economic_2.calculate_delegate_reward(node_2, block_reward, staking_reward) - candidate_info_2 = client_2.ppos.getCandidateInfo(node_2.node_id) - assert candidate_info_2["Ret"]["DelegateRewardTotal"] == reward_total_2 - assert calculate_pool_balance(node_1, economic_1) == reward_total_1 + reward_total_2 - - -@pytest.mark.P2 -def test_DG_TR_029(clients_noconsensus, reset_environment): - """ - Multiple accounts entrust multiple nodes to verify the total entrusted rewards generated by the current node (cross settlement period) - :return: - """ - client_1 = clients_noconsensus[0] - client_2 = clients_noconsensus[1] - reward_1 = 1000 - reward_2 = 2000 - node_1 = client_1.node - node_2 = client_2.node - economic_1 = client_1.economic - economic_2 = client_2.economic - create_staking(client_1, reward_1) - time.sleep(2) - create_staking(client_2, reward_2) - delegate_address_1, _ = economic_1.account.generate_account(node_1.web3, economic_1.delegate_limit * 4) - delegate_address_2, _ = economic_1.account.generate_account(node_1.web3, economic_1.delegate_limit * 4) - result = client_1.delegate.delegate(0, delegate_address_1) - assert_code(result, 0) - result = client_1.delegate.delegate(0, delegate_address_1, node_id=node_2.node_id) - assert_code(result, 0) - result = client_1.delegate.delegate(0, delegate_address_2) - assert_code(result, 0) - result = client_1.delegate.delegate(0, delegate_address_2, node_id=node_2.node_id) - assert_code(result, 0) - - economic_1.wait_settlement(node_1) - block_reward, staking_reward = economic_1.get_current_year_reward(node_1) - - economic_1.wait_settlement(node_1) - candidate_info_1 = client_1.ppos.getCandidateInfo(node_1.node_id) - reward_total_1 = economic_1.calculate_delegate_reward(node_1, block_reward, staking_reward) - assert candidate_info_1["Ret"]["DelegateRewardTotal"] == reward_total_1 - reward_total_2 = economic_2.calculate_delegate_reward(node_2, block_reward, staking_reward) - candidate_info_2 = client_2.ppos.getCandidateInfo(node_2.node_id) - assert candidate_info_2["Ret"]["DelegateRewardTotal"] == reward_total_2 - block_reward, staking_reward = economic_1.get_current_year_reward(node_1) - economic_1.wait_settlement(node_1) - candidate_info_1 = client_1.ppos.getCandidateInfo(node_1.node_id) - reward_total_1_2 = economic_1.calculate_delegate_reward(node_1, block_reward, staking_reward) - assert candidate_info_1["Ret"]["DelegateRewardTotal"] == reward_total_1 + reward_total_1_2 - reward_total_2_2 = economic_2.calculate_delegate_reward(node_2, block_reward, staking_reward) - candidate_info_2 = client_2.ppos.getCandidateInfo(node_2.node_id) - assert candidate_info_2["Ret"]["DelegateRewardTotal"] == reward_total_2 + reward_total_2_2 - assert calculate_pool_balance(node_1, economic_1) == reward_total_1 + reward_total_1_2 + reward_total_2 + reward_total_2_2 - - -@pytest.mark.P2 -# @pytest.mark.skip("Test case process is random and needs to be executed multiple times manually") -def test_DG_TR_030(clients_noconsensus, reset_environment): - """ - The current consensus round consensus node is not in the settlement cycle list, verifying the node's revenue - :return: - """ - client = clients_noconsensus[0] - client_2 = clients_noconsensus[1] - reward = 1000 - node = client.node - economic = client.economic - amount = calculate(client.economic.create_staking_limit, 5) - staking_amount = calculate(client.economic.create_staking_limit, 1) - staking_address, _ = client.economic.account.generate_account(node.web3, amount) - delegate_address, _ = client.economic.account.generate_account(node.web3, economic.add_staking_limit * 5) - ben_address, _ = client.economic.account.generate_account(node.web3, 0) - result = client.staking.create_staking(0, ben_address, staking_address, amount=staking_amount, reward_per=reward) - assert_code(result, 0) - result = client.delegate.delegate(0, delegate_address) - assert_code(result, 0) - economic.wait_settlement(node) - start_balance = get_ben_balance(node, economic, ben_address) - create_staking(client_2, reward) - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - verfiers = get_pledge_list(node.ppos.getValidatorList) - if node.node_id not in verfiers: - assert False, "Node 1 did not participate in the first consensus round" - - block_num = economic.get_number_blocks_in_interval(node) - end_balance = get_ben_balance(node, economic, ben_address) - total_reward, delegate_reward = calculate_reward(block_reward, staking_reward, block_num, reward) - candidate_info = node.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, delegate_reward) - assert end_balance - start_balance == total_reward - delegate_reward - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - candidate_info = node.ppos.getCandidateInfo(node.node_id) - assert_reward_total(candidate_info, delegate_reward) - block_num = economic.get_number_blocks_in_interval(node) - end_balance_two = get_ben_balance(node, economic, ben_address) - assert end_balance_two - end_balance == calculate(block_reward, block_num) - - -@pytest.mark.P1 -def test_DG_TR_031(client_new_node, reset_environment): - """ - 领取分红,查看质押节点信息委托总收益金额 - :param client_new_node: - :param reset_environment: - :return: - """ - reward = 1000 - node = client_new_node.node - economic = client_new_node.economic - create_staking(client_new_node, reward) - delegate_address_1, _ = economic.account.generate_account(node.web3, economic.delegate_limit * 4) - result = client_new_node.delegate.delegate(0, delegate_address_1) - assert_code(result, 0) - - economic.wait_settlement(node) - log.info("Current block height:{}".format(node.eth.blockNumber)) - block_reward, staking_reward = economic.get_current_year_reward(node) - - economic.wait_settlement(node) - log.info("Current block height:{}".format(node.eth.blockNumber)) - reward_total_one = economic.calculate_delegate_reward(node, block_reward, staking_reward) - candidate_info_1 = client_new_node.ppos.getCandidateInfo(node.node_id) - assert candidate_info_1["Ret"]["DelegateRewardTotal"] == reward_total_one - result = client_new_node.delegate.withdraw_delegate_reward(delegate_address_1) - assert_code(result, 0) - candidate_info_2 = client_new_node.ppos.getCandidateInfo(node.node_id) - assert candidate_info_2["Ret"]["DelegateRewardTotal"] == candidate_info_1["Ret"]["DelegateRewardTotal"] diff --git a/cases/tests/ppos/test_unlock_period.py b/cases/tests/ppos/test_unlock_period.py deleted file mode 100644 index eb2656cefc..0000000000 --- a/cases/tests/ppos/test_unlock_period.py +++ /dev/null @@ -1,829 +0,0 @@ -import time -import pytest -import allure -from dacite import from_dict -from common.key import get_pub_key, mock_duplicate_sign -from common.log import log -from alaya import Web3 -from decimal import Decimal -from tests.lib import EconomicConfig, Genesis, StakingConfig, Staking, check_node_in_list, assert_code, von_amount, \ - get_governable_parameter_value - - -def create_account_amount(client, amount1, amount2): - # create account1 - lock_address, _ = client.economic.account.generate_account(client.node.web3, amount1) - # create account2 - release_address, _ = client.economic.account.generate_account(client.node.web3, amount2) - return lock_address, release_address - - -def restricting_plan_validation_release(client, economic, node): - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create Restricting Plan - amount = economic.create_staking_limit - plan = [{'Epoch': 1, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - return address1 - - -def restricting_plan_validation_staking(client, economic, node): - # create restricting plan - address1 = restricting_plan_validation_release(client, economic, node) - # create staking - staking_amount = economic.create_staking_limit - result = client.staking.create_staking(1, address1, address1, amount=staking_amount) - assert_code(result, 0) - return address1 - - -@pytest.mark.P2 -@pytest.mark.compatibility -def test_UP_FV_001(client_new_node): - """ - 只有一个锁仓期,到达释放期返回解锁金额 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan - address1 = restricting_plan_validation_release(client, economic, node) - # view Account balance - balance = node.eth.getBalance(address1) - log.info("Account balance: {}".format(balance)) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # view Account balance again - balance1 = node.eth.getBalance(address1) - log.info("Account balance: {}".format(balance1)) - assert balance1 == balance + economic.create_staking_limit, "ErrMsg:Account balance: {}".format(balance1) - - -@pytest.mark.P1 -def test_UP_FV_002(client_new_node): - """ - 只有一个锁仓期,未达释放期返回解锁金额 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan - address1 = restricting_plan_validation_release(client, economic, node) - # view restricting plan index 0 amount - restricting_info = client.ppos.getRestrictingInfo(address1) - log.info("restricting plan information: {}".format(restricting_info)) - amount = restricting_info['Ret']['plans'][0]['amount'] - # view Account balance - balance = node.eth.getBalance(address1) - log.info("Account balance: {}".format(balance)) - # Waiting for the end of the settlement period - economic.wait_consensus(node) - # view restricting plan index 0 amount again - restricting_info = client.ppos.getRestrictingInfo(address1) - amount1 = restricting_info['Ret']['plans'][0]['amount'] - # view Account balance again - balance1 = node.eth.getBalance(address1) - log.info("Account balance: {}".format(balance1)) - assert amount1 == amount, "ErrMsg:restricting index 0 amount: {}".format(amount1) - assert balance1 == balance, "ErrMsg:Account balance: {}".format(balance1) - - -@pytest.mark.P1 -def test_UP_FV_003(client_new_node): - """ - 多个锁仓期,依次部分释放期返回解锁金额 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account - address1, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # create Restricting Plan - amount = economic.delegate_limit * 100 - plan = [{'Epoch': 1, 'Amount': amount}, {'Epoch': 2, 'Amount': amount}] - result = client.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - # view Restricting Plan again - restricting_info = client.ppos.getRestrictingInfo(address1) - log.info("restricting plan information: {}".format(restricting_info)) - assert len(restricting_info['Ret']['plans']) == 2, "ErrMsg:Planned releases: {}".format( - len(restricting_info['Ret']['plans'])) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # view Restricting Plan - restricting_info = client.ppos.getRestrictingInfo(address1) - log.info("restricting plan information: {}".format(restricting_info)) - assert len(restricting_info['Ret']['plans']) == 1, "ErrMsg:Planned releases: {}".format( - len(restricting_info['Ret']['plans'])) - - -@pytest.mark.P1 -def test_UP_FV_004(client_new_node): - """ - 锁仓账户申请质押到释放期后释放锁定金额不足 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan - address1 = restricting_plan_validation_release(client, economic, node) - # create staking - staking_amount = economic.create_staking_limit - result = client.staking.create_staking(1, address1, address1, amount=staking_amount) - assert_code(result, 0) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # view restricting plan - restricting_info = client.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == economic.create_staking_limit, 'ErrMsg: restricting debt amount {}'.format( - info['debt']) - - -@pytest.mark.P1 -def test_UP_FV_005(client_new_node): - """ - 到达释放期释放锁仓金额之后再申请退回质押金 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan and staking - address1 = restricting_plan_validation_staking(client, economic, node) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # Application for return of pledge - result = client.staking.withdrew_staking(address1) - assert_code(result, 0) - # view restricting plan - restricting_info = client.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == economic.create_staking_limit, 'ErrMsg: restricting debt amount {}'.format( - info['debt']) - # Waiting for the end of the settlement period - economic.wait_settlement(node, 2) - # view restricting plan again - restricting_info = client.ppos.getRestrictingInfo(address1) - assert_code(restricting_info, 304005) - - -@pytest.mark.P1 -def test_UP_FV_006(client_new_node): - """ - 多个锁仓期,质押一部分锁仓金额再依次释放 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account1 - address1, _ = client.economic.account.generate_account(client.node.web3, - von_amount(economic.create_staking_limit, 2)) - # create Restricting Plan - amount1 = economic.create_staking_limit - amount2 = economic.add_staking_limit * 100 - plan = [{'Epoch': 1, 'Amount': amount1}, {'Epoch': 2, 'Amount': amount2}] - result = client.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - # create staking - staking_amount = economic.create_staking_limit - result = client.staking.create_staking(1, address1, address1, amount=staking_amount) - assert_code(result, 0) - # view restricting plan - restricting_info = client.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # view restricting plan - restricting_info = client.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == amount1 - amount2, 'ErrMsg: restricting debt amount {}'.format( - info['debt']) - assert info['plans'][0]['amount'] == amount2, 'ErrMsg: restricting plans amount {}'.format( - info['plans'][0]['amount']) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # view restricting plan again - restricting_info = client.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == amount1, 'ErrMsg: restricting debt amount {}'.format( - info['debt']) - assert info['plans'] is None, 'ErrMsg: restricting plans'.format(info['plans']) - - -@pytest.mark.P1 -def test_UP_FV_007(client_new_node): - """ - 锁仓账户申请委托到释放期后释放锁定金额不足 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = von_amount(economic.create_staking_limit, 1) - address1, address2 = create_account_amount(client, amount1, amount2) - # create Restricting Plan - delegate_amount = economic.delegate_limit * 100 - plan = [{'Epoch': 1, 'Amount': delegate_amount}] - result = client.restricting.createRestrictingPlan(address2, plan, address2) - assert_code(result, 0) - # view restricting plan - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan informtion: {}".format(restricting_info)) - # create staking - result = client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - # Application for Commission - result = client.delegate.delegate(1, address2, amount=delegate_amount) - assert_code(result, 0) - # view restricting plan - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan informtion: {}".format(restricting_info)) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # view restricting plan - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == delegate_amount, 'ErrMsg: restricting debt amount {}'.format( - info['debt']) - - -@pytest.mark.P1 -def test_UP_FV_008(client_new_node): - """ - 到达释放期释放锁仓金额之后再申请赎回委托 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = von_amount(economic.create_staking_limit, 1) - address1, address2 = create_account_amount(client, amount1, amount2) - # create Restricting Plan - delegate_amount = economic.delegate_limit * 100 - plan = [{'Epoch': 1, 'Amount': delegate_amount}] - result = client.restricting.createRestrictingPlan(address2, plan, address2) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - # Application for Commission - result = client.delegate.delegate(1, address2, amount=delegate_amount) - assert_code(result, 0) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # view restricting plan - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == delegate_amount, 'ErrMsg: restricting debt amount {}'.format( - info['debt']) - # Access to pledge information - candidate_info = client.ppos.getCandidateInfo(node.node_id) - info = candidate_info['Ret'] - staking_blocknum = info['StakingBlockNum'] - # withdrew delegate - result = client.delegate.withdrew_delegate(staking_blocknum, address2, amount=delegate_amount) - assert_code(result, 0) - # view restricting plan - restricting_info = client.ppos.getRestrictingInfo(address1) - assert_code(restricting_info, 304005) - - -@pytest.mark.P1 -def test_UP_FV_009(clients_new_node): - """ - 锁仓账号申请质押,验证人违规被扣除节点自有质押金k - :param clients_new_node: - :return: - """ - client1 = clients_new_node[0] - client2 = clients_new_node[1] - economic = client1.economic - node = client1.node - # create restricting plan and staking - address1 = restricting_plan_validation_staking(client1, economic, node) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # Obtain block bonus and pledge bonus - block_reward, staking_reward = client1.economic.get_current_year_reward(node) - # Get penalty blocks - slash_blocks = get_governable_parameter_value(client1, 'slashBlocksReward') - # view restricting plan - restricting_info = client1.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == economic.create_staking_limit, 'ErrMsg: restricting debt amount {}'.format( - info['debt']) - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # stop node - client1.node.stop() - # Waiting for a 3 consensus round - client2.economic.wait_consensus(client2.node, 3) - log.info("Current block height: {}".format(client2.node.eth.blockNumber)) - # view verifier list - verifier_list = client2.ppos.getVerifierList() - log.info("verifier_list: {}".format(verifier_list)) - punishment_amonut = int(Decimal(str(block_reward)) * Decimal(str(slash_blocks))) - log.info("punishment_amonut: {}".format(punishment_amonut)) - # view restricting plan again - restricting_info = client2.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - if punishment_amonut < economic.create_staking_limit: - assert (info['balance'] == economic.create_staking_limit - punishment_amonut) or (info['balance'] == economic.create_staking_limit - punishment_amonut * 2), 'ErrMsg: restricting balance amount {}'.format( - info['balance']) - else: - assert_code(restricting_info, 304005) - - -@pytest.mark.P2 -def test_UP_FV_010(client_new_node, reset_environment): - """ - 锁仓验证人违规被剔除验证人列表,申请质押节点 - :param client_new_node: - :return: - """ - client1 = client_new_node - economic = client1.economic - node = client1.node - # create account - amount1 = von_amount(economic.create_staking_limit, 3) - amount2 = von_amount(economic.create_staking_limit, 1) - address1, report_address = create_account_amount(client1, amount1, amount2) - # create Restricting Plan - delegate_amount = von_amount(economic.create_staking_limit, 2) - plan = [{'Epoch': 3, 'Amount': delegate_amount}] - result = client1.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - # view restricting plan again - restricting_info = client1.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - # create staking - result = client1.staking.create_staking(1, address1, address1) - assert_code(result, 0) - # view restricting plan again - restricting_info = client1.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # - for i in range(4): - result = check_node_in_list(node.node_id, client1.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # view current block - current_block = node.eth.blockNumber - log.info("Current block: {}".format(current_block)) - # Report prepareblock signature - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, current_block) - log.info("Report information: {}".format(report_information)) - result = client1.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - time.sleep(3) - # create staking - result = client1.staking.create_staking(1, address1, address1) - assert_code(result, 301101) - break - else: - # wait consensus block - client1.economic.wait_consensus(node) - - -@pytest.mark.P2 -def test_UP_FV_011(client_new_node, reset_environment): - """ - 锁仓验证人违规被剔除验证人列表,申请委托节点 - :param client_new_node: - :return: - """ - client1 = client_new_node - economic = client1.economic - node = client1.node - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = von_amount(economic.create_staking_limit, 1) - address1, report_address = create_account_amount(client1, amount1, amount2) - # create Restricting Plan - delegate_amount = von_amount(economic.delegate_limit, 10) - plan = [{'Epoch': 3, 'Amount': delegate_amount}] - result = client1.restricting.createRestrictingPlan(report_address, plan, report_address) - assert_code(result, 0) - # create staking - result = client1.staking.create_staking(0, address1, address1) - assert_code(result, 0) - # Application for Commission - result = client1.delegate.delegate(1, report_address) - assert_code(result, 0) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # - for i in range(4): - result = check_node_in_list(node.node_id, client1.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # view current block - current_block = node.eth.blockNumber - log.info("Current block: {}".format(current_block)) - # Report prepareblock signature - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, current_block) - log.info("Report information: {}".format(report_information)) - result = client1.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - time.sleep(3) - # Application for Commission - result = client1.delegate.delegate(1, report_address) - assert_code(result, 301103) - break - else: - # wait consensus block - client1.economic.wait_consensus(node) - - -@pytest.mark.P2 -def test_UP_FV_012(client_new_node, reset_environment): - """ - 锁仓验证人违规被剔除验证人列表,申请增持质押 - :param client_new_node: - :return: - """ - client1 = client_new_node - economic = client1.economic - node = client1.node - # create account - amount1 = von_amount(economic.create_staking_limit, 3) - amount2 = von_amount(economic.create_staking_limit, 1) - address1, report_address = create_account_amount(client1, amount1, amount2) - # create Restricting Plan - staking_amount = von_amount(economic.create_staking_limit, 2) - plan = [{'Epoch': 3, 'Amount': staking_amount}] - result = client1.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - # create staking - result = client1.staking.create_staking(1, address1, address1) - assert_code(result, 0) - # Apply for additional pledge - result = client1.staking.increase_staking(1, address1) - assert_code(result, 0) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # - for i in range(4): - result = check_node_in_list(node.node_id, client1.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # view current block - current_block = node.eth.blockNumber - log.info("Current block: {}".format(current_block)) - # Report prepareblock signature - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, current_block) - log.info("Report information: {}".format(report_information)) - result = client1.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - time.sleep(3) - # Apply for additional pledge - result = client1.staking.increase_staking(1, address1) - assert_code(result, 301103) - break - else: - # wait consensus block - client1.economic.wait_consensus(node) - - -@pytest.mark.P2 -def test_UP_FV_013(client_new_node, reset_environment): - """ - 锁仓验证人违规被剔除验证人列表,申请退回质押金 - :param client_new_node: - :return: - """ - client1 = client_new_node - economic = client1.economic - node = client1.node - # create account - amount1 = von_amount(economic.create_staking_limit, 3) - amount2 = von_amount(economic.create_staking_limit, 1) - address1, report_address = create_account_amount(client1, amount1, amount2) - # create Restricting Plan - delegate_amount = von_amount(economic.create_staking_limit, 2) - plan = [{'Epoch': 3, 'Amount': delegate_amount}] - result = client1.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - # view restricting plan again - restricting_info = client1.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - # create staking - result = client1.staking.create_staking(1, address1, address1) - assert_code(result, 0) - # view restricting plan again - restricting_info = client1.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # - for i in range(4): - result = check_node_in_list(node.node_id, client1.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # view current block - current_block = node.eth.blockNumber - log.info("Current block: {}".format(current_block)) - # Report prepareblock signature - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, current_block) - log.info("Report information: {}".format(report_information)) - result = client1.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - time.sleep(3) - # withdrew staking - result = client1.staking.withdrew_staking(address1) - assert_code(result, 301103) - break - else: - # wait consensus block - client1.economic.wait_consensus(node) - - -@pytest.mark.P2 -def test_UP_FV_014(client_new_node, reset_environment): - """ - 锁仓验证人违规被剔除验证人列表,申请赎回委托金 - :param client_new_node: - :param reset_environment: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = von_amount(economic.create_staking_limit, 1) - address1, report_address = create_account_amount(client, amount1, amount2) - # create Restricting Plan - delegate_amount = von_amount(economic.delegate_limit, 10) - plan = [{'Epoch': 3, 'Amount': delegate_amount}] - result = client.restricting.createRestrictingPlan(report_address, plan, report_address) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - # Application for Commission - result = client.delegate.delegate(1, report_address) - assert_code(result, 0) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # - for i in range(4): - result = check_node_in_list(node.node_id, client.ppos.getValidatorList) - log.info("Current node in consensus list status:{}".format(result)) - if result: - # view current block - current_block = node.eth.blockNumber - log.info("Current block: {}".format(current_block)) - # Report prepareblock signature - report_information = mock_duplicate_sign(1, node.nodekey, node.blsprikey, current_block) - log.info("Report information: {}".format(report_information)) - result = client.duplicatesign.reportDuplicateSign(1, report_information, report_address) - assert_code(result, 0) - time.sleep(3) - # Access to pledge information - candidate_info = client.ppos.getCandidateInfo(node.node_id) - info = candidate_info['Ret'] - staking_blocknum = info['StakingBlockNum'] - # withdrew delegate - result = client.delegate.withdrew_delegate(staking_blocknum, report_address) - assert_code(result, 0) - break - else: - # wait consensus block - client.economic.wait_consensus(node) - - -@pytest.mark.P2 -def test_UP_FV_015(client_new_node): - """ - 锁仓账户申请之后到达释放期,账户锁仓不足再新增新的锁仓计划 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create restricting plan and staking - address1 = restricting_plan_validation_staking(client, economic, node) - # create account2 - address2, _ = economic.account.generate_account(node.web3, von_amount(economic.create_staking_limit, 2)) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # view restricting plan - restricting_info = client.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == economic.create_staking_limit, 'ErrMsg: restricting debt amount {}'.format( - info['debt']) - # create Restricting Plan - delegate_amount = von_amount(economic.create_staking_limit, 1) - plan = [{'Epoch': 1, 'Amount': delegate_amount}] - result = client.restricting.createRestrictingPlan(address1, plan, address2) - assert_code(result, 0) - # view restricting plan - restricting_info = client.ppos.getRestrictingInfo(address1) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == 0, 'ErrMsg: restricting debt amount {}'.format(info['debt']) - - -@pytest.mark.P1 -def test_UP_FV_016(client_new_node): - """ - 自由资金质押,锁仓再增持 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = von_amount(economic.create_staking_limit, 1) - address1, address2 = create_account_amount(client, amount1, amount2) - # create Restricting Plan - delegate_amount = economic.add_staking_limit * 100 - plan = [{'Epoch': 3, 'Amount': delegate_amount}] - result = client.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - # Apply for additional pledge - result = client.staking.increase_staking(1, address1) - assert_code(result, 0) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # Apply for additional pledge - result = client.staking.increase_staking(1, address1) - assert_code(result, 0) - - -@pytest.mark.P1 -def test_UP_FV_017(client_new_node): - """ - 锁仓账户质押,自由资金再增持 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = von_amount(economic.create_staking_limit, 1) - address1, address2 = create_account_amount(client, amount1, amount2) - # create Restricting Plan - delegate_amount = von_amount(economic.create_staking_limit, 1) - plan = [{'Epoch': 3, 'Amount': delegate_amount}] - result = client.restricting.createRestrictingPlan(address1, plan, address1) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(1, address1, address1) - assert_code(result, 0) - # Apply for additional pledge - result = client.staking.increase_staking(0, address1) - assert_code(result, 0) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # Apply for additional pledge - result = client.staking.increase_staking(0, address1) - assert_code(result, 0) - - -@pytest.mark.P1 -def test_UP_FV_018(client_new_node): - """ - 账户自由金额和锁仓金额申请委托同一个验证人,再申请赎回 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account - amount1 = von_amount(economic.create_staking_limit, 2) - amount2 = von_amount(economic.create_staking_limit, 1) - address1, address2 = create_account_amount(client, amount1, amount2) - # create Restricting Plan - delegate_amount = economic.delegate_limit * 100 - plan = [{'Epoch': 1, 'Amount': delegate_amount}] - result = client.restricting.createRestrictingPlan(address2, plan, address2) - assert_code(result, 0) - # create staking - result = client.staking.create_staking(0, address1, address1) - assert_code(result, 0) - # Lock in amount Application for delegate - result = client.delegate.delegate(1, address2, amount=delegate_amount) - assert_code(result, 0) - # Free amount Application for delegate - result = client.delegate.delegate(0, address2, amount=delegate_amount) - assert_code(result, 0) - # Waiting for the end of the settlement period - economic.wait_settlement(node) - # Access to pledge information - candidate_info = client.ppos.getCandidateInfo(node.node_id) - info = candidate_info['Ret'] - staking_blocknum = info['StakingBlockNum'] - # withdrew delegate - withdrew_amount = von_amount(economic.delegate_limit, 150) - result = client.delegate.withdrew_delegate(staking_blocknum, address2, amount=withdrew_amount) - assert_code(result, 0) - # view restricting plan - restricting_info = client.ppos.getRestrictingInfo(address2) - log.info("restricting plan informtion: {}".format(restricting_info)) - info = restricting_info['Ret'] - assert info['debt'] == von_amount(economic.delegate_limit, 50), 'ErrMsg: restricting debt amount {}'.format(info['debt']) - - -@pytest.mark.P1 -def test_UP_FV_019(client_new_node): - """ - 账户自由金额和锁仓金额申请委托同一个验证人,再申请赎回 - :param client_new_node: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - # create account - amount = economic.create_staking_limit - first_address, second_address = create_account_amount(client, amount, amount) - delegate_amount = economic.delegate_limit * 100 - plan = [{'Epoch': 2, 'Amount': delegate_amount}] - - # create Restricting Plan1 - result = client.restricting.createRestrictingPlan(first_address, plan, first_address) - assert_code(result, 0) - economic.wait_settlement(node) - log.info("Current block height:{}".format(node.eth.blockNumber)) - - # create Restricting Plan2 - first_balance1 = node.eth.getBalance(first_address) - log.info("first_balance1: {}".format(first_balance1)) - result = client.restricting.createRestrictingPlan(second_address, plan, second_address) - assert_code(result, 0) - - economic.wait_settlement(node) - log.info("Current block height:{}".format(node.eth.blockNumber)) - second_balance1 = node.eth.getBalance(second_address) - log.info("second_balance1: {}".format(second_balance1)) - restricting_info = client.ppos.getRestrictingInfo(first_address) - log.info("restricting plan1 informtion: {}".format(restricting_info)) - first_balance2 = node.eth.getBalance(first_address) - log.info("first_balance2: {}".format(first_balance2)) - assert first_balance2 == first_balance1 + delegate_amount - - economic.wait_settlement(node) - log.info("Current block height:{}".format(node.eth.blockNumber)) - restricting_info = client.ppos.getRestrictingInfo(second_address) - log.info("restricting plan2 informtion: {}".format(restricting_info)) - second_balance2 = node.eth.getBalance(second_address) - log.info("second_balance2: {}".format(second_balance2)) - assert second_balance2 == second_balance1 + delegate_amount - - -def test_dsas(client_new_node): - client = client_new_node - economic = client.economic - node = client.node - - # create account - amount = economic.create_staking_limit - first_address, second_address = create_account_amount(client, amount, 0) - plan = [{'Epoch': 2, 'Amount': economic.delegate_limit}] - - # create Restricting Plan1 - result = client.restricting.createRestrictingPlan(second_address, plan, first_address) - assert_code(result, 0) - result = node.ppos.getRestrictingInfo(second_address) - print(result) \ No newline at end of file diff --git a/cases/tests/ppos_2/__init__.py b/cases/tests/ppos_2/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/cases/tests/ppos_2/conftest.py b/cases/tests/ppos_2/conftest.py deleted file mode 100644 index d17a076306..0000000000 --- a/cases/tests/ppos_2/conftest.py +++ /dev/null @@ -1,81 +0,0 @@ -from decimal import Decimal -import pytest -from tests.lib.utils import assert_code - - -def calculate(big_int, mul): - return int(Decimal(str(big_int)) * Decimal(mul)) - - -@pytest.fixture() -def create_staking_client(client_new_node): - amount = calculate(client_new_node.economic.create_staking_limit, 5) - staking_amount = calculate(client_new_node.economic.create_staking_limit, 2) - staking_address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, amount) - delegate_address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - client_new_node.economic.add_staking_limit * 2) - client_new_node.staking.create_staking(0, staking_address, staking_address, amount=staking_amount) - setattr(client_new_node, "staking_address", staking_address) - setattr(client_new_node, "delegate_address", delegate_address) - setattr(client_new_node, "amount", amount) - setattr(client_new_node, "staking_amount", staking_amount) - yield client_new_node - - -@pytest.fixture() -def staking_delegate_client(client_new_node): - staking_amount = client_new_node.economic.create_staking_limit - delegate_amount = client_new_node.economic.add_staking_limit - staking_address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - staking_amount * 2) - delegate_address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - staking_amount * 2) - result = client_new_node.staking.create_staking(0, staking_address, staking_address) - assert_code(result, 0) - result = client_new_node.delegate.delegate(0, delegate_address, amount=delegate_amount * 2) - assert_code(result, 0) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - setattr(client_new_node, "staking_address", staking_address) - setattr(client_new_node, "delegate_address", delegate_address) - setattr(client_new_node, "delegate_amount", delegate_amount) - setattr(client_new_node, "staking_blocknum", staking_blocknum) - yield client_new_node - - -@pytest.fixture() -def free_locked_delegate_client(client_new_node): - staking_amount = client_new_node.economic.create_staking_limit - delegate_amount = client_new_node.economic.delegate_limit - staking_address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, staking_amount * 2) - delegate_address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, staking_amount) - result = client_new_node.staking.create_staking(0, staking_address, staking_address) - assert_code(result, 0) - result = client_new_node.delegate.delegate(0, delegate_address, amount=delegate_amount * 2) - assert_code(result, 0) - - lockup_amount = client_new_node.node.web3.toWei(50, "ether") - plan = [{'Epoch': 2, 'Amount': lockup_amount}] - # Create a lock plan - result = client_new_node.restricting.createRestrictingPlan(delegate_address, plan, delegate_address) - assert_code(result, 0) - result = client_new_node.delegate.delegate(1, delegate_address) - assert_code(result, 0) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - setattr(client_new_node, "staking_address", staking_address) - setattr(client_new_node, "delegate_address", delegate_address) - setattr(client_new_node, "delegate_amount", delegate_amount) - setattr(client_new_node, "staking_blocknum", staking_blocknum) - yield client_new_node - - -def check_receipt(node, hash, key, expected_result): - result = node.eth.waitForTransactionReceipt(hash) - if result["logs"] and key in result["logs"][0]: - value = result["logs"][0][key] - assert value == expected_result, "Value contrast error" - else: - assert result[key] == expected_result, "Value contrast error" - - diff --git a/cases/tests/ppos_2/test_calculate_gas.py b/cases/tests/ppos_2/test_calculate_gas.py deleted file mode 100644 index f0fbf2b250..0000000000 --- a/cases/tests/ppos_2/test_calculate_gas.py +++ /dev/null @@ -1,184 +0,0 @@ -from tests.lib.utils import * -import rlp -import pytest -from alaya.packages.platon_account.internal.transactions import bech32_address_bytes - - -@pytest.mark.P3 -def test_staking_gas(client_new_node): - external_id = "external_id" - node_name = "node_name" - website = "website" - details = "details" - node = client_new_node.node - economic = client_new_node.economic - benifit_address, pri_key = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - balance1 = node.eth.getBalance(benifit_address) - log.info(balance1) - program_version_sign_ = node.program_version_sign[2:] - result = client_new_node.ppos.createStaking(0, benifit_address, node.node_id, external_id, - node_name, website, - details, economic.create_staking_limit, - node.program_version, node.program_version_sign, node.blspubkey, - node.schnorr_NIZK_prove, - pri_key, reward_per=0) - - assert_code(result, 0) - - data = rlp.encode([rlp.encode(int(1000)), rlp.encode(0), rlp.encode(bech32_address_bytes(benifit_address)), - rlp.encode(bytes.fromhex(node.node_id)), rlp.encode(external_id), - rlp.encode(node_name), - rlp.encode(website), rlp.encode(details), - rlp.encode(economic.create_staking_limit), - rlp.encode(0), - rlp.encode(node.program_version), - rlp.encode(bytes.fromhex(program_version_sign_)), - rlp.encode(bytes.fromhex(node.blspubkey)), - rlp.encode(bytes.fromhex(node.schnorr_NIZK_prove))]) - esgas = node.eth.estimateGas({"from": benifit_address, "to": node.web3.stakingAddress, "data": data}) - print('esgas', esgas) - gas = get_the_dynamic_parameter_gas_fee(data) + 21000 + 6000 + 32000 - log.info('gas: {}'.format(gas)) - gasPrice = node.web3.platon.gasPrice - log.info(gasPrice) - time.sleep(2) - balance2 = node.eth.getBalance(benifit_address) - log.info(balance2) - assert esgas == gas - # assert (balance1 - economic.create_staking_limit) - gas * gasPrice == balance2 - - -@pytest.mark.P3 -def test_delegate_gas(client_new_node): - client = client_new_node - node = client.node - economic = client.economic - staking_address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - address, pri_key = economic.account.generate_account(node.web3, economic.delegate_limit * 10) - - result = client.staking.create_staking(0, staking_address, staking_address) - assert_code(result, 0) - balance1 = node.eth.getBalance(address) - log.info(balance1) - result = client.delegate.delegate(0, address) - assert_code(result, 0) - balance2 = node.eth.getBalance(address) - log.info(balance2) - data = rlp.encode([rlp.encode(int(1004)), rlp.encode(0), rlp.encode(bytes.fromhex(node.node_id)), - rlp.encode(economic.delegate_limit)]) - gas = get_the_dynamic_parameter_gas_fee(data) + 21000 + 6000 + 16000 - log.info(gas) - gasPrice = node.web3.platon.gasPrice - log.info(gasPrice) - assert balance1 - economic.delegate_limit - gas * gasPrice == balance2 - - -@pytest.mark.P3 -def test_withdrewDelegate_gas(client_new_node): - client = client_new_node - node = client.node - economic = client.economic - staking_address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - address, pri_key = economic.account.generate_account(node.web3, economic.delegate_limit * 10) - - result = client.staking.create_staking(0, staking_address, staking_address) - assert_code(result, 0) - result = client.delegate.delegate(0, address) - assert_code(result, 0) - msg = client.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - balance1 = node.eth.getBalance(address) - log.info(balance1) - result = client.delegate.withdrew_delegate(staking_blocknum, address) - assert_code(result, 0) - balance2 = node.eth.getBalance(address) - log.info(balance2) - - data = rlp.encode( - [rlp.encode(int(1005)), rlp.encode(staking_blocknum), rlp.encode(bytes.fromhex(node.node_id)), - rlp.encode(economic.delegate_limit)]) - gas = get_the_dynamic_parameter_gas_fee(data) + 21000 + 6000 + 8000 - log.info(gas) - gasPrice = node.web3.platon.gasPrice - log.info(gasPrice) - assert balance1 - gas * gasPrice == balance2 - economic.delegate_limit - - -@pytest.mark.P3 -def test_increase_staking_gas(client_new_node): - client = client_new_node - node = client.node - economic = client.economic - staking_address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - - result = client.staking.create_staking(0, staking_address, staking_address) - assert_code(result, 0) - balance1 = node.eth.getBalance(staking_address) - log.info(balance1) - result = client.staking.increase_staking(0, staking_address) - assert_code(result, 0) - balance2 = node.eth.getBalance(staking_address) - log.info(balance2) - data = rlp.encode( - [rlp.encode(int(1002)), rlp.encode(bytes.fromhex(node.node_id)), rlp.encode(0), - rlp.encode(economic.add_staking_limit)]) - gas = get_the_dynamic_parameter_gas_fee(data) + 21000 + 6000 + 20000 - log.info(gas) - gasPrice = node.web3.platon.gasPrice - log.info(gasPrice) - assert balance1 - economic.delegate_limit - gas * gasPrice == balance2 - - -@pytest.mark.P3 -def test_edit_candidate_gas(client_new_node): - external_id = "external_id" - node_name = "node_name" - website = "website" - details = "details" - client = client_new_node - node = client.node - economic = client.economic - benifit_address, pri_key = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - result = client.staking.create_staking(0, benifit_address, benifit_address) - assert_code(result, 0) - balance1 = node.eth.getBalance(benifit_address) - log.info(balance1) - result = client.ppos.editCandidate(benifit_address, node.node_id, external_id, node_name, website, details, - pri_key, reward_per=0) - assert_code(result, 0) - balance2 = node.eth.getBalance(benifit_address) - log.info(balance2) - data = rlp.encode( - [rlp.encode(int(1001)), rlp.encode(bech32_address_bytes(benifit_address)), - rlp.encode(bytes.fromhex(node.node_id)), - rlp.encode("external_id"), rlp.encode("node_name"), rlp.encode("website"), rlp.encode("details"), - rlp.encode(0)]) - gas = get_the_dynamic_parameter_gas_fee(data) + 21000 + 6000 + 12000 - log.info(gas) - - gasPrice = node.web3.platon.gasPrice - log.info(gasPrice) - assert balance1 - gas * gasPrice == balance2 - - -@pytest.mark.P3 -def test_withdrew_staking_gas(client_new_node): - client = client_new_node - node = client.node - economic = client.economic - staking_address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - - result = client.staking.create_staking(0, staking_address, staking_address) - assert_code(result, 0) - balance1 = node.eth.getBalance(staking_address) - log.info(balance1) - result = client.staking.withdrew_staking(staking_address) - assert_code(result, 0) - balance2 = node.eth.getBalance(staking_address) - log.info(balance2) - data = rlp.encode([rlp.encode(int(1003)), rlp.encode(bytes.fromhex(node.node_id))]) - gas = get_the_dynamic_parameter_gas_fee(data) + 21000 + 6000 + 20000 - log.info(gas) - gasPrice = node.web3.platon.gasPrice - log.info(gasPrice) - assert balance1 - gas * gasPrice == balance2 - economic.create_staking_limit diff --git a/cases/tests/ppos_2/test_check_topics.py b/cases/tests/ppos_2/test_check_topics.py deleted file mode 100644 index f8cec37b40..0000000000 --- a/cases/tests/ppos_2/test_check_topics.py +++ /dev/null @@ -1,137 +0,0 @@ -# -*- coding: utf-8 -*- -from tests.lib.utils import * -import pytest -from common.key import mock_duplicate_sign -from tests.ppos_2.conftest import check_receipt - - -@pytest.fixture() -def set_not_need_analyze(client_new_node): - client_new_node.ppos.need_analyze = False - yield client_new_node - client_new_node.ppos.need_analyze = True - - -@pytest.mark.P3 -def test_staking_receipt(set_not_need_analyze): - client = set_not_need_analyze - node = client.node - economic = client.economic - address, _ = client.economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - hash = client.staking.create_staking(0, address, address) - log.info(hash) - key = "topics" - expected_result = [] - check_receipt(node, hash, key, expected_result) - - -@pytest.mark.P3 -def test_delegate_receipt(set_not_need_analyze): - client = set_not_need_analyze - node = client.node - economic = client.economic - address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - address, pri_key = economic.account.generate_account(node.web3, economic.delegate_limit * 10) - hash = client.staking.create_staking(0, address, address) - node.eth.waitForTransactionReceipt(hash) - hash = client.delegate.delegate(0, address) - log.info(hash) - key = "topics" - expected_result = [] - check_receipt(node, hash, key, expected_result) - - -@pytest.mark.P3 -def test_withdrewDelegate_receipt(client_new_node): - client = client_new_node - node = client.node - economic = client.economic - staking_address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - delegate_address, pri_key = economic.account.generate_account(node.web3, economic.delegate_limit * 10) - client.ppos.need_analyze = True - client.staking.create_staking(0, staking_address, staking_address) - client.delegate.delegate(0, delegate_address) - msg = client.ppos.getCandidateInfo(node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - client.ppos.need_analyze = False - hash = client.delegate.withdrew_delegate(staking_blocknum, delegate_address) - key = "topics" - expected_result = [] - check_receipt(node, hash, key, expected_result) - client.ppos.need_analyze = True - - -@pytest.mark.P3 -def test_increase_staking_receipt(set_not_need_analyze): - client = set_not_need_analyze - node = client.node - economic = client.economic - address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - log.info(client.ppos.need_analyze) - - hash = client.staking.create_staking(0, address, address) - node.eth.waitForTransactionReceipt(hash) - hash = client.staking.increase_staking(0, address) - log.info(hash) - key = "topics" - expected_result = [] - check_receipt(node, hash, key, expected_result) - - -@pytest.mark.P3 -def test_edit_candidate_receipt(set_not_need_analyze): - client = set_not_need_analyze - node = client.node - economic = client.economic - address, pri_key = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - hash = client.staking.create_staking(0, address, address) - node.eth.waitForTransactionReceipt(hash) - hash = client.staking.edit_candidate(address, address) - key = "topics" - expected_result = [] - check_receipt(node, hash, key, expected_result) - - -@pytest.mark.P3 -def test_withdrew_staking_receipt(set_not_need_analyze): - client = set_not_need_analyze - node = client.node - economic = client.economic - address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - - hash = client.staking.create_staking(0, address, address) - node.eth.waitForTransactionReceipt(hash) - hash = client.staking.withdrew_staking(address) - key = "topics" - expected_result = [] - check_receipt(node, hash, key, expected_result) - - -@pytest.mark.P3 -def test_createRestrictingPlan_receipt(set_not_need_analyze): - client = set_not_need_analyze - node = client.node - economic = client.economic - address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - lockup_amount = client.node.web3.toWei(20, "ether") - plan = [{'Epoch': 1, 'Amount': lockup_amount}] - # Create a lock plan - hash = client.restricting.createRestrictingPlan(address, plan, address) - key = "topics" - expected_result = [] - check_receipt(node, hash, key, expected_result) - - -@pytest.mark.P3 -def test_reportDuplicateSign_receipt(set_not_need_analyze): - client = set_not_need_analyze - node = client.node - economic = client.economic - address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - number = client.node.eth.blockNumber - report_information = mock_duplicate_sign(1, client.node.nodekey, client.node.blsprikey, number) - address_, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - hash = client.duplicatesign.reportDuplicateSign(1, report_information, address_) - key = "topics" - expected_result = [] - check_receipt(node, hash, key, expected_result) diff --git a/cases/tests/ppos_2/test_delegate.py b/cases/tests/ppos_2/test_delegate.py deleted file mode 100644 index 1a8b6dbfa6..0000000000 --- a/cases/tests/ppos_2/test_delegate.py +++ /dev/null @@ -1,696 +0,0 @@ -# -*- coding: utf-8 -*- - -from tests.lib.utils import * -import pytest -from tests.lib.config import EconomicConfig -import allure - - -@allure.title("Query delegate parameter validation") -@pytest.mark.P1 -@pytest.mark.compatibility -def test_DI_001_009(client_new_node): - """ - 001:Query delegate parameter validation - 009:The money entrusted is equal to the low threshold entrusted - """ - address, pri_key = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address, address) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address1) - assert_code(result, 0) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - msg = client_new_node.ppos.getDelegateInfo(staking_blocknum, address1, client_new_node.node.node_id) - log.info(msg) - assert client_new_node.node.web3.toChecksumAddress(msg["Ret"]["Addr"]) == address1 - assert msg["Ret"]["NodeId"] == client_new_node.node.node_id - assert msg["Ret"]["ReleasedHes"] == client_new_node.economic.delegate_limit - - -@allure.title("Delegate to different people") -@pytest.mark.P1 -def test_DI_002_003_004(clients_new_node): - """ - 002:Delegate to candidate - 003:Delegate to verifier - 004:Delegate to consensus verifier - """ - client1 = clients_new_node[0] - client2 = clients_new_node[1] - - staking_amount = client1.economic.create_staking_limit - address, pri_key = client1.economic.account.generate_account(client1.node.web3, 10 ** 18 * 10000000) - client1.staking.create_staking(0, address, address, amount=staking_amount) - - address, pri_key = client2.economic.account.generate_account(client2.node.web3, 10 ** 18 * 10000000) - client2.staking.create_staking(0, address, address, amount=staking_amount * 2) - - client2.economic.wait_settlement(client2.node) - - nodeid_list = get_pledge_list(client2.ppos.getVerifierList) - log.info("The billing cycle validates the list of people{}".format(nodeid_list)) - assert client1.node.node_id not in nodeid_list - - address1, _ = client1.economic.account.generate_account(client1.node.web3, 10 ** 18 * 10000000) - log.info("The candidate delegate") - result = client1.delegate.delegate(0, address1) - assert_code(result, 0) - - assert client2.node.node_id in nodeid_list - address2, _ = client2.economic.account.generate_account(client2.node.web3, - 10 ** 18 * 10000000) - log.info("The verifier delegates") - result = client2.delegate.delegate(0, address2) - assert_code(result, 0) - - client2.economic.wait_consensus(client2.node) - nodeid_list = get_pledge_list(client2.ppos.getValidatorList) - log.info("Consensus validator list:{}".format(nodeid_list)) - assert client2.node.node_id in nodeid_list - address3, _ = client2.economic.account.generate_account(client2.node.web3, - 10 ** 18 * 10000000) - log.info("Consensus verifier delegates") - result = client2.delegate.delegate(0, address3) - assert_code(result, 0) - - -@allure.title("The amount entrusted by the client is less than the threshold") -@pytest.mark.P3 -def test_DI_005(client_consensus): - """ - :param client_consensus_obj: - :return: - """ - address, _ = client_consensus.economic.account.generate_account(client_consensus.node.web3, - 10 ** 18 * 10000000) - - result = client_consensus.delegate.delegate(0, address) - log.info(result) - assert_code(result, 301107) - - -@allure.title("The amount entrusted by the client is less than the threshold") -@pytest.mark.P1 -def test_DI_006(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - client_new_node.staking.create_staking(0, address, address) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - delegate_limit = client_new_node.economic.delegate_limit - result = client_new_node.delegate.delegate(0, address1, amount=delegate_limit - 1) - log.info(result) - assert_code(result, 301105) - - -@allure.title("gas Insufficient entrustment") -@pytest.mark.P1 -def test_DI_007(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - client_new_node.staking.create_staking(0, address, address) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - fig = {"gas": 1} - status = 0 - try: - result = client_new_node.delegate.delegate(0, address1, transaction_cfg=fig) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@allure.title("not sufficient funds") -@pytest.mark.P1 -def test_DI_008(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - client_new_node.staking.create_staking(0, address, address) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10) - status = 0 - try: - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@allure.title("Delegate to a candidate who doesn't exist") -@pytest.mark.P3 -def test_DI_010_020(client_new_node): - """ - Delegate to a candidate who doesn't exist - :param client_new_node_obj: - :return: - """ - illegal_nodeID = "7ee3276fd6b9c7864eb896310b5393324b6db785a2528c00cc28ca8c" \ - "3f86fc229a86f138b1f1c8e3a942204c03faeb40e3b22ab11b8983c35dc025de42865990" - address1, pri_key = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address1, node_id=illegal_nodeID) - log.info(result) - assert_code(result, 301102) - - -@allure.title("Delegate to different people{status}") -@pytest.mark.P1 -@pytest.mark.parametrize('status', [0, 1, 2, 3]) -def test_DI_011_012_013_014(client_new_node, status): - """ - 0:A valid candidate whose commission is still in doubt - 1:The delegate is also a valid candidate at a lockup period - 2:A candidate whose mandate is voluntarily withdrawn but who is still in the freeze period - 3:A candidate whose mandate has been voluntarily withdrawn and whose freeze period has expired - :param client_new_node_obj: - :param status: - :return: - """ - - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - client_new_node.staking.create_staking(0, address, address) - if status == 0: - # A valid candidate whose commission is still in doubt - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address1) - assert_code(result, 0) - - if status == 1: - # The delegate is also a valid candidate at a lockup period - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.delegate.delegate(0, address1) - assert_code(result, 0) - - if status == 2: - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - result = client_new_node.delegate.delegate(0, address1) - assert_code(result, 301103) - - if status == 3: - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - client_new_node.economic.wait_settlement(client_new_node.node, 2) - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - assert_code(result, 301102) - - -@allure.title("Delegate to candidates whose penalties have lapsed (freeze period and after freeze period)") -@pytest.mark.P1 -def test_DI_015_016(client_new_node, client_consensus): - """ - :param client_new_node_obj: - :param client_consensus_obj: - :return: - """ - client = client_new_node - node = client.node - other_node = client_consensus.node - economic = client.economic - address, _ = economic.account.generate_account(client_new_node.node.web3, economic.create_staking_limit * 2) - address_delegate, _ = economic.account.generate_account(client_new_node.node.web3, economic.delegate_limit * 10) - value = economic.create_staking_limit - result = client.staking.create_staking(0, address, address) - assert_code(result, 0) - economic.wait_settlement(node) - # validator_list = get_pledge_list(other_node.ppos.getValidatorList) - # assert node.node_id in validator_list - candidate_info = other_node.ppos.getCandidateInfo(node.node_id) - log.info('candidate_info: {}', candidate_info) - log.info("Close one node") - node.stop() - for i in range(4): - economic.wait_consensus(other_node) - candidate_info = other_node.ppos.getCandidateInfo(node.node_id) - log.info(candidate_info) - if candidate_info["Ret"]["Released"] < value: - break - log.info("Node exceptions are not penalized") - log.info("Restart the node") - client_new_node.node.start() - result = client.delegate.delegate(0, address_delegate) - log.info(result) - assert_code(result, 301103) - log.info("Next settlement period") - client_new_node.economic.wait_settlement(node, 2) - result = client.delegate.delegate(0, address_delegate) - assert_code(result, 301102) - - -@allure.title("Use the pledge account as the entrustment") -@pytest.mark.P1 -def test_DI_017(client_new_node): - """ - Use the pledge account as the entrustment - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - result = client_new_node.delegate.delegate(0, address) - log.info(result) - assert_code(result, 301106) - - -@allure.title( - "The verification section receives the delegate, exits, becomes the verification node, and receives the delegate") -@pytest.mark.P1 -def test_DI_019(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - # Exit the pledge - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - # Repeat pledge - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - # Recheck wallet associations - msg = client_new_node.ppos.getRelatedListByDelAddr(address1) - log.info(msg) - print(len(msg["Ret"])) - assert len(msg["Ret"]) == 2 - for i in msg["Ret"]: - assert client_new_node.node.web3.toChecksumAddress(i["Addr"]) == address1 - assert i["NodeId"] == client_new_node.node.node_id - - -@allure.title("The entrusted verifier is penalized to verify the entrusted principal") -@pytest.mark.P3 -def test_DI_021(client_new_node, client_consensus): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - value = client_new_node.economic.create_staking_limit * 2 - result = client_new_node.staking.create_staking(0, address, address, amount=value) - assert_code(result, 0) - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - log.info("Close one node") - client_new_node.node.stop() - node = client_consensus.node - log.info("The next two periods") - client_new_node.economic.wait_settlement(node, 2) - log.info("Restart the node") - client_new_node.node.start() - msg = client_consensus.ppos.getDelegateInfo(staking_blocknum, address1, client_new_node.node.node_id) - log.info(msg) - assert msg["Ret"]["Released"] == client_new_node.economic.delegate_limit - - -@allure.title("Free amount in different periods when additional entrustment is made") -@pytest.mark.P2 -@pytest.mark.parametrize('status', [0, 1, 2]) -def test_DI_022_023_024(client_new_node, status): - """ - 022:There is only the free amount of hesitation period when additional entrusting - 023:Only the free amount of the lockup period exists when the delegate is added - 024:The amount of both hesitation period and lockup period exists when additional entrustment is made - :param client_new_node_obj: - :param status: - :return: - """ - client_new_node.economic.env.deploy_all() - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - client_new_node.staking.create_staking(0, address, address) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - - if status == 0: - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - msg = client_new_node.ppos.getDelegateInfo(staking_blocknum, address1, client_new_node.node.node_id) - log.info(msg) - assert msg["Ret"]["ReleasedHes"] == client_new_node.economic.delegate_limit * 2 - - if status == 1: - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - msg = client_new_node.ppos.getDelegateInfo(staking_blocknum, address1, client_new_node.node.node_id) - log.info(msg) - assert msg["Ret"]["ReleasedHes"] == client_new_node.economic.delegate_limit - assert msg["Ret"]["Released"] == client_new_node.economic.delegate_limit - - if status == 2: - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - msg = client_new_node.ppos.getDelegateInfo(staking_blocknum, address1, client_new_node.node.node_id) - log.info(msg) - assert msg["Ret"]["ReleasedHes"] == client_new_node.economic.delegate_limit * 2 - assert msg["Ret"]["Released"] == client_new_node.economic.delegate_limit - - -@allure.title("uncommitted") -@pytest.mark.P2 -def test_DI_025(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address_delegate, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - result = client_new_node.ppos.getRelatedListByDelAddr(address_delegate) - log.info(result) - assert_code(result, 301203) - - -@allure.title("The entrusted candidate is valid") -@pytest.mark.P2 -def test_DI_026(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address_delegate, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - - result = client_new_node.delegate.delegate(0, address_delegate) - assert_code(result, 0) - - result = client_new_node.ppos.getRelatedListByDelAddr(address_delegate) - log.info(result) - assert result["Code"] == 0 - assert client_new_node.node.web3.toChecksumAddress(result["Ret"][0]["Addr"]) == address_delegate - assert result["Ret"][0]["NodeId"] == client_new_node.node.node_id - - -@allure.title("The entrusted candidate does not exist") -@pytest.mark.P2 -def test_DI_027(client_new_node): - """ - The entrusted candidate does not exist - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address_delegate, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - illegal_nodeID = "7ee3276fd6b9c7864eb896310b5393324b6db785a2528c00cc28ca8c" \ - "3f86fc229a86f138b1f1c8e3a942204c03faeb40e3b22ab11b8983c35dc025de42865990" - - result = client_new_node.delegate.delegate(0, address_delegate, node_id=illegal_nodeID) - log.info(result) - result = client_new_node.ppos.getRelatedListByDelAddr(address_delegate) - log.info(result) - assert_code(result, 301203) - - -@allure.title("The entrusted candidate is invalid") -@pytest.mark.P2 -def test_DI_028(client_new_node): - """ - The entrusted candidate is invalid - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address_delegate, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - - result = client_new_node.delegate.delegate(0, address_delegate) - assert_code(result, 0) - - # Exit the pledge - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - result = client_new_node.ppos.getRelatedListByDelAddr(address_delegate) - assert result["Code"] == 0 - assert client_new_node.node.web3.toChecksumAddress(result["Ret"][0]["Addr"]) == address_delegate - assert result["Ret"][0]["NodeId"] == client_new_node.node.node_id - - -@allure.title("Delegate information in the hesitation period, lock period") -@pytest.mark.P2 -def test_DI_029_030(client_new_node): - """ - 029:Hesitation period inquiry entrustment details - 030:Lock periodic query information - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address_delegate, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - client_new_node.staking.create_staking(0, address, address) - result = client_new_node.delegate.delegate(0, address_delegate) - assert_code(result, 0) - - # Hesitation period inquiry entrustment details - result = client_new_node.ppos.getRelatedListByDelAddr(address_delegate) - log.info(result) - log.info("The next cycle") - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.ppos.getRelatedListByDelAddr(address_delegate) - assert result["Code"] == 0 - assert client_new_node.node.web3.toChecksumAddress(result["Ret"][0]["Addr"]) == address_delegate - assert result["Ret"][0]["NodeId"] == client_new_node.node.node_id - - -@allure.title("The delegate message no longer exists") -@pytest.mark.P2 -def test_DI_031(client_new_node): - """ - The delegate message no longer exists - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address_delegate, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - client_new_node.staking.create_staking(0, address, address) - result = client_new_node.delegate.delegate(0, address_delegate) - assert_code(result, 0) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address_delegate) - assert_code(result, 0) - result = client_new_node.ppos.getDelegateInfo(staking_blocknum, address_delegate, - client_new_node.node.node_id) - log.info(result) - assert_code(result, 301205) - - -@allure.title("The commission information is still in the hesitation period & The delegate information is still locked") -@pytest.mark.P2 -def test_DI_032_033(client_new_node): - """ - 032:The commission information is still in the hesitation period - 033The delegate information is still locked - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address_delegate, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - client_new_node.staking.create_staking(0, address, address) - result = client_new_node.delegate.delegate(0, address_delegate) - assert_code(result, 0) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - - # Hesitation period inquiry entrustment details - result = client_new_node.ppos.getDelegateInfo(staking_blocknum, address_delegate, - client_new_node.node.node_id) - log.info(result) - assert client_new_node.node.web3.toChecksumAddress(result["Ret"]["Addr"]) == address_delegate - assert result["Ret"]["NodeId"] == client_new_node.node.node_id - log.info("The next cycle") - client_new_node.economic.wait_consensus(client_new_node.node) - result = client_new_node.ppos.getDelegateInfo(staking_blocknum, address_delegate, - client_new_node.node.node_id) - log.info(result) - assert client_new_node.node.web3.toChecksumAddress(result["Ret"]["Addr"]) == address_delegate - assert result["Ret"]["NodeId"] == client_new_node.node.node_id - - -@allure.title("The entrusted candidate has withdrawn of his own accord") -@pytest.mark.P2 -def test_DI_034(client_new_node): - """ - The entrusted candidate has withdrawn of his own accord - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address_delegate, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - client_new_node.staking.create_staking(0, address, address) - result = client_new_node.delegate.delegate(0, address_delegate) - assert_code(result, 0) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - - # Exit the pledge - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - - result = client_new_node.ppos.getDelegateInfo(staking_blocknum, address_delegate, - client_new_node.node.node_id) - log.info(result) - assert client_new_node.node.web3.toChecksumAddress(result["Ret"]["Addr"]) == address_delegate - assert result["Ret"]["NodeId"] == client_new_node.node.node_id - - -@allure.title("Entrusted candidate (penalized in lockup period, penalized out completely)") -@pytest.mark.P2 -def test_DI_035_036(clients_new_node, client_consensus): - """ - The entrusted candidate is still penalized in the lockup period - The entrusted candidate was penalized to withdraw completely - - """ - client = clients_new_node[0] - node = client.node - other_node = client_consensus.node - economic = client.economic - address, _ = economic.account.generate_account(node.web3, 10 ** 18 * 10000000) - - address_delegate, _ = economic.account.generate_account(node.web3, 10 ** 18 * 10000000) - - value = economic.create_staking_limit * 2 - result = client.staking.create_staking(0, address, address) - assert_code(result, 0) - result = client.delegate.delegate(0, address_delegate) - assert_code(result, 0) - # The validation node becomes the out-block validation node - economic.wait_consensus(other_node, 4) - validator_list = get_pledge_list(other_node.ppos.getValidatorList) - assert node.node_id in validator_list - candidate_info = other_node.ppos.getCandidateInfo(node.node_id) - log.info(candidate_info) - staking_blocknum = candidate_info["Ret"]["StakingBlockNum"] - - log.info("Close one node") - node.stop() - for i in range(4): - economic.wait_consensus(other_node) - candidate_info = other_node.ppos.getCandidateInfo(node.node_id) - log.info(candidate_info) - if candidate_info["Ret"]["Released"] < value: - break - - result = other_node.ppos.getDelegateInfo(staking_blocknum, address_delegate, - node.node_id) - log.info(result) - assert other_node.web3.toChecksumAddress(result["Ret"]["Addr"]) == address_delegate - assert result["Ret"]["NodeId"] == node.node_id - log.info("Restart the node") - node.start() - log.info("Next settlement period") - economic.wait_settlement(other_node, 2) - - result = other_node.ppos.getDelegateInfo(staking_blocknum, address_delegate, - node.node_id) - log.info(result) - assert other_node.web3.toChecksumAddress(result["Ret"]["Addr"]) == address_delegate - assert result["Ret"]["NodeId"] == node.node_id - - -@allure.title("Query for delegate information in undo") -@pytest.mark.P2 -def test_DI_038(client_new_node): - """ - Query for delegate information in undo - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address_delegate, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - client_new_node.staking.create_staking(0, address, address) - result = client_new_node.delegate.delegate(0, address_delegate) - assert_code(result, 0) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - - log.info("The next cycle") - client_new_node.economic.wait_consensus(client_new_node.node) - - # Exit the pledge - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - - result = client_new_node.ppos.getDelegateInfo(staking_blocknum, address_delegate, - client_new_node.node.node_id) - log.info(result) - assert client_new_node.node.web3.toChecksumAddress(result["Ret"]["Addr"]) == address_delegate - assert result["Ret"]["NodeId"] == client_new_node.node.node_id diff --git a/cases/tests/ppos_2/test_edit_candidate.py b/cases/tests/ppos_2/test_edit_candidate.py deleted file mode 100644 index 04c3426caf..0000000000 --- a/cases/tests/ppos_2/test_edit_candidate.py +++ /dev/null @@ -1,441 +0,0 @@ -# -*- coding: utf-8 -*- - -from tests.lib.utils import * -import pytest -import allure - - -@allure.title("Modify node information") -@pytest.mark.P0 -@pytest.mark.compatibility -def test_MPI_001_002(client_new_node): - """ - Modify node information - :param client_new_node_obj: - :return: - """ - external_id = "ID1" - node_name = "LIDA" - website = "WEBSITE" - details = "talent" - address, pri_key = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - result = client_new_node.ppos.editCandidate(address, client_new_node.node.node_id, external_id, - node_name, website, details, pri_key, reward_per=0) - assert_code(result, 0) - result = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - log.info(result) - assert result["Ret"]["ExternalId"] == external_id - assert result["Ret"]["NodeName"] == node_name - assert result["Ret"]["Website"] == website - assert result["Ret"]["Details"] == details - - -@allure.title("Node becomes consensus validator when modifying revenue address") -@pytest.mark.P2 -def test_MPI_003(clients_new_node): - """ - :param client_new_node: - :return: - """ - client = clients_new_node[0] - address, _ = client.economic.account.generate_account(client.node.web3, - 10 ** 18 * 10000000) - value = client.economic.create_staking_limit * 2 - result = client.staking.create_staking(0, address, address, amount=value) - assert_code(result, 0) - msg = client.ppos.getCandidateInfo(client.node.node_id) - log.info(msg) - log.info("Next settlement period") - client.economic.wait_settlement(client.node) - log.info("Next consensus cycle") - client.economic.wait_consensus(client.node) - validator_list = get_pledge_list(client.ppos.getValidatorList) - log.info("validator_list:{}".format(validator_list)) - log.info("new node{}".format(client.node.node_id)) - msg = client.ppos.getValidatorList() - log.info("validator_list info{}".format(msg)) - assert client.node.node_id in validator_list - result = client.staking.edit_candidate(address, address) - assert_code(result, 0) - - -@allure.title("The original verifier beneficiary's address modifies the ordinary address") -@pytest.mark.P1 -def test_MPI_004(client_consensus): - """ - :param client_consensus_obj: - :return: - """ - address, _ = client_consensus.economic.account.generate_account(client_consensus.node.web3, - 10 ** 18 * 10000000) - INCENTIVEPOOL_ADDRESS = client_consensus.economic.cfg.INCENTIVEPOOL_ADDRESS - DEVELOPER_FOUNDATAION_ADDRESS = client_consensus.economic.cfg.DEVELOPER_FOUNDATAION_ADDRESS - - result = client_consensus.staking.edit_candidate(DEVELOPER_FOUNDATAION_ADDRESS, address) - log.info(result) - msg = client_consensus.ppos.getCandidateInfo(client_consensus.node.node_id) - log.info(msg) - assert msg["Ret"]["BenefitAddress"] == INCENTIVEPOOL_ADDRESS - - -@allure.title("The beneficiary address of the non-initial verifier is changed to the incentive pool address") -@pytest.mark.P1 -def test_MPI_005_006(client_new_node): - """ - 005:The beneficiary address of the non-initial verifier is changed to the incentive pool address - 006:and then to the ordinary address - :param client_new_node_obj: - :param get_generate_account: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - INCENTIVEPOOL_ADDRESS = client_new_node.economic.cfg.INCENTIVEPOOL_ADDRESS - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - log.info("Change to excitation pool address") - result = client_new_node.staking.edit_candidate(address, INCENTIVEPOOL_ADDRESS) - log.info(result) - assert_code(result, 0) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - log.info(msg) - assert msg["Ret"]["BenefitAddress"] == INCENTIVEPOOL_ADDRESS - - result = client_new_node.staking.edit_candidate(address, address) - log.info(result) - assert_code(result, 0) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - log.info(msg) - assert msg["Ret"]["BenefitAddress"] == INCENTIVEPOOL_ADDRESS - - -@allure.title("Edit wallet address as legal") -@pytest.mark.P1 -def test_MPI_007(client_new_node, client_noconsensus): - """ - :param client_new_node_obj: - :param client_noconsensus_obj: - :return: - """ - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - log.info(address1) - result = client_new_node.staking.create_staking(0, address1, address1) - assert_code(result, 0) - account = client_noconsensus.economic.account - node = client_noconsensus.node - address2, _ = account.generate_account(node.web3, 10 ** 18 * 20000000) - result = client_new_node.staking.edit_candidate(address1, address2) - log.info(address2) - log.info(result) - assert_code(result, 0) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - log.info(msg) - assert client_new_node.node.web3.toChecksumAddress(msg["Ret"]["BenefitAddress"]) == address2 - - -@allure.title("It is illegal to edit wallet addresses") -@pytest.mark.P1 -def test_MPI_008(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - log.info(address1) - result = client_new_node.staking.create_staking(0, address1, address1) - assert_code(result, 0) - address2 = "0x111111111111111111111111111111" - status = 0 - try: - result = client_new_node.staking.edit_candidate(address1, address2) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@allure.title("Insufficient gas to initiate modification node") -@pytest.mark.P3 -def test_MPI_009(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - cfg = {"gas": 1} - status = 0 - try: - result = client_new_node.staking.edit_candidate(address, address, transaction_cfg=cfg) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@allure.title("Insufficient balance to initiate the modification node") -@pytest.mark.P3 -def test_MPI_010(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - - account = client_new_node.economic.account - client = client_new_node - node = client.node - address, _ = account.generate_account(node.web3, 10 ** 18 * 10000000) - result = client.staking.create_staking(0, address, address) - assert_code(result, 0) - balance = node.eth.getBalance(address) - status = 0 - try: - result = client.staking.edit_candidate(address, address, transaction_cfg={"gasPrice": balance}) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@allure.title("During the hesitation period, withdraw pledge and modify node information") -@pytest.mark.P1 -def test_MPI_011(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - result = client_new_node.staking.withdrew_staking(address) - log.info(result) - result = client_new_node.staking.edit_candidate(address, address) - log.info(result) - assert_code(result, 301102) - - -@allure.title("Lock period exit pledge, modify node information") -@pytest.mark.P2 -def test_MPI_012_013(client_new_node): - """ - 012:Lock period exit pledge, modify node information - 013:After the lockout pledge is complete, the node information shall be modified - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - log.info("Next settlement period") - client_new_node.economic.wait_settlement(client_new_node.node) - log.info("The lock shall be depledged at regular intervals") - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - log.info(msg) - assert msg["Code"] == 0 - result = client_new_node.staking.edit_candidate(address, address) - log.info(result) - assert_code(result, 301103) - log.info("Next two settlement period") - client_new_node.economic.wait_settlement(client_new_node.node, 2) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - log.info(msg) - assert msg["Code"] == 301204 - result = client_new_node.staking.edit_candidate(address, address) - log.info(result) - assert_code(result, 301102) - - -@allure.title("Non-verifier, modify node information") -@pytest.mark.P3 -def test_MPI_014(client_new_node): - """ - Non-verifier, modify node information - :param client_new_node_obj: - :return: - """ - external_id = "ID1" - node_name = "LIDA" - website = "WEBSITE" - details = "talent" - illegal_nodeID = "7ee3276fd6b9c7864eb896310b5393324b6db785a2528c00cc28ca8c" \ - "3f86fc229a86f138b1f1c8e3a942204c03faeb40e3b22ab11b8983c35dc025de42865990" - address, pri_key = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - result = client_new_node.ppos.editCandidate(address, illegal_nodeID, external_id, - node_name, website, details, pri_key, reward_per=0) - log.info(result) - assert_code(result, 301102) - - -@allure.title("Candidates whose commissions have been penalized are still frozen") -@pytest.mark.P2 -def test_MPI_015_016(clients_new_node, client_consensus): - """ - 015:Candidates whose commissions have been penalized are still frozen - 016:A candidate whose mandate has expired after a freeze period - :param client_new_node_obj: - :return: - """ - client = clients_new_node[0] - node = client.node - other_node = client_consensus.node - economic = client.economic - address, pri_key = economic.account.generate_account(node.web3, - 10 ** 18 * 10000000) - - value = economic.create_staking_limit - result = client.staking.create_staking(0, address, address, amount=value) - assert_code(result, 0) - economic.wait_consensus(other_node, 4) - validator_list = get_pledge_list(other_node.ppos.getValidatorList) - assert node.node_id in validator_list - candidate_info = other_node.ppos.getCandidateInfo(node.node_id) - log.info(candidate_info) - log.info("Close one node") - node.stop() - for i in range(4): - economic.wait_consensus(other_node, i) - candidate_info = other_node.ppos.getCandidateInfo(node.node_id) - log.info(candidate_info) - if candidate_info["Ret"]["Released"] < value: - break - - log.info("Restart the node") - node.start() - time.sleep(10) - result = client.staking.edit_candidate(address, address) - log.info(result) - assert_code(result, 301103) - log.info("Next settlement period") - economic.wait_settlement(node, 2) - result = client.staking.edit_candidate(address, address) - assert_code(result, 301102) - - -@allure.title("The length of the overflow") -@pytest.mark.P2 -def test_MPI_017(client_new_node): - external_id = "11111111111111111111111111111111111111111111111111111111111111111111111111111111111" - node_name = "1111111111111111111111111111111111111111111111111111111111111111111111111111111111111" - website = "1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 " - details = "1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 " - - address, pri_key = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - result = client_new_node.ppos.editCandidate(address, client_new_node.node.node_id, - external_id, node_name, website, details, pri_key, reward_per=0) - log.info(result) - assert_code(result, 301102) - - -@allure.title("Non-validating nodes modify the commissioned dividend reward") -@pytest.mark.P1 -def test_MPI_018(clients_noconsensus): - """ - 非验证人修改委托分红奖励 - """ - client1 = clients_noconsensus[0] - client2 = clients_noconsensus[1] - economic = client1.economic - node = client1.node - address1, pri_key = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - address2, pri_key = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - - result = client1.staking.create_staking(0, address1, address1, reward_per=80) - assert_code(result, 0) - time.sleep(1) - result = client2.staking.create_staking(0, address2, address2, reward_per=80) - assert_code(result, 0) - - economic.wait_settlement(node, 1) - time.sleep(1) - print(client1.node.ppos.getVerifierList()) - result = check_node_in_list(client1.node.node_id, client1.ppos.getVerifierList) - assert result - result = check_node_in_list(client2.node.node_id, client1.ppos.getVerifierList) - assert not result - - result = client1.staking.edit_candidate(address1, address1, reward_per=580) - assert_code(result, 0) - candidate_info = node.ppos.getCandidateInfo(node.node_id)['Ret'] - assert candidate_info['RewardPer'] == 80 - assert candidate_info['NextRewardPer'] == 580 - result = client2.staking.edit_candidate(address2, address2, reward_per=580) - assert_code(result, 0) - candidate_info = node.ppos.getCandidateInfo(node.node_id)['Ret'] - assert candidate_info['RewardPer'] == 80 - assert candidate_info['NextRewardPer'] == 580 - - economic.wait_settlement(node) - - candidate_info = node.ppos.getCandidateInfo(node.node_id)['Ret'] - assert candidate_info['RewardPer'] == 580 - assert candidate_info['NextRewardPer'] == 580 - - candidate_info = node.ppos.getCandidateInfo(node.node_id)['Ret'] - assert candidate_info['RewardPer'] == 580 - assert candidate_info['NextRewardPer'] == 580 - - -@pytest.mark.P1 -def test_MPI_019(clients_noconsensus): - """ - 非验证人连续修改委托分红奖励 - """ - client1 = clients_noconsensus[0] - client2 = clients_noconsensus[1] - economic = client1.economic - node = client1.node - address1, pri_key = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - address2, pri_key = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - - result = client1.staking.create_staking(0, address1, address1, reward_per=80) - assert_code(result, 0) - time.sleep(1) - result = client2.staking.create_staking(0, address2, address2, reward_per=80) - assert_code(result, 0) - - economic.wait_settlement(node) - time.sleep(1) - result = check_node_in_list(client1.node.node_id, client1.ppos.getVerifierList) - assert result - result = check_node_in_list(client2.node.node_id, client1.ppos.getVerifierList) - assert not result - - result = client2.staking.edit_candidate(address2, address2, reward_per=10001) - assert_code(result, 3010010) - - result = client2.staking.edit_candidate(address2, address2, reward_per=590) - assert_code(result, 3010010) - - result = client2.staking.edit_candidate(address2, address2, reward_per=580) - assert_code(result, 0) - result = client2.staking.edit_candidate(address2, address2, reward_per=1080) - assert_code(result, 0) - candidate_info = node.ppos.getCandidateInfo(node.node_id)['Ret'] - assert candidate_info['RewardPer'] == 80 - assert candidate_info['NextRewardPer'] == 580 - economic.wait_settlement(node) - candidate_info = node.ppos.getCandidateInfo(node.node_id)['Ret'] - assert candidate_info['RewardPer'] == 580 - assert candidate_info['NextRewardPer'] == 580 - result = client2.staking.edit_candidate(address2, address2, reward_per=1080) - assert_code(result, 301009) - - - diff --git a/cases/tests/ppos_2/test_election.py b/cases/tests/ppos_2/test_election.py deleted file mode 100644 index 78f5224c3b..0000000000 --- a/cases/tests/ppos_2/test_election.py +++ /dev/null @@ -1,696 +0,0 @@ -# -*- coding: utf-8 -*- -from tests.lib.utils import * -import pytest -from tests.lib.config import EconomicConfig -from common.key import mock_duplicate_sign - - -@pytest.mark.P1 -def test_CS_CL_001(clients_new_node): - """ - The longer the tenure, the easier it is to replace - :param client_new_node: - :return: - """ - client = clients_new_node[0] - node_id_1 = client.node.node_id - log.info(client.node.node_id) - address, _ = client.economic.account.generate_account(client.node.web3, - 10 ** 18 * 10000000) - pledge_amount = client.economic.create_staking_limit * 2 - result = client.staking.create_staking(0, address, address, amount=pledge_amount) - assert_code(result, 0) - log.info("Next settlement period") - client.economic.wait_settlement(client.node) - log.info("The next consensus cycle") - client.economic.wait_consensus(client.node) - validatorlist1 = get_pledge_list(client.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist1)) - - log.info("替换的第一轮共识轮") - log.info(client.ppos.getValidatorList()) - - max_term_nodeid_1 = get_validator_term(client.node) - log.info("Maximum tenure node list:{}".format(max_term_nodeid_1)) - assert node_id_1 not in max_term_nodeid_1 - assert node_id_1 in validatorlist1 - - # The next consensus cycle - log.info("The next consensus cycle") - client.economic.wait_consensus(client.node) - - validatorlist2 = get_pledge_list(client.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist2)) - - log.info("替换的第二轮共识轮") - log.info(client.ppos.getValidatorList()) - - max_term_nodeid_2 = get_validator_term(client.node) - log.info("Maximum tenure node:{}".format(max_term_nodeid_2)) - assert node_id_1 not in max_term_nodeid_2 - assert node_id_1 in validatorlist2 - - # The next consensus cycle - log.info("The next consensus cycle") - client.economic.wait_consensus(client.node) - - validatorlist3 = get_pledge_list(client.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist3)) - - log.info("替换的第三轮共识轮") - log.info(client.ppos.getValidatorList()) - max_term_nodeid_3 = get_validator_term(client.node) - log.info("Maximum tenure node:{}".format(max_term_nodeid_3)) - assert node_id_1 not in max_term_nodeid_3 - assert node_id_1 in validatorlist3 - - -@pytest.mark.P1 -def test_CS_CL_002(clients_new_node): - """ - The higher the consensus verifier list index is replaced - :param client_new_node: - :return: - """ - client = clients_new_node[0] - - node = get_max_staking_tx_index(client.node) - log.info("The node with the largest trade index:{}".format(node)) - - address, _ = client.economic.account.generate_account(client.node.web3, - 10 ** 18 * 10000000) - pledge_amount = client.economic.create_staking_limit * 2 - result = client.staking.create_staking(0, address, address, amount=pledge_amount) - assert_code(result, 0) - # Next settlement period - client.economic.wait_settlement(client.node) - # The next consensus cycle - client.economic.wait_consensus(client.node) - validatorlist = get_pledge_list(client.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist)) - assert node not in validatorlist - - -@pytest.mark.P1 -def test_CS_CL_003(clients_new_node, clients_consensus): - """ - The higher the consensus verifier list block, the higher it is replaced - :param client_new_node: - :return: - """ - client_noconsensus1 = clients_new_node[0] - client_noconsensus2 = clients_new_node[1] - client_noconsensus3 = clients_new_node[2] - client_noconsensus4 = clients_new_node[3] - client_consensus1 = clients_consensus[0] - client_consensus2 = clients_consensus[1] - client_consensus3 = clients_consensus[2] - validatorlist = get_pledge_list(client_consensus1.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist)) - - log.info("The next consensus cycle") - client_consensus1.economic.wait_consensus(client_consensus1.node, 1) - blocknumber = client_consensus1.node.eth.blockNumber - log.info("To report the double sign") - report_information1 = mock_duplicate_sign(1, client_consensus1.node.nodekey, - client_consensus1.node.blsprikey, - blocknumber) - log.info("Report information: {}".format(report_information1)) - - report_information2 = mock_duplicate_sign(1, client_consensus2.node.nodekey, - client_consensus2.node.blsprikey, - blocknumber) - log.info("Report information: {}".format(report_information2)) - - report_information3 = mock_duplicate_sign(1, client_consensus3.node.nodekey, - client_consensus3.node.blsprikey, - blocknumber) - log.info("Report information: {}".format(report_information3)) - - address_1, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - address_2, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - address_3, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - result = client_consensus1.duplicatesign.reportDuplicateSign(1, report_information1, address_1) - log.info(result) - result = client_consensus2.duplicatesign.reportDuplicateSign(1, report_information2, address_2) - log.info(result) - result = client_consensus3.duplicatesign.reportDuplicateSign(1, report_information3, address_3) - log.info(result) - log.info("The next periods") - client_noconsensus3.economic.wait_settlement(client_noconsensus3.node) - validatorlist = get_pledge_list(client_consensus1.ppos.getValidatorList) - log.info("After being reported validatorlist:{}".format(validatorlist)) - - staking_address1, _ = client_noconsensus1.economic.account.generate_account(client_consensus1.node.web3, - 10 ** 18 * 10000000) - staking_address2, _ = client_noconsensus1.economic.account.generate_account(client_consensus1.node.web3, - 10 ** 18 * 10000000) - staking_address3, _ = client_noconsensus1.economic.account.generate_account(client_consensus1.node.web3, - 10 ** 18 * 10000000) - staking_address4, _ = client_noconsensus1.economic.account.generate_account(client_consensus1.node.web3, - 10 ** 18 * 10000000) - pledge_amount = client_consensus1.economic.create_staking_limit * 2 - log.info("New pledge 4 verifiers") - result = client_noconsensus1.staking.create_staking(0, staking_address1, staking_address1, amount=pledge_amount) - assert_code(result, 0) - result = client_noconsensus2.staking.create_staking(0, staking_address2, staking_address2, amount=pledge_amount) - assert_code(result, 0) - result = client_noconsensus3.staking.create_staking(0, staking_address3, staking_address3, amount=pledge_amount) - assert_code(result, 0) - result = client_noconsensus4.staking.create_staking(0, staking_address4, staking_address4, amount=pledge_amount) - assert_code(result, 0) - log.info("Next settlement period") - client_noconsensus4.economic.wait_settlement(client_noconsensus4.node) - log.info("The next consensus cycle") - client_noconsensus4.economic.wait_consensus(client_noconsensus4.node) - verifierList = get_pledge_list(client_noconsensus4.ppos.getVerifierList) - log.info("verifierList:{}".format(verifierList)) - validatorlist1 = get_pledge_list(client_noconsensus4.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist1)) - assert client_noconsensus1.node.node_id in validatorlist1 - - client_noconsensus4.economic.wait_consensus(client_noconsensus4.node) - verifierList = get_pledge_list(client_noconsensus4.ppos.getVerifierList) - log.info("verifierList:{}".format(verifierList)) - validatorlist2 = get_pledge_list(client_noconsensus4.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist2)) - assert client_noconsensus1.node.node_id in validatorlist2 - - client_noconsensus4.economic.wait_consensus(client_noconsensus4.node) - verifierList = get_pledge_list(client_noconsensus4.ppos.getVerifierList) - log.info("verifierList:{}".format(verifierList)) - validatorlist3 = get_pledge_list(client_noconsensus4.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist3)) - assert client_noconsensus1.node.node_id in validatorlist3 - - -@pytest.mark.P1 -def test_CS_CL_004(clients_new_node, client_consensus): - """ - The lower the total Shares, the easier it is to be replaced - :param client_consensus_obj: - :param client_new_node: - :return: - """ - client = clients_new_node[0] - StakingAddress = EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS - value = client_consensus.node.web3.toWei(1000000, "ether") - result = client_consensus.staking.increase_staking(0, StakingAddress, amount=value) - assert_code(result, 0) - msg = client_consensus.ppos.getCandidateInfo(client_consensus.node.node_id) - log.info(msg) - address, _ = client.economic.account.generate_account(client.node.web3, - 10 ** 18 * 10000000) - value = client.economic.create_staking_limit * 2 - result = client.staking.create_staking(0, address, address, amount=value) - assert_code(result, 0) - log.info(client.node.node_id) - log.info("Next settlement period") - client_consensus.economic.wait_settlement(client_consensus.node) - log.info("The next consensus cycle") - client_consensus.economic.wait_consensus(client_consensus.node) - validatorlist1 = get_pledge_list(client_consensus.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist1)) - - msg = client_consensus.ppos.getValidatorList() - log.info("Consensus validates the person's situation{}".format(msg)) - assert client_consensus.node.node_id in validatorlist1 - - client.economic.wait_consensus(client.node) - validatorlist2 = get_pledge_list(client_consensus.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist2)) - msg = client_consensus.ppos.getValidatorList() - log.info("Consensus validates the person's situation{}".format(msg)) - assert client_consensus.node.node_id in validatorlist2 - - -@pytest.mark.P1 -def test_CS_CL_005_006_008(clients_new_node): - """ - :param client_consensus: - :param client_new_node: - :return: - """ - client_noconsensus1 = clients_new_node[0] - client_noconsensus2 = clients_new_node[1] - client_noconsensus1.economic.env.deploy_all() - address1, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - address2, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - value = client_noconsensus1.economic.create_staking_limit * 2 - result = client_noconsensus1.staking.create_staking(0, address1, address1, amount=value) - assert_code(result, 0) - result = client_noconsensus2.staking.create_staking(0, address2, address2, - amount=value + 1300000000000000000000000) - assert_code(result, 0) - - # Next settlement period - client_noconsensus2.economic.wait_settlement(client_noconsensus2.node) - - verifierlist = get_pledge_list(client_noconsensus2.ppos.getVerifierList) - log.info("verifierlist:{}".format(verifierlist)) - - msg = client_noconsensus1.ppos.getCandidateInfo(client_noconsensus1.node.node_id) - log.info(msg) - msg = client_noconsensus2.ppos.getCandidateInfo(client_noconsensus2.node.node_id) - log.info(msg) - assert client_noconsensus2.node.node_id in verifierlist - assert client_noconsensus2.node.node_id == verifierlist[0] - - address3, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - - result = client_noconsensus1.delegate.delegate(0, address3, amount=700000000000000000000000) - log.info(result) - result = client_noconsensus1.staking.increase_staking(0, address1, amount=610000000000000000000000) - log.info(result) - - # Next settlement period - client_noconsensus2.economic.wait_settlement(client_noconsensus2.node) - msg = client_noconsensus1.ppos.getCandidateInfo(client_noconsensus1.node.node_id) - log.info(msg) - msg = client_noconsensus2.ppos.getCandidateInfo(client_noconsensus2.node.node_id) - log.info(msg) - verifierlist = get_pledge_list(client_noconsensus2.ppos.getVerifierList) - log.info("verifierlist:{}".format(verifierlist)) - assert verifierlist[0] == client_noconsensus1.node.node_id - assert verifierlist[1] == client_noconsensus2.node.node_id - - -@pytest.mark.P1 -def test_CS_CL_007(clients_new_node): - """ - :param clients_noconsensus: - :return: - """ - client_noconsensus1 = clients_new_node[0] - client_noconsensus2 = clients_new_node[1] - economic = client_noconsensus1.economic - node = client_noconsensus1.node - address1, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 4) - address2, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 4) - value = client_noconsensus1.economic.create_staking_limit * 3 - result = client_noconsensus1.staking.create_staking(0, address1, address1, amount=value) - assert_code(result, 0) - time.sleep(3) - result = client_noconsensus2.staking.create_staking(0, address2, address2, amount=value) - assert_code(result, 0) - # Next settlement period - economic.wait_settlement(node) - log.info('VerifierList :{}'.format(node.ppos.getVerifierList())) - verifierlist = get_pledge_list(client_noconsensus2.ppos.getVerifierList) - log.info("verifierlist:{}".format(verifierlist)) - log.info("node:{}".format(node.node_id)) - assert verifierlist[0] == node.node_id - - -@pytest.mark.P1 -def test_CS_CL_010_030(clients_new_node): - """ - :param global_test_env: - :param client_new_node: - :return: - """ - client = clients_new_node[0] - address, _ = client.economic.account.generate_account(client.node.web3, - 10 ** 18 * 10000000) - value = client.economic.create_staking_limit * 2 - result = client.staking.create_staking(0, address, address, amount=value) - assert_code(result, 0) - log.info("The next periods") - client.economic.wait_settlement(client.node) - log.info("The next consensus cycle") - client.economic.wait_consensus(client.node) - number = client.node.eth.blockNumber - log.info("To report the double sign") - report_information = mock_duplicate_sign(1, client.node.nodekey, client.node.blsprikey, - number) - - log.info("Report information: {}".format(report_information)) - address, _ = client.economic.account.generate_account(client.node.web3, - 10 ** 18 * 10000000) - result = client.duplicatesign.reportDuplicateSign(1, report_information, address) - log.info(result) - - log.info("The next periods") - client.economic.wait_settlement(client.node) - verifierlist = get_pledge_list(client.ppos.getVerifierList) - log.info("verifierlist:{}".format(verifierlist)) - assert client.node.node_id not in verifierlist - - -@pytest.mark.P1 -def test_CS_CL_012_032(clients_new_node): - """ - :param client_new_node: - :return: - """ - client = clients_new_node[0] - address, _ = client.economic.account.generate_account(client.node.web3, - 10 ** 18 * 10000000) - value = client.economic.create_staking_limit * 2 - result = client.staking.create_staking(0, address, address, amount=value) - assert_code(result, 0) - log.info("The next periods") - client.economic.wait_settlement(client.node) - verifierlist = get_pledge_list(client.ppos.getVerifierList) - log.info("verifierlist:{}".format(verifierlist)) - - assert client.node.node_id in verifierlist - - result = client.staking.withdrew_staking(address) - assert_code(result, 0) - - log.info("The next periods") - client.economic.wait_settlement(client.node, 1) - verifierlist = get_pledge_list(client.ppos.getVerifierList) - log.info("verifierlist:{}".format(verifierlist)) - - assert client.node.node_id not in verifierlist - - log.info("The next consensus cycle") - client.economic.wait_consensus(client.node) - - validatorlist = get_pledge_list(client.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist)) - - assert client.node.node_id not in validatorlist - - -@pytest.mark.P1 -@pytest.mark.compatibility -def test_CS_CL_013_031(clients_new_node, client_consensus): - """ - :param client_new_node: - :param client_consensus_obj: - :return: - """ - client = clients_new_node[0] - address, _ = client.economic.account.generate_account(client.node.web3, - 10 ** 18 * 10000000) - value = client.economic.create_staking_limit * 2 - result = client.staking.create_staking(0, address, address, amount=value) - assert_code(result, 0) - # Next settlement period - client.economic.wait_settlement(client.node) - verifierlist = get_pledge_list(client.ppos.getVerifierList) - log.info("verifierlist:{}".format(verifierlist)) - assert client.node.node_id in verifierlist - - log.info("Close one node") - client.node.stop() - node = client_consensus.node - log.info("The next periods") - client.economic.wait_settlement(node) - verifierlist = get_pledge_list(client_consensus.ppos.getVerifierList) - log.info("verifierlist:{}".format(verifierlist)) - assert client.node.node_id not in verifierlist - - -@pytest.mark.P2 -@pytest.mark.parametrize('status', [0, 1, 2]) -def test_CS_CL_014_015_016_029(status, clients_new_node, clients_consensus): - """ - :param status: - :param global_test_env: - :param client_con_list_obj: - :param clients_noconsensus: - :return: - """ - client_noconsensus1 = clients_new_node[0] - client_noconsensus2 = clients_new_node[1] - client_noconsensus3 = clients_new_node[2] - client_noconsensus4 = clients_new_node[3] - client_consensus1 = clients_consensus[0] - client_consensus2 = clients_consensus[1] - client_consensus3 = clients_consensus[2] - client_consensus4 = clients_consensus[3] - - log.info("The next consensus cycle") - client_consensus1.economic.wait_consensus(client_consensus1.node, 1) - blocknumber = client_consensus1.node.eth.blockNumber - - log.info("To report the double sign") - report_information1 = mock_duplicate_sign(1, client_consensus1.node.nodekey, - client_consensus1.node.blsprikey, - blocknumber) - log.info("Report information: {}".format(report_information1)) - - report_information2 = mock_duplicate_sign(1, client_consensus2.node.nodekey, - client_consensus2.node.blsprikey, - blocknumber) - log.info("Report information: {}".format(report_information2)) - - report_information3 = mock_duplicate_sign(1, client_consensus3.node.nodekey, - client_consensus3.node.blsprikey, - blocknumber) - log.info("Report information: {}".format(report_information3)) - - address_1, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - address_2, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - address_3, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - result = client_consensus1.duplicatesign.reportDuplicateSign(1, report_information1, address_1) - log.info(result) - result = client_consensus2.duplicatesign.reportDuplicateSign(1, report_information2, address_2) - log.info(result) - result = client_consensus3.duplicatesign.reportDuplicateSign(1, report_information3, address_3) - log.info(result) - log.info("The next periods") - client_noconsensus2.economic.wait_settlement(client_noconsensus2.node) - validatorlist = get_pledge_list(client_consensus1.ppos.getValidatorList) - log.info("After being reported validatorlist:{}".format(validatorlist)) - - if status == 0: - address1, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - value = client_noconsensus1.economic.create_staking_limit * 2 - result = client_noconsensus1.staking.create_staking(0, address1, address1, amount=value) - assert_code(result, 0) - - address2, _ = client_noconsensus2.economic.account.generate_account(client_noconsensus2.node.web3, - 10 ** 18 * 10000000) - value = client_noconsensus2.economic.create_staking_limit * 2 - result = client_noconsensus2.staking.create_staking(0, address2, address2, amount=value) - assert_code(result, 0) - - log.info("The next periods") - client_noconsensus2.economic.wait_settlement(client_noconsensus2.node) - - log.info("The next consensus cycle") - client_noconsensus2.economic.wait_consensus(client_noconsensus2.node) - - validatorlist = get_pledge_list(client_noconsensus2.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist)) - log.info("node1:{}".format(client_noconsensus1.node.node_id)) - log.info("node2:{}".format(client_noconsensus2.node.node_id)) - log.info("node3:{}".format(client_consensus4.node.node_id)) - assert client_noconsensus1.node.node_id in validatorlist - assert client_noconsensus2.node.node_id in validatorlist - assert client_consensus4.node.node_id in validatorlist - - if status == 1: - address1, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - value = client_noconsensus1.economic.create_staking_limit * 2 - result = client_noconsensus1.staking.create_staking(0, address1, address1, amount=value) - assert_code(result, 0) - - address2, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - value = client_noconsensus1.economic.create_staking_limit * 2 - result = client_noconsensus2.staking.create_staking(0, address2, address2, amount=value) - assert_code(result, 0) - - address3, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - value = client_noconsensus1.economic.create_staking_limit * 2 - result = client_noconsensus3.staking.create_staking(0, address3, address3, amount=value) - assert_code(result, 0) - log.info("The next periods") - client_noconsensus2.economic.wait_settlement(client_noconsensus2.node) - - log.info("The next consensus cycle") - client_noconsensus2.economic.wait_consensus(client_noconsensus2.node) - - validatorlist = get_pledge_list(client_noconsensus2.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist)) - log.info("node1:{}".format(client_noconsensus1.node.node_id)) - log.info("node2:{}".format(client_noconsensus2.node.node_id)) - log.info("node3:{}".format(client_noconsensus3.node.node_id)) - log.info("node4:{}".format(client_consensus4.node.node_id)) - assert client_noconsensus1.node.node_id in validatorlist - assert client_noconsensus2.node.node_id in validatorlist - assert client_noconsensus3.node.node_id in validatorlist - assert client_consensus4.node.node_id in validatorlist - - if status == 2: - address1, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - value = client_noconsensus1.economic.create_staking_limit * 2 - result = client_noconsensus1.staking.create_staking(0, address1, address1, amount=value) - assert_code(result, 0) - - address2, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - value = client_noconsensus1.economic.create_staking_limit * 2 - result = client_noconsensus2.staking.create_staking(0, address2, address2, amount=value) - assert_code(result, 0) - - address3, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - value = client_noconsensus1.economic.create_staking_limit * 2 - result = client_noconsensus3.staking.create_staking(0, address3, address3, amount=value) - assert_code(result, 0) - - address4, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - value = client_noconsensus1.economic.create_staking_limit * 2 - result = client_noconsensus4.staking.create_staking(0, address4, address4, amount=value) - assert_code(result, 0) - - log.info("The next periods") - client_noconsensus2.economic.wait_settlement(client_noconsensus2.node) - - log.info("The next consensus cycle") - client_noconsensus2.economic.wait_consensus(client_noconsensus2.node) - - validatorlist = get_pledge_list(client_noconsensus2.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist)) - log.info("node:{}".format(clients_consensus[3].node.node_id)) - assert client_consensus4.node.node_id in validatorlist - - -@pytest.mark.P2 -@pytest.mark.parametrize('status', [0, 1]) -def test_CS_CL_017_018_019(status, clients_new_node, clients_consensus): - """ - :param status: - :param global_test_env: - :param client_con_list_obj: - :param clients_noconsensus: - :return: - """ - client_noconsensus1 = clients_new_node[0] - client_noconsensus2 = clients_new_node[1] - client_consensus1 = clients_consensus[0] - client_consensus2 = clients_consensus[1] - client_consensus3 = clients_consensus[2] - client_consensus4 = clients_consensus[3] - - log.info("The next consensus cycle") - client_consensus1.economic.wait_consensus(client_consensus1.node, 1) - - validatorlist = get_pledge_list(client_consensus1.ppos.getValidatorList) - log.info("initial validatorlist:{}".format(validatorlist)) - blocknumber = client_consensus1.node.eth.blockNumber - log.info("The thrill of being reported{}".format(blocknumber)) - - log.info("To report the double sign") - report_information1 = mock_duplicate_sign(1, client_consensus1.node.nodekey, - client_consensus1.node.blsprikey, - blocknumber) - log.info("Report information: {}".format(report_information1)) - - address, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - result = client_consensus1.duplicatesign.reportDuplicateSign(1, report_information1, address) - log.info(result) - log.info("The next periods") - client_noconsensus2.economic.wait_settlement(client_noconsensus2.node) - validatorlist = get_pledge_list(client_consensus1.ppos.getValidatorList) - log.info("After being reported validatorlist:{}".format(validatorlist)) - - if status == 0: - address1, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - value = client_noconsensus1.economic.create_staking_limit * 2 - result = client_noconsensus1.staking.create_staking(0, address1, address1, amount=value) - assert_code(result, 0) - log.info("The next periods") - client_noconsensus2.economic.wait_settlement(client_noconsensus2.node) - log.info("The next consensus cycle") - client_noconsensus2.economic.wait_consensus(client_noconsensus2.node) - validatorlist = get_pledge_list(client_noconsensus2.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist)) - assert client_consensus2.node.node_id in validatorlist - assert client_consensus3.node.node_id in validatorlist - assert client_consensus4.node.node_id in validatorlist - assert client_noconsensus1.node.node_id in validatorlist - - if status == 1: - address1, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - value = client_noconsensus1.economic.create_staking_limit * 2 - result = client_noconsensus1.staking.create_staking(0, address1, address1, amount=value) - assert_code(result, 0) - - address2, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - value = client_noconsensus1.economic.create_staking_limit * 2 - result = client_noconsensus2.staking.create_staking(0, address2, address2, amount=value) - assert_code(result, 0) - - log.info("The next periods") - client_noconsensus2.economic.wait_settlement(client_noconsensus2.node) - log.info("The next consensus cycle") - client_noconsensus2.economic.wait_consensus(client_noconsensus2.node) - - validatorlist = get_pledge_list(client_noconsensus2.ppos.getValidatorList) - log.info("validatorlist:{}".format(validatorlist)) - assert client_consensus2.node.node_id in validatorlist - assert client_consensus3.node.node_id in validatorlist - assert client_consensus4.node.node_id in validatorlist - - -@pytest.mark.P2 -def test_CS_CL_027_028(clients_new_node): - client_noconsensus1 = clients_new_node[0] - client_noconsensus2 = clients_new_node[1] - - address1, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - address2, _ = client_noconsensus1.economic.account.generate_account(client_noconsensus1.node.web3, - 10 ** 18 * 10000000) - - result = client_noconsensus1.staking.create_staking(0, address1, address1, - amount=client_noconsensus1.economic.create_staking_limit * 2) - assert_code(result, 0) - - result = client_noconsensus2.staking.create_staking(0, address2, address2, - amount=client_noconsensus2.economic.create_staking_limit) - assert_code(result, 0) - - log.info("Next settlement period") - client_noconsensus2.economic.wait_settlement(client_noconsensus2.node) - msg = client_noconsensus2.ppos.getVerifierList() - log.info(msg) - verifierlist = get_pledge_list(client_noconsensus2.ppos.getVerifierList) - log.info("verifierlist:{}".format(verifierlist)) - assert client_noconsensus1.node.node_id in verifierlist - assert client_noconsensus2.node.node_id not in verifierlist - - -@pytest.mark.P2 -def test_CS_CL_033(clients_new_node): - client = clients_new_node[0] - address1, _ = client.economic.account.generate_account(client.node.web3, - 10 ** 18 * 10000000) - - value = client.economic.create_staking_limit * 2 - result = client.staking.create_staking(0, address1, address1, amount=value) - assert_code(result, 0) - - # Next settlement period - client.economic.wait_settlement(client.node) - # Next consensus period - client.economic.wait_consensus(client.node) - verifierlist = get_pledge_list(client.ppos.getVerifierList) - log.info("verifierlist:{}".format(verifierlist)) - assert client.node.node_id in verifierlist diff --git a/cases/tests/ppos_2/test_increase_staking.py b/cases/tests/ppos_2/test_increase_staking.py deleted file mode 100644 index 5a2ed3cbdc..0000000000 --- a/cases/tests/ppos_2/test_increase_staking.py +++ /dev/null @@ -1,319 +0,0 @@ -# -*- coding: utf-8 -*- -from tests.lib.utils import * -import pytest -import allure - - -@allure.title("Normal overweight") -@pytest.mark.P0 -def test_AS_001_002_009(client_new_node): - """ - 001:Normal overweight - 002:The verifier initiates the overweight with the amount of free account, meeting the minimum threshold - 009:Hesitation period add pledge, inquire pledge information - """ - StakeThreshold = get_governable_parameter_value(client_new_node, "StakeThreshold") - log.info(StakeThreshold) - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - result = client_new_node.staking.increase_staking(0, address) - assert_code(result, 0) - result = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_amount = client_new_node.economic.create_staking_limit - add_staking_amount = client_new_node.economic.add_staking_limit - assert result["Ret"]["Shares"] == staking_amount + add_staking_amount - - -@allure.title("The verifier is not on the verifier and candidate list") -@pytest.mark.P2 -def test_AS_003(client_new_node): - """ - :param client_new_node_obj: - :param get_generate_account: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.increase_staking(0, address) - log.info(result) - assert_code(result, 301102) - - -@allure.title("Undersupply of gas") -@pytest.mark.P3 -def test_AS_004(client_new_node): - """ - :param client_new_node_obj: - :param get_generate_account: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address, address) - fig = {"gas": 1} - status = 0 - try: - result = client_new_node.staking.increase_staking(0, address, transaction_cfg=fig) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@allure.title("Insufficient balance initiated overweight") -@pytest.mark.P3 -def test_AS_005(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - account = client_new_node.economic.account - node = client_new_node.node - address, _ = account.generate_account(node.web3, 10) - status = 0 - try: - result = client_new_node.staking.increase_staking(0, address) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@allure.title("(hesitation period) holdings less than the minimum threshold") -@pytest.mark.P1 -def test_AS_007(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address, address) - add_staking_amount = client_new_node.economic.add_staking_limit - result = client_new_node.staking.increase_staking(0, address, amount=add_staking_amount - 1) - log.info(result) - assert_code(result, 301104) - - -@allure.title("(hesitation period) when the verifier revoks the pledge, he/she shall apply for adding the pledge") -@pytest.mark.P1 -def test_AS_008(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address, address) - log.info("进入下个周期") - client_new_node.economic.wait_settlement(client_new_node.node) - client_new_node.staking.withdrew_staking(address) - result = client_new_node.staking.increase_staking(0, address) - log.info(result) - assert_code(result, 301103) - - -@allure.title("(lockup period) normal increase") -@pytest.mark.P0 -@pytest.mark.compatibility -def test_AS_011_012_013_014(client_new_node): - """ - 011:(lockup period) normal increase - 012:(lockup period) overweight meets the minimum threshold - 013:(lock-up period) gas underinitiation overweight - 014:(lockup period) insufficient balance to initiate overweight pledge - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address, address) - log.info("进入下个周期") - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.staking.increase_staking(0, address) - log.info(result) - assert_code(result, 0) - result = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - log.info(result) - staking_amount = client_new_node.economic.create_staking_limit - add_staking_amount = client_new_node.economic.add_staking_limit - assert result["Ret"]["Shares"] == staking_amount + add_staking_amount - assert result["Ret"]["Released"] == staking_amount - assert result["Ret"]["ReleasedHes"] == add_staking_amount - fig = {"gas": 1} - status = 0 - try: - result = client_new_node.staking.increase_staking(0, address, transaction_cfg=fig) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - account = client_new_node.economic.account - node = client_new_node.node - address, _ = account.generate_account(node.web3, 10) - status = 0 - try: - result = client_new_node.staking.increase_staking(0, address, address) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@allure.title("The free amount is insufficient, the lock position is sufficient, and the free amount is added") -@pytest.mark.P1 -def test_AS_015(client_new_node): - """ - :param client_new_node_obj: - :param get_generate_account: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - log.info(result) - node = client_new_node.node - amount = node.eth.getBalance(address) - log.info("Wallet balance{}".format(amount)) - locked_amount = amount - node.web3.toWei(1, "ether") - - plan = [{'Epoch': 1, 'Amount': locked_amount}] - log.info("The balance of the wallet is used as a lock") - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - log.info(result) - amount = node.eth.getBalance(address) - log.info("Check your wallet balance{}".format(amount)) - result = client_new_node.staking.increase_staking(0, address) - assert_code(result, 301111) - - -@allure.title("The free amount is insufficient, the lock position is sufficient, and the free amount is added") -@pytest.mark.P1 -def test_AS_016(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - log.info(result) - node = client_new_node.node - amount = node.eth.getBalance(address) - log.info("Wallet balance{}".format(amount)) - locked_amount = 100000000000000000000 - plan = [{'Epoch': 1, 'Amount': locked_amount}] - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - log.info(result) - assert_code(result, 0) - value = 101000000000000000000 - result = client_new_node.staking.increase_staking(1, address, amount=value) - log.info(result) - assert_code(result, 304013) - - -@allure.title("The amount of the increase is less than the threshold") -@pytest.mark.P1 -def test_AS_017(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - log.info(result) - add_staking_amount = client_new_node.economic.add_staking_limit - result = client_new_node.staking.increase_staking(0, address, amount=add_staking_amount - 1) - log.info(result) - assert_code(result, 301104) - - -@allure.title("Increase the number of active withdrawal but still in the freeze period of the candidate") -@pytest.mark.P0 -def test_AS_018_019(client_new_node): - """ - 018:Increase the number of active withdrawal but still in the freeze period of the candidate - 019:Candidates whose holdings have been actively withdrawn and who have passed the freeze period - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - log.info("Next settlement period") - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - result = client_new_node.staking.increase_staking(0, address) - log.info(result) - assert_code(result, 301103) - log.info("Next settlement period") - client_new_node.economic.wait_settlement(client_new_node.node, 2) - result = client_new_node.staking.increase_staking(0, address) - log.info(result) - assert_code(result, 301102) - - -@allure.title("Add to the list of candidates who have been penalized and are still in the freeze period") -@pytest.mark.P0 -def test_AS_020_021(clients_new_node, client_consensus): - """ - 020:Add to the list of candidates who have been penalized and are still in the freeze period - 021:A candidate whose holdings have been penalized has passed the freeze period - :param client_new_node_obj: - :return: - """ - client = clients_new_node[0] - node = client.node - other_node = client_consensus.node - economic = client.economic - address, pri_key = economic.account.generate_account(node.web3, 10 ** 18 * 10000000) - - value = economic.create_staking_limit - result = client.staking.create_staking(0, address, address, amount=value) - assert_code(result, 0) - economic.wait_consensus(other_node, 4) - validator_list = get_pledge_list(other_node.ppos.getValidatorList) - assert node.node_id in validator_list - candidate_info = other_node.ppos.getCandidateInfo(node.node_id) - log.info(candidate_info) - log.info("Close one node") - node.stop() - for i in range(4): - economic.wait_consensus(other_node, i) - candidate_info = other_node.ppos.getCandidateInfo(node.node_id) - log.info(candidate_info) - if candidate_info["Ret"]["Released"] < value: - break - log.info("Restart the node") - node.start() - time.sleep(10) - result = client.staking.increase_staking(0, address) - log.info(result) - assert_code(result, 301103) - log.info("Next settlement period") - economic.wait_settlement(node, 2) - result = client.staking.increase_staking(0, address) - assert_code(result, 301102) - - -@allure.title("Increase your holdings with a new wallet") -@pytest.mark.P3 -def test_AS_022(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - result = client_new_node.staking.increase_staking(0, address1) - log.info(result) - assert_code(result, 301006) diff --git a/cases/tests/ppos_2/test_parameters_proposal.py b/cases/tests/ppos_2/test_parameters_proposal.py deleted file mode 100644 index 81420ba59c..0000000000 --- a/cases/tests/ppos_2/test_parameters_proposal.py +++ /dev/null @@ -1,783 +0,0 @@ -# -*- coding: utf-8 -*- -from tests.conftest import param_governance_verify_before_endblock -from tests.lib.utils import * -import pytest -from dacite import from_dict -from common.log import log -from tests.lib import Genesis - - -@pytest.mark.P2 -def test_POP_001_003(client_consensus, client_new_node): - """ - Increase the threshold of pledge - :param client_consensus: - :param get_generate_account: - :param client_new_node: - :return: - """ - client_consensus.economic.env.deploy_all() - old_amount = client_consensus.economic.create_staking_limit - new_amount = old_amount + client_consensus.node.web3.toWei(1, "ether") - block = param_governance_verify_before_endblock(client_consensus, "staking", "stakeThreshold", - str(new_amount)) - log.info(block) - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - wait_block_number(client_new_node.node, block) - result = client_new_node.staking.create_staking(0, address, address, amount=old_amount) - log.info(result) - assert_code(result, 301100) - result = client_new_node.staking.create_staking(0, address, address, amount=new_amount) - log.info(result) - assert_code(result, 0) - verifier_list = get_pledge_list(client_new_node.ppos.getVerifierList) - log.info(verifier_list) - client_new_node.economic.wait_settlement(client_new_node.node) - verifier_list = get_pledge_list(client_new_node.ppos.getVerifierList) - assert client_new_node.node.node_id in verifier_list - - -@pytest.mark.P2 -def test_POP_002(client_consensus, client_new_node, new_genesis_env): - """ - Minimum pledge reduced pledge threshold - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - - old_amount = client_consensus.economic.create_staking_limit + client_consensus.node.web3.toWei(2, "ether") - new_amount = client_consensus.economic.create_staking_limit + client_consensus.node.web3.toWei(1, "ether") - - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.stakeThreshold = old_amount - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - - block = param_governance_verify_before_endblock(client_consensus, "staking", "stakeThreshold", - str(new_amount)) - log.info(block) - wait_block_number(client_new_node.node, block) - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address, - amount=new_amount - client_consensus.node.web3.toWei(1, - "ether")) - log.info(result) - assert_code(result, 301100) - result = client_new_node.staking.create_staking(0, address, address, amount=new_amount) - log.info(result) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_POP_005(client_consensus, client_new_node): - """ - The amendment of the threshold of pledge shall not take effect - :param client_consensus: - :param get_generate_account: - :param client_new_node: - :return: - """ - client_consensus.economic.env.deploy_all() - old_amount = client_consensus.economic.create_staking_limit - new_amount = old_amount + client_consensus.node.web3.toWei(1, "ether") - - block = param_governance_verify_before_endblock(client_consensus, "staking", "stakeThreshold", - str(new_amount), effectiveflag=False) - log.info(block) - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - wait_block_number(client_new_node.node, block) - result = client_new_node.staking.create_staking(0, address, address, amount=old_amount) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_POP_006(client_consensus, client_new_node): - """ - (hesitation period) increase - entrustment overweight threshold - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - client_consensus.economic.env.deploy_all() - old_amount = client_consensus.economic.delegate_limit - new_amount = old_amount + client_consensus.node.web3.toWei(1, "ether") - - block = param_governance_verify_before_endblock(client_consensus, "staking", "operatingThreshold", - str(new_amount)) - log.info(block) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - wait_block_number(client_new_node.node, block) - result = client_new_node.staking.create_staking(0, address1, address1) - assert_code(result, 0) - address2, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address2, amount=old_amount) - assert_code(result, 301105) - result = client_new_node.delegate.delegate(0, address2, amount=new_amount) - assert_code(result, 0) - result = client_new_node.staking.increase_staking(0, address1, amount=old_amount) - assert_code(result, 301104) - result = client_new_node.staking.increase_staking(0, address1, amount=new_amount) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_POP_007(client_consensus, client_new_node): - """ - (lockup period) increase - entrustment overweight threshold - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - client_consensus.economic.env.deploy_all() - old_amount = client_consensus.economic.delegate_limit - new_amount = old_amount + client_consensus.node.web3.toWei(1, "ether") - - block = param_governance_verify_before_endblock(client_consensus, "staking", "operatingThreshold", - str(new_amount)) - log.info(block) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - wait_block_number(client_new_node.node, block) - result = client_new_node.staking.create_staking(0, address1, address1) - assert_code(result, 0) - address2, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.economic.wait_settlement(client_new_node.node) - - result = client_new_node.delegate.delegate(0, address2, amount=old_amount) - assert_code(result, 301105) - result = client_new_node.delegate.delegate(0, address2, amount=new_amount) - assert_code(result, 0) - result = client_new_node.staking.increase_staking(0, address1, amount=old_amount) - assert_code(result, 301104) - result = client_new_node.staking.increase_staking(0, address1, amount=new_amount) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_POP_008(client_consensus, client_new_node, new_genesis_env): - """ - (hesitation period) reduce the entrustment overweight threshold - test - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - - old_amount = client_consensus.economic.delegate_limit + client_consensus.node.web3.toWei(2, "ether") - new_amount = client_consensus.economic.delegate_limit + client_consensus.node.web3.toWei(1, "ether") - - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.operatingThreshold = old_amount - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - - block = param_governance_verify_before_endblock(client_consensus, "staking", "operatingThreshold", - str(new_amount)) - log.info(block) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - wait_block_number(client_new_node.node, block) - result = client_new_node.staking.create_staking(0, address1, address1) - assert_code(result, 0) - address2, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address2, - amount=new_amount - client_consensus.node.web3.toWei(1, "ether")) - assert_code(result, 301105) - result = client_new_node.delegate.delegate(0, address2, amount=new_amount) - assert_code(result, 0) - result = client_new_node.staking.increase_staking(0, address1, - amount=new_amount - client_consensus.node.web3.toWei(1, "ether")) - assert_code(result, 301104) - result = client_new_node.staking.increase_staking(0, address1, amount=new_amount) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_POP_009(client_consensus, client_new_node, new_genesis_env): - """ - (lockup period) reduce the entrustment increase threshold - test - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - old_amount = client_consensus.economic.delegate_limit + client_consensus.node.web3.toWei(2, "ether") - new_amount = client_consensus.economic.delegate_limit + client_consensus.node.web3.toWei(1, "ether") - - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.operatingThreshold = old_amount - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - - block = param_governance_verify_before_endblock(client_consensus, "staking", "operatingThreshold", - str(new_amount)) - log.info(block) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - wait_block_number(client_new_node.node, block) - result = client_new_node.staking.create_staking(0, address1, address1) - assert_code(result, 0) - address2, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - log.info("The next cycle") - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.delegate.delegate(0, address2, - amount=new_amount - client_consensus.node.web3.toWei(1, "ether")) - assert_code(result, 301105) - result = client_new_node.delegate.delegate(0, address2, amount=new_amount) - assert_code(result, 0) - result = client_new_node.staking.increase_staking(0, address1, - amount=new_amount - client_consensus.node.web3.toWei(1, "ether")) - assert_code(result, 301104) - result = client_new_node.staking.increase_staking(0, address1, amount=new_amount) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_POP_010_011(client_consensus, client_new_node): - """ - (hesitation period, lockup period) free amount initiate revocation entrustment - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - client_consensus.economic.env.deploy_all() - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address_delegate_1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address1, address1) - assert_code(result, 0) - delegate_amount = client_consensus.economic.delegate_limit + client_consensus.node.web3.toWei(40, "ether") - log.info("Entrust the sum{}".format(delegate_amount)) - result = client_new_node.delegate.delegate(0, address_delegate_1, amount=delegate_amount) - assert_code(result, 0) - amount1_before = client_new_node.node.eth.getBalance(address_delegate_1) - log.info("The wallet balance:{}".format(amount1_before)) - parameters_amount = client_consensus.economic.delegate_limit + client_consensus.node.web3.toWei(10, "ether") - - block = param_governance_verify_before_endblock(client_consensus, "staking", "operatingThreshold", - str(parameters_amount)) - log.info("The value of the proposal parameters{}".format(parameters_amount)) - wait_block_number(client_new_node.node, block) - log.info("The delegate is initiated after the parameter takes effect") - address_delegate_2, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address_delegate_2, amount=delegate_amount) - assert_code(result, 0) - amount2_before = client_new_node.node.eth.getBalance(address_delegate_1) - log.info("The wallet balance:{}".format(amount2_before)) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - withdrew_delegate_amount = delegate_amount - parameters_amount + client_consensus.node.web3.toWei(1, "ether") - - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address_delegate_1, - amount=withdrew_delegate_amount) - assert_code(result, 0) - amount1_after = client_new_node.node.eth.getBalance(address_delegate_1) - log.info("The wallet balance:{}".format(amount1_after)) - assert amount1_before - amount1_after < client_new_node.node.web3.toWei(1, "ether") - - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address_delegate_2, - amount=withdrew_delegate_amount) - assert_code(result, 0) - amount2_after = client_new_node.node.eth.getBalance(address_delegate_1) - log.info("The wallet balance:{}".format(amount2_after)) - assert amount1_before - amount1_after < client_new_node.node.web3.toWei(1, "ether") - - -@pytest.mark.P2 -def test_POP_012(client_consensus, client_new_node): - """ - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - - client_consensus.economic.env.deploy_all() - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - - assert_code(result, 0) - address_delegate, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - delegate_amount = client_consensus.economic.delegate_limit + client_consensus.node.web3.toWei(20, "ether") - - log.info("Own funds to initiate the commission") - result = client_new_node.delegate.delegate(0, address_delegate, amount=delegate_amount) - assert_code(result, 0) - - parameters_amount = client_consensus.economic.delegate_limit + \ - client_consensus.node.web3.toWei(10, "ether") - block = param_governance_verify_before_endblock(client_consensus, "staking", "operatingThreshold", - str(parameters_amount)) - wait_block_number(client_new_node.node, block) - - plan = [{'Epoch': 1, 'Amount': delegate_amount}] - result = client_new_node.restricting.createRestrictingPlan(address_delegate, plan, address_delegate) - assert_code(result, 0) - - log.info("Fund of lockup is initiated and entrusted") - result = client_new_node.delegate.delegate(1, address_delegate, amount=delegate_amount) - assert_code(result, 0) - amount_before = client_new_node.node.eth.getBalance(address_delegate) - log.info("The wallet balance:{}".format(amount_before)) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - withdrew_delegate = delegate_amount * 2 - parameters_amount + \ - client_consensus.node.web3.toWei(1, "ether") - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address_delegate, - amount=withdrew_delegate) - assert_code(result, 0) - amount1_after = client_new_node.node.eth.getBalance(address_delegate) - log.info("The wallet balance:{}".format(amount1_after)) - amount_dill = amount1_after - amount_before - assert delegate_amount - amount_dill < client_new_node.node.web3.toWei(1, "ether") - client_new_node.economic.wait_settlement(client_new_node.node) - - amount1_last = client_new_node.node.eth.getBalance(address_delegate) - log.info("The wallet balance:{}".format(amount1_last)) - assert amount1_last - amount1_after == delegate_amount - assert delegate_amount * 2 - (amount1_last - amount_before) < client_new_node.node.web3.toWei(1, "ether") - - -@pytest.mark.P2 -def test_POP_013(client_consensus, client_new_node, new_genesis_env): - """ - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - old_amount = client_consensus.economic.delegate_limit * 2 - new_amount = client_consensus.economic.delegate_limit - genesis.economicModel.staking.operatingThreshold = old_amount - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - - block = param_governance_verify_before_endblock(client_consensus, "staking", "operatingThreshold", - str(new_amount), effectiveflag=False) - log.info(block) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - wait_block_number(client_new_node.node, block) - result = client_new_node.staking.create_staking(0, address1, address1) - assert_code(result, 0) - - address2, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address2, amount=new_amount) - log.info(result) - assert_code(result, 301105) - result = client_new_node.delegate.delegate(0, address2, amount=old_amount) - assert_code(result, 0) - result = client_new_node.staking.increase_staking(0, address1, amount=new_amount) - assert_code(result, 301104) - result = client_new_node.staking.increase_staking(0, address1, amount=old_amount) - assert_code(result, 0) - - -@pytest.mark.P2 -def test_POP_014(client_consensus, client_new_node): - """ - Parameter not in effect - initiate redemption - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - client_consensus.economic.env.deploy_all() - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address_delegate_1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address1, address1) - assert_code(result, 0) - delegate_amount = client_consensus.economic.delegate_limit + client_consensus.node.web3.toWei(20, "ether") - log.info("Amount entrusted{}".format(delegate_amount)) - - result = client_new_node.delegate.delegate(0, address_delegate_1, amount=delegate_amount) - assert_code(result, 0) - amount1_before = client_new_node.node.eth.getBalance(address_delegate_1) - log.info("The wallet balance:{}".format(amount1_before)) - param_amount = client_consensus.economic.delegate_limit + client_consensus.node.web3.toWei(10, "ether") - - block = param_governance_verify_before_endblock(client_consensus, "staking", "operatingThreshold", - str(param_amount), effectiveflag=False) - wait_block_number(client_new_node.node, block) - log.info("The delegate is initiated after the parameter takes effect") - address_delegate_2, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address_delegate_2, amount=delegate_amount) - assert_code(result, 0) - amount2_before = client_new_node.node.eth.getBalance(address_delegate_1) - log.info("The wallet balance:{}".format(amount2_before)) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - withdrew_delegate = delegate_amount - param_amount + client_consensus.node.web3.toWei(1, "ether") - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address_delegate_1, - amount=withdrew_delegate) - assert_code(result, 0) - amount1_after = client_new_node.node.eth.getBalance(address_delegate_1) - log.info("The wallet balance:{}".format(amount1_after)) - amount1_dill = amount1_after - amount1_before - assert withdrew_delegate - amount1_dill < client_new_node.node.web3.toWei(1, "ether") - - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address_delegate_2, - amount=withdrew_delegate) - assert_code(result, 0) - amount2_after = client_new_node.node.eth.getBalance(address_delegate_2) - log.info("The wallet balance:{}".format(amount2_after)) - amount1_dill = amount2_after - amount2_before - assert withdrew_delegate - amount1_dill < client_new_node.node.web3.toWei(1, "ether") - - -@pytest.mark.P2 -def test_POP_015(client_consensus, clients_noconsensus, new_genesis_env): - """ - Increase the number of alternative nodes - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.maxValidators = 5 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client1 = clients_noconsensus[0] - client2 = clients_noconsensus[1] - address, _ = client1.economic.account.generate_account(client1.node.web3, - 10 ** 18 * 10000000) - staking_amount = client1.economic.create_staking_limit - result = client1.staking.create_staking(0, address, address, amount=staking_amount * 2) - assert_code(result, 0) - param = 6 - block = param_governance_verify_before_endblock(client_consensus, "staking", "maxValidators", - str(param)) - wait_block_number(client2.node, block) - address1, _ = client2.economic.account.generate_account(client2.node.web3, - 10 ** 18 * 10000000) - result = client2.staking.create_staking(0, address1, address1, amount=staking_amount * 3) - assert_code(result, 0) - - client2.economic.wait_settlement(client2.node) - getVerifierList = get_pledge_list(client2.node.ppos.getVerifierList) - log.info(getVerifierList) - assert len(getVerifierList) == 6 - node_id_1 = client1.node.node_id - node_id_2 = client2.node.node_id - assert node_id_1 in getVerifierList - assert node_id_2 in getVerifierList - - -@pytest.mark.P2 -def test_POP_016(client_consensus, clients_noconsensus, new_genesis_env): - """ - Reduce the number of alternative nodes - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.maxValidators = 6 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client1 = clients_noconsensus[0] - client2 = clients_noconsensus[1] - param = 5 - block = param_governance_verify_before_endblock(client_consensus, "staking", "maxValidators", - str(param)) - wait_block_number(client2.node, block) - address, _ = client1.economic.account.generate_account(client1.node.web3, - 10 ** 18 * 10000000) - staking_amount = client1.economic.create_staking_limit - result = client1.staking.create_staking(0, address, address, amount=staking_amount * 2) - assert_code(result, 0) - address1, _ = client2.economic.account.generate_account(client2.node.web3, - 10 ** 18 * 10000000) - result = client2.staking.create_staking(0, address1, address1, amount=staking_amount * 3) - assert_code(result, 0) - - client2.economic.wait_settlement(client2.node) - getVerifierList = get_pledge_list(client2.node.ppos.getVerifierList) - log.info(getVerifierList) - assert len(getVerifierList) == 5 - - -@pytest.mark.P2 -def test_POP_017(client_consensus, clients_noconsensus, new_genesis_env): - """ - Increase the number of node candidates - not active - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.maxValidators = 5 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - param = 6 - block = param_governance_verify_before_endblock(client_consensus, "staking", "maxValidators", - str(param), effectiveflag=False) - client1 = clients_noconsensus[0] - client2 = clients_noconsensus[1] - wait_block_number(client2.node, block) - address, _ = client1.economic.account.generate_account(client1.node.web3, - 10 ** 18 * 10000000) - staking_amount = client1.economic.create_staking_limit - result = client1.staking.create_staking(0, address, address, amount=staking_amount * 2) - assert_code(result, 0) - address1, _ = client2.economic.account.generate_account(client2.node.web3, - 10 ** 18 * 10000000) - result = client2.staking.create_staking(0, address1, address1, amount=staking_amount * 3) - assert_code(result, 0) - - client2.economic.wait_settlement(client2.node) - getVerifierList = get_pledge_list(client2.node.ppos.getVerifierList) - log.info(getVerifierList) - assert len(getVerifierList) == 5 - - -@pytest.mark.P2 -def test_POP_018(client_consensus, clients_noconsensus, new_genesis_env): - """ - Reduce the number of node candidates - not in effect - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.staking.maxValidators = 6 - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - client1 = clients_noconsensus[0] - client2 = clients_noconsensus[1] - - address, _ = client1.economic.account.generate_account(client1.node.web3, - 10 ** 18 * 10000000) - staking_amount = client1.economic.create_staking_limit - - result = client1.staking.create_staking(0, address, address, amount=staking_amount * 2) - assert_code(result, 0) - param = 5 - block = param_governance_verify_before_endblock(client_consensus, "staking", "maxValidators", - str(param), effectiveflag=False) - wait_block_number(client2.node, block) - address1, _ = client2.economic.account.generate_account(client2.node.web3, - 10 ** 18 * 10000000) - result = client2.staking.create_staking(0, address1, address1, amount=staking_amount * 3) - assert_code(result, 0) - - client2.economic.wait_settlement(client2.node) - getVerifierList = get_pledge_list(client2.node.ppos.getVerifierList) - log.info(getVerifierList) - assert len(getVerifierList) == 6 - node_id_1 = client1.node.node_id - node_id_2 = client2.node.node_id - assert node_id_1 in getVerifierList - assert node_id_2 in getVerifierList - - -@pytest.mark.P2 -def test_POP_019(client_consensus, client_new_node, new_genesis_env): - """ - Increased lock - up threshold - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - new_genesis_env.deploy_all() - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - param = 3 - block = param_governance_verify_before_endblock(client_consensus, "staking", "unStakeFreezeDuration", - str(param)) - wait_block_number(client_new_node.node, block) - - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - client_new_node.economic.wait_settlement(client_new_node.node, 2) - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - client_new_node.economic.wait_settlement(client_new_node.node) - amount3 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount3)) - staking_amount = client_new_node.economic.create_staking_limit - assert amount3 - amount2 == staking_amount - - -@pytest.mark.P2 -def test_POP_020(client_consensus, client_new_node, new_genesis_env): - """ - Reduce lock - up threshold - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - unStakeFreezeDuration = 3 - genesis.economicModel.staking.unStakeFreezeDuration = unStakeFreezeDuration - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - param = 2 - block = param_governance_verify_before_endblock(client_consensus, "staking", "unStakeFreezeDuration", - str(param)) - wait_block_number(client_new_node.node, block) - - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - client_new_node.economic.wait_settlement(client_new_node.node, 1) - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - client_new_node.economic.wait_settlement(client_new_node.node) - amount3 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount3)) - staking_amount = client_new_node.economic.create_staking_limit - assert amount3 - amount2 == staking_amount - - -@pytest.mark.P2 -def test_POP_021(client_consensus, client_new_node, new_genesis_env): - """ - Increased lock - time threshold - not in effect - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - unStakeFreezeDuration = 2 - genesis.economicModel.staking.unStakeFreezeDuration = unStakeFreezeDuration - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - - param = 3 - block = param_governance_verify_before_endblock(client_consensus, "staking", "unStakeFreezeDuration", - str(param), effectiveflag=False) - wait_block_number(client_new_node.node, block) - - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - client_new_node.economic.wait_settlement(client_new_node.node, 1) - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - client_new_node.economic.wait_settlement(client_new_node.node) - amount3 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount3)) - staking_amount = client_new_node.economic.create_staking_limit - assert amount3 - amount2 == staking_amount - - -@pytest.mark.P2 -def test_POP_022(client_consensus, client_new_node, new_genesis_env): - """ - Reduced lockup threshold - not in effect - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - unStakeFreezeDuration = 3 - genesis.economicModel.staking.unStakeFreezeDuration = unStakeFreezeDuration - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - param = 2 - block = param_governance_verify_before_endblock(client_consensus, "staking", "unStakeFreezeDuration", - str(param), effectiveflag=False) - wait_block_number(client_new_node.node, block) - - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - client_new_node.economic.wait_settlement(client_new_node.node, 2) - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - client_new_node.economic.wait_settlement(client_new_node.node) - amount3 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount3)) - staking_amount = client_new_node.economic.create_staking_limit - assert amount3 - amount2 == staking_amount - - -@pytest.mark.P2 -def test_POP_023(client_consensus, client_new_node, new_genesis_env): - """ - Return pledge before lock time parameter takes effect - :param client_consensus: - :param client_new_node: - :param new_genesis_env: - :return: - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - unStakeFreezeDuration = 2 - genesis.economicModel.staking.unStakeFreezeDuration = unStakeFreezeDuration - new_genesis_env.set_genesis(genesis.to_dict()) - new_genesis_env.deploy_all() - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - log.info("Next settlement period") - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - log.info("Withdraw pledge before parameter takes effect") - param = 3 - block = param_governance_verify_before_endblock(client_consensus, "staking", "unStakeFreezeDuration", - str(param)) - wait_block_number(client_new_node.node, block) - - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - client_new_node.economic.wait_settlement(client_new_node.node) - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - staking_amount = client_new_node.economic.create_staking_limit - assert amount2 - amount1 == staking_amount diff --git a/cases/tests/ppos_2/test_staking.py b/cases/tests/ppos_2/test_staking.py deleted file mode 100644 index 0856910b63..0000000000 --- a/cases/tests/ppos_2/test_staking.py +++ /dev/null @@ -1,360 +0,0 @@ -# -*- coding: utf-8 -*- -from tests.lib.utils import * -import pytest -from tests.lib.config import EconomicConfig -import allure - - -@allure.title("Verify the validity of human parameters") -@pytest.mark.P1 -def test_IV_001_002_010(global_test_env, client_consensus): - """ - 001:Verify the validity of human parameters - 002:The built-in account is found with the verifier list query - 010:The initial number of nodes is consistent with the number of verifier consensus nodes set - """ - global_test_env.deploy_all() - node_info = client_consensus.ppos.getValidatorList() - log.info(node_info) - nodeid_list = [] - for node in node_info.get("Ret"): - nodeid_list.append(node.get("NodeId")) - StakingAddress = node.get("StakingAddress") - log.info(StakingAddress) - assert client_consensus.node.web3.toChecksumAddress(StakingAddress) == \ - client_consensus.economic.cfg.DEVELOPER_FOUNDATAION_ADDRESS - log.info(nodeid_list) - consensus_node_list = global_test_env.consensus_node_list - nodeid_list_ = [node.node_id for node in consensus_node_list] - log.info(nodeid_list_) - assert len(nodeid_list_) == len(consensus_node_list) - for nodeid in nodeid_list_: - assert nodeid in nodeid_list - - -@allure.title("Verify the validity of human parameters") -@pytest.mark.P1 -def test_IV_003(client_consensus): - StakingAddress = EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS - result = client_consensus.staking.create_staking(0, StakingAddress, StakingAddress) - log.info("Staking result:{}".format(result)) - assert_code(result, 301101) - - -@allure.title("The initial verifier accepts the delegate") -@pytest.mark.P1 -def test_IV_004(client_consensus): - address, _ = client_consensus.economic.account.generate_account(client_consensus.node.web3, - 10 ** 18 * 10000000) - result = client_consensus.delegate.delegate(0, address) - log.info(result) - assert_code(result, 301107) - - -@allure.title("The initial verifier holds an additional pledge") -@pytest.mark.P1 -def test_IV_005(client_consensus): - StakingAddress = EconomicConfig.DEVELOPER_FOUNDATAION_ADDRESS - result = client_consensus.staking.increase_staking(0, StakingAddress) - assert_code(result, 0) - - -@allure.title("Initial verifier exits") -@pytest.mark.P1 -def test_IV_006_007_008(client_consensus): - """ - 006:Initial verifier exits - 007:The original verifier exits and re-pledges the pledge - 008:After the initial verifier quits, re-pledge and accept the entrustment - """ - StakingAddress = client_consensus.economic.cfg.DEVELOPER_FOUNDATAION_ADDRESS - result = client_consensus.staking.withdrew_staking(StakingAddress) - log.info(result) - result = client_consensus.ppos.getCandidateInfo(client_consensus.node.node_id) - log.info(result) - log.info("Let's go to the next three cycles") - client_consensus.economic.wait_settlement(client_consensus.node, 2) - msg = client_consensus.ppos.getCandidateInfo(client_consensus.node.node_id) - log.info(msg) - assert msg["Code"] == 301204, "预期验证人已退出" - result = client_consensus.staking.create_staking(0, StakingAddress, StakingAddress) - assert_code(result, 0) - address, _ = client_consensus.economic.account.generate_account(client_consensus.node.web3, - 10 ** 18 * 10000000) - result = client_consensus.delegate.delegate(0, address) - log.info(result) - assert_code(result, 0) - - -@allure.title("Modify the initial verifier information") -@pytest.mark.P3 -def test_IV_009(client_consensus): - address1, _ = client_consensus.economic.account.generate_account(client_consensus.node.web3, - 10 ** 18 * 10000000) - StakingAddress = client_consensus.economic.cfg.DEVELOPER_FOUNDATAION_ADDRESS - result = client_consensus.staking.edit_candidate(StakingAddress, address1) - log.info(result) - assert_code(result, 0) - - -@allure.title("Normal pledge、Repeat pledge") -@pytest.mark.P1 -@pytest.mark.compatibility -def test_IV_014_015_019_024(client_new_node): - """ - 014:Normal pledge - 015:Repeat pledg - 019:The amount pledged by free account reaches the threshold of pledge - 024:Use the correct version signature - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - log.info("Generate address:{}".format(address)) - result = client_new_node.staking.create_staking(0, address, address) - log.info(result) - assert_code(result, 0) - result = client_new_node.staking.create_staking(0, address, address) - log.info(result) - assert_code(result, 301101) - - -@allure.title("Node ID pledge not added to the chain") -@pytest.mark.P3 -def test_IV_016(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - illegal_nodeID = "7ee3276fd6b9c7864eb896310b5393324b6db785a2528c00cc28ca8c" \ - "3f86fc229a86f138b1f1c8e3a942204c03faeb40e3b22ab11b8983c35dc025de42865990" - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address, node_id=illegal_nodeID) - log.info(result) - assert_code(result, 301003) - - -@allure.title("The beneficiary address is the excitation pool address") -@pytest.mark.P3 -def test_IV_017(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - INCENTPEPOOL_ADDRESS = EconomicConfig.INCENTIVEPOOL_ADDRESS - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, INCENTPEPOOL_ADDRESS, address) - assert_code(result, 0) - - -@allure.title("Beneficiary address is the foundation address") -@pytest.mark.P3 -def test_IV_018(client_new_node): - """ - :param client_new_node_obj: - :param get_generate_account: - :return: - """ - FOUNDATION_ADDRESS = client_new_node.economic.cfg.FOUNDATION_ADDRESS - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, FOUNDATION_ADDRESS, address) - assert_code(result, 0) - - -@allure.title("The amount pledged by free account is less than the threshold of pledge, and gas is insufficient") -@pytest.mark.P2 -def test_IV_020_21(client_new_node): - """ - 020:The amount pledged by free account is less than the threshold of pledge - 021:gas is insufficient - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - amount = client_new_node.economic.create_staking_limit - result = client_new_node.staking.create_staking(0, address, address, amount=amount - 1) - log.info(result) - assert_code(result, 301100) - cfg = {"gas": 1} - status = 0 - try: - result = client_new_node.staking.create_staking(0, address, address, transaction_cfg=cfg) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@allure.title("Incorrect version signature used") -@pytest.mark.P3 -def test_IV_025(client_new_node, client_consensus): - """ - :param client_new_node_obj: - :param client_consensus_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - program_version_sign = client_consensus.node.program_version_sign - result = client_new_node.staking.create_staking(0, address, address, program_version_sign=program_version_sign) - log.info(result) - assert_code(result, 301003) - - -@allure.title("BlsPublicKey is too long") -@pytest.mark.P2 -def test_IV_026_01(client_new_node): - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - blspubkey = client_new_node.node.blspubkey + "00000000" - log.info(blspubkey) - status = 0 - try: - result = client_new_node.staking.create_staking(0, address, address, bls_pubkey=blspubkey) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@allure.title("BlsPublicKey is too short") -@pytest.mark.P2 -def test_IV_026_02(client_new_node): - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - blspubkey = client_new_node.node.blspubkey[0:10] - log.info(blspubkey) - status = 0 - try: - result = client_new_node.staking.create_staking(0, address, address, bls_pubkey=blspubkey) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@allure.title("Incorrect version signature used") -@pytest.mark.P2 -def test_IV_026_03(client_new_node): - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - program_version = 0000 - result = client_new_node.staking.create_staking(0, address, address, program_version=program_version) - assert_code(result, 301003) - - -@allure.title("Field length overflow") -@pytest.mark.P2 -def test_IV_027(client_new_node): - external_id = "11111111111111111111111111111111111111111111111111111111111111111111111111111111111" - node_name = "1111111111111111111111111111111111111111111111111111111111111111111111111111111111111" - website = "1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 " - details = "1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 " - program_version = client_new_node.node.program_version - program_version_sign = client_new_node.node.program_version_sign - bls_pubkey = client_new_node.node.blspubkey - bls_proof = client_new_node.node.schnorr_NIZK_prove - amount = client_new_node.economic.create_staking_limit - address, pri_key = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - result = client_new_node.ppos.createStaking(0, address, client_new_node.node.node_id, - external_id, node_name, website, details, amount, - program_version, program_version_sign, bls_pubkey, bls_proof, - pri_key, reward_per=0) - assert_code(result, 301002) - - -@allure.title("Pledge has been made before and the candidate has been invalidated (penalized)") -@pytest.mark.P2 -def test_IV_028(clients_new_node, client_consensus): - client = clients_new_node[0] - node = client.node - other_node = client_consensus.node - economic = client.economic - address, pri_key = economic.account.generate_account(node.web3, client.economic.create_staking_limit * 2) - - # value = economic.create_staking_limit * 2 - result = client.staking.create_staking(0, address, address) - assert_code(result, 0) - economic.wait_consensus(other_node, 4) - validator_list = get_pledge_list(other_node.ppos.getValidatorList) - assert node.node_id in validator_list - log.info("Close one node") - node.stop() - for i in range(4): - economic.wait_consensus(other_node, i) - candidate_info = other_node.ppos.getCandidateInfo(node.node_id) - log.info(candidate_info) - if candidate_info["Ret"]["Released"] < client.economic.create_staking_limit: - break - log.info("Restart the node") - node.start() - result = client.staking.edit_candidate(address, address) - log.info(result) - assert_code(result, 301103) - log.info("Next settlement period") - economic.wait_settlement(node, 2) - result = client.staking.create_staking(0, address, address) - assert_code(result, 0) - - -@allure.title("Pledge has been made before, and the candidate is invalid (voluntarily withdraw)") -@pytest.mark.P1 -def test_IV_029(client_new_node): - """ - :param client_new_node_obj: - :param get_generate_account: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 2000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - result = client_new_node.staking.withdrew_staking(address) - log.info(result) - assert_code(result, 0) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - - -@allure.title("Lockup pledge") -@pytest.mark.P1 -def test_IV_030(client_new_node): - """ - :param client_new_node_obj: - :param get_generate_account: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - log.info("Into the next grandchild") - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.staking.withdrew_staking(address) - assert_code(result, 0) - result = client_new_node.staking.create_staking(0, address, address) - log.info(result) - assert_code(result, 301101) - - -@allure.title("Use a new wallet as pledge") -@pytest.mark.P2 -def test_IV_031(client_new_node): - """ - :param client_new_node_obj: - :param get_generate_account: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address1, address1) - log.info(result) - assert_code(result, 301101) diff --git a/cases/tests/ppos_2/test_withdrewDelegate.py b/cases/tests/ppos_2/test_withdrewDelegate.py deleted file mode 100644 index c2d875493f..0000000000 --- a/cases/tests/ppos_2/test_withdrewDelegate.py +++ /dev/null @@ -1,850 +0,0 @@ -# -*- coding: utf-8 -*- -from tests.lib.utils import * -import pytest -from tests.lib.config import EconomicConfig - - -@pytest.mark.P0 -@pytest.mark.compatibility -def test_ROE_001_007_015(client_new_node): - """ - :param client_new_node_obj: - :param get_generate_account: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address, address) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address1) - assert_code(result, 0) - - -@pytest.mark.P1 -def test_ROE_002(client_new_node): - """ - :param client_new_node_obj: - :param get_generate_account: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address, address) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - cfg = {"gas": 1} - status = 0 - try: - client_new_node.delegate.withdrew_delegate(staking_blocknum, address1, transaction_cfg=cfg) - except BaseException: - status = 1 - assert status == 1 - - -@pytest.mark.P3 -def test_ROE_003(client_new_node): - """ - :param client_new_node_obj: - :param get_generate_account: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address, address) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - illegal_nodeID = "7ee3276fd6b9c7864eb896310b5393324b6db785a2528c00cc28ca8c" \ - "3f86fc229a86f138b1f1c8e3a942204c03faeb40e3b22ab11b8983c35dc025de42865990" - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address1, node_id=illegal_nodeID) - log.info(result) - assert_code(result, 301109) - - -@pytest.mark.P1 -def test_ROE_004(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address, address) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address1, - amount=client_new_node.economic.delegate_limit + 1) - assert_code(result, 301113) - - -@pytest.mark.P1 -def test_ROE_005_018(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address, address) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - # Return a pledge - client_new_node.staking.withdrew_staking(address) - - # The next two cycle - client_new_node.economic.wait_settlement(client_new_node.node, 2) - amount1 = client_new_node.node.eth.getBalance(address1) - log.info("The wallet balance:{}".format(amount1)) - - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address1) - assert_code(result, 0) - amount2 = client_new_node.node.eth.getBalance(address1) - log.info("The wallet balance:{}".format(amount2)) - delegate_limit = client_new_node.economic.delegate_limit - assert delegate_limit - (amount2 - amount1) < client_new_node.node.web3.toWei(1, "ether") - - -@pytest.mark.P1 -def test_ROE_006_008(client_new_node): - """ - - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address, address) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - value = client_new_node.economic.delegate_limit * 3 - result = client_new_node.delegate.delegate(0, address1, amount=value) - log.info(result) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - value = client_new_node.economic.delegate_limit * 2 - amount1 = client_new_node.node.eth.getBalance(address1) - log.info("The wallet balance:{}".format(amount1)) - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address1, amount=value) - assert_code(result, 0) - amount2 = client_new_node.node.eth.getBalance(address1) - log.info("The wallet balance:{}".format(amount2)) - - -@pytest.mark.P1 -def test_ROE_010(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - client_new_node.economic.env.deploy_all() - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - lockup_amount = client_new_node.node.web3.toWei(1000, "ether") - plan = [{'Epoch': 1, 'Amount': lockup_amount}] - # Create a lock plan - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - log.info(result) - assert_code(result, 0) - msg = client_new_node.ppos.getRestrictingInfo(address) - log.info(msg) - # create staking - address_staking, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address_staking, address_staking) - - delegate_amount = client_new_node.node.web3.toWei(500, "ether") - # Lock account authorization - result = client_new_node.delegate.delegate(1, address, amount=delegate_amount) - log.info(result) - # Own capital account entrustment - result = client_new_node.delegate.delegate(0, address, amount=delegate_amount) - log.info(result) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - - undelegate_amount = client_new_node.node.web3.toWei(300, "ether") - log.info("The amount of redemption is greater than the entrustment of the free account") - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address, amount=undelegate_amount) - assert_code(result, 0) - - msg = client_new_node.ppos.getDelegateInfo(staking_blocknum, address, client_new_node.node.node_id) - log.info(msg) - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - assert undelegate_amount - (amount2 - amount1) < client_new_node.node.web3.toWei(1, "ether") - - -@pytest.mark.P1 -def test_ROE_011(client_new_node): - """ - - :param client_new_node_obj: - :return: - """ - client_new_node.economic.env.deploy_all() - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - lockup_amount = client_new_node.node.web3.toWei(1000, "ether") - plan = [{'Epoch': 1, 'Amount': lockup_amount}] - # Create a lock plan - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - log.info(result) - assert_code(result, 0) - msg = client_new_node.ppos.getRestrictingInfo(address) - log.info(msg) - # create staking - address_staking, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address_staking, address_staking) - - delegate_amount = client_new_node.node.web3.toWei(500, "ether") - # Lock account authorization - result = client_new_node.delegate.delegate(1, address, amount=delegate_amount) - log.info(result) - # Own capital account entrustment - result = client_new_node.delegate.delegate(0, address, amount=delegate_amount) - log.info(result) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - - undelegate_amount = client_new_node.node.web3.toWei(700, "ether") - log.info("The amount of redemption is greater than the entrustment of the free account") - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address, amount=undelegate_amount) - assert_code(result, 0) - - msg = client_new_node.ppos.getDelegateInfo(staking_blocknum, address, client_new_node.node.node_id) - log.info(msg) - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - assert delegate_amount - (amount2 - amount1) < client_new_node.node.web3.toWei(1, "ether") - # The next cycle - client_new_node.economic.wait_settlement(client_new_node.node) - locked_delegate = delegate_amount - (undelegate_amount - delegate_amount) - msg = client_new_node.ppos.getRestrictingInfo(address) - log.info(msg) - # The remaining entrusted amount - assert msg["Ret"]["Pledge"] == locked_delegate - amount3 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount3)) - assert amount3 - amount2 == lockup_amount - msg["Ret"]["debt"] - - -@pytest.mark.P1 -def test_ROE_012(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - # create staking - clinet = client_new_node - economic = clinet.economic - node = clinet.node - address_staking, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - address, _ = economic.account.generate_account(node.web3, economic.delegate_limit * 100) - result = clinet.staking.create_staking(0, address_staking, address_staking) - assert_code(result, 0) - delegate_amount = economic.delegate_limit * 50 - result = clinet.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - amount1 = node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - msg = clinet.ppos.getCandidateInfo(node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - # After redemptive balance is less than the threshold that entrusts gold, redeem completely - undelegate_amount = node.web3.toWei(49.9, 'ether') - result = clinet.delegate.withdrew_delegate(staking_blocknum, address, amount=undelegate_amount) - assert_code(result, 0) - time.sleep(2) - amount2 = node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - result = clinet.ppos.getDelegateInfo(staking_blocknum, address, node.node_id) - assert_code(result, 301205) - assert amount1 + delegate_amount - amount2 < client_new_node.node.web3.toWei(1, "ether") - - -@pytest.mark.P1 -def test_ROE_014(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - client = client_new_node - economic = client.economic - node = client.node - address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit) - lockup_amount = economic.delegate_limit * 1000 - plan = [{'Epoch': 1, 'Amount': lockup_amount}] - # Create a lock plan - result = client.restricting.createRestrictingPlan(address, plan, address) - assert_code(result, 0) - msg = client_new_node.ppos.getRestrictingInfo(address) - log.info(msg) - # create staking - address_staking, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - result = client.staking.create_staking(0, address_staking, address_staking) - assert_code(result, 0) - delegate_amount = economic.delegate_limit * 100 - # Lock account authorization - result = client.delegate.delegate(1, address, amount=delegate_amount) - assert_code(result, 0) - # Own capital account entrustment - result = client.delegate.delegate(0, address, amount=delegate_amount) - assert_code(result, 0) - - msg = client.ppos.getCandidateInfo(node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - undelegate_amount = client_new_node.node.web3.toWei(199.1, "ether") - amount1 = node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - - result = client.delegate.withdrew_delegate(staking_blocknum, address, amount=undelegate_amount) - assert_code(result, 0) - - result = client.ppos.getDelegateInfo(staking_blocknum, address, node.node_id) - assert_code(result, 301205) - - amount2 = client.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - assert amount1 + delegate_amount - amount2 < node.web3.toWei(1, "ether") - # - # economic.wait_settlement(client_new_node.node) - # amount3 = client_new_node.node.eth.getBalance(address) - # log.info("The wallet balance:{}".format(amount3)) - # assert amount3 - amount2 == delegate_amount - - -@pytest.mark.P1 -def test_ROE_017(client_new_node): - """ - - :param client_new_node_obj: - :return: - """ - client_new_node.economic.env.deploy_all() - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - lockup_amount = client_new_node.node.web3.toWei(500, "ether") - plan = [{'Epoch': 1, 'Amount': lockup_amount}] - # Create a lock plan - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - log.info(result) - assert_code(result, 0) - msg = client_new_node.ppos.getRestrictingInfo(address) - log.info(msg) - # create staking - address_staking, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address_staking, address_staking) - - delegate_amount = client_new_node.node.web3.toWei(500, "ether") - # Lock account authorization - result = client_new_node.delegate.delegate(1, address, amount=delegate_amount) - log.info(result) - # Own capital account entrustment - result = client_new_node.delegate.delegate(0, address, amount=delegate_amount) - log.info(result) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - # Redemptive amount is equal to free account + the entrustment gold of lock storehouse - - undelegate_amount = client_new_node.node.web3.toWei(1000, "ether") - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address, amount=undelegate_amount) - assert_code(result, 0) - - msg = client_new_node.ppos.getDelegateInfo(staking_blocknum, address, client_new_node.node.node_id) - log.info(msg) - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - assert delegate_amount - (amount2 - amount1) < client_new_node.node.web3.toWei(1, "ether") - - client_new_node.economic.wait_settlement(client_new_node.node) - - msg = client_new_node.ppos.getRestrictingInfo(address) - log.info(msg) - amount3 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount3)) - assert amount3 - amount2 == delegate_amount - - -@pytest.mark.P1 -def test_ROE_019_021(client_new_node): - """ - - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address, address) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - value = client_new_node.economic.delegate_limit * 3 - result = client_new_node.delegate.delegate(0, address1, amount=value) - log.info(result) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - value = client_new_node.economic.delegate_limit * 2 - amount1 = client_new_node.node.eth.getBalance(address1) - log.info("The wallet balance:{}".format(amount1)) - - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address1, amount=value) - assert_code(result, 0) - amount2 = client_new_node.node.eth.getBalance(address1) - log.info("The wallet balance:{}".format(amount2)) - assert value - (amount2 - amount1) < client_new_node.node.web3.toWei(1, "ether") - - -@pytest.mark.P0 -def test_ROE_020(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address, address) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - - result = client_new_node.delegate.delegate(0, address1) - log.info(result) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - amount1 = client_new_node.node.eth.getBalance(address1) - log.info("The wallet balance:{}".format(amount1)) - - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address1) - assert_code(result, 0) - amount2 = client_new_node.node.eth.getBalance(address1) - log.info("The wallet balance:{}".format(amount2)) - delegate_limit = client_new_node.economic.delegate_limit - assert delegate_limit - (amount2 - amount1) < client_new_node.node.web3.toWei(1, "ether") - - -@pytest.mark.P1 -def test_ROE_024(client_new_node): - """ - - :param client_new_node_obj: - :return: - """ - client_new_node.economic.env.deploy_all() - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - lockup_amount = client_new_node.node.web3.toWei(1000, "ether") - plan = [{'Epoch': 2, 'Amount': lockup_amount}] - # Create a lock plan - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - log.info(result) - assert_code(result, 0) - msg = client_new_node.ppos.getRestrictingInfo(address) - log.info(msg) - # create staking - address_staking, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address_staking, address_staking) - - delegate_amount = client_new_node.node.web3.toWei(500, "ether") - # Lock account authorization - result = client_new_node.delegate.delegate(1, address, amount=delegate_amount) - log.info(result) - # Own capital account entrustment - result = client_new_node.delegate.delegate(0, address, amount=delegate_amount) - log.info(result) - # The next cycle - client_new_node.economic.wait_settlement(client_new_node.node) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - - undelegate_amount = client_new_node.node.web3.toWei(700, "ether") - log.info("The amount of redemption is greater than the entrustment of the free account") - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address, amount=undelegate_amount) - assert_code(result, 0) - - msg = client_new_node.ppos.getDelegateInfo(staking_blocknum, address, client_new_node.node.node_id) - log.info(msg) - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - assert delegate_amount - (amount2 - amount1) < client_new_node.node.web3.toWei(1, "ether") - - # The next cycle - client_new_node.economic.wait_settlement(client_new_node.node) - locked_delegate = delegate_amount - (undelegate_amount - delegate_amount) - msg = client_new_node.ppos.getRestrictingInfo(address) - log.info(msg) - assert msg["Ret"]["Pledge"] == locked_delegate - amount3 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount3)) - assert amount3 - amount2 == lockup_amount - msg["Ret"]["debt"] - - -@pytest.mark.P1 -def test_ROE_028(client_new_node): - """ - :param client_new_node_bgj: - :return: - """ - # create staking - address_staking, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address_staking, address_staking) - delegate_amount = client_new_node.node.web3.toWei(500, "ether") - - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - # create delegate - result = client_new_node.delegate.delegate(0, address, amount=delegate_amount) - log.info(result) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - # The next cycle - client_new_node.economic.wait_settlement(client_new_node.node) - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address, amount=delegate_amount) - assert_code(result, 0) - - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - assert delegate_amount - (amount2 - amount1) < client_new_node.node.web3.toWei(1, "ether") - - -@pytest.mark.P1 -def test_ROE_030(client_new_node): - """ - - :param client_new_node_obj: - :return: - """ - client_new_node.economic.env.deploy_all() - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - lockup_amount = client_new_node.node.web3.toWei(500, "ether") - plan = [{'Epoch': 2, 'Amount': lockup_amount}] - # Create a lock plan - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - log.info(result) - assert_code(result, 0) - msg = client_new_node.ppos.getRestrictingInfo(address) - log.info(msg) - # create staking - address_staking, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address_staking, address_staking) - - delegate_amount = client_new_node.node.web3.toWei(500, "ether") - # Lock account authorization - result = client_new_node.delegate.delegate(1, address, amount=delegate_amount) - log.info(result) - # Own capital account entrustment - result = client_new_node.delegate.delegate(0, address, amount=delegate_amount) - log.info(result) - # The next cycle - client_new_node.economic.wait_settlement(client_new_node.node) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - # Redemptive amount is equal to free account + the entrustment gold of lock storehouse - - undelegate_amount = client_new_node.node.web3.toWei(1000, "ether") - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address, amount=undelegate_amount) - assert_code(result, 0) - - msg = client_new_node.ppos.getDelegateInfo(staking_blocknum, address, client_new_node.node.node_id) - log.info(msg) - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - assert delegate_amount - (amount2 - amount1) < client_new_node.node.web3.toWei(1, "ether") - - client_new_node.economic.wait_settlement(client_new_node.node) - - msg = client_new_node.ppos.getRestrictingInfo(address) - log.info(msg) - amount3 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount3)) - assert amount3 - amount2 == delegate_amount - - -@pytest.mark.P1 -def test_ROE_042(client_new_node): - """ - - :param client_new_node_obj: - :return: - """ - client_new_node.economic.env.deploy_all() - - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - lockup_amount = client_new_node.node.web3.toWei(1000, "ether") - plan = [{'Epoch': 2, 'Amount': lockup_amount}] - # Create a lock plan - result = client_new_node.restricting.createRestrictingPlan(address, plan, address) - log.info(result) - assert_code(result, 0) - msg = client_new_node.ppos.getRestrictingInfo(address) - log.info(msg) - # create staking - address_staking, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address_staking, address_staking) - - delegate_amount = client_new_node.node.web3.toWei(200, "ether") - # Lock account authorization - result = client_new_node.delegate.delegate(1, address, amount=delegate_amount) - log.info(result) - # Own capital account entrustment - result = client_new_node.delegate.delegate(0, address, amount=delegate_amount) - log.info(result) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - - msg = client_new_node.ppos.getDelegateInfo(staking_blocknum, address, client_new_node.node.node_id) - log.info(msg) - # The next cycle - client_new_node.economic.wait_settlement(client_new_node.node) - - delegate_amount_2 = client_new_node.node.web3.toWei(300, "ether") - result = client_new_node.delegate.delegate(1, address, amount=delegate_amount_2) - log.info(result) - # Own capital account entrustment - result = client_new_node.delegate.delegate(0, address, amount=delegate_amount_2) - log.info(result) - - msg = client_new_node.ppos.getDelegateInfo(staking_blocknum, address, client_new_node.node.node_id) - log.info(msg) - - undelegate_amount = client_new_node.node.web3.toWei(700, "ether") - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - log.info("Redemption is more than the hesitation period of the own amount + lock amount") - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address, amount=undelegate_amount) - assert_code(result, 0) - - msg = client_new_node.ppos.getDelegateInfo(staking_blocknum, address, client_new_node.node.node_id) - log.info(msg) - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - """赎回金额700,先赎回自由金额300,锁仓金额300,再赎回自由金额的100;目前锁定期的自由资金立马退,所以退400""" - account_dill = undelegate_amount - delegate_amount_2 * 2 - account_sum = account_dill + delegate_amount_2 - assert amount2 - amount1 > account_sum - client_new_node.node.web3.toWei(1, "ether") - - client_new_node.economic.wait_settlement(client_new_node.node) - - msg = client_new_node.ppos.getRestrictingInfo(address) - log.info(msg) - amount3 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount3)) - assert amount3 - amount2 == lockup_amount - msg["Ret"]["debt"] - - -@pytest.mark.P1 -def test_ROE_055(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address_staking, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - client_new_node.staking.create_staking(0, address_staking, address_staking) - delegate_amount = client_new_node.node.web3.toWei(500, "ether") - - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - # create delegate - result = client_new_node.delegate.delegate(0, address, amount=delegate_amount) - log.info(result) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address, amount=delegate_amount + 1) - assert_code(result, 301113) - - -@pytest.mark.P1 -def test_ROE_056_057(client_new_node, client_consensus): - """ - - :param client_new_node_obj: - :param client_consensus_obj: - :return: - """ - address_staking, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - value = client_new_node.economic.create_staking_limit * 2 - result = client_new_node.staking.create_staking(0, address_staking, address_staking, - amount=value) - assert_code(result, 0) - - # create delegate - result = client_new_node.delegate.delegate(0, address) - log.info(result) - - log.info("Close one node") - client_new_node.node.stop() - node = client_consensus.node - - msg = client_consensus.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - log.info("The next two periods") - client_consensus.economic.wait_settlement(node, 2) - - log.info("Restart the node") - client_new_node.node.start() - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address) - log.info(result) - - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - delegate_limit = client_new_node.economic.delegate_limit - assert delegate_limit - (amount2 - amount1) < client_new_node.node.web3.toWei(1, "ether") - - -@pytest.mark.P3 -def test_ROE_058(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address_staking, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address_staking, address_staking) - assert_code(result, 0) - - result = client_new_node.delegate.delegate(0, address) - log.info(result) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - - amount = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount)) - cfg = {"gasPrice": amount} - status = 0 - try: - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address, transaction_cfg=cfg) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@pytest.mark.P3 -def test_ROE_059(client_new_node): - """ - :param client_new_node_obj: - :return: - """ - address_staking, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address_staking, address_staking) - assert_code(result, 0) - - result = client_new_node.delegate.delegate(0, address) - log.info(result) - - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - - cfg = {"gas": 10} - status = 0 - try: - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address, transaction_cfg=cfg) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@pytest.mark.P1 -def test_ROE_060(client_new_node): - """ - - :param client_new_node_obj: - :return: - """ - address_staking, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - # The next cycle - client_new_node.economic.wait_settlement(client_new_node.node) - - result = client_new_node.staking.create_staking(0, address_staking, address_staking) - assert_code(result, 0) - - result = client_new_node.staking.withdrew_staking(address_staking) - assert_code(result, 0) - # The next two cycle - client_new_node.economic.wait_settlement(client_new_node.node, 2) - # Pledge again after quitting pledge - result = client_new_node.staking.create_staking(0, address_staking, address_staking) - assert_code(result, 0) - result = client_new_node.delegate.delegate(0, address) - assert_code(result, 0) - msg = client_new_node.ppos.getCandidateInfo(client_new_node.node.node_id) - staking_blocknum = msg["Ret"]["StakingBlockNum"] - amount1 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount1)) - result = client_new_node.delegate.withdrew_delegate(staking_blocknum, address) - log.info(result) - assert_code(result, 0) - amount2 = client_new_node.node.eth.getBalance(address) - log.info("The wallet balance:{}".format(amount2)) - delegate_limit = client_new_node.economic.delegate_limit - assert delegate_limit - (amount2 - amount1) < client_new_node.node.web3.toWei(1, "ether") diff --git a/cases/tests/ppos_2/test_withdrewDelegate2.py b/cases/tests/ppos_2/test_withdrewDelegate2.py deleted file mode 100644 index 56d9c800e1..0000000000 --- a/cases/tests/ppos_2/test_withdrewDelegate2.py +++ /dev/null @@ -1,327 +0,0 @@ -# -*- coding: utf-8 -*- -from tests.lib.utils import * -import pytest - - -# Undo delegate use cases from 031 to 049 - - -@pytest.mark.P2 -def test_ROE_031(staking_delegate_client): - """ - :param client_new_node: - :return: - """ - client = staking_delegate_client - delegate_address = client.delegate_address - node = client.node - economic = client.economic - # Return a pledge - client.staking.withdrew_staking(client.staking_address) - # The next cycle - client.economic.wait_settlement(node) - result = client.delegate.delegate(0, delegate_address) - log.info(result) - # The next two cycle - client.economic.wait_settlement(node, 2) - balance1 = client.node.eth.getBalance(delegate_address) - log.info("The wallet balance:{}".format(balance1)) - - result = client.delegate.withdrew_delegate(client.staking_blocknum, delegate_address) - assert_code(result, 0) - balance2 = client.node.eth.getBalance(delegate_address) - log.info("The wallet balance:{}".format(balance2)) - delegate_limit = economic.delegate_limit - assert delegate_limit - (balance2 - balance1) < node.web3.toWei(1, "ether") - - -@pytest.mark.P2 -def test_ROE_032_035(staking_delegate_client): - client = staking_delegate_client - delegate_address = client.delegate_address - node = client.node - economic = client.economic - log.info("The next cycle") - economic.wait_settlement(node) - result = client.delegate.delegate(0, delegate_address, amount=client.delegate_amount * 2) - assert_code(result, 0) - balance1 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance1)) - amount = client.delegate_amount * 2 + node.web3.toWei(1, "ether") - result = client.delegate.withdrew_delegate(client.staking_blocknum, delegate_address, - amount=amount) - assert_code(result, 0) - balance2 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance2)) - assert amount - (balance2 - balance1) < node.web3.toWei(1, "ether") - - -@pytest.mark.P2 -def test_ROE_033_034(staking_delegate_client): - client = staking_delegate_client - delegate_address = client.delegate_address - node = client.node - economic = client.economic - log.info("The next cycle") - economic.wait_settlement(node) - result = client.delegate.delegate(0, delegate_address) - assert_code(result, 0) - balance1 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance1)) - result = client.delegate.withdrew_delegate(client.staking_blocknum, delegate_address) - assert_code(result, 0) - balance2 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance2)) - assert client.delegate_amount - (balance2 - balance1) < node.web3.toWei(1, "ether") - - -@pytest.mark.P2 -def test_ROE_038(staking_delegate_client): - client = staking_delegate_client - delegate_address = client.delegate_address - node = client.node - economic = client.economic - log.info("The next cycle") - economic.wait_settlement(node) - lockup_amount = client.node.web3.toWei(20, "ether") - plan = [{'Epoch': 1, 'Amount': lockup_amount}] - # Create a lock plan - result = client.restricting.createRestrictingPlan(delegate_address, plan, delegate_address) - assert_code(result, 0) - result = client.delegate.delegate(1, delegate_address) - assert_code(result, 0) - result = client.delegate.delegate(0, delegate_address) - assert_code(result, 0) - balance1 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance1)) - result = client.delegate.withdrew_delegate(client.staking_blocknum, delegate_address) - assert_code(result, 0) - balance2 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance2)) - msg = client.ppos.getRestrictingInfo(delegate_address) - log.info(msg) - delegate_limit = client.delegate_amount - assert delegate_limit - (balance2 - balance1) < node.web3.toWei(1, "ether") - assert msg["Ret"]["Pledge"] == delegate_limit - - -@pytest.mark.P2 -def test_ROE_039(staking_delegate_client): - client = staking_delegate_client - delegate_address = client.delegate_address - node = client.node - economic = client.economic - log.info("The next cycle") - economic.wait_settlement(node) - lockup_amount = client.node.web3.toWei(20, "ether") - plan = [{'Epoch': 1, 'Amount': lockup_amount}] - # Create a lock plan - result = client.restricting.createRestrictingPlan(delegate_address, plan, delegate_address) - assert_code(result, 0) - result = client.delegate.delegate(1, delegate_address, amount=client.delegate_amount * 2) - assert_code(result, 0) - result = client.delegate.delegate(0, delegate_address) - assert_code(result, 0) - msg = client.ppos.getDelegateInfo(client.staking_blocknum, delegate_address, node.node_id) - log.info(msg) - balance1 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance1)) - amount = client.delegate_amount * 2 - result = client.delegate.withdrew_delegate(client.staking_blocknum, delegate_address, - amount=amount) - assert_code(result, 0) - balance2 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance2)) - msg = client.ppos.getRestrictingInfo(delegate_address) - log.info(msg) - assert client.delegate_amount - (balance2 - balance1) < node.web3.toWei(1, "ether") - assert msg["Ret"]["Pledge"] == client.delegate_amount - - -@pytest.mark.P2 -def test_ROE_040(free_locked_delegate_client): - client = free_locked_delegate_client - delegate_address = client.delegate_address - node = client.node - balance1 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance1)) - amount = client.delegate_amount * 2 + client.node.web3.toWei(1, "ether") - result = client.delegate.withdrew_delegate(client.staking_blocknum, delegate_address, - amount=amount) - assert_code(result, 0) - balance2 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance2)) - assert client.delegate_amount * 2 - (balance2 - balance1) < node.web3.toWei(1, "ether") - msg = client.ppos.getRestrictingInfo(delegate_address) - log.info(msg) - assert msg["Ret"]["Pledge"] == 0 - - -@pytest.mark.P2 -def test_ROE_041(free_locked_delegate_client): - client = free_locked_delegate_client - delegate_address = client.delegate_address - node = client.node - balance1 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance1)) - amount = client.delegate_amount * 3 - result = client.delegate.withdrew_delegate(client.staking_blocknum, delegate_address, - amount=amount) - assert_code(result, 0) - balance2 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance2)) - msg = client.ppos.getRestrictingInfo(delegate_address) - log.info(msg) - assert client.delegate_amount * 2 - (balance2 - balance1) < node.web3.toWei(1, "ether") - - -@pytest.mark.P2 -def test_ROE_042(free_locked_delegate_client): - client = free_locked_delegate_client - delegate_address = client.delegate_address - node = client.node - economic = client.economic - log.info("The next cycle") - economic.wait_settlement(node) - result = client.delegate.delegate(0, delegate_address) - assert_code(result, 0) - balance1 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance1)) - amount = client.delegate_amount * 4 - result = client.delegate.withdrew_delegate(client.staking_blocknum, delegate_address, - amount=amount) - assert_code(result, 0) - balance2 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance2)) - msg = client.ppos.getRestrictingInfo(delegate_address) - log.info(msg) - assert client.delegate_amount * 3 - (balance2 - balance1) < node.web3.toWei(1, "ether") - assert msg["Ret"]["Pledge"] == 0 - - -@pytest.mark.P2 -def test_ROE_043(free_locked_delegate_client): - client = free_locked_delegate_client - delegate_address = client.delegate_address - node = client.node - economic = client.economic - log.info("The next cycle") - economic.wait_settlement(node) - result = client.delegate.delegate(0, delegate_address) - assert_code(result, 0) - result = client.delegate.delegate(1, delegate_address) - assert_code(result, 0) - balance1 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance1)) - amount = client.delegate_amount * 4 - result = client.delegate.withdrew_delegate(client.staking_blocknum, delegate_address, - amount=amount) - assert_code(result, 0) - balance2 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance2)) - msg = client.ppos.getRestrictingInfo(delegate_address) - log.info(msg) - assert client.delegate_amount * 3 - (balance2 - balance1) < node.web3.toWei(1, "ether") - assert msg["Ret"]["Pledge"] == client.delegate_amount - - -@pytest.mark.P2 -def test_ROE_044(free_locked_delegate_client): - client = free_locked_delegate_client - delegate_address = client.delegate_address - node = client.node - economic = client.economic - log.info("The next cycle") - economic.wait_settlement(node) - result = client.delegate.delegate(0, delegate_address) - assert_code(result, 0) - result = client.delegate.delegate(1, delegate_address) - assert_code(result, 0) - balance1 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance1)) - amount = client.delegate_amount * 5 - result = client.delegate.withdrew_delegate(client.staking_blocknum, delegate_address, - amount=amount) - assert_code(result, 0) - balance2 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance2)) - msg = client.ppos.getRestrictingInfo(delegate_address) - log.info(msg) - log.info("Wallet balance{}".format(balance2)) - assert client.delegate_amount * 3 - (balance2 - balance1) < node.web3.toWei(1, "ether") - assert msg["Ret"]["Pledge"] == 0 - - -@pytest.mark.P2 -def test_ROE_045(staking_delegate_client): - client = staking_delegate_client - delegate_address = client.delegate_address - node = client.node - economic = client.economic - log.info("The next cycle") - economic.wait_settlement(node) - result = client.delegate.delegate(0, delegate_address) - assert_code(result, 0) - balance1 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance1)) - amount = client.delegate_amount * 2 - result = client.delegate.withdrew_delegate(client.staking_blocknum, delegate_address, - amount=amount) - assert_code(result, 0) - balance2 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance2)) - assert client.delegate_amount * 2 - (balance2 - balance1) < node.web3.toWei(0.1, "ether") - - -@pytest.mark.P2 -def test_ROE_048(staking_delegate_client): - client = staking_delegate_client - delegate_address = client.delegate_address - node = client.node - economic = client.economic - log.info("The next cycle") - economic.wait_settlement(node) - result = client.delegate.delegate(0, delegate_address) - assert_code(result, 0) - balance1 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance1)) - amount = client.delegate_amount * 3 - result = client.delegate.withdrew_delegate(client.staking_blocknum, delegate_address, - amount=amount) - assert_code(result, 0) - balance2 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance2)) - msg = client.ppos.getRestrictingInfo(delegate_address) - log.info(msg) - assert client.delegate_amount * 3 - (balance2 - balance1) < node.web3.toWei(0.1, "ether") - - -@pytest.mark.P2 -def test_ROE_049(staking_delegate_client): - client = staking_delegate_client - delegate_address = client.delegate_address - node = client.node - economic = client.economic - log.info("The next cycle") - economic.wait_settlement(node) - lockup_amount = client.node.web3.toWei(20, "ether") - plan = [{'Epoch': 1, 'Amount': lockup_amount}] - # Create a lock plan - result = client.restricting.createRestrictingPlan(delegate_address, plan, delegate_address) - assert_code(result, 0) - result = client.delegate.delegate(1, delegate_address) - assert_code(result, 0) - result = client.delegate.delegate(0, delegate_address) - assert_code(result, 0) - balance1 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance1)) - amount = client.delegate_amount * 4 - result = client.delegate.withdrew_delegate(client.staking_blocknum, delegate_address, - amount=amount) - assert_code(result, 0) - balance2 = node.eth.getBalance(delegate_address) - log.info("Wallet balance{}".format(balance2)) - msg = client.ppos.getRestrictingInfo(delegate_address) - log.info(msg) - assert client.delegate_amount * 3 - (balance2 - balance1) < node.web3.toWei(1, "ether") - assert msg["Ret"]["Pledge"] == 0 diff --git a/cases/tests/ppos_2/test_withdrew_staking.py b/cases/tests/ppos_2/test_withdrew_staking.py deleted file mode 100644 index 924b875060..0000000000 --- a/cases/tests/ppos_2/test_withdrew_staking.py +++ /dev/null @@ -1,767 +0,0 @@ -from decimal import Decimal - -import allure -import pytest -import time - -from dacite import from_dict - -from common.log import log -from alaya import Web3 - -from tests.lib import Genesis -from tests.lib.utils import get_pledge_list, get_block_count_number, assert_code -from common.key import generate_key -from tests.ppos_2.conftest import calculate - - -@pytest.fixture() -def staking_client(client_new_node): - print(client_new_node.node.node_mark) - amount = calculate(client_new_node.economic.create_staking_limit, 5) - staking_amount = calculate(client_new_node.economic.create_staking_limit, 2) - staking_address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, amount) - log.info("staking_address {} amount {}".format(staking_address, client_new_node.node.eth.getBalance(staking_address))) - delegate_address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - client_new_node.economic.add_staking_limit * 2) - result = client_new_node.staking.create_staking(0, staking_address, staking_address, amount=staking_amount) - assert_code(result, 0) - print(client_new_node.node.ppos.getCandidateInfo(client_new_node.node.node_id)) - setattr(client_new_node, "staking_address", staking_address) - setattr(client_new_node, "delegate_address", delegate_address) - setattr(client_new_node, "amount", amount) - setattr(client_new_node, "staking_amount", staking_amount) - yield client_new_node - # client_new_node.economic.env.deploy_all() - - -@pytest.fixture() -def staking_client1(client_new_node): - amount = calculate(client_new_node.economic.create_staking_limit, 5) - staking_amount = client_new_node.economic.create_staking_limit - staking_address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, amount) - delegate_address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - client_new_node.economic.add_staking_limit * 2) - client_new_node.staking.create_staking(0, staking_address, staking_address, amount=staking_amount) - setattr(client_new_node, "staking_address", staking_address) - setattr(client_new_node, "delegate_address", delegate_address) - setattr(client_new_node, "amount", amount) - setattr(client_new_node, "staking_amount", staking_amount) - yield client_new_node - client_new_node.economic.env.deploy_all() - - -@allure.title("The verifier applies for returning the pledge money (hesitation period)") -@pytest.mark.P0 -@pytest.mark.compatibility -def test_RV_001(staking_client): - """ - The certifier applies for a refund of the quality deposit (hesitation period) - """ - client = staking_client - staking_address = client.staking_address - node = client.node - balance_before = node.eth.getBalance(staking_address) - log.info("Corresponding wallet balance {}".format(balance_before)) - client.staking.withdrew_staking(staking_address) - balance_after = node.eth.getBalance(staking_address) - log.info("Node 4 exits the pledge wallet balance {}".format(balance_after)) - assert balance_after > balance_before, "After exiting the pledge, the wallet balance has not increased" - log.info( - "Because the value of gas consumed by the pledge is greater than the value of the gas that cancels the pledge") - assert balance_after > client.amount - 10 ** 18 - node_list = get_pledge_list(node.ppos.getCandidateList) - assert node.node_id not in node_list, "Verify that the node exits abnormally" - - -@allure.title("The verifier returns the pledge money (lockup period)") -@pytest.mark.P1 -def test_RV_002(staking_client): - """ - The certifier refunds the quality deposit (unreachable unlockable period) - Pledge becomes the next cycle verifier, after exiting, exit in the next settlement cycle - """ - client = staking_client - staking_address = client.staking_address - node = client.node - economic = client.economic - staking_address_balance = node.eth.getBalance(staking_address) - log.info(staking_address_balance) - economic.wait_settlement(node) - log.info("Query the certifier for the second billing cycle") - node_list = get_pledge_list(client.ppos.getVerifierList) - log.info(node_list) - assert node.node_id in node_list - log.info("The node applies for a return during the lockout period in the second settlement cycle.") - client.staking.withdrew_staking(staking_address) - """Initiation of returning consumes a certain amount of gas""" - staking_address_balance_1 = node.eth.getBalance(staking_address) - log.info(staking_address_balance_1) - log.info("Enter the third billing cycle") - economic.wait_settlement(node) - staking_address_balance_2 = node.eth.getBalance(staking_address) - log.info(staking_address_balance_2) - node_list = get_pledge_list(client.ppos.getVerifierList) - log.info(node_list) - assert node.node_id not in node_list - log.info("Enter the 4th billing cycle") - economic.wait_settlement(node, 1) - msg = client.ppos.getCandidateInfo(node.node_id) - log.info(msg) - staking_address_balance_3 = node.eth.getBalance(staking_address) - log.info(staking_address_balance_3) - log.info(staking_address_balance_3 - staking_address_balance_1) - assert staking_address_balance_3 - staking_address_balance_1 > client.staking_amount, "The amount of the returned transaction should be greater than the amount of the returned deposit." - - -@allure.title("The verifier applies for returning the pledge money (hesitation period + lockup period)") -@pytest.mark.P1 -def test_RV_003(staking_client): - """ - The certifier applies for a refund of the quality deposit (hesitation period + lock-up period) - """ - client = staking_client - staking_address = client.staking_address - node = client.node - economic = client.economic - log.info("Enter the next cycle") - economic.wait_settlement(node) - msg = client.staking.increase_staking(0, staking_address) - assert_code(msg, 0) - msg = node.ppos.getCandidateInfo(node.node_id) - log.info("Pledge information {}".format(msg)) - assert msg["Ret"][ - "Shares"] == client.staking_amount + economic.add_staking_limit, "Expected display of the amount of deposit + increase in holding amount" - assert msg["Ret"]["Released"] == client.staking_amount, "Expected display of the amount of the deposit" - assert msg["Ret"][ - "ReleasedHes"] == economic.add_staking_limit, "Expected increase in holdings is shown during the hesitation period" - block_reward, staking_reward = economic.get_current_year_reward(node) - - balance = node.eth.getBalance(staking_address) - log.info("Initiate a pre-retardment balance{}".format(balance)) - - log.info("Initiation of the return pledge in the second cycle") - msg = client.staking.withdrew_staking(staking_address) - assert_code(msg, 0) - msg = node.ppos.getCandidateInfo(node.node_id) - log.info("Initiate a refund after pledge information{}".format(msg)) - assert msg["Ret"][ - "ReleasedHes"] == 0, "The amount of expected increase in shareholding has been returned, showing 0" - balance1 = node.eth.getBalance(client.staking_address) - log.info(balance1) - log.info("Enter the 3rd cycle") - economic.wait_settlement(node, 2) - - balance2 = node.eth.getBalance(staking_address) - log.info(balance2) - - block_number = get_block_count_number(node, economic.settlement_size * 3) - sum_block_reward = calculate(block_reward, block_number) - reward_sum = sum_block_reward + staking_reward - log.info("Total amount of reward {}".format(reward_sum)) - assert balance1 + reward_sum + client.staking_amount == balance2, "The bonus amount is abnormal" - - -@allure.title("Free account pledge + lockup account increase (withdraw pledge after hesitation)") -@pytest.mark.P1 -def test_RV_004(staking_client): - client = staking_client - staking_address = client.staking_address - node = client.node - economic = client.economic - log.info("Create a lockout plan") - lockup_amount = economic.add_staking_limit * 100 - plan = [{'Epoch': 1, 'Amount': lockup_amount}] - msg = client.restricting.createRestrictingPlan(staking_address, plan, - economic.account.account_with_money["address"]) - assert_code(msg, 0) - locked_info = client.ppos.getRestrictingInfo(staking_address) - log.info(locked_info) - before_create_balance = client.amount - log.info("Initiate the balance before the pledge {}".format(before_create_balance)) - - msg = client.staking.increase_staking(1, staking_address) - assert_code(msg, 0) - msg = client.ppos.getCandidateInfo(node.node_id) - log.info("Query pledge {}".format(msg)) - log.info("Initiating a pledge") - msg = client.staking.withdrew_staking(staking_address) - assert_code(msg, 0) - - after_balance_1 = node.eth.getBalance(staking_address) - log.info("Hesitant period to initiate a refunded balance{}".format(after_balance_1)) - """The balance after return is definitely less than the balance before the pledge, the consumption is less than 1 eth""" - assert before_create_balance - after_balance_1 < Web3.toWei(1, "ether"), "The returned amount is abnormal" - locked_info = client.ppos.getRestrictingInfo(staking_address) - log.info(locked_info) - - msg = client.ppos.getCandidateInfo(node.node_id) - assert_code(msg, 301204) - log.info("Enter the next cycle") - economic.wait_settlement(node) - locked_info = client.ppos.getRestrictingInfo(staking_address) - log.info(locked_info) - after_account = node.eth.getBalance(staking_address) - log.info("Account balance after the lockout is released{}".format(after_account)) - assert after_account - after_balance_1 == lockup_amount, "The amount of the lockout returned is abnormal." - - -@allure.title("Free account pledge + lock account increase (lock period depledge)") -@pytest.mark.P1 -def test_RV_005(staking_client): - client = staking_client - node = client.node - staking_address = client.staking_address - economic = client.economic - log.info("Create a lockout plan") - lockup_amount = economic.add_staking_limit * 100 - plan = [{'Epoch': 1, 'Amount': lockup_amount}] - msg = client.restricting.createRestrictingPlan(staking_address, plan, - economic.account.account_with_money["address"]) - assert_code(msg, 0) - locked_info = client.ppos.getRestrictingInfo(staking_address) - log.info(locked_info) - before_create_balance = client.amount - log.info("Initiate the balance before the pledge {}".format(before_create_balance)) - - msg = client.staking.increase_staking(1, staking_address) - assert_code(msg, 0) - economic.wait_settlement(node) - - msg = client.ppos.getCandidateInfo(node.node_id) - log.info("Query pledge {}".format(msg)) - assert msg["Ret"]["Shares"] == client.staking_amount + economic.add_staking_limit - assert msg["Ret"]["Released"] == client.staking_amount - assert msg["Ret"]["RestrictingPlan"] == economic.add_staking_limit - - block_reward, staking_reward = economic.get_current_year_reward(node) - msg = client.staking.withdrew_staking(staking_address) - assert_code(msg, 0) - balance_withdrew = node.eth.getBalance(staking_address) - log.info("The second cycle initiated the revocation of the balance{}".format(balance_withdrew)) - log.info("Enter the 3rd cycle") - economic.wait_settlement(node) - - balance_settlement = node.eth.getBalance(staking_address) - log.info("The balance after launching the revocation in the third cycle{}".format(balance_settlement)) - - log.info("Enter the 4th cycle") - economic.wait_settlement(node, 1) - - balance_settlement_2 = node.eth.getBalance(staking_address) - log.info("The balance after the withdrawal of the fourth cycle {}".format(balance_settlement_2)) - - """Calculate block reward + pledge reward""" - log.info("The following is the number of blocks to get the node") - block_number = get_block_count_number(node, economic.settlement_size * 3) - sum_block_reward = calculate(block_reward, block_number) - reward_sum = sum_block_reward + staking_reward - log.info("Total amount of reward {}".format(reward_sum)) - assert before_create_balance + reward_sum + lockup_amount - balance_settlement_2 < Web3.toWei(1, - "ether"), "After the expected result unlock period, the money has been refunded + the block reward + pledge reward" - - -@allure.title("Free account pledge + lockup account increase (both have hesitation period + lockup period)") -@pytest.mark.P1 -def test_RV_006(staking_client): - client = staking_client - staking_address = client.staking_address - node = client.node - economic = client.economic - log.info("Create a lockout plan") - lockup_amount = economic.add_staking_limit * 100 - plan = [{'Epoch': 3, 'Amount': lockup_amount}] - msg = client.restricting.createRestrictingPlan(staking_address, plan, - economic.account.account_with_money["address"]) - assert_code(msg, 0), "Creating a lockout plan failed" - locked_info = client.ppos.getRestrictingInfo(staking_address) - log.info(locked_info) - - msg = client.staking.increase_staking(1, staking_address) - assert_code(msg, 0) - log.info("Enter the second cycle") - economic.wait_settlement(node) - - msg = client.staking.increase_staking(1, staking_address) - assert_code(msg, 0) - msg = client.staking.increase_staking(0, staking_address) - assert_code(msg, 0) - msg = client.ppos.getCandidateInfo(node.node_id) - log.info("Query the pledge of the node {}".format(msg)) - - assert msg["Ret"]["Shares"] == client.staking_amount + economic.add_staking_limit * 3 - assert msg["Ret"]["Released"] == client.staking_amount - assert msg["Ret"]["RestrictingPlan"] == economic.add_staking_limit - assert msg["Ret"]["RestrictingPlanHes"] == economic.add_staking_limit - block_reward, staking_reward = economic.get_current_year_reward(node) - - log.info("Node 2 initiates revocation pledge") - msg = client.staking.withdrew_staking(staking_address) - assert_code(msg, 0) - balance2 = node.eth.getBalance(staking_address) - log.info("The second cycle initiated the revocation of the balance{}".format(balance2)) - """ The current increase in free funds has been withdrawn, and the following is reduced to a fee""" - assert client.amount - balance2 - client.staking_amount < Web3.toWei(1, "ether") - locked_info = client.ppos.getRestrictingInfo(staking_address) - log.info("Query the lockout plan after the second cycle initiated revocation {}".format(locked_info)) - assert_code(locked_info, 0) - assert locked_info["Ret"][ - "Pledge"] == economic.add_staking_limit, "The amount in the lockout plan is expected to be the lockout period amount." - - msg = client.ppos.getCandidateInfo(node.node_id) - log.info("Query the pledge of node {}".format(msg)) - - assert msg["Ret"]["ReleasedHes"] == 0, "Expected amount of hesitation has been refunded" - assert msg["Ret"][ - "RestrictingPlanHes"] == 0, "Expected lockout amount has been refunded during the hesitation period" - - log.info("Enter the 3rd cycle") - economic.wait_settlement(node) - balance3 = node.eth.getBalance(staking_address) - log.info("The balance after launching the revocation in the third cycle{}".format(balance3)) - - log.info("Enter the 4th cycle") - economic.wait_settlement(node, 1) - balance4 = node.eth.getBalance(staking_address) - log.info("The balance after the revocation of the second cycle {}".format(balance4)) - - locked_info = client.ppos.getRestrictingInfo(staking_address) - log.info(locked_info) - - msg = client.ppos.getCandidateInfo(node.node_id) - log.info("Query the pledge of the node{}".format(msg)) - assert_code(msg, 301204) - - """Compute Block Reward + Pledge Reward""" - log.info("The following is the number of blocks to get the node") - block_number = get_block_count_number(node, economic.settlement_size * 3) - sum_block_reward = calculate(block_reward, block_number) - reward_sum = sum_block_reward + staking_reward - log.info("Total amount of reward {}".format(reward_sum)) - - assert client.amount + reward_sum - balance4 < Web3.toWei(1, - "ether"), "After the expected result unlock period, the money has been refunded + the block reward + pledge reward" - - -@allure.title("Gas shortage") -@pytest.mark.P1 -def test_RV_007(client_new_node): - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - cfg = {"gas": 1} - status = 0 - try: - result = client_new_node.staking.withdrew_staking(address, transaction_cfg=cfg) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@allure.title("not sufficient funds") -@pytest.mark.P1 -def test_RV_008(client_new_node): - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - value = 10 ** 18 * 10000000 - cfg = {"gasPrice": value} - status = 0 - try: - result = client_new_node.staking.withdrew_staking(address, transaction_cfg=cfg) - log.info(result) - except BaseException: - status = 1 - assert status == 1 - - -@allure.title("Initiate cancellation of pledge (pledge money + additional amount)") -@pytest.mark.P1 -def test_RV_009(staking_client): - client = staking_client - node = client.node - staking_address = client.staking_address - economic = client.economic - value_before = client.amount - log.info("Initiate the balance before the pledge {}".format(value_before)) - - log.info("Enter the second billing cycle, increase the amount") - economic.wait_settlement(node) - client.staking.increase_staking(0, staking_address) - value2 = node.eth.getBalance(staking_address) - log.info("Pledged + increased balance {}".format(value2)) - log.info("Enter the third billing cycle, the node initiates a return") - economic.wait_settlement(node) - value3 = node.eth.getBalance(staking_address) - log.info("Balance of the 3rd cycle {}".format(value3)) - client.staking.withdrew_staking(staking_address) - log.info("Enter the 4th billing cycle") - economic.wait_settlement(node) - value4 = node.eth.getBalance(staking_address) - log.info("The balance of the 4th billing cycle (including the reward for the 3rd cycle){}".format(value4)) - log.info("Enter the 5th billing cycle") - economic.wait_settlement(node) - value5 = node.eth.getBalance(staking_address) - log.info("Return to the pledge + overweight balance after the unlock period:{}".format(value5)) - log.info(value5 - value_before) - amount_sum = client.staking_amount + economic.add_staking_limit - assert value5 > value_before, "Out of the block reward exception" - assert value5 > amount_sum, "The balance of the unlocking period is greater than the balance of the lockout period + pledge + overweight, but an exception occurs." - - -@allure.title("Become a consensus verifier and revoke the pledge") -@pytest.mark.P2 -def test_RV_011(staking_client): - """ - The consensus verifier revoks the pledge - """ - client = staking_client - node = client.node - economic = client.economic - staking_address = client.staking_address - log.info("Enter the next cycle") - economic.wait_settlement(node) - log.info("Enter the next consensus round") - economic.wait_consensus(node) - - validator_list = get_pledge_list(node.ppos.getValidatorList) - log.info("Consensus certifier list:{}".format(validator_list)) - assert node.node_id in validator_list - msg = client.staking.withdrew_staking(staking_address) - assert_code(msg, 0) - - -@allure.title("Become a candidate and withdraw from pledge") -@pytest.mark.P2 -def test_RV_012(global_test_env, clients_noconsensus): - """ - Candidate cancels pledge - """ - global_test_env.deploy_all() - address1, _ = clients_noconsensus[0].economic.account.generate_account(clients_noconsensus[0].node.web3, - 10 ** 18 * 10000000) - address2, _ = clients_noconsensus[0].economic.account.generate_account(clients_noconsensus[0].node.web3, - 10 ** 18 * 10000000) - - result = clients_noconsensus[0].staking.create_staking(0, address1, address1, - amount=clients_noconsensus[ - 0].economic.create_staking_limit * 2) - assert_code(result, 0) - - result = clients_noconsensus[1].staking.create_staking(0, address2, address2, - amount=clients_noconsensus[1].economic.create_staking_limit) - assert_code(result, 0) - - log.info("Next settlement period") - clients_noconsensus[1].economic.wait_settlement(clients_noconsensus[1].node) - msg = clients_noconsensus[1].ppos.getVerifierList() - log.info(msg) - verifierlist = get_pledge_list(clients_noconsensus[1].ppos.getVerifierList) - log.info("verifierlist:{}".format(verifierlist)) - assert clients_noconsensus[1].node.node_id not in verifierlist - msg = clients_noconsensus[1].staking.withdrew_staking(address2) - assert_code(msg, 0) - - -@allure.title("Become the verifier and quit the pledge") -@pytest.mark.P2 -def test_RV_013(staking_client): - """ - The verifier revoks the pledge - """ - client = staking_client - staking_address = client.staking_address - node = client.node - economic = client.economic - log.info("Enter the next cycle") - economic.wait_settlement(node, 1) - verifier_list = get_pledge_list(node.ppos.getVerifierList) - log.info(log.info("Current billing cycle certifier {}".format(verifier_list))) - assert node.node_id in verifier_list - msg = client.staking.withdrew_staking(staking_address) - assert_code(msg, 0) - - -@allure.title("After exiting the verifier, return the pledge money + block award + pledge award") -@pytest.mark.P1 -@pytest.mark.compatibility -def test_RV_014_015(staking_client): - """ - After becoming a verifier, there are pledge rewards and block rewards. - """ - client = staking_client - staking_address = client.staking_address - node = client.node - economic = client.economic - economic.wait_settlement(node) - log.info("Enter the next cycle") - block_reward, staking_reward = economic.get_current_year_reward(node) - msg = client.staking.withdrew_staking(staking_address) - log.info(msg) - balance_1 = node.eth.getBalance(staking_address) - log.info(balance_1) - log.info("Enter the next cycle") - economic.wait_settlement(node, 2) - economic.wait_consensus(node) - balance_2 = node.eth.getBalance(staking_address) - log.info(balance_2) - verifier_list = get_pledge_list(node.ppos.getVerifierList) - log.info("Current certifier list:{}".format(verifier_list)) - validator_list = get_pledge_list(node.ppos.getValidatorList) - log.info("Current consensus certifier list:{}".format(validator_list)) - block_number = get_block_count_number(node, economic.settlement_size * 3) - sum_block_reward = calculate(block_reward, block_number) - reward_sum = sum_block_reward + staking_reward - log.info("Total amount of reward {}".format(reward_sum)) - assert balance_1 + reward_sum + client.staking_amount == balance_2, "The bonus amount is abnormal" - - -@allure.title("Cancel nonexistent candidates") -@pytest.mark.P2 -def test_RV_016(staking_client): - _, node_id = generate_key() - msg = staking_client.staking.withdrew_staking(staking_client.staking_address, node_id=node_id) - log.info(msg) - assert_code(msg, 301102) - - -@allure.title("Undo a candidate whose status is invalid") -@pytest.mark.P2 -def test_RV_017(staking_client): - client = staking_client - node = client.node - staking_address = client.staking_address - msg = client.staking.withdrew_staking(staking_address) - assert_code(msg, 0) - msg = node.ppos.getCandidateInfo(node.node_id) - assert msg[ - "Ret"] == "Query candidate info failed:Candidate info is not found", "Expected pledge to be successful; pledge information is deleted" - msg = client.staking.withdrew_staking(staking_address) - assert_code(msg, 301102) - - -@allure.title("Invalid nodeId") -@pytest.mark.P2 -def test_RV_018(client_new_node): - illegal_nodeID = "7ee3276fd6b9c7864eb896310b5393324b6db785a2528c00cc28ca8c" \ - "3f86fc229a86f138b1f1c8e3a942204c03faeb40e3b22ab11b8983c35dc025de42865990" - - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - msg = client_new_node.staking.withdrew_staking(address, node_id=illegal_nodeID) - assert_code(msg, 301102) - - -@allure.title("Modify the node income address and return: verify the pledge reward + block reward") -@pytest.mark.P0 -def test_RV_019(staking_client): - """ - Modify the wallet address, the change of address income normal - """ - client = staking_client - node = client.node - staking_address = client.staking_address - economic = client.economic - ben_address, _ = economic.account.generate_account(node.web3) - log.info("ben address balance:{}".format(node.eth.getBalance(ben_address))) - log.info("Modify node information") - msg = client.staking.edit_candidate(staking_address, ben_address) - assert_code(msg, 0) - - log.info("Enter the second billing cycle") - economic.wait_settlement(node) - - block_reward, staking_reward = economic.get_current_year_reward(node) - msg = client.staking.withdrew_staking(staking_address) - assert_code(msg, 0) - balance_before = node.eth.getBalance(ben_address) - log.info("Exit the new wallet balance after pledge:{}".format(balance_before)) - log.info("Enter the third billing cycle") - economic.wait_settlement(node, 2) - - balance_after = node.eth.getBalance(ben_address) - log.info("Balance after the new wallet unlock period {}".format(balance_after)) - - """Compute Block Reward + Pledge Reward""" - log.info("The following is the number of blocks to get the node") - block_number = get_block_count_number(node, economic.settlement_size * 3) - sum_block_reward = calculate(block_reward, block_number) - reward_sum = sum_block_reward + staking_reward - log.info("Total amount of reward {}".format(reward_sum)) - assert balance_after == reward_sum, "Expected new wallet balance == earnings reward" - - -@allure.title("Modify pledge information in exit") -@pytest.mark.P2 -def test__RV_020(staking_client): - """ - Modify the pledge information in the exit - """ - node_name = "Node" - client = staking_client - staking_address = client.staking_address - node = client.node - economic = client.economic - economic.wait_settlement(node) - msg = client.staking.withdrew_staking(staking_address) - log.info(msg) - msg = node.ppos.getCandidateInfo(node.node_id) - log.info(msg) - log.info("Modify node information") - client.staking.cfg.node_name = node_name - msg = client.staking.edit_candidate(staking_address, staking_address) - assert_code(msg, 301103) - - -@allure.title("The modified pledge information has been withdrawn") -@pytest.mark.P2 -def test_RV_021(staking_client): - """ - Revoked modify pledge information - """ - node_name = "Node" - client = staking_client - staking_address = client.staking_address - node = client.node - economic = client.economic - economic.wait_settlement(node) - msg = client.staking.withdrew_staking(staking_address) - log.info(msg) - msg = node.ppos.getCandidateInfo(node.node_id) - log.info(msg) - economic.wait_settlement(node, 2) - log.info("Modify node information") - client.staking.cfg.node_name = node_name - msg = client.staking.edit_candidate(staking_address, staking_address) - assert_code(msg, 301102) - - -@pytest.mark.P2 -def test_RV_022(client_new_node): - """ - Non-pledged wallets are pledged back - """ - address, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - address1, _ = client_new_node.economic.account.generate_account(client_new_node.node.web3, - 10 ** 18 * 10000000) - result = client_new_node.staking.create_staking(0, address, address) - assert_code(result, 0) - log.info("Node exit pledge") - result = client_new_node.staking.withdrew_staking(address1) - assert_code(result, 301006) - - -@allure.title("After the maximum penalty, the amount returned & re-pledge, entrustment and redemption") -@pytest.mark.P1 -def test_RV_023(new_genesis_env, client_new_node): - """ - Return amount after the highest penalty - """ - genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) - genesis.economicModel.slashing.slashBlocksReward = 15 - new_file = new_genesis_env.cfg.env_tmp + "/genesis_0.13.0.json" - genesis.to_file(new_file) - new_genesis_env.deploy_all(new_file) - - other_node = new_genesis_env.get_rand_node() - client = client_new_node - node = client.node - economic = client.economic - staking_address, _ = client_new_node.economic.account.generate_account(client.node.web3, client.economic.create_staking_limit * 2) - delegate_address, _ = client_new_node.economic.account.generate_account(client.node.web3, client.economic.delegate_limit * 3) - result = client.staking.create_staking(0, staking_address, staking_address) - assert_code(result, 0) - msg = client.delegate.delegate(0, delegate_address, node.node_id) - assert_code(msg, 0) - economic.wait_consensus(other_node, 4) - log.info("Stop the new verifier node") - node.stop() - for i in range(4): - economic.wait_consensus(other_node, i) - candidate_info = other_node.ppos.getCandidateInfo(node.node_id) - log.info(candidate_info) - if candidate_info["Ret"]["Released"] < client.economic.create_staking_limit: - break - verifier_list = get_pledge_list(other_node.ppos.getVerifierList) - log.info("Current billing cycle certifier {}".format(verifier_list)) - assert node.node_id not in verifier_list, "Expected to opt out of certifier list" - log.info("Restart the node") - node.start() - time.sleep(10) - balance_before = other_node.eth.getBalance(staking_address) - log.info("Query the account balance after being punished: {}".format(balance_before)) - candidate_info = other_node.ppos.getCandidateInfo(node.node_id) - log.info(candidate_info) - log.info("The amount will be refunded after waiting for 2 cycles of punishment") - economic.wait_settlement(node, 2) - - balance_after = other_node.eth.getBalance(staking_address) - log.info("The balance after the penalty is refunded to the account:{}".format(balance_after)) - assert balance_before + candidate_info["Ret"][ - "Released"] == balance_after, "After being sent out and removed from the certifier, the amount is refunded abnormally" - log.info("Repledge to become verifier") - msg = other_node.ppos.getCandidateInfo(node.node_id) - log.info(msg) - staking_result = client.staking.create_staking(0, staking_address, staking_address) - assert_code(staking_result, 0) - candidate_info = node.ppos.getCandidateInfo(node.node_id) - log.info(candidate_info) - staking_blocknum = candidate_info["Ret"]["StakingBlockNum"] - log.info("Delegation") - msg = client.delegate.delegate(0, delegate_address, node.node_id) - assert_code(msg, 0) - msg = client.delegate.withdrew_delegate(staking_blocknum, delegate_address, node.node_id) - assert_code(msg, 0) - - -@allure.title("The lockup period after withdrawal of pledge cannot be added or entrusted") -@pytest.mark.P1 -def test_RV_024(staking_client): - """ - Can not increase and entrust after exiting pledge - """ - client = staking_client - node = client.node - staking_address = client.staking_address - economic = client.economic - log.info("Entering the lockout period") - economic.wait_settlement(node) - log.info("Node exit pledge") - client.staking.withdrew_staking(staking_address) - log.info("Node to increase holding") - msg = client.staking.increase_staking(0, staking_address, amount=economic.add_staking_limit) - assert_code(msg, 301103) - log.info("Node to commission") - msg = client.delegate.delegate(0, client.delegate_address) - assert_code(msg, 301103) - - - -def test_dsda(client_new_node): - """ - - """ - client = client_new_node - node = client.node - economic = client.economic - staking_address, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - staking_address1, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - staking_address2, _ = economic.account.generate_account(node.web3, economic.create_staking_limit * 2) - result = client.staking.create_staking(0, staking_address, staking_address) - assert_code(result, 0) - print(client.node.ppos.getCandidateInfo(node.node_id)) - print("1---------------") - result = client.staking.edit_candidate(staking_address, staking_address1) - assert_code(result, 0) - print(client.node.ppos.getCandidateInfo(node.node_id)) - print("2---------------") - result = client.staking.edit_candidate(staking_address, staking_address2) - assert_code(result, 0) - print(client.node.ppos.getCandidateInfo(node.node_id)) - print("3---------------") \ No newline at end of file diff --git a/cases/tool/linux/duplicateSign b/cases/tool/linux/duplicateSign deleted file mode 100644 index 2e1ee221ab..0000000000 Binary files a/cases/tool/linux/duplicateSign and /dev/null differ diff --git a/cases/tool/linux/get_pubkey_for_blocknum b/cases/tool/linux/get_pubkey_for_blocknum deleted file mode 100644 index 8f728afd0b..0000000000 Binary files a/cases/tool/linux/get_pubkey_for_blocknum and /dev/null differ diff --git a/cases/tool/linux/keytool b/cases/tool/linux/keytool deleted file mode 100644 index 5610bb9223..0000000000 Binary files a/cases/tool/linux/keytool and /dev/null differ diff --git a/cases/tool/win/bls_win/README.md b/cases/tool/win/bls_win/README.md deleted file mode 100644 index fb1f99ea96..0000000000 --- a/cases/tool/win/bls_win/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# BLS_WIN - -## Overview - -BLS libs for windows platforms diff --git a/cases/tool/win/bls_win/include/bls/bls.h b/cases/tool/win/bls_win/include/bls/bls.h deleted file mode 100644 index 01ac5063b8..0000000000 --- a/cases/tool/win/bls_win/include/bls/bls.h +++ /dev/null @@ -1,285 +0,0 @@ -#pragma once -/** - @file - @brief C interface of bls.hpp - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#define MCLBN_NO_AUTOLINK -#include - -#ifdef BLS_SWAP_G - /* - error if BLS_SWAP_G is inconsistently used between library and exe - */ - #undef MCLBN_COMPILED_TIME_VAR - #define MCLBN_COMPILED_TIME_VAR ((MCLBN_FR_UNIT_SIZE) * 10 + (MCLBN_FP_UNIT_SIZE) + 100) -#endif - -#ifdef _MSC_VER - #ifdef BLS_DONT_EXPORT - #define BLS_DLL_API - #else - #ifdef BLS_DLL_EXPORT - #define BLS_DLL_API __declspec(dllexport) - #else - #define BLS_DLL_API __declspec(dllimport) - #endif - #endif - #ifndef BLS_NO_AUTOLINK - #if MCLBN_FP_UNIT_SIZE == 4 - #pragma comment(lib, "bls256.lib") - #elif (MCLBN_FP_UNIT_SIZE == 6) && (MCLBN_FR_UNIT_SIZE == 4) - #pragma comment(lib, "bls384_256.lib") - #elif (MCLBN_FP_UNIT_SIZE == 6) && (MCLBN_FR_UNIT_SIZE == 6) - #pragma comment(lib, "bls384.lib") - #endif - #endif -#elif defined(__EMSCRIPTEN__) && !defined(BLS_DONT_EXPORT) - #define BLS_DLL_API __attribute__((used)) -#elif defined(__wasm__) && !defined(BLS_DONT_EXPORT) - #define BLS_DLL_API __attribute__((visibility("default"))) -#else - #define BLS_DLL_API -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct { - mclBnFr v; -} blsId; - -typedef struct { - mclBnFr v; -} blsSecretKey; - -typedef struct { -#ifdef BLS_SWAP_G - mclBnG1 v; -#else - mclBnG2 v; -#endif -} blsPublicKey; - -typedef struct { -#ifdef BLS_SWAP_G - mclBnG2 v; -#else - mclBnG1 v; -#endif -} blsSignature; - -/* - initialize this library - call this once before using the other functions - @param curve [in] enum value defined in mcl/bn.h - @param compiledTimeVar [in] specify MCLBN_COMPILED_TIME_VAR, - which macro is used to make sure that the values - are the same when the library is built and used - @return 0 if success - @note blsInit() is not thread safe -*/ -BLS_DLL_API int blsInit(int curve, int compiledTimeVar); -/* - set ETH serialization mode for BLS12-381 - @param ETHserialization [in] 1:enable, 0:disable - @note ignore the flag if curve is not BLS12-381 -*/ -BLS_DLL_API void blsSetETHserialization(int ETHserialization); - -BLS_DLL_API void blsIdSetInt(blsId *id, int x); - -// sec = buf & (1 << bitLen(r)) - 1 -// if (sec >= r) sec &= (1 << (bitLen(r) - 1)) - 1 -// always return 0 -BLS_DLL_API int blsSecretKeySetLittleEndian(blsSecretKey *sec, const void *buf, mclSize bufSize); -// return 0 if success (bufSize <= 64) else -1 -// set (buf mod r) to sec -BLS_DLL_API int blsSecretKeySetLittleEndianMod(blsSecretKey *sec, const void *buf, mclSize bufSize); - -BLS_DLL_API void blsGetPublicKey(blsPublicKey *pub, const blsSecretKey *sec); - -// calculate the has of m and sign the hash -BLS_DLL_API void blsSign(blsSignature *sig, const blsSecretKey *sec, const void *m, mclSize size); - -// return 1 if valid -BLS_DLL_API int blsVerify(const blsSignature *sig, const blsPublicKey *pub, const void *m, mclSize size); - -// return written byte size if success else 0 -BLS_DLL_API mclSize blsIdSerialize(void *buf, mclSize maxBufSize, const blsId *id); -BLS_DLL_API mclSize blsSecretKeySerialize(void *buf, mclSize maxBufSize, const blsSecretKey *sec); -BLS_DLL_API mclSize blsPublicKeySerialize(void *buf, mclSize maxBufSize, const blsPublicKey *pub); -BLS_DLL_API mclSize blsSignatureSerialize(void *buf, mclSize maxBufSize, const blsSignature *sig); - -// return read byte size if success else 0 -BLS_DLL_API mclSize blsIdDeserialize(blsId *id, const void *buf, mclSize bufSize); -BLS_DLL_API mclSize blsSecretKeyDeserialize(blsSecretKey *sec, const void *buf, mclSize bufSize); -BLS_DLL_API mclSize blsPublicKeyDeserialize(blsPublicKey *pub, const void *buf, mclSize bufSize); -BLS_DLL_API mclSize blsSignatureDeserialize(blsSignature *sig, const void *buf, mclSize bufSize); - -// return 1 if same else 0 -BLS_DLL_API int blsIdIsEqual(const blsId *lhs, const blsId *rhs); -BLS_DLL_API int blsSecretKeyIsEqual(const blsSecretKey *lhs, const blsSecretKey *rhs); -BLS_DLL_API int blsPublicKeyIsEqual(const blsPublicKey *lhs, const blsPublicKey *rhs); -BLS_DLL_API int blsSignatureIsEqual(const blsSignature *lhs, const blsSignature *rhs); - -// return 0 if success -BLS_DLL_API int blsSecretKeyShare(blsSecretKey *sec, const blsSecretKey* msk, mclSize k, const blsId *id); -BLS_DLL_API int blsPublicKeyShare(blsPublicKey *pub, const blsPublicKey *mpk, mclSize k, const blsId *id); - -BLS_DLL_API int blsSecretKeyRecover(blsSecretKey *sec, const blsSecretKey *secVec, const blsId *idVec, mclSize n); -BLS_DLL_API int blsPublicKeyRecover(blsPublicKey *pub, const blsPublicKey *pubVec, const blsId *idVec, mclSize n); -BLS_DLL_API int blsSignatureRecover(blsSignature *sig, const blsSignature *sigVec, const blsId *idVec, mclSize n); - -// add -BLS_DLL_API void blsSecretKeyAdd(blsSecretKey *sec, const blsSecretKey *rhs); -BLS_DLL_API void blsPublicKeyAdd(blsPublicKey *pub, const blsPublicKey *rhs); -BLS_DLL_API void blsSignatureAdd(blsSignature *sig, const blsSignature *rhs); - -/* - verify whether a point of an elliptic curve has order r - This api affetcs setStr(), deserialize() for G2 on BN or G1/G2 on BLS12 - @param doVerify [in] does not verify if zero(default 1) - Signature = G1, PublicKey = G2 -*/ -BLS_DLL_API void blsSignatureVerifyOrder(int doVerify); -BLS_DLL_API void blsPublicKeyVerifyOrder(int doVerify); -// deserialize under VerifyOrder(true) = deserialize under VerifyOrder(false) + IsValidOrder -BLS_DLL_API int blsSignatureIsValidOrder(const blsSignature *sig); -BLS_DLL_API int blsPublicKeyIsValidOrder(const blsPublicKey *pub); - -#ifndef BLS_MINIMUM_API - -/* - verify X == sY by checking e(X, sQ) = e(Y, Q) - @param X [in] - @param Y [in] - @param pub [in] pub = sQ - @return 1 if e(X, pub) = e(Y, Q) else 0 -*/ -BLS_DLL_API int blsVerifyPairing(const blsSignature *X, const blsSignature *Y, const blsPublicKey *pub); - -/* - sign the hash - use the low (bitSize of r) - 1 bit of h - return 0 if success else -1 - NOTE : return false if h is zero or c1 or -c1 value for BN254. see hashTest() in test/bls_test.hpp -*/ -BLS_DLL_API int blsSignHash(blsSignature *sig, const blsSecretKey *sec, const void *h, mclSize size); -// return 1 if valid -BLS_DLL_API int blsVerifyHash(const blsSignature *sig, const blsPublicKey *pub, const void *h, mclSize size); - -/* - verify aggSig with pubVec[0, n) and hVec[0, n) - e(aggSig, Q) = prod_i e(hVec[i], pubVec[i]) - return 1 if valid - @note do not check duplication of hVec -*/ -BLS_DLL_API int blsVerifyAggregatedHashes(const blsSignature *aggSig, const blsPublicKey *pubVec, const void *hVec, size_t sizeofHash, mclSize n); - -// sub -BLS_DLL_API void blsSecretKeySub(blsSecretKey *sec, const blsSecretKey *rhs); -BLS_DLL_API void blsPublicKeySub(blsPublicKey *pub, const blsPublicKey *rhs); -BLS_DLL_API void blsSignatureSub(blsSignature *sig, const blsSignature *rhs); - -// not thread safe version (old blsInit) -BLS_DLL_API int blsInitNotThreadSafe(int curve, int compiledTimeVar); - -BLS_DLL_API mclSize blsGetOpUnitSize(void); -// return strlen(buf) if success else 0 -BLS_DLL_API int blsGetCurveOrder(char *buf, mclSize maxBufSize); -BLS_DLL_API int blsGetFieldOrder(char *buf, mclSize maxBufSize); - -// return serialized secretKey size -BLS_DLL_API int blsGetSerializedSecretKeyByteSize(void); -// return serialized publicKey size -BLS_DLL_API int blsGetSerializedPublicKeyByteSize(void); -// return serialized signature size -BLS_DLL_API int blsGetSerializedSignatureByteSize(void); - -// return bytes for serialized G1(=Fp) -BLS_DLL_API int blsGetG1ByteSize(void); - -// return bytes for serialized Fr -BLS_DLL_API int blsGetFrByteSize(void); - -// get a generator of PublicKey -BLS_DLL_API void blsGetGeneratorOfPublicKey(blsPublicKey *pub); - -// return 0 if success -BLS_DLL_API int blsIdSetDecStr(blsId *id, const char *buf, mclSize bufSize); -BLS_DLL_API int blsIdSetHexStr(blsId *id, const char *buf, mclSize bufSize); - -/* - return strlen(buf) if success else 0 - buf is '\0' terminated -*/ -BLS_DLL_API mclSize blsIdGetDecStr(char *buf, mclSize maxBufSize, const blsId *id); -BLS_DLL_API mclSize blsIdGetHexStr(char *buf, mclSize maxBufSize, const blsId *id); - -// hash buf and set SecretKey -BLS_DLL_API int blsHashToSecretKey(blsSecretKey *sec, const void *buf, mclSize bufSize); -// hash buf and set Signature -BLS_DLL_API int blsHashToSignature(blsSignature *sig, const void *buf, mclSize bufSize); -#ifndef MCL_DONT_USE_CSPRNG -/* - set secretKey if system has /dev/urandom or CryptGenRandom - return 0 if success else -1 -*/ -BLS_DLL_API int blsSecretKeySetByCSPRNG(blsSecretKey *sec); -/* - set user-defined random function for setByCSPRNG - @param self [in] user-defined pointer - @param readFunc [in] user-defined function, - which writes random bufSize bytes to buf and returns bufSize if success else returns 0 - @note if self == 0 and readFunc == 0 then set default random function - @note not threadsafe -*/ -BLS_DLL_API void blsSetRandFunc(void *self, unsigned int (*readFunc)(void *self, void *buf, unsigned int bufSize)); -#endif - -BLS_DLL_API void blsGetPop(blsSignature *sig, const blsSecretKey *sec); - -BLS_DLL_API int blsVerifyPop(const blsSignature *sig, const blsPublicKey *pub); -////////////////////////////////////////////////////////////////////////// -// the following apis will be removed - -// mask buf with (1 << (bitLen(r) - 1)) - 1 if buf >= r -BLS_DLL_API int blsIdSetLittleEndian(blsId *id, const void *buf, mclSize bufSize); -/* - return written byte size if success else 0 -*/ -BLS_DLL_API mclSize blsIdGetLittleEndian(void *buf, mclSize maxBufSize, const blsId *id); - -// return 0 if success -BLS_DLL_API int blsSecretKeySetDecStr(blsSecretKey *sec, const char *buf, mclSize bufSize); -BLS_DLL_API int blsSecretKeySetHexStr(blsSecretKey *sec, const char *buf, mclSize bufSize); -/* - return written byte size if success else 0 -*/ -BLS_DLL_API mclSize blsSecretKeyGetLittleEndian(void *buf, mclSize maxBufSize, const blsSecretKey *sec); -/* - return strlen(buf) if success else 0 - buf is '\0' terminated -*/ -BLS_DLL_API mclSize blsSecretKeyGetDecStr(char *buf, mclSize maxBufSize, const blsSecretKey *sec); -BLS_DLL_API mclSize blsSecretKeyGetHexStr(char *buf, mclSize maxBufSize, const blsSecretKey *sec); -BLS_DLL_API int blsPublicKeySetHexStr(blsPublicKey *pub, const char *buf, mclSize bufSize); -BLS_DLL_API mclSize blsPublicKeyGetHexStr(char *buf, mclSize maxBufSize, const blsPublicKey *pub); -BLS_DLL_API int blsSignatureSetHexStr(blsSignature *sig, const char *buf, mclSize bufSize); -BLS_DLL_API mclSize blsSignatureGetHexStr(char *buf, mclSize maxBufSize, const blsSignature *sig); - -/* - Diffie Hellman key exchange - out = sec * pub -*/ -BLS_DLL_API void blsDHKeyExchange(blsPublicKey *out, const blsSecretKey *sec, const blsPublicKey *pub); - -#endif // BLS_MINIMUM_API - -#ifdef __cplusplus -} -#endif diff --git a/cases/tool/win/bls_win/include/bls/bls.hpp b/cases/tool/win/bls_win/include/bls/bls.hpp deleted file mode 100644 index 7413345552..0000000000 --- a/cases/tool/win/bls_win/include/bls/bls.hpp +++ /dev/null @@ -1,534 +0,0 @@ -#pragma once -/** - @file - @brief BLS threshold signature on BN curve - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include -#include -#include -#include -#include -#include - -namespace bls { - -// same value with IoMode of mcl/op.hpp -enum { - IoBin = 2, // binary number - IoDec = 10, // decimal number - IoHex = 16, // hexadecimal number - IoPrefix = 128, // append '0b'(bin) or '0x'(hex) - IoSerialize = 512, - IoFixedByteSeq = IoSerialize // fixed byte representation -}; - -/* - BLS signature - e : G2 x G1 -> Fp12 - Q in G2 ; fixed global parameter - H : {str} -> G1 - s : secret key - sQ ; public key - s H(m) ; signature of m - verify ; e(sQ, H(m)) = e(Q, s H(m)) -*/ - -/* - initialize this library - call this once before using the other method - @param curve [in] type of curve - @param compiledTimevar [in] use the default value - @note init() is not thread safe -*/ -inline void init(int curve = mclBn_CurveFp254BNb, int compiledTimeVar = MCLBN_COMPILED_TIME_VAR) -{ - if (blsInit(curve, compiledTimeVar) != 0) throw std::invalid_argument("blsInit"); -} -inline size_t getOpUnitSize() { return blsGetOpUnitSize(); } - -inline void getCurveOrder(std::string& str) -{ - str.resize(1024); - mclSize n = blsGetCurveOrder(&str[0], str.size()); - if (n == 0) throw std::runtime_error("blsGetCurveOrder"); - str.resize(n); -} -inline void getFieldOrder(std::string& str) -{ - str.resize(1024); - mclSize n = blsGetFieldOrder(&str[0], str.size()); - if (n == 0) throw std::runtime_error("blsGetFieldOrder"); - str.resize(n); -} -inline int getG1ByteSize() { return blsGetG1ByteSize(); } -inline int getFrByteSize() { return blsGetFrByteSize(); } - -namespace local { -/* - the value of secretKey and Id must be less than - r = 0x2523648240000001ba344d8000000007ff9f800000000010a10000000000000d - sizeof(uint64_t) * keySize byte -*/ -const size_t keySize = MCLBN_FP_UNIT_SIZE; -} - -class SecretKey; -class PublicKey; -class Signature; -class Id; - -typedef std::vector SecretKeyVec; -typedef std::vector PublicKeyVec; -typedef std::vector SignatureVec; -typedef std::vector IdVec; - -class Id { - blsId self_; - friend class PublicKey; - friend class SecretKey; - friend class Signature; -public: - Id(unsigned int id = 0) - { - blsIdSetInt(&self_, id); - } - bool operator==(const Id& rhs) const - { - return blsIdIsEqual(&self_, &rhs.self_) == 1; - } - bool operator!=(const Id& rhs) const { return !(*this == rhs); } - friend std::ostream& operator<<(std::ostream& os, const Id& id) - { - std::string str; - id.getStr(str, 16|IoPrefix); - return os << str; - } - friend std::istream& operator>>(std::istream& is, Id& id) - { - std::string str; - is >> str; - id.setStr(str, 16); - return is; - } - void getStr(std::string& str, int ioMode = 0) const - { - str.resize(1024); - size_t n = mclBnFr_getStr(&str[0], str.size(), &self_.v, ioMode); - if (n == 0) throw std::runtime_error("mclBnFr_getStr"); - str.resize(n); - } - void setStr(const std::string& str, int ioMode = 0) - { - int ret = mclBnFr_setStr(&self_.v, str.c_str(), str.size(), ioMode); - if (ret != 0) throw std::runtime_error("mclBnFr_setStr"); - } - bool isZero() const - { - return mclBnFr_isZero(&self_.v) == 1; - } - /* - set p[0, .., keySize) - @note the value must be less than r - */ - void set(const uint64_t *p) - { - setLittleEndian(p, local::keySize * sizeof(uint64_t)); - } - // bufSize is truncted/zero extended to keySize - void setLittleEndian(const void *buf, size_t bufSize) - { - mclBnFr_setLittleEndian(&self_.v, buf, bufSize); - } -}; - -/* - s ; secret key -*/ -class SecretKey { - blsSecretKey self_; -public: - bool operator==(const SecretKey& rhs) const - { - return blsSecretKeyIsEqual(&self_, &rhs.self_) == 1; - } - bool operator!=(const SecretKey& rhs) const { return !(*this == rhs); } - friend std::ostream& operator<<(std::ostream& os, const SecretKey& sec) - { - std::string str; - sec.getStr(str, 16|IoPrefix); - return os << str; - } - friend std::istream& operator>>(std::istream& is, SecretKey& sec) - { - std::string str; - is >> str; - sec.setStr(str); - return is; - } - void getStr(std::string& str, int ioMode = 0) const - { - str.resize(1024); - size_t n = mclBnFr_getStr(&str[0], str.size(), &self_.v, ioMode); - if (n == 0) throw std::runtime_error("mclBnFr_getStr"); - str.resize(n); - } - void setStr(const std::string& str, int ioMode = 0) - { - int ret = mclBnFr_setStr(&self_.v, str.c_str(), str.size(), ioMode); - if (ret != 0) throw std::runtime_error("mclBnFr_setStr"); - } - /* - initialize secretKey with random number - */ - void init() - { - int ret = blsSecretKeySetByCSPRNG(&self_); - if (ret != 0) throw std::runtime_error("blsSecretKeySetByCSPRNG"); - } - /* - set secretKey with p[0, .., keySize) and set id = 0 - @note the value must be less than r - */ - void set(const uint64_t *p) - { - setLittleEndian(p, local::keySize * sizeof(uint64_t)); - } - // bufSize is truncted/zero extended to keySize - void setLittleEndian(const void *buf, size_t bufSize) - { - mclBnFr_setLittleEndian(&self_.v, buf, bufSize); - } - // set hash of buf - void setHashOf(const void *buf, size_t bufSize) - { - int ret = mclBnFr_setHashOf(&self_.v, buf, bufSize); - if (ret != 0) throw std::runtime_error("mclBnFr_setHashOf"); - } - void getPublicKey(PublicKey& pub) const; - // constant time sign - // sign hash(m) - void sign(Signature& sig, const void *m, size_t size) const; - void sign(Signature& sig, const std::string& m) const - { - sign(sig, m.c_str(), m.size()); - } - // sign hashed value - void signHash(Signature& sig, const void *h, size_t size) const; - void signHash(Signature& sig, const std::string& h) const - { - signHash(sig, h.c_str(), h.size()); - } - /* - make Pop(Proof of Possesion) - pop = prv.sign(pub) - */ - void getPop(Signature& pop) const; - /* - make [s_0, ..., s_{k-1}] to prepare k-out-of-n secret sharing - */ - void getMasterSecretKey(SecretKeyVec& msk, size_t k) const - { - if (k <= 1) throw std::invalid_argument("getMasterSecretKey"); - msk.resize(k); - msk[0] = *this; - for (size_t i = 1; i < k; i++) { - msk[i].init(); - } - } - /* - set a secret key for id > 0 from msk - */ - void set(const SecretKeyVec& msk, const Id& id) - { - set(msk.data(), msk.size(), id); - } - /* - recover secretKey from k secVec - */ - void recover(const SecretKeyVec& secVec, const IdVec& idVec) - { - if (secVec.size() != idVec.size()) throw std::invalid_argument("SecretKey:recover"); - recover(secVec.data(), idVec.data(), idVec.size()); - } - /* - add secret key - */ - void add(const SecretKey& rhs); - - // the following methods are for C api - /* - the size of msk must be k - */ - void set(const SecretKey *msk, size_t k, const Id& id) - { - int ret = blsSecretKeyShare(&self_, &msk->self_, k, &id.self_); - if (ret != 0) throw std::runtime_error("blsSecretKeyShare"); - } - void recover(const SecretKey *secVec, const Id *idVec, size_t n) - { - int ret = blsSecretKeyRecover(&self_, &secVec->self_, &idVec->self_, n); - if (ret != 0) throw std::runtime_error("blsSecretKeyRecover:same id"); - } -}; - -/* - sQ ; public key -*/ -class PublicKey { - blsPublicKey self_; - friend class SecretKey; - friend class Signature; -public: - bool operator==(const PublicKey& rhs) const - { - return blsPublicKeyIsEqual(&self_, &rhs.self_) == 1; - } - bool operator!=(const PublicKey& rhs) const { return !(*this == rhs); } - friend std::ostream& operator<<(std::ostream& os, const PublicKey& pub) - { - std::string str; - pub.getStr(str, 16|IoPrefix); - return os << str; - } - friend std::istream& operator>>(std::istream& is, PublicKey& pub) - { - std::string str; - is >> str; - if (str != "0") { - // 1 - std::string t; -#ifdef BLS_SWAP_G - const int elemNum = 2; -#else - const int elemNum = 4; -#endif - for (int i = 0; i < elemNum; i++) { - is >> t; - str += ' '; - str += t; - } - } - pub.setStr(str, 16); - return is; - } - void getStr(std::string& str, int ioMode = 0) const - { - str.resize(1024); -#ifdef BLS_SWAP_G - size_t n = mclBnG1_getStr(&str[0], str.size(), &self_.v, ioMode); -#else - size_t n = mclBnG2_getStr(&str[0], str.size(), &self_.v, ioMode); -#endif - if (n == 0) throw std::runtime_error("PublicKey:getStr"); - str.resize(n); - } - void setStr(const std::string& str, int ioMode = 0) - { -#ifdef BLS_SWAP_G - int ret = mclBnG1_setStr(&self_.v, str.c_str(), str.size(), ioMode); -#else - int ret = mclBnG2_setStr(&self_.v, str.c_str(), str.size(), ioMode); -#endif - if (ret != 0) throw std::runtime_error("PublicKey:setStr"); - } - /* - set public for id from mpk - */ - void set(const PublicKeyVec& mpk, const Id& id) - { - set(mpk.data(), mpk.size(), id); - } - /* - recover publicKey from k pubVec - */ - void recover(const PublicKeyVec& pubVec, const IdVec& idVec) - { - if (pubVec.size() != idVec.size()) throw std::invalid_argument("PublicKey:recover"); - recover(pubVec.data(), idVec.data(), idVec.size()); - } - /* - add public key - */ - void add(const PublicKey& rhs) - { - blsPublicKeyAdd(&self_, &rhs.self_); - } - - // the following methods are for C api - void set(const PublicKey *mpk, size_t k, const Id& id) - { - int ret = blsPublicKeyShare(&self_, &mpk->self_, k, &id.self_); - if (ret != 0) throw std::runtime_error("blsPublicKeyShare"); - } - void recover(const PublicKey *pubVec, const Id *idVec, size_t n) - { - int ret = blsPublicKeyRecover(&self_, &pubVec->self_, &idVec->self_, n); - if (ret != 0) throw std::runtime_error("blsPublicKeyRecover"); - } -}; - -/* - s H(m) ; signature -*/ -class Signature { - blsSignature self_; - friend class SecretKey; -public: - bool operator==(const Signature& rhs) const - { - return blsSignatureIsEqual(&self_, &rhs.self_) == 1; - } - bool operator!=(const Signature& rhs) const { return !(*this == rhs); } - friend std::ostream& operator<<(std::ostream& os, const Signature& sig) - { - std::string str; - sig.getStr(str, 16|IoPrefix); - return os << str; - } - friend std::istream& operator>>(std::istream& is, Signature& sig) - { - std::string str; - is >> str; - if (str != "0") { - // 1 - std::string t; -#ifdef BLS_SWAP_G - const int elemNum = 4; -#else - const int elemNum = 2; -#endif - for (int i = 0; i < elemNum; i++) { - is >> t; - str += ' '; - str += t; - } - } - sig.setStr(str, 16); - return is; - } - void getStr(std::string& str, int ioMode = 0) const - { - str.resize(1024); -#ifdef BLS_SWAP_G - size_t n = mclBnG2_getStr(&str[0], str.size(), &self_.v, ioMode); -#else - size_t n = mclBnG1_getStr(&str[0], str.size(), &self_.v, ioMode); -#endif - if (n == 0) throw std::runtime_error("Signature:tgetStr"); - str.resize(n); - } - void setStr(const std::string& str, int ioMode = 0) - { -#ifdef BLS_SWAP_G - int ret = mclBnG2_setStr(&self_.v, str.c_str(), str.size(), ioMode); -#else - int ret = mclBnG1_setStr(&self_.v, str.c_str(), str.size(), ioMode); -#endif - if (ret != 0) throw std::runtime_error("Signature:setStr"); - } - bool verify(const PublicKey& pub, const void *m, size_t size) const - { - return blsVerify(&self_, &pub.self_, m, size) == 1; - } - bool verify(const PublicKey& pub, const std::string& m) const - { - return verify(pub, m.c_str(), m.size()); - } - bool verifyHash(const PublicKey& pub, const void *h, size_t size) const - { - return blsVerifyHash(&self_, &pub.self_, h, size) == 1; - } - bool verifyHash(const PublicKey& pub, const std::string& h) const - { - return verifyHash(pub, h.c_str(), h.size()); - } - bool verifyAggregatedHashes(const PublicKey *pubVec, const void *hVec, size_t sizeofHash, size_t n) const - { - return blsVerifyAggregatedHashes(&self_, &pubVec[0].self_, hVec, sizeofHash, n) == 1; - } - /* - verify self(pop) with pub - */ - bool verify(const PublicKey& pub) const - { - std::string str; - pub.getStr(str); - return verify(pub, str); - } - /* - recover sig from k sigVec - */ - void recover(const SignatureVec& sigVec, const IdVec& idVec) - { - if (sigVec.size() != idVec.size()) throw std::invalid_argument("Signature:recover"); - recover(sigVec.data(), idVec.data(), idVec.size()); - } - /* - add signature - */ - void add(const Signature& rhs) - { - blsSignatureAdd(&self_, &rhs.self_); - } - - // the following methods are for C api - void recover(const Signature* sigVec, const Id *idVec, size_t n) - { - int ret = blsSignatureRecover(&self_, &sigVec->self_, &idVec->self_, n); - if (ret != 0) throw std::runtime_error("blsSignatureRecover:same id"); - } -}; - -/* - make master public key [s_0 Q, ..., s_{k-1} Q] from msk -*/ -inline void getMasterPublicKey(PublicKeyVec& mpk, const SecretKeyVec& msk) -{ - const size_t n = msk.size(); - mpk.resize(n); - for (size_t i = 0; i < n; i++) { - msk[i].getPublicKey(mpk[i]); - } -} - -inline void SecretKey::getPublicKey(PublicKey& pub) const -{ - blsGetPublicKey(&pub.self_, &self_); -} -inline void SecretKey::sign(Signature& sig, const void *m, size_t size) const -{ - blsSign(&sig.self_, &self_, m, size); -} -inline void SecretKey::signHash(Signature& sig, const void *h, size_t size) const -{ - if (blsSignHash(&sig.self_, &self_, h, size) != 0) throw std::runtime_error("bad h"); -} -inline void SecretKey::getPop(Signature& pop) const -{ - PublicKey pub; - getPublicKey(pub); - std::string m; - pub.getStr(m); - sign(pop, m); -} - -/* - make pop from msk and mpk -*/ -inline void getPopVec(SignatureVec& popVec, const SecretKeyVec& msk) -{ - const size_t n = msk.size(); - popVec.resize(n); - for (size_t i = 0; i < n; i++) { - msk[i].getPop(popVec[i]); - } -} - -inline Signature operator+(const Signature& a, const Signature& b) { Signature r(a); r.add(b); return r; } -inline PublicKey operator+(const PublicKey& a, const PublicKey& b) { PublicKey r(a); r.add(b); return r; } -inline SecretKey operator+(const SecretKey& a, const SecretKey& b) { SecretKey r(a); r.add(b); return r; } - -} //bls diff --git a/cases/tool/win/bls_win/include/cybozu/array.hpp b/cases/tool/win/bls_win/include/cybozu/array.hpp deleted file mode 100644 index 30df3667d4..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/array.hpp +++ /dev/null @@ -1,197 +0,0 @@ -#pragma once - -/** - @file - @brief scoped array and aligned array - - @author MITSUNARI Shigeo(@herumi) -*/ -#include -#include -#ifdef _WIN32 - #include -#else - #include -#endif -#include - -namespace cybozu { - -inline void *AlignedMalloc(size_t size, size_t alignment) -{ -#ifdef _WIN32 - return _aligned_malloc(size, alignment); -#else - void *p; - int ret = posix_memalign(&p, alignment, size); - return (ret == 0) ? p : 0; -#endif -} - -inline void AlignedFree(void *p) -{ -#ifdef _WIN32 - if (p == 0) return; - _aligned_free(p); -#else - free(p); -#endif -} - -template -class ScopedArray { - T *p_; - size_t size_; - ScopedArray(const ScopedArray&); - void operator=(const ScopedArray&); -public: - explicit ScopedArray(size_t size) - : p_(new T[size]) - , size_(size) - { - } - ~ScopedArray() - { - delete[] p_; - } - T& operator[](size_t idx) CYBOZU_NOEXCEPT { return p_[idx]; } - const T& operator[](size_t idx) const CYBOZU_NOEXCEPT { return p_[idx]; } - size_t size() const CYBOZU_NOEXCEPT { return size_; } - bool empty() const CYBOZU_NOEXCEPT { return size_ == 0; } - T* begin() CYBOZU_NOEXCEPT { return p_; } - T* end() CYBOZU_NOEXCEPT { return p_ + size_; } - const T* begin() const CYBOZU_NOEXCEPT { return p_; } - const T* end() const CYBOZU_NOEXCEPT { return p_ + size_; } - T* data() CYBOZU_NOEXCEPT { return p_; } - const T* data() const CYBOZU_NOEXCEPT { return p_; } -}; - -/** - T must be POD type - 16byte aligment array -*/ -template -class AlignedArray { - T *p_; - size_t size_; - size_t allocSize_; - T *alloc(size_t size) const - { - T *p = static_cast(AlignedMalloc(size * sizeof(T), N)); - if (p == 0) throw std::bad_alloc(); - return p; - } - void copy(T *dst, const T *src, size_t n) const - { - for (size_t i = 0; i < n; i++) dst[i] = src[i]; - } - void setZero(T *p, size_t n) const - { - for (size_t i = 0; i < n; i++) p[i] = 0; - } - /* - alloc allocN and copy [p, p + copyN) to new p_ - don't modify size_ - */ - void allocCopy(size_t allocN, const T *p, size_t copyN) - { - T *q = alloc(allocN); - copy(q, p, copyN); - AlignedFree(p_); - p_ = q; - allocSize_ = allocN; - } -public: - /* - don't clear buffer with zero if doClear is false - */ - explicit AlignedArray(size_t size = 0, bool doClear = defaultDoClear) - : p_(0) - , size_(0) - , allocSize_(0) - { - resize(size, doClear); - } - AlignedArray(const AlignedArray& rhs) - : p_(0) - , size_(0) - , allocSize_(0) - { - *this = rhs; - } - AlignedArray& operator=(const AlignedArray& rhs) - { - if (allocSize_ < rhs.size_) { - allocCopy(rhs.size_, rhs.p_, rhs.size_); - } else { - copy(p_, rhs.p_, rhs.size_); - } - size_ = rhs.size_; - return *this; - } -#if (CYBOZU_CPP_VERSION >= CYBOZU_CPP_VERSION_CPP11) - AlignedArray(AlignedArray&& rhs) CYBOZU_NOEXCEPT - : p_(rhs.p_) - , size_(rhs.size_) - , allocSize_(rhs.allocSize_) - { - rhs.p_ = 0; - rhs.size_ = 0; - rhs.allocSize_ = 0; - } - AlignedArray& operator=(AlignedArray&& rhs) CYBOZU_NOEXCEPT - { - swap(rhs); - rhs.clear(); - return *this; - } -#endif - /* - don't clear buffer with zero if doClear is false - @note don't free if shrinked - */ - void resize(size_t size, bool doClear = defaultDoClear) - { - // shrink - if (size <= size_) { - size_ = size; - return; - } - // realloc if necessary - if (size > allocSize_) { - allocCopy(size, p_, size_); - } - if (doClear) setZero(p_ + size_, size - size_); - size_ = size; - } - void clear() // not free - { - size_ = 0; - } - ~AlignedArray() - { - AlignedFree(p_); - } - void swap(AlignedArray& rhs) CYBOZU_NOEXCEPT - { - std::swap(p_, rhs.p_); - std::swap(size_, rhs.size_); - std::swap(allocSize_, rhs.allocSize_); - } - T& operator[](size_t idx) CYBOZU_NOEXCEPT { return p_[idx]; } - const T& operator[](size_t idx) const CYBOZU_NOEXCEPT { return p_[idx]; } - size_t size() const CYBOZU_NOEXCEPT { return size_; } - bool empty() const CYBOZU_NOEXCEPT { return size_ == 0; } - T* begin() CYBOZU_NOEXCEPT { return p_; } - T* end() CYBOZU_NOEXCEPT { return p_ + size_; } - const T* begin() const CYBOZU_NOEXCEPT { return p_; } - const T* end() const CYBOZU_NOEXCEPT { return p_ + size_; } - T* data() CYBOZU_NOEXCEPT { return p_; } - const T* data() const CYBOZU_NOEXCEPT { return p_; } -#if (CYBOZU_CPP_VERSION >= CYBOZU_CPP_VERSION_CPP11) - const T* cbegin() const CYBOZU_NOEXCEPT { return p_; } - const T* cend() const CYBOZU_NOEXCEPT { return p_ + size_; } -#endif -}; - -} // cybozu diff --git a/cases/tool/win/bls_win/include/cybozu/atoi.hpp b/cases/tool/win/bls_win/include/cybozu/atoi.hpp deleted file mode 100644 index a22853a17a..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/atoi.hpp +++ /dev/null @@ -1,239 +0,0 @@ -#pragma once -/** - @file - @brief converter between integer and string - - @author MITSUNARI Shigeo(@herumi) -*/ - -#include -#include -#include -#include - -namespace cybozu { - -namespace atoi_local { - -template -T convertToInt(bool *b, const char *p, size_t size, const char (&max)[n], T min, T overflow1, char overflow2) -{ - if (size > 0 && *p) { - bool isMinus = false; - size_t i = 0; - if (*p == '-') { - isMinus = true; - i++; - } - if (i < size && p[i]) { - // skip leading zero - while (i < size && p[i] == '0') i++; - // check minimum - if (isMinus && size - i >= n - 1 && memcmp(max, &p[i], n - 1) == 0) { - if (b) *b = true; - return min; - } - T x = 0; - for (;;) { - unsigned char c; - if (i == size || (c = static_cast(p[i])) == '\0') { - if (b) *b = true; - return isMinus ? -x : x; - } - unsigned int y = c - '0'; - if (y > 9 || x > overflow1 || (x == overflow1 && c >= overflow2)) { - break; - } - x = x * 10 + T(y); - i++; - } - } - } - if (b) { - *b = false; - return 0; - } else { - throw cybozu::Exception("atoi::convertToInt") << cybozu::exception::makeString(p, size); - } -} - -template -T convertToUint(bool *b, const char *p, size_t size, T overflow1, char overflow2) -{ - if (size > 0 && *p) { - size_t i = 0; - // skip leading zero - while (i < size && p[i] == '0') i++; - T x = 0; - for (;;) { - unsigned char c; - if (i == size || (c = static_cast(p[i])) == '\0') { - if (b) *b = true; - return x; - } - unsigned int y = c - '0'; - if (y > 9 || x > overflow1 || (x == overflow1 && c >= overflow2)) { - break; - } - x = x * 10 + T(y); - i++; - } - } - if (b) { - *b = false; - return 0; - } else { - throw cybozu::Exception("atoi::convertToUint") << cybozu::exception::makeString(p, size); - } -} - -template -T convertHexToInt(bool *b, const char *p, size_t size) -{ - if (size > 0 && *p) { - size_t i = 0; - T x = 0; - for (;;) { - unsigned int c; - if (i == size || (c = static_cast(p[i])) == '\0') { - if (b) *b = true; - return x; - } - if (c - 'A' <= 'F' - 'A') { - c = (c - 'A') + 10; - } else if (c - 'a' <= 'f' - 'a') { - c = (c - 'a') + 10; - } else if (c - '0' <= '9' - '0') { - c = c - '0'; - } else { - break; - } - // avoid overflow - if (x > (std::numeric_limits::max)() / 16) break; - x = x * 16 + T(c); - i++; - } - } - if (b) { - *b = false; - return 0; - } else { - throw cybozu::Exception("atoi::convertHexToInt") << cybozu::exception::makeString(p, size); - } -} - -} // atoi_local - -/** - auto detect return value class - @note if you set bool pointer p then throw nothing and set *p = false if bad string -*/ -class atoi { - const char *p_; - size_t size_; - bool *b_; - void set(bool *b, const char *p, size_t size) - { - b_ = b; - p_ = p; - size_ = size; - } -public: - atoi(const char *p, size_t size = -1) - { - set(0, p, size); - } - atoi(bool *b, const char *p, size_t size = -1) - { - set(b, p, size); - } - atoi(const std::string& str) - { - set(0, str.c_str(), str.size()); - } - atoi(bool *b, const std::string& str) - { - set(b, str.c_str(), str.size()); - } - inline operator signed char() const - { - return atoi_local::convertToInt(b_, p_, size_, "128", -128, 12, '8'); - } - inline operator unsigned char() const - { - return atoi_local::convertToUint(b_, p_, size_, 25, '6'); - } - inline operator short() const - { - return atoi_local::convertToInt(b_, p_, size_, "32768", -32768, 3276, '8'); - } - inline operator unsigned short() const - { - return atoi_local::convertToUint(b_, p_, size_, 6553, '6'); - } - inline operator int() const - { - return atoi_local::convertToInt(b_, p_, size_, "2147483648", INT_MIN, 214748364, '8'); - } - inline operator unsigned int() const - { - return atoi_local::convertToUint(b_, p_, size_, 429496729, '6'); - } - inline operator long long() const - { - return atoi_local::convertToInt(b_, p_, size_, "9223372036854775808", LLONG_MIN, 922337203685477580LL, '8'); - } - inline operator unsigned long long() const - { - return atoi_local::convertToUint(b_, p_, size_, 1844674407370955161ULL, '6'); - } -#if defined(__SIZEOF_LONG__) && (__SIZEOF_LONG__ == 8) - inline operator long() const { return static_cast(static_cast(*this)); } - inline operator unsigned long() const { return static_cast(static_cast(*this)); } -#else - inline operator long() const { return static_cast(static_cast(*this)); } - inline operator unsigned long() const { return static_cast(static_cast(*this)); } -#endif -}; - -class hextoi { - const char *p_; - size_t size_; - bool *b_; - void set(bool *b, const char *p, size_t size) - { - b_ = b; - p_ = p; - size_ = size; - } -public: - hextoi(const char *p, size_t size = -1) - { - set(0, p, size); - } - hextoi(bool *b, const char *p, size_t size = -1) - { - set(b, p, size); - } - hextoi(const std::string& str) - { - set(0, str.c_str(), str.size()); - } - hextoi(bool *b, const std::string& str) - { - set(b, str.c_str(), str.size()); - } - operator unsigned char() const { return atoi_local::convertHexToInt(b_, p_, size_); } - operator unsigned short() const { return atoi_local::convertHexToInt(b_, p_, size_); } - operator unsigned int() const { return atoi_local::convertHexToInt(b_, p_, size_); } - operator unsigned long() const { return atoi_local::convertHexToInt(b_, p_, size_); } - operator unsigned long long() const { return atoi_local::convertHexToInt(b_, p_, size_); } - operator char() const { return atoi_local::convertHexToInt(b_, p_, size_); } - operator signed char() const { return atoi_local::convertHexToInt(b_, p_, size_); } - operator short() const { return atoi_local::convertHexToInt(b_, p_, size_); } - operator int() const { return atoi_local::convertHexToInt(b_, p_, size_); } - operator long() const { return atoi_local::convertHexToInt(b_, p_, size_); } - operator long long() const { return atoi_local::convertHexToInt(b_, p_, size_); } -}; - -} // cybozu diff --git a/cases/tool/win/bls_win/include/cybozu/benchmark.hpp b/cases/tool/win/bls_win/include/cybozu/benchmark.hpp deleted file mode 100644 index 4c02f18696..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/benchmark.hpp +++ /dev/null @@ -1,212 +0,0 @@ -#pragma once -/** - @file - @brief measure exec time of function - @author MITSUNARI Shigeo -*/ -#if defined(_MSC_VER) && (MSC_VER <= 1500) - #include -#else - #include -#endif -#include - -#ifdef __EMSCRIPTEN__ - #define CYBOZU_BENCH_USE_GETTIMEOFDAY -#endif - -#ifdef CYBOZU_BENCH_USE_GETTIMEOFDAY - #include -#elif !defined(CYBOZU_BENCH_DONT_USE_RDTSC) - #if defined(_M_IX86) || defined(_M_X64) || defined(__i386__) || defined(__x86_64__) - #define CYBOZU_BENCH_USE_RDTSC - #define CYBOZU_BENCH_USE_CPU_TIMER - #endif - #if defined(__GNUC__) && defined(__ARM_ARCH_7A__) -// #define CYBOZU_BENCH_USE_MRC -// #define CYBOZU_BENCH_USE_CPU_TIMER - #endif -#endif - - -#include -#include -#ifdef _MSC_VER - #include - #include -#else -#endif - -#ifndef CYBOZU_UNUSED - #ifdef __GNUC__ - #define CYBOZU_UNUSED __attribute__((unused)) - #else - #define CYBOZU_UNUSED - #endif -#endif - -namespace cybozu { - -namespace bench { - -static void (*g_putCallback)(double); - -static inline void setPutCallback(void (*f)(double)) -{ - g_putCallback = f; -} - -} // cybozu::bench - -class CpuClock { -public: - static inline uint64_t getCpuClk() - { -#ifdef CYBOZU_BENCH_USE_RDTSC -#ifdef _MSC_VER - return __rdtsc(); -#else - unsigned int eax, edx; - __asm__ volatile("rdtsc" : "=a"(eax), "=d"(edx)); - return ((uint64_t)edx << 32) | eax; -#endif -#elif defined(CYBOZU_BENCH_USE_MRC) - uint32_t clk; - __asm__ volatile("mrc p15, 0, %0, c9, c13, 0" : "=r"(clk)); - return clk; -#else -#ifdef _MSC_VER - struct _timeb timeb; - _ftime_s(&timeb); - return uint64_t(timeb.time) * 1000000000 + timeb.millitm * 1000000; -#elif defined(CYBOZU_BENCH_USE_GETTIMEOFDAY) - struct timeval tv; - int ret CYBOZU_UNUSED = gettimeofday(&tv, 0); - assert(ret == 0); - return uint64_t(tv.tv_sec) * 1000000000 + tv.tv_usec * 1000; -#else - struct timespec tp; - int ret CYBOZU_UNUSED = clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &tp); - assert(ret == 0); - return uint64_t(tp.tv_sec) * 1000000000 + tp.tv_nsec; -#endif -#endif - } - CpuClock() - : clock_(0) - , count_(0) - { - } - void begin() - { - clock_ -= getCpuClk(); - } - void end() - { - clock_ += getCpuClk(); - count_++; - } - int getCount() const { return count_; } - uint64_t getClock() const { return clock_; } - void clear() { count_ = 0; clock_ = 0; } - void put(const char *msg = 0, int N = 1) const - { - double t = getClock() / double(getCount()) / N; - if (msg && *msg) printf("%s ", msg); - if (bench::g_putCallback) { - bench::g_putCallback(t); - return; - } -#ifdef CYBOZU_BENCH_USE_CPU_TIMER - if (t > 1e6) { - printf("%7.3fMclk", t * 1e-6); - } else if (t > 1e3) { - printf("%7.3fKclk", t * 1e-3); - } else { - printf("%6.2f clk", t); - } -#else - if (t > 1e6) { - printf("%7.3fmsec", t * 1e-6); - } else if (t > 1e3) { - printf("%7.3fusec", t * 1e-3); - } else { - printf("%6.2fnsec", t); - } -#endif - if (msg && *msg) printf("\n"); - } - // adhoc constatns for CYBOZU_BENCH -#ifdef CYBOZU_BENCH_USE_CPU_TIMER - static const int loopN1 = 1000; - static const int loopN2 = 100; - static const uint64_t maxClk = (uint64_t)1e8; -#else - static const int loopN1 = 100; - static const int loopN2 = 100; - static const uint64_t maxClk = (uint64_t)1e8; -#endif -private: - uint64_t clock_; - int count_; -}; - -namespace bench { - -static CpuClock g_clk; -static int CYBOZU_UNUSED g_loopNum; - -} // cybozu::bench -/* - loop counter is automatically determined - CYBOZU_BENCH(, , , , ...); - if msg == "" then only set g_clk, g_loopNum -*/ -#define CYBOZU_BENCH(msg, func, ...) \ -{ \ - const uint64_t _cybozu_maxClk = cybozu::CpuClock::maxClk; \ - cybozu::CpuClock _cybozu_clk; \ - for (int _cybozu_i = 0; _cybozu_i < cybozu::CpuClock::loopN2; _cybozu_i++) { \ - _cybozu_clk.begin(); \ - for (int _cybozu_j = 0; _cybozu_j < cybozu::CpuClock::loopN1; _cybozu_j++) { func(__VA_ARGS__); } \ - _cybozu_clk.end(); \ - if (_cybozu_clk.getClock() > _cybozu_maxClk) break; \ - } \ - if (msg && *msg) _cybozu_clk.put(msg, cybozu::CpuClock::loopN1); \ - cybozu::bench::g_clk = _cybozu_clk; cybozu::bench::g_loopNum = cybozu::CpuClock::loopN1; \ -} - -/* - double clk; - CYBOZU_BENCH_T(clk, , , , ...); - clk is set by CYBOZU_BENCH_T -*/ -#define CYBOZU_BENCH_T(clk, func, ...) \ -{ \ - const uint64_t _cybozu_maxClk = cybozu::CpuClock::maxClk; \ - cybozu::CpuClock _cybozu_clk; \ - for (int _cybozu_i = 0; _cybozu_i < cybozu::CpuClock::loopN2; _cybozu_i++) { \ - _cybozu_clk.begin(); \ - for (int _cybozu_j = 0; _cybozu_j < cybozu::CpuClock::loopN1; _cybozu_j++) { func(__VA_ARGS__); } \ - _cybozu_clk.end(); \ - if (_cybozu_clk.getClock() > _cybozu_maxClk) break; \ - } \ - clk = _cybozu_clk.getClock() / (double)_cybozu_clk.getCount() / cybozu::CpuClock::loopN1; \ -} - -/* - loop counter N is given - CYBOZU_BENCH_C(, , , , , ...); - if msg == "" then only set g_clk, g_loopNum -*/ -#define CYBOZU_BENCH_C(msg, _N, func, ...) \ -{ \ - cybozu::CpuClock _cybozu_clk; \ - _cybozu_clk.begin(); \ - for (int _cybozu_j = 0; _cybozu_j < _N; _cybozu_j++) { func(__VA_ARGS__); } \ - _cybozu_clk.end(); \ - if (msg && *msg) _cybozu_clk.put(msg, _N); \ - cybozu::bench::g_clk = _cybozu_clk; cybozu::bench::g_loopNum = _N; \ -} - -} // cybozu diff --git a/cases/tool/win/bls_win/include/cybozu/bit_operation.hpp b/cases/tool/win/bls_win/include/cybozu/bit_operation.hpp deleted file mode 100644 index 865c1e47d4..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/bit_operation.hpp +++ /dev/null @@ -1,139 +0,0 @@ -#pragma once -/** - @file - @brief bit operation -*/ -#include -#include - -#if (CYBOZU_HOST == CYBOZU_HOST_INTEL) - #if defined(_WIN32) - #include - #elif defined(__linux__) || defined(__CYGWIN__) || defined(__clang__) - #include - #elif defined(__GNUC__) - #include - #endif -#endif - -namespace cybozu { - -namespace bit_op_local { - -template -struct Tag {}; - -// sizeof(T) < 8 -template<> -struct Tag { - template - static inline int bsf(T x) - { -#if defined(_MSC_VER) - unsigned long out; - _BitScanForward(&out, x); -#pragma warning(suppress: 6102) - return out; -#else - return __builtin_ctz(x); -#endif - } - template - static inline int bsr(T x) - { -#if defined(_MSC_VER) - unsigned long out; - _BitScanReverse(&out, x); -#pragma warning(suppress: 6102) - return out; -#else - return __builtin_clz(x) ^ 0x1f; -#endif - } -}; - -// sizeof(T) == 8 -template<> -struct Tag { - template - static inline int bsf(T x) - { -#if defined(_MSC_VER) && defined(_WIN64) - unsigned long out; - _BitScanForward64(&out, x); -#pragma warning(suppress: 6102) - return out; -#elif defined(__x86_64__) - return __builtin_ctzll(x); -#else - const uint32_t L = uint32_t(x); - if (L) return Tag::bsf(L); - const uint32_t H = uint32_t(x >> 32); - return Tag::bsf(H) + 32; -#endif - } - template - static inline int bsr(T x) - { -#if defined(_MSC_VER) && defined(_WIN64) - unsigned long out; - _BitScanReverse64(&out, x); -#pragma warning(suppress: 6102) - return out; -#elif defined(__x86_64__) - return __builtin_clzll(x) ^ 0x3f; -#else - const uint32_t H = uint32_t(x >> 32); - if (H) return Tag::bsr(H) + 32; - const uint32_t L = uint32_t(x); - return Tag::bsr(L); -#endif - } -}; - -} // bit_op_local - -template -int bsf(T x) -{ - return bit_op_local::Tag::bsf(x); -} -template -int bsr(T x) -{ - return bit_op_local::Tag::bsr(x); -} - -template -uint64_t makeBitMask64(T x) -{ - assert(x < 64); - return (uint64_t(1) << x) - 1; -} - -template -uint32_t popcnt(T x); - -template<> -inline uint32_t popcnt(uint32_t x) -{ -#if defined(_MSC_VER) - return static_cast(_mm_popcnt_u32(x)); -#else - return static_cast(__builtin_popcount(x)); -#endif -} - -template<> -inline uint32_t popcnt(uint64_t x) -{ -#if defined(__x86_64__) - return static_cast(__builtin_popcountll(x)); -#elif defined(_WIN64) - return static_cast(_mm_popcnt_u64(x)); -#else - return popcnt(static_cast(x)) + popcnt(static_cast(x >> 32)); -#endif -} - -} // cybozu diff --git a/cases/tool/win/bls_win/include/cybozu/critical_section.hpp b/cases/tool/win/bls_win/include/cybozu/critical_section.hpp deleted file mode 100644 index 13d7f3a0e5..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/critical_section.hpp +++ /dev/null @@ -1,60 +0,0 @@ -#pragma once -/** - @file - @brief critical section - - @author MITSUNARI Shigeo(@herumi) - @author MITSUNARI Shigeo -*/ -#include - -namespace cybozu { - -class ConditionVariableCs; - -namespace thread { - -#ifdef _WIN32 -typedef CRITICAL_SECTION CsHandle; -inline void CsInit(CsHandle& cs) { InitializeCriticalSection(&cs); } -inline void CsLock(CsHandle& cs) { EnterCriticalSection(&cs); } -inline void CsUnlock(CsHandle& cs) { LeaveCriticalSection(&cs); } -inline void CsTerm(CsHandle& cs) { DeleteCriticalSection(&cs); } -#else -typedef pthread_mutex_t CsHandle; -inline void CsInit(CsHandle& cs) { pthread_mutex_init(&cs, NULL); } -inline void CsLock(CsHandle& cs) { pthread_mutex_lock(&cs); } -inline void CsUnlock(CsHandle& cs) { pthread_mutex_unlock(&cs); } -inline void CsTerm(CsHandle& cs) { pthread_mutex_destroy(&cs); } -#endif - -} // cybozu::thread - -class CriticalSection { - friend class cybozu::ConditionVariableCs; -public: - CriticalSection() - { - thread::CsInit(hdl_); - } - ~CriticalSection() - { - thread::CsTerm(hdl_); - } - inline void lock() - { - thread::CsLock(hdl_); - } - inline void unlock() - { - thread::CsUnlock(hdl_); - } -private: - CriticalSection(const CriticalSection&); - CriticalSection& operator=(const CriticalSection&); - thread::CsHandle hdl_; -}; - -typedef cybozu::thread::AutoLockT AutoLockCs; //!< auto lock critical section - -} // cybozu diff --git a/cases/tool/win/bls_win/include/cybozu/crypto.hpp b/cases/tool/win/bls_win/include/cybozu/crypto.hpp deleted file mode 100644 index d427179d95..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/crypto.hpp +++ /dev/null @@ -1,321 +0,0 @@ -#pragma once -/** - @file - @brief wrap openssl - @author MITSUNARI Shigeo(@herumi) -*/ - -#include -#ifdef __APPLE__ - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wdeprecated-declarations" -#endif -#if 0 //#ifdef __APPLE__ - #define COMMON_DIGEST_FOR_OPENSSL - #include - #include - #define SHA1 CC_SHA1 - #define SHA224 CC_SHA224 - #define SHA256 CC_SHA256 - #define SHA384 CC_SHA384 - #define SHA512 CC_SHA512 -#else -#include -#include -#include -#endif -#ifdef _MSC_VER - #include -#endif - -namespace cybozu { - -namespace crypto { - -class Hash { -public: - enum Name { - N_SHA1, - N_SHA224, - N_SHA256, - N_SHA384, - N_SHA512 - }; -private: - Name name_; - size_t hashSize_; - union { - SHA_CTX sha1; - SHA256_CTX sha256; - SHA512_CTX sha512; - } ctx_; -public: - static inline size_t getSize(Name name) - { - switch (name) { - case N_SHA1: return SHA_DIGEST_LENGTH; - case N_SHA224: return SHA224_DIGEST_LENGTH; - case N_SHA256: return SHA256_DIGEST_LENGTH; - case N_SHA384: return SHA384_DIGEST_LENGTH; - case N_SHA512: return SHA512_DIGEST_LENGTH; - default: - throw cybozu::Exception("crypto:Hash:getSize") << name; - } - } - static inline const char *getName(Name name) - { - switch (name) { - case N_SHA1: return "sha1"; - case N_SHA224: return "sha224"; - case N_SHA256: return "sha256"; - case N_SHA384: return "sha384"; - case N_SHA512: return "sha512"; - default: - throw cybozu::Exception("crypto:Hash:getName") << name; - } - } - static inline Name getName(const std::string& nameStr) - { - static const struct { - const char *nameStr; - Name name; - } tbl[] = { - { "sha1", N_SHA1 }, - { "sha224", N_SHA224 }, - { "sha256", N_SHA256 }, - { "sha384", N_SHA384 }, - { "sha512", N_SHA512 }, - }; - for (size_t i = 0; i < CYBOZU_NUM_OF_ARRAY(tbl); i++) { - if (nameStr == tbl[i].nameStr) return tbl[i].name; - } - throw cybozu::Exception("crypto:Hash:getName") << nameStr; - } - explicit Hash(Name name = N_SHA1) - : name_(name) - , hashSize_(getSize(name)) - { - reset(); - } - void update(const void *buf, size_t bufSize) - { - switch (name_) { - case N_SHA1: SHA1_Update(&ctx_.sha1, buf, bufSize); break; - case N_SHA224: SHA224_Update(&ctx_.sha256, buf, bufSize); break; - case N_SHA256: SHA256_Update(&ctx_.sha256, buf, bufSize); break; - case N_SHA384: SHA384_Update(&ctx_.sha512, buf, bufSize); break; - case N_SHA512: SHA512_Update(&ctx_.sha512, buf, bufSize); break; - } - } - void update(const std::string& buf) - { - update(buf.c_str(), buf.size()); - } - void reset() - { - switch (name_) { - case N_SHA1: SHA1_Init(&ctx_.sha1); break; - case N_SHA224: SHA224_Init(&ctx_.sha256); break; - case N_SHA256: SHA256_Init(&ctx_.sha256); break; - case N_SHA384: SHA384_Init(&ctx_.sha512); break; - case N_SHA512: SHA512_Init(&ctx_.sha512); break; - default: - throw cybozu::Exception("crypto:Hash:rset") << name_; - } - } - /* - md must have hashSize byte - @note clear inner buffer after calling digest - */ - void digest(void *out, const void *buf, size_t bufSize) - { - update(buf, bufSize); - unsigned char *md = reinterpret_cast(out); - switch (name_) { - case N_SHA1: SHA1_Final(md, &ctx_.sha1); break; - case N_SHA224: SHA224_Final(md, &ctx_.sha256); break; - case N_SHA256: SHA256_Final(md, &ctx_.sha256); break; - case N_SHA384: SHA384_Final(md, &ctx_.sha512); break; - case N_SHA512: SHA512_Final(md, &ctx_.sha512); break; - default: - throw cybozu::Exception("crypto:Hash:digest") << name_; - } - reset(); - } - std::string digest(const void *buf, size_t bufSize) - { - std::string ret; - ret.resize(hashSize_); - digest(&ret[0], buf, bufSize); - return ret; - } - std::string digest(const std::string& buf = "") - { - return digest(buf.c_str(), buf.size()); - } - /* - out must have necessary size - @note return written size - */ - static inline size_t digest(void *out, Name name, const void *buf, size_t bufSize) - { - unsigned char *md = (unsigned char*)out; - const unsigned char *src = cybozu::cast(buf); - switch (name) { - case N_SHA1: SHA1(src, bufSize, md); return 160 / 8; - case N_SHA224: SHA224(src, bufSize, md); return 224 / 8; - case N_SHA256: SHA256(src, bufSize, md); return 256 / 8; - case N_SHA384: SHA384(src, bufSize, md); return 384 / 8; - case N_SHA512: SHA512(src, bufSize, md); return 512 / 8; - default: - return 0; - } - } - static inline std::string digest(Name name, const void *buf, size_t bufSize) - { - char md[128]; - size_t size = digest(md, name, buf, bufSize); - if (size == 0) throw cybozu::Exception("crypt:Hash:digest") << name; - return std::string(md, size); - } - static inline std::string digest(Name name, const std::string& buf) - { - return digest(name, buf.c_str(), buf.size()); - } -}; - -class Hmac { - const EVP_MD *evp_; -public: - explicit Hmac(Hash::Name name = Hash::N_SHA1) - { - switch (name) { - case Hash::N_SHA1: evp_ = EVP_sha1(); break; - case Hash::N_SHA224: evp_ = EVP_sha224(); break; - case Hash::N_SHA256: evp_ = EVP_sha256(); break; - case Hash::N_SHA384: evp_ = EVP_sha384(); break; - case Hash::N_SHA512: evp_ = EVP_sha512(); break; - default: - throw cybozu::Exception("crypto:Hmac:") << name; - } - } - std::string eval(const std::string& key, const std::string& data) - { - std::string out(EVP_MD_size(evp_) + 1, 0); - unsigned int outLen = 0; - if (HMAC(evp_, key.c_str(), static_cast(key.size()), - cybozu::cast(data.c_str()), data.size(), cybozu::cast(&out[0]), &outLen)) { - out.resize(outLen); - return out; - } - throw cybozu::Exception("crypto::Hamc::eval"); - } -}; - -class Cipher { - const EVP_CIPHER *cipher_; - EVP_CIPHER_CTX *ctx_; -public: - enum Name { - N_AES128_CBC, - N_AES192_CBC, - N_AES256_CBC, - N_AES128_ECB, // be carefull to use - N_AES192_ECB, // be carefull to use - N_AES256_ECB, // be carefull to use - }; - static inline size_t getSize(Name name) - { - switch (name) { - case N_AES128_CBC: return 128; - case N_AES192_CBC: return 192; - case N_AES256_CBC: return 256; - case N_AES128_ECB: return 128; - case N_AES192_ECB: return 192; - case N_AES256_ECB: return 256; - default: - throw cybozu::Exception("crypto:Cipher:getSize") << name; - } - } - enum Mode { - Decoding, - Encoding - }; - explicit Cipher(Name name = N_AES128_CBC) - : cipher_(0) - , ctx_(0) - { - ctx_ = EVP_CIPHER_CTX_new(); - if (ctx_ == 0) throw cybozu::Exception("crypto:Cipher:EVP_CIPHER_CTX_new"); - switch (name) { - case N_AES128_CBC: cipher_ = EVP_aes_128_cbc(); break; - case N_AES192_CBC: cipher_ = EVP_aes_192_cbc(); break; - case N_AES256_CBC: cipher_ = EVP_aes_256_cbc(); break; - case N_AES128_ECB: cipher_ = EVP_aes_128_ecb(); break; - case N_AES192_ECB: cipher_ = EVP_aes_192_ecb(); break; - case N_AES256_ECB: cipher_ = EVP_aes_256_ecb(); break; - default: - throw cybozu::Exception("crypto:Cipher:Cipher:name") << (int)name; - } - } - ~Cipher() - { - if (ctx_) EVP_CIPHER_CTX_free(ctx_); - } - /* - @note don't use padding = true - */ - void setup(Mode mode, const std::string& key, const std::string& iv, bool padding = false) - { - const int keyLen = static_cast(key.size()); - const int expectedKeyLen = EVP_CIPHER_key_length(cipher_); - if (keyLen != expectedKeyLen) { - throw cybozu::Exception("crypto:Cipher:setup:keyLen") << keyLen << expectedKeyLen; - } - - int ret = EVP_CipherInit_ex(ctx_, cipher_, NULL, cybozu::cast(key.c_str()), cybozu::cast(iv.c_str()), mode == Encoding ? 1 : 0); - if (ret != 1) { - throw cybozu::Exception("crypto:Cipher:setup:EVP_CipherInit_ex") << ret; - } - ret = EVP_CIPHER_CTX_set_padding(ctx_, padding ? 1 : 0); - if (ret != 1) { - throw cybozu::Exception("crypto:Cipher:setup:EVP_CIPHER_CTX_set_padding") << ret; - } -/* - const int ivLen = static_cast(iv.size()); - const int expectedIvLen = EVP_CIPHER_CTX_iv_length(&ctx_); - if (ivLen != expectedIvLen) { - throw cybozu::Exception("crypto:Cipher:setup:ivLen") << ivLen << expectedIvLen; - } -*/ - } - /* - the size of outBuf must be larger than inBufSize + blockSize - @retval positive or 0 : writeSize(+blockSize) - @retval -1 : error - */ - int update(char *outBuf, const char *inBuf, int inBufSize) - { - int outLen = 0; - int ret = EVP_CipherUpdate(ctx_, cybozu::cast(outBuf), &outLen, cybozu::cast(inBuf), inBufSize); - if (ret != 1) return -1; - return outLen; - } - /* - return -1 if padding - @note don't use - */ - int finalize(char *outBuf) - { - int outLen = 0; - int ret = EVP_CipherFinal_ex(ctx_, cybozu::cast(outBuf), &outLen); - if (ret != 1) return -1; - return outLen; - } -}; - -} } // cybozu::crypto - -#ifdef __APPLE__ - #pragma GCC diagnostic pop -#endif diff --git a/cases/tool/win/bls_win/include/cybozu/endian.hpp b/cases/tool/win/bls_win/include/cybozu/endian.hpp deleted file mode 100644 index 3f1575c466..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/endian.hpp +++ /dev/null @@ -1,224 +0,0 @@ -#pragma once - -/** - @file - @brief deal with big and little endian - - @author MITSUNARI Shigeo(@herumi) -*/ -#include -#include -#include -#include - -namespace cybozu { - -#ifdef _MSC_VER -inline uint16_t byteSwap(uint16_t x) { return _byteswap_ushort(x); } -inline uint32_t byteSwap(uint32_t x) { return _byteswap_ulong(x); } -inline uint64_t byteSwap(uint64_t x) { return _byteswap_uint64(x); } -#else -#if (((__GNUC__) << 16) + (__GNUC_MINOR__)) >= ((4 << 16) + 8) -inline uint16_t byteSwap(uint16_t x) { return __builtin_bswap16(x); } -#else -inline uint16_t byteSwap(uint16_t x) { return (x >> 8) | (x << 8); } -#endif -inline uint32_t byteSwap(uint32_t x) { return __builtin_bswap32(x); } -inline uint64_t byteSwap(uint64_t x) { return __builtin_bswap64(x); } -#endif - -/** - get 16bit integer as little endian - @param src [in] pointer -*/ -inline uint16_t Get16bitAsLE(const void *src) -{ -#if CYBOZU_ENDIAN == CYBOZU_ENDIAN_LITTLE - uint16_t x; - memcpy(&x, src, sizeof(x)); - return x; -#else - const uint8_t *p = static_cast(src); - return p[0] | (p[1] << 8); -#endif -} - -/** - get 32bit integer as little endian - @param src [in] pointer -*/ -inline uint32_t Get32bitAsLE(const void *src) -{ -#if CYBOZU_ENDIAN == CYBOZU_ENDIAN_LITTLE - uint32_t x; - memcpy(&x, src, sizeof(x)); - return x; -#else - const uint8_t *p = static_cast(src); - return Get16bitAsLE(p) | (static_cast(Get16bitAsLE(p + 2)) << 16); -#endif -} - -/** - get 64bit integer as little endian - @param src [in] pointer -*/ -inline uint64_t Get64bitAsLE(const void *src) -{ -#if CYBOZU_ENDIAN == CYBOZU_ENDIAN_LITTLE - uint64_t x; - memcpy(&x, src, sizeof(x)); - return x; -#else - const uint8_t *p = static_cast(src); - return Get32bitAsLE(p) | (static_cast(Get32bitAsLE(p + 4)) << 32); -#endif -} - -/** - get 16bit integer as bit endian - @param src [in] pointer -*/ -inline uint16_t Get16bitAsBE(const void *src) -{ -#if CYBOZU_ENDIAN == CYBOZU_ENDIAN_LITTLE - uint16_t x; - memcpy(&x, src, sizeof(x)); - return byteSwap(x); -#else - const uint8_t *p = static_cast(src); - return p[1] | (p[0] << 8); -#endif -} - -/** - get 32bit integer as bit endian - @param src [in] pointer -*/ -inline uint32_t Get32bitAsBE(const void *src) -{ -#if CYBOZU_ENDIAN == CYBOZU_ENDIAN_LITTLE - uint32_t x; - memcpy(&x, src, sizeof(x)); - return byteSwap(x); -#else - const uint8_t *p = static_cast(src); - return Get16bitAsBE(p + 2) | (static_cast(Get16bitAsBE(p)) << 16); -#endif -} - -/** - get 64bit integer as big endian - @param src [in] pointer -*/ -inline uint64_t Get64bitAsBE(const void *src) -{ -#if CYBOZU_ENDIAN == CYBOZU_ENDIAN_LITTLE - uint64_t x; - memcpy(&x, src, sizeof(x)); - return byteSwap(x); -#else - const uint8_t *p = static_cast(src); - return Get32bitAsBE(p + 4) | (static_cast(Get32bitAsBE(p)) << 32); -#endif -} - -/** - set 16bit integer as little endian - @param src [out] pointer - @param x [in] integer -*/ -inline void Set16bitAsLE(void *src, uint16_t x) -{ -#if CYBOZU_ENDIAN == CYBOZU_ENDIAN_LITTLE - memcpy(src, &x, sizeof(x)); -#else - uint8_t *p = static_cast(src); - p[0] = static_cast(x); - p[1] = static_cast(x >> 8); -#endif -} -/** - set 32bit integer as little endian - @param src [out] pointer - @param x [in] integer -*/ -inline void Set32bitAsLE(void *src, uint32_t x) -{ -#if CYBOZU_ENDIAN == CYBOZU_ENDIAN_LITTLE - memcpy(src, &x, sizeof(x)); -#else - uint8_t *p = static_cast(src); - p[0] = static_cast(x); - p[1] = static_cast(x >> 8); - p[2] = static_cast(x >> 16); - p[3] = static_cast(x >> 24); -#endif -} -/** - set 64bit integer as little endian - @param src [out] pointer - @param x [in] integer -*/ -inline void Set64bitAsLE(void *src, uint64_t x) -{ -#if CYBOZU_ENDIAN == CYBOZU_ENDIAN_LITTLE - memcpy(src, &x, sizeof(x)); -#else - uint8_t *p = static_cast(src); - Set32bitAsLE(p, static_cast(x)); - Set32bitAsLE(p + 4, static_cast(x >> 32)); -#endif -} -/** - set 16bit integer as big endian - @param src [out] pointer - @param x [in] integer -*/ -inline void Set16bitAsBE(void *src, uint16_t x) -{ -#if CYBOZU_ENDIAN == CYBOZU_ENDIAN_LITTLE - x = byteSwap(x); - memcpy(src, &x, sizeof(x)); -#else - uint8_t *p = static_cast(src); - p[0] = static_cast(x >> 8); - p[1] = static_cast(x); -#endif -} -/** - set 32bit integer as big endian - @param src [out] pointer - @param x [in] integer -*/ -inline void Set32bitAsBE(void *src, uint32_t x) -{ -#if CYBOZU_ENDIAN == CYBOZU_ENDIAN_LITTLE - x = byteSwap(x); - memcpy(src, &x, sizeof(x)); -#else - uint8_t *p = static_cast(src); - p[0] = static_cast(x >> 24); - p[1] = static_cast(x >> 16); - p[2] = static_cast(x >> 8); - p[3] = static_cast(x); -#endif -} -/** - set 64bit integer as big endian - @param src [out] pointer - @param x [in] integer -*/ -inline void Set64bitAsBE(void *src, uint64_t x) -{ -#if CYBOZU_ENDIAN == CYBOZU_ENDIAN_LITTLE - x = byteSwap(x); - memcpy(src, &x, sizeof(x)); -#else - uint8_t *p = static_cast(src); - Set32bitAsBE(p, static_cast(x >> 32)); - Set32bitAsBE(p + 4, static_cast(x)); -#endif -} - -} // cybozu diff --git a/cases/tool/win/bls_win/include/cybozu/exception.hpp b/cases/tool/win/bls_win/include/cybozu/exception.hpp deleted file mode 100644 index 247ba4de04..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/exception.hpp +++ /dev/null @@ -1,252 +0,0 @@ -#pragma once -/** - @file - @brief definition of abstruct exception class - @author MITSUNARI Shigeo(@herumi) -*/ -#ifdef CYBOZU_MINIMUM_EXCEPTION - -#include - -namespace cybozu { - -namespace exception { -inline const char *makeString(const char *, size_t) -{ - return ""; -} - -} // cybozu::exception - -class Exception { -public: - explicit Exception(const char* = 0, bool = true) - { - } - ~Exception() CYBOZU_NOEXCEPT {} - const char *what() const CYBOZU_NOEXCEPT { return "cybozu:Exception"; } - template - Exception& operator<<(const T&) - { - return *this; - } -}; - -} // cybozu - -#else - -#include -#include -#include -#include -#include -#ifdef _WIN32 - #include - #include -#else - #include // for strerror_r -#endif -#include -#ifdef CYBOZU_EXCEPTION_WITH_STACKTRACE - #include -#endif - -namespace cybozu { - -const bool DontThrow = true; - -namespace exception { - -/* get max 16 characters to avoid buffer overrun */ -inline std::string makeString(const char *str, size_t size) -{ - return std::string(str, std::min(size, 16)); -} - -#ifdef _WIN32 -inline std::string wstr2str(const std::wstring& wstr) -{ - std::string str; - for (size_t i = 0; i < wstr.size(); i++) { - uint16_t c = wstr[i]; - if (c < 0x80) { - str += char(c); - } else { - char buf[16]; - CYBOZU_SNPRINTF(buf, sizeof(buf), "\\u%04x", c); - str += buf; - } - } - return str; -} -#endif - -} // cybozu::exception - -/** - convert errno to string - @param err [in] errno - @note for both windows and linux -*/ -inline std::string ConvertErrorNoToString(int err) -{ - char errBuf[256]; - std::string ret; -#ifdef _WIN32 - if (strerror_s(errBuf, sizeof(errBuf), err) == 0) { - ret = errBuf; - } else { - ret = "err"; - } -#elif defined(_GNU_SOURCE) - ret = ::strerror_r(err, errBuf, sizeof(errBuf)); -#else - if (strerror_r(err, errBuf, sizeof(errBuf)) == 0) { - ret = errBuf; - } else { - ret = "err"; - } -#endif - char buf2[64]; - CYBOZU_SNPRINTF(buf2, sizeof(buf2), "(%d)", err); - ret += buf2; - return ret; -} - -class Exception : public std::exception { - mutable std::string str_; -#ifdef CYBOZU_EXCEPTION_WITH_STACKTRACE - mutable std::string stackTrace_; -#endif -public: - explicit Exception(const std::string& name = "", bool enableStackTrace = true) - : str_(name) - { -#ifdef CYBOZU_EXCEPTION_WITH_STACKTRACE - if (enableStackTrace) stackTrace_ = cybozu::StackTrace().toString(); -#else - cybozu::disable_warning_unused_variable(enableStackTrace); -#endif - } - ~Exception() CYBOZU_NOEXCEPT {} - const char *what() const CYBOZU_NOEXCEPT { return toString().c_str(); } - const std::string& toString() const CYBOZU_NOEXCEPT - { -#ifdef CYBOZU_EXCEPTION_WITH_STACKTRACE - try { - if (!stackTrace_.empty()) { -#ifdef CYBOZU_STACKTRACE_ONELINE - str_ += "\n<<>> "; - str_ += stackTrace_; -#else - str_ += "\n<< - Exception& operator<<(const T& x) - { - std::ostringstream os; - os << x; - return operator<<(os.str()); - } -}; - -class ErrorNo { -public: -#ifdef _WIN32 - typedef unsigned int NativeErrorNo; -#else - typedef int NativeErrorNo; -#endif - explicit ErrorNo(NativeErrorNo err) - : err_(err) - { - } - ErrorNo() - : err_(getLatestNativeErrorNo()) - { - } - NativeErrorNo getLatestNativeErrorNo() const - { -#ifdef _WIN32 - return ::GetLastError(); -#else - return errno; -#endif - } - /** - convert NativeErrNo to string(maybe UTF8) - @param err [in] errno - @note Linux : same as ConvertErrorNoToString - Windows : for Win32 API(use en-us) - */ - std::string toString() const - { -#ifdef _WIN32 - const int msgSize = 256; - wchar_t msg[msgSize]; - int size = FormatMessageW( - FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, - 0, - err_, - MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US), - msg, - msgSize, - NULL - ); - if (size <= 0) return ""; - // remove last "\r\n" - if (size > 2 && msg[size - 2] == '\r') { - msg[size - 2] = 0; - size -= 2; - } - std::string ret; - ret.resize(size); - // assume ascii only - for (int i = 0; i < size; i++) { - ret[i] = (char)msg[i]; - } - char buf2[64]; - CYBOZU_SNPRINTF(buf2, sizeof(buf2), "(%u)", err_); - ret += buf2; - return ret; -#else - return ConvertErrorNoToString(err_); -#endif - } -private: - NativeErrorNo err_; -}; - -inline std::ostream& operator<<(std::ostream& os, const cybozu::ErrorNo& self) -{ - return os << self.toString(); -} - -} // cybozu -#endif diff --git a/cases/tool/win/bls_win/include/cybozu/hash.hpp b/cases/tool/win/bls_win/include/cybozu/hash.hpp deleted file mode 100644 index 46d8a11960..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/hash.hpp +++ /dev/null @@ -1,67 +0,0 @@ -#pragma once -#include - -namespace cybozu { - -template -uint32_t hash32(Iter begin, Iter end, uint32_t v = 0) -{ - if (v == 0) v = 2166136261U; - while (begin != end) { - v ^= *begin++; - v *= 16777619; - } - return v; -} -template -uint64_t hash64(Iter begin, Iter end, uint64_t v = 0) -{ - if (v == 0) v = 14695981039346656037ULL; - while (begin != end) { - v ^= *begin++; - v *= 1099511628211ULL; - } - v ^= v >> 32; - return v; -} -template -uint32_t hash32(const T *x, size_t n, uint32_t v = 0) -{ - return hash32(x, x + n, v); -} -template -uint64_t hash64(const T *x, size_t n, uint64_t v = 0) -{ - return hash64(x, x + n, v); -} - -} // cybozu - -namespace boost { - -template -struct hash; - -} // boost - -#if CYBOZU_CPP_VERSION >= CYBOZU_CPP_VERSION_CPP11 -#include -#else - -namespace std { CYBOZU_NAMESPACE_TR1_BEGIN - -#ifdef _MSC_VER - #pragma warning(push) - #pragma warning(disable : 4099) // missmatch class and struct -#endif -#if !(defined(__APPLE__) && defined(__clang__)) -template -struct hash; -#endif -#ifdef _MSC_VER - #pragma warning(pop) -#endif - -CYBOZU_NAMESPACE_TR1_END } // std - -#endif diff --git a/cases/tool/win/bls_win/include/cybozu/inttype.hpp b/cases/tool/win/bls_win/include/cybozu/inttype.hpp deleted file mode 100644 index 62856bdb35..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/inttype.hpp +++ /dev/null @@ -1,163 +0,0 @@ -#pragma once -/** - @file - @brief int type definition and macros - @author MITSUNARI Shigeo(@herumi) -*/ - -#if defined(_MSC_VER) && (MSC_VER <= 1500) && !defined(CYBOZU_DEFINED_INTXX) - #define CYBOZU_DEFINED_INTXX - typedef __int64 int64_t; - typedef unsigned __int64 uint64_t; - typedef unsigned int uint32_t; - typedef int int32_t; - typedef unsigned short uint16_t; - typedef short int16_t; - typedef unsigned char uint8_t; - typedef signed char int8_t; -#else - #include -#endif - -#ifdef _MSC_VER - #ifndef CYBOZU_DEFINED_SSIZE_T - #define CYBOZU_DEFINED_SSIZE_T - #ifdef _WIN64 - typedef int64_t ssize_t; - #else - typedef int32_t ssize_t; - #endif - #endif -#else - #include // for ssize_t -#endif - -#ifndef CYBOZU_ALIGN - #ifdef _MSC_VER - #define CYBOZU_ALIGN(x) __declspec(align(x)) - #else - #define CYBOZU_ALIGN(x) __attribute__((aligned(x))) - #endif -#endif -#ifndef CYBOZU_FORCE_INLINE - #ifdef _MSC_VER - #define CYBOZU_FORCE_INLINE __forceinline - #else - #define CYBOZU_FORCE_INLINE __attribute__((always_inline)) - #endif -#endif -#ifndef CYBOZU_UNUSED - #ifdef __GNUC__ - #define CYBOZU_UNUSED __attribute__((unused)) - #else - #define CYBOZU_UNUSED - #endif -#endif -#ifndef CYBOZU_ALLOCA - #ifdef _MSC_VER - #include - #define CYBOZU_ALLOCA(x) _malloca(x) - #else - #define CYBOZU_ALLOCA(x) __builtin_alloca(x) - #endif -#endif -#ifndef CYBOZU_NUM_OF_ARRAY - #define CYBOZU_NUM_OF_ARRAY(x) (sizeof(x) / sizeof(*x)) -#endif -#ifndef CYBOZU_SNPRINTF - #if defined(_MSC_VER) && (_MSC_VER < 1900) - #define CYBOZU_SNPRINTF(x, len, ...) (void)_snprintf_s(x, len, len - 1, __VA_ARGS__) - #else - #define CYBOZU_SNPRINTF(x, len, ...) (void)snprintf(x, len, __VA_ARGS__) - #endif -#endif - -#define CYBOZU_CPP_VERSION_CPP03 0 -#define CYBOZU_CPP_VERSION_TR1 1 -#define CYBOZU_CPP_VERSION_CPP11 2 -#define CYBOZU_CPP_VERSION_CPP14 3 -#define CYBOZU_CPP_VERSION_CPP17 4 - -#ifdef __GNUC__ - #define CYBOZU_GNUC_PREREQ(major, minor) ((__GNUC__) * 100 + (__GNUC_MINOR__) >= (major) * 100 + (minor)) -#else - #define CYBOZU_GNUC_PREREQ(major, minor) 0 -#endif - -#if (__cplusplus >= 201703) - #define CYBOZU_CPP_VERSION CYBOZU_CPP_VERSION_CPP17 -#elif (__cplusplus >= 201402) - #define CYBOZU_CPP_VERSION CYBOZU_CPP_VERSION_CPP14 -#elif (__cplusplus >= 201103) || (_MSC_VER >= 1500) || defined(__GXX_EXPERIMENTAL_CXX0X__) - #if defined(_MSC_VER) && (_MSC_VER <= 1600) - #define CYBOZU_CPP_VERSION CYBOZU_CPP_VERSION_TR1 - #else - #define CYBOZU_CPP_VERSION CYBOZU_CPP_VERSION_CPP11 - #endif -#elif CYBOZU_GNUC_PREREQ(4, 5) || (CYBOZU_GNUC_PREREQ(4, 2) && __GLIBCXX__ >= 20070719) || defined(__INTEL_COMPILER) || (__clang_major__ >= 3) - #define CYBOZU_CPP_VERSION CYBOZU_CPP_VERSION_TR1 -#else - #define CYBOZU_CPP_VERSION CYBOZU_CPP_VERSION_CPP03 -#endif - -#ifdef CYBOZU_USE_BOOST - #define CYBOZU_NAMESPACE_STD boost - #define CYBOZU_NAMESPACE_TR1_BEGIN - #define CYBOZU_NAMESPACE_TR1_END -#elif (CYBOZU_CPP_VERSION == CYBOZU_CPP_VERSION_TR1) && !defined(__APPLE__) - #define CYBOZU_NAMESPACE_STD std::tr1 - #define CYBOZU_NAMESPACE_TR1_BEGIN namespace tr1 { - #define CYBOZU_NAMESPACE_TR1_END } -#else - #define CYBOZU_NAMESPACE_STD std - #define CYBOZU_NAMESPACE_TR1_BEGIN - #define CYBOZU_NAMESPACE_TR1_END -#endif - -#ifndef CYBOZU_OS_BIT - #if defined(_WIN64) || defined(__x86_64__) || defined(__AARCH64EL__) || defined(__EMSCRIPTEN__) - #define CYBOZU_OS_BIT 64 - #else - #define CYBOZU_OS_BIT 32 - #endif -#endif - -#ifndef CYBOZU_HOST - #define CYBOZU_HOST_UNKNOWN 0 - #define CYBOZU_HOST_INTEL 1 - #define CYBOZU_HOST_ARM 2 - #if defined(_M_IX86) || defined(_M_AMD64) || defined(__x86_64__) || defined(__i386__) - #define CYBOZU_HOST CYBOZU_HOST_INTEL - #elif defined(__arm__) || defined(__AARCH64EL__) - #define CYBOZU_HOST CYBOZU_HOST_ARM - #else - #define CYBOZU_HOST CYBOZU_HOST_UNKNOWN - #endif -#endif - -#ifndef CYBOZU_ENDIAN - #define CYBOZU_ENDIAN_UNKNOWN 0 - #define CYBOZU_ENDIAN_LITTLE 1 - #define CYBOZU_ENDIAN_BIG 2 - #if (CYBOZU_HOST == CYBOZU_HOST_INTEL) - #define CYBOZU_ENDIAN CYBOZU_ENDIAN_LITTLE - #elif (CYBOZU_HOST == CYBOZU_HOST_ARM) && (defined(__ARM_EABI__) || defined(__AARCH64EL__)) - #define CYBOZU_ENDIAN CYBOZU_ENDIAN_LITTLE - #else - #define CYBOZU_ENDIAN CYBOZU_ENDIAN_UNKNOWN - #endif -#endif - -#if CYBOZU_CPP_VERSION >= CYBOZU_CPP_VERSION_CPP11 - #define CYBOZU_NOEXCEPT noexcept -#else - #define CYBOZU_NOEXCEPT throw() -#endif -namespace cybozu { -template -void disable_warning_unused_variable(const T&) { } -template -T cast(const S* ptr) { return static_cast(static_cast(ptr)); } -template -T cast(S* ptr) { return static_cast(static_cast(ptr)); } -} // cybozu diff --git a/cases/tool/win/bls_win/include/cybozu/itoa.hpp b/cases/tool/win/bls_win/include/cybozu/itoa.hpp deleted file mode 100644 index 072e5b8b4b..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/itoa.hpp +++ /dev/null @@ -1,337 +0,0 @@ -#pragma once -/** - @file - @brief convert integer to string(ascii) - - @author MITSUNARI Shigeo(@herumi) -*/ -#include -#ifndef CYBOZU_DONT_USE_STRING -#include -#endif -#include -#include -#include - -namespace cybozu { - -template -size_t getHexLength(T x) -{ - return x == 0 ? 1 : cybozu::bsr(x) / 4 + 1; -} - -template -size_t getBinLength(T x) -{ - return x == 0 ? 1 : cybozu::bsr(x) + 1; -} -/* - convert x to hex string with len - @note out should have getHexLength(x) size - out is not NUL terminated -*/ -template -void itohex(char *out, size_t len, T x, bool upCase = true) -{ - static const char *hexTbl[] = { - "0123456789abcdef", - "0123456789ABCDEF" - }; - const char *tbl = hexTbl[upCase]; - for (size_t i = 0; i < len; i++) { - out[len - i - 1] = tbl[x % 16]; - x /= 16; - } -} -/* - convert x to bin string with len - @note out should have getBinLength(x) size - out is not NUL terminated -*/ -template -void itobin(char *out, size_t len, T x) -{ - for (size_t i = 0; i < len; i++) { - out[len - i - 1] = '0' + (x & 1); - x >>= 1; - } -} - -namespace itoa_local { - -/* - convert x to dec - use buf[0, bufSize) - return 0 if false - return writtenSize which is not terminated - @REMARK the top of string is buf + bufSize - writtenSize -*/ -template -size_t uintToDec(char *buf, size_t bufSize, UT x) -{ - for (size_t i = 0; i < bufSize; i++) { - buf[bufSize - 1 - i] = '0' + static_cast(x % 10); - x /= 10; - if (x == 0) return i + 1; - } - return 0; -} - -/* - convert x to hex - use buf[0, bufSize) - return 0 if false - return writtenSize which is not terminated - @REMARK the top of string is buf + bufSize - writtenSize -*/ -template -size_t uintToHex(char *buf, size_t bufSize, UT x, bool upCase = true) -{ - static const char *hexTbl[] = { - "0123456789abcdef", - "0123456789ABCDEF" - }; - const char *tbl = hexTbl[upCase]; - for (size_t i = 0; i < bufSize; i++) { - buf[bufSize - 1 - i] = tbl[x % 16]; - x /= 16; - if (x == 0) return i + 1; - } - return 0; -} - -/* - convert x to bin - use buf[0, bufSize) - return 0 if false - return writtenSize which is not terminated - @REMARK the top of string is buf + bufSize - writtenSize -*/ -template -size_t uintToBin(char *buf, size_t bufSize, UT x) -{ - for (size_t i = 0; i < bufSize; i++) { - buf[bufSize - 1 - i] = '0' + (x & 1); - x >>= 1; - if (x == 0) return i + 1; - } - return 0; -} - -template -size_t intToDec(char *buf, size_t bufSize, T x) -{ - if (x == LLONG_MIN) { - const char minStr[] = "-9223372036854775808"; - const size_t minStrLen = sizeof(minStr) - 1; - if (bufSize < minStrLen) { - return 0; - } else { - memcpy(buf + bufSize - minStrLen, minStr, minStrLen); - return minStrLen; - } - } - bool negative = x < 0; - uint64_t absX = negative ? -x : x; - size_t n = uintToDec(buf, bufSize, absX); - if (n == 0) return 0; - if (negative) { - if (bufSize == n) return 0; - n++; - buf[bufSize - n] = '-'; - } - return n; -} - -#ifndef CYBOZU_DONT_USE_STRING -template -void convertFromUint(std::string& out, T x) -{ - char buf[40]; - size_t n = uintToDec(buf, sizeof(buf), x); - assert(n > 0); - out.assign(buf + sizeof(buf) - n, n); -} - -inline void convertFromInt(std::string& out, long long x) -{ - char buf[40]; - size_t n = intToDec(buf, sizeof(buf), x); - assert(n > 0); - out.assign(buf + sizeof(buf) - n, n); -} - -template -void itohexLocal(std::string& out, T x, bool upCase, bool withZero) -{ - const size_t size = withZero ? sizeof(T) * 2 : getHexLength(x); - out.resize(size); - itohex(&out[0], size, x, upCase); -} - -template -void itobinLocal(std::string& out, T x, bool withZero) -{ - const size_t size = withZero ? sizeof(T) * 8 : getBinLength(x); - out.resize(size); - itobin(&out[0], size, x); -} -#endif - -} // itoa_local - -#ifndef CYBOZU_DONT_USE_STRING -/** - convert int to string - @param out [out] string - @param x [in] int -*/ -inline void itoa(std::string& out, int x) -{ - itoa_local::convertFromInt(out, x); -} - -/** - convert long long to string - @param out [out] string - @param x [in] long long -*/ -inline void itoa(std::string& out, long long x) -{ - itoa_local::convertFromInt(out, x); -} - -/** - convert unsigned int to string - @param out [out] string - @param x [in] unsigned int -*/ -inline void itoa(std::string& out, unsigned int x) -{ - itoa_local::convertFromUint(out, x); -} - -/** - convert unsigned long long to string - @param out [out] string - @param x [in] unsigned long long -*/ -inline void itoa(std::string& out, unsigned long long x) -{ - itoa_local::convertFromUint(out, x); -} - -#if defined(__SIZEOF_LONG__) && (__SIZEOF_LONG__ == 8) -inline void itoa(std::string& out, long x) { itoa(out, static_cast(x)); } -inline void itoa(std::string& out, unsigned long x) { itoa(out, static_cast(x)); } -#else -inline void itoa(std::string& out, long x) { itoa(out, static_cast(x)); } -inline void itoa(std::string& out, unsigned long x) { itoa(out, static_cast(x)); } -#endif -/** - convert integer to string - @param x [in] int -*/ -template -inline std::string itoa(T x) -{ - std::string ret; - itoa(ret, x); - return ret; -} - -inline void itohex(std::string& out, unsigned char x, bool upCase = true, bool withZero = true) -{ - itoa_local::itohexLocal(out, x, upCase, withZero); -} - -inline void itohex(std::string& out, unsigned short x, bool upCase = true, bool withZero = true) -{ - itoa_local::itohexLocal(out, x, upCase, withZero); -} - -inline void itohex(std::string& out, unsigned int x, bool upCase = true, bool withZero = true) -{ - itoa_local::itohexLocal(out, x, upCase, withZero); -} - -inline void itohex(std::string& out, unsigned long x, bool upCase = true, bool withZero = true) -{ - itoa_local::itohexLocal(out, x, upCase, withZero); -} - -inline void itohex(std::string& out, unsigned long long x, bool upCase = true, bool withZero = true) -{ - itoa_local::itohexLocal(out, x, upCase, withZero); -} - -template -inline std::string itobin(T x, bool withZero = true) -{ - std::string out; - itoa_local::itobinLocal(out, x, withZero); - return out; -} - -inline void itobin(std::string& out, unsigned char x, bool withZero = true) -{ - itoa_local::itobinLocal(out, x, withZero); -} - -inline void itobin(std::string& out, unsigned short x, bool withZero = true) -{ - itoa_local::itobinLocal(out, x, withZero); -} - -inline void itobin(std::string& out, unsigned int x, bool withZero = true) -{ - itoa_local::itobinLocal(out, x, withZero); -} - -inline void itobin(std::string& out, unsigned long x, bool withZero = true) -{ - itoa_local::itobinLocal(out, x, withZero); -} - -inline void itobin(std::string& out, unsigned long long x, bool withZero = true) -{ - itoa_local::itobinLocal(out, x, withZero); -} - -template -inline std::string itohex(T x, bool upCase = true, bool withZero = true) -{ - std::string out; - itohex(out, x, upCase, withZero); - return out; -} -/** - convert integer to string with zero padding - @param x [in] int - @param len [in] minimum lengh of string - @param c [in] padding character - @note - itoa(12, 4) == "0012" - itoa(1234, 4) == "1234" - itoa(12345, 4) == "12345" - itoa(-12, 4) == "-012" -*/ -template -inline std::string itoaWithZero(T x, size_t len, char c = '0') -{ - std::string ret; - itoa(ret, x); - if (ret.size() < len) { - std::string zero(len - ret.size(), c); - if (x >= 0) { - ret = zero + ret; - } else { - ret = "-" + zero + ret.substr(1); - } - } - return ret; -} -#endif - -} // cybozu diff --git a/cases/tool/win/bls_win/include/cybozu/link_libeay32.hpp b/cases/tool/win/bls_win/include/cybozu/link_libeay32.hpp deleted file mode 100644 index d83f1b6ea6..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/link_libeay32.hpp +++ /dev/null @@ -1,21 +0,0 @@ -#pragma once -/** - @file - @brief link libeay32.lib of openssl - @author MITSUNARI Shigeo(@herumi) -*/ -#if defined(_WIN32) && defined(_MT) - #if _MSC_VER >= 1900 // VC2015 - #ifdef _WIN64 - #pragma comment(lib, "mt/14/libeay32.lib") - #else - #pragma comment(lib, "mt/14/32/libeay32.lib") - #endif -// #elif _MSC_VER == 1800 // VC2013 - #else - #pragma comment(lib, "mt/12/libeay32.lib") - #endif - #pragma comment(lib, "advapi32.lib") - #pragma comment(lib, "gdi32.lib") - #pragma comment(lib, "user32.lib") -#endif diff --git a/cases/tool/win/bls_win/include/cybozu/link_mpir.hpp b/cases/tool/win/bls_win/include/cybozu/link_mpir.hpp deleted file mode 100644 index d20d7b1a93..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/link_mpir.hpp +++ /dev/null @@ -1,18 +0,0 @@ -#pragma once -/** - @file - @brief link mpir/mpirxx of mpir - @author MITSUNARI Shigeo(@herumi) -*/ -#if defined(_WIN32) && defined(_MT) - #if _MSC_VER >= 1900 // VC2015, VC2017(1910) - #pragma comment(lib, "mt/14/mpir.lib") - #pragma comment(lib, "mt/14/mpirxx.lib") - #elif _MSC_VER == 1800 // VC2013 - #pragma comment(lib, "mt/12/mpir.lib") - #pragma comment(lib, "mt/12/mpirxx.lib") - #elif _MSC_VER == 1700 // VC2012 - #pragma comment(lib, "mt/11/mpir.lib") - #pragma comment(lib, "mt/11/mpirxx.lib") - #endif -#endif diff --git a/cases/tool/win/bls_win/include/cybozu/link_ssleay32.hpp b/cases/tool/win/bls_win/include/cybozu/link_ssleay32.hpp deleted file mode 100644 index 60c2361ae6..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/link_ssleay32.hpp +++ /dev/null @@ -1,19 +0,0 @@ -#pragma once -/** - @file - @brief link ssleay32.lib of openssl - @author MITSUNARI Shigeo(@herumi) -*/ -#if defined(_WIN32) && defined(_MT) - #if _MSC_VER >= 1900 // VC2015 - #ifdef _WIN64 - #pragma comment(lib, "mt/14/ssleay32.lib") - #else - #pragma comment(lib, "mt/14/32/ssleay32.lib") - #endif -// #elif _MSC_VER == 1800 // VC2013 - #else - #pragma comment(lib, "mt/12/ssleay32.lib") - #endif - #pragma comment(lib, "user32.lib") -#endif diff --git a/cases/tool/win/bls_win/include/cybozu/mutex.hpp b/cases/tool/win/bls_win/include/cybozu/mutex.hpp deleted file mode 100644 index acde6bcbf7..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/mutex.hpp +++ /dev/null @@ -1,141 +0,0 @@ -#pragma once -/** - @file - @brief mutex - - @author MITSUNARI Shigeo(@herumi) - @author MITSUNARI Shigeo -*/ - -#ifdef _WIN32 - #include -#else - #include - #include -#endif -#include -#include - -namespace cybozu { - -class ConditionVariable; - -namespace thread { - -#ifdef _WIN32 - typedef HANDLE MutexHandle; - inline void MutexInit(MutexHandle& mutex) - { -// mutex = CreateSemaphore(NULL /* no security */, 1 /* init */, 0x7FFFFFFF /* max */, NULL /* no name */); - mutex = CreateMutex(NULL /* no security */, FALSE /* no owner */, NULL /* no name */); - } - inline void MutexLock(MutexHandle& mutex) { WaitForSingleObject(mutex, INFINITE); } - /* - return false if timeout - @param msec [in] msec - */ - inline bool MutexLockTimeout(MutexHandle& mutex, int msec) - { - DWORD ret = WaitForSingleObject(mutex, msec); - if (ret == WAIT_OBJECT_0) { - return true; - } - if (ret == WAIT_TIMEOUT) { - return false; - } - /* ret == WAIT_ABANDONED */ - assert(0); - return false; - } - inline void MutexUnlock(MutexHandle& mutex) - { -// ReleaseSemaphore(mutex, 1, NULL); - ReleaseMutex(mutex); - } - inline void MutexTerm(MutexHandle& mutex) { CloseHandle(mutex); } -#else - typedef pthread_mutex_t MutexHandle; - inline void MutexInit(MutexHandle& mutex) - { -#if 1 - pthread_mutex_init(&mutex, NULL); -#else - pthread_mutexattr_t attr; - pthread_mutexattr_init(&attr); - if (pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_TIMED_NP)) { - perror("pthread_mutexattr_settype"); - exit(1); - } - pthread_mutex_init(&mutex, &attr); - pthread_mutexattr_destroy(&attr); -#endif - } - inline void MutexLock(MutexHandle& mutex) { pthread_mutex_lock(&mutex); } -#if 0 - inline bool MutexLockTimeout(MutexHandle& mutex, int msec) - { - timespec absTime; - clock_gettime(CLOCK_REALTIME, &absTime); - absTime.tv_sec += msec / 1000; - absTime.tv_nsec += msec % 1000; - bool ret = pthread_mutex_timedlock(&mutex, &absTime) == 0; - return ret; - } -#endif - inline void MutexUnlock(MutexHandle& mutex) { pthread_mutex_unlock(&mutex); } - inline void MutexTerm(MutexHandle& mutex) { pthread_mutex_destroy(&mutex); } -#endif - -template -class AutoLockT { -public: - explicit AutoLockT(T &t) - : t_(t) - { - t_.lock(); - } - ~AutoLockT() - { - t_.unlock(); - } -private: - T& t_; - AutoLockT& operator=(const AutoLockT&); -}; - -} // cybozu::thread - -class Mutex { - friend class cybozu::ConditionVariable; -public: - Mutex() - { - thread::MutexInit(hdl_); - } - ~Mutex() - { - thread::MutexTerm(hdl_); - } - void lock() - { - thread::MutexLock(hdl_); - } -#if 0 - bool lockTimeout(int msec) - { - return thread::MutexLockTimeout(hdl_, msec); - } -#endif - void unlock() - { - thread::MutexUnlock(hdl_); - } -private: - Mutex(const Mutex&); - Mutex& operator=(const Mutex&); - thread::MutexHandle hdl_; -}; - -typedef cybozu::thread::AutoLockT AutoLock; - -} // cybozu diff --git a/cases/tool/win/bls_win/include/cybozu/option.hpp b/cases/tool/win/bls_win/include/cybozu/option.hpp deleted file mode 100644 index a5dfd137d8..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/option.hpp +++ /dev/null @@ -1,723 +0,0 @@ -#pragma once -/** - @file - @brief command line parser - - @author MITSUNARI Shigeo(@herumi) -*/ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - Option parser - - progName (opt1-name|opt2-name|...) param1 param2 ... - param1:param1-help - param2:param2-help - -op1-name:opt1-help - ... - - How to setup - int num; - -n num ; (optional) option => appendOpt(&x, , "num", "num-help"); - -n num ; must option => appendMust(&x, "num", "num-help"); - - std::vector v; - -v s1 s2 s3 ... => appendVec(&v, "v"); - - Remark1: terminate parsing of v if argv begins with '-[^0-9]' - Remark2: the begining character of opt-name is not a number ('0'...'9') - because avoid conflict with minus number - - std::string file1; - file1 is param => appendParam(&file1, "input-file"); - file2 is optional param => appendParamOpt(&file2, "output-file"); - - How to use - opt.parse(argc, argv); - - see sample/option_smpl.cpp -*/ - -namespace cybozu { - -struct OptionError : public cybozu::Exception { - enum Type { - NoError = 0, - BAD_OPT = 1, - BAD_VALUE, - NO_VALUE, - OPT_IS_NECESSARY, - PARAM_IS_NECESSARY, - REDUNDANT_VAL, - BAD_ARGC - }; - Type type; - int argPos; - OptionError() - : cybozu::Exception("OptionError", false) - , type(NoError) - , argPos(0) - { - } - cybozu::Exception& set(Type _type, int _argPos = 0) - { - this->type = _type; - this->argPos = _argPos; - switch (_type) { - case BAD_OPT: - (*this) << "bad opt"; - break; - case BAD_VALUE: - (*this) << "bad value"; - break; - case NO_VALUE: - (*this) << "no value"; - break; - case OPT_IS_NECESSARY: - (*this) << "opt is necessary"; - break; - case PARAM_IS_NECESSARY: - (*this) << "param is necessary"; - break; - case REDUNDANT_VAL: - (*this) << "redundant argVal"; - break; - case BAD_ARGC: - (*this) << "bad argc"; - default: - break; - } - return *this; - } -}; - -namespace option_local { - -template -bool convert(T* x, const char *str) -{ - std::istringstream is(str); - is >> *x; - return !!is; -} - -template<> -inline bool convert(std::string* x, const char *str) -{ - *x = str; - return true; -} - -template -bool convertInt(T* x, const char *str) -{ - if (str[0] == '0' && str[1] == 'x') { - bool b; - *x = cybozu::hextoi(&b, str + 2); - return b; - } - size_t len = strlen(str); - int factor = 1; - if (len > 1) { - switch (str[len - 1]) { - case 'k': factor = 1000; len--; break; - case 'm': factor = 1000 * 1000; len--; break; - case 'g': factor = 1000 * 1000 * 1000; len--; break; - case 'K': factor = 1024; len--; break; - case 'M': factor = 1024 * 1024; len--; break; - case 'G': factor = 1024 * 1024 * 1024; len--; break; - default: break; - } - } - bool b; - T y = cybozu::atoi(&b, str, len); - if (!b) return false; - if (factor > 1) { - if ((std::numeric_limits::min)() / factor <= y - && y <= (std::numeric_limits::max)() / factor) { - *x = y * factor; - } else { - return false; - } - } else { - *x = y; - } - return true; -} - -#define CYBOZU_OPTION_DEFINE_CONVERT_INT(type) \ -template<>inline bool convert(type* x, const char *str) { return convertInt(x, str); } - -CYBOZU_OPTION_DEFINE_CONVERT_INT(int) -CYBOZU_OPTION_DEFINE_CONVERT_INT(long) -CYBOZU_OPTION_DEFINE_CONVERT_INT(long long) - -CYBOZU_OPTION_DEFINE_CONVERT_INT(unsigned int) -CYBOZU_OPTION_DEFINE_CONVERT_INT(unsigned long) -CYBOZU_OPTION_DEFINE_CONVERT_INT(unsigned long long) - -#undef CYBOZU_OPTION_DEFINE_CONVERT_INT - -struct HolderBase { - virtual ~HolderBase(){} - virtual bool set(const char*) = 0; - virtual HolderBase *clone() const = 0; - virtual std::string toStr() const = 0; - virtual const void *get() const = 0; -}; - -template -struct Holder : public HolderBase { - T *p_; - Holder(T *p) : p_(p) {} - HolderBase *clone() const { return new Holder(p_); } - bool set(const char *str) { return option_local::convert(p_, str); } - std::string toStr() const - { - std::ostringstream os; - os << *p_; - return os.str(); - } - const void *get() const { return (void*)p_; } -}; - -/* - for gcc 7 with -fnew-ttp-matching - this specialization is not necessary under -fno-new-ttp-matching -*/ -template struct Holder; - -templateclass Container> -struct Holder > : public HolderBase { - typedef Container Vec; - Vec *p_; - Holder(Vec *p) : p_(p) {} - HolderBase *clone() const { return new Holder(p_); } - bool set(const char *str) - { - T t; - bool b = option_local::convert(&t, str); - if (b) p_->push_back(t); - return b; - } - std::string toStr() const - { - std::ostringstream os; - bool isFirst = true; - for (typename Vec::const_iterator i = p_->begin(), ie = p_->end(); i != ie; ++i) { - if (isFirst) { - isFirst = false; - } else { - os << ' '; - } - os << *i; - } - return os.str(); - } - const void *get() const { return (void*)p_; } -}; - -class Var { - HolderBase *p_; - bool isSet_; -public: - Var() : p_(0), isSet_(false) { } - Var(const Var& rhs) : p_(rhs.p_->clone()), isSet_(false) { } - template - explicit Var(T *x) : p_(new Holder(x)), isSet_(false) { } - - ~Var() { delete p_; } - - void swap(Var& rhs) CYBOZU_NOEXCEPT - { - std::swap(p_, rhs.p_); - std::swap(isSet_, rhs.isSet_); - } - void operator=(const Var& rhs) - { - Var v(rhs); - swap(v); - } - bool set(const char *str) - { - isSet_ = true; - return p_->set(str); - } - std::string toStr() const { return p_ ? p_->toStr() : ""; } - bool isSet() const { return isSet_; } - const void *get() const { return p_ ? p_->get() : 0; } -}; - -} // option_local - -class Option { - enum Mode { // for opt - N_is0 = 0, // for bool by appendBoolOpt() - N_is1 = 1, - N_any = 2 - }; - enum ParamMode { - P_exact = 0, // one - P_optional = 1, // zero or one - P_variable = 2 // zero or greater - }; - struct Info { - option_local::Var var; - Mode mode; // 0 or 1 or any ; for opt, not used for Param - bool isMust; // this option is must - std::string opt; // option param name without '-' - std::string help; // description of option - - Info() : mode(N_is0), isMust(false) {} - template - Info(T* pvar, Mode mode, bool isMust, const char *opt, const std::string& help) - : var(pvar) - , mode(mode) - , isMust(isMust) - , opt(opt) - , help(help) - { - } - friend inline std::ostream& operator<<(std::ostream& os, const Info& self) - { - os << self.opt << '=' << self.var.toStr(); - if (self.var.isSet()) { - os << " (set)"; - } else { - os << " (default)"; - } - return os; - } - void put() const - { - std::cout << *this; - } - void usage() const - { - printf(" -%s %s%s\n", opt.c_str(), help.c_str(), isMust ? " (must)" : ""); - } - void shortUsage() const - { - printf(" -%s %s", opt.c_str(), mode == N_is0 ? "" : mode == N_is1 ? "para" : "para..."); - } - bool isSet() const { return var.isSet(); } - const void *get() const { return var.get(); } - }; - typedef std::vector InfoVec; - typedef std::vector StrVec; - typedef std::map OptMap; - InfoVec infoVec_; - InfoVec paramVec_; - Info remains_; - OptMap optMap_; - bool showOptUsage_; - ParamMode paramMode_; - std::string progName_; - std::string desc_; - std::string helpOpt_; - std::string help_; - std::string usage_; - StrVec delimiters_; - StrVec *remainsAfterDelimiter_; - int nextDelimiter_; - template - void appendSub(T *pvar, Mode mode, bool isMust, const char *opt, const std::string& help) - { - const char c = opt[0]; - if ('0' <= c && c <= '9') throw cybozu::Exception("Option::appendSub:opt must begin with not number") << opt; - if (optMap_.find(opt) != optMap_.end()) { - throw cybozu::Exception("Option::append:duplicate option") << opt; - } - optMap_[opt] = infoVec_.size(); - infoVec_.push_back(Info(pvar, mode, isMust, opt, help)); - } - - template - void append(T *pvar, const U& defaultVal, bool isMust, const char *opt, const std::string& help = "") - { - *pvar = defaultVal; - appendSub(pvar, N_is1, isMust, opt, help); - } - /* - don't deal with negative number as option - */ - bool isOpt(const char *str) const - { - if (str[0] != '-') return false; - const char c = str[1]; - if ('0' <= c && c <= '9') return false; - return true; - } - void verifyParamMode() - { - if (paramMode_ != P_exact) throw cybozu::Exception("Option:appendParamVec:appendParam is forbidden after appendParamOpt/appendParamVec"); - } - std::string getBaseName(const std::string& name) const - { - size_t pos = name.find_last_of("/\\"); - if (pos == std::string::npos) return name; - return name.substr(pos + 1); - } - bool inDelimiters(const std::string& str) const - { - return std::find(delimiters_.begin(), delimiters_.end(), str) != delimiters_.end(); - } -public: - Option() - : showOptUsage_(true) - , paramMode_(P_exact) - , remainsAfterDelimiter_(0) - , nextDelimiter_(-1) - { - } - virtual ~Option() {} - /* - append optional option with default value - @param pvar [in] pointer to option variable - @param defaultVal [in] default value - @param opt [in] option name - @param help [in] option help - @note you can use 123k, 56M if T is int/long/long long - k : *1000 - m : *1000000 - g : *1000000000 - K : *1024 - M : *1024*1024 - G : *1024*1024*1024 - */ - template - void appendOpt(T *pvar, const U& defaultVal, const char *opt, const std::string& help = "") - { - append(pvar, defaultVal, false, opt, help); - } - /* - default value of *pvar is false - */ - void appendBoolOpt(bool *pvar, const char *opt, const std::string& help = "") - { - *pvar = false; - appendSub(pvar, N_is0, false, opt, help); - } - /* - append necessary option - @param pvar [in] pointer to option variable - @param opt [in] option name - @param help [in] option help - */ - template - void appendMust(T *pvar, const char *opt, const std::string& help = "") - { - append(pvar, T(), true, opt, help); - } - /* - append vector option - @param pvar [in] pointer to option variable - @param opt [in] option name - @param help [in] option help - */ - templateclass Container> - void appendVec(Container *pvar, const char *opt, const std::string& help = "") - { - appendSub(pvar, N_any, false, opt, help); - } - /* - append parameter - @param pvar [in] pointer to parameter - @param opt [in] option name - @param help [in] option help - */ - template - void appendParam(T *pvar, const char *opt, const std::string& help = "") - { - verifyParamMode(); - paramVec_.push_back(Info(pvar, N_is1, true, opt, help)); - } - /* - append optional parameter - @param pvar [in] pointer to parameter - @param defaultVal [in] default value - @param opt [in] option name - @param help [in] option help - @note you can call appendParamOpt once after appendParam - */ - template - void appendParamOpt(T *pvar, const U& defaultVal, const char *opt, const std::string& help = "") - { - verifyParamMode(); - *pvar = defaultVal; - paramMode_ = P_optional; - paramVec_.push_back(Info(pvar, N_is1, false, opt, help)); - } - /* - append remain parameter - @param pvar [in] pointer to vector of parameter - @param opt [in] option name - @param help [in] option help - @note you can call appendParamVec once after appendParam - */ - templateclass Container> - void appendParamVec(Container *pvar, const char *name, const std::string& help = "") - { - verifyParamMode(); - paramMode_ = P_variable; - remains_.var = option_local::Var(pvar); - remains_.mode = N_any; - remains_.isMust = false; - remains_.opt = name; - remains_.help = help; - } - void appendHelp(const char *opt, const std::string& help = ": show this message") - { - helpOpt_ = opt; - help_ = help; - } - /* - stop parsing after delimiter is found - @param delimiter [in] string to stop - @param remain [out] set remaining strings if remain - */ - void setDelimiter(const std::string& delimiter, std::vector *remain = 0) - { - delimiters_.push_back(delimiter); - remainsAfterDelimiter_ = remain; - } - /* - stop parsing after delimiter is found - @param delimiter [in] string to stop to append list of delimiters - */ - void appendDelimiter(const std::string& delimiter) - { - delimiters_.push_back(delimiter); - } - /* - clear list of delimiters - */ - void clearDelimiterList() { delimiters_.clear(); } - /* - return the next position of delimiter between [0, argc] - @note return argc if delimiter is not set nor found - */ - int getNextPositionOfDelimiter() const { return nextDelimiter_; } - /* - parse (argc, argv) - @param argc [in] argc of main - @param argv [in] argv of main - @param startPos [in] start position of argc - @param progName [in] used instead of argv[0] - */ - bool parse(int argc, const char *const argv[], int startPos = 1, const char *progName = 0) - { - if (argc < 1 || startPos > argc) return false; - progName_ = getBaseName(progName ? progName : argv[startPos - 1]); - nextDelimiter_ = argc; - OptionError err; - for (int pos = startPos; pos < argc; pos++) { - if (inDelimiters(argv[pos])) { - nextDelimiter_ = pos + 1; - if (remainsAfterDelimiter_) { - for (int i = nextDelimiter_; i < argc; i++) { - remainsAfterDelimiter_->push_back(argv[i]); - } - } - break; - } - if (isOpt(argv[pos])) { - const std::string str = argv[pos] + 1; - if (helpOpt_ == str) { - usage(); - exit(0); - } - OptMap::const_iterator i = optMap_.find(str); - if (i == optMap_.end()) { - err.set(OptionError::BAD_OPT, pos); - goto ERR; - } - - Info& info = infoVec_[i->second]; - switch (info.mode) { - case N_is0: - if (!info.var.set("1")) { - err.set(OptionError::BAD_VALUE, pos); - goto ERR; - } - break; - case N_is1: - pos++; - if (pos == argc) { - err.set(OptionError::BAD_VALUE, pos) << (std::string("no value for -") + info.opt); - goto ERR; - } - if (!info.var.set(argv[pos])) { - err.set(OptionError::BAD_VALUE, pos) << (std::string(argv[pos]) + " for -" + info.opt); - goto ERR; - } - break; - case N_any: - default: - { - pos++; - int j = 0; - while (pos < argc && !isOpt(argv[pos])) { - if (!info.var.set(argv[pos])) { - err.set(OptionError::BAD_VALUE, pos) << (std::string(argv[pos]) + " for -" + info.opt) << j; - goto ERR; - } - pos++; - j++; - } - if (j > 0) { - pos--; - } else { - err.set(OptionError::NO_VALUE, pos) << (std::string("for -") + info.opt); - goto ERR; - } - } - break; - } - } else { - bool used = false; - for (size_t i = 0; i < paramVec_.size(); i++) { - Info& param = paramVec_[i]; - if (!param.var.isSet()) { - if (!param.var.set(argv[pos])) { - err.set(OptionError::BAD_VALUE, pos) << (std::string(argv[pos]) + " for " + param.opt); - goto ERR; - } - used = true; - break; - } - } - if (!used) { - if (paramMode_ == P_variable) { - remains_.var.set(argv[pos]); - } else { - err.set(OptionError::REDUNDANT_VAL, pos) << argv[pos]; - goto ERR; - } - } - } - } - // check whether must-opt is set - for (size_t i = 0; i < infoVec_.size(); i++) { - const Info& info = infoVec_[i]; - if (info.isMust && !info.var.isSet()) { - err.set(OptionError::OPT_IS_NECESSARY) << info.opt; - goto ERR; - } - } - // check whether param is set - for (size_t i = 0; i < paramVec_.size(); i++) { - const Info& param = paramVec_[i]; - if (param.isMust && !param.var.isSet()) { - err.set(OptionError::PARAM_IS_NECESSARY) << param.opt; - goto ERR; - } - } - // check whether remains is set - if (paramMode_ == P_variable && remains_.isMust && !remains_.var.isSet()) { - err.set(OptionError::PARAM_IS_NECESSARY) << remains_.opt; - goto ERR; - } - return true; - ERR: - assert(err.type); - printf("%s\n", err.what()); - return false; - } - /* - show desc at first in usage() - */ - void setDescription(const std::string& desc) - { - desc_ = desc; - } - /* - show command line after desc - don't put option message if not showOptUsage - */ - void setUsage(const std::string& usage, bool showOptUsage = false) - { - usage_ = usage; - showOptUsage_ = showOptUsage; - } - void usage() const - { - if (!desc_.empty()) printf("%s\n", desc_.c_str()); - if (usage_.empty()) { - printf("usage:%s", progName_.c_str()); - if (!infoVec_.empty()) printf(" [opt]"); - for (size_t i = 0; i < infoVec_.size(); i++) { - if (infoVec_[i].isMust) infoVec_[i].shortUsage(); - } - for (size_t i = 0; i < paramVec_.size(); i++) { - printf(" %s", paramVec_[i].opt.c_str()); - } - if (paramMode_ == P_variable) { - printf(" %s", remains_.opt.c_str()); - } - printf("\n"); - } else { - printf("%s\n", usage_.c_str()); - if (!showOptUsage_) return; - } - for (size_t i = 0; i < paramVec_.size(); i++) { - const Info& param = paramVec_[i]; - if (!param.help.empty()) printf(" %s %s\n", paramVec_[i].opt.c_str(), paramVec_[i].help.c_str()); - } - if (!remains_.help.empty()) printf(" %s %s\n", remains_.opt.c_str(), remains_.help.c_str()); - if (!helpOpt_.empty()) { - printf(" -%s %s\n", helpOpt_.c_str(), help_.c_str()); - } - for (size_t i = 0; i < infoVec_.size(); i++) { - infoVec_[i].usage(); - } - } - friend inline std::ostream& operator<<(std::ostream& os, const Option& self) - { - for (size_t i = 0; i < self.paramVec_.size(); i++) { - const Info& param = self.paramVec_[i]; - os << param.opt << '=' << param.var.toStr() << std::endl; - } - if (self.paramMode_ == P_variable) { - os << "remains=" << self.remains_.var.toStr() << std::endl; - } - for (size_t i = 0; i < self.infoVec_.size(); i++) { - os << self.infoVec_[i] << std::endl; - } - return os; - } - void put() const - { - std::cout << *this; - } - /* - whether pvar is set or not - */ - template - bool isSet(const T* pvar) const - { - const void *p = static_cast(pvar); - for (size_t i = 0; i < paramVec_.size(); i++) { - const Info& v = paramVec_[i]; - if (v.get() == p) return v.isSet(); - } - if (remains_.get() == p) return remains_.isSet(); - for (size_t i = 0; i < infoVec_.size(); i++) { - const Info& v = infoVec_[i]; - if (v.get() == p) return v.isSet(); - } - throw cybozu::Exception("Option:isSet:no assigned var") << pvar; - } -}; - -} // cybozu diff --git a/cases/tool/win/bls_win/include/cybozu/random_generator.hpp b/cases/tool/win/bls_win/include/cybozu/random_generator.hpp deleted file mode 100644 index 375db06a8d..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/random_generator.hpp +++ /dev/null @@ -1,162 +0,0 @@ -#pragma once -/** - @file - @brief pseudrandom generator - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ - -#ifndef CYBOZU_DONT_USE_EXCEPTION -#include -#endif -#ifdef _WIN32 -#include -#include -#include -#ifdef _MSC_VER -#pragma comment (lib, "advapi32.lib") -#endif -#include -#else -#include -#include -#endif - -namespace cybozu { - -class RandomGenerator { - RandomGenerator(const RandomGenerator&); - void operator=(const RandomGenerator&); -public: -#ifdef _WIN32 - RandomGenerator() - : prov_(0) - , pos_(bufSize) - { - DWORD flagTbl[] = { 0, CRYPT_NEWKEYSET }; - for (int i = 0; i < 2; i++) { - if (CryptAcquireContext(&prov_, NULL, NULL, PROV_RSA_FULL, flagTbl[i]) != 0) return; - } -#ifdef CYBOZU_DONT_USE_EXCEPTION - prov_ = 0; -#else - throw cybozu::Exception("randomgenerator"); -#endif - } - bool read_inner(void *buf, size_t byteSize) - { - if (prov_ == 0) return false; - return CryptGenRandom(prov_, static_cast(byteSize), static_cast(buf)) != 0; - } - ~RandomGenerator() - { - if (prov_) { - CryptReleaseContext(prov_, 0); - } - } - /* - fill buf[0..bufNum-1] with random data - @note bufNum is not byte size - */ - template - void read(bool *pb, T *buf, size_t bufNum) - { - cybozu::AutoLockCs al(cs_); - const size_t byteSize = sizeof(T) * bufNum; - if (byteSize > bufSize) { - if (!read_inner(buf, byteSize)) { - *pb = false; - return; - } - } else { - if (pos_ + byteSize > bufSize) { - read_inner(buf_, bufSize); - pos_ = 0; - } - memcpy(buf, buf_ + pos_, byteSize); - pos_ += byteSize; - } - *pb = true; - } -private: - HCRYPTPROV prov_; - static const size_t bufSize = 1024; - char buf_[bufSize]; - size_t pos_; - cybozu::CriticalSection cs_; -#else - RandomGenerator() - : fp_(::fopen("/dev/urandom", "rb")) - { -#ifndef CYBOZU_DONT_USE_EXCEPTION - if (!fp_) throw cybozu::Exception("randomgenerator"); -#endif - } - ~RandomGenerator() - { - if (fp_) ::fclose(fp_); - } - /* - fill buf[0..bufNum-1] with random data - @note bufNum is not byte size - */ - template - void read(bool *pb, T *buf, size_t bufNum) - { - if (fp_ == 0) { - *pb = false; - return; - } - const size_t byteSize = sizeof(T) * bufNum; - *pb = ::fread(buf, 1, (int)byteSize, fp_) == byteSize; - } -private: - FILE *fp_; -#endif -#ifndef CYBOZU_DONT_USE_EXCEPTION -public: - template - void read(T *buf, size_t bufNum) - { - bool b; - read(&b, buf, bufNum); - if (!b) throw cybozu::Exception("RandomGenerator:read") << bufNum; - } - uint32_t get32() - { - uint32_t ret; - read(&ret, 1); - return ret; - } - uint64_t get64() - { - uint64_t ret; - read(&ret, 1); - return ret; - } - uint32_t operator()() - { - return get32(); - } -#endif -}; - -template -void shuffle(T* v, size_t n, RG& rg) -{ - if (n <= 1) return; - for (size_t i = 0; i < n - 1; i++) { - size_t r = i + size_t(rg.get64() % (n - i)); - using namespace std; - swap(v[i], v[r]); - } -} - -template -void shuffle(V& v, RG& rg) -{ - shuffle(v.data(), v.size(), rg); -} - -} // cybozu diff --git a/cases/tool/win/bls_win/include/cybozu/serializer.hpp b/cases/tool/win/bls_win/include/cybozu/serializer.hpp deleted file mode 100644 index 1e23c8f42d..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/serializer.hpp +++ /dev/null @@ -1,363 +0,0 @@ -#pragma once -/** - @file - @brief serializer for vector, list, map and so on - - @author MITSUNARI Shigeo(@herumi) -*/ -#include -#include - -#ifdef _MSC_VER - #pragma warning(push) - #pragma warning(disable : 4127) -#endif - -//#define CYBOZU_SERIALIZER_FIXED_SIZE_INTEGER - -namespace cybozu { - -namespace serializer_local { - -template -union ci { - T i; - uint8_t c[sizeof(T)]; -}; - -template -struct HasMemFunc { }; - -template -void dispatch_reserve(T& t, size_t size, int, HasMemFunc* = 0) -{ - t.reserve(size); -} - -template -void dispatch_reserve(T&, size_t, int*) -{ -} - -template -void reserve_if_exists(T& t, size_t size) -{ - dispatch_reserve(t, size, 0); -} - -} // serializer_local - -template -void loadRange(T *p, size_t num, InputStream& is) -{ - cybozu::read(p, num * sizeof(T), is); -} - -template -void saveRange(OutputStream& os, const T *p, size_t num) -{ - cybozu::write(os, p, num * sizeof(T)); -} - -template -void loadPod(T& x, InputStream& is) -{ - serializer_local::ci ci; - loadRange(ci.c, sizeof(ci.c), is); - x = ci.i; -} - -template -void savePod(OutputStream& os, const T& x) -{ - serializer_local::ci ci; - ci.i = x; - saveRange(os, ci.c, sizeof(ci.c)); -} - -template -void load(T& x, InputStream& is) -{ - x.load(is); -} - -template -void save(OutputStream& os, const T& x) -{ - x.save(os); -} - -#define CYBOZU_SERIALIZER_MAKE_SERIALIZER_F(type) \ -templatevoid load(type& x, InputStream& is) { loadPod(x, is); } \ -templatevoid save(OutputStream& os, type x) { savePod(os, x); } - -CYBOZU_SERIALIZER_MAKE_SERIALIZER_F(bool) -CYBOZU_SERIALIZER_MAKE_SERIALIZER_F(char) -CYBOZU_SERIALIZER_MAKE_SERIALIZER_F(short) -CYBOZU_SERIALIZER_MAKE_SERIALIZER_F(unsigned char) -CYBOZU_SERIALIZER_MAKE_SERIALIZER_F(unsigned short) -CYBOZU_SERIALIZER_MAKE_SERIALIZER_F(wchar_t) - -CYBOZU_SERIALIZER_MAKE_SERIALIZER_F(float) -CYBOZU_SERIALIZER_MAKE_SERIALIZER_F(double) - -#ifdef CYBOZU_SERIALIZER_FIXED_SIZE_INTEGER - -#define CYBOZU_SERIALIZER_MAKE_INT_SERIALIZER(type) CYBOZU_SERIALIZER_MAKE_SERIALIZER_F(type) - -#else - -namespace serializer_local { - -template -bool isRecoverable(T x) -{ - return T(S(x)) == x; -} -/* - data structure H:D of integer x - H:header(1byte) - 0x80 ; D = 1 byte zero ext - 0x81 ; D = 2 byte zero ext - 0x82 ; D = 4 byte zero ext - 0x83 ; D = 8 byte zero ext - 0x84 ; D = 1 byte signed ext - 0x85 ; D = 2 byte signed ext - 0x86 ; D = 4 byte signed ext - 0x87 ; D = 8 byte signed ext - other; x = signed H, D = none -*/ -template -void saveVariableInt(OutputStream& os, const T& x) -{ - if (isRecoverable(x)) { - uint8_t u8 = uint8_t(x); - if (unsigned(u8 - 0x80) <= 7) { - savePod(os, uint8_t(0x84)); - } - savePod(os, u8); - } else if (isRecoverable(x)) { - savePod(os, uint8_t(0x80)); - savePod(os, uint8_t(x)); - } else if (isRecoverable(x) || isRecoverable(x)) { - savePod(os, uint8_t(isRecoverable(x) ? 0x81 : 0x85)); - savePod(os, uint16_t(x)); - } else if (isRecoverable(x) || isRecoverable(x)) { - savePod(os, uint8_t(isRecoverable(x) ? 0x82 : 0x86)); - savePod(os, uint32_t(x)); - } else { - assert(sizeof(T) == 8); - savePod(os, uint8_t(0x83)); - savePod(os, uint64_t(x)); - } -} - -template -void loadVariableInt(T& x, InputStream& is) -{ - uint8_t h; - loadPod(h, is); - if (h == 0x80) { - uint8_t v; - loadPod(v, is); - x = v; - } else if (h == 0x81) { - uint16_t v; - loadPod(v, is); - x = v; - } else if (h == 0x82) { - uint32_t v; - loadPod(v, is); - x = v; - } else if (h == 0x83) { - if (sizeof(T) == 4) throw cybozu::Exception("loadVariableInt:bad header") << h; - uint64_t v; - loadPod(v, is); - x = static_cast(v); - } else if (h == 0x84) { - int8_t v; - loadPod(v, is); - x = v; - } else if (h == 0x85) { - int16_t v; - loadPod(v, is); - x = v; - } else if (h == 0x86) { - int32_t v; - loadPod(v, is); - x = v; - } else if (h == 0x87) { - if (sizeof(T) == 4) throw cybozu::Exception("loadVariableInt:bad header") << h; - int64_t v; - loadPod(v, is); - x = static_cast(v); - } else { - x = static_cast(h); - } -} - -} // serializer_local - -#define CYBOZU_SERIALIZER_MAKE_INT_SERIALIZER(type) \ -templatevoid load(type& x, InputStream& is) { serializer_local::loadVariableInt(x, is); } \ -templatevoid save(OutputStream& os, type x) { serializer_local::saveVariableInt(os, x); } - -#endif - -CYBOZU_SERIALIZER_MAKE_INT_SERIALIZER(int) -CYBOZU_SERIALIZER_MAKE_INT_SERIALIZER(long) -CYBOZU_SERIALIZER_MAKE_INT_SERIALIZER(long long) -CYBOZU_SERIALIZER_MAKE_INT_SERIALIZER(unsigned int) -CYBOZU_SERIALIZER_MAKE_INT_SERIALIZER(unsigned long) -CYBOZU_SERIALIZER_MAKE_INT_SERIALIZER(unsigned long long) - -#undef CYBOZU_SERIALIZER_MAKE_INT_SERIALIZER -#undef CYBOZU_SERIALIZER_MAKE_UNT_SERIALIZER -#undef CYBOZU_SERIALIZER_MAKE_SERIALIZER_F -#undef CYBOZU_SERIALIZER_MAKE_SERIALIZER_V - -// only for std::vector -template -void loadPodVec(V& v, InputStream& is) -{ - size_t size; - load(size, is); - v.resize(size); - if (size > 0) loadRange(&v[0], size, is); -} - -// only for std::vector -template -void savePodVec(OutputStream& os, const V& v) -{ - save(os, v.size()); - if (!v.empty()) saveRange(os, &v[0], v.size()); -} - -template -void load(std::string& str, InputStream& is) -{ - loadPodVec(str, is); -} - -template -void save(OutputStream& os, const std::string& str) -{ - savePodVec(os, str); -} - -template -void save(OutputStream& os, const char *x) -{ - const size_t len = strlen(x); - save(os, len); - if (len > 0) saveRange(os, x, len); -} - - -// for vector, list -templateclass Container> -void load(Container& x, InputStream& is) -{ - size_t size; - load(size, is); - serializer_local::reserve_if_exists(x, size); - for (size_t i = 0; i < size; i++) { - x.push_back(T()); - T& t = x.back(); - load(t, is); - } -} - -templateclass Container> -void save(OutputStream& os, const Container& x) -{ - typedef Container V; - save(os, x.size()); - for (typename V::const_iterator i = x.begin(), end = x.end(); i != end; ++i) { - save(os, *i); - } -} - -// for set -templateclass Container> -void load(Container& x, InputStream& is) -{ - size_t size; - load(size, is); - for (size_t i = 0; i < size; i++) { - K t; - load(t, is); - x.insert(t); - } -} - -templateclass Container> -void save(OutputStream& os, const Container& x) -{ - typedef Container Set; - save(os, x.size()); - for (typename Set::const_iterator i = x.begin(), end = x.end(); i != end; ++i) { - save(os, *i); - } -} - -// for map -templateclass Container> -void load(Container& x, InputStream& is) -{ - typedef Container Map; - size_t size; - load(size, is); - for (size_t i = 0; i < size; i++) { - std::pair vt; - load(vt.first, is); - load(vt.second, is); - x.insert(vt); - } -} - -templateclass Container> -void save(OutputStream& os, const Container& x) -{ - typedef Container Map; - save(os, x.size()); - for (typename Map::const_iterator i = x.begin(), end = x.end(); i != end; ++i) { - save(os, i->first); - save(os, i->second); - } -} - -// unordered_map -templateclass Container> -void load(Container& x, InputStream& is) -{ - typedef Container Map; - size_t size; - load(size, is); -// x.reserve(size); // tr1::unordered_map may not have reserve - cybozu::serializer_local::reserve_if_exists(x, size); - for (size_t i = 0; i < size; i++) { - std::pair vt; - load(vt.first, is); - load(vt.second, is); - x.insert(vt); - } -} - -templateclass Container> -void save(OutputStream& os, const Container& x) -{ - typedef Container Map; - save(os, x.size()); - for (typename Map::const_iterator i = x.begin(), end = x.end(); i != end; ++i) { - save(os, i->first); - save(os, i->second); - } -} - -} // cybozu - -#ifdef _MSC_VER - #pragma warning(pop) -#endif diff --git a/cases/tool/win/bls_win/include/cybozu/sha2.hpp b/cases/tool/win/bls_win/include/cybozu/sha2.hpp deleted file mode 100644 index 335a8975e2..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/sha2.hpp +++ /dev/null @@ -1,470 +0,0 @@ -#pragma once -/** - @file - @brief SHA-256, SHA-512 class - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#if !defined(CYBOZU_DONT_USE_OPENSSL) && !defined(MCL_DONT_USE_OPENSSL) - #define CYBOZU_USE_OPENSSL_SHA -#endif - -#ifndef CYBOZU_DONT_USE_STRING -#include -#endif - -#ifdef CYBOZU_USE_OPENSSL_SHA -#ifdef __APPLE__ - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wdeprecated-declarations" -#endif -#include -#ifdef _MSC_VER - #include -#endif - -#ifdef __APPLE__ - #pragma GCC diagnostic pop -#endif - -namespace cybozu { - -class Sha256 { - SHA256_CTX ctx_; -public: - Sha256() - { - clear(); - } - void clear() - { - SHA256_Init(&ctx_); - } - void update(const void *buf, size_t bufSize) - { - SHA256_Update(&ctx_, buf, bufSize); - } - size_t digest(void *md, size_t mdSize, const void *buf, size_t bufSize) - { - if (mdSize < SHA256_DIGEST_LENGTH) return 0; - update(buf, bufSize); - SHA256_Final(reinterpret_cast(md), &ctx_); - return SHA256_DIGEST_LENGTH; - } -#ifndef CYBOZU_DONT_USE_STRING - void update(const std::string& buf) - { - update(buf.c_str(), buf.size()); - } - std::string digest(const std::string& buf) - { - return digest(buf.c_str(), buf.size()); - } - std::string digest(const void *buf, size_t bufSize) - { - std::string md(SHA256_DIGEST_LENGTH, 0); - digest(&md[0], md.size(), buf, bufSize); - return md; - } -#endif -}; - -class Sha512 { - SHA512_CTX ctx_; -public: - Sha512() - { - clear(); - } - void clear() - { - SHA512_Init(&ctx_); - } - void update(const void *buf, size_t bufSize) - { - SHA512_Update(&ctx_, buf, bufSize); - } - size_t digest(void *md, size_t mdSize, const void *buf, size_t bufSize) - { - if (mdSize < SHA512_DIGEST_LENGTH) return 0; - update(buf, bufSize); - SHA512_Final(reinterpret_cast(md), &ctx_); - return SHA512_DIGEST_LENGTH; - } -#ifndef CYBOZU_DONT_USE_STRING - void update(const std::string& buf) - { - update(buf.c_str(), buf.size()); - } - std::string digest(const std::string& buf) - { - return digest(buf.c_str(), buf.size()); - } - std::string digest(const void *buf, size_t bufSize) - { - std::string md(SHA512_DIGEST_LENGTH, 0); - digest(&md[0], md.size(), buf, bufSize); - return md; - } -#endif -}; - -} // cybozu - -#else - -#include -#include -#include - -namespace cybozu { - -namespace sha2_local { - -template -T min_(T x, T y) { return x < y ? x : y;; } - -inline uint32_t rot32(uint32_t x, int s) -{ -#ifdef _MSC_VER - return _rotr(x, s); -#else - return (x >> s) | (x << (32 - s)); -#endif -} - -inline uint64_t rot64(uint64_t x, int s) -{ -#ifdef _MSC_VER - return _rotr64(x, s); -#else - return (x >> s) | (x << (64 - s)); -#endif -} - -template -struct Common { - void term(uint8_t *buf, size_t bufSize) - { - assert(bufSize < T::blockSize_); - T& self = static_cast(*this); - const uint64_t totalSize = self.totalSize_ + bufSize; - - buf[bufSize] = uint8_t(0x80); /* top bit = 1 */ - memset(&buf[bufSize + 1], 0, T::blockSize_ - bufSize - 1); - if (bufSize >= T::blockSize_ - T::msgLenByte_) { - self.round(buf); - memset(buf, 0, T::blockSize_ - 8); // clear stack - } - cybozu::Set64bitAsBE(&buf[T::blockSize_ - 8], totalSize * 8); - self.round(buf); - } - void inner_update(const uint8_t *buf, size_t bufSize) - { - T& self = static_cast(*this); - if (bufSize == 0) return; - if (self.roundBufSize_ > 0) { - size_t size = sha2_local::min_(T::blockSize_ - self.roundBufSize_, bufSize); - memcpy(self.roundBuf_ + self.roundBufSize_, buf, size); - self.roundBufSize_ += size; - buf += size; - bufSize -= size; - } - if (self.roundBufSize_ == T::blockSize_) { - self.round(self.roundBuf_); - self.roundBufSize_ = 0; - } - while (bufSize >= T::blockSize_) { - assert(self.roundBufSize_ == 0); - self.round(buf); - buf += T::blockSize_; - bufSize -= T::blockSize_; - } - if (bufSize > 0) { - assert(bufSize < T::blockSize_); - assert(self.roundBufSize_ == 0); - memcpy(self.roundBuf_, buf, bufSize); - self.roundBufSize_ = bufSize; - } - assert(self.roundBufSize_ < T::blockSize_); - } -}; - -} // cybozu::sha2_local - -class Sha256 : public sha2_local::Common { - friend struct sha2_local::Common; -private: - static const size_t blockSize_ = 64; - static const size_t hSize_ = 8; - static const size_t msgLenByte_ = 8; - uint64_t totalSize_; - size_t roundBufSize_; - uint8_t roundBuf_[blockSize_]; - uint32_t h_[hSize_]; - static const size_t outByteSize_ = hSize_ * sizeof(uint32_t); - const uint32_t *k_; - - template - void round1(uint32_t *s, uint32_t *w, int i) - { - using namespace sha2_local; - uint32_t e = s[i4]; - uint32_t h = s[i7]; - h += rot32(e, 6) ^ rot32(e, 11) ^ rot32(e, 25); - uint32_t f = s[i5]; - uint32_t g = s[i6]; - h += g ^ (e & (f ^ g)); - h += k_[i]; - h += w[i]; - s[i3] += h; - uint32_t a = s[i0]; - uint32_t b = s[i1]; - uint32_t c = s[i2]; - h += rot32(a, 2) ^ rot32(a, 13) ^ rot32(a, 22); - h += ((a | b) & c) | (a & b); - s[i7] = h; - } - /** - @param buf [in] buffer(64byte) - */ - void round(const uint8_t *buf) - { - using namespace sha2_local; - uint32_t w[64]; - for (int i = 0; i < 16; i++) { - w[i] = cybozu::Get32bitAsBE(&buf[i * 4]); - } - for (int i = 16 ; i < 64; i++) { - uint32_t t = w[i - 15]; - uint32_t s0 = rot32(t, 7) ^ rot32(t, 18) ^ (t >> 3); - t = w[i - 2]; - uint32_t s1 = rot32(t, 17) ^ rot32(t, 19) ^ (t >> 10); - w[i] = w[i - 16] + s0 + w[i - 7] + s1; - } - uint32_t s[8]; - for (int i = 0; i < 8; i++) { - s[i] = h_[i]; - } - for (int i = 0; i < 64; i += 8) { - round1<0, 1, 2, 3, 4, 5, 6, 7>(s, w, i + 0); - round1<7, 0, 1, 2, 3, 4, 5, 6>(s, w, i + 1); - round1<6, 7, 0, 1, 2, 3, 4, 5>(s, w, i + 2); - round1<5, 6, 7, 0, 1, 2, 3, 4>(s, w, i + 3); - round1<4, 5, 6, 7, 0, 1, 2, 3>(s, w, i + 4); - round1<3, 4, 5, 6, 7, 0, 1, 2>(s, w, i + 5); - round1<2, 3, 4, 5, 6, 7, 0, 1>(s, w, i + 6); - round1<1, 2, 3, 4, 5, 6, 7, 0>(s, w, i + 7); - } - for (int i = 0; i < 8; i++) { - h_[i] += s[i]; - } - totalSize_ += blockSize_; - } -public: - Sha256() - { - clear(); - } - void clear() - { - static const uint32_t kTbl[] = { - 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5, - 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174, - 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, - 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967, - 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85, - 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070, - 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, - 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2 - }; - k_ = kTbl; - totalSize_ = 0; - roundBufSize_ = 0; - h_[0] = 0x6a09e667; - h_[1] = 0xbb67ae85; - h_[2] = 0x3c6ef372; - h_[3] = 0xa54ff53a; - h_[4] = 0x510e527f; - h_[5] = 0x9b05688c; - h_[6] = 0x1f83d9ab; - h_[7] = 0x5be0cd19; - } - void update(const void *buf, size_t bufSize) - { - inner_update(reinterpret_cast(buf), bufSize); - } - size_t digest(void *md, size_t mdSize, const void *buf, size_t bufSize) - { - if (mdSize < outByteSize_) return 0; - update(buf, bufSize); - term(roundBuf_, roundBufSize_); - char *p = reinterpret_cast(md); - for (size_t i = 0; i < hSize_; i++) { - cybozu::Set32bitAsBE(&p[i * sizeof(h_[0])], h_[i]); - } - return outByteSize_; - } -#ifndef CYBOZU_DONT_USE_STRING - void update(const std::string& buf) - { - update(buf.c_str(), buf.size()); - } - std::string digest(const std::string& buf) - { - return digest(buf.c_str(), buf.size()); - } - std::string digest(const void *buf, size_t bufSize) - { - std::string md(outByteSize_, 0); - digest(&md[0], md.size(), buf, bufSize); - return md; - } -#endif -}; - -class Sha512 : public sha2_local::Common { - friend struct sha2_local::Common; -private: - static const size_t blockSize_ = 128; - static const size_t hSize_ = 8; - static const size_t msgLenByte_ = 16; - uint64_t totalSize_; - size_t roundBufSize_; - uint8_t roundBuf_[blockSize_]; - uint64_t h_[hSize_]; - static const size_t outByteSize_ = hSize_ * sizeof(uint64_t); - const uint64_t *k_; - - template - void round1(uint64_t *S, const uint64_t *w, size_t i) - { - using namespace sha2_local; - uint64_t& a = S[i0]; - uint64_t& b = S[i1]; - uint64_t& c = S[i2]; - uint64_t& d = S[i3]; - uint64_t& e = S[i4]; - uint64_t& f = S[i5]; - uint64_t& g = S[i6]; - uint64_t& h = S[i7]; - - uint64_t s1 = rot64(e, 14) ^ rot64(e, 18) ^ rot64(e, 41); - uint64_t ch = g ^ (e & (f ^ g)); - uint64_t t0 = h + s1 + ch + k_[i] + w[i]; - uint64_t s0 = rot64(a, 28) ^ rot64(a, 34) ^ rot64(a, 39); - uint64_t maj = ((a | b) & c) | (a & b); - uint64_t t1 = s0 + maj; - d += t0; - h = t0 + t1; - } - /** - @param buf [in] buffer(64byte) - */ - void round(const uint8_t *buf) - { - using namespace sha2_local; - uint64_t w[80]; - for (int i = 0; i < 16; i++) { - w[i] = cybozu::Get64bitAsBE(&buf[i * 8]); - } - for (int i = 16 ; i < 80; i++) { - uint64_t t = w[i - 15]; - uint64_t s0 = rot64(t, 1) ^ rot64(t, 8) ^ (t >> 7); - t = w[i - 2]; - uint64_t s1 = rot64(t, 19) ^ rot64(t, 61) ^ (t >> 6); - w[i] = w[i - 16] + s0 + w[i - 7] + s1; - } - uint64_t s[8]; - for (int i = 0; i < 8; i++) { - s[i] = h_[i]; - } - for (int i = 0; i < 80; i += 8) { - round1<0, 1, 2, 3, 4, 5, 6, 7>(s, w, i + 0); - round1<7, 0, 1, 2, 3, 4, 5, 6>(s, w, i + 1); - round1<6, 7, 0, 1, 2, 3, 4, 5>(s, w, i + 2); - round1<5, 6, 7, 0, 1, 2, 3, 4>(s, w, i + 3); - round1<4, 5, 6, 7, 0, 1, 2, 3>(s, w, i + 4); - round1<3, 4, 5, 6, 7, 0, 1, 2>(s, w, i + 5); - round1<2, 3, 4, 5, 6, 7, 0, 1>(s, w, i + 6); - round1<1, 2, 3, 4, 5, 6, 7, 0>(s, w, i + 7); - } - for (int i = 0; i < 8; i++) { - h_[i] += s[i]; - } - totalSize_ += blockSize_; - } -public: - Sha512() - { - clear(); - } - void clear() - { - static const uint64_t kTbl[] = { - 0x428a2f98d728ae22ULL, 0x7137449123ef65cdULL, 0xb5c0fbcfec4d3b2fULL, 0xe9b5dba58189dbbcULL, 0x3956c25bf348b538ULL, - 0x59f111f1b605d019ULL, 0x923f82a4af194f9bULL, 0xab1c5ed5da6d8118ULL, 0xd807aa98a3030242ULL, 0x12835b0145706fbeULL, - 0x243185be4ee4b28cULL, 0x550c7dc3d5ffb4e2ULL, 0x72be5d74f27b896fULL, 0x80deb1fe3b1696b1ULL, 0x9bdc06a725c71235ULL, - 0xc19bf174cf692694ULL, 0xe49b69c19ef14ad2ULL, 0xefbe4786384f25e3ULL, 0x0fc19dc68b8cd5b5ULL, 0x240ca1cc77ac9c65ULL, - 0x2de92c6f592b0275ULL, 0x4a7484aa6ea6e483ULL, 0x5cb0a9dcbd41fbd4ULL, 0x76f988da831153b5ULL, 0x983e5152ee66dfabULL, - 0xa831c66d2db43210ULL, 0xb00327c898fb213fULL, 0xbf597fc7beef0ee4ULL, 0xc6e00bf33da88fc2ULL, 0xd5a79147930aa725ULL, - 0x06ca6351e003826fULL, 0x142929670a0e6e70ULL, 0x27b70a8546d22ffcULL, 0x2e1b21385c26c926ULL, 0x4d2c6dfc5ac42aedULL, - 0x53380d139d95b3dfULL, 0x650a73548baf63deULL, 0x766a0abb3c77b2a8ULL, 0x81c2c92e47edaee6ULL, 0x92722c851482353bULL, - 0xa2bfe8a14cf10364ULL, 0xa81a664bbc423001ULL, 0xc24b8b70d0f89791ULL, 0xc76c51a30654be30ULL, 0xd192e819d6ef5218ULL, - 0xd69906245565a910ULL, 0xf40e35855771202aULL, 0x106aa07032bbd1b8ULL, 0x19a4c116b8d2d0c8ULL, 0x1e376c085141ab53ULL, - 0x2748774cdf8eeb99ULL, 0x34b0bcb5e19b48a8ULL, 0x391c0cb3c5c95a63ULL, 0x4ed8aa4ae3418acbULL, 0x5b9cca4f7763e373ULL, - 0x682e6ff3d6b2b8a3ULL, 0x748f82ee5defb2fcULL, 0x78a5636f43172f60ULL, 0x84c87814a1f0ab72ULL, 0x8cc702081a6439ecULL, - 0x90befffa23631e28ULL, 0xa4506cebde82bde9ULL, 0xbef9a3f7b2c67915ULL, 0xc67178f2e372532bULL, 0xca273eceea26619cULL, - 0xd186b8c721c0c207ULL, 0xeada7dd6cde0eb1eULL, 0xf57d4f7fee6ed178ULL, 0x06f067aa72176fbaULL, 0x0a637dc5a2c898a6ULL, - 0x113f9804bef90daeULL, 0x1b710b35131c471bULL, 0x28db77f523047d84ULL, 0x32caab7b40c72493ULL, 0x3c9ebe0a15c9bebcULL, - 0x431d67c49c100d4cULL, 0x4cc5d4becb3e42b6ULL, 0x597f299cfc657e2aULL, 0x5fcb6fab3ad6faecULL, 0x6c44198c4a475817ULL - }; - k_ = kTbl; - totalSize_ = 0; - roundBufSize_ = 0; - h_[0] = 0x6a09e667f3bcc908ull; - h_[1] = 0xbb67ae8584caa73bull; - h_[2] = 0x3c6ef372fe94f82bull; - h_[3] = 0xa54ff53a5f1d36f1ull; - h_[4] = 0x510e527fade682d1ull; - h_[5] = 0x9b05688c2b3e6c1full; - h_[6] = 0x1f83d9abfb41bd6bull; - h_[7] = 0x5be0cd19137e2179ull; - } - void update(const void *buf, size_t bufSize) - { - inner_update(reinterpret_cast(buf), bufSize); - } - size_t digest(void *md, size_t mdSize, const void *buf, size_t bufSize) - { - if (mdSize < outByteSize_) return 0; - update(buf, bufSize); - term(roundBuf_, roundBufSize_); - char *p = reinterpret_cast(md); - for (size_t i = 0; i < hSize_; i++) { - cybozu::Set64bitAsBE(&p[i * sizeof(h_[0])], h_[i]); - } - return outByteSize_; - } -#ifndef CYBOZU_DONT_USE_STRING - void update(const std::string& buf) - { - update(buf.c_str(), buf.size()); - } - std::string digest(const std::string& buf) - { - return digest(buf.c_str(), buf.size()); - } - std::string digest(const void *buf, size_t bufSize) - { - std::string md(outByteSize_, 0); - digest(&md[0], md.size(), buf, bufSize); - return md; - } -#endif -}; - -} // cybozu - -#endif diff --git a/cases/tool/win/bls_win/include/cybozu/stream.hpp b/cases/tool/win/bls_win/include/cybozu/stream.hpp deleted file mode 100644 index bc110bdb0d..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/stream.hpp +++ /dev/null @@ -1,267 +0,0 @@ -#pragma once -/** - @file - @brief stream and line stream class - - @author MITSUNARI Shigeo(@herumi) -*/ -#ifndef CYBOZU_DONT_USE_STRING -#include -#include -#endif -#include -#include - -namespace cybozu { - -namespace stream_local { - -template -struct is_convertible { - typedef char yes; - typedef int no; - - static no test(...); - static yes test(const To*); - static const bool value = sizeof(test(static_cast(0))) == sizeof(yes); -}; - -template -struct enable_if { typedef T type; }; - -template -struct enable_if {}; - -#ifndef CYBOZU_DONT_USE_STRING -/* specialization for istream */ -template -size_t readSome_inner(void *buf, size_t size, InputStream& is, typename enable_if::value>::type* = 0) -{ - if (size > 0x7fffffff) size = 0x7fffffff; - is.read(static_cast(buf), size); - const int64_t readSize = is.gcount(); - if (readSize < 0) return 0; - if (size == 1 && readSize == 0) is.clear(); - return static_cast(readSize); -} - -/* generic version for size_t readSome(void *, size_t) */ -template -size_t readSome_inner(void *buf, size_t size, InputStream& is, typename enable_if::value>::type* = 0) -{ - return is.readSome(buf, size); -} -#else -template -size_t readSome_inner(void *buf, size_t size, InputStream& is) -{ - return is.readSome(buf, size); -} -#endif - -#ifndef CYBOZU_DONT_USE_EXCEPTION -/* specialization for ostream */ -template -void writeSub(OutputStream& os, const void *buf, size_t size, typename enable_if::value>::type* = 0) -{ - if (!os.write(static_cast(buf), size)) throw cybozu::Exception("stream:writeSub") << size; -} -#endif - -#ifndef CYBOZU_DONT_USE_STRING -/* generic version for void write(const void*, size_t), which writes all data */ -template -void writeSub(OutputStream& os, const void *buf, size_t size, typename enable_if::value>::type* = 0) -{ - os.write(buf, size); -} - -template -void writeSub(bool *pb, OutputStream& os, const void *buf, size_t size, typename enable_if::value>::type* = 0) -{ - *pb = !!os.write(static_cast(buf), size); -} - -/* generic version for void write(const void*, size_t), which writes all data */ -template -void writeSub(bool *pb, OutputStream& os, const void *buf, size_t size, typename enable_if::value>::type* = 0) -{ - os.write(pb, buf, size); -} -#else -template -void writeSub(bool *pb, OutputStream& os, const void *buf, size_t size) -{ - os.write(pb, buf, size); -} -#endif - -} // stream_local - -/* - make a specializaiton of class to use new InputStream, OutputStream -*/ -template -struct InputStreamTag { - static size_t readSome(void *buf, size_t size, InputStream& is) - { - return stream_local::readSome_inner(buf, size, is); - } - static bool readChar(char *c, InputStream& is) - { - return readSome(c, 1, is) == 1; - } -}; - -template -struct OutputStreamTag { - static void write(OutputStream& os, const void *buf, size_t size) - { - stream_local::writeSub(os, buf, size); - } -}; - -class MemoryInputStream { - const char *p_; - size_t size_; - size_t pos; -public: - MemoryInputStream(const void *p, size_t size) : p_(static_cast(p)), size_(size), pos(0) {} - size_t readSome(void *buf, size_t size) - { - if (size > size_ - pos) size = size_ - pos; - memcpy(buf, p_ + pos, size); - pos += size; - return size; - } - size_t getPos() const { return pos; } -}; - -class MemoryOutputStream { - char *p_; - size_t size_; - size_t pos; -public: - MemoryOutputStream(void *p, size_t size) : p_(static_cast(p)), size_(size), pos(0) {} - void write(bool *pb, const void *buf, size_t size) - { - if (size > size_ - pos) { - *pb = false; - return; - } - memcpy(p_ + pos, buf, size); - pos += size; - *pb = true; - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - void write(const void *buf, size_t size) - { - bool b; - write(&b, buf, size); - if (!b) throw cybozu::Exception("MemoryOutputStream:write") << size << size_ << pos; - } -#endif - size_t getPos() const { return pos; } -}; - -#ifndef CYBOZU_DONT_USE_STRING -class StringInputStream { - const std::string& str_; - size_t pos; - StringInputStream(const StringInputStream&); - void operator=(const StringInputStream&); -public: - explicit StringInputStream(const std::string& str) : str_(str), pos(0) {} - size_t readSome(void *buf, size_t size) - { - const size_t remainSize = str_.size() - pos; - if (size > remainSize) size = remainSize; - memcpy(buf, &str_[pos], size); - pos += size; - return size; - } - size_t getPos() const { return pos; } -}; - -class StringOutputStream { - std::string& str_; - StringOutputStream(const StringOutputStream&); - void operator=(const StringOutputStream&); -public: - explicit StringOutputStream(std::string& str) : str_(str) {} - void write(bool *pb, const void *buf, size_t size) - { - str_.append(static_cast(buf), size); - *pb = true; - } - void write(const void *buf, size_t size) - { - str_.append(static_cast(buf), size); - } - size_t getPos() const { return str_.size(); } -}; -#endif - -template -size_t readSome(void *buf, size_t size, InputStream& is) -{ - return stream_local::readSome_inner(buf, size, is); -} - -template -void write(OutputStream& os, const void *buf, size_t size) -{ - stream_local::writeSub(os, buf, size); -} - -template -void write(bool *pb, OutputStream& os, const void *buf, size_t size) -{ - stream_local::writeSub(pb, os, buf, size); -} - -template -void read(bool *pb, void *buf, size_t size, InputStream& is) -{ - char *p = static_cast(buf); - while (size > 0) { - size_t readSize = cybozu::readSome(p, size, is); - if (readSize == 0) { - *pb = false; - return; - } - p += readSize; - size -= readSize; - } - *pb = true; -} - -#ifndef CYBOZU_DONT_USE_EXCEPTION -template -void read(void *buf, size_t size, InputStream& is) -{ - bool b; - read(&b, buf, size, is); - if (!b) throw cybozu::Exception("stream:read"); -} -#endif - -template -bool readChar(char *c, InputStream& is) -{ - return readSome(c, 1, is) == 1; -} - -template -void writeChar(OutputStream& os, char c) -{ - cybozu::write(os, &c, 1); -} - -template -void writeChar(bool *pb, OutputStream& os, char c) -{ - cybozu::write(pb, os, &c, 1); -} - -} // cybozu diff --git a/cases/tool/win/bls_win/include/cybozu/test.hpp b/cases/tool/win/bls_win/include/cybozu/test.hpp deleted file mode 100644 index 7dfffab960..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/test.hpp +++ /dev/null @@ -1,373 +0,0 @@ -#pragma once -/** - @file - @brief unit test class - - @author MITSUNARI Shigeo(@herumi) -*/ - -#include -#include -#include -#include -#include -#include -#if defined(_MSC_VER) && (MSC_VER <= 1500) - #include -#else - #include -#endif - -namespace cybozu { namespace test { - -class AutoRun { - typedef void (*Func)(); - typedef std::list > UnitTestList; -public: - AutoRun() - : init_(0) - , term_(0) - , okCount_(0) - , ngCount_(0) - , exceptionCount_(0) - { - } - void setup(Func init, Func term) - { - init_ = init; - term_ = term; - } - void append(const char *name, Func func) - { - list_.push_back(std::make_pair(name, func)); - } - void set(bool isOK) - { - if (isOK) { - okCount_++; - } else { - ngCount_++; - } - } - std::string getBaseName(const std::string& name) const - { -#ifdef _WIN32 - const char sep = '\\'; -#else - const char sep = '/'; -#endif - size_t pos = name.find_last_of(sep); - std::string ret = name.substr(pos + 1); - pos = ret.find('.'); - return ret.substr(0, pos); - } - int run(int, char *argv[]) - { - std::string msg; - try { - if (init_) init_(); - for (UnitTestList::const_iterator i = list_.begin(), ie = list_.end(); i != ie; ++i) { - std::cout << "ctest:module=" << i->first << std::endl; - try { - (i->second)(); - } catch (std::exception& e) { - exceptionCount_++; - std::cout << "ctest: " << i->first << " is stopped by exception " << e.what() << std::endl; - } catch (...) { - exceptionCount_++; - std::cout << "ctest: " << i->first << " is stopped by unknown exception" << std::endl; - } - } - if (term_) term_(); - } catch (std::exception& e) { - msg = std::string("ctest:err:") + e.what(); - } catch (...) { - msg = "ctest:err: catch unknown exception"; - } - fflush(stdout); - if (msg.empty()) { - int err = ngCount_ + exceptionCount_; - int total = okCount_ + err; - std::cout << "ctest:name=" << getBaseName(*argv) - << ", module=" << list_.size() - << ", total=" << total - << ", ok=" << okCount_ - << ", ng=" << ngCount_ - << ", exception=" << exceptionCount_ << std::endl; - return err > 0 ? 1 : 0; - } else { - std::cout << msg << std::endl; - return 1; - } - } - static inline AutoRun& getInstance() - { - static AutoRun instance; - return instance; - } -private: - Func init_; - Func term_; - int okCount_; - int ngCount_; - int exceptionCount_; - UnitTestList list_; -}; - -static AutoRun& autoRun = AutoRun::getInstance(); - -inline void test(bool ret, const std::string& msg, const std::string& param, const char *file, int line) -{ - autoRun.set(ret); - if (!ret) { - printf("%s(%d):ctest:%s(%s);\n", file, line, msg.c_str(), param.c_str()); - } -} - -template -bool isEqual(const T& lhs, const U& rhs) -{ - return lhs == rhs; -} - -// avoid warning of comparision of integers of different signs -inline bool isEqual(size_t lhs, int rhs) -{ - return lhs == size_t(rhs); -} -inline bool isEqual(int lhs, size_t rhs) -{ - return size_t(lhs) == rhs; -} -inline bool isEqual(const char *lhs, const char *rhs) -{ - return strcmp(lhs, rhs) == 0; -} -inline bool isEqual(char *lhs, const char *rhs) -{ - return strcmp(lhs, rhs) == 0; -} -inline bool isEqual(const char *lhs, char *rhs) -{ - return strcmp(lhs, rhs) == 0; -} -inline bool isEqual(char *lhs, char *rhs) -{ - return strcmp(lhs, rhs) == 0; -} -// avoid to compare float directly -inline bool isEqual(float lhs, float rhs) -{ - union fi { - float f; - uint32_t i; - } lfi, rfi; - lfi.f = lhs; - rfi.f = rhs; - return lfi.i == rfi.i; -} -// avoid to compare double directly -inline bool isEqual(double lhs, double rhs) -{ - union di { - double d; - uint64_t i; - } ldi, rdi; - ldi.d = lhs; - rdi.d = rhs; - return ldi.i == rdi.i; -} - -} } // cybozu::test - -#ifndef CYBOZU_TEST_DISABLE_AUTO_RUN -int main(int argc, char *argv[]) -{ - return cybozu::test::autoRun.run(argc, argv); -} -#endif - -/** - alert if !x - @param x [in] -*/ -#define CYBOZU_TEST_ASSERT(x) cybozu::test::test(!!(x), "CYBOZU_TEST_ASSERT", #x, __FILE__, __LINE__) - -/** - alert if x != y - @param x [in] - @param y [in] -*/ -#define CYBOZU_TEST_EQUAL(x, y) { \ - bool _cybozu_eq = cybozu::test::isEqual(x, y); \ - cybozu::test::test(_cybozu_eq, "CYBOZU_TEST_EQUAL", #x ", " #y, __FILE__, __LINE__); \ - if (!_cybozu_eq) { \ - std::cout << "ctest: lhs=" << (x) << std::endl; \ - std::cout << "ctest: rhs=" << (y) << std::endl; \ - } \ -} -/** - alert if fabs(x, y) >= eps - @param x [in] - @param y [in] -*/ -#define CYBOZU_TEST_NEAR(x, y, eps) { \ - bool _cybozu_isNear = fabs((x) - (y)) < eps; \ - cybozu::test::test(_cybozu_isNear, "CYBOZU_TEST_NEAR", #x ", " #y, __FILE__, __LINE__); \ - if (!_cybozu_isNear) { \ - std::cout << "ctest: lhs=" << (x) << std::endl; \ - std::cout << "ctest: rhs=" << (y) << std::endl; \ - } \ -} - -#define CYBOZU_TEST_EQUAL_POINTER(x, y) { \ - bool _cybozu_eq = x == y; \ - cybozu::test::test(_cybozu_eq, "CYBOZU_TEST_EQUAL_POINTER", #x ", " #y, __FILE__, __LINE__); \ - if (!_cybozu_eq) { \ - std::cout << "ctest: lhs=" << static_cast(x) << std::endl; \ - std::cout << "ctest: rhs=" << static_cast(y) << std::endl; \ - } \ -} -/** - alert if x[] != y[] - @param x [in] - @param y [in] - @param n [in] -*/ -#define CYBOZU_TEST_EQUAL_ARRAY(x, y, n) { \ - for (size_t _cybozu_test_i = 0, _cybozu_ie = (size_t)(n); _cybozu_test_i < _cybozu_ie; _cybozu_test_i++) { \ - bool _cybozu_eq = cybozu::test::isEqual((x)[_cybozu_test_i], (y)[_cybozu_test_i]); \ - cybozu::test::test(_cybozu_eq, "CYBOZU_TEST_EQUAL_ARRAY", #x ", " #y ", " #n, __FILE__, __LINE__); \ - if (!_cybozu_eq) { \ - std::cout << "ctest: i=" << _cybozu_test_i << std::endl; \ - std::cout << "ctest: lhs=" << (x)[_cybozu_test_i] << std::endl; \ - std::cout << "ctest: rhs=" << (y)[_cybozu_test_i] << std::endl; \ - } \ - } \ -} - -/** - always alert - @param msg [in] -*/ -#define CYBOZU_TEST_FAIL(msg) cybozu::test::test(false, "CYBOZU_TEST_FAIL", msg, __FILE__, __LINE__) - -/** - verify message in exception -*/ -#define CYBOZU_TEST_EXCEPTION_MESSAGE(statement, Exception, msg) \ -{ \ - int _cybozu_ret = 0; \ - std::string _cybozu_errMsg; \ - try { \ - statement; \ - _cybozu_ret = 1; \ - } catch (const Exception& _cybozu_e) { \ - _cybozu_errMsg = _cybozu_e.what(); \ - if (_cybozu_errMsg.find(msg) == std::string::npos) { \ - _cybozu_ret = 2; \ - } \ - } catch (...) { \ - _cybozu_ret = 3; \ - } \ - if (_cybozu_ret) { \ - cybozu::test::test(false, "CYBOZU_TEST_EXCEPTION_MESSAGE", #statement ", " #Exception ", " #msg, __FILE__, __LINE__); \ - if (_cybozu_ret == 1) { \ - std::cout << "ctest: no exception" << std::endl; \ - } else if (_cybozu_ret == 2) { \ - std::cout << "ctest: bad exception msg:" << _cybozu_errMsg << std::endl; \ - } else { \ - std::cout << "ctest: unexpected exception" << std::endl; \ - } \ - } else { \ - cybozu::test::autoRun.set(true); \ - } \ -} - -#define CYBOZU_TEST_EXCEPTION(statement, Exception) \ -{ \ - int _cybozu_ret = 0; \ - try { \ - statement; \ - _cybozu_ret = 1; \ - } catch (const Exception&) { \ - } catch (...) { \ - _cybozu_ret = 2; \ - } \ - if (_cybozu_ret) { \ - cybozu::test::test(false, "CYBOZU_TEST_EXCEPTION", #statement ", " #Exception, __FILE__, __LINE__); \ - if (_cybozu_ret == 1) { \ - std::cout << "ctest: no exception" << std::endl; \ - } else { \ - std::cout << "ctest: unexpected exception" << std::endl; \ - } \ - } else { \ - cybozu::test::autoRun.set(true); \ - } \ -} - -/** - verify statement does not throw -*/ -#define CYBOZU_TEST_NO_EXCEPTION(statement) \ -try { \ - statement; \ - cybozu::test::autoRun.set(true); \ -} catch (...) { \ - cybozu::test::test(false, "CYBOZU_TEST_NO_EXCEPTION", #statement, __FILE__, __LINE__); \ -} - -/** - append auto unit test - @param name [in] module name -*/ -#define CYBOZU_TEST_AUTO(name) \ -void cybozu_test_ ## name(); \ -struct cybozu_test_local_ ## name { \ - cybozu_test_local_ ## name() \ - { \ - cybozu::test::autoRun.append(#name, cybozu_test_ ## name); \ - } \ -} cybozu_test_local_instance_ ## name; \ -void cybozu_test_ ## name() - -/** - append auto unit test with fixture - @param name [in] module name -*/ -#define CYBOZU_TEST_AUTO_WITH_FIXTURE(name, Fixture) \ -void cybozu_test_ ## name(); \ -void cybozu_test_real_ ## name() \ -{ \ - Fixture f; \ - cybozu_test_ ## name(); \ -} \ -struct cybozu_test_local_ ## name { \ - cybozu_test_local_ ## name() \ - { \ - cybozu::test::autoRun.append(#name, cybozu_test_real_ ## name); \ - } \ -} cybozu_test_local_instance_ ## name; \ -void cybozu_test_ ## name() - -/** - setup fixture - @param Fixture [in] class name of fixture - @note cstr of Fixture is called before test and dstr of Fixture is called after test -*/ -#define CYBOZU_TEST_SETUP_FIXTURE(Fixture) \ -Fixture *cybozu_test_local_fixture; \ -void cybozu_test_local_init() \ -{ \ - cybozu_test_local_fixture = new Fixture(); \ -} \ -void cybozu_test_local_term() \ -{ \ - delete cybozu_test_local_fixture; \ -} \ -struct cybozu_test_local_fixture_setup_ { \ - cybozu_test_local_fixture_setup_() \ - { \ - cybozu::test::autoRun.setup(cybozu_test_local_init, cybozu_test_local_term); \ - } \ -} cybozu_test_local_fixture_setup_instance_; diff --git a/cases/tool/win/bls_win/include/cybozu/unordered_map.hpp b/cases/tool/win/bls_win/include/cybozu/unordered_map.hpp deleted file mode 100644 index 89f8f87744..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/unordered_map.hpp +++ /dev/null @@ -1,13 +0,0 @@ -#pragma once - -#include - -#ifdef CYBOZU_USE_BOOST - #include -#elif (CYBOZU_CPP_VERSION >= CYBOZU_CPP_VERSION_CPP11) || (defined __APPLE__) - #include -#elif (CYBOZU_CPP_VERSION == CYBOZU_CPP_VERSION_TR1) - #include - #include -#endif - diff --git a/cases/tool/win/bls_win/include/cybozu/xorshift.hpp b/cases/tool/win/bls_win/include/cybozu/xorshift.hpp deleted file mode 100644 index 08c6a04f99..0000000000 --- a/cases/tool/win/bls_win/include/cybozu/xorshift.hpp +++ /dev/null @@ -1,189 +0,0 @@ -#pragma once -/** - @file - @brief XorShift - - @author MITSUNARI Shigeo(@herumi) - @author MITSUNARI Shigeo -*/ -#include -#include - -namespace cybozu { - -namespace xorshift_local { - -/* - U is uint32_t or uint64_t -*/ -template -void read_local(void *p, size_t n, Gen& gen, U (Gen::*f)()) -{ - uint8_t *dst = static_cast(p); - const size_t uSize = sizeof(U); - assert(uSize == 4 || uSize == 8); - union ua { - U u; - uint8_t a[uSize]; - }; - - while (n >= uSize) { - ua ua; - ua.u = (gen.*f)(); - for (size_t i = 0; i < uSize; i++) { - dst[i] = ua.a[i]; - } - dst += uSize; - n -= uSize; - } - assert(n < uSize); - if (n > 0) { - ua ua; - ua.u = (gen.*f)(); - for (size_t i = 0; i < n; i++) { - dst[i] = ua.a[i]; - } - } -} - -} // xorshift_local - -class XorShift { - uint32_t x_, y_, z_, w_; -public: - explicit XorShift(uint32_t x = 0, uint32_t y = 0, uint32_t z = 0, uint32_t w = 0) - { - init(x, y, z, w); - } - void init(uint32_t x = 0, uint32_t y = 0, uint32_t z = 0, uint32_t w = 0) - { - x_ = x ? x : 123456789; - y_ = y ? y : 362436069; - z_ = z ? z : 521288629; - w_ = w ? w : 88675123; - } - uint32_t get32() - { - unsigned int t = x_ ^ (x_ << 11); - x_ = y_; y_ = z_; z_ = w_; - return w_ = (w_ ^ (w_ >> 19)) ^ (t ^ (t >> 8)); - } - uint32_t operator()() { return get32(); } - uint64_t get64() - { - uint32_t a = get32(); - uint32_t b = get32(); - return (uint64_t(a) << 32) | b; - } - template - void read(bool *pb, T *p, size_t n) - { - xorshift_local::read_local(p, n * sizeof(T), *this, &XorShift::get32); - *pb = true; - } - template - size_t read(T *p, size_t n) - { - bool b; - read(&b, p, n); - (void)b; - return n; - } -}; - -// see http://xorshift.di.unimi.it/xorshift128plus.c -class XorShift128Plus { - uint64_t s_[2]; - static const uint64_t seed0 = 123456789; - static const uint64_t seed1 = 987654321; -public: - explicit XorShift128Plus(uint64_t s0 = seed0, uint64_t s1 = seed1) - { - init(s0, s1); - } - void init(uint64_t s0 = seed0, uint64_t s1 = seed1) - { - s_[0] = s0; - s_[1] = s1; - } - uint32_t get32() - { - return static_cast(get64()); - } - uint64_t operator()() { return get64(); } - uint64_t get64() - { - uint64_t s1 = s_[0]; - const uint64_t s0 = s_[1]; - s_[0] = s0; - s1 ^= s1 << 23; - s_[1] = s1 ^ s0 ^ (s1 >> 18) ^ (s0 >> 5); - return s_[1] + s0; - } - template - void read(bool *pb, T *p, size_t n) - { - xorshift_local::read_local(p, n * sizeof(T), *this, &XorShift128Plus::get64); - *pb = true; - } - template - size_t read(T *p, size_t n) - { - bool b; - read(&b, p, n); - (void)b; - return n; - } -}; - -// see http://xoroshiro.di.unimi.it/xoroshiro128plus.c -class Xoroshiro128Plus { - uint64_t s_[2]; - static const uint64_t seed0 = 123456789; - static const uint64_t seed1 = 987654321; - uint64_t rotl(uint64_t x, unsigned int k) const - { - return (x << k) | (x >> (64 - k)); - } -public: - explicit Xoroshiro128Plus(uint64_t s0 = seed0, uint64_t s1 = seed1) - { - init(s0, s1); - } - void init(uint64_t s0 = seed0, uint64_t s1 = seed1) - { - s_[0] = s0; - s_[1] = s1; - } - uint32_t get32() - { - return static_cast(get64()); - } - uint64_t operator()() { return get64(); } - uint64_t get64() - { - uint64_t s0 = s_[0]; - uint64_t s1 = s_[1]; - uint64_t result = s0 + s1; - s1 ^= s0; - s_[0] = rotl(s0, 55) ^ s1 ^ (s1 << 14); - s_[1] = rotl(s1, 36); - return result; - } - template - void read(bool *pb, T *p, size_t n) - { - xorshift_local::read_local(p, n * sizeof(T), *this, &Xoroshiro128Plus::get64); - *pb = true; - } - template - size_t read(T *p, size_t n) - { - bool b; - read(&b, p, n); - (void)b; - return n; - } -}; - -} // cybozu diff --git a/cases/tool/win/bls_win/include/mcl/aggregate_sig.hpp b/cases/tool/win/bls_win/include/mcl/aggregate_sig.hpp deleted file mode 100644 index f314057056..0000000000 --- a/cases/tool/win/bls_win/include/mcl/aggregate_sig.hpp +++ /dev/null @@ -1,265 +0,0 @@ -#pragma once -/** - @file - @brief aggregate signature - @author MITSUNARI Shigeo(@herumi) - see http://crypto.stanford.edu/~dabo/papers/aggreg.pdf - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include -#include -#include -#include -#ifndef MCLBN_FP_UNIT_SIZE - #define MCLBN_FP_UNIT_SIZE 4 -#endif -#if MCLBN_FP_UNIT_SIZE == 4 -#include -namespace mcl { -using namespace mcl::bn256; -} -#elif MCLBN_FP_UNIT_SIZE == 6 -#include -namespace mcl { -using namespace mcl::bn384; -} -#elif MCLBN_FP_UNIT_SIZE == 8 -#include -namespace mcl { -using namespace mcl::bn512; -} -#else - #error "MCLBN_FP_UNIT_SIZE must be 4, 6, or 8" -#endif - -namespace mcl { namespace aggs { - -/* - AGGregate Signature Template class -*/ -template -struct AGGST { - typedef typename G1::BaseFp Fp; - - class SecretKey; - class PublicKey; - class Signature; - - static G1 P_; - static G2 Q_; - static std::vector Qcoeff_; -public: - static void init(const mcl::CurveParam& cp = mcl::BN254) - { - initPairing(cp); - hashAndMapToG1(P_, "0"); - hashAndMapToG2(Q_, "0"); - precomputeG2(Qcoeff_, Q_); - } - class Signature : public fp::Serializable { - G1 S_; - friend class SecretKey; - friend class PublicKey; - public: - template - void load(InputStream& is, int ioMode = IoSerialize) - { - S_.load(is, ioMode); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - S_.save(os, ioMode); - } - friend std::istream& operator>>(std::istream& is, Signature& self) - { - self.load(is, fp::detectIoMode(G1::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const Signature& self) - { - self.save(os, fp::detectIoMode(G1::getIoMode(), os)); - return os; - } - bool operator==(const Signature& rhs) const - { - return S_ == rhs.S_; - } - bool operator!=(const Signature& rhs) const { return !operator==(rhs); } - /* - aggregate sig[0..n) and set *this - */ - void aggregate(const Signature *sig, size_t n) - { - G1 S; - S.clear(); - for (size_t i = 0; i < n; i++) { - S += sig[i].S_; - } - S_ = S; - } - void aggregate(const std::vector& sig) - { - aggregate(sig.data(), sig.size()); - } - /* - aggregate verification - */ - bool verify(const void *const *msgVec, const size_t *sizeVec, const PublicKey *pubVec, size_t n) const - { - if (n == 0) return false; - typedef std::set FpSet; - FpSet msgSet; - typedef std::vector G1Vec; - G1Vec hv(n); - for (size_t i = 0; i < n; i++) { - Fp h; - h.setHashOf(msgVec[i], sizeVec[i]); - std::pair ret = msgSet.insert(h); - if (!ret.second) throw cybozu::Exception("aggs::verify:same msg"); - mapToG1(hv[i], h); - } - /* - e(aggSig, xQ) = prod_i e(hv[i], pub[i].Q) - <=> finalExp(e(-aggSig, xQ) * prod_i millerLoop(hv[i], pub[i].xQ)) == 1 - */ - GT e1, e2; - precomputedMillerLoop(e1, -S_, Qcoeff_); - millerLoop(e2, hv[0], pubVec[0].xQ_); - for (size_t i = 1; i < n; i++) { - GT e; - millerLoop(e, hv[i], pubVec[i].xQ_); - e2 *= e; - } - e1 *= e2; - finalExp(e1, e1); - return e1.isOne(); - } - bool verify(const std::vector& msgVec, const std::vector& pubVec) const - { - const size_t n = msgVec.size(); - if (n != pubVec.size()) throw cybozu::Exception("aggs:Signature:verify:bad size") << msgVec.size() << pubVec.size(); - if (n == 0) return false; - std::vector mv(n); - std::vector sv(n); - for (size_t i = 0; i < n; i++) { - mv[i] = msgVec[i].c_str(); - sv[i] = msgVec[i].size(); - } - return verify(&mv[0], &sv[0], &pubVec[0], n); - } - }; - class PublicKey : public fp::Serializable { - G2 xQ_; - friend class SecretKey; - friend class Signature; - public: - template - void load(InputStream& is, int ioMode = IoSerialize) - { - xQ_.load(is, ioMode); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - xQ_.save(os, ioMode); - } - friend std::istream& operator>>(std::istream& is, PublicKey& self) - { - self.load(is, fp::detectIoMode(G2::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const PublicKey& self) - { - self.save(os, fp::detectIoMode(G2::getIoMode(), os)); - return os; - } - bool operator==(const PublicKey& rhs) const - { - return xQ_ == rhs.xQ_; - } - bool operator!=(const PublicKey& rhs) const { return !operator==(rhs); } - bool verify(const Signature& sig, const void *m, size_t mSize) const - { - /* - H = hash(m) - e(S, Q) = e(H, xQ) where S = xH - <=> e(S, Q)e(-H, xQ) = 1 - <=> finalExp(millerLoop(S, Q)e(-H, x)) = 1 - */ - G1 H; - hashAndMapToG1(H, m, mSize); - G1::neg(H, H); - GT e1, e2; - precomputedMillerLoop(e1, sig.S_, Qcoeff_); - millerLoop(e2, H, xQ_); - e1 *= e2; - finalExp(e1, e1); - return e1.isOne(); - } - bool verify(const Signature& sig, const std::string& m) const - { - return verify(sig, m.c_str(), m.size()); - } - }; - class SecretKey : public fp::Serializable { - Fr x_; - friend class PublicKey; - friend class Signature; - public: - template - void load(InputStream& is, int ioMode = IoSerialize) - { - x_.load(is, ioMode); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - x_.save(os, ioMode); - } - friend std::istream& operator>>(std::istream& is, SecretKey& self) - { - self.load(is, fp::detectIoMode(Fr::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const SecretKey& self) - { - self.save(os, fp::detectIoMode(Fr::getIoMode(), os)); - return os; - } - bool operator==(const SecretKey& rhs) const - { - return x_ == rhs.x_; - } - bool operator!=(const SecretKey& rhs) const { return !operator==(rhs); } - void init() - { - x_.setByCSPRNG(); - } - void getPublicKey(PublicKey& pub) const - { - G2::mul(pub.xQ_, Q_, x_); - } - void sign(Signature& sig, const void *m, size_t mSize) const - { - hashAndMapToG1(sig.S_, m, mSize); - G1::mul(sig.S_, sig.S_, x_); - } - void sign(Signature& sig, const std::string& m) const - { - sign(sig, m.c_str(), m.size()); - } - }; -}; - -template G1 AGGST::P_; -template G2 AGGST::Q_; -template std::vector AGGST::Qcoeff_; - -typedef AGGST<> AGGS; -typedef AGGS::SecretKey SecretKey; -typedef AGGS::PublicKey PublicKey; -typedef AGGS::Signature Signature; - -} } // mcl::aggs diff --git a/cases/tool/win/bls_win/include/mcl/ahe.hpp b/cases/tool/win/bls_win/include/mcl/ahe.hpp deleted file mode 100644 index 239319d0da..0000000000 --- a/cases/tool/win/bls_win/include/mcl/ahe.hpp +++ /dev/null @@ -1,76 +0,0 @@ -#pragma once -/** - @file - @brief 192/256-bit additive homomorphic encryption by lifted-ElGamal - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include -#include - -namespace mcl { - -#ifdef MCL_USE_AHE192 -namespace ahe192 { - -const mcl::EcParam& para = mcl::ecparam::NIST_P192; - -typedef mcl::FpT Fp; -typedef mcl::FpT Zn; -typedef mcl::EcT Ec; -typedef mcl::ElgamalT ElgamalEc; -typedef ElgamalEc::PrivateKey SecretKey; -typedef ElgamalEc::PublicKey PublicKey; -typedef ElgamalEc::CipherText CipherText; - -static inline void initAhe() -{ - Fp::init(para.p); - Zn::init(para.n); - Ec::init(para.a, para.b); - Ec::setIoMode(16); - Zn::setIoMode(16); -} - -static inline void initSecretKey(SecretKey& sec) -{ - const Ec P(Fp(para.gx), Fp(para.gy)); - sec.init(P, Zn::getBitSize()); -} - -} //mcl::ahe192 -#endif - -#ifdef MCL_USE_AHE256 -namespace ahe256 { - -const mcl::EcParam& para = mcl::ecparam::NIST_P256; - -typedef mcl::FpT Fp; -typedef mcl::FpT Zn; -typedef mcl::EcT Ec; -typedef mcl::ElgamalT ElgamalEc; -typedef ElgamalEc::PrivateKey SecretKey; -typedef ElgamalEc::PublicKey PublicKey; -typedef ElgamalEc::CipherText CipherText; - -static inline void initAhe() -{ - Fp::init(para.p); - Zn::init(para.n); - Ec::init(para.a, para.b); - Ec::setIoMode(16); - Zn::setIoMode(16); -} - -static inline void initSecretKey(SecretKey& sec) -{ - const Ec P(Fp(para.gx), Fp(para.gy)); - sec.init(P, Zn::getBitSize()); -} - -} //mcl::ahe256 -#endif - -} // mcl diff --git a/cases/tool/win/bls_win/include/mcl/array.hpp b/cases/tool/win/bls_win/include/mcl/array.hpp deleted file mode 100644 index a6d2a8fa35..0000000000 --- a/cases/tool/win/bls_win/include/mcl/array.hpp +++ /dev/null @@ -1,167 +0,0 @@ -#pragma once -/** - @file - @brief tiny vector class - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include -#include -#ifndef CYBOZU_DONT_USE_EXCEPTION -#include -#endif - -namespace mcl { - -template -class Array { - T *p_; - size_t n_; - template - void swap_(U& x, U& y) const - { - U t; - t = x; - x = y; - y = t; - } -public: - Array() : p_(0), n_(0) {} - ~Array() - { - free(p_); - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - Array(const Array& rhs) - : p_(0) - , n_(0) - { - if (rhs.n_ == 0) return; - p_ = (T*)malloc(sizeof(T) * rhs.n_); - if (p_ == 0) throw std::bad_alloc(); - n_ = rhs.n_; - for (size_t i = 0; i < n_; i++) { - p_[i] = rhs.p_[i]; - } - } - Array& operator=(const Array& rhs) - { - Array tmp(rhs); - tmp.swap(*this); - return *this; - } -#endif - bool resize(size_t n) - { - if (n <= n_) { - n_ = n; - if (n == 0) { - free(p_); - p_ = 0; - } - return true; - } - T *q = (T*)malloc(sizeof(T) * n); - if (q == 0) return false; - for (size_t i = 0; i < n_; i++) { - q[i] = p_[i]; - } - free(p_); - p_ = q; - n_ = n; - return true; - } - bool copy(const Array& rhs) - { - if (this == &rhs) return true; - if (n_ < rhs.n_) { - clear(); - if (!resize(rhs.n_)) return false; - } - for (size_t i = 0; i < rhs.n_; i++) { - p_[i] = rhs.p_[i]; - } - n_ = rhs.n_; - return true; - } - void clear() - { - free(p_); - p_ = 0; - n_ = 0; - } - size_t size() const { return n_; } - void swap(Array& rhs) - { - swap_(p_, rhs.p_); - swap_(n_, rhs.n_); - } - T& operator[](size_t n) { return p_[n]; } - const T& operator[](size_t n) const { return p_[n]; } - T* data() { return p_; } - const T* data() const { return p_; } -}; - -template -class FixedArray { - T p_[maxSize]; - size_t n_; - FixedArray(const FixedArray&); - void operator=(const FixedArray&); - template - void swap_(U& x, U& y) const - { - U t; - t = x; - x = y; - y = t; - } -public: - FixedArray() : n_(0) {} - bool resize(size_t n) - { - if (n > maxSize) return false; - n_ = n; - return true; - } - bool copy(const FixedArray& rhs) - { - if (this == &rhs) return true; - for (size_t i = 0; i < rhs.n_; i++) { - p_[i] = rhs.p_[i]; - } - n_ = rhs.n_; - return true; - } - void clear() - { - n_ = 0; - } - size_t size() const { return n_; } - void swap(FixedArray& rhs) - { - T *minP = p_; - size_t minN = n_; - T *maxP = rhs.p_; - size_t maxN = rhs.n_; - if (minP > maxP) { - swap_(minP, maxP); - swap_(minN, maxN); - } - for (size_t i = 0; i < minN; i++) { - swap_(minP[i], maxP[i]); - } - for (size_t i = minN; i < maxN; i++) { - minP[i] = maxP[i]; - } - swap_(n_, rhs.n_); - } - T& operator[](size_t n) { return p_[n]; } - const T& operator[](size_t n) const { return p_[n]; } - T* data() { return p_; } - const T* data() const { return p_; } -}; - -} // mcl - diff --git a/cases/tool/win/bls_win/include/mcl/bls12_381.hpp b/cases/tool/win/bls_win/include/mcl/bls12_381.hpp deleted file mode 100644 index 316e142af8..0000000000 --- a/cases/tool/win/bls_win/include/mcl/bls12_381.hpp +++ /dev/null @@ -1,15 +0,0 @@ -#pragma once -/** - @file - @brief preset class for BLS12-381 pairing - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#define MCL_MAX_FP_BIT_SIZE 384 -#define MCL_MAX_FR_BIT_SIZE 256 -#include - -namespace mcl { namespace bls12 { -using namespace mcl::bn; -} } diff --git a/cases/tool/win/bls_win/include/mcl/bn.h b/cases/tool/win/bls_win/include/mcl/bn.h deleted file mode 100644 index 68053cbf8f..0000000000 --- a/cases/tool/win/bls_win/include/mcl/bn.h +++ /dev/null @@ -1,436 +0,0 @@ -#pragma once -/** - @file - @brief C interface of 256/384-bit optimal ate pairing over BN curves - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -/* - the order of an elliptic curve over Fp is Fr -*/ -#ifndef MCLBN_FP_UNIT_SIZE - #error "define MCLBN_FP_UNIT_SIZE 4(, 6 or 8)" -#endif -#ifndef MCLBN_FR_UNIT_SIZE - #define MCLBN_FR_UNIT_SIZE MCLBN_FP_UNIT_SIZE -#endif -#define MCLBN_COMPILED_TIME_VAR ((MCLBN_FR_UNIT_SIZE) * 10 + (MCLBN_FP_UNIT_SIZE)) - -#include // for uint64_t, uint8_t -#include // for size_t - - -#if defined(_MSC_VER) - #ifdef MCLBN_DONT_EXPORT - #define MCLBN_DLL_API - #else - #ifdef MCLBN_DLL_EXPORT - #define MCLBN_DLL_API __declspec(dllexport) - #else - #define MCLBN_DLL_API __declspec(dllimport) - #endif - #endif - #ifndef MCLBN_NO_AUTOLINK - #if MCLBN_FP_UNIT_SIZE == 4 - #pragma comment(lib, "mclbn256.lib") - #elif (MCLBN_FP_UNIT_SIZE == 6) && (MCLBN_FR_UNIT_SIZE == 4) - #pragma comment(lib, "mclbn384_256.lib") - #elif (MCLBN_FP_UNIT_SIZE == 6) && (MCLBN_FR_UNIT_SIZE == 6) - #pragma comment(lib, "mclbn384.lib") - #elif MCLBN_FP_UNIT_SIZE == 8 - #pragma comment(lib, "mclbn512.lib") - #endif - #endif -#elif defined(__EMSCRIPTEN__) && !defined(MCLBN_DONT_EXPORT) - #define MCLBN_DLL_API __attribute__((used)) -#elif defined(__wasm__) && !defined(MCLBN_DONT_EXPORT) - #define MCLBN_DLL_API __attribute__((visibility("default"))) -#else - #define MCLBN_DLL_API -#endif - -#ifdef __EMSCRIPTEN__ - // avoid 64-bit integer - #define mclSize unsigned int - #define mclInt int -#else - // use #define for cgo - #define mclSize size_t - #define mclInt int64_t -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -#ifdef MCLBN_NOT_DEFINE_STRUCT - -typedef struct mclBnFr mclBnFr; -typedef struct mclBnG1 mclBnG1; -typedef struct mclBnG2 mclBnG2; -typedef struct mclBnGT mclBnGT; -typedef struct mclBnFp mclBnFp; -typedef struct mclBnFp2 mclBnFp2; - -#else - -typedef struct { - uint64_t d[MCLBN_FR_UNIT_SIZE]; -} mclBnFr; - -typedef struct { - uint64_t d[MCLBN_FP_UNIT_SIZE * 3]; -} mclBnG1; - -typedef struct { - uint64_t d[MCLBN_FP_UNIT_SIZE * 2 * 3]; -} mclBnG2; - -typedef struct { - uint64_t d[MCLBN_FP_UNIT_SIZE * 12]; -} mclBnGT; - -typedef struct { - uint64_t d[MCLBN_FP_UNIT_SIZE]; -} mclBnFp; - -typedef struct { - mclBnFp d[2]; -} mclBnFp2; - -#endif - -#include - -#define MCLBN_IO_SERIALIZE_HEX_STR 2048 -// for backword compatibility -enum { - mclBn_CurveFp254BNb = 0, - mclBn_CurveFp382_1 = 1, - mclBn_CurveFp382_2 = 2, - mclBn_CurveFp462 = 3, - mclBn_CurveSNARK1 = 4, - mclBls12_CurveFp381 = 5 -}; - -// return 0xABC which means A.BC -MCLBN_DLL_API int mclBn_getVersion(); -/* - init library - @param curve [in] type of bn curve - @param compiledTimeVar [in] specify MCLBN_COMPILED_TIME_VAR, - which macro is used to make sure that the values - are the same when the library is built and used - @return 0 if success - curve = BN254/BN_SNARK1 is allowed if maxUnitSize = 4 - curve = BN381_1/BN381_2/BLS12_381 are allowed if maxUnitSize = 6 - This parameter is used to detect a library compiled with different MCLBN_FP_UNIT_SIZE for safety. - @note not threadsafe - @note BN_init is used in libeay32 -*/ -MCLBN_DLL_API int mclBn_init(int curve, int compiledTimeVar); - - -/* - pairing : G1 x G2 -> GT - #G1 = #G2 = r - G1 is a curve defined on Fp - - serialized size of elements - |Fr| |Fp| - BN254 32 32 - BN381 48 48 - BLS12_381 32 48 - BN462 58 58 - |G1| = |Fp| - |G2| = |G1| * 2 - |GT| = |G1| * 12 -*/ -/* - return the num of Unit(=uint64_t) to store Fr -*/ -MCLBN_DLL_API int mclBn_getOpUnitSize(void); - -/* - return bytes for serialized G1(=Fp) -*/ -MCLBN_DLL_API int mclBn_getG1ByteSize(void); -/* - return bytes for serialized Fr -*/ -MCLBN_DLL_API int mclBn_getFrByteSize(void); -/* - return bytes for serialized Fp -*/ -MCLBN_DLL_API int mclBn_getFpByteSize(void); - -/* - return decimal string of the order of the curve(=the characteristic of Fr) - return str(buf) if success -*/ -MCLBN_DLL_API mclSize mclBn_getCurveOrder(char *buf, mclSize maxBufSize); - -/* - return decimal string of the characteristic of Fp - return str(buf) if success -*/ -MCLBN_DLL_API mclSize mclBn_getFieldOrder(char *buf, mclSize maxBufSize); - -/* - set ETH serialization mode for BLS12-381 - @param ETHserialization [in] 1:enable, 0:disable - @note ignore the flag if curve is not BLS12-381 -*/ -MCLBN_DLL_API void mclBn_setETHserialization(int ETHserialization); -//////////////////////////////////////////////// -/* - deserialize - return read size if success else 0 -*/ -MCLBN_DLL_API mclSize mclBnFr_deserialize(mclBnFr *x, const void *buf, mclSize bufSize); -MCLBN_DLL_API mclSize mclBnG1_deserialize(mclBnG1 *x, const void *buf, mclSize bufSize); -MCLBN_DLL_API mclSize mclBnG2_deserialize(mclBnG2 *x, const void *buf, mclSize bufSize); -MCLBN_DLL_API mclSize mclBnGT_deserialize(mclBnGT *x, const void *buf, mclSize bufSize); -MCLBN_DLL_API mclSize mclBnFp_deserialize(mclBnFp *x, const void *buf, mclSize bufSize); -MCLBN_DLL_API mclSize mclBnFp2_deserialize(mclBnFp2 *x, const void *buf, mclSize bufSize); - -/* - serialize - return written byte if sucess else 0 -*/ -MCLBN_DLL_API mclSize mclBnFr_serialize(void *buf, mclSize maxBufSize, const mclBnFr *x); -MCLBN_DLL_API mclSize mclBnG1_serialize(void *buf, mclSize maxBufSize, const mclBnG1 *x); -MCLBN_DLL_API mclSize mclBnG2_serialize(void *buf, mclSize maxBufSize, const mclBnG2 *x); -MCLBN_DLL_API mclSize mclBnGT_serialize(void *buf, mclSize maxBufSize, const mclBnGT *x); -MCLBN_DLL_API mclSize mclBnFp_serialize(void *buf, mclSize maxBufSize, const mclBnFp *x); -MCLBN_DLL_API mclSize mclBnFp2_serialize(void *buf, mclSize maxBufSize, const mclBnFp2 *x); - -/* - set string - ioMode - 10 : decimal number - 16 : hexadecimal number - MCLBN_IO_SERIALIZE_HEX_STR : hex string of serialized data - return 0 if success else -1 -*/ -MCLBN_DLL_API int mclBnFr_setStr(mclBnFr *x, const char *buf, mclSize bufSize, int ioMode); -MCLBN_DLL_API int mclBnG1_setStr(mclBnG1 *x, const char *buf, mclSize bufSize, int ioMode); -MCLBN_DLL_API int mclBnG2_setStr(mclBnG2 *x, const char *buf, mclSize bufSize, int ioMode); -MCLBN_DLL_API int mclBnGT_setStr(mclBnGT *x, const char *buf, mclSize bufSize, int ioMode); -MCLBN_DLL_API int mclBnFp_setStr(mclBnFp *x, const char *buf, mclSize bufSize, int ioMode); - -/* - buf is terminated by '\0' - return strlen(buf) if sucess else 0 -*/ -MCLBN_DLL_API mclSize mclBnFr_getStr(char *buf, mclSize maxBufSize, const mclBnFr *x, int ioMode); -MCLBN_DLL_API mclSize mclBnG1_getStr(char *buf, mclSize maxBufSize, const mclBnG1 *x, int ioMode); -MCLBN_DLL_API mclSize mclBnG2_getStr(char *buf, mclSize maxBufSize, const mclBnG2 *x, int ioMode); -MCLBN_DLL_API mclSize mclBnGT_getStr(char *buf, mclSize maxBufSize, const mclBnGT *x, int ioMode); -MCLBN_DLL_API mclSize mclBnFp_getStr(char *buf, mclSize maxBufSize, const mclBnFp *x, int ioMode); - -// set zero -MCLBN_DLL_API void mclBnFr_clear(mclBnFr *x); -MCLBN_DLL_API void mclBnFp_clear(mclBnFp *x); -MCLBN_DLL_API void mclBnFp2_clear(mclBnFp2 *x); - -// set x to y -MCLBN_DLL_API void mclBnFr_setInt(mclBnFr *y, mclInt x); -MCLBN_DLL_API void mclBnFr_setInt32(mclBnFr *y, int x); - -// x = buf & (1 << bitLen(r)) - 1 -// if (x >= r) x &= (1 << (bitLen(r) - 1)) - 1 -// always return 0 -MCLBN_DLL_API int mclBnFr_setLittleEndian(mclBnFr *x, const void *buf, mclSize bufSize); -MCLBN_DLL_API int mclBnFp_setLittleEndian(mclBnFp *x, const void *buf, mclSize bufSize); - -// set (buf mod r) to x -// return 0 if bufSize <= (byte size of Fr * 2) else -1 -MCLBN_DLL_API int mclBnFr_setLittleEndianMod(mclBnFr *x, const void *buf, mclSize bufSize); -// set (buf mod p) to x -// return 0 if bufSize <= (byte size of Fp * 2) else -1 -MCLBN_DLL_API int mclBnFp_setLittleEndianMod(mclBnFp *x, const void *buf, mclSize bufSize); - -// return 1 if true and 0 otherwise -MCLBN_DLL_API int mclBnFr_isValid(const mclBnFr *x); -MCLBN_DLL_API int mclBnFr_isEqual(const mclBnFr *x, const mclBnFr *y); -MCLBN_DLL_API int mclBnFr_isZero(const mclBnFr *x); -MCLBN_DLL_API int mclBnFr_isOne(const mclBnFr *x); - -MCLBN_DLL_API int mclBnFp_isEqual(const mclBnFp *x, const mclBnFp *y); -MCLBN_DLL_API int mclBnFp2_isEqual(const mclBnFp2 *x, const mclBnFp2 *y); - -#ifndef MCL_DONT_USE_CSRPNG -// return 0 if success -MCLBN_DLL_API int mclBnFr_setByCSPRNG(mclBnFr *x); - -/* - set user-defined random function for setByCSPRNG - @param self [in] user-defined pointer - @param readFunc [in] user-defined function, - which writes random bufSize bytes to buf and returns bufSize if success else returns 0 - @note if self == 0 and readFunc == 0 then set default random function - @note not threadsafe -*/ -MCLBN_DLL_API void mclBn_setRandFunc(void *self, unsigned int (*readFunc)(void *self, void *buf, unsigned int bufSize)); -#endif - -// hash(s) and set x -// return 0 if success -MCLBN_DLL_API int mclBnFr_setHashOf(mclBnFr *x, const void *buf, mclSize bufSize); -MCLBN_DLL_API int mclBnFp_setHashOf(mclBnFp *x, const void *buf, mclSize bufSize); - -// map x to y -// return 0 if success else -1 -MCLBN_DLL_API int mclBnFp_mapToG1(mclBnG1 *y, const mclBnFp *x); -MCLBN_DLL_API int mclBnFp2_mapToG2(mclBnG2 *y, const mclBnFp2 *x); - -MCLBN_DLL_API void mclBnFr_neg(mclBnFr *y, const mclBnFr *x); -MCLBN_DLL_API void mclBnFr_inv(mclBnFr *y, const mclBnFr *x); -MCLBN_DLL_API void mclBnFr_sqr(mclBnFr *y, const mclBnFr *x); -MCLBN_DLL_API void mclBnFr_add(mclBnFr *z, const mclBnFr *x, const mclBnFr *y); -MCLBN_DLL_API void mclBnFr_sub(mclBnFr *z, const mclBnFr *x, const mclBnFr *y); -MCLBN_DLL_API void mclBnFr_mul(mclBnFr *z, const mclBnFr *x, const mclBnFr *y); -MCLBN_DLL_API void mclBnFr_div(mclBnFr *z, const mclBnFr *x, const mclBnFr *y); - -//////////////////////////////////////////////// -// set zero -MCLBN_DLL_API void mclBnG1_clear(mclBnG1 *x); - - -// return 1 if true and 0 otherwise -MCLBN_DLL_API int mclBnG1_isValid(const mclBnG1 *x); -MCLBN_DLL_API int mclBnG1_isEqual(const mclBnG1 *x, const mclBnG1 *y); -MCLBN_DLL_API int mclBnG1_isZero(const mclBnG1 *x); -/* - return 1 if x has a correct order - x is valid point of G1 if and only if - mclBnG1_isValid() is true, which contains mclBnG1_isValidOrder() if mclBn_verifyOrderG1(true) - mclBnG1_isValid() && mclBnG1_isValidOrder() is true if mclBn_verifyOrderG1(false) -*/ -MCLBN_DLL_API int mclBnG1_isValidOrder(const mclBnG1 *x); - -MCLBN_DLL_API int mclBnG1_hashAndMapTo(mclBnG1 *x, const void *buf, mclSize bufSize); - - -MCLBN_DLL_API void mclBnG1_neg(mclBnG1 *y, const mclBnG1 *x); -MCLBN_DLL_API void mclBnG1_dbl(mclBnG1 *y, const mclBnG1 *x); -MCLBN_DLL_API void mclBnG1_normalize(mclBnG1 *y, const mclBnG1 *x); -MCLBN_DLL_API void mclBnG1_add(mclBnG1 *z, const mclBnG1 *x, const mclBnG1 *y); -MCLBN_DLL_API void mclBnG1_sub(mclBnG1 *z, const mclBnG1 *x, const mclBnG1 *y); -MCLBN_DLL_API void mclBnG1_mul(mclBnG1 *z, const mclBnG1 *x, const mclBnFr *y); - -/* - constant time mul -*/ -MCLBN_DLL_API void mclBnG1_mulCT(mclBnG1 *z, const mclBnG1 *x, const mclBnFr *y); - -//////////////////////////////////////////////// -// set zero -MCLBN_DLL_API void mclBnG2_clear(mclBnG2 *x); - -// return 1 if true and 0 otherwise -MCLBN_DLL_API int mclBnG2_isValid(const mclBnG2 *x); -MCLBN_DLL_API int mclBnG2_isEqual(const mclBnG2 *x, const mclBnG2 *y); -MCLBN_DLL_API int mclBnG2_isZero(const mclBnG2 *x); -// return 1 if x has a correct order -MCLBN_DLL_API int mclBnG2_isValidOrder(const mclBnG2 *x); - -MCLBN_DLL_API int mclBnG2_hashAndMapTo(mclBnG2 *x, const void *buf, mclSize bufSize); - -// return written size if sucess else 0 - -MCLBN_DLL_API void mclBnG2_neg(mclBnG2 *y, const mclBnG2 *x); -MCLBN_DLL_API void mclBnG2_dbl(mclBnG2 *y, const mclBnG2 *x); -MCLBN_DLL_API void mclBnG2_normalize(mclBnG2 *y, const mclBnG2 *x); -MCLBN_DLL_API void mclBnG2_add(mclBnG2 *z, const mclBnG2 *x, const mclBnG2 *y); -MCLBN_DLL_API void mclBnG2_sub(mclBnG2 *z, const mclBnG2 *x, const mclBnG2 *y); -MCLBN_DLL_API void mclBnG2_mul(mclBnG2 *z, const mclBnG2 *x, const mclBnFr *y); -/* - constant time mul -*/ -MCLBN_DLL_API void mclBnG2_mulCT(mclBnG2 *z, const mclBnG2 *x, const mclBnFr *y); - -//////////////////////////////////////////////// -// set zero -MCLBN_DLL_API void mclBnGT_clear(mclBnGT *x); -// set x to y -MCLBN_DLL_API void mclBnGT_setInt(mclBnGT *y, mclInt x); -MCLBN_DLL_API void mclBnGT_setInt32(mclBnGT *y, int x); - -// return 1 if true and 0 otherwise -MCLBN_DLL_API int mclBnGT_isEqual(const mclBnGT *x, const mclBnGT *y); -MCLBN_DLL_API int mclBnGT_isZero(const mclBnGT *x); -MCLBN_DLL_API int mclBnGT_isOne(const mclBnGT *x); - -MCLBN_DLL_API void mclBnGT_neg(mclBnGT *y, const mclBnGT *x); -MCLBN_DLL_API void mclBnGT_inv(mclBnGT *y, const mclBnGT *x); -MCLBN_DLL_API void mclBnGT_sqr(mclBnGT *y, const mclBnGT *x); -MCLBN_DLL_API void mclBnGT_add(mclBnGT *z, const mclBnGT *x, const mclBnGT *y); -MCLBN_DLL_API void mclBnGT_sub(mclBnGT *z, const mclBnGT *x, const mclBnGT *y); -MCLBN_DLL_API void mclBnGT_mul(mclBnGT *z, const mclBnGT *x, const mclBnGT *y); -MCLBN_DLL_API void mclBnGT_div(mclBnGT *z, const mclBnGT *x, const mclBnGT *y); - -/* - pow for all elements of Fp12 -*/ -MCLBN_DLL_API void mclBnGT_powGeneric(mclBnGT *z, const mclBnGT *x, const mclBnFr *y); -/* - pow for only {x|x^r = 1} in Fp12 by GLV method - the value generated by pairing satisfies the condition -*/ -MCLBN_DLL_API void mclBnGT_pow(mclBnGT *z, const mclBnGT *x, const mclBnFr *y); - -MCLBN_DLL_API void mclBn_pairing(mclBnGT *z, const mclBnG1 *x, const mclBnG2 *y); -MCLBN_DLL_API void mclBn_finalExp(mclBnGT *y, const mclBnGT *x); -MCLBN_DLL_API void mclBn_millerLoop(mclBnGT *z, const mclBnG1 *x, const mclBnG2 *y); - -// return precomputedQcoeffSize * sizeof(Fp6) / sizeof(uint64_t) -MCLBN_DLL_API int mclBn_getUint64NumToPrecompute(void); - -// allocate Qbuf[MCLBN_getUint64NumToPrecompute()] before calling this -MCLBN_DLL_API void mclBn_precomputeG2(uint64_t *Qbuf, const mclBnG2 *Q); - -MCLBN_DLL_API void mclBn_precomputedMillerLoop(mclBnGT *f, const mclBnG1 *P, const uint64_t *Qbuf); -MCLBN_DLL_API void mclBn_precomputedMillerLoop2(mclBnGT *f, const mclBnG1 *P1, const uint64_t *Q1buf, const mclBnG1 *P2, const uint64_t *Q2buf); -MCLBN_DLL_API void mclBn_precomputedMillerLoop2mixed(mclBnGT *f, const mclBnG1 *P1, const mclBnG2 *Q1, const mclBnG1 *P2, const uint64_t *Q2buf); - -/* - Lagrange interpolation - recover out = y(0) by { (xVec[i], yVec[i]) } - return 0 if success else -1 - @note *out = yVec[0] if k = 1 - @note k >= 2, xVec[i] != 0, xVec[i] != xVec[j] for i != j -*/ -MCLBN_DLL_API int mclBn_FrLagrangeInterpolation(mclBnFr *out, const mclBnFr *xVec, const mclBnFr *yVec, mclSize k); -MCLBN_DLL_API int mclBn_G1LagrangeInterpolation(mclBnG1 *out, const mclBnFr *xVec, const mclBnG1 *yVec, mclSize k); -MCLBN_DLL_API int mclBn_G2LagrangeInterpolation(mclBnG2 *out, const mclBnFr *xVec, const mclBnG2 *yVec, mclSize k); - -/* - evaluate polynomial - out = f(x) = c[0] + c[1] * x + c[2] * x^2 + ... + c[cSize - 1] * x^(cSize - 1) - @note cSize >= 2 -*/ -MCLBN_DLL_API int mclBn_FrEvaluatePolynomial(mclBnFr *out, const mclBnFr *cVec, mclSize cSize, const mclBnFr *x); -MCLBN_DLL_API int mclBn_G1EvaluatePolynomial(mclBnG1 *out, const mclBnG1 *cVec, mclSize cSize, const mclBnFr *x); -MCLBN_DLL_API int mclBn_G2EvaluatePolynomial(mclBnG2 *out, const mclBnG2 *cVec, mclSize cSize, const mclBnFr *x); - -/* - verify whether a point of an elliptic curve has order r - This api affetcs setStr(), deserialize() for G2 on BN or G1/G2 on BLS12 - @param doVerify [in] does not verify if zero(default 1) -*/ -MCLBN_DLL_API void mclBn_verifyOrderG1(int doVerify); -MCLBN_DLL_API void mclBn_verifyOrderG2(int doVerify); - -/* - EXPERIMENTAL - only for curve = MCL_SECP* or MCL_NIST* - return standard base point of the current elliptic curve -*/ -MCLBN_DLL_API int mclBnG1_getBasePoint(mclBnG1 *x); - -#ifdef __cplusplus -} -#endif diff --git a/cases/tool/win/bls_win/include/mcl/bn.hpp b/cases/tool/win/bls_win/include/mcl/bn.hpp deleted file mode 100644 index eb22c6b76c..0000000000 --- a/cases/tool/win/bls_win/include/mcl/bn.hpp +++ /dev/null @@ -1,2261 +0,0 @@ -#pragma once -/** - @file - @brief optimal ate pairing over BN-curve / BLS12-curve - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include -#include -#include -#include -#ifndef CYBOZU_DONT_USE_EXCEPTION -#include -#endif - -/* - set bit size of Fp and Fr -*/ -#ifndef MCL_MAX_FP_BIT_SIZE - #define MCL_MAX_FP_BIT_SIZE 256 -#endif - -#ifndef MCL_MAX_FR_BIT_SIZE - #define MCL_MAX_FR_BIT_SIZE MCL_MAX_FP_BIT_SIZE -#endif -namespace mcl { - -struct CurveParam { - /* - y^2 = x^3 + b - i^2 = -1 - xi = xi_a + i - v^3 = xi - w^2 = v - */ - const char *z; - int b; // y^2 = x^3 + b - int xi_a; // xi = xi_a + i - /* - BN254, BN381 : Dtype - BLS12-381 : Mtype - */ - bool isMtype; - int curveType; // same in curve_type.h - bool operator==(const CurveParam& rhs) const - { - return strcmp(z, rhs.z) == 0 && b == rhs.b && xi_a == rhs.xi_a && isMtype == rhs.isMtype; - } - bool operator!=(const CurveParam& rhs) const { return !operator==(rhs); } -}; - -const CurveParam BN254 = { "-0x4080000000000001", 2, 1, false, MCL_BN254 }; // -(2^62 + 2^55 + 1) -// provisional(experimental) param with maxBitSize = 384 -const CurveParam BN381_1 = { "-0x400011000000000000000001", 2, 1, false, MCL_BN381_1 }; // -(2^94 + 2^76 + 2^72 + 1) // A Family of Implementation-Friendly BN Elliptic Curves -const CurveParam BN381_2 = { "-0x400040090001000000000001", 2, 1, false, MCL_BN381_2 }; // -(2^94 + 2^78 + 2^67 + 2^64 + 2^48 + 1) // used in relic-toolkit -const CurveParam BN462 = { "0x4001fffffffffffffffffffffbfff", 5, 2, false, MCL_BN462 }; // 2^114 + 2^101 - 2^14 - 1 // https://eprint.iacr.org/2017/334 -const CurveParam BN_SNARK1 = { "4965661367192848881", 3, 9, false, MCL_BN_SNARK1 }; -const CurveParam BLS12_381 = { "-0xd201000000010000", 4, 1, true, MCL_BLS12_381 }; -const CurveParam BN160 = { "0x4000000031", 3, 4, false, MCL_BN160 }; - -inline const CurveParam& getCurveParam(int type) -{ - switch (type) { - case MCL_BN254: return mcl::BN254; - case MCL_BN381_1: return mcl::BN381_1; - case MCL_BN381_2: return mcl::BN381_2; - case MCL_BN462: return mcl::BN462; - case MCL_BN_SNARK1: return mcl::BN_SNARK1; - case MCL_BLS12_381: return mcl::BLS12_381; - case MCL_BN160: return mcl::BN160; - default: - assert(0); - return mcl::BN254; - } -} - -namespace bn { - -namespace local { -struct FpTag; -struct FrTag; -} - -typedef mcl::FpT Fp; -typedef mcl::FpT Fr; -typedef mcl::Fp2T Fp2; -typedef mcl::Fp6T Fp6; -typedef mcl::Fp12T Fp12; -typedef mcl::EcT G1; -typedef mcl::EcT G2; -typedef Fp12 GT; - -typedef mcl::FpDblT FpDbl; -typedef mcl::Fp2DblT Fp2Dbl; - -inline void Frobenius(Fp2& y, const Fp2& x) -{ - Fp2::Frobenius(y, x); -} -inline void Frobenius(Fp12& y, const Fp12& x) -{ - Fp12::Frobenius(y, x); -} -/* - twisted Frobenius for G2 -*/ -void Frobenius(G2& D, const G2& S); -void Frobenius2(G2& D, const G2& S); -void Frobenius3(G2& D, const G2& S); - -namespace local { - -typedef mcl::FixedArray SignVec; - -inline size_t getPrecomputeQcoeffSize(const SignVec& sv) -{ - size_t idx = 2 + 2; - for (size_t i = 2; i < sv.size(); i++) { - idx++; - if (sv[i]) idx++; - } - return idx; -} - -template -X evalPoly(const X& x, const C (&c)[N]) -{ - X ret = c[N - 1]; - for (size_t i = 1; i < N; i++) { - ret *= x; - ret += c[N - 1 - i]; - } - return ret; -} - -enum TwistBtype { - tb_generic, - tb_1m1i, // 1 - 1i - tb_1m2i // 1 - 2i -}; - -/* - l = (a, b, c) => (a, b * P.y, c * P.x) -*/ -inline void updateLine(Fp6& l, const G1& P) -{ - l.b.a *= P.y; - l.b.b *= P.y; - l.c.a *= P.x; - l.c.b *= P.x; -} - -struct Compress { - Fp12& z_; - Fp2& g1_; - Fp2& g2_; - Fp2& g3_; - Fp2& g4_; - Fp2& g5_; - // z is output area - Compress(Fp12& z, const Fp12& x) - : z_(z) - , g1_(z.getFp2()[4]) - , g2_(z.getFp2()[3]) - , g3_(z.getFp2()[2]) - , g4_(z.getFp2()[1]) - , g5_(z.getFp2()[5]) - { - g2_ = x.getFp2()[3]; - g3_ = x.getFp2()[2]; - g4_ = x.getFp2()[1]; - g5_ = x.getFp2()[5]; - } - Compress(Fp12& z, const Compress& c) - : z_(z) - , g1_(z.getFp2()[4]) - , g2_(z.getFp2()[3]) - , g3_(z.getFp2()[2]) - , g4_(z.getFp2()[1]) - , g5_(z.getFp2()[5]) - { - g2_ = c.g2_; - g3_ = c.g3_; - g4_ = c.g4_; - g5_ = c.g5_; - } - void decompressBeforeInv(Fp2& nume, Fp2& denomi) const - { - assert(&nume != &denomi); - - if (g2_.isZero()) { - Fp2::add(nume, g4_, g4_); - nume *= g5_; - denomi = g3_; - } else { - Fp2 t; - Fp2::sqr(nume, g5_); - Fp2::mul_xi(denomi, nume); - Fp2::sqr(nume, g4_); - Fp2::sub(t, nume, g3_); - t += t; - t += nume; - Fp2::add(nume, denomi, t); - Fp2::divBy4(nume, nume); - denomi = g2_; - } - } - - // output to z - void decompressAfterInv() - { - Fp2& g0 = z_.getFp2()[0]; - Fp2 t0, t1; - // Compute g0. - Fp2::sqr(t0, g1_); - Fp2::mul(t1, g3_, g4_); - t0 -= t1; - t0 += t0; - t0 -= t1; - Fp2::mul(t1, g2_, g5_); - t0 += t1; - Fp2::mul_xi(g0, t0); - g0.a += Fp::one(); - } - -public: - void decompress() // for test - { - Fp2 nume, denomi; - decompressBeforeInv(nume, denomi); - Fp2::inv(denomi, denomi); - g1_ = nume * denomi; // g1 is recoverd. - decompressAfterInv(); - } - /* - 2275clk * 186 = 423Kclk QQQ - */ - static void squareC(Compress& z) - { - Fp2 t0, t1, t2; - Fp2Dbl T0, T1, T2, T3; - Fp2Dbl::sqrPre(T0, z.g4_); - Fp2Dbl::sqrPre(T1, z.g5_); - Fp2Dbl::mul_xi(T2, T1); - T2 += T0; - Fp2Dbl::mod(t2, T2); - Fp2::add(t0, z.g4_, z.g5_); - Fp2Dbl::sqrPre(T2, t0); - T0 += T1; - T2 -= T0; - Fp2Dbl::mod(t0, T2); - Fp2::add(t1, z.g2_, z.g3_); - Fp2Dbl::sqrPre(T3, t1); - Fp2Dbl::sqrPre(T2, z.g2_); - Fp2::mul_xi(t1, t0); - z.g2_ += t1; - z.g2_ += z.g2_; - z.g2_ += t1; - Fp2::sub(t1, t2, z.g3_); - t1 += t1; - Fp2Dbl::sqrPre(T1, z.g3_); - Fp2::add(z.g3_, t1, t2); - Fp2Dbl::mul_xi(T0, T1); - T0 += T2; - Fp2Dbl::mod(t0, T0); - Fp2::sub(z.g4_, t0, z.g4_); - z.g4_ += z.g4_; - z.g4_ += t0; - Fp2Dbl::addPre(T2, T2, T1); - T3 -= T2; - Fp2Dbl::mod(t0, T3); - z.g5_ += t0; - z.g5_ += z.g5_; - z.g5_ += t0; - } - static void square_n(Compress& z, int n) - { - for (int i = 0; i < n; i++) { - squareC(z); - } - } - /* - Exponentiation over compression for: - z = x^Param::z.abs() - */ - static void fixed_power(Fp12& z, const Fp12& x) - { - if (x.isOne()) { - z = 1; - return; - } - Fp12 x_org = x; - Fp12 d62; - Fp2 c55nume, c55denomi, c62nume, c62denomi; - Compress c55(z, x); - square_n(c55, 55); - c55.decompressBeforeInv(c55nume, c55denomi); - Compress c62(d62, c55); - square_n(c62, 62 - 55); - c62.decompressBeforeInv(c62nume, c62denomi); - Fp2 acc; - Fp2::mul(acc, c55denomi, c62denomi); - Fp2::inv(acc, acc); - Fp2 t; - Fp2::mul(t, acc, c62denomi); - Fp2::mul(c55.g1_, c55nume, t); - c55.decompressAfterInv(); - Fp2::mul(t, acc, c55denomi); - Fp2::mul(c62.g1_, c62nume, t); - c62.decompressAfterInv(); - z *= x_org; - z *= d62; - } -}; - -struct MapTo { - enum { - BNtype, - BLS12type, - STD_ECtype - }; - Fp c1_; // sqrt(-3) - Fp c2_; // (-1 + sqrt(-3)) / 2 - mpz_class z_; - mpz_class cofactor_; - int type_; - bool useNaiveMapTo_; - - int legendre(bool *pb, const Fp& x) const - { - mpz_class xx; - x.getMpz(pb, xx); - if (!*pb) return 0; - return gmp::legendre(xx, Fp::getOp().mp); - } - int legendre(bool *pb, const Fp2& x) const - { - Fp y; - Fp2::norm(y, x); - return legendre(pb, y); - } - void mulFp(Fp& x, const Fp& y) const - { - x *= y; - } - void mulFp(Fp2& x, const Fp& y) const - { - x.a *= y; - x.b *= y; - } - /* - P.-A. Fouque and M. Tibouchi, - "Indifferentiable hashing to Barreto Naehrig curves," - in Proc. Int. Conf. Cryptol. Inform. Security Latin Amer., 2012, vol. 7533, pp.1-17. - - w = sqrt(-3) t / (1 + b + t^2) - Remark: throw exception if t = 0, c1, -c1 and b = 2 - */ - template - bool calcBN(G& P, const F& t) const - { - F x, y, w; - bool b; - bool negative = legendre(&b, t) < 0; - if (!b) return false; - if (t.isZero()) return false; - F::sqr(w, t); - w += G::b_; - *w.getFp0() += Fp::one(); - if (w.isZero()) return false; - F::inv(w, w); - mulFp(w, c1_); - w *= t; - for (int i = 0; i < 3; i++) { - switch (i) { - case 0: F::mul(x, t, w); F::neg(x, x); *x.getFp0() += c2_; break; - case 1: F::neg(x, x); *x.getFp0() -= Fp::one(); break; - case 2: F::sqr(x, w); F::inv(x, x); *x.getFp0() += Fp::one(); break; - } - G::getWeierstrass(y, x); - if (F::squareRoot(y, y)) { - if (negative) F::neg(y, y); - P.set(&b, x, y, false); - assert(b); - return true; - } - } - return false; - } - /* - Faster Hashing to G2 - Laura Fuentes-Castaneda, Edward Knapp, Francisco Rodriguez-Henriquez - section 6.1 - for BN - Q = zP + Frob(3zP) + Frob^2(zP) + Frob^3(P) - = -(18x^3 + 12x^2 + 3x + 1)cofactor_ P - */ - void mulByCofactorBN(G2& Q, const G2& P) const - { -#if 0 - G2::mulGeneric(Q, P, cofactor_); -#else -#if 0 - mpz_class t = -(1 + z_ * (3 + z_ * (12 + z_ * 18))); - G2::mulGeneric(Q, P, t * cofactor_); -#else - G2 T0, T1, T2; - /* - G2::mul (GLV method) can't be used because P is not on G2 - */ - G2::mulGeneric(T0, P, z_); - G2::dbl(T1, T0); - T1 += T0; // 3zP - Frobenius(T1, T1); - Frobenius2(T2, T0); - T0 += T1; - T0 += T2; - Frobenius3(T2, P); - G2::add(Q, T0, T2); -#endif -#endif - } - /* - 1.2~1.4 times faster than calBN - */ - template - void naiveMapTo(G& P, const F& t) const - { - F x = t; - for (;;) { - F y; - G::getWeierstrass(y, x); - if (F::squareRoot(y, y)) { - bool b; - P.set(&b, x, y, false); - assert(b); - return; - } - *x.getFp0() += Fp::one(); - } - } - /* - #(Fp) / r = (z + 1 - t) / r = (z - 1)^2 / 3 - */ - void mulByCofactorBLS12(G1& Q, const G1& P) const - { - G1::mulGeneric(Q, P, cofactor_); - } - /* - Efficient hash maps to G2 on BLS curves - Alessandro Budroni, Federico Pintore - Q = (z(z-1)-1)P + Frob((z-1)P) + Frob^2(2P) - */ - void mulByCofactorBLS12(G2& Q, const G2& P) const - { - G2 T0, T1; - G2::mulGeneric(T0, P, z_ - 1); - G2::mulGeneric(T1, T0, z_); - T1 -= P; - Frobenius(T0, T0); - T0 += T1; - G2::dbl(T1, P); - Frobenius2(T1, T1); - G2::add(Q, T0, T1); - } - /* - cofactor_ is for G2(not used now) - */ - void initBN(const mpz_class& cofactor, const mpz_class &z, int curveType) - { - z_ = z; - cofactor_ = cofactor; - if (curveType == MCL_BN254) { - const char *c1 = "252364824000000126cd890000000003cf0f0000000000060c00000000000004"; - const char *c2 = "25236482400000017080eb4000000006181800000000000cd98000000000000b"; - bool b; - c1_.setStr(&b, c1, 16); - c2_.setStr(&b, c2, 16); - (void)b; - return; - } - bool b = Fp::squareRoot(c1_, -3); - assert(b); - (void)b; - c2_ = (c1_ - 1) / 2; - } - void initBLS12(const mpz_class& z) - { - z_ = z; - // cofactor for G1 - cofactor_ = (z - 1) * (z - 1) / 3; - bool b = Fp::squareRoot(c1_, -3); - assert(b); - (void)b; - c2_ = (c1_ - 1) / 2; - } - /* - if type == STD_ECtype, then cofactor, z are not used. - */ - void init(const mpz_class& cofactor, const mpz_class &z, int curveType) - { - if (0 <= curveType && curveType < MCL_EC_BEGIN) { - type_ = curveType == MCL_BLS12_381 ? BLS12type : BNtype; - } else { - type_ = STD_ECtype; - } - if (type_ == STD_ECtype) { - useNaiveMapTo_ = true; - } else { - useNaiveMapTo_ = false; - } -#ifdef MCL_USE_OLD_MAPTO_FOR_BLS12 - if (type == BLS12type) useNaiveMapTo_ = true; -#endif - if (type_ == BNtype) { - initBN(cofactor, z, curveType); - } else if (type_ == BLS12type) { - initBLS12(z); - } - } - bool calcG1(G1& P, const Fp& t) const - { - if (useNaiveMapTo_) { - naiveMapTo(P, t); - } else { - if (!calcBN(P, t)) return false; - } - switch (type_) { - case BNtype: - // no subgroup - break; - case BLS12type: - mulByCofactorBLS12(P, P); - break; - } - assert(P.isValid()); - return true; - } - /* - get the element in G2 by multiplying the cofactor - */ - bool calcG2(G2& P, const Fp2& t) const - { - if (useNaiveMapTo_) { - naiveMapTo(P, t); - } else { - if (!calcBN(P, t)) return false; - } - switch(type_) { - case BNtype: - mulByCofactorBN(P, P); - break; - case BLS12type: - mulByCofactorBLS12(P, P); - break; - } - assert(P.isValid()); - return true; - } -}; - -/* - Software implementation of Attribute-Based Encryption: Appendixes - GLV for G1 on BN/BLS12 -*/ -struct GLV1 { - Fp rw; // rw = 1 / w = (-1 - sqrt(-3)) / 2 - size_t rBitSize; - mpz_class v0, v1; - mpz_class B[2][2]; - mpz_class r; -private: - bool usePrecomputedTable(int curveType) - { - if (curveType < 0) return false; - const struct Tbl { - int curveType; - const char *rw; - size_t rBitSize; - const char *v0, *v1; - const char *B[2][2]; - const char *r; - } tbl[] = { - { - MCL_BN254, - "49b36240000000024909000000000006cd80000000000007", - 256, - "2a01fab7e04a017b9c0eb31ff36bf3357", - "37937ca688a6b4904", - { - { - "61818000000000028500000000000004", - "8100000000000001", - }, - { - "8100000000000001", - "-61818000000000020400000000000003", - }, - }, - "2523648240000001ba344d8000000007ff9f800000000010a10000000000000d", - }, - }; - for (size_t i = 0; i < CYBOZU_NUM_OF_ARRAY(tbl); i++) { - if (tbl[i].curveType != curveType) continue; - bool b; - rw.setStr(&b, tbl[i].rw, 16); if (!b) continue; - rBitSize = tbl[i].rBitSize; - mcl::gmp::setStr(&b, v0, tbl[i].v0, 16); if (!b) continue; - mcl::gmp::setStr(&b, v1, tbl[i].v1, 16); if (!b) continue; - mcl::gmp::setStr(&b, B[0][0], tbl[i].B[0][0], 16); if (!b) continue; - mcl::gmp::setStr(&b, B[0][1], tbl[i].B[0][1], 16); if (!b) continue; - mcl::gmp::setStr(&b, B[1][0], tbl[i].B[1][0], 16); if (!b) continue; - mcl::gmp::setStr(&b, B[1][1], tbl[i].B[1][1], 16); if (!b) continue; - mcl::gmp::setStr(&b, r, tbl[i].r, 16); if (!b) continue; - return true; - } - return false; - } -public: - bool operator==(const GLV1& rhs) const - { - return rw == rhs.rw && rBitSize == rhs.rBitSize && v0 == rhs.v0 && v1 == rhs.v1 - && B[0][0] == rhs.B[0][0] && B[0][1] == rhs.B[0][1] && B[1][0] == rhs.B[1][0] - && B[1][1] == rhs.B[1][1] && r == rhs.r; - } - bool operator!=(const GLV1& rhs) const { return !operator==(rhs); } -#ifndef CYBOZU_DONT_USE_STRING - void dump(const mpz_class& x) const - { - printf("\"%s\",\n", mcl::gmp::getStr(x, 16).c_str()); - } - void dump() const - { - printf("\"%s\",\n", rw.getStr(16).c_str()); - printf("%d,\n", (int)rBitSize); - dump(v0); - dump(v1); - dump(B[0][0]); dump(B[0][1]); dump(B[1][0]); dump(B[1][1]); - dump(r); - } -#endif - void init(const mpz_class& r, const mpz_class& z, bool isBLS12 = false, int curveType = -1) - { - if (usePrecomputedTable(curveType)) return; - bool b = Fp::squareRoot(rw, -3); - assert(b); - (void)b; - rw = -(rw + 1) / 2; - this->r = r; - rBitSize = gmp::getBitSize(r); - rBitSize = (rBitSize + fp::UnitBitSize - 1) & ~(fp::UnitBitSize - 1);// a little better size - if (isBLS12) { - /* - BLS12 - L = z^4 - (-z^2+1) + L = 0 - 1 + z^2 L = 0 - */ - B[0][0] = -z * z + 1; - B[0][1] = 1; - B[1][0] = 1; - B[1][1] = z * z; - } else { - /* - BN - L = 36z^4 - 1 - (6z^2+2z) - (2z+1) L = 0 - (-2z-1) - (6z^2+4z+1)L = 0 - */ - B[0][0] = 6 * z * z + 2 * z; - B[0][1] = -2 * z - 1; - B[1][0] = -2 * z - 1; - B[1][1] = -6 * z * z - 4 * z - 1; - } - // [v0 v1] = [r 0] * B^(-1) - v0 = ((-B[1][1]) << rBitSize) / r; - v1 = ((B[1][0]) << rBitSize) / r; - } - /* - L = lambda = p^4 - L (x, y) = (rw x, y) - */ - void mulLambda(G1& Q, const G1& P) const - { - Fp::mul(Q.x, P.x, rw); - Q.y = P.y; - Q.z = P.z; - } - /* - x = a + b * lambda mod r - */ - void split(mpz_class& a, mpz_class& b, const mpz_class& x) const - { - mpz_class t; - t = (x * v0) >> rBitSize; - b = (x * v1) >> rBitSize; - a = x - (t * B[0][0] + b * B[1][0]); - b = - (t * B[0][1] + b * B[1][1]); - } - void mul(G1& Q, const G1& P, mpz_class x, bool constTime = false) const - { - typedef mcl::fp::Unit Unit; - const size_t maxUnit = 512 / 2 / mcl::fp::UnitBitSize; - const int splitN = 2; - mpz_class u[splitN]; - G1 in[splitN]; - G1 tbl[4]; - int bitTbl[splitN]; // bit size of u[i] - Unit w[splitN][maxUnit]; // unit array of u[i] - int maxBit = 0; // max bit of u[i] - int maxN = 0; - int remainBit = 0; - - x %= r; - if (x == 0) { - Q.clear(); - if (constTime) goto DummyLoop; - return; - } - if (x < 0) { - x += r; - } - split(u[0], u[1], x); - in[0] = P; - mulLambda(in[1], in[0]); - for (int i = 0; i < splitN; i++) { - if (u[i] < 0) { - u[i] = -u[i]; - G1::neg(in[i], in[i]); - } - in[i].normalize(); - } -#if 0 - G1::mulGeneric(in[0], in[0], u[0]); - G1::mulGeneric(in[1], in[1], u[1]); - G1::add(Q, in[0], in[1]); - return; -#else - tbl[0] = in[0]; // dummy - tbl[1] = in[0]; - tbl[2] = in[1]; - G1::add(tbl[3], in[0], in[1]); - tbl[3].normalize(); - for (int i = 0; i < splitN; i++) { - bool b; - mcl::gmp::getArray(&b, w[i], maxUnit, u[i]); - assert(b); - bitTbl[i] = (int)mcl::gmp::getBitSize(u[i]); - maxBit = fp::max_(maxBit, bitTbl[i]); - } - assert(maxBit > 0); - maxBit--; - /* - maxBit = maxN * UnitBitSize + remainBit - 0 < remainBit <= UnitBitSize - */ - maxN = maxBit / mcl::fp::UnitBitSize; - remainBit = maxBit % mcl::fp::UnitBitSize; - remainBit++; - Q.clear(); - for (int i = maxN; i >= 0; i--) { - for (int j = remainBit - 1; j >= 0; j--) { - G1::dbl(Q, Q); - uint32_t b0 = (w[0][i] >> j) & 1; - uint32_t b1 = (w[1][i] >> j) & 1; - uint32_t c = b1 * 2 + b0; - if (c == 0) { - if (constTime) tbl[0] += tbl[1]; - } else { - Q += tbl[c]; - } - } - remainBit = (int)mcl::fp::UnitBitSize; - } -#endif - DummyLoop: - if (!constTime) return; - const int limitBit = (int)rBitSize / splitN; - G1 D = tbl[0]; - for (int i = maxBit + 1; i < limitBit; i++) { - G1::dbl(D, D); - D += tbl[0]; - } - } -}; - -/* - GLV method for G2 and GT on BN/BLS12 -*/ -struct GLV2 { - size_t rBitSize; - mpz_class B[4][4]; - mpz_class r; - mpz_class v[4]; - mpz_class z; - mpz_class abs_z; - bool isBLS12; - GLV2() : rBitSize(0), isBLS12(false) {} - void init(const mpz_class& r, const mpz_class& z, bool isBLS12 = false) - { - this->r = r; - this->z = z; - this->abs_z = z < 0 ? -z : z; - this->isBLS12 = isBLS12; - rBitSize = mcl::gmp::getBitSize(r); - rBitSize = (rBitSize + mcl::fp::UnitBitSize - 1) & ~(mcl::fp::UnitBitSize - 1);// a little better size - mpz_class z2p1 = z * 2 + 1; - B[0][0] = z + 1; - B[0][1] = z; - B[0][2] = z; - B[0][3] = -2 * z; - B[1][0] = z2p1; - B[1][1] = -z; - B[1][2] = -(z + 1); - B[1][3] = -z; - B[2][0] = 2 * z; - B[2][1] = z2p1; - B[2][2] = z2p1; - B[2][3] = z2p1; - B[3][0] = z - 1; - B[3][1] = 2 * z2p1; - B[3][2] = -2 * z + 1; - B[3][3] = z - 1; - /* - v[] = [r 0 0 0] * B^(-1) = [2z^2+3z+1, 12z^3+8z^2+z, 6z^3+4z^2+z, -(2z+1)] - */ - const char *zBN254 = "-4080000000000001"; - mpz_class t; - bool b; - mcl::gmp::setStr(&b, t, zBN254, 16); - assert(b); - (void)b; - if (z == t) { - static const char *vTblBN254[] = { - "e00a8e7f56e007e5b09fe7fdf43ba998", - "-152aff56a8054abf9da75db2da3d6885101e5fd3997d41cb1", - "-a957fab5402a55fced3aed96d1eb44295f40f136ee84e09b", - "-e00a8e7f56e007e929d7b2667ea6f29c", - }; - for (int i = 0; i < 4; i++) { - mcl::gmp::setStr(&b, v[i], vTblBN254[i], 16); - assert(b); - (void)b; - } - } else { - v[0] = ((1 + z * (3 + z * 2)) << rBitSize) / r; - v[1] = ((z * (1 + z * (8 + z * 12))) << rBitSize) / r; - v[2] = ((z * (1 + z * (4 + z * 6))) << rBitSize) / r; - v[3] = -((z * (1 + z * 2)) << rBitSize) / r; - } - } - /* - u[] = [x, 0, 0, 0] - v[] * x * B - */ - void split(mpz_class u[4], const mpz_class& x) const - { - if (isBLS12) { - /* - Frob(P) = zP - x = u[0] + u[1] z + u[2] z^2 + u[3] z^3 - */ - bool isNeg = false; - mpz_class t = x; - if (t < 0) { - t = -t; - isNeg = true; - } - for (int i = 0; i < 4; i++) { - // t = t / abs_z, u[i] = t % abs_z - mcl::gmp::divmod(t, u[i], t, abs_z); - if (((z < 0) && (i & 1)) ^ isNeg) { - u[i] = -u[i]; - } - } - return; - } - // BN - mpz_class t[4]; - for (int i = 0; i < 4; i++) { - t[i] = (x * v[i]) >> rBitSize; - } - for (int i = 0; i < 4; i++) { - u[i] = (i == 0) ? x : 0; - for (int j = 0; j < 4; j++) { - u[i] -= t[j] * B[j][i]; - } - } - } - template - void mul(T& Q, const T& P, mpz_class x, bool constTime = false) const - { -#if 0 // #ifndef NDEBUG - { - T R; - T::mulGeneric(R, P, r); - assert(R.isZero()); - } -#endif - typedef mcl::fp::Unit Unit; - const size_t maxUnit = 512 / 2 / mcl::fp::UnitBitSize; - const int splitN = 4; - mpz_class u[splitN]; - T in[splitN]; - T tbl[16]; - int bitTbl[splitN]; // bit size of u[i] - Unit w[splitN][maxUnit]; // unit array of u[i] - int maxBit = 0; // max bit of u[i] - int maxN = 0; - int remainBit = 0; - - x %= r; - if (x == 0) { - Q.clear(); - if (constTime) goto DummyLoop; - return; - } - if (x < 0) { - x += r; - } - split(u, x); - in[0] = P; - Frobenius(in[1], in[0]); - Frobenius(in[2], in[1]); - Frobenius(in[3], in[2]); - for (int i = 0; i < splitN; i++) { - if (u[i] < 0) { - u[i] = -u[i]; - T::neg(in[i], in[i]); - } -// in[i].normalize(); // slow - } -#if 0 - for (int i = 0; i < splitN; i++) { - T::mulGeneric(in[i], in[i], u[i]); - } - T::add(Q, in[0], in[1]); - Q += in[2]; - Q += in[3]; - return; -#else - tbl[0] = in[0]; - for (size_t i = 1; i < 16; i++) { - tbl[i].clear(); - if (i & 1) { - tbl[i] += in[0]; - } - if (i & 2) { - tbl[i] += in[1]; - } - if (i & 4) { - tbl[i] += in[2]; - } - if (i & 8) { - tbl[i] += in[3]; - } -// tbl[i].normalize(); - } - for (int i = 0; i < splitN; i++) { - bool b; - mcl::gmp::getArray(&b, w[i], maxUnit, u[i]); - assert(b); - bitTbl[i] = (int)mcl::gmp::getBitSize(u[i]); - maxBit = fp::max_(maxBit, bitTbl[i]); - } - maxBit--; - /* - maxBit = maxN * UnitBitSize + remainBit - 0 < remainBit <= UnitBitSize - */ - maxN = maxBit / mcl::fp::UnitBitSize; - remainBit = maxBit % mcl::fp::UnitBitSize; - remainBit++; - Q.clear(); - for (int i = maxN; i >= 0; i--) { - for (int j = remainBit - 1; j >= 0; j--) { - T::dbl(Q, Q); - uint32_t b0 = (w[0][i] >> j) & 1; - uint32_t b1 = (w[1][i] >> j) & 1; - uint32_t b2 = (w[2][i] >> j) & 1; - uint32_t b3 = (w[3][i] >> j) & 1; - uint32_t c = b3 * 8 + b2 * 4 + b1 * 2 + b0; - if (c == 0) { - if (constTime) tbl[0] += tbl[1]; - } else { - Q += tbl[c]; - } - } - remainBit = (int)mcl::fp::UnitBitSize; - } -#endif - DummyLoop: - if (!constTime) return; - const int limitBit = (int)rBitSize / splitN; - T D = tbl[0]; - for (int i = maxBit + 1; i < limitBit; i++) { - T::dbl(D, D); - D += tbl[0]; - } - } - void pow(Fp12& z, const Fp12& x, mpz_class y, bool constTime = false) const - { - typedef GroupMtoA AG; // as additive group - AG& _z = static_cast(z); - const AG& _x = static_cast(x); - mul(_z, _x, y, constTime); - } -}; - -struct Param { - CurveParam cp; - mpz_class z; - mpz_class abs_z; - bool isNegative; - bool isBLS12; - mpz_class p; - mpz_class r; - local::MapTo mapTo; - local::GLV1 glv1; - local::GLV2 glv2; - // for G2 Frobenius - Fp2 g2; - Fp2 g3; - /* - Dtype twist - (x', y') = phi(x, y) = (x/w^2, y/w^3) - y^2 = x^3 + b - => (y'w^3)^2 = (x'w^2)^3 + b - => y'^2 = x'^3 + b / w^6 ; w^6 = xi - => y'^2 = x'^3 + twist_b; - */ - Fp2 twist_b; - local::TwistBtype twist_b_type; -/* - mpz_class exp_c0; - mpz_class exp_c1; - mpz_class exp_c2; - mpz_class exp_c3; -*/ - - // Loop parameter for the Miller loop part of opt. ate pairing. - local::SignVec siTbl; - size_t precomputedQcoeffSize; - bool useNAF; - local::SignVec zReplTbl; - - // for initG1only - G1 basePoint; - - void init(bool *pb, const mcl::CurveParam& cp, fp::Mode mode) - { - this->cp = cp; - isBLS12 = cp.curveType == MCL_BLS12_381; - gmp::setStr(pb, z, cp.z); - if (!*pb) return; - isNegative = z < 0; - if (isNegative) { - abs_z = -z; - } else { - abs_z = z; - } - if (isBLS12) { - mpz_class z2 = z * z; - mpz_class z4 = z2 * z2; - r = z4 - z2 + 1; - p = z - 1; - p = p * p * r / 3 + z; - } else { - const int pCoff[] = { 1, 6, 24, 36, 36 }; - const int rCoff[] = { 1, 6, 18, 36, 36 }; - p = local::evalPoly(z, pCoff); - assert((p % 6) == 1); - r = local::evalPoly(z, rCoff); - } - Fr::init(pb, r, mode); - if (!*pb) return; - Fp::init(pb, cp.xi_a, p, mode); - if (!*pb) return; - Fp2::init(); - const Fp2 xi(cp.xi_a, 1); - g2 = Fp2::get_gTbl()[0]; - g3 = Fp2::get_gTbl()[3]; - if (cp.isMtype) { - Fp2::inv(g2, g2); - Fp2::inv(g3, g3); - } - if (cp.isMtype) { - twist_b = Fp2(cp.b) * xi; - } else { - if (cp.b == 2 && cp.xi_a == 1) { - twist_b = Fp2(1, -1); // shortcut - } else { - twist_b = Fp2(cp.b) / xi; - } - } - if (twist_b == Fp2(1, -1)) { - twist_b_type = tb_1m1i; - } else if (twist_b == Fp2(1, -2)) { - twist_b_type = tb_1m2i; - } else { - twist_b_type = tb_generic; - } - G1::init(0, cp.b, mcl::ec::Jacobi); - if (isBLS12) { - G1::setOrder(r); - } - G2::init(0, twist_b, mcl::ec::Jacobi); - G2::setOrder(r); - - const mpz_class largest_c = isBLS12 ? abs_z : gmp::abs(z * 6 + 2); - useNAF = gmp::getNAF(siTbl, largest_c); - precomputedQcoeffSize = local::getPrecomputeQcoeffSize(siTbl); - gmp::getNAF(zReplTbl, gmp::abs(z)); -/* - if (isBLS12) { - mpz_class z2 = z * z; - mpz_class z3 = z2 * z; - mpz_class z4 = z3 * z; - mpz_class z5 = z4 * z; - exp_c0 = z5 - 2 * z4 + 2 * z2 - z + 3; - exp_c1 = z4 - 2 * z3 + 2 * z - 1; - exp_c2 = z3 - 2 * z2 + z; - exp_c3 = z2 - 2 * z + 1; - } else { - exp_c0 = -2 + z * (-18 + z * (-30 - 36 * z)); - exp_c1 = 1 + z * (-12 + z * (-18 - 36 * z)); - exp_c2 = 6 * z * z + 1; - } -*/ - if (isBLS12) { - mapTo.init(0, z, cp.curveType); - } else { - mapTo.init(2 * p - r, z, cp.curveType); - } - glv1.init(r, z, isBLS12, cp.curveType); - glv2.init(r, z, isBLS12); - basePoint.clear(); - *pb = true; - } - void initG1only(bool *pb, const mcl::EcParam& para) - { - Fp::init(pb, para.p); - if (!*pb) return; - Fr::init(pb, para.n); - if (!*pb) return; - G1::init(pb, para.a, para.b); - if (!*pb) return; - G1::setOrder(Fr::getOp().mp); - mapTo.init(0, 0, para.curveType); - Fp x0, y0; - x0.setStr(pb, para.gx); - if (!*pb) return; - y0.setStr(pb, para.gy); - basePoint.set(pb, x0, y0); - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - void init(const mcl::CurveParam& cp, fp::Mode mode) - { - bool b; - init(&b, cp, mode); - if (!b) throw cybozu::Exception("Param:init"); - } -#endif -}; - -template -struct StaticVar { - static local::Param param; -}; - -template -local::Param StaticVar::param; - -} // mcl::bn::local - -namespace BN { - -static const local::Param& param = local::StaticVar<>::param; - -} // mcl::bn::BN - -namespace local { - -inline void mulArrayGLV1(G1& z, const G1& x, const mcl::fp::Unit *y, size_t yn, bool isNegative, bool constTime) -{ - mpz_class s; - bool b; - mcl::gmp::setArray(&b, s, y, yn); - assert(b); - if (isNegative) s = -s; - BN::param.glv1.mul(z, x, s, constTime); -} -inline void mulArrayGLV2(G2& z, const G2& x, const mcl::fp::Unit *y, size_t yn, bool isNegative, bool constTime) -{ - mpz_class s; - bool b; - mcl::gmp::setArray(&b, s, y, yn); - assert(b); - if (isNegative) s = -s; - BN::param.glv2.mul(z, x, s, constTime); -} -inline void powArrayGLV2(Fp12& z, const Fp12& x, const mcl::fp::Unit *y, size_t yn, bool isNegative, bool constTime) -{ - mpz_class s; - bool b; - mcl::gmp::setArray(&b, s, y, yn); - assert(b); - if (isNegative) s = -s; - BN::param.glv2.pow(z, x, s, constTime); -} - -/* - Faster Squaring in the Cyclotomic Subgroup of Sixth Degree Extensions - Robert Granger, Michael Scott -*/ -inline void sqrFp4(Fp2& z0, Fp2& z1, const Fp2& x0, const Fp2& x1) -{ -#if 1 - Fp2Dbl T0, T1, T2; - Fp2Dbl::sqrPre(T0, x0); - Fp2Dbl::sqrPre(T1, x1); - Fp2Dbl::mul_xi(T2, T1); - Fp2Dbl::add(T2, T2, T0); - Fp2::add(z1, x0, x1); - Fp2Dbl::mod(z0, T2); - Fp2Dbl::sqrPre(T2, z1); - Fp2Dbl::sub(T2, T2, T0); - Fp2Dbl::sub(T2, T2, T1); - Fp2Dbl::mod(z1, T2); -#else - Fp2 t0, t1, t2; - Fp2::sqr(t0, x0); - Fp2::sqr(t1, x1); - Fp2::mul_xi(z0, t1); - z0 += t0; - Fp2::add(z1, x0, x1); - Fp2::sqr(z1, z1); - z1 -= t0; - z1 -= t1; -#endif -} - -inline void fasterSqr(Fp12& y, const Fp12& x) -{ -#if 0 - Fp12::sqr(y, x); -#else - const Fp2& x0(x.a.a); - const Fp2& x4(x.a.b); - const Fp2& x3(x.a.c); - const Fp2& x2(x.b.a); - const Fp2& x1(x.b.b); - const Fp2& x5(x.b.c); - Fp2& y0(y.a.a); - Fp2& y4(y.a.b); - Fp2& y3(y.a.c); - Fp2& y2(y.b.a); - Fp2& y1(y.b.b); - Fp2& y5(y.b.c); - Fp2 t0, t1; - sqrFp4(t0, t1, x0, x1); - Fp2::sub(y0, t0, x0); - y0 += y0; - y0 += t0; - Fp2::add(y1, t1, x1); - y1 += y1; - y1 += t1; - Fp2 t2, t3; - sqrFp4(t0, t1, x2, x3); - sqrFp4(t2, t3, x4, x5); - Fp2::sub(y4, t0, x4); - y4 += y4; - y4 += t0; - Fp2::add(y5, t1, x5); - y5 += y5; - y5 += t1; - Fp2::mul_xi(t0, t3); - Fp2::add(y2, t0, x2); - y2 += y2; - y2 += t0; - Fp2::sub(y3, t2, x3); - y3 += y3; - y3 += t2; -#endif -} - -/* - y = x^z if z > 0 - = unitaryInv(x^(-z)) if z < 0 -*/ -inline void pow_z(Fp12& y, const Fp12& x) -{ -#if 1 - if (BN::param.cp.curveType == MCL_BN254) { - Compress::fixed_power(y, x); - } else { - Fp12 orgX = x; - y = x; - Fp12 conj; - conj.a = x.a; - Fp6::neg(conj.b, x.b); - for (size_t i = 1; i < BN::param.zReplTbl.size(); i++) { - fasterSqr(y, y); - if (BN::param.zReplTbl[i] > 0) { - y *= orgX; - } else if (BN::param.zReplTbl[i] < 0) { - y *= conj; - } - } - } -#else - Fp12::pow(y, x, param.abs_z); -#endif - if (BN::param.isNegative) { - Fp12::unitaryInv(y, y); - } -} -inline void mul_twist_b(Fp2& y, const Fp2& x) -{ - switch (BN::param.twist_b_type) { - case local::tb_1m1i: - /* - b / xi = 1 - 1i - (a + bi)(1 - 1i) = (a + b) + (b - a)i - */ - { - Fp t; - Fp::add(t, x.a, x.b); - Fp::sub(y.b, x.b, x.a); - y.a = t; - } - return; - case local::tb_1m2i: - /* - b / xi = 1 - 2i - (a + bi)(1 - 2i) = (a + 2b) + (b - 2a)i - */ - { - Fp t; - Fp::sub(t, x.b, x.a); - t -= x.a; - Fp::add(y.a, x.a, x.b); - y.a += x.b; - y.b = t; - } - return; - case local::tb_generic: - Fp2::mul(y, x, BN::param.twist_b); - return; - } -} - -inline void dblLineWithoutP(Fp6& l, G2& Q) -{ - Fp2 t0, t1, t2, t3, t4, t5; - Fp2Dbl T0, T1; - Fp2::sqr(t0, Q.z); - Fp2::mul(t4, Q.x, Q.y); - Fp2::sqr(t1, Q.y); - Fp2::add(t3, t0, t0); - Fp2::divBy2(t4, t4); - Fp2::add(t5, t0, t1); - t0 += t3; - mul_twist_b(t2, t0); - Fp2::sqr(t0, Q.x); - Fp2::add(t3, t2, t2); - t3 += t2; - Fp2::sub(Q.x, t1, t3); - t3 += t1; - Q.x *= t4; - Fp2::divBy2(t3, t3); - Fp2Dbl::sqrPre(T0, t3); - Fp2Dbl::sqrPre(T1, t2); - Fp2Dbl::sub(T0, T0, T1); - Fp2Dbl::add(T1, T1, T1); - Fp2Dbl::sub(T0, T0, T1); - Fp2::add(t3, Q.y, Q.z); - Fp2Dbl::mod(Q.y, T0); - Fp2::sqr(t3, t3); - t3 -= t5; - Fp2::mul(Q.z, t1, t3); - Fp2::sub(l.a, t2, t1); - l.c = t0; - l.b = t3; -} -inline void addLineWithoutP(Fp6& l, G2& R, const G2& Q) -{ - Fp2 t1, t2, t3, t4; - Fp2Dbl T1, T2; - Fp2::mul(t1, R.z, Q.x); - Fp2::mul(t2, R.z, Q.y); - Fp2::sub(t1, R.x, t1); - Fp2::sub(t2, R.y, t2); - Fp2::sqr(t3, t1); - Fp2::mul(R.x, t3, R.x); - Fp2::sqr(t4, t2); - t3 *= t1; - t4 *= R.z; - t4 += t3; - t4 -= R.x; - t4 -= R.x; - R.x -= t4; - Fp2Dbl::mulPre(T1, t2, R.x); - Fp2Dbl::mulPre(T2, t3, R.y); - Fp2Dbl::sub(T2, T1, T2); - Fp2Dbl::mod(R.y, T2); - Fp2::mul(R.x, t1, t4); - Fp2::mul(R.z, t3, R.z); - Fp2::neg(l.c, t2); - Fp2Dbl::mulPre(T1, t2, Q.x); - Fp2Dbl::mulPre(T2, t1, Q.y); - Fp2Dbl::sub(T1, T1, T2); - l.b = t1; - Fp2Dbl::mod(l.a, T1); -} -inline void dblLine(Fp6& l, G2& Q, const G1& P) -{ - dblLineWithoutP(l, Q); - local::updateLine(l, P); -} -inline void addLine(Fp6& l, G2& R, const G2& Q, const G1& P) -{ - addLineWithoutP(l, R, Q); - local::updateLine(l, P); -} -inline void mulFp6cb_by_G1xy(Fp6& y, const Fp6& x, const G1& P) -{ - assert(P.isNormalized()); - if (&y != &x) y.a = x.a; - Fp2::mulFp(y.c, x.c, P.x); - Fp2::mulFp(y.b, x.b, P.y); -} - -/* - x = a + bv + cv^2 - y = (y0, y4, y2) -> (y0, 0, y2, 0, y4, 0) - z = xy = (a + bv + cv^2)(d + ev) - = (ad + ce xi) + ((a + b)(d + e) - ad - be)v + (be + cd)v^2 -*/ -inline void Fp6mul_01(Fp6& z, const Fp6& x, const Fp2& d, const Fp2& e) -{ - const Fp2& a = x.a; - const Fp2& b = x.b; - const Fp2& c = x.c; - Fp2 t0, t1; - Fp2Dbl AD, CE, BE, CD, T; - Fp2Dbl::mulPre(AD, a, d); - Fp2Dbl::mulPre(CE, c, e); - Fp2Dbl::mulPre(BE, b, e); - Fp2Dbl::mulPre(CD, c, d); - Fp2::add(t0, a, b); - Fp2::add(t1, d, e); - Fp2Dbl::mulPre(T, t0, t1); - T -= AD; - T -= BE; - Fp2Dbl::mod(z.b, T); - Fp2Dbl::mul_xi(CE, CE); - AD += CE; - Fp2Dbl::mod(z.a, AD); - BE += CD; - Fp2Dbl::mod(z.c, BE); -} -/* - input - z = (z0 + z1v + z2v^2) + (z3 + z4v + z5v^2)w = Z0 + Z1w - 0 3 4 - x = (a, b, c) -> (b, 0, 0, c, a, 0) = X0 + X1w - X0 = b = (b, 0, 0) - X1 = c + av = (c, a, 0) - w^2 = v, v^3 = xi - output - z <- zx = (Z0X0 + Z1X1v) + ((Z0 + Z1)(X0 + X1) - Z0X0 - Z1X1)w - Z0X0 = Z0 b - Z1X1 = Z1 (c, a, 0) - (Z0 + Z1)(X0 + X1) = (Z0 + Z1) (b + c, a, 0) -*/ -inline void mul_403(Fp12& z, const Fp6& x) -{ - const Fp2& a = x.a; - const Fp2& b = x.b; - const Fp2& c = x.c; -#if 1 - Fp6& z0 = z.a; - Fp6& z1 = z.b; - Fp6 z0x0, z1x1, t0; - Fp2 t1; - Fp2::add(t1, x.b, c); - Fp6::add(t0, z0, z1); - Fp2::mul(z0x0.a, z0.a, b); - Fp2::mul(z0x0.b, z0.b, b); - Fp2::mul(z0x0.c, z0.c, b); - Fp6mul_01(z1x1, z1, c, a); - Fp6mul_01(t0, t0, t1, a); - Fp6::sub(z.b, t0, z0x0); - z.b -= z1x1; - // a + bv + cv^2 = cxi + av + bv^2 - Fp2::mul_xi(z1x1.c, z1x1.c); - Fp2::add(z.a.a, z0x0.a, z1x1.c); - Fp2::add(z.a.b, z0x0.b, z1x1.a); - Fp2::add(z.a.c, z0x0.c, z1x1.b); -#else - Fp2& z0 = z.a.a; - Fp2& z1 = z.a.b; - Fp2& z2 = z.a.c; - Fp2& z3 = z.b.a; - Fp2& z4 = z.b.b; - Fp2& z5 = z.b.c; - Fp2Dbl Z0B, Z1B, Z2B, Z3C, Z4C, Z5C; - Fp2Dbl T0, T1, T2, T3, T4, T5; - Fp2 bc, t; - Fp2::addPre(bc, b, c); - Fp2::addPre(t, z5, z2); - Fp2Dbl::mulPre(T5, t, bc); - Fp2Dbl::mulPre(Z5C, z5, c); - Fp2Dbl::mulPre(Z2B, z2, b); - Fp2Dbl::sub(T5, T5, Z5C); - Fp2Dbl::sub(T5, T5, Z2B); - Fp2Dbl::mulPre(T0, z1, a); - T5 += T0; - - Fp2::addPre(t, z4, z1); - Fp2Dbl::mulPre(T4, t, bc); - Fp2Dbl::mulPre(Z4C, z4, c); - Fp2Dbl::mulPre(Z1B, z1, b); - Fp2Dbl::sub(T4, T4, Z4C); - Fp2Dbl::sub(T4, T4, Z1B); - Fp2Dbl::mulPre(T0, z0, a); - T4 += T0; - - Fp2::addPre(t, z3, z0); - Fp2Dbl::mulPre(T3, t, bc); - Fp2Dbl::mulPre(Z3C, z3, c); - Fp2Dbl::mulPre(Z0B, z0, b); - Fp2Dbl::sub(T3, T3, Z3C); - Fp2Dbl::sub(T3, T3, Z0B); - Fp2::mul_xi(t, z2); - Fp2Dbl::mulPre(T0, t, a); - T3 += T0; - - Fp2Dbl::mulPre(T2, z3, a); - T2 += Z2B; - T2 += Z4C; - - Fp2::mul_xi(t, z5); - Fp2Dbl::mulPre(T1, t, a); - T1 += Z1B; - T1 += Z3C; - - Fp2Dbl::mulPre(T0, z4, a); - T0 += Z5C; - Fp2Dbl::mul_xi(T0, T0); - T0 += Z0B; - - Fp2Dbl::mod(z0, T0); - Fp2Dbl::mod(z1, T1); - Fp2Dbl::mod(z2, T2); - Fp2Dbl::mod(z3, T3); - Fp2Dbl::mod(z4, T4); - Fp2Dbl::mod(z5, T5); -#endif -} -/* - input - z = (z0 + z1v + z2v^2) + (z3 + z4v + z5v^2)w = Z0 + Z1w - 0 1 4 - x = (a, b, c) -> (a, c, 0, 0, b, 0) = X0 + X1w - X0 = (a, c, 0) - X1 = (0, b, 0) - w^2 = v, v^3 = xi - output - z <- zx = (Z0X0 + Z1X1v) + ((Z0 + Z1)(X0 + X1) - Z0X0 - Z1X1)w - Z0X0 = Z0 (a, c, 0) - Z1X1 = Z1 (0, b, 0) = Z1 bv - (Z0 + Z1)(X0 + X1) = (Z0 + Z1) (a, b + c, 0) - - (a + bv + cv^2)v = c xi + av + bv^2 -*/ -inline void mul_041(Fp12& z, const Fp6& x) -{ - const Fp2& a = x.a; - const Fp2& b = x.b; - const Fp2& c = x.c; - Fp6& z0 = z.a; - Fp6& z1 = z.b; - Fp6 z0x0, z1x1, t0; - Fp2 t1; - Fp2::mul(z1x1.a, z1.c, b); - Fp2::mul_xi(z1x1.a, z1x1.a); - Fp2::mul(z1x1.b, z1.a, b); - Fp2::mul(z1x1.c, z1.b, b); - Fp2::add(t1, x.b, c); - Fp6::add(t0, z0, z1); - Fp6mul_01(z0x0, z0, a, c); - Fp6mul_01(t0, t0, a, t1); - Fp6::sub(z.b, t0, z0x0); - z.b -= z1x1; - // a + bv + cv^2 = cxi + av + bv^2 - Fp2::mul_xi(z1x1.c, z1x1.c); - Fp2::add(z.a.a, z0x0.a, z1x1.c); - Fp2::add(z.a.b, z0x0.b, z1x1.a); - Fp2::add(z.a.c, z0x0.c, z1x1.b); -} -inline void mulSparse(Fp12& z, const Fp6& x) -{ - if (BN::param.cp.isMtype) { - mul_041(z, x); - } else { - mul_403(z, x); - } -} -inline void convertFp6toFp12(Fp12& y, const Fp6& x) -{ - if (BN::param.cp.isMtype) { - // (a, b, c) -> (a, c, 0, 0, b, 0) - y.a.a = x.a; - y.b.b = x.b; - y.a.b = x.c; - y.a.c.clear(); - y.b.a.clear(); - y.b.c.clear(); - } else { - // (a, b, c) -> (b, 0, 0, c, a, 0) - y.b.b = x.a; - y.a.a = x.b; - y.b.a = x.c; - y.a.b.clear(); - y.a.c.clear(); - y.b.c.clear(); - } -} -inline void mulSparse2(Fp12& z, const Fp6& x, const Fp6& y) -{ - convertFp6toFp12(z, x); - mulSparse(z, y); -} -inline void mapToCyclotomic(Fp12& y, const Fp12& x) -{ - Fp12 z; - Fp12::Frobenius2(z, x); // z = x^(p^2) - z *= x; // x^(p^2 + 1) - Fp12::inv(y, z); - Fp6::neg(z.b, z.b); // z^(p^6) = conjugate of z - y *= z; -} -/* - Implementing Pairings at the 192-bit Security Level - D.F.Aranha, L.F.Castaneda, E.Knapp, A.Menezes, F.R.Henriquez - Section 4 -*/ -inline void expHardPartBLS12(Fp12& y, const Fp12& x) -{ -#if 0 - const mpz_class& p = param.p; - mpz_class p2 = p * p; - mpz_class p4 = p2 * p2; - Fp12::pow(y, x, (p4 - p2 + 1) / param.r * 3); - return; -#endif -#if 1 - Fp12 a0, a1, a2, a3, a4, a5, a6, a7; - Fp12::unitaryInv(a0, x); // a0 = x^-1 - fasterSqr(a1, a0); // x^-2 - pow_z(a2, x); // x^z - fasterSqr(a3, a2); // x^2z - a1 *= a2; // a1 = x^(z-2) - pow_z(a7, a1); // a7 = x^(z^2-2z) - pow_z(a4, a7); // a4 = x^(z^3-2z^2) - pow_z(a5, a4); // a5 = x^(z^4-2z^3) - a3 *= a5; // a3 = x^(z^4-2z^3+2z) - pow_z(a6, a3); // a6 = x^(z^5-2z^4+2z^2) - - Fp12::unitaryInv(a1, a1); // x^(2-z) - a1 *= a6; // x^(z^5-2z^4+2z^2-z+2) - a1 *= x; // x^(z^5-2z^4+2z^2-z+3) = x^c0 - a3 *= a0; // x^(z^4-2z^3-1) = x^c1 - Fp12::Frobenius(a3, a3); // x^(c1 p) - a1 *= a3; // x^(c0 + c1 p) - a4 *= a2; // x^(z^3-2z^2+z) = x^c2 - Fp12::Frobenius2(a4, a4); // x^(c2 p^2) - a1 *= a4; // x^(c0 + c1 p + c2 p^2) - a7 *= x; // x^(z^2-2z+1) = x^c3 - Fp12::Frobenius3(y, a7); - y *= a1; -#else - Fp12 t1, t2, t3; - Fp12::Frobenius(t1, x); - Fp12::Frobenius(t2, t1); - Fp12::Frobenius(t3, t2); - Fp12::pow(t1, t1, param.exp_c1); - Fp12::pow(t2, t2, param.exp_c2); - Fp12::pow(t3, t3, param.exp_c3); - Fp12::pow(y, x, param.exp_c0); - y *= t1; - y *= t2; - y *= t3; -#endif -} -/* - Faster Hashing to G2 - Laura Fuentes-Castaneda, Edward Knapp, Francisco Rodriguez-Henriquez - section 4.1 - y = x^(d 2z(6z^2 + 3z + 1)) where - p = p(z) = 36z^4 + 36z^3 + 24z^2 + 6z + 1 - r = r(z) = 36z^4 + 36z^3 + 18z^2 + 6z + 1 - d = (p^4 - p^2 + 1) / r - d1 = d 2z(6z^2 + 3z + 1) - = c0 + c1 p + c2 p^2 + c3 p^3 - - c0 = 1 + 6z + 12z^2 + 12z^3 - c1 = 4z + 6z^2 + 12z^3 - c2 = 6z + 6z^2 + 12z^3 - c3 = -1 + 4z + 6z^2 + 12z^3 - x -> x^z -> x^2z -> x^4z -> x^6z -> x^(6z^2) -> x^(12z^2) -> x^(12z^3) - a = x^(6z) x^(6z^2) x^(12z^3) - b = a / (x^2z) - x^d1 = (a x^(6z^2) x) b^p a^(p^2) (b / x)^(p^3) -*/ -inline void expHardPartBN(Fp12& y, const Fp12& x) -{ -#if 0 - const mpz_class& p = param.p; - mpz_class p2 = p * p; - mpz_class p4 = p2 * p2; - Fp12::pow(y, x, (p4 - p2 + 1) / param.r); - return; -#endif -#if 1 - Fp12 a, b; - Fp12 a2, a3; - pow_z(b, x); // x^z - fasterSqr(b, b); // x^2z - fasterSqr(a, b); // x^4z - a *= b; // x^6z - pow_z(a2, a); // x^(6z^2) - a *= a2; - fasterSqr(a3, a2); // x^(12z^2) - pow_z(a3, a3); // x^(12z^3) - a *= a3; - Fp12::unitaryInv(b, b); - b *= a; - a2 *= a; - Fp12::Frobenius2(a, a); - a *= a2; - a *= x; - Fp12::unitaryInv(y, x); - y *= b; - Fp12::Frobenius(b, b); - a *= b; - Fp12::Frobenius3(y, y); - y *= a; -#else - Fp12 t1, t2, t3; - Fp12::Frobenius(t1, x); - Fp12::Frobenius(t2, t1); - Fp12::Frobenius(t3, t2); - Fp12::pow(t1, t1, param.exp_c1); - Fp12::pow(t2, t2, param.exp_c2); - Fp12::pow(y, x, param.exp_c0); - y *= t1; - y *= t2; - y *= t3; -#endif -} -/* - remark : returned value is NOT on a curve -*/ -inline G1 makeAdjP(const G1& P) -{ - G1 adjP; - Fp::add(adjP.x, P.x, P.x); - adjP.x += P.x; - Fp::neg(adjP.y, P.y); - adjP.z = 1; - return adjP; -} - -} // mcl::bn::local - -/* - y = x^((p^12 - 1) / r) - (p^12 - 1) / r = (p^2 + 1) (p^6 - 1) (p^4 - p^2 + 1)/r - (a + bw)^(p^6) = a - bw in Fp12 - (p^4 - p^2 + 1)/r = c0 + c1 p + c2 p^2 + p^3 -*/ -inline void finalExp(Fp12& y, const Fp12& x) -{ -#if 1 - mapToCyclotomic(y, x); -#else - const mpz_class& p = param.p; - mpz_class p2 = p * p; - mpz_class p4 = p2 * p2; - Fp12::pow(y, x, p2 + 1); - Fp12::pow(y, y, p4 * p2 - 1); -#endif - if (BN::param.isBLS12) { - expHardPartBLS12(y, y); - } else { - expHardPartBN(y, y); - } -} -inline void millerLoop(Fp12& f, const G1& P_, const G2& Q_) -{ - G1 P(P_); - G2 Q(Q_); - P.normalize(); - Q.normalize(); - if (Q.isZero()) { - f = 1; - return; - } - assert(BN::param.siTbl[1] == 1); - G2 T = Q; - G2 negQ; - if (BN::param.useNAF) { - G2::neg(negQ, Q); - } - Fp6 d, e, l; - d = e = l = 1; - G1 adjP = makeAdjP(P); - dblLine(d, T, adjP); - addLine(l, T, Q, P); - mulSparse2(f, d, l); - for (size_t i = 2; i < BN::param.siTbl.size(); i++) { - dblLine(l, T, adjP); - Fp12::sqr(f, f); - mulSparse(f, l); - if (BN::param.siTbl[i]) { - if (BN::param.siTbl[i] > 0) { - addLine(l, T, Q, P); - } else { - addLine(l, T, negQ, P); - } - mulSparse(f, l); - } - } - if (BN::param.z < 0) { - G2::neg(T, T); - Fp6::neg(f.b, f.b); - } - if (BN::param.isBLS12) return; - G2 Q1, Q2; - Frobenius(Q1, Q); - Frobenius(Q2, Q1); - G2::neg(Q2, Q2); - addLine(d, T, Q1, P); - addLine(e, T, Q2, P); - Fp12 ft; - mulSparse2(ft, d, e); - f *= ft; -} -inline void pairing(Fp12& f, const G1& P, const G2& Q) -{ - millerLoop(f, P, Q); - finalExp(f, f); -} -/* - allocate param.precomputedQcoeffSize elements of Fp6 for Qcoeff -*/ -inline void precomputeG2(Fp6 *Qcoeff, const G2& Q_) -{ - size_t idx = 0; - G2 Q(Q_); - Q.normalize(); - if (Q.isZero()) { - for (size_t i = 0; i < BN::param.precomputedQcoeffSize; i++) { - Qcoeff[i] = 1; - } - return; - } - G2 T = Q; - G2 negQ; - if (BN::param.useNAF) { - G2::neg(negQ, Q); - } - assert(BN::param.siTbl[1] == 1); - dblLineWithoutP(Qcoeff[idx++], T); - addLineWithoutP(Qcoeff[idx++], T, Q); - for (size_t i = 2; i < BN::param.siTbl.size(); i++) { - dblLineWithoutP(Qcoeff[idx++], T); - if (BN::param.siTbl[i]) { - if (BN::param.siTbl[i] > 0) { - addLineWithoutP(Qcoeff[idx++], T, Q); - } else { - addLineWithoutP(Qcoeff[idx++], T, negQ); - } - } - } - if (BN::param.z < 0) { - G2::neg(T, T); - } - if (BN::param.isBLS12) return; - G2 Q1, Q2; - Frobenius(Q1, Q); - Frobenius(Q2, Q1); - G2::neg(Q2, Q2); - addLineWithoutP(Qcoeff[idx++], T, Q1); - addLineWithoutP(Qcoeff[idx++], T, Q2); - assert(idx == BN::param.precomputedQcoeffSize); -} -/* - millerLoop(e, P, Q) is same as the following - std::vector Qcoeff; - precomputeG2(Qcoeff, Q); - precomputedMillerLoop(e, P, Qcoeff); -*/ -#ifndef CYBOZU_DONT_USE_EXCEPTION -inline void precomputeG2(std::vector& Qcoeff, const G2& Q) -{ - Qcoeff.resize(BN::param.precomputedQcoeffSize); - precomputeG2(Qcoeff.data(), Q); -} -#endif -template -void precomputeG2(bool *pb, Array& Qcoeff, const G2& Q) -{ - *pb = Qcoeff.resize(BN::param.precomputedQcoeffSize); - if (!*pb) return; - precomputeG2(Qcoeff.data(), Q); -} - -inline void precomputedMillerLoop(Fp12& f, const G1& P_, const Fp6* Qcoeff) -{ - G1 P(P_); - P.normalize(); - G1 adjP = makeAdjP(P); - size_t idx = 0; - Fp6 d, e, l; - mulFp6cb_by_G1xy(d, Qcoeff[idx], adjP); - idx++; - - mulFp6cb_by_G1xy(e, Qcoeff[idx], P); - idx++; - mulSparse2(f, d, e); - for (size_t i = 2; i < BN::param.siTbl.size(); i++) { - mulFp6cb_by_G1xy(l, Qcoeff[idx], adjP); - idx++; - Fp12::sqr(f, f); - mulSparse(f, l); - if (BN::param.siTbl[i]) { - mulFp6cb_by_G1xy(l, Qcoeff[idx], P); - idx++; - mulSparse(f, l); - } - } - if (BN::param.z < 0) { - Fp6::neg(f.b, f.b); - } - if (BN::param.isBLS12) return; - mulFp6cb_by_G1xy(d, Qcoeff[idx], P); - idx++; - mulFp6cb_by_G1xy(e, Qcoeff[idx], P); - idx++; - Fp12 ft; - mulSparse2(ft, d, e); - f *= ft; -} -#ifndef CYBOZU_DONT_USE_EXCEPTION -inline void precomputedMillerLoop(Fp12& f, const G1& P, const std::vector& Qcoeff) -{ - precomputedMillerLoop(f, P, Qcoeff.data()); -} -#endif -/* - f = MillerLoop(P1, Q1) x MillerLoop(P2, Q2) - Q2coeff : precomputed Q2 -*/ -inline void precomputedMillerLoop2mixed(Fp12& f, const G1& P1_, const G2& Q1_, const G1& P2_, const Fp6* Q2coeff) -{ - G1 P1(P1_), P2(P2_); - G2 Q1(Q1_); - P1.normalize(); - P2.normalize(); - Q1.normalize(); - if (Q1.isZero()) { - precomputedMillerLoop(f, P2_, Q2coeff); - return; - } - G2 T = Q1; - G2 negQ1; - if (BN::param.useNAF) { - G2::neg(negQ1, Q1); - } - G1 adjP1 = makeAdjP(P1); - G1 adjP2 = makeAdjP(P2); - size_t idx = 0; - Fp6 d1, d2, e1, e2, l1, l2; - dblLine(d1, T, adjP1); - mulFp6cb_by_G1xy(d2, Q2coeff[idx], adjP2); - idx++; - - Fp12 f1, f2; - e1 = 1; - addLine(e1, T, Q1, P1); - mulSparse2(f1, d1, e1); - - mulFp6cb_by_G1xy(e2, Q2coeff[idx], P2); - mulSparse2(f2, d2, e2); - Fp12::mul(f, f1, f2); - idx++; - for (size_t i = 2; i < BN::param.siTbl.size(); i++) { - dblLine(l1, T, adjP1); - mulFp6cb_by_G1xy(l2, Q2coeff[idx], adjP2); - idx++; - Fp12::sqr(f, f); - mulSparse2(f1, l1, l2); - f *= f1; - if (BN::param.siTbl[i]) { - if (BN::param.siTbl[i] > 0) { - addLine(l1, T, Q1, P1); - } else { - addLine(l1, T, negQ1, P1); - } - mulFp6cb_by_G1xy(l2, Q2coeff[idx], P2); - idx++; - mulSparse2(f1, l1, l2); - f *= f1; - } - } - if (BN::param.z < 0) { - G2::neg(T, T); - Fp6::neg(f.b, f.b); - } - if (BN::param.isBLS12) return; - G2 Q11, Q12; - Frobenius(Q11, Q1); - Frobenius(Q12, Q11); - G2::neg(Q12, Q12); - addLine(d1, T, Q11, P1); - mulFp6cb_by_G1xy(d2, Q2coeff[idx], P2); - idx++; - addLine(e1, T, Q12, P1); - mulFp6cb_by_G1xy(e2, Q2coeff[idx], P2); - idx++; - mulSparse2(f1, d1, e1); - mulSparse2(f2, d2, e2); - f *= f1; - f *= f2; -} -/* - f = MillerLoop(P1, Q1) x MillerLoop(P2, Q2) - Q1coeff, Q2coeff : precomputed Q1, Q2 -*/ -inline void precomputedMillerLoop2(Fp12& f, const G1& P1_, const Fp6* Q1coeff, const G1& P2_, const Fp6* Q2coeff) -{ - G1 P1(P1_), P2(P2_); - P1.normalize(); - P2.normalize(); - G1 adjP1 = makeAdjP(P1); - G1 adjP2 = makeAdjP(P2); - size_t idx = 0; - Fp6 d1, d2, e1, e2, l1, l2; - mulFp6cb_by_G1xy(d1, Q1coeff[idx], adjP1); - mulFp6cb_by_G1xy(d2, Q2coeff[idx], adjP2); - idx++; - - Fp12 f1, f2; - mulFp6cb_by_G1xy(e1, Q1coeff[idx], P1); - mulSparse2(f1, d1, e1); - - mulFp6cb_by_G1xy(e2, Q2coeff[idx], P2); - mulSparse2(f2, d2, e2); - Fp12::mul(f, f1, f2); - idx++; - for (size_t i = 2; i < BN::param.siTbl.size(); i++) { - mulFp6cb_by_G1xy(l1, Q1coeff[idx], adjP1); - mulFp6cb_by_G1xy(l2, Q2coeff[idx], adjP2); - idx++; - Fp12::sqr(f, f); - mulSparse2(f1, l1, l2); - f *= f1; - if (BN::param.siTbl[i]) { - mulFp6cb_by_G1xy(l1, Q1coeff[idx], P1); - mulFp6cb_by_G1xy(l2, Q2coeff[idx], P2); - idx++; - mulSparse2(f1, l1, l2); - f *= f1; - } - } - if (BN::param.z < 0) { - Fp6::neg(f.b, f.b); - } - if (BN::param.isBLS12) return; - mulFp6cb_by_G1xy(d1, Q1coeff[idx], P1); - mulFp6cb_by_G1xy(d2, Q2coeff[idx], P2); - idx++; - mulFp6cb_by_G1xy(e1, Q1coeff[idx], P1); - mulFp6cb_by_G1xy(e2, Q2coeff[idx], P2); - idx++; - mulSparse2(f1, d1, e1); - mulSparse2(f2, d2, e2); - f *= f1; - f *= f2; -} -#ifndef CYBOZU_DONT_USE_EXCEPTION -inline void precomputedMillerLoop2(Fp12& f, const G1& P1, const std::vector& Q1coeff, const G1& P2, const std::vector& Q2coeff) -{ - precomputedMillerLoop2(f, P1, Q1coeff.data(), P2, Q2coeff.data()); -} -inline void precomputedMillerLoop2mixed(Fp12& f, const G1& P1, const G2& Q1, const G1& P2, const std::vector& Q2coeff) -{ - precomputedMillerLoop2mixed(f, P1, Q1, P2, Q2coeff.data()); -} -#endif -inline void mapToG1(bool *pb, G1& P, const Fp& x) { *pb = BN::param.mapTo.calcG1(P, x); } -inline void mapToG2(bool *pb, G2& P, const Fp2& x) { *pb = BN::param.mapTo.calcG2(P, x); } -#ifndef CYBOZU_DONT_USE_EXCEPTION -inline void mapToG1(G1& P, const Fp& x) -{ - bool b; - mapToG1(&b, P, x); - if (!b) throw cybozu::Exception("mapToG1:bad value") << x; -} -inline void mapToG2(G2& P, const Fp2& x) -{ - bool b; - mapToG2(&b, P, x); - if (!b) throw cybozu::Exception("mapToG2:bad value") << x; -} -#endif -inline void hashAndMapToG1(G1& P, const void *buf, size_t bufSize) -{ - Fp t; - t.setHashOf(buf, bufSize); - bool b; - mapToG1(&b, P, t); - // It will not happen that the hashed value is equal to special value - assert(b); - (void)b; -} -inline void hashAndMapToG2(G2& P, const void *buf, size_t bufSize) -{ - Fp2 t; - t.a.setHashOf(buf, bufSize); - t.b.clear(); - bool b; - mapToG2(&b, P, t); - // It will not happen that the hashed value is equal to special value - assert(b); - (void)b; -} -#ifndef CYBOZU_DONT_USE_STRING -inline void hashAndMapToG1(G1& P, const std::string& str) -{ - hashAndMapToG1(P, str.c_str(), str.size()); -} -inline void hashAndMapToG2(G2& P, const std::string& str) -{ - hashAndMapToG2(P, str.c_str(), str.size()); -} -#endif -inline void verifyOrderG1(bool doVerify) -{ - if (BN::param.isBLS12) { - G1::setOrder(doVerify ? BN::param.r : 0); - } -} -inline void verifyOrderG2(bool doVerify) -{ - G2::setOrder(doVerify ? BN::param.r : 0); -} - -// backward compatibility -using mcl::CurveParam; -static const CurveParam& CurveFp254BNb = BN254; -static const CurveParam& CurveFp382_1 = BN381_1; -static const CurveParam& CurveFp382_2 = BN381_2; -static const CurveParam& CurveFp462 = BN462; -static const CurveParam& CurveSNARK1 = BN_SNARK1; - -/* - FrobeniusOnTwist for Dtype - p mod 6 = 1, w^6 = xi - Frob(x', y') = phi Frob phi^-1(x', y') - = phi Frob (x' w^2, y' w^3) - = phi (x'^p w^2p, y'^p w^3p) - = (F(x') w^2(p - 1), F(y') w^3(p - 1)) - = (F(x') g^2, F(y') g^3) - - FrobeniusOnTwist for Dtype - use (1/g) instead of g -*/ -inline void Frobenius(G2& D, const G2& S) -{ - Fp2::Frobenius(D.x, S.x); - Fp2::Frobenius(D.y, S.y); - Fp2::Frobenius(D.z, S.z); - D.x *= BN::param.g2; - D.y *= BN::param.g3; -} -inline void Frobenius2(G2& D, const G2& S) -{ - Frobenius(D, S); - Frobenius(D, D); -} -inline void Frobenius3(G2& D, const G2& S) -{ - Frobenius(D, S); - Frobenius(D, D); - Frobenius(D, D); -} - -namespace BN { - -using namespace mcl::bn; // backward compatibility - -inline void init(bool *pb, const mcl::CurveParam& cp = mcl::BN254, fp::Mode mode = fp::FP_AUTO) -{ - local::StaticVar<>::param.init(pb, cp, mode); - if (!*pb) return; - G1::setMulArrayGLV(local::mulArrayGLV1); - G2::setMulArrayGLV(local::mulArrayGLV2); - Fp12::setPowArrayGLV(local::powArrayGLV2); - G1::setCompressedExpression(); - G2::setCompressedExpression(); - *pb = true; -} - -#ifndef CYBOZU_DONT_USE_EXCEPTION -inline void init(const mcl::CurveParam& cp = mcl::BN254, fp::Mode mode = fp::FP_AUTO) -{ - bool b; - init(&b, cp, mode); - if (!b) throw cybozu::Exception("BN:init"); -} -#endif - -} // mcl::bn::BN - -inline void initPairing(bool *pb, const mcl::CurveParam& cp = mcl::BN254, fp::Mode mode = fp::FP_AUTO) -{ - BN::init(pb, cp, mode); -} - -#ifndef CYBOZU_DONT_USE_EXCEPTION -inline void initPairing(const mcl::CurveParam& cp = mcl::BN254, fp::Mode mode = fp::FP_AUTO) -{ - bool b; - BN::init(&b, cp, mode); - if (!b) throw cybozu::Exception("bn:initPairing"); -} -#endif - -inline void initG1only(bool *pb, const mcl::EcParam& para) -{ - local::StaticVar<>::param.initG1only(pb, para); - if (!*pb) return; - G1::setMulArrayGLV(0); - G2::setMulArrayGLV(0); - Fp12::setPowArrayGLV(0); - G1::setCompressedExpression(); - G2::setCompressedExpression(); -} - -inline const G1& getG1basePoint() -{ - return local::StaticVar<>::param.basePoint; -} - -} } // mcl::bn - diff --git a/cases/tool/win/bls_win/include/mcl/bn256.hpp b/cases/tool/win/bls_win/include/mcl/bn256.hpp deleted file mode 100644 index 7a5da7a053..0000000000 --- a/cases/tool/win/bls_win/include/mcl/bn256.hpp +++ /dev/null @@ -1,15 +0,0 @@ -#pragma once -/** - @file - @brief preset class for 256-bit optimal ate pairing over BN curves - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#define MCL_MAX_FP_BIT_SIZE 256 -#include - -namespace mcl { namespace bn256 { -using namespace mcl::bn; -} } - diff --git a/cases/tool/win/bls_win/include/mcl/bn384.hpp b/cases/tool/win/bls_win/include/mcl/bn384.hpp deleted file mode 100644 index 8aa14fe5c9..0000000000 --- a/cases/tool/win/bls_win/include/mcl/bn384.hpp +++ /dev/null @@ -1,15 +0,0 @@ -#pragma once -/** - @file - @brief preset class for 384-bit optimal ate pairing over BN curves - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#define MCL_MAX_FP_BIT_SIZE 384 -#include -// #define MCL_MAX_FR_BIT_SIZE 256 // can set if BLS12_381 - -namespace mcl { namespace bn384 { -using namespace mcl::bn; -} } diff --git a/cases/tool/win/bls_win/include/mcl/bn512.hpp b/cases/tool/win/bls_win/include/mcl/bn512.hpp deleted file mode 100644 index c87ad90356..0000000000 --- a/cases/tool/win/bls_win/include/mcl/bn512.hpp +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once -/** - @file - @brief preset class for 512-bit optimal ate pairing over BN curves - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#define MCL_MAX_FP_BIT_SIZE 512 -#include - -namespace mcl { namespace bn512 { -using namespace mcl::bn; -} } diff --git a/cases/tool/win/bls_win/include/mcl/bn_c256.h b/cases/tool/win/bls_win/include/mcl/bn_c256.h deleted file mode 100644 index 5135e788c7..0000000000 --- a/cases/tool/win/bls_win/include/mcl/bn_c256.h +++ /dev/null @@ -1,11 +0,0 @@ -#pragma once -/** - @file - @brief C API of 256-bit optimal ate pairing over BN curves - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#define MCLBN_FP_UNIT_SIZE 4 -#include - diff --git a/cases/tool/win/bls_win/include/mcl/bn_c384.h b/cases/tool/win/bls_win/include/mcl/bn_c384.h deleted file mode 100644 index 23459e0035..0000000000 --- a/cases/tool/win/bls_win/include/mcl/bn_c384.h +++ /dev/null @@ -1,12 +0,0 @@ -#pragma once -/** - @file - @brief C API of 384-bit optimal ate pairing over BN curves - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#define MCLBN_FP_UNIT_SIZE 6 -#define MCLBN_FR_UNIT_SIZE 6 -#include - diff --git a/cases/tool/win/bls_win/include/mcl/bn_c384_256.h b/cases/tool/win/bls_win/include/mcl/bn_c384_256.h deleted file mode 100644 index bb7045ab9c..0000000000 --- a/cases/tool/win/bls_win/include/mcl/bn_c384_256.h +++ /dev/null @@ -1,12 +0,0 @@ -#pragma once -/** - @file - @brief C API of 384/256-bit optimal ate pairing over BN curves - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#define MCLBN_FP_UNIT_SIZE 6 -#define MCLBN_FR_UNIT_SIZE 4 -#include - diff --git a/cases/tool/win/bls_win/include/mcl/conversion.hpp b/cases/tool/win/bls_win/include/mcl/conversion.hpp deleted file mode 100644 index a5420364b5..0000000000 --- a/cases/tool/win/bls_win/include/mcl/conversion.hpp +++ /dev/null @@ -1,493 +0,0 @@ -#pragma once -#include -#include -/** - @file - @brief convertion bin/dec/hex <=> array - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#ifdef _MSC_VER - #pragma warning(push) - #pragma warning(disable : 4127) -#endif - -namespace mcl { namespace fp { - -namespace local { - -inline bool isSpace(char c) -{ - return c == ' ' || c == '\t' || c == '\r' || c == '\n'; -} -template -bool skipSpace(char *c, InputStream& is) -{ - for (;;) { - if (!cybozu::readChar(c, is)) return false; - if (!isSpace(*c)) return true; - } -} - -#ifndef CYBOZU_DONT_USE_STRING -template -void loadWord(std::string& s, InputStream& is) -{ - s.clear(); - char c; - if (!skipSpace(&c, is)) return; - s = c; - for (;;) { - if (!cybozu::readChar(&c, is)) return; - if (isSpace(c)) break; - s += c; - } -} -#endif - -template -size_t loadWord(char *buf, size_t bufSize, InputStream& is) -{ - if (bufSize == 0) return 0; - char c; - if (!skipSpace(&c, is)) return 0; - size_t pos = 0; - buf[pos++] = c; - for (;;) { - if (!cybozu::readChar(&c, is)) break; - if (isSpace(c)) break; - if (pos == bufSize) return 0; - buf[pos++] = c; - } - return pos; -} - - -/* - q = x[] / x - @retval r = x[] % x - @note accept q == x -*/ -inline uint32_t divU32(uint32_t *q, const uint32_t *x, size_t xn, uint32_t y) -{ - if (xn == 0) return 0; - uint32_t r = 0; - for (int i = (int)xn - 1; i >= 0; i--) { - uint64_t t = (uint64_t(r) << 32) | x[i]; - q[i] = uint32_t(t / y); - r = uint32_t(t % y); - } - return r; -} - -/* - z[0, xn) = x[0, xn) * y - return z[xn] - @note accept z == x -*/ -inline uint32_t mulU32(uint32_t *z, const uint32_t *x, size_t xn, uint32_t y) -{ - uint32_t H = 0; - for (size_t i = 0; i < xn; i++) { - uint32_t t = H; - uint64_t v = uint64_t(x[i]) * y; - uint32_t L = uint32_t(v); - H = uint32_t(v >> 32); - z[i] = t + L; - if (z[i] < t) { - H++; - } - } - return H; -} - -/* - x[0, xn) += y - return 1 if overflow else 0 -*/ -inline uint32_t addU32(uint32_t *x, size_t xn, uint32_t y) -{ - uint32_t t = x[0] + y; - x[0] = t; - if (t >= y) return 0; - for (size_t i = 1; i < xn; i++) { - t = x[i] + 1; - x[i] = t; - if (t != 0) return 0; - } - return 1; -} - -inline uint32_t decToU32(const char *p, size_t size, bool *pb) -{ - assert(0 < size && size <= 9); - uint32_t x = 0; - for (size_t i = 0; i < size; i++) { - char c = p[i]; - if (c < '0' || c > '9') { - *pb = false; - return 0; - } - x = x * 10 + uint32_t(c - '0'); - } - *pb = true; - return x; -} - -inline bool hexCharToUint8(uint8_t *v, char _c) -{ - uint32_t c = uint8_t(_c); // cast is necessary - if (c - '0' <= '9' - '0') { - c = c - '0'; - } else if (c - 'a' <= 'f' - 'a') { - c = (c - 'a') + 10; - } else if (c - 'A' <= 'F' - 'A') { - c = (c - 'A') + 10; - } else { - return false; - } - *v = uint8_t(c); - return true; -} - -template -bool hexToUint(UT *px, const char *p, size_t size) -{ - assert(0 < size && size <= sizeof(UT) * 2); - UT x = 0; - for (size_t i = 0; i < size; i++) { - uint8_t v; - if (!hexCharToUint8(&v, p[i])) return false; - x = x * 16 + v; - } - *px = x; - return true; -} - -template -bool binToUint(UT *px, const char *p, size_t size) -{ - assert(0 < size && size <= sizeof(UT) * 8); - UT x = 0; - for (size_t i = 0; i < size; i++) { - UT c = static_cast(p[i]); - if (c == '0') { - x = x * 2; - } else if (c == '1') { - x = x * 2 + 1; - } else { - return false; - } - } - *px = x; - return true; -} - -inline bool parsePrefix(size_t *readSize, bool *isMinus, int *base, const char *buf, size_t bufSize) -{ - if (bufSize == 0) return false; - size_t pos = 0; - if (*buf == '-') { - if (bufSize == 1) return false; - *isMinus = true; - buf++; - pos++; - } else { - *isMinus = false; - } - if (buf[0] == '0') { - if (bufSize > 1 && buf[1] == 'x') { - if (*base == 0 || *base == 16) { - *base = 16; - pos += 2; - } else { - return false; - } - } else if (bufSize > 1 && buf[1] == 'b') { - if (*base == 0 || *base == 2) { - *base = 2; - pos += 2; - } - } - } - if (*base == 0) *base = 10; - if (pos == bufSize) return false; - *readSize = pos; - return true; -} - -} // mcl::fp::local - -/* - convert little endian x[0, xn) to buf - return written size if success else 0 - data is buf[bufSize - retval, bufSize) - start "0x" if withPrefix -*/ -template -size_t arrayToHex(char *buf, size_t bufSize, const T *x, size_t n, bool withPrefix = false) -{ - size_t fullN = 0; - if (n > 1) { - size_t pos = n - 1; - while (pos > 0) { - if (x[pos]) break; - pos--; - } - if (pos > 0) fullN = pos; - } - const T v = n == 0 ? 0 : x[fullN]; - const size_t topLen = cybozu::getHexLength(v); - const size_t startPos = withPrefix ? 2 : 0; - const size_t lenT = sizeof(T) * 2; - const size_t totalSize = startPos + fullN * lenT + topLen; - if (totalSize > bufSize) return 0; - char *const top = buf + bufSize - totalSize; - if (withPrefix) { - top[0] = '0'; - top[1] = 'x'; - } - cybozu::itohex(&top[startPos], topLen, v, false); - for (size_t i = 0; i < fullN; i++) { - cybozu::itohex(&top[startPos + topLen + i * lenT], lenT, x[fullN - 1 - i], false); - } - return totalSize; -} - -/* - convert little endian x[0, xn) to buf - return written size if success else 0 - data is buf[bufSize - retval, bufSize) - start "0b" if withPrefix -*/ -template -size_t arrayToBin(char *buf, size_t bufSize, const T *x, size_t n, bool withPrefix) -{ - size_t fullN = 0; - if (n > 1) { - size_t pos = n - 1; - while (pos > 0) { - if (x[pos]) break; - pos--; - } - if (pos > 0) fullN = pos; - } - const T v = n == 0 ? 0 : x[fullN]; - const size_t topLen = cybozu::getBinLength(v); - const size_t startPos = withPrefix ? 2 : 0; - const size_t lenT = sizeof(T) * 8; - const size_t totalSize = startPos + fullN * lenT + topLen; - if (totalSize > bufSize) return 0; - char *const top = buf + bufSize - totalSize; - if (withPrefix) { - top[0] = '0'; - top[1] = 'b'; - } - cybozu::itobin(&top[startPos], topLen, v); - for (size_t i = 0; i < fullN; i++) { - cybozu::itobin(&top[startPos + topLen + i * lenT], lenT, x[fullN - 1 - i]); - } - return totalSize; -} - -/* - convert hex string to x[0..xn) - hex string = [0-9a-fA-F]+ -*/ -template -inline size_t hexToArray(UT *x, size_t maxN, const char *buf, size_t bufSize) -{ - if (bufSize == 0) return 0; - const size_t unitLen = sizeof(UT) * 2; - const size_t q = bufSize / unitLen; - const size_t r = bufSize % unitLen; - const size_t requireSize = q + (r ? 1 : 0); - if (maxN < requireSize) return 0; - for (size_t i = 0; i < q; i++) { - if (!local::hexToUint(&x[i], &buf[r + (q - 1 - i) * unitLen], unitLen)) return 0; - } - if (r) { - if (!local::hexToUint(&x[q], buf, r)) return 0; - } - return requireSize; -} -/* - convert bin string to x[0..xn) - bin string = [01]+ -*/ -template -inline size_t binToArray(UT *x, size_t maxN, const char *buf, size_t bufSize) -{ - if (bufSize == 0) return 0; - const size_t unitLen = sizeof(UT) * 8; - const size_t q = bufSize / unitLen; - const size_t r = bufSize % unitLen; - const size_t requireSize = q + (r ? 1 : 0); - if (maxN < requireSize) return 0; - for (size_t i = 0; i < q; i++) { - if (!local::binToUint(&x[i], &buf[r + (q - 1 - i) * unitLen], unitLen)) return 0; - } - if (r) { - if (!local::binToUint(&x[q], buf, r)) return 0; - } - return requireSize; -} - -/* - little endian x[0, xn) to buf - return written size if success else 0 - data is buf[bufSize - retval, bufSize) -*/ -template -inline size_t arrayToDec(char *buf, size_t bufSize, const UT *x, size_t xn) -{ - const size_t maxN = 64; - uint32_t t[maxN]; - if (sizeof(UT) == 8) { - xn *= 2; - } - if (xn > maxN) return 0; - memcpy(t, x, xn * sizeof(t[0])); - - const size_t width = 9; - const uint32_t i1e9 = 1000000000U; - size_t pos = 0; - for (;;) { - uint32_t r = local::divU32(t, t, xn, i1e9); - while (xn > 0 && t[xn - 1] == 0) xn--; - size_t len = cybozu::itoa_local::uintToDec(buf, bufSize - pos, r); - if (len == 0) return 0; - assert(0 < len && len <= width); - if (xn == 0) return pos + len; - // fill (width - len) '0' - for (size_t j = 0; j < width - len; j++) { - buf[bufSize - pos - width + j] = '0'; - } - pos += width; - } -} - -/* - convert buf[0, bufSize) to x[0, num) - return written num if success else 0 -*/ -template -inline size_t decToArray(UT *_x, size_t maxN, const char *buf, size_t bufSize) -{ - assert(sizeof(UT) == 4 || sizeof(UT) == 8); - const size_t width = 9; - const uint32_t i1e9 = 1000000000U; - if (maxN == 0) return 0; - if (sizeof(UT) == 8) { - maxN *= 2; - } - uint32_t *x = reinterpret_cast(_x); - size_t xn = 1; - x[0] = 0; - while (bufSize > 0) { - size_t n = bufSize % width; - if (n == 0) n = width; - bool b; - uint32_t v = local::decToU32(buf, n, &b); - if (!b) return 0; - uint32_t H = local::mulU32(x, x, xn, i1e9); - if (H > 0) { - if (xn == maxN) return 0; - x[xn++] = H; - } - H = local::addU32(x, xn, v); - if (H > 0) { - if (xn == maxN) return 0; - x[xn++] = H; - } - buf += n; - bufSize -= n; - } - if (sizeof(UT) == 8 && (xn & 1)) { - x[xn++] = 0; - } - return xn / (sizeof(UT) / 4); -} - -/* - return retavl is written size if success else 0 - REMARK : the top of string is buf + bufSize - retval -*/ -template -size_t arrayToStr(char *buf, size_t bufSize, const UT *x, size_t n, int base, bool withPrefix) -{ - switch (base) { - case 0: - case 10: - return arrayToDec(buf, bufSize, x, n); - case 16: - return arrayToHex(buf, bufSize, x, n, withPrefix); - case 2: - return arrayToBin(buf, bufSize, x, n, withPrefix); - default: - return 0; - } -} - -template -size_t strToArray(bool *pIsMinus, UT *x, size_t xN, const char *buf, size_t bufSize, int ioMode) -{ - ioMode &= 31; - size_t readSize; - if (!local::parsePrefix(&readSize, pIsMinus, &ioMode, buf, bufSize)) return 0; - switch (ioMode) { - case 10: - return decToArray(x, xN, buf + readSize, bufSize - readSize); - case 16: - return hexToArray(x, xN, buf + readSize, bufSize - readSize); - case 2: - return binToArray(x, xN, buf + readSize, bufSize - readSize); - default: - return 0; - } -} - -/* - convert src[0, n) to (n * 2) byte hex string and write it to os - return true if success else flase -*/ -template -void writeHexStr(bool *pb, OutputStream& os, const void *src, size_t n) -{ - const uint8_t *p = (const uint8_t *)src; - for (size_t i = 0; i < n; i++) { - char hex[2]; - cybozu::itohex(hex, sizeof(hex), p[i], false); - cybozu::write(pb, os, hex, sizeof(hex)); - if (!*pb) return; - } - *pb = true; -} -/* - read hex string from is and convert it to byte array - return written buffer size -*/ -template -inline size_t readHexStr(void *buf, size_t n, InputStream& is) -{ - bool b; - uint8_t *dst = (uint8_t *)buf; - for (size_t i = 0; i < n; i++) { - uint8_t L, H; - char c[2]; - if (cybozu::readSome(c, sizeof(c), is) != sizeof(c)) return i; - b = local::hexCharToUint8(&H, c[0]); - if (!b) return i; - b = local::hexCharToUint8(&L, c[1]); - if (!b) return i; - dst[i] = (H << 4) | L; - } - return n; -} - -} } // mcl::fp - -#ifdef _MSC_VER - #pragma warning(pop) -#endif diff --git a/cases/tool/win/bls_win/include/mcl/curve_type.h b/cases/tool/win/bls_win/include/mcl/curve_type.h deleted file mode 100644 index 9e4a941a0a..0000000000 --- a/cases/tool/win/bls_win/include/mcl/curve_type.h +++ /dev/null @@ -1,35 +0,0 @@ -#pragma once -/** - @file - @brief curve type - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ - -enum { - MCL_BN254 = 0, - MCL_BN381_1 = 1, - MCL_BN381_2 = 2, - MCL_BN462 = 3, - MCL_BN_SNARK1 = 4, - MCL_BLS12_381 = 5, - MCL_BN160 = 6, - - /* - for only G1 - the size of curve must be less or equal to MCLBN_FP_UNIT_SIZE - */ - MCL_EC_BEGIN = 100, - MCL_SECP192K1 = MCL_EC_BEGIN, - MCL_SECP224K1 = 101, - MCL_SECP256K1 = 102, - MCL_SECP384R1 = 103, - MCL_SECP521R1 = 104, - MCL_NIST_P192 = 105, - MCL_NIST_P224 = 106, - MCL_NIST_P256 = 107, - MCL_EC_END = MCL_NIST_P256 + 1, - MCL_NIST_P384 = MCL_SECP384R1, - MCL_NIST_P521 = MCL_SECP521R1 -}; diff --git a/cases/tool/win/bls_win/include/mcl/ec.hpp b/cases/tool/win/bls_win/include/mcl/ec.hpp deleted file mode 100644 index ad6e6db447..0000000000 --- a/cases/tool/win/bls_win/include/mcl/ec.hpp +++ /dev/null @@ -1,1114 +0,0 @@ -#pragma once -/** - @file - @brief elliptic curve - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include -#include -#include -#include - -//#define MCL_EC_USE_AFFINE - -#ifdef _MSC_VER - #pragma warning(push) - #pragma warning(disable : 4458) -#endif - -namespace mcl { - -template class Fp2T; - -namespace ec { - -enum Mode { - Jacobi = 0, - Proj = 1 -}; - -namespace local { - -// x is negative <=> x < half(:=(p+1)/2) <=> a = 1 -template -bool get_a_flag(const Fp& x) -{ - return x.isNegative(); -} - -// Im(x) is negative <=> Im(x) < half(:=(p+1)/2) <=> a = 1 - -template -bool get_a_flag(const mcl::Fp2T& x) -{ - return get_a_flag(x.b); // x = a + bi -} - -} // mcl::ec::local - -} // mcl::ec - -/* - elliptic curve - y^2 = x^3 + ax + b (affine) - y^2 = x^3 + az^4 + bz^6 (Jacobi) x = X/Z^2, y = Y/Z^3 -*/ -template -class EcT : public fp::Serializable > { - enum { - zero, - minus3, - generic - }; -public: - typedef _Fp Fp; - typedef _Fp BaseFp; -#ifdef MCL_EC_USE_AFFINE - Fp x, y; - bool inf_; -#else - Fp x, y, z; - static int mode_; -#endif - static Fp a_; - static Fp b_; - static int specialA_; - static int ioMode_; - /* - order_ is the order of G2 which is the subgroup of EcT. - check the order of the elements if verifyOrder_ is true - */ - static bool verifyOrder_; - static mpz_class order_; - static void (*mulArrayGLV)(EcT& z, const EcT& x, const fp::Unit *y, size_t yn, bool isNegative, bool constTime); - /* default constructor is undefined value */ - EcT() {} - EcT(const Fp& _x, const Fp& _y) - { - set(_x, _y); - } - bool isNormalized() const - { -#ifdef MCL_EC_USE_AFFINE - return true; -#else - return isZero() || z.isOne(); -#endif - } -#ifndef MCL_EC_USE_AFFINE -private: - void normalizeJacobi() - { - assert(!z.isZero()); - Fp rz2; - Fp::inv(z, z); - Fp::sqr(rz2, z); - x *= rz2; - y *= rz2; - y *= z; - z = 1; - } - void normalizeProj() - { - assert(!z.isZero()); - Fp::inv(z, z); - x *= z; - y *= z; - z = 1; - } - // Y^2 == X(X^2 + aZ^4) + bZ^6 - bool isValidJacobi() const - { - Fp y2, x2, z2, z4, t; - Fp::sqr(x2, x); - Fp::sqr(y2, y); - Fp::sqr(z2, z); - Fp::sqr(z4, z2); - Fp::mul(t, z4, a_); - t += x2; - t *= x; - z4 *= z2; - z4 *= b_; - t += z4; - return y2 == t; - } - // (Y^2 - bZ^2)Z = X(X^2 + aZ^2) - bool isValidProj() const - { - Fp y2, x2, z2, t; - Fp::sqr(x2, x); - Fp::sqr(y2, y); - Fp::sqr(z2, z); - Fp::mul(t, a_, z2); - t += x2; - t *= x; - z2 *= b_; - y2 -= z2; - y2 *= z; - return y2 == t; - } -#endif - // y^2 == (x^2 + a)x + b - static inline bool isValid(const Fp& _x, const Fp& _y) - { - Fp y2, t; - Fp::sqr(y2, _y); - Fp::sqr(t, _x); - t += a_; - t *= _x; - t += b_; - return y2 == t; - } -public: - void normalize() - { -#ifndef MCL_EC_USE_AFFINE - if (isNormalized()) return; - switch (mode_) { - case ec::Jacobi: - normalizeJacobi(); - break; - case ec::Proj: - normalizeProj(); - break; - } -#endif - } - static void normalize(EcT& y, const EcT& x) - { - y = x; - y.normalize(); - } - static inline void init(const Fp& a, const Fp& b, int mode = ec::Jacobi) - { - a_ = a; - b_ = b; - if (a_.isZero()) { - specialA_ = zero; - } else if (a_ == -3) { - specialA_ = minus3; - } else { - specialA_ = generic; - } - ioMode_ = 0; - verifyOrder_ = false; - order_ = 0; - mulArrayGLV = 0; -#ifdef MCL_EC_USE_AFFINE - cybozu::disable_warning_unused_variable(mode); -#else - assert(mode == ec::Jacobi || mode == ec::Proj); - mode_ = mode; -#endif - } - /* - verify the order of *this is equal to order if order != 0 - in constructor, set, setStr, operator<<(). - */ - static void setOrder(const mpz_class& order) - { - if (order != 0) { - verifyOrder_ = true; - order_ = order; - } else { - verifyOrder_ = false; - // don't clear order_ because it is used for isValidOrder() - } - } - static void setMulArrayGLV(void f(EcT& z, const EcT& x, const fp::Unit *y, size_t yn, bool isNegative, bool constTime)) - { - mulArrayGLV = f; - } - static inline void init(bool *pb, const char *astr, const char *bstr, int mode = ec::Jacobi) - { - Fp a, b; - a.setStr(pb, astr); - if (!*pb) return; - b.setStr(pb, bstr); - if (!*pb) return; - init(a, b, mode); - } - // verify the order - bool isValidOrder() const - { - EcT Q; - EcT::mulGeneric(Q, *this, order_); - return Q.isZero(); - } - bool isValid() const - { - if (isZero()) return true; - bool isOK = false; -#ifndef MCL_EC_USE_AFFINE - if (!z.isOne()) { - switch (mode_) { - case ec::Jacobi: - isOK = isValidJacobi(); - break; - case ec::Proj: - isOK = isValidProj(); - break; - } - } else -#endif - { - isOK = isValid(x, y); - } - if (!isOK) return false; - if (verifyOrder_) return isValidOrder(); - return true; - } - void set(bool *pb, const Fp& _x, const Fp& _y, bool verify = true) - { - if (verify && !isValid(_x, _y)) { - *pb = false; - return; - } - x = _x; y = _y; -#ifdef MCL_EC_USE_AFFINE - inf_ = false; -#else - z = 1; -#endif - if (verify && verifyOrder_ && !isValidOrder()) { - *pb = false; - } else { - *pb = true; - } - } - void clear() - { -#ifdef MCL_EC_USE_AFFINE - inf_ = true; -#else - z.clear(); -#endif - x.clear(); - y.clear(); - } -#ifndef MCL_EC_USE_AFFINE - static inline void dblNoVerifyInfJacobi(EcT& R, const EcT& P) - { - Fp S, M, t, y2; - Fp::sqr(y2, P.y); - Fp::mul(S, P.x, y2); - const bool isPzOne = P.z.isOne(); - S += S; - S += S; - Fp::sqr(M, P.x); - switch (specialA_) { - case zero: - Fp::add(t, M, M); - M += t; - break; - case minus3: - if (isPzOne) { - M -= P.z; - } else { - Fp::sqr(t, P.z); - Fp::sqr(t, t); - M -= t; - } - Fp::add(t, M, M); - M += t; - break; - case generic: - default: - if (isPzOne) { - t = a_; - } else { - Fp::sqr(t, P.z); - Fp::sqr(t, t); - t *= a_; - } - t += M; - M += M; - M += t; - break; - } - Fp::sqr(R.x, M); - R.x -= S; - R.x -= S; - if (isPzOne) { - R.z = P.y; - } else { - Fp::mul(R.z, P.y, P.z); - } - R.z += R.z; - Fp::sqr(y2, y2); - y2 += y2; - y2 += y2; - y2 += y2; - Fp::sub(R.y, S, R.x); - R.y *= M; - R.y -= y2; - } - static inline void dblNoVerifyInfProj(EcT& R, const EcT& P) - { - const bool isPzOne = P.z.isOne(); - Fp w, t, h; - switch (specialA_) { - case zero: - Fp::sqr(w, P.x); - Fp::add(t, w, w); - w += t; - break; - case minus3: - Fp::sqr(w, P.x); - if (isPzOne) { - w -= P.z; - } else { - Fp::sqr(t, P.z); - w -= t; - } - Fp::add(t, w, w); - w += t; - break; - case generic: - default: - if (isPzOne) { - w = a_; - } else { - Fp::sqr(w, P.z); - w *= a_; - } - Fp::sqr(t, P.x); - w += t; - w += t; - w += t; // w = a z^2 + 3x^2 - break; - } - if (isPzOne) { - R.z = P.y; - } else { - Fp::mul(R.z, P.y, P.z); // s = yz - } - Fp::mul(t, R.z, P.x); - t *= P.y; // xys - t += t; - t += t; // 4(xys) ; 4B - Fp::sqr(h, w); - h -= t; - h -= t; // w^2 - 8B - Fp::mul(R.x, h, R.z); - t -= h; // h is free - t *= w; - Fp::sqr(w, P.y); - R.x += R.x; - R.z += R.z; - Fp::sqr(h, R.z); - w *= h; - R.z *= h; - Fp::sub(R.y, t, w); - R.y -= w; - } -#endif - static inline void dblNoVerifyInf(EcT& R, const EcT& P) - { -#ifdef MCL_EC_USE_AFFINE - Fp t, s; - Fp::sqr(t, P.x); - Fp::add(s, t, t); - t += s; - t += a_; - Fp::add(s, P.y, P.y); - t /= s; - Fp::sqr(s, t); - s -= P.x; - Fp x3; - Fp::sub(x3, s, P.x); - Fp::sub(s, P.x, x3); - s *= t; - Fp::sub(R.y, s, P.y); - R.x = x3; - R.inf_ = false; -#else - switch (mode_) { - case ec::Jacobi: - dblNoVerifyInfJacobi(R, P); - break; - case ec::Proj: - dblNoVerifyInfProj(R, P); - break; - } -#endif - } - static inline void dbl(EcT& R, const EcT& P) - { - if (P.isZero()) { - R.clear(); - return; - } - dblNoVerifyInf(R, P); - } -#ifndef MCL_EC_USE_AFFINE - static inline void addJacobi(EcT& R, const EcT& P, const EcT& Q, bool isPzOne, bool isQzOne) - { - Fp r, U1, S1, H, H3; - if (isPzOne) { - // r = 1; - } else { - Fp::sqr(r, P.z); - } - if (isQzOne) { - U1 = P.x; - if (isPzOne) { - H = Q.x; - } else { - Fp::mul(H, Q.x, r); - } - H -= U1; - S1 = P.y; - } else { - Fp::sqr(S1, Q.z); - Fp::mul(U1, P.x, S1); - if (isPzOne) { - H = Q.x; - } else { - Fp::mul(H, Q.x, r); - } - H -= U1; - S1 *= Q.z; - S1 *= P.y; - } - if (isPzOne) { - r = Q.y; - } else { - r *= P.z; - r *= Q.y; - } - r -= S1; - if (H.isZero()) { - if (r.isZero()) { - dblNoVerifyInf(R, P); - } else { - R.clear(); - } - return; - } - if (isPzOne) { - R.z = H; - } else { - Fp::mul(R.z, P.z, H); - } - if (!isQzOne) { - R.z *= Q.z; - } - Fp::sqr(H3, H); // H^2 - Fp::sqr(R.y, r); // r^2 - U1 *= H3; // U1 H^2 - H3 *= H; // H^3 - R.y -= U1; - R.y -= U1; - Fp::sub(R.x, R.y, H3); - U1 -= R.x; - U1 *= r; - H3 *= S1; - Fp::sub(R.y, U1, H3); - } - static inline void addProj(EcT& R, const EcT& P, const EcT& Q, bool isPzOne, bool isQzOne) - { - Fp r, PyQz, v, A, vv; - if (isQzOne) { - r = P.x; - PyQz = P.y; - } else { - Fp::mul(r, P.x, Q.z); - Fp::mul(PyQz, P.y, Q.z); - } - if (isPzOne) { - A = Q.y; - v = Q.x; - } else { - Fp::mul(A, Q.y, P.z); - Fp::mul(v, Q.x, P.z); - } - v -= r; - if (v.isZero()) { - if (A == PyQz) { - dblNoVerifyInf(R, P); - } else { - R.clear(); - } - return; - } - Fp::sub(R.y, A, PyQz); - Fp::sqr(A, R.y); - Fp::sqr(vv, v); - r *= vv; - vv *= v; - if (isQzOne) { - R.z = P.z; - } else { - if (isPzOne) { - R.z = Q.z; - } else { - Fp::mul(R.z, P.z, Q.z); - } - } - // R.z = 1 if isPzOne && isQzOne - if (isPzOne && isQzOne) { - R.z = vv; - } else { - A *= R.z; - R.z *= vv; - } - A -= vv; - vv *= PyQz; - A -= r; - A -= r; - Fp::mul(R.x, v, A); - r -= A; - R.y *= r; - R.y -= vv; - } -#endif - static inline void add(EcT& R, const EcT& P, const EcT& Q) { - if (P.isZero()) { R = Q; return; } - if (Q.isZero()) { R = P; return; } - if (&P == &Q) { - dblNoVerifyInf(R, P); - return; - } -#ifdef MCL_EC_USE_AFFINE - Fp t; - Fp::neg(t, Q.y); - if (P.y == t) { R.clear(); return; } - Fp::sub(t, Q.x, P.x); - if (t.isZero()) { - dblNoVerifyInf(R, P); - return; - } - Fp s; - Fp::sub(s, Q.y, P.y); - Fp::div(t, s, t); - R.inf_ = false; - Fp x3; - Fp::sqr(x3, t); - x3 -= P.x; - x3 -= Q.x; - Fp::sub(s, P.x, x3); - s *= t; - Fp::sub(R.y, s, P.y); - R.x = x3; -#else - bool isPzOne = P.z.isOne(); - bool isQzOne = Q.z.isOne(); - switch (mode_) { - case ec::Jacobi: - addJacobi(R, P, Q, isPzOne, isQzOne); - break; - case ec::Proj: - addProj(R, P, Q, isPzOne, isQzOne); - break; - } -#endif - } - static inline void sub(EcT& R, const EcT& P, const EcT& Q) - { - EcT nQ; - neg(nQ, Q); - add(R, P, nQ); - } - static inline void neg(EcT& R, const EcT& P) - { - if (P.isZero()) { - R.clear(); - return; - } - R.x = P.x; - Fp::neg(R.y, P.y); -#ifdef MCL_EC_USE_AFFINE - R.inf_ = false; -#else - R.z = P.z; -#endif - } - templateclass FpT> - static inline void mul(EcT& z, const EcT& x, const FpT& y) - { - fp::Block b; - y.getBlock(b); - mulArray(z, x, b.p, b.n, false); - } - static inline void mul(EcT& z, const EcT& x, int64_t y) - { - const uint64_t u = fp::abs_(y); -#if MCL_SIZEOF_UNIT == 8 - mulArray(z, x, &u, 1, y < 0); -#else - uint32_t ua[2] = { uint32_t(u), uint32_t(u >> 32) }; - size_t un = ua[1] ? 2 : 1; - mulArray(z, x, ua, un, y < 0); -#endif - } - static inline void mul(EcT& z, const EcT& x, const mpz_class& y) - { - mulArray(z, x, gmp::getUnit(y), gmp::getUnitSize(y), y < 0); - } - templateclass FpT> - static inline void mulCT(EcT& z, const EcT& x, const FpT& y) - { - fp::Block b; - y.getBlock(b); - mulArray(z, x, b.p, b.n, false, true); - } - static inline void mulCT(EcT& z, const EcT& x, const mpz_class& y) - { - mulArray(z, x, gmp::getUnit(y), gmp::getUnitSize(y), y < 0, true); - } - /* - 0 <= P for any P - (Px, Py) <= (P'x, P'y) iff Px < P'x or Px == P'x and Py <= P'y - @note compare function calls normalize() - */ - template - static inline int compareFunc(const EcT& P_, const EcT& Q_, F comp) - { - const bool QisZero = Q_.isZero(); - if (P_.isZero()) { - if (QisZero) return 0; - return -1; - } - if (QisZero) return 1; - EcT P(P_), Q(Q_); - P.normalize(); - Q.normalize(); - int c = comp(P.x, Q.x); - if (c > 0) return 1; - if (c < 0) return -1; - return comp(P.y, Q.y); - } - static inline int compare(const EcT& P, const EcT& Q) - { - return compareFunc(P, Q, Fp::compare); - } - static inline int compareRaw(const EcT& P, const EcT& Q) - { - return compareFunc(P, Q, Fp::compareRaw); - } - bool isZero() const - { -#ifdef MCL_EC_USE_AFFINE - return inf_; -#else - return z.isZero(); -#endif - } - static inline bool isMSBserialize() - { - return !b_.isZero() && (Fp::BaseFp::getBitSize() & 7) != 0; - } - template - void save(bool *pb, OutputStream& os, int ioMode) const - { - const char sep = *fp::getIoSeparator(ioMode); - if (ioMode & IoEcProj) { - cybozu::writeChar(pb, os, '4'); if (!*pb) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - x.save(pb, os, ioMode); if (!*pb) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - y.save(pb, os, ioMode); if (!*pb) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } -#ifndef MCL_EC_USE_AFFINE - z.save(pb, os, ioMode); -#endif - return; - } - EcT P(*this); - P.normalize(); - if (ioMode & (IoSerialize | IoSerializeHexStr)) { - const size_t n = Fp::getByteSize(); - const size_t adj = isMSBserialize() ? 0 : 1; - uint8_t buf[sizeof(Fp) + 1]; - if (Fp::BaseFp::isETHserialization()) { - const uint8_t c_flag = 0x80; - const uint8_t b_flag = 0x40; - const uint8_t a_flag = 0x20; - if (P.isZero()) { - buf[0] = c_flag | b_flag; - memset(buf + 1, 0, n - 1); - } else { - cybozu::MemoryOutputStream mos(buf, n); - P.x.save(pb, mos, IoSerialize); if (!*pb) return; - uint8_t cba = c_flag; - if (ec::local::get_a_flag(P.y)) cba |= a_flag; - buf[0] |= cba; - } - } else { - /* - if (isMSBserialize()) { - // n bytes - x | (y.isOdd ? 0x80 : 0) - } else { - // n + 1 bytes - (y.isOdd ? 3 : 2), x - } - */ - if (isZero()) { - memset(buf, 0, n + adj); - } else { - cybozu::MemoryOutputStream mos(buf + adj, n); - P.x.save(pb, mos, IoSerialize); if (!*pb) return; - if (adj) { - buf[0] = P.y.isOdd() ? 3 : 2; - } else { - if (P.y.isOdd()) { - buf[n - 1] |= 0x80; - } - } - } - } - if (ioMode & IoSerializeHexStr) { - mcl::fp::writeHexStr(pb, os, buf, n + adj); - } else { - cybozu::write(pb, os, buf, n + adj); - } - return; - } - if (isZero()) { - cybozu::writeChar(pb, os, '0'); - return; - } - if (ioMode & IoEcCompY) { - cybozu::writeChar(pb, os, P.y.isOdd() ? '3' : '2'); - if (!*pb) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - P.x.save(pb, os, ioMode); - } else { - cybozu::writeChar(pb, os, '1'); if (!*pb) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - P.x.save(pb, os, ioMode); if (!*pb) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - P.y.save(pb, os, ioMode); - } - } - template - void load(bool *pb, InputStream& is, int ioMode) - { -#ifdef MCL_EC_USE_AFFINE - inf_ = false; -#else - z = 1; -#endif - if (ioMode & (IoSerialize | IoSerializeHexStr)) { - const size_t n = Fp::getByteSize(); - const size_t adj = isMSBserialize() ? 0 : 1; - const size_t n1 = n + adj; - uint8_t buf[sizeof(Fp) + 1]; - size_t readSize; - if (ioMode & IoSerializeHexStr) { - readSize = mcl::fp::readHexStr(buf, n1, is); - } else { - readSize = cybozu::readSome(buf, n1, is); - } - if (readSize != n1) { - *pb = false; - return; - } - if (Fp::BaseFp::isETHserialization()) { - const uint8_t c_flag = 0x80; - const uint8_t b_flag = 0x40; - const uint8_t a_flag = 0x20; - *pb = false; - if ((buf[0] & c_flag) == 0) { // assume compressed - return; - } - if (buf[0] & b_flag) { // infinity - if (buf[0] != (c_flag | b_flag)) return; - for (size_t i = 1; i < n - 1; i++) { - if (buf[i]) return; - } - clear(); - *pb = true; - return; - } - bool a = (buf[0] & a_flag) != 0; - buf[0] &= ~(c_flag | b_flag | a_flag); - mcl::fp::local::byteSwap(buf, n); - x.setArray(pb, buf, n); - if (!*pb) return; - getWeierstrass(y, x); - if (!Fp::squareRoot(y, y)) { - *pb = false; - return; - } - if (ec::local::get_a_flag(y) ^ a) { - Fp::neg(y, y); - } - return; - } - if (fp::isZeroArray(buf, n1)) { - clear(); - *pb = true; - return; - } - bool isYodd; - if (adj) { - char c = buf[0]; - if (c != 2 && c != 3) { - *pb = false; - return; - } - isYodd = c == 3; - } else { - isYodd = (buf[n - 1] >> 7) != 0; - buf[n - 1] &= 0x7f; - } - x.setArray(pb, buf + adj, n); - if (!*pb) return; - *pb = getYfromX(y, x, isYodd); - if (!*pb) return; - } else { - char c = 0; - if (!fp::local::skipSpace(&c, is)) { - *pb = false; - return; - } - if (c == '0') { - clear(); - *pb = true; - return; - } - x.load(pb, is, ioMode); if (!*pb) return; - if (c == '1') { - y.load(pb, is, ioMode); if (!*pb) return; - if (!isValid(x, y)) { - *pb = false; - return; - } - } else if (c == '2' || c == '3') { - bool isYodd = c == '3'; - *pb = getYfromX(y, x, isYodd); - if (!*pb) return; - } else if (c == '4') { - y.load(pb, is, ioMode); if (!*pb) return; -#ifndef MCL_EC_USE_AFFINE - z.load(pb, is, ioMode); if (!*pb) return; -#endif - } else { - *pb = false; - return; - } - } - if (verifyOrder_ && !isValidOrder()) { - *pb = false; - } else { - *pb = true; - } - } - // deplicated - static void setCompressedExpression(bool compressedExpression = true) - { - if (compressedExpression) { - ioMode_ |= IoEcCompY; - } else { - ioMode_ &= ~IoEcCompY; - } - } - /* - set IoMode for operator<<(), or operator>>() - */ - static void setIoMode(int ioMode) - { - assert(!(ioMode & 0xff)); - ioMode_ = ioMode; - } - static inline int getIoMode() { return Fp::BaseFp::getIoMode() | ioMode_; } - static inline void getWeierstrass(Fp& yy, const Fp& x) - { - Fp t; - Fp::sqr(t, x); - t += a_; - t *= x; - Fp::add(yy, t, b_); - } - static inline bool getYfromX(Fp& y, const Fp& x, bool isYodd) - { - getWeierstrass(y, x); - if (!Fp::squareRoot(y, y)) { - return false; - } - if (y.isOdd() ^ isYodd) { - Fp::neg(y, y); - } - return true; - } - inline friend EcT operator+(const EcT& x, const EcT& y) { EcT z; add(z, x, y); return z; } - inline friend EcT operator-(const EcT& x, const EcT& y) { EcT z; sub(z, x, y); return z; } - template - inline friend EcT operator*(const EcT& x, const INT& y) { EcT z; mul(z, x, y); return z; } - EcT& operator+=(const EcT& x) { add(*this, *this, x); return *this; } - EcT& operator-=(const EcT& x) { sub(*this, *this, x); return *this; } - template - EcT& operator*=(const INT& x) { mul(*this, *this, x); return *this; } - EcT operator-() const { EcT x; neg(x, *this); return x; } - bool operator==(const EcT& rhs) const - { - EcT R; - sub(R, *this, rhs); // QQQ : optimized later - return R.isZero(); - } - bool operator!=(const EcT& rhs) const { return !operator==(rhs); } - bool operator<(const EcT& rhs) const - { - return compare(*this, rhs) < 0; - } - bool operator>=(const EcT& rhs) const { return !operator<(rhs); } - bool operator>(const EcT& rhs) const { return rhs < *this; } - bool operator<=(const EcT& rhs) const { return !operator>(rhs); } - static inline void mulArray(EcT& z, const EcT& x, const fp::Unit *y, size_t yn, bool isNegative, bool constTime = false) - { - if (!constTime && x.isZero()) { - z.clear(); - return; - } - if (mulArrayGLV && (constTime || yn > 1)) { - mulArrayGLV(z, x, y, yn, isNegative, constTime); - return; - } - mulArrayBase(z, x, y, yn, isNegative, constTime); - } - static inline void mulArrayBase(EcT& z, const EcT& x, const fp::Unit *y, size_t yn, bool isNegative, bool constTime) - { - EcT tmp; - const EcT *px = &x; - if (&z == &x) { - tmp = x; - px = &tmp; - } - z.clear(); - fp::powGeneric(z, *px, y, yn, EcT::add, EcT::dbl, EcT::normalize, constTime ? Fp::BaseFp::getBitSize() : 0); - if (isNegative) { - neg(z, z); - } - } - /* - generic mul - */ - static inline void mulGeneric(EcT& z, const EcT& x, const mpz_class& y, bool constTime = false) - { - mulArrayBase(z, x, gmp::getUnit(y), gmp::getUnitSize(y), y < 0, constTime); - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - static inline void init(const std::string& astr, const std::string& bstr, int mode = ec::Jacobi) - { - bool b; - init(&b, astr.c_str(), bstr.c_str(), mode); - if (!b) throw cybozu::Exception("mcl:EcT:init"); - } - void set(const Fp& _x, const Fp& _y, bool verify = true) - { - bool b; - set(&b, _x, _y, verify); - if (!b) throw cybozu::Exception("ec:EcT:set") << _x << _y; - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("EcT:save"); - } - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("EcT:load"); - } -#endif -#ifndef CYBOZU_DONT_USE_STRING - // backward compatilibity - static inline void setParam(const std::string& astr, const std::string& bstr, int mode = ec::Jacobi) - { - init(astr, bstr, mode); - } - friend inline std::istream& operator>>(std::istream& is, EcT& self) - { - self.load(is, fp::detectIoMode(getIoMode(), is)); - return is; - } - friend inline std::ostream& operator<<(std::ostream& os, const EcT& self) - { - self.save(os, fp::detectIoMode(getIoMode(), os)); - return os; - } -#endif -}; - -template Fp EcT::a_; -template Fp EcT::b_; -template int EcT::specialA_; -template int EcT::ioMode_; -template bool EcT::verifyOrder_; -template mpz_class EcT::order_; -template void (*EcT::mulArrayGLV)(EcT& z, const EcT& x, const fp::Unit *y, size_t yn, bool isNegative, bool constTime); -#ifndef MCL_EC_USE_AFFINE -template int EcT::mode_; -#endif - -struct EcParam { - const char *name; - const char *p; - const char *a; - const char *b; - const char *gx; - const char *gy; - const char *n; - size_t bitSize; // bit length of p - int curveType; -}; - -} // mcl - -#ifdef CYBOZU_USE_BOOST -namespace mcl { -template -size_t hash_value(const mcl::EcT& P_) -{ - if (P_.isZero()) return 0; - mcl::EcT P(P_); P.normalize(); - return mcl::hash_value(P.y, mcl::hash_value(P.x)); -} - -} -#else -namespace std { CYBOZU_NAMESPACE_TR1_BEGIN - -template -struct hash > { - size_t operator()(const mcl::EcT& P_) const - { - if (P_.isZero()) return 0; - mcl::EcT P(P_); P.normalize(); - return hash()(P.y, hash()(P.x)); - } -}; - -CYBOZU_NAMESPACE_TR1_END } // std -#endif - -#ifdef _MSC_VER - #pragma warning(pop) -#endif diff --git a/cases/tool/win/bls_win/include/mcl/ecdsa.h b/cases/tool/win/bls_win/include/mcl/ecdsa.h deleted file mode 100644 index daeb6be535..0000000000 --- a/cases/tool/win/bls_win/include/mcl/ecdsa.h +++ /dev/null @@ -1,105 +0,0 @@ -#pragma once -/** - @file - @brief C interface of ECDSA - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include // for uint64_t, uint8_t -#include // for size_t - -#if defined(_MSC_VER) - #ifdef ECDSA_DLL_EXPORT - #define ECDSA_DLL_API __declspec(dllexport) - #else - #define ECDSA_DLL_API __declspec(dllimport) - #ifndef ECDSA_NO_AUTOLINK - #pragma comment(lib, "mclecdsa.lib") - #endif - #endif -#elif defined(__EMSCRIPTEN__) - #define ECDSA_DLL_API __attribute__((used)) -#else - #define ECDSA_DLL_API -#endif - -#ifndef mclSize - #ifdef __EMSCRIPTEN__ - // avoid 64-bit integer - #define mclSize unsigned int - #define mclInt int - #else - // use #define for cgo - #define mclSize size_t - #define mclInt int64_t - #endif -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -#ifdef ECDSA_NOT_DEFINE_STRUCT - -typedef struct ecdsaSecretKey ecdsaSecretKey; -typedef struct ecdsaPublicKey ecdsaPublicKey; -typedef struct ecdsaSignature ecdsaSignature; - -#else - -typedef struct { - uint64_t d[4]; -} ecdsaSecretKey; - -typedef struct { - uint64_t d[4 * 3]; -} ecdsaPublicKey; - -typedef struct { - uint64_t d[4 * 2]; -} ecdsaSignature; - -#endif - -struct ecdsaPrecomputedPublicKey; - -/* - init library - return 0 if success - @note not threadsafe -*/ -ECDSA_DLL_API int ecdsaInit(void); - -// return written byte size if success else 0 -ECDSA_DLL_API mclSize ecdsaSecretKeySerialize(void *buf, mclSize maxBufSize, const ecdsaSecretKey *sec); -ECDSA_DLL_API mclSize ecdsaPublicKeySerialize(void *buf, mclSize maxBufSize, const ecdsaPublicKey *pub); -ECDSA_DLL_API mclSize ecdsaSignatureSerialize(void *buf, mclSize maxBufSize, const ecdsaSignature *sig); - -// return read byte size if sucess else 0 -ECDSA_DLL_API mclSize ecdsaSecretKeyDeserialize(ecdsaSecretKey* sec, const void *buf, mclSize bufSize); -ECDSA_DLL_API mclSize ecdsaPublicKeyDeserialize(ecdsaPublicKey* pub, const void *buf, mclSize bufSize); -ECDSA_DLL_API mclSize ecdsaSignatureDeserialize(ecdsaSignature* sig, const void *buf, mclSize bufSize); - -// return 0 if success -ECDSA_DLL_API int ecdsaSecretKeySetByCSPRNG(ecdsaSecretKey *sec); - -ECDSA_DLL_API void ecdsaGetPublicKey(ecdsaPublicKey *pub, const ecdsaSecretKey *sec); - -ECDSA_DLL_API void ecdsaSign(ecdsaSignature *sig, const ecdsaSecretKey *sec, const void *m, mclSize size); - -// return 1 if valid -ECDSA_DLL_API int ecdsaVerify(const ecdsaSignature *sig, const ecdsaPublicKey *pub, const void *m, mclSize size); -ECDSA_DLL_API int ecdsaVerifyPrecomputed(const ecdsaSignature *sig, const ecdsaPrecomputedPublicKey *pub, const void *m, mclSize size); - -// return nonzero if success -ECDSA_DLL_API ecdsaPrecomputedPublicKey *ecdsaPrecomputedPublicKeyCreate(); -// call this function to avoid memory leak -ECDSA_DLL_API void ecdsaPrecomputedPublicKeyDestroy(ecdsaPrecomputedPublicKey *ppub); -// return 0 if success -ECDSA_DLL_API int ecdsaPrecomputedPublicKeyInit(ecdsaPrecomputedPublicKey *ppub, const ecdsaPublicKey *pub); - -#ifdef __cplusplus -} -#endif - diff --git a/cases/tool/win/bls_win/include/mcl/ecdsa.hpp b/cases/tool/win/bls_win/include/mcl/ecdsa.hpp deleted file mode 100644 index cf3ed3f65d..0000000000 --- a/cases/tool/win/bls_win/include/mcl/ecdsa.hpp +++ /dev/null @@ -1,257 +0,0 @@ -#pragma once -/** - @file - @brief ECDSA - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include -#include -#include -#include - -namespace mcl { namespace ecdsa { - -namespace local { - -#ifndef MCLSHE_WIN_SIZE - #define MCLSHE_WIN_SIZE 10 -#endif -static const size_t winSize = MCLSHE_WIN_SIZE; - -struct FpTag; -struct ZnTag; - -} // mcl::ecdsa::local - -typedef mcl::FpT Fp; -typedef mcl::FpT Zn; -typedef mcl::EcT Ec; - -namespace local { - -struct Param { - mcl::EcParam ecParam; - Ec P; - mcl::fp::WindowMethod Pbase; -}; - -inline Param& getParam() -{ - static Param p; - return p; -} - -inline void be32toZn(Zn& x, const mcl::fp::Unit *buf) -{ - const size_t n = 32; - const unsigned char *p = (const unsigned char*)buf; - unsigned char be[n]; - for (size_t i = 0; i < n; i++) { - be[i] = p[n - 1 - i]; - } - x.setArrayMaskMod(be, n); -} - -/* - y = x mod n -*/ -inline void FpToZn(Zn& y, const Fp& x) -{ - fp::Block b; - x.getBlock(b); - y.setArrayMaskMod(b.p, b.n); -} - -inline void setHashOf(Zn& x, const void *msg, size_t msgSize) -{ - mcl::fp::Unit xBuf[256 / 8 / sizeof(mcl::fp::Unit)]; - uint32_t hashSize = mcl::fp::sha256(xBuf, sizeof(xBuf), msg, (uint32_t)msgSize); - assert(hashSize == sizeof(xBuf)); - (void)hashSize; - be32toZn(x, xBuf); -} - -} // mcl::ecdsa::local - -const local::Param& param = local::getParam(); - -inline void init(bool *pb) -{ - const mcl::EcParam& ecParam = mcl::ecparam::secp256k1; - Zn::init(pb, ecParam.n); - if (!*pb) return; - Fp::init(pb, ecParam.p); - if (!*pb) return; - Ec::init(pb, ecParam.a, ecParam.b); - if (!*pb) return; - Zn::setIoMode(16); - Fp::setIoMode(16); - Ec::setIoMode(mcl::IoEcAffine); - local::Param& p = local::getParam(); - p.ecParam = ecParam; - Fp x, y; - x.setStr(pb, ecParam.gx); - if (!*pb) return; - y.setStr(pb, ecParam.gy); - if (!*pb) return; - p.P.set(pb, x, y); - if (!*pb) return; - p.Pbase.init(pb, p.P, ecParam.bitSize, local::winSize); -} - -#ifndef CYBOZU_DONT_USE_EXCEPTION -inline void init() -{ - bool b; - init(&b); - if (!b) throw cybozu::Exception("ecdsa:init"); -} -#endif - -typedef Zn SecretKey; -typedef Ec PublicKey; - -struct PrecomputedPublicKey { - mcl::fp::WindowMethod pubBase_; - void init(bool *pb, const PublicKey& pub) - { - pubBase_.init(pb, pub, param.ecParam.bitSize, local::winSize); - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - void init(const PublicKey& pub) - { - bool b; - init(&b, pub); - if (!b) throw cybozu::Exception("ecdsa:PrecomputedPublicKey:init"); - } -#endif -}; - -inline void getPublicKey(PublicKey& pub, const SecretKey& sec) -{ - Ec::mul(pub, param.P, sec); - pub.normalize(); -} - -struct Signature : public mcl::fp::Serializable { - Zn r, s; - template - void load(bool *pb, InputStream& is, int ioMode = IoSerialize) - { - r.load(pb, is, ioMode); if (!*pb) return; - s.load(pb, is, ioMode); - } - template - void save(bool *pb, OutputStream& os, int ioMode = IoSerialize) const - { - const char sep = *fp::getIoSeparator(ioMode); - r.save(pb, os, ioMode); if (!*pb) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - s.save(pb, os, ioMode); - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("ecdsa:Signature:load"); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("ecdsa:Signature:save"); - } -#endif -#ifndef CYBOZU_DONT_USE_STRING - friend std::istream& operator>>(std::istream& is, Signature& self) - { - self.load(is, fp::detectIoMode(Ec::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const Signature& self) - { - self.save(os, fp::detectIoMode(Ec::getIoMode(), os)); - return os; - } -#endif -}; - -inline void sign(Signature& sig, const SecretKey& sec, const void *msg, size_t msgSize) -{ - Zn& r = sig.r; - Zn& s = sig.s; - Zn z, k; - local::setHashOf(z, msg, msgSize); - Ec Q; - for (;;) { - k.setByCSPRNG(); - param.Pbase.mul(Q, k); - if (Q.isZero()) continue; - Q.normalize(); - local::FpToZn(r, Q.x); - if (r.isZero()) continue; - Zn::mul(s, r, sec); - s += z; - if (s.isZero()) continue; - s /= k; - return; - } -} - -namespace local { - -inline void mulDispatch(Ec& Q, const PublicKey& pub, const Zn& y) -{ - Ec::mul(Q, pub, y); -} - -inline void mulDispatch(Ec& Q, const PrecomputedPublicKey& ppub, const Zn& y) -{ - ppub.pubBase_.mul(Q, y); -} - -template -inline bool verify(const Signature& sig, const Pub& pub, const void *msg, size_t msgSize) -{ - const Zn& r = sig.r; - const Zn& s = sig.s; - if (r.isZero() || s.isZero()) return false; - Zn z, w, u1, u2; - local::setHashOf(z, msg, msgSize); - Zn::inv(w, s); - Zn::mul(u1, z, w); - Zn::mul(u2, r, w); - Ec Q1, Q2; - param.Pbase.mul(Q1, u1); -// Ec::mul(Q2, pub, u2); - local::mulDispatch(Q2, pub, u2); - Q1 += Q2; - if (Q1.isZero()) return false; - Q1.normalize(); - Zn x; - local::FpToZn(x, Q1.x); - return r == x; -} - -} // mcl::ecdsa::local - -inline bool verify(const Signature& sig, const PublicKey& pub, const void *msg, size_t msgSize) -{ - return local::verify(sig, pub, msg, msgSize); -} - -inline bool verify(const Signature& sig, const PrecomputedPublicKey& ppub, const void *msg, size_t msgSize) -{ - return local::verify(sig, ppub, msg, msgSize); -} - -} } // mcl::ecdsa - diff --git a/cases/tool/win/bls_win/include/mcl/ecparam.hpp b/cases/tool/win/bls_win/include/mcl/ecparam.hpp deleted file mode 100644 index 087bf8b6c0..0000000000 --- a/cases/tool/win/bls_win/include/mcl/ecparam.hpp +++ /dev/null @@ -1,191 +0,0 @@ -#pragma once -/** - @file - @brief Elliptic curve parameter - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include -#include - -namespace mcl { namespace ecparam { - -const struct mcl::EcParam secp160k1 = { - "secp160k1", - "0xfffffffffffffffffffffffffffffffeffffac73", - "0", - "7", - "0x3b4c382ce37aa192a4019e763036f4f5dd4d7ebb", - "0x938cf935318fdced6bc28286531733c3f03c4fee", - "0x100000000000000000001b8fa16dfab9aca16b6b3", - 160, - -1 -}; -// p=2^160 + 7 -const struct mcl::EcParam p160_1 = { - "p160_1", - "0x10000000000000000000000000000000000000007", - "10", - "1343632762150092499701637438970764818528075565078", - "1", - "1236612389951462151661156731535316138439983579284", - "1461501637330902918203683518218126812711137002561", - 161, - -1 -}; -const struct mcl::EcParam secp192k1 = { - "secp192k1", - "0xfffffffffffffffffffffffffffffffffffffffeffffee37", - "0", - "3", - "0xdb4ff10ec057e9ae26b07d0280b7f4341da5d1b1eae06c7d", - "0x9b2f2f6d9c5628a7844163d015be86344082aa88d95e2f9d", - "0xfffffffffffffffffffffffe26f2fc170f69466a74defd8d", - 192, - MCL_SECP192K1 -}; -const struct mcl::EcParam secp224k1 = { - "secp224k1", - "0xfffffffffffffffffffffffffffffffffffffffffffffffeffffe56d", - "0", - "5", - "0xa1455b334df099df30fc28a169a467e9e47075a90f7e650eb6b7a45c", - "0x7e089fed7fba344282cafbd6f7e319f7c0b0bd59e2ca4bdb556d61a5", - "0x10000000000000000000000000001dce8d2ec6184caf0a971769fb1f7", - 224, - MCL_SECP224K1 -}; -const struct mcl::EcParam secp256k1 = { - "secp256k1", - "0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f", - "0", - "7", - "0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798", - "0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8", - "0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141", - 256, - MCL_SECP256K1 -}; -const struct mcl::EcParam secp384r1 = { - "secp384r1", - "0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff", - "-3", - "0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef", - "0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7", - "0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f", - "0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973", - 384, - MCL_SECP384R1 -}; -const struct mcl::EcParam secp521r1 = { - "secp521r1", - "0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "-3", - "0x51953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00", - "0xc6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66", - "0x11839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650", - "0x1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409", - 521, - MCL_SECP521R1 -}; -const struct mcl::EcParam NIST_P192 = { - "NIST_P192", - "0xfffffffffffffffffffffffffffffffeffffffffffffffff", - "-3", - "0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1", - "0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012", - "0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811", - "0xffffffffffffffffffffffff99def836146bc9b1b4d22831", - 192, - MCL_NIST_P192 -}; -const struct mcl::EcParam NIST_P224 = { - "NIST_P224", - "0xffffffffffffffffffffffffffffffff000000000000000000000001", - "-3", - "0xb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4", - "0xb70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21", - "0xbd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34", - "0xffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d", - 224, - MCL_NIST_P224 -}; -const struct mcl::EcParam NIST_P256 = { - "NIST_P256", - "0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff", - "-3", - "0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b", - "0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296", - "0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5", - "0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", - 256, - MCL_NIST_P256 -}; -// same secp384r1 -const struct mcl::EcParam NIST_P384 = { - "NIST_P384", - "0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff", - "-3", - "0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef", - "0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7", - "0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f", - "0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973", - 384, - MCL_NIST_P384 -}; -// same secp521r1 -const struct mcl::EcParam NIST_P521 = { - "NIST_P521", - "0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", - "-3", - "0x051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00", - "0xc6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66", - "0x11839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650", - "0x1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409", - 521, - MCL_NIST_P521 -}; - -} // mcl::ecparam - -#ifndef CYBOZU_DONT_USE_STRING -static inline const mcl::EcParam* getEcParam(const std::string& name) -{ - static const mcl::EcParam *tbl[] = { - &ecparam::p160_1, - &ecparam::secp160k1, - &ecparam::secp192k1, - &ecparam::secp224k1, - &ecparam::secp256k1, - &ecparam::secp384r1, - &ecparam::secp521r1, - - &ecparam::NIST_P192, - &ecparam::NIST_P224, - &ecparam::NIST_P256, - &ecparam::NIST_P384, - &ecparam::NIST_P521, - }; - for (size_t i = 0; i < CYBOZU_NUM_OF_ARRAY(tbl); i++) { - if (name == tbl[i]->name) return tbl[i]; - } - throw cybozu::Exception("mcl::getEcParam:not support name") << name; -} -#endif - -inline const mcl::EcParam* getEcParam(int curve) -{ - switch (curve) { - case MCL_SECP192K1: return &ecparam::secp192k1; - case MCL_SECP224K1: return &ecparam::secp224k1; - case MCL_SECP256K1: return &ecparam::secp256k1; - case MCL_SECP384R1: return &ecparam::secp384r1; - case MCL_NIST_P192: return &ecparam::NIST_P192; - case MCL_NIST_P224: return &ecparam::NIST_P224; - case MCL_NIST_P256: return &ecparam::NIST_P256; - default: return 0; - } -} - -} // mcl diff --git a/cases/tool/win/bls_win/include/mcl/elgamal.hpp b/cases/tool/win/bls_win/include/mcl/elgamal.hpp deleted file mode 100644 index 9cf29198ab..0000000000 --- a/cases/tool/win/bls_win/include/mcl/elgamal.hpp +++ /dev/null @@ -1,582 +0,0 @@ -#pragma once -/** - @file - @brief lifted-ElGamal encryption - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause - - original: - Copyright (c) 2014, National Institute of Advanced Industrial - Science and Technology All rights reserved. - This source file is subject to BSD 3-Clause license. -*/ -#include -#include -#include -#ifndef CYBOZU_UNORDERED_MAP_STD -#include -#endif -#include -#include -#include -#include - -namespace mcl { - -template -struct ElgamalT { - typedef _Ec Ec; - struct CipherText { - Ec c1; - Ec c2; - CipherText() - { - clear(); - } - /* - (c1, c2) = (0, 0) is trivial valid ciphertext for m = 0 - */ - void clear() - { - c1.clear(); - c2.clear(); - } - /* - add encoded message with encoded message - input : this = Enc(m1), c = Enc(m2) - output : this = Enc(m1 + m2) - */ - void add(const CipherText& c) - { - Ec::add(c1, c1, c.c1); - Ec::add(c2, c2, c.c2); - } - /* - mul by x - input : this = Enc(m), x - output : this = Enc(m x) - */ - template - void mul(const N& x) - { - Ec::mul(c1, c1, x); - Ec::mul(c2, c2, x); - } - /* - negative encoded message - input : this = Enc(m) - output : this = Enc(-m) - */ - void neg() - { - Ec::neg(c1, c1); - Ec::neg(c2, c2); - } - template - void load(InputStream& is, int ioMode = IoSerialize) - { - c1.load(is, ioMode); - c2.load(is, ioMode); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - const char sep = *fp::getIoSeparator(ioMode); - c1.save(os, ioMode); - if (sep) cybozu::writeChar(os, sep); - c2.save(os, ioMode); - } - void getStr(std::string& str, int ioMode = 0) const - { - str.clear(); - cybozu::StringOutputStream os(str); - save(os, ioMode); - } - std::string getStr(int ioMode = 0) const - { - std::string str; - getStr(str, ioMode); - return str; - } - void setStr(const std::string& str, int ioMode = 0) - { - cybozu::StringInputStream is(str); - load(is, ioMode); - } - friend inline std::ostream& operator<<(std::ostream& os, const CipherText& self) - { - self.save(os, fp::detectIoMode(Ec::getIoMode(), os)); - return os; - } - friend inline std::istream& operator>>(std::istream& is, CipherText& self) - { - self.load(is, fp::detectIoMode(Ec::getIoMode(), is)); - return is; - } - // obsolete - std::string toStr() const { return getStr(); } - void fromStr(const std::string& str) { setStr(str); } - }; - /* - Zero Knowledge Proof - cipher text with ZKP to ensure m = 0 or 1 - http://dx.doi.org/10.1587/transfun.E96.A.1156 - */ - struct Zkp { - Zn c[2], s[2]; - template - void load(InputStream& is, int ioMode = IoSerialize) - { - c[0].load(is, ioMode); - c[1].load(is, ioMode); - s[0].load(is, ioMode); - s[1].load(is, ioMode); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - const char sep = *fp::getIoSeparator(ioMode); - c[0].save(os, ioMode); - if (sep) cybozu::writeChar(os, sep); - c[1].save(os, ioMode); - if (sep) cybozu::writeChar(os, sep); - s[0].save(os, ioMode); - if (sep) cybozu::writeChar(os, sep); - s[1].save(os, ioMode); - } - void getStr(std::string& str, int ioMode = 0) const - { - str.clear(); - cybozu::StringOutputStream os(str); - save(os, ioMode); - } - std::string getStr(int ioMode = 0) const - { - std::string str; - getStr(str, ioMode); - return str; - } - void setStr(const std::string& str, int ioMode = 0) - { - cybozu::StringInputStream is(str); - load(is, ioMode); - } - friend inline std::ostream& operator<<(std::ostream& os, const Zkp& self) - { - self.save(os, fp::detectIoMode(Ec::getIoMode(), os)); - return os; - } - friend inline std::istream& operator>>(std::istream& is, Zkp& self) - { - self.load(is, fp::detectIoMode(Ec::getIoMode(), is)); - return is; - } - // obsolete - std::string toStr() const { return getStr(); } - void fromStr(const std::string& str) { setStr(str); } - }; - - class PublicKey { - size_t bitSize; - Ec g; - Ec h; - bool enableWindowMethod_; - fp::WindowMethod wm_g; - fp::WindowMethod wm_h; - template - void mulDispatch(Ec& z, const Ec& x, const N& n, const fp::WindowMethod& pw) const - { - if (enableWindowMethod_) { - pw.mul(z, n); - } else { - Ec::mul(z, x, n); - } - } - template - void mulG(Ec& z, const N& n) const { mulDispatch(z, g, n, wm_g); } - template - void mulH(Ec& z, const N& n) const { mulDispatch(z, h, n, wm_h); } - public: - PublicKey() - : bitSize(0) - , enableWindowMethod_(false) - { - } - void enableWindowMethod(size_t winSize = 10) - { - wm_g.init(g, bitSize, winSize); - wm_h.init(h, bitSize, winSize); - enableWindowMethod_ = true; - } - const Ec& getG() const { return g; } - void init(size_t bitSize, const Ec& g, const Ec& h) - { - this->bitSize = bitSize; - this->g = g; - this->h = h; - enableWindowMethod_ = false; - enableWindowMethod(); - } - /* - encode message - input : m - output : c = (c1, c2) = (g^u, h^u g^m) - */ - void enc(CipherText& c, const Zn& m, fp::RandGen rg = fp::RandGen()) const - { - Zn u; - u.setRand(rg); - mulG(c.c1, u); - mulH(c.c2, u); - Ec t; - mulG(t, m); - Ec::add(c.c2, c.c2, t); - } - /* - encode message - input : m = 0 or 1 - output : c (c1, c2), zkp - */ - void encWithZkp(CipherText& c, Zkp& zkp, int m, fp::RandGen rg = fp::RandGen()) const - { - if (m != 0 && m != 1) { - throw cybozu::Exception("elgamal:PublicKey:encWithZkp") << m; - } - Zn u; - u.setRand(rg); - mulG(c.c1, u); - mulH(c.c2, u); - Ec t1, t2; - Ec R1[2], R2[2]; - zkp.c[1-m].setRand(rg); - zkp.s[1-m].setRand(rg); - mulG(t1, zkp.s[1-m]); - Ec::mul(t2, c.c1, zkp.c[1-m]); - Ec::sub(R1[1-m], t1, t2); - mulH(t1, zkp.s[1-m]); - if (m) { - Ec::add(c.c2, c.c2, g); - Ec::mul(t2, c.c2, zkp.c[0]); - } else { - Ec::sub(t2, c.c2, g); - Ec::mul(t2, t2, zkp.c[1]); - } - Ec::sub(R2[1-m], t1, t2); - Zn r; - r.setRand(rg); - mulG(R1[m], r); - mulH(R2[m], r); - std::ostringstream os; - os << R1[0] << R2[0] << R1[1] << R2[1] << c.c1 << c.c2 << g << h; - Zn cc; - cc.setHashOf(os.str()); - zkp.c[m] = cc - zkp.c[1-m]; - zkp.s[m] = r + zkp.c[m] * u; - } - /* - verify cipher text with ZKP - */ - bool verify(const CipherText& c, const Zkp& zkp) const - { - Ec R1[2], R2[2]; - Ec t1, t2; - mulG(t1, zkp.s[0]); - Ec::mul(t2, c.c1, zkp.c[0]); - Ec::sub(R1[0], t1, t2); - mulH(t1, zkp.s[0]); - Ec::mul(t2, c.c2, zkp.c[0]); - Ec::sub(R2[0], t1, t2); - mulG(t1, zkp.s[1]); - Ec::mul(t2, c.c1, zkp.c[1]); - Ec::sub(R1[1], t1, t2); - mulH(t1, zkp.s[1]); - Ec::sub(t2, c.c2, g); - Ec::mul(t2, t2, zkp.c[1]); - Ec::sub(R2[1], t1, t2); - std::ostringstream os; - os << R1[0] << R2[0] << R1[1] << R2[1] << c.c1 << c.c2 << g << h; - Zn cc; - cc.setHashOf(os.str()); - return cc == zkp.c[0] + zkp.c[1]; - } - /* - rerandomize encoded message - input : c = (c1, c2) - output : c = (c1 g^v, c2 h^v) - */ - void rerandomize(CipherText& c, fp::RandGen rg = fp::RandGen()) const - { - Zn v; - v.setRand(rg); - Ec t; - mulG(t, v); - Ec::add(c.c1, c.c1, t); - mulH(t, v); - Ec::add(c.c2, c.c2, t); - } - /* - add encoded message with plain message - input : c = Enc(m1) = (c1, c2), m2 - ouput : c = Enc(m1 + m2) = (c1, c2 g^m2) - */ - template - void add(CipherText& c, const N& m) const - { - Ec fm; - mulG(fm, m); - Ec::add(c.c2, c.c2, fm); - } - template - void load(InputStream& is, int ioMode = IoSerialize) - { - std::string s; - mcl::fp::local::loadWord(s, is); - bitSize = cybozu::atoi(s); - g.load(is, ioMode); - h.load(is, ioMode); - init(bitSize, g, h); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - std::string s = cybozu::itoa(bitSize); - cybozu::write(os, s.c_str(), s.size()); - cybozu::writeChar(os, ' '); - - const char sep = *fp::getIoSeparator(ioMode); - if (sep) cybozu::writeChar(os, sep); - g.save(os, ioMode); - if (sep) cybozu::writeChar(os, sep); - h.save(os, ioMode); - if (sep) cybozu::writeChar(os, sep); - } - void getStr(std::string& str, int ioMode = 0) const - { - str.clear(); - cybozu::StringOutputStream os(str); - save(os, ioMode); - } - std::string getStr(int ioMode = 0) const - { - std::string str; - getStr(str, ioMode); - return str; - } - void setStr(const std::string& str, int ioMode = 0) - { - cybozu::StringInputStream is(str); - load(is, ioMode); - } - friend inline std::ostream& operator<<(std::ostream& os, const PublicKey& self) - { - self.save(os, fp::detectIoMode(Ec::getIoMode(), os)); - return os; - } - friend inline std::istream& operator>>(std::istream& is, PublicKey& self) - { - self.load(is, fp::detectIoMode(Ec::getIoMode(), is)); - return is; - } - // obsolete - std::string toStr() const { return getStr(); } - void fromStr(const std::string& str) { setStr(str); } - }; - /* - create table g^i for i in [rangeMin, rangeMax] - */ - struct PowerCache { -#if (CYBOZU_CPP_VERSION > CYBOZU_CPP_VERSION_CP03) - typedef CYBOZU_NAMESPACE_STD::unordered_map Cache; -#else - typedef std::map Cache; -#endif - Cache cache; - void init(const Ec& g, int rangeMin, int rangeMax) - { - if (rangeMin > rangeMax) throw cybozu::Exception("mcl:ElgamalT:PowerCache:bad range") << rangeMin << rangeMax; - Ec x; - x.clear(); - cache[x] = 0; - for (int i = 1; i <= rangeMax; i++) { - Ec::add(x, x, g); - cache[x] = i; - } - Ec nf; - Ec::neg(nf, g); - x.clear(); - for (int i = -1; i >= rangeMin; i--) { - Ec::add(x, x, nf); - cache[x] = i; - } - } - /* - return m such that g^m = y - */ - int getExponent(const Ec& y, bool *b = 0) const - { - typename Cache::const_iterator i = cache.find(y); - if (i == cache.end()) { - if (b) { - *b = false; - return 0; - } - throw cybozu::Exception("Elgamal:PowerCache:getExponent:not found") << y; - } - if (b) *b = true; - return i->second; - } - void clear() - { - cache.clear(); - } - bool isEmpty() const - { - return cache.empty(); - } - }; - class PrivateKey { - PublicKey pub; - Zn z; - PowerCache cache; - public: - /* - init - input : g - output : (h, z) - Ec = - h = g^z - */ - void init(const Ec& g, size_t bitSize, fp::RandGen rg = fp::RandGen()) - { - Ec h; - z.setRand(rg); - Ec::mul(h, g, z); - pub.init(bitSize, g, h); - } - const PublicKey& getPublicKey() const { return pub; } - /* - decode message by brute-force attack - input : c = (c1, c2) - output : m - M = c2 / c1^z - find m such that M = g^m and |m| < limit - @memo 7sec@core i3 for m = 1e6 - */ - void dec(Zn& m, const CipherText& c, int limit = 100000) const - { - const Ec& g = pub.getG(); - Ec c1z; - Ec::mul(c1z, c.c1, z); - if (c1z == c.c2) { - m = 0; - return; - } - Ec t1(c1z); - Ec t2(c.c2); - for (int i = 1; i < limit; i++) { - Ec::add(t1, t1, g); - if (t1 == c.c2) { - m = i; - return; - } - Ec::add(t2, t2, g); - if (t2 == c1z) { - m = -i; - return; - } - } - throw cybozu::Exception("elgamal:PrivateKey:dec:overflow"); - } - /* - powgm = c2 / c1^z = g^m - */ - void getPowerg(Ec& powgm, const CipherText& c) const - { - Ec c1z; - Ec::mul(c1z, c.c1, z); - Ec::sub(powgm, c.c2, c1z); - } - /* - set range of message to decode quickly - */ - void setCache(int rangeMin, int rangeMax) - { - cache.init(pub.getG(), rangeMin, rangeMax); - } - /* - clear cache - */ - void clearCache() - { - cache.clear(); - } - /* - decode message by lookup table if !cache.isEmpty() - brute-force attack otherwise - input : c = (c1, c2) - b : set false if not found - return m - */ - int dec(const CipherText& c, bool *b = 0) const - { - Ec powgm; - getPowerg(powgm, c); - return cache.getExponent(powgm, b); - } - /* - check whether c is encrypted zero message - */ - bool isZeroMessage(const CipherText& c) const - { - Ec c1z; - Ec::mul(c1z, c.c1, z); - return c.c2 == c1z; - } - template - void load(InputStream& is, int ioMode = IoSerialize) - { - pub.load(is, ioMode); - z.load(is, ioMode); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - const char sep = *fp::getIoSeparator(ioMode); - pub.save(os, ioMode); - if (sep) cybozu::writeChar(os, sep); - z.save(os, ioMode); - } - void getStr(std::string& str, int ioMode = 0) const - { - str.clear(); - cybozu::StringOutputStream os(str); - save(os, ioMode); - } - std::string getStr(int ioMode = 0) const - { - std::string str; - getStr(str, ioMode); - return str; - } - void setStr(const std::string& str, int ioMode = 0) - { - cybozu::StringInputStream is(str); - load(is, ioMode); - } - friend inline std::ostream& operator<<(std::ostream& os, const PrivateKey& self) - { - self.save(os, fp::detectIoMode(Ec::getIoMode(), os)); - return os; - } - friend inline std::istream& operator>>(std::istream& is, PrivateKey& self) - { - self.load(is, fp::detectIoMode(Ec::getIoMode(), is)); - return is; - } - std::string toStr() const { return getStr(); } - void fromStr(const std::string& str) { setStr(str); } - }; -}; - -} // mcl diff --git a/cases/tool/win/bls_win/include/mcl/fp.hpp b/cases/tool/win/bls_win/include/mcl/fp.hpp deleted file mode 100644 index 8c16468150..0000000000 --- a/cases/tool/win/bls_win/include/mcl/fp.hpp +++ /dev/null @@ -1,694 +0,0 @@ -#pragma once -/** - @file - @brief finite field class - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#ifndef CYBOZU_DONT_USE_STRING -#include -#endif -#ifdef _MSC_VER - #pragma warning(push) - #pragma warning(disable : 4127) - #pragma warning(disable : 4458) - #ifndef NOMINMAX - #define NOMINMAX - #endif - #ifndef MCL_NO_AUTOLINK - #ifdef NDEBUG - #pragma comment(lib, "mcl.lib") - #else - #pragma comment(lib, "mcl.lib") - #endif - #endif -#endif -#include -#include -#include -#include -#include -#include - -namespace mcl { - -struct FpTag; -struct ZnTag; - -namespace fp { - -// copy src to dst as little endian -void copyUnitToByteAsLE(uint8_t *dst, const Unit *src, size_t byteSize); -// copy src to dst as little endian -void copyByteToUnitAsLE(Unit *dst, const uint8_t *src, size_t byteSize); - -bool copyAndMask(Unit *y, const void *x, size_t xByteSize, const Op& op, MaskMode maskMode); - -uint64_t getUint64(bool *pb, const fp::Block& b); -int64_t getInt64(bool *pb, fp::Block& b, const fp::Op& op); - -const char *ModeToStr(Mode mode); - -Mode StrToMode(const char *s); - -#ifndef CYBOZU_DONT_USE_STRING -inline Mode StrToMode(const std::string& s) -{ - return StrToMode(s.c_str()); -} -#endif - -inline void dumpUnit(Unit x) -{ -#if MCL_SIZEOF_UNIT == 4 - printf("%08x", (uint32_t)x); -#else - printf("%016llx", (unsigned long long)x); -#endif -} - -bool isEnableJIT(); // 1st call is not threadsafe - -uint32_t sha256(void *out, uint32_t maxOutSize, const void *msg, uint32_t msgSize); -uint32_t sha512(void *out, uint32_t maxOutSize, const void *msg, uint32_t msgSize); - -namespace local { - -inline void byteSwap(void *x, size_t n) -{ - char *p = (char *)x; - for (size_t i = 0; i < n / 2; i++) { - fp::swap_(p[i], p[n - 1 - i]); - } -} - -} // mcl::fp::local - -} // mcl::fp - -template -class FpT : public fp::Serializable, - fp::Operator > > { - typedef fp::Unit Unit; - typedef fp::Operator > Operator; - typedef fp::Serializable, Operator> Serializer; -public: - static const size_t maxSize = (maxBitSize + fp::UnitBitSize - 1) / fp::UnitBitSize; -private: - template friend class FpT; - Unit v_[maxSize]; - static fp::Op op_; - static FpT inv2_; - static int ioMode_; - static bool isETHserialization_; - template friend class FpDblT; - template friend class Fp2T; - template friend struct Fp6T; -public: - typedef FpT BaseFp; - // return pointer to array v_[] - const Unit *getUnit() const { return v_; } - FpT* getFp0() { return this; } - const FpT* getFp0() const { return this; } - static inline size_t getUnitSize() { return op_.N; } - static inline size_t getBitSize() { return op_.bitSize; } - static inline size_t getByteSize() { return (op_.bitSize + 7) / 8; } - static inline const fp::Op& getOp() { return op_; } - void dump() const - { - const size_t N = op_.N; - for (size_t i = 0; i < N; i++) { - fp::dumpUnit(v_[N - 1 - i]); - } - printf("\n"); - } - /* - xi_a is used for Fp2::mul_xi(), where xi = xi_a + i and i^2 = -1 - if xi_a = 0 then asm functions for Fp2 are not generated. - */ - static inline void init(bool *pb, int xi_a, const mpz_class& p, fp::Mode mode = fp::FP_AUTO) - { - assert(maxBitSize <= MCL_MAX_BIT_SIZE); - *pb = op_.init(p, maxBitSize, xi_a, mode); - if (!*pb) return; - { // set oneRep - FpT& one = *reinterpret_cast(op_.oneRep); - one.clear(); - one.v_[0] = 1; - one.toMont(); - } - { // set half - mpz_class half = (op_.mp + 1) / 2; - gmp::getArray(pb, op_.half, op_.N, half); - if (!*pb) return; - } - inv(inv2_, 2); - ioMode_ = 0; - isETHserialization_ = false; -#ifdef MCL_XBYAK_DIRECT_CALL - add = fp::func_ptr_cast(op_.fp_addA_); - if (add == 0) add = addC; - sub = fp::func_ptr_cast(op_.fp_subA_); - if (sub == 0) sub = subC; - neg = fp::func_ptr_cast(op_.fp_negA_); - if (neg == 0) neg = negC; - mul = fp::func_ptr_cast(op_.fp_mulA_); - if (mul == 0) mul = mulC; - sqr = fp::func_ptr_cast(op_.fp_sqrA_); - if (sqr == 0) sqr = sqrC; -#endif - *pb = true; - } - static inline void init(bool *pb, const mpz_class& p, fp::Mode mode = fp::FP_AUTO) - { - init(pb, 0, p, mode); - } - static inline void init(bool *pb, const char *mstr, fp::Mode mode = fp::FP_AUTO) - { - mpz_class p; - gmp::setStr(pb, p, mstr); - if (!*pb) return; - init(pb, p, mode); - } - static inline size_t getModulo(char *buf, size_t bufSize) - { - return gmp::getStr(buf, bufSize, op_.mp); - } - static inline bool isFullBit() { return op_.isFullBit; } - /* - binary patter of p - @note the value of p is zero - */ - static inline const FpT& getP() - { - return *reinterpret_cast(op_.p); - } - bool isOdd() const - { - fp::Block b; - getBlock(b); - return (b.p[0] & 1) == 1; - } - static inline bool squareRoot(FpT& y, const FpT& x) - { - if (isMont()) return op_.sq.get(y, x); - mpz_class mx, my; - bool b = false; - x.getMpz(&b, mx); - if (!b) return false; - b = op_.sq.get(my, mx); - if (!b) return false; - y.setMpz(&b, my); - return b; - } - FpT() {} - FpT(const FpT& x) - { - op_.fp_copy(v_, x.v_); - } - FpT& operator=(const FpT& x) - { - op_.fp_copy(v_, x.v_); - return *this; - } - void clear() - { - op_.fp_clear(v_); - } - FpT(int64_t x) { operator=(x); } - FpT& operator=(int64_t x) - { - if (x == 1) { - op_.fp_copy(v_, op_.oneRep); - } else { - clear(); - if (x) { - int64_t y = x < 0 ? -x : x; - if (sizeof(Unit) == 8) { - v_[0] = y; - } else { - v_[0] = (uint32_t)y; - v_[1] = (uint32_t)(y >> 32); - } - if (x < 0) neg(*this, *this); - toMont(); - } - } - return *this; - } - static inline bool isMont() { return op_.isMont; } - /* - convert normal value to Montgomery value - do nothing is !isMont() - */ - void toMont() - { - if (isMont()) op_.toMont(v_, v_); - } - /* - convert Montgomery value to normal value - do nothing is !isMont() - */ - void fromMont() - { - if (isMont()) op_.fromMont(v_, v_); - } - template - void load(bool *pb, InputStream& is, int ioMode) - { - bool isMinus = false; - *pb = false; - if (ioMode & (IoArray | IoArrayRaw | IoSerialize | IoSerializeHexStr)) { - const size_t n = getByteSize(); - v_[op_.N - 1] = 0; - size_t readSize; - if (ioMode & IoSerializeHexStr) { - readSize = mcl::fp::readHexStr(v_, n, is); - } else { - readSize = cybozu::readSome(v_, n, is); - } - if (isETHserialization_ && ioMode & (IoSerialize | IoSerializeHexStr)) { - fp::local::byteSwap(v_, n); - } - if (readSize != n) return; - } else { - char buf[1024]; - size_t n = fp::local::loadWord(buf, sizeof(buf), is); - if (n == 0) return; - n = fp::strToArray(&isMinus, v_, op_.N, buf, n, ioMode); - if (n == 0) return; - for (size_t i = n; i < op_.N; i++) v_[i] = 0; - } - if (fp::isGreaterOrEqualArray(v_, op_.p, op_.N)) { - return; - } - if (isMinus) { - neg(*this, *this); - } - if (!(ioMode & IoArrayRaw)) { - toMont(); - } - *pb = true; - } - template - void save(bool *pb, OutputStream& os, int ioMode) const - { - const size_t n = getByteSize(); - if (ioMode & (IoArray | IoArrayRaw | IoSerialize | IoSerializeHexStr)) { - if (ioMode & IoArrayRaw) { - cybozu::write(pb, os, v_, n); - } else { - fp::Block b; - getBlock(b); - const char *src = (const char *)b.p; - char rev[fp::maxUnitSize * sizeof(fp::Unit)]; - if (isETHserialization_ && ioMode & (IoSerialize | IoSerializeHexStr)) { - for (size_t i = 0; i < n; i++) { - rev[i] = src[n - 1 - i]; - } - src = rev; - } - if (ioMode & IoSerializeHexStr) { - mcl::fp::writeHexStr(pb, os, src, n); - } else { - cybozu::write(pb, os, src, n); - } - } - return; - } - fp::Block b; - getBlock(b); - // use low 8-bit ioMode for (base, withPrefix) - char buf[2048]; - size_t len = mcl::fp::arrayToStr(buf, sizeof(buf), b.p, b.n, ioMode & 31, (ioMode & IoPrefix) != 0); - if (len == 0) { - *pb = false; - return; - } - cybozu::write(pb, os, buf + sizeof(buf) - len, len); - } - /* - mode = Mod : set x mod p if sizeof(S) * n <= 64 else error - */ - template - void setArray(bool *pb, const S *x, size_t n, mcl::fp::MaskMode mode = fp::NoMask) - { - *pb = fp::copyAndMask(v_, x, sizeof(S) * n, op_, mode); - toMont(); - } - /* - mask x with (1 << bitLen) and subtract p if x >= p - */ - template - void setArrayMaskMod(const S *x, size_t n) - { - fp::copyAndMask(v_, x, sizeof(S) * n, op_, fp::MaskAndMod); - toMont(); - } - - /* - mask x with (1 << (bitLen - 1)) - 1 if x >= p - */ - template - void setArrayMask(const S *x, size_t n) - { - fp::copyAndMask(v_, x, sizeof(S) * n, op_, fp::SmallMask); - toMont(); - } - void getBlock(fp::Block& b) const - { - b.n = op_.N; - if (isMont()) { - op_.fromMont(b.v_, v_); - b.p = &b.v_[0]; - } else { - b.p = &v_[0]; - } - } - void setByCSPRNG(bool *pb, fp::RandGen rg = fp::RandGen()) - { - if (rg.isZero()) rg = fp::RandGen::get(); - rg.read(pb, v_, op_.N * sizeof(Unit)); // byte size - if (!pb) return; - setArrayMask(v_, op_.N); - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - void setByCSPRNG(fp::RandGen rg = fp::RandGen()) - { - bool b; - setByCSPRNG(&b, rg); - if (!b) throw cybozu::Exception("setByCSPRNG"); - } -#endif - void setRand(fp::RandGen rg = fp::RandGen()) // old api - { - setByCSPRNG(rg); - } - /* - hash msg and mask with (1 << (bitLen - 1)) - 1 - */ - void setHashOf(const void *msg, size_t msgSize) - { - char buf[MCL_MAX_HASH_BIT_SIZE / 8]; - uint32_t size = op_.hash(buf, static_cast(sizeof(buf)), msg, static_cast(msgSize)); - setArrayMask(buf, size); - } - void getMpz(bool *pb, mpz_class& x) const - { - fp::Block b; - getBlock(b); - gmp::setArray(pb, x, b.p, b.n); - } - void setMpz(bool *pb, const mpz_class& x) - { - if (x < 0) { - *pb = false; - return; - } - setArray(pb, gmp::getUnit(x), gmp::getUnitSize(x)); - } -#ifdef MCL_XBYAK_DIRECT_CALL - static void (*add)(FpT& z, const FpT& x, const FpT& y); - static inline void addC(FpT& z, const FpT& x, const FpT& y) { op_.fp_add(z.v_, x.v_, y.v_, op_.p); } - static void (*sub)(FpT& z, const FpT& x, const FpT& y); - static inline void subC(FpT& z, const FpT& x, const FpT& y) { op_.fp_sub(z.v_, x.v_, y.v_, op_.p); } - static void (*neg)(FpT& y, const FpT& x); - static inline void negC(FpT& y, const FpT& x) { op_.fp_neg(y.v_, x.v_, op_.p); } - static void (*mul)(FpT& z, const FpT& x, const FpT& y); - static inline void mulC(FpT& z, const FpT& x, const FpT& y) { op_.fp_mul(z.v_, x.v_, y.v_, op_.p); } - static void (*sqr)(FpT& y, const FpT& x); - static inline void sqrC(FpT& y, const FpT& x) { op_.fp_sqr(y.v_, x.v_, op_.p); } -#else - static inline void add(FpT& z, const FpT& x, const FpT& y) { op_.fp_add(z.v_, x.v_, y.v_, op_.p); } - static inline void sub(FpT& z, const FpT& x, const FpT& y) { op_.fp_sub(z.v_, x.v_, y.v_, op_.p); } - static inline void neg(FpT& y, const FpT& x) { op_.fp_neg(y.v_, x.v_, op_.p); } - static inline void mul(FpT& z, const FpT& x, const FpT& y) { op_.fp_mul(z.v_, x.v_, y.v_, op_.p); } - static inline void sqr(FpT& y, const FpT& x) { op_.fp_sqr(y.v_, x.v_, op_.p); } -#endif - static inline void addPre(FpT& z, const FpT& x, const FpT& y) { op_.fp_addPre(z.v_, x.v_, y.v_); } - static inline void subPre(FpT& z, const FpT& x, const FpT& y) { op_.fp_subPre(z.v_, x.v_, y.v_); } - static inline void mulUnit(FpT& z, const FpT& x, const Unit y) - { - if (mulSmallUnit(z, x, y)) return; - op_.fp_mulUnit(z.v_, x.v_, y, op_.p); - } - static inline void inv(FpT& y, const FpT& x) { op_.fp_invOp(y.v_, x.v_, op_); } - static inline void divBy2(FpT& y, const FpT& x) - { -#if 0 - mul(y, x, inv2_); -#else - bool odd = (x.v_[0] & 1) != 0; - op_.fp_shr1(y.v_, x.v_); - if (odd) { - op_.fp_addPre(y.v_, y.v_, op_.half); - } -#endif - } - static inline void divBy4(FpT& y, const FpT& x) - { - divBy2(y, x); // QQQ : optimize later - divBy2(y, y); - } - bool isZero() const { return op_.fp_isZero(v_); } - bool isOne() const { return fp::isEqualArray(v_, op_.oneRep, op_.N); } - static const inline FpT& one() { return *reinterpret_cast(op_.oneRep); } - /* - half = (p + 1) / 2 - return true if half <= x < p - return false if 0 <= x < half - */ - bool isNegative() const - { - fp::Block b; - getBlock(b); - return fp::isGreaterOrEqualArray(b.p, op_.half, op_.N); - } - bool isValid() const - { - return fp::isLessArray(v_, op_.p, op_.N); - } - uint64_t getUint64(bool *pb) const - { - fp::Block b; - getBlock(b); - return fp::getUint64(pb, b); - } - int64_t getInt64(bool *pb) const - { - fp::Block b; - getBlock(b); - return fp::getInt64(pb, b, op_); - } - bool operator==(const FpT& rhs) const { return fp::isEqualArray(v_, rhs.v_, op_.N); } - bool operator!=(const FpT& rhs) const { return !operator==(rhs); } - /* - @note - this compare functions is slow because of calling mul if isMont is true. - */ - static inline int compare(const FpT& x, const FpT& y) - { - fp::Block xb, yb; - x.getBlock(xb); - y.getBlock(yb); - return fp::compareArray(xb.p, yb.p, op_.N); - } - bool isLess(const FpT& rhs) const - { - fp::Block xb, yb; - getBlock(xb); - rhs.getBlock(yb); - return fp::isLessArray(xb.p, yb.p, op_.N); - } - bool operator<(const FpT& rhs) const { return isLess(rhs); } - bool operator>=(const FpT& rhs) const { return !operator<(rhs); } - bool operator>(const FpT& rhs) const { return rhs < *this; } - bool operator<=(const FpT& rhs) const { return !operator>(rhs); } - /* - @note - return unexpected order if isMont is set. - */ - static inline int compareRaw(const FpT& x, const FpT& y) - { - return fp::compareArray(x.v_, y.v_, op_.N); - } - bool isLessRaw(const FpT& rhs) const - { - return fp::isLessArray(v_, rhs.v_, op_.N); - } - /* - set IoMode for operator<<(), or operator>>() - */ - static inline void setIoMode(int ioMode) - { - ioMode_ = ioMode; - } - static void setETHserialization(bool ETHserialization) - { - if (getBitSize() != 381) return; - isETHserialization_ = ETHserialization; - } - static inline bool isETHserialization() { return isETHserialization_; } - static inline int getIoMode() { return ioMode_; } - static inline size_t getModBitLen() { return getBitSize(); } - static inline void setHashFunc(uint32_t hash(void *out, uint32_t maxOutSize, const void *msg, uint32_t msgSize)) - { - op_.hash = hash; - } -#ifndef CYBOZU_DONT_USE_STRING - explicit FpT(const std::string& str, int base = 0) - { - Serializer::setStr(str, base); - } - static inline void getModulo(std::string& pstr) - { - gmp::getStr(pstr, op_.mp); - } - static std::string getModulo() - { - std::string s; - getModulo(s); - return s; - } - void setHashOf(const std::string& msg) - { - setHashOf(msg.data(), msg.size()); - } - // backward compatibility - static inline void setModulo(const std::string& mstr, fp::Mode mode = fp::FP_AUTO) - { - init(mstr, mode); - } - friend inline std::ostream& operator<<(std::ostream& os, const FpT& self) - { - self.save(os, fp::detectIoMode(getIoMode(), os)); - return os; - } - friend inline std::istream& operator>>(std::istream& is, FpT& self) - { - self.load(is, fp::detectIoMode(getIoMode(), is)); - return is; - } -#endif -#ifndef CYBOZU_DONT_USE_EXCEPTION - static inline void init(int xi_a, const mpz_class& p, fp::Mode mode = fp::FP_AUTO) - { - bool b; - init(&b, xi_a, p, mode); - if (!b) throw cybozu::Exception("Fp:init"); - } - static inline void init(int xi_a, const std::string& mstr, fp::Mode mode = fp::FP_AUTO) - { - mpz_class p; - gmp::setStr(p, mstr); - init(xi_a, p, mode); - } - static inline void init(const mpz_class& p, fp::Mode mode = fp::FP_AUTO) - { - init(0, p, mode); - } - static inline void init(const std::string& mstr, fp::Mode mode = fp::FP_AUTO) - { - init(0, mstr, mode); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("fp:save") << ioMode; - } - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("fp:load") << ioMode; - } - /* - throw exception if x >= p - */ - template - void setArray(const S *x, size_t n) - { - bool b; - setArray(&b, x, n); - if (!b) throw cybozu::Exception("Fp:setArray"); - } - void setMpz(const mpz_class& x) - { - bool b; - setMpz(&b, x); - if (!b) throw cybozu::Exception("Fp:setMpz"); - } - uint64_t getUint64() const - { - bool b; - uint64_t v = getUint64(&b); - if (!b) throw cybozu::Exception("Fp:getUint64:large value"); - return v; - } - int64_t getInt64() const - { - bool b; - int64_t v = getInt64(&b); - if (!b) throw cybozu::Exception("Fp:getInt64:large value"); - return v; - } - void getMpz(mpz_class& x) const - { - bool b; - getMpz(&b, x); - if (!b) throw cybozu::Exception("Fp:getMpz"); - } - mpz_class getMpz() const - { - mpz_class x; - getMpz(x); - return x; - } -#endif -}; - -template fp::Op FpT::op_; -template FpT FpT::inv2_; -template int FpT::ioMode_ = IoAuto; -template bool FpT::isETHserialization_ = false; -#ifdef MCL_XBYAK_DIRECT_CALL -template void (*FpT::add)(FpT& z, const FpT& x, const FpT& y); -template void (*FpT::sub)(FpT& z, const FpT& x, const FpT& y); -template void (*FpT::neg)(FpT& y, const FpT& x); -template void (*FpT::mul)(FpT& z, const FpT& x, const FpT& y); -template void (*FpT::sqr)(FpT& y, const FpT& x); -#endif - -} // mcl - -#ifdef CYBOZU_USE_BOOST -namespace mcl { - -template -size_t hash_value(const mcl::FpT& x, size_t v = 0) -{ - return static_cast(cybozu::hash64(x.getUnit(), x.getUnitSize(), v)); -} - -} -#else -namespace std { CYBOZU_NAMESPACE_TR1_BEGIN - -template -struct hash > { - size_t operator()(const mcl::FpT& x, uint64_t v = 0) const - { - return static_cast(cybozu::hash64(x.getUnit(), x.getUnitSize(), v)); - } -}; - -CYBOZU_NAMESPACE_TR1_END } // std::tr1 -#endif - -#ifdef _MSC_VER - #pragma warning(pop) -#endif diff --git a/cases/tool/win/bls_win/include/mcl/fp_tower.hpp b/cases/tool/win/bls_win/include/mcl/fp_tower.hpp deleted file mode 100644 index 8d79a7ee29..0000000000 --- a/cases/tool/win/bls_win/include/mcl/fp_tower.hpp +++ /dev/null @@ -1,1372 +0,0 @@ -#pragma once -/** - @file - @brief finite field extension class - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include - -namespace mcl { - -template -class FpDblT : public fp::Serializable > { - typedef fp::Unit Unit; - Unit v_[Fp::maxSize * 2]; -public: - static size_t getUnitSize() { return Fp::op_.N * 2; } - FpDblT() : v_() - { - } - FpDblT(const FpDblT& rhs) - { - const size_t n = getUnitSize(); - for (size_t i = 0; i < n; i++) { - v_[i] = rhs.v_[i]; - } - } - void dump() const - { - const size_t n = getUnitSize(); - for (size_t i = 0; i < n; i++) { - mcl::fp::dumpUnit(v_[n - 1 - i]); - } - printf("\n"); - } - template - void save(bool *pb, OutputStream& os, int) const - { - char buf[1024]; - size_t n = mcl::fp::arrayToHex(buf, sizeof(buf), v_, getUnitSize()); - if (n == 0) { - *pb = false; - return; - } - cybozu::write(pb, os, buf + sizeof(buf) - n, sizeof(buf)); - } - template - void load(bool *pb, InputStream& is, int) - { - char buf[1024]; - *pb = false; - size_t n = fp::local::loadWord(buf, sizeof(buf), is); - if (n == 0) return; - n = fp::hexToArray(v_, getUnitSize(), buf, n); - if (n == 0) return; - for (size_t i = n; i < getUnitSize(); i++) v_[i] = 0; - *pb = true; - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("FpDblT:save") << ioMode; - } - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("FpDblT:load") << ioMode; - } - void getMpz(mpz_class& x) const - { - bool b; - getMpz(&b, x); - if (!b) throw cybozu::Exception("FpDblT:getMpz"); - } - mpz_class getMpz() const - { - mpz_class x; - getMpz(x); - return x; - } -#endif - void clear() - { - const size_t n = getUnitSize(); - for (size_t i = 0; i < n; i++) { - v_[i] = 0; - } - } - FpDblT& operator=(const FpDblT& rhs) - { - const size_t n = getUnitSize(); - for (size_t i = 0; i < n; i++) { - v_[i] = rhs.v_[i]; - } - return *this; - } - // QQQ : does not check range of x strictly(use for debug) - void setMpz(const mpz_class& x) - { - assert(x >= 0); - const size_t xn = gmp::getUnitSize(x); - const size_t N2 = getUnitSize(); - if (xn > N2) { - assert(0); - return; - } - memcpy(v_, gmp::getUnit(x), xn * sizeof(Unit)); - memset(v_ + xn, 0, (N2 - xn) * sizeof(Unit)); - } - void getMpz(bool *pb, mpz_class& x) const - { - gmp::setArray(pb, x, v_, Fp::op_.N * 2); - } -#ifdef MCL_XBYAK_DIRECT_CALL - static void (*add)(FpDblT& z, const FpDblT& x, const FpDblT& y); - static void (*sub)(FpDblT& z, const FpDblT& x, const FpDblT& y); - static void (*mod)(Fp& z, const FpDblT& xy); - static void (*addPre)(FpDblT& z, const FpDblT& x, const FpDblT& y); - static void (*subPre)(FpDblT& z, const FpDblT& x, const FpDblT& y); - static void addC(FpDblT& z, const FpDblT& x, const FpDblT& y) { Fp::op_.fpDbl_add(z.v_, x.v_, y.v_, Fp::op_.p); } - static void subC(FpDblT& z, const FpDblT& x, const FpDblT& y) { Fp::op_.fpDbl_sub(z.v_, x.v_, y.v_, Fp::op_.p); } - static void modC(Fp& z, const FpDblT& xy) { Fp::op_.fpDbl_mod(z.v_, xy.v_, Fp::op_.p); } - static void addPreC(FpDblT& z, const FpDblT& x, const FpDblT& y) { Fp::op_.fpDbl_addPre(z.v_, x.v_, y.v_); } - static void subPreC(FpDblT& z, const FpDblT& x, const FpDblT& y) { Fp::op_.fpDbl_subPre(z.v_, x.v_, y.v_); } -#else - static void add(FpDblT& z, const FpDblT& x, const FpDblT& y) { Fp::op_.fpDbl_add(z.v_, x.v_, y.v_, Fp::op_.p); } - static void sub(FpDblT& z, const FpDblT& x, const FpDblT& y) { Fp::op_.fpDbl_sub(z.v_, x.v_, y.v_, Fp::op_.p); } - static void mod(Fp& z, const FpDblT& xy) { Fp::op_.fpDbl_mod(z.v_, xy.v_, Fp::op_.p); } - static void addPre(FpDblT& z, const FpDblT& x, const FpDblT& y) { Fp::op_.fpDbl_addPre(z.v_, x.v_, y.v_); } - static void subPre(FpDblT& z, const FpDblT& x, const FpDblT& y) { Fp::op_.fpDbl_subPre(z.v_, x.v_, y.v_); } -#endif - static void mulPreC(FpDblT& xy, const Fp& x, const Fp& y) { Fp::op_.fpDbl_mulPre(xy.v_, x.v_, y.v_); } - static void sqrPreC(FpDblT& xx, const Fp& x) { Fp::op_.fpDbl_sqrPre(xx.v_, x.v_); } - /* - mul(z, x, y) = mulPre(xy, x, y) + mod(z, xy) - */ - static void (*mulPre)(FpDblT& xy, const Fp& x, const Fp& y); - static void (*sqrPre)(FpDblT& xx, const Fp& x); - static void mulUnit(FpDblT& z, const FpDblT& x, Unit y) - { - if (mulSmallUnit(z, x, y)) return; - assert(0); // not supported y - } - static void init() - { - const mcl::fp::Op& op = Fp::getOp(); -#ifdef MCL_XBYAK_DIRECT_CALL - add = fp::func_ptr_cast(op.fpDbl_addA_); - if (add == 0) add = addC; - sub = fp::func_ptr_cast(op.fpDbl_subA_); - if (sub == 0) sub = subC; - mod = fp::func_ptr_cast(op.fpDbl_modA_); - if (mod == 0) mod = modC; - addPre = fp::func_ptr_cast(op.fpDbl_addPre); - if (addPre == 0) addPre = addPreC; - subPre = fp::func_ptr_cast(op.fpDbl_subPre); - if (subPre == 0) subPre = subPreC; -#endif - if (op.fpDbl_mulPreA_) { - mulPre = fp::func_ptr_cast(op.fpDbl_mulPreA_); - } else { - mulPre = mulPreC; - } - if (op.fpDbl_sqrPreA_) { - sqrPre = fp::func_ptr_cast(op.fpDbl_sqrPreA_); - } else { - sqrPre = sqrPreC; - } - } - void operator+=(const FpDblT& x) { add(*this, *this, x); } - void operator-=(const FpDblT& x) { sub(*this, *this, x); } -}; - -#ifdef MCL_XBYAK_DIRECT_CALL -template void (*FpDblT::add)(FpDblT&, const FpDblT&, const FpDblT&); -template void (*FpDblT::sub)(FpDblT&, const FpDblT&, const FpDblT&); -template void (*FpDblT::mod)(Fp&, const FpDblT&); -template void (*FpDblT::addPre)(FpDblT&, const FpDblT&, const FpDblT&); -template void (*FpDblT::subPre)(FpDblT&, const FpDblT&, const FpDblT&); -#endif -template void (*FpDblT::mulPre)(FpDblT&, const Fp&, const Fp&); -template void (*FpDblT::sqrPre)(FpDblT&, const Fp&); - -template struct Fp12T; -template class BNT; -template struct Fp2DblT; -/* - beta = -1 - Fp2 = F[i] / (i^2 + 1) - x = a + bi -*/ -template -class Fp2T : public fp::Serializable, - fp::Operator > > { - typedef _Fp Fp; - typedef fp::Unit Unit; - typedef FpDblT FpDbl; - typedef Fp2DblT Fp2Dbl; - static const size_t gN = 5; - /* - g = xi^((p - 1) / 6) - g[] = { g^2, g^4, g^1, g^3, g^5 } - */ - static Fp2T g[gN]; - static Fp2T g2[gN]; - static Fp2T g3[gN]; -public: - static const Fp2T *get_gTbl() { return &g[0]; } - static const Fp2T *get_g2Tbl() { return &g2[0]; } - static const Fp2T *get_g3Tbl() { return &g3[0]; } - typedef typename Fp::BaseFp BaseFp; - static const size_t maxSize = Fp::maxSize * 2; - static inline size_t getByteSize() { return Fp::getByteSize() * 2; } - void dump() const - { - a.dump(); - b.dump(); - } - Fp a, b; - Fp2T() { } - Fp2T(int64_t a) : a(a), b(0) { } - Fp2T(const Fp& a, const Fp& b) : a(a), b(b) { } - Fp2T(int64_t a, int64_t b) : a(a), b(b) { } - Fp* getFp0() { return &a; } - const Fp* getFp0() const { return &a; } - const Unit* getUnit() const { return a.getUnit(); } - void clear() - { - a.clear(); - b.clear(); - } - void set(const Fp &a_, const Fp &b_) - { - a = a_; - b = b_; - } -#ifdef MCL_XBYAK_DIRECT_CALL - static void (*add)(Fp2T& z, const Fp2T& x, const Fp2T& y); - static void (*sub)(Fp2T& z, const Fp2T& x, const Fp2T& y); - static void (*neg)(Fp2T& y, const Fp2T& x); - static void (*mul)(Fp2T& z, const Fp2T& x, const Fp2T& y); - static void (*sqr)(Fp2T& y, const Fp2T& x); -#else - static void add(Fp2T& z, const Fp2T& x, const Fp2T& y) { addC(z, x, y); } - static void sub(Fp2T& z, const Fp2T& x, const Fp2T& y) { subC(z, x, y); } - static void neg(Fp2T& y, const Fp2T& x) { negC(y, x); } - static void mul(Fp2T& z, const Fp2T& x, const Fp2T& y) { mulC(z, x, y); } - static void sqr(Fp2T& y, const Fp2T& x) { sqrC(y, x); } -#endif - static void (*mul_xi)(Fp2T& y, const Fp2T& x); - static void addPre(Fp2T& z, const Fp2T& x, const Fp2T& y) { Fp::addPre(z.a, x.a, y.a); Fp::addPre(z.b, x.b, y.b); } - static void inv(Fp2T& y, const Fp2T& x) { Fp::op_.fp2_inv(y.a.v_, x.a.v_); } - static void divBy2(Fp2T& y, const Fp2T& x) - { - Fp::divBy2(y.a, x.a); - Fp::divBy2(y.b, x.b); - } - static void divBy4(Fp2T& y, const Fp2T& x) - { - Fp::divBy4(y.a, x.a); - Fp::divBy4(y.b, x.b); - } - static void mulFp(Fp2T& z, const Fp2T& x, const Fp& y) - { - Fp::mul(z.a, x.a, y); - Fp::mul(z.b, x.b, y); - } - template - void setArray(bool *pb, const S *buf, size_t n) - { - assert((n & 1) == 0); - n /= 2; - a.setArray(pb, buf, n); - if (!*pb) return; - b.setArray(pb, buf + n, n); - } - template - void load(bool *pb, InputStream& is, int ioMode) - { - Fp *ap = &a, *bp = &b; - if (Fp::isETHserialization_ && ioMode & (IoSerialize | IoSerializeHexStr)) { - fp::swap_(ap, bp); - } - ap->load(pb, is, ioMode); - if (!*pb) return; - bp->load(pb, is, ioMode); - } - /* - Fp2T = + ' ' + - */ - template - void save(bool *pb, OutputStream& os, int ioMode) const - { - const Fp *ap = &a, *bp = &b; - if (Fp::isETHserialization_ && ioMode & (IoSerialize | IoSerializeHexStr)) { - fp::swap_(ap, bp); - } - const char sep = *fp::getIoSeparator(ioMode); - ap->save(pb, os, ioMode); - if (!*pb) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - bp->save(pb, os, ioMode); - } - bool isZero() const { return a.isZero() && b.isZero(); } - bool isOne() const { return a.isOne() && b.isZero(); } - bool operator==(const Fp2T& rhs) const { return a == rhs.a && b == rhs.b; } - bool operator!=(const Fp2T& rhs) const { return !operator==(rhs); } - /* - return true is a is odd (do not consider b) - this function is for only compressed reprezentation of EC - isOdd() is not good naming. QQQ - */ - bool isOdd() const { return a.isOdd(); } - /* - (a + bi)^2 = (a^2 - b^2) + 2ab i = c + di - A = a^2 - B = b^2 - A = (c +/- sqrt(c^2 + d^2))/2 - b = d / 2a - */ - static inline bool squareRoot(Fp2T& y, const Fp2T& x) - { - Fp t1, t2; - if (x.b.isZero()) { - if (Fp::squareRoot(t1, x.a)) { - y.a = t1; - y.b.clear(); - } else { - bool b = Fp::squareRoot(t1, -x.a); - assert(b); (void)b; - y.a.clear(); - y.b = t1; - } - return true; - } - Fp::sqr(t1, x.a); - Fp::sqr(t2, x.b); - t1 += t2; // c^2 + d^2 - if (!Fp::squareRoot(t1, t1)) return false; - Fp::add(t2, x.a, t1); - Fp::divBy2(t2, t2); - if (!Fp::squareRoot(t2, t2)) { - Fp::sub(t2, x.a, t1); - Fp::divBy2(t2, t2); - bool b = Fp::squareRoot(t2, t2); - assert(b); (void)b; - } - y.a = t2; - t2 += t2; - Fp::inv(t2, t2); - Fp::mul(y.b, x.b, t2); - return true; - } - static void inline norm(Fp& y, const Fp2T& x) - { - Fp aa, bb; - Fp::sqr(aa, x.a); - Fp::sqr(bb, x.b); - Fp::add(y, aa, bb); - } - /* - Frobenius - i^2 = -1 - (a + bi)^p = a + bi^p in Fp - = a + bi if p = 1 mod 4 - = a - bi if p = 3 mod 4 - */ - static void Frobenius(Fp2T& y, const Fp2T& x) - { - if (Fp::getOp().pmod4 == 1) { - if (&y != &x) { - y = x; - } - } else { - if (&y != &x) { - y.a = x.a; - } - Fp::neg(y.b, x.b); - } - } - - static uint32_t get_xi_a() { return Fp::getOp().xi_a; } - static void init() - { -// assert(Fp::maxSize <= 256); - mcl::fp::Op& op = Fp::op_; - assert(op.xi_a); - mul_xi = 0; -#ifdef MCL_XBYAK_DIRECT_CALL - add = fp::func_ptr_cast(op.fp2_addA_); - if (add == 0) add = addC; - sub = fp::func_ptr_cast(op.fp2_subA_); - if (sub == 0) sub = subC; - neg = fp::func_ptr_cast(op.fp2_negA_); - if (neg == 0) neg = negC; - mul = fp::func_ptr_cast(op.fp2_mulA_); - if (mul == 0) mul = mulC; - sqr = fp::func_ptr_cast(op.fp2_sqrA_); - if (sqr == 0) sqr = sqrC; - mul_xi = fp::func_ptr_cast(op.fp2_mul_xiA_); -#endif - op.fp2_inv = fp2_invW; - if (mul_xi == 0) { - if (op.xi_a == 1) { - mul_xi = fp2_mul_xi_1_1iC; - } else { - mul_xi = fp2_mul_xiC; - } - } - FpDblT::init(); - Fp2DblT::init(); - // call init before Fp2::pow because FpDbl is used in Fp2T - const Fp2T xi(op.xi_a, 1); - const mpz_class& p = Fp::getOp().mp; - Fp2T::pow(g[0], xi, (p - 1) / 6); // g = xi^((p-1)/6) - for (size_t i = 1; i < gN; i++) { - g[i] = g[i - 1] * g[0]; - } - /* - permutate [0, 1, 2, 3, 4] => [1, 3, 0, 2, 4] - g[0] = g^2 - g[1] = g^4 - g[2] = g^1 - g[3] = g^3 - g[4] = g^5 - */ - { - Fp2T t = g[0]; - g[0] = g[1]; - g[1] = g[3]; - g[3] = g[2]; - g[2] = t; - } - for (size_t i = 0; i < gN; i++) { - Fp2T t(g[i].a, g[i].b); - if (Fp::getOp().pmod4 == 3) Fp::neg(t.b, t.b); - Fp2T::mul(g2[i], t, g[i]); - g3[i] = g[i] * g2[i]; - } - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("Fp2T:load"); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("Fp2T:save"); - } - template - void setArray(const S *buf, size_t n) - { - bool b; - setArray(&b, buf, n); - if (!b) throw cybozu::Exception("Fp2T:setArray"); - } -#endif -#ifndef CYBOZU_DONT_USE_STRING - Fp2T(const std::string& a, const std::string& b, int base = 0) : a(a, base), b(b, base) {} - friend std::istream& operator>>(std::istream& is, Fp2T& self) - { - self.load(is, fp::detectIoMode(Fp::BaseFp::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const Fp2T& self) - { - self.save(os, fp::detectIoMode(Fp::BaseFp::getIoMode(), os)); - return os; - } -#endif -private: - /* - default Fp2T operator - Fp2T = Fp[i]/(i^2 + 1) - */ - static void addC(Fp2T& z, const Fp2T& x, const Fp2T& y) - { - Fp::add(z.a, x.a, y.a); - Fp::add(z.b, x.b, y.b); - } - static void subC(Fp2T& z, const Fp2T& x, const Fp2T& y) - { - Fp::sub(z.a, x.a, y.a); - Fp::sub(z.b, x.b, y.b); - } - static void negC(Fp2T& y, const Fp2T& x) - { - Fp::neg(y.a, x.a); - Fp::neg(y.b, x.b); - } -#if 0 - /* - x = a + bi, y = c + di, i^2 = -1 - z = xy = (a + bi)(c + di) = (ac - bd) + (ad + bc)i - ad+bc = (a + b)(c + d) - ac - bd - # of mod = 3 - */ - static void fp2_mulW(Unit *z, const Unit *x, const Unit *y) - { - const Fp *px = reinterpret_cast(x); - const Fp *py = reinterpret_cast(y); - const Fp& a = px[0]; - const Fp& b = px[1]; - const Fp& c = py[0]; - const Fp& d = py[1]; - Fp *pz = reinterpret_cast(z); - Fp t1, t2, ac, bd; - Fp::add(t1, a, b); - Fp::add(t2, c, d); - t1 *= t2; // (a + b)(c + d) - Fp::mul(ac, a, c); - Fp::mul(bd, b, d); - Fp::sub(pz[0], ac, bd); // ac - bd - Fp::sub(pz[1], t1, ac); - pz[1] -= bd; - } - static void fp2_mulNFW(Fp2T& z, const Fp2T& x, const Fp2T& y) - { - const fp::Op& op = Fp::op_; - op.fp2_mulNF((Unit*)&z, (const Unit*)&x, (const Unit*)&y, op.p); - } -#endif - static void mulC(Fp2T& z, const Fp2T& x, const Fp2T& y) - { - Fp2Dbl d; - Fp2Dbl::mulPre(d, x, y); - FpDbl::mod(z.a, d.a); - FpDbl::mod(z.b, d.b); - } - /* - x = a + bi, i^2 = -1 - y = x^2 = (a + bi)^2 = (a + b)(a - b) + 2abi - */ - static void sqrC(Fp2T& y, const Fp2T& x) - { - const Fp& a = x.a; - const Fp& b = x.b; -#if 1 // faster than using FpDbl - Fp t1, t2, t3; - Fp::add(t1, b, b); // 2b - t1 *= a; // 2ab - Fp::add(t2, a, b); // a + b - Fp::sub(t3, a, b); // a - b - Fp::mul(y.a, t2, t3); // (a + b)(a - b) - y.b = t1; -#else - Fp t1, t2; - FpDbl d1, d2; - Fp::addPre(t1, b, b); // 2b - FpDbl::mulPre(d2, t1, a); // 2ab - Fp::addPre(t1, a, b); // a + b - Fp::sub(t2, a, b); // a - b - FpDbl::mulPre(d1, t1, t2); // (a + b)(a - b) - FpDbl::mod(py[0], d1); - FpDbl::mod(py[1], d2); -#endif - } - /* - xi = xi_a + i - x = a + bi - y = (a + bi)xi = (a + bi)(xi_a + i) - =(a * x_ia - b) + (a + b xi_a)i - */ - static void fp2_mul_xiC(Fp2T& y, const Fp2T& x) - { - const Fp& a = x.a; - const Fp& b = x.b; - Fp t; - Fp::mulUnit(t, a, Fp::getOp().xi_a); - t -= b; - Fp::mulUnit(y.b, b, Fp::getOp().xi_a); - y.b += a; - y.a = t; - } - /* - xi = 1 + i ; xi_a = 1 - y = (a + bi)xi = (a - b) + (a + b)i - */ - static void fp2_mul_xi_1_1iC(Fp2T& y, const Fp2T& x) - { - const Fp& a = x.a; - const Fp& b = x.b; - Fp t; - Fp::add(t, a, b); - Fp::sub(y.a, a, b); - y.b = t; - } - /* - x = a + bi - 1 / x = (a - bi) / (a^2 + b^2) - */ - static void fp2_invW(Unit *y, const Unit *x) - { - const Fp *px = reinterpret_cast(x); - Fp *py = reinterpret_cast(y); - const Fp& a = px[0]; - const Fp& b = px[1]; - Fp aa, bb; - Fp::sqr(aa, a); - Fp::sqr(bb, b); - aa += bb; - Fp::inv(aa, aa); // aa = 1 / (a^2 + b^2) - Fp::mul(py[0], a, aa); - Fp::mul(py[1], b, aa); - Fp::neg(py[1], py[1]); - } -}; - -#ifdef MCL_XBYAK_DIRECT_CALL -template void (*Fp2T::add)(Fp2T& z, const Fp2T& x, const Fp2T& y); -template void (*Fp2T::sub)(Fp2T& z, const Fp2T& x, const Fp2T& y); -template void (*Fp2T::neg)(Fp2T& y, const Fp2T& x); -template void (*Fp2T::mul)(Fp2T& z, const Fp2T& x, const Fp2T& y); -template void (*Fp2T::sqr)(Fp2T& y, const Fp2T& x); -#endif -template void (*Fp2T::mul_xi)(Fp2T& y, const Fp2T& x); - -template -struct Fp2DblT { - typedef FpDblT FpDbl; - typedef Fp2T Fp2; - typedef fp::Unit Unit; - FpDbl a, b; - static void add(Fp2DblT& z, const Fp2DblT& x, const Fp2DblT& y) - { - FpDbl::add(z.a, x.a, y.a); - FpDbl::add(z.b, x.b, y.b); - } - static void addPre(Fp2DblT& z, const Fp2DblT& x, const Fp2DblT& y) - { - FpDbl::addPre(z.a, x.a, y.a); - FpDbl::addPre(z.b, x.b, y.b); - } - static void sub(Fp2DblT& z, const Fp2DblT& x, const Fp2DblT& y) - { - FpDbl::sub(z.a, x.a, y.a); - FpDbl::sub(z.b, x.b, y.b); - } - static void subPre(Fp2DblT& z, const Fp2DblT& x, const Fp2DblT& y) - { - FpDbl::subPre(z.a, x.a, y.a); - FpDbl::subPre(z.b, x.b, y.b); - } - static void neg(Fp2DblT& y, const Fp2DblT& x) - { - FpDbl::neg(y.a, x.a); - FpDbl::neg(y.b, x.b); - } - static void mul_xi(Fp2DblT& y, const Fp2DblT& x) - { - const uint32_t xi_a = Fp2::get_xi_a(); - if (xi_a == 1) { - FpDbl t; - FpDbl::add(t, x.a, x.b); - FpDbl::sub(y.a, x.a, x.b); - y.b = t; - } else { - FpDbl t; - FpDbl::mulUnit(t, x.a, xi_a); - FpDbl::sub(t, t, x.b); - FpDbl::mulUnit(y.b, x.b, xi_a); - FpDbl::add(y.b, y.b, x.a); - y.a = t; - } - } - static void (*mulPre)(Fp2DblT&, const Fp2&, const Fp2&); - static void (*sqrPre)(Fp2DblT&, const Fp2&); - static void mod(Fp2& y, const Fp2DblT& x) - { - FpDbl::mod(y.a, x.a); - FpDbl::mod(y.b, x.b); - } -#ifndef CYBOZU_DONT_USE_STRING - friend std::ostream& operator<<(std::ostream& os, const Fp2DblT& x) - { - return os << x.a << ' ' << x.b; - } -#endif - void operator+=(const Fp2DblT& x) { add(*this, *this, x); } - void operator-=(const Fp2DblT& x) { sub(*this, *this, x); } - static void init() - { - const mcl::fp::Op& op = Fp::getOp(); - if (op.fp2Dbl_mulPreA_) { - mulPre = fp::func_ptr_cast(op.fp2Dbl_mulPreA_); - } else { - if (op.isFullBit) { - mulPre = fp2Dbl_mulPreW; - } else { - mulPre = fp2Dbl_mulPreW; - } - } - if (op.fp2Dbl_sqrPreA_) { - sqrPre = fp::func_ptr_cast(op.fp2Dbl_sqrPreA_); - } else { - if (op.isFullBit) { - sqrPre = fp2Dbl_sqrPreW; - } else { - sqrPre = fp2Dbl_sqrPreW; - } - } - } - /* - Fp2Dbl::mulPre by FpDblT - @note mod of NIST_P192 is fast - */ - template - static void fp2Dbl_mulPreW(Fp2DblT& z, const Fp2& x, const Fp2& y) - { - const Fp& a = x.a; - const Fp& b = x.b; - const Fp& c = y.a; - const Fp& d = y.b; - FpDbl& d0 = z.a; - FpDbl& d1 = z.b; - FpDbl d2; - Fp s, t; - if (isFullBit) { - Fp::add(s, a, b); - Fp::add(t, c, d); - } else { - Fp::addPre(s, a, b); - Fp::addPre(t, c, d); - } - FpDbl::mulPre(d1, s, t); // (a + b)(c + d) - FpDbl::mulPre(d0, a, c); - FpDbl::mulPre(d2, b, d); - if (isFullBit) { - FpDbl::sub(d1, d1, d0); // (a + b)(c + d) - ac - FpDbl::sub(d1, d1, d2); // (a + b)(c + d) - ac - bd - } else { - FpDbl::subPre(d1, d1, d0); - FpDbl::subPre(d1, d1, d2); - } - FpDbl::sub(d0, d0, d2); // ac - bd - } - template - static void fp2Dbl_sqrPreW(Fp2DblT& y, const Fp2& x) - { - Fp t1, t2; - if (isFullBit) { - Fp::add(t1, x.b, x.b); // 2b - Fp::add(t2, x.a, x.b); // a + b - } else { - Fp::addPre(t1, x.b, x.b); // 2b - Fp::addPre(t2, x.a, x.b); // a + b - } - FpDbl::mulPre(y.b, t1, x.a); // 2ab - Fp::sub(t1, x.a, x.b); // a - b - FpDbl::mulPre(y.a, t1, t2); // (a + b)(a - b) - } -}; - -template void (*Fp2DblT::mulPre)(Fp2DblT&, const Fp2T&, const Fp2T&); -template void (*Fp2DblT::sqrPre)(Fp2DblT&, const Fp2T&); - -template Fp2T Fp2T::g[Fp2T::gN]; -template Fp2T Fp2T::g2[Fp2T::gN]; -template Fp2T Fp2T::g3[Fp2T::gN]; - -template -struct Fp6DblT; -/* - Fp6T = Fp2[v] / (v^3 - xi) - x = a + b v + c v^2 -*/ -template -struct Fp6T : public fp::Serializable, - fp::Operator > > { - typedef _Fp Fp; - typedef Fp2T Fp2; - typedef Fp2DblT Fp2Dbl; - typedef Fp6DblT Fp6Dbl; - typedef Fp BaseFp; - Fp2 a, b, c; - Fp6T() { } - Fp6T(int64_t a) : a(a) , b(0) , c(0) { } - Fp6T(const Fp2& a, const Fp2& b, const Fp2& c) : a(a) , b(b) , c(c) { } - void clear() - { - a.clear(); - b.clear(); - c.clear(); - } - Fp* getFp0() { return a.getFp0(); } - const Fp* getFp0() const { return a.getFp0(); } - Fp2* getFp2() { return &a; } - const Fp2* getFp2() const { return &a; } - void set(const Fp2 &a_, const Fp2 &b_, const Fp2 &c_) - { - a = a_; - b = b_; - c = c_; - } - bool isZero() const - { - return a.isZero() && b.isZero() && c.isZero(); - } - bool isOne() const - { - return a.isOne() && b.isZero() && c.isZero(); - } - bool operator==(const Fp6T& rhs) const - { - return a == rhs.a && b == rhs.b && c == rhs.c; - } - bool operator!=(const Fp6T& rhs) const { return !operator==(rhs); } - template - void load(bool *pb, InputStream& is, int ioMode) - { - a.load(pb, is, ioMode); if (!*pb) return; - b.load(pb, is, ioMode); if (!*pb) return; - c.load(pb, is, ioMode); if (!*pb) return; - } - template - void save(bool *pb, OutputStream& os, int ioMode) const - { - const char sep = *fp::getIoSeparator(ioMode); - a.save(pb, os, ioMode); if (!*pb) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - b.save(pb, os, ioMode); if (!*pb) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - c.save(pb, os, ioMode); - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("Fp6T:load"); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("Fp6T:save"); - } -#endif -#ifndef CYBOZU_DONT_USE_STRING - friend std::istream& operator>>(std::istream& is, Fp6T& self) - { - self.load(is, fp::detectIoMode(Fp::BaseFp::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const Fp6T& self) - { - self.save(os, fp::detectIoMode(Fp::BaseFp::getIoMode(), os)); - return os; - } -#endif - static void add(Fp6T& z, const Fp6T& x, const Fp6T& y) - { - Fp2::add(z.a, x.a, y.a); - Fp2::add(z.b, x.b, y.b); - Fp2::add(z.c, x.c, y.c); - } - static void sub(Fp6T& z, const Fp6T& x, const Fp6T& y) - { - Fp2::sub(z.a, x.a, y.a); - Fp2::sub(z.b, x.b, y.b); - Fp2::sub(z.c, x.c, y.c); - } - static void neg(Fp6T& y, const Fp6T& x) - { - Fp2::neg(y.a, x.a); - Fp2::neg(y.b, x.b); - Fp2::neg(y.c, x.c); - } - /* - x = a + bv + cv^2, v^3 = xi - x^2 = (a^2 + 2bc xi) + (c^2 xi + 2ab)v + (b^2 + 2ac)v^2 - - b^2 + 2ac = (a + b + c)^2 - a^2 - 2bc - c^2 - 2ab - */ - static void sqr(Fp6T& y, const Fp6T& x) - { - Fp2 t1, t2, t3; - Fp2::mul(t1, x.a, x.b); - t1 += t1; // 2ab - Fp2::mul(t2, x.b, x.c); - t2 += t2; // 2bc - Fp2::sqr(t3, x.c); // c^2 - Fp2::add(y.c, x.a, x.c); // a + c, destroy y.c - y.c += x.b; // a + b + c - Fp2::sqr(y.b, y.c); // (a + b + c)^2, destroy y.b - y.b -= t2; // (a + b + c)^2 - 2bc - Fp2::mul_xi(t2, t2); // 2bc xi - Fp2::sqr(y.a, x.a); // a^2, destroy y.a - y.b -= y.a; // (a + b + c)^2 - 2bc - a^2 - y.a += t2; // a^2 + 2bc xi - Fp2::sub(y.c, y.b, t3); // (a + b + c)^2 - 2bc - a^2 - c^2 - Fp2::mul_xi(y.b, t3); // c^2 xi - y.b += t1; // c^2 xi + 2ab - y.c -= t1; // b^2 + 2ac - } - static inline void mul(Fp6T& z, const Fp6T& x, const Fp6T& y); - /* - x = a + bv + cv^2, v^3 = xi - y = 1/x = p/q where - p = (a^2 - bc xi) + (c^2 xi - ab)v + (b^2 - ac)v^2 - q = c^3 xi^2 + b(b^2 - 3ac)xi + a^3 - = (a^2 - bc xi)a + ((c^2 xi - ab)c + (b^2 - ac)b) xi - */ - static void inv(Fp6T& y, const Fp6T& x) - { - const Fp2& a = x.a; - const Fp2& b = x.b; - const Fp2& c = x.c; - Fp2 aa, bb, cc, ab, bc, ac; - Fp2::sqr(aa, a); - Fp2::sqr(bb, b); - Fp2::sqr(cc, c); - Fp2::mul(ab, a, b); - Fp2::mul(bc, b, c); - Fp2::mul(ac, c, a); - - Fp6T p; - Fp2::mul_xi(p.a, bc); - Fp2::sub(p.a, aa, p.a); // a^2 - bc xi - Fp2::mul_xi(p.b, cc); - p.b -= ab; // c^2 xi - ab - Fp2::sub(p.c, bb, ac); // b^2 - ac - Fp2 q, t; - Fp2::mul(q, p.b, c); - Fp2::mul(t, p.c, b); - q += t; - Fp2::mul_xi(q, q); - Fp2::mul(t, p.a, a); - q += t; - Fp2::inv(q, q); - - Fp2::mul(y.a, p.a, q); - Fp2::mul(y.b, p.b, q); - Fp2::mul(y.c, p.c, q); - } -}; - -template -struct Fp6DblT { - typedef Fp2T Fp2; - typedef Fp6T Fp6; - typedef Fp2DblT Fp2Dbl; - typedef Fp6DblT Fp6Dbl; - typedef fp::Unit Unit; - Fp2Dbl a, b, c; - static void add(Fp6Dbl& z, const Fp6Dbl& x, const Fp6Dbl& y) - { - Fp2Dbl::add(z.a, x.a, y.a); - Fp2Dbl::add(z.b, x.b, y.b); - Fp2Dbl::add(z.c, x.c, y.c); - } - static void sub(Fp6Dbl& z, const Fp6Dbl& x, const Fp6Dbl& y) - { - Fp2Dbl::sub(z.a, x.a, y.a); - Fp2Dbl::sub(z.b, x.b, y.b); - Fp2Dbl::sub(z.c, x.c, y.c); - } - /* - x = a + bv + cv^2, y = d + ev + fv^2, v^3 = xi - xy = (ad + (bf + ce)xi) + ((ae + bd) + cf xi)v + ((af + cd) + be)v^2 - bf + ce = (b + c)(e + f) - be - cf - ae + bd = (a + b)(e + d) - ad - be - af + cd = (a + c)(d + f) - ad - cf - */ - static void mulPre(Fp6DblT& z, const Fp6& x, const Fp6& y) - { -//clk.begin(); - const Fp2& a = x.a; - const Fp2& b = x.b; - const Fp2& c = x.c; - const Fp2& d = y.a; - const Fp2& e = y.b; - const Fp2& f = y.c; - Fp2Dbl& za = z.a; - Fp2Dbl& zb = z.b; - Fp2Dbl& zc = z.c; - Fp2Dbl BE; - Fp2Dbl::mulPre(za, a, d); - Fp2Dbl::mulPre(BE, b, e); - Fp2Dbl::mulPre(zb, c, f); - - Fp2 t1, t2, t3, t4; - Fp2::add(t1, b, c); - Fp2::add(t2, e, f); - Fp2Dbl T1; - Fp2Dbl::mulPre(T1, t1, t2); - Fp2Dbl::sub(T1, T1, BE); - Fp2Dbl::sub(T1, T1, zb); - Fp2Dbl::mul_xi(T1, T1); - - Fp2::add(t2, a, b); - Fp2::add(t3, e, d); - Fp2Dbl T2; - Fp2Dbl::mulPre(T2, t2, t3); - Fp2Dbl::sub(T2, T2, za); - Fp2Dbl::sub(T2, T2, BE); - - Fp2::add(t3, a, c); - Fp2::add(t4, d, f); - Fp2Dbl::mulPre(zc, t3, t4); - Fp2Dbl::sub(zc, zc, za); - Fp2Dbl::sub(zc, zc, zb); - - Fp2Dbl::add(za, za, T1); - Fp2Dbl::mul_xi(zb, zb); - Fp2Dbl::add(zb, zb, T2); - Fp2Dbl::add(zc, zc, BE); -//clk.end(); - } - static void mod(Fp6& y, const Fp6Dbl& x) - { - Fp2Dbl::mod(y.a, x.a); - Fp2Dbl::mod(y.b, x.b); - Fp2Dbl::mod(y.c, x.c); - } -}; - -template -inline void Fp6T::mul(Fp6T& z, const Fp6T& x, const Fp6T& y) -{ - Fp6DblT Z; - Fp6DblT::mulPre(Z, x, y); - Fp6DblT::mod(z, Z); -} - -/* - Fp12T = Fp6[w] / (w^2 - v) - x = a + b w -*/ -template -struct Fp12T : public fp::Serializable, - fp::Operator > > { - typedef Fp2T Fp2; - typedef Fp6T Fp6; - typedef Fp2DblT Fp2Dbl; - typedef Fp6DblT Fp6Dbl; - typedef Fp BaseFp; - Fp6 a, b; - Fp12T() {} - Fp12T(int64_t a) : a(a), b(0) {} - Fp12T(const Fp6& a, const Fp6& b) : a(a), b(b) {} - void clear() - { - a.clear(); - b.clear(); - } - void setOne() - { - clear(); - a.a.a = 1; - } - - Fp* getFp0() { return a.getFp0(); } - const Fp* getFp0() const { return a.getFp0(); } - Fp2* getFp2() { return a.getFp2(); } - const Fp2* getFp2() const { return a.getFp2(); } - void set(const Fp2& v0, const Fp2& v1, const Fp2& v2, const Fp2& v3, const Fp2& v4, const Fp2& v5) - { - a.set(v0, v1, v2); - b.set(v3, v4, v5); - } - - bool isZero() const - { - return a.isZero() && b.isZero(); - } - bool isOne() const - { - return a.isOne() && b.isZero(); - } - bool operator==(const Fp12T& rhs) const - { - return a == rhs.a && b == rhs.b; - } - bool operator!=(const Fp12T& rhs) const { return !operator==(rhs); } - static void add(Fp12T& z, const Fp12T& x, const Fp12T& y) - { - Fp6::add(z.a, x.a, y.a); - Fp6::add(z.b, x.b, y.b); - } - static void sub(Fp12T& z, const Fp12T& x, const Fp12T& y) - { - Fp6::sub(z.a, x.a, y.a); - Fp6::sub(z.b, x.b, y.b); - } - static void neg(Fp12T& z, const Fp12T& x) - { - Fp6::neg(z.a, x.a); - Fp6::neg(z.b, x.b); - } - /* - z = x v + y - in Fp6 : (a + bv + cv^2)v = cv^3 + av + bv^2 = cxi + av + bv^2 - */ - static void mulVadd(Fp6& z, const Fp6& x, const Fp6& y) - { - Fp2 t; - Fp2::mul_xi(t, x.c); - Fp2::add(z.c, x.b, y.c); - Fp2::add(z.b, x.a, y.b); - Fp2::add(z.a, t, y.a); - } - static void mulVadd(Fp6Dbl& z, const Fp6Dbl& x, const Fp6Dbl& y) - { - Fp2Dbl t; - Fp2Dbl::mul_xi(t, x.c); - Fp2Dbl::add(z.c, x.b, y.c); - Fp2Dbl::add(z.b, x.a, y.b); - Fp2Dbl::add(z.a, t, y.a); - } - /* - x = a + bw, y = c + dw, w^2 = v - z = xy = (a + bw)(c + dw) = (ac + bdv) + (ad + bc)w - ad+bc = (a + b)(c + d) - ac - bd - - in Fp6 : (a + bv + cv^2)v = cv^3 + av + bv^2 = cxi + av + bv^2 - */ - static void mul(Fp12T& z, const Fp12T& x, const Fp12T& y) - { - // 4.7Kclk -> 4.55Kclk - const Fp6& a = x.a; - const Fp6& b = x.b; - const Fp6& c = y.a; - const Fp6& d = y.b; - Fp6 t1, t2; - Fp6::add(t1, a, b); - Fp6::add(t2, c, d); -#if 1 - Fp6Dbl T, AC, BD; - Fp6Dbl::mulPre(AC, a, c); - Fp6Dbl::mulPre(BD, b, d); - mulVadd(T, BD, AC); - Fp6Dbl::mod(z.a, T); - Fp6Dbl::mulPre(T, t1, t2); // (a + b)(c + d) - Fp6Dbl::sub(T, T, AC); - Fp6Dbl::sub(T, T, BD); - Fp6Dbl::mod(z.b, T); -#else - Fp6 ac, bd; - t1 *= t2; // (a + b)(c + d) - Fp6::mul(ac, a, c); - Fp6::mul(bd, b, d); - mulVadd(z.a, bd, ac); - t1 -= ac; - Fp6::sub(z.b, t1, bd); -#endif - } - /* - x = a + bw, w^2 = v - y = x^2 = (a + bw)^2 = (a^2 + b^2v) + 2abw - a^2 + b^2v = (a + b)(bv + a) - (abv + ab) - */ - static void sqr(Fp12T& y, const Fp12T& x) - { - const Fp6& a = x.a; - const Fp6& b = x.b; - Fp6 t0, t1; - Fp6::add(t0, a, b); // a + b - mulVadd(t1, b, a); // bv + a - t0 *= t1; // (a + b)(bv + a) - Fp6::mul(t1, a, b); // ab - Fp6::add(y.b, t1, t1); // 2ab - mulVadd(y.a, t1, t1); // abv + ab - Fp6::sub(y.a, t0, y.a); - } - /* - x = a + bw, w^2 = v - y = 1/x = (a - bw) / (a^2 - b^2v) - */ - static void inv(Fp12T& y, const Fp12T& x) - { - const Fp6& a = x.a; - const Fp6& b = x.b; - Fp6 t0, t1; - Fp6::sqr(t0, a); - Fp6::sqr(t1, b); - Fp2::mul_xi(t1.c, t1.c); - t0.a -= t1.c; - t0.b -= t1.a; - t0.c -= t1.b; // t0 = a^2 - b^2v - Fp6::inv(t0, t0); - Fp6::mul(y.a, x.a, t0); - Fp6::mul(y.b, x.b, t0); - Fp6::neg(y.b, y.b); - } - /* - y = 1 / x = conjugate of x if |x| = 1 - */ - static void unitaryInv(Fp12T& y, const Fp12T& x) - { - if (&y != &x) y.a = x.a; - Fp6::neg(y.b, x.b); - } - /* - Frobenius - i^2 = -1 - (a + bi)^p = a + bi^p in Fp - = a + bi if p = 1 mod 4 - = a - bi if p = 3 mod 4 - - g = xi^(p - 1) / 6 - v^3 = xi in Fp2 - v^p = ((v^6) ^ (p-1)/6) v = g^2 v - v^2p = g^4 v^2 - (a + bv + cv^2)^p in Fp6 - = F(a) + F(b)g^2 v + F(c) g^4 v^2 - - w^p = ((w^6) ^ (p-1)/6) w = g w - ((a + bv + cv^2)w)^p in Fp12T - = (F(a) g + F(b) g^3 v + F(c) g^5 v^2)w - */ - static void Frobenius(Fp12T& y, const Fp12T& x) - { - for (int i = 0; i < 6; i++) { - Fp2::Frobenius(y.getFp2()[i], x.getFp2()[i]); - } - for (int i = 1; i < 6; i++) { - y.getFp2()[i] *= Fp2::get_gTbl()[i - 1]; - } - } - static void Frobenius2(Fp12T& y, const Fp12T& x) - { -#if 0 - Frobenius(y, x); - Frobenius(y, y); -#else - y.getFp2()[0] = x.getFp2()[0]; - if (Fp::getOp().pmod4 == 1) { - for (int i = 1; i < 6; i++) { - Fp2::mul(y.getFp2()[i], x.getFp2()[i], Fp2::get_g2Tbl()[i]); - } - } else { - for (int i = 1; i < 6; i++) { - Fp2::mulFp(y.getFp2()[i], x.getFp2()[i], Fp2::get_g2Tbl()[i - 1].a); - } - } -#endif - } - static void Frobenius3(Fp12T& y, const Fp12T& x) - { -#if 0 - Frobenius(y, x); - Frobenius(y, y); - Frobenius(y, y); -#else - Fp2::Frobenius(y.getFp2()[0], x.getFp2()[0]); - for (int i = 1; i < 6; i++) { - Fp2::Frobenius(y.getFp2()[i], x.getFp2()[i]); - y.getFp2()[i] *= Fp2::get_g3Tbl()[i - 1]; - } -#endif - } - template - void load(bool *pb, InputStream& is, int ioMode) - { - a.load(pb, is, ioMode); if (!*pb) return; - b.load(pb, is, ioMode); - } - template - void save(bool *pb, OutputStream& os, int ioMode) const - { - const char sep = *fp::getIoSeparator(ioMode); - a.save(pb, os, ioMode); if (!*pb) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - b.save(pb, os, ioMode); - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("Fp12T:load"); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("Fp12T:save"); - } -#endif -#ifndef CYBOZU_DONT_USE_STRING - friend std::istream& operator>>(std::istream& is, Fp12T& self) - { - self.load(is, fp::detectIoMode(Fp::BaseFp::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const Fp12T& self) - { - self.save(os, fp::detectIoMode(Fp::BaseFp::getIoMode(), os)); - return os; - } -#endif -}; - -/* - convert multiplicative group to additive group -*/ -template -struct GroupMtoA : public T { - static T& castT(GroupMtoA& x) { return static_cast(x); } - static const T& castT(const GroupMtoA& x) { return static_cast(x); } - void clear() - { - castT(*this) = 1; - } - bool isZero() const { return castT(*this).isOne(); } - static void add(GroupMtoA& z, const GroupMtoA& x, const GroupMtoA& y) - { - T::mul(castT(z), castT(x), castT(y)); - } - static void dbl(GroupMtoA& y, const GroupMtoA& x) - { - T::sqr(castT(y), castT(x)); - } - static void neg(GroupMtoA& y, const GroupMtoA& x) - { - // assume Fp12 - T::unitaryInv(castT(y), castT(x)); - } - static void Frobenus(GroupMtoA& y, const GroupMtoA& x) - { - T::Frobenius(castT(y), castT(x)); - } - template - static void mul(GroupMtoA& z, const GroupMtoA& x, const INT& y) - { - T::pow(castT(z), castT(x), y); - } - template - static void mulGeneric(GroupMtoA& z, const GroupMtoA& x, const INT& y) - { - T::powGeneric(castT(z), castT(x), y); - } - void operator+=(const GroupMtoA& rhs) - { - add(*this, *this, rhs); - } - void normalize() {} -private: - bool isOne() const; -}; - -} // mcl - diff --git a/cases/tool/win/bls_win/include/mcl/gmp_util.hpp b/cases/tool/win/bls_win/include/mcl/gmp_util.hpp deleted file mode 100644 index 117ecff779..0000000000 --- a/cases/tool/win/bls_win/include/mcl/gmp_util.hpp +++ /dev/null @@ -1,959 +0,0 @@ -#pragma once -/** - @file - @brief util function for gmp - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include -#include -#include -#include -#ifndef CYBOZU_DONT_USE_EXCEPTION -#include -#endif -#include -#ifdef _MSC_VER - #pragma warning(push) - #pragma warning(disable : 4616) - #pragma warning(disable : 4800) - #pragma warning(disable : 4244) - #pragma warning(disable : 4127) - #pragma warning(disable : 4512) - #pragma warning(disable : 4146) -#endif -#if defined(__EMSCRIPTEN__) || defined(__wasm__) - #define MCL_USE_VINT -#endif -#ifndef MCL_MAX_BIT_SIZE - #define MCL_MAX_BIT_SIZE 521 -#endif -#ifdef MCL_USE_VINT -#include -typedef mcl::Vint mpz_class; -#else -#include -#ifdef _MSC_VER - #pragma warning(pop) - #include -#endif -#endif - -#ifndef MCL_SIZEOF_UNIT - #if defined(CYBOZU_OS_BIT) && (CYBOZU_OS_BIT == 32) - #define MCL_SIZEOF_UNIT 4 - #else - #define MCL_SIZEOF_UNIT 8 - #endif -#endif - -namespace mcl { - -namespace fp { - -#if MCL_SIZEOF_UNIT == 8 -typedef uint64_t Unit; -#else -typedef uint32_t Unit; -#endif -#define MCL_UNIT_BIT_SIZE (MCL_SIZEOF_UNIT * 8) - -} // mcl::fp - -namespace gmp { - -typedef mpz_class ImplType; - -// z = [buf[n-1]:..:buf[1]:buf[0]] -// eg. buf[] = {0x12345678, 0xaabbccdd}; => z = 0xaabbccdd12345678; -template -void setArray(bool *pb, mpz_class& z, const T *buf, size_t n) -{ -#ifdef MCL_USE_VINT - z.setArray(pb, buf, n); -#else - mpz_import(z.get_mpz_t(), n, -1, sizeof(*buf), 0, 0, buf); - *pb = true; -#endif -} -/* - buf[0, size) = x - buf[size, maxSize) with zero -*/ -template -bool getArray_(T *buf, size_t maxSize, const U *x, int xn)//const mpz_srcptr x) -{ - const size_t bufByteSize = sizeof(T) * maxSize; - if (xn < 0) return false; - size_t xByteSize = sizeof(*x) * xn; - if (xByteSize > bufByteSize) return false; - memcpy(buf, x, xByteSize); - memset((char*)buf + xByteSize, 0, bufByteSize - xByteSize); - return true; -} -template -void getArray(bool *pb, T *buf, size_t maxSize, const mpz_class& x) -{ -#ifdef MCL_USE_VINT - *pb = getArray_(buf, maxSize, x.getUnit(), x.getUnitSize()); -#else - *pb = getArray_(buf, maxSize, x.get_mpz_t()->_mp_d, x.get_mpz_t()->_mp_size); -#endif -} -inline void set(mpz_class& z, uint64_t x) -{ - bool b; - setArray(&b, z, &x, 1); - assert(b); - (void)b; -} -inline void setStr(bool *pb, mpz_class& z, const char *str, int base = 0) -{ -#ifdef MCL_USE_VINT - z.setStr(pb, str, base); -#else - *pb = z.set_str(str, base) == 0; -#endif -} - -/* - set buf with string terminated by '\0' - return strlen(buf) if success else 0 -*/ -inline size_t getStr(char *buf, size_t bufSize, const mpz_class& z, int base = 10) -{ -#ifdef MCL_USE_VINT - return z.getStr(buf, bufSize, base); -#else - __gmp_alloc_cstring tmp(mpz_get_str(0, base, z.get_mpz_t())); - size_t n = strlen(tmp.str); - if (n + 1 > bufSize) return 0; - memcpy(buf, tmp.str, n + 1); - return n; -#endif -} - -#ifndef CYBOZU_DONT_USE_STRING -inline void getStr(std::string& str, const mpz_class& z, int base = 10) -{ -#ifdef MCL_USE_VINT - z.getStr(str, base); -#else - str = z.get_str(base); -#endif -} -inline std::string getStr(const mpz_class& z, int base = 10) -{ - std::string s; - gmp::getStr(s, z, base); - return s; -} -#endif - -inline void add(mpz_class& z, const mpz_class& x, const mpz_class& y) -{ -#ifdef MCL_USE_VINT - Vint::add(z, x, y); -#else - mpz_add(z.get_mpz_t(), x.get_mpz_t(), y.get_mpz_t()); -#endif -} -#ifndef MCL_USE_VINT -inline void add(mpz_class& z, const mpz_class& x, unsigned int y) -{ - mpz_add_ui(z.get_mpz_t(), x.get_mpz_t(), y); -} -inline void sub(mpz_class& z, const mpz_class& x, unsigned int y) -{ - mpz_sub_ui(z.get_mpz_t(), x.get_mpz_t(), y); -} -inline void mul(mpz_class& z, const mpz_class& x, unsigned int y) -{ - mpz_mul_ui(z.get_mpz_t(), x.get_mpz_t(), y); -} -inline void div(mpz_class& q, const mpz_class& x, unsigned int y) -{ - mpz_div_ui(q.get_mpz_t(), x.get_mpz_t(), y); -} -inline void mod(mpz_class& r, const mpz_class& x, unsigned int m) -{ - mpz_mod_ui(r.get_mpz_t(), x.get_mpz_t(), m); -} -inline int compare(const mpz_class& x, int y) -{ - return mpz_cmp_si(x.get_mpz_t(), y); -} -#endif -inline void sub(mpz_class& z, const mpz_class& x, const mpz_class& y) -{ -#ifdef MCL_USE_VINT - Vint::sub(z, x, y); -#else - mpz_sub(z.get_mpz_t(), x.get_mpz_t(), y.get_mpz_t()); -#endif -} -inline void mul(mpz_class& z, const mpz_class& x, const mpz_class& y) -{ -#ifdef MCL_USE_VINT - Vint::mul(z, x, y); -#else - mpz_mul(z.get_mpz_t(), x.get_mpz_t(), y.get_mpz_t()); -#endif -} -inline void sqr(mpz_class& z, const mpz_class& x) -{ -#ifdef MCL_USE_VINT - Vint::mul(z, x, x); -#else - mpz_mul(z.get_mpz_t(), x.get_mpz_t(), x.get_mpz_t()); -#endif -} -inline void divmod(mpz_class& q, mpz_class& r, const mpz_class& x, const mpz_class& y) -{ -#ifdef MCL_USE_VINT - Vint::divMod(&q, r, x, y); -#else - mpz_divmod(q.get_mpz_t(), r.get_mpz_t(), x.get_mpz_t(), y.get_mpz_t()); -#endif -} -inline void div(mpz_class& q, const mpz_class& x, const mpz_class& y) -{ -#ifdef MCL_USE_VINT - Vint::div(q, x, y); -#else - mpz_div(q.get_mpz_t(), x.get_mpz_t(), y.get_mpz_t()); -#endif -} -inline void mod(mpz_class& r, const mpz_class& x, const mpz_class& m) -{ -#ifdef MCL_USE_VINT - Vint::mod(r, x, m); -#else - mpz_mod(r.get_mpz_t(), x.get_mpz_t(), m.get_mpz_t()); -#endif -} -inline void clear(mpz_class& z) -{ -#ifdef MCL_USE_VINT - z.clear(); -#else - mpz_set_ui(z.get_mpz_t(), 0); -#endif -} -inline bool isZero(const mpz_class& z) -{ -#ifdef MCL_USE_VINT - return z.isZero(); -#else - return mpz_sgn(z.get_mpz_t()) == 0; -#endif -} -inline bool isNegative(const mpz_class& z) -{ -#ifdef MCL_USE_VINT - return z.isNegative(); -#else - return mpz_sgn(z.get_mpz_t()) < 0; -#endif -} -inline void neg(mpz_class& z, const mpz_class& x) -{ -#ifdef MCL_USE_VINT - Vint::neg(z, x); -#else - mpz_neg(z.get_mpz_t(), x.get_mpz_t()); -#endif -} -inline int compare(const mpz_class& x, const mpz_class & y) -{ -#ifdef MCL_USE_VINT - return Vint::compare(x, y); -#else - return mpz_cmp(x.get_mpz_t(), y.get_mpz_t()); -#endif -} -template -void addMod(mpz_class& z, const mpz_class& x, const T& y, const mpz_class& m) -{ - add(z, x, y); - if (compare(z, m) >= 0) { - sub(z, z, m); - } -} -template -void subMod(mpz_class& z, const mpz_class& x, const T& y, const mpz_class& m) -{ - sub(z, x, y); - if (!isNegative(z)) return; - add(z, z, m); -} -template -void mulMod(mpz_class& z, const mpz_class& x, const T& y, const mpz_class& m) -{ - mul(z, x, y); - mod(z, z, m); -} -inline void sqrMod(mpz_class& z, const mpz_class& x, const mpz_class& m) -{ - sqr(z, x); - mod(z, z, m); -} -// z = x^y (y >= 0) -inline void pow(mpz_class& z, const mpz_class& x, unsigned int y) -{ -#ifdef MCL_USE_VINT - Vint::pow(z, x, y); -#else - mpz_pow_ui(z.get_mpz_t(), x.get_mpz_t(), y); -#endif -} -// z = x^y mod m (y >=0) -inline void powMod(mpz_class& z, const mpz_class& x, const mpz_class& y, const mpz_class& m) -{ -#ifdef MCL_USE_VINT - Vint::powMod(z, x, y, m); -#else - mpz_powm(z.get_mpz_t(), x.get_mpz_t(), y.get_mpz_t(), m.get_mpz_t()); -#endif -} -// z = 1/x mod m -inline void invMod(mpz_class& z, const mpz_class& x, const mpz_class& m) -{ -#ifdef MCL_USE_VINT - Vint::invMod(z, x, m); -#else - mpz_invert(z.get_mpz_t(), x.get_mpz_t(), m.get_mpz_t()); -#endif -} -// z = lcm(x, y) -inline void lcm(mpz_class& z, const mpz_class& x, const mpz_class& y) -{ -#ifdef MCL_USE_VINT - Vint::lcm(z, x, y); -#else - mpz_lcm(z.get_mpz_t(), x.get_mpz_t(), y.get_mpz_t()); -#endif -} -inline mpz_class lcm(const mpz_class& x, const mpz_class& y) -{ - mpz_class z; - lcm(z, x, y); - return z; -} -// z = gcd(x, y) -inline void gcd(mpz_class& z, const mpz_class& x, const mpz_class& y) -{ -#ifdef MCL_USE_VINT - Vint::gcd(z, x, y); -#else - mpz_gcd(z.get_mpz_t(), x.get_mpz_t(), y.get_mpz_t()); -#endif -} -inline mpz_class gcd(const mpz_class& x, const mpz_class& y) -{ - mpz_class z; - gcd(z, x, y); - return z; -} -/* - assume p : odd prime - return 1 if x^2 = a mod p for some x - return -1 if x^2 != a mod p for any x -*/ -inline int legendre(const mpz_class& a, const mpz_class& p) -{ -#ifdef MCL_USE_VINT - return Vint::jacobi(a, p); -#else - return mpz_legendre(a.get_mpz_t(), p.get_mpz_t()); -#endif -} -inline bool isPrime(bool *pb, const mpz_class& x) -{ -#ifdef MCL_USE_VINT - return x.isPrime(pb, 32); -#else - *pb = true; - return mpz_probab_prime_p(x.get_mpz_t(), 32) != 0; -#endif -} -inline size_t getBitSize(const mpz_class& x) -{ -#ifdef MCL_USE_VINT - return x.getBitSize(); -#else - return mpz_sizeinbase(x.get_mpz_t(), 2); -#endif -} -inline bool testBit(const mpz_class& x, size_t pos) -{ -#ifdef MCL_USE_VINT - return x.testBit(pos); -#else - return mpz_tstbit(x.get_mpz_t(), pos) != 0; -#endif -} -inline void resetBit(mpz_class& x, size_t pos) -{ -#ifdef MCL_USE_VINT - x.setBit(pos, false); -#else - mpz_clrbit(x.get_mpz_t(), pos); -#endif -} -inline void setBit(mpz_class& x, size_t pos, bool v = true) -{ -#ifdef MCL_USE_VINT - x.setBit(pos, v); -#else - if (v) { - mpz_setbit(x.get_mpz_t(), pos); - } else { - resetBit(x, pos); - } -#endif -} -inline const fp::Unit *getUnit(const mpz_class& x) -{ -#ifdef MCL_USE_VINT - return x.getUnit(); -#else - return reinterpret_cast(x.get_mpz_t()->_mp_d); -#endif -} -inline fp::Unit getUnit(const mpz_class& x, size_t i) -{ - return getUnit(x)[i]; -} -inline size_t getUnitSize(const mpz_class& x) -{ -#ifdef MCL_USE_VINT - return x.getUnitSize(); -#else - return std::abs(x.get_mpz_t()->_mp_size); -#endif -} -inline mpz_class abs(const mpz_class& x) -{ -#ifdef MCL_USE_VINT - return Vint::abs(x); -#else - return ::abs(x); -#endif -} - -inline void getRand(bool *pb, mpz_class& z, size_t bitSize, fp::RandGen rg = fp::RandGen()) -{ - if (rg.isZero()) rg = fp::RandGen::get(); - assert(bitSize > 1); - const size_t rem = bitSize & 31; - const size_t n = (bitSize + 31) / 32; - uint32_t buf[128]; - assert(n <= CYBOZU_NUM_OF_ARRAY(buf)); - if (n > CYBOZU_NUM_OF_ARRAY(buf)) { - *pb = false; - return; - } - rg.read(pb, buf, n * sizeof(buf[0])); - if (!*pb) return; - uint32_t v = buf[n - 1]; - if (rem == 0) { - v |= 1U << 31; - } else { - v &= (1U << rem) - 1; - v |= 1U << (rem - 1); - } - buf[n - 1] = v; - setArray(pb, z, buf, n); -} - -inline void getRandPrime(bool *pb, mpz_class& z, size_t bitSize, fp::RandGen rg = fp::RandGen(), bool setSecondBit = false, bool mustBe3mod4 = false) -{ - if (rg.isZero()) rg = fp::RandGen::get(); - assert(bitSize > 2); - for (;;) { - getRand(pb, z, bitSize, rg); - if (!*pb) return; - if (setSecondBit) { - z |= mpz_class(1) << (bitSize - 2); - } - if (mustBe3mod4) { - z |= 3; - } - bool ret = isPrime(pb, z); - if (!*pb) return; - if (ret) return; - } -} -inline mpz_class getQuadraticNonResidue(const mpz_class& p) -{ - mpz_class g = 2; - while (legendre(g, p) > 0) { - ++g; - } - return g; -} - -namespace impl { - -template -void convertToBinary(Vec& v, const mpz_class& x) -{ - const size_t len = gmp::getBitSize(x); - v.resize(len); - for (size_t i = 0; i < len; i++) { - v[i] = gmp::testBit(x, len - 1 - i) ? 1 : 0; - } -} - -template -size_t getContinuousVal(const Vec& v, size_t pos, int val) -{ - while (pos >= 2) { - if (v[pos] != val) break; - pos--; - } - return pos; -} - -template -void convertToNAF(Vec& v, const Vec& in) -{ - v.copy(in); - size_t pos = v.size() - 1; - for (;;) { - size_t p = getContinuousVal(v, pos, 0); - if (p == 1) return; - assert(v[p] == 1); - size_t q = getContinuousVal(v, p, 1); - if (q == 1) return; - assert(v[q] == 0); - if (p - q <= 1) { - pos = p - 1; - continue; - } - v[q] = 1; - for (size_t i = q + 1; i < p; i++) { - v[i] = 0; - } - v[p] = -1; - pos = q; - } -} - -template -size_t getNumOfNonZeroElement(const Vec& v) -{ - size_t w = 0; - for (size_t i = 0; i < v.size(); i++) { - if (v[i]) w++; - } - return w; -} - -} // impl - -/* - compute a repl of x which has smaller Hamming weights. - return true if naf is selected -*/ -template -bool getNAF(Vec& v, const mpz_class& x) -{ - Vec bin; - impl::convertToBinary(bin, x); - Vec naf; - impl::convertToNAF(naf, bin); - const size_t binW = impl::getNumOfNonZeroElement(bin); - const size_t nafW = impl::getNumOfNonZeroElement(naf); - if (nafW < binW) { - v.swap(naf); - return true; - } else { - v.swap(bin); - return false; - } -} - -#ifndef CYBOZU_DONT_USE_EXCEPTION -inline void setStr(mpz_class& z, const std::string& str, int base = 0) -{ - bool b; - setStr(&b, z, str.c_str(), base); - if (!b) throw cybozu::Exception("gmp:setStr"); -} -template -void setArray(mpz_class& z, const T *buf, size_t n) -{ - bool b; - setArray(&b, z, buf, n); - if (!b) throw cybozu::Exception("gmp:setArray"); -} -template -void getArray(T *buf, size_t maxSize, const mpz_class& x) -{ - bool b; - getArray(&b, buf, maxSize, x); - if (!b) throw cybozu::Exception("gmp:getArray"); -} -inline bool isPrime(const mpz_class& x) -{ - bool b; - bool ret = isPrime(&b, x); - if (!b) throw cybozu::Exception("gmp:isPrime"); - return ret; -} -inline void getRand(mpz_class& z, size_t bitSize, fp::RandGen rg = fp::RandGen()) -{ - bool b; - getRand(&b, z, bitSize, rg); - if (!b) throw cybozu::Exception("gmp:getRand"); -} -inline void getRandPrime(mpz_class& z, size_t bitSize, fp::RandGen rg = fp::RandGen(), bool setSecondBit = false, bool mustBe3mod4 = false) -{ - bool b; - getRandPrime(&b, z, bitSize, rg, setSecondBit, mustBe3mod4); - if (!b) throw cybozu::Exception("gmp:getRandPrime"); -} -#endif - - -} // mcl::gmp - -/* - Tonelli-Shanks -*/ -class SquareRoot { - bool isPrecomputed_; - bool isPrime; - mpz_class p; - mpz_class g; - int r; - mpz_class q; // p - 1 = 2^r q - mpz_class s; // s = g^q - mpz_class q_add_1_div_2; - struct Tbl { - const char *p; - const char *g; - int r; - const char *q; - const char *s; - const char *q_add_1_div_2; - }; - bool setIfPrecomputed(const mpz_class& p_) - { - static const Tbl tbl[] = { - { // BN254.p - "2523648240000001ba344d80000000086121000000000013a700000000000013", - "2", - 1, - "1291b24120000000dd1a26c0000000043090800000000009d380000000000009", - "2523648240000001ba344d80000000086121000000000013a700000000000012", - "948d920900000006e8d1360000000021848400000000004e9c0000000000005", - }, - { // BN254.r - "2523648240000001ba344d8000000007ff9f800000000010a10000000000000d", - "2", - 2, - "948d920900000006e8d136000000001ffe7e000000000042840000000000003", - "9366c4800000000555150000000000122400000000000015", - "4a46c9048000000374689b000000000fff3f000000000021420000000000002", - }, - { // BLS12_381,p - "1a0111ea397fe69a4b1ba7b6434bacd764774b84f38512bf6730d2a0f6b0f6241eabfffeb153ffffb9feffffffffaaab", - "2", - 1, - "d0088f51cbff34d258dd3db21a5d66bb23ba5c279c2895fb39869507b587b120f55ffff58a9ffffdcff7fffffffd555", - "1a0111ea397fe69a4b1ba7b6434bacd764774b84f38512bf6730d2a0f6b0f6241eabfffeb153ffffb9feffffffffaaaa", - "680447a8e5ff9a692c6e9ed90d2eb35d91dd2e13ce144afd9cc34a83dac3d8907aaffffac54ffffee7fbfffffffeaab", - }, - { // BLS12_381.r - "73eda753299d7d483339d80809a1d80553bda402fffe5bfeffffffff00000001", - "5", - 32, - "73eda753299d7d483339d80809a1d80553bda402fffe5bfeffffffff", - "212d79e5b416b6f0fd56dc8d168d6c0c4024ff270b3e0941b788f500b912f1f", - "39f6d3a994cebea4199cec0404d0ec02a9ded2017fff2dff80000000", - }, - }; - for (size_t i = 0; i < CYBOZU_NUM_OF_ARRAY(tbl); i++) { - mpz_class targetPrime; - bool b; - mcl::gmp::setStr(&b, targetPrime, tbl[i].p, 16); - if (!b) continue; - if (targetPrime != p_) continue; - isPrime = true; - p = p_; - mcl::gmp::setStr(&b, g, tbl[i].g, 16); - if (!b) continue; - r = tbl[i].r; - mcl::gmp::setStr(&b, q, tbl[i].q, 16); - if (!b) continue; - mcl::gmp::setStr(&b, s, tbl[i].s, 16); - if (!b) continue; - mcl::gmp::setStr(&b, q_add_1_div_2, tbl[i].q_add_1_div_2, 16); - if (!b) continue; - isPrecomputed_ = true; - return true; - } - return false; - } -public: - SquareRoot() { clear(); } - bool isPrecomputed() const { return isPrecomputed_; } - void clear() - { - isPrecomputed_ = false; - isPrime = false; - p = 0; - g = 0; - r = 0; - q = 0; - s = 0; - q_add_1_div_2 = 0; - } -#if !defined(CYBOZU_DONT_USE_USE_STRING) && !defined(CYBOZU_DONT_USE_EXCEPTION) - void dump() const - { - printf("\"%s\",\n", mcl::gmp::getStr(p, 16).c_str()); - printf("\"%s\",\n", mcl::gmp::getStr(g, 16).c_str()); - printf("%d,\n", r); - printf("\"%s\",\n", mcl::gmp::getStr(q, 16).c_str()); - printf("\"%s\",\n", mcl::gmp::getStr(s, 16).c_str()); - printf("\"%s\",\n", mcl::gmp::getStr(q_add_1_div_2, 16).c_str()); - } -#endif - void set(bool *pb, const mpz_class& _p, bool usePrecomputedTable = true) - { - if (usePrecomputedTable && setIfPrecomputed(_p)) { - *pb = true; - return; - } - p = _p; - if (p <= 2) { - *pb = false; - return; - } - isPrime = gmp::isPrime(pb, p); - if (!*pb) return; - if (!isPrime) { - *pb = false; - return; - } - g = gmp::getQuadraticNonResidue(p); - // p - 1 = 2^r q, q is odd - r = 0; - q = p - 1; - while ((q & 1) == 0) { - r++; - q /= 2; - } - gmp::powMod(s, g, q, p); - q_add_1_div_2 = (q + 1) / 2; - *pb = true; - } - /* - solve x^2 = a mod p - */ - bool get(mpz_class& x, const mpz_class& a) const - { - if (!isPrime) { - return false; - } - if (a == 0) { - x = 0; - return true; - } - if (gmp::legendre(a, p) < 0) return false; - if (r == 1) { - // (p + 1) / 4 = (q + 1) / 2 - gmp::powMod(x, a, q_add_1_div_2, p); - return true; - } - mpz_class c = s, d; - int e = r; - gmp::powMod(d, a, q, p); - gmp::powMod(x, a, q_add_1_div_2, p); // destroy a if &x == &a - mpz_class dd; - mpz_class b; - while (d != 1) { - int i = 1; - dd = d * d; dd %= p; - while (dd != 1) { - dd *= dd; dd %= p; - i++; - } - b = 1; - b <<= e - i - 1; - gmp::powMod(b, c, b, p); - x *= b; x %= p; - c = b * b; c %= p; - d *= c; d %= p; - e = i; - } - return true; - } - /* - solve x^2 = a in Fp - */ - template - bool get(Fp& x, const Fp& a) const - { - assert(Fp::getOp().mp == p); - if (a == 0) { - x = 0; - return true; - } - { - bool b; - mpz_class aa; - a.getMpz(&b, aa); - assert(b); - if (gmp::legendre(aa, p) < 0) return false; - } - if (r == 1) { - // (p + 1) / 4 = (q + 1) / 2 - Fp::pow(x, a, q_add_1_div_2); - return true; - } - Fp c, d; - { - bool b; - c.setMpz(&b, s); - assert(b); - } - int e = r; - Fp::pow(d, a, q); - Fp::pow(x, a, q_add_1_div_2); // destroy a if &x == &a - Fp dd; - Fp b; - while (!d.isOne()) { - int i = 1; - Fp::sqr(dd, d); - while (!dd.isOne()) { - dd *= dd; - i++; - } - b = 1; -// b <<= e - i - 1; - for (int j = 0; j < e - i - 1; j++) { - b += b; - } - Fp::pow(b, c, b); - x *= b; - Fp::sqr(c, b); - d *= c; - e = i; - } - return true; - } - bool operator==(const SquareRoot& rhs) const - { - return isPrime == rhs.isPrime && p == rhs.p && g == rhs.g && r == rhs.r - && q == rhs.q && s == rhs.s && q_add_1_div_2 == rhs.q_add_1_div_2; - } - bool operator!=(const SquareRoot& rhs) const { return !operator==(rhs); } -#ifndef CYBOZU_DONT_USE_EXCEPTION - void set(const mpz_class& _p) - { - bool b; - set(&b, _p); - if (!b) throw cybozu::Exception("gmp:SquareRoot:set"); - } -#endif -}; - -/* - Barrett Reduction - for non GMP version - mod of GMP is faster than Modp -*/ -struct Modp { - static const size_t unitBitSize = sizeof(mcl::fp::Unit) * 8; - mpz_class p_; - mpz_class u_; - mpz_class a_; - size_t pBitSize_; - size_t N_; - bool initU_; // Is u_ initialized? - Modp() - : pBitSize_(0) - , N_(0) - , initU_(false) - { - } - // x &= 1 << (unitBitSize * unitSize) - void shrinkSize(mpz_class &x, size_t unitSize) const - { - size_t u = gmp::getUnitSize(x); - if (u < unitSize) return; - bool b; - gmp::setArray(&b, x, gmp::getUnit(x), unitSize); - (void)b; - assert(b); - } - // p_ is set by p and compute (u_, a_) if possible - void init(const mpz_class& p) - { - p_ = p; - pBitSize_ = gmp::getBitSize(p); - N_ = (pBitSize_ + unitBitSize - 1) / unitBitSize; - initU_ = false; -#if 0 - u_ = (mpz_class(1) << (unitBitSize * 2 * N_)) / p_; -#else - /* - 1 << (unitBitSize * 2 * N_) may be overflow, - so use (1 << (unitBitSize * 2 * N_)) - 1 because u_ is same. - */ - uint8_t buf[48 * 2]; - const size_t byteSize = unitBitSize / 8 * 2 * N_; - if (byteSize > sizeof(buf)) return; - memset(buf, 0xff, byteSize); - bool b; - gmp::setArray(&b, u_, buf, byteSize); - if (!b) return; -#endif - u_ /= p_; - a_ = mpz_class(1) << (unitBitSize * (N_ + 1)); - initU_ = true; - } - void modp(mpz_class& r, const mpz_class& t) const - { - assert(p_ > 0); - const size_t tBitSize = gmp::getBitSize(t); - // use gmp::mod if init() fails or t is too large - if (tBitSize > unitBitSize * 2 * N_ || !initU_) { - gmp::mod(r, t, p_); - return; - } - if (tBitSize < pBitSize_) { - r = t; - return; - } - // mod is faster than modp if t is small - if (tBitSize <= unitBitSize * N_) { - gmp::mod(r, t, p_); - return; - } - mpz_class q; - q = t; - q >>= unitBitSize * (N_ - 1); - q *= u_; - q >>= unitBitSize * (N_ + 1); - q *= p_; - shrinkSize(q, N_ + 1); - r = t; - shrinkSize(r, N_ + 1); - r -= q; - if (r < 0) { - r += a_; - } - if (r >= p_) { - r -= p_; - } - } -}; - -} // mcl diff --git a/cases/tool/win/bls_win/include/mcl/impl/bn_c_impl.hpp b/cases/tool/win/bls_win/include/mcl/impl/bn_c_impl.hpp deleted file mode 100644 index 7c14f63766..0000000000 --- a/cases/tool/win/bls_win/include/mcl/impl/bn_c_impl.hpp +++ /dev/null @@ -1,648 +0,0 @@ -/* - This is an internal header - Do not include this -*/ -#define MCLBN_DLL_EXPORT -#include - -#if MCLBN_FP_UNIT_SIZE == 4 && MCLBN_FR_UNIT_SIZE == 4 -#include -#elif MCLBN_FP_UNIT_SIZE == 6 && MCLBN_FR_UNIT_SIZE == 6 -#include -#elif MCLBN_FP_UNIT_SIZE == 6 && MCLBN_FR_UNIT_SIZE == 4 -#include -#elif MCLBN_FP_UNIT_SIZE == 8 && MCLBN_FR_UNIT_SIZE == 8 -#include -#else - #error "not supported size" -#endif -#include -#include -using namespace mcl::bn; - -static Fr *cast(mclBnFr *p) { return reinterpret_cast(p); } -static const Fr *cast(const mclBnFr *p) { return reinterpret_cast(p); } - -static G1 *cast(mclBnG1 *p) { return reinterpret_cast(p); } -static const G1 *cast(const mclBnG1 *p) { return reinterpret_cast(p); } - -static G2 *cast(mclBnG2 *p) { return reinterpret_cast(p); } -static const G2 *cast(const mclBnG2 *p) { return reinterpret_cast(p); } - -static Fp12 *cast(mclBnGT *p) { return reinterpret_cast(p); } -static const Fp12 *cast(const mclBnGT *p) { return reinterpret_cast(p); } - -static Fp6 *cast(uint64_t *p) { return reinterpret_cast(p); } -static const Fp6 *cast(const uint64_t *p) { return reinterpret_cast(p); } - -static Fp2 *cast(mclBnFp2 *p) { return reinterpret_cast(p); } -static const Fp2 *cast(const mclBnFp2 *p) { return reinterpret_cast(p); } - -static Fp *cast(mclBnFp *p) { return reinterpret_cast(p); } -static const Fp *cast(const mclBnFp *p) { return reinterpret_cast(p); } - -template -int setStr(T *x, const char *buf, mclSize bufSize, int ioMode) -{ - size_t n = cast(x)->deserialize(buf, bufSize, ioMode); - return n > 0 ? 0 : -1; -} - -#ifdef __EMSCRIPTEN__ -// use these functions forcibly -extern "C" MCLBN_DLL_API void *mclBnMalloc(size_t n) -{ - return malloc(n); -} -extern "C" MCLBN_DLL_API void mclBnFree(void *p) -{ - free(p); -} -#endif - -int mclBn_getVersion() -{ - return mcl::version; -} - -int mclBn_init(int curve, int compiledTimeVar) -{ - if (compiledTimeVar != MCLBN_COMPILED_TIME_VAR) { - return -(compiledTimeVar | (MCLBN_COMPILED_TIME_VAR * 100)); - } - if (MCL_EC_BEGIN <= curve && curve < MCL_EC_END) { - const mcl::EcParam *para = mcl::getEcParam(curve); - if (para == 0) return -2; - bool b; - initG1only(&b, *para); - return b ? 0 : -1; - } - const mcl::CurveParam& cp = mcl::getCurveParam(curve); - bool b; - initPairing(&b, cp); - return b ? 0 : -1; -} - -int mclBn_getOpUnitSize() -{ - return (int)Fp::getUnitSize() * sizeof(mcl::fp::Unit) / sizeof(uint64_t); -} - -int mclBn_getG1ByteSize() -{ - return mclBn_getFpByteSize(); -} - -int mclBn_getFrByteSize() -{ - return (int)Fr::getByteSize(); -} - -int mclBn_getFpByteSize() -{ - return (int)Fp::getByteSize(); -} - -mclSize mclBn_getCurveOrder(char *buf, mclSize maxBufSize) -{ - return Fr::getModulo(buf, maxBufSize); -} - -mclSize mclBn_getFieldOrder(char *buf, mclSize maxBufSize) -{ - return Fp::getModulo(buf, maxBufSize); -} - -void mclBn_setETHserialization(int ETHserialization) -{ - Fp::setETHserialization(ETHserialization == 1); -} - -//////////////////////////////////////////////// -// set zero -void mclBnFr_clear(mclBnFr *x) -{ - cast(x)->clear(); -} - -// set x to y -void mclBnFr_setInt(mclBnFr *y, mclInt x) -{ - *cast(y) = x; -} -void mclBnFr_setInt32(mclBnFr *y, int x) -{ - *cast(y) = x; -} - -int mclBnFr_setStr(mclBnFr *x, const char *buf, mclSize bufSize, int ioMode) -{ - return setStr(x, buf, bufSize, ioMode); -} -int mclBnFr_setLittleEndian(mclBnFr *x, const void *buf, mclSize bufSize) -{ - cast(x)->setArrayMask((const char *)buf, bufSize); - return 0; -} -int mclBnFr_setLittleEndianMod(mclBnFr *x, const void *buf, mclSize bufSize) -{ - bool b; - cast(x)->setArray(&b, (const char *)buf, bufSize, mcl::fp::Mod); - return b ? 0 : -1; -} -mclSize mclBnFr_deserialize(mclBnFr *x, const void *buf, mclSize bufSize) -{ - return (mclSize)cast(x)->deserialize(buf, bufSize); -} -// return 1 if true -int mclBnFr_isValid(const mclBnFr *x) -{ - return cast(x)->isValid(); -} -int mclBnFr_isEqual(const mclBnFr *x, const mclBnFr *y) -{ - return *cast(x) == *cast(y); -} -int mclBnFr_isZero(const mclBnFr *x) -{ - return cast(x)->isZero(); -} -int mclBnFr_isOne(const mclBnFr *x) -{ - return cast(x)->isOne(); -} - -#ifndef MCL_DONT_USE_CSRPNG -int mclBnFr_setByCSPRNG(mclBnFr *x) -{ - bool b; - cast(x)->setByCSPRNG(&b); - return b ? 0 : -1; -} -void mclBn_setRandFunc(void *self, unsigned int (*readFunc)(void *self, void *buf, unsigned int bufSize)) -{ - mcl::fp::RandGen::setRandFunc(self, readFunc); -} -#endif - -// hash(buf) and set x -int mclBnFr_setHashOf(mclBnFr *x, const void *buf, mclSize bufSize) -{ - cast(x)->setHashOf(buf, bufSize); - return 0; -} - -mclSize mclBnFr_getStr(char *buf, mclSize maxBufSize, const mclBnFr *x, int ioMode) -{ - return cast(x)->getStr(buf, maxBufSize, ioMode); -} -mclSize mclBnFr_serialize(void *buf, mclSize maxBufSize, const mclBnFr *x) -{ - return (mclSize)cast(x)->serialize(buf, maxBufSize); -} - -void mclBnFr_neg(mclBnFr *y, const mclBnFr *x) -{ - Fr::neg(*cast(y), *cast(x)); -} -void mclBnFr_inv(mclBnFr *y, const mclBnFr *x) -{ - Fr::inv(*cast(y), *cast(x)); -} -void mclBnFr_sqr(mclBnFr *y, const mclBnFr *x) -{ - Fr::sqr(*cast(y), *cast(x)); -} -void mclBnFr_add(mclBnFr *z, const mclBnFr *x, const mclBnFr *y) -{ - Fr::add(*cast(z),*cast(x), *cast(y)); -} -void mclBnFr_sub(mclBnFr *z, const mclBnFr *x, const mclBnFr *y) -{ - Fr::sub(*cast(z),*cast(x), *cast(y)); -} -void mclBnFr_mul(mclBnFr *z, const mclBnFr *x, const mclBnFr *y) -{ - Fr::mul(*cast(z),*cast(x), *cast(y)); -} -void mclBnFr_div(mclBnFr *z, const mclBnFr *x, const mclBnFr *y) -{ - Fr::div(*cast(z),*cast(x), *cast(y)); -} - -//////////////////////////////////////////////// -// set zero -void mclBnG1_clear(mclBnG1 *x) -{ - cast(x)->clear(); -} - -int mclBnG1_setStr(mclBnG1 *x, const char *buf, mclSize bufSize, int ioMode) -{ - return setStr(x, buf, bufSize, ioMode); -} -mclSize mclBnG1_deserialize(mclBnG1 *x, const void *buf, mclSize bufSize) -{ - return (mclSize)cast(x)->deserialize(buf, bufSize); -} - -// return 1 if true -int mclBnG1_isValid(const mclBnG1 *x) -{ - return cast(x)->isValid(); -} -int mclBnG1_isEqual(const mclBnG1 *x, const mclBnG1 *y) -{ - return *cast(x) == *cast(y); -} -int mclBnG1_isZero(const mclBnG1 *x) -{ - return cast(x)->isZero(); -} -int mclBnG1_isValidOrder(const mclBnG1 *x) -{ - return cast(x)->isValidOrder(); -} - -int mclBnG1_hashAndMapTo(mclBnG1 *x, const void *buf, mclSize bufSize) -{ - hashAndMapToG1(*cast(x), buf, bufSize); - return 0; -} - -mclSize mclBnG1_getStr(char *buf, mclSize maxBufSize, const mclBnG1 *x, int ioMode) -{ - return cast(x)->getStr(buf, maxBufSize, ioMode); -} - -mclSize mclBnG1_serialize(void *buf, mclSize maxBufSize, const mclBnG1 *x) -{ - return (mclSize)cast(x)->serialize(buf, maxBufSize); -} - -void mclBnG1_neg(mclBnG1 *y, const mclBnG1 *x) -{ - G1::neg(*cast(y), *cast(x)); -} -void mclBnG1_dbl(mclBnG1 *y, const mclBnG1 *x) -{ - G1::dbl(*cast(y), *cast(x)); -} -void mclBnG1_normalize(mclBnG1 *y, const mclBnG1 *x) -{ - G1::normalize(*cast(y), *cast(x)); -} -void mclBnG1_add(mclBnG1 *z, const mclBnG1 *x, const mclBnG1 *y) -{ - G1::add(*cast(z),*cast(x), *cast(y)); -} -void mclBnG1_sub(mclBnG1 *z, const mclBnG1 *x, const mclBnG1 *y) -{ - G1::sub(*cast(z),*cast(x), *cast(y)); -} -void mclBnG1_mul(mclBnG1 *z, const mclBnG1 *x, const mclBnFr *y) -{ - G1::mul(*cast(z),*cast(x), *cast(y)); -} -void mclBnG1_mulCT(mclBnG1 *z, const mclBnG1 *x, const mclBnFr *y) -{ - G1::mulCT(*cast(z),*cast(x), *cast(y)); -} - -//////////////////////////////////////////////// -// set zero -void mclBnG2_clear(mclBnG2 *x) -{ - cast(x)->clear(); -} - -int mclBnG2_setStr(mclBnG2 *x, const char *buf, mclSize bufSize, int ioMode) -{ - return setStr(x, buf, bufSize, ioMode); -} -mclSize mclBnG2_deserialize(mclBnG2 *x, const void *buf, mclSize bufSize) -{ - return (mclSize)cast(x)->deserialize(buf, bufSize); -} - -// return 1 if true -int mclBnG2_isValid(const mclBnG2 *x) -{ - return cast(x)->isValid(); -} -int mclBnG2_isEqual(const mclBnG2 *x, const mclBnG2 *y) -{ - return *cast(x) == *cast(y); -} -int mclBnG2_isZero(const mclBnG2 *x) -{ - return cast(x)->isZero(); -} -int mclBnG2_isValidOrder(const mclBnG2 *x) -{ - return cast(x)->isValidOrder(); -} - -int mclBnG2_hashAndMapTo(mclBnG2 *x, const void *buf, mclSize bufSize) -{ - hashAndMapToG2(*cast(x), buf, bufSize); - return 0; -} - -mclSize mclBnG2_getStr(char *buf, mclSize maxBufSize, const mclBnG2 *x, int ioMode) -{ - return cast(x)->getStr(buf, maxBufSize, ioMode); -} - -mclSize mclBnG2_serialize(void *buf, mclSize maxBufSize, const mclBnG2 *x) -{ - return (mclSize)cast(x)->serialize(buf, maxBufSize); -} - -void mclBnG2_neg(mclBnG2 *y, const mclBnG2 *x) -{ - G2::neg(*cast(y), *cast(x)); -} -void mclBnG2_dbl(mclBnG2 *y, const mclBnG2 *x) -{ - G2::dbl(*cast(y), *cast(x)); -} -void mclBnG2_normalize(mclBnG2 *y, const mclBnG2 *x) -{ - G2::normalize(*cast(y), *cast(x)); -} -void mclBnG2_add(mclBnG2 *z, const mclBnG2 *x, const mclBnG2 *y) -{ - G2::add(*cast(z),*cast(x), *cast(y)); -} -void mclBnG2_sub(mclBnG2 *z, const mclBnG2 *x, const mclBnG2 *y) -{ - G2::sub(*cast(z),*cast(x), *cast(y)); -} -void mclBnG2_mul(mclBnG2 *z, const mclBnG2 *x, const mclBnFr *y) -{ - G2::mul(*cast(z),*cast(x), *cast(y)); -} -void mclBnG2_mulCT(mclBnG2 *z, const mclBnG2 *x, const mclBnFr *y) -{ - G2::mulCT(*cast(z),*cast(x), *cast(y)); -} - -//////////////////////////////////////////////// -// set zero -void mclBnGT_clear(mclBnGT *x) -{ - cast(x)->clear(); -} -void mclBnGT_setInt(mclBnGT *y, mclInt x) -{ - cast(y)->clear(); - *(cast(y)->getFp0()) = x; -} -void mclBnGT_setInt32(mclBnGT *y, int x) -{ - cast(y)->clear(); - *(cast(y)->getFp0()) = x; -} - -int mclBnGT_setStr(mclBnGT *x, const char *buf, mclSize bufSize, int ioMode) -{ - return setStr(x, buf, bufSize, ioMode); -} -mclSize mclBnGT_deserialize(mclBnGT *x, const void *buf, mclSize bufSize) -{ - return (mclSize)cast(x)->deserialize(buf, bufSize); -} - -// return 1 if true -int mclBnGT_isEqual(const mclBnGT *x, const mclBnGT *y) -{ - return *cast(x) == *cast(y); -} -int mclBnGT_isZero(const mclBnGT *x) -{ - return cast(x)->isZero(); -} -int mclBnGT_isOne(const mclBnGT *x) -{ - return cast(x)->isOne(); -} - -mclSize mclBnGT_getStr(char *buf, mclSize maxBufSize, const mclBnGT *x, int ioMode) -{ - return cast(x)->getStr(buf, maxBufSize, ioMode); -} - -mclSize mclBnGT_serialize(void *buf, mclSize maxBufSize, const mclBnGT *x) -{ - return (mclSize)cast(x)->serialize(buf, maxBufSize); -} - -void mclBnGT_neg(mclBnGT *y, const mclBnGT *x) -{ - Fp12::neg(*cast(y), *cast(x)); -} -void mclBnGT_inv(mclBnGT *y, const mclBnGT *x) -{ - Fp12::inv(*cast(y), *cast(x)); -} -void mclBnGT_sqr(mclBnGT *y, const mclBnGT *x) -{ - Fp12::sqr(*cast(y), *cast(x)); -} -void mclBnGT_add(mclBnGT *z, const mclBnGT *x, const mclBnGT *y) -{ - Fp12::add(*cast(z),*cast(x), *cast(y)); -} -void mclBnGT_sub(mclBnGT *z, const mclBnGT *x, const mclBnGT *y) -{ - Fp12::sub(*cast(z),*cast(x), *cast(y)); -} -void mclBnGT_mul(mclBnGT *z, const mclBnGT *x, const mclBnGT *y) -{ - Fp12::mul(*cast(z),*cast(x), *cast(y)); -} -void mclBnGT_div(mclBnGT *z, const mclBnGT *x, const mclBnGT *y) -{ - Fp12::div(*cast(z),*cast(x), *cast(y)); -} - -void mclBnGT_pow(mclBnGT *z, const mclBnGT *x, const mclBnFr *y) -{ - Fp12::pow(*cast(z), *cast(x), *cast(y)); -} -void mclBnGT_powGeneric(mclBnGT *z, const mclBnGT *x, const mclBnFr *y) -{ - Fp12::powGeneric(*cast(z), *cast(x), *cast(y)); -} - -void mclBn_pairing(mclBnGT *z, const mclBnG1 *x, const mclBnG2 *y) -{ - pairing(*cast(z), *cast(x), *cast(y)); -} -void mclBn_finalExp(mclBnGT *y, const mclBnGT *x) -{ - finalExp(*cast(y), *cast(x)); -} -void mclBn_millerLoop(mclBnGT *z, const mclBnG1 *x, const mclBnG2 *y) -{ - millerLoop(*cast(z), *cast(x), *cast(y)); -} -int mclBn_getUint64NumToPrecompute(void) -{ - return int(BN::param.precomputedQcoeffSize * sizeof(Fp6) / sizeof(uint64_t)); -} - -void mclBn_precomputeG2(uint64_t *Qbuf, const mclBnG2 *Q) -{ - precomputeG2(cast(Qbuf), *cast(Q)); -} - -void mclBn_precomputedMillerLoop(mclBnGT *f, const mclBnG1 *P, const uint64_t *Qbuf) -{ - precomputedMillerLoop(*cast(f), *cast(P), cast(Qbuf)); -} - -void mclBn_precomputedMillerLoop2(mclBnGT *f, const mclBnG1 *P1, const uint64_t *Q1buf, const mclBnG1 *P2, const uint64_t *Q2buf) -{ - precomputedMillerLoop2(*cast(f), *cast(P1), cast(Q1buf), *cast(P2), cast(Q2buf)); -} - -void mclBn_precomputedMillerLoop2mixed(mclBnGT *f, const mclBnG1 *P1, const mclBnG2 *Q1, const mclBnG1 *P2, const uint64_t *Q2buf) -{ - precomputedMillerLoop2mixed(*cast(f), *cast(P1), *cast(Q1), *cast(P2), cast(Q2buf)); -} - -int mclBn_FrLagrangeInterpolation(mclBnFr *out, const mclBnFr *xVec, const mclBnFr *yVec, mclSize k) -{ - bool b; - mcl::LagrangeInterpolation(&b, *cast(out), cast(xVec), cast(yVec), k); - return b ? 0 : -1; -} -int mclBn_G1LagrangeInterpolation(mclBnG1 *out, const mclBnFr *xVec, const mclBnG1 *yVec, mclSize k) -{ - bool b; - mcl::LagrangeInterpolation(&b, *cast(out), cast(xVec), cast(yVec), k); - return b ? 0 : -1; -} -int mclBn_G2LagrangeInterpolation(mclBnG2 *out, const mclBnFr *xVec, const mclBnG2 *yVec, mclSize k) -{ - bool b; - mcl::LagrangeInterpolation(&b, *cast(out), cast(xVec), cast(yVec), k); - return b ? 0 : -1; -} -int mclBn_FrEvaluatePolynomial(mclBnFr *out, const mclBnFr *cVec, mclSize cSize, const mclBnFr *x) -{ - bool b; - mcl::evaluatePolynomial(&b, *cast(out), cast(cVec), cSize, *cast(x)); - return b ? 0 : -1; -} -int mclBn_G1EvaluatePolynomial(mclBnG1 *out, const mclBnG1 *cVec, mclSize cSize, const mclBnFr *x) -{ - bool b; - mcl::evaluatePolynomial(&b, *cast(out), cast(cVec), cSize, *cast(x)); - return b ? 0 : -1; -} -int mclBn_G2EvaluatePolynomial(mclBnG2 *out, const mclBnG2 *cVec, mclSize cSize, const mclBnFr *x) -{ - bool b; - mcl::evaluatePolynomial(&b, *cast(out), cast(cVec), cSize, *cast(x)); - return b ? 0 : -1; -} - -void mclBn_verifyOrderG1(int doVerify) -{ - verifyOrderG1(doVerify != 0); -} - -void mclBn_verifyOrderG2(int doVerify) -{ - verifyOrderG2(doVerify != 0); -} - -mclSize mclBnFp_getStr(char *buf, mclSize maxBufSize, const mclBnFp *x, int ioMode) -{ - return cast(x)->getStr(buf, maxBufSize, ioMode); -} -int mclBnFp_setStr(mclBnFp *x, const char *buf, mclSize bufSize, int ioMode) -{ - return setStr(x, buf, bufSize, ioMode); -} -mclSize mclBnFp_deserialize(mclBnFp *x, const void *buf, mclSize bufSize) -{ - return (mclSize)cast(x)->deserialize(buf, bufSize); -} - -mclSize mclBnFp_serialize(void *buf, mclSize maxBufSize, const mclBnFp *x) -{ - return (mclSize)cast(x)->serialize(buf, maxBufSize); -} - -void mclBnFp_clear(mclBnFp *x) -{ - cast(x)->clear(); -} - -int mclBnFp_setLittleEndian(mclBnFp *x, const void *buf, mclSize bufSize) -{ - cast(x)->setArrayMask((const char *)buf, bufSize); - return 0; -} - -int mclBnFp_setLittleEndianMod(mclBnFp *x, const void *buf, mclSize bufSize) -{ - bool b; - cast(x)->setArray(&b, (const char *)buf, bufSize, mcl::fp::Mod); - return b ? 0 : -1; -} -int mclBnFp_isEqual(const mclBnFp *x, const mclBnFp *y) -{ - return *cast(x) == *cast(y); -} - -int mclBnFp_setHashOf(mclBnFp *x, const void *buf, mclSize bufSize) -{ - cast(x)->setHashOf(buf, bufSize); - return 0; -} - -int mclBnFp_mapToG1(mclBnG1 *y, const mclBnFp *x) -{ - bool b; - mapToG1(&b, *cast(y), *cast(x)); - return b ? 0 : -1; -} - -mclSize mclBnFp2_deserialize(mclBnFp2 *x, const void *buf, mclSize bufSize) -{ - return (mclSize)cast(x)->deserialize(buf, bufSize); -} - -mclSize mclBnFp2_serialize(void *buf, mclSize maxBufSize, const mclBnFp2 *x) -{ - return (mclSize)cast(x)->serialize(buf, maxBufSize); -} - -void mclBnFp2_clear(mclBnFp2 *x) -{ - cast(x)->clear(); -} - -int mclBnFp2_isEqual(const mclBnFp2 *x, const mclBnFp2 *y) -{ - return *cast(x) == *cast(y); -} - -int mclBnFp2_mapToG2(mclBnG2 *y, const mclBnFp2 *x) -{ - bool b; - mapToG2(&b, *cast(y), *cast(x)); - return b ? 0 : -1; -} - -int mclBnG1_getBasePoint(mclBnG1 *x) -{ - *cast(x) = mcl::bn::getG1basePoint(); - return 0; -} - diff --git a/cases/tool/win/bls_win/include/mcl/lagrange.hpp b/cases/tool/win/bls_win/include/mcl/lagrange.hpp deleted file mode 100644 index 18e0597ec1..0000000000 --- a/cases/tool/win/bls_win/include/mcl/lagrange.hpp +++ /dev/null @@ -1,107 +0,0 @@ -#pragma once -/** - @file - @brief Lagrange Interpolation - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -namespace mcl { - -/* - recover out = f(0) by { (x, y) | x = S[i], y = f(x) = vec[i] } - @retval 0 if succeed else -1 -*/ -template -void LagrangeInterpolation(bool *pb, G& out, const F *S, const G *vec, size_t k) -{ - if (k == 0) { - *pb = false; - return; - } - if (k == 1) { - out = vec[0]; - *pb = true; - return; - } - /* - delta_{i,S}(0) = prod_{j != i} S[j] / (S[j] - S[i]) = a / b - where a = prod S[j], b = S[i] * prod_{j != i} (S[j] - S[i]) - */ - F a = S[0]; - for (size_t i = 1; i < k; i++) { - a *= S[i]; - } - if (a.isZero()) { - *pb = false; - return; - } - /* - f(0) = sum_i f(S[i]) delta_{i,S}(0) - */ - G r; - r.clear(); - for (size_t i = 0; i < k; i++) { - F b = S[i]; - for (size_t j = 0; j < k; j++) { - if (j != i) { - F v = S[j] - S[i]; - if (v.isZero()) { - *pb = false; - return; - } - b *= v; - } - } - G t; - G::mul(t, vec[i], a / b); - r += t; - } - out = r; - *pb = true; -} - -/* - out = f(x) = c[0] + c[1] * x + c[2] * x^2 + ... + c[cSize - 1] * x^(cSize - 1) - @retval 0 if succeed else -1 (if cSize == 0) -*/ -template -void evaluatePolynomial(bool *pb, G& out, const G *c, size_t cSize, const T& x) -{ - if (cSize == 0) { - *pb = false; - return; - } - if (cSize == 1) { - out = c[0]; - *pb = true; - return; - } - G y = c[cSize - 1]; - for (int i = (int)cSize - 2; i >= 0; i--) { - G::mul(y, y, x); - G::add(y, y, c[i]); - } - out = y; - *pb = true; -} - -#ifndef CYBOZU_DONT_USE_EXCEPTION -template -void LagrangeInterpolation(G& out, const F *S, const G *vec, size_t k) -{ - bool b; - LagrangeInterpolation(&b, out, S, vec, k); - if (!b) throw cybozu::Exception("LagrangeInterpolation"); -} - -template -void evaluatePolynomial(G& out, const G *c, size_t cSize, const T& x) -{ - bool b; - evaluatePolynomial(&b, out, c, cSize, x); - if (!b) throw cybozu::Exception("evaluatePolynomial"); -} -#endif - -} // mcl diff --git a/cases/tool/win/bls_win/include/mcl/op.hpp b/cases/tool/win/bls_win/include/mcl/op.hpp deleted file mode 100644 index c31b7d1521..0000000000 --- a/cases/tool/win/bls_win/include/mcl/op.hpp +++ /dev/null @@ -1,386 +0,0 @@ -#pragma once -/** - @file - @brief definition of Op - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include -#include -#include - -#if defined(__EMSCRIPTEN__) || defined(__wasm__) - #define MCL_DONT_USE_XBYAK - #define MCL_DONT_USE_OPENSSL -#endif -#if !defined(MCL_DONT_USE_XBYAK) && (defined(_WIN64) || defined(__x86_64__)) && (MCL_SIZEOF_UNIT == 8) - #define MCL_USE_XBYAK - #define MCL_XBYAK_DIRECT_CALL -#endif - -#define MCL_MAX_HASH_BIT_SIZE 512 - -namespace mcl { - -static const int version = 0x095; /* 0xABC = A.BC */ - -/* - specifies available string format mode for X::setIoMode() - // for Fp, Fp2, Fp6, Fp12 - default(0) : IoDec - printable string(zero terminated, variable size) - IoBin(2) | IoDec(10) | IoHex(16) | IoBinPrefix | IoHexPrefix - - byte string(not zero terminated, fixed size) - IoArray | IoArrayRaw - IoArray = IoSerialize - - // for Ec - affine(0) | IoEcCompY | IoComp - default : affine - - affine and IoEcCompY are available with ioMode for Fp - IoSerialize ignores ioMode for Fp - - IoAuto - dec or hex according to ios_base::fmtflags - IoBin - binary number([01]+) - IoDec - decimal number - IoHex - hexadecimal number([0-9a-fA-F]+) - IoBinPrefix - 0b + - IoHexPrefix - 0x + - IoArray - array of Unit(fixed size = Fp::getByteSize()) - IoArrayRaw - array of Unit(fixed size = Fp::getByteSize()) without Montgomery conversion - - // for Ec::setIoMode() - IoEcAffine(default) - "0" ; infinity - "1 " ; affine coordinate - - IoEcProj - "4" ; projective or jacobi coordinate - - IoEcCompY - 1-bit y prepresentation of elliptic curve - "2 " ; compressed for even y - "3 " ; compressed for odd y - - IoSerialize - if isMSBserialize(): // p is not full bit - size = Fp::getByteSize() - use MSB of array of x for 1-bit y for prime p where (p % 8 != 0) - [0] ; infinity - ; for even y - |1 ; for odd y ; |1 means set MSB of x - else: - size = Fp::getByteSize() + 1 - [0] ; infinity - 2 ; for even y - 3 ; for odd y -*/ -enum IoMode { - IoAuto = 0, // dec or hex according to ios_base::fmtflags - IoBin = 2, // binary number without prefix - IoDec = 10, // decimal number without prefix - IoHex = 16, // hexadecimal number without prefix - IoArray = 32, // array of Unit(fixed size) - IoArrayRaw = 64, // raw array of Unit without Montgomery conversion - IoPrefix = 128, // append '0b'(bin) or '0x'(hex) - IoBinPrefix = IoBin | IoPrefix, - IoHexPrefix = IoHex | IoPrefix, - IoEcAffine = 0, // affine coordinate - IoEcCompY = 256, // 1-bit y representation of elliptic curve - IoSerialize = 512, // use MBS for 1-bit y - IoFixedSizeByteSeq = IoSerialize, // obsolete - IoEcProj = 1024, // projective or jacobi coordinate - IoSerializeHexStr = 2048 // printable hex string -}; - -namespace fp { - -const size_t UnitBitSize = sizeof(Unit) * 8; - -const size_t maxUnitSize = (MCL_MAX_BIT_SIZE + UnitBitSize - 1) / UnitBitSize; -#define MCL_MAX_UNIT_SIZE ((MCL_MAX_BIT_SIZE + MCL_UNIT_BIT_SIZE - 1) / MCL_UNIT_BIT_SIZE) - -struct FpGenerator; -struct Op; - -typedef void (*void1u)(Unit*); -typedef void (*void2u)(Unit*, const Unit*); -typedef void (*void2uI)(Unit*, const Unit*, Unit); -typedef void (*void2uIu)(Unit*, const Unit*, Unit, const Unit*); -typedef void (*void2uOp)(Unit*, const Unit*, const Op&); -typedef void (*void3u)(Unit*, const Unit*, const Unit*); -typedef void (*void4u)(Unit*, const Unit*, const Unit*, const Unit*); -typedef int (*int2u)(Unit*, const Unit*); - -typedef Unit (*u1uII)(Unit*, Unit, Unit); -typedef Unit (*u3u)(Unit*, const Unit*, const Unit*); - -/* - disable -Wcast-function-type - the number of arguments of some JIT functions is smaller than that of T -*/ -template -T func_ptr_cast(S func) -{ - return reinterpret_cast(reinterpret_cast(func)); -} -struct Block { - const Unit *p; // pointer to original FpT.v_ - size_t n; - Unit v_[maxUnitSize]; -}; - -enum Mode { - FP_AUTO, - FP_GMP, - FP_GMP_MONT, - FP_LLVM, - FP_LLVM_MONT, - FP_XBYAK -}; - -enum PrimeMode { - PM_GENERIC = 0, - PM_NIST_P192, - PM_SECP256K1, - PM_NIST_P521 -}; - -enum MaskMode { - NoMask = 0, // throw if greater or equal - SmallMask = 1, // 1-bit smaller mask if greater or equal - MaskAndMod = 2, // mask and substract if greater or equal - Mod = 3 // mod p -}; - -struct Op { - /* - don't change the layout of rp and p - asm code assumes &rp + 1 == p - */ - Unit rp; - Unit p[maxUnitSize]; - mpz_class mp; - uint32_t pmod4; - mcl::SquareRoot sq; - mcl::Modp modp; - Unit half[maxUnitSize]; // (p + 1) / 2 - Unit oneRep[maxUnitSize]; // 1(=inv R if Montgomery) - /* - for Montgomery - one = 1 - R = (1 << (N * sizeof(Unit) * 8)) % p - R2 = (R * R) % p - R3 = RR^3 - */ - Unit one[maxUnitSize]; - Unit R2[maxUnitSize]; - Unit R3[maxUnitSize]; -#ifdef MCL_USE_XBYAK - FpGenerator *fg; - mcl::Array invTbl; -#endif - void3u fp_addA_; - void3u fp_subA_; - void2u fp_negA_; - void3u fp_mulA_; - void2u fp_sqrA_; - void3u fp2_addA_; - void3u fp2_subA_; - void2u fp2_negA_; - void3u fp2_mulA_; - void2u fp2_sqrA_; - void3u fpDbl_addA_; - void3u fpDbl_subA_; - void3u fpDbl_mulPreA_; - void2u fpDbl_sqrPreA_; - void2u fpDbl_modA_; - void3u fp2Dbl_mulPreA_; - void2u fp2Dbl_sqrPreA_; - size_t maxN; - size_t N; - size_t bitSize; - bool (*fp_isZero)(const Unit*); - void1u fp_clear; - void2u fp_copy; - void2u fp_shr1; - void3u fp_neg; - void4u fp_add; - void4u fp_sub; - void4u fp_mul; - void3u fp_sqr; - void2uOp fp_invOp; - void2uIu fp_mulUnit; // fpN1_mod + fp_mulUnitPre - - void3u fpDbl_mulPre; - void2u fpDbl_sqrPre; - int2u fp_preInv; - void2uI fp_mulUnitPre; // z[N + 1] = x[N] * y - void3u fpN1_mod; // y[N] = x[N + 1] % p[N] - - void4u fpDbl_add; - void4u fpDbl_sub; - void3u fpDbl_mod; - - u3u fp_addPre; // without modulo p - u3u fp_subPre; // without modulo p - u3u fpDbl_addPre; - u3u fpDbl_subPre; - /* - for Fp2 = F[u] / (u^2 + 1) - x = a + bu - */ - int xi_a; // xi = xi_a + u - void4u fp2_mulNF; - void2u fp2_inv; - void2u fp2_mul_xiA_; - uint32_t (*hash)(void *out, uint32_t maxOutSize, const void *msg, uint32_t msgSize); - - PrimeMode primeMode; - bool isFullBit; // true if bitSize % uniSize == 0 - bool isMont; // true if use Montgomery - bool isFastMod; // true if modulo is fast - - Op() - { - clear(); - } - ~Op() - { -#ifdef MCL_USE_XBYAK - destroyFpGenerator(fg); -#endif - } - void clear() - { - rp = 0; - memset(p, 0, sizeof(p)); - mp = 0; - pmod4 = 0; - sq.clear(); - // fg is not set - memset(half, 0, sizeof(half)); - memset(oneRep, 0, sizeof(oneRep)); - memset(one, 0, sizeof(one)); - memset(R2, 0, sizeof(R2)); - memset(R3, 0, sizeof(R3)); -#ifdef MCL_USE_XBYAK - invTbl.clear(); -#endif - fp_addA_ = 0; - fp_subA_ = 0; - fp_negA_ = 0; - fp_mulA_ = 0; - fp_sqrA_ = 0; - fp2_addA_ = 0; - fp2_subA_ = 0; - fp2_negA_ = 0; - fp2_mulA_ = 0; - fp2_sqrA_ = 0; - fpDbl_addA_ = 0; - fpDbl_subA_ = 0; - fpDbl_mulPreA_ = 0; - fpDbl_sqrPreA_ = 0; - fpDbl_modA_ = 0; - fp2Dbl_mulPreA_ = 0; - fp2Dbl_sqrPreA_ = 0; - maxN = 0; - N = 0; - bitSize = 0; - fp_isZero = 0; - fp_clear = 0; - fp_copy = 0; - fp_shr1 = 0; - fp_neg = 0; - fp_add = 0; - fp_sub = 0; - fp_mul = 0; - fp_sqr = 0; - fp_invOp = 0; - fp_mulUnit = 0; - - fpDbl_mulPre = 0; - fpDbl_sqrPre = 0; - fp_preInv = 0; - fp_mulUnitPre = 0; - fpN1_mod = 0; - - fpDbl_add = 0; - fpDbl_sub = 0; - fpDbl_mod = 0; - - fp_addPre = 0; - fp_subPre = 0; - fpDbl_addPre = 0; - fpDbl_subPre = 0; - - xi_a = 0; - fp2_mulNF = 0; - fp2_inv = 0; - fp2_mul_xiA_ = 0; - hash = 0; - - primeMode = PM_GENERIC; - isFullBit = false; - isMont = false; - isFastMod = false; - } - void fromMont(Unit* y, const Unit *x) const - { - /* - M(x, y) = xyR^-1 - y = M(x, 1) = xR^-1 - */ - fp_mul(y, x, one, p); - } - void toMont(Unit* y, const Unit *x) const - { - /* - y = M(x, R2) = xR^2 R^-1 = xR - */ - fp_mul(y, x, R2, p); - } - bool init(const mpz_class& p, size_t maxBitSize, int xi_a, Mode mode, size_t mclMaxBitSize = MCL_MAX_BIT_SIZE); -#ifdef MCL_USE_XBYAK - static FpGenerator* createFpGenerator(); - static void destroyFpGenerator(FpGenerator *fg); -#endif -private: - Op(const Op&); - void operator=(const Op&); -}; - -inline const char* getIoSeparator(int ioMode) -{ - return (ioMode & (IoArray | IoArrayRaw | IoSerialize | IoSerializeHexStr)) ? "" : " "; -} - -inline void dump(const char *s, size_t n) -{ - for (size_t i = 0; i < n; i++) { - printf("%02x ", (uint8_t)s[i]); - } - printf("\n"); -} - -#ifndef CYBOZU_DONT_USE_STRING -int detectIoMode(int ioMode, const std::ios_base& ios); - -inline void dump(const std::string& s) -{ - dump(s.c_str(), s.size()); -} -#endif - -} } // mcl::fp diff --git a/cases/tool/win/bls_win/include/mcl/operator.hpp b/cases/tool/win/bls_win/include/mcl/operator.hpp deleted file mode 100644 index e9bc506df2..0000000000 --- a/cases/tool/win/bls_win/include/mcl/operator.hpp +++ /dev/null @@ -1,177 +0,0 @@ -#pragma once -/** - @file - @brief operator class - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include -#include -#ifdef _MSC_VER - #ifndef MCL_FORCE_INLINE - #define MCL_FORCE_INLINE __forceinline - #endif - #pragma warning(push) - #pragma warning(disable : 4714) -#else - #ifndef MCL_FORCE_INLINE - #define MCL_FORCE_INLINE __attribute__((always_inline)) - #endif -#endif - -namespace mcl { namespace fp { - -template -struct Empty {}; - -/* - T must have add, sub, mul, inv, neg -*/ -template > -struct Operator : public E { - template MCL_FORCE_INLINE T& operator+=(const S& rhs) { T::add(static_cast(*this), static_cast(*this), rhs); return static_cast(*this); } - template MCL_FORCE_INLINE T& operator-=(const S& rhs) { T::sub(static_cast(*this), static_cast(*this), rhs); return static_cast(*this); } - template friend MCL_FORCE_INLINE T operator+(const T& a, const S& b) { T c; T::add(c, a, b); return c; } - template friend MCL_FORCE_INLINE T operator-(const T& a, const S& b) { T c; T::sub(c, a, b); return c; } - template MCL_FORCE_INLINE T& operator*=(const S& rhs) { T::mul(static_cast(*this), static_cast(*this), rhs); return static_cast(*this); } - template friend MCL_FORCE_INLINE T operator*(const T& a, const S& b) { T c; T::mul(c, a, b); return c; } - MCL_FORCE_INLINE T& operator/=(const T& rhs) { T c; T::inv(c, rhs); T::mul(static_cast(*this), static_cast(*this), c); return static_cast(*this); } - static MCL_FORCE_INLINE void div(T& c, const T& a, const T& b) { T t; T::inv(t, b); T::mul(c, a, t); } - friend MCL_FORCE_INLINE T operator/(const T& a, const T& b) { T c; T::inv(c, b); c *= a; return c; } - MCL_FORCE_INLINE T operator-() const { T c; T::neg(c, static_cast(*this)); return c; } - template class FpT> - static void pow(T& z, const T& x, const FpT& y) - { - fp::Block b; - y.getBlock(b); - powArray(z, x, b.p, b.n, false, false); - } - template class FpT> - static void powGeneric(T& z, const T& x, const FpT& y) - { - fp::Block b; - y.getBlock(b); - powArrayBase(z, x, b.p, b.n, false, false); - } - template class FpT> - static void powCT(T& z, const T& x, const FpT& y) - { - fp::Block b; - y.getBlock(b); - powArray(z, x, b.p, b.n, false, true); - } - static void pow(T& z, const T& x, int64_t y) - { - const uint64_t u = fp::abs_(y); -#if MCL_SIZEOF_UNIT == 8 - powArray(z, x, &u, 1, y < 0, false); -#else - uint32_t ua[2] = { uint32_t(u), uint32_t(u >> 32) }; - size_t un = ua[1] ? 2 : 1; - powArray(z, x, ua, un, y < 0, false); -#endif - } - static void pow(T& z, const T& x, const mpz_class& y) - { - powArray(z, x, gmp::getUnit(y), gmp::getUnitSize(y), y < 0, false); - } - static void powGeneric(T& z, const T& x, const mpz_class& y) - { - powArrayBase(z, x, gmp::getUnit(y), gmp::getUnitSize(y), y < 0, false); - } - static void powCT(T& z, const T& x, const mpz_class& y) - { - powArray(z, x, gmp::getUnit(y), gmp::getUnitSize(y), y < 0, true); - } - static void setPowArrayGLV(void f(T& z, const T& x, const Unit *y, size_t yn, bool isNegative, bool constTime)) - { - powArrayGLV = f; - } -private: - static void (*powArrayGLV)(T& z, const T& x, const Unit *y, size_t yn, bool isNegative, bool constTime); - static void powArray(T& z, const T& x, const Unit *y, size_t yn, bool isNegative, bool constTime) - { - if (powArrayGLV && (constTime || yn > 1)) { - powArrayGLV(z, x, y, yn, isNegative, constTime); - return; - } - powArrayBase(z, x, y, yn, isNegative, constTime); - } - static void powArrayBase(T& z, const T& x, const Unit *y, size_t yn, bool isNegative, bool constTime) - { - T tmp; - const T *px = &x; - if (&z == &x) { - tmp = x; - px = &tmp; - } - z = 1; - fp::powGeneric(z, *px, y, yn, T::mul, T::sqr, (void (*)(T&, const T&))0, constTime ? T::BaseFp::getBitSize() : 0); - if (isNegative) { - T::inv(z, z); - } - } -}; - -template -void (*Operator::powArrayGLV)(T& z, const T& x, const Unit *y, size_t yn, bool isNegative, bool constTime); - -/* - T must have save and load -*/ -template > -struct Serializable : public E { - void setStr(bool *pb, const char *str, int ioMode = 0) - { - size_t len = strlen(str); - size_t n = deserialize(str, len, ioMode); - *pb = n > 0 && n == len; - } - // return strlen(buf) if success else 0 - size_t getStr(char *buf, size_t maxBufSize, int ioMode = 0) const - { - size_t n = serialize(buf, maxBufSize, ioMode); - if (n == 0 || n == maxBufSize - 1) return 0; - buf[n] = '\0'; - return n; - } -#ifndef CYBOZU_DONT_USE_STRING - void setStr(const std::string& str, int ioMode = 0) - { - cybozu::StringInputStream is(str); - static_cast(*this).load(is, ioMode); - } - void getStr(std::string& str, int ioMode = 0) const - { - str.clear(); - cybozu::StringOutputStream os(str); - static_cast(*this).save(os, ioMode); - } - std::string getStr(int ioMode = 0) const - { - std::string str; - getStr(str, ioMode); - return str; - } -#endif - // return written bytes - size_t serialize(void *buf, size_t maxBufSize, int ioMode = IoSerialize) const - { - cybozu::MemoryOutputStream os(buf, maxBufSize); - bool b; - static_cast(*this).save(&b, os, ioMode); - return b ? os.getPos() : 0; - } - // return read bytes - size_t deserialize(const void *buf, size_t bufSize, int ioMode = IoSerialize) - { - cybozu::MemoryInputStream is(buf, bufSize); - bool b; - static_cast(*this).load(&b, is, ioMode); - return b ? is.getPos() : 0; - } -}; - -} } // mcl::fp - diff --git a/cases/tool/win/bls_win/include/mcl/paillier.hpp b/cases/tool/win/bls_win/include/mcl/paillier.hpp deleted file mode 100644 index 03e44cb167..0000000000 --- a/cases/tool/win/bls_win/include/mcl/paillier.hpp +++ /dev/null @@ -1,84 +0,0 @@ -#pragma once -/** - @file - @brief paillier encryption - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include - -namespace mcl { namespace paillier { - -class PublicKey { - size_t primeBitSize; - mpz_class g; - mpz_class n; - mpz_class n2; -public: - PublicKey() : primeBitSize(0) {} - void init(size_t _primeBitSize, const mpz_class& _n) - { - primeBitSize = _primeBitSize; - n = _n; - g = 1 + _n; - n2 = _n * _n; - } - void enc(mpz_class& c, const mpz_class& m, mcl::fp::RandGen rg = mcl::fp::RandGen()) const - { - if (rg.isZero()) rg = mcl::fp::RandGen::get(); - if (primeBitSize == 0) throw cybozu::Exception("paillier:PublicKey:not init"); - mpz_class r; - mcl::gmp::getRand(r, primeBitSize, rg); - mpz_class a, b; - mcl::gmp::powMod(a, g, m, n2); - mcl::gmp::powMod(b, r, n, n2); - c = (a * b) % n2; - } - /* - additive homomorphic encryption - cz = cx + cy - */ - void add(mpz_class& cz, mpz_class& cx, mpz_class& cy) const - { - cz = (cx * cy) % n2; - } -}; - -class SecretKey { - size_t primeBitSize; - mpz_class n; - mpz_class n2; - mpz_class lambda; - mpz_class invLambda; -public: - SecretKey() : primeBitSize(0) {} - /* - the size of prime is half of bitSize - */ - void init(size_t bitSize, mcl::fp::RandGen rg = mcl::fp::RandGen()) - { - if (rg.isZero()) rg = mcl::fp::RandGen::get(); - primeBitSize = bitSize / 2; - mpz_class p, q; - mcl::gmp::getRandPrime(p, primeBitSize, rg); - mcl::gmp::getRandPrime(q, primeBitSize, rg); - lambda = (p - 1) * (q - 1); - n = p * q; - n2 = n * n; - mcl::gmp::invMod(invLambda, lambda, n); - } - void getPublicKey(PublicKey& pub) const - { - pub.init(primeBitSize, n); - } - void dec(mpz_class& m, const mpz_class& c) const - { - mpz_class L; - mcl::gmp::powMod(L, c, lambda, n2); - L = ((L - 1) / n) % n; - m = (L * invLambda) % n; - } -}; - -} } // mcl::paillier diff --git a/cases/tool/win/bls_win/include/mcl/randgen.hpp b/cases/tool/win/bls_win/include/mcl/randgen.hpp deleted file mode 100644 index 30502fc107..0000000000 --- a/cases/tool/win/bls_win/include/mcl/randgen.hpp +++ /dev/null @@ -1,156 +0,0 @@ -#pragma once -/** - @file - @brief definition of Op - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#ifdef MCL_DONT_USE_CSPRNG - -// nothing - -#elif defined(MCL_USE_WEB_CRYPTO_API) -#include - -namespace mcl { -struct RandomGeneratorJS { - void read(bool *pb, void *buf, uint32_t byteSize) - { - // cf. https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues - if (byteSize > 65536) { - *pb = false; - return; - } - // use crypto.getRandomValues - EM_ASM({Module.cryptoGetRandomValues($0, $1)}, buf, byteSize); - *pb = true; - } -}; -} // mcl - -#else -#include -#if 0 // #if CYBOZU_CPP_VERSION >= CYBOZU_CPP_VERSION_CPP11 -#include -#endif -#endif -#ifdef _MSC_VER - #pragma warning(push) - #pragma warning(disable : 4521) -#endif -namespace mcl { namespace fp { - -namespace local { - -template -uint32_t readWrapper(void *self, void *buf, uint32_t byteSize) -{ - bool b; - reinterpret_cast(self)->read(&b, (uint8_t*)buf, byteSize); - if (b) return byteSize; - return 0; -} - -#if 0 // #if CYBOZU_CPP_VERSION >= CYBOZU_CPP_VERSION_CPP11 -template<> -inline uint32_t readWrapper(void *self, void *buf, uint32_t byteSize) -{ - const uint32_t keep = byteSize; - std::random_device& rg = *reinterpret_cast(self); - uint8_t *p = reinterpret_cast(buf); - uint32_t v; - while (byteSize >= 4) { - v = rg(); - memcpy(p, &v, 4); - p += 4; - byteSize -= 4; - } - if (byteSize > 0) { - v = rg(); - memcpy(p, &v, byteSize); - } - return keep; -} -#endif -} // local -/* - wrapper of cryptographically secure pseudo random number generator -*/ -class RandGen { - typedef uint32_t (*readFuncType)(void *self, void *buf, uint32_t byteSize); - void *self_; - readFuncType readFunc_; -public: - RandGen() : self_(0), readFunc_(0) {} - RandGen(void *self, readFuncType readFunc) : self_(self) , readFunc_(readFunc) {} - RandGen(const RandGen& rhs) : self_(rhs.self_), readFunc_(rhs.readFunc_) {} - RandGen(RandGen& rhs) : self_(rhs.self_), readFunc_(rhs.readFunc_) {} - RandGen& operator=(const RandGen& rhs) - { - self_ = rhs.self_; - readFunc_ = rhs.readFunc_; - return *this; - } - template - RandGen(RG& rg) - : self_(reinterpret_cast(&rg)) - , readFunc_(local::readWrapper) - { - } - void read(bool *pb, void *out, size_t byteSize) - { - uint32_t size = readFunc_(self_, out, static_cast(byteSize)); - *pb = size == byteSize; - } -#ifdef MCL_DONT_USE_CSPRNG - bool isZero() const { return false; } /* return false to avoid copying default rg */ -#else - bool isZero() const { return self_ == 0 && readFunc_ == 0; } -#endif - static RandGen& getDefaultRandGen() - { -#ifdef MCL_DONT_USE_CSPRNG - static RandGen wrg; -#elif defined(MCL_USE_WEB_CRYPTO_API) - static mcl::RandomGeneratorJS rg; - static RandGen wrg(rg); -#else - static cybozu::RandomGenerator rg; - static RandGen wrg(rg); -#endif - return wrg; - } - static RandGen& get() - { - static RandGen wrg(getDefaultRandGen()); - return wrg; - } - /* - rg must be thread safe - rg.read(void *buf, size_t byteSize); - */ - static void setRandGen(const RandGen& rg) - { - get() = rg; - } - /* - set rand function - if self and readFunc are NULL then set default rand function - */ - static void setRandFunc(void *self, readFuncType readFunc) - { - if (self == 0 && readFunc == 0) { - setRandGen(getDefaultRandGen()); - } else { - RandGen rg(self, readFunc); - setRandGen(rg); - } - } -}; - -} } // mcl::fp - -#ifdef _MSC_VER - #pragma warning(pop) -#endif diff --git a/cases/tool/win/bls_win/include/mcl/she.h b/cases/tool/win/bls_win/include/mcl/she.h deleted file mode 100644 index d474216bf4..0000000000 --- a/cases/tool/win/bls_win/include/mcl/she.h +++ /dev/null @@ -1,292 +0,0 @@ -#pragma once -/** - @file - @brief C api of somewhat homomorphic encryption with one-time multiplication, based on prime-order pairings - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include - -#ifdef _MSC_VER -#ifdef MCLSHE_DLL_EXPORT -#define MCLSHE_DLL_API __declspec(dllexport) -#else -#define MCLSHE_DLL_API __declspec(dllimport) -#ifndef MCLSHE_NO_AUTOLINK - #if MCLBN_FP_UNIT_SIZE == 4 - #pragma comment(lib, "mclshe256.lib") - #elif MCLBN_FP_UNIT_SIZE == 6 - #pragma comment(lib, "mclshe384.lib") - #else - #pragma comment(lib, "mclshe512.lib") - #endif -#endif -#endif -#else -#ifdef __EMSCRIPTEN__ - #define MCLSHE_DLL_API __attribute__((used)) -#elif defined(__wasm__) - #define MCLSHE_DLL_API __attribute__((visibility("default"))) -#else - #define MCLSHE_DLL_API -#endif -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct { - mclBnFr x; - mclBnFr y; -} sheSecretKey; - -typedef struct { - mclBnG1 xP; - mclBnG2 yQ; -} shePublicKey; - -struct shePrecomputedPublicKey; - -typedef struct { - mclBnG1 S; - mclBnG1 T; -} sheCipherTextG1; - -typedef struct { - mclBnG2 S; - mclBnG2 T; -} sheCipherTextG2; - -typedef struct { - mclBnGT g[4]; -} sheCipherTextGT; - -typedef struct { - mclBnFr d[4]; -} sheZkpBin; - -typedef struct { - mclBnFr d[4]; -} sheZkpEq; - -typedef struct { - mclBnFr d[7]; -} sheZkpBinEq; -/* - initialize this library - call this once before using the other functions - @param curve [in] enum value defined in mcl/bn.h - @param compiledTimeVar [in] specify MCLBN_COMPILED_TIME_VAR, - which macro is used to make sure that the values - are the same when the library is built and used - @return 0 if success - @note sheInit() is thread safe and serialized if it is called simultaneously - but don't call it while using other functions. -*/ -MCLSHE_DLL_API int sheInit(int curve, int compiledTimeVar); - -// return written byte size if success else 0 -MCLSHE_DLL_API mclSize sheSecretKeySerialize(void *buf, mclSize maxBufSize, const sheSecretKey *sec); -MCLSHE_DLL_API mclSize shePublicKeySerialize(void *buf, mclSize maxBufSize, const shePublicKey *pub); -MCLSHE_DLL_API mclSize sheCipherTextG1Serialize(void *buf, mclSize maxBufSize, const sheCipherTextG1 *c); -MCLSHE_DLL_API mclSize sheCipherTextG2Serialize(void *buf, mclSize maxBufSize, const sheCipherTextG2 *c); -MCLSHE_DLL_API mclSize sheCipherTextGTSerialize(void *buf, mclSize maxBufSize, const sheCipherTextGT *c); -MCLSHE_DLL_API mclSize sheZkpBinSerialize(void *buf, mclSize maxBufSize, const sheZkpBin *zkp); -MCLSHE_DLL_API mclSize sheZkpEqSerialize(void *buf, mclSize maxBufSize, const sheZkpEq *zkp); -MCLSHE_DLL_API mclSize sheZkpBinEqSerialize(void *buf, mclSize maxBufSize, const sheZkpBinEq *zkp); - -// return read byte size if sucess else 0 -MCLSHE_DLL_API mclSize sheSecretKeyDeserialize(sheSecretKey* sec, const void *buf, mclSize bufSize); -MCLSHE_DLL_API mclSize shePublicKeyDeserialize(shePublicKey* pub, const void *buf, mclSize bufSize); -MCLSHE_DLL_API mclSize sheCipherTextG1Deserialize(sheCipherTextG1* c, const void *buf, mclSize bufSize); -MCLSHE_DLL_API mclSize sheCipherTextG2Deserialize(sheCipherTextG2* c, const void *buf, mclSize bufSize); -MCLSHE_DLL_API mclSize sheCipherTextGTDeserialize(sheCipherTextGT* c, const void *buf, mclSize bufSize); -MCLSHE_DLL_API mclSize sheZkpBinDeserialize(sheZkpBin* zkp, const void *buf, mclSize bufSize); -MCLSHE_DLL_API mclSize sheZkpEqDeserialize(sheZkpEq* zkp, const void *buf, mclSize bufSize); -MCLSHE_DLL_API mclSize sheZkpBinEqDeserialize(sheZkpBinEq* zkp, const void *buf, mclSize bufSize); - -/* - set secretKey if system has /dev/urandom or CryptGenRandom - return 0 if success -*/ -MCLSHE_DLL_API int sheSecretKeySetByCSPRNG(sheSecretKey *sec); - -MCLSHE_DLL_API void sheGetPublicKey(shePublicKey *pub, const sheSecretKey *sec); - -/* - make table to decode DLP - return 0 if success -*/ -MCLSHE_DLL_API int sheSetRangeForDLP(mclSize hashSize); -MCLSHE_DLL_API int sheSetRangeForG1DLP(mclSize hashSize); -MCLSHE_DLL_API int sheSetRangeForG2DLP(mclSize hashSize); -MCLSHE_DLL_API int sheSetRangeForGTDLP(mclSize hashSize); - -/* - set tryNum to decode DLP -*/ -MCLSHE_DLL_API void sheSetTryNum(mclSize tryNum); - -/* - decode G1 via GT if use != 0 - @note faster if tryNum >= 300 -*/ -MCLSHE_DLL_API void sheUseDecG1ViaGT(int use); -/* - decode G2 via GT if use != 0 - @note faster if tryNum >= 100 -*/ -MCLSHE_DLL_API void sheUseDecG2ViaGT(int use); -/* - load table for DLP - return read size if success else 0 -*/ -MCLSHE_DLL_API mclSize sheLoadTableForG1DLP(const void *buf, mclSize bufSize); -MCLSHE_DLL_API mclSize sheLoadTableForG2DLP(const void *buf, mclSize bufSize); -MCLSHE_DLL_API mclSize sheLoadTableForGTDLP(const void *buf, mclSize bufSize); - -/* - save table for DLP - return written size if success else 0 -*/ -MCLSHE_DLL_API mclSize sheSaveTableForG1DLP(void *buf, mclSize maxBufSize); -MCLSHE_DLL_API mclSize sheSaveTableForG2DLP(void *buf, mclSize maxBufSize); -MCLSHE_DLL_API mclSize sheSaveTableForGTDLP(void *buf, mclSize maxBufSize); - -// return 0 if success -MCLSHE_DLL_API int sheEncG1(sheCipherTextG1 *c, const shePublicKey *pub, mclInt m); -MCLSHE_DLL_API int sheEncG2(sheCipherTextG2 *c, const shePublicKey *pub, mclInt m); -MCLSHE_DLL_API int sheEncGT(sheCipherTextGT *c, const shePublicKey *pub, mclInt m); -MCLSHE_DLL_API int shePrecomputedPublicKeyEncG1(sheCipherTextG1 *c, const shePrecomputedPublicKey *ppub, mclInt m); -MCLSHE_DLL_API int shePrecomputedPublicKeyEncG2(sheCipherTextG2 *c, const shePrecomputedPublicKey *ppub, mclInt m); -MCLSHE_DLL_API int shePrecomputedPublicKeyEncGT(sheCipherTextGT *c, const shePrecomputedPublicKey *ppub, mclInt m); - -/* - enc large integer - buf[bufSize] is little endian - bufSize <= (FrBitSize + 63) & ~63 - return 0 if success -*/ -MCLSHE_DLL_API int sheEncIntVecG1(sheCipherTextG1 *c, const shePublicKey *pub, const void *buf, mclSize bufSize); -MCLSHE_DLL_API int sheEncIntVecG2(sheCipherTextG2 *c, const shePublicKey *pub, const void *buf, mclSize bufSize); -MCLSHE_DLL_API int sheEncIntVecGT(sheCipherTextGT *c, const shePublicKey *pub, const void *buf, mclSize bufSize); -MCLSHE_DLL_API int shePrecomputedPublicKeyEncIntVecG1(sheCipherTextG1 *c, const shePrecomputedPublicKey *ppub, const void *buf, mclSize bufSize); -MCLSHE_DLL_API int shePrecomputedPublicKeyEncIntVecG2(sheCipherTextG2 *c, const shePrecomputedPublicKey *ppub, const void *buf, mclSize bufSize); -MCLSHE_DLL_API int shePrecomputedPublicKeyEncIntVecGT(sheCipherTextGT *c, const shePrecomputedPublicKey *ppub, const void *buf, mclSize bufSize); - -/* - m must be 0 or 1 -*/ -MCLSHE_DLL_API int sheEncWithZkpBinG1(sheCipherTextG1 *c, sheZkpBin *zkp, const shePublicKey *pub, int m); -MCLSHE_DLL_API int sheEncWithZkpBinG2(sheCipherTextG2 *c, sheZkpBin *zkp, const shePublicKey *pub, int m); -MCLSHE_DLL_API int sheEncWithZkpBinEq(sheCipherTextG1 *c1, sheCipherTextG2 *c2, sheZkpBinEq *zkp, const shePublicKey *pub, int m); -MCLSHE_DLL_API int shePrecomputedPublicKeyEncWithZkpBinG1(sheCipherTextG1 *c, sheZkpBin *zkp, const shePrecomputedPublicKey *ppub, int m); -MCLSHE_DLL_API int shePrecomputedPublicKeyEncWithZkpBinG2(sheCipherTextG2 *c, sheZkpBin *zkp, const shePrecomputedPublicKey *ppub, int m); -MCLSHE_DLL_API int shePrecomputedPublicKeyEncWithZkpBinEq(sheCipherTextG1 *c1, sheCipherTextG2 *c2, sheZkpBinEq *zkp, const shePrecomputedPublicKey *ppub, int m); - -/* - arbitary m -*/ -MCLSHE_DLL_API int sheEncWithZkpEq(sheCipherTextG1 *c1, sheCipherTextG2 *c2, sheZkpEq *zkp, const shePublicKey *pub, mclInt m); -MCLSHE_DLL_API int shePrecomputedPublicKeyEncWithZkpEq(sheCipherTextG1 *c1, sheCipherTextG2 *c2, sheZkpEq *zkp, const shePrecomputedPublicKey *ppub, mclInt m); - -/* - decode c and set m - return 0 if success -*/ -MCLSHE_DLL_API int sheDecG1(mclInt *m, const sheSecretKey *sec, const sheCipherTextG1 *c); -MCLSHE_DLL_API int sheDecG2(mclInt *m, const sheSecretKey *sec, const sheCipherTextG2 *c); -MCLSHE_DLL_API int sheDecGT(mclInt *m, const sheSecretKey *sec, const sheCipherTextGT *c); -/* - verify zkp - return 1 if valid -*/ -MCLSHE_DLL_API int sheVerifyZkpBinG1(const shePublicKey *pub, const sheCipherTextG1 *c, const sheZkpBin *zkp); -MCLSHE_DLL_API int sheVerifyZkpBinG2(const shePublicKey *pub, const sheCipherTextG2 *c, const sheZkpBin *zkp); -MCLSHE_DLL_API int sheVerifyZkpEq(const shePublicKey *pub, const sheCipherTextG1 *c1, const sheCipherTextG2 *c2, const sheZkpEq *zkp); -MCLSHE_DLL_API int sheVerifyZkpBinEq(const shePublicKey *pub, const sheCipherTextG1 *c1, const sheCipherTextG2 *c2, const sheZkpBinEq *zkp); -MCLSHE_DLL_API int shePrecomputedPublicKeyVerifyZkpBinG1(const shePrecomputedPublicKey *ppub, const sheCipherTextG1 *c, const sheZkpBin *zkp); -MCLSHE_DLL_API int shePrecomputedPublicKeyVerifyZkpBinG2(const shePrecomputedPublicKey *ppub, const sheCipherTextG2 *c, const sheZkpBin *zkp); -MCLSHE_DLL_API int shePrecomputedPublicKeyVerifyZkpEq(const shePrecomputedPublicKey *ppub, const sheCipherTextG1 *c1, const sheCipherTextG2 *c2, const sheZkpEq *zkp); -MCLSHE_DLL_API int shePrecomputedPublicKeyVerifyZkpBinEq(const shePrecomputedPublicKey *ppub, const sheCipherTextG1 *c1, const sheCipherTextG2 *c2, const sheZkpBinEq *zkp); -/* - decode c via GT and set m - return 0 if success -*/ -MCLSHE_DLL_API int sheDecG1ViaGT(mclInt *m, const sheSecretKey *sec, const sheCipherTextG1 *c); -MCLSHE_DLL_API int sheDecG2ViaGT(mclInt *m, const sheSecretKey *sec, const sheCipherTextG2 *c); - -/* - return 1 if dec(c) == 0 -*/ -MCLSHE_DLL_API int sheIsZeroG1(const sheSecretKey *sec, const sheCipherTextG1 *c); -MCLSHE_DLL_API int sheIsZeroG2(const sheSecretKey *sec, const sheCipherTextG2 *c); -MCLSHE_DLL_API int sheIsZeroGT(const sheSecretKey *sec, const sheCipherTextGT *c); - -// return 0 if success -// y = -x -MCLSHE_DLL_API int sheNegG1(sheCipherTextG1 *y, const sheCipherTextG1 *x); -MCLSHE_DLL_API int sheNegG2(sheCipherTextG2 *y, const sheCipherTextG2 *x); -MCLSHE_DLL_API int sheNegGT(sheCipherTextGT *y, const sheCipherTextGT *x); - -// return 0 if success -// z = x + y -MCLSHE_DLL_API int sheAddG1(sheCipherTextG1 *z, const sheCipherTextG1 *x, const sheCipherTextG1 *y); -MCLSHE_DLL_API int sheAddG2(sheCipherTextG2 *z, const sheCipherTextG2 *x, const sheCipherTextG2 *y); -MCLSHE_DLL_API int sheAddGT(sheCipherTextGT *z, const sheCipherTextGT *x, const sheCipherTextGT *y); - -// return 0 if success -// z = x - y -MCLSHE_DLL_API int sheSubG1(sheCipherTextG1 *z, const sheCipherTextG1 *x, const sheCipherTextG1 *y); -MCLSHE_DLL_API int sheSubG2(sheCipherTextG2 *z, const sheCipherTextG2 *x, const sheCipherTextG2 *y); -MCLSHE_DLL_API int sheSubGT(sheCipherTextGT *z, const sheCipherTextGT *x, const sheCipherTextGT *y); - -// return 0 if success -// z = x * y -MCLSHE_DLL_API int sheMulG1(sheCipherTextG1 *z, const sheCipherTextG1 *x, mclInt y); -MCLSHE_DLL_API int sheMulG2(sheCipherTextG2 *z, const sheCipherTextG2 *x, mclInt y); -MCLSHE_DLL_API int sheMulGT(sheCipherTextGT *z, const sheCipherTextGT *x, mclInt y); -/* - mul large integer - buf[bufSize] is little endian - bufSize <= (FrBitSize + 63) & ~63 - return 0 if success -*/ -MCLSHE_DLL_API int sheMulIntVecG1(sheCipherTextG1 *z, const sheCipherTextG1 *x, const void *buf, mclSize bufSize); -MCLSHE_DLL_API int sheMulIntVecG2(sheCipherTextG2 *z, const sheCipherTextG2 *x, const void *buf, mclSize bufSize); -MCLSHE_DLL_API int sheMulIntVecGT(sheCipherTextGT *z, const sheCipherTextGT *x, const void *buf, mclSize bufSize); - -// return 0 if success -// z = x * y -MCLSHE_DLL_API int sheMul(sheCipherTextGT *z, const sheCipherTextG1 *x, const sheCipherTextG2 *y); -/* - sheMul(z, x, y) = sheMulML(z, x, y) + sheFinalExpGT(z) - @note - Mul(x1, y1) + ... + Mul(xn, yn) = finalExp(MulML(x1, y1) + ... + MulML(xn, yn)) -*/ -MCLSHE_DLL_API int sheMulML(sheCipherTextGT *z, const sheCipherTextG1 *x, const sheCipherTextG2 *y); -MCLSHE_DLL_API int sheFinalExpGT(sheCipherTextGT *y, const sheCipherTextGT *x); - -// return 0 if success -// rerandomize(c) -MCLSHE_DLL_API int sheReRandG1(sheCipherTextG1 *c, const shePublicKey *pub); -MCLSHE_DLL_API int sheReRandG2(sheCipherTextG2 *c, const shePublicKey *pub); -MCLSHE_DLL_API int sheReRandGT(sheCipherTextGT *c, const shePublicKey *pub); - -// return 0 if success -// y = convert(x) -MCLSHE_DLL_API int sheConvertG1(sheCipherTextGT *y, const shePublicKey *pub, const sheCipherTextG1 *x); -MCLSHE_DLL_API int sheConvertG2(sheCipherTextGT *y, const shePublicKey *pub, const sheCipherTextG2 *x); - -// return nonzero if success -MCLSHE_DLL_API shePrecomputedPublicKey *shePrecomputedPublicKeyCreate(); -// call this function to avoid memory leak -MCLSHE_DLL_API void shePrecomputedPublicKeyDestroy(shePrecomputedPublicKey *ppub); -// return 0 if success -MCLSHE_DLL_API int shePrecomputedPublicKeyInit(shePrecomputedPublicKey *ppub, const shePublicKey *pub); - -#ifdef __cplusplus -} -#endif diff --git a/cases/tool/win/bls_win/include/mcl/she.hpp b/cases/tool/win/bls_win/include/mcl/she.hpp deleted file mode 100644 index 282f2fe837..0000000000 --- a/cases/tool/win/bls_win/include/mcl/she.hpp +++ /dev/null @@ -1,1947 +0,0 @@ -#pragma once -/** - @file - @brief somewhat homomorphic encryption with one-time multiplication, based on prime-order pairings - @author MITSUNARI Shigeo(@herumi) - see https://github.com/herumi/mcl/blob/master/misc/she/she.pdf - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include -#include -#include -#ifndef MCLBN_FP_UNIT_SIZE - #define MCLBN_FP_UNIT_SIZE 4 -#endif -#if MCLBN_FP_UNIT_SIZE == 4 -#include -#elif MCLBN_FP_UNIT_SIZE == 6 -#include -#elif MCLBN_FP_UNIT_SIZE == 8 -#include -#else - #error "MCLBN_FP_UNIT_SIZE must be 4, 6, or 8" -#endif - -#include -#include -#include - -namespace mcl { namespace she { - -using namespace mcl::bn; - -namespace local { - -#ifndef MCLSHE_WIN_SIZE - #define MCLSHE_WIN_SIZE 10 -#endif -static const size_t winSize = MCLSHE_WIN_SIZE; -static const size_t defaultTryNum = 2048; - -struct KeyCount { - uint32_t key; - int32_t count; // power - bool operator<(const KeyCount& rhs) const - { - return key < rhs.key; - } - bool isSame(const KeyCount& rhs) const - { - return key == rhs.key && count == rhs.count; - } -}; - -template -struct InterfaceForHashTable : G { - static G& castG(InterfaceForHashTable& x) { return static_cast(x); } - static const G& castG(const InterfaceForHashTable& x) { return static_cast(x); } - void clear() { clear(castG(*this)); } - void normalize() { normalize(castG(*this)); } - static bool isOdd(const G& P) { return P.y.isOdd(); } - static bool isZero(const G& P) { return P.isZero(); } - static bool isSameX(const G& P, const G& Q) { return P.x == Q.x; } - static uint32_t getHash(const G& P) { return uint32_t(*P.x.getUnit()); } - static void clear(G& P) { P.clear(); } - static void normalize(G& P) { P.normalize(); } - static void dbl(G& Q, const G& P) { G::dbl(Q, P); } - static void neg(G& Q, const G& P) { G::neg(Q, P); } - static void add(G& R, const G& P, const G& Q) { G::add(R, P, Q); } - template - static void mul(G& Q, const G& P, const INT& x) { G::mul(Q, P, x); } -}; - -/* - treat Fp12 as EC - unitary inverse of (a, b) = (a, -b) - then b.a.a or -b.a.a is odd -*/ -template -struct InterfaceForHashTable : G { - static G& castG(InterfaceForHashTable& x) { return static_cast(x); } - static const G& castG(const InterfaceForHashTable& x) { return static_cast(x); } - void clear() { clear(castG(*this)); } - void normalize() { normalize(castG(*this)); } - static bool isOdd(const G& x) { return x.b.a.a.isOdd(); } - static bool isZero(const G& x) { return x.isOne(); } - static bool isSameX(const G& x, const G& Q) { return x.a == Q.a; } - static uint32_t getHash(const G& x) { return uint32_t(*x.getFp0()->getUnit()); } - static void clear(G& x) { x = 1; } - static void normalize(G&) { } - static void dbl(G& y, const G& x) { G::sqr(y, x); } - static void neg(G& Q, const G& P) { G::unitaryInv(Q, P); } - static void add(G& z, const G& x, const G& y) { G::mul(z, x, y); } - template - static void mul(G& z, const G& x, const INT& y) { G::pow(z, x, y); } -}; - -template -char GtoChar(); -template<>char GtoChar() { return '1'; } -template<>char GtoChar() { return '2'; } -template<>char GtoChar() { return 'T'; } - -/* - HashTable or HashTable -*/ -template -class HashTable { - typedef InterfaceForHashTable I; - typedef std::vector KeyCountVec; - KeyCountVec kcv_; - G P_; - mcl::fp::WindowMethod wm_; - G nextP_; - G nextNegP_; - size_t tryNum_; - void setWindowMethod() - { - const size_t bitSize = G::BaseFp::BaseFp::getBitSize(); - wm_.init(static_cast(P_), bitSize, local::winSize); - } -public: - HashTable() : tryNum_(local::defaultTryNum) {} - bool operator==(const HashTable& rhs) const - { - if (kcv_.size() != rhs.kcv_.size()) return false; - for (size_t i = 0; i < kcv_.size(); i++) { - if (!kcv_[i].isSame(rhs.kcv_[i])) return false; - } - return P_ == rhs.P_ && nextP_ == rhs.nextP_; - } - bool operator!=(const HashTable& rhs) const { return !operator==(rhs); } - /* - compute log_P(xP) for |x| <= hashSize * tryNum - */ - void init(const G& P, size_t hashSize, size_t tryNum = local::defaultTryNum) - { - if (hashSize == 0) { - kcv_.clear(); - return; - } - if (hashSize >= 0x80000000u) throw cybozu::Exception("HashTable:init:hashSize is too large"); - P_ = P; - tryNum_ = tryNum; - kcv_.resize(hashSize); - G xP; - I::clear(xP); - for (int i = 1; i <= (int)kcv_.size(); i++) { - I::add(xP, xP, P_); - I::normalize(xP); - kcv_[i - 1].key = I::getHash(xP); - kcv_[i - 1].count = I::isOdd(xP) ? i : -i; - } - nextP_ = xP; - I::dbl(nextP_, nextP_); - I::add(nextP_, nextP_, P_); // nextP = (hasSize * 2 + 1)P - I::neg(nextNegP_, nextP_); // nextNegP = -nextP - /* - ascending order of abs(count) for same key - */ - std::stable_sort(kcv_.begin(), kcv_.end()); - setWindowMethod(); - } - void setTryNum(size_t tryNum) - { - this->tryNum_ = tryNum; - } - /* - log_P(xP) - find range which has same hash of xP in kcv_, - and detect it - */ - int basicLog(G xP, bool *pok = 0) const - { - if (pok) *pok = true; - if (I::isZero(xP)) return 0; - typedef KeyCountVec::const_iterator Iter; - KeyCount kc; - I::normalize(xP); - kc.key = I::getHash(xP); - kc.count = 0; - std::pair p = std::equal_range(kcv_.begin(), kcv_.end(), kc); - G Q; - I::clear(Q); - int prev = 0; - /* - check range which has same hash - */ - while (p.first != p.second) { - int count = p.first->count; - int abs_c = std::abs(count); - assert(abs_c >= prev); // assume ascending order - bool neg = count < 0; - G T; -// I::mul(T, P, abs_c - prev); - mulByWindowMethod(T, abs_c - prev); - I::add(Q, Q, T); - I::normalize(Q); - if (I::isSameX(Q, xP)) { - bool QisOdd = I::isOdd(Q); - bool xPisOdd = I::isOdd(xP); - if (QisOdd ^ xPisOdd ^ neg) return -count; - return count; - } - prev = abs_c; - ++p.first; - } - if (pok) { - *pok = false; - return 0; - } - throw cybozu::Exception("HashTable:basicLog:not found"); - } - /* - compute log_P(xP) - call basicLog at most 2 * tryNum - */ - int64_t log(const G& xP, bool *pok = 0) const - { - bool ok; - int c = basicLog(xP, &ok); - if (ok) { - if (pok) *pok = true; - return c; - } - G posP = xP, negP = xP; - int64_t posCenter = 0; - int64_t negCenter = 0; - int64_t next = (int64_t)kcv_.size() * 2 + 1; - for (size_t i = 1; i < tryNum_; i++) { - I::add(posP, posP, nextNegP_); - posCenter += next; - c = basicLog(posP, &ok); - if (ok) { - if (pok) *pok = true; - return posCenter + c; - } - I::add(negP, negP, nextP_); - negCenter -= next; - c = basicLog(negP, &ok); - if (ok) { - if (pok) *pok = true; - return negCenter + c; - } - } - if (pok) { - *pok = false; - return 0; - } - throw cybozu::Exception("HashTable:log:not found"); - } - /* - remark - tryNum is not saved. - */ - template - void save(OutputStream& os) const - { - cybozu::save(os, BN::param.cp.curveType); - cybozu::writeChar(os, GtoChar()); - cybozu::save(os, kcv_.size()); - cybozu::write(os, &kcv_[0], sizeof(kcv_[0]) * kcv_.size()); - P_.save(os); - } - size_t save(void *buf, size_t maxBufSize) const - { - cybozu::MemoryOutputStream os(buf, maxBufSize); - save(os); - return os.getPos(); - } - /* - remark - tryNum is not set - */ - template - void load(InputStream& is) - { - int curveType; - cybozu::load(curveType, is); - if (curveType != BN::param.cp.curveType) throw cybozu::Exception("HashTable:bad curveType") << curveType; - char c = 0; - if (!cybozu::readChar(&c, is) || c != GtoChar()) throw cybozu::Exception("HashTable:bad c") << (int)c; - size_t kcvSize; - cybozu::load(kcvSize, is); - kcv_.resize(kcvSize); - cybozu::read(&kcv_[0], sizeof(kcv_[0]) * kcvSize, is); - P_.load(is); - I::mul(nextP_, P_, (kcvSize * 2) + 1); - I::neg(nextNegP_, nextP_); - setWindowMethod(); - } - size_t load(const void *buf, size_t bufSize) - { - cybozu::MemoryInputStream is(buf, bufSize); - load(is); - return is.getPos(); - } - const mcl::fp::WindowMethod& getWM() const { return wm_; } - /* - mul(x, P, y); - */ - template - void mulByWindowMethod(G& x, const T& y) const - { - wm_.mul(static_cast(x), y); - } -}; - -template -int log(const G& P, const G& xP) -{ - if (xP.isZero()) return 0; - if (xP == P) return 1; - G negT; - G::neg(negT, P); - if (xP == negT) return -1; - G T = P; - for (int i = 2; i < 100; i++) { - T += P; - if (xP == T) return i; - G::neg(negT, T); - if (xP == negT) return -i; - } - throw cybozu::Exception("she:log:not found"); -} - -} // mcl::she::local - -template -struct SHET { - class SecretKey; - class PublicKey; - class PrecomputedPublicKey; - // additive HE - class CipherTextA; // = CipherTextG1 + CipherTextG2 - class CipherTextGT; // multiplicative HE - class CipherText; // CipherTextA + CipherTextGT - - static G1 P_; - static G2 Q_; - static GT ePQ_; // e(P, Q) - static std::vector Qcoeff_; - static local::HashTable PhashTbl_; - static local::HashTable QhashTbl_; - static mcl::fp::WindowMethod Qwm_; - typedef local::InterfaceForHashTable GTasEC; - static local::HashTable ePQhashTbl_; - static bool useDecG1ViaGT_; - static bool useDecG2ViaGT_; - static bool isG1only_; -private: - template - class CipherTextAT : public fp::Serializable > { - G S_, T_; - friend class SecretKey; - friend class PublicKey; - friend class PrecomputedPublicKey; - friend class CipherTextA; - friend class CipherTextGT; - bool isZero(const Fr& x) const - { - G xT; - G::mul(xT, T_, x); - return S_ == xT; - } - public: - const G& getS() const { return S_; } - const G& getT() const { return T_; } - void clear() - { - S_.clear(); - T_.clear(); - } - static void add(CipherTextAT& z, const CipherTextAT& x, const CipherTextAT& y) - { - /* - (S, T) + (S', T') = (S + S', T + T') - */ - G::add(z.S_, x.S_, y.S_); - G::add(z.T_, x.T_, y.T_); - } - static void sub(CipherTextAT& z, const CipherTextAT& x, const CipherTextAT& y) - { - /* - (S, T) - (S', T') = (S - S', T - T') - */ - G::sub(z.S_, x.S_, y.S_); - G::sub(z.T_, x.T_, y.T_); - } - // INT = int64_t or Fr - template - static void mul(CipherTextAT& z, const CipherTextAT& x, const INT& y) - { - G::mul(z.S_, x.S_, y); - G::mul(z.T_, x.T_, y); - } - static void neg(CipherTextAT& y, const CipherTextAT& x) - { - G::neg(y.S_, x.S_); - G::neg(y.T_, x.T_); - } - void add(const CipherTextAT& c) { add(*this, *this, c); } - void sub(const CipherTextAT& c) { sub(*this, *this, c); } - template - void load(bool *pb, InputStream& is, int ioMode = IoSerialize) - { - S_.load(pb, is, ioMode); if (!*pb) return; - T_.load(pb, is, ioMode); - } - template - void save(bool *pb, OutputStream& os, int ioMode = IoSerialize) const - { - const char sep = *fp::getIoSeparator(ioMode); - S_.save(pb, os, ioMode); if (!*pb) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - T_.save(pb, os, ioMode); - } - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("she:CipherTextA:load"); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("she:CipherTextA:save"); - } - friend std::istream& operator>>(std::istream& is, CipherTextAT& self) - { - self.load(is, fp::detectIoMode(G::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const CipherTextAT& self) - { - self.save(os, fp::detectIoMode(G::getIoMode(), os)); - return os; - } - bool operator==(const CipherTextAT& rhs) const - { - return S_ == rhs.S_ && T_ == rhs.T_; - } - bool operator!=(const CipherTextAT& rhs) const { return !operator==(rhs); } - }; - /* - g1 = millerLoop(P1, Q) - g2 = millerLoop(P2, Q) - */ - static void doubleMillerLoop(GT& g1, GT& g2, const G1& P1, const G1& P2, const G2& Q) - { -#if 1 - std::vector Qcoeff; - precomputeG2(Qcoeff, Q); - precomputedMillerLoop(g1, P1, Qcoeff); - precomputedMillerLoop(g2, P2, Qcoeff); -#else - millerLoop(g1, P1, Q); - millerLoop(g2, P2, Q); -#endif - } - static void finalExp4(GT out[4], const GT in[4]) - { - for (int i = 0; i < 4; i++) { - finalExp(out[i], in[i]); - } - } - static void tensorProductML(GT g[4], const G1& S1, const G1& T1, const G2& S2, const G2& T2) - { - /* - (S1, T1) x (S2, T2) = (ML(S1, S2), ML(S1, T2), ML(T1, S2), ML(T1, T2)) - */ - doubleMillerLoop(g[0], g[2], S1, T1, S2); - doubleMillerLoop(g[1], g[3], S1, T1, T2); - } - static void tensorProduct(GT g[4], const G1& S1, const G1& T1, const G2& S2, const G2& T2) - { - /* - (S1, T1) x (S2, T2) = (e(S1, S2), e(S1, T2), e(T1, S2), e(T1, T2)) - */ - tensorProductML(g,S1, T1, S2,T2); - finalExp4(g, g); - } - template - struct ZkpT : public fp::Serializable > { - Fr d_[n]; - template - void load(bool *pb, InputStream& is, int ioMode = IoSerialize) - { - for (size_t i = 0; i < n; i++) { - d_[i].load(pb, is, ioMode); if (!*pb) return; - } - } - template - void save(bool *pb, OutputStream& os, int ioMode = IoSerialize) const - { - const char sep = *fp::getIoSeparator(ioMode); - d_[0].save(pb, os, ioMode); if (!*pb) return; - for (size_t i = 1; i < n; i++) { - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - d_[i].save(pb, os, ioMode); - } - } - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("she:ZkpT:load"); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("she:ZkpT:save"); - } - friend std::istream& operator>>(std::istream& is, ZkpT& self) - { - self.load(is, fp::detectIoMode(Fr::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const ZkpT& self) - { - self.save(os, fp::detectIoMode(Fr::getIoMode(), os)); - return os; - } - }; - struct ZkpBinTag; - struct ZkpEqTag; // d_[] = { c, sp, ss, sm } - struct ZkpBinEqTag; // d_[] = { d0, d1, sp0, sp1, ss, sp, sm } -public: - /* - Zkp for m = 0 or 1 - */ - typedef ZkpT ZkpBin; - /* - Zkp for decG1(c1) == decG2(c2) - */ - typedef ZkpT ZkpEq; - /* - Zkp for (m = 0 or 1) and decG1(c1) == decG2(c2) - */ - typedef ZkpT ZkpBinEq; - - typedef CipherTextAT CipherTextG1; - typedef CipherTextAT CipherTextG2; - - static void init(const mcl::CurveParam& cp = mcl::BN254, size_t hashSize = 1024, size_t tryNum = local::defaultTryNum) - { - initPairing(cp); - hashAndMapToG1(P_, "0"); - hashAndMapToG2(Q_, "0"); - pairing(ePQ_, P_, Q_); - precomputeG2(Qcoeff_, Q_); - setRangeForDLP(hashSize); - useDecG1ViaGT_ = false; - useDecG2ViaGT_ = false; - isG1only_ = false; - setTryNum(tryNum); - } - static void init(size_t hashSize, size_t tryNum = local::defaultTryNum) - { - init(mcl::BN254, hashSize, tryNum); - } - /* - standard lifted ElGamal encryption - */ - static void initG1only(const mcl::EcParam& para, size_t hashSize = 1024, size_t tryNum = local::defaultTryNum) - { - Fp::init(para.p); - Fr::init(para.n); - G1::init(para.a, para.b); - const Fp x0(para.gx); - const Fp y0(para.gy); - P_.set(x0, y0); - - setRangeForG1DLP(hashSize); - useDecG1ViaGT_ = false; - useDecG2ViaGT_ = false; - isG1only_ = true; - setTryNum(tryNum); - } - /* - set range for G1-DLP - */ - static void setRangeForG1DLP(size_t hashSize) - { - PhashTbl_.init(P_, hashSize); - } - /* - set range for G2-DLP - */ - static void setRangeForG2DLP(size_t hashSize) - { - QhashTbl_.init(Q_, hashSize); - } - /* - set range for GT-DLP - */ - static void setRangeForGTDLP(size_t hashSize) - { - ePQhashTbl_.init(ePQ_, hashSize); - } - /* - set range for G1/G2/GT DLP - decode message m for |m| <= hasSize * tryNum - decode time = O(log(hasSize) * tryNum) - */ - static void setRangeForDLP(size_t hashSize) - { - setRangeForG1DLP(hashSize); - setRangeForG2DLP(hashSize); - setRangeForGTDLP(hashSize); - } - static void setTryNum(size_t tryNum) - { - PhashTbl_.setTryNum(tryNum); - QhashTbl_.setTryNum(tryNum); - ePQhashTbl_.setTryNum(tryNum); - } - static void useDecG1ViaGT(bool use = true) - { - useDecG1ViaGT_ = use; - } - static void useDecG2ViaGT(bool use = true) - { - useDecG2ViaGT_ = use; - } - /* - only one element is necessary for each G1 and G2. - this is better than David Mandell Freeman's algorithm - */ - class SecretKey : public fp::Serializable { - Fr x_, y_; - void getPowOfePQ(GT& v, const CipherTextGT& c) const - { - /* - (s, t, u, v) := (e(S, S'), e(S, T'), e(T, S'), e(T, T')) - s v^(xy) / (t^y u^x) = s (v^x / t) ^ y / u^x - = e(P, Q)^(mm') - */ - GT t, u; - GT::unitaryInv(t, c.g_[1]); - GT::unitaryInv(u, c.g_[2]); - GT::pow(v, c.g_[3], x_); - v *= t; - GT::pow(v, v, y_); - GT::pow(u, u, x_); - v *= u; - v *= c.g_[0]; - } - public: - void setByCSPRNG() - { - x_.setRand(); - if (!isG1only_) y_.setRand(); - } - /* - set xP and yQ - */ - void getPublicKey(PublicKey& pub) const - { - pub.set(x_, y_); - } -#if 0 - // log_x(y) - int log(const GT& x, const GT& y) const - { - if (y == 1) return 0; - if (y == x) return 1; - GT inv; - GT::unitaryInv(inv, x); - if (y == inv) return -1; - GT t = x; - for (int i = 2; i < 100; i++) { - t *= x; - if (y == t) return i; - GT::unitaryInv(inv, t); - if (y == inv) return -i; - } - throw cybozu::Exception("she:dec:log:not found"); - } -#endif - int64_t dec(const CipherTextG1& c, bool *pok = 0) const - { - if (useDecG1ViaGT_) return decViaGT(c); - /* - S = mP + rxP - T = rP - R = S - xT = mP - */ - G1 R; - G1::mul(R, c.T_, x_); - G1::sub(R, c.S_, R); - return PhashTbl_.log(R, pok); - } - int64_t dec(const CipherTextG2& c, bool *pok = 0) const - { - if (useDecG2ViaGT_) return decViaGT(c); - G2 R; - G2::mul(R, c.T_, y_); - G2::sub(R, c.S_, R); - return QhashTbl_.log(R, pok); - } - int64_t dec(const CipherTextA& c, bool *pok = 0) const - { - return dec(c.c1_, pok); - } - int64_t dec(const CipherTextGT& c, bool *pok = 0) const - { - GT v; - getPowOfePQ(v, c); - return ePQhashTbl_.log(v, pok); -// return log(g, v); - } - int64_t decViaGT(const CipherTextG1& c, bool *pok = 0) const - { - G1 R; - G1::mul(R, c.T_, x_); - G1::sub(R, c.S_, R); - GT v; - pairing(v, R, Q_); - return ePQhashTbl_.log(v, pok); - } - int64_t decViaGT(const CipherTextG2& c, bool *pok = 0) const - { - G2 R; - G2::mul(R, c.T_, y_); - G2::sub(R, c.S_, R); - GT v; - pairing(v, P_, R); - return ePQhashTbl_.log(v, pok); - } - int64_t dec(const CipherText& c, bool *pok = 0) const - { - if (c.isMultiplied()) { - return dec(c.m_, pok); - } else { - return dec(c.a_, pok); - } - } - bool isZero(const CipherTextG1& c) const - { - return c.isZero(x_); - } - bool isZero(const CipherTextG2& c) const - { - return c.isZero(y_); - } - bool isZero(const CipherTextA& c) const - { - return c.c1_.isZero(x_); - } - bool isZero(const CipherTextGT& c) const - { - GT v; - getPowOfePQ(v, c); - return v.isOne(); - } - bool isZero(const CipherText& c) const - { - if (c.isMultiplied()) { - return isZero(c.m_); - } else { - return isZero(c.a_); - } - } - template - void load(bool *pb, InputStream& is, int ioMode = IoSerialize) - { - x_.load(pb, is, ioMode); if (!*pb) return; - if (!isG1only_) y_.load(pb, is, ioMode); - } - template - void save(bool *pb, OutputStream& os, int ioMode = IoSerialize) const - { - const char sep = *fp::getIoSeparator(ioMode); - x_.save(pb, os, ioMode); if (!*pb) return; - if (isG1only_) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - y_.save(os, ioMode); - } - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("she:SecretKey:load"); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("she:SecretKey:save"); - } - friend std::istream& operator>>(std::istream& is, SecretKey& self) - { - self.load(is, fp::detectIoMode(Fr::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const SecretKey& self) - { - self.save(os, fp::detectIoMode(Fr::getIoMode(), os)); - return os; - } - bool operator==(const SecretKey& rhs) const - { - return x_ == rhs.x_ && (isG1only_ || y_ == rhs.y_); - } - bool operator!=(const SecretKey& rhs) const { return !operator==(rhs); } - }; -private: - /* - simple ElGamal encryptionfor G1 and G2 - (S, T) = (m P + r xP, rP) - Pmul.mul(X, a) // X = a P - xPmul.mul(X, a) // X = a xP - use *encRand if encRand is not null - */ - template - static void ElGamalEnc(G& S, G& T, const INT& m, const mcl::fp::WindowMethod& Pmul, const MulG& xPmul, const Fr *encRand = 0) - { - Fr r; - if (encRand) { - r = *encRand; - } else { - r.setRand(); - } - Pmul.mul(static_cast(T), r); - xPmul.mul(S, r); // S = r xP - if (m == 0) return; - G C; - Pmul.mul(static_cast(C), m); - S += C; - } - /* - https://github.com/herumi/mcl/blob/master/misc/she/nizkp.pdf - - encRand is a random value used for ElGamalEnc() - d[1-m] ; rand - s[1-m] ; rand - R[0][1-m] = s[1-m] P - d[1-m] T - R[1][1-m] = s[1-m] xP - d[1-m] (S - (1-m) P) - r ; rand - R[0][m] = r P - R[1][m] = r xP - c = H(S, T, R[0][0], R[0][1], R[1][0], R[1][1]) - d[m] = c - d[1-m] - s[m] = r + d[m] encRand - */ - template - static void makeZkpBin(ZkpBin& zkp, const G& S, const G& T, const Fr& encRand, const G& P, int m, const mcl::fp::WindowMethod& Pmul, const MulG& xPmul) - { - if (m != 0 && m != 1) throw cybozu::Exception("makeZkpBin:bad m") << m; - Fr *s = &zkp.d_[0]; - Fr *d = &zkp.d_[2]; - G R[2][2]; - d[1-m].setRand(); - s[1-m].setRand(); - G T1, T2; - Pmul.mul(static_cast(T1), s[1-m]); // T1 = s[1-m] P - G::mul(T2, T, d[1-m]); - G::sub(R[0][1-m], T1, T2); // s[1-m] P - d[1-m]T - xPmul.mul(T1, s[1-m]); // T1 = s[1-m] xP - if (m == 0) { - G::sub(T2, S, P); - G::mul(T2, T2, d[1-m]); - } else { - G::mul(T2, S, d[1-m]); - } - G::sub(R[1][1-m], T1, T2); // s[1-m] xP - d[1-m](S - (1-m) P) - Fr r; - r.setRand(); - Pmul.mul(static_cast(R[0][m]), r); // R[0][m] = r P - xPmul.mul(R[1][m], r); // R[1][m] = r xP - char buf[sizeof(G) * 2]; - cybozu::MemoryOutputStream os(buf, sizeof(buf)); - S.save(os); - T.save(os); - R[0][0].save(os); - R[0][1].save(os); - R[1][0].save(os); - R[1][1].save(os); - Fr c; - c.setHashOf(buf, os.getPos()); - d[m] = c - d[1-m]; - s[m] = r + d[m] * encRand; - } - /* - R[0][i] = s[i] P - d[i] T ; i = 0,1 - R[1][0] = s[0] xP - d[0] S - R[1][1] = s[1] xP - d[1](S - P) - c = H(S, T, R[0][0], R[0][1], R[1][0], R[1][1]) - c == d[0] + d[1] - */ - template - static bool verifyZkpBin(const G& S, const G& T, const G& P, const ZkpBin& zkp, const mcl::fp::WindowMethod& Pmul, const MulG& xPmul) - { - const Fr *s = &zkp.d_[0]; - const Fr *d = &zkp.d_[2]; - G R[2][2]; - G T1, T2; - for (int i = 0; i < 2; i++) { - Pmul.mul(static_cast(T1), s[i]); // T1 = s[i] P - G::mul(T2, T, d[i]); - G::sub(R[0][i], T1, T2); - } - xPmul.mul(T1, s[0]); // T1 = s[0] xP - G::mul(T2, S, d[0]); - G::sub(R[1][0], T1, T2); - xPmul.mul(T1, s[1]); // T1 = x[1] xP - G::sub(T2, S, P); - G::mul(T2, T2, d[1]); - G::sub(R[1][1], T1, T2); - char buf[sizeof(G) * 2]; - cybozu::MemoryOutputStream os(buf, sizeof(buf)); - S.save(os); - T.save(os); - R[0][0].save(os); - R[0][1].save(os); - R[1][0].save(os); - R[1][1].save(os); - Fr c; - c.setHashOf(buf, os.getPos()); - return c == d[0] + d[1]; - } - /* - encRand1, encRand2 are random values use for ElGamalEnc() - */ - template - static void makeZkpEq(ZkpEq& zkp, G1& S1, G1& T1, G2& S2, G2& T2, const INT& m, const mcl::fp::WindowMethod& Pmul, const MulG1& xPmul, const mcl::fp::WindowMethod& Qmul, const MulG2& yQmul) - { - Fr p, s; - p.setRand(); - s.setRand(); - ElGamalEnc(S1, T1, m, Pmul, xPmul, &p); - ElGamalEnc(S2, T2, m, Qmul, yQmul, &s); - Fr rp, rs, rm; - rp.setRand(); - rs.setRand(); - rm.setRand(); - G1 R1, R2; - G2 R3, R4; - ElGamalEnc(R1, R2, rm, Pmul, xPmul, &rp); - ElGamalEnc(R3, R4, rm, Qmul, yQmul, &rs); - char buf[sizeof(G1) * 4 + sizeof(G2) * 4]; - cybozu::MemoryOutputStream os(buf, sizeof(buf)); - S1.save(os); - T1.save(os); - S2.save(os); - T2.save(os); - R1.save(os); - R2.save(os); - R3.save(os); - R4.save(os); - Fr& c = zkp.d_[0]; - Fr& sp = zkp.d_[1]; - Fr& ss = zkp.d_[2]; - Fr& sm = zkp.d_[3]; - c.setHashOf(buf, os.getPos()); - Fr::mul(sp, c, p); - sp += rp; - Fr::mul(ss, c, s); - ss += rs; - Fr::mul(sm, c, m); - sm += rm; - } - template - static bool verifyZkpEq(const ZkpEq& zkp, const G1& S1, const G1& T1, const G2& S2, const G2& T2, const mcl::fp::WindowMethod& Pmul, const MulG1& xPmul, const mcl::fp::WindowMethod& Qmul, const MulG2& yQmul) - { - const Fr& c = zkp.d_[0]; - const Fr& sp = zkp.d_[1]; - const Fr& ss = zkp.d_[2]; - const Fr& sm = zkp.d_[3]; - G1 R1, R2, X1; - G2 R3, R4, X2; - ElGamalEnc(R1, R2, sm, Pmul, xPmul, &sp); - G1::mul(X1, S1, c); - R1 -= X1; - G1::mul(X1, T1, c); - R2 -= X1; - ElGamalEnc(R3, R4, sm, Qmul, yQmul, &ss); - G2::mul(X2, S2, c); - R3 -= X2; - G2::mul(X2, T2, c); - R4 -= X2; - char buf[sizeof(G1) * 4 + sizeof(G2) * 4]; - cybozu::MemoryOutputStream os(buf, sizeof(buf)); - S1.save(os); - T1.save(os); - S2.save(os); - T2.save(os); - R1.save(os); - R2.save(os); - R3.save(os); - R4.save(os); - Fr c2; - c2.setHashOf(buf, os.getPos()); - return c == c2; - } - /* - encRand1, encRand2 are random values use for ElGamalEnc() - */ - template - static void makeZkpBinEq(ZkpBinEq& zkp, G1& S1, G1& T1, G2& S2, G2& T2, int m, const mcl::fp::WindowMethod& Pmul, const MulG1& xPmul, const mcl::fp::WindowMethod& Qmul, const MulG2& yQmul) - { - if (m != 0 && m != 1) throw cybozu::Exception("makeZkpBinEq:bad m") << m; - Fr *d = &zkp.d_[0]; - Fr *spm = &zkp.d_[2]; - Fr& ss = zkp.d_[4]; - Fr& sp = zkp.d_[5]; - Fr& sm = zkp.d_[6]; - Fr p, s; - p.setRand(); - s.setRand(); - ElGamalEnc(S1, T1, m, Pmul, xPmul, &p); - ElGamalEnc(S2, T2, m, Qmul, yQmul, &s); - d[1-m].setRand(); - spm[1-m].setRand(); - G1 R1[2], R2[2], X1; - Pmul.mul(static_cast(R1[1-m]), spm[1-m]); - G1::mul(X1, T1, d[1-m]); - R1[1-m] -= X1; - if (m == 0) { - G1::sub(X1, S1, P_); - G1::mul(X1, X1, d[1-m]); - } else { - G1::mul(X1, S1, d[1-m]); - } - xPmul.mul(R2[1-m], spm[1-m]); - R2[1-m] -= X1; - Fr rpm, rp, rs, rm; - rpm.setRand(); - rp.setRand(); - rs.setRand(); - rm.setRand(); - ElGamalEnc(R2[m], R1[m], 0, Pmul, xPmul, &rpm); - G1 R3, R4; - G2 R5, R6; - ElGamalEnc(R4, R3, rm, Pmul, xPmul, &rp); - ElGamalEnc(R6, R5, rm, Qmul, yQmul, &rs); - char buf[sizeof(Fp) * 12]; - cybozu::MemoryOutputStream os(buf, sizeof(buf)); - S1.save(os); - T1.save(os); - R1[0].save(os); - R1[1].save(os); - R2[0].save(os); - R2[1].save(os); - R3.save(os); - R4.save(os); - R5.save(os); - R6.save(os); - Fr c; - c.setHashOf(buf, os.getPos()); - Fr::sub(d[m], c, d[1-m]); - Fr::mul(spm[m], d[m], p); - spm[m] += rpm; - Fr::mul(sp, c, p); - sp += rp; - Fr::mul(ss, c, s); - ss += rs; - Fr::mul(sm, c, m); - sm += rm; - } - template - static bool verifyZkpBinEq(const ZkpBinEq& zkp, const G1& S1, const G1& T1, const G2& S2, const G2& T2, const mcl::fp::WindowMethod& Pmul, const MulG1& xPmul, const mcl::fp::WindowMethod& Qmul, const MulG2& yQmul) - { - const Fr *d = &zkp.d_[0]; - const Fr *spm = &zkp.d_[2]; - const Fr& ss = zkp.d_[4]; - const Fr& sp = zkp.d_[5]; - const Fr& sm = zkp.d_[6]; - G1 R1[2], R2[2], X1; - for (int i = 0; i < 2; i++) { - Pmul.mul(static_cast(R1[i]), spm[i]); - G1::mul(X1, T1, d[i]); - R1[i] -= X1; - } - xPmul.mul(R2[0], spm[0]); - G1::mul(X1, S1, d[0]); - R2[0] -= X1; - xPmul.mul(R2[1], spm[1]); - G1::sub(X1, S1, P_); - G1::mul(X1, X1, d[1]); - R2[1] -= X1; - Fr c; - Fr::add(c, d[0], d[1]); - G1 R3, R4; - G2 R5, R6; - ElGamalEnc(R4, R3, sm, Pmul, xPmul, &sp); - G1::mul(X1, T1, c); - R3 -= X1; - G1::mul(X1, S1, c); - R4 -= X1; - ElGamalEnc(R6, R5, sm, Qmul, yQmul, &ss); - G2 X2; - G2::mul(X2, T2, c); - R5 -= X2; - G2::mul(X2, S2, c); - R6 -= X2; - char buf[sizeof(Fp) * 12]; - cybozu::MemoryOutputStream os(buf, sizeof(buf)); - S1.save(os); - T1.save(os); - R1[0].save(os); - R1[1].save(os); - R2[0].save(os); - R2[1].save(os); - R3.save(os); - R4.save(os); - R5.save(os); - R6.save(os); - Fr c2; - c2.setHashOf(buf, os.getPos()); - return c == c2; - } - /* - common method for PublicKey and PrecomputedPublicKey - */ - template - struct PublicKeyMethod { - /* - you can use INT as int64_t and Fr, - but the return type of dec() is int64_t. - */ - template - void enc(CipherTextG1& c, const INT& m) const - { - static_cast(*this).encG1(c, m); - } - template - void enc(CipherTextG2& c, const INT& m) const - { - static_cast(*this).encG2(c, m); - } - template - void enc(CipherTextA& c, const INT& m) const - { - enc(c.c1_, m); - enc(c.c2_, m); - } - template - void enc(CipherTextGT& c, const INT& m) const - { - static_cast(*this).encGT(c, m); - } - template - void enc(CipherText& c, const INT& m, bool multiplied = false) const - { - c.isMultiplied_ = multiplied; - if (multiplied) { - enc(c.m_, m); - } else { - enc(c.a_, m); - } - } - /* - reRand method is for circuit privacy - */ - template - void reRandT(CT& c) const - { - CT c0; - static_cast(*this).enc(c0, 0); - CT::add(c, c, c0); - } - void reRand(CipherTextG1& c) const { reRandT(c); } - void reRand(CipherTextG2& c) const { reRandT(c); } - void reRand(CipherTextGT& c) const { reRandT(c); } - void reRand(CipherText& c) const - { - if (c.isMultiplied()) { - reRandT(c.m_); - } else { - reRandT(c.a_); - } - } - /* - convert from CipherTextG1 to CipherTextGT - */ - void convert(CipherTextGT& cm, const CipherTextG1& c1) const - { - /* - Enc(1) = (S, T) = (Q + r yQ, rQ) = (Q, 0) if r = 0 - cm = c1 * (Q, 0) = (S, T) * (Q, 0) = (e(S, Q), 1, e(T, Q), 1) - */ - precomputedMillerLoop(cm.g_[0], c1.getS(), Qcoeff_); - finalExp(cm.g_[0], cm.g_[0]); - precomputedMillerLoop(cm.g_[2], c1.getT(), Qcoeff_); - finalExp(cm.g_[2], cm.g_[2]); - - cm.g_[1] = cm.g_[3] = 1; - } - /* - convert from CipherTextG2 to CipherTextGT - */ - void convert(CipherTextGT& cm, const CipherTextG2& c2) const - { - /* - Enc(1) = (S, T) = (P + r xP, rP) = (P, 0) if r = 0 - cm = (P, 0) * c2 = (e(P, S), e(P, T), 1, 1) - */ - pairing(cm.g_[0], P_, c2.getS()); - pairing(cm.g_[1], P_, c2.getT()); - cm.g_[2] = cm.g_[3] = 1; - } - void convert(CipherTextGT& cm, const CipherTextA& ca) const - { - convert(cm, ca.c1_); - } - void convert(CipherText& cm, const CipherText& ca) const - { - if (ca.isMultiplied()) throw cybozu::Exception("she:PublicKey:convertCipherText:already isMultiplied"); - cm.isMultiplied_ = true; - convert(cm.m_, ca.a_); - } - }; -public: - class PublicKey : public fp::Serializable > { - G1 xP_; - G2 yQ_; - friend class SecretKey; - friend class PrecomputedPublicKey; - template - friend struct PublicKeyMethod; - template - struct MulG { - const G& base; - MulG(const G& base) : base(base) {} - template - void mul(G& out, const INT& m) const - { - G::mul(out, base, m); - } - }; - void set(const Fr& x, const Fr& y) - { - G1::mul(xP_, P_, x); - if (!isG1only_) G2::mul(yQ_, Q_, y); - } - template - void encG1(CipherTextG1& c, const INT& m) const - { - const MulG xPmul(xP_); - ElGamalEnc(c.S_, c.T_, m, PhashTbl_.getWM(), xPmul); - } - template - void encG2(CipherTextG2& c, const INT& m) const - { - const MulG yQmul(yQ_); - ElGamalEnc(c.S_, c.T_, m, QhashTbl_.getWM(), yQmul); - } -public: - void encWithZkpBin(CipherTextG1& c, ZkpBin& zkp, int m) const - { - Fr encRand; - encRand.setRand(); - const MulG xPmul(xP_); - ElGamalEnc(c.S_, c.T_, m, PhashTbl_.getWM(), xPmul, &encRand); - makeZkpBin(zkp, c.S_, c.T_, encRand, P_, m, PhashTbl_.getWM(), xPmul); - } - void encWithZkpBin(CipherTextG2& c, ZkpBin& zkp, int m) const - { - Fr encRand; - encRand.setRand(); - const MulG yQmul(yQ_); - ElGamalEnc(c.S_, c.T_, m, QhashTbl_.getWM(), yQmul, &encRand); - makeZkpBin(zkp, c.S_, c.T_, encRand, Q_, m, QhashTbl_.getWM(), yQmul); - } - bool verify(const CipherTextG1& c, const ZkpBin& zkp) const - { - const MulG xPmul(xP_); - return verifyZkpBin(c.S_, c.T_, P_, zkp, PhashTbl_.getWM(), xPmul); - } - bool verify(const CipherTextG2& c, const ZkpBin& zkp) const - { - const MulG yQmul(yQ_); - return verifyZkpBin(c.S_, c.T_, Q_, zkp, QhashTbl_.getWM(), yQmul); - } - template - void encWithZkpEq(CipherTextG1& c1, CipherTextG2& c2, ZkpEq& zkp, const INT& m) const - { - const MulG xPmul(xP_); - const MulG yQmul(yQ_); - makeZkpEq(zkp, c1.S_, c1.T_, c2.S_, c2.T_, m, PhashTbl_.getWM(), xPmul, QhashTbl_.getWM(), yQmul); - } - bool verify(const CipherTextG1& c1, const CipherTextG2& c2, const ZkpEq& zkp) const - { - const MulG xPmul(xP_); - const MulG yQmul(yQ_); - return verifyZkpEq(zkp, c1.S_, c1.T_, c2.S_, c2.T_, PhashTbl_.getWM(), xPmul, QhashTbl_.getWM(), yQmul); - } - void encWithZkpBinEq(CipherTextG1& c1, CipherTextG2& c2, ZkpBinEq& zkp, int m) const - { - const MulG xPmul(xP_); - const MulG yQmul(yQ_); - makeZkpBinEq(zkp, c1.S_, c1.T_, c2.S_, c2.T_, m, PhashTbl_.getWM(), xPmul, QhashTbl_.getWM(), yQmul); - } - bool verify(const CipherTextG1& c1, const CipherTextG2& c2, const ZkpBinEq& zkp) const - { - const MulG xPmul(xP_); - const MulG yQmul(yQ_); - return verifyZkpBinEq(zkp, c1.S_, c1.T_, c2.S_, c2.T_, PhashTbl_.getWM(), xPmul, QhashTbl_.getWM(), yQmul); - } - template - void encGT(CipherTextGT& c, const INT& m) const - { - /* - (s, t, u, v) = ((e^x)^a (e^y)^b (e^-xy)^c e^m, e^b, e^a, e^c) - s = e(a xP + m P, Q)e(b P - c xP, yQ) - */ - Fr ra, rb, rc; - ra.setRand(); - rb.setRand(); - rc.setRand(); - GT e; - - G1 P1, P2; - G1::mul(P1, xP_, ra); - if (m != 0) { -// G1::mul(P2, P, m); - PhashTbl_.mulByWindowMethod(P2, m); - P1 += P2; - } -// millerLoop(c.g[0], P1, Q); - precomputedMillerLoop(c.g_[0], P1, Qcoeff_); -// G1::mul(P1, P, rb); - PhashTbl_.mulByWindowMethod(P1, rb); - G1::mul(P2, xP_, rc); - P1 -= P2; - millerLoop(e, P1, yQ_); - c.g_[0] *= e; - finalExp(c.g_[0], c.g_[0]); -#if 1 - ePQhashTbl_.mulByWindowMethod(c.g_[1], rb); - ePQhashTbl_.mulByWindowMethod(c.g_[2], ra); - ePQhashTbl_.mulByWindowMethod(c.g_[3], rc); -#else - GT::pow(c.g_[1], ePQ_, rb); - GT::pow(c.g_[2], ePQ_, ra); - GT::pow(c.g_[3], ePQ_, rc); -#endif - } - public: - template - void load(bool *pb, InputStream& is, int ioMode = IoSerialize) - { - xP_.load(pb, is, ioMode); if (!*pb) return; - if (!isG1only_) yQ_.load(pb, is, ioMode); - } - template - void save(bool *pb, OutputStream& os, int ioMode = IoSerialize) const - { - const char sep = *fp::getIoSeparator(ioMode); - xP_.save(pb, os, ioMode); if (!*pb) return; - if (isG1only_) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - yQ_.save(pb, os, ioMode); - } - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("she:PublicKey:load"); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("she:PublicKey:save"); - } - friend std::istream& operator>>(std::istream& is, PublicKey& self) - { - self.load(is, fp::detectIoMode(G1::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const PublicKey& self) - { - self.save(os, fp::detectIoMode(G1::getIoMode(), os)); - return os; - } - bool operator==(const PublicKey& rhs) const - { - return xP_ == rhs.xP_ && (isG1only_ || yQ_ == rhs.yQ_); - } - bool operator!=(const PublicKey& rhs) const { return !operator==(rhs); } - }; - - class PrecomputedPublicKey : public fp::Serializable > { - typedef local::InterfaceForHashTable GTasEC; - typedef mcl::fp::WindowMethod GTwin; - template - friend struct PublicKeyMethod; - GT exPQ_; - GT eyPQ_; - GT exyPQ_; - GTwin exPQwm_; - GTwin eyPQwm_; - GTwin exyPQwm_; - mcl::fp::WindowMethod xPwm_; - mcl::fp::WindowMethod yQwm_; - template - void mulByWindowMethod(GT& x, const GTwin& wm, const T& y) const - { - wm.mul(static_cast(x), y); - } - template - void encG1(CipherTextG1& c, const INT& m) const - { - ElGamalEnc(c.S_, c.T_, m, PhashTbl_.getWM(), xPwm_); - } - template - void encG2(CipherTextG2& c, const INT& m) const - { - ElGamalEnc(c.S_, c.T_, m, QhashTbl_.getWM(), yQwm_); - } - template - void encGT(CipherTextGT& c, const INT& m) const - { - /* - (s, t, u, v) = (e^m e^(xya), (e^x)^b, (e^y)^c, e^(b + c - a)) - */ - Fr ra, rb, rc; - ra.setRand(); - rb.setRand(); - rc.setRand(); - GT t; - ePQhashTbl_.mulByWindowMethod(c.g_[0], m); // e^m - mulByWindowMethod(t, exyPQwm_, ra); // (e^xy)^a - c.g_[0] *= t; - mulByWindowMethod(c.g_[1], exPQwm_, rb); // (e^x)^b - mulByWindowMethod(c.g_[2], eyPQwm_, rc); // (e^y)^c - rb += rc; - rb -= ra; - ePQhashTbl_.mulByWindowMethod(c.g_[3], rb); - } - public: - void init(const PublicKey& pub) - { - const size_t bitSize = Fr::getBitSize(); - xPwm_.init(pub.xP_, bitSize, local::winSize); - if (isG1only_) return; - yQwm_.init(pub.yQ_, bitSize, local::winSize); - pairing(exPQ_, pub.xP_, Q_); - pairing(eyPQ_, P_, pub.yQ_); - pairing(exyPQ_, pub.xP_, pub.yQ_); - exPQwm_.init(static_cast(exPQ_), bitSize, local::winSize); - eyPQwm_.init(static_cast(eyPQ_), bitSize, local::winSize); - exyPQwm_.init(static_cast(exyPQ_), bitSize, local::winSize); - } - void encWithZkpBin(CipherTextG1& c, ZkpBin& zkp, int m) const - { - Fr encRand; - encRand.setRand(); - ElGamalEnc(c.S_, c.T_, m, PhashTbl_.getWM(), xPwm_, &encRand); - makeZkpBin(zkp, c.S_, c.T_, encRand, P_, m, PhashTbl_.getWM(), xPwm_); - } - void encWithZkpBin(CipherTextG2& c, ZkpBin& zkp, int m) const - { - Fr encRand; - encRand.setRand(); - ElGamalEnc(c.S_, c.T_, m, QhashTbl_.getWM(), yQwm_, &encRand); - makeZkpBin(zkp, c.S_, c.T_, encRand, Q_, m, QhashTbl_.getWM(), yQwm_); - } - bool verify(const CipherTextG1& c, const ZkpBin& zkp) const - { - return verifyZkpBin(c.S_, c.T_, P_, zkp, PhashTbl_.getWM(), xPwm_); - } - bool verify(const CipherTextG2& c, const ZkpBin& zkp) const - { - return verifyZkpBin(c.S_, c.T_, Q_, zkp, QhashTbl_.getWM(), yQwm_); - } - template - void encWithZkpEq(CipherTextG1& c1, CipherTextG2& c2, ZkpEq& zkp, const INT& m) const - { - makeZkpEq(zkp, c1.S_, c1.T_, c2.S_, c2.T_, m, PhashTbl_.getWM(), xPwm_, QhashTbl_.getWM(), yQwm_); - } - bool verify(const CipherTextG1& c1, const CipherTextG2& c2, const ZkpEq& zkp) const - { - return verifyZkpEq(zkp, c1.S_, c1.T_, c2.S_, c2.T_, PhashTbl_.getWM(), xPwm_, QhashTbl_.getWM(), yQwm_); - } - void encWithZkpBinEq(CipherTextG1& c1, CipherTextG2& c2, ZkpBinEq& zkp, int m) const - { - makeZkpBinEq(zkp, c1.S_, c1.T_, c2.S_, c2.T_, m, PhashTbl_.getWM(), xPwm_, QhashTbl_.getWM(), yQwm_); - } - bool verify(const CipherTextG1& c1, const CipherTextG2& c2, const ZkpBinEq& zkp) const - { - return verifyZkpBinEq(zkp, c1.S_, c1.T_, c2.S_, c2.T_, PhashTbl_.getWM(), xPwm_, QhashTbl_.getWM(), yQwm_); - } - }; - class CipherTextA { - CipherTextG1 c1_; - CipherTextG2 c2_; - friend class SecretKey; - friend class PublicKey; - friend class CipherTextGT; - template - friend struct PublicKeyMethod; - public: - void clear() - { - c1_.clear(); - c2_.clear(); - } - static void add(CipherTextA& z, const CipherTextA& x, const CipherTextA& y) - { - CipherTextG1::add(z.c1_, x.c1_, y.c1_); - CipherTextG2::add(z.c2_, x.c2_, y.c2_); - } - static void sub(CipherTextA& z, const CipherTextA& x, const CipherTextA& y) - { - CipherTextG1::sub(z.c1_, x.c1_, y.c1_); - CipherTextG2::sub(z.c2_, x.c2_, y.c2_); - } - static void mul(CipherTextA& z, const CipherTextA& x, int64_t y) - { - CipherTextG1::mul(z.c1_, x.c1_, y); - CipherTextG2::mul(z.c2_, x.c2_, y); - } - static void neg(CipherTextA& y, const CipherTextA& x) - { - CipherTextG1::neg(y.c1_, x.c1_); - CipherTextG2::neg(y.c2_, x.c2_); - } - void add(const CipherTextA& c) { add(*this, *this, c); } - void sub(const CipherTextA& c) { sub(*this, *this, c); } - template - void load(bool *pb, InputStream& is, int ioMode = IoSerialize) - { - c1_.load(pb, is, ioMode); if (!*pb) return; - c2_.load(pb, is, ioMode); - } - template - void save(bool *pb, OutputStream& os, int ioMode = IoSerialize) const - { - const char sep = *fp::getIoSeparator(ioMode); - c1_.save(pb, os, ioMode); if (!*pb) return; - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - c2_.save(pb, os, ioMode); - } - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("she:CipherTextA:load"); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("she:CipherTextA:save"); - } - friend std::istream& operator>>(std::istream& is, CipherTextA& self) - { - self.load(is, fp::detectIoMode(G1::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const CipherTextA& self) - { - self.save(os, fp::detectIoMode(G1::getIoMode(), os)); - return os; - } - bool operator==(const CipherTextA& rhs) const - { - return c1_ == rhs.c1_ && c2_ == rhs.c2_; - } - bool operator!=(const CipherTextA& rhs) const { return !operator==(rhs); } - }; - - class CipherTextGT : public fp::Serializable { - GT g_[4]; - friend class SecretKey; - friend class PublicKey; - friend class PrecomputedPublicKey; - friend class CipherTextA; - template - friend struct PublicKeyMethod; - public: - void clear() - { - for (int i = 0; i < 4; i++) { - g_[i].setOne(); - } - } - static void neg(CipherTextGT& y, const CipherTextGT& x) - { - for (int i = 0; i < 4; i++) { - GT::unitaryInv(y.g_[i], x.g_[i]); - } - } - static void add(CipherTextGT& z, const CipherTextGT& x, const CipherTextGT& y) - { - /* - (g[i]) + (g'[i]) = (g[i] * g'[i]) - */ - for (int i = 0; i < 4; i++) { - GT::mul(z.g_[i], x.g_[i], y.g_[i]); - } - } - static void sub(CipherTextGT& z, const CipherTextGT& x, const CipherTextGT& y) - { - /* - (g[i]) - (g'[i]) = (g[i] / g'[i]) - */ - GT t; - for (size_t i = 0; i < 4; i++) { - GT::unitaryInv(t, y.g_[i]); - GT::mul(z.g_[i], x.g_[i], t); - } - } - static void mulML(CipherTextGT& z, const CipherTextG1& x, const CipherTextG2& y) - { - /* - (S1, T1) * (S2, T2) = (ML(S1, S2), ML(S1, T2), ML(T1, S2), ML(T1, T2)) - */ - tensorProductML(z.g_, x.S_, x.T_, y.S_, y.T_); - } - static void finalExp(CipherTextGT& y, const CipherTextGT& x) - { - finalExp4(y.g_, x.g_); - } - /* - mul(x, y) = mulML(x, y) + finalExp - mul(c11, c12) + mul(c21, c22) - = finalExp(mulML(c11, c12) + mulML(c21, c22)), - then one finalExp can be reduced - */ - static void mul(CipherTextGT& z, const CipherTextG1& x, const CipherTextG2& y) - { - /* - (S1, T1) * (S2, T2) = (e(S1, S2), e(S1, T2), e(T1, S2), e(T1, T2)) - */ - mulML(z, x, y); - finalExp(z, z); - } - static void mul(CipherTextGT& z, const CipherTextA& x, const CipherTextA& y) - { - mul(z, x.c1_, y.c2_); - } - template - static void mul(CipherTextGT& z, const CipherTextGT& x, const INT& y) - { - for (int i = 0; i < 4; i++) { - GT::pow(z.g_[i], x.g_[i], y); - } - } - void add(const CipherTextGT& c) { add(*this, *this, c); } - void sub(const CipherTextGT& c) { sub(*this, *this, c); } - template - void load(bool *pb, InputStream& is, int ioMode = IoSerialize) - { - for (int i = 0; i < 4; i++) { - g_[i].load(pb, is, ioMode); if (!*pb) return; - } - } - template - void save(bool *pb, OutputStream& os, int ioMode = IoSerialize) const - { - const char sep = *fp::getIoSeparator(ioMode); - g_[0].save(pb, os, ioMode); if (!*pb) return; - for (int i = 1; i < 4; i++) { - if (sep) { - cybozu::writeChar(pb, os, sep); - if (!*pb) return; - } - g_[i].save(pb, os, ioMode); if (!*pb) return; - } - } - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("she:CipherTextGT:load"); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("she:CipherTextGT:save"); - } - friend std::istream& operator>>(std::istream& is, CipherTextGT& self) - { - self.load(is, fp::detectIoMode(G1::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const CipherTextGT& self) - { - self.save(os, fp::detectIoMode(G1::getIoMode(), os)); - return os; - } - bool operator==(const CipherTextGT& rhs) const - { - for (int i = 0; i < 4; i++) { - if (g_[i] != rhs.g_[i]) return false; - } - return true; - } - bool operator!=(const CipherTextGT& rhs) const { return !operator==(rhs); } - }; - - class CipherText : public fp::Serializable { - bool isMultiplied_; - CipherTextA a_; - CipherTextGT m_; - friend class SecretKey; - friend class PublicKey; - template - friend struct PublicKeyMethod; - public: - CipherText() : isMultiplied_(false) {} - void clearAsAdded() - { - isMultiplied_ = false; - a_.clear(); - } - void clearAsMultiplied() - { - isMultiplied_ = true; - m_.clear(); - } - bool isMultiplied() const { return isMultiplied_; } - static void add(CipherText& z, const CipherText& x, const CipherText& y) - { - if (x.isMultiplied() && y.isMultiplied()) { - z.isMultiplied_ = true; - CipherTextGT::add(z.m_, x.m_, y.m_); - return; - } - if (!x.isMultiplied() && !y.isMultiplied()) { - z.isMultiplied_ = false; - CipherTextA::add(z.a_, x.a_, y.a_); - return; - } - throw cybozu::Exception("she:CipherText:add:mixed CipherText"); - } - static void sub(CipherText& z, const CipherText& x, const CipherText& y) - { - if (x.isMultiplied() && y.isMultiplied()) { - z.isMultiplied_ = true; - CipherTextGT::sub(z.m_, x.m_, y.m_); - return; - } - if (!x.isMultiplied() && !y.isMultiplied()) { - z.isMultiplied_ = false; - CipherTextA::sub(z.a_, x.a_, y.a_); - return; - } - throw cybozu::Exception("she:CipherText:sub:mixed CipherText"); - } - static void neg(CipherText& y, const CipherText& x) - { - if (x.isMultiplied()) { - y.isMultiplied_ = true; - CipherTextGT::neg(y.m_, x.m_); - return; - } else { - y.isMultiplied_ = false; - CipherTextA::neg(y.a_, x.a_); - return; - } - } - static void mul(CipherText& z, const CipherText& x, const CipherText& y) - { - if (x.isMultiplied() || y.isMultiplied()) { - throw cybozu::Exception("she:CipherText:mul:mixed CipherText"); - } - z.isMultiplied_ = true; - CipherTextGT::mul(z.m_, x.a_, y.a_); - } - static void mul(CipherText& z, const CipherText& x, int64_t y) - { - if (x.isMultiplied()) { - CipherTextGT::mul(z.m_, x.m_, y); - } else { - CipherTextA::mul(z.a_, x.a_, y); - } - } - void add(const CipherText& c) { add(*this, *this, c); } - void sub(const CipherText& c) { sub(*this, *this, c); } - void mul(const CipherText& c) { mul(*this, *this, c); } - template - void load(bool *pb, InputStream& is, int ioMode = IoSerialize) - { - cybozu::writeChar(pb, isMultiplied_ ? '0' : '1', is); if (!*pb) return; - if (isMultiplied()) { - m_.load(pb, is, ioMode); - } else { - a_.load(pb, is, ioMode); - } - } - template - void save(bool *pb, OutputStream& os, int ioMode = IoSerialize) const - { - char c; - if (!cybozu::readChar(&c, os)) return; - if (c == '0' || c == '1') { - isMultiplied_ = c == '0'; - } else { - *pb = false; - return; - } - if (isMultiplied()) { - m_.save(pb, os, ioMode); - } else { - a_.save(pb, os, ioMode); - } - } - template - void load(InputStream& is, int ioMode = IoSerialize) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("she:CipherText:load"); - } - template - void save(OutputStream& os, int ioMode = IoSerialize) const - { - bool b; - save(&b, os, ioMode); - if (!b) throw cybozu::Exception("she:CipherText:save"); - } - friend std::istream& operator>>(std::istream& is, CipherText& self) - { - self.load(is, fp::detectIoMode(G1::getIoMode(), is)); - return is; - } - friend std::ostream& operator<<(std::ostream& os, const CipherText& self) - { - self.save(os, fp::detectIoMode(G1::getIoMode(), os)); - return os; - } - bool operator==(const CipherTextGT& rhs) const - { - if (isMultiplied() != rhs.isMultiplied()) return false; - if (isMultiplied()) { - return m_ == rhs.m_; - } - return a_ == rhs.a_; - } - bool operator!=(const CipherTextGT& rhs) const { return !operator==(rhs); } - }; -}; -typedef local::HashTable HashTableG1; -typedef local::HashTable HashTableG2; -typedef local::HashTable HashTableGT; - -template G1 SHET::P_; -template G2 SHET::Q_; -template Fp12 SHET::ePQ_; -template std::vector SHET::Qcoeff_; -template HashTableG1 SHET::PhashTbl_; -template HashTableG2 SHET::QhashTbl_; -template HashTableGT SHET::ePQhashTbl_; -template bool SHET::useDecG1ViaGT_; -template bool SHET::useDecG2ViaGT_; -template bool SHET::isG1only_; -typedef mcl::she::SHET<> SHE; -typedef SHE::SecretKey SecretKey; -typedef SHE::PublicKey PublicKey; -typedef SHE::PrecomputedPublicKey PrecomputedPublicKey; -typedef SHE::CipherTextG1 CipherTextG1; -typedef SHE::CipherTextG2 CipherTextG2; -typedef SHE::CipherTextGT CipherTextGT; -typedef SHE::CipherTextA CipherTextA; -typedef CipherTextGT CipherTextGM; // old class -typedef SHE::CipherText CipherText; -typedef SHE::ZkpBin ZkpBin; -typedef SHE::ZkpEq ZkpEq; -typedef SHE::ZkpBinEq ZkpBinEq; - -inline void init(const mcl::CurveParam& cp = mcl::BN254, size_t hashSize = 1024, size_t tryNum = local::defaultTryNum) -{ - SHE::init(cp, hashSize, tryNum); -} -inline void initG1only(const mcl::EcParam& para, size_t hashSize = 1024, size_t tryNum = local::defaultTryNum) -{ - SHE::initG1only(para, hashSize, tryNum); -} -inline void init(size_t hashSize, size_t tryNum = local::defaultTryNum) { SHE::init(hashSize, tryNum); } -inline void setRangeForG1DLP(size_t hashSize) { SHE::setRangeForG1DLP(hashSize); } -inline void setRangeForG2DLP(size_t hashSize) { SHE::setRangeForG2DLP(hashSize); } -inline void setRangeForGTDLP(size_t hashSize) { SHE::setRangeForGTDLP(hashSize); } -inline void setRangeForDLP(size_t hashSize) { SHE::setRangeForDLP(hashSize); } -inline void setTryNum(size_t tryNum) { SHE::setTryNum(tryNum); } -inline void useDecG1ViaGT(bool use = true) { SHE::useDecG1ViaGT(use); } -inline void useDecG2ViaGT(bool use = true) { SHE::useDecG2ViaGT(use); } -inline HashTableG1& getHashTableG1() { return SHE::PhashTbl_; } -inline HashTableG2& getHashTableG2() { return SHE::QhashTbl_; } -inline HashTableGT& getHashTableGT() { return SHE::ePQhashTbl_; } - -inline void add(CipherTextG1& z, const CipherTextG1& x, const CipherTextG1& y) { CipherTextG1::add(z, x, y); } -inline void add(CipherTextG2& z, const CipherTextG2& x, const CipherTextG2& y) { CipherTextG2::add(z, x, y); } -inline void add(CipherTextGT& z, const CipherTextGT& x, const CipherTextGT& y) { CipherTextGT::add(z, x, y); } -inline void add(CipherText& z, const CipherText& x, const CipherText& y) { CipherText::add(z, x, y); } - -inline void sub(CipherTextG1& z, const CipherTextG1& x, const CipherTextG1& y) { CipherTextG1::sub(z, x, y); } -inline void sub(CipherTextG2& z, const CipherTextG2& x, const CipherTextG2& y) { CipherTextG2::sub(z, x, y); } -inline void sub(CipherTextGT& z, const CipherTextGT& x, const CipherTextGT& y) { CipherTextGT::sub(z, x, y); } -inline void sub(CipherText& z, const CipherText& x, const CipherText& y) { CipherText::sub(z, x, y); } - -inline void neg(CipherTextG1& y, const CipherTextG1& x) { CipherTextG1::neg(y, x); } -inline void neg(CipherTextG2& y, const CipherTextG2& x) { CipherTextG2::neg(y, x); } -inline void neg(CipherTextGT& y, const CipherTextGT& x) { CipherTextGT::neg(y, x); } -inline void neg(CipherText& y, const CipherText& x) { CipherText::neg(y, x); } - -template -inline void mul(CipherTextG1& z, const CipherTextG1& x, const INT& y) { CipherTextG1::mul(z, x, y); } -template -inline void mul(CipherTextG2& z, const CipherTextG2& x, const INT& y) { CipherTextG2::mul(z, x, y); } -template -inline void mul(CipherTextGT& z, const CipherTextGT& x, const INT& y) { CipherTextGT::mul(z, x, y); } -template -inline void mul(CipherText& z, const CipherText& x, const INT& y) { CipherText::mul(z, x, y); } - -inline void mul(CipherTextGT& z, const CipherTextG1& x, const CipherTextG2& y) { CipherTextGT::mul(z, x, y); } -inline void mul(CipherText& z, const CipherText& x, const CipherText& y) { CipherText::mul(z, x, y); } - -} } // mcl::she - diff --git a/cases/tool/win/bls_win/include/mcl/util.hpp b/cases/tool/win/bls_win/include/mcl/util.hpp deleted file mode 100644 index a406241768..0000000000 --- a/cases/tool/win/bls_win/include/mcl/util.hpp +++ /dev/null @@ -1,285 +0,0 @@ -#pragma once -/** - @file - @brief functions for T[] - @author MITSUNARI Shigeo(@herumi) - @license modified new BSD license - http://opensource.org/licenses/BSD-3-Clause -*/ -#include - -#ifdef _MSC_VER - #pragma warning(push) - #pragma warning(disable : 4456) - #pragma warning(disable : 4459) -#endif - -namespace mcl { namespace fp { - -// some environments do not have utility -template -T abs_(T x) { return x < 0 ? -x : x; } - -template -T min_(T x, T y) { return x < y ? x : y; } - -template -T max_(T x, T y) { return x < y ? y : x; } - -template -void swap_(T& x, T& y) -{ - T t; - t = x; - x = y; - y = t; -} - -/* - get pp such that p * pp = -1 mod M, - where p is prime and M = 1 << 64(or 32). - @param pLow [in] p mod M -*/ -template -T getMontgomeryCoeff(T pLow) -{ - T ret = 0; - T t = 0; - T x = 1; - for (size_t i = 0; i < sizeof(T) * 8; i++) { - if ((t & 1) == 0) { - t += pLow; - ret += x; - } - t >>= 1; - x <<= 1; - } - return ret; -} - -template -int compareArray(const T* x, const T* y, size_t n) -{ - for (size_t i = n - 1; i != size_t(-1); i--) { - T a = x[i]; - T b = y[i]; - if (a != b) return a < b ? -1 : 1; - } - return 0; -} - -template -bool isLessArray(const T *x, const T* y, size_t n) -{ - for (size_t i = n - 1; i != size_t(-1); i--) { - T a = x[i]; - T b = y[i]; - if (a != b) return a < b; - } - return false; -} - -template -bool isGreaterOrEqualArray(const T *x, const T* y, size_t n) -{ - return !isLessArray(x, y, n); -} - -template -bool isLessOrEqualArray(const T *x, const T* y, size_t n) -{ - for (size_t i = n - 1; i != size_t(-1); i--) { - T a = x[i]; - T b = y[i]; - if (a != b) return a < b; - } - return true; -} - -template -bool isGreaterArray(const T *x, const T* y, size_t n) -{ - return !isLessOrEqualArray(x, y, n); -} - -template -bool isEqualArray(const T* x, const T* y, size_t n) -{ - for (size_t i = 0; i < n; i++) { - if (x[i] != y[i]) return false; - } - return true; -} - -template -bool isZeroArray(const T *x, size_t n) -{ - for (size_t i = 0; i < n; i++) { - if (x[i]) return false; - } - return true; -} - -template -void clearArray(T *x, size_t begin, size_t end) -{ - for (size_t i = begin; i < end; i++) x[i] = 0; -} - -template -void copyArray(T *y, const T *x, size_t n) -{ - for (size_t i = 0; i < n; i++) y[i] = x[i]; -} - -/* - x &= (1 << bitSize) - 1 -*/ -template -void maskArray(T *x, size_t n, size_t bitSize) -{ - const size_t TbitSize = sizeof(T) * 8; - assert(bitSize <= TbitSize * n); - const size_t q = bitSize / TbitSize; - const size_t r = bitSize % TbitSize; - if (r) { - x[q] &= (T(1) << r) - 1; - clearArray(x, q + 1, n); - } else { - clearArray(x, q, n); - } -} - -/* - return non zero size of x[] - return 1 if x[] == 0 -*/ -template -size_t getNonZeroArraySize(const T *x, size_t n) -{ - assert(n > 0); - while (n > 0) { - if (x[n - 1]) return n; - n--; - } - return 1; -} - -/* - @param out [inout] : set element of G ; out = x^y[] - @param x [in] - @param y [in] - @param n [in] size of y[] - @param limitBit [in] const time version if the value is positive - @note &out != x and out = the unit element of G -*/ -template -void powGeneric(G& out, const G& x, const T *y, size_t n, const Mul& mul, const Sqr& sqr, void normalize(G&, const G&), size_t limitBit = 0) -{ - assert(&out != &x); - G tbl[4]; // tbl = { discard, x, x^2, x^3 } - T v; - bool constTime = limitBit > 0; - int maxBit = 0; - int m = 0; - while (n > 0) { - if (y[n - 1]) break; - n--; - } - if (n == 0) { - if (constTime) goto DummyLoop; - return; - } - if (!constTime && n == 1) { - switch (y[0]) { - case 1: - out = x; - return; - case 2: - sqr(out, x); - return; - case 3: - sqr(out, x); - mul(out, out, x); - return; - case 4: - sqr(out, x); - sqr(out, out); - return; - } - } - if (normalize != 0) { - normalize(tbl[0], x); - } else { - tbl[0] = x; - } - tbl[1] = tbl[0]; - sqr(tbl[2], tbl[1]); - if (normalize != 0) { normalize(tbl[2], tbl[2]); } - mul(tbl[3], tbl[2], x); - if (normalize != 0) { normalize(tbl[3], tbl[3]); } - v = y[n - 1]; - assert(v); - m = cybozu::bsr(v); - maxBit = int(m + (n - 1) * sizeof(T) * 8); - if (m & 1) { - m--; - T idx = (v >> m) & 3; - assert(idx > 0); - out = tbl[idx]; - } else { - out = x; - } - for (int i = (int)n - 1; i >= 0; i--) { - T v = y[i]; - for (int j = m - 2; j >= 0; j -= 2) { - sqr(out, out); - sqr(out, out); - T idx = (v >> j) & 3; - if (idx == 0) { - if (constTime) mul(tbl[0], tbl[0], tbl[1]); - } else { - mul(out, out, tbl[idx]); - } - } - m = (int)sizeof(T) * 8; - } -DummyLoop: - if (!constTime) return; - G D = out; - for (size_t i = maxBit + 1; i < limitBit; i += 2) { - sqr(D, D); - sqr(D, D); - mul(D, D, tbl[1]); - } -} - -/* - shortcut of multiplication by Unit -*/ -template -bool mulSmallUnit(T& z, const T& x, U y) -{ - switch (y) { - case 0: z.clear(); break; - case 1: z = x; break; - case 2: T::add(z, x, x); break; - case 3: { T t; T::add(t, x, x); T::add(z, t, x); break; } - case 4: T::add(z, x, x); T::add(z, z, z); break; - case 5: { T t; T::add(t, x, x); T::add(t, t, t); T::add(z, t, x); break; } - case 6: { T t; T::add(t, x, x); T::add(t, t, x); T::add(z, t, t); break; } - case 7: { T t; T::add(t, x, x); T::add(t, t, t); T::add(t, t, t); T::sub(z, t, x); break; } - case 8: T::add(z, x, x); T::add(z, z, z); T::add(z, z, z); break; - case 9: { T t; T::add(t, x, x); T::add(t, t, t); T::add(t, t, t); T::add(z, t, x); break; } - case 10: { T t; T::add(t, x, x); T::add(t, t, t); T::add(t, t, x); T::add(z, t, t); break; } - default: - return false; - } - return true; -} - -} } // mcl::fp - -#ifdef _MSC_VER - #pragma warning(pop) -#endif diff --git a/cases/tool/win/bls_win/include/mcl/vint.hpp b/cases/tool/win/bls_win/include/mcl/vint.hpp deleted file mode 100644 index bf324f4d26..0000000000 --- a/cases/tool/win/bls_win/include/mcl/vint.hpp +++ /dev/null @@ -1,2064 +0,0 @@ -#pragma once -/** - emulate mpz_class -*/ -#ifndef CYBOZU_DONT_USE_EXCEPTION -#include -#endif -#include -#include -#include -#ifndef CYBOZU_DONT_USE_STRING -#include -#endif -#include -#include -#include -#include - -#if defined(__EMSCRIPTEN__) || defined(__wasm__) - #define MCL_VINT_64BIT_PORTABLE - #define MCL_VINT_FIXED_BUFFER -#endif -#ifndef MCL_MAX_BIT_SIZE - #error "define MCL_MAX_BIT_SZIE" -#endif - -#ifndef MCL_SIZEOF_UNIT - #if defined(CYBOZU_OS_BIT) && (CYBOZU_OS_BIT == 32) - #define MCL_SIZEOF_UNIT 4 - #else - #define MCL_SIZEOF_UNIT 8 - #endif -#endif - -namespace mcl { - -namespace vint { - -#if MCL_SIZEOF_UNIT == 8 -typedef uint64_t Unit; -#else -typedef uint32_t Unit; -#endif - -template -struct RoundUp { - static const size_t UnitBitSize = sizeof(Unit) * 8; - static const size_t N = (x + UnitBitSize - 1) / UnitBitSize; - static const size_t bit = N * UnitBitSize; -}; - -template -void dump(const T *x, size_t n, const char *msg = "") -{ - const size_t is4byteUnit = sizeof(*x) == 4; - if (msg) printf("%s ", msg); - for (size_t i = 0; i < n; i++) { - if (is4byteUnit) { - printf("%08x", (uint32_t)x[n - 1 - i]); - } else { - printf("%016llx", (unsigned long long)x[n - 1 - i]); - } - } - printf("\n"); -} - -inline uint64_t make64(uint32_t H, uint32_t L) -{ - return ((uint64_t)H << 32) | L; -} - -inline void split64(uint32_t *H, uint32_t *L, uint64_t x) -{ - *H = uint32_t(x >> 32); - *L = uint32_t(x); -} - -/* - [H:L] <= x * y - @return L -*/ -inline uint32_t mulUnit(uint32_t *pH, uint32_t x, uint32_t y) -{ - uint64_t t = uint64_t(x) * y; - uint32_t L; - split64(pH, &L, t); - return L; -} -#if MCL_SIZEOF_UNIT == 8 -inline uint64_t mulUnit(uint64_t *pH, uint64_t x, uint64_t y) -{ -#ifdef MCL_VINT_64BIT_PORTABLE - uint32_t a = uint32_t(x >> 32); - uint32_t b = uint32_t(x); - uint32_t c = uint32_t(y >> 32); - uint32_t d = uint32_t(y); - - uint64_t ad = uint64_t(d) * a; - uint64_t bd = uint64_t(d) * b; - uint64_t L = uint32_t(bd); - ad += bd >> 32; // [ad:L] - - uint64_t ac = uint64_t(c) * a; - uint64_t bc = uint64_t(c) * b; - uint64_t H = uint32_t(bc); - ac += bc >> 32; // [ac:H] - /* - adL - acH - */ - uint64_t t = (ac << 32) | H; - ac >>= 32; - H = t + ad; - if (H < t) { - ac++; - } - /* - ac:H:L - */ - L |= H << 32; - H = (ac << 32) | uint32_t(H >> 32); - *pH = H; - return L; -#elif defined(_WIN64) && !defined(__INTEL_COMPILER) - return _umul128(x, y, pH); -#else - typedef __attribute__((mode(TI))) unsigned int uint128; - uint128 t = uint128(x) * y; - *pH = uint64_t(t >> 64); - return uint64_t(t); -#endif -} -#endif - -template -void divNM(T *q, size_t qn, T *r, const T *x, size_t xn, const T *y, size_t yn); - -/* - q = [H:L] / y - r = [H:L] % y - return q -*/ -inline uint32_t divUnit(uint32_t *pr, uint32_t H, uint32_t L, uint32_t y) -{ - uint64_t t = make64(H, L); - uint32_t q = uint32_t(t / y); - *pr = uint32_t(t % y); - return q; -} -#if MCL_SIZEOF_UNIT == 8 -inline uint64_t divUnit(uint64_t *pr, uint64_t H, uint64_t L, uint64_t y) -{ -#if defined(MCL_VINT_64BIT_PORTABLE) - uint32_t px[4] = { uint32_t(L), uint32_t(L >> 32), uint32_t(H), uint32_t(H >> 32) }; - uint32_t py[2] = { uint32_t(y), uint32_t(y >> 32) }; - size_t xn = 4; - size_t yn = 2; - uint32_t q[4]; - uint32_t r[2]; - size_t qn = xn - yn + 1; - divNM(q, qn, r, px, xn, py, yn); - *pr = make64(r[1], r[0]); - return make64(q[1], q[0]); -#elif defined(_MSC_VER) - #error "divUnit for uint64_t is not supported" -#else - typedef __attribute__((mode(TI))) unsigned int uint128; - uint128 t = (uint128(H) << 64) | L; - uint64_t q = uint64_t(t / y); - *pr = uint64_t(t % y); - return q; -#endif -} -#endif - -/* - compare x[] and y[] - @retval positive if x > y - @retval 0 if x == y - @retval negative if x < y -*/ -template -int compareNM(const T *x, size_t xn, const T *y, size_t yn) -{ - assert(xn > 0 && yn > 0); - if (xn != yn) return xn > yn ? 1 : -1; - for (int i = (int)xn - 1; i >= 0; i--) { - if (x[i] != y[i]) return x[i] > y[i] ? 1 : -1; - } - return 0; -} - -template -void clearN(T *x, size_t n) -{ - for (size_t i = 0; i < n; i++) x[i] = 0; -} - -template -void copyN(T *y, const T *x, size_t n) -{ - for (size_t i = 0; i < n; i++) y[i] = x[i]; -} - -/* - z[] = x[n] + y[n] - @note return 1 if having carry - z may be equal to x or y -*/ -template -T addN(T *z, const T *x, const T *y, size_t n) -{ - T c = 0; - for (size_t i = 0; i < n; i++) { - T xc = x[i] + c; - if (xc < c) { - // x[i] = Unit(-1) and c = 1 - z[i] = y[i]; - } else { - xc += y[i]; - c = y[i] > xc ? 1 : 0; - z[i] = xc; - } - } - return c; -} - -/* - z[] = x[] + y -*/ -template -T addu1(T *z, const T *x, size_t n, T y) -{ - assert(n > 0); - T t = x[0] + y; - z[0] = t; - size_t i = 0; - if (t >= y) goto EXIT_0; - i = 1; - for (; i < n; i++) { - t = x[i] + 1; - z[i] = t; - if (t != 0) goto EXIT_0; - } - return 1; -EXIT_0: - i++; - for (; i < n; i++) { - z[i] = x[i]; - } - return 0; -} - -/* - x[] += y -*/ -template -T addu1(T *x, size_t n, T y) -{ - assert(n > 0); - T t = x[0] + y; - x[0] = t; - size_t i = 0; - if (t >= y) return 0; - i = 1; - for (; i < n; i++) { - t = x[i] + 1; - x[i] = t; - if (t != 0) return 0; - } - return 1; -} -/* - z[zn] = x[xn] + y[yn] - @note zn = max(xn, yn) -*/ -template -T addNM(T *z, const T *x, size_t xn, const T *y, size_t yn) -{ - if (yn > xn) { - fp::swap_(xn, yn); - fp::swap_(x, y); - } - assert(xn >= yn); - size_t max = xn; - size_t min = yn; - T c = vint::addN(z, x, y, min); - if (max > min) { - c = vint::addu1(z + min, x + min, max - min, c); - } - return c; -} - -/* - z[] = x[n] - y[n] - z may be equal to x or y -*/ -template -T subN(T *z, const T *x, const T *y, size_t n) -{ - assert(n > 0); - T c = 0; - for (size_t i = 0; i < n; i++) { - T yc = y[i] + c; - if (yc < c) { - // y[i] = T(-1) and c = 1 - z[i] = x[i]; - } else { - c = x[i] < yc ? 1 : 0; - z[i] = x[i] - yc; - } - } - return c; -} - -/* - out[] = x[n] - y -*/ -template -T subu1(T *z, const T *x, size_t n, T y) -{ - assert(n > 0); -#if 0 - T t = x[0]; - z[0] = t - y; - size_t i = 0; - if (t >= y) goto EXIT_0; - i = 1; - for (; i < n; i++ ){ - t = x[i]; - z[i] = t - 1; - if (t != 0) goto EXIT_0; - } - return 1; -EXIT_0: - i++; - for (; i < n; i++) { - z[i] = x[i]; - } - return 0; -#else - T c = x[0] < y ? 1 : 0; - z[0] = x[0] - y; - for (size_t i = 1; i < n; i++) { - if (x[i] < c) { - z[i] = T(-1); - } else { - z[i] = x[i] - c; - c = 0; - } - } - return c; -#endif -} - -/* - z[xn] = x[xn] - y[yn] - @note xn >= yn -*/ -template -T subNM(T *z, const T *x, size_t xn, const T *y, size_t yn) -{ - assert(xn >= yn); - T c = vint::subN(z, x, y, yn); - if (xn > yn) { - c = vint::subu1(z + yn, x + yn, xn - yn, c); - } - return c; -} - -/* - z[0..n) = x[0..n) * y - return z[n] - @note accept z == x -*/ -template -T mulu1(T *z, const T *x, size_t n, T y) -{ - assert(n > 0); - T H = 0; - for (size_t i = 0; i < n; i++) { - T t = H; - T L = mulUnit(&H, x[i], y); - z[i] = t + L; - if (z[i] < t) { - H++; - } - } - return H; // z[n] -} - -/* - z[xn * yn] = x[xn] * y[ym] -*/ -template -static inline void mulNM(T *z, const T *x, size_t xn, const T *y, size_t yn) -{ - assert(xn > 0 && yn > 0); - if (yn > xn) { - fp::swap_(yn, xn); - fp::swap_(x, y); - } - assert(xn >= yn); - if (z == x) { - T *p = (T*)CYBOZU_ALLOCA(sizeof(T) * xn); - copyN(p, x, xn); - x = p; - } - if (z == y) { - T *p = (T*)CYBOZU_ALLOCA(sizeof(T) * yn); - copyN(p, y, yn); - y = p; - } - z[xn] = vint::mulu1(&z[0], x, xn, y[0]); - clearN(z + xn + 1, yn - 1); - - T *t2 = (T*)CYBOZU_ALLOCA(sizeof(T) * (xn + 1)); - for (size_t i = 1; i < yn; i++) { - t2[xn] = vint::mulu1(&t2[0], x, xn, y[i]); - vint::addN(&z[i], &z[i], &t2[0], xn + 1); - } -} -/* - out[xn * 2] = x[xn] * x[xn] - QQQ : optimize this -*/ -template -static inline void sqrN(T *y, const T *x, size_t xn) -{ - mulNM(y, x, xn, x, xn); -} - -/* - q[] = x[] / y - @retval r = x[] % y - accept q == x -*/ -template -T divu1(T *q, const T *x, size_t n, T y) -{ - T r = 0; - for (int i = (int)n - 1; i >= 0; i--) { - q[i] = divUnit(&r, r, x[i], y); - } - return r; -} -/* - q[] = x[] / y - @retval r = x[] % y -*/ -template -T modu1(const T *x, size_t n, T y) -{ - T r = 0; - for (int i = (int)n - 1; i >= 0; i--) { - divUnit(&r, r, x[i], y); - } - return r; -} - -/* - y[] = x[] << bit - 0 < bit < sizeof(T) * 8 - accept y == x -*/ -template -T shlBit(T *y, const T *x, size_t xn, size_t bit) -{ - assert(0 < bit && bit < sizeof(T) * 8); - assert(xn > 0); - size_t rBit = sizeof(T) * 8 - bit; - T keep = x[xn - 1]; - T prev = keep; - for (size_t i = xn - 1; i > 0; i--) { - T t = x[i - 1]; - y[i] = (prev << bit) | (t >> rBit); - prev = t; - } - y[0] = prev << bit; - return keep >> rBit; -} - -/* - y[yn] = x[xn] << bit - yn = xn + (bit + unitBitBit - 1) / unitBitSize - accept y == x -*/ -template -void shlN(T *y, const T *x, size_t xn, size_t bit) -{ - assert(xn > 0); - const size_t unitBitSize = sizeof(T) * 8; - size_t q = bit / unitBitSize; - size_t r = bit % unitBitSize; - if (r == 0) { - // don't use copyN(y + q, x, xn); if overlaped - for (size_t i = 0; i < xn; i++) { - y[q + xn - 1 - i] = x[xn - 1 - i]; - } - } else { - y[q + xn] = shlBit(y + q, x, xn, r); - } - clearN(y, q); -} - -/* - y[] = x[] >> bit - 0 < bit < sizeof(T) * 8 -*/ -template -void shrBit(T *y, const T *x, size_t xn, size_t bit) -{ - assert(0 < bit && bit < sizeof(T) * 8); - assert(xn > 0); - size_t rBit = sizeof(T) * 8 - bit; - T prev = x[0]; - for (size_t i = 1; i < xn; i++) { - T t = x[i]; - y[i - 1] = (prev >> bit) | (t << rBit); - prev = t; - } - y[xn - 1] = prev >> bit; -} -/* - y[yn] = x[xn] >> bit - yn = xn - bit / unitBit -*/ -template -void shrN(T *y, const T *x, size_t xn, size_t bit) -{ - assert(xn > 0); - const size_t unitBitSize = sizeof(T) * 8; - size_t q = bit / unitBitSize; - size_t r = bit % unitBitSize; - assert(xn >= q); - if (r == 0) { - copyN(y, x + q, xn - q); - } else { - shrBit(y, x + q, xn - q, r); - } -} - -template -size_t getRealSize(const T *x, size_t xn) -{ - int i = (int)xn - 1; - for (; i > 0; i--) { - if (x[i]) { - return i + 1; - } - } - return 1; -} - -template -size_t getBitSize(const T *x, size_t n) -{ - if (n == 1 && x[0] == 0) return 1; - T v = x[n - 1]; - assert(v); - return (n - 1) * sizeof(T) * 8 + 1 + cybozu::bsr(v); -} - -/* - q[qn] = x[xn] / y[yn] ; qn == xn - yn + 1 if xn >= yn if q - r[rn] = x[xn] % y[yn] ; rn = yn before getRealSize - allow q == 0 -*/ -template -void divNM(T *q, size_t qn, T *r, const T *x, size_t xn, const T *y, size_t yn) -{ - assert(xn > 0 && yn > 0); - assert(xn < yn || (q == 0 || qn == xn - yn + 1)); - assert(q != r); - const size_t rn = yn; - xn = getRealSize(x, xn); - yn = getRealSize(y, yn); - if (x == y) { - assert(xn == yn); - x_is_y: - clearN(r, rn); - if (q) { - q[0] = 1; - clearN(q + 1, qn - 1); - } - return; - } - if (yn > xn) { - /* - if y > x then q = 0 and r = x - */ - q_is_zero: - copyN(r, x, xn); - clearN(r + xn, rn - xn); - if (q) clearN(q, qn); - return; - } - if (yn == 1) { - T t; - if (q) { - if (qn > xn) { - clearN(q + xn, qn - xn); - } - t = divu1(q, x, xn, y[0]); - } else { - t = modu1(x, xn, y[0]); - } - r[0] = t; - clearN(r + 1, rn - 1); - return; - } - const size_t yTopBit = cybozu::bsr(y[yn - 1]); - assert(yn >= 2); - if (xn == yn) { - const size_t xTopBit = cybozu::bsr(x[xn - 1]); - if (xTopBit < yTopBit) goto q_is_zero; - if (yTopBit == xTopBit) { - int ret = compareNM(x, xn, y, yn); - if (ret == 0) goto x_is_y; - if (ret < 0) goto q_is_zero; - if (r) { - subN(r, x, y, yn); - } - if (q) { - q[0] = 1; - clearN(q + 1, qn - 1); - } - return; - } - assert(xTopBit > yTopBit); - // fast reduction for larger than fullbit-3 size p - if (yTopBit >= sizeof(T) * 8 - 4) { - T *xx = (T*)CYBOZU_ALLOCA(sizeof(T) * xn); - T qv = 0; - if (yTopBit == sizeof(T) * 8 - 2) { - copyN(xx, x, xn); - } else { - qv = x[xn - 1] >> (yTopBit + 1); - mulu1(xx, y, yn, qv); - subN(xx, x, xx, xn); - xn = getRealSize(xx, xn); - } - for (;;) { - T ret = subN(xx, xx, y, yn); - if (ret) { - addN(xx, xx, y, yn); - break; - } - qv++; - xn = getRealSize(xx, xn); - } - if (r) { - copyN(r, xx, xn); - clearN(r + xn, rn - xn); - } - if (q) { - q[0] = qv; - clearN(q + 1, qn - 1); - } - return; - } - } - /* - bitwise left shift x and y to adjust MSB of y[yn - 1] = 1 - */ - const size_t shift = sizeof(T) * 8 - 1 - yTopBit; - T *xx = (T*)CYBOZU_ALLOCA(sizeof(T) * (xn + 1)); - const T *yy; - if (shift) { - T v = shlBit(xx, x, xn, shift); - if (v) { - xx[xn] = v; - xn++; - } - T *yBuf = (T*)CYBOZU_ALLOCA(sizeof(T) * yn); - shlBit(yBuf, y, yn ,shift); - yy = yBuf; - } else { - copyN(xx, x, xn); - yy = y; - } - if (q) { - clearN(q, qn); - } - assert((yy[yn - 1] >> (sizeof(T) * 8 - 1)) != 0); - T *tt = (T*)CYBOZU_ALLOCA(sizeof(T) * (yn + 1)); - while (xn > yn) { - size_t d = xn - yn; - T xTop = xx[xn - 1]; - T yTop = yy[yn - 1]; - if (xTop > yTop || (compareNM(xx + d, xn - d, yy, yn) >= 0)) { - vint::subN(xx + d, xx + d, yy, yn); - xn = getRealSize(xx, xn); - if (q) vint::addu1(q + d, qn - d, 1); - continue; - } - if (xTop == 1) { - vint::subNM(xx + d - 1, xx + d - 1, xn - d + 1, yy, yn); - xn = getRealSize(xx, xn); - if (q) vint::addu1(q + d - 1, qn - d + 1, 1); - continue; - } - tt[yn] = vint::mulu1(tt, yy, yn, xTop); - vint::subN(xx + d - 1, xx + d - 1, tt, yn + 1); - xn = getRealSize(xx, xn); - if (q) vint::addu1(q + d - 1, qn - d + 1, xTop); - } - if (xn == yn && compareNM(xx, xn, yy, yn) >= 0) { - subN(xx, xx, yy, yn); - xn = getRealSize(xx, xn); - if (q) vint::addu1(q, qn, 1); - } - if (shift) { - shrBit(r, xx, xn, shift); - } else { - copyN(r, xx, xn); - } - clearN(r + xn, rn - xn); -} - -#ifndef MCL_VINT_FIXED_BUFFER -template -class Buffer { - size_t allocSize_; - T *ptr_; -public: - typedef T Unit; - Buffer() : allocSize_(0), ptr_(0) {} - ~Buffer() - { - clear(); - } - Buffer(const Buffer& rhs) - : allocSize_(rhs.allocSize_) - , ptr_(0) - { - ptr_ = (T*)malloc(allocSize_ * sizeof(T)); - if (ptr_ == 0) throw cybozu::Exception("Buffer:malloc") << rhs.allocSize_; - memcpy(ptr_, rhs.ptr_, allocSize_ * sizeof(T)); - } - Buffer& operator=(const Buffer& rhs) - { - Buffer t(rhs); - swap(t); - return *this; - } - void swap(Buffer& rhs) -#if CYBOZU_CPP_VERSION >= CYBOZU_CPP_VERSION_CPP11 - noexcept -#endif - { - fp::swap_(allocSize_, rhs.allocSize_); - fp::swap_(ptr_, rhs.ptr_); - } - void clear() - { - allocSize_ = 0; - free(ptr_); - ptr_ = 0; - } - - /* - @note extended buffer may be not cleared - */ - void alloc(bool *pb, size_t n) - { - if (n > allocSize_) { - T *p = (T*)malloc(n * sizeof(T)); - if (p == 0) { - *pb = false; - return; - } - copyN(p, ptr_, allocSize_); - free(ptr_); - ptr_ = p; - allocSize_ = n; - } - *pb = true; - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - void alloc(size_t n) - { - bool b; - alloc(&b, n); - if (!b) throw cybozu::Exception("Buffer:alloc"); - } -#endif - /* - *this = rhs - rhs may be destroyed - */ - const T& operator[](size_t n) const { return ptr_[n]; } - T& operator[](size_t n) { return ptr_[n]; } -}; -#endif - -template -class FixedBuffer { - enum { - N = (BitLen + sizeof(T) * 8 - 1) / (sizeof(T) * 8) - }; - size_t size_; - T v_[N]; -public: - typedef T Unit; - FixedBuffer() - : size_(0) - { - } - FixedBuffer(const FixedBuffer& rhs) - { - operator=(rhs); - } - FixedBuffer& operator=(const FixedBuffer& rhs) - { - size_ = rhs.size_; -#if defined(__GNUC__) && !defined(__EMSCRIPTEN__) && !defined(__clang__) - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wmaybe-uninitialized" -#endif - for (size_t i = 0; i < size_; i++) { - v_[i] = rhs.v_[i]; - } -#if defined(__GNUC__) && !defined(__EMSCRIPTEN__) && !defined(__clang__) - #pragma GCC diagnostic pop -#endif - return *this; - } - void clear() { size_ = 0; } - void alloc(bool *pb, size_t n) - { - if (n > N) { - *pb = false; - return; - } - size_ = n; - *pb = true; - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - void alloc(size_t n) - { - bool b; - alloc(&b, n); - if (!b) throw cybozu::Exception("FixedBuffer:alloc"); - } -#endif - void swap(FixedBuffer& rhs) - { - FixedBuffer *p1 = this; - FixedBuffer *p2 = &rhs; - if (p1->size_ < p2->size_) { - fp::swap_(p1, p2); - } - assert(p1->size_ >= p2->size_); - for (size_t i = 0; i < p2->size_; i++) { - fp::swap_(p1->v_[i], p2->v_[i]); - } - for (size_t i = p2->size_; i < p1->size_; i++) { - p2->v_[i] = p1->v_[i]; - } - fp::swap_(p1->size_, p2->size_); - } - // to avoid warning of gcc - void verify(size_t n) const - { - assert(n <= N); - (void)n; - } - const T& operator[](size_t n) const { verify(n); return v_[n]; } - T& operator[](size_t n) { verify(n); return v_[n]; } -}; - -#if MCL_SIZEOF_UNIT == 8 -/* - M = 1 << 256 - a = M mod p = (1 << 32) + 0x3d1 - [H:L] mod p = H * a + L - - if H = L = M - 1, t = H * a + L = aM + (M - a - 1) - H' = a, L' = M - a - 1 - t' = H' * a + L' = M + (a^2 - a - 1) - H'' = 1, L'' = a^2 - a - 1 - t'' = H'' * a + L'' = a^2 - 1 -*/ -inline void mcl_fpDbl_mod_SECP256K1(Unit *z, const Unit *x, const Unit *p) -{ - const Unit a = (uint64_t(1) << 32) + 0x3d1; - Unit buf[5]; - buf[4] = mulu1(buf, x + 4, 4, a); // H * a - buf[4] += addN(buf, buf, x, 4); // t = H * a + L - Unit x2[2]; - x2[0] = mulUnit(&x2[1], buf[4], a); - Unit x3 = addN(buf, buf, x2, 2); - if (x3) { - x3 = addu1(buf + 2, buf + 2, 2, Unit(1)); // t' = H' * a + L' - if (x3) { - x3 = addu1(buf, buf, 4, a); - assert(x3 == 0); - } - } - if (fp::isGreaterOrEqualArray(buf, p, 4)) { - subN(z, buf, p, 4); - } else { - fp::copyArray(z, buf, 4); - } -} - -inline void mcl_fp_mul_SECP256K1(Unit *z, const Unit *x, const Unit *y, const Unit *p) -{ - Unit xy[8]; - mulNM(xy, x, 4, y, 4); - mcl_fpDbl_mod_SECP256K1(z, xy, p); -} -inline void mcl_fp_sqr_SECP256K1(Unit *y, const Unit *x, const Unit *p) -{ - Unit xx[8]; - sqrN(xx, x, 4); - mcl_fpDbl_mod_SECP256K1(y, xx, p); -} -#endif - -} // vint - -/** - signed integer with variable length -*/ -template -class VintT { -public: - typedef _Buffer Buffer; - typedef typename Buffer::Unit Unit; - static const size_t unitBitSize = sizeof(Unit) * 8; - static const int invalidVar = -2147483647 - 1; // abs(invalidVar) is not defined -private: - Buffer buf_; - size_t size_; - bool isNeg_; - void trim(size_t n) - { - assert(n > 0); - int i = (int)n - 1; - for (; i > 0; i--) { - if (buf_[i]) { - size_ = i + 1; - return; - } - } - size_ = 1; - // zero - if (buf_[0] == 0) { - isNeg_ = false; - } - } - static int ucompare(const Buffer& x, size_t xn, const Buffer& y, size_t yn) - { - return vint::compareNM(&x[0], xn, &y[0], yn); - } - static void uadd(VintT& z, const Buffer& x, size_t xn, const Buffer& y, size_t yn) - { - size_t zn = fp::max_(xn, yn) + 1; - bool b; - z.buf_.alloc(&b, zn); - assert(b); - if (!b) { - z.clear(); - return; - } - z.buf_[zn - 1] = vint::addNM(&z.buf_[0], &x[0], xn, &y[0], yn); - z.trim(zn); - } - static void uadd1(VintT& z, const Buffer& x, size_t xn, Unit y) - { - size_t zn = xn + 1; - bool b; - z.buf_.alloc(&b, zn); - assert(b); - if (!b) { - z.clear(); - return; - } - z.buf_[zn - 1] = vint::addu1(&z.buf_[0], &x[0], xn, y); - z.trim(zn); - } - static void usub1(VintT& z, const Buffer& x, size_t xn, Unit y) - { - size_t zn = xn; - bool b; - z.buf_.alloc(&b, zn); - assert(b); - if (!b) { - z.clear(); - return; - } - Unit c = vint::subu1(&z.buf_[0], &x[0], xn, y); - (void)c; - assert(!c); - z.trim(zn); - } - static void usub(VintT& z, const Buffer& x, size_t xn, const Buffer& y, size_t yn) - { - assert(xn >= yn); - bool b; - z.buf_.alloc(&b, xn); - assert(b); - if (!b) { - z.clear(); - return; - } - Unit c = vint::subN(&z.buf_[0], &x[0], &y[0], yn); - if (xn > yn) { - c = vint::subu1(&z.buf_[yn], &x[yn], xn - yn, c); - } - assert(!c); - z.trim(xn); - } - static void _add(VintT& z, const VintT& x, bool xNeg, const VintT& y, bool yNeg) - { - if ((xNeg ^ yNeg) == 0) { - // same sign - uadd(z, x.buf_, x.size(), y.buf_, y.size()); - z.isNeg_ = xNeg; - return; - } - int r = ucompare(x.buf_, x.size(), y.buf_, y.size()); - if (r >= 0) { - usub(z, x.buf_, x.size(), y.buf_, y.size()); - z.isNeg_ = xNeg; - } else { - usub(z, y.buf_, y.size(), x.buf_, x.size()); - z.isNeg_ = yNeg; - } - } - static void _adds1(VintT& z, const VintT& x, int y, bool yNeg) - { - assert(y >= 0); - if ((x.isNeg_ ^ yNeg) == 0) { - // same sign - uadd1(z, x.buf_, x.size(), y); - z.isNeg_ = yNeg; - return; - } - if (x.size() > 1 || x.buf_[0] >= (Unit)y) { - usub1(z, x.buf_, x.size(), y); - z.isNeg_ = x.isNeg_; - } else { - z = y - x.buf_[0]; - z.isNeg_ = yNeg; - } - } - static void _addu1(VintT& z, const VintT& x, Unit y, bool yNeg) - { - if ((x.isNeg_ ^ yNeg) == 0) { - // same sign - uadd1(z, x.buf_, x.size(), y); - z.isNeg_ = yNeg; - return; - } - if (x.size() > 1 || x.buf_[0] >= y) { - usub1(z, x.buf_, x.size(), y); - z.isNeg_ = x.isNeg_; - } else { - z = y - x.buf_[0]; - z.isNeg_ = yNeg; - } - } - /** - @param q [out] x / y if q != 0 - @param r [out] x % y - */ - static void udiv(VintT* q, VintT& r, const Buffer& x, size_t xn, const Buffer& y, size_t yn) - { - assert(q != &r); - if (xn < yn) { - r.buf_ = x; - r.trim(xn); - if (q) q->clear(); - return; - } - size_t qn = xn - yn + 1; - bool b; - if (q) { - q->buf_.alloc(&b, qn); - assert(b); - if (!b) { - q->clear(); - r.clear(); - return; - } - } - r.buf_.alloc(&b, yn); - assert(b); - if (!b) { - r.clear(); - if (q) q->clear(); - return; - } - vint::divNM(q ? &q->buf_[0] : 0, qn, &r.buf_[0], &x[0], xn, &y[0], yn); - if (q) { - q->trim(qn); - } - r.trim(yn); - } - /* - @param x [inout] x <- d - @retval s for x = 2^s d where d is odd - */ - static uint32_t countTrailingZero(VintT& x) - { - uint32_t s = 0; - while (x.isEven()) { - x >>= 1; - s++; - } - return s; - } - struct MulMod { - const VintT *pm; - void operator()(VintT& z, const VintT& x, const VintT& y) const - { - VintT::mul(z, x, y); - z %= *pm; - } - }; - struct SqrMod { - const VintT *pm; - void operator()(VintT& y, const VintT& x) const - { - VintT::sqr(y, x); - y %= *pm; - } - }; -public: - VintT(int x = 0) - : size_(0) - { - *this = x; - } - VintT(Unit x) - : size_(0) - { - *this = x; - } - VintT(const VintT& rhs) - : buf_(rhs.buf_) - , size_(rhs.size_) - , isNeg_(rhs.isNeg_) - { - } - VintT& operator=(int x) - { - assert(x != invalidVar); - isNeg_ = x < 0; - bool b; - buf_.alloc(&b, 1); - assert(b); (void)b; - buf_[0] = fp::abs_(x); - size_ = 1; - return *this; - } - VintT& operator=(Unit x) - { - isNeg_ = false; - bool b; - buf_.alloc(&b, 1); - assert(b); (void)b; - buf_[0] = x; - size_ = 1; - return *this; - } - VintT& operator=(const VintT& rhs) - { - buf_ = rhs.buf_; - size_ = rhs.size_; - isNeg_ = rhs.isNeg_; - return *this; - } -#if CYBOZU_CPP_VERSION >= CYBOZU_CPP_VERSION_CPP11 - VintT(VintT&& rhs) - : buf_(rhs.buf_) - , size_(rhs.size_) - , isNeg_(rhs.isNeg_) - { - } - VintT& operator=(VintT&& rhs) - { - buf_ = std::move(rhs.buf_); - size_ = rhs.size_; - isNeg_ = rhs.isNeg_; - return *this; - } -#endif - void swap(VintT& rhs) -#if CYBOZU_CPP_VERSION >= CYBOZU_CPP_VERSION_CPP11 - noexcept -#endif - { - fp::swap_(buf_, rhs.buf_); - fp::swap_(size_, rhs.size_); - fp::swap_(isNeg_, rhs.isNeg_); - } - void dump(const char *msg = "") const - { - vint::dump(&buf_[0], size_, msg); - } - /* - set positive value - @note assume little endian system - */ - template - void setArray(bool *pb, const S *x, size_t size) - { - isNeg_ = false; - if (size == 0) { - clear(); - *pb = true; - return; - } - size_t unitSize = (sizeof(S) * size + sizeof(Unit) - 1) / sizeof(Unit); - buf_.alloc(pb, unitSize); - if (!*pb) return; - char *dst = (char *)&buf_[0]; - const char *src = (const char *)x; - size_t i = 0; - for (; i < sizeof(S) * size; i++) { - dst[i] = src[i]; - } - for (; i < sizeof(Unit) * unitSize; i++) { - dst[i] = 0; - } - trim(unitSize); - } - /* - set [0, max) randomly - */ - void setRand(bool *pb, const VintT& max, fp::RandGen rg = fp::RandGen()) - { - assert(max > 0); - if (rg.isZero()) rg = fp::RandGen::get(); - size_t n = max.size(); - buf_.alloc(pb, n); - if (!*pb) return; - rg.read(pb, &buf_[0], n * sizeof(buf_[0])); - if (!*pb) return; - trim(n); - *this %= max; - } - /* - get abs value - buf_[0, size) = x - buf_[size, maxSize) with zero - @note assume little endian system - */ - void getArray(bool *pb, Unit *x, size_t maxSize) const - { - size_t n = size(); - if (n > maxSize) { - *pb = false; - return; - } - vint::copyN(x, &buf_[0], n); - vint::clearN(x + n, maxSize - n); - *pb = true; - } - void clear() { *this = 0; } - template - void save(bool *pb, OutputStream& os, int base = 10) const - { - if (isNeg_) cybozu::writeChar(pb, os, '-'); - char buf[1024]; - size_t n = mcl::fp::arrayToStr(buf, sizeof(buf), &buf_[0], size_, base, false); - if (n == 0) { - *pb = false; - return; - } - cybozu::write(pb, os, buf + sizeof(buf) - n, n); - } - /* - set buf with string terminated by '\0' - return strlen(buf) if success else 0 - */ - size_t getStr(char *buf, size_t bufSize, int base = 10) const - { - cybozu::MemoryOutputStream os(buf, bufSize); - bool b; - save(&b, os, base); - const size_t n = os.getPos(); - if (!b || n == bufSize) return 0; - buf[n] = '\0'; - return n; - } - /* - return bitSize(abs(*this)) - @note return 1 if zero - */ - size_t getBitSize() const - { - if (isZero()) return 1; - size_t n = size(); - Unit v = buf_[n - 1]; - assert(v); - return (n - 1) * sizeof(Unit) * 8 + 1 + cybozu::bsr(v); - } - // ignore sign - bool testBit(size_t i) const - { - size_t q = i / unitBitSize; - size_t r = i % unitBitSize; - assert(q <= size()); - Unit mask = Unit(1) << r; - return (buf_[q] & mask) != 0; - } - void setBit(size_t i, bool v = true) - { - size_t q = i / unitBitSize; - size_t r = i % unitBitSize; - assert(q <= size()); - bool b; - buf_.alloc(&b, q + 1); - assert(b); - if (!b) { - clear(); - return; - } - Unit mask = Unit(1) << r; - if (v) { - buf_[q] |= mask; - } else { - buf_[q] &= ~mask; - trim(q + 1); - } - } - /* - @param str [in] number string - @note "0x..." => base = 16 - "0b..." => base = 2 - otherwise => base = 10 - */ - void setStr(bool *pb, const char *str, int base = 0) - { - // allow twice size of MCL_MAX_BIT_SIZE because of multiplication - const size_t maxN = (MCL_MAX_BIT_SIZE * 2 + unitBitSize - 1) / unitBitSize; - buf_.alloc(pb, maxN); - if (!*pb) return; - *pb = false; - isNeg_ = false; - size_t len = strlen(str); - size_t n = fp::strToArray(&isNeg_, &buf_[0], maxN, str, len, base); - if (n == 0) return; - trim(n); - *pb = true; - } - static int compare(const VintT& x, const VintT& y) - { - if (x.isNeg_ ^ y.isNeg_) { - if (x.isZero() && y.isZero()) return 0; - return x.isNeg_ ? -1 : 1; - } else { - // same sign - int c = ucompare(x.buf_, x.size(), y.buf_, y.size()); - if (x.isNeg_) { - return -c; - } - return c; - } - } - static int compares1(const VintT& x, int y) - { - assert(y != invalidVar); - if (x.isNeg_ ^ (y < 0)) { - if (x.isZero() && y == 0) return 0; - return x.isNeg_ ? -1 : 1; - } else { - // same sign - Unit y0 = fp::abs_(y); - int c = vint::compareNM(&x.buf_[0], x.size(), &y0, 1); - if (x.isNeg_) { - return -c; - } - return c; - } - } - static int compareu1(const VintT& x, uint32_t y) - { - if (x.isNeg_) return -1; - if (x.size() > 1) return 1; - Unit x0 = x.buf_[0]; - return x0 > y ? 1 : x0 == y ? 0 : -1; - } - size_t size() const { return size_; } - bool isZero() const { return size() == 1 && buf_[0] == 0; } - bool isNegative() const { return !isZero() && isNeg_; } - uint32_t getLow32bit() const { return (uint32_t)buf_[0]; } - bool isOdd() const { return (buf_[0] & 1) == 1; } - bool isEven() const { return !isOdd(); } - const Unit *getUnit() const { return &buf_[0]; } - size_t getUnitSize() const { return size_; } - static void add(VintT& z, const VintT& x, const VintT& y) - { - _add(z, x, x.isNeg_, y, y.isNeg_); - } - static void sub(VintT& z, const VintT& x, const VintT& y) - { - _add(z, x, x.isNeg_, y, !y.isNeg_); - } - static void mul(VintT& z, const VintT& x, const VintT& y) - { - const size_t xn = x.size(); - const size_t yn = y.size(); - size_t zn = xn + yn; - bool b; - z.buf_.alloc(&b, zn); - assert(b); - if (!b) { - z.clear(); - return; - } - vint::mulNM(&z.buf_[0], &x.buf_[0], xn, &y.buf_[0], yn); - z.isNeg_ = x.isNeg_ ^ y.isNeg_; - z.trim(zn); - } - static void sqr(VintT& y, const VintT& x) - { - mul(y, x, x); - } - static void addu1(VintT& z, const VintT& x, Unit y) - { - _addu1(z, x, y, false); - } - static void subu1(VintT& z, const VintT& x, Unit y) - { - _addu1(z, x, y, true); - } - static void mulu1(VintT& z, const VintT& x, Unit y) - { - size_t xn = x.size(); - size_t zn = xn + 1; - bool b; - z.buf_.alloc(&b, zn); - assert(b); - if (!b) { - z.clear(); - return; - } - z.buf_[zn - 1] = vint::mulu1(&z.buf_[0], &x.buf_[0], xn, y); - z.isNeg_ = x.isNeg_; - z.trim(zn); - } - static void divu1(VintT& q, const VintT& x, Unit y) - { - udivModu1(&q, x, y); - } - static void modu1(VintT& r, const VintT& x, Unit y) - { - bool xNeg = x.isNeg_; - r = divModu1(0, x, y); - r.isNeg_ = xNeg; - } - static void adds1(VintT& z, const VintT& x, int y) - { - assert(y != invalidVar); - _adds1(z, x, fp::abs_(y), y < 0); - } - static void subs1(VintT& z, const VintT& x, int y) - { - assert(y != invalidVar); - _adds1(z, x, fp::abs_(y), !(y < 0)); - } - static void muls1(VintT& z, const VintT& x, int y) - { - assert(y != invalidVar); - mulu1(z, x, fp::abs_(y)); - z.isNeg_ ^= (y < 0); - } - /* - @param q [out] q = x / y if q is not zero - @param x [in] - @param y [in] must be not zero - return x % y - */ - static int divMods1(VintT *q, const VintT& x, int y) - { - assert(y != invalidVar); - bool xNeg = x.isNeg_; - bool yNeg = y < 0; - Unit absY = fp::abs_(y); - size_t xn = x.size(); - int r; - if (q) { - q->isNeg_ = xNeg ^ yNeg; - bool b; - q->buf_.alloc(&b, xn); - assert(b); - if (!b) { - q->clear(); - return 0; - } - r = (int)vint::divu1(&q->buf_[0], &x.buf_[0], xn, absY); - q->trim(xn); - } else { - r = (int)vint::modu1(&x.buf_[0], xn, absY); - } - return xNeg ? -r : r; - } - /* - like C - 13 / 5 = 2 ... 3 - 13 / -5 = -2 ... 3 - -13 / 5 = -2 ... -3 - -13 / -5 = 2 ... -3 - */ - static void divMod(VintT *q, VintT& r, const VintT& x, const VintT& y) - { - bool qsign = x.isNeg_ ^ y.isNeg_; - udiv(q, r, x.buf_, x.size(), y.buf_, y.size()); - r.isNeg_ = x.isNeg_; - if (q) q->isNeg_ = qsign; - } - static void div(VintT& q, const VintT& x, const VintT& y) - { - VintT r; - divMod(&q, r, x, y); - } - static void mod(VintT& r, const VintT& x, const VintT& y) - { - divMod(0, r, x, y); - } - static void divs1(VintT& q, const VintT& x, int y) - { - divMods1(&q, x, y); - } - static void mods1(VintT& r, const VintT& x, int y) - { - bool xNeg = x.isNeg_; - r = divMods1(0, x, y); - r.isNeg_ = xNeg; - } - static Unit udivModu1(VintT *q, const VintT& x, Unit y) - { - assert(!x.isNeg_); - size_t xn = x.size(); - if (q) { - bool b; - q->buf_.alloc(&b, xn); - assert(b); - if (!b) { - q->clear(); - return 0; - } - } - Unit r = vint::divu1(q ? &q->buf_[0] : 0, &x.buf_[0], xn, y); - if (q) { - q->trim(xn); - q->isNeg_ = false; - } - return r; - } - /* - like Python - 13 / 5 = 2 ... 3 - 13 / -5 = -3 ... -2 - -13 / 5 = -3 ... 2 - -13 / -5 = 2 ... -3 - */ - static void quotRem(VintT *q, VintT& r, const VintT& x, const VintT& y) - { - VintT yy = y; - bool qsign = x.isNeg_ ^ y.isNeg_; - udiv(q, r, x.buf_, x.size(), y.buf_, y.size()); - r.isNeg_ = y.isNeg_; - if (q) q->isNeg_ = qsign; - if (!r.isZero() && qsign) { - if (q) { - uadd1(*q, q->buf_, q->size(), 1); - } - usub(r, yy.buf_, yy.size(), r.buf_, r.size()); - } - } - template - void load(bool *pb, InputStream& is, int ioMode) - { - *pb = false; - char buf[1024]; - size_t n = fp::local::loadWord(buf, sizeof(buf), is); - if (n == 0) return; - const size_t maxN = 384 / (sizeof(MCL_SIZEOF_UNIT) * 8); - buf_.alloc(pb, maxN); - if (!*pb) return; - isNeg_ = false; - n = fp::strToArray(&isNeg_, &buf_[0], maxN, buf, n, ioMode); - if (n == 0) return; - trim(n); - *pb = true; - } - // logical left shift (copy sign) - static void shl(VintT& y, const VintT& x, size_t shiftBit) - { - size_t xn = x.size(); - size_t yn = xn + (shiftBit + unitBitSize - 1) / unitBitSize; - bool b; - y.buf_.alloc(&b, yn); - assert(b); - if (!b) { - y.clear(); - return; - } - vint::shlN(&y.buf_[0], &x.buf_[0], xn, shiftBit); - y.isNeg_ = x.isNeg_; - y.trim(yn); - } - // logical right shift (copy sign) - static void shr(VintT& y, const VintT& x, size_t shiftBit) - { - size_t xn = x.size(); - if (xn * unitBitSize <= shiftBit) { - y.clear(); - return; - } - size_t yn = xn - shiftBit / unitBitSize; - bool b; - y.buf_.alloc(&b, yn); - assert(b); - if (!b) { - y.clear(); - return; - } - vint::shrN(&y.buf_[0], &x.buf_[0], xn, shiftBit); - y.isNeg_ = x.isNeg_; - y.trim(yn); - } - static void neg(VintT& y, const VintT& x) - { - if (&y != &x) { y = x; } - y.isNeg_ = !x.isNeg_; - } - static void abs(VintT& y, const VintT& x) - { - if (&y != &x) { y = x; } - y.isNeg_ = false; - } - static VintT abs(const VintT& x) - { - VintT y = x; - abs(y, x); - return y; - } - // accept only non-negative value - static void orBit(VintT& z, const VintT& x, const VintT& y) - { - assert(!x.isNeg_ && !y.isNeg_); - const VintT *px = &x, *py = &y; - if (x.size() < y.size()) { - fp::swap_(px, py); - } - size_t xn = px->size(); - size_t yn = py->size(); - assert(xn >= yn); - bool b; - z.buf_.alloc(&b, xn); - assert(b); - if (!b) { - z.clear(); - } - for (size_t i = 0; i < yn; i++) { - z.buf_[i] = x.buf_[i] | y.buf_[i]; - } - vint::copyN(&z.buf_[0] + yn, &px->buf_[0] + yn, xn - yn); - z.trim(xn); - } - static void andBit(VintT& z, const VintT& x, const VintT& y) - { - assert(!x.isNeg_ && !y.isNeg_); - const VintT *px = &x, *py = &y; - if (x.size() < y.size()) { - fp::swap_(px, py); - } - size_t yn = py->size(); - assert(px->size() >= yn); - bool b; - z.buf_.alloc(&b, yn); - assert(b); - if (!b) { - z.clear(); - return; - } - for (size_t i = 0; i < yn; i++) { - z.buf_[i] = x.buf_[i] & y.buf_[i]; - } - z.trim(yn); - } - static void orBitu1(VintT& z, const VintT& x, Unit y) - { - assert(!x.isNeg_); - z = x; - z.buf_[0] |= y; - } - static void andBitu1(VintT& z, const VintT& x, Unit y) - { - assert(!x.isNeg_); - bool b; - z.buf_.alloc(&b, 1); - assert(b); (void)b; - z.buf_[0] = x.buf_[0] & y; - z.size_ = 1; - z.isNeg_ = false; - } - /* - REMARK y >= 0; - */ - static void pow(VintT& z, const VintT& x, const VintT& y) - { - assert(!y.isNeg_); - const VintT xx = x; - z = 1; - mcl::fp::powGeneric(z, xx, &y.buf_[0], y.size(), mul, sqr, (void (*)(VintT&, const VintT&))0); - } - /* - REMARK y >= 0; - */ - static void pow(VintT& z, const VintT& x, int64_t y) - { - assert(y >= 0); - const VintT xx = x; - z = 1; -#if MCL_SIZEOF_UNIT == 8 - Unit ua = fp::abs_(y); - mcl::fp::powGeneric(z, xx, &ua, 1, mul, sqr, (void (*)(VintT&, const VintT&))0); -#else - uint64_t ua = fp::abs_(y); - Unit u[2] = { uint32_t(ua), uint32_t(ua >> 32) }; - size_t un = u[1] ? 2 : 1; - mcl::fp::powGeneric(z, xx, u, un, mul, sqr, (void (*)(VintT&, const VintT&))0); -#endif - } - /* - z = x ^ y mod m - REMARK y >= 0; - */ - static void powMod(VintT& z, const VintT& x, const VintT& y, const VintT& m) - { - assert(!y.isNeg_); - VintT zz; - MulMod mulMod; - SqrMod sqrMod; - mulMod.pm = &m; - sqrMod.pm = &m; - zz = 1; - mcl::fp::powGeneric(zz, x, &y.buf_[0], y.size(), mulMod, sqrMod, (void (*)(VintT&, const VintT&))0); - z.swap(zz); - } - /* - inverse mod - y = 1/x mod m - REMARK x != 0 and m != 0; - */ - static void invMod(VintT& y, const VintT& x, const VintT& m) - { - assert(!x.isZero() && !m.isZero()); - if (x == 1) { - y = 1; - return; - } - VintT a = 1; - VintT t; - VintT q; - divMod(&q, t, m, x); - VintT s = x; - VintT b = -q; - - for (;;) { - divMod(&q, s, s, t); - if (s.isZero()) { - if (b.isNeg_) { - b += m; - } - y = b; - return; - } - a -= b * q; - - divMod(&q, t, t, s); - if (t.isZero()) { - if (a.isNeg_) { - a += m; - } - y = a; - return; - } - b -= a * q; - } - } - /* - Miller-Rabin - */ - static bool isPrime(bool *pb, const VintT& n, int tryNum = 32) - { - *pb = true; - if (n <= 1) return false; - if (n == 2 || n == 3) return true; - if (n.isEven()) return false; - cybozu::XorShift rg; - const VintT nm1 = n - 1; - VintT d = nm1; - uint32_t r = countTrailingZero(d); - // n - 1 = 2^r d - VintT a, x; - for (int i = 0; i < tryNum; i++) { - a.setRand(pb, n - 3, rg); - if (!*pb) return false; - a += 2; // a in [2, n - 2] - powMod(x, a, d, n); - if (x == 1 || x == nm1) { - continue; - } - for (uint32_t j = 1; j < r; j++) { - sqr(x, x); - x %= n; - if (x == 1) return false; - if (x == nm1) goto NEXT_LOOP; - } - return false; - NEXT_LOOP:; - } - return true; - } - bool isPrime(bool *pb, int tryNum = 32) const - { - return isPrime(pb, *this, tryNum); - } - static void gcd(VintT& z, VintT x, VintT y) - { - VintT t; - for (;;) { - if (y.isZero()) { - z = x; - return; - } - t = x; - x = y; - mod(y, t, y); - } - } - static VintT gcd(const VintT& x, const VintT& y) - { - VintT z; - gcd(z, x, y); - return z; - } - static void lcm(VintT& z, const VintT& x, const VintT& y) - { - VintT c; - gcd(c, x, y); - div(c, x, c); - mul(z, c, y); - } - static VintT lcm(const VintT& x, const VintT& y) - { - VintT z; - lcm(z, x, y); - return z; - } - /* - 1 if m is quadratic residue modulo n (i.e., there exists an x s.t. x^2 = m mod n) - 0 if m = 0 mod n - -1 otherwise - @note return legendre_symbol(m, p) for m and odd prime p - */ - static int jacobi(VintT m, VintT n) - { - assert(n.isOdd()); - if (n == 1) return 1; - if (m < 0 || m > n) { - quotRem(0, m, m, n); // m = m mod n - } - if (m.isZero()) return 0; - if (m == 1) return 1; - if (gcd(m, n) != 1) return 0; - - int j = 1; - VintT t; - goto START; - while (m != 1) { - if ((m.getLow32bit() % 4) == 3 && (n.getLow32bit() % 4) == 3) { - j = -j; - } - mod(t, n, m); - n = m; - m = t; - START: - int s = countTrailingZero(m); - uint32_t nmod8 = n.getLow32bit() % 8; - if ((s % 2) && (nmod8 == 3 || nmod8 == 5)) { - j = -j; - } - } - return j; - } -#ifndef CYBOZU_DONT_USE_STRING - explicit VintT(const std::string& str) - : size_(0) - { - setStr(str); - } - void getStr(std::string& s, int base = 10) const - { - s.clear(); - cybozu::StringOutputStream os(s); - save(os, base); - } - std::string getStr(int base = 10) const - { - std::string s; - getStr(s, base); - return s; - } - inline friend std::ostream& operator<<(std::ostream& os, const VintT& x) - { - return os << x.getStr(os.flags() & std::ios_base::hex ? 16 : 10); - } - inline friend std::istream& operator>>(std::istream& is, VintT& x) - { - x.load(is); - return is; - } -#endif -#ifndef CYBOZU_DONT_USE_EXCEPTION - void setStr(const std::string& str, int base = 0) - { - bool b; - setStr(&b, str.c_str(), base); - if (!b) throw cybozu::Exception("Vint:setStr") << str; - } - void setRand(const VintT& max, fp::RandGen rg = fp::RandGen()) - { - bool b; - setRand(&b, max, rg); - if (!b) throw cybozu::Exception("Vint:setRand"); - } - void getArray(Unit *x, size_t maxSize) const - { - bool b; - getArray(&b, x, maxSize); - if (!b) throw cybozu::Exception("Vint:getArray"); - } - template - void load(InputStream& is, int ioMode = 0) - { - bool b; - load(&b, is, ioMode); - if (!b) throw cybozu::Exception("Vint:load"); - } - template - void save(OutputStream& os, int base = 10) const - { - bool b; - save(&b, os, base); - if (!b) throw cybozu::Exception("Vint:save"); - } - static bool isPrime(const VintT& n, int tryNum = 32) - { - bool b; - bool ret = isPrime(&b, n, tryNum); - if (!b) throw cybozu::Exception("Vint:isPrime"); - return ret; - } - bool isPrime(int tryNum = 32) const - { - bool b; - bool ret = isPrime(&b, *this, tryNum); - if (!b) throw cybozu::Exception("Vint:isPrime"); - return ret; - } - template - void setArray(const S *x, size_t size) - { - bool b; - setArray(&b, x, size); - if (!b) throw cybozu::Exception("Vint:setArray"); - } -#endif - VintT& operator++() { adds1(*this, *this, 1); return *this; } - VintT& operator--() { subs1(*this, *this, 1); return *this; } - VintT operator++(int) { VintT c = *this; adds1(*this, *this, 1); return c; } - VintT operator--(int) { VintT c = *this; subs1(*this, *this, 1); return c; } - friend bool operator<(const VintT& x, const VintT& y) { return compare(x, y) < 0; } - friend bool operator>=(const VintT& x, const VintT& y) { return !operator<(x, y); } - friend bool operator>(const VintT& x, const VintT& y) { return compare(x, y) > 0; } - friend bool operator<=(const VintT& x, const VintT& y) { return !operator>(x, y); } - friend bool operator==(const VintT& x, const VintT& y) { return compare(x, y) == 0; } - friend bool operator!=(const VintT& x, const VintT& y) { return !operator==(x, y); } - - friend bool operator<(const VintT& x, int y) { return compares1(x, y) < 0; } - friend bool operator>=(const VintT& x, int y) { return !operator<(x, y); } - friend bool operator>(const VintT& x, int y) { return compares1(x, y) > 0; } - friend bool operator<=(const VintT& x, int y) { return !operator>(x, y); } - friend bool operator==(const VintT& x, int y) { return compares1(x, y) == 0; } - friend bool operator!=(const VintT& x, int y) { return !operator==(x, y); } - - friend bool operator<(const VintT& x, uint32_t y) { return compareu1(x, y) < 0; } - friend bool operator>=(const VintT& x, uint32_t y) { return !operator<(x, y); } - friend bool operator>(const VintT& x, uint32_t y) { return compareu1(x, y) > 0; } - friend bool operator<=(const VintT& x, uint32_t y) { return !operator>(x, y); } - friend bool operator==(const VintT& x, uint32_t y) { return compareu1(x, y) == 0; } - friend bool operator!=(const VintT& x, uint32_t y) { return !operator==(x, y); } - - VintT& operator+=(const VintT& rhs) { add(*this, *this, rhs); return *this; } - VintT& operator-=(const VintT& rhs) { sub(*this, *this, rhs); return *this; } - VintT& operator*=(const VintT& rhs) { mul(*this, *this, rhs); return *this; } - VintT& operator/=(const VintT& rhs) { div(*this, *this, rhs); return *this; } - VintT& operator%=(const VintT& rhs) { mod(*this, *this, rhs); return *this; } - VintT& operator&=(const VintT& rhs) { andBit(*this, *this, rhs); return *this; } - VintT& operator|=(const VintT& rhs) { orBit(*this, *this, rhs); return *this; } - - VintT& operator+=(int rhs) { adds1(*this, *this, rhs); return *this; } - VintT& operator-=(int rhs) { subs1(*this, *this, rhs); return *this; } - VintT& operator*=(int rhs) { muls1(*this, *this, rhs); return *this; } - VintT& operator/=(int rhs) { divs1(*this, *this, rhs); return *this; } - VintT& operator%=(int rhs) { mods1(*this, *this, rhs); return *this; } - VintT& operator+=(Unit rhs) { addu1(*this, *this, rhs); return *this; } - VintT& operator-=(Unit rhs) { subu1(*this, *this, rhs); return *this; } - VintT& operator*=(Unit rhs) { mulu1(*this, *this, rhs); return *this; } - VintT& operator/=(Unit rhs) { divu1(*this, *this, rhs); return *this; } - VintT& operator%=(Unit rhs) { modu1(*this, *this, rhs); return *this; } - - VintT& operator&=(Unit rhs) { andBitu1(*this, *this, rhs); return *this; } - VintT& operator|=(Unit rhs) { orBitu1(*this, *this, rhs); return *this; } - - friend VintT operator+(const VintT& a, const VintT& b) { VintT c; add(c, a, b); return c; } - friend VintT operator-(const VintT& a, const VintT& b) { VintT c; sub(c, a, b); return c; } - friend VintT operator*(const VintT& a, const VintT& b) { VintT c; mul(c, a, b); return c; } - friend VintT operator/(const VintT& a, const VintT& b) { VintT c; div(c, a, b); return c; } - friend VintT operator%(const VintT& a, const VintT& b) { VintT c; mod(c, a, b); return c; } - friend VintT operator&(const VintT& a, const VintT& b) { VintT c; andBit(c, a, b); return c; } - friend VintT operator|(const VintT& a, const VintT& b) { VintT c; orBit(c, a, b); return c; } - - friend VintT operator+(const VintT& a, int b) { VintT c; adds1(c, a, b); return c; } - friend VintT operator-(const VintT& a, int b) { VintT c; subs1(c, a, b); return c; } - friend VintT operator*(const VintT& a, int b) { VintT c; muls1(c, a, b); return c; } - friend VintT operator/(const VintT& a, int b) { VintT c; divs1(c, a, b); return c; } - friend VintT operator%(const VintT& a, int b) { VintT c; mods1(c, a, b); return c; } - friend VintT operator+(const VintT& a, Unit b) { VintT c; addu1(c, a, b); return c; } - friend VintT operator-(const VintT& a, Unit b) { VintT c; subu1(c, a, b); return c; } - friend VintT operator*(const VintT& a, Unit b) { VintT c; mulu1(c, a, b); return c; } - friend VintT operator/(const VintT& a, Unit b) { VintT c; divu1(c, a, b); return c; } - friend VintT operator%(const VintT& a, Unit b) { VintT c; modu1(c, a, b); return c; } - - friend VintT operator&(const VintT& a, Unit b) { VintT c; andBitu1(c, a, b); return c; } - friend VintT operator|(const VintT& a, Unit b) { VintT c; orBitu1(c, a, b); return c; } - - VintT operator-() const { VintT c; neg(c, *this); return c; } - VintT& operator<<=(size_t n) { shl(*this, *this, n); return *this; } - VintT& operator>>=(size_t n) { shr(*this, *this, n); return *this; } - VintT operator<<(size_t n) const { VintT c = *this; c <<= n; return c; } - VintT operator>>(size_t n) const { VintT c = *this; c >>= n; return c; } -}; - -#ifdef MCL_VINT_FIXED_BUFFER -typedef VintT::bit * 2> > Vint; -#else -typedef VintT > Vint; -#endif - -} // mcl - -//typedef mcl::Vint mpz_class; diff --git a/cases/tool/win/bls_win/include/mcl/window_method.hpp b/cases/tool/win/bls_win/include/mcl/window_method.hpp deleted file mode 100644 index cb4fad37e2..0000000000 --- a/cases/tool/win/bls_win/include/mcl/window_method.hpp +++ /dev/null @@ -1,175 +0,0 @@ -#pragma once -/** - @file - @brief window method - @author MITSUNARI Shigeo(@herumi) -*/ -#include -#include - -namespace mcl { namespace fp { - -/* - get w-bit size from x[0, bitSize) - @param x [in] data - @param bitSize [in] data size - @param w [in] split size < UnitBitSize -*/ -template -struct ArrayIterator { - static const size_t TbitSize = sizeof(T) * 8; - ArrayIterator(const T *x, size_t bitSize, size_t w) - : x(x) - , bitSize(bitSize) - , w(w) - , pos(0) - , mask((w == TbitSize ? 0 : (T(1) << w)) - 1) - { - assert(w <= TbitSize); - } - bool hasNext() const { return bitSize > 0; } - T getNext() - { - if (w == TbitSize) { - bitSize -= w; - return *x++; - } - if (pos + w < TbitSize) { - T v = (*x >> pos) & mask; - pos += w; - if (bitSize < w) { - bitSize = 0; - } else { - bitSize -= w; - } - return v; - } - if (pos + bitSize <= TbitSize) { - assert(bitSize <= w); - T v = *x >> pos; - assert((v >> bitSize) == 0); - bitSize = 0; - return v & mask; - } - assert(pos > 0); - T v = (x[0] >> pos) | (x[1] << (TbitSize - pos)); - v &= mask; - pos = (pos + w) - TbitSize; - bitSize -= w; - x++; - return v; - } - const T *x; - size_t bitSize; - size_t w; - size_t pos; - T mask; -}; - -template -class WindowMethod { -public: - size_t bitSize_; - size_t winSize_; - mcl::Array tbl_; - WindowMethod(const Ec& x, size_t bitSize, size_t winSize) - { - init(x, bitSize, winSize); - } - WindowMethod() - : bitSize_(0) - , winSize_(0) - { - } - /* - @param x [in] base index - @param bitSize [in] exponent bit length - @param winSize [in] window size - */ - void init(bool *pb, const Ec& x, size_t bitSize, size_t winSize) - { - bitSize_ = bitSize; - winSize_ = winSize; - const size_t tblNum = (bitSize + winSize - 1) / winSize; - const size_t r = size_t(1) << winSize; - *pb = tbl_.resize(tblNum * r); - if (!*pb) return; - Ec t(x); - for (size_t i = 0; i < tblNum; i++) { - Ec* w = &tbl_[i * r]; - w[0].clear(); - for (size_t d = 1; d < r; d *= 2) { - for (size_t j = 0; j < d; j++) { - Ec::add(w[j + d], w[j], t); - } - Ec::dbl(t, t); - } - for (size_t j = 0; j < r; j++) { - w[j].normalize(); - } - } - } -#ifndef CYBOZU_DONT_USE_EXCEPTION - void init(const Ec& x, size_t bitSize, size_t winSize) - { - bool b; - init(&b, x, bitSize, winSize); - if (!b) throw cybozu::Exception("mcl:WindowMethod:init") << bitSize << winSize; - } -#endif - /* - @param z [out] x multiplied by y - @param y [in] exponent - */ - template - void mul(Ec& z, const FpT& y) const - { - fp::Block b; - y.getBlock(b); - powArray(z, b.p, b.n, false); - } - void mul(Ec& z, int64_t y) const - { -#if MCL_SIZEOF_UNIT == 8 - Unit u = fp::abs_(y); - powArray(z, &u, 1, y < 0); -#else - uint64_t ua = fp::abs_(y); - Unit u[2] = { uint32_t(ua), uint32_t(ua >> 32) }; - size_t un = u[1] ? 2 : 1; - powArray(z, u, un, y < 0); -#endif - } - void mul(Ec& z, const mpz_class& y) const - { - powArray(z, gmp::getUnit(y), gmp::getUnitSize(y), y < 0); - } - void powArray(Ec& z, const Unit* y, size_t n, bool isNegative) const - { - z.clear(); - while (n > 0) { - if (y[n - 1]) break; - n--; - } - if (n == 0) return; - assert((n << winSize_) <= tbl_.size()); - if ((n << winSize_) > tbl_.size()) return; - assert(y[n - 1]); - const size_t bitSize = (n - 1) * UnitBitSize + cybozu::bsr(y[n - 1]) + 1; - size_t i = 0; - ArrayIterator ai(y, bitSize, winSize_); - do { - Unit v = ai.getNext(); - if (v) { - Ec::add(z, z, tbl_[(i << winSize_) + v]); - } - i++; - } while (ai.hasNext()); - if (isNegative) { - Ec::neg(z, z); - } - } -}; - -} } // mcl::fp - diff --git a/cases/tool/win/bls_win/lib/bls256.dll b/cases/tool/win/bls_win/lib/bls256.dll deleted file mode 100644 index 7dfb4a769c..0000000000 Binary files a/cases/tool/win/bls_win/lib/bls256.dll and /dev/null differ diff --git a/cases/tool/win/bls_win/lib/bls384.dll b/cases/tool/win/bls_win/lib/bls384.dll deleted file mode 100644 index b17cd283a6..0000000000 Binary files a/cases/tool/win/bls_win/lib/bls384.dll and /dev/null differ diff --git a/cases/tool/win/bls_win/lib/bls384_256.dll b/cases/tool/win/bls_win/lib/bls384_256.dll deleted file mode 100644 index 30a8089017..0000000000 Binary files a/cases/tool/win/bls_win/lib/bls384_256.dll and /dev/null differ diff --git a/cases/tool/win/bls_win/lib/libbls256.a b/cases/tool/win/bls_win/lib/libbls256.a deleted file mode 100644 index 638717ab39..0000000000 Binary files a/cases/tool/win/bls_win/lib/libbls256.a and /dev/null differ diff --git a/cases/tool/win/bls_win/lib/libbls384.a b/cases/tool/win/bls_win/lib/libbls384.a deleted file mode 100644 index c08ffceaa4..0000000000 Binary files a/cases/tool/win/bls_win/lib/libbls384.a and /dev/null differ diff --git a/cases/tool/win/bls_win/lib/libbls384_256.a b/cases/tool/win/bls_win/lib/libbls384_256.a deleted file mode 100644 index 4221f9b7fe..0000000000 Binary files a/cases/tool/win/bls_win/lib/libbls384_256.a and /dev/null differ diff --git a/cases/tool/win/bls_win/lib/libmclbn256.a b/cases/tool/win/bls_win/lib/libmclbn256.a deleted file mode 100644 index 9b4cb52b00..0000000000 Binary files a/cases/tool/win/bls_win/lib/libmclbn256.a and /dev/null differ diff --git a/cases/tool/win/bls_win/lib/libmclbn384.a b/cases/tool/win/bls_win/lib/libmclbn384.a deleted file mode 100644 index 74f8fc416b..0000000000 Binary files a/cases/tool/win/bls_win/lib/libmclbn384.a and /dev/null differ diff --git a/cases/tool/win/bls_win/lib/libmclbn384_256.a b/cases/tool/win/bls_win/lib/libmclbn384_256.a deleted file mode 100644 index 4bbbef31cd..0000000000 Binary files a/cases/tool/win/bls_win/lib/libmclbn384_256.a and /dev/null differ diff --git a/cases/tool/win/bls_win/lib/mclbn256.dll b/cases/tool/win/bls_win/lib/mclbn256.dll deleted file mode 100644 index a119d5aa65..0000000000 Binary files a/cases/tool/win/bls_win/lib/mclbn256.dll and /dev/null differ diff --git a/cases/tool/win/bls_win/lib/mclbn384.dll b/cases/tool/win/bls_win/lib/mclbn384.dll deleted file mode 100644 index 0ef49c6360..0000000000 Binary files a/cases/tool/win/bls_win/lib/mclbn384.dll and /dev/null differ diff --git a/cases/tool/win/bls_win/lib/mclbn384_256.dll b/cases/tool/win/bls_win/lib/mclbn384_256.dll deleted file mode 100644 index 7c92dabfa8..0000000000 Binary files a/cases/tool/win/bls_win/lib/mclbn384_256.dll and /dev/null differ diff --git a/cases/tool/win/duplicateSign.exe b/cases/tool/win/duplicateSign.exe deleted file mode 100644 index 7d951d7159..0000000000 Binary files a/cases/tool/win/duplicateSign.exe and /dev/null differ diff --git a/cases/tool/win/get_pubkey_for_blocknum.exe b/cases/tool/win/get_pubkey_for_blocknum.exe deleted file mode 100644 index 8c2f834948..0000000000 Binary files a/cases/tool/win/get_pubkey_for_blocknum.exe and /dev/null differ diff --git a/cases/tool/win/keytool.exe b/cases/tool/win/keytool.exe deleted file mode 100644 index 17f60e89c8..0000000000 Binary files a/cases/tool/win/keytool.exe and /dev/null differ diff --git a/circle.yml b/circle.yml index a8a1a4bdd0..371b09e965 100644 --- a/circle.yml +++ b/circle.yml @@ -20,9 +20,9 @@ dependencies: test: override: # Build Geth and move into a known folder - - make platon - - cp ./build/bin/platon $HOME/platon + - make alaya + - cp ./build/bin/alaya $HOME/alaya # Run hive and move all generated logs into the public artifacts folder - - (cd ~/.go_workspace/src/github.com/karalabe/hive && hive --docker-noshell --client=go-ethereum:local --override=$HOME/platon --test=. --sim=.) + - (cd ~/.go_workspace/src/github.com/karalabe/hive && hive --docker-noshell --client=go-ethereum:local --override=$HOME/alaya --test=. --sim=.) - cp -r ~/.go_workspace/src/github.com/karalabe/hive/workspace/logs/* $CIRCLE_ARTIFACTS diff --git a/cmd/abigen/main.go b/cmd/abigen/main.go index 5a726b6cb0..cdc45ae06a 100644 --- a/cmd/abigen/main.go +++ b/cmd/abigen/main.go @@ -26,12 +26,12 @@ import ( "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/common/compiler" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/internal/flags" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/common/compiler" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/internal/flags" + "github.com/AlayaNetwork/Alaya-Go/log" ) var ( diff --git a/cmd/platon/accountcmd.go b/cmd/alaya/accountcmd.go similarity index 95% rename from cmd/platon/accountcmd.go rename to cmd/alaya/accountcmd.go index 20e2d54f51..f4368691c5 100644 --- a/cmd/platon/accountcmd.go +++ b/cmd/alaya/accountcmd.go @@ -21,13 +21,13 @@ import ( "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/console" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/console" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" ) var ( @@ -79,7 +79,7 @@ Print a short summary of all accounts`, utils.AddressHRPFlag, }, Description: ` - platon account new + alaya account new Creates a new account and prints the address. @@ -104,7 +104,7 @@ password to file or expose in any other way. utils.LightKDFFlag, }, Description: ` - platon account update
+ alaya account update
Update an existing account. @@ -116,7 +116,7 @@ format to the newest format or change the password for an account. For non-interactive use the passphrase can be specified with the --password flag: - platon account update [options]
+ alaya account update [options]
Since only one password can be given, only format update can be performed, changing your password is only possible interactively. @@ -134,7 +134,7 @@ changing your password is only possible interactively. }, ArgsUsage: "", Description: ` - platon account import + alaya account import Imports an unencrypted private key from and creates a new account. Prints the address. @@ -147,7 +147,7 @@ You must remember this passphrase to unlock your account in the future. For non-interactive use the passphrase can be specified with the -password flag: - platon account import [options] + alaya account import [options] Note: As you can directly copy your encrypted accounts to another PlatON instance, diff --git a/cmd/platon/accountcmd_test.go b/cmd/alaya/accountcmd_test.go similarity index 95% rename from cmd/platon/accountcmd_test.go rename to cmd/alaya/accountcmd_test.go index 5742749cd2..dde9672d91 100644 --- a/cmd/platon/accountcmd_test.go +++ b/cmd/alaya/accountcmd_test.go @@ -109,7 +109,7 @@ Repeat passphrase: {{.InputLine "foobar2"}} func TestUnlockFlag(t *testing.T) { datadir := tmpDatadirWithKeystore(t) platon := runPlatON(t, - "--datadir", datadir, "--ipcdisable", "--alayatestnet", "--nat", "none", "--nodiscover", "--maxpeers", "0", "--port", "0", + "--datadir", datadir, "--ipcdisable", "--alaya", "--nat", "none", "--nodiscover", "--maxpeers", "0", "--port", "0", "--unlock", "atp10m66vy6lrlt2qfvnamwgd8rdg8vnfthc5grew9", "js", "testdata/empty.js") platon.Expect(` @@ -133,7 +133,7 @@ Passphrase: {{.InputLine "foobar"}} func TestUnlockFlagWrongPassword(t *testing.T) { datadir := tmpDatadirWithKeystore(t) platon := runPlatON(t, - "--datadir", datadir, "--nat", "none", "--nodiscover", "--maxpeers", "0", "--port", "0", "--ipcdisable", "--testnet", + "--datadir", datadir, "--nat", "none", "--nodiscover", "--maxpeers", "0", "--port", "0", "--ipcdisable", "--alaya", "--unlock", "atp173ngt84dryedws7kyt9hflq93zpwsey2zecc74") defer platon.ExpectExit() platon.Expect(` @@ -152,7 +152,7 @@ Fatal: Failed to unlock account atp173ngt84dryedws7kyt9hflq93zpwsey2zecc74 (coul func TestUnlockFlagMultiIndex(t *testing.T) { datadir := tmpDatadirWithKeystore(t) platon := runPlatON(t, - "--datadir", datadir, "--nat", "none", "--nodiscover", "--maxpeers", "0", "--port", "0", "--ipcdisable", "--testnet", + "--datadir", datadir, "--nat", "none", "--nodiscover", "--maxpeers", "0", "--port", "0", "--ipcdisable", "--alaya", "--unlock", "0,2", "js", "testdata/empty.js") platon.Expect(` @@ -180,7 +180,7 @@ func TestUnlockFlagPasswordFile(t *testing.T) { datadir := tmpDatadirWithKeystore(t) platon := runPlatON(t, "--datadir", datadir, "--nat", "none", "--nodiscover", "--maxpeers", "0", "--port", "0", - "--password", "testdata/passwords.txt", "--unlock", "0,2", "--ipcdisable", "--testnet", + "--password", "testdata/passwords.txt", "--unlock", "0,2", "--ipcdisable", "--alaya", "js", "testdata/empty.js") platon.ExpectExit() @@ -199,7 +199,7 @@ func TestUnlockFlagPasswordFile(t *testing.T) { func TestUnlockFlagPasswordFileWrongPassword(t *testing.T) { datadir := tmpDatadirWithKeystore(t) platon := runPlatON(t, - "--datadir", datadir, "--nat", "none", "--nodiscover", "--maxpeers", "0", "--port", "0", "--ipcdisable", "--testnet", + "--datadir", datadir, "--nat", "none", "--nodiscover", "--maxpeers", "0", "--port", "0", "--ipcdisable", "--alaya", "--password", "testdata/wrong-passwords.txt", "--unlock", "0,2") defer platon.ExpectExit() platon.Expect(` @@ -210,7 +210,7 @@ Fatal: Failed to unlock account 0 (could not decrypt key with given passphrase) func TestUnlockFlagAmbiguous(t *testing.T) { store := filepath.Join("..", "..", "accounts", "keystore", "testdata", "dupes") platon := runPlatON(t, - "--keystore", store, "--nat", "none", "--nodiscover", "--maxpeers", "0", "--port", "0", "--ipcdisable", "--testnet", + "--keystore", store, "--nat", "none", "--nodiscover", "--maxpeers", "0", "--port", "0", "--ipcdisable", "--alaya", "--unlock", "atp173ngt84dryedws7kyt9hflq93zpwsey2zecc74", "js", "testdata/empty.js") defer platon.ExpectExit() @@ -248,7 +248,7 @@ In order to avoid this warning, you need to remove the following duplicate key f func TestUnlockFlagAmbiguousWrongPassword(t *testing.T) { store := filepath.Join("..", "..", "accounts", "keystore", "testdata", "dupes") platon := runPlatON(t, - "--keystore", store, "--nat", "none", "--nodiscover", "--maxpeers", "0", "--port", "0", "--ipcdisable", "--testnet", + "--keystore", store, "--nat", "none", "--nodiscover", "--maxpeers", "0", "--port", "0", "--ipcdisable", "--alaya", "--unlock", "atp173ngt84dryedws7kyt9hflq93zpwsey2zecc74") defer platon.ExpectExit() diff --git a/cmd/platon/bugcmd.go b/cmd/alaya/bugcmd.go similarity index 91% rename from cmd/platon/bugcmd.go rename to cmd/alaya/bugcmd.go index affecfa171..b9f13956fe 100644 --- a/cmd/platon/bugcmd.go +++ b/cmd/alaya/bugcmd.go @@ -26,22 +26,22 @@ import ( "runtime" "strings" - "github.com/PlatONnetwork/PlatON-Go/cmd/internal/browser" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/cmd/internal/browser" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" cli "gopkg.in/urfave/cli.v1" ) var bugCommand = cli.Command{ Action: utils.MigrateFlags(reportBug), Name: "bug", - Usage: "opens a window to report a bug on the platon repo", + Usage: "opens a window to report a bug on the alaya repo", ArgsUsage: " ", Category: "MISCELLANEOUS COMMANDS", } -const issueURL = "https://github.com/PlatONnetwork/PlatON-Go/issues/new" +const issueURL = "https://github.com/AlayaNetwork/Alaya-Go/issues/new" // reportBug reports a bug by opening a new URL to the go-ethereum GH issue // tracker and setting default values as the issue body. diff --git a/cmd/platon/chaincmd.go b/cmd/alaya/chaincmd.go similarity index 95% rename from cmd/platon/chaincmd.go rename to cmd/alaya/chaincmd.go index 93b742528f..713a5c0637 100644 --- a/cmd/platon/chaincmd.go +++ b/cmd/alaya/chaincmd.go @@ -20,9 +20,9 @@ import ( "fmt" "io" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/core/vm" "os" "runtime" @@ -30,22 +30,22 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/miner" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/miner" "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/console" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/console" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" ) var ( diff --git a/cmd/platon/config.go b/cmd/alaya/config.go similarity index 96% rename from cmd/platon/config.go rename to cmd/alaya/config.go index 8d86f795d4..8d0ecfe211 100644 --- a/cmd/platon/config.go +++ b/cmd/alaya/config.go @@ -28,12 +28,12 @@ import ( cli "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/params" "github.com/naoina/toml" ) diff --git a/cmd/platon/consolecmd.go b/cmd/alaya/consolecmd.go similarity index 84% rename from cmd/platon/consolecmd.go rename to cmd/alaya/consolecmd.go index db1d3d5848..483549589c 100644 --- a/cmd/platon/consolecmd.go +++ b/cmd/alaya/consolecmd.go @@ -26,10 +26,10 @@ import ( "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/console" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/console" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) var ( @@ -43,7 +43,7 @@ var ( Flags: append(append(append(nodeFlags, rpcFlags...), consoleFlags...)), Category: "CONSOLE COMMANDS", Description: ` -The platon console is an interactive shell for the JavaScript runtime environment +The alaya console is an interactive shell for the JavaScript runtime environment which exposes a node admin interface as well as the Ðapp JavaScript API. See https://github.com/ethereum/go-ethereum/wiki/JavaScript-Console.`, } @@ -56,10 +56,10 @@ See https://github.com/ethereum/go-ethereum/wiki/JavaScript-Console.`, Flags: append(consoleFlags, utils.DataDirFlag), Category: "CONSOLE COMMANDS", Description: ` -The platon console is an interactive shell for the JavaScript runtime environment +The alaya console is an interactive shell for the JavaScript runtime environment which exposes a node admin interface as well as the Ðapp JavaScript API. See https://github.com/ethereum/go-ethereum/wiki/JavaScript-Console. -This command allows to open a console on a running platon node.`, +This command allows to open a console on a running alaya node.`, } javascriptCommand = cli.Command{ @@ -75,7 +75,7 @@ JavaScript API. See https://github.com/ethereum/go-ethereum/wiki/JavaScript-Cons } ) -// localConsole starts a new platon node, attaching a JavaScript console to it at the +// localConsole starts a new alaya node, attaching a JavaScript console to it at the // same time. func localConsole(ctx *cli.Context) error { // Create and start the node based on the CLI flags @@ -86,7 +86,7 @@ func localConsole(ctx *cli.Context) error { // Attach to the newly started node and start the JavaScript console client, err := node.Attach() if err != nil { - utils.Fatalf("Failed to attach to the inproc platon: %v", err) + utils.Fatalf("Failed to attach to the inproc alaya: %v", err) } config := console.Config{ DataDir: utils.MakeDataDir(ctx), @@ -113,10 +113,10 @@ func localConsole(ctx *cli.Context) error { return nil } -// remoteConsole will connect to a remote platon instance, attaching a JavaScript +// remoteConsole will connect to a remote alaya instance, attaching a JavaScript // console to it. func remoteConsole(ctx *cli.Context) error { - // Attach to a remotely running platon instance and start the JavaScript console + // Attach to a remotely running alaya instance and start the JavaScript console endpoint := ctx.Args().First() if endpoint == "" { path := node.DefaultDataDir() @@ -132,11 +132,11 @@ func remoteConsole(ctx *cli.Context) error { path = filepath.Join(path, "alayatestnet") } } - endpoint = fmt.Sprintf("%s/platon.ipc", path) + endpoint = fmt.Sprintf("%s/alaya.ipc", path) } client, err := dialRPC(endpoint) if err != nil { - utils.Fatalf("Unable to attach to remote platon: %v", err) + utils.Fatalf("Unable to attach to remote alaya: %v", err) } config := console.Config{ DataDir: utils.MakeDataDir(ctx), @@ -165,19 +165,19 @@ func remoteConsole(ctx *cli.Context) error { // dialRPC returns a RPC client which connects to the given endpoint. // The check for empty endpoint implements the defaulting logic -// for "platon attach" and "platon monitor" with no argument. +// for "alaya attach" and "alaya monitor" with no argument. func dialRPC(endpoint string) (*rpc.Client, error) { if endpoint == "" { endpoint = node.DefaultIPCEndpoint(clientIdentifier) } else if strings.HasPrefix(endpoint, "rpc:") || strings.HasPrefix(endpoint, "ipc:") { - // Backwards compatibility with platon < 1.5 which required + // Backwards compatibility with alaya < 1.5 which required // these prefixes. endpoint = endpoint[4:] } return rpc.Dial(endpoint) } -// ephemeralConsole starts a new platon node, attaches an ephemeral JavaScript +// ephemeralConsole starts a new alaya node, attaches an ephemeral JavaScript // console to it, executes each of the files specified as arguments and tears // everything down. func ephemeralConsole(ctx *cli.Context) error { @@ -189,7 +189,7 @@ func ephemeralConsole(ctx *cli.Context) error { // Attach to the newly started node and start the JavaScript console client, err := node.Attach() if err != nil { - utils.Fatalf("Failed to attach to the inproc platon: %v", err) + utils.Fatalf("Failed to attach to the inproc alaya: %v", err) } config := console.Config{ DataDir: utils.MakeDataDir(ctx), diff --git a/cmd/platon/consolecmd_test.go b/cmd/alaya/consolecmd_test.go similarity index 81% rename from cmd/platon/consolecmd_test.go rename to cmd/alaya/consolecmd_test.go index 982f1c98d5..d037674483 100644 --- a/cmd/platon/consolecmd_test.go +++ b/cmd/alaya/consolecmd_test.go @@ -27,7 +27,7 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" ) const ( @@ -41,21 +41,22 @@ func TestConsoleWelcome(t *testing.T) { datadir := tmpdir(t) defer os.RemoveAll(datadir) platon := runPlatON(t, - "--datadir", datadir, "--port", "0", "--ipcdisable", "--testnet", "--maxpeers", "0", "--nodiscover", "--nat", "none", "console") + "--datadir", datadir, "--port", "0", "--ipcdisable", "--alaya", "--maxpeers", "0", "--nodiscover", "--nat", "none", "console") // Gather all the infos the welcome message needs to contain platon.SetTemplateFunc("goos", func() string { return runtime.GOOS }) platon.SetTemplateFunc("goarch", func() string { return runtime.GOARCH }) platon.SetTemplateFunc("gover", runtime.Version) platon.SetTemplateFunc("gethver", func() string { return params.VersionWithMeta }) - platon.SetTemplateFunc("niltime", func() string { return time.Unix(0, 0).Format(time.RFC1123) }) + //platon.SetTemplateFunc("niltime", func() string { return time.Unix(0, 0).Format(time.RFC1123) }) + platon.SetTemplateFunc("niltime", func() string { return time.Unix(1602973620000, 0).Format(time.RFC1123) }) platon.SetTemplateFunc("apis", func() string { return ipcAPIs }) // Verify the actual welcome message to the required template platon.Expect(` -Welcome to the PlatON JavaScript console! +Welcome to the Alaya JavaScript console! -instance: PlatONnetwork/v{{gethver}}/{{goos}}-{{goarch}}/{{gover}} +instance: AlayaNetwork/v{{gethver}}/{{goos}}-{{goarch}}/{{gover}} at block: 0 ({{niltime}}) datadir: {{.Datadir}} modules: {{apis}} @@ -77,7 +78,7 @@ func TestIPCAttachWelcome(t *testing.T) { ipc = filepath.Join(ws, "platon.ipc") } platon := runPlatON(t, - "--port", "0", "--testnet", "--maxpeers", "0", "--nodiscover", "--nat", "none", "--ipcpath", ipc) + "--port", "0", "--alaya", "--maxpeers", "0", "--nodiscover", "--nat", "none", "--ipcpath", ipc) time.Sleep(2 * time.Second) // Simple way to wait for the RPC endpoint to open testAttachWelcome(t, platon, "ipc:"+ipc, ipcAPIs) @@ -89,7 +90,7 @@ func TestIPCAttachWelcome(t *testing.T) { func TestHTTPAttachWelcome(t *testing.T) { port := strconv.Itoa(trulyRandInt(1024, 65536)) // Yeah, sometimes this will fail, sorry :P platon := runPlatON(t, - "--port", "0", "--ipcdisable", "--testnet", "--maxpeers", "0", "--nodiscover", "--nat", "none", + "--port", "0", "--ipcdisable", "--alaya", "--maxpeers", "0", "--nodiscover", "--nat", "none", "--rpc", "--rpcport", port) time.Sleep(2 * time.Second) // Simple way to wait for the RPC endpoint to open @@ -103,7 +104,7 @@ func TestWSAttachWelcome(t *testing.T) { port := strconv.Itoa(trulyRandInt(1024, 65536)) // Yeah, sometimes this will fail, sorry :P platon := runPlatON(t, - "--port", "0", "--ipcdisable", "--testnet", "--maxpeers", "0", "--nodiscover", "--nat", "none", + "--port", "0", "--ipcdisable", "--alaya", "--maxpeers", "0", "--nodiscover", "--nat", "none", "--ws", "--wsport", port /*, "--testnet"*/) time.Sleep(2 * time.Second) // Simple way to wait for the RPC endpoint to open @@ -114,7 +115,7 @@ func TestWSAttachWelcome(t *testing.T) { } func testAttachWelcome(t *testing.T, platon *testplaton, endpoint, apis string) { - // Attach to a running platon note and terminate immediately + // Attach to a running alaya note and terminate immediately attach := runPlatON(t, "attach", endpoint) defer attach.ExpectExit() attach.CloseStdin() @@ -124,16 +125,17 @@ func testAttachWelcome(t *testing.T, platon *testplaton, endpoint, apis string) attach.SetTemplateFunc("goarch", func() string { return runtime.GOARCH }) attach.SetTemplateFunc("gover", runtime.Version) attach.SetTemplateFunc("gethver", func() string { return params.VersionWithMeta }) - attach.SetTemplateFunc("niltime", func() string { return time.Unix(0, 0).Format(time.RFC1123) }) + //attach.SetTemplateFunc("niltime", func() string { return time.Unix(0, 0).Format(time.RFC1123) }) + attach.SetTemplateFunc("niltime", func() string { return time.Unix(1602973620000, 0).Format(time.RFC1123) }) attach.SetTemplateFunc("ipc", func() bool { return strings.HasPrefix(endpoint, "ipc") }) attach.SetTemplateFunc("datadir", func() string { return platon.Datadir }) attach.SetTemplateFunc("apis", func() string { return apis }) // Verify the actual welcome message to the required template attach.Expect(` -Welcome to the PlatON JavaScript console! +Welcome to the Alaya JavaScript console! -instance: PlatONnetwork/v{{gethver}}/{{goos}}-{{goarch}}/{{gover}} +instance: AlayaNetwork/v{{gethver}}/{{goos}}-{{goarch}}/{{gover}} at block: 0 ({{niltime}}){{if ipc}} datadir: {{datadir}}{{end}} modules: {{apis}} diff --git a/cmd/platon/genesis_test.go b/cmd/alaya/genesis_test.go similarity index 99% rename from cmd/platon/genesis_test.go rename to cmd/alaya/genesis_test.go index ed35946882..169be0f0a6 100644 --- a/cmd/platon/genesis_test.go +++ b/cmd/alaya/genesis_test.go @@ -267,7 +267,7 @@ func TestCustomGenesis(t *testing.T) { // Query the custom genesis block platon := runPlatON(t, "--datadir", datadir, "--maxpeers", "0", "--port", "0", - "--nodiscover", "--nat", "none", "--ipcdisable", "--alayatestnet", + "--nodiscover", "--nat", "none", "--ipcdisable", "--alaya", "--exec", tt.query, "console") t.Log("testi", i) platon.ExpectRegexp(tt.result) diff --git a/cmd/platon/main.go b/cmd/alaya/main.go similarity index 91% rename from cmd/platon/main.go rename to cmd/alaya/main.go index 64f640d54f..42e8728d4a 100644 --- a/cmd/platon/main.go +++ b/cmd/alaya/main.go @@ -14,7 +14,7 @@ // You should have received a copy of the GNU General Public License // along with go-ethereum. If not, see . -// platon is the official command-line client for Ethereum. +// alaya is the official command-line client for Ethereum. package main import ( @@ -31,30 +31,30 @@ import ( "github.com/panjf2000/ants/v2" "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/console" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/ethclient" - "github.com/PlatONnetwork/PlatON-Go/internal/debug" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/metrics" - "github.com/PlatONnetwork/PlatON-Go/node" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/console" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/ethclient" + "github.com/AlayaNetwork/Alaya-Go/internal/debug" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/node" gopsutil "github.com/shirou/gopsutil/mem" ) const ( - clientIdentifier = "platon" // Client identifier to advertise over the network + clientIdentifier = "alaya" // Client identifier to advertise over the network ) var ( // Git SHA1 commit hash of the release (set via linker flags) gitCommit = "" // The app that holds all commands and flags. - app = utils.NewApp(gitCommit, "the platon-go command line interface") + app = utils.NewApp(gitCommit, "the alaya-go command line interface") // flags that configure the node nodeFlags = []cli.Flag{ utils.IdentityFlag, @@ -183,7 +183,7 @@ func init() { // Initialize the CLI app and start PlatON app.Action = platon app.HideVersion = true // we have a command to print the version - app.Copyright = "Copyright 2019 The PlatON-Go Authors" + app.Copyright = "Copyright 2019 The Alaya-Go Authors" app.Commands = []cli.Command{ // See chaincmd.go: initCommand, @@ -285,7 +285,7 @@ func main() { } } -// platon is the main entry point into the system if no special subcommand is ran. +// alaya is the main entry point into the system if no special subcommand is ran. // It creates a default node based on the command line arguments and runs it in // blocking mode, waiting for it to be shut down. func platon(ctx *cli.Context) error { diff --git a/cmd/platon/misccmd.go b/cmd/alaya/misccmd.go similarity index 87% rename from cmd/platon/misccmd.go rename to cmd/alaya/misccmd.go index 8659b82562..28a063554e 100644 --- a/cmd/platon/misccmd.go +++ b/cmd/alaya/misccmd.go @@ -18,9 +18,9 @@ package main import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/params" "gopkg.in/urfave/cli.v1" "os" "runtime" @@ -63,17 +63,17 @@ func version(ctx *cli.Context) error { } func license(_ *cli.Context) error { - fmt.Println(`platon is free software: you can redistribute it and/or modify + fmt.Println(`alaya is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. -platon is distributed in the hope that it will be useful, +alaya 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 General Public License for more details. You should have received a copy of the GNU General Public License -along with platon. If not, see .`) +along with alaya. If not, see .`) return nil } diff --git a/cmd/platon/run_test.go b/cmd/alaya/run_test.go similarity index 87% rename from cmd/platon/run_test.go rename to cmd/alaya/run_test.go index 98d5b53729..cde4409767 100644 --- a/cmd/platon/run_test.go +++ b/cmd/alaya/run_test.go @@ -22,7 +22,7 @@ import ( "os" "testing" - "github.com/PlatONnetwork/PlatON-Go/internal/cmdtest" + "github.com/AlayaNetwork/Alaya-Go/internal/cmdtest" "github.com/docker/docker/pkg/reexec" ) @@ -42,7 +42,7 @@ type testplaton struct { } func init() { - // Run the app if we've been exec'd as "platon-test" in runPlatON. + // Run the app if we've been exec'd as "alaya-test" in runPlatON. reexec.Register("platon-test", func() { if err := app.Run(os.Args); err != nil { fmt.Fprintln(os.Stderr, err) @@ -60,7 +60,7 @@ func TestMain(m *testing.M) { os.Exit(m.Run()) } -// spawns platon with the given command line args. If the args don't set --datadir, the +// spawns alaya with the given command line args. If the args don't set --datadir, the // child g gets a temporary data directory. func runPlatON(t *testing.T, args ...string) *testplaton { tt := &testplaton{} @@ -85,7 +85,7 @@ func runPlatON(t *testing.T, args ...string) *testplaton { }() } - // Boot "platon". This actually runs the test binary but the TestMain + // Boot "alaya". This actually runs the test binary but the TestMain // function will prevent any tests from running. tt.Run("platon-test", args...) diff --git a/cmd/platon/testdata/empty.js b/cmd/alaya/testdata/empty.js similarity index 100% rename from cmd/platon/testdata/empty.js rename to cmd/alaya/testdata/empty.js diff --git a/cmd/platon/testdata/guswallet.json b/cmd/alaya/testdata/guswallet.json similarity index 100% rename from cmd/platon/testdata/guswallet.json rename to cmd/alaya/testdata/guswallet.json diff --git a/cmd/platon/testdata/passwords.txt b/cmd/alaya/testdata/passwords.txt similarity index 100% rename from cmd/platon/testdata/passwords.txt rename to cmd/alaya/testdata/passwords.txt diff --git a/cmd/platon/testdata/wrong-passwords.txt b/cmd/alaya/testdata/wrong-passwords.txt similarity index 100% rename from cmd/platon/testdata/wrong-passwords.txt rename to cmd/alaya/testdata/wrong-passwords.txt diff --git a/cmd/platon/usage.go b/cmd/alaya/usage.go similarity index 97% rename from cmd/platon/usage.go rename to cmd/alaya/usage.go index e14c9d5990..32209b3843 100644 --- a/cmd/platon/usage.go +++ b/cmd/alaya/usage.go @@ -14,7 +14,7 @@ // You should have received a copy of the GNU General Public License // along with go-ethereum. If not, see . -// Contains the platon command usage template and generator. +// Contains the alaya command usage template and generator. package main @@ -24,15 +24,15 @@ import ( "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/internal/debug" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/internal/debug" ) // AppHelpTemplate is the test template for the default, global app help topic. var AppHelpTemplate = `NAME: {{.App.Name}} - {{.App.Usage}} - Copyright 2019 The PlatON-Go Authors + Copyright 2019 The Alaya-Go Authors USAGE: {{.App.HelpName}} [options]{{if .App.Commands}} command [command options]{{end}} {{if .App.ArgsUsage}}{{.App.ArgsUsage}}{{else}}[arguments...]{{end}} diff --git a/cmd/alayakey/changepassphrase.go b/cmd/alayakey/changepassphrase.go index 126ecce107..89c47d287a 100644 --- a/cmd/alayakey/changepassphrase.go +++ b/cmd/alayakey/changepassphrase.go @@ -7,8 +7,8 @@ import ( "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" ) var newPassphraseFlag = cli.StringFlag{ diff --git a/cmd/alayakey/genblskeypair.go b/cmd/alayakey/genblskeypair.go index 23ae2c7e5a..b634cd33d3 100644 --- a/cmd/alayakey/genblskeypair.go +++ b/cmd/alayakey/genblskeypair.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package main @@ -20,7 +20,7 @@ import ( "encoding/hex" "fmt" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" "gopkg.in/urfave/cli.v1" ) diff --git a/cmd/alayakey/generate.go b/cmd/alayakey/generate.go index 4fbea32527..bd32c3415f 100644 --- a/cmd/alayakey/generate.go +++ b/cmd/alayakey/generate.go @@ -23,14 +23,14 @@ import ( "os" "path/filepath" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" "github.com/pborman/uuid" "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) type outputGenerate struct { diff --git a/cmd/alayakey/genkeypair.go b/cmd/alayakey/genkeypair.go index a097126136..bfe5bbc1d2 100644 --- a/cmd/alayakey/genkeypair.go +++ b/cmd/alayakey/genkeypair.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package main @@ -23,8 +23,8 @@ import ( "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) type outputGenkeypair struct { diff --git a/cmd/alayakey/hex_to_bech32.go b/cmd/alayakey/hex_to_bech32.go index d3e25765c2..1a307c0452 100644 --- a/cmd/alayakey/hex_to_bech32.go +++ b/cmd/alayakey/hex_to_bech32.go @@ -7,10 +7,10 @@ import ( "github.com/btcsuite/btcutil/bech32" - "github.com/PlatONnetwork/PlatON-Go/common/bech32util" + "github.com/AlayaNetwork/Alaya-Go/common/bech32util" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/common" "gopkg.in/urfave/cli.v1" ) diff --git a/cmd/alayakey/inspect.go b/cmd/alayakey/inspect.go index b3bc9190d3..e204808ae9 100644 --- a/cmd/alayakey/inspect.go +++ b/cmd/alayakey/inspect.go @@ -21,13 +21,13 @@ import ( "fmt" "io/ioutil" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) type outputInspect struct { diff --git a/cmd/alayakey/main.go b/cmd/alayakey/main.go index 883b0e79c6..5d846fe205 100644 --- a/cmd/alayakey/main.go +++ b/cmd/alayakey/main.go @@ -20,7 +20,7 @@ import ( "fmt" "os" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" "gopkg.in/urfave/cli.v1" ) @@ -34,7 +34,7 @@ var gitCommit = "" var app *cli.App func init() { - app = utils.NewApp(gitCommit, "an PlatON-Go key manager") + app = utils.NewApp(gitCommit, "an Alaya-Go key manager") app.Commands = []cli.Command{ commandGenerate, commandInspect, diff --git a/cmd/alayakey/message.go b/cmd/alayakey/message.go index b6eb24cb2a..8f7f513146 100644 --- a/cmd/alayakey/message.go +++ b/cmd/alayakey/message.go @@ -23,10 +23,10 @@ import ( "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) type outputSign struct { diff --git a/cmd/alayakey/run_test.go b/cmd/alayakey/run_test.go index 3737e7302f..7ac4e557b9 100644 --- a/cmd/alayakey/run_test.go +++ b/cmd/alayakey/run_test.go @@ -21,7 +21,7 @@ import ( "os" "testing" - "github.com/PlatONnetwork/PlatON-Go/internal/cmdtest" + "github.com/AlayaNetwork/Alaya-Go/internal/cmdtest" "github.com/docker/docker/pkg/reexec" ) diff --git a/cmd/alayakey/utils.go b/cmd/alayakey/utils.go index 9d4dcdd31f..741ab2c4ab 100644 --- a/cmd/alayakey/utils.go +++ b/cmd/alayakey/utils.go @@ -24,9 +24,9 @@ import ( "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/console" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/console" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) // promptPassphrase prompts the user for a passphrase. Set confirmation to true diff --git a/cmd/bootnode/main.go b/cmd/bootnode/main.go index 203d7b1312..80c2eefbda 100644 --- a/cmd/bootnode/main.go +++ b/cmd/bootnode/main.go @@ -24,13 +24,13 @@ import ( "net" "os" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/discv5" - "github.com/PlatONnetwork/PlatON-Go/p2p/nat" - "github.com/PlatONnetwork/PlatON-Go/p2p/netutil" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discv5" + "github.com/AlayaNetwork/Alaya-Go/p2p/nat" + "github.com/AlayaNetwork/Alaya-Go/p2p/netutil" ) func main() { diff --git a/cmd/clef/main.go b/cmd/clef/main.go index 9d268c4c55..36717d8c50 100644 --- a/cmd/clef/main.go +++ b/cmd/clef/main.go @@ -35,15 +35,15 @@ import ( "runtime" "strings" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/rpc" - "github.com/PlatONnetwork/PlatON-Go/signer/core" - "github.com/PlatONnetwork/PlatON-Go/signer/rules" - "github.com/PlatONnetwork/PlatON-Go/signer/storage" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/signer/core" + "github.com/AlayaNetwork/Alaya-Go/signer/rules" + "github.com/AlayaNetwork/Alaya-Go/signer/storage" "gopkg.in/urfave/cli.v1" ) @@ -170,7 +170,7 @@ remove any stored credential for that address (keyfile) func init() { app.Name = "Clef" - app.Usage = "Manage PlatON-Go account operations" + app.Usage = "Manage Alaya-Go account operations" app.Flags = []cli.Flag{ logLevelFlag, keystoreFlag, diff --git a/cmd/ctool/core/bytes_util.go b/cmd/ctool/core/bytes_util.go index 13ee49112f..62c2dc4663 100644 --- a/cmd/ctool/core/bytes_util.go +++ b/cmd/ctool/core/bytes_util.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core diff --git a/cmd/ctool/core/bytes_utils_test.go b/cmd/ctool/core/bytes_utils_test.go index 7f321e63f8..2c4ca13fa3 100644 --- a/cmd/ctool/core/bytes_utils_test.go +++ b/cmd/ctool/core/bytes_utils_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -22,7 +22,7 @@ import ( "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) func TestInt32ToBytes(t *testing.T) { diff --git a/cmd/ctool/core/contractcmd.go b/cmd/ctool/core/contractcmd.go index 5bd63e5246..793e5b3335 100644 --- a/cmd/ctool/core/contractcmd.go +++ b/cmd/ctool/core/contractcmd.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -22,8 +22,8 @@ import ( "io/ioutil" "time" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/rlp" "gopkg.in/urfave/cli.v1" ) diff --git a/cmd/ctool/core/flags.go b/cmd/ctool/core/flags.go index ad5bd5c095..b5a630fc7b 100644 --- a/cmd/ctool/core/flags.go +++ b/cmd/ctool/core/flags.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core diff --git a/cmd/ctool/core/http_util.go b/cmd/ctool/core/http_util.go index 6f998fdf12..8a78f6191e 100644 --- a/cmd/ctool/core/http_util.go +++ b/cmd/ctool/core/http_util.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core diff --git a/cmd/ctool/core/http_util_test.go b/cmd/ctool/core/http_util_test.go index 891ba6da8c..9b1690b130 100644 --- a/cmd/ctool/core/http_util_test.go +++ b/cmd/ctool/core/http_util_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -22,7 +22,7 @@ import ( func TestSend(t *testing.T) { - //platon, datadir := prepare(t) + //alaya, datadir := prepare(t) // //params := make([]TxParams, 1) //params[0] = TxParams{ @@ -38,5 +38,5 @@ func TestSend(t *testing.T) { //assert.Nil(t, err, fmt.Sprintf("failed to send, err: %v", err)) //assert.NotEqual(t, res, "", "the response is empty") // - //clean(platon, datadir) + //clean(alaya, datadir) } diff --git a/cmd/ctool/core/nodeUtil.go b/cmd/ctool/core/nodeUtil.go index c55e1718c0..ee556f435f 100644 --- a/cmd/ctool/core/nodeUtil.go +++ b/cmd/ctool/core/nodeUtil.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -29,7 +29,7 @@ import ( "github.com/docker/docker/pkg/reexec" - "github.com/PlatONnetwork/PlatON-Go/internal/cmdtest" + "github.com/AlayaNetwork/Alaya-Go/internal/cmdtest" "github.com/stretchr/testify/assert" ) diff --git a/cmd/ctool/core/transactioncmd.go b/cmd/ctool/core/transactioncmd.go index a34743cbca..4449eb5360 100644 --- a/cmd/ctool/core/transactioncmd.go +++ b/cmd/ctool/core/transactioncmd.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -26,10 +26,10 @@ import ( "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var ( diff --git a/cmd/ctool/core/transactioncmd_test.go b/cmd/ctool/core/transactioncmd_test.go index ca2bc1dc86..199144a2fe 100644 --- a/cmd/ctool/core/transactioncmd_test.go +++ b/cmd/ctool/core/transactioncmd_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -36,7 +36,7 @@ func TestGetNonce(t *testing.T) { func TestSendTransaction(t *testing.T) { - //platon, datadir := prepare(t) + //alaya, datadir := prepare(t) // //to := "0x3058552A64Ce86aFb57806d15Fd9612a8591b01d" //value := "100000000000000000000000000" @@ -52,13 +52,13 @@ func TestSendTransaction(t *testing.T) { // //assert.NotEqual(t, hash, "", fmt.Sprintf("the transaction hash is empty")) // - //clean(platon, datadir) + //clean(alaya, datadir) } //func TestSendRawTransaction(t *testing.T) { // -// platon, datadir := prepare(t) +// alaya, datadir := prepare(t) // // hash, err := SendRawTransaction(from, "0xD71DaAA3ce55F52a4D820460d09A801C5D487a16", "1000000", pkFilePath) // @@ -66,11 +66,11 @@ func TestSendTransaction(t *testing.T) { // // assert.NotEqual(t, hash, "", fmt.Sprintf("the transaction hash is empty")) // -// clean(platon, datadir) +// clean(alaya, datadir) //} //func TestGetTxReceipt(t *testing.T) { -// platon, datadir := prepare(t) +// alaya, datadir := prepare(t) // // to := "0x3058552A64Ce86aFb57806d15Fd9612a8591b01d" // value := "100000000000000000000000000" @@ -96,5 +96,5 @@ func TestSendTransaction(t *testing.T) { // // assert.NotEqual(t, r, "", fmt.Sprintf("the transaction hash is empty")) // -// clean(platon, datadir) +// clean(alaya, datadir) //} diff --git a/cmd/ctool/core/tx_stability.go b/cmd/ctool/core/tx_stability.go index 77f2579ed1..fe4b77ce55 100644 --- a/cmd/ctool/core/tx_stability.go +++ b/cmd/ctool/core/tx_stability.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -28,10 +28,10 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/secp256k1" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/secp256k1" "gopkg.in/urfave/cli.v1" ) diff --git a/cmd/ctool/core/tx_stability_test.go b/cmd/ctool/core/tx_stability_test.go index edf672f5ca..801443c782 100644 --- a/cmd/ctool/core/tx_stability_test.go +++ b/cmd/ctool/core/tx_stability_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core diff --git a/cmd/ctool/core/utils.go b/cmd/ctool/core/utils.go index c38283832f..3e319dd498 100644 --- a/cmd/ctool/core/utils.go +++ b/cmd/ctool/core/utils.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -24,8 +24,8 @@ import ( "path/filepath" "strings" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const ( diff --git a/cmd/ctool/core/utils_test.go b/cmd/ctool/core/utils_test.go index 0902dcc667..d86ba0aacc 100644 --- a/cmd/ctool/core/utils_test.go +++ b/cmd/ctool/core/utils_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -47,7 +47,7 @@ func TestParseAbiFromJson(t *testing.T) { func TestHttpPostTransfer(t *testing.T) { - //platon, datadir := prepare(t) + //alaya, datadir := prepare(t) // //param := JsonParam{ // Jsonrpc: "2.0", @@ -68,11 +68,11 @@ func TestHttpPostTransfer(t *testing.T) { //assert.Nil(t, e, fmt.Sprintf("test http post error: %v", e)) //assert.NotEqual(t, r, "", "the result is nil") //t.Log("the result ", r) - //clean(platon, datadir) + //clean(alaya, datadir) } func TestHttpPostDeploy(t *testing.T) { - //platon, datadir := prepare(t) + //alaya, datadir := prepare(t) // //deployParams := DeployParams{ // From: from, @@ -127,11 +127,11 @@ func TestHttpPostDeploy(t *testing.T) { // fmt.Printf("get contract receipt timeout...more than 100 second.\n") //} // - //clean(platon, datadir) + //clean(alaya, datadir) } func TestHttpCallContact(t *testing.T) { - //platon, datadir := prepare(t) + //alaya, datadir := prepare(t) // //param1 := uint(33) //b := new(bytes.Buffer) @@ -158,7 +158,7 @@ func TestHttpCallContact(t *testing.T) { //assert.Nil(t, e, fmt.Sprintf("test http post error: %v", e)) //assert.NotEqual(t, r, "", "the result is nil") //t.Log("the result ", r) - //clean(platon, datadir) + //clean(alaya, datadir) } diff --git a/cmd/ctool/main.go b/cmd/ctool/main.go index 36e13ccd75..621e2941aa 100644 --- a/cmd/ctool/main.go +++ b/cmd/ctool/main.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package main @@ -21,11 +21,11 @@ import ( "os" "sort" - "github.com/PlatONnetwork/PlatON-Go/cmd/ctool/core" + "github.com/AlayaNetwork/Alaya-Go/cmd/ctool/core" "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/cmd/ctool/ppos" + "github.com/AlayaNetwork/Alaya-Go/cmd/ctool/ppos" ) var ( diff --git a/cmd/ctool/ppos/common.go b/cmd/ctool/ppos/common.go index c8a544b9d3..9574d6badd 100644 --- a/cmd/ctool/ppos/common.go +++ b/cmd/ctool/ppos/common.go @@ -9,12 +9,12 @@ import ( "gopkg.in/urfave/cli.v1" - platon "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/ethclient" - "github.com/PlatONnetwork/PlatON-Go/rlp" + platon "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/ethclient" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) func CallPPosContract(client *ethclient.Client, funcType uint16, params ...interface{}) ([]byte, error) { diff --git a/cmd/ctool/ppos/gov.go b/cmd/ctool/ppos/gov.go index a33a3b830d..357ecd09f9 100644 --- a/cmd/ctool/ppos/gov.go +++ b/cmd/ctool/ppos/gov.go @@ -5,7 +5,7 @@ import ( "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) var ( diff --git a/cmd/ctool/ppos/restricting.go b/cmd/ctool/ppos/restricting.go index a02d262c1b..4767af7f36 100644 --- a/cmd/ctool/ppos/restricting.go +++ b/cmd/ctool/ppos/restricting.go @@ -5,7 +5,7 @@ import ( "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) var ( diff --git a/cmd/ctool/ppos/reward.go b/cmd/ctool/ppos/reward.go index 8a85533c54..4756fa85c3 100644 --- a/cmd/ctool/ppos/reward.go +++ b/cmd/ctool/ppos/reward.go @@ -3,7 +3,7 @@ package ppos import ( "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) var ( diff --git a/cmd/ctool/ppos/slashing.go b/cmd/ctool/ppos/slashing.go index 99e1283121..d9f4b55c53 100644 --- a/cmd/ctool/ppos/slashing.go +++ b/cmd/ctool/ppos/slashing.go @@ -5,7 +5,7 @@ import ( "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) var ( diff --git a/cmd/ctool/ppos/staking.go b/cmd/ctool/ppos/staking.go index ef8e40cbba..0d6fb6603f 100644 --- a/cmd/ctool/ppos/staking.go +++ b/cmd/ctool/ppos/staking.go @@ -3,11 +3,11 @@ package ppos import ( "errors" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) var ( diff --git a/cmd/faucet/faucet.go b/cmd/faucet/faucet.go index 2eeb3e28b2..17e22da63e 100644 --- a/cmd/faucet/faucet.go +++ b/cmd/faucet/faucet.go @@ -41,23 +41,23 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/ethclient" - "github.com/PlatONnetwork/PlatON-Go/ethstats" - "github.com/PlatONnetwork/PlatON-Go/les" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/discv5" - "github.com/PlatONnetwork/PlatON-Go/p2p/nat" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/ethclient" + "github.com/AlayaNetwork/Alaya-Go/ethstats" + "github.com/AlayaNetwork/Alaya-Go/les" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discv5" + "github.com/AlayaNetwork/Alaya-Go/p2p/nat" + "github.com/AlayaNetwork/Alaya-Go/params" "golang.org/x/net/websocket" ) @@ -66,7 +66,7 @@ var ( apiPortFlag = flag.Int("apiport", 8080, "Listener port for the HTTP API connection") ethPortFlag = flag.Int("ethport", 16789, "Listener port for the devp2p connection") bootFlag = flag.String("bootnodes", "", "Comma separated bootnode enode URLs to seed with") - netFlag = flag.Uint64("network", 0, "Network ID to use for the PlatON-Go protocol") + netFlag = flag.Uint64("network", 0, "Network ID to use for the Alaya-Go protocol") statsFlag = flag.String("ethstats", "", "Ethstats network monitoring auth string") netnameFlag = flag.String("faucet.name", "", "Network name to assign to the faucet") @@ -81,7 +81,7 @@ var ( captchaSecret = flag.String("captcha.secret", "", "Recaptcha secret key to authenticate server side") noauthFlag = flag.Bool("noauth", false, "Enables funding requests without authentication") - logFlag = flag.Int("loglevel", 3, "Log level to use for PlatON-Go and the faucet") + logFlag = flag.Int("loglevel", 3, "Log level to use for Alaya-Go and the faucet") ) var ( @@ -215,7 +215,7 @@ type faucet struct { func newFaucet(genesis *core.Genesis, port int, enodes []*discv5.Node, network uint64, stats string, ks *keystore.KeyStore, index []byte) (*faucet, error) { // Assemble the raw devp2p protocol stack stack, err := node.New(&node.Config{ - Name: "platon", + Name: "alaya", Version: params.VersionWithMeta, DataDir: filepath.Join(os.Getenv("HOME"), ".faucet"), P2P: p2p.Config{ @@ -688,7 +688,7 @@ func authTwitter(url string) (string, string, common.Address, error) { } address := common.HexToAddress(string(regexp.MustCompile("0x[0-9a-fA-F]{40}").Find(body))) if address == (common.Address{}) { - return "", "", common.Address{}, errors.New("No PlatON-Go address found to fund") + return "", "", common.Address{}, errors.New("No Alaya-Go address found to fund") } var avatar string if parts = regexp.MustCompile("src=\"([^\"]+twimg.com/profile_images[^\"]+)\"").FindStringSubmatch(string(body)); len(parts) == 2 { @@ -722,7 +722,7 @@ func authGooglePlus(url string) (string, string, common.Address, error) { } address := common.HexToAddress(string(regexp.MustCompile("0x[0-9a-fA-F]{40}").Find(body))) if address == (common.Address{}) { - return "", "", common.Address{}, errors.New("No PlatON-Go address found to fund") + return "", "", common.Address{}, errors.New("No Alaya-Go address found to fund") } var avatar string if parts = regexp.MustCompile("src=\"([^\"]+googleusercontent.com[^\"]+photo.jpg)\"").FindStringSubmatch(string(body)); len(parts) == 2 { @@ -756,7 +756,7 @@ func authFacebook(url string) (string, string, common.Address, error) { } address := common.HexToAddress(string(regexp.MustCompile("0x[0-9a-fA-F]{40}").Find(body))) if address == (common.Address{}) { - return "", "", common.Address{}, errors.New("No PlatON-Go address found to fund") + return "", "", common.Address{}, errors.New("No Alaya-Go address found to fund") } var avatar string if parts = regexp.MustCompile("src=\"([^\"]+fbcdn.net[^\"]+)\"").FindStringSubmatch(string(body)); len(parts) == 2 { @@ -771,7 +771,7 @@ func authFacebook(url string) (string, string, common.Address, error) { func authNoAuth(url string) (string, string, common.Address, error) { address := common.HexToAddress(regexp.MustCompile("0x[0-9a-fA-F]{40}").FindString(url)) if address == (common.Address{}) { - return "", "", common.Address{}, errors.New("No PlatON-Go address found to fund") + return "", "", common.Address{}, errors.New("No Alaya-Go address found to fund") } return address.Hex() + "@noauth", "", address, nil } diff --git a/cmd/p2psim/main.go b/cmd/p2psim/main.go index fda53f4f5d..d7131e3fc1 100644 --- a/cmd/p2psim/main.go +++ b/cmd/p2psim/main.go @@ -45,12 +45,12 @@ import ( "strings" "text/tabwriter" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations/adapters" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations/adapters" + "github.com/AlayaNetwork/Alaya-Go/rpc" "gopkg.in/urfave/cli.v1" ) diff --git a/cmd/ppos_tool/main.go b/cmd/ppos_tool/main.go index 3ddc80b084..8cae0ea4b6 100644 --- a/cmd/ppos_tool/main.go +++ b/cmd/ppos_tool/main.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package main @@ -27,14 +27,14 @@ import ( "strconv" "strings" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/restricting" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/restricting" ) var ( diff --git a/cmd/rlpdump/main.go b/cmd/rlpdump/main.go index 95d7904122..5ee08d1d92 100644 --- a/cmd/rlpdump/main.go +++ b/cmd/rlpdump/main.go @@ -27,21 +27,21 @@ import ( "strconv" "strings" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/x/restricting" + "github.com/AlayaNetwork/Alaya-Go/x/restricting" - "github.com/PlatONnetwork/PlatON-Go/x/slashing" + "github.com/AlayaNetwork/Alaya-Go/x/slashing" - "github.com/PlatONnetwork/PlatON-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var ( - errCode = flag.String("errCode", "", "dump given platon ppos tx receipt errCode description") - inner = flag.String("inner", "", "dump given platon inner contract data with `platon.Call`") + errCode = flag.String("errCode", "", "dump given alaya ppos tx receipt errCode description") + inner = flag.String("inner", "", "dump given alaya inner contract data with `alaya.Call`") hexMode = flag.String("hex", "", "dump given hex data") noASCII = flag.Bool("noascii", false, "don't print ASCII strings readably") single = flag.Bool("single", false, "print only the first element, discard the rest") @@ -60,7 +60,7 @@ If the filename is omitted, data is read from stdin.`) func main() { flag.Parse() - // parse platon ppos tx receipt errCode + // parse alaya ppos tx receipt errCode if *errCode != "" { data, err := hex.DecodeString(strings.TrimPrefix(*errCode, "0x")) @@ -203,7 +203,7 @@ func main() { return } - // parse platon inner contract data + // parse alaya inner contract data if *inner != "" { rlpByte, err := hexutil.Decode(*inner) if nil != err { diff --git a/cmd/utils/cmd.go b/cmd/utils/cmd.go index f9bb7811d6..8f5f3c2c6d 100644 --- a/cmd/utils/cmd.go +++ b/cmd/utils/cmd.go @@ -27,16 +27,16 @@ import ( "strings" "syscall" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/internal/debug" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/internal/debug" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const ( diff --git a/cmd/utils/customflags.go b/cmd/utils/customflags.go index dba2f693b4..b94ec8c583 100644 --- a/cmd/utils/customflags.go +++ b/cmd/utils/customflags.go @@ -27,7 +27,7 @@ import ( "path" "strings" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common/math" "gopkg.in/urfave/cli.v1" ) diff --git a/cmd/utils/flags.go b/cmd/utils/flags.go index 1538a63103..c82bec6427 100644 --- a/cmd/utils/flags.go +++ b/cmd/utils/flags.go @@ -27,35 +27,35 @@ import ( "strings" "time" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/fdlimit" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/eth/gasprice" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/ethstats" - "github.com/PlatONnetwork/PlatON-Go/les" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/metrics" - "github.com/PlatONnetwork/PlatON-Go/metrics/influxdb" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/nat" - "github.com/PlatONnetwork/PlatON-Go/p2p/netutil" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/fdlimit" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/eth/gasprice" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/ethstats" + "github.com/AlayaNetwork/Alaya-Go/les" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics/influxdb" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/nat" + "github.com/AlayaNetwork/Alaya-Go/p2p/netutil" + "github.com/AlayaNetwork/Alaya-Go/params" ) var ( @@ -494,7 +494,7 @@ var ( MetricsInfluxDBDatabaseFlag = cli.StringFlag{ Name: "metrics.influxdb.database", Usage: "InfluxDB database name to push reported metrics to", - Value: "platon", + Value: "alaya", } MetricsInfluxDBUsernameFlag = cli.StringFlag{ Name: "metrics.influxdb.username", @@ -842,7 +842,7 @@ func MakeAddress(ks *keystore.KeyStore, account string) (accounts.Account, error log.Warn("-------------------------------------------------------------------") log.Warn("Referring to accounts by order in the keystore folder is dangerous!") log.Warn("This functionality is deprecated and will be removed in the future!") - log.Warn("Please use explicit addresses! (can search via `platon account list`)") + log.Warn("Please use explicit addresses! (can search via `alaya account list`)") log.Warn("-------------------------------------------------------------------") accs := ks.Accounts() @@ -1282,7 +1282,7 @@ func RegisterEthService(stack *node.Node, cfg *eth.Config) { }) } if err != nil { - Fatalf("Failed to register the PlatON-Go service: %v", err) + Fatalf("Failed to register the Alaya-Go service: %v", err) } } @@ -1308,7 +1308,7 @@ func RegisterEthStatsService(stack *node.Node, url string) { return ethstats.New(url, ethServ, lesServ) }); err != nil { - Fatalf("Failed to register the PlatON-Go Stats service: %v", err) + Fatalf("Failed to register the Alaya-Go Stats service: %v", err) } } @@ -1326,7 +1326,7 @@ func SetupMetrics(ctx *cli.Context) { if enableExport { log.Info("Enabling metrics export to InfluxDB") - go influxdb.InfluxDBWithTags(metrics.DefaultRegistry, 10*time.Second, endpoint, database, username, password, "platon.", map[string]string{ + go influxdb.InfluxDBWithTags(metrics.DefaultRegistry, 10*time.Second, endpoint, database, username, password, "alaya.", map[string]string{ "host": hosttag, }) } @@ -1467,11 +1467,11 @@ func MakeConsolePreloads(ctx *cli.Context) []string { // This is a temporary function used for migrating old command/flags to the // new format. // -// e.g. platon account new --keystore /tmp/mykeystore --lightkdf +// e.g. alaya account new --keystore /tmp/mykeystore --lightkdf // // is equivalent after calling this method with: // -// platon --keystore /tmp/mykeystore --lightkdf account new +// alaya --keystore /tmp/mykeystore --lightkdf account new // // This allows the use of the existing configuration functionality. // When all flags are migrated this function can be removed and the existing diff --git a/common/address.go b/common/address.go index c0cd5aad1b..9f1f91ae82 100644 --- a/common/address.go +++ b/common/address.go @@ -11,10 +11,10 @@ import ( "github.com/btcsuite/btcutil/bech32" - "github.com/PlatONnetwork/PlatON-Go/common/bech32util" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common/bech32util" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/log" ) const ( diff --git a/common/args_const.go b/common/args_const.go index 694ab425cd..2fe8e0748c 100644 --- a/common/args_const.go +++ b/common/args_const.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package common diff --git a/common/bitutil/compress_test.go b/common/bitutil/compress_test.go index 3e72729b82..9ab33c0ef3 100644 --- a/common/bitutil/compress_test.go +++ b/common/bitutil/compress_test.go @@ -21,7 +21,7 @@ import ( "math/rand" "testing" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" ) // Tests that data bitset encoding and decoding works and is bijective. diff --git a/common/byteutil/byteutil.go b/common/byteutil/byteutil.go index b4307c32f0..d066783e07 100644 --- a/common/byteutil/byteutil.go +++ b/common/byteutil/byteutil.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package byteutil @@ -20,12 +20,12 @@ import ( "encoding/hex" "math/big" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/restricting" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/restricting" ) var Bytes2X_CMD = map[string]interface{}{ diff --git a/common/byteutil/byteutil_test.go b/common/byteutil/byteutil_test.go index 32a232fb19..fbf14a6e07 100644 --- a/common/byteutil/byteutil_test.go +++ b/common/byteutil/byteutil_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package byteutil @@ -20,17 +20,17 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/x/restricting" + "github.com/AlayaNetwork/Alaya-Go/x/restricting" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) func TestBytesToString(t *testing.T) { diff --git a/common/consensus/evidence.go b/common/consensus/evidence.go index 4ab09d3185..3fd4115d46 100644 --- a/common/consensus/evidence.go +++ b/common/consensus/evidence.go @@ -1,24 +1,24 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package consensus import ( - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) type EvidenceType uint8 diff --git a/common/errors.go b/common/errors.go index 919882c833..bcf22faea7 100644 --- a/common/errors.go +++ b/common/errors.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package common diff --git a/common/flow_metrics.go b/common/flow_metrics.go index 44c811d8be..6f8137b776 100644 --- a/common/flow_metrics.go +++ b/common/flow_metrics.go @@ -1,7 +1,7 @@ package common import ( - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics" ) var ( diff --git a/common/hexutil/json_example_test.go b/common/hexutil/json_example_test.go index 5451ccf44a..18ca2508be 100644 --- a/common/hexutil/json_example_test.go +++ b/common/hexutil/json_example_test.go @@ -20,7 +20,7 @@ import ( "encoding/json" "fmt" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" ) type MyType [5]byte diff --git a/common/math/big_test.go b/common/math/big_test.go index 140e3c5ae6..3e05ca0a5e 100644 --- a/common/math/big_test.go +++ b/common/math/big_test.go @@ -22,7 +22,7 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) func TestHexOrDecimal256(t *testing.T) { diff --git a/common/math/binomial_distribution.go b/common/math/binomial_distribution.go index 688d6818ee..17ed2a71b1 100644 --- a/common/math/binomial_distribution.go +++ b/common/math/binomial_distribution.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package math diff --git a/common/math/binomial_distribution_test.go b/common/math/binomial_distribution_test.go index 94348e3dd1..01f6cc5ab2 100644 --- a/common/math/binomial_distribution_test.go +++ b/common/math/binomial_distribution_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package math diff --git a/common/mock/chain.go b/common/mock/chain.go index 98243d7993..a3c4ccaf2c 100644 --- a/common/mock/chain.go +++ b/common/mock/chain.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package mock @@ -23,14 +23,14 @@ import ( "reflect" "time" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) const ( diff --git a/common/mock/journal.go b/common/mock/journal.go index d8e758d498..bd67c9f398 100644 --- a/common/mock/journal.go +++ b/common/mock/journal.go @@ -1,28 +1,28 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package mock import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) type journalEntry interface { diff --git a/common/prque/prque_test.go b/common/prque/prque_test.go index 67ef4e91f4..62e09151a4 100644 --- a/common/prque/prque_test.go +++ b/common/prque/prque_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package prque diff --git a/common/rlp_utils.go b/common/rlp_utils.go index b12ec21db6..89ef550163 100644 --- a/common/rlp_utils.go +++ b/common/rlp_utils.go @@ -1,26 +1,26 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package common import ( "bytes" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) func MustRlpEncode(val interface{}) []byte { diff --git a/common/timeUtil.go b/common/timeUtil.go index 0ac16e9720..dc835b3d1c 100644 --- a/common/timeUtil.go +++ b/common/timeUtil.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package common diff --git a/common/types.go b/common/types.go index 2d9daa04e8..fef95af8f1 100644 --- a/common/types.go +++ b/common/types.go @@ -25,7 +25,7 @@ import ( "reflect" "strings" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" ) // Lengths of hashes and addresses in bytes. diff --git a/common/vm/inner_contract.go b/common/vm/inner_contract.go index 0d354a25fb..3f7cfbc0a9 100644 --- a/common/vm/inner_contract.go +++ b/common/vm/inner_contract.go @@ -1,22 +1,22 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm -import "github.com/PlatONnetwork/PlatON-Go/common" +import "github.com/AlayaNetwork/Alaya-Go/common" // the inner contract addr table var ( diff --git a/consensus/bft_mock.go b/consensus/bft_mock.go index 4f2b0e1de5..7d58de65a6 100644 --- a/consensus/bft_mock.go +++ b/consensus/bft_mock.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package consensus @@ -22,20 +22,20 @@ import ( "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/event" + "github.com/AlayaNetwork/Alaya-Go/event" - "github.com/PlatONnetwork/PlatON-Go/common/consensus" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common/consensus" + "github.com/AlayaNetwork/Alaya-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rpc" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" ) func NewFaker() *BftMock { diff --git a/consensus/cbft/api.go b/consensus/cbft/api.go index 28eb3e398a..f459635f09 100644 --- a/consensus/cbft/api.go +++ b/consensus/cbft/api.go @@ -1,26 +1,26 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft import ( "encoding/json" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/state" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/state" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" ) type Status struct { diff --git a/consensus/cbft/cbft.go b/consensus/cbft/cbft.go index 636f689a15..8ed338624f 100644 --- a/consensus/cbft/cbft.go +++ b/consensus/cbft/cbft.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -27,40 +27,40 @@ import ( mapset "github.com/deckarep/golang-set" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" "github.com/pkg/errors" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" "reflect" "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/evidence" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/executor" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/fetcher" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/network" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/rules" - cstate "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/state" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/validator" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/wal" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/evidence" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/executor" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/fetcher" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/network" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/rules" + cstate "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/state" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/validator" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/wal" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) const ( diff --git a/consensus/cbft/cbft_byzantine_test.go b/consensus/cbft/cbft_byzantine_test.go index 681502382c..d77473dbc6 100644 --- a/consensus/cbft/cbft_byzantine_test.go +++ b/consensus/cbft/cbft_byzantine_test.go @@ -1,24 +1,24 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" "io/ioutil" "math/big" "os" @@ -26,27 +26,27 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/executor" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/executor" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/evidence" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/evidence" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/rules" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/rules" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" "github.com/stretchr/testify/assert" ) diff --git a/consensus/cbft/cbft_common_util.go b/consensus/cbft/cbft_common_util.go index b6b693209b..68f728a99a 100644 --- a/consensus/cbft/cbft_common_util.go +++ b/consensus/cbft/cbft_common_util.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -21,30 +21,30 @@ import ( "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" - cvm "github.com/PlatONnetwork/PlatON-Go/common/vm" + cvm "github.com/AlayaNetwork/Alaya-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/network" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/network" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/consensus" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/validator" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/consensus" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/validator" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" ) var ( diff --git a/consensus/cbft/cbft_test.go b/consensus/cbft/cbft_test.go index 4e0c10b6ea..6b738caa9c 100644 --- a/consensus/cbft/cbft_test.go +++ b/consensus/cbft/cbft_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -24,26 +24,26 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/state" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/validator" - "github.com/PlatONnetwork/PlatON-Go/core" - cstate "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - cvm "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/state" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/validator" + "github.com/AlayaNetwork/Alaya-Go/core" + cstate "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + cvm "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var ( diff --git a/consensus/cbft/cbft_test_util.go b/consensus/cbft/cbft_test_util.go index 8df3c5a54a..fdad0f3cba 100644 --- a/consensus/cbft/cbft_test_util.go +++ b/consensus/cbft/cbft_test_util.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -20,14 +20,14 @@ import ( "io/ioutil" "os" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/network" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/network" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/params" ) const ( diff --git a/consensus/cbft/consensus_process.go b/consensus/cbft/consensus_process.go index 2004b59d80..af26ab1cfb 100644 --- a/consensus/cbft/consensus_process.go +++ b/consensus/cbft/consensus_process.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -22,21 +22,21 @@ import ( "github.com/pkg/errors" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/executor" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/executor" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/state" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/state" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // OnPrepareBlock performs security rule verification,store in blockTree, diff --git a/consensus/cbft/consensus_process_test.go b/consensus/cbft/consensus_process_test.go index 9cd9e53b29..8af2b5d4a3 100644 --- a/consensus/cbft/consensus_process_test.go +++ b/consensus/cbft/consensus_process_test.go @@ -1,33 +1,33 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/validator" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/validator" "io/ioutil" "os" "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/wal" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/wal" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/core/types" "github.com/stretchr/testify/assert" ) diff --git a/consensus/cbft/evidence/duplicateEvidence.go b/consensus/cbft/evidence/duplicateEvidence.go index 0b56bf28d4..99e3ee1c04 100644 --- a/consensus/cbft/evidence/duplicateEvidence.go +++ b/consensus/cbft/evidence/duplicateEvidence.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package evidence @@ -20,13 +20,13 @@ import ( "bytes" "fmt" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/common/consensus" + "github.com/AlayaNetwork/Alaya-Go/common/consensus" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const ( diff --git a/consensus/cbft/evidence/evidence.go b/consensus/cbft/evidence/evidence.go index 9c31d1215d..2c066652c5 100644 --- a/consensus/cbft/evidence/evidence.go +++ b/consensus/cbft/evidence/evidence.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package evidence diff --git a/consensus/cbft/evidence/evidencePool.go b/consensus/cbft/evidence/evidencePool.go index 0f837dbc02..f75388e47a 100644 --- a/consensus/cbft/evidence/evidencePool.go +++ b/consensus/cbft/evidence/evidencePool.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . // Package evidence implements recording duplicate blocks and votes for cbft consensus. package evidence @@ -23,13 +23,13 @@ import ( "encoding/json" "fmt" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/common/consensus" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common/consensus" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/syndtr/goleveldb/leveldb" "github.com/syndtr/goleveldb/leveldb/opt" ) diff --git a/consensus/cbft/evidence/evidence_common_test.go b/consensus/cbft/evidence/evidence_common_test.go index 594bd28fce..070e5e7ee6 100644 --- a/consensus/cbft/evidence/evidence_common_test.go +++ b/consensus/cbft/evidence/evidence_common_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package evidence @@ -22,18 +22,18 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" ) func newBlock(blockNumber int64) *types.Block { diff --git a/consensus/cbft/evidence/evidence_test.go b/consensus/cbft/evidence/evidence_test.go index ad841beb4f..fb14966f46 100644 --- a/consensus/cbft/evidence/evidence_test.go +++ b/consensus/cbft/evidence/evidence_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package evidence @@ -24,14 +24,14 @@ import ( "sort" "testing" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/common/consensus" + "github.com/AlayaNetwork/Alaya-Go/common/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" "github.com/stretchr/testify/assert" ) diff --git a/consensus/cbft/evidence/message.go b/consensus/cbft/evidence/message.go index 9ab15326ba..b123c4faf1 100644 --- a/consensus/cbft/evidence/message.go +++ b/consensus/cbft/evidence/message.go @@ -1,33 +1,33 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package evidence import ( "errors" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) // Proposed block carrier. diff --git a/consensus/cbft/evidence_test.go b/consensus/cbft/evidence_test.go index 344fe9331f..3086f18694 100644 --- a/consensus/cbft/evidence_test.go +++ b/consensus/cbft/evidence_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -23,12 +23,12 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/evidence" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/evidence" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/core/types" "github.com/stretchr/testify/suite" ) diff --git a/consensus/cbft/executor/executor.go b/consensus/cbft/executor/executor.go index 26da44e94a..ca4fa93f22 100644 --- a/consensus/cbft/executor/executor.go +++ b/consensus/cbft/executor/executor.go @@ -1,26 +1,26 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package executor import ( "errors" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // Executor defines an execution function. diff --git a/consensus/cbft/executor/executor_test.go b/consensus/cbft/executor/executor_test.go index 66dbd27d5c..a14e8fdbf8 100644 --- a/consensus/cbft/executor/executor_test.go +++ b/consensus/cbft/executor/executor_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package executor @@ -23,11 +23,11 @@ import ( "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) func NewBlock(parent common.Hash, number uint64) *types.Block { diff --git a/consensus/cbft/fetcher/fetcher.go b/consensus/cbft/fetcher/fetcher.go index 65dc194a58..e9611f1b11 100644 --- a/consensus/cbft/fetcher/fetcher.go +++ b/consensus/cbft/fetcher/fetcher.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package fetcher @@ -20,7 +20,7 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" ) var ( diff --git a/consensus/cbft/fetcher/fetcher_test.go b/consensus/cbft/fetcher/fetcher_test.go index dd748c4a47..56b350420c 100644 --- a/consensus/cbft/fetcher/fetcher_test.go +++ b/consensus/cbft/fetcher/fetcher_test.go @@ -1,24 +1,24 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package fetcher import ( - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" "github.com/stretchr/testify/assert" "sync" "testing" diff --git a/consensus/cbft/fetcher/limit_fetcher.go b/consensus/cbft/fetcher/limit_fetcher.go index 57987ce3dc..653702a99c 100644 --- a/consensus/cbft/fetcher/limit_fetcher.go +++ b/consensus/cbft/fetcher/limit_fetcher.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package fetcher @@ -20,7 +20,7 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) var ( diff --git a/consensus/cbft/fetcher/limit_fetcher_test.go b/consensus/cbft/fetcher/limit_fetcher_test.go index c379ffdeeb..57669a503f 100644 --- a/consensus/cbft/fetcher/limit_fetcher_test.go +++ b/consensus/cbft/fetcher/limit_fetcher_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package fetcher @@ -20,8 +20,8 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" "github.com/stretchr/testify/assert" ) diff --git a/consensus/cbft/metrics.go b/consensus/cbft/metrics.go index 27d1da20bf..1a6da1683f 100644 --- a/consensus/cbft/metrics.go +++ b/consensus/cbft/metrics.go @@ -1,23 +1,23 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft import ( - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics" ) var ( diff --git a/consensus/cbft/network/handler.go b/consensus/cbft/network/handler.go index 5a1f5eac50..585b052809 100644 --- a/consensus/cbft/network/handler.go +++ b/consensus/cbft/network/handler.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package network @@ -26,13 +26,13 @@ import ( "github.com/hashicorp/golang-lru" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) const ( diff --git a/consensus/cbft/network/handler_test.go b/consensus/cbft/network/handler_test.go index 9cbf23778f..e70605ab73 100644 --- a/consensus/cbft/network/handler_test.go +++ b/consensus/cbft/network/handler_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package network @@ -27,19 +27,19 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) // fakeCbft is a fake cbft for testing.It implements all diff --git a/consensus/cbft/network/helper.go b/consensus/cbft/network/helper.go index fb51802279..0bdceddd6e 100644 --- a/consensus/cbft/network/helper.go +++ b/consensus/cbft/network/helper.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package network @@ -20,9 +20,9 @@ import ( "crypto/rand" "fmt" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) // ============================ simulation network ============================ diff --git a/consensus/cbft/network/helper_test.go b/consensus/cbft/network/helper_test.go index cc2c9e5195..d8d0b9e8f9 100644 --- a/consensus/cbft/network/helper_test.go +++ b/consensus/cbft/network/helper_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package network @@ -24,16 +24,16 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - types2 "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + types2 "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p" ) var loglevel = flag.Int("loglevel", 4, "verbosity of logs") diff --git a/consensus/cbft/network/interface.go b/consensus/cbft/network/interface.go index 7b37cddb83..ece7a1beee 100644 --- a/consensus/cbft/network/interface.go +++ b/consensus/cbft/network/interface.go @@ -1,26 +1,26 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package network import ( - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) // Cbft defines the network layer to use the relevant interface diff --git a/consensus/cbft/network/metrics.go b/consensus/cbft/network/metrics.go index 64baf37884..9435bca483 100644 --- a/consensus/cbft/network/metrics.go +++ b/consensus/cbft/network/metrics.go @@ -1,26 +1,26 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package network import ( - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/metrics" - "github.com/PlatONnetwork/PlatON-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/p2p" ) var ( diff --git a/consensus/cbft/network/metrics_test.go b/consensus/cbft/network/metrics_test.go index 579f26749e..3b5618ee5a 100644 --- a/consensus/cbft/network/metrics_test.go +++ b/consensus/cbft/network/metrics_test.go @@ -1,29 +1,29 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package network import ( "testing" - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p" "github.com/stretchr/testify/assert" ) diff --git a/consensus/cbft/network/peer.go b/consensus/cbft/network/peer.go index e0b18b91e3..ba5b1d3506 100644 --- a/consensus/cbft/network/peer.go +++ b/consensus/cbft/network/peer.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package network @@ -27,14 +27,14 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" mapset "github.com/deckarep/golang-set" ) diff --git a/consensus/cbft/network/peer_test.go b/consensus/cbft/network/peer_test.go index 3c693a0454..8b33421ca1 100644 --- a/consensus/cbft/network/peer_test.go +++ b/consensus/cbft/network/peer_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package network @@ -25,16 +25,16 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) func Test_NewPeer(t *testing.T) { diff --git a/consensus/cbft/network/router.go b/consensus/cbft/network/router.go index 1717f24dbc..790a5da02a 100644 --- a/consensus/cbft/network/router.go +++ b/consensus/cbft/network/router.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . // Package network implements a concrete consensus engines. package network @@ -24,13 +24,13 @@ import ( "reflect" "sync" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/log" ) // DefaultFanOut - The fanout value of the gossip protocol, used to indicate diff --git a/consensus/cbft/network/router_test.go b/consensus/cbft/network/router_test.go index fd03e43ddd..32f854b73d 100644 --- a/consensus/cbft/network/router_test.go +++ b/consensus/cbft/network/router_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package network @@ -25,15 +25,15 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" "github.com/stretchr/testify/assert" ) diff --git a/consensus/cbft/network/test_func.go b/consensus/cbft/network/test_func.go index 494c365e62..c58355599e 100644 --- a/consensus/cbft/network/test_func.go +++ b/consensus/cbft/network/test_func.go @@ -1,23 +1,23 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package network import ( - ctpyes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" + ctpyes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" ) // SetSendQueueHook diff --git a/consensus/cbft/prepare_block_test.go b/consensus/cbft/prepare_block_test.go index f47813c71e..7f33ec2d2f 100644 --- a/consensus/cbft/prepare_block_test.go +++ b/consensus/cbft/prepare_block_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -23,15 +23,15 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/evidence" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/evidence" "github.com/stretchr/testify/suite" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) func TestPrepareBlockSuite(t *testing.T) { diff --git a/consensus/cbft/prepare_vote_test.go b/consensus/cbft/prepare_vote_test.go index 05e76acc6b..a687f17e7f 100644 --- a/consensus/cbft/prepare_vote_test.go +++ b/consensus/cbft/prepare_vote_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -22,13 +22,13 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/evidence" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/evidence" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" "github.com/stretchr/testify/suite" ) diff --git a/consensus/cbft/protocols/protocol.go b/consensus/cbft/protocols/protocol.go index bf9ece4011..1b37f3d376 100644 --- a/consensus/cbft/protocols/protocol.go +++ b/consensus/cbft/protocols/protocol.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package protocols @@ -22,12 +22,12 @@ import ( "reflect" "sync/atomic" - "github.com/PlatONnetwork/PlatON-Go/common" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // Maximum cap on the size of a cbft protocol message diff --git a/consensus/cbft/protocols/wal_protocol.go b/consensus/cbft/protocols/wal_protocol.go index 8e78aa1018..e7f915665c 100644 --- a/consensus/cbft/protocols/wal_protocol.go +++ b/consensus/cbft/protocols/wal_protocol.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package protocols @@ -20,9 +20,9 @@ import ( "fmt" "reflect" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" ) const ( diff --git a/consensus/cbft/rules/safety_rules.go b/consensus/cbft/rules/safety_rules.go index 05557db498..f656785e6d 100644 --- a/consensus/cbft/rules/safety_rules.go +++ b/consensus/cbft/rules/safety_rules.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package rules @@ -20,13 +20,13 @@ import ( "fmt" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/validator" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/validator" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/state" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/state" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) const ( diff --git a/consensus/cbft/rules/safety_rules_test.go b/consensus/cbft/rules/safety_rules_test.go index 25a9423583..e437e2caef 100644 --- a/consensus/cbft/rules/safety_rules_test.go +++ b/consensus/cbft/rules/safety_rules_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package rules @@ -23,14 +23,14 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/state" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/state" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/params" "github.com/stretchr/testify/assert" ) diff --git a/consensus/cbft/rules/vote_rules.go b/consensus/cbft/rules/vote_rules.go index d4c3f1e2f8..68b09afce6 100644 --- a/consensus/cbft/rules/vote_rules.go +++ b/consensus/cbft/rules/vote_rules.go @@ -1,24 +1,24 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package rules import ( - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/state" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/state" ) type VoteError interface { diff --git a/consensus/cbft/rules/vote_rules_test.go b/consensus/cbft/rules/vote_rules_test.go index 56980fcf75..9bf39daabf 100644 --- a/consensus/cbft/rules/vote_rules_test.go +++ b/consensus/cbft/rules/vote_rules_test.go @@ -1,27 +1,27 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package rules import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/state" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/state" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" "github.com/stretchr/testify/assert" "testing" ) diff --git a/consensus/cbft/state/state.go b/consensus/cbft/state/state.go index 9ea91e95f9..7b131cfbb3 100644 --- a/consensus/cbft/state/state.go +++ b/consensus/cbft/state/state.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package state @@ -22,12 +22,12 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/core/types" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) const DefaultEpoch = 1 diff --git a/consensus/cbft/state/state_test.go b/consensus/cbft/state/state_test.go index 5f5a232f48..1f0dbdf623 100644 --- a/consensus/cbft/state/state_test.go +++ b/consensus/cbft/state/state_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package state @@ -21,11 +21,11 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" "github.com/stretchr/testify/assert" ) diff --git a/consensus/cbft/state/timer.go b/consensus/cbft/state/timer.go index 5da73543fb..5e750ba670 100644 --- a/consensus/cbft/state/timer.go +++ b/consensus/cbft/state/timer.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package state diff --git a/consensus/cbft/state/timer_test.go b/consensus/cbft/state/timer_test.go index ad4aaafd54..f5bb76e368 100644 --- a/consensus/cbft/state/timer_test.go +++ b/consensus/cbft/state/timer_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package state diff --git a/consensus/cbft/sync_msg_test.go b/consensus/cbft/sync_msg_test.go index a342ca0e42..bf55750712 100644 --- a/consensus/cbft/sync_msg_test.go +++ b/consensus/cbft/sync_msg_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -23,12 +23,12 @@ import ( "github.com/stretchr/testify/suite" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) func TestSyncMsgTestSuite(t *testing.T) { diff --git a/consensus/cbft/sync_process.go b/consensus/cbft/sync_process.go index e69482dc0b..d5996a9650 100644 --- a/consensus/cbft/sync_process.go +++ b/consensus/cbft/sync_process.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -22,14 +22,14 @@ import ( "sort" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/state" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/state" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/network" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/network" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) var syncPrepareVotesInterval = 3 * time.Second diff --git a/consensus/cbft/sync_process_test.go b/consensus/cbft/sync_process_test.go index afa39a1883..4eca0f015a 100644 --- a/consensus/cbft/sync_process_test.go +++ b/consensus/cbft/sync_process_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -22,17 +22,17 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/fetcher" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/network" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - types2 "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/fetcher" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/network" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + types2 "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/core/types" "github.com/stretchr/testify/assert" ) diff --git a/consensus/cbft/types/block_tree.go b/consensus/cbft/types/block_tree.go index 63c62477f6..23adf92766 100644 --- a/consensus/cbft/types/block_tree.go +++ b/consensus/cbft/types/block_tree.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package types @@ -22,8 +22,8 @@ import ( "math" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) type blockExt struct { diff --git a/consensus/cbft/types/block_tree_test.go b/consensus/cbft/types/block_tree_test.go index f802502944..e408ec6f96 100644 --- a/consensus/cbft/types/block_tree_test.go +++ b/consensus/cbft/types/block_tree_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package types @@ -22,10 +22,10 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" "github.com/stretchr/testify/assert" ) diff --git a/consensus/cbft/types/cache.go b/consensus/cbft/types/cache.go index 4b90e3dd0d..a93bf7b30f 100644 --- a/consensus/cbft/types/cache.go +++ b/consensus/cbft/types/cache.go @@ -1,23 +1,23 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package types import ( - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common/math" "sync" "time" ) diff --git a/consensus/cbft/types/cache_test.go b/consensus/cbft/types/cache_test.go index fa3a5ab616..03d2deaf63 100644 --- a/consensus/cbft/types/cache_test.go +++ b/consensus/cbft/types/cache_test.go @@ -1,23 +1,23 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package types import ( - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" "github.com/stretchr/testify/assert" "testing" "time" diff --git a/consensus/cbft/types/codec.go b/consensus/cbft/types/codec.go index 2ba10159c1..1d0a35ce42 100644 --- a/consensus/cbft/types/codec.go +++ b/consensus/cbft/types/codec.go @@ -1,25 +1,25 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package types import ( "errors" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // EncodeExtra encode cbft version and `QuorumCert` as extra data. diff --git a/consensus/cbft/types/codec_test.go b/consensus/cbft/types/codec_test.go index 51de302b2d..ddb082e762 100644 --- a/consensus/cbft/types/codec_test.go +++ b/consensus/cbft/types/codec_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package types @@ -21,8 +21,8 @@ import ( "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" ) func TestCodec(t *testing.T) { diff --git a/consensus/cbft/types/config.go b/consensus/cbft/types/config.go index 2426804379..b8eb8fbafc 100644 --- a/consensus/cbft/types/config.go +++ b/consensus/cbft/types/config.go @@ -1,27 +1,27 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package types import ( "crypto/ecdsa" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" ) type OptionsConfig struct { diff --git a/consensus/cbft/types/crypto.go b/consensus/cbft/types/crypto.go index a07eef19ce..e466ae1f82 100644 --- a/consensus/cbft/types/crypto.go +++ b/consensus/cbft/types/crypto.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package types @@ -20,11 +20,11 @@ import ( "fmt" "reflect" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const ( diff --git a/consensus/cbft/types/crypto_test.go b/consensus/cbft/types/crypto_test.go index d2441a383d..a6cab9d953 100644 --- a/consensus/cbft/types/crypto_test.go +++ b/consensus/cbft/types/crypto_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package types @@ -21,9 +21,9 @@ import ( "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) func Test_QuorumCert(t *testing.T) { diff --git a/consensus/cbft/types/message.go b/consensus/cbft/types/message.go index 28d42e91be..3db311a223 100644 --- a/consensus/cbft/types/message.go +++ b/consensus/cbft/types/message.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package types @@ -20,7 +20,7 @@ import ( "fmt" "reflect" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) const ( diff --git a/consensus/cbft/types/message_test.go b/consensus/cbft/types/message_test.go index 5d8783a3cf..4139f25fec 100644 --- a/consensus/cbft/types/message_test.go +++ b/consensus/cbft/types/message_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package types @@ -21,7 +21,7 @@ import ( "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // simulated message type. diff --git a/consensus/cbft/utils/bit_array.go b/consensus/cbft/utils/bit_array.go index 4b50d334ee..31664190eb 100644 --- a/consensus/cbft/utils/bit_array.go +++ b/consensus/cbft/utils/bit_array.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package utils diff --git a/consensus/cbft/utils/bit_array_test.go b/consensus/cbft/utils/bit_array_test.go index 98fe2a4941..89cb74db66 100644 --- a/consensus/cbft/utils/bit_array_test.go +++ b/consensus/cbft/utils/bit_array_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package utils @@ -22,7 +22,7 @@ import ( "fmt" "testing" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/consensus/cbft/utils/util.go b/consensus/cbft/utils/util.go index d876de3f49..dd16b29e3d 100644 --- a/consensus/cbft/utils/util.go +++ b/consensus/cbft/utils/util.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package utils @@ -23,8 +23,8 @@ import ( "sort" "sync/atomic" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" ) // RandomOffset returns a random offset between 0 and n diff --git a/consensus/cbft/utils/util_test.go b/consensus/cbft/utils/util_test.go index 576e14e981..e91080baf6 100644 --- a/consensus/cbft/utils/util_test.go +++ b/consensus/cbft/utils/util_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package utils diff --git a/consensus/cbft/validator/validator.go b/consensus/cbft/validator/validator.go index db8c187790..67619a0c20 100644 --- a/consensus/cbft/validator/validator.go +++ b/consensus/cbft/validator/validator.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package validator @@ -22,24 +22,24 @@ import ( "fmt" "sync" - "github.com/PlatONnetwork/PlatON-Go/core/state" - - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" - - "github.com/PlatONnetwork/PlatON-Go/common" - cvm "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/core/state" + + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" + + "github.com/AlayaNetwork/Alaya-Go/common" + cvm "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) func newValidators(nodes []params.CbftNode, validBlockNumber uint64) *cbfttypes.Validators { diff --git a/consensus/cbft/validator/validator_test.go b/consensus/cbft/validator/validator_test.go index c226ecee27..5d40907eb4 100644 --- a/consensus/cbft/validator/validator_test.go +++ b/consensus/cbft/validator/validator_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package validator @@ -27,28 +27,28 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - vm2 "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + vm2 "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var ( diff --git a/consensus/cbft/verify_qc_test.go b/consensus/cbft/verify_qc_test.go index c67d43be02..4bd9c29972 100644 --- a/consensus/cbft/verify_qc_test.go +++ b/consensus/cbft/verify_qc_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -22,11 +22,11 @@ import ( "time" "unsafe" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" "github.com/pkg/errors" "github.com/stretchr/testify/suite" ) diff --git a/consensus/cbft/view_change_test.go b/consensus/cbft/view_change_test.go index 3113cb2b70..e0602152aa 100644 --- a/consensus/cbft/view_change_test.go +++ b/consensus/cbft/view_change_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -22,10 +22,10 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/evidence" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/evidence" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/core/types" "github.com/stretchr/testify/suite" ) diff --git a/consensus/cbft/wal/wal.go b/consensus/cbft/wal/wal.go index e0b37d819f..4a50efdb90 100644 --- a/consensus/cbft/wal/wal.go +++ b/consensus/cbft/wal/wal.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . // Package wal implements the similar write-ahead logging for cbft consensus. package wal @@ -25,12 +25,12 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/rlp" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const ( @@ -217,7 +217,7 @@ func (wal *baseWal) LoadChainState(recovery recoveryChainStateFn) error { // open wal database data, err := wal.metaDB.Get(chainStateKey) if err != nil { - log.Warn("Failed to get chainState from db, may be the first time to run platon") + log.Warn("Failed to get chainState from db, may be the first time to run alaya") return nil } var cs protocols.ChainState @@ -284,7 +284,7 @@ func (wal *baseWal) Load(recovery recoveryConsensusMsgFn) error { // open wal database data, err := wal.metaDB.Get(viewChangeKey) if err != nil { - log.Warn("Failed to get viewChange meta from db, may be the first time to run platon") + log.Warn("Failed to get viewChange meta from db, may be the first time to run alaya") return nil } var vc ViewChangeMessage diff --git a/consensus/cbft/wal/wal_common_test.go b/consensus/cbft/wal/wal_common_test.go index d66daadb09..de69ed8f18 100644 --- a/consensus/cbft/wal/wal_common_test.go +++ b/consensus/cbft/wal/wal_common_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package wal @@ -20,12 +20,12 @@ import ( "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) var ( diff --git a/consensus/cbft/wal/wal_database.go b/consensus/cbft/wal/wal_database.go index c6bb69b17f..aa694f565e 100644 --- a/consensus/cbft/wal/wal_database.go +++ b/consensus/cbft/wal/wal_database.go @@ -1,23 +1,23 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package wal import ( - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" "github.com/syndtr/goleveldb/leveldb" "github.com/syndtr/goleveldb/leveldb/errors" "github.com/syndtr/goleveldb/leveldb/filter" diff --git a/consensus/cbft/wal/wal_database_test.go b/consensus/cbft/wal/wal_database_test.go index ba93dd0258..8840a3e98a 100644 --- a/consensus/cbft/wal/wal_database_test.go +++ b/consensus/cbft/wal/wal_database_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package wal diff --git a/consensus/cbft/wal/wal_decoder.go b/consensus/cbft/wal/wal_decoder.go index e564ea62e3..bbf5cc5143 100644 --- a/consensus/cbft/wal/wal_decoder.go +++ b/consensus/cbft/wal/wal_decoder.go @@ -1,27 +1,27 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package wal import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // struct SendPrepareBlock for rlp decode diff --git a/consensus/cbft/wal/wal_journal.go b/consensus/cbft/wal/wal_journal.go index 0b114bf9f3..63e450e6bc 100644 --- a/consensus/cbft/wal/wal_journal.go +++ b/consensus/cbft/wal/wal_journal.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package wal @@ -32,10 +32,10 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const ( diff --git a/consensus/cbft/wal/wal_test.go b/consensus/cbft/wal/wal_test.go index 780c877391..bac8739330 100644 --- a/consensus/cbft/wal/wal_test.go +++ b/consensus/cbft/wal/wal_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package wal @@ -22,8 +22,8 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/stretchr/testify/assert" ) diff --git a/consensus/cbft/wal/wal_writer.go b/consensus/cbft/wal/wal_writer.go index d1119eaaf0..5d6ec98636 100644 --- a/consensus/cbft/wal/wal_writer.go +++ b/consensus/cbft/wal/wal_writer.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package wal diff --git a/consensus/cbft/wal_bridge.go b/consensus/cbft/wal_bridge.go index 69b2c04d40..a0a8fe8574 100644 --- a/consensus/cbft/wal_bridge.go +++ b/consensus/cbft/wal_bridge.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -22,18 +22,18 @@ import ( "reflect" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/state" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/state" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/node" + "github.com/AlayaNetwork/Alaya-Go/node" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/wal" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/wal" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) var ( @@ -177,7 +177,7 @@ func (b *baseBridge) addQCState(qc *protocols.State, chainState *protocols.Chain // ConfirmViewChange tries to update ConfirmedViewChange consensus msg to wal. // at the same time we will record the current fileID and fileSequence. -// the next time the platon node restart, we will recovery the msg from this check point. +// the next time the alaya node restart, we will recovery the msg from this check point. func (b *baseBridge) ConfirmViewChange(epoch, viewNumber uint64, block *types.Block, qc *ctypes.QuorumCert, viewChangeQC *ctypes.ViewChangeQC, preEpoch, preViewNumber uint64) { tStart := time.Now() // save the identity location of the wal message in the file system @@ -251,7 +251,7 @@ func (b *baseBridge) Close() { b.cbft.wal.Close() } -// recoveryChainState tries to recovery consensus chainState from wal when the platon node restart. +// recoveryChainState tries to recovery consensus chainState from wal when the alaya node restart. // need to do some necessary checks based on the latest blockchain block. // execute commit/lock/qcs block and load the corresponding state to cbft consensus. func (cbft *Cbft) recoveryChainState(chainState *protocols.ChainState) error { @@ -375,7 +375,7 @@ func (cbft *Cbft) tryWalChangeView(epoch, viewNumber uint64, block *types.Block, } } -// recoveryMsg tries to recovery consensus msg from wal when the platon node restart. +// recoveryMsg tries to recovery consensus msg from wal when the alaya node restart. func (cbft *Cbft) recoveryMsg(msg interface{}) error { cbft.log.Info("Recover journal message from wal", "msgType", reflect.TypeOf(msg)) diff --git a/consensus/cbft/wal_bridge_test.go b/consensus/cbft/wal_bridge_test.go index d44be27b0d..bca77b75b5 100644 --- a/consensus/cbft/wal_bridge_test.go +++ b/consensus/cbft/wal_bridge_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbft @@ -23,16 +23,16 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/wal" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/wal" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" "github.com/stretchr/testify/assert" ) diff --git a/consensus/consensus.go b/consensus/consensus.go index 1701269154..22120039c1 100644 --- a/consensus/consensus.go +++ b/consensus/consensus.go @@ -20,14 +20,14 @@ package consensus import ( "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // ChainReader defines a small collection of methods needed to access the local diff --git a/consensus/sign.go b/consensus/sign.go index 0b053d4790..a3589d77a8 100644 --- a/consensus/sign.go +++ b/consensus/sign.go @@ -1,29 +1,29 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package consensus import ( "errors" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/rlp" lru "github.com/hashicorp/golang-lru" ) diff --git a/console/bridge.go b/console/bridge.go index cce93dfa98..9d35895113 100644 --- a/console/bridge.go +++ b/console/bridge.go @@ -23,9 +23,9 @@ import ( "strings" "time" - "github.com/PlatONnetwork/PlatON-Go/accounts/usbwallet" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/accounts/usbwallet" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rpc" "github.com/robertkrimen/otto" ) diff --git a/console/console.go b/console/console.go index 1a9177e142..043cb4847c 100644 --- a/console/console.go +++ b/console/console.go @@ -28,9 +28,9 @@ import ( "strings" "syscall" - "github.com/PlatONnetwork/PlatON-Go/internal/jsre" - "github.com/PlatONnetwork/PlatON-Go/internal/web3ext" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/internal/jsre" + "github.com/AlayaNetwork/Alaya-Go/internal/web3ext" + "github.com/AlayaNetwork/Alaya-Go/rpc" "github.com/mattn/go-colorable" "github.com/peterh/liner" "github.com/robertkrimen/otto" @@ -275,7 +275,7 @@ func (c *Console) AutoCompleteInput(line string, pos int) (string, []string, str // console's available modules. func (c *Console) Welcome() { // Print some generic Geth metadata - fmt.Fprintf(c.printer, "Welcome to the PlatON JavaScript console!\n\n") + fmt.Fprintf(c.printer, "Welcome to the Alaya JavaScript console!\n\n") c.jsre.Run(` console.log("instance: " + web3.version.node); console.log("at block: " + platon.blockNumber + " (" + new Date(1000 * platon.getBlock(platon.blockNumber).timestamp) + ")"); diff --git a/console/console_test.go b/console/console_test.go index d9c3cc325b..eebbc8b81a 100644 --- a/console/console_test.go +++ b/console/console_test.go @@ -26,18 +26,18 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/internal/jsre" - "github.com/PlatONnetwork/PlatON-Go/node" - _ "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/internal/jsre" + "github.com/AlayaNetwork/Alaya-Go/node" + _ "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) const ( @@ -202,7 +202,7 @@ func TestWelcome(t *testing.T) { func TestApi(t *testing.T) { tester := newTester(t, nil) defer tester.Close(t) - fmt.Fprintf(tester.console.printer, "Welcome to the PlatON JavaScript console!\n\n") + fmt.Fprintf(tester.console.printer, "Welcome to the Alaya JavaScript console!\n\n") _, err := tester.console.jsre.Run(` console.log("aaaaaaa"); console.log("instance: " + web3.version.node); diff --git a/contracts/chequebook/api.go b/contracts/chequebook/api.go index 2b99cad9ca..a143374836 100644 --- a/contracts/chequebook/api.go +++ b/contracts/chequebook/api.go @@ -20,7 +20,7 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) const Version = "1.0" diff --git a/contracts/chequebook/cheque.go b/contracts/chequebook/cheque.go index e348092c49..ac258a54d8 100644 --- a/contracts/chequebook/cheque.go +++ b/contracts/chequebook/cheque.go @@ -36,13 +36,13 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/contracts/chequebook/contract" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/contracts/chequebook/contract" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" ) // TODO(zelig): watch peer solvency and notify of bouncing cheques diff --git a/contracts/chequebook/cheque_test.go b/contracts/chequebook/cheque_test.go index fe12b1fe8e..601ba4e631 100644 --- a/contracts/chequebook/cheque_test.go +++ b/contracts/chequebook/cheque_test.go @@ -18,12 +18,12 @@ package chequebook import ( "crypto/ecdsa" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/contracts/chequebook/contract" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/contracts/chequebook/contract" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" "math/big" "testing" ) diff --git a/contracts/chequebook/contract/chequebook.go b/contracts/chequebook/contract/chequebook.go index beb7e5c3f6..877ce2ac22 100644 --- a/contracts/chequebook/contract/chequebook.go +++ b/contracts/chequebook/contract/chequebook.go @@ -7,12 +7,12 @@ import ( "math/big" "strings" - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/event" + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/event" ) // ChequebookABI is the input ABI used to generate the binding from. diff --git a/contracts/chequebook/gencode.go b/contracts/chequebook/gencode.go index ca699e9a2a..2322ec29dd 100644 --- a/contracts/chequebook/gencode.go +++ b/contracts/chequebook/gencode.go @@ -25,11 +25,11 @@ import ( "io/ioutil" "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind/backends" - "github.com/PlatONnetwork/PlatON-Go/contracts/chequebook/contract" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind/backends" + "github.com/AlayaNetwork/Alaya-Go/contracts/chequebook/contract" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) var ( diff --git a/contracts/ens/contract/ens.go b/contracts/ens/contract/ens.go index 93621b9db3..979343639c 100644 --- a/contracts/ens/contract/ens.go +++ b/contracts/ens/contract/ens.go @@ -6,12 +6,12 @@ package contract import ( "strings" - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/event" + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/event" ) // ENSABI is the input ABI used to generate the binding from. diff --git a/contracts/ens/contract/fifsregistrar.go b/contracts/ens/contract/fifsregistrar.go index 67209398d8..27454c0a37 100644 --- a/contracts/ens/contract/fifsregistrar.go +++ b/contracts/ens/contract/fifsregistrar.go @@ -6,10 +6,10 @@ package contract import ( "strings" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // FIFSRegistrarABI is the input ABI used to generate the binding from. diff --git a/contracts/ens/contract/publicresolver.go b/contracts/ens/contract/publicresolver.go index 42b6a99781..ebe3fec773 100644 --- a/contracts/ens/contract/publicresolver.go +++ b/contracts/ens/contract/publicresolver.go @@ -7,12 +7,12 @@ import ( "math/big" "strings" - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/event" + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/event" ) // PublicResolverABI is the input ABI used to generate the binding from. diff --git a/contracts/ens/ens.go b/contracts/ens/ens.go index 8e1b478927..7577e9e48b 100644 --- a/contracts/ens/ens.go +++ b/contracts/ens/ens.go @@ -23,11 +23,11 @@ package ens import ( "strings" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/contracts/ens/contract" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/contracts/ens/contract" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) var ( diff --git a/core/asm/asm.go b/core/asm/asm.go index 6dd0fd0ac8..fd222cf291 100644 --- a/core/asm/asm.go +++ b/core/asm/asm.go @@ -21,7 +21,7 @@ import ( "encoding/hex" "fmt" - "github.com/PlatONnetwork/PlatON-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/core/vm" ) // Iterator for disassembled EVM instructions diff --git a/core/asm/compiler.go b/core/asm/compiler.go index 34797a771b..87a3d87a07 100644 --- a/core/asm/compiler.go +++ b/core/asm/compiler.go @@ -22,8 +22,8 @@ import ( "os" "strings" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/core/vm" ) // Compiler contains information about the parsed source diff --git a/core/bench_test.go b/core/bench_test.go index 6ff98955a4..3315010e19 100644 --- a/core/bench_test.go +++ b/core/bench_test.go @@ -23,15 +23,15 @@ import ( "os" "testing" - "github.com/PlatONnetwork/PlatON-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/common/mock" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/params" ) func BenchmarkInsertChain_empty_memdb(b *testing.B) { diff --git a/core/block_validator.go b/core/block_validator.go index 2a7f540c2f..71fbda9e92 100644 --- a/core/block_validator.go +++ b/core/block_validator.go @@ -19,15 +19,15 @@ package core import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/params" ) // BlockValidator is responsible for validating block headers and diff --git a/core/block_validator_test.go b/core/block_validator_test.go index 5161a82957..c3089d23c6 100644 --- a/core/block_validator_test.go +++ b/core/block_validator_test.go @@ -21,12 +21,12 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/params" ) // Tests that simple header verification works, for both good and bad blocks. diff --git a/core/blockchain.go b/core/blockchain.go index b60ffe2892..95039d5659 100644 --- a/core/blockchain.go +++ b/core/blockchain.go @@ -28,21 +28,21 @@ import ( lru "github.com/hashicorp/golang-lru" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" - "github.com/PlatONnetwork/PlatON-Go/common/prque" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/common/prque" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/trie" ) var ( diff --git a/core/blockchain_cache.go b/core/blockchain_cache.go index 6478ad8893..9c83c0922c 100644 --- a/core/blockchain_cache.go +++ b/core/blockchain_cache.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -23,13 +23,13 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" ) var ( diff --git a/core/blockchain_clean.go b/core/blockchain_clean.go index 3fc01f7b74..cc53aa274b 100644 --- a/core/blockchain_clean.go +++ b/core/blockchain_clean.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -21,11 +21,11 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" ) var ( diff --git a/core/blockchain_clean_test.go b/core/blockchain_clean_test.go index e665e23a3f..09ae1b32e1 100644 --- a/core/blockchain_clean_test.go +++ b/core/blockchain_clean_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -25,15 +25,15 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/ethdb/leveldb" + "github.com/AlayaNetwork/Alaya-Go/ethdb/leveldb" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/ethdb" ) var ( @@ -75,7 +75,7 @@ func newBlockChainForTesting(db ethdb.Database) (*BlockChain, error) { } func TestCleaner(t *testing.T) { - tmpDir, err := ioutil.TempDir("", "platon") + tmpDir, err := ioutil.TempDir("", "alaya") assert.Nil(t, err) defer os.RemoveAll(tmpDir) db, err := leveldb.New(tmpDir, 100, 1024, "") @@ -131,7 +131,7 @@ func TestCleaner(t *testing.T) { } func TestStopCleaner(t *testing.T) { - tmpDir, _ := ioutil.TempDir("", "platon") + tmpDir, _ := ioutil.TempDir("", "alaya") defer os.RemoveAll(tmpDir) db, err := leveldb.New(tmpDir, 100, 1024, "") diff --git a/core/blockchain_reactor.go b/core/blockchain_reactor.go index 9877f5bb52..3e2a4a74cd 100644 --- a/core/blockchain_reactor.go +++ b/core/blockchain_reactor.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -24,23 +24,23 @@ import ( "math/big" "sync" - "github.com/PlatONnetwork/PlatON-Go/common" - cvm "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/x/handler" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" - - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + cvm "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/x/handler" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" + + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) type BlockChainReactor struct { diff --git a/core/blockchain_reactor_test.go b/core/blockchain_reactor_test.go index 78fae4709c..e738b63666 100644 --- a/core/blockchain_reactor_test.go +++ b/core/blockchain_reactor_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package core @@ -21,11 +21,11 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/event" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/event" ) func TestBlockChainReactorClose(t *testing.T) { diff --git a/core/blockchain_test.go b/core/blockchain_test.go index ec272a6fb6..9e02df17b4 100644 --- a/core/blockchain_test.go +++ b/core/blockchain_test.go @@ -22,16 +22,16 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - - //"github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/params" - _ "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + + //"github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/params" + _ "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) // So we can deterministically seed different blockchains diff --git a/core/bloombits/generator.go b/core/bloombits/generator.go index bcf630adf4..ea991a1ddf 100644 --- a/core/bloombits/generator.go +++ b/core/bloombits/generator.go @@ -19,7 +19,7 @@ package bloombits import ( "errors" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) var ( diff --git a/core/bloombits/generator_test.go b/core/bloombits/generator_test.go index 63aa828b4c..afd78c6eb1 100644 --- a/core/bloombits/generator_test.go +++ b/core/bloombits/generator_test.go @@ -21,7 +21,7 @@ import ( "math/rand" "testing" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // Tests that batched bloom bits are correctly rotated from the input bloom diff --git a/core/bloombits/matcher.go b/core/bloombits/matcher.go index 8f44e0c180..01f13ff761 100644 --- a/core/bloombits/matcher.go +++ b/core/bloombits/matcher.go @@ -26,8 +26,8 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/common/bitutil" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common/bitutil" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) // bloomIndexes represents the bit indexes inside the bloom filter that belong diff --git a/core/bloombits/matcher_test.go b/core/bloombits/matcher_test.go index b6de298c53..bdb22f873b 100644 --- a/core/bloombits/matcher_test.go +++ b/core/bloombits/matcher_test.go @@ -23,7 +23,7 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) const testSectionSize = 4096 diff --git a/core/cbfttypes/type.go b/core/cbfttypes/type.go index 896153e23d..5aed95247c 100644 --- a/core/cbfttypes/type.go +++ b/core/cbfttypes/type.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package cbfttypes @@ -22,19 +22,19 @@ import ( "encoding/json" "errors" "fmt" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" "math" "math/big" "sort" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/protocols" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/protocols" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/utils" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/utils" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) // Block's Signature info diff --git a/core/chain_indexer.go b/core/chain_indexer.go index 69e28c74e4..1eb7b8be61 100644 --- a/core/chain_indexer.go +++ b/core/chain_indexer.go @@ -24,12 +24,12 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" ) // ChainIndexerBackend defines the methods needed to process chain segments in diff --git a/core/chain_indexer_test.go b/core/chain_indexer_test.go index efb6f15ba9..843e70ec11 100644 --- a/core/chain_indexer_test.go +++ b/core/chain_indexer_test.go @@ -24,9 +24,9 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // Runs multiple tests with randomized parameters. diff --git a/core/chain_makers.go b/core/chain_makers.go index ac9e0190a7..1441b65ff4 100644 --- a/core/chain_makers.go +++ b/core/chain_makers.go @@ -21,13 +21,13 @@ import ( "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/params" ) // BlockGen creates blocks for testing. diff --git a/core/events.go b/core/events.go index d6b729bf1f..41c5b0758b 100644 --- a/core/events.go +++ b/core/events.go @@ -17,9 +17,9 @@ package core import ( - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // NewTxsEvent is posted when a batch of transactions enter the transaction pool. diff --git a/core/evm.go b/core/evm.go index 973cac9ef3..0faed546d5 100644 --- a/core/evm.go +++ b/core/evm.go @@ -19,12 +19,12 @@ package core import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" ) // ChainContext supports retrieving headers and consensus parameters from the diff --git a/core/gen_genesis.go b/core/gen_genesis.go index 6277897288..ce56beaaac 100644 --- a/core/gen_genesis.go +++ b/core/gen_genesis.go @@ -3,11 +3,11 @@ package core import ( "encoding/json" "errors" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) var _ = (*genesisSpecMarshaling)(nil) diff --git a/core/gen_genesis_account.go b/core/gen_genesis_account.go index 47b11d39d9..00493db1f1 100644 --- a/core/gen_genesis_account.go +++ b/core/gen_genesis_account.go @@ -7,9 +7,9 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" ) var _ = (*genesisAccountMarshaling)(nil) diff --git a/core/genesis.go b/core/genesis.go index 597e2b45db..1bed775d0f 100644 --- a/core/genesis.go +++ b/core/genesis.go @@ -27,22 +27,22 @@ import ( "os" "strings" - "github.com/PlatONnetwork/PlatON-Go/x/gov" - - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/gov" + + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) //go:generate gencodec -type GenesisAccount -field-override genesisAccountMarshaling -out gen_genesis_account.go diff --git a/core/genesis_data.go b/core/genesis_data.go index d0c48b2c70..e8da8df8e9 100644 --- a/core/genesis_data.go +++ b/core/genesis_data.go @@ -5,22 +5,22 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" - - "github.com/PlatONnetwork/PlatON-Go/log" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" + + "github.com/AlayaNetwork/Alaya-Go/log" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) func genesisStakingData(prevHash common.Hash, snapdb snapshotdb.BaseDB, g *Genesis, stateDB *state.StateDB) (common.Hash, error) { diff --git a/core/headerchain.go b/core/headerchain.go index 77ec21a0b1..f3424d626a 100644 --- a/core/headerchain.go +++ b/core/headerchain.go @@ -28,13 +28,13 @@ import ( lru "github.com/hashicorp/golang-lru" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" ) const ( diff --git a/core/helper_test.go b/core/helper_test.go index 0f6327d24e..a5538587aa 100644 --- a/core/helper_test.go +++ b/core/helper_test.go @@ -19,11 +19,11 @@ package core import ( "container/list" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" ) // Implement our EthTest Manager diff --git a/core/lru/wasm_cache.go b/core/lru/wasm_cache.go index d524bcbd55..0e12f4a2ef 100644 --- a/core/lru/wasm_cache.go +++ b/core/lru/wasm_cache.go @@ -5,7 +5,7 @@ import ( "github.com/PlatONnetwork/wagon/exec" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" "github.com/hashicorp/golang-lru/simplelru" ) diff --git a/core/mkalloc.go b/core/mkalloc.go index 8c3539b878..6e129ecd2b 100644 --- a/core/mkalloc.go +++ b/core/mkalloc.go @@ -34,8 +34,8 @@ import ( "sort" "strconv" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) type allocItem struct{ Addr, Balance *big.Int } diff --git a/core/parallel_context.go b/core/parallel_context.go index 0dd995edb6..70fb63b9e0 100644 --- a/core/parallel_context.go +++ b/core/parallel_context.go @@ -7,12 +7,12 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" ) type Result struct { diff --git a/core/parallel_executor.go b/core/parallel_executor.go index cfe0a068f3..228b8f04a5 100644 --- a/core/parallel_executor.go +++ b/core/parallel_executor.go @@ -9,12 +9,12 @@ import ( lru "github.com/hashicorp/golang-lru" "github.com/panjf2000/ants/v2" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" ) const ( diff --git a/core/parallel_state_processor.go b/core/parallel_state_processor.go index e7f54399de..558dae5768 100644 --- a/core/parallel_state_processor.go +++ b/core/parallel_state_processor.go @@ -3,12 +3,12 @@ package core import ( "time" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" ) type ParallelStateProcessor struct { diff --git a/core/parallel_test.go b/core/parallel_test.go index e932f54030..f304352164 100644 --- a/core/parallel_test.go +++ b/core/parallel_test.go @@ -11,19 +11,19 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - state2 "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - cvm "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + state2 "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + cvm "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/params" ) var ( @@ -214,7 +214,7 @@ func makeExtraData() []byte { // create default extradata extra, _ := rlp.EncodeToBytes([]interface{}{ uint(params.VersionMajor<<16 | params.VersionMinor<<8 | params.VersionPatch), - "platon", + "alaya", runtime.Version(), runtime.GOOS, }) diff --git a/core/parallel_tx_dag.go b/core/parallel_tx_dag.go index fe0d30e199..61a01d84c0 100644 --- a/core/parallel_tx_dag.go +++ b/core/parallel_tx_dag.go @@ -1,11 +1,11 @@ package core import ( - "github.com/PlatONnetwork/PlatON-Go/common" - dag3 "github.com/PlatONnetwork/PlatON-Go/core/dag" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + dag3 "github.com/AlayaNetwork/Alaya-Go/core/dag" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" ) type TxDag struct { diff --git a/core/rawdb/accessors_chain.go b/core/rawdb/accessors_chain.go index 0c9f0752de..adac2972b7 100644 --- a/core/rawdb/accessors_chain.go +++ b/core/rawdb/accessors_chain.go @@ -21,14 +21,14 @@ import ( "encoding/binary" "math/big" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // ReadCanonicalHash retrieves the hash assigned to a canonical block number. diff --git a/core/rawdb/accessors_chain_test.go b/core/rawdb/accessors_chain_test.go index f03cb773ad..7cf9551e15 100644 --- a/core/rawdb/accessors_chain_test.go +++ b/core/rawdb/accessors_chain_test.go @@ -23,12 +23,12 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // Tests block header storage and retrieval operations. diff --git a/core/rawdb/accessors_indexes.go b/core/rawdb/accessors_indexes.go index 8629d9ff3f..30cde9be57 100644 --- a/core/rawdb/accessors_indexes.go +++ b/core/rawdb/accessors_indexes.go @@ -17,12 +17,12 @@ package rawdb import ( - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // ReadTxLookupEntry retrieves the positional metadata associated with a transaction diff --git a/core/rawdb/accessors_indexes_test.go b/core/rawdb/accessors_indexes_test.go index 64d6629bf5..1d05c350d7 100644 --- a/core/rawdb/accessors_indexes_test.go +++ b/core/rawdb/accessors_indexes_test.go @@ -20,8 +20,8 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // Tests that positional lookup metadata can be stored and retrieved. diff --git a/core/rawdb/accessors_metadata.go b/core/rawdb/accessors_metadata.go index 2230d852cc..743e6c8b9c 100644 --- a/core/rawdb/accessors_metadata.go +++ b/core/rawdb/accessors_metadata.go @@ -19,14 +19,14 @@ package rawdb import ( "encoding/json" - "github.com/PlatONnetwork/PlatON-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // ReadDatabaseVersion retrieves the version number of the database. diff --git a/core/rawdb/accessors_metadata_test.go b/core/rawdb/accessors_metadata_test.go index fbe2208d99..bdaa2df6e3 100644 --- a/core/rawdb/accessors_metadata_test.go +++ b/core/rawdb/accessors_metadata_test.go @@ -4,11 +4,11 @@ import ( "encoding/json" "testing" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" "github.com/stretchr/testify/assert" ) diff --git a/core/rawdb/database.go b/core/rawdb/database.go index bff69d93cf..2e107bac63 100644 --- a/core/rawdb/database.go +++ b/core/rawdb/database.go @@ -17,9 +17,9 @@ package rawdb import ( - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/ethdb/leveldb" - "github.com/PlatONnetwork/PlatON-Go/ethdb/memorydb" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/ethdb/leveldb" + "github.com/AlayaNetwork/Alaya-Go/ethdb/memorydb" ) // NewDatabase creates a high level database on top of a given key-value data diff --git a/core/rawdb/schema.go b/core/rawdb/schema.go index f98b1a0159..2f97614f5b 100644 --- a/core/rawdb/schema.go +++ b/core/rawdb/schema.go @@ -20,8 +20,8 @@ package rawdb import ( "encoding/binary" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/metrics" ) // The fields below define the low level database schema prefixing. diff --git a/core/rawdb/table.go b/core/rawdb/table.go index 45048d9e4f..d17f029230 100644 --- a/core/rawdb/table.go +++ b/core/rawdb/table.go @@ -17,7 +17,7 @@ package rawdb import ( - "github.com/PlatONnetwork/PlatON-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/ethdb" ) // table is a wrapper around a database that prefixes each key access with a pre- diff --git a/core/snapshotdb/bench_test.go b/core/snapshotdb/bench_test.go index c4e4c267dc..004df63ca5 100644 --- a/core/snapshotdb/bench_test.go +++ b/core/snapshotdb/bench_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb @@ -25,8 +25,8 @@ import ( "runtime" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/log" ) type valueGen struct { diff --git a/core/snapshotdb/blockdata.go b/core/snapshotdb/blockdata.go index 35c61c92bb..d128a6d62d 100644 --- a/core/snapshotdb/blockdata.go +++ b/core/snapshotdb/blockdata.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb @@ -23,11 +23,11 @@ import ( "sort" "sync" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/syndtr/goleveldb/leveldb/memdb" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) type blockData struct { diff --git a/core/snapshotdb/chain_mock.go b/core/snapshotdb/chain_mock.go index 1927e06717..c5344b73dc 100644 --- a/core/snapshotdb/chain_mock.go +++ b/core/snapshotdb/chain_mock.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb @@ -21,8 +21,8 @@ import ( "math/rand" "os" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) func newTestchain(path string) *testchain { diff --git a/core/snapshotdb/comparer.go b/core/snapshotdb/comparer.go index c44a6c0d11..e03db4883e 100644 --- a/core/snapshotdb/comparer.go +++ b/core/snapshotdb/comparer.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb diff --git a/core/snapshotdb/current.go b/core/snapshotdb/current.go index 0a6fd893c5..f932d18e90 100644 --- a/core/snapshotdb/current.go +++ b/core/snapshotdb/current.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb @@ -20,12 +20,12 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" "github.com/syndtr/goleveldb/leveldb" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const ( diff --git a/core/snapshotdb/db.go b/core/snapshotdb/db.go index 8e9839c8a4..1af3222872 100644 --- a/core/snapshotdb/db.go +++ b/core/snapshotdb/db.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb @@ -22,13 +22,13 @@ import ( "path" "sort" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/syndtr/goleveldb/leveldb" "github.com/syndtr/goleveldb/leveldb/util" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) func getBaseDBPath(dbpath string) string { diff --git a/core/snapshotdb/db_cron_job.go b/core/snapshotdb/db_cron_job.go index 32b1a405ab..5f8f14198e 100644 --- a/core/snapshotdb/db_cron_job.go +++ b/core/snapshotdb/db_cron_job.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb diff --git a/core/snapshotdb/db_test.go b/core/snapshotdb/db_test.go index 6368243144..9bddccb80e 100644 --- a/core/snapshotdb/db_test.go +++ b/core/snapshotdb/db_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb @@ -21,9 +21,9 @@ import ( "fmt" "testing" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) func TestRecover(t *testing.T) { diff --git a/core/snapshotdb/heap.go b/core/snapshotdb/heap.go index e55fd3d828..5828156064 100644 --- a/core/snapshotdb/heap.go +++ b/core/snapshotdb/heap.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb diff --git a/core/snapshotdb/init_dev.go b/core/snapshotdb/init_dev.go index effaff9f98..e55b7d7b98 100644 --- a/core/snapshotdb/init_dev.go +++ b/core/snapshotdb/init_dev.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . // +build test @@ -26,7 +26,7 @@ import ( "path" "time" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) const ( diff --git a/core/snapshotdb/init_prod.go b/core/snapshotdb/init_prod.go index c2afe6245b..cc2fea2fb3 100644 --- a/core/snapshotdb/init_prod.go +++ b/core/snapshotdb/init_prod.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . // +build !test diff --git a/core/snapshotdb/interface.go b/core/snapshotdb/interface.go index 561f351f10..762ac0030f 100644 --- a/core/snapshotdb/interface.go +++ b/core/snapshotdb/interface.go @@ -1,22 +1,22 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb -import "github.com/PlatONnetwork/PlatON-Go/common" +import "github.com/AlayaNetwork/Alaya-Go/common" // Putter wraps the database write operation supported by both batches and regular databases. type Putter interface { diff --git a/core/snapshotdb/journal.go b/core/snapshotdb/journal.go index 422445fc51..2509ffc40b 100644 --- a/core/snapshotdb/journal.go +++ b/core/snapshotdb/journal.go @@ -1,25 +1,25 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) const WalKeyPrefix = "journal-" diff --git a/core/snapshotdb/journal_test.go b/core/snapshotdb/journal_test.go index 9f9e90d7ad..d805e636ab 100644 --- a/core/snapshotdb/journal_test.go +++ b/core/snapshotdb/journal_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb diff --git a/core/snapshotdb/mem_db.go b/core/snapshotdb/mem_db.go index 780f05675f..a69b5f6f3e 100644 --- a/core/snapshotdb/mem_db.go +++ b/core/snapshotdb/mem_db.go @@ -1,23 +1,23 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb import ( - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" "math/big" "sync" ) diff --git a/core/snapshotdb/metrics.go b/core/snapshotdb/metrics.go index 0565d54061..fc0a701800 100644 --- a/core/snapshotdb/metrics.go +++ b/core/snapshotdb/metrics.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb @@ -20,7 +20,7 @@ import ( "io/ioutil" "path" - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics" ) var ( diff --git a/core/snapshotdb/snapshotdb.go b/core/snapshotdb/snapshotdb.go index 30b25844fd..e4eabe9307 100644 --- a/core/snapshotdb/snapshotdb.go +++ b/core/snapshotdb/snapshotdb.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb @@ -24,12 +24,12 @@ import ( "os" "sync" - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics" "github.com/syndtr/goleveldb/leveldb/filter" "github.com/syndtr/goleveldb/leveldb/opt" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" "github.com/robfig/cron" "github.com/syndtr/goleveldb/leveldb" @@ -38,8 +38,8 @@ import ( "github.com/syndtr/goleveldb/leveldb/memdb" "github.com/syndtr/goleveldb/leveldb/util" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/log" ) const ( diff --git a/core/snapshotdb/snapshotdb_test.go b/core/snapshotdb/snapshotdb_test.go index 8a46fc4006..779d609b09 100644 --- a/core/snapshotdb/snapshotdb_test.go +++ b/core/snapshotdb/snapshotdb_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb @@ -27,12 +27,12 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" "github.com/syndtr/goleveldb/leveldb/iterator" "github.com/syndtr/goleveldb/leveldb/util" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) func TestCommitZeroBlock(t *testing.T) { diff --git a/core/snapshotdb/util.go b/core/snapshotdb/util.go index 93f6a2035a..fa78c92a40 100644 --- a/core/snapshotdb/util.go +++ b/core/snapshotdb/util.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package snapshotdb @@ -24,11 +24,11 @@ import ( "sort" "time" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) func generateKVHash(k, v []byte, hash common.Hash) common.Hash { diff --git a/core/state/database.go b/core/state/database.go index 6cc9d5b53b..bf87d430b9 100644 --- a/core/state/database.go +++ b/core/state/database.go @@ -22,9 +22,9 @@ import ( lru "github.com/hashicorp/golang-lru" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/trie" ) const ( diff --git a/core/state/dump.go b/core/state/dump.go index 5ac9773497..6ba320efe1 100644 --- a/core/state/dump.go +++ b/core/state/dump.go @@ -20,9 +20,9 @@ import ( "encoding/json" "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/trie" ) type DumpAccount struct { diff --git a/core/state/iterator.go b/core/state/iterator.go index ba056640b8..c22b038ad6 100644 --- a/core/state/iterator.go +++ b/core/state/iterator.go @@ -20,9 +20,9 @@ import ( "bytes" "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/trie" ) // NodeIterator is an iterator to traverse the entire state trie post-order, diff --git a/core/state/iterator_test.go b/core/state/iterator_test.go index 37f9b4b767..ace0bf4356 100644 --- a/core/state/iterator_test.go +++ b/core/state/iterator_test.go @@ -18,11 +18,11 @@ package state import ( "bytes" - "github.com/PlatONnetwork/PlatON-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/common/vm" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/ethdb" ) var TestPlatONPrecompiledContracts = map[common.Address]interface{}{ diff --git a/core/state/journal.go b/core/state/journal.go index 4c559dc7c1..a6102f383c 100644 --- a/core/state/journal.go +++ b/core/state/journal.go @@ -19,7 +19,7 @@ package state import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // journalEntry is a modification entry in the state change journal that can be diff --git a/core/state/managed_state.go b/core/state/managed_state.go index 8df886536a..274b922776 100644 --- a/core/state/managed_state.go +++ b/core/state/managed_state.go @@ -19,7 +19,7 @@ package state import ( "sync" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) type account struct { diff --git a/core/state/managed_state_test.go b/core/state/managed_state_test.go index 3e289a9228..1620acf7b1 100644 --- a/core/state/managed_state_test.go +++ b/core/state/managed_state_test.go @@ -19,9 +19,9 @@ package state import ( "testing" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) var addr = common.BytesToAddress([]byte("test")) diff --git a/core/state/parallel_state_object_test.go b/core/state/parallel_state_object_test.go index bcf942f037..c70a9061c4 100644 --- a/core/state/parallel_state_object_test.go +++ b/core/state/parallel_state_object_test.go @@ -5,7 +5,7 @@ import ( "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) func TestParallelStateObject(t *testing.T) { diff --git a/core/state/parallel_statedb.go b/core/state/parallel_statedb.go index fd5386d587..8efee13bc9 100644 --- a/core/state/parallel_statedb.go +++ b/core/state/parallel_statedb.go @@ -5,9 +5,9 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var ( diff --git a/core/state/parallel_statedb_test.go b/core/state/parallel_statedb_test.go index 5198a83a9c..f134b35c2f 100644 --- a/core/state/parallel_statedb_test.go +++ b/core/state/parallel_statedb_test.go @@ -7,14 +7,14 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) var ( diff --git a/core/state/state_object.go b/core/state/state_object.go index 84bc47b77e..fac39e5e86 100644 --- a/core/state/state_object.go +++ b/core/state/state_object.go @@ -23,12 +23,12 @@ import ( "io" "math/big" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/common" - cvm "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + cvm "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var emptyCodeHash = crypto.Keccak256(nil) diff --git a/core/state/state_object_test.go b/core/state/state_object_test.go index 758dc8f3d9..9903e76e7e 100644 --- a/core/state/state_object_test.go +++ b/core/state/state_object_test.go @@ -2,7 +2,7 @@ package state import ( "bytes" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" "testing" ) diff --git a/core/state/state_test.go b/core/state/state_test.go index f7f5bb01ed..898ce9094e 100644 --- a/core/state/state_test.go +++ b/core/state/state_test.go @@ -25,19 +25,19 @@ import ( "os" "testing" - "github.com/PlatONnetwork/PlatON-Go/ethdb/leveldb" + "github.com/AlayaNetwork/Alaya-Go/ethdb/leveldb" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/trie" checker "gopkg.in/check.v1" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/ethdb" ) type StateSuite struct { @@ -257,7 +257,7 @@ func compareStateObjects(so0, so1 *stateObject, t *testing.T) { } func TestEmptyByte(t *testing.T) { - tmpDir, _ := ioutil.TempDir("", "platon") + tmpDir, _ := ioutil.TempDir("", "alaya") defer os.Remove(tmpDir) db, _ := leveldb.New(tmpDir, 0, 0, "") @@ -318,7 +318,7 @@ func TestEmptyByte(t *testing.T) { } func TestForEachStorage(t *testing.T) { - tmpDir, _ := ioutil.TempDir("", "platon") + tmpDir, _ := ioutil.TempDir("", "alaya") defer os.Remove(tmpDir) db, _ := leveldb.New(tmpDir, 0, 0, "") state, _ := New(common.Hash{}, NewDatabase(db)) @@ -349,7 +349,7 @@ func TestForEachStorage(t *testing.T) { func TestMigrateStorage(t *testing.T) { - tmpDir, _ := ioutil.TempDir("", "platon") + tmpDir, _ := ioutil.TempDir("", "alaya") defer os.Remove(tmpDir) db, _ := leveldb.New(tmpDir, 0, 0, "") state, _ := New(common.Hash{}, NewDatabase(db)) diff --git a/core/state/statedb.go b/core/state/statedb.go index 7fcd742ebc..61e54802ca 100644 --- a/core/state/statedb.go +++ b/core/state/statedb.go @@ -21,19 +21,19 @@ import ( "encoding/json" "errors" "fmt" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/x/gov" "math/big" "sort" "sync" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/trie" ) type revision struct { diff --git a/core/state/statedb_test.go b/core/state/statedb_test.go index d3dcc87ade..e2d31800b5 100644 --- a/core/state/statedb_test.go +++ b/core/state/statedb_test.go @@ -30,14 +30,14 @@ import ( "testing/quick" "time" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" "github.com/stretchr/testify/assert" "gopkg.in/check.v1" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) var letters = []rune("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ") diff --git a/core/state/sync.go b/core/state/sync.go index dcde1b622a..88a74022b3 100644 --- a/core/state/sync.go +++ b/core/state/sync.go @@ -19,11 +19,11 @@ package state import ( "bytes" - "github.com/PlatONnetwork/PlatON-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/trie" ) // NewStateSync create a new state trie download scheduler. diff --git a/core/state/sync_test.go b/core/state/sync_test.go index e17b23181e..a8882ff963 100644 --- a/core/state/sync_test.go +++ b/core/state/sync_test.go @@ -21,12 +21,12 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/trie" ) // testAccount is the data associated with an account used by the state tests. diff --git a/core/state_processor.go b/core/state_processor.go index ed39a82670..6b28385125 100644 --- a/core/state_processor.go +++ b/core/state_processor.go @@ -20,18 +20,18 @@ import ( "bytes" "strconv" - "github.com/PlatONnetwork/PlatON-Go/x/gov" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/gov" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // StateProcessor is a basic Processor, which takes care of transitioning diff --git a/core/state_transition.go b/core/state_transition.go index c16ef8dd80..e1fe962ed7 100644 --- a/core/state_transition.go +++ b/core/state_transition.go @@ -23,10 +23,10 @@ import ( "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" ) var ( diff --git a/core/tx_cacher.go b/core/tx_cacher.go index 9f685231b8..c3d5ec8954 100644 --- a/core/tx_cacher.go +++ b/core/tx_cacher.go @@ -19,9 +19,9 @@ package core import ( "runtime" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // senderCacher is a concurrent transaction sender recoverer anc cacher. diff --git a/core/tx_journal.go b/core/tx_journal.go index e52c4e9241..597efc0f8a 100644 --- a/core/tx_journal.go +++ b/core/tx_journal.go @@ -21,10 +21,10 @@ import ( "io" "os" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // errNoActiveJournal is returned if a transaction is attempted to be inserted diff --git a/core/tx_list.go b/core/tx_list.go index a6f1e8808d..0d4b94a5e5 100644 --- a/core/tx_list.go +++ b/core/tx_list.go @@ -22,9 +22,9 @@ import ( "math/big" "sort" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" ) // nonceHeap is a heap.Interface implementation over 64bit unsigned integers for diff --git a/core/tx_list_test.go b/core/tx_list_test.go index e617eaa49e..124f072ac3 100644 --- a/core/tx_list_test.go +++ b/core/tx_list_test.go @@ -20,10 +20,10 @@ import ( "math/rand" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) // Tests that transactions can be added to strict lists and list contents and diff --git a/core/tx_noncer.go b/core/tx_noncer.go index 35c4a06a4f..2241feab26 100644 --- a/core/tx_noncer.go +++ b/core/tx_noncer.go @@ -19,8 +19,8 @@ package core import ( "sync" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/state" ) // txNoncer is a tiny virtual state database to manage the executable nonces of diff --git a/core/tx_pool.go b/core/tx_pool.go index 27e6661925..fcb97e3eba 100644 --- a/core/tx_pool.go +++ b/core/tx_pool.go @@ -26,14 +26,14 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/prque" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/metrics" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/prque" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/params" ) const ( diff --git a/core/tx_pool_test.go b/core/tx_pool_test.go index 333ca9a2e2..396907115d 100644 --- a/core/tx_pool_test.go +++ b/core/tx_pool_test.go @@ -27,14 +27,14 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/params" ) // testTxPoolConfig is a transaction pool configuration without stateful disk diff --git a/core/types.go b/core/types.go index 9e84c53cfe..5f6fc5f0ae 100644 --- a/core/types.go +++ b/core/types.go @@ -19,9 +19,9 @@ package core import ( "time" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" ) // Validator is an interface which defines the standard for block validation. It diff --git a/core/types/block.go b/core/types/block.go index 5b50b9f9a1..561f91e47a 100644 --- a/core/types/block.go +++ b/core/types/block.go @@ -27,12 +27,12 @@ import ( "time" "unsafe" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var ( diff --git a/core/types/block_test.go b/core/types/block_test.go index 58ac9e6e69..dd5b12ffd5 100644 --- a/core/types/block_test.go +++ b/core/types/block_test.go @@ -23,10 +23,10 @@ import ( "reflect" "testing" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // from bcValidBlockTest.json, "SimpleTx" diff --git a/core/types/bloom9.go b/core/types/bloom9.go index 15c7a7348e..31850e948c 100644 --- a/core/types/bloom9.go +++ b/core/types/bloom9.go @@ -20,8 +20,8 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) type bytesBacked interface { diff --git a/core/types/bloom9_test.go b/core/types/bloom9_test.go index 89f0acb393..501866bb1c 100644 --- a/core/types/bloom9_test.go +++ b/core/types/bloom9_test.go @@ -54,7 +54,7 @@ func TestBloom(t *testing.T) { import ( "testing" - "github.com/PlatONnetwork/PlatON-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/state" ) func TestBloom9(t *testing.T) { diff --git a/core/types/derive_sha.go b/core/types/derive_sha.go index ee4c982ef2..1b4117789d 100644 --- a/core/types/derive_sha.go +++ b/core/types/derive_sha.go @@ -19,9 +19,9 @@ package types import ( "bytes" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/trie" ) type DerivableList interface { diff --git a/core/types/gen_header_json.go b/core/types/gen_header_json.go index d14affc1e9..8d605cd18b 100644 --- a/core/types/gen_header_json.go +++ b/core/types/gen_header_json.go @@ -7,8 +7,8 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" ) var _ = (*headerMarshaling)(nil) diff --git a/core/types/gen_log_json.go b/core/types/gen_log_json.go index 4ac9809b14..019c138c0e 100644 --- a/core/types/gen_log_json.go +++ b/core/types/gen_log_json.go @@ -6,8 +6,8 @@ import ( "encoding/json" "errors" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" ) var _ = (*logMarshaling)(nil) diff --git a/core/types/gen_receipt_json.go b/core/types/gen_receipt_json.go index b19c3da1d5..dd677a4504 100644 --- a/core/types/gen_receipt_json.go +++ b/core/types/gen_receipt_json.go @@ -7,8 +7,8 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" ) var _ = (*receiptMarshaling)(nil) diff --git a/core/types/gen_tx_json.go b/core/types/gen_tx_json.go index 38879a50bf..8b4270ee1b 100644 --- a/core/types/gen_tx_json.go +++ b/core/types/gen_tx_json.go @@ -7,8 +7,8 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" ) var _ = (*txdataMarshaling)(nil) diff --git a/core/types/log.go b/core/types/log.go index 4bb1ef73b8..b81148fa40 100644 --- a/core/types/log.go +++ b/core/types/log.go @@ -19,9 +19,9 @@ package types import ( "io" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) //go:generate gencodec -type Log -field-override logMarshaling -out gen_log_json.go diff --git a/core/types/log_test.go b/core/types/log_test.go index 8d5db26136..a890525dd3 100644 --- a/core/types/log_test.go +++ b/core/types/log_test.go @@ -24,8 +24,8 @@ import ( "github.com/davecgh/go-spew/spew" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" ) var unmarshalLogTests = map[string]struct { diff --git a/core/types/receipt.go b/core/types/receipt.go index 307f0a997e..99cd779f75 100644 --- a/core/types/receipt.go +++ b/core/types/receipt.go @@ -24,12 +24,12 @@ import ( "math/big" "unsafe" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) //go:generate gencodec -type Receipt -field-override receiptMarshaling -out gen_receipt_json.go diff --git a/core/types/transaction.go b/core/types/transaction.go index 7cc3f71a30..8e0b20b9a6 100644 --- a/core/types/transaction.go +++ b/core/types/transaction.go @@ -23,11 +23,11 @@ import ( "math/big" "sync/atomic" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) //go:generate gencodec -type txdata -field-override txdataMarshaling -out gen_tx_json.go diff --git a/core/types/transaction_signing.go b/core/types/transaction_signing.go index a7c586caf9..b6d109a8b6 100644 --- a/core/types/transaction_signing.go +++ b/core/types/transaction_signing.go @@ -22,8 +22,8 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) var ( diff --git a/core/types/transaction_signing_test.go b/core/types/transaction_signing_test.go index 346ad0d118..8c63e6f02a 100644 --- a/core/types/transaction_signing_test.go +++ b/core/types/transaction_signing_test.go @@ -20,9 +20,9 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) func TestEIP155Signing(t *testing.T) { diff --git a/core/types/transaction_test.go b/core/types/transaction_test.go index 909921fe3e..3151de14c1 100644 --- a/core/types/transaction_test.go +++ b/core/types/transaction_test.go @@ -24,9 +24,9 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // The values in those tests are from the Transaction Tests diff --git a/core/types/transaction_wrap.go b/core/types/transaction_wrap.go index 68948e8569..e44a925379 100644 --- a/core/types/transaction_wrap.go +++ b/core/types/transaction_wrap.go @@ -1,7 +1,7 @@ package types import ( - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" "io" ) diff --git a/core/vm/analysis_test.go b/core/vm/analysis_test.go index e242c8f793..b8253a16a0 100644 --- a/core/vm/analysis_test.go +++ b/core/vm/analysis_test.go @@ -17,7 +17,7 @@ package vm import ( - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto" "testing" ) diff --git a/core/vm/common.go b/core/vm/common.go index 961d38fb60..66c171ee69 100644 --- a/core/vm/common.go +++ b/core/vm/common.go @@ -19,8 +19,8 @@ package vm import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" "github.com/holiman/uint256" ) diff --git a/core/vm/common_test.go b/core/vm/common_test.go index 703f064078..691eb03ffc 100644 --- a/core/vm/common_test.go +++ b/core/vm/common_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -20,9 +20,9 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" "github.com/stretchr/testify/assert" ) diff --git a/core/vm/contract.go b/core/vm/contract.go index 7a35b3cb8e..8a8cefeb30 100644 --- a/core/vm/contract.go +++ b/core/vm/contract.go @@ -19,7 +19,7 @@ package vm import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" "github.com/holiman/uint256" ) diff --git a/core/vm/contract_test.go b/core/vm/contract_test.go index 1dee2d2350..4adad09e0b 100644 --- a/core/vm/contract_test.go +++ b/core/vm/contract_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -23,7 +23,7 @@ import ( "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) func TestValidJumpdest(t *testing.T) { diff --git a/core/vm/contracts.go b/core/vm/contracts.go index 9b5b1a973a..1bd1ecd29e 100644 --- a/core/vm/contracts.go +++ b/core/vm/contracts.go @@ -20,16 +20,16 @@ import ( "crypto/sha256" "encoding/binary" "errors" - "github.com/PlatONnetwork/PlatON-Go/crypto/blake2b" + "github.com/AlayaNetwork/Alaya-Go/crypto/blake2b" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/bn256" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/bn256" + "github.com/AlayaNetwork/Alaya-Go/params" "golang.org/x/crypto/ripemd160" ) diff --git a/core/vm/contracts_test.go b/core/vm/contracts_test.go index c3b693dd8a..ae15cb342b 100644 --- a/core/vm/contracts_test.go +++ b/core/vm/contracts_test.go @@ -21,11 +21,11 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common/mock" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // precompiledTest defines the input/output pairs for precompiled contract tests. diff --git a/core/vm/delegate_reward_contract.go b/core/vm/delegate_reward_contract.go index 337c442afe..977bf4c338 100644 --- a/core/vm/delegate_reward_contract.go +++ b/core/vm/delegate_reward_contract.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -21,23 +21,23 @@ import ( "math/big" "sort" - "github.com/PlatONnetwork/PlatON-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/reward" + "github.com/AlayaNetwork/Alaya-Go/x/reward" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" - "github.com/PlatONnetwork/PlatON-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" ) const ( diff --git a/core/vm/delegate_reward_contract_test.go b/core/vm/delegate_reward_contract_test.go index b6766c259a..635979c1b4 100644 --- a/core/vm/delegate_reward_contract_test.go +++ b/core/vm/delegate_reward_contract_test.go @@ -1,51 +1,51 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm import ( "errors" - "github.com/PlatONnetwork/PlatON-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" "github.com/stretchr/testify/assert" "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/x/reward" + "github.com/AlayaNetwork/Alaya-Go/x/reward" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mock" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) func generateStk(rewardPer uint16, delegateTotal *big.Int, blockNumber uint64) (staking.ValArrIndexQueue, staking.ValidatorQueue, staking.Candidate, staking.Delegation) { diff --git a/core/vm/eips.go b/core/vm/eips.go index 4793ac8f05..2ad80887e9 100644 --- a/core/vm/eips.go +++ b/core/vm/eips.go @@ -17,7 +17,7 @@ package vm import ( - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" "github.com/holiman/uint256" ) diff --git a/core/vm/evm.go b/core/vm/evm.go index 93320ec6f5..93d9322888 100644 --- a/core/vm/evm.go +++ b/core/vm/evm.go @@ -24,13 +24,13 @@ import ( "github.com/holiman/uint256" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/params" ) // emptyCodeHash is used by create to ensure deployment is disallowed to already diff --git a/core/vm/gas_table.go b/core/vm/gas_table.go index c1345fc17b..5ab83df41a 100644 --- a/core/vm/gas_table.go +++ b/core/vm/gas_table.go @@ -18,9 +18,9 @@ package vm import ( "errors" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/params" ) // memoryGasCost calculates the quadratic gas for memory expansion. It does so diff --git a/core/vm/gas_table_test.go b/core/vm/gas_table_test.go index 153c9f6428..b9843b0839 100644 --- a/core/vm/gas_table_test.go +++ b/core/vm/gas_table_test.go @@ -18,16 +18,16 @@ package vm import ( "context" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/params" "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) func TestMemoryGasCost(t *testing.T) { diff --git a/core/vm/gas_test.go b/core/vm/gas_test.go index f02c347a06..e4b04f7670 100644 --- a/core/vm/gas_test.go +++ b/core/vm/gas_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm diff --git a/core/vm/gen_structlog.go b/core/vm/gen_structlog.go index 9c1c8951ea..3d3c85220e 100644 --- a/core/vm/gen_structlog.go +++ b/core/vm/gen_structlog.go @@ -6,9 +6,9 @@ import ( "encoding/json" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" ) var _ = (*structLogMarshaling)(nil) diff --git a/core/vm/gov_contract.go b/core/vm/gov_contract.go index bac97ba2d6..934e704c75 100644 --- a/core/vm/gov_contract.go +++ b/core/vm/gov_contract.go @@ -1,33 +1,33 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" ) const ( diff --git a/core/vm/gov_contract_test.go b/core/vm/gov_contract_test.go index 48a944d517..1a0c19e7d8 100644 --- a/core/vm/gov_contract_test.go +++ b/core/vm/gov_contract_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -22,22 +22,22 @@ import ( "math/big" "testing" - //"github.com/PlatONnetwork/PlatON-Go/log" + //"github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" - "github.com/PlatONnetwork/PlatON-Go/node" + "github.com/AlayaNetwork/Alaya-Go/node" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common/mock" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/common" - commonvm "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + commonvm "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) var ( diff --git a/core/vm/instructions.go b/core/vm/instructions.go index 68e79075c8..e3a57787ce 100644 --- a/core/vm/instructions.go +++ b/core/vm/instructions.go @@ -21,10 +21,10 @@ import ( "github.com/holiman/uint256" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/params" "golang.org/x/crypto/sha3" ) diff --git a/core/vm/instructions_test.go b/core/vm/instructions_test.go index 1b88f3da1e..c20f0a9857 100644 --- a/core/vm/instructions_test.go +++ b/core/vm/instructions_test.go @@ -20,13 +20,13 @@ import ( "bytes" "encoding/json" "fmt" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto" "github.com/holiman/uint256" "io/ioutil" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/params" ) type TwoOperandTestcase struct { diff --git a/core/vm/interface.go b/core/vm/interface.go index 1279feb883..400a4e461f 100644 --- a/core/vm/interface.go +++ b/core/vm/interface.go @@ -19,8 +19,8 @@ package vm import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // StateDB is an EVM database for full state querying. diff --git a/core/vm/interpreter.go b/core/vm/interpreter.go index 0df14754da..182f66c625 100644 --- a/core/vm/interpreter.go +++ b/core/vm/interpreter.go @@ -21,8 +21,8 @@ import ( "hash" "sync/atomic" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" ) // Config are the configuration options for the Interpreter diff --git a/core/vm/interpreter_test.go b/core/vm/interpreter_test.go index efd723a7cc..fcfdf93214 100644 --- a/core/vm/interpreter_test.go +++ b/core/vm/interpreter_test.go @@ -5,10 +5,10 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/common/mock" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/params" ) type account struct{} diff --git a/core/vm/jump_table.go b/core/vm/jump_table.go index ebe00b001c..c85db56f57 100644 --- a/core/vm/jump_table.go +++ b/core/vm/jump_table.go @@ -18,7 +18,7 @@ package vm import ( "errors" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" ) type ( diff --git a/core/vm/logger.go b/core/vm/logger.go index 44b444c4ee..15ab5dc2b0 100644 --- a/core/vm/logger.go +++ b/core/vm/logger.go @@ -25,12 +25,12 @@ import ( "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) var errTraceLimitReached = errors.New("the number of logs reached the specified limit") diff --git a/core/vm/logger_test.go b/core/vm/logger_test.go index 568d0704ad..617f05eeb7 100644 --- a/core/vm/logger_test.go +++ b/core/vm/logger_test.go @@ -18,16 +18,16 @@ package vm import ( "bytes" - "github.com/PlatONnetwork/PlatON-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/common/mock" "github.com/holiman/uint256" "math/big" "strings" "testing" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/params" ) type dummyContractRef struct { diff --git a/core/vm/memory_table_test.go b/core/vm/memory_table_test.go index a266e4e60e..417bc1400c 100644 --- a/core/vm/memory_table_test.go +++ b/core/vm/memory_table_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm diff --git a/core/vm/memory_test.go b/core/vm/memory_test.go index 04f62b6d8a..36a8f8c297 100644 --- a/core/vm/memory_test.go +++ b/core/vm/memory_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -22,7 +22,7 @@ import ( "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) func TestSet(t *testing.T) { diff --git a/core/vm/opcodes_test.go b/core/vm/opcodes_test.go index dc3f63889a..e1093d0849 100644 --- a/core/vm/opcodes_test.go +++ b/core/vm/opcodes_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm diff --git a/core/vm/platon_contract_test.go b/core/vm/platon_contract_test.go index 51bad4005c..ef8f518571 100644 --- a/core/vm/platon_contract_test.go +++ b/core/vm/platon_contract_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -24,24 +24,24 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/params" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mock" - cvm "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" - "github.com/PlatONnetwork/PlatON-Go/x/restricting" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/params" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/mock" + cvm "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/x/restricting" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) func init() { diff --git a/core/vm/platon_contract_tool.go b/core/vm/platon_contract_tool.go index 9cef128deb..2c3a0477ff 100644 --- a/core/vm/platon_contract_tool.go +++ b/core/vm/platon_contract_tool.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -20,12 +20,12 @@ import ( "reflect" "strconv" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) func execPlatonContract(input []byte, command map[uint16]interface{}) (ret []byte, err error) { diff --git a/core/vm/restricting_contract.go b/core/vm/restricting_contract.go index ccabd80f36..b92595534e 100644 --- a/core/vm/restricting_contract.go +++ b/core/vm/restricting_contract.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -20,12 +20,12 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" - "github.com/PlatONnetwork/PlatON-Go/x/restricting" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/x/restricting" ) const ( diff --git a/core/vm/restricting_contract_test.go b/core/vm/restricting_contract_test.go index c95eb704e0..366723f6aa 100644 --- a/core/vm/restricting_contract_test.go +++ b/core/vm/restricting_contract_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -21,12 +21,12 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" - "github.com/PlatONnetwork/PlatON-Go/x/restricting" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/x/restricting" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) // build input data for testing the create restricting plan successfully diff --git a/core/vm/runtime/env.go b/core/vm/runtime/env.go index e677d3600c..7b23116eda 100644 --- a/core/vm/runtime/env.go +++ b/core/vm/runtime/env.go @@ -17,10 +17,10 @@ package runtime import ( - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/vm" ) func NewEnv(cfg *Config) *vm.EVM { diff --git a/core/vm/runtime/evm_test.go b/core/vm/runtime/evm_test.go index e3e1b9d16a..23456c90b6 100644 --- a/core/vm/runtime/evm_test.go +++ b/core/vm/runtime/evm_test.go @@ -6,11 +6,11 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/vm" ) type account struct{} diff --git a/core/vm/runtime/runtime.go b/core/vm/runtime/runtime.go index 6519c768ae..45552239a4 100644 --- a/core/vm/runtime/runtime.go +++ b/core/vm/runtime/runtime.go @@ -22,13 +22,13 @@ import ( "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/params" ) // Config is a basic type specifying certain configuration flags for running diff --git a/core/vm/runtime/runtime_test.go b/core/vm/runtime/runtime_test.go index cbacd6aedb..98701c7fcf 100644 --- a/core/vm/runtime/runtime_test.go +++ b/core/vm/runtime/runtime_test.go @@ -20,9 +20,9 @@ import ( "strings" "testing" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/vm" ) func TestDefaults(t *testing.T) { diff --git a/core/vm/slashing_contract.go b/core/vm/slashing_contract.go index 9c8a7b7c6a..5745fb7f34 100644 --- a/core/vm/slashing_contract.go +++ b/core/vm/slashing_contract.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -20,18 +20,18 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/common/consensus" + "github.com/AlayaNetwork/Alaya-Go/common/consensus" - "github.com/PlatONnetwork/PlatON-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" ) const ( diff --git a/core/vm/slashing_contract_test.go b/core/vm/slashing_contract_test.go index 3650ce43d7..15cbc2c7ad 100644 --- a/core/vm/slashing_contract_test.go +++ b/core/vm/slashing_contract_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -22,17 +22,17 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/evidence" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/evidence" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" - "github.com/PlatONnetwork/PlatON-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/x/staking" ) func TestSlashingContract_ReportMutiSign(t *testing.T) { diff --git a/core/vm/stack_table.go b/core/vm/stack_table.go index 10217b02de..2ffc87319f 100644 --- a/core/vm/stack_table.go +++ b/core/vm/stack_table.go @@ -17,7 +17,7 @@ package vm import ( - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" ) func minSwapStack(n int) int { diff --git a/core/vm/staking_contract.go b/core/vm/staking_contract.go index f7f41ea8cb..06a83affdc 100644 --- a/core/vm/staking_contract.go +++ b/core/vm/staking_contract.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -22,28 +22,28 @@ import ( "math" "math/big" - "github.com/PlatONnetwork/PlatON-Go/x/reward" + "github.com/AlayaNetwork/Alaya-Go/x/reward" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/node" + "github.com/AlayaNetwork/Alaya-Go/node" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) const ( diff --git a/core/vm/staking_contract_test.go b/core/vm/staking_contract_test.go index 891e741198..f5522c57b8 100644 --- a/core/vm/staking_contract_test.go +++ b/core/vm/staking_contract_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -25,28 +25,28 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/node" + "github.com/AlayaNetwork/Alaya-Go/node" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/common/mock" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) func runContractSendTransaction(contract *StakingContract, params [][]byte, title string, t *testing.T) { diff --git a/core/vm/staking_contract_whitebox_test.go b/core/vm/staking_contract_whitebox_test.go index 8eac2ab2ba..e22ab9b60d 100644 --- a/core/vm/staking_contract_whitebox_test.go +++ b/core/vm/staking_contract_whitebox_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -23,20 +23,20 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/node" + "github.com/AlayaNetwork/Alaya-Go/node" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/plugin" ) /** diff --git a/core/vm/validator_inner_contract.go b/core/vm/validator_inner_contract.go index 1a59308034..8bb6e4d630 100644 --- a/core/vm/validator_inner_contract.go +++ b/core/vm/validator_inner_contract.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vm @@ -26,13 +26,13 @@ import ( "encoding/binary" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const ( diff --git a/core/vm/wagon_runtime.go b/core/vm/wagon_runtime.go index c1b6d7ec90..cedad6d6e9 100644 --- a/core/vm/wagon_runtime.go +++ b/core/vm/wagon_runtime.go @@ -7,16 +7,16 @@ import ( "golang.org/x/crypto/ripemd160" - "github.com/PlatONnetwork/PlatON-Go/common" - imath "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + imath "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/PlatONnetwork/wagon/exec" "github.com/PlatONnetwork/wagon/wasm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/params" "math/big" "reflect" diff --git a/core/vm/wagon_runtime_test.go b/core/vm/wagon_runtime_test.go index 66f8f0bf70..15eb8d0f54 100644 --- a/core/vm/wagon_runtime_test.go +++ b/core/vm/wagon_runtime_test.go @@ -12,19 +12,19 @@ import ( "strings" "testing" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" "golang.org/x/crypto/ripemd160" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mock" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common/math" "github.com/PlatONnetwork/wagon/exec" "github.com/stretchr/testify/assert" @@ -1276,7 +1276,7 @@ var testCase = []*Case{ }, }, - // platon clone error + // alaya clone error { ctx: &VMContext{ gasTable: params.GasTableConstantinople, diff --git a/core/vm/wagon_utils.go b/core/vm/wagon_utils.go index 9c2ec24db3..8243fb3643 100644 --- a/core/vm/wagon_utils.go +++ b/core/vm/wagon_utils.go @@ -3,9 +3,9 @@ package vm import ( "bytes" "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/PlatONnetwork/wagon/exec" "github.com/PlatONnetwork/wagon/validate" diff --git a/core/vm/wagon_utils_test.go b/core/vm/wagon_utils_test.go index a1488e6a6f..7e2ceb2a8c 100644 --- a/core/vm/wagon_utils_test.go +++ b/core/vm/wagon_utils_test.go @@ -5,7 +5,7 @@ import ( "io/ioutil" "testing" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/stretchr/testify/assert" ) diff --git a/core/vm/wasm_engine.go b/core/vm/wasm_engine.go index ae234e3e1e..de6d33ef53 100644 --- a/core/vm/wasm_engine.go +++ b/core/vm/wasm_engine.go @@ -3,14 +3,14 @@ package vm import ( "context" "fmt" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" "hash/fnv" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/core/lru" + "github.com/AlayaNetwork/Alaya-Go/core/lru" "github.com/PlatONnetwork/wagon/exec" "github.com/pkg/errors" diff --git a/core/vm/wasm_engine_test.go b/core/vm/wasm_engine_test.go index e9587ef687..c9c8e4cabe 100644 --- a/core/vm/wasm_engine_test.go +++ b/core/vm/wasm_engine_test.go @@ -7,11 +7,11 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/mock" ) func TestWasmRun(t *testing.T) { diff --git a/core/vm/wasm_interpreter.go b/core/vm/wasm_interpreter.go index 7e977c83cd..b3f822c7a0 100644 --- a/core/vm/wasm_interpreter.go +++ b/core/vm/wasm_interpreter.go @@ -4,7 +4,7 @@ import ( "errors" "fmt" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" ) var ( diff --git a/core/vm/wasm_interpreter_test.go b/core/vm/wasm_interpreter_test.go index 28b5f69ebd..553ba15b8b 100644 --- a/core/vm/wasm_interpreter_test.go +++ b/core/vm/wasm_interpreter_test.go @@ -7,8 +7,8 @@ import ( "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/mock" ) func TestWASMInterpreterRun(t *testing.T) { diff --git a/crypto/bls/bls.go b/crypto/bls/bls.go index cb078f85a3..603b3e61b6 100644 --- a/crypto/bls/bls.go +++ b/crypto/bls/bls.go @@ -15,9 +15,9 @@ import ( "strings" "unsafe" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) // Init -- diff --git a/crypto/bls/bls_test.go b/crypto/bls/bls_test.go index c999e21687..5545fdd65a 100644 --- a/crypto/bls/bls_test.go +++ b/crypto/bls/bls_test.go @@ -3,14 +3,14 @@ package bls import ( "testing" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) import ( "bytes" "fmt" "strconv" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) var unitN = 0 diff --git a/crypto/bls/schnorrNIZK.go b/crypto/bls/schnorrNIZK.go index 2f205058c4..0e5c028a97 100644 --- a/crypto/bls/schnorrNIZK.go +++ b/crypto/bls/schnorrNIZK.go @@ -8,8 +8,8 @@ import ( "io" "strings" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // Match only 128 hex char length proof diff --git a/crypto/bls/schnorrNIZK_test.go b/crypto/bls/schnorrNIZK_test.go index 195eb8cc1b..aef2113c52 100644 --- a/crypto/bls/schnorrNIZK_test.go +++ b/crypto/bls/schnorrNIZK_test.go @@ -5,7 +5,7 @@ import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) func TestSchnorrNIZK(t *testing.T) { diff --git a/crypto/bn256/bn256_fast.go b/crypto/bn256/bn256_fast.go index f4b97ff09f..e90c27ca87 100644 --- a/crypto/bn256/bn256_fast.go +++ b/crypto/bn256/bn256_fast.go @@ -7,7 +7,7 @@ // Package bn256 implements the Optimal Ate pairing over a 256-bit Barreto-Naehrig curve. package bn256 -import "github.com/PlatONnetwork/PlatON-Go/crypto/bn256/cloudflare" +import "github.com/AlayaNetwork/Alaya-Go/crypto/bn256/cloudflare" // G1 is an abstract cyclic group. The zero value is suitable for use as the // output of an operation, but cannot be used as an input. diff --git a/crypto/bn256/bn256_fuzz.go b/crypto/bn256/bn256_fuzz.go index 0c7ce8d6d8..0b3556f799 100644 --- a/crypto/bn256/bn256_fuzz.go +++ b/crypto/bn256/bn256_fuzz.go @@ -10,8 +10,8 @@ import ( "bytes" "math/big" - cloudflare "github.com/PlatONnetwork/PlatON-Go/crypto/bn256/cloudflare" - google "github.com/PlatONnetwork/PlatON-Go/crypto/bn256/google" + cloudflare "github.com/AlayaNetwork/Alaya-Go/crypto/bn256/cloudflare" + google "github.com/AlayaNetwork/Alaya-Go/crypto/bn256/google" ) // FuzzAdd fuzzez bn256 addition between the Google and Cloudflare libraries. diff --git a/crypto/bn256/bn256_slow.go b/crypto/bn256/bn256_slow.go index af3d95fd68..486685cb30 100644 --- a/crypto/bn256/bn256_slow.go +++ b/crypto/bn256/bn256_slow.go @@ -7,7 +7,7 @@ // Package bn256 implements the Optimal Ate pairing over a 256-bit Barreto-Naehrig curve. package bn256 -import "github.com/PlatONnetwork/PlatON-Go/crypto/bn256/google" +import "github.com/AlayaNetwork/Alaya-Go/crypto/bn256/google" // G1 is an abstract cyclic group. The zero value is suitable for use as the // output of an operation, but cannot be used as an input. diff --git a/crypto/crypto.go b/crypto/crypto.go index f50b7e9942..cbebf1036b 100644 --- a/crypto/crypto.go +++ b/crypto/crypto.go @@ -29,10 +29,10 @@ import ( "math/big" "os" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var ( diff --git a/crypto/crypto_test.go b/crypto/crypto_test.go index 55c65cffd9..1b163a4e1a 100644 --- a/crypto/crypto_test.go +++ b/crypto/crypto_test.go @@ -26,8 +26,8 @@ import ( "reflect" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" ) var testAddrString = "atx1ju8gz29tsd8gatqh4w8rsyhszpnceau3f69x3g" diff --git a/crypto/ecies/ecies_test.go b/crypto/ecies/ecies_test.go index e0dafd2124..7e1e620d23 100644 --- a/crypto/ecies/ecies_test.go +++ b/crypto/ecies/ecies_test.go @@ -39,7 +39,7 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) // Ensure the KDF generates appropriately sized keys. diff --git a/crypto/ecies/params.go b/crypto/ecies/params.go index 1762de4106..c25a118a9b 100644 --- a/crypto/ecies/params.go +++ b/crypto/ecies/params.go @@ -42,7 +42,7 @@ import ( "fmt" "hash" - ethcrypto "github.com/PlatONnetwork/PlatON-Go/crypto" + ethcrypto "github.com/AlayaNetwork/Alaya-Go/crypto" ) var ( diff --git a/crypto/rfc6979/rfc6979.go b/crypto/rfc6979/rfc6979.go index c0081978b9..457a51e850 100644 --- a/crypto/rfc6979/rfc6979.go +++ b/crypto/rfc6979/rfc6979.go @@ -6,7 +6,7 @@ import ( "hash" "math/big" "crypto/sha256" - "github.com/PlatONnetwork/PlatON-Go/crypto/secp256k1" + "github.com/AlayaNetwork/Alaya-Go/crypto/secp256k1" "crypto/ecdsa" ) diff --git a/crypto/rfc6979/rfc6979_test.go b/crypto/rfc6979/rfc6979_test.go index fd8baab4c9..b9a6a937c3 100644 --- a/crypto/rfc6979/rfc6979_test.go +++ b/crypto/rfc6979/rfc6979_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package rfc6979 @@ -22,7 +22,7 @@ import ( "crypto/sha256" "encoding/hex" "fmt" - "github.com/PlatONnetwork/PlatON-Go/crypto/secp256k1" + "github.com/AlayaNetwork/Alaya-Go/crypto/secp256k1" "math/big" "testing" ) diff --git a/crypto/secp256k1/secp256.go b/crypto/secp256k1/secp256.go index f6fe00e637..cfcff989f5 100644 --- a/crypto/secp256k1/secp256.go +++ b/crypto/secp256k1/secp256.go @@ -28,7 +28,7 @@ import ( "errors" "math/big" "unsafe" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common/math" ) var context *C.secp256k1_context diff --git a/crypto/signature_cgo.go b/crypto/signature_cgo.go index be4d8f05d8..67b65c635f 100644 --- a/crypto/signature_cgo.go +++ b/crypto/signature_cgo.go @@ -23,8 +23,8 @@ import ( "crypto/elliptic" "fmt" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/crypto/secp256k1" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/crypto/secp256k1" ) // Ecrecover returns the uncompressed public key that created the given signature. diff --git a/crypto/signature_test.go b/crypto/signature_test.go index 428474b98b..3d4b758d83 100644 --- a/crypto/signature_test.go +++ b/crypto/signature_test.go @@ -22,9 +22,9 @@ import ( "reflect" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" ) var ( diff --git a/crypto/vrf/vrf.go b/crypto/vrf/vrf.go index 015ede9c0c..026d7418d0 100644 --- a/crypto/vrf/vrf.go +++ b/crypto/vrf/vrf.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vrf diff --git a/crypto/vrf/vrf_secp256k1.go b/crypto/vrf/vrf_secp256k1.go index 89422feb88..d6b84badf7 100644 --- a/crypto/vrf/vrf_secp256k1.go +++ b/crypto/vrf/vrf_secp256k1.go @@ -24,8 +24,8 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/crypto/rfc6979" - "github.com/PlatONnetwork/PlatON-Go/crypto/secp256k1" + "github.com/AlayaNetwork/Alaya-Go/crypto/rfc6979" + "github.com/AlayaNetwork/Alaya-Go/crypto/secp256k1" ) const ( diff --git a/crypto/vrf/vrf_test.go b/crypto/vrf/vrf_test.go index 828cf805f3..3177b7256c 100644 --- a/crypto/vrf/vrf_test.go +++ b/crypto/vrf/vrf_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package vrf diff --git a/eth/api.go b/eth/api.go index 8956e72298..43345d98a7 100644 --- a/eth/api.go +++ b/eth/api.go @@ -26,17 +26,17 @@ import ( "os" "strings" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/internal/ethapi" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/rpc" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/internal/ethapi" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/trie" ) // PrivateMinerAPI provides private RPC methods to control the miner. diff --git a/eth/api_backend.go b/eth/api_backend.go index ef6ee6cc18..feb550a001 100644 --- a/eth/api_backend.go +++ b/eth/api_backend.go @@ -20,24 +20,24 @@ import ( "context" "math/big" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - - "github.com/PlatONnetwork/PlatON-Go/consensus" - - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/bloombits" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/eth/gasprice" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + + "github.com/AlayaNetwork/Alaya-Go/consensus" + + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/bloombits" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/eth/gasprice" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // EthAPIBackend implements ethapi.Backend for full nodes diff --git a/eth/api_tps_cal.go b/eth/api_tps_cal.go index b2cfafe20c..6a48acb49c 100644 --- a/eth/api_tps_cal.go +++ b/eth/api_tps_cal.go @@ -10,11 +10,11 @@ import ( "strconv" "time" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/rpc" "github.com/tealeg/xlsx" ) diff --git a/eth/api_tracer.go b/eth/api_tracer.go index 07a64356b0..050f78dd74 100644 --- a/eth/api_tracer.go +++ b/eth/api_tracer.go @@ -26,21 +26,21 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/eth/tracers" - "github.com/PlatONnetwork/PlatON-Go/internal/ethapi" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/rpc" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/eth/tracers" + "github.com/AlayaNetwork/Alaya-Go/internal/ethapi" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/trie" ) const ( diff --git a/eth/api_tx_maker.go b/eth/api_tx_maker.go index cf0034db78..c53420057d 100644 --- a/eth/api_tx_maker.go +++ b/eth/api_tx_maker.go @@ -13,22 +13,22 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" "github.com/mroth/weightedrand" - "github.com/PlatONnetwork/PlatON-Go/event" + "github.com/AlayaNetwork/Alaya-Go/event" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" ) const ( diff --git a/eth/backend.go b/eth/backend.go index 11cae53e16..d64fe835c5 100644 --- a/eth/backend.go +++ b/eth/backend.go @@ -25,42 +25,42 @@ import ( "sync" "sync/atomic" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/wal" - - "github.com/PlatONnetwork/PlatON-Go/x/gov" - - "github.com/PlatONnetwork/PlatON-Go/x/handler" - - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/evidence" - - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft" - ctypes "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/validator" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/bloombits" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/eth/filters" - "github.com/PlatONnetwork/PlatON-Go/eth/gasprice" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/internal/ethapi" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/miner" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rpc" - xplugin "github.com/PlatONnetwork/PlatON-Go/x/plugin" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/wal" + + "github.com/AlayaNetwork/Alaya-Go/x/gov" + + "github.com/AlayaNetwork/Alaya-Go/x/handler" + + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/evidence" + + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft" + ctypes "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/validator" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/bloombits" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/eth/filters" + "github.com/AlayaNetwork/Alaya-Go/eth/gasprice" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/internal/ethapi" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/miner" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rpc" + xplugin "github.com/AlayaNetwork/Alaya-Go/x/plugin" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) type LesServer interface { @@ -301,7 +301,7 @@ func New(ctx *node.ServiceContext, config *Config) (*Ethereum, error) { //eth.mpcPool = core.NewMPCPool(config.MPCPool, eth.chainConfig, eth.blockchain) //eth.vcPool = core.NewVCPool(config.VCPool, eth.chainConfig, eth.blockchain) - // modify by platon remove consensusCache + // modify by alaya remove consensusCache //var consensusCache *cbft.Cache = cbft.NewCache(eth.blockchain) currentBlock := eth.blockchain.CurrentBlock() diff --git a/eth/bloombits.go b/eth/bloombits.go index 553d447200..edd0571d7a 100644 --- a/eth/bloombits.go +++ b/eth/bloombits.go @@ -20,13 +20,13 @@ import ( "context" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/bitutil" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/bloombits" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/bitutil" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/bloombits" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" ) const ( diff --git a/eth/config.go b/eth/config.go index ec27e82d49..46234d1b44 100644 --- a/eth/config.go +++ b/eth/config.go @@ -20,13 +20,13 @@ import ( "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/eth/gasprice" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/eth/gasprice" ) // DefaultConfig contains default settings for use on the Ethereum main net. diff --git a/eth/downloader/api.go b/eth/downloader/api.go index 7f2df79d43..e9009fe1b6 100644 --- a/eth/downloader/api.go +++ b/eth/downloader/api.go @@ -20,9 +20,9 @@ import ( "context" "sync" - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/rpc" + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // PublicDownloaderAPI provides an API which gives information about the current synchronisation status. diff --git a/eth/downloader/downloader.go b/eth/downloader/downloader.go index 79863ed27b..fc31d3e192 100644 --- a/eth/downloader/downloader.go +++ b/eth/downloader/downloader.go @@ -25,17 +25,17 @@ import ( "sync/atomic" "time" - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/metrics" - "github.com/PlatONnetwork/PlatON-Go/params" + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/params" ) const ( @@ -641,7 +641,7 @@ func (d *Downloader) fetchPPOSInfo(p *peerConnection) (latest *types.Header, piv } //setFastSyncStatus set status to snapshot db when fast sync begin -//if the user close platon when sync not finish,set status fail +//if the user close alaya when sync not finish,set status fail //if the sync is complete,will del the key func (d *Downloader) setFastSyncStatus(status uint16) error { key := []byte(KeyFastSyncStatus) diff --git a/eth/downloader/downloader_test.go b/eth/downloader/downloader_test.go index 6c77944718..d3d7c55318 100644 --- a/eth/downloader/downloader_test.go +++ b/eth/downloader/downloader_test.go @@ -28,18 +28,18 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/log" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/trie" - _ "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/log" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/trie" + _ "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) var logger = log.New("test", "down") diff --git a/eth/downloader/fakepeer.go b/eth/downloader/fakepeer.go index 515017497f..02bdf6c346 100644 --- a/eth/downloader/fakepeer.go +++ b/eth/downloader/fakepeer.go @@ -22,14 +22,14 @@ import ( "github.com/syndtr/goleveldb/leveldb/iterator" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/log" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/log" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" ) // FakePeer is a mock downloader peer that operates on a local database instance diff --git a/eth/downloader/metrics.go b/eth/downloader/metrics.go index f9c95a705f..02f85b9756 100644 --- a/eth/downloader/metrics.go +++ b/eth/downloader/metrics.go @@ -19,7 +19,7 @@ package downloader import ( - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics" ) var ( diff --git a/eth/downloader/peer.go b/eth/downloader/peer.go index 8cb8521984..9a02a99b9b 100644 --- a/eth/downloader/peer.go +++ b/eth/downloader/peer.go @@ -29,9 +29,9 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" ) const ( diff --git a/eth/downloader/queue.go b/eth/downloader/queue.go index f9b9c47a19..02ccaab447 100644 --- a/eth/downloader/queue.go +++ b/eth/downloader/queue.go @@ -25,11 +25,11 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/prque" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/prque" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/metrics" ) var ( diff --git a/eth/downloader/statesync.go b/eth/downloader/statesync.go index ec88b5e870..4c70d29cf1 100644 --- a/eth/downloader/statesync.go +++ b/eth/downloader/statesync.go @@ -22,13 +22,13 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/trie" ) // stateReq represents a batch of state fetch requests grouped together into diff --git a/eth/downloader/testchan_test.go b/eth/downloader/testchan_test.go index 73d7636c27..7465b11b2e 100644 --- a/eth/downloader/testchan_test.go +++ b/eth/downloader/testchan_test.go @@ -5,14 +5,14 @@ import ( "math/big" "math/rand" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/params" ) // Test chain parameters. diff --git a/eth/downloader/types.go b/eth/downloader/types.go index 2fa2bb796b..847707d2e7 100644 --- a/eth/downloader/types.go +++ b/eth/downloader/types.go @@ -19,7 +19,7 @@ package downloader import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // peerDropFn is a callback type for dropping a peer detected as malicious. diff --git a/eth/fetcher/fetcher.go b/eth/fetcher/fetcher.go index 97d1265baf..53d781eba0 100644 --- a/eth/fetcher/fetcher.go +++ b/eth/fetcher/fetcher.go @@ -22,11 +22,11 @@ import ( "math/rand" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/prque" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/prque" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" ) const ( diff --git a/eth/fetcher/fetcher_test.go b/eth/fetcher/fetcher_test.go index a4a78829c3..03435c24ec 100644 --- a/eth/fetcher/fetcher_test.go +++ b/eth/fetcher/fetcher_test.go @@ -24,14 +24,14 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/params" ) var ( diff --git a/eth/fetcher/metrics.go b/eth/fetcher/metrics.go index b117691e85..ab3532f032 100644 --- a/eth/fetcher/metrics.go +++ b/eth/fetcher/metrics.go @@ -19,7 +19,7 @@ package fetcher import ( - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics" ) var ( diff --git a/eth/filters/api.go b/eth/filters/api.go index ba64f41cff..292841621e 100644 --- a/eth/filters/api.go +++ b/eth/filters/api.go @@ -25,13 +25,13 @@ import ( "sync" "time" - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/rpc" + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) var ( diff --git a/eth/filters/api_test.go b/eth/filters/api_test.go index 6875568c70..0aec13f195 100644 --- a/eth/filters/api_test.go +++ b/eth/filters/api_test.go @@ -21,8 +21,8 @@ import ( "fmt" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) func TestUnmarshalJSONNewFilterArgs(t *testing.T) { diff --git a/eth/filters/bench_test.go b/eth/filters/bench_test.go index 89609a37e2..f15b17b050 100644 --- a/eth/filters/bench_test.go +++ b/eth/filters/bench_test.go @@ -22,14 +22,14 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/bitutil" - "github.com/PlatONnetwork/PlatON-Go/core/bloombits" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/node" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/bitutil" + "github.com/AlayaNetwork/Alaya-Go/core/bloombits" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/node" ) func BenchmarkBloomBits512(b *testing.B) { @@ -63,7 +63,7 @@ func BenchmarkBloomBits32k(b *testing.B) { const benchFilterCnt = 2000 func benchmarkBloomBits(b *testing.B, sectionSize uint64) { - benchDataDir := node.DefaultDataDir() + "/platon/chaindata" + benchDataDir := node.DefaultDataDir() + "/alaya/chaindata" fmt.Println("Running bloombits benchmark section size:", sectionSize) db, err := rawdb.NewLevelDBDatabase(benchDataDir, 128, 1024, "") @@ -157,7 +157,7 @@ func clearBloomBits(db ethdb.Database) { } func BenchmarkNoBloomBits(b *testing.B) { - benchDataDir := node.DefaultDataDir() + "/platon/chaindata" + benchDataDir := node.DefaultDataDir() + "/alaya/chaindata" fmt.Println("Running benchmark without bloombits") db, err := rawdb.NewLevelDBDatabase(benchDataDir, 128, 1024, "") if err != nil { diff --git a/eth/filters/filter.go b/eth/filters/filter.go index 0683acd6c2..96dbfae154 100644 --- a/eth/filters/filter.go +++ b/eth/filters/filter.go @@ -21,13 +21,13 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/bloombits" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/bloombits" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) type Backend interface { diff --git a/eth/filters/filter_system.go b/eth/filters/filter_system.go index 54ba9728a6..af31d3ef9f 100644 --- a/eth/filters/filter_system.go +++ b/eth/filters/filter_system.go @@ -25,14 +25,14 @@ import ( "sync" "time" - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rpc" + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // Type determines the kind of filter and is used to put the filter in to diff --git a/eth/filters/filter_system_test.go b/eth/filters/filter_system_test.go index 211f198b90..30dbd6528b 100644 --- a/eth/filters/filter_system_test.go +++ b/eth/filters/filter_system_test.go @@ -25,19 +25,19 @@ import ( "testing" "time" - ethereum "github.com/PlatONnetwork/PlatON-Go" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/bloombits" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rpc" - _ "github.com/PlatONnetwork/PlatON-Go/x/xcom" + ethereum "github.com/AlayaNetwork/Alaya-Go" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/bloombits" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rpc" + _ "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) type testBackend struct { diff --git a/eth/filters/filter_test.go b/eth/filters/filter_test.go index 31a2dd6716..810626ec3b 100644 --- a/eth/filters/filter_test.go +++ b/eth/filters/filter_test.go @@ -23,17 +23,17 @@ import ( "os" "testing" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft" - "github.com/PlatONnetwork/PlatON-Go/node" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft" + "github.com/AlayaNetwork/Alaya-Go/node" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/params" ) func makeReceipt(addr common.Address) *types.Receipt { diff --git a/eth/gasprice/gasprice.go b/eth/gasprice/gasprice.go index a3f32a1f77..2d655ca58a 100644 --- a/eth/gasprice/gasprice.go +++ b/eth/gasprice/gasprice.go @@ -22,11 +22,11 @@ import ( "sort" "sync" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/internal/ethapi" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/internal/ethapi" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) var maxPrice = big.NewInt(500 * params.GVon) diff --git a/eth/gen_config.go b/eth/gen_config.go index d314b73aa0..45f5b40419 100644 --- a/eth/gen_config.go +++ b/eth/gen_config.go @@ -6,11 +6,11 @@ import ( "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/types" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/eth/gasprice" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/types" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/eth/gasprice" ) var _ = (*configMarshaling)(nil) diff --git a/eth/handler.go b/eth/handler.go index 9c4351efc9..5d8853c389 100644 --- a/eth/handler.go +++ b/eth/handler.go @@ -1,18 +1,18 @@ -// Copyright 2015 The PlatON-Go Authors -// This file is part of the PlatON-Go library. +// Copyright 2015 The Alaya-Go Authors +// This file is part of the Alaya-Go library. // // The go-PlatON 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package eth @@ -30,20 +30,20 @@ import ( "github.com/syndtr/goleveldb/leveldb/iterator" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/eth/fetcher" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/eth/fetcher" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const ( diff --git a/eth/handler_test.go b/eth/handler_test.go index 5e76ed1d69..c302ad2ad6 100644 --- a/eth/handler_test.go +++ b/eth/handler_test.go @@ -23,17 +23,17 @@ import ( "math/rand" "testing" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/params" ) // Tests that protocol versions and modes of operations are matched up properly. diff --git a/eth/helper_test.go b/eth/helper_test.go index ce51d66755..2d34dd18ec 100644 --- a/eth/helper_test.go +++ b/eth/helper_test.go @@ -27,22 +27,22 @@ import ( "sync" "testing" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" - _ "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" + _ "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) var ( diff --git a/eth/metrics.go b/eth/metrics.go index 0f87b38e8a..c71e231ed8 100644 --- a/eth/metrics.go +++ b/eth/metrics.go @@ -17,9 +17,9 @@ package eth import ( - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/metrics" - "github.com/PlatONnetwork/PlatON-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/p2p" ) var ( diff --git a/eth/peer.go b/eth/peer.go index d151df6c47..b264a79c96 100644 --- a/eth/peer.go +++ b/eth/peer.go @@ -23,16 +23,16 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" mapset "github.com/deckarep/golang-set" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var ( diff --git a/eth/protocol.go b/eth/protocol.go index cf00c027e6..4e86c14a71 100644 --- a/eth/protocol.go +++ b/eth/protocol.go @@ -21,11 +21,11 @@ import ( "io" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // Constants to match up protocol versions and messages diff --git a/eth/protocol_test.go b/eth/protocol_test.go index e81f209c51..f74a24cc10 100644 --- a/eth/protocol_test.go +++ b/eth/protocol_test.go @@ -23,12 +23,12 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) func init() { diff --git a/eth/sync.go b/eth/sync.go index b244508544..1f733714e2 100644 --- a/eth/sync.go +++ b/eth/sync.go @@ -22,11 +22,11 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) const ( @@ -172,7 +172,7 @@ func (pm *ProtocolManager) synchronise(peer *peer) { bn := currentBlock.Number() pHead, pBn := peer.Head() - //modified by platon + //modified by alaya diff := new(big.Int).Sub(pBn, bn) if diff.Cmp(big.NewInt(2)) < 0 { return diff --git a/eth/sync_test.go b/eth/sync_test.go index e14327973a..4c74971be3 100644 --- a/eth/sync_test.go +++ b/eth/sync_test.go @@ -21,9 +21,9 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) // Tests that fast sync gets disabled as soon as a real block is successfully diff --git a/eth/tracers/tracer.go b/eth/tracers/tracer.go index 6891aa3613..e2030da852 100644 --- a/eth/tracers/tracer.go +++ b/eth/tracers/tracer.go @@ -25,11 +25,11 @@ import ( "time" "unsafe" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" duktape "gopkg.in/olebedev/go-duktape.v3" ) diff --git a/eth/tracers/tracer_test.go b/eth/tracers/tracer_test.go index cef7d15e8a..4006debfa1 100644 --- a/eth/tracers/tracer_test.go +++ b/eth/tracers/tracer_test.go @@ -21,14 +21,14 @@ import ( "context" "encoding/json" "errors" - "github.com/PlatONnetwork/PlatON-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/state" "math/big" "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/params" ) type account struct{} diff --git a/eth/tracers/tracers.go b/eth/tracers/tracers.go index f08e5c11f6..3c0d92915c 100644 --- a/eth/tracers/tracers.go +++ b/eth/tracers/tracers.go @@ -21,7 +21,7 @@ import ( "strings" "unicode" - "github.com/PlatONnetwork/PlatON-Go/eth/tracers/internal/tracers" + "github.com/AlayaNetwork/Alaya-Go/eth/tracers/internal/tracers" ) // all contains all the built in JavaScript tracers by name. diff --git a/eth/tracers/tracers_test.go b/eth/tracers/tracers_test.go index 7320d24ca4..ccbe91afff 100644 --- a/eth/tracers/tracers_test.go +++ b/eth/tracers/tracers_test.go @@ -19,10 +19,10 @@ package tracers import ( "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/core" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/core" ) // To generate a new callTracer test, copy paste the makeTest method below into diff --git a/ethclient/ethclient.go b/ethclient/ethclient.go index 5912636d47..07c3d95c29 100644 --- a/ethclient/ethclient.go +++ b/ethclient/ethclient.go @@ -24,14 +24,14 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/params" - - platon "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/params" + + platon "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // Client defines typed wrappers for the Ethereum RPC API. diff --git a/ethclient/ethclient_test.go b/ethclient/ethclient_test.go index c82bf8986a..47b3e08462 100644 --- a/ethclient/ethclient_test.go +++ b/ethclient/ethclient_test.go @@ -22,8 +22,8 @@ import ( "reflect" "testing" - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/common" + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/common" ) // Verify that Client implements the ethereum interfaces. diff --git a/ethclient/signer.go b/ethclient/signer.go index 36258688f9..3277afafb4 100644 --- a/ethclient/signer.go +++ b/ethclient/signer.go @@ -20,8 +20,8 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // senderFromServer is a types.Signer that remembers the sender address returned by the RPC diff --git a/ethdb/leveldb/leveldb.go b/ethdb/leveldb/leveldb.go index 9fde7473e0..98f3e1307a 100644 --- a/ethdb/leveldb/leveldb.go +++ b/ethdb/leveldb/leveldb.go @@ -34,10 +34,10 @@ import ( "github.com/syndtr/goleveldb/leveldb/opt" "github.com/syndtr/goleveldb/leveldb/util" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/metrics" ) const ( diff --git a/ethdb/memorydb/memorydb.go b/ethdb/memorydb/memorydb.go index e05c3a0e27..a8256c8445 100644 --- a/ethdb/memorydb/memorydb.go +++ b/ethdb/memorydb/memorydb.go @@ -23,8 +23,8 @@ import ( "strings" "sync" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/ethdb" ) var ( diff --git a/ethstats/ethstats.go b/ethstats/ethstats.go index b4889078e9..cb69679d98 100644 --- a/ethstats/ethstats.go +++ b/ethstats/ethstats.go @@ -29,17 +29,17 @@ import ( "strings" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/les" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/les" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/rpc" "golang.org/x/net/websocket" ) @@ -374,7 +374,7 @@ func (s *Service) login(conn *websocket.Conn) error { var network, protocol string if info := infos.Protocols["platon"]; info != nil { network = fmt.Sprintf("%d", info.(*eth.NodeInfo).Network) - protocol = fmt.Sprintf("platon/%d", eth.ProtocolVersions[0]) + protocol = fmt.Sprintf("alaya/%d", eth.ProtocolVersions[0]) } else { network = fmt.Sprintf("%d", infos.Protocols["les"].(*les.NodeInfo).Network) protocol = fmt.Sprintf("les/%d", les.ClientProtocolVersions[0]) diff --git a/event/example_feed_test.go b/event/example_feed_test.go index 6e1eb1d650..a453647fa0 100644 --- a/event/example_feed_test.go +++ b/event/example_feed_test.go @@ -19,7 +19,7 @@ package event_test import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/event" + "github.com/AlayaNetwork/Alaya-Go/event" ) func ExampleFeed_acknowledgedEvents() { diff --git a/event/example_scope_test.go b/event/example_scope_test.go index a067c89bf4..c8cb54d3c7 100644 --- a/event/example_scope_test.go +++ b/event/example_scope_test.go @@ -20,7 +20,7 @@ import ( "fmt" "sync" - "github.com/PlatONnetwork/PlatON-Go/event" + "github.com/AlayaNetwork/Alaya-Go/event" ) // This example demonstrates how SubscriptionScope can be used to control the lifetime of diff --git a/event/example_subscription_test.go b/event/example_subscription_test.go index c372df7f60..d3dc310e35 100644 --- a/event/example_subscription_test.go +++ b/event/example_subscription_test.go @@ -19,7 +19,7 @@ package event_test import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/event" + "github.com/AlayaNetwork/Alaya-Go/event" ) func ExampleNewSubscription() { diff --git a/event/subscription.go b/event/subscription.go index a1f3f6aa55..33500eac9b 100644 --- a/event/subscription.go +++ b/event/subscription.go @@ -21,7 +21,7 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" ) // Subscription represents a stream of events. The carrier of the events is typically a diff --git a/go.mod b/go.mod index 9819d9be01..06e3559ce6 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module github.com/PlatONnetwork/PlatON-Go +module github.com/AlayaNetwork/Alaya-Go go 1.13 diff --git a/interfaces.go b/interfaces.go index 08cc5ff07a..92bf841b0f 100644 --- a/interfaces.go +++ b/interfaces.go @@ -22,8 +22,8 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // NotFound is returned by API methods if the requested item does not exist. diff --git a/internal/cmdtest/test_cmd.go b/internal/cmdtest/test_cmd.go index e92e89b6e2..50e5040c41 100644 --- a/internal/cmdtest/test_cmd.go +++ b/internal/cmdtest/test_cmd.go @@ -53,7 +53,7 @@ type TestCmd struct { } // Run exec's the current binary using name as argv[0] which will trigger the -// reexec init function for that name (e.g. "platon-test" in cmd/platon/run_test.go) +// reexec init function for that name (e.g. "alaya-test" in cmd/alaya/run_test.go) func (tt *TestCmd) Run(name string, args ...string) { tt.stderr = &testlogger{t: tt.T} tt.cmd = &exec.Cmd{ @@ -77,7 +77,7 @@ func (tt *TestCmd) Run(name string, args ...string) { // InputLine writes the given text to the childs stdin. // This method can also be called from an expect template, e.g.: // -// platon.expect(`Passphrase: {{.InputLine "password"}}`) +// alaya.expect(`Passphrase: {{.InputLine "password"}}`) func (tt *TestCmd) InputLine(s string) string { io.WriteString(tt.stdin, s+"\n") return "" diff --git a/internal/debug/api.go b/internal/debug/api.go index c351485af6..559c1dabbc 100644 --- a/internal/debug/api.go +++ b/internal/debug/api.go @@ -34,9 +34,9 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) func GetLogVerbosity() log.Lvl { diff --git a/internal/debug/flags.go b/internal/debug/flags.go index 9077c23a68..bec5edaa5b 100644 --- a/internal/debug/flags.go +++ b/internal/debug/flags.go @@ -24,10 +24,10 @@ import ( "os" "runtime" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/log/term" - "github.com/PlatONnetwork/PlatON-Go/metrics" - "github.com/PlatONnetwork/PlatON-Go/metrics/exp" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log/term" + "github.com/AlayaNetwork/Alaya-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics/exp" "github.com/fjl/memsize/memsizeui" "github.com/mattn/go-colorable" "gopkg.in/urfave/cli.v1" diff --git a/internal/debug/trace.go b/internal/debug/trace.go index 731b4d9cde..8fa71b7e35 100644 --- a/internal/debug/trace.go +++ b/internal/debug/trace.go @@ -23,7 +23,7 @@ import ( "os" "runtime/trace" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) // StartGoTrace turns on tracing, writing to the given file. diff --git a/internal/ethapi/addrlock.go b/internal/ethapi/addrlock.go index 30b4b339f8..5cff0522b7 100644 --- a/internal/ethapi/addrlock.go +++ b/internal/ethapi/addrlock.go @@ -19,7 +19,7 @@ package ethapi import ( "sync" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) type AddrLocker struct { diff --git a/internal/ethapi/api.go b/internal/ethapi/api.go index 5e4a0820aa..5668aefa9d 100644 --- a/internal/ethapi/api.go +++ b/internal/ethapi/api.go @@ -24,7 +24,7 @@ import ( "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi" "strings" @@ -32,21 +32,21 @@ import ( "github.com/syndtr/goleveldb/leveldb" "github.com/syndtr/goleveldb/leveldb/util" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // PublicEthereumAPI provides an API to access Ethereum related information. diff --git a/internal/ethapi/backend.go b/internal/ethapi/backend.go index 3004a04ee8..6fc9c38c4b 100644 --- a/internal/ethapi/backend.go +++ b/internal/ethapi/backend.go @@ -21,18 +21,18 @@ import ( "context" "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // Backend interface provides the common API services (that are provided by diff --git a/internal/flags/helpers.go b/internal/flags/helpers.go index 251fa6bac2..055be732fc 100644 --- a/internal/flags/helpers.go +++ b/internal/flags/helpers.go @@ -22,7 +22,7 @@ import ( cli "gopkg.in/urfave/cli.v1" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" ) var ( diff --git a/internal/guide/guide_test.go b/internal/guide/guide_test.go index cc66812862..46021906da 100644 --- a/internal/guide/guide_test.go +++ b/internal/guide/guide_test.go @@ -30,8 +30,8 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // Tests that the account management snippets work correctly. diff --git a/internal/jsre/jsre.go b/internal/jsre/jsre.go index 4f0fc2239a..1fd1afd143 100644 --- a/internal/jsre/jsre.go +++ b/internal/jsre/jsre.go @@ -26,8 +26,8 @@ import ( "math/rand" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/internal/jsre/deps" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/internal/jsre/deps" "github.com/robertkrimen/otto" ) diff --git a/internal/web3ext/web3ext.go b/internal/web3ext/web3ext.go index 8be6bb5bb8..553d15db9a 100644 --- a/internal/web3ext/web3ext.go +++ b/internal/web3ext/web3ext.go @@ -14,7 +14,7 @@ // You should have received a copy of the GNU Lesser General Public License // along with the go-ethereum library. If not, see . -// package web3ext contains platon specific web3.js extensions. +// package web3ext contains alaya specific web3.js extensions. package web3ext var Modules = map[string]string{ diff --git a/les/api_backend.go b/les/api_backend.go index 825e121348..444f1ee995 100644 --- a/les/api_backend.go +++ b/les/api_backend.go @@ -20,25 +20,25 @@ import ( "context" "math/big" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - - "github.com/PlatONnetwork/PlatON-Go/consensus" - - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/bloombits" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/eth/gasprice" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/light" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + + "github.com/AlayaNetwork/Alaya-Go/consensus" + + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/bloombits" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/eth/gasprice" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/light" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) type LesApiBackend struct { diff --git a/les/backend.go b/les/backend.go index ce17f60b05..ea4a12e70b 100644 --- a/les/backend.go +++ b/les/backend.go @@ -21,28 +21,28 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/bloombits" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/eth/filters" - "github.com/PlatONnetwork/PlatON-Go/eth/gasprice" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/internal/ethapi" - "github.com/PlatONnetwork/PlatON-Go/light" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discv5" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/bloombits" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/eth/filters" + "github.com/AlayaNetwork/Alaya-Go/eth/gasprice" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/internal/ethapi" + "github.com/AlayaNetwork/Alaya-Go/light" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discv5" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) type LightEthereum struct { diff --git a/les/bloombits.go b/les/bloombits.go index 5966908ef5..bb25498dba 100644 --- a/les/bloombits.go +++ b/les/bloombits.go @@ -19,8 +19,8 @@ package les import ( "time" - "github.com/PlatONnetwork/PlatON-Go/common/bitutil" - "github.com/PlatONnetwork/PlatON-Go/light" + "github.com/AlayaNetwork/Alaya-Go/common/bitutil" + "github.com/AlayaNetwork/Alaya-Go/light" ) const ( diff --git a/les/commons.go b/les/commons.go index 5cca7f1171..b9cddb2afc 100644 --- a/les/commons.go +++ b/les/commons.go @@ -19,14 +19,14 @@ package les import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/light" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/light" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" ) // lesCommons contains fields needed by both server and client. diff --git a/les/fetcher.go b/les/fetcher.go index 690c0dc5d3..afe9bdf470 100644 --- a/les/fetcher.go +++ b/les/fetcher.go @@ -22,13 +22,13 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/light" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/light" + "github.com/AlayaNetwork/Alaya-Go/log" ) const ( diff --git a/les/flowcontrol/control.go b/les/flowcontrol/control.go index 9b964d0b85..90306b2e1e 100644 --- a/les/flowcontrol/control.go +++ b/les/flowcontrol/control.go @@ -21,7 +21,7 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" ) const fcTimeConst = time.Millisecond diff --git a/les/flowcontrol/manager.go b/les/flowcontrol/manager.go index 5027b6b847..a59c735466 100644 --- a/les/flowcontrol/manager.go +++ b/les/flowcontrol/manager.go @@ -21,7 +21,7 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" ) const rcConst = 1000000 diff --git a/les/freeclient.go b/les/freeclient.go index 2c2e7985ad..54044a3caa 100644 --- a/les/freeclient.go +++ b/les/freeclient.go @@ -23,11 +23,11 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" - "github.com/PlatONnetwork/PlatON-Go/common/prque" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/common/prque" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // freeClientPool implements a client database that limits the connection time diff --git a/les/freeclient_test.go b/les/freeclient_test.go index fec098ee55..b4a454502d 100644 --- a/les/freeclient_test.go +++ b/les/freeclient_test.go @@ -24,9 +24,9 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" ) func TestFreeClientPoolL10C100(t *testing.T) { diff --git a/les/handler.go b/les/handler.go index 9a20b114e5..0afb07e15b 100644 --- a/les/handler.go +++ b/les/handler.go @@ -26,25 +26,25 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/light" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discv5" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/light" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discv5" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/trie" ) const ( @@ -186,7 +186,7 @@ func (pm *ProtocolManager) Start(maxPeers int) { func (pm *ProtocolManager) Stop() { // Showing a log message. During download / process this could actually // take between 5 to 10 seconds and therefor feedback is required. - log.Info("Stopping light PlatON-Go protocol") + log.Info("Stopping light Alaya-Go protocol") // Quit the sync loop. // After this send has completed, no new peers will be accepted. @@ -206,7 +206,7 @@ func (pm *ProtocolManager) Stop() { // Wait for any process action pm.wg.Wait() - log.Info("Light PlatON-Go protocol stopped") + log.Info("Light Alaya-Go protocol stopped") } // runPeer is the p2p protocol run function for the given version. @@ -248,7 +248,7 @@ func (pm *ProtocolManager) handle(p *peer) error { return p2p.DiscTooManyPeers } - p.Log().Debug("Light PlatON-Go peer connected", "name", p.Name()) + p.Log().Debug("Light Alaya-Go peer connected", "name", p.Name()) // Execute the LES handshake var ( @@ -258,7 +258,7 @@ func (pm *ProtocolManager) handle(p *peer) error { number = head.Number.Uint64() ) if err := p.Handshake(hash, number, genesis.Hash(), pm.server); err != nil { - p.Log().Debug("Light PlatON-Go handshake failed", "err", err) + p.Log().Debug("Light Alaya-Go handshake failed", "err", err) return err } @@ -279,7 +279,7 @@ func (pm *ProtocolManager) handle(p *peer) error { } // Register the peer locally if err := pm.peers.Register(p); err != nil { - p.Log().Error("Light PlatON-Go peer registration failed", "err", err) + p.Log().Error("Light Alaya-Go peer registration failed", "err", err) return err } defer func() { @@ -319,7 +319,7 @@ func (pm *ProtocolManager) handle(p *peer) error { // main loop. handle incoming messages. for { if err := pm.handleMsg(p); err != nil { - p.Log().Debug("Light PlatON-Go message handling failed", "err", err) + p.Log().Debug("Light Alaya-Go message handling failed", "err", err) return err } } @@ -335,7 +335,7 @@ func (pm *ProtocolManager) handleMsg(p *peer) error { if err != nil { return err } - p.Log().Trace("Light PlatON-Go message arrived", "code", msg.Code, "bytes", msg.Size) + p.Log().Trace("Light Alaya-Go message arrived", "code", msg.Code, "bytes", msg.Size) costs := p.fcCosts[msg.Code] reject := func(reqCnt, maxCnt uint64) bool { diff --git a/les/handler_test.go b/les/handler_test.go index 14558198b3..fae059f8c2 100644 --- a/les/handler_test.go +++ b/les/handler_test.go @@ -22,16 +22,16 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/light" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/light" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/trie" ) func expectResponse(r p2p.MsgReader, msgcode, reqID, bv uint64, data interface{}) error { diff --git a/les/helper_test.go b/les/helper_test.go index 5a8a2b2d10..a255b6e56a 100644 --- a/les/helper_test.go +++ b/les/helper_test.go @@ -26,23 +26,23 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/les/flowcontrol" - "github.com/PlatONnetwork/PlatON-Go/light" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" - _ "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/les/flowcontrol" + "github.com/AlayaNetwork/Alaya-Go/light" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" + _ "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) var ( diff --git a/les/metrics.go b/les/metrics.go index 01c41e78da..973efc0ebd 100644 --- a/les/metrics.go +++ b/les/metrics.go @@ -17,8 +17,8 @@ package les import ( - "github.com/PlatONnetwork/PlatON-Go/metrics" - "github.com/PlatONnetwork/PlatON-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/p2p" ) var ( diff --git a/les/odr.go b/les/odr.go index 565c43aa98..bc9c978181 100644 --- a/les/odr.go +++ b/les/odr.go @@ -19,10 +19,10 @@ package les import ( "context" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/light" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/light" + "github.com/AlayaNetwork/Alaya-Go/log" ) // LesOdr implements light.OdrBackend diff --git a/les/odr_requests.go b/les/odr_requests.go index aa4fe2cd7a..f72c960add 100644 --- a/les/odr_requests.go +++ b/les/odr_requests.go @@ -23,15 +23,15 @@ import ( "errors" "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/light" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/light" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/trie" ) var ( diff --git a/les/odr_test.go b/les/odr_test.go index 440fcaf1f5..ff89b59f1a 100644 --- a/les/odr_test.go +++ b/les/odr_test.go @@ -23,17 +23,17 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/light" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/light" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) type odrTestFn func(ctx context.Context, db ethdb.Database, config *params.ChainConfig, bc *core.BlockChain, lc *light.LightChain, bhash common.Hash) []byte diff --git a/les/peer.go b/les/peer.go index aeaef6c548..c9824897ed 100644 --- a/les/peer.go +++ b/les/peer.go @@ -25,13 +25,13 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/les/flowcontrol" - "github.com/PlatONnetwork/PlatON-Go/light" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/les/flowcontrol" + "github.com/AlayaNetwork/Alaya-Go/light" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var ( diff --git a/les/protocol.go b/les/protocol.go index 4ceb8bdcdd..0823a2b456 100644 --- a/les/protocol.go +++ b/les/protocol.go @@ -25,12 +25,12 @@ import ( "fmt" "io" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/secp256k1" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/secp256k1" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // Constants to match up protocol versions and messages diff --git a/les/request_test.go b/les/request_test.go index fe32d2fb49..708cb7a117 100644 --- a/les/request_test.go +++ b/les/request_test.go @@ -21,11 +21,11 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/light" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/light" ) var testBankSecureTrieKey = secAddr(testBankAddress) diff --git a/les/retrieve.go b/les/retrieve.go index 6730930cc7..d4bb825ba9 100644 --- a/les/retrieve.go +++ b/les/retrieve.go @@ -26,8 +26,8 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" - "github.com/PlatONnetwork/PlatON-Go/light" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/light" ) var ( diff --git a/les/server.go b/les/server.go index 51e1c42d83..3c490b0265 100644 --- a/les/server.go +++ b/les/server.go @@ -23,18 +23,18 @@ import ( "math" "sync" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/les/flowcontrol" - "github.com/PlatONnetwork/PlatON-Go/light" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discv5" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/les/flowcontrol" + "github.com/AlayaNetwork/Alaya-Go/light" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discv5" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) type LesServer struct { diff --git a/les/serverpool.go b/les/serverpool.go index 49ee87193a..6e4f0ad498 100644 --- a/les/serverpool.go +++ b/les/serverpool.go @@ -27,13 +27,13 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/discv5" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discv5" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const ( diff --git a/les/sync.go b/les/sync.go index 487b38f344..e92b5c24a7 100644 --- a/les/sync.go +++ b/les/sync.go @@ -20,8 +20,8 @@ import ( "context" "time" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/light" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/light" "math/big" ) diff --git a/les/txrelay.go b/les/txrelay.go index fc9f860775..642b369037 100644 --- a/les/txrelay.go +++ b/les/txrelay.go @@ -19,8 +19,8 @@ package les import ( "sync" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) type ltrInfo struct { diff --git a/light/lightchain.go b/light/lightchain.go index d48bc4dfb5..c59f92584e 100644 --- a/light/lightchain.go +++ b/light/lightchain.go @@ -25,17 +25,17 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/hashicorp/golang-lru" ) diff --git a/light/lightchain_test.go b/light/lightchain_test.go index 4995bd156b..6d954d5406 100644 --- a/light/lightchain_test.go +++ b/light/lightchain_test.go @@ -21,14 +21,14 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/params" - _ "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/params" + _ "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) // So we can deterministically seed different blockchains diff --git a/light/nodeset.go b/light/nodeset.go index 7478519845..bfa2958da1 100644 --- a/light/nodeset.go +++ b/light/nodeset.go @@ -20,10 +20,10 @@ import ( "errors" "sync" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // NodeSet stores a set of trie nodes. It implements trie.Database and can also diff --git a/light/odr.go b/light/odr.go index 1e47f41237..95733f41d3 100644 --- a/light/odr.go +++ b/light/odr.go @@ -21,11 +21,11 @@ package light import ( "context" "errors" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" ) // NoOdr is the default context passed to an ODR capable function when the ODR diff --git a/light/odr_test.go b/light/odr_test.go index 61a14fbe64..91244c6b75 100644 --- a/light/odr_test.go +++ b/light/odr_test.go @@ -24,20 +24,20 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/trie" - _ "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/trie" + _ "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) var ( diff --git a/light/odr_util.go b/light/odr_util.go index 5bdc38b5cc..18aa8c25c9 100644 --- a/light/odr_util.go +++ b/light/odr_util.go @@ -20,12 +20,12 @@ import ( "bytes" "context" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var sha3Nil = crypto.Keccak256Hash(nil) diff --git a/light/postprocess.go b/light/postprocess.go index c9d05d0b54..33d3f3d8c1 100644 --- a/light/postprocess.go +++ b/light/postprocess.go @@ -23,16 +23,16 @@ import ( "fmt" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/bitutil" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/bitutil" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/trie" ) // IndexerConfig includes a set of configs for chain indexers. diff --git a/light/trie.go b/light/trie.go index 49cd83f2c5..aacfec9a11 100644 --- a/light/trie.go +++ b/light/trie.go @@ -21,12 +21,12 @@ import ( "errors" "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/trie" ) func NewState(ctx context.Context, head *types.Header, odr OdrBackend) *state.StateDB { diff --git a/light/trie_test.go b/light/trie_test.go index a39ef4fe28..1407227802 100644 --- a/light/trie_test.go +++ b/light/trie_test.go @@ -22,13 +22,13 @@ import ( "fmt" "testing" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/trie" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/trie" "github.com/davecgh/go-spew/spew" ) diff --git a/light/txpool.go b/light/txpool.go index 6cbdb63b2d..cca7ec1feb 100644 --- a/light/txpool.go +++ b/light/txpool.go @@ -22,16 +22,16 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const ( diff --git a/light/txpool_test.go b/light/txpool_test.go index 616d9b041d..a596c8c51c 100644 --- a/light/txpool_test.go +++ b/light/txpool_test.go @@ -23,14 +23,14 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/types" - - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/types" + + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/params" ) type testTxRelay struct { diff --git a/log/format.go b/log/format.go index 876f2e0000..2f3ee323f4 100644 --- a/log/format.go +++ b/log/format.go @@ -22,7 +22,7 @@ const ( // locationTrims are trimmed for display to avoid unwieldy log lines. var locationTrims = []string{ - "github.com/PlatONnetwork/PlatON-Go/", + "github.com/AlayaNetwork/Alaya-Go/", } // PrintOrigins sets or unsets log location (file:line) printing for terminal diff --git a/metrics/cpu_enabled.go b/metrics/cpu_enabled.go index 57ea2f252b..e5e4f859f1 100644 --- a/metrics/cpu_enabled.go +++ b/metrics/cpu_enabled.go @@ -21,7 +21,7 @@ package metrics import ( "github.com/shirou/gopsutil/cpu" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) // ReadCPUStats retrieves the current CPU stats. diff --git a/metrics/cpu_syscall.go b/metrics/cpu_syscall.go index e70e7aac67..20eba6406c 100644 --- a/metrics/cpu_syscall.go +++ b/metrics/cpu_syscall.go @@ -21,7 +21,7 @@ package metrics import ( "syscall" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) // getProcessCPUTime retrieves the process' CPU time since program startup. diff --git a/metrics/exp/exp.go b/metrics/exp/exp.go index ec2406ff89..bcb11fba38 100644 --- a/metrics/exp/exp.go +++ b/metrics/exp/exp.go @@ -8,8 +8,8 @@ import ( "net/http" "sync" - "github.com/PlatONnetwork/PlatON-Go/metrics" - "github.com/PlatONnetwork/PlatON-Go/metrics/prometheus" + "github.com/AlayaNetwork/Alaya-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics/prometheus" ) type exp struct { diff --git a/metrics/influxdb/influxdb.go b/metrics/influxdb/influxdb.go index 42e4c272ce..cc915d34b3 100644 --- a/metrics/influxdb/influxdb.go +++ b/metrics/influxdb/influxdb.go @@ -7,8 +7,8 @@ import ( "github.com/influxdata/influxdb/client" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/metrics" ) type reporter struct { diff --git a/metrics/librato/librato.go b/metrics/librato/librato.go index 47ecddd67a..c8acef0a82 100644 --- a/metrics/librato/librato.go +++ b/metrics/librato/librato.go @@ -7,7 +7,7 @@ import ( "regexp" "time" - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics" ) // a regexp for extracting the unit from time.Duration.String diff --git a/metrics/metrics.go b/metrics/metrics.go index cb74fb5ee7..90586bb803 100644 --- a/metrics/metrics.go +++ b/metrics/metrics.go @@ -11,7 +11,7 @@ import ( "strings" "time" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) // Enabled is checked by the constructor functions for all of the diff --git a/metrics/prometheus/collector.go b/metrics/prometheus/collector.go index d0315fb530..d876780386 100644 --- a/metrics/prometheus/collector.go +++ b/metrics/prometheus/collector.go @@ -22,7 +22,7 @@ import ( "strconv" "strings" - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics" ) var ( diff --git a/metrics/prometheus/prometheus.go b/metrics/prometheus/prometheus.go index dad5fd9460..6c1fe1e625 100644 --- a/metrics/prometheus/prometheus.go +++ b/metrics/prometheus/prometheus.go @@ -22,8 +22,8 @@ import ( "net/http" "sort" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/metrics" ) // Handler returns an HTTP handler which dump metrics in Prometheus format. diff --git a/miner/miner.go b/miner/miner.go index 9f6ca7b9a5..a3b8989339 100644 --- a/miner/miner.go +++ b/miner/miner.go @@ -21,16 +21,16 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" ) // Backend wraps all methods required for mining. diff --git a/miner/miner_test.go b/miner/miner_test.go index 3433352e3a..6f5cedaf3f 100644 --- a/miner/miner_test.go +++ b/miner/miner_test.go @@ -5,7 +5,7 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/consensus" "github.com/stretchr/testify/assert" ) diff --git a/miner/parallel_txs_committer.go b/miner/parallel_txs_committer.go index e8d3d35686..0f662c35a9 100644 --- a/miner/parallel_txs_committer.go +++ b/miner/parallel_txs_committer.go @@ -3,10 +3,10 @@ package miner import ( "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" ) type ParallelTxsCommitter struct { diff --git a/miner/stress_cbft.go b/miner/stress_cbft.go index f9c2c9a7f6..baac60836b 100644 --- a/miner/stress_cbft.go +++ b/miner/stress_cbft.go @@ -29,19 +29,19 @@ import ( "os" "time" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/fdlimit" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/fdlimit" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" ) func main() { diff --git a/miner/txs_committer.go b/miner/txs_committer.go index 497c4fcb24..adc76dfdf4 100644 --- a/miner/txs_committer.go +++ b/miner/txs_committer.go @@ -4,13 +4,13 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" ) type TxsCommitter struct { diff --git a/miner/unconfirmed.go b/miner/unconfirmed.go index 25d1369050..755d5cf9b4 100644 --- a/miner/unconfirmed.go +++ b/miner/unconfirmed.go @@ -20,9 +20,9 @@ import ( "container/ring" "sync" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" ) // chainRetriever is used by the unconfirmed block set to verify whether a previously diff --git a/miner/unconfirmed_test.go b/miner/unconfirmed_test.go index 2110d746f1..03af3694cd 100644 --- a/miner/unconfirmed_test.go +++ b/miner/unconfirmed_test.go @@ -19,8 +19,8 @@ package miner import ( "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // noopChainRetriever is an implementation of headerRetriever that always diff --git a/miner/worker.go b/miner/worker.go index 23c9e12b00..6870051286 100644 --- a/miner/worker.go +++ b/miner/worker.go @@ -25,23 +25,23 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/gov" - - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/gov" + + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/params" ) // environment is the worker's current environment and holds all of the current state information. @@ -1256,7 +1256,7 @@ func (w *worker) makeExtraData() []byte { extra, _ := rlp.EncodeToBytes([]interface{}{ //uint(params.VersionMajor<<16 | params.VersionMinor<<8 | params.VersionPatch), gov.GetCurrentActiveVersion(w.current.state), - "platon", + "alaya", runtime.Version(), runtime.GOOS, }) diff --git a/miner/worker_inner.go b/miner/worker_inner.go index 5101e2dbc4..c5c1072a74 100644 --- a/miner/worker_inner.go +++ b/miner/worker_inner.go @@ -6,13 +6,13 @@ import ( "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/validator" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/validator" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const ( diff --git a/miner/worker_test.go b/miner/worker_test.go index 7f6c9cfa18..5a23917095 100644 --- a/miner/worker_test.go +++ b/miner/worker_test.go @@ -21,23 +21,23 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" - - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/log" - - "github.com/PlatONnetwork/PlatON-Go/core/state" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/consensus" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/params" - _ "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" + + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/log" + + "github.com/AlayaNetwork/Alaya-Go/core/state" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/consensus" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/params" + _ "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) var ( diff --git a/mobile/accounts.go b/mobile/accounts.go index fc5f019532..8dbd97ea13 100644 --- a/mobile/accounts.go +++ b/mobile/accounts.go @@ -23,10 +23,10 @@ import ( "errors" "time" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) const ( diff --git a/mobile/android_test.go b/mobile/android_test.go index 81cf23ba52..12856cbd87 100644 --- a/mobile/android_test.go +++ b/mobile/android_test.go @@ -25,7 +25,7 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/internal/build" + "github.com/AlayaNetwork/Alaya-Go/internal/build" ) // androidTestClass is a Java class to do some lightweight tests against the Android @@ -207,7 +207,7 @@ func TestAndroid(t *testing.T) { } } // Generate the mobile bindings for Geth and add the tester class - gobind := exec.Command("gomobile", "bind", "-javapkg", "org.ethereum", "github.com/PlatONnetwork/PlatON-Go/mobile") + gobind := exec.Command("gomobile", "bind", "-javapkg", "org.ethereum", "github.com/AlayaNetwork/Alaya-Go/mobile") if output, err := gobind.CombinedOutput(); err != nil { t.Logf("%s", output) t.Fatalf("failed to run gomobile bind: %v", err) diff --git a/mobile/big.go b/mobile/big.go index d9ca427de1..4774a07731 100644 --- a/mobile/big.go +++ b/mobile/big.go @@ -22,7 +22,7 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // A BigInt represents a signed multi-precision integer. diff --git a/mobile/bind.go b/mobile/bind.go index 942477db1d..2b83aa9b49 100644 --- a/mobile/bind.go +++ b/mobile/bind.go @@ -22,10 +22,10 @@ import ( "math/big" "strings" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi/bind" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi/bind" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // Signer is an interaface defining the callback when a contract requires a diff --git a/mobile/common.go b/mobile/common.go index 7d360492b4..7442a9c0ad 100644 --- a/mobile/common.go +++ b/mobile/common.go @@ -24,7 +24,7 @@ import ( "fmt" "strings" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // Hash represents the 32 byte Keccak256 hash of arbitrary data. diff --git a/mobile/discover.go b/mobile/discover.go index 468b4da210..48f6e54cd1 100644 --- a/mobile/discover.go +++ b/mobile/discover.go @@ -22,7 +22,7 @@ package platon import ( "errors" - "github.com/PlatONnetwork/PlatON-Go/p2p/discv5" + "github.com/AlayaNetwork/Alaya-Go/p2p/discv5" ) // Enode represents a host on the network. diff --git a/mobile/doc.go b/mobile/doc.go index 779b0a321e..b6555ce215 100644 --- a/mobile/doc.go +++ b/mobile/doc.go @@ -14,7 +14,7 @@ // You should have received a copy of the GNU Lesser General Public License // along with the go-ethereum library. If not, see . -// Package platon contains the simplified mobile APIs to go-ethereum. +// Package alaya contains the simplified mobile APIs to go-ethereum. // // The scope of this package is *not* to allow writing a custom Ethereum client // with pieces plucked from go-ethereum, rather to allow writing native dapps on diff --git a/mobile/ethereum.go b/mobile/ethereum.go index 1becb034d9..30d1ae1452 100644 --- a/mobile/ethereum.go +++ b/mobile/ethereum.go @@ -21,8 +21,8 @@ package platon import ( "errors" - ethereum "github.com/PlatONnetwork/PlatON-Go" - "github.com/PlatONnetwork/PlatON-Go/common" + ethereum "github.com/AlayaNetwork/Alaya-Go" + "github.com/AlayaNetwork/Alaya-Go/common" ) // Subscription represents an event subscription where events are diff --git a/mobile/init.go b/mobile/init.go index 4a1f28dc56..9dcc4ba531 100644 --- a/mobile/init.go +++ b/mobile/init.go @@ -22,7 +22,7 @@ import ( "os" "runtime" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) func init() { diff --git a/mobile/interface.go b/mobile/interface.go index 54a9357fe2..ba397d1947 100644 --- a/mobile/interface.go +++ b/mobile/interface.go @@ -22,7 +22,7 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // Interface represents a wrapped version of Go's interface{}, with the capacity diff --git a/mobile/logger.go b/mobile/logger.go index a692c041c0..e5d2bfaf9d 100644 --- a/mobile/logger.go +++ b/mobile/logger.go @@ -19,7 +19,7 @@ package platon import ( "os" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) // SetVerbosity sets the global verbosity level (between 0 and 6 - see logger/verbosity.go). diff --git a/mobile/p2p.go b/mobile/p2p.go index 8f6a76217f..40ec5acf33 100644 --- a/mobile/p2p.go +++ b/mobile/p2p.go @@ -21,7 +21,7 @@ package platon import ( "errors" - "github.com/PlatONnetwork/PlatON-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p" ) // NodeInfo represents pi short summary of the information known about the host. diff --git a/mobile/params.go b/mobile/params.go index ca6b27f01d..c470fe494d 100644 --- a/mobile/params.go +++ b/mobile/params.go @@ -21,9 +21,9 @@ package platon import ( "encoding/json" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/p2p/discv5" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/p2p/discv5" + "github.com/AlayaNetwork/Alaya-Go/params" ) // MainnetGenesis returns the JSON spec to use for the main Ethereum network. It diff --git a/mobile/platon.go b/mobile/platon.go index 47a64af82f..957e9ae313 100644 --- a/mobile/platon.go +++ b/mobile/platon.go @@ -24,19 +24,19 @@ import ( "fmt" "path/filepath" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/eth" - "github.com/PlatONnetwork/PlatON-Go/eth/downloader" - "github.com/PlatONnetwork/PlatON-Go/ethclient" - "github.com/PlatONnetwork/PlatON-Go/ethstats" - "github.com/PlatONnetwork/PlatON-Go/internal/debug" - "github.com/PlatONnetwork/PlatON-Go/les" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/nat" - "github.com/PlatONnetwork/PlatON-Go/params" - // whisper "github.com/PlatONnetwork/PlatON-Go/whisper/whisperv6" - // whisper "github.com/PlatONnetwork/PlatON-Go/whisper/whisperv6" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/eth" + "github.com/AlayaNetwork/Alaya-Go/eth/downloader" + "github.com/AlayaNetwork/Alaya-Go/ethclient" + "github.com/AlayaNetwork/Alaya-Go/ethstats" + "github.com/AlayaNetwork/Alaya-Go/internal/debug" + "github.com/AlayaNetwork/Alaya-Go/les" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/nat" + "github.com/AlayaNetwork/Alaya-Go/params" + // whisper "github.com/AlayaNetwork/Alaya-Go/whisper/whisperv6" + // whisper "github.com/AlayaNetwork/Alaya-Go/whisper/whisperv6" ) // NodeConfig represents the collection of configuration values to fine tune the Geth diff --git a/mobile/platonclient.go b/mobile/platonclient.go index 11d98ea967..51b9942a79 100644 --- a/mobile/platonclient.go +++ b/mobile/platonclient.go @@ -21,8 +21,8 @@ package platon import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/ethclient" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/ethclient" ) // EthereumClient provides access to the Ethereum APIs. diff --git a/mobile/types.go b/mobile/types.go index 73b7094382..b1ee89a399 100644 --- a/mobile/types.go +++ b/mobile/types.go @@ -24,9 +24,9 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // A Nonce is a 64-bit hash which proves (combined with the mix-hash) that diff --git a/mobile/vm.go b/mobile/vm.go index 5f5d4fd27e..bd8d495566 100644 --- a/mobile/vm.go +++ b/mobile/vm.go @@ -21,7 +21,7 @@ package platon import ( "errors" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) // Log represents a contract log event. These events are generated by the LOG diff --git a/node/api.go b/node/api.go index d280b4a565..9799cc1d0c 100644 --- a/node/api.go +++ b/node/api.go @@ -21,13 +21,13 @@ import ( "fmt" "strings" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // PrivateAdminAPI is the collection of administrative API methods exposed only diff --git a/node/config.go b/node/config.go index 4744f23c76..215527b308 100644 --- a/node/config.go +++ b/node/config.go @@ -26,17 +26,17 @@ import ( "strings" "sync" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/accounts/usbwallet" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/accounts/usbwallet" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) const ( @@ -54,7 +54,7 @@ const ( // all registered services. type Config struct { // Name sets the instance name of the node. It must not contain the / character and is - // used in the devp2p node identifier. The instance name of platon is "platon". If no + // used in the devp2p node identifier. The instance name of alaya is "alaya". If no // value is specified, the basename of the current executable is used. Name string `toml:"-"` @@ -241,8 +241,8 @@ func DefaultWSEndpoint() string { // NodeName returns the devp2p node identifier. func (c *Config) NodeName() string { name := c.name() - if name == "platon" || name == "platon-testnet" || name == "platon-betanet" || name == "platon-innertestnet" || name == "platon-innerdevnet" { - name = "PlatONnetwork" + if name == "alaya" || name == "alaya-testnet" || name == "alaya-betanet" || name == "alaya-innertestnet" || name == "alaya-innerdevnet" { + name = "AlayaNetwork" } if c.UserIdent != "" { name += "/" + c.UserIdent @@ -266,7 +266,7 @@ func (c *Config) name() string { return c.Name } -// These resources are resolved differently for "platon" instances. +// These resources are resolved differently for "alaya" instances. var isOldPlatONResource = map[string]bool{ "chaindata": true, "nodes": true, @@ -288,10 +288,10 @@ func (c *Config) ResolvePath(path string) string { return "" } // Backwards-compatibility: ensure that data directory files created - // by platon 1.4 are used if they exist. + // by alaya 1.4 are used if they exist. if warn, isOld := isOldPlatONResource[path]; isOld { oldpath := "" - if c.name() == "platon" { + if c.name() == "alaya" { oldpath = filepath.Join(c.DataDir, path) } if oldpath != "" && common.FileExist(oldpath) { diff --git a/node/config_test.go b/node/config_test.go index dd5c5f2e2d..49b24a7e34 100644 --- a/node/config_test.go +++ b/node/config_test.go @@ -24,8 +24,8 @@ import ( "runtime" "testing" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/p2p" ) // Tests that datadirs can be successfully created, be them manually configured diff --git a/node/crypto_handler.go b/node/crypto_handler.go index 0c248ab8c1..dfbeb98a6c 100755 --- a/node/crypto_handler.go +++ b/node/crypto_handler.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package node @@ -21,14 +21,14 @@ import ( "encoding/hex" "sync" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) var ( diff --git a/node/crypto_handler_test.go b/node/crypto_handler_test.go index 705e8f132c..ff933d1c6d 100755 --- a/node/crypto_handler_test.go +++ b/node/crypto_handler_test.go @@ -1,26 +1,26 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package node import ( "testing" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) var ( diff --git a/node/defaults.go b/node/defaults.go index e66b6ca735..9b5c1b7ff7 100644 --- a/node/defaults.go +++ b/node/defaults.go @@ -22,9 +22,9 @@ import ( "path/filepath" "runtime" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/nat" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/nat" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) const ( @@ -58,11 +58,11 @@ func DefaultDataDir() string { home := homeDir() if home != "" { if runtime.GOOS == "darwin" { - return filepath.Join(home, "Library", "PlatON") + return filepath.Join(home, "Library", "Alaya") } else if runtime.GOOS == "windows" { - return filepath.Join(home, "AppData", "Roaming", "PlatON") + return filepath.Join(home, "AppData", "Roaming", "Alaya") } else { - return filepath.Join(home, ".platon") + return filepath.Join(home, ".alaya") } } // As we cannot guess a stable location, return empty and handle later diff --git a/node/fake.go b/node/fake.go index b6597d4244..863c3826de 100644 --- a/node/fake.go +++ b/node/fake.go @@ -1,25 +1,25 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package node import ( "crypto/ecdsa" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) var FakeNetEnable bool = false diff --git a/node/node.go b/node/node.go index 50ecae8479..5d262f01ca 100644 --- a/node/node.go +++ b/node/node.go @@ -27,19 +27,19 @@ import ( "strings" "sync" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" "github.com/prometheus/prometheus/util/flock" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/internal/debug" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/internal/debug" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // Node is a container on which services can be registered. @@ -106,7 +106,7 @@ func New(conf *Config) (*Node, error) { return nil, errors.New(`Config.Name cannot end in ".ipc"`) } // Ensure that the AccountManager method works before the node has started. - // We rely on this in cmd/platon. + // We rely on this in cmd/alaya. am, ephemeralKeystore, err := makeAccountManager(conf) if err != nil { return nil, err diff --git a/node/node_example_test.go b/node/node_example_test.go index 7b0046327f..9fa5b0dda8 100644 --- a/node/node_example_test.go +++ b/node/node_example_test.go @@ -20,9 +20,9 @@ import ( "fmt" "log" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // SampleService is a trivial network service that can be attached to a node for diff --git a/node/node_test.go b/node/node_test.go index fdee977796..af12df4efc 100644 --- a/node/node_test.go +++ b/node/node_test.go @@ -24,9 +24,9 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) var ( diff --git a/node/service.go b/node/service.go index 38b3e90261..26bbd5fda4 100644 --- a/node/service.go +++ b/node/service.go @@ -20,13 +20,13 @@ import ( "crypto/ecdsa" "reflect" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // ServiceContext is a collection of service independent options inherited from diff --git a/node/utils_test.go b/node/utils_test.go index 3db9db1c57..9216a259f5 100644 --- a/node/utils_test.go +++ b/node/utils_test.go @@ -22,8 +22,8 @@ package node import ( "reflect" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // NoopService is a trivial implementation of the Service interface. diff --git a/p2p/consensus_dialed.go b/p2p/consensus_dialed.go index ebac544fb3..e25d8dd473 100644 --- a/p2p/consensus_dialed.go +++ b/p2p/consensus_dialed.go @@ -2,8 +2,8 @@ package p2p import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" "strings" ) diff --git a/p2p/dial.go b/p2p/dial.go index d087465aaf..4f24377175 100644 --- a/p2p/dial.go +++ b/p2p/dial.go @@ -24,9 +24,9 @@ import ( "net" "time" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/netutil" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/netutil" ) const ( diff --git a/p2p/dial_test.go b/p2p/dial_test.go index 3118fb68d2..09fc9c942b 100644 --- a/p2p/dial_test.go +++ b/p2p/dial_test.go @@ -24,8 +24,8 @@ import ( "time" "github.com/davecgh/go-spew/spew" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/netutil" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/netutil" ) func init() { diff --git a/p2p/discover/database.go b/p2p/discover/database.go index 7cf92b4382..9c77f527d7 100644 --- a/p2p/discover/database.go +++ b/p2p/discover/database.go @@ -27,9 +27,9 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/syndtr/goleveldb/leveldb" "github.com/syndtr/goleveldb/leveldb/errors" "github.com/syndtr/goleveldb/leveldb/iterator" diff --git a/p2p/discover/node.go b/p2p/discover/node.go index 7919c081d0..33fd41c98e 100644 --- a/p2p/discover/node.go +++ b/p2p/discover/node.go @@ -31,9 +31,9 @@ import ( "strings" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/secp256k1" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/secp256k1" ) const NodeIDBits = 512 diff --git a/p2p/discover/node_test.go b/p2p/discover/node_test.go index b8a077bd0b..037814d589 100644 --- a/p2p/discover/node_test.go +++ b/p2p/discover/node_test.go @@ -28,8 +28,8 @@ import ( "testing/quick" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) func ExampleNewNode() { diff --git a/p2p/discover/ntp.go b/p2p/discover/ntp.go index 5ee9b033c8..1ba4ca7e29 100644 --- a/p2p/discover/ntp.go +++ b/p2p/discover/ntp.go @@ -25,7 +25,7 @@ import ( "sort" "time" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) const ( diff --git a/p2p/discover/table.go b/p2p/discover/table.go index 26dd0c74ae..84f009cedc 100644 --- a/p2p/discover/table.go +++ b/p2p/discover/table.go @@ -32,10 +32,10 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/netutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/netutil" ) const ( diff --git a/p2p/discover/table_test.go b/p2p/discover/table_test.go index f4842088aa..df741c49c3 100644 --- a/p2p/discover/table_test.go +++ b/p2p/discover/table_test.go @@ -28,8 +28,8 @@ import ( "testing/quick" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) func TestTable_pingReplace(t *testing.T) { diff --git a/p2p/discover/udp.go b/p2p/discover/udp.go index e464ebb7c3..a41ee3fa6d 100644 --- a/p2p/discover/udp.go +++ b/p2p/discover/udp.go @@ -27,11 +27,11 @@ import ( "reflect" "time" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/nat" - "github.com/PlatONnetwork/PlatON-Go/p2p/netutil" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/nat" + "github.com/AlayaNetwork/Alaya-Go/p2p/netutil" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // Errors diff --git a/p2p/discover/udp_test.go b/p2p/discover/udp_test.go index cfe1748e7f..7c8e1ba044 100644 --- a/p2p/discover/udp_test.go +++ b/p2p/discover/udp_test.go @@ -33,9 +33,9 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/davecgh/go-spew/spew" ) diff --git a/p2p/discv5/database.go b/p2p/discv5/database.go index 2325079ee4..5435e854a7 100644 --- a/p2p/discv5/database.go +++ b/p2p/discv5/database.go @@ -28,9 +28,9 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/syndtr/goleveldb/leveldb" "github.com/syndtr/goleveldb/leveldb/errors" "github.com/syndtr/goleveldb/leveldb/iterator" diff --git a/p2p/discv5/metrics.go b/p2p/discv5/metrics.go index 9754c77ef6..0214f80a7f 100644 --- a/p2p/discv5/metrics.go +++ b/p2p/discv5/metrics.go @@ -1,6 +1,6 @@ package discv5 -import "github.com/PlatONnetwork/PlatON-Go/metrics" +import "github.com/AlayaNetwork/Alaya-Go/metrics" var ( ingressTrafficMeter = metrics.NewRegisteredMeter("discv5/InboundTraffic", nil) diff --git a/p2p/discv5/net.go b/p2p/discv5/net.go index 0f31933646..ca4c0706bd 100644 --- a/p2p/discv5/net.go +++ b/p2p/discv5/net.go @@ -24,13 +24,13 @@ import ( "net" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/netutil" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/netutil" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var ( diff --git a/p2p/discv5/net_test.go b/p2p/discv5/net_test.go index 781abe4d69..f71c1265c0 100644 --- a/p2p/discv5/net_test.go +++ b/p2p/discv5/net_test.go @@ -22,8 +22,8 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) func TestNetwork_Lookup(t *testing.T) { diff --git a/p2p/discv5/node.go b/p2p/discv5/node.go index 76fff8378a..b8a8bfe4e0 100644 --- a/p2p/discv5/node.go +++ b/p2p/discv5/node.go @@ -30,8 +30,8 @@ import ( "strconv" "strings" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) // Node represents a host on the network. diff --git a/p2p/discv5/node_test.go b/p2p/discv5/node_test.go index d8832a5087..ad5ac36913 100644 --- a/p2p/discv5/node_test.go +++ b/p2p/discv5/node_test.go @@ -27,8 +27,8 @@ import ( "testing/quick" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) func ExampleNewNode() { diff --git a/p2p/discv5/ntp.go b/p2p/discv5/ntp.go index be8e1d6a85..e977148a9b 100644 --- a/p2p/discv5/ntp.go +++ b/p2p/discv5/ntp.go @@ -26,7 +26,7 @@ import ( "strings" "time" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) const ( diff --git a/p2p/discv5/sim_test.go b/p2p/discv5/sim_test.go index 3444790814..4f59af10fa 100644 --- a/p2p/discv5/sim_test.go +++ b/p2p/discv5/sim_test.go @@ -28,7 +28,7 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // In this test, nodes try to randomly resolve each other. diff --git a/p2p/discv5/table.go b/p2p/discv5/table.go index 3418b2f829..152cbc032e 100644 --- a/p2p/discv5/table.go +++ b/p2p/discv5/table.go @@ -29,7 +29,7 @@ import ( "net" "sort" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) const ( diff --git a/p2p/discv5/table_test.go b/p2p/discv5/table_test.go index 66a96f94cc..e81ed463f9 100644 --- a/p2p/discv5/table_test.go +++ b/p2p/discv5/table_test.go @@ -27,8 +27,8 @@ import ( "testing/quick" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) type nullTransport struct{} diff --git a/p2p/discv5/ticket.go b/p2p/discv5/ticket.go index 5303a81072..fddc38beff 100644 --- a/p2p/discv5/ticket.go +++ b/p2p/discv5/ticket.go @@ -25,10 +25,10 @@ import ( "sort" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" ) const ( diff --git a/p2p/discv5/topic.go b/p2p/discv5/topic.go index bd8977a285..9162402d0e 100644 --- a/p2p/discv5/topic.go +++ b/p2p/discv5/topic.go @@ -23,8 +23,8 @@ import ( "math/rand" "time" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/log" ) const ( diff --git a/p2p/discv5/topic_test.go b/p2p/discv5/topic_test.go index 9a8a7cfc51..97fc17867c 100644 --- a/p2p/discv5/topic_test.go +++ b/p2p/discv5/topic_test.go @@ -21,8 +21,8 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" ) func TestTopicRadius(t *testing.T) { diff --git a/p2p/discv5/udp.go b/p2p/discv5/udp.go index f06ab9dd84..1f5f989bb5 100644 --- a/p2p/discv5/udp.go +++ b/p2p/discv5/udp.go @@ -24,12 +24,12 @@ import ( "net" "time" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/nat" - "github.com/PlatONnetwork/PlatON-Go/p2p/netutil" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/nat" + "github.com/AlayaNetwork/Alaya-Go/p2p/netutil" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const Version = 4 diff --git a/p2p/discv5/udp_test.go b/p2p/discv5/udp_test.go index cad9afef71..148a89f1ec 100644 --- a/p2p/discv5/udp_test.go +++ b/p2p/discv5/udp_test.go @@ -26,9 +26,9 @@ import ( "testing" "github.com/davecgh/go-spew/spew" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) func init() { diff --git a/p2p/enr/enr.go b/p2p/enr/enr.go index b30af77c7e..daea2b6318 100644 --- a/p2p/enr/enr.go +++ b/p2p/enr/enr.go @@ -34,7 +34,7 @@ import ( "io" "sort" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const SizeLimit = 300 // maximum encoded size of a node record in bytes diff --git a/p2p/enr/enr_test.go b/p2p/enr/enr_test.go index a8c412fd92..68d5286309 100644 --- a/p2p/enr/enr_test.go +++ b/p2p/enr/enr_test.go @@ -23,8 +23,8 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/p2p/enr/entries.go b/p2p/enr/entries.go index ad69cc91fd..9035e91882 100644 --- a/p2p/enr/entries.go +++ b/p2p/enr/entries.go @@ -22,8 +22,8 @@ import ( "io" "net" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // Entry is implemented by known node record entry types. diff --git a/p2p/enr/idscheme.go b/p2p/enr/idscheme.go index 390ac0dd20..f6ea2a8149 100644 --- a/p2p/enr/idscheme.go +++ b/p2p/enr/idscheme.go @@ -21,10 +21,10 @@ import ( "fmt" "sync" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // Registry of known identity schemes. diff --git a/p2p/message.go b/p2p/message.go index 3b6f332504..e500fd3fa0 100644 --- a/p2p/message.go +++ b/p2p/message.go @@ -25,9 +25,9 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // Msg defines the structure of a p2p message. diff --git a/p2p/metrics.go b/p2p/metrics.go index 85819e32a7..e1a87eaa30 100644 --- a/p2p/metrics.go +++ b/p2p/metrics.go @@ -21,7 +21,7 @@ package p2p import ( "net" - "github.com/PlatONnetwork/PlatON-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/metrics" ) var ( diff --git a/p2p/nat/nat.go b/p2p/nat/nat.go index 2da4b89bb9..2e010ddc7a 100644 --- a/p2p/nat/nat.go +++ b/p2p/nat/nat.go @@ -25,7 +25,7 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" "github.com/jackpal/go-nat-pmp" ) diff --git a/p2p/peer.go b/p2p/peer.go index ac12ceaa27..910dd165b7 100644 --- a/p2p/peer.go +++ b/p2p/peer.go @@ -25,11 +25,11 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var ( diff --git a/p2p/protocol.go b/p2p/protocol.go index 7500933780..c2f8977584 100644 --- a/p2p/protocol.go +++ b/p2p/protocol.go @@ -19,7 +19,7 @@ package p2p import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) // Protocol represents a P2P subprotocol implementation. diff --git a/p2p/protocols/protocol.go b/p2p/protocols/protocol.go index 31b65a99dc..04342ee192 100644 --- a/p2p/protocols/protocol.go +++ b/p2p/protocols/protocol.go @@ -37,12 +37,12 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/metrics" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/rlp" - // "github.com/PlatONnetwork/PlatON-Go/swarm/spancontext" - // "github.com/PlatONnetwork/PlatON-Go/swarm/tracing" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/rlp" + // "github.com/AlayaNetwork/Alaya-Go/swarm/spancontext" + // "github.com/AlayaNetwork/Alaya-Go/swarm/tracing" ) // error codes used by this protocol scheme diff --git a/p2p/protocols/protocol_test.go b/p2p/protocols/protocol_test.go index fae1edd474..bbe53981af 100644 --- a/p2p/protocols/protocol_test.go +++ b/p2p/protocols/protocol_test.go @@ -23,10 +23,10 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations/adapters" - p2ptest "github.com/PlatONnetwork/PlatON-Go/p2p/testing" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations/adapters" + p2ptest "github.com/AlayaNetwork/Alaya-Go/p2p/testing" ) // handshake message type diff --git a/p2p/rlpx.go b/p2p/rlpx.go index 9bda6db59c..a210044123 100644 --- a/p2p/rlpx.go +++ b/p2p/rlpx.go @@ -27,7 +27,7 @@ import ( "encoding/binary" "errors" "fmt" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" "hash" "io" "io/ioutil" @@ -36,12 +36,12 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/ecies" - "github.com/PlatONnetwork/PlatON-Go/crypto/secp256k1" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/ecies" + "github.com/AlayaNetwork/Alaya-Go/crypto/secp256k1" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rlp" "github.com/golang/snappy" ) diff --git a/p2p/rlpx_test.go b/p2p/rlpx_test.go index fe901208e8..1b0ed69935 100644 --- a/p2p/rlpx_test.go +++ b/p2p/rlpx_test.go @@ -31,12 +31,12 @@ import ( "time" "github.com/davecgh/go-spew/spew" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/ecies" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations/pipes" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/ecies" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations/pipes" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) func TestSharedSecret(t *testing.T) { diff --git a/p2p/server.go b/p2p/server.go index cab1a16515..dfc092a69a 100644 --- a/p2p/server.go +++ b/p2p/server.go @@ -27,19 +27,19 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/params" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mclock" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/discv5" - "github.com/PlatONnetwork/PlatON-Go/p2p/nat" - "github.com/PlatONnetwork/PlatON-Go/p2p/netutil" + "github.com/AlayaNetwork/Alaya-Go/params" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/mclock" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discv5" + "github.com/AlayaNetwork/Alaya-Go/p2p/nat" + "github.com/AlayaNetwork/Alaya-Go/p2p/netutil" ) const ( diff --git a/p2p/server_test.go b/p2p/server_test.go index 7c57b6ee20..7aeed3e3d4 100644 --- a/p2p/server_test.go +++ b/p2p/server_test.go @@ -26,10 +26,10 @@ import ( "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) func init() { diff --git a/p2p/simulations/adapters/exec.go b/p2p/simulations/adapters/exec.go index 764de98c22..482402ed54 100644 --- a/p2p/simulations/adapters/exec.go +++ b/p2p/simulations/adapters/exec.go @@ -35,11 +35,11 @@ import ( "syscall" "time" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rpc" "github.com/docker/docker/pkg/reexec" "golang.org/x/net/websocket" ) diff --git a/p2p/simulations/adapters/inproc.go b/p2p/simulations/adapters/inproc.go index 09f7e90a91..5647e5c8f2 100644 --- a/p2p/simulations/adapters/inproc.go +++ b/p2p/simulations/adapters/inproc.go @@ -23,13 +23,13 @@ import ( "net" "sync" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations/pipes" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations/pipes" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // SimAdapter is a NodeAdapter which creates in-memory simulation nodes and diff --git a/p2p/simulations/adapters/inproc_test.go b/p2p/simulations/adapters/inproc_test.go index 7c018cead6..29baf35a2e 100644 --- a/p2p/simulations/adapters/inproc_test.go +++ b/p2p/simulations/adapters/inproc_test.go @@ -23,7 +23,7 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations/pipes" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations/pipes" ) func TestTCPPipe(t *testing.T) { diff --git a/p2p/simulations/adapters/types.go b/p2p/simulations/adapters/types.go index ae472f8d4b..7eef94a2a1 100644 --- a/p2p/simulations/adapters/types.go +++ b/p2p/simulations/adapters/types.go @@ -25,11 +25,11 @@ import ( "os" "strconv" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rpc" "github.com/docker/docker/pkg/reexec" ) diff --git a/p2p/simulations/examples/ping-pong.go b/p2p/simulations/examples/ping-pong.go index 6dc35df2e2..ead8cc4615 100644 --- a/p2p/simulations/examples/ping-pong.go +++ b/p2p/simulations/examples/ping-pong.go @@ -25,13 +25,13 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations/adapters" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations/adapters" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) var adapterType = flag.String("adapter", "sim", `node adapter to use (one of "sim", "exec" or "docker")`) diff --git a/p2p/simulations/http.go b/p2p/simulations/http.go index ee400e1ac2..8ac9469e06 100644 --- a/p2p/simulations/http.go +++ b/p2p/simulations/http.go @@ -29,11 +29,11 @@ import ( "strings" "sync" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations/adapters" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations/adapters" + "github.com/AlayaNetwork/Alaya-Go/rpc" "github.com/julienschmidt/httprouter" "golang.org/x/net/websocket" ) diff --git a/p2p/simulations/http_test.go b/p2p/simulations/http_test.go index 54cdf796fb..aad4d445b3 100644 --- a/p2p/simulations/http_test.go +++ b/p2p/simulations/http_test.go @@ -27,12 +27,12 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations/adapters" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations/adapters" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // testService implements the node.Service interface and provides protocols diff --git a/p2p/simulations/mocker.go b/p2p/simulations/mocker.go index fc5b4d9ab8..2bda32559d 100644 --- a/p2p/simulations/mocker.go +++ b/p2p/simulations/mocker.go @@ -24,9 +24,9 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations/adapters" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations/adapters" ) //a map of mocker names to its function diff --git a/p2p/simulations/mocker_test.go b/p2p/simulations/mocker_test.go index 5095e286e3..7ef79935e2 100644 --- a/p2p/simulations/mocker_test.go +++ b/p2p/simulations/mocker_test.go @@ -27,7 +27,7 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) func TestMocker(t *testing.T) { diff --git a/p2p/simulations/network.go b/p2p/simulations/network.go index 8c36300ded..98e2f86bd2 100644 --- a/p2p/simulations/network.go +++ b/p2p/simulations/network.go @@ -24,11 +24,11 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations/adapters" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations/adapters" ) var DialBanTimeout = 200 * time.Millisecond diff --git a/p2p/simulations/network_test.go b/p2p/simulations/network_test.go index 00cc104908..7b7ac9c20c 100644 --- a/p2p/simulations/network_test.go +++ b/p2p/simulations/network_test.go @@ -22,8 +22,8 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations/adapters" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations/adapters" ) // TestNetworkSimulation creates a multi-node simulation network with each node diff --git a/p2p/simulations/simulation.go b/p2p/simulations/simulation.go index de9459097e..bce49c4ead 100644 --- a/p2p/simulations/simulation.go +++ b/p2p/simulations/simulation.go @@ -20,7 +20,7 @@ import ( "context" "time" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) // Simulation provides a framework for running actions in a simulated network diff --git a/p2p/testing/peerpool.go b/p2p/testing/peerpool.go index adc7a1f387..b2886acde6 100644 --- a/p2p/testing/peerpool.go +++ b/p2p/testing/peerpool.go @@ -20,8 +20,8 @@ import ( "fmt" "sync" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) type TestPeer interface { diff --git a/p2p/testing/protocolsession.go b/p2p/testing/protocolsession.go index 4680f88174..962dfd3a1b 100644 --- a/p2p/testing/protocolsession.go +++ b/p2p/testing/protocolsession.go @@ -22,10 +22,10 @@ import ( "sync" "time" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations/adapters" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations/adapters" ) var errTimedOut = errors.New("timed out") diff --git a/p2p/testing/protocoltester.go b/p2p/testing/protocoltester.go index f37526e911..5d7db0395e 100644 --- a/p2p/testing/protocoltester.go +++ b/p2p/testing/protocoltester.go @@ -32,14 +32,14 @@ import ( "sync" "testing" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations" - "github.com/PlatONnetwork/PlatON-Go/p2p/simulations/adapters" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations" + "github.com/AlayaNetwork/Alaya-Go/p2p/simulations/adapters" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // ProtocolTester is the tester environment used for unit testing protocol diff --git a/params/bootnodes.go b/params/bootnodes.go index 4e5821eec3..64491a0b2f 100644 --- a/params/bootnodes.go +++ b/params/bootnodes.go @@ -19,24 +19,12 @@ package params // MainnetBootnodes are the enode URLs of the P2P bootstrap nodes running on // the main PlatON network. var MainnetBootnodes = []string{ - "enode://81dd24640878badc06de82a82fdb0fe55f24d27877144261d81b1f39faa6686ac8f5d2489dbf97cd44d583b4b00976a8f92845378084d25c7a8bae671a543983@ms1.bfa6.platon.network:16789", - "enode://32d628cfd32d3f464666792f4fa0bf097c723045f8fe415a8015f1c3cbd0a1bba23e7c76defac277967101dc73e3bd8fc255febb7a52d77c1018ed0cbf8d3ad4@ms2.6cc3.platon.network:16789", - "enode://3b2ca03c94a2b8f36b88983d8666947dd08e15347980f95c395b36a4e69218c902894e9e2e92c5a2e0fe8b5c137732d2df40a118766245fdac88c480eb120c18@ms3.cd41.platon.network:16789", - "enode://7b5323a73e9cbffd1e6d9178f0b1d55e92649aa71ebe55a0a9c577d374a9ae21ee4980aef2a3214b6e16aa9928ee48df65a382bd2d7ec19f7b87e6d993654d17@ms4.1fda.platon.network:16789", - "enode://e6123b585a8e030b42d873d7d09b68847d1f3bba86fab84490fc29acf332a94682a8f8e1518ca857fc75391d62eaf2117703dfeed386b4e0926bf017b5cae445@ms5.ee7a.platon.network:16789", - "enode://ab2f7cdf347d4ca26f4fdf5657d7b669464c5712cddc42609ad2060691226187815f0ce87f4dca2cac3ee618d4beeeba9618dbd31c54f97af21d16b7cbf0dccd@ms6.63a8.platon.network:16789", - "enode://4c5a092156c43d5aa3dc71f9dc11d304d7631d393725b09e574577c583759e58ddc245e38f993cc0f32fe873cc782bfc1c62fbd49097eec3278b240de785800b@ms7.66dc.platon.network:16789", + "enode://81dd24640878badc06de82a82fdb0fe55f24d27877144261d81b1f39faa6686ac8f5d2489dbf97cd44d583b4b00976a8f92845378084d25c7a8bae671a543983@127.0.0.1:16789", } // TestnetBootnodes are the enode URLs of the P2P bootstrap nodes running on the test network. var TestnetBootnodes = []string{ - "enode://3fec5e5982a0b32a25168dae575c4705ab8509f266947cb8b16b62ac9eafb78d3e7efce2c31bac447edce3446a12b71383a41dcbdbe80fa856d8739b0214ff35@ts1.7757.platon.network:16789", - "enode://da6e4c410df2128a79e13179e744b5d28a704c2ea8d729bf63aa3c6f75afed24ef01385380560a5d607f63bda23a9a1e6bf2848e7793f3ea9b59e12f35e662a1@ts2.c72f.platon.network:16789", - "enode://bf4c161ec0d0854bc4161a4831f15312f9115bdeb0e262022d24c3f17ca06f693f0e36c09412d165155232b11c2d77b5e5c58a805fb4d4533f648b1babd51040@ts3.0464.platon.network:16789", - "enode://9f3ebc1ddf763e47626d7a13d4f501fcd0d83db8cc4fa26b7a2658ad41e76d29ffa8bb6354ff71d5e22d079a570a07333a3312a59350a75b625850e5819fcbd0@ts4.31e0.platon.network:16789", - "enode://18820d5df0684e7871643351573f095d99c5c6ecb26021627c60ff55c6d146f5b9984d43cc55f9efaaf043b40628a1c2a770e7e891878e1dc168a3acb7e05dc6@ts5.5eb0.platon.network:16789", - "enode://991f577221be7a18800ab8ae8eb3214ef3e1fa0be4a161c9cd95100b56e95df677aa12dc624aaedc073c5b48367df0351a4955e91290f19fba8c37413cf5b5e0@ts6.8847.platon.network:16789", - "enode://86fbd54d03786d924ee33d1fe15542c4ceb528a058c955e42327f0c528db7b2494aecc814b361b4f501950f46aca4c2926e255e6542db991546e0540d24a9d35@ts7.72f5.platon.network:16789", + "enode://3fec5e5982a0b32a25168dae575c4705ab8509f266947cb8b16b62ac9eafb78d3e7efce2c31bac447edce3446a12b71383a41dcbdbe80fa856d8739b0214ff35@127.0.0.1:16789", } // DiscoveryV5Bootnodes are the enode URLs of the P2P bootstrap nodes for the diff --git a/params/config.go b/params/config.go index fc6a3d7255..6a3ea05691 100644 --- a/params/config.go +++ b/params/config.go @@ -20,9 +20,9 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) // Genesis hashes to enforce below configs on. diff --git a/rlp/encode_test.go b/rlp/encode_test.go index a2754a57bf..d7d0096a05 100644 --- a/rlp/encode_test.go +++ b/rlp/encode_test.go @@ -29,7 +29,7 @@ import ( "sync" "testing" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" ) type testEncoder struct { diff --git a/rpc/client.go b/rpc/client.go index d92841447d..64763c5e8b 100644 --- a/rpc/client.go +++ b/rpc/client.go @@ -32,7 +32,7 @@ import ( "sync/atomic" "time" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) var ( @@ -352,7 +352,7 @@ func (c *Client) BatchCallContext(ctx context.Context, b []BatchElem) error { return err } -// EthSubscribe registers a subscripion under the "platon" namespace. +// EthSubscribe registers a subscripion under the "alaya" namespace. func (c *Client) EthSubscribe(ctx context.Context, channel interface{}, args ...interface{}) (*ClientSubscription, error) { return c.Subscribe(ctx, "platon", channel, args...) } diff --git a/rpc/client_example_test.go b/rpc/client_example_test.go index b2cd5fdbca..7d9022ab4b 100644 --- a/rpc/client_example_test.go +++ b/rpc/client_example_test.go @@ -22,7 +22,7 @@ import ( "math/big" "time" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) // In this example, our client whishes to track the latest 'block number' diff --git a/rpc/client_test.go b/rpc/client_test.go index 5f95e298ab..d9d1299f7d 100644 --- a/rpc/client_test.go +++ b/rpc/client_test.go @@ -30,7 +30,7 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" "github.com/davecgh/go-spew/spew" ) diff --git a/rpc/endpoints.go b/rpc/endpoints.go index f401776ef6..0d4c38646a 100644 --- a/rpc/endpoints.go +++ b/rpc/endpoints.go @@ -19,7 +19,7 @@ package rpc import ( "net" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) // StartHTTPEndpoint starts the HTTP RPC endpoint, configured with cors/vhosts/modules diff --git a/rpc/http.go b/rpc/http.go index 2c46a74265..761b69e2c6 100644 --- a/rpc/http.go +++ b/rpc/http.go @@ -33,7 +33,7 @@ import ( "github.com/rs/cors" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) const ( diff --git a/rpc/ipc.go b/rpc/ipc.go index 5b0d875e08..ee803ae707 100644 --- a/rpc/ipc.go +++ b/rpc/ipc.go @@ -20,8 +20,8 @@ import ( "context" "net" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/netutil" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/netutil" ) // ServeListener accepts connections on l, serving JSON-RPC on them. diff --git a/rpc/json.go b/rpc/json.go index 631822c060..b89094823c 100644 --- a/rpc/json.go +++ b/rpc/json.go @@ -26,7 +26,7 @@ import ( "strings" "sync" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) const ( diff --git a/rpc/server.go b/rpc/server.go index ae9a78be46..07c9cc71f8 100644 --- a/rpc/server.go +++ b/rpc/server.go @@ -27,7 +27,7 @@ import ( mapset "github.com/deckarep/golang-set" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) const MetadataApi = "rpc" diff --git a/rpc/subscription_test.go b/rpc/subscription_test.go index 1a2c02b3ec..8d2bf6bfad 100644 --- a/rpc/subscription_test.go +++ b/rpc/subscription_test.go @@ -216,7 +216,7 @@ func waitForMessages(t *testing.T, in *json.Decoder, successes chan<- jsonSucces // for multiple different namespaces. func TestSubscriptionMultipleNamespaces(t *testing.T) { var ( - //namespaces = []string{"platon", "shh", "bzz"} + //namespaces = []string{"alaya", "shh", "bzz"} namespaces = []string{"platon"} service = NotificationTestService{} subCount = len(namespaces) * 2 diff --git a/rpc/types.go b/rpc/types.go index d1cd1065a4..8c462e7fad 100644 --- a/rpc/types.go +++ b/rpc/types.go @@ -25,7 +25,7 @@ import ( mapset "github.com/deckarep/golang-set" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" ) // API describes the set of methods offered over the RPC interface diff --git a/rpc/types_test.go b/rpc/types_test.go index df34cb46a9..adfbeff767 100644 --- a/rpc/types_test.go +++ b/rpc/types_test.go @@ -20,7 +20,7 @@ import ( "encoding/json" "testing" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common/math" ) func TestBlockNumberJSONUnmarshal(t *testing.T) { diff --git a/rpc/websocket.go b/rpc/websocket.go index 5523653cd5..32671bbdeb 100644 --- a/rpc/websocket.go +++ b/rpc/websocket.go @@ -31,7 +31,7 @@ import ( "time" mapset "github.com/deckarep/golang-set" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" "golang.org/x/net/websocket" ) diff --git a/signer/core/abihelper.go b/signer/core/abihelper.go index ede8403df0..4acbfb2fa2 100644 --- a/signer/core/abihelper.go +++ b/signer/core/abihelper.go @@ -22,8 +22,8 @@ import ( "io/ioutil" "strings" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi" + "github.com/AlayaNetwork/Alaya-Go/common" "bytes" "os" diff --git a/signer/core/abihelper_test.go b/signer/core/abihelper_test.go index 66c00fb885..3cbd72d25d 100644 --- a/signer/core/abihelper_test.go +++ b/signer/core/abihelper_test.go @@ -25,8 +25,8 @@ import ( "math/big" "reflect" - "github.com/PlatONnetwork/PlatON-Go/accounts/abi" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/accounts/abi" + "github.com/AlayaNetwork/Alaya-Go/common" ) func verify(t *testing.T, jsondata, calldata string, exp []interface{}) { diff --git a/signer/core/api.go b/signer/core/api.go index ca0814deaa..404087881e 100644 --- a/signer/core/api.go +++ b/signer/core/api.go @@ -25,15 +25,15 @@ import ( "math/big" "reflect" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/accounts/usbwallet" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/internal/ethapi" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/accounts/usbwallet" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/internal/ethapi" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // ExternalAPI defines the external API through which signing requests are made. diff --git a/signer/core/api_test.go b/signer/core/api_test.go index c732645075..dbf5abe3b9 100644 --- a/signer/core/api_test.go +++ b/signer/core/api_test.go @@ -27,13 +27,13 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/accounts/keystore" - "github.com/PlatONnetwork/PlatON-Go/cmd/utils" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/internal/ethapi" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/accounts/keystore" + "github.com/AlayaNetwork/Alaya-Go/cmd/utils" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/internal/ethapi" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) //Used for testing diff --git a/signer/core/auditlog.go b/signer/core/auditlog.go index 96507989c9..a6dfecba23 100644 --- a/signer/core/auditlog.go +++ b/signer/core/auditlog.go @@ -21,11 +21,11 @@ import ( "encoding/json" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/internal/ethapi" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/internal/ethapi" + "github.com/AlayaNetwork/Alaya-Go/log" ) type AuditLogger struct { diff --git a/signer/core/cliui.go b/signer/core/cliui.go index 4f6e2051e6..504631ac53 100644 --- a/signer/core/cliui.go +++ b/signer/core/cliui.go @@ -24,9 +24,9 @@ import ( "sync" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/internal/ethapi" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/internal/ethapi" + "github.com/AlayaNetwork/Alaya-Go/log" "github.com/davecgh/go-spew/spew" "golang.org/x/crypto/ssh/terminal" ) diff --git a/signer/core/stdioui.go b/signer/core/stdioui.go index 8ed41a1c07..5ad94fba33 100644 --- a/signer/core/stdioui.go +++ b/signer/core/stdioui.go @@ -21,9 +21,9 @@ import ( "context" "sync" - "github.com/PlatONnetwork/PlatON-Go/internal/ethapi" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rpc" + "github.com/AlayaNetwork/Alaya-Go/internal/ethapi" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rpc" ) type StdIOUI struct { diff --git a/signer/core/types.go b/signer/core/types.go index 2be851dcd5..5b5fd300fa 100644 --- a/signer/core/types.go +++ b/signer/core/types.go @@ -22,10 +22,10 @@ import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) type Accounts []Account diff --git a/signer/core/validation.go b/signer/core/validation.go index 3eccd5afb0..6b1eb38953 100644 --- a/signer/core/validation.go +++ b/signer/core/validation.go @@ -22,7 +22,7 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // The validation package contains validation checks for transactions diff --git a/signer/core/validation_test.go b/signer/core/validation_test.go index 08bb055d02..55ccd9841e 100644 --- a/signer/core/validation_test.go +++ b/signer/core/validation_test.go @@ -21,8 +21,8 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" ) func hexAddr(a string) common.Address { return common.BytesToAddress(common.FromHex(a)) } diff --git a/signer/rules/rules.go b/signer/rules/rules.go index b5413e599e..e92b1b66d3 100644 --- a/signer/rules/rules.go +++ b/signer/rules/rules.go @@ -22,12 +22,12 @@ import ( "os" "strings" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/internal/ethapi" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/signer/core" - "github.com/PlatONnetwork/PlatON-Go/signer/rules/deps" - "github.com/PlatONnetwork/PlatON-Go/signer/storage" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/internal/ethapi" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/signer/core" + "github.com/AlayaNetwork/Alaya-Go/signer/rules/deps" + "github.com/AlayaNetwork/Alaya-Go/signer/storage" "github.com/robertkrimen/otto" ) diff --git a/signer/rules/rules_test.go b/signer/rules/rules_test.go index d27842c4a5..d2d66b9a6f 100644 --- a/signer/rules/rules_test.go +++ b/signer/rules/rules_test.go @@ -22,13 +22,13 @@ import ( "strings" "testing" - "github.com/PlatONnetwork/PlatON-Go/accounts" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/internal/ethapi" - "github.com/PlatONnetwork/PlatON-Go/signer/core" - "github.com/PlatONnetwork/PlatON-Go/signer/storage" + "github.com/AlayaNetwork/Alaya-Go/accounts" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/internal/ethapi" + "github.com/AlayaNetwork/Alaya-Go/signer/core" + "github.com/AlayaNetwork/Alaya-Go/signer/storage" ) const JS = ` diff --git a/signer/storage/aes_gcm_storage.go b/signer/storage/aes_gcm_storage.go index df4585b349..5bf81a010b 100644 --- a/signer/storage/aes_gcm_storage.go +++ b/signer/storage/aes_gcm_storage.go @@ -26,7 +26,7 @@ import ( "io/ioutil" "os" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) type storedCredential struct { diff --git a/signer/storage/aes_gcm_storage_test.go b/signer/storage/aes_gcm_storage_test.go index 670fc6a097..7c664d872e 100644 --- a/signer/storage/aes_gcm_storage_test.go +++ b/signer/storage/aes_gcm_storage_test.go @@ -22,8 +22,8 @@ import ( "io/ioutil" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/log" "github.com/mattn/go-colorable" ) diff --git a/tests/block_test_util.go b/tests/block_test_util.go index c3a4683fd7..135f484733 100644 --- a/tests/block_test_util.go +++ b/tests/block_test_util.go @@ -24,20 +24,20 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" - _ "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" + _ "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) // A BlockTest checks handling of entire blocks. diff --git a/tests/difficulty_test.go b/tests/difficulty_test.go index c52f414c87..a68a76cab2 100644 --- a/tests/difficulty_test.go +++ b/tests/difficulty_test.go @@ -21,7 +21,7 @@ import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" ) var ( diff --git a/tests/difficulty_test_util.go b/tests/difficulty_test_util.go index 2dac5909e3..932f06b0dd 100644 --- a/tests/difficulty_test_util.go +++ b/tests/difficulty_test_util.go @@ -19,9 +19,9 @@ package tests import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/params" ) //go:generate gencodec -type DifficultyTest -field-override difficultyTestMarshaling -out gen_difficultytest.go diff --git a/tests/gen_btheader.go b/tests/gen_btheader.go index e71f779a12..7ccd6c5ac8 100644 --- a/tests/gen_btheader.go +++ b/tests/gen_btheader.go @@ -6,10 +6,10 @@ import ( "encoding/json" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) var _ = (*btHeaderMarshaling)(nil) diff --git a/tests/gen_difficultytest.go b/tests/gen_difficultytest.go index cd0aa5266a..d144c2de6d 100644 --- a/tests/gen_difficultytest.go +++ b/tests/gen_difficultytest.go @@ -6,8 +6,8 @@ import ( "encoding/json" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" ) var _ = (*difficultyTestMarshaling)(nil) diff --git a/tests/gen_stenv.go b/tests/gen_stenv.go index cfc1c0dde9..da7ebf2c84 100644 --- a/tests/gen_stenv.go +++ b/tests/gen_stenv.go @@ -7,8 +7,8 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" ) var _ = (*stEnvMarshaling)(nil) diff --git a/tests/gen_sttransaction.go b/tests/gen_sttransaction.go index 93d0378903..a848ccb46c 100644 --- a/tests/gen_sttransaction.go +++ b/tests/gen_sttransaction.go @@ -6,8 +6,8 @@ import ( "encoding/json" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" ) var _ = (*stTransactionMarshaling)(nil) diff --git a/tests/gen_tttransaction.go b/tests/gen_tttransaction.go index 81633182ce..ba22bc84e4 100644 --- a/tests/gen_tttransaction.go +++ b/tests/gen_tttransaction.go @@ -7,9 +7,9 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" ) var _ = (*ttTransactionMarshaling)(nil) diff --git a/tests/gen_vmexec.go b/tests/gen_vmexec.go index 9e2720db54..3652a1898b 100644 --- a/tests/gen_vmexec.go +++ b/tests/gen_vmexec.go @@ -7,9 +7,9 @@ import ( "errors" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" ) var _ = (*vmExecMarshaling)(nil) diff --git a/tests/init.go b/tests/init.go index eb029126c7..d4ddfba332 100644 --- a/tests/init.go +++ b/tests/init.go @@ -20,7 +20,7 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" ) // Forks table defines supported forks and their chain config. diff --git a/tests/init_test.go b/tests/init_test.go index f15948898c..dd6af7d9ff 100644 --- a/tests/init_test.go +++ b/tests/init_test.go @@ -29,7 +29,7 @@ import ( "strings" "testing" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" ) var ( diff --git a/tests/rlp_test_util.go b/tests/rlp_test_util.go index 704d00ac1b..40bb29447c 100644 --- a/tests/rlp_test_util.go +++ b/tests/rlp_test_util.go @@ -24,7 +24,7 @@ import ( "math/big" "strings" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // RLPTest is the JSON structure of a single RLP test. diff --git a/tests/state_test.go b/tests/state_test.go index ed7fc43ea2..e05baf0e38 100644 --- a/tests/state_test.go +++ b/tests/state_test.go @@ -22,7 +22,7 @@ import ( "reflect" "testing" - "github.com/PlatONnetwork/PlatON-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/core/vm" ) func TestState(t *testing.T) { diff --git a/tests/state_test_util.go b/tests/state_test_util.go index 379f65bbb5..d1ccaa06a6 100644 --- a/tests/state_test_util.go +++ b/tests/state_test_util.go @@ -23,22 +23,22 @@ import ( "math/big" "strings" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // StateTest checks transaction processing without block context. diff --git a/tests/transaction_test.go b/tests/transaction_test.go index a42e4ab0a0..be77f120f1 100644 --- a/tests/transaction_test.go +++ b/tests/transaction_test.go @@ -20,7 +20,7 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" ) func TestTransaction(t *testing.T) { diff --git a/tests/transaction_test_util.go b/tests/transaction_test_util.go index 2e1fe4f9cd..047b6d8918 100644 --- a/tests/transaction_test_util.go +++ b/tests/transaction_test_util.go @@ -22,12 +22,12 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // TransactionTest checks RLP decoding and sender derivation of transactions. diff --git a/tests/vm_test.go b/tests/vm_test.go index dd2d26c86f..d2b5bacd9a 100644 --- a/tests/vm_test.go +++ b/tests/vm_test.go @@ -19,7 +19,7 @@ package tests import ( "testing" - "github.com/PlatONnetwork/PlatON-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/core/vm" ) func TestVM(t *testing.T) { diff --git a/tests/vm_test_util.go b/tests/vm_test_util.go index a94b64c49d..febbb187a1 100644 --- a/tests/vm_test_util.go +++ b/tests/vm_test_util.go @@ -22,16 +22,16 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/core/rawdb" + "github.com/AlayaNetwork/Alaya-Go/core/rawdb" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/core" - "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/core" + "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/params" ) // VMTest checks EVM execution without block or transaction context. diff --git a/trie/dag.go b/trie/dag.go index 5a874874c9..8bca539b16 100644 --- a/trie/dag.go +++ b/trie/dag.go @@ -7,7 +7,7 @@ import ( "sync" "sync/atomic" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" ) const invalidID = math.MaxUint64 diff --git a/trie/dag_test.go b/trie/dag_test.go index 623da84dcc..38430e98e4 100644 --- a/trie/dag_test.go +++ b/trie/dag_test.go @@ -9,13 +9,13 @@ package trie // "testing" // "time" // -// "github.com/PlatONnetwork/PlatON-Go/ethdb/memorydb" +// "github.com/AlayaNetwork/Alaya-Go/ethdb/memorydb" // // "github.com/stretchr/testify/assert" // -// "github.com/PlatONnetwork/PlatON-Go/common" -// "github.com/PlatONnetwork/PlatON-Go/crypto" -// "github.com/PlatONnetwork/PlatON-Go/rlp" +// "github.com/AlayaNetwork/Alaya-Go/common" +// "github.com/AlayaNetwork/Alaya-Go/crypto" +// "github.com/AlayaNetwork/Alaya-Go/rlp" //) // //func TestTrieDAG2(t *testing.T) { diff --git a/trie/database.go b/trie/database.go index 466afc1b2f..8fc2356e2e 100644 --- a/trie/database.go +++ b/trie/database.go @@ -26,11 +26,11 @@ import ( "github.com/VictoriaMetrics/fastcache" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/metrics" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/metrics" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) const ( diff --git a/trie/encoding_test.go b/trie/encoding_test.go index 08d344ae66..bad0593b27 100644 --- a/trie/encoding_test.go +++ b/trie/encoding_test.go @@ -18,7 +18,7 @@ package trie import ( "bytes" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" "testing" ) diff --git a/trie/errors.go b/trie/errors.go index 56375d51f3..61872a7087 100644 --- a/trie/errors.go +++ b/trie/errors.go @@ -19,7 +19,7 @@ package trie import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // MissingNodeError is returned by the trie functions (TryGet, TryUpdate, TryDelete) diff --git a/trie/hasher.go b/trie/hasher.go index a3951ebd85..a08bfc69b8 100644 --- a/trie/hasher.go +++ b/trie/hasher.go @@ -20,9 +20,9 @@ import ( "hash" "sync" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) type hasher struct { diff --git a/trie/iterator.go b/trie/iterator.go index b8a7035c7e..c5722a2d55 100644 --- a/trie/iterator.go +++ b/trie/iterator.go @@ -21,8 +21,8 @@ import ( "container/heap" "errors" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // Iterator is a key-value trie iterator that traverses a Trie. diff --git a/trie/iterator_test.go b/trie/iterator_test.go index c3971563bc..2a59aa3036 100644 --- a/trie/iterator_test.go +++ b/trie/iterator_test.go @@ -23,11 +23,11 @@ import ( "math/rand" "testing" - "github.com/PlatONnetwork/PlatON-Go/ethdb/memorydb" + "github.com/AlayaNetwork/Alaya-Go/ethdb/memorydb" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) func TestDecodeNode2(t *testing.T) { diff --git a/trie/node.go b/trie/node.go index 53f7b4dbfb..c6372c7f79 100644 --- a/trie/node.go +++ b/trie/node.go @@ -21,8 +21,8 @@ import ( "io" "strings" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var indices = []string{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "[17]"} diff --git a/trie/proof.go b/trie/proof.go index 47d63736fe..2f54e36b82 100644 --- a/trie/proof.go +++ b/trie/proof.go @@ -20,11 +20,11 @@ import ( "bytes" "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/ethdb" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // Prove constructs a merkle proof for key. The result contains all encoded nodes diff --git a/trie/proof_test.go b/trie/proof_test.go index ccd6101097..e2a1f28cd0 100644 --- a/trie/proof_test.go +++ b/trie/proof_test.go @@ -23,10 +23,10 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/ethdb/memorydb" + "github.com/AlayaNetwork/Alaya-Go/ethdb/memorydb" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) func init() { diff --git a/trie/secure_trie.go b/trie/secure_trie.go index 045639606e..3dc46926d9 100644 --- a/trie/secure_trie.go +++ b/trie/secure_trie.go @@ -19,8 +19,8 @@ package trie import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/log" ) // SecureTrie wraps a trie with key hashing. In a secure trie, all diff --git a/trie/secure_trie_test.go b/trie/secure_trie_test.go index 9d6cba51f4..8da6e73252 100644 --- a/trie/secure_trie_test.go +++ b/trie/secure_trie_test.go @@ -24,14 +24,14 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/ethdb/memorydb" + "github.com/AlayaNetwork/Alaya-Go/ethdb/memorydb" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" ) func newEmptySecure() *SecureTrie { diff --git a/trie/sync.go b/trie/sync.go index a8b94dec69..f2f749d164 100644 --- a/trie/sync.go +++ b/trie/sync.go @@ -20,11 +20,11 @@ import ( "errors" "fmt" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/prque" - "github.com/PlatONnetwork/PlatON-Go/ethdb" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/prque" + "github.com/AlayaNetwork/Alaya-Go/ethdb" ) // ErrNotRequested is returned by the trie sync when it's requested to process a diff --git a/trie/sync_test.go b/trie/sync_test.go index b64aef40eb..20bbca9af5 100644 --- a/trie/sync_test.go +++ b/trie/sync_test.go @@ -20,9 +20,9 @@ import ( "bytes" "testing" - "github.com/PlatONnetwork/PlatON-Go/ethdb/memorydb" + "github.com/AlayaNetwork/Alaya-Go/ethdb/memorydb" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // makeTestTrie create a sample test trie to test node-wise reconstruction. diff --git a/trie/trie.go b/trie/trie.go index 463a75b7d8..931ec6077e 100644 --- a/trie/trie.go +++ b/trie/trie.go @@ -20,11 +20,11 @@ package trie import ( "bytes" "fmt" - "github.com/PlatONnetwork/PlatON-Go/common/byteutil" + "github.com/AlayaNetwork/Alaya-Go/common/byteutil" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" ) var ( diff --git a/trie/trie_dag.go b/trie/trie_dag.go index a0fe15415c..ec46a75348 100644 --- a/trie/trie_dag.go +++ b/trie/trie_dag.go @@ -5,12 +5,12 @@ import ( "sync" "sync/atomic" - "github.com/PlatONnetwork/PlatON-Go/common/byteutil" + "github.com/AlayaNetwork/Alaya-Go/common/byteutil" "github.com/cespare/xxhash" "github.com/panjf2000/ants/v2" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) var fullNodeSuffix = []byte("fullnode") diff --git a/trie/trie_dag_test.go b/trie/trie_dag_test.go index 4fbc1d5a2b..29098e2eab 100644 --- a/trie/trie_dag_test.go +++ b/trie/trie_dag_test.go @@ -3,11 +3,11 @@ package trie import ( "testing" - "github.com/PlatONnetwork/PlatON-Go/ethdb/memorydb" + "github.com/AlayaNetwork/Alaya-Go/ethdb/memorydb" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) func TestTrieDag(t *testing.T) { diff --git a/trie/trie_test.go b/trie/trie_test.go index 81077c1530..448271c546 100644 --- a/trie/trie_test.go +++ b/trie/trie_test.go @@ -20,7 +20,7 @@ import ( "bytes" "encoding/binary" "fmt" - "github.com/PlatONnetwork/PlatON-Go/common/byteutil" + "github.com/AlayaNetwork/Alaya-Go/common/byteutil" "io/ioutil" "math/big" "math/rand" @@ -30,17 +30,17 @@ import ( "testing/quick" "time" - "github.com/PlatONnetwork/PlatON-Go/ethdb/leveldb" + "github.com/AlayaNetwork/Alaya-Go/ethdb/leveldb" - "github.com/PlatONnetwork/PlatON-Go/ethdb/memorydb" + "github.com/AlayaNetwork/Alaya-Go/ethdb/memorydb" "github.com/stretchr/testify/assert" "github.com/davecgh/go-spew/spew" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) func init() { diff --git a/x/gov/gov.go b/x/gov/gov.go index 510f0f6f51..8b6c60f5eb 100644 --- a/x/gov/gov.go +++ b/x/gov/gov.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package gov @@ -23,17 +23,17 @@ import ( "math/big" "strconv" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/params" - - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/byteutil" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/node" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/params" + + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/byteutil" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/node" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) type Staking interface { diff --git a/x/gov/gov_db.go b/x/gov/gov_db.go index cd2839e86d..7392444644 100644 --- a/x/gov/gov_db.go +++ b/x/gov/gov_db.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package gov @@ -20,17 +20,17 @@ import ( "encoding/json" "fmt" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) var ( diff --git a/x/gov/gov_db_test.go b/x/gov/gov_db_test.go index b1e0238b3a..93dc6ff225 100644 --- a/x/gov/gov_db_test.go +++ b/x/gov/gov_db_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package gov @@ -21,22 +21,22 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common/mock" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" "testing" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/crypto/sha3" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/crypto/sha3" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var ( diff --git a/x/gov/gov_err.go b/x/gov/gov_err.go index 26d09bd1b8..7709b33439 100644 --- a/x/gov/gov_err.go +++ b/x/gov/gov_err.go @@ -1,22 +1,22 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package gov -import "github.com/PlatONnetwork/PlatON-Go/common" +import "github.com/AlayaNetwork/Alaya-Go/common" var ( ActiveVersionError = common.NewBizError(302001, "Current active version not found") diff --git a/x/gov/gov_keys.go b/x/gov/gov_keys.go index 5d3b1cebfc..6d59c2b004 100644 --- a/x/gov/gov_keys.go +++ b/x/gov/gov_keys.go @@ -1,25 +1,25 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package gov import ( "bytes" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) var ( diff --git a/x/gov/gov_params.go b/x/gov/gov_params.go index d9a8060344..4408d473e5 100644 --- a/x/gov/gov_params.go +++ b/x/gov/gov_params.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package gov @@ -22,13 +22,13 @@ import ( "strconv" "sync" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) var ( diff --git a/x/gov/gov_snapdb.go b/x/gov/gov_snapdb.go index 3bc5989914..113d1ff637 100644 --- a/x/gov/gov_snapdb.go +++ b/x/gov/gov_snapdb.go @@ -1,28 +1,28 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package gov import ( - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) func get(blockHash common.Hash, key []byte) ([]byte, error) { diff --git a/x/gov/gov_test.go b/x/gov/gov_test.go index 577e3de9dc..cd9beca11f 100644 --- a/x/gov/gov_test.go +++ b/x/gov/gov_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package gov @@ -21,22 +21,22 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/node" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/node" - "github.com/PlatONnetwork/PlatON-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/staking" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/mock" ) var ( diff --git a/x/gov/gov_types.go b/x/gov/gov_types.go index a0ba615fa1..4aac06eee1 100644 --- a/x/gov/gov_types.go +++ b/x/gov/gov_types.go @@ -1,24 +1,24 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package gov import ( - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) type TallyResult struct { diff --git a/x/gov/proposals.go b/x/gov/proposals.go index 4696f229ad..dffc6425db 100644 --- a/x/gov/proposals.go +++ b/x/gov/proposals.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package gov @@ -20,11 +20,11 @@ import ( "fmt" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) // in genesis.json, the config value of the supportRate( and voteRate...) is the real value * 10000. diff --git a/x/handler/vrf_handler.go b/x/handler/vrf_handler.go index acd2de704f..f384e50703 100644 --- a/x/handler/vrf_handler.go +++ b/x/handler/vrf_handler.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package handler @@ -24,15 +24,15 @@ import ( "math/big" "sync" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto/vrf" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto/vrf" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) var ( diff --git a/x/handler/vrf_handler_test.go b/x/handler/vrf_handler_test.go index 782e049dac..370e906d7b 100644 --- a/x/handler/vrf_handler_test.go +++ b/x/handler/vrf_handler_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package handler @@ -22,18 +22,18 @@ import ( "strconv" "testing" - "github.com/PlatONnetwork/PlatON-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/common/mock" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/vrf" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/vrf" "github.com/stretchr/testify/assert" ) diff --git a/x/plugin/api.go b/x/plugin/api.go index 455dac1581..8de17a3a1b 100644 --- a/x/plugin/api.go +++ b/x/plugin/api.go @@ -1,25 +1,25 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" ) // Provides an API interface to obtain data related to the economic model diff --git a/x/plugin/base_plugin.go b/x/plugin/base_plugin.go index 834c8e6583..db2bc5d7d6 100644 --- a/x/plugin/base_plugin.go +++ b/x/plugin/base_plugin.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin @@ -22,13 +22,13 @@ import ( "fmt" "reflect" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/byteutil" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/byteutil" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" gerr "github.com/go-errors/errors" ) diff --git a/x/plugin/gov_plugin.go b/x/plugin/gov_plugin.go index 9ef0aa19b6..3c52512760 100644 --- a/x/plugin/gov_plugin.go +++ b/x/plugin/gov_plugin.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin @@ -22,18 +22,18 @@ import ( "math/big" "sync" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) var ( diff --git a/x/plugin/gov_plugin_test.go b/x/plugin/gov_plugin_test.go index 32bcd88690..e4fcaf9234 100644 --- a/x/plugin/gov_plugin_test.go +++ b/x/plugin/gov_plugin_test.go @@ -1,54 +1,54 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin import ( "encoding/hex" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/x/staking" "testing" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/node" + "github.com/AlayaNetwork/Alaya-Go/node" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/common/mock" - // "github.com/PlatONnetwork/PlatON-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/common/mock" + // "github.com/AlayaNetwork/Alaya-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" - "github.com/PlatONnetwork/PlatON-Go/common" - // "github.com/PlatONnetwork/PlatON-Go/core/state" - // "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/common" + // "github.com/AlayaNetwork/Alaya-Go/core/state" + // "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/x/gov" "math/big" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" ) var ( diff --git a/x/plugin/issue1625_accounts.go b/x/plugin/issue1625_accounts.go index 61b459115c..4a8025c534 100644 --- a/x/plugin/issue1625_accounts.go +++ b/x/plugin/issue1625_accounts.go @@ -3,7 +3,7 @@ package plugin import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) type issue1625Accounts struct { diff --git a/x/plugin/issue1625_patch.go b/x/plugin/issue1625_patch.go index e312cda0f9..088fa71bdc 100644 --- a/x/plugin/issue1625_patch.go +++ b/x/plugin/issue1625_patch.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin @@ -22,25 +22,25 @@ import ( "math/big" "sort" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) func NewFixIssue1625Plugin(sdb snapshotdb.DB) *FixIssue1625Plugin { diff --git a/x/plugin/issue1625_patch_test.go b/x/plugin/issue1625_patch_test.go index 96aa684d4c..1623035d61 100644 --- a/x/plugin/issue1625_patch_test.go +++ b/x/plugin/issue1625_patch_test.go @@ -4,11 +4,11 @@ import ( "sort" "testing" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" - "github.com/PlatONnetwork/PlatON-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/staking" ) //排序顺序 diff --git a/x/plugin/platon_plugin_test.go b/x/plugin/platon_plugin_test.go index 9397b55d5c..ab0f8659f9 100644 --- a/x/plugin/platon_plugin_test.go +++ b/x/plugin/platon_plugin_test.go @@ -1,53 +1,53 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin import ( "crypto/ecdsa" "fmt" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" "math/big" "math/rand" "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/log" - // "github.com/PlatONnetwork/PlatON-Go/core/state" + // "github.com/AlayaNetwork/Alaya-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/common/mock" - "github.com/PlatONnetwork/PlatON-Go/common" - cvm "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/common" + cvm "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - // "github.com/PlatONnetwork/PlatON-Go/core/state" - "github.com/PlatONnetwork/PlatON-Go/core/types" - // "github.com/PlatONnetwork/PlatON-Go/core/vm" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/restricting" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + // "github.com/AlayaNetwork/Alaya-Go/core/state" + "github.com/AlayaNetwork/Alaya-Go/core/types" + // "github.com/AlayaNetwork/Alaya-Go/core/vm" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/restricting" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) func init() { diff --git a/x/plugin/restricting_plugin.go b/x/plugin/restricting_plugin.go index fca06e4896..67322ac141 100644 --- a/x/plugin/restricting_plugin.go +++ b/x/plugin/restricting_plugin.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin @@ -22,24 +22,24 @@ import ( "sort" "sync" - "github.com/PlatONnetwork/PlatON-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/restricting" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/restricting" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) type RestrictingPlugin struct { diff --git a/x/plugin/restricting_plugin_test.go b/x/plugin/restricting_plugin_test.go index fdc9747f53..71af9fed38 100644 --- a/x/plugin/restricting_plugin_test.go +++ b/x/plugin/restricting_plugin_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin @@ -21,22 +21,22 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/common/mock" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/x/restricting" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/x/restricting" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) var RestrictingTxHash = common.HexToHash("abc") diff --git a/x/plugin/reward_plugin.go b/x/plugin/reward_plugin.go index 605b774d02..9c21c8b5df 100644 --- a/x/plugin/reward_plugin.go +++ b/x/plugin/reward_plugin.go @@ -1,49 +1,49 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin import ( "encoding/json" "fmt" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/gov" "math" "math/big" "sort" "sync" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/x/reward" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/x/reward" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) type RewardMgrPlugin struct { @@ -204,7 +204,7 @@ func (rmp *RewardMgrPlugin) increaseIssuance(thisYear, lastYear uint32, state xc state.AddBalance(vm.RewardManagerPoolAddr, rewardpoolIncr) state.AddBalance(xcom.CDFAccount(), developerFoundationIncr) state.AddBalance(xcom.PlatONFundAccount(), foundationIncr) - log.Debug("Call EndBlock on reward_plugin: increase issuance to developer and platon", "thisYear", thisYear, "rewardpoolIncr", rewardpoolIncr, + log.Debug("Call EndBlock on reward_plugin: increase issuance to developer and alaya", "thisYear", thisYear, "rewardpoolIncr", rewardpoolIncr, "foundationIncr", foundationIncr, "developerFoundationIncr", developerFoundationIncr) balance := state.GetBalance(vm.RewardManagerPoolAddr) SetYearEndBalance(state, thisYear, balance) diff --git a/x/plugin/reward_plugin_test.go b/x/plugin/reward_plugin_test.go index 83d00308bd..85def554c1 100644 --- a/x/plugin/reward_plugin_test.go +++ b/x/plugin/reward_plugin_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin @@ -23,30 +23,30 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/params" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common/mock" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/reward" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/reward" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) func buildTestStakingData(epochStart, epochEnd uint64) (staking.ValidatorQueue, error) { diff --git a/x/plugin/slashing_plugin.go b/x/plugin/slashing_plugin.go index f3537fa4cf..0822d20ec5 100644 --- a/x/plugin/slashing_plugin.go +++ b/x/plugin/slashing_plugin.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin @@ -22,27 +22,27 @@ import ( "encoding/hex" "encoding/json" "fmt" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" "math/big" "sync" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/x/slashing" + "github.com/AlayaNetwork/Alaya-Go/x/slashing" "github.com/pkg/errors" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/consensus" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/consensus" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) const ( diff --git a/x/plugin/slashing_plugin_test.go b/x/plugin/slashing_plugin_test.go index 94b497b46c..4489f77f26 100644 --- a/x/plugin/slashing_plugin_test.go +++ b/x/plugin/slashing_plugin_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin @@ -24,30 +24,30 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/consensus/cbft/evidence" + "github.com/AlayaNetwork/Alaya-Go/consensus/cbft/evidence" - "github.com/PlatONnetwork/PlatON-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/common/mock" - "github.com/PlatONnetwork/PlatON-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) func initInfo(t *testing.T) (*SlashingPlugin, xcom.StateDB) { diff --git a/x/plugin/staking_plugin.go b/x/plugin/staking_plugin.go index 345a2093cc..435ab33813 100644 --- a/x/plugin/staking_plugin.go +++ b/x/plugin/staking_plugin.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin @@ -26,28 +26,28 @@ import ( "strconv" "sync" - "github.com/PlatONnetwork/PlatON-Go/x/reward" + "github.com/AlayaNetwork/Alaya-Go/x/reward" - "github.com/PlatONnetwork/PlatON-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/x/handler" + "github.com/AlayaNetwork/Alaya-Go/x/handler" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto/vrf" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto/vrf" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) type StakingPlugin struct { diff --git a/x/plugin/staking_plugin_test.go b/x/plugin/staking_plugin_test.go index ea9af39d15..10a499c341 100644 --- a/x/plugin/staking_plugin_test.go +++ b/x/plugin/staking_plugin_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package plugin @@ -28,33 +28,33 @@ import ( "testing" "time" - "github.com/PlatONnetwork/PlatON-Go/crypto/vrf" - "github.com/PlatONnetwork/PlatON-Go/x/gov" + "github.com/AlayaNetwork/Alaya-Go/crypto/vrf" + "github.com/AlayaNetwork/Alaya-Go/x/gov" - "github.com/PlatONnetwork/PlatON-Go/params" + "github.com/AlayaNetwork/Alaya-Go/params" - "github.com/PlatONnetwork/PlatON-Go/x/reward" + "github.com/AlayaNetwork/Alaya-Go/x/reward" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/common/vm" + "github.com/AlayaNetwork/Alaya-Go/common/vm" - "github.com/PlatONnetwork/PlatON-Go/x/handler" + "github.com/AlayaNetwork/Alaya-Go/x/handler" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/cbfttypes" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/event" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/x/staking" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/cbfttypes" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/event" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/x/staking" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" ) /** diff --git a/x/restricting/restricting_db_key.go b/x/restricting/restricting_db_key.go index 317b4baf6a..8193c2b86a 100644 --- a/x/restricting/restricting_db_key.go +++ b/x/restricting/restricting_db_key.go @@ -1,23 +1,23 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package restricting import ( - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) var ( diff --git a/x/restricting/restricting_err.go b/x/restricting/restricting_err.go index ac411637ff..408d7f99e0 100644 --- a/x/restricting/restricting_err.go +++ b/x/restricting/restricting_err.go @@ -1,25 +1,25 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package restricting import ( "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) const ( diff --git a/x/restricting/restricting_types.go b/x/restricting/restricting_types.go index 7c896f4d0d..8782fcdb20 100644 --- a/x/restricting/restricting_types.go +++ b/x/restricting/restricting_types.go @@ -1,25 +1,25 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package restricting import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" ) // for genesis and plugin test diff --git a/x/reward/reward_db_key.go b/x/reward/reward_db_key.go index e1ec52d8cc..34e337c6f4 100644 --- a/x/reward/reward_db_key.go +++ b/x/reward/reward_db_key.go @@ -1,27 +1,27 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package reward import ( - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) const DelegateRewardPerLength = 1000 diff --git a/x/reward/reward_error.go b/x/reward/reward_error.go index 5e37e689b3..2b34eb6b74 100644 --- a/x/reward/reward_error.go +++ b/x/reward/reward_error.go @@ -1,22 +1,22 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package reward -import "github.com/PlatONnetwork/PlatON-Go/common" +import "github.com/AlayaNetwork/Alaya-Go/common" var ( ErrDelegationNotFound = common.NewBizError(305001, "Delegation info not found") diff --git a/x/reward/reward_type.go b/x/reward/reward_type.go index 3840e896b3..af69207a40 100644 --- a/x/reward/reward_type.go +++ b/x/reward/reward_type.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package reward @@ -20,10 +20,10 @@ import ( "encoding/json" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) func NewDelegateRewardPer(epoch uint64, totalReward, totalDelegate *big.Int) *DelegateRewardPer { diff --git a/x/reward/rward_test.go b/x/reward/rward_test.go index a317837d43..ab92f2e6da 100644 --- a/x/reward/rward_test.go +++ b/x/reward/rward_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package reward @@ -21,9 +21,9 @@ import ( "math/big" "testing" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/params" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/params" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) func TestDecreaseDelegateReward(t *testing.T) { diff --git a/x/slashing/slashing_err.go b/x/slashing/slashing_err.go index bd4fd0ed70..04bad32fd7 100644 --- a/x/slashing/slashing_err.go +++ b/x/slashing/slashing_err.go @@ -1,22 +1,22 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package slashing -import "github.com/PlatONnetwork/PlatON-Go/common" +import "github.com/AlayaNetwork/Alaya-Go/common" var ( ErrDuplicateSignVerify = common.NewBizError(303000, "Double-signning verification failed") diff --git a/x/staking/staking_db.go b/x/staking/staking_db.go index 1fdffdf19c..060f74ea75 100644 --- a/x/staking/staking_db.go +++ b/x/staking/staking_db.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package staking @@ -21,10 +21,10 @@ import ( "github.com/syndtr/goleveldb/leveldb/iterator" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) type StakingDB struct { diff --git a/x/staking/staking_db_key.go b/x/staking/staking_db_key.go index 8d6ef6aaad..a2c80e3086 100644 --- a/x/staking/staking_db_key.go +++ b/x/staking/staking_db_key.go @@ -1,29 +1,29 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package staking import ( "math/big" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/common/math" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common/math" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) const ( diff --git a/x/staking/staking_err.go b/x/staking/staking_err.go index 365aa8aa58..950681a64b 100644 --- a/x/staking/staking_err.go +++ b/x/staking/staking_err.go @@ -1,22 +1,22 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package staking -import "github.com/PlatONnetwork/PlatON-Go/common" +import "github.com/AlayaNetwork/Alaya-Go/common" var ( ErrWrongBlsPubKey = common.NewBizError(301000, "Invalid BLS public key length") diff --git a/x/staking/staking_types.go b/x/staking/staking_types.go index d7ff18e3b6..75fb57833d 100644 --- a/x/staking/staking_types.go +++ b/x/staking/staking_types.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package staking @@ -21,13 +21,13 @@ import ( "math/big" "strings" - "github.com/PlatONnetwork/PlatON-Go/x/xutil" + "github.com/AlayaNetwork/Alaya-Go/x/xutil" - "github.com/PlatONnetwork/PlatON-Go/common/hexutil" - "github.com/PlatONnetwork/PlatON-Go/crypto/bls" + "github.com/AlayaNetwork/Alaya-Go/common/hexutil" + "github.com/AlayaNetwork/Alaya-Go/crypto/bls" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" ) const ( diff --git a/x/xcom/common.go b/x/xcom/common.go index 69fc0862b8..47741aa548 100644 --- a/x/xcom/common.go +++ b/x/xcom/common.go @@ -1,25 +1,25 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package xcom import ( - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/log" ) // saves block average pack time (millisecond) to snapshot db. diff --git a/x/xcom/common_config.go b/x/xcom/common_config.go index 7c83b532fa..cce04e0f8c 100644 --- a/x/xcom/common_config.go +++ b/x/xcom/common_config.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package xcom @@ -23,11 +23,11 @@ import ( "math/big" "sync" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/rlp" - "github.com/PlatONnetwork/PlatON-Go/log" + "github.com/AlayaNetwork/Alaya-Go/log" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" ) // plugin rule key diff --git a/x/xcom/common_config_dev.go b/x/xcom/common_config_dev.go index 83563de0d7..c427a90d5b 100644 --- a/x/xcom/common_config_dev.go +++ b/x/xcom/common_config_dev.go @@ -1,24 +1,24 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . // +build test package xcom -import "github.com/PlatONnetwork/PlatON-Go/log" +import "github.com/AlayaNetwork/Alaya-Go/log" func init() { log.Info("Init ppos common config", "network name", "DefaultTestNet", "network value", DefaultUnitTestNet) diff --git a/x/xcom/common_config_test.go b/x/xcom/common_config_test.go index 742c273222..6af87d4f18 100644 --- a/x/xcom/common_config_test.go +++ b/x/xcom/common_config_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package xcom diff --git a/x/xcom/common_keys.go b/x/xcom/common_keys.go index 25e59c5a13..a1e8bffa42 100644 --- a/x/xcom/common_keys.go +++ b/x/xcom/common_keys.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package xcom diff --git a/x/xcom/common_test.go b/x/xcom/common_test.go index cf030ed717..4d81e69211 100644 --- a/x/xcom/common_test.go +++ b/x/xcom/common_test.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package xcom @@ -21,13 +21,13 @@ import ( "fmt" "testing" - "github.com/PlatONnetwork/PlatON-Go/core/snapshotdb" + "github.com/AlayaNetwork/Alaya-Go/core/snapshotdb" - "github.com/PlatONnetwork/PlatON-Go/common" + "github.com/AlayaNetwork/Alaya-Go/common" "github.com/stretchr/testify/assert" - "github.com/PlatONnetwork/PlatON-Go/common/mock" + "github.com/AlayaNetwork/Alaya-Go/common/mock" ) func setup(t *testing.T) *mock.Chain { diff --git a/x/xcom/common_types.go b/x/xcom/common_types.go index 35d13c0917..b18022db03 100644 --- a/x/xcom/common_types.go +++ b/x/xcom/common_types.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package xcom @@ -21,10 +21,10 @@ import ( "encoding/json" "math/big" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/core/types" - "github.com/PlatONnetwork/PlatON-Go/log" - "github.com/PlatONnetwork/PlatON-Go/rlp" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/core/types" + "github.com/AlayaNetwork/Alaya-Go/log" + "github.com/AlayaNetwork/Alaya-Go/rlp" ) // StateDB is an Plugin database for full state querying. diff --git a/x/xutil/calculate.go b/x/xutil/calculate.go index ca3c2a939f..0e080dee4e 100644 --- a/x/xutil/calculate.go +++ b/x/xutil/calculate.go @@ -1,18 +1,18 @@ // Copyright 2018-2020 The PlatON Network Authors -// This file is part of the PlatON-Go library. +// This file is part of the Alaya-Go library. // -// The PlatON-Go library is free software: you can redistribute it and/or modify +// The Alaya-Go 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 3 of the License, or // (at your option) any later version. // -// The PlatON-Go library is distributed in the hope that it will be useful, +// The Alaya-Go 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 the PlatON-Go library. If not, see . +// along with the Alaya-Go library. If not, see . package xutil @@ -20,10 +20,10 @@ import ( "bytes" "fmt" - "github.com/PlatONnetwork/PlatON-Go/common" - "github.com/PlatONnetwork/PlatON-Go/crypto" - "github.com/PlatONnetwork/PlatON-Go/p2p/discover" - "github.com/PlatONnetwork/PlatON-Go/x/xcom" + "github.com/AlayaNetwork/Alaya-Go/common" + "github.com/AlayaNetwork/Alaya-Go/crypto" + "github.com/AlayaNetwork/Alaya-Go/p2p/discover" + "github.com/AlayaNetwork/Alaya-Go/x/xcom" ) func NodeId2Addr(nodeId discover.NodeID) (common.NodeAddress, error) {